@dhutaryan/ngx-mat-timepicker 16.0.0 → 17.0.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/README.md +1 -0
- package/esm2022/lib/adapter/index.mjs +4 -4
- package/esm2022/lib/adapter/native-date-time-adapter.mjs +5 -5
- package/esm2022/lib/clock-dials.mjs +6 -6
- package/esm2022/lib/hours-clock-dial.mjs +12 -8
- package/esm2022/lib/minutes-clock-dial.mjs +12 -8
- package/esm2022/lib/time-face-base.mjs +7 -6
- package/esm2022/lib/time-input-base.mjs +6 -6
- package/esm2022/lib/time-inputs.mjs +16 -16
- package/esm2022/lib/time-period.mjs +3 -3
- package/esm2022/lib/time-selection-model.mjs +8 -8
- package/esm2022/lib/timepicker-actions.mjs +17 -17
- package/esm2022/lib/timepicker-base.mjs +6 -6
- package/esm2022/lib/timepicker-content-layout.mjs +3 -3
- package/esm2022/lib/timepicker-content.mjs +5 -5
- package/esm2022/lib/timepicker-input-base.mjs +6 -6
- package/esm2022/lib/timepicker-input.mjs +6 -6
- package/esm2022/lib/timepicker-intl.mjs +3 -3
- package/esm2022/lib/timepicker-toggle.mjs +9 -9
- package/esm2022/lib/timepicker.mjs +3 -3
- package/esm2022/lib/timepicker.module.mjs +4 -4
- package/fesm2022/dhutaryan-ngx-mat-timepicker.mjs +131 -122
- package/fesm2022/dhutaryan-ngx-mat-timepicker.mjs.map +1 -1
- package/lib/hours-clock-dial.d.ts +1 -1
- package/lib/minutes-clock-dial.d.ts +1 -1
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -6,14 +6,14 @@ import * as i0 from "@angular/core";
|
|
|
6
6
|
export * from './time-adapter';
|
|
7
7
|
export * from './native-date-time-adapter';
|
|
8
8
|
export class MatNativeDateTimeModule {
|
|
9
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
10
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
11
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
9
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: MatNativeDateTimeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
10
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.2", ngImport: i0, type: MatNativeDateTimeModule, imports: [PlatformModule] }); }
|
|
11
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: MatNativeDateTimeModule, providers: [
|
|
12
12
|
{ provide: TimeAdapter, useClass: NativeDateTimeAdapter },
|
|
13
13
|
MAT_TIME_LOCALE_PROVIDER,
|
|
14
14
|
], imports: [PlatformModule] }); }
|
|
15
15
|
}
|
|
16
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
16
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: MatNativeDateTimeModule, decorators: [{
|
|
17
17
|
type: NgModule,
|
|
18
18
|
args: [{
|
|
19
19
|
imports: [PlatformModule],
|
|
@@ -116,15 +116,15 @@ export class NativeDateTimeAdapter extends TimeAdapter {
|
|
|
116
116
|
d.setUTCHours(date.getHours(), date.getMinutes(), date.getSeconds(), date.getMilliseconds());
|
|
117
117
|
return dtf.format(d);
|
|
118
118
|
}
|
|
119
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
120
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
119
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: NativeDateTimeAdapter, deps: [{ token: MAT_TIME_LOCALE, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
120
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: NativeDateTimeAdapter }); }
|
|
121
121
|
}
|
|
122
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
122
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: NativeDateTimeAdapter, decorators: [{
|
|
123
123
|
type: Injectable
|
|
124
|
-
}], ctorParameters:
|
|
124
|
+
}], ctorParameters: () => [{ type: undefined, decorators: [{
|
|
125
125
|
type: Optional
|
|
126
126
|
}, {
|
|
127
127
|
type: Inject,
|
|
128
128
|
args: [MAT_TIME_LOCALE]
|
|
129
|
-
}] }]
|
|
129
|
+
}] }] });
|
|
130
130
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF0aXZlLWRhdGUtdGltZS1hZGFwdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWF0LXRpbWVwaWNrZXIvc3JjL2xpYi9hZGFwdGVyL25hdGl2ZS1kYXRlLXRpbWUtYWRhcHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFN0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFHOUQ7Ozs7R0FJRztBQUNILE1BQU0sY0FBYyxHQUNsQixvRkFBb0YsQ0FBQztBQUV2RixvRUFBb0U7QUFFcEUsTUFBTSxPQUFPLHFCQUFzQixTQUFRLFdBQWlCO0lBQzFELFlBQWlELGFBQXFCO1FBQ3BFLEtBQUssRUFBRSxDQUFDO1FBQ1IsS0FBSyxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsR0FBRztRQUNELE9BQU8sSUFBSSxJQUFJLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRUQsS0FBSyxDQUFDLEtBQVUsRUFBRSxXQUFpQjtRQUNqQyxnR0FBZ0c7UUFDaEcsY0FBYztRQUNkLElBQUksT0FBTyxLQUFLLElBQUksUUFBUSxFQUFFO1lBQzVCLE9BQU8sSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDeEI7UUFFRCxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDL0MsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzVCLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFFaEMsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDdkMsQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUFhO1FBQ3JCLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLEdBQUcsS0FBSzthQUN6QixPQUFPLENBQUMsb0NBQW9DLEVBQUUsRUFBRSxDQUFDO2FBQ2pELEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUVkLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELE9BQU8sQ0FBQyxJQUFVO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxTQUFTLENBQUMsSUFBVTtRQUNsQixPQUFPLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQsVUFBVSxDQUFDLElBQVUsRUFBRSxJQUFZO1FBQ2pDLE1BQU0sSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFcEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsWUFBWSxDQUFDLElBQVUsRUFBRSxNQUFjO1FBQ3JDLE1BQU0sSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQ3RDLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFeEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsU0FBUyxDQUFDLElBQVU7UUFDbEIsT0FBTyxJQUFJLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUM1QyxDQUFDO0lBRUQsTUFBTSxDQUFDLElBQVUsRUFBRSxhQUFxQjtRQUN0QyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUN2QixNQUFNLEtBQUssQ0FBQyxvREFBb0QsQ0FBQyxDQUFDO1NBQ25FO1FBRUQsTUFBTSxHQUFHLEdBQUcsSUFBSSxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDL0MsR0FBRyxhQUFhO1lBQ2hCLFFBQVEsRUFBRSxLQUFLO1NBQ2hCLENBQUMsQ0FBQztRQUVILE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVEOzs7O09BSUc7SUFDTSxXQUFXLENBQUMsS0FBVTtRQUM3QixJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRTtZQUM3QixJQUFJLENBQUMsS0FBSyxFQUFFO2dCQUNWLE9BQU8sSUFBSSxDQUFDO2FBQ2I7WUFDRCwwRkFBMEY7WUFDMUYsb0NBQW9DO1lBQ3BDLElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDOUIsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzdCLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtvQkFDdEIsT0FBTyxJQUFJLENBQUM7aUJBQ2I7YUFDRjtTQUNGO1FBQ0QsT0FBTyxLQUFLLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxjQUFjLENBQUMsR0FBUTtRQUNyQixPQUFPLEdBQUcsWUFBWSxJQUFJLENBQUM7SUFDN0IsQ0FBQztJQUVELE9BQU8sQ0FBQyxJQUFVO1FBQ2hCLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVELE9BQU87UUFDTCxPQUFPLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBVyxFQUFFLE1BQVk7UUFDbkMsT0FBTyxDQUNMLEtBQUssQ0FBQyxRQUFRLEVBQUUsR0FBRyxNQUFNLENBQUMsUUFBUSxFQUFFO1lBQ3BDLEtBQUssQ0FBQyxVQUFVLEVBQUUsR0FBRyxNQUFNLENBQUMsVUFBVSxFQUFFLENBQ3pDLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7Ozs7Ozs7T0FVRztJQUNLLE9BQU8sQ0FBQyxHQUF3QixFQUFFLElBQVU7UUFDbEQsd0ZBQXdGO1FBQ3hGLHlFQUF5RTtRQUN6RSxNQUFNLENBQUMsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3JCLENBQUMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUN0RSxDQUFDLENBQUMsV0FBVyxDQUNYLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFDZixJQUFJLENBQUMsVUFBVSxFQUFFLEVBQ2pCLElBQUksQ0FBQyxVQUFVLEVBQUUsRUFDakIsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUN2QixDQUFDO1FBQ0YsT0FBTyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3ZCLENBQUM7OEdBeElVLHFCQUFxQixrQkFDQSxlQUFlO2tIQURwQyxxQkFBcUI7OzJGQUFyQixxQkFBcUI7a0JBRGpDLFVBQVU7OzBCQUVJLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgTUFUX1RJTUVfTE9DQUxFLCBUaW1lQWRhcHRlciB9IGZyb20gJy4vdGltZS1hZGFwdGVyJztcbmltcG9ydCB7IE1hdFRpbWVQZXJpb2RUeXBlIH0gZnJvbSAnLi4vdGltZS1wZXJpb2QnO1xuXG4vKipcbiAqIE1hdGNoZXMgc3RyaW5ncyB0aGF0IGhhdmUgdGhlIGZvcm0gb2YgYSB2YWxpZCBSRkMgMzMzOSBzdHJpbmdcbiAqIChodHRwczovL3Rvb2xzLmlldGYub3JnL2h0bWwvcmZjMzMzOSkuIE5vdGUgdGhhdCB0aGUgc3RyaW5nIG1heSBub3QgYWN0dWFsbHkgYmUgYSB2YWxpZCBkYXRlXG4gKiBiZWNhdXNlIHRoZSByZWdleCB3aWxsIG1hdGNoIHN0cmluZ3MgYW4gd2l0aCBvdXQgb2YgYm91bmRzIG1vbnRoLCBkYXRlLCBldGMuXG4gKi9cbmNvbnN0IElTT184NjAxX1JFR0VYID1cbiAgL15cXGR7NH0tXFxkezJ9LVxcZHsyfSg/OlRcXGR7Mn06XFxkezJ9OlxcZHsyfSg/OlxcLlxcZCspPyg/Olp8KD86KD86XFwrfC0pXFxkezJ9OlxcZHsyfSkpPyk/JC87XG5cbi8qKiBBZGFwdHMgdGhlIG5hdGl2ZSBKUyBEYXRlIGZvciBjb21wb25lbnRzIHRoYXQgd29yayB3aXRoIHRpbWUuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTmF0aXZlRGF0ZVRpbWVBZGFwdGVyIGV4dGVuZHMgVGltZUFkYXB0ZXI8RGF0ZT4ge1xuICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBASW5qZWN0KE1BVF9USU1FX0xPQ0FMRSkgbWF0VGltZUxvY2FsZTogc3RyaW5nKSB7XG4gICAgc3VwZXIoKTtcbiAgICBzdXBlci5zZXRMb2NhbGUobWF0VGltZUxvY2FsZSk7XG4gIH1cblxuICBub3coKTogRGF0ZSB7XG4gICAgcmV0dXJuIG5ldyBEYXRlKCk7XG4gIH1cblxuICBwYXJzZSh2YWx1ZTogYW55LCBwYXJzZUZvcm1hdD86IGFueSk6IERhdGUgfCBudWxsIHtcbiAgICAvLyBXZSBoYXZlIG5vIHdheSB1c2luZyB0aGUgbmF0aXZlIEpTIERhdGUgdG8gc2V0IHRoZSBwYXJzZSBmb3JtYXQgb3IgbG9jYWxlLCBzbyB3ZSBpZ25vcmUgdGhlc2VcbiAgICAvLyBwYXJhbWV0ZXJzLlxuICAgIGlmICh0eXBlb2YgdmFsdWUgPT0gJ251bWJlcicpIHtcbiAgICAgIHJldHVybiBuZXcgRGF0ZSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgY29uc3QgeyBob3VyLCBtaW51dGUgfSA9IHRoaXMucGFyc2VUaW1lKHZhbHVlKTtcbiAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoKTtcbiAgICBkYXRlLnNldEhvdXJzKE51bWJlcihob3VyKSk7XG4gICAgZGF0ZS5zZXRNaW51dGVzKE51bWJlcihtaW51dGUpKTtcblxuICAgIHJldHVybiB2YWx1ZSA/IG5ldyBEYXRlKGRhdGUpIDogbnVsbDtcbiAgfVxuXG4gIHBhcnNlVGltZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgY29uc3QgW2hvdXIsIG1pbnV0ZV0gPSB2YWx1ZVxuICAgICAgLnJlcGxhY2UoLyhcXHNhbXxcXHNwbXxcXHNBTXxcXHNQTXxhbXxwbXxBTXxQTSkvZywgJycpXG4gICAgICAuc3BsaXQoJzonKTtcblxuICAgIHJldHVybiB7IGhvdXIsIG1pbnV0ZSB9O1xuICB9XG5cbiAgZ2V0SG91cihkYXRlOiBEYXRlKTogbnVtYmVyIHtcbiAgICByZXR1cm4gZGF0ZS5nZXRIb3VycygpO1xuICB9XG5cbiAgZ2V0TWludXRlKGRhdGU6IERhdGUpOiBudW1iZXIge1xuICAgIHJldHVybiBkYXRlLmdldE1pbnV0ZXMoKTtcbiAgfVxuXG4gIHVwZGF0ZUhvdXIoZGF0ZTogRGF0ZSwgaG91cjogbnVtYmVyKTogRGF0ZSB7XG4gICAgY29uc3QgY29weSA9IG5ldyBEYXRlKGRhdGUuZ2V0VGltZSgpKTtcbiAgICBjb3B5LnNldEhvdXJzKGhvdXIpO1xuXG4gICAgcmV0dXJuIGNvcHk7XG4gIH1cblxuICB1cGRhdGVNaW51dGUoZGF0ZTogRGF0ZSwgbWludXRlOiBudW1iZXIpOiBEYXRlIHtcbiAgICBjb25zdCBjb3B5ID0gbmV3IERhdGUoZGF0ZS5nZXRUaW1lKCkpO1xuICAgIGNvcHkuc2V0TWludXRlcyhtaW51dGUpO1xuXG4gICAgcmV0dXJuIGNvcHk7XG4gIH1cblxuICBnZXRQZXJpb2QoZGF0ZTogRGF0ZSk6IE1hdFRpbWVQZXJpb2RUeXBlIHtcbiAgICByZXR1cm4gZGF0ZS5nZXRIb3VycygpIDwgMTIgPyAnYW0nIDogJ3BtJztcbiAgfVxuXG4gIGZvcm1hdChkYXRlOiBEYXRlLCBkaXNwbGF5Rm9ybWF0OiBPYmplY3QpOiBzdHJpbmcge1xuICAgIGlmICghdGhpcy5pc1ZhbGlkKGRhdGUpKSB7XG4gICAgICB0aHJvdyBFcnJvcignTmF0aXZlRGF0ZVRpbWVBZGFwdGVyOiBDYW5ub3QgZm9ybWF0IGludmFsaWQgZGF0ZS4nKTtcbiAgICB9XG5cbiAgICBjb25zdCBkdGYgPSBuZXcgSW50bC5EYXRlVGltZUZvcm1hdCh0aGlzLmxvY2FsZSwge1xuICAgICAgLi4uZGlzcGxheUZvcm1hdCxcbiAgICAgIHRpbWVab25lOiAndXRjJyxcbiAgICB9KTtcblxuICAgIHJldHVybiB0aGlzLl9mb3JtYXQoZHRmLCBkYXRlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBnaXZlbiB2YWx1ZSBpZiBnaXZlbiBhIHZhbGlkIERhdGUgb3IgbnVsbC4gRGVzZXJpYWxpemVzIHZhbGlkIElTTyA4NjAxIHN0cmluZ3NcbiAgICogKGh0dHBzOi8vd3d3LmlldGYub3JnL3JmYy9yZmMzMzM5LnR4dCkgaW50byB2YWxpZCBEYXRlcyBhbmQgZW1wdHkgc3RyaW5nIGludG8gbnVsbC4gUmV0dXJucyBhblxuICAgKiBpbnZhbGlkIGRhdGUgZm9yIGFsbCBvdGhlciB2YWx1ZXMuXG4gICAqL1xuICBvdmVycmlkZSBkZXNlcmlhbGl6ZSh2YWx1ZTogYW55KTogRGF0ZSB8IG51bGwge1xuICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICBpZiAoIXZhbHVlKSB7XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgICAgfVxuICAgICAgLy8gVGhlIGBEYXRlYCBjb25zdHJ1Y3RvciBhY2NlcHRzIGZvcm1hdHMgb3RoZXIgdGhhbiBJU08gODYwMSwgc28gd2UgbmVlZCB0byBtYWtlIHN1cmUgdGhlXG4gICAgICAvLyBzdHJpbmcgaXMgdGhlIHJpZ2h0IGZvcm1hdCBmaXJzdC5cbiAgICAgIGlmIChJU09fODYwMV9SRUdFWC50ZXN0KHZhbHVlKSkge1xuICAgICAgICBjb25zdCBkYXRlID0gbmV3IERhdGUodmFsdWUpO1xuICAgICAgICBpZiAodGhpcy5pc1ZhbGlkKGRhdGUpKSB7XG4gICAgICAgICAgcmV0dXJuIGRhdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHN1cGVyLmRlc2VyaWFsaXplKHZhbHVlKTtcbiAgfVxuXG4gIGlzVGltZUluc3RhbmNlKG9iajogYW55KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIG9iaiBpbnN0YW5jZW9mIERhdGU7XG4gIH1cblxuICBpc1ZhbGlkKGRhdGU6IERhdGUpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIWlzTmFOKGRhdGUuZ2V0VGltZSgpKTtcbiAgfVxuXG4gIGludmFsaWQoKTogRGF0ZSB7XG4gICAgcmV0dXJuIG5ldyBEYXRlKE5hTik7XG4gIH1cblxuICBjb21wYXJlVGltZShmaXJzdDogRGF0ZSwgc2Vjb25kOiBEYXRlKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKFxuICAgICAgZmlyc3QuZ2V0SG91cnMoKSAtIHNlY29uZC5nZXRIb3VycygpIHx8XG4gICAgICBmaXJzdC5nZXRNaW51dGVzKCkgLSBzZWNvbmQuZ2V0TWludXRlcygpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGVuIGNvbnZlcnRpbmcgRGF0ZSBvYmplY3QgdG8gc3RyaW5nLCBqYXZhc2NyaXB0IGJ1aWx0LWluIGZ1bmN0aW9ucyBtYXkgcmV0dXJuIHdyb25nXG4gICAqIHJlc3VsdHMgYmVjYXVzZSBpdCBhcHBsaWVzIGl0cyBpbnRlcm5hbCBEU1QgcnVsZXMuIFRoZSBEU1QgcnVsZXMgYXJvdW5kIHRoZSB3b3JsZCBjaGFuZ2VcbiAgICogdmVyeSBmcmVxdWVudGx5LCBhbmQgdGhlIGN1cnJlbnQgdmFsaWQgcnVsZSBpcyBub3QgYWx3YXlzIHZhbGlkIGluIHByZXZpb3VzIHllYXJzIHRob3VnaC5cbiAgICogV2Ugd29yayBhcm91bmQgdGhpcyBwcm9ibGVtIGJ1aWxkaW5nIGEgbmV3IERhdGUgb2JqZWN0IHdoaWNoIGhhcyBpdHMgaW50ZXJuYWwgVVRDXG4gICAqIHJlcHJlc2VudGF0aW9uIHdpdGggdGhlIGxvY2FsIGRhdGUgYW5kIHRpbWUuXG4gICAqIEBwYXJhbSBkdGYgSW50bC5EYXRlVGltZUZvcm1hdCBvYmplY3QsIGNvbnRhaW5pbmcgdGhlIGRlc2lyZWQgc3RyaW5nIGZvcm1hdC4gSXQgbXVzdCBoYXZlXG4gICAqICAgIHRpbWVab25lIHNldCB0byAndXRjJyB0byB3b3JrIGZpbmUuXG4gICAqIEBwYXJhbSBkYXRlIERhdGUgZnJvbSB3aGljaCB3ZSB3YW50IHRvIGdldCB0aGUgc3RyaW5nIHJlcHJlc2VudGF0aW9uIGFjY29yZGluZyB0byBkdGZcbiAgICogQHJldHVybnMgQSBEYXRlIG9iamVjdCB3aXRoIGl0cyBVVEMgcmVwcmVzZW50YXRpb24gYmFzZWQgb24gdGhlIHBhc3NlZCBpbiBkYXRlIGluZm9cbiAgICovXG4gIHByaXZhdGUgX2Zvcm1hdChkdGY6IEludGwuRGF0ZVRpbWVGb3JtYXQsIGRhdGU6IERhdGUpIHtcbiAgICAvLyBQYXNzaW5nIHRoZSB5ZWFyIHRvIHRoZSBjb25zdHJ1Y3RvciBjYXVzZXMgeWVhciBudW1iZXJzIDwxMDAgdG8gYmUgY29udmVydGVkIHRvIDE5eHguXG4gICAgLy8gVG8gd29yayBhcm91bmQgdGhpcyB3ZSB1c2UgYHNldFVUQ0Z1bGxZZWFyYCBhbmQgYHNldFVUQ0hvdXJzYCBpbnN0ZWFkLlxuICAgIGNvbnN0IGQgPSBuZXcgRGF0ZSgpO1xuICAgIGQuc2V0VVRDRnVsbFllYXIoZGF0ZS5nZXRGdWxsWWVhcigpLCBkYXRlLmdldE1vbnRoKCksIGRhdGUuZ2V0RGF0ZSgpKTtcbiAgICBkLnNldFVUQ0hvdXJzKFxuICAgICAgZGF0ZS5nZXRIb3VycygpLFxuICAgICAgZGF0ZS5nZXRNaW51dGVzKCksXG4gICAgICBkYXRlLmdldFNlY29uZHMoKSxcbiAgICAgIGRhdGUuZ2V0TWlsbGlzZWNvbmRzKClcbiAgICApO1xuICAgIHJldHVybiBkdGYuZm9ybWF0KGQpO1xuICB9XG59XG4iXX0=
|
|
@@ -65,18 +65,18 @@ export class MatClockDials extends MatTimeFaceBase {
|
|
|
65
65
|
}
|
|
66
66
|
this._onHourSelected(hour);
|
|
67
67
|
}
|
|
68
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
69
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
68
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: MatClockDials, deps: [{ token: i1.MatTimepickerIntl }, { token: i2.TimeAdapter, optional: true }, { token: i0.NgZone }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
69
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: MatClockDials, selector: "mat-clock-dials", inputs: { orientation: "orientation" }, host: { attributes: { "role": "dial" }, classAttribute: "mat-clock-dials" }, exportAs: ["matClockDials"], usesInheritance: true, ngImport: i0, template: "<mat-timepicker-content-layout\n [title]=\"_intl.dialsTitle\"\n [orientation]=\"orientation\"\n>\n <div\n tabindex=\"0\"\n class=\"mat-clock-dial-value\"\n hours\n [class.mat-clock-dial-value-active]=\"isHoursView\"\n (click)=\"onViewChange($event,'hours')\"\n (keydown.space)=\"onViewChange($event, 'hours')\"\n >\n {{ _withZeroPrefix(selectedHour) }}\n </div>\n <div\n tabindex=\"0\"\n class=\"mat-clock-dial-value\"\n minutes\n [class.mat-clock-dial-value-active]=\"!isHoursView\"\n (click)=\"onViewChange($event,'minutes')\"\n (keydown.space)=\"onViewChange($event,'minutes')\"\n >\n {{ _withZeroPrefix(selectedMinute) }}\n </div>\n\n <ng-template mat-time-period [ngIf]=\"isMeridiem\">\n <mat-time-period\n [period]=\"period\"\n [disabledPeriod]=\"disabledPeriod\"\n [vertical]=\"orientation === 'vertical'\"\n (periodChanged)=\"_onPeriodChanged($event)\"\n ></mat-time-period>\n </ng-template>\n\n <div\n class=\"mat-clock-dial-faces\"\n [class.mat-clock-dial-faces-horizontal]=\"orientation === 'horizontal'\"\n >\n <ng-template [ngIf]=\"isHoursView\">\n <mat-hours-clock-dial\n [@enterLeaveAnimation]\n [color]=\"color\"\n [selectedHour]=\"selectedHour\"\n [isMeridiem]=\"isMeridiem\"\n [availableHours]=\"_getAvailableHours()\"\n (selectedChange)=\"_onHourChanged($event)\"\n (keydown)=\"_onKeydown($event, 'hour')\"\n ></mat-hours-clock-dial>\n </ng-template>\n <ng-template [ngIf]=\"!isHoursView\">\n <mat-minutes-clock-dial\n [@enterLeaveAnimation]\n [color]=\"color\"\n [selectedMinute]=\"selectedMinute\"\n [interval]=\"minuteInterval\"\n [availableMinutes]=\"availableMinutes\"\n (selectedChange)=\"_onMinuteSelected($event)\"\n (keydown)=\"_onKeydown($event, 'minute')\"\n ></mat-minutes-clock-dial>\n </ng-template>\n </div>\n</mat-timepicker-content-layout>\n", styles: [".mat-clock-dial-values{display:flex;width:100%}.mat-clock-dial-value{display:flex;align-items:center;justify-content:center;height:4.5rem;border-radius:.25rem;cursor:pointer}.mat-clock-dial-faces{margin-top:2.25rem}.mat-clock-dial-faces.mat-clock-dial-faces-horizontal{margin-top:0}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatTimepickerContentLayout, selector: "mat-timepicker-content-layout", inputs: ["title", "orientation"], exportAs: ["matTimepickerContent"] }, { kind: "component", type: i5.MatHoursClockDial, selector: "mat-hours-clock-dial", inputs: ["selectedHour", "isMeridiem", "availableHours", "color"], outputs: ["selectedChange"], exportAs: ["matHoursClockDial"] }, { kind: "component", type: i6.MatMinutesClockDial, selector: "mat-minutes-clock-dial", inputs: ["selectedMinute", "interval", "availableMinutes", "color"], outputs: ["selectedChange"], exportAs: ["matMinutesClockDial"] }, { kind: "component", type: i7.MatTimePeriod, selector: "mat-time-period", inputs: ["vertical", "period", "disabledPeriod"], outputs: ["periodChanged"] }], animations: [enterLeaveAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
70
70
|
}
|
|
71
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
71
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: MatClockDials, decorators: [{
|
|
72
72
|
type: Component,
|
|
73
73
|
args: [{ selector: 'mat-clock-dials', exportAs: 'matClockDials', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
|
|
74
74
|
role: 'dial',
|
|
75
75
|
class: 'mat-clock-dials',
|
|
76
76
|
}, animations: [enterLeaveAnimation], template: "<mat-timepicker-content-layout\n [title]=\"_intl.dialsTitle\"\n [orientation]=\"orientation\"\n>\n <div\n tabindex=\"0\"\n class=\"mat-clock-dial-value\"\n hours\n [class.mat-clock-dial-value-active]=\"isHoursView\"\n (click)=\"onViewChange($event,'hours')\"\n (keydown.space)=\"onViewChange($event, 'hours')\"\n >\n {{ _withZeroPrefix(selectedHour) }}\n </div>\n <div\n tabindex=\"0\"\n class=\"mat-clock-dial-value\"\n minutes\n [class.mat-clock-dial-value-active]=\"!isHoursView\"\n (click)=\"onViewChange($event,'minutes')\"\n (keydown.space)=\"onViewChange($event,'minutes')\"\n >\n {{ _withZeroPrefix(selectedMinute) }}\n </div>\n\n <ng-template mat-time-period [ngIf]=\"isMeridiem\">\n <mat-time-period\n [period]=\"period\"\n [disabledPeriod]=\"disabledPeriod\"\n [vertical]=\"orientation === 'vertical'\"\n (periodChanged)=\"_onPeriodChanged($event)\"\n ></mat-time-period>\n </ng-template>\n\n <div\n class=\"mat-clock-dial-faces\"\n [class.mat-clock-dial-faces-horizontal]=\"orientation === 'horizontal'\"\n >\n <ng-template [ngIf]=\"isHoursView\">\n <mat-hours-clock-dial\n [@enterLeaveAnimation]\n [color]=\"color\"\n [selectedHour]=\"selectedHour\"\n [isMeridiem]=\"isMeridiem\"\n [availableHours]=\"_getAvailableHours()\"\n (selectedChange)=\"_onHourChanged($event)\"\n (keydown)=\"_onKeydown($event, 'hour')\"\n ></mat-hours-clock-dial>\n </ng-template>\n <ng-template [ngIf]=\"!isHoursView\">\n <mat-minutes-clock-dial\n [@enterLeaveAnimation]\n [color]=\"color\"\n [selectedMinute]=\"selectedMinute\"\n [interval]=\"minuteInterval\"\n [availableMinutes]=\"availableMinutes\"\n (selectedChange)=\"_onMinuteSelected($event)\"\n (keydown)=\"_onKeydown($event, 'minute')\"\n ></mat-minutes-clock-dial>\n </ng-template>\n </div>\n</mat-timepicker-content-layout>\n", styles: [".mat-clock-dial-values{display:flex;width:100%}.mat-clock-dial-value{display:flex;align-items:center;justify-content:center;height:4.5rem;border-radius:.25rem;cursor:pointer}.mat-clock-dial-faces{margin-top:2.25rem}.mat-clock-dial-faces.mat-clock-dial-faces-horizontal{margin-top:0}\n"] }]
|
|
77
|
-
}], ctorParameters:
|
|
77
|
+
}], ctorParameters: () => [{ type: i1.MatTimepickerIntl }, { type: i2.TimeAdapter, decorators: [{
|
|
78
78
|
type: Optional
|
|
79
|
-
}] }, { type: i0.NgZone }, { type: i0.ElementRef }]
|
|
79
|
+
}] }, { type: i0.NgZone }, { type: i0.ElementRef }], propDecorators: { orientation: [{
|
|
80
80
|
type: Input
|
|
81
81
|
}] } });
|
|
82
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xvY2stZGlhbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXQtdGltZXBpY2tlci9zcmMvbGliL2Nsb2NrLWRpYWxzLnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWF0LXRpbWVwaWNrZXIvc3JjL2xpYi9jbG9jay1kaWFscy5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUdqQixRQUFRLEVBR1IsS0FBSyxHQUNOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUczRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbkQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFHM0QsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7Ozs7OztBQWlCOUQsTUFBTSxPQUFPLGFBQ1gsU0FBUSxlQUFrQjtJQVkxQixZQUNTLEtBQXdCLEVBQ25CLFlBQTRCLEVBQ2hDLE9BQWUsRUFDZixXQUF1QjtRQUUvQixLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7UUFMYixVQUFLLEdBQUwsS0FBSyxDQUFtQjtRQUV2QixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBQ2YsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFWakMsZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFFbkIsd0NBQXdDO1FBQ3ZCLFVBQUssR0FBRyxJQUFJLGVBQWUsQ0FBYyxPQUFPLENBQUMsQ0FBQztRQUMzRCxzQkFBaUIsR0FBd0IsWUFBWSxDQUFDLEtBQUssQ0FBQztJQVNwRSxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FDM0MsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLEtBQUssT0FBTyxDQUFDLENBQ2hELENBQUM7SUFDSixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsQ0FBQztRQUN0QyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO0lBQ2hDLENBQUM7SUFFRCwrQkFBK0I7SUFDL0IsWUFBWSxDQUFDLEtBQVksRUFBRSxJQUFpQjtRQUMxQyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLEdBQUcsRUFBRTtZQUNsQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDakQsVUFBVSxDQUFDLEdBQUcsRUFBRTtvQkFDZCxNQUFNLFVBQVUsR0FDZCxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQzFDLDZCQUE2QixDQUM5QixDQUFDO29CQUVKLElBQUksVUFBVSxFQUFFO3dCQUNkLFVBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQzt3QkFDbkIsT0FBTztxQkFDUjtvQkFFRCxNQUFNLFdBQVcsR0FDZixJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQzFDLDRCQUE0QixDQUM3QixDQUFDO29CQUVKLElBQUksV0FBVyxFQUFFO3dCQUNmLGlEQUFpRDt3QkFDakQsV0FBVyxDQUFDLEtBQUssRUFBRSxDQUFDO3FCQUNyQjtnQkFDSCxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDVCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGVBQWUsQ0FBQyxLQUFhO1FBQzNCLElBQUksS0FBSyxLQUFLLENBQUMsRUFBRTtZQUNmLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFFRCxPQUFPLHNCQUFzQixDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVELDhCQUE4QjtJQUM5QixjQUFjLENBQUMsRUFDYixJQUFJLEVBQ0osVUFBVSxHQUFHLEtBQUssR0FJbkI7UUFDQyxJQUFJLFVBQVUsRUFBRTtZQUNkLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1NBQzVCO1FBQ0QsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3QixDQUFDOzhHQXZGVSxhQUFhO2tHQUFiLGFBQWEsZ09DbkMxQiw0OERBOERBLHVxQ0Q3QmMsQ0FBQyxtQkFBbUIsQ0FBQzs7MkZBRXRCLGFBQWE7a0JBYnpCLFNBQVM7K0JBQ0UsaUJBQWlCLFlBR2pCLGVBQWUsbUJBQ1IsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSSxRQUMvQjt3QkFDSixJQUFJLEVBQUUsTUFBTTt3QkFDWixLQUFLLEVBQUUsaUJBQWlCO3FCQUN6QixjQUNXLENBQUMsbUJBQW1CLENBQUM7OzBCQWlCOUIsUUFBUTswRkFWRixXQUFXO3NCQUFuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG4gIE9uSW5pdCxcbiAgT25EZXN0cm95LFxuICBPcHRpb25hbCxcbiAgTmdab25lLFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIFN1YnNjcmlwdGlvbiwgdGFrZSB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBUaW1lQWRhcHRlciB9IGZyb20gJy4vYWRhcHRlcic7XG5pbXBvcnQgeyBNYXRUaW1lRmFjZUJhc2UgfSBmcm9tICcuL3RpbWUtZmFjZS1iYXNlJztcbmltcG9ydCB7IHdpdGhaZXJvUHJlZml4TWVyaWRpZW0gfSBmcm9tICcuL3RpbWUtaW5wdXQtYmFzZSc7XG5pbXBvcnQgeyBNYXRUaW1lcGlja2VySW50bCB9IGZyb20gJy4vdGltZXBpY2tlci1pbnRsJztcbmltcG9ydCB7IFRpbWVwaWNrZXJPcmllbnRhdGlvbiB9IGZyb20gJy4vb3JpZW50YXRpb24nO1xuaW1wb3J0IHsgZW50ZXJMZWF2ZUFuaW1hdGlvbiB9IGZyb20gJy4vY2xvY2stZGlhbC1hZG5pbWF0aW9uJztcblxuZXhwb3J0IHR5cGUgTWF0RGlhbFZpZXcgPSAnaG91cnMnIHwgJ21pbnV0ZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtYXQtY2xvY2stZGlhbHMnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2xvY2stZGlhbHMuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Nsb2NrLWRpYWxzLnNjc3MnXSxcbiAgZXhwb3J0QXM6ICdtYXRDbG9ja0RpYWxzJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnZGlhbCcsXG4gICAgY2xhc3M6ICdtYXQtY2xvY2stZGlhbHMnLFxuICB9LFxuICBhbmltYXRpb25zOiBbZW50ZXJMZWF2ZUFuaW1hdGlvbl0sXG59KVxuZXhwb3J0IGNsYXNzIE1hdENsb2NrRGlhbHM8VD5cbiAgZXh0ZW5kcyBNYXRUaW1lRmFjZUJhc2U8VD5cbiAgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveVxue1xuICAvKiogTGF5b3V0IG9yaWVudGF0aW9uLiAqL1xuICBASW5wdXQoKSBvcmllbnRhdGlvbjogVGltZXBpY2tlck9yaWVudGF0aW9uO1xuXG4gIGlzSG91cnNWaWV3ID0gdHJ1ZTtcblxuICAvKiogU3BlY2lmaWVzIHRoZSB2aWV3IG9mIGNsb2NrIGRpYWwuICovXG4gIHByaXZhdGUgcmVhZG9ubHkgX3ZpZXcgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1hdERpYWxWaWV3PignaG91cnMnKTtcbiAgcHJpdmF0ZSBfdmlld1N1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uIHwgbnVsbCA9IFN1YnNjcmlwdGlvbi5FTVBUWTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgX2ludGw6IE1hdFRpbWVwaWNrZXJJbnRsLFxuICAgIEBPcHRpb25hbCgpIF90aW1lQWRhcHRlcjogVGltZUFkYXB0ZXI8VD4sXG4gICAgcHJpdmF0ZSBfbmdab25lOiBOZ1pvbmUsXG4gICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZlxuICApIHtcbiAgICBzdXBlcihfdGltZUFkYXB0ZXIpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fdmlld1N1YnNjcmlwdGlvbiA9IHRoaXMuX3ZpZXcuc3Vic2NyaWJlKFxuICAgICAgKHZpZXcpID0+ICh0aGlzLmlzSG91cnNWaWV3ID0gdmlldyA9PT0gJ2hvdXJzJylcbiAgICApO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fdmlld1N1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLl92aWV3U3Vic2NyaXB0aW9uID0gbnVsbDtcbiAgfVxuXG4gIC8qKiBDaGFuZ2VzIGNsb2NrIGRpYWwgdmlldy4gKi9cbiAgb25WaWV3Q2hhbmdlKGV2ZW50OiBFdmVudCwgdmlldzogTWF0RGlhbFZpZXcpOiB2b2lkIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIHRoaXMuX3ZpZXcubmV4dCh2aWV3KTtcbiAgfVxuXG4gIGZvY3VzQWN0aXZlQ2VsbCgpOiB2b2lkIHtcbiAgICB0aGlzLl9uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgdGhpcy5fbmdab25lLm9uU3RhYmxlLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgY29uc3QgYWN0aXZlQ2VsbDogSFRNTEVsZW1lbnQgfCBudWxsID1cbiAgICAgICAgICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKFxuICAgICAgICAgICAgICAnLm1hdC1jbG9jay1kaWFsLWNlbGwtYWN0aXZlJ1xuICAgICAgICAgICAgKTtcblxuICAgICAgICAgIGlmIChhY3RpdmVDZWxsKSB7XG4gICAgICAgICAgICBhY3RpdmVDZWxsLmZvY3VzKCk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29uc3QgYWN0aXZlUG9pbnQ6IEhUTUxFbGVtZW50IHwgbnVsbCA9XG4gICAgICAgICAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcihcbiAgICAgICAgICAgICAgJy5tYXQtY2xvY2stZGlhbC1oYW5kLXBvaW50J1xuICAgICAgICAgICAgKTtcblxuICAgICAgICAgIGlmIChhY3RpdmVQb2ludCkge1xuICAgICAgICAgICAgLy8gaWYgbm8gYWN0aXZlIGNlbGwgd2UgbmVlZCB0byBmb2N1cyBhIHNtYWxsIGRvdFxuICAgICAgICAgICAgYWN0aXZlUG9pbnQuZm9jdXMoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sIDUwKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgX3dpdGhaZXJvUHJlZml4KHZhbHVlOiBudW1iZXIpOiBzdHJpbmcge1xuICAgIGlmICh2YWx1ZSA9PT0gMCkge1xuICAgICAgcmV0dXJuICcwMCc7XG4gICAgfVxuXG4gICAgcmV0dXJuIHdpdGhaZXJvUHJlZml4TWVyaWRpZW0odmFsdWUsIHRoaXMuaXNNZXJpZGllbSk7XG4gIH1cblxuICAvKiogSGFuZGxlcyBob3VyIHNlbGVjdGlvbi4gKi9cbiAgX29uSG91ckNoYW5nZWQoe1xuICAgIGhvdXIsXG4gICAgY2hhbmdlVmlldyA9IGZhbHNlLFxuICB9OiB7XG4gICAgaG91cjogbnVtYmVyO1xuICAgIGNoYW5nZVZpZXc/OiBib29sZWFuO1xuICB9KTogdm9pZCB7XG4gICAgaWYgKGNoYW5nZVZpZXcpIHtcbiAgICAgIHRoaXMuX3ZpZXcubmV4dCgnbWludXRlcycpO1xuICAgIH1cbiAgICB0aGlzLl9vbkhvdXJTZWxlY3RlZChob3VyKTtcbiAgfVxufVxuIiwiPG1hdC10aW1lcGlja2VyLWNvbnRlbnQtbGF5b3V0XG4gIFt0aXRsZV09XCJfaW50bC5kaWFsc1RpdGxlXCJcbiAgW29yaWVudGF0aW9uXT1cIm9yaWVudGF0aW9uXCJcbj5cbiAgPGRpdlxuICAgIHRhYmluZGV4PVwiMFwiXG4gICAgY2xhc3M9XCJtYXQtY2xvY2stZGlhbC12YWx1ZVwiXG4gICAgaG91cnNcbiAgICBbY2xhc3MubWF0LWNsb2NrLWRpYWwtdmFsdWUtYWN0aXZlXT1cImlzSG91cnNWaWV3XCJcbiAgICAoY2xpY2spPVwib25WaWV3Q2hhbmdlKCRldmVudCwnaG91cnMnKVwiXG4gICAgKGtleWRvd24uc3BhY2UpPVwib25WaWV3Q2hhbmdlKCRldmVudCwgJ2hvdXJzJylcIlxuICA+XG4gICAge3sgX3dpdGhaZXJvUHJlZml4KHNlbGVjdGVkSG91cikgfX1cbiAgPC9kaXY+XG4gIDxkaXZcbiAgICB0YWJpbmRleD1cIjBcIlxuICAgIGNsYXNzPVwibWF0LWNsb2NrLWRpYWwtdmFsdWVcIlxuICAgIG1pbnV0ZXNcbiAgICBbY2xhc3MubWF0LWNsb2NrLWRpYWwtdmFsdWUtYWN0aXZlXT1cIiFpc0hvdXJzVmlld1wiXG4gICAgKGNsaWNrKT1cIm9uVmlld0NoYW5nZSgkZXZlbnQsJ21pbnV0ZXMnKVwiXG4gICAgKGtleWRvd24uc3BhY2UpPVwib25WaWV3Q2hhbmdlKCRldmVudCwnbWludXRlcycpXCJcbiAgPlxuICAgIHt7IF93aXRoWmVyb1ByZWZpeChzZWxlY3RlZE1pbnV0ZSkgfX1cbiAgPC9kaXY+XG5cbiAgPG5nLXRlbXBsYXRlIG1hdC10aW1lLXBlcmlvZCBbbmdJZl09XCJpc01lcmlkaWVtXCI+XG4gICAgPG1hdC10aW1lLXBlcmlvZFxuICAgICAgW3BlcmlvZF09XCJwZXJpb2RcIlxuICAgICAgW2Rpc2FibGVkUGVyaW9kXT1cImRpc2FibGVkUGVyaW9kXCJcbiAgICAgIFt2ZXJ0aWNhbF09XCJvcmllbnRhdGlvbiA9PT0gJ3ZlcnRpY2FsJ1wiXG4gICAgICAocGVyaW9kQ2hhbmdlZCk9XCJfb25QZXJpb2RDaGFuZ2VkKCRldmVudClcIlxuICAgID48L21hdC10aW1lLXBlcmlvZD5cbiAgPC9uZy10ZW1wbGF0ZT5cblxuICA8ZGl2XG4gICAgY2xhc3M9XCJtYXQtY2xvY2stZGlhbC1mYWNlc1wiXG4gICAgW2NsYXNzLm1hdC1jbG9jay1kaWFsLWZhY2VzLWhvcml6b250YWxdPVwib3JpZW50YXRpb24gPT09ICdob3Jpem9udGFsJ1wiXG4gID5cbiAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwiaXNIb3Vyc1ZpZXdcIj5cbiAgICAgIDxtYXQtaG91cnMtY2xvY2stZGlhbFxuICAgICAgICBbQGVudGVyTGVhdmVBbmltYXRpb25dXG4gICAgICAgIFtjb2xvcl09XCJjb2xvclwiXG4gICAgICAgIFtzZWxlY3RlZEhvdXJdPVwic2VsZWN0ZWRIb3VyXCJcbiAgICAgICAgW2lzTWVyaWRpZW1dPVwiaXNNZXJpZGllbVwiXG4gICAgICAgIFthdmFpbGFibGVIb3Vyc109XCJfZ2V0QXZhaWxhYmxlSG91cnMoKVwiXG4gICAgICAgIChzZWxlY3RlZENoYW5nZSk9XCJfb25Ib3VyQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgICAgKGtleWRvd24pPVwiX29uS2V5ZG93bigkZXZlbnQsICdob3VyJylcIlxuICAgICAgPjwvbWF0LWhvdXJzLWNsb2NrLWRpYWw+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwiIWlzSG91cnNWaWV3XCI+XG4gICAgICA8bWF0LW1pbnV0ZXMtY2xvY2stZGlhbFxuICAgICAgICBbQGVudGVyTGVhdmVBbmltYXRpb25dXG4gICAgICAgIFtjb2xvcl09XCJjb2xvclwiXG4gICAgICAgIFtzZWxlY3RlZE1pbnV0ZV09XCJzZWxlY3RlZE1pbnV0ZVwiXG4gICAgICAgIFtpbnRlcnZhbF09XCJtaW51dGVJbnRlcnZhbFwiXG4gICAgICAgIFthdmFpbGFibGVNaW51dGVzXT1cImF2YWlsYWJsZU1pbnV0ZXNcIlxuICAgICAgICAoc2VsZWN0ZWRDaGFuZ2UpPVwiX29uTWludXRlU2VsZWN0ZWQoJGV2ZW50KVwiXG4gICAgICAgIChrZXlkb3duKT1cIl9vbktleWRvd24oJGV2ZW50LCAnbWludXRlJylcIlxuICAgICAgPjwvbWF0LW1pbnV0ZXMtY2xvY2stZGlhbD5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2Rpdj5cbjwvbWF0LXRpbWVwaWNrZXItY29udGVudC1sYXlvdXQ+XG4iXX0=
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xvY2stZGlhbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXQtdGltZXBpY2tlci9zcmMvbGliL2Nsb2NrLWRpYWxzLnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWF0LXRpbWVwaWNrZXIvc3JjL2xpYi9jbG9jay1kaWFscy5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUdqQixRQUFRLEVBR1IsS0FBSyxHQUNOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUczRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDbkQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFHM0QsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7Ozs7OztBQWlCOUQsTUFBTSxPQUFPLGFBQ1gsU0FBUSxlQUFrQjtJQVkxQixZQUNTLEtBQXdCLEVBQ25CLFlBQTRCLEVBQ2hDLE9BQWUsRUFDZixXQUF1QjtRQUUvQixLQUFLLENBQUMsWUFBWSxDQUFDLENBQUM7UUFMYixVQUFLLEdBQUwsS0FBSyxDQUFtQjtRQUV2QixZQUFPLEdBQVAsT0FBTyxDQUFRO1FBQ2YsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFWakMsZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFFbkIsd0NBQXdDO1FBQ3ZCLFVBQUssR0FBRyxJQUFJLGVBQWUsQ0FBYyxPQUFPLENBQUMsQ0FBQztRQUMzRCxzQkFBaUIsR0FBd0IsWUFBWSxDQUFDLEtBQUssQ0FBQztJQVNwRSxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FDM0MsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLEtBQUssT0FBTyxDQUFDLENBQ2hELENBQUM7SUFDSixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsQ0FBQztRQUN0QyxJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO0lBQ2hDLENBQUM7SUFFRCwrQkFBK0I7SUFDL0IsWUFBWSxDQUFDLEtBQVksRUFBRSxJQUFpQjtRQUMxQyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLEdBQUcsRUFBRTtZQUNsQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDakQsVUFBVSxDQUFDLEdBQUcsRUFBRTtvQkFDZCxNQUFNLFVBQVUsR0FDZCxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQzFDLDZCQUE2QixDQUM5QixDQUFDO29CQUVKLElBQUksVUFBVSxFQUFFO3dCQUNkLFVBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQzt3QkFDbkIsT0FBTztxQkFDUjtvQkFFRCxNQUFNLFdBQVcsR0FDZixJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQzFDLDRCQUE0QixDQUM3QixDQUFDO29CQUVKLElBQUksV0FBVyxFQUFFO3dCQUNmLGlEQUFpRDt3QkFDakQsV0FBVyxDQUFDLEtBQUssRUFBRSxDQUFDO3FCQUNyQjtnQkFDSCxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDVCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELGVBQWUsQ0FBQyxLQUFhO1FBQzNCLElBQUksS0FBSyxLQUFLLENBQUMsRUFBRTtZQUNmLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFFRCxPQUFPLHNCQUFzQixDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUVELDhCQUE4QjtJQUM5QixjQUFjLENBQUMsRUFDYixJQUFJLEVBQ0osVUFBVSxHQUFHLEtBQUssR0FJbkI7UUFDQyxJQUFJLFVBQVUsRUFBRTtZQUNkLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1NBQzVCO1FBQ0QsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3QixDQUFDOzhHQXZGVSxhQUFhO2tHQUFiLGFBQWEsZ09DbkMxQiw0OERBOERBLHVxQ0Q3QmMsQ0FBQyxtQkFBbUIsQ0FBQzs7MkZBRXRCLGFBQWE7a0JBYnpCLFNBQVM7K0JBQ0UsaUJBQWlCLFlBR2pCLGVBQWUsbUJBQ1IsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSSxRQUMvQjt3QkFDSixJQUFJLEVBQUUsTUFBTTt3QkFDWixLQUFLLEVBQUUsaUJBQWlCO3FCQUN6QixjQUNXLENBQUMsbUJBQW1CLENBQUM7OzBCQWlCOUIsUUFBUTt1RkFWRixXQUFXO3NCQUFuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG4gIE9uSW5pdCxcbiAgT25EZXN0cm95LFxuICBPcHRpb25hbCxcbiAgTmdab25lLFxuICBFbGVtZW50UmVmLFxuICBJbnB1dCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIFN1YnNjcmlwdGlvbiwgdGFrZSB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBUaW1lQWRhcHRlciB9IGZyb20gJy4vYWRhcHRlcic7XG5pbXBvcnQgeyBNYXRUaW1lRmFjZUJhc2UgfSBmcm9tICcuL3RpbWUtZmFjZS1iYXNlJztcbmltcG9ydCB7IHdpdGhaZXJvUHJlZml4TWVyaWRpZW0gfSBmcm9tICcuL3RpbWUtaW5wdXQtYmFzZSc7XG5pbXBvcnQgeyBNYXRUaW1lcGlja2VySW50bCB9IGZyb20gJy4vdGltZXBpY2tlci1pbnRsJztcbmltcG9ydCB7IFRpbWVwaWNrZXJPcmllbnRhdGlvbiB9IGZyb20gJy4vb3JpZW50YXRpb24nO1xuaW1wb3J0IHsgZW50ZXJMZWF2ZUFuaW1hdGlvbiB9IGZyb20gJy4vY2xvY2stZGlhbC1hZG5pbWF0aW9uJztcblxuZXhwb3J0IHR5cGUgTWF0RGlhbFZpZXcgPSAnaG91cnMnIHwgJ21pbnV0ZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtYXQtY2xvY2stZGlhbHMnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2xvY2stZGlhbHMuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Nsb2NrLWRpYWxzLnNjc3MnXSxcbiAgZXhwb3J0QXM6ICdtYXRDbG9ja0RpYWxzJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAnZGlhbCcsXG4gICAgY2xhc3M6ICdtYXQtY2xvY2stZGlhbHMnLFxuICB9LFxuICBhbmltYXRpb25zOiBbZW50ZXJMZWF2ZUFuaW1hdGlvbl0sXG59KVxuZXhwb3J0IGNsYXNzIE1hdENsb2NrRGlhbHM8VD5cbiAgZXh0ZW5kcyBNYXRUaW1lRmFjZUJhc2U8VD5cbiAgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveVxue1xuICAvKiogTGF5b3V0IG9yaWVudGF0aW9uLiAqL1xuICBASW5wdXQoKSBvcmllbnRhdGlvbjogVGltZXBpY2tlck9yaWVudGF0aW9uO1xuXG4gIGlzSG91cnNWaWV3ID0gdHJ1ZTtcblxuICAvKiogU3BlY2lmaWVzIHRoZSB2aWV3IG9mIGNsb2NrIGRpYWwuICovXG4gIHByaXZhdGUgcmVhZG9ubHkgX3ZpZXcgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1hdERpYWxWaWV3PignaG91cnMnKTtcbiAgcHJpdmF0ZSBfdmlld1N1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uIHwgbnVsbCA9IFN1YnNjcmlwdGlvbi5FTVBUWTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgX2ludGw6IE1hdFRpbWVwaWNrZXJJbnRsLFxuICAgIEBPcHRpb25hbCgpIF90aW1lQWRhcHRlcjogVGltZUFkYXB0ZXI8VD4sXG4gICAgcHJpdmF0ZSBfbmdab25lOiBOZ1pvbmUsXG4gICAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZlxuICApIHtcbiAgICBzdXBlcihfdGltZUFkYXB0ZXIpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fdmlld1N1YnNjcmlwdGlvbiA9IHRoaXMuX3ZpZXcuc3Vic2NyaWJlKFxuICAgICAgKHZpZXcpID0+ICh0aGlzLmlzSG91cnNWaWV3ID0gdmlldyA9PT0gJ2hvdXJzJylcbiAgICApO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fdmlld1N1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICB0aGlzLl92aWV3U3Vic2NyaXB0aW9uID0gbnVsbDtcbiAgfVxuXG4gIC8qKiBDaGFuZ2VzIGNsb2NrIGRpYWwgdmlldy4gKi9cbiAgb25WaWV3Q2hhbmdlKGV2ZW50OiBFdmVudCwgdmlldzogTWF0RGlhbFZpZXcpOiB2b2lkIHtcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIHRoaXMuX3ZpZXcubmV4dCh2aWV3KTtcbiAgfVxuXG4gIGZvY3VzQWN0aXZlQ2VsbCgpOiB2b2lkIHtcbiAgICB0aGlzLl9uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgdGhpcy5fbmdab25lLm9uU3RhYmxlLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgY29uc3QgYWN0aXZlQ2VsbDogSFRNTEVsZW1lbnQgfCBudWxsID1cbiAgICAgICAgICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yKFxuICAgICAgICAgICAgICAnLm1hdC1jbG9jay1kaWFsLWNlbGwtYWN0aXZlJ1xuICAgICAgICAgICAgKTtcblxuICAgICAgICAgIGlmIChhY3RpdmVDZWxsKSB7XG4gICAgICAgICAgICBhY3RpdmVDZWxsLmZvY3VzKCk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29uc3QgYWN0aXZlUG9pbnQ6IEhUTUxFbGVtZW50IHwgbnVsbCA9XG4gICAgICAgICAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvcihcbiAgICAgICAgICAgICAgJy5tYXQtY2xvY2stZGlhbC1oYW5kLXBvaW50J1xuICAgICAgICAgICAgKTtcblxuICAgICAgICAgIGlmIChhY3RpdmVQb2ludCkge1xuICAgICAgICAgICAgLy8gaWYgbm8gYWN0aXZlIGNlbGwgd2UgbmVlZCB0byBmb2N1cyBhIHNtYWxsIGRvdFxuICAgICAgICAgICAgYWN0aXZlUG9pbnQuZm9jdXMoKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0sIDUwKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgX3dpdGhaZXJvUHJlZml4KHZhbHVlOiBudW1iZXIpOiBzdHJpbmcge1xuICAgIGlmICh2YWx1ZSA9PT0gMCkge1xuICAgICAgcmV0dXJuICcwMCc7XG4gICAgfVxuXG4gICAgcmV0dXJuIHdpdGhaZXJvUHJlZml4TWVyaWRpZW0odmFsdWUsIHRoaXMuaXNNZXJpZGllbSk7XG4gIH1cblxuICAvKiogSGFuZGxlcyBob3VyIHNlbGVjdGlvbi4gKi9cbiAgX29uSG91ckNoYW5nZWQoe1xuICAgIGhvdXIsXG4gICAgY2hhbmdlVmlldyA9IGZhbHNlLFxuICB9OiB7XG4gICAgaG91cjogbnVtYmVyO1xuICAgIGNoYW5nZVZpZXc/OiBib29sZWFuO1xuICB9KTogdm9pZCB7XG4gICAgaWYgKGNoYW5nZVZpZXcpIHtcbiAgICAgIHRoaXMuX3ZpZXcubmV4dCgnbWludXRlcycpO1xuICAgIH1cbiAgICB0aGlzLl9vbkhvdXJTZWxlY3RlZChob3VyKTtcbiAgfVxufVxuIiwiPG1hdC10aW1lcGlja2VyLWNvbnRlbnQtbGF5b3V0XG4gIFt0aXRsZV09XCJfaW50bC5kaWFsc1RpdGxlXCJcbiAgW29yaWVudGF0aW9uXT1cIm9yaWVudGF0aW9uXCJcbj5cbiAgPGRpdlxuICAgIHRhYmluZGV4PVwiMFwiXG4gICAgY2xhc3M9XCJtYXQtY2xvY2stZGlhbC12YWx1ZVwiXG4gICAgaG91cnNcbiAgICBbY2xhc3MubWF0LWNsb2NrLWRpYWwtdmFsdWUtYWN0aXZlXT1cImlzSG91cnNWaWV3XCJcbiAgICAoY2xpY2spPVwib25WaWV3Q2hhbmdlKCRldmVudCwnaG91cnMnKVwiXG4gICAgKGtleWRvd24uc3BhY2UpPVwib25WaWV3Q2hhbmdlKCRldmVudCwgJ2hvdXJzJylcIlxuICA+XG4gICAge3sgX3dpdGhaZXJvUHJlZml4KHNlbGVjdGVkSG91cikgfX1cbiAgPC9kaXY+XG4gIDxkaXZcbiAgICB0YWJpbmRleD1cIjBcIlxuICAgIGNsYXNzPVwibWF0LWNsb2NrLWRpYWwtdmFsdWVcIlxuICAgIG1pbnV0ZXNcbiAgICBbY2xhc3MubWF0LWNsb2NrLWRpYWwtdmFsdWUtYWN0aXZlXT1cIiFpc0hvdXJzVmlld1wiXG4gICAgKGNsaWNrKT1cIm9uVmlld0NoYW5nZSgkZXZlbnQsJ21pbnV0ZXMnKVwiXG4gICAgKGtleWRvd24uc3BhY2UpPVwib25WaWV3Q2hhbmdlKCRldmVudCwnbWludXRlcycpXCJcbiAgPlxuICAgIHt7IF93aXRoWmVyb1ByZWZpeChzZWxlY3RlZE1pbnV0ZSkgfX1cbiAgPC9kaXY+XG5cbiAgPG5nLXRlbXBsYXRlIG1hdC10aW1lLXBlcmlvZCBbbmdJZl09XCJpc01lcmlkaWVtXCI+XG4gICAgPG1hdC10aW1lLXBlcmlvZFxuICAgICAgW3BlcmlvZF09XCJwZXJpb2RcIlxuICAgICAgW2Rpc2FibGVkUGVyaW9kXT1cImRpc2FibGVkUGVyaW9kXCJcbiAgICAgIFt2ZXJ0aWNhbF09XCJvcmllbnRhdGlvbiA9PT0gJ3ZlcnRpY2FsJ1wiXG4gICAgICAocGVyaW9kQ2hhbmdlZCk9XCJfb25QZXJpb2RDaGFuZ2VkKCRldmVudClcIlxuICAgID48L21hdC10aW1lLXBlcmlvZD5cbiAgPC9uZy10ZW1wbGF0ZT5cblxuICA8ZGl2XG4gICAgY2xhc3M9XCJtYXQtY2xvY2stZGlhbC1mYWNlc1wiXG4gICAgW2NsYXNzLm1hdC1jbG9jay1kaWFsLWZhY2VzLWhvcml6b250YWxdPVwib3JpZW50YXRpb24gPT09ICdob3Jpem9udGFsJ1wiXG4gID5cbiAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwiaXNIb3Vyc1ZpZXdcIj5cbiAgICAgIDxtYXQtaG91cnMtY2xvY2stZGlhbFxuICAgICAgICBbQGVudGVyTGVhdmVBbmltYXRpb25dXG4gICAgICAgIFtjb2xvcl09XCJjb2xvclwiXG4gICAgICAgIFtzZWxlY3RlZEhvdXJdPVwic2VsZWN0ZWRIb3VyXCJcbiAgICAgICAgW2lzTWVyaWRpZW1dPVwiaXNNZXJpZGllbVwiXG4gICAgICAgIFthdmFpbGFibGVIb3Vyc109XCJfZ2V0QXZhaWxhYmxlSG91cnMoKVwiXG4gICAgICAgIChzZWxlY3RlZENoYW5nZSk9XCJfb25Ib3VyQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgICAgKGtleWRvd24pPVwiX29uS2V5ZG93bigkZXZlbnQsICdob3VyJylcIlxuICAgICAgPjwvbWF0LWhvdXJzLWNsb2NrLWRpYWw+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgW25nSWZdPVwiIWlzSG91cnNWaWV3XCI+XG4gICAgICA8bWF0LW1pbnV0ZXMtY2xvY2stZGlhbFxuICAgICAgICBbQGVudGVyTGVhdmVBbmltYXRpb25dXG4gICAgICAgIFtjb2xvcl09XCJjb2xvclwiXG4gICAgICAgIFtzZWxlY3RlZE1pbnV0ZV09XCJzZWxlY3RlZE1pbnV0ZVwiXG4gICAgICAgIFtpbnRlcnZhbF09XCJtaW51dGVJbnRlcnZhbFwiXG4gICAgICAgIFthdmFpbGFibGVNaW51dGVzXT1cImF2YWlsYWJsZU1pbnV0ZXNcIlxuICAgICAgICAoc2VsZWN0ZWRDaGFuZ2UpPVwiX29uTWludXRlU2VsZWN0ZWQoJGV2ZW50KVwiXG4gICAgICAgIChrZXlkb3duKT1cIl9vbktleWRvd24oJGV2ZW50LCAnbWludXRlJylcIlxuICAgICAgPjwvbWF0LW1pbnV0ZXMtY2xvY2stZGlhbD5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L2Rpdj5cbjwvbWF0LXRpbWVwaWNrZXItY29udGVudC1sYXlvdXQ+XG4iXX0=
|
|
@@ -66,7 +66,10 @@ export class MatHoursClockDial {
|
|
|
66
66
|
};
|
|
67
67
|
}
|
|
68
68
|
/** Handles mouse and touch events on dial and document. */
|
|
69
|
-
|
|
69
|
+
_onUserAction(event) {
|
|
70
|
+
if (event.cancelable) {
|
|
71
|
+
event.preventDefault();
|
|
72
|
+
}
|
|
70
73
|
this._setHour(event);
|
|
71
74
|
const eventsSubscription = merge(fromEvent(this._document, 'mousemove'), fromEvent(this._document, 'touchmove'))
|
|
72
75
|
.pipe(debounceTime(0))
|
|
@@ -154,22 +157,23 @@ export class MatHoursClockDial {
|
|
|
154
157
|
const radius = outer ? CLOCK_OUTER_RADIUS : CLOCK_INNER_RADIUS;
|
|
155
158
|
return radius;
|
|
156
159
|
}
|
|
157
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
158
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
160
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: MatHoursClockDial, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: DOCUMENT }, { token: Window }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
161
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: MatHoursClockDial, selector: "mat-hours-clock-dial", inputs: { selectedHour: "selectedHour", isMeridiem: "isMeridiem", availableHours: "availableHours", color: "color" }, outputs: { selectedChange: "selectedChange" }, host: { listeners: { "mousedown": "_onUserAction($event)", "touchstart": "_onUserAction($event)" }, classAttribute: "mat-clock-dial mat-clock-dial-hours" }, exportAs: ["matHoursClockDial"], ngImport: i0, template: "<div\n class=\"mat-clock-dial-hand\"\n [class.mat-clock-dial-hand-pointless]=\"isHour\"\n [class.mat-clock-dial-hand-disabled]=\"disabledHand\"\n [ngStyle]=\"_handStyles()\"\n></div>\n<ng-template ngFor let-hour [ngForOf]=\"hours\" [ngForTrackBy]=\"_trackBy\">\n <button\n class=\"mat-clock-dial-cell\"\n mat-mini-fab\n disableRipple\n [tabIndex]=\"_isActiveCell(hour.value) ? 0 : -1\"\n [style.left.px]=\"hour.left\"\n [style.top.px]=\"hour.top\"\n [class.mat-clock-dial-cell-active]=\"_isActiveCell(hour.value)\"\n [class.mat-clock-dial-cell-disabled]=\"hour.disabled\"\n [color]=\"_isActiveCell(hour.value) ? color : undefined\"\n [attr.aria-disabled]=\"hour.disabled || null\"\n >\n {{ hour.displayValue }}\n </button>\n</ng-template>\n", styles: [".mat-clock-dial{position:relative;display:block;width:16rem;height:16rem;margin:0 auto;border-radius:50%}.mat-clock-dial:before{position:absolute;top:50%;left:50%;width:.4375rem;height:.4375rem;border-radius:50%;transform:translate(-50%,-50%);content:\"\"}[mat-mini-fab].mat-clock-dial-cell{position:absolute;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:50%;box-shadow:none}[mat-mini-fab].mat-clock-dial-cell:disabled{pointer-events:none}[mat-mini-fab].mat-clock-dial-cell:focus,[mat-mini-fab].mat-clock-dial-cell:hover,[mat-mini-fab].mat-clock-dial-cell:active,[mat-mini-fab].mat-clock-dial-cell:focus:active{box-shadow:none}.mat-clock-dial-hand{position:absolute;inset:0;width:1px;margin:0 auto;transform-origin:bottom}.mat-clock-dial-hand:before{position:absolute;top:-.25rem;left:-.25rem;width:calc(.5rem + 1px);height:calc(.5rem + 1px);border-radius:50%;content:\"\"}.mat-clock-dial-hand.mat-clock-dial-hand-pointless:before{content:none}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2.MatMiniFabButton, selector: "button[mat-mini-fab]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
159
162
|
}
|
|
160
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
163
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: MatHoursClockDial, decorators: [{
|
|
161
164
|
type: Component,
|
|
162
165
|
args: [{ selector: 'mat-hours-clock-dial', exportAs: 'matHoursClockDial', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
|
|
163
166
|
class: 'mat-clock-dial mat-clock-dial-hours',
|
|
164
|
-
'(mousedown)': '
|
|
167
|
+
'(mousedown)': '_onUserAction($event)',
|
|
168
|
+
'(touchstart)': '_onUserAction($event)',
|
|
165
169
|
}, template: "<div\n class=\"mat-clock-dial-hand\"\n [class.mat-clock-dial-hand-pointless]=\"isHour\"\n [class.mat-clock-dial-hand-disabled]=\"disabledHand\"\n [ngStyle]=\"_handStyles()\"\n></div>\n<ng-template ngFor let-hour [ngForOf]=\"hours\" [ngForTrackBy]=\"_trackBy\">\n <button\n class=\"mat-clock-dial-cell\"\n mat-mini-fab\n disableRipple\n [tabIndex]=\"_isActiveCell(hour.value) ? 0 : -1\"\n [style.left.px]=\"hour.left\"\n [style.top.px]=\"hour.top\"\n [class.mat-clock-dial-cell-active]=\"_isActiveCell(hour.value)\"\n [class.mat-clock-dial-cell-disabled]=\"hour.disabled\"\n [color]=\"_isActiveCell(hour.value) ? color : undefined\"\n [attr.aria-disabled]=\"hour.disabled || null\"\n >\n {{ hour.displayValue }}\n </button>\n</ng-template>\n", styles: [".mat-clock-dial{position:relative;display:block;width:16rem;height:16rem;margin:0 auto;border-radius:50%}.mat-clock-dial:before{position:absolute;top:50%;left:50%;width:.4375rem;height:.4375rem;border-radius:50%;transform:translate(-50%,-50%);content:\"\"}[mat-mini-fab].mat-clock-dial-cell{position:absolute;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:50%;box-shadow:none}[mat-mini-fab].mat-clock-dial-cell:disabled{pointer-events:none}[mat-mini-fab].mat-clock-dial-cell:focus,[mat-mini-fab].mat-clock-dial-cell:hover,[mat-mini-fab].mat-clock-dial-cell:active,[mat-mini-fab].mat-clock-dial-cell:focus:active{box-shadow:none}.mat-clock-dial-hand{position:absolute;inset:0;width:1px;margin:0 auto;transform-origin:bottom}.mat-clock-dial-hand:before{position:absolute;top:-.25rem;left:-.25rem;width:calc(.5rem + 1px);height:calc(.5rem + 1px);border-radius:50%;content:\"\"}.mat-clock-dial-hand.mat-clock-dial-hand-pointless:before{content:none}\n"] }]
|
|
166
|
-
}], ctorParameters:
|
|
170
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: Document, decorators: [{
|
|
167
171
|
type: Inject,
|
|
168
172
|
args: [DOCUMENT]
|
|
169
173
|
}] }, { type: Window, decorators: [{
|
|
170
174
|
type: Inject,
|
|
171
175
|
args: [Window]
|
|
172
|
-
}] }]
|
|
176
|
+
}] }], propDecorators: { selectedHour: [{
|
|
173
177
|
type: Input
|
|
174
178
|
}], isMeridiem: [{
|
|
175
179
|
type: Input
|
|
@@ -180,4 +184,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImpor
|
|
|
180
184
|
}], selectedChange: [{
|
|
181
185
|
type: Output
|
|
182
186
|
}] } });
|
|
183
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG91cnMtY2xvY2stZGlhbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21hdC10aW1lcGlja2VyL3NyYy9saWIvaG91cnMtY2xvY2stZGlhbC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL21hdC10aW1lcGlja2VyL3NyYy9saWIvaG91cnMtY2xvY2stZGlhbC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQ0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFFVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFFTCxNQUFNLEVBQ04saUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7QUFVNUQsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUM7S0FDL0IsSUFBSSxDQUFDLElBQUksQ0FBQztLQUNWLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3BCLE1BQU0sWUFBWSxHQUFHLEdBQUcsQ0FBQztBQUN6QixNQUFNLGlCQUFpQixHQUFHLEVBQUUsQ0FBQztBQUM3QixNQUFNLHNCQUFzQixHQUFHLFlBQVksR0FBRyxpQkFBaUIsQ0FBQztBQUNoRSxNQUFNLGtCQUFrQixHQUFHLEdBQUcsQ0FBQztBQUMvQixNQUFNLGtCQUFrQixHQUFHLGtCQUFrQixHQUFHLGlCQUFpQixHQUFHLENBQUMsQ0FBQztBQWN0RSxNQUFNLE9BQU8saUJBQWlCO0lBQzVCLHFCQUFxQjtJQUNyQixJQUNJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDNUIsQ0FBQztJQUNELElBQUksWUFBWSxD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QGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEluamVjdCxcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUaGVtZVBhbGV0dGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZnJvbUV2ZW50LCBtZXJnZSwgdGFrZSB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIENsb2NrRGlhbFZpZXdDZWxsIHtcbiAgdmFsdWU6IG51bWJlcjtcbiAgZGlzcGxheVZhbHVlOiBzdHJpbmc7XG4gIGxlZnQ6IG51bWJlcjtcbiAgdG9wOiBudW1iZXI7XG4gIGRpc2FibGVkOiBib29sZWFuO1xufVxuXG5leHBvcnQgY29uc3QgQUxMX0hPVVJTID0gQXJyYXkoMjQpXG4gIC5maWxsKG51bGwpXG4gIC5tYXAoKF8sIGkpID0+IGkpO1xuY29uc3QgQ0xPQ0tfUkFESVVTID0gMTI4O1xuY29uc3QgQ0xPQ0tfVElDS19SQURJVVMgPSAxNjtcbmNvbnN0IENMT0NLX0NPUlJFQ1RFRF9SQURJVVMgPSBDTE9DS19SQURJVVMgLSBDTE9DS19USUNLX1JBRElVUztcbmNvbnN0IENMT0NLX09VVEVSX1JBRElVUyA9IDEwMDtcbmNvbnN0IENMT0NLX0lOTkVSX1JBRElVUyA9IENMT0NLX09VVEVSX1JBRElVUyAtIENMT0NLX1RJQ0tfUkFESVVTICogMjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbWF0LWhvdXJzLWNsb2NrLWRpYWwnLFxuICB0ZW1wbGF0ZVVybDogJ2hvdXJzLWNsb2NrLWRpYWwuaHRtbCcsXG4gIHN0eWxlVXJsczogWydjbG9jay1kaWFsLnNjc3MnXSxcbiAgZXhwb3J0QXM6ICdtYXRIb3Vyc0Nsb2NrRGlhbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdtYXQtY2xvY2stZGlhbCBtYXQtY2xvY2stZGlhbC1ob3VycycsXG4gICAgJyhtb3VzZWRvd24pJzogJ19vbk1vdXNlRG93bigkZXZlbnQpJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgTWF0SG91cnNDbG9ja0RpYWwgaW1wbGVtZW50cyBPbkluaXQge1xuICAvKiogU2VsZWN0ZWQgaG91ci4gKi9cbiAgQElucHV0KClcbiAgZ2V0IHNlbGVjdGVkSG91cigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9zZWxlY3RlZEhvdXI7XG4gIH1cbiAgc2V0IHNlbGVjdGVkSG91cih2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5fc2VsZWN0ZWRIb3VyID0gdmFsdWU7XG4gIH1cbiAgcHJpdmF0ZSBfc2VsZWN0ZWRIb3VyOiBudW1iZXI7XG5cbiAgLyoqIFdoZXRoZXIgdGhlIGNsb2NrIHVzZXMgMTIgaG91ciBmb3JtYXQuICovXG4gIEBJbnB1dCgpXG4gIGdldCBpc01lcmlkaWVtKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9pc01lcmlkaWVtO1xuICB9XG4gIHNldCBpc01lcmlkaWVtKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5faXNNZXJpZGllbSA9IHZhbHVlO1xuICB9XG4gIHByaXZhdGUgX2lzTWVyaWRpZW06IGJvb2xlYW47XG5cbiAgQElucHV0KClcbiAgZ2V0IGF2YWlsYWJsZUhvdXJzKCk6IG51bWJlcltdIHtcbiAgICByZXR1cm4gdGhpcy5fYXZhaWxhYmxlSG91cnM7XG4gIH1cbiAgc2V0IGF2YWlsYWJsZUhvdXJzKHZhbHVlOiBudW1iZXJbXSkge1xuICAgIHRoaXMuX2F2YWlsYWJsZUhvdXJzID0gdmFsdWU7XG4gICAgdGhpcy5faW5pdEhvdXJzKCk7XG4gIH1cbiAgcHJpdmF0ZSBfYXZhaWxhYmxlSG91cnM6IG51bWJlcltdID0gW107XG5cbiAgLyoqIENvbG9yIHBhbGV0dGUuICovXG4gIEBJbnB1dCgpIGNvbG9yOiBUaGVtZVBhbGV0dGU7XG5cbiAgLyoqIEVtaXRzIHNlbGVjdGVkIGhvdXIuICovXG4gIEBPdXRwdXQoKSBzZWxlY3RlZENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8e1xuICAgIGhvdXI6IG51bWJlcjtcbiAgICBjaGFuZ2VWaWV3PzogYm9vbGVhbjtcbiAgfT4oKTtcblxuICBob3VyczogQ2xvY2tEaWFsVmlld0NlbGxbXSA9IFtdO1xuXG4gIGdldCBkaXNhYmxlZEhhbmQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLmF2YWlsYWJsZUhvdXJzLmluY2x1ZGVzKHRoaXMuc2VsZWN0ZWRIb3VyKTtcbiAgfVxuXG4gIGdldCBpc0hvdXIoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5ob3Vycy5maW5kKChob3VyKSA9PiBob3VyLnZhbHVlID09PSB0aGlzLnNlbGVjdGVkSG91cik7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9lbGVtZW50OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBwcml2YXRlIF9jZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgX2RvY3VtZW50OiBEb2N1bWVudCxcbiAgICBASW5qZWN0KFdpbmRvdykgcHJpdmF0ZSBfd2luZG93OiBXaW5kb3dcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuX2luaXRIb3VycygpO1xuICB9XG5cbiAgLyoqIEhhbmQgc3R5bGVzIGJhc2VkIG9uIHNlbGVjdGVkIGhvdXIuICovXG4gIF9oYW5kU3R5bGVzKCk6IGFueSB7XG4gICAgY29uc3QgZGVnID0gTWF0aC5yb3VuZCh0aGlzLnNlbGVjdGVkSG91ciAqICgzNjAgLyAoMjQgLyAyKSkpO1xuICAgIGNvbnN0IHJhZGl1cyA9IHRoaXMuX2dldFJhZGl1cyh0aGlzLnNlbGVjdGVkSG91cik7XG4gICAgY29uc3QgaGVpZ2h0ID0gcmFkaXVzO1xuICAgIGNvbnN0IG1hcmdpblRvcCA9IENMT0NLX1JBRElVUyAtIHJhZGl1cztcblxuICAgIHJldHVybiB7XG4gICAgICB0cmFuc2Zvcm06IGByb3RhdGUoJHtkZWd9ZGVnKWAsXG4gICAgICBoZWlnaHQ6IGAke2hlaWdodH1weGAsXG4gICAgICAnbWFyZ2luLXRvcCc6IGAke21hcmdpblRvcH1weGAsXG4gICAgfTtcbiAgfVxuXG4gIC8qKiBIYW5kbGVzIG1vdXNlIGFuZCB0b3VjaCBldmVudHMgb24gZGlhbCBhbmQgZG9jdW1lbnQuICovXG4gIF9vbk1vdXNlRG93bihldmVudDogTW91c2VFdmVudCB8IFRvdWNoRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLl9zZXRIb3VyKGV2ZW50KTtcblxuICAgIGNvbnN0IGV2ZW50c1N1YnNjcmlwdGlvbiA9IG1lcmdlKFxuICAgICAgZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KHRoaXMuX2RvY3VtZW50LCAnbW91c2Vtb3ZlJyksXG4gICAgICBmcm9tRXZlbnQ8VG91Y2hFdmVudD4odGhpcy5fZG9jdW1lbnQsICd0b3VjaG1vdmUnKVxuICAgIClcbiAgICAgIC5waXBlKGRlYm91bmNlVGltZSgwKSlcbiAgICAgIC5zdWJzY3JpYmUoe1xuICAgICAgICBuZXh0OiAoZXZlbnQpID0+IHtcbiAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgIHRoaXMuX3NldEhvdXIoZXZlbnQpO1xuICAgICAgICB9LFxuICAgICAgfSk7XG5cbiAgICBtZXJnZShcbiAgICAgIGZyb21FdmVudDxNb3VzZUV2ZW50Pih0aGlzLl9kb2N1bWVudCwgJ21vdXNldXAnKSxcbiAgICAgIGZyb21FdmVudDxUb3VjaEV2ZW50Pih0aGlzLl9kb2N1bWVudCwgJ3RvdWNoZW5kJylcbiAgICApXG4gICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgLnN1YnNjcmliZSh7XG4gICAgICAgIG5leHQ6ICgpID0+IHtcbiAgICAgICAgICBldmVudHNTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkQ2hhbmdlLmVtaXQoe1xuICAgICAgICAgICAgaG91cjogdGhpcy5zZWxlY3RlZEhvdXIsXG4gICAgICAgICAgICBjaGFuZ2VWaWV3OiB0cnVlLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9LFxuICAgICAgfSk7XG4gIH1cblxuICBfaXNBY3RpdmVDZWxsKGhvdXI6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnNlbGVjdGVkSG91ciA9PT0gaG91cjtcbiAgfVxuXG4gIF90cmFja0J5KGluZGV4OiBudW1iZXIsIGNlbGw6IENsb2NrRGlhbFZpZXdDZWxsKTogbnVtYmVyIHtcbiAgICByZXR1cm4gY2VsbC52YWx1ZTtcbiAgfVxuXG4gIC8qKiBDaGFuZ2VzIHNlbGVjdGVkIGhvdXIgYmFzZWQgb24gY29vcmRpbmF0ZXMuICovXG4gIHByaXZhdGUgX3NldEhvdXIoZXZlbnQ6IE1vdXNlRXZlbnQgfCBUb3VjaEV2ZW50KTogdm9pZCB7XG4gICAgY29uc3QgZWxlbWVudCA9IHRoaXMuX2VsZW1lbnQubmF0aXZlRWxlbWVudDtcbiAgICBjb25zdCBlbGVtZW50UmVjdCA9IGVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG4gICAgY29uc3Qgd2lkdGggPSBlbGVtZW50Lm9mZnNldFdpZHRoO1xuICAgIGNvbnN0IGhlaWdodCA9IGVsZW1lbnQub2Zmc2V0SGVpZ2h0O1xuICAgIGNvbnN0IHBhZ2VYID1cbiAgICAgIGV2ZW50IGluc3RhbmNlb2YgTW91c2VFdmVudCA/IGV2ZW50LnBhZ2VYIDogZXZlbnQudG91Y2hlc1swXS5wYWdlWDtcbiAgICBjb25zdCBwYWdlWSA9XG4gICAgICBldmVudCBpbnN0YW5jZW9mIE1vdXNlRXZlbnQgPyBldmVudC5wYWdlWSA6IGV2ZW50LnRvdWNoZXNbMF0ucGFnZVk7XG4gICAgY29uc3QgeCA9IHdpZHRoIC8gMiAtIChwYWdlWCAtIGVsZW1lbnRSZWN0LmxlZnQgLSB0aGlzLl93aW5kb3cuc2Nyb2xsWCk7XG4gICAgY29uc3QgeSA9IGhlaWdodCAvIDIgLSAocGFnZVkgLSBlbGVtZW50UmVjdC50b3AgLSB0aGlzLl93aW5kb3cuc2Nyb2xsWSk7XG4gICAgY29uc3QgdW5pdCA9IE1hdGguUEkgLyA2O1xuICAgIGNvbnN0IGF0YW4yID0gTWF0aC5hdGFuMigteCwgeSk7XG4gICAgY29uc3QgcmFkaWFuID0gYXRhbjIgPCAwID8gTWF0aC5QSSAqIDIgKyBhdGFuMiA6IGF0YW4yO1xuICAgIGNvbnN0IGluaXRpYWxWYWx1ZSA9IE1hdGgucm91bmQocmFkaWFuIC8gdW5pdCk7XG4gICAgY29uc3QgeiA9IE1hdGguc3FydCh4ICogeCArIHkgKiB5KTtcbiAgICBjb25zdCBvdXRlciA9IHogPiBDTE9DS19PVVRFUl9SQURJVVMgLSBDTE9DS19USUNLX1JBRElVUztcbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMuX2dldEhvdXJWYWx1ZShpbml0aWFsVmFsdWUsIG91dGVyKTtcblxuICAgIGlmICh0aGlzLmF2YWlsYWJsZUhvdXJzLmluY2x1ZGVzKHZhbHVlKSkge1xuICAgICAgdGhpcy5zZWxlY3RlZEhvdXIgPSB2YWx1ZTtcbiAgICAgIHRoaXMuc2VsZWN0ZWRDaGFuZ2UuZW1pdCh7XG4gICAgICAgIGhvdXI6IHRoaXMuc2VsZWN0ZWRIb3VyLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIC8qKiBSZXR1cm4gdmFsdWUgb2YgaG91ci4gKi9cbiAgcHJpdmF0ZSBfZ2V0SG91clZhbHVlKHZhbHVlOiBudW1iZXIsIG91dGVyOiBib29sZWFuKTogbnVtYmVyIHtcbiAgICBjb25zdCBlZGdlVmFsdWUgPSB2YWx1ZSA9PT0gMCB8fCB2YWx1ZSA9PT0gMTI7XG5cbiAgICBpZiAodGhpcy5pc01lcmlkaWVtKSB7XG4gICAgICByZXR1cm4gZWRnZVZhbHVlID8gMTIgOiB2YWx1ZTtcbiAgICB9XG5cbiAgICBpZiAob3V0ZXIpIHtcbiAgICAgIHJldHVybiBlZGdlVmFsdWUgPyAwIDogdmFsdWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIGVkZ2VWYWx1ZSA/IDEyIDogdmFsdWUgKyAxMjtcbiAgfVxuXG4gIC8qKiBDcmVhdGVzIGxpc3Qgb2YgaG91cnMuICovXG4gIHByaXZhdGUgX2luaXRIb3VycygpOiB2b2lkIHtcbiAgICBjb25zdCBpbml0aWFsSG91cnMgPSB0aGlzLmlzTWVyaWRpZW0gPyBBTExfSE9VUlMuc2xpY2UoMSwgMTMpIDogQUxMX0hPVVJTO1xuXG4gICAgdGhpcy5ob3VycyA9IGluaXRpYWxIb3Vycy5tYXAoKGhvdXIpID0+IHtcbiAgICAgIGNvbnN0IHJhZGlhbiA9IChob3VyIC8gNikgKiBNYXRoLlBJO1xuICAgICAgY29uc3QgcmFkaXVzID0gdGhpcy5fZ2V0UmFkaXVzKGhvdXIpO1xuXG4gICAgICByZXR1cm4ge1xuICAgICAgICB2YWx1ZTogaG91cixcbiAgICAgICAgZGlzcGxheVZhbHVlOiBob3VyID09PSAwID8gJzAwJyA6IFN0cmluZyhob3VyKSxcbiAgICAgICAgbGVmdDogQ0xPQ0tfQ09SUkVDVEVEX1JBRElVUyArIE1hdGguc2luKHJhZGlhbikgKiByYWRpdXMsXG4gICAgICAgIHRvcDogQ0xPQ0tfQ09SUkVDVEVEX1JBRElVUyAtIE1hdGguY29zKHJhZGlhbikgKiByYWRpdXMsXG4gICAgICAgIGRpc2FibGVkOiAhdGhpcy5hdmFpbGFibGVIb3Vycy5pbmNsdWRlcyhob3VyKSxcbiAgICAgIH07XG4gICAgfSk7XG4gIH1cblxuICAvKiogUmV0dXJucyByYWRpdXMgYmFzZWQgb24gaG91ciAqL1xuICBwcml2YXRlIF9nZXRSYWRpdXMoaG91cjogbnVtYmVyKTogbnVtYmVyIHtcbiAgICBpZiAodGhpcy5pc01lcmlkaWVtKSB7XG4gICAgICByZXR1cm4gQ0xPQ0tfT1VURVJfUkFESVVTO1xuICAgIH1cblxuICAgIGNvbnN0IG91dGVyID0gaG91ciA+PSAwICYmIGhvdXIgPCAxMjtcbiAgICBjb25zdCByYWRpdXMgPSBvdXRlciA/IENMT0NLX09VVEVSX1JBRElVUyA6IENMT0NLX0lOTkVSX1JBRElVUztcblxuICAgIHJldHVybiByYWRpdXM7XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJtYXQtY2xvY2stZGlhbC1oYW5kXCJcbiAgW2NsYXNzLm1hdC1jbG9jay1kaWFsLWhhbmQtcG9pbnRsZXNzXT1cImlzSG91clwiXG4gIFtjbGFzcy5tYXQtY2xvY2stZGlhbC1oYW5kLWRpc2FibGVkXT1cImRpc2FibGVkSGFuZFwiXG4gIFtuZ1N0eWxlXT1cIl9oYW5kU3R5bGVzKClcIlxuPjwvZGl2PlxuPG5nLXRlbXBsYXRlIG5nRm9yIGxldC1ob3VyIFtuZ0Zvck9mXT1cImhvdXJzXCIgW25nRm9yVHJhY2tCeV09XCJfdHJhY2tCeVwiPlxuICA8YnV0dG9uXG4gICAgY2xhc3M9XCJtYXQtY2xvY2stZGlhbC1jZWxsXCJcbiAgICBtYXQtbWluaS1mYWJcbiAgICBkaXNhYmxlUmlwcGxlXG4gICAgW3RhYkluZGV4XT1cIl9pc0FjdGl2ZUNlbGwoaG91ci52YWx1ZSkgPyAwIDogLTFcIlxuICAgIFtzdHlsZS5sZWZ0LnB4XT1cImhvdXIubGVmdFwiXG4gICAgW3N0eWxlLnRvcC5weF09XCJob3VyLnRvcFwiXG4gICAgW2NsYXNzLm1hdC1jbG9jay1kaWFsLWNlbGwtYWN0aXZlXT1cIl9pc0FjdGl2ZUNlbGwoaG91ci52YWx1ZSlcIlxuICAgIFtjbGFzcy5tYXQtY2xvY2stZGlhbC1jZWxsLWRpc2FibGVkXT1cImhvdXIuZGlzYWJsZWRcIlxuICAgIFtjb2xvcl09XCJfaXNBY3RpdmVDZWxsKGhvdXIudmFsdWUpID8gY29sb3IgOiB1bmRlZmluZWRcIlxuICAgIFthdHRyLmFyaWEtZGlzYWJsZWRdPVwiaG91ci5kaXNhYmxlZCB8fCBudWxsXCJcbiAgPlxuICAgIHt7IGhvdXIuZGlzcGxheVZhbHVlIH19XG4gIDwvYnV0dG9uPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
187
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG91cnMtY2xvY2stZGlhbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21hdC10aW1lcGlja2VyL3NyYy9saWIvaG91cnMtY2xvY2stZGlhbC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL21hdC10aW1lcGlja2VyL3NyYy9saWIvaG91cnMtY2xvY2stZGlhbC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQ0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFFVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFFTCxNQUFNLEVBQ04saUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7QUFVNUQsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUM7S0FDL0IsSUFBSSxDQUFDLElBQUksQ0FBQztLQUNWLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3BCLE1BQU0sWUFBWSxHQUFHLEdBQUcsQ0FBQztBQUN6QixNQUFNLGlCQUFpQixHQUFHLEVBQUUsQ0FBQztBQUM3QixNQUFNLHNCQUFzQixHQUFHLFlBQVksR0FBRyxpQkFBaUIsQ0FBQztBQUNoRSxNQUFNLGtCQUFrQixHQUFHLEdBQUcsQ0FBQztBQUMvQixNQUFNLGtCQUFrQixHQUFHLGtCQUFrQixHQUFHLGlCQUFpQixHQUFHLENBQUMsQ0FBQztBQWV0RSxNQUFNLE9BQU8saUJBQWlCO0lBQzVCLHFCQUFxQjtJQUNyQixJQUNJLFlBQVk7UUFDZCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUM7SUFDNUIsQ0FBQztJQUNELElBQUksWUFBWSxD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Z0JBV0csS0FBSztzQkFBYixLQUFLO2dCQUdJLGNBQWM7c0JBQXZCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVGhlbWVQYWxldHRlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIGZyb21FdmVudCwgbWVyZ2UsIHRha2UgfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IGludGVyZmFjZSBDbG9ja0RpYWxWaWV3Q2VsbCB7XG4gIHZhbHVlOiBudW1iZXI7XG4gIGRpc3BsYXlWYWx1ZTogc3RyaW5nO1xuICBsZWZ0OiBudW1iZXI7XG4gIHRvcDogbnVtYmVyO1xuICBkaXNhYmxlZDogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGNvbnN0IEFMTF9IT1VSUyA9IEFycmF5KDI0KVxuICAuZmlsbChudWxsKVxuICAubWFwKChfLCBpKSA9PiBpKTtcbmNvbnN0IENMT0NLX1JBRElVUyA9IDEyODtcbmNvbnN0IENMT0NLX1RJQ0tfUkFESVVTID0gMTY7XG5jb25zdCBDTE9DS19DT1JSRUNURURfUkFESVVTID0gQ0xPQ0tfUkFESVVTIC0gQ0xPQ0tfVElDS19SQURJVVM7XG5jb25zdCBDTE9DS19PVVRFUl9SQURJVVMgPSAxMDA7XG5jb25zdCBDTE9DS19JTk5FUl9SQURJVVMgPSBDTE9DS19PVVRFUl9SQURJVVMgLSBDTE9DS19USUNLX1JBRElVUyAqIDI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21hdC1ob3Vycy1jbG9jay1kaWFsJyxcbiAgdGVtcGxhdGVVcmw6ICdob3Vycy1jbG9jay1kaWFsLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnY2xvY2stZGlhbC5zY3NzJ10sXG4gIGV4cG9ydEFzOiAnbWF0SG91cnNDbG9ja0RpYWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnbWF0LWNsb2NrLWRpYWwgbWF0LWNsb2NrLWRpYWwtaG91cnMnLFxuICAgICcobW91c2Vkb3duKSc6ICdfb25Vc2VyQWN0aW9uKCRldmVudCknLFxuICAgICcodG91Y2hzdGFydCknOiAnX29uVXNlckFjdGlvbigkZXZlbnQpJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgTWF0SG91cnNDbG9ja0RpYWwgaW1wbGVtZW50cyBPbkluaXQge1xuICAvKiogU2VsZWN0ZWQgaG91ci4gKi9cbiAgQElucHV0KClcbiAgZ2V0IHNlbGVjdGVkSG91cigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9zZWxlY3RlZEhvdXI7XG4gIH1cbiAgc2V0IHNlbGVjdGVkSG91cih2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5fc2VsZWN0ZWRIb3VyID0gdmFsdWU7XG4gIH1cbiAgcHJpdmF0ZSBfc2VsZWN0ZWRIb3VyOiBudW1iZXI7XG5cbiAgLyoqIFdoZXRoZXIgdGhlIGNsb2NrIHVzZXMgMTIgaG91ciBmb3JtYXQuICovXG4gIEBJbnB1dCgpXG4gIGdldCBpc01lcmlkaWVtKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9pc01lcmlkaWVtO1xuICB9XG4gIHNldCBpc01lcmlkaWVtKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5faXNNZXJpZGllbSA9IHZhbHVlO1xuICB9XG4gIHByaXZhdGUgX2lzTWVyaWRpZW06IGJvb2xlYW47XG5cbiAgQElucHV0KClcbiAgZ2V0IGF2YWlsYWJsZUhvdXJzKCk6IG51bWJlcltdIHtcbiAgICByZXR1cm4gdGhpcy5fYXZhaWxhYmxlSG91cnM7XG4gIH1cbiAgc2V0IGF2YWlsYWJsZUhvdXJzKHZhbHVlOiBudW1iZXJbXSkge1xuICAgIHRoaXMuX2F2YWlsYWJsZUhvdXJzID0gdmFsdWU7XG4gICAgdGhpcy5faW5pdEhvdXJzKCk7XG4gIH1cbiAgcHJpdmF0ZSBfYXZhaWxhYmxlSG91cnM6IG51bWJlcltdID0gW107XG5cbiAgLyoqIENvbG9yIHBhbGV0dGUuICovXG4gIEBJbnB1dCgpIGNvbG9yOiBUaGVtZVBhbGV0dGU7XG5cbiAgLyoqIEVtaXRzIHNlbGVjdGVkIGhvdXIuICovXG4gIEBPdXRwdXQoKSBzZWxlY3RlZENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8e1xuICAgIGhvdXI6IG51bWJlcjtcbiAgICBjaGFuZ2VWaWV3PzogYm9vbGVhbjtcbiAgfT4oKTtcblxuICBob3VyczogQ2xvY2tEaWFsVmlld0NlbGxbXSA9IFtdO1xuXG4gIGdldCBkaXNhYmxlZEhhbmQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICF0aGlzLmF2YWlsYWJsZUhvdXJzLmluY2x1ZGVzKHRoaXMuc2VsZWN0ZWRIb3VyKTtcbiAgfVxuXG4gIGdldCBpc0hvdXIoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5ob3Vycy5maW5kKChob3VyKSA9PiBob3VyLnZhbHVlID09PSB0aGlzLnNlbGVjdGVkSG91cik7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9lbGVtZW50OiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PixcbiAgICBwcml2YXRlIF9jZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIEBJbmplY3QoRE9DVU1FTlQpIHByaXZhdGUgX2RvY3VtZW50OiBEb2N1bWVudCxcbiAgICBASW5qZWN0KFdpbmRvdykgcHJpdmF0ZSBfd2luZG93OiBXaW5kb3dcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuX2luaXRIb3VycygpO1xuICB9XG5cbiAgLyoqIEhhbmQgc3R5bGVzIGJhc2VkIG9uIHNlbGVjdGVkIGhvdXIuICovXG4gIF9oYW5kU3R5bGVzKCk6IGFueSB7XG4gICAgY29uc3QgZGVnID0gTWF0aC5yb3VuZCh0aGlzLnNlbGVjdGVkSG91ciAqICgzNjAgLyAoMjQgLyAyKSkpO1xuICAgIGNvbnN0IHJhZGl1cyA9IHRoaXMuX2dldFJhZGl1cyh0aGlzLnNlbGVjdGVkSG91cik7XG4gICAgY29uc3QgaGVpZ2h0ID0gcmFkaXVzO1xuICAgIGNvbnN0IG1hcmdpblRvcCA9IENMT0NLX1JBRElVUyAtIHJhZGl1cztcblxuICAgIHJldHVybiB7XG4gICAgICB0cmFuc2Zvcm06IGByb3RhdGUoJHtkZWd9ZGVnKWAsXG4gICAgICBoZWlnaHQ6IGAke2hlaWdodH1weGAsXG4gICAgICAnbWFyZ2luLXRvcCc6IGAke21hcmdpblRvcH1weGAsXG4gICAgfTtcbiAgfVxuXG4gIC8qKiBIYW5kbGVzIG1vdXNlIGFuZCB0b3VjaCBldmVudHMgb24gZGlhbCBhbmQgZG9jdW1lbnQuICovXG4gIF9vblVzZXJBY3Rpb24oZXZlbnQ6IE1vdXNlRXZlbnQgfCBUb3VjaEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKGV2ZW50LmNhbmNlbGFibGUpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuXG4gICAgdGhpcy5fc2V0SG91cihldmVudCk7XG5cbiAgICBjb25zdCBldmVudHNTdWJzY3JpcHRpb24gPSBtZXJnZShcbiAgICAgIGZyb21FdmVudDxNb3VzZUV2ZW50Pih0aGlzLl9kb2N1bWVudCwgJ21vdXNlbW92ZScpLFxuICAgICAgZnJvbUV2ZW50PFRvdWNoRXZlbnQ+KHRoaXMuX2RvY3VtZW50LCAndG91Y2htb3ZlJylcbiAgICApXG4gICAgICAucGlwZShkZWJvdW5jZVRpbWUoMCkpXG4gICAgICAuc3Vic2NyaWJlKHtcbiAgICAgICAgbmV4dDogKGV2ZW50KSA9PiB7XG4gICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICB0aGlzLl9zZXRIb3VyKGV2ZW50KTtcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuXG4gICAgbWVyZ2UoXG4gICAgICBmcm9tRXZlbnQ8TW91c2VFdmVudD4odGhpcy5fZG9jdW1lbnQsICdtb3VzZXVwJyksXG4gICAgICBmcm9tRXZlbnQ8VG91Y2hFdmVudD4odGhpcy5fZG9jdW1lbnQsICd0b3VjaGVuZCcpXG4gICAgKVxuICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgIC5zdWJzY3JpYmUoe1xuICAgICAgICBuZXh0OiAoKSA9PiB7XG4gICAgICAgICAgZXZlbnRzU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgdGhpcy5zZWxlY3RlZENoYW5nZS5lbWl0KHtcbiAgICAgICAgICAgIGhvdXI6IHRoaXMuc2VsZWN0ZWRIb3VyLFxuICAgICAgICAgICAgY2hhbmdlVmlldzogdHJ1ZSxcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuICB9XG5cbiAgX2lzQWN0aXZlQ2VsbChob3VyOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZEhvdXIgPT09IGhvdXI7XG4gIH1cblxuICBfdHJhY2tCeShpbmRleDogbnVtYmVyLCBjZWxsOiBDbG9ja0RpYWxWaWV3Q2VsbCk6IG51bWJlciB7XG4gICAgcmV0dXJuIGNlbGwudmFsdWU7XG4gIH1cblxuICAvKiogQ2hhbmdlcyBzZWxlY3RlZCBob3VyIGJhc2VkIG9uIGNvb3JkaW5hdGVzLiAqL1xuICBwcml2YXRlIF9zZXRIb3VyKGV2ZW50OiBNb3VzZUV2ZW50IHwgVG91Y2hFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLl9lbGVtZW50Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgY29uc3QgZWxlbWVudFJlY3QgPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgIGNvbnN0IHdpZHRoID0gZWxlbWVudC5vZmZzZXRXaWR0aDtcbiAgICBjb25zdCBoZWlnaHQgPSBlbGVtZW50Lm9mZnNldEhlaWdodDtcbiAgICBjb25zdCBwYWdlWCA9XG4gICAgICBldmVudCBpbnN0YW5jZW9mIE1vdXNlRXZlbnQgPyBldmVudC5wYWdlWCA6IGV2ZW50LnRvdWNoZXNbMF0ucGFnZVg7XG4gICAgY29uc3QgcGFnZVkgPVxuICAgICAgZXZlbnQgaW5zdGFuY2VvZiBNb3VzZUV2ZW50ID8gZXZlbnQucGFnZVkgOiBldmVudC50b3VjaGVzWzBdLnBhZ2VZO1xuICAgIGNvbnN0IHggPSB3aWR0aCAvIDIgLSAocGFnZVggLSBlbGVtZW50UmVjdC5sZWZ0IC0gdGhpcy5fd2luZG93LnNjcm9sbFgpO1xuICAgIGNvbnN0IHkgPSBoZWlnaHQgLyAyIC0gKHBhZ2VZIC0gZWxlbWVudFJlY3QudG9wIC0gdGhpcy5fd2luZG93LnNjcm9sbFkpO1xuICAgIGNvbnN0IHVuaXQgPSBNYXRoLlBJIC8gNjtcbiAgICBjb25zdCBhdGFuMiA9IE1hdGguYXRhbjIoLXgsIHkpO1xuICAgIGNvbnN0IHJhZGlhbiA9IGF0YW4yIDwgMCA/IE1hdGguUEkgKiAyICsgYXRhbjIgOiBhdGFuMjtcbiAgICBjb25zdCBpbml0aWFsVmFsdWUgPSBNYXRoLnJvdW5kKHJhZGlhbiAvIHVuaXQpO1xuICAgIGNvbnN0IHogPSBNYXRoLnNxcnQoeCAqIHggKyB5ICogeSk7XG4gICAgY29uc3Qgb3V0ZXIgPSB6ID4gQ0xPQ0tfT1VURVJfUkFESVVTIC0gQ0xPQ0tfVElDS19SQURJVVM7XG4gICAgY29uc3QgdmFsdWUgPSB0aGlzLl9nZXRIb3VyVmFsdWUoaW5pdGlhbFZhbHVlLCBvdXRlcik7XG5cbiAgICBpZiAodGhpcy5hdmFpbGFibGVIb3Vycy5pbmNsdWRlcyh2YWx1ZSkpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRIb3VyID0gdmFsdWU7XG4gICAgICB0aGlzLnNlbGVjdGVkQ2hhbmdlLmVtaXQoe1xuICAgICAgICBob3VyOiB0aGlzLnNlbGVjdGVkSG91cixcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICAvKiogUmV0dXJuIHZhbHVlIG9mIGhvdXIuICovXG4gIHByaXZhdGUgX2dldEhvdXJWYWx1ZSh2YWx1ZTogbnVtYmVyLCBvdXRlcjogYm9vbGVhbik6IG51bWJlciB7XG4gICAgY29uc3QgZWRnZVZhbHVlID0gdmFsdWUgPT09IDAgfHwgdmFsdWUgPT09IDEyO1xuXG4gICAgaWYgKHRoaXMuaXNNZXJpZGllbSkge1xuICAgICAgcmV0dXJuIGVkZ2VWYWx1ZSA/IDEyIDogdmFsdWU7XG4gICAgfVxuXG4gICAgaWYgKG91dGVyKSB7XG4gICAgICByZXR1cm4gZWRnZVZhbHVlID8gMCA6IHZhbHVlO1xuICAgIH1cblxuICAgIHJldHVybiBlZGdlVmFsdWUgPyAxMiA6IHZhbHVlICsgMTI7XG4gIH1cblxuICAvKiogQ3JlYXRlcyBsaXN0IG9mIGhvdXJzLiAqL1xuICBwcml2YXRlIF9pbml0SG91cnMoKTogdm9pZCB7XG4gICAgY29uc3QgaW5pdGlhbEhvdXJzID0gdGhpcy5pc01lcmlkaWVtID8gQUxMX0hPVVJTLnNsaWNlKDEsIDEzKSA6IEFMTF9IT1VSUztcblxuICAgIHRoaXMuaG91cnMgPSBpbml0aWFsSG91cnMubWFwKChob3VyKSA9PiB7XG4gICAgICBjb25zdCByYWRpYW4gPSAoaG91ciAvIDYpICogTWF0aC5QSTtcbiAgICAgIGNvbnN0IHJhZGl1cyA9IHRoaXMuX2dldFJhZGl1cyhob3VyKTtcblxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdmFsdWU6IGhvdXIsXG4gICAgICAgIGRpc3BsYXlWYWx1ZTogaG91ciA9PT0gMCA/ICcwMCcgOiBTdHJpbmcoaG91ciksXG4gICAgICAgIGxlZnQ6IENMT0NLX0NPUlJFQ1RFRF9SQURJVVMgKyBNYXRoLnNpbihyYWRpYW4pICogcmFkaXVzLFxuICAgICAgICB0b3A6IENMT0NLX0NPUlJFQ1RFRF9SQURJVVMgLSBNYXRoLmNvcyhyYWRpYW4pICogcmFkaXVzLFxuICAgICAgICBkaXNhYmxlZDogIXRoaXMuYXZhaWxhYmxlSG91cnMuaW5jbHVkZXMoaG91ciksXG4gICAgICB9O1xuICAgIH0pO1xuICB9XG5cbiAgLyoqIFJldHVybnMgcmFkaXVzIGJhc2VkIG9uIGhvdXIgKi9cbiAgcHJpdmF0ZSBfZ2V0UmFkaXVzKGhvdXI6IG51bWJlcik6IG51bWJlciB7XG4gICAgaWYgKHRoaXMuaXNNZXJpZGllbSkge1xuICAgICAgcmV0dXJuIENMT0NLX09VVEVSX1JBRElVUztcbiAgICB9XG5cbiAgICBjb25zdCBvdXRlciA9IGhvdXIgPj0gMCAmJiBob3VyIDwgMTI7XG4gICAgY29uc3QgcmFkaXVzID0gb3V0ZXIgPyBDTE9DS19PVVRFUl9SQURJVVMgOiBDTE9DS19JTk5FUl9SQURJVVM7XG5cbiAgICByZXR1cm4gcmFkaXVzO1xuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwibWF0LWNsb2NrLWRpYWwtaGFuZFwiXG4gIFtjbGFzcy5tYXQtY2xvY2stZGlhbC1oYW5kLXBvaW50bGVzc109XCJpc0hvdXJcIlxuICBbY2xhc3MubWF0LWNsb2NrLWRpYWwtaGFuZC1kaXNhYmxlZF09XCJkaXNhYmxlZEhhbmRcIlxuICBbbmdTdHlsZV09XCJfaGFuZFN0eWxlcygpXCJcbj48L2Rpdj5cbjxuZy10ZW1wbGF0ZSBuZ0ZvciBsZXQtaG91ciBbbmdGb3JPZl09XCJob3Vyc1wiIFtuZ0ZvclRyYWNrQnldPVwiX3RyYWNrQnlcIj5cbiAgPGJ1dHRvblxuICAgIGNsYXNzPVwibWF0LWNsb2NrLWRpYWwtY2VsbFwiXG4gICAgbWF0LW1pbmktZmFiXG4gICAgZGlzYWJsZVJpcHBsZVxuICAgIFt0YWJJbmRleF09XCJfaXNBY3RpdmVDZWxsKGhvdXIudmFsdWUpID8gMCA6IC0xXCJcbiAgICBbc3R5bGUubGVmdC5weF09XCJob3VyLmxlZnRcIlxuICAgIFtzdHlsZS50b3AucHhdPVwiaG91ci50b3BcIlxuICAgIFtjbGFzcy5tYXQtY2xvY2stZGlhbC1jZWxsLWFjdGl2ZV09XCJfaXNBY3RpdmVDZWxsKGhvdXIudmFsdWUpXCJcbiAgICBbY2xhc3MubWF0LWNsb2NrLWRpYWwtY2VsbC1kaXNhYmxlZF09XCJob3VyLmRpc2FibGVkXCJcbiAgICBbY29sb3JdPVwiX2lzQWN0aXZlQ2VsbChob3VyLnZhbHVlKSA/IGNvbG9yIDogdW5kZWZpbmVkXCJcbiAgICBbYXR0ci5hcmlhLWRpc2FibGVkXT1cImhvdXIuZGlzYWJsZWQgfHwgbnVsbFwiXG4gID5cbiAgICB7eyBob3VyLmRpc3BsYXlWYWx1ZSB9fVxuICA8L2J1dHRvbj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
@@ -67,7 +67,10 @@ export class MatMinutesClockDial {
|
|
|
67
67
|
};
|
|
68
68
|
}
|
|
69
69
|
/** Handles mouse and touch events on dial and document. */
|
|
70
|
-
|
|
70
|
+
_onUserAction(event) {
|
|
71
|
+
if (event.cancelable) {
|
|
72
|
+
event.preventDefault();
|
|
73
|
+
}
|
|
71
74
|
this._setMinute(event);
|
|
72
75
|
const eventsSubscription = merge(fromEvent(this._document, 'mousemove'), fromEvent(this._document, 'touchmove'))
|
|
73
76
|
.pipe(debounceTime(0))
|
|
@@ -126,22 +129,23 @@ export class MatMinutesClockDial {
|
|
|
126
129
|
};
|
|
127
130
|
});
|
|
128
131
|
}
|
|
129
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
130
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
132
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: MatMinutesClockDial, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: DOCUMENT }, { token: Window }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
133
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.2", type: MatMinutesClockDial, selector: "mat-minutes-clock-dial", inputs: { selectedMinute: "selectedMinute", interval: "interval", availableMinutes: "availableMinutes", color: "color" }, outputs: { selectedChange: "selectedChange" }, host: { listeners: { "mousedown": "_onUserAction($event)", "touchstart": "_onUserAction($event)" }, classAttribute: "mat-clock-dial mat-clock-dial-minutes" }, exportAs: ["matMinutesClockDial"], ngImport: i0, template: "<div\n class=\"mat-clock-dial-hand\"\n [class.mat-clock-dial-hand-pointless]=\"isMinutePoint\"\n [class.mat-clock-dial-hand-disabled]=\"disabled\"\n [ngStyle]=\"_handStyles()\"\n>\n <div class=\"mat-clock-dial-hand-point\" tabindex=\"0\"></div>\n</div>\n<ng-template ngFor let-minute [ngForOf]=\"minutes\" [ngForTrackBy]=\"_trackBy\">\n <button\n class=\"mat-clock-dial-cell\"\n mat-mini-fab\n disableRipple\n [tabIndex]=\"_isActiveCell(minute.value) ? 0 : -1\"\n [style.left.px]=\"minute.left\"\n [style.top.px]=\"minute.top\"\n [class.mat-clock-dial-cell-active]=\"_isActiveCell(minute.value)\"\n [class.mat-clock-dial-cell-disabled]=\"minute.disabled\"\n [color]=\"_isActiveCell(minute.value) ? color : undefined\"\n [attr.aria-disabled]=\"minute.disabled || null\"\n >\n {{ minute.displayValue }}\n </button>\n</ng-template>\n", styles: [".mat-clock-dial{position:relative;display:block;width:16rem;height:16rem;margin:0 auto;border-radius:50%}.mat-clock-dial:before{position:absolute;top:50%;left:50%;width:.4375rem;height:.4375rem;border-radius:50%;transform:translate(-50%,-50%);content:\"\"}[mat-mini-fab].mat-clock-dial-cell{position:absolute;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:50%;box-shadow:none}[mat-mini-fab].mat-clock-dial-cell:disabled{pointer-events:none}[mat-mini-fab].mat-clock-dial-cell:focus,[mat-mini-fab].mat-clock-dial-cell:hover,[mat-mini-fab].mat-clock-dial-cell:active,[mat-mini-fab].mat-clock-dial-cell:focus:active{box-shadow:none}.mat-clock-dial-hand{position:absolute;inset:0;width:1px;margin:0 auto;transform-origin:bottom}.mat-clock-dial-hand:before{position:absolute;top:-.25rem;left:-.25rem;width:calc(.5rem + 1px);height:calc(.5rem + 1px);border-radius:50%;content:\"\"}.mat-clock-dial-hand.mat-clock-dial-hand-pointless:before{content:none}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2.MatMiniFabButton, selector: "button[mat-mini-fab]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
131
134
|
}
|
|
132
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
135
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.2", ngImport: i0, type: MatMinutesClockDial, decorators: [{
|
|
133
136
|
type: Component,
|
|
134
137
|
args: [{ selector: 'mat-minutes-clock-dial', exportAs: 'matMinutesClockDial', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
|
|
135
138
|
class: 'mat-clock-dial mat-clock-dial-minutes',
|
|
136
|
-
'(mousedown)': '
|
|
139
|
+
'(mousedown)': '_onUserAction($event)',
|
|
140
|
+
'(touchstart)': '_onUserAction($event)',
|
|
137
141
|
}, template: "<div\n class=\"mat-clock-dial-hand\"\n [class.mat-clock-dial-hand-pointless]=\"isMinutePoint\"\n [class.mat-clock-dial-hand-disabled]=\"disabled\"\n [ngStyle]=\"_handStyles()\"\n>\n <div class=\"mat-clock-dial-hand-point\" tabindex=\"0\"></div>\n</div>\n<ng-template ngFor let-minute [ngForOf]=\"minutes\" [ngForTrackBy]=\"_trackBy\">\n <button\n class=\"mat-clock-dial-cell\"\n mat-mini-fab\n disableRipple\n [tabIndex]=\"_isActiveCell(minute.value) ? 0 : -1\"\n [style.left.px]=\"minute.left\"\n [style.top.px]=\"minute.top\"\n [class.mat-clock-dial-cell-active]=\"_isActiveCell(minute.value)\"\n [class.mat-clock-dial-cell-disabled]=\"minute.disabled\"\n [color]=\"_isActiveCell(minute.value) ? color : undefined\"\n [attr.aria-disabled]=\"minute.disabled || null\"\n >\n {{ minute.displayValue }}\n </button>\n</ng-template>\n", styles: [".mat-clock-dial{position:relative;display:block;width:16rem;height:16rem;margin:0 auto;border-radius:50%}.mat-clock-dial:before{position:absolute;top:50%;left:50%;width:.4375rem;height:.4375rem;border-radius:50%;transform:translate(-50%,-50%);content:\"\"}[mat-mini-fab].mat-clock-dial-cell{position:absolute;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:50%;box-shadow:none}[mat-mini-fab].mat-clock-dial-cell:disabled{pointer-events:none}[mat-mini-fab].mat-clock-dial-cell:focus,[mat-mini-fab].mat-clock-dial-cell:hover,[mat-mini-fab].mat-clock-dial-cell:active,[mat-mini-fab].mat-clock-dial-cell:focus:active{box-shadow:none}.mat-clock-dial-hand{position:absolute;inset:0;width:1px;margin:0 auto;transform-origin:bottom}.mat-clock-dial-hand:before{position:absolute;top:-.25rem;left:-.25rem;width:calc(.5rem + 1px);height:calc(.5rem + 1px);border-radius:50%;content:\"\"}.mat-clock-dial-hand.mat-clock-dial-hand-pointless:before{content:none}\n"] }]
|
|
138
|
-
}], ctorParameters:
|
|
142
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: Document, decorators: [{
|
|
139
143
|
type: Inject,
|
|
140
144
|
args: [DOCUMENT]
|
|
141
145
|
}] }, { type: Window, decorators: [{
|
|
142
146
|
type: Inject,
|
|
143
147
|
args: [Window]
|
|
144
|
-
}] }]
|
|
148
|
+
}] }], propDecorators: { selectedMinute: [{
|
|
145
149
|
type: Input
|
|
146
150
|
}], interval: [{
|
|
147
151
|
type: Input
|
|
@@ -152,4 +156,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImpor
|
|
|
152
156
|
}], selectedChange: [{
|
|
153
157
|
type: Output
|
|
154
158
|
}] } });
|
|
155
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWludXRlcy1jbG9jay1kaWFsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWF0LXRpbWVwaWNrZXIvc3JjL2xpYi9taW51dGVzLWNsb2NrLWRpYWwudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXQtdGltZXBpY2tlci9zcmMvbGliL21pbnV0ZXMtY2xvY2stZGlhbC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQ0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFFVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFFTCxNQUFNLEVBQ04saUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzdELE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7QUFLNUQsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUM7S0FDakMsSUFBSSxDQUFDLElBQUksQ0FBQztLQUNWLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBRXBCLE1BQU0sWUFBWSxHQUFHLEdBQUcsQ0FBQztBQUN6QixNQUFNLGlCQUFpQixHQUFHLEVBQUUsQ0FBQztBQUM3QixNQUFNLHNCQUFzQixHQUFHLFlBQVksR0FBRyxpQkFBaUIsQ0FBQztBQUNoRSxNQUFNLGtCQUFrQixHQUFHLEdBQUcsQ0FBQztBQWMvQixNQUFNLE9BQU8sbUJBQW1CO0lBQzlCLHVCQUF1QjtJQUN2QixJQUNJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQzlCLENBQUM7SUFDRCxJQUFJLGNBQWMsQ0FBQyxL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dGVudCI6WyJpbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbmplY3QsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY29lcmNlTnVtYmVyUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBmcm9tRXZlbnQsIG1lcmdlLCB0YWtlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IENsb2NrRGlhbFZpZXdDZWxsIH0gZnJvbSAnLi9ob3Vycy1jbG9jay1kaWFsJztcbmltcG9ydCB7IFRoZW1lUGFsZXR0ZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuXG5leHBvcnQgY29uc3QgQUxMX01JTlVURVMgPSBBcnJheSg2MClcbiAgLmZpbGwobnVsbClcbiAgLm1hcCgoXywgaSkgPT4gaSk7XG5cbmNvbnN0IENMT0NLX1JBRElVUyA9IDEyODtcbmNvbnN0IENMT0NLX1RJQ0tfUkFESVVTID0gMTY7XG5jb25zdCBDTE9DS19DT1JSRUNURURfUkFESVVTID0gQ0xPQ0tfUkFESVVTIC0gQ0xPQ0tfVElDS19SQURJVVM7XG5jb25zdCBDTE9DS19PVVRFUl9SQURJVVMgPSAxMDA7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21hdC1taW51dGVzLWNsb2NrLWRpYWwnLFxuICB0ZW1wbGF0ZVVybDogJ21pbnV0ZXMtY2xvY2stZGlhbC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJ2Nsb2NrLWRpYWwuc2NzcyddLFxuICBleHBvcnRBczogJ21hdE1pbnV0ZXNDbG9ja0RpYWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnbWF0LWNsb2NrLWRpYWwgbWF0LWNsb2NrLWRpYWwtbWludXRlcycsXG4gICAgJyhtb3VzZWRvd24pJzogJ19vbk1vdXNlRG93bigkZXZlbnQpJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgTWF0TWludXRlc0Nsb2NrRGlhbCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8qKiBTZWxlY3RlZCBtaW51dGUuICovXG4gIEBJbnB1dCgpXG4gIGdldCBzZWxlY3RlZE1pbnV0ZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9zZWxlY3RlZE1pbnV0ZTtcbiAgfVxuICBzZXQgc2VsZWN0ZWRNaW51dGUodmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuX3NlbGVjdGVkTWludXRlID0gdmFsdWU7XG4gIH1cbiAgcHJpdmF0ZSBfc2VsZWN0ZWRNaW51dGUgPSAwO1xuXG4gIC8qKiBTdGVwIG92ZXIgbWludXRlcy4gKi9cbiAgQElucHV0KClcbiAgZ2V0IGludGVydmFsKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2ludGVydmFsO1xuICB9XG4gIHNldCBpbnRlcnZhbCh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5faW50ZXJ2YWwgPSBjb2VyY2VOdW1iZXJQcm9wZXJ0eSh2YWx1ZSkgfHwgMTtcbiAgfVxuICBwcml2YXRlIF9pbnRlcnZhbDogbnVtYmVyID0gMTtcblxuICBASW5wdXQoKVxuICBnZXQgYXZhaWxhYmxlTWludXRlcygpOiBudW1iZXJbXSB7XG4gICAgcmV0dXJuIHRoaXMuX2F2YWlsYWJsZU1pbnV0ZXM7XG4gIH1cbiAgc2V0IGF2YWlsYWJsZU1pbnV0ZXModmFsdWU6IG51bWJlcltdKSB7XG4gICAgdGhpcy5fYXZhaWxhYmxlTWludXRlcyA9IHZhbHVlO1xuICAgIHRoaXMuX2luaXRNaW51dGVzKCk7XG4gIH1cbiAgcHJpdmF0ZSBfYXZhaWxhYmxlTWludXRlczogbnVtYmVyW10gPSBbXTtcblxuICAvKiogQ29sb3IgcGFsZXR0ZS4gKi9cbiAgQElucHV0KCkgY29sb3I6IFRoZW1lUGFsZXR0ZTtcblxuICAvKiogRW1pdHMgc2VsZWN0ZWQgbWludXRlLiAqL1xuICBAT3V0cHV0KCkgc2VsZWN0ZWRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcblxuICBtaW51dGVzOiBDbG9ja0RpYWxWaWV3Q2VsbFtdID0gW107XG5cbiAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy5hdmFpbGFibGVNaW51dGVzLmluY2x1ZGVzKHRoaXMuc2VsZWN0ZWRNaW51dGUpO1xuICB9XG5cbiAgZ2V0IGlzTWludXRlUG9pbnQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5taW51dGVzLmZpbmQoKGhvdXIpID0+IGhvdXIudmFsdWUgPT09IHRoaXMuc2VsZWN0ZWRNaW51dGUpO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfZWxlbWVudDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgcHJpdmF0ZSBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIF9kb2N1bWVudDogRG9jdW1lbnQsXG4gICAgQEluamVjdChXaW5kb3cpIHByaXZhdGUgX3dpbmRvdzogV2luZG93XG4gICkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9pbml0TWludXRlcygpO1xuICB9XG5cbiAgLyoqIEhhbmQgc3R5bGVzIGJhc2VkIG9uIHNlbGVjdGVkIG1pbnV0ZS4gKi9cbiAgX2hhbmRTdHlsZXMoKTogYW55IHtcbiAgICBjb25zdCBkZWcgPSBNYXRoLnJvdW5kKHRoaXMuX3NlbGVjdGVkTWludXRlICogKDM2MCAvIDYwKSk7XG4gICAgY29uc3QgaGVpZ2h0ID0gQ0xPQ0tfT1VURVJfUkFESVVTO1xuICAgIGNvbnN0IG1hcmdpblRvcCA9IENMT0NLX1JBRElVUyAtIENMT0NLX09VVEVSX1JBRElVUztcblxuICAgIHJldHVybiB7XG4gICAgICB0cmFuc2Zvcm06IGByb3RhdGUoJHtkZWd9ZGVnKWAsXG4gICAgICBoZWlnaHQ6IGAke2hlaWdodH1weGAsXG4gICAgICAnbWFyZ2luLXRvcCc6IGAke21hcmdpblRvcH1weGAsXG4gICAgfTtcbiAgfVxuXG4gIC8qKiBIYW5kbGVzIG1vdXNlIGFuZCB0b3VjaCBldmVudHMgb24gZGlhbCBhbmQgZG9jdW1lbnQuICovXG4gIF9vbk1vdXNlRG93bihldmVudDogTW91c2VFdmVudCB8IFRvdWNoRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLl9zZXRNaW51dGUoZXZlbnQpO1xuXG4gICAgY29uc3QgZXZlbnRzU3Vic2NyaXB0aW9uID0gbWVyZ2UoXG4gICAgICBmcm9tRXZlbnQ8TW91c2VFdmVudD4odGhpcy5fZG9jdW1lbnQsICdtb3VzZW1vdmUnKSxcbiAgICAgIGZyb21FdmVudDxUb3VjaEV2ZW50Pih0aGlzLl9kb2N1bWVudCwgJ3RvdWNobW92ZScpXG4gICAgKVxuICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKDApKVxuICAgICAgLnN1YnNjcmliZSh7XG4gICAgICAgIG5leHQ6IChldmVudCkgPT4ge1xuICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgdGhpcy5fc2V0TWludXRlKGV2ZW50KTtcbiAgICAgICAgfSxcbiAgICAgIH0pO1xuXG4gICAgbWVyZ2UoXG4gICAgICBmcm9tRXZlbnQ8TW91c2VFdmVudD4odGhpcy5fZG9jdW1lbnQsICdtb3VzZXVwJyksXG4gICAgICBmcm9tRXZlbnQ8VG91Y2hFdmVudD4odGhpcy5fZG9jdW1lbnQsICd0b3VjaGVuZCcpXG4gICAgKVxuICAgICAgLnBpcGUodGFrZSgxKSlcbiAgICAgIC5zdWJzY3JpYmUoe1xuICAgICAgICBuZXh0OiAoKSA9PiB7XG4gICAgICAgICAgZXZlbnRzU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgfVxuXG4gIF9pc0FjdGl2ZUNlbGwobWludXRlOiBudW1iZXIpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zZWxlY3RlZE1pbnV0ZSA9PT0gbWludXRlO1xuICB9XG5cbiAgX3RyYWNrQnkoaW5kZXg6IG51bWJlciwgY2VsbDogQ2xvY2tEaWFsVmlld0NlbGwpOiBudW1iZXIge1xuICAgIHJldHVybiBjZWxsLnZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2V0TWludXRlKGV2ZW50OiBNb3VzZUV2ZW50IHwgVG91Y2hFdmVudCk6IHZvaWQge1xuICAgIGNvbnN0IGVsZW1lbnQgPSB0aGlzLl9lbGVtZW50Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgY29uc3QgZWxlbWVudFJlY3QgPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgIGNvbnN0IHdpZHRoID0gZWxlbWVudC5vZmZzZXRXaWR0aDtcbiAgICBjb25zdCBoZWlnaHQgPSBlbGVtZW50Lm9mZnNldEhlaWdodDtcbiAgICBjb25zdCBwYWdlWCA9XG4gICAgICBldmVudCBpbnN0YW5jZW9mIE1vdXNlRXZlbnQgPyBldmVudC5wYWdlWCA6IGV2ZW50LnRvdWNoZXNbMF0ucGFnZVg7XG4gICAgY29uc3QgcGFnZVkgPVxuICAgICAgZXZlbnQgaW5zdGFuY2VvZiBNb3VzZUV2ZW50ID8gZXZlbnQucGFnZVkgOiBldmVudC50b3VjaGVzWzBdLnBhZ2VZO1xuICAgIGNvbnN0IHggPSB3aWR0aCAvIDIgLSAocGFnZVggLSBlbGVtZW50UmVjdC5sZWZ0IC0gdGhpcy5fd2luZG93LnNjcm9sbFgpO1xuICAgIGNvbnN0IHkgPSBoZWlnaHQgLyAyIC0gKHBhZ2VZIC0gZWxlbWVudFJlY3QudG9wIC0gdGhpcy5fd2luZG93LnNjcm9sbFkpO1xuICAgIGNvbnN0IHVuaXQgPSBNYXRoLlBJIC8gKDMwIC8gdGhpcy5pbnRlcnZhbCk7XG4gICAgY29uc3QgYXRhbjIgPSBNYXRoLmF0YW4yKC14LCB5KTtcbiAgICBjb25zdCByYWRpYW4gPSBhdGFuMiA8IDAgPyBNYXRoLlBJICogMiArIGF0YW4yIDogYXRhbjI7XG4gICAgY29uc3QgaW5pdGlhbFZhbHVlID0gTWF0aC5yb3VuZChyYWRpYW4gLyB1bml0KSAqIHRoaXMuaW50ZXJ2YWw7XG4gICAgY29uc3QgdmFsdWUgPSBpbml0aWFsVmFsdWUgPT09IDYwID8gMCA6IGluaXRpYWxWYWx1ZTtcblxuICAgIGlmIChcbiAgICAgIHRoaXMuYXZhaWxhYmxlTWludXRlcy5pbmNsdWRlcyh2YWx1ZSkgJiZcbiAgICAgIHRoaXMuYXZhaWxhYmxlTWludXRlcy5pbmNsdWRlcyh2YWx1ZSlcbiAgICApIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRNaW51dGUgPSB2YWx1ZTtcbiAgICAgIHRoaXMuc2VsZWN0ZWRDaGFuZ2UuZW1pdCh0aGlzLnNlbGVjdGVkTWludXRlKTtcbiAgICB9XG5cbiAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgLyoqIENyZWF0ZXMgbGlzdCBvZiBtaW51dGVzLiAqL1xuICBwcml2YXRlIF9pbml0TWludXRlcygpOiB2b2lkIHtcbiAgICB0aGlzLm1pbnV0ZXMgPSBBTExfTUlOVVRFUy5maWx0ZXIoKG1pbnV0ZSkgPT4gbWludXRlICUgNSA9PT0gMCkubWFwKFxuICAgICAgKG1pbnV0ZSkgPT4ge1xuICAgICAgICBjb25zdCByYWRpYW4gPSAobWludXRlIC8gMzApICogTWF0aC5QSTtcbiAgICAgICAgY29uc3QgZGlzcGxheVZhbHVlID0gbWludXRlID09PSAwID8gJzAwJyA6IFN0cmluZyhtaW51dGUpO1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgdmFsdWU6IG1pbnV0ZSxcbiAgICAgICAgICBkaXNwbGF5VmFsdWUsXG4gICAgICAgICAgbGVmdDogQ0xPQ0tfQ09SUkVDVEVEX1JBRElVUyArIE1hdGguc2luKHJhZGlhbikgKiBDTE9DS19PVVRFUl9SQURJVVMsXG4gICAgICAgICAgdG9wOiBDTE9DS19DT1JSRUNURURfUkFESVVTIC0gTWF0aC5jb3MocmFkaWFuKSAqIENMT0NLX09VVEVSX1JBRElVUyxcbiAgICAgICAgICBkaXNhYmxlZDogIXRoaXMuYXZhaWxhYmxlTWludXRlcy5pbmNsdWRlcyhtaW51dGUpLFxuICAgICAgICB9O1xuICAgICAgfVxuICAgICk7XG4gIH1cbn1cbiIsIjxkaXZcbiAgY2xhc3M9XCJtYXQtY2xvY2stZGlhbC1oYW5kXCJcbiAgW2NsYXNzLm1hdC1jbG9jay1kaWFsLWhhbmQtcG9pbnRsZXNzXT1cImlzTWludXRlUG9pbnRcIlxuICBbY2xhc3MubWF0LWNsb2NrLWRpYWwtaGFuZC1kaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gIFtuZ1N0eWxlXT1cIl9oYW5kU3R5bGVzKClcIlxuPlxuICA8ZGl2IGNsYXNzPVwibWF0LWNsb2NrLWRpYWwtaGFuZC1wb2ludFwiIHRhYmluZGV4PVwiMFwiPjwvZGl2PlxuPC9kaXY+XG48bmctdGVtcGxhdGUgbmdGb3IgbGV0LW1pbnV0ZSBbbmdGb3JPZl09XCJtaW51dGVzXCIgW25nRm9yVHJhY2tCeV09XCJfdHJhY2tCeVwiPlxuICA8YnV0dG9uXG4gICAgY2xhc3M9XCJtYXQtY2xvY2stZGlhbC1jZWxsXCJcbiAgICBtYXQtbWluaS1mYWJcbiAgICBkaXNhYmxlUmlwcGxlXG4gICAgW3RhYkluZGV4XT1cIl9pc0FjdGl2ZUNlbGwobWludXRlLnZhbHVlKSA/IDAgOiAtMVwiXG4gICAgW3N0eWxlLmxlZnQucHhdPVwibWludXRlLmxlZnRcIlxuICAgIFtzdHlsZS50b3AucHhdPVwibWludXRlLnRvcFwiXG4gICAgW2NsYXNzLm1hdC1jbG9jay1kaWFsLWNlbGwtYWN0aXZlXT1cIl9pc0FjdGl2ZUNlbGwobWludXRlLnZhbHVlKVwiXG4gICAgW2NsYXNzLm1hdC1jbG9jay1kaWFsLWNlbGwtZGlzYWJsZWRdPVwibWludXRlLmRpc2FibGVkXCJcbiAgICBbY29sb3JdPVwiX2lzQWN0aXZlQ2VsbChtaW51dGUudmFsdWUpID8gY29sb3IgOiB1bmRlZmluZWRcIlxuICAgIFthdHRyLmFyaWEtZGlzYWJsZWRdPVwibWludXRlLmRpc2FibGVkIHx8IG51bGxcIlxuICA+XG4gICAge3sgbWludXRlLmRpc3BsYXlWYWx1ZSB9fVxuICA8L2J1dHRvbj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|
|
159
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWludXRlcy1jbG9jay1kaWFsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbWF0LXRpbWVwaWNrZXIvc3JjL2xpYi9taW51dGVzLWNsb2NrLWRpYWwudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9tYXQtdGltZXBpY2tlci9zcmMvbGliL21pbnV0ZXMtY2xvY2stZGlhbC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQ0wsdUJBQXVCLEVBRXZCLFNBQVMsRUFFVCxZQUFZLEVBQ1osTUFBTSxFQUNOLEtBQUssRUFFTCxNQUFNLEVBQ04saUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzdELE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7QUFLNUQsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUM7S0FDakMsSUFBSSxDQUFDLElBQUksQ0FBQztLQUNWLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBRXBCLE1BQU0sWUFBWSxHQUFHLEdBQUcsQ0FBQztBQUN6QixNQUFNLGlCQUFpQixHQUFHLEVBQUUsQ0FBQztBQUM3QixNQUFNLHNCQUFzQixHQUFHLFlBQVksR0FBRyxpQkFBaUIsQ0FBQztBQUNoRSxNQUFNLGtCQUFrQixHQUFHLEdBQUcsQ0FBQztBQWUvQixNQUFNLE9BQU8sbUJBQW1CO0lBQzlCLHVCQUF1QjtJQUN2QixJQUNJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDO0lBQzlCLENBQUM7SUFDRCxJQUFJLGNBQWMsQ0FBQyxL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QURYLEtBQUs7Z0JBVUYsZ0JBQWdCO3NCQURuQixLQUFLO2dCQVdHLEtBQUs7c0JBQWIsS0FBSztnQkFHSSxjQUFjO3NCQUF2QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5qZWN0LFxuICBJbnB1dCxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNvZXJjZU51bWJlclByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZnJvbUV2ZW50LCBtZXJnZSwgdGFrZSB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBDbG9ja0RpYWxWaWV3Q2VsbCB9IGZyb20gJy4vaG91cnMtY2xvY2stZGlhbCc7XG5pbXBvcnQgeyBUaGVtZVBhbGV0dGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcblxuZXhwb3J0IGNvbnN0IEFMTF9NSU5VVEVTID0gQXJyYXkoNjApXG4gIC5maWxsKG51bGwpXG4gIC5tYXAoKF8sIGkpID0+IGkpO1xuXG5jb25zdCBDTE9DS19SQURJVVMgPSAxMjg7XG5jb25zdCBDTE9DS19USUNLX1JBRElVUyA9IDE2O1xuY29uc3QgQ0xPQ0tfQ09SUkVDVEVEX1JBRElVUyA9IENMT0NLX1JBRElVUyAtIENMT0NLX1RJQ0tfUkFESVVTO1xuY29uc3QgQ0xPQ0tfT1VURVJfUkFESVVTID0gMTAwO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdtYXQtbWludXRlcy1jbG9jay1kaWFsJyxcbiAgdGVtcGxhdGVVcmw6ICdtaW51dGVzLWNsb2NrLWRpYWwuaHRtbCcsXG4gIHN0eWxlVXJsczogWydjbG9jay1kaWFsLnNjc3MnXSxcbiAgZXhwb3J0QXM6ICdtYXRNaW51dGVzQ2xvY2tEaWFsJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ21hdC1jbG9jay1kaWFsIG1hdC1jbG9jay1kaWFsLW1pbnV0ZXMnLFxuICAgICcobW91c2Vkb3duKSc6ICdfb25Vc2VyQWN0aW9uKCRldmVudCknLFxuICAgICcodG91Y2hzdGFydCknOiAnX29uVXNlckFjdGlvbigkZXZlbnQpJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgTWF0TWludXRlc0Nsb2NrRGlhbCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8qKiBTZWxlY3RlZCBtaW51dGUuICovXG4gIEBJbnB1dCgpXG4gIGdldCBzZWxlY3RlZE1pbnV0ZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9zZWxlY3RlZE1pbnV0ZTtcbiAgfVxuICBzZXQgc2VsZWN0ZWRNaW51dGUodmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuX3NlbGVjdGVkTWludXRlID0gdmFsdWU7XG4gIH1cbiAgcHJpdmF0ZSBfc2VsZWN0ZWRNaW51dGUgPSAwO1xuXG4gIC8qKiBTdGVwIG92ZXIgbWludXRlcy4gKi9cbiAgQElucHV0KClcbiAgZ2V0IGludGVydmFsKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2ludGVydmFsO1xuICB9XG4gIHNldCBpbnRlcnZhbCh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5faW50ZXJ2YWwgPSBjb2VyY2VOdW1iZXJQcm9wZXJ0eSh2YWx1ZSkgfHwgMTtcbiAgfVxuICBwcml2YXRlIF9pbnRlcnZhbDogbnVtYmVyID0gMTtcblxuICBASW5wdXQoKVxuICBnZXQgYXZhaWxhYmxlTWludXRlcygpOiBudW1iZXJbXSB7XG4gICAgcmV0dXJuIHRoaXMuX2F2YWlsYWJsZU1pbnV0ZXM7XG4gIH1cbiAgc2V0IGF2YWlsYWJsZU1pbnV0ZXModmFsdWU6IG51bWJlcltdKSB7XG4gICAgdGhpcy5fYXZhaWxhYmxlTWludXRlcyA9IHZhbHVlO1xuICAgIHRoaXMuX2luaXRNaW51dGVzKCk7XG4gIH1cbiAgcHJpdmF0ZSBfYXZhaWxhYmxlTWludXRlczogbnVtYmVyW10gPSBbXTtcblxuICAvKiogQ29sb3IgcGFsZXR0ZS4gKi9cbiAgQElucHV0KCkgY29sb3I6IFRoZW1lUGFsZXR0ZTtcblxuICAvKiogRW1pdHMgc2VsZWN0ZWQgbWludXRlLiAqL1xuICBAT3V0cHV0KCkgc2VsZWN0ZWRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcblxuICBtaW51dGVzOiBDbG9ja0RpYWxWaWV3Q2VsbFtdID0gW107XG5cbiAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy5hdmFpbGFibGVNaW51dGVzLmluY2x1ZGVzKHRoaXMuc2VsZWN0ZWRNaW51dGUpO1xuICB9XG5cbiAgZ2V0IGlzTWludXRlUG9pbnQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5taW51dGVzLmZpbmQoKGhvdXIpID0+IGhvdXIudmFsdWUgPT09IHRoaXMuc2VsZWN0ZWRNaW51dGUpO1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfZWxlbWVudDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgcHJpdmF0ZSBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIF9kb2N1bWVudDogRG9jdW1lbnQsXG4gICAgQEluamVjdChXaW5kb3cpIHByaXZhdGUgX3dpbmRvdzogV2luZG93XG4gICkge31cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLl9pbml0TWludXRlcygpO1xuICB9XG5cbiAgLyoqIEhhbmQgc3R5bGVzIGJhc2VkIG9uIHNlbGVjdGVkIG1pbnV0ZS4gKi9cbiAgX2hhbmRTdHlsZXMoKTogYW55IHtcbiAgICBjb25zdCBkZWcgPSBNYXRoLnJvdW5kKHRoaXMuX3NlbGVjdGVkTWludXRlICogKDM2MCAvIDYwKSk7XG4gICAgY29uc3QgaGVpZ2h0ID0gQ0xPQ0tfT1VURVJfUkFESVVTO1xuICAgIGNvbnN0IG1hcmdpblRvcCA9IENMT0NLX1JBRElVUyAtIENMT0NLX09VVEVSX1JBRElVUztcblxuICAgIHJldHVybiB7XG4gICAgICB0cmFuc2Zvcm06IGByb3RhdGUoJHtkZWd9ZGVnKWAsXG4gICAgICBoZWlnaHQ6IGAke2hlaWdodH1weGAsXG4gICAgICAnbWFyZ2luLXRvcCc6IGAke21hcmdpblRvcH1weGAsXG4gICAgfTtcbiAgfVxuXG4gIC8qKiBIYW5kbGVzIG1vdXNlIGFuZCB0b3VjaCBldmVudHMgb24gZGlhbCBhbmQgZG9jdW1lbnQuICovXG4gIF9vblVzZXJBY3Rpb24oZXZlbnQ6IE1vdXNlRXZlbnQgfCBUb3VjaEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKGV2ZW50LmNhbmNlbGFibGUpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuXG4gICAgdGhpcy5fc2V0TWludXRlKGV2ZW50KTtcblxuICAgIGNvbnN0IGV2ZW50c1N1YnNjcmlwdGlvbiA9IG1lcmdlKFxuICAgICAgZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KHRoaXMuX2RvY3VtZW50LCAnbW91c2Vtb3ZlJyksXG4gICAgICBmcm9tRXZlbnQ8VG91Y2hFdmVudD4odGhpcy5fZG9jdW1lbnQsICd0b3VjaG1vdmUnKVxuICAgIClcbiAgICAgIC5waXBlKGRlYm91bmNlVGltZSgwKSlcbiAgICAgIC5zdWJzY3JpYmUoe1xuICAgICAgICBuZXh0OiAoZXZlbnQpID0+IHtcbiAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgIHRoaXMuX3NldE1pbnV0ZShldmVudCk7XG4gICAgICAgIH0sXG4gICAgICB9KTtcblxuICAgIG1lcmdlKFxuICAgICAgZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KHRoaXMuX2RvY3VtZW50LCAnbW91c2V1cCcpLFxuICAgICAgZnJvbUV2ZW50PFRvdWNoRXZlbnQ+KHRoaXMuX2RvY3VtZW50LCAndG91Y2hlbmQnKVxuICAgIClcbiAgICAgIC5waXBlKHRha2UoMSkpXG4gICAgICAuc3Vic2NyaWJlKHtcbiAgICAgICAgbmV4dDogKCkgPT4ge1xuICAgICAgICAgIGV2ZW50c1N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICB9LFxuICAgICAgfSk7XG4gIH1cblxuICBfaXNBY3RpdmVDZWxsKG1pbnV0ZTogbnVtYmVyKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRNaW51dGUgPT09IG1pbnV0ZTtcbiAgfVxuXG4gIF90cmFja0J5KGluZGV4OiBudW1iZXIsIGNlbGw6IENsb2NrRGlhbFZpZXdDZWxsKTogbnVtYmVyIHtcbiAgICByZXR1cm4gY2VsbC52YWx1ZTtcbiAgfVxuXG4gIHByaXZhdGUgX3NldE1pbnV0ZShldmVudDogTW91c2VFdmVudCB8IFRvdWNoRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBlbGVtZW50ID0gdGhpcy5fZWxlbWVudC5uYXRpdmVFbGVtZW50O1xuICAgIGNvbnN0IGVsZW1lbnRSZWN0ID0gZWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICBjb25zdCB3aWR0aCA9IGVsZW1lbnQub2Zmc2V0V2lkdGg7XG4gICAgY29uc3QgaGVpZ2h0ID0gZWxlbWVudC5vZmZzZXRIZWlnaHQ7XG4gICAgY29uc3QgcGFnZVggPVxuICAgICAgZXZlbnQgaW5zdGFuY2VvZiBNb3VzZUV2ZW50ID8gZXZlbnQucGFnZVggOiBldmVudC50b3VjaGVzWzBdLnBhZ2VYO1xuICAgIGNvbnN0IHBhZ2VZID1cbiAgICAgIGV2ZW50IGluc3RhbmNlb2YgTW91c2VFdmVudCA/IGV2ZW50LnBhZ2VZIDogZXZlbnQudG91Y2hlc1swXS5wYWdlWTtcbiAgICBjb25zdCB4ID0gd2lkdGggLyAyIC0gKHBhZ2VYIC0gZWxlbWVudFJlY3QubGVmdCAtIHRoaXMuX3dpbmRvdy5zY3JvbGxYKTtcbiAgICBjb25zdCB5ID0gaGVpZ2h0IC8gMiAtIChwYWdlWSAtIGVsZW1lbnRSZWN0LnRvcCAtIHRoaXMuX3dpbmRvdy5zY3JvbGxZKTtcbiAgICBjb25zdCB1bml0ID0gTWF0aC5QSSAvICgzMCAvIHRoaXMuaW50ZXJ2YWwpO1xuICAgIGNvbnN0IGF0YW4yID0gTWF0aC5hdGFuMigteCwgeSk7XG4gICAgY29uc3QgcmFkaWFuID0gYXRhbjIgPCAwID8gTWF0aC5QSSAqIDIgKyBhdGFuMiA6IGF0YW4yO1xuICAgIGNvbnN0IGluaXRpYWxWYWx1ZSA9IE1hdGgucm91bmQocmFkaWFuIC8gdW5pdCkgKiB0aGlzLmludGVydmFsO1xuICAgIGNvbnN0IHZhbHVlID0gaW5pdGlhbFZhbHVlID09PSA2MCA/IDAgOiBpbml0aWFsVmFsdWU7XG5cbiAgICBpZiAoXG4gICAgICB0aGlzLmF2YWlsYWJsZU1pbnV0ZXMuaW5jbHVkZXModmFsdWUpICYmXG4gICAgICB0aGlzLmF2YWlsYWJsZU1pbnV0ZXMuaW5jbHVkZXModmFsdWUpXG4gICAgKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkTWludXRlID0gdmFsdWU7XG4gICAgICB0aGlzLnNlbGVjdGVkQ2hhbmdlLmVtaXQodGhpcy5zZWxlY3RlZE1pbnV0ZSk7XG4gICAgfVxuXG4gICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIC8qKiBDcmVhdGVzIGxpc3Qgb2YgbWludXRlcy4gKi9cbiAgcHJpdmF0ZSBfaW5pdE1pbnV0ZXMoKTogdm9pZCB7XG4gICAgdGhpcy5taW51dGVzID0gQUxMX01JTlVURVMuZmlsdGVyKChtaW51dGUpID0+IG1pbnV0ZSAlIDUgPT09IDApLm1hcChcbiAgICAgIChtaW51dGUpID0+IHtcbiAgICAgICAgY29uc3QgcmFkaWFuID0gKG1pbnV0ZSAvIDMwKSAqIE1hdGguUEk7XG4gICAgICAgIGNvbnN0IGRpc3BsYXlWYWx1ZSA9IG1pbnV0ZSA9PT0gMCA/ICcwMCcgOiBTdHJpbmcobWludXRlKTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIHZhbHVlOiBtaW51dGUsXG4gICAgICAgICAgZGlzcGxheVZhbHVlLFxuICAgICAgICAgIGxlZnQ6IENMT0NLX0NPUlJFQ1RFRF9SQURJVVMgKyBNYXRoLnNpbihyYWRpYW4pICogQ0xPQ0tfT1VURVJfUkFESVVTLFxuICAgICAgICAgIHRvcDogQ0xPQ0tfQ09SUkVDVEVEX1JBRElVUyAtIE1hdGguY29zKHJhZGlhbikgKiBDTE9DS19PVVRFUl9SQURJVVMsXG4gICAgICAgICAgZGlzYWJsZWQ6ICF0aGlzLmF2YWlsYWJsZU1pbnV0ZXMuaW5jbHVkZXMobWludXRlKSxcbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICApO1xuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwibWF0LWNsb2NrLWRpYWwtaGFuZFwiXG4gIFtjbGFzcy5tYXQtY2xvY2stZGlhbC1oYW5kLXBvaW50bGVzc109XCJpc01pbnV0ZVBvaW50XCJcbiAgW2NsYXNzLm1hdC1jbG9jay1kaWFsLWhhbmQtZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICBbbmdTdHlsZV09XCJfaGFuZFN0eWxlcygpXCJcbj5cbiAgPGRpdiBjbGFzcz1cIm1hdC1jbG9jay1kaWFsLWhhbmQtcG9pbnRcIiB0YWJpbmRleD1cIjBcIj48L2Rpdj5cbjwvZGl2PlxuPG5nLXRlbXBsYXRlIG5nRm9yIGxldC1taW51dGUgW25nRm9yT2ZdPVwibWludXRlc1wiIFtuZ0ZvclRyYWNrQnldPVwiX3RyYWNrQnlcIj5cbiAgPGJ1dHRvblxuICAgIGNsYXNzPVwibWF0LWNsb2NrLWRpYWwtY2VsbFwiXG4gICAgbWF0LW1pbmktZmFiXG4gICAgZGlzYWJsZVJpcHBsZVxuICAgIFt0YWJJbmRleF09XCJfaXNBY3RpdmVDZWxsKG1pbnV0ZS52YWx1ZSkgPyAwIDogLTFcIlxuICAgIFtzdHlsZS5sZWZ0LnB4XT1cIm1pbnV0ZS5sZWZ0XCJcbiAgICBbc3R5bGUudG9wLnB4XT1cIm1pbnV0ZS50b3BcIlxuICAgIFtjbGFzcy5tYXQtY2xvY2stZGlhbC1jZWxsLWFjdGl2ZV09XCJfaXNBY3RpdmVDZWxsKG1pbnV0ZS52YWx1ZSlcIlxuICAgIFtjbGFzcy5tYXQtY2xvY2stZGlhbC1jZWxsLWRpc2FibGVkXT1cIm1pbnV0ZS5kaXNhYmxlZFwiXG4gICAgW2NvbG9yXT1cIl9pc0FjdGl2ZUNlbGwobWludXRlLnZhbHVlKSA/IGNvbG9yIDogdW5kZWZpbmVkXCJcbiAgICBbYXR0ci5hcmlhLWRpc2FibGVkXT1cIm1pbnV0ZS5kaXNhYmxlZCB8fCBudWxsXCJcbiAgPlxuICAgIHt7IG1pbnV0ZS5kaXNwbGF5VmFsdWUgfX1cbiAgPC9idXR0b24+XG48L25nLXRlbXBsYXRlPlxuIl19
|