@skyux/datetime 11.39.0 → 12.0.0-alpha.1
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 +1004 -2555
- package/fesm2022/skyux-datetime-testing.mjs +4 -3
- package/fesm2022/skyux-datetime-testing.mjs.map +1 -1
- package/fesm2022/skyux-datetime.mjs +105 -102
- package/fesm2022/skyux-datetime.mjs.map +1 -1
- package/package.json +15 -19
- package/testing/modules/datepicker/datepicker-calendar-harness.d.ts +3 -2
- package/testing/public-api.d.ts +0 -2
- package/esm2022/index.mjs +0 -23
- package/esm2022/lib/modules/date-pipe/date-pipe.module.mjs +0 -20
- package/esm2022/lib/modules/date-pipe/date.pipe.mjs +0 -68
- package/esm2022/lib/modules/date-pipe/date.service.mjs +0 -94
- package/esm2022/lib/modules/date-pipe/fuzzy-date.pipe.mjs +0 -47
- package/esm2022/lib/modules/date-range-picker/date-range-picker-end-date-resource-key.pipe.mjs +0 -21
- package/esm2022/lib/modules/date-range-picker/date-range-picker-start-date-resource-key.pipe.mjs +0 -21
- package/esm2022/lib/modules/date-range-picker/date-range-picker.component.mjs +0 -445
- package/esm2022/lib/modules/date-range-picker/date-range-picker.module.mjs +0 -17
- package/esm2022/lib/modules/date-range-picker/date-range.service.mjs +0 -95
- package/esm2022/lib/modules/date-range-picker/types/date-range-calculation.mjs +0 -2
- package/esm2022/lib/modules/date-range-picker/types/date-range-calculator-config.mjs +0 -2
- package/esm2022/lib/modules/date-range-picker/types/date-range-calculator-date-range-function.mjs +0 -2
- package/esm2022/lib/modules/date-range-picker/types/date-range-calculator-id.mjs +0 -118
- package/esm2022/lib/modules/date-range-picker/types/date-range-calculator-type.mjs +0 -23
- package/esm2022/lib/modules/date-range-picker/types/date-range-calculator-validate-function.mjs +0 -2
- package/esm2022/lib/modules/date-range-picker/types/date-range-calculator.mjs +0 -71
- package/esm2022/lib/modules/date-range-picker/types/date-range-default-calculator-config.mjs +0 -2
- package/esm2022/lib/modules/date-range-picker/types/date-range-default-calculator-configs.mjs +0 -173
- package/esm2022/lib/modules/date-range-picker/types/date-range-relative-value.mjs +0 -249
- package/esm2022/lib/modules/date-range-picker/types/date-range.mjs +0 -2
- package/esm2022/lib/modules/datepicker/calendar/datepicker-calendar-change.mjs +0 -2
- package/esm2022/lib/modules/datepicker/calendar/datepicker-calendar-inner.component.mjs +0 -383
- package/esm2022/lib/modules/datepicker/calendar/datepicker-calendar-label.pipe.mjs +0 -39
- package/esm2022/lib/modules/datepicker/calendar/datepicker-calendar.component.mjs +0 -100
- package/esm2022/lib/modules/datepicker/calendar/datepicker-calendar.service.mjs +0 -22
- package/esm2022/lib/modules/datepicker/calendar/daypicker-button.component.mjs +0 -23
- package/esm2022/lib/modules/datepicker/calendar/daypicker-cell.component.mjs +0 -129
- package/esm2022/lib/modules/datepicker/calendar/daypicker-context.mjs +0 -2
- package/esm2022/lib/modules/datepicker/calendar/daypicker.component.mjs +0 -221
- package/esm2022/lib/modules/datepicker/calendar/monthpicker.component.mjs +0 -80
- package/esm2022/lib/modules/datepicker/calendar/yearpicker.component.mjs +0 -87
- package/esm2022/lib/modules/datepicker/date-formatter.mjs +0 -38
- package/esm2022/lib/modules/datepicker/datepicker-config.service.mjs +0 -21
- package/esm2022/lib/modules/datepicker/datepicker-custom-date.mjs +0 -2
- package/esm2022/lib/modules/datepicker/datepicker-host.service.mjs +0 -61
- package/esm2022/lib/modules/datepicker/datepicker-input.directive.mjs +0 -526
- package/esm2022/lib/modules/datepicker/datepicker.component.mjs +0 -419
- package/esm2022/lib/modules/datepicker/datepicker.module.mjs +0 -62
- package/esm2022/lib/modules/datepicker/fuzzy/datepicker-input-fuzzy.directive.mjs +0 -516
- package/esm2022/lib/modules/datepicker/fuzzy/fuzzy-date.mjs +0 -2
- package/esm2022/lib/modules/datepicker/fuzzy/fuzzy-date.service.mjs +0 -411
- package/esm2022/lib/modules/shared/sky-datetime-resources.module.mjs +0 -130
- package/esm2022/lib/modules/timepicker/timepicker-time-format-type.mjs +0 -2
- package/esm2022/lib/modules/timepicker/timepicker-time-output.mjs +0 -2
- package/esm2022/lib/modules/timepicker/timepicker.component.mjs +0 -415
- package/esm2022/lib/modules/timepicker/timepicker.directive.mjs +0 -226
- package/esm2022/lib/modules/timepicker/timepicker.module.mjs +0 -37
- package/esm2022/skyux-datetime.mjs +0 -5
- package/esm2022/testing/legacy/datepicker-fixture.mjs +0 -56
- package/esm2022/testing/legacy/timepicker-fixture.mjs +0 -52
- package/esm2022/testing/modules/date-range-picker/date-range-picker-harness.filters.mjs +0 -2
- package/esm2022/testing/modules/date-range-picker/date-range-picker-harness.mjs +0 -193
- package/esm2022/testing/modules/datepicker/datepicker-calendar-harness.filters.mjs +0 -2
- package/esm2022/testing/modules/datepicker/datepicker-calendar-harness.mjs +0 -87
- package/esm2022/testing/modules/datepicker/datepicker-harness.filters.mjs +0 -2
- package/esm2022/testing/modules/datepicker/datepicker-harness.mjs +0 -60
- package/esm2022/testing/modules/datepicker/datepicker-input-harness.mjs +0 -29
- package/esm2022/testing/modules/datepicker/fuzzy-datepicker-input-harness.mjs +0 -29
- package/esm2022/testing/public-api.mjs +0 -8
- 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,87 +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 in the following format
|
26
|
-
* day format: dddd, MMMM Do YYYY
|
27
|
-
* month format: MMMM YYYY
|
28
|
-
* year format: YYYY
|
29
|
-
*/
|
30
|
-
async clickDate(date) {
|
31
|
-
try {
|
32
|
-
await (await this.locatorFor(`[aria-label="${date}"]`)()).click();
|
33
|
-
}
|
34
|
-
catch {
|
35
|
-
throw new Error(`Unable to find date with label "${date}". Check that the format is correct and matches the current calendar mode.`);
|
36
|
-
}
|
37
|
-
}
|
38
|
-
/**
|
39
|
-
* Clicks the 'next' button on the calendar header.
|
40
|
-
*/
|
41
|
-
async clickNextButton() {
|
42
|
-
await (await this.#getNextButton()).click();
|
43
|
-
}
|
44
|
-
/**
|
45
|
-
* Clicks the 'previous' button on the calendar header.
|
46
|
-
*/
|
47
|
-
async clickPreviousButton() {
|
48
|
-
await (await this.#getPreviousButton()).click();
|
49
|
-
}
|
50
|
-
/**
|
51
|
-
* Clicks the 'title' button on the calendar header.
|
52
|
-
*/
|
53
|
-
async clickTitleButton() {
|
54
|
-
const button = await this.#getTitleButton();
|
55
|
-
if (await button.hasClass('sky-btn-disabled')) {
|
56
|
-
throw new Error('Title button is disabled.');
|
57
|
-
}
|
58
|
-
await button.click();
|
59
|
-
}
|
60
|
-
/**
|
61
|
-
* Gets the current calendar mode.
|
62
|
-
*/
|
63
|
-
async getCalendarMode() {
|
64
|
-
if (await this.#getDaypicker()) {
|
65
|
-
return 'day';
|
66
|
-
}
|
67
|
-
else if (await this.#getMonthpicker()) {
|
68
|
-
return 'month';
|
69
|
-
}
|
70
|
-
else {
|
71
|
-
return 'year';
|
72
|
-
}
|
73
|
-
}
|
74
|
-
/**
|
75
|
-
* Gets the current title.
|
76
|
-
*/
|
77
|
-
async getCalendarTitle() {
|
78
|
-
return (await (await this.#getTitle()).text()).trim();
|
79
|
-
}
|
80
|
-
/**
|
81
|
-
* Gets the long date value of the currently selected calendar item.
|
82
|
-
*/
|
83
|
-
async getSelectedValue() {
|
84
|
-
return await (await this.#getSelected()).getAttribute('aria-label');
|
85
|
-
}
|
86
|
-
}
|
87
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci1jYWxlbmRhci1oYXJuZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2RhdGV0aW1lL3Rlc3Rpbmcvc3JjL21vZHVsZXMvZGF0ZXBpY2tlci9kYXRlcGlja2VyLWNhbGVuZGFyLWhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFJMUQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsbUJBQW1CO0lBQ25FOztPQUVHO2FBQ1csaUJBQVksR0FBRyxvQ0FBb0MsQ0FBQztJQUVsRSxhQUFhLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ3pELGVBQWUsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUM3RCxjQUFjLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO0lBQzdELGtCQUFrQixHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsOEJBQThCLENBQUMsQ0FBQztJQUNyRSxZQUFZLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO0lBQy9ELFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGdDQUFnQyxDQUFDLENBQUM7SUFDOUQsZUFBZSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztJQUVwRTs7T0FFRztJQUNJLE1BQU0sQ0FBQyxJQUFJLENBQ2hCLE9BQTRDO1FBRTVDLE9BQU8sSUFBSSxnQkFBZ0IsQ0FBQyw0QkFBNEIsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNyRSxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxLQUFLLENBQUMsU0FBUyxDQUFDLElBQVk7UUFDakMsSUFBSSxDQUFDO1lBQ0gsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDcEUsQ0FBQztRQUFDLE1BQU0sQ0FBQztZQUNQLE1BQU0sSUFBSSxLQUFLLENBQ2IsbUNBQW1DLElBQUksNEVBQTRFLENBQ3BILENBQUM7UUFDSixDQUFDO0lBQ0gsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLGVBQWU7UUFDMUIsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDOUMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLG1CQUFtQjtRQUM5QixNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ2xELENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxnQkFBZ0I7UUFDM0IsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFFNUMsSUFBSSxNQUFNLE1BQU0sQ0FBQyxRQUFRLENBQUMsa0JBQWtCLENBQUMsRUFBRSxDQUFDO1lBQzlDLE1BQU0sSUFBSSxLQUFLLENBQUMsMkJBQTJCLENBQUMsQ0FBQztRQUMvQyxDQUFDO1FBRUQsTUFBTSxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLGVBQWU7UUFDMUIsSUFBSSxNQUFNLElBQUksQ0FBQyxhQUFhLEVBQUUsRUFBRSxDQUFDO1lBQy9CLE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQzthQUFNLElBQUksTUFBTSxJQUFJLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FBQztZQUN4QyxPQUFPLE9BQU8sQ0FBQztRQUNqQixDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sTUFBTSxDQUFDO1FBQ2hCLENBQUM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsZ0JBQWdCO1FBQzNCLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3hELENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxnQkFBZ0I7UUFDM0IsT0FBTyxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDdEUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEhhcm5lc3NQcmVkaWNhdGUgfSBmcm9tICdAYW5ndWxhci9jZGsvdGVzdGluZyc7XG5pbXBvcnQgeyBTa3lDb21wb25lbnRIYXJuZXNzIH0gZnJvbSAnQHNreXV4L2NvcmUvdGVzdGluZyc7XG5cbmltcG9ydCB7IFNreURhdGVwaWNrZXJDYWxlbmRhckhhcm5lc3NGaWx0ZXJzIH0gZnJvbSAnLi9kYXRlcGlja2VyLWNhbGVuZGFyLWhhcm5lc3MuZmlsdGVycyc7XG5cbi8qKlxuICogSGFybmVzcyBmb3IgaW50ZXJhY3Rpbmcgd2l0aCBkYXRlcGlja2VyIGNhbGVuZGFyIGluIHRlc3RzLlxuICovXG5leHBvcnQgY2xhc3MgU2t5RGF0ZXBpY2tlckNhbGVuZGFySGFybmVzcyBleHRlbmRzIFNreUNvbXBvbmVudEhhcm5lc3Mge1xuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGhvc3RTZWxlY3RvciA9ICcuc2t5LWRhdGVwaWNrZXItY2FsZW5kYXItY29udGFpbmVyJztcblxuICAjZ2V0RGF5cGlja2VyID0gdGhpcy5sb2NhdG9yRm9yT3B0aW9uYWwoJ3NreS1kYXlwaWNrZXInKTtcbiAgI2dldE1vbnRocGlja2VyID0gdGhpcy5sb2NhdG9yRm9yT3B0aW9uYWwoJ3NreS1tb250aHBpY2tlcicpO1xuICAjZ2V0TmV4dEJ1dHRvbiA9IHRoaXMubG9jYXRvckZvcignLnNreS1kYXRlcGlja2VyLWJ0bi1uZXh0Jyk7XG4gICNnZXRQcmV2aW91c0J1dHRvbiA9IHRoaXMubG9jYXRvckZvcignLnNreS1kYXRlcGlja2VyLWJ0bi1wcmV2aW91cycpO1xuICAjZ2V0U2VsZWN0ZWQgPSB0aGlzLmxvY2F0b3JGb3IoJy5za3ktZGF0ZXBpY2tlci1idG4tc2VsZWN0ZWQnKTtcbiAgI2dldFRpdGxlID0gdGhpcy5sb2NhdG9yRm9yKCcuc2t5LWRhdGVwaWNrZXItY2FsZW5kYXItdGl0bGUnKTtcbiAgI2dldFRpdGxlQnV0dG9uID0gdGhpcy5sb2NhdG9yRm9yKCcuc2t5LWRhdGVwaWNrZXItY2FsZW5kYXItdGl0bGUnKTtcblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHdpdGgoXG4gICAgZmlsdGVyczogU2t5RGF0ZXBpY2tlckNhbGVuZGFySGFybmVzc0ZpbHRlcnMsXG4gICk6IEhhcm5lc3NQcmVkaWNhdGU8U2t5RGF0ZXBpY2tlckNhbGVuZGFySGFybmVzcz4ge1xuICAgIHJldHVybiBuZXcgSGFybmVzc1ByZWRpY2F0ZShTa3lEYXRlcGlja2VyQ2FsZW5kYXJIYXJuZXNzLCBmaWx0ZXJzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbGlja3MgdGhlIHNwZWNpZmllZCBkYXRlLCBtb250aCBvciB5ZWFyIGluIHRoZSBmb2xsb3dpbmcgZm9ybWF0XG4gICAqIGRheSBmb3JtYXQ6IGRkZGQsIE1NTU0gRG8gWVlZWVxuICAgKiBtb250aCBmb3JtYXQ6IE1NTU0gWVlZWVxuICAgKiB5ZWFyIGZvcm1hdDogWVlZWVxuICAgKi9cbiAgcHVibGljIGFzeW5jIGNsaWNrRGF0ZShkYXRlOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0cnkge1xuICAgICAgYXdhaXQgKGF3YWl0IHRoaXMubG9jYXRvckZvcihgW2FyaWEtbGFiZWw9XCIke2RhdGV9XCJdYCkoKSkuY2xpY2soKTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYFVuYWJsZSB0byBmaW5kIGRhdGUgd2l0aCBsYWJlbCBcIiR7ZGF0ZX1cIi4gQ2hlY2sgdGhhdCB0aGUgZm9ybWF0IGlzIGNvcnJlY3QgYW5kIG1hdGNoZXMgdGhlIGN1cnJlbnQgY2FsZW5kYXIgbW9kZS5gLFxuICAgICAgKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogIENsaWNrcyB0aGUgJ25leHQnIGJ1dHRvbiBvbiB0aGUgY2FsZW5kYXIgaGVhZGVyLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGNsaWNrTmV4dEJ1dHRvbigpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0TmV4dEJ1dHRvbigpKS5jbGljaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsaWNrcyB0aGUgJ3ByZXZpb3VzJyBidXR0b24gb24gdGhlIGNhbGVuZGFyIGhlYWRlci5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBjbGlja1ByZXZpb3VzQnV0dG9uKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IChhd2FpdCB0aGlzLiNnZXRQcmV2aW91c0J1dHRvbigpKS5jbGljaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsaWNrcyB0aGUgJ3RpdGxlJyBidXR0b24gb24gdGhlIGNhbGVuZGFyIGhlYWRlci5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBjbGlja1RpdGxlQnV0dG9uKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGJ1dHRvbiA9IGF3YWl0IHRoaXMuI2dldFRpdGxlQnV0dG9uKCk7XG5cbiAgICBpZiAoYXdhaXQgYnV0dG9uLmhhc0NsYXNzKCdza3ktYnRuLWRpc2FibGVkJykpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVGl0bGUgYnV0dG9uIGlzIGRpc2FibGVkLicpO1xuICAgIH1cblxuICAgIGF3YWl0IGJ1dHRvbi5jbGljaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGN1cnJlbnQgY2FsZW5kYXIgbW9kZS5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRDYWxlbmRhck1vZGUoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICBpZiAoYXdhaXQgdGhpcy4jZ2V0RGF5cGlja2VyKCkpIHtcbiAgICAgIHJldHVybiAnZGF5JztcbiAgICB9IGVsc2UgaWYgKGF3YWl0IHRoaXMuI2dldE1vbnRocGlja2VyKCkpIHtcbiAgICAgIHJldHVybiAnbW9udGgnO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gJ3llYXInO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBjdXJyZW50IHRpdGxlLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldENhbGVuZGFyVGl0bGUoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gKGF3YWl0IChhd2FpdCB0aGlzLiNnZXRUaXRsZSgpKS50ZXh0KCkpLnRyaW0oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBsb25nIGRhdGUgdmFsdWUgb2YgdGhlIGN1cnJlbnRseSBzZWxlY3RlZCBjYWxlbmRhciBpdGVtLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldFNlbGVjdGVkVmFsdWUoKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgcmV0dXJuIGF3YWl0IChhd2FpdCB0aGlzLiNnZXRTZWxlY3RlZCgpKS5nZXRBdHRyaWJ1dGUoJ2FyaWEtbGFiZWwnKTtcbiAgfVxufVxuIl19
|
@@ -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,8 +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
|
-
export { SkyDatepickerInputHarness } from './modules/datepicker/datepicker-input-harness';
|
7
|
-
export { SkyFuzzyDatepickerInputHarness } from './modules/datepicker/fuzzy-datepicker-input-harness';
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9kYXRldGltZS90ZXN0aW5nL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRW5FLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHVEQUF1RCxDQUFDO0FBR2xHLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBRWhHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBRS9FLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQzFGLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgU2t5RGF0ZXBpY2tlckZpeHR1cmUgfSBmcm9tICcuL2xlZ2FjeS9kYXRlcGlja2VyLWZpeHR1cmUnO1xuZXhwb3J0IHsgU2t5VGltZXBpY2tlckZpeHR1cmUgfSBmcm9tICcuL2xlZ2FjeS90aW1lcGlja2VyLWZpeHR1cmUnO1xuXG5leHBvcnQgeyBTa3lEYXRlUmFuZ2VQaWNrZXJIYXJuZXNzIH0gZnJvbSAnLi9tb2R1bGVzL2RhdGUtcmFuZ2UtcGlja2VyL2RhdGUtcmFuZ2UtcGlja2VyLWhhcm5lc3MnO1xuZXhwb3J0IHsgU2t5RGF0ZVJhbmdlUGlja2VyRmlsdGVycyB9IGZyb20gJy4vbW9kdWxlcy9kYXRlLXJhbmdlLXBpY2tlci9kYXRlLXJhbmdlLXBpY2tlci1oYXJuZXNzLmZpbHRlcnMnO1xuXG5leHBvcnQgeyBTa3lEYXRlcGlja2VyQ2FsZW5kYXJIYXJuZXNzIH0gZnJvbSAnLi9tb2R1bGVzL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci1jYWxlbmRhci1oYXJuZXNzJztcbmV4cG9ydCB7IFNreURhdGVwaWNrZXJDYWxlbmRhckhhcm5lc3NGaWx0ZXJzIH0gZnJvbSAnLi9tb2R1bGVzL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci1jYWxlbmRhci1oYXJuZXNzLmZpbHRlcnMnO1xuZXhwb3J0IHsgU2t5RGF0ZXBpY2tlckhhcm5lc3MgfSBmcm9tICcuL21vZHVsZXMvZGF0ZXBpY2tlci9kYXRlcGlja2VyLWhhcm5lc3MnO1xuZXhwb3J0IHsgU2t5RGF0ZXBpY2tlckZpbHRlcnMgfSBmcm9tICcuL21vZHVsZXMvZGF0ZXBpY2tlci9kYXRlcGlja2VyLWhhcm5lc3MuZmlsdGVycyc7XG5leHBvcnQgeyBTa3lEYXRlcGlja2VySW5wdXRIYXJuZXNzIH0gZnJvbSAnLi9tb2R1bGVzL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci1pbnB1dC1oYXJuZXNzJztcbmV4cG9ydCB7IFNreUZ1enp5RGF0ZXBpY2tlcklucHV0SGFybmVzcyB9IGZyb20gJy4vbW9kdWxlcy9kYXRlcGlja2VyL2Z1enp5LWRhdGVwaWNrZXItaW5wdXQtaGFybmVzcyc7XG4iXX0=
|
@@ -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=
|