ngx-tethys 18.2.6 → 18.2.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (58) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/date-picker/abstract-picker.component.d.ts +8 -3
  3. package/date-picker/date-picker.config.d.ts +1 -0
  4. package/date-picker/date-picker.service.d.ts +1 -0
  5. package/date-picker/picker.component.d.ts +2 -1
  6. package/date-picker/picker.pipes.d.ts +6 -2
  7. package/date-picker/picker.util.d.ts +1 -1
  8. package/date-range/date-range.component.d.ts +16 -4
  9. package/esm2022/calendar/calendar-header.component.mjs +2 -2
  10. package/esm2022/date-picker/abstract-picker.component.mjs +14 -5
  11. package/esm2022/date-picker/date-picker.component.mjs +3 -3
  12. package/esm2022/date-picker/date-picker.config.mjs +3 -1
  13. package/esm2022/date-picker/date-picker.service.mjs +4 -1
  14. package/esm2022/date-picker/month-picker.component.mjs +3 -3
  15. package/esm2022/date-picker/picker.component.mjs +7 -5
  16. package/esm2022/date-picker/picker.pipes.mjs +15 -8
  17. package/esm2022/date-picker/picker.util.mjs +8 -8
  18. package/esm2022/date-picker/quarter-picker.component.mjs +3 -3
  19. package/esm2022/date-picker/range-picker.component.mjs +3 -3
  20. package/esm2022/date-picker/week-picker.component.mjs +3 -3
  21. package/esm2022/date-picker/year-picker.component.mjs +3 -3
  22. package/esm2022/date-range/date-range.component.mjs +15 -5
  23. package/esm2022/i18n/i18n.mjs +1 -1
  24. package/esm2022/i18n/locales/de-de.mjs +5 -1
  25. package/esm2022/i18n/locales/en-us.mjs +5 -1
  26. package/esm2022/i18n/locales/ja-jp.mjs +5 -1
  27. package/esm2022/i18n/locales/zh-hans.mjs +5 -1
  28. package/esm2022/i18n/locales/zh-hant.mjs +5 -1
  29. package/esm2022/layout/sidebar.component.mjs +4 -2
  30. package/esm2022/util/date/functions.mjs +19 -1
  31. package/esm2022/util/date/tiny-date.mjs +15 -2
  32. package/esm2022/version.mjs +2 -2
  33. package/fesm2022/ngx-tethys-calendar.mjs +1 -1
  34. package/fesm2022/ngx-tethys-calendar.mjs.map +1 -1
  35. package/fesm2022/ngx-tethys-date-picker.mjs +53 -32
  36. package/fesm2022/ngx-tethys-date-picker.mjs.map +1 -1
  37. package/fesm2022/ngx-tethys-date-range.mjs +14 -4
  38. package/fesm2022/ngx-tethys-date-range.mjs.map +1 -1
  39. package/fesm2022/ngx-tethys-i18n.mjs +20 -0
  40. package/fesm2022/ngx-tethys-i18n.mjs.map +1 -1
  41. package/fesm2022/ngx-tethys-layout.mjs +3 -1
  42. package/fesm2022/ngx-tethys-layout.mjs.map +1 -1
  43. package/fesm2022/ngx-tethys-util.mjs +32 -1
  44. package/fesm2022/ngx-tethys-util.mjs.map +1 -1
  45. package/fesm2022/ngx-tethys.mjs +1 -1
  46. package/fesm2022/ngx-tethys.mjs.map +1 -1
  47. package/i18n/i18n.d.ts +6 -1
  48. package/i18n/locales/de-de.d.ts +4 -0
  49. package/i18n/locales/en-us.d.ts +4 -0
  50. package/i18n/locales/ja-jp.d.ts +4 -0
  51. package/i18n/locales/zh-hans.d.ts +4 -0
  52. package/i18n/locales/zh-hant.d.ts +4 -0
  53. package/layout/sidebar.component.d.ts +8 -42
  54. package/package.json +7 -7
  55. package/schematics/version.d.ts +1 -1
  56. package/schematics/version.js +1 -1
  57. package/util/date/functions.d.ts +2 -0
  58. package/util/date/tiny-date.d.ts +8 -0
