@apipass/inputs 1.0.169 → 1.0.170

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.
Files changed (51) hide show
  1. package/README.md +33 -33
  2. package/assets/css/inputs.scss +298 -298
  3. package/esm2022/ace-editor/component.mjs +1 -1
  4. package/esm2022/ace-editor/directive.mjs +1 -1
  5. package/esm2022/ace-editor-input/ace-editor-input.component.mjs +3 -3
  6. package/esm2022/custom-select/custom-select-item.mjs +1 -1
  7. package/esm2022/custom-select/custom-select.component.mjs +3 -3
  8. package/esm2022/debounce-model-directive/debouceInput.directive.mjs +1 -1
  9. package/esm2022/field/field.component.mjs +27 -27
  10. package/esm2022/input-avatar/input-avatar.component.mjs +3 -3
  11. package/esm2022/input-boolean/input-boolean.component.mjs +3 -3
  12. package/esm2022/input-date-time-interval/builder/default-intervals.builder.mjs +1 -1
  13. package/esm2022/input-date-time-interval/builder/time-interval-value.builder.mjs +1 -1
  14. package/esm2022/input-date-time-interval/builder/time-intervals.builder.mjs +1 -1
  15. package/esm2022/input-date-time-interval/default-interval/current-month-interval.mjs +1 -1
  16. package/esm2022/input-date-time-interval/default-interval/last-five-minutes-interval.mjs +1 -1
  17. package/esm2022/input-date-time-interval/default-interval/last-hour-interval.mjs +1 -1
  18. package/esm2022/input-date-time-interval/default-interval/last-minute-interval.mjs +1 -1
  19. package/esm2022/input-date-time-interval/default-interval/last-month-interval.mjs +1 -1
  20. package/esm2022/input-date-time-interval/default-interval/last-one-week-interval.mjs +1 -1
  21. package/esm2022/input-date-time-interval/default-interval/last-quarter-interval.mjs +1 -1
  22. package/esm2022/input-date-time-interval/default-interval/last-ten-minutes-interval.mjs +1 -1
  23. package/esm2022/input-date-time-interval/default-interval/last-thirty-minutes-interval.mjs +1 -1
  24. package/esm2022/input-date-time-interval/default-interval/last-three-hours-interval.mjs +1 -1
  25. package/esm2022/input-date-time-interval/default-interval/last-twenty-four-hours-interval.mjs +1 -1
  26. package/esm2022/input-date-time-interval/default-interval/last-two-hours-interval.mjs +1 -1
  27. package/esm2022/input-date-time-interval/default-interval/last-year-interval.mjs +1 -1
  28. package/esm2022/input-date-time-interval/default-interval/this-quarter-interval.mjs +1 -1
  29. package/esm2022/input-date-time-interval/default-interval/this-week-interval.mjs +1 -1
  30. package/esm2022/input-date-time-interval/default-interval/this-year-interval.mjs +1 -1
  31. package/esm2022/input-date-time-interval/default-interval/time-interval.mjs +1 -1
  32. package/esm2022/input-date-time-interval/default-interval/today-interval.mjs +1 -1
  33. package/esm2022/input-date-time-interval/default-interval/yesterday-interval.mjs +1 -1
  34. package/esm2022/input-date-time-interval/input-date-time-interval.component.mjs +3 -3
  35. package/esm2022/input-date-time-interval/model/date-time-internal.model.mjs +1 -1
  36. package/esm2022/input-date-time-interval/public-api.mjs +1 -1
  37. package/esm2022/input-file/input-file.component.mjs +3 -3
  38. package/esm2022/input-image/input-image.component.mjs +3 -3
  39. package/esm2022/input-key-value/key-value-input.component.mjs +3 -3
  40. package/esm2022/input-number/input-number.component.mjs +3 -3
  41. package/esm2022/input-text/input-text.component.mjs +3 -3
  42. package/esm2022/inputs.module.mjs +1 -1
  43. package/esm2022/public-api.mjs +1 -1
  44. package/esm2022/select-box/mat-select-infinite-scroll.directive.mjs +1 -1
  45. package/esm2022/select-box/select-box.component.mjs +3 -3
  46. package/esm2022/select-enum/select-enum.component.mjs +3 -3
  47. package/esm2022/select-interpolation/select-interpolation.component.mjs +3 -3
  48. package/esm2022/value-acessor-base.mjs +1 -1
  49. package/fesm2022/apipass-inputs.mjs +52 -52
  50. package/fesm2022/apipass-inputs.mjs.map +1 -1
  51. package/package.json +2 -2
