@alauda/ui 7.4.2-beta.1 → 7.4.2-beta.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/date-picker/calendar/header/component.d.ts +21 -4
- package/date-picker/date-picker/date-picker.component.d.ts +2 -4
- package/date-picker/trigger/trigger.component.d.ts +12 -4
- package/esm2022/accordion/accordion-item/accordion-item.component.mjs +9 -11
- package/esm2022/accordion/accordion.component.mjs +4 -6
- package/esm2022/accordion/accordion.module.mjs +6 -6
- package/esm2022/anchor/anchor.component.mjs +14 -18
- package/esm2022/anchor/anchor.directive.mjs +13 -29
- package/esm2022/anchor/anchor.module.mjs +5 -5
- package/esm2022/autocomplete/autocomplete-placeholder.component.mjs +3 -3
- package/esm2022/autocomplete/autocomplete.component.mjs +4 -12
- package/esm2022/autocomplete/autocomplete.directive.mjs +22 -23
- package/esm2022/autocomplete/autocomplete.module.mjs +6 -6
- package/esm2022/autocomplete/helper-directives.mjs +3 -3
- package/esm2022/autocomplete/suggestion/suggestion.component.mjs +8 -15
- package/esm2022/autocomplete/suggestion-group/suggestion-group.component.mjs +3 -5
- package/esm2022/back-top/back-top.component.mjs +12 -15
- package/esm2022/back-top/back-top.module.mjs +4 -4
- package/esm2022/breadcrumb/breadcrumb-item.component.mjs +5 -6
- package/esm2022/breadcrumb/breadcrumb.component.mjs +7 -6
- package/esm2022/breadcrumb/breadcrumb.module.mjs +6 -6
- package/esm2022/button/button-group/button-group.component.mjs +3 -3
- package/esm2022/button/button.component.mjs +9 -12
- package/esm2022/button/button.module.mjs +4 -4
- package/esm2022/card/card.component.mjs +6 -4
- package/esm2022/card/card.module.mjs +5 -5
- package/esm2022/card/helper-directives.mjs +7 -7
- package/esm2022/card/section.component.mjs +3 -3
- package/esm2022/checkbox/checkbox-group/checkbox-group.component.mjs +8 -7
- package/esm2022/checkbox/checkbox.component.mjs +10 -14
- package/esm2022/checkbox/checkbox.module.mjs +6 -6
- package/esm2022/color-picker/color-picker.component.mjs +4 -4
- package/esm2022/color-picker/color-picker.module.mjs +4 -4
- package/esm2022/date-picker/calendar/date-picker-panel/component.mjs +17 -26
- package/esm2022/date-picker/calendar/footer/component.mjs +8 -8
- package/esm2022/date-picker/calendar/header/component.mjs +56 -24
- package/esm2022/date-picker/calendar/panel/picker-panel.mjs +19 -26
- package/esm2022/date-picker/calendar/range-picker-panel/component.mjs +30 -33
- package/esm2022/date-picker/calendar/util.mjs +1 -8
- package/esm2022/date-picker/date-picker/date-picker.component.mjs +17 -37
- package/esm2022/date-picker/date-picker.module.mjs +6 -6
- package/esm2022/date-picker/range-picker/range-picker.component.mjs +17 -20
- package/esm2022/date-picker/trigger/trigger.component.mjs +72 -26
- package/esm2022/dialog/confirm-dialog/confirm-dialog-config.mjs +8 -9
- package/esm2022/dialog/confirm-dialog/confirm-dialog.component.mjs +8 -11
- package/esm2022/dialog/dialog-config.mjs +10 -9
- package/esm2022/dialog/dialog-content/dialog-close.directive.mjs +3 -7
- package/esm2022/dialog/dialog-content/dialog-content.component.mjs +4 -4
- package/esm2022/dialog/dialog-content/dialog-footer.component.mjs +6 -4
- package/esm2022/dialog/dialog-content/dialog-header.component.mjs +7 -10
- package/esm2022/dialog/dialog-ref.mjs +4 -8
- package/esm2022/dialog/dialog.component.mjs +6 -13
- package/esm2022/dialog/dialog.module.mjs +6 -6
- package/esm2022/dialog/dialog.service.mjs +7 -11
- package/esm2022/drawer/component/drawer.component.mjs +5 -24
- package/esm2022/drawer/component/internal/internal.component.mjs +8 -13
- package/esm2022/drawer/drawer-ref.mjs +3 -5
- package/esm2022/drawer/drawer.module.mjs +5 -5
- package/esm2022/drawer/drawer.service.mjs +4 -9
- package/esm2022/drawer/helper-directives.mjs +7 -7
- package/esm2022/dropdown/dropdown-active.directive.mjs +7 -4
- package/esm2022/dropdown/dropdown-button/dropdown-button.component.mjs +11 -12
- package/esm2022/dropdown/dropdown.directive.mjs +7 -7
- package/esm2022/dropdown/dropdown.module.mjs +6 -6
- package/esm2022/dropdown/helper-directives.mjs +3 -3
- package/esm2022/dropdown/menu/menu.component.mjs +7 -5
- package/esm2022/dropdown/menu-group/menu-group.component.mjs +3 -3
- package/esm2022/dropdown/menu-item/menu-item.component.mjs +10 -8
- package/esm2022/dropdown/submenu/submenu.component.mjs +9 -7
- package/esm2022/form/common-form.mjs +7 -12
- package/esm2022/form/form-item/form-item.component.mjs +9 -22
- package/esm2022/form/form.directive.mjs +16 -17
- package/esm2022/form/form.module.mjs +5 -5
- package/esm2022/form/helper-directives.mjs +11 -12
- package/esm2022/i18n/i18n.module.mjs +4 -4
- package/esm2022/i18n/i18n.pipe.mjs +6 -18
- package/esm2022/i18n/i18n.service.mjs +16 -24
- package/esm2022/icon/icon-register.service.mjs +4 -6
- package/esm2022/icon/icon.component.mjs +6 -15
- package/esm2022/icon/icon.module.mjs +4 -4
- package/esm2022/inline-alert/helper-directives.mjs +3 -3
- package/esm2022/inline-alert/inline-alert.component.mjs +10 -11
- package/esm2022/inline-alert/inline-alert.module.mjs +6 -6
- package/esm2022/input/autosize.directive.mjs +5 -7
- package/esm2022/input/helper-directives.mjs +9 -9
- package/esm2022/input/input-group/input-group.component.mjs +6 -13
- package/esm2022/input/input.component.mjs +7 -9
- package/esm2022/input/input.module.mjs +6 -6
- package/esm2022/input/number-input/number-input.component.mjs +18 -21
- package/esm2022/input/search/search.component.mjs +16 -15
- package/esm2022/input/tags-input/tags-input.component.mjs +16 -25
- package/esm2022/internal/utils/bem.mjs +1 -2
- package/esm2022/internal/utils/styles-renderer.mjs +1 -4
- package/esm2022/message/base-message.mjs +2 -11
- package/esm2022/message/message-wrapper.component.mjs +3 -4
- package/esm2022/message/message.component.mjs +10 -17
- package/esm2022/message/message.config.mjs +1 -5
- package/esm2022/message/message.module.mjs +6 -6
- package/esm2022/message/message.service.mjs +3 -3
- package/esm2022/notification/notification-wrapper.component.mjs +3 -4
- package/esm2022/notification/notification.component.mjs +13 -16
- package/esm2022/notification/notification.module.mjs +6 -6
- package/esm2022/notification/notification.service.mjs +3 -3
- package/esm2022/paginator/paginator-intl.mjs +10 -8
- package/esm2022/paginator/paginator.component.mjs +13 -16
- package/esm2022/paginator/paginator.module.mjs +6 -6
- package/esm2022/radio/base-radio.mjs +9 -14
- package/esm2022/radio/radio-button/radio-button.component.mjs +6 -6
- package/esm2022/radio/radio-group/radio-group.component.mjs +20 -17
- package/esm2022/radio/radio.component.mjs +4 -4
- package/esm2022/radio/radio.module.mjs +6 -6
- package/esm2022/scrolling/fixed-size-table-virtual-scroll-strategy.mjs +13 -12
- package/esm2022/scrolling/fixed-size-table-virtual-scroll.directive.mjs +12 -12
- package/esm2022/scrolling/fixed-size-virtual-scroll.directive.mjs +4 -4
- package/esm2022/scrolling/scrolling.module.mjs +5 -5
- package/esm2022/scrolling/virtual-for-of.directive.mjs +3 -3
- package/esm2022/scrolling/virtual-scroll-viewport.component.mjs +4 -4
- package/esm2022/select/base-select.mjs +25 -39
- package/esm2022/select/helper-directives.mjs +5 -13
- package/esm2022/select/multi-select/multi-select.component.mjs +16 -25
- package/esm2022/select/option/option.component.mjs +20 -27
- package/esm2022/select/option-group/option-group.component.mjs +3 -5
- package/esm2022/select/option-placeholder.component.mjs +3 -3
- package/esm2022/select/select.component.mjs +9 -9
- package/esm2022/select/select.module.mjs +6 -6
- package/esm2022/select/validators.mjs +5 -8
- package/esm2022/shared/click-outside.directive.mjs +4 -5
- package/esm2022/shared/shared.module.mjs +4 -4
- package/esm2022/sort/sort-header.component.mjs +5 -11
- package/esm2022/sort/sort.directive.mjs +10 -9
- package/esm2022/sort/sort.module.mjs +4 -4
- package/esm2022/status-bar/status-bar.component.mjs +9 -8
- package/esm2022/status-bar/status-bar.module.mjs +4 -4
- package/esm2022/steps/steps.component.mjs +14 -14
- package/esm2022/steps/steps.module.mjs +4 -4
- package/esm2022/switch/switch.component.mjs +9 -6
- package/esm2022/switch/switch.module.mjs +4 -4
- package/esm2022/table/table-cell-def.directive.mjs +4 -4
- package/esm2022/table/table-cell.component.mjs +18 -12
- package/esm2022/table/table-cell.directive.mjs +4 -4
- package/esm2022/table/table-column-def.directive.mjs +4 -4
- package/esm2022/table/table-column-resizable.directive.mjs +14 -13
- package/esm2022/table/table-header-cell-def.directive.mjs +4 -4
- package/esm2022/table/table-header-cell.directive.mjs +3 -3
- package/esm2022/table/table-header-row-def.directive.mjs +8 -6
- package/esm2022/table/table-header-row.component.mjs +3 -3
- package/esm2022/table/table-placeholder.directive.mjs +5 -8
- package/esm2022/table/table-row-def.directive.mjs +8 -5
- package/esm2022/table/table-row.component.mjs +5 -6
- package/esm2022/table/table-scroll.directive.mjs +14 -14
- package/esm2022/table/table.component.mjs +9 -9
- package/esm2022/table/table.module.mjs +6 -6
- package/esm2022/table-of-contents/table-of-contents.module.mjs +5 -5
- package/esm2022/table-of-contents/toc-container.directive.mjs +9 -11
- package/esm2022/table-of-contents/toc-content.directive.mjs +3 -7
- package/esm2022/table-of-contents/toc-link.directive.mjs +4 -8
- package/esm2022/tabs/tab-body.component.mjs +19 -23
- package/esm2022/tabs/tab-context.service.mjs +4 -6
- package/esm2022/tabs/tab-group.component.mjs +18 -28
- package/esm2022/tabs/tab-header-active-indicator.component.mjs +5 -7
- package/esm2022/tabs/tab-header.component.mjs +16 -26
- package/esm2022/tabs/tab.component.mjs +10 -17
- package/esm2022/tabs/tabs.module.mjs +6 -6
- package/esm2022/tag/check-tag/check-tag.component.mjs +11 -9
- package/esm2022/tag/tag.component.mjs +16 -14
- package/esm2022/tag/tag.module.mjs +4 -4
- package/esm2022/theme/theme.module.mjs +5 -5
- package/esm2022/theme/theme.pipe.mjs +19 -14
- package/esm2022/theme/theme.service.mjs +7 -10
- package/esm2022/time-picker/component.mjs +19 -21
- package/esm2022/time-picker/panel/panel.component.mjs +17 -29
- package/esm2022/time-picker/time-picker.module.mjs +6 -6
- package/esm2022/tooltip/base-tooltip.mjs +20 -31
- package/esm2022/tooltip/tooltip-active.directive.mjs +5 -7
- package/esm2022/tooltip/tooltip-copy.directive.mjs +4 -9
- package/esm2022/tooltip/tooltip-intl.mjs +8 -6
- package/esm2022/tooltip/tooltip.component.mjs +11 -25
- package/esm2022/tooltip/tooltip.directive.mjs +9 -6
- package/esm2022/tooltip/tooltip.module.mjs +6 -6
- package/esm2022/tree-select/tree-node-placeholder.component.mjs +3 -3
- package/esm2022/tree-select/tree-select.component.mjs +30 -44
- package/esm2022/tree-select/tree-select.module.mjs +6 -6
- package/fesm2022/alauda-ui.mjs +1358 -1660
- package/fesm2022/alauda-ui.mjs.map +1 -1
- package/i18n/i18n.pipe.d.ts +3 -6
- package/i18n/i18n.service.d.ts +3 -6
- package/package.json +1 -1
|
@@ -6,14 +6,14 @@ export class ColorPickerComponent extends CommonFormControl {
|
|
|
6
6
|
onInput(event) {
|
|
7
7
|
this.emitValue(event.target.value);
|
|
8
8
|
}
|
|
9
|
-
static
|
|
10
|
-
static
|
|
9
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: ColorPickerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
10
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.3", type: ColorPickerComponent, isStandalone: true, selector: "aui-color-picker", providers: [
|
|
11
11
|
{
|
|
12
12
|
provide: NG_VALUE_ACCESSOR,
|
|
13
13
|
useExisting: forwardRef(() => ColorPickerComponent),
|
|
14
14
|
multi: true,
|
|
15
15
|
},
|
|
16
|
-
], usesInheritance: true, ngImport: i0, template: "<input\n class=\"aui-color-picker\"\n type=\"color\"\n [disabled]=\"disabled\"\n [value]=\"model\"\n (input)=\"onInput($event)\"\n/>\n", styles: [".aui-color-picker{display:inline-block;padding:3px;width:var(--aui-inline-height-m);height:var(--aui-inline-height-m);border:1px solid rgb(var(--aui-color-n-7));border-radius:var(--aui-border-radius-m);background-color:rgb(var(--aui-color-main-bg));color:rgb(var(--aui-color-main-text));outline:none;cursor:pointer;font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);font-weight:var(--aui-font-weight-normal)}.aui-color-picker::-webkit-color-swatch-wrapper{padding:0}.aui-color-picker::-moz-color-swatch-wrapper{padding:0}.aui-color-picker::-webkit-color-swatch{border:none;border-radius:var(--aui-border-radius-m)}.aui-color-picker::-moz-color-swatch{border:none;border-radius:var(--aui-border-radius-m)}.aui-color-picker:hover,.aui-color-picker:focus{border-color:rgb(var(--aui-color-primary))}.aui-color-picker[disabled]{background-color:rgb(var(--aui-color-n-8));border-color:rgb(var(--aui-color-n-7))!important;color:rgb(var(--aui-color-disabled-text));cursor:not-allowed}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
16
|
+
], usesInheritance: true, ngImport: i0, template: "<input\n class=\"aui-color-picker\"\n type=\"color\"\n [disabled]=\"disabled\"\n [value]=\"model\"\n (input)=\"onInput($event)\"\n/>\n", styles: [".aui-color-picker{display:inline-block;padding:3px;width:var(--aui-inline-height-m);height:var(--aui-inline-height-m);border:1px solid rgb(var(--aui-color-n-7));border-radius:var(--aui-border-radius-m);background-color:rgb(var(--aui-color-main-bg));color:rgb(var(--aui-color-main-text));outline:none;cursor:pointer;font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);font-weight:var(--aui-font-weight-normal)}.aui-color-picker::-webkit-color-swatch-wrapper{padding:0}.aui-color-picker::-moz-color-swatch-wrapper{padding:0}.aui-color-picker::-webkit-color-swatch{border:none;border-radius:var(--aui-border-radius-m)}.aui-color-picker::-moz-color-swatch{border:none;border-radius:var(--aui-border-radius-m)}.aui-color-picker:hover,.aui-color-picker:focus{border-color:rgb(var(--aui-color-primary))}.aui-color-picker[disabled]{background-color:rgb(var(--aui-color-n-8));border-color:rgb(var(--aui-color-n-7))!important;color:rgb(var(--aui-color-disabled-text));cursor:not-allowed}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
17
17
|
}
|
|
18
18
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: ColorPickerComponent, decorators: [{
|
|
19
19
|
type: Component,
|
|
@@ -25,4 +25,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImpor
|
|
|
25
25
|
},
|
|
26
26
|
], standalone: true, template: "<input\n class=\"aui-color-picker\"\n type=\"color\"\n [disabled]=\"disabled\"\n [value]=\"model\"\n (input)=\"onInput($event)\"\n/>\n", styles: [".aui-color-picker{display:inline-block;padding:3px;width:var(--aui-inline-height-m);height:var(--aui-inline-height-m);border:1px solid rgb(var(--aui-color-n-7));border-radius:var(--aui-border-radius-m);background-color:rgb(var(--aui-color-main-bg));color:rgb(var(--aui-color-main-text));outline:none;cursor:pointer;font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);font-weight:var(--aui-font-weight-normal)}.aui-color-picker::-webkit-color-swatch-wrapper{padding:0}.aui-color-picker::-moz-color-swatch-wrapper{padding:0}.aui-color-picker::-webkit-color-swatch{border:none;border-radius:var(--aui-border-radius-m)}.aui-color-picker::-moz-color-swatch{border:none;border-radius:var(--aui-border-radius-m)}.aui-color-picker:hover,.aui-color-picker:focus{border-color:rgb(var(--aui-color-primary))}.aui-color-picker[disabled]{background-color:rgb(var(--aui-color-n-8));border-color:rgb(var(--aui-color-n-7))!important;color:rgb(var(--aui-color-disabled-text));cursor:not-allowed}\n"] }]
|
|
27
27
|
}] });
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb2xvci1waWNrZXIvY29sb3ItcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uL3NyYy9jb2xvci1waWNrZXIvY29sb3ItcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULGlCQUFpQixFQUNqQixVQUFVLEdBQ1gsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sU0FBUyxDQUFDOztBQWtCNUMsTUFBTSxPQUFPLG9CQUFxQixTQUFRLGlCQUF5QjtJQUNqRSxPQUFPLENBQUMsS0FBWTtRQUNsQixJQUFJLENBQUMsU0FBUyxDQUFFLEtBQUssQ0FBQyxNQUEyQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNELENBQUM7OEdBSFUsb0JBQW9CO2tHQUFwQixvQkFBb0IsK0RBVHBCO1lBQ1Q7Z0JBQ0UsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztnQkFDbkQsS0FBSyxFQUFFLElBQUk7YUFDWjtTQUNGLGlEQ3ZCSCw2SUFPQTs7MkZEbUJhLG9CQUFvQjtrQkFoQmhDLFNBQVM7K0JBQ0Usa0JBQWtCLG1CQUdYLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksdUJBQ2hCLEtBQUssYUFDZjt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxxQkFBcUIsQ0FBQzs0QkFDbkQsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0YsY0FDVyxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG4gIGZvcndhcmRSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IENvbW1vbkZvcm1Db250cm9sIH0gZnJvbSAnLi4vZm9ybSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F1aS1jb2xvci1waWNrZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vY29sb3ItcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY29sb3ItcGlja2VyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBDb2xvclBpY2tlckNvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxufSlcbmV4cG9ydCBjbGFzcyBDb2xvclBpY2tlckNvbXBvbmVudCBleHRlbmRzIENvbW1vbkZvcm1Db250cm9sPHN0cmluZz4ge1xuICBvbklucHV0KGV2ZW50OiBFdmVudCkge1xuICAgIHRoaXMuZW1pdFZhbHVlKChldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkudmFsdWUpO1xuICB9XG59XG4iLCI8aW5wdXRcbiAgY2xhc3M9XCJhdWktY29sb3ItcGlja2VyXCJcbiAgdHlwZT1cImNvbG9yXCJcbiAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgW3ZhbHVlXT1cIm1vZGVsXCJcbiAgKGlucHV0KT1cIm9uSW5wdXQoJGV2ZW50KVwiXG4vPlxuIl19
|
|
@@ -4,9 +4,9 @@ import { FormsModule } from '@angular/forms';
|
|
|
4
4
|
import { ColorPickerComponent } from './color-picker.component';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export class ColorPickerModule {
|
|
7
|
-
static
|
|
8
|
-
static
|
|
9
|
-
static
|
|
7
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: ColorPickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
8
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.3", ngImport: i0, type: ColorPickerModule, imports: [CommonModule, FormsModule, ColorPickerComponent], exports: [ColorPickerComponent] }); }
|
|
9
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: ColorPickerModule, imports: [CommonModule, FormsModule] }); }
|
|
10
10
|
}
|
|
11
11
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: ColorPickerModule, decorators: [{
|
|
12
12
|
type: NgModule,
|
|
@@ -15,4 +15,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImpor
|
|
|
15
15
|
exports: [ColorPickerComponent],
|
|
16
16
|
}]
|
|
17
17
|
}] });
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItcGlja2VyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb2xvci1waWNrZXIvY29sb3ItcGlja2VyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7O0FBTWhFLE1BQU0sT0FBTyxpQkFBaUI7OEdBQWpCLGlCQUFpQjsrR0FBakIsaUJBQWlCLFlBSGxCLFlBQVksRUFBRSxXQUFXLEVBQUUsb0JBQW9CLGFBQy9DLG9CQUFvQjsrR0FFbkIsaUJBQWlCLFlBSGxCLFlBQVksRUFBRSxXQUFXOzsyRkFHeEIsaUJBQWlCO2tCQUo3QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsb0JBQW9CLENBQUM7b0JBQzFELE9BQU8sRUFBRSxDQUFDLG9CQUFvQixDQUFDO2lCQUNoQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IENvbG9yUGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi9jb2xvci1waWNrZXIuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGUsIENvbG9yUGlja2VyQ29tcG9uZW50XSxcbiAgZXhwb3J0czogW0NvbG9yUGlja2VyQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgQ29sb3JQaWNrZXJNb2R1bGUge31cbiJdfQ==
|
|
@@ -15,8 +15,19 @@ import { getNavRangeByType, getTimePickerModel, getTypeByNavRange, nextNavRangeT
|
|
|
15
15
|
import * as i0 from "@angular/core";
|
|
16
16
|
import * as i1 from "@angular/forms";
|
|
17
17
|
export class DatePickerPanelComponent extends CommonFormControl {
|
|
18
|
-
|
|
19
|
-
|
|
18
|
+
constructor() {
|
|
19
|
+
super(...arguments);
|
|
20
|
+
this.clearable = true;
|
|
21
|
+
this.showTime = false;
|
|
22
|
+
this.disabledDate = () => false;
|
|
23
|
+
this.disabledTime = () => null;
|
|
24
|
+
this.weekStartDay = 0;
|
|
25
|
+
this.showFooter = true;
|
|
26
|
+
this.confirm = new EventEmitter();
|
|
27
|
+
this.clear = new EventEmitter();
|
|
28
|
+
this.DateNavRange = DateNavRange;
|
|
29
|
+
this.DatePickerType = DatePickerType;
|
|
30
|
+
}
|
|
20
31
|
set type(type) {
|
|
21
32
|
this.navRange = getNavRangeByType(type);
|
|
22
33
|
this._type = type;
|
|
@@ -24,20 +35,6 @@ export class DatePickerPanelComponent extends CommonFormControl {
|
|
|
24
35
|
get type() {
|
|
25
36
|
return this._type;
|
|
26
37
|
}
|
|
27
|
-
_type;
|
|
28
|
-
showTime = false;
|
|
29
|
-
disabledDate = () => false;
|
|
30
|
-
disabledTime = () => null;
|
|
31
|
-
weekStartDay = 0;
|
|
32
|
-
showFooter = true;
|
|
33
|
-
footerTemplate;
|
|
34
|
-
extraFooter;
|
|
35
|
-
minDate;
|
|
36
|
-
maxDate;
|
|
37
|
-
confirm = new EventEmitter();
|
|
38
|
-
clear = new EventEmitter();
|
|
39
|
-
_cacheSelectedDate;
|
|
40
|
-
_cacheDisabledTimeFn;
|
|
41
38
|
getDisabledTimeFn(selectedDate, type) {
|
|
42
39
|
if (selectedDate !== this._cacheSelectedDate) {
|
|
43
40
|
this._cacheDisabledTimeFn = combineDisabledTimeFn(this._disabledTimeFn.bind(this), this.disabledTime)(selectedDate);
|
|
@@ -45,15 +42,9 @@ export class DatePickerPanelComponent extends CommonFormControl {
|
|
|
45
42
|
}
|
|
46
43
|
return this._cacheDisabledTimeFn?.[type];
|
|
47
44
|
}
|
|
48
|
-
navRange;
|
|
49
45
|
get currentNavType() {
|
|
50
46
|
return getTypeByNavRange(this.navRange);
|
|
51
47
|
}
|
|
52
|
-
anchor;
|
|
53
|
-
selectedDate;
|
|
54
|
-
selectedTime;
|
|
55
|
-
DateNavRange = DateNavRange;
|
|
56
|
-
DatePickerType = DatePickerType;
|
|
57
48
|
writeValue(obj) {
|
|
58
49
|
super.writeValue(obj);
|
|
59
50
|
this.selectedDate = obj;
|
|
@@ -115,14 +106,14 @@ export class DatePickerPanelComponent extends CommonFormControl {
|
|
|
115
106
|
seconds: () => [],
|
|
116
107
|
};
|
|
117
108
|
}
|
|
118
|
-
static
|
|
119
|
-
static
|
|
109
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: DatePickerPanelComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
110
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.3", type: DatePickerPanelComponent, isStandalone: true, selector: "aui-date-picker-panel", inputs: { clearable: "clearable", clearText: "clearText", type: "type", showTime: "showTime", disabledDate: "disabledDate", disabledTime: "disabledTime", weekStartDay: "weekStartDay", showFooter: "showFooter", footerTemplate: "footerTemplate", extraFooter: "extraFooter", minDate: "minDate", maxDate: "maxDate" }, outputs: { confirm: "confirm", clear: "clear" }, providers: [
|
|
120
111
|
{
|
|
121
112
|
provide: NG_VALUE_ACCESSOR,
|
|
122
113
|
useExisting: forwardRef(() => DatePickerPanelComponent),
|
|
123
114
|
multi: true,
|
|
124
115
|
},
|
|
125
|
-
], usesInheritance: true, ngImport: i0, template: "<div class=\"aui-date-picker-panel__wrapper\">\n <aui-calendar-header\n [dateNavRange]=\"navRange\"\n [anchor]=\"anchor\"\n [minAvail]=\"minDate\"\n [maxAvail]=\"maxDate\"\n [style.margin-inline.px]=\"4\"\n (navRangeChange)=\"navRange = $event\"\n (anchorChange)=\"anchor = $event\"\n ></aui-calendar-header>\n\n <aui-picker-panel\n [style.margin]=\"'16px 0'\"\n [anchor]=\"anchor\"\n [navRange]=\"navRange\"\n [disabledDate]=\"disabledDate\"\n [weekStartDay]=\"weekStartDay\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [type]=\"type\"\n [matchDates]=\"[selectedDate]\"\n (select)=\"panelValueChange($event)\"\n ></aui-picker-panel>\n\n <ng-container\n *ngIf=\"extraFooter\"\n [ngTemplateOutlet]=\"extraFooter\"\n [ngTemplateOutletContext]=\"{ context: this }\"\n ></ng-container>\n\n <ng-container *ngIf=\"showFooter\">\n <aui-calendar-footer\n (clear)=\"clear.next()\"\n (confirm)=\"confirmValue()\"\n [clearable]=\"clearable\"\n [clearText]=\"clearText\"\n *ngIf=\"showTime; else today\"\n >\n <ng-container\n *ngIf=\"footerTemplate; else default\"\n [ngTemplateOutlet]=\"footerTemplate\"\n [ngTemplateOutletContext]=\"{ context: this }\"\n ></ng-container>\n\n <ng-template #default>\n <aui-time-picker\n *ngIf=\"currentNavType === DatePickerType.Day && showTime\"\n [showIcon]=\"false\"\n size=\"small\"\n [(ngModel)]=\"selectedTime\"\n [disableHours]=\"getDisabledTimeFn(selectedDate, 'hours')\"\n [disableMinutes]=\"getDisabledTimeFn(selectedDate, 'minutes')\"\n [disableSeconds]=\"getDisabledTimeFn(selectedDate, 'seconds')\"\n tooltipPosition=\"top start\"\n (ngModelChange)=\"timeDateChange($event)\"\n [placeholder]=\"'select_time' | auiI18n\"\n ></aui-time-picker>\n </ng-template>\n </aui-calendar-footer>\n\n <ng-template #today>\n <aui-calendar-footer\n *ngIf=\"type === DatePickerType.Day\"\n (clear)=\"clearValue()\"\n [clearable]=\"false\"\n [customAction]=\"todayBtn\"\n >\n </aui-calendar-footer>\n <ng-template #todayBtn>\n <button\n aui-button=\"inline\"\n (click)=\"setToday()\"\n >\n {{ 'today' | auiI18n }}\n </button>\n </ng-template>\n </ng-template>\n </ng-container>\n</div>\n", styles: [".aui-date-picker-panel__wrapper{display:flex;flex-direction:column;font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);font-weight:var(--aui-font-weight-normal)}.aui-date-picker-panel__wrapper .aui-time-picker{width:88px}\n"], dependencies: [{ kind: "component", type: CalendarHeaderComponent, selector: "aui-calendar-header", inputs: ["dateNavRange", "anchor", "maxAvail", "minAvail"], outputs: ["navRangeChange", "anchorChange"] }, { kind: "component", type: PickerPanelComponent, selector: "aui-picker-panel", inputs: ["navRange", "type", "anchor", "matchDates", "disabledDate", "weekStartDay", "minDate", "maxDate"], outputs: ["select", "hovered"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: CalendarFooterComponent, selector: "aui-calendar-footer", inputs: ["clearable", "clearText", "customAction"], outputs: ["confirm", "clear"] }, { kind: "component", type: TimePickerComponent, selector: "aui-time-picker", inputs: ["format", "size", "placeholder", "clearable", "showIcon", "disableHours", "disableMinutes", "disableSeconds", "hourStep", "minuteStep", "secondStep", "footerTemplate"], outputs: ["open", "close"] }, { 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: ButtonComponent, selector: "button[aui-button]", inputs: ["aui-button", "size", "plain", "loading", "round", "square"] }, { kind: "pipe", type: I18nPipe, name: "auiI18n" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
116
|
+
], usesInheritance: true, ngImport: i0, template: "<div class=\"aui-date-picker-panel__wrapper\">\n <aui-calendar-header\n [dateNavRange]=\"navRange\"\n [anchor]=\"anchor\"\n [minAvail]=\"minDate\"\n [maxAvail]=\"maxDate\"\n [style.margin-inline.px]=\"4\"\n (navRangeChange)=\"navRange = $event\"\n (anchorChange)=\"anchor = $event\"\n ></aui-calendar-header>\n\n <aui-picker-panel\n [style.margin]=\"'16px 0'\"\n [anchor]=\"anchor\"\n [navRange]=\"navRange\"\n [disabledDate]=\"disabledDate\"\n [weekStartDay]=\"weekStartDay\"\n [minDate]=\"minDate\"\n [maxDate]=\"maxDate\"\n [type]=\"type\"\n [matchDates]=\"[selectedDate]\"\n (select)=\"panelValueChange($event)\"\n ></aui-picker-panel>\n\n <ng-container\n *ngIf=\"extraFooter\"\n [ngTemplateOutlet]=\"extraFooter\"\n [ngTemplateOutletContext]=\"{ context: this }\"\n ></ng-container>\n\n <ng-container *ngIf=\"showFooter\">\n <aui-calendar-footer\n (clear)=\"clear.next()\"\n (confirm)=\"confirmValue()\"\n [clearable]=\"clearable\"\n [clearText]=\"clearText\"\n *ngIf=\"showTime; else today\"\n >\n <ng-container\n *ngIf=\"footerTemplate; else default\"\n [ngTemplateOutlet]=\"footerTemplate\"\n [ngTemplateOutletContext]=\"{ context: this }\"\n ></ng-container>\n\n <ng-template #default>\n <aui-time-picker\n *ngIf=\"currentNavType === DatePickerType.Day && showTime\"\n [showIcon]=\"false\"\n size=\"small\"\n [(ngModel)]=\"selectedTime\"\n [disableHours]=\"getDisabledTimeFn(selectedDate, 'hours')\"\n [disableMinutes]=\"getDisabledTimeFn(selectedDate, 'minutes')\"\n [disableSeconds]=\"getDisabledTimeFn(selectedDate, 'seconds')\"\n tooltipPosition=\"top start\"\n (ngModelChange)=\"timeDateChange($event)\"\n [placeholder]=\"'select_time' | auiI18n\"\n ></aui-time-picker>\n </ng-template>\n </aui-calendar-footer>\n\n <ng-template #today>\n <aui-calendar-footer\n *ngIf=\"type === DatePickerType.Day\"\n (clear)=\"clearValue()\"\n [clearable]=\"false\"\n [customAction]=\"todayBtn\"\n >\n </aui-calendar-footer>\n <ng-template #todayBtn>\n <button\n aui-button=\"inline\"\n (click)=\"setToday()\"\n >\n {{ 'today' | auiI18n }}\n </button>\n </ng-template>\n </ng-template>\n </ng-container>\n</div>\n", styles: [".aui-date-picker-panel__wrapper{display:flex;flex-direction:column;font-size:var(--aui-font-size-m);line-height:var(--aui-line-height-m);font-weight:var(--aui-font-weight-normal)}.aui-date-picker-panel__wrapper .aui-time-picker{width:88px}\n"], dependencies: [{ kind: "component", type: CalendarHeaderComponent, selector: "aui-calendar-header", inputs: ["dateNavRange", "anchor", "maxAvail", "minAvail"], outputs: ["navRangeChange", "anchorChange"] }, { kind: "component", type: PickerPanelComponent, selector: "aui-picker-panel", inputs: ["navRange", "type", "anchor", "matchDates", "disabledDate", "weekStartDay", "minDate", "maxDate"], outputs: ["select", "hovered"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: CalendarFooterComponent, selector: "aui-calendar-footer", inputs: ["clearable", "clearText", "customAction"], outputs: ["confirm", "clear"] }, { kind: "component", type: TimePickerComponent, selector: "aui-time-picker", inputs: ["format", "size", "placeholder", "clearable", "showIcon", "disableHours", "disableMinutes", "disableSeconds", "hourStep", "minuteStep", "secondStep", "footerTemplate"], outputs: ["open", "close"] }, { 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: ButtonComponent, selector: "button[aui-button]", inputs: ["aui-button", "size", "plain", "loading", "round", "square"] }, { kind: "pipe", type: I18nPipe, name: "auiI18n" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
126
117
|
}
|
|
127
118
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: DatePickerPanelComponent, decorators: [{
|
|
128
119
|
type: Component,
|
|
@@ -179,4 +170,4 @@ function combineDisabledTimeFn(...disabledFnList) {
|
|
|
179
170
|
seconds: (hour, minute) => Array.from(new Set(disabledFnList.flatMap(fn => fn(date)?.seconds(hour, minute) || []))),
|
|
180
171
|
});
|
|
181
172
|
}
|
|
182
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2RhdGUtcGlja2VyL2NhbGVuZGFyL2RhdGUtcGlja2VyLXBhbmVsL2NvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9kYXRlLXBpY2tlci9jYWxlbmRhci9kYXRlLXBpY2tlci1wYW5lbC90ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6RCxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFFTixpQkFBaUIsRUFDakIsVUFBVSxHQUNYLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRSxPQUFPLEtBQTRCLE1BQU0sT0FBTyxDQUFDO0FBRWpELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbkQsT0FBTyxFQUNMLFVBQVUsRUFDVixZQUFZLEVBQ1osWUFBWSxFQUNaLG1CQUFtQixHQUVwQixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFBRSxZQUFZLEVBQWtCLE1BQU0sd0JBQXdCLENBQUM7QUFDdEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM3QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFB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TyxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FDcEUsQ0FDRjtLQUNKLENBQUMsQ0FBQztBQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0lmLCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxuICBmb3J3YXJkUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SLCBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCBkYXlqcywgeyBDb25maWdUeXBlLCBEYXlqcyB9IGZyb20gJ2RheWpzJztcblxuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29tbW9uRm9ybUNvbnRyb2wgfSBmcm9tICcuLi8uLi8uLi9mb3JtL2NvbW1vbi1mb3JtJztcbmltcG9ydCB7IEkxOG5QaXBlIH0gZnJvbSAnLi4vLi4vLi4vaTE4bi9pMThuLnBpcGUnO1xuaW1wb3J0IHtcbiAgSE9VUl9JVEVNUyxcbiAgTUlOVVRFX0lURU1TLFxuICBTRUNPTkRfSVRFTVMsXG4gIFRpbWVQaWNrZXJDb21wb25lbnQsXG4gIFRpbWVQaWNrZXJNb2RlbCxcbn0gZnJvbSAnLi4vLi4vLi4vdGltZS1waWNrZXInO1xuaW1wb3J0IHsgRGF0ZU5hdlJhbmdlLCBEaXNhYmxlZFRpbWVGbiB9IGZyb20gJy4uLy4uL2RhdGUtcGlja2VyLnR5cGUnO1xuaW1wb3J0IHsgRGF0ZVBpY2tlclR5cGUgfSBmcm9tICcuLi9jb25zdGFudCc7XG5pbXBvcnQgeyBDYWxlbmRhckZvb3RlckNvbXBvbmVudCB9IGZyb20gJy4uL2Zvb3Rlci9jb21wb25lbnQnO1xuaW1wb3J0IHsgQ2FsZW5kYXJIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuLi9oZWFkZXIvY29tcG9uZW50JztcbmltcG9ydCB7IFBpY2tlclBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi4vcGFuZWwvcGlja2VyLXBhbmVsJztcbmltcG9ydCB7XG4gIGdldE5hdlJhbmdlQnlUeXBlLFxuICBnZXRUaW1lUGlja2VyTW9kZWwsXG4gIGdldFR5cGVCeU5hdlJhbmdlLFxuICBuZXh0TmF2UmFuZ2VUeXBlLFxuICB1cGRhdGVEYXRlLFxuICB1cGRhdGVEYXRlQnlUaW1lTW9kZWwsXG59IGZyb20gJy4uL3V0aWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdWktZGF0ZS1waWNrZXItcGFuZWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vdGVtcGxhdGUuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3N0eWxlLnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRGF0ZVBpY2tlclBhbmVsQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gIF0sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBDYWxlbmRhckhlYWRlckNvbXBvbmVudCxcbiAgICBQaWNrZXJQYW5lbENvbXBvbmVudCxcbiAgICBOZ0lmLFxuICAgIE5nVGVtcGxhdGVPdXRsZXQsXG4gICAgQ2FsZW5kYXJGb290ZXJDb21wb25lbnQsXG4gICAgVGltZVBpY2tlckNvbXBvbmVudCxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBCdXR0b25Db21wb25lbnQsXG4gICAgSTE4blBpcGUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIERhdGVQaWNrZXJQYW5lbENvbXBvbmVudCBleHRlbmRzIENvbW1vbkZvcm1Db250cm9sPERheWpzPiB7XG4gIEBJbnB1dCgpXG4gIGNsZWFyYWJsZSA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgY2xlYXJUZXh0OiBzdHJpbmc7XG5cbiAgQElucHV0KClcbiAgc2V0IHR5cGUodHlwZTogRGF0ZVBpY2tlclR5cGUpIHtcbiAgICB0aGlzLm5hdlJhbmdlID0gZ2V0TmF2UmFuZ2VCeVR5cGUodHlwZSk7XG4gICAgdGhpcy5fdHlwZSA9IHR5cGU7XG4gIH1cblxuICBnZXQgdHlwZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fdHlwZTtcbiAgfVxuXG4gIHByaXZhdGUgX3R5cGU6IERhdGVQaWNrZXJUeXBlO1xuXG4gIEBJbnB1dCgpXG4gIHNob3dUaW1lID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgZGlzYWJsZWREYXRlOiAoZGF0ZTogRGF5anMsIHR5cGU6IERhdGVOYXZSYW5nZSkgPT4gYm9vbGVhbiA9ICgpID0+IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIGRpc2FibGVkVGltZTogRGlzYWJsZWRUaW1lRm4gPSAoKSA9PiBudWxsO1xuXG4gIEBJbnB1dCgpXG4gIHdlZWtTdGFydERheSA9IDA7XG5cbiAgQElucHV0KClcbiAgc2hvd0Zvb3RlciA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgZm9vdGVyVGVtcGxhdGU6IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG4gIEBJbnB1dCgpXG4gIGV4dHJhRm9vdGVyOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuICBASW5wdXQoKVxuICBtaW5EYXRlOiBEYXlqcztcblxuICBASW5wdXQoKVxuICBtYXhEYXRlOiBEYXlqcztcblxuICBAT3V0cHV0KClcbiAgY29uZmlybSA9IG5ldyBFdmVudEVtaXR0ZXI8RGF5anM+KCk7XG5cbiAgQE91dHB1dCgpXG4gIGNsZWFyID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIHByaXZhdGUgX2NhY2hlU2VsZWN0ZWREYXRlOiBEYXlqcztcbiAgcHJpdmF0ZSBfY2FjaGVEaXNhYmxlZFRpbWVGbjogUmV0dXJuVHlwZTxEaXNhYmxlZFRpbWVGbj47XG5cbiAgZ2V0RGlzYWJsZWRUaW1lRm4oXG4gICAgc2VsZWN0ZWREYXRlOiBEYXlqcyxcbiAgICB0eXBlOiBrZXlvZiBSZXR1cm5UeXBlPERpc2FibGVkVGltZUZuPixcbiAgKSB7XG4gICAgaWYgKHNlbGVjdGVkRGF0ZSAhPT0gdGhpcy5fY2FjaGVTZWxlY3RlZERhdGUpIHtcbiAgICAgIHRoaXMuX2NhY2hlRGlzYWJsZWRUaW1lRm4gPSBjb21iaW5lRGlzYWJsZWRUaW1lRm4oXG4gICAgICAgIHRoaXMuX2Rpc2FibGVkVGltZUZuLmJpbmQodGhpcyksXG4gICAgICAgIHRoaXMuZGlzYWJsZWRUaW1lLFxuICAgICAgKShzZWxlY3RlZERhdGUpO1xuICAgICAgdGhpcy5fY2FjaGVTZWxlY3RlZERhdGUgPSBzZWxlY3RlZERhdGU7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLl9jYWNoZURpc2FibGVkVGltZUZuPy5bdHlwZV07XG4gIH1cblxuICBuYXZSYW5nZTogRGF0ZU5hdlJhbmdlO1xuXG4gIGdldCBjdXJyZW50TmF2VHlwZSgpIHtcbiAgICByZXR1cm4gZ2V0VHlwZUJ5TmF2UmFuZ2UodGhpcy5uYXZSYW5nZSk7XG4gIH1cblxuICBhbmNob3I6IERheWpzO1xuXG4gIHNlbGVjdGVkRGF0ZTogRGF5anM7XG5cbiAgc2VsZWN0ZWRUaW1lOiBUaW1lUGlja2VyTW9kZWw7XG5cbiAgRGF0ZU5hdlJhbmdlID0gRGF0ZU5hdlJhbmdlO1xuICBEYXRlUGlja2VyVHlwZSA9IERhdGVQaWNrZXJUeXBlO1xuXG4gIG92ZXJyaWRlIHdyaXRlVmFsdWUob2JqOiBEYXlqcykge1xuICAgIHN1cGVyLndyaXRlVmFsdWUob2JqKTtcbiAgICB0aGlzLnNlbGVjdGVkRGF0ZSA9IG9iajtcbiAgICB0aGlzLnNlbGVjdGVkVGltZSA9IGdldFRpbWVQaWNrZXJNb2RlbChvYmopO1xuICAgIHRoaXMuYW5jaG9yID0gb2JqIHx8IGRheWpzKCk7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwYW5lbFZhbHVlQ2hhbmdlKHZhbHVlOiBEYXlqcykge1xuICAgIHRoaXMuc2VsZWN0ZWREYXRlID0gdXBkYXRlRGF0ZShcbiAgICAgIHRoaXMuc2VsZWN0ZWREYXRlIHx8IGRheWpzKCksXG4gICAgICB2YWx1ZSxcbiAgICAgIHRoaXMuY3VycmVudE5hdlR5cGUsXG4gICAgKTtcbiAgICB0aGlzLmFuY2hvciA9IHRoaXMuc2VsZWN0ZWREYXRlO1xuICAgIHRoaXMuc2VsZWN0ZWREYXRlID0gdXBkYXRlRGF0ZUJ5VGltZU1vZGVsKFxuICAgICAgdGhpcy5zZWxlY3RlZERhdGUsXG4gICAgICB0aGlzLnNlbGVjdGVkVGltZSxcbiAgICApO1xuICAgIGlmICh0aGlzLnR5cGUgPT09IHRoaXMuY3VycmVudE5hdlR5cGUpIHtcbiAgICAgIHRoaXMuY29uZmlybVZhbHVlKHRoaXMuc2VsZWN0ZWREYXRlLCAhdGhpcy5zaG93VGltZSk7XG4gICAgfVxuICAgIGNvbnN0IG5leHROYXZSYW5nZSA9IG5leHROYXZSYW5nZVR5cGUoXG4gICAgICB0aGlzLm5hdlJhbmdlLFxuICAgICAgZ2V0TmF2UmFuZ2VCeVR5cGUodGhpcy50eXBlKSxcbiAgICApO1xuICAgIGlmICh0aGlzLm5hdlJhbmdlICE9PSBuZXh0TmF2UmFuZ2UpIHtcbiAgICAgIHRoaXMubmF2UmFuZ2UgPSBuZXh0TmF2UmFuZ2U7XG4gICAgfVxuICB9XG5cbiAgY29uZmlybVZhbHVlKHZhbHVlPzogQ29uZmlnVHlwZSwgY2xvc2VBZnRlckNvbmZpcm0gPSB0cnVlKSB7XG4gICAgdGhpcy5lbWl0VmFsdWUodmFsdWUgPyBkYXlqcyh2YWx1ZSkgOiB0aGlzLnNlbGVjdGVkRGF0ZSk7XG4gICAgY2xvc2VBZnRlckNvbmZpcm0gJiYgdGhpcy5jb25maXJtLm5leHQobnVsbCk7XG4gIH1cblxuICB0aW1lRGF0ZUNoYW5nZSh0aW1lOiBUaW1lUGlja2VyTW9kZWwpIHtcbiAgICBpZiAoIXRoaXMuc2VsZWN0ZWREYXRlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuc2VsZWN0ZWREYXRlID0gdXBkYXRlRGF0ZUJ5VGltZU1vZGVsKHRoaXMuc2VsZWN0ZWREYXRlLCB0aW1lKTtcbiAgICB0aGlzLmVtaXRWYWx1ZSh0aGlzLnNlbGVjdGVkRGF0ZSk7XG4gIH1cblxuICBzZXRUb2RheSgpIHtcbiAgICB0aGlzLmNvbmZpcm1WYWx1ZShkYXlqcygpLCB0cnVlKTtcbiAgfVxuXG4gIGNsZWFyVmFsdWUoKSB7XG4gICAgdGhpcy5zZWxlY3RlZFRpbWUgPSBudWxsO1xuICAgIHRoaXMuY2xlYXIubmV4dCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfZGlzYWJsZWRUaW1lRm4oXG4gICAgc2VsZWN0ZWREYXRlOiBEYXlqcyxcbiAgKTogUmVjb3JkPGtleW9mIFJldHVyblR5cGU8RGlzYWJsZWRUaW1lRm4+LCAoKSA9PiBudW1iZXJbXT4ge1xuICAgIGNvbnN0IGdldFRpbWVGaWx0ZXIgPSAoXG4gICAgICBkYXRlOiBEYXlqcyxcbiAgICAgIGNvbXBhcmF0b3I6IChhOiBudW1iZXIsIGI6IG51bWJlcikgPT4gYm9vbGVhbixcbiAgICApID0+ICh7XG4gICAgICBob3VyczogKCkgPT4gSE9VUl9JVEVNUy5maWx0ZXIoaXRlbSA9PiBjb21wYXJhdG9yKGl0ZW0sIGRhdGUuaG91cigpKSksXG4gICAgICBtaW51dGVzOiAoaG91cj86IG51bWJlcikgPT5cbiAgICAgICAgaG91ciA9PT0gZGF0ZS5ob3VyKClcbiAgICAgICAgICA/IE1JTlVURV9JVEVNUy5maWx0ZXIoaXRlbSA9PiBjb21wYXJhdG9yKGl0ZW0sIGRhdGUubWludXRlKCkpKVxuICAgICAgICAgIDogW10sXG4gICAgICBzZWNvbmRzOiAoaG91cj86IG51bWJlciwgbWludXRlPzogbnVtYmVyKSA9PlxuICAgICAgICBob3VyID09PSBkYXRlLmhvdXIoKSAmJiBtaW51dGUgPT09IGRhdGUubWludXRlKClcbiAgICAgICAgICA/IFNFQ09ORF9JVEVNUy5maWx0ZXIoaXRlbSA9PiBjb21wYXJhdG9yKGl0ZW0sIGRhdGUuc2Vjb25kKCkpKVxuICAgICAgICAgIDogW10sXG4gICAgfSk7XG5cbiAgICBpZiAoc2VsZWN0ZWREYXRlKSB7XG4gICAgICBpZiAodGhpcy5taW5EYXRlICYmIHNlbGVjdGVkRGF0ZS5pc1NhbWUodGhpcy5taW5EYXRlLCAnZGF0ZScpKSB7XG4gICAgICAgIHJldHVybiBnZXRUaW1lRmlsdGVyKHRoaXMubWluRGF0ZSwgKGEsIGIpID0+IGEgPCBiKTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLm1heERhdGUgJiYgc2VsZWN0ZWREYXRlLmlzU2FtZSh0aGlzLm1heERhdGUsICdkYXRlJykpIHtcbiAgICAgICAgcmV0dXJuIGdldFRpbWVGaWx0ZXIodGhpcy5tYXhEYXRlLCAoYSwgYikgPT4gYSA+IGIpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBob3VyczogKCkgPT4gW10sXG4gICAgICBtaW51dGVzOiAoKSA9PiBbXSxcbiAgICAgIHNlY29uZHM6ICgpID0+IFtdLFxuICAgIH07XG4gIH1cbn1cblxuZnVuY3Rpb24gY29tYmluZURpc2FibGVkVGltZUZuKFxuICAuLi5kaXNhYmxlZEZuTGlzdDogRGlzYWJsZWRUaW1lRm5bXVxuKTogRGlzYWJsZWRUaW1lRm4ge1xuICByZXR1cm4gKGRhdGU6IERheWpzKSA9PiAoe1xuICAgIGhvdXJzOiAoKSA9PlxuICAgICAgQXJyYXkuZnJvbShcbiAgICAgICAgbmV3IFNldChkaXNhYmxlZEZuTGlzdC5mbGF0TWFwKGZuID0+IGZuKGRhdGUpPy5ob3VycygpIHx8IFtdKSksXG4gICAgICApLFxuICAgIG1pbnV0ZXM6IChob3VyPzogbnVtYmVyKSA9PlxuICAgICAgQXJyYXkuZnJvbShcbiAgICAgICAgbmV3IFNldChkaXNhYmxlZEZuTGlzdC5mbGF0TWFwKGZuID0+IGZuKGRhdGUpPy5taW51dGVzKGhvdXIpIHx8IFtdKSksXG4gICAgICApLFxuICAgIHNlY29uZHM6IChob3VyPzogbnVtYmVyLCBtaW51dGU/OiBudW1iZXIpID0+XG4gICAgICBBcnJheS5mcm9tKFxuICAgICAgICBuZXcgU2V0KFxuICAgICAgICAgIGRpc2FibGVkRm5MaXN0LmZsYXRNYXAoZm4gPT4gZm4oZGF0ZSk/LnNlY29uZHMoaG91ciwgbWludXRlKSB8fCBbXSksXG4gICAgICAgICksXG4gICAgICApLFxuICB9KTtcbn1cbiIsIjxkaXYgY2xhc3M9XCJhdWktZGF0ZS1waWNrZXItcGFuZWxfX3dyYXBwZXJcIj5cbiAgPGF1aS1jYWxlbmRhci1oZWFkZXJcbiAgICBbZGF0ZU5hdlJhbmdlXT1cIm5hdlJhbmdlXCJcbiAgICBbYW5jaG9yXT1cImFuY2hvclwiXG4gICAgW21pbkF2YWlsXT1cIm1pbkRhdGVcIlxuICAgIFttYXhBdmFpbF09XCJtYXhEYXRlXCJcbiAgICBbc3R5bGUubWFyZ2luLWlubGluZS5weF09XCI0XCJcbiAgICAobmF2UmFuZ2VDaGFuZ2UpPVwibmF2UmFuZ2UgPSAkZXZlbnRcIlxuICAgIChhbmNob3JDaGFuZ2UpPVwiYW5jaG9yID0gJGV2ZW50XCJcbiAgPjwvYXVpLWNhbGVuZGFyLWhlYWRlcj5cblxuICA8YXVpLXBpY2tlci1wYW5lbFxuICAgIFtzdHlsZS5tYXJnaW5dPVwiJzE2cHggMCdcIlxuICAgIFthbmNob3JdPVwiYW5jaG9yXCJcbiAgICBbbmF2UmFuZ2VdPVwibmF2UmFuZ2VcIlxuICAgIFtkaXNhYmxlZERhdGVdPVwiZGlzYWJsZWREYXRlXCJcbiAgICBbd2Vla1N0YXJ0RGF5XT1cIndlZWtTdGFydERheVwiXG4gICAgW21pbkRhdGVdPVwibWluRGF0ZVwiXG4gICAgW21heERhdGVdPVwibWF4RGF0ZVwiXG4gICAgW3R5cGVdPVwidHlwZVwiXG4gICAgW21hdGNoRGF0ZXNdPVwiW3NlbGVjdGVkRGF0ZV1cIlxuICAgIChzZWxlY3QpPVwicGFuZWxWYWx1ZUNoYW5nZSgkZXZlbnQpXCJcbiAgPjwvYXVpLXBpY2tlci1wYW5lbD5cblxuICA8bmctY29udGFpbmVyXG4gICAgKm5nSWY9XCJleHRyYUZvb3RlclwiXG4gICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiZXh0cmFGb290ZXJcIlxuICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGNvbnRleHQ6IHRoaXMgfVwiXG4gID48L25nLWNvbnRhaW5lcj5cblxuICA8bmctY29udGFpbmVyICpuZ0lmPVwic2hvd0Zvb3RlclwiPlxuICAgIDxhdWktY2FsZW5kYXItZm9vdGVyXG4gICAgICAoY2xlYXIpPVwiY2xlYXIubmV4dCgpXCJcbiAgICAgIChjb25maXJtKT1cImNvbmZpcm1WYWx1ZSgpXCJcbiAgICAgIFtjbGVhcmFibGVdPVwiY2xlYXJhYmxlXCJcbiAgICAgIFtjbGVhclRleHRdPVwiY2xlYXJUZXh0XCJcbiAgICAgICpuZ0lmPVwic2hvd1RpbWU7IGVsc2UgdG9kYXlcIlxuICAgID5cbiAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgKm5nSWY9XCJmb290ZXJUZW1wbGF0ZTsgZWxzZSBkZWZhdWx0XCJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiZm9vdGVyVGVtcGxhdGVcIlxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBjb250ZXh0OiB0aGlzIH1cIlxuICAgICAgPjwvbmctY29udGFpbmVyPlxuXG4gICAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHQ+XG4gICAgICAgIDxhdWktdGltZS1waWNrZXJcbiAgICAgICAgICAqbmdJZj1cImN1cnJlbnROYXZUeXBlID09PSBEYXRlUGlja2VyVHlwZS5EYXkgJiYgc2hvd1RpbWVcIlxuICAgICAgICAgIFtzaG93SWNvbl09XCJmYWxzZVwiXG4gICAgICAgICAgc2l6ZT1cInNtYWxsXCJcbiAgICAgICAgICBbKG5nTW9kZWwpXT1cInNlbGVjdGVkVGltZVwiXG4gICAgICAgICAgW2Rpc2FibGVIb3Vyc109XCJnZXREaXNhYmxlZFRpbWVGbihzZWxlY3RlZERhdGUsICdob3VycycpXCJcbiAgICAgICAgICBbZGlzYWJsZU1pbnV0ZXNdPVwiZ2V0RGlzYWJsZWRUaW1lRm4oc2VsZWN0ZWREYXRlLCAnbWludXRlcycpXCJcbiAgICAgICAgICBbZGlzYWJsZVNlY29uZHNdPVwiZ2V0RGlzYWJsZWRUaW1lRm4oc2VsZWN0ZWREYXRlLCAnc2Vjb25kcycpXCJcbiAgICAgICAgICB0b29sdGlwUG9zaXRpb249XCJ0b3Agc3RhcnRcIlxuICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInRpbWVEYXRlQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInc2VsZWN0X3RpbWUnIHwgYXVpSTE4blwiXG4gICAgICAgID48L2F1aS10aW1lLXBpY2tlcj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9hdWktY2FsZW5kYXItZm9vdGVyPlxuXG4gICAgPG5nLXRlbXBsYXRlICN0b2RheT5cbiAgICAgIDxhdWktY2FsZW5kYXItZm9vdGVyXG4gICAgICAgICpuZ0lmPVwidHlwZSA9PT0gRGF0ZVBpY2tlclR5cGUuRGF5XCJcbiAgICAgICAgKGNsZWFyKT1cImNsZWFyVmFsdWUoKVwiXG4gICAgICAgIFtjbGVhcmFibGVdPVwiZmFsc2VcIlxuICAgICAgICBbY3VzdG9tQWN0aW9uXT1cInRvZGF5QnRuXCJcbiAgICAgID5cbiAgICAgIDwvYXVpLWNhbGVuZGFyLWZvb3Rlcj5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjdG9kYXlCdG4+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICBhdWktYnV0dG9uPVwiaW5saW5lXCJcbiAgICAgICAgICAoY2xpY2spPVwic2V0VG9kYXkoKVwiXG4gICAgICAgID5cbiAgICAgICAgICB7eyAndG9kYXknIHwgYXVpSTE4biB9fVxuICAgICAgICA8L2J1dHRvbj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9uZy1jb250YWluZXI+XG48L2Rpdj5cbiJdfQ==
|
|
173
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2RhdGUtcGlja2VyL2NhbGVuZGFyL2RhdGUtcGlja2VyLXBhbmVsL2NvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9kYXRlLXBpY2tlci9jYWxlbmRhci9kYXRlLXBpY2tlci1wYW5lbC90ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6RCxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFFTixpQkFBaUIsRUFDakIsVUFBVSxHQUNYLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRSxPQUFPLEtBQTRCLE1BQU0sT0FBTyxDQUFDO0FBRWpELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbkQsT0FBTyxFQUNMLFVBQVUsRUFDVixZQUFZLEVBQ1osWUFBWSxFQUNaLG1CQUFtQixHQUVwQixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFBRSxZQUFZLEVBQWtCLE1BQU0sd0JBQXdCLENBQUM7QUFDdEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM3QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx1QkFB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RFQsS0FBSztnQkFJTixjQUFjO3NCQURiLEtBQUs7Z0JBSU4sV0FBVztzQkFEVixLQUFLO2dCQUlOLE9BQU87c0JBRE4sS0FBSztnQkFJTixPQUFPO3NCQUROLEtBQUs7Z0JBSU4sT0FBTztzQkFETixNQUFNO2dCQUlQLEtBQUs7c0JBREosTUFBTTs7QUEySFQsU0FBUyxxQkFBcUIsQ0FDNUIsR0FBRyxjQUFnQztJQUVuQyxPQUFPLENBQUMsSUFBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZCLEtBQUssRUFBRSxHQUFHLEVBQUUsQ0FDVixLQUFLLENBQUMsSUFBSSxDQUNSLElBQUksR0FBRyxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FDL0Q7UUFDSCxPQUFPLEVBQUUsQ0FBQyxJQUFhLEVBQUUsRUFBRSxDQUN6QixLQUFLLENBQUMsSUFBSSxDQUNSLElBQUksR0FBRyxDQUFDLGNBQWMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQ3JFO1FBQ0gsT0FBTyxFQUFFLENBQUMsSUFBYSxFQUFFLE1BQWUsRUFBRSxFQUFFLENBQzFDLEtBQUssQ0FBQyxJQUFJLENBQ1IsSUFBSSxHQUFHLENBQ0wsY0FBYyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxPQUFPLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUNwRSxDQUNGO0tBQ0osQ0FBQyxDQUFDO0FBQ0wsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nSWYsIE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG4gIGZvcndhcmRSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IsIEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IGRheWpzLCB7IENvbmZpZ1R5cGUsIERheWpzIH0gZnJvbSAnZGF5anMnO1xuXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb21tb25Gb3JtQ29udHJvbCB9IGZyb20gJy4uLy4uLy4uL2Zvcm0vY29tbW9uLWZvcm0nO1xuaW1wb3J0IHsgSTE4blBpcGUgfSBmcm9tICcuLi8uLi8uLi9pMThuL2kxOG4ucGlwZSc7XG5pbXBvcnQge1xuICBIT1VSX0lURU1TLFxuICBNSU5VVEVfSVRFTVMsXG4gIFNFQ09ORF9JVEVNUyxcbiAgVGltZVBpY2tlckNvbXBvbmVudCxcbiAgVGltZVBpY2tlck1vZGVsLFxufSBmcm9tICcuLi8uLi8uLi90aW1lLXBpY2tlcic7XG5pbXBvcnQgeyBEYXRlTmF2UmFuZ2UsIERpc2FibGVkVGltZUZuIH0gZnJvbSAnLi4vLi4vZGF0ZS1waWNrZXIudHlwZSc7XG5pbXBvcnQgeyBEYXRlUGlja2VyVHlwZSB9IGZyb20gJy4uL2NvbnN0YW50JztcbmltcG9ydCB7IENhbGVuZGFyRm9vdGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vZm9vdGVyL2NvbXBvbmVudCc7XG5pbXBvcnQgeyBDYWxlbmRhckhlYWRlckNvbXBvbmVudCB9IGZyb20gJy4uL2hlYWRlci9jb21wb25lbnQnO1xuaW1wb3J0IHsgUGlja2VyUGFuZWxDb21wb25lbnQgfSBmcm9tICcuLi9wYW5lbC9waWNrZXItcGFuZWwnO1xuaW1wb3J0IHtcbiAgZ2V0TmF2UmFuZ2VCeVR5cGUsXG4gIGdldFRpbWVQaWNrZXJNb2RlbCxcbiAgZ2V0VHlwZUJ5TmF2UmFuZ2UsXG4gIG5leHROYXZSYW5nZVR5cGUsXG4gIHVwZGF0ZURhdGUsXG4gIHVwZGF0ZURhdGVCeVRpbWVNb2RlbCxcbn0gZnJvbSAnLi4vdXRpbCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F1aS1kYXRlLXBpY2tlci1wYW5lbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi90ZW1wbGF0ZS5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3R5bGUuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBEYXRlUGlja2VyUGFuZWxDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIENhbGVuZGFySGVhZGVyQ29tcG9uZW50LFxuICAgIFBpY2tlclBhbmVsQ29tcG9uZW50LFxuICAgIE5nSWYsXG4gICAgTmdUZW1wbGF0ZU91dGxldCxcbiAgICBDYWxlbmRhckZvb3RlckNvbXBvbmVudCxcbiAgICBUaW1lUGlja2VyQ29tcG9uZW50LFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIEJ1dHRvbkNvbXBvbmVudCxcbiAgICBJMThuUGlwZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgRGF0ZVBpY2tlclBhbmVsQ29tcG9uZW50IGV4dGVuZHMgQ29tbW9uRm9ybUNvbnRyb2w8RGF5anM+IHtcbiAgQElucHV0KClcbiAgY2xlYXJhYmxlID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBjbGVhclRleHQ6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBzZXQgdHlwZSh0eXBlOiBEYXRlUGlja2VyVHlwZSkge1xuICAgIHRoaXMubmF2UmFuZ2UgPSBnZXROYXZSYW5nZUJ5VHlwZSh0eXBlKTtcbiAgICB0aGlzLl90eXBlID0gdHlwZTtcbiAgfVxuXG4gIGdldCB0eXBlKCkge1xuICAgIHJldHVybiB0aGlzLl90eXBlO1xuICB9XG5cbiAgcHJpdmF0ZSBfdHlwZTogRGF0ZVBpY2tlclR5cGU7XG5cbiAgQElucHV0KClcbiAgc2hvd1RpbWUgPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBkaXNhYmxlZERhdGU6IChkYXRlOiBEYXlqcywgdHlwZTogRGF0ZU5hdlJhbmdlKSA9PiBib29sZWFuID0gKCkgPT4gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgZGlzYWJsZWRUaW1lOiBEaXNhYmxlZFRpbWVGbiA9ICgpID0+IG51bGw7XG5cbiAgQElucHV0KClcbiAgd2Vla1N0YXJ0RGF5ID0gMDtcblxuICBASW5wdXQoKVxuICBzaG93Rm9vdGVyID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBmb290ZXJUZW1wbGF0ZTogVGVtcGxhdGVSZWY8dW5rbm93bj47XG5cbiAgQElucHV0KClcbiAgZXh0cmFGb290ZXI6IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG4gIEBJbnB1dCgpXG4gIG1pbkRhdGU6IERheWpzO1xuXG4gIEBJbnB1dCgpXG4gIG1heERhdGU6IERheWpzO1xuXG4gIEBPdXRwdXQoKVxuICBjb25maXJtID0gbmV3IEV2ZW50RW1pdHRlcjxEYXlqcz4oKTtcblxuICBAT3V0cHV0KClcbiAgY2xlYXIgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgcHJpdmF0ZSBfY2FjaGVTZWxlY3RlZERhdGU6IERheWpzO1xuICBwcml2YXRlIF9jYWNoZURpc2FibGVkVGltZUZuOiBSZXR1cm5UeXBlPERpc2FibGVkVGltZUZuPjtcblxuICBnZXREaXNhYmxlZFRpbWVGbihcbiAgICBzZWxlY3RlZERhdGU6IERheWpzLFxuICAgIHR5cGU6IGtleW9mIFJldHVyblR5cGU8RGlzYWJsZWRUaW1lRm4+LFxuICApIHtcbiAgICBpZiAoc2VsZWN0ZWREYXRlICE9PSB0aGlzLl9jYWNoZVNlbGVjdGVkRGF0ZSkge1xuICAgICAgdGhpcy5fY2FjaGVEaXNhYmxlZFRpbWVGbiA9IGNvbWJpbmVEaXNhYmxlZFRpbWVGbihcbiAgICAgICAgdGhpcy5fZGlzYWJsZWRUaW1lRm4uYmluZCh0aGlzKSxcbiAgICAgICAgdGhpcy5kaXNhYmxlZFRpbWUsXG4gICAgICApKHNlbGVjdGVkRGF0ZSk7XG4gICAgICB0aGlzLl9jYWNoZVNlbGVjdGVkRGF0ZSA9IHNlbGVjdGVkRGF0ZTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuX2NhY2hlRGlzYWJsZWRUaW1lRm4/Llt0eXBlXTtcbiAgfVxuXG4gIG5hdlJhbmdlOiBEYXRlTmF2UmFuZ2U7XG5cbiAgZ2V0IGN1cnJlbnROYXZUeXBlKCkge1xuICAgIHJldHVybiBnZXRUeXBlQnlOYXZSYW5nZSh0aGlzLm5hdlJhbmdlKTtcbiAgfVxuXG4gIGFuY2hvcjogRGF5anM7XG5cbiAgc2VsZWN0ZWREYXRlOiBEYXlqcztcblxuICBzZWxlY3RlZFRpbWU6IFRpbWVQaWNrZXJNb2RlbDtcblxuICBEYXRlTmF2UmFuZ2UgPSBEYXRlTmF2UmFuZ2U7XG4gIERhdGVQaWNrZXJUeXBlID0gRGF0ZVBpY2tlclR5cGU7XG5cbiAgb3ZlcnJpZGUgd3JpdGVWYWx1ZShvYmo6IERheWpzKSB7XG4gICAgc3VwZXIud3JpdGVWYWx1ZShvYmopO1xuICAgIHRoaXMuc2VsZWN0ZWREYXRlID0gb2JqO1xuICAgIHRoaXMuc2VsZWN0ZWRUaW1lID0gZ2V0VGltZVBpY2tlck1vZGVsKG9iaik7XG4gICAgdGhpcy5hbmNob3IgPSBvYmogfHwgZGF5anMoKTtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHBhbmVsVmFsdWVDaGFuZ2UodmFsdWU6IERheWpzKSB7XG4gICAgdGhpcy5zZWxlY3RlZERhdGUgPSB1cGRhdGVEYXRlKFxuICAgICAgdGhpcy5zZWxlY3RlZERhdGUgfHwgZGF5anMoKSxcbiAgICAgIHZhbHVlLFxuICAgICAgdGhpcy5jdXJyZW50TmF2VHlwZSxcbiAgICApO1xuICAgIHRoaXMuYW5jaG9yID0gdGhpcy5zZWxlY3RlZERhdGU7XG4gICAgdGhpcy5zZWxlY3RlZERhdGUgPSB1cGRhdGVEYXRlQnlUaW1lTW9kZWwoXG4gICAgICB0aGlzLnNlbGVjdGVkRGF0ZSxcbiAgICAgIHRoaXMuc2VsZWN0ZWRUaW1lLFxuICAgICk7XG4gICAgaWYgKHRoaXMudHlwZSA9PT0gdGhpcy5jdXJyZW50TmF2VHlwZSkge1xuICAgICAgdGhpcy5jb25maXJtVmFsdWUodGhpcy5zZWxlY3RlZERhdGUsICF0aGlzLnNob3dUaW1lKTtcbiAgICB9XG4gICAgY29uc3QgbmV4dE5hdlJhbmdlID0gbmV4dE5hdlJhbmdlVHlwZShcbiAgICAgIHRoaXMubmF2UmFuZ2UsXG4gICAgICBnZXROYXZSYW5nZUJ5VHlwZSh0aGlzLnR5cGUpLFxuICAgICk7XG4gICAgaWYgKHRoaXMubmF2UmFuZ2UgIT09IG5leHROYXZSYW5nZSkge1xuICAgICAgdGhpcy5uYXZSYW5nZSA9IG5leHROYXZSYW5nZTtcbiAgICB9XG4gIH1cblxuICBjb25maXJtVmFsdWUodmFsdWU/OiBDb25maWdUeXBlLCBjbG9zZUFmdGVyQ29uZmlybSA9IHRydWUpIHtcbiAgICB0aGlzLmVtaXRWYWx1ZSh2YWx1ZSA/IGRheWpzKHZhbHVlKSA6IHRoaXMuc2VsZWN0ZWREYXRlKTtcbiAgICBjbG9zZUFmdGVyQ29uZmlybSAmJiB0aGlzLmNvbmZpcm0ubmV4dChudWxsKTtcbiAgfVxuXG4gIHRpbWVEYXRlQ2hhbmdlKHRpbWU6IFRpbWVQaWNrZXJNb2RlbCkge1xuICAgIGlmICghdGhpcy5zZWxlY3RlZERhdGUpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5zZWxlY3RlZERhdGUgPSB1cGRhdGVEYXRlQnlUaW1lTW9kZWwodGhpcy5zZWxlY3RlZERhdGUsIHRpbWUpO1xuICAgIHRoaXMuZW1pdFZhbHVlKHRoaXMuc2VsZWN0ZWREYXRlKTtcbiAgfVxuXG4gIHNldFRvZGF5KCkge1xuICAgIHRoaXMuY29uZmlybVZhbHVlKGRheWpzKCksIHRydWUpO1xuICB9XG5cbiAgY2xlYXJWYWx1ZSgpIHtcbiAgICB0aGlzLnNlbGVjdGVkVGltZSA9IG51bGw7XG4gICAgdGhpcy5jbGVhci5uZXh0KCk7XG4gIH1cblxuICBwcml2YXRlIF9kaXNhYmxlZFRpbWVGbihcbiAgICBzZWxlY3RlZERhdGU6IERheWpzLFxuICApOiBSZWNvcmQ8a2V5b2YgUmV0dXJuVHlwZTxEaXNhYmxlZFRpbWVGbj4sICgpID0+IG51bWJlcltdPiB7XG4gICAgY29uc3QgZ2V0VGltZUZpbHRlciA9IChcbiAgICAgIGRhdGU6IERheWpzLFxuICAgICAgY29tcGFyYXRvcjogKGE6IG51bWJlciwgYjogbnVtYmVyKSA9PiBib29sZWFuLFxuICAgICkgPT4gKHtcbiAgICAgIGhvdXJzOiAoKSA9PiBIT1VSX0lURU1TLmZpbHRlcihpdGVtID0+IGNvbXBhcmF0b3IoaXRlbSwgZGF0ZS5ob3VyKCkpKSxcbiAgICAgIG1pbnV0ZXM6IChob3VyPzogbnVtYmVyKSA9PlxuICAgICAgICBob3VyID09PSBkYXRlLmhvdXIoKVxuICAgICAgICAgID8gTUlOVVRFX0lURU1TLmZpbHRlcihpdGVtID0+IGNvbXBhcmF0b3IoaXRlbSwgZGF0ZS5taW51dGUoKSkpXG4gICAgICAgICAgOiBbXSxcbiAgICAgIHNlY29uZHM6IChob3VyPzogbnVtYmVyLCBtaW51dGU/OiBudW1iZXIpID0+XG4gICAgICAgIGhvdXIgPT09IGRhdGUuaG91cigpICYmIG1pbnV0ZSA9PT0gZGF0ZS5taW51dGUoKVxuICAgICAgICAgID8gU0VDT05EX0lURU1TLmZpbHRlcihpdGVtID0+IGNvbXBhcmF0b3IoaXRlbSwgZGF0ZS5zZWNvbmQoKSkpXG4gICAgICAgICAgOiBbXSxcbiAgICB9KTtcblxuICAgIGlmIChzZWxlY3RlZERhdGUpIHtcbiAgICAgIGlmICh0aGlzLm1pbkRhdGUgJiYgc2VsZWN0ZWREYXRlLmlzU2FtZSh0aGlzLm1pbkRhdGUsICdkYXRlJykpIHtcbiAgICAgICAgcmV0dXJuIGdldFRpbWVGaWx0ZXIodGhpcy5taW5EYXRlLCAoYSwgYikgPT4gYSA8IGIpO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMubWF4RGF0ZSAmJiBzZWxlY3RlZERhdGUuaXNTYW1lKHRoaXMubWF4RGF0ZSwgJ2RhdGUnKSkge1xuICAgICAgICByZXR1cm4gZ2V0VGltZUZpbHRlcih0aGlzLm1heERhdGUsIChhLCBiKSA9PiBhID4gYik7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIGhvdXJzOiAoKSA9PiBbXSxcbiAgICAgIG1pbnV0ZXM6ICgpID0+IFtdLFxuICAgICAgc2Vjb25kczogKCkgPT4gW10sXG4gICAgfTtcbiAgfVxufVxuXG5mdW5jdGlvbiBjb21iaW5lRGlzYWJsZWRUaW1lRm4oXG4gIC4uLmRpc2FibGVkRm5MaXN0OiBEaXNhYmxlZFRpbWVGbltdXG4pOiBEaXNhYmxlZFRpbWVGbiB7XG4gIHJldHVybiAoZGF0ZTogRGF5anMpID0+ICh7XG4gICAgaG91cnM6ICgpID0+XG4gICAgICBBcnJheS5mcm9tKFxuICAgICAgICBuZXcgU2V0KGRpc2FibGVkRm5MaXN0LmZsYXRNYXAoZm4gPT4gZm4oZGF0ZSk/LmhvdXJzKCkgfHwgW10pKSxcbiAgICAgICksXG4gICAgbWludXRlczogKGhvdXI/OiBudW1iZXIpID0+XG4gICAgICBBcnJheS5mcm9tKFxuICAgICAgICBuZXcgU2V0KGRpc2FibGVkRm5MaXN0LmZsYXRNYXAoZm4gPT4gZm4oZGF0ZSk/Lm1pbnV0ZXMoaG91cikgfHwgW10pKSxcbiAgICAgICksXG4gICAgc2Vjb25kczogKGhvdXI/OiBudW1iZXIsIG1pbnV0ZT86IG51bWJlcikgPT5cbiAgICAgIEFycmF5LmZyb20oXG4gICAgICAgIG5ldyBTZXQoXG4gICAgICAgICAgZGlzYWJsZWRGbkxpc3QuZmxhdE1hcChmbiA9PiBmbihkYXRlKT8uc2Vjb25kcyhob3VyLCBtaW51dGUpIHx8IFtdKSxcbiAgICAgICAgKSxcbiAgICAgICksXG4gIH0pO1xufVxuIiwiPGRpdiBjbGFzcz1cImF1aS1kYXRlLXBpY2tlci1wYW5lbF9fd3JhcHBlclwiPlxuICA8YXVpLWNhbGVuZGFyLWhlYWRlclxuICAgIFtkYXRlTmF2UmFuZ2VdPVwibmF2UmFuZ2VcIlxuICAgIFthbmNob3JdPVwiYW5jaG9yXCJcbiAgICBbbWluQXZhaWxdPVwibWluRGF0ZVwiXG4gICAgW21heEF2YWlsXT1cIm1heERhdGVcIlxuICAgIFtzdHlsZS5tYXJnaW4taW5saW5lLnB4XT1cIjRcIlxuICAgIChuYXZSYW5nZUNoYW5nZSk9XCJuYXZSYW5nZSA9ICRldmVudFwiXG4gICAgKGFuY2hvckNoYW5nZSk9XCJhbmNob3IgPSAkZXZlbnRcIlxuICA+PC9hdWktY2FsZW5kYXItaGVhZGVyPlxuXG4gIDxhdWktcGlja2VyLXBhbmVsXG4gICAgW3N0eWxlLm1hcmdpbl09XCInMTZweCAwJ1wiXG4gICAgW2FuY2hvcl09XCJhbmNob3JcIlxuICAgIFtuYXZSYW5nZV09XCJuYXZSYW5nZVwiXG4gICAgW2Rpc2FibGVkRGF0ZV09XCJkaXNhYmxlZERhdGVcIlxuICAgIFt3ZWVrU3RhcnREYXldPVwid2Vla1N0YXJ0RGF5XCJcbiAgICBbbWluRGF0ZV09XCJtaW5EYXRlXCJcbiAgICBbbWF4RGF0ZV09XCJtYXhEYXRlXCJcbiAgICBbdHlwZV09XCJ0eXBlXCJcbiAgICBbbWF0Y2hEYXRlc109XCJbc2VsZWN0ZWREYXRlXVwiXG4gICAgKHNlbGVjdCk9XCJwYW5lbFZhbHVlQ2hhbmdlKCRldmVudClcIlxuICA+PC9hdWktcGlja2VyLXBhbmVsPlxuXG4gIDxuZy1jb250YWluZXJcbiAgICAqbmdJZj1cImV4dHJhRm9vdGVyXCJcbiAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJleHRyYUZvb3RlclwiXG4gICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgY29udGV4dDogdGhpcyB9XCJcbiAgPjwvbmctY29udGFpbmVyPlxuXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJzaG93Rm9vdGVyXCI+XG4gICAgPGF1aS1jYWxlbmRhci1mb290ZXJcbiAgICAgIChjbGVhcik9XCJjbGVhci5uZXh0KClcIlxuICAgICAgKGNvbmZpcm0pPVwiY29uZmlybVZhbHVlKClcIlxuICAgICAgW2NsZWFyYWJsZV09XCJjbGVhcmFibGVcIlxuICAgICAgW2NsZWFyVGV4dF09XCJjbGVhclRleHRcIlxuICAgICAgKm5nSWY9XCJzaG93VGltZTsgZWxzZSB0b2RheVwiXG4gICAgPlxuICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAqbmdJZj1cImZvb3RlclRlbXBsYXRlOyBlbHNlIGRlZmF1bHRcIlxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJmb290ZXJUZW1wbGF0ZVwiXG4gICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IGNvbnRleHQ6IHRoaXMgfVwiXG4gICAgICA+PC9uZy1jb250YWluZXI+XG5cbiAgICAgIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdD5cbiAgICAgICAgPGF1aS10aW1lLXBpY2tlclxuICAgICAgICAgICpuZ0lmPVwiY3VycmVudE5hdlR5cGUgPT09IERhdGVQaWNrZXJUeXBlLkRheSAmJiBzaG93VGltZVwiXG4gICAgICAgICAgW3Nob3dJY29uXT1cImZhbHNlXCJcbiAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgIFsobmdNb2RlbCldPVwic2VsZWN0ZWRUaW1lXCJcbiAgICAgICAgICBbZGlzYWJsZUhvdXJzXT1cImdldERpc2FibGVkVGltZUZuKHNlbGVjdGVkRGF0ZSwgJ2hvdXJzJylcIlxuICAgICAgICAgIFtkaXNhYmxlTWludXRlc109XCJnZXREaXNhYmxlZFRpbWVGbihzZWxlY3RlZERhdGUsICdtaW51dGVzJylcIlxuICAgICAgICAgIFtkaXNhYmxlU2Vjb25kc109XCJnZXREaXNhYmxlZFRpbWVGbihzZWxlY3RlZERhdGUsICdzZWNvbmRzJylcIlxuICAgICAgICAgIHRvb2x0aXBQb3NpdGlvbj1cInRvcCBzdGFydFwiXG4gICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwidGltZURhdGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidzZWxlY3RfdGltZScgfCBhdWlJMThuXCJcbiAgICAgICAgPjwvYXVpLXRpbWUtcGlja2VyPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2F1aS1jYWxlbmRhci1mb290ZXI+XG5cbiAgICA8bmctdGVtcGxhdGUgI3RvZGF5PlxuICAgICAgPGF1aS1jYWxlbmRhci1mb290ZXJcbiAgICAgICAgKm5nSWY9XCJ0eXBlID09PSBEYXRlUGlja2VyVHlwZS5EYXlcIlxuICAgICAgICAoY2xlYXIpPVwiY2xlYXJWYWx1ZSgpXCJcbiAgICAgICAgW2NsZWFyYWJsZV09XCJmYWxzZVwiXG4gICAgICAgIFtjdXN0b21BY3Rpb25dPVwidG9kYXlCdG5cIlxuICAgICAgPlxuICAgICAgPC9hdWktY2FsZW5kYXItZm9vdGVyPlxuICAgICAgPG5nLXRlbXBsYXRlICN0b2RheUJ0bj5cbiAgICAgICAgPGJ1dHRvblxuICAgICAgICAgIGF1aS1idXR0b249XCJpbmxpbmVcIlxuICAgICAgICAgIChjbGljayk9XCJzZXRUb2RheSgpXCJcbiAgICAgICAgPlxuICAgICAgICAgIHt7ICd0b2RheScgfCBhdWlJMThuIH19XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLXRlbXBsYXRlPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuIl19
|
|
@@ -4,13 +4,13 @@ import { ButtonComponent } from '../../../button/button.component';
|
|
|
4
4
|
import { I18nPipe } from '../../../i18n/i18n.pipe';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export class CalendarFooterComponent {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
static
|
|
13
|
-
static
|
|
7
|
+
constructor() {
|
|
8
|
+
this.clearable = true;
|
|
9
|
+
this.confirm = new EventEmitter();
|
|
10
|
+
this.clear = new EventEmitter();
|
|
11
|
+
}
|
|
12
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: CalendarFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
13
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.3", type: CalendarFooterComponent, isStandalone: true, selector: "aui-calendar-footer", inputs: { clearable: "clearable", clearText: "clearText", customAction: "customAction" }, outputs: { confirm: "confirm", clear: "clear" }, ngImport: i0, template: "<div class=\"aui-calendar-footer__wrapper\">\n <div style=\"flex: 1\">\n <ng-content></ng-content>\n </div>\n <div>\n <ng-container\n *ngIf=\"customAction; else default\"\n [ngTemplateOutlet]=\"customAction\"\n >\n </ng-container>\n <ng-template #default>\n <button\n aui-button=\"text\"\n *ngIf=\"clearable\"\n (click)=\"clear.emit()\"\n size=\"small\"\n >\n {{ clearText || ('clear' | auiI18n) }}\n </button>\n <button\n aui-button=\"primary\"\n (click)=\"confirm.emit()\"\n size=\"small\"\n >\n {{ 'confirm' | auiI18n }}\n </button>\n </ng-template>\n </div>\n</div>\n", styles: [".aui-calendar-footer__wrapper{display:flex;flex-direction:row;justify-content:space-between;border-top:1px solid rgb(var(--aui-color-n-8));padding:8px 0 0}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ButtonComponent, selector: "button[aui-button]", inputs: ["aui-button", "size", "plain", "loading", "round", "square"] }, { kind: "pipe", type: I18nPipe, name: "auiI18n" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
14
14
|
}
|
|
15
15
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: CalendarFooterComponent, decorators: [{
|
|
16
16
|
type: Component,
|
|
@@ -26,4 +26,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImpor
|
|
|
26
26
|
}], clear: [{
|
|
27
27
|
type: Output
|
|
28
28
|
}] } });
|
|
29
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2RhdGUtcGlja2VyL2NhbGVuZGFyL2Zvb3Rlci9jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvZGF0ZS1waWNrZXIvY2FsZW5kYXIvZm9vdGVyL3RlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUVOLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQVduRCxNQUFNLE9BQU8sdUJBQXVCO0lBVHBDO1FBV0UsY0FBUyxHQUFHLElBQUksQ0FBQztRQVNqQixZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUduQyxVQUFLLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztLQUNsQzs4R0FmWSx1QkFBdUI7a0dBQXZCLHVCQUF1QiwwTkN2QnBDLDByQkE2QkEsdU5EUlksSUFBSSw2RkFBRSxnQkFBZ0Isb0pBQUUsZUFBZSxpSUFBRSxRQUFROzsyRkFFaEQsdUJBQXVCO2tCQVRuQyxTQUFTOytCQUNFLHFCQUFxQixpQkFHaEIsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJLFdBQ1AsQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLFFBQVEsQ0FBQzs4QkFJNUQsU0FBUztzQkFEUixLQUFLO2dCQUlOLFNBQVM7c0JBRFIsS0FBSztnQkFJTixZQUFZO3NCQURYLEtBQUs7Z0JBSU4sT0FBTztzQkFETixNQUFNO2dCQUlQLEtBQUs7c0JBREosTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nSWYsIE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJMThuUGlwZSB9IGZyb20gJy4uLy4uLy4uL2kxOG4vaTE4bi5waXBlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXVpLWNhbGVuZGFyLWZvb3RlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi90ZW1wbGF0ZS5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3R5bGUuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW05nSWYsIE5nVGVtcGxhdGVPdXRsZXQsIEJ1dHRvbkNvbXBvbmVudCwgSTE4blBpcGVdLFxufSlcbmV4cG9ydCBjbGFzcyBDYWxlbmRhckZvb3RlckNvbXBvbmVudCB7XG4gIEBJbnB1dCgpXG4gIGNsZWFyYWJsZSA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgY2xlYXJUZXh0OiBzdHJpbmc7XG5cbiAgQElucHV0KClcbiAgY3VzdG9tQWN0aW9uOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIEBPdXRwdXQoKVxuICBjb25maXJtID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBPdXRwdXQoKVxuICBjbGVhciA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbn1cbiIsIjxkaXYgY2xhc3M9XCJhdWktY2FsZW5kYXItZm9vdGVyX193cmFwcGVyXCI+XG4gIDxkaXYgc3R5bGU9XCJmbGV4OiAxXCI+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICA8L2Rpdj5cbiAgPGRpdj5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICAqbmdJZj1cImN1c3RvbUFjdGlvbjsgZWxzZSBkZWZhdWx0XCJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImN1c3RvbUFjdGlvblwiXG4gICAgPlxuICAgIDwvbmctY29udGFpbmVyPlxuICAgIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdD5cbiAgICAgIDxidXR0b25cbiAgICAgICAgYXVpLWJ1dHRvbj1cInRleHRcIlxuICAgICAgICAqbmdJZj1cImNsZWFyYWJsZVwiXG4gICAgICAgIChjbGljayk9XCJjbGVhci5lbWl0KClcIlxuICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgPlxuICAgICAgICB7eyBjbGVhclRleHQgfHwgKCdjbGVhcicgfCBhdWlJMThuKSB9fVxuICAgICAgPC9idXR0b24+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIGF1aS1idXR0b249XCJwcmltYXJ5XCJcbiAgICAgICAgKGNsaWNrKT1cImNvbmZpcm0uZW1pdCgpXCJcbiAgICAgICAgc2l6ZT1cInNtYWxsXCJcbiAgICAgID5cbiAgICAgICAge3sgJ2NvbmZpcm0nIHwgYXVpSTE4biB9fVxuICAgICAgPC9idXR0b24+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
|
|
@@ -1,33 +1,71 @@
|
|
|
1
1
|
import { NgIf, NgTemplateOutlet } from '@angular/common';
|
|
2
|
-
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation, } from '@angular/core';
|
|
2
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewEncapsulation, computed, signal, } from '@angular/core';
|
|
3
3
|
import dayjs from 'dayjs';
|
|
4
4
|
import { ButtonComponent } from '../../../button/button.component';
|
|
5
|
-
import { I18nPipe } from '../../../i18n
|
|
5
|
+
import { I18nPipe } from '../../../i18n';
|
|
6
6
|
import { IconComponent } from '../../../icon/icon.component';
|
|
7
7
|
import { buildBem } from '../../../internal/utils';
|
|
8
|
-
import { DateNavRange, Side
|
|
8
|
+
import { DateNavRange, Side } from '../../date-picker.type';
|
|
9
9
|
import { MONTH, YEAR } from '../constant';
|
|
10
10
|
import { calcRangeValue } from '../util';
|
|
11
11
|
import * as i0 from "@angular/core";
|
|
12
|
+
import * as i1 from "../../../i18n";
|
|
12
13
|
const bem = buildBem('aui-calendar-header');
|
|
13
14
|
export class CalendarHeaderComponent {
|
|
14
|
-
dateNavRange
|
|
15
|
-
|
|
16
|
-
|
|
15
|
+
get dateNavRange() {
|
|
16
|
+
return this.$$dateNavRange();
|
|
17
|
+
}
|
|
18
|
+
set dateNavRange(val) {
|
|
19
|
+
if (!val || this.$$dateNavRange() === val) {
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
this.$$dateNavRange.set(val);
|
|
23
|
+
}
|
|
24
|
+
get anchor() {
|
|
25
|
+
return this.$$anchor();
|
|
26
|
+
}
|
|
27
|
+
set anchor(val) {
|
|
28
|
+
if (!val || this.$$anchor() === val) {
|
|
29
|
+
return;
|
|
30
|
+
}
|
|
31
|
+
this.$$anchor.set(val);
|
|
32
|
+
}
|
|
17
33
|
get _maxAvail() {
|
|
18
34
|
return this.maxAvail ? dayjs(this.maxAvail) : null;
|
|
19
35
|
}
|
|
20
|
-
minAvail;
|
|
21
36
|
get _minAvail() {
|
|
22
37
|
return this.minAvail ? dayjs(this.minAvail) : null;
|
|
23
38
|
}
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
39
|
+
constructor(i18nService) {
|
|
40
|
+
this.i18nService = i18nService;
|
|
41
|
+
this.navRangeChange = new EventEmitter();
|
|
42
|
+
this.anchorChange = new EventEmitter();
|
|
43
|
+
this.$$dateNavRange = signal(DateNavRange.Month);
|
|
44
|
+
this.$$anchor = signal(dayjs());
|
|
45
|
+
this.bem = bem;
|
|
46
|
+
this.DateNavRange = DateNavRange;
|
|
47
|
+
this.$monthBeforeYear = this.i18nService.$monthBeforeYear;
|
|
48
|
+
this.$headerRange = computed(() => {
|
|
49
|
+
const locale = this.i18nService.$locale();
|
|
50
|
+
const [start, end] = Object.values(calcRangeValue(this.$$dateNavRange(), this.$$anchor())).map(date => date.toDate());
|
|
51
|
+
return {
|
|
52
|
+
start: {
|
|
53
|
+
year: start.toLocaleDateString(locale, { year: 'numeric' }),
|
|
54
|
+
month: start.toLocaleDateString(locale, { month: 'short' }),
|
|
55
|
+
},
|
|
56
|
+
end: {
|
|
57
|
+
year: end?.toLocaleDateString(locale, { year: 'numeric' }),
|
|
58
|
+
month: end?.toLocaleDateString(locale, { month: 'short' }),
|
|
59
|
+
},
|
|
60
|
+
};
|
|
61
|
+
});
|
|
62
|
+
this.clickNav = (range) => {
|
|
63
|
+
if (![DateNavRange.Month, DateNavRange.Year].includes(range)) {
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
this.navRangeChange.next(range === DateNavRange.Month ? DateNavRange.Year : DateNavRange.Decade);
|
|
67
|
+
};
|
|
28
68
|
}
|
|
29
|
-
bem = bem;
|
|
30
|
-
DateNavRange = DateNavRange;
|
|
31
69
|
shouldShowNav(type, side) {
|
|
32
70
|
const availValue = (side === Side.Left ? this._minAvail : this._maxAvail)?.clone();
|
|
33
71
|
if (!availValue) {
|
|
@@ -72,19 +110,13 @@ export class CalendarHeaderComponent {
|
|
|
72
110
|
}
|
|
73
111
|
this.anchorChange.next(anchor);
|
|
74
112
|
}
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
return;
|
|
78
|
-
}
|
|
79
|
-
this.navRangeChange.next(range === DateNavRange.Month ? DateNavRange.Year : DateNavRange.Decade);
|
|
80
|
-
};
|
|
81
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: CalendarHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
82
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.3", type: CalendarHeaderComponent, isStandalone: true, selector: "aui-calendar-header", inputs: { dateNavRange: "dateNavRange", anchor: "anchor", maxAvail: "maxAvail", minAvail: "minAvail" }, outputs: { navRangeChange: "navRangeChange", anchorChange: "anchorChange" }, ngImport: i0, template: "<div [class]=\"bem.element('container')\">\n <div>\n <ng-container\n *ngIf=\"dateNavRange !== DateNavRange.Decade\"\n [ngTemplateOutlet]=\"yearControl\"\n [ngTemplateOutletContext]=\"{ side: 'left' }\"\n ></ng-container>\n\n <ng-container\n *ngIf=\"dateNavRange === DateNavRange.Decade\"\n [ngTemplateOutlet]=\"decadeControl\"\n [ngTemplateOutletContext]=\"{ side: 'left' }\"\n ></ng-container>\n </div>\n <!-- \u5185\u5BB9\u533A -->\n <span\n *ngIf=\"dateNavRange === DateNavRange.Month\"\n [class]=\"bem.element('nav-content')\"\n >\n <button\n aui-button=\"text\"\n (click)=\"clickNav(DateNavRange.Year)\"\n >\n {{ headerRange?.start?.year() }}{{ 'year_suffix' | auiI18n }}\n </button>\n <div class=\"separator\">\n <span *ngIf=\"!('year_suffix' | auiI18n) && !('month_suffix' | auiI18n)\">\n /\n </span>\n </div>\n <button\n aui-button=\"text\"\n (click)=\"clickNav(DateNavRange.Month)\"\n >\n {{ headerRange?.start?.month() + 1 }}{{ 'month_suffix' | auiI18n }}\n </button>\n </span>\n\n <span\n *ngIf=\"dateNavRange === DateNavRange.Year\"\n [class]=\"bem.element('nav-content')\"\n >\n <button\n aui-button=\"text\"\n (click)=\"clickNav(DateNavRange.Year)\"\n >\n {{ headerRange?.start?.year() }}{{ 'year_suffix' | auiI18n }}\n </button>\n </span>\n\n <span\n *ngIf=\"dateNavRange === DateNavRange.Decade\"\n [class]=\"bem.element('nav-content')\"\n >\n {{ headerRange?.start.year() }} - {{ headerRange?.end?.year() }}\n </span>\n\n <div [class]=\"bem.element('nav-action')\">\n <ng-container\n *ngIf=\"dateNavRange !== DateNavRange.Decade\"\n [ngTemplateOutlet]=\"yearControl\"\n [ngTemplateOutletContext]=\"{ side: 'right' }\"\n ></ng-container>\n\n <ng-container\n *ngIf=\"dateNavRange === DateNavRange.Decade\"\n [ngTemplateOutlet]=\"decadeControl\"\n [ngTemplateOutletContext]=\"{ side: 'right' }\"\n ></ng-container>\n </div>\n</div>\n\n<ng-template\n #yearControl\n let-side=\"side\"\n>\n <span class=\"action-bar\">\n <button\n aui-button=\"text\"\n *ngIf=\"side === 'right'\"\n [class.hidden]=\"\n !shouldShowNav(DateNavRange.Month, side) ||\n dateNavRange !== DateNavRange.Month\n \"\n (click)=\"navHead(DateNavRange.Month, 1)\"\n >\n <aui-icon icon=\"angle_right\"></aui-icon>\n </button>\n <button\n aui-button=\"text\"\n (click)=\"navHead(DateNavRange.Year, side === 'left' ? -1 : 1)\"\n [class.hidden]=\"!shouldShowNav(DateNavRange.Year, side)\"\n >\n <aui-icon\n [icon]=\"side === 'left' ? 'angles_left' : 'angles_right'\"\n ></aui-icon>\n </button>\n <button\n aui-button=\"text\"\n *ngIf=\"side === 'left'\"\n [class.hidden]=\"\n !shouldShowNav(DateNavRange.Month, side) ||\n dateNavRange !== DateNavRange.Month\n \"\n (click)=\"navHead(DateNavRange.Month, -1)\"\n >\n <aui-icon icon=\"angle_left\"></aui-icon>\n </button>\n </span>\n</ng-template>\n\n<ng-template\n #decadeControl\n let-side=\"side\"\n>\n <button\n aui-button=\"text\"\n (click)=\"navHead(DateNavRange.Decade, side === 'left' ? -10 : 10)\"\n [class.hidden]=\"!shouldShowNav(DateNavRange.Decade, side)\"\n >\n <aui-icon\n [icon]=\"side === 'left' ? 'angles_left' : 'angles_right'\"\n ></aui-icon>\n </button>\n</ng-template>\n", styles: [".aui-calendar-header__container{height:24px;display:flex;align-items:center;justify-content:space-between}.aui-calendar-header__nav-content{flex:1;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;font-size:var(--aui-font-size-l);color:rgb(var(--aui-color-main-text));font-weight:var(--aui-font-weight-bolder)}.aui-calendar-header__nav-content .separator{margin:0 var(--aui-spacing-s)}.aui-calendar-header__nav-content .aui-button--text{color:rgb(var(--aui-color-main-text))}.aui-calendar-header__nav-content .aui-button--text .aui-button__content{font-size:var(--aui-font-size-l);font-weight:var(--aui-font-weight-bolder);padding:0}.aui-calendar-header__nav-content .aui-button--text:hover{background-color:transparent;color:rgb(var(--aui-color-primary));text-decoration:none!important}.aui-calendar-header__nav-content .aui-button--text+.aui-button--text{margin-left:0}.action-bar{width:52px;display:flex}.action-bar .hidden{opacity:0;pointer-events:none}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ButtonComponent, selector: "button[aui-button]", inputs: ["aui-button", "size", "plain", "loading", "round", "square"] }, { kind: "component", type: IconComponent, selector: "aui-icon", inputs: ["icon", "light", "dark", "link", "margin", "size", "color", "background", "backgroundColor"] }, { kind: "pipe", type: I18nPipe, name: "auiI18n" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
113
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: CalendarHeaderComponent, deps: [{ token: i1.I18nService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
114
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.3", type: CalendarHeaderComponent, isStandalone: true, selector: "aui-calendar-header", inputs: { dateNavRange: "dateNavRange", anchor: "anchor", maxAvail: "maxAvail", minAvail: "minAvail" }, outputs: { navRangeChange: "navRangeChange", anchorChange: "anchorChange" }, ngImport: i0, template: "<div [class]=\"bem.element('container')\">\n <div>\n <ng-container\n *ngIf=\"dateNavRange !== DateNavRange.Decade\"\n [ngTemplateOutlet]=\"yearControl\"\n [ngTemplateOutletContext]=\"{ side: 'left' }\"\n ></ng-container>\n\n <ng-container\n *ngIf=\"dateNavRange === DateNavRange.Decade\"\n [ngTemplateOutlet]=\"decadeControl\"\n [ngTemplateOutletContext]=\"{ side: 'left' }\"\n ></ng-container>\n </div>\n <!-- \u5185\u5BB9\u533A -->\n <span\n *ngIf=\"dateNavRange === DateNavRange.Month\"\n [class]=\"bem.element('nav-content')\"\n >\n <ng-container\n [ngTemplateOutlet]=\"$monthBeforeYear() ? monthTemplate : yearTemplate\"\n ></ng-container>\n <div class=\"separator\"></div>\n <ng-container\n [ngTemplateOutlet]=\"$monthBeforeYear() ? yearTemplate : monthTemplate\"\n ></ng-container>\n </span>\n\n <span\n *ngIf=\"dateNavRange === DateNavRange.Year\"\n [class]=\"bem.element('nav-content')\"\n >\n <button\n aui-button=\"text\"\n (click)=\"clickNav(DateNavRange.Year)\"\n >\n {{ $headerRange().start.year }}\n </button>\n </span>\n\n <span\n *ngIf=\"dateNavRange === DateNavRange.Decade\"\n [class]=\"bem.element('nav-content')\"\n >\n {{ $headerRange().start.year }} - {{ $headerRange().end.year }}\n </span>\n\n <div [class]=\"bem.element('nav-action')\">\n <ng-container\n *ngIf=\"dateNavRange !== DateNavRange.Decade\"\n [ngTemplateOutlet]=\"yearControl\"\n [ngTemplateOutletContext]=\"{ side: 'right' }\"\n ></ng-container>\n\n <ng-container\n *ngIf=\"dateNavRange === DateNavRange.Decade\"\n [ngTemplateOutlet]=\"decadeControl\"\n [ngTemplateOutletContext]=\"{ side: 'right' }\"\n ></ng-container>\n </div>\n</div>\n\n<ng-template\n #yearControl\n let-side=\"side\"\n>\n <span class=\"action-bar\">\n <button\n aui-button=\"text\"\n size=\"mini\"\n [square]=\"true\"\n *ngIf=\"side === 'right'\"\n [class.hidden]=\"\n !shouldShowNav(DateNavRange.Month, side) ||\n dateNavRange !== DateNavRange.Month\n \"\n (click)=\"navHead(DateNavRange.Month, 1)\"\n >\n <aui-icon icon=\"angle_right\"></aui-icon>\n </button>\n <button\n aui-button=\"text\"\n size=\"mini\"\n [square]=\"true\"\n (click)=\"navHead(DateNavRange.Year, side === 'left' ? -1 : 1)\"\n [class.hidden]=\"!shouldShowNav(DateNavRange.Year, side)\"\n >\n <aui-icon\n [icon]=\"side === 'left' ? 'angles_left' : 'angles_right'\"\n ></aui-icon>\n </button>\n <button\n aui-button=\"text\"\n size=\"mini\"\n [square]=\"true\"\n *ngIf=\"side === 'left'\"\n [class.hidden]=\"\n !shouldShowNav(DateNavRange.Month, side) ||\n dateNavRange !== DateNavRange.Month\n \"\n (click)=\"navHead(DateNavRange.Month, -1)\"\n >\n <aui-icon icon=\"angle_left\"></aui-icon>\n </button>\n </span>\n</ng-template>\n\n<ng-template\n #decadeControl\n let-side=\"side\"\n>\n <button\n aui-button=\"text\"\n size=\"mini\"\n [square]=\"true\"\n (click)=\"navHead(DateNavRange.Decade, side === 'left' ? -10 : 10)\"\n [class.hidden]=\"!shouldShowNav(DateNavRange.Decade, side)\"\n >\n <aui-icon\n [icon]=\"side === 'left' ? 'angles_left' : 'angles_right'\"\n ></aui-icon>\n </button>\n</ng-template>\n\n<ng-template #yearTemplate>\n <button\n aui-button=\"text\"\n class=\"header-range\"\n (click)=\"clickNav(DateNavRange.Year)\"\n >\n {{ $headerRange().start.year }}\n </button>\n</ng-template>\n<ng-template #monthTemplate>\n <button\n aui-button=\"text\"\n class=\"header-range\"\n (click)=\"clickNav(DateNavRange.Month)\"\n >\n {{ $headerRange().start.month }}\n </button>\n</ng-template>\n", styles: [".aui-calendar-header__container{height:24px;display:flex;align-items:center;justify-content:space-between}.aui-calendar-header__nav-content{flex:1;max-width:calc(100% - var(--aui-inline-height-xs) * 4 - var(--aui-spacing-s) * 2);display:flex;flex-wrap:wrap;justify-content:center;align-items:center;font-size:var(--aui-font-size-l);color:rgb(var(--aui-color-main-text));font-weight:var(--aui-font-weight-bolder)}.aui-calendar-header__nav-content .separator{margin:0 var(--aui-spacing-s)}.aui-calendar-header__nav-content .aui-button--text{color:rgb(var(--aui-color-main-text))}.aui-calendar-header__nav-content .aui-button--text .aui-button__content{font-size:var(--aui-font-size-l);font-weight:var(--aui-font-weight-bolder);padding:0}.aui-calendar-header__nav-content .aui-button--text:hover{background-color:transparent;color:rgb(var(--aui-color-primary));text-decoration:none!important}.aui-calendar-header__nav-content .aui-button--text+.aui-button--text{margin-left:0}.aui-calendar-header__nav-content .aui-button--text.header-range{max-width:100%}.action-bar{width:52px;display:flex}.action-bar .hidden{opacity:0;pointer-events:none}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ButtonComponent, selector: "button[aui-button]", inputs: ["aui-button", "size", "plain", "loading", "round", "square"] }, { kind: "component", type: IconComponent, selector: "aui-icon", inputs: ["icon", "light", "dark", "link", "margin", "size", "color", "background", "backgroundColor"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
83
115
|
}
|
|
84
116
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImport: i0, type: CalendarHeaderComponent, decorators: [{
|
|
85
117
|
type: Component,
|
|
86
|
-
args: [{ selector: 'aui-calendar-header', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgIf, NgTemplateOutlet, ButtonComponent, IconComponent, I18nPipe], template: "<div [class]=\"bem.element('container')\">\n <div>\n <ng-container\n *ngIf=\"dateNavRange !== DateNavRange.Decade\"\n [ngTemplateOutlet]=\"yearControl\"\n [ngTemplateOutletContext]=\"{ side: 'left' }\"\n ></ng-container>\n\n <ng-container\n *ngIf=\"dateNavRange === DateNavRange.Decade\"\n [ngTemplateOutlet]=\"decadeControl\"\n [ngTemplateOutletContext]=\"{ side: 'left' }\"\n ></ng-container>\n </div>\n <!-- \u5185\u5BB9\u533A -->\n <span\n *ngIf=\"dateNavRange === DateNavRange.Month\"\n [class]=\"bem.element('nav-content')\"\n >\n <
|
|
87
|
-
}], propDecorators: { dateNavRange: [{
|
|
118
|
+
args: [{ selector: 'aui-calendar-header', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [NgIf, NgTemplateOutlet, ButtonComponent, IconComponent, I18nPipe], template: "<div [class]=\"bem.element('container')\">\n <div>\n <ng-container\n *ngIf=\"dateNavRange !== DateNavRange.Decade\"\n [ngTemplateOutlet]=\"yearControl\"\n [ngTemplateOutletContext]=\"{ side: 'left' }\"\n ></ng-container>\n\n <ng-container\n *ngIf=\"dateNavRange === DateNavRange.Decade\"\n [ngTemplateOutlet]=\"decadeControl\"\n [ngTemplateOutletContext]=\"{ side: 'left' }\"\n ></ng-container>\n </div>\n <!-- \u5185\u5BB9\u533A -->\n <span\n *ngIf=\"dateNavRange === DateNavRange.Month\"\n [class]=\"bem.element('nav-content')\"\n >\n <ng-container\n [ngTemplateOutlet]=\"$monthBeforeYear() ? monthTemplate : yearTemplate\"\n ></ng-container>\n <div class=\"separator\"></div>\n <ng-container\n [ngTemplateOutlet]=\"$monthBeforeYear() ? yearTemplate : monthTemplate\"\n ></ng-container>\n </span>\n\n <span\n *ngIf=\"dateNavRange === DateNavRange.Year\"\n [class]=\"bem.element('nav-content')\"\n >\n <button\n aui-button=\"text\"\n (click)=\"clickNav(DateNavRange.Year)\"\n >\n {{ $headerRange().start.year }}\n </button>\n </span>\n\n <span\n *ngIf=\"dateNavRange === DateNavRange.Decade\"\n [class]=\"bem.element('nav-content')\"\n >\n {{ $headerRange().start.year }} - {{ $headerRange().end.year }}\n </span>\n\n <div [class]=\"bem.element('nav-action')\">\n <ng-container\n *ngIf=\"dateNavRange !== DateNavRange.Decade\"\n [ngTemplateOutlet]=\"yearControl\"\n [ngTemplateOutletContext]=\"{ side: 'right' }\"\n ></ng-container>\n\n <ng-container\n *ngIf=\"dateNavRange === DateNavRange.Decade\"\n [ngTemplateOutlet]=\"decadeControl\"\n [ngTemplateOutletContext]=\"{ side: 'right' }\"\n ></ng-container>\n </div>\n</div>\n\n<ng-template\n #yearControl\n let-side=\"side\"\n>\n <span class=\"action-bar\">\n <button\n aui-button=\"text\"\n size=\"mini\"\n [square]=\"true\"\n *ngIf=\"side === 'right'\"\n [class.hidden]=\"\n !shouldShowNav(DateNavRange.Month, side) ||\n dateNavRange !== DateNavRange.Month\n \"\n (click)=\"navHead(DateNavRange.Month, 1)\"\n >\n <aui-icon icon=\"angle_right\"></aui-icon>\n </button>\n <button\n aui-button=\"text\"\n size=\"mini\"\n [square]=\"true\"\n (click)=\"navHead(DateNavRange.Year, side === 'left' ? -1 : 1)\"\n [class.hidden]=\"!shouldShowNav(DateNavRange.Year, side)\"\n >\n <aui-icon\n [icon]=\"side === 'left' ? 'angles_left' : 'angles_right'\"\n ></aui-icon>\n </button>\n <button\n aui-button=\"text\"\n size=\"mini\"\n [square]=\"true\"\n *ngIf=\"side === 'left'\"\n [class.hidden]=\"\n !shouldShowNav(DateNavRange.Month, side) ||\n dateNavRange !== DateNavRange.Month\n \"\n (click)=\"navHead(DateNavRange.Month, -1)\"\n >\n <aui-icon icon=\"angle_left\"></aui-icon>\n </button>\n </span>\n</ng-template>\n\n<ng-template\n #decadeControl\n let-side=\"side\"\n>\n <button\n aui-button=\"text\"\n size=\"mini\"\n [square]=\"true\"\n (click)=\"navHead(DateNavRange.Decade, side === 'left' ? -10 : 10)\"\n [class.hidden]=\"!shouldShowNav(DateNavRange.Decade, side)\"\n >\n <aui-icon\n [icon]=\"side === 'left' ? 'angles_left' : 'angles_right'\"\n ></aui-icon>\n </button>\n</ng-template>\n\n<ng-template #yearTemplate>\n <button\n aui-button=\"text\"\n class=\"header-range\"\n (click)=\"clickNav(DateNavRange.Year)\"\n >\n {{ $headerRange().start.year }}\n </button>\n</ng-template>\n<ng-template #monthTemplate>\n <button\n aui-button=\"text\"\n class=\"header-range\"\n (click)=\"clickNav(DateNavRange.Month)\"\n >\n {{ $headerRange().start.month }}\n </button>\n</ng-template>\n", styles: [".aui-calendar-header__container{height:24px;display:flex;align-items:center;justify-content:space-between}.aui-calendar-header__nav-content{flex:1;max-width:calc(100% - var(--aui-inline-height-xs) * 4 - var(--aui-spacing-s) * 2);display:flex;flex-wrap:wrap;justify-content:center;align-items:center;font-size:var(--aui-font-size-l);color:rgb(var(--aui-color-main-text));font-weight:var(--aui-font-weight-bolder)}.aui-calendar-header__nav-content .separator{margin:0 var(--aui-spacing-s)}.aui-calendar-header__nav-content .aui-button--text{color:rgb(var(--aui-color-main-text))}.aui-calendar-header__nav-content .aui-button--text .aui-button__content{font-size:var(--aui-font-size-l);font-weight:var(--aui-font-weight-bolder);padding:0}.aui-calendar-header__nav-content .aui-button--text:hover{background-color:transparent;color:rgb(var(--aui-color-primary));text-decoration:none!important}.aui-calendar-header__nav-content .aui-button--text+.aui-button--text{margin-left:0}.aui-calendar-header__nav-content .aui-button--text.header-range{max-width:100%}.action-bar{width:52px;display:flex}.action-bar .hidden{opacity:0;pointer-events:none}\n"] }]
|
|
119
|
+
}], ctorParameters: function () { return [{ type: i1.I18nService }]; }, propDecorators: { dateNavRange: [{
|
|
88
120
|
type: Input
|
|
89
121
|
}], anchor: [{
|
|
90
122
|
type: Input
|
|
@@ -97,4 +129,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.3", ngImpor
|
|
|
97
129
|
}], anchorChange: [{
|
|
98
130
|
type: Output
|
|
99
131
|
}] } });
|
|
100
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2RhdGUtcGlja2VyL2NhbGVuZGFyL2hlYWRlci9jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvZGF0ZS1waWNrZXIvY2FsZW5kYXIvaGVhZGVyL3RlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEtBQTRCLE1BQU0sT0FBTyxDQUFDO0FBRWpELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNuRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDbkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNuRCxPQUFPLEVBRUwsWUFBWSxFQUNaLElBQUksR0FDTCxNQUFNLHdCQUF3QixDQUFDO0FBQ2hDLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxTQUFTLENBQUM7O0FBRXpDLE1BQU0sR0FBRyxHQUFHLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO0FBVzVDLE1BQU0sT0FBTyx1QkFBdUI7SUFFbEMsWUFBWSxHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUM7SUFHbEMsTUFBTSxHQUFHLEtBQUssRUFBRSxDQUFDO0lBR2pCLFFBQVEsQ0FBYztJQUV0QixJQUFZLFNBQVM7UUFDbkIsT0FBTyxJQUFJLENB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RSxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLFFBQVEsQ0FBQzs4QkFJM0UsWUFBWTtzQkFEWCxLQUFLO2dCQUlOLE1BQU07c0JBREwsS0FBSztnQkFJTixRQUFRO3NCQURQLEtBQUs7Z0JBUU4sUUFBUTtzQkFEUCxLQUFLO2dCQVFOLGNBQWM7c0JBRGIsTUFBTTtnQkFJUCxZQUFZO3NCQURYLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0lmLCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IGRheWpzLCB7IENvbmZpZ1R5cGUsIERheWpzIH0gZnJvbSAnZGF5anMnO1xuXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJMThuUGlwZSB9IGZyb20gJy4uLy4uLy4uL2kxOG4vaTE4bi5waXBlJztcbmltcG9ydCB7IEljb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9pY29uL2ljb24uY29tcG9uZW50JztcbmltcG9ydCB7IGJ1aWxkQmVtIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJuYWwvdXRpbHMnO1xuaW1wb3J0IHtcbiAgQ2FsZW5kYXJIZWFkZXJSYW5nZSxcbiAgRGF0ZU5hdlJhbmdlLFxuICBTaWRlLFxufSBmcm9tICcuLi8uLi9kYXRlLXBpY2tlci50eXBlJztcbmltcG9ydCB7IE1PTlRILCBZRUFSIH0gZnJvbSAnLi4vY29uc3RhbnQnO1xuaW1wb3J0IHsgY2FsY1JhbmdlVmFsdWUgfSBmcm9tICcuLi91dGlsJztcblxuY29uc3QgYmVtID0gYnVpbGRCZW0oJ2F1aS1jYWxlbmRhci1oZWFkZXInKTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXVpLWNhbGVuZGFyLWhlYWRlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi90ZW1wbGF0ZS5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3R5bGUuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW05nSWYsIE5nVGVtcGxhdGVPdXRsZXQsIEJ1dHRvbkNvbXBvbmVudCwgSWNvbkNvbXBvbmVudCwgSTE4blBpcGVdLFxufSlcbmV4cG9ydCBjbGFzcyBDYWxlbmRhckhlYWRlckNvbXBvbmVudCB7XG4gIEBJbnB1dCgpXG4gIGRhdGVOYXZSYW5nZSA9IERhdGVOYXZSYW5nZS5Nb250aDtcblxuICBASW5wdXQoKVxuICBhbmNob3IgPSBkYXlqcygpO1xuXG4gIEBJbnB1dCgpXG4gIG1heEF2YWlsPzogQ29uZmlnVHlwZTtcblxuICBwcml2YXRlIGdldCBfbWF4QXZhaWwoKSB7XG4gICAgcmV0dXJuIHRoaXMubWF4QXZhaWwgPyBkYXlqcyh0aGlzLm1heEF2YWlsKSA6IG51bGw7XG4gIH1cblxuICBASW5wdXQoKVxuICBtaW5BdmFpbD86IENvbmZpZ1R5cGU7XG5cbiAgcHJpdmF0ZSBnZXQgX21pbkF2YWlsKCkge1xuICAgIHJldHVybiB0aGlzLm1pbkF2YWlsID8gZGF5anModGhpcy5taW5BdmFpbCkgOiBudWxsO1xuICB9XG5cbiAgQE91dHB1dCgpXG4gIG5hdlJhbmdlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxEYXRlTmF2UmFuZ2U+KCk7XG5cbiAgQE91dHB1dCgpXG4gIGFuY2hvckNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8RGF5anM+KCk7XG5cbiAgZ2V0IGhlYWRlclJhbmdlKCk6IENhbGVuZGFySGVhZGVyUmFuZ2Uge1xuICAgIHJldHVybiBjYWxjUmFuZ2VWYWx1ZSh0aGlzLmRhdGVOYXZSYW5nZSwgdGhpcy5hbmNob3IpO1xuICB9XG5cbiAgYmVtID0gYmVtO1xuXG4gIERhdGVOYXZSYW5nZSA9IERhdGVOYXZSYW5nZTtcblxuICAvLyBtYXhBdmFpbCA+IGN1cnJlbnQgZGF0ZSDvvJpyaWdodCBidG4gaGlkZVxuICAvLyBtaW5BdmFpbCA+IGN1cnJlbnQgZGF0ZSDvvJpsZWZ0IGJ0biBoaWRlXG4gIHNob3VsZFNob3dOYXYodHlwZTogRGF0ZU5hdlJhbmdlLCBzaWRlOiBTaWRlKSB7XG4gICAgY29uc3QgYXZhaWxWYWx1ZSA9IChcbiAgICAgIHNpZGUgPT09IFNpZGUuTGVmdCA/IHRoaXMuX21pbkF2YWlsIDogdGhpcy5fbWF4QXZhaWxcbiAgICApPy5jbG9uZSgpO1xuICAgIGlmICghYXZhaWxWYWx1ZSkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIC8vIOWvueS6juW5tOeahOWIpOWIq++8jDIwMTQtNS0x6IezMjAxNS02LTHml6XvvIzku43lvZPlsZXnpLrmjInpkq5cbiAgICBjb25zdCBjb25zdHJhaW5EYXRlID0gW0RhdGVOYXZSYW5nZS5Nb250aCwgRGF0ZU5hdlJhbmdlLlllYXJdLmluY2x1ZGVzKHR5cGUpXG4gICAgICA/IGF2YWlsVmFsdWUuYWRkKHNpZGUgPT09IFNpZGUuTGVmdCA/IDEgOiAtMSwgdHlwZSBhcyAnbW9udGgnIHwgJ3llYXInKVxuICAgICAgOiBhdmFpbFZhbHVlO1xuICAgIHJldHVybiAoXG4gICAgICB0aGlzLmNvbXBhcmVOYXZWYWx1ZSh0eXBlLCBjb25zdHJhaW5EYXRlLCB0aGlzLmFuY2hvcikgPT09XG4gICAgICAoc2lkZSA9PT0gU2lkZS5MZWZ0ID8gLTEgOiAxKVxuICAgICk7XG4gIH1cblxuICAvLyBAcmV0dXJuIGlzQmV0d2Vlbnxpc0VxdWFsOjAsIGlzQmVmb3JlOi0xLGlzQWZ0ZXI6MVxuICBjb21wYXJlTmF2VmFsdWUodHlwZTogRGF0ZU5hdlJhbmdlLCBjb25zdHJhaW46IERheWpzLCBhbmNob3I6IERheWpzKSB7XG4gICAgY29uc3QgcmFuZ2UgPSBjYWxjUmFuZ2VWYWx1ZSh0eXBlLCBhbmNob3IpO1xuICAgIGNvbnN0IGNvbnN0cmFpblZhbHVlID0gY29uc3RyYWluO1xuICAgIGlmICh0eXBlID09PSBEYXRlTmF2UmFuZ2UuRGVjYWRlKSB7XG4gICAgICBpZiAoY29uc3RyYWluVmFsdWUuaXNCZXR3ZWVuKHJhbmdlLnN0YXJ0LCByYW5nZS5lbmQsIFlFQVIpKSB7XG4gICAgICAgIHJldHVybiAwO1xuICAgICAgfVxuICAgICAgcmV0dXJuIGNvbnN0cmFpblZhbHVlLmlzQmVmb3JlKHJhbmdlLnN0YXJ0KSA/IC0xIDogMTtcbiAgICB9XG4gICAgcmV0dXJuIGNvbnN0cmFpblZhbHVlLmlzU2FtZShyYW5nZS5zdGFydCwgTU9OVEgpXG4gICAgICA/IDBcbiAgICAgIDogY29uc3RyYWluVmFsdWUuaXNCZWZvcmUocmFuZ2Uuc3RhcnQsIE1PTlRIKVxuICAgICAgPyAtMVxuICAgICAgOiAxO1xuICB9XG5cbiAgbmF2SGVhZChyYW5nZTogRGF0ZU5hdlJhbmdlLCB2YWx1ZTogbnVtYmVyKSB7XG4gICAgbGV0IGFuY2hvcjogRGF5anM7XG4gICAgc3dpdGNoIChyYW5nZSkge1xuICAgICAgY2FzZSBEYXRlTmF2UmFuZ2UuTW9udGg6IHtcbiAgICAgICAgYW5jaG9yID0gdGhpcy5hbmNob3IuYWRkKHZhbHVlLCBNT05USCk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSBEYXRlTmF2UmFuZ2UuWWVhcjoge1xuICAgICAgICBhbmNob3IgPSB0aGlzLmFuY2hvci5hZGQodmFsdWUsIFlFQVIpO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIGNhc2UgRGF0ZU5hdlJhbmdlLkRlY2FkZToge1xuICAgICAgICBhbmNob3IgPSB0aGlzLmFuY2hvci5hZGQodmFsdWUsIFlFQVIpO1xuICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5hbmNob3JDaGFuZ2UubmV4dChhbmNob3IpO1xuICB9XG5cbiAgY2xpY2tOYXYgPSAocmFuZ2U6IERhdGVOYXZSYW5nZSkgPT4ge1xuICAgIGlmICghW0RhdGVOYXZSYW5nZS5Nb250aCwgRGF0ZU5hdlJhbmdlLlllYXJdLmluY2x1ZGVzKHJhbmdlKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLm5hdlJhbmdlQ2hhbmdlLm5leHQoXG4gICAgICByYW5nZSA9PT0gRGF0ZU5hdlJhbmdlLk1vbnRoID8gRGF0ZU5hdlJhbmdlLlllYXIgOiBEYXRlTmF2UmFuZ2UuRGVjYWRlLFxuICAgICk7XG4gIH07XG59XG4iLCI8ZGl2IFtjbGFzc109XCJiZW0uZWxlbWVudCgnY29udGFpbmVyJylcIj5cbiAgPGRpdj5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICAqbmdJZj1cImRhdGVOYXZSYW5nZSAhPT0gRGF0ZU5hdlJhbmdlLkRlY2FkZVwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJ5ZWFyQ29udHJvbFwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBzaWRlOiAnbGVmdCcgfVwiXG4gICAgPjwvbmctY29udGFpbmVyPlxuXG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgKm5nSWY9XCJkYXRlTmF2UmFuZ2UgPT09IERhdGVOYXZSYW5nZS5EZWNhZGVcIlxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiZGVjYWRlQ29udHJvbFwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBzaWRlOiAnbGVmdCcgfVwiXG4gICAgPjwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbiAgPCEtLSDlhoXlrrnljLogLS0+XG4gIDxzcGFuXG4gICAgKm5nSWY9XCJkYXRlTmF2UmFuZ2UgPT09IERhdGVOYXZSYW5nZS5Nb250aFwiXG4gICAgW2NsYXNzXT1cImJlbS5lbGVtZW50KCduYXYtY29udGVudCcpXCJcbiAgPlxuICAgIDxidXR0b25cbiAgICAgIGF1aS1idXR0b249XCJ0ZXh0XCJcbiAgICAgIChjbGljayk9XCJjbGlja05hdihEYXRlTmF2UmFuZ2UuWWVhcilcIlxuICAgID5cbiAgICAgIHt7IGhlYWRlclJhbmdlPy5zdGFydD8ueWVhcigpIH19e3sgJ3llYXJfc3VmZml4JyB8IGF1aUkxOG4gfX1cbiAgICA8L2J1dHRvbj5cbiAgICA8ZGl2IGNsYXNzPVwic2VwYXJhdG9yXCI+XG4gICAgICA8c3BhbiAqbmdJZj1cIiEoJ3llYXJfc3VmZml4JyB8IGF1aUkxOG4pICYmICEoJ21vbnRoX3N1ZmZpeCcgfCBhdWlJMThuKVwiPlxuICAgICAgICAvXG4gICAgICA8L3NwYW4+XG4gICAgPC9kaXY+XG4gICAgPGJ1dHRvblxuICAgICAgYXVpLWJ1dHRvbj1cInRleHRcIlxuICAgICAgKGNsaWNrKT1cImNsaWNrTmF2KERhdGVOYXZSYW5nZS5Nb250aClcIlxuICAgID5cbiAgICAgIHt7IGhlYWRlclJhbmdlPy5zdGFydD8ubW9udGgoKSArIDEgfX17eyAnbW9udGhfc3VmZml4JyB8IGF1aUkxOG4gfX1cbiAgICA8L2J1dHRvbj5cbiAgPC9zcGFuPlxuXG4gIDxzcGFuXG4gICAgKm5nSWY9XCJkYXRlTmF2UmFuZ2UgPT09IERhdGVOYXZSYW5nZS5ZZWFyXCJcbiAgICBbY2xhc3NdPVwiYmVtLmVsZW1lbnQoJ25hdi1jb250ZW50JylcIlxuICA+XG4gICAgPGJ1dHRvblxuICAgICAgYXVpLWJ1dHRvbj1cInRleHRcIlxuICAgICAgKGNsaWNrKT1cImNsaWNrTmF2KERhdGVOYXZSYW5nZS5ZZWFyKVwiXG4gICAgPlxuICAgICAge3sgaGVhZGVyUmFuZ2U/LnN0YXJ0Py55ZWFyKCkgfX17eyAneWVhcl9zdWZmaXgnIHwgYXVpSTE4biB9fVxuICAgIDwvYnV0dG9uPlxuICA8L3NwYW4+XG5cbiAgPHNwYW5cbiAgICAqbmdJZj1cImRhdGVOYXZSYW5nZSA9PT0gRGF0ZU5hdlJhbmdlLkRlY2FkZVwiXG4gICAgW2NsYXNzXT1cImJlbS5lbGVtZW50KCduYXYtY29udGVudCcpXCJcbiAgPlxuICAgIHt7IGhlYWRlclJhbmdlPy5zdGFydC55ZWFyKCkgfX0gLSB7eyBoZWFkZXJSYW5nZT8uZW5kPy55ZWFyKCkgfX1cbiAgPC9zcGFuPlxuXG4gIDxkaXYgW2NsYXNzXT1cImJlbS5lbGVtZW50KCduYXYtYWN0aW9uJylcIj5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICAqbmdJZj1cImRhdGVOYXZSYW5nZSAhPT0gRGF0ZU5hdlJhbmdlLkRlY2FkZVwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJ5ZWFyQ29udHJvbFwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBzaWRlOiAncmlnaHQnIH1cIlxuICAgID48L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy1jb250YWluZXJcbiAgICAgICpuZ0lmPVwiZGF0ZU5hdlJhbmdlID09PSBEYXRlTmF2UmFuZ2UuRGVjYWRlXCJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImRlY2FkZUNvbnRyb2xcIlxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgc2lkZTogJ3JpZ2h0JyB9XCJcbiAgICA+PC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZVxuICAjeWVhckNvbnRyb2xcbiAgbGV0LXNpZGU9XCJzaWRlXCJcbj5cbiAgPHNwYW4gY2xhc3M9XCJhY3Rpb24tYmFyXCI+XG4gICAgPGJ1dHRvblxuICAgICAgYXVpLWJ1dHRvbj1cInRleHRcIlxuICAgICAgKm5nSWY9XCJzaWRlID09PSAncmlnaHQnXCJcbiAgICAgIFtjbGFzcy5oaWRkZW5dPVwiXG4gICAgICAgICFzaG91bGRTaG93TmF2KERhdGVOYXZSYW5nZS5Nb250aCwgc2lkZSkgfHxcbiAgICAgICAgZGF0ZU5hdlJhbmdlICE9PSBEYXRlTmF2UmFuZ2UuTW9udGhcbiAgICAgIFwiXG4gICAgICAoY2xpY2spPVwibmF2SGVhZChEYXRlTmF2UmFuZ2UuTW9udGgsIDEpXCJcbiAgICA+XG4gICAgICA8YXVpLWljb24gaWNvbj1cImFuZ2xlX3JpZ2h0XCI+PC9hdWktaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgICA8YnV0dG9uXG4gICAgICBhdWktYnV0dG9uPVwidGV4dFwiXG4gICAgICAoY2xpY2spPVwibmF2SGVhZChEYXRlTmF2UmFuZ2UuWWVhciwgc2lkZSA9PT0gJ2xlZnQnID8gLTEgOiAxKVwiXG4gICAgICBbY2xhc3MuaGlkZGVuXT1cIiFzaG91bGRTaG93TmF2KERhdGVOYXZSYW5nZS5ZZWFyLCBzaWRlKVwiXG4gICAgPlxuICAgICAgPGF1aS1pY29uXG4gICAgICAgIFtpY29uXT1cInNpZGUgPT09ICdsZWZ0JyA/ICdhbmdsZXNfbGVmdCcgOiAnYW5nbGVzX3JpZ2h0J1wiXG4gICAgICA+PC9hdWktaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgICA8YnV0dG9uXG4gICAgICBhdWktYnV0dG9uPVwidGV4dFwiXG4gICAgICAqbmdJZj1cInNpZGUgPT09ICdsZWZ0J1wiXG4gICAgICBbY2xhc3MuaGlkZGVuXT1cIlxuICAgICAgICAhc2hvdWxkU2hvd05hdihEYXRlTmF2UmFuZ2UuTW9udGgsIHNpZGUpIHx8XG4gICAgICAgIGRhdGVOYXZSYW5nZSAhPT0gRGF0ZU5hdlJhbmdlLk1vbnRoXG4gICAgICBcIlxuICAgICAgKGNsaWNrKT1cIm5hdkhlYWQoRGF0ZU5hdlJhbmdlLk1vbnRoLCAtMSlcIlxuICAgID5cbiAgICAgIDxhdWktaWNvbiBpY29uPVwiYW5nbGVfbGVmdFwiPjwvYXVpLWljb24+XG4gICAgPC9idXR0b24+XG4gIDwvc3Bhbj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZVxuICAjZGVjYWRlQ29udHJvbFxuICBsZXQtc2lkZT1cInNpZGVcIlxuPlxuICA8YnV0dG9uXG4gICAgYXVpLWJ1dHRvbj1cInRleHRcIlxuICAgIChjbGljayk9XCJuYXZIZWFkKERhdGVOYXZSYW5nZS5EZWNhZGUsIHNpZGUgPT09ICdsZWZ0JyA/IC0xMCA6IDEwKVwiXG4gICAgW2NsYXNzLmhpZGRlbl09XCIhc2hvdWxkU2hvd05hdihEYXRlTmF2UmFuZ2UuRGVjYWRlLCBzaWRlKVwiXG4gID5cbiAgICA8YXVpLWljb25cbiAgICAgIFtpY29uXT1cInNpZGUgPT09ICdsZWZ0JyA/ICdhbmdsZXNfbGVmdCcgOiAnYW5nbGVzX3JpZ2h0J1wiXG4gICAgPjwvYXVpLWljb24+XG4gIDwvYnV0dG9uPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
132
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2RhdGUtcGlja2VyL2NhbGVuZGFyL2hlYWRlci9jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvZGF0ZS1waWNrZXIvY2FsZW5kYXIvaGVhZGVyL3RlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLGlCQUFpQixFQUNqQixRQUFRLEVBQ1IsTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sS0FBNEIsTUFBTSxPQUFPLENBQUM7QUFFakQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxRQUFRLEVBQWUsTUFBTSxlQUFlLENBQUM7QUFDdEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVELE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxTQUFTLENBQUM7OztBQUV6QyxNQUFNLEdBQUcsR0FBRyxRQUFRLENBQUMscUJBQXFCLENBQUMsQ0FBQztBQVc1QyxNQUFNLE9BQU8sdUJBQXVCO0lBQ2xDLElBQ0ksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUFJLFlBQVksQ0FBQyxHQUFHO1FBQ2xCLElBQUks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QUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNqQyxDQUFDOzhHQS9IVSx1QkFBdUI7a0dBQXZCLHVCQUF1QixvUUNoQ3BDLHF3SEE4SUEsK3FDRGhIWSxJQUFJLDZGQUFFLGdCQUFnQixvSkFBRSxlQUFlLHNJQUFFLGFBQWE7OzJGQUVyRCx1QkFBdUI7a0JBVG5DLFNBQVM7K0JBQ0UscUJBQXFCLGlCQUdoQixpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUCxDQUFDLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLFFBQVEsQ0FBQztrR0FJdkUsWUFBWTtzQkFEZixLQUFLO2dCQWFGLE1BQU07c0JBRFQsS0FBSztnQkFhTixRQUFRO3NCQURQLEtBQUs7Z0JBUU4sUUFBUTtzQkFEUCxLQUFLO2dCQVFOLGNBQWM7c0JBRGIsTUFBTTtnQkFJUCxZQUFZO3NCQURYLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0lmLCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG4gIGNvbXB1dGVkLFxuICBzaWduYWwsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IGRheWpzLCB7IENvbmZpZ1R5cGUsIERheWpzIH0gZnJvbSAnZGF5anMnO1xuXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJMThuUGlwZSwgSTE4blNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9pMThuJztcbmltcG9ydCB7IEljb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9pY29uL2ljb24uY29tcG9uZW50JztcbmltcG9ydCB7IGJ1aWxkQmVtIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJuYWwvdXRpbHMnO1xuaW1wb3J0IHsgRGF0ZU5hdlJhbmdlLCBTaWRlIH0gZnJvbSAnLi4vLi4vZGF0ZS1waWNrZXIudHlwZSc7XG5pbXBvcnQgeyBNT05USCwgWUVBUiB9IGZyb20gJy4uL2NvbnN0YW50JztcbmltcG9ydCB7IGNhbGNSYW5nZVZhbHVlIH0gZnJvbSAnLi4vdXRpbCc7XG5cbmNvbnN0IGJlbSA9IGJ1aWxkQmVtKCdhdWktY2FsZW5kYXItaGVhZGVyJyk7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F1aS1jYWxlbmRhci1oZWFkZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vdGVtcGxhdGUuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3N0eWxlLnNjc3MnXSxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtOZ0lmLCBOZ1RlbXBsYXRlT3V0bGV0LCBCdXR0b25Db21wb25lbnQsIEljb25Db21wb25lbnQsIEkxOG5QaXBlXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2FsZW5kYXJIZWFkZXJDb21wb25lbnQge1xuICBASW5wdXQoKVxuICBnZXQgZGF0ZU5hdlJhbmdlKCkge1xuICAgIHJldHVybiB0aGlzLiQkZGF0ZU5hdlJhbmdlKCk7XG4gIH1cblxuICBzZXQgZGF0ZU5hdlJhbmdlKHZhbCkge1xuICAgIGlmICghdmFsIHx8IHRoaXMuJCRkYXRlTmF2UmFuZ2UoKSA9PT0gdmFsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuJCRkYXRlTmF2UmFuZ2Uuc2V0KHZhbCk7XG4gIH1cblxuICBASW5wdXQoKVxuICBnZXQgYW5jaG9yKCkge1xuICAgIHJldHVybiB0aGlzLiQkYW5jaG9yKCk7XG4gIH1cblxuICBzZXQgYW5jaG9yKHZhbCkge1xuICAgIGlmICghdmFsIHx8IHRoaXMuJCRhbmNob3IoKSA9PT0gdmFsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuJCRhbmNob3Iuc2V0KHZhbCk7XG4gIH1cblxuICBASW5wdXQoKVxuICBtYXhBdmFpbD86IENvbmZpZ1R5cGU7XG5cbiAgcHJpdmF0ZSBnZXQgX21heEF2YWlsKCkge1xuICAgIHJldHVybiB0aGlzLm1heEF2YWlsID8gZGF5anModGhpcy5tYXhBdmFpbCkgOiBudWxsO1xuICB9XG5cbiAgQElucHV0KClcbiAgbWluQXZhaWw/OiBDb25maWdUeXBlO1xuXG4gIHByaXZhdGUgZ2V0IF9taW5BdmFpbCgpIHtcbiAgICByZXR1cm4gdGhpcy5taW5BdmFpbCA/IGRheWpzKHRoaXMubWluQXZhaWwpIDogbnVsbDtcbiAgfVxuXG4gIEBPdXRwdXQoKVxuICBuYXZSYW5nZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8RGF0ZU5hdlJhbmdlPigpO1xuXG4gIEBPdXRwdXQoKVxuICBhbmNob3JDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPERheWpzPigpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgJCRkYXRlTmF2UmFuZ2UgPSBzaWduYWwoRGF0ZU5hdlJhbmdlLk1vbnRoKTtcbiAgcHJpdmF0ZSByZWFkb25seSAkJGFuY2hvciA9IHNpZ25hbChkYXlqcygpKTtcblxuICBiZW0gPSBiZW07XG5cbiAgRGF0ZU5hdlJhbmdlID0gRGF0ZU5hdlJhbmdlO1xuXG4gICRtb250aEJlZm9yZVllYXIgPSB0aGlzLmkxOG5TZXJ2aWNlLiRtb250aEJlZm9yZVllYXI7XG5cbiAgJGhlYWRlclJhbmdlID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGNvbnN0IGxvY2FsZSA9IHRoaXMuaTE4blNlcnZpY2UuJGxvY2FsZSgpO1xuICAgIGNvbnN0IFtzdGFydCwgZW5kXSA9IE9iamVjdC52YWx1ZXMoXG4gICAgICBjYWxjUmFuZ2VWYWx1ZSh0aGlzLiQkZGF0ZU5hdlJhbmdlKCksIHRoaXMuJCRhbmNob3IoKSksXG4gICAgKS5tYXAoZGF0ZSA9PiBkYXRlLnRvRGF0ZSgpKTtcblxuICAgIHJldHVybiB7XG4gICAgICBzdGFydDoge1xuICAgICAgICB5ZWFyOiBzdGFydC50b0xvY2FsZURhdGVTdHJpbmcobG9jYWxlLCB7IHllYXI6ICdudW1lcmljJyB9KSxcbiAgICAgICAgbW9udGg6IHN0YXJ0LnRvTG9jYWxlRGF0ZVN0cmluZyhsb2NhbGUsIHsgbW9udGg6ICdzaG9ydCcgfSksXG4gICAgICB9LFxuICAgICAgZW5kOiB7XG4gICAgICAgIHllYXI6IGVuZD8udG9Mb2NhbGVEYXRlU3RyaW5nKGxvY2FsZSwgeyB5ZWFyOiAnbnVtZXJpYycgfSksXG4gICAgICAgIG1vbnRoOiBlbmQ/LnRvTG9jYWxlRGF0ZVN0cmluZyhsb2NhbGUsIHsgbW9udGg6ICdzaG9ydCcgfSksXG4gICAgICB9LFxuICAgIH07XG4gIH0pO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgaTE4blNlcnZpY2U6IEkxOG5TZXJ2aWNlKSB7fVxuXG4gIC8vIG1heEF2YWlsID4gY3VycmVudCBkYXRlIO+8mnJpZ2h0IGJ0biBoaWRlXG4gIC8vIG1pbkF2YWlsID4gY3VycmVudCBkYXRlIO+8mmxlZnQgYnRuIGhpZGVcbiAgc2hvdWxkU2hvd05hdih0eXBlOiBEYXRlTmF2UmFuZ2UsIHNpZGU6IFNpZGUpIHtcbiAgICBjb25zdCBhdmFpbFZhbHVlID0gKFxuICAgICAgc2lkZSA9PT0gU2lkZS5MZWZ0ID8gdGhpcy5fbWluQXZhaWwgOiB0aGlzLl9tYXhBdmFpbFxuICAgICk/LmNsb25lKCk7XG4gICAgaWYgKCFhdmFpbFZhbHVlKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgLy8g5a+55LqO5bm055qE5Yik5Yir77yMMjAxNC01LTHoh7MyMDE1LTYtMeaXpe+8jOS7jeW9k+WxleekuuaMiemSrlxuICAgIGNvbnN0IGNvbnN0cmFpbkRhdGUgPSBbRGF0ZU5hdlJhbmdlLk1vbnRoLCBEYXRlTmF2UmFuZ2UuWWVhcl0uaW5jbHVkZXModHlwZSlcbiAgICAgID8gYXZhaWxWYWx1ZS5hZGQoc2lkZSA9PT0gU2lkZS5MZWZ0ID8gMSA6IC0xLCB0eXBlIGFzICdtb250aCcgfCAneWVhcicpXG4gICAgICA6IGF2YWlsVmFsdWU7XG4gICAgcmV0dXJuIChcbiAgICAgIHRoaXMuY29tcGFyZU5hdlZhbHVlKHR5cGUsIGNvbnN0cmFpbkRhdGUsIHRoaXMuYW5jaG9yKSA9PT1cbiAgICAgIChzaWRlID09PSBTaWRlLkxlZnQgPyAtMSA6IDEpXG4gICAgKTtcbiAgfVxuXG4gIC8vIEByZXR1cm4gaXNCZXR3ZWVufGlzRXF1YWw6MCwgaXNCZWZvcmU6LTEsaXNBZnRlcjoxXG4gIGNvbXBhcmVOYXZWYWx1ZSh0eXBlOiBEYXRlTmF2UmFuZ2UsIGNvbnN0cmFpbjogRGF5anMsIGFuY2hvcjogRGF5anMpIHtcbiAgICBjb25zdCByYW5nZSA9IGNhbGNSYW5nZVZhbHVlKHR5cGUsIGFuY2hvcik7XG4gICAgY29uc3QgY29uc3RyYWluVmFsdWUgPSBjb25zdHJhaW47XG4gICAgaWYgKHR5cGUgPT09IERhdGVOYXZSYW5nZS5EZWNhZGUpIHtcbiAgICAgIGlmIChjb25zdHJhaW5WYWx1ZS5pc0JldHdlZW4ocmFuZ2Uuc3RhcnQsIHJhbmdlLmVuZCwgWUVBUikpIHtcbiAgICAgICAgcmV0dXJuIDA7XG4gICAgICB9XG4gICAgICByZXR1cm4gY29uc3RyYWluVmFsdWUuaXNCZWZvcmUocmFuZ2Uuc3RhcnQpID8gLTEgOiAxO1xuICAgIH1cbiAgICByZXR1cm4gY29uc3RyYWluVmFsdWUuaXNTYW1lKHJhbmdlLnN0YXJ0LCBNT05USClcbiAgICAgID8gMFxuICAgICAgOiBjb25zdHJhaW5WYWx1ZS5pc0JlZm9yZShyYW5nZS5zdGFydCwgTU9OVEgpXG4gICAgICA/IC0xXG4gICAgICA6IDE7XG4gIH1cblxuICBuYXZIZWFkKHJhbmdlOiBEYXRlTmF2UmFuZ2UsIHZhbHVlOiBudW1iZXIpIHtcbiAgICBsZXQgYW5jaG9yOiBEYXlqcztcbiAgICBzd2l0Y2ggKHJhbmdlKSB7XG4gICAgICBjYXNlIERhdGVOYXZSYW5nZS5Nb250aDoge1xuICAgICAgICBhbmNob3IgPSB0aGlzLmFuY2hvci5hZGQodmFsdWUsIE1PTlRIKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBjYXNlIERhdGVOYXZSYW5nZS5ZZWFyOiB7XG4gICAgICAgIGFuY2hvciA9IHRoaXMuYW5jaG9yLmFkZCh2YWx1ZSwgWUVBUik7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgY2FzZSBEYXRlTmF2UmFuZ2UuRGVjYWRlOiB7XG4gICAgICAgIGFuY2hvciA9IHRoaXMuYW5jaG9yLmFkZCh2YWx1ZSwgWUVBUik7XG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cbiAgICB0aGlzLmFuY2hvckNoYW5nZS5uZXh0KGFuY2hvcik7XG4gIH1cblxuICBjbGlja05hdiA9IChyYW5nZTogRGF0ZU5hdlJhbmdlKSA9PiB7XG4gICAgaWYgKCFbRGF0ZU5hdlJhbmdlLk1vbnRoLCBEYXRlTmF2UmFuZ2UuWWVhcl0uaW5jbHVkZXMocmFuZ2UpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMubmF2UmFuZ2VDaGFuZ2UubmV4dChcbiAgICAgIHJhbmdlID09PSBEYXRlTmF2UmFuZ2UuTW9udGggPyBEYXRlTmF2UmFuZ2UuWWVhciA6IERhdGVOYXZSYW5nZS5EZWNhZGUsXG4gICAgKTtcbiAgfTtcbn1cbiIsIjxkaXYgW2NsYXNzXT1cImJlbS5lbGVtZW50KCdjb250YWluZXInKVwiPlxuICA8ZGl2PlxuICAgIDxuZy1jb250YWluZXJcbiAgICAgICpuZ0lmPVwiZGF0ZU5hdlJhbmdlICE9PSBEYXRlTmF2UmFuZ2UuRGVjYWRlXCJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInllYXJDb250cm9sXCJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IHNpZGU6ICdsZWZ0JyB9XCJcbiAgICA+PC9uZy1jb250YWluZXI+XG5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICAqbmdJZj1cImRhdGVOYXZSYW5nZSA9PT0gRGF0ZU5hdlJhbmdlLkRlY2FkZVwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJkZWNhZGVDb250cm9sXCJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7IHNpZGU6ICdsZWZ0JyB9XCJcbiAgICA+PC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuICA8IS0tIOWGheWuueWMuiAtLT5cbiAgPHNwYW5cbiAgICAqbmdJZj1cImRhdGVOYXZSYW5nZSA9PT0gRGF0ZU5hdlJhbmdlLk1vbnRoXCJcbiAgICBbY2xhc3NdPVwiYmVtLmVsZW1lbnQoJ25hdi1jb250ZW50JylcIlxuICA+XG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiJG1vbnRoQmVmb3JlWWVhcigpID8gbW9udGhUZW1wbGF0ZSA6IHllYXJUZW1wbGF0ZVwiXG4gICAgPjwvbmctY29udGFpbmVyPlxuICAgIDxkaXYgY2xhc3M9XCJzZXBhcmF0b3JcIj48L2Rpdj5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCIkbW9udGhCZWZvcmVZZWFyKCkgPyB5ZWFyVGVtcGxhdGUgOiBtb250aFRlbXBsYXRlXCJcbiAgICA+PC9uZy1jb250YWluZXI+XG4gIDwvc3Bhbj5cblxuICA8c3BhblxuICAgICpuZ0lmPVwiZGF0ZU5hdlJhbmdlID09PSBEYXRlTmF2UmFuZ2UuWWVhclwiXG4gICAgW2NsYXNzXT1cImJlbS5lbGVtZW50KCduYXYtY29udGVudCcpXCJcbiAgPlxuICAgIDxidXR0b25cbiAgICAgIGF1aS1idXR0b249XCJ0ZXh0XCJcbiAgICAgIChjbGljayk9XCJjbGlja05hdihEYXRlTmF2UmFuZ2UuWWVhcilcIlxuICAgID5cbiAgICAgIHt7ICRoZWFkZXJSYW5nZSgpLnN0YXJ0LnllYXIgfX1cbiAgICA8L2J1dHRvbj5cbiAgPC9zcGFuPlxuXG4gIDxzcGFuXG4gICAgKm5nSWY9XCJkYXRlTmF2UmFuZ2UgPT09IERhdGVOYXZSYW5nZS5EZWNhZGVcIlxuICAgIFtjbGFzc109XCJiZW0uZWxlbWVudCgnbmF2LWNvbnRlbnQnKVwiXG4gID5cbiAgICB7eyAkaGVhZGVyUmFuZ2UoKS5zdGFydC55ZWFyIH19IC0ge3sgJGhlYWRlclJhbmdlKCkuZW5kLnllYXIgfX1cbiAgPC9zcGFuPlxuXG4gIDxkaXYgW2NsYXNzXT1cImJlbS5lbGVtZW50KCduYXYtYWN0aW9uJylcIj5cbiAgICA8bmctY29udGFpbmVyXG4gICAgICAqbmdJZj1cImRhdGVOYXZSYW5nZSAhPT0gRGF0ZU5hdlJhbmdlLkRlY2FkZVwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJ5ZWFyQ29udHJvbFwiXG4gICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBzaWRlOiAncmlnaHQnIH1cIlxuICAgID48L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy1jb250YWluZXJcbiAgICAgICpuZ0lmPVwiZGF0ZU5hdlJhbmdlID09PSBEYXRlTmF2UmFuZ2UuRGVjYWRlXCJcbiAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImRlY2FkZUNvbnRyb2xcIlxuICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgc2lkZTogJ3JpZ2h0JyB9XCJcbiAgICA+PC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZVxuICAjeWVhckNvbnRyb2xcbiAgbGV0LXNpZGU9XCJzaWRlXCJcbj5cbiAgPHNwYW4gY2xhc3M9XCJhY3Rpb24tYmFyXCI+XG4gICAgPGJ1dHRvblxuICAgICAgYXVpLWJ1dHRvbj1cInRleHRcIlxuICAgICAgc2l6ZT1cIm1pbmlcIlxuICAgICAgW3NxdWFyZV09XCJ0cnVlXCJcbiAgICAgICpuZ0lmPVwic2lkZSA9PT0gJ3JpZ2h0J1wiXG4gICAgICBbY2xhc3MuaGlkZGVuXT1cIlxuICAgICAgICAhc2hvdWxkU2hvd05hdihEYXRlTmF2UmFuZ2UuTW9udGgsIHNpZGUpIHx8XG4gICAgICAgIGRhdGVOYXZSYW5nZSAhPT0gRGF0ZU5hdlJhbmdlLk1vbnRoXG4gICAgICBcIlxuICAgICAgKGNsaWNrKT1cIm5hdkhlYWQoRGF0ZU5hdlJhbmdlLk1vbnRoLCAxKVwiXG4gICAgPlxuICAgICAgPGF1aS1pY29uIGljb249XCJhbmdsZV9yaWdodFwiPjwvYXVpLWljb24+XG4gICAgPC9idXR0b24+XG4gICAgPGJ1dHRvblxuICAgICAgYXVpLWJ1dHRvbj1cInRleHRcIlxuICAgICAgc2l6ZT1cIm1pbmlcIlxuICAgICAgW3NxdWFyZV09XCJ0cnVlXCJcbiAgICAgIChjbGljayk9XCJuYXZIZWFkKERhdGVOYXZSYW5nZS5ZZWFyLCBzaWRlID09PSAnbGVmdCcgPyAtMSA6IDEpXCJcbiAgICAgIFtjbGFzcy5oaWRkZW5dPVwiIXNob3VsZFNob3dOYXYoRGF0ZU5hdlJhbmdlLlllYXIsIHNpZGUpXCJcbiAgICA+XG4gICAgICA8YXVpLWljb25cbiAgICAgICAgW2ljb25dPVwic2lkZSA9PT0gJ2xlZnQnID8gJ2FuZ2xlc19sZWZ0JyA6ICdhbmdsZXNfcmlnaHQnXCJcbiAgICAgID48L2F1aS1pY29uPlxuICAgIDwvYnV0dG9uPlxuICAgIDxidXR0b25cbiAgICAgIGF1aS1idXR0b249XCJ0ZXh0XCJcbiAgICAgIHNpemU9XCJtaW5pXCJcbiAgICAgIFtzcXVhcmVdPVwidHJ1ZVwiXG4gICAgICAqbmdJZj1cInNpZGUgPT09ICdsZWZ0J1wiXG4gICAgICBbY2xhc3MuaGlkZGVuXT1cIlxuICAgICAgICAhc2hvdWxkU2hvd05hdihEYXRlTmF2UmFuZ2UuTW9udGgsIHNpZGUpIHx8XG4gICAgICAgIGRhdGVOYXZSYW5nZSAhPT0gRGF0ZU5hdlJhbmdlLk1vbnRoXG4gICAgICBcIlxuICAgICAgKGNsaWNrKT1cIm5hdkhlYWQoRGF0ZU5hdlJhbmdlLk1vbnRoLCAtMSlcIlxuICAgID5cbiAgICAgIDxhdWktaWNvbiBpY29uPVwiYW5nbGVfbGVmdFwiPjwvYXVpLWljb24+XG4gICAgPC9idXR0b24+XG4gIDwvc3Bhbj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZVxuICAjZGVjYWRlQ29udHJvbFxuICBsZXQtc2lkZT1cInNpZGVcIlxuPlxuICA8YnV0dG9uXG4gICAgYXVpLWJ1dHRvbj1cInRleHRcIlxuICAgIHNpemU9XCJtaW5pXCJcbiAgICBbc3F1YXJlXT1cInRydWVcIlxuICAgIChjbGljayk9XCJuYXZIZWFkKERhdGVOYXZSYW5nZS5EZWNhZGUsIHNpZGUgPT09ICdsZWZ0JyA/IC0xMCA6IDEwKVwiXG4gICAgW2NsYXNzLmhpZGRlbl09XCIhc2hvdWxkU2hvd05hdihEYXRlTmF2UmFuZ2UuRGVjYWRlLCBzaWRlKVwiXG4gID5cbiAgICA8YXVpLWljb25cbiAgICAgIFtpY29uXT1cInNpZGUgPT09ICdsZWZ0JyA/ICdhbmdsZXNfbGVmdCcgOiAnYW5nbGVzX3JpZ2h0J1wiXG4gICAgPjwvYXVpLWljb24+XG4gIDwvYnV0dG9uPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICN5ZWFyVGVtcGxhdGU+XG4gIDxidXR0b25cbiAgICBhdWktYnV0dG9uPVwidGV4dFwiXG4gICAgY2xhc3M9XCJoZWFkZXItcmFuZ2VcIlxuICAgIChjbGljayk9XCJjbGlja05hdihEYXRlTmF2UmFuZ2UuWWVhcilcIlxuICA+XG4gICAge3sgJGhlYWRlclJhbmdlKCkuc3RhcnQueWVhciB9fVxuICA8L2J1dHRvbj5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI21vbnRoVGVtcGxhdGU+XG4gIDxidXR0b25cbiAgICBhdWktYnV0dG9uPVwidGV4dFwiXG4gICAgY2xhc3M9XCJoZWFkZXItcmFuZ2VcIlxuICAgIChjbGljayk9XCJjbGlja05hdihEYXRlTmF2UmFuZ2UuTW9udGgpXCJcbiAgPlxuICAgIHt7ICRoZWFkZXJSYW5nZSgpLnN0YXJ0Lm1vbnRoIH19XG4gIDwvYnV0dG9uPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|