@cuby-ui/core 0.0.485 → 0.0.488

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/README.md +794 -13
  2. package/editor/editor.component.d.ts +1 -0
  3. package/editor/tools/combined-text-block.tool.d.ts +0 -1
  4. package/esm2022/components/card-wrapper/card-wrapper.component.mjs +2 -2
  5. package/esm2022/components/content-header/content-header.component.mjs +3 -3
  6. package/esm2022/components/dropdown/dropdown-wrapper.component.mjs +3 -3
  7. package/esm2022/components/sidebar/sidebar-header/sidebar-header.component.mjs +3 -3
  8. package/esm2022/components/tabs/components/abstract-tabs/abstract-tabs.component.mjs +3 -3
  9. package/esm2022/editor/components/editor-attaches-tool/editor-attaches-tool.component.mjs +3 -3
  10. package/esm2022/editor/editor.component.mjs +9 -1
  11. package/esm2022/editor/tools/combined-text-block.tool.mjs +9 -26
  12. package/esm2022/editor/widgets/editor-block/editor-block.component.mjs +3 -3
  13. package/esm2022/editor/widgets/editor-modal/editor-modal.component.mjs +3 -3
  14. package/esm2022/widgets/ui/assignee-role-item/assignee-role-item.component.mjs +3 -3
  15. package/esm2022/widgets/ui/assignee-roles-tabs/assignee-roles-tabs.component.mjs +3 -3
  16. package/esm2022/widgets/ui/button-change-theme/button-change-theme.component.mjs +3 -3
  17. package/esm2022/widgets/ui/categories/components/category-form/category-form.component.mjs +3 -3
  18. package/esm2022/widgets/ui/categories/components/category-item/category-item.component.mjs +3 -3
  19. package/esm2022/widgets/ui/checklist-block/checklist-block.component.mjs +3 -3
  20. package/esm2022/widgets/ui/checklist-block/components/checklist-block-list-item-evaluation-criteria/checklist-block-list-item-evaluation-criteria.component.mjs +3 -3
  21. package/esm2022/widgets/ui/circle-loader/circle-loader.component.mjs +3 -3
  22. package/esm2022/widgets/ui/consumable-form/components/consumable-form-item/consumable-form-item.component.mjs +3 -3
  23. package/esm2022/widgets/ui/consumable-form/components/consumable-form-item-readonly/consumable-form-item-readonly.component.mjs +3 -3
  24. package/esm2022/widgets/ui/consumable-form/consumable-form.component.mjs +3 -3
  25. package/esm2022/widgets/ui/delete-modal/delete-modal.component.mjs +3 -3
  26. package/esm2022/widgets/ui/framer-preview/framer-preview.component.mjs +3 -3
  27. package/esm2022/widgets/ui/inserted/inserted.component.mjs +3 -3
  28. package/esm2022/widgets/ui/modal-header-inserted-buttons/modal-header-inserted-buttons.component.mjs +3 -3
  29. package/esm2022/widgets/ui/modal-header-tabs/modal-header-tabs.component.mjs +3 -3
  30. package/esm2022/widgets/ui/resources-block/components/resources-block-content/resources-block-content.component.mjs +3 -3
  31. package/esm2022/widgets/ui/resources-block/components/resources-options/resources-options.component.mjs +3 -3
  32. package/esm2022/widgets/ui/resources-block/resources-block.component.mjs +3 -3
  33. package/esm2022/widgets/ui/toolbox-form/components/tool-form-readonly/tool-form-readonly.component.mjs +3 -3
  34. package/esm2022/widgets/ui/toolbox-form/tool-form.component.mjs +3 -3
  35. package/esm2022/widgets/ui/user-action-context-menu/activity-item/activity-item.component.mjs +3 -3
  36. package/esm2022/widgets/ui/user-action-context-menu/company-item/company-item.component.mjs +3 -3
  37. package/esm2022/widgets/ui/user-action-context-menu/user-action-context-menu.component.mjs +3 -3
  38. package/esm2022/widgets/ui/utility-modal/components/readonly-utility-modal/readonly-utility-modal.component.mjs +3 -3
  39. package/esm2022/widgets/ui/utility-modal/components/utility-modal-create/utility-modal-create.component.mjs +3 -3
  40. package/esm2022/widgets/ui/utility-thumbnail/utility-thumbnail.component.mjs +3 -3
  41. package/fesm2022/cuby-ui-core.mjs +85 -94
  42. package/fesm2022/cuby-ui-core.mjs.map +1 -1
  43. package/package.json +4 -4
  44. package/styles/mixins/flex.scss +5 -15
@@ -39,10 +39,10 @@ export class AssigneeRolesTabsComponent {
39
39
  });
40
40
  }
