aril 1.2.15 → 1.2.17

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.
@@ -46,7 +46,7 @@ export class ArilLangModalComponent {
46
46
  });
47
47
  }
48
48
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: ArilLangModalComponent, deps: [{ token: i1.DynamicDialogConfig }, { token: i1.DynamicDialogRef }], target: i0.ɵɵFactoryTarget.Component }); }
49
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: ArilLangModalComponent, isStandalone: true, selector: "aril-lang-modal", ngImport: i0, template: "<div>\r\n\t<aril-field\r\n\t\t[label]=\"translocoService.translate('translationModal.addLanguage')\"\r\n\t\t[cols]=\"{ default: 12 }\"\r\n\t\tclass=\"mb-4 block\">\r\n\t\t<enum-picker\r\n\t\t\t[(ngModel)]=\"selectedLanguages\"\r\n\t\t\t[items]=\"availableLanguages\"\r\n\t\t\t[isMultiple]=\"true\"\r\n\t\t\titemKey=\"code\"\r\n\t\t\titemText=\"name\" />\r\n\t</aril-field>\r\n\r\n\t@for (lang of selectedLanguages; track lang) {\r\n\t\t<div class=\"border-1 border-gray-300 border-round py-2 px-4 mb-2 flex justify-content-between items-center\">\r\n\t\t\t<aril-field labelPos=\"left\" [label]=\"getLabel(lang)\" [cols]=\"{ default: 12 }\" [labelWidth]=\"15\" [valueWidth]=\"85\">\r\n\t\t\t\t<aril-text class=\"value-input\" [(ngModel)]=\"translations[lang]\" />\r\n\t\t\t</aril-field>\r\n\t\t</div>\r\n\t}\r\n\r\n\t<div class=\"mt-4\">\r\n\t\t@if (mandatoryLanguages.length && isSaveDisabled()) {\r\n\t\t\t<div class=\"mb-2\">\r\n\t\t\t\t<p-tag [value]=\"getInfoText()\" severity=\"info\" />\r\n\t\t\t</div>\r\n\t\t}\r\n\t</div>\r\n\r\n\t<div class=\"mt-4 flex justify-content-end\">\r\n\t\t<aril-button\r\n\t\t\tcolor=\"danger\"\r\n\t\t\t[outlined]=\"true\"\r\n\t\t\t[label]=\"translocoService.translate('cancel')\"\r\n\t\t\t[raised]=\"false\"\r\n\t\t\ticon=\"TIMES\"\r\n\t\t\t(clickEvent)=\"close()\" />\r\n\t\t<aril-button\r\n\t\t\t[label]=\"translocoService.translate('save')\"\r\n\t\t\tcolor=\"success\"\r\n\t\t\ticon=\"CHECK\"\r\n\t\t\tclass=\"ml-2\"\r\n\t\t\t(clickEvent)=\"save()\"\r\n\t\t\t[disabled]=\"isSaveDisabled()\" />\r\n\t</div>\r\n</div>\r\n", styles: [":host .value-input ::ng-deep input{width:100%}\n"], dependencies: [{ kind: "component", type: TextComponent, selector: "aril-text[ngModel], aril-text[formControl], aril-text[formControlName]", inputs: ["placeholder", "tabindex", "icon", "iconPos", "size"] }, { kind: "ngmodule", type: FormsModule }, { 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: "ngmodule", type: CommonModule }, { kind: "component", type: ButtonComponent, selector: "aril-button:not([click])", inputs: ["label", "loading", "disabled", "raised", "rounded", "text", "outlined", "badge", "size", "icon", "iconPos", "color"], outputs: ["clickEvent"] }, { kind: "ngmodule", type: TranslocoModule }, { kind: "component", type: FieldComponent, selector: "aril-field", inputs: ["label", "color", "labelWidth", "valueWidth", "labelPos", "markAsRequired", "cols", "infoData", "infoDataOverlayPanel"] }, { kind: "component", type: EnumPickerComponent, selector: "enum-picker[ngModel], enum-picker[formControl], enum-picker[formControlName]", inputs: ["itemKey", "itemText", "groupName", "parentSelectionKey", "tabindex", "items", "isMultiple", "grouped", "showClearButton", "placeholder", "searchExpr", "acceptCustomValue", "textClampCharacters", "useVirtualScroll", "virtualScrollItemSize", "scrollHeight", "selectedItemsLabel", "appendTo", "style", "styleClass", "tooltip", "tooltipPosition"], outputs: ["onSelectionChanged"] }, { kind: "ngmodule", type: TagModule }, { kind: "component", type: i3.Tag, selector: "p-tag", inputs: ["style", "styleClass", "severity", "value", "icon", "rounded"] }] }); }
49
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: ArilLangModalComponent, isStandalone: true, selector: "aril-lang-modal", ngImport: i0, template: "<div>\r\n\t<aril-field\r\n\t\t[label]=\"translocoService.translate('translationModal.addLanguage')\"\r\n\t\t[cols]=\"{ default: 12 }\"\r\n\t\tclass=\"mb-4 block\">\r\n\t\t<enum-picker\r\n\t\t\t[(ngModel)]=\"selectedLanguages\"\r\n\t\t\t[items]=\"availableLanguages\"\r\n\t\t\t[isMultiple]=\"true\"\r\n\t\t\titemKey=\"code\"\r\n\t\t\titemText=\"name\" />\r\n\t</aril-field>\r\n\r\n\t@for (lang of selectedLanguages; track lang) {\r\n\t\t<div class=\"border-1 border-gray-300 border-round py-2 px-4 mb-2 flex justify-content-between items-center\">\r\n\t\t\t<aril-field labelPos=\"left\" [label]=\"getLabel(lang)\" [cols]=\"{ default: 12 }\" [labelWidth]=\"15\" [valueWidth]=\"85\">\r\n\t\t\t\t<aril-text class=\"value-input\" [(ngModel)]=\"translations[lang]\" />\r\n\t\t\t</aril-field>\r\n\t\t</div>\r\n\t}\r\n\r\n\t<div class=\"mt-4\">\r\n\t\t@if (mandatoryLanguages.length && isSaveDisabled()) {\r\n\t\t\t<div class=\"mb-2\">\r\n\t\t\t\t<p-tag [value]=\"getInfoText()\" severity=\"info\" />\r\n\t\t\t</div>\r\n\t\t}\r\n\t</div>\r\n\r\n\t<div class=\"mt-4 flex justify-content-end\">\r\n\t\t<aril-button\r\n\t\t\tcolor=\"danger\"\r\n\t\t\t[outlined]=\"true\"\r\n\t\t\t[label]=\"translocoService.translate('cancel')\"\r\n\t\t\t[raised]=\"false\"\r\n\t\t\ticon=\"TIMES\"\r\n\t\t\t(clickEvent)=\"close()\" />\r\n\t\t<aril-button\r\n\t\t\t[label]=\"translocoService.translate('save')\"\r\n\t\t\tcolor=\"success\"\r\n\t\t\ticon=\"CHECK\"\r\n\t\t\tclass=\"ml-2\"\r\n\t\t\t(clickEvent)=\"save()\"\r\n\t\t\t[disabled]=\"isSaveDisabled()\" />\r\n\t</div>\r\n</div>\r\n", styles: [":host .value-input ::ng-deep input{width:100%}\n"], dependencies: [{ kind: "component", type: TextComponent, selector: "aril-text[ngModel], aril-text[formControl], aril-text[formControlName]", inputs: ["placeholder", "tabindex", "icon", "iconPos", "size"] }, { kind: "ngmodule", type: FormsModule }, { 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: "ngmodule", type: CommonModule }, { kind: "component", type: ButtonComponent, selector: "aril-button:not([click])", inputs: ["label", "loading", "disabled", "raised", "rounded", "text", "outlined", "badge", "size", "icon", "iconPos", "color"], outputs: ["clickEvent"] }, { kind: "ngmodule", type: TranslocoModule }, { kind: "component", type: FieldComponent, selector: "aril-field", inputs: ["label", "color", "labelWidth", "valueWidth", "labelPos", "markAsRequired", "cols", "infoData", "infoDataOverlayPanel"] }, { kind: "component", type: EnumPickerComponent, selector: "enum-picker[ngModel], enum-picker[formControl], enum-picker[formControlName]", inputs: ["itemKey", "itemText", "groupName", "parentSelectionKey", "tabindex", "items", "isMultiple", "excludedKeys", "grouped", "showClearButton", "placeholder", "searchExpr", "acceptCustomValue", "textClampCharacters", "useVirtualScroll", "virtualScrollItemSize", "scrollHeight", "selectedItemsLabel", "appendTo", "style", "styleClass", "tooltip", "tooltipPosition"], outputs: ["onSelectionChanged"] }, { kind: "ngmodule", type: TagModule }, { kind: "component", type: i3.Tag, selector: "p-tag", inputs: ["style", "styleClass", "severity", "value", "icon", "rounded"] }] }); }
50
50
  }
51
51
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: ArilLangModalComponent, decorators: [{
52
52
  type: Component,
@@ -61,4 +61,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
61
61
  TagModule
62
62
  ], standalone: true, template: "<div>\r\n\t<aril-field\r\n\t\t[label]=\"translocoService.translate('translationModal.addLanguage')\"\r\n\t\t[cols]=\"{ default: 12 }\"\r\n\t\tclass=\"mb-4 block\">\r\n\t\t<enum-picker\r\n\t\t\t[(ngModel)]=\"selectedLanguages\"\r\n\t\t\t[items]=\"availableLanguages\"\r\n\t\t\t[isMultiple]=\"true\"\r\n\t\t\titemKey=\"code\"\r\n\t\t\titemText=\"name\" />\r\n\t</aril-field>\r\n\r\n\t@for (lang of selectedLanguages; track lang) {\r\n\t\t<div class=\"border-1 border-gray-300 border-round py-2 px-4 mb-2 flex justify-content-between items-center\">\r\n\t\t\t<aril-field labelPos=\"left\" [label]=\"getLabel(lang)\" [cols]=\"{ default: 12 }\" [labelWidth]=\"15\" [valueWidth]=\"85\">\r\n\t\t\t\t<aril-text class=\"value-input\" [(ngModel)]=\"translations[lang]\" />\r\n\t\t\t</aril-field>\r\n\t\t</div>\r\n\t}\r\n\r\n\t<div class=\"mt-4\">\r\n\t\t@if (mandatoryLanguages.length && isSaveDisabled()) {\r\n\t\t\t<div class=\"mb-2\">\r\n\t\t\t\t<p-tag [value]=\"getInfoText()\" severity=\"info\" />\r\n\t\t\t</div>\r\n\t\t}\r\n\t</div>\r\n\r\n\t<div class=\"mt-4 flex justify-content-end\">\r\n\t\t<aril-button\r\n\t\t\tcolor=\"danger\"\r\n\t\t\t[outlined]=\"true\"\r\n\t\t\t[label]=\"translocoService.translate('cancel')\"\r\n\t\t\t[raised]=\"false\"\r\n\t\t\ticon=\"TIMES\"\r\n\t\t\t(clickEvent)=\"close()\" />\r\n\t\t<aril-button\r\n\t\t\t[label]=\"translocoService.translate('save')\"\r\n\t\t\tcolor=\"success\"\r\n\t\t\ticon=\"CHECK\"\r\n\t\t\tclass=\"ml-2\"\r\n\t\t\t(clickEvent)=\"save()\"\r\n\t\t\t[disabled]=\"isSaveDisabled()\" />\r\n\t</div>\r\n</div>\r\n", styles: [":host .value-input ::ng-deep input{width:100%}\n"] }]