package/CHANGELOG.md CHANGED
@@ -2,6 +2,24 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [commit-and-tag-version](https://github.com/absolute-version/commit-and-tag-version) for commit guidelines.
4
4
 
5
+ ## [18.2.8](https://github.com/atinc/ngx-tethys/compare/18.2.7...18.2.8) (2025-03-25)
6
+
7
+
8
+ ### Features
9
+
10
+ * **date-picker:** support date-fns i18n and support thySeparator ([#3313](https://github.com/atinc/ngx-tethys/issues/3313)) ([ce81827](https://github.com/atinc/ngx-tethys/commit/ce818272681bb8f6ce9a240bed4e80d2bfee0054))
11
+
12
+
13
+
14
+ ## [18.2.7](https://github.com/atinc/ngx-tethys/compare/18.2.6...18.2.7) (2025-03-11)
15
+
16
+
17
+ ### Features
18
+
19
+ * **layout:** layout support i18n #TINFR-1616 ([#3301](https://github.com/atinc/ngx-tethys/issues/3301)) ([263c10c](https://github.com/atinc/ngx-tethys/commit/263c10c57b3a792eda7cde325723f43e1773b2d9)), closes [#TINFR-1616](https://github.com/atinc/ngx-tethys/issues/TINFR-1616)
20
+
21
+
22
+
5
23
  ## [18.2.6](https://github.com/atinc/ngx-tethys/compare/18.2.5...18.2.6) (2025-02-14)
6
24
 
7
25
 
@@ -3,10 +3,10 @@ import { TinyDate } from 'ngx-tethys/util';
3
3
  import { Subject } from 'rxjs';
4
4
  import { ChangeDetectorRef, EventEmitter, OnChanges, OnDestroy, OnInit, Signal, SimpleChanges } from '@angular/core';
5
5
  import { ControlValueAccessor } from '@angular/forms';
6
+ import { ThyDatePickerLocale } from 'ngx-tethys/i18n';
6
7
  import { CompatibleValue, RangeAdvancedValue } from './inner-types';
7
8
  import { ThyPicker } from './picker.component';
8
- import { CompatibleDate, DateEntry, DisabledDateFn, ThyDateRangeEntry, ThyPanelMode, ThyShortcutPosition, CompatiblePresets, ThyDateGranularity, ThyDateChangeEvent } from './standard-types';
9
- import { ThyDatePickerLocale } from 'ngx-tethys/i18n';
9
+ import { CompatibleDate, CompatiblePresets, DateEntry, DisabledDateFn, ThyDateChangeEvent, ThyDateGranularity, ThyDateRangeEntry, ThyPanelMode, ThyShortcutPosition } from './standard-types';
10
10
  import * as i0 from "@angular/core";
11
11
  /**
12
12
  * @private
@@ -77,6 +77,11 @@ export declare abstract class AbstractPickerComponent extends TabIndexDisabledCo
77
77
  * @default yyyy-MM-dd
78
78
  */
79
79
  thyFormat: string;
80
+ /**
81
+ * 区间分隔符,不传值默认为 "~"
82
+ */
83
+ thySeparator: string;
84
+ separator: Signal<string>;
80
85
  /**
81
86
  * @description.en-us only for range picker, Whether to automatically take the beginning and ending unixTime of the day
82
87
  * @description.zh-cn 是否取值开始日期的00:00以及截止日期的24:00
@@ -155,7 +160,7 @@ export declare abstract class AbstractPickerComponent extends TabIndexDisabledCo
155
160
  setValue(value: CompatibleDate): void;
156
161
  private setValueByPrecision;
157
162
  static ɵfac: i0.ɵɵFactoryDeclaration<AbstractPickerComponent, never>;
158
- static ɵdir: i0.ɵɵDirectiveDeclaration<AbstractPickerComponent, never, never, { "thyMode": { "alias": "thyMode"; "required": false; }; "thyAllowClear": { "alias": "thyAllowClear"; "required": false; }; "thyAutoFocus": { "alias": "thyAutoFocus"; "required": false; }; "thyOpen": { "alias": "thyOpen"; "required": false; }; "thyDisabledDate": { "alias": "thyDisabledDate"; "required": false; }; "thyMinDate": { "alias": "thyMinDate"; "required": false; }; "thyMaxDate": { "alias": "thyMaxDate"; "required": false; }; "thyPlaceHolder": { "alias": "thyPlaceHolder"; "required": false; }; "thyReadonly": { "alias": "thyReadonly"; "required": false; }; "thyOriginClassName": { "alias": "thyOriginClassName"; "required": false; }; "thyPanelClassName": { "alias": "thyPanelClassName"; "required": false; }; "thySize": { "alias": "thySize"; "required": false; }; "thyTimestampPrecision": { "alias": "thyTimestampPrecision"; "required": false; }; "thyFormat": { "alias": "thyFormat"; "required": false; }; "thyAutoStartAndEnd": { "alias": "thyAutoStartAndEnd"; "required": false; }; "thyDefaultPickerValue": { "alias": "thyDefaultPickerValue"; "required": false; }; "thySuffixIcon": { "alias": "thySuffixIcon"; "required": false; }; "thyShowShortcut": { "alias": "thyShowShortcut"; "required": false; }; "thyShortcutPosition": { "alias": "thyShortcutPosition"; "required": false; }; "thyShortcutPresets": { "alias": "thyShortcutPresets"; "required": false; }; "thyDisabled": { "alias": "thyDisabled"; "required": false; }; }, { "thyDateChange": "thyDateChange"; "thyOpenChange": "thyOpenChange"; }, never, never, false, never>;
163
+ static ɵdir: i0.ɵɵDirectiveDeclaration<AbstractPickerComponent, never, never, { "thyMode": { "alias": "thyMode"; "required": false; }; "thyAllowClear": { "alias": "thyAllowClear"; "required": false; }; "thyAutoFocus": { "alias": "thyAutoFocus"; "required": false; }; "thyOpen": { "alias": "thyOpen"; "required": false; }; "thyDisabledDate": { "alias": "thyDisabledDate"; "required": false; }; "thyMinDate": { "alias": "thyMinDate"; "required": false; }; "thyMaxDate": { "alias": "thyMaxDate"; "required": false; }; "thyPlaceHolder": { "alias": "thyPlaceHolder"; "required": false; }; "thyReadonly": { "alias": "thyReadonly"; "required": false; }; "thyOriginClassName": { "alias": "thyOriginClassName"; "required": false; }; "thyPanelClassName": { "alias": "thyPanelClassName"; "required": false; }; "thySize": { "alias": "thySize"; "required": false; }; "thyTimestampPrecision": { "alias": "thyTimestampPrecision"; "required": false; }; "thyFormat": { "alias": "thyFormat"; "required": false; }; "thySeparator": { "alias": "thySeparator"; "required": false; }; "thyAutoStartAndEnd": { "alias": "thyAutoStartAndEnd"; "required": false; }; "thyDefaultPickerValue": { "alias": "thyDefaultPickerValue"; "required": false; }; "thySuffixIcon": { "alias": "thySuffixIcon"; "required": false; }; "thyShowShortcut": { "alias": "thyShowShortcut"; "required": false; }; "thyShortcutPosition": { "alias": "thyShortcutPosition"; "required": false; }; "thyShortcutPresets": { "alias": "thyShortcutPresets"; "required": false; }; "thyDisabled": { "alias": "thyDisabled"; "required": false; }; }, { "thyDateChange": "thyDateChange"; "thyOpenChange": "thyOpenChange"; }, never, never, false, never>;
159
164
  static ngAcceptInputType_thyAllowClear: boolean | string | number;
160
165
  static ngAcceptInputType_thyAutoFocus: boolean | string | number;
161
166
  static ngAcceptInputType_thyOpen: boolean | string | number;
@@ -8,6 +8,7 @@ export interface ThyDatePickerConfig {
8
8
  shortcutRangesPresets: CompatiblePresets;
9
9
  showShortcut: boolean;
10
10
  weekStartsOn: WeekDayIndex;
11
+ separator: string;
11
12
  timestampPrecision: 'seconds' | 'milliseconds';
12
13
  }
13
14
  /**
@@ -8,6 +8,7 @@ export declare class ThyDatePickerConfigService {
8
8
  get showShortcut(): boolean;
9
9
  get shortcutRangesPresets(): import("ngx-tethys/date-picker").CompatiblePresets;
10
10
  get timestampPrecision(): "seconds" | "milliseconds";
11
+ get separator(): string;
11
12
  static ɵfac: i0.ɵɵFactoryDeclaration<ThyDatePickerConfigService, never>;
12
13
  static ɵprov: i0.ɵɵInjectableDeclaration<ThyDatePickerConfigService>;
13
14
  }
@@ -25,6 +25,7 @@ export declare class ThyPicker implements OnChanges, AfterViewInit {
25
25
  flexible: boolean;
26
26
  mode: string;
27
27
  hasBackdrop: boolean;
28
+ separator: string;
28
29
  blur: EventEmitter<Event>;
29
30
  readonly valueChange: EventEmitter<TinyDate | TinyDate[]>;
30
31
  readonly openChange: EventEmitter<boolean>;
@@ -72,6 +73,6 @@ export declare class ThyPicker implements OnChanges, AfterViewInit {
72
73
  getPlaceholder(): string;
73
74
  private updateReadableDate;
74
75
  static ɵfac: i0.ɵɵFactoryDeclaration<ThyPicker, never>;
75
- static ɵcmp: i0.ɵɵComponentDeclaration<ThyPicker, "thy-picker", ["thyPicker"], { "isRange": { "alias": "isRange"; "required": false; }; "open": { "alias": "open"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "allowClear": { "alias": "allowClear"; "required": false; }; "autoFocus": { "alias": "autoFocus"; "required": false; }; "className": { "alias": "className"; "required": false; }; "size": { "alias": "size"; "required": false; }; "suffixIcon": { "alias": "suffixIcon"; "required": false; }; "placement": { "alias": "placement"; "required": false; }; "flexible": { "alias": "flexible"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "hasBackdrop": { "alias": "hasBackdrop"; "required": false; }; "format": { "alias": "format"; "required": false; }; "flexibleDateGranularity": { "alias": "flexibleDateGranularity"; "required": false; }; "value": { "alias": "value"; "required": false; }; }, { "blur": "blur"; "valueChange": "valueChange"; "openChange": "openChange"; "inputChange": "inputChange"; }, never, ["*"], true, never>;
76
+ static ɵcmp: i0.ɵɵComponentDeclaration<ThyPicker, "thy-picker", ["thyPicker"], { "isRange": { "alias": "isRange"; "required": false; }; "open": { "alias": "open"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "allowClear": { "alias": "allowClear"; "required": false; }; "autoFocus": { "alias": "autoFocus"; "required": false; }; "className": { "alias": "className"; "required": false; }; "size": { "alias": "size"; "required": false; }; "suffixIcon": { "alias": "suffixIcon"; "required": false; }; "placement": { "alias": "placement"; "required": false; }; "flexible": { "alias": "flexible"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "hasBackdrop": { "alias": "hasBackdrop"; "required": false; }; "separator": { "alias": "separator"; "required": false; }; "format": { "alias": "format"; "required": false; }; "flexibleDateGranularity": { "alias": "flexibleDateGranularity"; "required": false; }; "value": { "alias": "value"; "required": false; }; }, { "blur": "blur"; "valueChange": "valueChange"; "openChange": "openChange"; "inputChange": "inputChange"; }, never, ["*"], true, never>;
76
77
  static ngAcceptInputType_hasBackdrop: boolean | string | number;
77
78
  }
@@ -1,4 +1,5 @@
1
1
  import { PipeTransform } from '@angular/core';
2
+ import { ThyDatePickerConfigService } from './date-picker.service';
2
3
  import { AdvancedSelectableCell } from './inner-types';
3
4
  import { CompatibleDate, DateEntry, ThyDateGranularity, ThyDateRangeEntry } from './standard-types';
4
5
  import * as i0 from "@angular/core";
@@ -7,12 +8,15 @@ import * as i0 from "@angular/core";
7
8
  */
8
9
  export declare class ThyDatePickerFormatPipe implements PipeTransform {
9
10
  private dateHelper;
10
- transform(originalValue: CompatibleDate | DateEntry | ThyDateRangeEntry, formatStr?: string): string;
11
+ private datePickerConfigService;
12
+ transform(originalValue: CompatibleDate | DateEntry | ThyDateRangeEntry, formatStr?: string, separator?: string): string;
11
13
  static ɵfac: i0.ɵɵFactoryDeclaration<ThyDatePickerFormatPipe, never>;
12
14
  static ɵpipe: i0.ɵɵPipeDeclaration<ThyDatePickerFormatPipe, "thyDatePickerFormat", true>;
13
15
  }
14
16
  export declare class ThyQuarterPickerFormatPipe implements PipeTransform {
15
- transform(originalValue: CompatibleDate | DateEntry | ThyDateRangeEntry, formatStr?: string): string;
17
+ private datePickerConfigService;
18
+ constructor(datePickerConfigService: ThyDatePickerConfigService);
19
+ transform(originalValue: CompatibleDate | DateEntry | ThyDateRangeEntry, formatStr?: string, separator?: string): string;
16
20
  static ɵfac: i0.ɵɵFactoryDeclaration<ThyQuarterPickerFormatPipe, never>;
17
21
  static ɵpipe: i0.ɵɵPipeDeclaration<ThyQuarterPickerFormatPipe, "thyQuarterPickerFormat", true>;
18
22
  }
@@ -7,7 +7,7 @@ export declare function transformDateValue(value: CompatibleDate | CompatibleVal
7
7
  withTime?: boolean;
8
8
  flexibleDateGranularity?: ThyDateGranularity;
9
9
  };
10
- export declare function getFlexibleAdvancedReadableValue(tinyDates: TinyDate[], flexibleDateGranularity: ThyDateGranularity): string;
10
+ export declare function getFlexibleAdvancedReadableValue(tinyDates: TinyDate[], flexibleDateGranularity: ThyDateGranularity, separator: string): string;
11
11
  export declare function convertDate(date: Date | number | TinyDate): Date;
12
12
  export declare function hasValue(value: CompatibleValue): boolean;
13
13
  export declare function makeValue(value: CompatibleDate | null, isRange?: boolean): CompatibleValue;
@@ -1,4 +1,4 @@
1
- import { EventEmitter, OnInit } from '@angular/core';
1
+ import { EventEmitter, OnInit, Signal } from '@angular/core';
2
2
  import { ControlValueAccessor } from '@angular/forms';
3
3
  import { DateRangeItemInfo } from './date-range.class';
4
4
  import * as i0 from "@angular/core";
@@ -11,6 +11,7 @@ export declare class ThyDateRange implements OnInit, ControlValueAccessor {
11
11
  private thyPopover;
12
12
  private cdr;
13
13
  private locale;
14
+ private datePickerConfigService;
14
15
  /**
15
16
  * 自定义可选值列表项
16
17
  * @type DateRangeItemInfo[]
@@ -55,6 +56,11 @@ export declare class ThyDateRange implements OnInit, ControlValueAccessor {
55
56
  * 自定义日期禁用日期
56
57
  */
57
58
  thyDisabledDate: (d: Date) => boolean;
59
+ /**
60
+ * 区间分隔符,不传值默认为 "~"
61
+ */
62
+ thySeparator: string;
63
+ separator: Signal<string>;
58
64
  /**
59
65
  * 自定义日期选择日期回调
60
66
  * @type EventEmitter<Date[]>
@@ -79,7 +85,13 @@ export declare class ThyDateRange implements OnInit, ControlValueAccessor {
79
85
  next(): void;
80
86
  openOptionalDateRangesMenu(event: Event): void;
81
87
  static ɵfac: i0.ɵɵFactoryDeclaration<ThyDateRange, never>;
82
- static ɵcmp: i0.ɵɵComponentDeclaration<ThyDateRange, "thy-date-range", never, { "thyOptionalDateRanges": { "alias": "thyOptionalDateRanges"; "required": false; }; "thyHiddenMenu": { "alias": "thyHiddenMenu"; "required": false; }; "thyDisabledSwitch": { "alias": "thyDisabledSwitch"; "required": false; }; "thyCustomTextValue": { "alias": "thyCustomTextValue"; "required": false; }; "thyMinDate": { "alias": "thyMinDate"; "required": false; }; "thyMaxDate": { "alias": "thyMaxDate"; "required": false; }; "thyCustomKey": { "alias": "thyCustomKey"; "required": false; }; "thyPickerFormat": { "alias": "thyPickerFormat"; "required": false; }; "thyDisabledDate": { "alias": "thyDisabledDate"; "required": false; }; }, { "thyOnCalendarChange": "thyOnCalendarChange"; }, never, never, true, never>;
83
- static ngAcceptInputType_thyHiddenMenu: boolean | string | number;
84
- static ngAcceptInputType_thyDisabledSwitch: boolean | string | number;
88
+ static ɵcmp: i0.ɵɵComponentDeclaration<ThyDateRange, "thy-date-range", never, { "thyOptionalDateRanges": { "alias": "thyOptionalDateRanges"; "required": false; }; "thyHiddenMenu": { "alias": "thyHiddenMenu"; "required": false; }; "thyDisabledSwitch": { "alias": "thyDisabledSwitch"; "required": false; }; "thyCustomTextValue": { "alias": "thyCustomTextValue"; "required": false; }; "thyMinDate": { "alias": "thyMinDate"; "required": false; }; "thyMaxDate": { "alias": "thyMaxDate"; "required": false; }; "thyCustomKey": { "alias": "thyCustomKey"; "required": false; }; "thyPickerFormat": { "alias": "thyPickerFormat"; "required": false; }; "thyDisabledDate": { "alias": "thyDisabledDate"; "required": false; }; "thySeparator": { "alias": "thySeparator"; "required": false; }; }, { "thyOnCalendarChange": "thyOnCalendarChange"; }, never, never, true, never>;
89
+ static ngAcceptInputType_thyHiddenMenu: boolean | string | number /**
90
+ * 禁用左右切换时间段
91
+ * @default false
92
+ */;
93
+ static ngAcceptInputType_thyDisabledSwitch: boolean | string | number /**
94
+ * 禁用左右切换时间段
95
+ * @default false
96
+ */;
85
97
  }
@@ -95,7 +95,7 @@ export class ThyCalendarHeader {
95
95
  currentDate.getMonth() !== getMonth(new TinyDate().getTime()) || currentDate.getYear() !== getYear(new TinyDate().getTime());
96
96
  }
97
97
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyCalendarHeader, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
98
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ThyCalendarHeader, isStandalone: true, selector: "thy-calendar-header", inputs: { currentDate: "currentDate", operationRender: "operationRender" }, outputs: { yearChange: "yearChange", monthChange: "monthChange", dateRangeChange: "dateRangeChange" }, host: { properties: { "class.thy-calendar-full-header-container": "this.className" } }, ngImport: i0, template: "<div class=\"thy-calendar-full-header-left\">\n <thy-date-range\n class=\"select-date-range\"\n [ngModel]=\"date\"\n [thyHiddenMenu]=\"true\"\n [thyCustomKey]=\"'exception'\"\n [thyPickerFormat]=\"pickerFormat\"\n (ngModelChange)=\"onChangeRange($event)\"></thy-date-range>\n @if (isCurrent) {\n <button thyButton=\"outline-default-square\" thySize=\"md\" (click)=\"backToday()\">{{ locale().today }}</button>\n }\n</div>\n<div class=\"thy-calendar-full-header-right\">\n <ng-container *ngTemplateOutlet=\"$any(operationRender); context: { $implicit: operationRender }\">\n <span>{{ operationRender | json }}</span>\n </ng-container>\n</div>\n", dependencies: [{ kind: "component", type: ThyDateRange, selector: "thy-date-range", inputs: ["thyOptionalDateRanges", "thyHiddenMenu", "thyDisabledSwitch", "thyCustomTextValue", "thyMinDate", "thyMaxDate", "thyCustomKey", "thyPickerFormat", "thyDisabledDate"], outputs: ["thyOnCalendarChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ThyButton, selector: "thy-button,[thy-button],[thyButton]", inputs: ["thyButton", "thyType", "thyLoading", "thyLoadingText", "thySize", "thyIcon", "thyBlock"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: JsonPipe, name: "json" }] }); }
98
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ThyCalendarHeader, isStandalone: true, selector: "thy-calendar-header", inputs: { currentDate: "currentDate", operationRender: "operationRender" }, outputs: { yearChange: "yearChange", monthChange: "monthChange", dateRangeChange: "dateRangeChange" }, host: { properties: { "class.thy-calendar-full-header-container": "this.className" } }, ngImport: i0, template: "<div class=\"thy-calendar-full-header-left\">\n <thy-date-range\n class=\"select-date-range\"\n [ngModel]=\"date\"\n [thyHiddenMenu]=\"true\"\n [thyCustomKey]=\"'exception'\"\n [thyPickerFormat]=\"pickerFormat\"\n (ngModelChange)=\"onChangeRange($event)\"></thy-date-range>\n @if (isCurrent) {\n <button thyButton=\"outline-default-square\" thySize=\"md\" (click)=\"backToday()\">{{ locale().today }}</button>\n }\n</div>\n<div class=\"thy-calendar-full-header-right\">\n <ng-container *ngTemplateOutlet=\"$any(operationRender); context: { $implicit: operationRender }\">\n <span>{{ operationRender | json }}</span>\n </ng-container>\n</div>\n", dependencies: [{ kind: "component", type: ThyDateRange, selector: "thy-date-range", inputs: ["thyOptionalDateRanges", "thyHiddenMenu", "thyDisabledSwitch", "thyCustomTextValue", "thyMinDate", "thyMaxDate", "thyCustomKey", "thyPickerFormat", "thyDisabledDate", "thySeparator"], outputs: ["thyOnCalendarChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ThyButton, selector: "thy-button,[thy-button],[thyButton]", inputs: ["thyButton", "thyType", "thyLoading", "thyLoadingText", "thySize", "thyIcon", "thyBlock"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: JsonPipe, name: "json" }] }); }
99
99
  }
100
100
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyCalendarHeader, decorators: [{
101
101
  type: Component,
@@ -114,4 +114,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
114
114
  }], dateRangeChange: [{
115
115
  type: Output
116
116
  }] } });
117
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jYWxlbmRhci9jYWxlbmRhci1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vc3JjL2NhbGVuZGFyL2NhbGVuZGFyLWhlYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxVQUFVLEVBQWdCLFFBQVEsRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVuSCxPQUFPLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUF1QixNQUFNLGVBQWUsQ0FBQztBQUM1SSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzNELE9BQU8sRUFBRSxZQUFZLEVBQXFCLE1BQU0saUJBQWlCLENBQUM7OztBQUVsRTs7OztHQUlHO0FBT0gsTUFBTSxPQUFPLGlCQUFpQjtJQU45QjtRQU9ZLFFBQUcsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNoQyxlQUFVLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDdkMsV0FBTSxHQUE4QixZQUFZLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFWixjQUFTLEdBQUcsSUFBSSxDQUFDO1FBZTFFOztXQUVHO1FBQ2dC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dCB7IERhdGVSYW5nZUl0ZW1JbmZvLCBUaHlEYXRlUmFuZ2UgfSBmcm9tICduZ3gtdGV0aHlzL2RhdGUtcmFuZ2UnO1xuaW1wb3J0IHsgZW5kT2ZNb250aCwgRnVuY3Rpb25Qcm9wLCBnZXRNb250aCwgZ2V0VW5peFRpbWUsIGdldFllYXIsIHN0YXJ0T2ZNb250aCwgVGlueURhdGUgfSBmcm9tICduZ3gtdGV0aHlzL3V0aWwnO1xuXG5pbXBvcnQgeyBKc29uUGlwZSwgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBpbmplY3QsIElucHV0LCBPbkluaXQsIE91dHB1dCwgU2lnbmFsLCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBUaHlCdXR0b24gfSBmcm9tICduZ3gtdGV0aHlzL2J1dHRvbic7XG5pbXBvcnQgeyBEYXRlSGVscGVyU2VydmljZSB9IGZyb20gJ25neC10ZXRoeXMvZGF0ZS1waWNrZXInO1xuaW1wb3J0IHsgaW5qZWN0TG9jYWxlLCBUaHlDYWxlbmRhckxvY2FsZSB9IGZyb20gJ25neC10ZXRoeXMvaTE4bic7XG5cbi8qKlxuICog5pel5Y6G5aS06YOo5pON5L2c5qCP57uE5Lu2XG4gKiBAbmFtZSB0aHktY2FsZW5kYXItaGVhZGVyXG4gKiBAb3JkZXIgMjBcbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0aHktY2FsZW5kYXItaGVhZGVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY2FsZW5kYXItaGVhZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtUaHlEYXRlUmFuZ2UsIEZvcm1zTW9kdWxlLCBUaHlCdXR0b24sIE5nVGVtcGxhdGVPdXRsZXQsIEpzb25QaXBlXVxufSlcbmV4cG9ydCBjbGFzcyBUaHlDYWxlbmRhckhlYWRlciBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgcHJpdmF0ZSBjZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICAgIHByaXZhdGUgZGF0ZUhlbHBlciA9IGluamVjdChEYXRlSGVscGVyU2VydmljZSk7XG4gICAgcHJpdmF0ZSBsb2NhbGU6IFNpZ25hbDxUaHlDYWxlbmRhckxvY2FsZT4gPSBpbmplY3RMb2NhbGUoJ2NhbGVuZGFyJyk7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLnRoeS1jYWxlbmRhci1mdWxsLWhlYWRlci1jb250YWluZXInKSBjbGFzc05hbWUgPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICog5b2T5YmN6YCJ5Lit5pel5pyfXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgY3VycmVudERhdGUodmFsdWU6IFRpbnlEYXRlKSB7XG4gICAgICAgIHRoaXMuc2V0RGF0ZSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogXHToh6rlrprkuYnmuLLmn5Plj7Pkvqfmk43kvZzpoblcbiAgICAgKi9cbiAgICBASW5wdXQoKSBvcGVyYXRpb25SZW5kZXI6IEZ1bmN0aW9uUHJvcDxUZW1wbGF0ZVJlZjxhbnk+PjtcblxuICAgIC8qKlxuICAgICAqIOaXpeacn+mAieaLqeiMg+WbtO+8iOW5tO+8ieWPkeeUn+WPmOWMlueahOWbnuiwg1xuICAgICAqL1xuICAgIEBPdXRwdXQoKSByZWFkb25seSB5ZWFyQ2hhbmdlOiBFdmVudEVtaXR0ZXI8bnVtYmVyPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIC8qKlxuICAgICAqIOaXpeacn+mAieaLqeiMg+WbtO+8iOaciO+8ieWPkeeUn+WPmOWMlueahOWbnuiwg1xuICAgICAqL1xuICAgIEBPdXRwdXQoKSByZWFkb25seSBtb250aENoYW5nZTogRXZlbnRFbWl0dGVyPG51bWJlcj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICAvKipcbiAgICAgKiDml6XmnJ/pgInmi6nojIPlm7TvvIjml6XmnJ/vvInlj5HnlJ/lj5jljJbnmoTlm57osINcbiAgICAgKi9cbiAgICBAT3V0cHV0KCkgcmVhZG9ubHkgZGF0ZVJhbmdlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8RGF0ZVJhbmdlSXRlbUluZm8+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgcHVibGljIHBpY2tlckZvcm1hdCA9IHRoaXMubG9jYWxlKCkueWVhck1vbnRoRm9ybWF0O1xuXG4gICAgcHVibGljIGRhdGVSYW5nZXM6IERhdGVSYW5nZUl0ZW1JbmZvW10gPSBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIGtleTogJ21vbnRoJyxcbiAgICAgICAgICAgIHRleHQ6IHRoaXMuZGF0ZUhlbHBlci5mb3JtYXQobmV3IFRpbnlEYXRlKCkubmF0aXZlRGF0ZSwgdGhpcy5waWNrZXJGb3JtYXQpLFxuICAgICAgICAgICAgYmVnaW46IGdldFVuaXhUaW1lKHN0YXJ0T2ZNb250aChuZXcgVGlueURhdGUoKS5nZXRUaW1lKCkpKSxcbiAgICAgICAgICAgIGVuZDogZ2V0VW5peFRpbWUoZW5kT2ZNb250aChuZXcgVGlueURhdGUoKS5nZXRUaW1lKCkpKSxcbiAgICAgICAgICAgIHRpbWVzdGFtcDoge1xuICAgICAgICAgICAgICAgIGludGVydmFsOiAxLFxuICAgICAgICAgICAgICAgIHVuaXQ6ICdtb250aCdcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIF07XG5cbiAgICBwdWJsaWMgZGF0ZTogRGF0ZVJhbmdlSXRlbUluZm87XG5cbiAgICBwcml2YXRlIF9jdXJyZW50RGF0ZTogVGlueURhdGU7XG5cbiAgICBwdWJsaWMgaXNDdXJyZW50OiBib29sZWFuO1xuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gICAgb25DaGFuZ2VNb250aChtb250aDogRGF0ZVJhbmdlSXRlbUluZm8pIHtcbiAgICAgICAgY29uc3QgY3VycmVudE1vbnRoID0gVGlueURhdGUuZnJvbVVuaXhUaW1lKG1vbnRoLmVuZCkuZ2V0TW9udGgoKTtcbiAgICAgICAgdGhpcy5tb250aENoYW5nZS5lbWl0KGN1cnJlbnRNb250aCk7XG4gICAgfVxuXG4gICAgb25DaGFuZ2VZZWFyKHllYXI6IERhdGVSYW5nZUl0ZW1JbmZvKSB7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRZZWFyID0gVGlueURhdGUuZnJvbVVuaXhUaW1lKHllYXIuYmVnaW4pLmdldEZ1bGxZZWFyKCk7XG4gICAgICAgIHRoaXMueWVhckNoYW5nZS5lbWl0KGN1cnJlbnRZZWFyKTtcbiAgICB9XG5cbiAgICBvbkNoYW5nZVJhbmdlKGRhdGVSYW5nZTogRGF0ZVJhbmdlSXRlbUluZm8pIHtcbiAgICAgICAgdGhpcy5pc0N1cnJlbnREYXRlKHRoaXMuX2N1cnJlbnREYXRlKTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZVllYXIoZGF0ZVJhbmdlKTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZU1vbnRoKGRhdGVSYW5nZSk7XG4gICAgICAgIHRoaXMuZGF0ZVJhbmdlQ2hhbmdlLmVtaXQoZGF0ZVJhbmdlKTtcbiAgICB9XG5cbiAgICBiYWNrVG9kYXkoKSB7XG4gICAgICAgIHRoaXMuX2N1cnJlbnREYXRlID0gbmV3IFRpbnlEYXRlKCk7XG4gICAgICAgIHRoaXMuZGF0ZSA9IHsgLi4udGhpcy5kYXRlUmFuZ2VzWzBdIH07XG4gICAgICAgIHRoaXMub25DaGFuZ2VSYW5nZSh0aGlzLmRhdGUpO1xuICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgc2V0RGF0ZSh2YWx1ZTogVGlueURhdGUpIHtcbiAgICAgICAgdGhpcy5pc0N1cnJlbnREYXRlKHZhbHVlKTtcbiAgICAgICAgaWYgKHRoaXMuaXNDdXJyZW50KSB7XG4gICAgICAgICAgICB0aGlzLl9jdXJyZW50RGF0ZSA9IHZhbHVlO1xuICAgICAgICAgICAgY29uc3QgZGF0ZVJhbmdlID0ge1xuICAgICAgICAgICAgICAgIC4uLnRoaXMuZGF0ZVJhbmdlc1swXSxcbiAgICAgICAgICAgICAgICBrZXk6ICdleGNlcHRpb24nLFxuICAgICAgICAgICAgICAgIHRleHQ6IHRoaXMuX2N1cnJlbnREYXRlLmZvcm1hdCh0aGlzLnBpY2tlckZvcm1hdCksXG4gICAgICAgICAgICAgICAgYmVnaW46IGdldFVuaXhUaW1lKHN0YXJ0T2ZNb250aCh0aGlzLl9jdXJyZW50RGF0ZS5nZXRUaW1lKCkpKSxcbiAgICAgICAgICAgICAgICBlbmQ6IGdldFVuaXhUaW1lKGVuZE9mTW9udGgodGhpcy5fY3VycmVudERhdGUuZ2V0VGltZSgpKSlcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICB0aGlzLmRhdGUgPSBkYXRlUmFuZ2U7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9jdXJyZW50RGF0ZSA9IG5ldyBUaW55RGF0ZSgpO1xuICAgICAgICAgICAgdGhpcy5kYXRlID0geyAuLi50aGlzLmRhdGVSYW5nZXNbMF0gfTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGlzQ3VycmVudERhdGUoY3VycmVudERhdGU6IFRpbnlEYXRlKSB7XG4gICAgICAgIHRoaXMuaXNDdXJyZW50ID1cbiAgICAgICAgICAgIGN1cnJlbnREYXRlLmdldE1vbnRoKCkgIT09IGdldE1vbnRoKG5ldyBUaW55RGF0ZSgpLmdldFRpbWUoKSkgfHwgY3VycmVudERhdGUuZ2V0WWVhcigpICE9PSBnZXRZZWFyKG5ldyBUaW55RGF0ZSgpLmdldFRpbWUoKSk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInRoeS1jYWxlbmRhci1mdWxsLWhlYWRlci1sZWZ0XCI+XG4gIDx0aHktZGF0ZS1yYW5nZVxuICAgIGNsYXNzPVwic2VsZWN0LWRhdGUtcmFuZ2VcIlxuICAgIFtuZ01vZGVsXT1cImRhdGVcIlxuICAgIFt0aHlIaWRkZW5NZW51XT1cInRydWVcIlxuICAgIFt0aHlDdXN0b21LZXldPVwiJ2V4Y2VwdGlvbidcIlxuICAgIFt0aHlQaWNrZXJGb3JtYXRdPVwicGlja2VyRm9ybWF0XCJcbiAgICAobmdNb2RlbENoYW5nZSk9XCJvbkNoYW5nZVJhbmdlKCRldmVudClcIj48L3RoeS1kYXRlLXJhbmdlPlxuICBAaWYgKGlzQ3VycmVudCkge1xuICAgIDxidXR0b24gdGh5QnV0dG9uPVwib3V0bGluZS1kZWZhdWx0LXNxdWFyZVwiIHRoeVNpemU9XCJtZFwiIChjbGljayk9XCJiYWNrVG9kYXkoKVwiPnt7IGxvY2FsZSgpLnRvZGF5IH19PC9idXR0b24+XG4gIH1cbjwvZGl2PlxuPGRpdiBjbGFzcz1cInRoeS1jYWxlbmRhci1mdWxsLWhlYWRlci1yaWdodFwiPlxuICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiJGFueShvcGVyYXRpb25SZW5kZXIpOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogb3BlcmF0aW9uUmVuZGVyIH1cIj5cbiAgICA8c3Bhbj57eyBvcGVyYXRpb25SZW5kZXIgfCBqc29uIH19PC9zcGFuPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuIl19
117
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItaGVhZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jYWxlbmRhci9jYWxlbmRhci1oZWFkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vc3JjL2NhbGVuZGFyL2NhbGVuZGFyLWhlYWRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxVQUFVLEVBQWdCLFFBQVEsRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVuSCxPQUFPLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUF1QixNQUFNLGVBQWUsQ0FBQztBQUM1SSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzNELE9BQU8sRUFBRSxZQUFZLEVBQXFCLE1BQU0saUJBQWlCLENBQUM7OztBQUVsRTs7OztHQUlHO0FBT0gsTUFBTSxPQUFPLGlCQUFpQjtJQU45QjtRQU9ZLFFBQUcsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUNoQyxlQUFVLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDdkMsV0FBTSxHQUE4QixZQUFZLENBQUMsVUFBVSxDQUFDLENBQUM7UUFFWixjQUFTLEdBQUcsSUFBSSxDQUFDO1FBZTFFOztXQUVHO1FBQ2dC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dCB7IERhdGVSYW5nZUl0ZW1JbmZvLCBUaHlEYXRlUmFuZ2UgfSBmcm9tICduZ3gtdGV0aHlzL2RhdGUtcmFuZ2UnO1xuaW1wb3J0IHsgZW5kT2ZNb250aCwgRnVuY3Rpb25Qcm9wLCBnZXRNb250aCwgZ2V0VW5peFRpbWUsIGdldFllYXIsIHN0YXJ0T2ZNb250aCwgVGlueURhdGUgfSBmcm9tICduZ3gtdGV0aHlzL3V0aWwnO1xuXG5pbXBvcnQgeyBKc29uUGlwZSwgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBpbmplY3QsIElucHV0LCBPbkluaXQsIE91dHB1dCwgU2lnbmFsLCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBUaHlCdXR0b24gfSBmcm9tICduZ3gtdGV0aHlzL2J1dHRvbic7XG5pbXBvcnQgeyBEYXRlSGVscGVyU2VydmljZSB9IGZyb20gJ25neC10ZXRoeXMvZGF0ZS1waWNrZXInO1xuaW1wb3J0IHsgaW5qZWN0TG9jYWxlLCBUaHlDYWxlbmRhckxvY2FsZSB9IGZyb20gJ25neC10ZXRoeXMvaTE4bic7XG5cbi8qKlxuICog5pel5Y6G5aS06YOo5pON5L2c5qCP57uE5Lu2XG4gKiBAbmFtZSB0aHktY2FsZW5kYXItaGVhZGVyXG4gKiBAb3JkZXIgMjBcbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd0aHktY2FsZW5kYXItaGVhZGVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY2FsZW5kYXItaGVhZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtUaHlEYXRlUmFuZ2UsIEZvcm1zTW9kdWxlLCBUaHlCdXR0b24sIE5nVGVtcGxhdGVPdXRsZXQsIEpzb25QaXBlXVxufSlcbmV4cG9ydCBjbGFzcyBUaHlDYWxlbmRhckhlYWRlciBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgcHJpdmF0ZSBjZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICAgIHByaXZhdGUgZGF0ZUhlbHBlciA9IGluamVjdChEYXRlSGVscGVyU2VydmljZSk7XG4gICAgcHJpdmF0ZSBsb2NhbGU6IFNpZ25hbDxUaHlDYWxlbmRhckxvY2FsZT4gPSBpbmplY3RMb2NhbGUoJ2NhbGVuZGFyJyk7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLnRoeS1jYWxlbmRhci1mdWxsLWhlYWRlci1jb250YWluZXInKSBjbGFzc05hbWUgPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICog5b2T5YmN6YCJ5Lit5pel5pyfXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgY3VycmVudERhdGUodmFsdWU6IFRpbnlEYXRlKSB7XG4gICAgICAgIHRoaXMuc2V0RGF0ZSh2YWx1ZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogXHToh6rlrprkuYnmuLLmn5Plj7Pkvqfmk43kvZzpoblcbiAgICAgKi9cbiAgICBASW5wdXQoKSBvcGVyYXRpb25SZW5kZXI6IEZ1bmN0aW9uUHJvcDxUZW1wbGF0ZVJlZjxhbnk+PjtcblxuICAgIC8qKlxuICAgICAqIOaXpeacn+mAieaLqeiMg+WbtO+8iOW5tO+8ieWPkeeUn+WPmOWMlueahOWbnuiwg1xuICAgICAqL1xuICAgIEBPdXRwdXQoKSByZWFkb25seSB5ZWFyQ2hhbmdlOiBFdmVudEVtaXR0ZXI8bnVtYmVyPiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAgIC8qKlxuICAgICAqIOaXpeacn+mAieaLqeiMg+WbtO+8iOaciO+8ieWPkeeUn+WPmOWMlueahOWbnuiwg1xuICAgICAqL1xuICAgIEBPdXRwdXQoKSByZWFkb25seSBtb250aENoYW5nZTogRXZlbnRFbWl0dGVyPG51bWJlcj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICAvKipcbiAgICAgKiDml6XmnJ/pgInmi6nojIPlm7TvvIjml6XmnJ/vvInlj5HnlJ/lj5jljJbnmoTlm57osINcbiAgICAgKi9cbiAgICBAT3V0cHV0KCkgcmVhZG9ubHkgZGF0ZVJhbmdlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8RGF0ZVJhbmdlSXRlbUluZm8+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgcHVibGljIHBpY2tlckZvcm1hdCA9IHRoaXMubG9jYWxlKCkueWVhck1vbnRoRm9ybWF0O1xuXG4gICAgcHVibGljIGRhdGVSYW5nZXM6IERhdGVSYW5nZUl0ZW1JbmZvW10gPSBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIGtleTogJ21vbnRoJyxcbiAgICAgICAgICAgIHRleHQ6IHRoaXMuZGF0ZUhlbHBlci5mb3JtYXQobmV3IFRpbnlEYXRlKCkubmF0aXZlRGF0ZSwgdGhpcy5waWNrZXJGb3JtYXQpLFxuICAgICAgICAgICAgYmVnaW46IGdldFVuaXhUaW1lKHN0YXJ0T2ZNb250aChuZXcgVGlueURhdGUoKS5nZXRUaW1lKCkpKSxcbiAgICAgICAgICAgIGVuZDogZ2V0VW5peFRpbWUoZW5kT2ZNb250aChuZXcgVGlueURhdGUoKS5nZXRUaW1lKCkpKSxcbiAgICAgICAgICAgIHRpbWVzdGFtcDoge1xuICAgICAgICAgICAgICAgIGludGVydmFsOiAxLFxuICAgICAgICAgICAgICAgIHVuaXQ6ICdtb250aCdcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIF07XG5cbiAgICBwdWJsaWMgZGF0ZTogRGF0ZVJhbmdlSXRlbUluZm87XG5cbiAgICBwcml2YXRlIF9jdXJyZW50RGF0ZTogVGlueURhdGU7XG5cbiAgICBwdWJsaWMgaXNDdXJyZW50OiBib29sZWFuO1xuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7fVxuXG4gICAgb25DaGFuZ2VNb250aChtb250aDogRGF0ZVJhbmdlSXRlbUluZm8pIHtcbiAgICAgICAgY29uc3QgY3VycmVudE1vbnRoID0gVGlueURhdGUuZnJvbVVuaXhUaW1lKG1vbnRoLmVuZCkuZ2V0TW9udGgoKTtcbiAgICAgICAgdGhpcy5tb250aENoYW5nZS5lbWl0KGN1cnJlbnRNb250aCk7XG4gICAgfVxuXG4gICAgb25DaGFuZ2VZZWFyKHllYXI6IERhdGVSYW5nZUl0ZW1JbmZvKSB7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRZZWFyID0gVGlueURhdGUuZnJvbVVuaXhUaW1lKHllYXIuYmVnaW4pLmdldEZ1bGxZZWFyKCk7XG4gICAgICAgIHRoaXMueWVhckNoYW5nZS5lbWl0KGN1cnJlbnRZZWFyKTtcbiAgICB9XG5cbiAgICBvbkNoYW5nZVJhbmdlKGRhdGVSYW5nZTogRGF0ZVJhbmdlSXRlbUluZm8pIHtcbiAgICAgICAgdGhpcy5pc0N1cnJlbnREYXRlKHRoaXMuX2N1cnJlbnREYXRlKTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZVllYXIoZGF0ZVJhbmdlKTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZU1vbnRoKGRhdGVSYW5nZSk7XG4gICAgICAgIHRoaXMuZGF0ZVJhbmdlQ2hhbmdlLmVtaXQoZGF0ZVJhbmdlKTtcbiAgICB9XG5cbiAgICBiYWNrVG9kYXkoKSB7XG4gICAgICAgIHRoaXMuX2N1cnJlbnREYXRlID0gbmV3IFRpbnlEYXRlKCk7XG4gICAgICAgIHRoaXMuZGF0ZSA9IHsgLi4udGhpcy5kYXRlUmFuZ2VzWzBdIH07XG4gICAgICAgIHRoaXMub25DaGFuZ2VSYW5nZSh0aGlzLmRhdGUpO1xuICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgc2V0RGF0ZSh2YWx1ZTogVGlueURhdGUpIHtcbiAgICAgICAgdGhpcy5pc0N1cnJlbnREYXRlKHZhbHVlKTtcbiAgICAgICAgaWYgKHRoaXMuaXNDdXJyZW50KSB7XG4gICAgICAgICAgICB0aGlzLl9jdXJyZW50RGF0ZSA9IHZhbHVlO1xuICAgICAgICAgICAgY29uc3QgZGF0ZVJhbmdlID0ge1xuICAgICAgICAgICAgICAgIC4uLnRoaXMuZGF0ZVJhbmdlc1swXSxcbiAgICAgICAgICAgICAgICBrZXk6ICdleGNlcHRpb24nLFxuICAgICAgICAgICAgICAgIHRleHQ6IHRoaXMuX2N1cnJlbnREYXRlLmZvcm1hdCh0aGlzLnBpY2tlckZvcm1hdCksXG4gICAgICAgICAgICAgICAgYmVnaW46IGdldFVuaXhUaW1lKHN0YXJ0T2ZNb250aCh0aGlzLl9jdXJyZW50RGF0ZS5nZXRUaW1lKCkpKSxcbiAgICAgICAgICAgICAgICBlbmQ6IGdldFVuaXhUaW1lKGVuZE9mTW9udGgodGhpcy5fY3VycmVudERhdGUuZ2V0VGltZSgpKSlcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICB0aGlzLmRhdGUgPSBkYXRlUmFuZ2U7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9jdXJyZW50RGF0ZSA9IG5ldyBUaW55RGF0ZSgpO1xuICAgICAgICAgICAgdGhpcy5kYXRlID0geyAuLi50aGlzLmRhdGVSYW5nZXNbMF0gfTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGlzQ3VycmVudERhdGUoY3VycmVudERhdGU6IFRpbnlEYXRlKSB7XG4gICAgICAgIHRoaXMuaXNDdXJyZW50ID1cbiAgICAgICAgICAgIGN1cnJlbnREYXRlLmdldE1vbnRoKCkgIT09IGdldE1vbnRoKG5ldyBUaW55RGF0ZSgpLmdldFRpbWUoKSkgfHwgY3VycmVudERhdGUuZ2V0WWVhcigpICE9PSBnZXRZZWFyKG5ldyBUaW55RGF0ZSgpLmdldFRpbWUoKSk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInRoeS1jYWxlbmRhci1mdWxsLWhlYWRlci1sZWZ0XCI+XG4gIDx0aHktZGF0ZS1yYW5nZVxuICAgIGNsYXNzPVwic2VsZWN0LWRhdGUtcmFuZ2VcIlxuICAgIFtuZ01vZGVsXT1cImRhdGVcIlxuICAgIFt0aHlIaWRkZW5NZW51XT1cInRydWVcIlxuICAgIFt0aHlDdXN0b21LZXldPVwiJ2V4Y2VwdGlvbidcIlxuICAgIFt0aHlQaWNrZXJGb3JtYXRdPVwicGlja2VyRm9ybWF0XCJcbiAgICAobmdNb2RlbENoYW5nZSk9XCJvbkNoYW5nZVJhbmdlKCRldmVudClcIj48L3RoeS1kYXRlLXJhbmdlPlxuICBAaWYgKGlzQ3VycmVudCkge1xuICAgIDxidXR0b24gdGh5QnV0dG9uPVwib3V0bGluZS1kZWZhdWx0LXNxdWFyZVwiIHRoeVNpemU9XCJtZFwiIChjbGljayk9XCJiYWNrVG9kYXkoKVwiPnt7IGxvY2FsZSgpLnRvZGF5IH19PC9idXR0b24+XG4gIH1cbjwvZGl2PlxuPGRpdiBjbGFzcz1cInRoeS1jYWxlbmRhci1mdWxsLWhlYWRlci1yaWdodFwiPlxuICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiJGFueShvcGVyYXRpb25SZW5kZXIpOyBjb250ZXh0OiB7ICRpbXBsaWNpdDogb3BlcmF0aW9uUmVuZGVyIH1cIj5cbiAgICA8c3Bhbj57eyBvcGVyYXRpb25SZW5kZXIgfCBqc29uIH19PC9zcGFuPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuIl19
@@ -1,11 +1,11 @@
1
1
  import { TabIndexDisabledControlValueAccessorMixin } from 'ngx-tethys/core';
2
2
  import { coerceBooleanProperty } from 'ngx-tethys/util';
3
3
  import { Subject } from 'rxjs';
4
- import { ChangeDetectorRef, Directive, EventEmitter, inject, Input, Output, ViewChild } from '@angular/core';
4
+ import { ChangeDetectorRef, computed, Directive, EventEmitter, inject, Input, Output, ViewChild } from '@angular/core';
5
+ import { injectLocale } from 'ngx-tethys/i18n';
6
+ import { ThyDatePickerConfigService } from './date-picker.service';
5
7
  import { ThyPicker } from './picker.component';
6
8
  import { makeValue, setValueByTimestampPrecision, transformDateValue } from './picker.util';
7
- import { ThyDatePickerConfigService } from './date-picker.service';
8
- import { injectLocale } from 'ngx-tethys/i18n';
9
9
  import * as i0 from "@angular/core";
10
10
  /**
11
11
  * @private
@@ -81,6 +81,13 @@ export class AbstractPickerComponent extends TabIndexDisabledControlValueAccesso
81
81
  * @default seconds 10位
82
82
  */
83
83
  this.thyTimestampPrecision = this.datePickerConfigService.config?.timestampPrecision || 'seconds';
84
+ /**
85
+ * 区间分隔符,不传值默认为 "~"
86
+ */
87
+ this.thySeparator = this.datePickerConfigService.config?.separator;
88
+ this.separator = computed(() => {
89
+ return ` ${this.thySeparator?.trim()} `;
90
+ });
84
91
  /**
85
92
  * @description.en-us only for range picker, Whether to automatically take the beginning and ending unixTime of the day
86
93
  * @description.zh-cn 是否取值开始日期的00:00以及截止日期的24:00
@@ -254,7 +261,7 @@ export class AbstractPickerComponent extends TabIndexDisabledControlValueAccesso
254
261
  return setValueByTimestampPrecision(value, this.isRange, this.thyTimestampPrecision);
255
262
  }
256
263
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AbstractPickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
257
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.2.13", type: AbstractPickerComponent, inputs: { thyMode: "thyMode", thyAllowClear: ["thyAllowClear", "thyAllowClear", coerceBooleanProperty], thyAutoFocus: ["thyAutoFocus", "thyAutoFocus", coerceBooleanProperty], thyOpen: ["thyOpen", "thyOpen", coerceBooleanProperty], thyDisabledDate: "thyDisabledDate", thyMinDate: "thyMinDate", thyMaxDate: "thyMaxDate", thyPlaceHolder: "thyPlaceHolder", thyReadonly: ["thyReadonly", "thyReadonly", coerceBooleanProperty], thyOriginClassName: "thyOriginClassName", thyPanelClassName: "thyPanelClassName", thySize: "thySize", thyTimestampPrecision: "thyTimestampPrecision", thyFormat: "thyFormat", thyAutoStartAndEnd: ["thyAutoStartAndEnd", "thyAutoStartAndEnd", coerceBooleanProperty], thyDefaultPickerValue: "thyDefaultPickerValue", thySuffixIcon: "thySuffixIcon", thyShowShortcut: ["thyShowShortcut", "thyShowShortcut", coerceBooleanProperty], thyShortcutPosition: "thyShortcutPosition", thyShortcutPresets: "thyShortcutPresets", thyDisabled: ["thyDisabled", "thyDisabled", coerceBooleanProperty] }, outputs: { thyDateChange: "thyDateChange", thyOpenChange: "thyOpenChange" }, viewQueries: [{ propertyName: "picker", first: true, predicate: ThyPicker, descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0 }); }
264
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.2.13", type: AbstractPickerComponent, inputs: { thyMode: "thyMode", thyAllowClear: ["thyAllowClear", "thyAllowClear", coerceBooleanProperty], thyAutoFocus: ["thyAutoFocus", "thyAutoFocus", coerceBooleanProperty], thyOpen: ["thyOpen", "thyOpen", coerceBooleanProperty], thyDisabledDate: "thyDisabledDate", thyMinDate: "thyMinDate", thyMaxDate: "thyMaxDate", thyPlaceHolder: "thyPlaceHolder", thyReadonly: ["thyReadonly", "thyReadonly", coerceBooleanProperty], thyOriginClassName: "thyOriginClassName", thyPanelClassName: "thyPanelClassName", thySize: "thySize", thyTimestampPrecision: "thyTimestampPrecision", thyFormat: "thyFormat", thySeparator: "thySeparator", thyAutoStartAndEnd: ["thyAutoStartAndEnd", "thyAutoStartAndEnd", coerceBooleanProperty], thyDefaultPickerValue: "thyDefaultPickerValue", thySuffixIcon: "thySuffixIcon", thyShowShortcut: ["thyShowShortcut", "thyShowShortcut", coerceBooleanProperty], thyShortcutPosition: "thyShortcutPosition", thyShortcutPresets: "thyShortcutPresets", thyDisabled: ["thyDisabled", "thyDisabled", coerceBooleanProperty] }, outputs: { thyDateChange: "thyDateChange", thyOpenChange: "thyOpenChange" }, viewQueries: [{ propertyName: "picker", first: true, predicate: ThyPicker, descendants: true, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0 }); }
258
265
  }
259
266
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AbstractPickerComponent, decorators: [{
260
267
  type: Directive
@@ -290,6 +297,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
290
297
  type: Input
291
298
  }], thyFormat: [{
292
299
  type: Input
300
+ }], thySeparator: [{
301
+ type: Input
293
302
  }], thyAutoStartAndEnd: [{
294
303
  type: Input,
295
304
  args: [{ transform: coerceBooleanProperty }]
@@ -315,4 +324,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
315
324
  type: Input,
316
325
  args: [{ transform: coerceBooleanProperty }]
317
326
  }] } });
318
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kYXRlLXBpY2tlci9hYnN0cmFjdC1waWNrZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx5Q0FBeUMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzVFLE9BQU8sRUFBRSxxQkFBcUIsRUFBWSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFL0IsT0FBTyxFQUNILGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBSUwsTUFBTSxFQUdOLFNBQVMsRUFDWixNQUFNLGVBQWUsQ0FBQztBQUl2QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSw0QkFBNEIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVk1RixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVuRSxPQUFPLEVBQUUsWUFBWSxFQUF1QixNQUFNLGlCQUFpQixDQUFDOztBQUVwRTs7R0FFRztBQUVILE1BQU0sT0FBZ0IsdUJBQ2xCLFNBQVEseUNBQXlDO0lBYWpEOzs7T0FHRztJQUNILElBQWEsT0FBTyxDQUFDLEtBQW1CO1FBQ3BDLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxJQUFJLE1BQU0sQ0FBQztJQUN0QyxDQUFDO0lBRUQsSUFBSSxPQUFPO1FBQ1AsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQzNCLENBQUM7SUE2RkQ7OztPQUdHO0lBQ0gsSUFBYSxtQkFBbUIsQ0FBQyxRQUE2QjtRQUMxRCxJQUFJLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNiLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxRQUFR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O3NCQUFuRCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLHFCQUFxQixFQUFFO2dCQUVsQyxlQUFlO3NCQUF2QixLQUFLO2dCQU1HLFVBQVU7c0JBQWxCLEtBQUs7Z0JBTUcsVUFBVTtzQkFBbEIsS0FBSztnQkFNRyxjQUFjO3NCQUF0QixLQUFLO2dCQU11QyxXQUFXO3NCQUF2RCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLHFCQUFxQixFQUFFO2dCQUtsQyxrQkFBa0I7c0JBQTFCLEtBQUs7Z0JBS0csaUJBQWlCO3NCQUF6QixLQUFLO2dCQU1HLE9BQU87c0JBQWYsS0FBSztnQkFNRyxxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBTUcsU0FBUztzQkFBakIsS0FBSztnQkFPdUMsa0JBQWtCO3NCQUE5RCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLHFCQUFxQixFQUFFO2dCQU1sQyxxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBS0csYUFBYTtzQkFBckIsS0FBSztnQkFNdUMsZUFBZTtzQkFBM0QsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxxQkFBcUIsRUFBRTtnQkFNOUIsbUJBQW1CO3NCQUEvQixLQUFLO2dCQVVPLGtCQUFrQjtzQkFBOUIsS0FBSztnQkFPYSxhQUFhO3NCQUEvQixNQUFNO2dCQUVZLGFBQWE7c0JBQS9CLE1BQU07Z0JBRXdDLE1BQU07c0JBQXBELFNBQVM7dUJBQUMsU0FBUyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFPbEMsV0FBVztzQkFEZCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLHFCQUFxQixFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGFiSW5kZXhEaXNhYmxlZENvbnRyb2xWYWx1ZUFjY2Vzc29yTWl4aW4gfSBmcm9tICduZ3gtdGV0aHlzL2NvcmUnO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5LCBUaW55RGF0ZSB9IGZyb20gJ25neC10ZXRoeXMvdXRpbCc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgRGlyZWN0aXZlLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBpbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgT3V0cHV0LFxuICAgIFNpZ25hbCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBDb21wYXRpYmxlVmFsdWUsIFJhbmdlQWR2YW5jZWRWYWx1ZSB9IGZyb20gJy4vaW5uZXItdHlwZXMnO1xuaW1wb3J0IHsgVGh5UGlja2VyIH0gZnJvbSAnLi9waWNrZXIuY29tcG9uZW50JztcbmltcG9ydCB7IG1ha2VWYWx1ZSwgc2V0VmFsdWVCeVRpbWVzdGFtcFByZWNpc2lvbiwgdHJhbnNmb3JtRGF0ZVZhbHVlIH0gZnJvbSAnLi9waWNrZXIudXRpbCc7XG5pbXBvcnQge1xuICAgIENvbXBhdGlibGVEYXRlLFxuICAgIERhdGVFbnRyeSxcbiAgICBEaXNhYmxlZERhdGVGbixcbiAgICBUaHlEYXRlUmFuZ2VFbnRyeSxcbiAgICBUaHlQYW5lbE1vZGUsXG4gICAgVGh5U2hvcnRjdXRQb3NpdGlvbixcbiAgICBDb21wYXRpYmxlUHJlc2V0cyxcbiAgICBUaHlEYXRlR3JhbnVsYXJpdHksXG4gICAgVGh5RGF0ZUNoYW5nZUV2ZW50XG59IGZyb20gJy4vc3RhbmRhcmQtdHlwZXMnO1xuaW1wb3J0IHsgVGh5RGF0ZVBpY2tlckNvbmZpZ1NlcnZpY2UgfSBmcm9tICcuL2RhdGUtcGlja2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2FmZUFueSB9IGZyb20gJ25neC10ZXRoeXMvdHlwZXMnO1xuaW1wb3J0IHsgaW5qZWN0TG9jYWxlLCBUaHlEYXRlUGlja2VyTG9jYWxlIH0gZnJvbSAnbmd4LXRldGh5cy9pMThuJztcblxuLyoqXG4gKiBAcHJpdmF0ZVxuICovXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdFBpY2tlckNvbXBvbmVudFxuICAgIGV4dGVuZHMgVGFiSW5kZXhEaXNhYmxlZENvbnRyb2xWYWx1ZUFjY2Vzc29yTWl4aW5cbiAgICBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIENvbnRyb2xWYWx1ZUFjY2Vzc29yXG57XG4gICAgY2RyID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcblxuICAgIGxvY2FsZTogU2lnbmFsPFRoeURhdGVQaWNrZXJMb2NhbGU+ID0gaW5qZWN0TG9jYWxlKCdkYXRlUGlja2VyJyk7XG5cbiAgICB0aHlWYWx1ZTogQ29tcGF0aWJsZVZhbHVlIHwgbnVsbDtcblxuICAgIF9wYW5lbE1vZGU6IFRoeVBhbmVsTW9kZSA9ICdkYXRlJztcblxuICAgIHByaXZhdGUgZGF0ZVBpY2tlckNvbmZpZ1NlcnZpY2UgPSBpbmplY3QoVGh5RGF0ZVBpY2tlckNvbmZpZ1NlcnZpY2UpO1xuXG4gICAgLyoqXG4gICAgICog5qih5byPXG4gICAgICogQHR5cGUgZGVjYWRlIHwgeWVhciB8IG1vbnRoIHwgZGF0ZSB8IHdlZWsgfCBmbGV4aWJsZVxuICAgICAqL1xuICAgIEBJbnB1dCgpIHNldCB0aHlNb2RlKHZhbHVlOiBUaHlQYW5lbE1vZGUpIHtcbiAgICAgICAgdGhpcy5fcGFuZWxNb2RlID0gdmFsdWUgPz8gJ2RhdGUnO1xuICAgIH1cblxuICAgIGdldCB0aHlNb2RlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fcGFuZWxNb2RlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOaYr+WQpuaYvuekuua4hemZpOaMiemSrlxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogY29lcmNlQm9vbGVhblByb3BlcnR5IH0pIHRoeUFsbG93Q2xlYXIgPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICog5piv5ZCm6Ieq5Yqo6I635Y+W54Sm54K5XG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9KSB0aHlBdXRvRm9jdXMgPSBmYWxzZTtcblxuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogY29lcmNlQm9vbGVhblByb3BlcnR5IH0pIHRoeU9wZW46IGJvb2xlYW47XG5cbiAgICBASW5wdXQoKSB0aHlEaXNhYmxlZERhdGU6IERpc2FibGVkRGF0ZUZuO1xuXG4gICAgLyoqXG4gICAgICog5pyA5bCP5YC8XG4gICAgICogQHR5cGUgRGF0ZSB8IG51bWJlclxuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeU1pbkRhdGU6IERhdGUgfCBudW1iZXI7XG5cbiAgICAvKipcbiAgICAgKiDmnIDlpKflgLxcbiAgICAgKiBAdHlwZSBEYXRlIHwgbnVtYmVyXG4gICAgICovXG4gICAgQElucHV0KCkgdGh5TWF4RGF0ZTogRGF0ZSB8IG51bWJlcjtcblxuICAgIC8qKlxuICAgICAqIOi+k+WFpeahhuaPkOekuuaWh+Wtl1xuICAgICAqIEB0eXBlIHN0cmluZyB8IHN0cmluZ1tdXG4gICAgICovXG4gICAgQElucHV0KCkgdGh5UGxhY2VIb2xkZXI6IHN0cmluZyB8IHN0cmluZ1tdO1xuXG4gICAgLyoqXG4gICAgICog5piv5ZCm5Y+q6K+7XG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9KSB0aHlSZWFkb25seTogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIOmAieaLqeWZqCBjbGFzc05hbWVcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlPcmlnaW5DbGFzc05hbWU6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIOW8ueWHuuWxgiBjbGFzc05hbWVcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlQYW5lbENsYXNzTmFtZTogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICog6L6T5YWl5qGG55qE5aSn5bCPXG4gICAgICogQHR5cGUgeHMgfCBzbSB8IG1kIHwgbGcgfCBkZWZhdWx0XG4gICAgICovXG4gICAgQElucHV0KCkgdGh5U2l6ZTogJ2xnJyB8ICdtZCcgfCAnc20nIHwgJ3hzJyB8ICdkZWZhdWx0JyA9ICdkZWZhdWx0JztcblxuICAgIC8qKlxuICAgICAqIOiuvue9ruaXtumXtOaIs+eyvuW6plxuICAgICAqIEBkZWZhdWx0IHNlY29uZHMgMTDkvY1cbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlUaW1lc3RhbXBQcmVjaXNpb246ICdzZWNvbmRzJyB8ICdtaWxsaXNlY29uZHMnID0gdGhpcy5kYXRlUGlja2VyQ29uZmlnU2VydmljZS5jb25maWc/LnRpbWVzdGFtcFByZWNpc2lvbiB8fCAnc2Vjb25kcyc7XG5cbiAgICAvKipcbiAgICAgKiDlsZXnpLrnmoTml6XmnJ/moLzlvI9cbiAgICAgKiBAZGVmYXVsdCB5eXl5LU1NLWRkXG4gICAgICovXG4gICAgQElucHV0KCkgdGh5Rm9ybWF0OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24uZW4tdXMgb25seSBmb3IgcmFuZ2UgcGlja2VyLCBXaGV0aGVyIHRvIGF1dG9tYXRpY2FsbHkgdGFrZSB0aGUgYmVnaW5uaW5nIGFuZCBlbmRpbmcgdW5peFRpbWUgb2YgdGhlIGRheVxuICAgICAqIEBkZXNjcmlwdGlvbi56aC1jbiDmmK/lkKblj5blgLzlvIDlp4vml6XmnJ/nmoQwMDowMOS7peWPiuaIquatouaXpeacn+eahDI0OjAwXG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9KSB0aHlBdXRvU3RhcnRBbmRFbmQgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIOmdouadv+m7mOiupOaXpeacn1xuICAgICAqIEB0eXBlIENvbXBhdGlibGVEYXRlIHwgbnVtYmVyIHwgbnVsbFxuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeURlZmF1bHRQaWNrZXJWYWx1ZTogQ29tcGF0aWJsZURhdGUgfCBudW1iZXIgfCBudWxsID0gbnVsbDtcblxuICAgIC8qKlxuICAgICAqIOiHquWumuS5ieeahOWQjue8gOWbvuagh1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeVN1ZmZpeEljb24gPSAnY2FsZW5kYXInO1xuXG4gICAgLyoqXG4gICAgICog5piv5ZCm5bGV56S65b+r5o236YCJ6aG56Z2i5p2/XG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9KSB0aHlTaG93U2hvcnRjdXQ6IGJvb2xlYW47XG5cbiAgICAvKipcbiAgICAgKiDlv6vmjbfpgInpobnpnaLmnb/nmoTmmL7npLrkvY3nva5cbiAgICAgKiBAdHlwZSBsZWZ0IHwgYm90dG9tXG4gICAgICovXG4gICAgQElucHV0KCkgc2V0IHRoeVNob3J0Y3V0UG9zaXRpb24ocG9zaXRpb246IFRoeVNob3J0Y3V0UG9zaXRpb24pIHtcbiAgICAgICAgaWYgKCEhcG9zaXRpb24pIHtcbiAgICAgICAgICAgIHRoaXMuc2hvcnRjdXRQb3NpdGlvbiA9IHBvc2l0aW9uO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog6Ieq5a6a5LmJ5b+r5o236YCJ6aG5XG4gICAgICogQHR5cGUgVGh5U2hvcnRjdXRQcmVzZXRbXVxuICAgICAqL1xuICAgIEBJbnB1dCgpIHNldCB0aHlTaG9ydGN1dFByZXNldHMocHJlc2V0czogQ29tcGF0aWJsZVByZXNldHMpIHtcbiAgICAgICAgdGhpcy5zaG9ydGN1dFByZXNldHMgPSBwcmVzZXRzO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOaXpeacn+WPmOWMlueahOWbnuiwg1xuICAgICAqL1xuICAgIEBPdXRwdXQoKSByZWFkb25seSB0aHlEYXRlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxUaHlEYXRlQ2hhbmdlRXZlbnQ+KCk7XG5cbiAgICBAT3V0cHV0KCkgcmVhZG9ubHkgdGh5T3BlbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAgIEBWaWV3Q2hpbGQoVGh5UGlja2VyLCB7IHN0YXRpYzogdHJ1ZSB9KSBwdWJsaWMgcGlja2VyOiBUaHlQaWNrZXI7XG5cbiAgICAvKipcbiAgICAgKiDmmK/lkKbnpoHnlKhcbiAgICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogY29lcmNlQm9vbGVhblByb3BlcnR5IH0pXG4gICAgc2V0IHRoeURpc2FibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuZGlzYWJsZWQgPSB2YWx1ZTtcbiAgICB9XG4gICAgZ2V0IHRoeURpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5kaXNhYmxlZDtcbiAgICB9XG5cbiAgICBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gICAgc2hvcnRjdXRQb3NpdGlvbjogVGh5U2hvcnRjdXRQb3NpdGlvbiA9ICdsZWZ0JztcblxuICAgIHNob3J0Y3V0UHJlc2V0czogQ29tcGF0aWJsZVByZXNldHM7XG5cbiAgICBpc1JhbmdlOiBib29sZWFuO1xuXG4gICAgd2l0aFRpbWU6IGJvb2xlYW47XG5cbiAgICBmbGV4aWJsZTogYm9vbGVhbjtcblxuICAgIGZsZXhpYmxlRGF0ZUdyYW51bGFyaXR5OiBUaHlEYXRlR3JhbnVsYXJpdHk7XG5cbiAgICBwcm90ZWN0ZWQgZGVzdHJveWVkJDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0KCk7XG4gICAgcHJvdGVjdGVkIGlzQ3VzdG9tUGxhY2VIb2xkZXIgPSBmYWxzZTtcbiAgICBwcml2YXRlIG9ubHlFbWl0RGF0ZSA9IGZhbHNlO1xuICAgIHByb3RlY3RlZCBvcmlnaW5XaXRoVGltZTogYm9vbGVhbjtcblxuICAgIGdldCByZWFsT3BlblN0YXRlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5waWNrZXIucmVhbE9wZW5TdGF0ZTtcbiAgICB9XG5cbiAgICBnZXQgaXNTaG93RGF0ZVBvcHVwKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5waWNrZXIuaXNTaG93RGF0ZVBvcHVwO1xuICAgIH1cblxuICAgIGluaXRWYWx1ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy50aHlWYWx1ZSA9IHRoaXMuaXNSYW5nZSA/IFtdIDogbnVsbDtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZXREZWZhdWx0UGxhY2VIb2xkZXIoKTtcbiAgICAgICAgdGhpcy5pbml0VmFsdWUoKTtcbiAgICAgICAgdGhpcy5pc0ZsZXhpYmxlKCk7XG4gICAgfVxuXG4gICAgaXNGbGV4aWJsZSgpIHtcbiAgICAgICAgdGhpcy5mbGV4aWJsZSA9IHRoaXMudGh5TW9kZSA9PT0gJ2ZsZXhpYmxlJztcbiAgICB9XG5cbiAgICBvbkRhdGVWYWx1ZUNoYW5nZShldmVudDogVGh5RGF0ZUNoYW5nZUV2ZW50KSB7XG4gICAgICAgIHRoaXMudGh5RGF0ZUNoYW5nZS5lbWl0KGV2ZW50KTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChjaGFuZ2VzLnRoeVBsYWNlSG9sZGVyICYmIGNoYW5nZXMudGh5UGxhY2VIb2xkZXIuZmlyc3RDaGFuZ2UgJiYgdHlwZW9mIHRoaXMudGh5UGxhY2VIb2xkZXIgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICB0aGlzLmlzQ3VzdG9tUGxhY2VIb2xkZXIgPSB0cnVlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGVzdHJveWVkJC5uZXh0KCk7XG4gICAgICAgIHRoaXMuZGVzdHJveWVkJC5jb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIGNsb3NlT3ZlcmxheSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5waWNrZXIuaGlkZU92ZXJsYXkoKTtcbiAgICB9XG5cbiAgICBnZXRBdXRvU3RhcnRBbmRFbmRWYWx1ZShiZWdpbjogVGlueURhdGUsIGVuZDogVGlueURhdGUpIHtcbiAgICAgICAgbGV0IHZhbHVlOiB7IGJlZ2luOiBudW1iZXI7IGVuZDogbnVtYmVyIH07XG4gICAgICAgIHN3aXRjaCAodGhpcy50aHlNb2RlKSB7XG4gICAgICAgICAgICBjYXNlICdkYXRlJzpcbiAgICAgICAgICAgICAgICB2YWx1ZSA9IHtcbiAgICAgICAgICAgICAgICAgICAgYmVnaW46IGJlZ2luLnN0YXJ0T2ZEYXkoKS5nZXRVbml4VGltZSgpLFxuICAgICAgICAgICAgICAgICAgICBlbmQ6IGVuZC5lbmRPZkRheSgpLmdldFVuaXhUaW1lKClcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnd2Vlayc6XG4gICAgICAgICAgICAgICAgdmFsdWUgPSB7XG4gICAgICAgICAgICAgICAgICAgIGJlZ2luOiBiZWdpbi5zdGFydE9mV2VlaygpLmdldFVuaXhUaW1lKCksXG4gICAgICAgICAgICAgICAgICAgIGVuZDogZW5kLmVuZE9mV2VlaygpLmdldFVuaXhUaW1lKClcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnbW9udGgnOlxuICAgICAgICAgICAgICAgIHZhbHVlID0ge1xuICAgICAgICAgICAgICAgICAgICBiZWdpbjogYmVnaW4uc3RhcnRPZk1vbnRoKCkuZ2V0VW5peFRpbWUoKSxcbiAgICAgICAgICAgICAgICAgICAgZW5kOiBlbmQuZW5kT2ZNb250aCgpLmdldFVuaXhUaW1lKClcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAneWVhcic6XG4gICAgICAgICAgICAgICAgdmFsdWUgPSB7XG4gICAgICAgICAgICAgICAgICAgIGJlZ2luOiBiZWdpbi5zdGFydE9mWWVhcigpLmdldFVuaXhUaW1lKCksXG4gICAgICAgICAgICAgICAgICAgIGVuZDogZW5kLmVuZE9mWWVhcigpLmdldFVuaXhUaW1lKClcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICB2YWx1ZSA9IHtcbiAgICAgICAgICAgICAgICAgICAgYmVnaW46IGJlZ2luLnN0YXJ0T2ZEYXkoKS5nZXRVbml4VGltZSgpLFxuICAgICAgICAgICAgICAgICAgICBlbmQ6IGVuZC5lbmRPZkRheSgpLmdldFVuaXhUaW1lKClcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9XG5cbiAgICBvblZhbHVlQ2hhbmdlKG9yaWdpbmFsVmFsdWU6IENvbXBhdGlibGVWYWx1ZSB8IFJhbmdlQWR2YW5jZWRWYWx1ZSk6IHZvaWQge1xuICAgICAgICB0aGlzLnNldEZvcm1hdFJ1bGUoKTtcbiAgICAgICAgY29uc3QgeyB2YWx1ZSwgd2l0aFRpbWUsIGZsZXhpYmxlRGF0ZUdyYW51bGFyaXR5IH0gPSB0cmFuc2Zvcm1EYXRlVmFsdWUob3JpZ2luYWxWYWx1ZSk7XG4gICAgICAgIHRoaXMuZmxleGlibGVEYXRlR3JhbnVsYXJpdHkgPSBmbGV4aWJsZURhdGVHcmFudWxhcml0eTtcbiAgICAgICAgdGhpcy5zZXRWYWx1ZSh2YWx1ZSk7XG4gICAgICAgIGlmICh0aGlzLmlzUmFuZ2UpIHtcbiAgICAgICAgICAgIGNvbnN0IHZBc1JhbmdlOiBhbnkgPSB0aGlzLnRoeVZhbHVlO1xuICAgICAgICAgICAgbGV0IHZhbHVlID0geyBiZWdpbjogbnVsbCwgZW5kOiBudWxsIH0gYXMgVGh5RGF0ZVJhbmdlRW50cnk7XG4gICAgICAgICAgICBpZiAodkFzUmFuZ2UubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgW2JlZ2luLCBlbmRdID0gdkFzUmFuZ2UgYXMgVGlueURhdGVbXTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy50aHlBdXRvU3RhcnRBbmRFbmQpIHtcbiAgICAgICAgICAgICAgICAgICAgdmFsdWUgPSB0aGlzLmdldEF1dG9TdGFydEFuZEVuZFZhbHVlKGJlZ2luLCBlbmQpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHZhbHVlID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmVnaW46IGJlZ2luLmdldFVuaXhUaW1lKCksXG4gICAgICAgICAgICAgICAgICAgICAgICBlbmQ6IGVuZC5nZXRVbml4VGltZSgpXG4gICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgW2JlZ2luVW5peFRpbWUsIGVuZFVuaXhUaW1lXSA9IHRoaXMuc2V0VmFsdWVCeVByZWNpc2lvbih2YWx1ZSkgYXMgbnVtYmVyW107XG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlRm4oXG4gICAgICAgICAgICAgICAgT2JqZWN0LmFzc2lnbih7IGJlZ2luOiBiZWdpblVuaXhUaW1lLCBlbmQ6IGVuZFVuaXhUaW1lIH0sIHRoaXMuZmxleGlibGUgPyB7IGdyYW51bGFyaXR5OiBmbGV4aWJsZURhdGVHcmFudWxhcml0eSB9IDoge30pXG4gICAgICAgICAgICApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSB7IGRhdGU6IG51bGwsIHdpdGhfdGltZTogdGhpcy53aXRoVGltZSA/IDEgOiAwIH0gYXMgRGF0ZUVudHJ5O1xuICAgICAgICAgICAgaWYgKHRoaXMudGh5VmFsdWUpIHtcbiAgICAgICAgICAgICAgICB2YWx1ZS5kYXRlID0gKHRoaXMudGh5VmFsdWUgYXMgVGlueURhdGUpLmdldFVuaXhUaW1lKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAodGhpcy5vbmx5RW1pdERhdGUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uQ2hhbmdlRm4odGhpcy5zZXRWYWx1ZUJ5UHJlY2lzaW9uKHZhbHVlLmRhdGUpIGFzIG51bWJlcik7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMub25DaGFuZ2VGbihPYmplY3QuYXNzaWduKHZhbHVlLCB7IGRhdGU6IHRoaXMuc2V0VmFsdWVCeVByZWNpc2lvbih2YWx1ZS5kYXRlKSBhcyBudW1iZXIgfSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgc2V0Rm9ybWF0UnVsZSgpIHtcbiAgICAgICAgaWYgKCF0aGlzLnRoeUZvcm1hdCkge1xuICAgICAgICAgICAgaWYgKHRoaXMud2l0aFRpbWUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnRoeUZvcm1hdCA9ICd5eXl5LU1NLWRkIEhIOm1tJztcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgaWYgKCF0aGlzLm9ubHlFbWl0RGF0ZSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnRoeUZvcm1hdCA9ICd5eXl5LU1NLWRkJztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbk9wZW5DaGFuZ2Uob3BlbjogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLnRoeU9wZW4gPSBvcGVuO1xuICAgICAgICB0aGlzLnRoeU9wZW5DaGFuZ2UuZW1pdChvcGVuKTtcbiAgICB9XG5cbiAgICBvbkNoYW5nZUZuOiAodmFsOiBDb21wYXRpYmxlRGF0ZSB8IERhdGVFbnRyeSB8IFRoeURhdGVSYW5nZUVudHJ5IHwgbnVtYmVyIHwgbnVsbCkgPT4gdm9pZCA9ICgpID0+IHZvaWQgMDtcblxuICAgIHdyaXRlVmFsdWUob3JpZ2luYWxWYWx1ZTogQ29tcGF0aWJsZURhdGUgfCBUaHlEYXRlUmFuZ2VFbnRyeSk6IHZvaWQge1xuICAgICAgICBjb25zdCB7IHZhbHVlLCB3aXRoVGltZSwgZmxleGlibGVEYXRlR3JhbnVsYXJpdHkgfSA9IHRyYW5zZm9ybURhdGVWYWx1ZShvcmlnaW5hbFZhbHVlKTtcbiAgICAgICAgdGhpcy5mbGV4aWJsZURhdGVHcmFudWxhcml0eSA9IGZsZXhpYmxlRGF0ZUdyYW51bGFyaXR5O1xuICAgICAgICBpZiAodGhpcy5mbGV4aWJsZSAmJiB2YWx1ZSAmJiAodmFsdWUgYXMgRGF0ZVtdKS5sZW5ndGgpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5mbGV4aWJsZURhdGVHcmFudWxhcml0eSkge1xuICAgICAgICAgICAgICAgIHRoaXMuZmxleGlibGVEYXRlR3JhbnVsYXJpdHkgPSAnZGF5JztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuc2V0VmFsdWUodmFsdWUpO1xuICAgICAgICB0aGlzLnNldFRpbWVQaWNrZXJTdGF0ZSh3aXRoVGltZSk7XG4gICAgICAgIHRoaXMub25seUVtaXREYXRlID0gdHlwZW9mIHdpdGhUaW1lID09PSAndW5kZWZpbmVkJztcbiAgICAgICAgdGhpcy5vcmlnaW5XaXRoVGltZSA9IHdpdGhUaW1lO1xuICAgICAgICB0aGlzLnNldEZvcm1hdFJ1bGUoKTtcbiAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgc2V0VGltZVBpY2tlclN0YXRlKHdpdGhUaW1lOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMud2l0aFRpbWUgPSB3aXRoVGltZTtcbiAgICB9XG5cbiAgICBzZXREaXNhYmxlZFN0YXRlKGRpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMudGh5RGlzYWJsZWQgPSBkaXNhYmxlZDtcbiAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXREZWZhdWx0UGxhY2VIb2xkZXIoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5pc0N1c3RvbVBsYWNlSG9sZGVyKSB7XG4gICAgICAgICAgICB0aGlzLnRoeVBsYWNlSG9sZGVyID0gdGhpcy5pc1JhbmdlID8gW3RoaXMubG9jYWxlKCkuc3RhcnREYXRlLCB0aGlzLmxvY2FsZSgpLmVuZERhdGVdIDogdGhpcy5sb2NhbGUoKS5wbGFjZWhvbGRlcjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0VmFsdWUodmFsdWU6IENvbXBhdGlibGVEYXRlKTogdm9pZCB7XG4gICAgICAgIHRoaXMudGh5VmFsdWUgPSBtYWtlVmFsdWUodmFsdWUsIHRoaXMuaXNSYW5nZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRWYWx1ZUJ5UHJlY2lzaW9uKHZhbHVlOiBDb21wYXRpYmxlRGF0ZSB8IG51bWJlciB8IERhdGUgfCBEYXRlRW50cnkgfCBUaHlEYXRlUmFuZ2VFbnRyeSB8IFNhZmVBbnkpOiBudW1iZXIgfCBudW1iZXJbXSB7XG4gICAgICAgIHJldHVybiBzZXRWYWx1ZUJ5VGltZXN0YW1wUHJlY2lzaW9uKHZhbHVlLCB0aGlzLmlzUmFuZ2UsIHRoaXMudGh5VGltZXN0YW1wUHJlY2lzaW9uKTtcbiAgICB9XG59XG4iXX0=
327
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9kYXRlLXBpY2tlci9hYnN0cmFjdC1waWNrZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx5Q0FBeUMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzVFLE9BQU8sRUFBRSxxQkFBcUIsRUFBWSxNQUFNLGlCQUFpQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFL0IsT0FBTyxFQUNILGlCQUFpQixFQUNqQixRQUFRLEVBQ1IsU0FBUyxFQUNULFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUlMLE1BQU0sRUFHTixTQUFTLEVBQ1osTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFFLFlBQVksRUFBdUIsTUFBTSxpQkFBaUIsQ0FBQztBQUVwRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVuRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSw0QkFBNEIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFhNUY7O0dBRUc7QUFFSCxNQUFNLE9BQWdCLHVCQUNsQixTQUFRLHlDQUF5QztJQWFqRDs7O09BR0c7SUFDSCxJQUFhLE9BQU8sQ0FBQyxLQUFtQjtRQUNwQyxJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssSUFBSSxNQUFNLENBQUM7SUFDdEMsQ0FBQztJQUVELElBQUksT0FBTztRQUNQLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUMzQixDQUFDO0lBc0dEOzs7T0FHRztJQUNILElBQWEsbUJBQW1CLENBQUMsUUFBNkI7UUFDMUQsSUFBSSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDYixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsUUFBUSxDQUFDO1FBQ3JDLENBQUM7SUFDTCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFBYSxrQkFBa0IsQ0FBQyxPQUEwQjtRQUN0RCxJQUFJLENBQUMsZUFBZSxHQUFHLE9BQU8sQ0FBQztJQUNuQyxDQUFDO0lBV0Q7OztPQUdHO0lBQ0gsSUFDSSxXQUFXLENBQUMsS0FBYztRQUMxQixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUMxQixDQUFDO0lBQ0QsSUFBSSxXQUFXO1FBQ1gsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3pCLENBQUM7SUFxQkQsSUFBSSxhQUFhO1FBQ2IsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQztJQUNyQyxDQUFDO0lBRUQsSUFBSSxlQUFlO1FBQ2YsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsQ0FBQztJQUN2QyxDQUFDO0lBRUQsU0FBUztRQUNMLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDN0MsQ0FBQztJQUVEO1FBQ0ksS0FBSyxFQUFFLENBQUM7UUFqTVosUUFBRyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBRWhDLFdBQU0sR0FBZ0MsWUFBWSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBSWpFLGVBQVUsR0FBaUIsTUFBTSxDQUFDO1FBRTFCLDRCQUF1QixHQUFHLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1FBY3JFOztXQUVHO1FBQzBDLGtCQUFhLEdBQUcsSUFBSSxDQUFDO1FBRWxFOzs7V0FHRztRQUMwQyxpQkFBWSxHQUFHLEtBQUssQ0FBQztRQXdDbEU7OztXQUdHO1FBQ00sWUFBTyxHQUEwQyxTQUFTLENBQUM7UUFFcEU7OztXQUdHO1FBQ00sMEJBQXFCLEdBQStCLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxNQUFNLEVBQUUsa0JBQWtCLElBQUksU0FBUyxDQUFDO1FBUWxJOztXQUVHO1FBQ00saUJBQVksR0FBVyxJQUFJLENBQUMsdUJBQXVCLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQztRQUUvRSxjQUFTLEdBQW1CLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDdEMsT0FBTyxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxFQUFFLEdBQUcsQ0FBQztRQUM1QyxDQUFDLENBQUMsQ0FBQztRQUVIOzs7O1dBSUc7UUFDMEMsdUJBQWtCLEdBQUcsS0FBSyxDQUFDO1FBRXhFOzs7V0FHRztRQUNNLDBCQUFxQixHQUFtQyxJQUFJLENBQUM7UUFFdEU7O1dBRUc7UUFDTSxrQkFBYSxHQUFHLFVBQVUsQ0FBQztRQTBCcEM7O1dBRUc7UUFDZ0Isa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBc0IsQ0FBQztRQUV2RCxrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFnQi9ELGFBQVEsR0FBRyxLQUFLLENBQUM7UUFFakIscUJBQWdCLEdBQXdCLE1BQU0sQ0FBQztRQVlyQyxlQUFVLEdBQWtCLElBQUksT0FBTyxFQUFFLENBQUM7UUFDMUMsd0JBQW1CLEdBQUcsS0FBSyxDQUFDO1FBQzlCLGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FBMEk3QixlQUFVLEdBQWtGLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBekh6RyxDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQzdCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELFVBQVU7UUFDTixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxPQUFPLEtBQUssVUFBVSxDQUFDO0lBQ2hELENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxLQUF5QjtRQUN2QyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQzlCLElBQUksT0FBTyxDQUFDLGNBQWMsSUFBSSxPQUFPLENBQUMsY0FBYyxDQUFDLFdBQVcsSUFBSSxPQUFPLElBQUksQ0FBQyxjQUFjLEtBQUssV0FBVyxFQUFFLENBQUM7WUFDN0csSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQztRQUNwQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVELFlBQVk7UUFDUixJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRCx1QkFBdUIsQ0FBQyxLQUFlLEVBQUUsR0FBYTtRQUNsRCxJQUFJLEtBQXFDLENBQUM7UUFDMUMsUUFBUSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDbkIsS0FBSyxNQUFNO2dCQUNQLEtBQUssR0FBRztvQkFDSixLQUFLLEVBQUUsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDLFdBQVcsRUFBRTtvQkFDdkMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxXQUFXLEVBQUU7aUJBQ3BDLENBQUM7Z0JBQ0YsTUFBTTtZQUNWLEtBQUssTUFBTTtnQkFDUCxLQUFLLEdBQUc7b0JBQ0osS0FBSyxFQUFFLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQyxXQUFXLEVBQUU7b0JBQ3hDLEdBQUcsRUFBRSxHQUFHLENBQUMsU0FBUyxFQUFFLENBQUMsV0FBVyxFQUFFO2lCQUNyQyxDQUFDO2dCQUNGLE1BQU07WUFDVixLQUFLLE9BQU87Z0JBQ1IsS0FBSyxHQUFHO29CQUNKLEtBQUssRUFBRSxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUMsV0FBVyxFQUFFO29CQUN6QyxHQUFHLEVBQUUsR0FBRyxDQUFDLFVBQVUsRUFBRSxDQUFDLFdBQVcsRUFBRTtpQkFDdEMsQ0FBQztnQkFDRixNQUFNO1lBQ1YsS0FBSyxNQUFNO2dCQUNQLEtBQUssR0FBRztvQkFDSixLQUFLLEVBQUUsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDLFdBQVcsRUFBRTtvQkFDeEMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxXQUFXLEVBQUU7aUJBQ3JDLENBQUM7Z0JBQ0YsTUFBTTtZQUNWO2dCQUNJLEtBQUssR0FBRztvQkFDSixLQUFLLEVBQUUsS0FBSyxDQUFDLFVBQVUsRUFBRSxDQUFDLFdBQVcsRUFBRTtvQkFDdkMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxXQUFXLEVBQUU7aUJBQ3BDLENBQUM7Z0JBQ0YsTUFBTTtRQUNkLENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0lBRUQsYUFBYSxDQUFDLGFBQW1EO1FBQzdELElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUNyQixNQUFNLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSx1QkFBdUIsRUFBRSxHQUFHLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ3ZGLElBQUksQ0FBQyx1QkFBdUIsR0FBRyx1QkFBdUIsQ0FBQztRQUN2RCxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3JCLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2YsTUFBTSxRQUFRLEdBQVEsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUNwQyxJQUFJLEtBQUssR0FBRyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBdUIsQ0FBQztZQUM1RCxJQUFJLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFDbEIsTUFBTSxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsR0FBRyxRQUFzQixDQUFDO2dCQUM1QyxJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO29CQUMxQixLQUFLLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFDckQsQ0FBQztxQkFBTSxDQUFDO29CQUNKLEtBQUssR0FBRzt3QkFDSixLQUFLLEVBQUUsS0FBSyxDQUFDLFdBQVcsRUFBRTt3QkFDMUIsR0FBRyxFQUFFLEdBQUcsQ0FBQyxXQUFXLEVBQUU7cUJBQ3pCLENBQUM7Z0JBQ04sQ0FBQztZQUNMLENBQUM7WUFDRCxNQUFNLENBQUMsYUFBYSxFQUFFLFdBQVcsQ0FBQyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQWEsQ0FBQztZQUNqRixJQUFJLENBQUMsVUFBVSxDQUNYLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxLQUFLLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLFdBQVcsRUFBRSx1QkFBdUIsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FDM0gsQ0FBQztRQUNOLENBQUM7YUFBTSxDQUFDO1lBQ0osTUFBTSxLQUFLLEdBQUcsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBZSxDQUFDO1lBQzVFLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUNoQixLQUFLLENBQUMsSUFBSSxHQUFJLElBQUksQ0FBQyxRQUFxQixDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQzNELENBQUM7WUFDRCxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztnQkFDcEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBVyxDQUFDLENBQUM7WUFDcEUsQ0FBQztpQkFBTSxDQUFDO2dCQUNKLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxJQUFJLENBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUNwRyxDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUM7SUFFRCxhQUFhO1FBQ1QsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNsQixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDaEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxrQkFBa0IsQ0FBQztZQUN4QyxDQUFDO2lCQUFNLENBQUM7Z0JBQ0osSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztvQkFDckIsSUFBSSxDQUFDLFNBQVMsR0FBRyxZQUFZLENBQUM7Z0JBQ2xDLENBQUM7WUFDTCxDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUM7SUFFRCxZQUFZLENBQUMsSUFBYTtRQUN0QixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUNwQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBSUQsVUFBVSxDQUFDLGFBQWlEO1FBQ3hELE1BQU0sRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLHVCQUF1QixFQUFFLEdBQUcsa0JBQWtCLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDdkYsSUFBSSxDQUFDLHVCQUF1QixHQUFHLHVCQUF1QixDQUFDO1FBQ3ZELElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxLQUFLLElBQUssS0FBZ0IsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNyRCxJQUFJLENBQUMsSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyx1QkFBdUIsR0FBRyxLQUFLLENBQUM7WUFDekMsQ0FBQztRQUNMLENBQUM7UUFFRCxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNsQyxJQUFJLENBQUMsWUFBWSxHQUFHLE9BQU8sUUFBUSxLQUFLLFdBQVcsQ0FBQztRQUNwRCxJQUFJLENBQUMsY0FBYyxHQUFHLFFBQVEsQ0FBQztRQUMvQixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDckIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBRUQsa0JBQWtCLENBQUMsUUFBaUI7UUFDaEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7SUFDN0IsQ0FBQztJQUVELGdCQUFnQixDQUFDLFFBQWlCO1FBQzlCLElBQUksQ0FBQyxXQUFXLEdBQUcsUUFBUSxDQUFDO1FBQzVCLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVPLHFCQUFxQjtRQUN6QixJQUFJLENBQUMsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7WUFDNUIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsV0FBVyxDQUFDO1FBQ3RILENBQUM7UUFDRCxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFTSxRQUFRLENBQUMsS0FBcUI7UUFDakMsSUFBSSxDQUFDLFFBQVEsR0FBRyxTQUFTLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRU8sbUJBQW1CLENBQUMsS0FBK0U7UUFDdkcsT0FBTyw0QkFBNEIsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQztJQUN6RixDQUFDOytHQXhXaUIsdUJBQXVCO21HQUF2Qix1QkFBdUIsa0ZBNkJyQixxQkFBcUIsa0RBTXJCLHFCQUFxQixtQ0FFckIscUJBQXFCLHlLQTBCckIscUJBQXFCLGdSQTRDckIscUJBQXFCLDJJQWlCckIscUJBQXFCLHFJQWlDckIscUJBQXFCLGtKQU45QixTQUFTOzs0RkF2SkYsdUJBQXVCO2tCQUQ1QyxTQUFTO3dEQW1CTyxPQUFPO3NCQUFuQixLQUFLO2dCQVd1QyxhQUFhO3NCQUF6RCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLHFCQUFxQixFQUFFO2dCQU1FLFlBQVk7c0JBQXhELEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUscUJBQXFCLEVBQUU7Z0JBRUUsT0FBTztzQkFBbkQsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxxQkFBcUIsRUFBRTtnQkFFbEMsZUFBZTtzQkFBdkIsS0FBSztnQkFNRyxVQUFVO3NCQUFsQixLQUFLO2dCQU1HLFVBQVU7c0JBQWxCLEtBQUs7Z0JBTUcsY0FBYztzQkFBdEIsS0FBSztnQkFNdUMsV0FBVztzQkFBdkQsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxxQkFBcUIsRUFBRTtnQkFLbEMsa0JBQWtCO3NCQUExQixLQUFLO2dCQUtHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFNRyxPQUFPO3NCQUFmLEtBQUs7Z0JBTUcscUJBQXFCO3NCQUE3QixLQUFLO2dCQU1HLFNBQVM7c0JBQWpCLEtBQUs7Z0JBS0csWUFBWTtzQkFBcEIsS0FBSztnQkFXdUMsa0JBQWtCO3NCQUE5RCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLHFCQUFxQixFQUFFO2dCQU1sQyxxQkFBcUI7c0JBQTdCLEtBQUs7Z0JBS0csYUFBYTtzQkFBckIsS0FBSztnQkFNdUMsZUFBZTtzQkFBM0QsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxxQkFBcUIsRUFBRTtnQkFNOUIsbUJBQW1CO3NCQUEvQixLQUFLO2dCQVVPLGtCQUFrQjtzQkFBOUIsS0FBSztnQkFPYSxhQUFhO3NCQUEvQixNQUFNO2dCQUVZLGFBQWE7c0JBQS9CLE1BQU07Z0JBRXdDLE1BQU07c0JBQXBELFNBQVM7dUJBQUMsU0FBUyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFPbEMsV0FBVztzQkFEZCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLHFCQUFxQixFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGFiSW5kZXhEaXNhYmxlZENvbnRyb2xWYWx1ZUFjY2Vzc29yTWl4aW4gfSBmcm9tICduZ3gtdGV0aHlzL2NvcmUnO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5LCBUaW55RGF0ZSB9IGZyb20gJ25neC10ZXRoeXMvdXRpbCc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgY29tcHV0ZWQsXG4gICAgRGlyZWN0aXZlLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBpbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgT3V0cHV0LFxuICAgIFNpZ25hbCxcbiAgICBTaW1wbGVDaGFuZ2VzLFxuICAgIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBpbmplY3RMb2NhbGUsIFRoeURhdGVQaWNrZXJMb2NhbGUgfSBmcm9tICduZ3gtdGV0aHlzL2kxOG4nO1xuaW1wb3J0IHsgU2FmZUFueSB9IGZyb20gJ25neC10ZXRoeXMvdHlwZXMnO1xuaW1wb3J0IHsgVGh5RGF0ZVBpY2tlckNvbmZpZ1NlcnZpY2UgfSBmcm9tICcuL2RhdGUtcGlja2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ29tcGF0aWJsZVZhbHVlLCBSYW5nZUFkdmFuY2VkVmFsdWUgfSBmcm9tICcuL2lubmVyLXR5cGVzJztcbmltcG9ydCB7IFRoeVBpY2tlciB9IGZyb20gJy4vcGlja2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBtYWtlVmFsdWUsIHNldFZhbHVlQnlUaW1lc3RhbXBQcmVjaXNpb24sIHRyYW5zZm9ybURhdGVWYWx1ZSB9IGZyb20gJy4vcGlja2VyLnV0aWwnO1xuaW1wb3J0IHtcbiAgICBDb21wYXRpYmxlRGF0ZSxcbiAgICBDb21wYXRpYmxlUHJlc2V0cyxcbiAgICBEYXRlRW50cnksXG4gICAgRGlzYWJsZWREYXRlRm4sXG4gICAgVGh5RGF0ZUNoYW5nZUV2ZW50LFxuICAgIFRoeURhdGVHcmFudWxhcml0eSxcbiAgICBUaHlEYXRlUmFuZ2VFbnRyeSxcbiAgICBUaHlQYW5lbE1vZGUsXG4gICAgVGh5U2hvcnRjdXRQb3NpdGlvblxufSBmcm9tICcuL3N0YW5kYXJkLXR5cGVzJztcblxuLyoqXG4gKiBAcHJpdmF0ZVxuICovXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdFBpY2tlckNvbXBvbmVudFxuICAgIGV4dGVuZHMgVGFiSW5kZXhEaXNhYmxlZENvbnRyb2xWYWx1ZUFjY2Vzc29yTWl4aW5cbiAgICBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIENvbnRyb2xWYWx1ZUFjY2Vzc29yXG57XG4gICAgY2RyID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcblxuICAgIGxvY2FsZTogU2lnbmFsPFRoeURhdGVQaWNrZXJMb2NhbGU+ID0gaW5qZWN0TG9jYWxlKCdkYXRlUGlja2VyJyk7XG5cbiAgICB0aHlWYWx1ZTogQ29tcGF0aWJsZVZhbHVlIHwgbnVsbDtcblxuICAgIF9wYW5lbE1vZGU6IFRoeVBhbmVsTW9kZSA9ICdkYXRlJztcblxuICAgIHByaXZhdGUgZGF0ZVBpY2tlckNvbmZpZ1NlcnZpY2UgPSBpbmplY3QoVGh5RGF0ZVBpY2tlckNvbmZpZ1NlcnZpY2UpO1xuXG4gICAgLyoqXG4gICAgICog5qih5byPXG4gICAgICogQHR5cGUgZGVjYWRlIHwgeWVhciB8IG1vbnRoIHwgZGF0ZSB8IHdlZWsgfCBmbGV4aWJsZVxuICAgICAqL1xuICAgIEBJbnB1dCgpIHNldCB0aHlNb2RlKHZhbHVlOiBUaHlQYW5lbE1vZGUpIHtcbiAgICAgICAgdGhpcy5fcGFuZWxNb2RlID0gdmFsdWUgPz8gJ2RhdGUnO1xuICAgIH1cblxuICAgIGdldCB0aHlNb2RlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fcGFuZWxNb2RlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOaYr+WQpuaYvuekuua4hemZpOaMiemSrlxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogY29lcmNlQm9vbGVhblByb3BlcnR5IH0pIHRoeUFsbG93Q2xlYXIgPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICog5piv5ZCm6Ieq5Yqo6I635Y+W54Sm54K5XG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9KSB0aHlBdXRvRm9jdXMgPSBmYWxzZTtcblxuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogY29lcmNlQm9vbGVhblByb3BlcnR5IH0pIHRoeU9wZW46IGJvb2xlYW47XG5cbiAgICBASW5wdXQoKSB0aHlEaXNhYmxlZERhdGU6IERpc2FibGVkRGF0ZUZuO1xuXG4gICAgLyoqXG4gICAgICog5pyA5bCP5YC8XG4gICAgICogQHR5cGUgRGF0ZSB8IG51bWJlclxuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeU1pbkRhdGU6IERhdGUgfCBudW1iZXI7XG5cbiAgICAvKipcbiAgICAgKiDmnIDlpKflgLxcbiAgICAgKiBAdHlwZSBEYXRlIHwgbnVtYmVyXG4gICAgICovXG4gICAgQElucHV0KCkgdGh5TWF4RGF0ZTogRGF0ZSB8IG51bWJlcjtcblxuICAgIC8qKlxuICAgICAqIOi+k+WFpeahhuaPkOekuuaWh+Wtl1xuICAgICAqIEB0eXBlIHN0cmluZyB8IHN0cmluZ1tdXG4gICAgICovXG4gICAgQElucHV0KCkgdGh5UGxhY2VIb2xkZXI6IHN0cmluZyB8IHN0cmluZ1tdO1xuXG4gICAgLyoqXG4gICAgICog5piv5ZCm5Y+q6K+7XG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9KSB0aHlSZWFkb25seTogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIOmAieaLqeWZqCBjbGFzc05hbWVcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlPcmlnaW5DbGFzc05hbWU6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIOW8ueWHuuWxgiBjbGFzc05hbWVcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlQYW5lbENsYXNzTmFtZTogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICog6L6T5YWl5qGG55qE5aSn5bCPXG4gICAgICogQHR5cGUgeHMgfCBzbSB8IG1kIHwgbGcgfCBkZWZhdWx0XG4gICAgICovXG4gICAgQElucHV0KCkgdGh5U2l6ZTogJ2xnJyB8ICdtZCcgfCAnc20nIHwgJ3hzJyB8ICdkZWZhdWx0JyA9ICdkZWZhdWx0JztcblxuICAgIC8qKlxuICAgICAqIOiuvue9ruaXtumXtOaIs+eyvuW6plxuICAgICAqIEBkZWZhdWx0IHNlY29uZHMgMTDkvY1cbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlUaW1lc3RhbXBQcmVjaXNpb246ICdzZWNvbmRzJyB8ICdtaWxsaXNlY29uZHMnID0gdGhpcy5kYXRlUGlja2VyQ29uZmlnU2VydmljZS5jb25maWc/LnRpbWVzdGFtcFByZWNpc2lvbiB8fCAnc2Vjb25kcyc7XG5cbiAgICAvKipcbiAgICAgKiDlsZXnpLrnmoTml6XmnJ/moLzlvI9cbiAgICAgKiBAZGVmYXVsdCB5eXl5LU1NLWRkXG4gICAgICovXG4gICAgQElucHV0KCkgdGh5Rm9ybWF0OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiDljLrpl7TliIbpmpTnrKbvvIzkuI3kvKDlgLzpu5jorqTkuLogXCJ+XCJcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlTZXBhcmF0b3I6IHN0cmluZyA9IHRoaXMuZGF0ZVBpY2tlckNvbmZpZ1NlcnZpY2UuY29uZmlnPy5zZXBhcmF0b3I7XG5cbiAgICBzZXBhcmF0b3I6IFNpZ25hbDxzdHJpbmc+ID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgICByZXR1cm4gYCAke3RoaXMudGh5U2VwYXJhdG9yPy50cmltKCl9IGA7XG4gICAgfSk7XG5cbiAgICAvKipcbiAgICAgKiBAZGVzY3JpcHRpb24uZW4tdXMgb25seSBmb3IgcmFuZ2UgcGlja2VyLCBXaGV0aGVyIHRvIGF1dG9tYXRpY2FsbHkgdGFrZSB0aGUgYmVnaW5uaW5nIGFuZCBlbmRpbmcgdW5peFRpbWUgb2YgdGhlIGRheVxuICAgICAqIEBkZXNjcmlwdGlvbi56aC1jbiDmmK/lkKblj5blgLzlvIDlp4vml6XmnJ/nmoQwMDowMOS7peWPiuaIquatouaXpeacn+eahDI0OjAwXG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9KSB0aHlBdXRvU3RhcnRBbmRFbmQgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIOmdouadv+m7mOiupOaXpeacn1xuICAgICAqIEB0eXBlIENvbXBhdGlibGVEYXRlIHwgbnVtYmVyIHwgbnVsbFxuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeURlZmF1bHRQaWNrZXJWYWx1ZTogQ29tcGF0aWJsZURhdGUgfCBudW1iZXIgfCBudWxsID0gbnVsbDtcblxuICAgIC8qKlxuICAgICAqIOiHquWumuS5ieeahOWQjue8gOWbvuagh1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeVN1ZmZpeEljb24gPSAnY2FsZW5kYXInO1xuXG4gICAgLyoqXG4gICAgICog5piv5ZCm5bGV56S65b+r5o236YCJ6aG56Z2i5p2/XG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9KSB0aHlTaG93U2hvcnRjdXQ6IGJvb2xlYW47XG5cbiAgICAvKipcbiAgICAgKiDlv6vmjbfpgInpobnpnaLmnb/nmoTmmL7npLrkvY3nva5cbiAgICAgKiBAdHlwZSBsZWZ0IHwgYm90dG9tXG4gICAgICovXG4gICAgQElucHV0KCkgc2V0IHRoeVNob3J0Y3V0UG9zaXRpb24ocG9zaXRpb246IFRoeVNob3J0Y3V0UG9zaXRpb24pIHtcbiAgICAgICAgaWYgKCEhcG9zaXRpb24pIHtcbiAgICAgICAgICAgIHRoaXMuc2hvcnRjdXRQb3NpdGlvbiA9IHBvc2l0aW9uO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog6Ieq5a6a5LmJ5b+r5o236YCJ6aG5XG4gICAgICogQHR5cGUgVGh5U2hvcnRjdXRQcmVzZXRbXVxuICAgICAqL1xuICAgIEBJbnB1dCgpIHNldCB0aHlTaG9ydGN1dFByZXNldHMocHJlc2V0czogQ29tcGF0aWJsZVByZXNldHMpIHtcbiAgICAgICAgdGhpcy5zaG9ydGN1dFByZXNldHMgPSBwcmVzZXRzO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOaXpeacn+WPmOWMlueahOWbnuiwg1xuICAgICAqL1xuICAgIEBPdXRwdXQoKSByZWFkb25seSB0aHlEYXRlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxUaHlEYXRlQ2hhbmdlRXZlbnQ+KCk7XG5cbiAgICBAT3V0cHV0KCkgcmVhZG9ubHkgdGh5T3BlbkNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAgIEBWaWV3Q2hpbGQoVGh5UGlja2VyLCB7IHN0YXRpYzogdHJ1ZSB9KSBwdWJsaWMgcGlja2VyOiBUaHlQaWNrZXI7XG5cbiAgICAvKipcbiAgICAgKiDmmK/lkKbnpoHnlKhcbiAgICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogY29lcmNlQm9vbGVhblByb3BlcnR5IH0pXG4gICAgc2V0IHRoeURpc2FibGVkKHZhbHVlOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuZGlzYWJsZWQgPSB2YWx1ZTtcbiAgICB9XG4gICAgZ2V0IHRoeURpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5kaXNhYmxlZDtcbiAgICB9XG5cbiAgICBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gICAgc2hvcnRjdXRQb3NpdGlvbjogVGh5U2hvcnRjdXRQb3NpdGlvbiA9ICdsZWZ0JztcblxuICAgIHNob3J0Y3V0UHJlc2V0czogQ29tcGF0aWJsZVByZXNldHM7XG5cbiAgICBpc1JhbmdlOiBib29sZWFuO1xuXG4gICAgd2l0aFRpbWU6IGJvb2xlYW47XG5cbiAgICBmbGV4aWJsZTogYm9vbGVhbjtcblxuICAgIGZsZXhpYmxlRGF0ZUdyYW51bGFyaXR5OiBUaHlEYXRlR3JhbnVsYXJpdHk7XG5cbiAgICBwcm90ZWN0ZWQgZGVzdHJveWVkJDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0KCk7XG4gICAgcHJvdGVjdGVkIGlzQ3VzdG9tUGxhY2VIb2xkZXIgPSBmYWxzZTtcbiAgICBwcml2YXRlIG9ubHlFbWl0RGF0ZSA9IGZhbHNlO1xuICAgIHByb3RlY3RlZCBvcmlnaW5XaXRoVGltZTogYm9vbGVhbjtcblxuICAgIGdldCByZWFsT3BlblN0YXRlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5waWNrZXIucmVhbE9wZW5TdGF0ZTtcbiAgICB9XG5cbiAgICBnZXQgaXNTaG93RGF0ZVBvcHVwKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5waWNrZXIuaXNTaG93RGF0ZVBvcHVwO1xuICAgIH1cblxuICAgIGluaXRWYWx1ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy50aHlWYWx1ZSA9IHRoaXMuaXNSYW5nZSA/IFtdIDogbnVsbDtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZXREZWZhdWx0UGxhY2VIb2xkZXIoKTtcbiAgICAgICAgdGhpcy5pbml0VmFsdWUoKTtcbiAgICAgICAgdGhpcy5pc0ZsZXhpYmxlKCk7XG4gICAgfVxuXG4gICAgaXNGbGV4aWJsZSgpIHtcbiAgICAgICAgdGhpcy5mbGV4aWJsZSA9IHRoaXMudGh5TW9kZSA9PT0gJ2ZsZXhpYmxlJztcbiAgICB9XG5cbiAgICBvbkRhdGVWYWx1ZUNoYW5nZShldmVudDogVGh5RGF0ZUNoYW5nZUV2ZW50KSB7XG4gICAgICAgIHRoaXMudGh5RGF0ZUNoYW5nZS5lbWl0KGV2ZW50KTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChjaGFuZ2VzLnRoeVBsYWNlSG9sZGVyICYmIGNoYW5nZXMudGh5UGxhY2VIb2xkZXIuZmlyc3RDaGFuZ2UgJiYgdHlwZW9mIHRoaXMudGh5UGxhY2VIb2xkZXIgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICB0aGlzLmlzQ3VzdG9tUGxhY2VIb2xkZXIgPSB0cnVlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGVzdHJveWVkJC5uZXh0KCk7XG4gICAgICAgIHRoaXMuZGVzdHJveWVkJC5jb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIGNsb3NlT3ZlcmxheSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5waWNrZXIuaGlkZU92ZXJsYXkoKTtcbiAgICB9XG5cbiAgICBnZXRBdXRvU3RhcnRBbmRFbmRWYWx1ZShiZWdpbjogVGlueURhdGUsIGVuZDogVGlueURhdGUpIHtcbiAgICAgICAgbGV0IHZhbHVlOiB7IGJlZ2luOiBudW1iZXI7IGVuZDogbnVtYmVyIH07XG4gICAgICAgIHN3aXRjaCAodGhpcy50aHlNb2RlKSB7XG4gICAgICAgICAgICBjYXNlICdkYXRlJzpcbiAgICAgICAgICAgICAgICB2YWx1ZSA9IHtcbiAgICAgICAgICAgICAgICAgICAgYmVnaW46IGJlZ2luLnN0YXJ0T2ZEYXkoKS5nZXRVbml4VGltZSgpLFxuICAgICAgICAgICAgICAgICAgICBlbmQ6IGVuZC5lbmRPZkRheSgpLmdldFVuaXhUaW1lKClcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnd2Vlayc6XG4gICAgICAgICAgICAgICAgdmFsdWUgPSB7XG4gICAgICAgICAgICAgICAgICAgIGJlZ2luOiBiZWdpbi5zdGFydE9mV2VlaygpLmdldFVuaXhUaW1lKCksXG4gICAgICAgICAgICAgICAgICAgIGVuZDogZW5kLmVuZE9mV2VlaygpLmdldFVuaXhUaW1lKClcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnbW9udGgnOlxuICAgICAgICAgICAgICAgIHZhbHVlID0ge1xuICAgICAgICAgICAgICAgICAgICBiZWdpbjogYmVnaW4uc3RhcnRPZk1vbnRoKCkuZ2V0VW5peFRpbWUoKSxcbiAgICAgICAgICAgICAgICAgICAgZW5kOiBlbmQuZW5kT2ZNb250aCgpLmdldFVuaXhUaW1lKClcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAneWVhcic6XG4gICAgICAgICAgICAgICAgdmFsdWUgPSB7XG4gICAgICAgICAgICAgICAgICAgIGJlZ2luOiBiZWdpbi5zdGFydE9mWWVhcigpLmdldFVuaXhUaW1lKCksXG4gICAgICAgICAgICAgICAgICAgIGVuZDogZW5kLmVuZE9mWWVhcigpLmdldFVuaXhUaW1lKClcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICB2YWx1ZSA9IHtcbiAgICAgICAgICAgICAgICAgICAgYmVnaW46IGJlZ2luLnN0YXJ0T2ZEYXkoKS5nZXRVbml4VGltZSgpLFxuICAgICAgICAgICAgICAgICAgICBlbmQ6IGVuZC5lbmRPZkRheSgpLmdldFVuaXhUaW1lKClcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9XG5cbiAgICBvblZhbHVlQ2hhbmdlKG9yaWdpbmFsVmFsdWU6IENvbXBhdGlibGVWYWx1ZSB8IFJhbmdlQWR2YW5jZWRWYWx1ZSk6IHZvaWQge1xuICAgICAgICB0aGlzLnNldEZvcm1hdFJ1bGUoKTtcbiAgICAgICAgY29uc3QgeyB2YWx1ZSwgd2l0aFRpbWUsIGZsZXhpYmxlRGF0ZUdyYW51bGFyaXR5IH0gPSB0cmFuc2Zvcm1EYXRlVmFsdWUob3JpZ2luYWxWYWx1ZSk7XG4gICAgICAgIHRoaXMuZmxleGlibGVEYXRlR3JhbnVsYXJpdHkgPSBmbGV4aWJsZURhdGVHcmFudWxhcml0eTtcbiAgICAgICAgdGhpcy5zZXRWYWx1ZSh2YWx1ZSk7XG4gICAgICAgIGlmICh0aGlzLmlzUmFuZ2UpIHtcbiAgICAgICAgICAgIGNvbnN0IHZBc1JhbmdlOiBhbnkgPSB0aGlzLnRoeVZhbHVlO1xuICAgICAgICAgICAgbGV0IHZhbHVlID0geyBiZWdpbjogbnVsbCwgZW5kOiBudWxsIH0gYXMgVGh5RGF0ZVJhbmdlRW50cnk7XG4gICAgICAgICAgICBpZiAodkFzUmFuZ2UubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgW2JlZ2luLCBlbmRdID0gdkFzUmFuZ2UgYXMgVGlueURhdGVbXTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy50aHlBdXRvU3RhcnRBbmRFbmQpIHtcbiAgICAgICAgICAgICAgICAgICAgdmFsdWUgPSB0aGlzLmdldEF1dG9TdGFydEFuZEVuZFZhbHVlKGJlZ2luLCBlbmQpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHZhbHVlID0ge1xuICAgICAgICAgICAgICAgICAgICAgICAgYmVnaW46IGJlZ2luLmdldFVuaXhUaW1lKCksXG4gICAgICAgICAgICAgICAgICAgICAgICBlbmQ6IGVuZC5nZXRVbml4VGltZSgpXG4gICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgW2JlZ2luVW5peFRpbWUsIGVuZFVuaXhUaW1lXSA9IHRoaXMuc2V0VmFsdWVCeVByZWNpc2lvbih2YWx1ZSkgYXMgbnVtYmVyW107XG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlRm4oXG4gICAgICAgICAgICAgICAgT2JqZWN0LmFzc2lnbih7IGJlZ2luOiBiZWdpblVuaXhUaW1lLCBlbmQ6IGVuZFVuaXhUaW1lIH0sIHRoaXMuZmxleGlibGUgPyB7IGdyYW51bGFyaXR5OiBmbGV4aWJsZURhdGVHcmFudWxhcml0eSB9IDoge30pXG4gICAgICAgICAgICApO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSB7IGRhdGU6IG51bGwsIHdpdGhfdGltZTogdGhpcy53aXRoVGltZSA/IDEgOiAwIH0gYXMgRGF0ZUVudHJ5O1xuICAgICAgICAgICAgaWYgKHRoaXMudGh5VmFsdWUpIHtcbiAgICAgICAgICAgICAgICB2YWx1ZS5kYXRlID0gKHRoaXMudGh5VmFsdWUgYXMgVGlueURhdGUpLmdldFVuaXhUaW1lKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAodGhpcy5vbmx5RW1pdERhdGUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9uQ2hhbmdlRm4odGhpcy5zZXRWYWx1ZUJ5UHJlY2lzaW9uKHZhbHVlLmRhdGUpIGFzIG51bWJlcik7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMub25DaGFuZ2VGbihPYmplY3QuYXNzaWduKHZhbHVlLCB7IGRhdGU6IHRoaXMuc2V0VmFsdWVCeVByZWNpc2lvbih2YWx1ZS5kYXRlKSBhcyBudW1iZXIgfSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgc2V0Rm9ybWF0UnVsZSgpIHtcbiAgICAgICAgaWYgKCF0aGlzLnRoeUZvcm1hdCkge1xuICAgICAgICAgICAgaWYgKHRoaXMud2l0aFRpbWUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnRoeUZvcm1hdCA9ICd5eXl5LU1NLWRkIEhIOm1tJztcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgaWYgKCF0aGlzLm9ubHlFbWl0RGF0ZSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnRoeUZvcm1hdCA9ICd5eXl5LU1NLWRkJztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbk9wZW5DaGFuZ2Uob3BlbjogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLnRoeU9wZW4gPSBvcGVuO1xuICAgICAgICB0aGlzLnRoeU9wZW5DaGFuZ2UuZW1pdChvcGVuKTtcbiAgICB9XG5cbiAgICBvbkNoYW5nZUZuOiAodmFsOiBDb21wYXRpYmxlRGF0ZSB8IERhdGVFbnRyeSB8IFRoeURhdGVSYW5nZUVudHJ5IHwgbnVtYmVyIHwgbnVsbCkgPT4gdm9pZCA9ICgpID0+IHZvaWQgMDtcblxuICAgIHdyaXRlVmFsdWUob3JpZ2luYWxWYWx1ZTogQ29tcGF0aWJsZURhdGUgfCBUaHlEYXRlUmFuZ2VFbnRyeSk6IHZvaWQge1xuICAgICAgICBjb25zdCB7IHZhbHVlLCB3aXRoVGltZSwgZmxleGlibGVEYXRlR3JhbnVsYXJpdHkgfSA9IHRyYW5zZm9ybURhdGVWYWx1ZShvcmlnaW5hbFZhbHVlKTtcbiAgICAgICAgdGhpcy5mbGV4aWJsZURhdGVHcmFudWxhcml0eSA9IGZsZXhpYmxlRGF0ZUdyYW51bGFyaXR5O1xuICAgICAgICBpZiAodGhpcy5mbGV4aWJsZSAmJiB2YWx1ZSAmJiAodmFsdWUgYXMgRGF0ZVtdKS5sZW5ndGgpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5mbGV4aWJsZURhdGVHcmFudWxhcml0eSkge1xuICAgICAgICAgICAgICAgIHRoaXMuZmxleGlibGVEYXRlR3JhbnVsYXJpdHkgPSAnZGF5JztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuc2V0VmFsdWUodmFsdWUpO1xuICAgICAgICB0aGlzLnNldFRpbWVQaWNrZXJTdGF0ZSh3aXRoVGltZSk7XG4gICAgICAgIHRoaXMub25seUVtaXREYXRlID0gdHlwZW9mIHdpdGhUaW1lID09PSAndW5kZWZpbmVkJztcbiAgICAgICAgdGhpcy5vcmlnaW5XaXRoVGltZSA9IHdpdGhUaW1lO1xuICAgICAgICB0aGlzLnNldEZvcm1hdFJ1bGUoKTtcbiAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgc2V0VGltZVBpY2tlclN0YXRlKHdpdGhUaW1lOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMud2l0aFRpbWUgPSB3aXRoVGltZTtcbiAgICB9XG5cbiAgICBzZXREaXNhYmxlZFN0YXRlKGRpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMudGh5RGlzYWJsZWQgPSBkaXNhYmxlZDtcbiAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXREZWZhdWx0UGxhY2VIb2xkZXIoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5pc0N1c3RvbVBsYWNlSG9sZGVyKSB7XG4gICAgICAgICAgICB0aGlzLnRoeVBsYWNlSG9sZGVyID0gdGhpcy5pc1JhbmdlID8gW3RoaXMubG9jYWxlKCkuc3RhcnREYXRlLCB0aGlzLmxvY2FsZSgpLmVuZERhdGVdIDogdGhpcy5sb2NhbGUoKS5wbGFjZWhvbGRlcjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc2V0VmFsdWUodmFsdWU6IENvbXBhdGlibGVEYXRlKTogdm9pZCB7XG4gICAgICAgIHRoaXMudGh5VmFsdWUgPSBtYWtlVmFsdWUodmFsdWUsIHRoaXMuaXNSYW5nZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRWYWx1ZUJ5UHJlY2lzaW9uKHZhbHVlOiBDb21wYXRpYmxlRGF0ZSB8IG51bWJlciB8IERhdGUgfCBEYXRlRW50cnkgfCBUaHlEYXRlUmFuZ2VFbnRyeSB8IFNhZmVBbnkpOiBudW1iZXIgfCBudW1iZXJbXSB7XG4gICAgICAgIHJldHVybiBzZXRWYWx1ZUJ5VGltZXN0YW1wUHJlY2lzaW9uKHZhbHVlLCB0aGlzLmlzUmFuZ2UsIHRoaXMudGh5VGltZXN0YW1wUHJlY2lzaW9uKTtcbiAgICB9XG59XG4iXX0=
@@ -24,7 +24,7 @@ export class ThyDatePicker extends BasePicker {
24
24
  multi: true,
25
25
  useExisting: forwardRef(() => ThyDatePicker)
26
26
  }
27
- ], exportAs: ["thyDatePicker"], usesInheritance: true, ngImport: i0, template: "<thy-picker\n #thyPicker\n [isRange]=\"isRange\"\n [value]=\"thyValue\"\n [flexible]=\"flexible\"\n [flexibleDateGranularity]=\"flexibleDateGranularity\"\n (valueChange)=\"onInputValueChange($event)\"\n [open]=\"thyOpen\"\n [disabled]=\"thyDisabled\"\n [format]=\"thyFormat\"\n [mode]=\"thyMode\"\n [allowClear]=\"thyAllowClear\"\n [className]=\"thyOriginClassName\"\n [autoFocus]=\"thyAutoFocus\"\n [placeholder]=\"thyPlaceHolder\"\n [readonly]=\"thyReadonly\"\n [size]=\"thySize\"\n [suffixIcon]=\"thySuffixIcon\"\n [placement]=\"thyPlacement\"\n [hasBackdrop]=\"thyHasBackdrop\"\n (openChange)=\"onOpenChange($event)\"\n (blur)=\"onBlur($event)\"\n (inputChange)=\"onInputDate($event)\">\n @if (isShowDatePopup) {\n <date-popup\n [attr.tabindex]=\"-1\"\n [isRange]=\"isRange\"\n [showWeek]=\"showWeek\"\n [panelMode]=\"panelMode\"\n [flexible]=\"flexible\"\n [flexibleDateGranularity]=\"flexibleDateGranularity\"\n [defaultPickerValue]=\"thyDefaultPickerValue\"\n (panelModeChange)=\"thyOnPanelChange.emit($event)\"\n (showTimePickerChange)=\"onShowTimePickerChange($event)\"\n [value]=\"thyValue\"\n (valueChange)=\"onValueChange($event)\"\n (calendarChange)=\"onCalendarChange($event)\"\n [showTime]=\"thyShowTime\"\n [mustShowTime]=\"withTime\"\n [format]=\"thyFormat\"\n [dateRender]=\"thyDateRender\"\n [disabledDate]=\"thyDisabledDate\"\n [minDate]=\"thyMinDate\"\n [maxDate]=\"thyMaxDate\"\n [showShortcut]=\"thyShowShortcut\"\n [shortcutPresets]=\"shortcutPresets\"\n [shortcutPosition]=\"shortcutPosition\"\n [timestampPrecision]=\"thyTimestampPrecision\"\n (dateValueChange)=\"onDateValueChange($event)\"\n [className]=\"thyPanelClassName\"\n (resultOk)=\"onResultOk()\"></date-popup>\n }\n</thy-picker>\n", dependencies: [{ kind: "component", type: ThyPicker, selector: "thy-picker", inputs: ["isRange", "open", "disabled", "placeholder", "readonly", "allowClear", "autoFocus", "className", "size", "suffixIcon", "placement", "flexible", "mode", "hasBackdrop", "format", "flexibleDateGranularity", "value"], outputs: ["blur", "valueChange", "openChange", "inputChange"], exportAs: ["thyPicker"] }, { kind: "component", type: DatePopup, selector: "date-popup", inputs: ["isRange", "showWeek", "format", "disabledDate", "minDate", "maxDate", "showToday", "showTime", "mustShowTime", "dateRender", "className", "panelMode", "value", "defaultPickerValue", "showShortcut", "shortcutPresets", "shortcutPosition", "flexible", "flexibleDateGranularity", "timestampPrecision"], outputs: ["panelModeChange", "calendarChange", "valueChange", "resultOk", "showTimePickerChange", "dateValueChange"], exportAs: ["datePopup"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
27
+ ], exportAs: ["thyDatePicker"], usesInheritance: true, ngImport: i0, template: "<thy-picker\n #thyPicker\n [isRange]=\"isRange\"\n [value]=\"thyValue\"\n [flexible]=\"flexible\"\n [flexibleDateGranularity]=\"flexibleDateGranularity\"\n (valueChange)=\"onInputValueChange($event)\"\n [open]=\"thyOpen\"\n [disabled]=\"thyDisabled\"\n [format]=\"thyFormat\"\n [separator]=\"separator()\"\n [mode]=\"thyMode\"\n [allowClear]=\"thyAllowClear\"\n [className]=\"thyOriginClassName\"\n [autoFocus]=\"thyAutoFocus\"\n [placeholder]=\"thyPlaceHolder\"\n [readonly]=\"thyReadonly\"\n [size]=\"thySize\"\n [suffixIcon]=\"thySuffixIcon\"\n [placement]=\"thyPlacement\"\n [hasBackdrop]=\"thyHasBackdrop\"\n (openChange)=\"onOpenChange($event)\"\n (blur)=\"onBlur($event)\"\n (inputChange)=\"onInputDate($event)\">\n @if (isShowDatePopup) {\n <date-popup\n [attr.tabindex]=\"-1\"\n [isRange]=\"isRange\"\n [showWeek]=\"showWeek\"\n [panelMode]=\"panelMode\"\n [flexible]=\"flexible\"\n [flexibleDateGranularity]=\"flexibleDateGranularity\"\n [defaultPickerValue]=\"thyDefaultPickerValue\"\n (panelModeChange)=\"thyOnPanelChange.emit($event)\"\n (showTimePickerChange)=\"onShowTimePickerChange($event)\"\n [value]=\"thyValue\"\n (valueChange)=\"onValueChange($event)\"\n (calendarChange)=\"onCalendarChange($event)\"\n [showTime]=\"thyShowTime\"\n [mustShowTime]=\"withTime\"\n [format]=\"thyFormat\"\n [dateRender]=\"thyDateRender\"\n [disabledDate]=\"thyDisabledDate\"\n [minDate]=\"thyMinDate\"\n [maxDate]=\"thyMaxDate\"\n [showShortcut]=\"thyShowShortcut\"\n [shortcutPresets]=\"shortcutPresets\"\n [shortcutPosition]=\"shortcutPosition\"\n [timestampPrecision]=\"thyTimestampPrecision\"\n (dateValueChange)=\"onDateValueChange($event)\"\n [className]=\"thyPanelClassName\"\n (resultOk)=\"onResultOk()\"></date-popup>\n }\n</thy-picker>\n", dependencies: [{ kind: "component", type: ThyPicker, selector: "thy-picker", inputs: ["isRange", "open", "disabled", "placeholder", "readonly", "allowClear", "autoFocus", "className", "size", "suffixIcon", "placement", "flexible", "mode", "hasBackdrop", "separator", "format", "flexibleDateGranularity", "value"], outputs: ["blur", "valueChange", "openChange", "inputChange"], exportAs: ["thyPicker"] }, { kind: "component", type: DatePopup, selector: "date-popup", inputs: ["isRange", "showWeek", "format", "disabledDate", "minDate", "maxDate", "showToday", "showTime", "mustShowTime", "dateRender", "className", "panelMode", "value", "defaultPickerValue", "showShortcut", "shortcutPresets", "shortcutPosition", "flexible", "flexibleDateGranularity", "timestampPrecision"], outputs: ["panelModeChange", "calendarChange", "valueChange", "resultOk", "showTimePickerChange", "dateValueChange"], exportAs: ["datePopup"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
28
28
  }
29
29
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyDatePicker, decorators: [{
30
30
  type: Component,
@@ -36,6 +36,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
36
36
  }
37
37
  ], standalone: true, imports: [ThyPicker, DatePopup], host: {
38
38
  '[attr.tabindex]': 'tabIndex'
39
- }, template: "<thy-picker\n #thyPicker\n [isRange]=\"isRange\"\n [value]=\"thyValue\"\n [flexible]=\"flexible\"\n [flexibleDateGranularity]=\"flexibleDateGranularity\"\n (valueChange)=\"onInputValueChange($event)\"\n [open]=\"thyOpen\"\n [disabled]=\"thyDisabled\"\n [format]=\"thyFormat\"\n [mode]=\"thyMode\"\n [allowClear]=\"thyAllowClear\"\n [className]=\"thyOriginClassName\"\n [autoFocus]=\"thyAutoFocus\"\n [placeholder]=\"thyPlaceHolder\"\n [readonly]=\"thyReadonly\"\n [size]=\"thySize\"\n [suffixIcon]=\"thySuffixIcon\"\n [placement]=\"thyPlacement\"\n [hasBackdrop]=\"thyHasBackdrop\"\n (openChange)=\"onOpenChange($event)\"\n (blur)=\"onBlur($event)\"\n (inputChange)=\"onInputDate($event)\">\n @if (isShowDatePopup) {\n <date-popup\n [attr.tabindex]=\"-1\"\n [isRange]=\"isRange\"\n [showWeek]=\"showWeek\"\n [panelMode]=\"panelMode\"\n [flexible]=\"flexible\"\n [flexibleDateGranularity]=\"flexibleDateGranularity\"\n [defaultPickerValue]=\"thyDefaultPickerValue\"\n (panelModeChange)=\"thyOnPanelChange.emit($event)\"\n (showTimePickerChange)=\"onShowTimePickerChange($event)\"\n [value]=\"thyValue\"\n (valueChange)=\"onValueChange($event)\"\n (calendarChange)=\"onCalendarChange($event)\"\n [showTime]=\"thyShowTime\"\n [mustShowTime]=\"withTime\"\n [format]=\"thyFormat\"\n [dateRender]=\"thyDateRender\"\n [disabledDate]=\"thyDisabledDate\"\n [minDate]=\"thyMinDate\"\n [maxDate]=\"thyMaxDate\"\n [showShortcut]=\"thyShowShortcut\"\n [shortcutPresets]=\"shortcutPresets\"\n [shortcutPosition]=\"shortcutPosition\"\n [timestampPrecision]=\"thyTimestampPrecision\"\n (dateValueChange)=\"onDateValueChange($event)\"\n [className]=\"thyPanelClassName\"\n (resultOk)=\"onResultOk()\"></date-popup>\n }\n</thy-picker>\n" }]
39
+ }, template: "<thy-picker\n #thyPicker\n [isRange]=\"isRange\"\n [value]=\"thyValue\"\n [flexible]=\"flexible\"\n [flexibleDateGranularity]=\"flexibleDateGranularity\"\n (valueChange)=\"onInputValueChange($event)\"\n [open]=\"thyOpen\"\n [disabled]=\"thyDisabled\"\n [format]=\"thyFormat\"\n [separator]=\"separator()\"\n [mode]=\"thyMode\"\n [allowClear]=\"thyAllowClear\"\n [className]=\"thyOriginClassName\"\n [autoFocus]=\"thyAutoFocus\"\n [placeholder]=\"thyPlaceHolder\"\n [readonly]=\"thyReadonly\"\n [size]=\"thySize\"\n [suffixIcon]=\"thySuffixIcon\"\n [placement]=\"thyPlacement\"\n [hasBackdrop]=\"thyHasBackdrop\"\n (openChange)=\"onOpenChange($event)\"\n (blur)=\"onBlur($event)\"\n (inputChange)=\"onInputDate($event)\">\n @if (isShowDatePopup) {\n <date-popup\n [attr.tabindex]=\"-1\"\n [isRange]=\"isRange\"\n [showWeek]=\"showWeek\"\n [panelMode]=\"panelMode\"\n [flexible]=\"flexible\"\n [flexibleDateGranularity]=\"flexibleDateGranularity\"\n [defaultPickerValue]=\"thyDefaultPickerValue\"\n (panelModeChange)=\"thyOnPanelChange.emit($event)\"\n (showTimePickerChange)=\"onShowTimePickerChange($event)\"\n [value]=\"thyValue\"\n (valueChange)=\"onValueChange($event)\"\n (calendarChange)=\"onCalendarChange($event)\"\n [showTime]=\"thyShowTime\"\n [mustShowTime]=\"withTime\"\n [format]=\"thyFormat\"\n [dateRender]=\"thyDateRender\"\n [disabledDate]=\"thyDisabledDate\"\n [minDate]=\"thyMinDate\"\n [maxDate]=\"thyMaxDate\"\n [showShortcut]=\"thyShowShortcut\"\n [shortcutPresets]=\"shortcutPresets\"\n [shortcutPosition]=\"shortcutPosition\"\n [timestampPrecision]=\"thyTimestampPrecision\"\n (dateValueChange)=\"onDateValueChange($event)\"\n [className]=\"thyPanelClassName\"\n (resultOk)=\"onResultOk()\"></date-popup>\n }\n</thy-picker>\n" }]
40
40
  }], ctorParameters: () => [] });
41
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2RhdGUtcGlja2VyL2RhdGUtcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9kYXRlLXBpY2tlci9iYXNlLXBpY2tlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUN2RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUM5RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBRS9DOzs7O0dBSUc7QUFtQkgsTUFBTSxPQUFPLGFBQWMsU0FBUSxVQUFVO0lBS3pDO1FBQ0ksS0FBSyxFQUFFLENBQUM7UUFMWixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBRVIsaUJBQVksR0FBRyxlQUFlLEVBQUUsQ0FBQztRQUlyQyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQ3RELENBQUM7K0dBUlEsYUFBYTttR0FBYixhQUFhLHFIQWJYO1lBQ1A7Z0JBQ0ksT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsS0FBSyxFQUFFLElBQUk7Z0JBQ1gsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxhQUFhLENBQUM7YUFDL0M7U0FDSiw4RUN4QkwsbTFEQXFEQSw0Q0QzQmMsU0FBUywrV0FBRSxTQUFTOzs0RkFLckIsYUFBYTtrQkFsQnpCLFNBQVM7c0NBQ1csdUJBQXVCLENBQUMsTUFBTSxZQUNyQyxpQkFBaUIsWUFDakIsZUFBZSxhQUVkO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLEtBQUssRUFBRSxJQUFJOzRCQUNYLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLGNBQWMsQ0FBQzt5QkFDL0M7cUJBQ0osY0FDVyxJQUFJLFdBQ1AsQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLFFBQ3pCO3dCQUNGLGlCQUFpQixFQUFFLFVBQVU7cUJBQ2hDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgZm9yd2FyZFJlZiwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IHVzZUhvc3RSZW5kZXJlciB9IGZyb20gJ0B0ZXRoeXMvY2RrL2RvbSc7XG5cbmltcG9ydCB7IEJhc2VQaWNrZXIgfSBmcm9tICcuL2Jhc2UtcGlja2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEYXRlUG9wdXAgfSBmcm9tICcuL2xpYi9wb3B1cHMvZGF0ZS1wb3B1cC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGh5UGlja2VyIH0gZnJvbSAnLi9waWNrZXIuY29tcG9uZW50JztcblxuLyoqXG4gKiDml6XmnJ/pgInmi6nnu4Tku7ZcbiAqIEBuYW1lIHRoeS1kYXRlLXBpY2tlclxuICogQG9yZGVyIDEwXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHNlbGVjdG9yOiAndGh5LWRhdGUtcGlja2VyJyxcbiAgICBleHBvcnRBczogJ3RoeURhdGVQaWNrZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9iYXNlLXBpY2tlci5jb21wb25lbnQuaHRtbCcsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUaHlEYXRlUGlja2VyKVxuICAgICAgICB9XG4gICAgXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtUaHlQaWNrZXIsIERhdGVQb3B1cF0sXG4gICAgaG9zdDoge1xuICAgICAgICAnW2F0dHIudGFiaW5kZXhdJzogJ3RhYkluZGV4J1xuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgVGh5RGF0ZVBpY2tlciBleHRlbmRzIEJhc2VQaWNrZXIgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIGlzUmFuZ2UgPSBmYWxzZTtcblxuICAgIHByaXZhdGUgaG9zdFJlbmRlcmVyID0gdXNlSG9zdFJlbmRlcmVyKCk7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICAgICAgdGhpcy5ob3N0UmVuZGVyZXIuYWRkQ2xhc3MoJ3RoeS1jYWxlbmRhci1waWNrZXInKTtcbiAgICB9XG59XG4iLCI8dGh5LXBpY2tlclxuICAjdGh5UGlja2VyXG4gIFtpc1JhbmdlXT1cImlzUmFuZ2VcIlxuICBbdmFsdWVdPVwidGh5VmFsdWVcIlxuICBbZmxleGlibGVdPVwiZmxleGlibGVcIlxuICBbZmxleGlibGVEYXRlR3JhbnVsYXJpdHldPVwiZmxleGlibGVEYXRlR3JhbnVsYXJpdHlcIlxuICAodmFsdWVDaGFuZ2UpPVwib25JbnB1dFZhbHVlQ2hhbmdlKCRldmVudClcIlxuICBbb3Blbl09XCJ0aHlPcGVuXCJcbiAgW2Rpc2FibGVkXT1cInRoeURpc2FibGVkXCJcbiAgW2Zvcm1hdF09XCJ0aHlGb3JtYXRcIlxuICBbbW9kZV09XCJ0aHlNb2RlXCJcbiAgW2FsbG93Q2xlYXJdPVwidGh5QWxsb3dDbGVhclwiXG4gIFtjbGFzc05hbWVdPVwidGh5T3JpZ2luQ2xhc3NOYW1lXCJcbiAgW2F1dG9Gb2N1c109XCJ0aHlBdXRvRm9jdXNcIlxuICBbcGxhY2Vob2xkZXJdPVwidGh5UGxhY2VIb2xkZXJcIlxuICBbcmVhZG9ubHldPVwidGh5UmVhZG9ubHlcIlxuICBbc2l6ZV09XCJ0aHlTaXplXCJcbiAgW3N1ZmZpeEljb25dPVwidGh5U3VmZml4SWNvblwiXG4gIFtwbGFjZW1lbnRdPVwidGh5UGxhY2VtZW50XCJcbiAgW2hhc0JhY2tkcm9wXT1cInRoeUhhc0JhY2tkcm9wXCJcbiAgKG9wZW5DaGFuZ2UpPVwib25PcGVuQ2hhbmdlKCRldmVudClcIlxuICAoYmx1cik9XCJvbkJsdXIoJGV2ZW50KVwiXG4gIChpbnB1dENoYW5nZSk9XCJvbklucHV0RGF0ZSgkZXZlbnQpXCI+XG4gIEBpZiAoaXNTaG93RGF0ZVBvcHVwKSB7XG4gICAgPGRhdGUtcG9wdXBcbiAgICAgIFthdHRyLnRhYmluZGV4XT1cIi0xXCJcbiAgICAgIFtpc1JhbmdlXT1cImlzUmFuZ2VcIlxuICAgICAgW3Nob3dXZWVrXT1cInNob3dXZWVrXCJcbiAgICAgIFtwYW5lbE1vZGVdPVwicGFuZWxNb2RlXCJcbiAgICAgIFtmbGV4aWJsZV09XCJmbGV4aWJsZVwiXG4gICAgICBbZmxleGlibGVEYXRlR3JhbnVsYXJpdHldPVwiZmxleGlibGVEYXRlR3JhbnVsYXJpdHlcIlxuICAgICAgW2RlZmF1bHRQaWNrZXJWYWx1ZV09XCJ0aHlEZWZhdWx0UGlja2VyVmFsdWVcIlxuICAgICAgKHBhbmVsTW9kZUNoYW5nZSk9XCJ0aHlPblBhbmVsQ2hhbmdlLmVtaXQoJGV2ZW50KVwiXG4gICAgICAoc2hvd1RpbWVQaWNrZXJDaGFuZ2UpPVwib25TaG93VGltZVBpY2tlckNoYW5nZSgkZXZlbnQpXCJcbiAgICAgIFt2YWx1ZV09XCJ0aHlWYWx1ZVwiXG4gICAgICAodmFsdWVDaGFuZ2UpPVwib25WYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgIChjYWxlbmRhckNoYW5nZSk9XCJvbkNhbGVuZGFyQ2hhbmdlKCRldmVudClcIlxuICAgICAgW3Nob3dUaW1lXT1cInRoeVNob3dUaW1lXCJcbiAgICAgIFttdXN0U2hvd1RpbWVdPVwid2l0aFRpbWVcIlxuICAgICAgW2Zvcm1hdF09XCJ0aHlGb3JtYXRcIlxuICAgICAgW2RhdGVSZW5kZXJdPVwidGh5RGF0ZVJlbmRlclwiXG4gICAgICBbZGlzYWJsZWREYXRlXT1cInRoeURpc2FibGVkRGF0ZVwiXG4gICAgICBbbWluRGF0ZV09XCJ0aHlNaW5EYXRlXCJcbiAgICAgIFttYXhEYXRlXT1cInRoeU1heERhdGVcIlxuICAgICAgW3Nob3dTaG9ydGN1dF09XCJ0aHlTaG93U2hvcnRjdXRcIlxuICAgICAgW3Nob3J0Y3V0UHJlc2V0c109XCJzaG9ydGN1dFByZXNldHNcIlxuICAgICAgW3Nob3J0Y3V0UG9zaXRpb25dPVwic2hvcnRjdXRQb3NpdGlvblwiXG4gICAgICBbdGltZXN0YW1wUHJlY2lzaW9uXT1cInRoeVRpbWVzdGFtcFByZWNpc2lvblwiXG4gICAgICAoZGF0ZVZhbHVlQ2hhbmdlKT1cIm9uRGF0ZVZhbHVlQ2hhbmdlKCRldmVudClcIlxuICAgICAgW2NsYXNzTmFtZV09XCJ0aHlQYW5lbENsYXNzTmFtZVwiXG4gICAgKHJlc3VsdE9rKT1cIm9uUmVzdWx0T2soKVwiPjwvZGF0ZS1wb3B1cD5cbiAgfVxuPC90aHktcGlja2VyPlxuIl19
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2RhdGUtcGlja2VyL2RhdGUtcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9kYXRlLXBpY2tlci9iYXNlLXBpY2tlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUN2RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUM5RCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBRS9DOzs7O0dBSUc7QUFtQkgsTUFBTSxPQUFPLGFBQWMsU0FBUSxVQUFVO0lBS3pDO1FBQ0ksS0FBSyxFQUFFLENBQUM7UUFMWixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBRVIsaUJBQVksR0FBRyxlQUFlLEVBQUUsQ0FBQztRQUlyQyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0lBQ3RELENBQUM7K0dBUlEsYUFBYTttR0FBYixhQUFhLHFIQWJYO1lBQ1A7Z0JBQ0ksT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsS0FBSyxFQUFFLElBQUk7Z0JBQ1gsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxhQUFhLENBQUM7YUFDL0M7U0FDSiw4RUN4QkwsbzNEQXNEQSw0Q0Q1QmMsU0FBUyw0WEFBRSxTQUFTOzs0RkFLckIsYUFBYTtrQkFsQnpCLFNBQVM7c0NBQ1csdUJBQXVCLENBQUMsTUFBTSxZQUNyQyxpQkFBaUIsWUFDakIsZUFBZSxhQUVkO3dCQUNQOzRCQUNJLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLEtBQUssRUFBRSxJQUFJOzRCQUNYLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLGNBQWMsQ0FBQzt5QkFDL0M7cUJBQ0osY0FDVyxJQUFJLFdBQ1AsQ0FBQyxTQUFTLEVBQUUsU0FBUyxDQUFDLFFBQ3pCO3dCQUNGLGlCQUFpQixFQUFFLFVBQVU7cUJBQ2hDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgZm9yd2FyZFJlZiwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IHVzZUhvc3RSZW5kZXJlciB9IGZyb20gJ0B0ZXRoeXMvY2RrL2RvbSc7XG5cbmltcG9ydCB7IEJhc2VQaWNrZXIgfSBmcm9tICcuL2Jhc2UtcGlja2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEYXRlUG9wdXAgfSBmcm9tICcuL2xpYi9wb3B1cHMvZGF0ZS1wb3B1cC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGh5UGlja2VyIH0gZnJvbSAnLi9waWNrZXIuY29tcG9uZW50JztcblxuLyoqXG4gKiDml6XmnJ/pgInmi6nnu4Tku7ZcbiAqIEBuYW1lIHRoeS1kYXRlLXBpY2tlclxuICogQG9yZGVyIDEwXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHNlbGVjdG9yOiAndGh5LWRhdGUtcGlja2VyJyxcbiAgICBleHBvcnRBczogJ3RoeURhdGVQaWNrZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9iYXNlLXBpY2tlci5jb21wb25lbnQuaHRtbCcsXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUaHlEYXRlUGlja2VyKVxuICAgICAgICB9XG4gICAgXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtUaHlQaWNrZXIsIERhdGVQb3B1cF0sXG4gICAgaG9zdDoge1xuICAgICAgICAnW2F0dHIudGFiaW5kZXhdJzogJ3RhYkluZGV4J1xuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgVGh5RGF0ZVBpY2tlciBleHRlbmRzIEJhc2VQaWNrZXIgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIGlzUmFuZ2UgPSBmYWxzZTtcblxuICAgIHByaXZhdGUgaG9zdFJlbmRlcmVyID0gdXNlSG9zdFJlbmRlcmVyKCk7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICAgICAgdGhpcy5ob3N0UmVuZGVyZXIuYWRkQ2xhc3MoJ3RoeS1jYWxlbmRhci1waWNrZXInKTtcbiAgICB9XG59XG4iLCI8dGh5LXBpY2tlclxuICAjdGh5UGlja2VyXG4gIFtpc1JhbmdlXT1cImlzUmFuZ2VcIlxuICBbdmFsdWVdPVwidGh5VmFsdWVcIlxuICBbZmxleGlibGVdPVwiZmxleGlibGVcIlxuICBbZmxleGlibGVEYXRlR3JhbnVsYXJpdHldPVwiZmxleGlibGVEYXRlR3JhbnVsYXJpdHlcIlxuICAodmFsdWVDaGFuZ2UpPVwib25JbnB1dFZhbHVlQ2hhbmdlKCRldmVudClcIlxuICBbb3Blbl09XCJ0aHlPcGVuXCJcbiAgW2Rpc2FibGVkXT1cInRoeURpc2FibGVkXCJcbiAgW2Zvcm1hdF09XCJ0aHlGb3JtYXRcIlxuICBbc2VwYXJhdG9yXT1cInNlcGFyYXRvcigpXCJcbiAgW21vZGVdPVwidGh5TW9kZVwiXG4gIFthbGxvd0NsZWFyXT1cInRoeUFsbG93Q2xlYXJcIlxuICBbY2xhc3NOYW1lXT1cInRoeU9yaWdpbkNsYXNzTmFtZVwiXG4gIFthdXRvRm9jdXNdPVwidGh5QXV0b0ZvY3VzXCJcbiAgW3BsYWNlaG9sZGVyXT1cInRoeVBsYWNlSG9sZGVyXCJcbiAgW3JlYWRvbmx5XT1cInRoeVJlYWRvbmx5XCJcbiAgW3NpemVdPVwidGh5U2l6ZVwiXG4gIFtzdWZmaXhJY29uXT1cInRoeVN1ZmZpeEljb25cIlxuICBbcGxhY2VtZW50XT1cInRoeVBsYWNlbWVudFwiXG4gIFtoYXNCYWNrZHJvcF09XCJ0aHlIYXNCYWNrZHJvcFwiXG4gIChvcGVuQ2hhbmdlKT1cIm9uT3BlbkNoYW5nZSgkZXZlbnQpXCJcbiAgKGJsdXIpPVwib25CbHVyKCRldmVudClcIlxuICAoaW5wdXRDaGFuZ2UpPVwib25JbnB1dERhdGUoJGV2ZW50KVwiPlxuICBAaWYgKGlzU2hvd0RhdGVQb3B1cCkge1xuICAgIDxkYXRlLXBvcHVwXG4gICAgICBbYXR0ci50YWJpbmRleF09XCItMVwiXG4gICAgICBbaXNSYW5nZV09XCJpc1JhbmdlXCJcbiAgICAgIFtzaG93V2Vla109XCJzaG93V2Vla1wiXG4gICAgICBbcGFuZWxNb2RlXT1cInBhbmVsTW9kZVwiXG4gICAgICBbZmxleGlibGVdPVwiZmxleGlibGVcIlxuICAgICAgW2ZsZXhpYmxlRGF0ZUdyYW51bGFyaXR5XT1cImZsZXhpYmxlRGF0ZUdyYW51bGFyaXR5XCJcbiAgICAgIFtkZWZhdWx0UGlja2VyVmFsdWVdPVwidGh5RGVmYXVsdFBpY2tlclZhbHVlXCJcbiAgICAgIChwYW5lbE1vZGVDaGFuZ2UpPVwidGh5T25QYW5lbENoYW5nZS5lbWl0KCRldmVudClcIlxuICAgICAgKHNob3dUaW1lUGlja2VyQ2hhbmdlKT1cIm9uU2hvd1RpbWVQaWNrZXJDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICBbdmFsdWVdPVwidGh5VmFsdWVcIlxuICAgICAgKHZhbHVlQ2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAoY2FsZW5kYXJDaGFuZ2UpPVwib25DYWxlbmRhckNoYW5nZSgkZXZlbnQpXCJcbiAgICAgIFtzaG93VGltZV09XCJ0aHlTaG93VGltZVwiXG4gICAgICBbbXVzdFNob3dUaW1lXT1cIndpdGhUaW1lXCJcbiAgICAgIFtmb3JtYXRdPVwidGh5Rm9ybWF0XCJcbiAgICAgIFtkYXRlUmVuZGVyXT1cInRoeURhdGVSZW5kZXJcIlxuICAgICAgW2Rpc2FibGVkRGF0ZV09XCJ0aHlEaXNhYmxlZERhdGVcIlxuICAgICAgW21pbkRhdGVdPVwidGh5TWluRGF0ZVwiXG4gICAgICBbbWF4RGF0ZV09XCJ0aHlNYXhEYXRlXCJcbiAgICAgIFtzaG93U2hvcnRjdXRdPVwidGh5U2hvd1Nob3J0Y3V0XCJcbiAgICAgIFtzaG9ydGN1dFByZXNldHNdPVwic2hvcnRjdXRQcmVzZXRzXCJcbiAgICAgIFtzaG9ydGN1dFBvc2l0aW9uXT1cInNob3J0Y3V0UG9zaXRpb25cIlxuICAgICAgW3RpbWVzdGFtcFByZWNpc2lvbl09XCJ0aHlUaW1lc3RhbXBQcmVjaXNpb25cIlxuICAgICAgKGRhdGVWYWx1ZUNoYW5nZSk9XCJvbkRhdGVWYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgIFtjbGFzc05hbWVdPVwidGh5UGFuZWxDbGFzc05hbWVcIlxuICAgICAgKHJlc3VsdE9rKT1cIm9uUmVzdWx0T2soKVwiPjwvZGF0ZS1wb3B1cD5cbiAgfVxuPC90aHktcGlja2VyPlxuIl19
@@ -8,6 +8,7 @@ export const DEFAULT_DATE_PICKER_CONFIG = {
8
8
  shortcutPosition: 'left',
9
9
  showShortcut: false,
10
10
  weekStartsOn: 1,
11
+ separator: '~',
11
12
  timestampPrecision: 'seconds',
12
13
  shortcutDatePresets: () => {
13
14
  return [
@@ -53,6 +54,7 @@ export function useDatePickerDefaultConfig() {
53
54
  shortcutPosition: 'left',
54
55
  showShortcut: false,
55
56
  weekStartsOn: 1,
57
+ separator: '~',
56
58
  timestampPrecision: 'seconds',
57
59
  shortcutDatePresets: () => {
58
60
  return [
@@ -100,4 +102,4 @@ export const THY_DATE_PICKER_CONFIG_PROVIDER = {
100
102
  useFactory: useDatePickerDefaultConfig,
101
103
  deps: [ThyI18nService]
102
104
  };
103
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1waWNrZXIuY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2RhdGUtcGlja2VyL2RhdGUtcGlja2VyLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3ZELE9BQU8sRUFBRSxZQUFZLEVBQXVCLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BGLE9BQU8sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBZ0IsTUFBTSxpQkFBaUIsQ0FBQztBQVk5Rzs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUF3QjtJQUMzRCxnQkFBZ0IsRUFBRSxNQUFNO0lBQ3hCLFlBQVksRUFBRSxLQUFLO0lBQ25CLFlBQVksRUFBRSxDQUFDO0lBQ2Ysa0JBQWtCLEVBQUUsU0FBUztJQUM3QixtQkFBbUIsRUFBRSxHQUFHLEVBQUU7UUFDdEIsT0FBTztZQUNIO2dCQUNJLEtBQUssRUFBRSxJQUFJO2dCQUNYLEtBQUssRUFBRSxVQUFVLENBQUMsSUFBSSxRQUFRLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRTthQUN4RDtZQUNEO2dCQUNJLEtBQUssRUFBRSxJQUFJO2dCQUNYLEtBQUssRUFBRSxVQUFVLENBQUMsT0FBTyxDQUFDLElBQUksUUFBUSxFQUFFLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLEVBQUU7YUFDcEU7WUFDRDtnQkFDSSxLQUFLLEVBQUUsSUFBSTtnQkFDWCxLQUFLLEVBQUUsV0FBVyxDQUFDLFFBQVEsQ0FBQyxJQUFJLFFBQVEsRUFBRSxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsWUFBWSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxF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RSxDQUFDO2lCQUNwRjtnQkFDRDtvQkFDSSxLQUFLLEVBQUUsTUFBTSxFQUFFLENBQUMsY0FBYztvQkFDOUIsS0FBSyxFQUFFLENBQUMsSUFBSSxRQUFRLEVBQUUsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsSUFBSSxRQUFRLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztpQkFDckY7Z0JBQ0Q7b0JBQ0ksS0FBSyxFQUFFLE1BQU0sRUFBRSxDQUFDLFdBQVc7b0JBQzNCLEtBQUssRUFBRTt3QkFDSCxJQUFJLFFBQVEsRUFBRSxDQUFDLFdBQVcsQ0FBQyxFQUFFLFlBQVksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRTt3QkFDekQsSUFBSSxRQUFRLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBRSxZQUFZLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUU7cUJBQzFEO2lCQUNKO2dCQUNEO29CQUNJLEtBQUssRUFBRSxNQUFNLEVBQUUsQ0FBQyxZQUFZO29CQUM1QixLQUFLLEVBQUUsQ0FBQyxJQUFJLFFBQVEsRUFBRSxDQUFDLFlBQVksRUFBRSxDQUFDLE9BQU8sRUFBRSxFQUFFLElBQUksUUFBUSxFQUFFLENBQUMsVUFBVSxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUM7aUJBQzFGO2FBQ0osQ0FBQztRQUNOLENBQUM7S0FDSixDQUFDO0FBQ04sQ0FBQztBQUVELE1BQU0sQ0FBQyxNQUFNLCtCQUErQixHQUFHO0lBQzNDLE9BQU8sRUFBRSxzQkFBc0I7SUFDL0IsVUFBVSxFQUFFLDBCQUEwQjtJQUN0QyxJQUFJLEVBQUUsQ0FBQyxjQUFjLENBQUM7Q0FDekIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGlvblRva2VuLCBTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGluamVjdExvY2FsZSwgVGh5RGF0ZVBpY2tlckxvY2FsZSwgVGh5STE4blNlcnZpY2UgfSBmcm9tICduZ3gtdGV0aHlzL2kxOG4nO1xuaW1wb3J0IHsgYWRkRGF5cywgYWRkV2Vla3MsIHN0YXJ0T2ZEYXksIHN0YXJ0T2ZXZWVrLCBzdWJEYXlzLCBUaW55RGF0ZSwgV2Vla0RheUluZGV4IH0gZnJvbSAnbmd4LXRldGh5cy91dGlsJztcbmltcG9ydCB7IENvbXBhdGlibGVQcmVzZXRzLCBUaHlTaG9ydGN1dFBvc2l0aW9uIH0gZnJvbSAnLi9zdGFuZGFyZC10eXBlcyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgVGh5RGF0ZVBpY2tlckNvbmZpZyB7XG4gICAgc2hvcnRjdXRQb3NpdGlvbjogVGh5U2hvcnRjdXRQb3NpdGlvbjtcbiAgICBzaG9ydGN1dERhdGVQcmVzZXRzOiBDb21wYXRpYmxlUHJlc2V0cztcbiAgICBzaG9ydGN1dFJhbmdlc1ByZXNldHM6IENvbXBhdGlibGVQcmVzZXRzO1xuICAgIHNob3dTaG9ydGN1dDogYm9vbGVhbjtcbiAgICB3ZWVrU3RhcnRzT246IFdlZWtEYXlJbmRleDtcbiAgICB0aW1lc3RhbXBQcmVjaXNpb246ICdzZWNvbmRzJyB8ICdtaWxsaXNlY29uZHMnO1xufVxuXG4vKipcbiAqIEBkZXByZWNhdGVkXG4gKi9cbmV4cG9ydCBjb25zdCBERUZBVUxUX0RBVEVfUElDS0VSX0NPTkZJRzogVGh5RGF0ZVBpY2tlckNvbmZpZyA9IHtcbiAgICBzaG9ydGN1dFBvc2l0aW9uOiAnbGVmdCcsXG4gICAgc2hvd1Nob3J0Y3V0OiBmYWxzZSxcbiAgICB3ZWVrU3RhcnRzT246IDEsXG4gICAgdGltZXN0YW1wUHJlY2lzaW9uOiAnc2Vjb25kcycsXG4gICAgc2hvcnRjdXREYXRlUHJlc2V0czogKCkgPT4ge1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHRpdGxlOiAn5LuK5aSpJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogc3RhcnRPZkRheShuZXcgVGlueURhdGUoKS5nZXRUaW1lKCkpLmdldFRpbWUoKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0aXRsZTogJ+aYjuWkqScsXG4gICAgICAgICAgICAgICAgdmFsdWU6IHN0YXJ0T2ZEYXkoYWRkRGF5cyhuZXcgVGlueURhdGUoKS5nZXRUaW1lKCksIDEpKS5nZXRUaW1lKClcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdGl0bGU6ICfkuIvlkagnLFxuICAgICAgICAgICAgICAgIHZhbHVlOiBzdGFydE9mV2VlayhhZGRXZWVrcyhuZXcgVGlueURhdGUoKS5nZXRUaW1lKCksIDEpLCB7IHdlZWtTdGFydHNPbjogMSB9KS5nZXRUaW1lKClcbiAgICAgICAgICAgIH1cbiAgICAgICAgXTtcbiAgICB9LFxuICAgIHNob3J0Y3V0UmFuZ2VzUHJlc2V0czogKCkgPT4ge1xuICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHRpdGxlOiAn5pyA6L+RIDcg5aSpJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogW25ldyBUaW55RGF0ZShzdWJEYXlzKG5ldyBUaW55RGF0ZSgpLmdldFRpbWUoKSwgNikpLmdldFRpbWUoKSwgbmV3IFRpbnlEYXRlKCkuZW5kT2ZEYXkoKS5nZXRUaW1lKCldXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHRpdGxlOiAn5pyA6L+RIDMwIOWkqScsXG4gICAgICAgICAgICAgICAgdmFsdWU6IFtuZXcgVGlueURhdGUoc3ViRGF5cyhuZXcgVGlueURhdGUoKS5nZXRUaW1lKCksIDI5KSkuZ2V0VGltZSgpLCBuZXcgVGlueURhdGUoKS5lbmRPZkRheSgpLmdldFRpbWUoKV1cbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdGl0bGU6ICfmnKzlkagnLFxuICAgICAgICAgICAgICAgIHZhbHVlOiBbbmV3IFRpbnlEYXRlKCkuc3RhcnRPZldlZWsoeyB3ZWVrU3RhcnRzT246IDEgfSkuZ2V0VGltZSgpLCBuZXcgVGlueURhdGUoKS5lbmRPZldlZWsoeyB3ZWVrU3RhcnRzT246IDEgfSkuZ2V0VGltZSgpXVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0aXRsZTogJ+acrOaciCcsXG4gICAgICAgICAgICAgICAgdmFsdWU6IFtuZXcgVGlueURhdGUoKS5zdGFydE9mTW9udGgoKS5nZXRUaW1lKCksIG5ldyBUaW55RGF0ZSgpLmVuZE9mTW9udGgoKS5nZXRUaW1lKCldXG4gICAgICAgICAgICB9XG4gICAgICAgIF07XG4gICAgfVxufTtcblxuZXhwb3J0IGNvbnN0IFRIWV9EQVRFX1BJQ0tFUl9DT05GSUcgPSBuZXcgSW5qZWN0aW9uVG9rZW48VGh5RGF0ZVBpY2tlckNvbmZpZz4oJ3RoeS1kYXRlLXBpY2tlci1jb25maWcnKTtcblxuZXhwb3J0IGZ1bmN0aW9uIHVzZURhdGVQaWNrZXJEZWZhdWx0Q29uZmlnKCk6IFRoeURhdGVQaWNrZXJDb25maWcge1xuICAgIGNvbnN0IGxvY2FsZTogU2lnbmFsPFRoeURhdGVQaWNrZXJMb2NhbGU+ID0gaW5qZWN0TG9jYWxlKCdkYXRlUGlja2VyJyk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgICBzaG9ydGN1dFBvc2l0aW9uOiAnbGVmdCcsXG4gICAgICAgIHNob3dTaG9ydGN1dDogZmFsc2UsXG4gICAgICAgIHdlZWtTdGFydHNPbjogMSxcbiAgICAgICAgdGltZXN0YW1wUHJlY2lzaW9uOiAnc2Vjb25kcycsXG4gICAgICAgIHNob3J0Y3V0RGF0ZVByZXNldHM6ICgpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0aXRsZTogbG9jYWxlKCkudG9kYXksXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiBzdGFydE9mRGF5KG5ldyBUaW55RGF0ZSgpLm5hdGl2ZURhdGUpLmdldFRpbWUoKVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0aXRsZTogbG9jYWxlKCkudG9tb3Jyb3csXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiBzdGFydE9mRGF5KGFkZERheXMobmV3IFRpbnlEYXRlKCkubmF0aXZlRGF0ZSwgMSkpLmdldFRpbWUoKVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0aXRsZTogbG9jYWxlKCkubmV4dFdlZWssXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiBzdGFydE9mV2VlayhhZGRXZWVrcyhuZXcgVGlueURhdGUoKS5uYXRpdmVEYXRlLCAxKSwgeyB3ZWVrU3RhcnRzT246IDEgfSkuZ2V0VGltZSgpXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXTtcbiAgICAgICAgfSxcbiAgICAgICAgc2hvcnRjdXRSYW5nZXNQcmVzZXRzOiAoKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6IGxvY2FsZSgpLmxhc3RTZXZlbkRheXMsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiBbbmV3IFRpbnlEYXRlKCkuc3ViRGF5cyg2KS5nZXRUaW1lKCksIG5ldyBUaW55RGF0ZSgpLmVuZE9mRGF5KCkuZ2V0VGltZSgpXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0aXRsZTogbG9jYWxlKCkubGFzdFRoaXJ0eURheXMsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiBbbmV3IFRpbnlEYXRlKCkuc3ViRGF5cygyOSkuZ2V0VGltZSgpLCBuZXcgVGlueURhdGUoKS5lbmRPZkRheSgpLmdldFRpbWUoKV1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6IGxvY2FsZSgpLmN1cnJlbnRXZWVrLFxuICAgICAgICAgICAgICAgICAgICB2YWx1ZTogW1xuICAgICAgICAgICAgICAgICAgICAgICAgbmV3IFRpbnlEYXRlKCkuc3RhcnRPZldlZWsoeyB3ZWVrU3RhcnRzT246IDEgfSkuZ2V0VGltZSgpLFxuICAgICAgICAgICAgICAgICAgICAgICAgbmV3IFRpbnlEYXRlKCkuZW5kT2ZXZWVrKHsgd2Vla1N0YXJ0c09uOiAxIH0pLmdldFRpbWUoKVxuICAgICAgICAgICAgICAgICAgICBdXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiBsb2NhbGUoKS5jdXJyZW50TW9udGgsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiBbbmV3IFRpbnlEYXRlKCkuc3RhcnRPZk1vbnRoKCkuZ2V0VGltZSgpLCBuZXcgVGlueURhdGUoKS5lbmRPZk1vbnRoKCkuZ2V0VGltZSgpXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIF07XG4gICAgICAgIH1cbiAgICB9O1xufVxuXG5leHBvcnQgY29uc3QgVEhZX0RBVEVfUElDS0VSX0NPTkZJR19QUk9WSURFUiA9IHtcbiAgICBwcm92aWRlOiBUSFlfREFURV9QSUNLRVJfQ09ORklHLFxuICAgIHVzZUZhY3Rvcnk6IHVzZURhdGVQaWNrZXJEZWZhdWx0Q29uZmlnLFxuICAgIGRlcHM6IFtUaHlJMThuU2VydmljZV1cbn07XG4iXX0=
105
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1waWNrZXIuY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2RhdGUtcGlja2VyL2RhdGUtcGlja2VyLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFVLE1BQU0sZUFBZSxDQUFDO0FBQ3ZELE9BQU8sRUFBRSxZQUFZLEVBQXVCLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BGLE9BQU8sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBZ0IsTUFBTSxpQkFBaUIsQ0FBQztBQWE5Rzs7R0FFRztBQUNILE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUF3QjtJQUMzRCxnQkFBZ0IsRUFBRSxNQUFNO0lBQ3hCLFlBQVksRUFBRSxLQUFLO0lBQ25CLFlBQVksRUFBRSxDQUFDO0lBQ2YsU0FBUyxFQUFFLEdBQUc7SUFDZCxrQkFBa0IsRUFBRSxTQUFTO0lBQzdCLG1CQUFtQixFQUFFLEdBQUcsRUFBRTtRQUN0QixPQUFPO1lBQ0g7Z0JBQ0ksS0FBSyxFQUFFLElBQUk7Z0JBQ1gsS0FBSyxFQUFFLFVBQVUsQ0FBQyxJQUFJLFFBQVEsRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFO2FBQ3hEO1lBQ0Q7Z0JBQ0ksS0FBSyxFQUFFLElBQUk7Z0JBQ1gsS0FBSyxFQUFFLFVBQVUsQ0FBQyxPQUFPLENBQUMsSUFBSSxRQUFRLEVBQUUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRTthQUNwRTtZQUNEO2dCQUNJLEtBQUssRUFBRSxJQUFJO2dCQUNYLEtBQUssRUFBRSxXQUFXLENBQUMsUUFBUSxDQUFDLElBQUksUUFBUSxFQUFFLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsRUFBRSxZQUFZLEVBQUUsQ0FBQyxF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SSxRQUFRLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztpQkFDcEY7Z0JBQ0Q7b0JBQ0ksS0FBSyxFQUFFLE1BQU0sRUFBRSxDQUFDLGNBQWM7b0JBQzlCLEtBQUssRUFBRSxDQUFDLElBQUksUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLElBQUksUUFBUSxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUM7aUJBQ3JGO2dCQUNEO29CQUNJLEtBQUssRUFBRSxNQUFNLEVBQUUsQ0FBQyxXQUFXO29CQUMzQixLQUFLLEVBQUU7d0JBQ0gsSUFBSSxRQUFRLEVBQUUsQ0FBQyxXQUFXLENBQUMsRUFBRSxZQUFZLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUU7d0JBQ3pELElBQUksUUFBUSxFQUFFLENBQUMsU0FBUyxDQUFDLEVBQUUsWUFBWSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsT0FBTyxFQUFFO3FCQUMxRDtpQkFDSjtnQkFDRDtvQkFDSSxLQUFLLEVBQUUsTUFBTSxFQUFFLENBQUMsWUFBWTtvQkFDNUIsS0FBSyxFQUFFLENBQUMsSUFBSSxRQUFRLEVBQUUsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxPQUFPLEVBQUUsRUFBRSxJQUFJLFFBQVEsRUFBRSxDQUFDLFVBQVUsRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDO2lCQUMxRjthQUNKLENBQUM7UUFDTixDQUFDO0tBQ0osQ0FBQztBQUNOLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSwrQkFBK0IsR0FBRztJQUMzQyxPQUFPLEVBQUUsc0JBQXNCO0lBQy9CLFVBQVUsRUFBRSwwQkFBMEI7SUFDdEMsSUFBSSxFQUFFLENBQUMsY0FBYyxDQUFDO0NBQ3pCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiwgU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBpbmplY3RMb2NhbGUsIFRoeURhdGVQaWNrZXJMb2NhbGUsIFRoeUkxOG5TZXJ2aWNlIH0gZnJvbSAnbmd4LXRldGh5cy9pMThuJztcbmltcG9ydCB7IGFkZERheXMsIGFkZFdlZWtzLCBzdGFydE9mRGF5LCBzdGFydE9mV2Vlaywgc3ViRGF5cywgVGlueURhdGUsIFdlZWtEYXlJbmRleCB9IGZyb20gJ25neC10ZXRoeXMvdXRpbCc7XG5pbXBvcnQgeyBDb21wYXRpYmxlUHJlc2V0cywgVGh5U2hvcnRjdXRQb3NpdGlvbiB9IGZyb20gJy4vc3RhbmRhcmQtdHlwZXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFRoeURhdGVQaWNrZXJDb25maWcge1xuICAgIHNob3J0Y3V0UG9zaXRpb246IFRoeVNob3J0Y3V0UG9zaXRpb247XG4gICAgc2hvcnRjdXREYXRlUHJlc2V0czogQ29tcGF0aWJsZVByZXNldHM7XG4gICAgc2hvcnRjdXRSYW5nZXNQcmVzZXRzOiBDb21wYXRpYmxlUHJlc2V0cztcbiAgICBzaG93U2hvcnRjdXQ6IGJvb2xlYW47XG4gICAgd2Vla1N0YXJ0c09uOiBXZWVrRGF5SW5kZXg7XG4gICAgc2VwYXJhdG9yOiBzdHJpbmc7XG4gICAgdGltZXN0YW1wUHJlY2lzaW9uOiAnc2Vjb25kcycgfCAnbWlsbGlzZWNvbmRzJztcbn1cblxuLyoqXG4gKiBAZGVwcmVjYXRlZFxuICovXG5leHBvcnQgY29uc3QgREVGQVVMVF9EQVRFX1BJQ0tFUl9DT05GSUc6IFRoeURhdGVQaWNrZXJDb25maWcgPSB7XG4gICAgc2hvcnRjdXRQb3NpdGlvbjogJ2xlZnQnLFxuICAgIHNob3dTaG9ydGN1dDogZmFsc2UsXG4gICAgd2Vla1N0YXJ0c09uOiAxLFxuICAgIHNlcGFyYXRvcjogJ34nLFxuICAgIHRpbWVzdGFtcFByZWNpc2lvbjogJ3NlY29uZHMnLFxuICAgIHNob3J0Y3V0RGF0ZVByZXNldHM6ICgpID0+IHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0aXRsZTogJ+S7iuWkqScsXG4gICAgICAgICAgICAgICAgdmFsdWU6IHN0YXJ0T2ZEYXkobmV3IFRpbnlEYXRlKCkuZ2V0VGltZSgpKS5nZXRUaW1lKClcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdGl0bGU6ICfmmI7lpKknLFxuICAgICAgICAgICAgICAgIHZhbHVlOiBzdGFydE9mRGF5KGFkZERheXMobmV3IFRpbnlEYXRlKCkuZ2V0VGltZSgpLCAxKSkuZ2V0VGltZSgpXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHRpdGxlOiAn5LiL5ZGoJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogc3RhcnRPZldlZWsoYWRkV2Vla3MobmV3IFRpbnlEYXRlKCkuZ2V0VGltZSgpLCAxKSwgeyB3ZWVrU3RhcnRzT246IDEgfSkuZ2V0VGltZSgpXG4gICAgICAgICAgICB9XG4gICAgICAgIF07XG4gICAgfSxcbiAgICBzaG9ydGN1dFJhbmdlc1ByZXNldHM6ICgpID0+IHtcbiAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0aXRsZTogJ+acgOi/kSA3IOWkqScsXG4gICAgICAgICAgICAgICAgdmFsdWU6IFtuZXcgVGlueURhdGUoc3ViRGF5cyhuZXcgVGlueURhdGUoKS5nZXRUaW1lKCksIDYpKS5nZXRUaW1lKCksIG5ldyBUaW55RGF0ZSgpLmVuZE9mRGF5KCkuZ2V0VGltZSgpXVxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB0aXRsZTogJ+acgOi/kSAzMCDlpKknLFxuICAgICAgICAgICAgICAgIHZhbHVlOiBbbmV3IFRpbnlEYXRlKHN1YkRheXMobmV3IFRpbnlEYXRlKCkuZ2V0VGltZSgpLCAyOSkpLmdldFRpbWUoKSwgbmV3IFRpbnlEYXRlKCkuZW5kT2ZEYXkoKS5nZXRUaW1lKCldXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHRpdGxlOiAn5pys5ZGoJyxcbiAgICAgICAgICAgICAgICB2YWx1ZTogW25ldyBUaW55RGF0ZSgpLnN0YXJ0T2ZXZWVrKHsgd2Vla1N0YXJ0c09uOiAxIH0pLmdldFRpbWUoKSwgbmV3IFRpbnlEYXRlKCkuZW5kT2ZXZWVrKHsgd2Vla1N0YXJ0c09uOiAxIH0pLmdldFRpbWUoKV1cbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgdGl0bGU6ICfmnKzmnIgnLFxuICAgICAgICAgICAgICAgIHZhbHVlOiBbbmV3IFRpbnlEYXRlKCkuc3RhcnRPZk1vbnRoKCkuZ2V0VGltZSgpLCBuZXcgVGlueURhdGUoKS5lbmRPZk1vbnRoKCkuZ2V0VGltZSgpXVxuICAgICAgICAgICAgfVxuICAgICAgICBdO1xuICAgIH1cbn07XG5cbmV4cG9ydCBjb25zdCBUSFlfREFURV9QSUNLRVJfQ09ORklHID0gbmV3IEluamVjdGlvblRva2VuPFRoeURhdGVQaWNrZXJDb25maWc+KCd0aHktZGF0ZS1waWNrZXItY29uZmlnJyk7XG5cbmV4cG9ydCBmdW5jdGlvbiB1c2VEYXRlUGlja2VyRGVmYXVsdENvbmZpZygpOiBUaHlEYXRlUGlja2VyQ29uZmlnIHtcbiAgICBjb25zdCBsb2NhbGU6IFNpZ25hbDxUaHlEYXRlUGlja2VyTG9jYWxlPiA9IGluamVjdExvY2FsZSgnZGF0ZVBpY2tlcicpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgICAgc2hvcnRjdXRQb3NpdGlvbjogJ2xlZnQnLFxuICAgICAgICBzaG93U2hvcnRjdXQ6IGZhbHNlLFxuICAgICAgICB3ZWVrU3RhcnRzT246IDEsXG4gICAgICAgIHNlcGFyYXRvcjogJ34nLFxuICAgICAgICB0aW1lc3RhbXBQcmVjaXNpb246ICdzZWNvbmRzJyxcbiAgICAgICAgc2hvcnRjdXREYXRlUHJlc2V0czogKCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiBsb2NhbGUoKS50b2RheSxcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IHN0YXJ0T2ZEYXkobmV3IFRpbnlEYXRlKCkubmF0aXZlRGF0ZSkuZ2V0VGltZSgpXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiBsb2NhbGUoKS50b21vcnJvdyxcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IHN0YXJ0T2ZEYXkoYWRkRGF5cyhuZXcgVGlueURhdGUoKS5uYXRpdmVEYXRlLCAxKSkuZ2V0VGltZSgpXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiBsb2NhbGUoKS5uZXh0V2VlayxcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IHN0YXJ0T2ZXZWVrKGFkZFdlZWtzKG5ldyBUaW55RGF0ZSgpLm5hdGl2ZURhdGUsIDEpLCB7IHdlZWtTdGFydHNPbjogMSB9KS5nZXRUaW1lKClcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICBdO1xuICAgICAgICB9LFxuICAgICAgICBzaG9ydGN1dFJhbmdlc1ByZXNldHM6ICgpID0+IHtcbiAgICAgICAgICAgIHJldHVybiBbXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0aXRsZTogbG9jYWxlKCkubGFzdFNldmVuRGF5cyxcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IFtuZXcgVGlueURhdGUoKS5zdWJEYXlzKDYpLmdldFRpbWUoKSwgbmV3IFRpbnlEYXRlKCkuZW5kT2ZEYXkoKS5nZXRUaW1lKCldXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiBsb2NhbGUoKS5sYXN0VGhpcnR5RGF5cyxcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IFtuZXcgVGlueURhdGUoKS5zdWJEYXlzKDI5KS5nZXRUaW1lKCksIG5ldyBUaW55RGF0ZSgpLmVuZE9mRGF5KCkuZ2V0VGltZSgpXVxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB0aXRsZTogbG9jYWxlKCkuY3VycmVudFdlZWssXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiBbXG4gICAgICAgICAgICAgICAgICAgICAgICBuZXcgVGlueURhdGUoKS5zdGFydE9mV2Vlayh7IHdlZWtTdGFydHNPbjogMSB9KS5nZXRUaW1lKCksXG4gICAgICAgICAgICAgICAgICAgICAgICBuZXcgVGlueURhdGUoKS5lbmRPZldlZWsoeyB3ZWVrU3RhcnRzT246IDEgfSkuZ2V0VGltZSgpXG4gICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6IGxvY2FsZSgpLmN1cnJlbnRNb250aCxcbiAgICAgICAgICAgICAgICAgICAgdmFsdWU6IFtuZXcgVGlueURhdGUoKS5zdGFydE9mTW9udGgoKS5nZXRUaW1lKCksIG5ldyBUaW55RGF0ZSgpLmVuZE9mTW9udGgoKS5nZXRUaW1lKCldXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgXTtcbiAgICAgICAgfVxuICAgIH07XG59XG5cbmV4cG9ydCBjb25zdCBUSFlfREFURV9QSUNLRVJfQ09ORklHX1BST1ZJREVSID0ge1xuICAgIHByb3ZpZGU6IFRIWV9EQVRFX1BJQ0tFUl9DT05GSUcsXG4gICAgdXNlRmFjdG9yeTogdXNlRGF0ZVBpY2tlckRlZmF1bHRDb25maWcsXG4gICAgZGVwczogW1RoeUkxOG5TZXJ2aWNlXVxufTtcbiJdfQ==