41
41
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AssigneeRolesTabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
42
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: AssigneeRolesTabsComponent, isStandalone: true, selector: "cui-assignee-roles-tabs", inputs: { tabs: { classPropertyName: "tabs", publicName: "tabs", isSignal: true, isRequired: true, transformFunction: null }, itemSlot: { classPropertyName: "itemSlot", publicName: "itemSlot", isSignal: true, isRequired: true, transformFunction: null }, buttonSlot: { classPropertyName: "buttonSlot", publicName: "buttonSlot", isSignal: true, isRequired: true, transformFunction: null }, contentSlot: { classPropertyName: "contentSlot", publicName: "contentSlot", isSignal: true, isRequired: true, transformFunction: null }, selectedIndex: { classPropertyName: "selectedIndex", publicName: "selectedIndex", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectedIndexChange: "selectedIndexChange" }, providers: [provideCuiTabs(CuiTabsServiceImpl)], viewQueries: [{ propertyName: "buttons", first: true, predicate: ["buttons"], descendants: true, isSignal: true }], ngImport: i0, template: "<ng-container *transloco=\"let t\">\n <cui-tabs\n class=\"tabs\"\n [selectedIndex]=\"selectedIndex()\"\n [headerSlot]=\"headerSlot\"\n >\n <ng-template\n #headerSlot\n let-buttons\n >\n <header class=\"header\">\n <div\n #buttons\n class=\"buttons\"\n >\n <ng-container [ngTemplateOutlet]=\"buttons\" />\n </div>\n <div class=\"actions\">\n @if (tabs().length > 4) {\n <button\n cuiButton\n type=\"button\"\n appearance=\"ghost\"\n size=\"xxs\"\n icon=\"cuiIconChevronLeft\"\n (click)=\"onScrollLeft()\"\n ></button>\n <button\n cuiButton\n type=\"button\"\n appearance=\"ghost\"\n size=\"xxs\"\n icon=\"cuiIconChevronRight\"\n (click)=\"onScrollRight()\"\n ></button>\n }\n\n <ng-container [ngTemplateOutlet]=\"buttonSlot()\" />\n </div>\n </header>\n </ng-template>\n\n @for (tab of tabs(); track trackTab($index, tab); let i = $index) {\n <cui-tab\n [data]=\"tab\"\n [buttonSlot]=\"cuiButtonSlot\"\n [contentSlot]=\"cuiContentSlot\"\n class=\"tab\"\n >\n <ng-template\n #cuiButtonSlot\n let-isActive=\"isActive\"\n let-element\n >\n <div\n class=\"button\"\n [class.button_active]=\"isActive\"\n (click)=\"onSelectTab(i)\"\n (keyup.enter)=\"onSelectTab(i)\"\n role=\"button\"\n tabindex=\"0\"\n >\n <ng-container\n [ngTemplateOutlet]=\"itemSlot()\"\n [ngTemplateOutletContext]=\"{ $implicit: element }\"\n />\n </div>\n </ng-template>\n <ng-template\n #cuiContentSlot\n let-element\n >\n <div class=\"content\">\n <ng-container\n [ngTemplateOutlet]=\"contentSlot()\"\n [ngTemplateOutletContext]=\"{ $implicit: element }\"\n />\n </div>\n </ng-template>\n </cui-tab>\n }\n </cui-tabs>\n</ng-container>\n", styles: [":host{display:block;width:100%}.tabs{display:flex;flex-direction:column;gap:8px;border-radius:8px;border:1px solid var(--cui-base-200)}.header{display:flex;gap:4px;align-items:center;padding-top:8px;padding-right:12px;padding-left:12px;border-radius:8px 8px 0 0;border-bottom:.5px solid var(--cui-base-200);background-color:var(--cui-base-10)}.buttons{display:flex;align-items:center;justify-content:space-evenly;flex:1;margin-bottom:-1px;overflow:scroll hidden;scrollbar-width:none}.actions{padding-left:4px;border-left:1px solid var(--cui-base-200)}.content{padding:12px;animation:fade-in .15s ease-in}.button{display:flex;align-items:center;justify-content:space-between;padding:8px;flex:1 0 180px}.button_active{position:relative;border-radius:8px 8px 0 0;border:.5px solid var(--cui-base-200);border-bottom-width:0;background-color:var(--cui-base-0)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}\n"], dependencies: [{ kind: "component", type: CuiTabsComponent, selector: "cui-tabs", inputs: ["headerSlot", "selectedIndex"] }, { kind: "directive", type: CuiTabDirective, selector: "cui-tab, [cuiTab]", inputs: ["buttonSlot", "contentSlot", "data"] }, { kind: "directive", type: TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }, { kind: "ngmodule", type: CuiButtonModule }, { kind: "component", type: i1.CuiButtonComponent, selector: "button[cuiButton], a[cuiButton]", inputs: ["shape", "disabled", "isLoaderShown", "icon", "iconRight", "appearance", "theme", "size"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
42
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: AssigneeRolesTabsComponent, isStandalone: true, selector: "cui-assignee-roles-tabs", inputs: { tabs: { classPropertyName: "tabs", publicName: "tabs", isSignal: true, isRequired: true, transformFunction: null }, itemSlot: { classPropertyName: "itemSlot", publicName: "itemSlot", isSignal: true, isRequired: true, transformFunction: null }, buttonSlot: { classPropertyName: "buttonSlot", publicName: "buttonSlot", isSignal: true, isRequired: true, transformFunction: null }, contentSlot: { classPropertyName: "contentSlot", publicName: "contentSlot", isSignal: true, isRequired: true, transformFunction: null }, selectedIndex: { classPropertyName: "selectedIndex", publicName: "selectedIndex", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectedIndexChange: "selectedIndexChange" }, providers: [provideCuiTabs(CuiTabsServiceImpl)], viewQueries: [{ propertyName: "buttons", first: true, predicate: ["buttons"], descendants: true, isSignal: true }], ngImport: i0, template: "<ng-container *transloco=\"let t\">\n <cui-tabs\n class=\"tabs\"\n [selectedIndex]=\"selectedIndex()\"\n [headerSlot]=\"headerSlot\"\n >\n <ng-template\n #headerSlot\n let-buttons\n >\n <header class=\"header\">\n <div\n #buttons\n class=\"buttons\"\n >\n <ng-container [ngTemplateOutlet]=\"buttons\" />\n </div>\n <div class=\"actions\">\n @if (tabs().length > 4) {\n <button\n cuiButton\n type=\"button\"\n appearance=\"ghost\"\n size=\"xxs\"\n icon=\"cuiIconChevronLeft\"\n (click)=\"onScrollLeft()\"\n ></button>\n <button\n cuiButton\n type=\"button\"\n appearance=\"ghost\"\n size=\"xxs\"\n icon=\"cuiIconChevronRight\"\n (click)=\"onScrollRight()\"\n ></button>\n }\n\n <ng-container [ngTemplateOutlet]=\"buttonSlot()\" />\n </div>\n </header>\n </ng-template>\n\n @for (tab of tabs(); track trackTab($index, tab); let i = $index) {\n <cui-tab\n [data]=\"tab\"\n [buttonSlot]=\"cuiButtonSlot\"\n [contentSlot]=\"cuiContentSlot\"\n class=\"tab\"\n >\n <ng-template\n #cuiButtonSlot\n let-isActive=\"isActive\"\n let-element\n >\n <div\n class=\"button\"\n [class.button_active]=\"isActive\"\n (click)=\"onSelectTab(i)\"\n (keyup.enter)=\"onSelectTab(i)\"\n role=\"button\"\n tabindex=\"0\"\n >\n <ng-container\n [ngTemplateOutlet]=\"itemSlot()\"\n [ngTemplateOutletContext]=\"{ $implicit: element }\"\n />\n </div>\n </ng-template>\n <ng-template\n #cuiContentSlot\n let-element\n >\n <div class=\"content\">\n <ng-container\n [ngTemplateOutlet]=\"contentSlot()\"\n [ngTemplateOutletContext]=\"{ $implicit: element }\"\n />\n </div>\n </ng-template>\n </cui-tab>\n }\n </cui-tabs>\n</ng-container>\n", styles: [":host{display:block;width:100%}.tabs{display:flex;flex-direction:column;gap:8px;border-radius:8px;border:1px solid var(--cui-base-200)}.header{display:flex;flex-direction:row;gap:4px;align-items:center;justify-content:flex-start;padding-top:8px;padding-right:12px;padding-left:12px;border-radius:8px 8px 0 0;border-bottom:.5px solid var(--cui-base-200);background-color:var(--cui-base-10)}.buttons{display:flex;flex-direction:row;gap:0;align-items:center;justify-content:space-evenly;flex:1;margin-bottom:-1px;overflow:scroll hidden;scrollbar-width:none}.actions{padding-left:4px;border-left:1px solid var(--cui-base-200)}.content{padding:12px;animation:fade-in .15s ease-in}.button{display:flex;flex-direction:row;gap:0;align-items:center;justify-content:space-between;padding:8px;flex:1 0 180px}.button_active{position:relative;border-radius:8px 8px 0 0;border:.5px solid var(--cui-base-200);border-bottom-width:0;background-color:var(--cui-base-0)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}\n"], dependencies: [{ kind: "component", type: CuiTabsComponent, selector: "cui-tabs", inputs: ["headerSlot", "selectedIndex"] }, { kind: "directive", type: CuiTabDirective, selector: "cui-tab, [cuiTab]", inputs: ["buttonSlot", "contentSlot", "data"] }, { kind: "directive", type: TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }, { kind: "ngmodule", type: CuiButtonModule }, { kind: "component", type: i1.CuiButtonComponent, selector: "button[cuiButton], a[cuiButton]", inputs: ["shape", "disabled", "isLoaderShown", "icon", "iconRight", "appearance", "theme", "size"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
43
43
  }
44
44
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AssigneeRolesTabsComponent, decorators: [{
45
45
  type: Component,
46
- args: [{ selector: 'cui-assignee-roles-tabs', standalone: true, imports: [CuiTabsComponent, CuiTabDirective, TranslocoDirective, CuiButtonModule, NgTemplateOutlet], providers: [provideCuiTabs(CuiTabsServiceImpl)], template: "<ng-container *transloco=\"let t\">\n <cui-tabs\n class=\"tabs\"\n [selectedIndex]=\"selectedIndex()\"\n [headerSlot]=\"headerSlot\"\n >\n <ng-template\n #headerSlot\n let-buttons\n >\n <header class=\"header\">\n <div\n #buttons\n class=\"buttons\"\n >\n <ng-container [ngTemplateOutlet]=\"buttons\" />\n </div>\n <div class=\"actions\">\n @if (tabs().length > 4) {\n <button\n cuiButton\n type=\"button\"\n appearance=\"ghost\"\n size=\"xxs\"\n icon=\"cuiIconChevronLeft\"\n (click)=\"onScrollLeft()\"\n ></button>\n <button\n cuiButton\n type=\"button\"\n appearance=\"ghost\"\n size=\"xxs\"\n icon=\"cuiIconChevronRight\"\n (click)=\"onScrollRight()\"\n ></button>\n }\n\n <ng-container [ngTemplateOutlet]=\"buttonSlot()\" />\n </div>\n </header>\n </ng-template>\n\n @for (tab of tabs(); track trackTab($index, tab); let i = $index) {\n <cui-tab\n [data]=\"tab\"\n [buttonSlot]=\"cuiButtonSlot\"\n [contentSlot]=\"cuiContentSlot\"\n class=\"tab\"\n >\n <ng-template\n #cuiButtonSlot\n let-isActive=\"isActive\"\n let-element\n >\n <div\n class=\"button\"\n [class.button_active]=\"isActive\"\n (click)=\"onSelectTab(i)\"\n (keyup.enter)=\"onSelectTab(i)\"\n role=\"button\"\n tabindex=\"0\"\n >\n <ng-container\n [ngTemplateOutlet]=\"itemSlot()\"\n [ngTemplateOutletContext]=\"{ $implicit: element }\"\n />\n </div>\n </ng-template>\n <ng-template\n #cuiContentSlot\n let-element\n >\n <div class=\"content\">\n <ng-container\n [ngTemplateOutlet]=\"contentSlot()\"\n [ngTemplateOutletContext]=\"{ $implicit: element }\"\n />\n </div>\n </ng-template>\n </cui-tab>\n }\n </cui-tabs>\n</ng-container>\n", styles: [":host{display:block;width:100%}.tabs{display:flex;flex-direction:column;gap:8px;border-radius:8px;border:1px solid var(--cui-base-200)}.header{display:flex;gap:4px;align-items:center;padding-top:8px;padding-right:12px;padding-left:12px;border-radius:8px 8px 0 0;border-bottom:.5px solid var(--cui-base-200);background-color:var(--cui-base-10)}.buttons{display:flex;align-items:center;justify-content:space-evenly;flex:1;margin-bottom:-1px;overflow:scroll hidden;scrollbar-width:none}.actions{padding-left:4px;border-left:1px solid var(--cui-base-200)}.content{padding:12px;animation:fade-in .15s ease-in}.button{display:flex;align-items:center;justify-content:space-between;padding:8px;flex:1 0 180px}.button_active{position:relative;border-radius:8px 8px 0 0;border:.5px solid var(--cui-base-200);border-bottom-width:0;background-color:var(--cui-base-0)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}\n"] }]
46
+ args: [{ selector: 'cui-assignee-roles-tabs', standalone: true, imports: [CuiTabsComponent, CuiTabDirective, TranslocoDirective, CuiButtonModule, NgTemplateOutlet], providers: [provideCuiTabs(CuiTabsServiceImpl)], template: "<ng-container *transloco=\"let t\">\n <cui-tabs\n class=\"tabs\"\n [selectedIndex]=\"selectedIndex()\"\n [headerSlot]=\"headerSlot\"\n >\n <ng-template\n #headerSlot\n let-buttons\n >\n <header class=\"header\">\n <div\n #buttons\n class=\"buttons\"\n >\n <ng-container [ngTemplateOutlet]=\"buttons\" />\n </div>\n <div class=\"actions\">\n @if (tabs().length > 4) {\n <button\n cuiButton\n type=\"button\"\n appearance=\"ghost\"\n size=\"xxs\"\n icon=\"cuiIconChevronLeft\"\n (click)=\"onScrollLeft()\"\n ></button>\n <button\n cuiButton\n type=\"button\"\n appearance=\"ghost\"\n size=\"xxs\"\n icon=\"cuiIconChevronRight\"\n (click)=\"onScrollRight()\"\n ></button>\n }\n\n <ng-container [ngTemplateOutlet]=\"buttonSlot()\" />\n </div>\n </header>\n </ng-template>\n\n @for (tab of tabs(); track trackTab($index, tab); let i = $index) {\n <cui-tab\n [data]=\"tab\"\n [buttonSlot]=\"cuiButtonSlot\"\n [contentSlot]=\"cuiContentSlot\"\n class=\"tab\"\n >\n <ng-template\n #cuiButtonSlot\n let-isActive=\"isActive\"\n let-element\n >\n <div\n class=\"button\"\n [class.button_active]=\"isActive\"\n (click)=\"onSelectTab(i)\"\n (keyup.enter)=\"onSelectTab(i)\"\n role=\"button\"\n tabindex=\"0\"\n >\n <ng-container\n [ngTemplateOutlet]=\"itemSlot()\"\n [ngTemplateOutletContext]=\"{ $implicit: element }\"\n />\n </div>\n </ng-template>\n <ng-template\n #cuiContentSlot\n let-element\n >\n <div class=\"content\">\n <ng-container\n [ngTemplateOutlet]=\"contentSlot()\"\n [ngTemplateOutletContext]=\"{ $implicit: element }\"\n />\n </div>\n </ng-template>\n </cui-tab>\n }\n </cui-tabs>\n</ng-container>\n", styles: [":host{display:block;width:100%}.tabs{display:flex;flex-direction:column;gap:8px;border-radius:8px;border:1px solid var(--cui-base-200)}.header{display:flex;flex-direction:row;gap:4px;align-items:center;justify-content:flex-start;padding-top:8px;padding-right:12px;padding-left:12px;border-radius:8px 8px 0 0;border-bottom:.5px solid var(--cui-base-200);background-color:var(--cui-base-10)}.buttons{display:flex;flex-direction:row;gap:0;align-items:center;justify-content:space-evenly;flex:1;margin-bottom:-1px;overflow:scroll hidden;scrollbar-width:none}.actions{padding-left:4px;border-left:1px solid var(--cui-base-200)}.content{padding:12px;animation:fade-in .15s ease-in}.button{display:flex;flex-direction:row;gap:0;align-items:center;justify-content:space-between;padding:8px;flex:1 0 180px}.button_active{position:relative;border-radius:8px 8px 0 0;border:.5px solid var(--cui-base-200);border-bottom-width:0;background-color:var(--cui-base-0)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}\n"] }]
47
47
  }] });
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzaWduZWUtcm9sZXMtdGFicy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvdWkvYXNzaWduZWUtcm9sZXMtdGFicy9hc3NpZ25lZS1yb2xlcy10YWJzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvd2lkZ2V0cy91aS9hc3NpZ25lZS1yb2xlcy10YWJzL2Fzc2lnbmVlLXJvbGVzLXRhYnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQUUsTUFBTSxFQUFlLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RixPQUFPLEVBQ0gsZUFBZSxFQUNmLGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIsa0JBQWtCLEVBQ2xCLGNBQWMsRUFDakIsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7O0FBVW5ELE1BQU0sT0FBTywwQkFBMEI7SUFSdkM7UUFTdUIsa0JBQWEsR0FBRyxHQUFHLENBQUM7UUFFcEIsWUFBTyxHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQTZCLFNBQVMsQ0FBQyxDQUFDO1FBRXZFLFNBQUksR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFhLENBQUM7UUFDbkMsYUFBUSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXdCLENBQUM7UUFDbEQsZUFBVSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXdCLENBQUM7UUFDcEQsZ0JBQVcsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUF3QixDQUFDO1FBQ3JELGtCQUFhLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3pCLHdCQUFtQixHQUFHLE1BQU0sRUFBVSxDQUFDO0tBK0IxRDtJQTdCYSxRQUFRLENBQUMsS0FBYSxFQUFFLEdBQVk7UUFDMUMsSUFBSSxHQUFHLElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxJQUFJLElBQUksSUFBSyxHQUFjLEVBQUUsQ0FBQztZQUM1RCxPQUFRLEdBQXVCLENBQUMsRUFBRSxDQUFDO1FBQ3ZDLENBQUM7UUFFRCxPQUFPLE9BQU8sS0FBSyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVTLFdBQVcsQ0FBQyxLQUFhO1FBQy9CLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVTLFlBQVk7UUFDbEIsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLGFBQWEsQ0FBQztRQUVwRCxjQUFjLENBQUMsUUFBUSxDQUFDO1lBQ3BCLElBQUksRUFBRSxjQUFjLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxhQUFhO1lBQ3BELFFBQVEsRUFBRSxRQUFRO1NBQ3JCLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFUyxhQUFhO1FBQ25CLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxhQUFhLENBQUM7UUFFcEQsY0FBYyxDQUFDLFFBQVEsQ0FBQztZQUNwQixJQUFJLEVBQUUsY0FBYyxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsYUFBYTtZQUNwRCxRQUFRLEVBQUUsUUFBUTtTQUNyQixDQUFDLENBQUM7SUFDUCxDQUFDOytHQXhDUSwwQkFBMEI7bUdBQTFCLDBCQUEwQiw4eEJBRnhCLENBQUMsY0FBYyxDQUFDLGtCQUFrQixDQUFDLENBQUMsOElDakJuRCx3OUZBbUZBLGk4QkRyRWMsZ0JBQWdCLDhGQUFFLGVBQWUsNkdBQUUsa0JBQWtCLCtMQUFFLGVBQWUsb09BQUUsZ0JBQWdCOzs0RkFLekYsMEJBQTBCO2tCQVJ0QyxTQUFTOytCQUNJLHlCQUF5QixjQUN2QixJQUFJLFdBQ1AsQ0FBQyxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsa0JBQWtCLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixDQUFDLGFBR3hGLENBQUMsY0FBYyxDQUFDLGtCQUFrQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIGlucHV0LCBvdXRwdXQsIFRlbXBsYXRlUmVmLCB2aWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQ3VpQnV0dG9uTW9kdWxlLFxuICAgIEN1aVRhYkRpcmVjdGl2ZSxcbiAgICBDdWlUYWJzQ29tcG9uZW50LFxuICAgIEN1aVRhYnNTZXJ2aWNlSW1wbCxcbiAgICBwcm92aWRlQ3VpVGFic1xufSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzJztcbmltcG9ydCB7IFRyYW5zbG9jb0RpcmVjdGl2ZSB9IGZyb20gJ0Bqc3ZlcnNlL3RyYW5zbG9jbyc7XG5pbXBvcnQgeyBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdjdWktYXNzaWduZWUtcm9sZXMtdGFicycsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbQ3VpVGFic0NvbXBvbmVudCwgQ3VpVGFiRGlyZWN0aXZlLCBUcmFuc2xvY29EaXJlY3RpdmUsIEN1aUJ1dHRvbk1vZHVsZSwgTmdUZW1wbGF0ZU91dGxldF0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL2Fzc2lnbmVlLXJvbGVzLXRhYnMuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsOiAnLi9hc3NpZ25lZS1yb2xlcy10YWJzLmNvbXBvbmVudC5zY3NzJyxcbiAgICBwcm92aWRlcnM6IFtwcm92aWRlQ3VpVGFicyhDdWlUYWJzU2VydmljZUltcGwpXVxufSlcbmV4cG9ydCBjbGFzcyBBc3NpZ25lZVJvbGVzVGFic0NvbXBvbmVudCB7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IFNDUk9MTF9MRU5HVEggPSAyMDA7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgYnV0dG9ucyA9IHZpZXdDaGlsZC5yZXF1aXJlZDxFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50Pj4oJ2J1dHRvbnMnKTtcblxuICAgIHB1YmxpYyByZWFkb25seSB0YWJzID0gaW5wdXQucmVxdWlyZWQ8dW5rbm93bltdPigpO1xuICAgIHB1YmxpYyByZWFkb25seSBpdGVtU2xvdCA9IGlucHV0LnJlcXVpcmVkPFRlbXBsYXRlUmVmPHVua25vd24+PigpO1xuICAgIHB1YmxpYyByZWFkb25seSBidXR0b25TbG90ID0gaW5wdXQucmVxdWlyZWQ8VGVtcGxhdGVSZWY8dW5rbm93bj4+KCk7XG4gICAgcHVibGljIHJlYWRvbmx5IGNvbnRlbnRTbG90ID0gaW5wdXQucmVxdWlyZWQ8VGVtcGxhdGVSZWY8dW5rbm93bj4+KCk7XG4gICAgcHVibGljIHJlYWRvbmx5IHNlbGVjdGVkSW5kZXggPSBpbnB1dCgwKTtcbiAgICBwdWJsaWMgcmVhZG9ubHkgc2VsZWN0ZWRJbmRleENoYW5nZSA9IG91dHB1dDxudW1iZXI+KCk7XG5cbiAgICBwcm90ZWN0ZWQgdHJhY2tUYWIoaW5kZXg6IG51bWJlciwgdGFiOiB1bmtub3duKTogdW5rbm93biB7XG4gICAgICAgIGlmICh0YWIgJiYgdHlwZW9mIHRhYiA9PT0gJ29iamVjdCcgJiYgJ2lkJyBpbiAodGFiIGFzIG9iamVjdCkpIHtcbiAgICAgICAgICAgIHJldHVybiAodGFiIGFzIHsgaWQ6IHVua25vd24gfSkuaWQ7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gYHRhYl8ke2luZGV4fWA7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uU2VsZWN0VGFiKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZEluZGV4Q2hhbmdlLmVtaXQoaW5kZXgpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblNjcm9sbExlZnQoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGJ1dHRvbnNFbGVtZW50ID0gdGhpcy5idXR0b25zKCkubmF0aXZlRWxlbWVudDtcblxuICAgICAgICBidXR0b25zRWxlbWVudC5zY3JvbGxUbyh7XG4gICAgICAgICAgICBsZWZ0OiBidXR0b25zRWxlbWVudC5zY3JvbGxMZWZ0IC0gdGhpcy5TQ1JPTExfTEVOR1RILFxuICAgICAgICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblNjcm9sbFJpZ2h0KCk6IHZvaWQge1xuICAgICAgICBjb25zdCBidXR0b25zRWxlbWVudCA9IHRoaXMuYnV0dG9ucygpLm5hdGl2ZUVsZW1lbnQ7XG5cbiAgICAgICAgYnV0dG9uc0VsZW1lbnQuc2Nyb2xsVG8oe1xuICAgICAgICAgICAgbGVmdDogYnV0dG9uc0VsZW1lbnQuc2Nyb2xsTGVmdCArIHRoaXMuU0NST0xMX0xFTkdUSCxcbiAgICAgICAgICAgIGJlaGF2aW9yOiAnc21vb3RoJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyICp0cmFuc2xvY289XCJsZXQgdFwiPlxuICAgIDxjdWktdGFic1xuICAgICAgICBjbGFzcz1cInRhYnNcIlxuICAgICAgICBbc2VsZWN0ZWRJbmRleF09XCJzZWxlY3RlZEluZGV4KClcIlxuICAgICAgICBbaGVhZGVyU2xvdF09XCJoZWFkZXJTbG90XCJcbiAgICA+XG4gICAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAgICAgI2hlYWRlclNsb3RcbiAgICAgICAgICAgIGxldC1idXR0b25zXG4gICAgICAgID5cbiAgICAgICAgICAgIDxoZWFkZXIgY2xhc3M9XCJoZWFkZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICNidXR0b25zXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnV0dG9uc1wiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImJ1dHRvbnNcIiAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb25zXCI+XG4gICAgICAgICAgICAgICAgICAgIEBpZiAodGFicygpLmxlbmd0aCA+IDQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdWlCdXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcHBlYXJhbmNlPVwiZ2hvc3RcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemU9XCJ4eHNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb249XCJjdWlJY29uQ2hldnJvbkxlZnRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvblNjcm9sbExlZnQoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+PC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VpQnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBwZWFyYW5jZT1cImdob3N0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplPVwieHhzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uPVwiY3VpSWNvbkNoZXZyb25SaWdodFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uU2Nyb2xsUmlnaHQoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+PC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImJ1dHRvblNsb3QoKVwiIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2hlYWRlcj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgICAgICBAZm9yICh0YWIgb2YgdGFicygpOyB0cmFjayB0cmFja1RhYigkaW5kZXgsIHRhYik7IGxldCBpID0gJGluZGV4KSB7XG4gICAgICAgICAgICA8Y3VpLXRhYlxuICAgICAgICAgICAgICAgIFtkYXRhXT1cInRhYlwiXG4gICAgICAgICAgICAgICAgW2J1dHRvblNsb3RdPVwiY3VpQnV0dG9uU2xvdFwiXG4gICAgICAgICAgICAgICAgW2NvbnRlbnRTbG90XT1cImN1aUNvbnRlbnRTbG90XCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInRhYlwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgICAgICAgICAgICNjdWlCdXR0b25TbG90XG4gICAgICAgICAgICAgICAgICAgIGxldC1pc0FjdGl2ZT1cImlzQWN0aXZlXCJcbiAgICAgICAgICAgICAgICAgICAgbGV0LWVsZW1lbnRcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5idXR0b25fYWN0aXZlXT1cImlzQWN0aXZlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvblNlbGVjdFRhYihpKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoa2V5dXAuZW50ZXIpPVwib25TZWxlY3RUYWIoaSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgcm9sZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICB0YWJpbmRleD1cIjBcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiaXRlbVNsb3QoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBlbGVtZW50IH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgICAgICAgICAgICAgI2N1aUNvbnRlbnRTbG90XG4gICAgICAgICAgICAgICAgICAgIGxldC1lbGVtZW50XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGVudFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImNvbnRlbnRTbG90KClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogZWxlbWVudCB9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICA8L2N1aS10YWI+XG4gICAgICAgIH1cbiAgICA8L2N1aS10YWJzPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzaWduZWUtcm9sZXMtdGFicy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvdWkvYXNzaWduZWUtcm9sZXMtdGFicy9hc3NpZ25lZS1yb2xlcy10YWJzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvd2lkZ2V0cy91aS9hc3NpZ25lZS1yb2xlcy10YWJzL2Fzc2lnbmVlLXJvbGVzLXRhYnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxLQUFLLEVBQUUsTUFBTSxFQUFlLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM3RixPQUFPLEVBQ0gsZUFBZSxFQUNmLGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIsa0JBQWtCLEVBQ2xCLGNBQWMsRUFDakIsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7O0FBVW5ELE1BQU0sT0FBTywwQkFBMEI7SUFSdkM7UUFTdUIsa0JBQWEsR0FBRyxHQUFHLENBQUM7UUFFcEIsWUFBTyxHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQTZCLFNBQVMsQ0FBQyxDQUFDO1FBRXZFLFNBQUksR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFhLENBQUM7UUFDbkMsYUFBUSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXdCLENBQUM7UUFDbEQsZUFBVSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXdCLENBQUM7UUFDcEQsZ0JBQVcsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUF3QixDQUFDO1FBQ3JELGtCQUFhLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3pCLHdCQUFtQixHQUFHLE1BQU0sRUFBVSxDQUFDO0tBK0IxRDtJQTdCYSxRQUFRLENBQUMsS0FBYSxFQUFFLEdBQVk7UUFDMUMsSUFBSSxHQUFHLElBQUksT0FBTyxHQUFHLEtBQUssUUFBUSxJQUFJLElBQUksSUFBSyxHQUFjLEVBQUUsQ0FBQztZQUM1RCxPQUFRLEdBQXVCLENBQUMsRUFBRSxDQUFDO1FBQ3ZDLENBQUM7UUFFRCxPQUFPLE9BQU8sS0FBSyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVTLFdBQVcsQ0FBQyxLQUFhO1FBQy9CLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVTLFlBQVk7UUFDbEIsTUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLGFBQWEsQ0FBQztRQUVwRCxjQUFjLENBQUMsUUFBUSxDQUFDO1lBQ3BCLElBQUksRUFBRSxjQUFjLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxhQUFhO1lBQ3BELFFBQVEsRUFBRSxRQUFRO1NBQ3JCLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFUyxhQUFhO1FBQ25CLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxhQUFhLENBQUM7UUFFcEQsY0FBYyxDQUFDLFFBQVEsQ0FBQztZQUNwQixJQUFJLEVBQUUsY0FBYyxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsYUFBYTtZQUNwRCxRQUFRLEVBQUUsUUFBUTtTQUNyQixDQUFDLENBQUM7SUFDUCxDQUFDOytHQXhDUSwwQkFBMEI7bUdBQTFCLDBCQUEwQiw4eEJBRnhCLENBQUMsY0FBYyxDQUFDLGtCQUFrQixDQUFDLENBQUMsOElDakJuRCx3OUZBbUZBLGlpQ0RyRWMsZ0JBQWdCLDhGQUFFLGVBQWUsNkdBQUUsa0JBQWtCLCtMQUFFLGVBQWUsb09BQUUsZ0JBQWdCOzs0RkFLekYsMEJBQTBCO2tCQVJ0QyxTQUFTOytCQUNJLHlCQUF5QixjQUN2QixJQUFJLFdBQ1AsQ0FBQyxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsa0JBQWtCLEVBQUUsZUFBZSxFQUFFLGdCQUFnQixDQUFDLGFBR3hGLENBQUMsY0FBYyxDQUFDLGtCQUFrQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIGlucHV0LCBvdXRwdXQsIFRlbXBsYXRlUmVmLCB2aWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgQ3VpQnV0dG9uTW9kdWxlLFxuICAgIEN1aVRhYkRpcmVjdGl2ZSxcbiAgICBDdWlUYWJzQ29tcG9uZW50LFxuICAgIEN1aVRhYnNTZXJ2aWNlSW1wbCxcbiAgICBwcm92aWRlQ3VpVGFic1xufSBmcm9tICcuLi8uLi8uLi9jb21wb25lbnRzJztcbmltcG9ydCB7IFRyYW5zbG9jb0RpcmVjdGl2ZSB9IGZyb20gJ0Bqc3ZlcnNlL3RyYW5zbG9jbyc7XG5pbXBvcnQgeyBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdjdWktYXNzaWduZWUtcm9sZXMtdGFicycsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbQ3VpVGFic0NvbXBvbmVudCwgQ3VpVGFiRGlyZWN0aXZlLCBUcmFuc2xvY29EaXJlY3RpdmUsIEN1aUJ1dHRvbk1vZHVsZSwgTmdUZW1wbGF0ZU91dGxldF0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL2Fzc2lnbmVlLXJvbGVzLXRhYnMuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsOiAnLi9hc3NpZ25lZS1yb2xlcy10YWJzLmNvbXBvbmVudC5zY3NzJyxcbiAgICBwcm92aWRlcnM6IFtwcm92aWRlQ3VpVGFicyhDdWlUYWJzU2VydmljZUltcGwpXVxufSlcbmV4cG9ydCBjbGFzcyBBc3NpZ25lZVJvbGVzVGFic0NvbXBvbmVudCB7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IFNDUk9MTF9MRU5HVEggPSAyMDA7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgYnV0dG9ucyA9IHZpZXdDaGlsZC5yZXF1aXJlZDxFbGVtZW50UmVmPEhUTUxEaXZFbGVtZW50Pj4oJ2J1dHRvbnMnKTtcblxuICAgIHB1YmxpYyByZWFkb25seSB0YWJzID0gaW5wdXQucmVxdWlyZWQ8dW5rbm93bltdPigpO1xuICAgIHB1YmxpYyByZWFkb25seSBpdGVtU2xvdCA9IGlucHV0LnJlcXVpcmVkPFRlbXBsYXRlUmVmPHVua25vd24+PigpO1xuICAgIHB1YmxpYyByZWFkb25seSBidXR0b25TbG90ID0gaW5wdXQucmVxdWlyZWQ8VGVtcGxhdGVSZWY8dW5rbm93bj4+KCk7XG4gICAgcHVibGljIHJlYWRvbmx5IGNvbnRlbnRTbG90ID0gaW5wdXQucmVxdWlyZWQ8VGVtcGxhdGVSZWY8dW5rbm93bj4+KCk7XG4gICAgcHVibGljIHJlYWRvbmx5IHNlbGVjdGVkSW5kZXggPSBpbnB1dCgwKTtcbiAgICBwdWJsaWMgcmVhZG9ubHkgc2VsZWN0ZWRJbmRleENoYW5nZSA9IG91dHB1dDxudW1iZXI+KCk7XG5cbiAgICBwcm90ZWN0ZWQgdHJhY2tUYWIoaW5kZXg6IG51bWJlciwgdGFiOiB1bmtub3duKTogdW5rbm93biB7XG4gICAgICAgIGlmICh0YWIgJiYgdHlwZW9mIHRhYiA9PT0gJ29iamVjdCcgJiYgJ2lkJyBpbiAodGFiIGFzIG9iamVjdCkpIHtcbiAgICAgICAgICAgIHJldHVybiAodGFiIGFzIHsgaWQ6IHVua25vd24gfSkuaWQ7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gYHRhYl8ke2luZGV4fWA7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uU2VsZWN0VGFiKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZEluZGV4Q2hhbmdlLmVtaXQoaW5kZXgpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblNjcm9sbExlZnQoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGJ1dHRvbnNFbGVtZW50ID0gdGhpcy5idXR0b25zKCkubmF0aXZlRWxlbWVudDtcblxuICAgICAgICBidXR0b25zRWxlbWVudC5zY3JvbGxUbyh7XG4gICAgICAgICAgICBsZWZ0OiBidXR0b25zRWxlbWVudC5zY3JvbGxMZWZ0IC0gdGhpcy5TQ1JPTExfTEVOR1RILFxuICAgICAgICAgICAgYmVoYXZpb3I6ICdzbW9vdGgnXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblNjcm9sbFJpZ2h0KCk6IHZvaWQge1xuICAgICAgICBjb25zdCBidXR0b25zRWxlbWVudCA9IHRoaXMuYnV0dG9ucygpLm5hdGl2ZUVsZW1lbnQ7XG5cbiAgICAgICAgYnV0dG9uc0VsZW1lbnQuc2Nyb2xsVG8oe1xuICAgICAgICAgICAgbGVmdDogYnV0dG9uc0VsZW1lbnQuc2Nyb2xsTGVmdCArIHRoaXMuU0NST0xMX0xFTkdUSCxcbiAgICAgICAgICAgIGJlaGF2aW9yOiAnc21vb3RoJ1xuICAgICAgICB9KTtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyICp0cmFuc2xvY289XCJsZXQgdFwiPlxuICAgIDxjdWktdGFic1xuICAgICAgICBjbGFzcz1cInRhYnNcIlxuICAgICAgICBbc2VsZWN0ZWRJbmRleF09XCJzZWxlY3RlZEluZGV4KClcIlxuICAgICAgICBbaGVhZGVyU2xvdF09XCJoZWFkZXJTbG90XCJcbiAgICA+XG4gICAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAgICAgI2hlYWRlclNsb3RcbiAgICAgICAgICAgIGxldC1idXR0b25zXG4gICAgICAgID5cbiAgICAgICAgICAgIDxoZWFkZXIgY2xhc3M9XCJoZWFkZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICNidXR0b25zXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnV0dG9uc1wiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImJ1dHRvbnNcIiAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb25zXCI+XG4gICAgICAgICAgICAgICAgICAgIEBpZiAodGFicygpLmxlbmd0aCA+IDQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdWlCdXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhcHBlYXJhbmNlPVwiZ2hvc3RcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNpemU9XCJ4eHNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGljb249XCJjdWlJY29uQ2hldnJvbkxlZnRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvblNjcm9sbExlZnQoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+PC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VpQnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXBwZWFyYW5jZT1cImdob3N0XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplPVwieHhzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpY29uPVwiY3VpSWNvbkNoZXZyb25SaWdodFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uU2Nyb2xsUmlnaHQoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICA+PC9idXR0b24+XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImJ1dHRvblNsb3QoKVwiIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2hlYWRlcj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cblxuICAgICAgICBAZm9yICh0YWIgb2YgdGFicygpOyB0cmFjayB0cmFja1RhYigkaW5kZXgsIHRhYik7IGxldCBpID0gJGluZGV4KSB7XG4gICAgICAgICAgICA8Y3VpLXRhYlxuICAgICAgICAgICAgICAgIFtkYXRhXT1cInRhYlwiXG4gICAgICAgICAgICAgICAgW2J1dHRvblNsb3RdPVwiY3VpQnV0dG9uU2xvdFwiXG4gICAgICAgICAgICAgICAgW2NvbnRlbnRTbG90XT1cImN1aUNvbnRlbnRTbG90XCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInRhYlwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgICAgICAgICAgICNjdWlCdXR0b25TbG90XG4gICAgICAgICAgICAgICAgICAgIGxldC1pc0FjdGl2ZT1cImlzQWN0aXZlXCJcbiAgICAgICAgICAgICAgICAgICAgbGV0LWVsZW1lbnRcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5idXR0b25fYWN0aXZlXT1cImlzQWN0aXZlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJvblNlbGVjdFRhYihpKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoa2V5dXAuZW50ZXIpPVwib25TZWxlY3RUYWIoaSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgcm9sZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICB0YWJpbmRleD1cIjBcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiaXRlbVNsb3QoKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBlbGVtZW50IH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgICAgICAgICAgICAgI2N1aUNvbnRlbnRTbG90XG4gICAgICAgICAgICAgICAgICAgIGxldC1lbGVtZW50XG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGVudFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImNvbnRlbnRTbG90KClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogZWxlbWVudCB9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICA8L2N1aS10YWI+XG4gICAgICAgIH1cbiAgICA8L2N1aS10YWJzPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
@@ -14,7 +14,7 @@ export class ButtonChangeThemeComponent {
14
14
  this.cuiThemeService.next(theme);
15
15
  }
16
16
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ButtonChangeThemeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
17
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ButtonChangeThemeComponent, isStandalone: true, selector: "cui-button-change-theme", ngImport: i0, template: "@let currentTheme = theme$ | async;\n\n<ng-container *transloco=\"let t\">\n<button type=\"button\"\n class=\"custom-button\">\n <div class=\"content-button\">\n <cui-svg icon=\"cuiIconPaletteSm\" />\n <div class=\"text-and-sub-button\">\n {{ t('SWITCH_THEME') }}\n <div class=\"group-sub-button\">\n <div\n [class.button-select]=\"currentTheme === 'dark'\"\n class=\"container-sub-button\"\n >\n <cui-svg\n icon=\"cuiIconMoon\"\n color=\"var(--cui-base-500)\"\n (click)=\"onChangeTheme('dark')\"\n />\n </div>\n <div\n [class.button-select]=\"currentTheme === 'light'\"\n class=\"container-sub-button\"\n >\n <cui-svg\n icon=\"cuiIconSun\"\n color=\"var(--cui-base-500)\"\n (click)=\"onChangeTheme('light')\"\n />\n </div>\n </div>\n </div>\n </div>\n</button>\n</ng-container>\n", styles: [".content-button{display:flex;gap:8px;align-items:center;padding-right:8px;padding-left:8px;height:36px;color:var(--cui-base-900)}.text-and-sub-button{display:flex;align-items:center;justify-content:space-between;width:100%}.group-sub-button{display:flex;gap:4px}.container-sub-button{display:flex;align-items:center;justify-content:center;text-transform:capitalize;border:solid 1px var(--cui-base-200);border-radius:4px;width:28px;height:28px}.button-select{border:solid 1px var(--cui-badge-blue-border);background-color:var(--cui-badge-blue-bg)}.custom-button{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CuiSvgModule }, { kind: "component", type: i1.CuiSvgComponent, selector: "cui-svg[icon]", inputs: ["width", "height", "strokeWidth", "color", "icon"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }] }); }
17
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ButtonChangeThemeComponent, isStandalone: true, selector: "cui-button-change-theme", ngImport: i0, template: "@let currentTheme = theme$ | async;\n\n<ng-container *transloco=\"let t\">\n<button type=\"button\"\n class=\"custom-button\">\n <div class=\"content-button\">\n <cui-svg icon=\"cuiIconPaletteSm\" />\n <div class=\"text-and-sub-button\">\n {{ t('SWITCH_THEME') }}\n <div class=\"group-sub-button\">\n <div\n [class.button-select]=\"currentTheme === 'dark'\"\n class=\"container-sub-button\"\n >\n <cui-svg\n icon=\"cuiIconMoon\"\n color=\"var(--cui-base-500)\"\n (click)=\"onChangeTheme('dark')\"\n />\n </div>\n <div\n [class.button-select]=\"currentTheme === 'light'\"\n class=\"container-sub-button\"\n >\n <cui-svg\n icon=\"cuiIconSun\"\n color=\"var(--cui-base-500)\"\n (click)=\"onChangeTheme('light')\"\n />\n </div>\n </div>\n </div>\n </div>\n</button>\n</ng-container>\n", styles: [".content-button{display:flex;flex-direction:row;gap:8px;align-items:center;justify-content:flex-start;padding-right:8px;padding-left:8px;height:36px;color:var(--cui-base-900)}.text-and-sub-button{display:flex;flex-direction:row;gap:0;align-items:center;justify-content:space-between;width:100%}.group-sub-button{display:flex;flex-direction:row;gap:4px}.container-sub-button{display:flex;flex-direction:row;gap:0;align-items:center;justify-content:center;text-transform:capitalize;border:solid 1px var(--cui-base-200);border-radius:4px;width:28px;height:28px}.button-select{border:solid 1px var(--cui-badge-blue-border);background-color:var(--cui-badge-blue-bg)}.custom-button{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CuiSvgModule }, { kind: "component", type: i1.CuiSvgComponent, selector: "cui-svg[icon]", inputs: ["width", "height", "strokeWidth", "color", "icon"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }] }); }
18
18
  }
19
19
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ButtonChangeThemeComponent, decorators: [{
20
20
  type: Component,
@@ -22,6 +22,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
22
22
  CuiSvgModule,
23
23
  AsyncPipe,
24
24
  TranslocoDirective
25
- ], template: "@let currentTheme = theme$ | async;\n\n<ng-container *transloco=\"let t\">\n<button type=\"button\"\n class=\"custom-button\">\n <div class=\"content-button\">\n <cui-svg icon=\"cuiIconPaletteSm\" />\n <div class=\"text-and-sub-button\">\n {{ t('SWITCH_THEME') }}\n <div class=\"group-sub-button\">\n <div\n [class.button-select]=\"currentTheme === 'dark'\"\n class=\"container-sub-button\"\n >\n <cui-svg\n icon=\"cuiIconMoon\"\n color=\"var(--cui-base-500)\"\n (click)=\"onChangeTheme('dark')\"\n />\n </div>\n <div\n [class.button-select]=\"currentTheme === 'light'\"\n class=\"container-sub-button\"\n >\n <cui-svg\n icon=\"cuiIconSun\"\n color=\"var(--cui-base-500)\"\n (click)=\"onChangeTheme('light')\"\n />\n </div>\n </div>\n </div>\n </div>\n</button>\n</ng-container>\n", styles: [".content-button{display:flex;gap:8px;align-items:center;padding-right:8px;padding-left:8px;height:36px;color:var(--cui-base-900)}.text-and-sub-button{display:flex;align-items:center;justify-content:space-between;width:100%}.group-sub-button{display:flex;gap:4px}.container-sub-button{display:flex;align-items:center;justify-content:center;text-transform:capitalize;border:solid 1px var(--cui-base-200);border-radius:4px;width:28px;height:28px}.button-select{border:solid 1px var(--cui-badge-blue-border);background-color:var(--cui-badge-blue-bg)}.custom-button{width:100%}\n"] }]
25
+ ], template: "@let currentTheme = theme$ | async;\n\n<ng-container *transloco=\"let t\">\n<button type=\"button\"\n class=\"custom-button\">\n <div class=\"content-button\">\n <cui-svg icon=\"cuiIconPaletteSm\" />\n <div class=\"text-and-sub-button\">\n {{ t('SWITCH_THEME') }}\n <div class=\"group-sub-button\">\n <div\n [class.button-select]=\"currentTheme === 'dark'\"\n class=\"container-sub-button\"\n >\n <cui-svg\n icon=\"cuiIconMoon\"\n color=\"var(--cui-base-500)\"\n (click)=\"onChangeTheme('dark')\"\n />\n </div>\n <div\n [class.button-select]=\"currentTheme === 'light'\"\n class=\"container-sub-button\"\n >\n <cui-svg\n icon=\"cuiIconSun\"\n color=\"var(--cui-base-500)\"\n (click)=\"onChangeTheme('light')\"\n />\n </div>\n </div>\n </div>\n </div>\n</button>\n</ng-container>\n", styles: [".content-button{display:flex;flex-direction:row;gap:8px;align-items:center;justify-content:flex-start;padding-right:8px;padding-left:8px;height:36px;color:var(--cui-base-900)}.text-and-sub-button{display:flex;flex-direction:row;gap:0;align-items:center;justify-content:space-between;width:100%}.group-sub-button{display:flex;flex-direction:row;gap:4px}.container-sub-button{display:flex;flex-direction:row;gap:0;align-items:center;justify-content:center;text-transform:capitalize;border:solid 1px var(--cui-base-200);border-radius:4px;width:28px;height:28px}.button-select{border:solid 1px var(--cui-badge-blue-border);background-color:var(--cui-badge-blue-bg)}.custom-button{width:100%}\n"] }]
26
26
  }] });
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLWNoYW5nZS10aGVtZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvdWkvYnV0dG9uLWNoYW5nZS10aGVtZS9idXR0b24tY2hhbmdlLXRoZW1lLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvd2lkZ2V0cy91aS9idXR0b24tY2hhbmdlLXRoZW1lL2J1dHRvbi1jaGFuZ2UtdGhlbWUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3JELE9BQU8sRUFBVyxlQUFlLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUM1RCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7OztBQWF0RCxNQUFNLE9BQU8sMEJBQTBCO0lBWHZDO1FBWXFCLG9CQUFlLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3hDLFdBQU0sR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFlBQVksRUFBRSxDQUFDO0tBS25FO0lBSGEsYUFBYSxDQUFDLEtBQWU7UUFDbkMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckMsQ0FBQzsrR0FOUSwwQkFBMEI7bUdBQTFCLDBCQUEwQixtRkNqQnZDLDZzQ0FtQ0EsdW5CRHpCUSxZQUFZLG1LQUNaLFNBQVMsOENBQ1Qsa0JBQWtCOzs0RkFLYiwwQkFBMEI7a0JBWHRDLFNBQVM7K0JBQ0UseUJBQXlCLGNBQ3ZCLElBQUksV0FDTDt3QkFDTCxZQUFZO3dCQUNaLFNBQVM7d0JBQ1Qsa0JBQWtCO3FCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBpbmplY3R9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtDdWlTdmdNb2R1bGV9IGZyb20gXCIuLi8uLi8uLi9jb21wb25lbnRzL3N2Z1wiO1xuaW1wb3J0IHtDdWlUaGVtZSwgQ3VpVGhlbWVTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZXNcIjtcbmltcG9ydCB7QXN5bmNQaXBlfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5pbXBvcnQge1RyYW5zbG9jb0RpcmVjdGl2ZX0gZnJvbSBcIkBqc3ZlcnNlL3RyYW5zbG9jb1wiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjdWktYnV0dG9uLWNoYW5nZS10aGVtZScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDdWlTdmdNb2R1bGUsXG4gICAgICAgIEFzeW5jUGlwZSxcbiAgICAgICAgVHJhbnNsb2NvRGlyZWN0aXZlXG4gICAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2J1dHRvbi1jaGFuZ2UtdGhlbWUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vYnV0dG9uLWNoYW5nZS10aGVtZS5jb21wb25lbnQuc2Nzcydcbn0pXG5leHBvcnQgY2xhc3MgQnV0dG9uQ2hhbmdlVGhlbWVDb21wb25lbnQge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY3VpVGhlbWVTZXJ2aWNlID0gaW5qZWN0KEN1aVRoZW1lU2VydmljZSk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHRoZW1lJCA9IHRoaXMuY3VpVGhlbWVTZXJ2aWNlLmFzT2JzZXJ2YWJsZSgpO1xuXG4gICAgcHJvdGVjdGVkIG9uQ2hhbmdlVGhlbWUodGhlbWU6IEN1aVRoZW1lKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY3VpVGhlbWVTZXJ2aWNlLm5leHQodGhlbWUpO1xuICAgIH1cbn1cbiIsIkBsZXQgY3VycmVudFRoZW1lID0gdGhlbWUkIHwgYXN5bmM7XG5cbjxuZy1jb250YWluZXIgKnRyYW5zbG9jbz1cImxldCB0XCI+XG48YnV0dG9uIHR5cGU9XCJidXR0b25cIlxuICAgICAgICBjbGFzcz1cImN1c3RvbS1idXR0b25cIj5cbiAgICA8ZGl2IGNsYXNzPVwiY29udGVudC1idXR0b25cIj5cbiAgICAgICAgPGN1aS1zdmcgaWNvbj1cImN1aUljb25QYWxldHRlU21cIiAvPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1hbmQtc3ViLWJ1dHRvblwiPlxuICAgICAgICAgICAge3sgdCgnU1dJVENIX1RIRU1FJykgfX1cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJncm91cC1zdWItYnV0dG9uXCI+XG4gICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYnV0dG9uLXNlbGVjdF09XCJjdXJyZW50VGhlbWUgPT09ICdkYXJrJ1wiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY29udGFpbmVyLXN1Yi1idXR0b25cIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGN1aS1zdmdcbiAgICAgICAgICAgICAgICAgICAgICAgIGljb249XCJjdWlJY29uTW9vblwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcj1cInZhcigtLWN1aS1iYXNlLTUwMClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2hhbmdlVGhlbWUoJ2RhcmsnKVwiXG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYnV0dG9uLXNlbGVjdF09XCJjdXJyZW50VGhlbWUgPT09ICdsaWdodCdcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNvbnRhaW5lci1zdWItYnV0dG9uXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxjdWktc3ZnXG4gICAgICAgICAgICAgICAgICAgICAgICBpY29uPVwiY3VpSWNvblN1blwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcj1cInZhcigtLWN1aS1iYXNlLTUwMClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2hhbmdlVGhlbWUoJ2xpZ2h0JylcIlxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9idXR0b24+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLWNoYW5nZS10aGVtZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvdWkvYnV0dG9uLWNoYW5nZS10aGVtZS9idXR0b24tY2hhbmdlLXRoZW1lLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvd2lkZ2V0cy91aS9idXR0b24tY2hhbmdlLXRoZW1lL2J1dHRvbi1jaGFuZ2UtdGhlbWUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDaEQsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQ3JELE9BQU8sRUFBVyxlQUFlLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUM1RCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7OztBQWF0RCxNQUFNLE9BQU8sMEJBQTBCO0lBWHZDO1FBWXFCLG9CQUFlLEdBQUcsTUFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQ3hDLFdBQU0sR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLFlBQVksRUFBRSxDQUFDO0tBS25FO0lBSGEsYUFBYSxDQUFDLEtBQWU7UUFDbkMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckMsQ0FBQzsrR0FOUSwwQkFBMEI7bUdBQTFCLDBCQUEwQixtRkNqQnZDLDZzQ0FtQ0EsMHVCRHpCUSxZQUFZLG1LQUNaLFNBQVMsOENBQ1Qsa0JBQWtCOzs0RkFLYiwwQkFBMEI7a0JBWHRDLFNBQVM7K0JBQ0UseUJBQXlCLGNBQ3ZCLElBQUksV0FDTDt3QkFDTCxZQUFZO3dCQUNaLFNBQVM7d0JBQ1Qsa0JBQWtCO3FCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBpbmplY3R9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtDdWlTdmdNb2R1bGV9IGZyb20gXCIuLi8uLi8uLi9jb21wb25lbnRzL3N2Z1wiO1xuaW1wb3J0IHtDdWlUaGVtZSwgQ3VpVGhlbWVTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vLi4vc2VydmljZXNcIjtcbmltcG9ydCB7QXN5bmNQaXBlfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5pbXBvcnQge1RyYW5zbG9jb0RpcmVjdGl2ZX0gZnJvbSBcIkBqc3ZlcnNlL3RyYW5zbG9jb1wiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjdWktYnV0dG9uLWNoYW5nZS10aGVtZScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDdWlTdmdNb2R1bGUsXG4gICAgICAgIEFzeW5jUGlwZSxcbiAgICAgICAgVHJhbnNsb2NvRGlyZWN0aXZlXG4gICAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2J1dHRvbi1jaGFuZ2UtdGhlbWUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogJy4vYnV0dG9uLWNoYW5nZS10aGVtZS5jb21wb25lbnQuc2Nzcydcbn0pXG5leHBvcnQgY2xhc3MgQnV0dG9uQ2hhbmdlVGhlbWVDb21wb25lbnQge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY3VpVGhlbWVTZXJ2aWNlID0gaW5qZWN0KEN1aVRoZW1lU2VydmljZSk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHRoZW1lJCA9IHRoaXMuY3VpVGhlbWVTZXJ2aWNlLmFzT2JzZXJ2YWJsZSgpO1xuXG4gICAgcHJvdGVjdGVkIG9uQ2hhbmdlVGhlbWUodGhlbWU6IEN1aVRoZW1lKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY3VpVGhlbWVTZXJ2aWNlLm5leHQodGhlbWUpO1xuICAgIH1cbn1cbiIsIkBsZXQgY3VycmVudFRoZW1lID0gdGhlbWUkIHwgYXN5bmM7XG5cbjxuZy1jb250YWluZXIgKnRyYW5zbG9jbz1cImxldCB0XCI+XG48YnV0dG9uIHR5cGU9XCJidXR0b25cIlxuICAgICAgICBjbGFzcz1cImN1c3RvbS1idXR0b25cIj5cbiAgICA8ZGl2IGNsYXNzPVwiY29udGVudC1idXR0b25cIj5cbiAgICAgICAgPGN1aS1zdmcgaWNvbj1cImN1aUljb25QYWxldHRlU21cIiAvPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidGV4dC1hbmQtc3ViLWJ1dHRvblwiPlxuICAgICAgICAgICAge3sgdCgnU1dJVENIX1RIRU1FJykgfX1cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJncm91cC1zdWItYnV0dG9uXCI+XG4gICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYnV0dG9uLXNlbGVjdF09XCJjdXJyZW50VGhlbWUgPT09ICdkYXJrJ1wiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY29udGFpbmVyLXN1Yi1idXR0b25cIlxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGN1aS1zdmdcbiAgICAgICAgICAgICAgICAgICAgICAgIGljb249XCJjdWlJY29uTW9vblwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcj1cInZhcigtLWN1aS1iYXNlLTUwMClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2hhbmdlVGhlbWUoJ2RhcmsnKVwiXG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPGRpdlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYnV0dG9uLXNlbGVjdF09XCJjdXJyZW50VGhlbWUgPT09ICdsaWdodCdcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNvbnRhaW5lci1zdWItYnV0dG9uXCJcbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDxjdWktc3ZnXG4gICAgICAgICAgICAgICAgICAgICAgICBpY29uPVwiY3VpSWNvblN1blwiXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcj1cInZhcigtLWN1aS1iYXNlLTUwMClcIlxuICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uQ2hhbmdlVGhlbWUoJ2xpZ2h0JylcIlxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9idXR0b24+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
@@ -60,7 +60,7 @@ export class CuiCategoryFormComponent {
60
60
  Promise.resolve().then(() => this.input().nativeElement.focus());
61
61
  }
