@skyux/datetime 8.0.0-alpha.5 → 8.0.0-alpha.7
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 +416 -383
- package/esm2020/index.mjs +3 -2
- package/esm2020/lib/modules/date-pipe/date-pipe.module.mjs +4 -4
- package/esm2020/lib/modules/date-pipe/date.pipe.mjs +3 -3
- package/esm2020/lib/modules/date-pipe/fuzzy-date.pipe.mjs +3 -3
- package/esm2020/lib/modules/date-range-picker/date-range-picker-end-date-resource-key.pipe.mjs +3 -3
- package/esm2020/lib/modules/date-range-picker/date-range-picker-start-date-resource-key.pipe.mjs +3 -3
- package/esm2020/lib/modules/date-range-picker/date-range-picker.component.mjs +71 -71
- package/esm2020/lib/modules/date-range-picker/date-range-picker.module.mjs +4 -4
- package/esm2020/lib/modules/date-range-picker/date-range.service.mjs +3 -3
- package/esm2020/lib/modules/datepicker/datepicker-adapter.service.mjs +3 -3
- package/esm2020/lib/modules/datepicker/datepicker-calendar-inner.component.mjs +3 -3
- package/esm2020/lib/modules/datepicker/datepicker-calendar.component.mjs +11 -11
- package/esm2020/lib/modules/datepicker/datepicker-config.service.mjs +3 -3
- package/esm2020/lib/modules/datepicker/datepicker-input-fuzzy.directive.mjs +61 -61
- package/esm2020/lib/modules/datepicker/datepicker-input.directive.mjs +63 -63
- package/esm2020/lib/modules/datepicker/datepicker.component.mjs +43 -43
- package/esm2020/lib/modules/datepicker/datepicker.module.mjs +4 -4
- package/esm2020/lib/modules/datepicker/datepicker.service.mjs +3 -3
- package/esm2020/lib/modules/datepicker/daypicker-button.component.mjs +3 -3
- package/esm2020/lib/modules/datepicker/daypicker-cell.component.mjs +3 -3
- package/esm2020/lib/modules/datepicker/daypicker.component.mjs +10 -10
- package/esm2020/lib/modules/datepicker/fuzzy-date.service.mjs +3 -3
- package/esm2020/lib/modules/datepicker/monthpicker.component.mjs +3 -3
- package/esm2020/lib/modules/datepicker/yearpicker.component.mjs +3 -3
- package/esm2020/lib/modules/shared/sky-datetime-resources.module.mjs +4 -4
- package/esm2020/lib/modules/timepicker/timepicker-time-format-type.mjs +2 -0
- package/esm2020/lib/modules/timepicker/timepicker-time-output.mjs +2 -0
- package/esm2020/lib/modules/timepicker/timepicker.component.mjs +46 -46
- package/esm2020/lib/modules/timepicker/timepicker.directive.mjs +29 -29
- package/esm2020/lib/modules/timepicker/timepicker.module.mjs +4 -4
- package/fesm2015/skyux-datetime.mjs +387 -387
- package/fesm2015/skyux-datetime.mjs.map +1 -1
- package/fesm2020/skyux-datetime.mjs +388 -388
- package/fesm2020/skyux-datetime.mjs.map +1 -1
- package/index.d.ts +2 -1
- package/lib/modules/date-range-picker/types/date-range-calculator-date-range-function.d.ts +1 -1
- package/lib/modules/date-range-picker/types/date-range-calculator-validate-function.d.ts +1 -1
- package/lib/modules/datepicker/datepicker-calendar-inner.component.d.ts +2 -2
- package/lib/modules/timepicker/timepicker-time-format-type.d.ts +1 -0
- package/lib/modules/timepicker/timepicker.component.d.ts +4 -3
- package/lib/modules/timepicker/timepicker.directive.d.ts +3 -2
- package/package.json +13 -13
- package/esm2020/lib/modules/timepicker/timepicker.interface.mjs +0 -2
- /package/lib/modules/timepicker/{timepicker.interface.d.ts → timepicker-time-output.d.ts} +0 -0
@@ -16,31 +16,6 @@ const SKY_TIMEPICKER_VALIDATOR = {
|
|
16
16
|
multi: true,
|
17
17
|
};
|
18
18
|
export class SkyTimepickerInputDirective {
|
19
|
-
constructor(renderer, elRef, resourcesService, changeDetector) {
|
20
|
-
_SkyTimepickerInputDirective_instances.add(this);
|
21
|
-
_SkyTimepickerInputDirective__timeFormat.set(this, 'hh');
|
22
|
-
_SkyTimepickerInputDirective_control.set(this, void 0);
|
23
|
-
_SkyTimepickerInputDirective__disabled.set(this, false);
|
24
|
-
_SkyTimepickerInputDirective__modelValue.set(this, void 0);
|
25
|
-
_SkyTimepickerInputDirective__skyTimepickerInput.set(this, void 0);
|
26
|
-
_SkyTimepickerInputDirective_renderer.set(this, void 0);
|
27
|
-
_SkyTimepickerInputDirective_elRef.set(this, void 0);
|
28
|
-
_SkyTimepickerInputDirective_resourcesService.set(this, void 0);
|
29
|
-
_SkyTimepickerInputDirective_changeDetector.set(this, void 0);
|
30
|
-
/* istanbul ignore next */
|
31
|
-
// eslint-disable-next-line @typescript-eslint/no-empty-function, @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any
|
32
|
-
_SkyTimepickerInputDirective__onChange.set(this, (_) => { });
|
33
|
-
/* istanbul ignore next */
|
34
|
-
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
35
|
-
_SkyTimepickerInputDirective__onTouched.set(this, () => { });
|
36
|
-
/* istanbul ignore next */
|
37
|
-
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
38
|
-
_SkyTimepickerInputDirective__validatorChange.set(this, () => { });
|
39
|
-
__classPrivateFieldSet(this, _SkyTimepickerInputDirective_renderer, renderer, "f");
|
40
|
-
__classPrivateFieldSet(this, _SkyTimepickerInputDirective_elRef, elRef, "f");
|
41
|
-
__classPrivateFieldSet(this, _SkyTimepickerInputDirective_resourcesService, resourcesService, "f");
|
42
|
-
__classPrivateFieldSet(this, _SkyTimepickerInputDirective_changeDetector, changeDetector, "f");
|
43
|
-
}
|
44
19
|
// TODO: In a future breaking change - grab the parent component through dependency injection and remove this setter.
|
45
20
|
/**
|
46
21
|
* Creates the timepicker input field and picker. Place this attribute on an `input` element,
|
@@ -78,6 +53,31 @@ export class SkyTimepickerInputDirective {
|
|
78
53
|
__classPrivateFieldGet(this, _SkyTimepickerInputDirective_instances, "m", _SkyTimepickerInputDirective_updateTimepickerInput).call(this);
|
79
54
|
__classPrivateFieldGet(this, _SkyTimepickerInputDirective_renderer, "f").setProperty(__classPrivateFieldGet(this, _SkyTimepickerInputDirective_elRef, "f").nativeElement, 'disabled', value);
|
80
55
|
}
|
56
|
+
constructor(renderer, elRef, resourcesService, changeDetector) {
|
57
|
+
_SkyTimepickerInputDirective_instances.add(this);
|
58
|
+
_SkyTimepickerInputDirective__timeFormat.set(this, 'hh');
|
59
|
+
_SkyTimepickerInputDirective_control.set(this, void 0);
|
60
|
+
_SkyTimepickerInputDirective__disabled.set(this, false);
|
61
|
+
_SkyTimepickerInputDirective__modelValue.set(this, void 0);
|
62
|
+
_SkyTimepickerInputDirective__skyTimepickerInput.set(this, void 0);
|
63
|
+
_SkyTimepickerInputDirective_renderer.set(this, void 0);
|
64
|
+
_SkyTimepickerInputDirective_elRef.set(this, void 0);
|
65
|
+
_SkyTimepickerInputDirective_resourcesService.set(this, void 0);
|
66
|
+
_SkyTimepickerInputDirective_changeDetector.set(this, void 0);
|
67
|
+
/* istanbul ignore next */
|
68
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function, @typescript-eslint/no-unused-vars, @typescript-eslint/no-explicit-any
|
69
|
+
_SkyTimepickerInputDirective__onChange.set(this, (_) => { });
|
70
|
+
/* istanbul ignore next */
|
71
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
72
|
+
_SkyTimepickerInputDirective__onTouched.set(this, () => { });
|
73
|
+
/* istanbul ignore next */
|
74
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
75
|
+
_SkyTimepickerInputDirective__validatorChange.set(this, () => { });
|
76
|
+
__classPrivateFieldSet(this, _SkyTimepickerInputDirective_renderer, renderer, "f");
|
77
|
+
__classPrivateFieldSet(this, _SkyTimepickerInputDirective_elRef, elRef, "f");
|
78
|
+
__classPrivateFieldSet(this, _SkyTimepickerInputDirective_resourcesService, resourcesService, "f");
|
79
|
+
__classPrivateFieldSet(this, _SkyTimepickerInputDirective_changeDetector, changeDetector, "f");
|
80
|
+
}
|
81
81
|
ngOnInit() {
|
82
82
|
__classPrivateFieldGet(this, _SkyTimepickerInputDirective_renderer, "f").addClass(__classPrivateFieldGet(this, _SkyTimepickerInputDirective_elRef, "f").nativeElement, 'sky-form-control');
|
83
83
|
this.pickerChangedSubscription =
|
@@ -209,9 +209,9 @@ _SkyTimepickerInputDirective__timeFormat = new WeakMap(), _SkyTimepickerInputDir
|
|
209
209
|
}
|
210
210
|
}
|
211
211
|
};
|
212
|
-
SkyTimepickerInputDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1
|
213
|
-
SkyTimepickerInputDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1
|
214
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1
|
212
|
+
SkyTimepickerInputDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: SkyTimepickerInputDirective, deps: [{ token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i1.SkyLibResourcesService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
|
213
|
+
SkyTimepickerInputDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.1", type: SkyTimepickerInputDirective, selector: "[skyTimepickerInput]", inputs: { skyTimepickerInput: "skyTimepickerInput", timeFormat: "timeFormat", returnFormat: "returnFormat", disabled: "disabled" }, host: { listeners: { "change": "onChange($event)", "blur": "onBlur()" } }, providers: [SKY_TIMEPICKER_VALUE_ACCESSOR, SKY_TIMEPICKER_VALIDATOR], usesOnChanges: true, ngImport: i0 });
|
214
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: SkyTimepickerInputDirective, decorators: [{
|
215
215
|
type: Directive,
|
216
216
|
args: [{
|
217
217
|
selector: '[skyTimepickerInput]',
|
@@ -232,4 +232,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.4", ngImpor
|
|
232
232
|
type: HostListener,
|
233
233
|
args: ['blur']
|
234
234
|
}] } });
|
235
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZXBpY2tlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvZGF0ZXRpbWUvc3JjL2xpYi9tb2R1bGVzL3RpbWVwaWNrZXIvdGltZXBpY2tlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBR0wsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBS0wsVUFBVSxHQUNYLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFHTCxhQUFhLEVBQ2IsaUJBQWlCLEdBR2xCLE1BQU0sZ0JBQWdCLENBQUM7QUFHeEIsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDOzs7QUFNNUIsTUFBTSw2QkFBNkIsR0FBRztJQUNwQyxPQUFPLEVBQUUsaUJBQWlCO0lBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsMkJBQTJCLENBQUM7SUFDMUQsS0FBSyxFQUFFLElBQUk7Q0FDWixDQUFDO0FBRUYsTUFBTSx3QkFBd0IsR0FBRztJQUMvQixPQUFPLEVBQUUsYUFBYTtJQUN0QixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLDJCQUEyQixDQUFDO0lBQzFELEtBQUssRUFBRSxJQUFJO0NBQ1osQ0FBQztBQU1GLE1BQU0sT0FBTywyQkFBMkI7SUE0RnRDLFlBQ0UsUUFBbUIsRUFDbkIsS0FBaUIsRUFDakIsZ0JBQXdDLEVBQ3hDLGNBQWlDOztRQXRGbkMsbURBQWUsSUFBSSxFQUFDO1FBdUVwQix1REFBc0M7UUFFdEMsaURBQWEsS0FBSyxFQUFDO1FBQ25CLDJEQUFrRDtRQUNsRCxtRUFBeUQ7UUFFekQsd0RBQXFCO1FBQ3JCLHFEQUFtQjtRQUNuQixnRUFBMEM7UUFDMUMsOERBQW1DO1FBeUtuQywwQkFBMEI7UUFDMUIsdUlBQXVJO1FBQ3ZJLGlEQUFhLENBQUMsQ0FBTSxFQUFRLEVBQUUsR0FBRSxDQUFD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QUFFO1lBQzdDLEtBQUssRUFBRSxNQUFNLENBQUMsSUFBSSxFQUFFLGFBQWEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUM7WUFDeEQsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO1NBQ2hDLENBQUM7UUFDRixPQUFPLFVBQVUsQ0FBQztLQUNuQjtBQUNILENBQUM7SUFHQyxJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtRQUMzQixJQUFJLENBQUMsa0JBQWtCLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7UUFFakQsMEJBQTBCO1FBQzFCLElBQUksSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksS0FBSyx1QkFBQSxJQUFJLDJGQUFZLEVBQUU7WUFDN0QsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksR0FBRyx1QkFBQSxJQUFJLDJGQUFZLENBQUM7U0FDekQ7S0FDRjtBQUNILENBQUM7d0hBalFVLDJCQUEyQjs0R0FBM0IsMkJBQTJCLDhQQUYzQixDQUFDLDZCQUE2QixFQUFFLHdCQUF3QixDQUFDOzJGQUV6RCwyQkFBMkI7a0JBSnZDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHNCQUFzQjtvQkFDaEMsU0FBUyxFQUFFLENBQUMsNkJBQTZCLEVBQUUsd0JBQXdCLENBQUM7aUJBQ3JFOzhMQXFCWSxrQkFBa0I7c0JBRDVCLEtBQUs7Z0JBZ0JLLFVBQVU7c0JBRHBCLEtBQUs7Z0JBY0MsWUFBWTtzQkFEbEIsS0FBSztnQkFRSyxRQUFRO3NCQURsQixLQUFLO2dCQW9HQyxRQUFRO3NCQURkLFlBQVk7dUJBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQU8zQixNQUFNO3NCQURaLFlBQVk7dUJBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIFJlbmRlcmVyMixcbiAgZm9yd2FyZFJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBBYnN0cmFjdENvbnRyb2wsXG4gIENvbnRyb2xWYWx1ZUFjY2Vzc29yLFxuICBOR19WQUxJREFUT1JTLFxuICBOR19WQUxVRV9BQ0NFU1NPUixcbiAgVmFsaWRhdGlvbkVycm9ycyxcbiAgVmFsaWRhdG9yLFxufSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTa3lMaWJSZXNvdXJjZXNTZXJ2aWNlIH0gZnJvbSAnQHNreXV4L2kxOG4nO1xuXG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgU2t5VGltZXBpY2tlckNvbXBvbmVudCB9IGZyb20gJy4vdGltZXBpY2tlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2t5VGltZXBpY2tlclRpbWVPdXRwdXQgfSBmcm9tICcuL3RpbWVwaWNrZXIuaW50ZXJmYWNlJztcblxuY29uc3QgU0tZX1RJTUVQSUNLRVJfVkFMVUVfQUNDRVNTT1IgPSB7XG4gIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBTa3lUaW1lcGlja2VySW5wdXREaXJlY3RpdmUpLFxuICBtdWx0aTogdHJ1ZSxcbn07XG5cbmNvbnN0IFNLWV9USU1FUElDS0VSX1ZBTElEQVRPUiA9IHtcbiAgcHJvdmlkZTogTkdfVkFMSURBVE9SUyxcbiAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2t5VGltZXBpY2tlcklucHV0RGlyZWN0aXZlKSxcbiAgbXVsdGk6IHRydWUsXG59O1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbc2t5VGltZXBpY2tlcklucHV0XScsXG4gIHByb3ZpZGVyczogW1NLWV9USU1FUElDS0VSX1ZBTFVFX0FDQ0VTU09SLCBTS1lfVElNRVBJQ0tFUl9WQUxJREFUT1JdLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lUaW1lcGlja2VySW5wdXREaXJlY3RpdmVcbiAgaW1wbGVtZW50c1xuICAgIE9uSW5pdCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgQ29udHJvbFZhbHVlQWNjZXNzb3IsXG4gICAgVmFsaWRhdG9yLFxuICAgIE9uQ2hhbmdlcyxcbiAgICBBZnRlckNvbnRlbnRJbml0XG57XG4gIHB1YmxpYyBwaWNrZXJDaGFuZ2VkU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb24gfCB1bmRlZmluZWQ7XG4gICNfdGltZUZvcm1hdCA9ICdoaCc7XG5cbiAgLy8gVE9ETzogSW4gYSBmdXR1cmUgYnJlYWtpbmcgY2hhbmdlIC0gZ3JhYiB0aGUgcGFyZW50IGNvbXBvbmVudCB0aHJvdWdoIGRlcGVuZGVuY3kgaW5qZWN0aW9uIGFuZCByZW1vdmUgdGhpcyBzZXR0ZXIuXG4gIC8qKlxuICAgKiBDcmVhdGVzIHRoZSB0aW1lcGlja2VyIGlucHV0IGZpZWxkIGFuZCBwaWNrZXIuIFBsYWNlIHRoaXMgYXR0cmlidXRlIG9uIGFuIGBpbnB1dGAgZWxlbWVudCxcbiAgICogYW5kIHdyYXAgdGhlIGlucHV0IGluIGEgYHNreS10aW1lcGlja2VyYCBjb21wb25lbnQuXG4gICAqIFRoaXMgYXR0cmlidXRlIG11c3QgYmUgc2V0IHRvIHRoZSBpbnN0YW5jZSBvZiB0aGUgYHNreS10aW1lcGlja2VyYC5cbiAgICogQHJlcXVpcmVkXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZ2V0IHNreVRpbWVwaWNrZXJJbnB1dCgpOiBTa3lUaW1lcGlja2VyQ29tcG9uZW50IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy4jX3NreVRpbWVwaWNrZXJJbnB1dDtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgc2t5VGltZXBpY2tlcklucHV0KHZhbHVlOiBTa3lUaW1lcGlja2VyQ29tcG9uZW50IHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX3NreVRpbWVwaWNrZXJJbnB1dCA9IHZhbHVlO1xuICAgIHRoaXMuI3VwZGF0ZVRpbWVwaWNrZXJJbnB1dCgpO1xuICB9XG5cbiAgLy8gVE9ETzogSW4gYSBmdXR1cmUgYnJlYWtpbmcgY2hhbmdlIC0gbWFrZSB0aGlzIG1vcmUgc3BlY2lmaWMgdGhhbiBcInN0cmluZ1wiXG4gIC8qKlxuICAgKiBUaGUgMTItaG91ciBgaGhgIG9yIDI0LWhvdXIgYEhIYCB0aW1lIGZvcm1hdCBmb3IgdGhlIGlucHV0LlxuICAgKiBAZGVmYXVsdCBcImhoXCJcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgdGltZUZvcm1hdCh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX3RpbWVGb3JtYXQgPSB2YWx1ZSB8fCAnaGgnO1xuICB9XG5cbiAgcHVibGljIGdldCB0aW1lRm9ybWF0KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuI190aW1lRm9ybWF0O1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBjdXN0b20gdGltZSBmb3JtYXQuIEZvciBleGFtcGxlcyxcbiAgICogc2VlIHRoZSBbbW9tZW50LmpzXShodHRwczovL21vbWVudGpzLmNvbS9kb2NzLyMvZGlzcGxheWluZy9mb3JtYXQvKSBkb2NzLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHJldHVybkZvcm1hdDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGRpc2FibGUgdGhlIHRpbWVwaWNrZXIuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLiNfZGlzYWJsZWQ7XG4gIH1cblxuICBwdWJsaWMgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX2Rpc2FibGVkID0gdmFsdWUgfHwgZmFsc2U7XG5cbiAgICB0aGlzLiN1cGRhdGVUaW1lcGlja2VySW5wdXQoKTtcblxuICAgIHRoaXMuI3JlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuI2VsUmVmLm5hdGl2ZUVsZW1lbnQsICdkaXNhYmxlZCcsIHZhbHVlKTtcbiAgfVxuXG4gIGdldCAjbW9kZWxWYWx1ZSgpOiBTa3lUaW1lcGlja2VyVGltZU91dHB1dCB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuI19tb2RlbFZhbHVlO1xuICB9XG5cbiAgc2V0ICNtb2RlbFZhbHVlKHZhbHVlOiBTa3lUaW1lcGlja2VyVGltZU91dHB1dCB8IHVuZGVmaW5lZCkge1xuICAgIGlmICh2YWx1ZSAhPT0gdGhpcy4jX21vZGVsVmFsdWUpIHtcbiAgICAgIHRoaXMuI19tb2RlbFZhbHVlID0gdmFsdWU7XG4gICAgICB0aGlzLiN1cGRhdGVUaW1lcGlja2VySW5wdXQoKTtcbiAgICAgIHRoaXMuI3NldElucHV0VmFsdWUodmFsdWUpO1xuICAgICAgdGhpcy4jX3ZhbGlkYXRvckNoYW5nZSgpO1xuICAgICAgdGhpcy4jX29uQ2hhbmdlKHZhbHVlKTtcbiAgICB9XG4gIH1cblxuICAjY29udHJvbDogQWJzdHJhY3RDb250cm9sIHwgdW5kZWZpbmVkO1xuXG4gICNfZGlzYWJsZWQgPSBmYWxzZTtcbiAgI19tb2RlbFZhbHVlOiBTa3lUaW1lcGlja2VyVGltZU91dHB1dCB8IHVuZGVmaW5lZDtcbiAgI19za3lUaW1lcGlja2VySW5wdXQ6IFNreVRpbWVwaWNrZXJDb21wb25lbnQgfCB1bmRlZmluZWQ7XG5cbiAgI3JlbmRlcmVyOiBSZW5kZXJlcjI7XG4gICNlbFJlZjogRWxlbWVudFJlZjtcbiAgI3Jlc291cmNlc1NlcnZpY2U6IFNreUxpYlJlc291cmNlc1NlcnZpY2U7XG4gICNjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWY7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBlbFJlZjogRWxlbWVudFJlZixcbiAgICByZXNvdXJjZXNTZXJ2aWNlOiBTa3lMaWJSZXNvdXJjZXNTZXJ2aWNlLFxuICAgIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHtcbiAgICB0aGlzLiNyZW5kZXJlciA9IHJlbmRlcmVyO1xuICAgIHRoaXMuI2VsUmVmID0gZWxSZWY7XG4gICAgdGhpcy4jcmVzb3VyY2VzU2VydmljZSA9IHJlc291cmNlc1NlcnZpY2U7XG4gICAgdGhpcy4jY2hhbmdlRGV0ZWN0b3IgPSBjaGFuZ2VEZXRlY3RvcjtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLiNyZW5kZXJlci5hZGRDbGFzcyh0aGlzLiNlbFJlZi5uYXRpdmVFbGVtZW50LCAnc2t5LWZvcm0tY29udHJvbCcpO1xuICAgIHRoaXMucGlja2VyQ2hhbmdlZFN1YnNjcmlwdGlvbiA9XG4gICAgICB0aGlzLnNreVRpbWVwaWNrZXJJbnB1dD8uc2VsZWN0ZWRUaW1lQ2hhbmdlZC5zdWJzY3JpYmUoXG4gICAgICAgIChuZXdUaW1lOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICB0aGlzLndyaXRlVmFsdWUobmV3VGltZSk7XG4gICAgICAgICAgdGhpcy4jX29uVG91Y2hlZCgpO1xuICAgICAgICB9XG4gICAgICApO1xuXG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAoIXRoaXMuI2VsUmVmLm5hdGl2ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKCdhcmlhLWxhYmVsJykpIHtcbiAgICAgIHRoaXMuI3Jlc291cmNlc1NlcnZpY2VcbiAgICAgICAgLmdldFN0cmluZygnc2t5dXhfdGltZXBpY2tlcl9pbnB1dF9kZWZhdWx0X2xhYmVsJylcbiAgICAgICAgLnN1YnNjcmliZSgodmFsdWU6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHRoaXMuI3JlbmRlcmVyLnNldEF0dHJpYnV0ZShcbiAgICAgICAgICAgIHRoaXMuI2VsUmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICAnYXJpYS1sYWJlbCcsXG4gICAgICAgICAgICB2YWx1ZVxuICAgICAgICAgICk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgLy8gV2F0Y2ggZm9yIHRoZSBjb250cm9sIHRvIGJlIGFkZGVkIGFuZCBpbml0aWFsaXplIHRoZSB2YWx1ZSBpbW1lZGlhdGVseS5cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmICh0aGlzLiNjb250cm9sICYmIHRoaXMuI2NvbnRyb2wucGFyZW50KSB7XG4gICAgICB0aGlzLiNjb250cm9sLnNldFZhbHVlKHRoaXMuI21vZGVsVmFsdWUsIHtcbiAgICAgICAgZW1pdEV2ZW50OiBmYWxzZSxcbiAgICAgIH0pO1xuICAgICAgdGhpcy4jY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKHRoaXMucGlja2VyQ2hhbmdlZFN1YnNjcmlwdGlvbikge1xuICAgICAgdGhpcy5waWNrZXJDaGFuZ2VkU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKCkge1xuICAgIGlmICh0aGlzLnNreVRpbWVwaWNrZXJJbnB1dCkge1xuICAgICAgdGhpcy5za3lUaW1lcGlja2VySW5wdXQuc2V0Rm9ybWF0KHRoaXMudGltZUZvcm1hdCk7XG4gICAgICB0aGlzLnNreVRpbWVwaWNrZXJJbnB1dC5yZXR1cm5Gb3JtYXQgPSB0aGlzLnJldHVybkZvcm1hdDtcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdjaGFuZ2UnLCBbJyRldmVudCddKVxuICBwdWJsaWMgb25DaGFuZ2UoZXZlbnQ6IGFueSkge1xuICAgIHRoaXMud3JpdGVWYWx1ZShldmVudC50YXJnZXQudmFsdWUpO1xuICB9XG5cbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgQEhvc3RMaXN0ZW5lcignYmx1cicpXG4gIHB1YmxpYyBvbkJsdXIoKSB7XG4gICAgdGhpcy4jX29uVG91Y2hlZCgpO1xuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2YWx1ZTogYW55KSA9PiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLiNfb25DaGFuZ2UgPSBmbjtcbiAgfVxuICBwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IGFueSk6IHZvaWQge1xuICAgIHRoaXMuI19vblRvdWNoZWQgPSBmbjtcbiAgfVxuICBwdWJsaWMgcmVnaXN0ZXJPblZhbGlkYXRvckNoYW5nZShmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMuI192YWxpZGF0b3JDaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHB1YmxpYyBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgfVxuXG4gIHB1YmxpYyB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICB0aGlzLiNtb2RlbFZhbHVlID0gdGhpcy4jZm9ybWF0dGVyKHZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyB2YWxpZGF0ZShjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCB7XG4gICAgaWYgKCF0aGlzLiNjb250cm9sKSB7XG4gICAgICB0aGlzLiNjb250cm9sID0gY29udHJvbDtcbiAgICB9XG5cbiAgICBjb25zdCB2YWx1ZSA9IGNvbnRyb2wudmFsdWU7XG4gICAgaWYgKCF2YWx1ZSkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICBpZiAodmFsdWUubG9jYWwgPT09ICdJbnZhbGlkIGRhdGUnKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBza3lUaW1lOiB7XG4gICAgICAgICAgaW52YWxpZDogY29udHJvbC52YWx1ZSxcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICAjc2V0SW5wdXRWYWx1ZSh2YWx1ZTogU2t5VGltZXBpY2tlclRpbWVPdXRwdXQgfCB1bmRlZmluZWQpOiB2b2lkIHtcbiAgICBsZXQgZm9ybWF0dGVkVmFsdWUgPSAnJztcbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIGNvbnN0IG91dHB1dCA9IG1vbWVudCh2YWx1ZSkuZm9ybWF0KHZhbHVlLmN1c3RvbUZvcm1hdCk7XG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgaWYgKG91dHB1dCAhPT0gJ0ludmFsaWQgZGF0ZScpIHtcbiAgICAgICAgZm9ybWF0dGVkVmFsdWUgPSBvdXRwdXQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy4jcmVuZGVyZXIuc2V0UHJvcGVydHkoXG4gICAgICB0aGlzLiNlbFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgJ3ZhbHVlJyxcbiAgICAgIGZvcm1hdHRlZFZhbHVlXG4gICAgKTtcbiAgfVxuXG4gICNmb3JtYXR0ZXIodGltZTogYW55KSB7XG4gICAgaWYgKHRpbWUgJiYgdHlwZW9mIHRpbWUgIT09ICdzdHJpbmcnICYmICdsb2NhbCcgaW4gdGltZSkge1xuICAgICAgcmV0dXJuIHRpbWU7XG4gICAgfVxuICAgIGlmICh0eXBlb2YgdGltZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGlmICh0aW1lLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICByZXR1cm4gJyc7XG4gICAgICB9XG4gICAgICBjb25zdCBjdXJyZW50Rm9ybWF0ID0gdGhpcy50aW1lRm9ybWF0ID09PSAnSEgnID8gJ0g6bW0nIDogJ2g6bW0gQSc7XG5cbiAgICAgIGlmICh0eXBlb2YgdGhpcy5yZXR1cm5Gb3JtYXQgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIHRoaXMucmV0dXJuRm9ybWF0ID0gY3VycmVudEZvcm1hdDtcbiAgICAgIH1cblxuICAgICAgY29uc3QgZm9ybWF0VGltZTogU2t5VGltZXBpY2tlclRpbWVPdXRwdXQgPSB7XG4gICAgICAgIGhvdXI6IG1vbWVudCh0aW1lLCBjdXJyZW50Rm9ybWF0KS5ob3VyKCksXG4gICAgICAgIG1pbnV0ZTogbW9tZW50KHRpbWUsIGN1cnJlbnRGb3JtYXQpLm1pbnV0ZSgpLFxuICAgICAgICBtZXJpZGllOiBtb21lbnQodGltZSwgY3VycmVudEZvcm1hdCkuZm9ybWF0KCdBJyksXG4gICAgICAgIHRpbWV6b25lOiBwYXJzZUludChtb21lbnQodGltZSwgY3VycmVudEZvcm1hdCkuZm9ybWF0KCdaJyksIDEwKSxcbiAgICAgICAgaXNvODYwMTogbW9tZW50KHRpbWUsIGN1cnJlbnRGb3JtYXQpLnRvRGF0ZSgpLFxuICAgICAgICBsb2NhbDogbW9tZW50KHRpbWUsIGN1cnJlbnRGb3JtYXQpLmZvcm1hdChjdXJyZW50Rm9ybWF0KSxcbiAgICAgICAgY3VzdG9tRm9ybWF0OiB0aGlzLnJldHVybkZvcm1hdCxcbiAgICAgIH07XG4gICAgICByZXR1cm4gZm9ybWF0VGltZTtcbiAgICB9XG4gIH1cblxuICAjdXBkYXRlVGltZXBpY2tlcklucHV0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnNreVRpbWVwaWNrZXJJbnB1dCkge1xuICAgICAgdGhpcy5za3lUaW1lcGlja2VySW5wdXQuZGlzYWJsZWQgPSB0aGlzLmRpc2FibGVkO1xuXG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgaWYgKHRoaXMuc2t5VGltZXBpY2tlcklucHV0LnNlbGVjdGVkVGltZSAhPT0gdGhpcy4jbW9kZWxWYWx1ZSkge1xuICAgICAgICB0aGlzLnNreVRpbWVwaWNrZXJJbnB1dC5zZWxlY3RlZFRpbWUgPSB0aGlzLiNtb2RlbFZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb24sIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFycywgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAjX29uQ2hhbmdlID0gKF86IGFueSk6IHZvaWQgPT4ge307XG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgI19vblRvdWNoZWQgPSAoKTogdm9pZCA9PiB7fTtcbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICAjX3ZhbGlkYXRvckNoYW5nZSA9ICgpOiB2b2lkID0+IHt9O1xufVxuIl19
|
235
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZXBpY2tlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvZGF0ZXRpbWUvc3JjL2xpYi9tb2R1bGVzL3RpbWVwaWNrZXIvdGltZXBpY2tlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBR0wsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBS0wsVUFBVSxHQUNYLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFHTCxhQUFhLEVBQ2IsaUJBQWlCLEdBR2xCLE1BQU0sZ0JBQWdCLENBQUM7QUFHeEIsT0FBTyxNQUFNLE1BQU0sUUFBUSxDQUFDOzs7QUFPNUIsTUFBTSw2QkFBNkIsR0FBRztJQUNwQyxPQUFPLEVBQUUsaUJBQWlCO0lBQzFCLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsMkJBQTJCLENBQUM7SUFDMUQsS0FBSyxFQUFFLElBQUk7Q0FDWixDQUFDO0FBRUYsTUFBTSx3QkFBd0IsR0FBRztJQUMvQixPQUFPLEVBQUUsYUFBYTtJQUN0QixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLDJCQUEyQixDQUFDO0lBQzFELEtBQUssRUFBRSxJQUFJO0NBQ1osQ0FBQztBQU1GLE1BQU0sT0FBTywyQkFBMkI7SUFZdEMscUhBQXFIO0lBQ3JIOzs7OztPQUtHO0lBQ0gsSUFDVyxrQkFBa0I7UUFDM0IsT0FBTyx1QkFBQSxJQUFJLHdEQUFxQixDQUFDO0lBQ25DLENBQUM7SUFFRCxJQUFXLGtCQUFrQixDQUFDLEtBQXlDO1FBQ3JFLHVCQUFBLElBQUksb0RBQXdCLEtBQUssTUFBQSxDQUFDO1FBQ2xDLHVCQUFBLElBQUksa0dBQXVCLE1BQTNCLElBQUksQ0FBeUIsQ0FBQztJQUNoQyxDQUFDO0lBRUQsNEVBQTRFO0lBQzVFOzs7T0FHRztJQUNILElBQ1csVUFBVSxDQUFDLEtB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QUU7WUFDN0MsS0FBSyxFQUFFLE1BQU0sQ0FBQyxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQztZQUN4RCxZQUFZLEVBQUUsSUFBSSxDQUFDLFlBQVk7U0FDaEMsQ0FBQztRQUNGLE9BQU8sVUFBVSxDQUFDO0tBQ25CO0FBQ0gsQ0FBQztJQUdDLElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFO1FBQzNCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUVqRCwwQkFBMEI7UUFDMUIsSUFBSSxJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxLQUFLLHVCQUFBLElBQUksMkZBQVksRUFBRTtZQUM3RCxJQUFJLENBQUMsa0JBQWtCLENBQUMsWUFBWSxHQUFHLHVCQUFBLElBQUksMkZBQVksQ0FBQztTQUN6RDtLQUNGO0FBQ0gsQ0FBQzt3SEFqUVUsMkJBQTJCOzRHQUEzQiwyQkFBMkIsOFBBRjNCLENBQUMsNkJBQTZCLEVBQUUsd0JBQXdCLENBQUM7MkZBRXpELDJCQUEyQjtrQkFKdkMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsc0JBQXNCO29CQUNoQyxTQUFTLEVBQUUsQ0FBQyw2QkFBNkIsRUFBRSx3QkFBd0IsQ0FBQztpQkFDckU7OExBcUJZLGtCQUFrQjtzQkFENUIsS0FBSztnQkFnQkssVUFBVTtzQkFEcEIsS0FBSztnQkFjQyxZQUFZO3NCQURsQixLQUFLO2dCQVFLLFFBQVE7c0JBRGxCLEtBQUs7Z0JBb0dDLFFBQVE7c0JBRGQsWUFBWTt1QkFBQyxRQUFRLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBTzNCLE1BQU07c0JBRFosWUFBWTt1QkFBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIERpcmVjdGl2ZSxcbiAgRWxlbWVudFJlZixcbiAgSG9zdExpc3RlbmVyLFxuICBJbnB1dCxcbiAgT25DaGFuZ2VzLFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbiAgUmVuZGVyZXIyLFxuICBmb3J3YXJkUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIEFic3RyYWN0Q29udHJvbCxcbiAgQ29udHJvbFZhbHVlQWNjZXNzb3IsXG4gIE5HX1ZBTElEQVRPUlMsXG4gIE5HX1ZBTFVFX0FDQ0VTU09SLFxuICBWYWxpZGF0aW9uRXJyb3JzLFxuICBWYWxpZGF0b3IsXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFNreUxpYlJlc291cmNlc1NlcnZpY2UgfSBmcm9tICdAc2t5dXgvaTE4bic7XG5cbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50JztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBTa3lUaW1lcGlja2VyVGltZUZvcm1hdFR5cGUgfSBmcm9tICcuL3RpbWVwaWNrZXItdGltZS1mb3JtYXQtdHlwZSc7XG5pbXBvcnQgeyBTa3lUaW1lcGlja2VyVGltZU91dHB1dCB9IGZyb20gJy4vdGltZXBpY2tlci10aW1lLW91dHB1dCc7XG5pbXBvcnQgeyBTa3lUaW1lcGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi90aW1lcGlja2VyLmNvbXBvbmVudCc7XG5cbmNvbnN0IFNLWV9USU1FUElDS0VSX1ZBTFVFX0FDQ0VTU09SID0ge1xuICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2t5VGltZXBpY2tlcklucHV0RGlyZWN0aXZlKSxcbiAgbXVsdGk6IHRydWUsXG59O1xuXG5jb25zdCBTS1lfVElNRVBJQ0tFUl9WQUxJREFUT1IgPSB7XG4gIHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsXG4gIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFNreVRpbWVwaWNrZXJJbnB1dERpcmVjdGl2ZSksXG4gIG11bHRpOiB0cnVlLFxufTtcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3NreVRpbWVwaWNrZXJJbnB1dF0nLFxuICBwcm92aWRlcnM6IFtTS1lfVElNRVBJQ0tFUl9WQUxVRV9BQ0NFU1NPUiwgU0tZX1RJTUVQSUNLRVJfVkFMSURBVE9SXSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5VGltZXBpY2tlcklucHV0RGlyZWN0aXZlXG4gIGltcGxlbWVudHNcbiAgICBPbkluaXQsXG4gICAgT25EZXN0cm95LFxuICAgIENvbnRyb2xWYWx1ZUFjY2Vzc29yLFxuICAgIFZhbGlkYXRvcixcbiAgICBPbkNoYW5nZXMsXG4gICAgQWZ0ZXJDb250ZW50SW5pdFxue1xuICBwdWJsaWMgcGlja2VyQ2hhbmdlZFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uIHwgdW5kZWZpbmVkO1xuICAjX3RpbWVGb3JtYXQ6IFNreVRpbWVwaWNrZXJUaW1lRm9ybWF0VHlwZSA9ICdoaCc7XG5cbiAgLy8gVE9ETzogSW4gYSBmdXR1cmUgYnJlYWtpbmcgY2hhbmdlIC0gZ3JhYiB0aGUgcGFyZW50IGNvbXBvbmVudCB0aHJvdWdoIGRlcGVuZGVuY3kgaW5qZWN0aW9uIGFuZCByZW1vdmUgdGhpcyBzZXR0ZXIuXG4gIC8qKlxuICAgKiBDcmVhdGVzIHRoZSB0aW1lcGlja2VyIGlucHV0IGZpZWxkIGFuZCBwaWNrZXIuIFBsYWNlIHRoaXMgYXR0cmlidXRlIG9uIGFuIGBpbnB1dGAgZWxlbWVudCxcbiAgICogYW5kIHdyYXAgdGhlIGlucHV0IGluIGEgYHNreS10aW1lcGlja2VyYCBjb21wb25lbnQuXG4gICAqIFRoaXMgYXR0cmlidXRlIG11c3QgYmUgc2V0IHRvIHRoZSBpbnN0YW5jZSBvZiB0aGUgYHNreS10aW1lcGlja2VyYC5cbiAgICogQHJlcXVpcmVkXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZ2V0IHNreVRpbWVwaWNrZXJJbnB1dCgpOiBTa3lUaW1lcGlja2VyQ29tcG9uZW50IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy4jX3NreVRpbWVwaWNrZXJJbnB1dDtcbiAgfVxuXG4gIHB1YmxpYyBzZXQgc2t5VGltZXBpY2tlcklucHV0KHZhbHVlOiBTa3lUaW1lcGlja2VyQ29tcG9uZW50IHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX3NreVRpbWVwaWNrZXJJbnB1dCA9IHZhbHVlO1xuICAgIHRoaXMuI3VwZGF0ZVRpbWVwaWNrZXJJbnB1dCgpO1xuICB9XG5cbiAgLy8gVE9ETzogSW4gYSBmdXR1cmUgYnJlYWtpbmcgY2hhbmdlIC0gbWFrZSB0aGlzIG1vcmUgc3BlY2lmaWMgdGhhbiBcInN0cmluZ1wiXG4gIC8qKlxuICAgKiBUaGUgMTItaG91ciBgaGhgIG9yIDI0LWhvdXIgYEhIYCB0aW1lIGZvcm1hdCBmb3IgdGhlIGlucHV0LlxuICAgKiBAZGVmYXVsdCBcImhoXCJcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgdGltZUZvcm1hdCh2YWx1ZTogU2t5VGltZXBpY2tlclRpbWVGb3JtYXRUeXBlIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX3RpbWVGb3JtYXQgPSB2YWx1ZSB8fCAnaGgnO1xuICB9XG5cbiAgcHVibGljIGdldCB0aW1lRm9ybWF0KCk6IFNreVRpbWVwaWNrZXJUaW1lRm9ybWF0VHlwZSB7XG4gICAgcmV0dXJuIHRoaXMuI190aW1lRm9ybWF0O1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBjdXN0b20gdGltZSBmb3JtYXQuIEZvciBleGFtcGxlcyxcbiAgICogc2VlIHRoZSBbbW9tZW50LmpzXShodHRwczovL21vbWVudGpzLmNvbS9kb2NzLyMvZGlzcGxheWluZy9mb3JtYXQvKSBkb2NzLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHJldHVybkZvcm1hdDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRvIGRpc2FibGUgdGhlIHRpbWVwaWNrZXIuXG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLiNfZGlzYWJsZWQ7XG4gIH1cblxuICBwdWJsaWMgc2V0IGRpc2FibGVkKHZhbHVlOiBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy4jX2Rpc2FibGVkID0gdmFsdWUgfHwgZmFsc2U7XG5cbiAgICB0aGlzLiN1cGRhdGVUaW1lcGlja2VySW5wdXQoKTtcblxuICAgIHRoaXMuI3JlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuI2VsUmVmLm5hdGl2ZUVsZW1lbnQsICdkaXNhYmxlZCcsIHZhbHVlKTtcbiAgfVxuXG4gIGdldCAjbW9kZWxWYWx1ZSgpOiBTa3lUaW1lcGlja2VyVGltZU91dHB1dCB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMuI19tb2RlbFZhbHVlO1xuICB9XG5cbiAgc2V0ICNtb2RlbFZhbHVlKHZhbHVlOiBTa3lUaW1lcGlja2VyVGltZU91dHB1dCB8IHVuZGVmaW5lZCkge1xuICAgIGlmICh2YWx1ZSAhPT0gdGhpcy4jX21vZGVsVmFsdWUpIHtcbiAgICAgIHRoaXMuI19tb2RlbFZhbHVlID0gdmFsdWU7XG4gICAgICB0aGlzLiN1cGRhdGVUaW1lcGlja2VySW5wdXQoKTtcbiAgICAgIHRoaXMuI3NldElucHV0VmFsdWUodmFsdWUpO1xuICAgICAgdGhpcy4jX3ZhbGlkYXRvckNoYW5nZSgpO1xuICAgICAgdGhpcy4jX29uQ2hhbmdlKHZhbHVlKTtcbiAgICB9XG4gIH1cblxuICAjY29udHJvbDogQWJzdHJhY3RDb250cm9sIHwgdW5kZWZpbmVkO1xuXG4gICNfZGlzYWJsZWQgPSBmYWxzZTtcbiAgI19tb2RlbFZhbHVlOiBTa3lUaW1lcGlja2VyVGltZU91dHB1dCB8IHVuZGVmaW5lZDtcbiAgI19za3lUaW1lcGlja2VySW5wdXQ6IFNreVRpbWVwaWNrZXJDb21wb25lbnQgfCB1bmRlZmluZWQ7XG5cbiAgI3JlbmRlcmVyOiBSZW5kZXJlcjI7XG4gICNlbFJlZjogRWxlbWVudFJlZjtcbiAgI3Jlc291cmNlc1NlcnZpY2U6IFNreUxpYlJlc291cmNlc1NlcnZpY2U7XG4gICNjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWY7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBlbFJlZjogRWxlbWVudFJlZixcbiAgICByZXNvdXJjZXNTZXJ2aWNlOiBTa3lMaWJSZXNvdXJjZXNTZXJ2aWNlLFxuICAgIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZlxuICApIHtcbiAgICB0aGlzLiNyZW5kZXJlciA9IHJlbmRlcmVyO1xuICAgIHRoaXMuI2VsUmVmID0gZWxSZWY7XG4gICAgdGhpcy4jcmVzb3VyY2VzU2VydmljZSA9IHJlc291cmNlc1NlcnZpY2U7XG4gICAgdGhpcy4jY2hhbmdlRGV0ZWN0b3IgPSBjaGFuZ2VEZXRlY3RvcjtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLiNyZW5kZXJlci5hZGRDbGFzcyh0aGlzLiNlbFJlZi5uYXRpdmVFbGVtZW50LCAnc2t5LWZvcm0tY29udHJvbCcpO1xuICAgIHRoaXMucGlja2VyQ2hhbmdlZFN1YnNjcmlwdGlvbiA9XG4gICAgICB0aGlzLnNreVRpbWVwaWNrZXJJbnB1dD8uc2VsZWN0ZWRUaW1lQ2hhbmdlZC5zdWJzY3JpYmUoXG4gICAgICAgIChuZXdUaW1lOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICB0aGlzLndyaXRlVmFsdWUobmV3VGltZSk7XG4gICAgICAgICAgdGhpcy4jX29uVG91Y2hlZCgpO1xuICAgICAgICB9XG4gICAgICApO1xuXG4gICAgLyogaXN0YW5idWwgaWdub3JlIGVsc2UgKi9cbiAgICBpZiAoIXRoaXMuI2VsUmVmLm5hdGl2ZUVsZW1lbnQuZ2V0QXR0cmlidXRlKCdhcmlhLWxhYmVsJykpIHtcbiAgICAgIHRoaXMuI3Jlc291cmNlc1NlcnZpY2VcbiAgICAgICAgLmdldFN0cmluZygnc2t5dXhfdGltZXBpY2tlcl9pbnB1dF9kZWZhdWx0X2xhYmVsJylcbiAgICAgICAgLnN1YnNjcmliZSgodmFsdWU6IHN0cmluZykgPT4ge1xuICAgICAgICAgIHRoaXMuI3JlbmRlcmVyLnNldEF0dHJpYnV0ZShcbiAgICAgICAgICAgIHRoaXMuI2VsUmVmLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICAnYXJpYS1sYWJlbCcsXG4gICAgICAgICAgICB2YWx1ZVxuICAgICAgICAgICk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XG4gICAgLy8gV2F0Y2ggZm9yIHRoZSBjb250cm9sIHRvIGJlIGFkZGVkIGFuZCBpbml0aWFsaXplIHRoZSB2YWx1ZSBpbW1lZGlhdGVseS5cbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgIGlmICh0aGlzLiNjb250cm9sICYmIHRoaXMuI2NvbnRyb2wucGFyZW50KSB7XG4gICAgICB0aGlzLiNjb250cm9sLnNldFZhbHVlKHRoaXMuI21vZGVsVmFsdWUsIHtcbiAgICAgICAgZW1pdEV2ZW50OiBmYWxzZSxcbiAgICAgIH0pO1xuICAgICAgdGhpcy4jY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKHRoaXMucGlja2VyQ2hhbmdlZFN1YnNjcmlwdGlvbikge1xuICAgICAgdGhpcy5waWNrZXJDaGFuZ2VkU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKCkge1xuICAgIGlmICh0aGlzLnNreVRpbWVwaWNrZXJJbnB1dCkge1xuICAgICAgdGhpcy5za3lUaW1lcGlja2VySW5wdXQuc2V0Rm9ybWF0KHRoaXMudGltZUZvcm1hdCk7XG4gICAgICB0aGlzLnNreVRpbWVwaWNrZXJJbnB1dC5yZXR1cm5Gb3JtYXQgPSB0aGlzLnJldHVybkZvcm1hdDtcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdjaGFuZ2UnLCBbJyRldmVudCddKVxuICBwdWJsaWMgb25DaGFuZ2UoZXZlbnQ6IGFueSkge1xuICAgIHRoaXMud3JpdGVWYWx1ZShldmVudC50YXJnZXQudmFsdWUpO1xuICB9XG5cbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgQEhvc3RMaXN0ZW5lcignYmx1cicpXG4gIHB1YmxpYyBvbkJsdXIoKSB7XG4gICAgdGhpcy4jX29uVG91Y2hlZCgpO1xuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2YWx1ZTogYW55KSA9PiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLiNfb25DaGFuZ2UgPSBmbjtcbiAgfVxuICBwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IGFueSk6IHZvaWQge1xuICAgIHRoaXMuI19vblRvdWNoZWQgPSBmbjtcbiAgfVxuICBwdWJsaWMgcmVnaXN0ZXJPblZhbGlkYXRvckNoYW5nZShmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMuI192YWxpZGF0b3JDaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHB1YmxpYyBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgfVxuXG4gIHB1YmxpYyB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICB0aGlzLiNtb2RlbFZhbHVlID0gdGhpcy4jZm9ybWF0dGVyKHZhbHVlKTtcbiAgfVxuXG4gIHB1YmxpYyB2YWxpZGF0ZShjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCB7XG4gICAgaWYgKCF0aGlzLiNjb250cm9sKSB7XG4gICAgICB0aGlzLiNjb250cm9sID0gY29udHJvbDtcbiAgICB9XG5cbiAgICBjb25zdCB2YWx1ZSA9IGNvbnRyb2wudmFsdWU7XG4gICAgaWYgKCF2YWx1ZSkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICBpZiAodmFsdWUubG9jYWwgPT09ICdJbnZhbGlkIGRhdGUnKSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBza3lUaW1lOiB7XG4gICAgICAgICAgaW52YWxpZDogY29udHJvbC52YWx1ZSxcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICAjc2V0SW5wdXRWYWx1ZSh2YWx1ZTogU2t5VGltZXBpY2tlclRpbWVPdXRwdXQgfCB1bmRlZmluZWQpOiB2b2lkIHtcbiAgICBsZXQgZm9ybWF0dGVkVmFsdWUgPSAnJztcbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIGNvbnN0IG91dHB1dCA9IG1vbWVudCh2YWx1ZSkuZm9ybWF0KHZhbHVlLmN1c3RvbUZvcm1hdCk7XG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgaWYgKG91dHB1dCAhPT0gJ0ludmFsaWQgZGF0ZScpIHtcbiAgICAgICAgZm9ybWF0dGVkVmFsdWUgPSBvdXRwdXQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdGhpcy4jcmVuZGVyZXIuc2V0UHJvcGVydHkoXG4gICAgICB0aGlzLiNlbFJlZi5uYXRpdmVFbGVtZW50LFxuICAgICAgJ3ZhbHVlJyxcbiAgICAgIGZvcm1hdHRlZFZhbHVlXG4gICAgKTtcbiAgfVxuXG4gICNmb3JtYXR0ZXIodGltZTogYW55KSB7XG4gICAgaWYgKHRpbWUgJiYgdHlwZW9mIHRpbWUgIT09ICdzdHJpbmcnICYmICdsb2NhbCcgaW4gdGltZSkge1xuICAgICAgcmV0dXJuIHRpbWU7XG4gICAgfVxuICAgIGlmICh0eXBlb2YgdGltZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIGlmICh0aW1lLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICByZXR1cm4gJyc7XG4gICAgICB9XG4gICAgICBjb25zdCBjdXJyZW50Rm9ybWF0ID0gdGhpcy50aW1lRm9ybWF0ID09PSAnSEgnID8gJ0g6bW0nIDogJ2g6bW0gQSc7XG5cbiAgICAgIGlmICh0eXBlb2YgdGhpcy5yZXR1cm5Gb3JtYXQgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgIHRoaXMucmV0dXJuRm9ybWF0ID0gY3VycmVudEZvcm1hdDtcbiAgICAgIH1cblxuICAgICAgY29uc3QgZm9ybWF0VGltZTogU2t5VGltZXBpY2tlclRpbWVPdXRwdXQgPSB7XG4gICAgICAgIGhvdXI6IG1vbWVudCh0aW1lLCBjdXJyZW50Rm9ybWF0KS5ob3VyKCksXG4gICAgICAgIG1pbnV0ZTogbW9tZW50KHRpbWUsIGN1cnJlbnRGb3JtYXQpLm1pbnV0ZSgpLFxuICAgICAgICBtZXJpZGllOiBtb21lbnQodGltZSwgY3VycmVudEZvcm1hdCkuZm9ybWF0KCdBJyksXG4gICAgICAgIHRpbWV6b25lOiBwYXJzZUludChtb21lbnQodGltZSwgY3VycmVudEZvcm1hdCkuZm9ybWF0KCdaJyksIDEwKSxcbiAgICAgICAgaXNvODYwMTogbW9tZW50KHRpbWUsIGN1cnJlbnRGb3JtYXQpLnRvRGF0ZSgpLFxuICAgICAgICBsb2NhbDogbW9tZW50KHRpbWUsIGN1cnJlbnRGb3JtYXQpLmZvcm1hdChjdXJyZW50Rm9ybWF0KSxcbiAgICAgICAgY3VzdG9tRm9ybWF0OiB0aGlzLnJldHVybkZvcm1hdCxcbiAgICAgIH07XG4gICAgICByZXR1cm4gZm9ybWF0VGltZTtcbiAgICB9XG4gIH1cblxuICAjdXBkYXRlVGltZXBpY2tlcklucHV0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnNreVRpbWVwaWNrZXJJbnB1dCkge1xuICAgICAgdGhpcy5za3lUaW1lcGlja2VySW5wdXQuZGlzYWJsZWQgPSB0aGlzLmRpc2FibGVkO1xuXG4gICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgaWYgKHRoaXMuc2t5VGltZXBpY2tlcklucHV0LnNlbGVjdGVkVGltZSAhPT0gdGhpcy4jbW9kZWxWYWx1ZSkge1xuICAgICAgICB0aGlzLnNreVRpbWVwaWNrZXJJbnB1dC5zZWxlY3RlZFRpbWUgPSB0aGlzLiNtb2RlbFZhbHVlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb24sIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFycywgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxuICAjX29uQ2hhbmdlID0gKF86IGFueSk6IHZvaWQgPT4ge307XG4gIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgI19vblRvdWNoZWQgPSAoKTogdm9pZCA9PiB7fTtcbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICAjX3ZhbGlkYXRvckNoYW5nZSA9ICgpOiB2b2lkID0+IHt9O1xufVxuIl19
|
@@ -10,22 +10,22 @@ import { SkyTimepickerInputDirective } from './timepicker.directive';
|
|
10
10
|
import * as i0 from "@angular/core";
|
11
11
|
export class SkyTimepickerModule {
|
12
12
|
}
|
13
|
-
SkyTimepickerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1
|
14
|
-
SkyTimepickerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1
|
13
|
+
SkyTimepickerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: SkyTimepickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
14
|
+
SkyTimepickerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.1", ngImport: i0, type: SkyTimepickerModule, declarations: [SkyTimepickerInputDirective, SkyTimepickerComponent], imports: [CommonModule,
|
15
15
|
SkyI18nModule,
|
16
16
|
SkyIconModule,
|
17
17
|
SkyDatetimeResourcesModule,
|
18
18
|
SkyAffixModule,
|
19
19
|
SkyOverlayModule,
|
20
20
|
SkyThemeModule], exports: [SkyTimepickerInputDirective, SkyTimepickerComponent] });
|
21
|
-
SkyTimepickerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1
|
21
|
+
SkyTimepickerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: SkyTimepickerModule, imports: [CommonModule,
|
22
22
|
SkyI18nModule,
|
23
23
|
SkyIconModule,
|
24
24
|
SkyDatetimeResourcesModule,
|
25
25
|
SkyAffixModule,
|
26
26
|
SkyOverlayModule,
|
27
27
|
SkyThemeModule] });
|
28
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.1", ngImport: i0, type: SkyTimepickerModule, decorators: [{
|
29
29
|
type: NgModule,
|
30
30
|
args: [{
|
31
31
|
declarations: [SkyTimepickerInputDirective, SkyTimepickerComponent],
|