31 lines
848 B
JavaScript
31 lines
848 B
JavaScript
/**
|
|
* Copyright (c) HashiCorp, Inc.
|
|
* SPDX-License-Identifier: MPL-2.0
|
|
*/
|
|
|
|
export default function (
|
|
visitable,
|
|
clickable,
|
|
text,
|
|
attribute,
|
|
present,
|
|
collection,
|
|
popoverSelect
|
|
) {
|
|
const service = {
|
|
name: text('[data-test-service-name]'),
|
|
service: clickable('a'),
|
|
externalSource: attribute('data-test-external-source', '[data-test-external-source]'),
|
|
kind: attribute('data-test-kind', '[data-test-kind]'),
|
|
peer: text('[data-test-bucket-item="peer"]'),
|
|
mesh: present('[data-test-mesh]'),
|
|
associatedServiceCount: present('[data-test-associated-service-count]'),
|
|
};
|
|
return {
|
|
visit: visitable('/:dc/services'),
|
|
services: collection('.consul-service-list > ul > li:not(:first-child)', service),
|
|
home: clickable('[data-test-home]'),
|
|
sort: popoverSelect('[data-test-sort-control]'),
|
|
};
|
|
}
|