@skyux/lookup 11.31.0 → 12.0.0-alpha.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.
- package/documentation.json +1525 -1512
- package/fesm2022/skyux-lookup-testing.mjs +8 -8
- package/fesm2022/skyux-lookup-testing.mjs.map +1 -1
- package/fesm2022/skyux-lookup.mjs +74 -72
- package/fesm2022/skyux-lookup.mjs.map +1 -1
- package/lib/modules/lookup/lookup-autocomplete-adapter.d.ts +1 -1
- package/package.json +18 -22
- package/esm2022/index.mjs +0 -19
- package/esm2022/lib/modules/autocomplete/autocomplete-adapter.service.mjs +0 -61
- package/esm2022/lib/modules/autocomplete/autocomplete-default-search-function.mjs +0 -39
- package/esm2022/lib/modules/autocomplete/autocomplete-input.directive.mjs +0 -241
- package/esm2022/lib/modules/autocomplete/autocomplete-search-async-disabled.pipe.mjs +0 -19
- package/esm2022/lib/modules/autocomplete/autocomplete.component.mjs +0 -900
- package/esm2022/lib/modules/autocomplete/autocomplete.module.mjs +0 -61
- package/esm2022/lib/modules/autocomplete/types/autocomplete-default-search-function-options.mjs +0 -2
- package/esm2022/lib/modules/autocomplete/types/autocomplete-input-text-change.mjs +0 -2
- package/esm2022/lib/modules/autocomplete/types/autocomplete-message-type.mjs +0 -15
- package/esm2022/lib/modules/autocomplete/types/autocomplete-message.mjs +0 -2
- package/esm2022/lib/modules/autocomplete/types/autocomplete-search-args.mjs +0 -2
- package/esm2022/lib/modules/autocomplete/types/autocomplete-search-async-args.mjs +0 -2
- package/esm2022/lib/modules/autocomplete/types/autocomplete-search-async-function.mjs +0 -2
- package/esm2022/lib/modules/autocomplete/types/autocomplete-search-async-result-display-type.mjs +0 -2
- package/esm2022/lib/modules/autocomplete/types/autocomplete-search-async-result.mjs +0 -2
- package/esm2022/lib/modules/autocomplete/types/autocomplete-search-context.mjs +0 -2
- package/esm2022/lib/modules/autocomplete/types/autocomplete-search-function-filter.mjs +0 -2
- package/esm2022/lib/modules/autocomplete/types/autocomplete-search-function-response.mjs +0 -2
- package/esm2022/lib/modules/autocomplete/types/autocomplete-search-function.mjs +0 -2
- package/esm2022/lib/modules/autocomplete/types/autocomplete-selection-change.mjs +0 -2
- package/esm2022/lib/modules/autocomplete/types/autocomplete-show-more-args.mjs +0 -2
- package/esm2022/lib/modules/country-field/country-field.component.mjs +0 -410
- package/esm2022/lib/modules/country-field/country-field.module.mjs +0 -43
- package/esm2022/lib/modules/country-field/types/country-field-context-token.mjs +0 -6
- package/esm2022/lib/modules/country-field/types/country-field-context.mjs +0 -2
- package/esm2022/lib/modules/country-field/types/country.mjs +0 -2
- package/esm2022/lib/modules/lookup/lookup-adapter.service.mjs +0 -21
- package/esm2022/lib/modules/lookup/lookup-autocomplete-adapter.mjs +0 -116
- package/esm2022/lib/modules/lookup/lookup-show-more-modal.component.mjs +0 -306
- package/esm2022/lib/modules/lookup/lookup.component.mjs +0 -765
- package/esm2022/lib/modules/lookup/lookup.module.mjs +0 -40
- package/esm2022/lib/modules/lookup/types/lookup-add-click-callback-args.mjs +0 -2
- package/esm2022/lib/modules/lookup/types/lookup-add-click-event-args.mjs +0 -2
- package/esm2022/lib/modules/lookup/types/lookup-select-mode-type.mjs +0 -2
- package/esm2022/lib/modules/lookup/types/lookup-select-mode.mjs +0 -16
- package/esm2022/lib/modules/lookup/types/lookup-show-more-config.mjs +0 -2
- package/esm2022/lib/modules/lookup/types/lookup-show-more-custom-picker-context.mjs +0 -7
- package/esm2022/lib/modules/lookup/types/lookup-show-more-custom-picker.mjs +0 -2
- package/esm2022/lib/modules/lookup/types/lookup-show-more-native-picker-config.mjs +0 -2
- package/esm2022/lib/modules/lookup/types/lookup-show-more-native-picker-context.mjs +0 -17
- package/esm2022/lib/modules/search/search-adapter.service.mjs +0 -46
- package/esm2022/lib/modules/search/search.component.mjs +0 -294
- package/esm2022/lib/modules/search/search.module.mjs +0 -44
- package/esm2022/lib/modules/selection-modal/selection-modal-item-selected.pipe.mjs +0 -20
- package/esm2022/lib/modules/selection-modal/selection-modal.component.mjs +0 -246
- package/esm2022/lib/modules/selection-modal/selection-modal.module.mjs +0 -15
- package/esm2022/lib/modules/selection-modal/selection-modal.service.mjs +0 -90
- package/esm2022/lib/modules/selection-modal/types/selection-modal-add-click-callback-args.mjs +0 -2
- package/esm2022/lib/modules/selection-modal/types/selection-modal-add-click-event-args.mjs +0 -2
- package/esm2022/lib/modules/selection-modal/types/selection-modal-close-args.mjs +0 -2
- package/esm2022/lib/modules/selection-modal/types/selection-modal-context.mjs +0 -18
- package/esm2022/lib/modules/selection-modal/types/selection-modal-instance.mjs +0 -45
- package/esm2022/lib/modules/selection-modal/types/selection-modal-open-args.mjs +0 -2
- package/esm2022/lib/modules/selection-modal/types/selection-modal-result.mjs +0 -2
- package/esm2022/lib/modules/selection-modal/types/selection-modal-search-args.mjs +0 -2
- package/esm2022/lib/modules/selection-modal/types/selection-modal-search-result.mjs +0 -2
- package/esm2022/lib/modules/shared/sky-lookup-resources.module.mjs +0 -71
- package/esm2022/lib/modules/shared/sky-lookup-string-utils.mjs +0 -8
- package/esm2022/skyux-lookup.mjs +0 -5
- package/esm2022/testing/legacy/country-field/country-field-fixture.mjs +0 -121
- package/esm2022/testing/legacy/country-field/country-field-testing.module.mjs +0 -18
- package/esm2022/testing/legacy/search/search-fixture.mjs +0 -61
- package/esm2022/testing/legacy/search/search-testing.module.mjs +0 -19
- package/esm2022/testing/modules/autocomplete/autocomplete-harness-filters.mjs +0 -2
- package/esm2022/testing/modules/autocomplete/autocomplete-harness.mjs +0 -192
- package/esm2022/testing/modules/autocomplete/autocomplete-input-harness.mjs +0 -17
- package/esm2022/testing/modules/autocomplete/autocomplete-search-result-harness-filters.mjs +0 -2
- package/esm2022/testing/modules/autocomplete/autocomplete-search-result-harness.mjs +0 -38
- package/esm2022/testing/modules/country-field/country-field-harness-filters.mjs +0 -2
- package/esm2022/testing/modules/country-field/country-field-harness.mjs +0 -146
- package/esm2022/testing/modules/country-field/country-field-search-result-harness-filters.mjs +0 -2
- package/esm2022/testing/modules/country-field/country-field-search-result-harness.mjs +0 -27
- package/esm2022/testing/modules/lookup/lookup-harness-filters.mjs +0 -2
- package/esm2022/testing/modules/lookup/lookup-harness.mjs +0 -188
- package/esm2022/testing/modules/lookup/lookup-search-result-harness-filters.mjs +0 -2
- package/esm2022/testing/modules/lookup/lookup-search-result-harness.mjs +0 -24
- package/esm2022/testing/modules/lookup/lookup-selection-harness-filters.mjs +0 -2
- package/esm2022/testing/modules/lookup/lookup-selection-harness.mjs +0 -8
- package/esm2022/testing/modules/lookup/lookup-selections-list-harness.mjs +0 -26
- package/esm2022/testing/modules/lookup/lookup-show-more-picker-harness-filters.mjs +0 -2
- package/esm2022/testing/modules/lookup/lookup-show-more-picker-harness.mjs +0 -28
- package/esm2022/testing/modules/lookup/lookup-show-more-picker-search-result-harness-filters.mjs +0 -2
- package/esm2022/testing/modules/lookup/lookup-show-more-picker-search-result-harness.mjs +0 -8
- package/esm2022/testing/modules/search/search-harness-filters.mjs +0 -2
- package/esm2022/testing/modules/search/search-harness.mjs +0 -143
- package/esm2022/testing/modules/selection-modal/selection-modal-harness.mjs +0 -172
- package/esm2022/testing/modules/selection-modal/selection-modal-search-result-harness-filters.mjs +0 -2
- package/esm2022/testing/modules/selection-modal/selection-modal-search-result-harness.mjs +0 -7
- package/esm2022/testing/public-api.mjs +0 -17
- package/esm2022/testing/skyux-lookup-testing.mjs +0 -5
|
@@ -1,188 +0,0 @@
|
|
|
1
|
-
import { SkyOverlayHarness } from '@skyux/core/testing';
|
|
2
|
-
import { SkyAutocompleteHarness } from '../autocomplete/autocomplete-harness';
|
|
3
|
-
import { SkyAutocompleteInputHarness } from '../autocomplete/autocomplete-input-harness';
|
|
4
|
-
import { SkyLookupSearchResultHarness } from './lookup-search-result-harness';
|
|
5
|
-
import { SkyLookupSelectionsListHarness } from './lookup-selections-list-harness';
|
|
6
|
-
import { SkyLookupShowMorePickerHarness } from './lookup-show-more-picker-harness';
|
|
7
|
-
/**
|
|
8
|
-
* Harness for interacting with a lookup component in tests.
|
|
9
|
-
*/
|
|
10
|
-
export class SkyLookupHarness extends SkyAutocompleteHarness {
|
|
11
|
-
/**
|
|
12
|
-
* Finds a standard lookup component, or a lookup component that is wrapped by an input box component.
|
|
13
|
-
* For input box implementations, we need to use the `.sky-input-box` selector since the `sky-lookup`
|
|
14
|
-
* element is removed from the DOM.
|
|
15
|
-
* @internal
|
|
16
|
-
*/
|
|
17
|
-
static { this.hostSelector = 'sky-lookup,.sky-input-box'; }
|
|
18
|
-
#documentRootLocator = this.documentRootLocatorFactory();
|
|
19
|
-
#getAutocompleteHarness = this.locatorFor(SkyAutocompleteHarness);
|
|
20
|
-
#getInput = this.locatorFor(SkyAutocompleteInputHarness);
|
|
21
|
-
#getSelectionsListHarness = this.locatorFor(SkyLookupSelectionsListHarness);
|
|
22
|
-
#getWrapper = this.locatorFor('.sky-lookup');
|
|
23
|
-
/**
|
|
24
|
-
* Gets a `HarnessPredicate` that can be used to search for a
|
|
25
|
-
* `SkyLookupHarness` that meets certain criteria.
|
|
26
|
-
*
|
|
27
|
-
* These filters only work for standalone lookups. For lookups
|
|
28
|
-
* wrapped inside `sky-input-box`, place filters on the input box
|
|
29
|
-
* instead and query the datepicker using a `SkyInputBoxHarness`.
|
|
30
|
-
* For the input box implementation, see the code example.
|
|
31
|
-
*/
|
|
32
|
-
static with(filters) {
|
|
33
|
-
return SkyLookupHarness.getDataSkyIdPredicate(filters);
|
|
34
|
-
}
|
|
35
|
-
/**
|
|
36
|
-
* Blurs the lookup input.
|
|
37
|
-
* @deprecated Call `await (await lookup.getControl()).blur()` instead.
|
|
38
|
-
*/
|
|
39
|
-
async blur() {
|
|
40
|
-
await (await super.getControl()).blur();
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* Clears the lookup input value.
|
|
44
|
-
* @deprecated Call `await (await lookup.getControl()).clear()` instead.
|
|
45
|
-
*/
|
|
46
|
-
async clear() {
|
|
47
|
-
await (await super.getControl()).clear();
|
|
48
|
-
}
|
|
49
|
-
/**
|
|
50
|
-
* Clicks the "Add" button on the search results panel.
|
|
51
|
-
*/
|
|
52
|
-
async clickAddButton() {
|
|
53
|
-
await (await super.getControl()).focus();
|
|
54
|
-
await super.clickAddButton();
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* Clicks the "Show more" button on the search results panel.
|
|
58
|
-
*/
|
|
59
|
-
async clickShowMoreButton() {
|
|
60
|
-
await (await super.getControl()).focus();
|
|
61
|
-
await super.clickShowMoreButton();
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* Dismisses the selections made with a multiselect lookup.
|
|
65
|
-
*/
|
|
66
|
-
async dismissSelections() {
|
|
67
|
-
await (await this.#getSelectionsListHarness()).dismissSelections();
|
|
68
|
-
}
|
|
69
|
-
/**
|
|
70
|
-
* Enters text into the lookup input.
|
|
71
|
-
* @deprecated Call `await (await lookup.getControl()).setValue()` instead.
|
|
72
|
-
*/
|
|
73
|
-
async enterText(value) {
|
|
74
|
-
await (await super.getControl()).setValue(value);
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* Focuses the lookup input.
|
|
78
|
-
* @deprecated Call `await (await lookup.getControl()).focus()` instead.
|
|
79
|
-
*/
|
|
80
|
-
async focus() {
|
|
81
|
-
await (await super.getControl()).focus();
|
|
82
|
-
}
|
|
83
|
-
/**
|
|
84
|
-
* Gets the lookup `aria-labelledby` value.
|
|
85
|
-
* @deprecated Don't use this property. It returns a value from a deprecated input that lookup no longer uses.
|
|
86
|
-
*/
|
|
87
|
-
async getAriaLabelledby() {
|
|
88
|
-
return await super.getAriaLabelledby();
|
|
89
|
-
}
|
|
90
|
-
/**
|
|
91
|
-
* Returns lookup search result harnesses.
|
|
92
|
-
*/
|
|
93
|
-
async getSearchResults(filters) {
|
|
94
|
-
const overlay = await this.#getOverlay();
|
|
95
|
-
if (!overlay) {
|
|
96
|
-
throw new Error('Unable to retrieve search results. The lookup is closed.');
|
|
97
|
-
}
|
|
98
|
-
const harnesses = await overlay.queryHarnesses(SkyLookupSearchResultHarness.with(filters || {}));
|
|
99
|
-
if (filters && harnesses.length === 0) {
|
|
100
|
-
// Stringify the regular expression so that it's readable in the console log.
|
|
101
|
-
if (filters.text instanceof RegExp) {
|
|
102
|
-
filters.text = filters.text.toString();
|
|
103
|
-
}
|
|
104
|
-
throw new Error(`Could not find search results matching filter(s): ${JSON.stringify(filters)}`);
|
|
105
|
-
}
|
|
106
|
-
return harnesses;
|
|
107
|
-
}
|
|
108
|
-
/**
|
|
109
|
-
* Returns the text content for each lookup search result.
|
|
110
|
-
*/
|
|
111
|
-
async getSearchResultsText(filters) {
|
|
112
|
-
const harnesses = await this.getSearchResults(filters);
|
|
113
|
-
const text = [];
|
|
114
|
-
for (const harness of harnesses) {
|
|
115
|
-
text.push(await harness.getText());
|
|
116
|
-
}
|
|
117
|
-
return text;
|
|
118
|
-
}
|
|
119
|
-
/**
|
|
120
|
-
* Gets the "Show more" picker harness.
|
|
121
|
-
*/
|
|
122
|
-
async getShowMorePicker() {
|
|
123
|
-
const pickerId = await (await (await this.#getAutocompleteHarness()).host()).getAttribute('data-sky-lookup-show-more-picker-id');
|
|
124
|
-
const defaultPicker = await this.#documentRootLocator.locatorForOptional(SkyLookupShowMorePickerHarness.with({ selector: `#${pickerId}` }))();
|
|
125
|
-
if (!defaultPicker) {
|
|
126
|
-
throw new Error('Cannot get the "Show more" picker because it is not open.');
|
|
127
|
-
}
|
|
128
|
-
return defaultPicker;
|
|
129
|
-
}
|
|
130
|
-
/**
|
|
131
|
-
* Gets a list of selections made with a multiselect lookup.
|
|
132
|
-
*/
|
|
133
|
-
async getSelections() {
|
|
134
|
-
return await (await this.#getSelectionsListHarness()).getSelections();
|
|
135
|
-
}
|
|
136
|
-
/**
|
|
137
|
-
* Gets the text content of all selections made with a multiselect lookup.
|
|
138
|
-
*/
|
|
139
|
-
async getSelectionsText() {
|
|
140
|
-
return await (await this.#getSelectionsListHarness()).getSelectionsText();
|
|
141
|
-
}
|
|
142
|
-
/**
|
|
143
|
-
* Gets the value of the lookup input.
|
|
144
|
-
* @deprecated Call `await (await lookup.getControl()).getValue()` instead.
|
|
145
|
-
*/
|
|
146
|
-
async getValue() {
|
|
147
|
-
return await (await super.getControl()).getValue();
|
|
148
|
-
}
|
|
149
|
-
/**
|
|
150
|
-
* Whether the lookup input is disabled.
|
|
151
|
-
* @deprecated Call `await (await lookup.getControl()).isDisabled()` instead.
|
|
152
|
-
*/
|
|
153
|
-
async isDisabled() {
|
|
154
|
-
return await (await super.getControl()).isDisabled();
|
|
155
|
-
}
|
|
156
|
-
/**
|
|
157
|
-
* Whether the lookup input is focused.
|
|
158
|
-
* @deprecated Call `await (await lookup.getControl()).isFocused()` instead.
|
|
159
|
-
*/
|
|
160
|
-
async isFocused() {
|
|
161
|
-
return await (await super.getControl()).isFocused();
|
|
162
|
-
}
|
|
163
|
-
/**
|
|
164
|
-
* Whether the lookup allows for multiple selections.
|
|
165
|
-
*/
|
|
166
|
-
async isMultiselect() {
|
|
167
|
-
return !(await (await this.#getWrapper()).hasClass('sky-lookup-single'));
|
|
168
|
-
}
|
|
169
|
-
/**
|
|
170
|
-
* Whether the lookup is open.
|
|
171
|
-
*/
|
|
172
|
-
async isOpen() {
|
|
173
|
-
return await super.isOpen();
|
|
174
|
-
}
|
|
175
|
-
/**
|
|
176
|
-
* Selects a search result.
|
|
177
|
-
*/
|
|
178
|
-
async selectSearchResult(filters) {
|
|
179
|
-
await super.selectSearchResult(filters);
|
|
180
|
-
}
|
|
181
|
-
async #getOverlay() {
|
|
182
|
-
const overlayId = await (await this.#getInput()).getAriaControls();
|
|
183
|
-
return overlayId
|
|
184
|
-
? await this.#documentRootLocator.locatorForOptional(SkyOverlayHarness.with({ selector: `#${overlayId}` }))()
|
|
185
|
-
: null;
|
|
186
|
-
}
|
|
187
|
-
}
|
|
188
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9va3VwLWhhcm5lc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbG9va3VwL3Rlc3Rpbmcvc3JjL21vZHVsZXMvbG9va3VwL2xvb2t1cC1oYXJuZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXhELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBR3pGLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRzlFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBRW5GOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGdCQUFpQixTQUFRLHNCQUFzQjtJQUMxRDs7Ozs7T0FLRzthQUNvQixpQkFBWSxHQUFHLDJCQUEyQixDQUFDO0lBRWxFLG9CQUFvQixHQUFHLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDO0lBRXpELHVCQUF1QixHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsc0JBQXNCLENBQUMsQ0FBQztJQUVsRSxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO0lBRXpELHlCQUF5QixHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsOEJBQThCLENBQUMsQ0FBQztJQUU1RSxXQUFXLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUU3Qzs7Ozs7Ozs7T0FRRztJQUNJLE1BQU0sQ0FBVSxJQUFJLENBQ3pCLE9BQWdDO1FBRWhDLE9BQU8sZ0JBQWdCLENBQUMscUJBQXFCLENBQUMsT0FBTyxDQUFDLENB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RCxDQUFDO0lBRUQ7OztPQUdHO0lBQ2EsS0FBSyxDQUFDLFNBQVM7UUFDN0IsT0FBTyxNQUFNLENBQUMsTUFBTSxLQUFLLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUN0RCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsYUFBYTtRQUN4QixPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDO0lBQzNFLENBQUM7SUFFRDs7T0FFRztJQUNhLEtBQUssQ0FBQyxNQUFNO1FBQzFCLE9BQU8sTUFBTSxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVEOztPQUVHO0lBQ2EsS0FBSyxDQUFDLGtCQUFrQixDQUN0QyxPQUE0QztRQUU1QyxNQUFNLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsS0FBSyxDQUFDLFdBQVc7UUFDZixNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUVuRSxPQUFPLFNBQVM7WUFDZCxDQUFDLENBQUMsTUFBTSxJQUFJLENBQUMsb0JBQW9CLENBQUMsa0JBQWtCLENBQ2hELGlCQUFpQixDQUFDLElBQUksQ0FBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FDdEQsRUFBRTtZQUNMLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDWCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSGFybmVzc1ByZWRpY2F0ZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXN0aW5nJztcbmltcG9ydCB7IFNreU92ZXJsYXlIYXJuZXNzIH0gZnJvbSAnQHNreXV4L2NvcmUvdGVzdGluZyc7XG5cbmltcG9ydCB7IFNreUF1dG9jb21wbGV0ZUhhcm5lc3MgfSBmcm9tICcuLi9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLWhhcm5lc3MnO1xuaW1wb3J0IHsgU2t5QXV0b2NvbXBsZXRlSW5wdXRIYXJuZXNzIH0gZnJvbSAnLi4vYXV0b2NvbXBsZXRlL2F1dG9jb21wbGV0ZS1pbnB1dC1oYXJuZXNzJztcblxuaW1wb3J0IHsgU2t5TG9va3VwSGFybmVzc0ZpbHRlcnMgfSBmcm9tICcuL2xvb2t1cC1oYXJuZXNzLWZpbHRlcnMnO1xuaW1wb3J0IHsgU2t5TG9va3VwU2VhcmNoUmVzdWx0SGFybmVzcyB9IGZyb20gJy4vbG9va3VwLXNlYXJjaC1yZXN1bHQtaGFybmVzcyc7XG5pbXBvcnQgeyBTa3lMb29rdXBTZWFyY2hSZXN1bHRIYXJuZXNzRmlsdGVycyB9IGZyb20gJy4vbG9va3VwLXNlYXJjaC1yZXN1bHQtaGFybmVzcy1maWx0ZXJzJztcbmltcG9ydCB7IFNreUxvb2t1cFNlbGVjdGlvbkhhcm5lc3MgfSBmcm9tICcuL2xvb2t1cC1zZWxlY3Rpb24taGFybmVzcyc7XG5pbXBvcnQgeyBTa3lMb29rdXBTZWxlY3Rpb25zTGlzdEhhcm5lc3MgfSBmcm9tICcuL2xvb2t1cC1zZWxlY3Rpb25zLWxpc3QtaGFybmVzcyc7XG5pbXBvcnQgeyBTa3lMb29rdXBTaG93TW9yZVBpY2tlckhhcm5lc3MgfSBmcm9tICcuL2xvb2t1cC1zaG93LW1vcmUtcGlja2VyLWhhcm5lc3MnO1xuXG4vKipcbiAqIEhhcm5lc3MgZm9yIGludGVyYWN0aW5nIHdpdGggYSBsb29rdXAgY29tcG9uZW50IGluIHRlc3RzLlxuICovXG5leHBvcnQgY2xhc3MgU2t5TG9va3VwSGFybmVzcyBleHRlbmRzIFNreUF1dG9jb21wbGV0ZUhhcm5lc3Mge1xuICAvKipcbiAgICogRmluZHMgYSBzdGFuZGFyZCBsb29rdXAgY29tcG9uZW50LCBvciBhIGxvb2t1cCBjb21wb25lbnQgdGhhdCBpcyB3cmFwcGVkIGJ5IGFuIGlucHV0IGJveCBjb21wb25lbnQuXG4gICAqIEZvciBpbnB1dCBib3ggaW1wbGVtZW50YXRpb25zLCB3ZSBuZWVkIHRvIHVzZSB0aGUgYC5za3ktaW5wdXQtYm94YCBzZWxlY3RvciBzaW5jZSB0aGUgYHNreS1sb29rdXBgXG4gICAqIGVsZW1lbnQgaXMgcmVtb3ZlZCBmcm9tIHRoZSBET00uXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBvdmVycmlkZSBob3N0U2VsZWN0b3IgPSAnc2t5LWxvb2t1cCwuc2t5LWlucHV0LWJveCc7XG5cbiAgI2RvY3VtZW50Um9vdExvY2F0b3IgPSB0aGlzLmRvY3VtZW50Um9vdExvY2F0b3JGYWN0b3J5KCk7XG5cbiAgI2dldEF1dG9jb21wbGV0ZUhhcm5lc3MgPSB0aGlzLmxvY2F0b3JGb3IoU2t5QXV0b2NvbXBsZXRlSGFybmVzcyk7XG5cbiAgI2dldElucHV0ID0gdGhpcy5sb2NhdG9yRm9yKFNreUF1dG9jb21wbGV0ZUlucHV0SGFybmVzcyk7XG5cbiAgI2dldFNlbGVjdGlvbnNMaXN0SGFybmVzcyA9IHRoaXMubG9jYXRvckZvcihTa3lMb29rdXBTZWxlY3Rpb25zTGlzdEhhcm5lc3MpO1xuXG4gICNnZXRXcmFwcGVyID0gdGhpcy5sb2NhdG9yRm9yKCcuc2t5LWxvb2t1cCcpO1xuXG4gIC8qKlxuICAgKiBHZXRzIGEgYEhhcm5lc3NQcmVkaWNhdGVgIHRoYXQgY2FuIGJlIHVzZWQgdG8gc2VhcmNoIGZvciBhXG4gICAqIGBTa3lMb29rdXBIYXJuZXNzYCB0aGF0IG1lZXRzIGNlcnRhaW4gY3JpdGVyaWEuXG4gICAqXG4gICAqIFRoZXNlIGZpbHRlcnMgb25seSB3b3JrIGZvciBzdGFuZGFsb25lIGxvb2t1cHMuIEZvciBsb29rdXBzXG4gICAqIHdyYXBwZWQgaW5zaWRlIGBza3ktaW5wdXQtYm94YCwgcGxhY2UgZmlsdGVycyBvbiB0aGUgaW5wdXQgYm94XG4gICAqIGluc3RlYWQgYW5kIHF1ZXJ5IHRoZSBkYXRlcGlja2VyIHVzaW5nIGEgYFNreUlucHV0Qm94SGFybmVzc2AuXG4gICAqIEZvciB0aGUgaW5wdXQgYm94IGltcGxlbWVudGF0aW9uLCBzZWUgdGhlIGNvZGUgZXhhbXBsZS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgd2l0aChcbiAgICBmaWx0ZXJzOiBTa3lMb29rdXBIYXJuZXNzRmlsdGVycyxcbiAgKTogSGFybmVzc1ByZWRpY2F0ZTxTa3lMb29rdXBIYXJuZXNzPiB7XG4gICAgcmV0dXJuIFNreUxvb2t1cEhhcm5lc3MuZ2V0RGF0YVNreUlkUHJlZGljYXRlKGZpbHRlcnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEJsdXJzIHRoZSBsb29rdXAgaW5wdXQuXG4gICAqIEBkZXByZWNhdGVkIENhbGwgYGF3YWl0IChhd2FpdCBsb29rdXAuZ2V0Q29udHJvbCgpKS5ibHVyKClgIGluc3RlYWQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgYXN5bmMgYmx1cigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCAoYXdhaXQgc3VwZXIuZ2V0Q29udHJvbCgpKS5ibHVyKCk7XG4gIH1cblxuICAvKipcbiAgICogQ2xlYXJzIHRoZSBsb29rdXAgaW5wdXQgdmFsdWUuXG4gICAqIEBkZXByZWNhdGVkIENhbGwgYGF3YWl0IChhd2FpdCBsb29rdXAuZ2V0Q29udHJvbCgpKS5jbGVhcigpYCBpbnN0ZWFkLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGFzeW5jIGNsZWFyKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IChhd2FpdCBzdXBlci5nZXRDb250cm9sKCkpLmNsZWFyKCk7XG4gIH1cblxuICAvKipcbiAgICogQ2xpY2tzIHRoZSBcIkFkZFwiIGJ1dHRvbiBvbiB0aGUgc2VhcmNoIHJlc3VsdHMgcGFuZWwuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgYXN5bmMgY2xpY2tBZGRCdXR0b24oKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgKGF3YWl0IHN1cGVyLmdldENvbnRyb2woKSkuZm9jdXMoKTtcbiAgICBhd2FpdCBzdXBlci5jbGlja0FkZEJ1dHRvbigpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsaWNrcyB0aGUgXCJTaG93IG1vcmVcIiBidXR0b24gb24gdGhlIHNlYXJjaCByZXN1bHRzIHBhbmVsLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGFzeW5jIGNsaWNrU2hvd01vcmVCdXR0b24oKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgKGF3YWl0IHN1cGVyLmdldENvbnRyb2woKSkuZm9jdXMoKTtcbiAgICBhd2FpdCBzdXBlci5jbGlja1Nob3dNb3JlQnV0dG9uKCk7XG4gIH1cblxuICAvKipcbiAgICogRGlzbWlzc2VzIHRoZSBzZWxlY3Rpb25zIG1hZGUgd2l0aCBhIG11bHRpc2VsZWN0IGxvb2t1cC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBkaXNtaXNzU2VsZWN0aW9ucygpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0U2VsZWN0aW9uc0xpc3RIYXJuZXNzKCkpLmRpc21pc3NTZWxlY3Rpb25zKCk7XG4gIH1cblxuICAvKipcbiAgICogRW50ZXJzIHRleHQgaW50byB0aGUgbG9va3VwIGlucHV0LlxuICAgKiBAZGVwcmVjYXRlZCBDYWxsIGBhd2FpdCAoYXdhaXQgbG9va3VwLmdldENvbnRyb2woKSkuc2V0VmFsdWUoKWAgaW5zdGVhZC5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBhc3luYyBlbnRlclRleHQodmFsdWU6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IChhd2FpdCBzdXBlci5nZXRDb250cm9sKCkpLnNldFZhbHVlKHZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGb2N1c2VzIHRoZSBsb29rdXAgaW5wdXQuXG4gICAqIEBkZXByZWNhdGVkIENhbGwgYGF3YWl0IChhd2FpdCBsb29rdXAuZ2V0Q29udHJvbCgpKS5mb2N1cygpYCBpbnN0ZWFkLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGFzeW5jIGZvY3VzKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IChhd2FpdCBzdXBlci5nZXRDb250cm9sKCkpLmZvY3VzKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgbG9va3VwIGBhcmlhLWxhYmVsbGVkYnlgIHZhbHVlLlxuICAgKiBAZGVwcmVjYXRlZCBEb24ndCB1c2UgdGhpcyBwcm9wZXJ0eS4gSXQgcmV0dXJucyBhIHZhbHVlIGZyb20gYSBkZXByZWNhdGVkIGlucHV0IHRoYXQgbG9va3VwIG5vIGxvbmdlciB1c2VzLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGFzeW5jIGdldEFyaWFMYWJlbGxlZGJ5KCk6IFByb21pc2U8c3RyaW5nIHwgbnVsbD4ge1xuICAgIHJldHVybiBhd2FpdCBzdXBlci5nZXRBcmlhTGFiZWxsZWRieSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgbG9va3VwIHNlYXJjaCByZXN1bHQgaGFybmVzc2VzLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGFzeW5jIGdldFNlYXJjaFJlc3VsdHMoXG4gICAgZmlsdGVycz86IFNreUxvb2t1cFNlYXJjaFJlc3VsdEhhcm5lc3NGaWx0ZXJzLFxuICApOiBQcm9taXNlPFNreUxvb2t1cFNlYXJjaFJlc3VsdEhhcm5lc3NbXT4ge1xuICAgIGNvbnN0IG92ZXJsYXkgPSBhd2FpdCB0aGlzLiNnZXRPdmVybGF5KCk7XG5cbiAgICBpZiAoIW92ZXJsYXkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ1VuYWJsZSB0byByZXRyaWV2ZSBzZWFyY2ggcmVzdWx0cy4gVGhlIGxvb2t1cCBpcyBjbG9zZWQuJyxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgY29uc3QgaGFybmVzc2VzID0gYXdhaXQgb3ZlcmxheS5xdWVyeUhhcm5lc3NlcyhcbiAgICAgIFNreUxvb2t1cFNlYXJjaFJlc3VsdEhhcm5lc3Mud2l0aChmaWx0ZXJzIHx8IHt9KSxcbiAgICApO1xuXG4gICAgaWYgKGZpbHRlcnMgJiYgaGFybmVzc2VzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgLy8gU3RyaW5naWZ5IHRoZSByZWd1bGFyIGV4cHJlc3Npb24gc28gdGhhdCBpdCdzIHJlYWRhYmxlIGluIHRoZSBjb25zb2xlIGxvZy5cbiAgICAgIGlmIChmaWx0ZXJzLnRleHQgaW5zdGFuY2VvZiBSZWdFeHApIHtcbiAgICAgICAgZmlsdGVycy50ZXh0ID0gZmlsdGVycy50ZXh0LnRvU3RyaW5nKCk7XG4gICAgICB9XG5cbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYENvdWxkIG5vdCBmaW5kIHNlYXJjaCByZXN1bHRzIG1hdGNoaW5nIGZpbHRlcihzKTogJHtKU09OLnN0cmluZ2lmeShcbiAgICAgICAgICBmaWx0ZXJzLFxuICAgICAgICApfWAsXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBoYXJuZXNzZXM7XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgdGV4dCBjb250ZW50IGZvciBlYWNoIGxvb2t1cCBzZWFyY2ggcmVzdWx0LlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGFzeW5jIGdldFNlYXJjaFJlc3VsdHNUZXh0KFxuICAgIGZpbHRlcnM/OiBTa3lMb29rdXBTZWFyY2hSZXN1bHRIYXJuZXNzRmlsdGVycyxcbiAgKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xuICAgIGNvbnN0IGhhcm5lc3NlcyA9IGF3YWl0IHRoaXMuZ2V0U2VhcmNoUmVzdWx0cyhmaWx0ZXJzKTtcblxuICAgIGNvbnN0IHRleHQ6IHN0cmluZ1tdID0gW107XG4gICAgZm9yIChjb25zdCBoYXJuZXNzIG9mIGhhcm5lc3Nlcykge1xuICAgICAgdGV4dC5wdXNoKGF3YWl0IGhhcm5lc3MuZ2V0VGV4dCgpKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGV4dDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBcIlNob3cgbW9yZVwiIHBpY2tlciBoYXJuZXNzLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldFNob3dNb3JlUGlja2VyKCk6IFByb21pc2U8U2t5TG9va3VwU2hvd01vcmVQaWNrZXJIYXJuZXNzPiB7XG4gICAgY29uc3QgcGlja2VySWQgPSBhd2FpdCAoXG4gICAgICBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0QXV0b2NvbXBsZXRlSGFybmVzcygpKS5ob3N0KClcbiAgICApLmdldEF0dHJpYnV0ZSgnZGF0YS1za3ktbG9va3VwLXNob3ctbW9yZS1waWNrZXItaWQnKTtcblxuICAgIGNvbnN0IGRlZmF1bHRQaWNrZXIgPSBhd2FpdCB0aGlzLiNkb2N1bWVudFJvb3RMb2NhdG9yLmxvY2F0b3JGb3JPcHRpb25hbChcbiAgICAgIFNreUxvb2t1cFNob3dNb3JlUGlja2VySGFybmVzcy53aXRoKHsgc2VsZWN0b3I6IGAjJHtwaWNrZXJJZH1gIH0pLFxuICAgICkoKTtcblxuICAgIGlmICghZGVmYXVsdFBpY2tlcikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnQ2Fubm90IGdldCB0aGUgXCJTaG93IG1vcmVcIiBwaWNrZXIgYmVjYXVzZSBpdCBpcyBub3Qgb3Blbi4nLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZGVmYXVsdFBpY2tlcjtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIGEgbGlzdCBvZiBzZWxlY3Rpb25zIG1hZGUgd2l0aCBhIG11bHRpc2VsZWN0IGxvb2t1cC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRTZWxlY3Rpb25zKCk6IFByb21pc2U8U2t5TG9va3VwU2VsZWN0aW9uSGFybmVzc1tdPiB7XG4gICAgcmV0dXJuIGF3YWl0IChhd2FpdCB0aGlzLiNnZXRTZWxlY3Rpb25zTGlzdEhhcm5lc3MoKSkuZ2V0U2VsZWN0aW9ucygpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHRleHQgY29udGVudCBvZiBhbGwgc2VsZWN0aW9ucyBtYWRlIHdpdGggYSBtdWx0aXNlbGVjdCBsb29rdXAuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0U2VsZWN0aW9uc1RleHQoKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xuICAgIHJldHVybiBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0U2VsZWN0aW9uc0xpc3RIYXJuZXNzKCkpLmdldFNlbGVjdGlvbnNUZXh0KCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgdmFsdWUgb2YgdGhlIGxvb2t1cCBpbnB1dC5cbiAgICogQGRlcHJlY2F0ZWQgQ2FsbCBgYXdhaXQgKGF3YWl0IGxvb2t1cC5nZXRDb250cm9sKCkpLmdldFZhbHVlKClgIGluc3RlYWQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgYXN5bmMgZ2V0VmFsdWUoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gYXdhaXQgKGF3YWl0IHN1cGVyLmdldENvbnRyb2woKSkuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBsb29rdXAgaW5wdXQgaXMgZGlzYWJsZWQuXG4gICAqIEBkZXByZWNhdGVkIENhbGwgYGF3YWl0IChhd2FpdCBsb29rdXAuZ2V0Q29udHJvbCgpKS5pc0Rpc2FibGVkKClgIGluc3RlYWQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgYXN5bmMgaXNEaXNhYmxlZCgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gYXdhaXQgKGF3YWl0IHN1cGVyLmdldENvbnRyb2woKSkuaXNEaXNhYmxlZCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIGxvb2t1cCBpbnB1dCBpcyBmb2N1c2VkLlxuICAgKiBAZGVwcmVjYXRlZCBDYWxsIGBhd2FpdCAoYXdhaXQgbG9va3VwLmdldENvbnRyb2woKSkuaXNGb2N1c2VkKClgIGluc3RlYWQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgYXN5bmMgaXNGb2N1c2VkKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiBhd2FpdCAoYXdhaXQgc3VwZXIuZ2V0Q29udHJvbCgpKS5pc0ZvY3VzZWQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBsb29rdXAgYWxsb3dzIGZvciBtdWx0aXBsZSBzZWxlY3Rpb25zLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGlzTXVsdGlzZWxlY3QoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuICEoYXdhaXQgKGF3YWl0IHRoaXMuI2dldFdyYXBwZXIoKSkuaGFzQ2xhc3MoJ3NreS1sb29rdXAtc2luZ2xlJykpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIGxvb2t1cCBpcyBvcGVuLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGFzeW5jIGlzT3BlbigpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gYXdhaXQgc3VwZXIuaXNPcGVuKCk7XG4gIH1cblxuICAvKipcbiAgICogU2VsZWN0cyBhIHNlYXJjaCByZXN1bHQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgYXN5bmMgc2VsZWN0U2VhcmNoUmVzdWx0KFxuICAgIGZpbHRlcnM6IFNreUxvb2t1cFNlYXJjaFJlc3VsdEhhcm5lc3NGaWx0ZXJzLFxuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCBzdXBlci5zZWxlY3RTZWFyY2hSZXN1bHQoZmlsdGVycyk7XG4gIH1cblxuICBhc3luYyAjZ2V0T3ZlcmxheSgpOiBQcm9taXNlPFNreU92ZXJsYXlIYXJuZXNzIHwgbnVsbD4ge1xuICAgIGNvbnN0IG92ZXJsYXlJZCA9IGF3YWl0IChhd2FpdCB0aGlzLiNnZXRJbnB1dCgpKS5nZXRBcmlhQ29udHJvbHMoKTtcblxuICAgIHJldHVybiBvdmVybGF5SWRcbiAgICAgID8gYXdhaXQgdGhpcy4jZG9jdW1lbnRSb290TG9jYXRvci5sb2NhdG9yRm9yT3B0aW9uYWwoXG4gICAgICAgICAgU2t5T3ZlcmxheUhhcm5lc3Mud2l0aCh7IHNlbGVjdG9yOiBgIyR7b3ZlcmxheUlkfWAgfSksXG4gICAgICAgICkoKVxuICAgICAgOiBudWxsO1xuICB9XG59XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9va3VwLXNlYXJjaC1yZXN1bHQtaGFybmVzcy1maWx0ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xvb2t1cC90ZXN0aW5nL3NyYy9tb2R1bGVzL2xvb2t1cC9sb29rdXAtc2VhcmNoLXJlc3VsdC1oYXJuZXNzLWZpbHRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQSBzZXQgb2YgY3JpdGVyaWEgdGhhdCBjYW4gYmUgdXNlZCB0byBmaWx0ZXIgYSBsaXN0IG9mIGBTa3lMb29rdXBTZWFyY2hSZXN1bHRIYXJuZXNzYCBpbnN0YW5jZXMuXG4gKiBAaW50ZXJuYWxcbiAqL1xuaW1wb3J0IHsgU2t5QXV0b2NvbXBsZXRlU2VhcmNoUmVzdWx0SGFybmVzc0ZpbHRlcnMgfSBmcm9tICcuLi9hdXRvY29tcGxldGUvYXV0b2NvbXBsZXRlLXNlYXJjaC1yZXN1bHQtaGFybmVzcy1maWx0ZXJzJztcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1pbnRlcmZhY2UsIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1vYmplY3QtdHlwZVxuZXhwb3J0IGludGVyZmFjZSBTa3lMb29rdXBTZWFyY2hSZXN1bHRIYXJuZXNzRmlsdGVyc1xuICBleHRlbmRzIFNreUF1dG9jb21wbGV0ZVNlYXJjaFJlc3VsdEhhcm5lc3NGaWx0ZXJzIHt9XG4iXX0=
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { HarnessPredicate } from '@angular/cdk/testing';
|
|
2
|
-
import { SkyAutocompleteSearchResultHarness } from '../autocomplete/autocomplete-search-result-harness';
|
|
3
|
-
/**
|
|
4
|
-
* Harness for interacting with an autocomplete search result in tests.
|
|
5
|
-
*/
|
|
6
|
-
export class SkyLookupSearchResultHarness extends SkyAutocompleteSearchResultHarness {
|
|
7
|
-
/**
|
|
8
|
-
* Gets a `HarnessPredicate` that can be used to search for a
|
|
9
|
-
* `SkyLookupSearchResultHarness` that meets certain criteria.
|
|
10
|
-
*/
|
|
11
|
-
static with(filters) {
|
|
12
|
-
return new HarnessPredicate(SkyLookupSearchResultHarness, filters).addOption('textContent', filters.text, async (harness, text) => {
|
|
13
|
-
const searchResultText = await harness.getText();
|
|
14
|
-
return await HarnessPredicate.stringMatches(searchResultText, text);
|
|
15
|
-
});
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* Returns the value of the search result's descriptor property.
|
|
19
|
-
*/
|
|
20
|
-
async getDescriptorValue() {
|
|
21
|
-
return await super.getDescriptorValue();
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9va3VwLXNlYXJjaC1yZXN1bHQtaGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sb29rdXAvdGVzdGluZy9zcmMvbW9kdWxlcy9sb29rdXAvbG9va3VwLXNlYXJjaC1yZXN1bHQtaGFybmVzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUV4RCxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUl4Rzs7R0FFRztBQUNILE1BQU0sT0FBTyw0QkFBNkIsU0FBUSxrQ0FBa0M7SUFDbEY7OztPQUdHO0lBQ0ksTUFBTSxDQUFVLElBQUksQ0FDekIsT0FBNEM7UUFFNUMsT0FBTyxJQUFJLGdCQUFnQixDQUN6Qiw0QkFBNEIsRUFDNUIsT0FBTyxDQUNSLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRSxPQUFPLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLEVBQUU7WUFDL0QsTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNqRCxPQUFPLE1BQU0sZ0JBQWdCLENBQUMsYUFBYSxDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3RFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOztPQUVHO0lBQ2EsS0FBSyxDQUFDLGtCQUFrQjtRQUN0QyxPQUFPLE1BQU0sS0FBSyxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDMUMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSGFybmVzc1ByZWRpY2F0ZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXN0aW5nJztcblxuaW1wb3J0IHsgU2t5QXV0b2NvbXBsZXRlU2VhcmNoUmVzdWx0SGFybmVzcyB9IGZyb20gJy4uL2F1dG9jb21wbGV0ZS9hdXRvY29tcGxldGUtc2VhcmNoLXJlc3VsdC1oYXJuZXNzJztcblxuaW1wb3J0IHsgU2t5TG9va3VwU2VhcmNoUmVzdWx0SGFybmVzc0ZpbHRlcnMgfSBmcm9tICcuL2xvb2t1cC1zZWFyY2gtcmVzdWx0LWhhcm5lc3MtZmlsdGVycyc7XG5cbi8qKlxuICogSGFybmVzcyBmb3IgaW50ZXJhY3Rpbmcgd2l0aCBhbiBhdXRvY29tcGxldGUgc2VhcmNoIHJlc3VsdCBpbiB0ZXN0cy5cbiAqL1xuZXhwb3J0IGNsYXNzIFNreUxvb2t1cFNlYXJjaFJlc3VsdEhhcm5lc3MgZXh0ZW5kcyBTa3lBdXRvY29tcGxldGVTZWFyY2hSZXN1bHRIYXJuZXNzIHtcbiAgLyoqXG4gICAqIEdldHMgYSBgSGFybmVzc1ByZWRpY2F0ZWAgdGhhdCBjYW4gYmUgdXNlZCB0byBzZWFyY2ggZm9yIGFcbiAgICogYFNreUxvb2t1cFNlYXJjaFJlc3VsdEhhcm5lc3NgIHRoYXQgbWVldHMgY2VydGFpbiBjcml0ZXJpYS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgb3ZlcnJpZGUgd2l0aChcbiAgICBmaWx0ZXJzOiBTa3lMb29rdXBTZWFyY2hSZXN1bHRIYXJuZXNzRmlsdGVycyxcbiAgKTogSGFybmVzc1ByZWRpY2F0ZTxTa3lMb29rdXBTZWFyY2hSZXN1bHRIYXJuZXNzPiB7XG4gICAgcmV0dXJuIG5ldyBIYXJuZXNzUHJlZGljYXRlKFxuICAgICAgU2t5TG9va3VwU2VhcmNoUmVzdWx0SGFybmVzcyxcbiAgICAgIGZpbHRlcnMsXG4gICAgKS5hZGRPcHRpb24oJ3RleHRDb250ZW50JywgZmlsdGVycy50ZXh0LCBhc3luYyAoaGFybmVzcywgdGV4dCkgPT4ge1xuICAgICAgY29uc3Qgc2VhcmNoUmVzdWx0VGV4dCA9IGF3YWl0IGhhcm5lc3MuZ2V0VGV4dCgpO1xuICAgICAgcmV0dXJuIGF3YWl0IEhhcm5lc3NQcmVkaWNhdGUuc3RyaW5nTWF0Y2hlcyhzZWFyY2hSZXN1bHRUZXh0LCB0ZXh0KTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSB2YWx1ZSBvZiB0aGUgc2VhcmNoIHJlc3VsdCdzIGRlc2NyaXB0b3IgcHJvcGVydHkuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgYXN5bmMgZ2V0RGVzY3JpcHRvclZhbHVlKCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuIGF3YWl0IHN1cGVyLmdldERlc2NyaXB0b3JWYWx1ZSgpO1xuICB9XG59XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9va3VwLXNlbGVjdGlvbi1oYXJuZXNzLWZpbHRlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbG9va3VwL3Rlc3Rpbmcvc3JjL21vZHVsZXMvbG9va3VwL2xvb2t1cC1zZWxlY3Rpb24taGFybmVzcy1maWx0ZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTa3lUb2tlbkhhcm5lc3NGaWx0ZXJzIH0gZnJvbSAnQHNreXV4L2luZGljYXRvcnMvdGVzdGluZyc7XG5cbi8qKlxuICogQSBzZXQgb2YgY3JpdGVyaWEgdGhhdCBjYW4gYmUgdXNlZCB0byBmaWx0ZXIgYSBsaXN0IG9mIGBTa3lMb29rdXBTZWxlY3Rpb25IYXJuZXNzYCBpbnN0YW5jZXMuXG4gKiBAaW50ZXJuYWxcbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1pbnRlcmZhY2UsIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1vYmplY3QtdHlwZVxuZXhwb3J0IGludGVyZmFjZSBTa3lMb29rdXBTZWxlY3Rpb25IYXJuZXNzRmlsdGVyc1xuICBleHRlbmRzIFNreVRva2VuSGFybmVzc0ZpbHRlcnMge31cbiJdfQ==
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { SkyTokenHarness } from '@skyux/indicators/testing';
|
|
2
|
-
/**
|
|
3
|
-
* Harness for interacting with a multiselect lookup selection in tests.
|
|
4
|
-
* @internal
|
|
5
|
-
*/
|
|
6
|
-
export class SkyLookupSelectionHarness extends SkyTokenHarness {
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9va3VwLXNlbGVjdGlvbi1oYXJuZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xvb2t1cC90ZXN0aW5nL3NyYy9tb2R1bGVzL2xvb2t1cC9sb29rdXAtc2VsZWN0aW9uLWhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRTVEOzs7R0FHRztBQUNILE1BQU0sT0FBTyx5QkFBMEIsU0FBUSxlQUFlO0NBQUciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTa3lUb2tlbkhhcm5lc3MgfSBmcm9tICdAc2t5dXgvaW5kaWNhdG9ycy90ZXN0aW5nJztcblxuLyoqXG4gKiBIYXJuZXNzIGZvciBpbnRlcmFjdGluZyB3aXRoIGEgbXVsdGlzZWxlY3QgbG9va3VwIHNlbGVjdGlvbiBpbiB0ZXN0cy5cbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgY2xhc3MgU2t5TG9va3VwU2VsZWN0aW9uSGFybmVzcyBleHRlbmRzIFNreVRva2VuSGFybmVzcyB7fVxuIl19
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { SkyTokensHarness } from '@skyux/indicators/testing';
|
|
2
|
-
/**
|
|
3
|
-
* Harness for interacting with multiselect lookup selections in tests.
|
|
4
|
-
* @internal
|
|
5
|
-
*/
|
|
6
|
-
export class SkyLookupSelectionsListHarness extends SkyTokensHarness {
|
|
7
|
-
/**
|
|
8
|
-
* Gets a list of selections.
|
|
9
|
-
*/
|
|
10
|
-
async getSelections() {
|
|
11
|
-
return await super.getTokens();
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* Dismisses the selections in the list.
|
|
15
|
-
*/
|
|
16
|
-
async dismissSelections() {
|
|
17
|
-
await super.dismissTokens();
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Gets the text content of all selections in the list.
|
|
21
|
-
*/
|
|
22
|
-
async getSelectionsText() {
|
|
23
|
-
return await super.getTokensText();
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9va3VwLXNlbGVjdGlvbnMtbGlzdC1oYXJuZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xvb2t1cC90ZXN0aW5nL3NyYy9tb2R1bGVzL2xvb2t1cC9sb29rdXAtc2VsZWN0aW9ucy1saXN0LWhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFJN0Q7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLDhCQUErQixTQUFRLGdCQUFnQjtJQUNsRTs7T0FFRztJQUNJLEtBQUssQ0FBQyxhQUFhO1FBQ3hCLE9BQU8sTUFBTSxLQUFLLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLGlCQUFpQjtRQUM1QixNQUFNLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsaUJBQWlCO1FBQzVCLE9BQU8sTUFBTSxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDckMsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2t5VG9rZW5zSGFybmVzcyB9IGZyb20gJ0Bza3l1eC9pbmRpY2F0b3JzL3Rlc3RpbmcnO1xuXG5pbXBvcnQgeyBTa3lMb29rdXBTZWxlY3Rpb25IYXJuZXNzIH0gZnJvbSAnLi9sb29rdXAtc2VsZWN0aW9uLWhhcm5lc3MnO1xuXG4vKipcbiAqIEhhcm5lc3MgZm9yIGludGVyYWN0aW5nIHdpdGggbXVsdGlzZWxlY3QgbG9va3VwIHNlbGVjdGlvbnMgaW4gdGVzdHMuXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGNsYXNzIFNreUxvb2t1cFNlbGVjdGlvbnNMaXN0SGFybmVzcyBleHRlbmRzIFNreVRva2Vuc0hhcm5lc3Mge1xuICAvKipcbiAgICogR2V0cyBhIGxpc3Qgb2Ygc2VsZWN0aW9ucy5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRTZWxlY3Rpb25zKCk6IFByb21pc2U8U2t5TG9va3VwU2VsZWN0aW9uSGFybmVzc1tdPiB7XG4gICAgcmV0dXJuIGF3YWl0IHN1cGVyLmdldFRva2VucygpO1xuICB9XG5cbiAgLyoqXG4gICAqIERpc21pc3NlcyB0aGUgc2VsZWN0aW9ucyBpbiB0aGUgbGlzdC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBkaXNtaXNzU2VsZWN0aW9ucygpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCBzdXBlci5kaXNtaXNzVG9rZW5zKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgdGV4dCBjb250ZW50IG9mIGFsbCBzZWxlY3Rpb25zIGluIHRoZSBsaXN0LlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldFNlbGVjdGlvbnNUZXh0KCk6IFByb21pc2U8c3RyaW5nW10+IHtcbiAgICByZXR1cm4gYXdhaXQgc3VwZXIuZ2V0VG9rZW5zVGV4dCgpO1xuICB9XG59XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9va3VwLXNob3ctbW9yZS1waWNrZXItaGFybmVzcy1maWx0ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xvb2t1cC90ZXN0aW5nL3NyYy9tb2R1bGVzL2xvb2t1cC9sb29rdXAtc2hvdy1tb3JlLXBpY2tlci1oYXJuZXNzLWZpbHRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VIYXJuZXNzRmlsdGVycyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXN0aW5nJztcblxuLyoqXG4gKiBBIHNldCBvZiBjcml0ZXJpYSB0aGF0IGNhbiBiZSB1c2VkIHRvIGZpbHRlciBhIGxpc3Qgb2YgYFNreUxvb2t1cFNob3dNb3JlUGlja2VySGFybmVzc2AgaW5zdGFuY2VzLlxuICogQGludGVybmFsXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktaW50ZXJmYWNlLCBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktb2JqZWN0LXR5cGVcbmV4cG9ydCBpbnRlcmZhY2UgU2t5TG9va3VwU2hvd01vcmVQaWNrZXJIYXJuZXNzRmlsdGVyc1xuICAvLyBPbWl0dGluZyAnYW5jZXN0b3InLCBzaW5jZSBhbGwgd2UgY2FyZSBhYm91dCBpcyB0aGUgJ3NlbGVjdG9yJyBmaWx0ZXIsXG4gIC8vIHdoaWNoIGlzIHVzZWQgdG8gZmluZCBhIG1vZGFsIGluc3RhbmNlIGJ5IGl0cyBlbGVtZW50IElELlxuICBleHRlbmRzIE9taXQ8QmFzZUhhcm5lc3NGaWx0ZXJzLCAnYW5jZXN0b3InPiB7fVxuIl19
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { HarnessPredicate } from '@angular/cdk/testing';
|
|
2
|
-
import { SkySelectionModalHarness } from '../selection-modal/selection-modal-harness';
|
|
3
|
-
/**
|
|
4
|
-
* Harness for interacting with a lookup's "Show more" picker in tests.
|
|
5
|
-
* @internal
|
|
6
|
-
*/
|
|
7
|
-
export class SkyLookupShowMorePickerHarness extends SkySelectionModalHarness {
|
|
8
|
-
/**
|
|
9
|
-
* Gets a `HarnessPredicate` that can be used to search for a
|
|
10
|
-
* `SkyLookupShowMorePickerHarness` that meets certain criteria.
|
|
11
|
-
*/
|
|
12
|
-
static with(filters) {
|
|
13
|
-
return new HarnessPredicate(SkyLookupShowMorePickerHarness, filters);
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Selects multiple search results based on a set of criteria.
|
|
17
|
-
*/
|
|
18
|
-
async selectSearchResult(filters) {
|
|
19
|
-
await super.selectSearchResult(filters);
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* Gets a list of search results.
|
|
23
|
-
*/
|
|
24
|
-
async getSearchResults(filters) {
|
|
25
|
-
return await super.getSearchResults(filters);
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9va3VwLXNob3ctbW9yZS1waWNrZXItaGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sb29rdXAvdGVzdGluZy9zcmMvbW9kdWxlcy9sb29rdXAvbG9va3VwLXNob3ctbW9yZS1waWNrZXItaGFybmVzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUV4RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQU10Rjs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sOEJBQStCLFNBQVEsd0JBQXdCO0lBQzFFOzs7T0FHRztJQUNJLE1BQU0sQ0FBQyxJQUFJLENBQ2hCLE9BQThDO1FBRTlDLE9BQU8sSUFBSSxnQkFBZ0IsQ0FBQyw4QkFBOEIsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN2RSxDQUFDO0lBRUQ7O09BRUc7SUFDYSxLQUFLLENBQUMsa0JBQWtCLENBQ3RDLE9BQTJEO1FBRTNELE1BQU0sS0FBSyxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRDs7T0FFRztJQUNhLEtBQUssQ0FBQyxnQkFBZ0IsQ0FDcEMsT0FBMkQ7UUFFM0QsT0FBTyxNQUFNLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMvQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIYXJuZXNzUHJlZGljYXRlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Rlc3RpbmcnO1xuXG5pbXBvcnQgeyBTa3lTZWxlY3Rpb25Nb2RhbEhhcm5lc3MgfSBmcm9tICcuLi9zZWxlY3Rpb24tbW9kYWwvc2VsZWN0aW9uLW1vZGFsLWhhcm5lc3MnO1xuXG5pbXBvcnQgeyBTa3lMb29rdXBTaG93TW9yZVBpY2tlckhhcm5lc3NGaWx0ZXJzIH0gZnJvbSAnLi9sb29rdXAtc2hvdy1tb3JlLXBpY2tlci1oYXJuZXNzLWZpbHRlcnMnO1xuaW1wb3J0IHsgU2t5TG9va3VwU2hvd01vcmVQaWNrZXJTZWFyY2hSZXN1bHRIYXJuZXNzIH0gZnJvbSAnLi9sb29rdXAtc2hvdy1tb3JlLXBpY2tlci1zZWFyY2gtcmVzdWx0LWhhcm5lc3MnO1xuaW1wb3J0IHsgU2t5TG9va3VwU2hvd01vcmVQaWNrZXJTZWFyY2hSZXN1bHRIYXJuZXNzRmlsdGVycyB9IGZyb20gJy4vbG9va3VwLXNob3ctbW9yZS1waWNrZXItc2VhcmNoLXJlc3VsdC1oYXJuZXNzLWZpbHRlcnMnO1xuXG4vKipcbiAqIEhhcm5lc3MgZm9yIGludGVyYWN0aW5nIHdpdGggYSBsb29rdXAncyBcIlNob3cgbW9yZVwiIHBpY2tlciBpbiB0ZXN0cy5cbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgY2xhc3MgU2t5TG9va3VwU2hvd01vcmVQaWNrZXJIYXJuZXNzIGV4dGVuZHMgU2t5U2VsZWN0aW9uTW9kYWxIYXJuZXNzIHtcbiAgLyoqXG4gICAqIEdldHMgYSBgSGFybmVzc1ByZWRpY2F0ZWAgdGhhdCBjYW4gYmUgdXNlZCB0byBzZWFyY2ggZm9yIGFcbiAgICogYFNreUxvb2t1cFNob3dNb3JlUGlja2VySGFybmVzc2AgdGhhdCBtZWV0cyBjZXJ0YWluIGNyaXRlcmlhLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyB3aXRoKFxuICAgIGZpbHRlcnM6IFNreUxvb2t1cFNob3dNb3JlUGlja2VySGFybmVzc0ZpbHRlcnMsXG4gICk6IEhhcm5lc3NQcmVkaWNhdGU8U2t5TG9va3VwU2hvd01vcmVQaWNrZXJIYXJuZXNzPiB7XG4gICAgcmV0dXJuIG5ldyBIYXJuZXNzUHJlZGljYXRlKFNreUxvb2t1cFNob3dNb3JlUGlja2VySGFybmVzcywgZmlsdGVycyk7XG4gIH1cblxuICAvKipcbiAgICogU2VsZWN0cyBtdWx0aXBsZSBzZWFyY2ggcmVzdWx0cyBiYXNlZCBvbiBhIHNldCBvZiBjcml0ZXJpYS5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBhc3luYyBzZWxlY3RTZWFyY2hSZXN1bHQoXG4gICAgZmlsdGVycz86IFNreUxvb2t1cFNob3dNb3JlUGlja2VyU2VhcmNoUmVzdWx0SGFybmVzc0ZpbHRlcnMsXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHN1cGVyLnNlbGVjdFNlYXJjaFJlc3VsdChmaWx0ZXJzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIGEgbGlzdCBvZiBzZWFyY2ggcmVzdWx0cy5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBhc3luYyBnZXRTZWFyY2hSZXN1bHRzKFxuICAgIGZpbHRlcnM/OiBTa3lMb29rdXBTaG93TW9yZVBpY2tlclNlYXJjaFJlc3VsdEhhcm5lc3NGaWx0ZXJzLFxuICApOiBQcm9taXNlPFNreUxvb2t1cFNob3dNb3JlUGlja2VyU2VhcmNoUmVzdWx0SGFybmVzc1tdPiB7XG4gICAgcmV0dXJuIGF3YWl0IHN1cGVyLmdldFNlYXJjaFJlc3VsdHMoZmlsdGVycyk7XG4gIH1cbn1cbiJdfQ==
|
package/esm2022/testing/modules/lookup/lookup-show-more-picker-search-result-harness-filters.mjs
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9va3VwLXNob3ctbW9yZS1waWNrZXItc2VhcmNoLXJlc3VsdC1oYXJuZXNzLWZpbHRlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbG9va3VwL3Rlc3Rpbmcvc3JjL21vZHVsZXMvbG9va3VwL2xvb2t1cC1zaG93LW1vcmUtcGlja2VyLXNlYXJjaC1yZXN1bHQtaGFybmVzcy1maWx0ZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTa3lTZWxlY3Rpb25Nb2RhbFNlYXJjaFJlc3VsdEhhcm5lc3NGaWx0ZXJzIH0gZnJvbSAnLi4vc2VsZWN0aW9uLW1vZGFsL3NlbGVjdGlvbi1tb2RhbC1zZWFyY2gtcmVzdWx0LWhhcm5lc3MtZmlsdGVycyc7XG5cbi8qKlxuICogQSBzZXQgb2YgY3JpdGVyaWEgdGhhdCBjYW4gYmUgdXNlZCB0byBmaWx0ZXIgYSBsaXN0IG9mIGBTa3lMb29rdXBTaG93TW9yZVBpY2tlclNlYXJjaFJlc3VsdEhhcm5lc3NgIGluc3RhbmNlcy5cbiAqIEBpbnRlcm5hbFxuICovXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWludGVyZmFjZSwgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LW9iamVjdC10eXBlXG5leHBvcnQgaW50ZXJmYWNlIFNreUxvb2t1cFNob3dNb3JlUGlja2VyU2VhcmNoUmVzdWx0SGFybmVzc0ZpbHRlcnNcbiAgLy8gT21pdHRpbmcgJ3RpdGxlVGV4dCcgYW5kICdhbmNlc3Rvcicgc2luY2UgdGhleSBhcmUgbm90IHJlbGV2YW50IGZpbHRlcnMgZm9yIHRoZSBwaWNrZXIncyBzZWFyY2ggcmVzdWx0cy5cbiAgZXh0ZW5kcyBTa3lTZWxlY3Rpb25Nb2RhbFNlYXJjaFJlc3VsdEhhcm5lc3NGaWx0ZXJzIHt9XG4iXX0=
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { SkySelectionModalSearchResultHarness } from '../selection-modal/selection-modal-search-result-harness';
|
|
2
|
-
/**
|
|
3
|
-
* Harness for interacting with a lookup's "Show more" picker search results in tests.
|
|
4
|
-
* @internal
|
|
5
|
-
*/
|
|
6
|
-
export class SkyLookupShowMorePickerSearchResultHarness extends SkySelectionModalSearchResultHarness {
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9va3VwLXNob3ctbW9yZS1waWNrZXItc2VhcmNoLXJlc3VsdC1oYXJuZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xvb2t1cC90ZXN0aW5nL3NyYy9tb2R1bGVzL2xvb2t1cC9sb29rdXAtc2hvdy1tb3JlLXBpY2tlci1zZWFyY2gtcmVzdWx0LWhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLE1BQU0sMERBQTBELENBQUM7QUFFaEg7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLDBDQUEyQyxTQUFRLG9DQUFvQztDQUFHIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2t5U2VsZWN0aW9uTW9kYWxTZWFyY2hSZXN1bHRIYXJuZXNzIH0gZnJvbSAnLi4vc2VsZWN0aW9uLW1vZGFsL3NlbGVjdGlvbi1tb2RhbC1zZWFyY2gtcmVzdWx0LWhhcm5lc3MnO1xuXG4vKipcbiAqIEhhcm5lc3MgZm9yIGludGVyYWN0aW5nIHdpdGggYSBsb29rdXAncyBcIlNob3cgbW9yZVwiIHBpY2tlciBzZWFyY2ggcmVzdWx0cyBpbiB0ZXN0cy5cbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgY2xhc3MgU2t5TG9va3VwU2hvd01vcmVQaWNrZXJTZWFyY2hSZXN1bHRIYXJuZXNzIGV4dGVuZHMgU2t5U2VsZWN0aW9uTW9kYWxTZWFyY2hSZXN1bHRIYXJuZXNzIHt9XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWhhcm5lc3MtZmlsdGVycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9sb29rdXAvdGVzdGluZy9zcmMvbW9kdWxlcy9zZWFyY2gvc2VhcmNoLWhhcm5lc3MtZmlsdGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2t5SGFybmVzc0ZpbHRlcnMgfSBmcm9tICdAc2t5dXgvY29yZS90ZXN0aW5nJztcblxuLyoqXG4gKiBBIHNldCBvZiBjcml0ZXJpYSB0aGF0IGNhbiBiZSB1c2VkIHRvIGZpbHRlciBhIGxpc3Qgb2YgYFNreVNlYXJjaEhhcm5lc3NgIGluc3RhbmNlcy5cbiAqIEBpbnRlcm5hbFxuICovXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWludGVyZmFjZSwgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LW9iamVjdC10eXBlXG5leHBvcnQgaW50ZXJmYWNlIFNreVNlYXJjaEhhcm5lc3NGaWx0ZXJzIGV4dGVuZHMgU2t5SGFybmVzc0ZpbHRlcnMge31cbiJdfQ==
|
|
@@ -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
|
-
await (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
|
-
await 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
|
-
await 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
|
-
await (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 (await this.#getInput()).getAttribute('aria-label');
|
|
96
|
-
}
|
|
97
|
-
/**
|
|
98
|
-
* Gets the search's aria-labelledby.
|
|
99
|
-
*/
|
|
100
|
-
async getAriaLabelledby() {
|
|
101
|
-
return await (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 (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 (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 (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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWhhcm5lc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbG9va3VwL3Rlc3Rpbmcvc3JjL21vZHVsZXMvc2VhcmNoL3NlYXJjaC1oYXJuZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBSTFEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGdCQUFpQixTQUFRLG1CQUFtQjtJQUN2RDs7T0FFRzthQUNXLGlCQUFZLEdBQUcsWUFBWSxDQUFDO0lBRTFDLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLHdCQUF3QixDQUFDLENBQUM7SUFFdEQsZUFBZSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsNkJBQTZCLENBQUMsQ0FBQztJQUNqRSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsK0JBQStCLENBQUMsQ0FBQztJQUM3RSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLDZCQUE2QixDQUFDLENBQUM7SUFDbEUsY0FBYyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsNEJBQTRCLENBQUMsQ0FBQztJQUUvRDs7O09BR0c7SUFDSSxNQUFNLENBQUMsSUFBSSxDQUNoQixPQUFnQztRQUVoQyxPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsSUFBSTtRQUNmLE1BQU0sSUFBSSxDQUFDLGlCQUFpQixDQUFDLGtDQUFrQyxDQUFDLENBQUM7UUFFakUsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLEtBQUs7UUFDaEIsTUFBTSxJQUFJLENBQUMsaUJB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ImltcG9ydCB7IEhhcm5lc3NQcmVkaWNhdGUgfSBmcm9tICdAYW5ndWxhci9jZGsvdGVzdGluZyc7XG5pbXBvcnQgeyBTa3lDb21wb25lbnRIYXJuZXNzIH0gZnJvbSAnQHNreXV4L2NvcmUvdGVzdGluZyc7XG5cbmltcG9ydCB7IFNreVNlYXJjaEhhcm5lc3NGaWx0ZXJzIH0gZnJvbSAnLi9zZWFyY2gtaGFybmVzcy1maWx0ZXJzJztcblxuLyoqXG4gKiBIYXJuZXNzIGZvciBpbnRlcmFjdGluZyB3aXRoIGEgc2VhcmNoIGNvbXBvbmVudCBpbiB0ZXN0cy5cbiAqL1xuZXhwb3J0IGNsYXNzIFNreVNlYXJjaEhhcm5lc3MgZXh0ZW5kcyBTa3lDb21wb25lbnRIYXJuZXNzIHtcbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBob3N0U2VsZWN0b3IgPSAnc2t5LXNlYXJjaCc7XG5cbiAgI2dldElucHV0ID0gdGhpcy5sb2NhdG9yRm9yKCdpbnB1dC5za3ktc2VhcmNoLWlucHV0Jyk7XG5cbiAgI2dldENsZWFyQnV0dG9uID0gdGhpcy5sb2NhdG9yRm9yKCdidXR0b24uc2t5LXNlYXJjaC1idG4tY2xlYXInKTtcbiAgI2dldERpc21pc3NCdXR0b24gPSB0aGlzLmxvY2F0b3JGb3JPcHRpb25hbCgnYnV0dG9uLnNreS1zZWFyY2gtYnRuLWRpc21pc3MnKTtcbiAgI2dldFN1Ym1pdEJ1dHRvbiA9IHRoaXMubG9jYXRvckZvcignYnV0dG9uLnNreS1zZWFyY2gtYnRuLWFwcGx5Jyk7XG4gICNnZXRPcGVuQnV0dG9uID0gdGhpcy5sb2NhdG9yRm9yKCdidXR0b24uc2t5LXNlYXJjaC1idG4tb3BlbicpO1xuXG4gIC8qKlxuICAgKiBHZXRzIGEgYEhhcm5lc3NQcmVkaWNhdGVgIHRoYXQgY2FuIGJlIHVzZWQgdG8gc2VhcmNoIGZvciBhXG4gICAqIGBTa3lTZWFyY2hIYXJuZXNzYCB0aGF0IG1lZXRzIGNlcnRhaW4gY3JpdGVyaWEuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHdpdGgoXG4gICAgZmlsdGVyczogU2t5U2VhcmNoSGFybmVzc0ZpbHRlcnMsXG4gICk6IEhhcm5lc3NQcmVkaWNhdGU8U2t5U2VhcmNoSGFybmVzcz4ge1xuICAgIHJldHVybiB0aGlzLmdldERhdGFTa3lJZFByZWRpY2F0ZShmaWx0ZXJzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBCbHVycyB0aGUgc2VhcmNoIGlucHV0LlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGJsdXIoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy4jYXNzZXJ0SXNFeHBhbmRlZCgnRmFpbGVkIHRvIGJsdXIgdGhlIHNlYXJjaCBpbnB1dC4nKTtcblxuICAgIGF3YWl0IChhd2FpdCB0aGlzLiNnZXRJbnB1dCgpKS5ibHVyKCk7XG4gIH1cblxuICAvKipcbiAgICogQ2xlYXJzIHRoZSBzZWFyY2ggaW5wdXQuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgY2xlYXIoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy4jYXNzZXJ0SXNFeHBhbmRlZCgnRmFpbGVkIHRvIGNsZWFyIHRoZSBzZWFyY2ggaW5wdXQuJyk7XG5cbiAgICBjb25zdCBpbnB1dCA9IGF3YWl0IHRoaXMuI2dldElucHV0KCk7XG4gICAgYXdhaXQgaW5wdXQuZm9jdXMoKTtcbiAgICBhd2FpdCBpbnB1dC5jbGVhcigpO1xuICAgIGF3YWl0IHRoaXMuY2xpY2tTdWJtaXRCdXR0b24oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbGlja3MgdGhlIHNlYXJjaCBpbnB1dCBjbGVhciBidXR0b24uXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgY2xpY2tDbGVhckJ1dHRvbigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLiNhc3NlcnRJc0V4cGFuZGVkKCdGYWlsZWQgdG8gY2xpY2sgY2xlYXIgYnV0dG9uLicpO1xuICAgIGF3YWl0IChhd2FpdCB0aGlzLiNnZXRDbGVhckJ1dHRvbigpKS5jbGljaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsaWNrcyBzZWFyY2ggZGlzbWlzcyBidXR0b24gdG8gY29sbGFwc2Ugc2VhcmNoIGJhY2sgdG8gYSBidXR0b24uXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgY2xpY2tEaXNtaXNzU2VhcmNoQnV0dG9uKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGJ1dHRvbiA9IGF3YWl0IHRoaXMuI2dldERpc21pc3NCdXR0b24oKTtcblxuICAgIGlmICghYnV0dG9uKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdDYW5ub3QgZmluZCBkaXNtaXNzIHNlYXJjaCBidXR0b24uIElzIGEgY29sbGFwc2VkIHNlYXJjaCBvcGVuPycsXG4gICAgICApO1xuICAgIH1cblxuICAgIGF3YWl0IGJ1dHRvbi5jbGljaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsaWNrcyB0aGUgc2VhcmNoIGljb24gYnV0dG9uIHRoYXQgb3BlbnMgc2VhcmNoIGlucHV0IHdoZW4gaXQgaXMgY29sbGFwc2VkLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGNsaWNrT3BlblNlYXJjaEJ1dHRvbigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBidXR0b24gPSBhd2FpdCB0aGlzLiNnZXRPcGVuQnV0dG9uKCk7XG5cbiAgICBpZiAoIShhd2FpdCB0aGlzLmlzQ29sbGFwc2VkKCkpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICdDYW5ub3QgY2xpY2sgc2VhcmNoIG9wZW4gYnV0dG9uIGFzIHNlYXJjaCBpcyBub3QgY29sbGFwc2VkJyxcbiAgICAgICk7XG4gICAgfVxuXG4gICAgYXdhaXQgYnV0dG9uLmNsaWNrKCk7XG4gIH1cblxuICAvKipcbiAgICogQ2xpY2tzIHRoZSBzZWFyY2ggc3VibWl0IGJ1dHRvbi5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBjbGlja1N1Ym1pdEJ1dHRvbigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLiNhc3NlcnRJc0V4cGFuZGVkKCdGYWlsZWQgdG8gY2xpY2sgdGhlIHN1Ym1pdCBidXR0b24uJyk7XG4gICAgYXdhaXQgKGF3YWl0IHRoaXMuI2dldFN1Ym1pdEJ1dHRvbigpKS5jbGljaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIEVudGVycyB0ZXh0IGludG8gdGhlIHNlYXJjaCBpbnB1dCBhbmQgcGVyZm9ybXMgYSBzZWFyY2guXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZW50ZXJUZXh0KHZhbHVlOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLiNhc3NlcnRJc0V4cGFuZGVkKCdGYWlsZWQgdG8gZW50ZXIgdGV4dCBpbnRvIHRoZSBzZWFyY2ggaW5wdXQuJyk7XG5cbiAgICBjb25zdCBpbnB1dCA9IGF3YWl0IHRoaXMuI2dldElucHV0KCk7XG4gICAgYXdhaXQgaW5wdXQuY2xlYXIoKTtcbiAgICBhd2FpdCBpbnB1dC5mb2N1cygpO1xuICAgIGF3YWl0IGlucHV0LnNlbmRLZXlzKHZhbHVlKTtcbiAgICBhd2FpdCB0aGlzLmNsaWNrU3VibWl0QnV0dG9uKCk7XG4gIH1cblxuICAvKipcbiAgICogRm9jdXNlcyB0aGUgc2VhcmNoIGlucHV0LlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGZvY3VzKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuI2Fzc2VydElzRXhwYW5kZWQoJ0ZhaWxlZCB0byBmb2N1cyB0aGUgc2VhcmNoIGlucHV0LicpO1xuXG4gICAgYXdhaXQgKGF3YWl0IHRoaXMuI2dldElucHV0KCkpLmZvY3VzKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgc2VhcmNoIGlucHV0J3MgYGFyaWEtbGFiZWxgLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldEFyaWFMYWJlbCgpOiBQcm9taXNlPHN0cmluZyB8IG51bGw+IHtcbiAgICByZXR1cm4gYXdhaXQgKGF3YWl0IHRoaXMuI2dldElucHV0KCkpLmdldEF0dHJpYnV0ZSgnYXJpYS1sYWJlbCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHNlYXJjaCdzIGFyaWEtbGFiZWxsZWRieS5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRBcmlhTGFiZWxsZWRieSgpOiBQcm9taXNlPHN0cmluZyB8IG51bGw+IHtcbiAgICByZXR1cm4gYXdhaXQgKGF3YWl0IHRoaXMuI2dldElucHV0KCkpLmdldEF0dHJpYnV0ZSgnYXJpYS1sYWJlbGxlZGJ5Jyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgdmFsdWUgb2YgdGhlIGlucHV0J3MgcGxhY2Vob2xkZXIgYXR0cmlidXRlLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldFBsYWNlaG9sZGVyVGV4dCgpOiBQcm9taXNlPHN0cmluZyB8IG51bGw+IHtcbiAgICBhd2FpdCB0aGlzLiNhc3NlcnRJc0V4cGFuZGVkKCdGYWlsZWQgdG8gZ2V0IHRoZSBwbGFjZWhvbGRlciB0ZXh0LicpO1xuXG4gICAgcmV0dXJuIGF3YWl0IChhd2FpdCB0aGlzLiNnZXRJbnB1dCgpKS5nZXRBdHRyaWJ1dGUoJ3BsYWNlaG9sZGVyJyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgdmFsdWUgb2YgdGhlIHNlYXJjaCBpbnB1dC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRWYWx1ZSgpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIGF3YWl0IHRoaXMuI2Fzc2VydElzRXhwYW5kZWQoXG4gICAgICAnRmFpbGVkIHRvIGdldCB0aGUgdmFsdWUgb2YgdGhlIHNlYXJjaCBpbnB1dC4nLFxuICAgICk7XG5cbiAgICByZXR1cm4gYXdhaXQgKGF3YWl0IHRoaXMuI2dldElucHV0KCkpLmdldFByb3BlcnR5KCd2YWx1ZScpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIHNlYXJjaCBpbnB1dCBpcyBjb2xsYXBzZWQuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgaXNDb2xsYXBzZWQoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIChcbiAgICAgIChhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0T3BlbkJ1dHRvbigpKS5nZXRBdHRyaWJ1dGUoJ2hpZGRlbicpKSA9PT0gbnVsbFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogV2hldGhlciB0aGUgc2VhcmNoIGlucHV0IGlzIGRpc2FibGVkLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGlzRGlzYWJsZWQoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3QgZGlzYWJsZWQgPSBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0SW5wdXQoKSkuZ2V0QXR0cmlidXRlKCdkaXNhYmxlZCcpO1xuICAgIHJldHVybiBkaXNhYmxlZCAhPT0gbnVsbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBzZWFyY2ggaW5wdXQgaXMgZm9jdXNlZC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBpc0ZvY3VzZWQoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgYXdhaXQgdGhpcy4jYXNzZXJ0SXNFeHBhbmRlZChcbiAgICAgICdGYWlsZWQgdG8gZ2V0IHRoZSBzZWFyY2ggaW5wdXQgZm9jdXMgc3RhdHVzLicsXG4gICAgKTtcblxuICAgIHJldHVybiBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0SW5wdXQoKSkuaXNGb2N1c2VkKCk7XG4gIH1cblxuICBhc3luYyAjYXNzZXJ0SXNFeHBhbmRlZChlcnJvck1lc3NhZ2U6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmIChhd2FpdCB0aGlzLmlzQ29sbGFwc2VkKCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgJHtlcnJvck1lc3NhZ2V9IFNlYXJjaCBpcyBjb2xsYXBzZWQuYCk7XG4gICAgfVxuICB9XG59XG4iXX0=
|