@skyux/datetime 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.
Files changed (65) hide show
  1. package/documentation.json +925 -917
  2. package/fesm2022/skyux-datetime.mjs +105 -102
  3. package/fesm2022/skyux-datetime.mjs.map +1 -1
  4. package/package.json +15 -19
  5. package/esm2022/index.mjs +0 -23
  6. package/esm2022/lib/modules/date-pipe/date-pipe.module.mjs +0 -20
  7. package/esm2022/lib/modules/date-pipe/date.pipe.mjs +0 -68
  8. package/esm2022/lib/modules/date-pipe/date.service.mjs +0 -94
  9. package/esm2022/lib/modules/date-pipe/fuzzy-date.pipe.mjs +0 -47
  10. package/esm2022/lib/modules/date-range-picker/date-range-picker-end-date-resource-key.pipe.mjs +0 -21
  11. package/esm2022/lib/modules/date-range-picker/date-range-picker-start-date-resource-key.pipe.mjs +0 -21
  12. package/esm2022/lib/modules/date-range-picker/date-range-picker.component.mjs +0 -445
  13. package/esm2022/lib/modules/date-range-picker/date-range-picker.module.mjs +0 -17
  14. package/esm2022/lib/modules/date-range-picker/date-range.service.mjs +0 -95
  15. package/esm2022/lib/modules/date-range-picker/types/date-range-calculation.mjs +0 -2
  16. package/esm2022/lib/modules/date-range-picker/types/date-range-calculator-config.mjs +0 -2
  17. package/esm2022/lib/modules/date-range-picker/types/date-range-calculator-date-range-function.mjs +0 -2
  18. package/esm2022/lib/modules/date-range-picker/types/date-range-calculator-id.mjs +0 -118
  19. package/esm2022/lib/modules/date-range-picker/types/date-range-calculator-type.mjs +0 -23
  20. package/esm2022/lib/modules/date-range-picker/types/date-range-calculator-validate-function.mjs +0 -2
  21. package/esm2022/lib/modules/date-range-picker/types/date-range-calculator.mjs +0 -71
  22. package/esm2022/lib/modules/date-range-picker/types/date-range-default-calculator-config.mjs +0 -2
  23. package/esm2022/lib/modules/date-range-picker/types/date-range-default-calculator-configs.mjs +0 -173
  24. package/esm2022/lib/modules/date-range-picker/types/date-range-relative-value.mjs +0 -249
  25. package/esm2022/lib/modules/date-range-picker/types/date-range.mjs +0 -2
  26. package/esm2022/lib/modules/datepicker/calendar/datepicker-calendar-change.mjs +0 -2
  27. package/esm2022/lib/modules/datepicker/calendar/datepicker-calendar-inner.component.mjs +0 -383
  28. package/esm2022/lib/modules/datepicker/calendar/datepicker-calendar-label.pipe.mjs +0 -39
  29. package/esm2022/lib/modules/datepicker/calendar/datepicker-calendar.component.mjs +0 -100
  30. package/esm2022/lib/modules/datepicker/calendar/datepicker-calendar.service.mjs +0 -22
  31. package/esm2022/lib/modules/datepicker/calendar/daypicker-button.component.mjs +0 -23
  32. package/esm2022/lib/modules/datepicker/calendar/daypicker-cell.component.mjs +0 -129
  33. package/esm2022/lib/modules/datepicker/calendar/daypicker-context.mjs +0 -2
  34. package/esm2022/lib/modules/datepicker/calendar/daypicker.component.mjs +0 -221
  35. package/esm2022/lib/modules/datepicker/calendar/monthpicker.component.mjs +0 -80
  36. package/esm2022/lib/modules/datepicker/calendar/yearpicker.component.mjs +0 -87
  37. package/esm2022/lib/modules/datepicker/date-formatter.mjs +0 -38
  38. package/esm2022/lib/modules/datepicker/datepicker-config.service.mjs +0 -21
  39. package/esm2022/lib/modules/datepicker/datepicker-custom-date.mjs +0 -2
  40. package/esm2022/lib/modules/datepicker/datepicker-host.service.mjs +0 -61
  41. package/esm2022/lib/modules/datepicker/datepicker-input.directive.mjs +0 -526
  42. package/esm2022/lib/modules/datepicker/datepicker.component.mjs +0 -419
  43. package/esm2022/lib/modules/datepicker/datepicker.module.mjs +0 -62
  44. package/esm2022/lib/modules/datepicker/fuzzy/datepicker-input-fuzzy.directive.mjs +0 -516
  45. package/esm2022/lib/modules/datepicker/fuzzy/fuzzy-date.mjs +0 -2
  46. package/esm2022/lib/modules/datepicker/fuzzy/fuzzy-date.service.mjs +0 -411
  47. package/esm2022/lib/modules/shared/sky-datetime-resources.module.mjs +0 -130
  48. package/esm2022/lib/modules/timepicker/timepicker-time-format-type.mjs +0 -2
  49. package/esm2022/lib/modules/timepicker/timepicker-time-output.mjs +0 -2
  50. package/esm2022/lib/modules/timepicker/timepicker.component.mjs +0 -415
  51. package/esm2022/lib/modules/timepicker/timepicker.directive.mjs +0 -226
  52. package/esm2022/lib/modules/timepicker/timepicker.module.mjs +0 -37
  53. package/esm2022/skyux-datetime.mjs +0 -5
  54. package/esm2022/testing/legacy/datepicker-fixture.mjs +0 -56
  55. package/esm2022/testing/legacy/timepicker-fixture.mjs +0 -52
  56. package/esm2022/testing/modules/date-range-picker/date-range-picker-harness.filters.mjs +0 -2
  57. package/esm2022/testing/modules/date-range-picker/date-range-picker-harness.mjs +0 -193
  58. package/esm2022/testing/modules/datepicker/datepicker-calendar-harness.filters.mjs +0 -2
  59. package/esm2022/testing/modules/datepicker/datepicker-calendar-harness.mjs +0 -88
  60. package/esm2022/testing/modules/datepicker/datepicker-harness.filters.mjs +0 -2
  61. package/esm2022/testing/modules/datepicker/datepicker-harness.mjs +0 -60
  62. package/esm2022/testing/modules/datepicker/datepicker-input-harness.mjs +0 -29
  63. package/esm2022/testing/modules/datepicker/fuzzy-datepicker-input-harness.mjs +0 -29
  64. package/esm2022/testing/public-api.mjs +0 -6
  65. package/esm2022/testing/skyux-datetime-testing.mjs +0 -5