62
62
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CuiCategoryFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
63
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.14", type: CuiCategoryFormComponent, isStandalone: true, selector: "cui-category-form", inputs: { isDisabled: { classPropertyName: "isDisabled", publicName: "isDisabled", isSignal: true, isRequired: false, transformFunction: null }, defaultTitle: { classPropertyName: "defaultTitle", publicName: "defaultTitle", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { created: "created", canceled: "canceled" }, host: { listeners: { "click": "onHostClick($event)" } }, viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true, read: ElementRef, isSignal: true }], ngImport: i0, template: "<ng-container *transloco=\"let t\">\n <form\n [formGroup]=\"form\"\n class=\"form\"\n (ngSubmit)=\"onSubmit()\"\n >\n <div class=\"input\">\n <input\n #input\n cuiGhostInput\n formControlName=\"title\"\n type=\"text\"\n placeholder=\"{{ t('ADD_CATEGORY_NAME') }}...\"\n [isError]=\"isTitleInvalid\"\n (keyup)=\"$event.preventDefault()\"\n />\n <cui-general-control-error-hint [control]=\"titleControl\" />\n </div>\n <button\n cuiIconButton\n type=\"submit\"\n icon=\"cuiIconCheck\"\n color=\"var(--cui-success)\"\n [disabled]=\"isSubmitButtonDisabled\"\n class=\"button\"\n ></button>\n </form>\n <button\n cuiIconButton\n type=\"button\"\n icon=\"cuiIconXCircle\"\n color=\"var(--cui-danger)\"\n (click)=\"onCancel($event)\"\n [disabled]=\"isDisabled()\"\n class=\"button\"\n ></button>\n</ng-container>\n", styles: [":host{padding-top:2px;padding-bottom:2px;display:flex;gap:4px;flex-grow:1}.form,.input{flex-grow:1}.form{display:flex;gap:4px}.input{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.button{width:28px}.button:disabled{opacity:.5}\n"], dependencies: [{ kind: "ngmodule", type: CuiFormFieldModule }, { kind: "ngmodule", type: CuiHintModule }, { kind: "ngmodule", type: CuiIconButtonModule }, { kind: "component", type: i1.CuiIconButtonComponent, selector: "button[cuiIconButton][icon], a[cuiIconButton][icon]", inputs: ["icon", "color", "hoverColor"] }, { kind: "component", type: CuiGeneralControlErrorHintComponent, selector: "cui-general-control-error-hint", inputs: ["control", "isVisible"] }, { kind: "component", type: CuiGhostInputComponent, selector: "input [cuiGhostInput]", inputs: ["isError"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
63
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.14", type: CuiCategoryFormComponent, isStandalone: true, selector: "cui-category-form", inputs: { isDisabled: { classPropertyName: "isDisabled", publicName: "isDisabled", isSignal: true, isRequired: false, transformFunction: null }, defaultTitle: { classPropertyName: "defaultTitle", publicName: "defaultTitle", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { created: "created", canceled: "canceled" }, host: { listeners: { "click": "onHostClick($event)" } }, viewQueries: [{ propertyName: "input", first: true, predicate: ["input"], descendants: true, read: ElementRef, isSignal: true }], ngImport: i0, template: "<ng-container *transloco=\"let t\">\n <form\n [formGroup]=\"form\"\n class=\"form\"\n (ngSubmit)=\"onSubmit()\"\n >\n <div class=\"input\">\n <input\n #input\n cuiGhostInput\n formControlName=\"title\"\n type=\"text\"\n placeholder=\"{{ t('ADD_CATEGORY_NAME') }}...\"\n [isError]=\"isTitleInvalid\"\n (keyup)=\"$event.preventDefault()\"\n />\n <cui-general-control-error-hint [control]=\"titleControl\" />\n </div>\n <button\n cuiIconButton\n type=\"submit\"\n icon=\"cuiIconCheck\"\n color=\"var(--cui-success)\"\n [disabled]=\"isSubmitButtonDisabled\"\n class=\"button\"\n ></button>\n </form>\n <button\n cuiIconButton\n type=\"button\"\n icon=\"cuiIconXCircle\"\n color=\"var(--cui-danger)\"\n (click)=\"onCancel($event)\"\n [disabled]=\"isDisabled()\"\n class=\"button\"\n ></button>\n</ng-container>\n", styles: [":host{padding-top:2px;padding-bottom:2px;display:flex;gap:4px;flex-grow:1}.form,.input{flex-grow:1}.form{display:flex;flex-direction:row;gap:4px}.input{display:flex;flex-direction:column;gap:4px;align-items:flex-start;justify-content:flex-start}.button{width:28px}.button:disabled{opacity:.5}\n"], dependencies: [{ kind: "ngmodule", type: CuiFormFieldModule }, { kind: "ngmodule", type: CuiHintModule }, { kind: "ngmodule", type: CuiIconButtonModule }, { kind: "component", type: i1.CuiIconButtonComponent, selector: "button[cuiIconButton][icon], a[cuiIconButton][icon]", inputs: ["icon", "color", "hoverColor"] }, { kind: "component", type: CuiGeneralControlErrorHintComponent, selector: "cui-general-control-error-hint", inputs: ["control", "isVisible"] }, { kind: "component", type: CuiGhostInputComponent, selector: "input [cuiGhostInput]", inputs: ["isError"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
64
64
  }
65
65
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CuiCategoryFormComponent, decorators: [{
66
66
  type: Component,
@@ -74,6 +74,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
74
74
  TranslocoDirective
75
75
  ], standalone: true, host: {
76
76
  '(click)': 'onHostClick($event)'
77
- }, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *transloco=\"let t\">\n <form\n [formGroup]=\"form\"\n class=\"form\"\n (ngSubmit)=\"onSubmit()\"\n >\n <div class=\"input\">\n <input\n #input\n cuiGhostInput\n formControlName=\"title\"\n type=\"text\"\n placeholder=\"{{ t('ADD_CATEGORY_NAME') }}...\"\n [isError]=\"isTitleInvalid\"\n (keyup)=\"$event.preventDefault()\"\n />\n <cui-general-control-error-hint [control]=\"titleControl\" />\n </div>\n <button\n cuiIconButton\n type=\"submit\"\n icon=\"cuiIconCheck\"\n color=\"var(--cui-success)\"\n [disabled]=\"isSubmitButtonDisabled\"\n class=\"button\"\n ></button>\n </form>\n <button\n cuiIconButton\n type=\"button\"\n icon=\"cuiIconXCircle\"\n color=\"var(--cui-danger)\"\n (click)=\"onCancel($event)\"\n [disabled]=\"isDisabled()\"\n class=\"button\"\n ></button>\n</ng-container>\n", styles: [":host{padding-top:2px;padding-bottom:2px;display:flex;gap:4px;flex-grow:1}.form,.input{flex-grow:1}.form{display:flex;gap:4px}.input{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.button{width:28px}.button:disabled{opacity:.5}\n"] }]
77
+ }, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *transloco=\"let t\">\n <form\n [formGroup]=\"form\"\n class=\"form\"\n (ngSubmit)=\"onSubmit()\"\n >\n <div class=\"input\">\n <input\n #input\n cuiGhostInput\n formControlName=\"title\"\n type=\"text\"\n placeholder=\"{{ t('ADD_CATEGORY_NAME') }}...\"\n [isError]=\"isTitleInvalid\"\n (keyup)=\"$event.preventDefault()\"\n />\n <cui-general-control-error-hint [control]=\"titleControl\" />\n </div>\n <button\n cuiIconButton\n type=\"submit\"\n icon=\"cuiIconCheck\"\n color=\"var(--cui-success)\"\n [disabled]=\"isSubmitButtonDisabled\"\n class=\"button\"\n ></button>\n </form>\n <button\n cuiIconButton\n type=\"button\"\n icon=\"cuiIconXCircle\"\n color=\"var(--cui-danger)\"\n (click)=\"onCancel($event)\"\n [disabled]=\"isDisabled()\"\n class=\"button\"\n ></button>\n</ng-container>\n", styles: [":host{padding-top:2px;padding-bottom:2px;display:flex;gap:4px;flex-grow:1}.form,.input{flex-grow:1}.form{display:flex;flex-direction:row;gap:4px}.input{display:flex;flex-direction:column;gap:4px;align-items:flex-start;justify-content:flex-start}.button{width:28px}.button:disabled{opacity:.5}\n"] }]
78
78
  }], ctorParameters: () => [] });
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvdWkvY2F0ZWdvcmllcy9jb21wb25lbnRzL2NhdGVnb3J5LWZvcm0vY2F0ZWdvcnktZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvdWkvY2F0ZWdvcmllcy9jb21wb25lbnRzL2NhdGVnb3J5LWZvcm0vY2F0ZWdvcnktZm9ybS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxNQUFNLEVBQ04sVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUV4RCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRSxPQUFPLEVBQ0gsa0JBQWtCLEVBQ2xCLGFBQWEsRUFDYixtQkFBbUIsRUFDbkIsc0JBQXNCLEVBQ3pCLE1BQU0sMkJBQTJCLENBQUM7QUFDbkMsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0scUNBQXFDLENBQUM7Ozs7QUFxQjFGLE1BQU0sT0FBTyx3QkFBd0I7SUFnQmpDLElBQWMsY0FBYztRQUN4QixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDO0lBQ2hFLENBQUM7SUFFRCxJQUFjLHNCQUFzQjtRQUNoQyxPQUFPLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxJQUFJ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LE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgZWZmZWN0LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgaW5qZWN0LFxuICAgIGlucHV0LFxuICAgIG91dHB1dCxcbiAgICB2aWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOb25OdWxsYWJsZUZvcm1CdWlsZGVyLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgVHJhbnNsb2NvRGlyZWN0aXZlIH0gZnJvbSAnQGpzdmVyc2UvdHJhbnNsb2NvJztcblxuaW1wb3J0IHsgY3VpQ3JlYXRlRGVmYXVsdFZhbGlkYXRvcnMgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi91dGlscyc7XG5pbXBvcnQge1xuICAgIEN1aUZvcm1GaWVsZE1vZHVsZSxcbiAgICBDdWlIaW50TW9kdWxlLFxuICAgIEN1aUljb25CdXR0b25Nb2R1bGUsXG4gICAgQ3VpR2hvc3RJbnB1dENvbXBvbmVudFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi9jb21wb25lbnRzJztcbmltcG9ydCB7IEN1aUdlbmVyYWxDb250cm9sRXJyb3JIaW50Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vZ2VuZXJhbC1jb250cm9sLWVycm9yLWhpbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2N1aS1jYXRlZ29yeS1mb3JtJyxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIEN1aUZvcm1GaWVsZE1vZHVsZSxcbiAgICAgICAgQ3VpSGludE1vZHVsZSxcbiAgICAgICAgQ3VpSWNvbkJ1dHRvbk1vZHVsZSxcbiAgICAgICAgQ3VpR2VuZXJhbENvbnRyb2xFcnJvckhpbnRDb21wb25lbnQsXG4gICAgICAgIEN1aUdob3N0SW5wdXRDb21wb25lbnQsXG4gICAgICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgICAgIFRyYW5zbG9jb0RpcmVjdGl2ZVxuICAgIF0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY2F0ZWdvcnktZm9ybS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmw6ICcuL2NhdGVnb3J5LWZvcm0uY29tcG9uZW50LnNjc3MnLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJyhjbGljayknOiAnb25Ib3N0Q2xpY2soJGV2ZW50KSdcbiAgICB9LFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEN1aUNhdGVnb3J5Rm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG5vbk51bGxhYmxlRm9ybUJ1aWxkZXIgPSBpbmplY3QoTm9uTnVsbGFibGVGb3JtQnVpbGRlcik7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZm9ybSA9IHRoaXMubm9uTnVsbGFibGVGb3JtQnVpbGRlci5ncm91cCh7XG4gICAgICAgIHRpdGxlOiBbJycsIGN1aUNyZWF0ZURlZmF1bHRWYWxpZGF0b3JzKHsgYXN5bmNEZWxheTogMCB9KV1cbiAgICB9KTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgdGl0bGVDb250cm9sID0gdGhpcy5mb3JtLmNvbnRyb2xzLnRpdGxlO1xuXG4gICAgcHVibGljIHJlYWRvbmx5IGlzRGlzYWJsZWQgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG4gICAgcHVibGljIHJlYWRvbmx5IGRlZmF1bHRUaXRsZSA9IGlucHV0PHN0cmluZz4oJycpO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNyZWF0ZWQgPSBvdXRwdXQ8c3RyaW5nPigpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBjYW5jZWxlZCA9IG91dHB1dDx2b2lkPigpO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGlucHV0ID0gdmlld0NoaWxkLnJlcXVpcmVkKCdpbnB1dCcsIHsgcmVhZDogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PiB9KTtcblxuICAgIHByb3RlY3RlZCBnZXQgaXNUaXRsZUludmFsaWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnRpdGxlQ29udHJvbC5pbnZhbGlkICYmIHRoaXMudGl0bGVDb250cm9sLmRpcnR5O1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgaXNTdWJtaXRCdXR0b25EaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNEaXNhYmxlZCgpIHx8IHRoaXMuZm9ybS5pbnZhbGlkO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICB0aGlzLmluaXRJbnB1dERpc2FibGVTdGF0ZVN1YnNjcmlwdGlvbigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pbml0RGVmYXVsdFRpdGxlKCk7XG4gICAgICAgIHRoaXMuaW5pdElucHV0Rm9jdXMoKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25Ib3N0Q2xpY2soZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblN1Ym1pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZm9ybS5pbnZhbGlkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmNyZWF0ZWQuZW1pdCh0aGlzLmZvcm0udmFsdWUudGl0bGUhKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25DYW5jZWwoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB0aGlzLmNhbmNlbGVkLmVtaXQoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGluaXRJbnB1dERpc2FibGVTdGF0ZVN1YnNjcmlwdGlvbigpOiB2b2lkIHtcbiAgICAgICAgZWZmZWN0KCgpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLmlzRGlzYWJsZWQoKSkge1xuICAgICAgICAgICAgICAgIHRoaXMudGl0bGVDb250cm9sLmRpc2FibGUoKTtcblxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy50aXRsZUNvbnRyb2wuZW5hYmxlKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgaW5pdERlZmF1bHRUaXRsZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5mb3JtLnBhdGNoVmFsdWUoeyB0aXRsZTogdGhpcy5kZWZhdWx0VGl0bGUoKSB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGluaXRJbnB1dEZvY3VzKCk6IHZvaWQge1xuICAgICAgICBQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpID0+IHRoaXMuaW5wdXQoKS5uYXRpdmVFbGVtZW50LmZvY3VzKCkpO1xuICAgIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKnRyYW5zbG9jbz1cImxldCB0XCI+XG4gICAgPGZvcm1cbiAgICAgICAgW2Zvcm1Hcm91cF09XCJmb3JtXCJcbiAgICAgICAgY2xhc3M9XCJmb3JtXCJcbiAgICAgICAgKG5nU3VibWl0KT1cIm9uU3VibWl0KClcIlxuICAgID5cbiAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0XCI+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAjaW5wdXRcbiAgICAgICAgICAgICAgICBjdWlHaG9zdElucHV0XG4gICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwidGl0bGVcIlxuICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cInt7IHQoJ0FERF9DQVRFR09SWV9OQU1FJykgfX0uLi5cIlxuICAgICAgICAgICAgICAgIFtpc0Vycm9yXT1cImlzVGl0bGVJbnZhbGlkXCJcbiAgICAgICAgICAgICAgICAoa2V5dXApPVwiJGV2ZW50LnByZXZlbnREZWZhdWx0KClcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxjdWktZ2VuZXJhbC1jb250cm9sLWVycm9yLWhpbnQgW2NvbnRyb2xdPVwidGl0bGVDb250cm9sXCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIGN1aUljb25CdXR0b25cbiAgICAgICAgICAgIHR5cGU9XCJzdWJtaXRcIlxuICAgICAgICAgICAgaWNvbj1cImN1aUljb25DaGVja1wiXG4gICAgICAgICAgICBjb2xvcj1cInZhcigtLWN1aS1zdWNjZXNzKVwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNTdWJtaXRCdXR0b25EaXNhYmxlZFwiXG4gICAgICAgICAgICBjbGFzcz1cImJ1dHRvblwiXG4gICAgICAgID48L2J1dHRvbj5cbiAgICA8L2Zvcm0+XG4gICAgPGJ1dHRvblxuICAgICAgICBjdWlJY29uQnV0dG9uXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICBpY29uPVwiY3VpSWNvblhDaXJjbGVcIlxuICAgICAgICBjb2xvcj1cInZhcigtLWN1aS1kYW5nZXIpXCJcbiAgICAgICAgKGNsaWNrKT1cIm9uQ2FuY2VsKCRldmVudClcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiaXNEaXNhYmxlZCgpXCJcbiAgICAgICAgY2xhc3M9XCJidXR0b25cIlxuICAgID48L2J1dHRvbj5cbjwvbmctY29udGFpbmVyPlxuIl19
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvdWkvY2F0ZWdvcmllcy9jb21wb25lbnRzL2NhdGVnb3J5LWZvcm0vY2F0ZWdvcnktZm9ybS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvdWkvY2F0ZWdvcmllcy9jb21wb25lbnRzL2NhdGVnb3J5LWZvcm0vY2F0ZWdvcnktZm9ybS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxNQUFNLEVBQ04sVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUNOLFNBQVMsRUFDWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUV4RCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRSxPQUFPLEVBQ0gsa0JBQWtCLEVBQ2xCLGFBQWEsRUFDYixtQkFBbUIsRUFDbkIsc0JBQXNCLEVBQ3pCLE1BQU0sMkJBQTJCLENBQUM7QUFDbkMsT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0scUNBQXFDLENBQUM7Ozs7QUFxQjFGLE1BQU0sT0FBTyx3QkFBd0I7SUFnQmpDLElBQWMsY0FBYztRQUN4QixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDO0lBQ2hFLENBQUM7SUFFRCxJQUFjLHNCQUFzQjtRQUNoQyxPQUFPLElBQUksQ0FBQyxVQUFVLEVBQUUsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUNsRCxDQUFDO0lBRUQ7UUF2Qm1CLDJCQUFzQixHQUFHLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBRXhELFNBQUksR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsS0FBSyxDQUFDO1lBQ3hELEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRSwwQkFBMEIsQ0FBQyxFQUFFLFVBQVUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQzdELENBQUMsQ0FBQztRQUNnQixpQkFBWSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQztRQUUzQyxlQUFVLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ25DLGlCQUFZLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBRTlCLFlBQU8sR0FBRyxNQUFNLEVBQVUsQ0FBQztRQUMzQixhQUFRLEdBQUcsTUFBTSxFQUFRLENBQUM7UUFFMUIsVUFBSyxHQUFHLFNBQVMsQ0FBQyxRQUFRLENBQUMsT0FBTyxFQUFFLEVBQUUsSUFBSSxFQUFFLENBQUEsVUFBNEIsQ0FBQSxFQUFFLENBQUMsQ0FBQztRQVczRixJQUFJLENBQUMsaUNBQWlDLEVBQUUsQ0FBQztJQUM3QyxDQUFDO0lBRU0sUUFBUTtRQUNYLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRVMsV0FBVyxDQUFDLEtBQVk7UUFDOUIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFUyxRQUFRO1FBQ2QsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3BCLE9BQU87UUFDWCxDQUFDO1FBRUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBTSxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVTLFFBQVEsQ0FBQyxLQUFZO1FBQzNCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFFTyxpQ0FBaUM7UUFDckMsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUNSLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUM7Z0JBQ3BCLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLENBQUM7Z0JBRTVCLE9BQU87WUFDWCxDQUFDO1lBRUQsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUMvQixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFTyxnQkFBZ0I7UUFDcEIsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLFlBQVksRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRU8sY0FBYztRQUNsQixPQUFPLENBQUMsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUNyRSxDQUFDOytHQXBFUSx3QkFBd0I7bUdBQXhCLHdCQUF3Qix3aUJBYzhCLFVBQVUsNkNDeEQ3RSxzbUNBcUNBLCtWRFhRLGtCQUFrQiw4QkFDbEIsYUFBYSw4QkFDYixtQkFBbUIsaU1BQ25CLG1DQUFtQyw2R0FDbkMsc0JBQXNCLHNGQUN0QixtQkFBbUIsNjhCQUNuQixrQkFBa0I7OzRGQVViLHdCQUF3QjtrQkFuQnBDLFNBQVM7K0JBQ0ksbUJBQW1CLFdBQ3BCO3dCQUNMLGtCQUFrQjt3QkFDbEIsYUFBYTt3QkFDYixtQkFBbUI7d0JBQ25CLG1DQUFtQzt3QkFDbkMsc0JBQXNCO3dCQUN0QixtQkFBbUI7d0JBQ25CLGtCQUFrQjtxQkFDckIsY0FDVyxJQUFJLFFBR1Y7d0JBQ0YsU0FBUyxFQUFFLHFCQUFxQjtxQkFDbkMsbUJBQ2dCLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgZWZmZWN0LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgaW5qZWN0LFxuICAgIGlucHV0LFxuICAgIG91dHB1dCxcbiAgICB2aWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOb25OdWxsYWJsZUZvcm1CdWlsZGVyLCBSZWFjdGl2ZUZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgVHJhbnNsb2NvRGlyZWN0aXZlIH0gZnJvbSAnQGpzdmVyc2UvdHJhbnNsb2NvJztcblxuaW1wb3J0IHsgY3VpQ3JlYXRlRGVmYXVsdFZhbGlkYXRvcnMgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi91dGlscyc7XG5pbXBvcnQge1xuICAgIEN1aUZvcm1GaWVsZE1vZHVsZSxcbiAgICBDdWlIaW50TW9kdWxlLFxuICAgIEN1aUljb25CdXR0b25Nb2R1bGUsXG4gICAgQ3VpR2hvc3RJbnB1dENvbXBvbmVudFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi9jb21wb25lbnRzJztcbmltcG9ydCB7IEN1aUdlbmVyYWxDb250cm9sRXJyb3JIaW50Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vZ2VuZXJhbC1jb250cm9sLWVycm9yLWhpbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2N1aS1jYXRlZ29yeS1mb3JtJyxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIEN1aUZvcm1GaWVsZE1vZHVsZSxcbiAgICAgICAgQ3VpSGludE1vZHVsZSxcbiAgICAgICAgQ3VpSWNvbkJ1dHRvbk1vZHVsZSxcbiAgICAgICAgQ3VpR2VuZXJhbENvbnRyb2xFcnJvckhpbnRDb21wb25lbnQsXG4gICAgICAgIEN1aUdob3N0SW5wdXRDb21wb25lbnQsXG4gICAgICAgIFJlYWN0aXZlRm9ybXNNb2R1bGUsXG4gICAgICAgIFRyYW5zbG9jb0RpcmVjdGl2ZVxuICAgIF0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY2F0ZWdvcnktZm9ybS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmw6ICcuL2NhdGVnb3J5LWZvcm0uY29tcG9uZW50LnNjc3MnLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJyhjbGljayknOiAnb25Ib3N0Q2xpY2soJGV2ZW50KSdcbiAgICB9LFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEN1aUNhdGVnb3J5Rm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG5vbk51bGxhYmxlRm9ybUJ1aWxkZXIgPSBpbmplY3QoTm9uTnVsbGFibGVGb3JtQnVpbGRlcik7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgZm9ybSA9IHRoaXMubm9uTnVsbGFibGVGb3JtQnVpbGRlci5ncm91cCh7XG4gICAgICAgIHRpdGxlOiBbJycsIGN1aUNyZWF0ZURlZmF1bHRWYWxpZGF0b3JzKHsgYXN5bmNEZWxheTogMCB9KV1cbiAgICB9KTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgdGl0bGVDb250cm9sID0gdGhpcy5mb3JtLmNvbnRyb2xzLnRpdGxlO1xuXG4gICAgcHVibGljIHJlYWRvbmx5IGlzRGlzYWJsZWQgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG4gICAgcHVibGljIHJlYWRvbmx5IGRlZmF1bHRUaXRsZSA9IGlucHV0PHN0cmluZz4oJycpO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNyZWF0ZWQgPSBvdXRwdXQ8c3RyaW5nPigpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBjYW5jZWxlZCA9IG91dHB1dDx2b2lkPigpO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGlucHV0ID0gdmlld0NoaWxkLnJlcXVpcmVkKCdpbnB1dCcsIHsgcmVhZDogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PiB9KTtcblxuICAgIHByb3RlY3RlZCBnZXQgaXNUaXRsZUludmFsaWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnRpdGxlQ29udHJvbC5pbnZhbGlkICYmIHRoaXMudGl0bGVDb250cm9sLmRpcnR5O1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXQgaXNTdWJtaXRCdXR0b25EaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNEaXNhYmxlZCgpIHx8IHRoaXMuZm9ybS5pbnZhbGlkO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICB0aGlzLmluaXRJbnB1dERpc2FibGVTdGF0ZVN1YnNjcmlwdGlvbigpO1xuICAgIH1cblxuICAgIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pbml0RGVmYXVsdFRpdGxlKCk7XG4gICAgICAgIHRoaXMuaW5pdElucHV0Rm9jdXMoKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25Ib3N0Q2xpY2soZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblN1Ym1pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZm9ybS5pbnZhbGlkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmNyZWF0ZWQuZW1pdCh0aGlzLmZvcm0udmFsdWUudGl0bGUhKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25DYW5jZWwoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB0aGlzLmNhbmNlbGVkLmVtaXQoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGluaXRJbnB1dERpc2FibGVTdGF0ZVN1YnNjcmlwdGlvbigpOiB2b2lkIHtcbiAgICAgICAgZWZmZWN0KCgpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLmlzRGlzYWJsZWQoKSkge1xuICAgICAgICAgICAgICAgIHRoaXMudGl0bGVDb250cm9sLmRpc2FibGUoKTtcblxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy50aXRsZUNvbnRyb2wuZW5hYmxlKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgaW5pdERlZmF1bHRUaXRsZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5mb3JtLnBhdGNoVmFsdWUoeyB0aXRsZTogdGhpcy5kZWZhdWx0VGl0bGUoKSB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGluaXRJbnB1dEZvY3VzKCk6IHZvaWQge1xuICAgICAgICBQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpID0+IHRoaXMuaW5wdXQoKS5uYXRpdmVFbGVtZW50LmZvY3VzKCkpO1xuICAgIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKnRyYW5zbG9jbz1cImxldCB0XCI+XG4gICAgPGZvcm1cbiAgICAgICAgW2Zvcm1Hcm91cF09XCJmb3JtXCJcbiAgICAgICAgY2xhc3M9XCJmb3JtXCJcbiAgICAgICAgKG5nU3VibWl0KT1cIm9uU3VibWl0KClcIlxuICAgID5cbiAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0XCI+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAjaW5wdXRcbiAgICAgICAgICAgICAgICBjdWlHaG9zdElucHV0XG4gICAgICAgICAgICAgICAgZm9ybUNvbnRyb2xOYW1lPVwidGl0bGVcIlxuICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cInt7IHQoJ0FERF9DQVRFR09SWV9OQU1FJykgfX0uLi5cIlxuICAgICAgICAgICAgICAgIFtpc0Vycm9yXT1cImlzVGl0bGVJbnZhbGlkXCJcbiAgICAgICAgICAgICAgICAoa2V5dXApPVwiJGV2ZW50LnByZXZlbnREZWZhdWx0KClcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIDxjdWktZ2VuZXJhbC1jb250cm9sLWVycm9yLWhpbnQgW2NvbnRyb2xdPVwidGl0bGVDb250cm9sXCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxidXR0b25cbiAgICAgICAgICAgIGN1aUljb25CdXR0b25cbiAgICAgICAgICAgIHR5cGU9XCJzdWJtaXRcIlxuICAgICAgICAgICAgaWNvbj1cImN1aUljb25DaGVja1wiXG4gICAgICAgICAgICBjb2xvcj1cInZhcigtLWN1aS1zdWNjZXNzKVwiXG4gICAgICAgICAgICBbZGlzYWJsZWRdPVwiaXNTdWJtaXRCdXR0b25EaXNhYmxlZFwiXG4gICAgICAgICAgICBjbGFzcz1cImJ1dHRvblwiXG4gICAgICAgID48L2J1dHRvbj5cbiAgICA8L2Zvcm0+XG4gICAgPGJ1dHRvblxuICAgICAgICBjdWlJY29uQnV0dG9uXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICBpY29uPVwiY3VpSWNvblhDaXJjbGVcIlxuICAgICAgICBjb2xvcj1cInZhcigtLWN1aS1kYW5nZXIpXCJcbiAgICAgICAgKGNsaWNrKT1cIm9uQ2FuY2VsKCRldmVudClcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiaXNEaXNhYmxlZCgpXCJcbiAgICAgICAgY2xhc3M9XCJidXR0b25cIlxuICAgID48L2J1dHRvbj5cbjwvbmctY29udGFpbmVyPlxuIl19
@@ -109,7 +109,7 @@ export class CuiCategoryItemComponent {
109
109
  }, { allowSignalWrites: true });