63
63
  }], ctorParameters: () => [{ type: i1.DynamicDialogConfig }, { type: i1.DynamicDialogRef }] });
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJpbC1sYW5nLW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvdWkvdHJhbnNsYXRlLWlucHV0L3NyYy9hcmlsLWxhbmctbW9kYWwvYXJpbC1sYW5nLW1vZGFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvdWkvdHJhbnNsYXRlLWlucHV0L3NyYy9hcmlsLWxhbmctbW9kYWwvYXJpbC1sYW5nLW1vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzdDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFeEMsT0FBTyxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXRFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFHN0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7Ozs7QUFrQnhDLE1BQU0sT0FBTyxzQkFBc0I7SUFPbEMsWUFDUSxNQUEwQyxFQUMxQyxHQUFxQjtRQURyQixXQUFNLEdBQU4sTUFBTSxDQUFvQztRQUMxQyxRQUFHLEdBQUgsR0FBRyxDQUFrQjtRQVI3QixxQkFBZ0IsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUM1QyxzQkFBaUIsR0FBYSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUMzQyx1QkFBa0IsR0FBRyxTQUFTLENBQUM7UUFDL0IsaUJBQVksR0FBc0IsRUFBRSxDQUFDO1FBQ3JDLHVCQUFrQixHQUFhLEVBQUUsQ0FBQztRQU1qQyxJQUFJLENBQUMsWUFBWSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQztRQUMxRCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsa0JBQWtCLElBQUksRUFBRSxDQUFDO0lBQ3RFLENBQUM7SUFFRCxJQUFJO1FBQ0gsTUFBTSxPQUFPLEdBQUcsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDaEQsOENBQThDO1FBQzlDLE1BQU0sa0JBQWtCLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNqSCxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxLQUFLO1FBQ0osSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNsQixDQUFDO0lBRUQsUUFBUSxDQUFDLElBQVk7UUFDcEIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQztJQUN6RSxDQUFDO0lBRUQsY0FBYztRQUNiLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixFQUFFLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3BILENBQUM7SUFFRCxXQUFXO1FBQ1YsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLHFDQUFxQyxFQUFFO1lBQzdFLFNBQVMsRUFBRSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztTQUNqRixDQUFDLENBQUM7SUFDSixDQUFDOzhHQXRDVyxzQkFBc0I7a0dBQXRCLHNCQUFzQiwyRUNsQ25DLDBoREE4Q0EsMEdEekJFLGFBQWEsa0xBQ2IsV0FBVyw4VkFDWCxZQUFZLCtCQUNaLGVBQWUsNk5BQ2YsZUFBZSwrQkFDZixjQUFjLHlMQUNkLG1CQUFtQiwyZkFDbkIsU0FBUzs7MkZBTUUsc0JBQXNCO2tCQWhCbEMsU0FBUzsrQkFDQyxpQkFBaUIsV0FDbEI7d0JBQ1IsYUFBYTt3QkFDYixXQUFXO3dCQUNYLFlBQVk7d0JBQ1osZUFBZTt3QkFDZixlQUFlO3dCQUNmLGNBQWM7d0JBQ2QsbUJBQW1CO3dCQUNuQixTQUFTO3FCQUNULGNBQ1csSUFBSSIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3IgKi9cclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5pbXBvcnQgeyBEeW5hbWljRGlhbG9nQ29uZmlnLCBEeW5hbWljRGlhbG9nUmVmIH0gZnJvbSAncHJpbWVuZy9keW5hbWljZGlhbG9nJztcclxuaW1wb3J0IHsgVGFnTW9kdWxlIH0gZnJvbSAncHJpbWVuZy90YWcnO1xyXG5cclxuaW1wb3J0IHsgVHJhbnNsb2NvTW9kdWxlLCBUcmFuc2xvY29TZXJ2aWNlIH0gZnJvbSAnQG5nbmVhdC90cmFuc2xvY28nO1xyXG5cclxuaW1wb3J0IHsgRW51bVBpY2tlckNvbXBvbmVudCB9IGZyb20gJ2FyaWwvdWktYnVzaW5lc3MvZW51bVBpY2tlcic7XHJcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJ2FyaWwvdWkvYnV0dG9uJztcclxuaW1wb3J0IHsgRmllbGRDb21wb25lbnQgfSBmcm9tICdhcmlsL3VpL2ZpZWxkJztcclxuaW1wb3J0IHsgVGV4dENvbXBvbmVudCB9IGZyb20gJ2FyaWwvdWkvdGV4dCc7XHJcblxyXG5pbXBvcnQgeyBMYW5nTW9kYWxEYXRhLCBUcmFuc2xhdGlvbk9iamVjdCB9IGZyb20gJy4uL2ludGVyZmFjZSc7XHJcbmltcG9ydCB7IEFMTF9MQU5HUyB9IGZyb20gJy4vY29uc3RhbnRzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHNlbGVjdG9yOiAnYXJpbC1sYW5nLW1vZGFsJyxcclxuXHRpbXBvcnRzOiBbXHJcblx0XHRUZXh0Q29tcG9uZW50LFxyXG5cdFx0Rm9ybXNNb2R1bGUsXHJcblx0XHRDb21tb25Nb2R1bGUsXHJcblx0XHRCdXR0b25Db21wb25lbnQsXHJcblx0XHRUcmFuc2xvY29Nb2R1bGUsXHJcblx0XHRGaWVsZENvbXBvbmVudCxcclxuXHRcdEVudW1QaWNrZXJDb21wb25lbnQsXHJcblx0XHRUYWdNb2R1bGVcclxuXHRdLFxyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0dGVtcGxhdGVVcmw6ICdhcmlsLWxhbmctbW9kYWwuY29tcG9uZW50Lmh0bWwnLFxyXG5cdHN0eWxlVXJsczogWydhcmlsLWxhbmctbW9kYWwuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgQXJpbExhbmdNb2RhbENvbXBvbmVudCB7XHJcblx0dHJhbnNsb2NvU2VydmljZSA9IGluamVjdChUcmFuc2xvY29TZXJ2aWNlKTtcclxuXHRzZWxlY3RlZExhbmd1YWdlczogc3RyaW5nW10gPSBbJ3RyJywgJ2VuJ107XHJcblx0YXZhaWxhYmxlTGFuZ3VhZ2VzID0gQUxMX0xBTkdTO1xyXG5cdHRyYW5zbGF0aW9uczogVHJhbnNsYXRpb25PYmplY3QgPSB7fTtcclxuXHRtYW5kYXRvcnlMYW5ndWFnZXM6IHN0cmluZ1tdID0gW107XHJcblxyXG5cdGNvbnN0cnVjdG9yKFxyXG5cdFx0cHVibGljIGNvbmZpZzogRHluYW1pY0RpYWxvZ0NvbmZpZzxMYW5nTW9kYWxEYXRhPixcclxuXHRcdHB1YmxpYyByZWY6IER5bmFtaWNEaWFsb2dSZWZcclxuXHQpIHtcclxuXHRcdHRoaXMudHJhbnNsYXRpb25zID0geyAuLi50aGlzLmNvbmZpZy5kYXRhPy50cmFuc2xhdGlvbnMgfTtcclxuXHRcdHRoaXMubWFuZGF0b3J5TGFuZ3VhZ2VzID0gdGhpcy5jb25maWcuZGF0YT8ubWFuZGF0b3J5TGFuZ3VhZ2VzIHx8IFtdO1xyXG5cdH1cclxuXHJcblx0c2F2ZSgpIHtcclxuXHRcdGNvbnN0IGFsbG93ZWQgPSBuZXcgU2V0KHRoaXMuc2VsZWN0ZWRMYW5ndWFnZXMpO1xyXG5cdFx0Ly8gb25seSBvdXRwdXQgdGhlIGxhbmd1YWdlcyB0aGF0IGFyZSBzZWxlY3RlZFxyXG5cdFx0Y29uc3Qgb3V0cHV0VHJhbnNsYXRpb25zID0gT2JqZWN0LmZyb21FbnRyaWVzKE9iamVjdC5lbnRyaWVzKHRoaXMudHJhbnNsYXRpb25zKS5maWx0ZXIoKFtrXSkgPT4gYWxsb3dlZC5oYXMoaykpKTtcclxuXHRcdHRoaXMucmVmLmNsb3NlKG91dHB1dFRyYW5zbGF0aW9ucyk7XHJcblx0fVxyXG5cclxuXHRjbG9zZSgpIHtcclxuXHRcdHRoaXMucmVmLmNsb3NlKCk7XHJcblx0fVxyXG5cclxuXHRnZXRMYWJlbChjb2RlOiBzdHJpbmcpIHtcclxuXHRcdHJldHVybiB0aGlzLmF2YWlsYWJsZUxhbmd1YWdlcy5maW5kKChsYW5nKSA9PiBsYW5nLmNvZGUgPT09IGNvZGUpPy5uYW1lO1xyXG5cdH1cclxuXHJcblx0aXNTYXZlRGlzYWJsZWQoKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5tYW5kYXRvcnlMYW5ndWFnZXM/LnNvbWUoKGxhbmcpID0+ICF0aGlzLnNlbGVjdGVkTGFuZ3VhZ2VzLmluY2x1ZGVzKGxhbmcpIHx8ICF0aGlzLnRyYW5zbGF0aW9uc1tsYW5nXSk7XHJcblx0fVxyXG5cclxuXHRnZXRJbmZvVGV4dCgpIHtcclxuXHRcdHJldHVybiB0aGlzLnRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCd0cmFuc2xhdGlvbk1vZGFsLm1hbmRhdG9yeUxhbmd1YWdlcycsIHtcclxuXHRcdFx0bGFuZ3VhZ2VzOiB0aGlzLm1hbmRhdG9yeUxhbmd1YWdlcz8ubWFwKChsYW5nKSA9PiB0aGlzLmdldExhYmVsKGxhbmcpKS5qb2luKCcsICcpXHJcblx0XHR9KTtcclxuXHR9XHJcbn1cclxuIiwiPGRpdj5cclxuXHQ8YXJpbC1maWVsZFxyXG5cdFx0W2xhYmVsXT1cInRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCd0cmFuc2xhdGlvbk1vZGFsLmFkZExhbmd1YWdlJylcIlxyXG5cdFx0W2NvbHNdPVwieyBkZWZhdWx0OiAxMiB9XCJcclxuXHRcdGNsYXNzPVwibWItNCBibG9ja1wiPlxyXG5cdFx0PGVudW0tcGlja2VyXHJcblx0XHRcdFsobmdNb2RlbCldPVwic2VsZWN0ZWRMYW5ndWFnZXNcIlxyXG5cdFx0XHRbaXRlbXNdPVwiYXZhaWxhYmxlTGFuZ3VhZ2VzXCJcclxuXHRcdFx0W2lzTXVsdGlwbGVdPVwidHJ1ZVwiXHJcblx0XHRcdGl0ZW1LZXk9XCJjb2RlXCJcclxuXHRcdFx0aXRlbVRleHQ9XCJuYW1lXCIgLz5cclxuXHQ8L2FyaWwtZmllbGQ+XHJcblxyXG5cdEBmb3IgKGxhbmcgb2Ygc2VsZWN0ZWRMYW5ndWFnZXM7IHRyYWNrIGxhbmcpIHtcclxuXHRcdDxkaXYgY2xhc3M9XCJib3JkZXItMSBib3JkZXItZ3JheS0zMDAgYm9yZGVyLXJvdW5kIHB5LTIgcHgtNCBtYi0yIGZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gaXRlbXMtY2VudGVyXCI+XHJcblx0XHRcdDxhcmlsLWZpZWxkIGxhYmVsUG9zPVwibGVmdFwiIFtsYWJlbF09XCJnZXRMYWJlbChsYW5nKVwiIFtjb2xzXT1cInsgZGVmYXVsdDogMTIgfVwiIFtsYWJlbFdpZHRoXT1cIjE1XCIgW3ZhbHVlV2lkdGhdPVwiODVcIj5cclxuXHRcdFx0XHQ8YXJpbC10ZXh0IGNsYXNzPVwidmFsdWUtaW5wdXRcIiBbKG5nTW9kZWwpXT1cInRyYW5zbGF0aW9uc1tsYW5nXVwiIC8+XHJcblx0XHRcdDwvYXJpbC1maWVsZD5cclxuXHRcdDwvZGl2PlxyXG5cdH1cclxuXHJcblx0PGRpdiBjbGFzcz1cIm10LTRcIj5cclxuXHRcdEBpZiAobWFuZGF0b3J5TGFuZ3VhZ2VzLmxlbmd0aCAmJiBpc1NhdmVEaXNhYmxlZCgpKSB7XHJcblx0XHRcdDxkaXYgY2xhc3M9XCJtYi0yXCI+XHJcblx0XHRcdFx0PHAtdGFnIFt2YWx1ZV09XCJnZXRJbmZvVGV4dCgpXCIgc2V2ZXJpdHk9XCJpbmZvXCIgLz5cclxuXHRcdFx0PC9kaXY+XHJcblx0XHR9XHJcblx0PC9kaXY+XHJcblxyXG5cdDxkaXYgY2xhc3M9XCJtdC00IGZsZXgganVzdGlmeS1jb250ZW50LWVuZFwiPlxyXG5cdFx0PGFyaWwtYnV0dG9uXHJcblx0XHRcdGNvbG9yPVwiZGFuZ2VyXCJcclxuXHRcdFx0W291dGxpbmVkXT1cInRydWVcIlxyXG5cdFx0XHRbbGFiZWxdPVwidHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ2NhbmNlbCcpXCJcclxuXHRcdFx0W3JhaXNlZF09XCJmYWxzZVwiXHJcblx0XHRcdGljb249XCJUSU1FU1wiXHJcblx0XHRcdChjbGlja0V2ZW50KT1cImNsb3NlKClcIiAvPlxyXG5cdFx0PGFyaWwtYnV0dG9uXHJcblx0XHRcdFtsYWJlbF09XCJ0cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgnc2F2ZScpXCJcclxuXHRcdFx0Y29sb3I9XCJzdWNjZXNzXCJcclxuXHRcdFx0aWNvbj1cIkNIRUNLXCJcclxuXHRcdFx0Y2xhc3M9XCJtbC0yXCJcclxuXHRcdFx0KGNsaWNrRXZlbnQpPVwic2F2ZSgpXCJcclxuXHRcdFx0W2Rpc2FibGVkXT1cImlzU2F2ZURpc2FibGVkKClcIiAvPlxyXG5cdDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJpbC1sYW5nLW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvdWkvdHJhbnNsYXRlLWlucHV0L3NyYy9hcmlsLWxhbmctbW9kYWwvYXJpbC1sYW5nLW1vZGFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvdWkvdHJhbnNsYXRlLWlucHV0L3NyYy9hcmlsLWxhbmctbW9kYWwvYXJpbC1sYW5nLW1vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHVEQUF1RDtBQUN2RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzdDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFeEMsT0FBTyxFQUFFLGVBQWUsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXRFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFHN0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGFBQWEsQ0FBQzs7Ozs7QUFrQnhDLE1BQU0sT0FBTyxzQkFBc0I7SUFPbEMsWUFDUSxNQUEwQyxFQUMxQyxHQUFxQjtRQURyQixXQUFNLEdBQU4sTUFBTSxDQUFvQztRQUMxQyxRQUFHLEdBQUgsR0FBRyxDQUFrQjtRQVI3QixxQkFBZ0IsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUM1QyxzQkFBaUIsR0FBYSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztRQUMzQyx1QkFBa0IsR0FBRyxTQUFTLENBQUM7UUFDL0IsaUJBQVksR0FBc0IsRUFBRSxDQUFDO1FBQ3JDLHVCQUFrQixHQUFhLEVBQUUsQ0FBQztRQU1qQyxJQUFJLENBQUMsWUFBWSxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQztRQUMxRCxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsa0JBQWtCLElBQUksRUFBRSxDQUFDO0lBQ3RFLENBQUM7SUFFRCxJQUFJO1FBQ0gsTUFBTSxPQUFPLEdBQUcsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDaEQsOENBQThDO1FBQzlDLE1BQU0sa0JBQWtCLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNqSCxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxLQUFLO1FBQ0osSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNsQixDQUFDO0lBRUQsUUFBUSxDQUFDLElBQVk7UUFDcEIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQztJQUN6RSxDQUFDO0lBRUQsY0FBYztRQUNiLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixFQUFFLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3BILENBQUM7SUFFRCxXQUFXO1FBQ1YsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxDQUFDLHFDQUFxQyxFQUFFO1lBQzdFLFNBQVMsRUFBRSxJQUFJLENBQUMsa0JBQWtCLEVBQUUsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztTQUNqRixDQUFDLENBQUM7SUFDSixDQUFDOzhHQXRDVyxzQkFBc0I7a0dBQXRCLHNCQUFzQiwyRUNsQ25DLDBoREE4Q0EsMEdEekJFLGFBQWEsa0xBQ2IsV0FBVyw4VkFDWCxZQUFZLCtCQUNaLGVBQWUsNk5BQ2YsZUFBZSwrQkFDZixjQUFjLHlMQUNkLG1CQUFtQiwyZ0JBQ25CLFNBQVM7OzJGQU1FLHNCQUFzQjtrQkFoQmxDLFNBQVM7K0JBQ0MsaUJBQWlCLFdBQ2xCO3dCQUNSLGFBQWE7d0JBQ2IsV0FBVzt3QkFDWCxZQUFZO3dCQUNaLGVBQWU7d0JBQ2YsZUFBZTt3QkFDZixjQUFjO3dCQUNkLG1CQUFtQjt3QkFDbkIsU0FBUztxQkFDVCxjQUNXLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBAYW5ndWxhci1lc2xpbnQvY29tcG9uZW50LXNlbGVjdG9yICovXHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuaW1wb3J0IHsgRHluYW1pY0RpYWxvZ0NvbmZpZywgRHluYW1pY0RpYWxvZ1JlZiB9IGZyb20gJ3ByaW1lbmcvZHluYW1pY2RpYWxvZyc7XHJcbmltcG9ydCB7IFRhZ01vZHVsZSB9IGZyb20gJ3ByaW1lbmcvdGFnJztcclxuXHJcbmltcG9ydCB7IFRyYW5zbG9jb01vZHVsZSwgVHJhbnNsb2NvU2VydmljZSB9IGZyb20gJ0BuZ25lYXQvdHJhbnNsb2NvJztcclxuXHJcbmltcG9ydCB7IEVudW1QaWNrZXJDb21wb25lbnQgfSBmcm9tICdhcmlsL3VpLWJ1c2luZXNzL2VudW1QaWNrZXInO1xyXG5pbXBvcnQgeyBCdXR0b25Db21wb25lbnQgfSBmcm9tICdhcmlsL3VpL2J1dHRvbic7XHJcbmltcG9ydCB7IEZpZWxkQ29tcG9uZW50IH0gZnJvbSAnYXJpbC91aS9maWVsZCc7XHJcbmltcG9ydCB7IFRleHRDb21wb25lbnQgfSBmcm9tICdhcmlsL3VpL3RleHQnO1xyXG5cclxuaW1wb3J0IHsgTGFuZ01vZGFsRGF0YSwgVHJhbnNsYXRpb25PYmplY3QgfSBmcm9tICcuLi9pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBBTExfTEFOR1MgfSBmcm9tICcuL2NvbnN0YW50cyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuXHRzZWxlY3RvcjogJ2FyaWwtbGFuZy1tb2RhbCcsXHJcblx0aW1wb3J0czogW1xyXG5cdFx0VGV4dENvbXBvbmVudCxcclxuXHRcdEZvcm1zTW9kdWxlLFxyXG5cdFx0Q29tbW9uTW9kdWxlLFxyXG5cdFx0QnV0dG9uQ29tcG9uZW50LFxyXG5cdFx0VHJhbnNsb2NvTW9kdWxlLFxyXG5cdFx0RmllbGRDb21wb25lbnQsXHJcblx0XHRFbnVtUGlja2VyQ29tcG9uZW50LFxyXG5cdFx0VGFnTW9kdWxlXHJcblx0XSxcclxuXHRzdGFuZGFsb25lOiB0cnVlLFxyXG5cdHRlbXBsYXRlVXJsOiAnYXJpbC1sYW5nLW1vZGFsLmNvbXBvbmVudC5odG1sJyxcclxuXHRzdHlsZVVybHM6IFsnYXJpbC1sYW5nLW1vZGFsLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIEFyaWxMYW5nTW9kYWxDb21wb25lbnQge1xyXG5cdHRyYW5zbG9jb1NlcnZpY2UgPSBpbmplY3QoVHJhbnNsb2NvU2VydmljZSk7XHJcblx0c2VsZWN0ZWRMYW5ndWFnZXM6IHN0cmluZ1tdID0gWyd0cicsICdlbiddO1xyXG5cdGF2YWlsYWJsZUxhbmd1YWdlcyA9IEFMTF9MQU5HUztcclxuXHR0cmFuc2xhdGlvbnM6IFRyYW5zbGF0aW9uT2JqZWN0ID0ge307XHJcblx0bWFuZGF0b3J5TGFuZ3VhZ2VzOiBzdHJpbmdbXSA9IFtdO1xyXG5cclxuXHRjb25zdHJ1Y3RvcihcclxuXHRcdHB1YmxpYyBjb25maWc6IER5bmFtaWNEaWFsb2dDb25maWc8TGFuZ01vZGFsRGF0YT4sXHJcblx0XHRwdWJsaWMgcmVmOiBEeW5hbWljRGlhbG9nUmVmXHJcblx0KSB7XHJcblx0XHR0aGlzLnRyYW5zbGF0aW9ucyA9IHsgLi4udGhpcy5jb25maWcuZGF0YT8udHJhbnNsYXRpb25zIH07XHJcblx0XHR0aGlzLm1hbmRhdG9yeUxhbmd1YWdlcyA9IHRoaXMuY29uZmlnLmRhdGE/Lm1hbmRhdG9yeUxhbmd1YWdlcyB8fCBbXTtcclxuXHR9XHJcblxyXG5cdHNhdmUoKSB7XHJcblx0XHRjb25zdCBhbGxvd2VkID0gbmV3IFNldCh0aGlzLnNlbGVjdGVkTGFuZ3VhZ2VzKTtcclxuXHRcdC8vIG9ubHkgb3V0cHV0IHRoZSBsYW5ndWFnZXMgdGhhdCBhcmUgc2VsZWN0ZWRcclxuXHRcdGNvbnN0IG91dHB1dFRyYW5zbGF0aW9ucyA9IE9iamVjdC5mcm9tRW50cmllcyhPYmplY3QuZW50cmllcyh0aGlzLnRyYW5zbGF0aW9ucykuZmlsdGVyKChba10pID0+IGFsbG93ZWQuaGFzKGspKSk7XHJcblx0XHR0aGlzLnJlZi5jbG9zZShvdXRwdXRUcmFuc2xhdGlvbnMpO1xyXG5cdH1cclxuXHJcblx0Y2xvc2UoKSB7XHJcblx0XHR0aGlzLnJlZi5jbG9zZSgpO1xyXG5cdH1cclxuXHJcblx0Z2V0TGFiZWwoY29kZTogc3RyaW5nKSB7XHJcblx0XHRyZXR1cm4gdGhpcy5hdmFpbGFibGVMYW5ndWFnZXMuZmluZCgobGFuZykgPT4gbGFuZy5jb2RlID09PSBjb2RlKT8ubmFtZTtcclxuXHR9XHJcblxyXG5cdGlzU2F2ZURpc2FibGVkKCkge1xyXG5cdFx0cmV0dXJuIHRoaXMubWFuZGF0b3J5TGFuZ3VhZ2VzPy5zb21lKChsYW5nKSA9PiAhdGhpcy5zZWxlY3RlZExhbmd1YWdlcy5pbmNsdWRlcyhsYW5nKSB8fCAhdGhpcy50cmFuc2xhdGlvbnNbbGFuZ10pO1xyXG5cdH1cclxuXHJcblx0Z2V0SW5mb1RleHQoKSB7XHJcblx0XHRyZXR1cm4gdGhpcy50cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgndHJhbnNsYXRpb25Nb2RhbC5tYW5kYXRvcnlMYW5ndWFnZXMnLCB7XHJcblx0XHRcdGxhbmd1YWdlczogdGhpcy5tYW5kYXRvcnlMYW5ndWFnZXM/Lm1hcCgobGFuZykgPT4gdGhpcy5nZXRMYWJlbChsYW5nKSkuam9pbignLCAnKVxyXG5cdFx0fSk7XHJcblx0fVxyXG59XHJcbiIsIjxkaXY+XHJcblx0PGFyaWwtZmllbGRcclxuXHRcdFtsYWJlbF09XCJ0cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgndHJhbnNsYXRpb25Nb2RhbC5hZGRMYW5ndWFnZScpXCJcclxuXHRcdFtjb2xzXT1cInsgZGVmYXVsdDogMTIgfVwiXHJcblx0XHRjbGFzcz1cIm1iLTQgYmxvY2tcIj5cclxuXHRcdDxlbnVtLXBpY2tlclxyXG5cdFx0XHRbKG5nTW9kZWwpXT1cInNlbGVjdGVkTGFuZ3VhZ2VzXCJcclxuXHRcdFx0W2l0ZW1zXT1cImF2YWlsYWJsZUxhbmd1YWdlc1wiXHJcblx0XHRcdFtpc011bHRpcGxlXT1cInRydWVcIlxyXG5cdFx0XHRpdGVtS2V5PVwiY29kZVwiXHJcblx0XHRcdGl0ZW1UZXh0PVwibmFtZVwiIC8+XHJcblx0PC9hcmlsLWZpZWxkPlxyXG5cclxuXHRAZm9yIChsYW5nIG9mIHNlbGVjdGVkTGFuZ3VhZ2VzOyB0cmFjayBsYW5nKSB7XHJcblx0XHQ8ZGl2IGNsYXNzPVwiYm9yZGVyLTEgYm9yZGVyLWdyYXktMzAwIGJvcmRlci1yb3VuZCBweS0yIHB4LTQgbWItMiBmbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGl0ZW1zLWNlbnRlclwiPlxyXG5cdFx0XHQ8YXJpbC1maWVsZCBsYWJlbFBvcz1cImxlZnRcIiBbbGFiZWxdPVwiZ2V0TGFiZWwobGFuZylcIiBbY29sc109XCJ7IGRlZmF1bHQ6IDEyIH1cIiBbbGFiZWxXaWR0aF09XCIxNVwiIFt2YWx1ZVdpZHRoXT1cIjg1XCI+XHJcblx0XHRcdFx0PGFyaWwtdGV4dCBjbGFzcz1cInZhbHVlLWlucHV0XCIgWyhuZ01vZGVsKV09XCJ0cmFuc2xhdGlvbnNbbGFuZ11cIiAvPlxyXG5cdFx0XHQ8L2FyaWwtZmllbGQ+XHJcblx0XHQ8L2Rpdj5cclxuXHR9XHJcblxyXG5cdDxkaXYgY2xhc3M9XCJtdC00XCI+XHJcblx0XHRAaWYgKG1hbmRhdG9yeUxhbmd1YWdlcy5sZW5ndGggJiYgaXNTYXZlRGlzYWJsZWQoKSkge1xyXG5cdFx0XHQ8ZGl2IGNsYXNzPVwibWItMlwiPlxyXG5cdFx0XHRcdDxwLXRhZyBbdmFsdWVdPVwiZ2V0SW5mb1RleHQoKVwiIHNldmVyaXR5PVwiaW5mb1wiIC8+XHJcblx0XHRcdDwvZGl2PlxyXG5cdFx0fVxyXG5cdDwvZGl2PlxyXG5cclxuXHQ8ZGl2IGNsYXNzPVwibXQtNCBmbGV4IGp1c3RpZnktY29udGVudC1lbmRcIj5cclxuXHRcdDxhcmlsLWJ1dHRvblxyXG5cdFx0XHRjb2xvcj1cImRhbmdlclwiXHJcblx0XHRcdFtvdXRsaW5lZF09XCJ0cnVlXCJcclxuXHRcdFx0W2xhYmVsXT1cInRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdjYW5jZWwnKVwiXHJcblx0XHRcdFtyYWlzZWRdPVwiZmFsc2VcIlxyXG5cdFx0XHRpY29uPVwiVElNRVNcIlxyXG5cdFx0XHQoY2xpY2tFdmVudCk9XCJjbG9zZSgpXCIgLz5cclxuXHRcdDxhcmlsLWJ1dHRvblxyXG5cdFx0XHRbbGFiZWxdPVwidHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ3NhdmUnKVwiXHJcblx0XHRcdGNvbG9yPVwic3VjY2Vzc1wiXHJcblx0XHRcdGljb249XCJDSEVDS1wiXHJcblx0XHRcdGNsYXNzPVwibWwtMlwiXHJcblx0XHRcdChjbGlja0V2ZW50KT1cInNhdmUoKVwiXHJcblx0XHRcdFtkaXNhYmxlZF09XCJpc1NhdmVEaXNhYmxlZCgpXCIgLz5cclxuXHQ8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
@@ -37,6 +37,8 @@ export class EnumPickerComponent extends BaseInputComponent {
37
37
  this.tabindex = input(0);
38
38
  this.items = input();
39
39
  this.isMultiple = input(false);
40
+ // Cross-validation RemoveItem action ile set edilir; verilen selectionKey'leri item listesinden filtreler.
41
+ this.excludedKeys = input([]);
40
42
  this.selectedItemText = '';
41
43
  /** * @description when grouped = true, option item structure { key:string, items:[] } */
42
44
  this.grouped = input(false);
@@ -65,6 +67,13 @@ export class EnumPickerComponent extends BaseInputComponent {
65
67
  if (this.groupName() || this.parentSelectionKey())
66
68
  this.getSelectionItems();
67
69
  });
