@skyux/lookup 11.22.0 → 11.23.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. package/documentation.json +1965 -1846
  2. package/esm2022/lib/modules/autocomplete/autocomplete.component.mjs +2 -2
  3. package/esm2022/lib/modules/country-field/country-field.component.mjs +3 -3
  4. package/esm2022/lib/modules/lookup/lookup.component.mjs +2 -2
  5. package/esm2022/lib/modules/search/search.component.mjs +3 -3
  6. package/esm2022/testing/legacy/country-field/country-field-fixture.mjs +121 -0
  7. package/esm2022/testing/{country-field → legacy/country-field}/country-field-testing.module.mjs +1 -1
  8. package/esm2022/testing/legacy/search/search-fixture.mjs +60 -0
  9. package/esm2022/testing/{search → legacy/search}/search-testing.module.mjs +1 -1
  10. package/esm2022/testing/modules/autocomplete/autocomplete-harness-filters.mjs +2 -0
  11. package/esm2022/testing/modules/autocomplete/autocomplete-harness.mjs +192 -0
  12. package/esm2022/testing/modules/autocomplete/autocomplete-input-harness.mjs +17 -0
  13. package/esm2022/testing/modules/autocomplete/autocomplete-search-result-harness-filters.mjs +2 -0
  14. package/esm2022/testing/modules/autocomplete/autocomplete-search-result-harness.mjs +38 -0
  15. package/esm2022/testing/modules/country-field/country-field-harness-filters.mjs +2 -0
  16. package/esm2022/testing/modules/country-field/country-field-harness.mjs +139 -0
  17. package/esm2022/testing/modules/country-field/country-field-search-result-harness-filters.mjs +2 -0
  18. package/esm2022/testing/modules/country-field/country-field-search-result-harness.mjs +27 -0
  19. package/esm2022/testing/modules/lookup/lookup-harness-filters.mjs +2 -0
  20. package/esm2022/testing/modules/lookup/lookup-harness.mjs +181 -0
  21. package/esm2022/testing/modules/lookup/lookup-search-result-harness-filters.mjs +2 -0
  22. package/esm2022/testing/modules/lookup/lookup-search-result-harness.mjs +24 -0
  23. package/esm2022/testing/modules/lookup/lookup-selection-harness-filters.mjs +2 -0
  24. package/esm2022/testing/modules/lookup/lookup-selection-harness.mjs +8 -0
  25. package/esm2022/testing/modules/lookup/lookup-selections-list-harness.mjs +26 -0
  26. package/esm2022/testing/modules/lookup/lookup-show-more-picker-harness-filters.mjs +2 -0
  27. package/esm2022/testing/modules/lookup/lookup-show-more-picker-harness.mjs +28 -0
  28. package/esm2022/testing/modules/lookup/lookup-show-more-picker-search-result-harness-filters.mjs +2 -0
  29. package/esm2022/testing/modules/lookup/lookup-show-more-picker-search-result-harness.mjs +8 -0
  30. package/esm2022/testing/modules/search/search-harness-filters.mjs +2 -0
  31. package/esm2022/testing/modules/search/search-harness.mjs +143 -0
  32. package/esm2022/testing/modules/selection-modal/selection-modal-harness.mjs +172 -0
  33. package/esm2022/testing/modules/selection-modal/selection-modal-search-result-harness-filters.mjs +2 -0
  34. package/esm2022/testing/modules/selection-modal/selection-modal-search-result-harness.mjs +7 -0
  35. package/esm2022/testing/public-api.mjs +17 -17
  36. package/fesm2022/skyux-lookup-testing.mjs +82 -73
  37. package/fesm2022/skyux-lookup-testing.mjs.map +1 -1
  38. package/fesm2022/skyux-lookup.mjs +8 -8
  39. package/fesm2022/skyux-lookup.mjs.map +1 -1
  40. package/package.json +11 -11
  41. package/testing/{country-field → legacy/country-field}/country-field-fixture.d.ts +1 -1
  42. package/testing/{country-field → modules/country-field}/country-field-search-result-harness-filters.d.ts +1 -1
  43. package/testing/{lookup → modules/lookup}/lookup-search-result-harness-filters.d.ts +1 -1
  44. package/testing/public-api.d.ts +26 -26
  45. package/esm2022/testing/autocomplete/autocomplete-harness-filters.mjs +0 -2
  46. package/esm2022/testing/autocomplete/autocomplete-harness.mjs +0 -192
  47. package/esm2022/testing/autocomplete/autocomplete-input-harness.mjs +0 -17
  48. package/esm2022/testing/autocomplete/autocomplete-search-result-harness-filters.mjs +0 -2
  49. package/esm2022/testing/autocomplete/autocomplete-search-result-harness.mjs +0 -38
  50. package/esm2022/testing/country-field/country-field-fixture.mjs +0 -119
  51. package/esm2022/testing/country-field/country-field-harness-filters.mjs +0 -2
  52. package/esm2022/testing/country-field/country-field-harness.mjs +0 -139
  53. package/esm2022/testing/country-field/country-field-search-result-harness-filters.mjs +0 -2
  54. package/esm2022/testing/country-field/country-field-search-result-harness.mjs +0 -24
  55. package/esm2022/testing/lookup/lookup-harness-filters.mjs +0 -2
  56. package/esm2022/testing/lookup/lookup-harness.mjs +0 -181
  57. package/esm2022/testing/lookup/lookup-search-result-harness-filters.mjs +0 -2
  58. package/esm2022/testing/lookup/lookup-search-result-harness.mjs +0 -21
  59. package/esm2022/testing/lookup/lookup-selection-harness-filters.mjs +0 -2
  60. package/esm2022/testing/lookup/lookup-selection-harness.mjs +0 -8
  61. package/esm2022/testing/lookup/lookup-selections-list-harness.mjs +0 -26
  62. package/esm2022/testing/lookup/lookup-show-more-picker-harness-filters.mjs +0 -2
  63. package/esm2022/testing/lookup/lookup-show-more-picker-harness.mjs +0 -28
  64. package/esm2022/testing/lookup/lookup-show-more-picker-search-result-harness-filters.mjs +0 -2
  65. package/esm2022/testing/lookup/lookup-show-more-picker-search-result-harness.mjs +0 -8
  66. package/esm2022/testing/search/search-fixture.mjs +0 -60
  67. package/esm2022/testing/search/search-harness-filters.mjs +0 -2
  68. package/esm2022/testing/search/search-harness.mjs +0 -143
  69. package/esm2022/testing/selection-modal/selection-modal-harness.mjs +0 -171
  70. package/esm2022/testing/selection-modal/selection-modal-search-result-harness-filters.mjs +0 -2
  71. package/esm2022/testing/selection-modal/selection-modal-search-result-harness.mjs +0 -7
  72. /package/testing/{country-field → legacy/country-field}/country-field-testing.module.d.ts +0 -0
  73. /package/testing/{search → legacy/search}/search-fixture.d.ts +0 -0
  74. /package/testing/{search → legacy/search}/search-testing.module.d.ts +0 -0
  75. /package/testing/{autocomplete → modules/autocomplete}/autocomplete-harness-filters.d.ts +0 -0
  76. /package/testing/{autocomplete → modules/autocomplete}/autocomplete-harness.d.ts +0 -0
  77. /package/testing/{autocomplete → modules/autocomplete}/autocomplete-input-harness.d.ts +0 -0
  78. /package/testing/{autocomplete → modules/autocomplete}/autocomplete-search-result-harness-filters.d.ts +0 -0
  79. /package/testing/{autocomplete → modules/autocomplete}/autocomplete-search-result-harness.d.ts +0 -0
  80. /package/testing/{country-field → modules/country-field}/country-field-harness-filters.d.ts +0 -0
  81. /package/testing/{country-field → modules/country-field}/country-field-harness.d.ts +0 -0
  82. /package/testing/{country-field → modules/country-field}/country-field-search-result-harness.d.ts +0 -0
  83. /package/testing/{lookup → modules/lookup}/lookup-harness-filters.d.ts +0 -0
  84. /package/testing/{lookup → modules/lookup}/lookup-harness.d.ts +0 -0
  85. /package/testing/{lookup → modules/lookup}/lookup-search-result-harness.d.ts +0 -0
  86. /package/testing/{lookup → modules/lookup}/lookup-selection-harness-filters.d.ts +0 -0
  87. /package/testing/{lookup → modules/lookup}/lookup-selection-harness.d.ts +0 -0
  88. /package/testing/{lookup → modules/lookup}/lookup-selections-list-harness.d.ts +0 -0
  89. /package/testing/{lookup → modules/lookup}/lookup-show-more-picker-harness-filters.d.ts +0 -0
  90. /package/testing/{lookup → modules/lookup}/lookup-show-more-picker-harness.d.ts +0 -0
  91. /package/testing/{lookup → modules/lookup}/lookup-show-more-picker-search-result-harness-filters.d.ts +0 -0
  92. /package/testing/{lookup → modules/lookup}/lookup-show-more-picker-search-result-harness.d.ts +0 -0
  93. /package/testing/{search → modules/search}/search-harness-filters.d.ts +0 -0
  94. /package/testing/{search → modules/search}/search-harness.d.ts +0 -0
  95. /package/testing/{selection-modal → modules/selection-modal}/selection-modal-harness.d.ts +0 -0
  96. /package/testing/{selection-modal → modules/selection-modal}/selection-modal-search-result-harness-filters.d.ts +0 -0
  97. /package/testing/{selection-modal → modules/selection-modal}/selection-modal-search-result-harness.d.ts +0 -0