110
110
  }
111
111
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CuiCategoryItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
112
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CuiCategoryItemComponent, isStandalone: true, selector: "cui-category-item", inputs: { stageStorage: { classPropertyName: "stageStorage", publicName: "stageStorage", isSignal: true, isRequired: true, transformFunction: null }, context: { classPropertyName: "context", publicName: "context", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<ng-container *cuiLet=\"category() as stage\">\n <button\n type=\"button\"\n [style.align-items]=\"alignItems()\"\n [disabled]=\"isStageCreationLoading()\"\n class=\"category\"\n (click)=\"onSelectCategory()\"\n >\n <button\n type=\"button\"\n class=\"category__open-close-button\"\n [class.category__open-close-button_hidden]=\"isOpenCloseButtonHidden()\"\n (click)=\"onToggleChildren($event)\"\n >\n <cui-svg\n [icon]=\"openCloseButtonIcon()\"\n color=\"var(--cui-base-500)\"\n />\n </button>\n <cui-svg\n [icon]=\"stageStorageIcon()\"\n color=\"var(--cui-base-500)\"\n class=\"icon\"\n />\n @if (isTitleEdit()) {\n <cui-category-form\n [defaultTitle]=\"stage.title\"\n (created)=\"onTitleChanged($event)\"\n (canceled)=\"onCancelTitleEdit()\"\n />\n } @else {\n <span class=\"category__title\">{{ stage.title }}</span>\n\n <button\n cuiButton\n type=\"button\"\n appearance=\"ghost\"\n size=\"xxs\"\n icon=\"cuiIconEdit\"\n class=\"category__add-subcategory-button\"\n (click)=\"onStartTitleEdit($event)\"\n ></button>\n <button\n cuiButton\n type=\"button\"\n appearance=\"ghost\"\n size=\"xxs\"\n icon=\"cuiIconPlus\"\n class=\"category__add-subcategory-button\"\n (click)=\"onStartCreatingSubcategory($event)\"\n ></button>\n }\n </button>\n <div\n [hidden]=\"!areChildrenOpened()\"\n class=\"list-wrapper\"\n >\n <cui-categories-list\n [stageStorages]=\"stageStorageChildren()\"\n [context]=\"context()\"\n />\n @if (isCreateCategoryControlVisible()) {\n <cui-create-category-item\n class=\"create-category\"\n [isDisabled]=\"isSubcategoryCreationLoading()\"\n (created)=\"onCreateNewSubcategoryCategory($event)\"\n (canceled)=\"onCreatingSubcategoryCanceled()\"\n />\n }\n </div>\n</ng-container>\n", styles: [".category{display:flex;gap:4px;padding:2px 4px;width:100%;min-height:32px;border-radius:8px}@media (hover: hover){.category:hover{background:var(--cui-base-10)}}.category:active{background:var(--cui-base-10)}.category__open-close-button{display:flex;padding:2px;border-radius:4px;margin:4px 0}@media (hover: hover){.category__open-close-button:hover{background:var(--cui-base-100)}}.category__open-close-button:active{background:var(--cui-base-100)}.category__open-close-button_hidden{visibility:hidden}.category__title{flex:1;text-align:start;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.category__add-subcategory-button{--cui-base-50: var(--cui-base-200)}.list-wrapper{padding-left:8px}.create-category{margin-left:24px}.icon{padding-right:2px;padding-left:2px;height:28px}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CuiButtonModule) }, { kind: "component", type: i0.forwardRef(() => i1.CuiButtonComponent), selector: "button[cuiButton], a[cuiButton]", inputs: ["shape", "disabled", "isLoaderShown", "icon", "iconRight", "appearance", "theme", "size"] }, { kind: "ngmodule", type: i0.forwardRef(() => CuiIconButtonModule) }, { kind: "directive", type: i0.forwardRef(() => CuiLetDirective), selector: "[cuiLet]", inputs: ["cuiLet"] }, { kind: "ngmodule", type: i0.forwardRef(() => CuiSvgModule) }, { kind: "component", type: i0.forwardRef(() => i2.CuiSvgComponent), selector: "cui-svg[icon]", inputs: ["width", "height", "strokeWidth", "color", "icon"] }, { kind: "component", type: i0.forwardRef(() => CuiCategoryFormComponent), selector: "cui-category-form", inputs: ["isDisabled", "defaultTitle"], outputs: ["created", "canceled"] }, { kind: "component", type: i0.forwardRef(() => CuiCreateCategoryItemComponent), selector: "cui-create-category-item", inputs: ["isDisabled"], outputs: ["created", "canceled"] }, { kind: "component", type: i0.forwardRef(() => CuiCategoriesListComponent), selector: "cui-categories-list", inputs: ["stageStorages", "context"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
112
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CuiCategoryItemComponent, isStandalone: true, selector: "cui-category-item", inputs: { stageStorage: { classPropertyName: "stageStorage", publicName: "stageStorage", isSignal: true, isRequired: true, transformFunction: null }, context: { classPropertyName: "context", publicName: "context", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<ng-container *cuiLet=\"category() as stage\">\n <button\n type=\"button\"\n [style.align-items]=\"alignItems()\"\n [disabled]=\"isStageCreationLoading()\"\n class=\"category\"\n (click)=\"onSelectCategory()\"\n >\n <button\n type=\"button\"\n class=\"category__open-close-button\"\n [class.category__open-close-button_hidden]=\"isOpenCloseButtonHidden()\"\n (click)=\"onToggleChildren($event)\"\n >\n <cui-svg\n [icon]=\"openCloseButtonIcon()\"\n color=\"var(--cui-base-500)\"\n />\n </button>\n <cui-svg\n [icon]=\"stageStorageIcon()\"\n color=\"var(--cui-base-500)\"\n class=\"icon\"\n />\n @if (isTitleEdit()) {\n <cui-category-form\n [defaultTitle]=\"stage.title\"\n (created)=\"onTitleChanged($event)\"\n (canceled)=\"onCancelTitleEdit()\"\n />\n } @else {\n <span class=\"category__title\">{{ stage.title }}</span>\n\n <button\n cuiButton\n type=\"button\"\n appearance=\"ghost\"\n size=\"xxs\"\n icon=\"cuiIconEdit\"\n class=\"category__add-subcategory-button\"\n (click)=\"onStartTitleEdit($event)\"\n ></button>\n <button\n cuiButton\n type=\"button\"\n appearance=\"ghost\"\n size=\"xxs\"\n icon=\"cuiIconPlus\"\n class=\"category__add-subcategory-button\"\n (click)=\"onStartCreatingSubcategory($event)\"\n ></button>\n }\n </button>\n <div\n [hidden]=\"!areChildrenOpened()\"\n class=\"list-wrapper\"\n >\n <cui-categories-list\n [stageStorages]=\"stageStorageChildren()\"\n [context]=\"context()\"\n />\n @if (isCreateCategoryControlVisible()) {\n <cui-create-category-item\n class=\"create-category\"\n [isDisabled]=\"isSubcategoryCreationLoading()\"\n (created)=\"onCreateNewSubcategoryCategory($event)\"\n (canceled)=\"onCreatingSubcategoryCanceled()\"\n />\n }\n </div>\n</ng-container>\n", styles: [".category{display:flex;flex-direction:row;gap:4px;padding:2px 4px;width:100%;min-height:32px;border-radius:8px}@media (hover: hover){.category:hover{background:var(--cui-base-10)}}.category:active{background:var(--cui-base-10)}.category__open-close-button{display:flex;flex-direction:row;gap:0;padding:2px;border-radius:4px;margin:4px 0}@media (hover: hover){.category__open-close-button:hover{background:var(--cui-base-100)}}.category__open-close-button:active{background:var(--cui-base-100)}.category__open-close-button_hidden{visibility:hidden}.category__title{flex:1;text-align:start;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.category__add-subcategory-button{--cui-base-50: var(--cui-base-200)}.list-wrapper{padding-left:8px}.create-category{margin-left:24px}.icon{padding-right:2px;padding-left:2px;height:28px}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CuiButtonModule) }, { kind: "component", type: i0.forwardRef(() => i1.CuiButtonComponent), selector: "button[cuiButton], a[cuiButton]", inputs: ["shape", "disabled", "isLoaderShown", "icon", "iconRight", "appearance", "theme", "size"] }, { kind: "ngmodule", type: i0.forwardRef(() => CuiIconButtonModule) }, { kind: "directive", type: i0.forwardRef(() => CuiLetDirective), selector: "[cuiLet]", inputs: ["cuiLet"] }, { kind: "ngmodule", type: i0.forwardRef(() => CuiSvgModule) }, { kind: "component", type: i0.forwardRef(() => i2.CuiSvgComponent), selector: "cui-svg[icon]", inputs: ["width", "height", "strokeWidth", "color", "icon"] }, { kind: "component", type: i0.forwardRef(() => CuiCategoryFormComponent), selector: "cui-category-form", inputs: ["isDisabled", "defaultTitle"], outputs: ["created", "canceled"] }, { kind: "component", type: i0.forwardRef(() => CuiCreateCategoryItemComponent), selector: "cui-create-category-item", inputs: ["isDisabled"], outputs: ["created", "canceled"] }, { kind: "component", type: i0.forwardRef(() => CuiCategoriesListComponent), selector: "cui-categories-list", inputs: ["stageStorages", "context"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
113
113
  }
114
114
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CuiCategoryItemComponent, decorators: [{
115
115
  type: Component,
@@ -121,6 +121,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
121
121
  CuiCategoryFormComponent,
122
122
  CuiCreateCategoryItemComponent,
123
123
  forwardRef(() => CuiCategoriesListComponent)
124
- ], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *cuiLet=\"category() as stage\">\n <button\n type=\"button\"\n [style.align-items]=\"alignItems()\"\n [disabled]=\"isStageCreationLoading()\"\n class=\"category\"\n (click)=\"onSelectCategory()\"\n >\n <button\n type=\"button\"\n class=\"category__open-close-button\"\n [class.category__open-close-button_hidden]=\"isOpenCloseButtonHidden()\"\n (click)=\"onToggleChildren($event)\"\n >\n <cui-svg\n [icon]=\"openCloseButtonIcon()\"\n color=\"var(--cui-base-500)\"\n />\n </button>\n <cui-svg\n [icon]=\"stageStorageIcon()\"\n color=\"var(--cui-base-500)\"\n class=\"icon\"\n />\n @if (isTitleEdit()) {\n <cui-category-form\n [defaultTitle]=\"stage.title\"\n (created)=\"onTitleChanged($event)\"\n (canceled)=\"onCancelTitleEdit()\"\n />\n } @else {\n <span class=\"category__title\">{{ stage.title }}</span>\n\n <button\n cuiButton\n type=\"button\"\n appearance=\"ghost\"\n size=\"xxs\"\n icon=\"cuiIconEdit\"\n class=\"category__add-subcategory-button\"\n (click)=\"onStartTitleEdit($event)\"\n ></button>\n <button\n cuiButton\n type=\"button\"\n appearance=\"ghost\"\n size=\"xxs\"\n icon=\"cuiIconPlus\"\n class=\"category__add-subcategory-button\"\n (click)=\"onStartCreatingSubcategory($event)\"\n ></button>\n }\n </button>\n <div\n [hidden]=\"!areChildrenOpened()\"\n class=\"list-wrapper\"\n >\n <cui-categories-list\n [stageStorages]=\"stageStorageChildren()\"\n [context]=\"context()\"\n />\n @if (isCreateCategoryControlVisible()) {\n <cui-create-category-item\n class=\"create-category\"\n [isDisabled]=\"isSubcategoryCreationLoading()\"\n (created)=\"onCreateNewSubcategoryCategory($event)\"\n (canceled)=\"onCreatingSubcategoryCanceled()\"\n />\n }\n </div>\n</ng-container>\n", styles: [".category{display:flex;gap:4px;padding:2px 4px;width:100%;min-height:32px;border-radius:8px}@media (hover: hover){.category:hover{background:var(--cui-base-10)}}.category:active{background:var(--cui-base-10)}.category__open-close-button{display:flex;padding:2px;border-radius:4px;margin:4px 0}@media (hover: hover){.category__open-close-button:hover{background:var(--cui-base-100)}}.category__open-close-button:active{background:var(--cui-base-100)}.category__open-close-button_hidden{visibility:hidden}.category__title{flex:1;text-align:start;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.category__add-subcategory-button{--cui-base-50: var(--cui-base-200)}.list-wrapper{padding-left:8px}.create-category{margin-left:24px}.icon{padding-right:2px;padding-left:2px;height:28px}\n"] }]
124
+ ], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *cuiLet=\"category() as stage\">\n <button\n type=\"button\"\n [style.align-items]=\"alignItems()\"\n [disabled]=\"isStageCreationLoading()\"\n class=\"category\"\n (click)=\"onSelectCategory()\"\n >\n <button\n type=\"button\"\n class=\"category__open-close-button\"\n [class.category__open-close-button_hidden]=\"isOpenCloseButtonHidden()\"\n (click)=\"onToggleChildren($event)\"\n >\n <cui-svg\n [icon]=\"openCloseButtonIcon()\"\n color=\"var(--cui-base-500)\"\n />\n </button>\n <cui-svg\n [icon]=\"stageStorageIcon()\"\n color=\"var(--cui-base-500)\"\n class=\"icon\"\n />\n @if (isTitleEdit()) {\n <cui-category-form\n [defaultTitle]=\"stage.title\"\n (created)=\"onTitleChanged($event)\"\n (canceled)=\"onCancelTitleEdit()\"\n />\n } @else {\n <span class=\"category__title\">{{ stage.title }}</span>\n\n <button\n cuiButton\n type=\"button\"\n appearance=\"ghost\"\n size=\"xxs\"\n icon=\"cuiIconEdit\"\n class=\"category__add-subcategory-button\"\n (click)=\"onStartTitleEdit($event)\"\n ></button>\n <button\n cuiButton\n type=\"button\"\n appearance=\"ghost\"\n size=\"xxs\"\n icon=\"cuiIconPlus\"\n class=\"category__add-subcategory-button\"\n (click)=\"onStartCreatingSubcategory($event)\"\n ></button>\n }\n </button>\n <div\n [hidden]=\"!areChildrenOpened()\"\n class=\"list-wrapper\"\n >\n <cui-categories-list\n [stageStorages]=\"stageStorageChildren()\"\n [context]=\"context()\"\n />\n @if (isCreateCategoryControlVisible()) {\n <cui-create-category-item\n class=\"create-category\"\n [isDisabled]=\"isSubcategoryCreationLoading()\"\n (created)=\"onCreateNewSubcategoryCategory($event)\"\n (canceled)=\"onCreatingSubcategoryCanceled()\"\n />\n }\n </div>\n</ng-container>\n", styles: [".category{display:flex;flex-direction:row;gap:4px;padding:2px 4px;width:100%;min-height:32px;border-radius:8px}@media (hover: hover){.category:hover{background:var(--cui-base-10)}}.category:active{background:var(--cui-base-10)}.category__open-close-button{display:flex;flex-direction:row;gap:0;padding:2px;border-radius:4px;margin:4px 0}@media (hover: hover){.category__open-close-button:hover{background:var(--cui-base-100)}}.category__open-close-button:active{background:var(--cui-base-100)}.category__open-close-button_hidden{visibility:hidden}.category__title{flex:1;text-align:start;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.category__add-subcategory-button{--cui-base-50: var(--cui-base-200)}.list-wrapper{padding-left:8px}.create-category{margin-left:24px}.icon{padding-right:2px;padding-left:2px;height:28px}\n"] }]
125
125
  }], ctorParameters: () => [] });
