@wizishop/angular-components 15.1.101 → 15.1.103
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/README.md +87 -87
- package/angular-components.scss +9768 -9762
- package/assets/i18n/it.json +1 -1
- package/assets/images/upload/icon_picture.svg +11 -11
- package/esm2020/lib/animations/in-out/in-out-x.animation.mjs +1 -1
- package/esm2020/lib/animations/in-out/in-out-y.animation.mjs +1 -1
- package/esm2020/lib/animations/list/animate-list-from-bottom.animation.mjs +1 -1
- package/esm2020/lib/animations/list/animate-list-from-left.animation.mjs +1 -1
- package/esm2020/lib/animations/list/animate-list-from-right.animation.mjs +1 -1
- package/esm2020/lib/animations/list/animate-list-from-top.animation.mjs +1 -1
- package/esm2020/lib/animations/show/opacity.animation.mjs +1 -1
- package/esm2020/lib/animations/show/show-from-bottom.animation.mjs +1 -1
- package/esm2020/lib/animations/show/show-from-left.animation.mjs +1 -1
- package/esm2020/lib/animations/show/show-from-right.animation.mjs +1 -1
- package/esm2020/lib/animations/show/show-from-top.animation.mjs +1 -1
- package/esm2020/lib/animations/switch/switch-in-out.animation.mjs +1 -1
- package/esm2020/lib/components/ai-express/ai-express.component.mjs +3 -3
- package/esm2020/lib/components/alert/alert.component.mjs +3 -3
- package/esm2020/lib/components/alert-popup/alert-popup-module.mjs +1 -1
- package/esm2020/lib/components/alert-popup/alert-popup.component.mjs +3 -3
- package/esm2020/lib/components/alert-popup/alert-popup.service.mjs +1 -1
- package/esm2020/lib/components/back/back.component.mjs +3 -3
- package/esm2020/lib/components/block/block-title-legacy/block-title-legacy.component.mjs +3 -3
- package/esm2020/lib/components/block/block.component.mjs +1 -1
- package/esm2020/lib/components/block/separator/block-separator.component.mjs +1 -1
- package/esm2020/lib/components/block-with-checkbox/block-with-checkbox.component.mjs +3 -3
- package/esm2020/lib/components/breadcrumbs/breadcrumbs.component.mjs +3 -3
- package/esm2020/lib/components/breadcrumbs/breadcrumbs.dto.mjs +1 -1
- package/esm2020/lib/components/button/button.component.mjs +9 -3
- package/esm2020/lib/components/calendar/calendar.component.mjs +3 -3
- package/esm2020/lib/components/card-price/card-price.component.mjs +3 -3
- package/esm2020/lib/components/charging-bar/charging-bar.component.mjs +3 -3
- package/esm2020/lib/components/checkbox/checkbox.component.mjs +3 -3
- package/esm2020/lib/components/checkbox/checkbox.module.mjs +1 -1
- package/esm2020/lib/components/column/column.component.mjs +3 -3
- package/esm2020/lib/components/common/label/label.component.mjs +1 -1
- package/esm2020/lib/components/common/placeholder/placeholder.component.mjs +1 -1
- package/esm2020/lib/components/confirm-delete/confirm-delete.component.mjs +3 -3
- package/esm2020/lib/components/content-with-buttons/content-with-buttons.component.mjs +3 -3
- package/esm2020/lib/components/delete/delete.component.mjs +3 -3
- package/esm2020/lib/components/draganddrop-list/draganddrop-list.component.mjs +3 -3
- package/esm2020/lib/components/dropdown/dropdown.component.mjs +3 -3
- package/esm2020/lib/components/edit-in-place/edit-in-place.component.mjs +3 -3
- package/esm2020/lib/components/expanded-panel/expanded-panel.component.mjs +3 -3
- package/esm2020/lib/components/expansion/accordion/accordion-item.interface.mjs +1 -1
- package/esm2020/lib/components/expansion/accordion/accordion-item.token.mjs +1 -1
- package/esm2020/lib/components/expansion/accordion/accordion.component.mjs +1 -1
- package/esm2020/lib/components/expansion/expansion-panel/expansion-panel.component.mjs +3 -3
- package/esm2020/lib/components/expansion/expansion-panel/expansion-panel.directive.mjs +1 -1
- package/esm2020/lib/components/expansion/expansion-panel-header/expansion-panel-header.component.mjs +3 -3
- package/esm2020/lib/components/expansion/expansion-panel-header/expansion-panel-header.directive.mjs +1 -1
- package/esm2020/lib/components/expansion/expansion-panel-header/expansion-panel-header.interface.mjs +1 -1
- package/esm2020/lib/components/expansion/expansion-panel-header/expansion-panel-header.token.mjs +1 -1
- package/esm2020/lib/components/expansion/expansion.module.mjs +1 -1
- package/esm2020/lib/components/filters/filter-item.dto.mjs +1 -1
- package/esm2020/lib/components/filters/filters.component.mjs +3 -3
- package/esm2020/lib/components/free-popin/free-popin.component.mjs +3 -3
- package/esm2020/lib/components/google-preview/google-preview.component.mjs +3 -3
- package/esm2020/lib/components/header-page/header-page.component.mjs +8 -4
- package/esm2020/lib/components/hn/h1/h1.component.mjs +3 -3
- package/esm2020/lib/components/hn/h2/h2.component.mjs +3 -3
- package/esm2020/lib/components/hn/h3/h3.component.mjs +3 -3
- package/esm2020/lib/components/hn/h4/h4.component.mjs +3 -3
- package/esm2020/lib/components/image/image.component.mjs +3 -3
- package/esm2020/lib/components/info/info.component.mjs +3 -3
- package/esm2020/lib/components/inputs/input/input.component.mjs +3 -3
- package/esm2020/lib/components/inputs/input-search/input-search.component.mjs +3 -3
- package/esm2020/lib/components/inputs/input-with-select/input-with-select.component.mjs +3 -3
- package/esm2020/lib/components/inputs/input-with-select/option-item.dto.mjs +1 -1
- package/esm2020/lib/components/link/link.component.mjs +3 -3
- package/esm2020/lib/components/loader/loader.component.mjs +3 -3
- package/esm2020/lib/components/logo/logo.component.mjs +3 -3
- package/esm2020/lib/components/mosaic/mosaic.component.mjs +3 -3
- package/esm2020/lib/components/multiple-search/multiple-search.component.mjs +3 -3
- package/esm2020/lib/components/multiple-search-plus/multiple-search-plus.component.mjs +3 -3
- package/esm2020/lib/components/multiple-search-plus/shared/multiple-search-plus-option.model.mjs +1 -1
- package/esm2020/lib/components/multiple-search-plus/shared/multiple-search-plus-results.model.mjs +1 -1
- package/esm2020/lib/components/optional-disable-container/optional-disable-container.component.mjs +3 -3
- package/esm2020/lib/components/pagination/pagination.component.mjs +3 -3
- package/esm2020/lib/components/pagination/pagination.module.mjs +1 -1
- package/esm2020/lib/components/pagination/pipes/array-pages.pipe.mjs +1 -1
- package/esm2020/lib/components/pagination/pipes/custom-text.pipe.mjs +1 -1
- package/esm2020/lib/components/pagination/pipes/is-last-page.pipe.mjs +1 -1
- package/esm2020/lib/components/popin/popin.component.mjs +3 -3
- package/esm2020/lib/components/progress-bar/progress-bar.component.mjs +3 -3
- package/esm2020/lib/components/radio/option/option.component.mjs +3 -3
- package/esm2020/lib/components/radio/radio-group.directive.mjs +1 -1
- package/esm2020/lib/components/radio/radio.component.mjs +3 -3
- package/esm2020/lib/components/radio-legacy/radio-directive.mjs +1 -1
- package/esm2020/lib/components/radio-legacy/radio-group.directive.mjs +1 -1
- package/esm2020/lib/components/radio-legacy/radio.component.mjs +3 -3
- package/esm2020/lib/components/row/row.component.mjs +6 -3
- package/esm2020/lib/components/search/search.component.mjs +3 -3
- package/esm2020/lib/components/search/shared/search-option.model.mjs +1 -1
- package/esm2020/lib/components/select/call-to-action.model.mjs +1 -1
- package/esm2020/lib/components/select/option/option-selection-handler.interface.mjs +1 -1
- package/esm2020/lib/components/select/option/option-selection-handler.token.mjs +1 -1
- package/esm2020/lib/components/select/option/option.component.mjs +3 -3
- package/esm2020/lib/components/select/option/select-option.directive.mjs +1 -1
- package/esm2020/lib/components/select/option-call-to-action/option-call-to-action.component.mjs +3 -3
- package/esm2020/lib/components/select/select/select.component.mjs +3 -3
- package/esm2020/lib/components/select/select/select.directive.mjs +1 -1
- package/esm2020/lib/components/select/select/value-change.service.mjs +1 -1
- package/esm2020/lib/components/select/select-items.dto.mjs +1 -1
- package/esm2020/lib/components/select/select-search-trigger/select-search-trigger.component.mjs +3 -3
- package/esm2020/lib/components/select-in-text/select-in-text.component.mjs +3 -3
- package/esm2020/lib/components/selected-list/selected-list.component.mjs +3 -3
- package/esm2020/lib/components/selected-list/shared/selected-list-option.model.mjs +1 -1
- package/esm2020/lib/components/separator/separator.component.mjs +3 -3
- package/esm2020/lib/components/settings/settings.component.mjs +3 -3
- package/esm2020/lib/components/shared-components.module.mjs +1 -1
- package/esm2020/lib/components/snackbar/snackbar.component.mjs +3 -3
- package/esm2020/lib/components/state/state.component.mjs +3 -3
- package/esm2020/lib/components/summary/summary.component.mjs +3 -3
- package/esm2020/lib/components/switch/switch.component.mjs +3 -3
- package/esm2020/lib/components/table/directives/checkBoxRow.directive.mjs +1 -1
- package/esm2020/lib/components/table/directives/column.directive.mjs +1 -1
- package/esm2020/lib/components/table/directives/columnHeader.directive.mjs +1 -1
- package/esm2020/lib/components/table/directives/raw.directive.mjs +1 -1
- package/esm2020/lib/components/table/shared/distinct-until-table-filters-changed.mjs +1 -1
- package/esm2020/lib/components/table/shared/filters-table.service.mjs +1 -1
- package/esm2020/lib/components/table/shared/table-checkbox-id.service.mjs +1 -1
- package/esm2020/lib/components/table/shared/table-filters-group.model.mjs +1 -1
- package/esm2020/lib/components/table/shared/table-filters.model.mjs +1 -1
- package/esm2020/lib/components/table/table.component.mjs +3 -3
- package/esm2020/lib/components/table/table.module.mjs +1 -1
- package/esm2020/lib/components/tabs/tab/tab.component.mjs +1 -1
- package/esm2020/lib/components/tabs/tab-body/tab-body.component.mjs +3 -3
- package/esm2020/lib/components/tabs/tab-body/tab-body.directive.mjs +1 -1
- package/esm2020/lib/components/tabs/tabs.component.mjs +3 -3
- package/esm2020/lib/components/tag/tag.component.mjs +3 -3
- package/esm2020/lib/components/tag-dropdown/tag-dropdown.component.mjs +3 -3
- package/esm2020/lib/components/tag-label/tag-label.component.mjs +3 -3
- package/esm2020/lib/components/text/text.component.mjs +3 -3
- package/esm2020/lib/components/text-area/text-area.component.mjs +3 -3
- package/esm2020/lib/components/token-check/token-check.component.mjs +3 -3
- package/esm2020/lib/components/tooltip/tooltip.component.mjs +3 -3
- package/esm2020/lib/components/tooltip/tooltip.module.mjs +1 -1
- package/esm2020/lib/components/tree/tree.component.mjs +3 -3
- package/esm2020/lib/components/tree/tree.dto.mjs +1 -1
- package/esm2020/lib/components/tree/tree.module.mjs +1 -1
- package/esm2020/lib/components/upload/upload.component.mjs +3 -3
- package/esm2020/lib/components/wrapper/wrapper.component.mjs +3 -3
- package/esm2020/lib/components/wrapper-blocs/wrapper-blocs.component.mjs +3 -3
- package/esm2020/lib/components/wrapper-multiple-block/wrapper-multiple-block.component.mjs +3 -3
- package/esm2020/lib/components/wrapper-sidebar/wrapper-sidebar.component.mjs +3 -3
- package/esm2020/lib/directives/abstract-debounce/abstract-debounce.directive.mjs +1 -1
- package/esm2020/lib/directives/abstract-debounce/debounce-keyup.directive.mjs +1 -1
- package/esm2020/lib/directives/auto-hide/auto-hide.directive.mjs +1 -1
- package/esm2020/lib/directives/copy-to-clipboard/copy-to-clipboard.directive.mjs +1 -1
- package/esm2020/lib/directives/keyboard-events/keypress-enter.directive.mjs +1 -1
- package/esm2020/lib/directives/keyboard-events/only-numbers.directive.mjs +1 -1
- package/esm2020/lib/directives/keyboard-events/two-digital-decimal-number.directive.mjs +1 -1
- package/esm2020/lib/directives/ng-var.directive.mjs +1 -1
- package/esm2020/lib/directives/scroll-to/scroll-to.directive.mjs +1 -1
- package/esm2020/lib/directives/shared-directives.module.mjs +1 -1
- package/esm2020/lib/directives/watch-dom-tree/watch-dom-tree.directive.mjs +1 -1
- package/esm2020/lib/directives/zindex-toggle/zindex-toggle.directive.mjs +1 -1
- package/esm2020/lib/pipes/call-component-function.pipe.mjs +1 -1
- package/esm2020/lib/pipes/find-option-selected-field.pipe.mjs +1 -1
- package/esm2020/lib/pipes/select/filter-options.pipe.mjs +1 -1
- package/esm2020/lib/pipes/select/select-filters.pipe.mjs +1 -1
- package/esm2020/lib/pipes/selected-list/are-all-options-selected.pipe.mjs +1 -1
- package/esm2020/lib/pipes/shared-pipes.module.mjs +1 -1
- package/esm2020/lib/pipes/tree/format-object-to-recursif-tree.pipe.mjs +1 -1
- package/esm2020/lib/pipes/tree/format-object-to-simple-tree.pipe.mjs +1 -1
- package/esm2020/lib/services/dom.service.mjs +1 -1
- package/esm2020/lib/services/history.service.mjs +1 -1
- package/esm2020/lib/services/multiple-selection.service.mjs +1 -1
- package/esm2020/lib/utils/array.mjs +1 -1
- package/esm2020/lib/utils/html-container.class.mjs +1 -1
- package/esm2020/lib/utils/slection-item.interface.mjs +1 -1
- package/esm2020/lib/utils/uuid.mjs +1 -1
- package/esm2020/lib/wizi-components.module.mjs +1 -1
- package/esm2020/public-api.mjs +1 -1
- package/fesm2015/wizishop-angular-components.mjs +170 -157
- package/fesm2015/wizishop-angular-components.mjs.map +1 -1
- package/fesm2020/wizishop-angular-components.mjs +170 -157
- package/fesm2020/wizishop-angular-components.mjs.map +1 -1
- package/lib/components/button/button.component.d.ts +3 -1
- package/lib/components/row/row.component.d.ts +2 -1
- package/package.json +1 -1
- package/wizishop-angular-components-15.1.103.tgz +0 -0
- package/wizishop-angular-components-15.1.101.tgz +0 -0
|
@@ -121,4 +121,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImpor
|
|
|
121
121
|
type: HostBinding,
|
|
122
122
|
args: ['style']
|
|
123
123
|
}] } });
|
|
124
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2suY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9ibG9jay9ibG9jay5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2Jsb2NrL2Jsb2NrLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQWlCLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQWMsV0FBVyxFQUFFLEtBQUssRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUssT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7O0FBY2hGLE1BQU0sT0FBTyxjQUFjO0lBV3pCLElBQTBCLFlBQVk7UUFDcEMsT0FBTyw4QkFBOEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsQ0FBQztJQUN0RyxDQUFDO0lBSUQsWUFDVSxTQUFvQixFQUNwQixrQkFBOEI7UUFEOUIsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUNwQix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQVk7UUFaeEMsV0FBTSxHQUFtQjtZQUN2QixZQUFZLEVBQUUsS0FBSztTQUNwQixDQUFBO1FBTUQsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFLMUIsQ0FBQztJQUVOLGVBQWU7UUFDYixNQUFNLGdCQUFnQixHQUFHLElBQUks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IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGRyZW4sIEVsZW1lbnRSZWYsIEhvc3RCaW5kaW5nLCBJbnB1dCwgUXVlcnlMaXN0LCBSZW5kZXJlcjIsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEJsb2NrU2VwYXJhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9zZXBhcmF0b3IvYmxvY2stc2VwYXJhdG9yLmNvbXBvbmVudCc7XG5cbmV4cG9ydCB0eXBlIFdhY0Jsb2NrQ29uZmlnID0gUmVhZG9ubHk8e1xuICBib3JkZXJSYWRpdXM/OiBzdHJpbmc7XG59PjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnd2FjLWJsb2NrJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Jsb2NrLmNvbXBvbmVudC5odG1sJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIEJsb2NrQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgLy8gdG9kbyBvcHRpbWl6ZSByZW5kZXIsIGFkZCBhIGNhbGwgYnkgZGVmYXVsdCByZW1vdmUgYXQgdGhlIGVuZCwgYW5kIGFkZCBibG9jayBpbiBjb3JyZWN0IG9yZGVyLCB1c2UgZGVidWdnZXIgdG8gaGVscFxuXG4gIEBDb250ZW50Q2hpbGRyZW4oQmxvY2tTZXBhcmF0b3JDb21wb25lbnQpIGJsb2NrU2VwYXJhdG9yczogUXVlcnlMaXN0PEJsb2NrU2VwYXJhdG9yQ29tcG9uZW50PjtcblxuICBASW5wdXQoKVxuICBjb25maWc6IFdhY0Jsb2NrQ29uZmlnID0ge1xuICAgIGJvcmRlclJhZGl1czogJzNweCdcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnc3R5bGUnKSBnZXQgYm9yZGVyUmFkaXVzKCkge1xuICAgIHJldHVybiBgLS13YWMtYmxvY2stYm9yZGVyLXJhZGl1czogJHt0aGlzLmNvbmZpZy5ib3JkZXJSYWRpdXMgPyB0aGlzLmNvbmZpZy5ib3JkZXJSYWRpdXMgOiAnM3B4J307YDtcbiAgfVxuXG4gIGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlbmRlcmVyMjogUmVuZGVyZXIyLFxuICAgIHByaXZhdGUgd2FjQmxvY2tFbGVtZW50UmVmOiBFbGVtZW50UmVmXG4gICAgKSB7fVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBjb25zdCBncm91cGVkTm9kZXNMaXN0ID0gdGhpcy5nZXRTZXBhcmF0ZWRHcm91cGVkT2ZOb2Rlcyh0aGlzLndhY0Jsb2NrRWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNoaWxkTm9kZXMpO1xuICAgIHRoaXMuYXR0YWNoU2VwYXJhdGVkQmxvY2tzVG9UaGVEb20oZ3JvdXBlZE5vZGVzTGlzdCwgdGhpcy53YWNCbG9ja0VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCk7XG5cbiAgICB0aGlzLmJsb2NrU2VwYXJhdG9yc1xuICAgICAgLmNoYW5nZXMucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgdGhpcy5oYW5kbGVBZGRlZFNlcGFyYXRvcigpO1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHsgLy8gd2FpdCBuZXh0IHJlbmRlciwgYmVjYXVzZSwgQW5ndWxhciB3aWxsIHJlbW92ZSBjaGlsZCBzZXBhcmF0b3IgYWZ0ZXIgdGhpcyBmdW5jdGlvbiBpcyBjYWxsZWRcbiAgICAgICAgICB0aGlzLmhhbmRsZVJlbW92ZWRTZXBhcmF0b3IoKTtcbiAgICAgICAgfSwgMCk7XG5cbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlUmVtb3ZlZFNlcGFyYXRvcigpIHtcbiAgICAgIGNvbnN0IHdhY0Jsb2NrQ29tcG9uZW50Q2hpbGROb2RlcyA9IHRoaXMud2FjQmxvY2tFbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY2hpbGROb2RlcztcbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgd2FjQmxvY2tDb21wb25lbnRDaGlsZE5vZGVzLmxlbmd0aDsgaSsrKSB7XG5cbiAgICAgICAgY29uc3QgY2hpbGROb2RlID0gd2FjQmxvY2tDb21wb25lbnRDaGlsZE5vZGVzW2ldO1xuICAgICAgICBjb25zdCBuZXh0Q2hpbGQgPSB3YWNCbG9ja0NvbXBvbmVudENoaWxkTm9kZXNbaSArIDFdO1xuICAgICAgICBjb25zdCBhcmVXYWNCbG9ja1NpZGVCeVNpZGUgPSBuZXh0Q2hpbGQgJiYgY2hpbGROb2RlLmNsYXNzTGlzdC5jb250YWlucygnd2FjLWJsb2NrJykgJiYgbmV4dENoaWxkLmNsYXNzTGlzdC5jb250YWlucygnd2FjLWJsb2NrJyk7XG5cbiAgICAgICAgaWYgKCFhcmVXYWNCbG9ja1NpZGVCeVNpZGUpIHtcbiAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHBhcmVudEVsZW1lbnQgPSB0aGlzLndhY0Jsb2NrRWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgICAgICB0aGlzLmZ1c2lvbk5leHRCbG9ja1dpdGhDdXJyZW50QmxvY2socGFyZW50RWxlbWVudCwgbmV4dENoaWxkLCBjaGlsZE5vZGUpO1xuICAgICAgICBpLS07IC8vIHdlIHJlbW92ZSBhIGNoaWxkLCBzbyB3ZSBuZWVkIHRvIGdvIGJhY2sgdG8gdGhlIHByZXZpb3VzIGluZGV4XG5cbiAgICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgZnVzaW9uTmV4dEJsb2NrV2l0aEN1cnJlbnRCbG9jayhwYXJlbnRFbGVtZW50OiBhbnksIG5leHRDaGlsZDogYW55LCBjaGlsZE5vZGU6IGFueSkge1xuICAgIHBhcmVudEVsZW1lbnQucmVtb3ZlQ2hpbGQobmV4dENoaWxkKTsgLy8gbm90IHdvcmtpbmcgd2l0aCByZW5kZXJlcjIsIGl0IGp1c3QgZnJlZXplIHRoZSBhcHBcbiAgICBjaGlsZE5vZGUuYXBwZW5kKC4uLm5leHRDaGlsZC5jaGlsZE5vZGVzKTtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlQWRkZWRTZXBhcmF0b3IoKSB7XG4gICAgY29uc3Qgd2FjQmxvY2tDb21wb25lbnRDaGlsZE5vZGVzID0gWy4uLnRoaXMud2FjQmxvY2tFbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY2hpbGROb2Rlc107XG5cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHdhY0Jsb2NrQ29tcG9uZW50Q2hpbGROb2Rlcy5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3QgY2hpbGROb2RlID0gd2FjQmxvY2tDb21wb25lbnRDaGlsZE5vZGVzW2ldO1xuICAgICAgaWYgKGNoaWxkTm9kZS5ub2RlTmFtZSA9PT0gJ1dBQy1CTE9DSy1TRVBBUkFUT1InKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuICAgICAgaWYgKCF0aGlzLmhhc0Jsb2NrU2VwYXJhdG9yKGNoaWxkTm9kZS5jaGlsZE5vZGVzKSkge1xuICAgICAgICBjb250aW51ZTtcbiAgICAgIH1cblxuICAgICAgY29uc3QgZ3JvdXBlZE5vZGVzTGlzdCA9IHRoaXMuZ2V0U2VwYXJhdGVkR3JvdXBlZE9mTm9kZXMoY2hpbGROb2RlLmNoaWxkTm9kZXMpO1xuICAgICAgZ3JvdXBlZE5vZGVzTGlzdC5zaGlmdCgpOyAvLyByZW1vdmUgZmlyc3QgZ3JvdXAsIGl0J3MgdGhlIGN1cnJlbnQgYmxvY2tcblxuICAgICAgdGhpcy5hdHRhY2hTZXBhcmF0ZWRCbG9ja3NUb1RoZURvbShncm91cGVkTm9kZXNMaXN0LCB0aGlzLndhY0Jsb2NrRWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCB3YWNCbG9ja0NvbXBvbmVudENoaWxkTm9kZXNbaSArIDFdKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGhhc0Jsb2NrU2VwYXJhdG9yKGNoaWxkTm9kZXM6IGFueSkge1xuICAgIHJldHVybiBbLi4uY2hpbGROb2Rlc10uc29tZShncm91cGVkTm9kZXMgPT4gZ3JvdXBlZE5vZGVzPy5ub2RlTmFtZSA9PT0gJ1dBQy1CTE9DSy1TRVBBUkFUT1InKTtcbiAgfVxuXG4gIHByaXZhdGUgYXR0YWNoU2VwYXJhdGVkQmxvY2tzVG9UaGVEb20oZ3JvdXBlZE5vZGVzTGlzdDogYW55W10sIHBhcmVudEVsZW1lbnQ6IGFueSwgbmV4dEVsZW1lbnQ/OiBhbnkpIHtcbiAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgZ3JvdXBlZE5vZGVzTGlzdC5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgIGNvbnN0IGdyb3VwZWROb2RlcyA9IGdyb3VwZWROb2Rlc0xpc3RbaW5kZXhdO1xuXG4gICAgICBpZiAoZ3JvdXBlZE5vZGVzWzBdPy5ub2RlTmFtZSA9PT0gJ1dBQy1CTE9DSy1TRVBBUkFUT1InKSB7XG4gICAgICAgIHRoaXMuYXR0YWNoVG9UaGVEb20oZ3JvdXBlZE5vZGVzWzBdLCBwYXJlbnRFbGVtZW50LCBuZXh0RWxlbWVudCk7XG5cbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG4gICAgICBjb25zdCBzZXBhcmF0ZWRXYWNCbG9jayA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgc2VwYXJhdGVkV2FjQmxvY2suY2xhc3NMaXN0LmFkZCgnd2FjLWJsb2NrJyk7XG4gICAgICBncm91cGVkTm9kZXMuZm9yRWFjaChub2RlID0+IHtcbiAgICAgICAgc2VwYXJhdGVkV2FjQmxvY2suYXBwZW5kQ2hpbGQobm9kZSk7XG4gICAgICB9KTtcbiAgICAgIHRoaXMuYXR0YWNoVG9UaGVEb20oc2VwYXJhdGVkV2FjQmxvY2ssIHBhcmVudEVsZW1lbnQsIG5leHRFbGVtZW50KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGF0dGFjaFRvVGhlRG9tKGNoaWxkOmFueSwgcGFyZW50RWxlbWVudDphbnksIG5leHRFbGVtZW50PzphbnkpIHtcbiAgICBpZiAobmV4dEVsZW1lbnQpIHtcbiAgICAgIHRoaXMucmVuZGVyZXIyLmluc2VydEJlZm9yZShwYXJlbnRFbGVtZW50LCBjaGlsZCwgbmV4dEVsZW1lbnQsIHRydWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnJlbmRlcmVyMi5hcHBlbmRDaGlsZChwYXJlbnRFbGVtZW50LCBjaGlsZCk7XG4gICAgfVxuICB9XG5cblxuICBwcml2YXRlIGdldFNlcGFyYXRlZEdyb3VwZWRPZk5vZGVzKGNoaWxkTm9kZXM6IGFueSkge1xuICAgIGNvbnN0IGdyb3VwZWROb2Rlc0xpc3QgPSBbXTtcbiAgICBsZXQgZm9sbG93aW5nTm9kZXMgPSBbXTtcblxuICAgIGZvciAoY29uc3Qgbm9kZSBvZiBjaGlsZE5vZGVzKSB7XG5cbiAgICAgIGlmIChub2RlLm5vZGVOYW1lID09PSAnV0FDLUJMT0NLLVNFUEFSQVRPUicpIHtcbiAgICAgICAgZ3JvdXBlZE5vZGVzTGlzdC5wdXNoKGZvbGxvd2luZ05vZGVzLCBbbm9kZV0pOyAvLyBjbG9zZSBhIGdyb3VwIGFuZCBzdGFydCBhIG5ldyBvbmVcbiAgICAgICAgZm9sbG93aW5nTm9kZXMgPSBbXTtcbiAgICAgICAgY29udGludWU7XG4gICAgICB9XG5cbiAgICAgIGZvbGxvd2luZ05vZGVzLnB1c2gobm9kZSk7XG5cbiAgICB9XG5cbiAgICBpZiAoZm9sbG93aW5nTm9kZXMubGVuZ3RoKSB7XG4gICAgICBncm91cGVkTm9kZXNMaXN0LnB1c2goZm9sbG93aW5nTm9kZXMpO1xuICAgIH1cbiAgICByZXR1cm4gZ3JvdXBlZE5vZGVzTGlzdDtcbiAgfVxuXG4gIG5nT25EZXNUcm95KCkge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgIHRoaXMuZGVzdHJveSQuY29tcGxldGUoKTtcbiAgfVxufVxuXG4iLCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+Il19
|
|
124
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2suY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9ibG9jay9ibG9jay5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2Jsb2NrL2Jsb2NrLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQWlCLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQWMsV0FBVyxFQUFFLEtBQUssRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUssT0FBTyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7O0FBY2hGLE1BQU0sT0FBTyxjQUFjO0lBV3pCLElBQTBCLFlBQVk7UUFDcEMsT0FBTyw4QkFBOEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsQ0FBQztJQUN0RyxDQUFDO0lBSUQsWUFDVSxTQUFvQixFQUNwQixrQkFBOEI7UUFEOUIsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUNwQix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQVk7UUFaeEMsV0FBTSxHQUFtQjtZQUN2QixZQUFZLEVBQUUsS0FBSztTQUNwQixDQUFBO1FBTUQsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFLMUIsQ0FBQztJQUVOLGVBQWU7UUFDYixNQUFNLGdCQUFnQixHQUFHLElBQUks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IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgRWxlbWVudFJlZiwgSG9zdEJpbmRpbmcsIElucHV0LCBRdWVyeUxpc3QsIFJlbmRlcmVyMiwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3ViamVjdCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEJsb2NrU2VwYXJhdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9zZXBhcmF0b3IvYmxvY2stc2VwYXJhdG9yLmNvbXBvbmVudCc7XHJcblxyXG5leHBvcnQgdHlwZSBXYWNCbG9ja0NvbmZpZyA9IFJlYWRvbmx5PHtcclxuICBib3JkZXJSYWRpdXM/OiBzdHJpbmc7XHJcbn0+O1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICd3YWMtYmxvY2snLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9ibG9jay5jb21wb25lbnQuaHRtbCcsXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBCbG9ja0NvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xyXG5cclxuICAvLyB0b2RvIG9wdGltaXplIHJlbmRlciwgYWRkIGEgY2FsbCBieSBkZWZhdWx0IHJlbW92ZSBhdCB0aGUgZW5kLCBhbmQgYWRkIGJsb2NrIGluIGNvcnJlY3Qgb3JkZXIsIHVzZSBkZWJ1Z2dlciB0byBoZWxwXHJcblxyXG4gIEBDb250ZW50Q2hpbGRyZW4oQmxvY2tTZXBhcmF0b3JDb21wb25lbnQpIGJsb2NrU2VwYXJhdG9yczogUXVlcnlMaXN0PEJsb2NrU2VwYXJhdG9yQ29tcG9uZW50PjtcclxuXHJcbiAgQElucHV0KClcclxuICBjb25maWc6IFdhY0Jsb2NrQ29uZmlnID0ge1xyXG4gICAgYm9yZGVyUmFkaXVzOiAnM3B4J1xyXG4gIH1cclxuXHJcbiAgQEhvc3RCaW5kaW5nKCdzdHlsZScpIGdldCBib3JkZXJSYWRpdXMoKSB7XHJcbiAgICByZXR1cm4gYC0td2FjLWJsb2NrLWJvcmRlci1yYWRpdXM6ICR7dGhpcy5jb25maWcuYm9yZGVyUmFkaXVzID8gdGhpcy5jb25maWcuYm9yZGVyUmFkaXVzIDogJzNweCd9O2A7XHJcbiAgfVxyXG5cclxuICBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByZW5kZXJlcjI6IFJlbmRlcmVyMixcclxuICAgIHByaXZhdGUgd2FjQmxvY2tFbGVtZW50UmVmOiBFbGVtZW50UmVmXHJcbiAgICApIHt9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIGNvbnN0IGdyb3VwZWROb2Rlc0xpc3QgPSB0aGlzLmdldFNlcGFyYXRlZEdyb3VwZWRPZk5vZGVzKHRoaXMud2FjQmxvY2tFbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY2hpbGROb2Rlcyk7XHJcbiAgICB0aGlzLmF0dGFjaFNlcGFyYXRlZEJsb2Nrc1RvVGhlRG9tKGdyb3VwZWROb2Rlc0xpc3QsIHRoaXMud2FjQmxvY2tFbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpO1xyXG5cclxuICAgIHRoaXMuYmxvY2tTZXBhcmF0b3JzXHJcbiAgICAgIC5jaGFuZ2VzLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxyXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICB0aGlzLmhhbmRsZUFkZGVkU2VwYXJhdG9yKCk7XHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7IC8vIHdhaXQgbmV4dCByZW5kZXIsIGJlY2F1c2UsIEFuZ3VsYXIgd2lsbCByZW1vdmUgY2hpbGQgc2VwYXJhdG9yIGFmdGVyIHRoaXMgZnVuY3Rpb24gaXMgY2FsbGVkXHJcbiAgICAgICAgICB0aGlzLmhhbmRsZVJlbW92ZWRTZXBhcmF0b3IoKTtcclxuICAgICAgICB9LCAwKTtcclxuXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaGFuZGxlUmVtb3ZlZFNlcGFyYXRvcigpIHtcclxuICAgICAgY29uc3Qgd2FjQmxvY2tDb21wb25lbnRDaGlsZE5vZGVzID0gdGhpcy53YWNCbG9ja0VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jaGlsZE5vZGVzO1xyXG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHdhY0Jsb2NrQ29tcG9uZW50Q2hpbGROb2Rlcy5sZW5ndGg7IGkrKykge1xyXG5cclxuICAgICAgICBjb25zdCBjaGlsZE5vZGUgPSB3YWNCbG9ja0NvbXBvbmVudENoaWxkTm9kZXNbaV07XHJcbiAgICAgICAgY29uc3QgbmV4dENoaWxkID0gd2FjQmxvY2tDb21wb25lbnRDaGlsZE5vZGVzW2kgKyAxXTtcclxuICAgICAgICBjb25zdCBhcmVXYWNCbG9ja1NpZGVCeVNpZGUgPSBuZXh0Q2hpbGQgJiYgY2hpbGROb2RlLmNsYXNzTGlzdC5jb250YWlucygnd2FjLWJsb2NrJykgJiYgbmV4dENoaWxkLmNsYXNzTGlzdC5jb250YWlucygnd2FjLWJsb2NrJyk7XHJcblxyXG4gICAgICAgIGlmICghYXJlV2FjQmxvY2tTaWRlQnlTaWRlKSB7XHJcbiAgICAgICAgICBjb250aW51ZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IHBhcmVudEVsZW1lbnQgPSB0aGlzLndhY0Jsb2NrRWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xyXG4gICAgICAgIHRoaXMuZnVzaW9uTmV4dEJsb2NrV2l0aEN1cnJlbnRCbG9jayhwYXJlbnRFbGVtZW50LCBuZXh0Q2hpbGQsIGNoaWxkTm9kZSk7XHJcbiAgICAgICAgaS0tOyAvLyB3ZSByZW1vdmUgYSBjaGlsZCwgc28gd2UgbmVlZCB0byBnbyBiYWNrIHRvIHRoZSBwcmV2aW91cyBpbmRleFxyXG5cclxuICAgICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBmdXNpb25OZXh0QmxvY2tXaXRoQ3VycmVudEJsb2NrKHBhcmVudEVsZW1lbnQ6IGFueSwgbmV4dENoaWxkOiBhbnksIGNoaWxkTm9kZTogYW55KSB7XHJcbiAgICBwYXJlbnRFbGVtZW50LnJlbW92ZUNoaWxkKG5leHRDaGlsZCk7IC8vIG5vdCB3b3JraW5nIHdpdGggcmVuZGVyZXIyLCBpdCBqdXN0IGZyZWV6ZSB0aGUgYXBwXHJcbiAgICBjaGlsZE5vZGUuYXBwZW5kKC4uLm5leHRDaGlsZC5jaGlsZE5vZGVzKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaGFuZGxlQWRkZWRTZXBhcmF0b3IoKSB7XHJcbiAgICBjb25zdCB3YWNCbG9ja0NvbXBvbmVudENoaWxkTm9kZXMgPSBbLi4udGhpcy53YWNCbG9ja0VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jaGlsZE5vZGVzXTtcclxuXHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IHdhY0Jsb2NrQ29tcG9uZW50Q2hpbGROb2Rlcy5sZW5ndGg7IGkrKykge1xyXG4gICAgICBjb25zdCBjaGlsZE5vZGUgPSB3YWNCbG9ja0NvbXBvbmVudENoaWxkTm9kZXNbaV07XHJcbiAgICAgIGlmIChjaGlsZE5vZGUubm9kZU5hbWUgPT09ICdXQUMtQkxPQ0stU0VQQVJBVE9SJykge1xyXG4gICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICghdGhpcy5oYXNCbG9ja1NlcGFyYXRvcihjaGlsZE5vZGUuY2hpbGROb2RlcykpIHtcclxuICAgICAgICBjb250aW51ZTtcclxuICAgICAgfVxyXG5cclxuICAgICAgY29uc3QgZ3JvdXBlZE5vZGVzTGlzdCA9IHRoaXMuZ2V0U2VwYXJhdGVkR3JvdXBlZE9mTm9kZXMoY2hpbGROb2RlLmNoaWxkTm9kZXMpO1xyXG4gICAgICBncm91cGVkTm9kZXNMaXN0LnNoaWZ0KCk7IC8vIHJlbW92ZSBmaXJzdCBncm91cCwgaXQncyB0aGUgY3VycmVudCBibG9ja1xyXG5cclxuICAgICAgdGhpcy5hdHRhY2hTZXBhcmF0ZWRCbG9ja3NUb1RoZURvbShncm91cGVkTm9kZXNMaXN0LCB0aGlzLndhY0Jsb2NrRWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCB3YWNCbG9ja0NvbXBvbmVudENoaWxkTm9kZXNbaSArIDFdKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgaGFzQmxvY2tTZXBhcmF0b3IoY2hpbGROb2RlczogYW55KSB7XHJcbiAgICByZXR1cm4gWy4uLmNoaWxkTm9kZXNdLnNvbWUoZ3JvdXBlZE5vZGVzID0+IGdyb3VwZWROb2Rlcz8ubm9kZU5hbWUgPT09ICdXQUMtQkxPQ0stU0VQQVJBVE9SJyk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGF0dGFjaFNlcGFyYXRlZEJsb2Nrc1RvVGhlRG9tKGdyb3VwZWROb2Rlc0xpc3Q6IGFueVtdLCBwYXJlbnRFbGVtZW50OiBhbnksIG5leHRFbGVtZW50PzogYW55KSB7XHJcbiAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgZ3JvdXBlZE5vZGVzTGlzdC5sZW5ndGg7IGluZGV4KyspIHtcclxuICAgICAgY29uc3QgZ3JvdXBlZE5vZGVzID0gZ3JvdXBlZE5vZGVzTGlzdFtpbmRleF07XHJcblxyXG4gICAgICBpZiAoZ3JvdXBlZE5vZGVzWzBdPy5ub2RlTmFtZSA9PT0gJ1dBQy1CTE9DSy1TRVBBUkFUT1InKSB7XHJcbiAgICAgICAgdGhpcy5hdHRhY2hUb1RoZURvbShncm91cGVkTm9kZXNbMF0sIHBhcmVudEVsZW1lbnQsIG5leHRFbGVtZW50KTtcclxuXHJcbiAgICAgICAgY29udGludWU7XHJcbiAgICAgIH1cclxuICAgICAgY29uc3Qgc2VwYXJhdGVkV2FjQmxvY2sgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcclxuICAgICAgc2VwYXJhdGVkV2FjQmxvY2suY2xhc3NMaXN0LmFkZCgnd2FjLWJsb2NrJyk7XHJcbiAgICAgIGdyb3VwZWROb2Rlcy5mb3JFYWNoKG5vZGUgPT4ge1xyXG4gICAgICAgIHNlcGFyYXRlZFdhY0Jsb2NrLmFwcGVuZENoaWxkKG5vZGUpO1xyXG4gICAgICB9KTtcclxuICAgICAgdGhpcy5hdHRhY2hUb1RoZURvbShzZXBhcmF0ZWRXYWNCbG9jaywgcGFyZW50RWxlbWVudCwgbmV4dEVsZW1lbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBhdHRhY2hUb1RoZURvbShjaGlsZDphbnksIHBhcmVudEVsZW1lbnQ6YW55LCBuZXh0RWxlbWVudD86YW55KSB7XHJcbiAgICBpZiAobmV4dEVsZW1lbnQpIHtcclxuICAgICAgdGhpcy5yZW5kZXJlcjIuaW5zZXJ0QmVmb3JlKHBhcmVudEVsZW1lbnQsIGNoaWxkLCBuZXh0RWxlbWVudCwgdHJ1ZSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnJlbmRlcmVyMi5hcHBlbmRDaGlsZChwYXJlbnRFbGVtZW50LCBjaGlsZCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuXHJcbiAgcHJpdmF0ZSBnZXRTZXBhcmF0ZWRHcm91cGVkT2ZOb2RlcyhjaGlsZE5vZGVzOiBhbnkpIHtcclxuICAgIGNvbnN0IGdyb3VwZWROb2Rlc0xpc3QgPSBbXTtcclxuICAgIGxldCBmb2xsb3dpbmdOb2RlcyA9IFtdO1xyXG5cclxuICAgIGZvciAoY29uc3Qgbm9kZSBvZiBjaGlsZE5vZGVzKSB7XHJcblxyXG4gICAgICBpZiAobm9kZS5ub2RlTmFtZSA9PT0gJ1dBQy1CTE9DSy1TRVBBUkFUT1InKSB7XHJcbiAgICAgICAgZ3JvdXBlZE5vZGVzTGlzdC5wdXNoKGZvbGxvd2luZ05vZGVzLCBbbm9kZV0pOyAvLyBjbG9zZSBhIGdyb3VwIGFuZCBzdGFydCBhIG5ldyBvbmVcclxuICAgICAgICBmb2xsb3dpbmdOb2RlcyA9IFtdO1xyXG4gICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBmb2xsb3dpbmdOb2Rlcy5wdXNoKG5vZGUpO1xyXG5cclxuICAgIH1cclxuXHJcbiAgICBpZiAoZm9sbG93aW5nTm9kZXMubGVuZ3RoKSB7XHJcbiAgICAgIGdyb3VwZWROb2Rlc0xpc3QucHVzaChmb2xsb3dpbmdOb2Rlcyk7XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZ3JvdXBlZE5vZGVzTGlzdDtcclxuICB9XHJcblxyXG4gIG5nT25EZXNUcm95KCkge1xyXG4gICAgdGhpcy5kZXN0cm95JC5uZXh0KCk7XHJcbiAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XHJcbiAgfVxyXG59XHJcblxyXG4iLCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+Il19
|
|
@@ -14,4 +14,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImpor
|
|
|
14
14
|
standalone: true
|
|
15
15
|
}]
|
|
16
16
|
}], ctorParameters: function () { return []; } });
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2stc2VwYXJhdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvYmxvY2svc2VwYXJhdG9yL2Jsb2NrLXNlcGFyYXRvci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFTN0QsTUFBTSxPQUFPLHVCQUF1QjtJQUVoQyxnQkFBZ0IsQ0FBQzs7b0hBRlIsdUJBQXVCO3dHQUF2Qix1QkFBdUIsK0VBTHRCLEVBQUU7MkZBS0gsdUJBQXVCO2tCQVBuQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxxQkFBcUI7b0JBQy9CLFFBQVEsRUFBRSxFQUFFO29CQUNaLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO29CQUNyQyxVQUFVLEVBQUUsSUFBSTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnd2FjLWJsb2NrLXNlcGFyYXRvcicsXHJcbiAgICB0ZW1wbGF0ZTogYGAsXHJcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxyXG59KVxyXG5cclxuZXhwb3J0IGNsYXNzIEJsb2NrU2VwYXJhdG9yQ29tcG9uZW50IHtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxufSJdfQ==
|
|
@@ -26,10 +26,10 @@ export class BlockWithCheckboxComponent {
|
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
28
|
BlockWithCheckboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: BlockWithCheckboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
29
|
-
BlockWithCheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.5", type: BlockWithCheckboxComponent, selector: "wac-block-with-checkbox", inputs: { selected: "selected", disabled: "disabled", nameRadio: "nameRadio", isFirst: "isFirst", opacity: "opacity" }, outputs: { checkboxAction: "checkboxAction" }, ngImport: i0, template: "<div class=\"block-with-checkbox\" (click)=\"disabled && $event.target['className'] !== 'wac-link' && $event.target['localName'] !== 'a' ? $event.preventDefault() : ''\" [ngClass]=\"{'selected': inputRadioA.checked || selected, 'firstWacRadioBLock': isFirst, 'disabled': disabled}\" [style.opacity]=\"opacity\" (mouseover)=\"removeFirstClass()\">\n <div class=\"block-with-checkbox__left\" (click)=\"inputRadioA.click()\">\n <div class=\"wac-radio-block\">\n <div class=\"wac-radio__row\">\n <input #inputRadioA [name]=\"nameRadio\" type=\"radio\" [checked]=\"selected\" [value]=\"selected\" (change)=\"eventSelected($event)\" [id]=\"randomLabelName\">\n <label [for]=\"randomLabelName\"></label>\n </div>\n </div>\n </div>\n <div class=\"block-with-checkbox__center\" (click)=\"$event.target['className'] !== 'wac-link' && $event.target['localName'] !== 'a' ? inputRadioA.click() : '';\">\n <ng-content></ng-content>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
29
|
+
BlockWithCheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.5", type: BlockWithCheckboxComponent, selector: "wac-block-with-checkbox", inputs: { selected: "selected", disabled: "disabled", nameRadio: "nameRadio", isFirst: "isFirst", opacity: "opacity" }, outputs: { checkboxAction: "checkboxAction" }, ngImport: i0, template: "<div class=\"block-with-checkbox\" (click)=\"disabled && $event.target['className'] !== 'wac-link' && $event.target['localName'] !== 'a' ? $event.preventDefault() : ''\" [ngClass]=\"{'selected': inputRadioA.checked || selected, 'firstWacRadioBLock': isFirst, 'disabled': disabled}\" [style.opacity]=\"opacity\" (mouseover)=\"removeFirstClass()\">\r\n <div class=\"block-with-checkbox__left\" (click)=\"inputRadioA.click()\">\r\n <div class=\"wac-radio-block\">\r\n <div class=\"wac-radio__row\">\r\n <input #inputRadioA [name]=\"nameRadio\" type=\"radio\" [checked]=\"selected\" [value]=\"selected\" (change)=\"eventSelected($event)\" [id]=\"randomLabelName\">\r\n <label [for]=\"randomLabelName\"></label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"block-with-checkbox__center\" (click)=\"$event.target['className'] !== 'wac-link' && $event.target['localName'] !== 'a' ? inputRadioA.click() : '';\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
30
30
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: BlockWithCheckboxComponent, decorators: [{
|
|
31
31
|
type: Component,
|
|
32
|
-
args: [{ selector: 'wac-block-with-checkbox', template: "<div class=\"block-with-checkbox\" (click)=\"disabled && $event.target['className'] !== 'wac-link' && $event.target['localName'] !== 'a' ? $event.preventDefault() : ''\" [ngClass]=\"{'selected': inputRadioA.checked || selected, 'firstWacRadioBLock': isFirst, 'disabled': disabled}\" [style.opacity]=\"opacity\" (mouseover)=\"removeFirstClass()\">\n <div class=\"block-with-checkbox__left\" (click)=\"inputRadioA.click()\">\n <div class=\"wac-radio-block\">\n <div class=\"wac-radio__row\">\n <input #inputRadioA [name]=\"nameRadio\" type=\"radio\" [checked]=\"selected\" [value]=\"selected\" (change)=\"eventSelected($event)\" [id]=\"randomLabelName\">\n <label [for]=\"randomLabelName\"></label>\n </div>\n </div>\n </div>\n <div class=\"block-with-checkbox__center\" (click)=\"$event.target['className'] !== 'wac-link' && $event.target['localName'] !== 'a' ? inputRadioA.click() : '';\">\n <ng-content></ng-content>\n </div>\n</div>\n" }]
|
|
32
|
+
args: [{ selector: 'wac-block-with-checkbox', template: "<div class=\"block-with-checkbox\" (click)=\"disabled && $event.target['className'] !== 'wac-link' && $event.target['localName'] !== 'a' ? $event.preventDefault() : ''\" [ngClass]=\"{'selected': inputRadioA.checked || selected, 'firstWacRadioBLock': isFirst, 'disabled': disabled}\" [style.opacity]=\"opacity\" (mouseover)=\"removeFirstClass()\">\r\n <div class=\"block-with-checkbox__left\" (click)=\"inputRadioA.click()\">\r\n <div class=\"wac-radio-block\">\r\n <div class=\"wac-radio__row\">\r\n <input #inputRadioA [name]=\"nameRadio\" type=\"radio\" [checked]=\"selected\" [value]=\"selected\" (change)=\"eventSelected($event)\" [id]=\"randomLabelName\">\r\n <label [for]=\"randomLabelName\"></label>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"block-with-checkbox__center\" (click)=\"$event.target['className'] !== 'wac-link' && $event.target['localName'] !== 'a' ? inputRadioA.click() : '';\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n" }]
|
|
33
33
|
}], ctorParameters: function () { return []; }, propDecorators: { selected: [{
|
|
34
34
|
type: Input
|
|
35
35
|
}], disabled: [{
|
|
@@ -43,4 +43,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImpor
|
|
|
43
43
|
}], opacity: [{
|
|
44
44
|
type: Input
|
|
45
45
|
}] } });
|
|
46
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2std2l0aC1jaGVja2JveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2Jsb2NrLXdpdGgtY2hlY2tib3gvYmxvY2std2l0aC1jaGVja2JveC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2Jsb2NrLXdpdGgtY2hlY2tib3gvYmxvY2std2l0aC1jaGVja2JveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzdFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7O0FBTXhDLE1BQU0sT0FBTywwQkFBMEI7SUFzQnJDO1FBbkJBLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFHakIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUdqQixtQkFBYyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFN0Msb0JBQWUsR0FBRyxJQUFJLEVBQUUsQ0FBQztRQUd6QixjQUFTLEdBQUcsdUJBQXVCLENBQUM7UUFHcEMsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUdoQixZQUFPLEdBQUcsS0FBSyxDQUFDO0lBRUEsQ0FBQztJQUVqQixhQUFhLENBQUMsS0FBSztRQUNqQixJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNsQixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDO1lBQ3JDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUN4QyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztTQUN0QjtJQUNILENBQUM7SUFFRCxnQkFBZ0I7UUFDZCxJQUFJLE9BQU8sUUFBUSxDQUFDLGdCQUFnQixDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssT0FBTyxTQUFTLEVBQUU7WUFDbkYsUUFBUSxDQUFDLGdCQUFnQixDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1NBQzVGO0lBQ0gsQ0FBQzs7dUhBcENVLDBCQUEwQjsyR0FBMUIsMEJBQTBCLHNPQ1B2Qyx5K0JBYUE7MkZETmEsMEJBQTBCO2tCQUp0QyxTQUFTOytCQUNFLHlCQUF5QjswRUFNbkMsUUFBUTtzQkFEUCxLQUFLO2dCQUlOLFFBQVE7c0JBRFAsS0FBSztnQkFJTixjQUFjO3NCQURiLE1BQU07Z0JBTVAsU0FBUztzQkFEUixLQUFLO2dCQUlOLE9BQU87c0JBRE4sS0FBSztnQkFJTixPQUFPO3NCQUROLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyB1dWlkIH0gZnJvbSAnLi4vLi4vdXRpbHMvdXVpZCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3dhYy1ibG9jay13aXRoLWNoZWNrYm94JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vYmxvY2std2l0aC1jaGVja2JveC5jb21wb25lbnQuaHRtbCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBCbG9ja1dpdGhDaGVja2JveENvbXBvbmVudCB7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgc2VsZWN0ZWQgPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KClcclxuICBkaXNhYmxlZCA9IGZhbHNlO1xyXG5cclxuICBAT3V0cHV0KClcclxuICBjaGVja2JveEFjdGlvbiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcclxuXHJcbiAgcmFuZG9tTGFiZWxOYW1lID0gdXVpZCgpO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIG5hbWVSYWRpbyA9ICd3YWNCbG9ja0NoZWNrYm94UmFkaW8nO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGlzRmlyc3QgPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KClcclxuICBvcGFjaXR5ID0gJy40NSc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gIGV2ZW50U2VsZWN0ZWQoZXZlbnQpIHtcclxuICAgIGlmICghdGhpcy5kaXNhYmxlZCkge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkID0gZXZlbnQudGFyZ2V0LmNoZWNrZWQ7XHJcbiAgICAgIHRoaXMuY2hlY2tib3hBY3Rpb24uZW1pdCh0aGlzLnNlbGVjdGVkKTtcclxuICAgICAgdGhpcy5pc0ZpcnN0ID0gZmFsc2U7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICByZW1vdmVGaXJzdENsYXNzKCkge1xyXG4gICAgaWYgKHR5cGVvZiBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcuZmlyc3RXYWNSYWRpb0JMb2NrJylbMF0gIT09IHR5cGVvZiB1bmRlZmluZWQpIHtcclxuICAgICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLmZpcnN0V2FjUmFkaW9CTG9jaycpWzBdLmNsYXNzTGlzdC5yZW1vdmUoJ2ZpcnN0V2FjUmFkaW9CTG9jaycpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiYmxvY2std2l0aC1jaGVja2JveFwiIChjbGljayk9XCJkaXNhYmxlZCAmJiAkZXZlbnQudGFyZ2V0WydjbGFzc05hbWUnXSAhPT0gJ3dhYy1saW5rJyAmJiAkZXZlbnQudGFyZ2V0Wydsb2NhbE5hbWUnXSAhPT0gJ2EnID8gJGV2ZW50LnByZXZlbnREZWZhdWx0KCkgOiAnJ1wiIFtuZ0NsYXNzXT1cInsnc2VsZWN0ZWQnOiBpbnB1dFJhZGlvQS5jaGVja2VkIHx8IHNlbGVjdGVkLCAnZmlyc3RXYWNSYWRpb0JMb2NrJzogaXNGaXJzdCwgJ2Rpc2FibGVkJzogZGlzYWJsZWR9XCIgW3N0eWxlLm9wYWNpdHldPVwib3BhY2l0eVwiIChtb3VzZW92ZXIpPVwicmVtb3ZlRmlyc3RDbGFzcygpXCI+XHJcbiAgPGRpdiBjbGFzcz1cImJsb2NrLXdpdGgtY2hlY2tib3hfX2xlZnRcIiAoY2xpY2spPVwiaW5wdXRSYWRpb0EuY2xpY2soKVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cIndhYy1yYWRpby1ibG9ja1wiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwid2FjLXJhZGlvX19yb3dcIj5cclxuICAgICAgICA8aW5wdXQgI2lucHV0UmFkaW9BIFtuYW1lXT1cIm5hbWVSYWRpb1wiIHR5cGU9XCJyYWRpb1wiIFtjaGVja2VkXT1cInNlbGVjdGVkXCIgW3ZhbHVlXT1cInNlbGVjdGVkXCIgKGNoYW5nZSk9XCJldmVudFNlbGVjdGVkKCRldmVudClcIiBbaWRdPVwicmFuZG9tTGFiZWxOYW1lXCI+XHJcbiAgICAgICAgPGxhYmVsIFtmb3JdPVwicmFuZG9tTGFiZWxOYW1lXCI+PC9sYWJlbD5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwiYmxvY2std2l0aC1jaGVja2JveF9fY2VudGVyXCIgKGNsaWNrKT1cIiRldmVudC50YXJnZXRbJ2NsYXNzTmFtZSddICE9PSAnd2FjLWxpbmsnICYmICRldmVudC50YXJnZXRbJ2xvY2FsTmFtZSddICE9PSAnYScgPyBpbnB1dFJhZGlvQS5jbGljaygpIDogJyc7XCI+XHJcbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XHJcbiAgPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
@@ -13,10 +13,10 @@ export class BreadcrumbsComponent {
|
|
|
13
13
|
}
|
|
14
14
|
}
|
|
15
15
|
BreadcrumbsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: BreadcrumbsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
16
|
-
BreadcrumbsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.5", type: BreadcrumbsComponent, selector: "wac-breadcrumbs", inputs: { breadcrumbs: "breadcrumbs", noResponsive: "noResponsive" }, outputs: { indexChange: "indexChange" }, ngImport: i0, template: "<div class=\"wac-breadcrumbs\" [ngClass]=\"{'no-responsive': noResponsive}\">\n <div class=\"wac-breadcrumbs__wrapper\">\n <div class=\"wac-breadcrumbs__item\" *ngFor=\"let b of breadcrumbs; let i = index;\" [ngClass]=\"{'valid': b.valid, 'current': b['current']}\" (click)=\"valueChanged(i)\">\n <div class=\"round\" [ngClass]=\"{'valid': b.valid, 'current': b['current']}\"><span *ngIf=\"!b.valid\"><span *ngIf=\"i < 9\">0</span>{{ i + 1 }}</span><i class=\"fas fa-check\" *ngIf=\"b.valid\"></i></div>\n <div class=\"name\" [ngClass]=\"{'valid': b.valid, 'current': b['current']}\">{{ b.name }}</div>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
16
|
+
BreadcrumbsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.5", type: BreadcrumbsComponent, selector: "wac-breadcrumbs", inputs: { breadcrumbs: "breadcrumbs", noResponsive: "noResponsive" }, outputs: { indexChange: "indexChange" }, ngImport: i0, template: "<div class=\"wac-breadcrumbs\" [ngClass]=\"{'no-responsive': noResponsive}\">\r\n <div class=\"wac-breadcrumbs__wrapper\">\r\n <div class=\"wac-breadcrumbs__item\" *ngFor=\"let b of breadcrumbs; let i = index;\" [ngClass]=\"{'valid': b.valid, 'current': b['current']}\" (click)=\"valueChanged(i)\">\r\n <div class=\"round\" [ngClass]=\"{'valid': b.valid, 'current': b['current']}\"><span *ngIf=\"!b.valid\"><span *ngIf=\"i < 9\">0</span>{{ i + 1 }}</span><i class=\"fas fa-check\" *ngIf=\"b.valid\"></i></div>\r\n <div class=\"name\" [ngClass]=\"{'valid': b.valid, 'current': b['current']}\">{{ b.name }}</div>\r\n </div>\r\n </div>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
17
17
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: BreadcrumbsComponent, decorators: [{
|
|
18
18
|
type: Component,
|
|
19
|
-
args: [{ selector: 'wac-breadcrumbs', template: "<div class=\"wac-breadcrumbs\" [ngClass]=\"{'no-responsive': noResponsive}\">\n <div class=\"wac-breadcrumbs__wrapper\">\n <div class=\"wac-breadcrumbs__item\" *ngFor=\"let b of breadcrumbs; let i = index;\" [ngClass]=\"{'valid': b.valid, 'current': b['current']}\" (click)=\"valueChanged(i)\">\n <div class=\"round\" [ngClass]=\"{'valid': b.valid, 'current': b['current']}\"><span *ngIf=\"!b.valid\"><span *ngIf=\"i < 9\">0</span>{{ i + 1 }}</span><i class=\"fas fa-check\" *ngIf=\"b.valid\"></i></div>\n <div class=\"name\" [ngClass]=\"{'valid': b.valid, 'current': b['current']}\">{{ b.name }}</div>\n </div>\n </div>\n</div>\n" }]
|
|
19
|
+
args: [{ selector: 'wac-breadcrumbs', template: "<div class=\"wac-breadcrumbs\" [ngClass]=\"{'no-responsive': noResponsive}\">\r\n <div class=\"wac-breadcrumbs__wrapper\">\r\n <div class=\"wac-breadcrumbs__item\" *ngFor=\"let b of breadcrumbs; let i = index;\" [ngClass]=\"{'valid': b.valid, 'current': b['current']}\" (click)=\"valueChanged(i)\">\r\n <div class=\"round\" [ngClass]=\"{'valid': b.valid, 'current': b['current']}\"><span *ngIf=\"!b.valid\"><span *ngIf=\"i < 9\">0</span>{{ i + 1 }}</span><i class=\"fas fa-check\" *ngIf=\"b.valid\"></i></div>\r\n <div class=\"name\" [ngClass]=\"{'valid': b.valid, 'current': b['current']}\">{{ b.name }}</div>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
|
|
20
20
|
}], ctorParameters: function () { return []; }, propDecorators: { breadcrumbs: [{
|
|
21
21
|
type: Input
|
|
22
22
|
}], noResponsive: [{
|
|
@@ -24,4 +24,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImpor
|
|
|
24
24
|
}], indexChange: [{
|
|
25
25
|
type: Output
|
|
26
26
|
}] } });
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
27
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9icmVhZGNydW1icy9icmVhZGNydW1icy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2JyZWFkY3J1bWJzL2JyZWFkY3J1bWJzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7OztBQU9yRSxNQUFNLE9BQU8sb0JBQW9CO0lBYS9CO1FBUEEsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFFckIsVUFBSyxHQUFXLENBQUMsQ0FBQztRQUdsQixnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7SUFFdEIsQ0FBQztJQUVqQixZQUFZLENBQUMsQ0FBQztRQUNaLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ2YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3BDLENBQUM7O2lIQWxCVSxvQkFBb0I7cUdBQXBCLG9CQUFvQixzS0NQakMsMHBCQVFBOzJGRERhLG9CQUFvQjtrQkFKaEMsU0FBUzsrQkFDRSxpQkFBaUI7MEVBTTNCLFdBQVc7c0JBRFYsS0FBSztnQkFJTixZQUFZO3NCQURYLEtBQUs7Z0JBTU4sV0FBVztzQkFEVixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7QnJlYWRjcnVtYnNEdG99IGZyb20gJy4vYnJlYWRjcnVtYnMuZHRvJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnd2FjLWJyZWFkY3J1bWJzJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vYnJlYWRjcnVtYnMuY29tcG9uZW50Lmh0bWwnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQnJlYWRjcnVtYnNDb21wb25lbnQge1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGJyZWFkY3J1bWJzOiBCcmVhZGNydW1ic0R0b1tdO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIG5vUmVzcG9uc2l2ZSA9IGZhbHNlO1xyXG5cclxuICBpbmRleDogbnVtYmVyID0gMDtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgaW5kZXhDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgdmFsdWVDaGFuZ2VkKGkpIHtcclxuICAgIHRoaXMuaW5kZXggPSBpO1xyXG4gICAgdGhpcy5pbmRleENoYW5nZS5lbWl0KHRoaXMuaW5kZXgpO1xyXG4gIH1cclxuXHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cIndhYy1icmVhZGNydW1ic1wiIFtuZ0NsYXNzXT1cInsnbm8tcmVzcG9uc2l2ZSc6IG5vUmVzcG9uc2l2ZX1cIj5cclxuICA8ZGl2IGNsYXNzPVwid2FjLWJyZWFkY3J1bWJzX193cmFwcGVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwid2FjLWJyZWFkY3J1bWJzX19pdGVtXCIgKm5nRm9yPVwibGV0IGIgb2YgYnJlYWRjcnVtYnM7IGxldCBpID0gaW5kZXg7XCIgW25nQ2xhc3NdPVwieyd2YWxpZCc6IGIudmFsaWQsICdjdXJyZW50JzogYlsnY3VycmVudCddfVwiIChjbGljayk9XCJ2YWx1ZUNoYW5nZWQoaSlcIj5cclxuICAgICAgPGRpdiBjbGFzcz1cInJvdW5kXCIgW25nQ2xhc3NdPVwieyd2YWxpZCc6IGIudmFsaWQsICdjdXJyZW50JzogYlsnY3VycmVudCddfVwiPjxzcGFuICpuZ0lmPVwiIWIudmFsaWRcIj48c3BhbiAqbmdJZj1cImkgPCA5XCI+MDwvc3Bhbj57eyBpICsgMSB9fTwvc3Bhbj48aSBjbGFzcz1cImZhcyBmYS1jaGVja1wiICpuZ0lmPVwiYi52YWxpZFwiPjwvaT48L2Rpdj5cclxuICAgICAgPGRpdiBjbGFzcz1cIm5hbWVcIiBbbmdDbGFzc109XCJ7J3ZhbGlkJzogYi52YWxpZCwgJ2N1cnJlbnQnOiBiWydjdXJyZW50J119XCI+e3sgYi5uYW1lIH19PC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYnMuZHRvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9icmVhZGNydW1icy9icmVhZGNydW1icy5kdG8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgQnJlYWRjcnVtYnNEdG8ge1xyXG4gICAgbmFtZTogc3RyaW5nO1xyXG4gICAgY3VycmVudDogYm9vbGVhbjtcclxuICAgIHZhbGlkOiBib29sZWFuO1xyXG4gIH1cclxuIl19
|
|
@@ -22,6 +22,7 @@ export class ButtonComponent {
|
|
|
22
22
|
this.extraClasses = 'is-info'; // todo make a list of existing class
|
|
23
23
|
this.label = '';
|
|
24
24
|
this.icon = '';
|
|
25
|
+
this.isLoadingSvg = false;
|
|
25
26
|
this.textcolor = null;
|
|
26
27
|
this.widthAuto = false;
|
|
27
28
|
this.contentHorizontalPosition = 'center';
|
|
@@ -65,6 +66,9 @@ export class ButtonComponent {
|
|
|
65
66
|
}
|
|
66
67
|
});
|
|
67
68
|
}
|
|
69
|
+
onButtonClickLoader() {
|
|
70
|
+
this.isLoadingSvg = true;
|
|
71
|
+
}
|
|
68
72
|
addMaxWidth() {
|
|
69
73
|
this.buttonMaxWidth = this.buttonWidth + 'px';
|
|
70
74
|
}
|
|
@@ -114,10 +118,10 @@ export class ButtonComponent {
|
|
|
114
118
|
}
|
|
115
119
|
}
|
|
116
120
|
ButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: ButtonComponent, deps: [{ token: 'type', attribute: true }, { token: FormGroupDirective, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
117
|
-
ButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.5", type: ButtonComponent, selector: "wac-button", inputs: { extraClasses: "extraClasses", label: "label", icon: "icon", iconNext: "iconNext", textcolor: "textcolor", colorIcon: "colorIcon", widthAuto: "widthAuto", contentHorizontalPosition: "contentHorizontalPosition", iconFontSize: "iconFontSize", hasLoader: "hasLoader", disabled: "disabled", whiteSpaceNowrap: "whiteSpaceNowrap", opacity: "opacity", animation: "animation", animationRight: "animationRight", animationText: "animationText", confirmDelete: "confirmDelete", confirmDeleteText: "confirmDeleteText", coin: "coin", tooltip: "tooltip", tooltipWidth: "tooltipWidth", borderColor: "borderColor", noPadding: "noPadding", tooltipPosition: "tooltipPosition", tooltipOneline: "tooltipOneline", confirmDeletePosition: "confirmDeletePosition", isLoading: "isLoading" }, outputs: { click: "click", isLoadingChange: "isLoadingChange" }, viewQueries: [{ propertyName: "calculWidth", first: true, predicate: ["calculWidth"], descendants: true }, { propertyName: "calculWidthDelete", first: true, predicate: ["calculWidthDelete"], descendants: true }], ngImport: i0, template: "<a\n [class]=\"'wac-button ' + extraClasses\"\n [style.borderColor]=\"borderColor ? borderColor + '!important' : ''\"\n (click)=\"confirmDelete && waitForConfirmDelete ? addMaxWidthDelete() : '';onButtonClick($event);\"\n (mouseleave)=\"animation ? resetMaxWidth() : '';\"\n (mouseenter)=\"animation ? addMaxWidth() : '';\"\n wzAutoHide (clickOutside)=\"confirmDelete && !waitForConfirmDelete ? resetMaxWidthDelete() : ''\"\n [ngClass]=\"[\n label === '' ? 'alone' : '',\n coin ? 'has-coin width-auto' : '',\n animationRight ? 'animation-right' : '',\n animation ? 'animationText' : '',\n isLoading ? 'is-loading' : '',\n opacity ? 'opacity' : '',\n disabled ? 'disabled' : '',\n widthAuto ? 'width-auto' : '',\n noPadding ? 'no-padding' : '',\n whiteSpaceNowrap ? 'white-space-no-wrap' : '',\n !waitForConfirmDelete && confirmDelete ? 'step-delete' : '',\n confirmDelete ? 'deletePosition-' + confirmDeletePosition : ''\n ]\"\n [ngStyle]=\"{\n 'text-align': contentHorizontalPosition\n }\"\n>\n <span class=\"wac-button__wrapper\" [style.color]=\"textcolor ? textcolor : ''\">\n <i *ngIf=\"icon\" [ngClass]=\"icon\" [style.color]=\"colorIcon\" [style.font-size.px]=\"iconFontSize\"></i>\n {{ label }}\n <i *ngIf=\"iconNext\" [style.color]=\"colorIcon\" [ngClass]=\"iconNext\" [style.font-size.px]=\"iconFontSize\"></i>\n </span>\n <span class=\"wac-button__animation\" [style.maxWidth]=\"buttonMaxWidth\" [style.width]=\"buttonWidth + 'px'\">\n <span #calculWidth class=\"wac-button__animation__text\" [innerHTML]=\"animationText\"></span>\n </span>\n <span class=\"wac-button__confirmDelete\" [style.maxWidth]=\"buttonMaxWidthDelete\" [style.width]=\"buttonWidthDelete + 'px'\">\n <span #calculWidthDelete class=\"wac-button__confirmDelete__text\" [innerHTML]=\"confirmDeleteText\"></span>\n </span>\n <span *ngIf=\"coin\" class=\"wac-button__coin\"><i class=\"fa-solid fa-coin-front\"></i><span [innerHTML]=\"coin\"></span></span>\n <span\n class=\"wac-button__loader\"\n [ngClass]=\"extraClasses.includes('is-outlined') ? 'outlined' : ''\"\n *ngIf=\"isLoading\"\n [style.width]=\"currentLoading + '%'\"\n >\n </span>\n <span class=\"wac-button__tooltips {{ tooltipPosition }}\" [ngClass]=\"{'oneline': tooltipOneline}\" [style.minWidth]=\"tooltipWidth\" *ngIf=\"tooltip\">\n {{ tooltip }}\n </span>\n</a>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.AutoHideDirective, selector: "[wzAutoHide]", inputs: ["triggerElement", "forceOn"], outputs: ["clickOutside"] }] });
|
|
121
|
+
ButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.5", type: ButtonComponent, selector: "wac-button", inputs: { extraClasses: "extraClasses", label: "label", icon: "icon", isLoadingSvg: "isLoadingSvg", iconNext: "iconNext", textcolor: "textcolor", colorIcon: "colorIcon", widthAuto: "widthAuto", contentHorizontalPosition: "contentHorizontalPosition", iconFontSize: "iconFontSize", hasLoader: "hasLoader", disabled: "disabled", whiteSpaceNowrap: "whiteSpaceNowrap", opacity: "opacity", animation: "animation", animationRight: "animationRight", animationText: "animationText", confirmDelete: "confirmDelete", confirmDeleteText: "confirmDeleteText", coin: "coin", tooltip: "tooltip", tooltipWidth: "tooltipWidth", borderColor: "borderColor", noPadding: "noPadding", tooltipPosition: "tooltipPosition", tooltipOneline: "tooltipOneline", confirmDeletePosition: "confirmDeletePosition", isLoading: "isLoading" }, outputs: { click: "click", isLoadingChange: "isLoadingChange" }, viewQueries: [{ propertyName: "calculWidth", first: true, predicate: ["calculWidth"], descendants: true }, { propertyName: "calculWidthDelete", first: true, predicate: ["calculWidthDelete"], descendants: true }], ngImport: i0, template: "<a\r\n [class]=\"'wac-button ' + extraClasses\"\r\n [style.borderColor]=\"borderColor ? borderColor + '!important' : ''\"\r\n (click)=\"confirmDelete && waitForConfirmDelete ? addMaxWidthDelete() : '';onButtonClick($event);\"\r\n (mouseleave)=\"animation ? resetMaxWidth() : '';\"\r\n (mouseenter)=\"animation ? addMaxWidth() : '';\"\r\n wzAutoHide (clickOutside)=\"confirmDelete && !waitForConfirmDelete ? resetMaxWidthDelete() : ''\"\r\n [ngClass]=\"[\r\n label === '' ? 'alone' : '',\r\n coin ? 'has-coin width-auto' : '',\r\n animationRight ? 'animation-right' : '',\r\n animation ? 'animationText' : '',\r\n isLoading ? 'is-loading' : '',\r\n opacity ? 'opacity' : '',\r\n disabled ? 'disabled' : '',\r\n widthAuto ? 'width-auto' : '',\r\n noPadding ? 'no-padding' : '',\r\n whiteSpaceNowrap ? 'white-space-no-wrap' : '',\r\n !waitForConfirmDelete && confirmDelete ? 'step-delete' : '',\r\n confirmDelete ? 'deletePosition-' + confirmDeletePosition : ''\r\n ]\"\r\n [ngStyle]=\"{\r\n 'text-align': contentHorizontalPosition\r\n }\"\r\n>\r\n <span class=\"wac-button__wrapper\" [style.color]=\"textcolor ? textcolor : ''\" [ngClass]=\"{'loading-class': isLoadingSvg}\">\r\n <svg *ngIf=\"isLoadingSvg; else iconTemplate\" version=\"1.1\" id=\"loader-1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"\r\n width=\"20px\" height=\"20px\" viewBox=\"0 0 50 50\" style=\"enable-background:new 0 0 50 50;\" xml:space=\"preserve\">\r\n <path fill=\"#fff\" d=\"M43.935,25.145c0-10.318-8.364-18.683-18.683-18.683c-10.318,0-18.683,8.365-18.683,18.683h4.068c0-8.071,6.543-14.615,14.615-14.615c8.072,0,14.615,6.543,14.615,14.615H43.935z\">\r\n <animateTransform attributeType=\"xml\"\r\n attributeName=\"transform\"\r\n type=\"rotate\"\r\n from=\"0 25 25\"\r\n to=\"360 25 25\"\r\n dur=\"0.6s\"\r\n repeatCount=\"indefinite\"/>\r\n </path>\r\n </svg>\r\n <ng-template #iconTemplate>\r\n <i *ngIf=\"icon\" [ngClass]=\"icon\" [style.color]=\"colorIcon\" [style.font-size.px]=\"iconFontSize\"></i>\r\n </ng-template>\r\n {{ label }}\r\n <i *ngIf=\"iconNext\" [style.color]=\"colorIcon\" [ngClass]=\"iconNext\" [style.font-size.px]=\"iconFontSize\"></i>\r\n </span>\r\n <span class=\"wac-button__animation\" [style.maxWidth]=\"buttonMaxWidth\" [style.width]=\"buttonWidth + 'px'\">\r\n <span #calculWidth class=\"wac-button__animation__text\" [innerHTML]=\"animationText\"></span>\r\n </span>\r\n <span class=\"wac-button__confirmDelete\" [style.maxWidth]=\"buttonMaxWidthDelete\" [style.width]=\"buttonWidthDelete + 'px'\">\r\n <span #calculWidthDelete class=\"wac-button__confirmDelete__text\" [innerHTML]=\"confirmDeleteText\"></span>\r\n </span>\r\n <span *ngIf=\"coin\" class=\"wac-button__coin\"><i class=\"fa-solid fa-coin-front\"></i><span [innerHTML]=\"coin\"></span></span>\r\n <span\r\n class=\"wac-button__loader\"\r\n [ngClass]=\"extraClasses.includes('is-outlined') ? 'outlined' : ''\"\r\n *ngIf=\"isLoading\"\r\n [style.width]=\"currentLoading + '%'\"\r\n >\r\n </span>\r\n <span class=\"wac-button__tooltips {{ tooltipPosition }}\" [ngClass]=\"{'oneline': tooltipOneline}\" [style.minWidth]=\"tooltipWidth\" *ngIf=\"tooltip\">\r\n {{ tooltip }}\r\n </span>\r\n</a>\r\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: i2.AutoHideDirective, selector: "[wzAutoHide]", inputs: ["triggerElement", "forceOn"], outputs: ["clickOutside"] }] });
|
|
118
122
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: ButtonComponent, decorators: [{
|
|
119
123
|
type: Component,
|
|
120
|
-
args: [{ selector: 'wac-button', template: "<a\n [class]=\"'wac-button ' + extraClasses\"\n [style.borderColor]=\"borderColor ? borderColor + '!important' : ''\"\n (click)=\"confirmDelete && waitForConfirmDelete ? addMaxWidthDelete() : '';onButtonClick($event);\"\n (mouseleave)=\"animation ? resetMaxWidth() : '';\"\n (mouseenter)=\"animation ? addMaxWidth() : '';\"\n wzAutoHide (clickOutside)=\"confirmDelete && !waitForConfirmDelete ? resetMaxWidthDelete() : ''\"\n [ngClass]=\"[\n label === '' ? 'alone' : '',\n coin ? 'has-coin width-auto' : '',\n animationRight ? 'animation-right' : '',\n animation ? 'animationText' : '',\n isLoading ? 'is-loading' : '',\n opacity ? 'opacity' : '',\n disabled ? 'disabled' : '',\n widthAuto ? 'width-auto' : '',\n noPadding ? 'no-padding' : '',\n whiteSpaceNowrap ? 'white-space-no-wrap' : '',\n !waitForConfirmDelete && confirmDelete ? 'step-delete' : '',\n confirmDelete ? 'deletePosition-' + confirmDeletePosition : ''\n ]\"\n [ngStyle]=\"{\n 'text-align': contentHorizontalPosition\n }\"\n>\n <span class=\"wac-button__wrapper\" [style.color]=\"textcolor ? textcolor : ''\">\n <i *ngIf=\"icon\" [ngClass]=\"icon\" [style.color]=\"colorIcon\" [style.font-size.px]=\"iconFontSize\"></i>\n {{ label }}\n <i *ngIf=\"iconNext\" [style.color]=\"colorIcon\" [ngClass]=\"iconNext\" [style.font-size.px]=\"iconFontSize\"></i>\n </span>\n <span class=\"wac-button__animation\" [style.maxWidth]=\"buttonMaxWidth\" [style.width]=\"buttonWidth + 'px'\">\n <span #calculWidth class=\"wac-button__animation__text\" [innerHTML]=\"animationText\"></span>\n </span>\n <span class=\"wac-button__confirmDelete\" [style.maxWidth]=\"buttonMaxWidthDelete\" [style.width]=\"buttonWidthDelete + 'px'\">\n <span #calculWidthDelete class=\"wac-button__confirmDelete__text\" [innerHTML]=\"confirmDeleteText\"></span>\n </span>\n <span *ngIf=\"coin\" class=\"wac-button__coin\"><i class=\"fa-solid fa-coin-front\"></i><span [innerHTML]=\"coin\"></span></span>\n <span\n class=\"wac-button__loader\"\n [ngClass]=\"extraClasses.includes('is-outlined') ? 'outlined' : ''\"\n *ngIf=\"isLoading\"\n [style.width]=\"currentLoading + '%'\"\n >\n </span>\n <span class=\"wac-button__tooltips {{ tooltipPosition }}\" [ngClass]=\"{'oneline': tooltipOneline}\" [style.minWidth]=\"tooltipWidth\" *ngIf=\"tooltip\">\n {{ tooltip }}\n </span>\n</a>\n" }]
|
|
124
|
+
args: [{ selector: 'wac-button', template: "<a\r\n [class]=\"'wac-button ' + extraClasses\"\r\n [style.borderColor]=\"borderColor ? borderColor + '!important' : ''\"\r\n (click)=\"confirmDelete && waitForConfirmDelete ? addMaxWidthDelete() : '';onButtonClick($event);\"\r\n (mouseleave)=\"animation ? resetMaxWidth() : '';\"\r\n (mouseenter)=\"animation ? addMaxWidth() : '';\"\r\n wzAutoHide (clickOutside)=\"confirmDelete && !waitForConfirmDelete ? resetMaxWidthDelete() : ''\"\r\n [ngClass]=\"[\r\n label === '' ? 'alone' : '',\r\n coin ? 'has-coin width-auto' : '',\r\n animationRight ? 'animation-right' : '',\r\n animation ? 'animationText' : '',\r\n isLoading ? 'is-loading' : '',\r\n opacity ? 'opacity' : '',\r\n disabled ? 'disabled' : '',\r\n widthAuto ? 'width-auto' : '',\r\n noPadding ? 'no-padding' : '',\r\n whiteSpaceNowrap ? 'white-space-no-wrap' : '',\r\n !waitForConfirmDelete && confirmDelete ? 'step-delete' : '',\r\n confirmDelete ? 'deletePosition-' + confirmDeletePosition : ''\r\n ]\"\r\n [ngStyle]=\"{\r\n 'text-align': contentHorizontalPosition\r\n }\"\r\n>\r\n <span class=\"wac-button__wrapper\" [style.color]=\"textcolor ? textcolor : ''\" [ngClass]=\"{'loading-class': isLoadingSvg}\">\r\n <svg *ngIf=\"isLoadingSvg; else iconTemplate\" version=\"1.1\" id=\"loader-1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0px\" y=\"0px\"\r\n width=\"20px\" height=\"20px\" viewBox=\"0 0 50 50\" style=\"enable-background:new 0 0 50 50;\" xml:space=\"preserve\">\r\n <path fill=\"#fff\" d=\"M43.935,25.145c0-10.318-8.364-18.683-18.683-18.683c-10.318,0-18.683,8.365-18.683,18.683h4.068c0-8.071,6.543-14.615,14.615-14.615c8.072,0,14.615,6.543,14.615,14.615H43.935z\">\r\n <animateTransform attributeType=\"xml\"\r\n attributeName=\"transform\"\r\n type=\"rotate\"\r\n from=\"0 25 25\"\r\n to=\"360 25 25\"\r\n dur=\"0.6s\"\r\n repeatCount=\"indefinite\"/>\r\n </path>\r\n </svg>\r\n <ng-template #iconTemplate>\r\n <i *ngIf=\"icon\" [ngClass]=\"icon\" [style.color]=\"colorIcon\" [style.font-size.px]=\"iconFontSize\"></i>\r\n </ng-template>\r\n {{ label }}\r\n <i *ngIf=\"iconNext\" [style.color]=\"colorIcon\" [ngClass]=\"iconNext\" [style.font-size.px]=\"iconFontSize\"></i>\r\n </span>\r\n <span class=\"wac-button__animation\" [style.maxWidth]=\"buttonMaxWidth\" [style.width]=\"buttonWidth + 'px'\">\r\n <span #calculWidth class=\"wac-button__animation__text\" [innerHTML]=\"animationText\"></span>\r\n </span>\r\n <span class=\"wac-button__confirmDelete\" [style.maxWidth]=\"buttonMaxWidthDelete\" [style.width]=\"buttonWidthDelete + 'px'\">\r\n <span #calculWidthDelete class=\"wac-button__confirmDelete__text\" [innerHTML]=\"confirmDeleteText\"></span>\r\n </span>\r\n <span *ngIf=\"coin\" class=\"wac-button__coin\"><i class=\"fa-solid fa-coin-front\"></i><span [innerHTML]=\"coin\"></span></span>\r\n <span\r\n class=\"wac-button__loader\"\r\n [ngClass]=\"extraClasses.includes('is-outlined') ? 'outlined' : ''\"\r\n *ngIf=\"isLoading\"\r\n [style.width]=\"currentLoading + '%'\"\r\n >\r\n </span>\r\n <span class=\"wac-button__tooltips {{ tooltipPosition }}\" [ngClass]=\"{'oneline': tooltipOneline}\" [style.minWidth]=\"tooltipWidth\" *ngIf=\"tooltip\">\r\n {{ tooltip }}\r\n </span>\r\n</a>\r\n" }]
|
|
121
125
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
122
126
|
type: Attribute,
|
|
123
127
|
args: ['type']
|
|
@@ -132,6 +136,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImpor
|
|
|
132
136
|
type: Input
|
|
133
137
|
}], icon: [{
|
|
134
138
|
type: Input
|
|
139
|
+
}], isLoadingSvg: [{
|
|
140
|
+
type: Input
|
|
135
141
|
}], iconNext: [{
|
|
136
142
|
type: Input
|
|
137
143
|
}], textcolor: [{
|
|
@@ -191,4 +197,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImpor
|
|
|
191
197
|
type: ViewChild,
|
|
192
198
|
args: ['calculWidthDelete']
|
|
193
199
|
}] } });
|
|
194
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2J1dHRvbi9idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixTQUFTLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFVLFFBQVEsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2hKLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDaEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7OztBQU0zQyxNQUFNLE9BQU8sZUFBZTtJQW1GMUIsSUFBYSxTQUFTLENBQUMsU0FBbUI7UUFDeEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQUM7UUFDNUIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDckMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFJRCxJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQztJQXVCRCxZQUM2QixJQUFZLEVBQ1MsU0FBNkI7UUFEbEQsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUNTLGNBQVMsR0FBVCxTQUFTLENBQW9CO1FBckgvRSx5RkFBeUY7UUFFekYsaUJBQVksR0FBRyxTQUFTLENBQUMsQ0FBQyxxQ0FBcUM7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QkFBa0I7NENBbkh4QyxZQUFZO3NCQURYLEtBQUs7Z0JBSU4sS0FBSztzQkFESixLQUFLO2dCQUlOLElBQUk7c0JBREgsS0FBSztnQkFJTixRQUFRO3NCQURQLEtBQUs7Z0JBSU4sU0FBUztzQkFEUixLQUFLO2dCQUlOLFNBQVM7c0JBRFIsS0FBSztnQkFJTixTQUFTO3NCQURSLEtBQUs7Z0JBSU4seUJBQXlCO3NCQUR4QixLQUFLO2dCQUlOLFlBQVk7c0JBRFgsS0FBSztnQkFJTixTQUFTO3NCQURSLEtBQUs7Z0JBSU4sUUFBUTtzQkFEUCxLQUFLO2dCQUlOLGdCQUFnQjtzQkFEZixLQUFLO2dCQUlOLE9BQU87c0JBRE4sS0FBSztnQkFJTixTQUFTO3NCQURSLEtBQUs7Z0JBSU4sY0FBYztzQkFEYixLQUFLO2dCQUlOLGFBQWE7c0JBRFosS0FBSztnQkFJTixhQUFhO3NCQURaLEtBQUs7Z0JBSU4saUJBQWlCO3NCQURoQixLQUFLO2dCQUlOLElBQUk7c0JBREgsS0FBSztnQkFJTixPQUFPO3NCQUROLEtBQUs7Z0JBSU4sWUFBWTtzQkFEWCxLQUFLO2dCQUlOLFdBQVc7c0JBRFYsS0FBSztnQkFJTixTQUFTO3NCQURSLEtBQUs7Z0JBSU4sZUFBZTtzQkFEZCxLQUFLO2dCQUlOLGNBQWM7c0JBRGIsS0FBSztnQkFJTixxQkFBcUI7c0JBRHBCLEtBQUs7Z0JBSVcsS0FBSztzQkFBckIsTUFBTTtnQkFFTSxTQUFTO3NCQUFyQixLQUFLO2dCQU1JLGVBQWU7c0JBQXhCLE1BQU07Z0JBc0JQLFdBQVc7c0JBRFYsU0FBUzt1QkFBQyxhQUFhO2dCQUl4QixpQkFBaUI7c0JBRGhCLFNBQVM7dUJBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBZnRlclZpZXdJbml0LCBBdHRyaWJ1dGUsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbmplY3QsIElucHV0LCBPbkluaXQsIE9wdGlvbmFsLCBPdXRwdXQsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtR3JvdXBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBpbnRlcnZhbCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVdoaWxlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd3YWMtYnV0dG9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2J1dHRvbi5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgQnV0dG9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcbiAgLy8gdG9kbyBhZGQgYnV0dG9uIHR5cGUgKGV4OiBmb3Igc3VibWl0IGFuZCBjaGVjayBpZiBpdCB3b3JrcyB3aXRoIHRlbXBsYXRlIGRyaXZlbiBmb3JtcylcbiAgQElucHV0KClcbiAgZXh0cmFDbGFzc2VzID0gJ2lzLWluZm8nOyAvLyB0b2RvIG1ha2UgYSBsaXN0IG9mIGV4aXN0aW5nIGNsYXNzXG5cbiAgQElucHV0KClcbiAgbGFiZWwgPSAnJztcblxuICBASW5wdXQoKVxuICBpY29uID0gJyc7XG5cbiAgQElucHV0KClcbiAgaWNvbk5leHQ6IHN0cmluZztcblxuICBASW5wdXQoKVxuICB0ZXh0Y29sb3IgPSBudWxsO1xuXG4gIEBJbnB1dCgpXG4gIGNvbG9ySWNvbjogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHdpZHRoQXV0byA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIGNvbnRlbnRIb3Jpem9udGFsUG9zaXRpb246ICdsZWZ0JyB8ICdjZW50ZXInIHwgJ3JpZ2h0JyA9ICdjZW50ZXInO1xuXG4gIEBJbnB1dCgpXG4gIGljb25Gb250U2l6ZSA9IDEyO1xuXG4gIEBJbnB1dCgpXG4gIGhhc0xvYWRlciA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgd2hpdGVTcGFjZU5vd3JhcCA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIG9wYWNpdHkgPSBmYWxzZTtcbiAgLy8gVE9ETyBNQUtFIEFOTklNQVRJT04gQVZBSUxBQkxFIEZPUiBNT0JJTEUgYXMgQ09ORklSTSBERUxFVEUgRE8gKGJlY2F1c2UsIGl0cyBkb2VhbnQgc2hvdyB0aGUgdGV4dCBhbmQgdHJpZ2dlciBjbGljaylcbiAgQElucHV0KClcbiAgYW5pbWF0aW9uID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgYW5pbWF0aW9uUmlnaHQgPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBhbmltYXRpb25UZXh0ID0gJyc7XG5cbiAgQElucHV0KClcbiAgY29uZmlybURlbGV0ZSA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIGNvbmZpcm1EZWxldGVUZXh0ID0gJyc7XG5cbiAgQElucHV0KClcbiAgY29pbjogbnVtYmVyIHwgc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIHRvb2x0aXA6IHN0cmluZztcblxuICBASW5wdXQoKVxuICB0b29sdGlwV2lkdGg6IHN0cmluZztcblxuICBASW5wdXQoKVxuICBib3JkZXJDb2xvcjogc3RyaW5nO1xuXG4gIEBJbnB1dCgpXG4gIG5vUGFkZGluZyA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIHRvb2x0aXBQb3NpdGlvbjogJ3RvcC1jZW50ZXInIHwgJ3RvcC1yaWdodCcgfCAndG9wLWxlZnQnIHwgJ2JvdHRvbS1jZW50ZXInIHwgJ2JvdHRvbS1yaWdodCcgfCAnYm90dG9tLWxlZnQnIHwgJ2xlZnQnIHwgJ3JpZ2h0JyA9ICd0b3AtY2VudGVyJztcblxuICBASW5wdXQoKVxuICB0b29sdGlwT25lbGluZSA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpXG4gIGNvbmZpcm1EZWxldGVQb3NpdGlvbiA9ICdyaWdodCc7XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1vdXRwdXQtbmF0aXZlXG4gIEBPdXRwdXQoKSBwdWJsaWMgY2xpY2s6IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBASW5wdXQoKSBzZXQgaXNMb2FkaW5nKGlzTG9hZGluZyA6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9pc0xvYWRpbmcgPSBpc0xvYWRpbmc7XG4gICAgdGhpcy5pc0xvYWRpbmdDaGFuZ2UubmV4dChpc0xvYWRpbmcpO1xuICAgIHRoaXMudG9nZ2xlTG9hZGluZygpO1xuICB9XG5cbiAgQE91dHB1dCgpIGlzTG9hZGluZ0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICBnZXQgaXNMb2FkaW5nKCkgOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5faXNMb2FkaW5nO1xuICB9XG5cbiAgcHJpdmF0ZSBfaXNMb2FkaW5nOiBib29sZWFuID0gZmFsc2U7XG5cblxuICBpbnRlcnZhbCA9IG51bGw7XG5cbiAgd2FpdEZvckNvbmZpcm1EZWxldGUgPSBmYWxzZTtcblxuICBidXR0b25NYXhXaWR0aCA9ICcwcHgnO1xuICBidXR0b25XaWR0aCA9ICcwcHgnO1xuXG4gIGJ1dHRvbk1heFdpZHRoRGVsZXRlID0gJzBweCc7XG4gIGJ1dHRvbldpZHRoRGVsZXRlID0gJzBweCc7XG5cbiAgY3VycmVudExvYWRpbmcgPSAwO1xuXG4gIEBWaWV3Q2hpbGQoJ2NhbGN1bFdpZHRoJylcbiAgY2FsY3VsV2lkdGg6IEVsZW1lbnRSZWY7XG5cbiAgQFZpZXdDaGlsZCgnY2FsY3VsV2lkdGhEZWxldGUnKVxuICBjYWxjdWxXaWR0aERlbGV0ZTogRWxlbWVudFJlZjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAQXR0cmlidXRlKCd0eXBlJykgcHJpdmF0ZSB0eXBlOiBzdHJpbmcsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChGb3JtR3JvdXBEaXJlY3RpdmUpIHByaXZhdGUgZm9ybUdyb3VwOiBGb3JtR3JvdXBEaXJlY3RpdmVcbiAgICApIHtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIGlmICh0aGlzLmNvbmZpcm1EZWxldGUpIHtcbiAgICAgIHRoaXMud2FpdEZvckNvbmZpcm1EZWxldGUgPSB0cnVlO1xuICAgIH1cbiAgfVxuXG4gIHRvZ2dsZUxvYWRpbmcoKSB7XG4gICAgdGhpcy5jdXJyZW50TG9hZGluZyA9IHRoaXMuaXNMb2FkaW5nID8gMTAgOiAxMDA7XG5cbiAgICBpbnRlcnZhbCgyMDApLnBpcGUodGFrZVdoaWxlKCB0aW1lPT4gdGhpcy5pc0xvYWRpbmcpKS5zdWJzY3JpYmUoXG4gICAgICAoKSA9PiB7XG4gICAgICAgIGlmICh0aGlzLmN1cnJlbnRMb2FkaW5nIDwgODUpIHtcbiAgICAgICAgICB0aGlzLmN1cnJlbnRMb2FkaW5nICs9IE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIDE1KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICk7XG4gIH1cblxuICBhZGRNYXhXaWR0aCgpIHtcbiAgICB0aGlzLmJ1dHRvbk1heFdpZHRoID0gdGhpcy5idXR0b25XaWR0aCArICdweCc7XG4gIH1cblxuICByZXNldE1heFdpZHRoKCkge1xuICAgIHRoaXMuYnV0dG9uTWF4V2lkdGggPSAnMHB4JztcbiAgfVxuXG4gIGFkZE1heFdpZHRoRGVsZXRlKCkge1xuICAgIHRoaXMuYnV0dG9uTWF4V2lkdGhEZWxldGUgPSB0aGlzLmJ1dHRvbldpZHRoRGVsZXRlICsgJ3B4JztcbiAgfVxuXG4gIHJlc2V0TWF4V2lkdGhEZWxldGUoKSB7XG4gICAgdGhpcy5idXR0b25NYXhXaWR0aERlbGV0ZSA9ICcwcHgnO1xuICAgIHRoaXMud2FpdEZvckNvbmZpcm1EZWxldGUgPSB0cnVlO1xuICB9XG5cbiAgb25CdXR0b25DbGljayhldmVudCl7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKHRoaXMudHlwZSA9PT0gJ3N1Ym1pdCcgJiYgdGhpcy5mb3JtR3JvdXApIHsgLy8gTWF5YmUgdGhlcmUgaXMgYSBiZXR0ZXIgd2F5IHRvIGhhbmRsZSBzdWJtaXRcbiAgICAgIHRoaXMuZm9ybUdyb3VwLm9uU3VibWl0KHRoaXMuZm9ybUdyb3VwLnZhbHVlKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuaGFzTG9hZGVyKSB7XG4gICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7IC8vIHRyaWNrIHRvIHJlc2V0IHRoZSBhbmltYXRpb24gbG9hZGluZ1xuICAgICAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG4gICAgICB9LCAwKTtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMud2FpdEZvckNvbmZpcm1EZWxldGUpIHtcbiAgICAgIHRoaXMuY2xpY2suZW1pdChldmVudCk7XG4gICAgICBpZiAodGhpcy5jb25maXJtRGVsZXRlKSB7XG4gICAgICAgIHRoaXMucmVzZXRNYXhXaWR0aERlbGV0ZSgpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLndhaXRGb3JDb25maXJtRGVsZXRlID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgaWYgKHRoaXMuYW5pbWF0aW9uKSB7XG4gICAgICAgIHRoaXMuYnV0dG9uV2lkdGggPSB0aGlzLmNhbGN1bFdpZHRoLm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGg7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy5jb25maXJtRGVsZXRlKSB7XG4gICAgICAgIHRoaXMuYnV0dG9uV2lkdGhEZWxldGUgPSB0aGlzLmNhbGN1bFdpZHRoRGVsZXRlLm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGg7XG4gICAgICB9XG4gICAgfSwgMTAwMCk7XG4gIH1cbn1cbiIsIjxhXG4gIFtjbGFzc109XCInd2FjLWJ1dHRvbiAnICsgZXh0cmFDbGFzc2VzXCJcbiAgW3N0eWxlLmJvcmRlckNvbG9yXT1cImJvcmRlckNvbG9yID8gYm9yZGVyQ29sb3IgKyAnIWltcG9ydGFudCcgOiAnJ1wiXG4gIChjbGljayk9XCJjb25maXJtRGVsZXRlICYmIHdhaXRGb3JDb25maXJtRGVsZXRlID8gYWRkTWF4V2lkdGhEZWxldGUoKSA6ICcnO29uQnV0dG9uQ2xpY2soJGV2ZW50KTtcIlxuICAobW91c2VsZWF2ZSk9XCJhbmltYXRpb24gPyByZXNldE1heFdpZHRoKCkgOiAnJztcIlxuICAobW91c2VlbnRlcik9XCJhbmltYXRpb24gPyBhZGRNYXhXaWR0aCgpIDogJyc7XCJcbiAgd3pBdXRvSGlkZSAoY2xpY2tPdXRzaWRlKT1cImNvbmZpcm1EZWxldGUgJiYgIXdhaXRGb3JDb25maXJtRGVsZXRlID8gcmVzZXRNYXhXaWR0aERlbGV0ZSgpIDogJydcIlxuICBbbmdDbGFzc109XCJbXG4gICAgbGFiZWwgPT09ICcnID8gJ2Fsb25lJyA6ICcnLFxuICAgIGNvaW4gPyAnaGFzLWNvaW4gd2lkdGgtYXV0bycgOiAnJyxcbiAgICBhbmltYXRpb25SaWdodCA/ICdhbmltYXRpb24tcmlnaHQnIDogJycsXG4gICAgYW5pbWF0aW9uID8gJ2FuaW1hdGlvblRleHQnIDogJycsXG4gICAgaXNMb2FkaW5nID8gJ2lzLWxvYWRpbmcnIDogJycsXG4gICAgb3BhY2l0eSA/ICdvcGFjaXR5JyA6ICcnLFxuICAgIGRpc2FibGVkID8gJ2Rpc2FibGVkJyA6ICcnLFxuICAgIHdpZHRoQXV0byA/ICd3aWR0aC1hdXRvJyA6ICcnLFxuICAgIG5vUGFkZGluZyA/ICduby1wYWRkaW5nJyA6ICcnLFxuICAgIHdoaXRlU3BhY2VOb3dyYXAgPyAnd2hpdGUtc3BhY2Utbm8td3JhcCcgOiAnJyxcbiAgICAhd2FpdEZvckNvbmZpcm1EZWxldGUgJiYgY29uZmlybURlbGV0ZSA/ICdzdGVwLWRlbGV0ZScgOiAnJyxcbiAgICBjb25maXJtRGVsZXRlID8gJ2RlbGV0ZVBvc2l0aW9uLScgKyBjb25maXJtRGVsZXRlUG9zaXRpb24gOiAnJ1xuICAgIF1cIlxuICAgIFtuZ1N0eWxlXT1cIntcbiAgICAgICd0ZXh0LWFsaWduJzogY29udGVudEhvcml6b250YWxQb3NpdGlvblxuICAgIH1cIlxuPlxuICA8c3BhbiBjbGFzcz1cIndhYy1idXR0b25fX3dyYXBwZXJcIiBbc3R5bGUuY29sb3JdPVwidGV4dGNvbG9yID8gdGV4dGNvbG9yIDogJydcIj5cbiAgICA8aSAqbmdJZj1cImljb25cIiBbbmdDbGFzc109XCJpY29uXCIgW3N0eWxlLmNvbG9yXT1cImNvbG9ySWNvblwiIFtzdHlsZS5mb250LXNpemUucHhdPVwiaWNvbkZvbnRTaXplXCI+PC9pPlxuICAgIHt7IGxhYmVsIH19XG4gICAgPGkgKm5nSWY9XCJpY29uTmV4dFwiIFtzdHlsZS5jb2xvcl09XCJjb2xvckljb25cIiBbbmdDbGFzc109XCJpY29uTmV4dFwiIFtzdHlsZS5mb250LXNpemUucHhdPVwiaWNvbkZvbnRTaXplXCI+PC9pPlxuICA8L3NwYW4+XG4gIDxzcGFuIGNsYXNzPVwid2FjLWJ1dHRvbl9fYW5pbWF0aW9uXCIgW3N0eWxlLm1heFdpZHRoXT1cImJ1dHRvbk1heFdpZHRoXCIgW3N0eWxlLndpZHRoXT1cImJ1dHRvbldpZHRoICsgJ3B4J1wiPlxuICAgIDxzcGFuICNjYWxjdWxXaWR0aCBjbGFzcz1cIndhYy1idXR0b25fX2FuaW1hdGlvbl9fdGV4dFwiIFtpbm5lckhUTUxdPVwiYW5pbWF0aW9uVGV4dFwiPjwvc3Bhbj5cbiAgPC9zcGFuPlxuICA8c3BhbiBjbGFzcz1cIndhYy1idXR0b25fX2NvbmZpcm1EZWxldGVcIiBbc3R5bGUubWF4V2lkdGhdPVwiYnV0dG9uTWF4V2lkdGhEZWxldGVcIiBbc3R5bGUud2lkdGhdPVwiYnV0dG9uV2lkdGhEZWxldGUgKyAncHgnXCI+XG4gICAgPHNwYW4gI2NhbGN1bFdpZHRoRGVsZXRlIGNsYXNzPVwid2FjLWJ1dHRvbl9fY29uZmlybURlbGV0ZV9fdGV4dFwiIFtpbm5lckhUTUxdPVwiY29uZmlybURlbGV0ZVRleHRcIj48L3NwYW4+XG4gIDwvc3Bhbj5cbiAgPHNwYW4gKm5nSWY9XCJjb2luXCIgY2xhc3M9XCJ3YWMtYnV0dG9uX19jb2luXCI+PGkgY2xhc3M9XCJmYS1zb2xpZCBmYS1jb2luLWZyb250XCI+PC9pPjxzcGFuIFtpbm5lckhUTUxdPVwiY29pblwiPjwvc3Bhbj48L3NwYW4+XG4gIDxzcGFuXG4gICAgY2xhc3M9XCJ3YWMtYnV0dG9uX19sb2FkZXJcIlxuICAgIFtuZ0NsYXNzXT1cImV4dHJhQ2xhc3Nlcy5pbmNsdWRlcygnaXMtb3V0bGluZWQnKSA/ICdvdXRsaW5lZCcgOiAnJ1wiXG4gICAgKm5nSWY9XCJpc0xvYWRpbmdcIlxuICAgIFtzdHlsZS53aWR0aF09XCJjdXJyZW50TG9hZGluZyArICclJ1wiXG4gID5cbiAgPC9zcGFuPlxuICA8c3BhbiBjbGFzcz1cIndhYy1idXR0b25fX3Rvb2x0aXBzIHt7IHRvb2x0aXBQb3NpdGlvbiB9fVwiIFtuZ0NsYXNzXT1cInsnb25lbGluZSc6IHRvb2x0aXBPbmVsaW5lfVwiIFtzdHlsZS5taW5XaWR0aF09XCJ0b29sdGlwV2lkdGhcIiAqbmdJZj1cInRvb2x0aXBcIj5cbiAgICB7eyB0b29sdGlwIH19XG4gIDwvc3Bhbj5cbjwvYT5cbiJdfQ==
|
|
200
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItY29tcG9uZW50cy9zcmMvbGliL2NvbXBvbmVudHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2J1dHRvbi9idXR0b24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixTQUFTLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFVLFFBQVEsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2hKLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDaEMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7OztBQU0zQyxNQUFNLE9BQU8sZUFBZTtJQXNGMUIsSUFBYSxTQUFTLENBQUMsU0FBbUI7UUFDeEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxTQUFTLENBQUM7UUFDNUIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDckMsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFJRCxJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUM7SUFDekIsQ0FBQztJQXVCRCxZQUM2QixJQUFZLEVBQ1MsU0FBNkI7UUFEbEQsU0FBSSxHQUFKLElBQUksQ0FBUTtRQUNTLGNBQVMsR0FBVCxTQUFTLENBQW9CO1FBeEgvRSx5RkFBeUY7UUFFekYsaUJBQVksR0FBRyxTQUFTLENBQUMsQ0FBQyxxQ0FBcUM7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bmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbmplY3QsIElucHV0LCBPbkluaXQsIE9wdGlvbmFsLCBPdXRwdXQsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Hcm91cERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgaW50ZXJ2YWwgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgdGFrZVdoaWxlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICd3YWMtYnV0dG9uJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vYnV0dG9uLmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQnV0dG9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcclxuICAvLyB0b2RvIGFkZCBidXR0b24gdHlwZSAoZXg6IGZvciBzdWJtaXQgYW5kIGNoZWNrIGlmIGl0IHdvcmtzIHdpdGggdGVtcGxhdGUgZHJpdmVuIGZvcm1zKVxyXG4gIEBJbnB1dCgpXHJcbiAgZXh0cmFDbGFzc2VzID0gJ2lzLWluZm8nOyAvLyB0b2RvIG1ha2UgYSBsaXN0IG9mIGV4aXN0aW5nIGNsYXNzXHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgbGFiZWwgPSAnJztcclxuXHJcbiAgQElucHV0KClcclxuICBpY29uID0gJyc7XHJcblxyXG4gIEBJbnB1dCgpIFxyXG4gIGlzTG9hZGluZ1N2ZzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGljb25OZXh0OiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgdGV4dGNvbG9yID0gbnVsbDtcclxuXHJcbiAgQElucHV0KClcclxuICBjb2xvckljb246IHN0cmluZztcclxuXHJcbiAgQElucHV0KClcclxuICB3aWR0aEF1dG8gPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KClcclxuICBjb250ZW50SG9yaXpvbnRhbFBvc2l0aW9uOiAnbGVmdCcgfCAnY2VudGVyJyB8ICdyaWdodCcgPSAnY2VudGVyJztcclxuXHJcbiAgQElucHV0KClcclxuICBpY29uRm9udFNpemUgPSAxMjtcclxuXHJcbiAgQElucHV0KClcclxuICBoYXNMb2FkZXIgPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KClcclxuICBkaXNhYmxlZCA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHdoaXRlU3BhY2VOb3dyYXAgPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KClcclxuICBvcGFjaXR5ID0gZmFsc2U7XHJcbiAgLy8gVE9ETyBNQUtFIEFOTklNQVRJT04gQVZBSUxBQkxFIEZPUiBNT0JJTEUgYXMgQ09ORklSTSBERUxFVEUgRE8gKGJlY2F1c2UsIGl0cyBkb2VhbnQgc2hvdyB0aGUgdGV4dCBhbmQgdHJpZ2dlciBjbGljaylcclxuICBASW5wdXQoKVxyXG4gIGFuaW1hdGlvbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGFuaW1hdGlvblJpZ2h0ID0gZmFsc2U7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgYW5pbWF0aW9uVGV4dCA9ICcnO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGNvbmZpcm1EZWxldGUgPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KClcclxuICBjb25maXJtRGVsZXRlVGV4dCA9ICcnO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIGNvaW46IG51bWJlciB8IHN0cmluZztcclxuXHJcbiAgQElucHV0KClcclxuICB0b29sdGlwOiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgdG9vbHRpcFdpZHRoOiBzdHJpbmc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgYm9yZGVyQ29sb3I6IHN0cmluZztcclxuXHJcbiAgQElucHV0KClcclxuICBub1BhZGRpbmcgPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KClcclxuICB0b29sdGlwUG9zaXRpb246ICd0b3AtY2VudGVyJyB8ICd0b3AtcmlnaHQnIHwgJ3RvcC1sZWZ0JyB8ICdib3R0b20tY2VudGVyJyB8ICdib3R0b20tcmlnaHQnIHwgJ2JvdHRvbS1sZWZ0JyB8ICdsZWZ0JyB8ICdyaWdodCcgPSAndG9wLWNlbnRlcic7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgdG9vbHRpcE9uZWxpbmUgPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KClcclxuICBjb25maXJtRGVsZXRlUG9zaXRpb24gPSAncmlnaHQnO1xyXG5cclxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1uYXRpdmVcclxuICBAT3V0cHV0KCkgcHVibGljIGNsaWNrOiBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIEBJbnB1dCgpIHNldCBpc0xvYWRpbmcoaXNMb2FkaW5nIDogYm9vbGVhbikge1xyXG4gICAgdGhpcy5faXNMb2FkaW5nID0gaXNMb2FkaW5nO1xyXG4gICAgdGhpcy5pc0xvYWRpbmdDaGFuZ2UubmV4dChpc0xvYWRpbmcpO1xyXG4gICAgdGhpcy50b2dnbGVMb2FkaW5nKCk7XHJcbiAgfVxyXG5cclxuICBAT3V0cHV0KCkgaXNMb2FkaW5nQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xyXG5cclxuICBnZXQgaXNMb2FkaW5nKCkgOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9pc0xvYWRpbmc7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9pc0xvYWRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcblxyXG4gIGludGVydmFsID0gbnVsbDtcclxuXHJcbiAgd2FpdEZvckNvbmZpcm1EZWxldGUgPSBmYWxzZTtcclxuXHJcbiAgYnV0dG9uTWF4V2lkdGggPSAnMHB4JztcclxuICBidXR0b25XaWR0aCA9ICcwcHgnO1xyXG5cclxuICBidXR0b25NYXhXaWR0aERlbGV0ZSA9ICcwcHgnO1xyXG4gIGJ1dHRvbldpZHRoRGVsZXRlID0gJzBweCc7XHJcblxyXG4gIGN1cnJlbnRMb2FkaW5nID0gMDtcclxuXHJcbiAgQFZpZXdDaGlsZCgnY2FsY3VsV2lkdGgnKVxyXG4gIGNhbGN1bFdpZHRoOiBFbGVtZW50UmVmO1xyXG5cclxuICBAVmlld0NoaWxkKCdjYWxjdWxXaWR0aERlbGV0ZScpXHJcbiAgY2FsY3VsV2lkdGhEZWxldGU6IEVsZW1lbnRSZWY7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgQEF0dHJpYnV0ZSgndHlwZScpIHByaXZhdGUgdHlwZTogc3RyaW5nLFxyXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChGb3JtR3JvdXBEaXJlY3RpdmUpIHByaXZhdGUgZm9ybUdyb3VwOiBGb3JtR3JvdXBEaXJlY3RpdmVcclxuICAgICkge1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBpZiAodGhpcy5jb25maXJtRGVsZXRlKSB7XHJcbiAgICAgIHRoaXMud2FpdEZvckNvbmZpcm1EZWxldGUgPSB0cnVlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgdG9nZ2xlTG9hZGluZygpIHtcclxuICAgIHRoaXMuY3VycmVudExvYWRpbmcgPSB0aGlzLmlzTG9hZGluZyA/IDEwIDogMTAwO1xyXG5cclxuICAgIGludGVydmFsKDIwMCkucGlwZSh0YWtlV2hpbGUoIHRpbWU9PiB0aGlzLmlzTG9hZGluZykpLnN1YnNjcmliZShcclxuICAgICAgKCkgPT4ge1xyXG4gICAgICAgIGlmICh0aGlzLmN1cnJlbnRMb2FkaW5nIDwgODUpIHtcclxuICAgICAgICAgIHRoaXMuY3VycmVudExvYWRpbmcgKz0gTWF0aC5mbG9vcihNYXRoLnJhbmRvbSgpICogMTUpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIG9uQnV0dG9uQ2xpY2tMb2FkZXIoKSB7XHJcbiAgICB0aGlzLmlzTG9hZGluZ1N2ZyA9IHRydWU7XHJcbiAgfVxyXG5cclxuICBhZGRNYXhXaWR0aCgpIHtcclxuICAgIHRoaXMuYnV0dG9uTWF4V2lkdGggPSB0aGlzLmJ1dHRvbldpZHRoICsgJ3B4JztcclxuICB9XHJcblxyXG4gIHJlc2V0TWF4V2lkdGgoKSB7XHJcbiAgICB0aGlzLmJ1dHRvbk1heFdpZHRoID0gJzBweCc7XHJcbiAgfVxyXG5cclxuICBhZGRNYXhXaWR0aERlbGV0ZSgpIHtcclxuICAgIHRoaXMuYnV0dG9uTWF4V2lkdGhEZWxldGUgPSB0aGlzLmJ1dHRvbldpZHRoRGVsZXRlICsgJ3B4JztcclxuICB9XHJcblxyXG4gIHJlc2V0TWF4V2lkdGhEZWxldGUoKSB7XHJcbiAgICB0aGlzLmJ1dHRvbk1heFdpZHRoRGVsZXRlID0gJzBweCc7XHJcbiAgICB0aGlzLndhaXRGb3JDb25maXJtRGVsZXRlID0gdHJ1ZTtcclxuICB9XHJcblxyXG4gIG9uQnV0dG9uQ2xpY2soZXZlbnQpe1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy50eXBlID09PSAnc3VibWl0JyAmJiB0aGlzLmZvcm1Hcm91cCkgeyAvLyBNYXliZSB0aGVyZSBpcyBhIGJldHRlciB3YXkgdG8gaGFuZGxlIHN1Ym1pdFxyXG4gICAgICB0aGlzLmZvcm1Hcm91cC5vblN1Ym1pdCh0aGlzLmZvcm1Hcm91cC52YWx1ZSk7XHJcbiAgICB9XHJcbiAgICBpZiAodGhpcy5oYXNMb2FkZXIpIHtcclxuICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7IC8vIHRyaWNrIHRvIHJlc2V0IHRoZSBhbmltYXRpb24gbG9hZGluZ1xyXG4gICAgICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgfSwgMCk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCF0aGlzLndhaXRGb3JDb25maXJtRGVsZXRlKSB7XHJcbiAgICAgIHRoaXMuY2xpY2suZW1pdChldmVudCk7XHJcbiAgICAgIGlmICh0aGlzLmNvbmZpcm1EZWxldGUpIHtcclxuICAgICAgICB0aGlzLnJlc2V0TWF4V2lkdGhEZWxldGUoKTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy53YWl0Rm9yQ29uZmlybURlbGV0ZSA9IGZhbHNlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIGlmICh0aGlzLmFuaW1hdGlvbikge1xyXG4gICAgICAgIHRoaXMuYnV0dG9uV2lkdGggPSB0aGlzLmNhbGN1bFdpZHRoLm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGg7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMuY29uZmlybURlbGV0ZSkge1xyXG4gICAgICAgIHRoaXMuYnV0dG9uV2lkdGhEZWxldGUgPSB0aGlzLmNhbGN1bFdpZHRoRGVsZXRlLm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGg7XHJcbiAgICAgIH1cclxuICAgIH0sIDEwMDApO1xyXG4gIH1cclxufVxyXG4iLCI8YVxyXG4gIFtjbGFzc109XCInd2FjLWJ1dHRvbiAnICsgZXh0cmFDbGFzc2VzXCJcclxuICBbc3R5bGUuYm9yZGVyQ29sb3JdPVwiYm9yZGVyQ29sb3IgPyBib3JkZXJDb2xvciArICchaW1wb3J0YW50JyA6ICcnXCJcclxuICAoY2xpY2spPVwiY29uZmlybURlbGV0ZSAmJiB3YWl0Rm9yQ29uZmlybURlbGV0ZSA/IGFkZE1heFdpZHRoRGVsZXRlKCkgOiAnJztvbkJ1dHRvbkNsaWNrKCRldmVudCk7XCJcclxuICAobW91c2VsZWF2ZSk9XCJhbmltYXRpb24gPyByZXNldE1heFdpZHRoKCkgOiAnJztcIlxyXG4gIChtb3VzZWVudGVyKT1cImFuaW1hdGlvbiA/IGFkZE1heFdpZHRoKCkgOiAnJztcIlxyXG4gIHd6QXV0b0hpZGUgKGNsaWNrT3V0c2lkZSk9XCJjb25maXJtRGVsZXRlICYmICF3YWl0Rm9yQ29uZmlybURlbGV0ZSA/IHJlc2V0TWF4V2lkdGhEZWxldGUoKSA6ICcnXCJcclxuICBbbmdDbGFzc109XCJbXHJcbiAgICBsYWJlbCA9PT0gJycgPyAnYWxvbmUnIDogJycsXHJcbiAgICBjb2luID8gJ2hhcy1jb2luIHdpZHRoLWF1dG8nIDogJycsXHJcbiAgICBhbmltYXRpb25SaWdodCA/ICdhbmltYXRpb24tcmlnaHQnIDogJycsXHJcbiAgICBhbmltYXRpb24gPyAnYW5pbWF0aW9uVGV4dCcgOiAnJyxcclxuICAgIGlzTG9hZGluZyA/ICdpcy1sb2FkaW5nJyA6ICcnLFxyXG4gICAgb3BhY2l0eSA/ICdvcGFjaXR5JyA6ICcnLFxyXG4gICAgZGlzYWJsZWQgPyAnZGlzYWJsZWQnIDogJycsXHJcbiAgICB3aWR0aEF1dG8gPyAnd2lkdGgtYXV0bycgOiAnJyxcclxuICAgIG5vUGFkZGluZyA/ICduby1wYWRkaW5nJyA6ICcnLFxyXG4gICAgd2hpdGVTcGFjZU5vd3JhcCA/ICd3aGl0ZS1zcGFjZS1uby13cmFwJyA6ICcnLFxyXG4gICAgIXdhaXRGb3JDb25maXJtRGVsZXRlICYmIGNvbmZpcm1EZWxldGUgPyAnc3RlcC1kZWxldGUnIDogJycsXHJcbiAgICBjb25maXJtRGVsZXRlID8gJ2RlbGV0ZVBvc2l0aW9uLScgKyBjb25maXJtRGVsZXRlUG9zaXRpb24gOiAnJ1xyXG4gICAgXVwiXHJcbiAgICBbbmdTdHlsZV09XCJ7XHJcbiAgICAgICd0ZXh0LWFsaWduJzogY29udGVudEhvcml6b250YWxQb3NpdGlvblxyXG4gICAgfVwiXHJcbj5cclxuICA8c3BhbiBjbGFzcz1cIndhYy1idXR0b25fX3dyYXBwZXJcIiBbc3R5bGUuY29sb3JdPVwidGV4dGNvbG9yID8gdGV4dGNvbG9yIDogJydcIiBbbmdDbGFzc109XCJ7J2xvYWRpbmctY2xhc3MnOiBpc0xvYWRpbmdTdmd9XCI+XHJcbiAgICA8c3ZnICpuZ0lmPVwiaXNMb2FkaW5nU3ZnOyBlbHNlIGljb25UZW1wbGF0ZVwiIHZlcnNpb249XCIxLjFcIiBpZD1cImxvYWRlci0xXCIgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHhtbG5zOnhsaW5rPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlua1wiIHg9XCIwcHhcIiB5PVwiMHB4XCJcclxuICAgICB3aWR0aD1cIjIwcHhcIiBoZWlnaHQ9XCIyMHB4XCIgdmlld0JveD1cIjAgMCA1MCA1MFwiIHN0eWxlPVwiZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA1MCA1MDtcIiB4bWw6c3BhY2U9XCJwcmVzZXJ2ZVwiPlxyXG4gICAgICA8cGF0aCBmaWxsPVwiI2ZmZlwiIGQ9XCJNNDMuOTM1LDI1LjE0NWMwLTEwLjMxOC04LjM2NC0xOC42ODMtMTguNjgzLTE4LjY4M2MtMTAuMzE4LDAtMTguNjgzLDguMzY1LTE4LjY4MywxOC42ODNoNC4wNjhjMC04LjA3MSw2LjU0My0xNC42MTUsMTQuNjE1LTE0LjYxNWM4LjA3MiwwLDE0LjYxNSw2LjU0MywxNC42MTUsMTQuNjE1SDQzLjkzNXpcIj5cclxuICAgICAgICA8YW5pbWF0ZVRyYW5zZm9ybSBhdHRyaWJ1dGVUeXBlPVwieG1sXCJcclxuICAgICAgICAgIGF0dHJpYnV0ZU5hbWU9XCJ0cmFuc2Zvcm1cIlxyXG4gICAgICAgICAgdHlwZT1cInJvdGF0ZVwiXHJcbiAgICAgICAgICBmcm9tPVwiMCAyNSAyNVwiXHJcbiAgICAgICAgICB0bz1cIjM2MCAyNSAyNVwiXHJcbiAgICAgICAgICBkdXI9XCIwLjZzXCJcclxuICAgICAgICAgIHJlcGVhdENvdW50PVwiaW5kZWZpbml0ZVwiLz5cclxuICAgICAgPC9wYXRoPlxyXG4gICAgPC9zdmc+XHJcbiAgICA8bmctdGVtcGxhdGUgI2ljb25UZW1wbGF0ZT5cclxuICAgICAgPGkgKm5nSWY9XCJpY29uXCIgW25nQ2xhc3NdPVwiaWNvblwiIFtzdHlsZS5jb2xvcl09XCJjb2xvckljb25cIiBbc3R5bGUuZm9udC1zaXplLnB4XT1cImljb25Gb250U2l6ZVwiPjwvaT5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICB7eyBsYWJlbCB9fVxyXG4gICAgPGkgKm5nSWY9XCJpY29uTmV4dFwiIFtzdHlsZS5jb2xvcl09XCJjb2xvckljb25cIiBbbmdDbGFzc109XCJpY29uTmV4dFwiIFtzdHlsZS5mb250LXNpemUucHhdPVwiaWNvbkZvbnRTaXplXCI+PC9pPlxyXG4gIDwvc3Bhbj5cclxuICA8c3BhbiBjbGFzcz1cIndhYy1idXR0b25fX2FuaW1hdGlvblwiIFtzdHlsZS5tYXhXaWR0aF09XCJidXR0b25NYXhXaWR0aFwiIFtzdHlsZS53aWR0aF09XCJidXR0b25XaWR0aCArICdweCdcIj5cclxuICAgIDxzcGFuICNjYWxjdWxXaWR0aCBjbGFzcz1cIndhYy1idXR0b25fX2FuaW1hdGlvbl9fdGV4dFwiIFtpbm5lckhUTUxdPVwiYW5pbWF0aW9uVGV4dFwiPjwvc3Bhbj5cclxuICA8L3NwYW4+XHJcbiAgPHNwYW4gY2xhc3M9XCJ3YWMtYnV0dG9uX19jb25maXJtRGVsZXRlXCIgW3N0eWxlLm1heFdpZHRoXT1cImJ1dHRvbk1heFdpZHRoRGVsZXRlXCIgW3N0eWxlLndpZHRoXT1cImJ1dHRvbldpZHRoRGVsZXRlICsgJ3B4J1wiPlxyXG4gICAgPHNwYW4gI2NhbGN1bFdpZHRoRGVsZXRlIGNsYXNzPVwid2FjLWJ1dHRvbl9fY29uZmlybURlbGV0ZV9fdGV4dFwiIFtpbm5lckhUTUxdPVwiY29uZmlybURlbGV0ZVRleHRcIj48L3NwYW4+XHJcbiAgPC9zcGFuPlxyXG4gIDxzcGFuICpuZ0lmPVwiY29pblwiIGNsYXNzPVwid2FjLWJ1dHRvbl9fY29pblwiPjxpIGNsYXNzPVwiZmEtc29saWQgZmEtY29pbi1mcm9udFwiPjwvaT48c3BhbiBbaW5uZXJIVE1MXT1cImNvaW5cIj48L3NwYW4+PC9zcGFuPlxyXG4gIDxzcGFuXHJcbiAgICBjbGFzcz1cIndhYy1idXR0b25fX2xvYWRlclwiXHJcbiAgICBbbmdDbGFzc109XCJleHRyYUNsYXNzZXMuaW5jbHVkZXMoJ2lzLW91dGxpbmVkJykgPyAnb3V0bGluZWQnIDogJydcIlxyXG4gICAgKm5nSWY9XCJpc0xvYWRpbmdcIlxyXG4gICAgW3N0eWxlLndpZHRoXT1cImN1cnJlbnRMb2FkaW5nICsgJyUnXCJcclxuICA+XHJcbiAgPC9zcGFuPlxyXG4gIDxzcGFuIGNsYXNzPVwid2FjLWJ1dHRvbl9fdG9vbHRpcHMge3sgdG9vbHRpcFBvc2l0aW9uIH19XCIgW25nQ2xhc3NdPVwieydvbmVsaW5lJzogdG9vbHRpcE9uZWxpbmV9XCIgW3N0eWxlLm1pbldpZHRoXT1cInRvb2x0aXBXaWR0aFwiICpuZ0lmPVwidG9vbHRpcFwiPlxyXG4gICAge3sgdG9vbHRpcCB9fVxyXG4gIDwvc3Bhbj5cclxuPC9hPlxyXG4iXX0=
|
|
@@ -191,7 +191,7 @@ CalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", vers
|
|
|
191
191
|
multi: true
|
|
192
192
|
},
|
|
193
193
|
DatePipe
|
|
194
|
-
], viewQueries: [{ propertyName: "minutes", first: true, predicate: ["minutes"], descendants: true }, { propertyName: "hours", first: true, predicate: ["hours"], descendants: true }, { propertyName: "datePicker", first: true, predicate: ["datePicker"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div\n class=\"wac-calendar\"\n [ngClass]=\"{\n 'wac-calendar--input': type === 'input',\n 'wac-calendar--onlyDate': typeDate === 'date',\n 'wac-calendar--edit': type === 'edit',\n 'wac-calendar--select': type === 'select',\n 'wac-calendar--no-margin': noMargin,\n 'wac-calendar--open': open\n }\"\n [zIndexToggle]=\"open\"\n>\n <p [class]=\"'wac-calendar__label' + (boldLabel ? ' bold' : '')\" *ngIf=\"label && (type === 'input' || type === 'select')\" (click)=\"openCalendar()\">{{ label }}</p>\n <p class=\"wac-calendar__startLabel\" *ngIf=\"type === 'edit'\">{{ startLabel }}</p>\n <wac-optional-disable-container [disabled]=\"disabled\">\n <div class=\"wac-calendar__autoHide\" wzAutoHide (clickOutside)=\"openCalendar('close')\">\n <div class=\"wac-calendar__wrapper\">\n <div class=\"wac-calendar__wrapper__input\" *ngIf=\"type === 'input'\" (click)=\"openCalendar()\">\n <div class=\"wac-calendar__wrapper__input__icon\">\n <i class=\"far fa-calendar-alt\"></i>\n </div>\n <div class=\"wac-calendar__wrapper__input__date\">\n <span *ngIf=\"dateSelected\" @opacityAnimation>{{ dateSelected | date: 'dd/MM/yyyy'}}</span>\n <span class=\"placeholder-date\" *ngIf=\"!dateSelected\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.dd/mm/yyyy' | translate }}</span>\n </div>\n <div class=\"wac-calendar__wrapper__input__time\">\n <span *ngIf=\"dateSelected\" @opacityAnimation>{{ dateSelected | date: 'HH:mm' }}</span>\n <span class=\"placeholder-date\" *ngIf=\"!dateSelected\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.HH:mm' | translate }}</span>\n </div>\n </div>\n <div class=\"wac-calendar__wrapper__editInPlace\" *ngIf=\"type === 'edit'\" (click)=\"openCalendar()\">\n <div class=\"wac-calendar__wrapper__editInPlace__icon\">\n <i class=\"fal fa-calendar-alt\"></i>\n </div>\n <div class=\"wac-calendar__wrapper__editInPlace__date\">\n <div class=\"wac-calendar__wrapper__input__time\">\n <span *ngIf=\"dateSelected\" @opacityAnimation>{{ dateSelected | date: 'dd/MM/yyyy HH:mm' }}</span>\n <span class=\"placeholder-date\" *ngIf=\"!dateSelected\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.dd/MM/yyyy_HH:mm' | translate }}</span>\n </div>\n </div>\n </div>\n <div class=\"wac-calendar__wrapper__select\" *ngIf=\"type === 'select'\" (click)=\"openCalendar()\">\n <div class=\"wac-calendar__wrapper__select__icon\">\n <i class=\"fal fa-calendar-alt\"></i>\n </div>\n <div class=\"wac-calendar__wrapper__select__date\">\n <span *ngIf=\"dateSelected\" @opacityAnimation>{{ dateSelected | date: 'dd/MM/yyyy HH:mm' }}</span>\n <span class=\"placeholder-date\" *ngIf=\"!dateSelected\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.dd/MM/yyyy_HH:mm' | translate }}</span>\n </div>\n </div>\n </div>\n <div\n class=\"wac-calendar__absolute\"\n [ngClass]=\"{\n top: position === 'top',\n bottom: position === 'bottom',\n left: position === 'left',\n right: position === 'right',\n 'right-top': position === 'right-top',\n 'right-bottom': position === 'right-bottom',\n 'left-top': position === 'left-top',\n 'left-bottom': position === 'left-bottom',\n 'with-time': typeDate === 'datetime-local' || typeDate === 'datetime'\n }\"\n >\n <nwb-date-picker #datePicker (change)=\"onChangeDate($event)\" [options]=\"options\">\n <input [nwbDatepickerStart]=\"datePicker\" type=\"text\" [nwbDateType]=\"'date'\" [value]=\"dateSelected?.toISOString()\" />\n </nwb-date-picker>\n <div class=\"wac-calendar__absolute__time\" *ngIf=\"typeDate === 'datetime-local' || typeDate === 'datetime'\">\n <div class=\"wac-calendar__absolute__time__wrapper\">\n <div class=\"wac-calendar__absolute__time__wrapper__hours\">\n <div class=\"wac-calendar__absolute__time__wrapper__hours__left\">\n <button class=\"wac-calendar__absolute__time__wrapper__hours__btn\" (click)=\"incrementHours($event)\">\n <i class=\"fas fa-plus\"></i>\n </button>\n <button class=\"wac-calendar__absolute__time__wrapper__hours__btn\" (click)=\"decrementHours($event)\">\n <i class=\"fas fa-minus\"></i>\n </button>\n </div>\n <div class=\"wac-calendar__absolute__time__wrapper__hours__right\">\n <input #hours type=\"text\" [(ngModel)]=\"calendarHours\" [wacOnlyNumber]=\"true\"/>\n </div>\n </div>\n <div class=\"wac-calendar__absolute__time__wrapper__minutes\">\n <div class=\"wac-calendar__absolute__time__wrapper__minutes__left\">\n <input #minutes type=\"text\" [(ngModel)]=\"calendarMinutes\" [wacOnlyNumber]=\"true\"/>\n </div>\n <div class=\"wac-calendar__absolute__time__wrapper__minutes__right\">\n <button class=\"wac-calendar__absolute__time__wrapper__minutes__btn\" (click)=\"incrementMinutes($event)\">\n <i class=\"fas fa-plus\"></i>\n </button>\n <button class=\"wac-calendar__absolute__time__wrapper__minutes__btn\" (click)=\"decrementsMinutes($event)\">\n <i class=\"fas fa-minus\"></i>\n </button>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </wac-optional-disable-container>\n <p class=\"wac-calendar__endLabel\" *ngIf=\"type === 'edit'\">{{ endLabel }}</p>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.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: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.NwbDatePickerComponent, selector: "nwb-date-picker", inputs: ["options"], outputs: ["change", "clear"] }, { kind: "directive", type: i3.NwbDatePickerInputStartDirective, selector: "input[nwbDatepickerStart]", inputs: ["nwbDatepickerStart"] }, { kind: "directive", type: i3.NwbDatePickerInputDateTypeDirective, selector: "input[nwbDateType]", inputs: ["nwbDateType"] }, { kind: "directive", type: i4.AutoHideDirective, selector: "[wzAutoHide]", inputs: ["triggerElement", "forceOn"], outputs: ["clickOutside"] }, { kind: "directive", type: i5.ZindexToggleDirective, selector: "[zIndexToggle]", inputs: ["zIndexToggle"], outputs: ["onEventChange"] }, { kind: "directive", type: i6.OnlyNumberDirective, selector: "[wacOnlyNumber]", inputs: ["wacOnlyNumber"] }, { kind: "component", type: i7.OptionalDisableContainerComponent, selector: "wac-optional-disable-container", inputs: ["disabled"] }, { kind: "pipe", type: i1.DatePipe, name: "date" }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }], animations: [opacityAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
194
|
+
], viewQueries: [{ propertyName: "minutes", first: true, predicate: ["minutes"], descendants: true }, { propertyName: "hours", first: true, predicate: ["hours"], descendants: true }, { propertyName: "datePicker", first: true, predicate: ["datePicker"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div\r\n class=\"wac-calendar\"\r\n [ngClass]=\"{\r\n 'wac-calendar--input': type === 'input',\r\n 'wac-calendar--onlyDate': typeDate === 'date',\r\n 'wac-calendar--edit': type === 'edit',\r\n 'wac-calendar--select': type === 'select',\r\n 'wac-calendar--no-margin': noMargin,\r\n 'wac-calendar--open': open\r\n }\"\r\n [zIndexToggle]=\"open\"\r\n>\r\n <p [class]=\"'wac-calendar__label' + (boldLabel ? ' bold' : '')\" *ngIf=\"label && (type === 'input' || type === 'select')\" (click)=\"openCalendar()\">{{ label }}</p>\r\n <p class=\"wac-calendar__startLabel\" *ngIf=\"type === 'edit'\">{{ startLabel }}</p>\r\n <wac-optional-disable-container [disabled]=\"disabled\">\r\n <div class=\"wac-calendar__autoHide\" wzAutoHide (clickOutside)=\"openCalendar('close')\">\r\n <div class=\"wac-calendar__wrapper\">\r\n <div class=\"wac-calendar__wrapper__input\" *ngIf=\"type === 'input'\" (click)=\"openCalendar()\">\r\n <div class=\"wac-calendar__wrapper__input__icon\">\r\n <i class=\"far fa-calendar-alt\"></i>\r\n </div>\r\n <div class=\"wac-calendar__wrapper__input__date\">\r\n <span *ngIf=\"dateSelected\" @opacityAnimation>{{ dateSelected | date: 'dd/MM/yyyy'}}</span>\r\n <span class=\"placeholder-date\" *ngIf=\"!dateSelected\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.dd/mm/yyyy' | translate }}</span>\r\n </div>\r\n <div class=\"wac-calendar__wrapper__input__time\">\r\n <span *ngIf=\"dateSelected\" @opacityAnimation>{{ dateSelected | date: 'HH:mm' }}</span>\r\n <span class=\"placeholder-date\" *ngIf=\"!dateSelected\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.HH:mm' | translate }}</span>\r\n </div>\r\n </div>\r\n <div class=\"wac-calendar__wrapper__editInPlace\" *ngIf=\"type === 'edit'\" (click)=\"openCalendar()\">\r\n <div class=\"wac-calendar__wrapper__editInPlace__icon\">\r\n <i class=\"fal fa-calendar-alt\"></i>\r\n </div>\r\n <div class=\"wac-calendar__wrapper__editInPlace__date\">\r\n <div class=\"wac-calendar__wrapper__input__time\">\r\n <span *ngIf=\"dateSelected\" @opacityAnimation>{{ dateSelected | date: 'dd/MM/yyyy HH:mm' }}</span>\r\n <span class=\"placeholder-date\" *ngIf=\"!dateSelected\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.dd/MM/yyyy_HH:mm' | translate }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"wac-calendar__wrapper__select\" *ngIf=\"type === 'select'\" (click)=\"openCalendar()\">\r\n <div class=\"wac-calendar__wrapper__select__icon\">\r\n <i class=\"fal fa-calendar-alt\"></i>\r\n </div>\r\n <div class=\"wac-calendar__wrapper__select__date\">\r\n <span *ngIf=\"dateSelected\" @opacityAnimation>{{ dateSelected | date: 'dd/MM/yyyy HH:mm' }}</span>\r\n <span class=\"placeholder-date\" *ngIf=\"!dateSelected\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.dd/MM/yyyy_HH:mm' | translate }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div\r\n class=\"wac-calendar__absolute\"\r\n [ngClass]=\"{\r\n top: position === 'top',\r\n bottom: position === 'bottom',\r\n left: position === 'left',\r\n right: position === 'right',\r\n 'right-top': position === 'right-top',\r\n 'right-bottom': position === 'right-bottom',\r\n 'left-top': position === 'left-top',\r\n 'left-bottom': position === 'left-bottom',\r\n 'with-time': typeDate === 'datetime-local' || typeDate === 'datetime'\r\n }\"\r\n >\r\n <nwb-date-picker #datePicker (change)=\"onChangeDate($event)\" [options]=\"options\">\r\n <input [nwbDatepickerStart]=\"datePicker\" type=\"text\" [nwbDateType]=\"'date'\" [value]=\"dateSelected?.toISOString()\" />\r\n </nwb-date-picker>\r\n <div class=\"wac-calendar__absolute__time\" *ngIf=\"typeDate === 'datetime-local' || typeDate === 'datetime'\">\r\n <div class=\"wac-calendar__absolute__time__wrapper\">\r\n <div class=\"wac-calendar__absolute__time__wrapper__hours\">\r\n <div class=\"wac-calendar__absolute__time__wrapper__hours__left\">\r\n <button class=\"wac-calendar__absolute__time__wrapper__hours__btn\" (click)=\"incrementHours($event)\">\r\n <i class=\"fas fa-plus\"></i>\r\n </button>\r\n <button class=\"wac-calendar__absolute__time__wrapper__hours__btn\" (click)=\"decrementHours($event)\">\r\n <i class=\"fas fa-minus\"></i>\r\n </button>\r\n </div>\r\n <div class=\"wac-calendar__absolute__time__wrapper__hours__right\">\r\n <input #hours type=\"text\" [(ngModel)]=\"calendarHours\" [wacOnlyNumber]=\"true\"/>\r\n </div>\r\n </div>\r\n <div class=\"wac-calendar__absolute__time__wrapper__minutes\">\r\n <div class=\"wac-calendar__absolute__time__wrapper__minutes__left\">\r\n <input #minutes type=\"text\" [(ngModel)]=\"calendarMinutes\" [wacOnlyNumber]=\"true\"/>\r\n </div>\r\n <div class=\"wac-calendar__absolute__time__wrapper__minutes__right\">\r\n <button class=\"wac-calendar__absolute__time__wrapper__minutes__btn\" (click)=\"incrementMinutes($event)\">\r\n <i class=\"fas fa-plus\"></i>\r\n </button>\r\n <button class=\"wac-calendar__absolute__time__wrapper__minutes__btn\" (click)=\"decrementsMinutes($event)\">\r\n <i class=\"fas fa-minus\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </wac-optional-disable-container>\r\n <p class=\"wac-calendar__endLabel\" *ngIf=\"type === 'edit'\">{{ endLabel }}</p>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.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: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.NwbDatePickerComponent, selector: "nwb-date-picker", inputs: ["options"], outputs: ["change", "clear"] }, { kind: "directive", type: i3.NwbDatePickerInputStartDirective, selector: "input[nwbDatepickerStart]", inputs: ["nwbDatepickerStart"] }, { kind: "directive", type: i3.NwbDatePickerInputDateTypeDirective, selector: "input[nwbDateType]", inputs: ["nwbDateType"] }, { kind: "directive", type: i4.AutoHideDirective, selector: "[wzAutoHide]", inputs: ["triggerElement", "forceOn"], outputs: ["clickOutside"] }, { kind: "directive", type: i5.ZindexToggleDirective, selector: "[zIndexToggle]", inputs: ["zIndexToggle"], outputs: ["onEventChange"] }, { kind: "directive", type: i6.OnlyNumberDirective, selector: "[wacOnlyNumber]", inputs: ["wacOnlyNumber"] }, { kind: "component", type: i7.OptionalDisableContainerComponent, selector: "wac-optional-disable-container", inputs: ["disabled"] }, { kind: "pipe", type: i1.DatePipe, name: "date" }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }], animations: [opacityAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
195
195
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: CalendarComponent, decorators: [{
|
|
196
196
|
type: Component,
|
|
197
197
|
args: [{ selector: 'wac-calendar', providers: [
|
|
@@ -201,7 +201,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImpor
|
|
|
201
201
|
multi: true
|
|
202
202
|
},
|
|
203
203
|
DatePipe
|
|
204
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, animations: [opacityAnimation], template: "<div\n class=\"wac-calendar\"\n [ngClass]=\"{\n 'wac-calendar--input': type === 'input',\n 'wac-calendar--onlyDate': typeDate === 'date',\n 'wac-calendar--edit': type === 'edit',\n 'wac-calendar--select': type === 'select',\n 'wac-calendar--no-margin': noMargin,\n 'wac-calendar--open': open\n }\"\n [zIndexToggle]=\"open\"\n>\n <p [class]=\"'wac-calendar__label' + (boldLabel ? ' bold' : '')\" *ngIf=\"label && (type === 'input' || type === 'select')\" (click)=\"openCalendar()\">{{ label }}</p>\n <p class=\"wac-calendar__startLabel\" *ngIf=\"type === 'edit'\">{{ startLabel }}</p>\n <wac-optional-disable-container [disabled]=\"disabled\">\n <div class=\"wac-calendar__autoHide\" wzAutoHide (clickOutside)=\"openCalendar('close')\">\n <div class=\"wac-calendar__wrapper\">\n <div class=\"wac-calendar__wrapper__input\" *ngIf=\"type === 'input'\" (click)=\"openCalendar()\">\n <div class=\"wac-calendar__wrapper__input__icon\">\n <i class=\"far fa-calendar-alt\"></i>\n </div>\n <div class=\"wac-calendar__wrapper__input__date\">\n <span *ngIf=\"dateSelected\" @opacityAnimation>{{ dateSelected | date: 'dd/MM/yyyy'}}</span>\n <span class=\"placeholder-date\" *ngIf=\"!dateSelected\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.dd/mm/yyyy' | translate }}</span>\n </div>\n <div class=\"wac-calendar__wrapper__input__time\">\n <span *ngIf=\"dateSelected\" @opacityAnimation>{{ dateSelected | date: 'HH:mm' }}</span>\n <span class=\"placeholder-date\" *ngIf=\"!dateSelected\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.HH:mm' | translate }}</span>\n </div>\n </div>\n <div class=\"wac-calendar__wrapper__editInPlace\" *ngIf=\"type === 'edit'\" (click)=\"openCalendar()\">\n <div class=\"wac-calendar__wrapper__editInPlace__icon\">\n <i class=\"fal fa-calendar-alt\"></i>\n </div>\n <div class=\"wac-calendar__wrapper__editInPlace__date\">\n <div class=\"wac-calendar__wrapper__input__time\">\n <span *ngIf=\"dateSelected\" @opacityAnimation>{{ dateSelected | date: 'dd/MM/yyyy HH:mm' }}</span>\n <span class=\"placeholder-date\" *ngIf=\"!dateSelected\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.dd/MM/yyyy_HH:mm' | translate }}</span>\n </div>\n </div>\n </div>\n <div class=\"wac-calendar__wrapper__select\" *ngIf=\"type === 'select'\" (click)=\"openCalendar()\">\n <div class=\"wac-calendar__wrapper__select__icon\">\n <i class=\"fal fa-calendar-alt\"></i>\n </div>\n <div class=\"wac-calendar__wrapper__select__date\">\n <span *ngIf=\"dateSelected\" @opacityAnimation>{{ dateSelected | date: 'dd/MM/yyyy HH:mm' }}</span>\n <span class=\"placeholder-date\" *ngIf=\"!dateSelected\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.dd/MM/yyyy_HH:mm' | translate }}</span>\n </div>\n </div>\n </div>\n <div\n class=\"wac-calendar__absolute\"\n [ngClass]=\"{\n top: position === 'top',\n bottom: position === 'bottom',\n left: position === 'left',\n right: position === 'right',\n 'right-top': position === 'right-top',\n 'right-bottom': position === 'right-bottom',\n 'left-top': position === 'left-top',\n 'left-bottom': position === 'left-bottom',\n 'with-time': typeDate === 'datetime-local' || typeDate === 'datetime'\n }\"\n >\n <nwb-date-picker #datePicker (change)=\"onChangeDate($event)\" [options]=\"options\">\n <input [nwbDatepickerStart]=\"datePicker\" type=\"text\" [nwbDateType]=\"'date'\" [value]=\"dateSelected?.toISOString()\" />\n </nwb-date-picker>\n <div class=\"wac-calendar__absolute__time\" *ngIf=\"typeDate === 'datetime-local' || typeDate === 'datetime'\">\n <div class=\"wac-calendar__absolute__time__wrapper\">\n <div class=\"wac-calendar__absolute__time__wrapper__hours\">\n <div class=\"wac-calendar__absolute__time__wrapper__hours__left\">\n <button class=\"wac-calendar__absolute__time__wrapper__hours__btn\" (click)=\"incrementHours($event)\">\n <i class=\"fas fa-plus\"></i>\n </button>\n <button class=\"wac-calendar__absolute__time__wrapper__hours__btn\" (click)=\"decrementHours($event)\">\n <i class=\"fas fa-minus\"></i>\n </button>\n </div>\n <div class=\"wac-calendar__absolute__time__wrapper__hours__right\">\n <input #hours type=\"text\" [(ngModel)]=\"calendarHours\" [wacOnlyNumber]=\"true\"/>\n </div>\n </div>\n <div class=\"wac-calendar__absolute__time__wrapper__minutes\">\n <div class=\"wac-calendar__absolute__time__wrapper__minutes__left\">\n <input #minutes type=\"text\" [(ngModel)]=\"calendarMinutes\" [wacOnlyNumber]=\"true\"/>\n </div>\n <div class=\"wac-calendar__absolute__time__wrapper__minutes__right\">\n <button class=\"wac-calendar__absolute__time__wrapper__minutes__btn\" (click)=\"incrementMinutes($event)\">\n <i class=\"fas fa-plus\"></i>\n </button>\n <button class=\"wac-calendar__absolute__time__wrapper__minutes__btn\" (click)=\"decrementsMinutes($event)\">\n <i class=\"fas fa-minus\"></i>\n </button>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </wac-optional-disable-container>\n <p class=\"wac-calendar__endLabel\" *ngIf=\"type === 'edit'\">{{ endLabel }}</p>\n</div>\n" }]
|
|
204
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, animations: [opacityAnimation], template: "<div\r\n class=\"wac-calendar\"\r\n [ngClass]=\"{\r\n 'wac-calendar--input': type === 'input',\r\n 'wac-calendar--onlyDate': typeDate === 'date',\r\n 'wac-calendar--edit': type === 'edit',\r\n 'wac-calendar--select': type === 'select',\r\n 'wac-calendar--no-margin': noMargin,\r\n 'wac-calendar--open': open\r\n }\"\r\n [zIndexToggle]=\"open\"\r\n>\r\n <p [class]=\"'wac-calendar__label' + (boldLabel ? ' bold' : '')\" *ngIf=\"label && (type === 'input' || type === 'select')\" (click)=\"openCalendar()\">{{ label }}</p>\r\n <p class=\"wac-calendar__startLabel\" *ngIf=\"type === 'edit'\">{{ startLabel }}</p>\r\n <wac-optional-disable-container [disabled]=\"disabled\">\r\n <div class=\"wac-calendar__autoHide\" wzAutoHide (clickOutside)=\"openCalendar('close')\">\r\n <div class=\"wac-calendar__wrapper\">\r\n <div class=\"wac-calendar__wrapper__input\" *ngIf=\"type === 'input'\" (click)=\"openCalendar()\">\r\n <div class=\"wac-calendar__wrapper__input__icon\">\r\n <i class=\"far fa-calendar-alt\"></i>\r\n </div>\r\n <div class=\"wac-calendar__wrapper__input__date\">\r\n <span *ngIf=\"dateSelected\" @opacityAnimation>{{ dateSelected | date: 'dd/MM/yyyy'}}</span>\r\n <span class=\"placeholder-date\" *ngIf=\"!dateSelected\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.dd/mm/yyyy' | translate }}</span>\r\n </div>\r\n <div class=\"wac-calendar__wrapper__input__time\">\r\n <span *ngIf=\"dateSelected\" @opacityAnimation>{{ dateSelected | date: 'HH:mm' }}</span>\r\n <span class=\"placeholder-date\" *ngIf=\"!dateSelected\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.HH:mm' | translate }}</span>\r\n </div>\r\n </div>\r\n <div class=\"wac-calendar__wrapper__editInPlace\" *ngIf=\"type === 'edit'\" (click)=\"openCalendar()\">\r\n <div class=\"wac-calendar__wrapper__editInPlace__icon\">\r\n <i class=\"fal fa-calendar-alt\"></i>\r\n </div>\r\n <div class=\"wac-calendar__wrapper__editInPlace__date\">\r\n <div class=\"wac-calendar__wrapper__input__time\">\r\n <span *ngIf=\"dateSelected\" @opacityAnimation>{{ dateSelected | date: 'dd/MM/yyyy HH:mm' }}</span>\r\n <span class=\"placeholder-date\" *ngIf=\"!dateSelected\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.dd/MM/yyyy_HH:mm' | translate }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"wac-calendar__wrapper__select\" *ngIf=\"type === 'select'\" (click)=\"openCalendar()\">\r\n <div class=\"wac-calendar__wrapper__select__icon\">\r\n <i class=\"fal fa-calendar-alt\"></i>\r\n </div>\r\n <div class=\"wac-calendar__wrapper__select__date\">\r\n <span *ngIf=\"dateSelected\" @opacityAnimation>{{ dateSelected | date: 'dd/MM/yyyy HH:mm' }}</span>\r\n <span class=\"placeholder-date\" *ngIf=\"!dateSelected\" @opacityAnimation>{{ 'wac.Date.PlaceHolder.dd/MM/yyyy_HH:mm' | translate }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div\r\n class=\"wac-calendar__absolute\"\r\n [ngClass]=\"{\r\n top: position === 'top',\r\n bottom: position === 'bottom',\r\n left: position === 'left',\r\n right: position === 'right',\r\n 'right-top': position === 'right-top',\r\n 'right-bottom': position === 'right-bottom',\r\n 'left-top': position === 'left-top',\r\n 'left-bottom': position === 'left-bottom',\r\n 'with-time': typeDate === 'datetime-local' || typeDate === 'datetime'\r\n }\"\r\n >\r\n <nwb-date-picker #datePicker (change)=\"onChangeDate($event)\" [options]=\"options\">\r\n <input [nwbDatepickerStart]=\"datePicker\" type=\"text\" [nwbDateType]=\"'date'\" [value]=\"dateSelected?.toISOString()\" />\r\n </nwb-date-picker>\r\n <div class=\"wac-calendar__absolute__time\" *ngIf=\"typeDate === 'datetime-local' || typeDate === 'datetime'\">\r\n <div class=\"wac-calendar__absolute__time__wrapper\">\r\n <div class=\"wac-calendar__absolute__time__wrapper__hours\">\r\n <div class=\"wac-calendar__absolute__time__wrapper__hours__left\">\r\n <button class=\"wac-calendar__absolute__time__wrapper__hours__btn\" (click)=\"incrementHours($event)\">\r\n <i class=\"fas fa-plus\"></i>\r\n </button>\r\n <button class=\"wac-calendar__absolute__time__wrapper__hours__btn\" (click)=\"decrementHours($event)\">\r\n <i class=\"fas fa-minus\"></i>\r\n </button>\r\n </div>\r\n <div class=\"wac-calendar__absolute__time__wrapper__hours__right\">\r\n <input #hours type=\"text\" [(ngModel)]=\"calendarHours\" [wacOnlyNumber]=\"true\"/>\r\n </div>\r\n </div>\r\n <div class=\"wac-calendar__absolute__time__wrapper__minutes\">\r\n <div class=\"wac-calendar__absolute__time__wrapper__minutes__left\">\r\n <input #minutes type=\"text\" [(ngModel)]=\"calendarMinutes\" [wacOnlyNumber]=\"true\"/>\r\n </div>\r\n <div class=\"wac-calendar__absolute__time__wrapper__minutes__right\">\r\n <button class=\"wac-calendar__absolute__time__wrapper__minutes__btn\" (click)=\"incrementMinutes($event)\">\r\n <i class=\"fas fa-plus\"></i>\r\n </button>\r\n <button class=\"wac-calendar__absolute__time__wrapper__minutes__btn\" (click)=\"decrementsMinutes($event)\">\r\n <i class=\"fas fa-minus\"></i>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </wac-optional-disable-container>\r\n <p class=\"wac-calendar__endLabel\" *ngIf=\"type === 'edit'\">{{ endLabel }}</p>\r\n</div>\r\n" }]
|
|
205
205
|
}], ctorParameters: function () { return [{ type: i1.DatePipe }]; }, propDecorators: { minutes: [{
|
|
206
206
|
type: ViewChild,
|
|
207
207
|
args: ['minutes']
|
|
@@ -234,4 +234,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImpor
|
|
|
234
234
|
}], changeData: [{
|
|
235
235
|
type: Output
|
|
236
236
|
}] } });
|
|
237
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYWxlbmRhci9jYWxlbmRhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhbGVuZGFyL2NhbGVuZGFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUE0Qix1QkFBdUIsRUFBRSxTQUFTLEVBQWMsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEssT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXpFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDOzs7Ozs7Ozs7O0FBaUIzRSxNQUFNLE9BQU8saUJBQWlCO0lBZTVCLElBQ0ksT0FBTyxDQUFDLE9BQXVDO1FBQ2pELElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDO1FBQ3hCLElBQUksSUFBSSxDQUFDLHVCQUF1QixFQUFFLEVBQUU7WUFDbEMsSUFBSSxDQUFDLDRCQUE0QixDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQzVDO0lBQ0gsQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBV0QsSUFDSSxZQUFZLENBQUMsWUFBa0I7UUFDakMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyx5Q0FBeUM7SUFDeEYsQ0FBQztJQUNELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUM1QixDQUFDO0lBaUJELElBQUksZUFBZSxDQUFDLGVBQXVCO1FBQ3pDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztTQUNoQztRQUNELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsZUFBZSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUN4RCxJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUV0QyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQywyQkFBMkI7UUFDbEUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxrQ0FBa0M7UUFDdkgsSUFBSSxDQUFDLHlCQUF5QixFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVELElBQUksZUFBZTtRQUNqQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksSUFBSSxJQUFJLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRUQsSUFBSSxhQUFhLENBQUMsYUFBcUI7UUFDckMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDdEIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1NBQ2hDO1FBRUQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRXBELElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLDJCQUEyQjtRQUNsRSxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLGtDQUFrQztRQUNySCxJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRUQsSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsWUFBWSxJQUFJLElBQUksSUFBSSxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDeEUsQ0FBQztJQUVELFlBQW9CLFFBQWtCO1FBQWxCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFyRnRDLGNBQVMsR0FBWSxLQUFLLENBQUMsQ0FBQyw4Q0FBOEM7UUFHMUUsU0FBSSxHQUFnQyxPQUFPLENBQUM7UUFjNUMsYUFBUSxHQUFvQztZQUMxQyxXQUFXLEVBQUUsUUFBUTtZQUNyQixVQUFVLEVBQUUsS0FBSztZQUNqQixVQUFVLEVBQUUsSUFBSTtTQUNqQixDQUFDO1FBR0YsYUFBUSxHQUFHLFFBQVEsQ0FBQztRQWNWLHVCQUFrQixHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFHbEQsYUFBUSxHQUEyQyxnQkFBZ0IsQ0FBQztRQUVwRSxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBRVIsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUVoQixlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQXVDLENBQUM7UUFDL0UsU0FBSSxHQUFHLEtBQUssQ0FBQztRQUNiLGVBQVUsR0FBRyxFQUFFLENBQUM7UUFDaEIsYUFBUSxHQUFHLEVBQUUsQ0FBQztRQThJZCwrQkFBK0I7UUFFL0IsYUFBUSxHQUEwQixHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7UUFFM0MsWUFBTyxHQUFlLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztJQS9HVSxDQUFDO0lBRTFDLFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxLQUFLLElBQUksT0FBTyxDQUFDLElBQUksRUFBRTtZQUNqQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztTQUN6QjtJQUNILENBQUM7SUFFRCxZQUFZLENBQUMsYUFBaUM7UUFDNUMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLE9BQU87U0FDUjtRQUVELElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztTQUNoQztRQUVELGFBQWEsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUMvRCxhQUFhLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7UUFFbkUsSUFBSSxDQUFDLFlBQVksR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDO1FBQzVDLElBQUksQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFTyx5QkFBeUI7UUFDL0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDakMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDaEQsSUFBSSxDQUFDLGFBQWEsQ0FBQztZQUNqQixTQUFTLEVBQUUsSUFBSSxDQUFDLFlBQVk7WUFDNUIsT0FBTyxFQUFFLElBQUksQ0FBQyxZQUFZO1NBQzNCLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxhQUFhLENBQUMsS0FBMEM7UUFDdEQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELFlBQVksQ0FBQyxLQUFLLEdBQUcsSUFBSTtRQUV2QixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsT0FBTztTQUNSO1FBRUQsSUFBSSxLQUFLLEtBQUssT0FBTyxFQUFFO1lBQ3JCLElBQUksSUFBSSxDQUFDLElBQUksRUFBRTtnQkFDYixJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztnQkFDbEIsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO2FBQ2hCO1NBQ0Y7YUFBTTtZQUNMLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1NBQ3hCO0lBQ0gsQ0FBQztJQUVPLGdCQUFnQjtRQUN0QixJQUFJLElBQUksQ0FBQyxJQUFJLEtBQUssTUFBTSxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDdEMsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDM0MsSUFBSSxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtnQkFDekIsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQy9CO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQzthQUM5QjtTQUNGO0lBQ0gsQ0FBQztJQUVELGdCQUFnQixDQUFDLE1BQWE7UUFDNUIsSUFBSSxDQUFDLGVBQWUsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDO1FBQ25FLE1BQU0sQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsaUJBQWlCLENBQUMsTUFBYTtRQUM3QixJQUFJLENBQUMsZUFBZSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDbkUsTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxjQUFjLENBQUMsTUFBYTtRQUMxQixJQUFJLENBQUMsYUFBYSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDL0QsTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxjQUFjLENBQUMsTUFBYTtRQUMxQixJQUFJLENBQUMsYUFBYSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUM7UUFDL0QsTUFBTSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRDs7TUFFRTtJQUNNLFVBQVUsQ0FBQyxJQUFxQixFQUFFLEdBQUcsR0FBRyxDQUFDLEVBQUUsR0FBRyxHQUFHLEVBQUU7UUFDekQsSUFBSSxVQUFVLEdBQUcsT0FBTyxJQUFJLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDdEUsVUFBVSxHQUFHLFVBQVUsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDO1FBQ2pELFVBQVUsR0FBRyxVQUFVLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQztRQUNqRCxVQUFVLEdBQUcsUUFBUSxDQUFDLENBQUMsRUFBRSxHQUFHLFVBQVUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQywrQkFBK0I7UUFDbkYsT0FBTyxVQUFVLENBQUM7SUFDcEIsQ0FBQztJQUVPLDRCQUE0QixDQUFDLE9BQXVDO1FBQzFFLE1BQU0sdUJBQXVCLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxVQUFVLENBQUM7UUFDNUUsdUJBQXVCLENBQUMsR0FBRyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUM7UUFDOUMsdUJBQXVCLENBQUMsR0FBRyxHQUFHLE9BQU8sQ0FBQyxPQUFPLENBQUM7UUFDOUMsdUJBQXVCLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVPLHVCQUF1QjtRQUM3QixPQUFPLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FBQyxDQUFDLFVBQVUsQ0FBQztJQUM1RyxDQUFDO0lBUUQsVUFBVSxDQUFDLElBQVU7UUFDbkIsSUFBSSxDQUFDLElBQUksRUFBRTtZQUNULE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO0lBQzNCLENBQUM7SUFDRCxnQkFBZ0IsQ0FBQyxFQUFPO1FBQ3RCLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFDRCxpQkFBaUIsQ0FBQyxFQUFPO1FBQ3JCLElBQUksQ0FBQyxPQUFPLEdBQUcsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFDRCxnQkFBZ0IsQ0FBQyxVQUFtQjtRQUNsQyxJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztJQUM3QixDQUFDOzs4R0E5TlUsaUJBQWlCO2tHQUFqQixpQkFBaUIsb1VBWmpCO1FBQ1Q7WUFDRSxPQUFPLEVBQUUsaUJBQWlCO1lBQzFCLFdBQVcsRUFBRSxpQkFBaUI7WUFDOUIsS0FBSyxFQUFFLElBQUk7U0FDWjtRQUNELFFBQVE7S0FDVCwrVENoQkgsc3RMQXVHQSx5ekREcEZjLENBQUMsZ0JBQWdCLENBQUM7MkZBRW5CLGlCQUFpQjtrQkFmN0IsU0FBUzsrQkFDRSxjQUFjLGFBRWI7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxtQkFBbUI7NEJBQzlCLEtBQUssRUFBRSxJQUFJO3lCQUNaO3dCQUNELFFBQVE7cUJBQ1QsbUJBQ2dCLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksY0FDekIsQ0FBQyxnQkFBZ0IsQ0FBQzsrRkFJUixPQUFPO3NCQUE1QixTQUFTO3VCQUFDLFNBQVM7Z0JBQ0EsS0FBSztzQkFBeEIsU0FBUzt1QkFBQyxPQUFPO2dCQUNPLFVBQVU7c0JBQWxDLFNBQVM7dUJBQUMsWUFBWTtnQkFHdkIsS0FBSztzQkFESixLQUFLO2dCQUlOLFNBQVM7c0JBRFIsS0FBSztnQkFJTixJQUFJO3NCQURILEtBQUs7Z0JBSUYsT0FBTztzQkFEVixLQUFLO2dCQW1CTixRQUFRO3NCQURQLEtBQUs7Z0JBSUYsWUFBWTtzQkFEZixLQUFLO2dCQVlJLGtCQUFrQjtzQkFBM0IsTUFBTTtnQkFHUCxRQUFRO3NCQURQLEtBQUs7Z0JBR04sUUFBUTtzQkFEUCxLQUFLO2dCQUdHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRUksVUFBVTtzQkFBbkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGVQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIEV2ZW50RW1pdHRlciwgT3V0cHV0LCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBWaWV3Q2hpbGQsIEVsZW1lbnRSZWYsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBOd2JEYXRlUGlja2VyQ29tcG9uZW50LCBOd2JEYXRlUGlja2VyRXZlbnQsIE53YkRhdGVQaWNrZXJPcHRpb25zIH0gZnJvbSAnQHdpemlzaG9wL25nLXdpemktYnVsbWEnO1xuaW1wb3J0IHsgb3BhY2l0eUFuaW1hdGlvbiB9IGZyb20gJy4uLy4uL2FuaW1hdGlvbnMvc2hvdy9vcGFjaXR5LmFuaW1hdGlvbic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3dhYy1jYWxlbmRhcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9jYWxlbmRhci5jb21wb25lbnQuaHRtbCcsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IENhbGVuZGFyQ29tcG9uZW50LFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9LFxuICAgIERhdGVQaXBlXG4gIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBhbmltYXRpb25zOiBbb3BhY2l0eUFuaW1hdGlvbl1cbn0pXG5leHBvcnQgY2xhc3MgQ2FsZW5kYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgLy8hIEF0IHRoZSBtb21lbnQsIHRoZSBjb21wb25lbnQgaGFuZGxlIG9ubHkgb25lIGRhdGUgKG5vdCBhIHJhbmdlKVxuICBAVmlld0NoaWxkKCdtaW51dGVzJykgbWludXRlczogRWxlbWVudFJlZjtcbiAgQFZpZXdDaGlsZCgnaG91cnMnKSBob3VyczogRWxlbWVudFJlZjtcbiAgQFZpZXdDaGlsZCgnZGF0ZVBpY2tlcicpIGRhdGVQaWNrZXI6IE53YkRhdGVQaWNrZXJDb21wb25lbnQ7XG5cbiAgQElucHV0KClcbiAgbGFiZWw6IHN0cmluZyB8IG51bGw7IC8vIHRvZG8gdXNlIG5nLWNvbnRlbnQgaW5zdGVhZFxuXG4gIEBJbnB1dCgpXG4gIGJvbGRMYWJlbDogYm9vbGVhbiA9IGZhbHNlOyAvLyB0b2RvIHJlbW92ZSB3aGVuIGxhYmVsIHdpbGwgYmUgYSBuZy1jb250ZW50XG5cbiAgQElucHV0KClcbiAgdHlwZTogJ2lucHV0JyB8ICdlZGl0JyB8ICdzZWxlY3QnID0gJ2lucHV0JztcblxuICBASW5wdXQoKVxuICBzZXQgb3B0aW9ucyhvcHRpb25zOiBSZWFkb25seTxOd2JEYXRlUGlja2VyT3B0aW9ucz4pIHtcbiAgICB0aGlzLl9vcHRpb25zID0gb3B0aW9ucztcbiAgICBpZiAodGhpcy5pc0J1bG1hRGF0ZVBpY2tlckV4aXN0cygpKSB7XG4gICAgICB0aGlzLnVwZGF0ZUJ1bG1hRGF0ZVBpY2tlck9wdGlvbnMob3B0aW9ucyk7XG4gICAgfVxuICB9XG5cbiAgZ2V0IG9wdGlvbnMoKSA6IFJlYWRvbmx5PE53YkRhdGVQaWNrZXJPcHRpb25zPiB7XG4gICAgcmV0dXJuIHRoaXMuX29wdGlvbnM7XG4gIH1cblxuICBfb3B0aW9uczogUmVhZG9ubHk8TndiRGF0ZVBpY2tlck9wdGlvbnM+ICA9IHtcbiAgICBkaXNwbGF5TW9kZTogJ2lubGluZScsXG4gICAgc2hvd0hlYWRlcjogZmFsc2UsXG4gICAgc2hvd0Zvb3RlcjogdHJ1ZSxcbiAgfTtcblxuICBASW5wdXQoKVxuICBwb3NpdGlvbiA9ICdib3R0b20nO1xuXG4gIEBJbnB1dCgpXG4gIHNldCBkYXRlU2VsZWN0ZWQoZGF0ZVNlbGVjdGVkOiBEYXRlKSB7XG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5fZGF0ZVNlbGVjdGVkID0gbmV3IERhdGUoZGF0ZVNlbGVjdGVkKTsgLy8gdHJpZ2dlciBjaGFuZ2UgZGV0ZWN0aW9uIGZvciBwdXJlIHBpcGVcbiAgfVxuICBnZXQgZGF0ZVNlbGVjdGVkKCkgOiBEYXRlIHtcbiAgICByZXR1cm4gdGhpcy5fZGF0ZVNlbGVjdGVkO1xuICB9XG4gIF9kYXRlU2VsZWN0ZWQ6IERhdGU7XG5cbiAgQE91dHB1dCgpIGRhdGVTZWxlY3RlZENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBASW5wdXQoKVxuICB0eXBlRGF0ZTogJ2RhdGV0aW1lJyB8ICdkYXRldGltZS1sb2NhbCcgfCAnZGF0ZScgPSAnZGF0ZXRpbWUtbG9jYWwnO1xuICBASW5wdXQoKVxuICBub01hcmdpbiA9IGZhbHNlO1xuXG4gIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgQE91dHB1dCgpIGNoYW5nZURhdGEgPSBuZXcgRXZlbnRFbWl0dGVyPHsgc3RhcnREYXRlOiBEYXRlOyBlbmREYXRlOiBEYXRlOyB9PigpO1xuICBvcGVuID0gZmFsc2U7XG4gIHN0YXJ0TGFiZWwgPSAnJztcbiAgZW5kTGFiZWwgPSAnJztcblxuICBzZXQgY2FsZW5kYXJNaW51dGVzKGNhbGVuZGFyTWludXRlczogc3RyaW5nKSB7XG4gICAgaWYgKCF0aGlzLmRhdGVTZWxlY3RlZCkge1xuICAgICAgdGhpcy5kYXRlU2VsZWN0ZWQgPSBuZXcgRGF0ZSgpO1xuICAgIH1cbiAgICBjb25zdCBtaW51dGVzID0gdGhpcy5mb3JtYXRUaW1lKGNhbGVuZGFyTWludXRlcywgMCwgNTkpO1xuICAgIHRoaXMuZGF0ZVNlbGVjdGVkLnNldE1pbnV0ZXMobWludXRlcyk7XG5cbiAgICB0aGlzLmRhdGVTZWxlY3RlZCA9IHRoaXMuZGF0ZVNlbGVjdGVkOyAvLyB0cmlnZ2VyIGNoYW5nZSBkZXRlY3Rpb25cbiAgICB0aGlzLm1pbnV0ZXMubmF0aXZlRWxlbWVudC52YWx1ZSA9IHRoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKHRoaXMuZGF0ZVNlbGVjdGVkLCAnbW0nKTsgLy8gZm9yY2UgdG8gdXBkYXRlIHRoZSBpbnB1dCB2YWx1ZVxuICAgIHRoaXMudHJpZ2dlckRhdGVTZWxlY3RlZENoYW5nZSgpO1xuICB9XG5cbiAgZ2V0IGNhbGVuZGFyTWludXRlcygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybSh0aGlzLmRhdGVTZWxlY3RlZCA/PyBuZXcgRGF0ZSgpLCAnbW0nKTtcbiAgfVxuXG4gIHNldCBjYWxlbmRhckhvdXJzKGNhbGVuZGFySG91cnM6IHN0cmluZykge1xuICAgIGlmICghdGhpcy5kYXRlU2VsZWN0ZWQpIHtcbiAgICAgIHRoaXMuZGF0ZVNlbGVjdGVkID0gbmV3IERhdGUoKTtcbiAgICB9XG5cbiAgICBjb25zdCBob3VycyA9IHRoaXMuZm9ybWF0VGltZShjYWxlbmRhckhvdXJzLCAwLCAyMyk7XG5cbiAgICB0aGlzLmRhdGVTZWxlY3RlZC5zZXRIb3Vycyhob3Vycyk7XG4gICAgdGhpcy5kYXRlU2VsZWN0ZWQgPSB0aGlzLmRhdGVTZWxlY3RlZDsgLy8gdHJpZ2dlciBjaGFuZ2UgZGV0ZWN0aW9uXG4gICAgdGhpcy5ob3Vycy5uYXRpdmVFbGVtZW50LnZhbHVlID0gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0odGhpcy5kYXRlU2VsZWN0ZWQsICdISCcpOyAvLyBmb3JjZSB0byB1cGRhdGUgdGhlIGlucHV0IHZhbHVlXG4gICAgdGhpcy50cmlnZ2VyRGF0ZVNlbGVjdGVkQ2hhbmdlKCk7XG4gIH1cblxuICBnZXQgY2FsZW5kYXJIb3VycygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybSh0aGlzLmRhdGVTZWxlY3RlZCA/PyBuZXcgRGF0ZSgpLCAnSEgnKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZGF0ZVBpcGU6IERhdGVQaXBlKSB7fVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBpZiAoY2hhbmdlcy5sYWJlbCB8fCBjaGFuZ2VzLnR5cGUpIHtcbiAgICAgIHRoaXMuc2V0Q2FsZW5kYXJMYWJlbCgpO1xuICAgIH1cbiAgfVxuXG4gIG9uQ2hhbmdlRGF0ZShzZWxlY3RlZERhdGVzOiBOd2JEYXRlUGlja2VyRXZlbnQpIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5kYXRlU2VsZWN0ZWQpIHtcbiAgICAgIHRoaXMuZGF0ZVNlbGVjdGVkID0gbmV3IERhdGUoKTtcbiAgICB9XG5cbiAgICBzZWxlY3RlZERhdGVzLnN0YXJ0RGF0ZS5zZXRIb3Vycyh0aGlzLmRhdGVTZWxlY3RlZC5nZXRIb3VycygpKTtcbiAgICBzZWxlY3RlZERhdGVzLnN0YXJ0RGF0ZS5zZXRNaW51dGVzKHRoaXMuZGF0ZVNlbGVjdGVkLmdldE1pbnV0ZXMoKSk7XG5cbiAgICB0aGlzLmRhdGVTZWxlY3RlZCA9IHNlbGVjdGVkRGF0ZXMuc3RhcnREYXRlO1xuICAgIHRoaXMudHJpZ2dlckRhdGVTZWxlY3RlZENoYW5nZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSB0cmlnZ2VyRGF0ZVNlbGVjdGVkQ2hhbmdlKCkge1xuICAgIHRoaXMub25DaGFuZ2UodGhpcy5kYXRlU2VsZWN0ZWQpO1xuICAgIHRoaXMuZGF0ZVNlbGVjdGVkQ2hhbmdlLmVtaXQodGhpcy5kYXRlU2VsZWN0ZWQpO1xuICAgIHRoaXMudHJpZ2dlckNoYW5nZSh7XG4gICAgICBzdGFydERhdGU6IHRoaXMuZGF0ZVNlbGVjdGVkLFxuICAgICAgZW5kRGF0ZTogdGhpcy5kYXRlU2VsZWN0ZWRcbiAgICB9KTtcbiAgfVxuXG4gIHRyaWdnZXJDaGFuZ2UoZXZlbnQ6IHsgc3RhcnREYXRlOiBEYXRlOyBlbmREYXRlOiBEYXRlOyB9KSB7XG4gICAgdGhpcy5jaGFuZ2VEYXRhLmVtaXQoZXZlbnQpO1xuICB9XG5cbiAgb3BlbkNhbGVuZGFyKHZhbHVlID0gbnVsbCkge1xuXG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAodmFsdWUgPT09ICdjbG9zZScpIHtcbiAgICAgIGlmICh0aGlzLm9wZW4pIHtcbiAgICAgICAgdGhpcy5vcGVuID0gZmFsc2U7XG4gICAgICAgIHRoaXMub25Ub3VjaCgpO1xuICAgICAgfVxuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm9wZW4gPSAhdGhpcy5vcGVuO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2V0Q2FsZW5kYXJMYWJlbCgpIHtcbiAgICBpZiAodGhpcy50eXBlID09PSAnZWRpdCcgJiYgdGhpcy5sYWJlbCkge1xuICAgICAgY29uc3Qgc3BsaXRMYWJlbCA9IHRoaXMubGFiZWwuc3BsaXQoJ3t4fScpO1xuICAgICAgaWYgKHNwbGl0TGFiZWwubGVuZ3RoID4gMSkge1xuICAgICAgICB0aGlzLnN0YXJ0TGFiZWwgPSBzcGxpdExhYmVsWzBdO1xuICAgICAgICB0aGlzLmVuZExhYmVsID0gc3BsaXRMYWJlbFsxXTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuc3RhcnRMYWJlbCA9IHRoaXMubGFiZWw7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaW5jcmVtZW50TWludXRlcygkZXZlbnQ6IEV2ZW50KSB7XG4gICAgdGhpcy5jYWxlbmRhck1pbnV0ZXMgPSBwYXJzZUludCh0aGlzLmNhbGVuZGFyTWludXRlcywgMTApICsgMSArICcnO1xuICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICB9XG5cbiAgZGVjcmVtZW50c01pbnV0ZXMoJGV2ZW50OiBFdmVudCkge1xuICAgIHRoaXMuY2FsZW5kYXJNaW51dGVzID0gcGFyc2VJbnQodGhpcy5jYWxlbmRhck1pbnV0ZXMsIDEwKSAtIDEgKyAnJztcbiAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgfVxuXG4gIGluY3JlbWVudEhvdXJzKCRldmVudDogRXZlbnQpIHtcbiAgICB0aGlzLmNhbGVuZGFySG91cnMgPSBwYXJzZUludCh0aGlzLmNhbGVuZGFySG91cnMsIDEwKSArIDEgKyAnJztcbiAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgfVxuXG4gIGRlY3JlbWVudEhvdXJzKCRldmVudDogRXZlbnQpIHtcbiAgICB0aGlzLmNhbGVuZGFySG91cnMgPSBwYXJzZUludCh0aGlzLmNhbGVuZGFySG91cnMsIDEwKSAtIDEgKyAnJztcbiAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgfVxuXG4gIC8qXG4gICAgRW5zdXJlIHRoYXQgdGhlIGlucHV0IHZhbHVlIGlzIGEgbnVtYmVyIGFuZCB0aGF0IGl0IGlzIGJldHdlZW4gbWluIGFuZCBtYXhcbiAgKi9cbiAgcHJpdmF0ZSBmb3JtYXRUaW1lKHRpbWU6IHN0cmluZyB8IG51bWJlciwgbWluID0gMCwgbWF4ID0gNTkpIHtcbiAgICBsZXQgdGltZU51bWJlciA9IHR5cGVvZiB0aW1lID09PSAnc3RyaW5nJyA/IHBhcnNlSW50KHRpbWUsIDEwKSA6IHRpbWU7XG4gICAgdGltZU51bWJlciA9IHRpbWVOdW1iZXIgPiBtYXggPyBtaW4gOiB0aW1lTnVtYmVyO1xuICAgIHRpbWVOdW1iZXIgPSB0aW1lTnVtYmVyIDwgbWluID8gbWF4IDogdGltZU51bWJlcjtcbiAgICB0aW1lTnVtYmVyID0gcGFyc2VJbnQoKCcnICsgdGltZU51bWJlcikuc2xpY2UoLTIpKTsgLy8ga2VlcHMgb25seSB0aGUgbGFzdCAyIGRpZ2l0c1xuICAgIHJldHVybiB0aW1lTnVtYmVyO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVCdWxtYURhdGVQaWNrZXJPcHRpb25zKG9wdGlvbnM6IFJlYWRvbmx5PE53YkRhdGVQaWNrZXJPcHRpb25zPikge1xuICAgIGNvbnN0IGJ1bG1hQ2FsZW5kYXJEYXRlUGlja2VyID0gdGhpcy5kYXRlUGlja2VyWydidWxtYUNhbGVuZGFyJ10uZGF0ZVBpY2tlcjtcbiAgICBidWxtYUNhbGVuZGFyRGF0ZVBpY2tlci5taW4gPSBvcHRpb25zLm1pbkRhdGU7XG4gICAgYnVsbWFDYWxlbmRhckRhdGVQaWNrZXIubWF4ID0gb3B0aW9ucy5tYXhEYXRlO1xuICAgIGJ1bG1hQ2FsZW5kYXJEYXRlUGlja2VyLnJlZnJlc2goKTtcbiAgfVxuXG4gIHByaXZhdGUgaXNCdWxtYURhdGVQaWNrZXJFeGlzdHMoKSB7XG4gICAgcmV0dXJuIHRoaXMuZGF0ZVBpY2tlciAmJiB0aGlzLmRhdGVQaWNrZXJbJ2J1bG1hQ2FsZW5kYXInXSAmJiB0aGlzLmRhdGVQaWNrZXJbJ2J1bG1hQ2FsZW5kYXInXS5kYXRlUGlja2VyO1xuICB9XG5cbiAgLy8gQ29udHJvbFZhbHVlQWNjZXNzb3IgbWV0aG9kc1xuXG4gIG9uQ2hhbmdlOiAodmFsdWU6IERhdGUpID0+IHZvaWQgPSAoKSA9PiB7fTtcblxuICBvblRvdWNoOiAoKSA9PiB2b2lkID0gKCkgPT4ge307XG5cbiAgd3JpdGVWYWx1ZShkYXRlOiBEYXRlKTogdm9pZCB7XG4gICAgaWYgKCFkYXRlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHRoaXMuZGF0ZVNlbGVjdGVkID0gZGF0ZTtcbiAgfVxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpe1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KXtcbiAgICAgIHRoaXMub25Ub3VjaCA9IGZuO1xuICB9XG4gIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICB9XG59XG4iLCI8ZGl2XG4gIGNsYXNzPVwid2FjLWNhbGVuZGFyXCJcbiAgW25nQ2xhc3NdPVwie1xuICAgICd3YWMtY2FsZW5kYXItLWlucHV0JzogdHlwZSA9PT0gJ2lucHV0JyxcbiAgICAnd2FjLWNhbGVuZGFyLS1vbmx5RGF0ZSc6IHR5cGVEYXRlID09PSAnZGF0ZScsXG4gICAgJ3dhYy1jYWxlbmRhci0tZWRpdCc6IHR5cGUgPT09ICdlZGl0JyxcbiAgICAnd2FjLWNhbGVuZGFyLS1zZWxlY3QnOiB0eXBlID09PSAnc2VsZWN0JyxcbiAgICAnd2FjLWNhbGVuZGFyLS1uby1tYXJnaW4nOiBub01hcmdpbixcbiAgICAnd2FjLWNhbGVuZGFyLS1vcGVuJzogb3BlblxuICB9XCJcbiAgW3pJbmRleFRvZ2dsZV09XCJvcGVuXCJcbj5cbiAgPHAgW2NsYXNzXT1cIid3YWMtY2FsZW5kYXJfX2xhYmVsJyArIChib2xkTGFiZWwgPyAnIGJvbGQnIDogJycpXCIgKm5nSWY9XCJsYWJlbCAmJiAodHlwZSA9PT0gJ2lucHV0JyB8fCB0eXBlID09PSAnc2VsZWN0JylcIiAoY2xpY2spPVwib3BlbkNhbGVuZGFyKClcIj57eyBsYWJlbCB9fTwvcD5cbiAgPHAgY2xhc3M9XCJ3YWMtY2FsZW5kYXJfX3N0YXJ0TGFiZWxcIiAqbmdJZj1cInR5cGUgPT09ICdlZGl0J1wiPnt7IHN0YXJ0TGFiZWwgfX08L3A+XG4gIDx3YWMtb3B0aW9uYWwtZGlzYWJsZS1jb250YWluZXIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCI+XG4gICAgPGRpdiBjbGFzcz1cIndhYy1jYWxlbmRhcl9fYXV0b0hpZGVcIiB3ekF1dG9IaWRlIChjbGlja091dHNpZGUpPVwib3BlbkNhbGVuZGFyKCdjbG9zZScpXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwid2FjLWNhbGVuZGFyX193cmFwcGVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ3YWMtY2FsZW5kYXJfX3dyYXBwZXJfX2lucHV0XCIgKm5nSWY9XCJ0eXBlID09PSAnaW5wdXQnXCIgKGNsaWNrKT1cIm9wZW5DYWxlbmRhcigpXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIndhYy1jYWxlbmRhcl9fd3JhcHBlcl9faW5wdXRfX2ljb25cIj5cbiAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFyIGZhLWNhbGVuZGFyLWFsdFwiPjwvaT5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwid2FjLWNhbGVuZGFyX193cmFwcGVyX19pbnB1dF9fZGF0ZVwiPlxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJkYXRlU2VsZWN0ZWRcIiBAb3BhY2l0eUFuaW1hdGlvbj57eyBkYXRlU2VsZWN0ZWQgfCBkYXRlOiAnZGQvTU0veXl5eSd9fTwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicGxhY2Vob2xkZXItZGF0ZVwiICpuZ0lmPVwiIWRhdGVTZWxlY3RlZFwiIEBvcGFjaXR5QW5pbWF0aW9uPnt7ICd3YWMuRGF0ZS5QbGFjZUhvbGRlci5kZC9tbS95eXl5JyB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwid2FjLWNhbGVuZGFyX193cmFwcGVyX19pbnB1dF9fdGltZVwiPlxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJkYXRlU2VsZWN0ZWRcIiBAb3BhY2l0eUFuaW1hdGlvbj57eyBkYXRlU2VsZWN0ZWQgfCBkYXRlOiAnSEg6bW0nIH19PC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJwbGFjZWhvbGRlci1kYXRlXCIgKm5nSWY9XCIhZGF0ZVNlbGVjdGVkXCIgQG9wYWNpdHlBbmltYXRpb24+e3sgJ3dhYy5EYXRlLlBsYWNlSG9sZGVyLkhIOm1tJyB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ3YWMtY2FsZW5kYXJfX3dyYXBwZXJfX2VkaXRJblBsYWNlXCIgKm5nSWY9XCJ0eXBlID09PSAnZWRpdCdcIiAoY2xpY2spPVwib3BlbkNhbGVuZGFyKClcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwid2FjLWNhbGVuZGFyX193cmFwcGVyX19lZGl0SW5QbGFjZV9faWNvblwiPlxuICAgICAgICAgICAgPGkgY2xhc3M9XCJmYWwgZmEtY2FsZW5kYXItYWx0XCI+PC9pPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3YWMtY2FsZW5kYXJfX3dyYXBwZXJfX2VkaXRJblBsYWNlX19kYXRlXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwid2FjLWNhbGVuZGFyX193cmFwcGVyX19pbnB1dF9fdGltZVwiPlxuICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImRhdGVTZWxlY3RlZFwiIEBvcGFjaXR5QW5pbWF0aW9uPnt7IGRhdGVTZWxlY3RlZCB8IGRhdGU6ICdkZC9NTS95eXl5IEhIOm1tJyB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJwbGFjZWhvbGRlci1kYXRlXCIgKm5nSWY9XCIhZGF0ZVNlbGVjdGVkXCIgQG9wYWNpdHlBbmltYXRpb24+e3sgJ3dhYy5EYXRlLlBsYWNlSG9sZGVyLmRkL01NL3l5eXlfSEg6bW0nIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwid2FjLWNhbGVuZGFyX193cmFwcGVyX19zZWxlY3RcIiAqbmdJZj1cInR5cGUgPT09ICdzZWxlY3QnXCIgKGNsaWNrKT1cIm9wZW5DYWxlbmRhcigpXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIndhYy1jYWxlbmRhcl9fd3JhcHBlcl9fc2VsZWN0X19pY29uXCI+XG4gICAgICAgICAgICA8aSBjbGFzcz1cImZhbCBmYS1jYWxlbmRhci1hbHRcIj48L2k+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cIndhYy1jYWxlbmRhcl9fd3JhcHBlcl9fc2VsZWN0X19kYXRlXCI+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cImRhdGVTZWxlY3RlZFwiIEBvcGFjaXR5QW5pbWF0aW9uPnt7IGRhdGVTZWxlY3RlZCB8IGRhdGU6ICdkZC9NTS95eXl5IEhIOm1tJyB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicGxhY2Vob2xkZXItZGF0ZVwiICpuZ0lmPVwiIWRhdGVTZWxlY3RlZFwiIEBvcGFjaXR5QW5pbWF0aW9uPnt7ICd3YWMuRGF0ZS5QbGFjZUhvbGRlci5kZC9NTS95eXl5X0hIOm1tJyB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXZcbiAgICAgICAgY2xhc3M9XCJ3YWMtY2FsZW5kYXJfX2Fic29sdXRlXCJcbiAgICAgICAgW25nQ2xhc3NdPVwie1xuICAgICAgICAgIHRvcDogcG9zaXRpb24gPT09ICd0b3AnLFxuICAgICAgICAgIGJvdHRvbTogcG9zaXRpb24gPT09ICdib3R0b20nLFxuICAgICAgICAgIGxlZnQ6IHBvc2l0aW9uID09PSAnbGVmdCcsXG4gICAgICAgICAgcmlnaHQ6IHBvc2l0aW9uID09PSAncmlnaHQnLFxuICAgICAgICAgICdyaWdodC10b3AnOiBwb3NpdGlvbiA9PT0gJ3JpZ2h0LXRvcCcsXG4gICAgICAgICAgJ3JpZ2h0LWJvdHRvbSc6IHBvc2l0aW9uID09PSAncmlnaHQtYm90dG9tJyxcbiAgICAgICAgICAnbGVmdC10b3AnOiBwb3NpdGlvbiA9PT0gJ2xlZnQtdG9wJyxcbiAgICAgICAgICAnbGVmdC1ib3R0b20nOiBwb3NpdGlvbiA9PT0gJ2xlZnQtYm90dG9tJyxcbiAgICAgICAgICAnd2l0aC10aW1lJzogdHlwZURhdGUgPT09ICdkYXRldGltZS1sb2NhbCcgfHwgdHlwZURhdGUgPT09ICdkYXRldGltZSdcbiAgICAgICAgfVwiXG4gICAgICA+XG4gICAgICAgIDxud2ItZGF0ZS1waWNrZXIgI2RhdGVQaWNrZXIgKGNoYW5nZSk9XCJvbkNoYW5nZURhdGUoJGV2ZW50KVwiIFtvcHRpb25zXT1cIm9wdGlvbnNcIj5cbiAgICAgICAgICA8aW5wdXQgW253YkRhdGVwaWNrZXJTdGFydF09XCJkYXRlUGlja2VyXCIgdHlwZT1cInRleHRcIiBbbndiRGF0ZVR5cGVdPVwiJ2RhdGUnXCIgW3ZhbHVlXT1cImRhdGVTZWxlY3RlZD8udG9JU09TdHJpbmcoKVwiIC8+XG4gICAgICAgIDwvbndiLWRhdGUtcGlja2VyPlxuICAgICAgICA8ZGl2IGNsYXNzPVwid2FjLWNhbGVuZGFyX19hYnNvbHV0ZV9fdGltZVwiICpuZ0lmPVwidHlwZURhdGUgPT09ICdkYXRldGltZS1sb2NhbCcgfHwgdHlwZURhdGUgPT09ICdkYXRldGltZSdcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwid2FjLWNhbGVuZGFyX19hYnNvbHV0ZV9fdGltZV9fd3JhcHBlclwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndhYy1jYWxlbmRhcl9fYWJzb2x1dGVfX3RpbWVfX3dyYXBwZXJfX2hvdXJzXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3YWMtY2FsZW5kYXJfX2Fic29sdXRlX190aW1lX193cmFwcGVyX19ob3Vyc19fbGVmdFwiPlxuICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJ3YWMtY2FsZW5kYXJfX2Fic29sdXRlX190aW1lX193cmFwcGVyX19ob3Vyc19fYnRuXCIgKGNsaWNrKT1cImluY3JlbWVudEhvdXJzKCRldmVudClcIj5cbiAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLXBsdXNcIj48L2k+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cIndhYy1jYWxlbmRhcl9fYWJzb2x1dGVfX3RpbWVfX3dyYXBwZXJfX2hvdXJzX19idG5cIiAoY2xpY2spPVwiZGVjcmVtZW50SG91cnMoJGV2ZW50KVwiPlxuICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtbWludXNcIj48L2k+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid2FjLWNhbGVuZGFyX19hYnNvbHV0ZV9fdGltZV9fd3JhcHBlcl9faG91cnNfX3JpZ2h0XCI+XG4gICAgICAgICAgICAgICAgPGlucHV0ICNob3VycyB0eXBlPVwidGV4dFwiIFsobmdNb2RlbCldPVwiY2FsZW5kYXJIb3Vyc1wiIFt3YWNPbmx5TnVtYmVyXT1cInRydWVcIi8+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwid2FjLWNhbGVuZGFyX19hYnNvbHV0ZV9fdGltZV9fd3JhcHBlcl9fbWludXRlc1wiPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid2FjLWNhbGVuZGFyX19hYnNvbHV0ZV9fdGltZV9fd3JhcHBlcl9fbWludXRlc19fbGVmdFwiPlxuICAgICAgICAgICAgICAgIDxpbnB1dCAjbWludXRlcyB0eXBlPVwidGV4dFwiIFsobmdNb2RlbCldPVwiY2FsZW5kYXJNaW51dGVzXCIgW3dhY09ubHlOdW1iZXJdPVwidHJ1ZVwiLz5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3YWMtY2FsZW5kYXJfX2Fic29sdXRlX190aW1lX193cmFwcGVyX19taW51dGVzX19yaWdodFwiPlxuICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJ3YWMtY2FsZW5kYXJfX2Fic29sdXRlX190aW1lX193cmFwcGVyX19taW51dGVzX19idG5cIiAoY2xpY2spPVwiaW5jcmVtZW50TWludXRlcygkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhcyBmYS1wbHVzXCI+PC9pPlxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJ3YWMtY2FsZW5kYXJfX2Fic29sdXRlX190aW1lX193cmFwcGVyX19taW51dGVzX19idG5cIiAoY2xpY2spPVwiZGVjcmVtZW50c01pbnV0ZXMoJGV2ZW50KVwiPlxuICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtbWludXNcIj48L2k+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvd2FjLW9wdGlvbmFsLWRpc2FibGUtY29udGFpbmVyPlxuICA8cCBjbGFzcz1cIndhYy1jYWxlbmRhcl9fZW5kTGFiZWxcIiAqbmdJZj1cInR5cGUgPT09ICdlZGl0J1wiPnt7IGVuZExhYmVsIH19PC9wPlxuPC9kaXY+XG4iXX0=
|
|
237
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1jb21wb25lbnRzL3NyYy9saWIvY29tcG9uZW50cy9jYWxlbmRhci9jYWxlbmRhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2NhbGVuZGFyL2NhbGVuZGFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUE0Qix1QkFBdUIsRUFBRSxTQUFTLEVBQWMsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEssT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXpFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDOzs7Ozs7Ozs7O0FBaUIzRSxNQUFNLE9BQU8saUJBQWlCO0lBZTVCLElBQ0ksT0FBTyxDQUFDLE9BQXVDO1FBQ2pELElBQUksQ0FBQyxRQUFRLEdBQUcsT0FBTyxDQUFDO1FBQ3hCLElBQUksSUFBSSxDQUFDLHVCQUF1QixFQUFFLEVBQUU7WUFDbEMsSUFBSSxDQUFDLDRCQUE0QixDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQzVDO0lBQ0gsQ0FBQztJQUVELElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBV0QsSUFDSSxZQUFZLENBQUMsWUFBa0I7UUFDakMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxJQUFJLENBQUMs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QUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksY0FDekIsQ0FBQyxnQkFBZ0IsQ0FBQzsrRkFJUixPQUFPO3NCQUE1QixTQUFTO3VCQUFDLFNBQVM7Z0JBQ0EsS0FBSztzQkFBeEIsU0FBUzt1QkFBQyxPQUFPO2dCQUNPLFVBQVU7c0JBQWxDLFNBQVM7dUJBQUMsWUFBWTtnQkFHdkIsS0FBSztzQkFESixLQUFLO2dCQUlOLFNBQVM7c0JBRFIsS0FBSztnQkFJTixJQUFJO3NCQURILEtBQUs7Z0JBSUYsT0FBTztzQkFEVixLQUFLO2dCQW1CTixRQUFRO3NCQURQLEtBQUs7Z0JBSUYsWUFBWTtzQkFEZixLQUFLO2dCQVlJLGtCQUFrQjtzQkFBM0IsTUFBTTtnQkFHUCxRQUFRO3NCQURQLEtBQUs7Z0JBR04sUUFBUTtzQkFEUCxLQUFLO2dCQUdHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRUksVUFBVTtzQkFBbkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERhdGVQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgRXZlbnRFbWl0dGVyLCBPdXRwdXQsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcywgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIFZpZXdDaGlsZCwgRWxlbWVudFJlZiwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBOd2JEYXRlUGlja2VyQ29tcG9uZW50LCBOd2JEYXRlUGlja2VyRXZlbnQsIE53YkRhdGVQaWNrZXJPcHRpb25zIH0gZnJvbSAnQHdpemlzaG9wL25nLXdpemktYnVsbWEnO1xyXG5pbXBvcnQgeyBvcGFjaXR5QW5pbWF0aW9uIH0gZnJvbSAnLi4vLi4vYW5pbWF0aW9ucy9zaG93L29wYWNpdHkuYW5pbWF0aW9uJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnd2FjLWNhbGVuZGFyJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY2FsZW5kYXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IENhbGVuZGFyQ29tcG9uZW50LFxyXG4gICAgICBtdWx0aTogdHJ1ZVxyXG4gICAgfSxcclxuICAgIERhdGVQaXBlXHJcbiAgXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxyXG4gIGFuaW1hdGlvbnM6IFtvcGFjaXR5QW5pbWF0aW9uXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQ2FsZW5kYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcclxuICAvLyEgQXQgdGhlIG1vbWVudCwgdGhlIGNvbXBvbmVudCBoYW5kbGUgb25seSBvbmUgZGF0ZSAobm90IGEgcmFuZ2UpXHJcbiAgQFZpZXdDaGlsZCgnbWludXRlcycpIG1pbnV0ZXM6IEVsZW1lbnRSZWY7XHJcbiAgQFZpZXdDaGlsZCgnaG91cnMnKSBob3VyczogRWxlbWVudFJlZjtcclxuICBAVmlld0NoaWxkKCdkYXRlUGlja2VyJykgZGF0ZVBpY2tlcjogTndiRGF0ZVBpY2tlckNvbXBvbmVudDtcclxuXHJcbiAgQElucHV0KClcclxuICBsYWJlbDogc3RyaW5nIHwgbnVsbDsgLy8gdG9kbyB1c2UgbmctY29udGVudCBpbnN0ZWFkXHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgYm9sZExhYmVsOiBib29sZWFuID0gZmFsc2U7IC8vIHRvZG8gcmVtb3ZlIHdoZW4gbGFiZWwgd2lsbCBiZSBhIG5nLWNvbnRlbnRcclxuXHJcbiAgQElucHV0KClcclxuICB0eXBlOiAnaW5wdXQnIHwgJ2VkaXQnIHwgJ3NlbGVjdCcgPSAnaW5wdXQnO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHNldCBvcHRpb25zKG9wdGlvbnM6IFJlYWRvbmx5PE53YkRhdGVQaWNrZXJPcHRpb25zPikge1xyXG4gICAgdGhpcy5fb3B0aW9ucyA9IG9wdGlvbnM7XHJcbiAgICBpZiAodGhpcy5pc0J1bG1hRGF0ZVBpY2tlckV4aXN0cygpKSB7XHJcbiAgICAgIHRoaXMudXBkYXRlQnVsbWFEYXRlUGlja2VyT3B0aW9ucyhvcHRpb25zKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldCBvcHRpb25zKCkgOiBSZWFkb25seTxOd2JEYXRlUGlja2VyT3B0aW9ucz4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX29wdGlvbnM7XHJcbiAgfVxyXG5cclxuICBfb3B0aW9uczogUmVhZG9ubHk8TndiRGF0ZVBpY2tlck9wdGlvbnM+ICA9IHtcclxuICAgIGRpc3BsYXlNb2RlOiAnaW5saW5lJyxcclxuICAgIHNob3dIZWFkZXI6IGZhbHNlLFxyXG4gICAgc2hvd0Zvb3RlcjogdHJ1ZSxcclxuICB9O1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHBvc2l0aW9uID0gJ2JvdHRvbSc7XHJcblxyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IGRhdGVTZWxlY3RlZChkYXRlU2VsZWN0ZWQ6IERhdGUpIHtcclxuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMuX2RhdGVTZWxlY3RlZCA9IG5ldyBEYXRlKGRhdGVTZWxlY3RlZCk7IC8vIHRyaWdnZXIgY2hhbmdlIGRldGVjdGlvbiBmb3IgcHVyZSBwaXBlXHJcbiAgfVxyXG4gIGdldCBkYXRlU2VsZWN0ZWQoKSA6IERhdGUge1xyXG4gICAgcmV0dXJuIHRoaXMuX2RhdGVTZWxlY3RlZDtcclxuICB9XHJcbiAgX2RhdGVTZWxlY3RlZDogRGF0ZTtcclxuXHJcbiAgQE91dHB1dCgpIGRhdGVTZWxlY3RlZENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQElucHV0KClcclxuICB0eXBlRGF0ZTogJ2RhdGV0aW1lJyB8ICdkYXRldGltZS1sb2NhbCcgfCAnZGF0ZScgPSAnZGF0ZXRpbWUtbG9jYWwnO1xyXG4gIEBJbnB1dCgpXHJcbiAgbm9NYXJnaW4gPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcclxuXHJcbiAgQE91dHB1dCgpIGNoYW5nZURhdGEgPSBuZXcgRXZlbnRFbWl0dGVyPHsgc3RhcnREYXRlOiBEYXRlOyBlbmREYXRlOiBEYXRlOyB9PigpO1xyXG4gIG9wZW4gPSBmYWxzZTtcclxuICBzdGFydExhYmVsID0gJyc7XHJcbiAgZW5kTGFiZWwgPSAnJztcclxuXHJcbiAgc2V0IGNhbGVuZGFyTWludXRlcyhjYWxlbmRhck1pbnV0ZXM6IHN0cmluZykge1xyXG4gICAgaWYgKCF0aGlzLmRhdGVTZWxlY3RlZCkge1xyXG4gICAgICB0aGlzLmRhdGVTZWxlY3RlZCA9IG5ldyBEYXRlKCk7XHJcbiAgICB9XHJcbiAgICBjb25zdCBtaW51dGVzID0gdGhpcy5mb3JtYXRUaW1lKGNhbGVuZGFyTWludXRlcywgMCwgNTkpO1xyXG4gICAgdGhpcy5kYXRlU2VsZWN0ZWQuc2V0TWludXRlcyhtaW51dGVzKTtcclxuXHJcbiAgICB0aGlzLmRhdGVTZWxlY3RlZCA9IHRoaXMuZGF0ZVNlbGVjdGVkOyAvLyB0cmlnZ2VyIGNoYW5nZSBkZXRlY3Rpb25cclxuICAgIHRoaXMubWludXRlcy5uYXRpdmVFbGVtZW50LnZhbHVlID0gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0odGhpcy5kYXRlU2VsZWN0ZWQsICdtbScpOyAvLyBmb3JjZSB0byB1cGRhdGUgdGhlIGlucHV0IHZhbHVlXHJcbiAgICB0aGlzLnRyaWdnZXJEYXRlU2VsZWN0ZWRDaGFuZ2UoKTtcclxuICB9XHJcblxyXG4gIGdldCBjYWxlbmRhck1pbnV0ZXMoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybSh0aGlzLmRhdGVTZWxlY3RlZCA/PyBuZXcgRGF0ZSgpLCAnbW0nKTtcclxuICB9XHJcblxyXG4gIHNldCBjYWxlbmRhckhvdXJzKGNhbGVuZGFySG91cnM6IHN0cmluZykge1xyXG4gICAgaWYgKCF0aGlzLmRhdGVTZWxlY3RlZCkge1xyXG4gICAgICB0aGlzLmRhdGVTZWxlY3RlZCA9IG5ldyBEYXRlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3QgaG91cnMgPSB0aGlzLmZvcm1hdFRpbWUoY2FsZW5kYXJIb3VycywgMCwgMjMpO1xyXG5cclxuICAgIHRoaXMuZGF0ZVNlbGVjdGVkLnNldEhvdXJzKGhvdXJzKTtcclxuICAgIHRoaXMuZGF0ZVNlbGVjdGVkID0gdGhpcy5kYXRlU2VsZWN0ZWQ7IC8vIHRyaWdnZXIgY2hhbmdlIGRldGVjdGlvblxyXG4gICAgdGhpcy5ob3Vycy5uYXRpdmVFbGVtZW50LnZhbHVlID0gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0odGhpcy5kYXRlU2VsZWN0ZWQsICdISCcpOyAvLyBmb3JjZSB0byB1cGRhdGUgdGhlIGlucHV0IHZhbHVlXHJcbiAgICB0aGlzLnRyaWdnZXJEYXRlU2VsZWN0ZWRDaGFuZ2UoKTtcclxuICB9XHJcblxyXG4gIGdldCBjYWxlbmRhckhvdXJzKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5kYXRlUGlwZS50cmFuc2Zvcm0odGhpcy5kYXRlU2VsZWN0ZWQgPz8gbmV3IERhdGUoKSwgJ0hIJyk7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRhdGVQaXBlOiBEYXRlUGlwZSkge31cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgaWYgKGNoYW5nZXMubGFiZWwgfHwgY2hhbmdlcy50eXBlKSB7XHJcbiAgICAgIHRoaXMuc2V0Q2FsZW5kYXJMYWJlbCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb25DaGFuZ2VEYXRlKHNlbGVjdGVkRGF0ZXM6IE53YkRhdGVQaWNrZXJFdmVudCkge1xyXG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG5cclxuICAgIGlmICghdGhpcy5kYXRlU2VsZWN0ZWQpIHtcclxuICAgICAgdGhpcy5kYXRlU2VsZWN0ZWQgPSBuZXcgRGF0ZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHNlbGVjdGVkRGF0ZXMuc3RhcnREYXRlLnNldEhvdXJzKHRoaXMuZGF0ZVNlbGVjdGVkLmdldEhvdXJzKCkpO1xyXG4gICAgc2VsZWN0ZWREYXRlcy5zdGFydERhdGUuc2V0TWludXRlcyh0aGlzLmRhdGVTZWxlY3RlZC5nZXRNaW51dGVzKCkpO1xyXG5cclxuICAgIHRoaXMuZGF0ZVNlbGVjdGVkID0gc2VsZWN0ZWREYXRlcy5zdGFydERhdGU7XHJcbiAgICB0aGlzLnRyaWdnZXJEYXRlU2VsZWN0ZWRDaGFuZ2UoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdHJpZ2dlckRhdGVTZWxlY3RlZENoYW5nZSgpIHtcclxuICAgIHRoaXMub25DaGFuZ2UodGhpcy5kYXRlU2VsZWN0ZWQpO1xyXG4gICAgdGhpcy5kYXRlU2VsZWN0ZWRDaGFuZ2UuZW1pdCh0aGlzLmRhdGVTZWxlY3RlZCk7XHJcbiAgICB0aGlzLnRyaWdnZXJDaGFuZ2Uoe1xyXG4gICAgICBzdGFydERhdGU6IHRoaXMuZGF0ZVNlbGVjdGVkLFxyXG4gICAgICBlbmREYXRlOiB0aGlzLmRhdGVTZWxlY3RlZFxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICB0cmlnZ2VyQ2hhbmdlKGV2ZW50OiB7IHN0YXJ0RGF0ZTogRGF0ZTsgZW5kRGF0ZTogRGF0ZTsgfSkge1xyXG4gICAgdGhpcy5jaGFuZ2VEYXRhLmVtaXQoZXZlbnQpO1xyXG4gIH1cclxuXHJcbiAgb3BlbkNhbGVuZGFyKHZhbHVlID0gbnVsbCkge1xyXG5cclxuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodmFsdWUgPT09ICdjbG9zZScpIHtcclxuICAgICAgaWYgKHRoaXMub3Blbikge1xyXG4gICAgICAgIHRoaXMub3BlbiA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMub25Ub3VjaCgpO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLm9wZW4gPSAhdGhpcy5vcGVuO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzZXRDYWxlbmRhckxhYmVsKCkge1xyXG4gICAgaWYgKHRoaXMudHlwZSA9PT0gJ2VkaXQnICYmIHRoaXMubGFiZWwpIHtcclxuICAgICAgY29uc3Qgc3BsaXRMYWJlbCA9IHRoaXMubGFiZWwuc3BsaXQoJ3t4fScpO1xyXG4gICAgICBpZiAoc3BsaXRMYWJlbC5sZW5ndGggPiAxKSB7XHJcbiAgICAgICAgdGhpcy5zdGFydExhYmVsID0gc3BsaXRMYWJlbFswXTtcclxuICAgICAgICB0aGlzLmVuZExhYmVsID0gc3BsaXRMYWJlbFsxXTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLnN0YXJ0TGFiZWwgPSB0aGlzLmxhYmVsO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpbmNyZW1lbnRNaW51dGVzKCRldmVudDogRXZlbnQpIHtcclxuICAgIHRoaXMuY2FsZW5kYXJNaW51dGVzID0gcGFyc2VJbnQodGhpcy5jYWxlbmRhck1pbnV0ZXMsIDEwKSArIDEgKyAnJztcclxuICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gIH1cclxuXHJcbiAgZGVjcmVtZW50c01pbnV0ZXMoJGV2ZW50OiBFdmVudCkge1xyXG4gICAgdGhpcy5jYWxlbmRhck1pbnV0ZXMgPSBwYXJzZUludCh0aGlzLmNhbGVuZGFyTWludXRlcywgMTApIC0gMSArICcnO1xyXG4gICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgfVxyXG5cclxuICBpbmNyZW1lbnRIb3VycygkZXZlbnQ6IEV2ZW50KSB7XHJcbiAgICB0aGlzLmNhbGVuZGFySG91cnMgPSBwYXJzZUludCh0aGlzLmNhbGVuZGFySG91cnMsIDEwKSArIDEgKyAnJztcclxuICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gIH1cclxuXHJcbiAgZGVjcmVtZW50SG91cnMoJGV2ZW50OiBFdmVudCkge1xyXG4gICAgdGhpcy5jYWxlbmRhckhvdXJzID0gcGFyc2VJbnQodGhpcy5jYWxlbmRhckhvdXJzLCAxMCkgLSAxICsgJyc7XHJcbiAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICB9XHJcblxyXG4gIC8qXHJcbiAgICBFbnN1cmUgdGhhdCB0aGUgaW5wdXQgdmFsdWUgaXMgYSBudW1iZXIgYW5kIHRoYXQgaXQgaXMgYmV0d2VlbiBtaW4gYW5kIG1heFxyXG4gICovXHJcbiAgcHJpdmF0ZSBmb3JtYXRUaW1lKHRpbWU6IHN0cmluZyB8IG51bWJlciwgbWluID0gMCwgbWF4ID0gNTkpIHtcclxuICAgIGxldCB0aW1lTnVtYmVyID0gdHlwZW9mIHRpbWUgPT09ICdzdHJpbmcnID8gcGFyc2VJbnQodGltZSwgMTApIDogdGltZTtcclxuICAgIHRpbWVOdW1iZXIgPSB0aW1lTnVtYmVyID4gbWF4ID8gbWluIDogdGltZU51bWJlcjtcclxuICAgIHRpbWVOdW1iZXIgPSB0aW1lTnVtYmVyIDwgbWluID8gbWF4IDogdGltZU51bWJlcjtcclxuICAgIHRpbWVOdW1iZXIgPSBwYXJzZUludCgoJycgKyB0aW1lTnVtYmVyKS5zbGljZSgtMikpOyAvLyBrZWVwcyBvbmx5IHRoZSBsYXN0IDIgZGlnaXRzXHJcbiAgICByZXR1cm4gdGltZU51bWJlcjtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlQnVsbWFEYXRlUGlja2VyT3B0aW9ucyhvcHRpb25zOiBSZWFkb25seTxOd2JEYXRlUGlja2VyT3B0aW9ucz4pIHtcclxuICAgIGNvbnN0IGJ1bG1hQ2FsZW5kYXJEYXRlUGlja2VyID0gdGhpcy5kYXRlUGlja2VyWydidWxtYUNhbGVuZGFyJ10uZGF0ZVBpY2tlcjtcclxuICAgIGJ1bG1hQ2FsZW5kYXJEYXRlUGlja2VyLm1pbiA9IG9wdGlvbnMubWluRGF0ZTtcclxuICAgIGJ1bG1hQ2FsZW5kYXJEYXRlUGlja2VyLm1heCA9IG9wdGlvbnMubWF4RGF0ZTtcclxuICAgIGJ1bG1hQ2FsZW5kYXJEYXRlUGlja2VyLnJlZnJlc2goKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgaXNCdWxtYURhdGVQaWNrZXJFeGlzdHMoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5kYXRlUGlja2VyICYmIHRoaXMuZGF0ZVBpY2tlclsnYnVsbWFDYWxlbmRhciddICYmIHRoaXMuZGF0ZVBpY2tlclsnYnVsbWFDYWxlbmRhciddLmRhdGVQaWNrZXI7XHJcbiAgfVxyXG5cclxuICAvLyBDb250cm9sVmFsdWVBY2Nlc3NvciBtZXRob2RzXHJcblxyXG4gIG9uQ2hhbmdlOiAodmFsdWU6IERhdGUpID0+IHZvaWQgPSAoKSA9PiB7fTtcclxuXHJcbiAgb25Ub3VjaDogKCkgPT4gdm9pZCA9ICgpID0+IHt9O1xyXG5cclxuICB3cml0ZVZhbHVlKGRhdGU6IERhdGUpOiB2b2lkIHtcclxuICAgIGlmICghZGF0ZSkge1xyXG4gICAgICByZXR1cm47XHJcbiAgICB9XHJcbiAgICB0aGlzLmRhdGVTZWxlY3RlZCA9IGRhdGU7XHJcbiAgfVxyXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSl7XHJcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgfVxyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpe1xyXG4gICAgICB0aGlzLm9uVG91Y2ggPSBmbjtcclxuICB9XHJcbiAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcclxuICB9XHJcbn1cclxuIiwiPGRpdlxyXG4gIGNsYXNzPVwid2FjLWNhbGVuZGFyXCJcclxuICBbbmdDbGFzc109XCJ7XHJcbiAgICAnd2FjLWNhbGVuZGFyLS1pbnB1dCc6IHR5cGUgPT09ICdpbnB1dCcsXHJcbiAgICAnd2FjLWNhbGVuZGFyLS1vbmx5RGF0ZSc6IHR5cGVEYXRlID09PSAnZGF0ZScsXHJcbiAgICAnd2FjLWNhbGVuZGFyLS1lZGl0JzogdHlwZSA9PT0gJ2VkaXQnLFxyXG4gICAgJ3dhYy1jYWxlbmRhci0tc2VsZWN0JzogdHlwZSA9PT0gJ3NlbGVjdCcsXHJcbiAgICAnd2FjLWNhbGVuZGFyLS1uby1tYXJnaW4nOiBub01hcmdpbixcclxuICAgICd3YWMtY2FsZW5kYXItLW9wZW4nOiBvcGVuXHJcbiAgfVwiXHJcbiAgW3pJbmRleFRvZ2dsZV09XCJvcGVuXCJcclxuPlxyXG4gIDxwIFtjbGFzc109XCInd2FjLWNhbGVuZGFyX19sYWJlbCcgKyAoYm9sZExhYmVsID8gJyBib2xkJyA6ICcnKVwiICpuZ0lmPVwibGFiZWwgJiYgKHR5cGUgPT09ICdpbnB1dCcgfHwgdHlwZSA9PT0gJ3NlbGVjdCcpXCIgKGNsaWNrKT1cIm9wZW5DYWxlbmRhcigpXCI+e3sgbGFiZWwgfX08L3A+XHJcbiAgPHAgY2xhc3M9XCJ3YWMtY2FsZW5kYXJfX3N0YXJ0TGFiZWxcIiAqbmdJZj1cInR5cGUgPT09ICdlZGl0J1wiPnt7IHN0YXJ0TGFiZWwgfX08L3A+XHJcbiAgPHdhYy1vcHRpb25hbC1kaXNhYmxlLWNvbnRhaW5lciBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJ3YWMtY2FsZW5kYXJfX2F1dG9IaWRlXCIgd3pBdXRvSGlkZSAoY2xpY2tPdXRzaWRlKT1cIm9wZW5DYWxlbmRhcignY2xvc2UnKVwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwid2FjLWNhbGVuZGFyX193cmFwcGVyXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIndhYy1jYWxlbmRhcl9fd3JhcHBlcl9faW5wdXRcIiAqbmdJZj1cInR5cGUgPT09ICdpbnB1dCdcIiAoY2xpY2spPVwib3BlbkNhbGVuZGFyKClcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3YWMtY2FsZW5kYXJfX3dyYXBwZXJfX2lucHV0X19pY29uXCI+XHJcbiAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFyIGZhLWNhbGVuZGFyLWFsdFwiPjwvaT5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cIndhYy1jYWxlbmRhcl9fd3JhcHBlcl9faW5wdXRfX2RhdGVcIj5cclxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJkYXRlU2VsZWN0ZWRcIiBAb3BhY2l0eUFuaW1hdGlvbj57eyBkYXRlU2VsZWN0ZWQgfCBkYXRlOiAnZGQvTU0veXl5eSd9fTwvc3Bhbj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJwbGFjZWhvbGRlci1kYXRlXCIgKm5nSWY9XCIhZGF0ZVNlbGVjdGVkXCIgQG9wYWNpdHlBbmltYXRpb24+e3sgJ3dhYy5EYXRlLlBsYWNlSG9sZGVyLmRkL21tL3l5eXknIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwid2FjLWNhbGVuZGFyX193cmFwcGVyX19pbnB1dF9fdGltZVwiPlxyXG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cImRhdGVTZWxlY3RlZFwiIEBvcGFjaXR5QW5pbWF0aW9uPnt7IGRhdGVTZWxlY3RlZCB8IGRhdGU6ICdISDptbScgfX08L3NwYW4+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwicGxhY2Vob2xkZXItZGF0ZVwiICpuZ0lmPVwiIWRhdGVTZWxlY3RlZFwiIEBvcGFjaXR5QW5pbWF0aW9uPnt7ICd3YWMuRGF0ZS5QbGFjZUhvbGRlci5ISDptbScgfCB0cmFuc2xhdGUgfX08L3NwYW4+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwid2FjLWNhbGVuZGFyX193cmFwcGVyX19lZGl0SW5QbGFjZVwiICpuZ0lmPVwidHlwZSA9PT0gJ2VkaXQnXCIgKGNsaWNrKT1cIm9wZW5DYWxlbmRhcigpXCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwid2FjLWNhbGVuZGFyX193cmFwcGVyX19lZGl0SW5QbGFjZV9faWNvblwiPlxyXG4gICAgICAgICAgICA8aSBjbGFzcz1cImZhbCBmYS1jYWxlbmRhci1hbHRcIj48L2k+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3YWMtY2FsZW5kYXJfX3dyYXBwZXJfX2VkaXRJblBsYWNlX19kYXRlXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3YWMtY2FsZW5kYXJfX3dyYXBwZXJfX2lucHV0X190aW1lXCI+XHJcbiAgICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJkYXRlU2VsZWN0ZWRcIiBAb3BhY2l0eUFuaW1hdGlvbj57eyBkYXRlU2VsZWN0ZWQgfCBkYXRlOiAnZGQvTU0veXl5eSBISDptbScgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJwbGFjZWhvbGRlci1kYXRlXCIgKm5nSWY9XCIhZGF0ZVNlbGVjdGVkXCIgQG9wYWNpdHlBbmltYXRpb24+e3sgJ3dhYy5EYXRlLlBsYWNlSG9sZGVyLmRkL01NL3l5eXlfSEg6bW0nIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ3YWMtY2FsZW5kYXJfX3dyYXBwZXJfX3NlbGVjdFwiICpuZ0lmPVwidHlwZSA9PT0gJ3NlbGVjdCdcIiAoY2xpY2spPVwib3BlbkNhbGVuZGFyKClcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3YWMtY2FsZW5kYXJfX3dyYXBwZXJfX3NlbGVjdF9faWNvblwiPlxyXG4gICAgICAgICAgICA8aSBjbGFzcz1cImZhbCBmYS1jYWxlbmRhci1hbHRcIj48L2k+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3YWMtY2FsZW5kYXJfX3dyYXBwZXJfX3NlbGVjdF9fZGF0ZVwiPlxyXG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cImRhdGVTZWxlY3RlZFwiIEBvcGFjaXR5QW5pbWF0aW9uPnt7IGRhdGVTZWxlY3RlZCB8IGRhdGU6ICdkZC9NTS95eXl5IEhIOm1tJyB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJwbGFjZWhvbGRlci1kYXRlXCIgKm5nSWY9XCIhZGF0ZVNlbGVjdGVkXCIgQG9wYWNpdHlBbmltYXRpb24+e3sgJ3dhYy5EYXRlLlBsYWNlSG9sZGVyLmRkL01NL3l5eXlfSEg6bW0nIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2XHJcbiAgICAgICAgY2xhc3M9XCJ3YWMtY2FsZW5kYXJfX2Fic29sdXRlXCJcclxuICAgICAgICBbbmdDbGFzc109XCJ7XHJcbiAgICAgICAgICB0b3A6IHBvc2l0aW9uID09PSAndG9wJyxcclxuICAgICAgICAgIGJvdHRvbTogcG9zaXRpb24gPT09ICdib3R0b20nLFxyXG4gICAgICAgICAgbGVmdDogcG9zaXRpb24gPT09ICdsZWZ0JyxcclxuICAgICAgICAgIHJpZ2h0OiBwb3NpdGlvbiA9PT0gJ3JpZ2h0JyxcclxuICAgICAgICAgICdyaWdodC10b3AnOiBwb3NpdGlvbiA9PT0gJ3JpZ2h0LXRvcCcsXHJcbiAgICAgICAgICAncmlnaHQtYm90dG9tJzogcG9zaXRpb24gPT09ICdyaWdodC1ib3R0b20nLFxyXG4gICAgICAgICAgJ2xlZnQtdG9wJzogcG9zaXRpb24gPT09ICdsZWZ0LXRvcCcsXHJcbiAgICAgICAgICAnbGVmdC1ib3R0b20nOiBwb3NpdGlvbiA9PT0gJ2xlZnQtYm90dG9tJyxcclxuICAgICAgICAgICd3aXRoLXRpbWUnOiB0eXBlRGF0ZSA9PT0gJ2RhdGV0aW1lLWxvY2FsJyB8fCB0eXBlRGF0ZSA9PT0gJ2RhdGV0aW1lJ1xyXG4gICAgICAgIH1cIlxyXG4gICAgICA+XHJcbiAgICAgICAgPG53Yi1kYXRlLXBpY2tlciAjZGF0ZVBpY2tlciAoY2hhbmdlKT1cIm9uQ2hhbmdlRGF0ZSgkZXZlbnQpXCIgW29wdGlvbnNdPVwib3B0aW9uc1wiPlxyXG4gICAgICAgICAgPGlucHV0IFtud2JEYXRlcGlja2VyU3RhcnRdPVwiZGF0ZVBpY2tlclwiIHR5cGU9XCJ0ZXh0XCIgW253YkRhdGVUeXBlXT1cIidkYXRlJ1wiIFt2YWx1ZV09XCJkYXRlU2VsZWN0ZWQ/LnRvSVNPU3RyaW5nKClcIiAvPlxyXG4gICAgICAgIDwvbndiLWRhdGUtcGlja2VyPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJ3YWMtY2FsZW5kYXJfX2Fic29sdXRlX190aW1lXCIgKm5nSWY9XCJ0eXBlRGF0ZSA9PT0gJ2RhdGV0aW1lLWxvY2FsJyB8fCB0eXBlRGF0ZSA9PT0gJ2RhdGV0aW1lJ1wiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cIndhYy1jYWxlbmRhcl9fYWJzb2x1dGVfX3RpbWVfX3dyYXBwZXJcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndhYy1jYWxlbmRhcl9fYWJzb2x1dGVfX3RpbWVfX3dyYXBwZXJfX2hvdXJzXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndhYy1jYWxlbmRhcl9fYWJzb2x1dGVfX3RpbWVfX3dyYXBwZXJfX2hvdXJzX19sZWZ0XCI+XHJcbiAgICAgICAgICAgICAgICA8YnV0dG9uIGNsYXNzPVwid2FjLWNhbGVuZGFyX19hYnNvbHV0ZV9fdGltZV9fd3JhcHBlcl9faG91cnNfX2J0blwiIChjbGljayk9XCJpbmNyZW1lbnRIb3VycygkZXZlbnQpXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLXBsdXNcIj48L2k+XHJcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJ3YWMtY2FsZW5kYXJfX2Fic29sdXRlX190aW1lX193cmFwcGVyX19ob3Vyc19fYnRuXCIgKGNsaWNrKT1cImRlY3JlbWVudEhvdXJzKCRldmVudClcIj5cclxuICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYXMgZmEtbWludXNcIj48L2k+XHJcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid2FjLWNhbGVuZGFyX19hYnNvbHV0ZV9fdGltZV9fd3JhcHBlcl9faG91cnNfX3JpZ2h0XCI+XHJcbiAgICAgICAgICAgICAgICA8aW5wdXQgI2hvdXJzIHR5cGU9XCJ0ZXh0XCIgWyhuZ01vZGVsKV09XCJjYWxlbmRhckhvdXJzXCIgW3dhY09ubHlOdW1iZXJdPVwidHJ1ZVwiLz5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ3YWMtY2FsZW5kYXJfX2Fic29sdXRlX190aW1lX193cmFwcGVyX19taW51dGVzXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIndhYy1jYWxlbmRhcl9fYWJzb2x1dGVfX3RpbWVfX3dyYXBwZXJfX21pbnV0ZXNfX2xlZnRcIj5cclxuICAgICAgICAgICAgICAgIDxpbnB1dCAjbWludXRlcyB0eXBlPVwidGV4dFwiIFsobmdNb2RlbCldPVwiY2FsZW5kYXJNaW51dGVzXCIgW3dhY09ubHlOdW1iZXJdPVwidHJ1ZVwiLz5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwid2FjLWNhbGVuZGFyX19hYnNvbHV0ZV9fdGltZV9fd3JhcHBlcl9fbWludXRlc19fcmlnaHRcIj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJ3YWMtY2FsZW5kYXJfX2Fic29sdXRlX190aW1lX193cmFwcGVyX19taW51dGVzX19idG5cIiAoY2xpY2spPVwiaW5jcmVtZW50TWludXRlcygkZXZlbnQpXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmFzIGZhLXBsdXNcIj48L2k+XHJcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJ3YWMtY2FsZW5kYXJfX2Fic29sdXRlX190aW1lX193cmFwcGVyX19taW51dGVzX19idG5cIiAoY2xpY2spPVwiZGVjcmVtZW50c01pbnV0ZXMoJGV2ZW50KVwiPlxyXG4gICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImZhcyBmYS1taW51c1wiPjwvaT5cclxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvd2FjLW9wdGlvbmFsLWRpc2FibGUtY29udGFpbmVyPlxyXG4gIDxwIGNsYXNzPVwid2FjLWNhbGVuZGFyX19lbmRMYWJlbFwiICpuZ0lmPVwidHlwZSA9PT0gJ2VkaXQnXCI+e3sgZW5kTGFiZWwgfX08L3A+XHJcbjwvZGl2PlxyXG4iXX0=
|