70
+ // excludedKeys değişince item listesini yeniden filtrele (originalSelectionItems korunur)
71
+ effect(() => {
72
+ this.excludedKeys();
73
+ if (this.originalSelectionItems.length > 0) {
74
+ this.updateSelectionItemsText();
75
+ }
76
+ });
68
77
  this.translocoService.langChanges$.subscribe(() => {
69
78
  if (this.selectionItems() && this.selectionItems()?.length > 0) {
70
79
  this.updateSelectionItemsText();
@@ -105,7 +114,10 @@ export class EnumPickerComponent extends BaseInputComponent {
105
114
  }
106
115
  const currentLang = this.translocoService.getActiveLang();
107
116
  this.selectionItems.set(null);
108
- const mappedItems = this.originalSelectionItems.map((item) => ({
117
+ const excluded = new Set(this.excludedKeys() || []);
118
+ const mappedItems = this.originalSelectionItems
119
+ .filter((item) => !excluded.has(item.selectionKey))
120
+ .map((item) => ({
109
121
  key: item.selectionKey,
110
122
  text: item?.selectionMultiLanguageDisplays?.[currentLang] ?
111
123
  item.selectionMultiLanguageDisplays[currentLang]
@@ -116,9 +128,11 @@ export class EnumPickerComponent extends BaseInputComponent {
116
128
  this.rebuildSelectBoxDataSource(mappedItems);
117
129
  this.filterCurrentValueBySelectionItems();
118
130
  }
119
- // Parent enum (multiple) değiştiğinde child'dan sadece geçersiz key'leri temizler
131
+ // Parent enum (multiple) değiştiğinde veya excludedKeys aktifken
132
+ // form'daki geçersiz key'leri temizler (selectionItems zaten filtrelenmiş haliyle gelir).
120
133
  filterCurrentValueBySelectionItems() {
121
- if (!this.parentSelectionKey())
134
+ const hasExcluded = (this.excludedKeys() || []).length > 0;
135
+ if (!this.parentSelectionKey() && !hasExcluded)
122
136
  return;
123
137
  const currentValue = this.ngControl.control?.value;
124
138
  const validKeys = new Set((this.selectionItems() || []).map((item) => item[this.itemKey()]));
@@ -169,7 +183,7 @@ export class EnumPickerComponent extends BaseInputComponent {
169
183
  }));
170
184
  }
171
185
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: EnumPickerComponent, deps: [{ token: i1.HttpClient }, { token: i2.TranslocoService }], target: i0.ɵɵFactoryTarget.Component }); }
172
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: EnumPickerComponent, isStandalone: true, selector: "enum-picker[ngModel], enum-picker[formControl], enum-picker[formControlName]", inputs: { itemKey: { classPropertyName: "itemKey", publicName: "itemKey", isSignal: true, isRequired: false, transformFunction: null }, itemText: { classPropertyName: "itemText", publicName: "itemText", isSignal: true, isRequired: false, transformFunction: null }, groupName: { classPropertyName: "groupName", publicName: "groupName", isSignal: true, isRequired: false, transformFunction: null }, parentSelectionKey: { classPropertyName: "parentSelectionKey", publicName: "parentSelectionKey", isSignal: true, isRequired: false, transformFunction: null }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: true, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, isMultiple: { classPropertyName: "isMultiple", publicName: "isMultiple", isSignal: true, isRequired: false, transformFunction: null }, grouped: { classPropertyName: "grouped", publicName: "grouped", isSignal: true, isRequired: false, transformFunction: null }, showClearButton: { classPropertyName: "showClearButton", publicName: "showClearButton", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, searchExpr: { classPropertyName: "searchExpr", publicName: "searchExpr", isSignal: true, isRequired: false, transformFunction: null }, acceptCustomValue: { classPropertyName: "acceptCustomValue", publicName: "acceptCustomValue", isSignal: true, isRequired: false, transformFunction: null }, textClampCharacters: { classPropertyName: "textClampCharacters", publicName: "textClampCharacters", isSignal: true, isRequired: false, transformFunction: null }, useVirtualScroll: { classPropertyName: "useVirtualScroll", publicName: "useVirtualScroll", isSignal: true, isRequired: false, transformFunction: null }, virtualScrollItemSize: { classPropertyName: "virtualScrollItemSize", publicName: "virtualScrollItemSize", isSignal: true, isRequired: false, transformFunction: null }, scrollHeight: { classPropertyName: "scrollHeight", publicName: "scrollHeight", isSignal: true, isRequired: false, transformFunction: null }, selectedItemsLabel: { classPropertyName: "selectedItemsLabel", publicName: "selectedItemsLabel", isSignal: true, isRequired: false, transformFunction: null }, appendTo: { classPropertyName: "appendTo", publicName: "appendTo", isSignal: true, isRequired: false, transformFunction: null }, style: { classPropertyName: "style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null }, tooltip: { classPropertyName: "tooltip", publicName: "tooltip", isSignal: true, isRequired: false, transformFunction: null }, tooltipPosition: { classPropertyName: "tooltipPosition", publicName: "tooltipPosition", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onSelectionChanged: "onSelectionChanged" }, providers: [InputErrorMessagePipe], usesInheritance: true, hostDirectives: [{ directive: i3.ValueAccessorDirective }], ngImport: i0, template: "@if (isMultiple()) {\r\n\t<p-multiSelect\r\n\t\t[options]=\"selectionItems() || items() || []\"\r\n\t\t[optionValue]=\"itemKey()\"\r\n\t\t[optionLabel]=\"itemText()\"\r\n\t\t[defaultLabel]=\"placeholder()\"\r\n\t\t[selectedItemsLabel]=\"selectedItemsLabel()\"\r\n\t\t[style]=\"style()\"\r\n\t\t[styleClass]=\"styleClass()\"\r\n\t\t[tooltip]=\"tooltip()\"\r\n\t\t[tooltipPosition]=\"tooltipPosition()\"\r\n\t\t[formControl]=\"ngControl.control\"\r\n\t\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\"\r\n\t\t[maxSelectedLabels]=\"2\"\r\n\t\t[appendTo]=\"appendTo()\"\r\n\t\t[virtualScroll]=\"useVirtualScroll()\"\r\n\t\t[virtualScrollItemSize]=\"virtualScrollItemSize()\"\r\n\t\t[scrollHeight]=\"scrollHeight()\"\r\n\t\t[filter]=\"true\"\r\n\t\t[panelStyle]=\"{ 'max-width': '400px', 'min-width': 'auto' }\">\r\n\t\t<ng-template let-enum pTemplate=\"item\">\r\n\t\t\t<div [pTooltip]=\"enum[itemText()]?.length > textClampCharacters() ? enum[itemText()] : ''\">\r\n\t\t\t\t@if (enum[itemText()]?.length > textClampCharacters()) {\r\n\t\t\t\t\t{{ enum[itemText()].slice(0, textClampCharacters()) }}...\r\n\t\t\t\t} @else {\r\n\t\t\t\t\t{{ enum[itemText()] }}\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t</ng-template>\r\n\t</p-multiSelect>\r\n} @else {\r\n\t<dx-select-box\r\n [dataSource]=\"useVirtualScroll() ? selectBoxDataSource() : (selectionItems() || items() || [])\"\r\n\t\t[valueExpr]=\"itemKey()\"\r\n\t\t[displayExpr]=\"itemText()\"\r\n\t\t[searchEnabled]=\"true\"\r\n\t\t[searchExpr]=\"searchExpr()\"\r\n\t\t[tabIndex]=\"tabindex()\"\r\n\t\t[grouped]=\"grouped()\"\r\n\t\t[placeholder]=\"placeholder()\"\r\n\t\t[showClearButton]=\"showClearButton()\"\r\n\t\t[acceptCustomValue]=\"acceptCustomValue()\"\r\n\t\t(onCustomItemCreating)=\"onCustomItemCreating($event)\"\r\n\t\t[isValid]=\"ngControl?.control?.valid || ngControl?.control?.pristine || ngControl?.control?.disabled || false\"\r\n\t\t[validationError]=\"ngControl?.control?.errors | dxInputErrorMessage: ngControl?.control\"\r\n\t\tvalidationMessagePosition=\"top\"\r\n\t\t[noDataText]=\"translocoService.translate('messages.noDataToDisplay')\"\r\n\t\t[formControl]=\"ngControl.control\"\r\n\t\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\"\r\n (onSelectionChanged)=\"onSelectionChanged.emit($event.selectedItem);setTitle($event.selectedItem)\"\r\n [inputAttr]=\"{ 'title': selectedItemText }\">\r\n\t</dx-select-box>\r\n}\r\n", dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: DxSelectBoxModule }, { kind: "component", type: i5.DxSelectBoxComponent, selector: "dx-select-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "buttons", "customItemCreateEvent", "dataSource", "deferRendering", "disabled", "displayExpr", "displayValue", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "grouped", "groupTemplate", "height", "hint", "hoverStateEnabled", "inputAttr", "isDirty", "isValid", "items", "itemTemplate", "label", "labelMode", "maxLength", "minSearchLength", "name", "noDataText", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "searchEnabled", "searchExpr", "searchMode", "searchTimeout", "selectedItem", "showClearButton", "showDataBeforeSearch", "showDropDownButton", "showSelectionControls", "spellcheck", "stylingMode", "tabIndex", "text", "useItemTextAsTitle", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "valueExpr", "visible", "width", "wrapItemText"], outputs: ["onChange", "onClosed", "onContentReady", "onCopy", "onCustomItemCreating", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onItemClick", "onKeyDown", "onKeyUp", "onOpened", "onOptionChanged", "onPaste", "onSelectionChanged", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "customItemCreateEventChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "displayValueChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "groupedChange", "groupTemplateChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isDirtyChange", "isValidChange", "itemsChange", "itemTemplateChange", "labelChange", "labelModeChange", "maxLengthChange", "minSearchLengthChange", "nameChange", "noDataTextChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "searchEnabledChange", "searchExprChange", "searchModeChange", "searchTimeoutChange", "selectedItemChange", "showClearButtonChange", "showDataBeforeSearchChange", "showDropDownButtonChange", "showSelectionControlsChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useItemTextAsTitleChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "valueExprChange", "visibleChange", "widthChange", "wrapItemTextChange", "onBlur"] }, { kind: "pipe", type: DXInputErrorMessagePipe, name: "dxInputErrorMessage" }, { kind: "ngmodule", type: TranslocoModule }, { kind: "ngmodule", type: MultiSelectModule }, { kind: "component", type: i6.MultiSelect, selector: "p-multiSelect", inputs: ["id", "ariaLabel", "style", "styleClass", "panelStyle", "panelStyleClass", "inputId", "disabled", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "variant", "appendTo", "dataKey", "name", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "filterBy", "scrollHeight", "lazy", "virtualScroll", "loading", "virtualScrollItemSize", "loadingIcon", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "showClear", "autofocus", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "defaultLabel", "placeholder", "options", "filterValue", "itemSize", "selectAll", "focusOnHover", "filterFields", "selectOnFocus", "autoOptionFocus"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad", "onRemove", "onSelectAllChange"] }, { kind: "directive", type: i7.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i8.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }] }); }
186
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: EnumPickerComponent, isStandalone: true, selector: "enum-picker[ngModel], enum-picker[formControl], enum-picker[formControlName]", inputs: { itemKey: { classPropertyName: "itemKey", publicName: "itemKey", isSignal: true, isRequired: false, transformFunction: null }, itemText: { classPropertyName: "itemText", publicName: "itemText", isSignal: true, isRequired: false, transformFunction: null }, groupName: { classPropertyName: "groupName", publicName: "groupName", isSignal: true, isRequired: false, transformFunction: null }, parentSelectionKey: { classPropertyName: "parentSelectionKey", publicName: "parentSelectionKey", isSignal: true, isRequired: false, transformFunction: null }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: true, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, isMultiple: { classPropertyName: "isMultiple", publicName: "isMultiple", isSignal: true, isRequired: false, transformFunction: null }, excludedKeys: { classPropertyName: "excludedKeys", publicName: "excludedKeys", isSignal: true, isRequired: false, transformFunction: null }, grouped: { classPropertyName: "grouped", publicName: "grouped", isSignal: true, isRequired: false, transformFunction: null }, showClearButton: { classPropertyName: "showClearButton", publicName: "showClearButton", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, searchExpr: { classPropertyName: "searchExpr", publicName: "searchExpr", isSignal: true, isRequired: false, transformFunction: null }, acceptCustomValue: { classPropertyName: "acceptCustomValue", publicName: "acceptCustomValue", isSignal: true, isRequired: false, transformFunction: null }, textClampCharacters: { classPropertyName: "textClampCharacters", publicName: "textClampCharacters", isSignal: true, isRequired: false, transformFunction: null }, useVirtualScroll: { classPropertyName: "useVirtualScroll", publicName: "useVirtualScroll", isSignal: true, isRequired: false, transformFunction: null }, virtualScrollItemSize: { classPropertyName: "virtualScrollItemSize", publicName: "virtualScrollItemSize", isSignal: true, isRequired: false, transformFunction: null }, scrollHeight: { classPropertyName: "scrollHeight", publicName: "scrollHeight", isSignal: true, isRequired: false, transformFunction: null }, selectedItemsLabel: { classPropertyName: "selectedItemsLabel", publicName: "selectedItemsLabel", isSignal: true, isRequired: false, transformFunction: null }, appendTo: { classPropertyName: "appendTo", publicName: "appendTo", isSignal: true, isRequired: false, transformFunction: null }, style: { classPropertyName: "style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null }, tooltip: { classPropertyName: "tooltip", publicName: "tooltip", isSignal: true, isRequired: false, transformFunction: null }, tooltipPosition: { classPropertyName: "tooltipPosition", publicName: "tooltipPosition", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onSelectionChanged: "onSelectionChanged" }, providers: [InputErrorMessagePipe], usesInheritance: true, hostDirectives: [{ directive: i3.ValueAccessorDirective }], ngImport: i0, template: "@if (isMultiple()) {\r\n\t<p-multiSelect\r\n\t\t[options]=\"selectionItems() || items() || []\"\r\n\t\t[optionValue]=\"itemKey()\"\r\n\t\t[optionLabel]=\"itemText()\"\r\n\t\t[defaultLabel]=\"placeholder()\"\r\n\t\t[selectedItemsLabel]=\"selectedItemsLabel()\"\r\n\t\t[style]=\"style()\"\r\n\t\t[styleClass]=\"styleClass()\"\r\n\t\t[tooltip]=\"tooltip()\"\r\n\t\t[tooltipPosition]=\"tooltipPosition()\"\r\n\t\t[formControl]=\"ngControl.control\"\r\n\t\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\"\r\n\t\t[maxSelectedLabels]=\"2\"\r\n\t\t[appendTo]=\"appendTo()\"\r\n\t\t[virtualScroll]=\"useVirtualScroll()\"\r\n\t\t[virtualScrollItemSize]=\"virtualScrollItemSize()\"\r\n\t\t[scrollHeight]=\"scrollHeight()\"\r\n\t\t[filter]=\"true\"\r\n\t\t[panelStyle]=\"{ 'max-width': '400px', 'min-width': 'auto' }\">\r\n\t\t<ng-template let-enum pTemplate=\"item\">\r\n\t\t\t<div [pTooltip]=\"enum[itemText()]?.length > textClampCharacters() ? enum[itemText()] : ''\">\r\n\t\t\t\t@if (enum[itemText()]?.length > textClampCharacters()) {\r\n\t\t\t\t\t{{ enum[itemText()].slice(0, textClampCharacters()) }}...\r\n\t\t\t\t} @else {\r\n\t\t\t\t\t{{ enum[itemText()] }}\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t</ng-template>\r\n\t</p-multiSelect>\r\n} @else {\r\n\t<dx-select-box\r\n [dataSource]=\"useVirtualScroll() ? selectBoxDataSource() : (selectionItems() || items() || [])\"\r\n\t\t[valueExpr]=\"itemKey()\"\r\n\t\t[displayExpr]=\"itemText()\"\r\n\t\t[searchEnabled]=\"true\"\r\n\t\t[searchExpr]=\"searchExpr()\"\r\n\t\t[tabIndex]=\"tabindex()\"\r\n\t\t[grouped]=\"grouped()\"\r\n\t\t[placeholder]=\"placeholder()\"\r\n\t\t[showClearButton]=\"showClearButton()\"\r\n\t\t[acceptCustomValue]=\"acceptCustomValue()\"\r\n\t\t(onCustomItemCreating)=\"onCustomItemCreating($event)\"\r\n\t\t[isValid]=\"ngControl?.control?.valid || ngControl?.control?.pristine || ngControl?.control?.disabled || false\"\r\n\t\t[validationError]=\"ngControl?.control?.errors | dxInputErrorMessage: ngControl?.control\"\r\n\t\tvalidationMessagePosition=\"top\"\r\n\t\t[noDataText]=\"translocoService.translate('messages.noDataToDisplay')\"\r\n\t\t[formControl]=\"ngControl.control\"\r\n\t\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\"\r\n (onSelectionChanged)=\"onSelectionChanged.emit($event.selectedItem);setTitle($event.selectedItem)\"\r\n [inputAttr]=\"{ 'title': selectedItemText }\">\r\n\t</dx-select-box>\r\n}\r\n", dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: DxSelectBoxModule }, { kind: "component", type: i5.DxSelectBoxComponent, selector: "dx-select-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "buttons", "customItemCreateEvent", "dataSource", "deferRendering", "disabled", "displayExpr", "displayValue", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "grouped", "groupTemplate", "height", "hint", "hoverStateEnabled", "inputAttr", "isDirty", "isValid", "items", "itemTemplate", "label", "labelMode", "maxLength", "minSearchLength", "name", "noDataText", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "searchEnabled", "searchExpr", "searchMode", "searchTimeout", "selectedItem", "showClearButton", "showDataBeforeSearch", "showDropDownButton", "showSelectionControls", "spellcheck", "stylingMode", "tabIndex", "text", "useItemTextAsTitle", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "valueExpr", "visible", "width", "wrapItemText"], outputs: ["onChange", "onClosed", "onContentReady", "onCopy", "onCustomItemCreating", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onItemClick", "onKeyDown", "onKeyUp", "onOpened", "onOptionChanged", "onPaste", "onSelectionChanged", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "customItemCreateEventChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "displayValueChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "groupedChange", "groupTemplateChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isDirtyChange", "isValidChange", "itemsChange", "itemTemplateChange", "labelChange", "labelModeChange", "maxLengthChange", "minSearchLengthChange", "nameChange", "noDataTextChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "searchEnabledChange", "searchExprChange", "searchModeChange", "searchTimeoutChange", "selectedItemChange", "showClearButtonChange", "showDataBeforeSearchChange", "showDropDownButtonChange", "showSelectionControlsChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useItemTextAsTitleChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "valueExprChange", "visibleChange", "widthChange", "wrapItemTextChange", "onBlur"] }, { kind: "pipe", type: DXInputErrorMessagePipe, name: "dxInputErrorMessage" }, { kind: "ngmodule", type: TranslocoModule }, { kind: "ngmodule", type: MultiSelectModule }, { kind: "component", type: i6.MultiSelect, selector: "p-multiSelect", inputs: ["id", "ariaLabel", "style", "styleClass", "panelStyle", "panelStyleClass", "inputId", "disabled", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "variant", "appendTo", "dataKey", "name", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "filterBy", "scrollHeight", "lazy", "virtualScroll", "loading", "virtualScrollItemSize", "loadingIcon", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "showClear", "autofocus", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "defaultLabel", "placeholder", "options", "filterValue", "itemSize", "selectAll", "focusOnHover", "filterFields", "selectOnFocus", "autoOptionFocus"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad", "onRemove", "onSelectAllChange"] }, { kind: "directive", type: i7.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i8.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }] }); }
173
187
  }
174
188
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: EnumPickerComponent, decorators: [{
175
189
  type: Component,
@@ -177,4 +191,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
177
191
  }], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.TranslocoService }], propDecorators: { onSelectionChanged: [{
178
192
  type: Output
179
193
  }] } });
180
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC91aS1idXNpbmVzcy9lbnVtUGlja2VyL3NyYy9lbnVtLXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3VpLWJ1c2luZXNzL2VudW1QaWNrZXIvc3JjL2VudW0tcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV4RCxPQUFPLEVBQUUsZUFBZSxFQUFvQixNQUFNLG1CQUFtQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdEMsT0FBTyxVQUFVLE1BQU0sNkJBQTZCLENBQUM7QUFDckQsT0FBTyxVQUFVLE1BQU0sNkJBQTZCLENBQUM7QUFFckQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM3QyxPQUFPLEVBQ04sa0JBQWtCLEVBQ2xCLHVCQUF1QixFQUN2QixxQkFBcUIsRUFDckIsc0JBQXNCLEVBQ3RCLE1BQU0sYUFBYSxDQUFDO0FBR3JCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7Ozs7OztBQVVoRCxNQUFNLE9BQU8sbUJBQW9CLFNBQVEsa0JBQWtCO0lB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QixFQUFFLHVCQUF1QixFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxhQUFhLENBQUMsYUFDbEgsQ0FBQyxxQkFBcUIsQ0FBQyxrQkFDbEIsQ0FBQyxzQkFBc0IsQ0FBQzs4R0E0QzlCLGtCQUFrQjtzQkFBM0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBPdXRwdXQsIGVmZmVjdCwgaW5wdXQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5cclxuaW1wb3J0IHsgTXVsdGlTZWxlY3RNb2R1bGUgfSBmcm9tICdwcmltZW5nL211bHRpc2VsZWN0JztcclxuXHJcbmltcG9ydCB7IFRyYW5zbG9jb01vZHVsZSwgVHJhbnNsb2NvU2VydmljZSB9IGZyb20gJ0BuZ25lYXQvdHJhbnNsb2NvJztcclxuaW1wb3J0IHsgRHhTZWxlY3RCb3hNb2R1bGUgfSBmcm9tICdkZXZleHRyZW1lLWFuZ3VsYXIvdWkvc2VsZWN0LWJveCc7XHJcbmltcG9ydCB7IGZpcnN0VmFsdWVGcm9tIH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbXBvcnQgRGF0YVNvdXJjZSBmcm9tICdkZXZleHRyZW1lL2RhdGEvZGF0YV9zb3VyY2UnO1xyXG5pbXBvcnQgQXJyYXlTdG9yZSBmcm9tICdkZXZleHRyZW1lL2RhdGEvYXJyYXlfc3RvcmUnO1xyXG5cclxuaW1wb3J0IHsgQVBJX0NPTkZJR1MgfSBmcm9tICdhcmlsL2Jvb3QvY29uZmlnL2FwaSc7XHJcbmltcG9ydCB7IEFwcHMgfSBmcm9tICdhcmlsL2Jvb3QvY29uZmlnL2FwcHMnO1xyXG5pbXBvcnQge1xyXG5cdEJhc2VJbnB1dENvbXBvbmVudCxcclxuXHREWElucHV0RXJyb3JNZXNzYWdlUGlwZSxcclxuXHRJbnB1dEVycm9yTWVzc2FnZVBpcGUsXHJcblx0VmFsdWVBY2Nlc3NvckRpcmVjdGl2ZVxyXG59IGZyb20gJ2FyaWwvdWkvbGliJztcclxuXHJcbmltcG9ydCB7IFNlbGVjdEJveEl0ZW0sIFNlbGVjdGlvbkdyb3VwRFRPLCBTZWxlY3Rpb25JdGVtLCBTZWxlY3Rpb25SZXF1ZXN0RFRPIH0gZnJvbSAnLi9pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBUb29sdGlwTW9kdWxlIH0gZnJvbSAncHJpbWVuZy90b29sdGlwJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0c2VsZWN0b3I6ICdlbnVtLXBpY2tlcltuZ01vZGVsXSwgZW51bS1waWNrZXJbZm9ybUNvbnRyb2xdLCBlbnVtLXBpY2tlcltmb3JtQ29udHJvbE5hbWVdJyxcclxuXHR0ZW1wbGF0ZVVybDogJy4vZW51bS1waWNrZXIuY29tcG9uZW50Lmh0bWwnLFxyXG5cdGltcG9ydHM6IFtSZWFjdGl2ZUZvcm1zTW9kdWxlLCBEeFNlbGVjdEJveE1vZHVsZSwgRFhJbnB1dEVycm9yTWVzc2FnZVBpcGUsIFRyYW5zbG9jb01vZHVsZSwgTXVsdGlTZWxlY3RNb2R1bGUsIFRvb2x0aXBNb2R1bGVdLFxyXG5cdHByb3ZpZGVyczogW0lucHV0RXJyb3JNZXNzYWdlUGlwZV0sXHJcblx0aG9zdERpcmVjdGl2ZXM6IFtWYWx1ZUFjY2Vzc29yRGlyZWN0aXZlXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRW51bVBpY2tlckNvbXBvbmVudCBleHRlbmRzIEJhc2VJbnB1dENvbXBvbmVudCB7XHJcblx0c2VsZWN0aW9uSXRlbXMgPSBzaWduYWw8U2VsZWN0Qm94SXRlbVtdIHwgbnVsbD4obnVsbCk7XHJcblx0c2VsZWN0Qm94RGF0YVNvdXJjZSA9IHNpZ25hbDxEYXRhU291cmNlIHwgbnVsbD4obnVsbCk7XHJcblx0cHJpdmF0ZSBvcmlnaW5hbFNlbGVjdGlvbkl0ZW1zOiBTZWxlY3Rpb25JdGVtW10gPSBbXTtcclxuXHQvKipcclxuXHQgKiBTaW5nbGUgU2VsZWN0IFN0YXRlc1xyXG5cdCAqL1xyXG5cclxuXHRpdGVtS2V5ID0gaW5wdXQoJ2tleScpO1xyXG5cdGl0ZW1UZXh0ID0gaW5wdXQoJ3RleHQnKTtcclxuXHRncm91cE5hbWUgPSBpbnB1dCgnJyk7XHJcblx0cGFyZW50U2VsZWN0aW9uS2V5ID0gaW5wdXQobnVsbCk7XHJcblx0dGFiaW5kZXggPSBpbnB1dDxudW1iZXI+KDApO1xyXG5cdGl0ZW1zID0gaW5wdXQ8U2VsZWN0Qm94SXRlbVtdPigpO1xyXG5cdGlzTXVsdGlwbGUgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XHJcblx0c2VsZWN0ZWRJdGVtVGV4dCA9ICcnO1xyXG5cdC8qKiAqIEBkZXNjcmlwdGlvbiB3aGVuIGdyb3VwZWQgPSB0cnVlLCBvcHRpb24gaXRlbSBzdHJ1Y3R1cmUgeyBrZXk6c3RyaW5nLCBpdGVtczpbXSB9ICovXHJcblx0Z3JvdXBlZCA9IGlucHV0KGZhbHNlKTtcclxuXHRzaG93Q2xlYXJCdXR0b24gPSBpbnB1dDxib29sZWFuPih0cnVlKTtcclxuXHRwbGFjZWhvbGRlciA9IGlucHV0PHN0cmluZz4oJycpO1xyXG5cdHNlYXJjaEV4cHIgPSBpbnB1dDxzdHJpbmcgfCBzdHJpbmdbXT4oJycpO1xyXG5cdGFjY2VwdEN1c3RvbVZhbHVlID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xyXG5cdHRleHRDbGFtcENoYXJhY3RlcnMgPSBpbnB1dDxudW1iZXI+KDQwKTtcclxuXHJcblx0LyoqXHJcblx0ICogVmlydHVhbCBTY3JvbGwgU3RhdGVzXHJcblx0ICovXHJcblx0dXNlVmlydHVhbFNjcm9sbCA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcclxuXHR2aXJ0dWFsU2Nyb2xsSXRlbVNpemUgPSBpbnB1dDxudW1iZXI+KDMwKTtcclxuXHRzY3JvbGxIZWlnaHQgPSBpbnB1dDxzdHJpbmc+KCczMDBweCcpO1xyXG5cclxuXHQvKipcclxuXHQgKiBNdWx0aSBTZWxlY3QgU3RhdGVzXHJcblx0ICovXHJcblxyXG5cdHNlbGVjdGVkSXRlbXNMYWJlbCA9IGlucHV0PHN0cmluZz4oJ3swfSAgZGXEn2VyIHNlw6dpbGRpJyk7IC8vIGRlZmF1bHQgdmFsdWUgLT4gKHswfSBpdGVtcyBzZWxlY3RlZFxyXG5cdGFwcGVuZFRvID0gaW5wdXQ8c3RyaW5nPignYm9keScpO1xyXG5cdHN0eWxlID0gaW5wdXQ8b2JqZWN0Pih7fSk7XHJcblx0c3R5bGVDbGFzcyA9IGlucHV0PHN0cmluZz4oJycpO1xyXG5cdHRvb2x0aXAgPSBpbnB1dDxzdHJpbmc+KCcnKTtcclxuXHR0b29sdGlwUG9zaXRpb24gPSBpbnB1dDxhbnk+KCd0b3AnKTtcclxuXHJcblx0QE91dHB1dCgpIG9uU2VsZWN0aW9uQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8U2VsZWN0Qm94SXRlbT4oKTtcclxuXHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRwcml2YXRlIHJlYWRvbmx5IGh0dHA6IEh0dHBDbGllbnQsXHJcblx0XHRwdWJsaWMgdHJhbnNsb2NvU2VydmljZTogVHJhbnNsb2NvU2VydmljZVxyXG5cdCkge1xyXG5cdFx0c3VwZXIoKTtcclxuXHRcdGVmZmVjdCgoKSA9PiB7XHJcblx0XHRcdGlmICh0aGlzLmdyb3VwTmFtZSgpIHx8IHRoaXMucGFyZW50U2VsZWN0aW9uS2V5KCkpIHRoaXMuZ2V0U2VsZWN0aW9uSXRlbXMoKTtcclxuXHRcdH0pO1xyXG5cclxuXHRcdHRoaXMudHJhbnNsb2NvU2VydmljZS5sYW5nQ2hhbmdlcyQuc3Vic2NyaWJlKCgpID0+IHtcclxuXHRcdFx0aWYgKHRoaXMuc2VsZWN0aW9uSXRlbXMoKSAmJiAodGhpcy5zZWxlY3Rpb25JdGVtcygpIGFzIFNlbGVjdEJveEl0ZW1bXSk/Lmxlbmd0aCA+IDApIHtcclxuXHRcdFx0XHR0aGlzLnVwZGF0ZVNlbGVjdGlvbkl0ZW1zVGV4dCgpO1xyXG5cdFx0XHR9XHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdHNldFRpdGxlKGV2ZW50PzogYW55KSB7XHJcblx0XHRpZiAoZXZlbnQgJiYgZXZlbnRbdGhpcy5pdGVtVGV4dCgpXS5sZW5ndGggPiAyNSkge1xyXG5cdFx0XHR0aGlzLnNlbGVjdGVkSXRlbVRleHQgPSBldmVudCA/IGV2ZW50W3RoaXMuaXRlbVRleHQoKV0gOiAnJztcclxuXHRcdH1cclxuXHRcdHRoaXMub25TZWxlY3Rpb25DaGFuZ2VkLmVtaXQoZXZlbnQpO1xyXG5cdH1cclxuXHJcblx0YXN5bmMgZ2V0U2VsZWN0aW9uSXRlbXMoKSB7XHJcblx0XHRjb25zdCBwYXlsb2FkOiBQYXJ0aWFsPFNlbGVjdGlvblJlcXVlc3REVE8+ID0ge1xyXG5cdFx0XHRncm91cE5hbWU6IHRoaXMuZ3JvdXBOYW1lKClcclxuXHRcdH07XHJcblxyXG5cdFx0aWYgKEFycmF5LmlzQXJyYXkodGhpcy5wYXJlbnRTZWxlY3Rpb25LZXkoKSkpIHtcclxuXHRcdFx0cGF5bG9hZC5wYXJlbnRTZWxlY3Rpb25LZXlzID0gdGhpcy5wYXJlbnRTZWxlY3Rpb25LZXkoKTtcclxuXHRcdH0gZWxzZSB7XHJcblx0XHRcdHBheWxvYWQucGFyZW50U2VsZWN0aW9uS2V5ID0gdGhpcy5wYXJlbnRTZWxlY3Rpb25LZXkoKTtcclxuXHRcdH1cclxuXHJcblx0XHRjb25zdCBob3N0QXBpID0gQVBJX0NPTkZJR1MuZ2V0RXh0ZXJuYWxBcHBFbmRwb2ludChBcHBzLk1ORyk7XHJcblxyXG5cdFx0dHJ5IHtcclxuXHRcdFx0Y29uc3Qgc2VsZWN0aW9uR3JvdXAgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbShcclxuXHRcdFx0XHR0aGlzLmh0dHAucG9zdDxTZWxlY3Rpb25Hcm91cERUTz4oaG9zdEFwaSArICcvc2VsZWN0aW9uLWdyb3VwL2xvYWQnLCBwYXlsb2FkKVxyXG5cdFx0XHQpO1xyXG5cclxuXHRcdFx0dGhpcy5vcmlnaW5hbFNlbGVjdGlvbkl0ZW1zID0gc2VsZWN0aW9uR3JvdXA/LnNlbGVjdGlvbkl0ZW1zIHx8IFtdO1xyXG5cdFx0fSBjYXRjaCAoZXJyb3IpIHtcclxuXHRcdFx0dGhpcy5vcmlnaW5hbFNlbGVjdGlvbkl0ZW1zID0gW107XHJcblx0XHR9XHJcblx0XHR0aGlzLnVwZGF0ZVNlbGVjdGlvbkl0ZW1zVGV4dCgpO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSB1cGRhdGVTZWxlY3Rpb25JdGVtc1RleHQoKSB7XHJcblx0XHRpZiAoIXRoaXMub3JpZ2luYWxTZWxlY3Rpb25JdGVtcyB8fCB0aGlzLm9yaWdpbmFsU2VsZWN0aW9uSXRlbXMubGVuZ3RoID09PSAwKSB7XHJcblx0XHRcdHRoaXMuc2VsZWN0aW9uSXRlbXMuc2V0KG51bGwpO1xyXG5cdFx0XHR0aGlzLnNlbGVjdEJveERhdGFTb3VyY2Uuc2V0KG51bGwpO1xyXG5cdFx0XHRyZXR1cm47XHJcblx0XHR9XHJcblx0XHRjb25zdCBjdXJyZW50TGFuZyA9IHRoaXMudHJhbnNsb2NvU2VydmljZS5nZXRBY3RpdmVMYW5nKCk7XHJcblxyXG5cdFx0dGhpcy5zZWxlY3Rpb25JdGVtcy5zZXQobnVsbCk7XHJcblxyXG5cdFx0Y29uc3QgbWFwcGVkSXRlbXMgPSB0aGlzLm9yaWdpbmFsU2VsZWN0aW9uSXRlbXMubWFwKChpdGVtOiBTZWxlY3Rpb25JdGVtKSA9PiAoe1xyXG5cdFx0XHRrZXk6IGl0ZW0uc2VsZWN0aW9uS2V5LFxyXG5cdFx0XHR0ZXh0OlxyXG5cdFx0XHRcdGl0ZW0/LnNlbGVjdGlvbk11bHRpTGFuZ3VhZ2VEaXNwbGF5cz8uW2N1cnJlbnRMYW5nXSA/XHJcblx0XHRcdFx0XHRpdGVtLnNlbGVjdGlvbk11bHRpTGFuZ3VhZ2VEaXNwbGF5c1tjdXJyZW50TGFuZ11cclxuXHRcdFx0XHQ6XHRpdGVtLnNlbGVjdGlvbkRpc3BsYXksXHJcblx0XHRcdHBhcmVudFNlbGVjdGlvbktleTogaXRlbS5wYXJlbnRTZWxlY3Rpb25LZXlcclxuXHRcdH0pKTtcclxuXHJcblx0XHR0aGlzLnNlbGVjdGlvbkl0ZW1zLnNldChtYXBwZWRJdGVtcyk7XHJcblx0XHR0aGlzLnJlYnVpbGRTZWxlY3RCb3hEYXRhU291cmNlKG1hcHBlZEl0ZW1zKTtcclxuXHRcdHRoaXMuZmlsdGVyQ3VycmVudFZhbHVlQnlTZWxlY3Rpb25JdGVtcygpO1xyXG5cdH1cclxuXHJcblx0Ly8gUGFyZW50IGVudW0gKG11bHRpcGxlKSBkZcSfacWfdGnEn2luZGUgY2hpbGQnZGFuIHNhZGVjZSBnZcOnZXJzaXoga2V5J2xlcmkgdGVtaXpsZXJcclxuXHRmaWx0ZXJDdXJyZW50VmFsdWVCeVNlbGVjdGlvbkl0ZW1zKCk6IHZvaWQge1xyXG5cdFx0aWYgKCF0aGlzLnBhcmVudFNlbGVjdGlvbktleSgpKSByZXR1cm47XHJcblx0XHRjb25zdCBjdXJyZW50VmFsdWUgPSB0aGlzLm5nQ29udHJvbC5jb250cm9sPy52YWx1ZTtcclxuXHRcdGNvbnN0IHZhbGlkS2V5cyA9IG5ldyBTZXQoXHJcblx0XHRcdCh0aGlzLnNlbGVjdGlvbkl0ZW1zKCkgfHwgW10pLm1hcCgoaXRlbTogYW55KSA9PiBpdGVtW3RoaXMuaXRlbUtleSgpXSlcclxuXHRcdCk7XHJcblxyXG5cdFx0aWYgKHRoaXMuaXNNdWx0aXBsZSgpKSB7XHJcblx0XHRcdC8vIENoaWxkIG11bHRpLXNlbGVjdDogZ2XDp2Vyc2l6IGtleSdsZXJpIGZpbHRyZWxlLCBnZcOnZXJsaWxlcmkgYsSxcmFrXHJcblx0XHRcdGlmICghQXJyYXkuaXNBcnJheShjdXJyZW50VmFsdWUpIHx8IGN1cnJlbnRWYWx1ZS5sZW5ndGggPT09IDApIHJldHVybjtcclxuXHRcdFx0Y29uc3QgZmlsdGVyZWQgPSAoY3VycmVudFZhbHVlIGFzIHN0cmluZ1tdKS5maWx0ZXIoKGtleSkgPT4gdmFsaWRLZXlzLmhhcyhrZXkpKTtcclxuXHRcdFx0aWYgKGZpbHRlcmVkLmxlbmd0aCAhPT0gY3VycmVudFZhbHVlLmxlbmd0aCkge1xyXG5cdFx0XHRcdHRoaXMubmdDb250cm9sLmNvbnRyb2w/LnNldFZhbHVlKGZpbHRlcmVkLCB7IGVtaXRFdmVudDogdHJ1ZSB9KTtcclxuXHRcdFx0fVxyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0aWYgKCFjdXJyZW50VmFsdWUpIHJldHVybjtcclxuXHRcdFx0XHJcblx0XHRcdGlmICghdmFsaWRLZXlzLmhhcyhjdXJyZW50VmFsdWUpKSB7XHJcblx0XHRcdFx0dGhpcy5uZ0NvbnRyb2wuY29udHJvbD8ucmVzZXQobnVsbCwgeyBlbWl0RXZlbnQ6IHRydWUgfSk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdG9uQ3VzdG9tSXRlbUNyZWF0aW5nKGV2ZW50OiBhbnkpIHtcclxuXHRcdGlmICghZXZlbnQudGV4dCkge1xyXG5cdFx0XHRldmVudC5jdXN0b21JdGVtID0gbnVsbDtcclxuXHRcdFx0cmV0dXJuO1xyXG5cdFx0fVxyXG5cdFx0Y29uc3QgbmV3SXRlbSA9IHtcclxuXHRcdFx0W3RoaXMuaXRlbUtleSgpXTogZXZlbnQudGV4dCxcclxuXHRcdFx0W3RoaXMuaXRlbVRleHQoKV06IGV2ZW50LnRleHRcclxuXHRcdH07XHJcblx0XHRjb25zdCBjdXJyZW50SXRlbXMgPSB0aGlzLnNlbGVjdGlvbkl0ZW1zKCkgfHwgW107XHJcblx0XHRjb25zdCB1cGRhdGVkSXRlbXMgPSBbLi4uY3VycmVudEl0ZW1zLCBuZXdJdGVtXTtcclxuXHRcdHRoaXMuc2VsZWN0aW9uSXRlbXMuc2V0KHVwZGF0ZWRJdGVtcyk7XHJcblx0XHR0aGlzLnJlYnVpbGRTZWxlY3RCb3hEYXRhU291cmNlKHVwZGF0ZWRJdGVtcyk7XHJcblx0XHRldmVudC5jdXN0b21JdGVtID0gbmV3SXRlbTtcclxuXHR9XHJcblxyXG5cdFx0cHJpdmF0ZSByZWJ1aWxkU2VsZWN0Qm94RGF0YVNvdXJjZShpdGVtczogU2VsZWN0Qm94SXRlbVtdKTogdm9pZCB7XHJcblx0XHRpZiAoIXRoaXMudXNlVmlydHVhbFNjcm9sbCgpKSB7XHJcblx0XHRcdHRoaXMuc2VsZWN0Qm94RGF0YVNvdXJjZS5zZXQobnVsbCk7XHJcblx0XHRcdHJldHVybjtcclxuXHRcdH1cclxuXHRcdHRoaXMuc2VsZWN0Qm94RGF0YVNvdXJjZS5zZXQoXHJcblx0XHRcdG5ldyBEYXRhU291cmNlKHtcclxuXHRcdFx0XHRzdG9yZTogbmV3IEFycmF5U3RvcmUoe1xyXG5cdFx0XHRcdFx0ZGF0YTogaXRlbXMsXHJcblx0XHRcdFx0XHRrZXk6IHRoaXMuaXRlbUtleSgpXHJcblx0XHRcdFx0fSksXHJcblx0XHRcdFx0cGFnaW5hdGU6IHRydWUsXHJcblx0XHRcdFx0cGFnZVNpemU6IDUwXHJcblx0XHRcdH0pXHJcblx0XHQpO1xyXG5cdH1cclxufVxyXG4iLCJAaWYgKGlzTXVsdGlwbGUoKSkge1xyXG5cdDxwLW11bHRpU2VsZWN0XHJcblx0XHRbb3B0aW9uc109XCJzZWxlY3Rpb25JdGVtcygpIHx8IGl0ZW1zKCkgfHwgW11cIlxyXG5cdFx0W29wdGlvblZhbHVlXT1cIml0ZW1LZXkoKVwiXHJcblx0XHRbb3B0aW9uTGFiZWxdPVwiaXRlbVRleHQoKVwiXHJcblx0XHRbZGVmYXVsdExhYmVsXT1cInBsYWNlaG9sZGVyKClcIlxyXG5cdFx0W3NlbGVjdGVkSXRlbXNMYWJlbF09XCJzZWxlY3RlZEl0ZW1zTGFiZWwoKVwiXHJcblx0XHRbc3R5bGVdPVwic3R5bGUoKVwiXHJcblx0XHRbc3R5bGVDbGFzc109XCJzdHlsZUNsYXNzKClcIlxyXG5cdFx0W3Rvb2x0aXBdPVwidG9vbHRpcCgpXCJcclxuXHRcdFt0b29sdGlwUG9zaXRpb25dPVwidG9vbHRpcFBvc2l0aW9uKClcIlxyXG5cdFx0W2Zvcm1Db250cm9sXT1cIm5nQ29udHJvbC5jb250cm9sXCJcclxuXHRcdChuZ01vZGVsQ2hhbmdlKT1cIm5nQ29udHJvbC52aWV3VG9Nb2RlbFVwZGF0ZSgkZXZlbnQpXCJcclxuXHRcdFttYXhTZWxlY3RlZExhYmVsc109XCIyXCJcclxuXHRcdFthcHBlbmRUb109XCJhcHBlbmRUbygpXCJcclxuXHRcdFt2aXJ0dWFsU2Nyb2xsXT1cInVzZVZpcnR1YWxTY3JvbGwoKVwiXHJcblx0XHRbdmlydHVhbFNjcm9sbEl0ZW1TaXplXT1cInZpcnR1YWxTY3JvbGxJdGVtU2l6ZSgpXCJcclxuXHRcdFtzY3JvbGxIZWlnaHRdPVwic2Nyb2xsSGVpZ2h0KClcIlxyXG5cdFx0W2ZpbHRlcl09XCJ0cnVlXCJcclxuXHRcdFtwYW5lbFN0eWxlXT1cInsgJ21heC13aWR0aCc6ICc0MDBweCcsICdtaW4td2lkdGgnOiAnYXV0bycgfVwiPlxyXG5cdFx0PG5nLXRlbXBsYXRlIGxldC1lbnVtIHBUZW1wbGF0ZT1cIml0ZW1cIj5cclxuXHRcdFx0PGRpdiBbcFRvb2x0aXBdPVwiZW51bVtpdGVtVGV4dCgpXT8ubGVuZ3RoID4gdGV4dENsYW1wQ2hhcmFjdGVycygpID8gZW51bVtpdGVtVGV4dCgpXSA6ICcnXCI+XHJcblx0XHRcdFx0QGlmIChlbnVtW2l0ZW1UZXh0KCldPy5sZW5ndGggPiB0ZXh0Q2xhbXBDaGFyYWN0ZXJzKCkpIHtcclxuXHRcdFx0XHRcdHt7IGVudW1baXRlbVRleHQoKV0uc2xpY2UoMCwgdGV4dENsYW1wQ2hhcmFjdGVycygpKSB9fS4uLlxyXG5cdFx0XHRcdH0gQGVsc2Uge1xyXG5cdFx0XHRcdFx0e3sgZW51bVtpdGVtVGV4dCgpXSB9fVxyXG5cdFx0XHRcdH1cclxuXHRcdFx0PC9kaXY+XHJcblx0XHQ8L25nLXRlbXBsYXRlPlxyXG5cdDwvcC1tdWx0aVNlbGVjdD5cclxufSBAZWxzZSB7XHJcblx0PGR4LXNlbGVjdC1ib3hcclxuICAgIFtkYXRhU291cmNlXT1cInVzZVZpcnR1YWxTY3JvbGwoKSA/IHNlbGVjdEJveERhdGFTb3VyY2UoKSA6IChzZWxlY3Rpb25JdGVtcygpIHx8IGl0ZW1zKCkgfHwgW10pXCJcclxuXHRcdFt2YWx1ZUV4cHJdPVwiaXRlbUtleSgpXCJcclxuXHRcdFtkaXNwbGF5RXhwcl09XCJpdGVtVGV4dCgpXCJcclxuXHRcdFtzZWFyY2hFbmFibGVkXT1cInRydWVcIlxyXG5cdFx0W3NlYXJjaEV4cHJdPVwic2VhcmNoRXhwcigpXCJcclxuXHRcdFt0YWJJbmRleF09XCJ0YWJpbmRleCgpXCJcclxuXHRcdFtncm91cGVkXT1cImdyb3VwZWQoKVwiXHJcblx0XHRbcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXIoKVwiXHJcblx0XHRbc2hvd0NsZWFyQnV0dG9uXT1cInNob3dDbGVhckJ1dHRvbigpXCJcclxuXHRcdFthY2NlcHRDdXN0b21WYWx1ZV09XCJhY2NlcHRDdXN0b21WYWx1ZSgpXCJcclxuXHRcdChvbkN1c3RvbUl0ZW1DcmVhdGluZyk9XCJvbkN1c3RvbUl0ZW1DcmVhdGluZygkZXZlbnQpXCJcclxuXHRcdFtpc1ZhbGlkXT1cIm5nQ29udHJvbD8uY29udHJvbD8udmFsaWQgfHwgbmdDb250cm9sPy5jb250cm9sPy5wcmlzdGluZSB8fCBuZ0NvbnRyb2w/LmNvbnRyb2w/LmRpc2FibGVkIHx8IGZhbHNlXCJcclxuXHRcdFt2YWxpZGF0aW9uRXJyb3JdPVwibmdDb250cm9sPy5jb250cm9sPy5lcnJvcnMgfCBkeElucHV0RXJyb3JNZXNzYWdlOiBuZ0NvbnRyb2w/LmNvbnRyb2xcIlxyXG5cdFx0dmFsaWRhdGlvbk1lc3NhZ2VQb3NpdGlvbj1cInRvcFwiXHJcblx0XHRbbm9EYXRhVGV4dF09XCJ0cmFuc2xvY29TZXJ2aWNlLnRyYW5zbGF0ZSgnbWVzc2FnZXMubm9EYXRhVG9EaXNwbGF5JylcIlxyXG5cdFx0W2Zvcm1Db250cm9sXT1cIm5nQ29udHJvbC5jb250cm9sXCJcclxuXHRcdChuZ01vZGVsQ2hhbmdlKT1cIm5nQ29udHJvbC52aWV3VG9Nb2RlbFVwZGF0ZSgkZXZlbnQpXCJcclxuICAgIChvblNlbGVjdGlvbkNoYW5nZWQpPVwib25TZWxlY3Rpb25DaGFuZ2VkLmVtaXQoJGV2ZW50LnNlbGVjdGVkSXRlbSk7c2V0VGl0bGUoJGV2ZW50LnNlbGVjdGVkSXRlbSlcIlxyXG4gICAgW2lucHV0QXR0cl09XCJ7ICd0aXRsZSc6IHNlbGVjdGVkSXRlbVRleHQgfVwiPlxyXG5cdDwvZHgtc2VsZWN0LWJveD5cclxufVxyXG4iXX0=
194
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bS1waWNrZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC91aS1idXNpbmVzcy9lbnVtUGlja2VyL3NyYy9lbnVtLXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hcmlsL3VpLWJ1c2luZXNzL2VudW1QaWNrZXIvc3JjL2VudW0tcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV4RCxPQUFPLEVBQUUsZUFBZSxFQUFvQixNQUFNLG1CQUFtQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFdEMsT0FBTyxVQUFVLE1BQU0sNkJBQTZCLENBQUM7QUFDckQsT0FBTyxVQUFVLE1BQU0sNkJBQTZCLENBQUM7QUFFckQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUM3QyxPQUFPLEVBQ04sa0JBQWtCLEVBQ2xCLHVCQUF1QixFQUN2QixxQkFBcUIsRUFDckIsc0JBQXNCLEVBQ3RCLE1BQU0sYUFBYSxDQUFDO0FBR3JCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7Ozs7OztBQVVoRCxNQUFNLE9BQU8sbUJBQW9CLFNBQVEsa0JBQWtCO0lB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QUFFLENBQUM7WUFDOUIsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNuQyxPQUFPO1FBQ1IsQ0FBQztRQUNELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQzNCLElBQUksVUFBVSxDQUFDO1lBQ2QsS0FBSyxFQUFFLElBQUksVUFBVSxDQUFDO2dCQUNyQixJQUFJLEVBQUUsS0FBSztnQkFDWCxHQUFHLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRTthQUNuQixDQUFDO1lBQ0YsUUFBUSxFQUFFLElBQUk7WUFDZCxRQUFRLEVBQUUsRUFBRTtTQUNaLENBQUMsQ0FDRixDQUFDO0lBQ0gsQ0FBQzs4R0ExTFcsbUJBQW1CO2tHQUFuQixtQkFBbUIsaTFHQUhwQixDQUFDLHFCQUFxQixDQUFDLDZHQzlCbkMsODJFQXFEQSwyQ0R4QlcsbUJBQW1CLHlUQUFFLGlCQUFpQiw0cUZBQUUsdUJBQXVCLDJEQUFFLGVBQWUsOEJBQUUsaUJBQWlCLDI3Q0FBRSxhQUFhOzsyRkFJaEgsbUJBQW1CO2tCQVIvQixTQUFTO2lDQUNHLElBQUksWUFDTiw4RUFBOEUsV0FFL0UsQ0FBQyxtQkFBbUIsRUFBRSxpQkFBaUIsRUFBRSx1QkFBdUIsRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsYUFBYSxDQUFDLGFBQ2xILENBQUMscUJBQXFCLENBQUMsa0JBQ2xCLENBQUMsc0JBQXNCLENBQUM7OEdBOEM5QixrQkFBa0I7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgT3V0cHV0LCBlZmZlY3QsIGlucHV0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuXHJcbmltcG9ydCB7IE11bHRpU2VsZWN0TW9kdWxlIH0gZnJvbSAncHJpbWVuZy9tdWx0aXNlbGVjdCc7XHJcblxyXG5pbXBvcnQgeyBUcmFuc2xvY29Nb2R1bGUsIFRyYW5zbG9jb1NlcnZpY2UgfSBmcm9tICdAbmduZWF0L3RyYW5zbG9jbyc7XHJcbmltcG9ydCB7IER4U2VsZWN0Qm94TW9kdWxlIH0gZnJvbSAnZGV2ZXh0cmVtZS1hbmd1bGFyL3VpL3NlbGVjdC1ib3gnO1xyXG5pbXBvcnQgeyBmaXJzdFZhbHVlRnJvbSB9IGZyb20gJ3J4anMnO1xyXG5cclxuaW1wb3J0IERhdGFTb3VyY2UgZnJvbSAnZGV2ZXh0cmVtZS9kYXRhL2RhdGFfc291cmNlJztcclxuaW1wb3J0IEFycmF5U3RvcmUgZnJvbSAnZGV2ZXh0cmVtZS9kYXRhL2FycmF5X3N0b3JlJztcclxuXHJcbmltcG9ydCB7IEFQSV9DT05GSUdTIH0gZnJvbSAnYXJpbC9ib290L2NvbmZpZy9hcGknO1xyXG5pbXBvcnQgeyBBcHBzIH0gZnJvbSAnYXJpbC9ib290L2NvbmZpZy9hcHBzJztcclxuaW1wb3J0IHtcclxuXHRCYXNlSW5wdXRDb21wb25lbnQsXHJcblx0RFhJbnB1dEVycm9yTWVzc2FnZVBpcGUsXHJcblx0SW5wdXRFcnJvck1lc3NhZ2VQaXBlLFxyXG5cdFZhbHVlQWNjZXNzb3JEaXJlY3RpdmVcclxufSBmcm9tICdhcmlsL3VpL2xpYic7XHJcblxyXG5pbXBvcnQgeyBTZWxlY3RCb3hJdGVtLCBTZWxlY3Rpb25Hcm91cERUTywgU2VsZWN0aW9uSXRlbSwgU2VsZWN0aW9uUmVxdWVzdERUTyB9IGZyb20gJy4vaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgVG9vbHRpcE1vZHVsZSB9IGZyb20gJ3ByaW1lbmcvdG9vbHRpcCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuXHRzdGFuZGFsb25lOiB0cnVlLFxyXG5cdHNlbGVjdG9yOiAnZW51bS1waWNrZXJbbmdNb2RlbF0sIGVudW0tcGlja2VyW2Zvcm1Db250cm9sXSwgZW51bS1waWNrZXJbZm9ybUNvbnRyb2xOYW1lXScsXHJcblx0dGVtcGxhdGVVcmw6ICcuL2VudW0tcGlja2VyLmNvbXBvbmVudC5odG1sJyxcclxuXHRpbXBvcnRzOiBbUmVhY3RpdmVGb3Jtc01vZHVsZSwgRHhTZWxlY3RCb3hNb2R1bGUsIERYSW5wdXRFcnJvck1lc3NhZ2VQaXBlLCBUcmFuc2xvY29Nb2R1bGUsIE11bHRpU2VsZWN0TW9kdWxlLCBUb29sdGlwTW9kdWxlXSxcclxuXHRwcm92aWRlcnM6IFtJbnB1dEVycm9yTWVzc2FnZVBpcGVdLFxyXG5cdGhvc3REaXJlY3RpdmVzOiBbVmFsdWVBY2Nlc3NvckRpcmVjdGl2ZV1cclxufSlcclxuZXhwb3J0IGNsYXNzIEVudW1QaWNrZXJDb21wb25lbnQgZXh0ZW5kcyBCYXNlSW5wdXRDb21wb25lbnQge1xyXG5cdHNlbGVjdGlvbkl0ZW1zID0gc2lnbmFsPFNlbGVjdEJveEl0ZW1bXSB8IG51bGw+KG51bGwpO1xyXG5cdHNlbGVjdEJveERhdGFTb3VyY2UgPSBzaWduYWw8RGF0YVNvdXJjZSB8IG51bGw+KG51bGwpO1xyXG5cdHByaXZhdGUgb3JpZ2luYWxTZWxlY3Rpb25JdGVtczogU2VsZWN0aW9uSXRlbVtdID0gW107XHJcblx0LyoqXHJcblx0ICogU2luZ2xlIFNlbGVjdCBTdGF0ZXNcclxuXHQgKi9cclxuXHJcblx0aXRlbUtleSA9IGlucHV0KCdrZXknKTtcclxuXHRpdGVtVGV4dCA9IGlucHV0KCd0ZXh0Jyk7XHJcblx0Z3JvdXBOYW1lID0gaW5wdXQoJycpO1xyXG5cdHBhcmVudFNlbGVjdGlvbktleSA9IGlucHV0KG51bGwpO1xyXG5cdHRhYmluZGV4ID0gaW5wdXQ8bnVtYmVyPigwKTtcclxuXHRpdGVtcyA9IGlucHV0PFNlbGVjdEJveEl0ZW1bXT4oKTtcclxuXHRpc011bHRpcGxlID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xyXG5cdC8vIENyb3NzLXZhbGlkYXRpb24gUmVtb3ZlSXRlbSBhY3Rpb24gaWxlIHNldCBlZGlsaXI7IHZlcmlsZW4gc2VsZWN0aW9uS2V5J2xlcmkgaXRlbSBsaXN0ZXNpbmRlbiBmaWx0cmVsZXIuXHJcblx0ZXhjbHVkZWRLZXlzID0gaW5wdXQ8c3RyaW5nW10+KFtdKTtcclxuXHRzZWxlY3RlZEl0ZW1UZXh0ID0gJyc7XHJcblx0LyoqICogQGRlc2NyaXB0aW9uIHdoZW4gZ3JvdXBlZCA9IHRydWUsIG9wdGlvbiBpdGVtIHN0cnVjdHVyZSB7IGtleTpzdHJpbmcsIGl0ZW1zOltdIH0gKi9cclxuXHRncm91cGVkID0gaW5wdXQoZmFsc2UpO1xyXG5cdHNob3dDbGVhckJ1dHRvbiA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xyXG5cdHBsYWNlaG9sZGVyID0gaW5wdXQ8c3RyaW5nPignJyk7XHJcblx0c2VhcmNoRXhwciA9IGlucHV0PHN0cmluZyB8IHN0cmluZ1tdPignJyk7XHJcblx0YWNjZXB0Q3VzdG9tVmFsdWUgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XHJcblx0dGV4dENsYW1wQ2hhcmFjdGVycyA9IGlucHV0PG51bWJlcj4oNDApO1xyXG5cclxuXHQvKipcclxuXHQgKiBWaXJ0dWFsIFNjcm9sbCBTdGF0ZXNcclxuXHQgKi9cclxuXHR1c2VWaXJ0dWFsU2Nyb2xsID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xyXG5cdHZpcnR1YWxTY3JvbGxJdGVtU2l6ZSA9IGlucHV0PG51bWJlcj4oMzApO1xyXG5cdHNjcm9sbEhlaWdodCA9IGlucHV0PHN0cmluZz4oJzMwMHB4Jyk7XHJcblxyXG5cdC8qKlxyXG5cdCAqIE11bHRpIFNlbGVjdCBTdGF0ZXNcclxuXHQgKi9cclxuXHJcblx0c2VsZWN0ZWRJdGVtc0xhYmVsID0gaW5wdXQ8c3RyaW5nPignezB9ICBkZcSfZXIgc2XDp2lsZGknKTsgLy8gZGVmYXVsdCB2YWx1ZSAtPiAoezB9IGl0ZW1zIHNlbGVjdGVkXHJcblx0YXBwZW5kVG8gPSBpbnB1dDxzdHJpbmc+KCdib2R5Jyk7XHJcblx0c3R5bGUgPSBpbnB1dDxvYmplY3Q+KHt9KTtcclxuXHRzdHlsZUNsYXNzID0gaW5wdXQ8c3RyaW5nPignJyk7XHJcblx0dG9vbHRpcCA9IGlucHV0PHN0cmluZz4oJycpO1xyXG5cdHRvb2x0aXBQb3NpdGlvbiA9IGlucHV0PGFueT4oJ3RvcCcpO1xyXG5cclxuXHRAT3V0cHV0KCkgb25TZWxlY3Rpb25DaGFuZ2VkID0gbmV3IEV2ZW50RW1pdHRlcjxTZWxlY3RCb3hJdGVtPigpO1xyXG5cclxuXHRjb25zdHJ1Y3RvcihcclxuXHRcdHByaXZhdGUgcmVhZG9ubHkgaHR0cDogSHR0cENsaWVudCxcclxuXHRcdHB1YmxpYyB0cmFuc2xvY29TZXJ2aWNlOiBUcmFuc2xvY29TZXJ2aWNlXHJcblx0KSB7XHJcblx0XHRzdXBlcigpO1xyXG5cdFx0ZWZmZWN0KCgpID0+IHtcclxuXHRcdFx0aWYgKHRoaXMuZ3JvdXBOYW1lKCkgfHwgdGhpcy5wYXJlbnRTZWxlY3Rpb25LZXkoKSkgdGhpcy5nZXRTZWxlY3Rpb25JdGVtcygpO1xyXG5cdFx0fSk7XHJcblxyXG5cdFx0Ly8gZXhjbHVkZWRLZXlzIGRlxJ9pxZ9pbmNlIGl0ZW0gbGlzdGVzaW5pIHllbmlkZW4gZmlsdHJlbGUgKG9yaWdpbmFsU2VsZWN0aW9uSXRlbXMga29ydW51cilcclxuXHRcdGVmZmVjdCgoKSA9PiB7XHJcblx0XHRcdHRoaXMuZXhjbHVkZWRLZXlzKCk7XHJcblx0XHRcdGlmICh0aGlzLm9yaWdpbmFsU2VsZWN0aW9uSXRlbXMubGVuZ3RoID4gMCkge1xyXG5cdFx0XHRcdHRoaXMudXBkYXRlU2VsZWN0aW9uSXRlbXNUZXh0KCk7XHJcblx0XHRcdH1cclxuXHRcdH0pO1xyXG5cclxuXHRcdHRoaXMudHJhbnNsb2NvU2VydmljZS5sYW5nQ2hhbmdlcyQuc3Vic2NyaWJlKCgpID0+IHtcclxuXHRcdFx0aWYgKHRoaXMuc2VsZWN0aW9uSXRlbXMoKSAmJiAodGhpcy5zZWxlY3Rpb25JdGVtcygpIGFzIFNlbGVjdEJveEl0ZW1bXSk/Lmxlbmd0aCA+IDApIHtcclxuXHRcdFx0XHR0aGlzLnVwZGF0ZVNlbGVjdGlvbkl0ZW1zVGV4dCgpO1xyXG5cdFx0XHR9XHJcblx0XHR9KTtcclxuXHR9XHJcblxyXG5cdHNldFRpdGxlKGV2ZW50PzogYW55KSB7XHJcblx0XHRpZiAoZXZlbnQgJiYgZXZlbnRbdGhpcy5pdGVtVGV4dCgpXS5sZW5ndGggPiAyNSkge1xyXG5cdFx0XHR0aGlzLnNlbGVjdGVkSXRlbVRleHQgPSBldmVudCA/IGV2ZW50W3RoaXMuaXRlbVRleHQoKV0gOiAnJztcclxuXHRcdH1cclxuXHRcdHRoaXMub25TZWxlY3Rpb25DaGFuZ2VkLmVtaXQoZXZlbnQpO1xyXG5cdH1cclxuXHJcblx0YXN5bmMgZ2V0U2VsZWN0aW9uSXRlbXMoKSB7XHJcblx0XHRjb25zdCBwYXlsb2FkOiBQYXJ0aWFsPFNlbGVjdGlvblJlcXVlc3REVE8+ID0ge1xyXG5cdFx0XHRncm91cE5hbWU6IHRoaXMuZ3JvdXBOYW1lKClcclxuXHRcdH07XHJcblxyXG5cdFx0aWYgKEFycmF5LmlzQXJyYXkodGhpcy5wYXJlbnRTZWxlY3Rpb25LZXkoKSkpIHtcclxuXHRcdFx0cGF5bG9hZC5wYXJlbnRTZWxlY3Rpb25LZXlzID0gdGhpcy5wYXJlbnRTZWxlY3Rpb25LZXkoKTtcclxuXHRcdH0gZWxzZSB7XHJcblx0XHRcdHBheWxvYWQucGFyZW50U2VsZWN0aW9uS2V5ID0gdGhpcy5wYXJlbnRTZWxlY3Rpb25LZXkoKTtcclxuXHRcdH1cclxuXHJcblx0XHRjb25zdCBob3N0QXBpID0gQVBJX0NPTkZJR1MuZ2V0RXh0ZXJuYWxBcHBFbmRwb2ludChBcHBzLk1ORyk7XHJcblxyXG5cdFx0dHJ5IHtcclxuXHRcdFx0Y29uc3Qgc2VsZWN0aW9uR3JvdXAgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbShcclxuXHRcdFx0XHR0aGlzLmh0dHAucG9zdDxTZWxlY3Rpb25Hcm91cERUTz4oaG9zdEFwaSArICcvc2VsZWN0aW9uLWdyb3VwL2xvYWQnLCBwYXlsb2FkKVxyXG5cdFx0XHQpO1xyXG5cclxuXHRcdFx0dGhpcy5vcmlnaW5hbFNlbGVjdGlvbkl0ZW1zID0gc2VsZWN0aW9uR3JvdXA/LnNlbGVjdGlvbkl0ZW1zIHx8IFtdO1xyXG5cdFx0fSBjYXRjaCAoZXJyb3IpIHtcclxuXHRcdFx0dGhpcy5vcmlnaW5hbFNlbGVjdGlvbkl0ZW1zID0gW107XHJcblx0XHR9XHJcblx0XHR0aGlzLnVwZGF0ZVNlbGVjdGlvbkl0ZW1zVGV4dCgpO1xyXG5cdH1cclxuXHJcblx0cHJpdmF0ZSB1cGRhdGVTZWxlY3Rpb25JdGVtc1RleHQoKSB7XHJcblx0XHRpZiAoIXRoaXMub3JpZ2luYWxTZWxlY3Rpb25JdGVtcyB8fCB0aGlzLm9yaWdpbmFsU2VsZWN0aW9uSXRlbXMubGVuZ3RoID09PSAwKSB7XHJcblx0XHRcdHRoaXMuc2VsZWN0aW9uSXRlbXMuc2V0KG51bGwpO1xyXG5cdFx0XHR0aGlzLnNlbGVjdEJveERhdGFTb3VyY2Uuc2V0KG51bGwpO1xyXG5cdFx0XHRyZXR1cm47XHJcblx0XHR9XHJcblx0XHRjb25zdCBjdXJyZW50TGFuZyA9IHRoaXMudHJhbnNsb2NvU2VydmljZS5nZXRBY3RpdmVMYW5nKCk7XHJcblxyXG5cdFx0dGhpcy5zZWxlY3Rpb25JdGVtcy5zZXQobnVsbCk7XHJcblxyXG5cdFx0Y29uc3QgZXhjbHVkZWQgPSBuZXcgU2V0KHRoaXMuZXhjbHVkZWRLZXlzKCkgfHwgW10pO1xyXG5cdFx0Y29uc3QgbWFwcGVkSXRlbXMgPSB0aGlzLm9yaWdpbmFsU2VsZWN0aW9uSXRlbXNcclxuXHRcdFx0LmZpbHRlcigoaXRlbTogU2VsZWN0aW9uSXRlbSkgPT4gIWV4Y2x1ZGVkLmhhcyhpdGVtLnNlbGVjdGlvbktleSkpXHJcblx0XHRcdC5tYXAoKGl0ZW06IFNlbGVjdGlvbkl0ZW0pID0+ICh7XHJcblx0XHRcdFx0a2V5OiBpdGVtLnNlbGVjdGlvbktleSxcclxuXHRcdFx0XHR0ZXh0OlxyXG5cdFx0XHRcdFx0aXRlbT8uc2VsZWN0aW9uTXVsdGlMYW5ndWFnZURpc3BsYXlzPy5bY3VycmVudExhbmddID9cclxuXHRcdFx0XHRcdFx0aXRlbS5zZWxlY3Rpb25NdWx0aUxhbmd1YWdlRGlzcGxheXNbY3VycmVudExhbmddXHJcblx0XHRcdFx0XHQ6XHRpdGVtLnNlbGVjdGlvbkRpc3BsYXksXHJcblx0XHRcdFx0cGFyZW50U2VsZWN0aW9uS2V5OiBpdGVtLnBhcmVudFNlbGVjdGlvbktleVxyXG5cdFx0XHR9KSk7XHJcblxyXG5cdFx0dGhpcy5zZWxlY3Rpb25JdGVtcy5zZXQobWFwcGVkSXRlbXMpO1xyXG5cdFx0dGhpcy5yZWJ1aWxkU2VsZWN0Qm94RGF0YVNvdXJjZShtYXBwZWRJdGVtcyk7XHJcblx0XHR0aGlzLmZpbHRlckN1cnJlbnRWYWx1ZUJ5U2VsZWN0aW9uSXRlbXMoKTtcclxuXHR9XHJcblxyXG5cdC8vIFBhcmVudCBlbnVtIChtdWx0aXBsZSkgZGXEn2nFn3RpxJ9pbmRlIHZleWEgZXhjbHVkZWRLZXlzIGFrdGlma2VuXHJcblx0Ly8gZm9ybSdkYWtpIGdlw6dlcnNpeiBrZXknbGVyaSB0ZW1pemxlciAoc2VsZWN0aW9uSXRlbXMgemF0ZW4gZmlsdHJlbGVubWnFnyBoYWxpeWxlIGdlbGlyKS5cclxuXHRmaWx0ZXJDdXJyZW50VmFsdWVCeVNlbGVjdGlvbkl0ZW1zKCk6IHZvaWQge1xyXG5cdFx0Y29uc3QgaGFzRXhjbHVkZWQgPSAodGhpcy5leGNsdWRlZEtleXMoKSB8fCBbXSkubGVuZ3RoID4gMDtcclxuXHRcdGlmICghdGhpcy5wYXJlbnRTZWxlY3Rpb25LZXkoKSAmJiAhaGFzRXhjbHVkZWQpIHJldHVybjtcclxuXHRcdGNvbnN0IGN1cnJlbnRWYWx1ZSA9IHRoaXMubmdDb250cm9sLmNvbnRyb2w/LnZhbHVlO1xyXG5cdFx0Y29uc3QgdmFsaWRLZXlzID0gbmV3IFNldChcclxuXHRcdFx0KHRoaXMuc2VsZWN0aW9uSXRlbXMoKSB8fCBbXSkubWFwKChpdGVtOiBhbnkpID0+IGl0ZW1bdGhpcy5pdGVtS2V5KCldKVxyXG5cdFx0KTtcclxuXHJcblx0XHRpZiAodGhpcy5pc011bHRpcGxlKCkpIHtcclxuXHRcdFx0Ly8gQ2hpbGQgbXVsdGktc2VsZWN0OiBnZcOnZXJzaXoga2V5J2xlcmkgZmlsdHJlbGUsIGdlw6dlcmxpbGVyaSBixLFyYWtcclxuXHRcdFx0aWYgKCFBcnJheS5pc0FycmF5KGN1cnJlbnRWYWx1ZSkgfHwgY3VycmVudFZhbHVlLmxlbmd0aCA9PT0gMCkgcmV0dXJuO1xyXG5cdFx0XHRjb25zdCBmaWx0ZXJlZCA9IChjdXJyZW50VmFsdWUgYXMgc3RyaW5nW10pLmZpbHRlcigoa2V5KSA9PiB2YWxpZEtleXMuaGFzKGtleSkpO1xyXG5cdFx0XHRpZiAoZmlsdGVyZWQubGVuZ3RoICE9PSBjdXJyZW50VmFsdWUubGVuZ3RoKSB7XHJcblx0XHRcdFx0dGhpcy5uZ0NvbnRyb2wuY29udHJvbD8uc2V0VmFsdWUoZmlsdGVyZWQsIHsgZW1pdEV2ZW50OiB0cnVlIH0pO1xyXG5cdFx0XHR9XHJcblx0XHR9IGVsc2Uge1xyXG5cdFx0XHRpZiAoIWN1cnJlbnRWYWx1ZSkgcmV0dXJuO1xyXG5cdFx0XHRcclxuXHRcdFx0aWYgKCF2YWxpZEtleXMuaGFzKGN1cnJlbnRWYWx1ZSkpIHtcclxuXHRcdFx0XHR0aGlzLm5nQ29udHJvbC5jb250cm9sPy5yZXNldChudWxsLCB7IGVtaXRFdmVudDogdHJ1ZSB9KTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0b25DdXN0b21JdGVtQ3JlYXRpbmcoZXZlbnQ6IGFueSkge1xyXG5cdFx0aWYgKCFldmVudC50ZXh0KSB7XHJcblx0XHRcdGV2ZW50LmN1c3RvbUl0ZW0gPSBudWxsO1xyXG5cdFx0XHRyZXR1cm47XHJcblx0XHR9XHJcblx0XHRjb25zdCBuZXdJdGVtID0ge1xyXG5cdFx0XHRbdGhpcy5pdGVtS2V5KCldOiBldmVudC50ZXh0LFxyXG5cdFx0XHRbdGhpcy5pdGVtVGV4dCgpXTogZXZlbnQudGV4dFxyXG5cdFx0fTtcclxuXHRcdGNvbnN0IGN1cnJlbnRJdGVtcyA9IHRoaXMuc2VsZWN0aW9uSXRlbXMoKSB8fCBbXTtcclxuXHRcdGNvbnN0IHVwZGF0ZWRJdGVtcyA9IFsuLi5jdXJyZW50SXRlbXMsIG5ld0l0ZW1dO1xyXG5cdFx0dGhpcy5zZWxlY3Rpb25JdGVtcy5zZXQodXBkYXRlZEl0ZW1zKTtcclxuXHRcdHRoaXMucmVidWlsZFNlbGVjdEJveERhdGFTb3VyY2UodXBkYXRlZEl0ZW1zKTtcclxuXHRcdGV2ZW50LmN1c3RvbUl0ZW0gPSBuZXdJdGVtO1xyXG5cdH1cclxuXHJcblx0XHRwcml2YXRlIHJlYnVpbGRTZWxlY3RCb3hEYXRhU291cmNlKGl0ZW1zOiBTZWxlY3RCb3hJdGVtW10pOiB2b2lkIHtcclxuXHRcdGlmICghdGhpcy51c2VWaXJ0dWFsU2Nyb2xsKCkpIHtcclxuXHRcdFx0dGhpcy5zZWxlY3RCb3hEYXRhU291cmNlLnNldChudWxsKTtcclxuXHRcdFx0cmV0dXJuO1xyXG5cdFx0fVxyXG5cdFx0dGhpcy5zZWxlY3RCb3hEYXRhU291cmNlLnNldChcclxuXHRcdFx0bmV3IERhdGFTb3VyY2Uoe1xyXG5cdFx0XHRcdHN0b3JlOiBuZXcgQXJyYXlTdG9yZSh7XHJcblx0XHRcdFx0XHRkYXRhOiBpdGVtcyxcclxuXHRcdFx0XHRcdGtleTogdGhpcy5pdGVtS2V5KClcclxuXHRcdFx0XHR9KSxcclxuXHRcdFx0XHRwYWdpbmF0ZTogdHJ1ZSxcclxuXHRcdFx0XHRwYWdlU2l6ZTogNTBcclxuXHRcdFx0fSlcclxuXHRcdCk7XHJcblx0fVxyXG59XHJcbiIsIkBpZiAoaXNNdWx0aXBsZSgpKSB7XHJcblx0PHAtbXVsdGlTZWxlY3RcclxuXHRcdFtvcHRpb25zXT1cInNlbGVjdGlvbkl0ZW1zKCkgfHwgaXRlbXMoKSB8fCBbXVwiXHJcblx0XHRbb3B0aW9uVmFsdWVdPVwiaXRlbUtleSgpXCJcclxuXHRcdFtvcHRpb25MYWJlbF09XCJpdGVtVGV4dCgpXCJcclxuXHRcdFtkZWZhdWx0TGFiZWxdPVwicGxhY2Vob2xkZXIoKVwiXHJcblx0XHRbc2VsZWN0ZWRJdGVtc0xhYmVsXT1cInNlbGVjdGVkSXRlbXNMYWJlbCgpXCJcclxuXHRcdFtzdHlsZV09XCJzdHlsZSgpXCJcclxuXHRcdFtzdHlsZUNsYXNzXT1cInN0eWxlQ2xhc3MoKVwiXHJcblx0XHRbdG9vbHRpcF09XCJ0b29sdGlwKClcIlxyXG5cdFx0W3Rvb2x0aXBQb3NpdGlvbl09XCJ0b29sdGlwUG9zaXRpb24oKVwiXHJcblx0XHRbZm9ybUNvbnRyb2xdPVwibmdDb250cm9sLmNvbnRyb2xcIlxyXG5cdFx0KG5nTW9kZWxDaGFuZ2UpPVwibmdDb250cm9sLnZpZXdUb01vZGVsVXBkYXRlKCRldmVudClcIlxyXG5cdFx0W21heFNlbGVjdGVkTGFiZWxzXT1cIjJcIlxyXG5cdFx0W2FwcGVuZFRvXT1cImFwcGVuZFRvKClcIlxyXG5cdFx0W3ZpcnR1YWxTY3JvbGxdPVwidXNlVmlydHVhbFNjcm9sbCgpXCJcclxuXHRcdFt2aXJ0dWFsU2Nyb2xsSXRlbVNpemVdPVwidmlydHVhbFNjcm9sbEl0ZW1TaXplKClcIlxyXG5cdFx0W3Njcm9sbEhlaWdodF09XCJzY3JvbGxIZWlnaHQoKVwiXHJcblx0XHRbZmlsdGVyXT1cInRydWVcIlxyXG5cdFx0W3BhbmVsU3R5bGVdPVwieyAnbWF4LXdpZHRoJzogJzQwMHB4JywgJ21pbi13aWR0aCc6ICdhdXRvJyB9XCI+XHJcblx0XHQ8bmctdGVtcGxhdGUgbGV0LWVudW0gcFRlbXBsYXRlPVwiaXRlbVwiPlxyXG5cdFx0XHQ8ZGl2IFtwVG9vbHRpcF09XCJlbnVtW2l0ZW1UZXh0KCldPy5sZW5ndGggPiB0ZXh0Q2xhbXBDaGFyYWN0ZXJzKCkgPyBlbnVtW2l0ZW1UZXh0KCldIDogJydcIj5cclxuXHRcdFx0XHRAaWYgKGVudW1baXRlbVRleHQoKV0/Lmxlbmd0aCA+IHRleHRDbGFtcENoYXJhY3RlcnMoKSkge1xyXG5cdFx0XHRcdFx0e3sgZW51bVtpdGVtVGV4dCgpXS5zbGljZSgwLCB0ZXh0Q2xhbXBDaGFyYWN0ZXJzKCkpIH19Li4uXHJcblx0XHRcdFx0fSBAZWxzZSB7XHJcblx0XHRcdFx0XHR7eyBlbnVtW2l0ZW1UZXh0KCldIH19XHJcblx0XHRcdFx0fVxyXG5cdFx0XHQ8L2Rpdj5cclxuXHRcdDwvbmctdGVtcGxhdGU+XHJcblx0PC9wLW11bHRpU2VsZWN0PlxyXG59IEBlbHNlIHtcclxuXHQ8ZHgtc2VsZWN0LWJveFxyXG4gICAgW2RhdGFTb3VyY2VdPVwidXNlVmlydHVhbFNjcm9sbCgpID8gc2VsZWN0Qm94RGF0YVNvdXJjZSgpIDogKHNlbGVjdGlvbkl0ZW1zKCkgfHwgaXRlbXMoKSB8fCBbXSlcIlxyXG5cdFx0W3ZhbHVlRXhwcl09XCJpdGVtS2V5KClcIlxyXG5cdFx0W2Rpc3BsYXlFeHByXT1cIml0ZW1UZXh0KClcIlxyXG5cdFx0W3NlYXJjaEVuYWJsZWRdPVwidHJ1ZVwiXHJcblx0XHRbc2VhcmNoRXhwcl09XCJzZWFyY2hFeHByKClcIlxyXG5cdFx0W3RhYkluZGV4XT1cInRhYmluZGV4KClcIlxyXG5cdFx0W2dyb3VwZWRdPVwiZ3JvdXBlZCgpXCJcclxuXHRcdFtwbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlcigpXCJcclxuXHRcdFtzaG93Q2xlYXJCdXR0b25dPVwic2hvd0NsZWFyQnV0dG9uKClcIlxyXG5cdFx0W2FjY2VwdEN1c3RvbVZhbHVlXT1cImFjY2VwdEN1c3RvbVZhbHVlKClcIlxyXG5cdFx0KG9uQ3VzdG9tSXRlbUNyZWF0aW5nKT1cIm9uQ3VzdG9tSXRlbUNyZWF0aW5nKCRldmVudClcIlxyXG5cdFx0W2lzVmFsaWRdPVwibmdDb250cm9sPy5jb250cm9sPy52YWxpZCB8fCBuZ0NvbnRyb2w/LmNvbnRyb2w/LnByaXN0aW5lIHx8IG5nQ29udHJvbD8uY29udHJvbD8uZGlzYWJsZWQgfHwgZmFsc2VcIlxyXG5cdFx0W3ZhbGlkYXRpb25FcnJvcl09XCJuZ0NvbnRyb2w/LmNvbnRyb2w/LmVycm9ycyB8IGR4SW5wdXRFcnJvck1lc3NhZ2U6IG5nQ29udHJvbD8uY29udHJvbFwiXHJcblx0XHR2YWxpZGF0aW9uTWVzc2FnZVBvc2l0aW9uPVwidG9wXCJcclxuXHRcdFtub0RhdGFUZXh0XT1cInRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdtZXNzYWdlcy5ub0RhdGFUb0Rpc3BsYXknKVwiXHJcblx0XHRbZm9ybUNvbnRyb2xdPVwibmdDb250cm9sLmNvbnRyb2xcIlxyXG5cdFx0KG5nTW9kZWxDaGFuZ2UpPVwibmdDb250cm9sLnZpZXdUb01vZGVsVXBkYXRlKCRldmVudClcIlxyXG4gICAgKG9uU2VsZWN0aW9uQ2hhbmdlZCk9XCJvblNlbGVjdGlvbkNoYW5nZWQuZW1pdCgkZXZlbnQuc2VsZWN0ZWRJdGVtKTtzZXRUaXRsZSgkZXZlbnQuc2VsZWN0ZWRJdGVtKVwiXHJcbiAgICBbaW5wdXRBdHRyXT1cInsgJ3RpdGxlJzogc2VsZWN0ZWRJdGVtVGV4dCB9XCI+XHJcblx0PC9keC1zZWxlY3QtYm94PlxyXG59XHJcbiJdfQ==
@@ -1,5 +1,4 @@
1
1
  import { ChangeDetectionStrategy, Component, EventEmitter, Output, input } from '@angular/core';
2
- import { RouterLink } from '@angular/router';
3
2
  import { TagModule } from 'primeng/tag';
4
3
  import { DetailedOverlayPanelComponent } from 'aril/ui-business/detailed-overlay-panel';
5
4
  import { ValueComponent } from 'aril/ui/value';
@@ -23,17 +22,19 @@ export class RefValueComponent {
23
22
  getDisplayValue() {
24
23
  return this.valueDesc() ?? this.assetId().toString();
25
24
  }
26
- getRouterLink() {
27
- const path = this.detailPageUrl() ?? '';
28
- return path.startsWith('/') ? `${path}/${this.assetId()}` : `/${path}/${this.assetId()}`;
25
+ get url() {
26
+ return `${globalThis.location.host}/#/`;
27
+ }
28
+ getFullUrl() {
29
+ return 'http://' + this.url + this.detailPageUrl() + '/' + this.assetId();
29
30
  }
30
31
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RefValueComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
31
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: RefValueComponent, isStandalone: true, selector: "aril-ref-value", inputs: { overlayPanelShow: { classPropertyName: "overlayPanelShow", publicName: "overlayPanelShow", isSignal: true, isRequired: false, transformFunction: null }, assetId: { classPropertyName: "assetId", publicName: "assetId", isSignal: true, isRequired: true, transformFunction: null }, valueDesc: { classPropertyName: "valueDesc", publicName: "valueDesc", isSignal: true, isRequired: true, transformFunction: null }, detailPageUrl: { classPropertyName: "detailPageUrl", publicName: "detailPageUrl", isSignal: true, isRequired: true, transformFunction: null }, target: { classPropertyName: "target", publicName: "target", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clickEvent: "clickEvent" }, ngImport: i0, template: "@if (detailPageUrl() && valueDesc() && assetId()) {\r\n\t@if (overlayPanelShow()) {\r\n\t\t<aril-detailed-oveylay-panel [assetId]=\"assetId()\">\r\n\t\t\t<a [routerLink]=\"getRouterLink()\" [target]=\"target()\">\r\n\t\t\t\t<p-tag [value]=\"getDisplayValue()\" [style]=\"tagStyle\" />\r\n\t\t\t</a>\r\n\t\t</aril-detailed-oveylay-panel>\r\n\t} @else {\r\n\t\t<a [routerLink]=\"getRouterLink()\" [target]=\"target()\">\r\n\t\t\t<p-tag [value]=\"getDisplayValue()\" [style]=\"tagStyle\" />\r\n\t\t</a>\r\n\t}\r\n} @else if (valueDesc() || assetId()) {\r\n\t@if (overlayPanelShow()) {\r\n\t\t<aril-detailed-oveylay-panel [assetId]=\"assetId()\">\r\n\t\t\t<p-tag\r\n\t\t\t\t[value]=\"getDisplayValue()\"\r\n\t\t\t\t[style]=\"tagStyle\"\r\n\t\t\t\t(click)=\"clickEvent.emit({ assetId: assetId(), valueDesc: valueDesc() })\" />\r\n\t\t</aril-detailed-oveylay-panel>\r\n\t} @else {\r\n\t\t<p-tag\r\n\t\t\t[value]=\"getDisplayValue()\"\r\n\t\t\t[style]=\"tagStyle\"\r\n\t\t\t(click)=\"clickEvent.emit({ assetId: assetId(), valueDesc: valueDesc() })\" />\r\n\t}\r\n} @else {\r\n\t<aril-value type=\"text\" [model]=\"null\" />\r\n}\r\n", dependencies: [{ kind: "component", type: ValueComponent, selector: "aril-value", inputs: ["model", "type", "format", "isClickable", "groupName", "parentSelectionKey", "isTextClamp", "textClampCharacters", "style", "copyable", "shouldShowCopyForClampedText", "arrayTypeDisplayName", "arrayTypeMaxBadgeCount", "bigDecimalRoundingMode", "bigDecimalScale"] }, { kind: "component", type: DetailedOverlayPanelComponent, selector: "aril-detailed-oveylay-panel", inputs: ["assetId", "style", "styleClass", "columns"] }, { kind: "ngmodule", type: TagModule }, { kind: "component", type: i1.Tag, selector: "p-tag", inputs: ["style", "styleClass", "severity", "value", "icon", "rounded"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
32
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: RefValueComponent, isStandalone: true, selector: "aril-ref-value", inputs: { overlayPanelShow: { classPropertyName: "overlayPanelShow", publicName: "overlayPanelShow", isSignal: true, isRequired: false, transformFunction: null }, assetId: { classPropertyName: "assetId", publicName: "assetId", isSignal: true, isRequired: true, transformFunction: null }, valueDesc: { classPropertyName: "valueDesc", publicName: "valueDesc", isSignal: true, isRequired: true, transformFunction: null }, detailPageUrl: { classPropertyName: "detailPageUrl", publicName: "detailPageUrl", isSignal: true, isRequired: true, transformFunction: null }, target: { classPropertyName: "target", publicName: "target", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { clickEvent: "clickEvent" }, ngImport: i0, template: "@if (detailPageUrl() && valueDesc() && assetId()) {\r\n\t@if (overlayPanelShow()) {\r\n\t\t<aril-detailed-oveylay-panel [assetId]=\"assetId()\">\r\n\t\t\t<a [href]=\"getFullUrl()\" [target]=\"target()\">\r\n\t\t\t\t<p-tag [value]=\"getDisplayValue()\" [style]=\"tagStyle\" />\r\n\t\t\t</a>\r\n\t\t</aril-detailed-oveylay-panel>\r\n\t} @else {\r\n\t\t<a [href]=\"getFullUrl()\" [target]=\"target()\">\r\n\t\t\t<p-tag [value]=\"getDisplayValue()\" [style]=\"tagStyle\" />\r\n\t\t</a>\r\n\t}\r\n} @else if (valueDesc() || assetId()) {\r\n\t@if (overlayPanelShow()) {\r\n\t\t<aril-detailed-oveylay-panel [assetId]=\"assetId()\">\r\n\t\t\t<p-tag\r\n\t\t\t\t[value]=\"getDisplayValue()\"\r\n\t\t\t\t[style]=\"tagStyle\"\r\n\t\t\t\t(click)=\"clickEvent.emit({ assetId: assetId(), valueDesc: valueDesc() })\" />\r\n\t\t</aril-detailed-oveylay-panel>\r\n\t} @else {\r\n\t\t<p-tag\r\n\t\t\t[value]=\"getDisplayValue()\"\r\n\t\t\t[style]=\"tagStyle\"\r\n\t\t\t(click)=\"clickEvent.emit({ assetId: assetId(), valueDesc: valueDesc() })\" />\r\n\t}\r\n} @else {\r\n\t<aril-value type=\"text\" [model]=\"null\" />\r\n}\r\n", dependencies: [{ kind: "component", type: ValueComponent, selector: "aril-value", inputs: ["model", "type", "format", "isClickable", "groupName", "parentSelectionKey", "isTextClamp", "textClampCharacters", "style", "copyable", "shouldShowCopyForClampedText", "arrayTypeDisplayName", "arrayTypeMaxBadgeCount", "bigDecimalRoundingMode", "bigDecimalScale"] }, { kind: "component", type: DetailedOverlayPanelComponent, selector: "aril-detailed-oveylay-panel", inputs: ["assetId", "style", "styleClass", "columns"] }, { kind: "ngmodule", type: TagModule }, { kind: "component", type: i1.Tag, selector: "p-tag", inputs: ["style", "styleClass", "severity", "value", "icon", "rounded"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
32
33
  }
33
34
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: RefValueComponent, decorators: [{
34
35
  type: Component,
35
- args: [{ standalone: true, selector: 'aril-ref-value', imports: [ValueComponent, DetailedOverlayPanelComponent, TagModule, RouterLink], changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (detailPageUrl() && valueDesc() && assetId()) {\r\n\t@if (overlayPanelShow()) {\r\n\t\t<aril-detailed-oveylay-panel [assetId]=\"assetId()\">\r\n\t\t\t<a [routerLink]=\"getRouterLink()\" [target]=\"target()\">\r\n\t\t\t\t<p-tag [value]=\"getDisplayValue()\" [style]=\"tagStyle\" />\r\n\t\t\t</a>\r\n\t\t</aril-detailed-oveylay-panel>\r\n\t} @else {\r\n\t\t<a [routerLink]=\"getRouterLink()\" [target]=\"target()\">\r\n\t\t\t<p-tag [value]=\"getDisplayValue()\" [style]=\"tagStyle\" />\r\n\t\t</a>\r\n\t}\r\n} @else if (valueDesc() || assetId()) {\r\n\t@if (overlayPanelShow()) {\r\n\t\t<aril-detailed-oveylay-panel [assetId]=\"assetId()\">\r\n\t\t\t<p-tag\r\n\t\t\t\t[value]=\"getDisplayValue()\"\r\n\t\t\t\t[style]=\"tagStyle\"\r\n\t\t\t\t(click)=\"clickEvent.emit({ assetId: assetId(), valueDesc: valueDesc() })\" />\r\n\t\t</aril-detailed-oveylay-panel>\r\n\t} @else {\r\n\t\t<p-tag\r\n\t\t\t[value]=\"getDisplayValue()\"\r\n\t\t\t[style]=\"tagStyle\"\r\n\t\t\t(click)=\"clickEvent.emit({ assetId: assetId(), valueDesc: valueDesc() })\" />\r\n\t}\r\n} @else {\r\n\t<aril-value type=\"text\" [model]=\"null\" />\r\n}\r\n" }]
36
+ args: [{ standalone: true, selector: 'aril-ref-value', imports: [ValueComponent, DetailedOverlayPanelComponent, TagModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "@if (detailPageUrl() && valueDesc() && assetId()) {\r\n\t@if (overlayPanelShow()) {\r\n\t\t<aril-detailed-oveylay-panel [assetId]=\"assetId()\">\r\n\t\t\t<a [href]=\"getFullUrl()\" [target]=\"target()\">\r\n\t\t\t\t<p-tag [value]=\"getDisplayValue()\" [style]=\"tagStyle\" />\r\n\t\t\t</a>\r\n\t\t</aril-detailed-oveylay-panel>\r\n\t} @else {\r\n\t\t<a [href]=\"getFullUrl()\" [target]=\"target()\">\r\n\t\t\t<p-tag [value]=\"getDisplayValue()\" [style]=\"tagStyle\" />\r\n\t\t</a>\r\n\t}\r\n} @else if (valueDesc() || assetId()) {\r\n\t@if (overlayPanelShow()) {\r\n\t\t<aril-detailed-oveylay-panel [assetId]=\"assetId()\">\r\n\t\t\t<p-tag\r\n\t\t\t\t[value]=\"getDisplayValue()\"\r\n\t\t\t\t[style]=\"tagStyle\"\r\n\t\t\t\t(click)=\"clickEvent.emit({ assetId: assetId(), valueDesc: valueDesc() })\" />\r\n\t\t</aril-detailed-oveylay-panel>\r\n\t} @else {\r\n\t\t<p-tag\r\n\t\t\t[value]=\"getDisplayValue()\"\r\n\t\t\t[style]=\"tagStyle\"\r\n\t\t\t(click)=\"clickEvent.emit({ assetId: assetId(), valueDesc: valueDesc() })\" />\r\n\t}\r\n} @else {\r\n\t<aril-value type=\"text\" [model]=\"null\" />\r\n}\r\n" }]
36
37
  }], propDecorators: { clickEvent: [{
37
38
  type: Output
38
39
  }] } });
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmLXZhbHVlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvdWktYnVzaW5lc3MvcmVmLXZhbHVlL3NyYy9yZWYtdmFsdWUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC91aS1idXNpbmVzcy9yZWYtdmFsdWUvc3JjL3JlZi12YWx1ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hHLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUU3QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBRXhDLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQVMvQyxNQUFNLE9BQU8saUJBQWlCO0lBUDlCO1FBUUMscUJBQWdCLEdBQUcsS0FBSyxDQUFVLElBQUksQ0FBQyxDQUFDO1FBQ3hDLFlBQU8sR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFVLENBQUM7UUFDbkMsY0FBUyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQVUsQ0FBQztRQUNyQyxrQkFBYSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXNCLENBQUM7UUFDckQsV0FBTSxHQUFHLEtBQUssQ0FBUyxPQUFPLENBQUMsQ0FBQztRQUV0QixlQUFVLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUV2QixhQUFRLEdBQUc7WUFDN0IsVUFBVSxFQUFFLFNBQVM7WUFDckIsS0FBSyxFQUFFLGNBQWM7WUFDckIsV0FBVyxFQUFFLFFBQVE7WUFDckIsaUJBQWlCLEVBQUUsV0FBVztTQUM5QixDQUFDO0tBVUY7SUFSVSxlQUFlO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLFNBQVMsRUFBRSxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUN0RCxDQUFDO0lBRVMsYUFBYTtRQUN0QixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLElBQUksRUFBRSxDQUFDO1FBQ3hDLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxJQUFJLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDO0lBQzFGLENBQUM7OEdBdkJXLGlCQUFpQjtrR0FBakIsaUJBQWlCLGd5QkNmOUIsdW1DQTZCQSw0Q0RqQlcsY0FBYyx3VUFBRSw2QkFBNkIsOEhBQUUsU0FBUyxnS0FBRSxVQUFVOzsyRkFHbEUsaUJBQWlCO2tCQVA3QixTQUFTO2lDQUNHLElBQUksWUFDTixnQkFBZ0IsV0FFakIsQ0FBQyxjQUFjLEVBQUUsNkJBQTZCLEVBQUUsU0FBUyxFQUFFLFVBQVUsQ0FBQyxtQkFDOUQsdUJBQXVCLENBQUMsTUFBTTs4QkFTckMsVUFBVTtzQkFBbkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgT3V0cHV0LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSb3V0ZXJMaW5rIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuXHJcbmltcG9ydCB7IFRhZ01vZHVsZSB9IGZyb20gJ3ByaW1lbmcvdGFnJztcclxuXHJcbmltcG9ydCB7IERldGFpbGVkT3ZlcmxheVBhbmVsQ29tcG9uZW50IH0gZnJvbSAnYXJpbC91aS1idXNpbmVzcy9kZXRhaWxlZC1vdmVybGF5LXBhbmVsJztcclxuaW1wb3J0IHsgVmFsdWVDb21wb25lbnQgfSBmcm9tICdhcmlsL3VpL3ZhbHVlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0c2VsZWN0b3I6ICdhcmlsLXJlZi12YWx1ZScsXHJcblx0dGVtcGxhdGVVcmw6ICcuL3JlZi12YWx1ZS5jb21wb25lbnQuaHRtbCcsXHJcblx0aW1wb3J0czogW1ZhbHVlQ29tcG9uZW50LCBEZXRhaWxlZE92ZXJsYXlQYW5lbENvbXBvbmVudCwgVGFnTW9kdWxlLCBSb3V0ZXJMaW5rXSxcclxuXHRjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUmVmVmFsdWVDb21wb25lbnQge1xyXG5cdG92ZXJsYXlQYW5lbFNob3cgPSBpbnB1dDxib29sZWFuPih0cnVlKTtcclxuXHRhc3NldElkID0gaW5wdXQucmVxdWlyZWQ8bnVtYmVyPigpO1xyXG5cdHZhbHVlRGVzYyA9IGlucHV0LnJlcXVpcmVkPHN0cmluZz4oKTtcclxuXHRkZXRhaWxQYWdlVXJsID0gaW5wdXQucmVxdWlyZWQ8c3RyaW5nIHwgdW5kZWZpbmVkPigpO1xyXG5cdHRhcmdldCA9IGlucHV0PHN0cmluZz4oJ19zZWxmJyk7XHJcblxyXG5cdEBPdXRwdXQoKSBjbGlja0V2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuXHRwcm90ZWN0ZWQgcmVhZG9ubHkgdGFnU3R5bGUgPSB7XHJcblx0XHRiYWNrZ3JvdW5kOiAnI2YwZjBmMCcsXHJcblx0XHRjb2xvcjogJy13ZWJraXQtbGluaycsXHJcblx0XHQnZm9udC1zaXplJzogJzAuOXJlbScsXHJcblx0XHQndGV4dC1kZWNvcmF0aW9uJzogJ3VuZGVybGluZSdcclxuXHR9O1xyXG5cclxuXHRwcm90ZWN0ZWQgZ2V0RGlzcGxheVZhbHVlKCk6IHN0cmluZyB7XHJcblx0XHRyZXR1cm4gdGhpcy52YWx1ZURlc2MoKSA/PyB0aGlzLmFzc2V0SWQoKS50b1N0cmluZygpO1xyXG5cdH1cclxuXHJcblx0cHJvdGVjdGVkIGdldFJvdXRlckxpbmsoKTogc3RyaW5nIHtcclxuXHRcdGNvbnN0IHBhdGggPSB0aGlzLmRldGFpbFBhZ2VVcmwoKSA/PyAnJztcclxuXHRcdHJldHVybiBwYXRoLnN0YXJ0c1dpdGgoJy8nKSA/IGAke3BhdGh9LyR7dGhpcy5hc3NldElkKCl9YCA6IGAvJHtwYXRofS8ke3RoaXMuYXNzZXRJZCgpfWA7XHJcblx0fVxyXG59XHJcbiIsIkBpZiAoZGV0YWlsUGFnZVVybCgpICYmIHZhbHVlRGVzYygpICYmIGFzc2V0SWQoKSkge1xyXG5cdEBpZiAob3ZlcmxheVBhbmVsU2hvdygpKSB7XHJcblx0XHQ8YXJpbC1kZXRhaWxlZC1vdmV5bGF5LXBhbmVsIFthc3NldElkXT1cImFzc2V0SWQoKVwiPlxyXG5cdFx0XHQ8YSBbcm91dGVyTGlua109XCJnZXRSb3V0ZXJMaW5rKClcIiBbdGFyZ2V0XT1cInRhcmdldCgpXCI+XHJcblx0XHRcdFx0PHAtdGFnIFt2YWx1ZV09XCJnZXREaXNwbGF5VmFsdWUoKVwiIFtzdHlsZV09XCJ0YWdTdHlsZVwiIC8+XHJcblx0XHRcdDwvYT5cclxuXHRcdDwvYXJpbC1kZXRhaWxlZC1vdmV5bGF5LXBhbmVsPlxyXG5cdH0gQGVsc2Uge1xyXG5cdFx0PGEgW3JvdXRlckxpbmtdPVwiZ2V0Um91dGVyTGluaygpXCIgW3RhcmdldF09XCJ0YXJnZXQoKVwiPlxyXG5cdFx0XHQ8cC10YWcgW3ZhbHVlXT1cImdldERpc3BsYXlWYWx1ZSgpXCIgW3N0eWxlXT1cInRhZ1N0eWxlXCIgLz5cclxuXHRcdDwvYT5cclxuXHR9XHJcbn0gQGVsc2UgaWYgKHZhbHVlRGVzYygpIHx8IGFzc2V0SWQoKSkge1xyXG5cdEBpZiAob3ZlcmxheVBhbmVsU2hvdygpKSB7XHJcblx0XHQ8YXJpbC1kZXRhaWxlZC1vdmV5bGF5LXBhbmVsIFthc3NldElkXT1cImFzc2V0SWQoKVwiPlxyXG5cdFx0XHQ8cC10YWdcclxuXHRcdFx0XHRbdmFsdWVdPVwiZ2V0RGlzcGxheVZhbHVlKClcIlxyXG5cdFx0XHRcdFtzdHlsZV09XCJ0YWdTdHlsZVwiXHJcblx0XHRcdFx0KGNsaWNrKT1cImNsaWNrRXZlbnQuZW1pdCh7IGFzc2V0SWQ6IGFzc2V0SWQoKSwgdmFsdWVEZXNjOiB2YWx1ZURlc2MoKSB9KVwiIC8+XHJcblx0XHQ8L2FyaWwtZGV0YWlsZWQtb3ZleWxheS1wYW5lbD5cclxuXHR9IEBlbHNlIHtcclxuXHRcdDxwLXRhZ1xyXG5cdFx0XHRbdmFsdWVdPVwiZ2V0RGlzcGxheVZhbHVlKClcIlxyXG5cdFx0XHRbc3R5bGVdPVwidGFnU3R5bGVcIlxyXG5cdFx0XHQoY2xpY2spPVwiY2xpY2tFdmVudC5lbWl0KHsgYXNzZXRJZDogYXNzZXRJZCgpLCB2YWx1ZURlc2M6IHZhbHVlRGVzYygpIH0pXCIgLz5cclxuXHR9XHJcbn0gQGVsc2Uge1xyXG5cdDxhcmlsLXZhbHVlIHR5cGU9XCJ0ZXh0XCIgW21vZGVsXT1cIm51bGxcIiAvPlxyXG59XHJcbiJdfQ==
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmLXZhbHVlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvdWktYnVzaW5lc3MvcmVmLXZhbHVlL3NyYy9yZWYtdmFsdWUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYXJpbC91aS1idXNpbmVzcy9yZWYtdmFsdWUvc3JjL3JlZi12YWx1ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWhHLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFeEMsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDeEYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBUy9DLE1BQU0sT0FBTyxpQkFBaUI7SUFQOUI7UUFRQyxxQkFBZ0IsR0FBRyxLQUFLLENBQVUsSUFBSSxDQUFDLENBQUM7UUFDeEMsWUFBTyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQVUsQ0FBQztRQUNuQyxjQUFTLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBVSxDQUFDO1FBQ3JDLGtCQUFhLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBc0IsQ0FBQztRQUNyRCxXQUFNLEdBQUcsS0FBSyxDQUFTLE9BQU8sQ0FBQyxDQUFDO1FBRXRCLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRXZCLGFBQVEsR0FBRztZQUM3QixVQUFVLEVBQUUsU0FBUztZQUNyQixLQUFLLEVBQUUsY0FBYztZQUNyQixXQUFXLEVBQUUsUUFBUTtZQUNyQixpQkFBaUIsRUFBRSxXQUFXO1NBQzlCLENBQUM7S0FlRjtJQWJVLGVBQWU7UUFDeEIsT0FBTyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3RELENBQUM7SUFFRCxJQUFJLEdBQUc7UUFDTixPQUFPLEdBQUcsVUFBVSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEtBQUssQ0FBQztJQUN6QyxDQUFDO0lBRVMsVUFBVTtRQUNuQixPQUFPLFNBQVMsR0FBRyxJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxhQUFhLEVBQUUsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBRTNFLENBQUM7OEdBM0JXLGlCQUFpQjtrR0FBakIsaUJBQWlCLGd5QkNkOUIscWxDQTZCQSw0Q0RsQlcsY0FBYyx3VUFBRSw2QkFBNkIsOEhBQUUsU0FBUzs7MkZBR3RELGlCQUFpQjtrQkFQN0IsU0FBUztpQ0FDRyxJQUFJLFlBQ04sZ0JBQWdCLFdBRWpCLENBQUMsY0FBYyxFQUFFLDZCQUE2QixFQUFFLFNBQVMsQ0FBQyxtQkFDbEQsdUJBQXVCLENBQUMsTUFBTTs4QkFTckMsVUFBVTtzQkFBbkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgT3V0cHV0LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgVGFnTW9kdWxlIH0gZnJvbSAncHJpbWVuZy90YWcnO1xyXG5cclxuaW1wb3J0IHsgRGV0YWlsZWRPdmVybGF5UGFuZWxDb21wb25lbnQgfSBmcm9tICdhcmlsL3VpLWJ1c2luZXNzL2RldGFpbGVkLW92ZXJsYXktcGFuZWwnO1xyXG5pbXBvcnQgeyBWYWx1ZUNvbXBvbmVudCB9IGZyb20gJ2FyaWwvdWkvdmFsdWUnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcblx0c3RhbmRhbG9uZTogdHJ1ZSxcclxuXHRzZWxlY3RvcjogJ2FyaWwtcmVmLXZhbHVlJyxcclxuXHR0ZW1wbGF0ZVVybDogJy4vcmVmLXZhbHVlLmNvbXBvbmVudC5odG1sJyxcclxuXHRpbXBvcnRzOiBbVmFsdWVDb21wb25lbnQsIERldGFpbGVkT3ZlcmxheVBhbmVsQ29tcG9uZW50LCBUYWdNb2R1bGVdLFxyXG5cdGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSZWZWYWx1ZUNvbXBvbmVudCB7XHJcblx0b3ZlcmxheVBhbmVsU2hvdyA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xyXG5cdGFzc2V0SWQgPSBpbnB1dC5yZXF1aXJlZDxudW1iZXI+KCk7XHJcblx0dmFsdWVEZXNjID0gaW5wdXQucmVxdWlyZWQ8c3RyaW5nPigpO1xyXG5cdGRldGFpbFBhZ2VVcmwgPSBpbnB1dC5yZXF1aXJlZDxzdHJpbmcgfCB1bmRlZmluZWQ+KCk7XHJcblx0dGFyZ2V0ID0gaW5wdXQ8c3RyaW5nPignX3NlbGYnKTtcclxuXHJcblx0QE91dHB1dCgpIGNsaWNrRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG5cdHByb3RlY3RlZCByZWFkb25seSB0YWdTdHlsZSA9IHtcclxuXHRcdGJhY2tncm91bmQ6ICcjZjBmMGYwJyxcclxuXHRcdGNvbG9yOiAnLXdlYmtpdC1saW5rJyxcclxuXHRcdCdmb250LXNpemUnOiAnMC45cmVtJyxcclxuXHRcdCd0ZXh0LWRlY29yYXRpb24nOiAndW5kZXJsaW5lJ1xyXG5cdH07XHJcblxyXG5cdHByb3RlY3RlZCBnZXREaXNwbGF5VmFsdWUoKTogc3RyaW5nIHtcclxuXHRcdHJldHVybiB0aGlzLnZhbHVlRGVzYygpID8/IHRoaXMuYXNzZXRJZCgpLnRvU3RyaW5nKCk7XHJcblx0fVxyXG5cclxuXHRnZXQgdXJsKCk6IHN0cmluZyB7XHJcblx0XHRyZXR1cm4gYCR7Z2xvYmFsVGhpcy5sb2NhdGlvbi5ob3N0fS8jL2A7XHJcblx0fVxyXG5cclxuXHRwcm90ZWN0ZWQgZ2V0RnVsbFVybCgpOiBzdHJpbmcge1xyXG5cdFx0cmV0dXJuICdodHRwOi8vJyArIHRoaXMudXJsICsgdGhpcy5kZXRhaWxQYWdlVXJsKCkgKyAnLycgKyB0aGlzLmFzc2V0SWQoKTtcclxuXHJcblx0fVxyXG5cclxufVxyXG4iLCJAaWYgKGRldGFpbFBhZ2VVcmwoKSAmJiB2YWx1ZURlc2MoKSAmJiBhc3NldElkKCkpIHtcclxuXHRAaWYgKG92ZXJsYXlQYW5lbFNob3coKSkge1xyXG5cdFx0PGFyaWwtZGV0YWlsZWQtb3ZleWxheS1wYW5lbCBbYXNzZXRJZF09XCJhc3NldElkKClcIj5cclxuXHRcdFx0PGEgW2hyZWZdPVwiZ2V0RnVsbFVybCgpXCIgW3RhcmdldF09XCJ0YXJnZXQoKVwiPlxyXG5cdFx0XHRcdDxwLXRhZyBbdmFsdWVdPVwiZ2V0RGlzcGxheVZhbHVlKClcIiBbc3R5bGVdPVwidGFnU3R5bGVcIiAvPlxyXG5cdFx0XHQ8L2E+XHJcblx0XHQ8L2FyaWwtZGV0YWlsZWQtb3ZleWxheS1wYW5lbD5cclxuXHR9IEBlbHNlIHtcclxuXHRcdDxhIFtocmVmXT1cImdldEZ1bGxVcmwoKVwiIFt0YXJnZXRdPVwidGFyZ2V0KClcIj5cclxuXHRcdFx0PHAtdGFnIFt2YWx1ZV09XCJnZXREaXNwbGF5VmFsdWUoKVwiIFtzdHlsZV09XCJ0YWdTdHlsZVwiIC8+XHJcblx0XHQ8L2E+XHJcblx0fVxyXG59IEBlbHNlIGlmICh2YWx1ZURlc2MoKSB8fCBhc3NldElkKCkpIHtcclxuXHRAaWYgKG92ZXJsYXlQYW5lbFNob3coKSkge1xyXG5cdFx0PGFyaWwtZGV0YWlsZWQtb3ZleWxheS1wYW5lbCBbYXNzZXRJZF09XCJhc3NldElkKClcIj5cclxuXHRcdFx0PHAtdGFnXHJcblx0XHRcdFx0W3ZhbHVlXT1cImdldERpc3BsYXlWYWx1ZSgpXCJcclxuXHRcdFx0XHRbc3R5bGVdPVwidGFnU3R5bGVcIlxyXG5cdFx0XHRcdChjbGljayk9XCJjbGlja0V2ZW50LmVtaXQoeyBhc3NldElkOiBhc3NldElkKCksIHZhbHVlRGVzYzogdmFsdWVEZXNjKCkgfSlcIiAvPlxyXG5cdFx0PC9hcmlsLWRldGFpbGVkLW92ZXlsYXktcGFuZWw+XHJcblx0fSBAZWxzZSB7XHJcblx0XHQ8cC10YWdcclxuXHRcdFx0W3ZhbHVlXT1cImdldERpc3BsYXlWYWx1ZSgpXCJcclxuXHRcdFx0W3N0eWxlXT1cInRhZ1N0eWxlXCJcclxuXHRcdFx0KGNsaWNrKT1cImNsaWNrRXZlbnQuZW1pdCh7IGFzc2V0SWQ6IGFzc2V0SWQoKSwgdmFsdWVEZXNjOiB2YWx1ZURlc2MoKSB9KVwiIC8+XHJcblx0fVxyXG59IEBlbHNlIHtcclxuXHQ8YXJpbC12YWx1ZSB0eXBlPVwidGV4dFwiIFttb2RlbF09XCJudWxsXCIgLz5cclxufVxyXG4iXX0=
@@ -42,4 +42,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
42
42
  type: HostListener,
43
43
  args: ['activeIndexChange', ['$event']]
44
44
  }] } });
45
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3luYy1hY3RpdmUtdGFiLXJvdXRlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvdXRpbC9zeW5jLWFjdGl2ZS10YWItcm91dGUvc3JjL3N5bmMtYWN0aXZlLXRhYi1yb3V0ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBSzNFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7O0FBTXBDLE1BQU0sT0FBTywyQkFBMkI7SUFHdkMsWUFDa0IsTUFBYyxFQUNkLE9BQWdCLEVBQ2hCLFFBQWtCO1FBRmxCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxZQUFPLEdBQVAsT0FBTyxDQUFTO1FBQ2hCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFMbkIsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBTWhELENBQUM7SUFFSixRQUFRO1FBQ1AsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDL0QsSUFBSSxNQUFNLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUM7Z0JBQzdCLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7WUFDNUQsQ0FBQztRQUNGLENBQUMsQ0FBQyxDQUNGLENBQUM7SUFDSCxDQUFDO0lBR0QsV0FBVyxDQUFDLENBQVM7UUFDcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQ3pCLElBQUksQ0FBQyxNQUFNO2FBQ1QsYUFBYSxDQUFDLEVBQUUsRUFBRTtZQUNsQixXQUFXLEVBQUUsRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFO1lBQzdCLG1CQUFtQixFQUFFLE9BQU87U0FDNUIsQ0FBQzthQUNELFFBQVEsRUFBRSxDQUNaLENBQUM7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNWLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDakMsQ0FBQzs4R0FqQ1csMkJBQTJCO2tHQUEzQiwyQkFBMkI7OzJGQUEzQiwyQkFBMkI7a0JBSnZDLFNBQVM7bUJBQUM7b0JBQ1YsUUFBUSxFQUFFLHNCQUFzQjtvQkFDaEMsVUFBVSxFQUFFLElBQUk7aUJBQ2hCO3dIQXFCQSxXQUFXO3NCQURWLFlBQVk7dUJBQUMsbUJBQW1CLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMb2NhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdExpc3RlbmVyLCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5cclxuaW1wb3J0IHsgVGFiVmlldyB9IGZyb20gJ3ByaW1lbmcvdGFidmlldyc7XHJcblxyXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG5cdHNlbGVjdG9yOiAnW3N5bmNBY3RpdmVUYWJSb3V0ZV0nLFxyXG5cdHN0YW5kYWxvbmU6IHRydWVcclxufSlcclxuZXhwb3J0IGNsYXNzIFN5bmNBY3RpdmVUYWJSb3V0ZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuXHRwcml2YXRlIHJlYWRvbmx5IHN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcclxuXHJcblx0Y29uc3RydWN0b3IoXHJcblx0XHRwcml2YXRlIHJlYWRvbmx5IHJvdXRlcjogUm91dGVyLFxyXG5cdFx0cHJpdmF0ZSByZWFkb25seSB0YWJWaWV3OiBUYWJWaWV3LFxyXG5cdFx0cHJpdmF0ZSByZWFkb25seSBsb2NhdGlvbjogTG9jYXRpb25cclxuXHQpIHt9XHJcblxyXG5cdG5nT25Jbml0KCkge1xyXG5cdFx0dGhpcy5zdWJzY3JpcHRpb24uYWRkKFxyXG5cdFx0XHR0aGlzLnJvdXRlci5yb3V0ZXJTdGF0ZS5yb290LnF1ZXJ5UGFyYW1NYXAuc3Vic2NyaWJlKChwYXJhbXMpID0+IHtcclxuXHRcdFx0XHRpZiAocGFyYW1zLmhhcygnYWN0aXZlVGFiJykpIHtcclxuXHRcdFx0XHRcdHRoaXMudGFiVmlldy5hY3RpdmVJbmRleCA9IE51bWJlcihwYXJhbXMuZ2V0KCdhY3RpdmVUYWInKSk7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9KVxyXG5cdFx0KTtcclxuXHR9XHJcblxyXG5cdEBIb3N0TGlzdGVuZXIoJ2FjdGl2ZUluZGV4Q2hhbmdlJywgWyckZXZlbnQnXSlcclxuXHRvblRhYkNoYW5nZShlOiBudW1iZXIpIHtcclxuXHRcdHRoaXMubG9jYXRpb24ucmVwbGFjZVN0YXRlKFxyXG5cdFx0XHR0aGlzLnJvdXRlclxyXG5cdFx0XHRcdC5jcmVhdGVVcmxUcmVlKFtdLCB7XHJcblx0XHRcdFx0XHRxdWVyeVBhcmFtczogeyBhY3RpdmVUYWI6IGUgfSxcclxuXHRcdFx0XHRcdHF1ZXJ5UGFyYW1zSGFuZGxpbmc6ICdtZXJnZSdcclxuXHRcdFx0XHR9KVxyXG5cdFx0XHRcdC50b1N0cmluZygpXHJcblx0XHQpO1xyXG5cdH1cclxuXHJcblx0bmdPbkRlc3Ryb3koKSB7XHJcblx0XHR0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG5cdH1cclxufVxyXG4iXX0=
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3luYy1hY3RpdmUtdGFiLXJvdXRlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FyaWwvdXRpbC9zeW5jLWFjdGl2ZS10YWItcm91dGUvc3JjL3N5bmMtYWN0aXZlLXRhYi1yb3V0ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBSzNFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7O0FBTXBDLE1BQU0sT0FBTywyQkFBMkI7SUFHdkMsWUFDa0IsTUFBYyxFQUNkLE9BQWdCLEVBQ2hCLFFBQWtCO1FBRmxCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxZQUFPLEdBQVAsT0FBTyxDQUFTO1FBQ2hCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFMbkIsaUJBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBTWhELENBQUM7SUFFSixRQUFRO1FBQ1AsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDL0QsSUFBSSxNQUFNLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxFQUFFLENBQUM7Z0JBQzdCLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7WUFDNUQsQ0FBQztRQUNGLENBQUMsQ0FBQyxDQUNGLENBQUM7SUFDSCxDQUFDO0lBR0QsV0FBVyxDQUFDLENBQVM7UUFDcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQ3pCLElBQUksQ0FBQyxNQUFNO2FBQ1QsYUFBYSxDQUFDLEVBQUUsRUFBRTtZQUNsQixXQUFXLEVBQUUsRUFBRSxTQUFTLEVBQUUsQ0FBQyxFQUFFO1lBQzdCLG1CQUFtQixFQUFFLE9BQU87U0FDNUIsQ0FBQzthQUNELFFBQVEsRUFBRSxDQUNaLENBQUM7SUFDSCxDQUFDO0lBRUQsV0FBVztRQUNWLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDakMsQ0FBQzs4R0FqQ1csMkJBQTJCO2tHQUEzQiwyQkFBMkI7OzJGQUEzQiwyQkFBMkI7a0JBSnZDLFNBQVM7bUJBQUM7b0JBQ1YsUUFBUSxFQUFFLHNCQUFzQjtvQkFDaEMsVUFBVSxFQUFFLElBQUk7aUJBQ2hCO3dIQXFCQSxXQUFXO3NCQURWLFlBQVk7dUJBQUMsbUJBQW1CLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMb2NhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3RMaXN0ZW5lciwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmltcG9ydCB7IFRhYlZpZXcgfSBmcm9tICdwcmltZW5nL3RhYnZpZXcnO1xuXG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuQERpcmVjdGl2ZSh7XG5cdHNlbGVjdG9yOiAnW3N5bmNBY3RpdmVUYWJSb3V0ZV0nLFxuXHRzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIFN5bmNBY3RpdmVUYWJSb3V0ZURpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcblx0cHJpdmF0ZSByZWFkb25seSBzdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG5cblx0Y29uc3RydWN0b3IoXG5cdFx0cHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlcixcblx0XHRwcml2YXRlIHJlYWRvbmx5IHRhYlZpZXc6IFRhYlZpZXcsXG5cdFx0cHJpdmF0ZSByZWFkb25seSBsb2NhdGlvbjogTG9jYXRpb25cblx0KSB7fVxuXG5cdG5nT25Jbml0KCkge1xuXHRcdHRoaXMuc3Vic2NyaXB0aW9uLmFkZChcblx0XHRcdHRoaXMucm91dGVyLnJvdXRlclN0YXRlLnJvb3QucXVlcnlQYXJhbU1hcC5zdWJzY3JpYmUoKHBhcmFtcykgPT4ge1xuXHRcdFx0XHRpZiAocGFyYW1zLmhhcygnYWN0aXZlVGFiJykpIHtcblx0XHRcdFx0XHR0aGlzLnRhYlZpZXcuYWN0aXZlSW5kZXggPSBOdW1iZXIocGFyYW1zLmdldCgnYWN0aXZlVGFiJykpO1xuXHRcdFx0XHR9XG5cdFx0XHR9KVxuXHRcdCk7XG5cdH1cblxuXHRASG9zdExpc3RlbmVyKCdhY3RpdmVJbmRleENoYW5nZScsIFsnJGV2ZW50J10pXG5cdG9uVGFiQ2hhbmdlKGU6IG51bWJlcikge1xuXHRcdHRoaXMubG9jYXRpb24ucmVwbGFjZVN0YXRlKFxuXHRcdFx0dGhpcy5yb3V0ZXJcblx0XHRcdFx0LmNyZWF0ZVVybFRyZWUoW10sIHtcblx0XHRcdFx0XHRxdWVyeVBhcmFtczogeyBhY3RpdmVUYWI6IGUgfSxcblx0XHRcdFx0XHRxdWVyeVBhcmFtc0hhbmRsaW5nOiAnbWVyZ2UnXG5cdFx0XHRcdH0pXG5cdFx0XHRcdC50b1N0cmluZygpXG5cdFx0KTtcblx0fVxuXG5cdG5nT25EZXN0cm95KCkge1xuXHRcdHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG5cdH1cbn1cbiJdfQ==
@@ -38,6 +38,8 @@ class EnumPickerComponent extends BaseInputComponent {
38
38
  this.tabindex = input(0);
39
39
  this.items = input();
40
40
  this.isMultiple = input(false);
41
+ // Cross-validation RemoveItem action ile set edilir; verilen selectionKey'leri item listesinden filtreler.
42
+ this.excludedKeys = input([]);
41
43
  this.selectedItemText = '';
42
44
  /** * @description when grouped = true, option item structure { key:string, items:[] } */
43
45
  this.grouped = input(false);
@@ -66,6 +68,13 @@ class EnumPickerComponent extends BaseInputComponent {
66
68
  if (this.groupName() || this.parentSelectionKey())
67
69
  this.getSelectionItems();
68
70
  });
71
+ // excludedKeys değişince item listesini yeniden filtrele (originalSelectionItems korunur)
72
+ effect(() => {
73
+ this.excludedKeys();
74
+ if (this.originalSelectionItems.length > 0) {
75
+ this.updateSelectionItemsText();
76
+ }
77
+ });
69
78
  this.translocoService.langChanges$.subscribe(() => {
70
79
  if (this.selectionItems() && this.selectionItems()?.length > 0) {
71
80
  this.updateSelectionItemsText();
@@ -106,7 +115,10 @@ class EnumPickerComponent extends BaseInputComponent {
106
115
  }
107
116
  const currentLang = this.translocoService.getActiveLang();
108
117
  this.selectionItems.set(null);
109
- const mappedItems = this.originalSelectionItems.map((item) => ({
118
+ const excluded = new Set(this.excludedKeys() || []);
119
+ const mappedItems = this.originalSelectionItems
120
+ .filter((item) => !excluded.has(item.selectionKey))
121
+ .map((item) => ({
110
122
  key: item.selectionKey,
111
123
  text: item?.selectionMultiLanguageDisplays?.[currentLang] ?
112
124
  item.selectionMultiLanguageDisplays[currentLang]
@@ -117,9 +129,11 @@ class EnumPickerComponent extends BaseInputComponent {
117
129
  this.rebuildSelectBoxDataSource(mappedItems);
118
130
  this.filterCurrentValueBySelectionItems();
119
131
  }
120
- // Parent enum (multiple) değiştiğinde child'dan sadece geçersiz key'leri temizler
132
+ // Parent enum (multiple) değiştiğinde veya excludedKeys aktifken
133
+ // form'daki geçersiz key'leri temizler (selectionItems zaten filtrelenmiş haliyle gelir).
121
134
  filterCurrentValueBySelectionItems() {
122
- if (!this.parentSelectionKey())
135
+ const hasExcluded = (this.excludedKeys() || []).length > 0;
136
+ if (!this.parentSelectionKey() && !hasExcluded)
123
137
  return;
124
138
  const currentValue = this.ngControl.control?.value;
125
139
  const validKeys = new Set((this.selectionItems() || []).map((item) => item[this.itemKey()]));
@@ -170,7 +184,7 @@ class EnumPickerComponent extends BaseInputComponent {
170
184
  }));
171
185
  }
172
186
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: EnumPickerComponent, deps: [{ token: i1.HttpClient }, { token: i2.TranslocoService }], target: i0.ɵɵFactoryTarget.Component }); }
173
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: EnumPickerComponent, isStandalone: true, selector: "enum-picker[ngModel], enum-picker[formControl], enum-picker[formControlName]", inputs: { itemKey: { classPropertyName: "itemKey", publicName: "itemKey", isSignal: true, isRequired: false, transformFunction: null }, itemText: { classPropertyName: "itemText", publicName: "itemText", isSignal: true, isRequired: false, transformFunction: null }, groupName: { classPropertyName: "groupName", publicName: "groupName", isSignal: true, isRequired: false, transformFunction: null }, parentSelectionKey: { classPropertyName: "parentSelectionKey", publicName: "parentSelectionKey", isSignal: true, isRequired: false, transformFunction: null }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: true, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, isMultiple: { classPropertyName: "isMultiple", publicName: "isMultiple", isSignal: true, isRequired: false, transformFunction: null }, grouped: { classPropertyName: "grouped", publicName: "grouped", isSignal: true, isRequired: false, transformFunction: null }, showClearButton: { classPropertyName: "showClearButton", publicName: "showClearButton", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, searchExpr: { classPropertyName: "searchExpr", publicName: "searchExpr", isSignal: true, isRequired: false, transformFunction: null }, acceptCustomValue: { classPropertyName: "acceptCustomValue", publicName: "acceptCustomValue", isSignal: true, isRequired: false, transformFunction: null }, textClampCharacters: { classPropertyName: "textClampCharacters", publicName: "textClampCharacters", isSignal: true, isRequired: false, transformFunction: null }, useVirtualScroll: { classPropertyName: "useVirtualScroll", publicName: "useVirtualScroll", isSignal: true, isRequired: false, transformFunction: null }, virtualScrollItemSize: { classPropertyName: "virtualScrollItemSize", publicName: "virtualScrollItemSize", isSignal: true, isRequired: false, transformFunction: null }, scrollHeight: { classPropertyName: "scrollHeight", publicName: "scrollHeight", isSignal: true, isRequired: false, transformFunction: null }, selectedItemsLabel: { classPropertyName: "selectedItemsLabel", publicName: "selectedItemsLabel", isSignal: true, isRequired: false, transformFunction: null }, appendTo: { classPropertyName: "appendTo", publicName: "appendTo", isSignal: true, isRequired: false, transformFunction: null }, style: { classPropertyName: "style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null }, tooltip: { classPropertyName: "tooltip", publicName: "tooltip", isSignal: true, isRequired: false, transformFunction: null }, tooltipPosition: { classPropertyName: "tooltipPosition", publicName: "tooltipPosition", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onSelectionChanged: "onSelectionChanged" }, providers: [InputErrorMessagePipe], usesInheritance: true, hostDirectives: [{ directive: i3.ValueAccessorDirective }], ngImport: i0, template: "@if (isMultiple()) {\r\n\t<p-multiSelect\r\n\t\t[options]=\"selectionItems() || items() || []\"\r\n\t\t[optionValue]=\"itemKey()\"\r\n\t\t[optionLabel]=\"itemText()\"\r\n\t\t[defaultLabel]=\"placeholder()\"\r\n\t\t[selectedItemsLabel]=\"selectedItemsLabel()\"\r\n\t\t[style]=\"style()\"\r\n\t\t[styleClass]=\"styleClass()\"\r\n\t\t[tooltip]=\"tooltip()\"\r\n\t\t[tooltipPosition]=\"tooltipPosition()\"\r\n\t\t[formControl]=\"ngControl.control\"\r\n\t\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\"\r\n\t\t[maxSelectedLabels]=\"2\"\r\n\t\t[appendTo]=\"appendTo()\"\r\n\t\t[virtualScroll]=\"useVirtualScroll()\"\r\n\t\t[virtualScrollItemSize]=\"virtualScrollItemSize()\"\r\n\t\t[scrollHeight]=\"scrollHeight()\"\r\n\t\t[filter]=\"true\"\r\n\t\t[panelStyle]=\"{ 'max-width': '400px', 'min-width': 'auto' }\">\r\n\t\t<ng-template let-enum pTemplate=\"item\">\r\n\t\t\t<div [pTooltip]=\"enum[itemText()]?.length > textClampCharacters() ? enum[itemText()] : ''\">\r\n\t\t\t\t@if (enum[itemText()]?.length > textClampCharacters()) {\r\n\t\t\t\t\t{{ enum[itemText()].slice(0, textClampCharacters()) }}...\r\n\t\t\t\t} @else {\r\n\t\t\t\t\t{{ enum[itemText()] }}\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t</ng-template>\r\n\t</p-multiSelect>\r\n} @else {\r\n\t<dx-select-box\r\n [dataSource]=\"useVirtualScroll() ? selectBoxDataSource() : (selectionItems() || items() || [])\"\r\n\t\t[valueExpr]=\"itemKey()\"\r\n\t\t[displayExpr]=\"itemText()\"\r\n\t\t[searchEnabled]=\"true\"\r\n\t\t[searchExpr]=\"searchExpr()\"\r\n\t\t[tabIndex]=\"tabindex()\"\r\n\t\t[grouped]=\"grouped()\"\r\n\t\t[placeholder]=\"placeholder()\"\r\n\t\t[showClearButton]=\"showClearButton()\"\r\n\t\t[acceptCustomValue]=\"acceptCustomValue()\"\r\n\t\t(onCustomItemCreating)=\"onCustomItemCreating($event)\"\r\n\t\t[isValid]=\"ngControl?.control?.valid || ngControl?.control?.pristine || ngControl?.control?.disabled || false\"\r\n\t\t[validationError]=\"ngControl?.control?.errors | dxInputErrorMessage: ngControl?.control\"\r\n\t\tvalidationMessagePosition=\"top\"\r\n\t\t[noDataText]=\"translocoService.translate('messages.noDataToDisplay')\"\r\n\t\t[formControl]=\"ngControl.control\"\r\n\t\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\"\r\n (onSelectionChanged)=\"onSelectionChanged.emit($event.selectedItem);setTitle($event.selectedItem)\"\r\n [inputAttr]=\"{ 'title': selectedItemText }\">\r\n\t</dx-select-box>\r\n}\r\n", dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: DxSelectBoxModule }, { kind: "component", type: i5.DxSelectBoxComponent, selector: "dx-select-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "buttons", "customItemCreateEvent", "dataSource", "deferRendering", "disabled", "displayExpr", "displayValue", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "grouped", "groupTemplate", "height", "hint", "hoverStateEnabled", "inputAttr", "isDirty", "isValid", "items", "itemTemplate", "label", "labelMode", "maxLength", "minSearchLength", "name", "noDataText", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "searchEnabled", "searchExpr", "searchMode", "searchTimeout", "selectedItem", "showClearButton", "showDataBeforeSearch", "showDropDownButton", "showSelectionControls", "spellcheck", "stylingMode", "tabIndex", "text", "useItemTextAsTitle", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "valueExpr", "visible", "width", "wrapItemText"], outputs: ["onChange", "onClosed", "onContentReady", "onCopy", "onCustomItemCreating", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onItemClick", "onKeyDown", "onKeyUp", "onOpened", "onOptionChanged", "onPaste", "onSelectionChanged", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "customItemCreateEventChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "displayValueChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "groupedChange", "groupTemplateChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isDirtyChange", "isValidChange", "itemsChange", "itemTemplateChange", "labelChange", "labelModeChange", "maxLengthChange", "minSearchLengthChange", "nameChange", "noDataTextChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "searchEnabledChange", "searchExprChange", "searchModeChange", "searchTimeoutChange", "selectedItemChange", "showClearButtonChange", "showDataBeforeSearchChange", "showDropDownButtonChange", "showSelectionControlsChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useItemTextAsTitleChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "valueExprChange", "visibleChange", "widthChange", "wrapItemTextChange", "onBlur"] }, { kind: "pipe", type: DXInputErrorMessagePipe, name: "dxInputErrorMessage" }, { kind: "ngmodule", type: TranslocoModule }, { kind: "ngmodule", type: MultiSelectModule }, { kind: "component", type: i6.MultiSelect, selector: "p-multiSelect", inputs: ["id", "ariaLabel", "style", "styleClass", "panelStyle", "panelStyleClass", "inputId", "disabled", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "variant", "appendTo", "dataKey", "name", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "filterBy", "scrollHeight", "lazy", "virtualScroll", "loading", "virtualScrollItemSize", "loadingIcon", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "showClear", "autofocus", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "defaultLabel", "placeholder", "options", "filterValue", "itemSize", "selectAll", "focusOnHover", "filterFields", "selectOnFocus", "autoOptionFocus"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad", "onRemove", "onSelectAllChange"] }, { kind: "directive", type: i7.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i8.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }] }); }
187
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: EnumPickerComponent, isStandalone: true, selector: "enum-picker[ngModel], enum-picker[formControl], enum-picker[formControlName]", inputs: { itemKey: { classPropertyName: "itemKey", publicName: "itemKey", isSignal: true, isRequired: false, transformFunction: null }, itemText: { classPropertyName: "itemText", publicName: "itemText", isSignal: true, isRequired: false, transformFunction: null }, groupName: { classPropertyName: "groupName", publicName: "groupName", isSignal: true, isRequired: false, transformFunction: null }, parentSelectionKey: { classPropertyName: "parentSelectionKey", publicName: "parentSelectionKey", isSignal: true, isRequired: false, transformFunction: null }, tabindex: { classPropertyName: "tabindex", publicName: "tabindex", isSignal: true, isRequired: false, transformFunction: null }, items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, isMultiple: { classPropertyName: "isMultiple", publicName: "isMultiple", isSignal: true, isRequired: false, transformFunction: null }, excludedKeys: { classPropertyName: "excludedKeys", publicName: "excludedKeys", isSignal: true, isRequired: false, transformFunction: null }, grouped: { classPropertyName: "grouped", publicName: "grouped", isSignal: true, isRequired: false, transformFunction: null }, showClearButton: { classPropertyName: "showClearButton", publicName: "showClearButton", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, searchExpr: { classPropertyName: "searchExpr", publicName: "searchExpr", isSignal: true, isRequired: false, transformFunction: null }, acceptCustomValue: { classPropertyName: "acceptCustomValue", publicName: "acceptCustomValue", isSignal: true, isRequired: false, transformFunction: null }, textClampCharacters: { classPropertyName: "textClampCharacters", publicName: "textClampCharacters", isSignal: true, isRequired: false, transformFunction: null }, useVirtualScroll: { classPropertyName: "useVirtualScroll", publicName: "useVirtualScroll", isSignal: true, isRequired: false, transformFunction: null }, virtualScrollItemSize: { classPropertyName: "virtualScrollItemSize", publicName: "virtualScrollItemSize", isSignal: true, isRequired: false, transformFunction: null }, scrollHeight: { classPropertyName: "scrollHeight", publicName: "scrollHeight", isSignal: true, isRequired: false, transformFunction: null }, selectedItemsLabel: { classPropertyName: "selectedItemsLabel", publicName: "selectedItemsLabel", isSignal: true, isRequired: false, transformFunction: null }, appendTo: { classPropertyName: "appendTo", publicName: "appendTo", isSignal: true, isRequired: false, transformFunction: null }, style: { classPropertyName: "style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, styleClass: { classPropertyName: "styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null }, tooltip: { classPropertyName: "tooltip", publicName: "tooltip", isSignal: true, isRequired: false, transformFunction: null }, tooltipPosition: { classPropertyName: "tooltipPosition", publicName: "tooltipPosition", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onSelectionChanged: "onSelectionChanged" }, providers: [InputErrorMessagePipe], usesInheritance: true, hostDirectives: [{ directive: i3.ValueAccessorDirective }], ngImport: i0, template: "@if (isMultiple()) {\r\n\t<p-multiSelect\r\n\t\t[options]=\"selectionItems() || items() || []\"\r\n\t\t[optionValue]=\"itemKey()\"\r\n\t\t[optionLabel]=\"itemText()\"\r\n\t\t[defaultLabel]=\"placeholder()\"\r\n\t\t[selectedItemsLabel]=\"selectedItemsLabel()\"\r\n\t\t[style]=\"style()\"\r\n\t\t[styleClass]=\"styleClass()\"\r\n\t\t[tooltip]=\"tooltip()\"\r\n\t\t[tooltipPosition]=\"tooltipPosition()\"\r\n\t\t[formControl]=\"ngControl.control\"\r\n\t\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\"\r\n\t\t[maxSelectedLabels]=\"2\"\r\n\t\t[appendTo]=\"appendTo()\"\r\n\t\t[virtualScroll]=\"useVirtualScroll()\"\r\n\t\t[virtualScrollItemSize]=\"virtualScrollItemSize()\"\r\n\t\t[scrollHeight]=\"scrollHeight()\"\r\n\t\t[filter]=\"true\"\r\n\t\t[panelStyle]=\"{ 'max-width': '400px', 'min-width': 'auto' }\">\r\n\t\t<ng-template let-enum pTemplate=\"item\">\r\n\t\t\t<div [pTooltip]=\"enum[itemText()]?.length > textClampCharacters() ? enum[itemText()] : ''\">\r\n\t\t\t\t@if (enum[itemText()]?.length > textClampCharacters()) {\r\n\t\t\t\t\t{{ enum[itemText()].slice(0, textClampCharacters()) }}...\r\n\t\t\t\t} @else {\r\n\t\t\t\t\t{{ enum[itemText()] }}\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t</ng-template>\r\n\t</p-multiSelect>\r\n} @else {\r\n\t<dx-select-box\r\n [dataSource]=\"useVirtualScroll() ? selectBoxDataSource() : (selectionItems() || items() || [])\"\r\n\t\t[valueExpr]=\"itemKey()\"\r\n\t\t[displayExpr]=\"itemText()\"\r\n\t\t[searchEnabled]=\"true\"\r\n\t\t[searchExpr]=\"searchExpr()\"\r\n\t\t[tabIndex]=\"tabindex()\"\r\n\t\t[grouped]=\"grouped()\"\r\n\t\t[placeholder]=\"placeholder()\"\r\n\t\t[showClearButton]=\"showClearButton()\"\r\n\t\t[acceptCustomValue]=\"acceptCustomValue()\"\r\n\t\t(onCustomItemCreating)=\"onCustomItemCreating($event)\"\r\n\t\t[isValid]=\"ngControl?.control?.valid || ngControl?.control?.pristine || ngControl?.control?.disabled || false\"\r\n\t\t[validationError]=\"ngControl?.control?.errors | dxInputErrorMessage: ngControl?.control\"\r\n\t\tvalidationMessagePosition=\"top\"\r\n\t\t[noDataText]=\"translocoService.translate('messages.noDataToDisplay')\"\r\n\t\t[formControl]=\"ngControl.control\"\r\n\t\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\"\r\n (onSelectionChanged)=\"onSelectionChanged.emit($event.selectedItem);setTitle($event.selectedItem)\"\r\n [inputAttr]=\"{ 'title': selectedItemText }\">\r\n\t</dx-select-box>\r\n}\r\n", dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: DxSelectBoxModule }, { kind: "component", type: i5.DxSelectBoxComponent, selector: "dx-select-box", inputs: ["acceptCustomValue", "accessKey", "activeStateEnabled", "buttons", "customItemCreateEvent", "dataSource", "deferRendering", "disabled", "displayExpr", "displayValue", "dropDownButtonTemplate", "dropDownOptions", "elementAttr", "fieldTemplate", "focusStateEnabled", "grouped", "groupTemplate", "height", "hint", "hoverStateEnabled", "inputAttr", "isDirty", "isValid", "items", "itemTemplate", "label", "labelMode", "maxLength", "minSearchLength", "name", "noDataText", "opened", "openOnFieldClick", "placeholder", "readOnly", "rtlEnabled", "searchEnabled", "searchExpr", "searchMode", "searchTimeout", "selectedItem", "showClearButton", "showDataBeforeSearch", "showDropDownButton", "showSelectionControls", "spellcheck", "stylingMode", "tabIndex", "text", "useItemTextAsTitle", "validationError", "validationErrors", "validationMessageMode", "validationMessagePosition", "validationStatus", "value", "valueChangeEvent", "valueExpr", "visible", "width", "wrapItemText"], outputs: ["onChange", "onClosed", "onContentReady", "onCopy", "onCustomItemCreating", "onCut", "onDisposing", "onEnterKey", "onFocusIn", "onFocusOut", "onInitialized", "onInput", "onItemClick", "onKeyDown", "onKeyUp", "onOpened", "onOptionChanged", "onPaste", "onSelectionChanged", "onValueChanged", "acceptCustomValueChange", "accessKeyChange", "activeStateEnabledChange", "buttonsChange", "customItemCreateEventChange", "dataSourceChange", "deferRenderingChange", "disabledChange", "displayExprChange", "displayValueChange", "dropDownButtonTemplateChange", "dropDownOptionsChange", "elementAttrChange", "fieldTemplateChange", "focusStateEnabledChange", "groupedChange", "groupTemplateChange", "heightChange", "hintChange", "hoverStateEnabledChange", "inputAttrChange", "isDirtyChange", "isValidChange", "itemsChange", "itemTemplateChange", "labelChange", "labelModeChange", "maxLengthChange", "minSearchLengthChange", "nameChange", "noDataTextChange", "openedChange", "openOnFieldClickChange", "placeholderChange", "readOnlyChange", "rtlEnabledChange", "searchEnabledChange", "searchExprChange", "searchModeChange", "searchTimeoutChange", "selectedItemChange", "showClearButtonChange", "showDataBeforeSearchChange", "showDropDownButtonChange", "showSelectionControlsChange", "spellcheckChange", "stylingModeChange", "tabIndexChange", "textChange", "useItemTextAsTitleChange", "validationErrorChange", "validationErrorsChange", "validationMessageModeChange", "validationMessagePositionChange", "validationStatusChange", "valueChange", "valueChangeEventChange", "valueExprChange", "visibleChange", "widthChange", "wrapItemTextChange", "onBlur"] }, { kind: "pipe", type: DXInputErrorMessagePipe, name: "dxInputErrorMessage" }, { kind: "ngmodule", type: TranslocoModule }, { kind: "ngmodule", type: MultiSelectModule }, { kind: "component", type: i6.MultiSelect, selector: "p-multiSelect", inputs: ["id", "ariaLabel", "style", "styleClass", "panelStyle", "panelStyleClass", "inputId", "disabled", "readonly", "group", "filter", "filterPlaceHolder", "filterLocale", "overlayVisible", "tabindex", "variant", "appendTo", "dataKey", "name", "ariaLabelledBy", "displaySelectedLabel", "maxSelectedLabels", "selectionLimit", "selectedItemsLabel", "showToggleAll", "emptyFilterMessage", "emptyMessage", "resetFilterOnHide", "dropdownIcon", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "showHeader", "filterBy", "scrollHeight", "lazy", "virtualScroll", "loading", "virtualScrollItemSize", "loadingIcon", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "filterMatchMode", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "autofocusFilter", "display", "autocomplete", "showClear", "autofocus", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "defaultLabel", "placeholder", "options", "filterValue", "itemSize", "selectAll", "focusOnHover", "filterFields", "selectOnFocus", "autoOptionFocus"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onClear", "onPanelShow", "onPanelHide", "onLazyLoad", "onRemove", "onSelectAllChange"] }, { kind: "directive", type: i7.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i8.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }] }); }
174
188
  }
175
189
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: EnumPickerComponent, decorators: [{
176
190
  type: Component,