@@ -159,7 +159,7 @@ class SelectBoxComponent extends ValueAccessorBase {
159
159
  provide: NG_VALUE_ACCESSOR,
160
160
  useExisting: forwardRef(() => SelectBoxComponent),
161
161
  multi: true
162
- }], viewQueries: [{ propertyName: "ngSelectComponent", first: true, predicate: ["ngSelectComponent"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-select #ngSelectComponent\r\n [(ngModel)]=\"value\"\r\n [items]=\"visibleItens\"\r\n [virtualScroll]=\"true\"\r\n [loading]=\"loading || initializing\"\r\n [loadingText]=\"loadingText\"\r\n [placeholder]=\"placeholder\"\r\n [clearAllText]=\"clearText\"\r\n [searchable]=\"enabledSearch\"\r\n [typeToSearchText]=\"searchPlaceHolder\"\r\n (open)=\"openSelectBox($event)\"\r\n (close)=\"onClose($event)\"\r\n (clear)=\"onClear()\"\r\n [notFoundText]=\"notFoundText\"\r\n [disabled]=\"disabled\"\r\n appendTo=\"body\"\r\n (scroll)=\"onScroll($event)\"\r\n (scrollToEnd)=\"onScrollToEnd()\"\r\n (change)=\"onSelectionChange($event)\"\r\n [typeahead]=\"inputFilter\"\r\n [ngClass]=\"{'apipass-select-image' : bindImageUrl, 'apipass-select': !bindImageUrl}\"\r\n [compareWith]=\"compareFn\"\r\n [bindValue]=\"selectProperty\">\r\n\r\n <ng-template *ngIf=\"selectProperty && selectedItem && selectedItem[bindKey] && selectedItem[bindValue]\" ng-label-tmp let-item=\"item\">\r\n <div class=\"image\" style=\"width: 30px;height: 30px; margin-right: 10px;\"\r\n *ngIf=\"selectedItem && selectedItem[bindKey] && selectedItem[bindValue] && bindImageUrl\">\r\n <img loading=\"lazy\"\r\n [src]=\"selectedItem[bindImageUrl] || './assets/images/no-image.png'\"\r\n [alt]=\"selectedItem[bindValue]\"\r\n [matTooltip]=\"selectedItem[bindValue]\"\r\n style=\"width: auto;max-width: 30px;height: 30px;\"\r\n />\r\n </div>\r\n <span class=\"select-text-element\" *ngIf=\"selectedItem && selectedItem[bindKey] && selectedItem[bindValue]\">{{selectedItem[bindValue]}}</span>\r\n </ng-template>\r\n\r\n <ng-template *ngIf=\"!selectProperty && value && value[bindKey] && value[bindValue]\" ng-label-tmp let-item=\"item\">\r\n <div class=\"image\" style=\"width: 30px;height: 30px; margin-right: 10px;\"\r\n *ngIf=\"value && value[bindKey] && value[bindValue] && bindImageUrl\">\r\n <img loading=\"lazy\"\r\n [src]=\"value[bindImageUrl] || './assets/images/no-image.png'\"\r\n [alt]=\"value[bindValue]\"\r\n [matTooltip]=\"value[bindValue]\"\r\n style=\"width: auto;max-width: 30px;height: 30px;\"\r\n />\r\n </div>\r\n <span class=\"select-text-element\" *ngIf=\"value && value[bindKey] && value[bindValue]\">{{value[bindValue]}}</span>\r\n </ng-template>\r\n\r\n <ng-template ng-header-tmp *ngIf=\"this.showAddNewItem\">\r\n <div class=\"add-new-item-option\" style=\"display: flex; align-items: center; cursor: pointer;\" (click)=\"onAddNewItem()\">\r\n <icon style=\"margin-right: 5px\" *ngIf=\"addNewItemIcon\" [title]=\"addNewItemText\" [name]=\"addNewItemIcon\" [size]=\"20\"></icon>\r\n <span class=\"add-new-item-text\" style=\"white-space: nowrap;overflow: hidden;text-overflow: ellipsis;\"\r\n *ngIf=\"addNewItemText\">{{addNewItemText}}</span>\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\r\n <div class=\"image\" style=\"width: 30px;height: 30px; margin-right: 10px;\" *ngIf=\"bindImageUrl\">\r\n <img loading=\"lazy\"\r\n [src]=\"item[bindImageUrl] || './assets/images/no-image.png'\"\r\n [alt]=\"item[bindValue]\"\r\n [matTooltip]=\"item[bindValue]\"\r\n style=\"width: auto;max-width: 30px;height: 30px;\"\r\n />\r\n </div>\r\n <span class=\"select-text-element\"\r\n style=\"white-space: nowrap;overflow: hidden;text-overflow: ellipsis;\">{{item[bindValue]}}</span>\r\n </ng-template>\r\n\r\n</ng-select>\r\n", styles: [".apipass-select-image.ng-select.ng-select-opened>.ng-select-container,.apipass-select.ng-select.ng-select-opened>.ng-select-container{height:44px;background:#fff;border-color:#b3b3b3 #ccc #d9d9d9}.apipass-select-image.ng-select-disabled .ng-select-container,.apipass-select.ng-select-disabled .ng-select-container{background-color:#ccc!important;cursor:no-drop!important;color:#777!important}.apipass-select-image.ng-select-disabled .ng-select-container .ng-arrow-wrapper .ng-arrow,.apipass-select.ng-select-disabled .ng-select-container .ng-arrow-wrapper .ng-arrow{border-color:#777 transparent transparent!important;color:#777!important;cursor:no-drop!important}.apipass-select-image.ng-select-disabled .ng-select-container .ng-value-container,.apipass-select.ng-select-disabled .ng-select-container .ng-value-container,.apipass-select-image.ng-select-disabled .ng-select-container .ng-value,.apipass-select.ng-select-disabled .ng-select-container .ng-value,.apipass-select-image.ng-select-disabled .ng-select-container .ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input,.apipass-select.ng-select-disabled .ng-select-container .ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{cursor:no-drop!important}.apipass-select-image .select-text-element,.apipass-select .select-text-element{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ng-select.ng-select-opened>.ng-select-container{border:2px solid var(--color-primary)!important}.ng-select.ng-select-opened>.ng-select-container:hover{box-shadow:none}.ng-select.ng-select-opened>.ng-select-container .ng-arrow{top:-2px;border-color:transparent transparent #DDD;border-width:0 5px 5px}.ng-select.ng-select-opened>.ng-select-container .ng-arrow:hover{border-color:transparent transparent #333}.ng-select.ng-select-opened.ng-select-bottom>.ng-select-container{border-bottom-right-radius:0;border-bottom-left-radius:0}.ng-select.ng-select-opened.ng-select-top>.ng-select-container{border-top-right-radius:0;border-top-left-radius:0}.ng-select.ng-select-focused:not(.ng-select-opened)>.ng-select-container{border-color:var(--color-primary)!important;box-shadow:inset 0 1px 1px #00000013,0 0 0 3px #007eff1a}.ng-select.ng-select-disabled>.ng-select-container{background-color:#f9f9f9}.ng-select .ng-has-value .ng-placeholder{display:none}.ng-select .ng-select-container{color:#333;background-color:#fff;border-radius:4px;border:1px solid var(--color-fonts-tertiary);align-items:center!important}.apipass-select .ng-select-container,.apipass-select-image .ng-select-container{min-height:44px}.ng-select .ng-select-container:hover{box-shadow:0 1px #0000000f}.apipass-select .ng-select-container .ng-value-container{align-items:center!important;padding-left:10px}.apipass-select .ng-select-container .ng-value-container .ng-value{display:flex!important;align-items:center!important}.apipass-select .ng-select-container .ng-value-container,.apipass-select-image .ng-select-container .ng-value-container{align-items:center!important;padding-left:10px}.apipass-select .ng-select-container .ng-value-container .ng-value,.apipass-select-image .ng-select-container .ng-value-container .ng-value{display:flex!important;align-items:center!important}.apipass-select .ng-select-container .ng-value-container .ng-input,.apipass-select-image .ng-select-container .ng-value-container .ng-input{padding-top:0!important;top:auto!important}.apipass-select .ng-select-container .ng-value-container .ng-input input,.apipass-select-image .ng-select-container .ng-value-container .ng-input input{margin-top:-5px!important;padding-top:17px!important;padding-bottom:17px!important}[dir=rtl] .ng-select .ng-select-container .ng-value-container{padding-right:10px;padding-left:0}.ng-select .ng-select-container .ng-value-container .ng-placeholder{font-size:14px;color:#0009}.apipass-select .ng-select-container,.apipass-select-image .ng-select-container{height:44px}.ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{top:5px;left:0;padding-left:10px;padding-right:50px}[dir=rtl] .ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{padding-right:10px;padding-left:50px}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value{background-color:#f9f9f9;border:1px solid #e6e6e6;display:flex!important;align-items:center!important}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value .ng-value-label{padding:0 5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container{padding-top:5px;padding-left:7px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container{padding-right:7px;padding-left:0}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value{font-size:.9em;margin-bottom:5px;color:#333;background-color:#ebf5ff;border-radius:2px;margin-right:5px;display:flex!important;align-items:center!important}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value{margin-right:0;margin-left:5px;display:flex!important;align-items:center!important}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled{background-color:#f9f9f9}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled .ng-value-label{padding-left:5px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled .ng-value-label{padding-left:0;padding-right:5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-label,.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon{display:inline-block;padding:1px 5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon:hover{background-color:#d1e8ff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.left{border-right:1px solid #b8dbff}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.left{border-left:1px solid #b8dbff;border-right:none}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.right{border-left:1px solid #b8dbff}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.right{border-left:0;border-right:1px solid #b8dbff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input{padding:0 0 3px 3px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input{padding:0 3px 3px 0}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input>input{color:#000}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-placeholder{top:5px;padding-bottom:5px;padding-left:3px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-placeholder{padding-right:3px;padding-left:0}.ng-select .ng-clear-wrapper{color:#0009}.ng-select .ng-clear-wrapper:hover .ng-clear{color:#d0021b}.ng-select .ng-spinner-zone{padding:5px 5px 0 0}[dir=rtl] .ng-select .ng-spinner-zone{padding:5px 0 0 5px}.ng-select .ng-arrow-wrapper{width:25px;padding-right:5px}[dir=rtl] .ng-select .ng-arrow-wrapper{padding-left:5px;padding-right:0}.ng-select .ng-arrow-wrapper:hover .ng-arrow{border-top-color:#666}.ng-select .ng-arrow-wrapper .ng-arrow{border-color:#DDD transparent transparent;border-style:solid;border-width:5px 5px 2.5px}.ng-dropdown-panel{background-color:#fff;border:1px solid #DDD;box-shadow:0 1px #0000000f;left:0}.ng-dropdown-panel.ng-select-bottom{top:100%;border-bottom-right-radius:4px;border-bottom-left-radius:4px;border-top-color:#e6e6e6;margin-top:-1px}.ng-dropdown-panel.ng-select-bottom .ng-dropdown-panel-items .ng-option:last-child{border-bottom-right-radius:4px;border-bottom-left-radius:4px}.ng-dropdown-panel.ng-select-top{bottom:100%;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-color:#e6e6e6;margin-bottom:-1px}.ng-dropdown-panel.ng-select-top .ng-dropdown-panel-items .ng-option:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.ng-dropdown-panel .ng-dropdown-header{border-bottom:1px solid #ccc;padding:5px 7px}.ng-dropdown-panel .ng-dropdown-footer{border-top:1px solid #ccc;padding:5px 7px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup{-webkit-user-select:none;user-select:none;padding:8px 10px;font-weight:500;color:#0000008a;cursor:pointer}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-disabled{cursor:default}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-marked{background-color:#f5faff}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected.ng-option-marked{background-color:#ebf5ff;font-weight:600}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option{display:flex!important;align-items:center!important;background-color:#fff;color:#000000de;padding:8px 10px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked{color:#333;background-color:#ebf5ff}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected .ng-option-label,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked .ng-option-label{font-weight:600}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-marked{background-color:#f5faff;color:#333}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-disabled{color:#ccc}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-child{padding-left:22px}[dir=rtl] .ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-child{padding-right:22px;padding-left:0}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .ng-tag-label{font-size:80%;font-weight:400;padding-right:5px}[dir=rtl] .ng-dropdown-panel .ng-dropdown-panel-items .ng-option .ng-tag-label{padding-left:5px;padding-right:0}[dir=rtl] .ng-dropdown-panel{direction:rtl;text-align:right}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "directive", type: i3.NgOptionTemplateDirective, selector: "[ng-option-tmp]" }, { kind: "directive", type: i3.NgLabelTemplateDirective, selector: "[ng-label-tmp]" }, { kind: "directive", type: i3.NgHeaderTemplateDirective, selector: "[ng-header-tmp]" }, { kind: "component", type: i4.IconComponent, selector: "icon", inputs: ["name", "title", "type", "size", "isMaterialIcon", "materialOutline", "routerLinkActive", "routerLink", "link", "target", "isActive"], outputs: ["onClick"] }, { kind: "directive", type: i5.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }], encapsulation: i0.ViewEncapsulation.None });
162
+ }], viewQueries: [{ propertyName: "ngSelectComponent", first: true, predicate: ["ngSelectComponent"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-select #ngSelectComponent\n [(ngModel)]=\"value\"\n [items]=\"visibleItens\"\n [virtualScroll]=\"true\"\n [loading]=\"loading || initializing\"\n [loadingText]=\"loadingText\"\n [placeholder]=\"placeholder\"\n [clearAllText]=\"clearText\"\n [searchable]=\"enabledSearch\"\n [typeToSearchText]=\"searchPlaceHolder\"\n (open)=\"openSelectBox($event)\"\n (close)=\"onClose($event)\"\n (clear)=\"onClear()\"\n [notFoundText]=\"notFoundText\"\n [disabled]=\"disabled\"\n appendTo=\"body\"\n (scroll)=\"onScroll($event)\"\n (scrollToEnd)=\"onScrollToEnd()\"\n (change)=\"onSelectionChange($event)\"\n [typeahead]=\"inputFilter\"\n [ngClass]=\"{'apipass-select-image' : bindImageUrl, 'apipass-select': !bindImageUrl}\"\n [compareWith]=\"compareFn\"\n [bindValue]=\"selectProperty\">\n\n <ng-template *ngIf=\"selectProperty && selectedItem && selectedItem[bindKey] && selectedItem[bindValue]\" ng-label-tmp let-item=\"item\">\n <div class=\"image\" style=\"width: 30px;height: 30px; margin-right: 10px;\"\n *ngIf=\"selectedItem && selectedItem[bindKey] && selectedItem[bindValue] && bindImageUrl\">\n <img loading=\"lazy\"\n [src]=\"selectedItem[bindImageUrl] || './assets/images/no-image.png'\"\n [alt]=\"selectedItem[bindValue]\"\n [matTooltip]=\"selectedItem[bindValue]\"\n style=\"width: auto;max-width: 30px;height: 30px;\"\n />\n </div>\n <span class=\"select-text-element\" *ngIf=\"selectedItem && selectedItem[bindKey] && selectedItem[bindValue]\">{{selectedItem[bindValue]}}</span>\n </ng-template>\n\n <ng-template *ngIf=\"!selectProperty && value && value[bindKey] && value[bindValue]\" ng-label-tmp let-item=\"item\">\n <div class=\"image\" style=\"width: 30px;height: 30px; margin-right: 10px;\"\n *ngIf=\"value && value[bindKey] && value[bindValue] && bindImageUrl\">\n <img loading=\"lazy\"\n [src]=\"value[bindImageUrl] || './assets/images/no-image.png'\"\n [alt]=\"value[bindValue]\"\n [matTooltip]=\"value[bindValue]\"\n style=\"width: auto;max-width: 30px;height: 30px;\"\n />\n </div>\n <span class=\"select-text-element\" *ngIf=\"value && value[bindKey] && value[bindValue]\">{{value[bindValue]}}</span>\n </ng-template>\n\n <ng-template ng-header-tmp *ngIf=\"this.showAddNewItem\">\n <div class=\"add-new-item-option\" style=\"display: flex; align-items: center; cursor: pointer;\" (click)=\"onAddNewItem()\">\n <icon style=\"margin-right: 5px\" *ngIf=\"addNewItemIcon\" [title]=\"addNewItemText\" [name]=\"addNewItemIcon\" [size]=\"20\"></icon>\n <span class=\"add-new-item-text\" style=\"white-space: nowrap;overflow: hidden;text-overflow: ellipsis;\"\n *ngIf=\"addNewItemText\">{{addNewItemText}}</span>\n </div>\n </ng-template>\n\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <div class=\"image\" style=\"width: 30px;height: 30px; margin-right: 10px;\" *ngIf=\"bindImageUrl\">\n <img loading=\"lazy\"\n [src]=\"item[bindImageUrl] || './assets/images/no-image.png'\"\n [alt]=\"item[bindValue]\"\n [matTooltip]=\"item[bindValue]\"\n style=\"width: auto;max-width: 30px;height: 30px;\"\n />\n </div>\n <span class=\"select-text-element\"\n style=\"white-space: nowrap;overflow: hidden;text-overflow: ellipsis;\">{{item[bindValue]}}</span>\n </ng-template>\n\n</ng-select>\n", styles: [".apipass-select-image.ng-select.ng-select-opened>.ng-select-container,.apipass-select.ng-select.ng-select-opened>.ng-select-container{height:44px;background:#fff;border-color:#b3b3b3 #ccc #d9d9d9}.apipass-select-image.ng-select-disabled .ng-select-container,.apipass-select.ng-select-disabled .ng-select-container{background-color:#ccc!important;cursor:no-drop!important;color:#777!important}.apipass-select-image.ng-select-disabled .ng-select-container .ng-arrow-wrapper .ng-arrow,.apipass-select.ng-select-disabled .ng-select-container .ng-arrow-wrapper .ng-arrow{border-color:#777 transparent transparent!important;color:#777!important;cursor:no-drop!important}.apipass-select-image.ng-select-disabled .ng-select-container .ng-value-container,.apipass-select.ng-select-disabled .ng-select-container .ng-value-container,.apipass-select-image.ng-select-disabled .ng-select-container .ng-value,.apipass-select.ng-select-disabled .ng-select-container .ng-value,.apipass-select-image.ng-select-disabled .ng-select-container .ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input,.apipass-select.ng-select-disabled .ng-select-container .ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{cursor:no-drop!important}.apipass-select-image .select-text-element,.apipass-select .select-text-element{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ng-select.ng-select-opened>.ng-select-container{border:2px solid var(--color-primary)!important}.ng-select.ng-select-opened>.ng-select-container:hover{box-shadow:none}.ng-select.ng-select-opened>.ng-select-container .ng-arrow{top:-2px;border-color:transparent transparent #DDD;border-width:0 5px 5px}.ng-select.ng-select-opened>.ng-select-container .ng-arrow:hover{border-color:transparent transparent #333}.ng-select.ng-select-opened.ng-select-bottom>.ng-select-container{border-bottom-right-radius:0;border-bottom-left-radius:0}.ng-select.ng-select-opened.ng-select-top>.ng-select-container{border-top-right-radius:0;border-top-left-radius:0}.ng-select.ng-select-focused:not(.ng-select-opened)>.ng-select-container{border-color:var(--color-primary)!important;box-shadow:inset 0 1px 1px #00000013,0 0 0 3px #007eff1a}.ng-select.ng-select-disabled>.ng-select-container{background-color:#f9f9f9}.ng-select .ng-has-value .ng-placeholder{display:none}.ng-select .ng-select-container{color:#333;background-color:#fff;border-radius:4px;border:1px solid var(--color-fonts-tertiary);align-items:center!important}.apipass-select .ng-select-container,.apipass-select-image .ng-select-container{min-height:44px}.ng-select .ng-select-container:hover{box-shadow:0 1px #0000000f}.apipass-select .ng-select-container .ng-value-container{align-items:center!important;padding-left:10px}.apipass-select .ng-select-container .ng-value-container .ng-value{display:flex!important;align-items:center!important}.apipass-select .ng-select-container .ng-value-container,.apipass-select-image .ng-select-container .ng-value-container{align-items:center!important;padding-left:10px}.apipass-select .ng-select-container .ng-value-container .ng-value,.apipass-select-image .ng-select-container .ng-value-container .ng-value{display:flex!important;align-items:center!important}.apipass-select .ng-select-container .ng-value-container .ng-input,.apipass-select-image .ng-select-container .ng-value-container .ng-input{padding-top:0!important;top:auto!important}.apipass-select .ng-select-container .ng-value-container .ng-input input,.apipass-select-image .ng-select-container .ng-value-container .ng-input input{margin-top:-5px!important;padding-top:17px!important;padding-bottom:17px!important}[dir=rtl] .ng-select .ng-select-container .ng-value-container{padding-right:10px;padding-left:0}.ng-select .ng-select-container .ng-value-container .ng-placeholder{font-size:14px;color:#0009}.apipass-select .ng-select-container,.apipass-select-image .ng-select-container{height:44px}.ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{top:5px;left:0;padding-left:10px;padding-right:50px}[dir=rtl] .ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{padding-right:10px;padding-left:50px}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value{background-color:#f9f9f9;border:1px solid #e6e6e6;display:flex!important;align-items:center!important}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value .ng-value-label{padding:0 5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container{padding-top:5px;padding-left:7px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container{padding-right:7px;padding-left:0}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value{font-size:.9em;margin-bottom:5px;color:#333;background-color:#ebf5ff;border-radius:2px;margin-right:5px;display:flex!important;align-items:center!important}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value{margin-right:0;margin-left:5px;display:flex!important;align-items:center!important}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled{background-color:#f9f9f9}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled .ng-value-label{padding-left:5px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled .ng-value-label{padding-left:0;padding-right:5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-label,.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon{display:inline-block;padding:1px 5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon:hover{background-color:#d1e8ff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.left{border-right:1px solid #b8dbff}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.left{border-left:1px solid #b8dbff;border-right:none}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.right{border-left:1px solid #b8dbff}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.right{border-left:0;border-right:1px solid #b8dbff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input{padding:0 0 3px 3px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input{padding:0 3px 3px 0}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input>input{color:#000}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-placeholder{top:5px;padding-bottom:5px;padding-left:3px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-placeholder{padding-right:3px;padding-left:0}.ng-select .ng-clear-wrapper{color:#0009}.ng-select .ng-clear-wrapper:hover .ng-clear{color:#d0021b}.ng-select .ng-spinner-zone{padding:5px 5px 0 0}[dir=rtl] .ng-select .ng-spinner-zone{padding:5px 0 0 5px}.ng-select .ng-arrow-wrapper{width:25px;padding-right:5px}[dir=rtl] .ng-select .ng-arrow-wrapper{padding-left:5px;padding-right:0}.ng-select .ng-arrow-wrapper:hover .ng-arrow{border-top-color:#666}.ng-select .ng-arrow-wrapper .ng-arrow{border-color:#DDD transparent transparent;border-style:solid;border-width:5px 5px 2.5px}.ng-dropdown-panel{background-color:#fff;border:1px solid #DDD;box-shadow:0 1px #0000000f;left:0}.ng-dropdown-panel.ng-select-bottom{top:100%;border-bottom-right-radius:4px;border-bottom-left-radius:4px;border-top-color:#e6e6e6;margin-top:-1px}.ng-dropdown-panel.ng-select-bottom .ng-dropdown-panel-items .ng-option:last-child{border-bottom-right-radius:4px;border-bottom-left-radius:4px}.ng-dropdown-panel.ng-select-top{bottom:100%;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-color:#e6e6e6;margin-bottom:-1px}.ng-dropdown-panel.ng-select-top .ng-dropdown-panel-items .ng-option:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.ng-dropdown-panel .ng-dropdown-header{border-bottom:1px solid #ccc;padding:5px 7px}.ng-dropdown-panel .ng-dropdown-footer{border-top:1px solid #ccc;padding:5px 7px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup{-webkit-user-select:none;user-select:none;padding:8px 10px;font-weight:500;color:#0000008a;cursor:pointer}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-disabled{cursor:default}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-marked{background-color:#f5faff}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected.ng-option-marked{background-color:#ebf5ff;font-weight:600}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option{display:flex!important;align-items:center!important;background-color:#fff;color:#000000de;padding:8px 10px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked{color:#333;background-color:#ebf5ff}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected .ng-option-label,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked .ng-option-label{font-weight:600}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-marked{background-color:#f5faff;color:#333}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-disabled{color:#ccc}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-child{padding-left:22px}[dir=rtl] .ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-child{padding-right:22px;padding-left:0}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .ng-tag-label{font-size:80%;font-weight:400;padding-right:5px}[dir=rtl] .ng-dropdown-panel .ng-dropdown-panel-items .ng-option .ng-tag-label{padding-left:5px;padding-right:0}[dir=rtl] .ng-dropdown-panel{direction:rtl;text-align:right}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { kind: "directive", type: i3.NgOptionTemplateDirective, selector: "[ng-option-tmp]" }, { kind: "directive", type: i3.NgLabelTemplateDirective, selector: "[ng-label-tmp]" }, { kind: "directive", type: i3.NgHeaderTemplateDirective, selector: "[ng-header-tmp]" }, { kind: "component", type: i4.IconComponent, selector: "icon", inputs: ["name", "title", "type", "size", "isMaterialIcon", "materialOutline", "routerLinkActive", "routerLink", "link", "target", "isActive"], outputs: ["onClick"] }, { kind: "directive", type: i5.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }], encapsulation: i0.ViewEncapsulation.None });
163
163
  }
164
164
  export { SelectBoxComponent };
165
165
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: SelectBoxComponent, decorators: [{
@@ -168,7 +168,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
168
168
  provide: NG_VALUE_ACCESSOR,
169
169
  useExisting: forwardRef(() => SelectBoxComponent),
170
170
  multi: true
171
- }], encapsulation: ViewEncapsulation.None, template: "<ng-select #ngSelectComponent\r\n [(ngModel)]=\"value\"\r\n [items]=\"visibleItens\"\r\n [virtualScroll]=\"true\"\r\n [loading]=\"loading || initializing\"\r\n [loadingText]=\"loadingText\"\r\n [placeholder]=\"placeholder\"\r\n [clearAllText]=\"clearText\"\r\n [searchable]=\"enabledSearch\"\r\n [typeToSearchText]=\"searchPlaceHolder\"\r\n (open)=\"openSelectBox($event)\"\r\n (close)=\"onClose($event)\"\r\n (clear)=\"onClear()\"\r\n [notFoundText]=\"notFoundText\"\r\n [disabled]=\"disabled\"\r\n appendTo=\"body\"\r\n (scroll)=\"onScroll($event)\"\r\n (scrollToEnd)=\"onScrollToEnd()\"\r\n (change)=\"onSelectionChange($event)\"\r\n [typeahead]=\"inputFilter\"\r\n [ngClass]=\"{'apipass-select-image' : bindImageUrl, 'apipass-select': !bindImageUrl}\"\r\n [compareWith]=\"compareFn\"\r\n [bindValue]=\"selectProperty\">\r\n\r\n <ng-template *ngIf=\"selectProperty && selectedItem && selectedItem[bindKey] && selectedItem[bindValue]\" ng-label-tmp let-item=\"item\">\r\n <div class=\"image\" style=\"width: 30px;height: 30px; margin-right: 10px;\"\r\n *ngIf=\"selectedItem && selectedItem[bindKey] && selectedItem[bindValue] && bindImageUrl\">\r\n <img loading=\"lazy\"\r\n [src]=\"selectedItem[bindImageUrl] || './assets/images/no-image.png'\"\r\n [alt]=\"selectedItem[bindValue]\"\r\n [matTooltip]=\"selectedItem[bindValue]\"\r\n style=\"width: auto;max-width: 30px;height: 30px;\"\r\n />\r\n </div>\r\n <span class=\"select-text-element\" *ngIf=\"selectedItem && selectedItem[bindKey] && selectedItem[bindValue]\">{{selectedItem[bindValue]}}</span>\r\n </ng-template>\r\n\r\n <ng-template *ngIf=\"!selectProperty && value && value[bindKey] && value[bindValue]\" ng-label-tmp let-item=\"item\">\r\n <div class=\"image\" style=\"width: 30px;height: 30px; margin-right: 10px;\"\r\n *ngIf=\"value && value[bindKey] && value[bindValue] && bindImageUrl\">\r\n <img loading=\"lazy\"\r\n [src]=\"value[bindImageUrl] || './assets/images/no-image.png'\"\r\n [alt]=\"value[bindValue]\"\r\n [matTooltip]=\"value[bindValue]\"\r\n style=\"width: auto;max-width: 30px;height: 30px;\"\r\n />\r\n </div>\r\n <span class=\"select-text-element\" *ngIf=\"value && value[bindKey] && value[bindValue]\">{{value[bindValue]}}</span>\r\n </ng-template>\r\n\r\n <ng-template ng-header-tmp *ngIf=\"this.showAddNewItem\">\r\n <div class=\"add-new-item-option\" style=\"display: flex; align-items: center; cursor: pointer;\" (click)=\"onAddNewItem()\">\r\n <icon style=\"margin-right: 5px\" *ngIf=\"addNewItemIcon\" [title]=\"addNewItemText\" [name]=\"addNewItemIcon\" [size]=\"20\"></icon>\r\n <span class=\"add-new-item-text\" style=\"white-space: nowrap;overflow: hidden;text-overflow: ellipsis;\"\r\n *ngIf=\"addNewItemText\">{{addNewItemText}}</span>\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\r\n <div class=\"image\" style=\"width: 30px;height: 30px; margin-right: 10px;\" *ngIf=\"bindImageUrl\">\r\n <img loading=\"lazy\"\r\n [src]=\"item[bindImageUrl] || './assets/images/no-image.png'\"\r\n [alt]=\"item[bindValue]\"\r\n [matTooltip]=\"item[bindValue]\"\r\n style=\"width: auto;max-width: 30px;height: 30px;\"\r\n />\r\n </div>\r\n <span class=\"select-text-element\"\r\n style=\"white-space: nowrap;overflow: hidden;text-overflow: ellipsis;\">{{item[bindValue]}}</span>\r\n </ng-template>\r\n\r\n</ng-select>\r\n", styles: [".apipass-select-image.ng-select.ng-select-opened>.ng-select-container,.apipass-select.ng-select.ng-select-opened>.ng-select-container{height:44px;background:#fff;border-color:#b3b3b3 #ccc #d9d9d9}.apipass-select-image.ng-select-disabled .ng-select-container,.apipass-select.ng-select-disabled .ng-select-container{background-color:#ccc!important;cursor:no-drop!important;color:#777!important}.apipass-select-image.ng-select-disabled .ng-select-container .ng-arrow-wrapper .ng-arrow,.apipass-select.ng-select-disabled .ng-select-container .ng-arrow-wrapper .ng-arrow{border-color:#777 transparent transparent!important;color:#777!important;cursor:no-drop!important}.apipass-select-image.ng-select-disabled .ng-select-container .ng-value-container,.apipass-select.ng-select-disabled .ng-select-container .ng-value-container,.apipass-select-image.ng-select-disabled .ng-select-container .ng-value,.apipass-select.ng-select-disabled .ng-select-container .ng-value,.apipass-select-image.ng-select-disabled .ng-select-container .ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input,.apipass-select.ng-select-disabled .ng-select-container .ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{cursor:no-drop!important}.apipass-select-image .select-text-element,.apipass-select .select-text-element{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ng-select.ng-select-opened>.ng-select-container{border:2px solid var(--color-primary)!important}.ng-select.ng-select-opened>.ng-select-container:hover{box-shadow:none}.ng-select.ng-select-opened>.ng-select-container .ng-arrow{top:-2px;border-color:transparent transparent #DDD;border-width:0 5px 5px}.ng-select.ng-select-opened>.ng-select-container .ng-arrow:hover{border-color:transparent transparent #333}.ng-select.ng-select-opened.ng-select-bottom>.ng-select-container{border-bottom-right-radius:0;border-bottom-left-radius:0}.ng-select.ng-select-opened.ng-select-top>.ng-select-container{border-top-right-radius:0;border-top-left-radius:0}.ng-select.ng-select-focused:not(.ng-select-opened)>.ng-select-container{border-color:var(--color-primary)!important;box-shadow:inset 0 1px 1px #00000013,0 0 0 3px #007eff1a}.ng-select.ng-select-disabled>.ng-select-container{background-color:#f9f9f9}.ng-select .ng-has-value .ng-placeholder{display:none}.ng-select .ng-select-container{color:#333;background-color:#fff;border-radius:4px;border:1px solid var(--color-fonts-tertiary);align-items:center!important}.apipass-select .ng-select-container,.apipass-select-image .ng-select-container{min-height:44px}.ng-select .ng-select-container:hover{box-shadow:0 1px #0000000f}.apipass-select .ng-select-container .ng-value-container{align-items:center!important;padding-left:10px}.apipass-select .ng-select-container .ng-value-container .ng-value{display:flex!important;align-items:center!important}.apipass-select .ng-select-container .ng-value-container,.apipass-select-image .ng-select-container .ng-value-container{align-items:center!important;padding-left:10px}.apipass-select .ng-select-container .ng-value-container .ng-value,.apipass-select-image .ng-select-container .ng-value-container .ng-value{display:flex!important;align-items:center!important}.apipass-select .ng-select-container .ng-value-container .ng-input,.apipass-select-image .ng-select-container .ng-value-container .ng-input{padding-top:0!important;top:auto!important}.apipass-select .ng-select-container .ng-value-container .ng-input input,.apipass-select-image .ng-select-container .ng-value-container .ng-input input{margin-top:-5px!important;padding-top:17px!important;padding-bottom:17px!important}[dir=rtl] .ng-select .ng-select-container .ng-value-container{padding-right:10px;padding-left:0}.ng-select .ng-select-container .ng-value-container .ng-placeholder{font-size:14px;color:#0009}.apipass-select .ng-select-container,.apipass-select-image .ng-select-container{height:44px}.ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{top:5px;left:0;padding-left:10px;padding-right:50px}[dir=rtl] .ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{padding-right:10px;padding-left:50px}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value{background-color:#f9f9f9;border:1px solid #e6e6e6;display:flex!important;align-items:center!important}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value .ng-value-label{padding:0 5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container{padding-top:5px;padding-left:7px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container{padding-right:7px;padding-left:0}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value{font-size:.9em;margin-bottom:5px;color:#333;background-color:#ebf5ff;border-radius:2px;margin-right:5px;display:flex!important;align-items:center!important}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value{margin-right:0;margin-left:5px;display:flex!important;align-items:center!important}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled{background-color:#f9f9f9}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled .ng-value-label{padding-left:5px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled .ng-value-label{padding-left:0;padding-right:5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-label,.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon{display:inline-block;padding:1px 5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon:hover{background-color:#d1e8ff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.left{border-right:1px solid #b8dbff}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.left{border-left:1px solid #b8dbff;border-right:none}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.right{border-left:1px solid #b8dbff}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.right{border-left:0;border-right:1px solid #b8dbff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input{padding:0 0 3px 3px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input{padding:0 3px 3px 0}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input>input{color:#000}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-placeholder{top:5px;padding-bottom:5px;padding-left:3px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-placeholder{padding-right:3px;padding-left:0}.ng-select .ng-clear-wrapper{color:#0009}.ng-select .ng-clear-wrapper:hover .ng-clear{color:#d0021b}.ng-select .ng-spinner-zone{padding:5px 5px 0 0}[dir=rtl] .ng-select .ng-spinner-zone{padding:5px 0 0 5px}.ng-select .ng-arrow-wrapper{width:25px;padding-right:5px}[dir=rtl] .ng-select .ng-arrow-wrapper{padding-left:5px;padding-right:0}.ng-select .ng-arrow-wrapper:hover .ng-arrow{border-top-color:#666}.ng-select .ng-arrow-wrapper .ng-arrow{border-color:#DDD transparent transparent;border-style:solid;border-width:5px 5px 2.5px}.ng-dropdown-panel{background-color:#fff;border:1px solid #DDD;box-shadow:0 1px #0000000f;left:0}.ng-dropdown-panel.ng-select-bottom{top:100%;border-bottom-right-radius:4px;border-bottom-left-radius:4px;border-top-color:#e6e6e6;margin-top:-1px}.ng-dropdown-panel.ng-select-bottom .ng-dropdown-panel-items .ng-option:last-child{border-bottom-right-radius:4px;border-bottom-left-radius:4px}.ng-dropdown-panel.ng-select-top{bottom:100%;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-color:#e6e6e6;margin-bottom:-1px}.ng-dropdown-panel.ng-select-top .ng-dropdown-panel-items .ng-option:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.ng-dropdown-panel .ng-dropdown-header{border-bottom:1px solid #ccc;padding:5px 7px}.ng-dropdown-panel .ng-dropdown-footer{border-top:1px solid #ccc;padding:5px 7px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup{-webkit-user-select:none;user-select:none;padding:8px 10px;font-weight:500;color:#0000008a;cursor:pointer}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-disabled{cursor:default}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-marked{background-color:#f5faff}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected.ng-option-marked{background-color:#ebf5ff;font-weight:600}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option{display:flex!important;align-items:center!important;background-color:#fff;color:#000000de;padding:8px 10px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked{color:#333;background-color:#ebf5ff}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected .ng-option-label,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked .ng-option-label{font-weight:600}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-marked{background-color:#f5faff;color:#333}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-disabled{color:#ccc}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-child{padding-left:22px}[dir=rtl] .ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-child{padding-right:22px;padding-left:0}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .ng-tag-label{font-size:80%;font-weight:400;padding-right:5px}[dir=rtl] .ng-dropdown-panel .ng-dropdown-panel-items .ng-option .ng-tag-label{padding-left:5px;padding-right:0}[dir=rtl] .ng-dropdown-panel{direction:rtl;text-align:right}\n"] }]
171
+ }], encapsulation: ViewEncapsulation.None, template: "<ng-select #ngSelectComponent\n [(ngModel)]=\"value\"\n [items]=\"visibleItens\"\n [virtualScroll]=\"true\"\n [loading]=\"loading || initializing\"\n [loadingText]=\"loadingText\"\n [placeholder]=\"placeholder\"\n [clearAllText]=\"clearText\"\n [searchable]=\"enabledSearch\"\n [typeToSearchText]=\"searchPlaceHolder\"\n (open)=\"openSelectBox($event)\"\n (close)=\"onClose($event)\"\n (clear)=\"onClear()\"\n [notFoundText]=\"notFoundText\"\n [disabled]=\"disabled\"\n appendTo=\"body\"\n (scroll)=\"onScroll($event)\"\n (scrollToEnd)=\"onScrollToEnd()\"\n (change)=\"onSelectionChange($event)\"\n [typeahead]=\"inputFilter\"\n [ngClass]=\"{'apipass-select-image' : bindImageUrl, 'apipass-select': !bindImageUrl}\"\n [compareWith]=\"compareFn\"\n [bindValue]=\"selectProperty\">\n\n <ng-template *ngIf=\"selectProperty && selectedItem && selectedItem[bindKey] && selectedItem[bindValue]\" ng-label-tmp let-item=\"item\">\n <div class=\"image\" style=\"width: 30px;height: 30px; margin-right: 10px;\"\n *ngIf=\"selectedItem && selectedItem[bindKey] && selectedItem[bindValue] && bindImageUrl\">\n <img loading=\"lazy\"\n [src]=\"selectedItem[bindImageUrl] || './assets/images/no-image.png'\"\n [alt]=\"selectedItem[bindValue]\"\n [matTooltip]=\"selectedItem[bindValue]\"\n style=\"width: auto;max-width: 30px;height: 30px;\"\n />\n </div>\n <span class=\"select-text-element\" *ngIf=\"selectedItem && selectedItem[bindKey] && selectedItem[bindValue]\">{{selectedItem[bindValue]}}</span>\n </ng-template>\n\n <ng-template *ngIf=\"!selectProperty && value && value[bindKey] && value[bindValue]\" ng-label-tmp let-item=\"item\">\n <div class=\"image\" style=\"width: 30px;height: 30px; margin-right: 10px;\"\n *ngIf=\"value && value[bindKey] && value[bindValue] && bindImageUrl\">\n <img loading=\"lazy\"\n [src]=\"value[bindImageUrl] || './assets/images/no-image.png'\"\n [alt]=\"value[bindValue]\"\n [matTooltip]=\"value[bindValue]\"\n style=\"width: auto;max-width: 30px;height: 30px;\"\n />\n </div>\n <span class=\"select-text-element\" *ngIf=\"value && value[bindKey] && value[bindValue]\">{{value[bindValue]}}</span>\n </ng-template>\n\n <ng-template ng-header-tmp *ngIf=\"this.showAddNewItem\">\n <div class=\"add-new-item-option\" style=\"display: flex; align-items: center; cursor: pointer;\" (click)=\"onAddNewItem()\">\n <icon style=\"margin-right: 5px\" *ngIf=\"addNewItemIcon\" [title]=\"addNewItemText\" [name]=\"addNewItemIcon\" [size]=\"20\"></icon>\n <span class=\"add-new-item-text\" style=\"white-space: nowrap;overflow: hidden;text-overflow: ellipsis;\"\n *ngIf=\"addNewItemText\">{{addNewItemText}}</span>\n </div>\n </ng-template>\n\n <ng-template ng-option-tmp let-item=\"item\" let-index=\"index\">\n <div class=\"image\" style=\"width: 30px;height: 30px; margin-right: 10px;\" *ngIf=\"bindImageUrl\">\n <img loading=\"lazy\"\n [src]=\"item[bindImageUrl] || './assets/images/no-image.png'\"\n [alt]=\"item[bindValue]\"\n [matTooltip]=\"item[bindValue]\"\n style=\"width: auto;max-width: 30px;height: 30px;\"\n />\n </div>\n <span class=\"select-text-element\"\n style=\"white-space: nowrap;overflow: hidden;text-overflow: ellipsis;\">{{item[bindValue]}}</span>\n </ng-template>\n\n</ng-select>\n", styles: [".apipass-select-image.ng-select.ng-select-opened>.ng-select-container,.apipass-select.ng-select.ng-select-opened>.ng-select-container{height:44px;background:#fff;border-color:#b3b3b3 #ccc #d9d9d9}.apipass-select-image.ng-select-disabled .ng-select-container,.apipass-select.ng-select-disabled .ng-select-container{background-color:#ccc!important;cursor:no-drop!important;color:#777!important}.apipass-select-image.ng-select-disabled .ng-select-container .ng-arrow-wrapper .ng-arrow,.apipass-select.ng-select-disabled .ng-select-container .ng-arrow-wrapper .ng-arrow{border-color:#777 transparent transparent!important;color:#777!important;cursor:no-drop!important}.apipass-select-image.ng-select-disabled .ng-select-container .ng-value-container,.apipass-select.ng-select-disabled .ng-select-container .ng-value-container,.apipass-select-image.ng-select-disabled .ng-select-container .ng-value,.apipass-select.ng-select-disabled .ng-select-container .ng-value,.apipass-select-image.ng-select-disabled .ng-select-container .ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input,.apipass-select.ng-select-disabled .ng-select-container .ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{cursor:no-drop!important}.apipass-select-image .select-text-element,.apipass-select .select-text-element{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ng-select.ng-select-opened>.ng-select-container{border:2px solid var(--color-primary)!important}.ng-select.ng-select-opened>.ng-select-container:hover{box-shadow:none}.ng-select.ng-select-opened>.ng-select-container .ng-arrow{top:-2px;border-color:transparent transparent #DDD;border-width:0 5px 5px}.ng-select.ng-select-opened>.ng-select-container .ng-arrow:hover{border-color:transparent transparent #333}.ng-select.ng-select-opened.ng-select-bottom>.ng-select-container{border-bottom-right-radius:0;border-bottom-left-radius:0}.ng-select.ng-select-opened.ng-select-top>.ng-select-container{border-top-right-radius:0;border-top-left-radius:0}.ng-select.ng-select-focused:not(.ng-select-opened)>.ng-select-container{border-color:var(--color-primary)!important;box-shadow:inset 0 1px 1px #00000013,0 0 0 3px #007eff1a}.ng-select.ng-select-disabled>.ng-select-container{background-color:#f9f9f9}.ng-select .ng-has-value .ng-placeholder{display:none}.ng-select .ng-select-container{color:#333;background-color:#fff;border-radius:4px;border:1px solid var(--color-fonts-tertiary);align-items:center!important}.apipass-select .ng-select-container,.apipass-select-image .ng-select-container{min-height:44px}.ng-select .ng-select-container:hover{box-shadow:0 1px #0000000f}.apipass-select .ng-select-container .ng-value-container{align-items:center!important;padding-left:10px}.apipass-select .ng-select-container .ng-value-container .ng-value{display:flex!important;align-items:center!important}.apipass-select .ng-select-container .ng-value-container,.apipass-select-image .ng-select-container .ng-value-container{align-items:center!important;padding-left:10px}.apipass-select .ng-select-container .ng-value-container .ng-value,.apipass-select-image .ng-select-container .ng-value-container .ng-value{display:flex!important;align-items:center!important}.apipass-select .ng-select-container .ng-value-container .ng-input,.apipass-select-image .ng-select-container .ng-value-container .ng-input{padding-top:0!important;top:auto!important}.apipass-select .ng-select-container .ng-value-container .ng-input input,.apipass-select-image .ng-select-container .ng-value-container .ng-input input{margin-top:-5px!important;padding-top:17px!important;padding-bottom:17px!important}[dir=rtl] .ng-select .ng-select-container .ng-value-container{padding-right:10px;padding-left:0}.ng-select .ng-select-container .ng-value-container .ng-placeholder{font-size:14px;color:#0009}.apipass-select .ng-select-container,.apipass-select-image .ng-select-container{height:44px}.ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{top:5px;left:0;padding-left:10px;padding-right:50px}[dir=rtl] .ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{padding-right:10px;padding-left:50px}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value{background-color:#f9f9f9;border:1px solid #e6e6e6;display:flex!important;align-items:center!important}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value .ng-value-label{padding:0 5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container{padding-top:5px;padding-left:7px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container{padding-right:7px;padding-left:0}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value{font-size:.9em;margin-bottom:5px;color:#333;background-color:#ebf5ff;border-radius:2px;margin-right:5px;display:flex!important;align-items:center!important}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value{margin-right:0;margin-left:5px;display:flex!important;align-items:center!important}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled{background-color:#f9f9f9}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled .ng-value-label{padding-left:5px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled .ng-value-label{padding-left:0;padding-right:5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-label,.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon{display:inline-block;padding:1px 5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon:hover{background-color:#d1e8ff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.left{border-right:1px solid #b8dbff}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.left{border-left:1px solid #b8dbff;border-right:none}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.right{border-left:1px solid #b8dbff}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.right{border-left:0;border-right:1px solid #b8dbff}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input{padding:0 0 3px 3px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input{padding:0 3px 3px 0}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input>input{color:#000}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-placeholder{top:5px;padding-bottom:5px;padding-left:3px}[dir=rtl] .ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-placeholder{padding-right:3px;padding-left:0}.ng-select .ng-clear-wrapper{color:#0009}.ng-select .ng-clear-wrapper:hover .ng-clear{color:#d0021b}.ng-select .ng-spinner-zone{padding:5px 5px 0 0}[dir=rtl] .ng-select .ng-spinner-zone{padding:5px 0 0 5px}.ng-select .ng-arrow-wrapper{width:25px;padding-right:5px}[dir=rtl] .ng-select .ng-arrow-wrapper{padding-left:5px;padding-right:0}.ng-select .ng-arrow-wrapper:hover .ng-arrow{border-top-color:#666}.ng-select .ng-arrow-wrapper .ng-arrow{border-color:#DDD transparent transparent;border-style:solid;border-width:5px 5px 2.5px}.ng-dropdown-panel{background-color:#fff;border:1px solid #DDD;box-shadow:0 1px #0000000f;left:0}.ng-dropdown-panel.ng-select-bottom{top:100%;border-bottom-right-radius:4px;border-bottom-left-radius:4px;border-top-color:#e6e6e6;margin-top:-1px}.ng-dropdown-panel.ng-select-bottom .ng-dropdown-panel-items .ng-option:last-child{border-bottom-right-radius:4px;border-bottom-left-radius:4px}.ng-dropdown-panel.ng-select-top{bottom:100%;border-top-right-radius:4px;border-top-left-radius:4px;border-bottom-color:#e6e6e6;margin-bottom:-1px}.ng-dropdown-panel.ng-select-top .ng-dropdown-panel-items .ng-option:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.ng-dropdown-panel .ng-dropdown-header{border-bottom:1px solid #ccc;padding:5px 7px}.ng-dropdown-panel .ng-dropdown-footer{border-top:1px solid #ccc;padding:5px 7px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup{-webkit-user-select:none;user-select:none;padding:8px 10px;font-weight:500;color:#0000008a;cursor:pointer}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-disabled{cursor:default}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-marked{background-color:#f5faff}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected.ng-option-marked{background-color:#ebf5ff;font-weight:600}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option{display:flex!important;align-items:center!important;background-color:#fff;color:#000000de;padding:8px 10px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked{color:#333;background-color:#ebf5ff}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected .ng-option-label,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked .ng-option-label{font-weight:600}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-marked{background-color:#f5faff;color:#333}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-disabled{color:#ccc}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-child{padding-left:22px}[dir=rtl] .ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-child{padding-right:22px;padding-left:0}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .ng-tag-label{font-size:80%;font-weight:400;padding-right:5px}[dir=rtl] .ng-dropdown-panel .ng-dropdown-panel-items .ng-option .ng-tag-label{padding-left:5px;padding-right:0}[dir=rtl] .ng-dropdown-panel{direction:rtl;text-align:right}\n"] }]
172
172
  }], propDecorators: { placeholder: [{
173
173
  type: Input
174
174
  }], searchPlaceHolder: [{
@@ -223,4 +223,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
223
223
  type: ViewChild,
224
224
  args: ['ngSelectComponent']
225
225
  }] } });