@@ -1,193 +0,0 @@
1
- import { SkyComponentHarness } from '@skyux/core/testing';
2
- import { SkyInputBoxHarness } from '@skyux/forms/testing';
3
- import { SkyDatepickerHarness } from '../datepicker/datepicker-harness';
4
- /**
5
- * Harness for interacting with date range picker components in tests.
6
- */
7
- export class SkyDateRangePickerHarness extends SkyComponentHarness {
8
- /**
9
- * @internal
10
- */
11
- static { this.hostSelector = 'sky-date-range-picker'; }
12
- #getStartDateInputBoxHarness = this.locatorFor(SkyInputBoxHarness.with({
13
- ancestor: '.sky-date-range-picker-start-date',
14
- }));
15
- #getEndDateInputBoxHarness = this.locatorFor(SkyInputBoxHarness.with({
16
- ancestor: '.sky-date-range-picker-end-date',
17
- }));
18
- #getCalculatorIdInputBoxHarness = this.locatorFor(SkyInputBoxHarness.with({
19
- ancestor: '.sky-date-range-picker-select-calculator',
20
- }));
21
- /**
22
- * Gets a `HarnessPredicate` that can be used to search for a
23
- * `SkyDateRangePickerHarness` that meets certain criteria.
24
- */
25
- static with(filters) {
26
- return SkyDateRangePickerHarness.getDataSkyIdPredicate(filters);
27
- }
28
- /**
29
- * Clicks the help inline button.
30
- */
31
- async clickHelpInline() {
32
- await (await this.#getCalculatorIdInputBoxHarness()).clickHelpInline();
33
- }
34
- /**
35
- * Gets the end date value.
36
- */
37
- async getEndDateValue() {
38
- await this.#assertEndDateVisible('Unable to get end date.');
39
- const input = await (await this.#getEndDatepicker()).getControl();
40
- return await input.getValue();
41
- }
42
- /**
43
- * Gets the help popover content.
44
- */
45
- async getHelpPopoverContent() {
46
- return (await (await this.#getCalculatorIdInputBoxHarness()).getHelpPopoverContent());
47
- }
48
- /**
49
- * Gets the help inline popover title.
50
- */
51
- async getHelpPopoverTitle() {
52
- return await (await this.#getCalculatorIdInputBoxHarness()).getHelpPopoverTitle();
53
- }
54
- /**
55
- * Gets the hint text.
56
- */
57
- async getHintText() {
58
- return await (await this.#getCalculatorIdInputBoxHarness()).getHintText();
59
- }
60
- /**
61
- * Gets the label text.
62
- */
63
- async getLabelText() {
64
- return await (await this.#getCalculatorIdInputBoxHarness()).getLabelText();
65
- }
66
- /**
67
- * Gets the selected calculator ID.
68
- */
69
- async getSelectedCalculator() {
70
- const calculatorIdHarness = await this.#getCalculatorIdInputBoxHarness();
71
- const selectEl = await calculatorIdHarness.querySelector('select');
72
- const value = await selectEl?.getProperty('value');
73
- /* istanbul ignore next: safety check */
74
- if (value === undefined || value === '') {
75
- throw new Error('No calculator selected.');
76
- }
77
- return +value;
78
- }
79
- /**
80
- * Gets the start date value.
81
- */
82
- async getStartDateValue() {
83
- await this.#assertStartDateVisible('Unable to get start date.');
84
- const input = await (await this.#getStartDatepicker()).getControl();
85
- return await input.getValue();
86
- }
87
- /**
88
- * Whether date range picker end date before start date error is thrown.
89
- */
90
- async hasEndDateBeforeStartDateError() {
91
- return await (await this.#getCalculatorIdInputBoxHarness()).hasCustomFormError('endDateBeforeStartDate');
92
- }
93
- /**
94
- * Whether end date input has required error.
95
- */
96
- async hasEndDateRequiredError() {
97
- return await (await this.#getEndDateInputBoxHarness()).hasRequiredError();
98
- }
99
- /**
100
- * Whether a custom error has fired.
101
- * @params errorName `errorName` property of the custom `sky-form-error`.
102
- */
103
- async hasError(errorName) {
104
- return await (await this.#getCalculatorIdInputBoxHarness()).hasCustomFormError(errorName);
105
- }
106
- /**
107
- * Whether start date input has required error.
108
- */
109
- async hasStartDateRequiredError() {
110
- return await (await this.#getStartDateInputBoxHarness()).hasRequiredError();
111
- }
112
- /**
113
- * Whether the date range picker component is disabled.
114
- */
115
- async isDisabled() {
116
- return await (await this.#getCalculatorIdInputBoxHarness()).getDisabled();
117
- }
118
- /**
119
- * Whether end date datepicker is visible.
120
- */
121
- async isEndDateVisible() {
122
- const hidden = await (await this.locatorFor('.sky-date-range-picker-end-date')()).getProperty('hidden');
123
- return !hidden;
124
- }
125
- /**
126
- * Whether the date range picker has stacked enabled.
127
- */
128
- async isStacked() {
129
- return await (await this.host()).hasClass('sky-form-field-stacked');
130
- }
131
- /**
132
- * Whether start date datepicker is visible.
133
- */
134
- async isStartDateVisible() {
135
- const hidden = await (await this.locatorFor('.sky-date-range-picker-start-date')()).getProperty('hidden');
136
- return !hidden;
137
- }
138
- /**
139
- * Selects the specified calculator.
140
- */
141
- async selectCalculator(calculatorId) {
142
- const select = await this.locatorFor('select[FormControlName="calculatorId"]')();
143
- const options = await select.getProperty('options');
144
- let optionIndex;
145
- // Find the index of the option with the specified value.
146
- for (let i = 0; i < options.length; i++) {
147
- const option = options[i];
148
- if (`${option.value}` === `${calculatorId}`) {
149
- optionIndex = i;
150
- break;
151
- }
152
- }
153
- if (optionIndex === undefined) {
154
- throw new Error(`Could not find calculator with ID ${calculatorId}.`);
155
- }
156
- await select.selectOptions(optionIndex);
157
- }
158
- /**
159
- * Sets the end date.
160
- * @param newDate date input as a formatted string.
161
- */
162
- async setEndDateValue(newDate) {
163
- await this.#assertEndDateVisible('Unable to set end date.');
164
- const input = await (await this.#getEndDatepicker()).getControl();
165
- await input.setValue(newDate);
166
- }
167
- /**
168
- * Sets the start date.
169
- * @param newDate date input as a formatted string.
170
- */
171
- async setStartDateValue(newDate) {
172
- await this.#assertStartDateVisible('Unable to set start date.');
173
- const input = await (await this.#getStartDatepicker()).getControl();
174
- await input.setValue(newDate);
175
- }
176
- async #assertEndDateVisible(message) {
177
- if (!(await this.isEndDateVisible())) {
178
- throw new Error(`${message} End datepicker is not visible.`);
179
- }
180
- }
181
- async #assertStartDateVisible(message) {
182
- if (!(await this.isStartDateVisible())) {
183
- throw new Error(`${message} Start datepicker is not visible.`);
184
- }
185
- }
186
- async #getEndDatepicker() {
187
- return await (await this.#getEndDateInputBoxHarness()).queryHarness(SkyDatepickerHarness);
188
- }
189
- async #getStartDatepicker() {
190
- return await (await this.#getStartDateInputBoxHarness()).queryHarness(SkyDatepickerHarness);
191
- }
192
- }
193
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1yYW5nZS1waWNrZXItaGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9kYXRldGltZS90ZXN0aW5nL3NyYy9tb2R1bGVzL2RhdGUtcmFuZ2UtcGlja2VyL2RhdGUtcmFuZ2UtcGlja2VyLWhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFMUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFMUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFJeEU7O0dBRUc7QUFDSCxNQUFNLE9BQU8seUJBQTBCLFNBQVEsbUJBQW1CO0lBQ2hFOztPQUVHO2FBQ1csaUJBQVksR0FBRyx1QkFBdUIsQ0FBQztJQUVyRCw0QkFBNEIsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUM1QyxrQkFBa0IsQ0FBQyxJQUFJLENBQUM7UUFDdEIsUUFBUSxFQUFFLG1DQUFtQztLQUM5QyxDQUFDLENBQ0gsQ0FBQztJQUNGLDBCQUEwQixHQUFHLElBQUksQ0FBQyxVQUFVLENBQzFDLGtCQUFrQixDQUFDLElBQUksQ0FBQztRQUN0QixRQUFRLEVBQUUsaUNBQWlDO0tBQzVDLENBQUMsQ0FDSCxDQUFDO0lBQ0YsK0JBQStCLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FDL0Msa0JBQWtCLENBQUMsSUFBSSxDQUFDO1FBQ3RCLFFBQVEsRUFBRSwwQ0FBMEM7S0FDckQsQ0FBQyxDQUNILENBQUM7SUFFRjs7O09BR0c7SUFDSSxNQUFNLENBQUMsSUFBSSxDQUNoQixPQUFrQztRQUVsQyxPQUFPLHlCQUF5QixDQUFDLHFCQUFxQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxlQUFlO1FBQzFCLE1BQU0s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LENBQUMsTUFBTSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDckMsTUFBTSxJQUFJLEtBQUssQ0FBQyxHQUFHLE9BQU8saUNBQWlDLENBQUMsQ0FBQztRQUMvRCxDQUFDO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyx1QkFBdUIsQ0FBQyxPQUFlO1FBQzNDLElBQUksQ0FBQyxDQUFDLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ3ZDLE1BQU0sSUFBSSxLQUFLLENBQUMsR0FBRyxPQUFPLG1DQUFtQyxDQUFDLENBQUM7UUFDakUsQ0FBQztJQUNILENBQUM7SUFFRCxLQUFLLENBQUMsaUJBQWlCO1FBQ3JCLE9BQU8sTUFBTSxDQUNYLE1BQU0sSUFBSSxDQUFDLDBCQUEwQixFQUFFLENBQ3hDLENBQUMsWUFBWSxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELEtBQUssQ0FBQyxtQkFBbUI7UUFDdkIsT0FBTyxNQUFNLENBQ1gsTUFBTSxJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FDMUMsQ0FBQyxZQUFZLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUN2QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSGFybmVzc1ByZWRpY2F0ZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXN0aW5nJztcbmltcG9ydCB7IFNreUNvbXBvbmVudEhhcm5lc3MgfSBmcm9tICdAc2t5dXgvY29yZS90ZXN0aW5nJztcbmltcG9ydCB7IFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZCB9IGZyb20gJ0Bza3l1eC9kYXRldGltZSc7XG5pbXBvcnQgeyBTa3lJbnB1dEJveEhhcm5lc3MgfSBmcm9tICdAc2t5dXgvZm9ybXMvdGVzdGluZyc7XG5cbmltcG9ydCB7IFNreURhdGVwaWNrZXJIYXJuZXNzIH0gZnJvbSAnLi4vZGF0ZXBpY2tlci9kYXRlcGlja2VyLWhhcm5lc3MnO1xuXG5pbXBvcnQgeyBTa3lEYXRlUmFuZ2VQaWNrZXJGaWx0ZXJzIH0gZnJvbSAnLi9kYXRlLXJhbmdlLXBpY2tlci1oYXJuZXNzLmZpbHRlcnMnO1xuXG4vKipcbiAqIEhhcm5lc3MgZm9yIGludGVyYWN0aW5nIHdpdGggZGF0ZSByYW5nZSBwaWNrZXIgY29tcG9uZW50cyBpbiB0ZXN0cy5cbiAqL1xuZXhwb3J0IGNsYXNzIFNreURhdGVSYW5nZVBpY2tlckhhcm5lc3MgZXh0ZW5kcyBTa3lDb21wb25lbnRIYXJuZXNzIHtcbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBob3N0U2VsZWN0b3IgPSAnc2t5LWRhdGUtcmFuZ2UtcGlja2VyJztcblxuICAjZ2V0U3RhcnREYXRlSW5wdXRCb3hIYXJuZXNzID0gdGhpcy5sb2NhdG9yRm9yKFxuICAgIFNreUlucHV0Qm94SGFybmVzcy53aXRoKHtcbiAgICAgIGFuY2VzdG9yOiAnLnNreS1kYXRlLXJhbmdlLXBpY2tlci1zdGFydC1kYXRlJyxcbiAgICB9KSxcbiAgKTtcbiAgI2dldEVuZERhdGVJbnB1dEJveEhhcm5lc3MgPSB0aGlzLmxvY2F0b3JGb3IoXG4gICAgU2t5SW5wdXRCb3hIYXJuZXNzLndpdGgoe1xuICAgICAgYW5jZXN0b3I6ICcuc2t5LWRhdGUtcmFuZ2UtcGlja2VyLWVuZC1kYXRlJyxcbiAgICB9KSxcbiAgKTtcbiAgI2dldENhbGN1bGF0b3JJZElucHV0Qm94SGFybmVzcyA9IHRoaXMubG9jYXRvckZvcihcbiAgICBTa3lJbnB1dEJveEhhcm5lc3Mud2l0aCh7XG4gICAgICBhbmNlc3RvcjogJy5za3ktZGF0ZS1yYW5nZS1waWNrZXItc2VsZWN0LWNhbGN1bGF0b3InLFxuICAgIH0pLFxuICApO1xuXG4gIC8qKlxuICAgKiBHZXRzIGEgYEhhcm5lc3NQcmVkaWNhdGVgIHRoYXQgY2FuIGJlIHVzZWQgdG8gc2VhcmNoIGZvciBhXG4gICAqIGBTa3lEYXRlUmFuZ2VQaWNrZXJIYXJuZXNzYCB0aGF0IG1lZXRzIGNlcnRhaW4gY3JpdGVyaWEuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHdpdGgoXG4gICAgZmlsdGVyczogU2t5RGF0ZVJhbmdlUGlja2VyRmlsdGVycyxcbiAgKTogSGFybmVzc1ByZWRpY2F0ZTxTa3lEYXRlUmFuZ2VQaWNrZXJIYXJuZXNzPiB7XG4gICAgcmV0dXJuIFNreURhdGVSYW5nZVBpY2tlckhhcm5lc3MuZ2V0RGF0YVNreUlkUHJlZGljYXRlKGZpbHRlcnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsaWNrcyB0aGUgaGVscCBpbmxpbmUgYnV0dG9uLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGNsaWNrSGVscElubGluZSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0Q2FsY3VsYXRvcklkSW5wdXRCb3hIYXJuZXNzKCkpLmNsaWNrSGVscElubGluZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGVuZCBkYXRlIHZhbHVlLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldEVuZERhdGVWYWx1ZSgpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIGF3YWl0IHRoaXMuI2Fzc2VydEVuZERhdGVWaXNpYmxlKCdVbmFibGUgdG8gZ2V0IGVuZCBkYXRlLicpO1xuXG4gICAgY29uc3QgaW5wdXQgPSBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0RW5kRGF0ZXBpY2tlcigpKS5nZXRDb250cm9sKCk7XG5cbiAgICByZXR1cm4gYXdhaXQgaW5wdXQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBoZWxwIHBvcG92ZXIgY29udGVudC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRIZWxwUG9wb3ZlckNvbnRlbnQoKTogUHJvbWlzZTxzdHJpbmcgfCB1bmRlZmluZWQ+IHtcbiAgICByZXR1cm4gKGF3YWl0IChcbiAgICAgIGF3YWl0IHRoaXMuI2dldENhbGN1bGF0b3JJZElucHV0Qm94SGFybmVzcygpXG4gICAgKS5nZXRIZWxwUG9wb3ZlckNvbnRlbnQoKSkgYXMgc3RyaW5nIHwgdW5kZWZpbmVkO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGhlbHAgaW5saW5lIHBvcG92ZXIgdGl0bGUuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0SGVscFBvcG92ZXJUaXRsZSgpOiBQcm9taXNlPHN0cmluZyB8IHVuZGVmaW5lZD4ge1xuICAgIHJldHVybiBhd2FpdCAoXG4gICAgICBhd2FpdCB0aGlzLiNnZXRDYWxjdWxhdG9ySWRJbnB1dEJveEhhcm5lc3MoKVxuICAgICkuZ2V0SGVscFBvcG92ZXJUaXRsZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGhpbnQgdGV4dC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRIaW50VGV4dCgpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0Q2FsY3VsYXRvcklkSW5wdXRCb3hIYXJuZXNzKCkpLmdldEhpbnRUZXh0KCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgbGFiZWwgdGV4dC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRMYWJlbFRleHQoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gYXdhaXQgKGF3YWl0IHRoaXMuI2dldENhbGN1bGF0b3JJZElucHV0Qm94SGFybmVzcygpKS5nZXRMYWJlbFRleHQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBzZWxlY3RlZCBjYWxjdWxhdG9yIElELlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldFNlbGVjdGVkQ2FsY3VsYXRvcigpOiBQcm9taXNlPFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZD4ge1xuICAgIGNvbnN0IGNhbGN1bGF0b3JJZEhhcm5lc3MgPSBhd2FpdCB0aGlzLiNnZXRDYWxjdWxhdG9ySWRJbnB1dEJveEhhcm5lc3MoKTtcbiAgICBjb25zdCBzZWxlY3RFbCA9IGF3YWl0IGNhbGN1bGF0b3JJZEhhcm5lc3MucXVlcnlTZWxlY3Rvcignc2VsZWN0Jyk7XG4gICAgY29uc3QgdmFsdWUgPSBhd2FpdCBzZWxlY3RFbD8uZ2V0UHJvcGVydHkoJ3ZhbHVlJyk7XG5cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dDogc2FmZXR5IGNoZWNrICovXG4gICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQgfHwgdmFsdWUgPT09ICcnKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIGNhbGN1bGF0b3Igc2VsZWN0ZWQuJyk7XG4gICAgfVxuXG4gICAgcmV0dXJuICt2YWx1ZSBhcyBTa3lEYXRlUmFuZ2VDYWxjdWxhdG9ySWQ7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgc3RhcnQgZGF0ZSB2YWx1ZS5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRTdGFydERhdGVWYWx1ZSgpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIGF3YWl0IHRoaXMuI2Fzc2VydFN0YXJ0RGF0ZVZpc2libGUoJ1VuYWJsZSB0byBnZXQgc3RhcnQgZGF0ZS4nKTtcblxuICAgIGNvbnN0IGlucHV0ID0gYXdhaXQgKGF3YWl0IHRoaXMuI2dldFN0YXJ0RGF0ZXBpY2tlcigpKS5nZXRDb250cm9sKCk7XG5cbiAgICByZXR1cm4gYXdhaXQgaW5wdXQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIGRhdGUgcmFuZ2UgcGlja2VyIGVuZCBkYXRlIGJlZm9yZSBzdGFydCBkYXRlIGVycm9yIGlzIHRocm93bi5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBoYXNFbmREYXRlQmVmb3JlU3RhcnREYXRlRXJyb3IoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIGF3YWl0IChcbiAgICAgIGF3YWl0IHRoaXMuI2dldENhbGN1bGF0b3JJZElucHV0Qm94SGFybmVzcygpXG4gICAgKS5oYXNDdXN0b21Gb3JtRXJyb3IoJ2VuZERhdGVCZWZvcmVTdGFydERhdGUnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIGVuZCBkYXRlIGlucHV0IGhhcyByZXF1aXJlZCBlcnJvci5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBoYXNFbmREYXRlUmVxdWlyZWRFcnJvcigpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gYXdhaXQgKGF3YWl0IHRoaXMuI2dldEVuZERhdGVJbnB1dEJveEhhcm5lc3MoKSkuaGFzUmVxdWlyZWRFcnJvcigpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgYSBjdXN0b20gZXJyb3IgaGFzIGZpcmVkLlxuICAgKiBAcGFyYW1zIGVycm9yTmFtZSBgZXJyb3JOYW1lYCBwcm9wZXJ0eSBvZiB0aGUgY3VzdG9tIGBza3ktZm9ybS1lcnJvcmAuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgaGFzRXJyb3IoZXJyb3JOYW1lOiBzdHJpbmcpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gYXdhaXQgKFxuICAgICAgYXdhaXQgdGhpcy4jZ2V0Q2FsY3VsYXRvcklkSW5wdXRCb3hIYXJuZXNzKClcbiAgICApLmhhc0N1c3RvbUZvcm1FcnJvcihlcnJvck5hbWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgc3RhcnQgZGF0ZSBpbnB1dCBoYXMgcmVxdWlyZWQgZXJyb3IuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgaGFzU3RhcnREYXRlUmVxdWlyZWRFcnJvcigpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gYXdhaXQgKGF3YWl0IHRoaXMuI2dldFN0YXJ0RGF0ZUlucHV0Qm94SGFybmVzcygpKS5oYXNSZXF1aXJlZEVycm9yKCk7XG4gIH1cblxuICAvKipcbiAgICogV2hldGhlciB0aGUgZGF0ZSByYW5nZSBwaWNrZXIgY29tcG9uZW50IGlzIGRpc2FibGVkLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGlzRGlzYWJsZWQoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIGF3YWl0IChhd2FpdCB0aGlzLiNnZXRDYWxjdWxhdG9ySWRJbnB1dEJveEhhcm5lc3MoKSkuZ2V0RGlzYWJsZWQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIGVuZCBkYXRlIGRhdGVwaWNrZXIgaXMgdmlzaWJsZS5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBpc0VuZERhdGVWaXNpYmxlKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGNvbnN0IGhpZGRlbiA9IGF3YWl0IChcbiAgICAgIGF3YWl0IHRoaXMubG9jYXRvckZvcignLnNreS1kYXRlLXJhbmdlLXBpY2tlci1lbmQtZGF0ZScpKClcbiAgICApLmdldFByb3BlcnR5PGJvb2xlYW4+KCdoaWRkZW4nKTtcblxuICAgIHJldHVybiAhaGlkZGVuO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIGRhdGUgcmFuZ2UgcGlja2VyIGhhcyBzdGFja2VkIGVuYWJsZWQuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgaXNTdGFja2VkKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiBhd2FpdCAoYXdhaXQgdGhpcy5ob3N0KCkpLmhhc0NsYXNzKCdza3ktZm9ybS1maWVsZC1zdGFja2VkJyk7XG4gIH1cblxuICAvKipcbiAgICogV2hldGhlciBzdGFydCBkYXRlIGRhdGVwaWNrZXIgaXMgdmlzaWJsZS5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBpc1N0YXJ0RGF0ZVZpc2libGUoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3QgaGlkZGVuID0gYXdhaXQgKFxuICAgICAgYXdhaXQgdGhpcy5sb2NhdG9yRm9yKCcuc2t5LWRhdGUtcmFuZ2UtcGlja2VyLXN0YXJ0LWRhdGUnKSgpXG4gICAgKS5nZXRQcm9wZXJ0eTxib29sZWFuPignaGlkZGVuJyk7XG5cbiAgICByZXR1cm4gIWhpZGRlbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZWxlY3RzIHRoZSBzcGVjaWZpZWQgY2FsY3VsYXRvci5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBzZWxlY3RDYWxjdWxhdG9yKFxuICAgIGNhbGN1bGF0b3JJZDogU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvcklkLFxuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBzZWxlY3QgPSBhd2FpdCB0aGlzLmxvY2F0b3JGb3IoXG4gICAgICAnc2VsZWN0W0Zvcm1Db250cm9sTmFtZT1cImNhbGN1bGF0b3JJZFwiXScsXG4gICAgKSgpO1xuXG4gICAgY29uc3Qgb3B0aW9ucyA9IGF3YWl0IHNlbGVjdC5nZXRQcm9wZXJ0eSgnb3B0aW9ucycpO1xuXG4gICAgbGV0IG9wdGlvbkluZGV4OiBudW1iZXIgfCB1bmRlZmluZWQ7XG5cbiAgICAvLyBGaW5kIHRoZSBpbmRleCBvZiB0aGUgb3B0aW9uIHdpdGggdGhlIHNwZWNpZmllZCB2YWx1ZS5cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG9wdGlvbnMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGNvbnN0IG9wdGlvbiA9IG9wdGlvbnNbaV07XG5cbiAgICAgIGlmIChgJHtvcHRpb24udmFsdWV9YCA9PT0gYCR7Y2FsY3VsYXRvcklkfWApIHtcbiAgICAgICAgb3B0aW9uSW5kZXggPSBpO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAob3B0aW9uSW5kZXggPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBDb3VsZCBub3QgZmluZCBjYWxjdWxhdG9yIHdpdGggSUQgJHtjYWxjdWxhdG9ySWR9LmApO1xuICAgIH1cblxuICAgIGF3YWl0IHNlbGVjdC5zZWxlY3RPcHRpb25zKG9wdGlvbkluZGV4KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBlbmQgZGF0ZS5cbiAgICogQHBhcmFtIG5ld0RhdGUgZGF0ZSBpbnB1dCBhcyBhIGZvcm1hdHRlZCBzdHJpbmcuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgc2V0RW5kRGF0ZVZhbHVlKG5ld0RhdGU6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuI2Fzc2VydEVuZERhdGVWaXNpYmxlKCdVbmFibGUgdG8gc2V0IGVuZCBkYXRlLicpO1xuXG4gICAgY29uc3QgaW5wdXQgPSBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0RW5kRGF0ZXBpY2tlcigpKS5nZXRDb250cm9sKCk7XG5cbiAgICBhd2FpdCBpbnB1dC5zZXRWYWx1ZShuZXdEYXRlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBzdGFydCBkYXRlLlxuICAgKiBAcGFyYW0gbmV3RGF0ZSBkYXRlIGlucHV0IGFzIGEgZm9ybWF0dGVkIHN0cmluZy5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBzZXRTdGFydERhdGVWYWx1ZShuZXdEYXRlOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLiNhc3NlcnRTdGFydERhdGVWaXNpYmxlKCdVbmFibGUgdG8gc2V0IHN0YXJ0IGRhdGUuJyk7XG5cbiAgICBjb25zdCBpbnB1dCA9IGF3YWl0IChhd2FpdCB0aGlzLiNnZXRTdGFydERhdGVwaWNrZXIoKSkuZ2V0Q29udHJvbCgpO1xuXG4gICAgYXdhaXQgaW5wdXQuc2V0VmFsdWUobmV3RGF0ZSk7XG4gIH1cblxuICBhc3luYyAjYXNzZXJ0RW5kRGF0ZVZpc2libGUobWVzc2FnZTogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKCEoYXdhaXQgdGhpcy5pc0VuZERhdGVWaXNpYmxlKCkpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYCR7bWVzc2FnZX0gRW5kIGRhdGVwaWNrZXIgaXMgbm90IHZpc2libGUuYCk7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgI2Fzc2VydFN0YXJ0RGF0ZVZpc2libGUobWVzc2FnZTogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKCEoYXdhaXQgdGhpcy5pc1N0YXJ0RGF0ZVZpc2libGUoKSkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgJHttZXNzYWdlfSBTdGFydCBkYXRlcGlja2VyIGlzIG5vdCB2aXNpYmxlLmApO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jICNnZXRFbmREYXRlcGlja2VyKCk6IFByb21pc2U8U2t5RGF0ZXBpY2tlckhhcm5lc3M+IHtcbiAgICByZXR1cm4gYXdhaXQgKFxuICAgICAgYXdhaXQgdGhpcy4jZ2V0RW5kRGF0ZUlucHV0Qm94SGFybmVzcygpXG4gICAgKS5xdWVyeUhhcm5lc3MoU2t5RGF0ZXBpY2tlckhhcm5lc3MpO1xuICB9XG5cbiAgYXN5bmMgI2dldFN0YXJ0RGF0ZXBpY2tlcigpOiBQcm9taXNlPFNreURhdGVwaWNrZXJIYXJuZXNzPiB7XG4gICAgcmV0dXJuIGF3YWl0IChcbiAgICAgIGF3YWl0IHRoaXMuI2dldFN0YXJ0RGF0ZUlucHV0Qm94SGFybmVzcygpXG4gICAgKS5xdWVyeUhhcm5lc3MoU2t5RGF0ZXBpY2tlckhhcm5lc3MpO1xuICB9XG59XG4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci1jYWxlbmRhci1oYXJuZXNzLmZpbHRlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvZGF0ZXRpbWUvdGVzdGluZy9zcmMvbW9kdWxlcy9kYXRlcGlja2VyL2RhdGVwaWNrZXItY2FsZW5kYXItaGFybmVzcy5maWx0ZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlSGFybmVzc0ZpbHRlcnMgfSBmcm9tICdAYW5ndWxhci9jZGsvdGVzdGluZyc7XG5cbi8qKlxuICogQSBzZXQgb2YgY3JpdGVyaWEgdGhhdCBjYW4gYmUgdXNlZCB0byBmaWx0ZXIgYSBsaXN0IG9mIGBTa3lEYXRlcGlja2VyQ2FsZW5kYXJIYXJuZXNzYCBpbnN0YW5jZXMuXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktaW50ZXJmYWNlLCBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktb2JqZWN0LXR5cGVcbmV4cG9ydCBpbnRlcmZhY2UgU2t5RGF0ZXBpY2tlckNhbGVuZGFySGFybmVzc0ZpbHRlcnNcbiAgZXh0ZW5kcyBCYXNlSGFybmVzc0ZpbHRlcnMge31cbiJdfQ==
@@ -1,88 +0,0 @@
1
- import { HarnessPredicate } from '@angular/cdk/testing';
2
- import { SkyComponentHarness } from '@skyux/core/testing';
3
- /**
4
- * Harness for interacting with datepicker calendar in tests.
5
- */
6
- export class SkyDatepickerCalendarHarness extends SkyComponentHarness {
7
- /**
8
- * @internal
9
- */
10
- static { this.hostSelector = '.sky-datepicker-calendar-container'; }
11
- #getDaypicker = this.locatorForOptional('sky-daypicker');
12
- #getMonthpicker = this.locatorForOptional('sky-monthpicker');
13
- #getNextButton = this.locatorFor('.sky-datepicker-btn-next');
14
- #getPreviousButton = this.locatorFor('.sky-datepicker-btn-previous');
15
- #getSelected = this.locatorFor('.sky-datepicker-btn-selected');
16
- #getTitle = this.locatorFor('.sky-datepicker-calendar-title');
17
- #getTitleButton = this.locatorFor('.sky-datepicker-calendar-title');
18
- /**
19
- * @internal
20
- */
21
- static with(filters) {
22
- return new HarnessPredicate(SkyDatepickerCalendarHarness, filters);
23
- }
24
- /**
25
- * Clicks the specified date, month or year.
26
- * @params the specified value to click, in the following format
27
- * day format: dddd, MMMM Do YYYY
28
- * month format: MMMM YYYY
29
- * year format: YYYY
30
- */
31
- async clickDate(date) {
32
- try {
33
- await (await this.locatorFor(`[aria-label="${date}"]`)()).click();
34
- }
35
- catch {
36
- throw new Error(`Unable to find date with label "${date}". Check that the format is correct and matches the current calendar mode.`);
37
- }
38
- }
39
- /**
40
- * Clicks the 'next' button on the calendar header.
41
- */
42
- async clickNextButton() {
43
- await (await this.#getNextButton()).click();
44
- }
45
- /**
46
- * Clicks the 'previous' button on the calendar header.
47
- */
48
- async clickPreviousButton() {
49
- await (await this.#getPreviousButton()).click();
50
- }
51
- /**
52
- * Clicks the 'title' button on the calendar header.
53
- */
54
- async clickTitleButton() {
55
- const button = await this.#getTitleButton();
56
- if (await button.hasClass('sky-btn-disabled')) {
57
- throw new Error('Title button is disabled.');
58
- }
59
- await button.click();
60
- }
61
- /**
62
- * Gets the current calendar mode.
63
- */
64
- async getCalendarMode() {
65
- if (await this.#getDaypicker()) {
66
- return 'day';
67
- }
68
- else if (await this.#getMonthpicker()) {
69
- return 'month';
70
- }
71
- else {
72
- return 'year';
73
- }
74
- }
75
- /**
76
- * Gets the current title.
77
- */
78
- async getCalendarTitle() {
79
- return (await (await this.#getTitle()).text()).trim();
80
- }
81
- /**
82
- * Gets the value of the currently selected calendar item.
83
- */
84
- async getSelectedValue() {
85
- return await (await this.#getSelected()).getAttribute('aria-label');
86
- }
87
- }
88
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci1jYWxlbmRhci1oYXJuZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2RhdGV0aW1lL3Rlc3Rpbmcvc3JjL21vZHVsZXMvZGF0ZXBpY2tlci9kYXRlcGlja2VyLWNhbGVuZGFyLWhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFJMUQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsbUJBQW1CO0lBQ25FOztPQUVHO2FBQ1csaUJBQVksR0FBRyxvQ0FBb0MsQ0FBQztJQUVsRSxhQUFhLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ3pELGVBQWUsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUM3RCxjQUFjLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO0lBQzdELGtCQUFrQixHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsOEJBQThCLENBQUMsQ0FBQztJQUNyRSxZQUFZLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO0lBQy9ELFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGdDQUFnQyxDQUFDLENBQUM7SUFDOUQsZUFBZSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztJQUVwRTs7T0FFRztJQUNJLE1BQU0sQ0FBQyxJQUFJLENBQ2hCLE9BQTRDO1FBRTVDLE9BQU8sSUFBSSxnQkFBZ0IsQ0FBQyw0QkFBNEIsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksS0FBSyxDQUFDLFNBQVMsQ0FBQyxJQUFZO1FBQ2pDLElBQUksQ0FBQztZQUNILE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsZ0JBQWdCLElBQUksSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3BFLENBQUM7UUFBQyxNQUFNLENBQUM7WUFDUCxNQUFNLElBQUksS0FBSyxDQUNiLG1DQUFtQyxJQUFJLDRFQUE0RSxDQUNwSCxDQUFDO1FBQ0osQ0FBQztJQUNILENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxlQUFlO1FBQzFCLE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzlDLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxtQkFBbUI7UUFDOUIsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNsRCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsZ0JBQWdCO1FBQzNCLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBRTVDLElBQUksTUFBTSxNQUFNLENBQUMsUUFBUSxDQUFDLGtCQUFrQixDQUFDLEVBQUUsQ0FBQztZQUM5QyxNQUFNLElBQUksS0FBSyxDQUFDLDJCQUEyQixDQUFDLENBQUM7UUFDL0MsQ0FBQztRQUVELE1BQU0sTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxlQUFlO1FBQzFCLElBQUksTUFBTSxJQUFJLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQztZQUMvQixPQUFPLEtBQUssQ0FBQztRQUNmLENBQUM7YUFBTSxJQUFJLE1BQU0sSUFBSSxDQUFDLGVBQWUsRUFBRSxFQUFFLENBQUM7WUFDeEMsT0FBTyxPQUFPLENBQUM7UUFDakIsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLE1BQU0sQ0FBQztRQUNoQixDQUFDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLGdCQUFnQjtRQUMzQixPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN4RCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsZ0JBQWdCO1FBQzNCLE9BQU8sTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3RFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIYXJuZXNzUHJlZGljYXRlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Rlc3RpbmcnO1xuaW1wb3J0IHsgU2t5Q29tcG9uZW50SGFybmVzcyB9IGZyb20gJ0Bza3l1eC9jb3JlL3Rlc3RpbmcnO1xuXG5pbXBvcnQgeyBTa3lEYXRlcGlja2VyQ2FsZW5kYXJIYXJuZXNzRmlsdGVycyB9IGZyb20gJy4vZGF0ZXBpY2tlci1jYWxlbmRhci1oYXJuZXNzLmZpbHRlcnMnO1xuXG4vKipcbiAqIEhhcm5lc3MgZm9yIGludGVyYWN0aW5nIHdpdGggZGF0ZXBpY2tlciBjYWxlbmRhciBpbiB0ZXN0cy5cbiAqL1xuZXhwb3J0IGNsYXNzIFNreURhdGVwaWNrZXJDYWxlbmRhckhhcm5lc3MgZXh0ZW5kcyBTa3lDb21wb25lbnRIYXJuZXNzIHtcbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBob3N0U2VsZWN0b3IgPSAnLnNreS1kYXRlcGlja2VyLWNhbGVuZGFyLWNvbnRhaW5lcic7XG5cbiAgI2dldERheXBpY2tlciA9IHRoaXMubG9jYXRvckZvck9wdGlvbmFsKCdza3ktZGF5cGlja2VyJyk7XG4gICNnZXRNb250aHBpY2tlciA9IHRoaXMubG9jYXRvckZvck9wdGlvbmFsKCdza3ktbW9udGhwaWNrZXInKTtcbiAgI2dldE5leHRCdXR0b24gPSB0aGlzLmxvY2F0b3JGb3IoJy5za3ktZGF0ZXBpY2tlci1idG4tbmV4dCcpO1xuICAjZ2V0UHJldmlvdXNCdXR0b24gPSB0aGlzLmxvY2F0b3JGb3IoJy5za3ktZGF0ZXBpY2tlci1idG4tcHJldmlvdXMnKTtcbiAgI2dldFNlbGVjdGVkID0gdGhpcy5sb2NhdG9yRm9yKCcuc2t5LWRhdGVwaWNrZXItYnRuLXNlbGVjdGVkJyk7XG4gICNnZXRUaXRsZSA9IHRoaXMubG9jYXRvckZvcignLnNreS1kYXRlcGlja2VyLWNhbGVuZGFyLXRpdGxlJyk7XG4gICNnZXRUaXRsZUJ1dHRvbiA9IHRoaXMubG9jYXRvckZvcignLnNreS1kYXRlcGlja2VyLWNhbGVuZGFyLXRpdGxlJyk7XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyB3aXRoKFxuICAgIGZpbHRlcnM6IFNreURhdGVwaWNrZXJDYWxlbmRhckhhcm5lc3NGaWx0ZXJzLFxuICApOiBIYXJuZXNzUHJlZGljYXRlPFNreURhdGVwaWNrZXJDYWxlbmRhckhhcm5lc3M+IHtcbiAgICByZXR1cm4gbmV3IEhhcm5lc3NQcmVkaWNhdGUoU2t5RGF0ZXBpY2tlckNhbGVuZGFySGFybmVzcywgZmlsdGVycyk7XG4gIH1cblxuICAvKipcbiAgICogQ2xpY2tzIHRoZSBzcGVjaWZpZWQgZGF0ZSwgbW9udGggb3IgeWVhci5cbiAgICogQHBhcmFtcyB0aGUgc3BlY2lmaWVkIHZhbHVlIHRvIGNsaWNrLCBpbiB0aGUgZm9sbG93aW5nIGZvcm1hdFxuICAgKiBkYXkgZm9ybWF0OiBkZGRkLCBNTU1NIERvIFlZWVlcbiAgICogbW9udGggZm9ybWF0OiBNTU1NIFlZWVlcbiAgICogeWVhciBmb3JtYXQ6IFlZWVlcbiAgICovXG4gIHB1YmxpYyBhc3luYyBjbGlja0RhdGUoZGF0ZTogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IChhd2FpdCB0aGlzLmxvY2F0b3JGb3IoYFthcmlhLWxhYmVsPVwiJHtkYXRlfVwiXWApKCkpLmNsaWNrKCk7XG4gICAgfSBjYXRjaCB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBVbmFibGUgdG8gZmluZCBkYXRlIHdpdGggbGFiZWwgXCIke2RhdGV9XCIuIENoZWNrIHRoYXQgdGhlIGZvcm1hdCBpcyBjb3JyZWN0IGFuZCBtYXRjaGVzIHRoZSBjdXJyZW50IGNhbGVuZGFyIG1vZGUuYCxcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqICBDbGlja3MgdGhlICduZXh0JyBidXR0b24gb24gdGhlIGNhbGVuZGFyIGhlYWRlci5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBjbGlja05leHRCdXR0b24oKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgKGF3YWl0IHRoaXMuI2dldE5leHRCdXR0b24oKSkuY2xpY2soKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbGlja3MgdGhlICdwcmV2aW91cycgYnV0dG9uIG9uIHRoZSBjYWxlbmRhciBoZWFkZXIuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgY2xpY2tQcmV2aW91c0J1dHRvbigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0UHJldmlvdXNCdXR0b24oKSkuY2xpY2soKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbGlja3MgdGhlICd0aXRsZScgYnV0dG9uIG9uIHRoZSBjYWxlbmRhciBoZWFkZXIuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgY2xpY2tUaXRsZUJ1dHRvbigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBidXR0b24gPSBhd2FpdCB0aGlzLiNnZXRUaXRsZUJ1dHRvbigpO1xuXG4gICAgaWYgKGF3YWl0IGJ1dHRvbi5oYXNDbGFzcygnc2t5LWJ0bi1kaXNhYmxlZCcpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RpdGxlIGJ1dHRvbiBpcyBkaXNhYmxlZC4nKTtcbiAgICB9XG5cbiAgICBhd2FpdCBidXR0b24uY2xpY2soKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBjdXJyZW50IGNhbGVuZGFyIG1vZGUuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0Q2FsZW5kYXJNb2RlKCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgaWYgKGF3YWl0IHRoaXMuI2dldERheXBpY2tlcigpKSB7XG4gICAgICByZXR1cm4gJ2RheSc7XG4gICAgfSBlbHNlIGlmIChhd2FpdCB0aGlzLiNnZXRNb250aHBpY2tlcigpKSB7XG4gICAgICByZXR1cm4gJ21vbnRoJztcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuICd5ZWFyJztcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgY3VycmVudCB0aXRsZS5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRDYWxlbmRhclRpdGxlKCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuIChhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0VGl0bGUoKSkudGV4dCgpKS50cmltKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgdmFsdWUgb2YgdGhlIGN1cnJlbnRseSBzZWxlY3RlZCBjYWxlbmRhciBpdGVtLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldFNlbGVjdGVkVmFsdWUoKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgcmV0dXJuIGF3YWl0IChhd2FpdCB0aGlzLiNnZXRTZWxlY3RlZCgpKS5nZXRBdHRyaWJ1dGUoJ2FyaWEtbGFiZWwnKTtcbiAgfVxufVxuIl19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci1oYXJuZXNzLmZpbHRlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvZGF0ZXRpbWUvdGVzdGluZy9zcmMvbW9kdWxlcy9kYXRlcGlja2VyL2RhdGVwaWNrZXItaGFybmVzcy5maWx0ZXJzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTa3lIYXJuZXNzRmlsdGVycyB9IGZyb20gJ0Bza3l1eC9jb3JlL3Rlc3RpbmcnO1xuXG4vKipcbiAqIEEgc2V0IG9mIGNyaXRlcmlhIHRoYXQgY2FuIGJlIHVzZWQgdG8gZmlsdGVyIGEgbGlzdCBvZiBgU2t5RGF0ZXBpY2tlckhhcm5lc3NgIGluc3RhbmNlcy5cbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1pbnRlcmZhY2UsIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1vYmplY3QtdHlwZVxuZXhwb3J0IGludGVyZmFjZSBTa3lEYXRlcGlja2VyRmlsdGVycyBleHRlbmRzIFNreUhhcm5lc3NGaWx0ZXJzIHt9XG4iXX0=
@@ -1,60 +0,0 @@
1
- import { SkyComponentHarness } from '@skyux/core/testing';
2
- import { SkyDatepickerCalendarHarness } from './datepicker-calendar-harness';
3
- import { SkyDatepickerInputHarness } from './datepicker-input-harness';
4
- import { SkyFuzzyDatepickerInputHarness } from './fuzzy-datepicker-input-harness';
5
- /**
6
- * Harness for interacting with datepicker components in tests.
7
- */
8
- export class SkyDatepickerHarness extends SkyComponentHarness {
9
- /**
10
- * @internal
11
- */
12
- static { this.hostSelector = 'sky-datepicker, .sky-input-group'; }
13
- #documentRootLocator = this.documentRootLocatorFactory();
14
- #getCalendarButton = this.locatorFor('.sky-input-group-datepicker-btn');
15
- /**
16
- * Gets a `HarnessPredicate` that can be used to search for a
17
- * `SkyDatepickerHarness` that meets certain criteria.
18
- *
19
- * These filters only work for standalone datepickers. For datepickers
20
- * wrapped inside `sky-input-box`, place filters on the input box instead and
21
- * query the datepicker using a `SkyInputBoxHarness`.
22
- * For the input box implementation, see the code example.
23
- */
24
- static with(filters) {
25
- return SkyDatepickerHarness.getDataSkyIdPredicate(filters);
26
- }
27
- /**
28
- * Clicks the calendar button.
29
- */
30
- async clickCalendarButton() {
31
- return await (await this.#getCalendarButton()).click();
32
- }
33
- /**
34
- * Gets the `SkyDatepickerCalendarHarness` for the calendar picker controlled by
35
- * the datepicker. Throws an error if the calendar picker is not open.
36
- */
37
- async getDatepickerCalendar() {
38
- const calendarId = await this.#getAriaControls();
39
- if (!calendarId) {
40
- throw new Error('Unable to get calendar picker because picker is closed.');
41
- }
42
- return await this.#documentRootLocator.locatorFor(SkyDatepickerCalendarHarness.with({ selector: `#${calendarId}` }))();
43
- }
44
- /**
45
- * Gets the datepicker input harness.
46
- */
47
- async getControl() {
48
- return await this.locatorFor(SkyDatepickerInputHarness, SkyFuzzyDatepickerInputHarness)();
49
- }
50
- /**
51
- * Whether the datepicker calendar picker is open.
52
- */
53
- async isDatepickerOpen() {
54
- return ((await (await this.#getCalendarButton()).getAttribute('aria-expanded')) === 'true');
55
- }
56
- async #getAriaControls() {
57
- return await (await this.#getCalendarButton()).getAttribute('aria-controls');
58
- }
59
- }
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci1oYXJuZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2RhdGV0aW1lL3Rlc3Rpbmcvc3JjL21vZHVsZXMvZGF0ZXBpY2tlci9kYXRlcGlja2VyLWhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFMUQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFN0UsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdkUsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFbEY7O0dBRUc7QUFDSCxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsbUJBQW1CO0lBQzNEOztPQUVHO2FBQ1csaUJBQVksR0FBRyxrQ0FBa0MsQ0FBQztJQUVoRSxvQkFBb0IsR0FBRyxJQUFJLENBQUMsMEJBQTBCLEVBQUUsQ0FBQztJQUV6RCxrQkFBa0IsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGlDQUFpQyxDQUFDLENBQUM7SUFFeEU7Ozs7Ozs7O09BUUc7SUFDSSxNQUFNLENBQUMsSUFBSSxDQUNoQixPQUE2QjtRQUU3QixPQUFPLG9CQUFvQixDQUFDLHFCQUFxQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxtQkFBbUI7UUFDOUIsT0FBTyxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3pELENBQUM7SUFFRDs7O09BR0c7SUFDSSxLQUFLLENBQUMscUJBQXFCO1FBQ2hDLE1BQU0sVUFBVSxHQUFHLE1BQU0sSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFFakQsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ2hCLE1BQU0sSUFBSSxLQUFLLENBQ2IseURBQXlELENBQzFELENBQUM7UUFDSixDQUFDO1FBRUQsT0FBTyxNQUFNLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxVQUFVLENBQy9DLDRCQUE0QixDQUFDLElBQUksQ0FBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLFVBQVUsRUFBRSxFQUFFLENBQUMsQ0FDbEUsRUFBRSxDQUFDO0lBQ04sQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLFVBQVU7UUFHckIsT0FBTyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQzFCLHlCQUF5QixFQUN6Qiw4QkFBOEIsQ0FDL0IsRUFBRSxDQUFDO0lBQ04sQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLGdCQUFnQjtRQUMzQixPQUFPLENBQ0wsQ0FBQyxNQUFNLENBQ0wsTUFBTSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FDaEMsQ0FBQyxZQUFZLENBQUMsZUFBZSxDQUFDLENBQUMsS0FBSyxNQUFNLENBQzVDLENBQUM7SUFDSixDQUFDO0lBRUQsS0FBSyxDQUFDLGdCQUFnQjtRQUNwQixPQUFPLE1BQU0sQ0FDWCxNQUFNLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUNoQyxDQUFDLFlBQVksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUNsQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSGFybmVzc1ByZWRpY2F0ZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXN0aW5nJztcbmltcG9ydCB7IFNreUNvbXBvbmVudEhhcm5lc3MgfSBmcm9tICdAc2t5dXgvY29yZS90ZXN0aW5nJztcblxuaW1wb3J0IHsgU2t5RGF0ZXBpY2tlckNhbGVuZGFySGFybmVzcyB9IGZyb20gJy4vZGF0ZXBpY2tlci1jYWxlbmRhci1oYXJuZXNzJztcbmltcG9ydCB7IFNreURhdGVwaWNrZXJGaWx0ZXJzIH0gZnJvbSAnLi9kYXRlcGlja2VyLWhhcm5lc3MuZmlsdGVycyc7XG5pbXBvcnQgeyBTa3lEYXRlcGlja2VySW5wdXRIYXJuZXNzIH0gZnJvbSAnLi9kYXRlcGlja2VyLWlucHV0LWhhcm5lc3MnO1xuaW1wb3J0IHsgU2t5RnV6enlEYXRlcGlja2VySW5wdXRIYXJuZXNzIH0gZnJvbSAnLi9mdXp6eS1kYXRlcGlja2VyLWlucHV0LWhhcm5lc3MnO1xuXG4vKipcbiAqIEhhcm5lc3MgZm9yIGludGVyYWN0aW5nIHdpdGggZGF0ZXBpY2tlciBjb21wb25lbnRzIGluIHRlc3RzLlxuICovXG5leHBvcnQgY2xhc3MgU2t5RGF0ZXBpY2tlckhhcm5lc3MgZXh0ZW5kcyBTa3lDb21wb25lbnRIYXJuZXNzIHtcbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBob3N0U2VsZWN0b3IgPSAnc2t5LWRhdGVwaWNrZXIsIC5za3ktaW5wdXQtZ3JvdXAnO1xuXG4gICNkb2N1bWVudFJvb3RMb2NhdG9yID0gdGhpcy5kb2N1bWVudFJvb3RMb2NhdG9yRmFjdG9yeSgpO1xuXG4gICNnZXRDYWxlbmRhckJ1dHRvbiA9IHRoaXMubG9jYXRvckZvcignLnNreS1pbnB1dC1ncm91cC1kYXRlcGlja2VyLWJ0bicpO1xuXG4gIC8qKlxuICAgKiBHZXRzIGEgYEhhcm5lc3NQcmVkaWNhdGVgIHRoYXQgY2FuIGJlIHVzZWQgdG8gc2VhcmNoIGZvciBhXG4gICAqIGBTa3lEYXRlcGlja2VySGFybmVzc2AgdGhhdCBtZWV0cyBjZXJ0YWluIGNyaXRlcmlhLlxuICAgKlxuICAgKiBUaGVzZSBmaWx0ZXJzIG9ubHkgd29yayBmb3Igc3RhbmRhbG9uZSBkYXRlcGlja2Vycy4gRm9yIGRhdGVwaWNrZXJzXG4gICAqIHdyYXBwZWQgaW5zaWRlIGBza3ktaW5wdXQtYm94YCwgcGxhY2UgZmlsdGVycyBvbiB0aGUgaW5wdXQgYm94IGluc3RlYWQgYW5kXG4gICAqIHF1ZXJ5IHRoZSBkYXRlcGlja2VyIHVzaW5nIGEgYFNreUlucHV0Qm94SGFybmVzc2AuXG4gICAqIEZvciB0aGUgaW5wdXQgYm94IGltcGxlbWVudGF0aW9uLCBzZWUgdGhlIGNvZGUgZXhhbXBsZS5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgd2l0aChcbiAgICBmaWx0ZXJzOiBTa3lEYXRlcGlja2VyRmlsdGVycyxcbiAgKTogSGFybmVzc1ByZWRpY2F0ZTxTa3lEYXRlcGlja2VySGFybmVzcz4ge1xuICAgIHJldHVybiBTa3lEYXRlcGlja2VySGFybmVzcy5nZXREYXRhU2t5SWRQcmVkaWNhdGUoZmlsdGVycyk7XG4gIH1cblxuICAvKipcbiAgICogQ2xpY2tzIHRoZSBjYWxlbmRhciBidXR0b24uXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgY2xpY2tDYWxlbmRhckJ1dHRvbigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICByZXR1cm4gYXdhaXQgKGF3YWl0IHRoaXMuI2dldENhbGVuZGFyQnV0dG9uKCkpLmNsaWNrKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgYFNreURhdGVwaWNrZXJDYWxlbmRhckhhcm5lc3NgIGZvciB0aGUgY2FsZW5kYXIgcGlja2VyIGNvbnRyb2xsZWQgYnlcbiAgICogdGhlIGRhdGVwaWNrZXIuIFRocm93cyBhbiBlcnJvciBpZiB0aGUgY2FsZW5kYXIgcGlja2VyIGlzIG5vdCBvcGVuLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldERhdGVwaWNrZXJDYWxlbmRhcigpOiBQcm9taXNlPFNreURhdGVwaWNrZXJDYWxlbmRhckhhcm5lc3M+IHtcbiAgICBjb25zdCBjYWxlbmRhcklkID0gYXdhaXQgdGhpcy4jZ2V0QXJpYUNvbnRyb2xzKCk7XG5cbiAgICBpZiAoIWNhbGVuZGFySWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ1VuYWJsZSB0byBnZXQgY2FsZW5kYXIgcGlja2VyIGJlY2F1c2UgcGlja2VyIGlzIGNsb3NlZC4nLFxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gYXdhaXQgdGhpcy4jZG9jdW1lbnRSb290TG9jYXRvci5sb2NhdG9yRm9yKFxuICAgICAgU2t5RGF0ZXBpY2tlckNhbGVuZGFySGFybmVzcy53aXRoKHsgc2VsZWN0b3I6IGAjJHtjYWxlbmRhcklkfWAgfSksXG4gICAgKSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGRhdGVwaWNrZXIgaW5wdXQgaGFybmVzcy5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRDb250cm9sKCk6IFByb21pc2U8XG4gICAgU2t5RGF0ZXBpY2tlcklucHV0SGFybmVzcyB8IFNreUZ1enp5RGF0ZXBpY2tlcklucHV0SGFybmVzc1xuICA+IHtcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5sb2NhdG9yRm9yKFxuICAgICAgU2t5RGF0ZXBpY2tlcklucHV0SGFybmVzcyxcbiAgICAgIFNreUZ1enp5RGF0ZXBpY2tlcklucHV0SGFybmVzcyxcbiAgICApKCk7XG4gIH1cblxuICAvKipcbiAgICogV2hldGhlciB0aGUgZGF0ZXBpY2tlciBjYWxlbmRhciBwaWNrZXIgaXMgb3Blbi5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBpc0RhdGVwaWNrZXJPcGVuKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiAoXG4gICAgICAoYXdhaXQgKFxuICAgICAgICBhd2FpdCB0aGlzLiNnZXRDYWxlbmRhckJ1dHRvbigpXG4gICAgICApLmdldEF0dHJpYnV0ZSgnYXJpYS1leHBhbmRlZCcpKSA9PT0gJ3RydWUnXG4gICAgKTtcbiAgfVxuXG4gIGFzeW5jICNnZXRBcmlhQ29udHJvbHMoKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgcmV0dXJuIGF3YWl0IChcbiAgICAgIGF3YWl0IHRoaXMuI2dldENhbGVuZGFyQnV0dG9uKClcbiAgICApLmdldEF0dHJpYnV0ZSgnYXJpYS1jb250cm9scycpO1xuICB9XG59XG4iXX0=
@@ -1,29 +0,0 @@
1
- import { SkyInputHarness } from '@skyux/core/testing';
2
- /**
3
- * Harness to interact with the datepicker input harness.
4
- */
5
- export class SkyDatepickerInputHarness extends SkyInputHarness {
6
- /**
7
- * @internal
8
- */
9
- static { this.hostSelector = '[skyDatepickerInput]'; }
10
- /**
11
- * Blurs the input.
12
- */
13
- async blur() {
14
- await super.blur();
15
- const host = await this.host();
16
- await host.dispatchEvent('focusout', {
17
- relatedTarget: null,
18
- });
19
- }
20
- /**
21
- * Sets the value of the input.
22
- */
23
- async setValue(value) {
24
- await super.setValue(value);
25
- await this.blur();
26
- await (await this.host()).dispatchEvent('change');
27
- }
28
- }
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci1pbnB1dC1oYXJuZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2RhdGV0aW1lL3Rlc3Rpbmcvc3JjL21vZHVsZXMvZGF0ZXBpY2tlci9kYXRlcGlja2VyLWlucHV0LWhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXREOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHlCQUEwQixTQUFRLGVBQWU7SUFDNUQ7O09BRUc7YUFDVyxpQkFBWSxHQUFHLHNCQUFzQixDQUFDO0lBRXBEOztPQUVHO0lBQ2EsS0FBSyxDQUFDLElBQUk7UUFDeEIsTUFBTSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFbkIsTUFBTSxJQUFJLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFL0IsTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsRUFBRTtZQUNuQyxhQUFhLEVBQUUsSUFBSTtTQUNwQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDYSxLQUFLLENBQUMsUUFBUSxDQUFDLEtBQWE7UUFDMUMsTUFBTSxLQUFLLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTVCLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2xCLE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNwRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2t5SW5wdXRIYXJuZXNzIH0gZnJvbSAnQHNreXV4L2NvcmUvdGVzdGluZyc7XG5cbi8qKlxuICogSGFybmVzcyB0byBpbnRlcmFjdCB3aXRoIHRoZSBkYXRlcGlja2VyIGlucHV0IGhhcm5lc3MuXG4gKi9cbmV4cG9ydCBjbGFzcyBTa3lEYXRlcGlja2VySW5wdXRIYXJuZXNzIGV4dGVuZHMgU2t5SW5wdXRIYXJuZXNzIHtcbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBob3N0U2VsZWN0b3IgPSAnW3NreURhdGVwaWNrZXJJbnB1dF0nO1xuXG4gIC8qKlxuICAgKiBCbHVycyB0aGUgaW5wdXQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgYXN5bmMgYmx1cigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCBzdXBlci5ibHVyKCk7XG5cbiAgICBjb25zdCBob3N0ID0gYXdhaXQgdGhpcy5ob3N0KCk7XG5cbiAgICBhd2FpdCBob3N0LmRpc3BhdGNoRXZlbnQoJ2ZvY3Vzb3V0Jywge1xuICAgICAgcmVsYXRlZFRhcmdldDogbnVsbCxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgaW5wdXQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgYXN5bmMgc2V0VmFsdWUodmFsdWU6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHN1cGVyLnNldFZhbHVlKHZhbHVlKTtcblxuICAgIGF3YWl0IHRoaXMuYmx1cigpO1xuICAgIGF3YWl0IChhd2FpdCB0aGlzLmhvc3QoKSkuZGlzcGF0Y2hFdmVudCgnY2hhbmdlJyk7XG4gIH1cbn1cbiJdfQ==
@@ -1,29 +0,0 @@
1
- import { SkyInputHarness } from '@skyux/core/testing';
2
- /**
3
- * Harness to interact with the fuzzy datepicker input harness.
4
- */
5
- export class SkyFuzzyDatepickerInputHarness extends SkyInputHarness {
6
- /**
7
- * @internal
8
- */
9
- static { this.hostSelector = '[skyFuzzyDatepickerInput]'; }
10
- /**
11
- * Blurs the input.
12
- */
13
- async blur() {
14
- await super.blur();
15
- const host = await this.host();
16
- await host.dispatchEvent('focusout', {
17
- relatedTarget: null,
18
- });
19
- }
20
- /**
21
- * Sets the value of the input.
22
- */
23
- async setValue(value) {
24
- await super.setValue(value);
25
- await (await this.host()).dispatchEvent('change');
26
- await this.blur();
27
- }
28
- }
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnV6enktZGF0ZXBpY2tlci1pbnB1dC1oYXJuZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2RhdGV0aW1lL3Rlc3Rpbmcvc3JjL21vZHVsZXMvZGF0ZXBpY2tlci9mdXp6eS1kYXRlcGlja2VyLWlucHV0LWhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXREOztHQUVHO0FBQ0gsTUFBTSxPQUFPLDhCQUErQixTQUFRLGVBQWU7SUFDakU7O09BRUc7YUFDVyxpQkFBWSxHQUFHLDJCQUEyQixDQUFDO0lBRXpEOztPQUVHO0lBQ2EsS0FBSyxDQUFDLElBQUk7UUFDeEIsTUFBTSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFbkIsTUFBTSxJQUFJLEdBQUcsTUFBTSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFL0IsTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsRUFBRTtZQUNuQyxhQUFhLEVBQUUsSUFBSTtTQUNwQixDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7O09BRUc7SUFDYSxLQUFLLENBQUMsUUFBUSxDQUFDLEtBQWE7UUFDMUMsTUFBTSxLQUFLLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRTVCLE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNsRCxNQUFNLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNwQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2t5SW5wdXRIYXJuZXNzIH0gZnJvbSAnQHNreXV4L2NvcmUvdGVzdGluZyc7XG5cbi8qKlxuICogSGFybmVzcyB0byBpbnRlcmFjdCB3aXRoIHRoZSBmdXp6eSBkYXRlcGlja2VyIGlucHV0IGhhcm5lc3MuXG4gKi9cbmV4cG9ydCBjbGFzcyBTa3lGdXp6eURhdGVwaWNrZXJJbnB1dEhhcm5lc3MgZXh0ZW5kcyBTa3lJbnB1dEhhcm5lc3Mge1xuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGhvc3RTZWxlY3RvciA9ICdbc2t5RnV6enlEYXRlcGlja2VySW5wdXRdJztcblxuICAvKipcbiAgICogQmx1cnMgdGhlIGlucHV0LlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGFzeW5jIGJsdXIoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgc3VwZXIuYmx1cigpO1xuXG4gICAgY29uc3QgaG9zdCA9IGF3YWl0IHRoaXMuaG9zdCgpO1xuXG4gICAgYXdhaXQgaG9zdC5kaXNwYXRjaEV2ZW50KCdmb2N1c291dCcsIHtcbiAgICAgIHJlbGF0ZWRUYXJnZXQ6IG51bGwsXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlIGlucHV0LlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIGFzeW5jIHNldFZhbHVlKHZhbHVlOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCBzdXBlci5zZXRWYWx1ZSh2YWx1ZSk7XG5cbiAgICBhd2FpdCAoYXdhaXQgdGhpcy5ob3N0KCkpLmRpc3BhdGNoRXZlbnQoJ2NoYW5nZScpO1xuICAgIGF3YWl0IHRoaXMuYmx1cigpO1xuICB9XG59XG4iXX0=
@@ -1,6 +0,0 @@
1
- export { SkyDatepickerFixture } from './legacy/datepicker-fixture';
2
- export { SkyTimepickerFixture } from './legacy/timepicker-fixture';
3
- export { SkyDateRangePickerHarness } from './modules/date-range-picker/date-range-picker-harness';
4
- export { SkyDatepickerCalendarHarness } from './modules/datepicker/datepicker-calendar-harness';
5
- export { SkyDatepickerHarness } from './modules/datepicker/datepicker-harness';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9kYXRldGltZS90ZXN0aW5nL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRW5FLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBR2xHLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBRWhHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgU2t5RGF0ZXBpY2tlckZpeHR1cmUgfSBmcm9tICcuL2xlZ2FjeS9kYXRlcGlja2VyLWZpeHR1cmUnO1xuZXhwb3J0IHsgU2t5VGltZXBpY2tlckZpeHR1cmUgfSBmcm9tICcuL2xlZ2FjeS90aW1lcGlja2VyLWZpeHR1cmUnO1xuXG5leHBvcnQgeyBTa3lEYXRlUmFuZ2VQaWNrZXJIYXJuZXNzIH0gZnJvbSAnLi9tb2R1bGVzL2RhdGUtcmFuZ2UtcGlja2VyL2RhdGUtcmFuZ2UtcGlja2VyLWhhcm5lc3MnO1xuZXhwb3J0IHsgU2t5RGF0ZVJhbmdlUGlja2VyRmlsdGVycyB9IGZyb20gJy4vbW9kdWxlcy9kYXRlLXJhbmdlLXBpY2tlci9kYXRlLXJhbmdlLXBpY2tlci1oYXJuZXNzLmZpbHRlcnMnO1xuXG5leHBvcnQgeyBTa3lEYXRlcGlja2VyQ2FsZW5kYXJIYXJuZXNzIH0gZnJvbSAnLi9tb2R1bGVzL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci1jYWxlbmRhci1oYXJuZXNzJztcbmV4cG9ydCB7IFNreURhdGVwaWNrZXJDYWxlbmRhckhhcm5lc3NGaWx0ZXJzIH0gZnJvbSAnLi9tb2R1bGVzL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci1jYWxlbmRhci1oYXJuZXNzLmZpbHRlcnMnO1xuZXhwb3J0IHsgU2t5RGF0ZXBpY2tlckhhcm5lc3MgfSBmcm9tICcuL21vZHVsZXMvZGF0ZXBpY2tlci9kYXRlcGlja2VyLWhhcm5lc3MnO1xuZXhwb3J0IHsgU2t5RGF0ZXBpY2tlckZpbHRlcnMgfSBmcm9tICcuL21vZHVsZXMvZGF0ZXBpY2tlci9kYXRlcGlja2VyLWhhcm5lc3MuZmlsdGVycyc7XG4iXX0=
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2t5dXgtZGF0ZXRpbWUtdGVzdGluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9kYXRldGltZS90ZXN0aW5nL3NyYy9za3l1eC1kYXRldGltZS10ZXN0aW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=