126
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvdWkvY2F0ZWdvcmllcy9jb21wb25lbnRzL2NhdGVnb3J5LWl0ZW0vY2F0ZWdvcnktaXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvdWkvY2F0ZWdvcmllcy9jb21wb25lbnRzL2NhdGVnb3J5LWl0ZW0vY2F0ZWdvcnktaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hILE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDL0MsT0FBTyxFQUFpQixnQ0FBZ0MsRUFBYyxNQUFNLGNBQWMsQ0FBQztBQUUzRixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRWhDLE9BQU8sRUFBRSxlQUFlLEVBQUUsbUJBQW1CLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDL0YsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDaEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDNUQsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7QUFrQnpFLE1BQU0sT0FBTyx3QkFBd0I7SUFxQ2pDO1FBcENpQixrQ0FBNkIsR0FBRyxNQUFNLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztRQUN6RSw0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d0JBQ25CLGVBQWU7d0JBQ2YsWUFBWTt3QkFDWix3QkFBd0I7d0JBQ3hCLDhCQUE4Qjt3QkFDOUIsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLDBCQUEwQixDQUFDO3FCQUMvQyxjQUNXLElBQUksbUJBR0MsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBlZmZlY3QsIGZvcndhcmRSZWYsIGluamVjdCwgaW5wdXQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ3VpTGV0RGlyZWN0aXZlIH0gZnJvbSAnQGN1YnktdWkvY2RrJztcbmltcG9ydCB7IEN1aUFwaUNvbnRleHQsIEN1aVRyZWVTdHJ1Y3ROYXZpZ2F0b3JBcGlTZXJ2aWNlLCBUcmVlU3RydWN0IH0gZnJvbSAnQGN1YnktdWkvYXBpJztcbmltcG9ydCB0eXBlIHsgQ3VpSWNvbiB9IGZyb20gJ0BjdWJ5LXVpL2ljb25zJztcbmltcG9ydCB7IGZpbmFsaXplIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEN1aUJ1dHRvbk1vZHVsZSwgQ3VpSWNvbkJ1dHRvbk1vZHVsZSwgQ3VpU3ZnTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBDdWlTZWxlY3RlZENhdGVnb3J5U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IEN1aUNhdGVnb3JpZXNMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi4vY2F0ZWdvcmllcy1saXN0JztcbmltcG9ydCB7IEN1aUNhdGVnb3J5Rm9ybUNvbXBvbmVudCB9IGZyb20gJy4uL2NhdGVnb3J5LWZvcm0nO1xuaW1wb3J0IHsgQ3VpQ3JlYXRlQ2F0ZWdvcnlJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi4vY3JlYXRlLWNhdGVnb3J5LWl0ZW0nO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2N1aS1jYXRlZ29yeS1pdGVtJyxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIEN1aUJ1dHRvbk1vZHVsZSxcbiAgICAgICAgQ3VpSWNvbkJ1dHRvbk1vZHVsZSxcbiAgICAgICAgQ3VpTGV0RGlyZWN0aXZlLFxuICAgICAgICBDdWlTdmdNb2R1bGUsXG4gICAgICAgIEN1aUNhdGVnb3J5Rm9ybUNvbXBvbmVudCxcbiAgICAgICAgQ3VpQ3JlYXRlQ2F0ZWdvcnlJdGVtQ29tcG9uZW50LFxuICAgICAgICBmb3J3YXJkUmVmKCgpID0+IEN1aUNhdGVnb3JpZXNMaXN0Q29tcG9uZW50KVxuICAgIF0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY2F0ZWdvcnktaXRlbS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmw6ICcuL2NhdGVnb3J5LWl0ZW0uY29tcG9uZW50LnNjc3MnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEN1aUNhdGVnb3J5SXRlbUNvbXBvbmVudCB7XG4gICAgcHJpdmF0ZSByZWFkb25seSB0cmVlU3RydWN0TmF2aWdhdG9yQXBpU2VydmljZSA9IGluamVjdChDdWlUcmVlU3RydWN0TmF2aWdhdG9yQXBpU2VydmljZSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBzZWxlY3RlZENhdGVnb3J5U2VydmljZSA9IGluamVjdChDdWlTZWxlY3RlZENhdGVnb3J5U2VydmljZSk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNTdGFnZUNyZWF0aW9uTG9hZGluZyA9IHNpZ25hbChmYWxzZSk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHN0YWdlU3RvcmFnZUNoaWxkcmVuID0gc2lnbmFsPFRyZWVTdHJ1Y3RbXT4oW10pO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBhcmVDaGlsZHJlbk9wZW5lZCA9IHNpZ25hbChmYWxzZSk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG9wZW5DbG9zZUJ1dHRvbkljb24gPSBjb21wdXRlZDxDdWlJY29uPigoKSA9PlxuICAgICAgICB0aGlzLmFyZUNoaWxkcmVuT3BlbmVkKCkgPyAnY3VpSWNvbkNoZXZyb25Eb3duJyA6ICdjdWlJY29uQ2hldnJvblJpZ2h0J1xuICAgICk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGRvQ2hpbGRyZW5FeGlzdCA9IGNvbXB1dGVkKFxuICAgICAgICAoKSA9PiB0aGlzLnN0YWdlU3RvcmFnZSgpLmNoaWxkcmVuLmxlbmd0aCB8fCB0aGlzLnN0YWdlU3RvcmFnZUNoaWxkcmVuKCkubGVuZ3RoXG4gICAgKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNPcGVuQ2xvc2VCdXR0b25IaWRkZW4gPSBjb21wdXRlZCgoKSA9PiAhdGhpcy5kb0NoaWxkcmVuRXhpc3QoKSk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHN0YWdlU3RvcmFnZUljb24gPSBjb21wdXRlZDxDdWlJY29uPigoKSA9PlxuICAgICAgICB0aGlzLmFyZUNoaWxkcmVuT3BlbmVkKCkgJiYgdGhpcy5kb0NoaWxkcmVuRXhpc3QoKSA/ICdjdWlJY29uRm9sZGVyT3BlbicgOiAnY3VpSWNvbkZvbGRlcidcbiAgICApO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBpc1N1YmNhdGVnb3J5Q3JlYXRpbmcgPSBzaWduYWwoZmFsc2UpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBpc1N1YmNhdGVnb3J5Q3JlYXRpb25Mb2FkaW5nID0gc2lnbmFsKGZhbHNlKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgYWxpZ25JdGVtcyA9IGNvbXB1dGVkKCgpID0+ICh0aGlzLmlzVGl0bGVFZGl0KCkgPyAnZmxleC1zdGFydCcgOiAnY2VudGVyJykpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBpc1RpdGxlRWRpdCA9IGNvbXB1dGVkKFxuICAgICAgICAoKSA9PiB0aGlzLnNlbGVjdGVkQ2F0ZWdvcnlTZXJ2aWNlLmVkaXRpbmdJZCgpID09PSB0aGlzLnN0YWdlU3RvcmFnZSgpLmlkXG4gICAgKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNDcmVhdGVDYXRlZ29yeUNvbnRyb2xWaXNpYmxlID0gY29tcHV0ZWQoXG4gICAgICAgICgpID0+XG4gICAgICAgICAgICAodGhpcy5zZWxlY3RlZENhdGVnb3J5U2VydmljZS5jcmVhdGluZ0lkKCkgPT09IHRoaXMuc3RhZ2VTdG9yYWdlKCkuaWQgJiYgdGhpcy5pc1N1YmNhdGVnb3J5Q3JlYXRpbmcoKSkgfHxcbiAgICAgICAgICAgIHRoaXMuaXNTdWJjYXRlZ29yeUNyZWF0aW9uTG9hZGluZygpXG4gICAgKTtcbiAgICBwdWJsaWMgcmVhZG9ubHkgY2F0ZWdvcnlUaXRsZSA9IHNpZ25hbDxzdHJpbmc+KCcnKTtcbiAgICBwdWJsaWMgcmVhZG9ubHkgY2F0ZWdvcnkgPSBjb21wdXRlZCgoKSA9PiAoe1xuICAgICAgICAuLi50aGlzLnN0YWdlU3RvcmFnZSgpLFxuICAgICAgICB0aXRsZTogdGhpcy5jYXRlZ29yeVRpdGxlKCkgfHwgdGhpcy5zdGFnZVN0b3JhZ2UoKS50aXRsZVxuICAgIH0pKTtcblxuICAgIHB1YmxpYyByZWFkb25seSBzdGFnZVN0b3JhZ2UgPSBpbnB1dC5yZXF1aXJlZDxUcmVlU3RydWN0PigpO1xuICAgIHB1YmxpYyByZWFkb25seSBjb250ZXh0ID0gaW5wdXQ8Q3VpQXBpQ29udGV4dD4oKTtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICB0aGlzLmluaXRTdGFnZVN0b3JhZ2VDaGlsZHJlbigpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblNlbGVjdENhdGVnb3J5KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNlbGVjdGVkQ2F0ZWdvcnlTZXJ2aWNlLnNldEN1cnJlbnRDYXRlZ29yeSh0aGlzLmNhdGVnb3J5KCkpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblRvZ2dsZUNoaWxkcmVuKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIHRoaXMuYXJlQ2hpbGRyZW5PcGVuZWQudXBkYXRlKCh2YWx1ZSkgPT4gIXZhbHVlKTtcblxuICAgICAgICBpZiAodGhpcy5hcmVDaGlsZHJlbk9wZW5lZCgpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmlzU3ViY2F0ZWdvcnlDcmVhdGluZy5zZXQoZmFsc2UpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblRpdGxlQ2hhbmdlZCh0aXRsZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMub25DYW5jZWxUaXRsZUVkaXQoKTtcblxuICAgICAgICBpZiAodGl0bGUgPT09IHRoaXMuY2F0ZWdvcnkoKS50aXRsZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy50cmVlU3RydWN0TmF2aWdhdG9yQXBpU2VydmljZS51cGRhdGVUaXRsZSh0aGlzLnN0YWdlU3RvcmFnZSgpLmlkLCB0aXRsZSwgdGhpcy5jb250ZXh0KCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNhdGVnb3J5VGl0bGUuc2V0KHRpdGxlKTtcblxuICAgICAgICAgICAgaWYgKHRoaXMuY2F0ZWdvcnkoKS5pZCA9PT0gdGhpcy5zZWxlY3RlZENhdGVnb3J5U2VydmljZS5jYXRlZ29yeSgpPy5pZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRDYXRlZ29yeVNlcnZpY2Uuc2V0Q3VycmVudENhdGVnb3J5KHRoaXMuY2F0ZWdvcnkoKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblN0YXJ0VGl0bGVFZGl0KGV2ZW50PzogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgZXZlbnQ/LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRDYXRlZ29yeVNlcnZpY2Uuc2V0RWRpdGluZ0lkKHRoaXMuc3RhZ2VTdG9yYWdlKCkuaWQpO1xuICAgICAgICB0aGlzLm9uQ3JlYXRpbmdTdWJjYXRlZ29yeUNhbmNlbGVkKCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uQ2FuY2VsVGl0bGVFZGl0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNlbGVjdGVkQ2F0ZWdvcnlTZXJ2aWNlLmNsZWFyRWRpdGluZ0lkKCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uU3RhcnRDcmVhdGluZ1N1YmNhdGVnb3J5KGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIHRoaXMuaXNTdWJjYXRlZ29yeUNyZWF0aW5nLnNldCh0cnVlKTtcbiAgICAgICAgdGhpcy5hcmVDaGlsZHJlbk9wZW5lZC5zZXQodHJ1ZSk7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRDYXRlZ29yeVNlcnZpY2Uuc2V0Q3JlYXRpbmdJZCh0aGlzLnN0YWdlU3RvcmFnZSgpLmlkKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25DcmVhdGVOZXdTdWJjYXRlZ29yeUNhdGVnb3J5KHRpdGxlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pc1N1YmNhdGVnb3J5Q3JlYXRpbmcuc2V0KGZhbHNlKTtcbiAgICAgICAgdGhpcy5pc1N1YmNhdGVnb3J5Q3JlYXRpb25Mb2FkaW5nLnNldCh0cnVlKTtcbiAgICAgICAgdGhpcy50cmVlU3RydWN0TmF2aWdhdG9yQXBpU2VydmljZVxuICAgICAgICAgICAgLmNyZWF0ZVN0YWdlU3RvcmFnZVRvUGFyZW50KHRoaXMuc3RhZ2VTdG9yYWdlKCkuaWQsIHRpdGxlLCB0aGlzLmNvbnRleHQoKSlcbiAgICAgICAgICAgIC5waXBlKGZpbmFsaXplKHRoaXMuaXNTdWJjYXRlZ29yeUNyZWF0aW9uTG9hZGluZy5zZXQuYmluZCh0aGlzLmlzU3ViY2F0ZWdvcnlDcmVhdGlvbkxvYWRpbmcsIGZhbHNlKSkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChzdGF0ZVN0b3JhZ2UpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnN0YWdlU3RvcmFnZUNoaWxkcmVuLnVwZGF0ZSgodmFsdWUpID0+IFsuLi52YWx1ZSwgc3RhdGVTdG9yYWdlXSk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25DcmVhdGluZ1N1YmNhdGVnb3J5Q2FuY2VsZWQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXNTdWJjYXRlZ29yeUNyZWF0aW5nLnNldChmYWxzZSk7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRDYXRlZ29yeVNlcnZpY2UuY2xlYXJDcmVhdGluZ0lkKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0U3RhZ2VTdG9yYWdlQ2hpbGRyZW4oKTogdm9pZCB7XG4gICAgICAgIGVmZmVjdChcbiAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuYXJlQ2hpbGRyZW5PcGVuZWQoKSB8fCB0aGlzLnN0YWdlU3RvcmFnZUNoaWxkcmVuKCkubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBjb25zdCBzdGFnZVN0b3JhZ2UgPSB0aGlzLnN0YWdlU3RvcmFnZSgpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHN0YWdlU3RvcmFnZUNoaWxkcmVuID0gc3RhZ2VTdG9yYWdlLmNoaWxkcmVuO1xuXG4gICAgICAgICAgICAgICAgaWYgKCFzdGFnZVN0b3JhZ2VDaGlsZHJlbi5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlmICh0eXBlb2Ygc3RhZ2VTdG9yYWdlQ2hpbGRyZW5bMF0gIT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc3RhZ2VTdG9yYWdlQ2hpbGRyZW4uc2V0KHN0YWdlU3RvcmFnZUNoaWxkcmVuIGFzIFRyZWVTdHJ1Y3RbXSk7XG5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHRoaXMudHJlZVN0cnVjdE5hdmlnYXRvckFwaVNlcnZpY2VcbiAgICAgICAgICAgICAgICAgICAgLmdldFN0YWdlU3RvcmFnZXNCeVBhcmVudChzdGFnZVN0b3JhZ2UuaWQsIHRoaXMuY29udGV4dCgpKVxuICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKChzdG9yYWdlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnN0YWdlU3RvcmFnZUNoaWxkcmVuLnVwZGF0ZSgocHJldlN0YWdlU3RvcmFnZXMpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJldlN0YWdlU3RvcmFnZXMgPyBbLi4ucHJldlN0YWdlU3RvcmFnZXMsIHN0b3JhZ2VdIDogW3N0b3JhZ2VdXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7IGFsbG93U2lnbmFsV3JpdGVzOiB0cnVlIH1cbiAgICAgICAgKTtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyICpjdWlMZXQ9XCJjYXRlZ29yeSgpIGFzIHN0YWdlXCI+XG4gICAgPGJ1dHRvblxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgW3N0eWxlLmFsaWduLWl0ZW1zXT1cImFsaWduSXRlbXMoKVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJpc1N0YWdlQ3JlYXRpb25Mb2FkaW5nKClcIlxuICAgICAgICBjbGFzcz1cImNhdGVnb3J5XCJcbiAgICAgICAgKGNsaWNrKT1cIm9uU2VsZWN0Q2F0ZWdvcnkoKVwiXG4gICAgPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIGNsYXNzPVwiY2F0ZWdvcnlfX29wZW4tY2xvc2UtYnV0dG9uXCJcbiAgICAgICAgICAgIFtjbGFzcy5jYXRlZ29yeV9fb3Blbi1jbG9zZS1idXR0b25faGlkZGVuXT1cImlzT3BlbkNsb3NlQnV0dG9uSGlkZGVuKClcIlxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uVG9nZ2xlQ2hpbGRyZW4oJGV2ZW50KVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxjdWktc3ZnXG4gICAgICAgICAgICAgICAgW2ljb25dPVwib3BlbkNsb3NlQnV0dG9uSWNvbigpXCJcbiAgICAgICAgICAgICAgICBjb2xvcj1cInZhcigtLWN1aS1iYXNlLTUwMClcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxjdWktc3ZnXG4gICAgICAgICAgICBbaWNvbl09XCJzdGFnZVN0b3JhZ2VJY29uKClcIlxuICAgICAgICAgICAgY29sb3I9XCJ2YXIoLS1jdWktYmFzZS01MDApXCJcbiAgICAgICAgICAgIGNsYXNzPVwiaWNvblwiXG4gICAgICAgIC8+XG4gICAgICAgIEBpZiAoaXNUaXRsZUVkaXQoKSkge1xuICAgICAgICAgICAgPGN1aS1jYXRlZ29yeS1mb3JtXG4gICAgICAgICAgICAgICAgW2RlZmF1bHRUaXRsZV09XCJzdGFnZS50aXRsZVwiXG4gICAgICAgICAgICAgICAgKGNyZWF0ZWQpPVwib25UaXRsZUNoYW5nZWQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgKGNhbmNlbGVkKT1cIm9uQ2FuY2VsVGl0bGVFZGl0KClcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNhdGVnb3J5X190aXRsZVwiPnt7IHN0YWdlLnRpdGxlIH19PC9zcGFuPlxuXG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgY3VpQnV0dG9uXG4gICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgYXBwZWFyYW5jZT1cImdob3N0XCJcbiAgICAgICAgICAgICAgICBzaXplPVwieHhzXCJcbiAgICAgICAgICAgICAgICBpY29uPVwiY3VpSWNvbkVkaXRcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiY2F0ZWdvcnlfX2FkZC1zdWJjYXRlZ29yeS1idXR0b25cIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvblN0YXJ0VGl0bGVFZGl0KCRldmVudClcIlxuICAgICAgICAgICAgPjwvYnV0dG9uPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgIGN1aUJ1dHRvblxuICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U9XCJnaG9zdFwiXG4gICAgICAgICAgICAgICAgc2l6ZT1cInh4c1wiXG4gICAgICAgICAgICAgICAgaWNvbj1cImN1aUljb25QbHVzXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImNhdGVnb3J5X19hZGQtc3ViY2F0ZWdvcnktYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25TdGFydENyZWF0aW5nU3ViY2F0ZWdvcnkoJGV2ZW50KVwiXG4gICAgICAgICAgICA+PC9idXR0b24+XG4gICAgICAgIH1cbiAgICA8L2J1dHRvbj5cbiAgICA8ZGl2XG4gICAgICAgIFtoaWRkZW5dPVwiIWFyZUNoaWxkcmVuT3BlbmVkKClcIlxuICAgICAgICBjbGFzcz1cImxpc3Qtd3JhcHBlclwiXG4gICAgPlxuICAgICAgICA8Y3VpLWNhdGVnb3JpZXMtbGlzdFxuICAgICAgICAgICAgW3N0YWdlU3RvcmFnZXNdPVwic3RhZ2VTdG9yYWdlQ2hpbGRyZW4oKVwiXG4gICAgICAgICAgICBbY29udGV4dF09XCJjb250ZXh0KClcIlxuICAgICAgICAvPlxuICAgICAgICBAaWYgKGlzQ3JlYXRlQ2F0ZWdvcnlDb250cm9sVmlzaWJsZSgpKSB7XG4gICAgICAgICAgICA8Y3VpLWNyZWF0ZS1jYXRlZ29yeS1pdGVtXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJjcmVhdGUtY2F0ZWdvcnlcIlxuICAgICAgICAgICAgICAgIFtpc0Rpc2FibGVkXT1cImlzU3ViY2F0ZWdvcnlDcmVhdGlvbkxvYWRpbmcoKVwiXG4gICAgICAgICAgICAgICAgKGNyZWF0ZWQpPVwib25DcmVhdGVOZXdTdWJjYXRlZ29yeUNhdGVnb3J5KCRldmVudClcIlxuICAgICAgICAgICAgICAgIChjYW5jZWxlZCk9XCJvbkNyZWF0aW5nU3ViY2F0ZWdvcnlDYW5jZWxlZCgpXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuIl19
126
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2F0ZWdvcnktaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvdWkvY2F0ZWdvcmllcy9jb21wb25lbnRzL2NhdGVnb3J5LWl0ZW0vY2F0ZWdvcnktaXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvdWkvY2F0ZWdvcmllcy9jb21wb25lbnRzL2NhdGVnb3J5LWl0ZW0vY2F0ZWdvcnktaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hILE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDL0MsT0FBTyxFQUFpQixnQ0FBZ0MsRUFBYyxNQUFNLGNBQWMsQ0FBQztBQUUzRixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRWhDLE9BQU8sRUFBRSxlQUFlLEVBQUUsbUJBQW1CLEVBQUUsWUFBWSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDL0YsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDaEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDNUQsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7QUFrQnpFLE1BQU0sT0FBTyx3QkFBd0I7SUFxQ2pDO1FBcENpQixrQ0FBNkIsR0FBRyxNQUFNLENBQUMsZ0NBQWdDLENBQUMsQ0FBQztRQUN6RSw0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d0JBQ25CLGVBQWU7d0JBQ2YsWUFBWTt3QkFDWix3QkFBd0I7d0JBQ3hCLDhCQUE4Qjt3QkFDOUIsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLDBCQUEwQixDQUFDO3FCQUMvQyxjQUNXLElBQUksbUJBR0MsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGNvbXB1dGVkLCBlZmZlY3QsIGZvcndhcmRSZWYsIGluamVjdCwgaW5wdXQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ3VpTGV0RGlyZWN0aXZlIH0gZnJvbSAnQGN1YnktdWkvY2RrJztcbmltcG9ydCB7IEN1aUFwaUNvbnRleHQsIEN1aVRyZWVTdHJ1Y3ROYXZpZ2F0b3JBcGlTZXJ2aWNlLCBUcmVlU3RydWN0IH0gZnJvbSAnQGN1YnktdWkvYXBpJztcbmltcG9ydCB0eXBlIHsgQ3VpSWNvbiB9IGZyb20gJ0BjdWJ5LXVpL2ljb25zJztcbmltcG9ydCB7IGZpbmFsaXplIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEN1aUJ1dHRvbk1vZHVsZSwgQ3VpSWNvbkJ1dHRvbk1vZHVsZSwgQ3VpU3ZnTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vY29tcG9uZW50cyc7XG5pbXBvcnQgeyBDdWlTZWxlY3RlZENhdGVnb3J5U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IEN1aUNhdGVnb3JpZXNMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi4vY2F0ZWdvcmllcy1saXN0JztcbmltcG9ydCB7IEN1aUNhdGVnb3J5Rm9ybUNvbXBvbmVudCB9IGZyb20gJy4uL2NhdGVnb3J5LWZvcm0nO1xuaW1wb3J0IHsgQ3VpQ3JlYXRlQ2F0ZWdvcnlJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi4vY3JlYXRlLWNhdGVnb3J5LWl0ZW0nO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2N1aS1jYXRlZ29yeS1pdGVtJyxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIEN1aUJ1dHRvbk1vZHVsZSxcbiAgICAgICAgQ3VpSWNvbkJ1dHRvbk1vZHVsZSxcbiAgICAgICAgQ3VpTGV0RGlyZWN0aXZlLFxuICAgICAgICBDdWlTdmdNb2R1bGUsXG4gICAgICAgIEN1aUNhdGVnb3J5Rm9ybUNvbXBvbmVudCxcbiAgICAgICAgQ3VpQ3JlYXRlQ2F0ZWdvcnlJdGVtQ29tcG9uZW50LFxuICAgICAgICBmb3J3YXJkUmVmKCgpID0+IEN1aUNhdGVnb3JpZXNMaXN0Q29tcG9uZW50KVxuICAgIF0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY2F0ZWdvcnktaXRlbS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmw6ICcuL2NhdGVnb3J5LWl0ZW0uY29tcG9uZW50LnNjc3MnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEN1aUNhdGVnb3J5SXRlbUNvbXBvbmVudCB7XG4gICAgcHJpdmF0ZSByZWFkb25seSB0cmVlU3RydWN0TmF2aWdhdG9yQXBpU2VydmljZSA9IGluamVjdChDdWlUcmVlU3RydWN0TmF2aWdhdG9yQXBpU2VydmljZSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBzZWxlY3RlZENhdGVnb3J5U2VydmljZSA9IGluamVjdChDdWlTZWxlY3RlZENhdGVnb3J5U2VydmljZSk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNTdGFnZUNyZWF0aW9uTG9hZGluZyA9IHNpZ25hbChmYWxzZSk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHN0YWdlU3RvcmFnZUNoaWxkcmVuID0gc2lnbmFsPFRyZWVTdHJ1Y3RbXT4oW10pO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBhcmVDaGlsZHJlbk9wZW5lZCA9IHNpZ25hbChmYWxzZSk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IG9wZW5DbG9zZUJ1dHRvbkljb24gPSBjb21wdXRlZDxDdWlJY29uPigoKSA9PlxuICAgICAgICB0aGlzLmFyZUNoaWxkcmVuT3BlbmVkKCkgPyAnY3VpSWNvbkNoZXZyb25Eb3duJyA6ICdjdWlJY29uQ2hldnJvblJpZ2h0J1xuICAgICk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGRvQ2hpbGRyZW5FeGlzdCA9IGNvbXB1dGVkKFxuICAgICAgICAoKSA9PiB0aGlzLnN0YWdlU3RvcmFnZSgpLmNoaWxkcmVuLmxlbmd0aCB8fCB0aGlzLnN0YWdlU3RvcmFnZUNoaWxkcmVuKCkubGVuZ3RoXG4gICAgKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNPcGVuQ2xvc2VCdXR0b25IaWRkZW4gPSBjb21wdXRlZCgoKSA9PiAhdGhpcy5kb0NoaWxkcmVuRXhpc3QoKSk7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHN0YWdlU3RvcmFnZUljb24gPSBjb21wdXRlZDxDdWlJY29uPigoKSA9PlxuICAgICAgICB0aGlzLmFyZUNoaWxkcmVuT3BlbmVkKCkgJiYgdGhpcy5kb0NoaWxkcmVuRXhpc3QoKSA/ICdjdWlJY29uRm9sZGVyT3BlbicgOiAnY3VpSWNvbkZvbGRlcidcbiAgICApO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBpc1N1YmNhdGVnb3J5Q3JlYXRpbmcgPSBzaWduYWwoZmFsc2UpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBpc1N1YmNhdGVnb3J5Q3JlYXRpb25Mb2FkaW5nID0gc2lnbmFsKGZhbHNlKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgYWxpZ25JdGVtcyA9IGNvbXB1dGVkKCgpID0+ICh0aGlzLmlzVGl0bGVFZGl0KCkgPyAnZmxleC1zdGFydCcgOiAnY2VudGVyJykpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBpc1RpdGxlRWRpdCA9IGNvbXB1dGVkKFxuICAgICAgICAoKSA9PiB0aGlzLnNlbGVjdGVkQ2F0ZWdvcnlTZXJ2aWNlLmVkaXRpbmdJZCgpID09PSB0aGlzLnN0YWdlU3RvcmFnZSgpLmlkXG4gICAgKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNDcmVhdGVDYXRlZ29yeUNvbnRyb2xWaXNpYmxlID0gY29tcHV0ZWQoXG4gICAgICAgICgpID0+XG4gICAgICAgICAgICAodGhpcy5zZWxlY3RlZENhdGVnb3J5U2VydmljZS5jcmVhdGluZ0lkKCkgPT09IHRoaXMuc3RhZ2VTdG9yYWdlKCkuaWQgJiYgdGhpcy5pc1N1YmNhdGVnb3J5Q3JlYXRpbmcoKSkgfHxcbiAgICAgICAgICAgIHRoaXMuaXNTdWJjYXRlZ29yeUNyZWF0aW9uTG9hZGluZygpXG4gICAgKTtcbiAgICBwdWJsaWMgcmVhZG9ubHkgY2F0ZWdvcnlUaXRsZSA9IHNpZ25hbDxzdHJpbmc+KCcnKTtcbiAgICBwdWJsaWMgcmVhZG9ubHkgY2F0ZWdvcnkgPSBjb21wdXRlZCgoKSA9PiAoe1xuICAgICAgICAuLi50aGlzLnN0YWdlU3RvcmFnZSgpLFxuICAgICAgICB0aXRsZTogdGhpcy5jYXRlZ29yeVRpdGxlKCkgfHwgdGhpcy5zdGFnZVN0b3JhZ2UoKS50aXRsZVxuICAgIH0pKTtcblxuICAgIHB1YmxpYyByZWFkb25seSBzdGFnZVN0b3JhZ2UgPSBpbnB1dC5yZXF1aXJlZDxUcmVlU3RydWN0PigpO1xuICAgIHB1YmxpYyByZWFkb25seSBjb250ZXh0ID0gaW5wdXQ8Q3VpQXBpQ29udGV4dD4oKTtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICB0aGlzLmluaXRTdGFnZVN0b3JhZ2VDaGlsZHJlbigpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblNlbGVjdENhdGVnb3J5KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNlbGVjdGVkQ2F0ZWdvcnlTZXJ2aWNlLnNldEN1cnJlbnRDYXRlZ29yeSh0aGlzLmNhdGVnb3J5KCkpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblRvZ2dsZUNoaWxkcmVuKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIHRoaXMuYXJlQ2hpbGRyZW5PcGVuZWQudXBkYXRlKCh2YWx1ZSkgPT4gIXZhbHVlKTtcblxuICAgICAgICBpZiAodGhpcy5hcmVDaGlsZHJlbk9wZW5lZCgpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmlzU3ViY2F0ZWdvcnlDcmVhdGluZy5zZXQoZmFsc2UpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblRpdGxlQ2hhbmdlZCh0aXRsZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMub25DYW5jZWxUaXRsZUVkaXQoKTtcblxuICAgICAgICBpZiAodGl0bGUgPT09IHRoaXMuY2F0ZWdvcnkoKS50aXRsZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy50cmVlU3RydWN0TmF2aWdhdG9yQXBpU2VydmljZS51cGRhdGVUaXRsZSh0aGlzLnN0YWdlU3RvcmFnZSgpLmlkLCB0aXRsZSwgdGhpcy5jb250ZXh0KCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNhdGVnb3J5VGl0bGUuc2V0KHRpdGxlKTtcblxuICAgICAgICAgICAgaWYgKHRoaXMuY2F0ZWdvcnkoKS5pZCA9PT0gdGhpcy5zZWxlY3RlZENhdGVnb3J5U2VydmljZS5jYXRlZ29yeSgpPy5pZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRDYXRlZ29yeVNlcnZpY2Uuc2V0Q3VycmVudENhdGVnb3J5KHRoaXMuY2F0ZWdvcnkoKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBvblN0YXJ0VGl0bGVFZGl0KGV2ZW50PzogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgZXZlbnQ/LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIHRoaXMuc2VsZWN0ZWRDYXRlZ29yeVNlcnZpY2Uuc2V0RWRpdGluZ0lkKHRoaXMuc3RhZ2VTdG9yYWdlKCkuaWQpO1xuICAgICAgICB0aGlzLm9uQ3JlYXRpbmdTdWJjYXRlZ29yeUNhbmNlbGVkKCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uQ2FuY2VsVGl0bGVFZGl0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNlbGVjdGVkQ2F0ZWdvcnlTZXJ2aWNlLmNsZWFyRWRpdGluZ0lkKCk7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uU3RhcnRDcmVhdGluZ1N1YmNhdGVnb3J5KGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgICAgIHRoaXMuaXNTdWJjYXRlZ29yeUNyZWF0aW5nLnNldCh0cnVlKTtcbiAgICAgICAgdGhpcy5hcmVDaGlsZHJlbk9wZW5lZC5zZXQodHJ1ZSk7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRDYXRlZ29yeVNlcnZpY2Uuc2V0Q3JlYXRpbmdJZCh0aGlzLnN0YWdlU3RvcmFnZSgpLmlkKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25DcmVhdGVOZXdTdWJjYXRlZ29yeUNhdGVnb3J5KHRpdGxlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pc1N1YmNhdGVnb3J5Q3JlYXRpbmcuc2V0KGZhbHNlKTtcbiAgICAgICAgdGhpcy5pc1N1YmNhdGVnb3J5Q3JlYXRpb25Mb2FkaW5nLnNldCh0cnVlKTtcbiAgICAgICAgdGhpcy50cmVlU3RydWN0TmF2aWdhdG9yQXBpU2VydmljZVxuICAgICAgICAgICAgLmNyZWF0ZVN0YWdlU3RvcmFnZVRvUGFyZW50KHRoaXMuc3RhZ2VTdG9yYWdlKCkuaWQsIHRpdGxlLCB0aGlzLmNvbnRleHQoKSlcbiAgICAgICAgICAgIC5waXBlKGZpbmFsaXplKHRoaXMuaXNTdWJjYXRlZ29yeUNyZWF0aW9uTG9hZGluZy5zZXQuYmluZCh0aGlzLmlzU3ViY2F0ZWdvcnlDcmVhdGlvbkxvYWRpbmcsIGZhbHNlKSkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChzdGF0ZVN0b3JhZ2UpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnN0YWdlU3RvcmFnZUNoaWxkcmVuLnVwZGF0ZSgodmFsdWUpID0+IFsuLi52YWx1ZSwgc3RhdGVTdG9yYWdlXSk7XG4gICAgICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25DcmVhdGluZ1N1YmNhdGVnb3J5Q2FuY2VsZWQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXNTdWJjYXRlZ29yeUNyZWF0aW5nLnNldChmYWxzZSk7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRDYXRlZ29yeVNlcnZpY2UuY2xlYXJDcmVhdGluZ0lkKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0U3RhZ2VTdG9yYWdlQ2hpbGRyZW4oKTogdm9pZCB7XG4gICAgICAgIGVmZmVjdChcbiAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuYXJlQ2hpbGRyZW5PcGVuZWQoKSB8fCB0aGlzLnN0YWdlU3RvcmFnZUNoaWxkcmVuKCkubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBjb25zdCBzdGFnZVN0b3JhZ2UgPSB0aGlzLnN0YWdlU3RvcmFnZSgpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHN0YWdlU3RvcmFnZUNoaWxkcmVuID0gc3RhZ2VTdG9yYWdlLmNoaWxkcmVuO1xuXG4gICAgICAgICAgICAgICAgaWYgKCFzdGFnZVN0b3JhZ2VDaGlsZHJlbi5sZW5ndGgpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlmICh0eXBlb2Ygc3RhZ2VTdG9yYWdlQ2hpbGRyZW5bMF0gIT09ICdzdHJpbmcnKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc3RhZ2VTdG9yYWdlQ2hpbGRyZW4uc2V0KHN0YWdlU3RvcmFnZUNoaWxkcmVuIGFzIFRyZWVTdHJ1Y3RbXSk7XG5cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIHRoaXMudHJlZVN0cnVjdE5hdmlnYXRvckFwaVNlcnZpY2VcbiAgICAgICAgICAgICAgICAgICAgLmdldFN0YWdlU3RvcmFnZXNCeVBhcmVudChzdGFnZVN0b3JhZ2UuaWQsIHRoaXMuY29udGV4dCgpKVxuICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKChzdG9yYWdlKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnN0YWdlU3RvcmFnZUNoaWxkcmVuLnVwZGF0ZSgocHJldlN0YWdlU3RvcmFnZXMpID0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJldlN0YWdlU3RvcmFnZXMgPyBbLi4ucHJldlN0YWdlU3RvcmFnZXMsIHN0b3JhZ2VdIDogW3N0b3JhZ2VdXG4gICAgICAgICAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7IGFsbG93U2lnbmFsV3JpdGVzOiB0cnVlIH1cbiAgICAgICAgKTtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyICpjdWlMZXQ9XCJjYXRlZ29yeSgpIGFzIHN0YWdlXCI+XG4gICAgPGJ1dHRvblxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgW3N0eWxlLmFsaWduLWl0ZW1zXT1cImFsaWduSXRlbXMoKVwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJpc1N0YWdlQ3JlYXRpb25Mb2FkaW5nKClcIlxuICAgICAgICBjbGFzcz1cImNhdGVnb3J5XCJcbiAgICAgICAgKGNsaWNrKT1cIm9uU2VsZWN0Q2F0ZWdvcnkoKVwiXG4gICAgPlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIGNsYXNzPVwiY2F0ZWdvcnlfX29wZW4tY2xvc2UtYnV0dG9uXCJcbiAgICAgICAgICAgIFtjbGFzcy5jYXRlZ29yeV9fb3Blbi1jbG9zZS1idXR0b25faGlkZGVuXT1cImlzT3BlbkNsb3NlQnV0dG9uSGlkZGVuKClcIlxuICAgICAgICAgICAgKGNsaWNrKT1cIm9uVG9nZ2xlQ2hpbGRyZW4oJGV2ZW50KVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxjdWktc3ZnXG4gICAgICAgICAgICAgICAgW2ljb25dPVwib3BlbkNsb3NlQnV0dG9uSWNvbigpXCJcbiAgICAgICAgICAgICAgICBjb2xvcj1cInZhcigtLWN1aS1iYXNlLTUwMClcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDxjdWktc3ZnXG4gICAgICAgICAgICBbaWNvbl09XCJzdGFnZVN0b3JhZ2VJY29uKClcIlxuICAgICAgICAgICAgY29sb3I9XCJ2YXIoLS1jdWktYmFzZS01MDApXCJcbiAgICAgICAgICAgIGNsYXNzPVwiaWNvblwiXG4gICAgICAgIC8+XG4gICAgICAgIEBpZiAoaXNUaXRsZUVkaXQoKSkge1xuICAgICAgICAgICAgPGN1aS1jYXRlZ29yeS1mb3JtXG4gICAgICAgICAgICAgICAgW2RlZmF1bHRUaXRsZV09XCJzdGFnZS50aXRsZVwiXG4gICAgICAgICAgICAgICAgKGNyZWF0ZWQpPVwib25UaXRsZUNoYW5nZWQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgKGNhbmNlbGVkKT1cIm9uQ2FuY2VsVGl0bGVFZGl0KClcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImNhdGVnb3J5X190aXRsZVwiPnt7IHN0YWdlLnRpdGxlIH19PC9zcGFuPlxuXG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgY3VpQnV0dG9uXG4gICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgYXBwZWFyYW5jZT1cImdob3N0XCJcbiAgICAgICAgICAgICAgICBzaXplPVwieHhzXCJcbiAgICAgICAgICAgICAgICBpY29uPVwiY3VpSWNvbkVkaXRcIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiY2F0ZWdvcnlfX2FkZC1zdWJjYXRlZ29yeS1idXR0b25cIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvblN0YXJ0VGl0bGVFZGl0KCRldmVudClcIlxuICAgICAgICAgICAgPjwvYnV0dG9uPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgIGN1aUJ1dHRvblxuICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgIGFwcGVhcmFuY2U9XCJnaG9zdFwiXG4gICAgICAgICAgICAgICAgc2l6ZT1cInh4c1wiXG4gICAgICAgICAgICAgICAgaWNvbj1cImN1aUljb25QbHVzXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImNhdGVnb3J5X19hZGQtc3ViY2F0ZWdvcnktYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25TdGFydENyZWF0aW5nU3ViY2F0ZWdvcnkoJGV2ZW50KVwiXG4gICAgICAgICAgICA+PC9idXR0b24+XG4gICAgICAgIH1cbiAgICA8L2J1dHRvbj5cbiAgICA8ZGl2XG4gICAgICAgIFtoaWRkZW5dPVwiIWFyZUNoaWxkcmVuT3BlbmVkKClcIlxuICAgICAgICBjbGFzcz1cImxpc3Qtd3JhcHBlclwiXG4gICAgPlxuICAgICAgICA8Y3VpLWNhdGVnb3JpZXMtbGlzdFxuICAgICAgICAgICAgW3N0YWdlU3RvcmFnZXNdPVwic3RhZ2VTdG9yYWdlQ2hpbGRyZW4oKVwiXG4gICAgICAgICAgICBbY29udGV4dF09XCJjb250ZXh0KClcIlxuICAgICAgICAvPlxuICAgICAgICBAaWYgKGlzQ3JlYXRlQ2F0ZWdvcnlDb250cm9sVmlzaWJsZSgpKSB7XG4gICAgICAgICAgICA8Y3VpLWNyZWF0ZS1jYXRlZ29yeS1pdGVtXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJjcmVhdGUtY2F0ZWdvcnlcIlxuICAgICAgICAgICAgICAgIFtpc0Rpc2FibGVkXT1cImlzU3ViY2F0ZWdvcnlDcmVhdGlvbkxvYWRpbmcoKVwiXG4gICAgICAgICAgICAgICAgKGNyZWF0ZWQpPVwib25DcmVhdGVOZXdTdWJjYXRlZ29yeUNhdGVnb3J5KCRldmVudClcIlxuICAgICAgICAgICAgICAgIChjYW5jZWxlZCk9XCJvbkNyZWF0aW5nU3ViY2F0ZWdvcnlDYW5jZWxlZCgpXCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuIl19
@@ -58,7 +58,7 @@ export class CuiChecklistBlockComponent {
58
58
  .subscribe((checkListItem) => this.checkListBlockService.addCheckListItem(checkListItem));
59
59
  }