226
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWJveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL3NlbGVjdC1ib3gvc2VsZWN0LWJveC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL3NlbGVjdC1ib3gvc2VsZWN0LWJveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsS0FBSyxFQUdMLE1BQU0sRUFDTixTQUFTLEVBQ1QsaUJBQWlCLEVBQ2xCLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQ2xELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDOUIsT0FBTyxFQUFFLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQ25FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ3hELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFBOzs7Ozs7O0FBRXpELE1BV2Esa0JBQW1CLFNBQVEsaUJBQXNCO0lBRTVDLFdBQVcsR0FBRyxhQUFhLENBQUE7SUFDM0IsaUJBQWlCLEdBQUcsUUFBUSxDQUFBO0lBQzVCLFNBQVMsR0FBRyxPQUFPLENBQUE7SUFDbkIsWUFBWSxHQUFHLGdCQUFnQixDQUFBO0lBQy9CLGFBQWEsR0FBRyxJQUFJLENBQUE7SUFDcEIsSUFBSSxHQUFVLEVBQUUsQ0FBQTtJQUNoQixRQUFRLEdBQUcsS0FBSyxDQUFBO0lBQ2hCLFlBQVksQ0FBSztJQUNqQixjQUFjLENBQUs7SUFFbkIsWUFBWSxHQUFHLEVBQUUsQ0FBQTtJQUNqQixPQUFPLEdBQUcsRUFBRSxDQUFBO0lBQ1osU0FBUyxHQUFHLEVBQUUsQ0FB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QUVXLGVBQWU7c0JBQS9CLE1BQU07Z0JBQ1UsZ0JBQWdCO3NCQUFoQyxNQUFNO2dCQUNVLGNBQWM7c0JBQTlCLE1BQU07Z0JBQ1UsYUFBYTtzQkFBN0IsTUFBTTtnQkFDVSxpQkFBaUI7c0JBQWpDLE1BQU07Z0JBR0EsaUJBQWlCO3NCQUR2QixTQUFTO3VCQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBmb3J3YXJkUmVmLFxyXG4gIElucHV0LFxyXG4gIHR5cGUgT25EZXN0cm95LFxyXG4gIHR5cGUgT25Jbml0LFxyXG4gIE91dHB1dCxcclxuICBWaWV3Q2hpbGQsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb25cclxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xyXG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcydcclxuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xyXG5pbXBvcnQgeyBOZ1NlbGVjdENvbXBvbmVudCB9IGZyb20gJ0BuZy1zZWxlY3Qvbmctc2VsZWN0J1xyXG5pbXBvcnQgeyBWYWx1ZUFjY2Vzc29yQmFzZSB9IGZyb20gJy4uL3ZhbHVlLWFjZXNzb3ItYmFzZSdcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2VsZWN0LWJveCcsXHJcbiAgdGVtcGxhdGVVcmw6ICdzZWxlY3QtYm94LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnc2VsZWN0LWJveC5jb21wb25lbnQuc2NzcyddLFxyXG4gIHByb3ZpZGVyczogW3tcclxuICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2VsZWN0Qm94Q29tcG9uZW50KSxcclxuICAgIG11bHRpOiB0cnVlXHJcbiAgfV0sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2VsZWN0Qm94Q29tcG9uZW50IGV4dGVuZHMgVmFsdWVBY2Nlc3NvckJhc2U8YW55PiBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgQElucHV0KCkgcHVibGljIHBsYWNlaG9sZGVyID0gJ1NlbGVjdCBJdGVtJ1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBzZWFyY2hQbGFjZUhvbGRlciA9ICdTZWFyY2gnXHJcbiAgQElucHV0KCkgcHVibGljIGNsZWFyVGV4dCA9ICdDbGVhcidcclxuICBASW5wdXQoKSBwdWJsaWMgbm90Rm91bmRUZXh0ID0gJ05vIEl0ZW1zIEZvdW5kJ1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBlbmFibGVkU2VhcmNoID0gdHJ1ZVxyXG4gIEBJbnB1dCgpIHB1YmxpYyBkYXRhOiBhbnlbXSA9IFtdXHJcbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVkID0gZmFsc2VcclxuICBASW5wdXQoKSBwdWJsaWMgc2VsZWN0ZWRJdGVtOiBhbnlcclxuICBASW5wdXQoKSBwdWJsaWMgc2VsZWN0UHJvcGVydHk6IGFueVxyXG5cclxuICBASW5wdXQoKSBwdWJsaWMgYmluZEltYWdlVXJsID0gJydcclxuICBASW5wdXQoKSBwdWJsaWMgYmluZEtleSA9ICcnXHJcbiAgQElucHV0KCkgcHVibGljIGJpbmRWYWx1ZSA9ICcnXHJcblxyXG4gIEBJbnB1dCgpIHB1YmxpYyBsaW1pdEl0ZW5zID0gMzBcclxuXHJcbiAgQElucHV0KCkgcHVibGljIHNob3dBZGROZXdJdGVtID0gZmFsc2VcclxuICBASW5wdXQoKSBwdWJsaWMgYWRkTmV3SXRlbVRleHQgPSAnQWRkIE5ldyBJdGVtJ1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBhZGROZXdJdGVtSWNvbiA9ICcnXHJcbiAgQElucHV0KCkgcHVibGljIGFkZE5ld0l0ZW1DbGlja0Nsb3NlU2VsZWN0ID0gZmFsc2VcclxuXHJcbiAgQElucHV0KCkgcHVibGljIGNsb3NlT25Cb2R5U2Nyb2xsID0gZmFsc2VcclxuXHJcbiAgQElucHV0KCkgcHVibGljIGluaXRpYWxpemluZyA9IGZhbHNlXHJcbiAgQElucHV0KCkgcHVibGljIGxvYWRpbmdUZXh0ID0gJ0xvYWRpbmcuLi4nXHJcblxyXG4gIEBPdXRwdXQoKSBwdWJsaWMgb25PcGVuU2VsZWN0Qm94ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KClcclxuICBAT3V0cHV0KCkgcHVibGljIG9uQ2xvc2VTZWxlY3RCb3ggPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKVxyXG4gIEBPdXRwdXQoKSBwdWJsaWMgb25TZWxlY3RDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKVxyXG4gIEBPdXRwdXQoKSBwdWJsaWMgb25TZWxlY3RDbGVhciA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpXHJcbiAgQE91dHB1dCgpIHB1YmxpYyBvbkFkZE5ld0l0ZW1DbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpXHJcblxyXG4gIEBWaWV3Q2hpbGQoJ25nU2VsZWN0Q29tcG9uZW50JylcclxuICBwdWJsaWMgbmdTZWxlY3RDb21wb25lbnQ6IE5nU2VsZWN0Q29tcG9uZW50IHwgdW5kZWZpbmVkXHJcblxyXG4gIHB1YmxpYyB2aXNpYmxlSXRlbnM6IGFueVtdID0gW11cclxuICBwdWJsaWMgbG9hZGluZyA9IGZhbHNlXHJcbiAgcHVibGljIGlucHV0RmlsdGVyID0gbmV3IFN1YmplY3Q8c3RyaW5nPigpXHJcbiAgcHVibGljIGxhc3RTZWFyY2hUZXJtID0gJydcclxuXHJcbiAgbmdPbkluaXQgKCk6IHZvaWQge1xyXG4gICAgdGhpcy5vblNlYXJjaCgpXHJcbiAgICBpZiAodGhpcy5jbG9zZU9uQm9keVNjcm9sbCkge1xyXG4gICAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignc2Nyb2xsJywgdGhpcy5vbkJvZHlTY3JvbGwsIHRydWUpXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHJlYWRvbmx5IG9uQm9keVNjcm9sbCA9IChldmVudDogYW55KTogdm9pZCA9PiB7XHJcbiAgICBpZiAodGhpcy5jbG9zZU9uQm9keVNjcm9sbCAmJiB0aGlzLm5nU2VsZWN0Q29tcG9uZW50Py5pc09wZW4pIHtcclxuICAgICAgY29uc3QgaXNTY3JvbGxpbmdJblNjcm9sbEhvc3QgPSAoZXZlbnQudGFyZ2V0LmNsYXNzTmFtZSBhcyBzdHJpbmcpPy5pbmNsdWRlcygnbmctZHJvcGRvd24tcGFuZWwtaXRlbXMnKVxyXG4gICAgICBpZiAoaXNTY3JvbGxpbmdJblNjcm9sbEhvc3QpIHtcclxuICAgICAgICByZXR1cm5cclxuICAgICAgfVxyXG4gICAgICB0aGlzLm5nU2VsZWN0Q29tcG9uZW50LmNsb3NlKClcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95ICgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmNsb3NlT25Cb2R5U2Nyb2xsKSB7XHJcbiAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdzY3JvbGwnLCB0aGlzLm9uQm9keVNjcm9sbCwgdHJ1ZSlcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uU2VhcmNoICgpOiB2b2lkIHtcclxuICAgIHRoaXMuaW5wdXRGaWx0ZXIucGlwZShkZWJvdW5jZVRpbWUoMjAwKSwgZGlzdGluY3RVbnRpbENoYW5nZWQoKSkuc3Vic2NyaWJlKChzZWFyY2hTdHJpbmc6IHN0cmluZykgPT4ge1xyXG4gICAgICB0aGlzLmxvYWRpbmcgPSB0cnVlXHJcbiAgICAgIHRoaXMubGFzdFNlYXJjaFRlcm0gPSBzZWFyY2hTdHJpbmdcclxuICAgICAgaWYgKHNlYXJjaFN0cmluZyAmJiB0aGlzLmRhdGEpIHtcclxuICAgICAgICB0aGlzLnZpc2libGVJdGVucyA9IHRoaXMuZGF0YS5maWx0ZXIoXHJcbiAgICAgICAgICBpdGVtID0+IGl0ZW1bdGhpcy5iaW5kVmFsdWVdPy50b1N0cmluZygpLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoc2VhcmNoU3RyaW5nLnRvTG93ZXJDYXNlKCkpXHJcbiAgICAgICAgKS5zbGljZSgwLCB0aGlzLmxpbWl0SXRlbnMpXHJcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5kYXRhKSB7XHJcbiAgICAgICAgdGhpcy52aXNpYmxlSXRlbnMgPSB0aGlzLmRhdGEuc2xpY2UoMCwgdGhpcy5saW1pdEl0ZW5zKVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMudmlzaWJsZUl0ZW5zID0gW11cclxuICAgICAgfVxyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZVxyXG4gICAgICB9LCAzMDApXHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgb25TY3JvbGwgKHsgZW5kIH0pOiB2b2lkIHtcclxuICAgIGNvbnN0IGRhdGEgPSB0aGlzLmxhc3RTZWFyY2hUZXJtXHJcbiAgICAgID8gdGhpcy5kYXRhLmZpbHRlcihcclxuICAgICAgICBpdGVtID0+IGl0ZW1bdGhpcy5iaW5kVmFsdWVdPy50b1N0cmluZygpLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXModGhpcy5sYXN0U2VhcmNoVGVybS50b0xvd2VyQ2FzZSgpKVxyXG4gICAgICApXHJcbiAgICAgIDogdGhpcy5kYXRhXHJcbiAgICBpZiAodGhpcy5sb2FkaW5nIHx8IGRhdGEubGVuZ3RoIDw9IHRoaXMudmlzaWJsZUl0ZW5zLmxlbmd0aCkge1xyXG4gICAgICByZXR1cm5cclxuICAgIH1cclxuICAgIGlmIChlbmQgKyA1ID49IHRoaXMudmlzaWJsZUl0ZW5zLmxlbmd0aCkge1xyXG4gICAgICB0aGlzLmZldGNoTW9yZSgpXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBvblNjcm9sbFRvRW5kICgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmxvYWRpbmcpIHtcclxuICAgICAgcmV0dXJuXHJcbiAgICB9XHJcbiAgICB0aGlzLmZldGNoTW9yZSgpXHJcbiAgfVxyXG5cclxuICBmZXRjaE1vcmUgKCk6IHZvaWQge1xyXG4gICAgdGhpcy5sb2FkaW5nID0gdHJ1ZVxyXG4gICAgY29uc3QgbGVuID0gdGhpcy52aXNpYmxlSXRlbnMubGVuZ3RoXHJcbiAgICBjb25zdCBtb3JlID0gdGhpcy5sYXN0U2VhcmNoVGVybVxyXG4gICAgICA/IHRoaXMuZGF0YS5maWx0ZXIoXHJcbiAgICAgICAgaXRlbSA9PiBpdGVtW3RoaXMuYmluZFZhbHVlXT8udG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHRoaXMubGFzdFNlYXJjaFRlcm0udG9Mb3dlckNhc2UoKSlcclxuICAgICAgKS5zbGljZShsZW4sIHRoaXMubGltaXRJdGVucyArIGxlbilcclxuICAgICAgOiB0aGlzLmRhdGEuc2xpY2UobGVuLCB0aGlzLmxpbWl0SXRlbnMgKyBsZW4pXHJcbiAgICB0aGlzLnZpc2libGVJdGVucyA9IHRoaXMudmlzaWJsZUl0ZW5zLmNvbmNhdChtb3JlKVxyXG4gICAgdGhpcy5sb2FkaW5nID0gZmFsc2VcclxuICB9XHJcblxyXG4gIG9uS2V5RG93biAoZXZlbnQ6IGFueSk6IHZvaWQge1xyXG4gICAgaWYgKGV2ZW50LndoaWNoID09PSAzMikge1xyXG4gICAgICBldmVudC50YXJnZXQudmFsdWUgKz0gJyAnXHJcbiAgICB9XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKVxyXG4gIH1cclxuXHJcbiAgb25TZWxlY3Rpb25DaGFuZ2UgKGV2ZW50OiBFdmVudCk6IHZvaWQge1xyXG4gICAgdGhpcy5maW5kU2VsZWN0ZWRJdGVtKHRoaXMudmFsdWUpXHJcbiAgICB0aGlzLm9uU2VsZWN0Q2hhbmdlLmVtaXQodGhpcy5zZWxlY3RlZEl0ZW0pXHJcbiAgfVxyXG5cclxuICBvcGVuU2VsZWN0Qm94ICgkZXZlbnQ6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy52aXNpYmxlSXRlbnMgPSBbXVxyXG4gICAgaWYgKHRoaXMuZGF0YSkge1xyXG4gICAgICB0aGlzLnZpc2libGVJdGVucyA9IHRoaXMuZGF0YS5zbGljZSgwLCB0aGlzLmxpbWl0SXRlbnMpXHJcbiAgICB9XHJcbiAgICB0aGlzLm9uT3BlblNlbGVjdEJveC5uZXh0KHVuZGVmaW5lZClcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjb21wYXJlRm4gKGE6IGFueSwgYjogYW55KTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gYVt0aGlzLmJpbmRLZXldID09PSBiW3RoaXMuYmluZEtleV1cclxuICB9XHJcblxyXG4gIG9uQ2xlYXIgKCk6IHZvaWQge1xyXG4gICAgdGhpcy5vblNlbGVjdENsZWFyLm5leHQodW5kZWZpbmVkKVxyXG4gIH1cclxuXHJcbiAgb25DbG9zZSAoJGV2ZW50PzogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uQ2xvc2VTZWxlY3RCb3gubmV4dCh1bmRlZmluZWQpXHJcbiAgfVxyXG5cclxuICBvbkFkZE5ld0l0ZW0gKCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuYWRkTmV3SXRlbUNsaWNrQ2xvc2VTZWxlY3QpIHtcclxuICAgICAgdGhpcy5uZ1NlbGVjdENvbXBvbmVudD8uY2xvc2UoKVxyXG4gICAgfVxyXG4gICAgdGhpcy5vbkFkZE5ld0l0ZW1DbGljay5uZXh0KHVuZGVmaW5lZClcclxuICB9XHJcblxyXG4gIHdyaXRlVmFsdWUgKHZhbHVlOiBhbnkpOiB2b2lkIHtcclxuICAgIHN1cGVyLndyaXRlVmFsdWUodmFsdWUpXHJcbiAgICBpZiAodmFsdWUpIHtcclxuICAgICAgdGhpcy5maW5kU2VsZWN0ZWRJdGVtKHZhbHVlKVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZmluZFNlbGVjdGVkSXRlbSAodmFsdWU6IGFueSk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMuc2VsZWN0UHJvcGVydHkpIHtcclxuICAgICAgdGhpcy5zZWxlY3RlZEl0ZW0gPSB0aGlzLmRhdGE/LmZpbmQoZWwgPT4gZWxbdGhpcy5iaW5kS2V5XSA9PT0gdmFsdWUpXHJcbiAgICB9IGVsc2UgaWYgKHZhbHVlKSB7XHJcbiAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtID0gdGhpcy5kYXRhPy5maW5kKGVsID0+IGVsW3RoaXMuYmluZEtleV0gPT09IHZhbHVlW3RoaXMuYmluZEtleV0pXHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnNlbGVjdGVkSXRlbSA9IG51bGxcclxuICAgIH1cclxuICB9XHJcblxyXG59XHJcbiIsIjxuZy1zZWxlY3QgI25nU2VsZWN0Q29tcG9uZW50XHJcbiAgICAgICAgICAgWyhuZ01vZGVsKV09XCJ2YWx1ZVwiXHJcbiAgICAgICAgICAgW2l0ZW1zXT1cInZpc2libGVJdGVuc1wiXHJcbiAgICAgICAgICAgW3ZpcnR1YWxTY3JvbGxdPVwidHJ1ZVwiXHJcbiAgICAgICAgICAgW2xvYWRpbmddPVwibG9hZGluZyB8fCBpbml0aWFsaXppbmdcIlxyXG4gICAgICAgICAgIFtsb2FkaW5nVGV4dF09XCJsb2FkaW5nVGV4dFwiXHJcbiAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcclxuICAgICAgICAgICBbY2xlYXJBbGxUZXh0XT1cImNsZWFyVGV4dFwiXHJcbiAgICAgICAgICAgW3NlYXJjaGFibGVdPVwiZW5hYmxlZFNlYXJjaFwiXHJcbiAgICAgICAgICAgW3R5cGVUb1NlYXJjaFRleHRdPVwic2VhcmNoUGxhY2VIb2xkZXJcIlxyXG4gICAgICAgICAgIChvcGVuKT1cIm9wZW5TZWxlY3RCb3goJGV2ZW50KVwiXHJcbiAgICAgICAgICAgKGNsb3NlKT1cIm9uQ2xvc2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgKGNsZWFyKT1cIm9uQ2xlYXIoKVwiXHJcbiAgICAgICAgICAgW25vdEZvdW5kVGV4dF09XCJub3RGb3VuZFRleHRcIlxyXG4gICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgICAgICAgICAgYXBwZW5kVG89XCJib2R5XCJcclxuICAgICAgICAgICAoc2Nyb2xsKT1cIm9uU2Nyb2xsKCRldmVudClcIlxyXG4gICAgICAgICAgIChzY3JvbGxUb0VuZCk9XCJvblNjcm9sbFRvRW5kKClcIlxyXG4gICAgICAgICAgIChjaGFuZ2UpPVwib25TZWxlY3Rpb25DaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgW3R5cGVhaGVhZF09XCJpbnB1dEZpbHRlclwiXHJcbiAgICAgICAgICAgW25nQ2xhc3NdPVwieydhcGlwYXNzLXNlbGVjdC1pbWFnZScgOiBiaW5kSW1hZ2VVcmwsICdhcGlwYXNzLXNlbGVjdCc6ICFiaW5kSW1hZ2VVcmx9XCJcclxuICAgICAgICAgICBbY29tcGFyZVdpdGhdPVwiY29tcGFyZUZuXCJcclxuICAgICAgICAgICBbYmluZFZhbHVlXT1cInNlbGVjdFByb3BlcnR5XCI+XHJcblxyXG4gIDxuZy10ZW1wbGF0ZSAqbmdJZj1cInNlbGVjdFByb3BlcnR5ICYmIHNlbGVjdGVkSXRlbSAmJiBzZWxlY3RlZEl0ZW1bYmluZEtleV0gJiYgc2VsZWN0ZWRJdGVtW2JpbmRWYWx1ZV1cIiBuZy1sYWJlbC10bXAgbGV0LWl0ZW09XCJpdGVtXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiaW1hZ2VcIiBzdHlsZT1cIndpZHRoOiAzMHB4O2hlaWdodDogMzBweDsgbWFyZ2luLXJpZ2h0OiAxMHB4O1wiXHJcbiAgICAgICAgICpuZ0lmPVwic2VsZWN0ZWRJdGVtICYmIHNlbGVjdGVkSXRlbVtiaW5kS2V5XSAmJiBzZWxlY3RlZEl0ZW1bYmluZFZhbHVlXSAmJiBiaW5kSW1hZ2VVcmxcIj5cclxuICAgICAgPGltZyBsb2FkaW5nPVwibGF6eVwiXHJcbiAgICAgICAgICAgW3NyY109XCJzZWxlY3RlZEl0ZW1bYmluZEltYWdlVXJsXSB8fCAnLi9hc3NldHMvaW1hZ2VzL25vLWltYWdlLnBuZydcIlxyXG4gICAgICAgICAgIFthbHRdPVwic2VsZWN0ZWRJdGVtW2JpbmRWYWx1ZV1cIlxyXG4gICAgICAgICAgIFttYXRUb29sdGlwXT1cInNlbGVjdGVkSXRlbVtiaW5kVmFsdWVdXCJcclxuICAgICAgICAgICBzdHlsZT1cIndpZHRoOiBhdXRvO21heC13aWR0aDogMzBweDtoZWlnaHQ6IDMwcHg7XCJcclxuICAgICAgLz5cclxuICAgIDwvZGl2PlxyXG4gICAgPHNwYW4gY2xhc3M9XCJzZWxlY3QtdGV4dC1lbGVtZW50XCIgKm5nSWY9XCJzZWxlY3RlZEl0ZW0gJiYgc2VsZWN0ZWRJdGVtW2JpbmRLZXldICYmIHNlbGVjdGVkSXRlbVtiaW5kVmFsdWVdXCI+e3tzZWxlY3RlZEl0ZW1bYmluZFZhbHVlXX19PC9zcGFuPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gIDxuZy10ZW1wbGF0ZSAqbmdJZj1cIiFzZWxlY3RQcm9wZXJ0eSAmJiB2YWx1ZSAmJiB2YWx1ZVtiaW5kS2V5XSAmJiB2YWx1ZVtiaW5kVmFsdWVdXCIgbmctbGFiZWwtdG1wIGxldC1pdGVtPVwiaXRlbVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImltYWdlXCIgc3R5bGU9XCJ3aWR0aDogMzBweDtoZWlnaHQ6IDMwcHg7IG1hcmdpbi1yaWdodDogMTBweDtcIlxyXG4gICAgICAgICAqbmdJZj1cInZhbHVlICYmIHZhbHVlW2JpbmRLZXldICYmIHZhbHVlW2JpbmRWYWx1ZV0gJiYgYmluZEltYWdlVXJsXCI+XHJcbiAgICAgIDxpbWcgbG9hZGluZz1cImxhenlcIlxyXG4gICAgICAgICAgIFtzcmNdPVwidmFsdWVbYmluZEltYWdlVXJsXSB8fCAnLi9hc3NldHMvaW1hZ2VzL25vLWltYWdlLnBuZydcIlxyXG4gICAgICAgICAgIFthbHRdPVwidmFsdWVbYmluZFZhbHVlXVwiXHJcbiAgICAgICAgICAgW21hdFRvb2x0aXBdPVwidmFsdWVbYmluZFZhbHVlXVwiXHJcbiAgICAgICAgICAgc3R5bGU9XCJ3aWR0aDogYXV0bzttYXgtd2lkdGg6IDMwcHg7aGVpZ2h0OiAzMHB4O1wiXHJcbiAgICAgIC8+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxzcGFuIGNsYXNzPVwic2VsZWN0LXRleHQtZWxlbWVudFwiICpuZ0lmPVwidmFsdWUgJiYgdmFsdWVbYmluZEtleV0gJiYgdmFsdWVbYmluZFZhbHVlXVwiPnt7dmFsdWVbYmluZFZhbHVlXX19PC9zcGFuPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gIDxuZy10ZW1wbGF0ZSBuZy1oZWFkZXItdG1wICpuZ0lmPVwidGhpcy5zaG93QWRkTmV3SXRlbVwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImFkZC1uZXctaXRlbS1vcHRpb25cIiBzdHlsZT1cImRpc3BsYXk6IGZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7IGN1cnNvcjogcG9pbnRlcjtcIiAoY2xpY2spPVwib25BZGROZXdJdGVtKClcIj5cclxuICAgICAgPGljb24gc3R5bGU9XCJtYXJnaW4tcmlnaHQ6IDVweFwiICpuZ0lmPVwiYWRkTmV3SXRlbUljb25cIiBbdGl0bGVdPVwiYWRkTmV3SXRlbVRleHRcIiBbbmFtZV09XCJhZGROZXdJdGVtSWNvblwiIFtzaXplXT1cIjIwXCI+PC9pY29uPlxyXG4gICAgICA8c3BhbiBjbGFzcz1cImFkZC1uZXctaXRlbS10ZXh0XCIgc3R5bGU9XCJ3aGl0ZS1zcGFjZTogbm93cmFwO292ZXJmbG93OiBoaWRkZW47dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XCJcclxuICAgICAgICAgICAgKm5nSWY9XCJhZGROZXdJdGVtVGV4dFwiPnt7YWRkTmV3SXRlbVRleHR9fTwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gIDxuZy10ZW1wbGF0ZSBuZy1vcHRpb24tdG1wIGxldC1pdGVtPVwiaXRlbVwiIGxldC1pbmRleD1cImluZGV4XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiaW1hZ2VcIiBzdHlsZT1cIndpZHRoOiAzMHB4O2hlaWdodDogMzBweDsgbWFyZ2luLXJpZ2h0OiAxMHB4O1wiICpuZ0lmPVwiYmluZEltYWdlVXJsXCI+XHJcbiAgICAgIDxpbWcgbG9hZGluZz1cImxhenlcIlxyXG4gICAgICAgICAgIFtzcmNdPVwiaXRlbVtiaW5kSW1hZ2VVcmxdIHx8ICcuL2Fzc2V0cy9pbWFnZXMvbm8taW1hZ2UucG5nJ1wiXHJcbiAgICAgICAgICAgW2FsdF09XCJpdGVtW2JpbmRWYWx1ZV1cIlxyXG4gICAgICAgICAgIFttYXRUb29sdGlwXT1cIml0ZW1bYmluZFZhbHVlXVwiXHJcbiAgICAgICAgICAgc3R5bGU9XCJ3aWR0aDogYXV0bzttYXgtd2lkdGg6IDMwcHg7aGVpZ2h0OiAzMHB4O1wiXHJcbiAgICAgIC8+XHJcbiAgICA8L2Rpdj5cclxuICAgIDxzcGFuIGNsYXNzPVwic2VsZWN0LXRleHQtZWxlbWVudFwiXHJcbiAgICAgICAgICBzdHlsZT1cIndoaXRlLXNwYWNlOiBub3dyYXA7b3ZlcmZsb3c6IGhpZGRlbjt0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcIj57e2l0ZW1bYmluZFZhbHVlXX19PC9zcGFuPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcblxyXG48L25nLXNlbGVjdD5cclxuIl19
226
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWJveC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL3NlbGVjdC1ib3gvc2VsZWN0LWJveC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL3NlbGVjdC1ib3gvc2VsZWN0LWJveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixVQUFVLEVBQ1YsS0FBSyxFQUdMLE1BQU0sRUFDTixTQUFTLEVBQ1QsaUJBQWlCLEVBQ2xCLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQ2xELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUE7QUFDOUIsT0FBTyxFQUFFLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBQ25FLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ3hELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFBOzs7Ozs7O0FBRXpELE1BV2Esa0JBQW1CLFNBQVEsaUJBQXNCO0lBRTVDLFdBQVcsR0FBRyxhQUFhLENBQUE7SUFDM0IsaUJBQWlCLEdBQUcsUUFBUSxDQUFBO0lBQzVCLFNBQVMsR0FBRyxPQUFPLENBQUE7SUFDbkIsWUFBWSxHQUFHLGdCQUFnQixDQUFBO0lBQy9CLGFBQWEsR0FBRyxJQUFJLENBQUE7SUFDcEIsSUFBSSxHQUFVLEVBQUUsQ0FBQTtJQUNoQixRQUFRLEdBQUcsS0FBSyxDQUFBO0lBQ2hCLFlBQVksQ0FBSztJQUNqQixjQUFjLENBQUs7SUFFbkIsWUFBWSxHQUFHLEVBQUUsQ0FBQTtJQUNqQixPQUFPLEdBQUcsRUFBRSxDQUFBO0lBQ1osU0FBUyxHQUFHLEVBQUUsQ0FB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QUVXLGVBQWU7c0JBQS9CLE1BQU07Z0JBQ1UsZ0JBQWdCO3NCQUFoQyxNQUFNO2dCQUNVLGNBQWM7c0JBQTlCLE1BQU07Z0JBQ1UsYUFBYTtzQkFBN0IsTUFBTTtnQkFDVSxpQkFBaUI7c0JBQWpDLE1BQU07Z0JBR0EsaUJBQWlCO3NCQUR2QixTQUFTO3VCQUFDLG1CQUFtQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBmb3J3YXJkUmVmLFxuICBJbnB1dCxcbiAgdHlwZSBPbkRlc3Ryb3ksXG4gIHR5cGUgT25Jbml0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcydcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZGlzdGluY3RVbnRpbENoYW5nZWQgfSBmcm9tICdyeGpzL29wZXJhdG9ycydcbmltcG9ydCB7IE5nU2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnQG5nLXNlbGVjdC9uZy1zZWxlY3QnXG5pbXBvcnQgeyBWYWx1ZUFjY2Vzc29yQmFzZSB9IGZyb20gJy4uL3ZhbHVlLWFjZXNzb3ItYmFzZSdcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2VsZWN0LWJveCcsXG4gIHRlbXBsYXRlVXJsOiAnc2VsZWN0LWJveC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWydzZWxlY3QtYm94LmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW3tcbiAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBTZWxlY3RCb3hDb21wb25lbnQpLFxuICAgIG11bHRpOiB0cnVlXG4gIH1dLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIFNlbGVjdEJveENvbXBvbmVudCBleHRlbmRzIFZhbHVlQWNjZXNzb3JCYXNlPGFueT4gaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgQElucHV0KCkgcHVibGljIHBsYWNlaG9sZGVyID0gJ1NlbGVjdCBJdGVtJ1xuICBASW5wdXQoKSBwdWJsaWMgc2VhcmNoUGxhY2VIb2xkZXIgPSAnU2VhcmNoJ1xuICBASW5wdXQoKSBwdWJsaWMgY2xlYXJUZXh0ID0gJ0NsZWFyJ1xuICBASW5wdXQoKSBwdWJsaWMgbm90Rm91bmRUZXh0ID0gJ05vIEl0ZW1zIEZvdW5kJ1xuICBASW5wdXQoKSBwdWJsaWMgZW5hYmxlZFNlYXJjaCA9IHRydWVcbiAgQElucHV0KCkgcHVibGljIGRhdGE6IGFueVtdID0gW11cbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVkID0gZmFsc2VcbiAgQElucHV0KCkgcHVibGljIHNlbGVjdGVkSXRlbTogYW55XG4gIEBJbnB1dCgpIHB1YmxpYyBzZWxlY3RQcm9wZXJ0eTogYW55XG5cbiAgQElucHV0KCkgcHVibGljIGJpbmRJbWFnZVVybCA9ICcnXG4gIEBJbnB1dCgpIHB1YmxpYyBiaW5kS2V5ID0gJydcbiAgQElucHV0KCkgcHVibGljIGJpbmRWYWx1ZSA9ICcnXG5cbiAgQElucHV0KCkgcHVibGljIGxpbWl0SXRlbnMgPSAzMFxuXG4gIEBJbnB1dCgpIHB1YmxpYyBzaG93QWRkTmV3SXRlbSA9IGZhbHNlXG4gIEBJbnB1dCgpIHB1YmxpYyBhZGROZXdJdGVtVGV4dCA9ICdBZGQgTmV3IEl0ZW0nXG4gIEBJbnB1dCgpIHB1YmxpYyBhZGROZXdJdGVtSWNvbiA9ICcnXG4gIEBJbnB1dCgpIHB1YmxpYyBhZGROZXdJdGVtQ2xpY2tDbG9zZVNlbGVjdCA9IGZhbHNlXG5cbiAgQElucHV0KCkgcHVibGljIGNsb3NlT25Cb2R5U2Nyb2xsID0gZmFsc2VcblxuICBASW5wdXQoKSBwdWJsaWMgaW5pdGlhbGl6aW5nID0gZmFsc2VcbiAgQElucHV0KCkgcHVibGljIGxvYWRpbmdUZXh0ID0gJ0xvYWRpbmcuLi4nXG5cbiAgQE91dHB1dCgpIHB1YmxpYyBvbk9wZW5TZWxlY3RCb3ggPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKVxuICBAT3V0cHV0KCkgcHVibGljIG9uQ2xvc2VTZWxlY3RCb3ggPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKVxuICBAT3V0cHV0KCkgcHVibGljIG9uU2VsZWN0Q2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KClcbiAgQE91dHB1dCgpIHB1YmxpYyBvblNlbGVjdENsZWFyID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KClcbiAgQE91dHB1dCgpIHB1YmxpYyBvbkFkZE5ld0l0ZW1DbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpXG5cbiAgQFZpZXdDaGlsZCgnbmdTZWxlY3RDb21wb25lbnQnKVxuICBwdWJsaWMgbmdTZWxlY3RDb21wb25lbnQ6IE5nU2VsZWN0Q29tcG9uZW50IHwgdW5kZWZpbmVkXG5cbiAgcHVibGljIHZpc2libGVJdGVuczogYW55W10gPSBbXVxuICBwdWJsaWMgbG9hZGluZyA9IGZhbHNlXG4gIHB1YmxpYyBpbnB1dEZpbHRlciA9IG5ldyBTdWJqZWN0PHN0cmluZz4oKVxuICBwdWJsaWMgbGFzdFNlYXJjaFRlcm0gPSAnJ1xuXG4gIG5nT25Jbml0ICgpOiB2b2lkIHtcbiAgICB0aGlzLm9uU2VhcmNoKClcbiAgICBpZiAodGhpcy5jbG9zZU9uQm9keVNjcm9sbCkge1xuICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIHRoaXMub25Cb2R5U2Nyb2xsLCB0cnVlKVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgb25Cb2R5U2Nyb2xsID0gKGV2ZW50OiBhbnkpOiB2b2lkID0+IHtcbiAgICBpZiAodGhpcy5jbG9zZU9uQm9keVNjcm9sbCAmJiB0aGlzLm5nU2VsZWN0Q29tcG9uZW50Py5pc09wZW4pIHtcbiAgICAgIGNvbnN0IGlzU2Nyb2xsaW5nSW5TY3JvbGxIb3N0ID0gKGV2ZW50LnRhcmdldC5jbGFzc05hbWUgYXMgc3RyaW5nKT8uaW5jbHVkZXMoJ25nLWRyb3Bkb3duLXBhbmVsLWl0ZW1zJylcbiAgICAgIGlmIChpc1Njcm9sbGluZ0luU2Nyb2xsSG9zdCkge1xuICAgICAgICByZXR1cm5cbiAgICAgIH1cbiAgICAgIHRoaXMubmdTZWxlY3RDb21wb25lbnQuY2xvc2UoKVxuICAgIH1cbiAgfVxuXG4gIG5nT25EZXN0cm95ICgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jbG9zZU9uQm9keVNjcm9sbCkge1xuICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIHRoaXMub25Cb2R5U2Nyb2xsLCB0cnVlKVxuICAgIH1cbiAgfVxuXG4gIG9uU2VhcmNoICgpOiB2b2lkIHtcbiAgICB0aGlzLmlucHV0RmlsdGVyLnBpcGUoZGVib3VuY2VUaW1lKDIwMCksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpLnN1YnNjcmliZSgoc2VhcmNoU3RyaW5nOiBzdHJpbmcpID0+IHtcbiAgICAgIHRoaXMubG9hZGluZyA9IHRydWVcbiAgICAgIHRoaXMubGFzdFNlYXJjaFRlcm0gPSBzZWFyY2hTdHJpbmdcbiAgICAgIGlmIChzZWFyY2hTdHJpbmcgJiYgdGhpcy5kYXRhKSB7XG4gICAgICAgIHRoaXMudmlzaWJsZUl0ZW5zID0gdGhpcy5kYXRhLmZpbHRlcihcbiAgICAgICAgICBpdGVtID0+IGl0ZW1bdGhpcy5iaW5kVmFsdWVdPy50b1N0cmluZygpLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXMoc2VhcmNoU3RyaW5nLnRvTG93ZXJDYXNlKCkpXG4gICAgICAgICkuc2xpY2UoMCwgdGhpcy5saW1pdEl0ZW5zKVxuICAgICAgfSBlbHNlIGlmICh0aGlzLmRhdGEpIHtcbiAgICAgICAgdGhpcy52aXNpYmxlSXRlbnMgPSB0aGlzLmRhdGEuc2xpY2UoMCwgdGhpcy5saW1pdEl0ZW5zKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy52aXNpYmxlSXRlbnMgPSBbXVxuICAgICAgfVxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlXG4gICAgICB9LCAzMDApXG4gICAgfSlcbiAgfVxuXG4gIG9uU2Nyb2xsICh7IGVuZCB9KTogdm9pZCB7XG4gICAgY29uc3QgZGF0YSA9IHRoaXMubGFzdFNlYXJjaFRlcm1cbiAgICAgID8gdGhpcy5kYXRhLmZpbHRlcihcbiAgICAgICAgaXRlbSA9PiBpdGVtW3RoaXMuYmluZFZhbHVlXT8udG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHRoaXMubGFzdFNlYXJjaFRlcm0udG9Mb3dlckNhc2UoKSlcbiAgICAgIClcbiAgICAgIDogdGhpcy5kYXRhXG4gICAgaWYgKHRoaXMubG9hZGluZyB8fCBkYXRhLmxlbmd0aCA8PSB0aGlzLnZpc2libGVJdGVucy5sZW5ndGgpIHtcbiAgICAgIHJldHVyblxuICAgIH1cbiAgICBpZiAoZW5kICsgNSA+PSB0aGlzLnZpc2libGVJdGVucy5sZW5ndGgpIHtcbiAgICAgIHRoaXMuZmV0Y2hNb3JlKClcbiAgICB9XG4gIH1cblxuICBvblNjcm9sbFRvRW5kICgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5sb2FkaW5nKSB7XG4gICAgICByZXR1cm5cbiAgICB9XG4gICAgdGhpcy5mZXRjaE1vcmUoKVxuICB9XG5cbiAgZmV0Y2hNb3JlICgpOiB2b2lkIHtcbiAgICB0aGlzLmxvYWRpbmcgPSB0cnVlXG4gICAgY29uc3QgbGVuID0gdGhpcy52aXNpYmxlSXRlbnMubGVuZ3RoXG4gICAgY29uc3QgbW9yZSA9IHRoaXMubGFzdFNlYXJjaFRlcm1cbiAgICAgID8gdGhpcy5kYXRhLmZpbHRlcihcbiAgICAgICAgaXRlbSA9PiBpdGVtW3RoaXMuYmluZFZhbHVlXT8udG9TdHJpbmcoKS50b0xvd2VyQ2FzZSgpLmluY2x1ZGVzKHRoaXMubGFzdFNlYXJjaFRlcm0udG9Mb3dlckNhc2UoKSlcbiAgICAgICkuc2xpY2UobGVuLCB0aGlzLmxpbWl0SXRlbnMgKyBsZW4pXG4gICAgICA6IHRoaXMuZGF0YS5zbGljZShsZW4sIHRoaXMubGltaXRJdGVucyArIGxlbilcbiAgICB0aGlzLnZpc2libGVJdGVucyA9IHRoaXMudmlzaWJsZUl0ZW5zLmNvbmNhdChtb3JlKVxuICAgIHRoaXMubG9hZGluZyA9IGZhbHNlXG4gIH1cblxuICBvbktleURvd24gKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQud2hpY2ggPT09IDMyKSB7XG4gICAgICBldmVudC50YXJnZXQudmFsdWUgKz0gJyAnXG4gICAgfVxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXG4gIH1cblxuICBvblNlbGVjdGlvbkNoYW5nZSAoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgdGhpcy5maW5kU2VsZWN0ZWRJdGVtKHRoaXMudmFsdWUpXG4gICAgdGhpcy5vblNlbGVjdENoYW5nZS5lbWl0KHRoaXMuc2VsZWN0ZWRJdGVtKVxuICB9XG5cbiAgb3BlblNlbGVjdEJveCAoJGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnZpc2libGVJdGVucyA9IFtdXG4gICAgaWYgKHRoaXMuZGF0YSkge1xuICAgICAgdGhpcy52aXNpYmxlSXRlbnMgPSB0aGlzLmRhdGEuc2xpY2UoMCwgdGhpcy5saW1pdEl0ZW5zKVxuICAgIH1cbiAgICB0aGlzLm9uT3BlblNlbGVjdEJveC5uZXh0KHVuZGVmaW5lZClcbiAgfVxuXG4gIHB1YmxpYyBjb21wYXJlRm4gKGE6IGFueSwgYjogYW55KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGFbdGhpcy5iaW5kS2V5XSA9PT0gYlt0aGlzLmJpbmRLZXldXG4gIH1cblxuICBvbkNsZWFyICgpOiB2b2lkIHtcbiAgICB0aGlzLm9uU2VsZWN0Q2xlYXIubmV4dCh1bmRlZmluZWQpXG4gIH1cblxuICBvbkNsb3NlICgkZXZlbnQ/OiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2xvc2VTZWxlY3RCb3gubmV4dCh1bmRlZmluZWQpXG4gIH1cblxuICBvbkFkZE5ld0l0ZW0gKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmFkZE5ld0l0ZW1DbGlja0Nsb3NlU2VsZWN0KSB7XG4gICAgICB0aGlzLm5nU2VsZWN0Q29tcG9uZW50Py5jbG9zZSgpXG4gICAgfVxuICAgIHRoaXMub25BZGROZXdJdGVtQ2xpY2submV4dCh1bmRlZmluZWQpXG4gIH1cblxuICB3cml0ZVZhbHVlICh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgc3VwZXIud3JpdGVWYWx1ZSh2YWx1ZSlcbiAgICBpZiAodmFsdWUpIHtcbiAgICAgIHRoaXMuZmluZFNlbGVjdGVkSXRlbSh2YWx1ZSlcbiAgICB9XG4gIH1cblxuICBmaW5kU2VsZWN0ZWRJdGVtICh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc2VsZWN0UHJvcGVydHkpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtID0gdGhpcy5kYXRhPy5maW5kKGVsID0+IGVsW3RoaXMuYmluZEtleV0gPT09IHZhbHVlKVxuICAgIH0gZWxzZSBpZiAodmFsdWUpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtID0gdGhpcy5kYXRhPy5maW5kKGVsID0+IGVsW3RoaXMuYmluZEtleV0gPT09IHZhbHVlW3RoaXMuYmluZEtleV0pXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWRJdGVtID0gbnVsbFxuICAgIH1cbiAgfVxuXG59XG4iLCI8bmctc2VsZWN0ICNuZ1NlbGVjdENvbXBvbmVudFxuICAgICAgICAgICBbKG5nTW9kZWwpXT1cInZhbHVlXCJcbiAgICAgICAgICAgW2l0ZW1zXT1cInZpc2libGVJdGVuc1wiXG4gICAgICAgICAgIFt2aXJ0dWFsU2Nyb2xsXT1cInRydWVcIlxuICAgICAgICAgICBbbG9hZGluZ109XCJsb2FkaW5nIHx8IGluaXRpYWxpemluZ1wiXG4gICAgICAgICAgIFtsb2FkaW5nVGV4dF09XCJsb2FkaW5nVGV4dFwiXG4gICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICAgICAgIFtjbGVhckFsbFRleHRdPVwiY2xlYXJUZXh0XCJcbiAgICAgICAgICAgW3NlYXJjaGFibGVdPVwiZW5hYmxlZFNlYXJjaFwiXG4gICAgICAgICAgIFt0eXBlVG9TZWFyY2hUZXh0XT1cInNlYXJjaFBsYWNlSG9sZGVyXCJcbiAgICAgICAgICAgKG9wZW4pPVwib3BlblNlbGVjdEJveCgkZXZlbnQpXCJcbiAgICAgICAgICAgKGNsb3NlKT1cIm9uQ2xvc2UoJGV2ZW50KVwiXG4gICAgICAgICAgIChjbGVhcik9XCJvbkNsZWFyKClcIlxuICAgICAgICAgICBbbm90Rm91bmRUZXh0XT1cIm5vdEZvdW5kVGV4dFwiXG4gICAgICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICAgICAgIGFwcGVuZFRvPVwiYm9keVwiXG4gICAgICAgICAgIChzY3JvbGwpPVwib25TY3JvbGwoJGV2ZW50KVwiXG4gICAgICAgICAgIChzY3JvbGxUb0VuZCk9XCJvblNjcm9sbFRvRW5kKClcIlxuICAgICAgICAgICAoY2hhbmdlKT1cIm9uU2VsZWN0aW9uQ2hhbmdlKCRldmVudClcIlxuICAgICAgICAgICBbdHlwZWFoZWFkXT1cImlucHV0RmlsdGVyXCJcbiAgICAgICAgICAgW25nQ2xhc3NdPVwieydhcGlwYXNzLXNlbGVjdC1pbWFnZScgOiBiaW5kSW1hZ2VVcmwsICdhcGlwYXNzLXNlbGVjdCc6ICFiaW5kSW1hZ2VVcmx9XCJcbiAgICAgICAgICAgW2NvbXBhcmVXaXRoXT1cImNvbXBhcmVGblwiXG4gICAgICAgICAgIFtiaW5kVmFsdWVdPVwic2VsZWN0UHJvcGVydHlcIj5cblxuICA8bmctdGVtcGxhdGUgKm5nSWY9XCJzZWxlY3RQcm9wZXJ0eSAmJiBzZWxlY3RlZEl0ZW0gJiYgc2VsZWN0ZWRJdGVtW2JpbmRLZXldICYmIHNlbGVjdGVkSXRlbVtiaW5kVmFsdWVdXCIgbmctbGFiZWwtdG1wIGxldC1pdGVtPVwiaXRlbVwiPlxuICAgIDxkaXYgY2xhc3M9XCJpbWFnZVwiIHN0eWxlPVwid2lkdGg6IDMwcHg7aGVpZ2h0OiAzMHB4OyBtYXJnaW4tcmlnaHQ6IDEwcHg7XCJcbiAgICAgICAgICpuZ0lmPVwic2VsZWN0ZWRJdGVtICYmIHNlbGVjdGVkSXRlbVtiaW5kS2V5XSAmJiBzZWxlY3RlZEl0ZW1bYmluZFZhbHVlXSAmJiBiaW5kSW1hZ2VVcmxcIj5cbiAgICAgIDxpbWcgbG9hZGluZz1cImxhenlcIlxuICAgICAgICAgICBbc3JjXT1cInNlbGVjdGVkSXRlbVtiaW5kSW1hZ2VVcmxdIHx8ICcuL2Fzc2V0cy9pbWFnZXMvbm8taW1hZ2UucG5nJ1wiXG4gICAgICAgICAgIFthbHRdPVwic2VsZWN0ZWRJdGVtW2JpbmRWYWx1ZV1cIlxuICAgICAgICAgICBbbWF0VG9vbHRpcF09XCJzZWxlY3RlZEl0ZW1bYmluZFZhbHVlXVwiXG4gICAgICAgICAgIHN0eWxlPVwid2lkdGg6IGF1dG87bWF4LXdpZHRoOiAzMHB4O2hlaWdodDogMzBweDtcIlxuICAgICAgLz5cbiAgICA8L2Rpdj5cbiAgICA8c3BhbiBjbGFzcz1cInNlbGVjdC10ZXh0LWVsZW1lbnRcIiAqbmdJZj1cInNlbGVjdGVkSXRlbSAmJiBzZWxlY3RlZEl0ZW1bYmluZEtleV0gJiYgc2VsZWN0ZWRJdGVtW2JpbmRWYWx1ZV1cIj57e3NlbGVjdGVkSXRlbVtiaW5kVmFsdWVdfX08L3NwYW4+XG4gIDwvbmctdGVtcGxhdGU+XG5cbiAgPG5nLXRlbXBsYXRlICpuZ0lmPVwiIXNlbGVjdFByb3BlcnR5ICYmIHZhbHVlICYmIHZhbHVlW2JpbmRLZXldICYmIHZhbHVlW2JpbmRWYWx1ZV1cIiBuZy1sYWJlbC10bXAgbGV0LWl0ZW09XCJpdGVtXCI+XG4gICAgPGRpdiBjbGFzcz1cImltYWdlXCIgc3R5bGU9XCJ3aWR0aDogMzBweDtoZWlnaHQ6IDMwcHg7IG1hcmdpbi1yaWdodDogMTBweDtcIlxuICAgICAgICAgKm5nSWY9XCJ2YWx1ZSAmJiB2YWx1ZVtiaW5kS2V5XSAmJiB2YWx1ZVtiaW5kVmFsdWVdICYmIGJpbmRJbWFnZVVybFwiPlxuICAgICAgPGltZyBsb2FkaW5nPVwibGF6eVwiXG4gICAgICAgICAgIFtzcmNdPVwidmFsdWVbYmluZEltYWdlVXJsXSB8fCAnLi9hc3NldHMvaW1hZ2VzL25vLWltYWdlLnBuZydcIlxuICAgICAgICAgICBbYWx0XT1cInZhbHVlW2JpbmRWYWx1ZV1cIlxuICAgICAgICAgICBbbWF0VG9vbHRpcF09XCJ2YWx1ZVtiaW5kVmFsdWVdXCJcbiAgICAgICAgICAgc3R5bGU9XCJ3aWR0aDogYXV0bzttYXgtd2lkdGg6IDMwcHg7aGVpZ2h0OiAzMHB4O1wiXG4gICAgICAvPlxuICAgIDwvZGl2PlxuICAgIDxzcGFuIGNsYXNzPVwic2VsZWN0LXRleHQtZWxlbWVudFwiICpuZ0lmPVwidmFsdWUgJiYgdmFsdWVbYmluZEtleV0gJiYgdmFsdWVbYmluZFZhbHVlXVwiPnt7dmFsdWVbYmluZFZhbHVlXX19PC9zcGFuPlxuICA8L25nLXRlbXBsYXRlPlxuXG4gIDxuZy10ZW1wbGF0ZSBuZy1oZWFkZXItdG1wICpuZ0lmPVwidGhpcy5zaG93QWRkTmV3SXRlbVwiPlxuICAgIDxkaXYgY2xhc3M9XCJhZGQtbmV3LWl0ZW0tb3B0aW9uXCIgc3R5bGU9XCJkaXNwbGF5OiBmbGV4OyBhbGlnbi1pdGVtczogY2VudGVyOyBjdXJzb3I6IHBvaW50ZXI7XCIgKGNsaWNrKT1cIm9uQWRkTmV3SXRlbSgpXCI+XG4gICAgICA8aWNvbiBzdHlsZT1cIm1hcmdpbi1yaWdodDogNXB4XCIgKm5nSWY9XCJhZGROZXdJdGVtSWNvblwiIFt0aXRsZV09XCJhZGROZXdJdGVtVGV4dFwiIFtuYW1lXT1cImFkZE5ld0l0ZW1JY29uXCIgW3NpemVdPVwiMjBcIj48L2ljb24+XG4gICAgICA8c3BhbiBjbGFzcz1cImFkZC1uZXctaXRlbS10ZXh0XCIgc3R5bGU9XCJ3aGl0ZS1zcGFjZTogbm93cmFwO292ZXJmbG93OiBoaWRkZW47dGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XCJcbiAgICAgICAgICAgICpuZ0lmPVwiYWRkTmV3SXRlbVRleHRcIj57e2FkZE5ld0l0ZW1UZXh0fX08L3NwYW4+XG4gICAgPC9kaXY+XG4gIDwvbmctdGVtcGxhdGU+XG5cbiAgPG5nLXRlbXBsYXRlIG5nLW9wdGlvbi10bXAgbGV0LWl0ZW09XCJpdGVtXCIgbGV0LWluZGV4PVwiaW5kZXhcIj5cbiAgICA8ZGl2IGNsYXNzPVwiaW1hZ2VcIiBzdHlsZT1cIndpZHRoOiAzMHB4O2hlaWdodDogMzBweDsgbWFyZ2luLXJpZ2h0OiAxMHB4O1wiICpuZ0lmPVwiYmluZEltYWdlVXJsXCI+XG4gICAgICA8aW1nIGxvYWRpbmc9XCJsYXp5XCJcbiAgICAgICAgICAgW3NyY109XCJpdGVtW2JpbmRJbWFnZVVybF0gfHwgJy4vYXNzZXRzL2ltYWdlcy9uby1pbWFnZS5wbmcnXCJcbiAgICAgICAgICAgW2FsdF09XCJpdGVtW2JpbmRWYWx1ZV1cIlxuICAgICAgICAgICBbbWF0VG9vbHRpcF09XCJpdGVtW2JpbmRWYWx1ZV1cIlxuICAgICAgICAgICBzdHlsZT1cIndpZHRoOiBhdXRvO21heC13aWR0aDogMzBweDtoZWlnaHQ6IDMwcHg7XCJcbiAgICAgIC8+XG4gICAgPC9kaXY+XG4gICAgPHNwYW4gY2xhc3M9XCJzZWxlY3QtdGV4dC1lbGVtZW50XCJcbiAgICAgICAgICBzdHlsZT1cIndoaXRlLXNwYWNlOiBub3dyYXA7b3ZlcmZsb3c6IGhpZGRlbjt0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcIj57e2l0ZW1bYmluZFZhbHVlXX19PC9zcGFuPlxuICA8L25nLXRlbXBsYXRlPlxuXG48L25nLXNlbGVjdD5cbiJdfQ==
@@ -33,7 +33,7 @@ class SelectEnumComponent extends ValueAccessorBase {
33
33
  provide: NG_VALUE_ACCESSOR,
34
34
  useExisting: forwardRef(() => SelectEnumComponent),
35
35
  multi: true
36
- }], usesInheritance: true, ngImport: i0, template: "<mat-form-field class=\"apipass-select apipass-select-enum\" appearance=\"outline\" >\r\n <mat-label *ngIf=\"placeholder\">{{placeholder}}</mat-label>\r\n <mat-select [(ngModel)]=\"value\" [disabled]=\"disabled\" (click)=\"search = ''\" panelClass=\"select-enum-panel\">\r\n <mat-option class=\"mat-select-input\" *ngIf=\"enabledSearch\" (keydown)=\"onKeyDown($event)\" disabled=\"disabled\">\r\n <mat-form-field class=\"apipass-input-text search-input-item\" appearance=\"outline\">\r\n <mat-label *ngIf=\"findPlaceHolder\">{{findPlaceHolder}}</mat-label>\r\n <input matInput class=\"search-input-item\"\r\n [(ngModel)]=\"search\"\r\n aria-autocomplete=\"none\"\r\n autocomplete=\"off\"\r\n />\r\n </mat-form-field>\r\n </mat-option>\r\n <mat-option *ngFor=\"let enumData of data | selectEnumFilter: search\" [value]=\"enumData.key\">{{ enumData.value }}</mat-option>\r\n </mat-select>\r\n</mat-form-field>\r\n", styles: [".select-enum-panel .mat-select-input{pointer-events:auto!important}.select-enum-panel .mat-select-input span{width:100%!important;opacity:1!important;margin-top:15px!important}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i5.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "component", type: i6.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "pipe", type: i7.SelectEnumFilterPipe, name: "selectEnumFilter" }], encapsulation: i0.ViewEncapsulation.None });
36
+ }], usesInheritance: true, ngImport: i0, template: "<mat-form-field class=\"apipass-select apipass-select-enum\" appearance=\"outline\" >\n <mat-label *ngIf=\"placeholder\">{{placeholder}}</mat-label>\n <mat-select [(ngModel)]=\"value\" [disabled]=\"disabled\" (click)=\"search = ''\" panelClass=\"select-enum-panel\">\n <mat-option class=\"mat-select-input\" *ngIf=\"enabledSearch\" (keydown)=\"onKeyDown($event)\" disabled=\"disabled\">\n <mat-form-field class=\"apipass-input-text search-input-item\" appearance=\"outline\">\n <mat-label *ngIf=\"findPlaceHolder\">{{findPlaceHolder}}</mat-label>\n <input matInput class=\"search-input-item\"\n [(ngModel)]=\"search\"\n aria-autocomplete=\"none\"\n autocomplete=\"off\"\n />\n </mat-form-field>\n </mat-option>\n <mat-option *ngFor=\"let enumData of data | selectEnumFilter: search\" [value]=\"enumData.key\">{{ enumData.value }}</mat-option>\n </mat-select>\n</mat-form-field>\n", styles: [".select-enum-panel .mat-select-input{pointer-events:auto!important}.select-enum-panel .mat-select-input span{width:100%!important;opacity:1!important;margin-top:15px!important}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i5.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "component", type: i6.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "pipe", type: i7.SelectEnumFilterPipe, name: "selectEnumFilter" }], encapsulation: i0.ViewEncapsulation.None });
37
37
  }
