mis-crystal-design-system 18.2.7 → 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.
@@ -20,6 +20,7 @@ export interface IDatePickerData {
20
20
  datesDisabled: string[];
21
21
  selectedRangeLabel?: string;
22
22
  showPrevMonth?: boolean;
23
+ enableDateTabbing?: boolean;
23
24
  dateChange: (date: ISelectedDatesConfig) => void;
24
25
  close: () => void;
25
26
  }
@@ -13,6 +13,7 @@ export declare class TzDaterangepickerDirective {
13
13
  datesDisabled: import("@angular/core").InputSignal<string[]>;
14
14
  selectedRangeLabel: import("@angular/core").InputSignal<string>;
15
15
  dateMessages: import("@angular/core").InputSignal<IDatePickerToastText[]>;
16
+ enableDateTabbing: import("@angular/core").InputSignal<boolean>;
16
17
  positionX: import("@angular/core").InputSignal<"start" | "center" | "end">;
17
18
  positionY: import("@angular/core").InputSignal<"center" | "top" | "bottom">;
18
19
  offsetX: import("@angular/core").InputSignal<number>;
@@ -28,5 +29,5 @@ export declare class TzDaterangepickerDirective {
28
29
  applyDate(dates: ISelectedDatesConfig): void;
29
30
  close(): void;
30
31
  static ɵfac: i0.ɵɵFactoryDeclaration<TzDaterangepickerDirective, [{ optional: true; self: true; }, null, null, null]>;
31
- static ɵdir: i0.ɵɵDirectiveDeclaration<TzDaterangepickerDirective, "input[misTzDrp]", never, { "dpConfig": { "alias": "dpConfig"; "required": false; "isSignal": true; }; "selectedDates": { "alias": "selectedDates"; "required": false; "isSignal": true; }; "datesDisabled": { "alias": "datesDisabled"; "required": false; "isSignal": true; }; "selectedRangeLabel": { "alias": "selectedRangeLabel"; "required": false; "isSignal": true; }; "dateMessages": { "alias": "dateMessages"; "required": false; "isSignal": true; }; "positionX": { "alias": "positionX"; "required": false; "isSignal": true; }; "positionY": { "alias": "positionY"; "required": false; "isSignal": true; }; "offsetX": { "alias": "offsetX"; "required": false; "isSignal": true; }; "offsetY": { "alias": "offsetY"; "required": false; "isSignal": true; }; }, { "dateChange": "dateChange"; }, never, never, false, never>;
32
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TzDaterangepickerDirective, "input[misTzDrp]", never, { "dpConfig": { "alias": "dpConfig"; "required": false; "isSignal": true; }; "selectedDates": { "alias": "selectedDates"; "required": false; "isSignal": true; }; "datesDisabled": { "alias": "datesDisabled"; "required": false; "isSignal": true; }; "selectedRangeLabel": { "alias": "selectedRangeLabel"; "required": false; "isSignal": true; }; "dateMessages": { "alias": "dateMessages"; "required": false; "isSignal": true; }; "enableDateTabbing": { "alias": "enableDateTabbing"; "required": false; "isSignal": true; }; "positionX": { "alias": "positionX"; "required": false; "isSignal": true; }; "positionY": { "alias": "positionY"; "required": false; "isSignal": true; }; "offsetX": { "alias": "offsetX"; "required": false; "isSignal": true; }; "offsetY": { "alias": "offsetY"; "required": false; "isSignal": true; }; }, { "dateChange": "dateChange"; }, never, never, false, never>;
32
33
  }
@@ -66,6 +66,12 @@ export declare class TzDrpContainerComponent implements OnInit {
66
66
  isDatesValid: import("@angular/core").Signal<boolean>;
67
67
  selectedItemLabel: import("@angular/core").Signal<string>;
68
68
  isWeeklyMode: import("@angular/core").Signal<boolean>;
69
+ enableDateTabbing: import("@angular/core").Signal<boolean>;
70
+ readonly anchorIndexLeft: import("@angular/core").Signal<number>;
71
+ readonly anchorIndexRight: import("@angular/core").Signal<number>;
72
+ readonly prevMonthAriaLabel: import("@angular/core").Signal<string>;
73
+ readonly nextMonthAriaLabel: import("@angular/core").Signal<string>;
74
+ readonly applyButtonAriaLabel: import("@angular/core").Signal<string>;
69
75
  currentMonthDates: import("@angular/core").Signal<ICurrentMonthDates[]>;
70
76
  nextMonthDates: import("@angular/core").Signal<ICurrentMonthDates[]>;
71
77
  startHour: import("@angular/core").Signal<number>;
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJwLWNvbmZpZy5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL2RhdGVyYW5nZXBpY2tlcl92Mi9tb2RlbHMvZHJwLWNvbmZpZy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2VsZWN0aW9uTW9kZSB9IGZyb20gXCIuLi9kYXRlcmFuZ2VwaWNrZXItY29uc3RhbnRzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSURhdGVQaWNrZXJDb25maWcge1xuICBmb3JtYXQ6IHN0cmluZztcbiAgbWluRGF0ZTogc3RyaW5nO1xuICBtYXhEYXRlOiBzdHJpbmc7XG4gIHRpbWV6b25lOiBzdHJpbmc7XG4gIG1heEFsbG93ZWRSYW5nZT86IG51bWJlcjtcbiAgcmFuZ2VzPzogUmFuZ2VJdGVtW107XG4gIGVuYWJsZVRpbWU/OiBib29sZWFuO1xuICBzZWxlY3Rpb25Nb2RlPzogU2VsZWN0aW9uTW9kZTtcbn1cbmV4cG9ydCBpbnRlcmZhY2UgUmFuZ2VJdGVte1xuICBsYWJlbDogc3RyaW5nO1xuICB2YWx1ZTogW0RhdGUsIERhdGVdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElEYXRlUGlja2VyRGF0YSB7XG4gIGRhdGVzOiBJU2VsZWN0ZWREYXRlc0NvbmZpZztcbiAgZHBDb25maWc6IFBhcnRpYWw8SURhdGVQaWNrZXJDb25maWc+O1xuICBtZXNzYWdlczogSURhdGVQaWNrZXJUb2FzdFRleHRbXTtcbiAgZGF0ZXNEaXNhYmxlZDogc3RyaW5nW107XG4gIHNlbGVjdGVkUmFuZ2VMYWJlbD86IHN0cmluZztcbiAgc2hvd1ByZXZNb250aD86IGJvb2xlYW47XG4gIGRhdGVDaGFuZ2U6IChkYXRlOiBJU2VsZWN0ZWREYXRlc0NvbmZpZykgPT4gdm9pZDtcbiAgY2xvc2U6ICgpID0+IHZvaWQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVdlZWtEYXkge1xuICBsYWJlbDogc3RyaW5nO1xuICBpc0N1cnJlbnREYXk6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSURhdGVQaWNrZXJUb2FzdFRleHQge1xuICBkYXRlOiBzdHJpbmc7XG4gIG1lc3NhZ2U6IHN0cmluZztcbn1cblxuZXhwb3J0IHR5cGUgSUN1cnJlbnRNb250aCA9XG4gIHwgXCJKYW51YXJ5XCJcbiAgfCBcIkZlYnJ1YXJ5XCJcbiAgfCBcIk1hcmNoXCJcbiAgfCBcIkFwcmlsXCJcbiAgfCBcIk1heVwiXG4gIHwgXCJKdW5lXCJcbiAgfCBcIkp1bHlcIlxuICB8IFwiQXVndXN0XCJcbiAgfCBcIlNlcHRlbWJlclwiXG4gIHwgXCJPY3RvYmVyXCJcbiAgfCBcIk5vdmVtYmVyXCJcbiAgfCBcIkRlY2VtYmVyXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUN1cnJlbnRNb250aERhdGVzIHtcbiAgZGF0ZTogbnVtYmVyO1xuICB3ZWVrRGF5OiBudW1iZXI7XG4gIGlzQ3VycmVudERheT86IGJvb2xlYW47XG4gIGlzU2VsZWN0ZWRTdGFydERheT86IGJvb2xlYW47XG4gIGlzU2VsZWN0ZWRFbmREYXk/OiBib29sZWFuO1xuICBpc0Rpc2FibGVkRGF5PzogYm9vbGVhbjtcbiAgaW5SYW5nZURheT86IGJvb2xlYW47XG4gIHRvYXN0TWVzc2FnZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJU2VsZWN0ZWREYXRlc0NvbmZpZyB7XG4gIHN0YXJ0RGF0ZTogc3RyaW5nIHwgbnVsbDtcbiAgZW5kRGF0ZTogc3RyaW5nIHwgbnVsbDtcbiAgc2VsZWN0ZWRSYW5nZUxhYmVsPzogc3RyaW5nO1xufVxuIl19
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJwLWNvbmZpZy5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL2RhdGVyYW5nZXBpY2tlcl92Mi9tb2RlbHMvZHJwLWNvbmZpZy5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2VsZWN0aW9uTW9kZSB9IGZyb20gXCIuLi9kYXRlcmFuZ2VwaWNrZXItY29uc3RhbnRzXCI7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSURhdGVQaWNrZXJDb25maWcge1xuICBmb3JtYXQ6IHN0cmluZztcbiAgbWluRGF0ZTogc3RyaW5nO1xuICBtYXhEYXRlOiBzdHJpbmc7XG4gIHRpbWV6b25lOiBzdHJpbmc7XG4gIG1heEFsbG93ZWRSYW5nZT86IG51bWJlcjtcbiAgcmFuZ2VzPzogUmFuZ2VJdGVtW107XG4gIGVuYWJsZVRpbWU/OiBib29sZWFuO1xuICBzZWxlY3Rpb25Nb2RlPzogU2VsZWN0aW9uTW9kZTtcbn1cbmV4cG9ydCBpbnRlcmZhY2UgUmFuZ2VJdGVte1xuICBsYWJlbDogc3RyaW5nO1xuICB2YWx1ZTogW0RhdGUsIERhdGVdO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElEYXRlUGlja2VyRGF0YSB7XG4gIGRhdGVzOiBJU2VsZWN0ZWREYXRlc0NvbmZpZztcbiAgZHBDb25maWc6IFBhcnRpYWw8SURhdGVQaWNrZXJDb25maWc+O1xuICBtZXNzYWdlczogSURhdGVQaWNrZXJUb2FzdFRleHRbXTtcbiAgZGF0ZXNEaXNhYmxlZDogc3RyaW5nW107XG4gIHNlbGVjdGVkUmFuZ2VMYWJlbD86IHN0cmluZztcbiAgc2hvd1ByZXZNb250aD86IGJvb2xlYW47XG4gIGVuYWJsZURhdGVUYWJiaW5nPzogYm9vbGVhbjtcbiAgZGF0ZUNoYW5nZTogKGRhdGU6IElTZWxlY3RlZERhdGVzQ29uZmlnKSA9PiB2b2lkO1xuICBjbG9zZTogKCkgPT4gdm9pZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJV2Vla0RheSB7XG4gIGxhYmVsOiBzdHJpbmc7XG4gIGlzQ3VycmVudERheTogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJRGF0ZVBpY2tlclRvYXN0VGV4dCB7XG4gIGRhdGU6IHN0cmluZztcbiAgbWVzc2FnZTogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBJQ3VycmVudE1vbnRoID1cbiAgfCBcIkphbnVhcnlcIlxuICB8IFwiRmVicnVhcnlcIlxuICB8IFwiTWFyY2hcIlxuICB8IFwiQXByaWxcIlxuICB8IFwiTWF5XCJcbiAgfCBcIkp1bmVcIlxuICB8IFwiSnVseVwiXG4gIHwgXCJBdWd1c3RcIlxuICB8IFwiU2VwdGVtYmVyXCJcbiAgfCBcIk9jdG9iZXJcIlxuICB8IFwiTm92ZW1iZXJcIlxuICB8IFwiRGVjZW1iZXJcIjtcblxuZXhwb3J0IGludGVyZmFjZSBJQ3VycmVudE1vbnRoRGF0ZXMge1xuICBkYXRlOiBudW1iZXI7XG4gIHdlZWtEYXk6IG51bWJlcjtcbiAgaXNDdXJyZW50RGF5PzogYm9vbGVhbjtcbiAgaXNTZWxlY3RlZFN0YXJ0RGF5PzogYm9vbGVhbjtcbiAgaXNTZWxlY3RlZEVuZERheT86IGJvb2xlYW47XG4gIGlzRGlzYWJsZWREYXk/OiBib29sZWFuO1xuICBpblJhbmdlRGF5PzogYm9vbGVhbjtcbiAgdG9hc3RNZXNzYWdlPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElTZWxlY3RlZERhdGVzQ29uZmlnIHtcbiAgc3RhcnREYXRlOiBzdHJpbmcgfCBudWxsO1xuICBlbmREYXRlOiBzdHJpbmcgfCBudWxsO1xuICBzZWxlY3RlZFJhbmdlTGFiZWw/OiBzdHJpbmc7XG59XG4iXX0=
@@ -26,6 +26,7 @@ export class TzDaterangepickerDirective {
26
26
  this.datesDisabled = input([]);
27
27
  this.selectedRangeLabel = input('Custom Range');
28
28
  this.dateMessages = input([]);
29
+ this.enableDateTabbing = input(true);
29
30
  this.positionX = input("center");
30
31
  this.positionY = input("bottom");
31
32
  this.offsetX = input(0);
@@ -87,6 +88,7 @@ export class TzDaterangepickerDirective {
87
88
  dpConfig: this.dpConfig(),
88
89
  datesDisabled: this.datesDisabled(),
89
90
  selectedRangeLabel: currentSelectedRangeLabel,
91
+ enableDateTabbing: this.enableDateTabbing(),
90
92
  dateChange: this.applyDate.bind(this),
91
93
  close: this.close.bind(this)
92
94
  }
@@ -119,7 +121,7 @@ export class TzDaterangepickerDirective {
119
121
  static { this.ɵfac = function TzDaterangepickerDirective_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || TzDaterangepickerDirective)(i0.ɵɵdirectiveInject(i1.NgControl, 10), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i2.Overlay), i0.ɵɵdirectiveInject(i0.ViewContainerRef)); }; }
120
122
  static { this.ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: TzDaterangepickerDirective, selectors: [["input", "misTzDrp", ""]], hostBindings: function TzDaterangepickerDirective_HostBindings(rf, ctx) { if (rf & 1) {
121
123
  i0.ɵɵlistener("click", function TzDaterangepickerDirective_click_HostBindingHandler() { return ctx.toggleDatePicker(); })("keydown.enter", function TzDaterangepickerDirective_keydown_enter_HostBindingHandler() { return ctx.toggleDatePickerOnEnter(); })("keydown.esc", function TzDaterangepickerDirective_keydown_esc_HostBindingHandler() { return ctx.closeOnEsc(); });
122
- } }, inputs: { dpConfig: [1, "dpConfig"], selectedDates: [1, "selectedDates"], datesDisabled: [1, "datesDisabled"], selectedRangeLabel: [1, "selectedRangeLabel"], dateMessages: [1, "dateMessages"], positionX: [1, "positionX"], positionY: [1, "positionY"], offsetX: [1, "offsetX"], offsetY: [1, "offsetY"] }, outputs: { dateChange: "dateChange" } }); }
124
+ } }, inputs: { dpConfig: [1, "dpConfig"], selectedDates: [1, "selectedDates"], datesDisabled: [1, "datesDisabled"], selectedRangeLabel: [1, "selectedRangeLabel"], dateMessages: [1, "dateMessages"], enableDateTabbing: [1, "enableDateTabbing"], positionX: [1, "positionX"], positionY: [1, "positionY"], offsetX: [1, "offsetX"], offsetY: [1, "offsetY"] }, outputs: { dateChange: "dateChange" } }); }
123
125
  }