60
60
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CuiChecklistBlockComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
61
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CuiChecklistBlockComponent, isStandalone: true, selector: "cui-checklist-block, [cuiCheckListBlock]", inputs: { componentId: { classPropertyName: "componentId", publicName: "componentId", isSignal: true, isRequired: true, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, providers: [CuiCheckListBlockService], ngImport: i0, template: "<cui-content-wrapper\n *transloco=\"let t\"\n backgroundColor=\"var(--cui-base-10)\"\n [gap]=\"16\"\n>\n <ng-container *cuiLet=\"checkListItems() as checkListItems\">\n <header class=\"header\">\n <h2 class=\"heading\">{{ t('CHECKLIST') }}</h2>\n\n @if (checkListItems) {\n <span class=\"item\">{{ checkListItems?.length }} {{ t('ITEM_VARIANT') }}</span>\n }\n </header>\n <cui-content-wrapper>\n <cui-checklist-block-list [config]=\"config()\" />\n </cui-content-wrapper>\n <div>\n <button\n #actionButton=\"elementRef\"\n cuiElement\n cuiButton\n type=\"button\"\n appearance=\"flat\"\n size=\"xxs\"\n icon=\"cuiIconPlus\"\n >\n {{ t('ADD_NEW_ITEM') }}\n </button>\n <cui-context-menu\n [items]=\"CHECKLIST_BLOCK_SELECT_OPTIONS\"\n [target]=\"actionButton.nativeElement\"\n />\n </div>\n </ng-container>\n</cui-content-wrapper>\n", styles: [".header{display:flex;gap:12px;align-items:center;justify-content:space-between}.heading{font-weight:500;font-size:16px;line-height:24px}.item{font-weight:400;font-size:12px;line-height:14px;color:var(--cui-base-500)}\n"], dependencies: [{ kind: "component", type: CuiChecklistBlockListComponent, selector: "cui-checklist-block-list", inputs: ["config"] }, { kind: "component", type: CuiContentWrapperComponent, selector: "cui-content-wrapper, [cuiContentWrapper]", inputs: ["backgroundColor", "gap"] }, { kind: "ngmodule", type: CuiButtonModule }, { kind: "component", type: i1.CuiButtonComponent, selector: "button[cuiButton], a[cuiButton]", inputs: ["shape", "disabled", "isLoaderShown", "icon", "iconRight", "appearance", "theme", "size"] }, { kind: "ngmodule", type: CuiContextMenuModule }, { kind: "component", type: i2.CuiContextMenuComponent, selector: "cui-context-menu[items][target]", inputs: ["items", "target", "width", "withPaddings"] }, { kind: "directive", type: CuiElementDirective, selector: "[cuiElement]", exportAs: ["elementRef"] }, { kind: "directive", type: CuiLetDirective, selector: "[cuiLet]", inputs: ["cuiLet"] }, { kind: "directive", type: TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
61
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: CuiChecklistBlockComponent, isStandalone: true, selector: "cui-checklist-block, [cuiCheckListBlock]", inputs: { componentId: { classPropertyName: "componentId", publicName: "componentId", isSignal: true, isRequired: true, transformFunction: null }, config: { classPropertyName: "config", publicName: "config", isSignal: true, isRequired: true, transformFunction: null } }, providers: [CuiCheckListBlockService], ngImport: i0, template: "<cui-content-wrapper\n *transloco=\"let t\"\n backgroundColor=\"var(--cui-base-10)\"\n [gap]=\"16\"\n>\n <ng-container *cuiLet=\"checkListItems() as checkListItems\">\n <header class=\"header\">\n <h2 class=\"heading\">{{ t('CHECKLIST') }}</h2>\n\n @if (checkListItems) {\n <span class=\"item\">{{ checkListItems?.length }} {{ t('ITEM_VARIANT') }}</span>\n }\n </header>\n <cui-content-wrapper>\n <cui-checklist-block-list [config]=\"config()\" />\n </cui-content-wrapper>\n <div>\n <button\n #actionButton=\"elementRef\"\n cuiElement\n cuiButton\n type=\"button\"\n appearance=\"flat\"\n size=\"xxs\"\n icon=\"cuiIconPlus\"\n >\n {{ t('ADD_NEW_ITEM') }}\n </button>\n <cui-context-menu\n [items]=\"CHECKLIST_BLOCK_SELECT_OPTIONS\"\n [target]=\"actionButton.nativeElement\"\n />\n </div>\n </ng-container>\n</cui-content-wrapper>\n", styles: [".header{display:flex;flex-direction:row;gap:12px;align-items:center;justify-content:space-between}.heading{font-weight:500;font-size:16px;line-height:24px}.item{font-weight:400;font-size:12px;line-height:14px;color:var(--cui-base-500)}\n"], dependencies: [{ kind: "component", type: CuiChecklistBlockListComponent, selector: "cui-checklist-block-list", inputs: ["config"] }, { kind: "component", type: CuiContentWrapperComponent, selector: "cui-content-wrapper, [cuiContentWrapper]", inputs: ["backgroundColor", "gap"] }, { kind: "ngmodule", type: CuiButtonModule }, { kind: "component", type: i1.CuiButtonComponent, selector: "button[cuiButton], a[cuiButton]", inputs: ["shape", "disabled", "isLoaderShown", "icon", "iconRight", "appearance", "theme", "size"] }, { kind: "ngmodule", type: CuiContextMenuModule }, { kind: "component", type: i2.CuiContextMenuComponent, selector: "cui-context-menu[items][target]", inputs: ["items", "target", "width", "withPaddings"] }, { kind: "directive", type: CuiElementDirective, selector: "[cuiElement]", exportAs: ["elementRef"] }, { kind: "directive", type: CuiLetDirective, selector: "[cuiLet]", inputs: ["cuiLet"] }, { kind: "directive", type: TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
62
62
  }
63
63
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: CuiChecklistBlockComponent, decorators: [{
64
64
  type: Component,
@@ -70,6 +70,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
70
70
  CuiElementDirective,
71
71
  CuiLetDirective,
72
72
  TranslocoDirective
73
- ], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, providers: [CuiCheckListBlockService], template: "<cui-content-wrapper\n *transloco=\"let t\"\n backgroundColor=\"var(--cui-base-10)\"\n [gap]=\"16\"\n>\n <ng-container *cuiLet=\"checkListItems() as checkListItems\">\n <header class=\"header\">\n <h2 class=\"heading\">{{ t('CHECKLIST') }}</h2>\n\n @if (checkListItems) {\n <span class=\"item\">{{ checkListItems?.length }} {{ t('ITEM_VARIANT') }}</span>\n }\n </header>\n <cui-content-wrapper>\n <cui-checklist-block-list [config]=\"config()\" />\n </cui-content-wrapper>\n <div>\n <button\n #actionButton=\"elementRef\"\n cuiElement\n cuiButton\n type=\"button\"\n appearance=\"flat\"\n size=\"xxs\"\n icon=\"cuiIconPlus\"\n >\n {{ t('ADD_NEW_ITEM') }}\n </button>\n <cui-context-menu\n [items]=\"CHECKLIST_BLOCK_SELECT_OPTIONS\"\n [target]=\"actionButton.nativeElement\"\n />\n </div>\n </ng-container>\n</cui-content-wrapper>\n", styles: [".header{display:flex;gap:12px;align-items:center;justify-content:space-between}.heading{font-weight:500;font-size:16px;line-height:24px}.item{font-weight:400;font-size:12px;line-height:14px;color:var(--cui-base-500)}\n"] }]
73
+ ], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, providers: [CuiCheckListBlockService], template: "<cui-content-wrapper\n *transloco=\"let t\"\n backgroundColor=\"var(--cui-base-10)\"\n [gap]=\"16\"\n>\n <ng-container *cuiLet=\"checkListItems() as checkListItems\">\n <header class=\"header\">\n <h2 class=\"heading\">{{ t('CHECKLIST') }}</h2>\n\n @if (checkListItems) {\n <span class=\"item\">{{ checkListItems?.length }} {{ t('ITEM_VARIANT') }}</span>\n }\n </header>\n <cui-content-wrapper>\n <cui-checklist-block-list [config]=\"config()\" />\n </cui-content-wrapper>\n <div>\n <button\n #actionButton=\"elementRef\"\n cuiElement\n cuiButton\n type=\"button\"\n appearance=\"flat\"\n size=\"xxs\"\n icon=\"cuiIconPlus\"\n >\n {{ t('ADD_NEW_ITEM') }}\n </button>\n <cui-context-menu\n [items]=\"CHECKLIST_BLOCK_SELECT_OPTIONS\"\n [target]=\"actionButton.nativeElement\"\n />\n </div>\n </ng-container>\n</cui-content-wrapper>\n", styles: [".header{display:flex;flex-direction:row;gap:12px;align-items:center;justify-content:space-between}.heading{font-weight:500;font-size:16px;line-height:24px}.item{font-weight:400;font-size:12px;line-height:14px;color:var(--cui-base-500)}\n"] }]
74
74
  }], ctorParameters: () => [] });
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tsaXN0LWJsb2NrLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvd2lkZ2V0cy91aS9jaGVja2xpc3QtYmxvY2svY2hlY2tsaXN0LWJsb2NrLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvd2lkZ2V0cy91aS9jaGVja2xpc3QtYmxvY2svY2hlY2tsaXN0LWJsb2NrLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsZUFBZSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFaEMsT0FBTyxFQUNILDBCQUEwQixFQUMxQix1QkFBdUIsRUFHMUIsTUFBTSxjQUFjLENBQUM7QUFFdEIsT0FBTyxFQUFFLGVBQWUsRUFBRSxvQkFBb0IsRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXhHLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUM5RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxZQUFZLENBQUM7Ozs7QUFxQnRELE1BQU0sT0FBTywwQkFBMEI7SUE0Qm5DO1FBM0JpQixlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2hDLHlCQUFvQixHQUFHLE1BQU0sQ0FBQyx1QkFB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K0JBQ0ksMENBQTBDLFdBQzNDO3dCQUNMLDhCQUE4Qjt3QkFDOUIsMEJBQTBCO3dCQUMxQixlQUFlO3dCQUNmLG9CQUFvQjt3QkFDcEIsbUJBQW1CO3dCQUNuQixlQUFlO3dCQUNmLGtCQUFrQjtxQkFDckIsY0FDVyxJQUFJLG1CQUdDLHVCQUF1QixDQUFDLE1BQU0sYUFDcEMsQ0FBQyx3QkFBd0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIERlc3Ryb3lSZWYsIGVmZmVjdCwgaW5qZWN0LCBpbnB1dCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBDdWlFbGVtZW50RGlyZWN0aXZlLCBDdWlMZXREaXJlY3RpdmUgfSBmcm9tICdAY3VieS11aS9jZGsnO1xuaW1wb3J0IHsgVHJhbnNsb2NvRGlyZWN0aXZlLCBUcmFuc2xvY29TZXJ2aWNlIH0gZnJvbSAnQGpzdmVyc2UvdHJhbnNsb2NvJztcbmltcG9ydCB7IGZpbmFsaXplIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge30gZnJvbSAnQGN1YnktdWkvYXBpJztcbmltcG9ydCB7XG4gICAgQ3VpTm9kZUNoZWNrbGlzdEFwaVNlcnZpY2UsXG4gICAgQ3VpVHJlZVN0cnVjdEFwaVNlcnZpY2UsXG4gICAgTm9kZUNoZWNrTGlzdEl0ZW0sXG4gICAgTm9kZUNoZWNrTGlzdEl0ZW1Db250ZW50VHlwZVxufSBmcm9tICdAY3VieS11aS9hcGknO1xuXG5pbXBvcnQgeyBDdWlCdXR0b25Nb2R1bGUsIEN1aUNvbnRleHRNZW51TW9kdWxlLCBDdWlDb250ZW50V3JhcHBlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgQ3VpQ2hlY2tMaXN0QmxvY2tJdGVtVHlwZSB9IGZyb20gJy4vY2hlY2tsaXN0LWJsb2NrLm9wdGlvbnMnO1xuaW1wb3J0IHsgQ3VpQ2hlY2tsaXN0QmxvY2tMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IEN1aUNoZWNrTGlzdEJsb2NrU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMnO1xuaW1wb3J0IHsgQ3VpQ29udGV4dE1lbnVJdGVtIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBDdWlFZGl0b3JDb25maWcgfSBmcm9tICcuLi8uLi8uLi9lZGl0b3IvaW50ZXJmYWNlcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnY3VpLWNoZWNrbGlzdC1ibG9jaywgW2N1aUNoZWNrTGlzdEJsb2NrXScsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDdWlDaGVja2xpc3RCbG9ja0xpc3RDb21wb25lbnQsXG4gICAgICAgIEN1aUNvbnRlbnRXcmFwcGVyQ29tcG9uZW50LFxuICAgICAgICBDdWlCdXR0b25Nb2R1bGUsXG4gICAgICAgIEN1aUNvbnRleHRNZW51TW9kdWxlLFxuICAgICAgICBDdWlFbGVtZW50RGlyZWN0aXZlLFxuICAgICAgICBDdWlMZXREaXJlY3RpdmUsXG4gICAgICAgIFRyYW5zbG9jb0RpcmVjdGl2ZVxuICAgIF0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY2hlY2tsaXN0LWJsb2NrLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jaGVja2xpc3QtYmxvY2suY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtDdWlDaGVja0xpc3RCbG9ja1NlcnZpY2VdXG59KVxuZXhwb3J0IGNsYXNzIEN1aUNoZWNrbGlzdEJsb2NrQ29tcG9uZW50IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG4gICAgcHJpdmF0ZSByZWFkb25seSB0cmVlU3RydWN0QXBpU2VydmljZSA9IGluamVjdChDdWlUcmVlU3RydWN0QXBpU2VydmljZSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xvY29TZXJ2aWNlID0gaW5qZWN0KFRyYW5zbG9jb1NlcnZpY2UpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgbm9kZUNoZWNrTGlzdEFwaVNlcnZpY2UgPSBpbmplY3QoQ3VpTm9kZUNoZWNrbGlzdEFwaVNlcnZpY2UpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY2hlY2tMaXN0QmxvY2tTZXJ2aWNlID0gaW5qZWN0KEN1aUNoZWNrTGlzdEJsb2NrU2VydmljZSk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgQ0hFQ0tMSVNUX0JMT0NLX1NFTEVDVF9PUFRJT05TOiBDdWlDb250ZXh0TWVudUl0ZW1bXSA9IFtcbiAgICAgICAge1xuICAgICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ0FTU0lHTkVFX0FQUFJPVkFMJyksXG4gICAgICAgICAgICBjb21tYW5kOiAoKSA9PiB0aGlzLmFkZENoZWNrTGlzdEl0ZW0oQ3VpQ2hlY2tMaXN0QmxvY2tJdGVtVHlwZS5XSVRIT1VUX1ZFUklGSUNBVElPTilcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ0RPVUJMRV9DSEVDS19BUFBST1ZBTCcpLFxuICAgICAgICAgICAgY29tbWFuZDogKCkgPT4gdGhpcy5hZGRDaGVja0xpc3RJdGVtKEN1aUNoZWNrTGlzdEJsb2NrSXRlbVR5cGUuV0lUSF9WRVJJRklDQVRJT04pXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdFVkFMVUFUSU9OX09QVElPTlMnKSxcbiAgICAgICAgICAgIGNvbW1hbmQ6ICgpID0+IHRoaXMuYWRkQ2hlY2tMaXN0SXRlbShDdWlDaGVja0xpc3RCbG9ja0l0ZW1UeXBlLkVWQUxVQVRJT04pXG4gICAgICAgIH1cbiAgICBdO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNoZWNrTGlzdEl0ZW1zID0gdGhpcy5jaGVja0xpc3RCbG9ja1NlcnZpY2UuY2hlY2tMaXN0SXRlbXM7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGlzTG9hZGluZyA9IHNpZ25hbDxib29sZWFuPihmYWxzZSk7XG5cbiAgICBwdWJsaWMgcmVhZG9ubHkgY29tcG9uZW50SWQgPSBpbnB1dC5yZXF1aXJlZDxzdHJpbmc+KCk7XG4gICAgcHVibGljIHJlYWRvbmx5IGNvbmZpZyA9IGlucHV0LnJlcXVpcmVkPEN1aUVkaXRvckNvbmZpZz4oKTtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICB0aGlzLmluaXROb2RlQ2hlY2tMaXN0QmxvY2soKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGluaXROb2RlQ2hlY2tMaXN0QmxvY2soKTogdm9pZCB7XG4gICAgICAgIGVmZmVjdChcbiAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmNoZWNrTGlzdEJsb2NrU2VydmljZS5zZXRDb21wb25lbnRJZCh0aGlzLmNvbXBvbmVudElkKCkpO1xuICAgICAgICAgICAgICAgIHRoaXMudHJlZVN0cnVjdEFwaVNlcnZpY2VcbiAgICAgICAgICAgICAgICAgICAgLmdldEJ5SWQ8Tm9kZUNoZWNrTGlzdEl0ZW08Tm9kZUNoZWNrTGlzdEl0ZW1Db250ZW50VHlwZT4+KHRoaXMuY29tcG9uZW50SWQoKSlcbiAgICAgICAgICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpXG4gICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKHRyZWVTdHJ1Y3QpID0+IHRoaXMuY2hlY2tMaXN0QmxvY2tTZXJ2aWNlLnNldENoZWNrTGlzdEl0ZW1zKHRyZWVTdHJ1Y3QuZWxlbWVudHMpKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7IGFsbG93U2lnbmFsV3JpdGVzOiB0cnVlIH1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFkZENoZWNrTGlzdEl0ZW0odHlwZTogQ3VpQ2hlY2tMaXN0QmxvY2tJdGVtVHlwZSk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzTG9hZGluZy5zZXQodHJ1ZSk7XG4gICAgICAgIHRoaXMubm9kZUNoZWNrTGlzdEFwaVNlcnZpY2VcbiAgICAgICAgICAgIC5hZGROb2RlQ2hlY2tMaXN0SXRlbSh7XG4gICAgICAgICAgICAgICAgdHJlZVN0cnVjdENvbnRhaW5lckNoZWNrTGlzdElkOiB0aGlzLmNvbXBvbmVudElkKCksXG4gICAgICAgICAgICAgICAgdGl0bGU6ICdOZXcgY2hlY2tsaXN0IGl0ZW0nLFxuICAgICAgICAgICAgICAgIHR5cGVfb3BlcmF0aW9uczogdHlwZVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpLFxuICAgICAgICAgICAgICAgIGZpbmFsaXplKCgpID0+IHRoaXMuaXNMb2FkaW5nLnNldChmYWxzZSkpXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChjaGVja0xpc3RJdGVtKSA9PiB0aGlzLmNoZWNrTGlzdEJsb2NrU2VydmljZS5hZGRDaGVja0xpc3RJdGVtKGNoZWNrTGlzdEl0ZW0pKTtcbiAgICB9XG59XG4iLCI8Y3VpLWNvbnRlbnQtd3JhcHBlclxuICAgICp0cmFuc2xvY289XCJsZXQgdFwiXG4gICAgYmFja2dyb3VuZENvbG9yPVwidmFyKC0tY3VpLWJhc2UtMTApXCJcbiAgICBbZ2FwXT1cIjE2XCJcbj5cbiAgICA8bmctY29udGFpbmVyICpjdWlMZXQ9XCJjaGVja0xpc3RJdGVtcygpIGFzIGNoZWNrTGlzdEl0ZW1zXCI+XG4gICAgICAgIDxoZWFkZXIgY2xhc3M9XCJoZWFkZXJcIj5cbiAgICAgICAgICAgIDxoMiBjbGFzcz1cImhlYWRpbmdcIj57eyB0KCdDSEVDS0xJU1QnKSB9fTwvaDI+XG5cbiAgICAgICAgICAgIEBpZiAoY2hlY2tMaXN0SXRlbXMpIHtcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIml0ZW1cIj57eyBjaGVja0xpc3RJdGVtcz8ubGVuZ3RoIH19IHt7IHQoJ0lURU1fVkFSSUFOVCcpIH19PC9zcGFuPlxuICAgICAgICAgICAgfVxuICAgICAgICA8L2hlYWRlcj5cbiAgICAgICAgPGN1aS1jb250ZW50LXdyYXBwZXI+XG4gICAgICAgICAgICA8Y3VpLWNoZWNrbGlzdC1ibG9jay1saXN0IFtjb25maWddPVwiY29uZmlnKClcIiAvPlxuICAgICAgICA8L2N1aS1jb250ZW50LXdyYXBwZXI+XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgI2FjdGlvbkJ1dHRvbj1cImVsZW1lbnRSZWZcIlxuICAgICAgICAgICAgICAgIGN1aUVsZW1lbnRcbiAgICAgICAgICAgICAgICBjdWlCdXR0b25cbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICBhcHBlYXJhbmNlPVwiZmxhdFwiXG4gICAgICAgICAgICAgICAgc2l6ZT1cInh4c1wiXG4gICAgICAgICAgICAgICAgaWNvbj1cImN1aUljb25QbHVzXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyB0KCdBRERfTkVXX0lURU0nKSB9fVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8Y3VpLWNvbnRleHQtbWVudVxuICAgICAgICAgICAgICAgIFtpdGVtc109XCJDSEVDS0xJU1RfQkxPQ0tfU0VMRUNUX09QVElPTlNcIlxuICAgICAgICAgICAgICAgIFt0YXJnZXRdPVwiYWN0aW9uQnV0dG9uLm5hdGl2ZUVsZW1lbnRcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG48L2N1aS1jb250ZW50LXdyYXBwZXI+XG4iXX0=
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tsaXN0LWJsb2NrLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvd2lkZ2V0cy91aS9jaGVja2xpc3QtYmxvY2svY2hlY2tsaXN0LWJsb2NrLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvd2lkZ2V0cy91aS9jaGVja2xpc3QtYmxvY2svY2hlY2tsaXN0LWJsb2NrLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsZUFBZSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzFFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFaEMsT0FBTyxFQUNILDBCQUEwQixFQUMxQix1QkFBdUIsRUFHMUIsTUFBTSxjQUFjLENBQUM7QUFFdEIsT0FBTyxFQUFFLGVBQWUsRUFBRSxvQkFBb0IsRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXhHLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUM5RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxZQUFZLENBQUM7Ozs7QUFxQnRELE1BQU0sT0FBTywwQkFBMEI7SUE0Qm5DO1FBM0JpQixlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ2hDLHlCQUFvQixHQUFHLE1BQU0sQ0FBQyx1QkFB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K0JBQ0ksMENBQTBDLFdBQzNDO3dCQUNMLDhCQUE4Qjt3QkFDOUIsMEJBQTBCO3dCQUMxQixlQUFlO3dCQUNmLG9CQUFvQjt3QkFDcEIsbUJBQW1CO3dCQUNuQixlQUFlO3dCQUNmLGtCQUFrQjtxQkFDckIsY0FDVyxJQUFJLG1CQUdDLHVCQUF1QixDQUFDLE1BQU0sYUFDcEMsQ0FBQyx3QkFBd0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIERlc3Ryb3lSZWYsIGVmZmVjdCwgaW5qZWN0LCBpbnB1dCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBDdWlFbGVtZW50RGlyZWN0aXZlLCBDdWlMZXREaXJlY3RpdmUgfSBmcm9tICdAY3VieS11aS9jZGsnO1xuaW1wb3J0IHsgVHJhbnNsb2NvRGlyZWN0aXZlLCBUcmFuc2xvY29TZXJ2aWNlIH0gZnJvbSAnQGpzdmVyc2UvdHJhbnNsb2NvJztcbmltcG9ydCB7IGZpbmFsaXplIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge30gZnJvbSAnQGN1YnktdWkvYXBpJztcbmltcG9ydCB7XG4gICAgQ3VpTm9kZUNoZWNrbGlzdEFwaVNlcnZpY2UsXG4gICAgQ3VpVHJlZVN0cnVjdEFwaVNlcnZpY2UsXG4gICAgTm9kZUNoZWNrTGlzdEl0ZW0sXG4gICAgTm9kZUNoZWNrTGlzdEl0ZW1Db250ZW50VHlwZVxufSBmcm9tICdAY3VieS11aS9hcGknO1xuXG5pbXBvcnQgeyBDdWlCdXR0b25Nb2R1bGUsIEN1aUNvbnRleHRNZW51TW9kdWxlLCBDdWlDb250ZW50V3JhcHBlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvbXBvbmVudHMnO1xuaW1wb3J0IHsgQ3VpQ2hlY2tMaXN0QmxvY2tJdGVtVHlwZSB9IGZyb20gJy4vY2hlY2tsaXN0LWJsb2NrLm9wdGlvbnMnO1xuaW1wb3J0IHsgQ3VpQ2hlY2tsaXN0QmxvY2tMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzJztcbmltcG9ydCB7IEN1aUNoZWNrTGlzdEJsb2NrU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMnO1xuaW1wb3J0IHsgQ3VpQ29udGV4dE1lbnVJdGVtIH0gZnJvbSAnLi4vLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBDdWlFZGl0b3JDb25maWcgfSBmcm9tICcuLi8uLi8uLi9lZGl0b3IvaW50ZXJmYWNlcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnY3VpLWNoZWNrbGlzdC1ibG9jaywgW2N1aUNoZWNrTGlzdEJsb2NrXScsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBDdWlDaGVja2xpc3RCbG9ja0xpc3RDb21wb25lbnQsXG4gICAgICAgIEN1aUNvbnRlbnRXcmFwcGVyQ29tcG9uZW50LFxuICAgICAgICBDdWlCdXR0b25Nb2R1bGUsXG4gICAgICAgIEN1aUNvbnRleHRNZW51TW9kdWxlLFxuICAgICAgICBDdWlFbGVtZW50RGlyZWN0aXZlLFxuICAgICAgICBDdWlMZXREaXJlY3RpdmUsXG4gICAgICAgIFRyYW5zbG9jb0RpcmVjdGl2ZVxuICAgIF0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY2hlY2tsaXN0LWJsb2NrLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jaGVja2xpc3QtYmxvY2suY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFtDdWlDaGVja0xpc3RCbG9ja1NlcnZpY2VdXG59KVxuZXhwb3J0IGNsYXNzIEN1aUNoZWNrbGlzdEJsb2NrQ29tcG9uZW50IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG4gICAgcHJpdmF0ZSByZWFkb25seSB0cmVlU3RydWN0QXBpU2VydmljZSA9IGluamVjdChDdWlUcmVlU3RydWN0QXBpU2VydmljZSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSB0cmFuc2xvY29TZXJ2aWNlID0gaW5qZWN0KFRyYW5zbG9jb1NlcnZpY2UpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgbm9kZUNoZWNrTGlzdEFwaVNlcnZpY2UgPSBpbmplY3QoQ3VpTm9kZUNoZWNrbGlzdEFwaVNlcnZpY2UpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY2hlY2tMaXN0QmxvY2tTZXJ2aWNlID0gaW5qZWN0KEN1aUNoZWNrTGlzdEJsb2NrU2VydmljZSk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgQ0hFQ0tMSVNUX0JMT0NLX1NFTEVDVF9PUFRJT05TOiBDdWlDb250ZXh0TWVudUl0ZW1bXSA9IFtcbiAgICAgICAge1xuICAgICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ0FTU0lHTkVFX0FQUFJPVkFMJyksXG4gICAgICAgICAgICBjb21tYW5kOiAoKSA9PiB0aGlzLmFkZENoZWNrTGlzdEl0ZW0oQ3VpQ2hlY2tMaXN0QmxvY2tJdGVtVHlwZS5XSVRIT1VUX1ZFUklGSUNBVElPTilcbiAgICAgICAgfSxcbiAgICAgICAge1xuICAgICAgICAgICAgbGFiZWw6IHRoaXMudHJhbnNsb2NvU2VydmljZS50cmFuc2xhdGUoJ0RPVUJMRV9DSEVDS19BUFBST1ZBTCcpLFxuICAgICAgICAgICAgY29tbWFuZDogKCkgPT4gdGhpcy5hZGRDaGVja0xpc3RJdGVtKEN1aUNoZWNrTGlzdEJsb2NrSXRlbVR5cGUuV0lUSF9WRVJJRklDQVRJT04pXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICAgIGxhYmVsOiB0aGlzLnRyYW5zbG9jb1NlcnZpY2UudHJhbnNsYXRlKCdFVkFMVUFUSU9OX09QVElPTlMnKSxcbiAgICAgICAgICAgIGNvbW1hbmQ6ICgpID0+IHRoaXMuYWRkQ2hlY2tMaXN0SXRlbShDdWlDaGVja0xpc3RCbG9ja0l0ZW1UeXBlLkVWQUxVQVRJT04pXG4gICAgICAgIH1cbiAgICBdO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGNoZWNrTGlzdEl0ZW1zID0gdGhpcy5jaGVja0xpc3RCbG9ja1NlcnZpY2UuY2hlY2tMaXN0SXRlbXM7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGlzTG9hZGluZyA9IHNpZ25hbDxib29sZWFuPihmYWxzZSk7XG5cbiAgICBwdWJsaWMgcmVhZG9ubHkgY29tcG9uZW50SWQgPSBpbnB1dC5yZXF1aXJlZDxzdHJpbmc+KCk7XG4gICAgcHVibGljIHJlYWRvbmx5IGNvbmZpZyA9IGlucHV0LnJlcXVpcmVkPEN1aUVkaXRvckNvbmZpZz4oKTtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICB0aGlzLmluaXROb2RlQ2hlY2tMaXN0QmxvY2soKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGluaXROb2RlQ2hlY2tMaXN0QmxvY2soKTogdm9pZCB7XG4gICAgICAgIGVmZmVjdChcbiAgICAgICAgICAgICgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmNoZWNrTGlzdEJsb2NrU2VydmljZS5zZXRDb21wb25lbnRJZCh0aGlzLmNvbXBvbmVudElkKCkpO1xuICAgICAgICAgICAgICAgIHRoaXMudHJlZVN0cnVjdEFwaVNlcnZpY2VcbiAgICAgICAgICAgICAgICAgICAgLmdldEJ5SWQ8Tm9kZUNoZWNrTGlzdEl0ZW08Tm9kZUNoZWNrTGlzdEl0ZW1Db250ZW50VHlwZT4+KHRoaXMuY29tcG9uZW50SWQoKSlcbiAgICAgICAgICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpXG4gICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKHRyZWVTdHJ1Y3QpID0+IHRoaXMuY2hlY2tMaXN0QmxvY2tTZXJ2aWNlLnNldENoZWNrTGlzdEl0ZW1zKHRyZWVTdHJ1Y3QuZWxlbWVudHMpKTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB7IGFsbG93U2lnbmFsV3JpdGVzOiB0cnVlIH1cbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFkZENoZWNrTGlzdEl0ZW0odHlwZTogQ3VpQ2hlY2tMaXN0QmxvY2tJdGVtVHlwZSk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzTG9hZGluZy5zZXQodHJ1ZSk7XG4gICAgICAgIHRoaXMubm9kZUNoZWNrTGlzdEFwaVNlcnZpY2VcbiAgICAgICAgICAgIC5hZGROb2RlQ2hlY2tMaXN0SXRlbSh7XG4gICAgICAgICAgICAgICAgdHJlZVN0cnVjdENvbnRhaW5lckNoZWNrTGlzdElkOiB0aGlzLmNvbXBvbmVudElkKCksXG4gICAgICAgICAgICAgICAgdGl0bGU6ICdOZXcgY2hlY2tsaXN0IGl0ZW0nLFxuICAgICAgICAgICAgICAgIHR5cGVfb3BlcmF0aW9uczogdHlwZVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpLFxuICAgICAgICAgICAgICAgIGZpbmFsaXplKCgpID0+IHRoaXMuaXNMb2FkaW5nLnNldChmYWxzZSkpXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChjaGVja0xpc3RJdGVtKSA9PiB0aGlzLmNoZWNrTGlzdEJsb2NrU2VydmljZS5hZGRDaGVja0xpc3RJdGVtKGNoZWNrTGlzdEl0ZW0pKTtcbiAgICB9XG59XG4iLCI8Y3VpLWNvbnRlbnQtd3JhcHBlclxuICAgICp0cmFuc2xvY289XCJsZXQgdFwiXG4gICAgYmFja2dyb3VuZENvbG9yPVwidmFyKC0tY3VpLWJhc2UtMTApXCJcbiAgICBbZ2FwXT1cIjE2XCJcbj5cbiAgICA8bmctY29udGFpbmVyICpjdWlMZXQ9XCJjaGVja0xpc3RJdGVtcygpIGFzIGNoZWNrTGlzdEl0ZW1zXCI+XG4gICAgICAgIDxoZWFkZXIgY2xhc3M9XCJoZWFkZXJcIj5cbiAgICAgICAgICAgIDxoMiBjbGFzcz1cImhlYWRpbmdcIj57eyB0KCdDSEVDS0xJU1QnKSB9fTwvaDI+XG5cbiAgICAgICAgICAgIEBpZiAoY2hlY2tMaXN0SXRlbXMpIHtcbiAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cIml0ZW1cIj57eyBjaGVja0xpc3RJdGVtcz8ubGVuZ3RoIH19IHt7IHQoJ0lURU1fVkFSSUFOVCcpIH19PC9zcGFuPlxuICAgICAgICAgICAgfVxuICAgICAgICA8L2hlYWRlcj5cbiAgICAgICAgPGN1aS1jb250ZW50LXdyYXBwZXI+XG4gICAgICAgICAgICA8Y3VpLWNoZWNrbGlzdC1ibG9jay1saXN0IFtjb25maWddPVwiY29uZmlnKClcIiAvPlxuICAgICAgICA8L2N1aS1jb250ZW50LXdyYXBwZXI+XG4gICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgI2FjdGlvbkJ1dHRvbj1cImVsZW1lbnRSZWZcIlxuICAgICAgICAgICAgICAgIGN1aUVsZW1lbnRcbiAgICAgICAgICAgICAgICBjdWlCdXR0b25cbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICBhcHBlYXJhbmNlPVwiZmxhdFwiXG4gICAgICAgICAgICAgICAgc2l6ZT1cInh4c1wiXG4gICAgICAgICAgICAgICAgaWNvbj1cImN1aUljb25QbHVzXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICB7eyB0KCdBRERfTkVXX0lURU0nKSB9fVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8Y3VpLWNvbnRleHQtbWVudVxuICAgICAgICAgICAgICAgIFtpdGVtc109XCJDSEVDS0xJU1RfQkxPQ0tfU0VMRUNUX09QVElPTlNcIlxuICAgICAgICAgICAgICAgIFt0YXJnZXRdPVwiYWN0aW9uQnV0dG9uLm5hdGl2ZUVsZW1lbnRcIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG48L2N1aS1jb250ZW50LXdyYXBwZXI+XG4iXX0=