38
38
  export { SelectEnumComponent };
39
39
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: SelectEnumComponent, decorators: [{
@@ -42,7 +42,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
42
42
  provide: NG_VALUE_ACCESSOR,
43
43
  useExisting: forwardRef(() => SelectEnumComponent),
44
44
  multi: true
45
- }], encapsulation: ViewEncapsulation.None, template: "<mat-form-field class=\"apipass-select apipass-select-enum\" appearance=\"outline\" >\r\n <mat-label *ngIf=\"placeholder\">{{placeholder}}</mat-label>\r\n <mat-select [(ngModel)]=\"value\" [disabled]=\"disabled\" (click)=\"search = ''\" panelClass=\"select-enum-panel\">\r\n <mat-option class=\"mat-select-input\" *ngIf=\"enabledSearch\" (keydown)=\"onKeyDown($event)\" disabled=\"disabled\">\r\n <mat-form-field class=\"apipass-input-text search-input-item\" appearance=\"outline\">\r\n <mat-label *ngIf=\"findPlaceHolder\">{{findPlaceHolder}}</mat-label>\r\n <input matInput class=\"search-input-item\"\r\n [(ngModel)]=\"search\"\r\n aria-autocomplete=\"none\"\r\n autocomplete=\"off\"\r\n />\r\n </mat-form-field>\r\n </mat-option>\r\n <mat-option *ngFor=\"let enumData of data | selectEnumFilter: search\" [value]=\"enumData.key\">{{ enumData.value }}</mat-option>\r\n </mat-select>\r\n</mat-form-field>\r\n", styles: [".select-enum-panel .mat-select-input{pointer-events:auto!important}.select-enum-panel .mat-select-input span{width:100%!important;opacity:1!important;margin-top:15px!important}\n"] }]
45
+ }], encapsulation: ViewEncapsulation.None, template: "<mat-form-field class=\"apipass-select apipass-select-enum\" appearance=\"outline\" >\n <mat-label *ngIf=\"placeholder\">{{placeholder}}</mat-label>\n <mat-select [(ngModel)]=\"value\" [disabled]=\"disabled\" (click)=\"search = ''\" panelClass=\"select-enum-panel\">\n <mat-option class=\"mat-select-input\" *ngIf=\"enabledSearch\" (keydown)=\"onKeyDown($event)\" disabled=\"disabled\">\n <mat-form-field class=\"apipass-input-text search-input-item\" appearance=\"outline\">\n <mat-label *ngIf=\"findPlaceHolder\">{{findPlaceHolder}}</mat-label>\n <input matInput class=\"search-input-item\"\n [(ngModel)]=\"search\"\n aria-autocomplete=\"none\"\n autocomplete=\"off\"\n />\n </mat-form-field>\n </mat-option>\n <mat-option *ngFor=\"let enumData of data | selectEnumFilter: search\" [value]=\"enumData.key\">{{ enumData.value }}</mat-option>\n </mat-select>\n</mat-form-field>\n", styles: [".select-enum-panel .mat-select-input{pointer-events:auto!important}.select-enum-panel .mat-select-input span{width:100%!important;opacity:1!important;margin-top:15px!important}\n"] }]
46
46
  }], propDecorators: { placeholder: [{
47
47
  type: Input
48
48
  }], findPlaceHolder: [{
@@ -54,4 +54,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
54
54
  }], data: [{
55
55
  type: Input
56
56
  }] } });