@@ -1,143 +0,0 @@
1
- import { SkyComponentHarness } from '@skyux/core/testing';
2
- /**
3
- * Harness for interacting with a search component in tests.
4
- */
5
- export class SkySearchHarness extends SkyComponentHarness {
6
- /**
7
- * @internal
8
- */
9
- static { this.hostSelector = 'sky-search'; }
10
- #getInput = this.locatorFor('input.sky-search-input');
11
- #getClearButton = this.locatorFor('button.sky-search-btn-clear');
12
- #getDismissButton = this.locatorForOptional('button.sky-search-btn-dismiss');
13
- #getSubmitButton = this.locatorFor('button.sky-search-btn-apply');
14
- #getOpenButton = this.locatorFor('button.sky-search-btn-open');
15
- /**
16
- * Gets a `HarnessPredicate` that can be used to search for a
17
- * `SkySearchHarness` that meets certain criteria.
18
- */
19
- static with(filters) {
20
- return this.getDataSkyIdPredicate(filters);
21
- }
22
- /**
23
- * Blurs the search input.
24
- */
25
- async blur() {
26
- await this.#assertIsExpanded('Failed to blur the search input.');
27
- await (await this.#getInput()).blur();
28
- }
29
- /**
30
- * Clears the search input.
31
- */
32
- async clear() {
33
- await this.#assertIsExpanded('Failed to clear the search input.');
34
- const input = await this.#getInput();
35
- await input.focus();
36
- await input.clear();
37
- await this.clickSubmitButton();
38
- }
39
- /**
40
- * Clicks the search input clear button.
41
- */
42
- async clickClearButton() {
43
- await this.#assertIsExpanded('Failed to click clear button.');
44
- return (await this.#getClearButton()).click();
45
- }
46
- /**
47
- * Clicks search dismiss button to collapse search back to a button.
48
- */
49
- async clickDismissSearchButton() {
50
- const button = await this.#getDismissButton();
51
- if (!button) {
52
- throw new Error('Cannot find dismiss search button. Is a collapsed search open?');
53
- }
54
- return button.click();
55
- }
56
- /**
57
- * Clicks the search icon button that opens search input when it is collapsed.
58
- */
59
- async clickOpenSearchButton() {
60
- const button = await this.#getOpenButton();
61
- if (!(await this.isCollapsed())) {
62
- throw new Error('Cannot click search open button as search is not collapsed');
63
- }
64
- return button.click();
65
- }
66
- /**
67
- * Clicks the search submit button.
68
- */
69
- async clickSubmitButton() {
70
- await this.#assertIsExpanded('Failed to click the submit button.');
71
- return (await this.#getSubmitButton()).click();
72
- }
73
- /**
74
- * Enters text into the search input and performs a search.
75
- */
76
- async enterText(value) {
77
- await this.#assertIsExpanded('Failed to enter text into the search input.');
78
- const input = await this.#getInput();
79
- await input.clear();
80
- await input.focus();
81
- await input.sendKeys(value);
82
- await this.clickSubmitButton();
83
- }
84
- /**
85
- * Focuses the search input.
86
- */
87
- async focus() {
88
- await this.#assertIsExpanded('Failed to focus the search input.');
89
- await (await this.#getInput()).focus();
90
- }
91
- /**
92
- * Gets the search input's `aria-label`.
93
- */
94
- async getAriaLabel() {
95
- return (await this.#getInput()).getAttribute('aria-label');
96
- }
97
- /**
98
- * Gets the search's aria-labelledby.
99
- */
100
- async getAriaLabelledby() {
101
- return (await this.#getInput()).getAttribute('aria-labelledby');
102
- }
103
- /**
104
- * Gets the value of the input's placeholder attribute.
105
- */
106
- async getPlaceholderText() {
107
- await this.#assertIsExpanded('Failed to get the placeholder text.');
108
- return (await this.#getInput()).getAttribute('placeholder');
109
- }
110
- /**
111
- * Gets the value of the search input.
112
- */
113
- async getValue() {
114
- await this.#assertIsExpanded('Failed to get the value of the search input.');
115
- return (await this.#getInput()).getProperty('value');
116
- }
117
- /**
118
- * Whether the search input is collapsed.
119
- */
120
- async isCollapsed() {
121
- return ((await (await this.#getOpenButton()).getAttribute('hidden')) === null);
122
- }
123
- /**
124
- * Whether the search input is disabled.
125
- */
126
- async isDisabled() {
127
- const disabled = await (await this.#getInput()).getAttribute('disabled');
128
- return disabled !== null;
129
- }
130
- /**
131
- * Whether the search input is focused.
132
- */
133
- async isFocused() {
134
- await this.#assertIsExpanded('Failed to get the search input focus status.');
135
- return (await this.#getInput()).isFocused();
136
- }
137
- async #assertIsExpanded(errorMessage) {
138
- if (await this.isCollapsed()) {
139
- throw new Error(`${errorMessage} Search is collapsed.`);
140
- }
141
- }
142
- }
143
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWhhcm5lc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbG9va3VwL3Rlc3Rpbmcvc3JjL3NlYXJjaC9zZWFyY2gtaGFybmVzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUkxRDs7R0FFRztBQUNILE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxtQkFBbUI7SUFDdkQ7O09BRUc7YUFDVyxpQkFBWSxHQUFHLFlBQVksQ0FBQztJQUUxQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBRXRELGVBQWUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLDZCQUE2QixDQUFDLENBQUM7SUFDakUsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLCtCQUErQixDQUFDLENBQUM7SUFDN0UsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyw2QkFBNkIsQ0FBQyxDQUFDO0lBQ2xFLGNBQWMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLDRCQUE0QixDQUFDLENBQUM7SUFFL0Q7OztPQUdHO0lBQ0ksTUFBTSxDQUFDLElBQUksQ0FDaEIsT0FBZ0M7UUFFaEMsT0FBTyxJQUFJLENBQUMscUJBQXFCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLElBQUk7UUFDZixNQUFNLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDO1FBRWpFLE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxLQUFLO1FBQ2hCLE1BQU0sSUFBSSxDQUFDLGlCQUFpQixDQUFDLG1D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YW5ndWxhci9jZGsvdGVzdGluZyc7XG5pbXBvcnQgeyBTa3lDb21wb25lbnRIYXJuZXNzIH0gZnJvbSAnQHNreXV4L2NvcmUvdGVzdGluZyc7XG5cbmltcG9ydCB7IFNreVNlYXJjaEhhcm5lc3NGaWx0ZXJzIH0gZnJvbSAnLi9zZWFyY2gtaGFybmVzcy1maWx0ZXJzJztcblxuLyoqXG4gKiBIYXJuZXNzIGZvciBpbnRlcmFjdGluZyB3aXRoIGEgc2VhcmNoIGNvbXBvbmVudCBpbiB0ZXN0cy5cbiAqL1xuZXhwb3J0IGNsYXNzIFNreVNlYXJjaEhhcm5lc3MgZXh0ZW5kcyBTa3lDb21wb25lbnRIYXJuZXNzIHtcbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBob3N0U2VsZWN0b3IgPSAnc2t5LXNlYXJjaCc7XG5cbiAgI2dldElucHV0ID0gdGhpcy5sb2NhdG9yRm9yKCdpbnB1dC5za3ktc2VhcmNoLWlucHV0Jyk7XG5cbiAgI2dldENsZWFyQnV0dG9uID0gdGhpcy5sb2NhdG9yRm9yKCdidXR0b24uc2t5LXNlYXJjaC1idG4tY2xlYXInKTtcbiAgI2dldERpc21pc3NCdXR0b24gPSB0aGlzLmxvY2F0b3JGb3JPcHRpb25hbCgnYnV0dG9uLnNreS1zZWFyY2gtYnRuLWRpc21pc3MnKTtcbiAgI2dldFN1Ym1pdEJ1dHRvbiA9IHRoaXMubG9jYXRvckZvcignYnV0dG9uLnNreS1zZWFyY2gtYnRuLWFwcGx5Jyk7XG4gICNnZXRPcGVuQnV0dG9uID0gdGhpcy5sb2NhdG9yRm9yKCdidXR0b24uc2t5LXNlYXJjaC1idG4tb3BlbicpO1xuXG4gIC8qKlxuICAgKiBHZXRzIGEgYEhhcm5lc3NQcmVkaWNhdGVgIHRoYXQgY2FuIGJlIHVzZWQgdG8gc2VhcmNoIGZvciBhXG4gICAqIGBTa3lTZWFyY2hIYXJuZXNzYCB0aGF0IG1lZXRzIGNlcnRhaW4gY3JpdGVyaWEuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHdpdGgoXG4gICAgZmlsdGVyczogU2t5U2VhcmNoSGFybmVzc0ZpbHRlcnMsXG4gICk6IEhhcm5lc3NQcmVkaWNhdGU8U2t5U2VhcmNoSGFybmVzcz4ge1xuICAgIHJldHVybiB0aGlzLmdldERhdGFTa3lJZFByZWRpY2F0ZShmaWx0ZXJzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBCbHVycyB0aGUgc2VhcmNoIGlucHV0LlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGJsdXIoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy4jYXNzZXJ0SXNFeHBhbmRlZCgnRmFpbGVkIHRvIGJsdXIgdGhlIHNlYXJjaCBpbnB1dC4nKTtcblxuICAgIGF3YWl0IChhd2FpdCB0aGlzLiNnZXRJbnB1dCgpKS5ibHVyKCk7XG4gIH1cblxuICAvKipcbiAgICogQ2xlYXJzIHRoZSBzZWFyY2ggaW5wdXQuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgY2xlYXIoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy4jYXNzZXJ0SXNFeHBhbmRlZCgnRmFpbGVkIHRvIGNsZWFyIHRoZSBzZWFyY2ggaW5wdXQuJyk7XG5cbiAgICBjb25zdCBpbnB1dCA9IGF3YWl0IHRoaXMuI2dldElucHV0KCk7XG4gICAgYXdhaXQgaW5wdXQuZm9jdXMoKTtcbiAgICBhd2FpdCBpbnB1dC5jbGVhcigpO1xuICAgIGF3YWl0IHRoaXMuY2xpY2tTdWJtaXRCdXR0b24oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbGlja3MgdGhlIHNlYXJjaCBpbnB1dCBjbGVhciBidXR0b24uXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgY2xpY2tDbGVhckJ1dHRvbigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLiNhc3NlcnRJc0V4cGFuZGVkKCdGYWlsZWQgdG8gY2xpY2sgY2xlYXIgYnV0dG9uLicpO1xuXG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLiNnZXRDbGVhckJ1dHRvbigpKS5jbGljaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsaWNrcyBzZWFyY2ggZGlzbWlzcyBidXR0b24gdG8gY29sbGFwc2Ugc2VhcmNoIGJhY2sgdG8gYSBidXR0b24uXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgY2xpY2tEaXNtaXNzU2VhcmNoQnV0dG9uKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGJ1dHRvbiA9IGF3YWl0IHRoaXMuI2dldERpc21pc3NCdXR0b24oKTtcblxuICAgIGlmICghYnV0dG9uKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdDYW5ub3QgZmluZCBkaXNtaXNzIHNlYXJjaCBidXR0b24uIElzIGEgY29sbGFwc2VkIHNlYXJjaCBvcGVuPycsXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBidXR0b24uY2xpY2soKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbGlja3MgdGhlIHNlYXJjaCBpY29uIGJ1dHRvbiB0aGF0IG9wZW5zIHNlYXJjaCBpbnB1dCB3aGVuIGl0IGlzIGNvbGxhcHNlZC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBjbGlja09wZW5TZWFyY2hCdXR0b24oKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgYnV0dG9uID0gYXdhaXQgdGhpcy4jZ2V0T3BlbkJ1dHRvbigpO1xuXG4gICAgaWYgKCEoYXdhaXQgdGhpcy5pc0NvbGxhcHNlZCgpKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnQ2Fubm90IGNsaWNrIHNlYXJjaCBvcGVuIGJ1dHRvbiBhcyBzZWFyY2ggaXMgbm90IGNvbGxhcHNlZCcsXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBidXR0b24uY2xpY2soKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbGlja3MgdGhlIHNlYXJjaCBzdWJtaXQgYnV0dG9uLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGNsaWNrU3VibWl0QnV0dG9uKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuI2Fzc2VydElzRXhwYW5kZWQoJ0ZhaWxlZCB0byBjbGljayB0aGUgc3VibWl0IGJ1dHRvbi4nKTtcblxuICAgIHJldHVybiAoYXdhaXQgdGhpcy4jZ2V0U3VibWl0QnV0dG9uKCkpLmNsaWNrKCk7XG4gIH1cblxuICAvKipcbiAgICogRW50ZXJzIHRleHQgaW50byB0aGUgc2VhcmNoIGlucHV0IGFuZCBwZXJmb3JtcyBhIHNlYXJjaC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBlbnRlclRleHQodmFsdWU6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuI2Fzc2VydElzRXhwYW5kZWQoJ0ZhaWxlZCB0byBlbnRlciB0ZXh0IGludG8gdGhlIHNlYXJjaCBpbnB1dC4nKTtcblxuICAgIGNvbnN0IGlucHV0ID0gYXdhaXQgdGhpcy4jZ2V0SW5wdXQoKTtcbiAgICBhd2FpdCBpbnB1dC5jbGVhcigpO1xuICAgIGF3YWl0IGlucHV0LmZvY3VzKCk7XG4gICAgYXdhaXQgaW5wdXQuc2VuZEtleXModmFsdWUpO1xuICAgIGF3YWl0IHRoaXMuY2xpY2tTdWJtaXRCdXR0b24oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGb2N1c2VzIHRoZSBzZWFyY2ggaW5wdXQuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZm9jdXMoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy4jYXNzZXJ0SXNFeHBhbmRlZCgnRmFpbGVkIHRvIGZvY3VzIHRoZSBzZWFyY2ggaW5wdXQuJyk7XG5cbiAgICBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0SW5wdXQoKSkuZm9jdXMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBzZWFyY2ggaW5wdXQncyBgYXJpYS1sYWJlbGAuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0QXJpYUxhYmVsKCk6IFByb21pc2U8c3RyaW5nIHwgbnVsbD4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy4jZ2V0SW5wdXQoKSkuZ2V0QXR0cmlidXRlKCdhcmlhLWxhYmVsJyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgc2VhcmNoJ3MgYXJpYS1sYWJlbGxlZGJ5LlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldEFyaWFMYWJlbGxlZGJ5KCk6IFByb21pc2U8c3RyaW5nIHwgbnVsbD4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy4jZ2V0SW5wdXQoKSkuZ2V0QXR0cmlidXRlKCdhcmlhLWxhYmVsbGVkYnknKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSB2YWx1ZSBvZiB0aGUgaW5wdXQncyBwbGFjZWhvbGRlciBhdHRyaWJ1dGUuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0UGxhY2Vob2xkZXJUZXh0KCk6IFByb21pc2U8c3RyaW5nIHwgbnVsbD4ge1xuICAgIGF3YWl0IHRoaXMuI2Fzc2VydElzRXhwYW5kZWQoJ0ZhaWxlZCB0byBnZXQgdGhlIHBsYWNlaG9sZGVyIHRleHQuJyk7XG5cbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuI2dldElucHV0KCkpLmdldEF0dHJpYnV0ZSgncGxhY2Vob2xkZXInKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSB2YWx1ZSBvZiB0aGUgc2VhcmNoIGlucHV0LlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldFZhbHVlKCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgYXdhaXQgdGhpcy4jYXNzZXJ0SXNFeHBhbmRlZChcbiAgICAgICdGYWlsZWQgdG8gZ2V0IHRoZSB2YWx1ZSBvZiB0aGUgc2VhcmNoIGlucHV0LicsXG4gICAgKTtcblxuICAgIHJldHVybiAoYXdhaXQgdGhpcy4jZ2V0SW5wdXQoKSkuZ2V0UHJvcGVydHkoJ3ZhbHVlJyk7XG4gIH1cblxuICAvKipcbiAgICogV2hldGhlciB0aGUgc2VhcmNoIGlucHV0IGlzIGNvbGxhcHNlZC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBpc0NvbGxhcHNlZCgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gKFxuICAgICAgKGF3YWl0IChhd2FpdCB0aGlzLiNnZXRPcGVuQnV0dG9uKCkpLmdldEF0dHJpYnV0ZSgnaGlkZGVuJykpID09PSBudWxsXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBzZWFyY2ggaW5wdXQgaXMgZGlzYWJsZWQuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgaXNEaXNhYmxlZCgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBjb25zdCBkaXNhYmxlZCA9IGF3YWl0IChhd2FpdCB0aGlzLiNnZXRJbnB1dCgpKS5nZXRBdHRyaWJ1dGUoJ2Rpc2FibGVkJyk7XG4gICAgcmV0dXJuIGRpc2FibGVkICE9PSBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIHNlYXJjaCBpbnB1dCBpcyBmb2N1c2VkLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGlzRm9jdXNlZCgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICBhd2FpdCB0aGlzLiNhc3NlcnRJc0V4cGFuZGVkKFxuICAgICAgJ0ZhaWxlZCB0byBnZXQgdGhlIHNlYXJjaCBpbnB1dCBmb2N1cyBzdGF0dXMuJyxcbiAgICApO1xuXG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLiNnZXRJbnB1dCgpKS5pc0ZvY3VzZWQoKTtcbiAgfVxuXG4gIGFzeW5jICNhc3NlcnRJc0V4cGFuZGVkKGVycm9yTWVzc2FnZTogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKGF3YWl0IHRoaXMuaXNDb2xsYXBzZWQoKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGAke2Vycm9yTWVzc2FnZX0gU2VhcmNoIGlzIGNvbGxhcHNlZC5gKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -1,171 +0,0 @@
1
- import { ComponentHarness } from '@angular/cdk/testing';
2
- import { SkyCheckboxHarness } from '@skyux/forms/testing';
3
- import { SkyInfiniteScrollHarness, SkyRepeaterItemHarness, } from '@skyux/lists/testing';
4
- import { SkySearchHarness } from '../search/search-harness';
5
- /**
6
- * Harness for interacting with a selection modal in tests.
7
- */
8
- export class SkySelectionModalHarness extends ComponentHarness {
9
- /**
10
- * @internal
11
- */
12
- static { this.hostSelector = '.sky-lookup-show-more-modal'; }
13
- #getCancelButton = this.locatorFor('button.sky-lookup-show-more-modal-close');
14
- #getClearAllButton = this.locatorForOptional('button.sky-lookup-show-more-modal-clear-all-btn');
15
- #getCheckboxHarness = this.locatorFor(SkyCheckboxHarness);
16
- #getInfiniteScroll = this.locatorFor(SkyInfiniteScrollHarness);
17
- #getSaveButton = this.locatorFor('button.sky-lookup-show-more-modal-save');
18
- #getSearchHarness = this.locatorFor(SkySearchHarness);
19
- #getSelectAllButton = this.locatorForOptional('button.sky-lookup-show-more-modal-select-all-btn');
20
- #getAddButton = this.locatorForOptional('button.sky-lookup-show-more-modal-add');
21
- /**
22
- * Clears the text of the search input.
23
- */
24
- async clearSearchText() {
25
- return (await this.#getSearchHarness()).clear();
26
- }
27
- /**
28
- * Enters text into the search input and performs a search.
29
- */
30
- async enterSearchText(value) {
31
- return (await this.#getSearchHarness()).enterText(value);
32
- }
33
- /**
34
- *
35
- * Gets the search input's aria-label.
36
- */
37
- async getSearchAriaLabel() {
38
- return (await this.#getSearchHarness()).getAriaLabel();
39
- }
40
- /**
41
- * Selects multiple search results based on a set of criteria.
42
- */
43
- async selectSearchResult(filters) {
44
- const harnesses = await this.getSearchResults(filters);
45
- if (await this.isMultiselect()) {
46
- for (const harness of harnesses) {
47
- await harness.select();
48
- }
49
- }
50
- else {
51
- // Click on the item directly because we've added a custom click event in the picker's template.
52
- await (await harnesses[0].host()).click();
53
- }
54
- }
55
- /**
56
- * Saves any selections made and closes the modal.
57
- */
58
- async saveAndClose() {
59
- return (await this.#getSaveButton()).click();
60
- }
61
- /**
62
- *
63
- * Gets the save button's aria-label.
64
- */
65
- async getSaveButtonAriaLabel() {
66
- return (await this.#getSaveButton()).getAttribute('aria-label');
67
- }
68
- /**
69
- * Closes the picker without saving any selections made.
70
- */
71
- async cancel() {
72
- return (await this.#getCancelButton()).click();
73
- }
74
- /**
75
- * Gets a list of search results.
76
- */
77
- async getSearchResults(filters) {
78
- const pickerId = (await (await this.host()).getAttribute('id'));
79
- const harnesses = await this.locatorForAll(SkyRepeaterItemHarness.with({
80
- ...(filters || {}),
81
- ancestor: `#${pickerId}`,
82
- }))();
83
- if (filters && harnesses.length === 0) {
84
- throw new Error(`Could not find search results in the picker matching filter(s): ${JSON.stringify(filters)}`);
85
- }
86
- return harnesses;
87
- }
88
- /**
89
- * Clears all selections made.
90
- */
91
- async clearAll() {
92
- const button = await this.#getClearAllButton();
93
- if (!button) {
94
- throw new Error('Could not clear all selections because the "Clear all" button could not be found.');
95
- }
96
- await button.click();
97
- }
98
- /**
99
- *
100
- * Gets the clear all button's aria-label.
101
- */
102
- async getClearAllButtonAriaLabel() {
103
- const button = await this.#getClearAllButton();
104
- if (!button) {
105
- throw new Error('Could not get the aria-label for the clear all button because the "Clear all" button could not be found.');
106
- }
107
- return button.getAttribute('aria-label');
108
- }
109
- /**
110
- * Whether the selection modal is configured to allow multiple selections.
111
- */
112
- async isMultiselect() {
113
- return !(await (await this.host()).hasClass('sky-lookup-show-more-modal-single'));
114
- }
115
- /**
116
- * Selects all search results.
117
- */
118
- async selectAll() {
119
- const button = await this.#getSelectAllButton();
120
- if (!button) {
121
- throw new Error('Could not select all selections because the "Select all" button could not be found.');
122
- }
123
- await button.click();
124
- }
125
- /**
126
- *
127
- * Gets the select all button's aria-label.
128
- */
129
- async getSelectAllButtonAriaLabel() {
130
- const button = await this.#getSelectAllButton();
131
- if (!button) {
132
- throw new Error('Could not get the aria-label for the select all button because the "Select all" button could not be found.');
133
- }
134
- return button.getAttribute('aria-label');
135
- }
136
- /**
137
- * Loads more results in the picker.
138
- */
139
- async loadMore() {
140
- return (await this.#getInfiniteScroll()).loadMore();
141
- }
142
- /**
143
- * Whether the selection modal is configured to show the add button.
144
- */
145
- async hasAddButton() {
146
- const button = await this.#getAddButton();
147
- return !!button;
148
- }
149
- /**
150
- * Clicks the add button.
151
- */
152
- async clickAddButton() {
153
- const button = await this.#getAddButton();
154
- if (!button) {
155
- throw new Error('Could not click the add button because the button could not be found.');
156
- }
157
- await button.click();
158
- }
159
- /**
160
- * Gets the "Only show selected" checkbox's aria-label
161
- */
162
- async getOnlyShowSelectedAriaLabel() {
163
- try {
164
- return (await this.#getCheckboxHarness()).getAriaLabel();
165
- }
166
- catch {
167
- throw new Error('Could not get the "Show only selected items" checkbox because it could not be found.');
168
- }
169
- }
170
- }
171
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLW1vZGFsLWhhcm5lc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbG9va3VwL3Rlc3Rpbmcvc3JjL3NlbGVjdGlvbi1tb2RhbC9zZWxlY3Rpb24tbW9kYWwtaGFybmVzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMxRCxPQUFPLEVBQ0wsd0JBQXdCLEVBQ3hCLHNCQUFzQixHQUN2QixNQUFNLHNCQUFzQixDQUFDO0FBRTlCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBSzVEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHdCQUF5QixTQUFRLGdCQUFnQjtJQUM1RDs7T0FFRzthQUNXLGlCQUFZLEdBQUcsNkJBQTZCLENBQUM7SUFFM0QsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyx5Q0FBeUMsQ0FBQyxDQUFDO0lBRTlFLGtCQUFrQixHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FDMUMsaURBQWlELENBQ2xELENBQUM7SUFFRixtQkFBbUIsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFFMUQsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBRS9ELGNBQWMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLHdDQUF3QyxDQUFDLENBQUM7SUFFM0UsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBRXRELG1CQUFtQixHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FDM0Msa0RBQWtELENBQ25ELENBQUM7SUFFRixhQUFhLEdBQUcsSUFBSSxDQUFDLGtCQUFr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SUFDdEQsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLFlBQVk7UUFDdkIsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDMUMsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQ2xCLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxjQUFjO1FBQ3pCLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQzFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNaLE1BQU0sSUFBSSxLQUFLLENBQ2IsdUVBQXVFLENBQ3hFLENBQUM7UUFDSixDQUFDO1FBRUQsTUFBTSxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLDRCQUE0QjtRQUN2QyxJQUFJLENBQUM7WUFDSCxPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQzNELENBQUM7UUFBQyxNQUFNLENBQUM7WUFDUCxNQUFNLElBQUksS0FBSyxDQUNiLHNGQUFzRixDQUN2RixDQUFDO1FBQ0osQ0FBQztJQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnRIYXJuZXNzIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Rlc3RpbmcnO1xuaW1wb3J0IHsgU2t5Q2hlY2tib3hIYXJuZXNzIH0gZnJvbSAnQHNreXV4L2Zvcm1zL3Rlc3RpbmcnO1xuaW1wb3J0IHtcbiAgU2t5SW5maW5pdGVTY3JvbGxIYXJuZXNzLFxuICBTa3lSZXBlYXRlckl0ZW1IYXJuZXNzLFxufSBmcm9tICdAc2t5dXgvbGlzdHMvdGVzdGluZyc7XG5cbmltcG9ydCB7IFNreVNlYXJjaEhhcm5lc3MgfSBmcm9tICcuLi9zZWFyY2gvc2VhcmNoLWhhcm5lc3MnO1xuXG5pbXBvcnQgeyBTa3lTZWxlY3Rpb25Nb2RhbFNlYXJjaFJlc3VsdEhhcm5lc3MgfSBmcm9tICcuL3NlbGVjdGlvbi1tb2RhbC1zZWFyY2gtcmVzdWx0LWhhcm5lc3MnO1xuaW1wb3J0IHsgU2t5U2VsZWN0aW9uTW9kYWxTZWFyY2hSZXN1bHRIYXJuZXNzRmlsdGVycyB9IGZyb20gJy4vc2VsZWN0aW9uLW1vZGFsLXNlYXJjaC1yZXN1bHQtaGFybmVzcy1maWx0ZXJzJztcblxuLyoqXG4gKiBIYXJuZXNzIGZvciBpbnRlcmFjdGluZyB3aXRoIGEgc2VsZWN0aW9uIG1vZGFsIGluIHRlc3RzLlxuICovXG5leHBvcnQgY2xhc3MgU2t5U2VsZWN0aW9uTW9kYWxIYXJuZXNzIGV4dGVuZHMgQ29tcG9uZW50SGFybmVzcyB7XG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgaG9zdFNlbGVjdG9yID0gJy5za3ktbG9va3VwLXNob3ctbW9yZS1tb2RhbCc7XG5cbiAgI2dldENhbmNlbEJ1dHRvbiA9IHRoaXMubG9jYXRvckZvcignYnV0dG9uLnNreS1sb29rdXAtc2hvdy1tb3JlLW1vZGFsLWNsb3NlJyk7XG5cbiAgI2dldENsZWFyQWxsQnV0dG9uID0gdGhpcy5sb2NhdG9yRm9yT3B0aW9uYWwoXG4gICAgJ2J1dHRvbi5za3ktbG9va3VwLXNob3ctbW9yZS1tb2RhbC1jbGVhci1hbGwtYnRuJyxcbiAgKTtcblxuICAjZ2V0Q2hlY2tib3hIYXJuZXNzID0gdGhpcy5sb2NhdG9yRm9yKFNreUNoZWNrYm94SGFybmVzcyk7XG5cbiAgI2dldEluZmluaXRlU2Nyb2xsID0gdGhpcy5sb2NhdG9yRm9yKFNreUluZmluaXRlU2Nyb2xsSGFybmVzcyk7XG5cbiAgI2dldFNhdmVCdXR0b24gPSB0aGlzLmxvY2F0b3JGb3IoJ2J1dHRvbi5za3ktbG9va3VwLXNob3ctbW9yZS1tb2RhbC1zYXZlJyk7XG5cbiAgI2dldFNlYXJjaEhhcm5lc3MgPSB0aGlzLmxvY2F0b3JGb3IoU2t5U2VhcmNoSGFybmVzcyk7XG5cbiAgI2dldFNlbGVjdEFsbEJ1dHRvbiA9IHRoaXMubG9jYXRvckZvck9wdGlvbmFsKFxuICAgICdidXR0b24uc2t5LWxvb2t1cC1zaG93LW1vcmUtbW9kYWwtc2VsZWN0LWFsbC1idG4nLFxuICApO1xuXG4gICNnZXRBZGRCdXR0b24gPSB0aGlzLmxvY2F0b3JGb3JPcHRpb25hbChcbiAgICAnYnV0dG9uLnNreS1sb29rdXAtc2hvdy1tb3JlLW1vZGFsLWFkZCcsXG4gICk7XG5cbiAgLyoqXG4gICAqIENsZWFycyB0aGUgdGV4dCBvZiB0aGUgc2VhcmNoIGlucHV0LlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGNsZWFyU2VhcmNoVGV4dCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuI2dldFNlYXJjaEhhcm5lc3MoKSkuY2xlYXIoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbnRlcnMgdGV4dCBpbnRvIHRoZSBzZWFyY2ggaW5wdXQgYW5kIHBlcmZvcm1zIGEgc2VhcmNoLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGVudGVyU2VhcmNoVGV4dCh2YWx1ZTogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLiNnZXRTZWFyY2hIYXJuZXNzKCkpLmVudGVyVGV4dCh2YWx1ZSk7XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogR2V0cyB0aGUgc2VhcmNoIGlucHV0J3MgYXJpYS1sYWJlbC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRTZWFyY2hBcmlhTGFiZWwoKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLiNnZXRTZWFyY2hIYXJuZXNzKCkpLmdldEFyaWFMYWJlbCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNlbGVjdHMgbXVsdGlwbGUgc2VhcmNoIHJlc3VsdHMgYmFzZWQgb24gYSBzZXQgb2YgY3JpdGVyaWEuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgc2VsZWN0U2VhcmNoUmVzdWx0KFxuICAgIGZpbHRlcnM/OiBTa3lTZWxlY3Rpb25Nb2RhbFNlYXJjaFJlc3VsdEhhcm5lc3NGaWx0ZXJzLFxuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBoYXJuZXNzZXMgPSBhd2FpdCB0aGlzLmdldFNlYXJjaFJlc3VsdHMoZmlsdGVycyk7XG5cbiAgICBpZiAoYXdhaXQgdGhpcy5pc011bHRpc2VsZWN0KCkpIHtcbiAgICAgIGZvciAoY29uc3QgaGFybmVzcyBvZiBoYXJuZXNzZXMpIHtcbiAgICAgICAgYXdhaXQgaGFybmVzcy5zZWxlY3QoKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgLy8gQ2xpY2sgb24gdGhlIGl0ZW0gZGlyZWN0bHkgYmVjYXVzZSB3ZSd2ZSBhZGRlZCBhIGN1c3RvbSBjbGljayBldmVudCBpbiB0aGUgcGlja2VyJ3MgdGVtcGxhdGUuXG4gICAgICBhd2FpdCAoYXdhaXQgaGFybmVzc2VzWzBdLmhvc3QoKSkuY2xpY2soKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2F2ZXMgYW55IHNlbGVjdGlvbnMgbWFkZSBhbmQgY2xvc2VzIHRoZSBtb2RhbC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBzYXZlQW5kQ2xvc2UoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLiNnZXRTYXZlQnV0dG9uKCkpLmNsaWNrKCk7XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogR2V0cyB0aGUgc2F2ZSBidXR0b24ncyBhcmlhLWxhYmVsLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldFNhdmVCdXR0b25BcmlhTGFiZWwoKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLiNnZXRTYXZlQnV0dG9uKCkpLmdldEF0dHJpYnV0ZSgnYXJpYS1sYWJlbCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsb3NlcyB0aGUgcGlja2VyIHdpdGhvdXQgc2F2aW5nIGFueSBzZWxlY3Rpb25zIG1hZGUuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgY2FuY2VsKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy4jZ2V0Q2FuY2VsQnV0dG9uKCkpLmNsaWNrKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyBhIGxpc3Qgb2Ygc2VhcmNoIHJlc3VsdHMuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0U2VhcmNoUmVzdWx0cyhcbiAgICBmaWx0ZXJzPzogU2t5U2VsZWN0aW9uTW9kYWxTZWFyY2hSZXN1bHRIYXJuZXNzRmlsdGVycyxcbiAgKTogUHJvbWlzZTxTa3lTZWxlY3Rpb25Nb2RhbFNlYXJjaFJlc3VsdEhhcm5lc3NbXT4ge1xuICAgIGNvbnN0IHBpY2tlcklkID0gKGF3YWl0IChhd2FpdCB0aGlzLmhvc3QoKSkuZ2V0QXR0cmlidXRlKCdpZCcpKSBhcyBzdHJpbmc7XG5cbiAgICBjb25zdCBoYXJuZXNzZXMgPSBhd2FpdCB0aGlzLmxvY2F0b3JGb3JBbGwoXG4gICAgICBTa3lSZXBlYXRlckl0ZW1IYXJuZXNzLndpdGgoe1xuICAgICAgICAuLi4oZmlsdGVycyB8fCB7fSksXG4gICAgICAgIGFuY2VzdG9yOiBgIyR7cGlja2VySWR9YCxcbiAgICAgIH0pLFxuICAgICkoKTtcblxuICAgIGlmIChmaWx0ZXJzICYmIGhhcm5lc3Nlcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYENvdWxkIG5vdCBmaW5kIHNlYXJjaCByZXN1bHRzIGluIHRoZSBwaWNrZXIgbWF0Y2hpbmcgZmlsdGVyKHMpOiAke0pTT04uc3RyaW5naWZ5KFxuICAgICAgICAgIGZpbHRlcnMsXG4gICAgICAgICl9YCxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGhhcm5lc3NlcztcbiAgfVxuXG4gIC8qKlxuICAgKiBDbGVhcnMgYWxsIHNlbGVjdGlvbnMgbWFkZS5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBjbGVhckFsbCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBidXR0b24gPSBhd2FpdCB0aGlzLiNnZXRDbGVhckFsbEJ1dHRvbigpO1xuICAgIGlmICghYnV0dG9uKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdDb3VsZCBub3QgY2xlYXIgYWxsIHNlbGVjdGlvbnMgYmVjYXVzZSB0aGUgXCJDbGVhciBhbGxcIiBidXR0b24gY291bGQgbm90IGJlIGZvdW5kLicsXG4gICAgICApO1xuICAgIH1cblxuICAgIGF3YWl0IGJ1dHRvbi5jbGljaygpO1xuICB9XG5cbiAgLyoqXG4gICAqXG4gICAqIEdldHMgdGhlIGNsZWFyIGFsbCBidXR0b24ncyBhcmlhLWxhYmVsLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldENsZWFyQWxsQnV0dG9uQXJpYUxhYmVsKCk6IFByb21pc2U8c3RyaW5nIHwgbnVsbD4ge1xuICAgIGNvbnN0IGJ1dHRvbiA9IGF3YWl0IHRoaXMuI2dldENsZWFyQWxsQnV0dG9uKCk7XG5cbiAgICBpZiAoIWJ1dHRvbikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnQ291bGQgbm90IGdldCB0aGUgYXJpYS1sYWJlbCBmb3IgdGhlIGNsZWFyIGFsbCBidXR0b24gYmVjYXVzZSB0aGUgXCJDbGVhciBhbGxcIiBidXR0b24gY291bGQgbm90IGJlIGZvdW5kLicsXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBidXR0b24uZ2V0QXR0cmlidXRlKCdhcmlhLWxhYmVsJyk7XG4gIH1cblxuICAvKipcbiAgICogV2hldGhlciB0aGUgc2VsZWN0aW9uIG1vZGFsIGlzIGNvbmZpZ3VyZWQgdG8gYWxsb3cgbXVsdGlwbGUgc2VsZWN0aW9ucy5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBpc011bHRpc2VsZWN0KCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiAhKGF3YWl0IChcbiAgICAgIGF3YWl0IHRoaXMuaG9zdCgpXG4gICAgKS5oYXNDbGFzcygnc2t5LWxvb2t1cC1zaG93LW1vcmUtbW9kYWwtc2luZ2xlJykpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNlbGVjdHMgYWxsIHNlYXJjaCByZXN1bHRzLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIHNlbGVjdEFsbCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBidXR0b24gPSBhd2FpdCB0aGlzLiNnZXRTZWxlY3RBbGxCdXR0b24oKTtcbiAgICBpZiAoIWJ1dHRvbikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnQ291bGQgbm90IHNlbGVjdCBhbGwgc2VsZWN0aW9ucyBiZWNhdXNlIHRoZSBcIlNlbGVjdCBhbGxcIiBidXR0b24gY291bGQgbm90IGJlIGZvdW5kLicsXG4gICAgICApO1xuICAgIH1cblxuICAgIGF3YWl0IGJ1dHRvbi5jbGljaygpO1xuICB9XG5cbiAgLyoqXG4gICAqXG4gICAqIEdldHMgdGhlIHNlbGVjdCBhbGwgYnV0dG9uJ3MgYXJpYS1sYWJlbC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRTZWxlY3RBbGxCdXR0b25BcmlhTGFiZWwoKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgY29uc3QgYnV0dG9uID0gYXdhaXQgdGhpcy4jZ2V0U2VsZWN0QWxsQnV0dG9uKCk7XG5cbiAgICBpZiAoIWJ1dHRvbikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnQ291bGQgbm90IGdldCB0aGUgYXJpYS1sYWJlbCBmb3IgdGhlIHNlbGVjdCBhbGwgYnV0dG9uIGJlY2F1c2UgdGhlIFwiU2VsZWN0IGFsbFwiIGJ1dHRvbiBjb3VsZCBub3QgYmUgZm91bmQuJyxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGJ1dHRvbi5nZXRBdHRyaWJ1dGUoJ2FyaWEtbGFiZWwnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMb2FkcyBtb3JlIHJlc3VsdHMgaW4gdGhlIHBpY2tlci5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBsb2FkTW9yZSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuI2dldEluZmluaXRlU2Nyb2xsKCkpLmxvYWRNb3JlKCk7XG4gIH1cblxuICAvKipcbiAgICogV2hldGhlciB0aGUgc2VsZWN0aW9uIG1vZGFsIGlzIGNvbmZpZ3VyZWQgdG8gc2hvdyB0aGUgYWRkIGJ1dHRvbi5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBoYXNBZGRCdXR0b24oKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3QgYnV0dG9uID0gYXdhaXQgdGhpcy4jZ2V0QWRkQnV0dG9uKCk7XG4gICAgcmV0dXJuICEhYnV0dG9uO1xuICB9XG5cbiAgLyoqXG4gICAqIENsaWNrcyB0aGUgYWRkIGJ1dHRvbi5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBjbGlja0FkZEJ1dHRvbigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBidXR0b24gPSBhd2FpdCB0aGlzLiNnZXRBZGRCdXR0b24oKTtcbiAgICBpZiAoIWJ1dHRvbikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnQ291bGQgbm90IGNsaWNrIHRoZSBhZGQgYnV0dG9uIGJlY2F1c2UgdGhlIGJ1dHRvbiBjb3VsZCBub3QgYmUgZm91bmQuJyxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgYXdhaXQgYnV0dG9uLmNsaWNrKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgXCJPbmx5IHNob3cgc2VsZWN0ZWRcIiBjaGVja2JveCdzIGFyaWEtbGFiZWxcbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRPbmx5U2hvd1NlbGVjdGVkQXJpYUxhYmVsKCk6IFByb21pc2U8c3RyaW5nIHwgbnVsbD4ge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gKGF3YWl0IHRoaXMuI2dldENoZWNrYm94SGFybmVzcygpKS5nZXRBcmlhTGFiZWwoKTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ0NvdWxkIG5vdCBnZXQgdGhlIFwiU2hvdyBvbmx5IHNlbGVjdGVkIGl0ZW1zXCIgY2hlY2tib3ggYmVjYXVzZSBpdCBjb3VsZCBub3QgYmUgZm91bmQuJyxcbiAgICAgICk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLW1vZGFsLXNlYXJjaC1yZXN1bHQtaGFybmVzcy1maWx0ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xvb2t1cC90ZXN0aW5nL3NyYy9zZWxlY3Rpb24tbW9kYWwvc2VsZWN0aW9uLW1vZGFsLXNlYXJjaC1yZXN1bHQtaGFybmVzcy1maWx0ZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTa3lSZXBlYXRlckl0ZW1IYXJuZXNzRmlsdGVycyB9IGZyb20gJ0Bza3l1eC9saXN0cy90ZXN0aW5nJztcblxuLyoqXG4gKiBBIHNldCBvZiBjcml0ZXJpYSB0aGF0IGNhbiBiZSB1c2VkIHRvIGZpbHRlciBhIGxpc3Qgb2YgYFNreVNlbGVjdGlvbk1vZGFsU2VhcmNoUmVzdWx0SGFybmVzc2AgaW5zdGFuY2VzLlxuICovXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWludGVyZmFjZSwgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LW9iamVjdC10eXBlXG5leHBvcnQgaW50ZXJmYWNlIFNreVNlbGVjdGlvbk1vZGFsU2VhcmNoUmVzdWx0SGFybmVzc0ZpbHRlcnNcbiAgLy8gT21pdHRpbmcgJ3RpdGxlVGV4dCcgYW5kICdhbmNlc3Rvcicgc2luY2UgdGhleSBhcmUgbm90IHJlbGV2YW50IGZpbHRlcnMgZm9yIHRoZSBwaWNrZXIncyBzZWFyY2ggcmVzdWx0cy5cbiAgZXh0ZW5kcyBPbWl0PFNreVJlcGVhdGVySXRlbUhhcm5lc3NGaWx0ZXJzLCAndGl0bGVUZXh0JyB8ICdhbmNlc3Rvcic+IHt9XG4iXX0=
@@ -1,7 +0,0 @@
1
- import { SkyRepeaterItemHarness } from '@skyux/lists/testing';
2
- /**
3
- * Harness for interacting with a selection modal's search results in tests.
4
- */
5
- export class SkySelectionModalSearchResultHarness extends SkyRepeaterItemHarness {
6
- }
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLW1vZGFsLXNlYXJjaC1yZXN1bHQtaGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sb29rdXAvdGVzdGluZy9zcmMvc2VsZWN0aW9uLW1vZGFsL3NlbGVjdGlvbi1tb2RhbC1zZWFyY2gtcmVzdWx0LWhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFOUQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sb0NBQXFDLFNBQVEsc0JBQXNCO0NBQUciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTa3lSZXBlYXRlckl0ZW1IYXJuZXNzIH0gZnJvbSAnQHNreXV4L2xpc3RzL3Rlc3RpbmcnO1xuXG4vKipcbiAqIEhhcm5lc3MgZm9yIGludGVyYWN0aW5nIHdpdGggYSBzZWxlY3Rpb24gbW9kYWwncyBzZWFyY2ggcmVzdWx0cyBpbiB0ZXN0cy5cbiAqL1xuZXhwb3J0IGNsYXNzIFNreVNlbGVjdGlvbk1vZGFsU2VhcmNoUmVzdWx0SGFybmVzcyBleHRlbmRzIFNreVJlcGVhdGVySXRlbUhhcm5lc3Mge31cbiJdfQ==