@acorex/components 5.0.34 → 5.0.35
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/esm2020/lib/datepicker/datepicker.component.mjs +3 -3
- package/esm2020/lib/form/form-field.component.mjs +3 -3
- package/esm2020/lib/popover/popover.component.mjs +45 -16
- package/esm2020/lib/popup/popup.component.mjs +17 -10
- package/esm2020/lib/popup/popup.service.mjs +3 -2
- package/esm2020/lib/selectbox/selectbox.component.mjs +27 -25
- package/esm2020/lib/selectbox/selectbox.module.mjs +6 -4
- package/fesm2015/acorex-components.mjs +77 -45
- package/fesm2015/acorex-components.mjs.map +1 -1
- package/fesm2020/acorex-components.mjs +77 -45
- package/fesm2020/acorex-components.mjs.map +1 -1
- package/lib/popover/popover.component.d.ts +1 -0
- package/lib/popup/popup.component.d.ts +4 -1
- package/lib/popup/popup.service.d.ts +1 -0
- package/lib/selectbox/selectbox.component.d.ts +7 -9
- package/lib/selectbox/selectbox.module.d.ts +3 -1
- package/package.json +1 -1
|
@@ -135,10 +135,10 @@ export class AXDatePickerComponent extends AXBaseDatePickerMixin {
|
|
|
135
135
|
}
|
|
136
136
|
}
|
|
137
137
|
AXDatePickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AXDatePickerComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
138
|
-
AXDatePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: AXDatePickerComponent, selector: "ax-date-picker", inputs: { isOpen: "isOpen", fitParent: "fitParent", dropdownWidth: "dropdownWidth", position: "position", disabled: "disabled", tabIndex: "tabIndex", readonly: "readonly", allowNull: "allowNull", value: "value", debounceTime: "debounceTime", name: "name", checked: "checked", placeholder: "placeholder", maxLength: "maxLength", depth: "depth", activeView: "activeView", min: "min", max: "max", disabledDates: "disabledDates", holidayDates: "holidayDates", format: "format" }, outputs: { onOpened: "onOpened", onClosed: "onClosed", onBlur: "onBlur", onFocus: "onFocus", valueChange: "valueChange", onValueChanged: "onValueChanged", depthChange: "depthChange", formatChange: "formatChange" }, host: { classAttribute: "ax-editor-container ax-drop-down" }, viewQueries: [{ propertyName: "popover", first: true, predicate: AXPopoverComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-prefix\">\r\n</ng-content>\r\n<div class=\"ax-dropdown-content\">\r\n <input class=\"ax-input\" type=\"text\" [attr.placeholder]=\"placeholder\"\r\n [class.ax-state-disabled]=\"disabled\" [class.ax-state-readonly]=\"readonly\" [disabled]=\"disabled\"\r\n [readonly]=\"readonly\" [tabindex]=\"tabIndex\" [ngModel]=\"displayText\" (focus)=\"_emitOnFocusEvent($event)\" (mouseup)=\"_handleOnInputClickEvent($event)\"\r\n (blur)=\"_emitOnBlurEvent($event)\" (keydown)=\"_handleOnKeydownEvent($event)\">\r\n</div>\r\n<ax-button [disabled]=\"disabled\" [tabIndex]=\"-1\" color=\"light\" look=\"blank\"\r\n (onClick)=\"_handleArrowClickEvent($event)\">\r\n <ax-icon icon=\"ax-ic ax-ic-chevron ax-transform ax--rotate-90\"></ax-icon>\r\n</ax-button>\r\n<ng-content select=\"ax-suffix\">\r\n</ng-content>\r\n<ax-popover [target]=\"_target\" [position]=\"position\" [openTrigger]=\"'manual'\" [closeTrigger]=\"'clickout'\" >\r\n <div class=\"ax-overlay-pane\" [style.min-width.px]=\"dropdownWidth\">\r\n <ax-calendar \r\n [disabled]=\"disabled\" \r\n [readonly]=\"readonly\" \r\n [(value)]=\"value\"\r\n [min]=\"min\"\r\n [min]=\"max\"\r\n [disabledDates]=\"disabledDates\"\r\n [holidayDates]=\"holidayDates\"\r\n [depth]=\"depth\"\r\n >\r\n
|
|
138
|
+
AXDatePickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: AXDatePickerComponent, selector: "ax-date-picker", inputs: { isOpen: "isOpen", fitParent: "fitParent", dropdownWidth: "dropdownWidth", position: "position", disabled: "disabled", tabIndex: "tabIndex", readonly: "readonly", allowNull: "allowNull", value: "value", debounceTime: "debounceTime", name: "name", checked: "checked", placeholder: "placeholder", maxLength: "maxLength", depth: "depth", activeView: "activeView", min: "min", max: "max", disabledDates: "disabledDates", holidayDates: "holidayDates", format: "format" }, outputs: { onOpened: "onOpened", onClosed: "onClosed", onBlur: "onBlur", onFocus: "onFocus", valueChange: "valueChange", onValueChanged: "onValueChanged", depthChange: "depthChange", formatChange: "formatChange" }, host: { classAttribute: "ax-editor-container ax-drop-down" }, viewQueries: [{ propertyName: "popover", first: true, predicate: AXPopoverComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-content select=\"ax-prefix\">\r\n</ng-content>\r\n<div class=\"ax-dropdown-content\">\r\n <input class=\"ax-input\" type=\"text\" [attr.placeholder]=\"placeholder\"\r\n [class.ax-state-disabled]=\"disabled\" [class.ax-state-readonly]=\"readonly\" [disabled]=\"disabled\"\r\n [readonly]=\"readonly\" [tabindex]=\"tabIndex\" [ngModel]=\"displayText\" (focus)=\"_emitOnFocusEvent($event)\" (mouseup)=\"_handleOnInputClickEvent($event)\"\r\n (blur)=\"_emitOnBlurEvent($event)\" (keydown)=\"_handleOnKeydownEvent($event)\">\r\n</div>\r\n<ax-button [disabled]=\"disabled\" [tabIndex]=\"-1\" color=\"light\" look=\"blank\"\r\n (onClick)=\"_handleArrowClickEvent($event)\">\r\n <ax-icon icon=\"ax-ic ax-ic-chevron ax-transform ax--rotate-90\"></ax-icon>\r\n</ax-button>\r\n<ng-content select=\"ax-suffix\">\r\n</ng-content>\r\n<ax-popover [target]=\"_target\" [position]=\"position\" [openTrigger]=\"'manual'\" [closeTrigger]=\"'clickout'\" >\r\n <div class=\"ax-overlay-pane\" [style.min-width.px]=\"dropdownWidth\">\r\n <ax-calendar \r\n [disabled]=\"disabled\" \r\n [readonly]=\"readonly\" \r\n [(value)]=\"value\"\r\n [min]=\"min\"\r\n [min]=\"max\"\r\n [disabledDates]=\"disabledDates\"\r\n [holidayDates]=\"holidayDates\"\r\n [depth]=\"depth\"\r\n >\r\n </ax-calendar>\r\n </div>\r\n</ax-popover>", components: [{ type: i1.AXButtonComponent, selector: "ax-button", inputs: ["disabled", "tabIndex", "size", "text", "submitBehavior", "cancelBehavior", "color", "look", "toggleable", "selected"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange"] }, { type: i2.AXIconComponent, selector: "ax-icon", inputs: ["icon"] }, { type: i3.AXPopoverComponent, selector: "ax-popover", inputs: ["target", "position", "openTrigger", "closeTrigger", "hasBackdrop", "backdropClass"], outputs: ["onOpened", "onClosed"] }, { type: i4.AXCalendarComponent, selector: "ax-calendar", inputs: ["readonly", "allowNull", "value", "debounceTime", "name", "checked", "disabled", "tabIndex", "depth", "activeView", "min", "max", "disabledDates", "holidayDates"], outputs: ["valueChange", "onValueChanged", "onBlur", "onFocus", "depthChange"] }], directives: [{ type: i5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
139
139
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AXDatePickerComponent, decorators: [{
|
|
140
140
|
type: Component,
|
|
141
|
-
args: [{ selector: 'ax-date-picker', inputs: [...DROPDOWN_INPUTS, ...INTERACTIVE_INPUTS, ...VALUE_INPUTS, ...TEXTBOX_INPUTS, ...CALENDAR_INPUTS], outputs: [...DROPDOWN_OUTPUT, ...INTERACTIVE_OUTPUT, ...VALUE_OUTPUT, ...TEXTBOX_OUTPUT, ...CALENDAR_OUTPUTS], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: { class: 'ax-editor-container ax-drop-down' }, template: "<ng-content select=\"ax-prefix\">\r\n</ng-content>\r\n<div class=\"ax-dropdown-content\">\r\n <input class=\"ax-input\" type=\"text\" [attr.placeholder]=\"placeholder\"\r\n [class.ax-state-disabled]=\"disabled\" [class.ax-state-readonly]=\"readonly\" [disabled]=\"disabled\"\r\n [readonly]=\"readonly\" [tabindex]=\"tabIndex\" [ngModel]=\"displayText\" (focus)=\"_emitOnFocusEvent($event)\" (mouseup)=\"_handleOnInputClickEvent($event)\"\r\n (blur)=\"_emitOnBlurEvent($event)\" (keydown)=\"_handleOnKeydownEvent($event)\">\r\n</div>\r\n<ax-button [disabled]=\"disabled\" [tabIndex]=\"-1\" color=\"light\" look=\"blank\"\r\n (onClick)=\"_handleArrowClickEvent($event)\">\r\n <ax-icon icon=\"ax-ic ax-ic-chevron ax-transform ax--rotate-90\"></ax-icon>\r\n</ax-button>\r\n<ng-content select=\"ax-suffix\">\r\n</ng-content>\r\n<ax-popover [target]=\"_target\" [position]=\"position\" [openTrigger]=\"'manual'\" [closeTrigger]=\"'clickout'\" >\r\n <div class=\"ax-overlay-pane\" [style.min-width.px]=\"dropdownWidth\">\r\n <ax-calendar \r\n [disabled]=\"disabled\" \r\n [readonly]=\"readonly\" \r\n [(value)]=\"value\"\r\n [min]=\"min\"\r\n [min]=\"max\"\r\n [disabledDates]=\"disabledDates\"\r\n [holidayDates]=\"holidayDates\"\r\n [depth]=\"depth\"\r\n >\r\n
|
|
141
|
+
args: [{ selector: 'ax-date-picker', inputs: [...DROPDOWN_INPUTS, ...INTERACTIVE_INPUTS, ...VALUE_INPUTS, ...TEXTBOX_INPUTS, ...CALENDAR_INPUTS], outputs: [...DROPDOWN_OUTPUT, ...INTERACTIVE_OUTPUT, ...VALUE_OUTPUT, ...TEXTBOX_OUTPUT, ...CALENDAR_OUTPUTS], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: { class: 'ax-editor-container ax-drop-down' }, template: "<ng-content select=\"ax-prefix\">\r\n</ng-content>\r\n<div class=\"ax-dropdown-content\">\r\n <input class=\"ax-input\" type=\"text\" [attr.placeholder]=\"placeholder\"\r\n [class.ax-state-disabled]=\"disabled\" [class.ax-state-readonly]=\"readonly\" [disabled]=\"disabled\"\r\n [readonly]=\"readonly\" [tabindex]=\"tabIndex\" [ngModel]=\"displayText\" (focus)=\"_emitOnFocusEvent($event)\" (mouseup)=\"_handleOnInputClickEvent($event)\"\r\n (blur)=\"_emitOnBlurEvent($event)\" (keydown)=\"_handleOnKeydownEvent($event)\">\r\n</div>\r\n<ax-button [disabled]=\"disabled\" [tabIndex]=\"-1\" color=\"light\" look=\"blank\"\r\n (onClick)=\"_handleArrowClickEvent($event)\">\r\n <ax-icon icon=\"ax-ic ax-ic-chevron ax-transform ax--rotate-90\"></ax-icon>\r\n</ax-button>\r\n<ng-content select=\"ax-suffix\">\r\n</ng-content>\r\n<ax-popover [target]=\"_target\" [position]=\"position\" [openTrigger]=\"'manual'\" [closeTrigger]=\"'clickout'\" >\r\n <div class=\"ax-overlay-pane\" [style.min-width.px]=\"dropdownWidth\">\r\n <ax-calendar \r\n [disabled]=\"disabled\" \r\n [readonly]=\"readonly\" \r\n [(value)]=\"value\"\r\n [min]=\"min\"\r\n [min]=\"max\"\r\n [disabledDates]=\"disabledDates\"\r\n [holidayDates]=\"holidayDates\"\r\n [depth]=\"depth\"\r\n >\r\n </ax-calendar>\r\n </div>\r\n</ax-popover>" }]
|
|
142
142
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { popover: [{
|
|
143
143
|
type: ViewChild,
|
|
144
144
|
args: [AXPopoverComponent]
|
|
@@ -147,4 +147,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
|
|
|
147
147
|
}], format: [{
|
|
148
148
|
type: Input
|
|
149
149
|
}] } });
|
|
150
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9zcmMvbGliL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9zcmMvbGliL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN4RCxPQUFPLEVBQ0wsU0FBUyxFQUNULGlCQUFpQixFQUNqQix1QkFBdUIsRUFHdkIsU0FBUyxFQUNULEtBQUssRUFDTCxZQUFZLEVBQ1osTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLHdCQUF3QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDaEgsT0FBTyxFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLDJCQUEyQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFNUgsT0FBTyxFQUFFLGNBQWMsRUFBRSxjQUFjLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUM1RyxPQUFPLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3BHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxlQUFlLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN4RyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7Ozs7OztBQUdsRSxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FDaEMsMkJBQTJCLENBQ3pCLHdCQUF3QixDQUN0QixxQkFBcUIsQ0FDbkIsdUJBQXVCLENB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QUNuSCxLQUFLLENBQUMsaUJBQWlCLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7O2tIQWxKVSxxQkFBcUI7c0dBQXJCLHFCQUFxQixnMUJBRXJCLGtCQUFrQix1RUMzQy9CLGs2Q0E2QmE7MkZEWUEscUJBQXFCO2tCQVRqQyxTQUFTOytCQUNFLGdCQUFnQixVQUVsQixDQUFDLEdBQUcsZUFBZSxFQUFFLEdBQUcsa0JBQWtCLEVBQUUsR0FBRyxZQUFZLEVBQUUsR0FBRyxjQUFjLEVBQUUsR0FBRyxlQUFlLENBQUMsV0FDbEcsQ0FBQyxHQUFHLGVBQWUsRUFBRSxHQUFHLGtCQUFrQixFQUFFLEdBQUcsWUFBWSxFQUFFLEdBQUcsY0FBYyxFQUFFLEdBQUcsZ0JBQWdCLENBQUMsbUJBQzVGLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksUUFDL0IsRUFBRSxLQUFLLEVBQUUsa0NBQWtDLEVBQUU7aUlBS25ELE9BQU87c0JBRE4sU0FBUzt1QkFBQyxrQkFBa0I7Z0JBUzdCLFlBQVk7c0JBRFgsTUFBTTtnQkFLSSxNQUFNO3NCQURoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhEYXRlVGltZSwgQVhTdHJpbmdVdGlsIH0gZnJvbSAnQGFjb3JleC9jb3JlJztcclxuaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgRWxlbWVudFJlZixcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBWaWV3Q2hpbGQsXHJcbiAgSW5wdXQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIE91dHB1dCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQVhCYXNlQ29tcG9uZW50LCBBWENsaWNrRXZlbnQgfSBmcm9tICcuLi9iYXNlJztcclxuaW1wb3J0IHsgRFJPUERPV05fSU5QVVRTLCBEUk9QRE9XTl9PVVRQVVQsIF9Ecm9wZG93bkNvbXBvbmVuZXRNaXhpbiB9IGZyb20gJy4uL2Jhc2UvbWl4aW4vZHJvcGRvd24tbWl4aW4uY2xhc3MnO1xyXG5pbXBvcnQgeyBJTlRFUkFDVElWRV9JTlBVVFMsIElOVEVSQUNUSVZFX09VVFBVVCwgX0ludGVyYWN0aXZlQ29tcG9uZW5ldE1peGluIH0gZnJvbSAnLi4vYmFzZS9taXhpbi9pbnRlcmFjdGl2ZS1taXhpbi5jbGFzcyc7XHJcbmltcG9ydCB7IF9TaXphYmxlQ29tcG9uZW5ldE1peGluIH0gZnJvbSAnLi4vYmFzZS9taXhpbi9zaXphYmxlLW1peGluLmNsYXNzJztcclxuaW1wb3J0IHsgVEVYVEJPWF9JTlBVVFMsIFRFWFRCT1hfT1VUUFVULCBfVGV4dGJveENvbXBvbmVuZXRNaXhpbiB9IGZyb20gJy4uL2Jhc2UvbWl4aW4vdGV4dGJveC1taXhpbi5jbGFzcyc7XHJcbmltcG9ydCB7IFZBTFVFX0lOUFVUUywgVkFMVUVfT1VUUFVULCBfVmFsdWVDb21wb25lbmV0TWl4aW4gfSBmcm9tICcuLi9iYXNlL21peGluL3ZhbHVlLW1peGluLmNsYXNzJztcclxuaW1wb3J0IHsgQVhDYWxlbmRhckJhc2VDb21wb25lbnQsIENBTEVOREFSX0lOUFVUUywgQ0FMRU5EQVJfT1VUUFVUUyB9IGZyb20gJy4uL2NhbGVuZGFyL2NhbGVuZGFyLmNsYXNzJztcclxuaW1wb3J0IHsgQVhQb3BvdmVyQ29tcG9uZW50IH0gZnJvbSAnLi4vcG9wb3Zlci9wb3BvdmVyLmNvbXBvbmVudCc7XHJcblxyXG5cclxuZXhwb3J0IGNvbnN0IEFYQmFzZURhdGVQaWNrZXJNaXhpbiA9XHJcbiAgX0ludGVyYWN0aXZlQ29tcG9uZW5ldE1peGluKFxyXG4gICAgX0Ryb3Bkb3duQ29tcG9uZW5ldE1peGluKFxyXG4gICAgICBfVmFsdWVDb21wb25lbmV0TWl4aW4oXHJcbiAgICAgICAgX1RleHRib3hDb21wb25lbmV0TWl4aW4oQVhDYWxlbmRhckJhc2VDb21wb25lbnQpXHJcbiAgICAgIClcclxuICAgIClcclxuICApO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXgtZGF0ZS1waWNrZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRlcGlja2VyLmNvbXBvbmVudC5odG1sJyxcclxuICBpbnB1dHM6IFsuLi5EUk9QRE9XTl9JTlBVVFMsIC4uLklOVEVSQUNUSVZFX0lOUFVUUywgLi4uVkFMVUVfSU5QVVRTLCAuLi5URVhUQk9YX0lOUFVUUywgLi4uQ0FMRU5EQVJfSU5QVVRTXSxcclxuICBvdXRwdXRzOiBbLi4uRFJPUERPV05fT1VUUFVULCAuLi5JTlRFUkFDVElWRV9PVVRQVVQsIC4uLlZBTFVFX09VVFBVVCwgLi4uVEVYVEJPWF9PVVRQVVQsIC4uLkNBTEVOREFSX09VVFBVVFNdLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgaG9zdDogeyBjbGFzczogJ2F4LWVkaXRvci1jb250YWluZXIgYXgtZHJvcC1kb3duJyB9XHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBWERhdGVQaWNrZXJDb21wb25lbnQgZXh0ZW5kcyBBWEJhc2VEYXRlUGlja2VyTWl4aW4ge1xyXG5cclxuICBAVmlld0NoaWxkKEFYUG9wb3ZlckNvbXBvbmVudClcclxuICBwb3BvdmVyOiBBWFBvcG92ZXJDb21wb25lbnQ7XHJcblxyXG4gIF90YXJnZXQ6IEFYQmFzZUNvbXBvbmVudDtcclxuICBkaXNwbGF5VGV4dDogc3RyaW5nO1xyXG4gIF9jYWxlbmRhclZhbHVlOiBEYXRlO1xyXG4gIF9jdXJzb3JQb3M6IG51bWJlciA9IDA7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIGZvcm1hdENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG5cclxuICBwcml2YXRlIF9mb3JtYXQ6IHN0cmluZyA9ICdZWVlZLU1NLWRkJztcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBnZXQgZm9ybWF0KCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5fZm9ybWF0O1xyXG4gIH1cclxuICBwdWJsaWMgc2V0IGZvcm1hdCh2OiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX3NldE9wdGlvbih7XHJcbiAgICAgIG5hbWU6ICdmb3JtYXQnLFxyXG4gICAgICB2YWx1ZTogdlxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcclxuICAgIF9jZHI6IENoYW5nZURldGVjdG9yUmVmXHJcbiAgKSB7XHJcbiAgICBzdXBlcihfZWxlbWVudFJlZiwgX2Nkcik7XHJcbiAgICB0aGlzLl90YXJnZXQgPSB0aGlzLl9nZXRIb3N0RWxlbWVudCgpO1xyXG4gIH1cclxuXHJcbiAgX2hhbmRsZUFycm93Q2xpY2tFdmVudChlOiBBWENsaWNrRXZlbnQpIHtcclxuICAgIHRoaXMudG9nZ2xlKCk7XHJcbiAgfVxyXG5cclxuICBfb25WYWx1ZUNoYW5nZWQob2xkVmFsdWU/OiBhbnksIG5ld1ZhbHVlPzogYW55KSB7XHJcbiAgICB0aGlzLmRpc3BsYXlUZXh0ID0gbmV3VmFsdWUgPyBBWERhdGVUaW1lLmNvbnZlcnQobmV3VmFsdWUpLmZvcm1hdCh0aGlzLl9mb3JtYXQpIDogbnVsbDtcclxuICAgIHRoaXMuY2xvc2UoKTtcclxuICB9XHJcblxyXG5cclxuICBfaGFuZGxlT25LZXlkb3duRXZlbnQoZTogS2V5Ym9hcmRFdmVudCkge1xyXG4gICAgY29uc3QgaWdub3JlID0gKCkgPT4ge1xyXG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB9O1xyXG5cclxuICAgIGNvbnN0IG51bXM6IHN0cmluZ1tdID0gQXJyYXkoMTApLmZpbGwoMCkubWFwKCh2LCBpKSA9PiBpLnRvU3RyaW5nKCkpO1xyXG4gICAgY29uc3QgY2hhcnM6IHN0cmluZ1tdID0gWydCYWNrc3BhY2UnLCAnQXJyb3dEb3duJywgJ0Fycm93VXAnLCAnQXJyb3dSaWdodCcsICdBcnJvd0xlZnQnLCAnVGFiJywgJ0VudGVyJ107XHJcbiAgICBjb25zdCBpbnB1dCA9IChlLnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KTtcclxuICAgIGNvbnN0IGtleSA9IChlLmtleSk7XHJcbiAgICBjb25zdCB2YWxTdHIgPSBpbnB1dC52YWx1ZTtcclxuICAgIGNvbnN0IHNTdGFydCA9IGlucHV0LnNlbGVjdGlvblN0YXJ0O1xyXG4gICAgY29uc3Qgc0VuZCA9IGlucHV0LnNlbGVjdGlvbkVuZDtcclxuICAgIGNvbnN0IGRhdGVWYWwgPSBuZXcgQVhEYXRlVGltZSh0aGlzLnZhbHVlKTtcclxuICAgIC8vXHJcbiAgICBjb25zdCByZSA9IC9bYS16QS1aMC05XSsvaWc7XHJcbiAgICBjb25zdCBwYXJ0cyA9IEFycmF5LmZyb20odGhpcy5mb3JtYXQubWF0Y2hBbGwocmUpKTtcclxuICAgIGNvbnN0IHdvcmQgPSB2YWxTdHIuc3Vic3RyaW5nKHNTdGFydCwgc0VuZCk7XHJcbiAgICBjb25zdCBwYXJ0ID0gcGFydHNbQXJyYXkuZnJvbSh2YWxTdHIubWF0Y2hBbGwocmUpKS5maW5kSW5kZXgoYyA9PiBjWzBdID09IHdvcmQpXTtcclxuICAgIC8vXHJcbiAgICAvL1xyXG4gICAgaWYgKFsuLi5udW1zXS5pbmNsdWRlcyhrZXkpKSB7XHJcbiAgICAgIGlmIChwYXJ0KSB7XHJcbiAgICAgICAgc3dpdGNoIChwYXJ0WzBdKSB7XHJcbiAgICAgICAgICBjYXNlICdkZCc6XHJcbiAgICAgICAgICBjYXNlICdERCc6XHJcbiAgICAgICAgICAgIGRlYnVnZ2VyO1xyXG4gICAgICAgICAgICBjb25zdCBuZXdWYWwgPSBNYXRoLm1heCgxLCBNYXRoLm1pbigzMSwgTnVtYmVyKHdvcmQgKyBlLmtleSkpKTtcclxuICAgICAgICAgICAgdGhpcy52YWx1ZSA9IGRhdGVWYWwuc2V0KCdkYXknLCBuZXdWYWwpLmRhdGU7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgY2FzZSAnbW0nOlxyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgIGNhc2UgJ3l5JzpcclxuICAgICAgICAgIGNhc2UgJ1lZWVknOlxyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICB9XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLl9oaWdobGlnaHRQYXJ0KGlucHV0LCBzU3RhcnQpO1xyXG4gICAgICAgIH0sIE1hdGgubWF4KDEwLCB0aGlzLmRlYm91bmNlVGltZSkpO1xyXG4gICAgICAgIGlnbm9yZSgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChlLmtleSA9PT0gJ0Fycm93UmlnaHQnIHx8IGUua2V5ID09PSAnQXJyb3dMZWZ0Jykge1xyXG4gICAgICBjb25zdCBuZXh0ID0gQXJyYXkuZnJvbSh2YWxTdHIuc3Vic3RyKHNFbmQpLm1hdGNoQWxsKHJlKSk7XHJcbiAgICAgIGNvbnN0IHByZXYgPSBBcnJheS5mcm9tKHZhbFN0ci5zdWJzdHJpbmcoMCwgc1N0YXJ0KS5tYXRjaEFsbChyZSkpO1xyXG4gICAgICBpZ25vcmUoKTtcclxuICAgICAgdGhpcy5faGlnaGxpZ2h0UGFydChpbnB1dCwgKGUua2V5ID09PSAnQXJyb3dSaWdodCcgPyAoc0VuZCArIChuZXh0WzBdPy5pbmRleCB8fCAwKSkgOiAocHJldltwcmV2Lmxlbmd0aCAtIDFdPy5pbmRleCkpKTtcclxuICAgIH1cclxuICAgIGVsc2UgaWYgKGUua2V5ID09PSAnQXJyb3dVcCcgfHwgZS5rZXkgPT09ICdBcnJvd0Rvd24nKSB7XHJcbiAgICAgIGlmIChlLmN0cmxLZXkgJiYgZS5rZXkgPT09ICdBcnJvd0Rvd24nKSB7XHJcbiAgICAgICAgdGhpcy5vcGVuKCk7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgY29uc3Qgc2lnbiA9IGUua2V5ID09PSAnQXJyb3dVcCcgPyArMSA6IC0xO1xyXG4gICAgICAgIGlmIChwYXJ0KSB7XHJcbiAgICAgICAgICBzd2l0Y2ggKHBhcnRbMF0pIHtcclxuICAgICAgICAgICAgY2FzZSAnZGQnOlxyXG4gICAgICAgICAgICBjYXNlICdERCc6XHJcbiAgICAgICAgICAgICAgdGhpcy52YWx1ZSA9IGRhdGVWYWwuYWRkKCdkYXknLCBzaWduKS5kYXRlO1xyXG4gICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICBjYXNlICdtbSc6XHJcbiAgICAgICAgICAgIGNhc2UgJ01NTSc6XHJcbiAgICAgICAgICAgIGNhc2UgJ01NTU0nOlxyXG4gICAgICAgICAgICAgIHRoaXMudmFsdWUgPSBkYXRlVmFsLmFkZCgnbW9udGgnLCBzaWduKS5kYXRlO1xyXG4gICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICBjYXNlICd5eSc6XHJcbiAgICAgICAgICAgIGNhc2UgJ1lZWVknOlxyXG4gICAgICAgICAgICAgIHRoaXMudmFsdWUgPSBkYXRlVmFsLmFkZCgneWVhcicsIHNpZ24pLmRhdGU7XHJcbiAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5faGlnaGxpZ2h0UGFydChpbnB1dCwgc1N0YXJ0KTtcclxuICAgICAgICAgIH0sIE1hdGgubWF4KDEwLCB0aGlzLmRlYm91bmNlVGltZSkpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZ25vcmUoKTtcclxuICAgIH1cclxuICAgIGVsc2UgaWYgKGUua2V5ID09ICdCYWNrc3BhY2UnKSB7XHJcbiAgICAgIGlmICh0aGlzLmFsbG93TnVsbCkge1xyXG4gICAgICAgIHRoaXMudmFsdWUgPSBudWxsO1xyXG4gICAgICB9XHJcbiAgICAgIGlnbm9yZSgpO1xyXG4gICAgfVxyXG4gICAgLy8gZWxzZSBpZiAobnVtcy5pbmNsdWRlcyhrZXkpKSB7XHJcblxyXG4gICAgLy8gfVxyXG4gICAgLy8gc3VwZXIuX2VtaXRPbktleWRvd25FdmVudChlKTtcclxuICB9XHJcblxyXG5cclxuXHJcbiAgX2hhbmRsZU9uSW5wdXRDbGlja0V2ZW50KGU6IE1vdXNlRXZlbnQpOiB2b2lkIHtcclxuICAgIGNvbnN0IGlucHV0ID0gKGUudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpO1xyXG4gICAgdGhpcy5faGlnaGxpZ2h0UGFydChpbnB1dCk7XHJcbiAgICBlLnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gIH1cclxuXHJcblxyXG4gIHByaXZhdGUgX2hpZ2hsaWdodFBhcnQoaW5wdXQ6IEhUTUxJbnB1dEVsZW1lbnQsIHBvcz86IG51bWJlcikge1xyXG4gICAgY29uc3QgeyBzdGFydCwgZW5kIH0gPSBBWFN0cmluZ1V0aWwuZ2V0V29yZEJvdW5kc0F0UG9zaXRpb24oaW5wdXQudmFsdWUsIHBvcyAhPSBudWxsID8gcG9zIDogaW5wdXQuc2VsZWN0aW9uU3RhcnQpO1xyXG4gICAgaW5wdXQuc2V0U2VsZWN0aW9uUmFuZ2Uoc3RhcnQsIGVuZCk7XHJcbiAgfVxyXG59XHJcbiIsIjxuZy1jb250ZW50IHNlbGVjdD1cImF4LXByZWZpeFwiPlxyXG48L25nLWNvbnRlbnQ+XHJcbjxkaXYgY2xhc3M9XCJheC1kcm9wZG93bi1jb250ZW50XCI+XHJcbiAgICA8aW5wdXQgY2xhc3M9XCJheC1pbnB1dFwiIHR5cGU9XCJ0ZXh0XCIgW2F0dHIucGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxyXG4gICAgW2NsYXNzLmF4LXN0YXRlLWRpc2FibGVkXT1cImRpc2FibGVkXCIgW2NsYXNzLmF4LXN0YXRlLXJlYWRvbmx5XT1cInJlYWRvbmx5XCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiIFt0YWJpbmRleF09XCJ0YWJJbmRleFwiIFtuZ01vZGVsXT1cImRpc3BsYXlUZXh0XCIgKGZvY3VzKT1cIl9lbWl0T25Gb2N1c0V2ZW50KCRldmVudClcIiAobW91c2V1cCk9XCJfaGFuZGxlT25JbnB1dENsaWNrRXZlbnQoJGV2ZW50KVwiXHJcbiAgICAoYmx1cik9XCJfZW1pdE9uQmx1ckV2ZW50KCRldmVudClcIiAoa2V5ZG93bik9XCJfaGFuZGxlT25LZXlkb3duRXZlbnQoJGV2ZW50KVwiPlxyXG48L2Rpdj5cclxuPGF4LWJ1dHRvbiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBbdGFiSW5kZXhdPVwiLTFcIiAgY29sb3I9XCJsaWdodFwiIGxvb2s9XCJibGFua1wiXHJcbiAgICAob25DbGljayk9XCJfaGFuZGxlQXJyb3dDbGlja0V2ZW50KCRldmVudClcIj5cclxuICAgIDxheC1pY29uIGljb249XCJheC1pYyBheC1pYy1jaGV2cm9uIGF4LXRyYW5zZm9ybSBheC0tcm90YXRlLTkwXCI+PC9heC1pY29uPlxyXG48L2F4LWJ1dHRvbj5cclxuPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtc3VmZml4XCI+XHJcbjwvbmctY29udGVudD5cclxuPGF4LXBvcG92ZXIgW3RhcmdldF09XCJfdGFyZ2V0XCIgW3Bvc2l0aW9uXT1cInBvc2l0aW9uXCIgW29wZW5UcmlnZ2VyXT1cIidtYW51YWwnXCIgW2Nsb3NlVHJpZ2dlcl09XCInY2xpY2tvdXQnXCIgPlxyXG4gICAgPGRpdiBjbGFzcz1cImF4LW92ZXJsYXktcGFuZVwiIFtzdHlsZS5taW4td2lkdGgucHhdPVwiZHJvcGRvd25XaWR0aFwiPlxyXG4gICAgICAgIDxheC1jYWxlbmRhciBcclxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCIgXHJcbiAgICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiIFxyXG4gICAgICAgICAgICBbKHZhbHVlKV09XCJ2YWx1ZVwiXHJcbiAgICAgICAgICAgIFttaW5dPVwibWluXCJcclxuICAgICAgICAgICAgW21pbl09XCJtYXhcIlxyXG4gICAgICAgICAgICBbZGlzYWJsZWREYXRlc109XCJkaXNhYmxlZERhdGVzXCJcclxuICAgICAgICAgICAgW2hvbGlkYXlEYXRlc109XCJob2xpZGF5RGF0ZXNcIlxyXG4gICAgICAgICAgICBbZGVwdGhdPVwiZGVwdGhcIlxyXG4gICAgICAgICAgICA+XHJcblxyXG4gICAgICAgIDwvYXgtY2FsZW5kYXI+XHJcbiAgICA8L2Rpdj5cclxuPC9heC1wb3BvdmVyPiJdfQ==
|
|
150
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZXBpY2tlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9zcmMvbGliL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9zcmMvbGliL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN4RCxPQUFPLEVBQ0wsU0FBUyxFQUNULGlCQUFpQixFQUNqQix1QkFBdUIsRUFHdkIsU0FBUyxFQUNULEtBQUssRUFDTCxZQUFZLEVBQ1osTUFBTSxHQUNQLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLHdCQUF3QixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDaEgsT0FBTyxFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLDJCQUEyQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFNUgsT0FBTyxFQUFFLGNBQWMsRUFBRSxjQUFjLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUM1RyxPQUFPLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3BHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxlQUFlLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN4RyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7Ozs7OztBQUdsRSxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FDaEMsMkJBQTJCLENBQ3pCLHdCQUF3QixDQUN0QixxQkFBcUIsQ0FDbkIsdUJBQXVCLENBQUMsdUJBQXVCLENBQUMsQ0FDakQsQ0FDRixDQUNGLENBQUM7QUFZSixNQUFNLE9BQU8scUJBQXNCLFNBQVEscUJBQXFCO0lBMEI5RCxZQUNFLFdBQXVCLEVBQ3ZCLElBQXVCO1FBRXZCLEtBQUssQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLENBQUM7UUF0QjNCLGVBQVUsR0FBVyxDQUFDLENBQUM7UUFHdkIsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBRWxDLFlBQU8sR0FBVyxZQUFZLENBQUM7UUFrQnJDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFsQkQsSUFDVyxNQUFNO1FBQ2YsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFDRCxJQUFXLE1BQU0sQ0FBQyxDQUFTO1FBQ3pCLElBQUksQ0FBQyxVQUFVLENBQUM7WUFDZCxJQUFJLEVBQUUsUUFBUTtZQUNkLEtBQUssRUFBRSxDQUFDO1NBQ1QsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQVdELHNCQUFzQixDQUFDLENBQWU7UUFDcEMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxlQUFlLENBQUMsUUFBYyxFQUFFLFFBQWM7UUFDNUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ3ZGLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNmLENBQUM7SUFHRCxxQkFBcUIsQ0FBQyxDQUFnQjtRQUNwQyxNQUFNLE1BQU0sR0FBRyxHQUFHLEVBQUU7WUFDbEIsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDO1lBQ25CLENBQUMsQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN0QixDQUFDLENBQUM7UUFFRixNQUFNLElBQUksR0FBYSxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQ3JFLE1BQU0sS0FBSyxHQUFhLENBQUMsV0FBVyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDekcsTUFBTSxLQUFLLEdBQUksQ0FBQyxDQUFDLE1BQTJCLENBQUM7UUFDN0MsTUFBTSxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDcEIsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQztRQUMzQixNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsY0FBYyxDQUFDO1FBQ3BDLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUM7UUFDaEMsTUFBTSxPQUFPLEdBQUcsSUFBSSxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNDLEVBQUU7UUFDRixNQUFNLEVBQUUsR0FBRyxnQkFBZ0IsQ0FBQztRQUM1QixNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDbkQsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDNUMsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ2pGLEVBQUU7UUFDRixFQUFFO1FBQ0YsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQzNCLElBQUksSUFBSSxFQUFFO2dCQUNSLFFBQVEsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFO29CQUNmLEtBQUssSUFBSSxDQUFDO29CQUNWLEtBQUssSUFBSTt3QkFDUCxRQUFRLENBQUM7d0JBQ1QsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsTUFBTSxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO3dCQUMvRCxJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQzt3QkFDN0MsTUFBTTtvQkFDUixLQUFLLElBQUk7d0JBQ1AsTUFBTTtvQkFDUixLQUFLLElBQUksQ0FBQztvQkFDVixLQUFLLE1BQU07d0JBQ1QsTUFBTTtpQkFDVDtnQkFDRCxVQUFVLENBQUMsR0FBRyxFQUFFO29CQUNkLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO2dCQUNyQyxDQUFDLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7Z0JBQ3BDLE1BQU0sRUFBRSxDQUFDO2FBQ1Y7U0FDRjthQUNJLElBQUksQ0FBQyxDQUFDLEdBQUcsS0FBSyxZQUFZLElBQUksQ0FBQyxDQUFDLEdBQUcsS0FBSyxXQUFXLEVBQUU7WUFDeEQsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzFELE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDbEUsTUFBTSxFQUFFLENBQUM7WUFDVCxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDeEg7YUFDSSxJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssU0FBUyxJQUFJLENBQUMsQ0FBQyxHQUFHLEtBQUssV0FBVyxFQUFFO1lBQ3JELElBQUksQ0FBQyxDQUFDLE9BQU8sSUFBSSxDQUFDLENBQUMsR0FBRyxLQUFLLFdBQVcsRUFBRTtnQkFDdEMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO2FBQ2I7aUJBQ0k7Z0JBQ0gsTUFBTSxJQUFJLEdBQUcsQ0FBQyxDQUFDLEdBQUcsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDM0MsSUFBSSxJQUFJLEVBQUU7b0JBQ1IsUUFBUSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUU7d0JBQ2YsS0FBSyxJQUFJLENBQUM7d0JBQ1YsS0FBSyxJQUFJOzRCQUNQLElBQUksQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDOzRCQUMzQyxNQUFNO3dCQUNSLEtBQUssSUFBSSxDQUFDO3dCQUNWLEtBQUssS0FBSyxDQUFDO3dCQUNYLEtBQUssTUFBTTs0QkFDVCxJQUFJLENBQUMsS0FBSyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQzs0QkFDN0MsTUFBTTt3QkFDUixLQUFLLElBQUksQ0FBQzt3QkFDVixLQUFLLE1BQU07NEJBQ1QsSUFBSSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUM7NEJBQzVDLE1BQU07cUJBQ1Q7b0JBQ0QsVUFBVSxDQUFDLEdBQUcsRUFBRTt3QkFDZCxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztvQkFDckMsQ0FBQyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO2lCQUNyQzthQUNGO1lBQ0QsTUFBTSxFQUFFLENBQUM7U0FDVjthQUNJLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxXQUFXLEVBQUU7WUFDN0IsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFO2dCQUNsQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQzthQUNuQjtZQUNELE1BQU0sRUFBRSxDQUFDO1NBQ1Y7UUFDRCxpQ0FBaUM7UUFFakMsSUFBSTtRQUNKLGdDQUFnQztJQUNsQyxDQUFDO0lBSUQsd0JBQXdCLENBQUMsQ0FBYTtRQUNwQyxNQUFNLEtBQUssR0FBSSxDQUFDLENBQUMsTUFBMkIsQ0FBQztRQUM3QyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNCLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUNuQixDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUdPLGNBQWMsQ0FBQyxLQUF1QixFQUFFLEdBQVk7UUFDMUQsTUFBTSxFQUFFLEtBQUssRUFBRSxHQUFHLEVBQUUsR0FBRyxZQUFZLENBQUMsdUJBQXVCLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxHQUFHLElBQUksSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNuSCxLQUFLLENBQUMsaUJBQWlCLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7O2tIQWxKVSxxQkFBcUI7c0dBQXJCLHFCQUFxQixnMUJBRXJCLGtCQUFrQix1RUMzQy9CLDg1Q0E0QmE7MkZEYUEscUJBQXFCO2tCQVRqQyxTQUFTOytCQUNFLGdCQUFnQixVQUVsQixDQUFDLEdBQUcsZUFBZSxFQUFFLEdBQUcsa0JBQWtCLEVBQUUsR0FBRyxZQUFZLEVBQUUsR0FBRyxjQUFjLEVBQUUsR0FBRyxlQUFlLENBQUMsV0FDbEcsQ0FBQyxHQUFHLGVBQWUsRUFBRSxHQUFHLGtCQUFrQixFQUFFLEdBQUcsWUFBWSxFQUFFLEdBQUcsY0FBYyxFQUFFLEdBQUcsZ0JBQWdCLENBQUMsbUJBQzVGLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksUUFDL0IsRUFBRSxLQUFLLEVBQUUsa0NBQWtDLEVBQUU7aUlBS25ELE9BQU87c0JBRE4sU0FBUzt1QkFBQyxrQkFBa0I7Z0JBUzdCLFlBQVk7c0JBRFgsTUFBTTtnQkFLSSxNQUFNO3NCQURoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhEYXRlVGltZSwgQVhTdHJpbmdVdGlsIH0gZnJvbSAnQGFjb3JleC9jb3JlJztcclxuaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgRWxlbWVudFJlZixcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBWaWV3Q2hpbGQsXHJcbiAgSW5wdXQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIE91dHB1dCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQVhCYXNlQ29tcG9uZW50LCBBWENsaWNrRXZlbnQgfSBmcm9tICcuLi9iYXNlJztcclxuaW1wb3J0IHsgRFJPUERPV05fSU5QVVRTLCBEUk9QRE9XTl9PVVRQVVQsIF9Ecm9wZG93bkNvbXBvbmVuZXRNaXhpbiB9IGZyb20gJy4uL2Jhc2UvbWl4aW4vZHJvcGRvd24tbWl4aW4uY2xhc3MnO1xyXG5pbXBvcnQgeyBJTlRFUkFDVElWRV9JTlBVVFMsIElOVEVSQUNUSVZFX09VVFBVVCwgX0ludGVyYWN0aXZlQ29tcG9uZW5ldE1peGluIH0gZnJvbSAnLi4vYmFzZS9taXhpbi9pbnRlcmFjdGl2ZS1taXhpbi5jbGFzcyc7XHJcbmltcG9ydCB7IF9TaXphYmxlQ29tcG9uZW5ldE1peGluIH0gZnJvbSAnLi4vYmFzZS9taXhpbi9zaXphYmxlLW1peGluLmNsYXNzJztcclxuaW1wb3J0IHsgVEVYVEJPWF9JTlBVVFMsIFRFWFRCT1hfT1VUUFVULCBfVGV4dGJveENvbXBvbmVuZXRNaXhpbiB9IGZyb20gJy4uL2Jhc2UvbWl4aW4vdGV4dGJveC1taXhpbi5jbGFzcyc7XHJcbmltcG9ydCB7IFZBTFVFX0lOUFVUUywgVkFMVUVfT1VUUFVULCBfVmFsdWVDb21wb25lbmV0TWl4aW4gfSBmcm9tICcuLi9iYXNlL21peGluL3ZhbHVlLW1peGluLmNsYXNzJztcclxuaW1wb3J0IHsgQVhDYWxlbmRhckJhc2VDb21wb25lbnQsIENBTEVOREFSX0lOUFVUUywgQ0FMRU5EQVJfT1VUUFVUUyB9IGZyb20gJy4uL2NhbGVuZGFyL2NhbGVuZGFyLmNsYXNzJztcclxuaW1wb3J0IHsgQVhQb3BvdmVyQ29tcG9uZW50IH0gZnJvbSAnLi4vcG9wb3Zlci9wb3BvdmVyLmNvbXBvbmVudCc7XHJcblxyXG5cclxuZXhwb3J0IGNvbnN0IEFYQmFzZURhdGVQaWNrZXJNaXhpbiA9XHJcbiAgX0ludGVyYWN0aXZlQ29tcG9uZW5ldE1peGluKFxyXG4gICAgX0Ryb3Bkb3duQ29tcG9uZW5ldE1peGluKFxyXG4gICAgICBfVmFsdWVDb21wb25lbmV0TWl4aW4oXHJcbiAgICAgICAgX1RleHRib3hDb21wb25lbmV0TWl4aW4oQVhDYWxlbmRhckJhc2VDb21wb25lbnQpXHJcbiAgICAgIClcclxuICAgIClcclxuICApO1xyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXgtZGF0ZS1waWNrZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRlcGlja2VyLmNvbXBvbmVudC5odG1sJyxcclxuICBpbnB1dHM6IFsuLi5EUk9QRE9XTl9JTlBVVFMsIC4uLklOVEVSQUNUSVZFX0lOUFVUUywgLi4uVkFMVUVfSU5QVVRTLCAuLi5URVhUQk9YX0lOUFVUUywgLi4uQ0FMRU5EQVJfSU5QVVRTXSxcclxuICBvdXRwdXRzOiBbLi4uRFJPUERPV05fT1VUUFVULCAuLi5JTlRFUkFDVElWRV9PVVRQVVQsIC4uLlZBTFVFX09VVFBVVCwgLi4uVEVYVEJPWF9PVVRQVVQsIC4uLkNBTEVOREFSX09VVFBVVFNdLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgaG9zdDogeyBjbGFzczogJ2F4LWVkaXRvci1jb250YWluZXIgYXgtZHJvcC1kb3duJyB9XHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBWERhdGVQaWNrZXJDb21wb25lbnQgZXh0ZW5kcyBBWEJhc2VEYXRlUGlja2VyTWl4aW4ge1xyXG5cclxuICBAVmlld0NoaWxkKEFYUG9wb3ZlckNvbXBvbmVudClcclxuICBwb3BvdmVyOiBBWFBvcG92ZXJDb21wb25lbnQ7XHJcblxyXG4gIF90YXJnZXQ6IEFYQmFzZUNvbXBvbmVudDtcclxuICBkaXNwbGF5VGV4dDogc3RyaW5nO1xyXG4gIF9jYWxlbmRhclZhbHVlOiBEYXRlO1xyXG4gIF9jdXJzb3JQb3M6IG51bWJlciA9IDA7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIGZvcm1hdENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nPigpO1xyXG5cclxuICBwcml2YXRlIF9mb3JtYXQ6IHN0cmluZyA9ICdZWVlZLU1NLWRkJztcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBnZXQgZm9ybWF0KCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5fZm9ybWF0O1xyXG4gIH1cclxuICBwdWJsaWMgc2V0IGZvcm1hdCh2OiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX3NldE9wdGlvbih7XHJcbiAgICAgIG5hbWU6ICdmb3JtYXQnLFxyXG4gICAgICB2YWx1ZTogdlxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcclxuICAgIF9jZHI6IENoYW5nZURldGVjdG9yUmVmXHJcbiAgKSB7XHJcbiAgICBzdXBlcihfZWxlbWVudFJlZiwgX2Nkcik7XHJcbiAgICB0aGlzLl90YXJnZXQgPSB0aGlzLl9nZXRIb3N0RWxlbWVudCgpO1xyXG4gIH1cclxuXHJcbiAgX2hhbmRsZUFycm93Q2xpY2tFdmVudChlOiBBWENsaWNrRXZlbnQpIHtcclxuICAgIHRoaXMudG9nZ2xlKCk7XHJcbiAgfVxyXG5cclxuICBfb25WYWx1ZUNoYW5nZWQob2xkVmFsdWU/OiBhbnksIG5ld1ZhbHVlPzogYW55KSB7XHJcbiAgICB0aGlzLmRpc3BsYXlUZXh0ID0gbmV3VmFsdWUgPyBBWERhdGVUaW1lLmNvbnZlcnQobmV3VmFsdWUpLmZvcm1hdCh0aGlzLl9mb3JtYXQpIDogbnVsbDtcclxuICAgIHRoaXMuY2xvc2UoKTtcclxuICB9XHJcblxyXG5cclxuICBfaGFuZGxlT25LZXlkb3duRXZlbnQoZTogS2V5Ym9hcmRFdmVudCkge1xyXG4gICAgY29uc3QgaWdub3JlID0gKCkgPT4ge1xyXG4gICAgICBlLnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB9O1xyXG5cclxuICAgIGNvbnN0IG51bXM6IHN0cmluZ1tdID0gQXJyYXkoMTApLmZpbGwoMCkubWFwKCh2LCBpKSA9PiBpLnRvU3RyaW5nKCkpO1xyXG4gICAgY29uc3QgY2hhcnM6IHN0cmluZ1tdID0gWydCYWNrc3BhY2UnLCAnQXJyb3dEb3duJywgJ0Fycm93VXAnLCAnQXJyb3dSaWdodCcsICdBcnJvd0xlZnQnLCAnVGFiJywgJ0VudGVyJ107XHJcbiAgICBjb25zdCBpbnB1dCA9IChlLnRhcmdldCBhcyBIVE1MSW5wdXRFbGVtZW50KTtcclxuICAgIGNvbnN0IGtleSA9IChlLmtleSk7XHJcbiAgICBjb25zdCB2YWxTdHIgPSBpbnB1dC52YWx1ZTtcclxuICAgIGNvbnN0IHNTdGFydCA9IGlucHV0LnNlbGVjdGlvblN0YXJ0O1xyXG4gICAgY29uc3Qgc0VuZCA9IGlucHV0LnNlbGVjdGlvbkVuZDtcclxuICAgIGNvbnN0IGRhdGVWYWwgPSBuZXcgQVhEYXRlVGltZSh0aGlzLnZhbHVlKTtcclxuICAgIC8vXHJcbiAgICBjb25zdCByZSA9IC9bYS16QS1aMC05XSsvaWc7XHJcbiAgICBjb25zdCBwYXJ0cyA9IEFycmF5LmZyb20odGhpcy5mb3JtYXQubWF0Y2hBbGwocmUpKTtcclxuICAgIGNvbnN0IHdvcmQgPSB2YWxTdHIuc3Vic3RyaW5nKHNTdGFydCwgc0VuZCk7XHJcbiAgICBjb25zdCBwYXJ0ID0gcGFydHNbQXJyYXkuZnJvbSh2YWxTdHIubWF0Y2hBbGwocmUpKS5maW5kSW5kZXgoYyA9PiBjWzBdID09IHdvcmQpXTtcclxuICAgIC8vXHJcbiAgICAvL1xyXG4gICAgaWYgKFsuLi5udW1zXS5pbmNsdWRlcyhrZXkpKSB7XHJcbiAgICAgIGlmIChwYXJ0KSB7XHJcbiAgICAgICAgc3dpdGNoIChwYXJ0WzBdKSB7XHJcbiAgICAgICAgICBjYXNlICdkZCc6XHJcbiAgICAgICAgICBjYXNlICdERCc6XHJcbiAgICAgICAgICAgIGRlYnVnZ2VyO1xyXG4gICAgICAgICAgICBjb25zdCBuZXdWYWwgPSBNYXRoLm1heCgxLCBNYXRoLm1pbigzMSwgTnVtYmVyKHdvcmQgKyBlLmtleSkpKTtcclxuICAgICAgICAgICAgdGhpcy52YWx1ZSA9IGRhdGVWYWwuc2V0KCdkYXknLCBuZXdWYWwpLmRhdGU7XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgY2FzZSAnbW0nOlxyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgIGNhc2UgJ3l5JzpcclxuICAgICAgICAgIGNhc2UgJ1lZWVknOlxyXG4gICAgICAgICAgICBicmVhaztcclxuICAgICAgICB9XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLl9oaWdobGlnaHRQYXJ0KGlucHV0LCBzU3RhcnQpO1xyXG4gICAgICAgIH0sIE1hdGgubWF4KDEwLCB0aGlzLmRlYm91bmNlVGltZSkpO1xyXG4gICAgICAgIGlnbm9yZSgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBlbHNlIGlmIChlLmtleSA9PT0gJ0Fycm93UmlnaHQnIHx8IGUua2V5ID09PSAnQXJyb3dMZWZ0Jykge1xyXG4gICAgICBjb25zdCBuZXh0ID0gQXJyYXkuZnJvbSh2YWxTdHIuc3Vic3RyKHNFbmQpLm1hdGNoQWxsKHJlKSk7XHJcbiAgICAgIGNvbnN0IHByZXYgPSBBcnJheS5mcm9tKHZhbFN0ci5zdWJzdHJpbmcoMCwgc1N0YXJ0KS5tYXRjaEFsbChyZSkpO1xyXG4gICAgICBpZ25vcmUoKTtcclxuICAgICAgdGhpcy5faGlnaGxpZ2h0UGFydChpbnB1dCwgKGUua2V5ID09PSAnQXJyb3dSaWdodCcgPyAoc0VuZCArIChuZXh0WzBdPy5pbmRleCB8fCAwKSkgOiAocHJldltwcmV2Lmxlbmd0aCAtIDFdPy5pbmRleCkpKTtcclxuICAgIH1cclxuICAgIGVsc2UgaWYgKGUua2V5ID09PSAnQXJyb3dVcCcgfHwgZS5rZXkgPT09ICdBcnJvd0Rvd24nKSB7XHJcbiAgICAgIGlmIChlLmN0cmxLZXkgJiYgZS5rZXkgPT09ICdBcnJvd0Rvd24nKSB7XHJcbiAgICAgICAgdGhpcy5vcGVuKCk7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgY29uc3Qgc2lnbiA9IGUua2V5ID09PSAnQXJyb3dVcCcgPyArMSA6IC0xO1xyXG4gICAgICAgIGlmIChwYXJ0KSB7XHJcbiAgICAgICAgICBzd2l0Y2ggKHBhcnRbMF0pIHtcclxuICAgICAgICAgICAgY2FzZSAnZGQnOlxyXG4gICAgICAgICAgICBjYXNlICdERCc6XHJcbiAgICAgICAgICAgICAgdGhpcy52YWx1ZSA9IGRhdGVWYWwuYWRkKCdkYXknLCBzaWduKS5kYXRlO1xyXG4gICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICBjYXNlICdtbSc6XHJcbiAgICAgICAgICAgIGNhc2UgJ01NTSc6XHJcbiAgICAgICAgICAgIGNhc2UgJ01NTU0nOlxyXG4gICAgICAgICAgICAgIHRoaXMudmFsdWUgPSBkYXRlVmFsLmFkZCgnbW9udGgnLCBzaWduKS5kYXRlO1xyXG4gICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICBjYXNlICd5eSc6XHJcbiAgICAgICAgICAgIGNhc2UgJ1lZWVknOlxyXG4gICAgICAgICAgICAgIHRoaXMudmFsdWUgPSBkYXRlVmFsLmFkZCgneWVhcicsIHNpZ24pLmRhdGU7XHJcbiAgICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5faGlnaGxpZ2h0UGFydChpbnB1dCwgc1N0YXJ0KTtcclxuICAgICAgICAgIH0sIE1hdGgubWF4KDEwLCB0aGlzLmRlYm91bmNlVGltZSkpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZ25vcmUoKTtcclxuICAgIH1cclxuICAgIGVsc2UgaWYgKGUua2V5ID09ICdCYWNrc3BhY2UnKSB7XHJcbiAgICAgIGlmICh0aGlzLmFsbG93TnVsbCkge1xyXG4gICAgICAgIHRoaXMudmFsdWUgPSBudWxsO1xyXG4gICAgICB9XHJcbiAgICAgIGlnbm9yZSgpO1xyXG4gICAgfVxyXG4gICAgLy8gZWxzZSBpZiAobnVtcy5pbmNsdWRlcyhrZXkpKSB7XHJcblxyXG4gICAgLy8gfVxyXG4gICAgLy8gc3VwZXIuX2VtaXRPbktleWRvd25FdmVudChlKTtcclxuICB9XHJcblxyXG5cclxuXHJcbiAgX2hhbmRsZU9uSW5wdXRDbGlja0V2ZW50KGU6IE1vdXNlRXZlbnQpOiB2b2lkIHtcclxuICAgIGNvbnN0IGlucHV0ID0gKGUudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpO1xyXG4gICAgdGhpcy5faGlnaGxpZ2h0UGFydChpbnB1dCk7XHJcbiAgICBlLnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gIH1cclxuXHJcblxyXG4gIHByaXZhdGUgX2hpZ2hsaWdodFBhcnQoaW5wdXQ6IEhUTUxJbnB1dEVsZW1lbnQsIHBvcz86IG51bWJlcikge1xyXG4gICAgY29uc3QgeyBzdGFydCwgZW5kIH0gPSBBWFN0cmluZ1V0aWwuZ2V0V29yZEJvdW5kc0F0UG9zaXRpb24oaW5wdXQudmFsdWUsIHBvcyAhPSBudWxsID8gcG9zIDogaW5wdXQuc2VsZWN0aW9uU3RhcnQpO1xyXG4gICAgaW5wdXQuc2V0U2VsZWN0aW9uUmFuZ2Uoc3RhcnQsIGVuZCk7XHJcbiAgfVxyXG59XHJcbiIsIjxuZy1jb250ZW50IHNlbGVjdD1cImF4LXByZWZpeFwiPlxyXG48L25nLWNvbnRlbnQ+XHJcbjxkaXYgY2xhc3M9XCJheC1kcm9wZG93bi1jb250ZW50XCI+XHJcbiAgICA8aW5wdXQgY2xhc3M9XCJheC1pbnB1dFwiIHR5cGU9XCJ0ZXh0XCIgW2F0dHIucGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxyXG4gICAgW2NsYXNzLmF4LXN0YXRlLWRpc2FibGVkXT1cImRpc2FibGVkXCIgW2NsYXNzLmF4LXN0YXRlLXJlYWRvbmx5XT1cInJlYWRvbmx5XCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiIFt0YWJpbmRleF09XCJ0YWJJbmRleFwiIFtuZ01vZGVsXT1cImRpc3BsYXlUZXh0XCIgKGZvY3VzKT1cIl9lbWl0T25Gb2N1c0V2ZW50KCRldmVudClcIiAobW91c2V1cCk9XCJfaGFuZGxlT25JbnB1dENsaWNrRXZlbnQoJGV2ZW50KVwiXHJcbiAgICAoYmx1cik9XCJfZW1pdE9uQmx1ckV2ZW50KCRldmVudClcIiAoa2V5ZG93bik9XCJfaGFuZGxlT25LZXlkb3duRXZlbnQoJGV2ZW50KVwiPlxyXG48L2Rpdj5cclxuPGF4LWJ1dHRvbiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBbdGFiSW5kZXhdPVwiLTFcIiAgY29sb3I9XCJsaWdodFwiIGxvb2s9XCJibGFua1wiXHJcbiAgICAob25DbGljayk9XCJfaGFuZGxlQXJyb3dDbGlja0V2ZW50KCRldmVudClcIj5cclxuICAgIDxheC1pY29uIGljb249XCJheC1pYyBheC1pYy1jaGV2cm9uIGF4LXRyYW5zZm9ybSBheC0tcm90YXRlLTkwXCI+PC9heC1pY29uPlxyXG48L2F4LWJ1dHRvbj5cclxuPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtc3VmZml4XCI+XHJcbjwvbmctY29udGVudD5cclxuPGF4LXBvcG92ZXIgW3RhcmdldF09XCJfdGFyZ2V0XCIgW3Bvc2l0aW9uXT1cInBvc2l0aW9uXCIgW29wZW5UcmlnZ2VyXT1cIidtYW51YWwnXCIgW2Nsb3NlVHJpZ2dlcl09XCInY2xpY2tvdXQnXCIgPlxyXG4gICAgPGRpdiBjbGFzcz1cImF4LW92ZXJsYXktcGFuZVwiIFtzdHlsZS5taW4td2lkdGgucHhdPVwiZHJvcGRvd25XaWR0aFwiPlxyXG4gICAgICAgIDxheC1jYWxlbmRhciBcclxuICAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCIgXHJcbiAgICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiIFxyXG4gICAgICAgICAgICBbKHZhbHVlKV09XCJ2YWx1ZVwiXHJcbiAgICAgICAgICAgIFttaW5dPVwibWluXCJcclxuICAgICAgICAgICAgW21pbl09XCJtYXhcIlxyXG4gICAgICAgICAgICBbZGlzYWJsZWREYXRlc109XCJkaXNhYmxlZERhdGVzXCJcclxuICAgICAgICAgICAgW2hvbGlkYXlEYXRlc109XCJob2xpZGF5RGF0ZXNcIlxyXG4gICAgICAgICAgICBbZGVwdGhdPVwiZGVwdGhcIlxyXG4gICAgICAgICAgICA+XHJcbiAgICAgICAgPC9heC1jYWxlbmRhcj5cclxuICAgIDwvZGl2PlxyXG48L2F4LXBvcG92ZXI+Il19
|
|
@@ -7,14 +7,14 @@ export class AXFormFieldComponent extends AXBaseComponentMixin {
|
|
|
7
7
|
}
|
|
8
8
|
}
|
|
9
9
|
AXFormFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AXFormFieldComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
10
|
-
AXFormFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: AXFormFieldComponent, selector: "ax-form-field", usesInheritance: true, ngImport: i0, template: '<
|
|
10
|
+
AXFormFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: AXFormFieldComponent, selector: "ax-form-field", usesInheritance: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
11
11
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AXFormFieldComponent, decorators: [{
|
|
12
12
|
type: Component,
|
|
13
13
|
args: [{
|
|
14
14
|
selector: 'ax-form-field',
|
|
15
|
-
template: '<
|
|
15
|
+
template: '<ng-content></ng-content>',
|
|
16
16
|
encapsulation: ViewEncapsulation.None,
|
|
17
17
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
18
18
|
}]
|
|
19
19
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; } });
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9zcmMvbGliL2Zvcm0vZm9ybS1maWVsZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFxQixTQUFTLEVBQXNCLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdILE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQVFqRSxNQUFNLE9BQU8sb0JBQXFCLFNBQVEsb0JBQW9CO0lBRTFELFlBQ0ksVUFBc0IsRUFDdEIsR0FBc0I7UUFFdEIsS0FBSyxDQUFDLFVBQVUsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUMzQixDQUFDOztpSEFQUSxvQkFBb0I7cUdBQXBCLG9CQUFvQiw0RUFKbkIsMkJBQTJCOzJGQUk1QixvQkFBb0I7a0JBTmhDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDbEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgT25Jbml0LCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBWEJhc2VDb21wb25lbnRNaXhpbiB9IGZyb20gJy4uL2Jhc2UvbWl4aW4vbWl4aW4uY2xhc3MnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2F4LWZvcm0tZmllbGQnLFxyXG4gICAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcclxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFYRm9ybUZpZWxkQ29tcG9uZW50IGV4dGVuZHMgQVhCYXNlQ29tcG9uZW50TWl4aW4ge1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXHJcbiAgICAgICAgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZlxyXG4gICAgKSB7XHJcbiAgICAgICAgc3VwZXIoZWxlbWVudFJlZiwgY2RyKTtcclxuICAgIH1cclxufSJdfQ==
|
|
@@ -145,17 +145,28 @@ export class AXPopoverComponent extends AXBaseComponent {
|
|
|
145
145
|
if (!targetRef)
|
|
146
146
|
return;
|
|
147
147
|
if (!this._overlayRef) {
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
148
|
+
let positionStrategy;
|
|
149
|
+
let scrollStrategy;
|
|
150
|
+
debugger;
|
|
151
|
+
if (this._platform.is('Mobile')) {
|
|
152
|
+
positionStrategy = this._overlay.position().global().centerHorizontally().bottom();
|
|
153
|
+
scrollStrategy = this._overlay.scrollStrategies.noop();
|
|
154
|
+
}
|
|
155
|
+
else {
|
|
156
|
+
positionStrategy = this._overlay.position()
|
|
157
|
+
.flexibleConnectedTo(targetRef)
|
|
158
|
+
.withPositions(Array.isArray(this.position) ? this.position : [this.position])
|
|
159
|
+
.withPush(false);
|
|
160
|
+
scrollStrategy = this._overlay.scrollStrategies.close();
|
|
161
|
+
}
|
|
152
162
|
this._overlayRef = this._overlay.create({
|
|
153
163
|
positionStrategy,
|
|
154
|
-
scrollStrategy
|
|
164
|
+
scrollStrategy,
|
|
155
165
|
panelClass: ['ax-animate-fadeIn', 'ax-animate-faster'],
|
|
156
|
-
hasBackdrop:
|
|
166
|
+
hasBackdrop: true,
|
|
157
167
|
backdropClass: [this.backdropClass || 'cdk-overlay-transparent-backdrop']
|
|
158
168
|
});
|
|
169
|
+
this._updateOverlay();
|
|
159
170
|
if (this.closeTrigger == 'clickout') {
|
|
160
171
|
this._addSub(this._overlayRef._outsidePointerEvents.subscribe(c => {
|
|
161
172
|
const target = c.target;
|
|
@@ -165,15 +176,15 @@ export class AXPopoverComponent extends AXBaseComponent {
|
|
|
165
176
|
}
|
|
166
177
|
}));
|
|
167
178
|
}
|
|
168
|
-
this._addSub(this._overlayRef.attachments().subscribe(() => {
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
}));
|
|
179
|
+
// this._addSub(this._overlayRef.attachments().subscribe(() => {
|
|
180
|
+
// if (!this._isScrollAttached) {
|
|
181
|
+
// this._addSub(this._platform.scroll.subscribe(c => {
|
|
182
|
+
// // if (!(c.nativeEvent.target as HTMLElement).closest('.ax-overlay-pane'))
|
|
183
|
+
// this.close();
|
|
184
|
+
// }));
|
|
185
|
+
// this._isScrollAttached = true;
|
|
186
|
+
// }
|
|
187
|
+
// }));
|
|
177
188
|
}
|
|
178
189
|
if (!this._templatePortal) {
|
|
179
190
|
this._templatePortal = new TemplatePortal(this._baseTemplate, this._viewContainerRef);
|
|
@@ -185,6 +196,24 @@ export class AXPopoverComponent extends AXBaseComponent {
|
|
|
185
196
|
_addSub(sub) {
|
|
186
197
|
this._subs.push(sub);
|
|
187
198
|
}
|
|
199
|
+
_updateOverlay() {
|
|
200
|
+
const targetRef = this._target;
|
|
201
|
+
let positionStrategy;
|
|
202
|
+
let scrollStrategy;
|
|
203
|
+
if (this._platform.is('Mobile')) {
|
|
204
|
+
positionStrategy = this._overlay.position().global().centerHorizontally().bottom();
|
|
205
|
+
scrollStrategy = this._overlay.scrollStrategies.noop();
|
|
206
|
+
}
|
|
207
|
+
else {
|
|
208
|
+
positionStrategy = this._overlay.position()
|
|
209
|
+
.flexibleConnectedTo(targetRef)
|
|
210
|
+
.withPositions(Array.isArray(this.position) ? this.position : [this.position])
|
|
211
|
+
.withPush(false);
|
|
212
|
+
scrollStrategy = this._overlay.scrollStrategies.close();
|
|
213
|
+
}
|
|
214
|
+
this._overlayRef.updatePositionStrategy(positionStrategy);
|
|
215
|
+
this._overlayRef.updateScrollStrategy(scrollStrategy);
|
|
216
|
+
}
|
|
188
217
|
}
|
|
189
218
|
AXPopoverComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AXPopoverComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i1.Overlay }, { token: i2.AXPlatform }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
190
219
|
AXPopoverComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: AXPopoverComponent, selector: "ax-popover", inputs: { target: "target", position: "position", openTrigger: "openTrigger", closeTrigger: "closeTrigger", hasBackdrop: "hasBackdrop", backdropClass: "backdropClass" }, outputs: { onOpened: "onOpened", onClosed: "onClosed" }, host: { listeners: { "document:keydown": "_handleKeydownHandler($event)" } }, viewQueries: [{ propertyName: "_baseTemplate", first: true, predicate: ["baseTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #baseTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
@@ -214,4 +243,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImpor
|
|
|
214
243
|
type: HostListener,
|
|
215
244
|
args: ['document:keydown', ['$event']]
|
|
216
245
|
}] } });
|
|
217
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9zcmMvbGliL3BvcG92ZXIvcG9wb3Zlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9zcmMvbGliL3BvcG92ZXIvcG9wb3Zlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBNkIsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFlLFVBQVUsRUFBb0IsWUFBWSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbE4sT0FBTyxFQUFFLGVBQWUsRUFBZ0MsTUFBTSxTQUFTLENBQUM7QUFFeEUsT0FBTyxFQUFFLGFBQWEsRUFBdUIsTUFBTSxjQUFjLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxTQUFTLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFZOUMsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGVBQWU7SUFFckQsWUFDRSxXQUF1QixFQUNoQixJQUF1QixFQUN0QixLQUFhLEVBQ2IsUUFBaUIsRUFDakIsU0FBcUIsRUFDckIsaUJBQW1DO1FBRzNDLEtBQUssQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFQbEIsU0FBSSxHQUFKLElBQUksQ0FBbUI7UUFDdEIsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUNiLGFBQVEsR0FBUixRQUFRLENBQVM7UUFDakIsY0FBUyxHQUFULFNBQVMsQ0FBWTtRQUNyQixzQkFBaUIsR0FBakIsaUJBQWlCLENBQWtCO1FBc0I3QyxhQUFRLEdBQWdEO1lBQ3REO2dCQUNFLE9BQU8sRUFBRSxPQUFPO2dCQUNoQixPQUFPLEVBQUUsUUFBUTtnQkFDakIsUUFBUSxFQUFFLE9BQU87Z0JBQ2pCLFFBQVEsRUFBRSxLQUFLO2FBQ2hCO1lBQ0Q7Z0JBQ0UsT0FBTyxFQUFFLE9BQU87Z0JBQ2hCLE9BQU8sRUFBRSxLQUFLO2dCQUNkLFFBQVEsRUFBRSxPQUFPO2dCQUNqQixRQUFRLEVBQUUsUUFBUTthQUNuQjtTQUNGLENBQUM7UUFPRixVQUFLLEdBQW1CLEVBQUUsQ0FBQztRQUMzQixFQUFFO1FBRUYsZ0JBQVcsR0FBZ0QsUUFBUSxDQUFDO1FBQ3BFLEVBQUU7UUFFRixpQkFBWSxHQUF1QyxVQUFVLENBQUM7UUFDOUQsRUFBRTtRQUVGLGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBSTdCLEVBQUU7UUFDTSxjQUFTLEdBQVksRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQztRQUNwQyxzQkFBaUIsR0FBWSxLQUFLLENBQUM7UUFDM0MsRUFBRTtRQUVGLGFBQVEsR0FBMEIsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUU5RCxhQUFRLEdBQTBCLElBQUksWUFBWSxFQUFXLENBQUM7SUExRDlELENBQUM7SUFHRCxJQUNXLE1BQU07UUFDZixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUNELElBQVcsTUFBTSxDQUFDLENBQTZDO1FBQzdELElBQUksQ0FBQyxZQUFZLFdBQVc7WUFDMUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUM7YUFDZCxJQUFJLENBQUMsWUFBWSxVQUFVO1lBQzlCLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLGFBQWEsQ0FBQzthQUM1QixJQUFJLENBQUMsWUFBWSxlQUFlO1lBQ25DLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDeEMsQ0FBQztJQThDRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7WUFDakIsU0FBUyxFQUFFLElBQUk7WUFDZixXQUFXLEVBQUUsSUFBSSxDQUFDLGVBQWUsRUFBRTtTQUNwQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDO1lBQ2pCLFNBQVMsRUFBRSxJQUFJO1lBQ2YsV0FBVyxFQUFFLElBQUksQ0FBQyxlQUFlLEVBQUU7U0FDcEMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUNELEVBQUU7SUFDRixVQUFVO1FBQ1IsSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2hCLElBQUksSUFBSSxDQUFDLFdBQVcsS0FBSyxXQUFXLEVBQUU7Z0JBQ3BDLE1BQU0sV0FBVyxHQUFHLFNBQVMsQ0FBYSxJQUFJLENBQUMsT0FBTyxFQUFFLFdBQVcsQ0FBQyxDQUFDO2dCQUNyRSxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUU7b0JBQ3JDLE1BQU0sS0FBSyxHQUFHLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztvQkFDN0MsSUFBSSxhQUFhLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUM7d0JBQ3JELElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDaEIsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNMO1lBQ0QsSUFBSSxJQUFJLENBQUMsWUFBWSxLQUFLLFVBQVUsRUFBRTtnQkFDcEMsTUFBTSxVQUFVLEdBQUcsU0FBUyxDQUFhLFFBQVEsRUFBRSxXQUFXLENBQUMsQ0FBQztnQkFDaEUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRTtvQkFDM0QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQztvQkFDN0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQztvQkFDN0IsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO3dCQUNmLFVBQVUsQ0FBQyxHQUFHLEVBQUU7NEJBQ2QsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dDQUNoSixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7d0JBQ2pCLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQTtxQkFDUjtnQkFDSCxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBRUw7WUFDRCxFQUFFO1lBQ0YsSUFBSSxJQUFJLENBQUMsV0FBVyxLQUFLLE9BQU8sSUFBSSxJQUFJLENBQUMsV0FBVyxLQUFLLFFBQVEsRUFBRTtnQkFDakUsTUFBTSxNQUFNLEdBQUcsU0FBUyxDQUFhLElBQUksQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7Z0JBQzVELElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRTtvQkFDaEMsSUFBSSxDQUFDLFdBQVcsSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUM3RCxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ0w7U0FDRjtJQUNILENBQUM7SUFDRCxFQUFFO0lBQ0YsU0FBUztRQUNQLElBQUksQ0FBQyxXQUFXLEVBQUUsTUFBTSxFQUFFLENBQUM7UUFDM0IsSUFBSSxDQUFDLFdBQVcsRUFBRSxPQUFPLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNyQixDQUFDLEVBQUUsV0FBVyxFQUFFLENBQUM7UUFDbkIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBR0QscUJBQXFCLENBQUMsQ0FBZ0I7UUFDcEMsSUFBSSxDQUFDLENBQUMsR0FBRyxLQUFLLE9BQU8sSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLFNBQVMsRUFBRTtZQUM3QyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7U0FDZjtRQUNELElBQUksQ0FBQyxDQUFDLEdBQUcsS0FBSyxRQUFRLEVBQUU7WUFDdEIsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO2dCQUNmLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDYixDQUFDLENBQUMsZUFBZSxFQUFFLENBQUM7YUFDckI7U0FDRjtJQUNILENBQUM7SUFDRCxFQUFFO0lBQ0YsTUFBTTtRQUNKLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzNDLENBQUM7SUFDRCxFQUFFO0lBQ0YsS0FBSztRQUNILElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2hCLE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxXQUFXLEVBQUUsTUFBTSxFQUFFLENBQUM7UUFDM0IsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUNELEVBQUU7SUFDRixJQUFJO1FBQ0YsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2YsT0FBTztTQUNSO1FBQ0QsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQzlDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFTyxxQkFBcUI7UUFDM0IsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUMvQixJQUFJLENBQUMsU0FBUztZQUNaLE9BQU87UUFFVCxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUNyQixNQUFNLGdCQUFnQixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFO2lCQUM5QyxtQkFBbUIsQ0FBQyxTQUFTLENBQUM7aUJBQzlCLGFBQWEsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7aUJBQzdFLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNuQixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDO2dCQUN0QyxnQkFBZ0I7Z0JBQ2hCLGNBQWMsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLEtBQUssRUFBRTtnQkFDdEQsVUFBVSxFQUFFLENBQUMsbUJBQW1CLEVBQUUsbUJBQW1CLENBQUM7Z0JBQ3RELFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztnQkFDN0IsYUFBYSxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsSUFBSSxrQ0FBa0MsQ0FBQzthQUMxRSxDQUFDLENBQUM7WUFDSCxJQUFJLElBQUksQ0FBQyxZQUFZLElBQUksVUFBVSxFQUFFO2dCQUNuQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMscUJBQXFCLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFO29CQUNoRSxNQUFNLE1BQU0sR0FBRyxDQUFDLENBQUMsTUFBcUIsQ0FBQztvQkFDdkMsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDO29CQUMxQixJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUU7d0JBQy9CLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztxQkFDZDtnQkFDSCxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ0w7WUFDRCxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtnQkFDekQsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtvQkFDM0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUU7d0JBQy9DLDBFQUEwRTt3QkFDMUUsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO29CQUNmLENBQUMsQ0FBQyxDQUFDLENBQUM7b0JBQ0osSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQztpQkFDL0I7WUFDSCxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ0w7UUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUN6QixJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7U0FDdkY7SUFDSCxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDbkUsQ0FBQztJQUVPLE9BQU8sQ0FBQyxHQUFpQjtRQUMvQixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN2QixDQUFDOzsrR0FqTlUsa0JBQWtCO21HQUFsQixrQkFBa0IseWVDbkIvQiw4RUFFYzsyRkRpQkQsa0JBQWtCO2tCQU45QixTQUFTOytCQUNFLFlBQVksaUJBRVAsaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTTtvT0FrQnBDLE1BQU07c0JBRGhCLEtBQUs7Z0JBZU4sUUFBUTtzQkFEUCxLQUFLO2dCQWlCTixhQUFhO3NCQURaLFNBQVM7dUJBQUMsY0FBYztnQkFRekIsV0FBVztzQkFEVixLQUFLO2dCQUlOLFlBQVk7c0JBRFgsS0FBSztnQkFJTixXQUFXO3NCQURWLEtBQUs7Z0JBSU4sYUFBYTtzQkFEWixLQUFLO2dCQU9OLFFBQVE7c0JBRFAsTUFBTTtnQkFHUCxRQUFRO3NCQURQLE1BQU07Z0JBNERQLHFCQUFxQjtzQkFEcEIsWUFBWTt1QkFBQyxrQkFBa0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE5nWm9uZSwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBWaWV3RW5jYXBzdWxhdGlvbiwgVmlld0NoaWxkLCBUZW1wbGF0ZVJlZiwgRWxlbWVudFJlZiwgVmlld0NvbnRhaW5lclJlZiwgSG9zdExpc3RlbmVyLCBFdmVudEVtaXR0ZXIsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBWEJhc2VDb21wb25lbnQsIEFYQ29ubmVjdGVkUG9zaXRpb24sIEFYRXZlbnQgfSBmcm9tICcuLi9iYXNlJztcclxuaW1wb3J0IHsgT3ZlcmxheSwgT3ZlcmxheVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcclxuaW1wb3J0IHsgQVhEcmF3aW5nVXRpbCwgQVhQbGF0Zm9ybSwgQVhQb2ludCB9IGZyb20gJ0BhY29yZXgvY29yZSc7XHJcbmltcG9ydCB7IFRlbXBsYXRlUG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XHJcbmltcG9ydCB7IGZyb21FdmVudCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCBfIGZyb20gJ2xvZGFzaCc7XHJcbmltcG9ydCB7IHRocm90dGxlVGltZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcblxyXG5cclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2F4LXBvcG92ZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9wb3BvdmVyLmNvbXBvbmVudC5odG1sJyxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQVhQb3BvdmVyQ29tcG9uZW50IGV4dGVuZHMgQVhCYXNlQ29tcG9uZW50IHtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcclxuICAgIHB1YmxpYyBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHByaXZhdGUgX3pvbmU6IE5nWm9uZSxcclxuICAgIHByaXZhdGUgX292ZXJsYXk6IE92ZXJsYXksXHJcbiAgICBwcml2YXRlIF9wbGF0Zm9ybTogQVhQbGF0Zm9ybSxcclxuICAgIHByaXZhdGUgX3ZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXHJcblxyXG4gICkge1xyXG4gICAgc3VwZXIoX2VsZW1lbnRSZWYsIF9jZHIpO1xyXG4gIH1cclxuICAvL1xyXG4gIHByaXZhdGUgX3RhcmdldDogSFRNTEVsZW1lbnQ7XHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgZ2V0IHRhcmdldCgpOiBIVE1MRWxlbWVudCB8IEVsZW1lbnRSZWYgfCBBWEJhc2VDb21wb25lbnQge1xyXG4gICAgcmV0dXJuIHRoaXMuX3RhcmdldDtcclxuICB9XHJcbiAgcHVibGljIHNldCB0YXJnZXQodjogSFRNTEVsZW1lbnQgfCBFbGVtZW50UmVmIHwgQVhCYXNlQ29tcG9uZW50KSB7XHJcbiAgICBpZiAodiBpbnN0YW5jZW9mIEhUTUxFbGVtZW50KVxyXG4gICAgICB0aGlzLl90YXJnZXQgPSB2O1xyXG4gICAgZWxzZSBpZiAodiBpbnN0YW5jZW9mIEVsZW1lbnRSZWYpXHJcbiAgICAgIHRoaXMuX3RhcmdldCA9IHYubmF0aXZlRWxlbWVudDtcclxuICAgIGVsc2UgaWYgKHYgaW5zdGFuY2VvZiBBWEJhc2VDb21wb25lbnQpXHJcbiAgICAgIHRoaXMuX3RhcmdldCA9IHYuX2dldElubmVyRWxlbWVudCgpO1xyXG4gIH1cclxuXHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgcG9zaXRpb246IEFYQ29ubmVjdGVkUG9zaXRpb24gfCBBWENvbm5lY3RlZFBvc2l0aW9uW10gPSBbXHJcbiAgICB7XHJcbiAgICAgIG9yaWdpblg6ICdzdGFydCcsXHJcbiAgICAgIG9yaWdpblk6ICdib3R0b20nLFxyXG4gICAgICBvdmVybGF5WDogJ3N0YXJ0JyxcclxuICAgICAgb3ZlcmxheVk6ICd0b3AnLFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgb3JpZ2luWDogJ3N0YXJ0JyxcclxuICAgICAgb3JpZ2luWTogJ3RvcCcsXHJcbiAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxyXG4gICAgICBvdmVybGF5WTogJ2JvdHRvbSdcclxuICAgIH1cclxuICBdO1xyXG4gIC8vXHJcbiAgQFZpZXdDaGlsZCgnYmFzZVRlbXBsYXRlJylcclxuICBfYmFzZVRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIF9vdmVybGF5UmVmOiBPdmVybGF5UmVmO1xyXG4gIF90ZW1wbGF0ZVBvcnRhbDogVGVtcGxhdGVQb3J0YWw7XHJcblxyXG4gIF9zdWJzOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xyXG4gIC8vXHJcbiAgQElucHV0KClcclxuICBvcGVuVHJpZ2dlcjogJ21hbnVhbCcgfCAnY2xpY2snIHwgJ21vdXNlb3ZlcicgfCAndG9nZ2xlJyA9ICd0b2dnbGUnO1xyXG4gIC8vXHJcbiAgQElucHV0KClcclxuICBjbG9zZVRyaWdnZXI6ICdtYW51YWwnIHwgJ2NsaWNrb3V0JyB8ICdtb3VzZW91dCcgPSAnY2xpY2tvdXQnO1xyXG4gIC8vXHJcbiAgQElucHV0KClcclxuICBoYXNCYWNrZHJvcDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGJhY2tkcm9wQ2xhc3M6IHN0cmluZztcclxuICAvL1xyXG4gIHByaXZhdGUgX21vdXNlUG9zOiBBWFBvaW50ID0geyB4OiAwLCB5OiAwIH07XHJcbiAgcHJpdmF0ZSBfaXNTY3JvbGxBdHRhY2hlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIC8vXHJcbiAgQE91dHB1dCgpXHJcbiAgb25PcGVuZWQ6IEV2ZW50RW1pdHRlcjxBWEV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8QVhFdmVudD4oKTtcclxuICBAT3V0cHV0KClcclxuICBvbkNsb3NlZDogRXZlbnRFbWl0dGVyPEFYRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxBWEV2ZW50PigpO1xyXG5cclxuICBfZW1pdE9uT3BlbmVkRXZlbnQoKSB7XHJcbiAgICB0aGlzLm9uT3BlbmVkLmVtaXQoe1xyXG4gICAgICBjb21wb25lbnQ6IHRoaXMsXHJcbiAgICAgIGh0bWxFbGVtZW50OiB0aGlzLl9nZXRIb3N0RWxlbWVudCgpXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIF9lbWl0T25DbG9zZWRFdmVudCgpIHtcclxuICAgIHRoaXMub25DbG9zZWQuZW1pdCh7XHJcbiAgICAgIGNvbXBvbmVudDogdGhpcyxcclxuICAgICAgaHRtbEVsZW1lbnQ6IHRoaXMuX2dldEhvc3RFbGVtZW50KClcclxuICAgIH0pO1xyXG4gIH1cclxuICAvL1xyXG4gIG9uVmlld0luaXQoKSB7XHJcbiAgICBpZiAodGhpcy5fdGFyZ2V0KSB7XHJcbiAgICAgIGlmICh0aGlzLm9wZW5UcmlnZ2VyID09PSAnbW91c2VvdmVyJykge1xyXG4gICAgICAgIGNvbnN0IG1vdXNlRW50ZXIkID0gZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KHRoaXMuX3RhcmdldCwgJ21vdXNlb3ZlcicpO1xyXG4gICAgICAgIHRoaXMuX2FkZFN1Yihtb3VzZUVudGVyJC5zdWJzY3JpYmUoZSA9PiB7XHJcbiAgICAgICAgICBjb25zdCBwb2ludCA9IHsgeDogZS5jbGllbnRYLCB5OiBlLmNsaWVudFkgfTtcclxuICAgICAgICAgIGlmIChBWERyYXdpbmdVdGlsLmlzSW5FbGVtZW50Qm91bmQocG9pbnQsIHRoaXMuX3RhcmdldCkpXHJcbiAgICAgICAgICAgIHRoaXMub3BlbigpO1xyXG4gICAgICAgIH0pKTtcclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5jbG9zZVRyaWdnZXIgPT09ICdtb3VzZW91dCcpIHtcclxuICAgICAgICBjb25zdCBtb3VzZU1vdmUkID0gZnJvbUV2ZW50PE1vdXNlRXZlbnQ+KGRvY3VtZW50LCAnbW91c2Vtb3ZlJyk7XHJcbiAgICAgICAgdGhpcy5fYWRkU3ViKG1vdXNlTW92ZSQucGlwZSh0aHJvdHRsZVRpbWUoNTApKS5zdWJzY3JpYmUoZSA9PiB7XHJcbiAgICAgICAgICB0aGlzLl9tb3VzZVBvcy54ID0gZS5jbGllbnRYO1xyXG4gICAgICAgICAgdGhpcy5fbW91c2VQb3MueSA9IGUuY2xpZW50WTtcclxuICAgICAgICAgIGlmICh0aGlzLmlzT3Blbikge1xyXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICBpZiAoIV8uc29tZShbdGhpcy5fdGFyZ2V0LCB0aGlzLl9vdmVybGF5UmVmLm92ZXJsYXlFbGVtZW50XSwgZWwgPT4gXy5pbmNsdWRlcyhkb2N1bWVudC5lbGVtZW50c0Zyb21Qb2ludCh0aGlzLl9tb3VzZVBvcy54LCB0aGlzLl9tb3VzZVBvcy55KSwgZWwpKSlcclxuICAgICAgICAgICAgICAgIHRoaXMuY2xvc2UoKTtcclxuICAgICAgICAgICAgfSwgMTAwKVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0pKTtcclxuXHJcbiAgICAgIH1cclxuICAgICAgLy9cclxuICAgICAgaWYgKHRoaXMub3BlblRyaWdnZXIgPT09ICdjbGljaycgfHwgdGhpcy5vcGVuVHJpZ2dlciA9PT0gJ3RvZ2dsZScpIHtcclxuICAgICAgICBjb25zdCBjbGljayQgPSBmcm9tRXZlbnQ8TW91c2VFdmVudD4odGhpcy5fdGFyZ2V0LCAnY2xpY2snKTtcclxuICAgICAgICB0aGlzLl9hZGRTdWIoY2xpY2skLnN1YnNjcmliZShlID0+IHtcclxuICAgICAgICAgIHRoaXMub3BlblRyaWdnZXIgPT0gJ3RvZ2dsZScgPyB0aGlzLnRvZ2dsZSgpIDogdGhpcy5vcGVuKCk7XHJcbiAgICAgICAgfSkpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vXHJcbiAgb25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fb3ZlcmxheVJlZj8uZGV0YWNoKCk7XHJcbiAgICB0aGlzLl9vdmVybGF5UmVmPy5kaXNwb3NlKCk7XHJcbiAgICB0aGlzLl9zdWJzLmZvckVhY2gocyA9PiB7XHJcbiAgICAgIHM/LnVuc3Vic2NyaWJlKCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50OmtleWRvd24nLCBbJyRldmVudCddKVxyXG4gIF9oYW5kbGVLZXlkb3duSGFuZGxlcihlOiBLZXlib2FyZEV2ZW50KSB7XHJcbiAgICBpZiAoZS5rZXkgPT09ICdFbnRlcicgJiYgZS50eXBlID09PSAna2V5ZG93bicpIHtcclxuICAgICAgdGhpcy50b2dnbGUoKTtcclxuICAgIH1cclxuICAgIGlmIChlLmtleSA9PT0gJ0VzY2FwZScpIHtcclxuICAgICAgaWYgKHRoaXMuaXNPcGVuKSB7XHJcbiAgICAgICAgdGhpcy5jbG9zZSgpO1xyXG4gICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLy9cclxuICB0b2dnbGUoKSB7XHJcbiAgICB0aGlzLmlzT3BlbiA/IHRoaXMuY2xvc2UoKSA6IHRoaXMub3BlbigpO1xyXG4gIH1cclxuICAvL1xyXG4gIGNsb3NlKCkge1xyXG4gICAgaWYgKCF0aGlzLmlzT3Blbikge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLl9vdmVybGF5UmVmPy5kZXRhY2goKTtcclxuICAgIHRoaXMuX2VtaXRPbkNsb3NlZEV2ZW50KCk7XHJcbiAgfVxyXG4gIC8vXHJcbiAgb3BlbigpIHtcclxuICAgIGlmICh0aGlzLmlzT3Blbikge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLl9lbnN1cmVPdmVybGF5Q3JlYXRlZCgpO1xyXG4gICAgdGhpcy5fb3ZlcmxheVJlZi5hdHRhY2godGhpcy5fdGVtcGxhdGVQb3J0YWwpO1xyXG4gICAgdGhpcy5fZW1pdE9uT3BlbmVkRXZlbnQoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2Vuc3VyZU92ZXJsYXlDcmVhdGVkKCkge1xyXG4gICAgY29uc3QgdGFyZ2V0UmVmID0gdGhpcy5fdGFyZ2V0O1xyXG4gICAgaWYgKCF0YXJnZXRSZWYpXHJcbiAgICAgIHJldHVybjtcclxuXHJcbiAgICBpZiAoIXRoaXMuX292ZXJsYXlSZWYpIHtcclxuICAgICAgY29uc3QgcG9zaXRpb25TdHJhdGVneSA9IHRoaXMuX292ZXJsYXkucG9zaXRpb24oKVxyXG4gICAgICAgIC5mbGV4aWJsZUNvbm5lY3RlZFRvKHRhcmdldFJlZilcclxuICAgICAgICAud2l0aFBvc2l0aW9ucyhBcnJheS5pc0FycmF5KHRoaXMucG9zaXRpb24pID8gdGhpcy5wb3NpdGlvbiA6IFt0aGlzLnBvc2l0aW9uXSlcclxuICAgICAgICAud2l0aFB1c2goZmFsc2UpO1xyXG4gICAgICB0aGlzLl9vdmVybGF5UmVmID0gdGhpcy5fb3ZlcmxheS5jcmVhdGUoe1xyXG4gICAgICAgIHBvc2l0aW9uU3RyYXRlZ3ksXHJcbiAgICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMuX292ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5jbG9zZSgpLFxyXG4gICAgICAgIHBhbmVsQ2xhc3M6IFsnYXgtYW5pbWF0ZS1mYWRlSW4nLCAnYXgtYW5pbWF0ZS1mYXN0ZXInXSxcclxuICAgICAgICBoYXNCYWNrZHJvcDogdGhpcy5oYXNCYWNrZHJvcCxcclxuICAgICAgICBiYWNrZHJvcENsYXNzOiBbdGhpcy5iYWNrZHJvcENsYXNzIHx8ICdjZGstb3ZlcmxheS10cmFuc3BhcmVudC1iYWNrZHJvcCddXHJcbiAgICAgIH0pO1xyXG4gICAgICBpZiAodGhpcy5jbG9zZVRyaWdnZXIgPT0gJ2NsaWNrb3V0Jykge1xyXG4gICAgICAgIHRoaXMuX2FkZFN1Yih0aGlzLl9vdmVybGF5UmVmLl9vdXRzaWRlUG9pbnRlckV2ZW50cy5zdWJzY3JpYmUoYyA9PiB7XHJcbiAgICAgICAgICBjb25zdCB0YXJnZXQgPSBjLnRhcmdldCBhcyBIVE1MRWxlbWVudDtcclxuICAgICAgICAgIGNvbnN0IGNvbUVsZW0gPSB0YXJnZXRSZWY7XHJcbiAgICAgICAgICBpZiAoIShjb21FbGVtLmNvbnRhaW5zKHRhcmdldCkpKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY2xvc2UoKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KSk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5fYWRkU3ViKHRoaXMuX292ZXJsYXlSZWYuYXR0YWNobWVudHMoKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgIGlmICghdGhpcy5faXNTY3JvbGxBdHRhY2hlZCkge1xyXG4gICAgICAgICAgdGhpcy5fYWRkU3ViKHRoaXMuX3BsYXRmb3JtLnNjcm9sbC5zdWJzY3JpYmUoYyA9PiB7XHJcbiAgICAgICAgICAgIC8vIGlmICghKGMubmF0aXZlRXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KS5jbG9zZXN0KCcuYXgtb3ZlcmxheS1wYW5lJykpXHJcbiAgICAgICAgICAgIHRoaXMuY2xvc2UoKTtcclxuICAgICAgICAgIH0pKTtcclxuICAgICAgICAgIHRoaXMuX2lzU2Nyb2xsQXR0YWNoZWQgPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgfSkpO1xyXG4gICAgfVxyXG4gICAgaWYgKCF0aGlzLl90ZW1wbGF0ZVBvcnRhbCkge1xyXG4gICAgICB0aGlzLl90ZW1wbGF0ZVBvcnRhbCA9IG5ldyBUZW1wbGF0ZVBvcnRhbCh0aGlzLl9iYXNlVGVtcGxhdGUsIHRoaXMuX3ZpZXdDb250YWluZXJSZWYpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0IGlzT3BlbigpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9vdmVybGF5UmVmID8gdGhpcy5fb3ZlcmxheVJlZi5oYXNBdHRhY2hlZCgpIDogZmFsc2U7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9hZGRTdWIoc3ViOiBTdWJzY3JpcHRpb24pIHtcclxuICAgIHRoaXMuX3N1YnMucHVzaChzdWIpO1xyXG4gIH1cclxufVxyXG4iLCI8bmctdGVtcGxhdGUgI2Jhc2VUZW1wbGF0ZT5cclxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbjwvbmctdGVtcGxhdGU+Il19
|
|
246
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9zcmMvbGliL3BvcG92ZXIvcG9wb3Zlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9zcmMvbGliL3BvcG92ZXIvcG9wb3Zlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBNkIsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFlLFVBQVUsRUFBb0IsWUFBWSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbE4sT0FBTyxFQUFFLGVBQWUsRUFBZ0MsTUFBTSxTQUFTLENBQUM7QUFFeEUsT0FBTyxFQUFFLGFBQWEsRUFBdUIsTUFBTSxjQUFjLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxTQUFTLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sQ0FBQyxNQUFNLFFBQVEsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFZOUMsTUFBTSxPQUFPLGtCQUFtQixTQUFRLGVBQWU7SUFFckQsWUFDRSxXQUF1QixFQUNoQixJQUF1QixFQUN0QixLQUFhLEVBQ2IsUUFBaUIsRUFDakIsU0FBcUIsRUFDckIsaUJBQW1DO1FBRzNDLEtBQUssQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFQbEIsU0FBSSxHQUFKLElBQUksQ0FBbUI7UUFDdEIsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUNiLGFBQVEsR0FBUixRQUFRLENBQVM7UUFDakIsY0FBUyxHQUFULFNBQVMsQ0FBWTtRQUNyQixzQkFB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aEIsS0FBSztnQkFlTixRQUFRO3NCQURQLEtBQUs7Z0JBaUJOLGFBQWE7c0JBRFosU0FBUzt1QkFBQyxjQUFjO2dCQVF6QixXQUFXO3NCQURWLEtBQUs7Z0JBSU4sWUFBWTtzQkFEWCxLQUFLO2dCQUlOLFdBQVc7c0JBRFYsS0FBSztnQkFJTixhQUFhO3NCQURaLEtBQUs7Z0JBT04sUUFBUTtzQkFEUCxNQUFNO2dCQUdQLFFBQVE7c0JBRFAsTUFBTTtnQkE0RFAscUJBQXFCO3NCQURwQixZQUFZO3VCQUFDLGtCQUFrQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgTmdab25lLCBDaGFuZ2VEZXRlY3RvclJlZiwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIFZpZXdFbmNhcHN1bGF0aW9uLCBWaWV3Q2hpbGQsIFRlbXBsYXRlUmVmLCBFbGVtZW50UmVmLCBWaWV3Q29udGFpbmVyUmVmLCBIb3N0TGlzdGVuZXIsIEV2ZW50RW1pdHRlciwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFYQmFzZUNvbXBvbmVudCwgQVhDb25uZWN0ZWRQb3NpdGlvbiwgQVhFdmVudCB9IGZyb20gJy4uL2Jhc2UnO1xyXG5pbXBvcnQgeyBPdmVybGF5LCBPdmVybGF5UmVmLCBQb3NpdGlvblN0cmF0ZWd5LCBTY3JvbGxTdHJhdGVneSwgU2Nyb2xsU3RyYXRlZ3lPcHRpb25zIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xyXG5pbXBvcnQgeyBBWERyYXdpbmdVdGlsLCBBWFBsYXRmb3JtLCBBWFBvaW50IH0gZnJvbSAnQGFjb3JleC9jb3JlJztcclxuaW1wb3J0IHsgVGVtcGxhdGVQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcclxuaW1wb3J0IHsgZnJvbUV2ZW50LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcclxuaW1wb3J0IHsgdGhyb3R0bGVUaW1lIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuXHJcblxyXG5cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXgtcG9wb3ZlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3BvcG92ZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBWFBvcG92ZXJDb21wb25lbnQgZXh0ZW5kcyBBWEJhc2VDb21wb25lbnQge1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLFxyXG4gICAgcHVibGljIF9jZHI6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSBfem9uZTogTmdab25lLFxyXG4gICAgcHJpdmF0ZSBfb3ZlcmxheTogT3ZlcmxheSxcclxuICAgIHByaXZhdGUgX3BsYXRmb3JtOiBBWFBsYXRmb3JtLFxyXG4gICAgcHJpdmF0ZSBfdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcclxuXHJcbiAgKSB7XHJcbiAgICBzdXBlcihfZWxlbWVudFJlZiwgX2Nkcik7XHJcbiAgfVxyXG4gIC8vXHJcbiAgcHJpdmF0ZSBfdGFyZ2V0OiBIVE1MRWxlbWVudDtcclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBnZXQgdGFyZ2V0KCk6IEhUTUxFbGVtZW50IHwgRWxlbWVudFJlZiB8IEFYQmFzZUNvbXBvbmVudCB7XHJcbiAgICByZXR1cm4gdGhpcy5fdGFyZ2V0O1xyXG4gIH1cclxuICBwdWJsaWMgc2V0IHRhcmdldCh2OiBIVE1MRWxlbWVudCB8IEVsZW1lbnRSZWYgfCBBWEJhc2VDb21wb25lbnQpIHtcclxuICAgIGlmICh2IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQpXHJcbiAgICAgIHRoaXMuX3RhcmdldCA9IHY7XHJcbiAgICBlbHNlIGlmICh2IGluc3RhbmNlb2YgRWxlbWVudFJlZilcclxuICAgICAgdGhpcy5fdGFyZ2V0ID0gdi5uYXRpdmVFbGVtZW50O1xyXG4gICAgZWxzZSBpZiAodiBpbnN0YW5jZW9mIEFYQmFzZUNvbXBvbmVudClcclxuICAgICAgdGhpcy5fdGFyZ2V0ID0gdi5fZ2V0SW5uZXJFbGVtZW50KCk7XHJcbiAgfVxyXG5cclxuXHJcbiAgQElucHV0KClcclxuICBwb3NpdGlvbjogQVhDb25uZWN0ZWRQb3NpdGlvbiB8IEFYQ29ubmVjdGVkUG9zaXRpb25bXSA9IFtcclxuICAgIHtcclxuICAgICAgb3JpZ2luWDogJ3N0YXJ0JyxcclxuICAgICAgb3JpZ2luWTogJ2JvdHRvbScsXHJcbiAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxyXG4gICAgICBvdmVybGF5WTogJ3RvcCcsXHJcbiAgICB9LFxyXG4gICAge1xyXG4gICAgICBvcmlnaW5YOiAnc3RhcnQnLFxyXG4gICAgICBvcmlnaW5ZOiAndG9wJyxcclxuICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXHJcbiAgICAgIG92ZXJsYXlZOiAnYm90dG9tJ1xyXG4gICAgfVxyXG4gIF07XHJcbiAgLy9cclxuICBAVmlld0NoaWxkKCdiYXNlVGVtcGxhdGUnKVxyXG4gIF9iYXNlVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgX292ZXJsYXlSZWY6IE92ZXJsYXlSZWY7XHJcbiAgX3RlbXBsYXRlUG9ydGFsOiBUZW1wbGF0ZVBvcnRhbDtcclxuXHJcbiAgX3N1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcbiAgLy9cclxuICBASW5wdXQoKVxyXG4gIG9wZW5UcmlnZ2VyOiAnbWFudWFsJyB8ICdjbGljaycgfCAnbW91c2VvdmVyJyB8ICd0b2dnbGUnID0gJ3RvZ2dsZSc7XHJcbiAgLy9cclxuICBASW5wdXQoKVxyXG4gIGNsb3NlVHJpZ2dlcjogJ21hbnVhbCcgfCAnY2xpY2tvdXQnIHwgJ21vdXNlb3V0JyA9ICdjbGlja291dCc7XHJcbiAgLy9cclxuICBASW5wdXQoKVxyXG4gIGhhc0JhY2tkcm9wOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgYmFja2Ryb3BDbGFzczogc3RyaW5nO1xyXG4gIC8vXHJcbiAgcHJpdmF0ZSBfbW91c2VQb3M6IEFYUG9pbnQgPSB7IHg6IDAsIHk6IDAgfTtcclxuICBwcml2YXRlIF9pc1Njcm9sbEF0dGFjaGVkOiBib29sZWFuID0gZmFsc2U7XHJcbiAgLy9cclxuICBAT3V0cHV0KClcclxuICBvbk9wZW5lZDogRXZlbnRFbWl0dGVyPEFYRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxBWEV2ZW50PigpO1xyXG4gIEBPdXRwdXQoKVxyXG4gIG9uQ2xvc2VkOiBFdmVudEVtaXR0ZXI8QVhFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEFYRXZlbnQ+KCk7XHJcblxyXG4gIF9lbWl0T25PcGVuZWRFdmVudCgpIHtcclxuICAgIHRoaXMub25PcGVuZWQuZW1pdCh7XHJcbiAgICAgIGNvbXBvbmVudDogdGhpcyxcclxuICAgICAgaHRtbEVsZW1lbnQ6IHRoaXMuX2dldEhvc3RFbGVtZW50KClcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgX2VtaXRPbkNsb3NlZEV2ZW50KCkge1xyXG4gICAgdGhpcy5vbkNsb3NlZC5lbWl0KHtcclxuICAgICAgY29tcG9uZW50OiB0aGlzLFxyXG4gICAgICBodG1sRWxlbWVudDogdGhpcy5fZ2V0SG9zdEVsZW1lbnQoKVxyXG4gICAgfSk7XHJcbiAgfVxyXG4gIC8vXHJcbiAgb25WaWV3SW5pdCgpIHtcclxuICAgIGlmICh0aGlzLl90YXJnZXQpIHtcclxuICAgICAgaWYgKHRoaXMub3BlblRyaWdnZXIgPT09ICdtb3VzZW92ZXInKSB7XHJcbiAgICAgICAgY29uc3QgbW91c2VFbnRlciQgPSBmcm9tRXZlbnQ8TW91c2VFdmVudD4odGhpcy5fdGFyZ2V0LCAnbW91c2VvdmVyJyk7XHJcbiAgICAgICAgdGhpcy5fYWRkU3ViKG1vdXNlRW50ZXIkLnN1YnNjcmliZShlID0+IHtcclxuICAgICAgICAgIGNvbnN0IHBvaW50ID0geyB4OiBlLmNsaWVudFgsIHk6IGUuY2xpZW50WSB9O1xyXG4gICAgICAgICAgaWYgKEFYRHJhd2luZ1V0aWwuaXNJbkVsZW1lbnRCb3VuZChwb2ludCwgdGhpcy5fdGFyZ2V0KSlcclxuICAgICAgICAgICAgdGhpcy5vcGVuKCk7XHJcbiAgICAgICAgfSkpO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLmNsb3NlVHJpZ2dlciA9PT0gJ21vdXNlb3V0Jykge1xyXG4gICAgICAgIGNvbnN0IG1vdXNlTW92ZSQgPSBmcm9tRXZlbnQ8TW91c2VFdmVudD4oZG9jdW1lbnQsICdtb3VzZW1vdmUnKTtcclxuICAgICAgICB0aGlzLl9hZGRTdWIobW91c2VNb3ZlJC5waXBlKHRocm90dGxlVGltZSg1MCkpLnN1YnNjcmliZShlID0+IHtcclxuICAgICAgICAgIHRoaXMuX21vdXNlUG9zLnggPSBlLmNsaWVudFg7XHJcbiAgICAgICAgICB0aGlzLl9tb3VzZVBvcy55ID0gZS5jbGllbnRZO1xyXG4gICAgICAgICAgaWYgKHRoaXMuaXNPcGVuKSB7XHJcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAgIGlmICghXy5zb21lKFt0aGlzLl90YXJnZXQsIHRoaXMuX292ZXJsYXlSZWYub3ZlcmxheUVsZW1lbnRdLCBlbCA9PiBfLmluY2x1ZGVzKGRvY3VtZW50LmVsZW1lbnRzRnJvbVBvaW50KHRoaXMuX21vdXNlUG9zLngsIHRoaXMuX21vdXNlUG9zLnkpLCBlbCkpKVxyXG4gICAgICAgICAgICAgICAgdGhpcy5jbG9zZSgpO1xyXG4gICAgICAgICAgICB9LCAxMDApXHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSkpO1xyXG5cclxuICAgICAgfVxyXG4gICAgICAvL1xyXG4gICAgICBpZiAodGhpcy5vcGVuVHJpZ2dlciA9PT0gJ2NsaWNrJyB8fCB0aGlzLm9wZW5UcmlnZ2VyID09PSAndG9nZ2xlJykge1xyXG4gICAgICAgIGNvbnN0IGNsaWNrJCA9IGZyb21FdmVudDxNb3VzZUV2ZW50Pih0aGlzLl90YXJnZXQsICdjbGljaycpO1xyXG4gICAgICAgIHRoaXMuX2FkZFN1YihjbGljayQuc3Vic2NyaWJlKGUgPT4ge1xyXG4gICAgICAgICAgdGhpcy5vcGVuVHJpZ2dlciA9PSAndG9nZ2xlJyA/IHRoaXMudG9nZ2xlKCkgOiB0aGlzLm9wZW4oKTtcclxuICAgICAgICB9KSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgLy9cclxuICBvbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLl9vdmVybGF5UmVmPy5kZXRhY2goKTtcclxuICAgIHRoaXMuX292ZXJsYXlSZWY/LmRpc3Bvc2UoKTtcclxuICAgIHRoaXMuX3N1YnMuZm9yRWFjaChzID0+IHtcclxuICAgICAgcz8udW5zdWJzY3JpYmUoKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6a2V5ZG93bicsIFsnJGV2ZW50J10pXHJcbiAgX2hhbmRsZUtleWRvd25IYW5kbGVyKGU6IEtleWJvYXJkRXZlbnQpIHtcclxuICAgIGlmIChlLmtleSA9PT0gJ0VudGVyJyAmJiBlLnR5cGUgPT09ICdrZXlkb3duJykge1xyXG4gICAgICB0aGlzLnRvZ2dsZSgpO1xyXG4gICAgfVxyXG4gICAgaWYgKGUua2V5ID09PSAnRXNjYXBlJykge1xyXG4gICAgICBpZiAodGhpcy5pc09wZW4pIHtcclxuICAgICAgICB0aGlzLmNsb3NlKCk7XHJcbiAgICAgICAgZS5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICAvL1xyXG4gIHRvZ2dsZSgpIHtcclxuICAgIHRoaXMuaXNPcGVuID8gdGhpcy5jbG9zZSgpIDogdGhpcy5vcGVuKCk7XHJcbiAgfVxyXG4gIC8vXHJcbiAgY2xvc2UoKSB7XHJcbiAgICBpZiAoIXRoaXMuaXNPcGVuKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMuX292ZXJsYXlSZWY/LmRldGFjaCgpO1xyXG4gICAgdGhpcy5fZW1pdE9uQ2xvc2VkRXZlbnQoKTtcclxuICB9XHJcbiAgLy9cclxuICBvcGVuKCkge1xyXG4gICAgaWYgKHRoaXMuaXNPcGVuKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMuX2Vuc3VyZU92ZXJsYXlDcmVhdGVkKCk7XHJcbiAgICB0aGlzLl9vdmVybGF5UmVmLmF0dGFjaCh0aGlzLl90ZW1wbGF0ZVBvcnRhbCk7XHJcbiAgICB0aGlzLl9lbWl0T25PcGVuZWRFdmVudCgpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZW5zdXJlT3ZlcmxheUNyZWF0ZWQoKSB7XHJcbiAgICBjb25zdCB0YXJnZXRSZWYgPSB0aGlzLl90YXJnZXQ7XHJcbiAgICBpZiAoIXRhcmdldFJlZilcclxuICAgICAgcmV0dXJuO1xyXG5cclxuICAgIGlmICghdGhpcy5fb3ZlcmxheVJlZikge1xyXG5cclxuICAgICAgbGV0IHBvc2l0aW9uU3RyYXRlZ3k6IFBvc2l0aW9uU3RyYXRlZ3k7XHJcbiAgICAgIGxldCBzY3JvbGxTdHJhdGVneTogU2Nyb2xsU3RyYXRlZ3k7XHJcbiAgICAgIGRlYnVnZ2VyXHJcbiAgICAgIGlmICh0aGlzLl9wbGF0Zm9ybS5pcygnTW9iaWxlJykpIHtcclxuICAgICAgICBwb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5fb3ZlcmxheS5wb3NpdGlvbigpLmdsb2JhbCgpLmNlbnRlckhvcml6b250YWxseSgpLmJvdHRvbSgpO1xyXG4gICAgICAgIHNjcm9sbFN0cmF0ZWd5ID0gdGhpcy5fb3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLm5vb3AoKTtcclxuICAgICAgfVxyXG4gICAgICBlbHNlIHtcclxuICAgICAgICBwb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5fb3ZlcmxheS5wb3NpdGlvbigpXHJcbiAgICAgICAgICAuZmxleGlibGVDb25uZWN0ZWRUbyh0YXJnZXRSZWYpXHJcbiAgICAgICAgICAud2l0aFBvc2l0aW9ucyhBcnJheS5pc0FycmF5KHRoaXMucG9zaXRpb24pID8gdGhpcy5wb3NpdGlvbiA6IFt0aGlzLnBvc2l0aW9uXSlcclxuICAgICAgICAgIC53aXRoUHVzaChmYWxzZSk7XHJcbiAgICAgICAgc2Nyb2xsU3RyYXRlZ3kgPSB0aGlzLl9vdmVybGF5LnNjcm9sbFN0cmF0ZWdpZXMuY2xvc2UoKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgdGhpcy5fb3ZlcmxheVJlZiA9IHRoaXMuX292ZXJsYXkuY3JlYXRlKHtcclxuICAgICAgICBwb3NpdGlvblN0cmF0ZWd5LFxyXG4gICAgICAgIHNjcm9sbFN0cmF0ZWd5LFxyXG4gICAgICAgIHBhbmVsQ2xhc3M6IFsnYXgtYW5pbWF0ZS1mYWRlSW4nLCAnYXgtYW5pbWF0ZS1mYXN0ZXInXSxcclxuICAgICAgICBoYXNCYWNrZHJvcDogdHJ1ZSwvL3RoaXMuaGFzQmFja2Ryb3AsXHJcbiAgICAgICAgYmFja2Ryb3BDbGFzczogW3RoaXMuYmFja2Ryb3BDbGFzcyB8fCAnY2RrLW92ZXJsYXktdHJhbnNwYXJlbnQtYmFja2Ryb3AnXVxyXG4gICAgICB9KTtcclxuICAgICAgdGhpcy5fdXBkYXRlT3ZlcmxheSgpO1xyXG4gICAgICBpZiAodGhpcy5jbG9zZVRyaWdnZXIgPT0gJ2NsaWNrb3V0Jykge1xyXG4gICAgICAgIHRoaXMuX2FkZFN1Yih0aGlzLl9vdmVybGF5UmVmLl9vdXRzaWRlUG9pbnRlckV2ZW50cy5zdWJzY3JpYmUoYyA9PiB7XHJcbiAgICAgICAgICBjb25zdCB0YXJnZXQgPSBjLnRhcmdldCBhcyBIVE1MRWxlbWVudDtcclxuICAgICAgICAgIGNvbnN0IGNvbUVsZW0gPSB0YXJnZXRSZWY7XHJcbiAgICAgICAgICBpZiAoIShjb21FbGVtLmNvbnRhaW5zKHRhcmdldCkpKSB7XHJcbiAgICAgICAgICAgIHRoaXMuY2xvc2UoKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KSk7XHJcbiAgICAgIH1cclxuICAgICAgLy8gdGhpcy5fYWRkU3ViKHRoaXMuX292ZXJsYXlSZWYuYXR0YWNobWVudHMoKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAvLyAgIGlmICghdGhpcy5faXNTY3JvbGxBdHRhY2hlZCkge1xyXG4gICAgICAvLyAgICAgdGhpcy5fYWRkU3ViKHRoaXMuX3BsYXRmb3JtLnNjcm9sbC5zdWJzY3JpYmUoYyA9PiB7XHJcbiAgICAgIC8vICAgICAgIC8vIGlmICghKGMubmF0aXZlRXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50KS5jbG9zZXN0KCcuYXgtb3ZlcmxheS1wYW5lJykpXHJcbiAgICAgIC8vICAgICAgIHRoaXMuY2xvc2UoKTtcclxuICAgICAgLy8gICAgIH0pKTtcclxuICAgICAgLy8gICAgIHRoaXMuX2lzU2Nyb2xsQXR0YWNoZWQgPSB0cnVlO1xyXG4gICAgICAvLyAgIH1cclxuICAgICAgLy8gfSkpO1xyXG4gICAgfVxyXG4gICAgaWYgKCF0aGlzLl90ZW1wbGF0ZVBvcnRhbCkge1xyXG4gICAgICB0aGlzLl90ZW1wbGF0ZVBvcnRhbCA9IG5ldyBUZW1wbGF0ZVBvcnRhbCh0aGlzLl9iYXNlVGVtcGxhdGUsIHRoaXMuX3ZpZXdDb250YWluZXJSZWYpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0IGlzT3BlbigpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9vdmVybGF5UmVmID8gdGhpcy5fb3ZlcmxheVJlZi5oYXNBdHRhY2hlZCgpIDogZmFsc2U7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9hZGRTdWIoc3ViOiBTdWJzY3JpcHRpb24pIHtcclxuICAgIHRoaXMuX3N1YnMucHVzaChzdWIpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfdXBkYXRlT3ZlcmxheSgpXHJcbiAge1xyXG4gICAgY29uc3QgdGFyZ2V0UmVmID0gdGhpcy5fdGFyZ2V0O1xyXG4gICAgbGV0IHBvc2l0aW9uU3RyYXRlZ3k6IFBvc2l0aW9uU3RyYXRlZ3k7XHJcbiAgICBsZXQgc2Nyb2xsU3RyYXRlZ3k6IFNjcm9sbFN0cmF0ZWd5O1xyXG4gICAgaWYgKHRoaXMuX3BsYXRmb3JtLmlzKCdNb2JpbGUnKSkge1xyXG4gICAgICBwb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5fb3ZlcmxheS5wb3NpdGlvbigpLmdsb2JhbCgpLmNlbnRlckhvcml6b250YWxseSgpLmJvdHRvbSgpO1xyXG4gICAgICBzY3JvbGxTdHJhdGVneSA9IHRoaXMuX292ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5ub29wKCk7XHJcbiAgICB9XHJcbiAgICBlbHNlIHtcclxuICAgICAgcG9zaXRpb25TdHJhdGVneSA9IHRoaXMuX292ZXJsYXkucG9zaXRpb24oKVxyXG4gICAgICAgIC5mbGV4aWJsZUNvbm5lY3RlZFRvKHRhcmdldFJlZilcclxuICAgICAgICAud2l0aFBvc2l0aW9ucyhBcnJheS5pc0FycmF5KHRoaXMucG9zaXRpb24pID8gdGhpcy5wb3NpdGlvbiA6IFt0aGlzLnBvc2l0aW9uXSlcclxuICAgICAgICAud2l0aFB1c2goZmFsc2UpO1xyXG4gICAgICBzY3JvbGxTdHJhdGVneSA9IHRoaXMuX292ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5jbG9zZSgpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5fb3ZlcmxheVJlZi51cGRhdGVQb3NpdGlvblN0cmF0ZWd5KHBvc2l0aW9uU3RyYXRlZ3kpO1xyXG4gICAgdGhpcy5fb3ZlcmxheVJlZi51cGRhdGVTY3JvbGxTdHJhdGVneShzY3JvbGxTdHJhdGVneSk7XHJcbiAgICBcclxuICB9XHJcbn1cclxuIiwiPG5nLXRlbXBsYXRlICNiYXNlVGVtcGxhdGU+XHJcbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG48L25nLXRlbXBsYXRlPiJdfQ==
|
|
@@ -4,24 +4,31 @@ import { TAB_META_KEY } from '../page/base-page.class';
|
|
|
4
4
|
import { ComponentPortal, TemplatePortal } from '@angular/cdk/portal';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
import * as i1 from "../loading";
|
|
7
|
-
import * as i2 from "@
|
|
8
|
-
import * as i3 from "@angular/cdk/
|
|
9
|
-
import * as i4 from "@angular/
|
|
10
|
-
import * as i5 from "@angular/
|
|
7
|
+
import * as i2 from "@acorex/core";
|
|
8
|
+
import * as i3 from "@angular/cdk/a11y";
|
|
9
|
+
import * as i4 from "@angular/cdk/drag-drop";
|
|
10
|
+
import * as i5 from "@angular/common";
|
|
11
|
+
import * as i6 from "@angular/cdk/portal";
|
|
11
12
|
export class AXPopupComponent extends AXBaseComponentMixin {
|
|
12
|
-
constructor(elementRef, cdr, _zone, _viewContainerRef, loadingService) {
|
|
13
|
+
constructor(elementRef, cdr, _zone, _viewContainerRef, loadingService, _platform) {
|
|
13
14
|
super(elementRef, cdr);
|
|
14
15
|
this._zone = _zone;
|
|
15
16
|
this._viewContainerRef = _viewContainerRef;
|
|
16
17
|
this.loadingService = loadingService;
|
|
18
|
+
this._platform = _platform;
|
|
17
19
|
this.isLoading = true;
|
|
18
20
|
this.onClosed = new EventEmitter();
|
|
19
21
|
this.size = 'sm';
|
|
22
|
+
this.draggable = true;
|
|
20
23
|
this.data = {};
|
|
21
24
|
this.showCloseButton = true;
|
|
22
25
|
this.showHeader = true;
|
|
23
26
|
}
|
|
24
27
|
onViewInit() {
|
|
28
|
+
debugger;
|
|
29
|
+
if (this._platform.is('Mobile')) {
|
|
30
|
+
this.draggable = false;
|
|
31
|
+
}
|
|
25
32
|
this._loadingId = this.loadingService.show(this._getHostElement().querySelector('.ax-popup-body-container'));
|
|
26
33
|
//
|
|
27
34
|
if (typeof this.content === 'string') {
|
|
@@ -88,13 +95,13 @@ export class AXPopupComponent extends AXBaseComponentMixin {
|
|
|
88
95
|
}
|
|
89
96
|
onFullScreen() { }
|
|
90
97
|
}
|
|
91
|
-
AXPopupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AXPopupComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i0.ViewContainerRef }, { token: i1.AXLoadingService }], target: i0.ɵɵFactoryTarget.Component });
|
|
92
|
-
AXPopupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: AXPopupComponent, selector: "ax-popup", host: { listeners: { "keydown.escape": "onKeydownHandler($event)" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"ax-popup-wrapper\" aria-modal=\"true\" cdkTrapFocus>\r\n <div class=\"ax-popup ax-popup-{{size}}\" tabindex=\"0\" cdkDrag>\r\n <ng-container *ngIf=\"showHeader\">\r\n <header cdkDragHandle class=\"ax-cursor-move\">\r\n <div>\r\n <div class=\"ax-text-lg ax-font-medium\">\r\n <span>\r\n {{title}}\r\n </span>\r\n </div>\r\n </div>\r\n <div *ngIf=\"showCloseButton\">\r\n <i class=\"ax-ic ax-ic-close ax-text-gray ax-cursor-pointer\" (click)=\"_handleCloseClick()\"\r\n tabindex=\"1\"></i>\r\n </div>\r\n </header>\r\n </ng-container>\r\n <main>\r\n <ng-template [cdkPortalOutlet]=\"_selectedPortal\" (attached)=\"_handleAttched($event)\"></ng-template>\r\n </main>\r\n </div>\r\n</div>", directives: [{ type:
|
|
98
|
+
AXPopupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AXPopupComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: i0.ViewContainerRef }, { token: i1.AXLoadingService }, { token: i2.AXPlatform }], target: i0.ɵɵFactoryTarget.Component });
|
|
99
|
+
AXPopupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: AXPopupComponent, selector: "ax-popup", host: { listeners: { "keydown.escape": "onKeydownHandler($event)" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"ax-popup-wrapper\" aria-modal=\"true\" cdkTrapFocus>\r\n <div class=\"ax-popup ax-popup-{{size}}\" tabindex=\"0\" cdkDrag [cdkDragDisabled]=\"!draggable\">\r\n <ng-container *ngIf=\"showHeader\">\r\n <header cdkDragHandle class=\"ax-cursor-move\">\r\n <div>\r\n <div class=\"ax-text-lg ax-font-medium\">\r\n <span>\r\n {{title}}\r\n </span>\r\n </div>\r\n </div>\r\n <div *ngIf=\"showCloseButton\">\r\n <i class=\"ax-ic ax-ic-close ax-text-gray ax-cursor-pointer\" (click)=\"_handleCloseClick()\"\r\n tabindex=\"1\"></i>\r\n </div>\r\n </header>\r\n </ng-container>\r\n <main>\r\n <ng-template [cdkPortalOutlet]=\"_selectedPortal\" (attached)=\"_handleAttched($event)\"></ng-template>\r\n </main>\r\n </div>\r\n</div>", directives: [{ type: i3.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { type: i4.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragDisabled", "cdkDragStartDelay", "cdkDragLockAxis", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragBoundary", "cdkDragRootElement", "cdkDragPreviewContainer", "cdkDragData", "cdkDragFreeDragPosition"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { type: i6.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
93
100
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AXPopupComponent, decorators: [{
|
|
94
101
|
type: Component,
|
|
95
|
-
args: [{ selector: 'ax-popup', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"ax-popup-wrapper\" aria-modal=\"true\" cdkTrapFocus>\r\n <div class=\"ax-popup ax-popup-{{size}}\" tabindex=\"0\" cdkDrag>\r\n <ng-container *ngIf=\"showHeader\">\r\n <header cdkDragHandle class=\"ax-cursor-move\">\r\n <div>\r\n <div class=\"ax-text-lg ax-font-medium\">\r\n <span>\r\n {{title}}\r\n </span>\r\n </div>\r\n </div>\r\n <div *ngIf=\"showCloseButton\">\r\n <i class=\"ax-ic ax-ic-close ax-text-gray ax-cursor-pointer\" (click)=\"_handleCloseClick()\"\r\n tabindex=\"1\"></i>\r\n </div>\r\n </header>\r\n </ng-container>\r\n <main>\r\n <ng-template [cdkPortalOutlet]=\"_selectedPortal\" (attached)=\"_handleAttched($event)\"></ng-template>\r\n </main>\r\n </div>\r\n</div>" }]
|
|
96
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i0.ViewContainerRef }, { type: i1.AXLoadingService }]; }, propDecorators: { onKeydownHandler: [{
|
|
102
|
+
args: [{ selector: 'ax-popup', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"ax-popup-wrapper\" aria-modal=\"true\" cdkTrapFocus>\r\n <div class=\"ax-popup ax-popup-{{size}}\" tabindex=\"0\" cdkDrag [cdkDragDisabled]=\"!draggable\">\r\n <ng-container *ngIf=\"showHeader\">\r\n <header cdkDragHandle class=\"ax-cursor-move\">\r\n <div>\r\n <div class=\"ax-text-lg ax-font-medium\">\r\n <span>\r\n {{title}}\r\n </span>\r\n </div>\r\n </div>\r\n <div *ngIf=\"showCloseButton\">\r\n <i class=\"ax-ic ax-ic-close ax-text-gray ax-cursor-pointer\" (click)=\"_handleCloseClick()\"\r\n tabindex=\"1\"></i>\r\n </div>\r\n </header>\r\n </ng-container>\r\n <main>\r\n <ng-template [cdkPortalOutlet]=\"_selectedPortal\" (attached)=\"_handleAttched($event)\"></ng-template>\r\n </main>\r\n </div>\r\n</div>" }]
|
|
103
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }, { type: i0.ViewContainerRef }, { type: i1.AXLoadingService }, { type: i2.AXPlatform }]; }, propDecorators: { onKeydownHandler: [{
|
|
97
104
|
type: HostListener,
|
|
98
105
|
args: ['keydown.escape', ['$event']]
|
|
99
106
|
}] } });
|
|
100
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNvcmV4L2NvbXBvbmVudHMvc3JjL2xpYi9wb3B1cC9wb3B1cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9zcmMvbGliL3BvcHVwL3BvcHVwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsdUJBQXVCLEVBQXdGLFlBQVksRUFBZ0IsWUFBWSxFQUFFLFdBQVcsRUFBd0IsTUFBTSxlQUFlLENBQUM7QUFDelAsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQy9DLE9BQU8sRUFBb0IsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFJekUsT0FBTyxFQUE4QixlQUFlLEVBQVUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7Ozs7QUFRMUcsTUFBTSxPQUFPLGdCQUFpQixTQUFRLG9CQUFvQjtJQXlCdEQsWUFDSSxVQUFzQixFQUN0QixHQUFzQixFQUNkLEtBQWEsRUFDYixpQkFBbUMsRUFDbkMsY0FBZ0M7UUFFeEMsS0FBSyxDQUFDLFVBQVUsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUpmLFVBQUssR0FBTCxLQUFLLENBQVE7UUFDYixzQkFBaUIsR0FBakIsaUJBQWlCLENBQWtCO1FBQ25DLG1CQUFjLEdBQWQsY0FBYyxDQUFrQjtRQTVCNUMsY0FBUyxHQUFZLElBQUksQ0FBQztRQUsxQixhQUFRLEdBQW1DLElBQUksWUFBWSxFQUFvQixDQUFDO1FBRWhGLFNBQUksR0FBZ0MsSUFBSSxDQUFDO1FBR3pDLFNBQUksR0FBUSxFQUFFLENBQUM7UUFHZixvQkFBZSxHQUFZLElBQUksQ0FBQztRQUNoQyxlQUFVLEdBQVksSUFBSSxDQUFDO0lBaUIzQixD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RUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFRCxLQUFLO1FBQ0QsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRCxLQUFLO1FBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7WUFDZixTQUFTLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLFNBQVM7WUFDdkMsV0FBVyxFQUFFLElBQUksQ0FBQyxlQUFlLEVBQUU7U0FDdEMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRUQsWUFBWSxLQUFLLENBQUM7OzZHQTlHVCxnQkFBZ0I7aUdBQWhCLGdCQUFnQiw4SUNkN0IsbTlCQXFCTTsyRkRQTyxnQkFBZ0I7a0JBTjVCLFNBQVM7K0JBQ0ksVUFBVSxtQkFFSCx1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJO29OQXNGckMsZ0JBQWdCO3NCQURmLFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIFZpZXdFbmNhcHN1bGF0aW9uLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgRWxlbWVudFJlZiwgQ2hhbmdlRGV0ZWN0b3JSZWYsIFZpZXdDaGlsZCwgVmlld0NvbnRhaW5lclJlZiwgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBIb3N0TGlzdGVuZXIsIENvbXBvbmVudFJlZiwgRXZlbnRFbWl0dGVyLCBUZW1wbGF0ZVJlZiwgQ29udGVudENoaWxkLCBOZ1pvbmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQVhCYXNlQ29tcG9uZW50TWl4aW4gfSBmcm9tICcuLi9iYXNlJztcclxuaW1wb3J0IHsgQVhQYWdlQ2xvc2VFdmVudCwgVEFCX01FVEFfS0VZIH0gZnJvbSAnLi4vcGFnZS9iYXNlLXBhZ2UuY2xhc3MnO1xyXG5pbXBvcnQgeyBBWEJ1dHRvbkl0ZW0gfSBmcm9tICcuLi9idXR0b24nO1xyXG5pbXBvcnQgeyBBWExvYWRpbmdTZXJ2aWNlIH0gZnJvbSAnLi4vbG9hZGluZyc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBDZGtQb3J0YWxPdXRsZXRBdHRhY2hlZFJlZiwgQ29tcG9uZW50UG9ydGFsLCBQb3J0YWwsIFRlbXBsYXRlUG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnYXgtcG9wdXAnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3BvcHVwLmNvbXBvbmVudC5odG1sJyxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFYUG9wdXBDb21wb25lbnQgZXh0ZW5kcyBBWEJhc2VDb21wb25lbnRNaXhpbiB7XHJcblxyXG4gICAgaXNMb2FkaW5nOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIHByaXZhdGUgX2xvYWRpbmdJZDogbnVtYmVyO1xyXG5cclxuICAgIHRpdGxlOiBzdHJpbmc7XHJcblxyXG4gICAgb25DbG9zZWQ6IEV2ZW50RW1pdHRlcjxBWFBhZ2VDbG9zZUV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXI8QVhQYWdlQ2xvc2VFdmVudD4oKTtcclxuXHJcbiAgICBzaXplOiAnc20nIHwgJ21kJyB8ICdsZycgfCAnZnVsbCcgPSAnc20nO1xyXG5cclxuXHJcbiAgICBkYXRhOiBhbnkgPSB7fTtcclxuXHJcblxyXG4gICAgc2hvd0Nsb3NlQnV0dG9uOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIHNob3dIZWFkZXI6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICAgIGNvbnRlbnQ6IGFueTtcclxuXHJcblxyXG4gICAgX3NlbGVjdGVkUG9ydGFsOiBQb3J0YWw8YW55PjtcclxuICAgIF9mb290ZXJQb3J0YWw6IFBvcnRhbDxhbnk+O1xyXG4gICAgX2hlYWRlclBvcnRhbDogUG9ydGFsPGFueT47XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgZWxlbWVudFJlZjogRWxlbWVudFJlZixcclxuICAgICAgICBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgICAgIHByaXZhdGUgX3pvbmU6IE5nWm9uZSxcclxuICAgICAgICBwcml2YXRlIF92aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxyXG4gICAgICAgIHByaXZhdGUgbG9hZGluZ1NlcnZpY2U6IEFYTG9hZGluZ1NlcnZpY2UsXHJcbiAgICApIHtcclxuICAgICAgICBzdXBlcihlbGVtZW50UmVmLCBjZHIpO1xyXG4gICAgfVxyXG5cclxuICAgIG9uVmlld0luaXQoKSB7XHJcbiAgICAgICAgdGhpcy5fbG9hZGluZ0lkID0gdGhpcy5sb2FkaW5nU2VydmljZS5zaG93KHRoaXMuX2dldEhvc3RFbGVtZW50KCkucXVlcnlTZWxlY3RvcignLmF4LXBvcHVwLWJvZHktY29udGFpbmVyJykpO1xyXG4gICAgICAgIC8vXHJcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLmNvbnRlbnQgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgICAgICAgIC8vICAgdGhpcy5yZW5kZXJlclNlcnZpY2UuZmluZExvYWRlZENvbXBvbmVudEJ5Um91dGUodGhpcy5jb250ZW50LCAyMCkudGhlbihyb3V0ZSA9PiB7XHJcbiAgICAgICAgICAgIC8vICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgLy8gICAgICAgdGhpcy5sb2FkQ29tcG9uZW50KHJvdXRlPy5jb21wb25lbnQpO1xyXG4gICAgICAgICAgICAvLyAgICAgfSwgMzAwKTtcclxuICAgICAgICAgICAgLy8gICB9KTtcclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAodGhpcy5jb250ZW50IGluc3RhbmNlb2YgVGVtcGxhdGVSZWYpIHtcclxuICAgICAgICAgICAgdGhpcy5fc2VsZWN0ZWRQb3J0YWwgPSBuZXcgVGVtcGxhdGVQb3J0YWwodGhpcy5jb250ZW50LCB0aGlzLl92aWV3Q29udGFpbmVyUmVmLCB7ICRpbXBsaWNpdDogdGhpcy5kYXRhLCByZWY6IHRoaXMgfSk7XHJcbiAgICAgICAgICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKTtcclxuXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2UgaWYgKHR5cGVvZiB0aGlzLmNvbnRlbnQgPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgICAgICAgdGhpcy5fc2VsZWN0ZWRQb3J0YWwgPSBuZXcgQ29tcG9uZW50UG9ydGFsKHRoaXMuY29udGVudCk7XHJcbiAgICAgICAgICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgX2hhbmRsZUF0dGNoZWQocmVmOiBDZGtQb3J0YWxPdXRsZXRBdHRhY2hlZFJlZikge1xyXG4gICAgICAgIHJlZiA9IHJlZiBhcyBDb21wb25lbnRSZWY8YW55PjtcclxuICAgICAgICBpZiAocmVmLmluc3RhbmNlKSB7XHJcbiAgICAgICAgICAgIHRoaXNbVEFCX01FVEFfS0VZXS5jb21wb25lbnQgPSByZWYuaW5zdGFuY2U7XHJcbiAgICAgICAgICAgIE9iamVjdC5hc3NpZ24odGhpc1tUQUJfTUVUQV9LRVldLmNvbXBvbmVudCwgdGhpcy5kYXRhKTtcclxuICAgICAgICAgICAgaWYgKHJlZi5pbnN0YW5jZS5vbkNsb3NlZCkge1xyXG4gICAgICAgICAgICAgICAgcmVmLmluc3RhbmNlLm9uQ2xvc2VkLnN1YnNjcmliZSgoZTogQVhQYWdlQ2xvc2VFdmVudCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMub25DbG9zZWQuZW1pdChlKTtcclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuX3pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBtYWluID0gdGhpcy5fZ2V0SG9zdEVsZW1lbnQoKS5xdWVyeVNlbGVjdG9yPEhUTUxEaXZFbGVtZW50PignbWFpbicpO1xyXG4gICAgICAgICAgICBjb25zdCBmb290ZXIgPSBtYWluLnF1ZXJ5U2VsZWN0b3I8SFRNTERpdkVsZW1lbnQ+KCdheC1wYWdlLWZvb3RlcicpO1xyXG4gICAgICAgICAgICBpZiAoZm9vdGVyKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBuZXdGb290ZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdmb290ZXInKTtcclxuICAgICAgICAgICAgICAgIG5ld0Zvb3Rlci5hcHBlbmQoLi4uQXJyYXkuZnJvbShmb290ZXIuY2hpbGROb2RlcykpO1xyXG4gICAgICAgICAgICAgICAgbWFpbi5hZnRlcihuZXdGb290ZXIpO1xyXG4gICAgICAgICAgICAgICAgZm9vdGVyLnBhcmVudE5vZGUucmVtb3ZlQ2hpbGQoZm9vdGVyKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMubG9hZGluZ1NlcnZpY2UuaGlkZSh0aGlzLl9sb2FkaW5nSWQpO1xyXG4gICAgICAgIHRoaXMuZm9jdXMoKTtcclxuICAgICAgICB0aGlzLl9jZHIubWFya0ZvckNoZWNrKCk7XHJcbiAgICB9XHJcblxyXG5cclxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uZXNjYXBlJywgWyckZXZlbnQnXSlcclxuICAgIG9uS2V5ZG93bkhhbmRsZXIoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcclxuICAgICAgICBpZiAodGhpcy5zaG93Q2xvc2VCdXR0b24pIHtcclxuICAgICAgICAgICAgdGhpcy5jbG9zZSgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBfaGFuZGxlQ2xvc2VDbGljaygpIHtcclxuICAgICAgICB0aGlzLmNsb3NlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICAgICAgdGhpcy5sb2FkaW5nU2VydmljZS5oaWRlKHRoaXMuX2xvYWRpbmdJZCk7XHJcbiAgICB9XHJcblxyXG4gICAgZm9jdXMoKSB7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLl9nZXRIb3N0RWxlbWVudCgpLmZvY3VzKCkpO1xyXG4gICAgfVxyXG5cclxuICAgIGNsb3NlKCkge1xyXG4gICAgICAgIHRoaXMub25DbG9zZWQuZW1pdCh7XHJcbiAgICAgICAgICAgIGNvbXBvbmVudDogdGhpc1tUQUJfTUVUQV9LRVldLmNvbXBvbmVudCxcclxuICAgICAgICAgICAgaHRtbEVsZW1lbnQ6IHRoaXMuX2dldEhvc3RFbGVtZW50KCksXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH1cclxuXHJcbiAgICBvbkZ1bGxTY3JlZW4oKSB7IH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiYXgtcG9wdXAtd3JhcHBlclwiIGFyaWEtbW9kYWw9XCJ0cnVlXCIgY2RrVHJhcEZvY3VzPlxyXG4gICAgPGRpdiBjbGFzcz1cImF4LXBvcHVwIGF4LXBvcHVwLXt7c2l6ZX19XCIgdGFiaW5kZXg9XCIwXCIgY2RrRHJhZz5cclxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwic2hvd0hlYWRlclwiPlxyXG4gICAgICAgICAgICA8aGVhZGVyIGNka0RyYWdIYW5kbGUgY2xhc3M9XCJheC1jdXJzb3ItbW92ZVwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtdGV4dC1sZyBheC1mb250LW1lZGl1bVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8c3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7dGl0bGV9fVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJzaG93Q2xvc2VCdXR0b25cIj5cclxuICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImF4LWljIGF4LWljLWNsb3NlIGF4LXRleHQtZ3JheSBheC1jdXJzb3ItcG9pbnRlclwiIChjbGljayk9XCJfaGFuZGxlQ2xvc2VDbGljaygpXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGFiaW5kZXg9XCIxXCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvaGVhZGVyPlxyXG4gICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDxtYWluPlxyXG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgW2Nka1BvcnRhbE91dGxldF09XCJfc2VsZWN0ZWRQb3J0YWxcIiAoYXR0YWNoZWQpPVwiX2hhbmRsZUF0dGNoZWQoJGV2ZW50KVwiPjwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPC9tYWluPlxyXG4gICAgPC9kaXY+XHJcbjwvZGl2PiJdfQ==
|
|
107
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNvcmV4L2NvbXBvbmVudHMvc3JjL2xpYi9wb3B1cC9wb3B1cC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY29yZXgvY29tcG9uZW50cy9zcmMvbGliL3BvcHVwL3BvcHVwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsdUJBQXVCLEVBQXdGLFlBQVksRUFBZ0IsWUFBWSxFQUFFLFdBQVcsRUFBd0IsTUFBTSxlQUFlLENBQUM7QUFDelAsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQy9DLE9BQU8sRUFBb0IsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFJekUsT0FBTyxFQUE4QixlQUFlLEVBQVUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7Ozs7Ozs7O0FBUzFHLE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxvQkFBb0I7SUEwQnRELFlBQ0ksVUFBc0IsRUFDdEIsR0FBc0IsRUFDZCxLQUFhLEVBQ2IsaUJBQW1DLEVBQ25DLGNBQWdDLEVBQ2hDLFNBQXFCO1FBRTdCLEtBQUssQ0FBQyxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFMZixVQUFLLEdBQUwsS0FBSyxDQUFRO1FBQ2Isc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFrQjtRQUNuQyxtQkFBYyxHQUFkLGNBQWMsQ0FBa0I7UUFDaEMsY0FBUyxHQUFULFNBQVMsQ0FBWTtRQTlCakMsY0FBUyxHQUFZLElBQUksQ0FBQztRQUsxQixhQUFRLEdBQW1DLElBQUksWUFBWSxFQUFvQixDQUFDO1FBRWhGLFNBQUksR0FBZ0MsSUFBSSxDQUFDO1FBQ3pDLGNBQVMsR0FBWSxJQUFJLENBQUM7UUFHMUIsU0FBSSxHQUFRLEVBQUUs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QUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUlELGdCQUFnQixDQUFDLEtBQW9CO1FBQ2pDLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUN0QixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDaEI7SUFDTCxDQUFDO0lBRUQsaUJBQWlCO1FBQ2IsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ2pCLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFRCxLQUFLO1FBQ0QsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRCxLQUFLO1FBQ0QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7WUFDZixTQUFTLEVBQUUsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLFNBQVM7WUFDdkMsV0FBVyxFQUFFLElBQUksQ0FBQyxlQUFlLEVBQUU7U0FDdEMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRUQsWUFBWSxLQUFLLENBQUM7OzZHQXBIVCxnQkFBZ0I7aUdBQWhCLGdCQUFnQiw4SUNmN0Isby9CQXFCTTsyRkROTyxnQkFBZ0I7a0JBTjVCLFNBQVM7K0JBQ0ksVUFBVSxtQkFFSCx1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJOzZPQTRGckMsZ0JBQWdCO3NCQURmLFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIFZpZXdFbmNhcHN1bGF0aW9uLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgRWxlbWVudFJlZiwgQ2hhbmdlRGV0ZWN0b3JSZWYsIFZpZXdDaGlsZCwgVmlld0NvbnRhaW5lclJlZiwgQ29tcG9uZW50RmFjdG9yeVJlc29sdmVyLCBIb3N0TGlzdGVuZXIsIENvbXBvbmVudFJlZiwgRXZlbnRFbWl0dGVyLCBUZW1wbGF0ZVJlZiwgQ29udGVudENoaWxkLCBOZ1pvbmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQVhCYXNlQ29tcG9uZW50TWl4aW4gfSBmcm9tICcuLi9iYXNlJztcclxuaW1wb3J0IHsgQVhQYWdlQ2xvc2VFdmVudCwgVEFCX01FVEFfS0VZIH0gZnJvbSAnLi4vcGFnZS9iYXNlLXBhZ2UuY2xhc3MnO1xyXG5pbXBvcnQgeyBBWEJ1dHRvbkl0ZW0gfSBmcm9tICcuLi9idXR0b24nO1xyXG5pbXBvcnQgeyBBWExvYWRpbmdTZXJ2aWNlIH0gZnJvbSAnLi4vbG9hZGluZyc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBDZGtQb3J0YWxPdXRsZXRBdHRhY2hlZFJlZiwgQ29tcG9uZW50UG9ydGFsLCBQb3J0YWwsIFRlbXBsYXRlUG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XHJcbmltcG9ydCB7IEFYUGxhdGZvcm0gfSBmcm9tICdAYWNvcmV4L2NvcmUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2F4LXBvcHVwJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9wb3B1cC5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBWFBvcHVwQ29tcG9uZW50IGV4dGVuZHMgQVhCYXNlQ29tcG9uZW50TWl4aW4ge1xyXG5cclxuICAgIGlzTG9hZGluZzogYm9vbGVhbiA9IHRydWU7XHJcbiAgICBwcml2YXRlIF9sb2FkaW5nSWQ6IG51bWJlcjtcclxuXHJcbiAgICB0aXRsZTogc3RyaW5nO1xyXG5cclxuICAgIG9uQ2xvc2VkOiBFdmVudEVtaXR0ZXI8QVhQYWdlQ2xvc2VFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPEFYUGFnZUNsb3NlRXZlbnQ+KCk7XHJcblxyXG4gICAgc2l6ZTogJ3NtJyB8ICdtZCcgfCAnbGcnIHwgJ2Z1bGwnID0gJ3NtJztcclxuICAgIGRyYWdnYWJsZTogYm9vbGVhbiA9IHRydWU7XHJcblxyXG5cclxuICAgIGRhdGE6IGFueSA9IHt9O1xyXG5cclxuXHJcbiAgICBzaG93Q2xvc2VCdXR0b246IGJvb2xlYW4gPSB0cnVlO1xyXG4gICAgc2hvd0hlYWRlcjogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gICAgY29udGVudDogYW55O1xyXG5cclxuXHJcbiAgICBfc2VsZWN0ZWRQb3J0YWw6IFBvcnRhbDxhbnk+O1xyXG4gICAgX2Zvb3RlclBvcnRhbDogUG9ydGFsPGFueT47XHJcbiAgICBfaGVhZGVyUG9ydGFsOiBQb3J0YWw8YW55PjtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxyXG4gICAgICAgIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICAgICAgcHJpdmF0ZSBfem9uZTogTmdab25lLFxyXG4gICAgICAgIHByaXZhdGUgX3ZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXHJcbiAgICAgICAgcHJpdmF0ZSBsb2FkaW5nU2VydmljZTogQVhMb2FkaW5nU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIF9wbGF0Zm9ybTogQVhQbGF0Zm9ybVxyXG4gICAgKSB7XHJcbiAgICAgICAgc3VwZXIoZWxlbWVudFJlZiwgY2RyKTtcclxuICAgIH1cclxuXHJcbiAgICBvblZpZXdJbml0KCkge1xyXG4gICAgICAgIGRlYnVnZ2VyXHJcbiAgICAgICAgaWYgKHRoaXMuX3BsYXRmb3JtLmlzKCdNb2JpbGUnKSkge1xyXG4gICAgICAgICAgICB0aGlzLmRyYWdnYWJsZSA9IGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLl9sb2FkaW5nSWQgPSB0aGlzLmxvYWRpbmdTZXJ2aWNlLnNob3codGhpcy5fZ2V0SG9zdEVsZW1lbnQoKS5xdWVyeVNlbGVjdG9yKCcuYXgtcG9wdXAtYm9keS1jb250YWluZXInKSk7XHJcbiAgICAgICAgLy9cclxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuY29udGVudCA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgICAgICAgLy8gICB0aGlzLnJlbmRlcmVyU2VydmljZS5maW5kTG9hZGVkQ29tcG9uZW50QnlSb3V0ZSh0aGlzLmNvbnRlbnQsIDIwKS50aGVuKHJvdXRlID0+IHtcclxuICAgICAgICAgICAgLy8gICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICAgICAgICAvLyAgICAgICB0aGlzLmxvYWRDb21wb25lbnQocm91dGU/LmNvbXBvbmVudCk7XHJcbiAgICAgICAgICAgIC8vICAgICB9LCAzMDApO1xyXG4gICAgICAgICAgICAvLyAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlIGlmICh0aGlzLmNvbnRlbnQgaW5zdGFuY2VvZiBUZW1wbGF0ZVJlZikge1xyXG4gICAgICAgICAgICB0aGlzLl9zZWxlY3RlZFBvcnRhbCA9IG5ldyBUZW1wbGF0ZVBvcnRhbCh0aGlzLmNvbnRlbnQsIHRoaXMuX3ZpZXdDb250YWluZXJSZWYsIHsgJGltcGxpY2l0OiB0aGlzLmRhdGEsIHJlZjogdGhpcyB9KTtcclxuICAgICAgICAgICAgdGhpcy5fY2RyLm1hcmtGb3JDaGVjaygpO1xyXG5cclxuICAgICAgICB9XHJcbiAgICAgICAgZWxzZSBpZiAodHlwZW9mIHRoaXMuY29udGVudCA9PT0gJ2Z1bmN0aW9uJykge1xyXG4gICAgICAgICAgICB0aGlzLl9zZWxlY3RlZFBvcnRhbCA9IG5ldyBDb21wb25lbnRQb3J0YWwodGhpcy5jb250ZW50KTtcclxuICAgICAgICAgICAgdGhpcy5fY2RyLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBfaGFuZGxlQXR0Y2hlZChyZWY6IENka1BvcnRhbE91dGxldEF0dGFjaGVkUmVmKSB7XHJcbiAgICAgICAgcmVmID0gcmVmIGFzIENvbXBvbmVudFJlZjxhbnk+O1xyXG4gICAgICAgIGlmIChyZWYuaW5zdGFuY2UpIHtcclxuICAgICAgICAgICAgdGhpc1tUQUJfTUVUQV9LRVldLmNvbXBvbmVudCA9IHJlZi5pbnN0YW5jZTtcclxuICAgICAgICAgICAgT2JqZWN0LmFzc2lnbih0aGlzW1RBQl9NRVRBX0tFWV0uY29tcG9uZW50LCB0aGlzLmRhdGEpO1xyXG4gICAgICAgICAgICBpZiAocmVmLmluc3RhbmNlLm9uQ2xvc2VkKSB7XHJcbiAgICAgICAgICAgICAgICByZWYuaW5zdGFuY2Uub25DbG9zZWQuc3Vic2NyaWJlKChlOiBBWFBhZ2VDbG9zZUV2ZW50KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5vbkNsb3NlZC5lbWl0KGUpO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5fem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IG1haW4gPSB0aGlzLl9nZXRIb3N0RWxlbWVudCgpLnF1ZXJ5U2VsZWN0b3I8SFRNTERpdkVsZW1lbnQ+KCdtYWluJyk7XHJcbiAgICAgICAgICAgIGNvbnN0IGZvb3RlciA9IG1haW4ucXVlcnlTZWxlY3RvcjxIVE1MRGl2RWxlbWVudD4oJ2F4LXBhZ2UtZm9vdGVyJyk7XHJcbiAgICAgICAgICAgIGlmIChmb290ZXIpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IG5ld0Zvb3RlciA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2Zvb3RlcicpO1xyXG4gICAgICAgICAgICAgICAgbmV3Rm9vdGVyLmFwcGVuZCguLi5BcnJheS5mcm9tKGZvb3Rlci5jaGlsZE5vZGVzKSk7XHJcbiAgICAgICAgICAgICAgICBtYWluLmFmdGVyKG5ld0Zvb3Rlcik7XHJcbiAgICAgICAgICAgICAgICBmb290ZXIucGFyZW50Tm9kZS5yZW1vdmVDaGlsZChmb290ZXIpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy5sb2FkaW5nU2VydmljZS5oaWRlKHRoaXMuX2xvYWRpbmdJZCk7XHJcbiAgICAgICAgdGhpcy5mb2N1cygpO1xyXG4gICAgICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKTtcclxuICAgIH1cclxuXHJcblxyXG4gICAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bi5lc2NhcGUnLCBbJyRldmVudCddKVxyXG4gICAgb25LZXlkb3duSGFuZGxlcihldmVudDogS2V5Ym9hcmRFdmVudCkge1xyXG4gICAgICAgIGlmICh0aGlzLnNob3dDbG9zZUJ1dHRvbikge1xyXG4gICAgICAgICAgICB0aGlzLmNsb3NlKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIF9oYW5kbGVDbG9zZUNsaWNrKCkge1xyXG4gICAgICAgIHRoaXMuY2xvc2UoKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpIHtcclxuICAgICAgICB0aGlzLmxvYWRpbmdTZXJ2aWNlLmhpZGUodGhpcy5fbG9hZGluZ0lkKTtcclxuICAgIH1cclxuXHJcbiAgICBmb2N1cygpIHtcclxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuX2dldEhvc3RFbGVtZW50KCkuZm9jdXMoKSk7XHJcbiAgICB9XHJcblxyXG4gICAgY2xvc2UoKSB7XHJcbiAgICAgICAgdGhpcy5vbkNsb3NlZC5lbWl0KHtcclxuICAgICAgICAgICAgY29tcG9uZW50OiB0aGlzW1RBQl9NRVRBX0tFWV0uY29tcG9uZW50LFxyXG4gICAgICAgICAgICBodG1sRWxlbWVudDogdGhpcy5fZ2V0SG9zdEVsZW1lbnQoKSxcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfVxyXG5cclxuICAgIG9uRnVsbFNjcmVlbigpIHsgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJheC1wb3B1cC13cmFwcGVyXCIgYXJpYS1tb2RhbD1cInRydWVcIiBjZGtUcmFwRm9jdXM+XHJcbiAgICA8ZGl2IGNsYXNzPVwiYXgtcG9wdXAgYXgtcG9wdXAte3tzaXplfX1cIiB0YWJpbmRleD1cIjBcIiBjZGtEcmFnIFtjZGtEcmFnRGlzYWJsZWRdPVwiIWRyYWdnYWJsZVwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzaG93SGVhZGVyXCI+XHJcbiAgICAgICAgICAgIDxoZWFkZXIgY2RrRHJhZ0hhbmRsZSBjbGFzcz1cImF4LWN1cnNvci1tb3ZlXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC10ZXh0LWxnIGF4LWZvbnQtbWVkaXVtXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge3t0aXRsZX19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cInNob3dDbG9zZUJ1dHRvblwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiYXgtaWMgYXgtaWMtY2xvc2UgYXgtdGV4dC1ncmF5IGF4LWN1cnNvci1wb2ludGVyXCIgKGNsaWNrKT1cIl9oYW5kbGVDbG9zZUNsaWNrKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB0YWJpbmRleD1cIjFcIj48L2k+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9oZWFkZXI+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPG1haW4+XHJcbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbY2RrUG9ydGFsT3V0bGV0XT1cIl9zZWxlY3RlZFBvcnRhbFwiIChhdHRhY2hlZCk9XCJfaGFuZGxlQXR0Y2hlZCgkZXZlbnQpXCI+PC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICA8L21haW4+XHJcbiAgICA8L2Rpdj5cclxuPC9kaXY+Il19
|
|
@@ -24,7 +24,8 @@ export class AXPopupService {
|
|
|
24
24
|
showCloseButton: true,
|
|
25
25
|
showHeader: true,
|
|
26
26
|
size: 'md',
|
|
27
|
-
maximizable: false
|
|
27
|
+
maximizable: false,
|
|
28
|
+
draggable: true
|
|
28
29
|
};
|
|
29
30
|
if (typeof arg2 === 'string') {
|
|
30
31
|
options.title = arg2;
|
|
@@ -90,4 +91,4 @@ AXPopupService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", versi
|
|
|
90
91
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: AXPopupService, decorators: [{
|
|
91
92
|
type: Injectable
|
|
92
93
|
}], ctorParameters: function () { return [{ type: i1.AXOverlayService }]; } });
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
94
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wdXAuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Fjb3JleC9jb21wb25lbnRzL3NyYy9saWIvcG9wdXAvcG9wdXAuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFlLE1BQU0sZUFBZSxDQUFDO0FBRXhELE9BQU8sRUFBRSxtQkFBbUIsRUFBb0IsWUFBWSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7QUFJckQ7Ozs7R0FJRztBQUVILE1BQU0sT0FBTyxjQUFjO0lBTXpCOztPQUVHO0lBQ0gsWUFBb0IsY0FBZ0M7UUFBaEMsbUJBQWMsR0FBZCxjQUFjLENBQWtCO1FBTjVDLFVBQUssR0FBNEIsRUFBRSxDQUFDO0lBTVksQ0FBQztJQXdCekQ7O01BRUU7SUFDRixJQUFJLENBQUMsSUFBSSxFQUFFLElBQUk7UUFDYixNQUFNLE9BQU8sR0FBUTtZQUNuQixlQUFlLEVBQUUsSUFBSTtZQUNyQixVQUFVLEVBQUUsSUFBSTtZQUNoQixJQUFJLEVBQUUsSUFBSTtZQUNWLFdBQVcsRUFBRSxLQUFLO1lBQ2xCLFNBQVMsRUFBRyxJQUFJO1NBQ2pCLENBQUM7UUFDRixJQUFJLE9BQU8sSUFBSSxLQUFLLFFBQVEsRUFBRTtZQUM1QixPQUFPLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQztTQUN0QjthQUFNO1lBQ0wsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLENBQUM7U0FDOUI7UUFDRCxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxPQUFPLEVBQUUsRUFBRSxtQkFBbUIsRUFBRSxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQzdJLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxRQUE0QixDQUFDO1FBQy9DLEtBQUssQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3JCLEtBQUssQ0FBQyxZQUFZLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDekIsSUFBSSxPQUFPLENBQUMsSUFBSSxFQUFFO1lBQ2hCLEtBQUssQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQztTQUMzQjtRQUNELElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3ZCLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQzNCLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNqQyxDQUFDLENBQUMsQ0FBQztRQUNILE1BQU0sT0FBTyxHQUFHLElBQUksbUJBQW1CLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUNsRCxLQUFLLENBQUMsWUFBWSxDQUFDLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUU7Z0JBQ2hDLElBQUksT0FBTyxFQUFFO29CQUNYLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztpQkFDWjtZQUNILENBQUMsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxDQUFDLGFBQWEsQ0FBQyxHQUFHLEdBQUcsRUFBRSxHQUFHLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNsRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBR08sVUFBVSxDQUFDLEtBQXVCLEVBQUUsR0FBcUIsRUFBRSxNQUF3QjtRQUN6RixNQUFNLFNBQVMsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ3RCLEdBQUcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNkLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDakIsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDO1lBQ2hCLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDN0IsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRTtnQkFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO2FBQUU7UUFDN0QsQ0FBQyxDQUFDO1FBQ0YsTUFBTSxDQUFDLEdBQUcsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLENBQUM7UUFDNUIsTUFBTSxXQUFXLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQyxFQUFFLFNBQVMsRUFBRSxTQUFTLENBQUM7UUFDOUQsSUFBSSxXQUFXLEVBQUU7WUFDZixNQUFNLEdBQUcsR0FBRyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDM0IsSUFBSSxHQUFHLFlBQVksT0FBTyxFQUFFO2dCQUMxQixHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtvQkFDWixJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxDQUFDLE1BQU0sS0FBSyxJQUFJLEVBQUU7d0JBQ2xDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztxQkFDbkI7Z0JBQ0gsQ0FBQyxDQUFDLENBQUM7YUFDSjtpQkFDSTtnQkFDSCxJQUFJLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxDQUFDLE1BQU0sS0FBSyxJQUFJLEVBQUU7b0JBQ2xDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQztpQkFDbkI7YUFDRjtTQUNGO2FBQU07WUFDTCxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDbkI7SUFDSCxDQUFDOzsyR0FuR1UsY0FBYzsrR0FBZCxjQUFjOzJGQUFkLGNBQWM7a0JBRDFCLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBWE92ZXJsYXlTZXJ2aWNlLCBBWE92ZXJsYXlWaWV3UmVmIH0gZnJvbSAnLi4vYmFzZS9vdmVybGF5LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBBWFBhZ2VDbG9zZWRQcm9taXNlLCBBWFBhZ2VDbG9zZUV2ZW50LCBUQUJfTUVUQV9LRVkgfSBmcm9tICcuLi9wYWdlJztcclxuaW1wb3J0IHsgQVhQb3B1cENvbXBvbmVudCB9IGZyb20gJy4vcG9wdXAuY29tcG9uZW50JztcclxuXHJcbmV4cG9ydCB0eXBlIEFYUG9wdXBDb250ZW50VHlwZSA9IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT4gfCBGdW5jdGlvbjtcclxuXHJcbi8qKlxyXG4gKiBUaGlzIGlzIGEgc2VydmljZSB3aGljaCB5b3UgY2FuIGNyZWF0ZSBwb3B1cCB3aXRoIGl0XHJcbiAqXHJcbiAqIEBjYXRlZ29yeSBDb21wb25lbnRzXHJcbiAqL1xyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBBWFBvcHVwU2VydmljZSB7XHJcblxyXG5cclxuICBwcml2YXRlIHN0YWNrOiBBcnJheTxBWFBvcHVwQ29tcG9uZW50PiA9IFtdO1xyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogIEBpZ25vcmVcclxuICAgKi9cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIG92ZXJsYXlTZXJ2aWNlOiBBWE92ZXJsYXlTZXJ2aWNlKSB7IH1cclxuXHJcblxyXG4gIC8qKlxyXG4gICAgKiAgT3BlbiBwb3B1cCAxXHJcbiAgICAqL1xyXG4gIG9wZW4oY29udGVudDogQVhQb3B1cENvbnRlbnRUeXBlLCB0aXRsZTogc3RyaW5nKTogQVhQYWdlQ2xvc2VkUHJvbWlzZTtcclxuICAvKipcclxuICAqICBPcGVuIHBvcHVwIDJcclxuICAqICBAaWdub3JlXHJcbiAgKi9cclxuICBvcGVuKFxyXG4gICAgY29udGVudDogQVhQb3B1cENvbnRlbnRUeXBlLFxyXG4gICAgb3B0aW9ucz86IHtcclxuICAgICAgdGl0bGU6IHN0cmluZztcclxuICAgICAgc2hvd0Nsb3NlQnV0dG9uPzogYm9vbGVhbjtcclxuICAgICAgc2hvd0hlYWRlcj86IGJvb2xlYW47XHJcbiAgICAgIG1heGltaXphYmxlPzogYm9vbGVhbjtcclxuICAgICAgc2l6ZT86ICdzbScgfCAnbWQnIHwgJ2xnJyB8ICdmdWxsJyB8ICdmaXQnO1xyXG4gICAgICBkYXRhPzogYW55O1xyXG4gICAgICBkcmFnZ2FibGU/OmJvb2xlYW4gXHJcbiAgICB9XHJcbiAgKTogQVhQYWdlQ2xvc2VkUHJvbWlzZTtcclxuXHJcbiAgLyoqXHJcbiAgKiAgQGlnbm9yZVxyXG4gICovXHJcbiAgb3BlbihhcmcxLCBhcmcyKTogQVhQYWdlQ2xvc2VkUHJvbWlzZSB7XHJcbiAgICBjb25zdCBvcHRpb25zOiBhbnkgPSB7XHJcbiAgICAgIHNob3dDbG9zZUJ1dHRvbjogdHJ1ZSxcclxuICAgICAgc2hvd0hlYWRlcjogdHJ1ZSxcclxuICAgICAgc2l6ZTogJ21kJyxcclxuICAgICAgbWF4aW1pemFibGU6IGZhbHNlLFxyXG4gICAgICBkcmFnZ2FibGUgOiB0cnVlXHJcbiAgICB9O1xyXG4gICAgaWYgKHR5cGVvZiBhcmcyID09PSAnc3RyaW5nJykge1xyXG4gICAgICBvcHRpb25zLnRpdGxlID0gYXJnMjtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIE9iamVjdC5hc3NpZ24ob3B0aW9ucywgYXJnMik7XHJcbiAgICB9XHJcbiAgICBjb25zdCBjb20gPSB0aGlzLm92ZXJsYXlTZXJ2aWNlLnNob3coQVhQb3B1cENvbXBvbmVudCwgb3B0aW9ucywgeyB0cmFuc3BhcmVudEJhY2tkcm9wOiBmYWxzZSwgY2xvc2VPbkNsaWNrT3V0c2lkZTogZmFsc2UsIHNjcm9sbDogJ2Jsb2NrJyB9KTtcclxuICAgIGNvbnN0IHBvcHVwID0gY29tLmluc3RhbmNlIGFzIEFYUG9wdXBDb21wb25lbnQ7XHJcbiAgICBwb3B1cC5jb250ZW50ID0gYXJnMTtcclxuICAgIHBvcHVwW1RBQl9NRVRBX0tFWV0gPSB7fTtcclxuICAgIGlmIChvcHRpb25zLnNpemUpIHtcclxuICAgICAgcG9wdXAuc2l6ZSA9IG9wdGlvbnMuc2l6ZTtcclxuICAgIH1cclxuICAgIHRoaXMuc3RhY2sucHVzaChwb3B1cCk7XHJcbiAgICBwb3B1cC5vbkNsb3NlZC5zdWJzY3JpYmUoYyA9PiB7XHJcbiAgICAgIHRoaXMuY2xvc2VQb3B1cChwb3B1cCwgY29tLCBjKTtcclxuICAgIH0pO1xyXG4gICAgY29uc3QgcHJvbWlzZSA9IG5ldyBBWFBhZ2VDbG9zZWRQcm9taXNlKChyZXNvbHZlKSA9PiB7XHJcbiAgICAgIHBvcHVwW1RBQl9NRVRBX0tFWV0uY2xvc2UgPSAoZSkgPT4ge1xyXG4gICAgICAgIGlmIChyZXNvbHZlKSB7XHJcbiAgICAgICAgICByZXNvbHZlKGUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfTtcclxuICAgIH0pO1xyXG4gICAgcHJvbWlzZVsnY2xvc2VNZXRob2QnXSA9ICgpID0+IHsgcG9wdXAuY2xvc2UoKTsgfTtcclxuICAgIHJldHVybiBwcm9taXNlO1xyXG4gIH1cclxuXHJcblxyXG4gIHByaXZhdGUgY2xvc2VQb3B1cChwb3B1cDogQVhQb3B1cENvbXBvbmVudCwgY29tOiBBWE92ZXJsYXlWaWV3UmVmLCByZXN1bHQ6IEFYUGFnZUNsb3NlRXZlbnQpIHtcclxuICAgIGNvbnN0IGNsb3NlRnVuYyA9IChlKSA9PiB7XHJcbiAgICAgIGNvbS5kaXNwb3NlKCk7XHJcbiAgICAgIHRoaXMuc3RhY2sucG9wKCk7XHJcbiAgICAgIGRlbGV0ZSBlLmNhbmNlbDtcclxuICAgICAgcG9wdXBbVEFCX01FVEFfS0VZXS5jbG9zZShlKTtcclxuICAgICAgaWYgKHRoaXMuc3RhY2subGVuZ3RoKSB7IHRoaXMuc3RhY2sucmV2ZXJzZSgpWzBdLmZvY3VzKCk7IH1cclxuICAgIH07XHJcbiAgICBjb25zdCBlID0geyBjYW5jZWw6IGZhbHNlIH07XHJcbiAgICBjb25zdCBjbG9zaW5nRnVuYyA9IHBvcHVwW1RBQl9NRVRBX0tFWV0/LmNvbXBvbmVudD8ub25DbG9zaW5nO1xyXG4gICAgaWYgKGNsb3NpbmdGdW5jKSB7XHJcbiAgICAgIGNvbnN0IHJlcyA9IGNsb3NpbmdGdW5jKGUpO1xyXG4gICAgICBpZiAocmVzIGluc3RhbmNlb2YgUHJvbWlzZSkge1xyXG4gICAgICAgIHJlcy50aGVuKCgpID0+IHtcclxuICAgICAgICAgIGlmIChlID09IG51bGwgfHwgZS5jYW5jZWwgIT09IHRydWUpIHtcclxuICAgICAgICAgICAgY2xvc2VGdW5jKHJlc3VsdCk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgaWYgKGUgPT0gbnVsbCB8fCBlLmNhbmNlbCAhPT0gdHJ1ZSkge1xyXG4gICAgICAgICAgY2xvc2VGdW5jKHJlc3VsdCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjbG9zZUZ1bmMocmVzdWx0KTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
|