57
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWVudW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5wdXRzL3NyYy9zZWxlY3QtZW51bS9zZWxlY3QtZW51bS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL3NlbGVjdC1lbnVtL3NlbGVjdC1lbnVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUMvRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUNsRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTs7Ozs7Ozs7O0FBRXpELE1BV2EsbUJBQW9CLFNBQVEsaUJBQXlCO0lBRXhELEtBQUssQ0FBTTtJQUVILFdBQVcsR0FBRyxXQUFXLENBQUE7SUFDekIsZUFBZSxHQUFHLFdBQVcsQ0FBQTtJQUM3QixhQUFhLEdBQUcsSUFBSSxDQUFBO0lBQ3BCLFFBQVEsR0FBRyxLQUFLLENBQUE7SUFFaEMsSUFBYSxJQUFJLENBQUUsSUFBUztRQUMxQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUN4RixDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFBO0lBQ25CLENBQUM7SUFFTSxNQUFNLEdBQUcsRUFBRSxDQUFBO0lBRWxCLFNBQVMsQ0FBRSxLQUFVO1FBQ25CLElBQUksS0FBSyxDQUFDLEtBQUssS0FBSyxFQUFFLEVBQUU7WUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssSUFBSSxHQUFHLENBQUE7U0FBRTtRQUNyRCxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUE7SUFDekIsQ0FBQzt1R0F0QlUsbUJBQW1COzJGQUFuQixtQkFBbUIsc0xBUG5CLENBQUM7Z0JBQ1YsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztnQkFDbEQsS0FBSyxFQUFFLElBQUk7YUFDWixDQUFDLGlEQ1pKLHMrQkFnQkE7O1NERGEsbUJBQW1COzJGQUFuQixtQkFBbUI7a0JBWC9CLFNBQVM7K0JBQ0UsYUFBYSxhQUdaLENBQUM7NEJBQ1YsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsb0JBQW9CLENBQUM7NEJBQ2xELEtBQUssRUFBRSxJQUFJO3lCQUNaLENBQUMsaUJBQ2EsaUJBQWlCLENBQUMsSUFBSTs4QkFNckIsV0FBVztzQkFBMUIsS0FBSztnQkFDVSxlQUFlO3NCQUE5QixLQUFLO2dCQUNVLGFBQWE7c0JBQTVCLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFFTyxJQUFJO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBmb3J3YXJkUmVmLCBJbnB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xyXG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJ1xyXG5pbXBvcnQgeyBWYWx1ZUFjY2Vzc29yQmFzZSB9IGZyb20gJy4uL3ZhbHVlLWFjZXNzb3ItYmFzZSdcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2VsZWN0LWVudW0nLFxyXG4gIHRlbXBsYXRlVXJsOiAnc2VsZWN0LWVudW0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWydzZWxlY3QtZW51bS5jb21wb25lbnQuc2NzcyddLFxyXG4gIHByb3ZpZGVyczogW3tcclxuICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2VsZWN0RW51bUNvbXBvbmVudCksXHJcbiAgICBtdWx0aTogdHJ1ZVxyXG4gIH1dLFxyXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIFNlbGVjdEVudW1Db21wb25lbnQgZXh0ZW5kcyBWYWx1ZUFjY2Vzc29yQmFzZTxzdHJpbmc+IHtcclxuXHJcbiAgcHJpdmF0ZSBfZGF0YTogYW55O1xyXG5cclxuICBASW5wdXQoKSBwdWJsaWMgcGxhY2Vob2xkZXIgPSAnU2VsZWNpb25lJ1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBmaW5kUGxhY2VIb2xkZXIgPSAnRmluZCBpdGVtJ1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBlbmFibGVkU2VhcmNoID0gdHJ1ZVxyXG4gIEBJbnB1dCgpIHB1YmxpYyBkaXNhYmxlZCA9IGZhbHNlXHJcblxyXG4gIEBJbnB1dCgpIHNldCBkYXRhIChkYXRhOiBhbnkpIHtcclxuICAgIHRoaXMuX2RhdGEgPSBkYXRhID8gT2JqZWN0LmVudHJpZXMoZGF0YSkubWFwKChba2V5LCB2YWx1ZV0pID0+ICh7IGtleSwgdmFsdWUgfSkpIDoge307XHJcbiAgfVxyXG5cclxuICBnZXQgZGF0YSAoKTogYW55IHtcclxuICAgIHJldHVybiB0aGlzLl9kYXRhXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2VhcmNoID0gJydcclxuXHJcbiAgb25LZXlEb3duIChldmVudDogYW55KTogdm9pZCB7XHJcbiAgICBpZiAoZXZlbnQud2hpY2ggPT09IDMyKSB7IGV2ZW50LnRhcmdldC52YWx1ZSArPSAnICcgfVxyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcclxuICB9XHJcblxyXG59XHJcbiIsIjxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImFwaXBhc3Mtc2VsZWN0IGFwaXBhc3Mtc2VsZWN0LWVudW1cIiBhcHBlYXJhbmNlPVwib3V0bGluZVwiID5cclxuICA8bWF0LWxhYmVsICpuZ0lmPVwicGxhY2Vob2xkZXJcIj57e3BsYWNlaG9sZGVyfX08L21hdC1sYWJlbD5cclxuICA8bWF0LXNlbGVjdCBbKG5nTW9kZWwpXT1cInZhbHVlXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCIgKGNsaWNrKT1cInNlYXJjaCA9ICcnXCIgcGFuZWxDbGFzcz1cInNlbGVjdC1lbnVtLXBhbmVsXCI+XHJcbiAgICA8bWF0LW9wdGlvbiBjbGFzcz1cIm1hdC1zZWxlY3QtaW5wdXRcIiAqbmdJZj1cImVuYWJsZWRTZWFyY2hcIiAoa2V5ZG93bik9XCJvbktleURvd24oJGV2ZW50KVwiIGRpc2FibGVkPVwiZGlzYWJsZWRcIj5cclxuICAgICAgPG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwiYXBpcGFzcy1pbnB1dC10ZXh0IHNlYXJjaC1pbnB1dC1pdGVtXCIgYXBwZWFyYW5jZT1cIm91dGxpbmVcIj5cclxuICAgICAgICA8bWF0LWxhYmVsICpuZ0lmPVwiZmluZFBsYWNlSG9sZGVyXCI+e3tmaW5kUGxhY2VIb2xkZXJ9fTwvbWF0LWxhYmVsPlxyXG4gICAgICAgIDxpbnB1dCBtYXRJbnB1dCBjbGFzcz1cInNlYXJjaC1pbnB1dC1pdGVtXCJcclxuICAgICAgICAgICAgICAgWyhuZ01vZGVsKV09XCJzZWFyY2hcIlxyXG4gICAgICAgICAgICAgICBhcmlhLWF1dG9jb21wbGV0ZT1cIm5vbmVcIlxyXG4gICAgICAgICAgICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxyXG4gICAgICAgIC8+XHJcbiAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XHJcbiAgICA8L21hdC1vcHRpb24+XHJcbiAgICA8bWF0LW9wdGlvbiAqbmdGb3I9XCJsZXQgZW51bURhdGEgb2YgZGF0YSB8IHNlbGVjdEVudW1GaWx0ZXI6IHNlYXJjaFwiIFt2YWx1ZV09XCJlbnVtRGF0YS5rZXlcIj57eyBlbnVtRGF0YS52YWx1ZSB9fTwvbWF0LW9wdGlvbj5cclxuICA8L21hdC1zZWxlY3Q+XHJcbjwvbWF0LWZvcm0tZmllbGQ+XHJcbiJdfQ==
57
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWVudW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5wdXRzL3NyYy9zZWxlY3QtZW51bS9zZWxlY3QtZW51bS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL3NlbGVjdC1lbnVtL3NlbGVjdC1lbnVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUMvRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUNsRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTs7Ozs7Ozs7O0FBRXpELE1BV2EsbUJBQW9CLFNBQVEsaUJBQXlCO0lBRXhELEtBQUssQ0FBTTtJQUVILFdBQVcsR0FBRyxXQUFXLENBQUE7SUFDekIsZUFBZSxHQUFHLFdBQVcsQ0FBQTtJQUM3QixhQUFhLEdBQUcsSUFBSSxDQUFBO0lBQ3BCLFFBQVEsR0FBRyxLQUFLLENBQUE7SUFFaEMsSUFBYSxJQUFJLENBQUUsSUFBUztRQUMxQixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUN4RixDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFBO0lBQ25CLENBQUM7SUFFTSxNQUFNLEdBQUcsRUFBRSxDQUFBO0lBRWxCLFNBQVMsQ0FBRSxLQUFVO1FBQ25CLElBQUksS0FBSyxDQUFDLEtBQUssS0FBSyxFQUFFLEVBQUU7WUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssSUFBSSxHQUFHLENBQUE7U0FBRTtRQUNyRCxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUE7SUFDekIsQ0FBQzt1R0F0QlUsbUJBQW1COzJGQUFuQixtQkFBbUIsc0xBUG5CLENBQUM7Z0JBQ1YsT0FBTyxFQUFFLGlCQUFpQjtnQkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztnQkFDbEQsS0FBSyxFQUFFLElBQUk7YUFDWixDQUFDLGlEQ1pKLHM4QkFnQkE7O1NERGEsbUJBQW1COzJGQUFuQixtQkFBbUI7a0JBWC9CLFNBQVM7K0JBQ0UsYUFBYSxhQUdaLENBQUM7NEJBQ1YsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsb0JBQW9CLENBQUM7NEJBQ2xELEtBQUssRUFBRSxJQUFJO3lCQUNaLENBQUMsaUJBQ2EsaUJBQWlCLENBQUMsSUFBSTs4QkFNckIsV0FBVztzQkFBMUIsS0FBSztnQkFDVSxlQUFlO3NCQUE5QixLQUFLO2dCQUNVLGFBQWE7c0JBQTVCLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFFTyxJQUFJO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBmb3J3YXJkUmVmLCBJbnB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcbmltcG9ydCB7IFZhbHVlQWNjZXNzb3JCYXNlIH0gZnJvbSAnLi4vdmFsdWUtYWNlc3Nvci1iYXNlJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzZWxlY3QtZW51bScsXG4gIHRlbXBsYXRlVXJsOiAnc2VsZWN0LWVudW0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnc2VsZWN0LWVudW0uY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbe1xuICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFNlbGVjdEVudW1Db21wb25lbnQpLFxuICAgIG11bHRpOiB0cnVlXG4gIH1dLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIFNlbGVjdEVudW1Db21wb25lbnQgZXh0ZW5kcyBWYWx1ZUFjY2Vzc29yQmFzZTxzdHJpbmc+IHtcblxuICBwcml2YXRlIF9kYXRhOiBhbnk7XG5cbiAgQElucHV0KCkgcHVibGljIHBsYWNlaG9sZGVyID0gJ1NlbGVjaW9uZSdcbiAgQElucHV0KCkgcHVibGljIGZpbmRQbGFjZUhvbGRlciA9ICdGaW5kIGl0ZW0nXG4gIEBJbnB1dCgpIHB1YmxpYyBlbmFibGVkU2VhcmNoID0gdHJ1ZVxuICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQgPSBmYWxzZVxuXG4gIEBJbnB1dCgpIHNldCBkYXRhIChkYXRhOiBhbnkpIHtcbiAgICB0aGlzLl9kYXRhID0gZGF0YSA/IE9iamVjdC5lbnRyaWVzKGRhdGEpLm1hcCgoW2tleSwgdmFsdWVdKSA9PiAoeyBrZXksIHZhbHVlIH0pKSA6IHt9O1xuICB9XG5cbiAgZ2V0IGRhdGEgKCk6IGFueSB7XG4gICAgcmV0dXJuIHRoaXMuX2RhdGFcbiAgfVxuXG4gIHB1YmxpYyBzZWFyY2ggPSAnJ1xuXG4gIG9uS2V5RG93biAoZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIGlmIChldmVudC53aGljaCA9PT0gMzIpIHsgZXZlbnQudGFyZ2V0LnZhbHVlICs9ICcgJyB9XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgfVxuXG59XG4iLCI8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJhcGlwYXNzLXNlbGVjdCBhcGlwYXNzLXNlbGVjdC1lbnVtXCIgYXBwZWFyYW5jZT1cIm91dGxpbmVcIiA+XG4gIDxtYXQtbGFiZWwgKm5nSWY9XCJwbGFjZWhvbGRlclwiPnt7cGxhY2Vob2xkZXJ9fTwvbWF0LWxhYmVsPlxuICA8bWF0LXNlbGVjdCBbKG5nTW9kZWwpXT1cInZhbHVlXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCIgKGNsaWNrKT1cInNlYXJjaCA9ICcnXCIgcGFuZWxDbGFzcz1cInNlbGVjdC1lbnVtLXBhbmVsXCI+XG4gICAgPG1hdC1vcHRpb24gY2xhc3M9XCJtYXQtc2VsZWN0LWlucHV0XCIgKm5nSWY9XCJlbmFibGVkU2VhcmNoXCIgKGtleWRvd24pPVwib25LZXlEb3duKCRldmVudClcIiBkaXNhYmxlZD1cImRpc2FibGVkXCI+XG4gICAgICA8bWF0LWZvcm0tZmllbGQgY2xhc3M9XCJhcGlwYXNzLWlucHV0LXRleHQgc2VhcmNoLWlucHV0LWl0ZW1cIiBhcHBlYXJhbmNlPVwib3V0bGluZVwiPlxuICAgICAgICA8bWF0LWxhYmVsICpuZ0lmPVwiZmluZFBsYWNlSG9sZGVyXCI+e3tmaW5kUGxhY2VIb2xkZXJ9fTwvbWF0LWxhYmVsPlxuICAgICAgICA8aW5wdXQgbWF0SW5wdXQgY2xhc3M9XCJzZWFyY2gtaW5wdXQtaXRlbVwiXG4gICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cInNlYXJjaFwiXG4gICAgICAgICAgICAgICBhcmlhLWF1dG9jb21wbGV0ZT1cIm5vbmVcIlxuICAgICAgICAgICAgICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcbiAgICAgICAgLz5cbiAgICAgIDwvbWF0LWZvcm0tZmllbGQ+XG4gICAgPC9tYXQtb3B0aW9uPlxuICAgIDxtYXQtb3B0aW9uICpuZ0Zvcj1cImxldCBlbnVtRGF0YSBvZiBkYXRhIHwgc2VsZWN0RW51bUZpbHRlcjogc2VhcmNoXCIgW3ZhbHVlXT1cImVudW1EYXRhLmtleVwiPnt7IGVudW1EYXRhLnZhbHVlIH19PC9tYXQtb3B0aW9uPlxuICA8L21hdC1zZWxlY3Q+XG48L21hdC1mb3JtLWZpZWxkPlxuIl19
@@ -145,7 +145,7 @@ class SelectInterpolationComponent {
145
145
  provide: NG_VALUE_ACCESSOR,
146
146
  useExisting: forwardRef(() => SelectInterpolationComponent),
147
147
  multi: true
148
- }], viewQueries: [{ propertyName: "trigger", first: true, predicate: ["trigger"], descendants: true }, { propertyName: "input", first: true, predicate: ["input"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div class=\"custom-select-input\" #trigger>\r\n <mat-form-field\r\n dndDropzone [dndAllowExternal]=\"true\" (dndDrop)=\"onDrop($event)\"\r\n cdkOverlayOrigin #origin=\"cdkOverlayOrigin\"\r\n (click)=\"clicked()\" class=\"custom-select-component\"\r\n [ngClass]=\"{'select-open' : opened}\" appearance=\"outline\" autocomplete=\"off\">\r\n <mat-label *ngIf=\"placeHolder\">{{placeHolder}}</mat-label>\r\n <input matInput #input\r\n (blur)=\"onBlur($event)\"\r\n [(ngModel)]=\"selectedItemLabel\"\r\n [ngModelOptions]=\"{standalone: true}\"\r\n [disabled]=\"disabled\"\r\n (keyup)=keyPress()\r\n (click)=\"clicked()\"\r\n autocomplete=\"off\"\r\n />\r\n <span class=\"open-icon\" (click)=\"arrowClick($event)\">\r\n <i class=\"fas\" [ngClass]=\"{'fa-caret-down' : !opened, 'fa-caret-up' : opened}\"></i>\r\n </span>\r\n </mat-form-field>\r\n</div>\r\n<div class=\"custom-select-component\">\r\n\r\n <ng-template cdkConnectedOverlay\r\n [cdkConnectedOverlayPanelClass]=\"'custom-select-overlay-panel'\"\r\n [cdkConnectedOverlayScrollStrategy]=\"scrollStrategy\"\r\n [cdkConnectedOverlayOrigin]=\"origin\"\r\n (backdropClick)=\"close($event)\"\r\n (overlayOutsideClick)=\"close($event)\"\r\n [cdkConnectedOverlayOpen]=\"opened\"\r\n [cdkConnectedOverlayMinWidth]=\"_triggerRect?.width!\">\r\n <ul class=\"ul-ac\">\r\n <li class=\"li-search search-input-item\">\r\n <mat-form-field class=\"apipass-input-text search-input-item\" appearance=\"outline\">\r\n <mat-label *ngIf=\"findPlaceHolder\">{{findPlaceHolder}}</mat-label>\r\n <input matInput class=\"search-input-item\"\r\n [(ngModel)]=\"searchText\"\r\n (blur)=\"onBlur($event)\"\r\n aria-autocomplete=\"none\"\r\n autocomplete=\"off\"\r\n />\r\n </mat-form-field>\r\n </li>\r\n\r\n <li class=\"clickable\" *ngFor=\"let i of items | selectFilter:searchText:'text'\"\r\n (click)=\"selectItem(i)\"\r\n (mousedown)=\"selectItem(i)\">\r\n {{i.text}}\r\n </li>\r\n\r\n </ul>\r\n </ng-template>\r\n</div>\r\n", styles: [".custom-select-component{width:100%}.custom-select-component mat-form-field{width:100%}.custom-select-component ::ng-deep .mat-mdc-form-field-flex{padding:0!important;height:auto}.custom-select-component ::ng-deep .mat-mdc-form-field-infix{padding-top:0!important;padding-bottom:0!important;font-size:14px!important;width:100%;display:flex;align-items:center;justify-content:center}.custom-select-component ::ng-deep mat-form-field{height:20px!important}::ng-deep .custom-select-overlay-panel{margin-top:1px;margin-bottom:-5px}::ng-deep .custom-select-overlay-panel,.custom-select-input,.custom-select-component{cursor:pointer}::ng-deep .custom-select-overlay-panel .ul-ac,.custom-select-input .ul-ac,.custom-select-component .ul-ac{max-height:16rem;overflow:auto;background:#fff;border:1px solid #ccc;box-sizing:border-box;list-style:none;padding:0;width:100%;position:relative;margin-top:0}::ng-deep .custom-select-overlay-panel .ul-ac li,.custom-select-input .ul-ac li,.custom-select-component .ul-ac li{text-align:left;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:10px;font-size:12px}::ng-deep .custom-select-overlay-panel .ul-ac li:hover,.custom-select-input .ul-ac li:hover,.custom-select-component .ul-ac li:hover{background:#bbbcbc}::ng-deep .custom-select-overlay-panel .ul-ac li .mat-form-field-flex,.custom-select-input .ul-ac li .mat-form-field-flex,.custom-select-component .ul-ac li .mat-form-field-flex{height:37px!important}::ng-deep .custom-select-overlay-panel .ul-ac li .mat-form-field-flex input,.custom-select-input .ul-ac li .mat-form-field-flex input,.custom-select-component .ul-ac li .mat-form-field-flex input{height:auto}::ng-deep .custom-select-overlay-panel .selected,.custom-select-input .selected,.custom-select-component .selected{background-color:#898a8a!important}::ng-deep .custom-select-overlay-panel .selected .fa,.custom-select-input .selected .fa,.custom-select-component .selected .fa{color:#fff!important}::ng-deep .custom-select-overlay-panel .remove-icon i,.custom-select-input .remove-icon i,.custom-select-component .remove-icon i{color:red;margin-right:10px}::ng-deep .custom-select-overlay-panel .open-icon,.custom-select-input .open-icon,.custom-select-component .open-icon{cursor:pointer}::ng-deep .custom-select-overlay-panel .open-icon i,.custom-select-input .open-icon i,.custom-select-component .open-icon i{color:#0000008a}::ng-deep .custom-select-overlay-panel .li-search,.custom-select-input .li-search,.custom-select-component .li-search{cursor:default!important;border-bottom:1px solid #CCC!important;height:58px}::ng-deep .custom-select-overlay-panel .li-search:hover,.custom-select-input .li-search:hover,.custom-select-component .li-search:hover{background:#FFF!important}::ng-deep .custom-select-overlay-panel .select-open .mat-form-field-flex,.custom-select-input .select-open .mat-form-field-flex,.custom-select-component .select-open .mat-form-field-flex{border-radius:6px 6px 0 0!important}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i6.DndDropzoneDirective, selector: "[dndDropzone]", inputs: ["dndDropzone", "dndEffectAllowed", "dndAllowExternal", "dndHorizontal", "dndDragoverClass", "dndDropzoneDisabledClass", "dndDisableIf", "dndDisableDropIf"], outputs: ["dndDragover", "dndDrop"] }, { kind: "directive", type: i1.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i1.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "pipe", type: i7.SelectFilterPipe, name: "selectFilter" }] });
148
+ }], viewQueries: [{ propertyName: "trigger", first: true, predicate: ["trigger"], descendants: true }, { propertyName: "input", first: true, predicate: ["input"], descendants: true, read: ElementRef }], ngImport: i0, template: "<div class=\"custom-select-input\" #trigger>\n <mat-form-field\n dndDropzone [dndAllowExternal]=\"true\" (dndDrop)=\"onDrop($event)\"\n cdkOverlayOrigin #origin=\"cdkOverlayOrigin\"\n (click)=\"clicked()\" class=\"custom-select-component\"\n [ngClass]=\"{'select-open' : opened}\" appearance=\"outline\" autocomplete=\"off\">\n <mat-label *ngIf=\"placeHolder\">{{placeHolder}}</mat-label>\n <input matInput #input\n (blur)=\"onBlur($event)\"\n [(ngModel)]=\"selectedItemLabel\"\n [ngModelOptions]=\"{standalone: true}\"\n [disabled]=\"disabled\"\n (keyup)=keyPress()\n (click)=\"clicked()\"\n autocomplete=\"off\"\n />\n <span class=\"open-icon\" (click)=\"arrowClick($event)\">\n <i class=\"fas\" [ngClass]=\"{'fa-caret-down' : !opened, 'fa-caret-up' : opened}\"></i>\n </span>\n </mat-form-field>\n</div>\n<div class=\"custom-select-component\">\n\n <ng-template cdkConnectedOverlay\n [cdkConnectedOverlayPanelClass]=\"'custom-select-overlay-panel'\"\n [cdkConnectedOverlayScrollStrategy]=\"scrollStrategy\"\n [cdkConnectedOverlayOrigin]=\"origin\"\n (backdropClick)=\"close($event)\"\n (overlayOutsideClick)=\"close($event)\"\n [cdkConnectedOverlayOpen]=\"opened\"\n [cdkConnectedOverlayMinWidth]=\"_triggerRect?.width!\">\n <ul class=\"ul-ac\">\n <li class=\"li-search search-input-item\">\n <mat-form-field class=\"apipass-input-text search-input-item\" appearance=\"outline\">\n <mat-label *ngIf=\"findPlaceHolder\">{{findPlaceHolder}}</mat-label>\n <input matInput class=\"search-input-item\"\n [(ngModel)]=\"searchText\"\n (blur)=\"onBlur($event)\"\n aria-autocomplete=\"none\"\n autocomplete=\"off\"\n />\n </mat-form-field>\n </li>\n\n <li class=\"clickable\" *ngFor=\"let i of items | selectFilter:searchText:'text'\"\n (click)=\"selectItem(i)\"\n (mousedown)=\"selectItem(i)\">\n {{i.text}}\n </li>\n\n </ul>\n </ng-template>\n</div>\n", styles: [".custom-select-component{width:100%}.custom-select-component mat-form-field{width:100%}.custom-select-component ::ng-deep .mat-mdc-form-field-flex{padding:0!important;height:auto}.custom-select-component ::ng-deep .mat-mdc-form-field-infix{padding-top:0!important;padding-bottom:0!important;font-size:14px!important;width:100%;display:flex;align-items:center;justify-content:center}.custom-select-component ::ng-deep mat-form-field{height:20px!important}::ng-deep .custom-select-overlay-panel{margin-top:1px;margin-bottom:-5px}::ng-deep .custom-select-overlay-panel,.custom-select-input,.custom-select-component{cursor:pointer}::ng-deep .custom-select-overlay-panel .ul-ac,.custom-select-input .ul-ac,.custom-select-component .ul-ac{max-height:16rem;overflow:auto;background:#fff;border:1px solid #ccc;box-sizing:border-box;list-style:none;padding:0;width:100%;position:relative;margin-top:0}::ng-deep .custom-select-overlay-panel .ul-ac li,.custom-select-input .ul-ac li,.custom-select-component .ul-ac li{text-align:left;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:10px;font-size:12px}::ng-deep .custom-select-overlay-panel .ul-ac li:hover,.custom-select-input .ul-ac li:hover,.custom-select-component .ul-ac li:hover{background:#bbbcbc}::ng-deep .custom-select-overlay-panel .ul-ac li .mat-form-field-flex,.custom-select-input .ul-ac li .mat-form-field-flex,.custom-select-component .ul-ac li .mat-form-field-flex{height:37px!important}::ng-deep .custom-select-overlay-panel .ul-ac li .mat-form-field-flex input,.custom-select-input .ul-ac li .mat-form-field-flex input,.custom-select-component .ul-ac li .mat-form-field-flex input{height:auto}::ng-deep .custom-select-overlay-panel .selected,.custom-select-input .selected,.custom-select-component .selected{background-color:#898a8a!important}::ng-deep .custom-select-overlay-panel .selected .fa,.custom-select-input .selected .fa,.custom-select-component .selected .fa{color:#fff!important}::ng-deep .custom-select-overlay-panel .remove-icon i,.custom-select-input .remove-icon i,.custom-select-component .remove-icon i{color:red;margin-right:10px}::ng-deep .custom-select-overlay-panel .open-icon,.custom-select-input .open-icon,.custom-select-component .open-icon{cursor:pointer}::ng-deep .custom-select-overlay-panel .open-icon i,.custom-select-input .open-icon i,.custom-select-component .open-icon i{color:#0000008a}::ng-deep .custom-select-overlay-panel .li-search,.custom-select-input .li-search,.custom-select-component .li-search{cursor:default!important;border-bottom:1px solid #CCC!important;height:58px}::ng-deep .custom-select-overlay-panel .li-search:hover,.custom-select-input .li-search:hover,.custom-select-component .li-search:hover{background:#FFF!important}::ng-deep .custom-select-overlay-panel .select-open .mat-form-field-flex,.custom-select-input .select-open .mat-form-field-flex,.custom-select-component .select-open .mat-form-field-flex{border-radius:6px 6px 0 0!important}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.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: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i5.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "directive", type: i6.DndDropzoneDirective, selector: "[dndDropzone]", inputs: ["dndDropzone", "dndEffectAllowed", "dndAllowExternal", "dndHorizontal", "dndDragoverClass", "dndDropzoneDisabledClass", "dndDisableIf", "dndDisableDropIf"], outputs: ["dndDragover", "dndDrop"] }, { kind: "directive", type: i1.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i1.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "pipe", type: i7.SelectFilterPipe, name: "selectFilter" }] });
149
149
  }
150
150
  export { SelectInterpolationComponent };
151
151
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImport: i0, type: SelectInterpolationComponent, decorators: [{
@@ -154,7 +154,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
154
154
  provide: NG_VALUE_ACCESSOR,
155
155
  useExisting: forwardRef(() => SelectInterpolationComponent),
156
156
  multi: true
157
- }], template: "<div class=\"custom-select-input\" #trigger>\r\n <mat-form-field\r\n dndDropzone [dndAllowExternal]=\"true\" (dndDrop)=\"onDrop($event)\"\r\n cdkOverlayOrigin #origin=\"cdkOverlayOrigin\"\r\n (click)=\"clicked()\" class=\"custom-select-component\"\r\n [ngClass]=\"{'select-open' : opened}\" appearance=\"outline\" autocomplete=\"off\">\r\n <mat-label *ngIf=\"placeHolder\">{{placeHolder}}</mat-label>\r\n <input matInput #input\r\n (blur)=\"onBlur($event)\"\r\n [(ngModel)]=\"selectedItemLabel\"\r\n [ngModelOptions]=\"{standalone: true}\"\r\n [disabled]=\"disabled\"\r\n (keyup)=keyPress()\r\n (click)=\"clicked()\"\r\n autocomplete=\"off\"\r\n />\r\n <span class=\"open-icon\" (click)=\"arrowClick($event)\">\r\n <i class=\"fas\" [ngClass]=\"{'fa-caret-down' : !opened, 'fa-caret-up' : opened}\"></i>\r\n </span>\r\n </mat-form-field>\r\n</div>\r\n<div class=\"custom-select-component\">\r\n\r\n <ng-template cdkConnectedOverlay\r\n [cdkConnectedOverlayPanelClass]=\"'custom-select-overlay-panel'\"\r\n [cdkConnectedOverlayScrollStrategy]=\"scrollStrategy\"\r\n [cdkConnectedOverlayOrigin]=\"origin\"\r\n (backdropClick)=\"close($event)\"\r\n (overlayOutsideClick)=\"close($event)\"\r\n [cdkConnectedOverlayOpen]=\"opened\"\r\n [cdkConnectedOverlayMinWidth]=\"_triggerRect?.width!\">\r\n <ul class=\"ul-ac\">\r\n <li class=\"li-search search-input-item\">\r\n <mat-form-field class=\"apipass-input-text search-input-item\" appearance=\"outline\">\r\n <mat-label *ngIf=\"findPlaceHolder\">{{findPlaceHolder}}</mat-label>\r\n <input matInput class=\"search-input-item\"\r\n [(ngModel)]=\"searchText\"\r\n (blur)=\"onBlur($event)\"\r\n aria-autocomplete=\"none\"\r\n autocomplete=\"off\"\r\n />\r\n </mat-form-field>\r\n </li>\r\n\r\n <li class=\"clickable\" *ngFor=\"let i of items | selectFilter:searchText:'text'\"\r\n (click)=\"selectItem(i)\"\r\n (mousedown)=\"selectItem(i)\">\r\n {{i.text}}\r\n </li>\r\n\r\n </ul>\r\n </ng-template>\r\n</div>\r\n", styles: [".custom-select-component{width:100%}.custom-select-component mat-form-field{width:100%}.custom-select-component ::ng-deep .mat-mdc-form-field-flex{padding:0!important;height:auto}.custom-select-component ::ng-deep .mat-mdc-form-field-infix{padding-top:0!important;padding-bottom:0!important;font-size:14px!important;width:100%;display:flex;align-items:center;justify-content:center}.custom-select-component ::ng-deep mat-form-field{height:20px!important}::ng-deep .custom-select-overlay-panel{margin-top:1px;margin-bottom:-5px}::ng-deep .custom-select-overlay-panel,.custom-select-input,.custom-select-component{cursor:pointer}::ng-deep .custom-select-overlay-panel .ul-ac,.custom-select-input .ul-ac,.custom-select-component .ul-ac{max-height:16rem;overflow:auto;background:#fff;border:1px solid #ccc;box-sizing:border-box;list-style:none;padding:0;width:100%;position:relative;margin-top:0}::ng-deep .custom-select-overlay-panel .ul-ac li,.custom-select-input .ul-ac li,.custom-select-component .ul-ac li{text-align:left;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:10px;font-size:12px}::ng-deep .custom-select-overlay-panel .ul-ac li:hover,.custom-select-input .ul-ac li:hover,.custom-select-component .ul-ac li:hover{background:#bbbcbc}::ng-deep .custom-select-overlay-panel .ul-ac li .mat-form-field-flex,.custom-select-input .ul-ac li .mat-form-field-flex,.custom-select-component .ul-ac li .mat-form-field-flex{height:37px!important}::ng-deep .custom-select-overlay-panel .ul-ac li .mat-form-field-flex input,.custom-select-input .ul-ac li .mat-form-field-flex input,.custom-select-component .ul-ac li .mat-form-field-flex input{height:auto}::ng-deep .custom-select-overlay-panel .selected,.custom-select-input .selected,.custom-select-component .selected{background-color:#898a8a!important}::ng-deep .custom-select-overlay-panel .selected .fa,.custom-select-input .selected .fa,.custom-select-component .selected .fa{color:#fff!important}::ng-deep .custom-select-overlay-panel .remove-icon i,.custom-select-input .remove-icon i,.custom-select-component .remove-icon i{color:red;margin-right:10px}::ng-deep .custom-select-overlay-panel .open-icon,.custom-select-input .open-icon,.custom-select-component .open-icon{cursor:pointer}::ng-deep .custom-select-overlay-panel .open-icon i,.custom-select-input .open-icon i,.custom-select-component .open-icon i{color:#0000008a}::ng-deep .custom-select-overlay-panel .li-search,.custom-select-input .li-search,.custom-select-component .li-search{cursor:default!important;border-bottom:1px solid #CCC!important;height:58px}::ng-deep .custom-select-overlay-panel .li-search:hover,.custom-select-input .li-search:hover,.custom-select-component .li-search:hover{background:#FFF!important}::ng-deep .custom-select-overlay-panel .select-open .mat-form-field-flex,.custom-select-input .select-open .mat-form-field-flex,.custom-select-component .select-open .mat-form-field-flex{border-radius:6px 6px 0 0!important}\n"] }]
157
+ }], template: "<div class=\"custom-select-input\" #trigger>\n <mat-form-field\n dndDropzone [dndAllowExternal]=\"true\" (dndDrop)=\"onDrop($event)\"\n cdkOverlayOrigin #origin=\"cdkOverlayOrigin\"\n (click)=\"clicked()\" class=\"custom-select-component\"\n [ngClass]=\"{'select-open' : opened}\" appearance=\"outline\" autocomplete=\"off\">\n <mat-label *ngIf=\"placeHolder\">{{placeHolder}}</mat-label>\n <input matInput #input\n (blur)=\"onBlur($event)\"\n [(ngModel)]=\"selectedItemLabel\"\n [ngModelOptions]=\"{standalone: true}\"\n [disabled]=\"disabled\"\n (keyup)=keyPress()\n (click)=\"clicked()\"\n autocomplete=\"off\"\n />\n <span class=\"open-icon\" (click)=\"arrowClick($event)\">\n <i class=\"fas\" [ngClass]=\"{'fa-caret-down' : !opened, 'fa-caret-up' : opened}\"></i>\n </span>\n </mat-form-field>\n</div>\n<div class=\"custom-select-component\">\n\n <ng-template cdkConnectedOverlay\n [cdkConnectedOverlayPanelClass]=\"'custom-select-overlay-panel'\"\n [cdkConnectedOverlayScrollStrategy]=\"scrollStrategy\"\n [cdkConnectedOverlayOrigin]=\"origin\"\n (backdropClick)=\"close($event)\"\n (overlayOutsideClick)=\"close($event)\"\n [cdkConnectedOverlayOpen]=\"opened\"\n [cdkConnectedOverlayMinWidth]=\"_triggerRect?.width!\">\n <ul class=\"ul-ac\">\n <li class=\"li-search search-input-item\">\n <mat-form-field class=\"apipass-input-text search-input-item\" appearance=\"outline\">\n <mat-label *ngIf=\"findPlaceHolder\">{{findPlaceHolder}}</mat-label>\n <input matInput class=\"search-input-item\"\n [(ngModel)]=\"searchText\"\n (blur)=\"onBlur($event)\"\n aria-autocomplete=\"none\"\n autocomplete=\"off\"\n />\n </mat-form-field>\n </li>\n\n <li class=\"clickable\" *ngFor=\"let i of items | selectFilter:searchText:'text'\"\n (click)=\"selectItem(i)\"\n (mousedown)=\"selectItem(i)\">\n {{i.text}}\n </li>\n\n </ul>\n </ng-template>\n</div>\n", styles: [".custom-select-component{width:100%}.custom-select-component mat-form-field{width:100%}.custom-select-component ::ng-deep .mat-mdc-form-field-flex{padding:0!important;height:auto}.custom-select-component ::ng-deep .mat-mdc-form-field-infix{padding-top:0!important;padding-bottom:0!important;font-size:14px!important;width:100%;display:flex;align-items:center;justify-content:center}.custom-select-component ::ng-deep mat-form-field{height:20px!important}::ng-deep .custom-select-overlay-panel{margin-top:1px;margin-bottom:-5px}::ng-deep .custom-select-overlay-panel,.custom-select-input,.custom-select-component{cursor:pointer}::ng-deep .custom-select-overlay-panel .ul-ac,.custom-select-input .ul-ac,.custom-select-component .ul-ac{max-height:16rem;overflow:auto;background:#fff;border:1px solid #ccc;box-sizing:border-box;list-style:none;padding:0;width:100%;position:relative;margin-top:0}::ng-deep .custom-select-overlay-panel .ul-ac li,.custom-select-input .ul-ac li,.custom-select-component .ul-ac li{text-align:left;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:10px;font-size:12px}::ng-deep .custom-select-overlay-panel .ul-ac li:hover,.custom-select-input .ul-ac li:hover,.custom-select-component .ul-ac li:hover{background:#bbbcbc}::ng-deep .custom-select-overlay-panel .ul-ac li .mat-form-field-flex,.custom-select-input .ul-ac li .mat-form-field-flex,.custom-select-component .ul-ac li .mat-form-field-flex{height:37px!important}::ng-deep .custom-select-overlay-panel .ul-ac li .mat-form-field-flex input,.custom-select-input .ul-ac li .mat-form-field-flex input,.custom-select-component .ul-ac li .mat-form-field-flex input{height:auto}::ng-deep .custom-select-overlay-panel .selected,.custom-select-input .selected,.custom-select-component .selected{background-color:#898a8a!important}::ng-deep .custom-select-overlay-panel .selected .fa,.custom-select-input .selected .fa,.custom-select-component .selected .fa{color:#fff!important}::ng-deep .custom-select-overlay-panel .remove-icon i,.custom-select-input .remove-icon i,.custom-select-component .remove-icon i{color:red;margin-right:10px}::ng-deep .custom-select-overlay-panel .open-icon,.custom-select-input .open-icon,.custom-select-component .open-icon{cursor:pointer}::ng-deep .custom-select-overlay-panel .open-icon i,.custom-select-input .open-icon i,.custom-select-component .open-icon i{color:#0000008a}::ng-deep .custom-select-overlay-panel .li-search,.custom-select-input .li-search,.custom-select-component .li-search{cursor:default!important;border-bottom:1px solid #CCC!important;height:58px}::ng-deep .custom-select-overlay-panel .li-search:hover,.custom-select-input .li-search:hover,.custom-select-component .li-search:hover{background:#FFF!important}::ng-deep .custom-select-overlay-panel .select-open .mat-form-field-flex,.custom-select-input .select-open .mat-form-field-flex,.custom-select-component .select-open .mat-form-field-flex{border-radius:6px 6px 0 0!important}\n"] }]
158
158
  }], ctorParameters: function () { return [{ type: i1.ScrollStrategyOptions }]; }, propDecorators: { disabled: [{
159
159
  type: Input
160
160
  }], items: [{
@@ -178,4 +178,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.2", ngImpor
178
178
  type: HostListener,
179
179
  args: ['blur', ['$event.target']]
180
180
  }] } });
