@skyux/datetime 11.22.0 → 11.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/documentation.json +2248 -2178
- package/esm2022/lib/modules/date-range-picker/date-range-picker.component.mjs +20 -5
- package/esm2022/lib/modules/datepicker/datepicker-calendar-inner.component.mjs +2 -2
- package/esm2022/lib/modules/datepicker/datepicker-host.service.mjs +61 -0
- package/esm2022/lib/modules/datepicker/datepicker-input-fuzzy.directive.mjs +27 -10
- package/esm2022/lib/modules/datepicker/datepicker-input.directive.mjs +27 -15
- package/esm2022/lib/modules/datepicker/datepicker.component.mjs +16 -3
- package/esm2022/lib/modules/datepicker/daypicker-button.component.mjs +2 -2
- package/esm2022/lib/modules/timepicker/timepicker.component.mjs +6 -3
- package/esm2022/testing/legacy/datepicker-fixture.mjs +56 -0
- package/esm2022/testing/legacy/timepicker-fixture.mjs +52 -0
- package/esm2022/testing/modules/date-range-picker/date-range-picker-harness.filters.mjs +2 -0
- package/esm2022/testing/modules/date-range-picker/date-range-picker-harness.mjs +143 -0
- package/esm2022/testing/modules/datepicker/datepicker-calendar-harness.filters.mjs +2 -0
- package/esm2022/testing/modules/datepicker/datepicker-calendar-harness.mjs +88 -0
- package/esm2022/testing/modules/datepicker/datepicker-harness.filters.mjs +2 -0
- package/esm2022/testing/modules/datepicker/datepicker-harness.mjs +59 -0
- package/esm2022/testing/modules/datepicker/datepicker-input-harness.mjs +29 -0
- package/esm2022/testing/public-api.mjs +6 -6
- package/fesm2022/skyux-datetime-testing.mjs +157 -146
- package/fesm2022/skyux-datetime-testing.mjs.map +1 -1
- package/fesm2022/skyux-datetime.mjs +145 -33
- package/fesm2022/skyux-datetime.mjs.map +1 -1
- package/lib/modules/datepicker/datepicker-host.service.d.ts +21 -0
- package/lib/modules/datepicker/datepicker-input-fuzzy.directive.d.ts +1 -0
- package/lib/modules/datepicker/datepicker-input.directive.d.ts +1 -1
- package/lib/modules/datepicker/datepicker.component.d.ts +8 -2
- package/lib/modules/timepicker/timepicker.component.d.ts +1 -0
- package/package.json +9 -9
- package/testing/{datepicker-fixture.d.ts → legacy/datepicker-fixture.d.ts} +1 -0
- package/testing/{datepicker → modules/datepicker}/datepicker-harness.d.ts +1 -1
- package/testing/{datepicker/datepicker-harness-input.d.ts → modules/datepicker/datepicker-input-harness.d.ts} +4 -0
- package/testing/public-api.d.ts +8 -8
- package/esm2022/testing/date-range-picker/date-range-picker-harness.filters.mjs +0 -2
- package/esm2022/testing/date-range-picker/date-range-picker-harness.mjs +0 -143
- package/esm2022/testing/datepicker/datepicker-calendar-harness.filters.mjs +0 -2
- package/esm2022/testing/datepicker/datepicker-calendar-harness.mjs +0 -88
- package/esm2022/testing/datepicker/datepicker-harness-input.mjs +0 -19
- package/esm2022/testing/datepicker/datepicker-harness.filters.mjs +0 -2
- package/esm2022/testing/datepicker/datepicker-harness.mjs +0 -59
- package/esm2022/testing/datepicker-fixture.mjs +0 -55
- package/esm2022/testing/timepicker-fixture.mjs +0 -52
- /package/testing/{timepicker-fixture.d.ts → legacy/timepicker-fixture.d.ts} +0 -0
- /package/testing/{date-range-picker → modules/date-range-picker}/date-range-picker-harness.d.ts +0 -0
- /package/testing/{date-range-picker → modules/date-range-picker}/date-range-picker-harness.filters.d.ts +0 -0
- /package/testing/{datepicker → modules/datepicker}/datepicker-calendar-harness.d.ts +0 -0
- /package/testing/{datepicker → modules/datepicker}/datepicker-calendar-harness.filters.d.ts +0 -0
- /package/testing/{datepicker → modules/datepicker}/datepicker-harness.filters.d.ts +0 -0
@@ -0,0 +1,21 @@
|
|
1
|
+
import { OnDestroy } from '@angular/core';
|
2
|
+
import { Observable } from 'rxjs';
|
3
|
+
import { SkyDatepickerComponent } from './datepicker.component';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
/**
|
6
|
+
* Handles interactions between the datepicker host component and the input
|
7
|
+
* directive.
|
8
|
+
* @internal
|
9
|
+
*/
|
10
|
+
export declare class SkyDatepickerHostService implements OnDestroy {
|
11
|
+
#private;
|
12
|
+
/**
|
13
|
+
* Fires when the picker or trigger button loses focus.
|
14
|
+
*/
|
15
|
+
get focusout(): Observable<FocusEvent>;
|
16
|
+
ngOnDestroy(): void;
|
17
|
+
init(host: SkyDatepickerComponent): void;
|
18
|
+
isFocusingDatepicker(evt: FocusEvent): boolean;
|
19
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SkyDatepickerHostService, never>;
|
20
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<SkyDatepickerHostService>;
|
21
|
+
}
|
@@ -91,6 +91,7 @@ export declare class SkyFuzzyDatepickerInputDirective implements OnInit, OnDestr
|
|
91
91
|
* This is useful if you need to update the ngModel value before the input element loses focus.
|
92
92
|
*/
|
93
93
|
detectInputValueChange(): void;
|
94
|
+
protected onFocusout(evt: FocusEvent): void;
|
94
95
|
static ɵfac: i0.ɵɵFactoryDeclaration<SkyFuzzyDatepickerInputDirective, [null, null, null, null, null, null, { optional: true; }]>;
|
95
96
|
static ɵdir: i0.ɵɵDirectiveDeclaration<SkyFuzzyDatepickerInputDirective, "[skyFuzzyDatepickerInput]", never, { "dateFormat": { "alias": "dateFormat"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "futureDisabled": { "alias": "futureDisabled"; "required": false; }; "maxDate": { "alias": "maxDate"; "required": false; }; "minDate": { "alias": "minDate"; "required": false; }; "startAtDate": { "alias": "startAtDate"; "required": false; }; "skyDatepickerNoValidate": { "alias": "skyDatepickerNoValidate"; "required": false; }; "startingDay": { "alias": "startingDay"; "required": false; }; "yearRequired": { "alias": "yearRequired"; "required": false; }; }, {}, never, never, false, never>;
|
96
97
|
}
|
@@ -74,7 +74,6 @@ export declare class SkyDatepickerInputDirective implements OnInit, OnDestroy, A
|
|
74
74
|
ngAfterViewInit(): void;
|
75
75
|
ngOnDestroy(): void;
|
76
76
|
onInputChange(event: any): void;
|
77
|
-
onInputBlur(): void;
|
78
77
|
onInput(): void;
|
79
78
|
writeValue(value: any): void;
|
80
79
|
validate(control: AbstractControl): ValidationErrors | null;
|
@@ -87,6 +86,7 @@ export declare class SkyDatepickerInputDirective implements OnInit, OnDestroy, A
|
|
87
86
|
* This is useful if you need to update the ngModel value before the input element loses focus.
|
88
87
|
*/
|
89
88
|
detectInputValueChange(): void;
|
89
|
+
protected onFocusout(evt: FocusEvent): void;
|
90
90
|
static ɵfac: i0.ɵɵFactoryDeclaration<SkyDatepickerInputDirective, [null, null, null, null, null, { optional: true; }]>;
|
91
91
|
static ɵdir: i0.ɵɵDirectiveDeclaration<SkyDatepickerInputDirective, "[skyDatepickerInput]", never, { "dateFormat": { "alias": "dateFormat"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "maxDate": { "alias": "maxDate"; "required": false; }; "minDate": { "alias": "minDate"; "required": false; }; "startAtDate": { "alias": "startAtDate"; "required": false; }; "skyDatepickerInput": { "alias": "skyDatepickerInput"; "required": false; }; "skyDatepickerNoValidate": { "alias": "skyDatepickerNoValidate"; "required": false; }; "startingDay": { "alias": "startingDay"; "required": false; }; "strict": { "alias": "strict"; "required": false; }; }, {}, never, never, false, never>;
|
92
92
|
}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { ChangeDetectorRef, ElementRef, EventEmitter, OnDestroy, OnInit, TemplateRef } from '@angular/core';
|
1
|
+
import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, OnDestroy, OnInit, TemplateRef } from '@angular/core';
|
2
2
|
import { SkyAffixService, SkyCoreAdapterService, SkyOverlayService, SkyStackingContext } from '@skyux/core';
|
3
3
|
import { SkyInputBoxHostService } from '@skyux/forms';
|
4
4
|
import { SkyThemeService } from '@skyux/theme';
|
@@ -10,7 +10,7 @@ import * as i0 from "@angular/core";
|
|
10
10
|
* Creates the datepicker button and calendar.
|
11
11
|
* You must wrap this component around an input with the `skyDatepickerInput` directive.
|
12
12
|
*/
|
13
|
-
export declare class SkyDatepickerComponent implements OnDestroy, OnInit {
|
13
|
+
export declare class SkyDatepickerComponent implements AfterViewInit, OnDestroy, OnInit {
|
14
14
|
#private;
|
15
15
|
inputBoxHostService?: SkyInputBoxHostService | undefined;
|
16
16
|
/**
|
@@ -63,11 +63,17 @@ export declare class SkyDatepickerComponent implements OnDestroy, OnInit {
|
|
63
63
|
triggerButtonTemplateRef: TemplateRef<unknown> | undefined;
|
64
64
|
constructor(affixService: SkyAffixService, changeDetector: ChangeDetectorRef, coreAdapter: SkyCoreAdapterService, overlayService: SkyOverlayService, inputBoxHostService?: SkyInputBoxHostService | undefined, themeSvc?: SkyThemeService, stackingContext?: SkyStackingContext);
|
65
65
|
ngOnInit(): void;
|
66
|
+
ngAfterViewInit(): void;
|
66
67
|
ngOnDestroy(): void;
|
67
68
|
onCalendarModeChange(): void;
|
68
69
|
onSelectedDateChange(value: Date): void;
|
69
70
|
onTriggerButtonClick(): void;
|
70
71
|
onCalendarDateRangeChange(event?: SkyDatepickerCalendarChange): void;
|
72
|
+
/**
|
73
|
+
* Gets the element reference of the picker overlay.
|
74
|
+
* @internal
|
75
|
+
*/
|
76
|
+
getPickerRef(): ElementRef | undefined;
|
71
77
|
static ɵfac: i0.ɵɵFactoryDeclaration<SkyDatepickerComponent, [null, null, null, null, { optional: true; }, { optional: true; }, { optional: true; }]>;
|
72
78
|
static ɵcmp: i0.ɵɵComponentDeclaration<SkyDatepickerComponent, "sky-datepicker", never, { "pickerClass": { "alias": "pickerClass"; "required": false; }; }, { "calendarDateRangeChange": "calendarDateRangeChange"; "dateFormatChange": "dateFormatChange"; "openChange": "openChange"; "calendarDateChange": "calendarDateChange"; }, never, ["*"], false, never>;
|
73
79
|
}
|
@@ -53,6 +53,7 @@ export declare class SkyTimepickerComponent implements OnInit, OnDestroy {
|
|
53
53
|
onCloseButtonClick(): void;
|
54
54
|
setTime(event: any): void;
|
55
55
|
onTriggerButtonClick(): void;
|
56
|
+
protected highlightMinute(selectedMinute: number, minute: number): boolean;
|
56
57
|
static ɵfac: i0.ɵɵFactoryDeclaration<SkyTimepickerComponent, [null, null, null, null, { optional: true; }, { optional: true; }, { optional: true; }]>;
|
57
58
|
static ɵcmp: i0.ɵɵComponentDeclaration<SkyTimepickerComponent, "sky-timepicker", never, {}, { "selectedTimeChanged": "selectedTimeChanged"; }, never, ["*"], false, never>;
|
58
59
|
}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@skyux/datetime",
|
3
|
-
"version": "11.
|
3
|
+
"version": "11.24.0",
|
4
4
|
"author": "Blackbaud, Inc.",
|
5
5
|
"keywords": [
|
6
6
|
"blackbaud",
|
@@ -41,14 +41,14 @@
|
|
41
41
|
"@angular/core": "^18.2.8",
|
42
42
|
"@angular/forms": "^18.2.8",
|
43
43
|
"@angular/platform-browser": "^18.2.8",
|
44
|
-
"@skyux-sdk/testing": "11.
|
45
|
-
"@skyux/core": "11.
|
46
|
-
"@skyux/forms": "11.
|
47
|
-
"@skyux/i18n": "11.
|
48
|
-
"@skyux/icon": "11.
|
49
|
-
"@skyux/indicators": "11.
|
50
|
-
"@skyux/popovers": "11.
|
51
|
-
"@skyux/theme": "11.
|
44
|
+
"@skyux-sdk/testing": "11.24.0",
|
45
|
+
"@skyux/core": "11.24.0",
|
46
|
+
"@skyux/forms": "11.24.0",
|
47
|
+
"@skyux/i18n": "11.24.0",
|
48
|
+
"@skyux/icon": "11.24.0",
|
49
|
+
"@skyux/indicators": "11.24.0",
|
50
|
+
"@skyux/popovers": "11.24.0",
|
51
|
+
"@skyux/theme": "11.24.0",
|
52
52
|
"moment": "^2.30.1"
|
53
53
|
},
|
54
54
|
"dependencies": {
|
@@ -1,8 +1,8 @@
|
|
1
1
|
import { HarnessPredicate } from '@angular/cdk/testing';
|
2
2
|
import { SkyComponentHarness } from '@skyux/core/testing';
|
3
3
|
import { SkyDatepickerCalendarHarness } from './datepicker-calendar-harness';
|
4
|
-
import { SkyDatepickerInputHarness } from './datepicker-harness-input';
|
5
4
|
import { SkyDatepickerFilters } from './datepicker-harness.filters';
|
5
|
+
import { SkyDatepickerInputHarness } from './datepicker-input-harness';
|
6
6
|
/**
|
7
7
|
* Harness for interacting with datepicker components in tests.
|
8
8
|
*/
|
package/testing/public-api.d.ts
CHANGED
@@ -1,8 +1,8 @@
|
|
1
|
-
export { SkyDatepickerFixture } from './datepicker-fixture';
|
2
|
-
export { SkyTimepickerFixture } from './timepicker-fixture';
|
3
|
-
export {
|
4
|
-
export {
|
5
|
-
export {
|
6
|
-
export {
|
7
|
-
export {
|
8
|
-
export {
|
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 { SkyDateRangePickerFilters } from './modules/date-range-picker/date-range-picker-harness.filters';
|
5
|
+
export { SkyDatepickerCalendarHarness } from './modules/datepicker/datepicker-calendar-harness';
|
6
|
+
export { SkyDatepickerCalendarHarnessFilters } from './modules/datepicker/datepicker-calendar-harness.filters';
|
7
|
+
export { SkyDatepickerHarness } from './modules/datepicker/datepicker-harness';
|
8
|
+
export { SkyDatepickerFilters } from './modules/datepicker/datepicker-harness.filters';
|
@@ -1,2 +0,0 @@
|
|
1
|
-
export {};
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1yYW5nZS1waWNrZXItaGFybmVzcy5maWx0ZXJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2RhdGV0aW1lL3Rlc3Rpbmcvc3JjL2RhdGUtcmFuZ2UtcGlja2VyL2RhdGUtcmFuZ2UtcGlja2VyLWhhcm5lc3MuZmlsdGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2t5SGFybmVzc0ZpbHRlcnMgfSBmcm9tICdAc2t5dXgvY29yZS90ZXN0aW5nJztcblxuLyoqXG4gKiBBIHNldCBvZiBjcml0ZXJpYSB0aGF0IGNhbiBiZSB1c2VkIHRvIGZpbHRlciBhIGxpc3Qgb2YgYFNreURhdGVSYW5nZVBpY2tlckhhcm5lc3NgIGluc3RhbmNlcy5cbiAqL1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1pbnRlcmZhY2UsIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1vYmplY3QtdHlwZVxuZXhwb3J0IGludGVyZmFjZSBTa3lEYXRlUmFuZ2VQaWNrZXJGaWx0ZXJzIGV4dGVuZHMgU2t5SGFybmVzc0ZpbHRlcnMge31cbiJdfQ==
|
@@ -1,143 +0,0 @@
|
|
1
|
-
import { SkyComponentHarness } from '@skyux/core/testing';
|
2
|
-
import { SkyInputBoxHarness } from '@skyux/forms/testing';
|
3
|
-
import { SkyDatepickerHarness } from '../public-api';
|
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 help popover content.
|
36
|
-
*/
|
37
|
-
async getHelpPopoverContent() {
|
38
|
-
return (await (await this.#getCalculatorIdInputBoxHarness()).getHelpPopoverContent());
|
39
|
-
}
|
40
|
-
/**
|
41
|
-
* Gets the help inline popover title.
|
42
|
-
*/
|
43
|
-
async getHelpPopoverTitle() {
|
44
|
-
return await (await this.#getCalculatorIdInputBoxHarness()).getHelpPopoverTitle();
|
45
|
-
}
|
46
|
-
/**
|
47
|
-
* Gets the hint text.
|
48
|
-
*/
|
49
|
-
async getHintText() {
|
50
|
-
return await (await this.#getCalculatorIdInputBoxHarness()).getHintText();
|
51
|
-
}
|
52
|
-
/**
|
53
|
-
* Gets the label text.
|
54
|
-
*/
|
55
|
-
async getLabelText() {
|
56
|
-
return await (await this.#getCalculatorIdInputBoxHarness()).getLabelText();
|
57
|
-
}
|
58
|
-
/**
|
59
|
-
* Whether date range picker end date before start date error is thrown.
|
60
|
-
*/
|
61
|
-
async hasEndDateBeforeStartDateError() {
|
62
|
-
return await (await this.#getCalculatorIdInputBoxHarness()).hasCustomFormError('endDateBeforeStartDate');
|
63
|
-
}
|
64
|
-
/**
|
65
|
-
* Whether end date input has required error.
|
66
|
-
*/
|
67
|
-
async hasEndDateRequiredError() {
|
68
|
-
return await (await this.#getEndDateInputBoxHarness()).hasRequiredError();
|
69
|
-
}
|
70
|
-
/**
|
71
|
-
* Whether a custom error has fired.
|
72
|
-
* @params errorName `errorName` property of the custom `sky-form-error`.
|
73
|
-
*/
|
74
|
-
async hasError(errorName) {
|
75
|
-
return await (await this.#getCalculatorIdInputBoxHarness()).hasCustomFormError(errorName);
|
76
|
-
}
|
77
|
-
/**
|
78
|
-
* Whether start date input has required error.
|
79
|
-
*/
|
80
|
-
async hasStartDateRequiredError() {
|
81
|
-
return await (await this.#getStartDateInputBoxHarness()).hasRequiredError();
|
82
|
-
}
|
83
|
-
/**
|
84
|
-
* Whether the date range picker component is disabled.
|
85
|
-
*/
|
86
|
-
async isDisabled() {
|
87
|
-
return await (await this.#getCalculatorIdInputBoxHarness()).getDisabled();
|
88
|
-
}
|
89
|
-
/**
|
90
|
-
* Whether end date datepicker is visible.
|
91
|
-
*/
|
92
|
-
async isEndDateVisible() {
|
93
|
-
return !(await (await this.locatorFor('.sky-date-range-picker-end-date')()).getProperty('hidden'));
|
94
|
-
}
|
95
|
-
/**
|
96
|
-
* Whether the date range picker has stacked enabled.
|
97
|
-
*/
|
98
|
-
async isStacked() {
|
99
|
-
return await (await this.host()).hasClass('sky-form-field-stacked');
|
100
|
-
}
|
101
|
-
/**
|
102
|
-
* Whether start date datepicker is visible.
|
103
|
-
*/
|
104
|
-
async isStartDateVisible() {
|
105
|
-
return !(await (await this.locatorFor('.sky-date-range-picker-start-date')()).getProperty('hidden'));
|
106
|
-
}
|
107
|
-
/**
|
108
|
-
* Selects the specified calculator.
|
109
|
-
*/
|
110
|
-
async selectCalculator(calculatorId) {
|
111
|
-
const select = await this.locatorFor('select[FormControlName="calculatorId"')();
|
112
|
-
return await select.selectOptions(calculatorId);
|
113
|
-
}
|
114
|
-
/**
|
115
|
-
* Sets the end date.
|
116
|
-
* @param newDate date input as a formatted string.
|
117
|
-
*/
|
118
|
-
async setEndDateValue(newDate) {
|
119
|
-
if (!(await this.isEndDateVisible())) {
|
120
|
-
throw new Error('Unable to set end date. End datepicker is not visible.');
|
121
|
-
}
|
122
|
-
const input = await (await this.#getEndDatepicker()).getControl();
|
123
|
-
await input.setValue(newDate);
|
124
|
-
}
|
125
|
-
/**
|
126
|
-
* Sets the start date.
|
127
|
-
* @param newDate date input as a formatted string.
|
128
|
-
*/
|
129
|
-
async setStartDateValue(newDate) {
|
130
|
-
if (!(await this.isEndDateVisible())) {
|
131
|
-
throw new Error('Unable to set start date. Start datepicker is not visible.');
|
132
|
-
}
|
133
|
-
const input = await (await this.#getStartDatepicker()).getControl();
|
134
|
-
await input.setValue(newDate);
|
135
|
-
}
|
136
|
-
async #getEndDatepicker() {
|
137
|
-
return await (await this.#getEndDateInputBoxHarness()).queryHarness(SkyDatepickerHarness);
|
138
|
-
}
|
139
|
-
async #getStartDatepicker() {
|
140
|
-
return await (await this.#getStartDateInputBoxHarness()).queryHarness(SkyDatepickerHarness);
|
141
|
-
}
|
142
|
-
}
|
143
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1yYW5nZS1waWNrZXItaGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9kYXRldGltZS90ZXN0aW5nL3NyYy9kYXRlLXJhbmdlLXBpY2tlci9kYXRlLXJhbmdlLXBpY2tlci1oYXJuZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRzFELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRTFELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUlyRDs7R0FFRztBQUNILE1BQU0sT0FBTyx5QkFBMEIsU0FBUSxtQkFBbUI7SUFDaEU7O09BRUc7YUFDVyxpQkFBWSxHQUFHLHVCQUF1QixDQUFDO0lBRXJELDRCQUE0QixHQUFHLElBQUksQ0FBQyxVQUFVLENBQzVDLGtCQUFrQixDQUFDLElBQUksQ0FBQztRQUN0QixRQUFRLEVBQUUsbUNBQW1DO0tBQzlDLENBQUMsQ0FDSCxDQUFDO0lBQ0YsMEJBQTBCLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FDMUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDO1FBQ3RCLFFBQVEsRUFBRSxpQ0FBaUM7S0FDNUMsQ0FBQyxDQUNILENBQUM7SUFDRiwrQkFBK0IsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUMvQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUM7UUFDdEIsUUFBUSxFQUFFLDBDQUEwQztLQUNyRCxDQUFDLENBQ0gsQ0FBQztJQUVGOzs7T0FHRztJQUNJLE1BQU0sQ0FBQyxJQUFJLENBQ2hCLE9BQWtDO1FBRWxDLE9BQU8seUJBQXlCLENBQUMscUJBQXFCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLGVBQWU7UUFDMUIsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLCtCQUErQixFQUFFLENBQUMsQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUN6RSxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMscUJBQXFCO1FBQ2hDLE9BQU8sQ0FBQyxNQUFNLENBQ1osTUFBTSxJQUFJLENBQUMsK0JBQStCLEVBQUUsQ0FDN0MsQ0FBQyxxQkFBcUIsRUFBRSxDQUF1QixDQUFDO0lBQ25ELENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxtQkFBbUI7UUFDOUIsT0FBTyxNQUFNLENBQ1gsTUFBTSxJQUFJLENBQUMsK0JBQStCLEVBQUUsQ0FDN0MsQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxXQUFXO1FBQ3RCLE9BQU8sTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLCtCQUErQixFQUFFLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUM1RSxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsWUFBWTtRQUN2QixPQUFPLE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQywrQkFBK0IsRUFBRSxDQUFDLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDN0UsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLDhCQUE4QjtRQUN6QyxPQUFPLE1BQU0sQ0FDWCxNQUFNLElBQUksQ0FBQywrQkFBK0IsRUFBRSxDQUM3QyxDQUFDLGtCQUFrQixDQUFDLHdCQUF3QixDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLHVCQUF1QjtRQUNsQyxPQUFPLE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUM1RSxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksS0FBSyxDQUFDLFFBQVEsQ0FBQyxTQUFpQjtRQUNyQyxPQUFPLE1BQU0sQ0FDWCxNQUFNLElBQUksQ0FBQywrQkFBK0IsRUFBRSxDQUM3QyxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyx5QkFBeUI7UUFDcEMsT0FBTyxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FBQyxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDOUUsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLFVBQVU7UUFDckIsT0FBTyxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsK0JBQStCLEVBQUUsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzVFLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxnQkFBZ0I7UUFDM0IsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUNiLE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxpQ0FBaUMsQ0FBQyxFQUFFLENBQzNELENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLFNBQVM7UUFDcEIsT0FBTyxNQUFNLENBQUMsTUFBTSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsd0JBQXdCLENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsa0JBQWtCO1FBQzdCLE9BQU8sQ0FBQyxDQUFDLE1BQU0sQ0FDYixNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsbUNBQW1DLENBQUMsRUFBRSxDQUM3RCxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FDM0IsWUFBc0M7UUFFdEMsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsVUFBVSxDQUNsQyx1Q0FBdUMsQ0FDeEMsRUFBRSxDQUFDO1FBQ0osT0FBTyxNQUFNLE1BQU0sQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVEOzs7T0FHRztJQUNJLEtBQUssQ0FBQyxlQUFlLENBQUMsT0FBZTtRQUMxQyxJQUFJLENBQUMsQ0FBQyxNQUFNLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLEVBQUUsQ0FBQztZQUNyQyxNQUFNLElBQUksS0FBSyxDQUFDLHdEQUF3RCxDQUFDLENBQUM7UUFDNUUsQ0FBQztRQUNELE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbEUsTUFBTSxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRDs7O09BR0c7SUFDSSxLQUFLLENBQUMsaUJBQWlCLENBQUMsT0FBZTtRQUM1QyxJQUFJLENBQUMsQ0FBQyxNQUFNLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLEVBQUUsQ0FBQztZQUNyQyxNQUFNLElBQUksS0FBSyxDQUNiLDREQUE0RCxDQUM3RCxDQUFDO1FBQ0osQ0FBQztRQUNELE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDcEUsTUFBTSxLQUFLLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxLQUFLLENBQUMsaUJBQWlCO1FBQ3JCLE9BQU8sTUFBTSxDQUNYLE1BQU0sSUFBSSxDQUFDLDBCQUEwQixFQUFFLENBQ3hDLENBQUMsWUFBWSxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELEtBQUssQ0FBQyxtQkFBbUI7UUFDdkIsT0FBTyxNQUFNLENBQ1gsTUFBTSxJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FDMUMsQ0FBQyxZQUFZLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUN2QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSGFybmVzc1ByZWRpY2F0ZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXN0aW5nJztcbmltcG9ydCB7IFNreUNvbXBvbmVudEhhcm5lc3MgfSBmcm9tICdAc2t5dXgvY29yZS90ZXN0aW5nJztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAbngvZW5mb3JjZS1tb2R1bGUtYm91bmRhcmllc1xuaW1wb3J0IHsgU2t5RGF0ZVJhbmdlQ2FsY3VsYXRvcklkIH0gZnJvbSAnQHNreXV4L2RhdGV0aW1lJztcbmltcG9ydCB7IFNreUlucHV0Qm94SGFybmVzcyB9IGZyb20gJ0Bza3l1eC9mb3Jtcy90ZXN0aW5nJztcblxuaW1wb3J0IHsgU2t5RGF0ZXBpY2tlckhhcm5lc3MgfSBmcm9tICcuLi9wdWJsaWMtYXBpJztcblxuaW1wb3J0IHsgU2t5RGF0ZVJhbmdlUGlja2VyRmlsdGVycyB9IGZyb20gJy4vZGF0ZS1yYW5nZS1waWNrZXItaGFybmVzcy5maWx0ZXJzJztcblxuLyoqXG4gKiBIYXJuZXNzIGZvciBpbnRlcmFjdGluZyB3aXRoIGRhdGUgcmFuZ2UgcGlja2VyIGNvbXBvbmVudHMgaW4gdGVzdHMuXG4gKi9cbmV4cG9ydCBjbGFzcyBTa3lEYXRlUmFuZ2VQaWNrZXJIYXJuZXNzIGV4dGVuZHMgU2t5Q29tcG9uZW50SGFybmVzcyB7XG4gIC8qKlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgaG9zdFNlbGVjdG9yID0gJ3NreS1kYXRlLXJhbmdlLXBpY2tlcic7XG5cbiAgI2dldFN0YXJ0RGF0ZUlucHV0Qm94SGFybmVzcyA9IHRoaXMubG9jYXRvckZvcihcbiAgICBTa3lJbnB1dEJveEhhcm5lc3Mud2l0aCh7XG4gICAgICBhbmNlc3RvcjogJy5za3ktZGF0ZS1yYW5nZS1waWNrZXItc3RhcnQtZGF0ZScsXG4gICAgfSksXG4gICk7XG4gICNnZXRFbmREYXRlSW5wdXRCb3hIYXJuZXNzID0gdGhpcy5sb2NhdG9yRm9yKFxuICAgIFNreUlucHV0Qm94SGFybmVzcy53aXRoKHtcbiAgICAgIGFuY2VzdG9yOiAnLnNreS1kYXRlLXJhbmdlLXBpY2tlci1lbmQtZGF0ZScsXG4gICAgfSksXG4gICk7XG4gICNnZXRDYWxjdWxhdG9ySWRJbnB1dEJveEhhcm5lc3MgPSB0aGlzLmxvY2F0b3JGb3IoXG4gICAgU2t5SW5wdXRCb3hIYXJuZXNzLndpdGgoe1xuICAgICAgYW5jZXN0b3I6ICcuc2t5LWRhdGUtcmFuZ2UtcGlja2VyLXNlbGVjdC1jYWxjdWxhdG9yJyxcbiAgICB9KSxcbiAgKTtcblxuICAvKipcbiAgICogR2V0cyBhIGBIYXJuZXNzUHJlZGljYXRlYCB0aGF0IGNhbiBiZSB1c2VkIHRvIHNlYXJjaCBmb3IgYVxuICAgKiBgU2t5RGF0ZVJhbmdlUGlja2VySGFybmVzc2AgdGhhdCBtZWV0cyBjZXJ0YWluIGNyaXRlcmlhLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyB3aXRoKFxuICAgIGZpbHRlcnM6IFNreURhdGVSYW5nZVBpY2tlckZpbHRlcnMsXG4gICk6IEhhcm5lc3NQcmVkaWNhdGU8U2t5RGF0ZVJhbmdlUGlja2VySGFybmVzcz4ge1xuICAgIHJldHVybiBTa3lEYXRlUmFuZ2VQaWNrZXJIYXJuZXNzLmdldERhdGFTa3lJZFByZWRpY2F0ZShmaWx0ZXJzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbGlja3MgdGhlIGhlbHAgaW5saW5lIGJ1dHRvbi5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBjbGlja0hlbHBJbmxpbmUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgKGF3YWl0IHRoaXMuI2dldENhbGN1bGF0b3JJZElucHV0Qm94SGFybmVzcygpKS5jbGlja0hlbHBJbmxpbmUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBoZWxwIHBvcG92ZXIgY29udGVudC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRIZWxwUG9wb3ZlckNvbnRlbnQoKTogUHJvbWlzZTxzdHJpbmcgfCB1bmRlZmluZWQ+IHtcbiAgICByZXR1cm4gKGF3YWl0IChcbiAgICAgIGF3YWl0IHRoaXMuI2dldENhbGN1bGF0b3JJZElucHV0Qm94SGFybmVzcygpXG4gICAgKS5nZXRIZWxwUG9wb3ZlckNvbnRlbnQoKSkgYXMgc3RyaW5nIHwgdW5kZWZpbmVkO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGhlbHAgaW5saW5lIHBvcG92ZXIgdGl0bGUuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0SGVscFBvcG92ZXJUaXRsZSgpOiBQcm9taXNlPHN0cmluZyB8IHVuZGVmaW5lZD4ge1xuICAgIHJldHVybiBhd2FpdCAoXG4gICAgICBhd2FpdCB0aGlzLiNnZXRDYWxjdWxhdG9ySWRJbnB1dEJveEhhcm5lc3MoKVxuICAgICkuZ2V0SGVscFBvcG92ZXJUaXRsZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGhpbnQgdGV4dC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRIaW50VGV4dCgpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0Q2FsY3VsYXRvcklkSW5wdXRCb3hIYXJuZXNzKCkpLmdldEhpbnRUZXh0KCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgbGFiZWwgdGV4dC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRMYWJlbFRleHQoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gYXdhaXQgKGF3YWl0IHRoaXMuI2dldENhbGN1bGF0b3JJZElucHV0Qm94SGFybmVzcygpKS5nZXRMYWJlbFRleHQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIGRhdGUgcmFuZ2UgcGlja2VyIGVuZCBkYXRlIGJlZm9yZSBzdGFydCBkYXRlIGVycm9yIGlzIHRocm93bi5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBoYXNFbmREYXRlQmVmb3JlU3RhcnREYXRlRXJyb3IoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIGF3YWl0IChcbiAgICAgIGF3YWl0IHRoaXMuI2dldENhbGN1bGF0b3JJZElucHV0Qm94SGFybmVzcygpXG4gICAgKS5oYXNDdXN0b21Gb3JtRXJyb3IoJ2VuZERhdGVCZWZvcmVTdGFydERhdGUnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIGVuZCBkYXRlIGlucHV0IGhhcyByZXF1aXJlZCBlcnJvci5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBoYXNFbmREYXRlUmVxdWlyZWRFcnJvcigpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gYXdhaXQgKGF3YWl0IHRoaXMuI2dldEVuZERhdGVJbnB1dEJveEhhcm5lc3MoKSkuaGFzUmVxdWlyZWRFcnJvcigpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgYSBjdXN0b20gZXJyb3IgaGFzIGZpcmVkLlxuICAgKiBAcGFyYW1zIGVycm9yTmFtZSBgZXJyb3JOYW1lYCBwcm9wZXJ0eSBvZiB0aGUgY3VzdG9tIGBza3ktZm9ybS1lcnJvcmAuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgaGFzRXJyb3IoZXJyb3JOYW1lOiBzdHJpbmcpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gYXdhaXQgKFxuICAgICAgYXdhaXQgdGhpcy4jZ2V0Q2FsY3VsYXRvcklkSW5wdXRCb3hIYXJuZXNzKClcbiAgICApLmhhc0N1c3RvbUZvcm1FcnJvcihlcnJvck5hbWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgc3RhcnQgZGF0ZSBpbnB1dCBoYXMgcmVxdWlyZWQgZXJyb3IuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgaGFzU3RhcnREYXRlUmVxdWlyZWRFcnJvcigpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gYXdhaXQgKGF3YWl0IHRoaXMuI2dldFN0YXJ0RGF0ZUlucHV0Qm94SGFybmVzcygpKS5oYXNSZXF1aXJlZEVycm9yKCk7XG4gIH1cblxuICAvKipcbiAgICogV2hldGhlciB0aGUgZGF0ZSByYW5nZSBwaWNrZXIgY29tcG9uZW50IGlzIGRpc2FibGVkLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGlzRGlzYWJsZWQoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIGF3YWl0IChhd2FpdCB0aGlzLiNnZXRDYWxjdWxhdG9ySWRJbnB1dEJveEhhcm5lc3MoKSkuZ2V0RGlzYWJsZWQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIGVuZCBkYXRlIGRhdGVwaWNrZXIgaXMgdmlzaWJsZS5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBpc0VuZERhdGVWaXNpYmxlKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiAhKGF3YWl0IChcbiAgICAgIGF3YWl0IHRoaXMubG9jYXRvckZvcignLnNreS1kYXRlLXJhbmdlLXBpY2tlci1lbmQtZGF0ZScpKClcbiAgICApLmdldFByb3BlcnR5KCdoaWRkZW4nKSk7XG4gIH1cblxuICAvKipcbiAgICogV2hldGhlciB0aGUgZGF0ZSByYW5nZSBwaWNrZXIgaGFzIHN0YWNrZWQgZW5hYmxlZC5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBpc1N0YWNrZWQoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIGF3YWl0IChhd2FpdCB0aGlzLmhvc3QoKSkuaGFzQ2xhc3MoJ3NreS1mb3JtLWZpZWxkLXN0YWNrZWQnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHN0YXJ0IGRhdGUgZGF0ZXBpY2tlciBpcyB2aXNpYmxlLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGlzU3RhcnREYXRlVmlzaWJsZSgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gIShhd2FpdCAoXG4gICAgICBhd2FpdCB0aGlzLmxvY2F0b3JGb3IoJy5za3ktZGF0ZS1yYW5nZS1waWNrZXItc3RhcnQtZGF0ZScpKClcbiAgICApLmdldFByb3BlcnR5KCdoaWRkZW4nKSk7XG4gIH1cblxuICAvKipcbiAgICogU2VsZWN0cyB0aGUgc3BlY2lmaWVkIGNhbGN1bGF0b3IuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgc2VsZWN0Q2FsY3VsYXRvcihcbiAgICBjYWxjdWxhdG9ySWQ6IFNreURhdGVSYW5nZUNhbGN1bGF0b3JJZCxcbiAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3Qgc2VsZWN0ID0gYXdhaXQgdGhpcy5sb2NhdG9yRm9yKFxuICAgICAgJ3NlbGVjdFtGb3JtQ29udHJvbE5hbWU9XCJjYWxjdWxhdG9ySWRcIicsXG4gICAgKSgpO1xuICAgIHJldHVybiBhd2FpdCBzZWxlY3Quc2VsZWN0T3B0aW9ucyhjYWxjdWxhdG9ySWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGVuZCBkYXRlLlxuICAgKiBAcGFyYW0gbmV3RGF0ZSBkYXRlIGlucHV0IGFzIGEgZm9ybWF0dGVkIHN0cmluZy5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBzZXRFbmREYXRlVmFsdWUobmV3RGF0ZTogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKCEoYXdhaXQgdGhpcy5pc0VuZERhdGVWaXNpYmxlKCkpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1VuYWJsZSB0byBzZXQgZW5kIGRhdGUuIEVuZCBkYXRlcGlja2VyIGlzIG5vdCB2aXNpYmxlLicpO1xuICAgIH1cbiAgICBjb25zdCBpbnB1dCA9IGF3YWl0IChhd2FpdCB0aGlzLiNnZXRFbmREYXRlcGlja2VyKCkpLmdldENvbnRyb2woKTtcbiAgICBhd2FpdCBpbnB1dC5zZXRWYWx1ZShuZXdEYXRlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBzdGFydCBkYXRlLlxuICAgKiBAcGFyYW0gbmV3RGF0ZSBkYXRlIGlucHV0IGFzIGEgZm9ybWF0dGVkIHN0cmluZy5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBzZXRTdGFydERhdGVWYWx1ZShuZXdEYXRlOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAoIShhd2FpdCB0aGlzLmlzRW5kRGF0ZVZpc2libGUoKSkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgJ1VuYWJsZSB0byBzZXQgc3RhcnQgZGF0ZS4gU3RhcnQgZGF0ZXBpY2tlciBpcyBub3QgdmlzaWJsZS4nLFxuICAgICAgKTtcbiAgICB9XG4gICAgY29uc3QgaW5wdXQgPSBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0U3RhcnREYXRlcGlja2VyKCkpLmdldENvbnRyb2woKTtcbiAgICBhd2FpdCBpbnB1dC5zZXRWYWx1ZShuZXdEYXRlKTtcbiAgfVxuXG4gIGFzeW5jICNnZXRFbmREYXRlcGlja2VyKCk6IFByb21pc2U8U2t5RGF0ZXBpY2tlckhhcm5lc3M+IHtcbiAgICByZXR1cm4gYXdhaXQgKFxuICAgICAgYXdhaXQgdGhpcy4jZ2V0RW5kRGF0ZUlucHV0Qm94SGFybmVzcygpXG4gICAgKS5xdWVyeUhhcm5lc3MoU2t5RGF0ZXBpY2tlckhhcm5lc3MpO1xuICB9XG5cbiAgYXN5bmMgI2dldFN0YXJ0RGF0ZXBpY2tlcigpOiBQcm9taXNlPFNreURhdGVwaWNrZXJIYXJuZXNzPiB7XG4gICAgcmV0dXJuIGF3YWl0IChcbiAgICAgIGF3YWl0IHRoaXMuI2dldFN0YXJ0RGF0ZUlucHV0Qm94SGFybmVzcygpXG4gICAgKS5xdWVyeUhhcm5lc3MoU2t5RGF0ZXBpY2tlckhhcm5lc3MpO1xuICB9XG59XG4iXX0=
|
@@ -1,2 +0,0 @@
|
|
1
|
-
export {};
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci1jYWxlbmRhci1oYXJuZXNzLmZpbHRlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvZGF0ZXRpbWUvdGVzdGluZy9zcmMvZGF0ZXBpY2tlci9kYXRlcGlja2VyLWNhbGVuZGFyLWhhcm5lc3MuZmlsdGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmFzZUhhcm5lc3NGaWx0ZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Rlc3RpbmcnO1xuXG4vKipcbiAqIEEgc2V0IG9mIGNyaXRlcmlhIHRoYXQgY2FuIGJlIHVzZWQgdG8gZmlsdGVyIGEgbGlzdCBvZiBgU2t5RGF0ZXBpY2tlckNhbGVuZGFySGFybmVzc2AgaW5zdGFuY2VzLlxuICovXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWludGVyZmFjZSwgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LW9iamVjdC10eXBlXG5leHBvcnQgaW50ZXJmYWNlIFNreURhdGVwaWNrZXJDYWxlbmRhckhhcm5lc3NGaWx0ZXJzXG4gIGV4dGVuZHMgQmFzZUhhcm5lc3NGaWx0ZXJzIHt9XG4iXX0=
|
@@ -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
|
-
return (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
|
-
return (await this.#getNextButton()).click();
|
44
|
-
}
|
45
|
-
/**
|
46
|
-
* Clicks the 'previous' button on the calendar header.
|
47
|
-
*/
|
48
|
-
async clickPreviousButton() {
|
49
|
-
return (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
|
-
return 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 this.#getSelected()).getAttribute('aria-label');
|
86
|
-
}
|
87
|
-
}
|
88
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci1jYWxlbmRhci1oYXJuZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2RhdGV0aW1lL3Rlc3Rpbmcvc3JjL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci1jYWxlbmRhci1oYXJuZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBSTFEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLDRCQUE2QixTQUFRLG1CQUFtQjtJQUNuRTs7T0FFRzthQUNXLGlCQUFZLEdBQUcsb0NBQW9DLENBQUM7SUFFbEUsYUFBYSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUN6RCxlQUFlLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDN0QsY0FBYyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsMEJBQTBCLENBQUMsQ0FBQztJQUM3RCxrQkFBa0IsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLDhCQUE4QixDQUFDLENBQUM7SUFDckUsWUFBWSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsOEJBQThCLENBQUMsQ0FBQztJQUMvRCxTQUFTLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDO0lBQzlELGVBQWUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGdDQUFnQyxDQUFDLENBQUM7SUFFcEU7O09BRUc7SUFDSSxNQUFNLENBQUMsSUFBSSxDQUNoQixPQUE0QztRQUU1QyxPQUFPLElBQUksZ0JBQWdCLENBQUMsNEJBQTRCLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDckUsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNJLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBWTtRQUNqQyxJQUFJLENBQUM7WUFDSCxPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLGdCQUFnQixJQUFJLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNyRSxDQUFDO1FBQUMsTUFBTSxDQUFDO1lBQ1AsTUFBTSxJQUFJLEtBQUssQ0FDYixtQ0FBbUMsSUFBSSw0RUFBNEUsQ0FDcEgsQ0FBQztRQUNKLENBQUM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsZUFBZTtRQUMxQixPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUMvQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsbUJBQW1CO1FBQzlCLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDbkQsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLGdCQUFnQjtRQUMzQixNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUU1QyxJQUFJLE1BQU0sTUFBTSxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQUM7WUFDOUMsTUFBTSxJQUFJLEtBQUssQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1FBQy9DLENBQUM7UUFFRCxPQUFPLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsZUFBZTtRQUMxQixJQUFJLE1BQU0sSUFBSSxDQUFDLGFBQWEsRUFBRSxFQUFFLENBQUM7WUFDL0IsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO2FBQU0sSUFBSSxNQUFNLElBQUksQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDO1lBQ3hDLE9BQU8sT0FBTyxDQUFDO1FBQ2pCLENBQUM7YUFBTSxDQUFDO1lBQ04sT0FBTyxNQUFNLENBQUM7UUFDaEIsQ0FBQztJQUNILENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxnQkFBZ0I7UUFDM0IsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDeEQsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLGdCQUFnQjtRQUMzQixPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDaEUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEhhcm5lc3NQcmVkaWNhdGUgfSBmcm9tICdAYW5ndWxhci9jZGsvdGVzdGluZyc7XG5pbXBvcnQgeyBTa3lDb21wb25lbnRIYXJuZXNzIH0gZnJvbSAnQHNreXV4L2NvcmUvdGVzdGluZyc7XG5cbmltcG9ydCB7IFNreURhdGVwaWNrZXJDYWxlbmRhckhhcm5lc3NGaWx0ZXJzIH0gZnJvbSAnLi9kYXRlcGlja2VyLWNhbGVuZGFyLWhhcm5lc3MuZmlsdGVycyc7XG5cbi8qKlxuICogSGFybmVzcyBmb3IgaW50ZXJhY3Rpbmcgd2l0aCBkYXRlcGlja2VyIGNhbGVuZGFyIGluIHRlc3RzLlxuICovXG5leHBvcnQgY2xhc3MgU2t5RGF0ZXBpY2tlckNhbGVuZGFySGFybmVzcyBleHRlbmRzIFNreUNvbXBvbmVudEhhcm5lc3Mge1xuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGhvc3RTZWxlY3RvciA9ICcuc2t5LWRhdGVwaWNrZXItY2FsZW5kYXItY29udGFpbmVyJztcblxuICAjZ2V0RGF5cGlja2VyID0gdGhpcy5sb2NhdG9yRm9yT3B0aW9uYWwoJ3NreS1kYXlwaWNrZXInKTtcbiAgI2dldE1vbnRocGlja2VyID0gdGhpcy5sb2NhdG9yRm9yT3B0aW9uYWwoJ3NreS1tb250aHBpY2tlcicpO1xuICAjZ2V0TmV4dEJ1dHRvbiA9IHRoaXMubG9jYXRvckZvcignLnNreS1kYXRlcGlja2VyLWJ0bi1uZXh0Jyk7XG4gICNnZXRQcmV2aW91c0J1dHRvbiA9IHRoaXMubG9jYXRvckZvcignLnNreS1kYXRlcGlja2VyLWJ0bi1wcmV2aW91cycpO1xuICAjZ2V0U2VsZWN0ZWQgPSB0aGlzLmxvY2F0b3JGb3IoJy5za3ktZGF0ZXBpY2tlci1idG4tc2VsZWN0ZWQnKTtcbiAgI2dldFRpdGxlID0gdGhpcy5sb2NhdG9yRm9yKCcuc2t5LWRhdGVwaWNrZXItY2FsZW5kYXItdGl0bGUnKTtcbiAgI2dldFRpdGxlQnV0dG9uID0gdGhpcy5sb2NhdG9yRm9yKCcuc2t5LWRhdGVwaWNrZXItY2FsZW5kYXItdGl0bGUnKTtcblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHdpdGgoXG4gICAgZmlsdGVyczogU2t5RGF0ZXBpY2tlckNhbGVuZGFySGFybmVzc0ZpbHRlcnMsXG4gICk6IEhhcm5lc3NQcmVkaWNhdGU8U2t5RGF0ZXBpY2tlckNhbGVuZGFySGFybmVzcz4ge1xuICAgIHJldHVybiBuZXcgSGFybmVzc1ByZWRpY2F0ZShTa3lEYXRlcGlja2VyQ2FsZW5kYXJIYXJuZXNzLCBmaWx0ZXJzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbGlja3MgdGhlIHNwZWNpZmllZCBkYXRlLCBtb250aCBvciB5ZWFyLlxuICAgKiBAcGFyYW1zIHRoZSBzcGVjaWZpZWQgdmFsdWUgdG8gY2xpY2ssIGluIHRoZSBmb2xsb3dpbmcgZm9ybWF0XG4gICAqIGRheSBmb3JtYXQ6IGRkZGQsIE1NTU0gRG8gWVlZWVxuICAgKiBtb250aCBmb3JtYXQ6IE1NTU0gWVlZWVxuICAgKiB5ZWFyIGZvcm1hdDogWVlZWVxuICAgKi9cbiAgcHVibGljIGFzeW5jIGNsaWNrRGF0ZShkYXRlOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIChhd2FpdCB0aGlzLmxvY2F0b3JGb3IoYFthcmlhLWxhYmVsPVwiJHtkYXRlfVwiXWApKCkpLmNsaWNrKCk7XG4gICAgfSBjYXRjaCB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBVbmFibGUgdG8gZmluZCBkYXRlIHdpdGggbGFiZWwgXCIke2RhdGV9XCIuIENoZWNrIHRoYXQgdGhlIGZvcm1hdCBpcyBjb3JyZWN0IGFuZCBtYXRjaGVzIHRoZSBjdXJyZW50IGNhbGVuZGFyIG1vZGUuYCxcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqICBDbGlja3MgdGhlICduZXh0JyBidXR0b24gb24gdGhlIGNhbGVuZGFyIGhlYWRlci5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBjbGlja05leHRCdXR0b24oKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLiNnZXROZXh0QnV0dG9uKCkpLmNsaWNrKCk7XG4gIH1cblxuICAvKipcbiAgICogQ2xpY2tzIHRoZSAncHJldmlvdXMnIGJ1dHRvbiBvbiB0aGUgY2FsZW5kYXIgaGVhZGVyLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGNsaWNrUHJldmlvdXNCdXR0b24oKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLiNnZXRQcmV2aW91c0J1dHRvbigpKS5jbGljaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsaWNrcyB0aGUgJ3RpdGxlJyBidXR0b24gb24gdGhlIGNhbGVuZGFyIGhlYWRlci5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBjbGlja1RpdGxlQnV0dG9uKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGJ1dHRvbiA9IGF3YWl0IHRoaXMuI2dldFRpdGxlQnV0dG9uKCk7XG5cbiAgICBpZiAoYXdhaXQgYnV0dG9uLmhhc0NsYXNzKCdza3ktYnRuLWRpc2FibGVkJykpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVGl0bGUgYnV0dG9uIGlzIGRpc2FibGVkLicpO1xuICAgIH1cblxuICAgIHJldHVybiBidXR0b24uY2xpY2soKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBjdXJyZW50IGNhbGVuZGFyIG1vZGUuXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0Q2FsZW5kYXJNb2RlKCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgaWYgKGF3YWl0IHRoaXMuI2dldERheXBpY2tlcigpKSB7XG4gICAgICByZXR1cm4gJ2RheSc7XG4gICAgfSBlbHNlIGlmIChhd2FpdCB0aGlzLiNnZXRNb250aHBpY2tlcigpKSB7XG4gICAgICByZXR1cm4gJ21vbnRoJztcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuICd5ZWFyJztcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgY3VycmVudCB0aXRsZS5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBnZXRDYWxlbmRhclRpdGxlKCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuIChhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0VGl0bGUoKSkudGV4dCgpKS50cmltKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgdmFsdWUgb2YgdGhlIGN1cnJlbnRseSBzZWxlY3RlZCBjYWxlbmRhciBpdGVtLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldFNlbGVjdGVkVmFsdWUoKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLiNnZXRTZWxlY3RlZCgpKS5nZXRBdHRyaWJ1dGUoJ2FyaWEtbGFiZWwnKTtcbiAgfVxufVxuIl19
|
@@ -1,19 +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
|
-
* Sets the value of the input.
|
12
|
-
*/
|
13
|
-
async setValue(value) {
|
14
|
-
await super.setValue(value);
|
15
|
-
await (await this.host()).blur();
|
16
|
-
await (await this.host()).dispatchEvent('change');
|
17
|
-
}
|
18
|
-
}
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci1oYXJuZXNzLWlucHV0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2RhdGV0aW1lL3Rlc3Rpbmcvc3JjL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci1oYXJuZXNzLWlucHV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV0RDs7R0FFRztBQUNILE1BQU0sT0FBTyx5QkFBMEIsU0FBUSxlQUFlO0lBQzVEOztPQUVHO2FBQ1csaUJBQVksR0FBRyxzQkFBc0IsQ0FBQztJQUVwRDs7T0FFRztJQUNhLEtBQUssQ0FBQyxRQUFRLENBQUMsS0FBYTtRQUMxQyxNQUFNLEtBQUssQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFNUIsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDakMsTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3BELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTa3lJbnB1dEhhcm5lc3MgfSBmcm9tICdAc2t5dXgvY29yZS90ZXN0aW5nJztcblxuLyoqXG4gKiBIYXJuZXNzIHRvIGludGVyYWN0IHdpdGggdGhlIGRhdGVwaWNrZXIgaW5wdXQgaGFybmVzcy5cbiAqL1xuZXhwb3J0IGNsYXNzIFNreURhdGVwaWNrZXJJbnB1dEhhcm5lc3MgZXh0ZW5kcyBTa3lJbnB1dEhhcm5lc3Mge1xuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGhvc3RTZWxlY3RvciA9ICdbc2t5RGF0ZXBpY2tlcklucHV0XSc7XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSBpbnB1dC5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBhc3luYyBzZXRWYWx1ZSh2YWx1ZTogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgc3VwZXIuc2V0VmFsdWUodmFsdWUpO1xuXG4gICAgYXdhaXQgKGF3YWl0IHRoaXMuaG9zdCgpKS5ibHVyKCk7XG4gICAgYXdhaXQgKGF3YWl0IHRoaXMuaG9zdCgpKS5kaXNwYXRjaEV2ZW50KCdjaGFuZ2UnKTtcbiAgfVxufVxuIl19
|
@@ -1,2 +0,0 @@
|
|
1
|
-
export {};
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci1oYXJuZXNzLmZpbHRlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvZGF0ZXRpbWUvdGVzdGluZy9zcmMvZGF0ZXBpY2tlci9kYXRlcGlja2VyLWhhcm5lc3MuZmlsdGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2t5SGFybmVzc0ZpbHRlcnMgfSBmcm9tICdAc2t5dXgvY29yZS90ZXN0aW5nJztcblxuLyoqXG4gKiBBIHNldCBvZiBjcml0ZXJpYSB0aGF0IGNhbiBiZSB1c2VkIHRvIGZpbHRlciBhIGxpc3Qgb2YgYFNreURhdGVwaWNrZXJIYXJuZXNzYCBpbnN0YW5jZXMuXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktaW50ZXJmYWNlLCBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktb2JqZWN0LXR5cGVcbmV4cG9ydCBpbnRlcmZhY2UgU2t5RGF0ZXBpY2tlckZpbHRlcnMgZXh0ZW5kcyBTa3lIYXJuZXNzRmlsdGVycyB7fVxuIl19
|
@@ -1,59 +0,0 @@
|
|
1
|
-
import { SkyComponentHarness } from '@skyux/core/testing';
|
2
|
-
import { SkyDatepickerCalendarHarness } from './datepicker-calendar-harness';
|
3
|
-
import { SkyDatepickerInputHarness } from './datepicker-harness-input';
|
4
|
-
/**
|
5
|
-
* Harness for interacting with datepicker components in tests.
|
6
|
-
*/
|
7
|
-
export class SkyDatepickerHarness extends SkyComponentHarness {
|
8
|
-
/**
|
9
|
-
* @internal
|
10
|
-
*/
|
11
|
-
static { this.hostSelector = 'sky-datepicker, .sky-input-group'; }
|
12
|
-
#documentRootLocator = this.documentRootLocatorFactory();
|
13
|
-
#getCalendarButton = this.locatorFor('.sky-input-group-datepicker-btn');
|
14
|
-
/**
|
15
|
-
* Gets a `HarnessPredicate` that can be used to search for a
|
16
|
-
* `SkyDatepickerHarness` that meets certain criteria.
|
17
|
-
*
|
18
|
-
* These filters only work for standalone datepickers. For datepickers
|
19
|
-
* wrapped inside `sky-input-box`, place filters on the input box instead and
|
20
|
-
* query the datepicker using a `SkyInputBoxHarness`.
|
21
|
-
* For the input box implementation, see the code example.
|
22
|
-
*/
|
23
|
-
static with(filters) {
|
24
|
-
return SkyDatepickerHarness.getDataSkyIdPredicate(filters);
|
25
|
-
}
|
26
|
-
/**
|
27
|
-
* Clicks the calendar button.
|
28
|
-
*/
|
29
|
-
async clickCalendarButton() {
|
30
|
-
return await (await this.#getCalendarButton()).click();
|
31
|
-
}
|
32
|
-
/**
|
33
|
-
* Gets the `SkyDatepickerCalendarHarness` for the calendar picker controlled by
|
34
|
-
* the datepicker. Throws an error if the calendar picker is not open.
|
35
|
-
*/
|
36
|
-
async getDatepickerCalendar() {
|
37
|
-
const calendarId = await this.#getAriaControls();
|
38
|
-
if (!calendarId) {
|
39
|
-
throw new Error('Unable to get calendar picker because picker is closed.');
|
40
|
-
}
|
41
|
-
return await this.#documentRootLocator.locatorFor(SkyDatepickerCalendarHarness.with({ selector: `#${calendarId}` }))();
|
42
|
-
}
|
43
|
-
/**
|
44
|
-
* Gets the datepicker input harness.
|
45
|
-
*/
|
46
|
-
async getControl() {
|
47
|
-
return await this.locatorFor(SkyDatepickerInputHarness)();
|
48
|
-
}
|
49
|
-
/**
|
50
|
-
* Whether the datepicker calendar picker is open.
|
51
|
-
*/
|
52
|
-
async isDatepickerOpen() {
|
53
|
-
return ((await (await this.#getCalendarButton()).getAttribute('aria-expanded')) === 'true');
|
54
|
-
}
|
55
|
-
async #getAriaControls() {
|
56
|
-
return await (await this.#getCalendarButton()).getAttribute('aria-controls');
|
57
|
-
}
|
58
|
-
}
|
59
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci1oYXJuZXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2RhdGV0aW1lL3Rlc3Rpbmcvc3JjL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci1oYXJuZXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRTFELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzdFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBR3ZFOztHQUVHO0FBQ0gsTUFBTSxPQUFPLG9CQUFxQixTQUFRLG1CQUFtQjtJQUMzRDs7T0FFRzthQUNXLGlCQUFZLEdBQUcsa0NBQWtDLENBQUM7SUFFaEUsb0JBQW9CLEdBQUcsSUFBSSxDQUFDLDBCQUEwQixFQUFFLENBQUM7SUFFekQsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO0lBRXhFOzs7Ozs7OztPQVFHO0lBQ0ksTUFBTSxDQUFDLElBQUksQ0FDaEIsT0FBNkI7UUFFN0IsT0FBTyxvQkFBb0IsQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsbUJBQW1CO1FBQzlCLE9BQU8sTUFBTSxDQUFDLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN6RCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ksS0FBSyxDQUFDLHFCQUFxQjtRQUNoQyxNQUFNLFVBQVUsR0FBRyxNQUFNLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBRWpELElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNoQixNQUFNLElBQUksS0FBSyxDQUNiLHlEQUF5RCxDQUMxRCxDQUFDO1FBQ0osQ0FBQztRQUVELE9BQU8sTUFBTSxJQUFJLENBQUMsb0JBQW9CLENBQUMsVUFBVSxDQUMvQyw0QkFBNEIsQ0FBQyxJQUFJLENBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxVQUFVLEVBQUUsRUFBRSxDQUFDLENBQ2xFLEVBQUUsQ0FBQztJQUNOLENBQUM7SUFFRDs7T0FFRztJQUNJLEtBQUssQ0FBQyxVQUFVO1FBQ3JCLE9BQU8sTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLHlCQUF5QixDQUFDLEVBQUUsQ0FBQztJQUM1RCxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsZ0JBQWdCO1FBQzNCLE9BQU8sQ0FDTCxDQUFDLE1BQU0sQ0FDTCxNQUFNLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUNoQyxDQUFDLFlBQVksQ0FBQyxlQUFlLENBQUMsQ0FBQyxLQUFLLE1BQU0sQ0FDNUMsQ0FBQztJQUNKLENBQUM7SUFFRCxLQUFLLENBQUMsZ0JBQWdCO1FBQ3BCLE9BQU8sTUFBTSxDQUNYLE1BQU0sSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQ2hDLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ2xDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIYXJuZXNzUHJlZGljYXRlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3Rlc3RpbmcnO1xuaW1wb3J0IHsgU2t5Q29tcG9uZW50SGFybmVzcyB9IGZyb20gJ0Bza3l1eC9jb3JlL3Rlc3RpbmcnO1xuXG5pbXBvcnQgeyBTa3lEYXRlcGlja2VyQ2FsZW5kYXJIYXJuZXNzIH0gZnJvbSAnLi9kYXRlcGlja2VyLWNhbGVuZGFyLWhhcm5lc3MnO1xuaW1wb3J0IHsgU2t5RGF0ZXBpY2tlcklucHV0SGFybmVzcyB9IGZyb20gJy4vZGF0ZXBpY2tlci1oYXJuZXNzLWlucHV0JztcbmltcG9ydCB7IFNreURhdGVwaWNrZXJGaWx0ZXJzIH0gZnJvbSAnLi9kYXRlcGlja2VyLWhhcm5lc3MuZmlsdGVycyc7XG5cbi8qKlxuICogSGFybmVzcyBmb3IgaW50ZXJhY3Rpbmcgd2l0aCBkYXRlcGlja2VyIGNvbXBvbmVudHMgaW4gdGVzdHMuXG4gKi9cbmV4cG9ydCBjbGFzcyBTa3lEYXRlcGlja2VySGFybmVzcyBleHRlbmRzIFNreUNvbXBvbmVudEhhcm5lc3Mge1xuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGhvc3RTZWxlY3RvciA9ICdza3ktZGF0ZXBpY2tlciwgLnNreS1pbnB1dC1ncm91cCc7XG5cbiAgI2RvY3VtZW50Um9vdExvY2F0b3IgPSB0aGlzLmRvY3VtZW50Um9vdExvY2F0b3JGYWN0b3J5KCk7XG5cbiAgI2dldENhbGVuZGFyQnV0dG9uID0gdGhpcy5sb2NhdG9yRm9yKCcuc2t5LWlucHV0LWdyb3VwLWRhdGVwaWNrZXItYnRuJyk7XG5cbiAgLyoqXG4gICAqIEdldHMgYSBgSGFybmVzc1ByZWRpY2F0ZWAgdGhhdCBjYW4gYmUgdXNlZCB0byBzZWFyY2ggZm9yIGFcbiAgICogYFNreURhdGVwaWNrZXJIYXJuZXNzYCB0aGF0IG1lZXRzIGNlcnRhaW4gY3JpdGVyaWEuXG4gICAqXG4gICAqIFRoZXNlIGZpbHRlcnMgb25seSB3b3JrIGZvciBzdGFuZGFsb25lIGRhdGVwaWNrZXJzLiBGb3IgZGF0ZXBpY2tlcnNcbiAgICogd3JhcHBlZCBpbnNpZGUgYHNreS1pbnB1dC1ib3hgLCBwbGFjZSBmaWx0ZXJzIG9uIHRoZSBpbnB1dCBib3ggaW5zdGVhZCBhbmRcbiAgICogcXVlcnkgdGhlIGRhdGVwaWNrZXIgdXNpbmcgYSBgU2t5SW5wdXRCb3hIYXJuZXNzYC5cbiAgICogRm9yIHRoZSBpbnB1dCBib3ggaW1wbGVtZW50YXRpb24sIHNlZSB0aGUgY29kZSBleGFtcGxlLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyB3aXRoKFxuICAgIGZpbHRlcnM6IFNreURhdGVwaWNrZXJGaWx0ZXJzLFxuICApOiBIYXJuZXNzUHJlZGljYXRlPFNreURhdGVwaWNrZXJIYXJuZXNzPiB7XG4gICAgcmV0dXJuIFNreURhdGVwaWNrZXJIYXJuZXNzLmdldERhdGFTa3lJZFByZWRpY2F0ZShmaWx0ZXJzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbGlja3MgdGhlIGNhbGVuZGFyIGJ1dHRvbi5cbiAgICovXG4gIHB1YmxpYyBhc3luYyBjbGlja0NhbGVuZGFyQnV0dG9uKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHJldHVybiBhd2FpdCAoYXdhaXQgdGhpcy4jZ2V0Q2FsZW5kYXJCdXR0b24oKSkuY2xpY2soKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBgU2t5RGF0ZXBpY2tlckNhbGVuZGFySGFybmVzc2AgZm9yIHRoZSBjYWxlbmRhciBwaWNrZXIgY29udHJvbGxlZCBieVxuICAgKiB0aGUgZGF0ZXBpY2tlci4gVGhyb3dzIGFuIGVycm9yIGlmIHRoZSBjYWxlbmRhciBwaWNrZXIgaXMgbm90IG9wZW4uXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgZ2V0RGF0ZXBpY2tlckNhbGVuZGFyKCk6IFByb21pc2U8U2t5RGF0ZXBpY2tlckNhbGVuZGFySGFybmVzcz4ge1xuICAgIGNvbnN0IGNhbGVuZGFySWQgPSBhd2FpdCB0aGlzLiNnZXRBcmlhQ29udHJvbHMoKTtcblxuICAgIGlmICghY2FsZW5kYXJJZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAnVW5hYmxlIHRvIGdldCBjYWxlbmRhciBwaWNrZXIgYmVjYXVzZSBwaWNrZXIgaXMgY2xvc2VkLicsXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBhd2FpdCB0aGlzLiNkb2N1bWVudFJvb3RMb2NhdG9yLmxvY2F0b3JGb3IoXG4gICAgICBTa3lEYXRlcGlja2VyQ2FsZW5kYXJIYXJuZXNzLndpdGgoeyBzZWxlY3RvcjogYCMke2NhbGVuZGFySWR9YCB9KSxcbiAgICApKCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgZGF0ZXBpY2tlciBpbnB1dCBoYXJuZXNzLlxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldENvbnRyb2woKTogUHJvbWlzZTxTa3lEYXRlcGlja2VySW5wdXRIYXJuZXNzPiB7XG4gICAgcmV0dXJuIGF3YWl0IHRoaXMubG9jYXRvckZvcihTa3lEYXRlcGlja2VySW5wdXRIYXJuZXNzKSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIGRhdGVwaWNrZXIgY2FsZW5kYXIgcGlja2VyIGlzIG9wZW4uXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgaXNEYXRlcGlja2VyT3BlbigpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gKFxuICAgICAgKGF3YWl0IChcbiAgICAgICAgYXdhaXQgdGhpcy4jZ2V0Q2FsZW5kYXJCdXR0b24oKVxuICAgICAgKS5nZXRBdHRyaWJ1dGUoJ2FyaWEtZXhwYW5kZWQnKSkgPT09ICd0cnVlJ1xuICAgICk7XG4gIH1cblxuICBhc3luYyAjZ2V0QXJpYUNvbnRyb2xzKCk6IFByb21pc2U8c3RyaW5nIHwgbnVsbD4ge1xuICAgIHJldHVybiBhd2FpdCAoXG4gICAgICBhd2FpdCB0aGlzLiNnZXRDYWxlbmRhckJ1dHRvbigpXG4gICAgKS5nZXRBdHRyaWJ1dGUoJ2FyaWEtY29udHJvbHMnKTtcbiAgfVxufVxuIl19
|
@@ -1,55 +0,0 @@
|
|
1
|
-
import { By } from '@angular/platform-browser';
|
2
|
-
import { SkyAppTestUtility } from '@skyux-sdk/testing';
|
3
|
-
/**
|
4
|
-
* Allows interaction with a SKY UX datepicker component.
|
5
|
-
* @internal
|
6
|
-
*/
|
7
|
-
export class SkyDatepickerFixture {
|
8
|
-
#debugEl;
|
9
|
-
constructor(fixture, skyTestId) {
|
10
|
-
this.#debugEl = SkyAppTestUtility.getDebugElementByTestId(fixture, skyTestId, 'sky-datepicker');
|
11
|
-
}
|
12
|
-
/**
|
13
|
-
* The datepicker's currently selected date.
|
14
|
-
*/
|
15
|
-
get date() {
|
16
|
-
return this.#getDatepickerInputEl().nativeElement.value;
|
17
|
-
}
|
18
|
-
/**
|
19
|
-
* Flag indicating if datepicker input is disabled.
|
20
|
-
*/
|
21
|
-
get disabled() {
|
22
|
-
return this.#getDatepickerInputEl().nativeElement.disabled;
|
23
|
-
}
|
24
|
-
/**
|
25
|
-
* The datepicker's calendar element.
|
26
|
-
*/
|
27
|
-
get calendarEl() {
|
28
|
-
const button = this.#debugEl.query(By.css('.sky-datepicker .sky-input-group-datepicker-btn')).nativeElement;
|
29
|
-
const calendarId = button.getAttribute('aria-controls');
|
30
|
-
if (!calendarId) {
|
31
|
-
return null;
|
32
|
-
}
|
33
|
-
return document.getElementById(calendarId);
|
34
|
-
}
|
35
|
-
/**
|
36
|
-
* Click the calendar button to open or close calendar.
|
37
|
-
*/
|
38
|
-
clickDatepickerCalenderButtonEl() {
|
39
|
-
this.#debugEl
|
40
|
-
.query(By.css('.sky-datepicker .sky-input-group-datepicker-btn'))
|
41
|
-
.nativeElement.click();
|
42
|
-
}
|
43
|
-
clickDayEl(dayIndex) {
|
44
|
-
const dayEls = this.calendarEl.querySelectorAll('.sky-datepicker-btn-date');
|
45
|
-
const dayEl = dayEls[dayIndex];
|
46
|
-
if (!dayEl) {
|
47
|
-
throw new Error(`No day exists at index ${dayIndex}.`);
|
48
|
-
}
|
49
|
-
dayEl.click();
|
50
|
-
}
|
51
|
-
#getDatepickerInputEl() {
|
52
|
-
return this.#debugEl.query(By.css('.sky-datepicker input'));
|
53
|
-
}
|
54
|
-
}
|
55
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci1maXh0dXJlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2RhdGV0aW1lL3Rlc3Rpbmcvc3JjL2RhdGVwaWNrZXItZml4dHVyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFdkQ7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLG9CQUFvQjtJQUMvQixRQUFRLENBQWU7SUFFdkIsWUFBWSxPQUE4QixFQUFFLFNBQWlCO1FBQzNELElBQUksQ0FBQyxRQUFRLEdBQUcsaUJBQWlCLENBQUMsdUJBQXVCLENBQ3ZELE9BQU8sRUFDUCxTQUFTLEVBQ1QsZ0JBQWdCLENBQ2pCLENBQUM7SUFDSixDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFXLElBQUk7UUFDYixPQUFPLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUM7SUFDMUQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBVyxRQUFRO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUMsYUFBYSxDQUFDLFFBQVEsQ0FBQztJQUM3RCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFXLFVBQVU7UUFDbkIsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQ2hDLEVBQUUsQ0FBQyxHQUFHLENBQUMsaURBQWlELENBQUMsQ0FDMUQsQ0FBQyxhQUFhLENBQUM7UUFFaEIsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUN4RCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDaEIsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBRUQsT0FBTyxRQUFRLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFRDs7T0FFRztJQUNJLCtCQUErQjtRQUNwQyxJQUFJLENBQUMsUUFBUTthQUNWLEtBQUssQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLGlEQUFpRCxDQUFDLENBQUM7YUFDaEUsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzNCLENBQUM7SUFFTSxVQUFVLENBQUMsUUFBZ0I7UUFDaEMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxnQkFBZ0IsQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1FBRTVFLE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUUvQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDWCxNQUFNLElBQUksS0FBSyxDQUFDLDBCQUEwQixRQUFRLEdBQUcsQ0FBQyxDQUFDO1FBQ3pELENBQUM7UUFFRCxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDaEIsQ0FBQztJQUVELHFCQUFxQjtRQUNuQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsdUJBQXVCLENBQUMsQ0FBQyxDQUFDO0lBQzlELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERlYnVnRWxlbWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tcG9uZW50Rml4dHVyZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvdGVzdGluZyc7XG5pbXBvcnQgeyBCeSB9IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuaW1wb3J0IHsgU2t5QXBwVGVzdFV0aWxpdHkgfSBmcm9tICdAc2t5dXgtc2RrL3Rlc3RpbmcnO1xuXG4vKipcbiAqIEFsbG93cyBpbnRlcmFjdGlvbiB3aXRoIGEgU0tZIFVYIGRhdGVwaWNrZXIgY29tcG9uZW50LlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBTa3lEYXRlcGlja2VyRml4dHVyZSB7XG4gICNkZWJ1Z0VsOiBEZWJ1Z0VsZW1lbnQ7XG5cbiAgY29uc3RydWN0b3IoZml4dHVyZTogQ29tcG9uZW50Rml4dHVyZTxhbnk+LCBza3lUZXN0SWQ6IHN0cmluZykge1xuICAgIHRoaXMuI2RlYnVnRWwgPSBTa3lBcHBUZXN0VXRpbGl0eS5nZXREZWJ1Z0VsZW1lbnRCeVRlc3RJZChcbiAgICAgIGZpeHR1cmUsXG4gICAgICBza3lUZXN0SWQsXG4gICAgICAnc2t5LWRhdGVwaWNrZXInLFxuICAgICk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGRhdGVwaWNrZXIncyBjdXJyZW50bHkgc2VsZWN0ZWQgZGF0ZS5cbiAgICovXG4gIHB1YmxpYyBnZXQgZGF0ZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLiNnZXREYXRlcGlja2VySW5wdXRFbCgpLm5hdGl2ZUVsZW1lbnQudmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogRmxhZyBpbmRpY2F0aW5nIGlmIGRhdGVwaWNrZXIgaW5wdXQgaXMgZGlzYWJsZWQuXG4gICAqL1xuICBwdWJsaWMgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLiNnZXREYXRlcGlja2VySW5wdXRFbCgpLm5hdGl2ZUVsZW1lbnQuZGlzYWJsZWQ7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGRhdGVwaWNrZXIncyBjYWxlbmRhciBlbGVtZW50LlxuICAgKi9cbiAgcHVibGljIGdldCBjYWxlbmRhckVsKCk6IGFueSB7XG4gICAgY29uc3QgYnV0dG9uID0gdGhpcy4jZGVidWdFbC5xdWVyeShcbiAgICAgIEJ5LmNzcygnLnNreS1kYXRlcGlja2VyIC5za3ktaW5wdXQtZ3JvdXAtZGF0ZXBpY2tlci1idG4nKSxcbiAgICApLm5hdGl2ZUVsZW1lbnQ7XG5cbiAgICBjb25zdCBjYWxlbmRhcklkID0gYnV0dG9uLmdldEF0dHJpYnV0ZSgnYXJpYS1jb250cm9scycpO1xuICAgIGlmICghY2FsZW5kYXJJZCkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgcmV0dXJuIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGNhbGVuZGFySWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIENsaWNrIHRoZSBjYWxlbmRhciBidXR0b24gdG8gb3BlbiBvciBjbG9zZSBjYWxlbmRhci5cbiAgICovXG4gIHB1YmxpYyBjbGlja0RhdGVwaWNrZXJDYWxlbmRlckJ1dHRvbkVsKCk6IHZvaWQge1xuICAgIHRoaXMuI2RlYnVnRWxcbiAgICAgIC5xdWVyeShCeS5jc3MoJy5za3ktZGF0ZXBpY2tlciAuc2t5LWlucHV0LWdyb3VwLWRhdGVwaWNrZXItYnRuJykpXG4gICAgICAubmF0aXZlRWxlbWVudC5jbGljaygpO1xuICB9XG5cbiAgcHVibGljIGNsaWNrRGF5RWwoZGF5SW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgIGNvbnN0IGRheUVscyA9IHRoaXMuY2FsZW5kYXJFbC5xdWVyeVNlbGVjdG9yQWxsKCcuc2t5LWRhdGVwaWNrZXItYnRuLWRhdGUnKTtcblxuICAgIGNvbnN0IGRheUVsID0gZGF5RWxzW2RheUluZGV4XTtcblxuICAgIGlmICghZGF5RWwpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgTm8gZGF5IGV4aXN0cyBhdCBpbmRleCAke2RheUluZGV4fS5gKTtcbiAgICB9XG5cbiAgICBkYXlFbC5jbGljaygpO1xuICB9XG5cbiAgI2dldERhdGVwaWNrZXJJbnB1dEVsKCk6IERlYnVnRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuI2RlYnVnRWwucXVlcnkoQnkuY3NzKCcuc2t5LWRhdGVwaWNrZXIgaW5wdXQnKSk7XG4gIH1cbn1cbiJdfQ==
|