@energycap/components 0.44.2-github-actions.20250919-1816 → 0.44.2-github-actions.20250919-1421
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 +188 -188
- package/esm2022/lib/components.module.mjs +1 -1
- package/esm2022/lib/controls/banner/banner.component.mjs +3 -3
- package/esm2022/lib/controls/button/button.component.mjs +3 -3
- package/esm2022/lib/controls/button/copy-button-base.directive.mjs +1 -1
- package/esm2022/lib/controls/button/copy-button.directive.mjs +1 -1
- package/esm2022/lib/controls/button/copy-table-button.directive.mjs +1 -1
- package/esm2022/lib/controls/calendar/calendar-item.component.mjs +1 -1
- package/esm2022/lib/controls/calendar/calendar.component.mjs +3 -3
- package/esm2022/lib/controls/calendar/calendar.types.mjs +1 -1
- package/esm2022/lib/controls/checkbox/checkbox.component.mjs +3 -3
- package/esm2022/lib/controls/collapsible-toggle/collapsible-toggle.component.mjs +1 -1
- package/esm2022/lib/controls/combobox/combobox.component.mjs +3 -3
- package/esm2022/lib/controls/date-input/date-input-selection-strategies/date-input-selection-strategy-base.mjs +1 -1
- package/esm2022/lib/controls/date-input/date-input-selection-strategies/day-selection-strategy.mjs +1 -1
- package/esm2022/lib/controls/date-input/date-input-selection-strategies/last-28-days-selection-strategy.mjs +1 -1
- package/esm2022/lib/controls/date-input/date-input-selection-strategies/last-7-days-selection-strategy.mjs +1 -1
- package/esm2022/lib/controls/date-input/date-input-selection-strategies/month-selection-strategy.mjs +1 -1
- package/esm2022/lib/controls/date-input/date-input-selection-strategies/quarter-selection-strategy.mjs +1 -1
- package/esm2022/lib/controls/date-input/date-input-selection-strategies/range-selection-strategy.mjs +1 -1
- package/esm2022/lib/controls/date-input/date-input-selection-strategies/year-selection-strategy.mjs +1 -1
- package/esm2022/lib/controls/date-input/date-input.component.mjs +3 -3
- package/esm2022/lib/controls/date-input/date-input.types.mjs +1 -1
- package/esm2022/lib/controls/dropdown/dropdown.component.mjs +3 -3
- package/esm2022/lib/controls/file-upload/file-upload.component.mjs +3 -3
- package/esm2022/lib/controls/form-control/form-control.component.mjs +3 -3
- package/esm2022/lib/controls/form-control-base.mjs +1 -1
- package/esm2022/lib/controls/form-control-label/form-control-label.component.mjs +3 -3
- package/esm2022/lib/controls/form-group/form-group.component.mjs +3 -3
- package/esm2022/lib/controls/help-popover/help-popover.component.mjs +3 -3
- package/esm2022/lib/controls/item-picker/item-picker.component.mjs +3 -3
- package/esm2022/lib/controls/link-button/link-button.component.mjs +1 -1
- package/esm2022/lib/controls/menu/menu.component.mjs +3 -3
- package/esm2022/lib/controls/navigation/link-item.mjs +1 -1
- package/esm2022/lib/controls/navigation/nav-group.mjs +1 -1
- package/esm2022/lib/controls/navigation/nav-item-active.directive.mjs +1 -1
- package/esm2022/lib/controls/navigation/nav-item.mjs +1 -1
- package/esm2022/lib/controls/numericbox/numericbox.component.mjs +3 -3
- package/esm2022/lib/controls/popover/popover.component.mjs +3 -3
- package/esm2022/lib/controls/radio-button/radio-button-option.mjs +1 -1
- package/esm2022/lib/controls/radio-button/radio-button.component.mjs +3 -3
- package/esm2022/lib/controls/select/select.component.mjs +3 -3
- package/esm2022/lib/controls/tabs/tabs.component.mjs +3 -3
- package/esm2022/lib/controls/textbox/textbox.component.mjs +3 -3
- package/esm2022/lib/core/cache.service.mjs +1 -1
- package/esm2022/lib/core/custom-validators.mjs +1 -1
- package/esm2022/lib/core/date-time-helper.mjs +1 -1
- package/esm2022/lib/core/error.service.mjs +1 -1
- package/esm2022/lib/core/router-helper.service.mjs +1 -1
- package/esm2022/lib/core/scroll.service.mjs +1 -1
- package/esm2022/lib/core/telemetry-tracker.service.mjs +1 -1
- package/esm2022/lib/core/telemetry.service.mjs +1 -1
- package/esm2022/lib/core/validation-message.service.mjs +1 -1
- package/esm2022/lib/core/validation-patterns.mjs +1 -1
- package/esm2022/lib/core/window.service.mjs +1 -1
- package/esm2022/lib/display/app-bar/app-bar.component.mjs +3 -3
- package/esm2022/lib/display/avatar/avatar.component.mjs +1 -1
- package/esm2022/lib/display/avatar/avatar.service.mjs +1 -1
- package/esm2022/lib/display/confirm/confirm.component.mjs +3 -3
- package/esm2022/lib/display/dialog/dialog-content.mjs +1 -1
- package/esm2022/lib/display/dialog/dialog-group/dialog-group.component.mjs +3 -3
- package/esm2022/lib/display/dialog/dialog-types.mjs +1 -1
- package/esm2022/lib/display/dialog/dialog.component.mjs +1 -1
- package/esm2022/lib/display/dialog/dialog.service.mjs +1 -1
- package/esm2022/lib/display/help/help-types.mjs +1 -1
- package/esm2022/lib/display/hierarchy/hierarchy-base.mjs +1 -1
- package/esm2022/lib/display/hierarchy/hierarchy-mocks.spec.mjs +1 -1
- package/esm2022/lib/display/hierarchy/hierarchy-tree/hierarchy-tree.component.mjs +3 -3
- package/esm2022/lib/display/item-display/item-display.component.mjs +3 -3
- package/esm2022/lib/display/json-display/json-display.component.mjs +3 -3
- package/esm2022/lib/display/resizable/resizable-base.mjs +1 -1
- package/esm2022/lib/display/resizable/resizable.component.mjs +7 -7
- package/esm2022/lib/display/spinner/spinner.component.mjs +3 -3
- package/esm2022/lib/display/splash/splash.component.mjs +3 -3
- package/esm2022/lib/display/splash/splash.service.mjs +1 -1
- package/esm2022/lib/display/table/resizable-column.component.mjs +3 -3
- package/esm2022/lib/display/table/resizable-table.directive.mjs +1 -1
- package/esm2022/lib/display/table/searchable-table.component.mjs +3 -3
- package/esm2022/lib/display/table/table-detail-row.component.mjs +11 -11
- package/esm2022/lib/display/table/table-locked-column.component.mjs +1 -1
- package/esm2022/lib/display/table/table-master-header-row.component.mjs +1 -1
- package/esm2022/lib/display/table/table-master-row.component.mjs +3 -3
- package/esm2022/lib/display/table/table-pagination.component.mjs +3 -3
- package/esm2022/lib/display/table/table-selectable-row.component.mjs +3 -3
- package/esm2022/lib/display/table/table.component.mjs +3 -3
- package/esm2022/lib/display/tags/tag.mjs +1 -1
- package/esm2022/lib/display/tags/tags.component.mjs +3 -3
- package/esm2022/lib/display/toast/toast/toast.component.mjs +3 -3
- package/esm2022/lib/display/toast/toast-types.mjs +1 -1
- package/esm2022/lib/display/toast/toast.service.mjs +1 -1
- package/esm2022/lib/display/toast/toaster/toaster.component.mjs +3 -3
- package/esm2022/lib/display/tooltip/tooltip.component.mjs +3 -3
- package/esm2022/lib/display/tooltip/tooltip.service.mjs +1 -1
- package/esm2022/lib/display/tooltip-directive/tooltip.directive.mjs +1 -1
- package/esm2022/lib/display/tree/tree.component.mjs +3 -3
- package/esm2022/lib/display/view-overlay/view-overlay.component.mjs +3 -3
- package/esm2022/lib/shared/directives/click-area-for/click-area-for.directive.mjs +1 -1
- package/esm2022/lib/shared/directives/if-viewport-width/if-viewport-width.directive.mjs +1 -1
- package/esm2022/lib/shared/directives/keyboard-nav-container/keyboard-nav-container.directive.mjs +1 -1
- package/esm2022/lib/shared/directives/popup/popup-container.directive.mjs +1 -1
- package/esm2022/lib/shared/display/pipes/date-display-2.pipe.mjs +1 -1
- package/esm2022/lib/shared/display/pipes/date-display.pipe.mjs +1 -1
- package/esm2022/lib/shared/display/pipes/highlight-text.pipe.mjs +1 -1
- package/esm2022/lib/shared/display/pipes/relative-date.pipe.mjs +1 -1
- package/esm2022/lib/shared/display/pipes/row-count.pipe.mjs +1 -1
- package/esm2022/lib/shared/display/pipes/time-display.pipe.mjs +1 -1
- package/esm2022/lib/shared/display.mjs +1 -1
- package/esm2022/lib/shared/form-group.helper.mjs +1 -1
- package/esm2022/lib/shared/json-helper.mjs +1 -1
- package/esm2022/lib/shared/lodash-helper.mjs +1 -1
- package/esm2022/lib/shared/page/page-base/page-base.component.mjs +1 -1
- package/esm2022/lib/shared/page/page-statuses.mjs +1 -1
- package/esm2022/lib/shared/page/page-title/page-title.component.mjs +3 -3
- package/esm2022/lib/shared/page/page-view/page-view.component.mjs +3 -3
- package/esm2022/lib/shared/testing/copy-button-base-test-injector-factory.spec.mjs +1 -1
- package/esm2022/lib/shared/testing/hierarchy-base-test-injector-factory.spec.mjs +1 -1
- package/esm2022/lib/shared/testing/page-base-component-test-helper.spec.mjs +1 -1
- package/esm2022/lib/shared/testing/page-base-component-test-injector-factory.spec.mjs +1 -1
- package/esm2022/lib/shared/testing/public-mocks.spec.mjs +1 -1
- package/esm2022/lib/shared/testing/spy-factory.spec.mjs +1 -1
- package/esm2022/lib/shared/testing/translation-mocks.spec.mjs +1 -1
- package/esm2022/lib/shared/user-preference.service.mjs +1 -1
- package/esm2022/lib/shared/wizard/wizard-base/wizard-base.component.mjs +1 -1
- package/esm2022/lib/shared/wizard/wizard-buttons/wizard-buttons.component.mjs +3 -3
- package/esm2022/lib/shared/wizard/wizard-progress/wizard-progress.component.mjs +3 -3
- package/esm2022/public-api.mjs +1 -1
- package/fesm2022/energycap-components.mjs +104 -104
- package/fesm2022/energycap-components.mjs.map +1 -1
- package/package.json +1 -1
- package/schematics/collection.json +4 -4
- package/src/assets/images/favicon-ech.svg +14 -14
- package/src/assets/images/favicon-esa.svg +6 -6
- package/src/assets/images/favicon-eum.svg +13 -13
- package/src/assets/images/favicon-whitelabel.svg +4 -4
- package/src/assets/images/favicon.svg +12 -12
- package/src/assets/images/icon-carbonhub.svg +10 -10
- package/src/assets/images/icon-eum.svg +5 -5
- package/src/assets/images/icon-ucp.svg +12 -12
- package/src/assets/images/icon-wattics.svg +5 -5
- package/src/assets/images/icon.svg +11 -11
- package/src/assets/images/logo.svg +10 -10
- package/src/assets/images/splash-electric.svg +3 -3
- package/src/assets/images/splash-interval.svg +3 -3
- package/src/assets/images/splash-seedling.svg +11 -11
- package/src/assets/images/splash-water.svg +3 -3
- package/src/assets/locales/en_US.json +58 -58
- package/src/assets/scripts/unsupported-browser.js +17 -17
- package/src/styles/_base.scss +38 -38
- package/src/styles/_colors.scss +96 -96
- package/src/styles/_core.scss +3 -3
- package/src/styles/_functions.scss +114 -114
- package/src/styles/_global-variables.scss +229 -229
- package/src/styles/_icons.scss +23 -23
- package/src/styles/bootstrap/_grid.scss +33 -33
- package/src/styles/bootstrap/_reboot.scss +322 -322
- package/src/styles/components/_card.scss +21 -21
- package/src/styles/components/_link-icons.scss +37 -37
- package/src/styles/components/_splash.scss +150 -150
- package/src/styles/components/_tag.scss +18 -18
- package/src/styles/components/_unsupported-browsers.scss +23 -23
- package/src/styles/email/_email-base.scss +227 -227
- package/src/styles/email/email.scss +42 -42
- package/src/styles/index.scss +28 -28
- package/src/styles/mixins/_animations.scss +17 -17
- package/src/styles/mixins/_button-base.scss +185 -185
- package/src/styles/mixins/_card-base.scss +40 -40
- package/src/styles/mixins/_common.scss +51 -51
- package/src/styles/mixins/_dialog-base.scss +95 -95
- package/src/styles/mixins/_form-control-base.scss +640 -640
- package/src/styles/mixins/_login.scss +74 -74
- package/src/styles/mixins/_menu-base.scss +153 -153
- package/src/styles/mixins/_overlay-base.scss +32 -32
- package/src/styles/mixins/_resizable-base.scss +57 -57
- package/src/styles/mixins/_spinner-base.scss +34 -34
- package/src/styles/mixins/_table-base.scss +297 -297
- package/src/styles/mixins/_tabs-base.scss +146 -146
- package/src/styles/mixins/_tags-base.scss +121 -121
- package/src/styles/mixins/_text.scss +89 -89
- package/src/styles/mixins.scss +14 -14
- package/src/styles/utilities/_borders.scss +29 -29
- package/src/styles/utilities/_common.scss +49 -49
- package/src/styles/utilities/_layout.scss +115 -115
- package/src/styles/utilities/_spacing.scss +64 -64
- package/src/styles/utilities/_text.scss +139 -139
|
@@ -174,11 +174,11 @@ export class DropdownComponent {
|
|
|
174
174
|
}
|
|
175
175
|
}
|
|
176
176
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
177
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DropdownComponent, selector: "ec-dropdown", inputs: { id: "id", autofocus: "autofocus", status: "status", disabled: "disabled", label: "label", icon: "icon", buttonType: "buttonType", buttonAlignment: "buttonAlignment", buttonTitle: "buttonTitle", tabindex: "tabindex", showArrow: "showArrow", items: "items", menuTemplateType: "menuTemplateType", menuTitle: "menuTitle", menuHeight: "menuHeight", menuWidth: "menuWidth", menuMinWidth: "menuMinWidth", menuPosition: "menuPosition", menuFooter: "menuFooter", popupFixed: "popupFixed", buttonCustomTemplate: "buttonCustomTemplate", pending: "pending" }, outputs: { itemSelected: "itemSelected", popupOpened: "popupOpened" }, host: { properties: { "class.is-pending": "this.pending" } }, viewQueries: [{ propertyName: "menuEl", first: true, predicate: MenuComponent, descendants: true, read: ElementRef }, { propertyName: "popup", first: true, predicate: PopupContainerDirective, descendants: true, static: true }, { propertyName: "dropdownToggleButton", first: true, predicate: ["dropdownToggle"], descendants: true }], ngImport: i0, template: "<div class=\"control\">\n <ec-button [disabled]=\"disabled\"\n id=\"{{id}}_toggle\"\n #dropdownToggle\n [ngClass]=\"{'has-arrow':showArrow, 'active': menuStatus === 'visible', 'text-left': buttonAlignment === 'left', 'text-right': buttonAlignment === 'right'}\"\n *ecPopup=\"dropdownMenu\"\n [label]=\"label\"\n [icon]=\"icon\"\n [tabindex]=\"tabindex\"\n [type]=\"buttonType\"\n [customTemplate]=\"buttonCustomTemplate\"\n [pending]=\"pending\"\n title=\"{{buttonTitle}}\"\n (click)=\"toggleMenu($event)\"\n (keydown)=\"keyNavigate($event)\"\n [autofocus]=\"autofocus\">\n </ec-button>\n <span class=\"arrow is-{{buttonType}}\"\n *ngIf=\"showArrow\"\n [class.is-disabled]=\"disabled\">\n <i class=\"ec-icon icon-caret-down\" [class.flip-y]=\"menuStatus === 'visible'\"></i>\n </span>\n</div>\n\n<ng-template #dropdownMenu>\n <div id=\"{{id}}_popup\"\n class=\"popup\"\n ecOverlay\n [status]=\"status?.status\"\n [message]=\"status?.message\"\n [displayAsMask]=\"true\">\n <!-- Dropdown Menu Title -->\n <header id=\"{{id}}_title\"\n class=\"text-heading-2 px-2 my-2\"\n *ngIf=\"menuTitle\">{{menuTitle}}\n </header>\n <!-- Dropdown Menu -->\n <ec-menu id=\"{{id}}_menu\"\n [class.wrap-items]=\"menuWidth\"\n [templateType]=\"menuTemplateType\"\n [style.width]=\"menuWidth ? menuWidth + 'px' : 'auto'\"\n [style.min-width]=\"menuMinWidth ? menuMinWidth + 'px' : 'auto'\"\n [style.height]=\"menuHeight ? menuHeight + 'px' : 'auto'\"\n [items]=\"items\"\n [showNoItems]=\"true\"\n [enableKeyNav]=\"true\"\n [highlightedItem]=\"highlightedItem\"\n [dropdownToggleButton]=\"dropdownToggleButton.buttonElement\"\n (selectedChanged)=\"selectedChanged($event)\">\n </ec-menu>\n <footer *ngIf=\"menuFooter\">{{menuFooter}}</footer>\n </div>\n</ng-template>", styles: [":host{display:inline-block;box-sizing:border-box;vertical-align:top}:host(.font-size-inherit) ec-button{font-size:inherit}:host(.font-size-inherit) ec-button ::ng-deep button{font-size:inherit}:host(.fill){display:block;height:100%;width:100%}:host(.fill) .control{display:block;height:100%;width:100%}:host(.fill) .control ec-button{display:block;height:100%;width:100%}:host(.fill) .control ec-button ::ng-deep button{display:block;height:100%;width:100%;display:flex}:host(.fill) ec-menu{min-width:100%}:host(.td-fill){position:absolute;left:0;top:0}:host(.td-fill) ec-button ::ng-deep button{padding-left:.375rem;padding-right:.375rem;font-size:.75rem}:host(.is-action) ec-button,:host(.is-action) .arrow{color:var(--ec-color-interactive)}:host(.is-condensed) ec-button ::ng-deep button{height:1.5rem}:host(.is-condensed) ec-button.has-arrow ::ng-deep button{padding:0 1.125rem 0 .25rem}:host(.is-condensed) ec-button.has-arrow~.arrow{right:.375rem}:host(.d-block) ec-button{display:block}:host(.d-block) ec-button ::ng-deep button{width:100%}:host(.is-pending) .arrow{opacity:0}:host-context(th){color:var(--ec-color-primary-dark)}.control{position:relative}ec-button{display:block}ec-button.has-arrow~.arrow{position:absolute;top:0;right:.5rem;height:100%;display:flex;align-items:center;pointer-events:none;width:.625rem;z-index:1}ec-button.has-arrow~.arrow .ec-icon{color:var(--ec-color-icon);width:auto;transition:color .3s ease}ec-button.has-arrow~.arrow.is-link .ec-icon{color:var(--ec-button-color-text, var(--ec-color-link))}ec-button.has-arrow~.arrow.is-primary .ec-icon{color:var(--ec-button-color-primary, var(--ec-color-primary-light))}ec-button.has-arrow~.arrow.is-common .ec-icon,ec-button.has-arrow~.arrow.is-secondary .ec-icon{color:var(--ec-button-color-secondary, var(--ec-color-primary-dark))}ec-button.has-arrow~.arrow.is-text .ec-icon{color:var(--ec-button-color-text, var(--ec-color-primary-dark))}ec-button.has-arrow~.arrow.is-disabled .ec-icon{opacity:.5}ec-button.has-arrow.active~.arrow.is-primary .ec-icon,ec-button.has-arrow.active~.arrow.is-secondary .ec-icon,ec-button.has-arrow.active~.arrow.is-text .ec-icon,ec-button.has-arrow.active~.arrow.is-link .ec-icon{color:var(--ec-button-color-active, var(--ec-color-primary-dark))}ec-button.has-arrow ::ng-deep button{width:auto;padding-right:1.25rem}ec-button.has-arrow ::ng-deep button:not(.ec-button-custom){padding-left:.5rem}.popup{background-color:var(--ec-background-color);border-radius:var(--ec-border-radius-card);box-shadow:var(--ec-box-shadow-overlay);margin-top:.25rem;overflow:hidden;z-index:var(--ec-z-index-popup);text-align:start}.popup>header{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.popup footer{color:var(--ec-color-secondary-dark);font-size:var(--ec-font-size-label);border-top:var(--ec-border-width) solid var(--ec-border-color);padding:.1875rem .5rem;line-height:1.2}ec-menu ::ng-deep ul{max-height:50vh}ec-menu ::ng-deep li{white-space:nowrap}ec-menu.wrap-items ::ng-deep li{white-space:normal}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ButtonComponent, selector: "ec-button", inputs: ["id", "disabled", "icon", "label", "badge", "tabindex", "type", "pending", "pendingIcon", "customTemplate", "isSubmit", "autofocus"], outputs: ["clicked"] }, { kind: "component", type: i3.ViewOverlayComponent, selector: "[ecOverlay]", inputs: ["status", "message", "action", "noDataTemplate", "displayAsMask", "overlayClassList"] }, { kind: "component", type: i4.MenuComponent, selector: "ec-menu", inputs: ["id", "items", "selected", "parent", "templateType", "customMenuTemplate", "title", "showNoItems", "noDataText", "enableKeyNav", "highlightedItem", "maintainSelectedItem", "truncateItems", "preserveIconSpace", "dropdownToggleButton"], outputs: ["selectedChanged", "menuClosed"] }, { kind: "directive", type: i5.PopupContainerDirective, selector: "[ecPopup]", inputs: ["ecPopup", "options"] }] }); }
|
|
177
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: DropdownComponent, selector: "ec-dropdown", inputs: { id: "id", autofocus: "autofocus", status: "status", disabled: "disabled", label: "label", icon: "icon", buttonType: "buttonType", buttonAlignment: "buttonAlignment", buttonTitle: "buttonTitle", tabindex: "tabindex", showArrow: "showArrow", items: "items", menuTemplateType: "menuTemplateType", menuTitle: "menuTitle", menuHeight: "menuHeight", menuWidth: "menuWidth", menuMinWidth: "menuMinWidth", menuPosition: "menuPosition", menuFooter: "menuFooter", popupFixed: "popupFixed", buttonCustomTemplate: "buttonCustomTemplate", pending: "pending" }, outputs: { itemSelected: "itemSelected", popupOpened: "popupOpened" }, host: { properties: { "class.is-pending": "this.pending" } }, viewQueries: [{ propertyName: "menuEl", first: true, predicate: MenuComponent, descendants: true, read: ElementRef }, { propertyName: "popup", first: true, predicate: PopupContainerDirective, descendants: true, static: true }, { propertyName: "dropdownToggleButton", first: true, predicate: ["dropdownToggle"], descendants: true }], ngImport: i0, template: "<div class=\"control\">\r\n <ec-button [disabled]=\"disabled\"\r\n id=\"{{id}}_toggle\"\r\n #dropdownToggle\r\n [ngClass]=\"{'has-arrow':showArrow, 'active': menuStatus === 'visible', 'text-left': buttonAlignment === 'left', 'text-right': buttonAlignment === 'right'}\"\r\n *ecPopup=\"dropdownMenu\"\r\n [label]=\"label\"\r\n [icon]=\"icon\"\r\n [tabindex]=\"tabindex\"\r\n [type]=\"buttonType\"\r\n [customTemplate]=\"buttonCustomTemplate\"\r\n [pending]=\"pending\"\r\n title=\"{{buttonTitle}}\"\r\n (click)=\"toggleMenu($event)\"\r\n (keydown)=\"keyNavigate($event)\"\r\n [autofocus]=\"autofocus\">\r\n </ec-button>\r\n <span class=\"arrow is-{{buttonType}}\"\r\n *ngIf=\"showArrow\"\r\n [class.is-disabled]=\"disabled\">\r\n <i class=\"ec-icon icon-caret-down\" [class.flip-y]=\"menuStatus === 'visible'\"></i>\r\n </span>\r\n</div>\r\n\r\n<ng-template #dropdownMenu>\r\n <div id=\"{{id}}_popup\"\r\n class=\"popup\"\r\n ecOverlay\r\n [status]=\"status?.status\"\r\n [message]=\"status?.message\"\r\n [displayAsMask]=\"true\">\r\n <!-- Dropdown Menu Title -->\r\n <header id=\"{{id}}_title\"\r\n class=\"text-heading-2 px-2 my-2\"\r\n *ngIf=\"menuTitle\">{{menuTitle}}\r\n </header>\r\n <!-- Dropdown Menu -->\r\n <ec-menu id=\"{{id}}_menu\"\r\n [class.wrap-items]=\"menuWidth\"\r\n [templateType]=\"menuTemplateType\"\r\n [style.width]=\"menuWidth ? menuWidth + 'px' : 'auto'\"\r\n [style.min-width]=\"menuMinWidth ? menuMinWidth + 'px' : 'auto'\"\r\n [style.height]=\"menuHeight ? menuHeight + 'px' : 'auto'\"\r\n [items]=\"items\"\r\n [showNoItems]=\"true\"\r\n [enableKeyNav]=\"true\"\r\n [highlightedItem]=\"highlightedItem\"\r\n [dropdownToggleButton]=\"dropdownToggleButton.buttonElement\"\r\n (selectedChanged)=\"selectedChanged($event)\">\r\n </ec-menu>\r\n <footer *ngIf=\"menuFooter\">{{menuFooter}}</footer>\r\n </div>\r\n</ng-template>", styles: [":host{display:inline-block;box-sizing:border-box;vertical-align:top}:host(.font-size-inherit) ec-button{font-size:inherit}:host(.font-size-inherit) ec-button ::ng-deep button{font-size:inherit}:host(.fill){display:block;height:100%;width:100%}:host(.fill) .control{display:block;height:100%;width:100%}:host(.fill) .control ec-button{display:block;height:100%;width:100%}:host(.fill) .control ec-button ::ng-deep button{display:block;height:100%;width:100%;display:flex}:host(.fill) ec-menu{min-width:100%}:host(.td-fill){position:absolute;left:0;top:0}:host(.td-fill) ec-button ::ng-deep button{padding-left:.375rem;padding-right:.375rem;font-size:.75rem}:host(.is-action) ec-button,:host(.is-action) .arrow{color:var(--ec-color-interactive)}:host(.is-condensed) ec-button ::ng-deep button{height:1.5rem}:host(.is-condensed) ec-button.has-arrow ::ng-deep button{padding:0 1.125rem 0 .25rem}:host(.is-condensed) ec-button.has-arrow~.arrow{right:.375rem}:host(.d-block) ec-button{display:block}:host(.d-block) ec-button ::ng-deep button{width:100%}:host(.is-pending) .arrow{opacity:0}:host-context(th){color:var(--ec-color-primary-dark)}.control{position:relative}ec-button{display:block}ec-button.has-arrow~.arrow{position:absolute;top:0;right:.5rem;height:100%;display:flex;align-items:center;pointer-events:none;width:.625rem;z-index:1}ec-button.has-arrow~.arrow .ec-icon{color:var(--ec-color-icon);width:auto;transition:color .3s ease}ec-button.has-arrow~.arrow.is-link .ec-icon{color:var(--ec-button-color-text, var(--ec-color-link))}ec-button.has-arrow~.arrow.is-primary .ec-icon{color:var(--ec-button-color-primary, var(--ec-color-primary-light))}ec-button.has-arrow~.arrow.is-common .ec-icon,ec-button.has-arrow~.arrow.is-secondary .ec-icon{color:var(--ec-button-color-secondary, var(--ec-color-primary-dark))}ec-button.has-arrow~.arrow.is-text .ec-icon{color:var(--ec-button-color-text, var(--ec-color-primary-dark))}ec-button.has-arrow~.arrow.is-disabled .ec-icon{opacity:.5}ec-button.has-arrow.active~.arrow.is-primary .ec-icon,ec-button.has-arrow.active~.arrow.is-secondary .ec-icon,ec-button.has-arrow.active~.arrow.is-text .ec-icon,ec-button.has-arrow.active~.arrow.is-link .ec-icon{color:var(--ec-button-color-active, var(--ec-color-primary-dark))}ec-button.has-arrow ::ng-deep button{width:auto;padding-right:1.25rem}ec-button.has-arrow ::ng-deep button:not(.ec-button-custom){padding-left:.5rem}.popup{background-color:var(--ec-background-color);border-radius:var(--ec-border-radius-card);box-shadow:var(--ec-box-shadow-overlay);margin-top:.25rem;overflow:hidden;z-index:var(--ec-z-index-popup);text-align:start}.popup>header{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.popup footer{color:var(--ec-color-secondary-dark);font-size:var(--ec-font-size-label);border-top:var(--ec-border-width) solid var(--ec-border-color);padding:.1875rem .5rem;line-height:1.2}ec-menu ::ng-deep ul{max-height:50vh}ec-menu ::ng-deep li{white-space:nowrap}ec-menu.wrap-items ::ng-deep li{white-space:normal}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ButtonComponent, selector: "ec-button", inputs: ["id", "disabled", "icon", "label", "badge", "tabindex", "type", "pending", "pendingIcon", "customTemplate", "isSubmit", "autofocus"], outputs: ["clicked"] }, { kind: "component", type: i3.ViewOverlayComponent, selector: "[ecOverlay]", inputs: ["status", "message", "action", "noDataTemplate", "displayAsMask", "overlayClassList"] }, { kind: "component", type: i4.MenuComponent, selector: "ec-menu", inputs: ["id", "items", "selected", "parent", "templateType", "customMenuTemplate", "title", "showNoItems", "noDataText", "enableKeyNav", "highlightedItem", "maintainSelectedItem", "truncateItems", "preserveIconSpace", "dropdownToggleButton"], outputs: ["selectedChanged", "menuClosed"] }, { kind: "directive", type: i5.PopupContainerDirective, selector: "[ecPopup]", inputs: ["ecPopup", "options"] }] }); }
|
|
178
178
|
}
|
|
179
179
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DropdownComponent, decorators: [{
|
|
180
180
|
type: Component,
|
|
181
|
-
args: [{ selector: 'ec-dropdown', template: "<div class=\"control\">\n <ec-button [disabled]=\"disabled\"\n id=\"{{id}}_toggle\"\n #dropdownToggle\n [ngClass]=\"{'has-arrow':showArrow, 'active': menuStatus === 'visible', 'text-left': buttonAlignment === 'left', 'text-right': buttonAlignment === 'right'}\"\n *ecPopup=\"dropdownMenu\"\n [label]=\"label\"\n [icon]=\"icon\"\n [tabindex]=\"tabindex\"\n [type]=\"buttonType\"\n [customTemplate]=\"buttonCustomTemplate\"\n [pending]=\"pending\"\n title=\"{{buttonTitle}}\"\n (click)=\"toggleMenu($event)\"\n (keydown)=\"keyNavigate($event)\"\n [autofocus]=\"autofocus\">\n </ec-button>\n <span class=\"arrow is-{{buttonType}}\"\n *ngIf=\"showArrow\"\n [class.is-disabled]=\"disabled\">\n <i class=\"ec-icon icon-caret-down\" [class.flip-y]=\"menuStatus === 'visible'\"></i>\n </span>\n</div>\n\n<ng-template #dropdownMenu>\n <div id=\"{{id}}_popup\"\n class=\"popup\"\n ecOverlay\n [status]=\"status?.status\"\n [message]=\"status?.message\"\n [displayAsMask]=\"true\">\n <!-- Dropdown Menu Title -->\n <header id=\"{{id}}_title\"\n class=\"text-heading-2 px-2 my-2\"\n *ngIf=\"menuTitle\">{{menuTitle}}\n </header>\n <!-- Dropdown Menu -->\n <ec-menu id=\"{{id}}_menu\"\n [class.wrap-items]=\"menuWidth\"\n [templateType]=\"menuTemplateType\"\n [style.width]=\"menuWidth ? menuWidth + 'px' : 'auto'\"\n [style.min-width]=\"menuMinWidth ? menuMinWidth + 'px' : 'auto'\"\n [style.height]=\"menuHeight ? menuHeight + 'px' : 'auto'\"\n [items]=\"items\"\n [showNoItems]=\"true\"\n [enableKeyNav]=\"true\"\n [highlightedItem]=\"highlightedItem\"\n [dropdownToggleButton]=\"dropdownToggleButton.buttonElement\"\n (selectedChanged)=\"selectedChanged($event)\">\n </ec-menu>\n <footer *ngIf=\"menuFooter\">{{menuFooter}}</footer>\n </div>\n</ng-template>", styles: [":host{display:inline-block;box-sizing:border-box;vertical-align:top}:host(.font-size-inherit) ec-button{font-size:inherit}:host(.font-size-inherit) ec-button ::ng-deep button{font-size:inherit}:host(.fill){display:block;height:100%;width:100%}:host(.fill) .control{display:block;height:100%;width:100%}:host(.fill) .control ec-button{display:block;height:100%;width:100%}:host(.fill) .control ec-button ::ng-deep button{display:block;height:100%;width:100%;display:flex}:host(.fill) ec-menu{min-width:100%}:host(.td-fill){position:absolute;left:0;top:0}:host(.td-fill) ec-button ::ng-deep button{padding-left:.375rem;padding-right:.375rem;font-size:.75rem}:host(.is-action) ec-button,:host(.is-action) .arrow{color:var(--ec-color-interactive)}:host(.is-condensed) ec-button ::ng-deep button{height:1.5rem}:host(.is-condensed) ec-button.has-arrow ::ng-deep button{padding:0 1.125rem 0 .25rem}:host(.is-condensed) ec-button.has-arrow~.arrow{right:.375rem}:host(.d-block) ec-button{display:block}:host(.d-block) ec-button ::ng-deep button{width:100%}:host(.is-pending) .arrow{opacity:0}:host-context(th){color:var(--ec-color-primary-dark)}.control{position:relative}ec-button{display:block}ec-button.has-arrow~.arrow{position:absolute;top:0;right:.5rem;height:100%;display:flex;align-items:center;pointer-events:none;width:.625rem;z-index:1}ec-button.has-arrow~.arrow .ec-icon{color:var(--ec-color-icon);width:auto;transition:color .3s ease}ec-button.has-arrow~.arrow.is-link .ec-icon{color:var(--ec-button-color-text, var(--ec-color-link))}ec-button.has-arrow~.arrow.is-primary .ec-icon{color:var(--ec-button-color-primary, var(--ec-color-primary-light))}ec-button.has-arrow~.arrow.is-common .ec-icon,ec-button.has-arrow~.arrow.is-secondary .ec-icon{color:var(--ec-button-color-secondary, var(--ec-color-primary-dark))}ec-button.has-arrow~.arrow.is-text .ec-icon{color:var(--ec-button-color-text, var(--ec-color-primary-dark))}ec-button.has-arrow~.arrow.is-disabled .ec-icon{opacity:.5}ec-button.has-arrow.active~.arrow.is-primary .ec-icon,ec-button.has-arrow.active~.arrow.is-secondary .ec-icon,ec-button.has-arrow.active~.arrow.is-text .ec-icon,ec-button.has-arrow.active~.arrow.is-link .ec-icon{color:var(--ec-button-color-active, var(--ec-color-primary-dark))}ec-button.has-arrow ::ng-deep button{width:auto;padding-right:1.25rem}ec-button.has-arrow ::ng-deep button:not(.ec-button-custom){padding-left:.5rem}.popup{background-color:var(--ec-background-color);border-radius:var(--ec-border-radius-card);box-shadow:var(--ec-box-shadow-overlay);margin-top:.25rem;overflow:hidden;z-index:var(--ec-z-index-popup);text-align:start}.popup>header{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.popup footer{color:var(--ec-color-secondary-dark);font-size:var(--ec-font-size-label);border-top:var(--ec-border-width) solid var(--ec-border-color);padding:.1875rem .5rem;line-height:1.2}ec-menu ::ng-deep ul{max-height:50vh}ec-menu ::ng-deep li{white-space:nowrap}ec-menu.wrap-items ::ng-deep li{white-space:normal}\n"] }]
|
|
181
|
+
args: [{ selector: 'ec-dropdown', template: "<div class=\"control\">\r\n <ec-button [disabled]=\"disabled\"\r\n id=\"{{id}}_toggle\"\r\n #dropdownToggle\r\n [ngClass]=\"{'has-arrow':showArrow, 'active': menuStatus === 'visible', 'text-left': buttonAlignment === 'left', 'text-right': buttonAlignment === 'right'}\"\r\n *ecPopup=\"dropdownMenu\"\r\n [label]=\"label\"\r\n [icon]=\"icon\"\r\n [tabindex]=\"tabindex\"\r\n [type]=\"buttonType\"\r\n [customTemplate]=\"buttonCustomTemplate\"\r\n [pending]=\"pending\"\r\n title=\"{{buttonTitle}}\"\r\n (click)=\"toggleMenu($event)\"\r\n (keydown)=\"keyNavigate($event)\"\r\n [autofocus]=\"autofocus\">\r\n </ec-button>\r\n <span class=\"arrow is-{{buttonType}}\"\r\n *ngIf=\"showArrow\"\r\n [class.is-disabled]=\"disabled\">\r\n <i class=\"ec-icon icon-caret-down\" [class.flip-y]=\"menuStatus === 'visible'\"></i>\r\n </span>\r\n</div>\r\n\r\n<ng-template #dropdownMenu>\r\n <div id=\"{{id}}_popup\"\r\n class=\"popup\"\r\n ecOverlay\r\n [status]=\"status?.status\"\r\n [message]=\"status?.message\"\r\n [displayAsMask]=\"true\">\r\n <!-- Dropdown Menu Title -->\r\n <header id=\"{{id}}_title\"\r\n class=\"text-heading-2 px-2 my-2\"\r\n *ngIf=\"menuTitle\">{{menuTitle}}\r\n </header>\r\n <!-- Dropdown Menu -->\r\n <ec-menu id=\"{{id}}_menu\"\r\n [class.wrap-items]=\"menuWidth\"\r\n [templateType]=\"menuTemplateType\"\r\n [style.width]=\"menuWidth ? menuWidth + 'px' : 'auto'\"\r\n [style.min-width]=\"menuMinWidth ? menuMinWidth + 'px' : 'auto'\"\r\n [style.height]=\"menuHeight ? menuHeight + 'px' : 'auto'\"\r\n [items]=\"items\"\r\n [showNoItems]=\"true\"\r\n [enableKeyNav]=\"true\"\r\n [highlightedItem]=\"highlightedItem\"\r\n [dropdownToggleButton]=\"dropdownToggleButton.buttonElement\"\r\n (selectedChanged)=\"selectedChanged($event)\">\r\n </ec-menu>\r\n <footer *ngIf=\"menuFooter\">{{menuFooter}}</footer>\r\n </div>\r\n</ng-template>", styles: [":host{display:inline-block;box-sizing:border-box;vertical-align:top}:host(.font-size-inherit) ec-button{font-size:inherit}:host(.font-size-inherit) ec-button ::ng-deep button{font-size:inherit}:host(.fill){display:block;height:100%;width:100%}:host(.fill) .control{display:block;height:100%;width:100%}:host(.fill) .control ec-button{display:block;height:100%;width:100%}:host(.fill) .control ec-button ::ng-deep button{display:block;height:100%;width:100%;display:flex}:host(.fill) ec-menu{min-width:100%}:host(.td-fill){position:absolute;left:0;top:0}:host(.td-fill) ec-button ::ng-deep button{padding-left:.375rem;padding-right:.375rem;font-size:.75rem}:host(.is-action) ec-button,:host(.is-action) .arrow{color:var(--ec-color-interactive)}:host(.is-condensed) ec-button ::ng-deep button{height:1.5rem}:host(.is-condensed) ec-button.has-arrow ::ng-deep button{padding:0 1.125rem 0 .25rem}:host(.is-condensed) ec-button.has-arrow~.arrow{right:.375rem}:host(.d-block) ec-button{display:block}:host(.d-block) ec-button ::ng-deep button{width:100%}:host(.is-pending) .arrow{opacity:0}:host-context(th){color:var(--ec-color-primary-dark)}.control{position:relative}ec-button{display:block}ec-button.has-arrow~.arrow{position:absolute;top:0;right:.5rem;height:100%;display:flex;align-items:center;pointer-events:none;width:.625rem;z-index:1}ec-button.has-arrow~.arrow .ec-icon{color:var(--ec-color-icon);width:auto;transition:color .3s ease}ec-button.has-arrow~.arrow.is-link .ec-icon{color:var(--ec-button-color-text, var(--ec-color-link))}ec-button.has-arrow~.arrow.is-primary .ec-icon{color:var(--ec-button-color-primary, var(--ec-color-primary-light))}ec-button.has-arrow~.arrow.is-common .ec-icon,ec-button.has-arrow~.arrow.is-secondary .ec-icon{color:var(--ec-button-color-secondary, var(--ec-color-primary-dark))}ec-button.has-arrow~.arrow.is-text .ec-icon{color:var(--ec-button-color-text, var(--ec-color-primary-dark))}ec-button.has-arrow~.arrow.is-disabled .ec-icon{opacity:.5}ec-button.has-arrow.active~.arrow.is-primary .ec-icon,ec-button.has-arrow.active~.arrow.is-secondary .ec-icon,ec-button.has-arrow.active~.arrow.is-text .ec-icon,ec-button.has-arrow.active~.arrow.is-link .ec-icon{color:var(--ec-button-color-active, var(--ec-color-primary-dark))}ec-button.has-arrow ::ng-deep button{width:auto;padding-right:1.25rem}ec-button.has-arrow ::ng-deep button:not(.ec-button-custom){padding-left:.5rem}.popup{background-color:var(--ec-background-color);border-radius:var(--ec-border-radius-card);box-shadow:var(--ec-box-shadow-overlay);margin-top:.25rem;overflow:hidden;z-index:var(--ec-z-index-popup);text-align:start}.popup>header{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.popup footer{color:var(--ec-color-secondary-dark);font-size:var(--ec-font-size-label);border-top:var(--ec-border-width) solid var(--ec-border-color);padding:.1875rem .5rem;line-height:1.2}ec-menu ::ng-deep ul{max-height:50vh}ec-menu ::ng-deep li{white-space:nowrap}ec-menu.wrap-items ::ng-deep li{white-space:normal}\n"] }]
|
|
182
182
|
}], ctorParameters: () => [], propDecorators: { id: [{
|
|
183
183
|
type: Input
|
|
184
184
|
}], autofocus: [{
|
|
@@ -240,4 +240,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
240
240
|
type: ViewChild,
|
|
241
241
|
args: ['dropdownToggle']
|
|
242
242
|
}] } });
|
|
243
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2NvbnRyb2xzL2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy9kcm9wZG93bi9kcm9wZG93bi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBZSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUosT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLHVCQUF1QixFQUFlLE1BQU0seURBQXlELENBQUM7QUFHL0csT0FBTyxFQUFFLGFBQWEsRUFBOEIsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7OztBQU9uRixNQUFNLE9BQU8saUJBQWlCO0lBZ0s1QjtRQXpKQTs7V0FFRztRQUNhLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFFbEM7O1dBRUc7UUFDYSxXQUFNLEdBQWtCLEVBQUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFDLENBQUM7UUFFekU7O1dBRUc7UUFDYSxhQUFRLEdBQVcsS0FBSyxDQUFDO1FBWXpDOztXQUVHO1FBQ2EsZUFBVSxHQUFnQixNQUFNLENBQUM7UUFRakQ7OztXQUdHO1FBQ2EsZ0JBQVcsR0FBVyxFQUFFLENBQUM7UUFPekM7O1dBRUc7UUFDYSxjQUFTLEdBQVksSUFBSSxDQUFDO1FBRTFDOztXQUVHO1FBQ2EsVUFBSyxHQUFlLEVBQUUsQ0FBQztRQUV2Qzs7V0FFRztR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QUFLO2dCQUtVLFVBQVU7c0JBQXpCLEtBQUs7Z0JBTVUsZUFBZTtzQkFBOUIsS0FBSztnQkFNVSxXQUFXO3NCQUExQixLQUFLO2dCQUtVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBS1UsU0FBUztzQkFBeEIsS0FBSztnQkFLVSxLQUFLO3NCQUFwQixLQUFLO2dCQUtVLGdCQUFnQjtzQkFBL0IsS0FBSztnQkFNVSxTQUFTO3NCQUF4QixLQUFLO2dCQUtVLFVBQVU7c0JBQXpCLEtBQUs7Z0JBS1UsU0FBUztzQkFBeEIsS0FBSztnQkFLVSxZQUFZO3NCQUEzQixLQUFLO2dCQUtVLFlBQVk7c0JBQTNCLEtBQUs7Z0JBS1UsVUFBVTtzQkFBekIsS0FBSztnQkFNVSxVQUFVO3NCQUF6QixLQUFLO2dCQUtVLG9CQUFvQjtzQkFBbkMsS0FBSztnQkFNVSxPQUFPO3NCQUR0QixXQUFXO3VCQUFDLGtCQUFrQjs7c0JBQzlCLEtBQUs7Z0JBS1csWUFBWTtzQkFBNUIsTUFBTTtnQkFLVSxXQUFXO3NCQUEzQixNQUFNO2dCQWtCaUQsTUFBTTtzQkFBN0QsU0FBUzt1QkFBQyxhQUFhLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFO2dCQUtnQixLQUFLO3NCQUFsRSxTQUFTO3VCQUFDLHVCQUF1QixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFLaEIsb0JBQW9CO3NCQUF2RCxTQUFTO3VCQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCBQb3BwZXIgZnJvbSAncG9wcGVyLmpzJztcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgUG9wdXBDb250YWluZXJEaXJlY3RpdmUsIFBvcHVwU3RhdHVzIH0gZnJvbSAnLi4vLi4vc2hhcmVkL2RpcmVjdGl2ZXMvcG9wdXAvcG9wdXAtY29udGFpbmVyLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBEaXNwbGF5U3RhdHVzIH0gZnJvbSAnLi4vLi4vc2hhcmVkL2Rpc3BsYXknO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50LCBCdXR0b25UeXBlIH0gZnJvbSAnLi4vYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWVudUNvbXBvbmVudCwgTWVudUl0ZW0sIE1lbnVUZW1wbGF0ZVR5cGUgfSBmcm9tICcuLi9tZW51L21lbnUuY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZWMtZHJvcGRvd24nLFxuICB0ZW1wbGF0ZVVybDogJy4vZHJvcGRvd24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kcm9wZG93bi5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIERyb3Bkb3duQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuXG4gIC8qKlxuICAgKiBCYXNlIGlkIGZvciB0aGUgY29tcG9uZW50J3Mgc3ViLWVsZW1lbnRzXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgaWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEF1dG9tYXRpY2FsbHkgZm9jdXMgdGhlIGRyb3Bkb3duIHRvZ2dsZSBidXR0b25cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBhdXRvZm9jdXMgPSBmYWxzZTtcblxuICAvKipcbiAgICogQ29udHJvbHMgdGhlIGRpc3BsYXkgc3RhdHVzIG92ZXJsYXkgZm9yIHRoZSBtZW51XG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgc3RhdHVzPzpEaXNwbGF5U3RhdHVzID0ge3N0YXR1czogJ2hhc0RhdGEnLCBtZXNzYWdlOiAnJ307XG5cbiAgLyoqXG4gICAqIERpc2FibGUgdGhlIGJ1dHRvbiB0byBwcmV2ZW50IHRoZSBtZW51IGZyb20gYmVpbmcgb3BlbmVkXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQ6Ym9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBsYWJlbCBmb3IgdGhlIGJ1dHRvblxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIGxhYmVsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBpY29uIGZvciB0aGUgYnV0dG9uXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgaWNvbj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGJ1dHRvbiB0eXBlLCBkZWZhdWx0cyB0byBpY29uXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgYnV0dG9uVHlwZT86IEJ1dHRvblR5cGUgPSAnaWNvbic7XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsbHkgYWxpZ24gdGhlIGxhYmVsIG9mIHRoZSBidXR0b24gdG8gdGhlIGxlZnQgb3IgcmlnaHQuIElmIG5vdCBzZXQsXG4gICAqIHdpbGwgYmUgY2VudGVyZWQuXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgYnV0dG9uQWxpZ25tZW50PzogJ2xlZnQnIHwgJ3JpZ2h0JztcblxuICAvKipcbiAgICogQWRkcyBhIHRvb2x0aXAgdG8gdGhlIGRyb3Bkb3duIHRvZ2dsZSBidXR0b24uIFNob3VsZCBvbmx5IGJlIHVzZWQgd2hlblxuICAgKiB0aGUgdG9nZ2xlIGJ1dHRvblR5cGUgaXMgJ2ljb24nXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgYnV0dG9uVGl0bGU6IHN0cmluZyA9ICcnO1xuXG4gIC8qKlxuICAgKiBUaGUgdGFiaW5kZXggb2YgdGhlIGJ1dHRvblxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIHRhYmluZGV4PzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBEaXNwbGF5IGEgY2FyZXQgd2l0aCB0aGUgYnV0dG9uIGxhYmVsIG9yIGljb25cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBzaG93QXJyb3c6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIC8qKlxuICAgKiBJdGVtcyB0byBkaXNwbGF5IGluIHRoZSBtZW51XG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgaXRlbXM6IE1lbnVJdGVtW10gPSBbXTtcblxuICAvKipcbiAgICogVGhlIG1lbnUgaXRlbSB0ZW1wbGF0ZVxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIG1lbnVUZW1wbGF0ZVR5cGU6IE1lbnVUZW1wbGF0ZVR5cGUgPSAnbGFiZWwnO1xuXG4gIC8qKlxuICAgKiBEaXNwbGF5IGEgaGVhZGVyIG9uIHRoZSBtZW51XG4gICAqIEBkZXByZWNhdGVkIHVzZSBmaXJzdCBtZW51IGl0ZW0gd2l0aCBkaXNwbGF5IHNldCB0byAnaGVhZGluZycgaW5zdGVhZFxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIG1lbnVUaXRsZT86IHN0cmluZztcblxuICAvKipcbiAgICogU2V0IGEgZml4ZWQgaGVpZ2h0IGZvciB0aGUgbWVudSwgYXV0byBieSBkZWZhdWx0XG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgbWVudUhlaWdodD86IG51bWJlcjtcblxuICAvKipcbiAgICogU2V0IGEgZml4ZWQgd2lkdGggaW4gcGl4ZWxzIGZvciB0aGUgbWVudSwgYXV0byBieSBkZWZhdWx0XG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgbWVudVdpZHRoPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBTZXQgYSBtaW4td2lkdGggaW4gcGl4ZWxzIG9uIHRoZSBtZW51LiBJdCB3aWxsIGV4cGFuZCBpZiB0aGUgY29udGVudCBpcyBncmVhdGVyIHRoYW4gdGhlIG1pbi13aWR0aFxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIG1lbnVNaW5XaWR0aD86IG51bWJlcjtcblxuICAvKipcbiAgICogUGluIHRoZSBtZW51IHRvIHRoZSBsZWZ0IG9yIHJpZ2h0IG9mIHRoZSBidXR0b24uIFJpZ2h0IGJ5IGRlZmF1bHRcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBtZW51UG9zaXRpb24/OiAnbGVmdCcgfCAncmlnaHQnO1xuXG4gIC8qKlxuICAgKiBTdGlja3kgZm9vdGVyIHRvIGRpc3BsYXkgYXQgdGhlIGJvdHRvbSBvZiB0aGUgcG9wdXAgbWVudVxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIG1lbnVGb290ZXI/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEZpeCBwb3NpdGlvbiB0aGUgbWVudSBpbnN0ZWFkIG9mIGFic29sdXRlLiBVc2VmdWwgd2hlbiB0aGUgZHJvcGRvd24gaXMgaW4gYVxuICAgKiBkaWFsb2dcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBwb3B1cEZpeGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFBhc3MgYSBjdXN0b20gdGVtcGxhdGUgdG8gdGhlIHRvZ2dsZSBidXR0b25cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBidXR0b25DdXN0b21UZW1wbGF0ZT86IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgLyoqXG4gICogVXNlZCB0byBzZXQgdGhlIG1lbnUgYnV0dG9ucyBzdGF0ZSB0byBwZW5kaW5nXG4gICovXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtcGVuZGluZycpXG4gIEBJbnB1dCgpIHB1YmxpYyBwZW5kaW5nOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEVtaXRzIGFuIGV2ZW50IHdoZW4gYSBtZW51IGl0ZW0gaXMgc2VsZWN0ZWRcbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgaXRlbVNlbGVjdGVkOiBFdmVudEVtaXR0ZXI8TWVudUl0ZW0+ID0gbmV3IEV2ZW50RW1pdHRlcjxNZW51SXRlbT4oKTtcblxuICAvKipcbiAgICogRW1pdHMgYW4gZXZlbnQgd2hlbiB0aGUgcG9wdXAgbWVudSBvcGVuc1xuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyBwb3B1cE9wZW5lZDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIC8qKlxuICAgKiBUaGUgc3RhdHVzIG9mIHRoZSBtZW51XG4gICAqL1xuICBwdWJsaWMgbWVudVN0YXR1czogUG9wdXBTdGF0dXMgPSAnaGlkZGVuJztcblxuICAvKiogSXRlbSB0byBoaWdobGlnaHQgd2hlbiB0aGUgbWVudSBpcyBvcGVuZWQsIHVzZWQgd2hlbiB0aGUgdXNlclxuICAgKiAgb3BlbnMgdGhlIG1lbnUgdmlhIHRoZSBrZXlib2FyZFxuICAgKi9cbiAgcHVibGljIGhpZ2hsaWdodGVkSXRlbTogTWVudUl0ZW0gfCBudWxsID0gbnVsbDtcblxuICAvKiogVXNlZCB0byBrbm93IGlmIHRoZSBtZW51IHdhcyB0b2dnbGVkIHZpYSB0aGUga2V5Ym9hcmQgKi9cbiAgcHJpdmF0ZSBpc0tleWJvYXJkRXZlbnQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogSW50ZXJuYWwgcmVmZXJlbmNlIHRvIHRoZSBtZW51IGVsZW1lbnRcbiAgICovXG4gIEBWaWV3Q2hpbGQoTWVudUNvbXBvbmVudCwgeyByZWFkOiBFbGVtZW50UmVmIH0pIHByaXZhdGUgbWVudUVsITpFbGVtZW50UmVmO1xuXG4gIC8qKlxuICAgKiBJbnRlcm5hbCByZWZlcmVuY2UgdG8gdGhlIHBvcHVwIGRpcmVjdGl2ZVxuICAgKi9cbiAgQFZpZXdDaGlsZChQb3B1cENvbnRhaW5lckRpcmVjdGl2ZSwgeyBzdGF0aWM6IHRydWUgfSkgcHJpdmF0ZSBwb3B1cCE6IFBvcHVwQ29udGFpbmVyRGlyZWN0aXZlO1xuXG4gIC8qKlxuICAgKiBHZXQgYSByZWZlcmVuY2UgdG8gdGhlIHRvZ2dsZSBidXR0b25cbiAgICovXG4gIEBWaWV3Q2hpbGQoJ2Ryb3Bkb3duVG9nZ2xlJykgcHVibGljIGRyb3Bkb3duVG9nZ2xlQnV0dG9uITogQnV0dG9uQ29tcG9uZW50O1xuXG4gIC8qKlxuICAgKiBVbnN1YnNjcmliZSBhbnkgYWN0aXZlIHN1YnNjcmlwdGlvbnMgd2hlbiB0aGUgY29tcG9uZW50IGlzIGRlc3Ryb3llZFxuICAgKi9cbiAgcHJpdmF0ZSBjb21wb25lbnREZXN0cm95ZWQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIGNvbnN0cnVjdG9yKCkge31cblxuICAvKipcbiAgICogU3Vic2NyaWJlIHRvIGNoYW5nZXMgdG8gdGhlIG1lbnUgc3RhdHVzXG4gICAqL1xuICBwdWJsaWMgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5wb3B1cC5wb3BwZXJTdGF0dXNDaGFuZ2VcbiAgICAucGlwZSh0YWtlVW50aWwodGhpcy5jb21wb25lbnREZXN0cm95ZWQpKVxuICAgIC5zdWJzY3JpYmUoKGV2ZW50OiAndmlzaWJsZScgfCAnaGlkZGVuJykgPT4ge1xuICAgICAgdGhpcy5tZW51U3RhdHVzID0gZXZlbnQ7XG4gICAgICBpZih0aGlzLm1lbnVTdGF0dXMgPT09ICd2aXNpYmxlJykge1xuICAgICAgICB0aGlzLnBvcHVwT3BlbmVkLmVtaXQoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdXAgdGhlIHBvcHVwXG4gICAqL1xuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGxldCBwb3BwZXJPcHRpb25zOiBQb3BwZXIuUG9wcGVyT3B0aW9ucyA9IHtcblx0XHRcdG1vZGlmaWVyczoge1xuXHRcdFx0XHRwcmV2ZW50T3ZlcmZsb3c6IHtcblx0XHRcdFx0XHRib3VuZGFyaWVzRWxlbWVudDogJ3ZpZXdwb3J0J1xuXHRcdFx0XHR9XG4gICAgICB9LFxuICAgICAgcGxhY2VtZW50OiAnYm90dG9tLWVuZCdcbiAgICB9O1xuXG4gICAgaWYgKHRoaXMubWVudVBvc2l0aW9uID09PSAnbGVmdCcpIHtcbiAgICAgIHBvcHBlck9wdGlvbnMucGxhY2VtZW50ID0gJ2JvdHRvbS1zdGFydCc7XG4gICAgfVxuXG5cbiAgICBpZiAodGhpcy5wb3B1cEZpeGVkKSB7XG4gICAgICBwb3BwZXJPcHRpb25zLm9uQ3JlYXRlID0gKCkgPT4ge1xuICAgICAgICB0aGlzLnBvcHVwLmZpeFBvc2l0aW9uKCk7XG4gICAgICB9XG5cblx0XHRcdHBvcHBlck9wdGlvbnMub25VcGRhdGUgPSAoKSA9PiB7XG4gICAgICAgIC8vIEhpZGUgdGhlIHBvcHVwIHdoZW4gdGhlIGRyb3Bkb3duIGNoYW5nZXMgcG9zaXRpb24gZHVlIHRvIHdpbmRvdyByZXNpemVcbiAgICAgICAgLy8gb3IgY29udGFpbmVyIHNjcm9sbGluZ1xuICAgICAgICB0aGlzLnBvcHVwLmhpZGUoKTtcblx0XHRcdH1cbiAgICB9XG5cbiAgICB0aGlzLnBvcHVwLnBvcHBlck9wdGlvbnMgPSBwb3BwZXJPcHRpb25zO1xuICB9XG5cbiAgLyoqXG4gICAqIFVuc3Vic2NyaWJlIHRvIGFueSBhY3RpdmUgc3Vic2NyaXB0aW9uc1xuICAgKi9cbiAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuY29tcG9uZW50RGVzdHJveWVkLm5leHQoKTtcbiAgICB0aGlzLmNvbXBvbmVudERlc3Ryb3llZC51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIE9wZW4gYW5kIGNsb3NlIHRoZSBtZW51XG4gICAqL1xuICBwdWJsaWMgdG9nZ2xlTWVudShldmVudD86RXZlbnQpOnZvaWQge1xuICAgIGlmIChldmVudCkge1xuXHRcdFx0ZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICBpZiAodGhpcy5tZW51U3RhdHVzID09PSAnaGlkZGVuJykge1xuICAgICAgICBpZiAodGhpcy5pc0tleWJvYXJkRXZlbnQgJiYgdGhpcy5pdGVtcy5sZW5ndGgpIHtcbiAgICAgICAgICAvLyBTZXR1cCB0aGUgZmlyc3QgaXRlbSBpbiB0aGUgbGlzdCB0byBoaWdobGlnaHQgd2hlbiBvcGVuaW5nIHRoZVxuICAgICAgICAgIC8vIG1lbnUgdmlhIHRoZSBrZXlib2FyZCwgaWdub3JpbmcgaGVhZGluZ3NcblxuICAgICAgICAgIHRoaXMuaGlnaGxpZ2h0ZWRJdGVtID0gdGhpcy5pdGVtcy5maW5kKGl0ZW0gPT4gaXRlbS5kaXNwbGF5ICE9PSAnaGVhZGluZycpIHx8IG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5wb3B1cC5zaG93KCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnBvcHVwLmhpZGUoKTtcblxuICAgICAgICAvLyBSZXNldCB0aGUgaGlnaGxpZ2h0ZWQgaXRlbSBhbmQgb3VyIGtleWJvYXJkIGZsYWdcbiAgICAgICAgLy8gd2hlbiB3ZSBjbG9zZSB0aGUgcG9wdXBcbiAgICAgICAgdGhpcy5oaWdobGlnaHRlZEl0ZW0gPSBudWxsO1xuICAgICAgICB0aGlzLmlzS2V5Ym9hcmRFdmVudCA9IGZhbHNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBFbWl0IHRoZSBzZWxlY3RlZCBpdGVtIHdoZW4gaXQgY2hhbmdlcyBhbmQgY2xvc2UgdGhlIG1lbnVcbiAgICovXG4gIHB1YmxpYyBzZWxlY3RlZENoYW5nZWQoaXRlbTpNZW51SXRlbSk6dm9pZCB7XG4gICAgdGhpcy5pdGVtU2VsZWN0ZWQuZW1pdChpdGVtKTtcbiAgICB0aGlzLnRvZ2dsZU1lbnUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDbG9zZXMgdGhlIG1lbnUgaWYgdGhlIHRhYiBrZXkgaXMgcHJlc3NlZFxuICAgKi9cbiAgcHVibGljIGtleU5hdmlnYXRlKGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgc3dpdGNoIChldmVudC5rZXkpIHtcbiAgICAgIGNhc2UgJ0VudGVyJzpcbiAgICAgICAgdGhpcy5pc0tleWJvYXJkRXZlbnQgPSB0cnVlO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ0VzY2FwZSc6XG4gICAgICBjYXNlICdUYWInOlxuICAgICAgICBpZiAodGhpcy5tZW51U3RhdHVzID09PSAndmlzaWJsZScpIHtcbiAgICAgICAgICB0aGlzLnRvZ2dsZU1lbnUoZXZlbnQpO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuXG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm47XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiY29udHJvbFwiPlxuICA8ZWMtYnV0dG9uIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgICAgaWQ9XCJ7e2lkfX1fdG9nZ2xlXCJcbiAgICAgICAgICAgICAjZHJvcGRvd25Ub2dnbGVcbiAgICAgICAgICAgICBbbmdDbGFzc109XCJ7J2hhcy1hcnJvdyc6c2hvd0Fycm93LCAnYWN0aXZlJzogbWVudVN0YXR1cyA9PT0gJ3Zpc2libGUnLCAndGV4dC1sZWZ0JzogYnV0dG9uQWxpZ25tZW50ID09PSAnbGVmdCcsICd0ZXh0LXJpZ2h0JzogYnV0dG9uQWxpZ25tZW50ID09PSAncmlnaHQnfVwiXG4gICAgICAgICAgICAgKmVjUG9wdXA9XCJkcm9wZG93bk1lbnVcIlxuICAgICAgICAgICAgIFtsYWJlbF09XCJsYWJlbFwiXG4gICAgICAgICAgICAgW2ljb25dPVwiaWNvblwiXG4gICAgICAgICAgICAgW3RhYmluZGV4XT1cInRhYmluZGV4XCJcbiAgICAgICAgICAgICBbdHlwZV09XCJidXR0b25UeXBlXCJcbiAgICAgICAgICAgICBbY3VzdG9tVGVtcGxhdGVdPVwiYnV0dG9uQ3VzdG9tVGVtcGxhdGVcIlxuICAgICAgICAgICAgIFtwZW5kaW5nXT1cInBlbmRpbmdcIlxuICAgICAgICAgICAgIHRpdGxlPVwie3tidXR0b25UaXRsZX19XCJcbiAgICAgICAgICAgICAoY2xpY2spPVwidG9nZ2xlTWVudSgkZXZlbnQpXCJcbiAgICAgICAgICAgICAoa2V5ZG93bik9XCJrZXlOYXZpZ2F0ZSgkZXZlbnQpXCJcbiAgICAgICAgICAgICBbYXV0b2ZvY3VzXT1cImF1dG9mb2N1c1wiPlxuICA8L2VjLWJ1dHRvbj5cbiAgPHNwYW4gY2xhc3M9XCJhcnJvdyBpcy17e2J1dHRvblR5cGV9fVwiXG4gICAgICAgICpuZ0lmPVwic2hvd0Fycm93XCJcbiAgICAgICAgW2NsYXNzLmlzLWRpc2FibGVkXT1cImRpc2FibGVkXCI+XG4gICAgPGkgY2xhc3M9XCJlYy1pY29uIGljb24tY2FyZXQtZG93blwiIFtjbGFzcy5mbGlwLXldPVwibWVudVN0YXR1cyA9PT0gJ3Zpc2libGUnXCI+PC9pPlxuICA8L3NwYW4+XG48L2Rpdj5cblxuPG5nLXRlbXBsYXRlICNkcm9wZG93bk1lbnU+XG4gIDxkaXYgaWQ9XCJ7e2lkfX1fcG9wdXBcIlxuICAgICAgIGNsYXNzPVwicG9wdXBcIlxuICAgICAgIGVjT3ZlcmxheVxuICAgICAgIFtzdGF0dXNdPVwic3RhdHVzPy5zdGF0dXNcIlxuICAgICAgIFttZXNzYWdlXT1cInN0YXR1cz8ubWVzc2FnZVwiXG4gICAgICAgW2Rpc3BsYXlBc01hc2tdPVwidHJ1ZVwiPlxuICAgIDwhLS0gRHJvcGRvd24gTWVudSBUaXRsZSAtLT5cbiAgICA8aGVhZGVyIGlkPVwie3tpZH19X3RpdGxlXCJcbiAgICAgICAgICAgIGNsYXNzPVwidGV4dC1oZWFkaW5nLTIgcHgtMiBteS0yXCJcbiAgICAgICAgICAgICpuZ0lmPVwibWVudVRpdGxlXCI+e3ttZW51VGl0bGV9fVxuICAgIDwvaGVhZGVyPlxuICAgIDwhLS0gRHJvcGRvd24gTWVudSAtLT5cbiAgICA8ZWMtbWVudSBpZD1cInt7aWR9fV9tZW51XCJcbiAgICAgICAgICAgICBbY2xhc3Mud3JhcC1pdGVtc109XCJtZW51V2lkdGhcIlxuICAgICAgICAgICAgIFt0ZW1wbGF0ZVR5cGVdPVwibWVudVRlbXBsYXRlVHlwZVwiXG4gICAgICAgICAgICAgW3N0eWxlLndpZHRoXT1cIm1lbnVXaWR0aCA/IG1lbnVXaWR0aCArICdweCcgOiAnYXV0bydcIlxuICAgICAgICAgICAgIFtzdHlsZS5taW4td2lkdGhdPVwibWVudU1pbldpZHRoID8gbWVudU1pbldpZHRoICsgJ3B4JyA6ICdhdXRvJ1wiXG4gICAgICAgICAgICAgW3N0eWxlLmhlaWdodF09XCJtZW51SGVpZ2h0ID8gbWVudUhlaWdodCArICdweCcgOiAnYXV0bydcIlxuICAgICAgICAgICAgIFtpdGVtc109XCJpdGVtc1wiXG4gICAgICAgICAgICAgW3Nob3dOb0l0ZW1zXT1cInRydWVcIlxuICAgICAgICAgICAgIFtlbmFibGVLZXlOYXZdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgW2hpZ2hsaWdodGVkSXRlbV09XCJoaWdobGlnaHRlZEl0ZW1cIlxuICAgICAgICAgICAgIFtkcm9wZG93blRvZ2dsZUJ1dHRvbl09XCJkcm9wZG93blRvZ2dsZUJ1dHRvbi5idXR0b25FbGVtZW50XCJcbiAgICAgICAgICAgICAoc2VsZWN0ZWRDaGFuZ2VkKT1cInNlbGVjdGVkQ2hhbmdlZCgkZXZlbnQpXCI+XG4gICAgPC9lYy1tZW51PlxuICAgIDxmb290ZXIgKm5nSWY9XCJtZW51Rm9vdGVyXCI+e3ttZW51Rm9vdGVyfX08L2Zvb3Rlcj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPiJdfQ==
|
|
243
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2NvbnRyb2xzL2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy9kcm9wZG93bi9kcm9wZG93bi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBZSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUosT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFM0MsT0FBTyxFQUFFLHVCQUF1QixFQUFlLE1BQU0seURBQXlELENBQUM7QUFHL0csT0FBTyxFQUFFLGFBQWEsRUFBOEIsTUFBTSx3QkFBd0IsQ0FBQzs7Ozs7OztBQU9uRixNQUFNLE9BQU8saUJBQWlCO0lBZ0s1QjtRQXpKQTs7V0FFRztRQUNhLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFFbEM7O1dBRUc7UUFDYSxXQUFNLEdBQWtCLEVBQUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFDLENBQUM7UUFFekU7O1dBRUc7UUFDYSxhQUFRLEdBQVcsS0FBSyxDQUFDO1FBWXpDOztXQUVHO1FBQ2EsZUFBVSxHQUFnQixNQUFNLENBQUM7UUFRakQ7OztXQUdHO1FBQ2EsZ0JBQVcsR0FBVyxFQUFFLENBQUM7UUFPekM7O1dBRUc7UUFDYSxjQUFTLEdBQVksSUFBSSxDQUFDO1FBRTFDOztXQUVHO1FBQ2EsVUFBSyxHQUFlLEVBQUUsQ0FBQztRQUV2Qzs7V0FFRztR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QUFLO2dCQUtVLFVBQVU7c0JBQXpCLEtBQUs7Z0JBTVUsZUFBZTtzQkFBOUIsS0FBSztnQkFNVSxXQUFXO3NCQUExQixLQUFLO2dCQUtVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBS1UsU0FBUztzQkFBeEIsS0FBSztnQkFLVSxLQUFLO3NCQUFwQixLQUFLO2dCQUtVLGdCQUFnQjtzQkFBL0IsS0FBSztnQkFNVSxTQUFTO3NCQUF4QixLQUFLO2dCQUtVLFVBQVU7c0JBQXpCLEtBQUs7Z0JBS1UsU0FBUztzQkFBeEIsS0FBSztnQkFLVSxZQUFZO3NCQUEzQixLQUFLO2dCQUtVLFlBQVk7c0JBQTNCLEtBQUs7Z0JBS1UsVUFBVTtzQkFBekIsS0FBSztnQkFNVSxVQUFVO3NCQUF6QixLQUFLO2dCQUtVLG9CQUFvQjtzQkFBbkMsS0FBSztnQkFNVSxPQUFPO3NCQUR0QixXQUFXO3VCQUFDLGtCQUFrQjs7c0JBQzlCLEtBQUs7Z0JBS1csWUFBWTtzQkFBNUIsTUFBTTtnQkFLVSxXQUFXO3NCQUEzQixNQUFNO2dCQWtCaUQsTUFBTTtzQkFBN0QsU0FBUzt1QkFBQyxhQUFhLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFO2dCQUtnQixLQUFLO3NCQUFsRSxTQUFTO3VCQUFDLHVCQUF1QixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFLaEIsb0JBQW9CO3NCQUF2RCxTQUFTO3VCQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IFBvcHBlciBmcm9tICdwb3BwZXIuanMnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmltcG9ydCB7IFBvcHVwQ29udGFpbmVyRGlyZWN0aXZlLCBQb3B1cFN0YXR1cyB9IGZyb20gJy4uLy4uL3NoYXJlZC9kaXJlY3RpdmVzL3BvcHVwL3BvcHVwLWNvbnRhaW5lci5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBEaXNwbGF5U3RhdHVzIH0gZnJvbSAnLi4vLi4vc2hhcmVkL2Rpc3BsYXknO1xyXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQsIEJ1dHRvblR5cGUgfSBmcm9tICcuLi9idXR0b24vYnV0dG9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1lbnVDb21wb25lbnQsIE1lbnVJdGVtLCBNZW51VGVtcGxhdGVUeXBlIH0gZnJvbSAnLi4vbWVudS9tZW51LmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VjLWRyb3Bkb3duJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZHJvcGRvd24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2Ryb3Bkb3duLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIERyb3Bkb3duQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xyXG5cclxuICAvKipcclxuICAgKiBCYXNlIGlkIGZvciB0aGUgY29tcG9uZW50J3Mgc3ViLWVsZW1lbnRzXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGlkPzogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBBdXRvbWF0aWNhbGx5IGZvY3VzIHRoZSBkcm9wZG93biB0b2dnbGUgYnV0dG9uXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGF1dG9mb2N1cyA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBDb250cm9scyB0aGUgZGlzcGxheSBzdGF0dXMgb3ZlcmxheSBmb3IgdGhlIG1lbnVcclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgc3RhdHVzPzpEaXNwbGF5U3RhdHVzID0ge3N0YXR1czogJ2hhc0RhdGEnLCBtZXNzYWdlOiAnJ307XHJcblxyXG4gIC8qKlxyXG4gICAqIERpc2FibGUgdGhlIGJ1dHRvbiB0byBwcmV2ZW50IHRoZSBtZW51IGZyb20gYmVpbmcgb3BlbmVkXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVkOmJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgLyoqXHJcbiAgICogT3B0aW9uYWwgbGFiZWwgZm9yIHRoZSBidXR0b25cclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgbGFiZWw/OiBzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIE9wdGlvbmFsIGljb24gZm9yIHRoZSBidXR0b25cclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgaWNvbj86IHN0cmluZztcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIGJ1dHRvbiB0eXBlLCBkZWZhdWx0cyB0byBpY29uXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGJ1dHRvblR5cGU/OiBCdXR0b25UeXBlID0gJ2ljb24nO1xyXG5cclxuICAvKipcclxuICAgKiBPcHRpb25hbGx5IGFsaWduIHRoZSBsYWJlbCBvZiB0aGUgYnV0dG9uIHRvIHRoZSBsZWZ0IG9yIHJpZ2h0LiBJZiBub3Qgc2V0LFxyXG4gICAqIHdpbGwgYmUgY2VudGVyZWQuXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGJ1dHRvbkFsaWdubWVudD86ICdsZWZ0JyB8ICdyaWdodCc7XHJcblxyXG4gIC8qKlxyXG4gICAqIEFkZHMgYSB0b29sdGlwIHRvIHRoZSBkcm9wZG93biB0b2dnbGUgYnV0dG9uLiBTaG91bGQgb25seSBiZSB1c2VkIHdoZW5cclxuICAgKiB0aGUgdG9nZ2xlIGJ1dHRvblR5cGUgaXMgJ2ljb24nXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGJ1dHRvblRpdGxlOiBzdHJpbmcgPSAnJztcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIHRhYmluZGV4IG9mIHRoZSBidXR0b25cclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgdGFiaW5kZXg/OiBudW1iZXI7XHJcblxyXG4gIC8qKlxyXG4gICAqIERpc3BsYXkgYSBjYXJldCB3aXRoIHRoZSBidXR0b24gbGFiZWwgb3IgaWNvblxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBzaG93QXJyb3c6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICAvKipcclxuICAgKiBJdGVtcyB0byBkaXNwbGF5IGluIHRoZSBtZW51XHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGl0ZW1zOiBNZW51SXRlbVtdID0gW107XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSBtZW51IGl0ZW0gdGVtcGxhdGVcclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgbWVudVRlbXBsYXRlVHlwZTogTWVudVRlbXBsYXRlVHlwZSA9ICdsYWJlbCc7XHJcblxyXG4gIC8qKlxyXG4gICAqIERpc3BsYXkgYSBoZWFkZXIgb24gdGhlIG1lbnVcclxuICAgKiBAZGVwcmVjYXRlZCB1c2UgZmlyc3QgbWVudSBpdGVtIHdpdGggZGlzcGxheSBzZXQgdG8gJ2hlYWRpbmcnIGluc3RlYWRcclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgbWVudVRpdGxlPzogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBTZXQgYSBmaXhlZCBoZWlnaHQgZm9yIHRoZSBtZW51LCBhdXRvIGJ5IGRlZmF1bHRcclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgbWVudUhlaWdodD86IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogU2V0IGEgZml4ZWQgd2lkdGggaW4gcGl4ZWxzIGZvciB0aGUgbWVudSwgYXV0byBieSBkZWZhdWx0XHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIG1lbnVXaWR0aD86IG51bWJlcjtcclxuXHJcbiAgLyoqXHJcbiAgICogU2V0IGEgbWluLXdpZHRoIGluIHBpeGVscyBvbiB0aGUgbWVudS4gSXQgd2lsbCBleHBhbmQgaWYgdGhlIGNvbnRlbnQgaXMgZ3JlYXRlciB0aGFuIHRoZSBtaW4td2lkdGhcclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgbWVudU1pbldpZHRoPzogbnVtYmVyO1xyXG5cclxuICAvKipcclxuICAgKiBQaW4gdGhlIG1lbnUgdG8gdGhlIGxlZnQgb3IgcmlnaHQgb2YgdGhlIGJ1dHRvbi4gUmlnaHQgYnkgZGVmYXVsdFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBtZW51UG9zaXRpb24/OiAnbGVmdCcgfCAncmlnaHQnO1xyXG5cclxuICAvKipcclxuICAgKiBTdGlja3kgZm9vdGVyIHRvIGRpc3BsYXkgYXQgdGhlIGJvdHRvbSBvZiB0aGUgcG9wdXAgbWVudVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBtZW51Rm9vdGVyPzogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBGaXggcG9zaXRpb24gdGhlIG1lbnUgaW5zdGVhZCBvZiBhYnNvbHV0ZS4gVXNlZnVsIHdoZW4gdGhlIGRyb3Bkb3duIGlzIGluIGFcclxuICAgKiBkaWFsb2dcclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgcG9wdXBGaXhlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBQYXNzIGEgY3VzdG9tIHRlbXBsYXRlIHRvIHRoZSB0b2dnbGUgYnV0dG9uXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGJ1dHRvbkN1c3RvbVRlbXBsYXRlPzogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgLyoqXHJcbiAgKiBVc2VkIHRvIHNldCB0aGUgbWVudSBidXR0b25zIHN0YXRlIHRvIHBlbmRpbmdcclxuICAqL1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtcGVuZGluZycpXHJcbiAgQElucHV0KCkgcHVibGljIHBlbmRpbmc6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgLyoqXHJcbiAgICogRW1pdHMgYW4gZXZlbnQgd2hlbiBhIG1lbnUgaXRlbSBpcyBzZWxlY3RlZFxyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBwdWJsaWMgaXRlbVNlbGVjdGVkOiBFdmVudEVtaXR0ZXI8TWVudUl0ZW0+ID0gbmV3IEV2ZW50RW1pdHRlcjxNZW51SXRlbT4oKTtcclxuXHJcbiAgLyoqXHJcbiAgICogRW1pdHMgYW4gZXZlbnQgd2hlbiB0aGUgcG9wdXAgbWVudSBvcGVuc1xyXG4gICAqL1xyXG4gIEBPdXRwdXQoKSBwdWJsaWMgcG9wdXBPcGVuZWQ6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIHN0YXR1cyBvZiB0aGUgbWVudVxyXG4gICAqL1xyXG4gIHB1YmxpYyBtZW51U3RhdHVzOiBQb3B1cFN0YXR1cyA9ICdoaWRkZW4nO1xyXG5cclxuICAvKiogSXRlbSB0byBoaWdobGlnaHQgd2hlbiB0aGUgbWVudSBpcyBvcGVuZWQsIHVzZWQgd2hlbiB0aGUgdXNlclxyXG4gICAqICBvcGVucyB0aGUgbWVudSB2aWEgdGhlIGtleWJvYXJkXHJcbiAgICovXHJcbiAgcHVibGljIGhpZ2hsaWdodGVkSXRlbTogTWVudUl0ZW0gfCBudWxsID0gbnVsbDtcclxuXHJcbiAgLyoqIFVzZWQgdG8ga25vdyBpZiB0aGUgbWVudSB3YXMgdG9nZ2xlZCB2aWEgdGhlIGtleWJvYXJkICovXHJcbiAgcHJpdmF0ZSBpc0tleWJvYXJkRXZlbnQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgLyoqXHJcbiAgICogSW50ZXJuYWwgcmVmZXJlbmNlIHRvIHRoZSBtZW51IGVsZW1lbnRcclxuICAgKi9cclxuICBAVmlld0NoaWxkKE1lbnVDb21wb25lbnQsIHsgcmVhZDogRWxlbWVudFJlZiB9KSBwcml2YXRlIG1lbnVFbCE6RWxlbWVudFJlZjtcclxuXHJcbiAgLyoqXHJcbiAgICogSW50ZXJuYWwgcmVmZXJlbmNlIHRvIHRoZSBwb3B1cCBkaXJlY3RpdmVcclxuICAgKi9cclxuICBAVmlld0NoaWxkKFBvcHVwQ29udGFpbmVyRGlyZWN0aXZlLCB7IHN0YXRpYzogdHJ1ZSB9KSBwcml2YXRlIHBvcHVwITogUG9wdXBDb250YWluZXJEaXJlY3RpdmU7XHJcblxyXG4gIC8qKlxyXG4gICAqIEdldCBhIHJlZmVyZW5jZSB0byB0aGUgdG9nZ2xlIGJ1dHRvblxyXG4gICAqL1xyXG4gIEBWaWV3Q2hpbGQoJ2Ryb3Bkb3duVG9nZ2xlJykgcHVibGljIGRyb3Bkb3duVG9nZ2xlQnV0dG9uITogQnV0dG9uQ29tcG9uZW50O1xyXG5cclxuICAvKipcclxuICAgKiBVbnN1YnNjcmliZSBhbnkgYWN0aXZlIHN1YnNjcmlwdGlvbnMgd2hlbiB0aGUgY29tcG9uZW50IGlzIGRlc3Ryb3llZFxyXG4gICAqL1xyXG4gIHByaXZhdGUgY29tcG9uZW50RGVzdHJveWVkOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7fVxyXG5cclxuICAvKipcclxuICAgKiBTdWJzY3JpYmUgdG8gY2hhbmdlcyB0byB0aGUgbWVudSBzdGF0dXNcclxuICAgKi9cclxuICBwdWJsaWMgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLnBvcHVwLnBvcHBlclN0YXR1c0NoYW5nZVxyXG4gICAgLnBpcGUodGFrZVVudGlsKHRoaXMuY29tcG9uZW50RGVzdHJveWVkKSlcclxuICAgIC5zdWJzY3JpYmUoKGV2ZW50OiAndmlzaWJsZScgfCAnaGlkZGVuJykgPT4ge1xyXG4gICAgICB0aGlzLm1lbnVTdGF0dXMgPSBldmVudDtcclxuICAgICAgaWYodGhpcy5tZW51U3RhdHVzID09PSAndmlzaWJsZScpIHtcclxuICAgICAgICB0aGlzLnBvcHVwT3BlbmVkLmVtaXQoKTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBTZXQgdXAgdGhlIHBvcHVwXHJcbiAgICovXHJcbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIGxldCBwb3BwZXJPcHRpb25zOiBQb3BwZXIuUG9wcGVyT3B0aW9ucyA9IHtcclxuXHRcdFx0bW9kaWZpZXJzOiB7XHJcblx0XHRcdFx0cHJldmVudE92ZXJmbG93OiB7XHJcblx0XHRcdFx0XHRib3VuZGFyaWVzRWxlbWVudDogJ3ZpZXdwb3J0J1xyXG5cdFx0XHRcdH1cclxuICAgICAgfSxcclxuICAgICAgcGxhY2VtZW50OiAnYm90dG9tLWVuZCdcclxuICAgIH07XHJcblxyXG4gICAgaWYgKHRoaXMubWVudVBvc2l0aW9uID09PSAnbGVmdCcpIHtcclxuICAgICAgcG9wcGVyT3B0aW9ucy5wbGFjZW1lbnQgPSAnYm90dG9tLXN0YXJ0JztcclxuICAgIH1cclxuXHJcblxyXG4gICAgaWYgKHRoaXMucG9wdXBGaXhlZCkge1xyXG4gICAgICBwb3BwZXJPcHRpb25zLm9uQ3JlYXRlID0gKCkgPT4ge1xyXG4gICAgICAgIHRoaXMucG9wdXAuZml4UG9zaXRpb24oKTtcclxuICAgICAgfVxyXG5cclxuXHRcdFx0cG9wcGVyT3B0aW9ucy5vblVwZGF0ZSA9ICgpID0+IHtcclxuICAgICAgICAvLyBIaWRlIHRoZSBwb3B1cCB3aGVuIHRoZSBkcm9wZG93biBjaGFuZ2VzIHBvc2l0aW9uIGR1ZSB0byB3aW5kb3cgcmVzaXplXHJcbiAgICAgICAgLy8gb3IgY29udGFpbmVyIHNjcm9sbGluZ1xyXG4gICAgICAgIHRoaXMucG9wdXAuaGlkZSgpO1xyXG5cdFx0XHR9XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5wb3B1cC5wb3BwZXJPcHRpb25zID0gcG9wcGVyT3B0aW9ucztcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFVuc3Vic2NyaWJlIHRvIGFueSBhY3RpdmUgc3Vic2NyaXB0aW9uc1xyXG4gICAqL1xyXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMuY29tcG9uZW50RGVzdHJveWVkLm5leHQoKTtcclxuICAgIHRoaXMuY29tcG9uZW50RGVzdHJveWVkLnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBPcGVuIGFuZCBjbG9zZSB0aGUgbWVudVxyXG4gICAqL1xyXG4gIHB1YmxpYyB0b2dnbGVNZW51KGV2ZW50PzpFdmVudCk6dm9pZCB7XHJcbiAgICBpZiAoZXZlbnQpIHtcclxuXHRcdFx0ZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XHJcbiAgICAgIGlmICh0aGlzLm1lbnVTdGF0dXMgPT09ICdoaWRkZW4nKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuaXNLZXlib2FyZEV2ZW50ICYmIHRoaXMuaXRlbXMubGVuZ3RoKSB7XHJcbiAgICAgICAgICAvLyBTZXR1cCB0aGUgZmlyc3QgaXRlbSBpbiB0aGUgbGlzdCB0byBoaWdobGlnaHQgd2hlbiBvcGVuaW5nIHRoZVxyXG4gICAgICAgICAgLy8gbWVudSB2aWEgdGhlIGtleWJvYXJkLCBpZ25vcmluZyBoZWFkaW5nc1xyXG5cclxuICAgICAgICAgIHRoaXMuaGlnaGxpZ2h0ZWRJdGVtID0gdGhpcy5pdGVtcy5maW5kKGl0ZW0gPT4gaXRlbS5kaXNwbGF5ICE9PSAnaGVhZGluZycpIHx8IG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMucG9wdXAuc2hvdygpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMucG9wdXAuaGlkZSgpO1xyXG5cclxuICAgICAgICAvLyBSZXNldCB0aGUgaGlnaGxpZ2h0ZWQgaXRlbSBhbmQgb3VyIGtleWJvYXJkIGZsYWdcclxuICAgICAgICAvLyB3aGVuIHdlIGNsb3NlIHRoZSBwb3B1cFxyXG4gICAgICAgIHRoaXMuaGlnaGxpZ2h0ZWRJdGVtID0gbnVsbDtcclxuICAgICAgICB0aGlzLmlzS2V5Ym9hcmRFdmVudCA9IGZhbHNlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBFbWl0IHRoZSBzZWxlY3RlZCBpdGVtIHdoZW4gaXQgY2hhbmdlcyBhbmQgY2xvc2UgdGhlIG1lbnVcclxuICAgKi9cclxuICBwdWJsaWMgc2VsZWN0ZWRDaGFuZ2VkKGl0ZW06TWVudUl0ZW0pOnZvaWQge1xyXG4gICAgdGhpcy5pdGVtU2VsZWN0ZWQuZW1pdChpdGVtKTtcclxuICAgIHRoaXMudG9nZ2xlTWVudSgpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgICogQ2xvc2VzIHRoZSBtZW51IGlmIHRoZSB0YWIga2V5IGlzIHByZXNzZWRcclxuICAgKi9cclxuICBwdWJsaWMga2V5TmF2aWdhdGUoZXZlbnQ6IEtleWJvYXJkRXZlbnQpIHtcclxuICAgIHN3aXRjaCAoZXZlbnQua2V5KSB7XHJcbiAgICAgIGNhc2UgJ0VudGVyJzpcclxuICAgICAgICB0aGlzLmlzS2V5Ym9hcmRFdmVudCA9IHRydWU7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgJ0VzY2FwZSc6XHJcbiAgICAgIGNhc2UgJ1RhYic6XHJcbiAgICAgICAgaWYgKHRoaXMubWVudVN0YXR1cyA9PT0gJ3Zpc2libGUnKSB7XHJcbiAgICAgICAgICB0aGlzLnRvZ2dsZU1lbnUoZXZlbnQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGRlZmF1bHQ6XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiY29udHJvbFwiPlxyXG4gIDxlYy1idXR0b24gW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgICAgICAgICAgIGlkPVwie3tpZH19X3RvZ2dsZVwiXHJcbiAgICAgICAgICAgICAjZHJvcGRvd25Ub2dnbGVcclxuICAgICAgICAgICAgIFtuZ0NsYXNzXT1cInsnaGFzLWFycm93JzpzaG93QXJyb3csICdhY3RpdmUnOiBtZW51U3RhdHVzID09PSAndmlzaWJsZScsICd0ZXh0LWxlZnQnOiBidXR0b25BbGlnbm1lbnQgPT09ICdsZWZ0JywgJ3RleHQtcmlnaHQnOiBidXR0b25BbGlnbm1lbnQgPT09ICdyaWdodCd9XCJcclxuICAgICAgICAgICAgICplY1BvcHVwPVwiZHJvcGRvd25NZW51XCJcclxuICAgICAgICAgICAgIFtsYWJlbF09XCJsYWJlbFwiXHJcbiAgICAgICAgICAgICBbaWNvbl09XCJpY29uXCJcclxuICAgICAgICAgICAgIFt0YWJpbmRleF09XCJ0YWJpbmRleFwiXHJcbiAgICAgICAgICAgICBbdHlwZV09XCJidXR0b25UeXBlXCJcclxuICAgICAgICAgICAgIFtjdXN0b21UZW1wbGF0ZV09XCJidXR0b25DdXN0b21UZW1wbGF0ZVwiXHJcbiAgICAgICAgICAgICBbcGVuZGluZ109XCJwZW5kaW5nXCJcclxuICAgICAgICAgICAgIHRpdGxlPVwie3tidXR0b25UaXRsZX19XCJcclxuICAgICAgICAgICAgIChjbGljayk9XCJ0b2dnbGVNZW51KCRldmVudClcIlxyXG4gICAgICAgICAgICAgKGtleWRvd24pPVwia2V5TmF2aWdhdGUoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICBbYXV0b2ZvY3VzXT1cImF1dG9mb2N1c1wiPlxyXG4gIDwvZWMtYnV0dG9uPlxyXG4gIDxzcGFuIGNsYXNzPVwiYXJyb3cgaXMte3tidXR0b25UeXBlfX1cIlxyXG4gICAgICAgICpuZ0lmPVwic2hvd0Fycm93XCJcclxuICAgICAgICBbY2xhc3MuaXMtZGlzYWJsZWRdPVwiZGlzYWJsZWRcIj5cclxuICAgIDxpIGNsYXNzPVwiZWMtaWNvbiBpY29uLWNhcmV0LWRvd25cIiBbY2xhc3MuZmxpcC15XT1cIm1lbnVTdGF0dXMgPT09ICd2aXNpYmxlJ1wiPjwvaT5cclxuICA8L3NwYW4+XHJcbjwvZGl2PlxyXG5cclxuPG5nLXRlbXBsYXRlICNkcm9wZG93bk1lbnU+XHJcbiAgPGRpdiBpZD1cInt7aWR9fV9wb3B1cFwiXHJcbiAgICAgICBjbGFzcz1cInBvcHVwXCJcclxuICAgICAgIGVjT3ZlcmxheVxyXG4gICAgICAgW3N0YXR1c109XCJzdGF0dXM/LnN0YXR1c1wiXHJcbiAgICAgICBbbWVzc2FnZV09XCJzdGF0dXM/Lm1lc3NhZ2VcIlxyXG4gICAgICAgW2Rpc3BsYXlBc01hc2tdPVwidHJ1ZVwiPlxyXG4gICAgPCEtLSBEcm9wZG93biBNZW51IFRpdGxlIC0tPlxyXG4gICAgPGhlYWRlciBpZD1cInt7aWR9fV90aXRsZVwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwidGV4dC1oZWFkaW5nLTIgcHgtMiBteS0yXCJcclxuICAgICAgICAgICAgKm5nSWY9XCJtZW51VGl0bGVcIj57e21lbnVUaXRsZX19XHJcbiAgICA8L2hlYWRlcj5cclxuICAgIDwhLS0gRHJvcGRvd24gTWVudSAtLT5cclxuICAgIDxlYy1tZW51IGlkPVwie3tpZH19X21lbnVcIlxyXG4gICAgICAgICAgICAgW2NsYXNzLndyYXAtaXRlbXNdPVwibWVudVdpZHRoXCJcclxuICAgICAgICAgICAgIFt0ZW1wbGF0ZVR5cGVdPVwibWVudVRlbXBsYXRlVHlwZVwiXHJcbiAgICAgICAgICAgICBbc3R5bGUud2lkdGhdPVwibWVudVdpZHRoID8gbWVudVdpZHRoICsgJ3B4JyA6ICdhdXRvJ1wiXHJcbiAgICAgICAgICAgICBbc3R5bGUubWluLXdpZHRoXT1cIm1lbnVNaW5XaWR0aCA/IG1lbnVNaW5XaWR0aCArICdweCcgOiAnYXV0bydcIlxyXG4gICAgICAgICAgICAgW3N0eWxlLmhlaWdodF09XCJtZW51SGVpZ2h0ID8gbWVudUhlaWdodCArICdweCcgOiAnYXV0bydcIlxyXG4gICAgICAgICAgICAgW2l0ZW1zXT1cIml0ZW1zXCJcclxuICAgICAgICAgICAgIFtzaG93Tm9JdGVtc109XCJ0cnVlXCJcclxuICAgICAgICAgICAgIFtlbmFibGVLZXlOYXZdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgICBbaGlnaGxpZ2h0ZWRJdGVtXT1cImhpZ2hsaWdodGVkSXRlbVwiXHJcbiAgICAgICAgICAgICBbZHJvcGRvd25Ub2dnbGVCdXR0b25dPVwiZHJvcGRvd25Ub2dnbGVCdXR0b24uYnV0dG9uRWxlbWVudFwiXHJcbiAgICAgICAgICAgICAoc2VsZWN0ZWRDaGFuZ2VkKT1cInNlbGVjdGVkQ2hhbmdlZCgkZXZlbnQpXCI+XHJcbiAgICA8L2VjLW1lbnU+XHJcbiAgICA8Zm9vdGVyICpuZ0lmPVwibWVudUZvb3RlclwiPnt7bWVudUZvb3Rlcn19PC9mb290ZXI+XHJcbiAgPC9kaXY+XHJcbjwvbmctdGVtcGxhdGU+Il19
|
|
@@ -225,11 +225,11 @@ export class FileUploadComponent extends FormControlBase {
|
|
|
225
225
|
}
|
|
226
226
|
}
|
|
227
227
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FileUploadComponent, deps: [{ token: i1.ValidationMessageService }, { token: i2.FormGroupHelper }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
228
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FileUploadComponent, selector: "ec-file-upload", inputs: { formModel: "formModel", placeholder: "placeholder", fileType: "fileType", fileOutput: "fileOutput", customExtensions: "customExtensions", onFileSelected: "onFileSelected", onMultipleFilesSelected: "onMultipleFilesSelected", displayType: "displayType", buttonLabel: "buttonLabel", buttonType: "buttonType", multiSelect: "multiSelect", validateBeforeUpload: "validateBeforeUpload" }, viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ec-form-group [label]=\"label\"\n [formGroup]=\"formModel\"\n [helpPopover]=\"helpPopover\"\n [helpPopoverPosition]=\"helpPopoverPosition\"\n class=\"mb-0\">\n <div class=\"d-flex control-group\">\n <div class=\"d-flex flex-grow position-relative\">\n <input #fileInput\n id=\"{{inputId}}_input\"\n type=\"file\"\n tabindex=\"-1\"\n [attr.accept]=\"fileTypeAccept\"\n (change)=\"fileChange($event.target.files)\"\n [class.has-value]=\"displayType === 'file' ? formModel?.get('name').value : undefined\"\n [attr.multiple]=\"multiSelect ? 'multiple' : undefined\">\n <ec-form-control *ngIf=\"displayType === 'file'\"\n id=\"{{inputId}}_formControl\"\n class=\"text-truncate\"\n [required]=\"required\"\n [pending]=\"pending || formModel?.pending\">\n <input id=\"{{inputId}}_name\"\n [formControl]=\"formModel?.get('name')\"\n type=\"text\"\n [placeholder]=\"placeholder\"\n [tabindex]=\"-1\">\n </ec-form-control>\n </div>\n <ec-button *ngIf=\"displayType === 'file'\"\n #browseBtn\n id=\"{{inputId}}_browseBtn\"\n (clicked)=\"fileInput.click()\"\n type=\"secondary\"\n [tabindex]=\"tabindex\"\n [disabled]=\"formModel?.get('name').disabled\"\n label=\"Browse\"\n [autofocus]=\"autofocus\">\n </ec-button>\n </div>\n <ec-button *ngIf=\"displayType === 'button'\"\n id=\"{{inputId}}_btn\"\n [pending]=\"pending\"\n [type]=\"buttonType\"\n [label]=\"buttonLabel ?? 'Browse_TC' | translate\"\n (clicked)=\"fileInput.click()\"\n style=\"width: 100%;\">\n </ec-button>\n</ec-form-group>", styles: [":host{display:block;margin-bottom:1rem}ec-form-control{margin-bottom:0}ec-form-control ::ng-deep>.ec-focus-ring{display:none!important}input[type=file]{opacity:0;display:block;position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;cursor:pointer}input[type=file].has-value{width:calc(100% - 1.5rem)}ec-button{--ec-button-border-color-secondary: var(--ec-form-control-border-color);--ec-button-color-icon-secondary: var(--ec-color-icon)}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.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: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i5.ButtonComponent, selector: "ec-button", inputs: ["id", "disabled", "icon", "label", "badge", "tabindex", "type", "pending", "pendingIcon", "customTemplate", "isSubmit", "autofocus"], outputs: ["clicked"] }, { kind: "component", type: i6.FormControlComponent, selector: "ec-form-control", inputs: ["id", "icon", "actionIcon", "showClear", "formModel", "autofocus", "tabindex", "pending", "required", "readonly"], outputs: ["actionClicked"] }, { kind: "component", type: i7.FormGroupComponent, selector: "ec-form-group", inputs: ["id", "label", "formGroup", "labelPosition", "overrideValidationError", "hideValidationMessage", "helpPopover", "helpPopoverPosition"] }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }] }); }
|
|
228
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FileUploadComponent, selector: "ec-file-upload", inputs: { formModel: "formModel", placeholder: "placeholder", fileType: "fileType", fileOutput: "fileOutput", customExtensions: "customExtensions", onFileSelected: "onFileSelected", onMultipleFilesSelected: "onMultipleFilesSelected", displayType: "displayType", buttonLabel: "buttonLabel", buttonType: "buttonType", multiSelect: "multiSelect", validateBeforeUpload: "validateBeforeUpload" }, viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ec-form-group [label]=\"label\"\r\n [formGroup]=\"formModel\"\r\n [helpPopover]=\"helpPopover\"\r\n [helpPopoverPosition]=\"helpPopoverPosition\"\r\n class=\"mb-0\">\r\n <div class=\"d-flex control-group\">\r\n <div class=\"d-flex flex-grow position-relative\">\r\n <input #fileInput\r\n id=\"{{inputId}}_input\"\r\n type=\"file\"\r\n tabindex=\"-1\"\r\n [attr.accept]=\"fileTypeAccept\"\r\n (change)=\"fileChange($event.target.files)\"\r\n [class.has-value]=\"displayType === 'file' ? formModel?.get('name').value : undefined\"\r\n [attr.multiple]=\"multiSelect ? 'multiple' : undefined\">\r\n <ec-form-control *ngIf=\"displayType === 'file'\"\r\n id=\"{{inputId}}_formControl\"\r\n class=\"text-truncate\"\r\n [required]=\"required\"\r\n [pending]=\"pending || formModel?.pending\">\r\n <input id=\"{{inputId}}_name\"\r\n [formControl]=\"formModel?.get('name')\"\r\n type=\"text\"\r\n [placeholder]=\"placeholder\"\r\n [tabindex]=\"-1\">\r\n </ec-form-control>\r\n </div>\r\n <ec-button *ngIf=\"displayType === 'file'\"\r\n #browseBtn\r\n id=\"{{inputId}}_browseBtn\"\r\n (clicked)=\"fileInput.click()\"\r\n type=\"secondary\"\r\n [tabindex]=\"tabindex\"\r\n [disabled]=\"formModel?.get('name').disabled\"\r\n label=\"Browse\"\r\n [autofocus]=\"autofocus\">\r\n </ec-button>\r\n </div>\r\n <ec-button *ngIf=\"displayType === 'button'\"\r\n id=\"{{inputId}}_btn\"\r\n [pending]=\"pending\"\r\n [type]=\"buttonType\"\r\n [label]=\"buttonLabel ?? 'Browse_TC' | translate\"\r\n (clicked)=\"fileInput.click()\"\r\n style=\"width: 100%;\">\r\n </ec-button>\r\n</ec-form-group>", styles: [":host{display:block;margin-bottom:1rem}ec-form-control{margin-bottom:0}ec-form-control ::ng-deep>.ec-focus-ring{display:none!important}input[type=file]{opacity:0;display:block;position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;cursor:pointer}input[type=file].has-value{width:calc(100% - 1.5rem)}ec-button{--ec-button-border-color-secondary: var(--ec-form-control-border-color);--ec-button-color-icon-secondary: var(--ec-color-icon)}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.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: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i5.ButtonComponent, selector: "ec-button", inputs: ["id", "disabled", "icon", "label", "badge", "tabindex", "type", "pending", "pendingIcon", "customTemplate", "isSubmit", "autofocus"], outputs: ["clicked"] }, { kind: "component", type: i6.FormControlComponent, selector: "ec-form-control", inputs: ["id", "icon", "actionIcon", "showClear", "formModel", "autofocus", "tabindex", "pending", "required", "readonly"], outputs: ["actionClicked"] }, { kind: "component", type: i7.FormGroupComponent, selector: "ec-form-group", inputs: ["id", "label", "formGroup", "labelPosition", "overrideValidationError", "hideValidationMessage", "helpPopover", "helpPopoverPosition"] }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }] }); }
|
|
229
229
|
}
|
|
230
230
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FileUploadComponent, decorators: [{
|
|
231
231
|
type: Component,
|
|
232
|
-
args: [{ selector: "ec-file-upload", template: "<ec-form-group [label]=\"label\"\n [formGroup]=\"formModel\"\n [helpPopover]=\"helpPopover\"\n [helpPopoverPosition]=\"helpPopoverPosition\"\n class=\"mb-0\">\n <div class=\"d-flex control-group\">\n <div class=\"d-flex flex-grow position-relative\">\n <input #fileInput\n id=\"{{inputId}}_input\"\n type=\"file\"\n tabindex=\"-1\"\n [attr.accept]=\"fileTypeAccept\"\n (change)=\"fileChange($event.target.files)\"\n [class.has-value]=\"displayType === 'file' ? formModel?.get('name').value : undefined\"\n [attr.multiple]=\"multiSelect ? 'multiple' : undefined\">\n <ec-form-control *ngIf=\"displayType === 'file'\"\n id=\"{{inputId}}_formControl\"\n class=\"text-truncate\"\n [required]=\"required\"\n [pending]=\"pending || formModel?.pending\">\n <input id=\"{{inputId}}_name\"\n [formControl]=\"formModel?.get('name')\"\n type=\"text\"\n [placeholder]=\"placeholder\"\n [tabindex]=\"-1\">\n </ec-form-control>\n </div>\n <ec-button *ngIf=\"displayType === 'file'\"\n #browseBtn\n id=\"{{inputId}}_browseBtn\"\n (clicked)=\"fileInput.click()\"\n type=\"secondary\"\n [tabindex]=\"tabindex\"\n [disabled]=\"formModel?.get('name').disabled\"\n label=\"Browse\"\n [autofocus]=\"autofocus\">\n </ec-button>\n </div>\n <ec-button *ngIf=\"displayType === 'button'\"\n id=\"{{inputId}}_btn\"\n [pending]=\"pending\"\n [type]=\"buttonType\"\n [label]=\"buttonLabel ?? 'Browse_TC' | translate\"\n (clicked)=\"fileInput.click()\"\n style=\"width: 100%;\">\n </ec-button>\n</ec-form-group>", styles: [":host{display:block;margin-bottom:1rem}ec-form-control{margin-bottom:0}ec-form-control ::ng-deep>.ec-focus-ring{display:none!important}input[type=file]{opacity:0;display:block;position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;cursor:pointer}input[type=file].has-value{width:calc(100% - 1.5rem)}ec-button{--ec-button-border-color-secondary: var(--ec-form-control-border-color);--ec-button-color-icon-secondary: var(--ec-color-icon)}\n"] }]
|
|
232
|
+
args: [{ selector: "ec-file-upload", template: "<ec-form-group [label]=\"label\"\r\n [formGroup]=\"formModel\"\r\n [helpPopover]=\"helpPopover\"\r\n [helpPopoverPosition]=\"helpPopoverPosition\"\r\n class=\"mb-0\">\r\n <div class=\"d-flex control-group\">\r\n <div class=\"d-flex flex-grow position-relative\">\r\n <input #fileInput\r\n id=\"{{inputId}}_input\"\r\n type=\"file\"\r\n tabindex=\"-1\"\r\n [attr.accept]=\"fileTypeAccept\"\r\n (change)=\"fileChange($event.target.files)\"\r\n [class.has-value]=\"displayType === 'file' ? formModel?.get('name').value : undefined\"\r\n [attr.multiple]=\"multiSelect ? 'multiple' : undefined\">\r\n <ec-form-control *ngIf=\"displayType === 'file'\"\r\n id=\"{{inputId}}_formControl\"\r\n class=\"text-truncate\"\r\n [required]=\"required\"\r\n [pending]=\"pending || formModel?.pending\">\r\n <input id=\"{{inputId}}_name\"\r\n [formControl]=\"formModel?.get('name')\"\r\n type=\"text\"\r\n [placeholder]=\"placeholder\"\r\n [tabindex]=\"-1\">\r\n </ec-form-control>\r\n </div>\r\n <ec-button *ngIf=\"displayType === 'file'\"\r\n #browseBtn\r\n id=\"{{inputId}}_browseBtn\"\r\n (clicked)=\"fileInput.click()\"\r\n type=\"secondary\"\r\n [tabindex]=\"tabindex\"\r\n [disabled]=\"formModel?.get('name').disabled\"\r\n label=\"Browse\"\r\n [autofocus]=\"autofocus\">\r\n </ec-button>\r\n </div>\r\n <ec-button *ngIf=\"displayType === 'button'\"\r\n id=\"{{inputId}}_btn\"\r\n [pending]=\"pending\"\r\n [type]=\"buttonType\"\r\n [label]=\"buttonLabel ?? 'Browse_TC' | translate\"\r\n (clicked)=\"fileInput.click()\"\r\n style=\"width: 100%;\">\r\n </ec-button>\r\n</ec-form-group>", styles: [":host{display:block;margin-bottom:1rem}ec-form-control{margin-bottom:0}ec-form-control ::ng-deep>.ec-focus-ring{display:none!important}input[type=file]{opacity:0;display:block;position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;cursor:pointer}input[type=file].has-value{width:calc(100% - 1.5rem)}ec-button{--ec-button-border-color-secondary: var(--ec-form-control-border-color);--ec-button-color-icon-secondary: var(--ec-color-icon)}\n"] }]
|
|
233
233
|
}], ctorParameters: () => [{ type: i1.ValidationMessageService }, { type: i2.FormGroupHelper }], propDecorators: { formModel: [{
|
|
234
234
|
type: Input
|
|
235
235
|
}], placeholder: [{
|
|
@@ -258,4 +258,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
258
258
|
type: ViewChild,
|
|
259
259
|
args: ["fileInput", { read: ElementRef, static: true }]
|
|
260
260
|
}] } });
|
|
261
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2NvbnRyb2xzL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQW9DLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRyxPQUFPLEVBQXFDLFdBQVcsRUFBRSxTQUFTLEVBQWUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RyxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUd6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7OztBQUtyQyxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRztJQUNoQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUM7SUFDYixLQUFLLEVBQUUsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDO0NBQ3pCLENBQUM7QUFvQkYsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGVBQWU7SUFFdEQsZ0VBQWdFO0lBQ3pELE1BQU0sQ0FBQyxZQUFZLENBQ3hCLFVBQXlCLEVBQ3pCLFdBQW9CLEtBQUs7SUFDekIsNE9BQTRPO0lBQzVPLGNBQXNEO1FBRXRELElBQUksU0FBUyxHQUFHLElBQUksU0FBUyxDQUFzQjtZQUNqRCxJQUFJLEVBQUUsSUFBSSxXQUFXLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFDLFVBQVUsRUFBRSxVQUFVLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBQyxDQUFDO1lBQ3JILElBQUksRUFBRSxJQUFJLFdBQVcsQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxFQUFFLFVBQVUsQ0FBQztZQUN0RSxnQkFBZ0IsRUFBRSxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUM7WUFDdkMsWUFBWSxFQUFFLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQztTQUNwQyxDQUFDLENBQUM7UUFDSCxJQUFJLFFBQVEsRUFBRSxDQUFDO1lBQ2IsU0FBUyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3RCLENBQUM7UUFDRCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ksTUFBTSxDQUFDLGdCQUFnQixDQUFDLFFBQStCO1FBQzVELE9BQU8sS0FBSyxFQUFFLE9BQXdCLEVBQUUsRUFBRTtZQUN4QyxJQUFJLE9BQU8sQ0FBQyxLQUFLLElBQUksT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO2dCQUNwQyxJQUFJLElBQUksR0FBRyxPQUFPLENBQUMsS0FBYSxDQUFDO2dCQUNqQyxxRUFBcUU7Z0JBQ3JFLElBQUksTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLEVBQUUsS0FBZSxDQUFDO2dCQUNyRSxPQUFPLE1BQU0sUUFBUSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztZQUN0QyxDQUFDO1lBQ0QsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDLENBQUE7SUFDSCxDQUFDO0lBd0VELFlBQ1ksd0JBQWtELEVBQ2xELGVBQWdDO1FBRTFDLEtBQUssQ0FBQyx3QkFBd0IsRUFBRSxlQUFlLENBQUMsQ0FBQztRQUh2Qyw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO1FBQ2xELG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQXRFNUM7O1dBRUc7UUFDYSxnQkFBVyxHQUFZLGdCQUFnQixDQUFDO1FBUXhEOztXQUVHO1FBQ2EsZUFBVSxHQUFnQixRQUFRLENBQUM7UUFtQm5EOzs7O1dBSUc7UUFDYSxnQkFBVyxHQUF1QixNQUFNLENBQUM7UUFPekQ7O1dBRUc7UUFDYSxlQUFVLEdBQVksU0FBUyxDQUFDO1FBRWhEOztXQUVHO1FBQ2EsZ0JBQVcsR0FBYSxLQUFLLENBQUM7UUFFOUM7Ozs7O1dBS0c7UUFDYSx5QkFBb0IsR0FBWSxLQUFLLENBQUM7SUFZdEQsQ0FBQztJQUVNLFdBQVcsQ0FBQyxPQUFzQjtRQUN2QyxLQUFLLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRTNCLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFTSxRQUFRO1FBQ2IsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBRWpCLDRFQUE0RTtRQUM1RSxtRkFBbUY7UUFDbkYsbUJBQW1CO1FBQ25CLElBQUksQ0FBQyxTQUFTLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLFlBQVksQ0FBQyxJQUFJLENBQzVDLFNBQVMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FDbkMsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDbEIsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNYLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDO29CQUN4QixJQUFJLEVBQUUsSUFBSTtvQkFDVixnQkFBZ0IsRUFBRSxJQUFJO29CQUN0QixZQUFZLEVBQUUsSUFBSTtpQkFDbkIsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztRQUNILENBQUMsQ0FBQyxDQUFDO1FBRUgsa0dBQWtHO1FBQ2xHLDhGQUE4RjtRQUM5RixJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxhQUFhLENBQUMsSUFBSSxDQUM1QyxTQUFTLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLENBQ25DLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNmLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLE1BQU0sSUFBSSxJQUFJLENBQUM7WUFDMUQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2hELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLEtBQUssQ0FBQyxVQUFVLENBQUMsS0FBZTtRQUNyQyxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNyQixJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbEMsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLElBQUksR0FBZ0IsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN4QyxJQUFJLElBQUksRUFBRSxDQUFDO2dCQUNULE1BQU0sSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUM1QixDQUFDO1FBQ0gsQ0FBQztRQUVELHlGQUF5RjtRQUN6RixzQ0FBc0M7UUFDdEMsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztRQUMxQyxDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7T0FHRztJQUNLLG9CQUFvQjtRQUMxQixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNsQixJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssUUFBUSxFQUFFLENBQUM7Z0JBQy9CLElBQUksQ0FBQyxjQUFjLEdBQUcsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNwRSxDQUFDO2lCQUFNLENBQUM7Z0JBQ04sSUFBSSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztvQkFDMUIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUN4RCxDQUFDO1lBQ0gsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ssS0FBSyxDQUFDLFdBQVcsQ0FBQyxJQUFVLEVBQUUsbUJBQWtDLElBQUk7UUFDMUUsK0hBQStIO1FBQy9ILElBQUksSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7WUFDOUIsTUFBTSxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ2xELENBQUM7UUFFRCxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN4Qiw2SEFBNkg7WUFDN0gsSUFBSSxDQUFDLElBQUksQ0FBQyxvQkFBb0IsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUN2RCxJQUFJLENBQUM7b0JBQ0gsSUFBSSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUU3QywyRkFBMkY7b0JBQzNGLElBQUksSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7d0JBQzlCLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLEVBQUUsWUFBWSxFQUFFLE1BQU0sSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO29CQUM5RCxDQUFDO3lCQUFNLENBQUM7d0JBQ04sSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsRUFBRSxnQkFBZ0IsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsWUFBWSxFQUFFLE1BQU0sSUFBSSxJQUFJLEVBQUUsQ0FBQyxDQUFDO29CQUN2RyxDQUFDO2dCQUNILENBQUM7Z0JBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztvQkFDWCwwREFBMEQ7b0JBQzFELDRFQUE0RTtnQkFDOUUsQ0FBQztZQUNILENBQUM7WUFDSCw0RUFBNEU7WUFDNUUsc0dBQXNHO1FBQ3RHLENBQUM7YUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLG9CQUFvQixFQUFFLENBQUM7WUFDdEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsRUFBRSxnQkFBZ0IsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDN0YsQ0FBQztJQUNILENBQUM7SUFFRCxxRkFBcUY7SUFDN0UsS0FBSyxDQUFDLFlBQVksQ0FBQyxJQUFVLEVBQUUsbUJBQWtDLElBQUk7UUFDM0Usc0RBQXNEO1FBQ3RELElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRTNGLG1IQUFtSDtRQUNuSCxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDM0IsTUFBTSxhQUFhLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sS0FBSyxTQUFTLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM5SSxDQUFDO1FBRUQsMkVBQTJFO1FBQzNFLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUMvQyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ssa0JBQWtCO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLFVBQVUsS0FBSyxRQUFRLENBQUM7SUFDdEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ssS0FBSyxDQUFDLG1CQUFtQixDQUFDLEtBQWU7UUFDL0MsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVyQyxJQUFJLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxDQUFDO1lBQ2pDLElBQUksQ0FBQztnQkFDSCxJQUFJLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxVQUFVLENBQUMsQ0FBQztZQUM5RCxDQUFDO1lBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztnQkFDWCxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUM1QixDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFBQSxDQUFDO0lBRU0sS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFVO1FBQy9CLE1BQU0sTUFBTSxHQUFlLElBQUksVUFBVSxFQUFFLENBQUM7UUFFNUMsTUFBTSxDQUFDLFNBQVMsR0FBRyxLQUFLLEVBQUMsQ0FBQyxFQUFDLEVBQUU7WUFDM0IsSUFBSSxnQkFBZ0IsR0FBdUIsTUFBTSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDcEYsTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ2pELENBQUMsQ0FBQztRQUVGLElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFLEVBQUUsQ0FBQztZQUM5QixNQUFNLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzdCLENBQUM7YUFBTSxDQUFDO1lBQ04sTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQy9CLENBQUM7SUFDSCxDQUFDOytHQS9RVSxtQkFBbUI7bUdBQW5CLG1CQUFtQixpaEJBeUdFLFVBQVUsdUZDM0k1QyxxOERBOENnQjs7NEZEWkgsbUJBQW1CO2tCQUwvQixTQUFTOytCQUNFLGdCQUFnQjsySEE0Q1YsU0FBUztzQkFBeEIsS0FBSztnQkFLVSxXQUFXO3NCQUExQixLQUFLO2dCQU1VLFFBQVE7c0JBQXZCLEtBQUs7Z0JBS1UsVUFBVTtzQkFBekIsS0FBSztnQkFHVSxnQkFBZ0I7c0JBQS9CLEtBQUs7Z0JBT1UsY0FBYztzQkFBN0IsS0FBSztnQkFPVSx1QkFBdUI7c0JBQXRDLEtBQUs7Z0JBT1UsV0FBVztzQkFBMUIsS0FBSztnQkFLVSxXQUFXO3NCQUExQixLQUFLO2dCQUtVLFVBQVU7c0JBQXpCLEtBQUs7Z0JBS1UsV0FBVztzQkFBMUIsS0FBSztnQkFRVSxvQkFBb0I7c0JBQW5DLEtBQUs7Z0JBRTZELFNBQVM7c0JBQTNFLFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIFNpbXBsZUNoYW5nZXMsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBBc3luY1ZhbGlkYXRvckZuLCBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBWYWxpZGF0b3JGbiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IGZpbHRlciwgdGFrZSwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgVmFsaWRhdGlvbk1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS92YWxpZGF0aW9uLW1lc3NhZ2Uuc2VydmljZSc7XG5pbXBvcnQgeyBGb3JtR3JvdXBIZWxwZXIgfSBmcm9tICcuLi8uLi9zaGFyZWQvZm9ybS1ncm91cC5oZWxwZXInO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2xCYXNlIH0gZnJvbSAnLi4vZm9ybS1jb250cm9sLWJhc2UnO1xuaW1wb3J0IHsgbGFzdFZhbHVlRnJvbSB9IGZyb20gJ3J4anMnO1xuXG5leHBvcnQgdHlwZSBGaWxlVHlwZSA9ICd6aXAnIHwgJ2V4Y2VsJyB8ICdjdXN0b20nO1xuZXhwb3J0IHR5cGUgRmlsZU91dHB1dCA9ICdyYXcnIHwgJ2Jhc2U2NCc7XG5cbmV4cG9ydCBjb25zdCBGaWxlVHlwZUV4dGVuc2lvbnMgPSB7XG4gIHppcDogWycuemlwJ10sXG4gIGV4Y2VsOiBbJy54bHMnLCAnLnhsc3gnXVxufTtcblxuZXhwb3J0IHR5cGUgRmlsZVVwbG9hZEZvcm1Hcm91cCA9IHtcbiAgZmlsZTogRm9ybUNvbnRyb2w8RmlsZSB8IG51bGw+O1xuICBuYW1lOiBGb3JtQ29udHJvbDxzdHJpbmcgfCBudWxsPjtcbiAgYmFzZTY0RmlsZVN0cmluZzogRm9ybUNvbnRyb2w8c3RyaW5nIHwgbnVsbD47XG4gIHVwbG9hZFJlc3VsdDogRm9ybUNvbnRyb2w8YW55Pjtcbn07XG5cbmV4cG9ydCB0eXBlIEludmFsaWRGaWxlRXJyb3IgPSB7XG4gIGludmFsaWRGaWxlOiB0cnVlO1xufTtcblxuZXhwb3J0IHR5cGUgRmlsZVZhbGlkYXRvckNhbGxiYWNrID0gKGZpbGU6IEZpbGUgfCBudWxsIHwgdW5kZWZpbmVkLCBiYXNlNjQ6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpID0+IFByb21pc2U8SW52YWxpZEZpbGVFcnJvciB8IG51bGw+O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiZWMtZmlsZS11cGxvYWRcIixcbiAgdGVtcGxhdGVVcmw6IFwiLi9maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbFwiLFxuICBzdHlsZVVybHM6IFtcIi4vZmlsZS11cGxvYWQuY29tcG9uZW50LnNjc3NcIl1cbn0pXG5leHBvcnQgY2xhc3MgRmlsZVVwbG9hZENvbXBvbmVudCBleHRlbmRzIEZvcm1Db250cm9sQmFzZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcblxuICAvLyBzdGF0aWMgY2xhc3MgdG8gY3JlYXRlIHRoZSBmb3JtIGdyb3VwIGZyb20gYSBwYXJlbnQgY29tcG9uZW50XG4gIHB1YmxpYyBzdGF0aWMgZ2V0Rm9ybU1vZGVsKFxuICAgIHZhbGlkYXRvcnM6IFZhbGlkYXRvckZuW10sXG4gICAgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZSxcbiAgICAvKiogQW55IHZhbGlkYXRvcnMgcmVxdWlyZWQgdG8gbWFrZSBzdXJlIHRoZSBzZWxlY3RlZCBmaWxlIGlzIHZhbGlkLiBJdCBpcyByZWNvbW1lbmRlZCB0aGF0IHlvdSB1c2UgYEZpbGVVcGxvYWRDb21wb25lbnQuZ2V0RmlsZVZhbGlkYXRvcmAgdG8gaGVscCBjb25zdHJ1Y3QgdGhlIHZhbGlkYXRvcihzKS4gTk9URTogVGhpcyBjdXJyZW50bHkgb25seSB3b3JrcyB3aGVuIG11bHRpU2VsZWN0IGlzIGZhbHNlLiAqL1xuICAgIGZpbGVWYWxpZGF0b3JzPzogQXN5bmNWYWxpZGF0b3JGbiB8IEFzeW5jVmFsaWRhdG9yRm5bXVxuICApOiBGb3JtR3JvdXA8RmlsZVVwbG9hZEZvcm1Hcm91cD4ge1xuICAgIGxldCBmb3JtR3JvdXAgPSBuZXcgRm9ybUdyb3VwPEZpbGVVcGxvYWRGb3JtR3JvdXA+KHtcbiAgICAgIGZpbGU6IG5ldyBGb3JtQ29udHJvbCh7IHZhbHVlOiBudWxsLCBkaXNhYmxlZDogZGlzYWJsZWQgfSwge3ZhbGlkYXRvcnM6IHZhbGlkYXRvcnMsIGFzeW5jVmFsaWRhdG9yczogZmlsZVZhbGlkYXRvcnN9KSxcbiAgICAgIG5hbWU6IG5ldyBGb3JtQ29udHJvbCh7IHZhbHVlOiBudWxsLCBkaXNhYmxlZDogZGlzYWJsZWQgfSwgdmFsaWRhdG9ycyksXG4gICAgICBiYXNlNjRGaWxlU3RyaW5nOiBuZXcgRm9ybUNvbnRyb2wobnVsbCksXG4gICAgICB1cGxvYWRSZXN1bHQ6IG5ldyBGb3JtQ29udHJvbChudWxsKSxcbiAgICB9KTtcbiAgICBpZiAoZGlzYWJsZWQpIHtcbiAgICAgIGZvcm1Hcm91cC5kaXNhYmxlKCk7XG4gICAgfVxuICAgIHJldHVybiBmb3JtR3JvdXA7XG4gIH1cblxuICAvKipcbiAgICogSGVscGVyIGZ1bmN0aW9uIHRoYXQgcmV0dXJucyBhbiBhc3luYyB2YWxpZGF0b3IgdG8gYmUgdXNlZCB3aXRoIHRoZSBmaWxlIHVwbG9hZCBjb250cm9sLlxuICAgKiBUaGlzIGlzIHVzZWZ1bCBmb3Igd2hlbiB0aGUgZmlsZSBuZWVkcyB0byBiZSB2YWxpZGF0ZWQgYmVmb3JlIGl0IGNhbiBiZSB1cGxvYWRlZC5cbiAgICogXG4gICAqIEBwYXJhbSBjYWxsYmFjayBUaGUgY2FsbGJhY2sgZnVuY3Rpb24gdGhhdCB3aWxsIGJlIGNhbGxlZCB0byB2YWxpZGF0ZSB0aGUgZmlsZS4gUGFyYW1ldGVycyBmb3IgdGhlIGNhbGxiYWNrIGFyZSB0aGUgZmlsZSBhbmQgdGhlIGJhc2U2NCBzdHJpbmcgZm9yIHRoZSBmaWxlLlxuICAgKiBiYXNlNjQgaXMgbnVsbCBpZiB0aGUgZmlsZU91dHB1dCBpbnB1dCBvbiB0aGUgRmlsZVVwbG9hZENvbXBvbmVudCBpcyBzZXQgdG8gcmF3LiBVc2luZyBmaWxlT3V0cHV0IHNldCB0byBiYXNlNjQgaXMgcmVjb21tZW5kZWQgZm9yIGltYWdlcy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZ2V0RmlsZVZhbGlkYXRvcihjYWxsYmFjazogRmlsZVZhbGlkYXRvckNhbGxiYWNrKTogQXN5bmNWYWxpZGF0b3JGbiB7XG4gICAgcmV0dXJuIGFzeW5jIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpID0+IHtcbiAgICAgIGlmIChjb250cm9sLnZhbHVlICYmIGNvbnRyb2wucGFyZW50KSB7XG4gICAgICAgIGxldCBmaWxlID0gY29udHJvbC52YWx1ZSBhcyBGaWxlO1xuICAgICAgICAvLyBGb3IgaW1hZ2VzLCB3ZSBuZWVkIHRoZSBiYXNlNjQgc3RyaW5nIHRvIHZhbGlkYXRlIGltYWdlIGRpbWVuc2lvbnNcbiAgICAgICAgbGV0IGJhc2U2NCA9IGNvbnRyb2wucGFyZW50LmdldCgnYmFzZTY0RmlsZVN0cmluZycpPy52YWx1ZSBhcyBzdHJpbmc7XG4gICAgICAgIHJldHVybiBhd2FpdCBjYWxsYmFjayhmaWxlLCBiYXNlNjQpO1xuICAgICAgfVxuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICB9XG5cbiAgQElucHV0KCkgcHVibGljIGZvcm1Nb2RlbCE6IEZvcm1Hcm91cDxGaWxlVXBsb2FkRm9ybUdyb3VwPjtcblxuICAvKipcbiAgICogVGhlIHZhbHVlIG9mIHRoZSB0ZXh0Ym94IGlucHV0J3MgcGxhY2Vob2xkZXJcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBwbGFjZWhvbGRlcj86IHN0cmluZyA9IFwiQ2hvb3NlIGZpbGUuLi5cIjtcblxuICAvKiogQ29tbW9uIGV4dGVuc2lvbnMgZm9yIGEgZmlsZSBicm93c2luZyBkaWFsb2dcbiAgICogIE5vdGU6IEVkZ2UgZG9lcyBub3Qgc3VwcG9ydCB0aGUgYWNjZXB0IGF0dHJpYnV0ZSBvbiBmaWxlIGlucHV0cywgdGhlcmVmb3IgYWxsIGZpbGUgdHlwZXNcbiAgICogICAgICAgIHdpbGwgYmUgc2hvd24uICBGaXJlZm94IGFuZCBDaHJvbWUgYm90aCBzdXBwb3J0IHRoaXMgZmVhdHVyZS5cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBmaWxlVHlwZT86IEZpbGVUeXBlIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBGaWxlIG91dHB1dCwgZGV0ZXJtaW5lcyB3aGljaCBwcm9wZXJ0aWVzIGFyZSBzdXBwbGllZCBvbiB0aGUgZm9ybU1vZGVsXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgZmlsZU91dHB1dD86IEZpbGVPdXRwdXQgPSAnYmFzZTY0JztcblxuICAvKiogSWYgZmlsZVR5cGUgaXMgc2V0IHRvIGN1c3RvbSBzZXQgdGhlIGFjY2VwdGFibGUgZmlsZSB0eXBlcyBiYXNlZCBvbiB0aGUgY3VzdG9tIGFycmF5ICovXG4gIEBJbnB1dCgpIHB1YmxpYyBjdXN0b21FeHRlbnNpb25zPzogQXJyYXk8c3RyaW5nPiB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogT3B0aW9uYWwgY2FsbGJhY2sgc3VwcG9ydGVkIGlmIHRoZSBob3N0aW5nIHBhZ2UgbmVlZHMgdG8gcHJvY2VzcyB0aGUgZmlsZSBiZWZvcmVcbiAgICogc2V0dGluZyB0aGUgZm9ybU1vZGVsIHdpdGggdGhlIGZpbGUgaW5mb3JtYXRpb24uIElmIHRoZSBwcm9taXNlIHJlc29sdmVzIGl0IHdpbGwgY29udGludWVcbiAgICogYW5kIHNldCB0aGUgZmlsZSBuYW1lIGFuZCBjb250ZW50cyB0byB0aGUgZm9ybU1vZGVsLCBvdGhlcndpc2Ugb24gZmFpbHVyZSBpdCdsbCBkbyBub3RoaW5nLlxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIG9uRmlsZVNlbGVjdGVkPzogKGZpbGU6IEZpbGUpID0+IFByb21pc2U8YW55PjtcblxuICAvKipcbiAgICogT3B0aW9uYWwgY2FsbGJhY2sgc3VwcG9ydGVkIGZvciB3aGVuIHRoZSBob3N0aW5nIHBhZ2UgbmVlZHMgdG8gcHJvY2VzcyBtdWx0aXBsZSBmaWxlc1xuICAgKiBXZSBzaW1wbHkgbWFwIHRoZSBGaWxlTGlzdCB0byBhbiBhcnJheSBvZiBGaWxlIG9iamVjdHMgYW5kIHBhc3MgdGhhdCBhcnJheSB0byB0aGUgXG4gICAqIGNhbGxiYWNrIGFuZCBsZXQgdGhlIGhvc3RpbmcgcGFnZSBoYW5kbGUgdGhlIHByb2Nlc3NpbmdcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBvbk11bHRpcGxlRmlsZXNTZWxlY3RlZD86IChmaWxlczogRmlsZVtdKSA9PiBQcm9taXNlPGFueT47XG5cbiAgLyoqIFxuICAgKiBPcHRpb25hbCBkaXNwbGF5IHR5cGUgdGhhdCBjb250cm9scyB3aGV0aGVyIHRoZSBmaWxlIGlucHV0IHRleHRib3ggaXMgZGlzcGxheWVkIG9yXG4gICAqIHNpbXBseSBhIGJ1dHRvbiB0aGUgdXNlciBjbGlja3MgdG8gbGF1bmNoIHRoZSBPUyBmaWxlIHN0b3JhZ2UgZGlhbG9nLlxuICAgKiBEZWZhdWx0OiBmaWxlXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgZGlzcGxheVR5cGU/OiAnZmlsZScgfCAnYnV0dG9uJyA9ICdmaWxlJztcblxuICAvKiogXG4gICAqIFdoZW4gZGlzcGxheSB0eXBlIGlzIHNldCB0byBidXR0b24gdGhpcyBwcm9wZXJ0eSB3aWxsIGNvbnRyb2wgdGhlIGJ1dHRvbiBsYWJlbFxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIGJ1dHRvbkxhYmVsPzogc3RyaW5nO1xuXG4gIC8qKiBcbiAgICogV2hlbiBkaXNwbGF5IHR5cGUgaXMgc2V0IHRvIGJ1dHRvbiB0aGlzIHByb3BlcnR5IHdpbGwgY29udHJvbCB0aGUgYnV0dG9uIHR5cGVcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBidXR0b25UeXBlPzogc3RyaW5nID0gJ3ByaW1hcnknO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBwcm9wZXJ0eSB0byBjb250cm9sIHdoZXRoZXIgdGhlIHVzZXIgY2FuIHNlbGVjdCBtdWx0aXBsZSBmaWxlc1xuICAgKi9cbiAgQElucHV0KCkgcHVibGljIG11bHRpU2VsZWN0PzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBXaGVuIHRydWUsIHRoZSBvbkZpbGVTZWxlY3RlZCBjYWxsYmFjayB3aWxsIG5vdCBiZSBjYWxsZWQgaWYgdGhlIGZvcm0gaXMgaW52YWxpZC5cbiAgICogVGhpcyBpcyB1c2VmdWwgd2hlbiB0aGUgZmlsZSBuZWVkcyB0byBiZSB2YWxpZGF0ZWQgYmVmb3JlIGl0IGNhbiBiZSB1cGxvYWRlZC5cbiAgICogRm9yIHNlcnZlci1zaWRlIHZhbGlkYXRpb24sIGxlYXZlIHRoaXMgYXMgZmFsc2UgYW5kIHVzZSB0aGUgb25GaWxlU2VsZWN0ZWQgY2FsbGJhY2tcbiAgICogdG8gdXBsb2FkIHRoZSBmaWxlIGFuZCBoYW5kbGUgYW55IGVycm9ycyB0aHJvd24gYnkgdGhlIEFQSS5cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyB2YWxpZGF0ZUJlZm9yZVVwbG9hZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBWaWV3Q2hpbGQoXCJmaWxlSW5wdXRcIiwgeyByZWFkOiBFbGVtZW50UmVmLCBzdGF0aWM6IHRydWUgfSkgcHVibGljIGZpbGVJbnB1dD86IEVsZW1lbnRSZWY7XG5cbiAgLyoqIFByb3BlcnR5IGJvdW5kIHRvIHRoZSBmaWxlIGlucHV0IHRvIGZpbHRlciB3aGF0IGZpbGUgdHlwZXMgYXJlIHNob3duIGluIHRoZSBkaWFsb2cgKi9cbiAgcHVibGljIGZpbGVUeXBlQWNjZXB0OiBzdHJpbmcgfCB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIHZhbGlkYXRpb25NZXNzYWdlU2VydmljZTogVmFsaWRhdGlvbk1lc3NhZ2VTZXJ2aWNlLFxuICAgIHByb3RlY3RlZCBmb3JtR3JvdXBIZWxwZXI6IEZvcm1Hcm91cEhlbHBlcixcbiAgKSB7XG4gICAgc3VwZXIodmFsaWRhdGlvbk1lc3NhZ2VTZXJ2aWNlLCBmb3JtR3JvdXBIZWxwZXIpO1xuICB9XG5cbiAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBzdXBlci5uZ09uQ2hhbmdlcyhjaGFuZ2VzKTtcblxuICAgIHRoaXMudXBkYXRlRmlsZVR5cGVBY2NlcHQoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuXG4gICAgLy8gV2F0Y2ggZm9yIG5hbWUgdG8gY2hhbmdlLCBpZiB0aGUgdmFsdWUgaXMgY2xlYXJlZCB3ZSB3aWxsIGNsZWFyIHRoZSBvdGhlclxuICAgIC8vIHN1cHBvcnRpbmcgbW9kZWwgcHJvcGVydGllcy4gVGhlIG5hbWUgY2FuIGJlIGNsZWFyZWQgYnkgdGhlIHVzZXIgbWFudWFsbHkgb3IgdmlhXG4gICAgLy8gdGhlIGNsZWFyIGJ1dHRvblxuICAgIHRoaXMuZm9ybU1vZGVsPy5nZXQoJ25hbWUnKT8udmFsdWVDaGFuZ2VzLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5jb21wb25lbnREZXN0cm95ZWQpXG4gICAgKS5zdWJzY3JpYmUodmFsdWUgPT4ge1xuICAgICAgaWYgKCF2YWx1ZSkge1xuICAgICAgICB0aGlzLmZvcm1Nb2RlbC5wYXRjaFZhbHVlKHtcbiAgICAgICAgICBmaWxlOiBudWxsLFxuICAgICAgICAgIGJhc2U2NEZpbGVTdHJpbmc6IG51bGwsXG4gICAgICAgICAgdXBsb2FkUmVzdWx0OiBudWxsXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgLy8gU3luYyBlcnJvcnMgZnJvbSB0aGUgZmlsZSBjb250cm9sIHRvIHRoZSBuYW1lIGNvbnRyb2wgd2hlbmV2ZXIgdGhlIGZpbGUgY29udHJvbCBzdGF0dXMgY2hhbmdlcy5cbiAgICAvLyBUaGUgbmFtZSBjb250cm9sIGlzIHRoZSBvbmx5IG9uZSBkaXNwbGF5ZWQgdG8gdGhlIHVzZXIgc28gd2UgbmVlZCB0byBzaG93IHRoZSBlcnJvcnMgdGhlcmUuXG4gICAgdGhpcy5mb3JtTW9kZWwuZ2V0KCdmaWxlJyk/LnN0YXR1c0NoYW5nZXMucGlwZShcbiAgICAgIHRha2VVbnRpbCh0aGlzLmNvbXBvbmVudERlc3Ryb3llZClcbiAgICApLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBjb25zdCBlcnJvcnMgPSB0aGlzLmZvcm1Nb2RlbC5nZXQoJ2ZpbGUnKT8uZXJyb3JzID8/IG51bGw7XG4gICAgICB0aGlzLmZvcm1Nb2RlbC5nZXQoJ25hbWUnKT8uc2V0RXJyb3JzKGVycm9ycyk7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZmlsZUNoYW5nZShmaWxlczogRmlsZUxpc3QpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAodGhpcy5tdWx0aVNlbGVjdCkge1xuICAgICAgdGhpcy5oYW5kbGVNdWx0aXBsZUZpbGVzKGZpbGVzKTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgZmlsZTogRmlsZSB8IG51bGwgPSBmaWxlcy5pdGVtKDApO1xuICAgICAgaWYgKGZpbGUpIHtcbiAgICAgICAgYXdhaXQgdGhpcy5yZWFkRmlsZShmaWxlKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBDbGVhciB0aGUgZmlsZSBpbnB1dHMgdmFsdWUsIHRoaXMgd2lsbCBhbGxvdyB0aGUgdXNlciB0byBwaWNrIHRoZSBzYW1lIGZpbGVuYW1lcyBhZ2FpblxuICAgIC8vIGFuZCBjYXVzZSBmaWxlQ2hhbmdlIHRvIHJlLXRyaWdnZXIuXG4gICAgaWYgKHRoaXMuZmlsZUlucHV0KSB7XG4gICAgICB0aGlzLmZpbGVJbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlID0gJyc7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrcyB0aGUgZmlsZSB0eXBlIGFuZCB1cGRhdGVzIHRoZSBmaWxlIHR5cGUgYWNjZXB0IHByb3BlcnR5LiBUaGlzIGlzIHdoYXQgZGV0ZXJtaW5lcyB0aGUgZmlsZVxuICAgKiB0eXBlIGNob2ljZXMgdGhhdCB0aGUgdXNlciB3aWxsIGJlIGxpbWl0ZWQgdG8gaW4gdGhlIGZpbGUgYnJvd3NlIGRpYWxvZ1xuICAgKi9cbiAgcHJpdmF0ZSB1cGRhdGVGaWxlVHlwZUFjY2VwdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5maWxlVHlwZSkge1xuICAgICAgaWYgKHRoaXMuZmlsZVR5cGUgIT09IFwiY3VzdG9tXCIpIHtcbiAgICAgICAgdGhpcy5maWxlVHlwZUFjY2VwdCA9IEZpbGVUeXBlRXh0ZW5zaW9uc1t0aGlzLmZpbGVUeXBlXS5qb2luKFwiLFwiKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGlmICh0aGlzLmN1c3RvbUV4dGVuc2lvbnMpIHtcbiAgICAgICAgICB0aGlzLmZpbGVUeXBlQWNjZXB0ID0gdGhpcy5jdXN0b21FeHRlbnNpb25zLmpvaW4oXCIsXCIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFRha2UgYSBmaWxlIHRoYXQgd2FzIHNlbGVjdGVkIGJ5IHRoZSB1c2VyIGFuZCBwcm9jZXNzL3BhdGNoIG91ciBmb3JtIG1vZGVsXG4gICAqIElmIHRoZSBob3N0IGNvbXBvbmVudCByZXF1aXJlcyBhbiBhY3Rpb24gdG8gb2NjdXIgd2l0aCB0aGUgZmlsZSBwcmlvciB0byB0aGUgcGF0Y2ggaXQgd2lsbCBjYWxsXG4gICAqIGFuZCB3YWl0IGZvciBpdCB0byByZXR1cm4uXG4gICAqIEBwYXJhbSBmaWxlIFxuICAgKiBAcGFyYW0gYmFzZTY0RmlsZVN0cmluZyBPcHRpb25hbDogV2lsbCBoYXZlIGEgdmFsdWUgcHJvdmlkZWQgaWYgdGhlIGZpbGVPdXRwdXQgaXMgc2V0IHRvIGJhc2U2NFxuICAgKi9cbiAgcHJpdmF0ZSBhc3luYyBwcm9jZXNzRmlsZShmaWxlOiBGaWxlLCBiYXNlNjRGaWxlU3RyaW5nOiBzdHJpbmcgfCBudWxsID0gbnVsbCk6IFByb21pc2U8dm9pZD4ge1xuICAgIC8vIElmIHdlIGFyZSB2YWxpZGF0aW5nIGJlZm9yZSB1cGxvYWQgd2UgbmVlZCB0byBwYXRjaCB0aGUgZmlsZSB0byB0aGUgZm9ybSB0byB0cmlnZ2VyIHZhbGlkYXRpb24gYmVmb3JlIGNhbGxpbmcgb25GaWxlU2VsZWN0ZWRcbiAgICBpZiAodGhpcy52YWxpZGF0ZUJlZm9yZVVwbG9hZCkge1xuICAgICAgYXdhaXQgdGhpcy52YWxpZGF0ZUZpbGUoZmlsZSwgYmFzZTY0RmlsZVN0cmluZyk7XG4gICAgfVxuICAgIFxuICAgIGlmICh0aGlzLm9uRmlsZVNlbGVjdGVkKSB7XG4gICAgICAvLyBPbmx5IGNhbGwgdGhlIG9uRmlsZVNlbGVjdGVkIGNhbGxiYWNrIHRvIHVwbG9hZCB0aGUgZmlsZSBpZiB0aGUgZm9ybSBncm91cCBpcyB2YWxpZCBvciB3ZSBhcmUgbm90IHZhbGlkYXRpbmcgYmVmb3JlIHVwbG9hZFxuICAgICAgaWYgKCF0aGlzLnZhbGlkYXRlQmVmb3JlVXBsb2FkIHx8IHRoaXMuZm9ybU1vZGVsLnZhbGlkKSB7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgbGV0IHJlc3VsdCA9IGF3YWl0IHRoaXMub25GaWxlU2VsZWN0ZWQoZmlsZSk7XG4gIFxuICAgICAgICAgIC8vIElmIHdlIGRpZCB2YWxpZGF0aW9uLCBqdXN0IHBhdGNoIHRoZSBmb3JtIHJlc3VsdCBiZWNhdXNlIHRoZSBmaWxlIGlzIGFscmVhZHkgaW4gdGhlIGZvcm1cbiAgICAgICAgICBpZiAodGhpcy52YWxpZGF0ZUJlZm9yZVVwbG9hZCkge1xuICAgICAgICAgICAgdGhpcy5mb3JtTW9kZWwucGF0Y2hWYWx1ZSh7IHVwbG9hZFJlc3VsdDogcmVzdWx0ID8/IG51bGwgfSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZm9ybU1vZGVsLnBhdGNoVmFsdWUoeyBiYXNlNjRGaWxlU3RyaW5nLCBmaWxlLCBuYW1lOiBmaWxlLm5hbWUsIHVwbG9hZFJlc3VsdDogcmVzdWx0ID8/IG51bGwgfSk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgLy8gQnVtbWVyLCB3ZSdyZSBub3QgZ29pbmcgdG8gZG8gYW55dGhpbmcgYWJvdXQgaXQgdGhvdWdoLlxuICAgICAgICAgIC8vIFdlIGFyZSBub3QgcGF0Y2hpbmcgYW55IG9mIHRoZSByZXN1bHQgc28gYW55IGV4aXN0aW5nIGluZm9ybWF0aW9uIHJlbWFpbnNcbiAgICAgICAgfVxuICAgICAgfVxuICAgIC8vIElmIHdlIGRvbid0IGhhdmUgYW4gb25GaWxlU2VsZWN0ZWQgY2FsbGJhY2sgd2UganVzdCBwYXRjaCB0aGUgZm9ybSBtb2RlbC5cbiAgICAvLyBJbiB0aGUgY2FzZSBvZiBwcmUtdXBsb2FkIHZhbGlkYXRpb24gdGhlIGZvcm0gYWxyZWFkeSBoYXMgdGhlIGZpbGUgc28gd2UgZG9uJ3Qgd2FudCB0byBwYXRjaCBhZ2Fpbi5cbiAgICB9IGVsc2UgaWYgKCF0aGlzLnZhbGlkYXRlQmVmb3JlVXBsb2FkKSB7XG4gICAgICB0aGlzLmZvcm1Nb2RlbC5wYXRjaFZhbHVlKHsgYmFzZTY0RmlsZVN0cmluZywgZmlsZSwgbmFtZTogZmlsZS5uYW1lLCB1cGxvYWRSZXN1bHQ6IG51bGwgfSk7XG4gICAgfVxuICB9XG5cbiAgLyoqIFBhdGNoZXMgdGhlIGZvcm0gd2l0aCB0aGUgc2VsZWN0ZWQgZmlsZSBpbiBvcmRlciB0byB0cmlnZ2VyIGNvbnRyb2wgdmFsaWRhdGlvbiAqL1xuICBwcml2YXRlIGFzeW5jIHZhbGlkYXRlRmlsZShmaWxlOiBGaWxlLCBiYXNlNjRGaWxlU3RyaW5nOiBzdHJpbmcgfCBudWxsID0gbnVsbCk6IFByb21pc2U8dm9pZD4ge1xuICAgIC8vIFBhdGNoIHRoZSBmaWxlIGZpcnN0IHRvIHRyaWdnZXIgYW55IGZpbGUgdmFsaWRhdG9yc1xuICAgIHRoaXMuZm9ybU1vZGVsLnBhdGNoVmFsdWUoeyBiYXNlNjRGaWxlU3RyaW5nLCBmaWxlLCBuYW1lOiBmaWxlLm5hbWUsIHVwbG9hZFJlc3VsdDogbnVsbCB9KTtcblxuICAgIC8vIElmIHdlIGhhdmUgYW55IGFzeW5jIHZhbGlkYXRvcnMgcGVuZGluZyB3ZSBuZWVkIHRvIHdhaXQgZm9yIHRoZW0gdG8gY29tcGxldGUgYmVmb3JlIHdlIGtub3cgaWYgdGhlIGZvcm0gaXMgdmFsaWRcbiAgICBpZiAodGhpcy5mb3JtTW9kZWwucGVuZGluZykge1xuICAgICAgYXdhaXQgbGFzdFZhbHVlRnJvbSh0aGlzLmZvcm1Nb2RlbC5zdGF0dXNDaGFuZ2VzLnBpcGUoZmlsdGVyKHN0YXR1cyA9PiBzdGF0dXMgIT09ICdQRU5ESU5HJyksIHRha2UoMSksIHRha2VVbnRpbCh0aGlzLmNvbXBvbmVudERlc3Ryb3llZCkpKTtcbiAgICB9XG5cbiAgICAvLyBNYXJrIHRoZSBuYW1lIGNvbnRyb2wgYXMgdG91Y2hlZCBzbyB0aGF0IGFueSB2YWxpZGF0aW9uIGVycm9ycyB3aWxsIHNob3dcbiAgICB0aGlzLmZvcm1Nb2RlbC5jb250cm9scy5uYW1lLm1hcmtBc1RvdWNoZWQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBCYXNlZCBvbiB0aGUgZmlsZU91dHB1dCByZXR1cm4gd2hldGhlciB0aGlzIGNvbXBvbmVudCBpcyBleHBlY3RlZCB0byBkZWxpdmVyIGEgYmFzZTY0IG91dHB1dFxuICAgKiBAcmV0dXJucyBcbiAgICovXG4gIHByaXZhdGUgaXNCYXNlNjRGaWxlT3V0cHV0KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmZpbGVPdXRwdXQgPT09ICdiYXNlNjQnO1xuICB9XG5cbiAgLyoqIE1hcHMgdGhlIGZpbGVzIHRvIGFuIGFycmF5IG9mIEZpbGUgb2JqZWN0cyBhbmQgc2VuZHMgdGhlbSBhbG9uZ1xuICAgKiB0byB0aGUgZGVyaXZlZCBvbk11bHRpcGxlRmlsZVNlbGVjdGVkIG1ldGhvZCBpbiB0aGUgaG9zdGluZyBjb21wb25lbnRcbiAgICovXG4gIHByaXZhdGUgYXN5bmMgaGFuZGxlTXVsdGlwbGVGaWxlcyhmaWxlczogRmlsZUxpc3QpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBmaWxlc0FycmF5ID0gQXJyYXkuZnJvbShmaWxlcyk7XG5cbiAgICBpZiAodGhpcy5vbk11bHRpcGxlRmlsZXNTZWxlY3RlZCkge1xuICAgICAgdHJ5IHtcbiAgICAgICAgbGV0IHJlc3VsdCA9IGF3YWl0IHRoaXMub25NdWx0aXBsZUZpbGVzU2VsZWN0ZWQoZmlsZXNBcnJheSk7XG4gICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgIGNvbnNvbGUubG9nKCdlcnJvcjogJywgZSk7XG4gICAgICB9ICBcbiAgICB9XG4gIH07XG5cbiAgcHJpdmF0ZSBhc3luYyByZWFkRmlsZShmaWxlOiBGaWxlKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgcmVhZGVyOiBGaWxlUmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcblxuICAgIHJlYWRlci5vbmxvYWRlbmQgPSBhc3luYyBlID0+IHtcbiAgICAgIGxldCBiYXNlNjRGaWxlU3RyaW5nOiBzdHJpbmcgfCB1bmRlZmluZWQgPSByZWFkZXI/LnJlc3VsdD8udG9TdHJpbmcoKS5zcGxpdChcIixcIilbMV07XG4gICAgICBhd2FpdCB0aGlzLnByb2Nlc3NGaWxlKGZpbGUsIGJhc2U2NEZpbGVTdHJpbmcpO1xuICAgIH07XG5cbiAgICBpZiAodGhpcy5pc0Jhc2U2NEZpbGVPdXRwdXQoKSkge1xuICAgICAgcmVhZGVyLnJlYWRBc0RhdGFVUkwoZmlsZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGF3YWl0IHRoaXMucHJvY2Vzc0ZpbGUoZmlsZSk7XG4gICAgfVxuICB9XG59XG4iLCI8ZWMtZm9ybS1ncm91cCBbbGFiZWxdPVwibGFiZWxcIlxuICAgICAgICAgICAgICAgW2Zvcm1Hcm91cF09XCJmb3JtTW9kZWxcIlxuICAgICAgICAgICAgICAgW2hlbHBQb3BvdmVyXT1cImhlbHBQb3BvdmVyXCJcbiAgICAgICAgICAgICAgIFtoZWxwUG9wb3ZlclBvc2l0aW9uXT1cImhlbHBQb3BvdmVyUG9zaXRpb25cIlxuICAgICAgICAgICAgICAgY2xhc3M9XCJtYi0wXCI+XG4gIDxkaXYgY2xhc3M9XCJkLWZsZXggY29udHJvbC1ncm91cFwiPlxuICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1ncm93IHBvc2l0aW9uLXJlbGF0aXZlXCI+XG4gICAgICA8aW5wdXQgI2ZpbGVJbnB1dFxuICAgICAgICAgICAgIGlkPVwie3tpbnB1dElkfX1faW5wdXRcIlxuICAgICAgICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgICAgICB0YWJpbmRleD1cIi0xXCJcbiAgICAgICAgICAgICBbYXR0ci5hY2NlcHRdPVwiZmlsZVR5cGVBY2NlcHRcIlxuICAgICAgICAgICAgIChjaGFuZ2UpPVwiZmlsZUNoYW5nZSgkZXZlbnQudGFyZ2V0LmZpbGVzKVwiXG4gICAgICAgICAgICAgW2NsYXNzLmhhcy12YWx1ZV09XCJkaXNwbGF5VHlwZSA9PT0gJ2ZpbGUnID8gZm9ybU1vZGVsPy5nZXQoJ25hbWUnKS52YWx1ZSA6IHVuZGVmaW5lZFwiXG4gICAgICAgICAgICAgW2F0dHIubXVsdGlwbGVdPVwibXVsdGlTZWxlY3QgPyAnbXVsdGlwbGUnIDogdW5kZWZpbmVkXCI+XG4gICAgICA8ZWMtZm9ybS1jb250cm9sICpuZ0lmPVwiZGlzcGxheVR5cGUgPT09ICdmaWxlJ1wiXG4gICAgICAgICAgICAgICAgICAgICAgIGlkPVwie3tpbnB1dElkfX1fZm9ybUNvbnRyb2xcIlxuICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRleHQtdHJ1bmNhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICBbcGVuZGluZ109XCJwZW5kaW5nIHx8IGZvcm1Nb2RlbD8ucGVuZGluZ1wiPlxuICAgICAgICA8aW5wdXQgaWQ9XCJ7e2lucHV0SWR9fV9uYW1lXCJcbiAgICAgICAgICAgICAgIFtmb3JtQ29udHJvbF09XCJmb3JtTW9kZWw/LmdldCgnbmFtZScpXCJcbiAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICAgICAgICAgICBbdGFiaW5kZXhdPVwiLTFcIj5cbiAgICAgIDwvZWMtZm9ybS1jb250cm9sPlxuICAgIDwvZGl2PlxuICAgIDxlYy1idXR0b24gKm5nSWY9XCJkaXNwbGF5VHlwZSA9PT0gJ2ZpbGUnXCJcbiAgICAgICAgICAgICAgICNicm93c2VCdG5cbiAgICAgICAgICAgICAgIGlkPVwie3tpbnB1dElkfX1fYnJvd3NlQnRuXCJcbiAgICAgICAgICAgICAgIChjbGlja2VkKT1cImZpbGVJbnB1dC5jbGljaygpXCJcbiAgICAgICAgICAgICAgIHR5cGU9XCJzZWNvbmRhcnlcIlxuICAgICAgICAgICAgICAgW3RhYmluZGV4XT1cInRhYmluZGV4XCJcbiAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJmb3JtTW9kZWw/LmdldCgnbmFtZScpLmRpc2FibGVkXCJcbiAgICAgICAgICAgICAgIGxhYmVsPVwiQnJvd3NlXCJcbiAgICAgICAgICAgICAgIFthdXRvZm9jdXNdPVwiYXV0b2ZvY3VzXCI+XG4gICAgPC9lYy1idXR0b24+XG4gIDwvZGl2PlxuICA8ZWMtYnV0dG9uICpuZ0lmPVwiZGlzcGxheVR5cGUgPT09ICdidXR0b24nXCJcbiAgICAgICAgICAgICBpZD1cInt7aW5wdXRJZH19X2J0blwiXG4gICAgICAgICAgICAgW3BlbmRpbmddPVwicGVuZGluZ1wiXG4gICAgICAgICAgICAgW3R5cGVdPVwiYnV0dG9uVHlwZVwiXG4gICAgICAgICAgICAgW2xhYmVsXT1cImJ1dHRvbkxhYmVsID8/ICdCcm93c2VfVEMnIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAoY2xpY2tlZCk9XCJmaWxlSW5wdXQuY2xpY2soKVwiXG4gICAgICAgICAgICAgc3R5bGU9XCJ3aWR0aDogMTAwJTtcIj5cbiAgPC9lYy1idXR0b24+XG48L2VjLWZvcm0tZ3JvdXA+Il19
|
|
261
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL2NvbnRyb2xzL2ZpbGUtdXBsb2FkL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQW9DLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRyxPQUFPLEVBQXFDLFdBQVcsRUFBRSxTQUFTLEVBQWUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RyxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUd6RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7OztBQUtyQyxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRztJQUNoQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUM7SUFDYixLQUFLLEVBQUUsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDO0NBQ3pCLENBQUM7QUFvQkYsTUFBTSxPQUFPLG1CQUFvQixTQUFRLGVBQWU7SUFFdEQsZ0VBQWdFO0lBQ3pELE1BQU0sQ0FBQyxZQUFZLENBQ3hCLFVBQXlCLEVBQ3pCLFdBQW9CLEtBQUs7SUFDekIsNE9BQTRPO0lBQzVPLGNBQXNEO1FBRXRELElBQUksU0FBUyxHQUFHLElBQUksU0FBUyxDQUFzQjtZQUNqRCxJQUFJLEVBQUUsSUFBSSxXQUFXLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFFB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QUs7Z0JBT1UsY0FBYztzQkFBN0IsS0FBSztnQkFPVSx1QkFBdUI7c0JBQXRDLEtBQUs7Z0JBT1UsV0FBVztzQkFBMUIsS0FBSztnQkFLVSxXQUFXO3NCQUExQixLQUFLO2dCQUtVLFVBQVU7c0JBQXpCLEtBQUs7Z0JBS1UsV0FBVztzQkFBMUIsS0FBSztnQkFRVSxvQkFBb0I7c0JBQW5DLEtBQUs7Z0JBRTZELFNBQVM7c0JBQTNFLFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIFNpbXBsZUNoYW5nZXMsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wsIEFzeW5jVmFsaWRhdG9yRm4sIEZvcm1Db250cm9sLCBGb3JtR3JvdXAsIFZhbGlkYXRvckZuIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBmaWx0ZXIsIHRha2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgVmFsaWRhdGlvbk1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vY29yZS92YWxpZGF0aW9uLW1lc3NhZ2Uuc2VydmljZSc7XHJcbmltcG9ydCB7IEZvcm1Hcm91cEhlbHBlciB9IGZyb20gJy4uLy4uL3NoYXJlZC9mb3JtLWdyb3VwLmhlbHBlcic7XHJcbmltcG9ydCB7IEZvcm1Db250cm9sQmFzZSB9IGZyb20gJy4uL2Zvcm0tY29udHJvbC1iYXNlJztcclxuaW1wb3J0IHsgbGFzdFZhbHVlRnJvbSB9IGZyb20gJ3J4anMnO1xyXG5cclxuZXhwb3J0IHR5cGUgRmlsZVR5cGUgPSAnemlwJyB8ICdleGNlbCcgfCAnY3VzdG9tJztcclxuZXhwb3J0IHR5cGUgRmlsZU91dHB1dCA9ICdyYXcnIHwgJ2Jhc2U2NCc7XHJcblxyXG5leHBvcnQgY29uc3QgRmlsZVR5cGVFeHRlbnNpb25zID0ge1xyXG4gIHppcDogWycuemlwJ10sXHJcbiAgZXhjZWw6IFsnLnhscycsICcueGxzeCddXHJcbn07XHJcblxyXG5leHBvcnQgdHlwZSBGaWxlVXBsb2FkRm9ybUdyb3VwID0ge1xyXG4gIGZpbGU6IEZvcm1Db250cm9sPEZpbGUgfCBudWxsPjtcclxuICBuYW1lOiBGb3JtQ29udHJvbDxzdHJpbmcgfCBudWxsPjtcclxuICBiYXNlNjRGaWxlU3RyaW5nOiBGb3JtQ29udHJvbDxzdHJpbmcgfCBudWxsPjtcclxuICB1cGxvYWRSZXN1bHQ6IEZvcm1Db250cm9sPGFueT47XHJcbn07XHJcblxyXG5leHBvcnQgdHlwZSBJbnZhbGlkRmlsZUVycm9yID0ge1xyXG4gIGludmFsaWRGaWxlOiB0cnVlO1xyXG59O1xyXG5cclxuZXhwb3J0IHR5cGUgRmlsZVZhbGlkYXRvckNhbGxiYWNrID0gKGZpbGU6IEZpbGUgfCBudWxsIHwgdW5kZWZpbmVkLCBiYXNlNjQ6IHN0cmluZyB8IG51bGwgfCB1bmRlZmluZWQpID0+IFByb21pc2U8SW52YWxpZEZpbGVFcnJvciB8IG51bGw+O1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6IFwiZWMtZmlsZS11cGxvYWRcIixcclxuICB0ZW1wbGF0ZVVybDogXCIuL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sXCIsXHJcbiAgc3R5bGVVcmxzOiBbXCIuL2ZpbGUtdXBsb2FkLmNvbXBvbmVudC5zY3NzXCJdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGaWxlVXBsb2FkQ29tcG9uZW50IGV4dGVuZHMgRm9ybUNvbnRyb2xCYXNlIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xyXG5cclxuICAvLyBzdGF0aWMgY2xhc3MgdG8gY3JlYXRlIHRoZSBmb3JtIGdyb3VwIGZyb20gYSBwYXJlbnQgY29tcG9uZW50XHJcbiAgcHVibGljIHN0YXRpYyBnZXRGb3JtTW9kZWwoXHJcbiAgICB2YWxpZGF0b3JzOiBWYWxpZGF0b3JGbltdLFxyXG4gICAgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZSxcclxuICAgIC8qKiBBbnkgdmFsaWRhdG9ycyByZXF1aXJlZCB0byBtYWtlIHN1cmUgdGhlIHNlbGVjdGVkIGZpbGUgaXMgdmFsaWQuIEl0IGlzIHJlY29tbWVuZGVkIHRoYXQgeW91IHVzZSBgRmlsZVVwbG9hZENvbXBvbmVudC5nZXRGaWxlVmFsaWRhdG9yYCB0byBoZWxwIGNvbnN0cnVjdCB0aGUgdmFsaWRhdG9yKHMpLiBOT1RFOiBUaGlzIGN1cnJlbnRseSBvbmx5IHdvcmtzIHdoZW4gbXVsdGlTZWxlY3QgaXMgZmFsc2UuICovXHJcbiAgICBmaWxlVmFsaWRhdG9ycz86IEFzeW5jVmFsaWRhdG9yRm4gfCBBc3luY1ZhbGlkYXRvckZuW11cclxuICApOiBGb3JtR3JvdXA8RmlsZVVwbG9hZEZvcm1Hcm91cD4ge1xyXG4gICAgbGV0IGZvcm1Hcm91cCA9IG5ldyBGb3JtR3JvdXA8RmlsZVVwbG9hZEZvcm1Hcm91cD4oe1xyXG4gICAgICBmaWxlOiBuZXcgRm9ybUNvbnRyb2woeyB2YWx1ZTogbnVsbCwgZGlzYWJsZWQ6IGRpc2FibGVkIH0sIHt2YWxpZGF0b3JzOiB2YWxpZGF0b3JzLCBhc3luY1ZhbGlkYXRvcnM6IGZpbGVWYWxpZGF0b3JzfSksXHJcbiAgICAgIG5hbWU6IG5ldyBGb3JtQ29udHJvbCh7IHZhbHVlOiBudWxsLCBkaXNhYmxlZDogZGlzYWJsZWQgfSwgdmFsaWRhdG9ycyksXHJcbiAgICAgIGJhc2U2NEZpbGVTdHJpbmc6IG5ldyBGb3JtQ29udHJvbChudWxsKSxcclxuICAgICAgdXBsb2FkUmVzdWx0OiBuZXcgRm9ybUNvbnRyb2wobnVsbCksXHJcbiAgICB9KTtcclxuICAgIGlmIChkaXNhYmxlZCkge1xyXG4gICAgICBmb3JtR3JvdXAuZGlzYWJsZSgpO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGZvcm1Hcm91cDtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEhlbHBlciBmdW5jdGlvbiB0aGF0IHJldHVybnMgYW4gYXN5bmMgdmFsaWRhdG9yIHRvIGJlIHVzZWQgd2l0aCB0aGUgZmlsZSB1cGxvYWQgY29udHJvbC5cclxuICAgKiBUaGlzIGlzIHVzZWZ1bCBmb3Igd2hlbiB0aGUgZmlsZSBuZWVkcyB0byBiZSB2YWxpZGF0ZWQgYmVmb3JlIGl0IGNhbiBiZSB1cGxvYWRlZC5cclxuICAgKiBcclxuICAgKiBAcGFyYW0gY2FsbGJhY2sgVGhlIGNhbGxiYWNrIGZ1bmN0aW9uIHRoYXQgd2lsbCBiZSBjYWxsZWQgdG8gdmFsaWRhdGUgdGhlIGZpbGUuIFBhcmFtZXRlcnMgZm9yIHRoZSBjYWxsYmFjayBhcmUgdGhlIGZpbGUgYW5kIHRoZSBiYXNlNjQgc3RyaW5nIGZvciB0aGUgZmlsZS5cclxuICAgKiBiYXNlNjQgaXMgbnVsbCBpZiB0aGUgZmlsZU91dHB1dCBpbnB1dCBvbiB0aGUgRmlsZVVwbG9hZENvbXBvbmVudCBpcyBzZXQgdG8gcmF3LiBVc2luZyBmaWxlT3V0cHV0IHNldCB0byBiYXNlNjQgaXMgcmVjb21tZW5kZWQgZm9yIGltYWdlcy5cclxuICAgKi9cclxuICBwdWJsaWMgc3RhdGljIGdldEZpbGVWYWxpZGF0b3IoY2FsbGJhY2s6IEZpbGVWYWxpZGF0b3JDYWxsYmFjayk6IEFzeW5jVmFsaWRhdG9yRm4ge1xyXG4gICAgcmV0dXJuIGFzeW5jIChjb250cm9sOiBBYnN0cmFjdENvbnRyb2wpID0+IHtcclxuICAgICAgaWYgKGNvbnRyb2wudmFsdWUgJiYgY29udHJvbC5wYXJlbnQpIHtcclxuICAgICAgICBsZXQgZmlsZSA9IGNvbnRyb2wudmFsdWUgYXMgRmlsZTtcclxuICAgICAgICAvLyBGb3IgaW1hZ2VzLCB3ZSBuZWVkIHRoZSBiYXNlNjQgc3RyaW5nIHRvIHZhbGlkYXRlIGltYWdlIGRpbWVuc2lvbnNcclxuICAgICAgICBsZXQgYmFzZTY0ID0gY29udHJvbC5wYXJlbnQuZ2V0KCdiYXNlNjRGaWxlU3RyaW5nJyk/LnZhbHVlIGFzIHN0cmluZztcclxuICAgICAgICByZXR1cm4gYXdhaXQgY2FsbGJhY2soZmlsZSwgYmFzZTY0KTtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBJbnB1dCgpIHB1YmxpYyBmb3JtTW9kZWwhOiBGb3JtR3JvdXA8RmlsZVVwbG9hZEZvcm1Hcm91cD47XHJcblxyXG4gIC8qKlxyXG4gICAqIFRoZSB2YWx1ZSBvZiB0aGUgdGV4dGJveCBpbnB1dCdzIHBsYWNlaG9sZGVyXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIHBsYWNlaG9sZGVyPzogc3RyaW5nID0gXCJDaG9vc2UgZmlsZS4uLlwiO1xyXG5cclxuICAvKiogQ29tbW9uIGV4dGVuc2lvbnMgZm9yIGEgZmlsZSBicm93c2luZyBkaWFsb2dcclxuICAgKiAgTm90ZTogRWRnZSBkb2VzIG5vdCBzdXBwb3J0IHRoZSBhY2NlcHQgYXR0cmlidXRlIG9uIGZpbGUgaW5wdXRzLCB0aGVyZWZvciBhbGwgZmlsZSB0eXBlc1xyXG4gICAqICAgICAgICB3aWxsIGJlIHNob3duLiAgRmlyZWZveCBhbmQgQ2hyb21lIGJvdGggc3VwcG9ydCB0aGlzIGZlYXR1cmUuXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGZpbGVUeXBlPzogRmlsZVR5cGUgfCB1bmRlZmluZWQ7XHJcblxyXG4gIC8qKlxyXG4gICAqIEZpbGUgb3V0cHV0LCBkZXRlcm1pbmVzIHdoaWNoIHByb3BlcnRpZXMgYXJlIHN1cHBsaWVkIG9uIHRoZSBmb3JtTW9kZWxcclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgZmlsZU91dHB1dD86IEZpbGVPdXRwdXQgPSAnYmFzZTY0JztcclxuXHJcbiAgLyoqIElmIGZpbGVUeXBlIGlzIHNldCB0byBjdXN0b20gc2V0IHRoZSBhY2NlcHRhYmxlIGZpbGUgdHlwZXMgYmFzZWQgb24gdGhlIGN1c3RvbSBhcnJheSAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBjdXN0b21FeHRlbnNpb25zPzogQXJyYXk8c3RyaW5nPiB8IHVuZGVmaW5lZDtcclxuXHJcbiAgLyoqXHJcbiAgICogT3B0aW9uYWwgY2FsbGJhY2sgc3VwcG9ydGVkIGlmIHRoZSBob3N0aW5nIHBhZ2UgbmVlZHMgdG8gcHJvY2VzcyB0aGUgZmlsZSBiZWZvcmVcclxuICAgKiBzZXR0aW5nIHRoZSBmb3JtTW9kZWwgd2l0aCB0aGUgZmlsZSBpbmZvcm1hdGlvbi4gSWYgdGhlIHByb21pc2UgcmVzb2x2ZXMgaXQgd2lsbCBjb250aW51ZVxyXG4gICAqIGFuZCBzZXQgdGhlIGZpbGUgbmFtZSBhbmQgY29udGVudHMgdG8gdGhlIGZvcm1Nb2RlbCwgb3RoZXJ3aXNlIG9uIGZhaWx1cmUgaXQnbGwgZG8gbm90aGluZy5cclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgb25GaWxlU2VsZWN0ZWQ/OiAoZmlsZTogRmlsZSkgPT4gUHJvbWlzZTxhbnk+O1xyXG5cclxuICAvKipcclxuICAgKiBPcHRpb25hbCBjYWxsYmFjayBzdXBwb3J0ZWQgZm9yIHdoZW4gdGhlIGhvc3RpbmcgcGFnZSBuZWVkcyB0byBwcm9jZXNzIG11bHRpcGxlIGZpbGVzXHJcbiAgICogV2Ugc2ltcGx5IG1hcCB0aGUgRmlsZUxpc3QgdG8gYW4gYXJyYXkgb2YgRmlsZSBvYmplY3RzIGFuZCBwYXNzIHRoYXQgYXJyYXkgdG8gdGhlIFxyXG4gICAqIGNhbGxiYWNrIGFuZCBsZXQgdGhlIGhvc3RpbmcgcGFnZSBoYW5kbGUgdGhlIHByb2Nlc3NpbmdcclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgb25NdWx0aXBsZUZpbGVzU2VsZWN0ZWQ/OiAoZmlsZXM6IEZpbGVbXSkgPT4gUHJvbWlzZTxhbnk+O1xyXG5cclxuICAvKiogXHJcbiAgICogT3B0aW9uYWwgZGlzcGxheSB0eXBlIHRoYXQgY29udHJvbHMgd2hldGhlciB0aGUgZmlsZSBpbnB1dCB0ZXh0Ym94IGlzIGRpc3BsYXllZCBvclxyXG4gICAqIHNpbXBseSBhIGJ1dHRvbiB0aGUgdXNlciBjbGlja3MgdG8gbGF1bmNoIHRoZSBPUyBmaWxlIHN0b3JhZ2UgZGlhbG9nLlxyXG4gICAqIERlZmF1bHQ6IGZpbGVcclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgZGlzcGxheVR5cGU/OiAnZmlsZScgfCAnYnV0dG9uJyA9ICdmaWxlJztcclxuXHJcbiAgLyoqIFxyXG4gICAqIFdoZW4gZGlzcGxheSB0eXBlIGlzIHNldCB0byBidXR0b24gdGhpcyBwcm9wZXJ0eSB3aWxsIGNvbnRyb2wgdGhlIGJ1dHRvbiBsYWJlbFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBidXR0b25MYWJlbD86IHN0cmluZztcclxuXHJcbiAgLyoqIFxyXG4gICAqIFdoZW4gZGlzcGxheSB0eXBlIGlzIHNldCB0byBidXR0b24gdGhpcyBwcm9wZXJ0eSB3aWxsIGNvbnRyb2wgdGhlIGJ1dHRvbiB0eXBlXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGJ1dHRvblR5cGU/OiBzdHJpbmcgPSAncHJpbWFyeSc7XHJcblxyXG4gIC8qKlxyXG4gICAqIE9wdGlvbmFsIHByb3BlcnR5IHRvIGNvbnRyb2wgd2hldGhlciB0aGUgdXNlciBjYW4gc2VsZWN0IG11bHRpcGxlIGZpbGVzXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIG11bHRpU2VsZWN0PzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBXaGVuIHRydWUsIHRoZSBvbkZpbGVTZWxlY3RlZCBjYWxsYmFjayB3aWxsIG5vdCBiZSBjYWxsZWQgaWYgdGhlIGZvcm0gaXMgaW52YWxpZC5cclxuICAgKiBUaGlzIGlzIHVzZWZ1bCB3aGVuIHRoZSBmaWxlIG5lZWRzIHRvIGJlIHZhbGlkYXRlZCBiZWZvcmUgaXQgY2FuIGJlIHVwbG9hZGVkLlxyXG4gICAqIEZvciBzZXJ2ZXItc2lkZSB2YWxpZGF0aW9uLCBsZWF2ZSB0aGlzIGFzIGZhbHNlIGFuZCB1c2UgdGhlIG9uRmlsZVNlbGVjdGVkIGNhbGxiYWNrXHJcbiAgICogdG8gdXBsb2FkIHRoZSBmaWxlIGFuZCBoYW5kbGUgYW55IGVycm9ycyB0aHJvd24gYnkgdGhlIEFQSS5cclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgdmFsaWRhdGVCZWZvcmVVcGxvYWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQFZpZXdDaGlsZChcImZpbGVJbnB1dFwiLCB7IHJlYWQ6IEVsZW1lbnRSZWYsIHN0YXRpYzogdHJ1ZSB9KSBwdWJsaWMgZmlsZUlucHV0PzogRWxlbWVudFJlZjtcclxuXHJcbiAgLyoqIFByb3BlcnR5IGJvdW5kIHRvIHRoZSBmaWxlIGlucHV0IHRvIGZpbHRlciB3aGF0IGZpbGUgdHlwZXMgYXJlIHNob3duIGluIHRoZSBkaWFsb2cgKi9cclxuICBwdWJsaWMgZmlsZVR5cGVBY2NlcHQ6IHN0cmluZyB8IHVuZGVmaW5lZDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcm90ZWN0ZWQgdmFsaWRhdGlvbk1lc3NhZ2VTZXJ2aWNlOiBWYWxpZGF0aW9uTWVzc2FnZVNlcnZpY2UsXHJcbiAgICBwcm90ZWN0ZWQgZm9ybUdyb3VwSGVscGVyOiBGb3JtR3JvdXBIZWxwZXIsXHJcbiAgKSB7XHJcbiAgICBzdXBlcih2YWxpZGF0aW9uTWVzc2FnZVNlcnZpY2UsIGZvcm1Hcm91cEhlbHBlcik7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xyXG4gICAgc3VwZXIubmdPbkNoYW5nZXMoY2hhbmdlcyk7XHJcblxyXG4gICAgdGhpcy51cGRhdGVGaWxlVHlwZUFjY2VwdCgpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgc3VwZXIubmdPbkluaXQoKTtcclxuXHJcbiAgICAvLyBXYXRjaCBmb3IgbmFtZSB0byBjaGFuZ2UsIGlmIHRoZSB2YWx1ZSBpcyBjbGVhcmVkIHdlIHdpbGwgY2xlYXIgdGhlIG90aGVyXHJcbiAgICAvLyBzdXBwb3J0aW5nIG1vZGVsIHByb3BlcnRpZXMuIFRoZSBuYW1lIGNhbiBiZSBjbGVhcmVkIGJ5IHRoZSB1c2VyIG1hbnVhbGx5IG9yIHZpYVxyXG4gICAgLy8gdGhlIGNsZWFyIGJ1dHRvblxyXG4gICAgdGhpcy5mb3JtTW9kZWw/LmdldCgnbmFtZScpPy52YWx1ZUNoYW5nZXMucGlwZShcclxuICAgICAgdGFrZVVudGlsKHRoaXMuY29tcG9uZW50RGVzdHJveWVkKVxyXG4gICAgKS5zdWJzY3JpYmUodmFsdWUgPT4ge1xyXG4gICAgICBpZiAoIXZhbHVlKSB7XHJcbiAgICAgICAgdGhpcy5mb3JtTW9kZWwucGF0Y2hWYWx1ZSh7XHJcbiAgICAgICAgICBmaWxlOiBudWxsLFxyXG4gICAgICAgICAgYmFzZTY0RmlsZVN0cmluZzogbnVsbCxcclxuICAgICAgICAgIHVwbG9hZFJlc3VsdDogbnVsbFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuXHJcbiAgICAvLyBTeW5jIGVycm9ycyBmcm9tIHRoZSBmaWxlIGNvbnRyb2wgdG8gdGhlIG5hbWUgY29udHJvbCB3aGVuZXZlciB0aGUgZmlsZSBjb250cm9sIHN0YXR1cyBjaGFuZ2VzLlxyXG4gICAgLy8gVGhlIG5hbWUgY29udHJvbCBpcyB0aGUgb25seSBvbmUgZGlzcGxheWVkIHRvIHRoZSB1c2VyIHNvIHdlIG5lZWQgdG8gc2hvdyB0aGUgZXJyb3JzIHRoZXJlLlxyXG4gICAgdGhpcy5mb3JtTW9kZWwuZ2V0KCdmaWxlJyk/LnN0YXR1c0NoYW5nZXMucGlwZShcclxuICAgICAgdGFrZVVudGlsKHRoaXMuY29tcG9uZW50RGVzdHJveWVkKVxyXG4gICAgKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICBjb25zdCBlcnJvcnMgPSB0aGlzLmZvcm1Nb2RlbC5nZXQoJ2ZpbGUnKT8uZXJyb3JzID8/IG51bGw7XHJcbiAgICAgIHRoaXMuZm9ybU1vZGVsLmdldCgnbmFtZScpPy5zZXRFcnJvcnMoZXJyb3JzKTtcclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGZpbGVDaGFuZ2UoZmlsZXM6IEZpbGVMaXN0KTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICBpZiAodGhpcy5tdWx0aVNlbGVjdCkge1xyXG4gICAgICB0aGlzLmhhbmRsZU11bHRpcGxlRmlsZXMoZmlsZXMpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3QgZmlsZTogRmlsZSB8IG51bGwgPSBmaWxlcy5pdGVtKDApO1xyXG4gICAgICBpZiAoZmlsZSkge1xyXG4gICAgICAgIGF3YWl0IHRoaXMucmVhZEZpbGUoZmlsZSk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBDbGVhciB0aGUgZmlsZSBpbnB1dHMgdmFsdWUsIHRoaXMgd2lsbCBhbGxvdyB0aGUgdXNlciB0byBwaWNrIHRoZSBzYW1lIGZpbGVuYW1lcyBhZ2FpblxyXG4gICAgLy8gYW5kIGNhdXNlIGZpbGVDaGFuZ2UgdG8gcmUtdHJpZ2dlci5cclxuICAgIGlmICh0aGlzLmZpbGVJbnB1dCkge1xyXG4gICAgICB0aGlzLmZpbGVJbnB1dC5uYXRpdmVFbGVtZW50LnZhbHVlID0gJyc7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBDaGVja3MgdGhlIGZpbGUgdHlwZSBhbmQgdXBkYXRlcyB0aGUgZmlsZSB0eXBlIGFjY2VwdCBwcm9wZXJ0eS4gVGhpcyBpcyB3aGF0IGRldGVybWluZXMgdGhlIGZpbGVcclxuICAgKiB0eXBlIGNob2ljZXMgdGhhdCB0aGUgdXNlciB3aWxsIGJlIGxpbWl0ZWQgdG8gaW4gdGhlIGZpbGUgYnJvd3NlIGRpYWxvZ1xyXG4gICAqL1xyXG4gIHByaXZhdGUgdXBkYXRlRmlsZVR5cGVBY2NlcHQoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5maWxlVHlwZSkge1xyXG4gICAgICBpZiAodGhpcy5maWxlVHlwZSAhPT0gXCJjdXN0b21cIikge1xyXG4gICAgICAgIHRoaXMuZmlsZVR5cGVBY2NlcHQgPSBGaWxlVHlwZUV4dGVuc2lvbnNbdGhpcy5maWxlVHlwZV0uam9pbihcIixcIik7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaWYgKHRoaXMuY3VzdG9tRXh0ZW5zaW9ucykge1xyXG4gICAgICAgICAgdGhpcy5maWxlVHlwZUFjY2VwdCA9IHRoaXMuY3VzdG9tRXh0ZW5zaW9ucy5qb2luKFwiLFwiKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFRha2UgYSBmaWxlIHRoYXQgd2FzIHNlbGVjdGVkIGJ5IHRoZSB1c2VyIGFuZCBwcm9jZXNzL3BhdGNoIG91ciBmb3JtIG1vZGVsXHJcbiAgICogSWYgdGhlIGhvc3QgY29tcG9uZW50IHJlcXVpcmVzIGFuIGFjdGlvbiB0byBvY2N1ciB3aXRoIHRoZSBmaWxlIHByaW9yIHRvIHRoZSBwYXRjaCBpdCB3aWxsIGNhbGxcclxuICAgKiBhbmQgd2FpdCBmb3IgaXQgdG8gcmV0dXJuLlxyXG4gICAqIEBwYXJhbSBmaWxlIFxyXG4gICAqIEBwYXJhbSBiYXNlNjRGaWxlU3RyaW5nIE9wdGlvbmFsOiBXaWxsIGhhdmUgYSB2YWx1ZSBwcm92aWRlZCBpZiB0aGUgZmlsZU91dHB1dCBpcyBzZXQgdG8gYmFzZTY0XHJcbiAgICovXHJcbiAgcHJpdmF0ZSBhc3luYyBwcm9jZXNzRmlsZShmaWxlOiBGaWxlLCBiYXNlNjRGaWxlU3RyaW5nOiBzdHJpbmcgfCBudWxsID0gbnVsbCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgLy8gSWYgd2UgYXJlIHZhbGlkYXRpbmcgYmVmb3JlIHVwbG9hZCB3ZSBuZWVkIHRvIHBhdGNoIHRoZSBmaWxlIHRvIHRoZSBmb3JtIHRvIHRyaWdnZXIgdmFsaWRhdGlvbiBiZWZvcmUgY2FsbGluZyBvbkZpbGVTZWxlY3RlZFxyXG4gICAgaWYgKHRoaXMudmFsaWRhdGVCZWZvcmVVcGxvYWQpIHtcclxuICAgICAgYXdhaXQgdGhpcy52YWxpZGF0ZUZpbGUoZmlsZSwgYmFzZTY0RmlsZVN0cmluZyk7XHJcbiAgICB9XHJcbiAgICBcclxuICAgIGlmICh0aGlzLm9uRmlsZVNlbGVjdGVkKSB7XHJcbiAgICAgIC8vIE9ubHkgY2FsbCB0aGUgb25GaWxlU2VsZWN0ZWQgY2FsbGJhY2sgdG8gdXBsb2FkIHRoZSBmaWxlIGlmIHRoZSBmb3JtIGdyb3VwIGlzIHZhbGlkIG9yIHdlIGFyZSBub3QgdmFsaWRhdGluZyBiZWZvcmUgdXBsb2FkXHJcbiAgICAgIGlmICghdGhpcy52YWxpZGF0ZUJlZm9yZVVwbG9hZCB8fCB0aGlzLmZvcm1Nb2RlbC52YWxpZCkge1xyXG4gICAgICAgIHRyeSB7XHJcbiAgICAgICAgICBsZXQgcmVzdWx0ID0gYXdhaXQgdGhpcy5vbkZpbGVTZWxlY3RlZChmaWxlKTtcclxuICBcclxuICAgICAgICAgIC8vIElmIHdlIGRpZCB2YWxpZGF0aW9uLCBqdXN0IHBhdGNoIHRoZSBmb3JtIHJlc3VsdCBiZWNhdXNlIHRoZSBmaWxlIGlzIGFscmVhZHkgaW4gdGhlIGZvcm1cclxuICAgICAgICAgIGlmICh0aGlzLnZhbGlkYXRlQmVmb3JlVXBsb2FkKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZm9ybU1vZGVsLnBhdGNoVmFsdWUoeyB1cGxvYWRSZXN1bHQ6IHJlc3VsdCA/PyBudWxsIH0pO1xyXG4gICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5mb3JtTW9kZWwucGF0Y2hWYWx1ZSh7IGJhc2U2NEZpbGVTdHJpbmcsIGZpbGUsIG5hbWU6IGZpbGUubmFtZSwgdXBsb2FkUmVzdWx0OiByZXN1bHQgPz8gbnVsbCB9KTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9IGNhdGNoIChlKSB7XHJcbiAgICAgICAgICAvLyBCdW1tZXIsIHdlJ3JlIG5vdCBnb2luZyB0byBkbyBhbnl0aGluZyBhYm91dCBpdCB0aG91Z2guXHJcbiAgICAgICAgICAvLyBXZSBhcmUgbm90IHBhdGNoaW5nIGFueSBvZiB0aGUgcmVzdWx0IHNvIGFueSBleGlzdGluZyBpbmZvcm1hdGlvbiByZW1haW5zXHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAvLyBJZiB3ZSBkb24ndCBoYXZlIGFuIG9uRmlsZVNlbGVjdGVkIGNhbGxiYWNrIHdlIGp1c3QgcGF0Y2ggdGhlIGZvcm0gbW9kZWwuXHJcbiAgICAvLyBJbiB0aGUgY2FzZSBvZiBwcmUtdXBsb2FkIHZhbGlkYXRpb24gdGhlIGZvcm0gYWxyZWFkeSBoYXMgdGhlIGZpbGUgc28gd2UgZG9uJ3Qgd2FudCB0byBwYXRjaCBhZ2Fpbi5cclxuICAgIH0gZWxzZSBpZiAoIXRoaXMudmFsaWRhdGVCZWZvcmVVcGxvYWQpIHtcclxuICAgICAgdGhpcy5mb3JtTW9kZWwucGF0Y2hWYWx1ZSh7IGJhc2U2NEZpbGVTdHJpbmcsIGZpbGUsIG5hbWU6IGZpbGUubmFtZSwgdXBsb2FkUmVzdWx0OiBudWxsIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLyoqIFBhdGNoZXMgdGhlIGZvcm0gd2l0aCB0aGUgc2VsZWN0ZWQgZmlsZSBpbiBvcmRlciB0byB0cmlnZ2VyIGNvbnRyb2wgdmFsaWRhdGlvbiAqL1xyXG4gIHByaXZhdGUgYXN5bmMgdmFsaWRhdGVGaWxlKGZpbGU6IEZpbGUsIGJhc2U2NEZpbGVTdHJpbmc6IHN0cmluZyB8IG51bGwgPSBudWxsKTogUHJvbWlzZTx2b2lkPiB7XHJcbiAgICAvLyBQYXRjaCB0aGUgZmlsZSBmaXJzdCB0byB0cmlnZ2VyIGFueSBmaWxlIHZhbGlkYXRvcnNcclxuICAgIHRoaXMuZm9ybU1vZGVsLnBhdGNoVmFsdWUoeyBiYXNlNjRGaWxlU3RyaW5nLCBmaWxlLCBuYW1lOiBmaWxlLm5hbWUsIHVwbG9hZFJlc3VsdDogbnVsbCB9KTtcclxuXHJcbiAgICAvLyBJZiB3ZSBoYXZlIGFueSBhc3luYyB2YWxpZGF0b3JzIHBlbmRpbmcgd2UgbmVlZCB0byB3YWl0IGZvciB0aGVtIHRvIGNvbXBsZXRlIGJlZm9yZSB3ZSBrbm93IGlmIHRoZSBmb3JtIGlzIHZhbGlkXHJcbiAgICBpZiAodGhpcy5mb3JtTW9kZWwucGVuZGluZykge1xyXG4gICAgICBhd2FpdCBsYXN0VmFsdWVGcm9tKHRoaXMuZm9ybU1vZGVsLnN0YXR1c0NoYW5nZXMucGlwZShmaWx0ZXIoc3RhdHVzID0+IHN0YXR1cyAhPT0gJ1BFTkRJTkcnKSwgdGFrZSgxKSwgdGFrZVVudGlsKHRoaXMuY29tcG9uZW50RGVzdHJveWVkKSkpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIE1hcmsgdGhlIG5hbWUgY29udHJvbCBhcyB0b3VjaGVkIHNvIHRoYXQgYW55IHZhbGlkYXRpb24gZXJyb3JzIHdpbGwgc2hvd1xyXG4gICAgdGhpcy5mb3JtTW9kZWwuY29udHJvbHMubmFtZS5tYXJrQXNUb3VjaGVkKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBCYXNlZCBvbiB0aGUgZmlsZU91dHB1dCByZXR1cm4gd2hldGhlciB0aGlzIGNvbXBvbmVudCBpcyBleHBlY3RlZCB0byBkZWxpdmVyIGEgYmFzZTY0IG91dHB1dFxyXG4gICAqIEByZXR1cm5zIFxyXG4gICAqL1xyXG4gIHByaXZhdGUgaXNCYXNlNjRGaWxlT3V0cHV0KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuZmlsZU91dHB1dCA9PT0gJ2Jhc2U2NCc7XHJcbiAgfVxyXG5cclxuICAvKiogTWFwcyB0aGUgZmlsZXMgdG8gYW4gYXJyYXkgb2YgRmlsZSBvYmplY3RzIGFuZCBzZW5kcyB0aGVtIGFsb25nXHJcbiAgICogdG8gdGhlIGRlcml2ZWQgb25NdWx0aXBsZUZpbGVTZWxlY3RlZCBtZXRob2QgaW4gdGhlIGhvc3RpbmcgY29tcG9uZW50XHJcbiAgICovXHJcbiAgcHJpdmF0ZSBhc3luYyBoYW5kbGVNdWx0aXBsZUZpbGVzKGZpbGVzOiBGaWxlTGlzdCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgY29uc3QgZmlsZXNBcnJheSA9IEFycmF5LmZyb20oZmlsZXMpO1xyXG5cclxuICAgIGlmICh0aGlzLm9uTXVsdGlwbGVGaWxlc1NlbGVjdGVkKSB7XHJcbiAgICAgIHRyeSB7XHJcbiAgICAgICAgbGV0IHJlc3VsdCA9IGF3YWl0IHRoaXMub25NdWx0aXBsZUZpbGVzU2VsZWN0ZWQoZmlsZXNBcnJheSk7XHJcbiAgICAgIH0gY2F0Y2ggKGUpIHtcclxuICAgICAgICBjb25zb2xlLmxvZygnZXJyb3I6ICcsIGUpO1xyXG4gICAgICB9ICBcclxuICAgIH1cclxuICB9O1xyXG5cclxuICBwcml2YXRlIGFzeW5jIHJlYWRGaWxlKGZpbGU6IEZpbGUpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgIGNvbnN0IHJlYWRlcjogRmlsZVJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XHJcblxyXG4gICAgcmVhZGVyLm9ubG9hZGVuZCA9IGFzeW5jIGUgPT4ge1xyXG4gICAgICBsZXQgYmFzZTY0RmlsZVN0cmluZzogc3RyaW5nIHwgdW5kZWZpbmVkID0gcmVhZGVyPy5yZXN1bHQ/LnRvU3RyaW5nKCkuc3BsaXQoXCIsXCIpWzFdO1xyXG4gICAgICBhd2FpdCB0aGlzLnByb2Nlc3NGaWxlKGZpbGUsIGJhc2U2NEZpbGVTdHJpbmcpO1xyXG4gICAgfTtcclxuXHJcbiAgICBpZiAodGhpcy5pc0Jhc2U2NEZpbGVPdXRwdXQoKSkge1xyXG4gICAgICByZWFkZXIucmVhZEFzRGF0YVVSTChmaWxlKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGF3YWl0IHRoaXMucHJvY2Vzc0ZpbGUoZmlsZSk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxlYy1mb3JtLWdyb3VwIFtsYWJlbF09XCJsYWJlbFwiXHJcbiAgICAgICAgICAgICAgIFtmb3JtR3JvdXBdPVwiZm9ybU1vZGVsXCJcclxuICAgICAgICAgICAgICAgW2hlbHBQb3BvdmVyXT1cImhlbHBQb3BvdmVyXCJcclxuICAgICAgICAgICAgICAgW2hlbHBQb3BvdmVyUG9zaXRpb25dPVwiaGVscFBvcG92ZXJQb3NpdGlvblwiXHJcbiAgICAgICAgICAgICAgIGNsYXNzPVwibWItMFwiPlxyXG4gIDxkaXYgY2xhc3M9XCJkLWZsZXggY29udHJvbC1ncm91cFwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LWdyb3cgcG9zaXRpb24tcmVsYXRpdmVcIj5cclxuICAgICAgPGlucHV0ICNmaWxlSW5wdXRcclxuICAgICAgICAgICAgIGlkPVwie3tpbnB1dElkfX1faW5wdXRcIlxyXG4gICAgICAgICAgICAgdHlwZT1cImZpbGVcIlxyXG4gICAgICAgICAgICAgdGFiaW5kZXg9XCItMVwiXHJcbiAgICAgICAgICAgICBbYXR0ci5hY2NlcHRdPVwiZmlsZVR5cGVBY2NlcHRcIlxyXG4gICAgICAgICAgICAgKGNoYW5nZSk9XCJmaWxlQ2hhbmdlKCRldmVudC50YXJnZXQuZmlsZXMpXCJcclxuICAgICAgICAgICAgIFtjbGFzcy5oYXMtdmFsdWVdPVwiZGlzcGxheVR5cGUgPT09ICdmaWxlJyA/IGZvcm1Nb2RlbD8uZ2V0KCduYW1lJykudmFsdWUgOiB1bmRlZmluZWRcIlxyXG4gICAgICAgICAgICAgW2F0dHIubXVsdGlwbGVdPVwibXVsdGlTZWxlY3QgPyAnbXVsdGlwbGUnIDogdW5kZWZpbmVkXCI+XHJcbiAgICAgIDxlYy1mb3JtLWNvbnRyb2wgKm5nSWY9XCJkaXNwbGF5VHlwZSA9PT0gJ2ZpbGUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBpZD1cInt7aW5wdXRJZH19X2Zvcm1Db250cm9sXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cInRleHQtdHJ1bmNhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW3BlbmRpbmddPVwicGVuZGluZyB8fCBmb3JtTW9kZWw/LnBlbmRpbmdcIj5cclxuICAgICAgICA8aW5wdXQgaWQ9XCJ7e2lucHV0SWR9fV9uYW1lXCJcclxuICAgICAgICAgICAgICAgW2Zvcm1Db250cm9sXT1cImZvcm1Nb2RlbD8uZ2V0KCduYW1lJylcIlxyXG4gICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXHJcbiAgICAgICAgICAgICAgIFt0YWJpbmRleF09XCItMVwiPlxyXG4gICAgICA8L2VjLWZvcm0tY29udHJvbD5cclxuICAgIDwvZGl2PlxyXG4gICAgPGVjLWJ1dHRvbiAqbmdJZj1cImRpc3BsYXlUeXBlID09PSAnZmlsZSdcIlxyXG4gICAgICAgICAgICAgICAjYnJvd3NlQnRuXHJcbiAgICAgICAgICAgICAgIGlkPVwie3tpbnB1dElkfX1fYnJvd3NlQnRuXCJcclxuICAgICAgICAgICAgICAgKGNsaWNrZWQpPVwiZmlsZUlucHV0LmNsaWNrKClcIlxyXG4gICAgICAgICAgICAgICB0eXBlPVwic2Vjb25kYXJ5XCJcclxuICAgICAgICAgICAgICAgW3RhYmluZGV4XT1cInRhYmluZGV4XCJcclxuICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cImZvcm1Nb2RlbD8uZ2V0KCduYW1lJykuZGlzYWJsZWRcIlxyXG4gICAgICAgICAgICAgICBsYWJlbD1cIkJyb3dzZVwiXHJcbiAgICAgICAgICAgICAgIFthdXRvZm9jdXNdPVwiYXV0b2ZvY3VzXCI+XHJcbiAgICA8L2VjLWJ1dHRvbj5cclxuICA8L2Rpdj5cclxuICA8ZWMtYnV0dG9uICpuZ0lmPVwiZGlzcGxheVR5cGUgPT09ICdidXR0b24nXCJcclxuICAgICAgICAgICAgIGlkPVwie3tpbnB1dElkfX1fYnRuXCJcclxuICAgICAgICAgICAgIFtwZW5kaW5nXT1cInBlbmRpbmdcIlxyXG4gICAgICAgICAgICAgW3R5cGVdPVwiYnV0dG9uVHlwZVwiXHJcbiAgICAgICAgICAgICBbbGFiZWxdPVwiYnV0dG9uTGFiZWwgPz8gJ0Jyb3dzZV9UQycgfCB0cmFuc2xhdGVcIlxyXG4gICAgICAgICAgICAgKGNsaWNrZWQpPVwiZmlsZUlucHV0LmNsaWNrKClcIlxyXG4gICAgICAgICAgICAgc3R5bGU9XCJ3aWR0aDogMTAwJTtcIj5cclxuICA8L2VjLWJ1dHRvbj5cclxuPC9lYy1mb3JtLWdyb3VwPiJdfQ==
|
|
@@ -57,11 +57,11 @@ export class FormControlComponent {
|
|
|
57
57
|
this._formModel?.reset();
|
|
58
58
|
}
|
|
59
59
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FormControlComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
60
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FormControlComponent, selector: "ec-form-control", inputs: { id: "id", icon: "icon", actionIcon: "actionIcon", showClear: "showClear", formModelInput: ["formModel", "formModelInput"], autofocus: "autofocus", tabindex: "tabindex", pending: "pending", required: "required", readonly: "readonly" }, outputs: { actionClicked: "actionClicked" }, host: { properties: { "class.is-pending": "this.pending", "class.is-required": "this.required", "class.is-readonly": "this.readonly", "class.is-empty": "this.empty", "class.is-invalid": "this.invalid", "class.is-disabled": "this.disabled" } }, queries: [{ propertyName: "formControlDirective", first: true, predicate: FormControlDirective, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-content></ng-content>\n<i id=\"{{id + '_icon'}}\" class=\"ec-form-control-icon ec-icon {{icon}}\"></i>\n<i id=\"{{id + '_loading'}}\" class=\"ec-form-control-icon ec-icon icon-loading\"></i>\n<i id=\"{{id + '_required'}}\" class=\"ec-form-control-icon ec-icon icon-required\"></i>\n<i id=\"{{id + '_invalid'}}\" class=\"ec-form-control-icon ec-icon icon-invalid\"></i>\n<button *ngIf=\"showClear\"\n id=\"{{id + '_clear'}}\"\n [attr.disabled]=\"disabled || undefined\"\n class=\"ec-form-control-clear\"\n (click)=\"clear()\"\n tabindex=\"{{tabindex}}\">\n <i class=\"ec-icon icon-cancel\"></i>\n</button>\n<button *ngIf=\"actionIcon\"\n id=\"{{id + '_action'}}\"\n [attr.disabled]=\"disabled || undefined\"\n class=\"ec-form-control-action\"\n (click)=\"actionClicked.emit($event)\"\n tabindex=\"{{tabindex}}\">\n <i class=\"ec-icon {{actionIcon}}\"></i>\n</button>\n<div class=\"ec-focus-ring\"></div>\n", styles: ["ec-form-control{background-color:var(--ec-form-control-background-color);background-clip:padding-box;border:1px solid var(--ec-form-control-border-color);border-radius:var(--ec-border-radius);padding:0 .5rem;position:relative;color:var(--ec-form-control-color);display:flex;font-size:var(--ec-form-control-font-size);min-height:2rem;width:100%}ec-form-control>input,ec-form-control>select,ec-form-control>textarea,ec-form-control>div[contenteditable=true]{color:inherit;flex:1 1;min-width:0;border:0;background-color:transparent;order:2}ec-form-control>input::selection,ec-form-control>select::selection,ec-form-control>textarea::selection,ec-form-control>div[contenteditable=true]::selection{background-color:var(--ec-form-control-background-color-selection);color:var(--ec-form-control-color-selection)}ec-form-control>input::-webkit-input-placeholder,ec-form-control>select::-webkit-input-placeholder,ec-form-control>textarea::-webkit-input-placeholder,ec-form-control>div[contenteditable=true]::-webkit-input-placeholder{color:var(--ec-form-control-color-placeholder)}ec-form-control>input::-moz-placeholder,ec-form-control>select::-moz-placeholder,ec-form-control>textarea::-moz-placeholder,ec-form-control>div[contenteditable=true]::-moz-placeholder{color:var(--ec-form-control-color-placeholder);opacity:1}ec-form-control>input:-ms-input-placeholder,ec-form-control>select:-ms-input-placeholder,ec-form-control>textarea:-ms-input-placeholder,ec-form-control>div[contenteditable=true]:-ms-input-placeholder{color:var(--ec-form-control-color-placeholder)}ec-form-control>input:-moz-placeholder,ec-form-control>select:-moz-placeholder,ec-form-control>textarea:-moz-placeholder,ec-form-control>div[contenteditable=true]:-moz-placeholder{color:var(--ec-form-control-color-placeholder);opacity:1}ec-form-control>input:focus,ec-form-control>select:focus,ec-form-control>textarea:focus,ec-form-control>div[contenteditable=true]:focus{outline:none}ec-form-control>input:focus~.ec-focus-ring,ec-form-control>select:focus~.ec-focus-ring,ec-form-control>textarea:focus~.ec-focus-ring,ec-form-control>div[contenteditable=true]:focus~.ec-focus-ring{display:block}ec-form-control>input,ec-form-control>textarea,ec-form-control>select,ec-form-control>div[contenteditable=true],ec-form-control .ec-form-control-prefix,ec-form-control .ec-form-control-suffix{padding:calc((1.875rem - var(--ec-font-size-body) * 1.25) / 2) 0;line-height:1.25;font-size:inherit}ec-form-control>textarea{resize:none;padding:.3125rem 0}ec-form-control .ec-form-control-icon{margin-top:.4375rem;margin-right:.25rem;order:1}ec-form-control .ec-form-control-icon:not([class*=icon-]){display:none}ec-form-control .icon-required,ec-form-control .icon-invalid{color:var(--ec-form-control-border-color-invalid)}ec-form-control .ec-form-control-clear,ec-form-control .ec-form-control-action{font-size:var(--ec-font-size-action);height:2rem;line-height:1.25rem;padding:.3125rem .5rem;border-radius:var(--ec-border-radius);display:flex;cursor:pointer;flex:none;height:1.875rem;width:2rem;order:3;background-color:transparent;border:0;border-radius:0;display:inline-flex;align-items:center;justify-content:center;outline:none}ec-form-control .ec-form-control-clear .label,ec-form-control .ec-form-control-action .label{display:flex;align-items:center;justify-content:center;white-space:nowrap;flex:auto}ec-form-control .ec-form-control-clear .ec-icon,ec-form-control .ec-form-control-action .ec-icon{flex:none}ec-form-control .ec-form-control-clear .ec-icon+.label,ec-form-control .ec-form-control-action .ec-icon+.label{flex:none;margin-left:.25rem}ec-form-control .ec-form-control-clear.has-badge,ec-form-control .ec-form-control-action.has-badge{padding-right:.0625rem}ec-form-control .ec-form-control-clear:focus,ec-form-control .ec-form-control-action:focus{outline:none;position:relative;z-index:1}ec-form-control .ec-form-control-clear:disabled,ec-form-control .ec-form-control-action:disabled{background-color:var(--ec-background-color-disabled);border:1px solid var(--ec-form-control-border-color-disabled);color:var(--ec-color-disabled-dark);opacity:var(--ec-form-control-opacity-disabled);cursor:default}ec-form-control .ec-form-control-clear:disabled,ec-form-control .ec-form-control-action:disabled{border:0;background-color:transparent;border-color:transparent}ec-form-control .ec-form-control-clear:last-of-type,ec-form-control .ec-form-control-action:last-of-type{margin-right:-.5rem}ec-form-control .ec-form-control-clear:hover:not(:disabled),ec-form-control .ec-form-control-action:hover:not(:disabled){cursor:pointer;background-color:var(--ec-background-color-hover)}ec-form-control .ec-form-control-clear:active:not(:disabled),ec-form-control .ec-form-control-action:active:not(:disabled){background-color:var(--ec-background-color-selected);font-weight:700}ec-form-control .ec-form-control-clear:focus:not(:disabled),ec-form-control .ec-form-control-action:focus:not(:disabled){box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}ec-form-control button:last-of-type{border-top-right-radius:calc(var(--ec-form-control-border-radius) - .0625rem);border-bottom-right-radius:calc(var(--ec-form-control-border-radius) - .0625rem)}ec-form-control .ec-form-control-clear{width:1.5rem}ec-form-control .ec-form-control-prefix,ec-form-control .ec-form-control-suffix{color:var(--ec-color-secondary-dark);flex:none;cursor:default}ec-form-control .ec-form-control-prefix{margin-right:.125rem;order:2}ec-form-control .ec-form-control-suffix{margin-left:.125rem;order:3}ec-form-control .ec-focus-ring{position:absolute;inset:-1px;border:.125rem solid var(--ec-color-interactive);pointer-events:none;display:none;border-radius:var(--ec-form-control-border-radius);z-index:1}ec-form-control.is-pending .icon-invalid,ec-form-control.is-pending .icon-required{display:none}ec-form-control.is-invalid{border-color:var(--ec-form-control-border-color-invalid);background-color:var(--ec-form-control-background-color-invalid)}ec-form-control.is-invalid .icon-required{display:none}ec-form-control.is-empty .ec-form-control-clear{display:none}ec-form-control.is-required.is-empty .ec-form-control-icon:first-of-type{display:none}ec-form-control:not(.is-pending) .icon-loading{display:none}ec-form-control:not(.is-required) .icon-required,ec-form-control:not(.is-empty) .icon-required{display:none}ec-form-control:not(.is-invalid) .icon-invalid{display:none}ec-form-control.is-readonly,ec-form-control.is-disabled{background-color:var(--ec-form-control-background-color-disabled)}ec-form-control.is-readonly .icon-loading,ec-form-control.is-readonly .icon-invalid,ec-form-control.is-readonly .icon-required,ec-form-control.is-readonly .ec-form-control-clear,ec-form-control.is-disabled .icon-loading,ec-form-control.is-disabled .icon-invalid,ec-form-control.is-disabled .icon-required,ec-form-control.is-disabled .ec-form-control-clear{display:none}ec-form-control.is-readonly{border-color:var(--ec-form-control-border-color-readonly);color:var(--ec-form-control-color-readonly)}ec-form-control.is-readonly .ec-form-control-action{display:none}ec-form-control.is-disabled:not(.is-readonly){color:var(--ec-form-control-color-disabled);opacity:.6}ec-form-control.is-disabled:not(.is-readonly) .ec-form-control-prefix,ec-form-control.is-disabled:not(.is-readonly) .ec-form-control-suffix{color:inherit}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
60
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: FormControlComponent, selector: "ec-form-control", inputs: { id: "id", icon: "icon", actionIcon: "actionIcon", showClear: "showClear", formModelInput: ["formModel", "formModelInput"], autofocus: "autofocus", tabindex: "tabindex", pending: "pending", required: "required", readonly: "readonly" }, outputs: { actionClicked: "actionClicked" }, host: { properties: { "class.is-pending": "this.pending", "class.is-required": "this.required", "class.is-readonly": "this.readonly", "class.is-empty": "this.empty", "class.is-invalid": "this.invalid", "class.is-disabled": "this.disabled" } }, queries: [{ propertyName: "formControlDirective", first: true, predicate: FormControlDirective, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-content></ng-content>\r\n<i id=\"{{id + '_icon'}}\" class=\"ec-form-control-icon ec-icon {{icon}}\"></i>\r\n<i id=\"{{id + '_loading'}}\" class=\"ec-form-control-icon ec-icon icon-loading\"></i>\r\n<i id=\"{{id + '_required'}}\" class=\"ec-form-control-icon ec-icon icon-required\"></i>\r\n<i id=\"{{id + '_invalid'}}\" class=\"ec-form-control-icon ec-icon icon-invalid\"></i>\r\n<button *ngIf=\"showClear\"\r\n id=\"{{id + '_clear'}}\"\r\n [attr.disabled]=\"disabled || undefined\"\r\n class=\"ec-form-control-clear\"\r\n (click)=\"clear()\"\r\n tabindex=\"{{tabindex}}\">\r\n <i class=\"ec-icon icon-cancel\"></i>\r\n</button>\r\n<button *ngIf=\"actionIcon\"\r\n id=\"{{id + '_action'}}\"\r\n [attr.disabled]=\"disabled || undefined\"\r\n class=\"ec-form-control-action\"\r\n (click)=\"actionClicked.emit($event)\"\r\n tabindex=\"{{tabindex}}\">\r\n <i class=\"ec-icon {{actionIcon}}\"></i>\r\n</button>\r\n<div class=\"ec-focus-ring\"></div>\r\n", styles: ["ec-form-control{background-color:var(--ec-form-control-background-color);background-clip:padding-box;border:1px solid var(--ec-form-control-border-color);border-radius:var(--ec-border-radius);padding:0 .5rem;position:relative;color:var(--ec-form-control-color);display:flex;font-size:var(--ec-form-control-font-size);min-height:2rem;width:100%}ec-form-control>input,ec-form-control>select,ec-form-control>textarea,ec-form-control>div[contenteditable=true]{color:inherit;flex:1 1;min-width:0;border:0;background-color:transparent;order:2}ec-form-control>input::selection,ec-form-control>select::selection,ec-form-control>textarea::selection,ec-form-control>div[contenteditable=true]::selection{background-color:var(--ec-form-control-background-color-selection);color:var(--ec-form-control-color-selection)}ec-form-control>input::-webkit-input-placeholder,ec-form-control>select::-webkit-input-placeholder,ec-form-control>textarea::-webkit-input-placeholder,ec-form-control>div[contenteditable=true]::-webkit-input-placeholder{color:var(--ec-form-control-color-placeholder)}ec-form-control>input::-moz-placeholder,ec-form-control>select::-moz-placeholder,ec-form-control>textarea::-moz-placeholder,ec-form-control>div[contenteditable=true]::-moz-placeholder{color:var(--ec-form-control-color-placeholder);opacity:1}ec-form-control>input:-ms-input-placeholder,ec-form-control>select:-ms-input-placeholder,ec-form-control>textarea:-ms-input-placeholder,ec-form-control>div[contenteditable=true]:-ms-input-placeholder{color:var(--ec-form-control-color-placeholder)}ec-form-control>input:-moz-placeholder,ec-form-control>select:-moz-placeholder,ec-form-control>textarea:-moz-placeholder,ec-form-control>div[contenteditable=true]:-moz-placeholder{color:var(--ec-form-control-color-placeholder);opacity:1}ec-form-control>input:focus,ec-form-control>select:focus,ec-form-control>textarea:focus,ec-form-control>div[contenteditable=true]:focus{outline:none}ec-form-control>input:focus~.ec-focus-ring,ec-form-control>select:focus~.ec-focus-ring,ec-form-control>textarea:focus~.ec-focus-ring,ec-form-control>div[contenteditable=true]:focus~.ec-focus-ring{display:block}ec-form-control>input,ec-form-control>textarea,ec-form-control>select,ec-form-control>div[contenteditable=true],ec-form-control .ec-form-control-prefix,ec-form-control .ec-form-control-suffix{padding:calc((1.875rem - var(--ec-font-size-body) * 1.25) / 2) 0;line-height:1.25;font-size:inherit}ec-form-control>textarea{resize:none;padding:.3125rem 0}ec-form-control .ec-form-control-icon{margin-top:.4375rem;margin-right:.25rem;order:1}ec-form-control .ec-form-control-icon:not([class*=icon-]){display:none}ec-form-control .icon-required,ec-form-control .icon-invalid{color:var(--ec-form-control-border-color-invalid)}ec-form-control .ec-form-control-clear,ec-form-control .ec-form-control-action{font-size:var(--ec-font-size-action);height:2rem;line-height:1.25rem;padding:.3125rem .5rem;border-radius:var(--ec-border-radius);display:flex;cursor:pointer;flex:none;height:1.875rem;width:2rem;order:3;background-color:transparent;border:0;border-radius:0;display:inline-flex;align-items:center;justify-content:center;outline:none}ec-form-control .ec-form-control-clear .label,ec-form-control .ec-form-control-action .label{display:flex;align-items:center;justify-content:center;white-space:nowrap;flex:auto}ec-form-control .ec-form-control-clear .ec-icon,ec-form-control .ec-form-control-action .ec-icon{flex:none}ec-form-control .ec-form-control-clear .ec-icon+.label,ec-form-control .ec-form-control-action .ec-icon+.label{flex:none;margin-left:.25rem}ec-form-control .ec-form-control-clear.has-badge,ec-form-control .ec-form-control-action.has-badge{padding-right:.0625rem}ec-form-control .ec-form-control-clear:focus,ec-form-control .ec-form-control-action:focus{outline:none;position:relative;z-index:1}ec-form-control .ec-form-control-clear:disabled,ec-form-control .ec-form-control-action:disabled{background-color:var(--ec-background-color-disabled);border:1px solid var(--ec-form-control-border-color-disabled);color:var(--ec-color-disabled-dark);opacity:var(--ec-form-control-opacity-disabled);cursor:default}ec-form-control .ec-form-control-clear:disabled,ec-form-control .ec-form-control-action:disabled{border:0;background-color:transparent;border-color:transparent}ec-form-control .ec-form-control-clear:last-of-type,ec-form-control .ec-form-control-action:last-of-type{margin-right:-.5rem}ec-form-control .ec-form-control-clear:hover:not(:disabled),ec-form-control .ec-form-control-action:hover:not(:disabled){cursor:pointer;background-color:var(--ec-background-color-hover)}ec-form-control .ec-form-control-clear:active:not(:disabled),ec-form-control .ec-form-control-action:active:not(:disabled){background-color:var(--ec-background-color-selected);font-weight:700}ec-form-control .ec-form-control-clear:focus:not(:disabled),ec-form-control .ec-form-control-action:focus:not(:disabled){box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}ec-form-control button:last-of-type{border-top-right-radius:calc(var(--ec-form-control-border-radius) - .0625rem);border-bottom-right-radius:calc(var(--ec-form-control-border-radius) - .0625rem)}ec-form-control .ec-form-control-clear{width:1.5rem}ec-form-control .ec-form-control-prefix,ec-form-control .ec-form-control-suffix{color:var(--ec-color-secondary-dark);flex:none;cursor:default}ec-form-control .ec-form-control-prefix{margin-right:.125rem;order:2}ec-form-control .ec-form-control-suffix{margin-left:.125rem;order:3}ec-form-control .ec-focus-ring{position:absolute;inset:-1px;border:.125rem solid var(--ec-color-interactive);pointer-events:none;display:none;border-radius:var(--ec-form-control-border-radius);z-index:1}ec-form-control.is-pending .icon-invalid,ec-form-control.is-pending .icon-required{display:none}ec-form-control.is-invalid{border-color:var(--ec-form-control-border-color-invalid);background-color:var(--ec-form-control-background-color-invalid)}ec-form-control.is-invalid .icon-required{display:none}ec-form-control.is-empty .ec-form-control-clear{display:none}ec-form-control.is-required.is-empty .ec-form-control-icon:first-of-type{display:none}ec-form-control:not(.is-pending) .icon-loading{display:none}ec-form-control:not(.is-required) .icon-required,ec-form-control:not(.is-empty) .icon-required{display:none}ec-form-control:not(.is-invalid) .icon-invalid{display:none}ec-form-control.is-readonly,ec-form-control.is-disabled{background-color:var(--ec-form-control-background-color-disabled)}ec-form-control.is-readonly .icon-loading,ec-form-control.is-readonly .icon-invalid,ec-form-control.is-readonly .icon-required,ec-form-control.is-readonly .ec-form-control-clear,ec-form-control.is-disabled .icon-loading,ec-form-control.is-disabled .icon-invalid,ec-form-control.is-disabled .icon-required,ec-form-control.is-disabled .ec-form-control-clear{display:none}ec-form-control.is-readonly{border-color:var(--ec-form-control-border-color-readonly);color:var(--ec-form-control-color-readonly)}ec-form-control.is-readonly .ec-form-control-action{display:none}ec-form-control.is-disabled:not(.is-readonly){color:var(--ec-form-control-color-disabled);opacity:.6}ec-form-control.is-disabled:not(.is-readonly) .ec-form-control-prefix,ec-form-control.is-disabled:not(.is-readonly) .ec-form-control-suffix{color:inherit}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
61
61
|
}
|
|
62
62
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FormControlComponent, decorators: [{
|
|
63
63
|
type: Component,
|
|
64
|
-
args: [{ selector: 'ec-form-control', encapsulation: ViewEncapsulation.None, template: "<ng-content></ng-content>\n<i id=\"{{id + '_icon'}}\" class=\"ec-form-control-icon ec-icon {{icon}}\"></i>\n<i id=\"{{id + '_loading'}}\" class=\"ec-form-control-icon ec-icon icon-loading\"></i>\n<i id=\"{{id + '_required'}}\" class=\"ec-form-control-icon ec-icon icon-required\"></i>\n<i id=\"{{id + '_invalid'}}\" class=\"ec-form-control-icon ec-icon icon-invalid\"></i>\n<button *ngIf=\"showClear\"\n id=\"{{id + '_clear'}}\"\n [attr.disabled]=\"disabled || undefined\"\n class=\"ec-form-control-clear\"\n (click)=\"clear()\"\n tabindex=\"{{tabindex}}\">\n <i class=\"ec-icon icon-cancel\"></i>\n</button>\n<button *ngIf=\"actionIcon\"\n id=\"{{id + '_action'}}\"\n [attr.disabled]=\"disabled || undefined\"\n class=\"ec-form-control-action\"\n (click)=\"actionClicked.emit($event)\"\n tabindex=\"{{tabindex}}\">\n <i class=\"ec-icon {{actionIcon}}\"></i>\n</button>\n<div class=\"ec-focus-ring\"></div>\n", styles: ["ec-form-control{background-color:var(--ec-form-control-background-color);background-clip:padding-box;border:1px solid var(--ec-form-control-border-color);border-radius:var(--ec-border-radius);padding:0 .5rem;position:relative;color:var(--ec-form-control-color);display:flex;font-size:var(--ec-form-control-font-size);min-height:2rem;width:100%}ec-form-control>input,ec-form-control>select,ec-form-control>textarea,ec-form-control>div[contenteditable=true]{color:inherit;flex:1 1;min-width:0;border:0;background-color:transparent;order:2}ec-form-control>input::selection,ec-form-control>select::selection,ec-form-control>textarea::selection,ec-form-control>div[contenteditable=true]::selection{background-color:var(--ec-form-control-background-color-selection);color:var(--ec-form-control-color-selection)}ec-form-control>input::-webkit-input-placeholder,ec-form-control>select::-webkit-input-placeholder,ec-form-control>textarea::-webkit-input-placeholder,ec-form-control>div[contenteditable=true]::-webkit-input-placeholder{color:var(--ec-form-control-color-placeholder)}ec-form-control>input::-moz-placeholder,ec-form-control>select::-moz-placeholder,ec-form-control>textarea::-moz-placeholder,ec-form-control>div[contenteditable=true]::-moz-placeholder{color:var(--ec-form-control-color-placeholder);opacity:1}ec-form-control>input:-ms-input-placeholder,ec-form-control>select:-ms-input-placeholder,ec-form-control>textarea:-ms-input-placeholder,ec-form-control>div[contenteditable=true]:-ms-input-placeholder{color:var(--ec-form-control-color-placeholder)}ec-form-control>input:-moz-placeholder,ec-form-control>select:-moz-placeholder,ec-form-control>textarea:-moz-placeholder,ec-form-control>div[contenteditable=true]:-moz-placeholder{color:var(--ec-form-control-color-placeholder);opacity:1}ec-form-control>input:focus,ec-form-control>select:focus,ec-form-control>textarea:focus,ec-form-control>div[contenteditable=true]:focus{outline:none}ec-form-control>input:focus~.ec-focus-ring,ec-form-control>select:focus~.ec-focus-ring,ec-form-control>textarea:focus~.ec-focus-ring,ec-form-control>div[contenteditable=true]:focus~.ec-focus-ring{display:block}ec-form-control>input,ec-form-control>textarea,ec-form-control>select,ec-form-control>div[contenteditable=true],ec-form-control .ec-form-control-prefix,ec-form-control .ec-form-control-suffix{padding:calc((1.875rem - var(--ec-font-size-body) * 1.25) / 2) 0;line-height:1.25;font-size:inherit}ec-form-control>textarea{resize:none;padding:.3125rem 0}ec-form-control .ec-form-control-icon{margin-top:.4375rem;margin-right:.25rem;order:1}ec-form-control .ec-form-control-icon:not([class*=icon-]){display:none}ec-form-control .icon-required,ec-form-control .icon-invalid{color:var(--ec-form-control-border-color-invalid)}ec-form-control .ec-form-control-clear,ec-form-control .ec-form-control-action{font-size:var(--ec-font-size-action);height:2rem;line-height:1.25rem;padding:.3125rem .5rem;border-radius:var(--ec-border-radius);display:flex;cursor:pointer;flex:none;height:1.875rem;width:2rem;order:3;background-color:transparent;border:0;border-radius:0;display:inline-flex;align-items:center;justify-content:center;outline:none}ec-form-control .ec-form-control-clear .label,ec-form-control .ec-form-control-action .label{display:flex;align-items:center;justify-content:center;white-space:nowrap;flex:auto}ec-form-control .ec-form-control-clear .ec-icon,ec-form-control .ec-form-control-action .ec-icon{flex:none}ec-form-control .ec-form-control-clear .ec-icon+.label,ec-form-control .ec-form-control-action .ec-icon+.label{flex:none;margin-left:.25rem}ec-form-control .ec-form-control-clear.has-badge,ec-form-control .ec-form-control-action.has-badge{padding-right:.0625rem}ec-form-control .ec-form-control-clear:focus,ec-form-control .ec-form-control-action:focus{outline:none;position:relative;z-index:1}ec-form-control .ec-form-control-clear:disabled,ec-form-control .ec-form-control-action:disabled{background-color:var(--ec-background-color-disabled);border:1px solid var(--ec-form-control-border-color-disabled);color:var(--ec-color-disabled-dark);opacity:var(--ec-form-control-opacity-disabled);cursor:default}ec-form-control .ec-form-control-clear:disabled,ec-form-control .ec-form-control-action:disabled{border:0;background-color:transparent;border-color:transparent}ec-form-control .ec-form-control-clear:last-of-type,ec-form-control .ec-form-control-action:last-of-type{margin-right:-.5rem}ec-form-control .ec-form-control-clear:hover:not(:disabled),ec-form-control .ec-form-control-action:hover:not(:disabled){cursor:pointer;background-color:var(--ec-background-color-hover)}ec-form-control .ec-form-control-clear:active:not(:disabled),ec-form-control .ec-form-control-action:active:not(:disabled){background-color:var(--ec-background-color-selected);font-weight:700}ec-form-control .ec-form-control-clear:focus:not(:disabled),ec-form-control .ec-form-control-action:focus:not(:disabled){box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}ec-form-control button:last-of-type{border-top-right-radius:calc(var(--ec-form-control-border-radius) - .0625rem);border-bottom-right-radius:calc(var(--ec-form-control-border-radius) - .0625rem)}ec-form-control .ec-form-control-clear{width:1.5rem}ec-form-control .ec-form-control-prefix,ec-form-control .ec-form-control-suffix{color:var(--ec-color-secondary-dark);flex:none;cursor:default}ec-form-control .ec-form-control-prefix{margin-right:.125rem;order:2}ec-form-control .ec-form-control-suffix{margin-left:.125rem;order:3}ec-form-control .ec-focus-ring{position:absolute;inset:-1px;border:.125rem solid var(--ec-color-interactive);pointer-events:none;display:none;border-radius:var(--ec-form-control-border-radius);z-index:1}ec-form-control.is-pending .icon-invalid,ec-form-control.is-pending .icon-required{display:none}ec-form-control.is-invalid{border-color:var(--ec-form-control-border-color-invalid);background-color:var(--ec-form-control-background-color-invalid)}ec-form-control.is-invalid .icon-required{display:none}ec-form-control.is-empty .ec-form-control-clear{display:none}ec-form-control.is-required.is-empty .ec-form-control-icon:first-of-type{display:none}ec-form-control:not(.is-pending) .icon-loading{display:none}ec-form-control:not(.is-required) .icon-required,ec-form-control:not(.is-empty) .icon-required{display:none}ec-form-control:not(.is-invalid) .icon-invalid{display:none}ec-form-control.is-readonly,ec-form-control.is-disabled{background-color:var(--ec-form-control-background-color-disabled)}ec-form-control.is-readonly .icon-loading,ec-form-control.is-readonly .icon-invalid,ec-form-control.is-readonly .icon-required,ec-form-control.is-readonly .ec-form-control-clear,ec-form-control.is-disabled .icon-loading,ec-form-control.is-disabled .icon-invalid,ec-form-control.is-disabled .icon-required,ec-form-control.is-disabled .ec-form-control-clear{display:none}ec-form-control.is-readonly{border-color:var(--ec-form-control-border-color-readonly);color:var(--ec-form-control-color-readonly)}ec-form-control.is-readonly .ec-form-control-action{display:none}ec-form-control.is-disabled:not(.is-readonly){color:var(--ec-form-control-color-disabled);opacity:.6}ec-form-control.is-disabled:not(.is-readonly) .ec-form-control-prefix,ec-form-control.is-disabled:not(.is-readonly) .ec-form-control-suffix{color:inherit}\n"] }]
|
|
64
|
+
args: [{ selector: 'ec-form-control', encapsulation: ViewEncapsulation.None, template: "<ng-content></ng-content>\r\n<i id=\"{{id + '_icon'}}\" class=\"ec-form-control-icon ec-icon {{icon}}\"></i>\r\n<i id=\"{{id + '_loading'}}\" class=\"ec-form-control-icon ec-icon icon-loading\"></i>\r\n<i id=\"{{id + '_required'}}\" class=\"ec-form-control-icon ec-icon icon-required\"></i>\r\n<i id=\"{{id + '_invalid'}}\" class=\"ec-form-control-icon ec-icon icon-invalid\"></i>\r\n<button *ngIf=\"showClear\"\r\n id=\"{{id + '_clear'}}\"\r\n [attr.disabled]=\"disabled || undefined\"\r\n class=\"ec-form-control-clear\"\r\n (click)=\"clear()\"\r\n tabindex=\"{{tabindex}}\">\r\n <i class=\"ec-icon icon-cancel\"></i>\r\n</button>\r\n<button *ngIf=\"actionIcon\"\r\n id=\"{{id + '_action'}}\"\r\n [attr.disabled]=\"disabled || undefined\"\r\n class=\"ec-form-control-action\"\r\n (click)=\"actionClicked.emit($event)\"\r\n tabindex=\"{{tabindex}}\">\r\n <i class=\"ec-icon {{actionIcon}}\"></i>\r\n</button>\r\n<div class=\"ec-focus-ring\"></div>\r\n", styles: ["ec-form-control{background-color:var(--ec-form-control-background-color);background-clip:padding-box;border:1px solid var(--ec-form-control-border-color);border-radius:var(--ec-border-radius);padding:0 .5rem;position:relative;color:var(--ec-form-control-color);display:flex;font-size:var(--ec-form-control-font-size);min-height:2rem;width:100%}ec-form-control>input,ec-form-control>select,ec-form-control>textarea,ec-form-control>div[contenteditable=true]{color:inherit;flex:1 1;min-width:0;border:0;background-color:transparent;order:2}ec-form-control>input::selection,ec-form-control>select::selection,ec-form-control>textarea::selection,ec-form-control>div[contenteditable=true]::selection{background-color:var(--ec-form-control-background-color-selection);color:var(--ec-form-control-color-selection)}ec-form-control>input::-webkit-input-placeholder,ec-form-control>select::-webkit-input-placeholder,ec-form-control>textarea::-webkit-input-placeholder,ec-form-control>div[contenteditable=true]::-webkit-input-placeholder{color:var(--ec-form-control-color-placeholder)}ec-form-control>input::-moz-placeholder,ec-form-control>select::-moz-placeholder,ec-form-control>textarea::-moz-placeholder,ec-form-control>div[contenteditable=true]::-moz-placeholder{color:var(--ec-form-control-color-placeholder);opacity:1}ec-form-control>input:-ms-input-placeholder,ec-form-control>select:-ms-input-placeholder,ec-form-control>textarea:-ms-input-placeholder,ec-form-control>div[contenteditable=true]:-ms-input-placeholder{color:var(--ec-form-control-color-placeholder)}ec-form-control>input:-moz-placeholder,ec-form-control>select:-moz-placeholder,ec-form-control>textarea:-moz-placeholder,ec-form-control>div[contenteditable=true]:-moz-placeholder{color:var(--ec-form-control-color-placeholder);opacity:1}ec-form-control>input:focus,ec-form-control>select:focus,ec-form-control>textarea:focus,ec-form-control>div[contenteditable=true]:focus{outline:none}ec-form-control>input:focus~.ec-focus-ring,ec-form-control>select:focus~.ec-focus-ring,ec-form-control>textarea:focus~.ec-focus-ring,ec-form-control>div[contenteditable=true]:focus~.ec-focus-ring{display:block}ec-form-control>input,ec-form-control>textarea,ec-form-control>select,ec-form-control>div[contenteditable=true],ec-form-control .ec-form-control-prefix,ec-form-control .ec-form-control-suffix{padding:calc((1.875rem - var(--ec-font-size-body) * 1.25) / 2) 0;line-height:1.25;font-size:inherit}ec-form-control>textarea{resize:none;padding:.3125rem 0}ec-form-control .ec-form-control-icon{margin-top:.4375rem;margin-right:.25rem;order:1}ec-form-control .ec-form-control-icon:not([class*=icon-]){display:none}ec-form-control .icon-required,ec-form-control .icon-invalid{color:var(--ec-form-control-border-color-invalid)}ec-form-control .ec-form-control-clear,ec-form-control .ec-form-control-action{font-size:var(--ec-font-size-action);height:2rem;line-height:1.25rem;padding:.3125rem .5rem;border-radius:var(--ec-border-radius);display:flex;cursor:pointer;flex:none;height:1.875rem;width:2rem;order:3;background-color:transparent;border:0;border-radius:0;display:inline-flex;align-items:center;justify-content:center;outline:none}ec-form-control .ec-form-control-clear .label,ec-form-control .ec-form-control-action .label{display:flex;align-items:center;justify-content:center;white-space:nowrap;flex:auto}ec-form-control .ec-form-control-clear .ec-icon,ec-form-control .ec-form-control-action .ec-icon{flex:none}ec-form-control .ec-form-control-clear .ec-icon+.label,ec-form-control .ec-form-control-action .ec-icon+.label{flex:none;margin-left:.25rem}ec-form-control .ec-form-control-clear.has-badge,ec-form-control .ec-form-control-action.has-badge{padding-right:.0625rem}ec-form-control .ec-form-control-clear:focus,ec-form-control .ec-form-control-action:focus{outline:none;position:relative;z-index:1}ec-form-control .ec-form-control-clear:disabled,ec-form-control .ec-form-control-action:disabled{background-color:var(--ec-background-color-disabled);border:1px solid var(--ec-form-control-border-color-disabled);color:var(--ec-color-disabled-dark);opacity:var(--ec-form-control-opacity-disabled);cursor:default}ec-form-control .ec-form-control-clear:disabled,ec-form-control .ec-form-control-action:disabled{border:0;background-color:transparent;border-color:transparent}ec-form-control .ec-form-control-clear:last-of-type,ec-form-control .ec-form-control-action:last-of-type{margin-right:-.5rem}ec-form-control .ec-form-control-clear:hover:not(:disabled),ec-form-control .ec-form-control-action:hover:not(:disabled){cursor:pointer;background-color:var(--ec-background-color-hover)}ec-form-control .ec-form-control-clear:active:not(:disabled),ec-form-control .ec-form-control-action:active:not(:disabled){background-color:var(--ec-background-color-selected);font-weight:700}ec-form-control .ec-form-control-clear:focus:not(:disabled),ec-form-control .ec-form-control-action:focus:not(:disabled){box-shadow:var(--ec-button-box-shadow-active, 0 0 0 2px var(--ec-border-color-focus))}ec-form-control button:last-of-type{border-top-right-radius:calc(var(--ec-form-control-border-radius) - .0625rem);border-bottom-right-radius:calc(var(--ec-form-control-border-radius) - .0625rem)}ec-form-control .ec-form-control-clear{width:1.5rem}ec-form-control .ec-form-control-prefix,ec-form-control .ec-form-control-suffix{color:var(--ec-color-secondary-dark);flex:none;cursor:default}ec-form-control .ec-form-control-prefix{margin-right:.125rem;order:2}ec-form-control .ec-form-control-suffix{margin-left:.125rem;order:3}ec-form-control .ec-focus-ring{position:absolute;inset:-1px;border:.125rem solid var(--ec-color-interactive);pointer-events:none;display:none;border-radius:var(--ec-form-control-border-radius);z-index:1}ec-form-control.is-pending .icon-invalid,ec-form-control.is-pending .icon-required{display:none}ec-form-control.is-invalid{border-color:var(--ec-form-control-border-color-invalid);background-color:var(--ec-form-control-background-color-invalid)}ec-form-control.is-invalid .icon-required{display:none}ec-form-control.is-empty .ec-form-control-clear{display:none}ec-form-control.is-required.is-empty .ec-form-control-icon:first-of-type{display:none}ec-form-control:not(.is-pending) .icon-loading{display:none}ec-form-control:not(.is-required) .icon-required,ec-form-control:not(.is-empty) .icon-required{display:none}ec-form-control:not(.is-invalid) .icon-invalid{display:none}ec-form-control.is-readonly,ec-form-control.is-disabled{background-color:var(--ec-form-control-background-color-disabled)}ec-form-control.is-readonly .icon-loading,ec-form-control.is-readonly .icon-invalid,ec-form-control.is-readonly .icon-required,ec-form-control.is-readonly .ec-form-control-clear,ec-form-control.is-disabled .icon-loading,ec-form-control.is-disabled .icon-invalid,ec-form-control.is-disabled .icon-required,ec-form-control.is-disabled .ec-form-control-clear{display:none}ec-form-control.is-readonly{border-color:var(--ec-form-control-border-color-readonly);color:var(--ec-form-control-color-readonly)}ec-form-control.is-readonly .ec-form-control-action{display:none}ec-form-control.is-disabled:not(.is-readonly){color:var(--ec-form-control-color-disabled);opacity:.6}ec-form-control.is-disabled:not(.is-readonly) .ec-form-control-prefix,ec-form-control.is-disabled:not(.is-readonly) .ec-form-control-suffix{color:inherit}\n"] }]
|
|
65
65
|
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { formControlDirective: [{
|
|
66
66
|
type: ContentChild,
|
|
67
67
|
args: [FormControlDirective]
|
|
@@ -107,4 +107,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
107
107
|
}], actionClicked: [{
|
|
108
108
|
type: Output
|
|
109
109
|
}] } });
|
|
110
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
110
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1jb250cm9sLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy9mb3JtLWNvbnRyb2wvZm9ybS1jb250cm9sLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9jb250cm9scy9mb3JtLWNvbnRyb2wvZm9ybS1jb250cm9sLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBbUMsU0FBUyxFQUFFLFlBQVksRUFBYyxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQWlCLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVMLE9BQU8sRUFBbUIsb0JBQW9CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7O0FBUXZFLE1BQU0sT0FBTyxvQkFBb0I7SUFlL0IsSUFBbUMsS0FBSyxLQUFhLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLEtBQUssSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLEtBQUssS0FBSyxDQUFDLENBQUEsQ0FBQSxDQUFDO0lBQUEsQ0FBQztJQUNySCxJQUFxQyxPQUFPLEtBQWMsT0FBTyxJQUFJLENBQUMsVUFBVSxFQUFFLE9BQU8sSUFBSSxJQUFJLElBQUksSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFBLENBQUEsQ0FBQztJQUFBLENBQUM7SUFDdEksSUFBc0MsUUFBUSxLQUFjLE9BQU8sSUFBSSxDQUFDLFVBQVUsRUFBRSxRQUFRLElBQUksSUFBSSxDQUFBLENBQUMsQ0FBQztJQUFBLENBQUM7SUFJdkcsSUFBWSxVQUFVO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLGNBQWMsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUUsT0FBTyxDQUFDO0lBQ25FLENBQUM7SUFFRCxZQUFvQixFQUFjO1FBQWQsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQXRCbEIsT0FBRSxHQUFXLEVBQUUsQ0FBQztRQUd2QixjQUFTLEdBQUcsSUFBSSxDQUFDO1FBRWpCLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFDbEIsYUFBUSxHQUFZLENBQUMsQ0FBQztRQUVXLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDZixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFNbEQsa0JBQWEsR0FBd0IsSUFBSSxZQUFZLEVBQVMsQ0FBQztJQU1uQyxDQUFDO0lBRXZDLFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNyQixJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztnQkFDbEIsSUFBSSxDQUFDLFVBQVUsRUFBRSxPQUFPLEVBQUUsQ0FBQztZQUM3QixDQUFDO2lCQUFNLENBQUM7Z0JBQ04sSUFBSSxDQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUUsQ0FBQztZQUM1QixDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLFVBQVUsRUFBRSxPQUFPLEVBQUUsQ0FBQztRQUM3QixDQUFDO0lBQ0gsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ3JCLE9BQU8sQ0FBQyxLQUFLLENBQUMsa0ZBQWtGLENBQUMsQ0FBQztRQUNwRyxDQUFDO1FBRUQsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2YsQ0FBQztJQUNILENBQUM7SUFFRCxLQUFLO1FBQ0gsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUE0QixDQUFDO1FBQ2hELE1BQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBYyx5QkFBeUIsQ0FBQyxDQUFDO1FBQzNFLElBQUksTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ2xCLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDekIsQ0FBQztJQUNILENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLFVBQVUsRUFBRSxLQUFLLEVBQUUsQ0FBQztJQUMzQixDQUFDOytHQS9EVSxvQkFBb0I7bUdBQXBCLG9CQUFvQiwrbkJBQ2pCLG9CQUFvQixxRUNWcEMsa2dDQXNCQTs7NEZEYmEsb0JBQW9CO2tCQU5oQyxTQUFTOytCQUNFLGlCQUFpQixpQkFHWixpQkFBaUIsQ0FBQyxJQUFJOytFQUdELG9CQUFvQjtzQkFBdkQsWUFBWTt1QkFBQyxvQkFBb0I7Z0JBRWxCLEVBQUU7c0JBQWpCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDYyxjQUFjO3NCQUFqQyxLQUFLO3VCQUFDLFdBQVc7Z0JBQ1QsU0FBUztzQkFBakIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUVvQyxPQUFPO3NCQUFoRCxLQUFLOztzQkFBSSxXQUFXO3VCQUFDLGtCQUFrQjtnQkFDRyxRQUFRO3NCQUFsRCxLQUFLOztzQkFBSSxXQUFXO3VCQUFDLG1CQUFtQjtnQkFDRSxRQUFRO3NCQUFsRCxLQUFLOztzQkFBSSxXQUFXO3VCQUFDLG1CQUFtQjtnQkFFTixLQUFLO3NCQUF2QyxXQUFXO3VCQUFDLGdCQUFnQjtnQkFDUSxPQUFPO3NCQUEzQyxXQUFXO3VCQUFDLGtCQUFrQjtnQkFDTyxRQUFRO3NCQUE3QyxXQUFXO3VCQUFDLG1CQUFtQjtnQkFFdEIsYUFBYTtzQkFBdEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyQ29udGVudEluaXQsIEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgQ29udGVudENoaWxkLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT25DaGFuZ2VzLCBPdXRwdXQsIFNpbXBsZUNoYW5nZXMsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgRm9ybUNvbnRyb2xEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2VjLWZvcm0tY29udHJvbCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvcm0tY29udHJvbC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZm9ybS1jb250cm9sLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRm9ybUNvbnRyb2xDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIEFmdGVyVmlld0luaXQsIEFmdGVyQ29udGVudEluaXQge1xyXG4gIEBDb250ZW50Q2hpbGQoRm9ybUNvbnRyb2xEaXJlY3RpdmUpIGZvcm1Db250cm9sRGlyZWN0aXZlPzogRm9ybUNvbnRyb2xEaXJlY3RpdmU7XHJcbiAgXHJcbiAgQElucHV0KCkgcHVibGljIGlkOiBzdHJpbmcgPSAnJztcclxuICBASW5wdXQoKSBpY29uPzogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGFjdGlvbkljb24/OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgc2hvd0NsZWFyID0gdHJ1ZTtcclxuICBASW5wdXQoJ2Zvcm1Nb2RlbCcpIGZvcm1Nb2RlbElucHV0PzogQWJzdHJhY3RDb250cm9sO1xyXG4gIEBJbnB1dCgpIGF1dG9mb2N1cyA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIHRhYmluZGV4PzogbnVtYmVyID0gMDsgXHJcbiAgXHJcbiAgQElucHV0KCkgQEhvc3RCaW5kaW5nKCdjbGFzcy5pcy1wZW5kaW5nJykgcGVuZGluZyA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIEBIb3N0QmluZGluZygnY2xhc3MuaXMtcmVxdWlyZWQnKSByZXF1aXJlZCA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpIEBIb3N0QmluZGluZygnY2xhc3MuaXMtcmVhZG9ubHknKSByZWFkb25seSA9IGZhbHNlO1xyXG4gIFxyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtZW1wdHknKSBnZXQgZW1wdHkoKTpib29sZWFuIHsgcmV0dXJuICF0aGlzLl9mb3JtTW9kZWw/LnZhbHVlICYmIHRoaXMuX2Zvcm1Nb2RlbD8udmFsdWUgIT09IDB9O1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuaXMtaW52YWxpZCcpIGdldCBpbnZhbGlkKCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5fZm9ybU1vZGVsPy50b3VjaGVkID09IHRydWUgJiYgdGhpcy5fZm9ybU1vZGVsLmludmFsaWQgPT0gdHJ1ZX07XHJcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5pcy1kaXNhYmxlZCcpIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuX2Zvcm1Nb2RlbD8uZGlzYWJsZWQgPT0gdHJ1ZSB9O1xyXG4gIFxyXG4gIEBPdXRwdXQoKSBhY3Rpb25DbGlja2VkOiBFdmVudEVtaXR0ZXI8RXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxFdmVudD4oKTtcclxuXHJcbiAgcHJpdmF0ZSBnZXQgX2Zvcm1Nb2RlbCgpIHtcclxuICAgIHJldHVybiB0aGlzLmZvcm1Nb2RlbElucHV0IHx8IHRoaXMuZm9ybUNvbnRyb2xEaXJlY3RpdmU/LmNvbnRyb2w7XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsOiBFbGVtZW50UmVmKSB7IH1cclxuXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgaWYgKGNoYW5nZXMucmVhZG9ubHkpIHtcclxuICAgICAgaWYgKHRoaXMucmVhZG9ubHkpIHtcclxuICAgICAgICB0aGlzLl9mb3JtTW9kZWw/LmRpc2FibGUoKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLl9mb3JtTW9kZWw/LmVuYWJsZSgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyQ29udGVudEluaXQoKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5yZWFkb25seSkge1xyXG4gICAgICB0aGlzLl9mb3JtTW9kZWw/LmRpc2FibGUoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIGlmICghdGhpcy5fZm9ybU1vZGVsKSB7XHJcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ01pc3NpbmcgW2Zvcm1Nb2RlbF0gaW5wdXQgb3IgW2Zvcm1Db250cm9sXSBkaXJlY3RpdmUgb24gZWMtZm9ybS1jb250cm9sIGNvbnRlbnQuJyk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuYXV0b2ZvY3VzKSB7XHJcbiAgICAgIHRoaXMuZm9jdXMoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGZvY3VzKCkge1xyXG4gICAgY29uc3QgZWwgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICBjb25zdCBpbnB1dHMgPSBlbC5xdWVyeVNlbGVjdG9yQWxsPEhUTUxFbGVtZW50PignaW5wdXQsIHRleHRhcmVhLCBzZWxlY3QnKTtcclxuICAgIGlmIChpbnB1dHMubGVuZ3RoKSB7XHJcbiAgICAgIGlucHV0cy5pdGVtKDApLmZvY3VzKCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjbGVhcigpIHtcclxuICAgIHRoaXMuX2Zvcm1Nb2RlbD8ucmVzZXQoKTtcclxuICB9XHJcbn1cclxuIiwiPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG48aSBpZD1cInt7aWQgKyAnX2ljb24nfX1cIiBjbGFzcz1cImVjLWZvcm0tY29udHJvbC1pY29uIGVjLWljb24ge3tpY29ufX1cIj48L2k+XHJcbjxpIGlkPVwie3tpZCArICdfbG9hZGluZyd9fVwiIGNsYXNzPVwiZWMtZm9ybS1jb250cm9sLWljb24gZWMtaWNvbiBpY29uLWxvYWRpbmdcIj48L2k+XHJcbjxpIGlkPVwie3tpZCArICdfcmVxdWlyZWQnfX1cIiBjbGFzcz1cImVjLWZvcm0tY29udHJvbC1pY29uIGVjLWljb24gaWNvbi1yZXF1aXJlZFwiPjwvaT5cclxuPGkgaWQ9XCJ7e2lkICsgJ19pbnZhbGlkJ319XCIgY2xhc3M9XCJlYy1mb3JtLWNvbnRyb2wtaWNvbiBlYy1pY29uIGljb24taW52YWxpZFwiPjwvaT5cclxuPGJ1dHRvbiAqbmdJZj1cInNob3dDbGVhclwiXHJcbiAgICAgICAgaWQ9XCJ7e2lkICsgJ19jbGVhcid9fVwiXHJcbiAgICAgICAgW2F0dHIuZGlzYWJsZWRdPVwiZGlzYWJsZWQgfHwgdW5kZWZpbmVkXCJcclxuICAgICAgICBjbGFzcz1cImVjLWZvcm0tY29udHJvbC1jbGVhclwiXHJcbiAgICAgICAgKGNsaWNrKT1cImNsZWFyKClcIlxyXG4gICAgICAgIHRhYmluZGV4PVwie3t0YWJpbmRleH19XCI+XHJcbiAgPGkgY2xhc3M9XCJlYy1pY29uIGljb24tY2FuY2VsXCI+PC9pPlxyXG48L2J1dHRvbj5cclxuPGJ1dHRvbiAqbmdJZj1cImFjdGlvbkljb25cIlxyXG4gICAgICAgIGlkPVwie3tpZCArICdfYWN0aW9uJ319XCJcclxuICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJkaXNhYmxlZCB8fCB1bmRlZmluZWRcIlxyXG4gICAgICAgIGNsYXNzPVwiZWMtZm9ybS1jb250cm9sLWFjdGlvblwiXHJcbiAgICAgICAgKGNsaWNrKT1cImFjdGlvbkNsaWNrZWQuZW1pdCgkZXZlbnQpXCJcclxuICAgICAgICB0YWJpbmRleD1cInt7dGFiaW5kZXh9fVwiPlxyXG4gIDxpIGNsYXNzPVwiZWMtaWNvbiB7e2FjdGlvbkljb259fVwiPjwvaT5cclxuPC9idXR0b24+XHJcbjxkaXYgY2xhc3M9XCJlYy1mb2N1cy1yaW5nXCI+PC9kaXY+XHJcbiJdfQ==
|
|
@@ -148,4 +148,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
148
148
|
}], helpPopoverPosition: [{
|
|
149
149
|
type: Input
|
|
150
150
|
}] } });
|
|
151
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1jb250cm9sLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvY29udHJvbHMvZm9ybS1jb250cm9sLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQStDLE1BQU0sZUFBZSxDQUFDO0FBRTlGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBVTNDOztHQUVHO0FBRUgsTUFBTSxPQUFnQixlQUFlO0lBc0duQzs7T0FFRztJQUNILFlBQ1ksd0JBQWtELEVBQ2xELGVBQWdDO1FBRGhDLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDbEQsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBeEc1Qzs7V0FFRztRQUNhLGNBQVMsR0FBYSxLQUFLLENBQUM7UUFnQjVDOztXQUVHO1FBQ2Esa0JBQWEsR0FBMEIsS0FBSyxDQUFDO1FBRzdEOztXQUVHO1FBQ2EsT0FBRSxHQUFXLEVBQUUsQ0FBQztRQUdoQzs7O1dBR0c7UUFDYSxZQUFPLEdBQWEsS0FBSyxDQUFDO1FBRzFDOzs7V0FHRztRQUNhLGFBQVEsR0FBYSxLQUFLLENBQUM7UUFHM0M7O1dBRUc7UUFDYSxhQUFRLEdBQVksQ0FBQyxDQUFDO1FBb0J0Qzs7V0FFRztRQUNhLHdCQUFtQixHQUE0QixVQUFVLENBQUM7UUFFMUU7O1dBRUc7UUFDSSxxQkFBZ0IsR0FBVyxFQUFFLENBQUM7UUFHckM7O1dBRUc7UUFDSSxZQUFPLEdBQVcsRUFBRSxDQUFDO1FBRzdCOzs7Ozs7Ozs7O1dBVUc7UUFDUSx1QkFBa0IsR0FBa0IsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQVM5RCxDQUFDO0lBRUw7O09BRUc7SUFDSSxXQUFXLENBQUMsT0FBcUI7UUFDdEMsSUFBSSxPQUFPLENBQUMsUUFBUSxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsWUFBWSxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ3BFLElBQUksT0FBTyxDQUFDLFFBQVEsQ0FBQyxZQUFZLEtBQUssSUFBSSxFQUFFLENBQUM7Z0JBQzNDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDM0IsQ0FBQztpQkFBTSxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsWUFBWSxLQUFLLEtBQUssRUFBRSxDQUFDO2dCQUNuRCxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQzFCLENBQUM7UUFDSCxDQUFDO1FBRUQsSUFBSSxPQUFPLENBQUMsRUFBRSxJQUFJLE9BQU8sQ0FBQyxFQUFFLENBQUMsWUFBWSxLQUFLLFNBQVMsRUFBQyxDQUFDO1lBQ3ZELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzFELENBQUM7SUFDSCxDQUFDO0lBR0Q7O09BRUc7SUFDSSxRQUFRO1FBQ2IsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFeEQsNEVBQTRFO1FBQzVFLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLElBQUksQ0FDL0IsU0FBUyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUNuQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNqQixJQUFJLENBQUMsMkJBQTJCLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDeEMsQ0FBQyxDQUFDLENBQUM7UUFFSCw4QkFBOEI7UUFDOUIsSUFBSSxDQUFDLDJCQUEyQixFQUFFLENBQUM7SUFHckMsQ0FBQztJQUdEOzs7T0FHRztJQUNJLFdBQVc7UUFDaEIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksRUFBRSxDQUFDO1FBQy9CLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBR0Q7OztPQUdHO0lBQ08sS0FBSyxDQUFDLDJCQUEyQixDQUFDLElBQVU7UUFDcEQsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUFDLE9BQU87UUFBQyxDQUFDO1FBQ2hDLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFFNUIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUUzQixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2hCLElBQUksUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLHdCQUF3QixDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNqRixJQUFJLFFBQVEsRUFBRSxDQUFDO2dCQUNiLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzlDLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQzsrR0E5S21CLGVBQWU7bUdBQWYsZUFBZTs7NEZBQWYsZUFBZTtrQkFEcEMsU0FBUzsySEFPUSxTQUFTO3NCQUF4QixLQUFLO2dCQU9VLFNBQVM7c0JBQXhCLEtBQUs7Z0JBTVUsS0FBSztzQkFBcEIsS0FBSztnQkFNVSxhQUFhO3NCQUE1QixLQUFLO2dCQU1VLEVBQUU7c0JBQWpCLEtBQUs7Z0JBT1UsT0FBTztzQkFBdEIsS0FBSztnQkFPVSxRQUFRO3NCQUF2QixLQUFLO2dCQU1VLFFBQVE7c0JBQXZCLEtBQUs7Z0JBTVUsUUFBUTtzQkFBdkIsS0FBSztnQkFNVSxPQUFPO3NCQUF0QixLQUFLO2dCQU1VLFdBQVc7c0JBQTFCLEtBQUs7Z0JBS1UsbUJBQW1CO3NCQUFsQyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sIH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFZhbGlkYXRpb25NZXNzYWdlU2VydmljZSB9IGZyb20gXCIuLi9jb3JlL3ZhbGlkYXRpb24tbWVzc2FnZS5zZXJ2aWNlXCI7XG5pbXBvcnQgeyBGb3JtR3JvdXBIZWxwZXIgfSBmcm9tICcuLi9zaGFyZWQvZm9ybS1ncm91cC5oZWxwZXInO1xuaW1wb3J0IHsgUG9wb3ZlckNvbnRlbnRQb3NpdGlvbiB9IGZyb20gJy4vcG9wb3Zlci9wb3BvdmVyLmNvbXBvbmVudCc7XG5cblxuXG5leHBvcnQgdHlwZSBDb250cm9sTGFiZWxQb3NpdGlvbiA9IFwidG9wXCIgfCBcImJvdHRvbVwiIHwgXCJsZWZ0XCI7XG5cblxuLyoqXG4gKiBCYXNlIGNsYXNzIGZvciBSZWFjdGl2ZSBGb3JtIENvbnRyb2xzLCBjb250YWluaW5nIEVDSS1zcGVjaWZpYyBzaGFyZWQgcHJvcGVydGllc1xuICovXG5ARGlyZWN0aXZlKClcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBGb3JtQ29udHJvbEJhc2UgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgT25DaGFuZ2VzIHtcbiAgXG4gIFxuICAvKipcbiAgICogSWYgdHJ1ZSwgd2lsbCBmb2N1cyB0aGUgY29udHJvbCdzIGlucHV0IHdoZW4gdGhlIHZpZXcgaXMgaW50aWFsaXplZFxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIGF1dG9mb2N1cz86IGJvb2xlYW4gPSBmYWxzZTtcblxuXG4gIC8qKlxuICAgKiBVSS1vcmllbnRlZCBmb3JtIG1vZGVsIHRoYXQgcmV0YWlucyB0aGUgc3RhdGVzIGFuZCB2YWx1ZXMgb2YgdGhlIEhUTUwgY29udHJvbHMgb24gc2NyZWVuLlxuICAgKiBDYW4gYmUgYSB7QGxpbmsgRm9ybUNvbnRyb2x9IG9yIGEge0BsaW5rIEZvcm1Hcm91cH1cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBmb3JtTW9kZWwhOiBBYnN0cmFjdENvbnRyb2w7XG5cblxuICAvKipcbiAgICogVGhlIGZvcm0gY29udHJvbCBsYWJlbFxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIGxhYmVsPzogc3RyaW5nO1xuXG5cbiAgLyoqXG4gICAqIFRoZSBwb3NpdGlvbiBvZiB0aGUgZm9ybSBjb250cm9sIGxhYmVsICh0b3B8Ym90dG9tKVxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIGxhYmVsUG9zaXRpb24/OiBDb250cm9sTGFiZWxQb3NpdGlvbiA9IFwidG9wXCI7XG5cblxuICAvKipcbiAgICogVGhlIGlkIG9mIHRoZSBjb21wb25lbnQuIFdlIHVzZSB0aGlzIHRvIGlkZW50aWZ5IGEgY29udHJvbCBvbiBmb2N1cyBldmVudHMgYW5kIGhlbHAuXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgaWQ6IHN0cmluZyA9ICcnO1xuXG5cbiAgLyoqXG4gICAqIFRoZSBwZW5kaW5nIHN0YXR1cyBvZiB0aGUgY29udHJvbCwgY2FuIGJlIHVzZWQgdG8gdGVsbCB0aGUgdXNlciB0aGUgY29udHJvbCBpc1xuICAgKiBhd2FpdGluZyBkYXRhIHZpYSBhIHNwaW5uZXIgb3IgYW5pbWF0aW9uXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgcGVuZGluZz86IGJvb2xlYW4gPSBmYWxzZTtcblxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBpbnB1dCBpcyBhIHJlcXVpcmVkIGZpZWxkIG9yIG5vdFxuICAgKiBAdG9kbzogU29tZXRpbWUgaW4gdGhlIGZ1dHVyZSBBbmd1bGFyIG1ha2VzIGl0IHNvdW5kIGxpa2UgdGhpcyB3aWxsIGJlIGhhbmRsZWQgdmlhIHRoZSBSZWFjdGl2ZSBmb3JtIFdoZW4gdGhhdCBoYXBwZW5zIHRoaXMgcHJvcGVydHkgY2FuIGJlIHJlbW92ZWRcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyByZXF1aXJlZD86IGJvb2xlYW4gPSBmYWxzZTtcblxuXG4gIC8qKlxuICAgKiBUaGUgdGFiaW5kZXggb2YgdGhlIGNvbnRyb2xcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyB0YWJpbmRleD86IG51bWJlciA9IDA7XG5cblxuICAvKipcbiAgICogRGlzYWJsZSB0aGUgY29udHJvbCBhbmQgZGlzcGxheSB0aGUgdmFsdWVcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seT86IGJvb2xlYW47XG5cblxuICAvKipcbiAgICogQ29uZGl0aW9uYWxseSBzaG93IGEgdG9vbHRpcCBvbiB0aGUgZm9ybSBjb250cm9sJ3MgaW5wdXQuXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgdG9vbHRpcD86IHN0cmluZztcblxuICBcbiAgLyoqXG4gICAqIENvbmRpdGlvbmFsbHkgc2hvdyBhIGhlbHAgcG9wb3ZlciBuZXh0IHRvIHRoZSBjb250cm9scyBsYWJlbC5cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBoZWxwUG9wb3Zlcj86IHN0cmluZztcblxuICAvKipcbiAgICogV2hlbiBhIGhlbHAgcG9wb3ZlciBpcyBwcmVzZW50LCBhbGxvd3MgdGhlIHBvcG92ZXIgdG8gYmUgcG9zaXRpb25lZCBpbiBkaWZmZXJlbnQgbG9jYXRpb25zLlxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIGhlbHBQb3BvdmVyUG9zaXRpb24/OiBQb3BvdmVyQ29udGVudFBvc2l0aW9uID0gJ3RvcC1sZWZ0JztcblxuICAvKipcbiAgICogQWxsIGN1cnJlbnQgdmFsaWRhdGlvbiBlcnJvcnNcbiAgICovXG4gIHB1YmxpYyB2YWxpZGF0aW9uRXJyb3JzOiBzdHJpbmcgPSBcIlwiO1xuXG5cbiAgLyoqXG4gICAqIFRoZSBpZCBvZiB0aGUgZm9ybSBjb250cm9scyBpbnB1dCwgZ2V0bmVyYXRlZCBmcm9tIHRoZSBjb21wb25lbnRzIGlkLlxuICAgKi9cbiAgcHVibGljIGlucHV0SWQ6IHN0cmluZyA9ICcnO1xuXG5cbiAvKipcbiAgKiBOb3RpZmllcyBjb21wb25lbnQgc3Vic2NyaXB0aW9ucyB0aGF0IGNvbXBvbmVudCBpcyBkZXN0cm95ZWQuXG4gICogVXNlIHdpdGggYHRha2VVbnRpbCgpYCB3aGVuIHN1YnNjcmliaW5nIHRvIGNvbXBsZXRlIHN1YnNjcmlwdGlvbnNcbiAgKiBhdXRvbWF0aWNhbGx5LlxuICAqXG4gICogU2VlOlxuICAqIFtSeEpzXXtAbGluayBodHRwOi8vcmVhY3RpdmV4LmlvL3J4anMvY2xhc3MvZXM2L09ic2VydmFibGUuanN+T2JzZXJ2YWJsZS5odG1sI2luc3RhbmNlLW1ldGhvZC10YWtlVW50aWx9XG4gICogW2FuZCB0aGlzXXtAbGluayBodHRwczovL21lZGl1bS5jb20vQGJlbmxlc2gvcnhqcy1kb250LXVuc3Vic2NyaWJlLTY3NTNlZDRmZGE4N31cbiAgKiBbYW5kIHRoaXNde0BsaW5rIGh0dHBzOi8vbmV0YmFzYWwuY29tL3doZW4tdG8tdW5zdWJzY3JpYmUtaW4tYW5ndWxhci1kNjFjNmIyMWJhZDN9XG4gICogW2FuZCB0aGlzXXtAbGluayBodHRwOi8vYnJpYW5mbG92ZS5jb20vMjAxNi8xMi8xMS9hbmd1YXItMi11bnN1YnNjcmliZS1vYnNlcnZhYmxlcy99XG4gICovXG4gIHByb3RlY3RlZCBjb21wb25lbnREZXN0cm95ZWQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgRm9ybUNvbnRyb2xCYXNlLlxuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIHZhbGlkYXRpb25NZXNzYWdlU2VydmljZTogVmFsaWRhdGlvbk1lc3NhZ2VTZXJ2aWNlLFxuICAgIHByb3RlY3RlZCBmb3JtR3JvdXBIZWxwZXI6IEZvcm1Hcm91cEhlbHBlclxuICApIHsgfVxuXG4gIC8qKlxuICAgKiBBbmd1bGFyIG9uQ2hhbmdlIGxpZmVjeWxlIGhvb2tcbiAgICovXG4gIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOlNpbXBsZUNoYW5nZXMpOnZvaWQge1xuICAgIGlmIChjaGFuZ2VzLnJlYWRvbmx5ICYmIGNoYW5nZXMucmVhZG9ubHkuY3VycmVudFZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGlmIChjaGFuZ2VzLnJlYWRvbmx5LmN1cnJlbnRWYWx1ZSA9PT0gdHJ1ZSkge1xuICAgICAgICB0aGlzLmZvcm1Nb2RlbC5kaXNhYmxlKCk7XG4gICAgICB9IGVsc2UgaWYgKGNoYW5nZXMucmVhZG9ubHkuY3VycmVudFZhbHVlID09PSBmYWxzZSkge1xuICAgICAgICB0aGlzLmZvcm1Nb2RlbC5lbmFibGUoKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAoY2hhbmdlcy5pZCAmJiBjaGFuZ2VzLmlkLmN1cnJlbnRWYWx1ZSAhPT0gdW5kZWZpbmVkKXtcbiAgICAgIHRoaXMuaW5wdXRJZCA9IHRoaXMuZm9ybUdyb3VwSGVscGVyLmdldElucHV0SWQodGhpcy5pZCk7XG4gICAgfVxuICB9XG5cbiAgXG4gIC8qKlxuICAgKiBBbmd1bGFyIG9uSW5pdCBsaWZlY3ljbGUgaG9vay5cbiAgICovXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmlucHV0SWQgPSB0aGlzLmZvcm1Hcm91cEhlbHBlci5nZXRJbnB1dElkKHRoaXMuaWQpO1xuICAgIFxuICAgIC8vIHN1YnNjcmliZSB0byB2YWx1ZUNoYW5nZXMgT2JzZXJ2YWJsZSB0byB0YWtlIGFueSBlcnJvcyBhbmQgdHJhbnNsYXRlIHRoZW1cbiAgICB0aGlzLmZvcm1Nb2RlbC5zdGF0dXNDaGFuZ2VzLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5jb21wb25lbnREZXN0cm95ZWQpXG4gICAgKS5zdWJzY3JpYmUoZGF0YSA9PiB7XG4gICAgICB0aGlzLnRyYW5zbGF0ZVZhbGlkYXRpb25NZXNzYWdlcyhkYXRhKVxuICAgIH0pO1xuXG4gICAgLy8gKHJlKXNldCB2YWxpZGF0aW9uIG1lc3NhZ2VzXG4gICAgdGhpcy50cmFuc2xhdGVWYWxpZGF0aW9uTWVzc2FnZXMoKTtcblxuICAgIFxuICB9XG4gICAgXG5cbiAgLyoqXG4gICAqIEFuZ3VsYXIgb25EZXN0cm95IGxpZmVjeWxlIGhvb2suIFxuICAgKiBVbnN1YnNjcmliZSBmcm9tIGFueSBvYnNlcnZhYmxlc1xuICAgKi9cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuY29tcG9uZW50RGVzdHJveWVkLm5leHQoKTtcbiAgICB0aGlzLmNvbXBvbmVudERlc3Ryb3llZC51bnN1YnNjcmliZSgpO1xuICB9XG5cblxuICAvKipcbiAgICogRnVuY3Rpb24gdGhhdCBzdWJzY3JpYmVzIHRvIHRoZSBmb3JtTW9kZWwncyB2YWx1ZUNoYW5nZXMgT2JzZXJ2YWJsZVxuICAgKiB0byB0YWtlIGFueSBlcnJvcyBhbmQgdHJhbnNsYXRlIHRoZW1cbiAgICovXG4gIHByb3RlY3RlZCBhc3luYyB0cmFuc2xhdGVWYWxpZGF0aW9uTWVzc2FnZXMoZGF0YT86IGFueSkge1xuICAgIGlmICghdGhpcy5mb3JtTW9kZWwpIHsgcmV0dXJuOyB9XG4gICAgY29uc3QgZm9ybSA9IHRoaXMuZm9ybU1vZGVsO1xuXG4gICAgdGhpcy52YWxpZGF0aW9uRXJyb3JzID0gJyc7XG5cbiAgICBpZiAoIWZvcm0udmFsaWQpIHtcbiAgICAgIGxldCBtZXNzYWdlcyA9IGF3YWl0IHRoaXMudmFsaWRhdGlvbk1lc3NhZ2VTZXJ2aWNlLmdldEVycm9yTWVzc2FnZXMoZm9ybS5lcnJvcnMpO1xuICAgICAgaWYgKG1lc3NhZ2VzKSB7XG4gICAgICAgIHRoaXMudmFsaWRhdGlvbkVycm9ycyA9IG1lc3NhZ2VzLmpvaW4oJzsgJyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn0iXX0=
|
|
151
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1jb250cm9sLWJhc2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvY29udHJvbHMvZm9ybS1jb250cm9sLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQStDLE1BQU0sZUFBZSxDQUFDO0FBRTlGLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBVTNDOztHQUVHO0FBRUgsTUFBTSxPQUFnQixlQUFlO0lBc0duQzs7T0FFRztJQUNILFlBQ1ksd0JBQWtELEVBQ2xELGVBQWdDO1FBRGhDLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFDbEQsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBeEc1Qzs7V0FFRztRQUNhLGNBQVMsR0FBYSxLQUFLLENBQUM7UUFnQjVDOztXQUVHO1FBQ2Esa0JBQWEsR0FBMEIsS0FBSyxDQUFDO1FBRzdEOztXQUVHO1FBQ2EsT0FBRSxHQUFXLEVBQUUsQ0FBQztRQUdoQzs7O1dBR0c7UUFDYSxZQUFPLEdBQWEsS0FBSyxDQUFDO1FBRzFDOzs7V0FHRztRQUNhLGFBQVEsR0FBYSxLQUFLLENBQUM7UUFHM0M7O1dBRUc7UUFDYSxhQUFRLEdBQVksQ0FBQyxDQUFDO1FBb0J0Qzs7V0FFRztRQUNhLHdCQUFtQixHQUE0QixVQUFVLENBQUM7UUFFMUU7O1dBRUc7UUFDSSxxQkFBZ0IsR0FBVyxFQUFFLENBQUM7UUFHckM7O1dBRUc7UUFDSSxZQUFPLEdBQVcsRUFBRSxDQUFDO1FBRzdCOzs7Ozs7Ozs7O1dBVUc7UUFDUSx1QkFBa0IsR0FBa0IsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQVM5RCxDQUFDO0lBRUw7O09BRUc7SUFDSSxXQUFXLENBQUMsT0FBcUI7UUFDdEMsSUFBSSxPQUFPLENBQUMsUUFBUSxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsWUFBWSxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ3BFLElBQUksT0FBTyxDQUFDLFFBQVEsQ0FBQyxZQUFZLEtBQUssSUFBSSxFQUFFLENBQUM7Z0JBQzNDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDM0IsQ0FBQztpQkFBTSxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsWUFBWSxLQUFLLEtBQUssRUFBRSxDQUFDO2dCQUNuRCxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQzFCLENBQUM7UUFDSCxDQUFDO1FBRUQsSUFBSSxPQUFPLENBQUMsRUFBRSxJQUFJLE9BQU8sQ0FBQyxFQUFFLENBQUMsWUFBWSxLQUFLLFNBQVMsRUFBQyxDQUFDO1lBQ3ZELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQzFELENBQUM7SUFDSCxDQUFDO0lBR0Q7O09BRUc7SUFDSSxRQUFRO1FBQ2IsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFeEQsNEVBQTRFO1FBQzVFLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLElBQUksQ0FDL0IsU0FBUyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUNuQyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNqQixJQUFJLENBQUMsMkJBQTJCLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDeEMsQ0FBQyxDQUFDLENBQUM7UUFFSCw4QkFBOEI7UUFDOUIsSUFBSSxDQUFDLDJCQUEyQixFQUFFLENBQUM7SUFHckMsQ0FBQztJQUdEOzs7T0FHRztJQUNJLFdBQVc7UUFDaEIsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksRUFBRSxDQUFDO1FBQy9CLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBR0Q7OztPQUdHO0lBQ08sS0FBSyxDQUFDLDJCQUEyQixDQUFDLElBQVU7UUFDcEQsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUFDLE9BQU87UUFBQyxDQUFDO1FBQ2hDLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7UUFFNUIsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUUzQixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2hCLElBQUksUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLHdCQUF3QixDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNqRixJQUFJLFFBQVEsRUFBRSxDQUFDO2dCQUNiLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzlDLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQzsrR0E5S21CLGVBQWU7bUdBQWYsZUFBZTs7NEZBQWYsZUFBZTtrQkFEcEMsU0FBUzsySEFPUSxTQUFTO3NCQUF4QixLQUFLO2dCQU9VLFNBQVM7c0JBQXhCLEtBQUs7Z0JBTVUsS0FBSztzQkFBcEIsS0FBSztnQkFNVSxhQUFhO3NCQUE1QixLQUFLO2dCQU1VLEVBQUU7c0JBQWpCLEtBQUs7Z0JBT1UsT0FBTztzQkFBdEIsS0FBSztnQkFPVSxRQUFRO3NCQUF2QixLQUFLO2dCQU1VLFFBQVE7c0JBQXZCLEtBQUs7Z0JBTVUsUUFBUTtzQkFBdkIsS0FBSztnQkFNVSxPQUFPO3NCQUF0QixLQUFLO2dCQU1VLFdBQVc7c0JBQTFCLEtBQUs7Z0JBS1UsbUJBQW1CO3NCQUFsQyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBYnN0cmFjdENvbnRyb2wgfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgVmFsaWRhdGlvbk1lc3NhZ2VTZXJ2aWNlIH0gZnJvbSBcIi4uL2NvcmUvdmFsaWRhdGlvbi1tZXNzYWdlLnNlcnZpY2VcIjtcclxuaW1wb3J0IHsgRm9ybUdyb3VwSGVscGVyIH0gZnJvbSAnLi4vc2hhcmVkL2Zvcm0tZ3JvdXAuaGVscGVyJztcclxuaW1wb3J0IHsgUG9wb3ZlckNvbnRlbnRQb3NpdGlvbiB9IGZyb20gJy4vcG9wb3Zlci9wb3BvdmVyLmNvbXBvbmVudCc7XHJcblxyXG5cclxuXHJcbmV4cG9ydCB0eXBlIENvbnRyb2xMYWJlbFBvc2l0aW9uID0gXCJ0b3BcIiB8IFwiYm90dG9tXCIgfCBcImxlZnRcIjtcclxuXHJcblxyXG4vKipcclxuICogQmFzZSBjbGFzcyBmb3IgUmVhY3RpdmUgRm9ybSBDb250cm9scywgY29udGFpbmluZyBFQ0ktc3BlY2lmaWMgc2hhcmVkIHByb3BlcnRpZXNcclxuICovXHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRm9ybUNvbnRyb2xCYXNlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIE9uQ2hhbmdlcyB7XHJcbiAgXHJcbiAgXHJcbiAgLyoqXHJcbiAgICogSWYgdHJ1ZSwgd2lsbCBmb2N1cyB0aGUgY29udHJvbCdzIGlucHV0IHdoZW4gdGhlIHZpZXcgaXMgaW50aWFsaXplZFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBhdXRvZm9jdXM/OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG5cclxuICAvKipcclxuICAgKiBVSS1vcmllbnRlZCBmb3JtIG1vZGVsIHRoYXQgcmV0YWlucyB0aGUgc3RhdGVzIGFuZCB2YWx1ZXMgb2YgdGhlIEhUTUwgY29udHJvbHMgb24gc2NyZWVuLlxyXG4gICAqIENhbiBiZSBhIHtAbGluayBGb3JtQ29udHJvbH0gb3IgYSB7QGxpbmsgRm9ybUdyb3VwfVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBmb3JtTW9kZWwhOiBBYnN0cmFjdENvbnRyb2w7XHJcblxyXG5cclxuICAvKipcclxuICAgKiBUaGUgZm9ybSBjb250cm9sIGxhYmVsXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGxhYmVsPzogc3RyaW5nO1xyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIHBvc2l0aW9uIG9mIHRoZSBmb3JtIGNvbnRyb2wgbGFiZWwgKHRvcHxib3R0b20pXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGxhYmVsUG9zaXRpb24/OiBDb250cm9sTGFiZWxQb3NpdGlvbiA9IFwidG9wXCI7XHJcblxyXG5cclxuICAvKipcclxuICAgKiBUaGUgaWQgb2YgdGhlIGNvbXBvbmVudC4gV2UgdXNlIHRoaXMgdG8gaWRlbnRpZnkgYSBjb250cm9sIG9uIGZvY3VzIGV2ZW50cyBhbmQgaGVscC5cclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgaWQ6IHN0cmluZyA9ICcnO1xyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIHBlbmRpbmcgc3RhdHVzIG9mIHRoZSBjb250cm9sLCBjYW4gYmUgdXNlZCB0byB0ZWxsIHRoZSB1c2VyIHRoZSBjb250cm9sIGlzXHJcbiAgICogYXdhaXRpbmcgZGF0YSB2aWEgYSBzcGlubmVyIG9yIGFuaW1hdGlvblxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBwZW5kaW5nPzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogV2hldGhlciB0aGUgaW5wdXQgaXMgYSByZXF1aXJlZCBmaWVsZCBvciBub3RcclxuICAgKiBAdG9kbzogU29tZXRpbWUgaW4gdGhlIGZ1dHVyZSBBbmd1bGFyIG1ha2VzIGl0IHNvdW5kIGxpa2UgdGhpcyB3aWxsIGJlIGhhbmRsZWQgdmlhIHRoZSBSZWFjdGl2ZSBmb3JtIFdoZW4gdGhhdCBoYXBwZW5zIHRoaXMgcHJvcGVydHkgY2FuIGJlIHJlbW92ZWRcclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgcmVxdWlyZWQ/OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG5cclxuICAvKipcclxuICAgKiBUaGUgdGFiaW5kZXggb2YgdGhlIGNvbnRyb2xcclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgdGFiaW5kZXg/OiBudW1iZXIgPSAwO1xyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogRGlzYWJsZSB0aGUgY29udHJvbCBhbmQgZGlzcGxheSB0aGUgdmFsdWVcclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgcmVhZG9ubHk/OiBib29sZWFuO1xyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogQ29uZGl0aW9uYWxseSBzaG93IGEgdG9vbHRpcCBvbiB0aGUgZm9ybSBjb250cm9sJ3MgaW5wdXQuXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIHRvb2x0aXA/OiBzdHJpbmc7XHJcblxyXG4gIFxyXG4gIC8qKlxyXG4gICAqIENvbmRpdGlvbmFsbHkgc2hvdyBhIGhlbHAgcG9wb3ZlciBuZXh0IHRvIHRoZSBjb250cm9scyBsYWJlbC5cclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgaGVscFBvcG92ZXI/OiBzdHJpbmc7XHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZW4gYSBoZWxwIHBvcG92ZXIgaXMgcHJlc2VudCwgYWxsb3dzIHRoZSBwb3BvdmVyIHRvIGJlIHBvc2l0aW9uZWQgaW4gZGlmZmVyZW50IGxvY2F0aW9ucy5cclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgaGVscFBvcG92ZXJQb3NpdGlvbj86IFBvcG92ZXJDb250ZW50UG9zaXRpb24gPSAndG9wLWxlZnQnO1xyXG5cclxuICAvKipcclxuICAgKiBBbGwgY3VycmVudCB2YWxpZGF0aW9uIGVycm9yc1xyXG4gICAqL1xyXG4gIHB1YmxpYyB2YWxpZGF0aW9uRXJyb3JzOiBzdHJpbmcgPSBcIlwiO1xyXG5cclxuXHJcbiAgLyoqXHJcbiAgICogVGhlIGlkIG9mIHRoZSBmb3JtIGNvbnRyb2xzIGlucHV0LCBnZXRuZXJhdGVkIGZyb20gdGhlIGNvbXBvbmVudHMgaWQuXHJcbiAgICovXHJcbiAgcHVibGljIGlucHV0SWQ6IHN0cmluZyA9ICcnO1xyXG5cclxuXHJcbiAvKipcclxuICAqIE5vdGlmaWVzIGNvbXBvbmVudCBzdWJzY3JpcHRpb25zIHRoYXQgY29tcG9uZW50IGlzIGRlc3Ryb3llZC5cclxuICAqIFVzZSB3aXRoIGB0YWtlVW50aWwoKWAgd2hlbiBzdWJzY3JpYmluZyB0byBjb21wbGV0ZSBzdWJzY3JpcHRpb25zXHJcbiAgKiBhdXRvbWF0aWNhbGx5LlxyXG4gICpcclxuICAqIFNlZTpcclxuICAqIFtSeEpzXXtAbGluayBodHRwOi8vcmVhY3RpdmV4LmlvL3J4anMvY2xhc3MvZXM2L09ic2VydmFibGUuanN+T2JzZXJ2YWJsZS5odG1sI2luc3RhbmNlLW1ldGhvZC10YWtlVW50aWx9XHJcbiAgKiBbYW5kIHRoaXNde0BsaW5rIGh0dHBzOi8vbWVkaXVtLmNvbS9AYmVubGVzaC9yeGpzLWRvbnQtdW5zdWJzY3JpYmUtNjc1M2VkNGZkYTg3fVxyXG4gICogW2FuZCB0aGlzXXtAbGluayBodHRwczovL25ldGJhc2FsLmNvbS93aGVuLXRvLXVuc3Vic2NyaWJlLWluLWFuZ3VsYXItZDYxYzZiMjFiYWQzfVxyXG4gICogW2FuZCB0aGlzXXtAbGluayBodHRwOi8vYnJpYW5mbG92ZS5jb20vMjAxNi8xMi8xMS9hbmd1YXItMi11bnN1YnNjcmliZS1vYnNlcnZhYmxlcy99XHJcbiAgKi9cclxuICBwcm90ZWN0ZWQgY29tcG9uZW50RGVzdHJveWVkOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuXHJcblxyXG4gIC8qKlxyXG4gICAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgRm9ybUNvbnRyb2xCYXNlLlxyXG4gICAqL1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJvdGVjdGVkIHZhbGlkYXRpb25NZXNzYWdlU2VydmljZTogVmFsaWRhdGlvbk1lc3NhZ2VTZXJ2aWNlLFxyXG4gICAgcHJvdGVjdGVkIGZvcm1Hcm91cEhlbHBlcjogRm9ybUdyb3VwSGVscGVyXHJcbiAgKSB7IH1cclxuXHJcbiAgLyoqXHJcbiAgICogQW5ndWxhciBvbkNoYW5nZSBsaWZlY3lsZSBob29rXHJcbiAgICovXHJcbiAgcHVibGljIG5nT25DaGFuZ2VzKGNoYW5nZXM6U2ltcGxlQ2hhbmdlcyk6dm9pZCB7XHJcbiAgICBpZiAoY2hhbmdlcy5yZWFkb25seSAmJiBjaGFuZ2VzLnJlYWRvbmx5LmN1cnJlbnRWYWx1ZSAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIGlmIChjaGFuZ2VzLnJlYWRvbmx5LmN1cnJlbnRWYWx1ZSA9PT0gdHJ1ZSkge1xyXG4gICAgICAgIHRoaXMuZm9ybU1vZGVsLmRpc2FibGUoKTtcclxuICAgICAgfSBlbHNlIGlmIChjaGFuZ2VzLnJlYWRvbmx5LmN1cnJlbnRWYWx1ZSA9PT0gZmFsc2UpIHtcclxuICAgICAgICB0aGlzLmZvcm1Nb2RlbC5lbmFibGUoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlmIChjaGFuZ2VzLmlkICYmIGNoYW5nZXMuaWQuY3VycmVudFZhbHVlICE9PSB1bmRlZmluZWQpe1xyXG4gICAgICB0aGlzLmlucHV0SWQgPSB0aGlzLmZvcm1Hcm91cEhlbHBlci5nZXRJbnB1dElkKHRoaXMuaWQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgXHJcbiAgLyoqXHJcbiAgICogQW5ndWxhciBvbkluaXQgbGlmZWN5Y2xlIGhvb2suXHJcbiAgICovXHJcbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5pbnB1dElkID0gdGhpcy5mb3JtR3JvdXBIZWxwZXIuZ2V0SW5wdXRJZCh0aGlzLmlkKTtcclxuICAgIFxyXG4gICAgLy8gc3Vic2NyaWJlIHRvIHZhbHVlQ2hhbmdlcyBPYnNlcnZhYmxlIHRvIHRha2UgYW55IGVycm9zIGFuZCB0cmFuc2xhdGUgdGhlbVxyXG4gICAgdGhpcy5mb3JtTW9kZWwuc3RhdHVzQ2hhbmdlcy5waXBlKFxyXG4gICAgICB0YWtlVW50aWwodGhpcy5jb21wb25lbnREZXN0cm95ZWQpXHJcbiAgICApLnN1YnNjcmliZShkYXRhID0+IHtcclxuICAgICAgdGhpcy50cmFuc2xhdGVWYWxpZGF0aW9uTWVzc2FnZXMoZGF0YSlcclxuICAgIH0pO1xyXG5cclxuICAgIC8vIChyZSlzZXQgdmFsaWRhdGlvbiBtZXNzYWdlc1xyXG4gICAgdGhpcy50cmFuc2xhdGVWYWxpZGF0aW9uTWVzc2FnZXMoKTtcclxuXHJcbiAgICBcclxuICB9XHJcbiAgICBcclxuXHJcbiAgLyoqXHJcbiAgICogQW5ndWxhciBvbkRlc3Ryb3kgbGlmZWN5bGUgaG9vay4gXHJcbiAgICogVW5zdWJzY3JpYmUgZnJvbSBhbnkgb2JzZXJ2YWJsZXNcclxuICAgKi9cclxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLmNvbXBvbmVudERlc3Ryb3llZC5uZXh0KCk7XHJcbiAgICB0aGlzLmNvbXBvbmVudERlc3Ryb3llZC51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcblxyXG4gIC8qKlxyXG4gICAqIEZ1bmN0aW9uIHRoYXQgc3Vic2NyaWJlcyB0byB0aGUgZm9ybU1vZGVsJ3MgdmFsdWVDaGFuZ2VzIE9ic2VydmFibGVcclxuICAgKiB0byB0YWtlIGFueSBlcnJvcyBhbmQgdHJhbnNsYXRlIHRoZW1cclxuICAgKi9cclxuICBwcm90ZWN0ZWQgYXN5bmMgdHJhbnNsYXRlVmFsaWRhdGlvbk1lc3NhZ2VzKGRhdGE/OiBhbnkpIHtcclxuICAgIGlmICghdGhpcy5mb3JtTW9kZWwpIHsgcmV0dXJuOyB9XHJcbiAgICBjb25zdCBmb3JtID0gdGhpcy5mb3JtTW9kZWw7XHJcblxyXG4gICAgdGhpcy52YWxpZGF0aW9uRXJyb3JzID0gJyc7XHJcblxyXG4gICAgaWYgKCFmb3JtLnZhbGlkKSB7XHJcbiAgICAgIGxldCBtZXNzYWdlcyA9IGF3YWl0IHRoaXMudmFsaWRhdGlvbk1lc3NhZ2VTZXJ2aWNlLmdldEVycm9yTWVzc2FnZXMoZm9ybS5lcnJvcnMpO1xyXG4gICAgICBpZiAobWVzc2FnZXMpIHtcclxuICAgICAgICB0aGlzLnZhbGlkYXRpb25FcnJvcnMgPSBtZXNzYWdlcy5qb2luKCc7ICcpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxufSJdfQ==
|