181
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWludGVycG9sYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5wdXRzL3NyYy9zZWxlY3QtaW50ZXJwb2xhdGlvbi9zZWxlY3QtaW50ZXJwb2xhdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL3NlbGVjdC1pbnRlcnBvbGF0aW9uL3NlbGVjdC1pbnRlcnBvbGF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixVQUFVLEVBQ1YsV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDeEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUNBQXFDLENBQUE7QUFDdEUsT0FBTyxFQUFrQixxQkFBcUIsRUFBRSxNQUFNLHNCQUFzQixDQUFBOzs7Ozs7Ozs7QUFFNUUsTUFVYSw0QkFBNEI7SUF5QlQ7SUF2QnRCLFVBQVUsQ0FBSztJQUNmLE1BQU0sR0FBRyxLQUFLLENBQUE7SUFFZixjQUFjLENBQWdCO0lBQzlCLFlBQVksQ0FBd0I7SUFDcEMsWUFBWSxDQUE4QjtJQUMxQyxpQkFBaUIsR0FBRyxFQUFFLENBQUE7SUFDdEIsVUFBVSxHQUFHLEVBQUUsQ0FBQTtJQUNmLE1BQU0sR0FBRyxLQUFLLENBQUE7SUFFTCxRQUFRLEdBQUcsS0FBSyxDQUFBO0lBQ2hCLEtBQUssR0FBdUIsRUFBRSxDQUFBO0lBQzlCLFdBQVcsR0FBRyxRQUFRLENBQUE7SUFDdEIsZUFBZSxHQUFHLFdBQVcsQ0FBQTtJQUU1QixRQUFRLEdBQUcsSUFBSSxZQUFZLEVBQW9CLENBQUE7SUFHekQsT0FBTyxD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QUNaLENBQUM7NEdBY2MsUUFBUTtzQkFBdkIsS0FBSztnQkFDVSxLQUFLO3NCQUFwQixLQUFLO2dCQUNVLFdBQVc7c0JBQTFCLEtBQUs7Z0JBQ1UsZUFBZTtzQkFBOUIsS0FBSztnQkFFVyxRQUFRO3NCQUF4QixNQUFNO2dCQUdBLE9BQU87c0JBRGIsU0FBUzt1QkFBQyxTQUFTO2dCQUliLEtBQUs7c0JBRFgsU0FBUzt1QkFBQyxPQUFPLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFO2dCQU9WLFFBQVE7c0JBQXJDLFdBQVc7dUJBQUMsZUFBZTtnQkFDYSxNQUFNO3NCQUE5QyxZQUFZO3VCQUFDLE1BQU0sRUFBRSxDQUFDLGVBQWUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgdHlwZSBBZnRlclZpZXdJbml0LFxyXG4gIENvbXBvbmVudCxcclxuICBFbGVtZW50UmVmLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBmb3J3YXJkUmVmLFxyXG4gIEhvc3RCaW5kaW5nLFxyXG4gIEhvc3RMaXN0ZW5lcixcclxuICBJbnB1dCxcclxuICBPdXRwdXQsXHJcbiAgVmlld0NoaWxkXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcclxuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXHJcbmltcG9ydCB7IEN1c3RvbVNlbGVjdEl0ZW0gfSBmcm9tICcuLi9jdXN0b20tc2VsZWN0L2N1c3RvbS1zZWxlY3QtaXRlbSdcclxuaW1wb3J0IHsgU2Nyb2xsU3RyYXRlZ3ksIFNjcm9sbFN0cmF0ZWd5T3B0aW9ucyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5J1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzZWxlY3QtaW50ZXJwb2xhdGlvbicsXHJcbiAgdGVtcGxhdGVVcmw6ICdzZWxlY3QtaW50ZXJwb2xhdGlvbi5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJ3NlbGVjdC1pbnRlcnBvbGF0aW9uLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbe1xyXG4gICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBTZWxlY3RJbnRlcnBvbGF0aW9uQ29tcG9uZW50KSxcclxuICAgIG11bHRpOiB0cnVlXHJcbiAgfV1cclxufSlcclxuZXhwb3J0IGNsYXNzIFNlbGVjdEludGVycG9sYXRpb25Db21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgQWZ0ZXJWaWV3SW5pdCB7XHJcblxyXG4gIHByaXZhdGUgaW5uZXJWYWx1ZTogYW55XHJcbiAgcHJpdmF0ZSBlZGl0ZWQgPSBmYWxzZVxyXG5cclxuICBwdWJsaWMgc2Nyb2xsU3RyYXRlZ3k6IFNjcm9sbFN0cmF0ZWd5XHJcbiAgcHVibGljIF90cmlnZ2VyUmVjdDogQ2xpZW50UmVjdCB8IHVuZGVmaW5lZFxyXG4gIHB1YmxpYyBzZWxlY3RlZEl0ZW06IEN1c3RvbVNlbGVjdEl0ZW0gfCB1bmRlZmluZWRcclxuICBwdWJsaWMgc2VsZWN0ZWRJdGVtTGFiZWwgPSAnJ1xyXG4gIHB1YmxpYyBzZWFyY2hUZXh0ID0gJydcclxuICBwdWJsaWMgb3BlbmVkID0gZmFsc2VcclxuXHJcbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVkID0gZmFsc2VcclxuICBASW5wdXQoKSBwdWJsaWMgaXRlbXM6IEN1c3RvbVNlbGVjdEl0ZW1bXSA9IFtdXHJcbiAgQElucHV0KCkgcHVibGljIHBsYWNlSG9sZGVyID0gJ1NlbGVjdCdcclxuICBASW5wdXQoKSBwdWJsaWMgZmluZFBsYWNlSG9sZGVyID0gJ0ZpbmQgaXRlbSdcclxuXHJcbiAgQE91dHB1dCgpIHB1YmxpYyBvblNlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8Q3VzdG9tU2VsZWN0SXRlbT4oKVxyXG5cclxuICBAVmlld0NoaWxkKCd0cmlnZ2VyJylcclxuICBwdWJsaWMgdHJpZ2dlcjogRWxlbWVudFJlZiB8IHVuZGVmaW5lZFxyXG5cclxuICBAVmlld0NoaWxkKCdpbnB1dCcsIHsgcmVhZDogRWxlbWVudFJlZiB9KVxyXG4gIHB1YmxpYyBpbnB1dDogRWxlbWVudFJlZiB8IHVuZGVmaW5lZFxyXG5cclxuICBjb25zdHJ1Y3RvciAocHJpdmF0ZSByZWFkb25seSBzc286IFNjcm9sbFN0cmF0ZWd5T3B0aW9ucykge1xyXG4gICAgdGhpcy5zY3JvbGxTdHJhdGVneSA9IHRoaXMuc3NvLmJsb2NrKClcclxuICB9XHJcblxyXG4gIEBIb3N0QmluZGluZygnYXR0ci50YWJpbmRleCcpIHRhYmluZGV4ID0gJzAnXHJcbiAgQEhvc3RMaXN0ZW5lcignYmx1cicsIFsnJGV2ZW50LnRhcmdldCddKSBvbkJsdXIgKHRhcmdldDogYW55KTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5zZWxlY3RlZEl0ZW1MYWJlbCkge1xyXG4gICAgICBpZiAodGhpcy5lZGl0ZWQpIHtcclxuICAgICAgICB0aGlzLndyaXRlVmFsdWUodGhpcy5zZWxlY3RlZEl0ZW1MYWJlbClcclxuICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbSA9IG5ldyBDdXN0b21TZWxlY3RJdGVtKHRoaXMuc2VsZWN0ZWRJdGVtTGFiZWwsIHRoaXMuc2VsZWN0ZWRJdGVtTGFiZWwpXHJcbiAgICAgICAgdGhpcy5vblNlbGVjdC5uZXh0KHRoaXMuc2VsZWN0ZWRJdGVtKVxyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLndyaXRlVmFsdWUodW5kZWZpbmVkKVxyXG4gICAgICB0aGlzLm9uU2VsZWN0Lm5leHQodW5kZWZpbmVkKVxyXG4gICAgfVxyXG4gICAgaWYgKHRhcmdldD8ucmVsYXRlZFRhcmdldD8uY2xhc3NMaXN0LmNvbnRhaW5zKCdzZWFyY2gtaW5wdXQtaXRlbScpKSB7XHJcbiAgICAgIHJldHVyblxyXG4gICAgfVxyXG4gICAgdGhpcy5zZXRUcmlnZ2VyUmVjdCgpXHJcbiAgfVxyXG5cclxuICBuZ0FmdGVyVmlld0luaXQgKCk6IHZvaWQge1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuc2V0SW5pdGlhbFN0YXRlKClcclxuICAgICAgdGhpcy5zZXRUcmlnZ2VyUmVjdCgpXHJcbiAgICB9LCAzMDApXHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc2V0SW5pdGlhbFN0YXRlICgpOiB2b2lkIHtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xyXG4gICAgICBpZiAodGhpcy52YWx1ZSAmJiB0aGlzLml0ZW1zKSB7XHJcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRJdGVtID0gdGhpcy5pdGVtcy5maW5kKGl0ZW0gPT4gaXRlbS5pZCA9PT0gdGhpcy52YWx1ZSlcclxuICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbUxhYmVsID0gc2VsZWN0ZWRJdGVtPy50ZXh0IHx8IHRoaXMudmFsdWVcclxuICAgICAgfVxyXG4gICAgfSlcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc2V0VHJpZ2dlclJlY3QgKCk6IHZvaWQge1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuX3RyaWdnZXJSZWN0ID0gdGhpcy50cmlnZ2VyPy5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpXHJcbiAgICB9KVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHNlbGVjdEl0ZW0gKGl0ZW06IEN1c3RvbVNlbGVjdEl0ZW0pOiB2b2lkIHtcclxuICAgIHRoaXMub3BlbmVkID0gZmFsc2VcclxuICAgIHRoaXMuZWRpdGVkID0gZmFsc2VcclxuICAgIHRoaXMuc2VsZWN0ZWRJdGVtID0gaXRlbVxyXG4gICAgdGhpcy52YWx1ZSA9IGl0ZW0uaWRcclxuICAgIHRoaXMuc2VsZWN0ZWRJdGVtTGFiZWwgPSBpdGVtLnRleHRcclxuICAgIHRoaXMuc2VhcmNoVGV4dCA9ICcnXHJcbiAgICB0aGlzLm9uU2VsZWN0Lm5leHQoaXRlbSlcclxuICB9XHJcblxyXG4gIHB1YmxpYyBrZXlQcmVzcyAoKTogYW55IHtcclxuICAgIHRoaXMuc2V0VHJpZ2dlclJlY3QoKVxyXG4gICAgdGhpcy5vcGVuZWQgPSBmYWxzZVxyXG4gICAgdGhpcy5lZGl0ZWQgPSB0cnVlXHJcbiAgICB0aGlzLnNlYXJjaFRleHQgPSAnJ1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsaWNrZWQgKCRldmVudD86IEV2ZW50KTogdm9pZCB7XHJcbiAgICB0aGlzLnNldFRyaWdnZXJSZWN0KClcclxuICAgIHRoaXMub3BlbigkZXZlbnQpO1xyXG4gICAgdGhpcy5zZWFyY2hUZXh0ID0gJydcclxuICB9XHJcblxyXG4gIHB1YmxpYyBvcGVuICgkZXZlbnQ/OiBFdmVudCk6IHZvaWQge1xyXG4gICAgdGhpcy5vcGVuZWQgPSB0cnVlO1xyXG4gICAgJGV2ZW50Py5zdG9wUHJvcGFnYXRpb24oKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjbG9zZSAoJGV2ZW50PzogRXZlbnQpOiB2b2lkIHtcclxuICAgIHRoaXMub3BlbmVkID0gZmFsc2U7XHJcbiAgICAkZXZlbnQ/LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBvblRvdWNoZWRDYWxsYmFjazogKCkgPT4gdm9pZCA9ICgpID0+IHtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25DaGFuZ2VDYWxsYmFjazogKF86IGFueSkgPT4gdm9pZCA9ICgpID0+IHtcclxuICB9XHJcblxyXG4gIGdldCB2YWx1ZSAoKTogYW55IHtcclxuICAgIHJldHVybiB0aGlzLmlubmVyVmFsdWVcclxuICB9XHJcblxyXG4gIHNldCB2YWx1ZSAodmFsdWU6IGFueSkge1xyXG4gICAgdGhpcy5pbm5lclZhbHVlID0gdmFsdWVcclxuICAgIHRoaXMub25DaGFuZ2VDYWxsYmFjayh2YWx1ZSlcclxuICB9XHJcblxyXG4gIHdyaXRlVmFsdWUgKHZhbHVlOiBhbnkpOiB2b2lkIHtcclxuICAgIGlmICh2YWx1ZSAhPT0gdGhpcy52YWx1ZSkge1xyXG4gICAgICB0aGlzLnZhbHVlID0gdmFsdWVcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25DaGFuZ2UgKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25DaGFuZ2VDYWxsYmFjayA9IGZuXHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uVG91Y2hlZCAoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5vblRvdWNoZWRDYWxsYmFjayA9IGZuXHJcbiAgfVxyXG5cclxuICBzZXREaXNhYmxlZFN0YXRlIChpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZFxyXG4gIH1cclxuXHJcbiAgcHVibGljIGFycm93Q2xpY2sgKGV2ZW50OiBhbnkpOiB2b2lkIHtcclxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXHJcbiAgICB0aGlzLnNldFRyaWdnZXJSZWN0KClcclxuICAgIGlmICghdGhpcy5vcGVuZWQpIHtcclxuICAgICAgdGhpcy5vcGVuKGV2ZW50KTtcclxuICAgICAgdGhpcy5zZWFyY2hUZXh0ID0gJydcclxuICAgICAgdGhpcy5pbnB1dD8ubmF0aXZlRWxlbWVudC5mb2N1cygpXHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgb25Ecm9wICgkZXZlbnQ6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5zZWFyY2hUZXh0ID0gJydcclxuICAgIGlmICghdGhpcy52YWx1ZSkge1xyXG4gICAgICB0aGlzLnZhbHVlID0gJydcclxuICAgIH1cclxuICAgIHRoaXMuZWRpdGVkID0gdHJ1ZVxyXG4gICAgdGhpcy52YWx1ZSArPSBge3skeyRldmVudC5kYXRhfX19YFxyXG4gICAgdGhpcy5zZWxlY3RlZEl0ZW1MYWJlbCA9IHRoaXMudmFsdWVcclxuICAgIHRoaXMub25CbHVyKHVuZGVmaW5lZClcclxuICB9XHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJjdXN0b20tc2VsZWN0LWlucHV0XCIgI3RyaWdnZXI+XHJcbiAgPG1hdC1mb3JtLWZpZWxkXHJcbiAgICAgIGRuZERyb3B6b25lIFtkbmRBbGxvd0V4dGVybmFsXT1cInRydWVcIiAoZG5kRHJvcCk9XCJvbkRyb3AoJGV2ZW50KVwiXHJcbiAgICAgIGNka092ZXJsYXlPcmlnaW4gI29yaWdpbj1cImNka092ZXJsYXlPcmlnaW5cIlxyXG4gICAgICAoY2xpY2spPVwiY2xpY2tlZCgpXCIgY2xhc3M9XCJjdXN0b20tc2VsZWN0LWNvbXBvbmVudFwiXHJcbiAgICAgIFtuZ0NsYXNzXT1cInsnc2VsZWN0LW9wZW4nIDogb3BlbmVkfVwiIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCIgYXV0b2NvbXBsZXRlPVwib2ZmXCI+XHJcbiAgICA8bWF0LWxhYmVsICpuZ0lmPVwicGxhY2VIb2xkZXJcIj57e3BsYWNlSG9sZGVyfX08L21hdC1sYWJlbD5cclxuICAgIDxpbnB1dCBtYXRJbnB1dCAjaW5wdXRcclxuICAgICAgICAgICAoYmx1cik9XCJvbkJsdXIoJGV2ZW50KVwiXHJcbiAgICAgICAgICAgWyhuZ01vZGVsKV09XCJzZWxlY3RlZEl0ZW1MYWJlbFwiXHJcbiAgICAgICAgICAgW25nTW9kZWxPcHRpb25zXT1cIntzdGFuZGFsb25lOiB0cnVlfVwiXHJcbiAgICAgICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcclxuICAgICAgICAgICAoa2V5dXApPWtleVByZXNzKClcclxuICAgICAgICAgICAoY2xpY2spPVwiY2xpY2tlZCgpXCJcclxuICAgICAgICAgICBhdXRvY29tcGxldGU9XCJvZmZcIlxyXG4gICAgLz5cclxuICAgIDxzcGFuIGNsYXNzPVwib3Blbi1pY29uXCIgKGNsaWNrKT1cImFycm93Q2xpY2soJGV2ZW50KVwiPlxyXG4gICAgICAgIDxpIGNsYXNzPVwiZmFzXCIgW25nQ2xhc3NdPVwieydmYS1jYXJldC1kb3duJyA6ICFvcGVuZWQsICdmYS1jYXJldC11cCcgOiBvcGVuZWR9XCI+PC9pPlxyXG4gICAgPC9zcGFuPlxyXG4gIDwvbWF0LWZvcm0tZmllbGQ+XHJcbjwvZGl2PlxyXG48ZGl2IGNsYXNzPVwiY3VzdG9tLXNlbGVjdC1jb21wb25lbnRcIj5cclxuXHJcbiAgPG5nLXRlbXBsYXRlIGNka0Nvbm5lY3RlZE92ZXJsYXlcclxuICAgICAgICAgICAgICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlQYW5lbENsYXNzXT1cIidjdXN0b20tc2VsZWN0LW92ZXJsYXktcGFuZWwnXCJcclxuICAgICAgICAgICAgICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlTY3JvbGxTdHJhdGVneV09XCJzY3JvbGxTdHJhdGVneVwiXHJcbiAgICAgICAgICAgICAgIFtjZGtDb25uZWN0ZWRPdmVybGF5T3JpZ2luXT1cIm9yaWdpblwiXHJcbiAgICAgICAgICAgICAgIChiYWNrZHJvcENsaWNrKT1cImNsb3NlKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAob3ZlcmxheU91dHNpZGVDbGljayk9XCJjbG9zZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlPcGVuXT1cIm9wZW5lZFwiXHJcbiAgICAgICAgICAgICAgIFtjZGtDb25uZWN0ZWRPdmVybGF5TWluV2lkdGhdPVwiX3RyaWdnZXJSZWN0Py53aWR0aCFcIj5cclxuICAgIDx1bCBjbGFzcz1cInVsLWFjXCI+XHJcbiAgICAgIDxsaSBjbGFzcz1cImxpLXNlYXJjaCBzZWFyY2gtaW5wdXQtaXRlbVwiPlxyXG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImFwaXBhc3MtaW5wdXQtdGV4dCBzZWFyY2gtaW5wdXQtaXRlbVwiIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCI+XHJcbiAgICAgICAgICA8bWF0LWxhYmVsICpuZ0lmPVwiZmluZFBsYWNlSG9sZGVyXCI+e3tmaW5kUGxhY2VIb2xkZXJ9fTwvbWF0LWxhYmVsPlxyXG4gICAgICAgICAgPGlucHV0IG1hdElucHV0IGNsYXNzPVwic2VhcmNoLWlucHV0LWl0ZW1cIlxyXG4gICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwic2VhcmNoVGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgKGJsdXIpPVwib25CbHVyKCRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgIGFyaWEtYXV0b2NvbXBsZXRlPVwibm9uZVwiXHJcbiAgICAgICAgICAgICAgICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcclxuICAgICAgICAgIC8+XHJcbiAgICAgICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICAgICAgPC9saT5cclxuXHJcbiAgICAgIDxsaSBjbGFzcz1cImNsaWNrYWJsZVwiICpuZ0Zvcj1cImxldCBpIG9mIGl0ZW1zIHwgc2VsZWN0RmlsdGVyOnNlYXJjaFRleHQ6J3RleHQnXCJcclxuICAgICAgICAgIChjbGljayk9XCJzZWxlY3RJdGVtKGkpXCJcclxuICAgICAgICAgIChtb3VzZWRvd24pPVwic2VsZWN0SXRlbShpKVwiPlxyXG4gICAgICAgIHt7aS50ZXh0fX1cclxuICAgICAgPC9saT5cclxuXHJcbiAgICA8L3VsPlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbjwvZGl2PlxyXG4iXX0=
181
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWludGVycG9sYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvaW5wdXRzL3NyYy9zZWxlY3QtaW50ZXJwb2xhdGlvbi9zZWxlY3QtaW50ZXJwb2xhdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9pbnB1dHMvc3JjL3NlbGVjdC1pbnRlcnBvbGF0aW9uL3NlbGVjdC1pbnRlcnBvbGF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixVQUFVLEVBQ1YsV0FBVyxFQUNYLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFDVixNQUFNLGVBQWUsQ0FBQTtBQUN0QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDeEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUNBQXFDLENBQUE7QUFDdEUsT0FBTyxFQUFrQixxQkFBcUIsRUFBRSxNQUFNLHNCQUFzQixDQUFBOzs7Ozs7Ozs7QUFFNUUsTUFVYSw0QkFBNEI7SUF5QlQ7SUF2QnRCLFVBQVUsQ0FBSztJQUNmLE1BQU0sR0FBRyxLQUFLLENBQUE7SUFFZixjQUFjLENBQWdCO0lBQzlCLFlBQVksQ0FBd0I7SUFDcEMsWUFBWSxDQUE4QjtJQUMxQyxpQkFBaUIsR0FBRyxFQUFFLENBQUE7SUFDdEIsVUFBVSxHQUFHLEVBQUUsQ0FBQTtJQUNmLE1BQU0sR0FBRyxLQUFLLENBQUE7SUFFTCxRQUFRLEdBQUcsS0FBSyxDQUFBO0lBQ2hCLEtBQUssR0FBdUIsRUFBRSxDQUFBO0lBQzlCLFdBQVcsR0FBRyxRQUFRLENBQUE7SUFDdEIsZUFBZSxHQUFHLFdBQVcsQ0FBQTtJQUU1QixRQUFRLEdBQUcsSUFBSSxZQUFZLEVBQW9CLENBQUE7SUFHekQsT0FBTyxD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QUNaLENBQUM7NEdBY2MsUUFBUTtzQkFBdkIsS0FBSztnQkFDVSxLQUFLO3NCQUFwQixLQUFLO2dCQUNVLFdBQVc7c0JBQTFCLEtBQUs7Z0JBQ1UsZUFBZTtzQkFBOUIsS0FBSztnQkFFVyxRQUFRO3NCQUF4QixNQUFNO2dCQUdBLE9BQU87c0JBRGIsU0FBUzt1QkFBQyxTQUFTO2dCQUliLEtBQUs7c0JBRFgsU0FBUzt1QkFBQyxPQUFPLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFO2dCQU9WLFFBQVE7c0JBQXJDLFdBQVc7dUJBQUMsZUFBZTtnQkFDYSxNQUFNO3NCQUE5QyxZQUFZO3VCQUFDLE1BQU0sRUFBRSxDQUFDLGVBQWUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIHR5cGUgQWZ0ZXJWaWV3SW5pdCxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIGZvcndhcmRSZWYsXG4gIEhvc3RCaW5kaW5nLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIFZpZXdDaGlsZFxufSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnXG5pbXBvcnQgeyBDdXN0b21TZWxlY3RJdGVtIH0gZnJvbSAnLi4vY3VzdG9tLXNlbGVjdC9jdXN0b20tc2VsZWN0LWl0ZW0nXG5pbXBvcnQgeyBTY3JvbGxTdHJhdGVneSwgU2Nyb2xsU3RyYXRlZ3lPcHRpb25zIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NlbGVjdC1pbnRlcnBvbGF0aW9uJyxcbiAgdGVtcGxhdGVVcmw6ICdzZWxlY3QtaW50ZXJwb2xhdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWydzZWxlY3QtaW50ZXJwb2xhdGlvbi5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFt7XG4gICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2VsZWN0SW50ZXJwb2xhdGlvbkNvbXBvbmVudCksXG4gICAgbXVsdGk6IHRydWVcbiAgfV1cbn0pXG5leHBvcnQgY2xhc3MgU2VsZWN0SW50ZXJwb2xhdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBBZnRlclZpZXdJbml0IHtcblxuICBwcml2YXRlIGlubmVyVmFsdWU6IGFueVxuICBwcml2YXRlIGVkaXRlZCA9IGZhbHNlXG5cbiAgcHVibGljIHNjcm9sbFN0cmF0ZWd5OiBTY3JvbGxTdHJhdGVneVxuICBwdWJsaWMgX3RyaWdnZXJSZWN0OiBDbGllbnRSZWN0IHwgdW5kZWZpbmVkXG4gIHB1YmxpYyBzZWxlY3RlZEl0ZW06IEN1c3RvbVNlbGVjdEl0ZW0gfCB1bmRlZmluZWRcbiAgcHVibGljIHNlbGVjdGVkSXRlbUxhYmVsID0gJydcbiAgcHVibGljIHNlYXJjaFRleHQgPSAnJ1xuICBwdWJsaWMgb3BlbmVkID0gZmFsc2VcblxuICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQgPSBmYWxzZVxuICBASW5wdXQoKSBwdWJsaWMgaXRlbXM6IEN1c3RvbVNlbGVjdEl0ZW1bXSA9IFtdXG4gIEBJbnB1dCgpIHB1YmxpYyBwbGFjZUhvbGRlciA9ICdTZWxlY3QnXG4gIEBJbnB1dCgpIHB1YmxpYyBmaW5kUGxhY2VIb2xkZXIgPSAnRmluZCBpdGVtJ1xuXG4gIEBPdXRwdXQoKSBwdWJsaWMgb25TZWxlY3QgPSBuZXcgRXZlbnRFbWl0dGVyPEN1c3RvbVNlbGVjdEl0ZW0+KClcblxuICBAVmlld0NoaWxkKCd0cmlnZ2VyJylcbiAgcHVibGljIHRyaWdnZXI6IEVsZW1lbnRSZWYgfCB1bmRlZmluZWRcblxuICBAVmlld0NoaWxkKCdpbnB1dCcsIHsgcmVhZDogRWxlbWVudFJlZiB9KVxuICBwdWJsaWMgaW5wdXQ6IEVsZW1lbnRSZWYgfCB1bmRlZmluZWRcblxuICBjb25zdHJ1Y3RvciAocHJpdmF0ZSByZWFkb25seSBzc286IFNjcm9sbFN0cmF0ZWd5T3B0aW9ucykge1xuICAgIHRoaXMuc2Nyb2xsU3RyYXRlZ3kgPSB0aGlzLnNzby5ibG9jaygpXG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2F0dHIudGFiaW5kZXgnKSB0YWJpbmRleCA9ICcwJ1xuICBASG9zdExpc3RlbmVyKCdibHVyJywgWyckZXZlbnQudGFyZ2V0J10pIG9uQmx1ciAodGFyZ2V0OiBhbnkpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5zZWxlY3RlZEl0ZW1MYWJlbCkge1xuICAgICAgaWYgKHRoaXMuZWRpdGVkKSB7XG4gICAgICAgIHRoaXMud3JpdGVWYWx1ZSh0aGlzLnNlbGVjdGVkSXRlbUxhYmVsKVxuICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbSA9IG5ldyBDdXN0b21TZWxlY3RJdGVtKHRoaXMuc2VsZWN0ZWRJdGVtTGFiZWwsIHRoaXMuc2VsZWN0ZWRJdGVtTGFiZWwpXG4gICAgICAgIHRoaXMub25TZWxlY3QubmV4dCh0aGlzLnNlbGVjdGVkSXRlbSlcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy53cml0ZVZhbHVlKHVuZGVmaW5lZClcbiAgICAgIHRoaXMub25TZWxlY3QubmV4dCh1bmRlZmluZWQpXG4gICAgfVxuICAgIGlmICh0YXJnZXQ/LnJlbGF0ZWRUYXJnZXQ/LmNsYXNzTGlzdC5jb250YWlucygnc2VhcmNoLWlucHV0LWl0ZW0nKSkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuICAgIHRoaXMuc2V0VHJpZ2dlclJlY3QoKVxuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0ICgpOiB2b2lkIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMuc2V0SW5pdGlhbFN0YXRlKClcbiAgICAgIHRoaXMuc2V0VHJpZ2dlclJlY3QoKVxuICAgIH0sIDMwMClcbiAgfVxuXG4gIHB1YmxpYyBzZXRJbml0aWFsU3RhdGUgKCk6IHZvaWQge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgaWYgKHRoaXMudmFsdWUgJiYgdGhpcy5pdGVtcykge1xuICAgICAgICBjb25zdCBzZWxlY3RlZEl0ZW0gPSB0aGlzLml0ZW1zLmZpbmQoaXRlbSA9PiBpdGVtLmlkID09PSB0aGlzLnZhbHVlKVxuICAgICAgICB0aGlzLnNlbGVjdGVkSXRlbUxhYmVsID0gc2VsZWN0ZWRJdGVtPy50ZXh0IHx8IHRoaXMudmFsdWVcbiAgICAgIH1cbiAgICB9KVxuICB9XG5cbiAgcHJpdmF0ZSBzZXRUcmlnZ2VyUmVjdCAoKTogdm9pZCB7XG4gICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICB0aGlzLl90cmlnZ2VyUmVjdCA9IHRoaXMudHJpZ2dlcj8ubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKVxuICAgIH0pXG4gIH1cblxuICBwdWJsaWMgc2VsZWN0SXRlbSAoaXRlbTogQ3VzdG9tU2VsZWN0SXRlbSk6IHZvaWQge1xuICAgIHRoaXMub3BlbmVkID0gZmFsc2VcbiAgICB0aGlzLmVkaXRlZCA9IGZhbHNlXG4gICAgdGhpcy5zZWxlY3RlZEl0ZW0gPSBpdGVtXG4gICAgdGhpcy52YWx1ZSA9IGl0ZW0uaWRcbiAgICB0aGlzLnNlbGVjdGVkSXRlbUxhYmVsID0gaXRlbS50ZXh0XG4gICAgdGhpcy5zZWFyY2hUZXh0ID0gJydcbiAgICB0aGlzLm9uU2VsZWN0Lm5leHQoaXRlbSlcbiAgfVxuXG4gIHB1YmxpYyBrZXlQcmVzcyAoKTogYW55IHtcbiAgICB0aGlzLnNldFRyaWdnZXJSZWN0KClcbiAgICB0aGlzLm9wZW5lZCA9IGZhbHNlXG4gICAgdGhpcy5lZGl0ZWQgPSB0cnVlXG4gICAgdGhpcy5zZWFyY2hUZXh0ID0gJydcbiAgfVxuXG4gIHB1YmxpYyBjbGlja2VkICgkZXZlbnQ/OiBFdmVudCk6IHZvaWQge1xuICAgIHRoaXMuc2V0VHJpZ2dlclJlY3QoKVxuICAgIHRoaXMub3BlbigkZXZlbnQpO1xuICAgIHRoaXMuc2VhcmNoVGV4dCA9ICcnXG4gIH1cblxuICBwdWJsaWMgb3BlbiAoJGV2ZW50PzogRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLm9wZW5lZCA9IHRydWU7XG4gICAgJGV2ZW50Py5zdG9wUHJvcGFnYXRpb24oKTtcbiAgfVxuXG4gIHB1YmxpYyBjbG9zZSAoJGV2ZW50PzogRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLm9wZW5lZCA9IGZhbHNlO1xuICAgICRldmVudD8uc3RvcFByb3BhZ2F0aW9uKCk7XG4gIH1cblxuICBwcml2YXRlIG9uVG91Y2hlZENhbGxiYWNrOiAoKSA9PiB2b2lkID0gKCkgPT4ge1xuICB9XG5cbiAgcHJpdmF0ZSBvbkNoYW5nZUNhbGxiYWNrOiAoXzogYW55KSA9PiB2b2lkID0gKCkgPT4ge1xuICB9XG5cbiAgZ2V0IHZhbHVlICgpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLmlubmVyVmFsdWVcbiAgfVxuXG4gIHNldCB2YWx1ZSAodmFsdWU6IGFueSkge1xuICAgIHRoaXMuaW5uZXJWYWx1ZSA9IHZhbHVlXG4gICAgdGhpcy5vbkNoYW5nZUNhbGxiYWNrKHZhbHVlKVxuICB9XG5cbiAgd3JpdGVWYWx1ZSAodmFsdWU6IGFueSk6IHZvaWQge1xuICAgIGlmICh2YWx1ZSAhPT0gdGhpcy52YWx1ZSkge1xuICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlXG4gICAgfVxuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZSAoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2VDYWxsYmFjayA9IGZuXG4gIH1cblxuICByZWdpc3Rlck9uVG91Y2hlZCAoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkQ2FsbGJhY2sgPSBmblxuICB9XG5cbiAgc2V0RGlzYWJsZWRTdGF0ZSAoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkXG4gIH1cblxuICBwdWJsaWMgYXJyb3dDbGljayAoZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXG4gICAgdGhpcy5zZXRUcmlnZ2VyUmVjdCgpXG4gICAgaWYgKCF0aGlzLm9wZW5lZCkge1xuICAgICAgdGhpcy5vcGVuKGV2ZW50KTtcbiAgICAgIHRoaXMuc2VhcmNoVGV4dCA9ICcnXG4gICAgICB0aGlzLmlucHV0Py5uYXRpdmVFbGVtZW50LmZvY3VzKClcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgb25Ecm9wICgkZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIHRoaXMuc2VhcmNoVGV4dCA9ICcnXG4gICAgaWYgKCF0aGlzLnZhbHVlKSB7XG4gICAgICB0aGlzLnZhbHVlID0gJydcbiAgICB9XG4gICAgdGhpcy5lZGl0ZWQgPSB0cnVlXG4gICAgdGhpcy52YWx1ZSArPSBge3skeyRldmVudC5kYXRhfX19YFxuICAgIHRoaXMuc2VsZWN0ZWRJdGVtTGFiZWwgPSB0aGlzLnZhbHVlXG4gICAgdGhpcy5vbkJsdXIodW5kZWZpbmVkKVxuICB9XG5cbn1cbiIsIjxkaXYgY2xhc3M9XCJjdXN0b20tc2VsZWN0LWlucHV0XCIgI3RyaWdnZXI+XG4gIDxtYXQtZm9ybS1maWVsZFxuICAgICAgZG5kRHJvcHpvbmUgW2RuZEFsbG93RXh0ZXJuYWxdPVwidHJ1ZVwiIChkbmREcm9wKT1cIm9uRHJvcCgkZXZlbnQpXCJcbiAgICAgIGNka092ZXJsYXlPcmlnaW4gI29yaWdpbj1cImNka092ZXJsYXlPcmlnaW5cIlxuICAgICAgKGNsaWNrKT1cImNsaWNrZWQoKVwiIGNsYXNzPVwiY3VzdG9tLXNlbGVjdC1jb21wb25lbnRcIlxuICAgICAgW25nQ2xhc3NdPVwieydzZWxlY3Qtb3BlbicgOiBvcGVuZWR9XCIgYXBwZWFyYW5jZT1cIm91dGxpbmVcIiBhdXRvY29tcGxldGU9XCJvZmZcIj5cbiAgICA8bWF0LWxhYmVsICpuZ0lmPVwicGxhY2VIb2xkZXJcIj57e3BsYWNlSG9sZGVyfX08L21hdC1sYWJlbD5cbiAgICA8aW5wdXQgbWF0SW5wdXQgI2lucHV0XG4gICAgICAgICAgIChibHVyKT1cIm9uQmx1cigkZXZlbnQpXCJcbiAgICAgICAgICAgWyhuZ01vZGVsKV09XCJzZWxlY3RlZEl0ZW1MYWJlbFwiXG4gICAgICAgICAgIFtuZ01vZGVsT3B0aW9uc109XCJ7c3RhbmRhbG9uZTogdHJ1ZX1cIlxuICAgICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICAgICAoa2V5dXApPWtleVByZXNzKClcbiAgICAgICAgICAgKGNsaWNrKT1cImNsaWNrZWQoKVwiXG4gICAgICAgICAgIGF1dG9jb21wbGV0ZT1cIm9mZlwiXG4gICAgLz5cbiAgICA8c3BhbiBjbGFzcz1cIm9wZW4taWNvblwiIChjbGljayk9XCJhcnJvd0NsaWNrKCRldmVudClcIj5cbiAgICAgICAgPGkgY2xhc3M9XCJmYXNcIiBbbmdDbGFzc109XCJ7J2ZhLWNhcmV0LWRvd24nIDogIW9wZW5lZCwgJ2ZhLWNhcmV0LXVwJyA6IG9wZW5lZH1cIj48L2k+XG4gICAgPC9zcGFuPlxuICA8L21hdC1mb3JtLWZpZWxkPlxuPC9kaXY+XG48ZGl2IGNsYXNzPVwiY3VzdG9tLXNlbGVjdC1jb21wb25lbnRcIj5cblxuICA8bmctdGVtcGxhdGUgY2RrQ29ubmVjdGVkT3ZlcmxheVxuICAgICAgICAgICAgICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlQYW5lbENsYXNzXT1cIidjdXN0b20tc2VsZWN0LW92ZXJsYXktcGFuZWwnXCJcbiAgICAgICAgICAgICAgIFtjZGtDb25uZWN0ZWRPdmVybGF5U2Nyb2xsU3RyYXRlZ3ldPVwic2Nyb2xsU3RyYXRlZ3lcIlxuICAgICAgICAgICAgICAgW2Nka0Nvbm5lY3RlZE92ZXJsYXlPcmlnaW5dPVwib3JpZ2luXCJcbiAgICAgICAgICAgICAgIChiYWNrZHJvcENsaWNrKT1cImNsb3NlKCRldmVudClcIlxuICAgICAgICAgICAgICAgKG92ZXJsYXlPdXRzaWRlQ2xpY2spPVwiY2xvc2UoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICBbY2RrQ29ubmVjdGVkT3ZlcmxheU9wZW5dPVwib3BlbmVkXCJcbiAgICAgICAgICAgICAgIFtjZGtDb25uZWN0ZWRPdmVybGF5TWluV2lkdGhdPVwiX3RyaWdnZXJSZWN0Py53aWR0aCFcIj5cbiAgICA8dWwgY2xhc3M9XCJ1bC1hY1wiPlxuICAgICAgPGxpIGNsYXNzPVwibGktc2VhcmNoIHNlYXJjaC1pbnB1dC1pdGVtXCI+XG4gICAgICAgIDxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImFwaXBhc3MtaW5wdXQtdGV4dCBzZWFyY2gtaW5wdXQtaXRlbVwiIGFwcGVhcmFuY2U9XCJvdXRsaW5lXCI+XG4gICAgICAgICAgPG1hdC1sYWJlbCAqbmdJZj1cImZpbmRQbGFjZUhvbGRlclwiPnt7ZmluZFBsYWNlSG9sZGVyfX08L21hdC1sYWJlbD5cbiAgICAgICAgICA8aW5wdXQgbWF0SW5wdXQgY2xhc3M9XCJzZWFyY2gtaW5wdXQtaXRlbVwiXG4gICAgICAgICAgICAgICAgIFsobmdNb2RlbCldPVwic2VhcmNoVGV4dFwiXG4gICAgICAgICAgICAgICAgIChibHVyKT1cIm9uQmx1cigkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgYXJpYS1hdXRvY29tcGxldGU9XCJub25lXCJcbiAgICAgICAgICAgICAgICAgYXV0b2NvbXBsZXRlPVwib2ZmXCJcbiAgICAgICAgICAvPlxuICAgICAgICA8L21hdC1mb3JtLWZpZWxkPlxuICAgICAgPC9saT5cblxuICAgICAgPGxpIGNsYXNzPVwiY2xpY2thYmxlXCIgKm5nRm9yPVwibGV0IGkgb2YgaXRlbXMgfCBzZWxlY3RGaWx0ZXI6c2VhcmNoVGV4dDondGV4dCdcIlxuICAgICAgICAgIChjbGljayk9XCJzZWxlY3RJdGVtKGkpXCJcbiAgICAgICAgICAobW91c2Vkb3duKT1cInNlbGVjdEl0ZW0oaSlcIj5cbiAgICAgICAge3tpLnRleHR9fVxuICAgICAgPC9saT5cblxuICAgIDwvdWw+XG4gIDwvbmctdGVtcGxhdGU+XG48L2Rpdj5cbiJdfQ==
@@ -27,4 +27,4 @@ export class ValueAccessorBase {
27
27
  this.onTouched.forEach((f) => f());
28
28
  }
