@f1falcha/stimulus 1.0.3 → 1.0.5
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/assets/.gitkeep +0 -0
- package/assets/Calendar.svg +3 -0
- package/assets/background.png +0 -0
- package/assets/bank-logo.svg +11 -0
- package/assets/error-background.png +0 -0
- package/assets/font_assets/Inter-Bold.eot +0 -0
- package/assets/font_assets/Inter-Bold.ttf +0 -0
- package/assets/font_assets/Inter-Bold.woff +0 -0
- package/assets/font_assets/Inter-Bold.woff2 +0 -0
- package/assets/font_assets/Inter-Medium.eot +0 -0
- package/assets/font_assets/Inter-Medium.ttf +0 -0
- package/assets/font_assets/Inter-Medium.woff +0 -0
- package/assets/font_assets/Inter-Medium.woff2 +0 -0
- package/assets/font_assets/Inter-Regular.eot +0 -0
- package/assets/font_assets/Inter-Regular.ttf +0 -0
- package/assets/font_assets/Inter-Regular.woff +0 -0
- package/assets/font_assets/Inter-Regular.woff2 +0 -0
- package/assets/illustrations/Icon.png +0 -0
- package/assets/illustrations/Icon.svg +3 -0
- package/assets/illustrations/edit.svg +9 -0
- package/assets/illustrations/email.svg +7 -0
- package/assets/illustrations/error.svg +8 -0
- package/assets/illustrations/flag.svg +8 -0
- package/assets/illustrations/hide.svg +8 -0
- package/assets/illustrations/image.svg +8 -0
- package/assets/illustrations/in-maintenance.svg +6 -0
- package/assets/illustrations/message.svg +7 -0
- package/assets/illustrations/mobile-authentication.svg +11 -0
- package/assets/illustrations/no-data.svg +17 -0
- package/assets/illustrations/reset-password.svg +7 -0
- package/assets/illustrations/search.svg +11 -0
- package/assets/illustrations/shield.svg +7 -0
- package/assets/illustrations/success.svg +8 -0
- package/assets/illustrations/timeout.svg +7 -0
- package/assets/illustrations/trash.svg +7 -0
- package/assets/illustrations/unhide.svg +7 -0
- package/assets/illustrations/warning.svg +8 -0
- package/esm2022/accordion/accordion-item/accordion-item.component.mjs +4 -4
- package/esm2022/accordion/accordion-item-body/accordion-item-body.component.mjs +4 -4
- package/esm2022/accordion/accordion-item-header/accordion-item-header.component.mjs +4 -4
- package/esm2022/accordion/accordion.mjs +4 -4
- package/esm2022/account-card/account-card-header/account-card-header.component.mjs +4 -4
- package/esm2022/account-card/account-card.component.mjs +4 -4
- package/esm2022/alert/alert.mjs +4 -4
- package/esm2022/alert/alert.service.mjs +4 -4
- package/esm2022/avatar/avatar.mjs +4 -4
- package/esm2022/badge/badge.mjs +4 -4
- package/esm2022/bordered-section/bordered-section.mjs +4 -4
- package/esm2022/button/button.mjs +4 -4
- package/esm2022/button-group/button-group-header/button-group-header.mjs +4 -4
- package/esm2022/button-group/button-group.mjs +4 -4
- package/esm2022/card/card.component.mjs +4 -4
- package/esm2022/chart/chart.component.mjs +4 -4
- package/esm2022/checkbox-dropdown/checkbox-dropdown.component.mjs +4 -4
- package/esm2022/clipboard/clipboard.component.mjs +4 -4
- package/esm2022/color-wrapper/color-wrapper.mjs +4 -4
- package/esm2022/column-seperator/column-separator.mjs +4 -4
- package/esm2022/column-text/column-text.mjs +4 -4
- package/esm2022/container/container.component.mjs +4 -4
- package/esm2022/custom-datepicker/custom-datepicker.component.mjs +4 -4
- package/esm2022/custom-datepicker/timepicker/timepicker.component.mjs +4 -4
- package/esm2022/data-list/data-list.mjs +4 -4
- package/esm2022/date-range-picker/date-range-picker.mjs +4 -4
- package/esm2022/datepicker/datepicker.mjs +4 -4
- package/esm2022/datepicker-icon/datepicker-icon.mjs +4 -4
- package/esm2022/detail-panel/detail-panel-row/detail-panel-column/detail-panel-column.mjs +4 -4
- package/esm2022/detail-panel/detail-panel-row/detail-panel-row.mjs +4 -4
- package/esm2022/detail-panel/detail-panel-title/detail-panel-title.mjs +4 -4
- package/esm2022/detail-panel/detail-panel.mjs +4 -4
- package/esm2022/dialog/dialog-body/dialog-body.component.mjs +4 -4
- package/esm2022/dialog/dialog-container/dialog-container.component.mjs +4 -4
- package/esm2022/dialog/dialog-footer/dialog-footer.component.mjs +4 -4
- package/esm2022/dialog/dialog-header/dialog-header.component.mjs +4 -4
- package/esm2022/dialog/dialog.component.mjs +4 -4
- package/esm2022/dialog.service.mjs +4 -4
- package/esm2022/dropdown/context-menu-content/context-menu-content.mjs +4 -4
- package/esm2022/dropdown/context-menu-item.mjs +4 -4
- package/esm2022/dropdown/context-menu-list/context-menu-list.mjs +4 -4
- package/esm2022/dropdown/context-menu.mjs +4 -4
- package/esm2022/error-page-container/error-content/error-content.mjs +4 -4
- package/esm2022/error-page-container/error-page-container.mjs +4 -4
- package/esm2022/extract-inital/extract-initial.mjs +4 -4
- package/esm2022/file-uploader/file-uploader.mjs +4 -4
- package/esm2022/file-uploader/file-uploader.service.mjs +4 -4
- package/esm2022/filter/filter.mjs +4 -4
- package/esm2022/form/form-control/form-control-action.mjs +4 -4
- package/esm2022/form/form-control/form-control-icon.mjs +4 -4
- package/esm2022/form/form-control/form-field.mjs +4 -4
- package/esm2022/form/form-control-wrapper/form-control-wrapper.component.mjs +4 -4
- package/esm2022/form/form-message/form-message.mjs +4 -4
- package/esm2022/form/select-input-field/select-input-field.mjs +4 -4
- package/esm2022/form/validate-and-submit.mjs +4 -4
- package/esm2022/full-container/full-container.component.mjs +4 -4
- package/esm2022/grid/grid-item.component.mjs +4 -4
- package/esm2022/grid/grid.component.mjs +4 -4
- package/esm2022/grid-row/grid-row.mjs +4 -4
- package/esm2022/image-card/illustration.pipe.mjs +4 -4
- package/esm2022/image-card/image-card.component.mjs +4 -4
- package/esm2022/image-panel/image-panel.component.mjs +4 -4
- package/esm2022/info-column/info-column.mjs +4 -4
- package/esm2022/info-slider/info-slider.component.mjs +4 -4
- package/esm2022/inline-alert/inline-alert.mjs +4 -4
- package/esm2022/inline-group/inline-group.component.mjs +4 -4
- package/esm2022/input/input.mjs +4 -4
- package/esm2022/label/label.mjs +4 -4
- package/esm2022/layout/layout.component.mjs +4 -4
- package/esm2022/link/link.mjs +4 -4
- package/esm2022/media-preview/media-preview-modal/media-preview-modal.mjs +4 -4
- package/esm2022/media-preview/media-preview.mjs +4 -4
- package/esm2022/media-preview/media_preview.service.mjs +4 -4
- package/esm2022/menu/menu.component.mjs +4 -4
- package/esm2022/otp-input/otp-input.component.mjs +4 -4
- package/esm2022/page-container/page-container-info/page-container-info.component.mjs +4 -4
- package/esm2022/page-container/page-container.component.mjs +4 -4
- package/esm2022/page-header/page-header.component.mjs +4 -4
- package/esm2022/page-header/page-sub-heading/page-sub-heading.component.mjs +4 -4
- package/esm2022/page-loader/page-loader.component.mjs +4 -4
- package/esm2022/pagination/pagination.mjs +4 -4
- package/esm2022/popover-content/popover-content-item/popover-content-item.component.mjs +4 -4
- package/esm2022/popover-content/popover-content.component.mjs +4 -4
- package/esm2022/preview-box/preview-box.component.mjs +4 -4
- package/esm2022/progress-bar/progress-bar.component.mjs +4 -4
- package/esm2022/progress-chart/progress-chart.component.mjs +4 -4
- package/esm2022/public-api.mjs +7 -3
- package/esm2022/radio-card-group/radio-card/radio-card.component.mjs +4 -4
- package/esm2022/radio-card-group/radio-card-group.component.mjs +4 -4
- package/esm2022/regex-checker/regex-checker.mjs +4 -4
- package/esm2022/regex-checker/regex-validity-icon.pipe.mjs +4 -4
- package/esm2022/ribbon/ribbon.mjs +4 -4
- package/esm2022/round-checkbox/round-checkbox.component.mjs +4 -4
- package/esm2022/row/column/column.component.mjs +4 -4
- package/esm2022/row/row.component.mjs +4 -4
- package/esm2022/scrollable-content/scrollable-content.component.mjs +4 -4
- package/esm2022/section-header/section-header.component.mjs +4 -4
- package/esm2022/section-row/section-row.mjs +4 -4
- package/esm2022/section-separator/section-separator.mjs +4 -4
- package/esm2022/section-shell/section-shell.component.mjs +4 -4
- package/esm2022/select/select.component.mjs +4 -4
- package/esm2022/select-card/select-card.component.mjs +4 -4
- package/esm2022/select-country/select-country.component.mjs +4 -4
- package/esm2022/shell/checker-sidebar/checker-sidebar.component.mjs +4 -4
- package/esm2022/shell/maker-sidebar/maker-sidebar.component.mjs +4 -4
- package/esm2022/shell/shell-sidebar/shell-sidebar.component.mjs +4 -4
- package/esm2022/shell/shell.component.mjs +4 -4
- package/esm2022/side-drawer/side-drawer.mjs +4 -4
- package/esm2022/side-drawer/side-drawer.service.mjs +4 -4
- package/esm2022/spinner/spinner.mjs +4 -4
- package/esm2022/stepper/step/step.mjs +4 -4
- package/esm2022/stepper/step/step.pipe.mjs +4 -4
- package/esm2022/stepper/step-header/step-header.mjs +4 -4
- package/esm2022/stepper/stepper-button/stepper-next.mjs +4 -4
- package/esm2022/stepper/stepper-button/stepper-previous.mjs +4 -4
- package/esm2022/stepper/stepper.mjs +4 -4
- package/esm2022/stimulus.module.mjs +5 -5
- package/esm2022/table/table-column/scl-table-column.mjs +4 -4
- package/esm2022/table/table-text/scl-table-text.mjs +4 -4
- package/esm2022/table/table.mjs +4 -4
- package/esm2022/table-action-control/table-action-control.component.mjs +4 -4
- package/esm2022/tabset/tab/tab.component.mjs +4 -4
- package/esm2022/tabset/tab-directive/tabset.directive.mjs +4 -4
- package/esm2022/tabset/tabset.component.mjs +4 -4
- package/esm2022/taglist/tag/tag.component.mjs +4 -4
- package/esm2022/taglist/tag/tag.directive.mjs +4 -4
- package/esm2022/taglist/taglist.component.mjs +4 -4
- package/esm2022/text-decoration/text-decoration.component.mjs +4 -4
- package/esm2022/text-editor/text-editor.mjs +4 -4
- package/esm2022/timeline/timeline.component.mjs +4 -4
- package/esm2022/timepicker/timepicker.component.mjs +4 -4
- package/esm2022/toggle/toggle-description/toggle-description.mjs +4 -4
- package/esm2022/toggle/toggle.mjs +4 -4
- package/esm2022/toggle-password/toggle-password.component.mjs +4 -4
- package/esm2022/toggle-password/toggle-password.directive.mjs +4 -4
- package/esm2022/treeview/treeview-header/treeview-header.mjs +4 -4
- package/esm2022/treeview/treeview.mjs +4 -4
- package/esm2022/truncate/truncate.component.mjs +4 -4
- package/esm2022/typography/typography.mjs +4 -4
- package/fesm2022/f1falcha-stimulus.mjs +596 -596
- package/fesm2022/f1falcha-stimulus.mjs.map +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +4 -1
- package/public-api.d.ts.map +1 -1
|
@@ -198,11 +198,11 @@ class SclCheckboxDropdownComponent {
|
|
|
198
198
|
return false;
|
|
199
199
|
return selectedItems.includes(firstItem);
|
|
200
200
|
}
|
|
201
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.
|
|
202
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.
|
|
201
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SclCheckboxDropdownComponent, deps: [{ token: i1.FormBuilder }, { token: i2.NbIconLibraries }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
202
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SclCheckboxDropdownComponent, isStandalone: true, selector: "scl-checkbox-dropdown", inputs: { items: "items", buttonIcon: "buttonIcon", buttonIconPack: "buttonIconPack", dropdownTitle: "dropdownTitle", displayProperty: "displayProperty", multiSelect: "multiSelect", loading: "loading", allowEmpty: "allowEmpty", selectAllByDefault: "selectAllByDefault" }, outputs: { selectedItems: "selectedItems" }, host: { classAttribute: "scl-checkbox-dropdown" }, ngImport: i0, template: "<scl-context-menu popoverPlacement=\"top\">\n <button nbButton outline [nbSpinner]=\"loading\" nbSpinnerStatus=\"primary\">\n <nb-icon *ngIf=\"!loading\" [icon]=\"buttonIcon\" [pack]=\"buttonIconPack\"></nb-icon>\n\n <ng-container [ngSwitch]=\"selectedCount\">\n <span *ngSwitchCase=\"0\">{{ dropdownTitle }}</span>\n <span *ngSwitchCase=\"1\">{{ selectedLabel }}</span>\n <span *ngSwitchDefault>{{ selectedLabel }}</span>\n </ng-container>\n\n <nb-icon *ngIf=\"!loading\" icon=\"chevron-down\" [pack]=\"buttonIconPack\"></nb-icon>\n </button>\n\n <scl-context-menu-content class=\"scl-checkbox-dropdown__content\">\n <nb-checkbox *ngFor=\"let item of items\" [checked]=\"isSelected(item)\" (checkedChange)=\"updateSelection(item, $event)\" [disabled]=\"isDisabled(item)\">\n {{ item[displayProperty] }}\n </nb-checkbox>\n </scl-context-menu-content>\n</scl-context-menu>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i3.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i3.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: SclContextMenu, selector: "scl-context-menu", inputs: ["popoverPlacement"] }, { kind: "ngmodule", type: NbIconModule }, { kind: "component", type: i2.NbIconComponent, selector: "nb-icon", inputs: ["icon", "pack", "options", "status", "config"] }, { kind: "component", type: SclContextMenuContent, selector: "scl-context-menu-content" }, { kind: "ngmodule", type: NbCheckboxModule }, { kind: "component", type: i2.NbCheckboxComponent, selector: "nb-checkbox", inputs: ["checked", "disabled", "status", "indeterminate"], outputs: ["checkedChange"] }, { kind: "ngmodule", type: NbButtonModule }, { kind: "component", type: i2.NbButtonComponent, selector: "button[nbButton],a[nbButton],input[type=\"button\"][nbButton],input[type=\"submit\"][nbButton]", inputs: ["hero"] }, { kind: "ngmodule", type: NbSpinnerModule }, { kind: "directive", type: i2.NbSpinnerDirective, selector: "[nbSpinner]", inputs: ["nbSpinnerMessage", "nbSpinnerStatus", "nbSpinnerSize", "nbSpinner"] }] }); }
|
|
203
203
|
}
|
|
204
204
|
export { SclCheckboxDropdownComponent };
|
|
205
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.
|
|
205
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SclCheckboxDropdownComponent, decorators: [{
|
|
206
206
|
type: Component,
|
|
207
207
|
args: [{ standalone: true, imports: [CommonModule, ReactiveFormsModule, SclContextMenu, NbIconModule, SclContextMenuContent, NbCheckboxModule, NbButtonModule, NbSpinnerModule], selector: 'scl-checkbox-dropdown', host: {
|
|
208
208
|
class: 'scl-checkbox-dropdown',
|
|
@@ -229,4 +229,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
|
|
|
229
229
|
}], selectAllByDefault: [{
|
|
230
230
|
type: Input
|
|
231
231
|
}] } });
|
|
232
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3gtZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3BhY2thZ2VzL2NoZWNrYm94LWRyb3Bkb3duL2NoZWNrYm94LWRyb3Bkb3duLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9wYWNrYWdlcy9jaGVja2JveC1kcm9wZG93bi9jaGVja2JveC1kcm9wZG93bi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQTBCLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0UsT0FBTyxFQUFFLGNBQWMsRUFBRSxnQkFBZ0IsRUFBbUIsWUFBWSxFQUFFLGVBQWUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWxILE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQzs7Ozs7QUFrQjlGOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUNILE1BU2EsNEJBQTRCO0lBUXJDOzs7T0FHRztJQUNILElBQStCLEtBQUssQ0FBQyxLQUFVO1FBQzNDLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBRXBCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxFQUFFLEtBQUssSUFBSSxFQUFFLENBQUM7UUFFN0QsSUFBSSxJQUFJLENBQUMs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U0FBUyxDQUFDLENBQUM7SUFDN0MsQ0FBQzs4R0F4TVEsNEJBQTRCO2tHQUE1Qiw0QkFBNEIsaWNDbkR6Qyw2OEJBbUJBLDJDRHlCYyxZQUFZLDJnQkFBRSxtQkFBbUIsK0JBQUUsY0FBYywwRkFBRSxZQUFZLDhKQUFFLHFCQUFxQixvRUFBRSxnQkFBZ0Isb01BQUUsY0FBYywrTUFBRSxlQUFlOztTQU8xSSw0QkFBNEI7MkZBQTVCLDRCQUE0QjtrQkFUeEMsU0FBUztpQ0FDTSxJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsY0FBYyxFQUFFLFlBQVksRUFBRSxxQkFBcUIsRUFBRSxnQkFBZ0IsRUFBRSxjQUFjLEVBQUUsZUFBZSxDQUFDLFlBQzFJLHVCQUF1QixRQUUzQjt3QkFDRixLQUFLLEVBQUUsdUJBQXVCO3FCQUNqQztnSUFNUyxhQUFhO3NCQUF0QixNQUFNO2dCQVF3QixLQUFLO3NCQUFuQyxLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkF3QmhCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBTUcsY0FBYztzQkFBdEIsS0FBSztnQkFNRyxhQUFhO3NCQUFyQixLQUFLO2dCQU1HLGVBQWU7c0JBQXZCLEtBQUs7Z0JBTUcsV0FBVztzQkFBbkIsS0FBSztnQkFNRyxPQUFPO3NCQUFmLEtBQUs7Z0JBVUYsVUFBVTtzQkFEYixLQUFLO2dCQWVGLGtCQUFrQjtzQkFEckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE5iQnV0dG9uTW9kdWxlLCBOYkNoZWNrYm94TW9kdWxlLCBOYkljb25MaWJyYXJpZXMsIE5iSWNvbk1vZHVsZSwgTmJTcGlubmVyTW9kdWxlIH0gZnJvbSAnQG5lYnVsYXIvdGhlbWUnO1xuXG5pbXBvcnQgeyBTY2xDb250ZXh0TWVudSB9IGZyb20gJy4uL2Ryb3Bkb3duL2NvbnRleHQtbWVudSc7XG5pbXBvcnQgeyBTY2xDaGVja2JveERyb3Bkb3duSWNvbiB9IGZyb20gJy4vY2hlY2tib3gtZHJvcGRvd24uaWNvbic7XG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgU2NsQ29udGV4dE1lbnVDb250ZW50IH0gZnJvbSAnLi4vZHJvcGRvd24vY29udGV4dC1tZW51LWNvbnRlbnQvY29udGV4dC1tZW51LWNvbnRlbnQnO1xuXG4vKipcbiAqIEludGVyZmFjZSBmb3IgaXRlbXMgdGhhdCBjYW4gYmUgc2VsZWN0ZWQgaW4gdGhlIGRyb3Bkb3duXG4gKiBAaW50ZXJmYWNlIFNlbGVjdGFibGVJdGVtXG4gKiBAcHJvcGVydHkge251bWJlciB8IHN0cmluZ30gaWQgLSBVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIGl0ZW1cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBsYWJlbCAtIERpc3BsYXkgdGV4dCBmb3IgdGhlIGl0ZW1cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBbY29kZV0gLSBPcHRpb25hbCBjb2RlIGlkZW50aWZpZXIgZm9yIHRoZSBpdGVtXG4gKiBAcHJvcGVydHkge2FueX0gW2tleTogc3RyaW5nXSAtIEFkZGl0aW9uYWwgcHJvcGVydGllcyBjYW4gYmUgaW5jbHVkZWRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZWxlY3RhYmxlSXRlbSB7XG4gICAgaWQ6IG51bWJlciB8IHN0cmluZztcbiAgICBsYWJlbDogc3RyaW5nO1xuICAgIGNvZGU/OiBzdHJpbmc7XG5cbiAgICBba2V5OiBzdHJpbmddOiBhbnk7XG59XG5cbi8qKlxuICogQSB2ZXJzYXRpbGUgY2hlY2tib3ggZHJvcGRvd24gY29tcG9uZW50IHRoYXQgc3VwcG9ydHMgc2luZ2xlIGFuZCBtdWx0aXBsZSBzZWxlY3Rpb24uXG4gKlxuICogQGV4YW1wbGVcbiAqIEJhc2ljIHVzYWdlOlxuICogYGBgaHRtbFxuICogPHNjbC1jaGVja2JveC1kcm9wZG93blxuICogICBbaXRlbXNdPVwiaXRlbXNcIlxuICogICBbbXVsdGlTZWxlY3RdPVwidHJ1ZVwiXG4gKiAgIFtkaXNwbGF5UHJvcGVydHldPVwiJ25hbWUnXCJcbiAqICAgKHNlbGVjdGVkSXRlbXMpPVwib25TZWxlY3Rpb25DaGFuZ2UoJGV2ZW50KVwiPlxuICogPC9zY2wtY2hlY2tib3gtZHJvcGRvd24+XG4gKiBgYGBcbiAqXG4gKiBAdGVtcGxhdGUgVCBUeXBlIG9mIGl0ZW1zIGluIHRoZSBkcm9wZG93biwgbXVzdCBleHRlbmQgU2VsZWN0YWJsZUl0ZW1cbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBTY2xDb250ZXh0TWVudSwgTmJJY29uTW9kdWxlLCBTY2xDb250ZXh0TWVudUNvbnRlbnQsIE5iQ2hlY2tib3hNb2R1bGUsIE5iQnV0dG9uTW9kdWxlLCBOYlNwaW5uZXJNb2R1bGVdLFxuICAgIHNlbGVjdG9yOiAnc2NsLWNoZWNrYm94LWRyb3Bkb3duJyxcbiAgICB0ZW1wbGF0ZVVybDogJ2NoZWNrYm94LWRyb3Bkb3duLmNvbXBvbmVudC5odG1sJyxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAnc2NsLWNoZWNrYm94LWRyb3Bkb3duJyxcbiAgICB9LFxufSlcbmV4cG9ydCBjbGFzcyBTY2xDaGVja2JveERyb3Bkb3duQ29tcG9uZW50PFQgZXh0ZW5kcyBTZWxlY3RhYmxlSXRlbT4ge1xuICAgIC8qKlxuICAgICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiBzZWxlY3Rpb24gY2hhbmdlcyB3aXRoIHRoZSBjdXJyZW50IGxpc3Qgb2Ygc2VsZWN0ZWQgaXRlbXNcbiAgICAgKi9cbiAgICBAT3V0cHV0KCkgc2VsZWN0ZWRJdGVtczogRXZlbnRFbWl0dGVyPFRbXT4gPSBuZXcgRXZlbnRFbWl0dGVyPFRbXT4oKTtcblxuICAgIHByaXZhdGUgX2l0ZW1zOiBUW10gPSBbXTtcblxuICAgIC8qKlxuICAgICAqIFRoZSBsaXN0IG9mIHNlbGVjdGFibGUgaXRlbXMgdG8gZGlzcGxheSBpbiB0aGUgZHJvcGRvd25cbiAgICAgKiBAcmVxdWlyZWRcbiAgICAgKi9cbiAgICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBzZXQgaXRlbXModmFsdWU6IFRbXSkge1xuICAgICAgICB0aGlzLl9pdGVtcyA9IHZhbHVlO1xuXG4gICAgICAgIGNvbnN0IHNlbGVjdGVkID0gdGhpcy5mb3JtLmdldCgnc2VsZWN0ZWRJdGVtcycpPy52YWx1ZSA/PyBbXTtcblxuICAgICAgICBpZiAodGhpcy5fc2VsZWN0QWxsQnlEZWZhdWx0ICYmIHRoaXMuX2l0ZW1zLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIC8vIFNlbGVjdCBhbGwgaXRlbXMgd2hlbiBzZWxlY3RBbGxCeURlZmF1bHQgaXMgdHJ1ZVxuICAgICAgICAgICAgdGhpcy5mb3JtLmdldCgnc2VsZWN0ZWRJdGVtcycpPy5zZXRWYWx1ZShbLi4udGhpcy5faXRlbXNdKTtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcy5lbWl0KFsuLi50aGlzLl9pdGVtc10pO1xuICAgICAgICB9IGVsc2UgaWYgKCF0aGlzLmFsbG93RW1wdHkgJiYgc2VsZWN0ZWQubGVuZ3RoID09PSAwICYmIHRoaXMuX2l0ZW1zLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIC8vIE9ubHkgc2VsZWN0IGZpcnN0IGl0ZW0gaWYgYWxsb3dFbXB0eSBpcyBmYWxzZSBhbmQgbm8gaXRlbXMgYXJlIHNlbGVjdGVkXG4gICAgICAgICAgICBjb25zdCBkZWZhdWx0SXRlbSA9IHRoaXMuX2l0ZW1zWzBdO1xuICAgICAgICAgICAgdGhpcy5mb3JtLmdldCgnc2VsZWN0ZWRJdGVtcycpPy5zZXRWYWx1ZShbZGVmYXVsdEl0ZW1dKTtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcy5lbWl0KFtkZWZhdWx0SXRlbV0pO1xuICAgICAgICB9XG4gICAgfVxuICAgIGdldCBpdGVtcygpOiBUW10ge1xuICAgICAgICByZXR1cm4gdGhpcy5faXRlbXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSWNvbiB0byBkaXNwbGF5IG9uIHRoZSBkcm9wZG93biBidXR0b25cbiAgICAgKiBAZGVmYXVsdCAndHJhbnNsYXRlJ1xuICAgICAqL1xuICAgIEBJbnB1dCgpIGJ1dHRvbkljb246IHN0cmluZyA9ICd0cmFuc2xhdGUnO1xuXG4gICAgLyoqXG4gICAgICogSWNvbiBwYWNrIGZvciB0aGUgYnV0dG9uIGljb25cbiAgICAgKiBAZGVmYXVsdCAnc2NsLWNoZWNrYm94LWRyb3Bkb3duLWljb24nXG4gICAgICovXG4gICAgQElucHV0KCkgYnV0dG9uSWNvblBhY2s6IHN0cmluZyA9ICdzY2wtY2hlY2tib3gtZHJvcGRvd24taWNvbic7XG5cbiAgICAvKipcbiAgICAgKiBUaXRsZSBkaXNwbGF5ZWQgd2hlbiBubyBpdGVtcyBhcmUgc2VsZWN0ZWQgb3IgYXMgZHJvcGRvd24gaGVhZGVyXG4gICAgICogQGRlZmF1bHQgJ1NlbGVjdCBJdGVtJ1xuICAgICAqL1xuICAgIEBJbnB1dCgpIGRyb3Bkb3duVGl0bGU6IHN0cmluZyA9ICdTZWxlY3QgSXRlbSc7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBuYW1lIHRvIGRpc3BsYXkgZnJvbSBlYWNoIGl0ZW1cbiAgICAgKiBAZGVmYXVsdCAnbGFiZWwnXG4gICAgICovXG4gICAgQElucHV0KCkgZGlzcGxheVByb3BlcnR5OiBrZXlvZiBUIHwgc3RyaW5nID0gJ2xhYmVsJztcblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgbXVsdGlwbGUgaXRlbXMgY2FuIGJlIHNlbGVjdGVkXG4gICAgICogQGRlZmF1bHQgdHJ1ZVxuICAgICAqL1xuICAgIEBJbnB1dCgpIG11bHRpU2VsZWN0OiBib29sZWFuID0gdHJ1ZTtcblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdG8gc2hvdyBsb2FkaW5nIHNwaW5uZXJcbiAgICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgICAqL1xuICAgIEBJbnB1dCgpIGxvYWRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIHByaXZhdGUgX2FsbG93RW1wdHkgPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICogV2hldGhlciB0byBhbGxvdyBubyBpdGVtcyB0byBiZSBzZWxlY3RlZFxuICAgICAqIElmIGZhbHNlLCB0aGUgZmlyc3QgaXRlbSB3aWxsIGJlIHNlbGVjdGVkIGJ5IGRlZmF1bHQgd2hlbiBubyBzZWxlY3Rpb24gZXhpc3RzXG4gICAgICogQGRlZmF1bHQgdHJ1ZVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IGFsbG93RW1wdHkodmFsdWU6IHN0cmluZyB8IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fYWxsb3dFbXB0eSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIGdldCBhbGxvd0VtcHR5KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fYWxsb3dFbXB0eTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9zZWxlY3RBbGxCeURlZmF1bHQgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdG8gc2VsZWN0IGFsbCBpdGVtcyBieSBkZWZhdWx0IHdoZW4gaXRlbXMgYXJlIGxvYWRlZFxuICAgICAqIEBkZWZhdWx0IGZhbHNlXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgc2VsZWN0QWxsQnlEZWZhdWx0KHZhbHVlOiBzdHJpbmcgfCBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX3NlbGVjdEFsbEJ5RGVmYXVsdCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIGdldCBzZWxlY3RBbGxCeURlZmF1bHQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zZWxlY3RBbGxCeURlZmF1bHQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSW50ZXJuYWwgZm9ybSBmb3IgdHJhY2tpbmcgc2VsZWN0ZWQgaXRlbXNcbiAgICAgKi9cbiAgICBmb3JtOiBGb3JtR3JvdXA7XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIGFuIGluc3RhbmNlIG9mIFNjbENoZWNrYm94RHJvcGRvd25Db21wb25lbnQuXG4gICAgICogQHBhcmFtIGZiIC0gQW5ndWxhciBGb3JtQnVpbGRlciBmb3IgY3JlYXRpbmcgdGhlIGludGVybmFsIGZvcm1cbiAgICAgKiBAcGFyYW0gaWNvbkxpYnJhcmllcyAtIE5iSWNvbkxpYnJhcmllcyBzZXJ2aWNlIHRvIHJlZ2lzdGVyIGljb24gcGFja3NcbiAgICAgKi9cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBmYjogRm9ybUJ1aWxkZXIsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgaWNvbkxpYnJhcmllczogTmJJY29uTGlicmFyaWVzXG4gICAgKSB7XG4gICAgICAgIHRoaXMuaWNvbkxpYnJhcmllcy5yZWdpc3RlclN2Z1BhY2soJ3NjbC1jaGVja2JveC1kcm9wZG93bi1pY29uJywgU2NsQ2hlY2tib3hEcm9wZG93bkljb24pO1xuXG4gICAgICAgIHRoaXMuZm9ybSA9IHRoaXMuZmIuZ3JvdXAoe1xuICAgICAgICAgICAgc2VsZWN0ZWRJdGVtczogW251bGxdLFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBudW1iZXIgb2YgY3VycmVudGx5IHNlbGVjdGVkIGl0ZW1zXG4gICAgICovXG4gICAgZ2V0IHNlbGVjdGVkQ291bnQoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybS5nZXQoJ3NlbGVjdGVkSXRlbXMnKT8udmFsdWU/Lmxlbmd0aCB8fCAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdGhlIGRpc3BsYXkgbGFiZWwgZm9yIHRoZSBkcm9wZG93biBidXR0b24gYmFzZWQgb24gc2VsZWN0aW9uXG4gICAgICogLSBJZiBvbmUgaXRlbSBpcyBzZWxlY3RlZCwgc2hvd3MgdGhhdCBpdGVtJ3MgZGlzcGxheSBwcm9wZXJ0eVxuICAgICAqIC0gSWYgbXVsdGlwbGUgaXRlbXMgYXJlIHNlbGVjdGVkLCBzaG93cyB0aGUgY291bnRcbiAgICAgKiAtIElmIG5vIGl0ZW1zIGFyZSBzZWxlY3RlZCwgc2hvd3MgdGhlIGRyb3Bkb3duIHRpdGxlXG4gICAgICovXG4gICAgZ2V0IHNlbGVjdGVkTGFiZWwoKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWQ6IFRbXSA9IHRoaXMuZm9ybS5nZXQoJ3NlbGVjdGVkSXRlbXMnKT8udmFsdWU7XG4gICAgICAgIGlmICh0aGlzLnNlbGVjdGVkQ291bnQgPT09IDEpIHtcbiAgICAgICAgICAgIHJldHVybiBzZWxlY3RlZFswXT8uW3RoaXMuZGlzcGxheVByb3BlcnR5IGFzIGtleW9mIFRdPy50b1N0cmluZygpIHx8IHRoaXMuZHJvcGRvd25UaXRsZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gYCR7dGhpcy5zZWxlY3RlZENvdW50fSBpdGVtcyBzZWxlY3RlZGA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVXBkYXRlcyB0aGUgc2VsZWN0aW9uIHN0YXRlIG9mIGFuIGl0ZW1cbiAgICAgKiBAcGFyYW0gaXRlbSAtIFRoZSBpdGVtIHRvIHVwZGF0ZVxuICAgICAqIEBwYXJhbSBjaGVja2VkIC0gV2hldGhlciB0aGUgaXRlbSBzaG91bGQgYmUgc2VsZWN0ZWQgKHRydWUpIG9yIHVuc2VsZWN0ZWQgKGZhbHNlKVxuICAgICAqL1xuICAgIHVwZGF0ZVNlbGVjdGlvbihpdGVtOiBULCBjaGVja2VkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLmZvcm0uZ2V0KCdzZWxlY3RlZEl0ZW1zJyk7XG4gICAgICAgIGxldCBjdXJyZW50U2VsZWN0aW9uOiBUW10gPSBbLi4uKGNvbnRyb2w/LnZhbHVlIHx8IFtdKV07XG5cbiAgICAgICAgaWYgKGNoZWNrZWQpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5pc1NlbGVjdGVkKGl0ZW0pKSB7XG4gICAgICAgICAgICAgICAgaWYgKCF0aGlzLm11bHRpU2VsZWN0KSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIEZvciBzaW5nbGUgc2VsZWN0LCByZXBsYWNlIHRoZSBlbnRpcmUgc2VsZWN0aW9uXG4gICAgICAgICAgICAgICAgICAgIGNvbnRyb2w/LnNldFZhbHVlKFtpdGVtXSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcy5lbWl0KFtpdGVtXSk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY3VycmVudFNlbGVjdGlvbi5wdXNoKGl0ZW0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8gUmVtb3ZlIHRoZSBpdGVtIGZyb20gc2VsZWN0aW9uXG4gICAgICAgICAgICBjdXJyZW50U2VsZWN0aW9uID0gY3VycmVudFNlbGVjdGlvbi5maWx0ZXIoaSA9PiBpLmlkICE9PSBpdGVtLmlkKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIElmIGVtcHR5IHNlbGVjdGlvbiBpcyBub3QgYWxsb3dlZCBhbmQgd2UgaGF2ZSBpdGVtcywgc2VsZWN0IHRoZSBmaXJzdCBvbmVcbiAgICAgICAgaWYgKGN1cnJlbnRTZWxlY3Rpb24ubGVuZ3RoID09PSAwICYmICF0aGlzLmFsbG93RW1wdHkgJiYgdGhpcy5pdGVtcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBjdXJyZW50U2VsZWN0aW9uLnB1c2godGhpcy5pdGVtc1swXSk7XG4gICAgICAgIH1cblxuICAgICAgICBjb250cm9sPy5zZXRWYWx1ZShjdXJyZW50U2VsZWN0aW9uKTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zLmVtaXQoY3VycmVudFNlbGVjdGlvbik7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2tzIGlmIGFuIGl0ZW0gaXMgY3VycmVudGx5IHNlbGVjdGVkXG4gICAgICogQHBhcmFtIGl0ZW0gLSBUaGUgaXRlbSB0byBjaGVja1xuICAgICAqIEByZXR1cm5zIFRydWUgaWYgdGhlIGl0ZW0gaXMgc2VsZWN0ZWQsIGZhbHNlIG90aGVyd2lzZVxuICAgICAqL1xuICAgIGlzU2VsZWN0ZWQoaXRlbTogVCk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCBjdXJyZW50U2VsZWN0aW9uOiBUW10gPSB0aGlzLmZvcm0uZ2V0KCdzZWxlY3RlZEl0ZW1zJyk/LnZhbHVlIHx8IFtdO1xuICAgICAgICByZXR1cm4gY3VycmVudFNlbGVjdGlvbi5zb21lKChpOiBUKSA9PiBpLmlkID09PSBpdGVtLmlkKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBEZXRlcm1pbmVzIGlmIGFuIGl0ZW0gc2hvdWxkIGJlIGRpc2FibGVkXG4gICAgICogV2hlbiBhbGxvd0VtcHR5IGlzIGZhbHNlIGFuZCB0aGVyZSdzIG9ubHkgb25lIHNlbGVjdGVkIGl0ZW0sXG4gICAgICogZmlyc3QgaXRlbSBjYW5ub3QgYmUgZGVzZWxlY3RlZFxuICAgICAqXG4gICAgICogQHBhcmFtIGl0ZW0gLSBUaGUgaXRlbSB0byBjaGVja1xuICAgICAqIEByZXR1cm5zIFRydWUgaWYgdGhlIGl0ZW0gc2hvdWxkIGJlIGRpc2FibGVkLCBmYWxzZSBvdGhlcndpc2VcbiAgICAgKi9cbiAgICBpc0Rpc2FibGVkKGl0ZW06IFQpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgeyBhbGxvd0VtcHR5LCBzZWxlY3RlZENvdW50LCBpdGVtcywgZm9ybSB9ID0gdGhpcztcbiAgICAgICAgY29uc3QgZmlyc3RJdGVtID0gaXRlbXNbMF07XG4gICAgICAgIGNvbnN0IHNlbGVjdGVkSXRlbXM6IFRbXSA9IGZvcm0uZ2V0KCdzZWxlY3RlZEl0ZW1zJyk/LnZhbHVlIHx8IFtdO1xuXG4gICAgICAgIGlmIChhbGxvd0VtcHR5KSByZXR1cm4gZmFsc2U7XG4gICAgICAgIGlmIChzZWxlY3RlZENvdW50ICE9PSAxKSByZXR1cm4gZmFsc2U7XG4gICAgICAgIGlmIChpdGVtLmlkICE9PSBmaXJzdEl0ZW0/LmlkKSByZXR1cm4gZmFsc2U7XG5cbiAgICAgICAgcmV0dXJuIHNlbGVjdGVkSXRlbXMuaW5jbHVkZXMoZmlyc3RJdGVtKTtcbiAgICB9XG59XG4iLCI8c2NsLWNvbnRleHQtbWVudSBwb3BvdmVyUGxhY2VtZW50PVwidG9wXCI+XG4gICAgPGJ1dHRvbiBuYkJ1dHRvbiBvdXRsaW5lIFtuYlNwaW5uZXJdPVwibG9hZGluZ1wiIG5iU3Bpbm5lclN0YXR1cz1cInByaW1hcnlcIj5cbiAgICAgICAgPG5iLWljb24gKm5nSWY9XCIhbG9hZGluZ1wiIFtpY29uXT1cImJ1dHRvbkljb25cIiBbcGFja109XCJidXR0b25JY29uUGFja1wiPjwvbmItaWNvbj5cblxuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJzZWxlY3RlZENvdW50XCI+XG4gICAgICAgICAgICA8c3BhbiAqbmdTd2l0Y2hDYXNlPVwiMFwiPnt7IGRyb3Bkb3duVGl0bGUgfX08L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiAqbmdTd2l0Y2hDYXNlPVwiMVwiPnt7IHNlbGVjdGVkTGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiAqbmdTd2l0Y2hEZWZhdWx0Pnt7IHNlbGVjdGVkTGFiZWwgfX08L3NwYW4+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxuYi1pY29uICpuZ0lmPVwiIWxvYWRpbmdcIiBpY29uPVwiY2hldnJvbi1kb3duXCIgW3BhY2tdPVwiYnV0dG9uSWNvblBhY2tcIj48L25iLWljb24+XG4gICAgPC9idXR0b24+XG5cbiAgICA8c2NsLWNvbnRleHQtbWVudS1jb250ZW50IGNsYXNzPVwic2NsLWNoZWNrYm94LWRyb3Bkb3duX19jb250ZW50XCI+XG4gICAgICAgIDxuYi1jaGVja2JveCAqbmdGb3I9XCJsZXQgaXRlbSBvZiBpdGVtc1wiIFtjaGVja2VkXT1cImlzU2VsZWN0ZWQoaXRlbSlcIiAoY2hlY2tlZENoYW5nZSk9XCJ1cGRhdGVTZWxlY3Rpb24oaXRlbSwgJGV2ZW50KVwiIFtkaXNhYmxlZF09XCJpc0Rpc2FibGVkKGl0ZW0pXCI+XG4gICAgICAgICAgICB7eyBpdGVtW2Rpc3BsYXlQcm9wZXJ0eV0gfX1cbiAgICAgICAgPC9uYi1jaGVja2JveD5cbiAgICA8L3NjbC1jb250ZXh0LW1lbnUtY29udGVudD5cbjwvc2NsLWNvbnRleHQtbWVudT5cbiJdfQ==
|
|
232
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3gtZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3BhY2thZ2VzL2NoZWNrYm94LWRyb3Bkb3duL2NoZWNrYm94LWRyb3Bkb3duLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9wYWNrYWdlcy9jaGVja2JveC1kcm9wZG93bi9jaGVja2JveC1kcm9wZG93bi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQTBCLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0UsT0FBTyxFQUFFLGNBQWMsRUFBRSxnQkFBZ0IsRUFBbUIsWUFBWSxFQUFFLGVBQWUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWxILE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1REFBdUQsQ0FBQzs7Ozs7QUFrQjlGOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUNILE1BU2EsNEJBQTRCO0lBUXJDOzs7T0FHRztJQUNILElBQStCLEtBQUssQ0FBQyxLQUFVO1FBQzNDLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBRXBCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxFQUFFLEtBQUssSUFBSSxFQUFFLENBQUM7UUFFN0QsSUFBSSxJQUFJLENBQUMsbUJBQW1CLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3BELG1EQUFtRDtZQUNuRCxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO1lBQzNELElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztTQUM3QzthQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxJQUFJLFFBQVEsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUM1RSwwRUFBMEU7WUFDMUUsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNuQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1lBQ3hELElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztTQUMxQztJQUNMLENBQUM7SUFDRCxJQUFJLEtBQUs7UUFDTCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQXdDRDs7OztPQUlHO0lBQ0gsSUFDSSxVQUFVLENBQUMsS0FBdUI7UUFDbEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBQ0QsSUFBSSxVQUFVO1FBQ1YsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzVCLENBQUM7SUFJRDs7O09BR0c7SUFDSCxJQUNJLGtCQUFrQixDQUFDLEtBQXVCO1FBQzFDLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBQ0QsSUFBSSxrQkFBa0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsbUJBQW1CLENBQUM7SUFDcEMsQ0FBQztJQU9EOzs7O09BSUc7SUFDSCxZQUNxQixFQUFlLEVBQ2YsYUFBOEI7UUFEOUIsT0FBRSxHQUFGLEVBQUUsQ0FBYTtRQUNmLGtCQUFhLEdBQWIsYUFBYSxDQUFpQjtRQTVHbkQ7O1dBRUc7UUFDTyxrQkFBYSxHQUFzQixJQUFJLFlBQVksRUFBTyxDQUFDO1FBRTdELFdBQU0sR0FBUSxFQUFFLENBQUM7UUEwQnpCOzs7V0FHRztRQUNNLGVBQVUsR0FBVyxXQUFXLENBQUM7UUFFMUM7OztXQUdHO1FBQ00sbUJBQWMsR0FBVyw0QkFBNEIsQ0FBQztRQUUvRDs7O1dBR0c7UUFDTSxrQkFBYSxHQUFXLGFBQWEsQ0FBQztRQUUvQzs7O1dBR0c7UUFDTSxvQkFBZSxHQUFxQixPQUFPLENBQUM7UUFFckQ7OztXQUdHO1FBQ00sZ0JBQVcsR0FBWSxJQUFJLENBQUM7UUFFckM7OztXQUdHO1FBQ00sWUFBTyxHQUFZLEtBQUssQ0FBQztRQUUxQixnQkFBVyxHQUFHLElBQUksQ0FBQztRQWVuQix3QkFBbUIsR0FBRyxLQUFLLENBQUM7UUE0QmhDLElBQUksQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLDRCQUE0QixFQUFFLHVCQUF1QixDQUFDLENBQUM7UUFFMUYsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUN0QixhQUFhLEVBQUUsQ0FBQyxJQUFJLENBQUM7U0FDeEIsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxhQUFhO1FBQ2IsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxJQUFJLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxJQUFJLGFBQWE7UUFDYixNQUFNLFFBQVEsR0FBUSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsRUFBRSxLQUFLLENBQUM7UUFDNUQsSUFBSSxJQUFJLENBQUMsYUFBYSxLQUFLLENBQUMsRUFBRTtZQUMxQixPQUFPLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxlQUEwQixDQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQztTQUMzRjtRQUNELE9BQU8sR0FBRyxJQUFJLENBQUMsYUFBYSxpQkFBaUIsQ0FBQztJQUNsRCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILGVBQWUsQ0FBQyxJQUFPLEVBQUUsT0FBZ0I7UUFDckMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDL0MsSUFBSSxnQkFBZ0IsR0FBUSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsS0FBSyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFFeEQsSUFBSSxPQUFPLEVBQUU7WUFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRTtnQkFDeEIsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUU7b0JBQ25CLGtEQUFrRDtvQkFDbEQsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7b0JBQzFCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztvQkFDaEMsT0FBTztpQkFDVjtnQkFDRCxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDL0I7U0FDSjthQUFNO1lBQ0gsaUNBQWlDO1lBQ2pDLGdCQUFnQixHQUFHLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ3JFO1FBRUQsNEVBQTRFO1FBQzVFLElBQUksZ0JBQWdCLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQzVFLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDeEM7UUFFRCxPQUFPLEVBQUUsUUFBUSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDcEMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFVBQVUsQ0FBQyxJQUFPO1FBQ2QsTUFBTSxnQkFBZ0IsR0FBUSxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsRUFBRSxLQUFLLElBQUksRUFBRSxDQUFDO1FBQzFFLE9BQU8sZ0JBQWdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNILFVBQVUsQ0FBQyxJQUFPO1FBQ2QsTUFBTSxFQUFFLFVBQVUsRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQztRQUN4RCxNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDM0IsTUFBTSxhQUFhLEdBQVEsSUFBSSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsRUFBRSxLQUFLLElBQUksRUFBRSxDQUFDO1FBRWxFLElBQUksVUFBVTtZQUFFLE9BQU8sS0FBSyxDQUFDO1FBQzdCLElBQUksYUFBYSxLQUFLLENBQUM7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUN0QyxJQUFJLElBQUksQ0FBQyxFQUFFLEtBQUssU0FBUyxFQUFFLEVBQUU7WUFBRSxPQUFPLEtBQUssQ0FBQztRQUU1QyxPQUFPLGFBQWEsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDN0MsQ0FBQzsrR0F4TVEsNEJBQTRCO21HQUE1Qiw0QkFBNEIsaWNDbkR6Qyw2OEJBbUJBLDJDRHlCYyxZQUFZLDJnQkFBRSxtQkFBbUIsK0JBQUUsY0FBYywwRkFBRSxZQUFZLDhKQUFFLHFCQUFxQixvRUFBRSxnQkFBZ0Isb01BQUUsY0FBYywrTUFBRSxlQUFlOztTQU8xSSw0QkFBNEI7NEZBQTVCLDRCQUE0QjtrQkFUeEMsU0FBUztpQ0FDTSxJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsY0FBYyxFQUFFLFlBQVksRUFBRSxxQkFBcUIsRUFBRSxnQkFBZ0IsRUFBRSxjQUFjLEVBQUUsZUFBZSxDQUFDLFlBQzFJLHVCQUF1QixRQUUzQjt3QkFDRixLQUFLLEVBQUUsdUJBQXVCO3FCQUNqQztnSUFNUyxhQUFhO3NCQUF0QixNQUFNO2dCQVF3QixLQUFLO3NCQUFuQyxLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkF3QmhCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBTUcsY0FBYztzQkFBdEIsS0FBSztnQkFNRyxhQUFhO3NCQUFyQixLQUFLO2dCQU1HLGVBQWU7c0JBQXZCLEtBQUs7Z0JBTUcsV0FBVztzQkFBbkIsS0FBSztnQkFNRyxPQUFPO3NCQUFmLEtBQUs7Z0JBVUYsVUFBVTtzQkFEYixLQUFLO2dCQWVGLGtCQUFrQjtzQkFEckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE5iQnV0dG9uTW9kdWxlLCBOYkNoZWNrYm94TW9kdWxlLCBOYkljb25MaWJyYXJpZXMsIE5iSWNvbk1vZHVsZSwgTmJTcGlubmVyTW9kdWxlIH0gZnJvbSAnQG5lYnVsYXIvdGhlbWUnO1xuXG5pbXBvcnQgeyBTY2xDb250ZXh0TWVudSB9IGZyb20gJy4uL2Ryb3Bkb3duL2NvbnRleHQtbWVudSc7XG5pbXBvcnQgeyBTY2xDaGVja2JveERyb3Bkb3duSWNvbiB9IGZyb20gJy4vY2hlY2tib3gtZHJvcGRvd24uaWNvbic7XG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgU2NsQ29udGV4dE1lbnVDb250ZW50IH0gZnJvbSAnLi4vZHJvcGRvd24vY29udGV4dC1tZW51LWNvbnRlbnQvY29udGV4dC1tZW51LWNvbnRlbnQnO1xuXG4vKipcbiAqIEludGVyZmFjZSBmb3IgaXRlbXMgdGhhdCBjYW4gYmUgc2VsZWN0ZWQgaW4gdGhlIGRyb3Bkb3duXG4gKiBAaW50ZXJmYWNlIFNlbGVjdGFibGVJdGVtXG4gKiBAcHJvcGVydHkge251bWJlciB8IHN0cmluZ30gaWQgLSBVbmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIGl0ZW1cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBsYWJlbCAtIERpc3BsYXkgdGV4dCBmb3IgdGhlIGl0ZW1cbiAqIEBwcm9wZXJ0eSB7c3RyaW5nfSBbY29kZV0gLSBPcHRpb25hbCBjb2RlIGlkZW50aWZpZXIgZm9yIHRoZSBpdGVtXG4gKiBAcHJvcGVydHkge2FueX0gW2tleTogc3RyaW5nXSAtIEFkZGl0aW9uYWwgcHJvcGVydGllcyBjYW4gYmUgaW5jbHVkZWRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZWxlY3RhYmxlSXRlbSB7XG4gICAgaWQ6IG51bWJlciB8IHN0cmluZztcbiAgICBsYWJlbDogc3RyaW5nO1xuICAgIGNvZGU/OiBzdHJpbmc7XG5cbiAgICBba2V5OiBzdHJpbmddOiBhbnk7XG59XG5cbi8qKlxuICogQSB2ZXJzYXRpbGUgY2hlY2tib3ggZHJvcGRvd24gY29tcG9uZW50IHRoYXQgc3VwcG9ydHMgc2luZ2xlIGFuZCBtdWx0aXBsZSBzZWxlY3Rpb24uXG4gKlxuICogQGV4YW1wbGVcbiAqIEJhc2ljIHVzYWdlOlxuICogYGBgaHRtbFxuICogPHNjbC1jaGVja2JveC1kcm9wZG93blxuICogICBbaXRlbXNdPVwiaXRlbXNcIlxuICogICBbbXVsdGlTZWxlY3RdPVwidHJ1ZVwiXG4gKiAgIFtkaXNwbGF5UHJvcGVydHldPVwiJ25hbWUnXCJcbiAqICAgKHNlbGVjdGVkSXRlbXMpPVwib25TZWxlY3Rpb25DaGFuZ2UoJGV2ZW50KVwiPlxuICogPC9zY2wtY2hlY2tib3gtZHJvcGRvd24+XG4gKiBgYGBcbiAqXG4gKiBAdGVtcGxhdGUgVCBUeXBlIG9mIGl0ZW1zIGluIHRoZSBkcm9wZG93biwgbXVzdCBleHRlbmQgU2VsZWN0YWJsZUl0ZW1cbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBTY2xDb250ZXh0TWVudSwgTmJJY29uTW9kdWxlLCBTY2xDb250ZXh0TWVudUNvbnRlbnQsIE5iQ2hlY2tib3hNb2R1bGUsIE5iQnV0dG9uTW9kdWxlLCBOYlNwaW5uZXJNb2R1bGVdLFxuICAgIHNlbGVjdG9yOiAnc2NsLWNoZWNrYm94LWRyb3Bkb3duJyxcbiAgICB0ZW1wbGF0ZVVybDogJ2NoZWNrYm94LWRyb3Bkb3duLmNvbXBvbmVudC5odG1sJyxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAnc2NsLWNoZWNrYm94LWRyb3Bkb3duJyxcbiAgICB9LFxufSlcbmV4cG9ydCBjbGFzcyBTY2xDaGVja2JveERyb3Bkb3duQ29tcG9uZW50PFQgZXh0ZW5kcyBTZWxlY3RhYmxlSXRlbT4ge1xuICAgIC8qKlxuICAgICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiBzZWxlY3Rpb24gY2hhbmdlcyB3aXRoIHRoZSBjdXJyZW50IGxpc3Qgb2Ygc2VsZWN0ZWQgaXRlbXNcbiAgICAgKi9cbiAgICBAT3V0cHV0KCkgc2VsZWN0ZWRJdGVtczogRXZlbnRFbWl0dGVyPFRbXT4gPSBuZXcgRXZlbnRFbWl0dGVyPFRbXT4oKTtcblxuICAgIHByaXZhdGUgX2l0ZW1zOiBUW10gPSBbXTtcblxuICAgIC8qKlxuICAgICAqIFRoZSBsaXN0IG9mIHNlbGVjdGFibGUgaXRlbXMgdG8gZGlzcGxheSBpbiB0aGUgZHJvcGRvd25cbiAgICAgKiBAcmVxdWlyZWRcbiAgICAgKi9cbiAgICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBzZXQgaXRlbXModmFsdWU6IFRbXSkge1xuICAgICAgICB0aGlzLl9pdGVtcyA9IHZhbHVlO1xuXG4gICAgICAgIGNvbnN0IHNlbGVjdGVkID0gdGhpcy5mb3JtLmdldCgnc2VsZWN0ZWRJdGVtcycpPy52YWx1ZSA/PyBbXTtcblxuICAgICAgICBpZiAodGhpcy5fc2VsZWN0QWxsQnlEZWZhdWx0ICYmIHRoaXMuX2l0ZW1zLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIC8vIFNlbGVjdCBhbGwgaXRlbXMgd2hlbiBzZWxlY3RBbGxCeURlZmF1bHQgaXMgdHJ1ZVxuICAgICAgICAgICAgdGhpcy5mb3JtLmdldCgnc2VsZWN0ZWRJdGVtcycpPy5zZXRWYWx1ZShbLi4udGhpcy5faXRlbXNdKTtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcy5lbWl0KFsuLi50aGlzLl9pdGVtc10pO1xuICAgICAgICB9IGVsc2UgaWYgKCF0aGlzLmFsbG93RW1wdHkgJiYgc2VsZWN0ZWQubGVuZ3RoID09PSAwICYmIHRoaXMuX2l0ZW1zLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIC8vIE9ubHkgc2VsZWN0IGZpcnN0IGl0ZW0gaWYgYWxsb3dFbXB0eSBpcyBmYWxzZSBhbmQgbm8gaXRlbXMgYXJlIHNlbGVjdGVkXG4gICAgICAgICAgICBjb25zdCBkZWZhdWx0SXRlbSA9IHRoaXMuX2l0ZW1zWzBdO1xuICAgICAgICAgICAgdGhpcy5mb3JtLmdldCgnc2VsZWN0ZWRJdGVtcycpPy5zZXRWYWx1ZShbZGVmYXVsdEl0ZW1dKTtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcy5lbWl0KFtkZWZhdWx0SXRlbV0pO1xuICAgICAgICB9XG4gICAgfVxuICAgIGdldCBpdGVtcygpOiBUW10ge1xuICAgICAgICByZXR1cm4gdGhpcy5faXRlbXM7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSWNvbiB0byBkaXNwbGF5IG9uIHRoZSBkcm9wZG93biBidXR0b25cbiAgICAgKiBAZGVmYXVsdCAndHJhbnNsYXRlJ1xuICAgICAqL1xuICAgIEBJbnB1dCgpIGJ1dHRvbkljb246IHN0cmluZyA9ICd0cmFuc2xhdGUnO1xuXG4gICAgLyoqXG4gICAgICogSWNvbiBwYWNrIGZvciB0aGUgYnV0dG9uIGljb25cbiAgICAgKiBAZGVmYXVsdCAnc2NsLWNoZWNrYm94LWRyb3Bkb3duLWljb24nXG4gICAgICovXG4gICAgQElucHV0KCkgYnV0dG9uSWNvblBhY2s6IHN0cmluZyA9ICdzY2wtY2hlY2tib3gtZHJvcGRvd24taWNvbic7XG5cbiAgICAvKipcbiAgICAgKiBUaXRsZSBkaXNwbGF5ZWQgd2hlbiBubyBpdGVtcyBhcmUgc2VsZWN0ZWQgb3IgYXMgZHJvcGRvd24gaGVhZGVyXG4gICAgICogQGRlZmF1bHQgJ1NlbGVjdCBJdGVtJ1xuICAgICAqL1xuICAgIEBJbnB1dCgpIGRyb3Bkb3duVGl0bGU6IHN0cmluZyA9ICdTZWxlY3QgSXRlbSc7XG5cbiAgICAvKipcbiAgICAgKiBQcm9wZXJ0eSBuYW1lIHRvIGRpc3BsYXkgZnJvbSBlYWNoIGl0ZW1cbiAgICAgKiBAZGVmYXVsdCAnbGFiZWwnXG4gICAgICovXG4gICAgQElucHV0KCkgZGlzcGxheVByb3BlcnR5OiBrZXlvZiBUIHwgc3RyaW5nID0gJ2xhYmVsJztcblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgbXVsdGlwbGUgaXRlbXMgY2FuIGJlIHNlbGVjdGVkXG4gICAgICogQGRlZmF1bHQgdHJ1ZVxuICAgICAqL1xuICAgIEBJbnB1dCgpIG11bHRpU2VsZWN0OiBib29sZWFuID0gdHJ1ZTtcblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdG8gc2hvdyBsb2FkaW5nIHNwaW5uZXJcbiAgICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgICAqL1xuICAgIEBJbnB1dCgpIGxvYWRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIHByaXZhdGUgX2FsbG93RW1wdHkgPSB0cnVlO1xuXG4gICAgLyoqXG4gICAgICogV2hldGhlciB0byBhbGxvdyBubyBpdGVtcyB0byBiZSBzZWxlY3RlZFxuICAgICAqIElmIGZhbHNlLCB0aGUgZmlyc3QgaXRlbSB3aWxsIGJlIHNlbGVjdGVkIGJ5IGRlZmF1bHQgd2hlbiBubyBzZWxlY3Rpb24gZXhpc3RzXG4gICAgICogQGRlZmF1bHQgdHJ1ZVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IGFsbG93RW1wdHkodmFsdWU6IHN0cmluZyB8IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fYWxsb3dFbXB0eSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIGdldCBhbGxvd0VtcHR5KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fYWxsb3dFbXB0eTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9zZWxlY3RBbGxCeURlZmF1bHQgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdG8gc2VsZWN0IGFsbCBpdGVtcyBieSBkZWZhdWx0IHdoZW4gaXRlbXMgYXJlIGxvYWRlZFxuICAgICAqIEBkZWZhdWx0IGZhbHNlXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgc2VsZWN0QWxsQnlEZWZhdWx0KHZhbHVlOiBzdHJpbmcgfCBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX3NlbGVjdEFsbEJ5RGVmYXVsdCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIGdldCBzZWxlY3RBbGxCeURlZmF1bHQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zZWxlY3RBbGxCeURlZmF1bHQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSW50ZXJuYWwgZm9ybSBmb3IgdHJhY2tpbmcgc2VsZWN0ZWQgaXRlbXNcbiAgICAgKi9cbiAgICBmb3JtOiBGb3JtR3JvdXA7XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIGFuIGluc3RhbmNlIG9mIFNjbENoZWNrYm94RHJvcGRvd25Db21wb25lbnQuXG4gICAgICogQHBhcmFtIGZiIC0gQW5ndWxhciBGb3JtQnVpbGRlciBmb3IgY3JlYXRpbmcgdGhlIGludGVybmFsIGZvcm1cbiAgICAgKiBAcGFyYW0gaWNvbkxpYnJhcmllcyAtIE5iSWNvbkxpYnJhcmllcyBzZXJ2aWNlIHRvIHJlZ2lzdGVyIGljb24gcGFja3NcbiAgICAgKi9cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBmYjogRm9ybUJ1aWxkZXIsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgaWNvbkxpYnJhcmllczogTmJJY29uTGlicmFyaWVzXG4gICAgKSB7XG4gICAgICAgIHRoaXMuaWNvbkxpYnJhcmllcy5yZWdpc3RlclN2Z1BhY2soJ3NjbC1jaGVja2JveC1kcm9wZG93bi1pY29uJywgU2NsQ2hlY2tib3hEcm9wZG93bkljb24pO1xuXG4gICAgICAgIHRoaXMuZm9ybSA9IHRoaXMuZmIuZ3JvdXAoe1xuICAgICAgICAgICAgc2VsZWN0ZWRJdGVtczogW251bGxdLFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIHRoZSBudW1iZXIgb2YgY3VycmVudGx5IHNlbGVjdGVkIGl0ZW1zXG4gICAgICovXG4gICAgZ2V0IHNlbGVjdGVkQ291bnQoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZm9ybS5nZXQoJ3NlbGVjdGVkSXRlbXMnKT8udmFsdWU/Lmxlbmd0aCB8fCAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJldHVybnMgdGhlIGRpc3BsYXkgbGFiZWwgZm9yIHRoZSBkcm9wZG93biBidXR0b24gYmFzZWQgb24gc2VsZWN0aW9uXG4gICAgICogLSBJZiBvbmUgaXRlbSBpcyBzZWxlY3RlZCwgc2hvd3MgdGhhdCBpdGVtJ3MgZGlzcGxheSBwcm9wZXJ0eVxuICAgICAqIC0gSWYgbXVsdGlwbGUgaXRlbXMgYXJlIHNlbGVjdGVkLCBzaG93cyB0aGUgY291bnRcbiAgICAgKiAtIElmIG5vIGl0ZW1zIGFyZSBzZWxlY3RlZCwgc2hvd3MgdGhlIGRyb3Bkb3duIHRpdGxlXG4gICAgICovXG4gICAgZ2V0IHNlbGVjdGVkTGFiZWwoKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWQ6IFRbXSA9IHRoaXMuZm9ybS5nZXQoJ3NlbGVjdGVkSXRlbXMnKT8udmFsdWU7XG4gICAgICAgIGlmICh0aGlzLnNlbGVjdGVkQ291bnQgPT09IDEpIHtcbiAgICAgICAgICAgIHJldHVybiBzZWxlY3RlZFswXT8uW3RoaXMuZGlzcGxheVByb3BlcnR5IGFzIGtleW9mIFRdPy50b1N0cmluZygpIHx8IHRoaXMuZHJvcGRvd25UaXRsZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gYCR7dGhpcy5zZWxlY3RlZENvdW50fSBpdGVtcyBzZWxlY3RlZGA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVXBkYXRlcyB0aGUgc2VsZWN0aW9uIHN0YXRlIG9mIGFuIGl0ZW1cbiAgICAgKiBAcGFyYW0gaXRlbSAtIFRoZSBpdGVtIHRvIHVwZGF0ZVxuICAgICAqIEBwYXJhbSBjaGVja2VkIC0gV2hldGhlciB0aGUgaXRlbSBzaG91bGQgYmUgc2VsZWN0ZWQgKHRydWUpIG9yIHVuc2VsZWN0ZWQgKGZhbHNlKVxuICAgICAqL1xuICAgIHVwZGF0ZVNlbGVjdGlvbihpdGVtOiBULCBjaGVja2VkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLmZvcm0uZ2V0KCdzZWxlY3RlZEl0ZW1zJyk7XG4gICAgICAgIGxldCBjdXJyZW50U2VsZWN0aW9uOiBUW10gPSBbLi4uKGNvbnRyb2w/LnZhbHVlIHx8IFtdKV07XG5cbiAgICAgICAgaWYgKGNoZWNrZWQpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5pc1NlbGVjdGVkKGl0ZW0pKSB7XG4gICAgICAgICAgICAgICAgaWYgKCF0aGlzLm11bHRpU2VsZWN0KSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIEZvciBzaW5nbGUgc2VsZWN0LCByZXBsYWNlIHRoZSBlbnRpcmUgc2VsZWN0aW9uXG4gICAgICAgICAgICAgICAgICAgIGNvbnRyb2w/LnNldFZhbHVlKFtpdGVtXSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtcy5lbWl0KFtpdGVtXSk7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgY3VycmVudFNlbGVjdGlvbi5wdXNoKGl0ZW0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgLy8gUmVtb3ZlIHRoZSBpdGVtIGZyb20gc2VsZWN0aW9uXG4gICAgICAgICAgICBjdXJyZW50U2VsZWN0aW9uID0gY3VycmVudFNlbGVjdGlvbi5maWx0ZXIoaSA9PiBpLmlkICE9PSBpdGVtLmlkKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIElmIGVtcHR5IHNlbGVjdGlvbiBpcyBub3QgYWxsb3dlZCBhbmQgd2UgaGF2ZSBpdGVtcywgc2VsZWN0IHRoZSBmaXJzdCBvbmVcbiAgICAgICAgaWYgKGN1cnJlbnRTZWxlY3Rpb24ubGVuZ3RoID09PSAwICYmICF0aGlzLmFsbG93RW1wdHkgJiYgdGhpcy5pdGVtcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICBjdXJyZW50U2VsZWN0aW9uLnB1c2godGhpcy5pdGVtc1swXSk7XG4gICAgICAgIH1cblxuICAgICAgICBjb250cm9sPy5zZXRWYWx1ZShjdXJyZW50U2VsZWN0aW9uKTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZEl0ZW1zLmVtaXQoY3VycmVudFNlbGVjdGlvbik7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2tzIGlmIGFuIGl0ZW0gaXMgY3VycmVudGx5IHNlbGVjdGVkXG4gICAgICogQHBhcmFtIGl0ZW0gLSBUaGUgaXRlbSB0byBjaGVja1xuICAgICAqIEByZXR1cm5zIFRydWUgaWYgdGhlIGl0ZW0gaXMgc2VsZWN0ZWQsIGZhbHNlIG90aGVyd2lzZVxuICAgICAqL1xuICAgIGlzU2VsZWN0ZWQoaXRlbTogVCk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCBjdXJyZW50U2VsZWN0aW9uOiBUW10gPSB0aGlzLmZvcm0uZ2V0KCdzZWxlY3RlZEl0ZW1zJyk/LnZhbHVlIHx8IFtdO1xuICAgICAgICByZXR1cm4gY3VycmVudFNlbGVjdGlvbi5zb21lKChpOiBUKSA9PiBpLmlkID09PSBpdGVtLmlkKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBEZXRlcm1pbmVzIGlmIGFuIGl0ZW0gc2hvdWxkIGJlIGRpc2FibGVkXG4gICAgICogV2hlbiBhbGxvd0VtcHR5IGlzIGZhbHNlIGFuZCB0aGVyZSdzIG9ubHkgb25lIHNlbGVjdGVkIGl0ZW0sXG4gICAgICogZmlyc3QgaXRlbSBjYW5ub3QgYmUgZGVzZWxlY3RlZFxuICAgICAqXG4gICAgICogQHBhcmFtIGl0ZW0gLSBUaGUgaXRlbSB0byBjaGVja1xuICAgICAqIEByZXR1cm5zIFRydWUgaWYgdGhlIGl0ZW0gc2hvdWxkIGJlIGRpc2FibGVkLCBmYWxzZSBvdGhlcndpc2VcbiAgICAgKi9cbiAgICBpc0Rpc2FibGVkKGl0ZW06IFQpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgeyBhbGxvd0VtcHR5LCBzZWxlY3RlZENvdW50LCBpdGVtcywgZm9ybSB9ID0gdGhpcztcbiAgICAgICAgY29uc3QgZmlyc3RJdGVtID0gaXRlbXNbMF07XG4gICAgICAgIGNvbnN0IHNlbGVjdGVkSXRlbXM6IFRbXSA9IGZvcm0uZ2V0KCdzZWxlY3RlZEl0ZW1zJyk/LnZhbHVlIHx8IFtdO1xuXG4gICAgICAgIGlmIChhbGxvd0VtcHR5KSByZXR1cm4gZmFsc2U7XG4gICAgICAgIGlmIChzZWxlY3RlZENvdW50ICE9PSAxKSByZXR1cm4gZmFsc2U7XG4gICAgICAgIGlmIChpdGVtLmlkICE9PSBmaXJzdEl0ZW0/LmlkKSByZXR1cm4gZmFsc2U7XG5cbiAgICAgICAgcmV0dXJuIHNlbGVjdGVkSXRlbXMuaW5jbHVkZXMoZmlyc3RJdGVtKTtcbiAgICB9XG59XG4iLCI8c2NsLWNvbnRleHQtbWVudSBwb3BvdmVyUGxhY2VtZW50PVwidG9wXCI+XG4gICAgPGJ1dHRvbiBuYkJ1dHRvbiBvdXRsaW5lIFtuYlNwaW5uZXJdPVwibG9hZGluZ1wiIG5iU3Bpbm5lclN0YXR1cz1cInByaW1hcnlcIj5cbiAgICAgICAgPG5iLWljb24gKm5nSWY9XCIhbG9hZGluZ1wiIFtpY29uXT1cImJ1dHRvbkljb25cIiBbcGFja109XCJidXR0b25JY29uUGFja1wiPjwvbmItaWNvbj5cblxuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJzZWxlY3RlZENvdW50XCI+XG4gICAgICAgICAgICA8c3BhbiAqbmdTd2l0Y2hDYXNlPVwiMFwiPnt7IGRyb3Bkb3duVGl0bGUgfX08L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiAqbmdTd2l0Y2hDYXNlPVwiMVwiPnt7IHNlbGVjdGVkTGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgICA8c3BhbiAqbmdTd2l0Y2hEZWZhdWx0Pnt7IHNlbGVjdGVkTGFiZWwgfX08L3NwYW4+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxuYi1pY29uICpuZ0lmPVwiIWxvYWRpbmdcIiBpY29uPVwiY2hldnJvbi1kb3duXCIgW3BhY2tdPVwiYnV0dG9uSWNvblBhY2tcIj48L25iLWljb24+XG4gICAgPC9idXR0b24+XG5cbiAgICA8c2NsLWNvbnRleHQtbWVudS1jb250ZW50IGNsYXNzPVwic2NsLWNoZWNrYm94LWRyb3Bkb3duX19jb250ZW50XCI+XG4gICAgICAgIDxuYi1jaGVja2JveCAqbmdGb3I9XCJsZXQgaXRlbSBvZiBpdGVtc1wiIFtjaGVja2VkXT1cImlzU2VsZWN0ZWQoaXRlbSlcIiAoY2hlY2tlZENoYW5nZSk9XCJ1cGRhdGVTZWxlY3Rpb24oaXRlbSwgJGV2ZW50KVwiIFtkaXNhYmxlZF09XCJpc0Rpc2FibGVkKGl0ZW0pXCI+XG4gICAgICAgICAgICB7eyBpdGVtW2Rpc3BsYXlQcm9wZXJ0eV0gfX1cbiAgICAgICAgPC9uYi1jaGVja2JveD5cbiAgICA8L3NjbC1jb250ZXh0LW1lbnUtY29udGVudD5cbjwvc2NsLWNvbnRleHQtbWVudT5cbiJdfQ==
|
|
@@ -21,11 +21,11 @@ class SclClipBoardComponent {
|
|
|
21
21
|
heading: 'Copied to clipboard',
|
|
22
22
|
});
|
|
23
23
|
}
|
|
24
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.
|
|
25
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.
|
|
24
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SclClipBoardComponent, deps: [{ token: i1.NbIconLibraries }, { token: i2.Clipboard }, { token: i3.SclAlertService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
25
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SclClipBoardComponent, isStandalone: true, selector: "scl-clipboard", inputs: { content: "content" }, host: { classAttribute: "scl-clipboard" }, ngImport: i0, template: "<div class=\"scl-clipboard__content\" #text>\n {{ content }}\n</div>\n<button nbButton ghost status=\"primary\" (click)=\"copy(text)\">\n <nb-icon icon=\"copy\" pack=\"scl-clipboard-icon\"> </nb-icon>\n</button>\n", dependencies: [{ kind: "ngmodule", type: NbIconModule }, { kind: "component", type: i1.NbIconComponent, selector: "nb-icon", inputs: ["icon", "pack", "options", "status", "config"] }, { kind: "ngmodule", type: NbButtonModule }, { kind: "component", type: i1.NbButtonComponent, selector: "button[nbButton],a[nbButton],input[type=\"button\"][nbButton],input[type=\"submit\"][nbButton]", inputs: ["hero"] }, { kind: "ngmodule", type: CommonModule }] }); }
|
|
26
26
|
}
|
|
27
27
|
export { SclClipBoardComponent };
|
|
28
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SclClipBoardComponent, decorators: [{
|
|
29
29
|
type: Component,
|
|
30
30
|
args: [{ selector: 'scl-clipboard', standalone: true, host: {
|
|
31
31
|
class: 'scl-clipboard',
|
|
@@ -33,4 +33,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
|
|
|
33
33
|
}], ctorParameters: function () { return [{ type: i1.NbIconLibraries }, { type: i2.Clipboard }, { type: i3.SclAlertService }]; }, propDecorators: { content: [{
|
|
34
34
|
type: Input
|
|
35
35
|
}] } });
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpcGJvYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWNrYWdlcy9jbGlwYm9hcmQvY2xpcGJvYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9wYWNrYWdlcy9jbGlwYm9hcmQvY2xpcGJvYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsY0FBYyxFQUFtQixZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUvRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7Ozs7QUFFckQsTUFTYSxxQkFBcUI7SUFHOUIsWUFDWSxhQUE4QixFQUM5QixTQUFvQixFQUNwQixZQUE2QjtRQUY3QixrQkFBYSxHQUFiLGFBQWEsQ0FBaUI7UUFDOUIsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUNwQixpQkFBWSxHQUFaLFlBQVksQ0FBaUI7UUFFckMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxlQUFlLENBQUMsb0JBQW9CLEVBQUUsaUJBQWlCLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBRUQsSUFBSSxDQUFDLEtBQWtCO1FBQ25CLE1BQU0sSUFBSSxHQUFXLEtBQUssQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDO1FBQzdDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzFDLElBQUksT0FBTztZQUNQLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDO2dCQUN0QixPQUFPLEVBQUUscUJBQXFCO2FBQ2pDLENBQUMsQ0FBQztJQUNYLENBQUM7K0dBbEJRLHFCQUFxQjttR0FBckIscUJBQXFCLG9KQ2hCbEMsNk5BTUEsMkNEUWMsWUFBWSw2SkFBRSxjQUFjLCtNQUFFLFlBQVk7O1NBRTNDLHFCQUFxQjs0RkFBckIscUJBQXFCO2tCQVRqQyxTQUFTOytCQUNJLGVBQWUsY0FDYixJQUFJLFFBRVY7d0JBQ0YsS0FBSyxFQUFFLGVBQWU7cUJBQ3pCLFdBQ1EsQ0FBQyxZQUFZLEVBQUUsY0FBYyxFQUFFLFlBQVksQ0FBQzs0SkFHNUMsT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2xpcGJvYXJkIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NsaXBib2FyZCc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmJCdXR0b25Nb2R1bGUsIE5iSWNvbkxpYnJhcmllcywgTmJJY29uTW9kdWxlIH0gZnJvbSAnQG5lYnVsYXIvdGhlbWUnO1xuaW1wb3J0IHsgU2NsQWxlcnRTZXJ2aWNlIH0gZnJvbSAnLi4vYWxlcnQvYWxlcnQuc2VydmljZSc7XG5pbXBvcnQgeyBTY2xDbGlwQm9hcmRJY29ucyB9IGZyb20gJy4vY2xpcGJvYXJkLmljb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3NjbC1jbGlwYm9hcmQnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NsaXBib2FyZC5jb21wb25lbnQuaHRtbCcsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ3NjbC1jbGlwYm9hcmQnLFxuICAgIH0sXG4gICAgaW1wb3J0czogW05iSWNvbk1vZHVsZSwgTmJCdXR0b25Nb2R1bGUsIENvbW1vbk1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIFNjbENsaXBCb2FyZENvbXBvbmVudCB7XG4gICAgQElucHV0KCkgY29udGVudCE6IHN0cmluZztcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGljb25MaWJyYXJpZXM6IE5iSWNvbkxpYnJhcmllcyxcbiAgICAgICAgcHJpdmF0ZSBjbGlwYm9hcmQ6IENsaXBib2FyZCxcbiAgICAgICAgcHJpdmF0ZSBhbGVydFNlcnZpY2U6IFNjbEFsZXJ0U2VydmljZVxuICAgICkge1xuICAgICAgICB0aGlzLmljb25MaWJyYXJpZXMucmVnaXN0ZXJTdmdQYWNrKCdzY2wtY2xpcGJvYXJkLWljb24nLCBTY2xDbGlwQm9hcmRJY29ucyk7XG4gICAgfVxuXG4gICAgY29weSh2YWx1ZTogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgdGV4dDogc3RyaW5nID0gdmFsdWUudGV4dENvbnRlbnQgfHwgJyc7XG4gICAgICAgIGNvbnN0IHN1Y2Nlc3MgPSB0aGlzLmNsaXBib2FyZC5jb3B5KHRleHQpO1xuICAgICAgICBpZiAoc3VjY2VzcylcbiAgICAgICAgICAgIHRoaXMuYWxlcnRTZXJ2aWNlLnN1Y2Nlc3Moe1xuICAgICAgICAgICAgICAgIGhlYWRpbmc6ICdDb3BpZWQgdG8gY2xpcGJvYXJkJyxcbiAgICAgICAgICAgIH0pO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJzY2wtY2xpcGJvYXJkX19jb250ZW50XCIgI3RleHQ+XG4gICAge3sgY29udGVudCB9fVxuPC9kaXY+XG48YnV0dG9uIG5iQnV0dG9uIGdob3N0IHN0YXR1cz1cInByaW1hcnlcIiAoY2xpY2spPVwiY29weSh0ZXh0KVwiPlxuICAgIDxuYi1pY29uIGljb249XCJjb3B5XCIgcGFjaz1cInNjbC1jbGlwYm9hcmQtaWNvblwiPiA8L25iLWljb24+XG48L2J1dHRvbj5cbiJdfQ==
|
|
@@ -34,11 +34,11 @@ class SclColorWrapper {
|
|
|
34
34
|
}
|
|
35
35
|
return [];
|
|
36
36
|
}
|
|
37
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.
|
|
38
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.
|
|
37
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SclColorWrapper, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
38
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: SclColorWrapper, isStandalone: true, selector: "[sclColorWrapper]", inputs: { status: "status", size: "size" }, host: { properties: { "class.scl-color-wrapper--large": "this.large", "class.scl-color-wrapper--primary": "this.primary", "class.scl-color-wrapper--info": "this.info", "class.scl-color-wrapper--success": "this.success", "class.scl-color-wrapper--warning": "this.warning", "class.scl-color-wrapper--danger": "this.danger", "class.scl-color-wrapper--basic": "this.basic", "class.scl-color-wrapper--control": "this.control", "class": "this.additionalClasses" }, classAttribute: "scl-color-wrapper" }, ngImport: i0 }); }
|
|
39
39
|
}
|
|
40
40
|
export { SclColorWrapper };
|
|
41
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.
|
|
41
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SclColorWrapper, decorators: [{
|
|
42
42
|
type: Directive,
|
|
43
43
|
args: [{
|
|
44
44
|
selector: '[sclColorWrapper]',
|
|
@@ -79,4 +79,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
|
|
|
79
79
|
type: HostBinding,
|
|
80
80
|
args: ['class']
|
|
81
81
|
}] } });
|
|
82
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
82
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3Itd3JhcHBlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWNrYWdlcy9jb2xvci13cmFwcGVyL2NvbG9yLXdyYXBwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDOztBQUV0RSxNQU9hLGVBQWU7SUFQNUI7UUFTSSxXQUFNLEdBQVcsT0FBTyxDQUFDO0tBb0Q1QjtJQS9DRyxJQUNJLEtBQUs7UUFDTCxPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssT0FBTyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxJQUNJLE9BQU87UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssU0FBUyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxJQUNJLElBQUk7UUFDSixPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssTUFBTSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUNJLE9BQU87UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssU0FBUyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxJQUNJLE9BQU87UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssU0FBUyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxJQUNJLE1BQU07UUFDTixPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssUUFBUSxDQUFDO0lBQ3BDLENBQUM7SUFFRCxJQUNJLEtBQUs7UUFDTCxPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssT0FBTyxDQUFDO0lBQ25DLENBQUM7SUFFRCxJQUNJLE9BQU87UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssU0FBUyxDQUFDO0lBQ3JDLENBQUM7SUFFRCxJQUNJLGlCQUFpQjtRQUNqQixJQUFJLE9BQU8sSUFBSSxDQUFDLE1BQU0sS0FBSyxRQUFRLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUU7WUFDdkQsT0FBTyxDQUFDLHNCQUFzQixJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztTQUNoRDtRQUNELE9BQU8sRUFBRSxDQUFDO0lBQ2QsQ0FBQzsrR0FyRFEsZUFBZTttR0FBZixlQUFlOztTQUFmLGVBQWU7NEZBQWYsZUFBZTtrQkFQM0IsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsSUFBSSxFQUFFO3dCQUNGLEtBQUssRUFBRSxtQkFBbUI7cUJBQzdCO2lCQUNKOzhCQUdHLE1BQU07c0JBREwsS0FBSztnQkFJTixJQUFJO3NCQURILEtBQUs7Z0JBSUYsS0FBSztzQkFEUixXQUFXO3VCQUFDLGdDQUFnQztnQkFNekMsT0FBTztzQkFEVixXQUFXO3VCQUFDLGtDQUFrQztnQkFNM0MsSUFBSTtzQkFEUCxXQUFXO3VCQUFDLCtCQUErQjtnQkFNeEMsT0FBTztzQkFEVixXQUFXO3VCQUFDLGtDQUFrQztnQkFNM0MsT0FBTztzQkFEVixXQUFXO3VCQUFDLGtDQUFrQztnQkFNM0MsTUFBTTtzQkFEVCxXQUFXO3VCQUFDLGlDQUFpQztnQkFNMUMsS0FBSztzQkFEUixXQUFXO3VCQUFDLGdDQUFnQztnQkFNekMsT0FBTztzQkFEVixXQUFXO3VCQUFDLGtDQUFrQztnQkFNM0MsaUJBQWlCO3NCQURwQixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3RCaW5kaW5nLCBJbnB1dCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW3NjbENvbG9yV3JhcHBlcl0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ3NjbC1jb2xvci13cmFwcGVyJyxcbiAgICB9LFxufSlcbmV4cG9ydCBjbGFzcyBTY2xDb2xvcldyYXBwZXIge1xuICAgIEBJbnB1dCgpXG4gICAgc3RhdHVzOiBzdHJpbmcgPSAnYmFzaWMnO1xuXG4gICAgQElucHV0KClcbiAgICBzaXplITogc3RyaW5nO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5zY2wtY29sb3Itd3JhcHBlci0tbGFyZ2UnKVxuICAgIGdldCBsYXJnZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2l6ZSA9PT0gJ2xhcmdlJztcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLnNjbC1jb2xvci13cmFwcGVyLS1wcmltYXJ5JylcbiAgICBnZXQgcHJpbWFyeSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc3RhdHVzID09PSAncHJpbWFyeSc7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5zY2wtY29sb3Itd3JhcHBlci0taW5mbycpXG4gICAgZ2V0IGluZm8oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnN0YXR1cyA9PT0gJ2luZm8nO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnY2xhc3Muc2NsLWNvbG9yLXdyYXBwZXItLXN1Y2Nlc3MnKVxuICAgIGdldCBzdWNjZXNzKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09ICdzdWNjZXNzJztcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLnNjbC1jb2xvci13cmFwcGVyLS13YXJuaW5nJylcbiAgICBnZXQgd2FybmluZygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc3RhdHVzID09PSAnd2FybmluZyc7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5zY2wtY29sb3Itd3JhcHBlci0tZGFuZ2VyJylcbiAgICBnZXQgZGFuZ2VyKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09ICdkYW5nZXInO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnY2xhc3Muc2NsLWNvbG9yLXdyYXBwZXItLWJhc2ljJylcbiAgICBnZXQgYmFzaWMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnN0YXR1cyA9PT0gJ2Jhc2ljJztcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLnNjbC1jb2xvci13cmFwcGVyLS1jb250cm9sJylcbiAgICBnZXQgY29udHJvbCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc3RhdHVzID09PSAnY29udHJvbCc7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gICAgZ2V0IGFkZGl0aW9uYWxDbGFzc2VzKCk6IHN0cmluZ1tdIHtcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnN0YXR1cyA9PT0gJ3N0cmluZycgJiYgdGhpcy5zdGF0dXMubGVuZ3RoKSB7XG4gICAgICAgICAgICByZXR1cm4gW2BzY2wtY29sb3Itd3JhcHBlci0tJHt0aGlzLnN0YXR1c31gXTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gW107XG4gICAgfVxufVxuIl19
|
|
@@ -22,11 +22,11 @@ class SclColumnSeparator {
|
|
|
22
22
|
get giant() {
|
|
23
23
|
return this.gap === 'giant';
|
|
24
24
|
}
|
|
25
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.
|
|
26
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.
|
|
25
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SclColumnSeparator, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
26
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: SclColumnSeparator, isStandalone: true, selector: "[columnSeparator]", inputs: { gap: "gap" }, host: { properties: { "class.scl-column-separator--nano": "this.nano", "class.scl-column-separator--micro": "this.micro", "class.scl-column-separator--tiny": "this.tiny", "class.scl-column-separator--small": "this.small", "class.scl-column-separator--medium": "this.medium", "class.scl-column-separator--large": "this.large", "class.scl-column-separator--giant": "this.giant" }, classAttribute: "scl-column-separator" }, ngImport: i0 }); }
|
|
27
27
|
}
|
|
28
28
|
export { SclColumnSeparator };
|
|
29
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.
|
|
29
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SclColumnSeparator, decorators: [{
|
|
30
30
|
type: Directive,
|
|
31
31
|
args: [{
|
|
32
32
|
selector: '[columnSeparator]',
|
|
@@ -59,4 +59,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
|
|
|
59
59
|
type: HostBinding,
|
|
60
60
|
args: ['class.scl-column-separator--giant']
|
|
61
61
|
}] } });
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
62
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLXNlcGFyYXRvci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWNrYWdlcy9jb2x1bW4tc2VwZXJhdG9yL2NvbHVtbi1zZXBhcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUU5RCxNQU9hLGtCQUFrQjtJQUczQixJQUNJLElBQUk7UUFDSixPQUFPLElBQUksQ0FBQyxHQUFHLEtBQUssTUFBTSxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUNJLEtBQUs7UUFDTCxPQUFPLElBQUksQ0FBQyxHQUFHLEtBQUssT0FBTyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUNJLElBQUk7UUFDSixPQUFPLElBQUksQ0FBQyxHQUFHLEtBQUssTUFBTSxDQUFDO0lBQy9CLENBQUM7SUFFRCxJQUNJLEtBQUs7UUFDTCxPQUFPLElBQUksQ0FBQyxHQUFHLEtBQUssT0FBTyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUNJLE1BQU07UUFDTixPQUFPLElBQUksQ0FBQyxHQUFHLEtBQUssUUFBUSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxJQUNJLEtBQUs7UUFDTCxPQUFPLElBQUksQ0FBQyxHQUFHLEtBQUssT0FBTyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxJQUNJLEtBQUs7UUFDTCxPQUFPLElBQUksQ0FBQyxHQUFHLEtBQUssT0FBTyxDQUFDO0lBQ2hDLENBQUM7K0dBcENRLGtCQUFrQjttR0FBbEIsa0JBQWtCOztTQUFsQixrQkFBa0I7NEZBQWxCLGtCQUFrQjtrQkFQOUIsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsSUFBSSxFQUFFO3dCQUNGLEtBQUssRUFBRSxzQkFBc0I7cUJBQ2hDO2lCQUNKOzhCQUVZLEdBQUc7c0JBQVgsS0FBSztnQkFHRixJQUFJO3NCQURQLFdBQVc7dUJBQUMsa0NBQWtDO2dCQU0zQyxLQUFLO3NCQURSLFdBQVc7dUJBQUMsbUNBQW1DO2dCQU01QyxJQUFJO3NCQURQLFdBQVc7dUJBQUMsa0NBQWtDO2dCQU0zQyxLQUFLO3NCQURSLFdBQVc7dUJBQUMsbUNBQW1DO2dCQU01QyxNQUFNO3NCQURULFdBQVc7dUJBQUMsb0NBQW9DO2dCQU03QyxLQUFLO3NCQURSLFdBQVc7dUJBQUMsbUNBQW1DO2dCQU01QyxLQUFLO3NCQURSLFdBQVc7dUJBQUMsbUNBQW1DIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBJbnB1dCwgSG9zdEJpbmRpbmcgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbY29sdW1uU2VwYXJhdG9yXScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAnc2NsLWNvbHVtbi1zZXBhcmF0b3InLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFNjbENvbHVtblNlcGFyYXRvciB7XG4gICAgQElucHV0KCkgZ2FwITogc3RyaW5nO1xuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5zY2wtY29sdW1uLXNlcGFyYXRvci0tbmFubycpXG4gICAgZ2V0IG5hbm8oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdhcCA9PT0gJ25hbm8nO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnY2xhc3Muc2NsLWNvbHVtbi1zZXBhcmF0b3ItLW1pY3JvJylcbiAgICBnZXQgbWljcm8oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdhcCA9PT0gJ21pY3JvJztcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLnNjbC1jb2x1bW4tc2VwYXJhdG9yLS10aW55JylcbiAgICBnZXQgdGlueSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2FwID09PSAndGlueSc7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5zY2wtY29sdW1uLXNlcGFyYXRvci0tc21hbGwnKVxuICAgIGdldCBzbWFsbCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2FwID09PSAnc21hbGwnO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnY2xhc3Muc2NsLWNvbHVtbi1zZXBhcmF0b3ItLW1lZGl1bScpXG4gICAgZ2V0IG1lZGl1bSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2FwID09PSAnbWVkaXVtJztcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLnNjbC1jb2x1bW4tc2VwYXJhdG9yLS1sYXJnZScpXG4gICAgZ2V0IGxhcmdlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5nYXAgPT09ICdsYXJnZSc7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5zY2wtY29sdW1uLXNlcGFyYXRvci0tZ2lhbnQnKVxuICAgIGdldCBnaWFudCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2FwID09PSAnZ2lhbnQnO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -12,11 +12,11 @@ class SclColumnText {
|
|
|
12
12
|
get textAlignCenter() {
|
|
13
13
|
return this.textAlign === 'center';
|
|
14
14
|
}
|
|
15
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.
|
|
16
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.
|
|
15
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SclColumnText, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
16
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SclColumnText, isStandalone: true, selector: "scl-column-text", inputs: { heading: "heading", textAlign: "textAlign" }, host: { properties: { "class.scl-column-text--right": "this.textAlignRight", "class.scl-column-text--left": "this.textAlignLeft", "class.scl-column-text--center": "this.textAlignCenter" }, classAttribute: "scl-column-text" }, ngImport: i0, template: "<h5 class=\"scl-column-text__title\" sclText textType=\"labelLarge\" weight=\"medium\">{{heading}}</h5>\n<div class=\"scl-column-text__content\" sclText textType=\"bodyMedium\">\n <ng-content></ng-content>\n</div>", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: SclText, selector: "[sclText]", inputs: ["textType", "weight", "textColor"] }] }); }
|
|
17
17
|
}
|
|
18
18
|
export { SclColumnText };
|
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SclColumnText, decorators: [{
|
|
20
20
|
type: Component,
|
|
21
21
|
args: [{ selector: 'scl-column-text', standalone: true, imports: [CommonModule, SclText], host: {
|
|
22
22
|
class: 'scl-column-text',
|
|
@@ -35,4 +35,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
|
|
|
35
35
|
type: HostBinding,
|
|
36
36
|
args: ['class.scl-column-text--center']
|
|
37
37
|
}] } });
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLXRleHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcGFja2FnZXMvY29sdW1uLXRleHQvY29sdW1uLXRleHQudHMiLCIuLi8uLi8uLi8uLi9zcmMvcGFja2FnZXMvY29sdW1uLXRleHQvY29sdW1uLXRleHQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUFFbkQsTUFTYSxhQUFhO0lBSXRCLElBQ0ksY0FBYztRQUNkLE9BQU8sSUFBSSxDQUFDLFNBQVMsS0FBSyxPQUFPLENBQUM7SUFDdEMsQ0FBQztJQUVELElBQ0ksYUFBYTtRQUNiLE9BQU8sSUFBSSxDQUFDLFNBQVMsS0FBSyxNQUFNLENBQUM7SUFDckMsQ0FBQztJQUVELElBQ0ksZUFBZTtRQUNmLE9BQU8sSUFBSSxDQUFDLFNBQVMsS0FBSyxRQUFRLENBQUM7SUFDdkMsQ0FBQzsrR0FqQlEsYUFBYTttR0FBYixhQUFhLHFXQ2IxQiw2TkFHTSwyQ0RJUSxZQUFZLCtCQUFFLE9BQU87O1NBTXRCLGFBQWE7NEZBQWIsYUFBYTtrQkFUekIsU0FBUzsrQkFDSSxpQkFBaUIsY0FDZixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsT0FBTyxDQUFDLFFBRTFCO3dCQUNGLEtBQUssRUFBRSxpQkFBaUI7cUJBQzNCOzhCQUdRLE9BQU87c0JBQWYsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUdGLGNBQWM7c0JBRGpCLFdBQVc7dUJBQUMsOEJBQThCO2dCQU12QyxhQUFhO3NCQURoQixXQUFXO3VCQUFDLDZCQUE2QjtnQkFNdEMsZUFBZTtzQkFEbEIsV0FBVzt1QkFBQywrQkFBK0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RCaW5kaW5nLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFNjbFRleHQgfSBmcm9tICcuLi90eXBvZ3JhcGh5L3R5cG9ncmFwaHknO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3NjbC1jb2x1bW4tdGV4dCcsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBTY2xUZXh0XSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY29sdW1uLXRleHQuaHRtbCcsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ3NjbC1jb2x1bW4tdGV4dCcsXG4gICAgfSxcbn0pXG5leHBvcnQgY2xhc3MgU2NsQ29sdW1uVGV4dCB7XG4gICAgQElucHV0KCkgaGVhZGluZyE6IHN0cmluZztcbiAgICBASW5wdXQoKSB0ZXh0QWxpZ24/OiBzdHJpbmc7XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLnNjbC1jb2x1bW4tdGV4dC0tcmlnaHQnKVxuICAgIGdldCB0ZXh0QWxpZ25SaWdodCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudGV4dEFsaWduID09PSAncmlnaHQnO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnY2xhc3Muc2NsLWNvbHVtbi10ZXh0LS1sZWZ0JylcbiAgICBnZXQgdGV4dEFsaWduTGVmdCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudGV4dEFsaWduID09PSAnbGVmdCc7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5zY2wtY29sdW1uLXRleHQtLWNlbnRlcicpXG4gICAgZ2V0IHRleHRBbGlnbkNlbnRlcigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudGV4dEFsaWduID09PSAnY2VudGVyJztcbiAgICB9XG59XG4iLCI8aDUgY2xhc3M9XCJzY2wtY29sdW1uLXRleHRfX3RpdGxlXCIgIHNjbFRleHQgIHRleHRUeXBlPVwibGFiZWxMYXJnZVwiIHdlaWdodD1cIm1lZGl1bVwiPnt7aGVhZGluZ319PC9oNT5cbjxkaXYgY2xhc3M9XCJzY2wtY29sdW1uLXRleHRfX2NvbnRlbnRcIiBzY2xUZXh0ICB0ZXh0VHlwZT1cImJvZHlNZWRpdW1cIj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2Rpdj4iXX0=
|
|
@@ -13,11 +13,11 @@ class SclContainer {
|
|
|
13
13
|
get left() {
|
|
14
14
|
return this.alignment === 'left';
|
|
15
15
|
}
|
|
16
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.
|
|
17
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.
|
|
16
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SclContainer, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
17
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: SclContainer, isStandalone: true, selector: "scl-container", inputs: { size: "size", alignment: "alignment" }, host: { properties: { "class.scl-container--small": "this.small", "class.scl-container--medium": "this.medium", "class.scl-container--large": "this.large", "class.scl-container--left": "this.left" }, classAttribute: "scl-container" }, ngImport: i0 }); }
|
|
18
18
|
}
|
|
19
19
|
export { SclContainer };
|
|
20
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SclContainer, decorators: [{
|
|
21
21
|
type: Directive,
|
|
22
22
|
args: [{
|
|
23
23
|
selector: 'scl-container',
|
|
@@ -43,4 +43,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
|
|
|
43
43
|
type: HostBinding,
|
|
44
44
|
args: ['class.scl-container--left']
|
|
45
45
|
}] } });
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFpbmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9wYWNrYWdlcy9jb250YWluZXIvY29udGFpbmVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRTlELE1BT2EsWUFBWTtJQUtyQixJQUNJLEtBQUs7UUFDTCxPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssT0FBTyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxJQUNJLE1BQU07UUFDTixPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssUUFBUSxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUNJLEtBQUs7UUFDTCxPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssT0FBTyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxJQUNJLElBQUk7UUFDSixPQUFPLElBQUksQ0FBQyxTQUFTLEtBQUssTUFBTSxDQUFDO0lBQ3JDLENBQUM7K0dBdkJRLFlBQVk7bUdBQVosWUFBWTs7U0FBWixZQUFZOzRGQUFaLFlBQVk7a0JBUHhCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixJQUFJLEVBQUU7d0JBQ0YsS0FBSyxFQUFFLGVBQWU7cUJBQ3pCO2lCQUNKOzhCQUVZLElBQUk7c0JBQVosS0FBSztnQkFFRyxTQUFTO3NCQUFqQixLQUFLO2dCQUdGLEtBQUs7c0JBRFIsV0FBVzt1QkFBQyw0QkFBNEI7Z0JBTXJDLE1BQU07c0JBRFQsV0FBVzt1QkFBQyw2QkFBNkI7Z0JBTXRDLEtBQUs7c0JBRFIsV0FBVzt1QkFBQyw0QkFBNEI7Z0JBTXJDLElBQUk7c0JBRFAsV0FBVzt1QkFBQywyQkFBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3RCaW5kaW5nLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ3NjbC1jb250YWluZXInLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ3NjbC1jb250YWluZXInLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFNjbENvbnRhaW5lciB7XG4gICAgQElucHV0KCkgc2l6ZT86IHN0cmluZztcblxuICAgIEBJbnB1dCgpIGFsaWdubWVudD86IHN0cmluZztcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3Muc2NsLWNvbnRhaW5lci0tc21hbGwnKVxuICAgIGdldCBzbWFsbCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2l6ZSA9PT0gJ3NtYWxsJztcbiAgICB9XG5cbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzLnNjbC1jb250YWluZXItLW1lZGl1bScpXG4gICAgZ2V0IG1lZGl1bSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2l6ZSA9PT0gJ21lZGl1bSc7XG4gICAgfVxuXG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5zY2wtY29udGFpbmVyLS1sYXJnZScpXG4gICAgZ2V0IGxhcmdlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5zaXplID09PSAnbGFyZ2UnO1xuICAgIH1cblxuICAgIEBIb3N0QmluZGluZygnY2xhc3Muc2NsLWNvbnRhaW5lci0tbGVmdCcpXG4gICAgZ2V0IGxlZnQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFsaWdubWVudCA9PT0gJ2xlZnQnO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -296,8 +296,8 @@ class SclDateTimepickerComponent {
|
|
|
296
296
|
const dateParts = this.selectedDate.split(' ');
|
|
297
297
|
this.time = dateParts.length >= 3 ? `${dateParts[1]} ${dateParts[2]}` : dateParts[1];
|
|
298
298
|
}
|
|
299
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.
|
|
300
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.
|
|
299
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SclDateTimepickerComponent, deps: [{ token: i1.FormBuilder }, { token: i2.NbIconLibraries }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
300
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: SclDateTimepickerComponent, isStandalone: true, selector: "scl-datetime-picker", inputs: { placeholder: "placeholder", format: "format", min: "min", max: "max", dateTimePicker: "dateTimePicker", showPresets: "showPresets", readonly: "readonly" }, outputs: { dateChange: "dateChange" }, host: { listeners: { "keydown": "handleKeyboardEvents($event)" }, classAttribute: "scl-custom-datepicker " }, providers: [
|
|
301
301
|
{
|
|
302
302
|
provide: NG_VALUE_ACCESSOR,
|
|
303
303
|
useExisting: forwardRef(() => SclDateTimepickerComponent),
|
|
@@ -308,7 +308,7 @@ class SclDateTimepickerComponent {
|
|
|
308
308
|
], viewQueries: [{ propertyName: "popover", first: true, predicate: NbPopoverDirective, descendants: true }, { propertyName: "calendar", first: true, predicate: ["calendar"], descendants: true, read: TemplateRef }, { propertyName: "timepicker", first: true, predicate: ["timepicker"], descendants: true }], ngImport: i0, template: "<form [formGroup]=\"datepickerForm\">\n <input\n class=\"scl-custom-datepicker__input\"\n nbInput\n type=\"text\"\n formControlName=\"datepicker\"\n [placeholder]=\"placeholder\"\n [readonly]=\"isReadonly\"\n [nbPopover]=\"calendar\"\n nbPopoverPlacement=\"bottom\"\n nbPopoverSize=\"large\"\n [nbPopoverTrigger]=\"isReadonly ? 'noop' : 'focus'\"\n (blur)=\"onBlur()\" />\n\n <div class=\"scl-custom-datepicker__icon\">\n <nb-icon icon=\"calendar\" pack=\"scl-datepicker-icon\"></nb-icon>\n </div>\n\n <ng-template #calendar>\n <div class=\"scl-custom-datepicker__popover\" (mousedown)=\"$event.preventDefault()\" aria-label=\"Calendar\" tabindex=\"-1\">\n <div class=\"scl-custom-datepicker__content\">\n <nb-calendar [(date)]=\"date\" (dateChange)=\"onDateSelect($event)\" [visibleDate]=\"visibleDate\" [min]=\"minDate\" [max]=\"maxDate\"> </nb-calendar>\n\n <timepicker\n #timepicker\n class=\"scl-custom-datepicker__timepicker\"\n (timeChange)=\"onTimeChange($event)\"\n [timeValues]=\"time\"\n [twelveHoursFormat]=\"showTwelveHrsFormat\"\n [format]=\"timeFormat\"\n *ngIf=\"hasTimePicker\">\n </timepicker>\n </div>\n\n <div class=\"scl-custom-datepicker__footer\" *ngIf=\"hasTimePicker\">\n <button nbButton ghost status=\"primary\" *ngIf=\"showPresets\">Choose from presents</button>\n <button nbButton status=\"primary\" [disabled]=\"!isFormValid\" (click)=\"onConfirm()\">Confirm</button>\n </div>\n </div>\n </ng-template>\n</form>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: NbCalendarKitModule }, { kind: "ngmodule", type: NbCalendarModule }, { kind: "component", type: i2.NbCalendarComponent, selector: "nb-calendar", inputs: ["boundingMonth", "startView", "min", "max", "filter", "dayCellComponent", "monthCellComponent", "yearCellComponent", "size", "visibleDate", "showNavigation", "date", "showWeekNumber", "weekNumberSymbol"], outputs: ["dateChange"] }, { kind: "ngmodule", type: NbPopoverModule }, { kind: "directive", type: i2.NbPopoverDirective, selector: "[nbPopover]", inputs: ["nbPopover", "nbPopoverContext", "nbPopoverPlacement", "nbPopoverAdjustment", "nbPopoverTrigger", "nbPopoverOffset", "nbTooltipDisabled", "nbPopoverClass"], outputs: ["nbPopoverShowStateChange"], exportAs: ["nbPopover"] }, { kind: "ngmodule", type: NbTimepickerModule }, { kind: "component", type: TimepickerComponent, selector: "timepicker", inputs: ["twelveHoursFormat", "timeValues", "format"], outputs: ["timeChange"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: NbButtonModule }, { kind: "component", type: i2.NbButtonComponent, selector: "button[nbButton],a[nbButton],input[type=\"button\"][nbButton],input[type=\"submit\"][nbButton]", inputs: ["hero"] }, { kind: "ngmodule", type: NbInputModule }, { kind: "directive", type: i2.NbInputDirective, selector: "input[nbInput],textarea[nbInput]", inputs: ["fieldSize", "status", "shape", "fullWidth"] }, { kind: "ngmodule", type: NbIconModule }, { kind: "component", type: i2.NbIconComponent, selector: "nb-icon", inputs: ["icon", "pack", "options", "status", "config"] }] }); }
|
|
309
309
|
}
|
|
310
310
|
export { SclDateTimepickerComponent };
|
|
311
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.
|
|
311
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SclDateTimepickerComponent, decorators: [{
|
|
312
312
|
type: Component,
|
|
313
313
|
args: [{ selector: 'scl-datetime-picker', standalone: true, imports: [
|
|
314
314
|
CommonModule,
|
|
@@ -361,4 +361,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.0", ngImpor
|
|
|
361
361
|
type: HostListener,
|
|
362
362
|
args: ['keydown', ['$event']]
|
|
363
363
|
}] } });
|
|
364
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWRhdGVwaWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3BhY2thZ2VzL2N1c3RvbS1kYXRlcGlja2VyL2N1c3RvbS1kYXRlcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9wYWNrYWdlcy9jdXN0b20tZGF0ZXBpY2tlci9jdXN0b20tZGF0ZXBpY2tlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLGNBQWMsRUFBRSxLQUFLLEVBQVUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pKLE9BQU8sRUFLSCxhQUFhLEVBQ2IsaUJBQWlCLEVBQ2pCLG1CQUFtQixHQUV0QixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFDSCxjQUFjLEVBQ2QsbUJBQW1CLEVBQ25CLGdCQUFnQixFQUVoQixZQUFZLEVBQ1osYUFBYSxFQUNiLGtCQUFrQixFQUNsQixlQUFlLEVBQ2Ysa0JBQWtCLEdBQ3JCLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxLQUFLLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFDakMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7OztBQUV2RCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0FB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O3dCQUNoQixlQUFlO3dCQUNmLGtCQUFrQjt3QkFDbEIsbUJBQW1CO3dCQUNuQixtQkFBbUI7d0JBQ25CLGNBQWM7d0JBQ2QsYUFBYTt3QkFDYixZQUFZO3FCQUNmLGFBQ1U7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsMkJBQTJCLENBQUM7NEJBQ3pELEtBQUssRUFBRSxJQUFJO3lCQUNkO3dCQUNELEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxXQUFXLDRCQUE0QixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7d0JBQ2hGLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7cUJBQ2hELFFBQ0s7d0JBQ0YsS0FBSyxFQUFFLHdCQUF3QjtxQkFDbEM7Z0lBR1MsVUFBVTtzQkFBbkIsTUFBTTtnQkFFd0IsT0FBTztzQkFBckMsU0FBUzt1QkFBQyxrQkFBa0I7Z0JBQ2lCLFFBQVE7c0JBQXJELFNBQVM7dUJBQUMsVUFBVSxFQUFFLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRTtnQkFDbkIsVUFBVTtzQkFBbEMsU0FBUzt1QkFBQyxZQUFZO2dCQUVkLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ08sTUFBTTtzQkFBbEIsS0FBSztnQkFVTyxHQUFHO3NCQUFmLEtBQUs7Z0JBV08sR0FBRztzQkFBZixLQUFLO2dCQVlGLGNBQWM7c0JBRGpCLEtBQUs7Z0JBWUYsV0FBVztzQkFEZCxLQUFLO2dCQXFCRixRQUFRO3NCQURYLEtBQUs7Z0JBZ0dOLG9CQUFvQjtzQkFEbkIsWUFBWTt1QkFBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiwgSG9zdExpc3RlbmVyLCBJbmplY3Rpb25Ub2tlbiwgSW5wdXQsIE9uSW5pdCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQWJzdHJhY3RDb250cm9sLFxuICAgIENvbnRyb2xWYWx1ZUFjY2Vzc29yLFxuICAgIEZvcm1CdWlsZGVyLFxuICAgIEZvcm1Hcm91cCxcbiAgICBOR19WQUxJREFUT1JTLFxuICAgIE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgVmFsaWRhdGlvbkVycm9ycyxcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtcbiAgICBOYkJ1dHRvbk1vZHVsZSxcbiAgICBOYkNhbGVuZGFyS2l0TW9kdWxlLFxuICAgIE5iQ2FsZW5kYXJNb2R1bGUsXG4gICAgTmJJY29uTGlicmFyaWVzLFxuICAgIE5iSWNvbk1vZHVsZSxcbiAgICBOYklucHV0TW9kdWxlLFxuICAgIE5iUG9wb3ZlckRpcmVjdGl2ZSxcbiAgICBOYlBvcG92ZXJNb2R1bGUsXG4gICAgTmJUaW1lcGlja2VyTW9kdWxlLFxufSBmcm9tICdAbmVidWxhci90aGVtZSc7XG5pbXBvcnQgKiBhcyBtb21lbnQgZnJvbSAnbW9tZW50JztcbmltcG9ydCB7IERBVEVfRk9STUFUIH0gZnJvbSAnLi9jdXN0b20tZGF0ZXBpY2tlci5tb2RlbCc7XG5pbXBvcnQgeyBUaW1lcGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi90aW1lcGlja2VyL3RpbWVwaWNrZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFNjbERhdGVwaWNrZXJJY29ucyB9IGZyb20gJy4vZGF0ZXBpY2tlci5pY29uJztcblxuZXhwb3J0IGNvbnN0IERBVEVfVElNRV9QSUNLRVIgPSBuZXcgSW5qZWN0aW9uVG9rZW4oJ2RhdGVUaW1lUGlja2VyJyk7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnc2NsLWRhdGV0aW1lLXBpY2tlcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2N1c3RvbS1kYXRlcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBOYkNhbGVuZGFyS2l0TW9kdWxlLFxuICAgICAgICBOYkNhbGVuZGFyTW9kdWxlLFxuICAgICAgICBOYlBvcG92ZXJNb2R1bGUsXG4gICAgICAgIE5iVGltZXBpY2tlck1vZHVsZSxcbiAgICAgICAgVGltZXBpY2tlckNvbXBvbmVudCxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgICAgTmJCdXR0b25Nb2R1bGUsXG4gICAgICAgIE5iSW5wdXRNb2R1bGUsXG4gICAgICAgIE5iSWNvbk1vZHVsZSxcbiAgICBdLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFNjbERhdGVUaW1lcGlja2VyQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICB7IHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsIHVzZUV4aXN0aW5nOiBTY2xEYXRlVGltZXBpY2tlckNvbXBvbmVudCwgbXVsdGk6IHRydWUgfSxcbiAgICAgICAgeyBwcm92aWRlOiBEQVRFX1RJTUVfUElDS0VSLCB1c2VWYWx1ZTogdHJ1ZSB9LFxuICAgIF0sXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ3NjbC1jdXN0b20tZGF0ZXBpY2tlciAnLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFNjbERhdGVUaW1lcGlja2VyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gICAgQE91dHB1dCgpIGRhdGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICBAVmlld0NoaWxkKE5iUG9wb3ZlckRpcmVjdGl2ZSkgcG9wb3ZlciE6IE5iUG9wb3ZlckRpcmVjdGl2ZTtcbiAgICBAVmlld0NoaWxkKCdjYWxlbmRhcicsIHsgcmVhZDogVGVtcGxhdGVSZWYgfSkgY2FsZW5kYXIhOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAgIEBWaWV3Q2hpbGQoJ3RpbWVwaWNrZXInKSB0aW1lcGlja2VyITogVGltZXBpY2tlckNvbXBvbmVudDtcblxuICAgIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmcgPSAnU2VsZWN0IGEgZGF0ZSc7XG4gICAgQElucHV0KCkgc2V0IGZvcm1hdCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5kYXRlRm9ybWF0ID0gdmFsdWU7XG4gICAgICAgICAgICB0aGlzLmhhc0Zvcm1hdCA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZ2V0IGZvcm1hdCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0ZUZvcm1hdDtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBzZXQgbWluKHZhbHVlOiBEYXRlIHwgbnVsbCB8IHVuZGVmaW5lZCkge1xuICAgICAgICBpZiAoIXZhbHVlKSByZXR1cm47XG4gICAgICAgIHRoaXMuc2V0TWluRGF0ZSh2YWx1ZSk7XG4gICAgICAgIGlmICh0aGlzLmRhdGVwaWNrZXJGb3JtLnZhbHVlLmRhdGVwaWNrZXIgIT09IG51bGwpIHtcbiAgICAgICAgICAgIHRoaXMub25DaGFuZ2UodGhpcy5mb3JtVmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGdldCBtaW4oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmhhc1RpbWVQaWNrZXIgPyB0aGlzLm1pbkRhdGVUaW1lIDogdGhpcy5taW5EYXRlO1xuICAgIH1cblxuICAgIEBJbnB1dCgpIHNldCBtYXgodmFsdWU6IERhdGUgfCBudWxsIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIGlmICghdmFsdWUpIHJldHVybjtcbiAgICAgICAgdGhpcy5zZXRNYXhEYXRlKHZhbHVlKTtcbiAgICAgICAgaWYgKHRoaXMuZGF0ZXBpY2tlckZvcm0udmFsdWUuZGF0ZXBpY2tlciAhPT0gbnVsbCkge1xuICAgICAgICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLmZvcm1WYWx1ZSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZ2V0IG1heCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGFzVGltZVBpY2tlciA/IHRoaXMubWF4RGF0ZVRpbWUgOiB0aGlzLm1heERhdGU7XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBzZXQgZGF0ZVRpbWVQaWNrZXIodmFsdWU6IHN0cmluZyB8IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5oYXNUaW1lUGlja2VyID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICAgICAgaWYgKCF0aGlzLmhhc0Zvcm1hdCkge1xuICAgICAgICAgICAgdGhpcy5kYXRlRm9ybWF0ID0gREFURV9GT1JNQVQuREVGQVVMVF9EQVRFX1RJTUU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZ2V0IGRhdGVUaW1lUGlja2VyKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5oYXNUaW1lUGlja2VyO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgc2V0IHNob3dQcmVzZXRzKHZhbHVlOiBzdHJpbmcgfCBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuaGFzUHJlc2V0cyA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIGdldCBzaG93UHJlc2V0cygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGFzUHJlc2V0cztcbiAgICB9XG5cbiAgICAvLyBGb3IgdHdlbGV2ZSBob3VyIGZvcm1hdFxuICAgIC8vIEBJbnB1dCgpXG4gICAgLy8gc2V0IHR3ZWx2ZUhvdXJzRm9ybWF0KHZhbHVlOiBzdHJpbmcgfCBib29sZWFuKSB7XG4gICAgLy8gICAgIHRoaXMuc2hvd1R3ZWx2ZUhyc0Zvcm1hdCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgLy8gICAgIGlmICghdGhpcy5oYXNGb3JtYXQpIHtcbiAgICAvLyAgICAgICAgIHRoaXMuZGF0ZUZvcm1hdCA9IERBVEVfRk9STUFULlRXRUxWRV9IUl9EQVRFVElNRTtcbiAgICAvLyAgICAgfVxuICAgIC8vIH1cbiAgICAvLyBnZXQgdHdlbHZlSG91cnNGb3JtYXQoKSB7XG4gICAgLy8gICAgIHJldHVybiB0aGlzLnNob3dUd2VsdmVIcnNGb3JtYXQ7XG4gICAgLy8gfVxuXG4gICAgQElucHV0KClcbiAgICBzZXQgcmVhZG9ubHkodmFsdWU6IHN0cmluZyB8IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5pc1JlYWRvbmx5ID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG5cbiAgICBEQVRFX0ZPUk1BVCA9IERBVEVfRk9STUFUO1xuICAgIGRhdGVwaWNrZXJGb3JtITogRm9ybUdyb3VwO1xuICAgIGRhdGVGb3JtYXQgPSAnWVlZWS1NTS1ERCc7XG4gICAgZm9ybVZhbHVlID0gJyc7XG5cbiAgICB2aXNpYmxlRGF0ZSA9IG5ldyBEYXRlKCk7XG4gICAgbWF4RGF0ZSE6IERhdGU7XG4gICAgbWluRGF0ZSE6IERhdGU7XG4gICAgbWluRGF0ZVRpbWUhOiBEYXRlO1xuICAgIG1heERhdGVUaW1lITogRGF0ZTtcblxuICAgIGRhdGU6IERhdGUgPSBuZXcgRGF0ZSgpO1xuICAgIHNlbGVjdGVkRGF0ZSA9ICcnO1xuICAgIHRpbWUgPSAnMDA6MDAnO1xuXG4gICAgZGlzYWJsZWQgPSBmYWxzZTtcbiAgICBoYXNUaW1lUGlja2VyID0gZmFsc2U7XG4gICAgaGFzRm9ybWF0ID0gZmFsc2U7XG4gICAgaGFzUHJlc2V0cyA9IGZhbHNlO1xuICAgIGlzUmVxdWlyZWQgPSBmYWxzZTtcbiAgICBzaG93VHdlbHZlSHJzRm9ybWF0ID0gZmFsc2U7XG4gICAgcHJpdmF0ZSB0b3VjaGVkID0gZmFsc2U7XG4gICAgaXNTZWxlY3RpbmdEYXRlID0gZmFsc2U7XG4gICAgaXNSZWFkb25seSA9IGZhbHNlO1xuXG4gICAgZ2V0IGlzRm9ybVZhbGlkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5kYXRlVGltZVBpY2tlciA/ICEhKHRoaXMuc2VsZWN0ZWREYXRlICYmIHRoaXMudGltZSkgOiAhIXRoaXMuc2VsZWN0ZWREYXRlO1xuICAgIH1cblxuICAgIGdldCB0aW1lRm9ybWF0KCk6IHN0cmluZyB7XG4gICAgICAgIGxldCB0aW1lRm9ybWF0ID0gJyc7XG4gICAgICAgIGlmICgvW0hoXS8udGVzdCh0aGlzLmRhdGVGb3JtYXQpKSB0aW1lRm9ybWF0ICs9ICdISCc7XG4gICAgICAgIGlmICgvbS8udGVzdCh0aGlzLmRhdGVGb3JtYXQpKSB0aW1lRm9ybWF0ICs9ICc6bW0nO1xuICAgICAgICBpZiAoL3MvLnRlc3QodGhpcy5kYXRlRm9ybWF0KSkgdGltZUZvcm1hdCArPSAnOnNzJztcbiAgICAgICAgaWYgKC9bQWFdLy50ZXN0KHRoaXMuZGF0ZUZvcm1hdCkpIHRpbWVGb3JtYXQgKz0gJyBhJztcbiAgICAgICAgcmV0dXJuIHRpbWVGb3JtYXQ7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLFxuICAgICAgICBwcml2YXRlIGljb25MaWJyYXJpZXM6IE5iSWNvbkxpYnJhcmllc1xuICAgICkge1xuICAgICAgICB0aGlzLmljb25MaWJyYXJpZXMucmVnaXN0ZXJTdmdQYWNrKCdzY2wtZGF0ZXBpY2tlci1pY29uJywgU2NsRGF0ZXBpY2tlckljb25zKTtcbiAgICAgICAgdGhpcy5kYXRlcGlja2VyRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgICAgICAgZGF0ZXBpY2tlcjogW251bGxdLFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5mb3JtVmFsdWVDaGFuZ2UoKTtcbiAgICAgICAgaWYgKHRoaXMubWluRGF0ZVRpbWUpIHtcbiAgICAgICAgICAgIHRoaXMubWluRGF0ZVRpbWUuc2V0U2Vjb25kcygwKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uQ2hhbmdlOiAodmFsOiBzdHJpbmcpID0+IHZvaWQgPSAoKSA9PiB7fTtcbiAgICBvblRvdWNoOiAoKSA9PiB2b2lkID0gKCkgPT4ge307XG5cbiAgICB3cml0ZVZhbHVlKG9iajogYW55KTogdm9pZCB7XG4gICAgICAgIGlmIChvYmopIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWREYXRlID0gbW9tZW50KG9iaikuZm9ybWF0KHRoaXMuZGF0ZUZvcm1hdCk7XG4gICAgICAgICAgICB0aGlzLmZvcm1WYWx1ZSA9IHRoaXMuc2VsZWN0ZWREYXRlO1xuICAgICAgICAgICAgdGhpcy51cGRhdGVGb3JtVmFsdWUoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucmVzZXQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uVG91Y2ggPSAoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnRvdWNoZWQgPSB0cnVlO1xuICAgICAgICAgICAgZm4oKTtcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBvbkJsdXIoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmlzU2VsZWN0aW5nRGF0ZSkgcmV0dXJuO1xuICAgICAgICB0aGlzLnRvdWNoZWQgPSB0cnVlO1xuICAgICAgICB0aGlzLm9uVG91Y2goKTtcbiAgICAgICAgaWYgKCF0aGlzLmRhdGVwaWNrZXJGb3JtLnZhbHVlLmRhdGVwaWNrZXIpIHtcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlRW1wdHlEYXRlcGlja2VyKCk7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5pc0Zvcm1WYWxpZCkge1xuICAgICAgICAgICAgdGhpcy5vbkNvbmZpcm0oKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24nLCBbJyRldmVudCddKVxuICAgIGhhbmRsZUtleWJvYXJkRXZlbnRzKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5wb3BvdmVyLmlzU2hvd24gfHwgZXZlbnQua2V5ICE9PSAnRW50ZXInKSByZXR1cm47XG4gICAgICAgIHRoaXMudG91Y2hlZCA9IHRydWU7XG4gICAgICAgIHRoaXMub25Ub3VjaCgpO1xuICAgICAgICBjb25zdCBkYXRlU3RyaW5nID0gdGhpcy5kYXRlcGlja2VyRm9ybS52YWx1ZS5kYXRlcGlja2VyO1xuICAgICAgICBjb25zdCBkYXRlID0gZGF0ZVN0cmluZyA/IG1vbWVudChkYXRlU3RyaW5nLCB0aGlzLmRhdGVGb3JtYXQsIHRydWUpLnRvRGF0ZSgpIDogbmV3IERhdGUoKTtcbiAgICAgICAgY29uc3QgZXJyb3JzID0gdGhpcy5nZXRWYWxpZGF0aW9uRXJyb3JzKGRhdGUpO1xuICAgICAgICBpZiAoZXJyb3JzKSByZXR1cm47XG4gICAgICAgIGlmICghdGhpcy5oYXNUaW1lUGlja2VyKSB7XG4gICAgICAgICAgICB0aGlzLm9uRGF0ZVNlbGVjdChkYXRlKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5pc0Zvcm1WYWxpZCkge1xuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZERhdGUgPSBtb21lbnQoZGF0ZSwgdGhpcy5kYXRlRm9ybWF0KS5mb3JtYXQodGhpcy5kYXRlRm9ybWF0KTtcbiAgICAgICAgICAgIHRoaXMub25Db25maXJtKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkRhdGVTZWxlY3QoZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzU2VsZWN0aW5nRGF0ZSA9IHRydWU7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWREYXRlID0gbW9tZW50KGV2ZW50KS5mb3JtYXQodGhpcy5kYXRlRm9ybWF0KTtcbiAgICAgICAgdGhpcy5kYXRlID0gbW9tZW50KHRoaXMuc2VsZWN0ZWREYXRlLCB0aGlzLmRhdGVGb3JtYXQpLnRvRGF0ZSgpO1xuICAgICAgICBpZiAoIXRoaXMuaGFzUHJlc2V0cyAmJiAhdGhpcy5oYXNUaW1lUGlja2VyKSB7XG4gICAgICAgICAgICB0aGlzLm9uQ29uZmlybSgpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuaXNTZWxlY3RpbmdEYXRlID0gZmFsc2U7XG4gICAgfVxuXG4gICAgb25UaW1lQ2hhbmdlKGV2ZW50OiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy50aW1lID0gZXZlbnQ7XG4gICAgfVxuXG4gICAgb25Db25maXJtKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNldEZvcm1WYWx1ZSgpO1xuICAgICAgICB0aGlzLnVwZGF0ZUZvcm1WYWx1ZSgpO1xuICAgICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMuZm9ybVZhbHVlKTtcbiAgICAgICAgdGhpcy50b3VjaGVkID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5vblRvdWNoKCk7XG4gICAgICAgIHRoaXMuY2xvc2VQb3BvdmVyKCk7XG4gICAgICAgIHRoaXMuZGF0ZUNoYW5nZS5lbWl0KHRoaXMuZm9ybVZhbHVlKTtcbiAgICB9XG5cbiAgICB2YWxpZGF0ZShjb250cm9sOiBBYnN0cmFjdENvbnRyb2w8YW55LCBhbnk+KTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xuICAgICAgICBpZiAodGhpcy5pc1NlbGVjdGluZ0RhdGUpIHJldHVybiBudWxsO1xuICAgICAgICBpZiAoY29udHJvbD8uZXJyb3JzPy5bJ3JlcXVpcmVkJ10pIHtcbiAgICAgICAgICAgIHRoaXMuaXNSZXF1aXJlZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0VmFsaWRhdGlvbkVycm9ycyhjb250cm9sPy52YWx1ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRWYWxpZGF0aW9uRXJyb3JzKGNvbnRyb2xEYXRlOiBEYXRlIHwgbnVsbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsIHtcbiAgICAgICAgaWYgKCFjb250cm9sRGF0ZSkgcmV0dXJuIHRoaXMuZ2V0UmVxdWlyZWRFcnJvcigpO1xuICAgICAgICBpZiAoIXRoaXMuaXNWYWxpZERhdGVGb3JtYXQoY29udHJvbERhdGUpKSByZXR1cm4geyBpbnZhbGlkRGF0ZUZvcm1hdDogdGhpcy5kYXRlRm9ybWF0IH07XG4gICAgICAgIHJldHVybiB0aGlzLmdldERhdGVSYW5nZUVycm9ycyhjb250cm9sRGF0ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpc1ZhbGlkRGF0ZUZvcm1hdChkYXRlOiBEYXRlKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBtb21lbnQoZGF0ZSwgdGhpcy5kYXRlRm9ybWF0LCB0cnVlKS5pc1ZhbGlkKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRSZXF1aXJlZEVycm9yKCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudG91Y2hlZCAmJiB0aGlzLmlzUmVxdWlyZWQgPyB7IHJlcXVpcmVkOiB0cnVlIH0gOiBudWxsO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0RGF0ZVJhbmdlRXJyb3JzKGNvbnRyb2xEYXRlOiBEYXRlKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xuICAgICAgICBjb25zdCBtaW5EYXRlID0gdGhpcy5oYXNUaW1lUGlja2VyID8gdGhpcy5taW5EYXRlVGltZSA6IHRoaXMubWluRGF0ZTtcbiAgICAgICAgY29uc3QgbWF4RGF0ZSA9IHRoaXMuaGFzVGltZVBpY2tlciA/IHRoaXMubWF4RGF0ZVRpbWUgOiB0aGlzLm1heERhdGU7XG4gICAgICAgIGNvbnN0IGRhdGVPYmplY3QgPSBuZXcgRGF0ZShjb250cm9sRGF0ZSk7XG4gICAgICAgIGlmIChtaW5EYXRlICYmIGRhdGVPYmplY3QgPCBtaW5EYXRlKSB7XG4gICAgICAgICAgICByZXR1cm4geyBbdGhpcy5oYXNUaW1lUGlja2VyID8gJ21pbkRhdGVUaW1lJyA6ICdtaW5EYXRlJ106IHsgZGF0ZTogbWluRGF0ZSwgZm9ybWF0OiB0aGlzLmRhdGVGb3JtYXQgfSB9O1xuICAgICAgICB9XG4gICAgICAgIGlmIChtYXhEYXRlICYmIGRhdGVPYmplY3QgPiBtYXhEYXRlKSB7XG4gICAgICAgICAgICByZXR1cm4geyBbdGhpcy5oYXNUaW1lUGlja2VyID8gJ21heERhdGVUaW1lJyA6ICdtYXhEYXRlJ106IHsgZGF0ZTogbWF4RGF0ZSwgZm9ybWF0OiB0aGlzLmRhdGVGb3JtYXQgfSB9O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlRm9ybVZhbHVlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRhdGVwaWNrZXJGb3JtLmdldCgnZGF0ZXBpY2tlcicpPy5wYXRjaFZhbHVlKHRoaXMuZm9ybVZhbHVlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNsb3NlUG9wb3ZlcigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5wb3BvdmVyLmhpZGUoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlc2V0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRhdGVwaWNrZXJGb3JtLnJlc2V0KCk7XG4gICAgICAgIHRoaXMuZm9ybVZhbHVlID0gJyc7XG4gICAgICAgIHRoaXMuc2V0Q3VycmVudERhdGUoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldEN1cnJlbnREYXRlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRhdGUgPSBuZXcgRGF0ZSgpO1xuICAgICAgICB0aGlzLmRhdGUuc2V0U2Vjb25kcygwLCAwKTtcbiAgICAgICAgdGhpcy52aXNpYmxlRGF0ZSA9IHRoaXMuZGF0ZTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZERhdGUgPSB0aGlzLnNob3dUd2VsdmVIcnNGb3JtYXRcbiAgICAgICAgICAgID8gbW9tZW50KHRoaXMuZGF0ZSkuZm9ybWF0KHRoaXMuZGF0ZUZvcm1hdCkucmVwbGFjZSgnMDA6MDAnLCAnMTI6MDAnKVxuICAgICAgICAgICAgOiBtb21lbnQodGhpcy5kYXRlKS5mb3JtYXQodGhpcy5kYXRlRm9ybWF0KTtcbiAgICAgICAgdGhpcy5vblRpbWVTZWxlY3QoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldE1pbkRhdGUodmFsdWU6IERhdGUpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaGFzVGltZVBpY2tlcikge1xuICAgICAgICAgICAgdGhpcy5taW5EYXRlVGltZSA9IG5ldyBEYXRlKHZhbHVlKTtcbiAgICAgICAgICAgIHRoaXMubWluRGF0ZVRpbWUuc2V0U2Vjb25kcygwLCAwKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm1pbkRhdGUgPSBuZXcgRGF0ZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMubWluRGF0ZS5zZXRIb3VycygwLCAwLCAwLCAwKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldE1heERhdGUodmFsdWU6IERhdGUpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaGFzVGltZVBpY2tlcikge1xuICAgICAgICAgICAgdGhpcy5tYXhEYXRlVGltZSA9IG5ldyBEYXRlKHZhbHVlKTtcbiAgICAgICAgICAgIHRoaXMubWF4RGF0ZVRpbWUuc2V0U2Vjb25kcygwLCAwKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm1heERhdGUgPSBuZXcgRGF0ZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMubWF4RGF0ZS5zZXRIb3VycygyMywgNTksIDU5LCA5OTkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZm9ybVZhbHVlQ2hhbmdlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRhdGVwaWNrZXJGb3JtLmdldCgnZGF0ZXBpY2tlcicpPy52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKHZhbHVlID0+IHtcbiAgICAgICAgICAgIGlmICh2YWx1ZSA9PT0gbnVsbCkgcmV0dXJuO1xuICAgICAgICAgICAgaWYgKHZhbHVlLmxlbmd0aCA8PSAxKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZERhdGUgPSB2YWx1ZTtcbiAgICAgICAgICAgICAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcblxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuZGF0ZSA9IG1vbWVudCh2YWx1ZSwgdGhpcy5kYXRlRm9ybWF0KS50b0RhdGUoKTtcbiAgICAgICAgICAgIGlmICh0aGlzLmlzVmFsaWREYXRlRm9ybWF0KHRoaXMuZGF0ZSkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnZpc2libGVEYXRlID0gdGhpcy5kYXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZERhdGUgPSB2YWx1ZTtcbiAgICAgICAgICAgIHRoaXMub25UaW1lU2VsZWN0KCk7XG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoYW5kbGVFbXB0eURhdGVwaWNrZXIoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVzZXQoKTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSgnJyk7XG4gICAgICAgIHRoaXMuZGF0ZUNoYW5nZS5lbWl0KCcnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldEZvcm1WYWx1ZSgpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBbZGF0ZVBhcnRdID0gdGhpcy5zZWxlY3RlZERhdGUuc3BsaXQoJyAnKTtcbiAgICAgICAgdGhpcy5mb3JtVmFsdWUgPSB0aGlzLmhhc1RpbWVQaWNrZXIgPyBgJHtkYXRlUGFydH0gJHt0aGlzLnRpbWV9YCA6IHRoaXMuc2VsZWN0ZWREYXRlO1xuICAgICAgICByZXR1cm4gdGhpcy5mb3JtVmFsdWU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBvblRpbWVTZWxlY3QoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5zZWxlY3RlZERhdGUpIHJldHVybjtcbiAgICAgICAgY29uc3QgZGF0ZVBhcnRzID0gdGhpcy5zZWxlY3RlZERhdGUuc3BsaXQoJyAnKTtcbiAgICAgICAgdGhpcy50aW1lID0gZGF0ZVBhcnRzLmxlbmd0aCA+PSAzID8gYCR7ZGF0ZVBhcnRzWzFdfSAke2RhdGVQYXJ0c1syXX1gIDogZGF0ZVBhcnRzWzFdO1xuICAgIH1cbn1cbiIsIjxmb3JtIFtmb3JtR3JvdXBdPVwiZGF0ZXBpY2tlckZvcm1cIj5cbiAgICA8aW5wdXRcbiAgICAgICAgY2xhc3M9XCJzY2wtY3VzdG9tLWRhdGVwaWNrZXJfX2lucHV0XCJcbiAgICAgICAgbmJJbnB1dFxuICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgIGZvcm1Db250cm9sTmFtZT1cImRhdGVwaWNrZXJcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgICBbcmVhZG9ubHldPVwiaXNSZWFkb25seVwiXG4gICAgICAgIFtuYlBvcG92ZXJdPVwiY2FsZW5kYXJcIlxuICAgICAgICBuYlBvcG92ZXJQbGFjZW1lbnQ9XCJib3R0b21cIlxuICAgICAgICBuYlBvcG92ZXJTaXplPVwibGFyZ2VcIlxuICAgICAgICBbbmJQb3BvdmVyVHJpZ2dlcl09XCJpc1JlYWRvbmx5ID8gJ25vb3AnIDogJ2ZvY3VzJ1wiXG4gICAgICAgIChibHVyKT1cIm9uQmx1cigpXCIgLz5cblxuICAgIDxkaXYgY2xhc3M9XCJzY2wtY3VzdG9tLWRhdGVwaWNrZXJfX2ljb25cIj5cbiAgICAgICAgPG5iLWljb24gaWNvbj1cImNhbGVuZGFyXCIgcGFjaz1cInNjbC1kYXRlcGlja2VyLWljb25cIj48L25iLWljb24+XG4gICAgPC9kaXY+XG5cbiAgICA8bmctdGVtcGxhdGUgI2NhbGVuZGFyPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2NsLWN1c3RvbS1kYXRlcGlja2VyX19wb3BvdmVyXCIgKG1vdXNlZG93bik9XCIkZXZlbnQucHJldmVudERlZmF1bHQoKVwiIGFyaWEtbGFiZWw9XCJDYWxlbmRhclwiIHRhYmluZGV4PVwiLTFcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzY2wtY3VzdG9tLWRhdGVwaWNrZXJfX2NvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICA8bmItY2FsZW5kYXIgWyhkYXRlKV09XCJkYXRlXCIgKGRhdGVDaGFuZ2UpPVwib25EYXRlU2VsZWN0KCRldmVudClcIiBbdmlzaWJsZURhdGVdPVwidmlzaWJsZURhdGVcIiBbbWluXT1cIm1pbkRhdGVcIiBbbWF4XT1cIm1heERhdGVcIj4gPC9uYi1jYWxlbmRhcj5cblxuICAgICAgICAgICAgICAgIDx0aW1lcGlja2VyXG4gICAgICAgICAgICAgICAgICAgICN0aW1lcGlja2VyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2NsLWN1c3RvbS1kYXRlcGlja2VyX190aW1lcGlja2VyXCJcbiAgICAgICAgICAgICAgICAgICAgKHRpbWVDaGFuZ2UpPVwib25UaW1lQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICBbdGltZVZhbHVlc109XCJ0aW1lXCJcbiAgICAgICAgICAgICAgICAgICAgW3R3ZWx2ZUhvdXJzRm9ybWF0XT1cInNob3dUd2VsdmVIcnNGb3JtYXRcIlxuICAgICAgICAgICAgICAgICAgICBbZm9ybWF0XT1cInRpbWVGb3JtYXRcIlxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImhhc1RpbWVQaWNrZXJcIj5cbiAgICAgICAgICAgICAgICA8L3RpbWVwaWNrZXI+XG4gICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNjbC1jdXN0b20tZGF0ZXBpY2tlcl9fZm9vdGVyXCIgKm5nSWY9XCJoYXNUaW1lUGlja2VyXCI+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBuYkJ1dHRvbiBnaG9zdCBzdGF0dXM9XCJwcmltYXJ5XCIgKm5nSWY9XCJzaG93UHJlc2V0c1wiPkNob29zZSBmcm9tIHByZXNlbnRzPC9idXR0b24+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBuYkJ1dHRvbiBzdGF0dXM9XCJwcmltYXJ5XCIgW2Rpc2FibGVkXT1cIiFpc0Zvcm1WYWxpZFwiIChjbGljayk9XCJvbkNvbmZpcm0oKVwiPkNvbmZpcm08L2J1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuPC9mb3JtPlxuIl19
|
|
364
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWRhdGVwaWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3BhY2thZ2VzL2N1c3RvbS1kYXRlcGlja2VyL2N1c3RvbS1kYXRlcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9wYWNrYWdlcy9jdXN0b20tZGF0ZXBpY2tlci9jdXN0b20tZGF0ZXBpY2tlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLGNBQWMsRUFBRSxLQUFLLEVBQVUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pKLE9BQU8sRUFLSCxhQUFhLEVBQ2IsaUJBQWlCLEVBQ2pCLG1CQUFtQixHQUV0QixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFDSCxjQUFjLEVBQ2QsbUJBQW1CLEVBQ25CLGdCQUFnQixFQUVoQixZQUFZLEVBQ1osYUFBYSxFQUNiLGtCQUFrQixFQUNsQixlQUFlLEVBQ2Ysa0JBQWtCLEdBQ3JCLE1BQU0sZ0JBQWdCLENBQUM7QUFDeEIsT0FBTyxLQUFLLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFDakMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDOzs7OztBQUV2RCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0FB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O3dCQUNoQixlQUFlO3dCQUNmLGtCQUFrQjt3QkFDbEIsbUJBQW1CO3dCQUNuQixtQkFBbUI7d0JBQ25CLGNBQWM7d0JBQ2QsYUFBYTt3QkFDYixZQUFZO3FCQUNmLGFBQ1U7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsMkJBQTJCLENBQUM7NEJBQ3pELEtBQUssRUFBRSxJQUFJO3lCQUNkO3dCQUNELEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxXQUFXLDRCQUE0QixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7d0JBQ2hGLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7cUJBQ2hELFFBQ0s7d0JBQ0YsS0FBSyxFQUFFLHdCQUF3QjtxQkFDbEM7Z0lBR1MsVUFBVTtzQkFBbkIsTUFBTTtnQkFFd0IsT0FBTztzQkFBckMsU0FBUzt1QkFBQyxrQkFBa0I7Z0JBQ2lCLFFBQVE7c0JBQXJELFNBQVM7dUJBQUMsVUFBVSxFQUFFLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRTtnQkFDbkIsVUFBVTtzQkFBbEMsU0FBUzt1QkFBQyxZQUFZO2dCQUVkLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ08sTUFBTTtzQkFBbEIsS0FBSztnQkFVTyxHQUFHO3NCQUFmLEtBQUs7Z0JBV08sR0FBRztzQkFBZixLQUFLO2dCQVlGLGNBQWM7c0JBRGpCLEtBQUs7Z0JBWUYsV0FBVztzQkFEZCxLQUFLO2dCQXFCRixRQUFRO3NCQURYLEtBQUs7Z0JBZ0dOLG9CQUFvQjtzQkFEbkIsWUFBWTt1QkFBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgZm9yd2FyZFJlZiwgSG9zdExpc3RlbmVyLCBJbmplY3Rpb25Ub2tlbiwgSW5wdXQsIE9uSW5pdCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQWJzdHJhY3RDb250cm9sLFxuICAgIENvbnRyb2xWYWx1ZUFjY2Vzc29yLFxuICAgIEZvcm1CdWlsZGVyLFxuICAgIEZvcm1Hcm91cCxcbiAgICBOR19WQUxJREFUT1JTLFxuICAgIE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgVmFsaWRhdGlvbkVycm9ycyxcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtcbiAgICBOYkJ1dHRvbk1vZHVsZSxcbiAgICBOYkNhbGVuZGFyS2l0TW9kdWxlLFxuICAgIE5iQ2FsZW5kYXJNb2R1bGUsXG4gICAgTmJJY29uTGlicmFyaWVzLFxuICAgIE5iSWNvbk1vZHVsZSxcbiAgICBOYklucHV0TW9kdWxlLFxuICAgIE5iUG9wb3ZlckRpcmVjdGl2ZSxcbiAgICBOYlBvcG92ZXJNb2R1bGUsXG4gICAgTmJUaW1lcGlja2VyTW9kdWxlLFxufSBmcm9tICdAbmVidWxhci90aGVtZSc7XG5pbXBvcnQgKiBhcyBtb21lbnQgZnJvbSAnbW9tZW50JztcbmltcG9ydCB7IERBVEVfRk9STUFUIH0gZnJvbSAnLi9jdXN0b20tZGF0ZXBpY2tlci5tb2RlbCc7XG5pbXBvcnQgeyBUaW1lcGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi90aW1lcGlja2VyL3RpbWVwaWNrZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFNjbERhdGVwaWNrZXJJY29ucyB9IGZyb20gJy4vZGF0ZXBpY2tlci5pY29uJztcblxuZXhwb3J0IGNvbnN0IERBVEVfVElNRV9QSUNLRVIgPSBuZXcgSW5qZWN0aW9uVG9rZW4oJ2RhdGVUaW1lUGlja2VyJyk7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnc2NsLWRhdGV0aW1lLXBpY2tlcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2N1c3RvbS1kYXRlcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBOYkNhbGVuZGFyS2l0TW9kdWxlLFxuICAgICAgICBOYkNhbGVuZGFyTW9kdWxlLFxuICAgICAgICBOYlBvcG92ZXJNb2R1bGUsXG4gICAgICAgIE5iVGltZXBpY2tlck1vZHVsZSxcbiAgICAgICAgVGltZXBpY2tlckNvbXBvbmVudCxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgICAgTmJCdXR0b25Nb2R1bGUsXG4gICAgICAgIE5iSW5wdXRNb2R1bGUsXG4gICAgICAgIE5iSWNvbk1vZHVsZSxcbiAgICBdLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFNjbERhdGVUaW1lcGlja2VyQ29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgICB7IHByb3ZpZGU6IE5HX1ZBTElEQVRPUlMsIHVzZUV4aXN0aW5nOiBTY2xEYXRlVGltZXBpY2tlckNvbXBvbmVudCwgbXVsdGk6IHRydWUgfSxcbiAgICAgICAgeyBwcm92aWRlOiBEQVRFX1RJTUVfUElDS0VSLCB1c2VWYWx1ZTogdHJ1ZSB9LFxuICAgIF0sXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ3NjbC1jdXN0b20tZGF0ZXBpY2tlciAnLFxuICAgIH0sXG59KVxuZXhwb3J0IGNsYXNzIFNjbERhdGVUaW1lcGlja2VyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gICAgQE91dHB1dCgpIGRhdGVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgICBAVmlld0NoaWxkKE5iUG9wb3ZlckRpcmVjdGl2ZSkgcG9wb3ZlciE6IE5iUG9wb3ZlckRpcmVjdGl2ZTtcbiAgICBAVmlld0NoaWxkKCdjYWxlbmRhcicsIHsgcmVhZDogVGVtcGxhdGVSZWYgfSkgY2FsZW5kYXIhOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAgIEBWaWV3Q2hpbGQoJ3RpbWVwaWNrZXInKSB0aW1lcGlja2VyITogVGltZXBpY2tlckNvbXBvbmVudDtcblxuICAgIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmcgPSAnU2VsZWN0IGEgZGF0ZSc7XG4gICAgQElucHV0KCkgc2V0IGZvcm1hdCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5kYXRlRm9ybWF0ID0gdmFsdWU7XG4gICAgICAgICAgICB0aGlzLmhhc0Zvcm1hdCA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZ2V0IGZvcm1hdCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0ZUZvcm1hdDtcbiAgICB9XG5cbiAgICBASW5wdXQoKSBzZXQgbWluKHZhbHVlOiBEYXRlIHwgbnVsbCB8IHVuZGVmaW5lZCkge1xuICAgICAgICBpZiAoIXZhbHVlKSByZXR1cm47XG4gICAgICAgIHRoaXMuc2V0TWluRGF0ZSh2YWx1ZSk7XG4gICAgICAgIGlmICh0aGlzLmRhdGVwaWNrZXJGb3JtLnZhbHVlLmRhdGVwaWNrZXIgIT09IG51bGwpIHtcbiAgICAgICAgICAgIHRoaXMub25DaGFuZ2UodGhpcy5mb3JtVmFsdWUpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGdldCBtaW4oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmhhc1RpbWVQaWNrZXIgPyB0aGlzLm1pbkRhdGVUaW1lIDogdGhpcy5taW5EYXRlO1xuICAgIH1cblxuICAgIEBJbnB1dCgpIHNldCBtYXgodmFsdWU6IERhdGUgfCBudWxsIHwgdW5kZWZpbmVkKSB7XG4gICAgICAgIGlmICghdmFsdWUpIHJldHVybjtcbiAgICAgICAgdGhpcy5zZXRNYXhEYXRlKHZhbHVlKTtcbiAgICAgICAgaWYgKHRoaXMuZGF0ZXBpY2tlckZvcm0udmFsdWUuZGF0ZXBpY2tlciAhPT0gbnVsbCkge1xuICAgICAgICAgICAgdGhpcy5vbkNoYW5nZSh0aGlzLmZvcm1WYWx1ZSk7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZ2V0IG1heCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGFzVGltZVBpY2tlciA/IHRoaXMubWF4RGF0ZVRpbWUgOiB0aGlzLm1heERhdGU7XG4gICAgfVxuXG4gICAgQElucHV0KClcbiAgICBzZXQgZGF0ZVRpbWVQaWNrZXIodmFsdWU6IHN0cmluZyB8IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5oYXNUaW1lUGlja2VyID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICAgICAgaWYgKCF0aGlzLmhhc0Zvcm1hdCkge1xuICAgICAgICAgICAgdGhpcy5kYXRlRm9ybWF0ID0gREFURV9GT1JNQVQuREVGQVVMVF9EQVRFX1RJTUU7XG4gICAgICAgIH1cbiAgICB9XG4gICAgZ2V0IGRhdGVUaW1lUGlja2VyKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5oYXNUaW1lUGlja2VyO1xuICAgIH1cblxuICAgIEBJbnB1dCgpXG4gICAgc2V0IHNob3dQcmVzZXRzKHZhbHVlOiBzdHJpbmcgfCBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuaGFzUHJlc2V0cyA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIGdldCBzaG93UHJlc2V0cygpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGFzUHJlc2V0cztcbiAgICB9XG5cbiAgICAvLyBGb3IgdHdlbGV2ZSBob3VyIGZvcm1hdFxuICAgIC8vIEBJbnB1dCgpXG4gICAgLy8gc2V0IHR3ZWx2ZUhvdXJzRm9ybWF0KHZhbHVlOiBzdHJpbmcgfCBib29sZWFuKSB7XG4gICAgLy8gICAgIHRoaXMuc2hvd1R3ZWx2ZUhyc0Zvcm1hdCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgLy8gICAgIGlmICghdGhpcy5oYXNGb3JtYXQpIHtcbiAgICAvLyAgICAgICAgIHRoaXMuZGF0ZUZvcm1hdCA9IERBVEVfRk9STUFULlRXRUxWRV9IUl9EQVRFVElNRTtcbiAgICAvLyAgICAgfVxuICAgIC8vIH1cbiAgICAvLyBnZXQgdHdlbHZlSG91cnNGb3JtYXQoKSB7XG4gICAgLy8gICAgIHJldHVybiB0aGlzLnNob3dUd2VsdmVIcnNGb3JtYXQ7XG4gICAgLy8gfVxuXG4gICAgQElucHV0KClcbiAgICBzZXQgcmVhZG9ubHkodmFsdWU6IHN0cmluZyB8IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5pc1JlYWRvbmx5ID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG5cbiAgICBEQVRFX0ZPUk1BVCA9IERBVEVfRk9STUFUO1xuICAgIGRhdGVwaWNrZXJGb3JtITogRm9ybUdyb3VwO1xuICAgIGRhdGVGb3JtYXQgPSAnWVlZWS1NTS1ERCc7XG4gICAgZm9ybVZhbHVlID0gJyc7XG5cbiAgICB2aXNpYmxlRGF0ZSA9IG5ldyBEYXRlKCk7XG4gICAgbWF4RGF0ZSE6IERhdGU7XG4gICAgbWluRGF0ZSE6IERhdGU7XG4gICAgbWluRGF0ZVRpbWUhOiBEYXRlO1xuICAgIG1heERhdGVUaW1lITogRGF0ZTtcblxuICAgIGRhdGU6IERhdGUgPSBuZXcgRGF0ZSgpO1xuICAgIHNlbGVjdGVkRGF0ZSA9ICcnO1xuICAgIHRpbWUgPSAnMDA6MDAnO1xuXG4gICAgZGlzYWJsZWQgPSBmYWxzZTtcbiAgICBoYXNUaW1lUGlja2VyID0gZmFsc2U7XG4gICAgaGFzRm9ybWF0ID0gZmFsc2U7XG4gICAgaGFzUHJlc2V0cyA9IGZhbHNlO1xuICAgIGlzUmVxdWlyZWQgPSBmYWxzZTtcbiAgICBzaG93VHdlbHZlSHJzRm9ybWF0ID0gZmFsc2U7XG4gICAgcHJpdmF0ZSB0b3VjaGVkID0gZmFsc2U7XG4gICAgaXNTZWxlY3RpbmdEYXRlID0gZmFsc2U7XG4gICAgaXNSZWFkb25seSA9IGZhbHNlO1xuXG4gICAgZ2V0IGlzRm9ybVZhbGlkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5kYXRlVGltZVBpY2tlciA/ICEhKHRoaXMuc2VsZWN0ZWREYXRlICYmIHRoaXMudGltZSkgOiAhIXRoaXMuc2VsZWN0ZWREYXRlO1xuICAgIH1cblxuICAgIGdldCB0aW1lRm9ybWF0KCk6IHN0cmluZyB7XG4gICAgICAgIGxldCB0aW1lRm9ybWF0ID0gJyc7XG4gICAgICAgIGlmICgvW0hoXS8udGVzdCh0aGlzLmRhdGVGb3JtYXQpKSB0aW1lRm9ybWF0ICs9ICdISCc7XG4gICAgICAgIGlmICgvbS8udGVzdCh0aGlzLmRhdGVGb3JtYXQpKSB0aW1lRm9ybWF0ICs9ICc6bW0nO1xuICAgICAgICBpZiAoL3MvLnRlc3QodGhpcy5kYXRlRm9ybWF0KSkgdGltZUZvcm1hdCArPSAnOnNzJztcbiAgICAgICAgaWYgKC9bQWFdLy50ZXN0KHRoaXMuZGF0ZUZvcm1hdCkpIHRpbWVGb3JtYXQgKz0gJyBhJztcbiAgICAgICAgcmV0dXJuIHRpbWVGb3JtYXQ7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyLFxuICAgICAgICBwcml2YXRlIGljb25MaWJyYXJpZXM6IE5iSWNvbkxpYnJhcmllc1xuICAgICkge1xuICAgICAgICB0aGlzLmljb25MaWJyYXJpZXMucmVnaXN0ZXJTdmdQYWNrKCdzY2wtZGF0ZXBpY2tlci1pY29uJywgU2NsRGF0ZXBpY2tlckljb25zKTtcbiAgICAgICAgdGhpcy5kYXRlcGlja2VyRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xuICAgICAgICAgICAgZGF0ZXBpY2tlcjogW251bGxdLFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5mb3JtVmFsdWVDaGFuZ2UoKTtcbiAgICAgICAgaWYgKHRoaXMubWluRGF0ZVRpbWUpIHtcbiAgICAgICAgICAgIHRoaXMubWluRGF0ZVRpbWUuc2V0U2Vjb25kcygwKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uQ2hhbmdlOiAodmFsOiBzdHJpbmcpID0+IHZvaWQgPSAoKSA9PiB7fTtcbiAgICBvblRvdWNoOiAoKSA9PiB2b2lkID0gKCkgPT4ge307XG5cbiAgICB3cml0ZVZhbHVlKG9iajogYW55KTogdm9pZCB7XG4gICAgICAgIGlmIChvYmopIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWREYXRlID0gbW9tZW50KG9iaikuZm9ybWF0KHRoaXMuZGF0ZUZvcm1hdCk7XG4gICAgICAgICAgICB0aGlzLmZvcm1WYWx1ZSA9IHRoaXMuc2VsZWN0ZWREYXRlO1xuICAgICAgICAgICAgdGhpcy51cGRhdGVGb3JtVmFsdWUoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucmVzZXQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uVG91Y2ggPSAoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnRvdWNoZWQgPSB0cnVlO1xuICAgICAgICAgICAgZm4oKTtcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBvbkJsdXIoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmlzU2VsZWN0aW5nRGF0ZSkgcmV0dXJuO1xuICAgICAgICB0aGlzLnRvdWNoZWQgPSB0cnVlO1xuICAgICAgICB0aGlzLm9uVG91Y2goKTtcbiAgICAgICAgaWYgKCF0aGlzLmRhdGVwaWNrZXJGb3JtLnZhbHVlLmRhdGVwaWNrZXIpIHtcbiAgICAgICAgICAgIHRoaXMuaGFuZGxlRW1wdHlEYXRlcGlja2VyKCk7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5pc0Zvcm1WYWxpZCkge1xuICAgICAgICAgICAgdGhpcy5vbkNvbmZpcm0oKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24nLCBbJyRldmVudCddKVxuICAgIGhhbmRsZUtleWJvYXJkRXZlbnRzKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5wb3BvdmVyLmlzU2hvd24gfHwgZXZlbnQua2V5ICE9PSAnRW50ZXInKSByZXR1cm47XG4gICAgICAgIHRoaXMudG91Y2hlZCA9IHRydWU7XG4gICAgICAgIHRoaXMub25Ub3VjaCgpO1xuICAgICAgICBjb25zdCBkYXRlU3RyaW5nID0gdGhpcy5kYXRlcGlja2VyRm9ybS52YWx1ZS5kYXRlcGlja2VyO1xuICAgICAgICBjb25zdCBkYXRlID0gZGF0ZVN0cmluZyA/IG1vbWVudChkYXRlU3RyaW5nLCB0aGlzLmRhdGVGb3JtYXQsIHRydWUpLnRvRGF0ZSgpIDogbmV3IERhdGUoKTtcbiAgICAgICAgY29uc3QgZXJyb3JzID0gdGhpcy5nZXRWYWxpZGF0aW9uRXJyb3JzKGRhdGUpO1xuICAgICAgICBpZiAoZXJyb3JzKSByZXR1cm47XG4gICAgICAgIGlmICghdGhpcy5oYXNUaW1lUGlja2VyKSB7XG4gICAgICAgICAgICB0aGlzLm9uRGF0ZVNlbGVjdChkYXRlKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5pc0Zvcm1WYWxpZCkge1xuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZERhdGUgPSBtb21lbnQoZGF0ZSwgdGhpcy5kYXRlRm9ybWF0KS5mb3JtYXQodGhpcy5kYXRlRm9ybWF0KTtcbiAgICAgICAgICAgIHRoaXMub25Db25maXJtKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkRhdGVTZWxlY3QoZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzU2VsZWN0aW5nRGF0ZSA9IHRydWU7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWREYXRlID0gbW9tZW50KGV2ZW50KS5mb3JtYXQodGhpcy5kYXRlRm9ybWF0KTtcbiAgICAgICAgdGhpcy5kYXRlID0gbW9tZW50KHRoaXMuc2VsZWN0ZWREYXRlLCB0aGlzLmRhdGVGb3JtYXQpLnRvRGF0ZSgpO1xuICAgICAgICBpZiAoIXRoaXMuaGFzUHJlc2V0cyAmJiAhdGhpcy5oYXNUaW1lUGlja2VyKSB7XG4gICAgICAgICAgICB0aGlzLm9uQ29uZmlybSgpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuaXNTZWxlY3RpbmdEYXRlID0gZmFsc2U7XG4gICAgfVxuXG4gICAgb25UaW1lQ2hhbmdlKGV2ZW50OiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy50aW1lID0gZXZlbnQ7XG4gICAgfVxuXG4gICAgb25Db25maXJtKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNldEZvcm1WYWx1ZSgpO1xuICAgICAgICB0aGlzLnVwZGF0ZUZvcm1WYWx1ZSgpO1xuICAgICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMuZm9ybVZhbHVlKTtcbiAgICAgICAgdGhpcy50b3VjaGVkID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5vblRvdWNoKCk7XG4gICAgICAgIHRoaXMuY2xvc2VQb3BvdmVyKCk7XG4gICAgICAgIHRoaXMuZGF0ZUNoYW5nZS5lbWl0KHRoaXMuZm9ybVZhbHVlKTtcbiAgICB9XG5cbiAgICB2YWxpZGF0ZShjb250cm9sOiBBYnN0cmFjdENvbnRyb2w8YW55LCBhbnk+KTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xuICAgICAgICBpZiAodGhpcy5pc1NlbGVjdGluZ0RhdGUpIHJldHVybiBudWxsO1xuICAgICAgICBpZiAoY29udHJvbD8uZXJyb3JzPy5bJ3JlcXVpcmVkJ10pIHtcbiAgICAgICAgICAgIHRoaXMuaXNSZXF1aXJlZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0VmFsaWRhdGlvbkVycm9ycyhjb250cm9sPy52YWx1ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRWYWxpZGF0aW9uRXJyb3JzKGNvbnRyb2xEYXRlOiBEYXRlIHwgbnVsbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsIHtcbiAgICAgICAgaWYgKCFjb250cm9sRGF0ZSkgcmV0dXJuIHRoaXMuZ2V0UmVxdWlyZWRFcnJvcigpO1xuICAgICAgICBpZiAoIXRoaXMuaXNWYWxpZERhdGVGb3JtYXQoY29udHJvbERhdGUpKSByZXR1cm4geyBpbnZhbGlkRGF0ZUZvcm1hdDogdGhpcy5kYXRlRm9ybWF0IH07XG4gICAgICAgIHJldHVybiB0aGlzLmdldERhdGVSYW5nZUVycm9ycyhjb250cm9sRGF0ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpc1ZhbGlkRGF0ZUZvcm1hdChkYXRlOiBEYXRlKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBtb21lbnQoZGF0ZSwgdGhpcy5kYXRlRm9ybWF0LCB0cnVlKS5pc1ZhbGlkKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRSZXF1aXJlZEVycm9yKCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudG91Y2hlZCAmJiB0aGlzLmlzUmVxdWlyZWQgPyB7IHJlcXVpcmVkOiB0cnVlIH0gOiBudWxsO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0RGF0ZVJhbmdlRXJyb3JzKGNvbnRyb2xEYXRlOiBEYXRlKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xuICAgICAgICBjb25zdCBtaW5EYXRlID0gdGhpcy5oYXNUaW1lUGlja2VyID8gdGhpcy5taW5EYXRlVGltZSA6IHRoaXMubWluRGF0ZTtcbiAgICAgICAgY29uc3QgbWF4RGF0ZSA9IHRoaXMuaGFzVGltZVBpY2tlciA/IHRoaXMubWF4RGF0ZVRpbWUgOiB0aGlzLm1heERhdGU7XG4gICAgICAgIGNvbnN0IGRhdGVPYmplY3QgPSBuZXcgRGF0ZShjb250cm9sRGF0ZSk7XG4gICAgICAgIGlmIChtaW5EYXRlICYmIGRhdGVPYmplY3QgPCBtaW5EYXRlKSB7XG4gICAgICAgICAgICByZXR1cm4geyBbdGhpcy5oYXNUaW1lUGlja2VyID8gJ21pbkRhdGVUaW1lJyA6ICdtaW5EYXRlJ106IHsgZGF0ZTogbWluRGF0ZSwgZm9ybWF0OiB0aGlzLmRhdGVGb3JtYXQgfSB9O1xuICAgICAgICB9XG4gICAgICAgIGlmIChtYXhEYXRlICYmIGRhdGVPYmplY3QgPiBtYXhEYXRlKSB7XG4gICAgICAgICAgICByZXR1cm4geyBbdGhpcy5oYXNUaW1lUGlja2VyID8gJ21heERhdGVUaW1lJyA6ICdtYXhEYXRlJ106IHsgZGF0ZTogbWF4RGF0ZSwgZm9ybWF0OiB0aGlzLmRhdGVGb3JtYXQgfSB9O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlRm9ybVZhbHVlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRhdGVwaWNrZXJGb3JtLmdldCgnZGF0ZXBpY2tlcicpPy5wYXRjaFZhbHVlKHRoaXMuZm9ybVZhbHVlKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNsb3NlUG9wb3ZlcigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5wb3BvdmVyLmhpZGUoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlc2V0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRhdGVwaWNrZXJGb3JtLnJlc2V0KCk7XG4gICAgICAgIHRoaXMuZm9ybVZhbHVlID0gJyc7XG4gICAgICAgIHRoaXMuc2V0Q3VycmVudERhdGUoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldEN1cnJlbnREYXRlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRhdGUgPSBuZXcgRGF0ZSgpO1xuICAgICAgICB0aGlzLmRhdGUuc2V0U2Vjb25kcygwLCAwKTtcbiAgICAgICAgdGhpcy52aXNpYmxlRGF0ZSA9IHRoaXMuZGF0ZTtcbiAgICAgICAgdGhpcy5zZWxlY3RlZERhdGUgPSB0aGlzLnNob3dUd2VsdmVIcnNGb3JtYXRcbiAgICAgICAgICAgID8gbW9tZW50KHRoaXMuZGF0ZSkuZm9ybWF0KHRoaXMuZGF0ZUZvcm1hdCkucmVwbGFjZSgnMDA6MDAnLCAnMTI6MDAnKVxuICAgICAgICAgICAgOiBtb21lbnQodGhpcy5kYXRlKS5mb3JtYXQodGhpcy5kYXRlRm9ybWF0KTtcbiAgICAgICAgdGhpcy5vblRpbWVTZWxlY3QoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldE1pbkRhdGUodmFsdWU6IERhdGUpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaGFzVGltZVBpY2tlcikge1xuICAgICAgICAgICAgdGhpcy5taW5EYXRlVGltZSA9IG5ldyBEYXRlKHZhbHVlKTtcbiAgICAgICAgICAgIHRoaXMubWluRGF0ZVRpbWUuc2V0U2Vjb25kcygwLCAwKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm1pbkRhdGUgPSBuZXcgRGF0ZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMubWluRGF0ZS5zZXRIb3VycygwLCAwLCAwLCAwKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldE1heERhdGUodmFsdWU6IERhdGUpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaGFzVGltZVBpY2tlcikge1xuICAgICAgICAgICAgdGhpcy5tYXhEYXRlVGltZSA9IG5ldyBEYXRlKHZhbHVlKTtcbiAgICAgICAgICAgIHRoaXMubWF4RGF0ZVRpbWUuc2V0U2Vjb25kcygwLCAwKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLm1heERhdGUgPSBuZXcgRGF0ZSh2YWx1ZSk7XG4gICAgICAgIHRoaXMubWF4RGF0ZS5zZXRIb3VycygyMywgNTksIDU5LCA5OTkpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZm9ybVZhbHVlQ2hhbmdlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRhdGVwaWNrZXJGb3JtLmdldCgnZGF0ZXBpY2tlcicpPy52YWx1ZUNoYW5nZXMuc3Vic2NyaWJlKHZhbHVlID0+IHtcbiAgICAgICAgICAgIGlmICh2YWx1ZSA9PT0gbnVsbCkgcmV0dXJuO1xuICAgICAgICAgICAgaWYgKHZhbHVlLmxlbmd0aCA8PSAxKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZERhdGUgPSB2YWx1ZTtcbiAgICAgICAgICAgICAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcblxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuZGF0ZSA9IG1vbWVudCh2YWx1ZSwgdGhpcy5kYXRlRm9ybWF0KS50b0RhdGUoKTtcbiAgICAgICAgICAgIGlmICh0aGlzLmlzVmFsaWREYXRlRm9ybWF0KHRoaXMuZGF0ZSkpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnZpc2libGVEYXRlID0gdGhpcy5kYXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZERhdGUgPSB2YWx1ZTtcbiAgICAgICAgICAgIHRoaXMub25UaW1lU2VsZWN0KCk7XG4gICAgICAgICAgICB0aGlzLm9uQ2hhbmdlKHZhbHVlKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoYW5kbGVFbXB0eURhdGVwaWNrZXIoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVzZXQoKTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSgnJyk7XG4gICAgICAgIHRoaXMuZGF0ZUNoYW5nZS5lbWl0KCcnKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldEZvcm1WYWx1ZSgpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBbZGF0ZVBhcnRdID0gdGhpcy5zZWxlY3RlZERhdGUuc3BsaXQoJyAnKTtcbiAgICAgICAgdGhpcy5mb3JtVmFsdWUgPSB0aGlzLmhhc1RpbWVQaWNrZXIgPyBgJHtkYXRlUGFydH0gJHt0aGlzLnRpbWV9YCA6IHRoaXMuc2VsZWN0ZWREYXRlO1xuICAgICAgICByZXR1cm4gdGhpcy5mb3JtVmFsdWU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBvblRpbWVTZWxlY3QoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5zZWxlY3RlZERhdGUpIHJldHVybjtcbiAgICAgICAgY29uc3QgZGF0ZVBhcnRzID0gdGhpcy5zZWxlY3RlZERhdGUuc3BsaXQoJyAnKTtcbiAgICAgICAgdGhpcy50aW1lID0gZGF0ZVBhcnRzLmxlbmd0aCA+PSAzID8gYCR7ZGF0ZVBhcnRzWzFdfSAke2RhdGVQYXJ0c1syXX1gIDogZGF0ZVBhcnRzWzFdO1xuICAgIH1cbn1cbiIsIjxmb3JtIFtmb3JtR3JvdXBdPVwiZGF0ZXBpY2tlckZvcm1cIj5cbiAgICA8aW5wdXRcbiAgICAgICAgY2xhc3M9XCJzY2wtY3VzdG9tLWRhdGVwaWNrZXJfX2lucHV0XCJcbiAgICAgICAgbmJJbnB1dFxuICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgIGZvcm1Db250cm9sTmFtZT1cImRhdGVwaWNrZXJcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIlxuICAgICAgICBbcmVhZG9ubHldPVwiaXNSZWFkb25seVwiXG4gICAgICAgIFtuYlBvcG92ZXJdPVwiY2FsZW5kYXJcIlxuICAgICAgICBuYlBvcG92ZXJQbGFjZW1lbnQ9XCJib3R0b21cIlxuICAgICAgICBuYlBvcG92ZXJTaXplPVwibGFyZ2VcIlxuICAgICAgICBbbmJQb3BvdmVyVHJpZ2dlcl09XCJpc1JlYWRvbmx5ID8gJ25vb3AnIDogJ2ZvY3VzJ1wiXG4gICAgICAgIChibHVyKT1cIm9uQmx1cigpXCIgLz5cblxuICAgIDxkaXYgY2xhc3M9XCJzY2wtY3VzdG9tLWRhdGVwaWNrZXJfX2ljb25cIj5cbiAgICAgICAgPG5iLWljb24gaWNvbj1cImNhbGVuZGFyXCIgcGFjaz1cInNjbC1kYXRlcGlja2VyLWljb25cIj48L25iLWljb24+XG4gICAgPC9kaXY+XG5cbiAgICA8bmctdGVtcGxhdGUgI2NhbGVuZGFyPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2NsLWN1c3RvbS1kYXRlcGlja2VyX19wb3BvdmVyXCIgKG1vdXNlZG93bik9XCIkZXZlbnQucHJldmVudERlZmF1bHQoKVwiIGFyaWEtbGFiZWw9XCJDYWxlbmRhclwiIHRhYmluZGV4PVwiLTFcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzY2wtY3VzdG9tLWRhdGVwaWNrZXJfX2NvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICA8bmItY2FsZW5kYXIgWyhkYXRlKV09XCJkYXRlXCIgKGRhdGVDaGFuZ2UpPVwib25EYXRlU2VsZWN0KCRldmVudClcIiBbdmlzaWJsZURhdGVdPVwidmlzaWJsZURhdGVcIiBbbWluXT1cIm1pbkRhdGVcIiBbbWF4XT1cIm1heERhdGVcIj4gPC9uYi1jYWxlbmRhcj5cblxuICAgICAgICAgICAgICAgIDx0aW1lcGlja2VyXG4gICAgICAgICAgICAgICAgICAgICN0aW1lcGlja2VyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwic2NsLWN1c3RvbS1kYXRlcGlja2VyX190aW1lcGlja2VyXCJcbiAgICAgICAgICAgICAgICAgICAgKHRpbWVDaGFuZ2UpPVwib25UaW1lQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICBbdGltZVZhbHVlc109XCJ0aW1lXCJcbiAgICAgICAgICAgICAgICAgICAgW3R3ZWx2ZUhvdXJzRm9ybWF0XT1cInNob3dUd2VsdmVIcnNGb3JtYXRcIlxuICAgICAgICAgICAgICAgICAgICBbZm9ybWF0XT1cInRpbWVGb3JtYXRcIlxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImhhc1RpbWVQaWNrZXJcIj5cbiAgICAgICAgICAgICAgICA8L3RpbWVwaWNrZXI+XG4gICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNjbC1jdXN0b20tZGF0ZXBpY2tlcl9fZm9vdGVyXCIgKm5nSWY9XCJoYXNUaW1lUGlja2VyXCI+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBuYkJ1dHRvbiBnaG9zdCBzdGF0dXM9XCJwcmltYXJ5XCIgKm5nSWY9XCJzaG93UHJlc2V0c1wiPkNob29zZSBmcm9tIHByZXNlbnRzPC9idXR0b24+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBuYkJ1dHRvbiBzdGF0dXM9XCJwcmltYXJ5XCIgW2Rpc2FibGVkXT1cIiFpc0Zvcm1WYWxpZFwiIChjbGljayk9XCJvbkNvbmZpcm0oKVwiPkNvbmZpcm08L2J1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuPC9mb3JtPlxuIl19
|