124
126
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TzDaterangepickerDirective, [{
125
127
  type: Directive,
@@ -140,4 +142,4 @@ export class TzDaterangepickerDirective {
140
142
  type: HostListener,
141
143
  args: ["keydown.esc"]
142
144
  }] }); })();
143
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHotZGF0ZXJhbmdlcGlja2VyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL2RhdGVyYW5nZXBpY2tlcl92Mi90ei1kYXRlcmFuZ2VwaWNrZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBVyxhQUFhLEVBQWMsTUFBTSxzQkFBc0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQW9CLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0gsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFMUUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0NBQStDLENBQUM7Ozs7QUFLeEYsTUFBTSxPQUFPLDBCQUEwQjtJQXdCckMsWUFDOEIsT0FBa0IsRUFDdEMsT0FBbUIsRUFDbkIsT0FBZ0IsRUFDaEIsZ0JBQWtDO1FBSGQsWUFBTyxHQUFQLE9BQU8sQ0FBVztRQUN0QyxZQUFPLEdBQVAsT0FBTyxDQUFZO1FBQ25CLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFDaEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQTNCNUMsc0JBQXNCO1FBQ3RCLGFBQVEsR0FBRyxLQUFLLENBQTZCO1lBQzNDLE1BQU0sRUFBRSxXQUFXO1lBQ25CLE9BQU8sRUFBRSxFQUFFO1lBQ1gsT0FBTyxFQUFFLEVBQUU7WUFDWCxlQUFlLEVBQUUsQ0FBQztZQUNsQixNQUFNLEVBQUUsRUFB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QjtZQUExQiwrRkFBQSxzQkFBa0IsSUFBUSxrR0FBMUIsNkJBQXlCLElBQUMsOEZBQTFCLGdCQUFZLElBQWM7OztpRkFBMUIsMEJBQTBCO2NBSHRDLFNBQVM7ZUFBQztnQkFDVCxRQUFRLEVBQUUsaUJBQWlCO2FBQzVCOztzQkEwQkksSUFBSTs7c0JBQUksUUFBUTttR0FPbkIsZ0JBQWdCO2tCQURmLFlBQVk7bUJBQUMsT0FBTztZQVVyQix1QkFBdUI7a0JBRHRCLFlBQVk7bUJBQUMsZUFBZTtZQVU3QixVQUFVO2tCQURULFlBQVk7bUJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE92ZXJsYXksIE92ZXJsYXlDb25maWcsIE92ZXJsYXlSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL292ZXJsYXlcIjtcbmltcG9ydCB7IENvbXBvbmVudFBvcnRhbCB9IGZyb20gXCJAYW5ndWxhci9jZGsvcG9ydGFsXCI7XG5pbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgSW5qZWN0b3IsIE9wdGlvbmFsLCBTZWxmLCBWaWV3Q29udGFpbmVyUmVmLCBpbnB1dCwgb3V0cHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE5nQ29udHJvbCB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgdGFrZSB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuaW1wb3J0IHsgZ2VuUG9zaXRpb25QYWlycyB9IGZyb20gXCJtaXMtY3J5c3RhbC1kZXNpZ24tc3lzdGVtL3V0aWxzXCI7XG5pbXBvcnQgeyBDT05UQUlORVJfREFUQSwgREFURV9GT1JNQVQgfSBmcm9tIFwiLi9kYXRlcmFuZ2VwaWNrZXItY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBJRGF0ZVBpY2tlckNvbmZpZywgSURhdGVQaWNrZXJUb2FzdFRleHQsIElTZWxlY3RlZERhdGVzQ29uZmlnIH0gZnJvbSBcIi4vbW9kZWxzL2RycC1jb25maWcubW9kZWxcIjtcbmltcG9ydCB7IFR6RHJwQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSBcIi4vdHotZHJwLWNvbnRhaW5lci90ei1kcnAtY29udGFpbmVyLmNvbXBvbmVudFwiO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6IFwiaW5wdXRbbWlzVHpEcnBdXCJcbn0pXG5leHBvcnQgY2xhc3MgVHpEYXRlcmFuZ2VwaWNrZXJEaXJlY3RpdmUge1xuICAvLyBTaWduYWwtYmFzZWQgaW5wdXRzXG4gIGRwQ29uZmlnID0gaW5wdXQ8UGFydGlhbDxJRGF0ZVBpY2tlckNvbmZpZz4+KHtcbiAgICBmb3JtYXQ6IERBVEVfRk9STUFULFxuICAgIG1pbkRhdGU6IFwiXCIsXG4gICAgbWF4RGF0ZTogXCJcIixcbiAgICBtYXhBbGxvd2VkUmFuZ2U6IDAsXG4gICAgcmFuZ2VzOiBbXVxuICB9KTtcbiAgc2VsZWN0ZWREYXRlcyA9IGlucHV0PElTZWxlY3RlZERhdGVzQ29uZmlnPih7IHN0YXJ0RGF0ZTogbnVsbCwgZW5kRGF0ZTogbnVsbCB9KTtcbiAgZGF0ZXNEaXNhYmxlZCA9IGlucHV0PHN0cmluZ1tdPihbXSk7XG4gIHNlbGVjdGVkUmFuZ2VMYWJlbCA9IGlucHV0PHN0cmluZz4oJ0N1c3RvbSBSYW5nZScpO1xuICBkYXRlTWVzc2FnZXMgPSBpbnB1dDxJRGF0ZVBpY2tlclRvYXN0VGV4dFtdPihbXSk7XG4gIHBvc2l0aW9uWCA9IGlucHV0PFwic3RhcnRcIiB8IFwiY2VudGVyXCIgfCBcImVuZFwiPihcImNlbnRlclwiKTtcbiAgcG9zaXRpb25ZID0gaW5wdXQ8XCJ0b3BcIiB8IFwiY2VudGVyXCIgfCBcImJvdHRvbVwiPihcImJvdHRvbVwiKTtcbiAgb2Zmc2V0WCA9IGlucHV0PG51bWJlcj4oMCk7XG4gIG9mZnNldFkgPSBpbnB1dDxudW1iZXI+KDApO1xuICBcbiAgLy8gU2lnbmFsLWJhc2VkIG91dHB1dFxuICBkYXRlQ2hhbmdlID0gb3V0cHV0PElTZWxlY3RlZERhdGVzQ29uZmlnPigpO1xuICBcbiAgcHJpdmF0ZSBvdmVybGF5UmVmOiBPdmVybGF5UmVmO1xuICBwcml2YXRlIGlzT3BlbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBTZWxmKCkgQE9wdGlvbmFsKCkgcHJpdmF0ZSBjb250cm9sOiBOZ0NvbnRyb2wsXG4gICAgcHJpdmF0ZSBlbGVtZW50OiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgb3ZlcmxheTogT3ZlcmxheSxcbiAgICBwcml2YXRlIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWZcbiAgKSB7fVxuXG4gIEBIb3N0TGlzdGVuZXIoXCJjbGlja1wiKVxuICB0b2dnbGVEYXRlUGlja2VyKCkge1xuICAgIGlmICh0aGlzLmlzT3Blbikge1xuICAgICAgdGhpcy5jbG9zZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm9wZW4oKTtcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKFwia2V5ZG93bi5lbnRlclwiKVxuICB0b2dnbGVEYXRlUGlja2VyT25FbnRlcigpIHtcbiAgICBpZiAodGhpcy5pc09wZW4pIHtcbiAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5vcGVuKCk7XG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcihcImtleWRvd24uZXNjXCIpXG4gIGNsb3NlT25Fc2MoKSB7XG4gICAgaWYgKHRoaXMuaXNPcGVuKSB7XG4gICAgICB0aGlzLmNsb3NlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBvcGVuKCkge1xuICAgIHRoaXMuaXNPcGVuID0gdHJ1ZTtcbiAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5vdmVybGF5XG4gICAgICAucG9zaXRpb24oKVxuICAgICAgLmZsZXhpYmxlQ29ubmVjdGVkVG8odGhpcy5lbGVtZW50KVxuICAgICAgLndpdGhQb3NpdGlvbnMoXG4gICAgICAgIGdlblBvc2l0aW9uUGFpcnMoXG4gICAgICAgICAge1xuICAgICAgICAgICAgcG9zaXRpb25YOiB0aGlzLnBvc2l0aW9uWCgpLFxuICAgICAgICAgICAgcG9zaXRpb25ZOiB0aGlzLnBvc2l0aW9uWSgpLFxuICAgICAgICAgICAgb2Zmc2V0WDogdGhpcy5vZmZzZXRYKCksXG4gICAgICAgICAgICBvZmZzZXRZOiB0aGlzLm9mZnNldFkoKVxuICAgICAgICAgIH0sXG4gICAgICAgICAgdHJ1ZVxuICAgICAgICApXG4gICAgICApXG4gICAgICAud2l0aFB1c2godHJ1ZSk7XG4gICAgY29uc3QgY29uZmlnID0gbmV3IE92ZXJsYXlDb25maWcoe1xuICAgICAgaGFzQmFja2Ryb3A6IHRydWUsXG4gICAgICBwb3NpdGlvblN0cmF0ZWd5LFxuICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMub3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLnJlcG9zaXRpb24oKSxcbiAgICAgIGJhY2tkcm9wQ2xhc3M6IFwiY2RrLW92ZXJsYXktdHJhbnNwYXJlbnQtYmFja2Ryb3BcIlxuICAgIH0pO1xuICAgIHRoaXMub3ZlcmxheVJlZiA9IHRoaXMub3ZlcmxheS5jcmVhdGUoY29uZmlnKTtcbiAgICBcbiAgICAvLyBHZXQgY3VycmVudCB2YWx1ZXMgYXQgdGhlIHRpbWUgb2Ygb3BlbmluZ1xuICAgIGNvbnN0IGN1cnJlbnRTZWxlY3RlZERhdGVzID0gdGhpcy5zZWxlY3RlZERhdGVzKCk7XG4gICAgY29uc3QgY3VycmVudFNlbGVjdGVkUmFuZ2VMYWJlbCA9IHRoaXMuc2VsZWN0ZWRSYW5nZUxhYmVsKCk7XG4gICAgXG4gICAgY29uc3QgdGVtcFJlZiA9IG5ldyBDb21wb25lbnRQb3J0YWwoXG4gICAgICBUekRycENvbnRhaW5lckNvbXBvbmVudCxcbiAgICAgIHRoaXMudmlld0NvbnRhaW5lclJlZixcbiAgICAgIEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IENPTlRBSU5FUl9EQVRBLFxuICAgICAgICAgICAgdXNlVmFsdWU6IHtcbiAgICAgICAgICAgICAgbWVzc2FnZXM6IHRoaXMuZGF0ZU1lc3NhZ2VzKCksXG4gICAgICAgICAgICAgIGRhdGVzOiBjdXJyZW50U2VsZWN0ZWREYXRlcyxcbiAgICAgICAgICAgICAgZHBDb25maWc6IHRoaXMuZHBDb25maWcoKSxcbiAgICAgICAgICAgICAgZGF0ZXNEaXNhYmxlZDogdGhpcy5kYXRlc0Rpc2FibGVkKCksXG4gICAgICAgICAgICAgIHNlbGVjdGVkUmFuZ2VMYWJlbDogY3VycmVudFNlbGVjdGVkUmFuZ2VMYWJlbCxcbiAgICAgICAgICAgICAgZGF0ZUNoYW5nZTogdGhpcy5hcHBseURhdGUuYmluZCh0aGlzKSxcbiAgICAgICAgICAgICAgY2xvc2U6IHRoaXMuY2xvc2UuYmluZCh0aGlzKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgXVxuICAgICAgfSlcbiAgICApO1xuICAgIHRoaXMub3ZlcmxheVJlZi5hdHRhY2godGVtcFJlZik7XG4gICAgdGhpcy5vdmVybGF5UmVmXG4gICAgICAuYmFja2Ryb3BDbGljaygpXG4gICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgYXBwbHlEYXRlKGRhdGVzOiBJU2VsZWN0ZWREYXRlc0NvbmZpZykge1xuICAgIC8vIElmIHNlbGVjdGVkUmFuZ2VMYWJlbCBpcyBwcmVzZW50IGluIHRoZSBkYXRlIG9iamVjdCwga2VlcCBpdCwgb3RoZXJ3aXNlIGl0J3MgYSBjdXN0b20gcmFuZ2VcbiAgICBjb25zdCByZXN1bHQgPSB7XG4gICAgICAuLi5kYXRlcyxcbiAgICAgIHNlbGVjdGVkUmFuZ2VMYWJlbDogZGF0ZXNbJ3NlbGVjdGVkUmFuZ2VMYWJlbCddIHx8ICdDdXN0b20gUmFuZ2UnXG4gICAgfTtcbiAgICB0aGlzLmRhdGVDaGFuZ2UuZW1pdChyZXN1bHQpO1xuICAgIHRoaXMuY29udHJvbD8uY29udHJvbC5wYXRjaFZhbHVlKHJlc3VsdCk7XG4gICAgdGhpcy5jbG9zZSgpO1xuICB9XG5cbiAgY2xvc2UoKSB7XG4gICAgdGhpcy5pc09wZW4gPSBmYWxzZTtcbiAgICB0aGlzLm92ZXJsYXlSZWYuZGV0YWNoKCk7XG4gICAgdGhpcy5vdmVybGF5UmVmLmRpc3Bvc2UoKTtcbiAgfVxufVxuIl19
145
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHotZGF0ZXJhbmdlcGlja2VyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL21pcy1jb21wb25lbnRzL2RhdGVyYW5nZXBpY2tlcl92Mi90ei1kYXRlcmFuZ2VwaWNrZXIuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBVyxhQUFhLEVBQWMsTUFBTSxzQkFBc0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQW9CLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0gsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFMUUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0NBQStDLENBQUM7Ozs7QUFLeEYsTUFBTSxPQUFPLDBCQUEwQjtJQXlCckMsWUFDOEIsT0FBa0IsRUFDdEMsT0FBbUIsRUFDbkIsT0FBZ0IsRUFDaEIsZ0JBQWtDO1FBSGQsWUFBTyxHQUFQLE9BQU8sQ0FBVztRQUN0QyxZQUFPLEdBQVAsT0FBTyxDQUFZO1FBQ25CLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFDaEIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQTVCNUMsc0JBQXNCO1FBQ3RCLGFBQVEsR0FBRyxLQUFLLENBQTZCO1lBQzNDLE1BQU0sRUFBRSxXQUFXO1lBQ25CLE9BQU8sRUFBRSxFQUFFO1lBQ1gsT0FBTyxFQUFFLEVBQUU7WUFDWCxlQUFlLEVBQUUsQ0FBQztZQUNsQixNQUFNLEVBQUUsRUFBRTtTQUNYLENBQUMsQ0FBQztRQUNILGtCQUFhLEdBQUcsS0FBSyxDQUF1QixFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDaEYsa0JBQWEsR0FBRyxLQUFLLENBQVcsRUFBRSxDQUFDLENBQUM7UUFDcEMsdUJBQWtCLEdBQUcsS0FBSyxDQUFTLGNBQWMsQ0FBQyxDQUFDO1FBQ25ELGlCQUFZLEdBQUcsS0FBSyxDQUF5QixFQUFFLENBQUMsQ0FBQztRQUNqRCxzQkFBaUIsR0FBRyxLQUFLLENBQVUsSUFBSSxDQUFDLENBQUM7UUFDekMsY0FBUyxHQUFHLEtBQUssQ0FBNkIsUUFBUSxDQUFDLENBQUM7UUFDeEQsY0FBUyxHQUFHLEtBQUssQ0FBOEIsUUFBUSxDQUFDLENBQUM7UUFDekQsWUFBTyxHQUFHLEtBQUssQ0FBUyxDQUFDLENBQUMsQ0FBQztRQUMzQixZQUFPLEdBQUcsS0FBSyxDQUFTLENBQUMsQ0FBQyxDQUFDO1FBRTNCLHNCQUFzQjtRQUN0QixlQUFVLEdBQUcsTUFBTSxFQUF3QixDQUFDO1FBR3BDLFdBQU0sR0FBRyxLQUFLLENBQUM7SUFPcEIsQ0FBQztJQUdKLGdCQUFnQjtRQUNkLElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2hCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNmLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2QsQ0FBQztJQUNILENBQUM7SUFHRCx1QkFBdUI7UUFDckIsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDaEIsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2YsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDZCxDQUFDO0lBQ0gsQ0FBQztJQUdELFVBQVU7UUFDUixJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNoQixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDZixDQUFDO0lBQ0gsQ0FBQztJQUVPLElBQUk7UUFDVixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQztRQUNuQixNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxPQUFPO2FBQ2xDLFFBQVEsRUFBRTthQUNWLG1CQUFtQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7YUFDakMsYUFBYSxDQUNaLGdCQUFnQixDQUNkO1lBQ0UsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDM0IsU0FBUyxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDM0IsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDdkIsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUU7U0FDeEIsRUFDRCxJQUFJLENBQ0wsQ0FDRjthQUNBLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsQixNQUFNLE1BQU0sR0FBRyxJQUFJLGFBQWEsQ0FBQztZQUMvQixXQUFXLEVBQUUsSUFBSTtZQUNqQixnQkFBZ0I7WUFDaEIsY0FBYyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxFQUFFO1lBQzFELGFBQWEsRUFBRSxrQ0FBa0M7U0FDbEQsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUU5Qyw0Q0FBNEM7UUFDNUMsTUFBTSxvQkFBb0IsR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDbEQsTUFBTSx5QkFBeUIsR0FBRyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztRQUU1RCxNQUFNLE9BQU8sR0FBRyxJQUFJLGVBQWUsQ0FDakMsdUJBQXVCLEVBQ3ZCLElBQUksQ0FBQyxnQkFBZ0IsRUFDckIsUUFBUSxDQUFDLE1BQU0sQ0FBQztZQUNkLFNBQVMsRUFBRTtnQkFDVDtvQkFDRSxPQUFPLEVBQUUsY0FBYztvQkFDdkIsUUFBUSxFQUFFO3dCQUNSLFFBQVEsRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFO3dCQUM3QixLQUFLLEVBQUUsb0JBQW9CO3dCQUMzQixRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsRUFBRTt3QkFDekIsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhLEVBQUU7d0JBQ25DLGtCQUFrQixFQUFFLHlCQUF5Qjt3QkFDN0MsaUJBQWlCLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixFQUFFO3dCQUMzQyxVQUFVLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO3dCQUNyQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO3FCQUM3QjtpQkFDRjthQUNGO1NBQ0YsQ0FBQyxDQUNILENBQUM7UUFDRixJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNoQyxJQUFJLENBQUMsVUFBVTthQUNaLGFBQWEsRUFBRTthQUNmLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDYixTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2QsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2YsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQTJCO1FBQ25DLDhGQUE4RjtRQUM5RixNQUFNLE1BQU0sR0FBRztZQUNiLEdBQUcsS0FBSztZQUNSLGtCQUFrQixFQUFFLEtBQUssQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLGNBQWM7U0FDbEUsQ0FBQztRQUNGLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzdCLElBQUksQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDZixDQUFDO0lBRUQsS0FBSztRQUNILElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUM1QixDQUFDOzJIQW5JVSwwQkFBMEI7b0VBQTFCLDBCQUEwQjtZQUExQiwrRkFBQSxzQkFBa0IsSUFBUSxrR0FBMUIsNkJBQXlCLElBQUMsOEZBQTFCLGdCQUFZLElBQWM7OztpRkFBMUIsMEJBQTBCO2NBSHRDLFNBQVM7ZUFBQztnQkFDVCxRQUFRLEVBQUUsaUJBQWlCO2FBQzVCOztzQkEyQkksSUFBSTs7c0JBQUksUUFBUTttR0FPbkIsZ0JBQWdCO2tCQURmLFlBQVk7bUJBQUMsT0FBTztZQVVyQix1QkFBdUI7a0JBRHRCLFlBQVk7bUJBQUMsZUFBZTtZQVU3QixVQUFVO2tCQURULFlBQVk7bUJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE92ZXJsYXksIE92ZXJsYXlDb25maWcsIE92ZXJsYXlSZWYgfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL292ZXJsYXlcIjtcbmltcG9ydCB7IENvbXBvbmVudFBvcnRhbCB9IGZyb20gXCJAYW5ndWxhci9jZGsvcG9ydGFsXCI7XG5pbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgSW5qZWN0b3IsIE9wdGlvbmFsLCBTZWxmLCBWaWV3Q29udGFpbmVyUmVmLCBpbnB1dCwgb3V0cHV0IH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE5nQ29udHJvbCB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xuaW1wb3J0IHsgdGFrZSB9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xuaW1wb3J0IHsgZ2VuUG9zaXRpb25QYWlycyB9IGZyb20gXCJtaXMtY3J5c3RhbC1kZXNpZ24tc3lzdGVtL3V0aWxzXCI7XG5pbXBvcnQgeyBDT05UQUlORVJfREFUQSwgREFURV9GT1JNQVQgfSBmcm9tIFwiLi9kYXRlcmFuZ2VwaWNrZXItY29uc3RhbnRzXCI7XG5pbXBvcnQgeyBJRGF0ZVBpY2tlckNvbmZpZywgSURhdGVQaWNrZXJUb2FzdFRleHQsIElTZWxlY3RlZERhdGVzQ29uZmlnIH0gZnJvbSBcIi4vbW9kZWxzL2RycC1jb25maWcubW9kZWxcIjtcbmltcG9ydCB7IFR6RHJwQ29udGFpbmVyQ29tcG9uZW50IH0gZnJvbSBcIi4vdHotZHJwLWNvbnRhaW5lci90ei1kcnAtY29udGFpbmVyLmNvbXBvbmVudFwiO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6IFwiaW5wdXRbbWlzVHpEcnBdXCJcbn0pXG5leHBvcnQgY2xhc3MgVHpEYXRlcmFuZ2VwaWNrZXJEaXJlY3RpdmUge1xuICAvLyBTaWduYWwtYmFzZWQgaW5wdXRzXG4gIGRwQ29uZmlnID0gaW5wdXQ8UGFydGlhbDxJRGF0ZVBpY2tlckNvbmZpZz4+KHtcbiAgICBmb3JtYXQ6IERBVEVfRk9STUFULFxuICAgIG1pbkRhdGU6IFwiXCIsXG4gICAgbWF4RGF0ZTogXCJcIixcbiAgICBtYXhBbGxvd2VkUmFuZ2U6IDAsXG4gICAgcmFuZ2VzOiBbXVxuICB9KTtcbiAgc2VsZWN0ZWREYXRlcyA9IGlucHV0PElTZWxlY3RlZERhdGVzQ29uZmlnPih7IHN0YXJ0RGF0ZTogbnVsbCwgZW5kRGF0ZTogbnVsbCB9KTtcbiAgZGF0ZXNEaXNhYmxlZCA9IGlucHV0PHN0cmluZ1tdPihbXSk7XG4gIHNlbGVjdGVkUmFuZ2VMYWJlbCA9IGlucHV0PHN0cmluZz4oJ0N1c3RvbSBSYW5nZScpO1xuICBkYXRlTWVzc2FnZXMgPSBpbnB1dDxJRGF0ZVBpY2tlclRvYXN0VGV4dFtdPihbXSk7XG4gIGVuYWJsZURhdGVUYWJiaW5nID0gaW5wdXQ8Ym9vbGVhbj4odHJ1ZSk7XG4gIHBvc2l0aW9uWCA9IGlucHV0PFwic3RhcnRcIiB8IFwiY2VudGVyXCIgfCBcImVuZFwiPihcImNlbnRlclwiKTtcbiAgcG9zaXRpb25ZID0gaW5wdXQ8XCJ0b3BcIiB8IFwiY2VudGVyXCIgfCBcImJvdHRvbVwiPihcImJvdHRvbVwiKTtcbiAgb2Zmc2V0WCA9IGlucHV0PG51bWJlcj4oMCk7XG4gIG9mZnNldFkgPSBpbnB1dDxudW1iZXI+KDApO1xuICBcbiAgLy8gU2lnbmFsLWJhc2VkIG91dHB1dFxuICBkYXRlQ2hhbmdlID0gb3V0cHV0PElTZWxlY3RlZERhdGVzQ29uZmlnPigpO1xuICBcbiAgcHJpdmF0ZSBvdmVybGF5UmVmOiBPdmVybGF5UmVmO1xuICBwcml2YXRlIGlzT3BlbiA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBTZWxmKCkgQE9wdGlvbmFsKCkgcHJpdmF0ZSBjb250cm9sOiBOZ0NvbnRyb2wsXG4gICAgcHJpdmF0ZSBlbGVtZW50OiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgb3ZlcmxheTogT3ZlcmxheSxcbiAgICBwcml2YXRlIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWZcbiAgKSB7fVxuXG4gIEBIb3N0TGlzdGVuZXIoXCJjbGlja1wiKVxuICB0b2dnbGVEYXRlUGlja2VyKCkge1xuICAgIGlmICh0aGlzLmlzT3Blbikge1xuICAgICAgdGhpcy5jbG9zZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm9wZW4oKTtcbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKFwia2V5ZG93bi5lbnRlclwiKVxuICB0b2dnbGVEYXRlUGlja2VyT25FbnRlcigpIHtcbiAgICBpZiAodGhpcy5pc09wZW4pIHtcbiAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5vcGVuKCk7XG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcihcImtleWRvd24uZXNjXCIpXG4gIGNsb3NlT25Fc2MoKSB7XG4gICAgaWYgKHRoaXMuaXNPcGVuKSB7XG4gICAgICB0aGlzLmNsb3NlKCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBvcGVuKCkge1xuICAgIHRoaXMuaXNPcGVuID0gdHJ1ZTtcbiAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5vdmVybGF5XG4gICAgICAucG9zaXRpb24oKVxuICAgICAgLmZsZXhpYmxlQ29ubmVjdGVkVG8odGhpcy5lbGVtZW50KVxuICAgICAgLndpdGhQb3NpdGlvbnMoXG4gICAgICAgIGdlblBvc2l0aW9uUGFpcnMoXG4gICAgICAgICAge1xuICAgICAgICAgICAgcG9zaXRpb25YOiB0aGlzLnBvc2l0aW9uWCgpLFxuICAgICAgICAgICAgcG9zaXRpb25ZOiB0aGlzLnBvc2l0aW9uWSgpLFxuICAgICAgICAgICAgb2Zmc2V0WDogdGhpcy5vZmZzZXRYKCksXG4gICAgICAgICAgICBvZmZzZXRZOiB0aGlzLm9mZnNldFkoKVxuICAgICAgICAgIH0sXG4gICAgICAgICAgdHJ1ZVxuICAgICAgICApXG4gICAgICApXG4gICAgICAud2l0aFB1c2godHJ1ZSk7XG4gICAgY29uc3QgY29uZmlnID0gbmV3IE92ZXJsYXlDb25maWcoe1xuICAgICAgaGFzQmFja2Ryb3A6IHRydWUsXG4gICAgICBwb3NpdGlvblN0cmF0ZWd5LFxuICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMub3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLnJlcG9zaXRpb24oKSxcbiAgICAgIGJhY2tkcm9wQ2xhc3M6IFwiY2RrLW92ZXJsYXktdHJhbnNwYXJlbnQtYmFja2Ryb3BcIlxuICAgIH0pO1xuICAgIHRoaXMub3ZlcmxheVJlZiA9IHRoaXMub3ZlcmxheS5jcmVhdGUoY29uZmlnKTtcbiAgICBcbiAgICAvLyBHZXQgY3VycmVudCB2YWx1ZXMgYXQgdGhlIHRpbWUgb2Ygb3BlbmluZ1xuICAgIGNvbnN0IGN1cnJlbnRTZWxlY3RlZERhdGVzID0gdGhpcy5zZWxlY3RlZERhdGVzKCk7XG4gICAgY29uc3QgY3VycmVudFNlbGVjdGVkUmFuZ2VMYWJlbCA9IHRoaXMuc2VsZWN0ZWRSYW5nZUxhYmVsKCk7XG4gICAgXG4gICAgY29uc3QgdGVtcFJlZiA9IG5ldyBDb21wb25lbnRQb3J0YWwoXG4gICAgICBUekRycENvbnRhaW5lckNvbXBvbmVudCxcbiAgICAgIHRoaXMudmlld0NvbnRhaW5lclJlZixcbiAgICAgIEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IENPTlRBSU5FUl9EQVRBLFxuICAgICAgICAgICAgdXNlVmFsdWU6IHtcbiAgICAgICAgICAgICAgbWVzc2FnZXM6IHRoaXMuZGF0ZU1lc3NhZ2VzKCksXG4gICAgICAgICAgICAgIGRhdGVzOiBjdXJyZW50U2VsZWN0ZWREYXRlcyxcbiAgICAgICAgICAgICAgZHBDb25maWc6IHRoaXMuZHBDb25maWcoKSxcbiAgICAgICAgICAgICAgZGF0ZXNEaXNhYmxlZDogdGhpcy5kYXRlc0Rpc2FibGVkKCksXG4gICAgICAgICAgICAgIHNlbGVjdGVkUmFuZ2VMYWJlbDogY3VycmVudFNlbGVjdGVkUmFuZ2VMYWJlbCxcbiAgICAgICAgICAgICAgZW5hYmxlRGF0ZVRhYmJpbmc6IHRoaXMuZW5hYmxlRGF0ZVRhYmJpbmcoKSxcbiAgICAgICAgICAgICAgZGF0ZUNoYW5nZTogdGhpcy5hcHBseURhdGUuYmluZCh0aGlzKSxcbiAgICAgICAgICAgICAgY2xvc2U6IHRoaXMuY2xvc2UuYmluZCh0aGlzKVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgXVxuICAgICAgfSlcbiAgICApO1xuICAgIHRoaXMub3ZlcmxheVJlZi5hdHRhY2godGVtcFJlZik7XG4gICAgdGhpcy5vdmVybGF5UmVmXG4gICAgICAuYmFja2Ryb3BDbGljaygpXG4gICAgICAucGlwZSh0YWtlKDEpKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgIH0pO1xuICB9XG5cbiAgYXBwbHlEYXRlKGRhdGVzOiBJU2VsZWN0ZWREYXRlc0NvbmZpZykge1xuICAgIC8vIElmIHNlbGVjdGVkUmFuZ2VMYWJlbCBpcyBwcmVzZW50IGluIHRoZSBkYXRlIG9iamVjdCwga2VlcCBpdCwgb3RoZXJ3aXNlIGl0J3MgYSBjdXN0b20gcmFuZ2VcbiAgICBjb25zdCByZXN1bHQgPSB7XG4gICAgICAuLi5kYXRlcyxcbiAgICAgIHNlbGVjdGVkUmFuZ2VMYWJlbDogZGF0ZXNbJ3NlbGVjdGVkUmFuZ2VMYWJlbCddIHx8ICdDdXN0b20gUmFuZ2UnXG4gICAgfTtcbiAgICB0aGlzLmRhdGVDaGFuZ2UuZW1pdChyZXN1bHQpO1xuICAgIHRoaXMuY29udHJvbD8uY29udHJvbC5wYXRjaFZhbHVlKHJlc3VsdCk7XG4gICAgdGhpcy5jbG9zZSgpO1xuICB9XG5cbiAgY2xvc2UoKSB7XG4gICAgdGhpcy5pc09wZW4gPSBmYWxzZTtcbiAgICB0aGlzLm92ZXJsYXlSZWYuZGV0YWNoKCk7XG4gICAgdGhpcy5vdmVybGF5UmVmLmRpc3Bvc2UoKTtcbiAgfVxufVxuIl19