29
29
  }
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtYWNlc3Nvci1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvaW5wdXRzL3NyYy92YWx1ZS1hY2Vzc29yLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFnQixpQkFBaUI7SUFFN0IsVUFBVSxDQUFLO0lBRWhCLFFBQVEsR0FBUSxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUE7SUFDeEIsU0FBUyxHQUFRLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQTtJQUVoQyxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUE7SUFDeEIsQ0FBQztJQUVELElBQUksS0FBSyxDQUFFLEtBQVE7UUFDakIsS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDL0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUE7UUFDdkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUNwQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUE7SUFDbEIsQ0FBQztJQUVTLFdBQVcsQ0FBRSxLQUFRO1FBQzdCLE9BQU8sS0FBSyxDQUFBO0lBQ2QsQ0FBQztJQUVELFVBQVUsQ0FBRSxLQUFRO1FBQ2xCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFBO0lBQ3pCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBRSxFQUFPO1FBQ3ZCLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFBO0lBQ3BCLENBQUM7SUFFRCxpQkFBaUIsQ0FBRSxFQUFPO1FBQ3hCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFBO0lBQ3JCLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFZLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUE7SUFDL0MsQ0FBQztDQUVGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcclxuXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBWYWx1ZUFjY2Vzc29yQmFzZTxUPiBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcclxuXHJcbiAgcHJpdmF0ZSBpbm5lclZhbHVlOiBhbnlcclxuXHJcbiAgcHVibGljIG9uQ2hhbmdlOiBhbnkgPSAoKSA9PiB7fVxyXG4gIHB1YmxpYyBvblRvdWNoZWQ6IGFueSA9ICgpID0+IHt9XHJcblxyXG4gIGdldCB2YWx1ZSAoKTogVCB7XHJcbiAgICByZXR1cm4gdGhpcy5pbm5lclZhbHVlXHJcbiAgfVxyXG5cclxuICBzZXQgdmFsdWUgKHZhbHVlOiBUKSB7XHJcbiAgICB2YWx1ZSA9IHRoaXMuY2hhbmdlVmFsdWUodmFsdWUpXHJcbiAgICB0aGlzLmlubmVyVmFsdWUgPSB2YWx1ZVxyXG4gICAgdGhpcy5vbkNoYW5nZSh2YWx1ZSlcclxuICAgIHRoaXMub25Ub3VjaGVkKClcclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBjaGFuZ2VWYWx1ZSAodmFsdWU6IFQpOiBUIHtcclxuICAgIHJldHVybiB2YWx1ZVxyXG4gIH1cclxuXHJcbiAgd3JpdGVWYWx1ZSAodmFsdWU6IFQpOiB2b2lkIHtcclxuICAgIHRoaXMuaW5uZXJWYWx1ZSA9IHZhbHVlXHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uQ2hhbmdlIChmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm5cclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkIChmbjogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuXHJcbiAgfVxyXG5cclxuICB0b3VjaCAoKTogdm9pZCB7XHJcbiAgICB0aGlzLm9uVG91Y2hlZC5mb3JFYWNoKChmOiAoKSA9PiBhbnkpID0+IGYoKSlcclxuICB9XHJcblxyXG59XHJcbiJdfQ==
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtYWNlc3Nvci1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vcHJvamVjdHMvaW5wdXRzL3NyYy92YWx1ZS1hY2Vzc29yLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFnQixpQkFBaUI7SUFFN0IsVUFBVSxDQUFLO0lBRWhCLFFBQVEsR0FBUSxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUE7SUFDeEIsU0FBUyxHQUFRLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQTtJQUVoQyxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUE7SUFDeEIsQ0FBQztJQUVELElBQUksS0FBSyxDQUFFLEtBQVE7UUFDakIsS0FBSyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDL0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUE7UUFDdkIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUNwQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUE7SUFDbEIsQ0FBQztJQUVTLFdBQVcsQ0FBRSxLQUFRO1FBQzdCLE9BQU8sS0FBSyxDQUFBO0lBQ2QsQ0FBQztJQUVELFVBQVUsQ0FBRSxLQUFRO1FBQ2xCLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFBO0lBQ3pCLENBQUM7SUFFRCxnQkFBZ0IsQ0FBRSxFQUFPO1FBQ3ZCLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFBO0lBQ3BCLENBQUM7SUFFRCxpQkFBaUIsQ0FBRSxFQUFPO1FBQ3hCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFBO0lBQ3JCLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFZLEVBQUUsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUE7SUFDL0MsQ0FBQztDQUVGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFZhbHVlQWNjZXNzb3JCYXNlPFQ+IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuXG4gIHByaXZhdGUgaW5uZXJWYWx1ZTogYW55XG5cbiAgcHVibGljIG9uQ2hhbmdlOiBhbnkgPSAoKSA9PiB7fVxuICBwdWJsaWMgb25Ub3VjaGVkOiBhbnkgPSAoKSA9PiB7fVxuXG4gIGdldCB2YWx1ZSAoKTogVCB7XG4gICAgcmV0dXJuIHRoaXMuaW5uZXJWYWx1ZVxuICB9XG5cbiAgc2V0IHZhbHVlICh2YWx1ZTogVCkge1xuICAgIHZhbHVlID0gdGhpcy5jaGFuZ2VWYWx1ZSh2YWx1ZSlcbiAgICB0aGlzLmlubmVyVmFsdWUgPSB2YWx1ZVxuICAgIHRoaXMub25DaGFuZ2UodmFsdWUpXG4gICAgdGhpcy5vblRvdWNoZWQoKVxuICB9XG5cbiAgcHJvdGVjdGVkIGNoYW5nZVZhbHVlICh2YWx1ZTogVCk6IFQge1xuICAgIHJldHVybiB2YWx1ZVxuICB9XG5cbiAgd3JpdGVWYWx1ZSAodmFsdWU6IFQpOiB2b2lkIHtcbiAgICB0aGlzLmlubmVyVmFsdWUgPSB2YWx1ZVxuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZSAoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmblxuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQgKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuXG4gIH1cblxuICB0b3VjaCAoKTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoZWQuZm9yRWFjaCgoZjogKCkgPT4gYW55KSA9PiBmKCkpXG4gIH1cblxufVxuIl19