@cuby-ui/core 0.0.325 → 0.0.328

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 (57) hide show
  1. package/components/index.d.ts +1 -0
  2. package/components/tab/index.d.ts +1 -0
  3. package/components/tab/tab.component.d.ts +15 -0
  4. package/components/tabs/index.d.ts +2 -3
  5. package/components/tabs/services/index.d.ts +1 -0
  6. package/components/tabs/services/tabs.service.d.ts +14 -0
  7. package/components/tabs/tabs.component.d.ts +12 -13
  8. package/components/tabs/tabs.options.d.ts +21 -0
  9. package/esm2022/components/index.mjs +2 -1
  10. package/esm2022/components/tab/index.mjs +2 -0
  11. package/esm2022/components/tab/tab.component.mjs +36 -0
  12. package/esm2022/components/tabs/index.mjs +3 -4
  13. package/esm2022/components/tabs/services/index.mjs +2 -0
  14. package/esm2022/components/tabs/services/tabs.service.mjs +27 -0
  15. package/esm2022/components/tabs/tabs.component.mjs +32 -37
  16. package/esm2022/components/tabs/tabs.options.mjs +5 -0
  17. package/esm2022/widgets/index.mjs +3 -1
  18. package/esm2022/widgets/select-modal/components/index.mjs +3 -0
  19. package/esm2022/widgets/select-modal/components/select-modal-folder/index.mjs +2 -0
  20. package/esm2022/widgets/select-modal/components/select-modal-folder/select-modal-folder.component.mjs +21 -0
  21. package/esm2022/widgets/select-modal/components/select-modal-search/index.mjs +2 -0
  22. package/esm2022/widgets/select-modal/components/select-modal-search/select-modal-search.component.mjs +22 -0
  23. package/esm2022/widgets/select-modal/index.mjs +4 -0
  24. package/esm2022/widgets/select-modal/select-modal.component.mjs +35 -0
  25. package/esm2022/widgets/select-modal/select-modal.interfaces.mjs +2 -0
  26. package/esm2022/widgets/select-modal/select-modal.service.mjs +23 -0
  27. package/esm2022/widgets/storage-list/components/index.mjs +2 -0
  28. package/esm2022/widgets/storage-list/components/storage-list-item/index.mjs +2 -0
  29. package/esm2022/widgets/storage-list/components/storage-list-item/storage-list-item.component.mjs +70 -0
  30. package/esm2022/widgets/storage-list/index.mjs +3 -0
  31. package/esm2022/widgets/storage-list/storage-list.component.mjs +17 -0
  32. package/esm2022/widgets/storage-list/storage-list.options.mjs +3 -0
  33. package/fesm2022/cuby-ui-core.mjs +234 -63
  34. package/fesm2022/cuby-ui-core.mjs.map +1 -1
  35. package/package.json +4 -4
  36. package/widgets/index.d.ts +2 -0
  37. package/widgets/select-modal/components/index.d.ts +2 -0
  38. package/widgets/select-modal/components/select-modal-folder/index.d.ts +1 -0
  39. package/widgets/select-modal/components/select-modal-folder/select-modal-folder.component.d.ts +10 -0
  40. package/widgets/select-modal/components/select-modal-search/index.d.ts +1 -0
  41. package/widgets/select-modal/components/select-modal-search/select-modal-search.component.d.ts +7 -0
  42. package/widgets/select-modal/index.d.ts +3 -0
  43. package/widgets/select-modal/select-modal.component.d.ts +13 -0
  44. package/widgets/select-modal/select-modal.interfaces.d.ts +15 -0
  45. package/widgets/select-modal/select-modal.service.d.ts +13 -0
  46. package/widgets/storage-list/components/index.d.ts +1 -0
  47. package/widgets/storage-list/components/storage-list-item/index.d.ts +1 -0
  48. package/widgets/storage-list/components/storage-list-item/storage-list-item.component.d.ts +24 -0
  49. package/widgets/storage-list/index.d.ts +2 -0
  50. package/widgets/storage-list/storage-list.component.d.ts +10 -0
  51. package/widgets/storage-list/storage-list.options.d.ts +16 -0
  52. package/components/tabs/tab/index.d.ts +0 -1
  53. package/components/tabs/tab/tab.component.d.ts +0 -8
  54. package/components/tabs/tabs.module.d.ts +0 -8
  55. package/esm2022/components/tabs/tab/index.mjs +0 -2
  56. package/esm2022/components/tabs/tab/tab.component.mjs +0 -21
  57. package/esm2022/components/tabs/tabs.module.mjs +0 -18
@@ -29,6 +29,7 @@ export * from './sidebar';
29
29
  export * from './card-wrapper';
30
30
  export * from './layout';
31
31
  export * from './svg';
32
+ export * from './tab';
32
33
  export * from './tabs';
33
34
  export * from './textarea';
34
35
  export * from './toggle';
@@ -0,0 +1 @@
1
+ export { CuiTabDirective } from './tab.component';
@@ -0,0 +1,15 @@
1
+ import type { TemplateRef } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export declare class CuiTabDirective {
4
+ private readonly tabsService;
5
+ private readonly tabId;
6
+ readonly buttonSlot: import("@angular/core").InputSignal<TemplateRef<unknown>>;
7
+ readonly contentSlot: import("@angular/core").InputSignal<TemplateRef<unknown>>;
8
+ readonly data: import("@angular/core").InputSignal<unknown>;
9
+ constructor();
10
+ private initTabEffect;
11
+ private addTab;
12
+ private removeTab;
13
+ static ɵfac: i0.ɵɵFactoryDeclaration<CuiTabDirective, never>;
14
+ static ɵdir: i0.ɵɵDirectiveDeclaration<CuiTabDirective, "cui-tab, [cuiTab]", never, { "buttonSlot": { "alias": "buttonSlot"; "required": true; "isSignal": true; }; "contentSlot": { "alias": "contentSlot"; "required": true; "isSignal": true; }; "data": { "alias": "data"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
15
+ }
@@ -1,3 +1,2 @@
1
- export * from './tab';
2
- export * from './tabs.component';
3
- export * from './tabs.module';
1
+ export { CuiTabsComponent } from './tabs.component';
2
+ export { CuiTabOptions, CuiTabsService, CUI_TABS_SERVICE_TOKEN } from './tabs.options';
@@ -0,0 +1 @@
1
+ export { CuiTabsServiceImpl } from './tabs.service';
@@ -0,0 +1,14 @@
1
+ import type { CuiNullable } from '@cuby-ui/cdk';
2
+ import { CuiAbstractTabsService, CuiTabOptions } from '../tabs.options';
3
+ import * as i0 from "@angular/core";
4
+ export declare class CuiTabsServiceImpl extends CuiAbstractTabsService {
5
+ private readonly tabsSignal;
6
+ private readonly activeTabSignal;
7
+ readonly tabs: import("@angular/core").Signal<CuiTabOptions[]>;
8
+ readonly activeTab: import("@angular/core").Signal<CuiNullable<CuiTabOptions>>;
9
+ set(tab: CuiTabOptions): void;
10
+ addTab(tab: CuiTabOptions): void;
11
+ removeTab(tabId: string): void;
12
+ static ɵfac: i0.ɵɵFactoryDeclaration<CuiTabsServiceImpl, never>;
13
+ static ɵprov: i0.ɵɵInjectableDeclaration<CuiTabsServiceImpl>;
14
+ }
@@ -1,16 +1,15 @@
1
- import type { AfterViewChecked } from '@angular/core';
2
- import { EventEmitter } from '@angular/core';
1
+ import type { TemplateRef } from '@angular/core';
2
+ import { type CuiTabOptions } from './tabs.options';
3
3
  import * as i0 from "@angular/core";
4
- export declare class CuiTabsComponent implements AfterViewChecked {
5
- private readonly element;
6
- private readonly activeElementClass;
7
- protected get tabs(): readonly HTMLElement[];
8
- get activeElement(): HTMLElement | null;
9
- ngAfterViewChecked(): void;
10
- activeItemIndex: number;
11
- readonly activeItemIndexChange: EventEmitter<number>;
12
- protected onActivate(event: CustomEvent): void;
13
- private changeActiveItem;
4
+ export declare class CuiTabsComponent {
5
+ private readonly tabsService;
6
+ protected readonly tabs: import("@angular/core").Signal<CuiTabOptions[]>;
7
+ protected readonly activeTab: import("@angular/core").Signal<import("@cuby-ui/cdk").CuiNullable<CuiTabOptions>>;
8
+ readonly headerSlot: import("@angular/core").InputSignal<TemplateRef<unknown> | undefined>;
9
+ readonly selectedIndex: import("@angular/core").InputSignal<number>;
10
+ constructor();
11
+ protected onSelectTab(event: Event, tab: CuiTabOptions): void;
12
+ private initSelectedTabEffect;
14
13
  static ɵfac: i0.ɵɵFactoryDeclaration<CuiTabsComponent, never>;
15
- static ɵcmp: i0.ɵɵComponentDeclaration<CuiTabsComponent, "cui-tabs", never, { "activeItemIndex": { "alias": "activeItemIndex"; "required": false; }; }, { "activeItemIndexChange": "activeItemIndexChange"; }, never, ["[cuiTab]"], false, never>;
14
+ static ɵcmp: i0.ɵɵComponentDeclaration<CuiTabsComponent, "cui-tabs", never, { "headerSlot": { "alias": "headerSlot"; "required": false; "isSignal": true; }; "selectedIndex": { "alias": "selectedIndex"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
16
15
  }
@@ -0,0 +1,21 @@
1
+ import { InjectionToken, Signal, type TemplateRef } from '@angular/core';
2
+ import { CuiNullable } from '@cuby-ui/cdk';
3
+ export declare const CUI_TABS_SERVICE_TOKEN: InjectionToken<CuiAbstractTabsService>;
4
+ export declare abstract class CuiAbstractTabsService implements CuiTabsService {
5
+ readonly abstract tabs: Signal<CuiTabOptions[]>;
6
+ readonly abstract activeTab: Signal<CuiNullable<CuiTabOptions>>;
7
+ abstract set(tab: CuiTabOptions): void;
8
+ abstract addTab(tab: CuiTabOptions): void;
9
+ abstract removeTab(tabId: string): void;
10
+ }
11
+ export interface CuiTabsService {
12
+ set(tab: CuiTabOptions): void;
13
+ addTab(tab: CuiTabOptions): void;
14
+ removeTab(tabId: string): void;
15
+ }
16
+ export interface CuiTabOptions {
17
+ readonly id: string;
18
+ readonly button: TemplateRef<unknown>;
19
+ readonly content: TemplateRef<unknown>;
20
+ readonly data?: unknown;
21
+ }
@@ -29,8 +29,9 @@ export * from './sidebar';
29
29
  export * from './card-wrapper';
30
30
  export * from './layout';
31
31
  export * from './svg';
32
+ export * from './tab';
32
33
  export * from './tabs';
33
34
  export * from './textarea';
34
35
  export * from './toggle';
35
36
  export * from './render-dynamic-components';
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsUUFBUSxDQUFDO0FBQ3ZCLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLE9BQU8sQ0FBQztBQUN0QixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLDZCQUE2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hY2NvcmRpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9hbGVydCc7XG5leHBvcnQgKiBmcm9tICcuL2JhZGdlJztcbmV4cG9ydCAqIGZyb20gJy4vYmFubmVyJztcbmV4cG9ydCAqIGZyb20gJy4vYnJlYWRjcnVtYnMnO1xuZXhwb3J0ICogZnJvbSAnLi9idXR0b24nO1xuZXhwb3J0ICogZnJvbSAnLi9idXR0b24tZ3JvdXAnO1xuZXhwb3J0ICogZnJvbSAnLi9jaGVja2JveCc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRleHQtbWVudSc7XG5leHBvcnQgKiBmcm9tICcuL2RpYWxvZyc7XG5leHBvcnQgKiBmcm9tICcuL2Ryb3Bkb3duJztcbmV4cG9ydCAqIGZyb20gJy4vZm9ybS1maWVsZCc7XG5leHBvcnQgKiBmcm9tICcuL2hpbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9pY29uLWJ1dHRvbic7XG5leHBvcnQgKiBmcm9tICcuL2lucHV0LW51bWJlcic7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRlbnQtd3JhcHBlcic7XG5leHBvcnQgKiBmcm9tICcuL2dob3N0LWlucHV0JztcbmV4cG9ydCAqIGZyb20gJy4vaW5wdXQtcGFzc3dvcmQnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnB1dC10ZXh0JztcbmV4cG9ydCAqIGZyb20gJy4vaW5wdXQtdGltZSc7XG5leHBvcnQgKiBmcm9tICcuL2xhYmVsJztcbmV4cG9ydCAqIGZyb20gJy4vbGV0dGVyLWJveCc7XG5leHBvcnQgKiBmcm9tICcuL25vdGlmaWNhdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3JhZGlvJztcbmV4cG9ydCAqIGZyb20gJy4vcm9vdCc7XG5leHBvcnQgKiBmcm9tICcuL3NlbGVjdCc7XG5leHBvcnQgKiBmcm9tICcuL2VtcHR5LXN0YXRlJztcbmV4cG9ydCAqIGZyb20gJy4vc2lkZWJhcic7XG5leHBvcnQgKiBmcm9tICcuL2NhcmQtd3JhcHBlcic7XG5leHBvcnQgKiBmcm9tICcuL2xheW91dCc7XG5leHBvcnQgKiBmcm9tICcuL3N2Zyc7XG5leHBvcnQgKiBmcm9tICcuL3RhYnMnO1xuZXhwb3J0ICogZnJvbSAnLi90ZXh0YXJlYSc7XG5leHBvcnQgKiBmcm9tICcuL3RvZ2dsZSc7XG5leHBvcnQgKiBmcm9tICcuL3JlbmRlci1keW5hbWljLWNvbXBvbmVudHMnO1xuIl19
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsUUFBUSxDQUFDO0FBQ3ZCLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLGVBQWUsQ0FBQztBQUM5QixjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLE9BQU8sQ0FBQztBQUN0QixjQUFjLE9BQU8sQ0FBQztBQUN0QixjQUFjLFFBQVEsQ0FBQztBQUN2QixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLDZCQUE2QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hY2NvcmRpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9hbGVydCc7XG5leHBvcnQgKiBmcm9tICcuL2JhZGdlJztcbmV4cG9ydCAqIGZyb20gJy4vYmFubmVyJztcbmV4cG9ydCAqIGZyb20gJy4vYnJlYWRjcnVtYnMnO1xuZXhwb3J0ICogZnJvbSAnLi9idXR0b24nO1xuZXhwb3J0ICogZnJvbSAnLi9idXR0b24tZ3JvdXAnO1xuZXhwb3J0ICogZnJvbSAnLi9jaGVja2JveCc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRleHQtbWVudSc7XG5leHBvcnQgKiBmcm9tICcuL2RpYWxvZyc7XG5leHBvcnQgKiBmcm9tICcuL2Ryb3Bkb3duJztcbmV4cG9ydCAqIGZyb20gJy4vZm9ybS1maWVsZCc7XG5leHBvcnQgKiBmcm9tICcuL2hpbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9pY29uLWJ1dHRvbic7XG5leHBvcnQgKiBmcm9tICcuL2lucHV0LW51bWJlcic7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRlbnQtd3JhcHBlcic7XG5leHBvcnQgKiBmcm9tICcuL2dob3N0LWlucHV0JztcbmV4cG9ydCAqIGZyb20gJy4vaW5wdXQtcGFzc3dvcmQnO1xuZXhwb3J0ICogZnJvbSAnLi9pbnB1dC10ZXh0JztcbmV4cG9ydCAqIGZyb20gJy4vaW5wdXQtdGltZSc7XG5leHBvcnQgKiBmcm9tICcuL2xhYmVsJztcbmV4cG9ydCAqIGZyb20gJy4vbGV0dGVyLWJveCc7XG5leHBvcnQgKiBmcm9tICcuL25vdGlmaWNhdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3JhZGlvJztcbmV4cG9ydCAqIGZyb20gJy4vcm9vdCc7XG5leHBvcnQgKiBmcm9tICcuL3NlbGVjdCc7XG5leHBvcnQgKiBmcm9tICcuL2VtcHR5LXN0YXRlJztcbmV4cG9ydCAqIGZyb20gJy4vc2lkZWJhcic7XG5leHBvcnQgKiBmcm9tICcuL2NhcmQtd3JhcHBlcic7XG5leHBvcnQgKiBmcm9tICcuL2xheW91dCc7XG5leHBvcnQgKiBmcm9tICcuL3N2Zyc7XG5leHBvcnQgKiBmcm9tICcuL3RhYic7XG5leHBvcnQgKiBmcm9tICcuL3RhYnMnO1xuZXhwb3J0ICogZnJvbSAnLi90ZXh0YXJlYSc7XG5leHBvcnQgKiBmcm9tICcuL3RvZ2dsZSc7XG5leHBvcnQgKiBmcm9tICcuL3JlbmRlci1keW5hbWljLWNvbXBvbmVudHMnO1xuIl19
@@ -0,0 +1,2 @@
1
+ export { CuiTabDirective } from './tab.component';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvdGFiL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IEN1aVRhYkRpcmVjdGl2ZSB9IGZyb20gJy4vdGFiLmNvbXBvbmVudCc7XG4iXX0=
@@ -0,0 +1,36 @@
1
+ import { Directive, effect, inject, input, untracked } from '@angular/core';
2
+ import { CuiIdService } from '@cuby-ui/cdk';
3
+ import { CUI_TABS_SERVICE_TOKEN } from '../tabs/tabs.options';
4
+ import * as i0 from "@angular/core";
5
+ export class CuiTabDirective {
6
+ constructor() {
7
+ this.tabsService = inject(CUI_TABS_SERVICE_TOKEN);
8
+ this.tabId = inject(CuiIdService).generate();
9
+ this.buttonSlot = input.required();
10
+ this.contentSlot = input.required();
11
+ this.data = input();
12
+ this.initTabEffect();
13
+ }
14
+ initTabEffect() {
15
+ effect((onCleanup) => {
16
+ this.addTab(this.buttonSlot(), this.contentSlot());
17
+ onCleanup(this.removeTab.bind(this));
18
+ }, { allowSignalWrites: true });
19
+ }
20
+ addTab(button, content) {
21
+ this.tabsService.addTab({ id: this.tabId, button, content, data: untracked(this.data) });
22
+ }
23
+ removeTab() {
24
+ this.tabsService.removeTab(this.tabId);
25
+ }
26
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiTabDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
27
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.13", type: CuiTabDirective, isStandalone: true, selector: "cui-tab, [cuiTab]", inputs: { buttonSlot: { classPropertyName: "buttonSlot", publicName: "buttonSlot", isSignal: true, isRequired: true, transformFunction: null }, contentSlot: { classPropertyName: "contentSlot", publicName: "contentSlot", isSignal: true, isRequired: true, transformFunction: null }, data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 }); }
28
+ }
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiTabDirective, decorators: [{
30
+ type: Directive,
31
+ args: [{
32
+ selector: 'cui-tab, [cuiTab]',
33
+ standalone: true,
34
+ }]
35
+ }], ctorParameters: () => [] });
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy90YWIvdGFiLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRTVDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQU05RCxNQUFNLE9BQU8sZUFBZTtJQVF4QjtRQVBpQixnQkFBVyxHQUFHLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO1FBQzdDLFVBQUssR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7UUFFekMsZUFBVSxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXdCLENBQUM7UUFDcEQsZ0JBQVcsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUF3QixDQUFDO1FBQ3JELFNBQUksR0FBRyxLQUFLLEVBQVcsQ0FBQztRQUdwQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVPLGFBQWE7UUFDakIsTUFBTSxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7WUFDakIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLEVBQUUsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7WUFFbkQsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDekMsQ0FBQyxFQUFFLEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRU8sTUFBTSxDQUFDLE1BQTRCLEVBQUUsT0FBNkI7UUFDdEUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUM3RixDQUFDO0lBRU8sU0FBUztRQUNiLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUMxQyxDQUFDOytHQTFCUSxlQUFlO21HQUFmLGVBQWU7OzRGQUFmLGVBQWU7a0JBSjNCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLG1CQUFtQjtvQkFDN0IsVUFBVSxFQUFFLElBQUk7aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBlZmZlY3QsIGluamVjdCwgaW5wdXQsIHVudHJhY2tlZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ3VpSWRTZXJ2aWNlIH0gZnJvbSAnQGN1YnktdWkvY2RrJztcblxuaW1wb3J0IHsgQ1VJX1RBQlNfU0VSVklDRV9UT0tFTiB9IGZyb20gJy4uL3RhYnMvdGFicy5vcHRpb25zJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdjdWktdGFiLCBbY3VpVGFiXScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgQ3VpVGFiRGlyZWN0aXZlIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRhYnNTZXJ2aWNlID0gaW5qZWN0KENVSV9UQUJTX1NFUlZJQ0VfVE9LRU4pO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgdGFiSWQgPSBpbmplY3QoQ3VpSWRTZXJ2aWNlKS5nZW5lcmF0ZSgpO1xuXG4gICAgcHVibGljIHJlYWRvbmx5IGJ1dHRvblNsb3QgPSBpbnB1dC5yZXF1aXJlZDxUZW1wbGF0ZVJlZjx1bmtub3duPj4oKTtcbiAgICBwdWJsaWMgcmVhZG9ubHkgY29udGVudFNsb3QgPSBpbnB1dC5yZXF1aXJlZDxUZW1wbGF0ZVJlZjx1bmtub3duPj4oKTtcbiAgICBwdWJsaWMgcmVhZG9ubHkgZGF0YSA9IGlucHV0PHVua25vd24+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgdGhpcy5pbml0VGFiRWZmZWN0KCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0VGFiRWZmZWN0KCk6IHZvaWQge1xuICAgICAgICBlZmZlY3QoKG9uQ2xlYW51cCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5hZGRUYWIodGhpcy5idXR0b25TbG90KCksIHRoaXMuY29udGVudFNsb3QoKSk7XG5cbiAgICAgICAgICAgIG9uQ2xlYW51cCh0aGlzLnJlbW92ZVRhYi5iaW5kKHRoaXMpKTtcbiAgICAgICAgfSwgeyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFkZFRhYihidXR0b246IFRlbXBsYXRlUmVmPHVua25vd24+LCBjb250ZW50OiBUZW1wbGF0ZVJlZjx1bmtub3duPik6IHZvaWQge1xuICAgICAgICB0aGlzLnRhYnNTZXJ2aWNlLmFkZFRhYih7IGlkOiB0aGlzLnRhYklkLCBidXR0b24sIGNvbnRlbnQsIGRhdGE6IHVudHJhY2tlZCh0aGlzLmRhdGEpIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVtb3ZlVGFiKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnRhYnNTZXJ2aWNlLnJlbW92ZVRhYih0aGlzLnRhYklkKVxuICAgIH1cbn1cbiJdfQ==
@@ -1,4 +1,3 @@
1
- export * from './tab';
2
- export * from './tabs.component';
3
- export * from './tabs.module';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvdGFicy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLE9BQU8sQ0FBQztBQUN0QixjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsZUFBZSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi90YWInO1xuZXhwb3J0ICogZnJvbSAnLi90YWJzLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3RhYnMubW9kdWxlJztcbiJdfQ==
1
+ export { CuiTabsComponent } from './tabs.component';
2
+ export { CUI_TABS_SERVICE_TOKEN } from './tabs.options';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvdGFicy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNwRCxPQUFPLEVBQWlDLHNCQUFzQixFQUFFLE1BQU0sZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBDdWlUYWJzQ29tcG9uZW50IH0gZnJvbSAnLi90YWJzLmNvbXBvbmVudCc7XG5leHBvcnQgeyBDdWlUYWJPcHRpb25zLCBDdWlUYWJzU2VydmljZSwgQ1VJX1RBQlNfU0VSVklDRV9UT0tFTiB9IGZyb20gJy4vdGFicy5vcHRpb25zJztcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export { CuiTabsServiceImpl } from './tabs.service';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvdGFicy9zZXJ2aWNlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IEN1aVRhYnNTZXJ2aWNlSW1wbCB9IGZyb20gJy4vdGFicy5zZXJ2aWNlJztcbiJdfQ==
@@ -0,0 +1,27 @@
1
+ import { computed, Injectable, signal } from '@angular/core';
2
+ import { CuiAbstractTabsService } from '../tabs.options';
3
+ import * as i0 from "@angular/core";
4
+ export class CuiTabsServiceImpl extends CuiAbstractTabsService {
5
+ constructor() {
6
+ super(...arguments);
7
+ this.tabsSignal = signal([]);
8
+ this.activeTabSignal = computed(() => signal(this.tabsSignal()[0]));
9
+ this.tabs = this.tabsSignal.asReadonly();
10
+ this.activeTab = computed(() => this.activeTabSignal()());
11
+ }
12
+ set(tab) {
13
+ this.activeTabSignal().set(tab);
14
+ }
15
+ addTab(tab) {
16
+ this.tabsSignal.update((prev) => [...prev, tab]);
17
+ }
18
+ removeTab(tabId) {
19
+ this.tabsSignal.update((prev) => prev.filter((tab) => tab.id !== tabId));
20
+ }
21
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiTabsServiceImpl, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
22
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiTabsServiceImpl }); }
23
+ }
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiTabsServiceImpl, decorators: [{
25
+ type: Injectable
26
+ }] });
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFicy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL3RhYnMvc2VydmljZXMvdGFicy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBa0IsTUFBTSxlQUFlLENBQUM7QUFHN0UsT0FBTyxFQUFFLHNCQUFzQixFQUFpQixNQUFNLGlCQUFpQixDQUFDOztBQUd4RSxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsc0JBQXNCO0lBRDlEOztRQUVxQixlQUFVLEdBQUcsTUFBTSxDQUFrQixFQUFFLENBQUMsQ0FBQztRQUN6QyxvQkFBZSxHQUFHLFFBQVEsQ0FBNkMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFFNUcsU0FBSSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDcEMsY0FBUyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0tBYXhFO0lBWFUsR0FBRyxDQUFDLEdBQWtCO1FBQ3pCLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxHQUFrQjtRQUM1QixJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFTSxTQUFTLENBQUMsS0FBYTtRQUMxQixJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsS0FBSyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzdFLENBQUM7K0dBakJRLGtCQUFrQjttSEFBbEIsa0JBQWtCOzs0RkFBbEIsa0JBQWtCO2tCQUQ5QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgY29tcHV0ZWQsIEluamVjdGFibGUsIHNpZ25hbCwgV3JpdGFibGVTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB0eXBlIHsgQ3VpTnVsbGFibGUgfSBmcm9tICdAY3VieS11aS9jZGsnO1xuXG5pbXBvcnQgeyBDdWlBYnN0cmFjdFRhYnNTZXJ2aWNlLCBDdWlUYWJPcHRpb25zIH0gZnJvbSAnLi4vdGFicy5vcHRpb25zJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEN1aVRhYnNTZXJ2aWNlSW1wbCBleHRlbmRzIEN1aUFic3RyYWN0VGFic1NlcnZpY2Uge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgdGFic1NpZ25hbCA9IHNpZ25hbDxDdWlUYWJPcHRpb25zW10+KFtdKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFjdGl2ZVRhYlNpZ25hbCA9IGNvbXB1dGVkPFdyaXRhYmxlU2lnbmFsPEN1aU51bGxhYmxlPEN1aVRhYk9wdGlvbnM+Pj4oKCkgPT4gc2lnbmFsKHRoaXMudGFic1NpZ25hbCgpWzBdKSk7XG5cbiAgICBwdWJsaWMgcmVhZG9ubHkgdGFicyA9IHRoaXMudGFic1NpZ25hbC5hc1JlYWRvbmx5KCk7XG4gICAgcHVibGljIHJlYWRvbmx5IGFjdGl2ZVRhYiA9IGNvbXB1dGVkKCgpID0+IHRoaXMuYWN0aXZlVGFiU2lnbmFsKCkoKSk7XG5cbiAgICBwdWJsaWMgc2V0KHRhYjogQ3VpVGFiT3B0aW9ucyk6IHZvaWQge1xuICAgICAgICB0aGlzLmFjdGl2ZVRhYlNpZ25hbCgpLnNldCh0YWIpO1xuICAgIH1cblxuICAgIHB1YmxpYyBhZGRUYWIodGFiOiBDdWlUYWJPcHRpb25zKTogdm9pZCB7XG4gICAgICAgIHRoaXMudGFic1NpZ25hbC51cGRhdGUoKHByZXYpID0+IFsuLi5wcmV2LCB0YWJdKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVtb3ZlVGFiKHRhYklkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy50YWJzU2lnbmFsLnVwZGF0ZSgocHJldikgPT4gcHJldi5maWx0ZXIoKHRhYikgPT4gdGFiLmlkICE9PSB0YWJJZCkpO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,49 +1,44 @@
1
- import { ChangeDetectionStrategy, Component, ElementRef, EventEmitter, HostListener, inject, Input, Output } from '@angular/core';
2
- import { CUI_TAB_ACTIVATE } from './tab';
1
+ import { NgTemplateOutlet } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, effect, inject, input } from '@angular/core';
3
+ import { CuiTabsServiceImpl } from './services';
4
+ import { CUI_TABS_SERVICE_TOKEN } from './tabs.options';
3
5
  import * as i0 from "@angular/core";
4
6
  export class CuiTabsComponent {
5
7
  constructor() {
6
- this.element = inject(ElementRef).nativeElement;
7
- this.activeElementClass = '_active';
8
- this.activeItemIndex = 0;
9
- this.activeItemIndexChange = new EventEmitter();
8
+ this.tabsService = inject(CUI_TABS_SERVICE_TOKEN);
9
+ this.tabs = this.tabsService.tabs;
10
+ this.activeTab = this.tabsService.activeTab;
11
+ this.headerSlot = input();
12
+ this.selectedIndex = input(0);
13
+ this.initSelectedTabEffect();
10
14
  }
11
- get tabs() {
12
- return Array.from(this.element.querySelectorAll('[cuiTab]'));
13
- }
14
- get activeElement() {
15
- return this.tabs[this.activeItemIndex] || null;
16
- }
17
- ngAfterViewChecked() {
18
- this.changeActiveItem();
19
- }
20
- onActivate(event) {
21
- event.stopPropagation();
22
- const index = this.tabs.findIndex((tab) => tab === event.target);
23
- if (index === this.activeItemIndex) {
15
+ onSelectTab(event, tab) {
16
+ if (event.defaultPrevented) {
24
17
  return;
25
18
  }
26
- this.activeItemIndexChange.emit(index);
27
- this.activeItemIndex = index;
19
+ this.tabsService.set(tab);
28
20
  }
29
- changeActiveItem() {
30
- this.tabs.forEach(nativeElement => {
31
- const active = nativeElement === this.activeElement;
32
- nativeElement.classList.toggle(this.activeElementClass, active);
33
- });
21
+ initSelectedTabEffect() {
22
+ effect(() => {
23
+ const index = this.selectedIndex();
24
+ const length = this.tabs().length;
25
+ if (index === undefined) {
26
+ return;
27
+ }
28
+ if (!length) {
29
+ throw new Error('No tab selected');
30
+ }
31
+ if (index < 0 || index >= length) {
32
+ throw new Error('Invalid tab index');
33
+ }
34
+ this.tabsService.set(this.tabs()[index]);
35
+ }, { allowSignalWrites: true });
34
36
  }
35
37
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiTabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
36
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CuiTabsComponent, selector: "cui-tabs", inputs: { activeItemIndex: "activeItemIndex" }, outputs: { activeItemIndexChange: "activeItemIndexChange" }, host: { listeners: { "cui-tab-activate": "onActivate($event)" } }, ngImport: i0, template: "<ng-content select=\"[cuiTab]\" />\n", styles: [":host{display:flex;border-radius:8px;gap:32px}:host ::ng-deep>[cuiTab]{padding:8px 12px;font-weight:500;font-size:14px;line-height:20px;color:var(--cui-base-500);border-radius:6px}@media (hover: hover){:host ::ng-deep>[cuiTab]:hover{color:var(--cui-base-900);background:var(--cui-base-50)}}:host ::ng-deep>[cuiTab]:active{color:var(--cui-base-900);background:var(--cui-base-50)}:host ::ng-deep>[cuiTab]._active{color:var(--cui-light-blue-600);background:var(--cui-base-50)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
38
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: CuiTabsComponent, isStandalone: true, selector: "cui-tabs", inputs: { headerSlot: { classPropertyName: "headerSlot", publicName: "headerSlot", isSignal: true, isRequired: false, transformFunction: null }, selectedIndex: { classPropertyName: "selectedIndex", publicName: "selectedIndex", isSignal: true, isRequired: false, transformFunction: null } }, providers: [{ provide: CUI_TABS_SERVICE_TOKEN, useClass: CuiTabsServiceImpl }], ngImport: i0, template: "@if (headerSlot(); as header) {\n <ng-container\n [ngTemplateOutlet]=\"header\"\n [ngTemplateOutletContext]=\"{ $implicit: buttons }\"\n />\n} @else {\n <header class=\"header\">\n <ng-container [ngTemplateOutlet]=\"buttons\" />\n </header>\n}\n\n<ng-template #buttons>\n @for (tab of tabs(); track tab.id) {\n <button\n type=\"button\"\n class=\"button\"\n (click)=\"onSelectTab($event, tab)\"\n >\n <ng-container\n [ngTemplateOutlet]=\"tab.button\"\n [ngTemplateOutletContext]=\"{ $implicit: tab.data, isActive: tab.id === activeTab()?.id }\"\n />\n </button>\n }\n</ng-template>\n\n@if (activeTab()?.content; as content) {\n <ng-container\n [ngTemplateOutlet]=\"content\"\n [ngTemplateOutletContext]=\"{ $implicit: activeTab()?.data }\"\n />\n}\n", styles: [":host{display:flex;flex-direction:column}.header{display:flex}.button{display:contents}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
37
39
  }
38
40
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiTabsComponent, decorators: [{
39
41
  type: Component,
40
- args: [{ selector: 'cui-tabs', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content select=\"[cuiTab]\" />\n", styles: [":host{display:flex;border-radius:8px;gap:32px}:host ::ng-deep>[cuiTab]{padding:8px 12px;font-weight:500;font-size:14px;line-height:20px;color:var(--cui-base-500);border-radius:6px}@media (hover: hover){:host ::ng-deep>[cuiTab]:hover{color:var(--cui-base-900);background:var(--cui-base-50)}}:host ::ng-deep>[cuiTab]:active{color:var(--cui-base-900);background:var(--cui-base-50)}:host ::ng-deep>[cuiTab]._active{color:var(--cui-light-blue-600);background:var(--cui-base-50)}\n"] }]
41
- }], propDecorators: { activeItemIndex: [{
42
- type: Input
43
- }], activeItemIndexChange: [{
44
- type: Output
45
- }], onActivate: [{
46
- type: HostListener,
47
- args: [CUI_TAB_ACTIVATE, ['$event']]
48
- }] } });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFicy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvdGFicy90YWJzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy90YWJzL3RhYnMudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDUCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxPQUFPLENBQUM7O0FBUXpDLE1BQU0sT0FBTyxnQkFBZ0I7SUFON0I7UUFPbUIsWUFBTyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxhQUE0QixDQUFDO1FBRTFELHVCQUFrQixHQUFHLFNBQVMsQ0FBQztRQWV6QyxvQkFBZSxHQUFHLENBQUMsQ0FBQztRQUdYLDBCQUFxQixHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7S0F1QnBFO0lBdkNDLElBQWMsSUFBSTtRQUNoQixPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBYyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFRCxJQUFXLGFBQWE7UUFDdEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxJQUFJLENBQUM7SUFDakQsQ0FBQztJQUVNLGtCQUFrQjtRQUN2QixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBU1MsVUFBVSxDQUFDLEtBQWtCO1FBQ3JDLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUV4QixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxLQUFLLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUVqRSxJQUFJLEtBQUssS0FBSyxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDbkMsT0FBTztRQUNULENBQUM7UUFFRCxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDO0lBQy9CLENBQUM7SUFFTyxnQkFBZ0I7UUFDdEIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLEVBQUU7WUFDaEMsTUFBTSxNQUFNLEdBQUcsYUFBYSxLQUFLLElBQUksQ0FBQyxhQUFhLENBQUM7WUFFcEQsYUFBYSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ2xFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzsrR0EzQ1UsZ0JBQWdCO21HQUFoQixnQkFBZ0IsZ09DcEI3QixzQ0FDQTs7NEZEbUJhLGdCQUFnQjtrQkFONUIsU0FBUzsrQkFDRSxVQUFVLG1CQUdILHVCQUF1QixDQUFDLE1BQU07OEJBb0J4QyxlQUFlO3NCQURyQixLQUFLO2dCQUlVLHFCQUFxQjtzQkFEcEMsTUFBTTtnQkFJRyxVQUFVO3NCQURuQixZQUFZO3VCQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBBZnRlclZpZXdDaGVja2VkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RMaXN0ZW5lcixcbiAgaW5qZWN0LFxuICBJbnB1dCxcbiAgT3V0cHV0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBDVUlfVEFCX0FDVElWQVRFIH0gZnJvbSAnLi90YWInO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjdWktdGFicycsXG4gIHRlbXBsYXRlVXJsOiAnLi90YWJzLnRlbXBsYXRlLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90YWJzLnN0eWxlLnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgQ3VpVGFic0NvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0NoZWNrZWQge1xuICBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnQgPSBpbmplY3QoRWxlbWVudFJlZikubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudDtcblxuICBwcml2YXRlIHJlYWRvbmx5IGFjdGl2ZUVsZW1lbnRDbGFzcyA9ICdfYWN0aXZlJztcblxuICBwcm90ZWN0ZWQgZ2V0IHRhYnMoKTogcmVhZG9ubHkgSFRNTEVsZW1lbnRbXSB7XG4gICAgcmV0dXJuIEFycmF5LmZyb20odGhpcy5lbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGw8SFRNTEVsZW1lbnQ+KCdbY3VpVGFiXScpKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgYWN0aXZlRWxlbWVudCgpOiBIVE1MRWxlbWVudCB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLnRhYnNbdGhpcy5hY3RpdmVJdGVtSW5kZXhdIHx8IG51bGw7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdDaGVja2VkKCk6IHZvaWQge1xuICAgIHRoaXMuY2hhbmdlQWN0aXZlSXRlbSgpO1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIGFjdGl2ZUl0ZW1JbmRleCA9IDA7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBhY3RpdmVJdGVtSW5kZXhDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcblxuICBASG9zdExpc3RlbmVyKENVSV9UQUJfQUNUSVZBVEUsIFsnJGV2ZW50J10pXG4gIHByb3RlY3RlZCBvbkFjdGl2YXRlKGV2ZW50OiBDdXN0b21FdmVudCk6IHZvaWQge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgY29uc3QgaW5kZXggPSB0aGlzLnRhYnMuZmluZEluZGV4KCh0YWIpID0+IHRhYiA9PT0gZXZlbnQudGFyZ2V0KTtcblxuICAgIGlmIChpbmRleCA9PT0gdGhpcy5hY3RpdmVJdGVtSW5kZXgpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLmFjdGl2ZUl0ZW1JbmRleENoYW5nZS5lbWl0KGluZGV4KTtcbiAgICB0aGlzLmFjdGl2ZUl0ZW1JbmRleCA9IGluZGV4O1xuICB9XG5cbiAgcHJpdmF0ZSBjaGFuZ2VBY3RpdmVJdGVtKCk6IHZvaWQge1xuICAgIHRoaXMudGFicy5mb3JFYWNoKG5hdGl2ZUVsZW1lbnQgPT4ge1xuICAgICAgY29uc3QgYWN0aXZlID0gbmF0aXZlRWxlbWVudCA9PT0gdGhpcy5hY3RpdmVFbGVtZW50O1xuXG4gICAgICBuYXRpdmVFbGVtZW50LmNsYXNzTGlzdC50b2dnbGUodGhpcy5hY3RpdmVFbGVtZW50Q2xhc3MsIGFjdGl2ZSk7XG4gICAgfSk7XG4gIH1cbn1cbiIsIjxuZy1jb250ZW50IHNlbGVjdD1cIltjdWlUYWJdXCIgLz5cbiJdfQ==
42
+ args: [{ selector: 'cui-tabs', imports: [NgTemplateOutlet], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, providers: [{ provide: CUI_TABS_SERVICE_TOKEN, useClass: CuiTabsServiceImpl }], template: "@if (headerSlot(); as header) {\n <ng-container\n [ngTemplateOutlet]=\"header\"\n [ngTemplateOutletContext]=\"{ $implicit: buttons }\"\n />\n} @else {\n <header class=\"header\">\n <ng-container [ngTemplateOutlet]=\"buttons\" />\n </header>\n}\n\n<ng-template #buttons>\n @for (tab of tabs(); track tab.id) {\n <button\n type=\"button\"\n class=\"button\"\n (click)=\"onSelectTab($event, tab)\"\n >\n <ng-container\n [ngTemplateOutlet]=\"tab.button\"\n [ngTemplateOutletContext]=\"{ $implicit: tab.data, isActive: tab.id === activeTab()?.id }\"\n />\n </button>\n }\n</ng-template>\n\n@if (activeTab()?.content; as content) {\n <ng-container\n [ngTemplateOutlet]=\"content\"\n [ngTemplateOutletContext]=\"{ $implicit: activeTab()?.data }\"\n />\n}\n", styles: [":host{display:flex;flex-direction:column}.header{display:flex}.button{display:contents}\n"] }]
43
+ }], ctorParameters: () => [] });
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFicy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvdGFicy90YWJzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy90YWJzL3RhYnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFbkQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDaEQsT0FBTyxFQUFFLHNCQUFzQixFQUFzQixNQUFNLGdCQUFnQixDQUFDOztBQVc1RSxNQUFNLE9BQU8sZ0JBQWdCO0lBU3pCO1FBUmlCLGdCQUFXLEdBQUcsTUFBTSxDQUFDLHNCQUFzQixDQUFDLENBQUM7UUFFM0MsU0FBSSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO1FBQzdCLGNBQVMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQztRQUUxQyxlQUFVLEdBQUcsS0FBSyxFQUF3QixDQUFDO1FBQzNDLGtCQUFhLEdBQUcsS0FBSyxDQUFTLENBQUMsQ0FBQyxDQUFDO1FBRzdDLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFUyxXQUFXLENBQUMsS0FBWSxFQUFFLEdBQWtCO1FBQ2xELElBQUksS0FBSyxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDekIsT0FBTztRQUNYLENBQUM7UUFFRCxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRU8scUJBQXFCO1FBQ3pCLE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDUixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDbkMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLE1BQU0sQ0FBQztZQUVsQyxJQUFJLEtBQUssS0FBSyxTQUFTLEVBQUUsQ0FBQztnQkFDdEIsT0FBTztZQUNYLENBQUM7WUFFRCxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7Z0JBQ1YsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1lBQ3ZDLENBQUM7WUFFRCxJQUFJLEtBQUssR0FBRyxDQUFDLElBQUksS0FBSyxJQUFJLE1BQU0sRUFBRSxDQUFDO2dCQUMvQixNQUFNLElBQUksS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7WUFDekMsQ0FBQztZQUVELElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQzdDLENBQUMsRUFBRSxFQUFFLGlCQUFpQixFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDcEMsQ0FBQzsrR0F4Q1EsZ0JBQWdCO21HQUFoQixnQkFBZ0IsMFZBRmQsQ0FBQyxFQUFFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxRQUFRLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQywwQkNkbEYsbzVCQWdDQSxtSkR2QmMsZ0JBQWdCOzs0RkFPakIsZ0JBQWdCO2tCQVQ1QixTQUFTOytCQUNJLFVBQVUsV0FDWCxDQUFDLGdCQUFnQixDQUFDLGNBQ2YsSUFBSSxtQkFHQyx1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDLENBQUMsRUFBRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsUUFBUSxFQUFFLGtCQUFrQixFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB0eXBlIHsgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGVmZmVjdCwgaW5qZWN0LCBpbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBDdWlUYWJzU2VydmljZUltcGwgfSBmcm9tICcuL3NlcnZpY2VzJztcbmltcG9ydCB7IENVSV9UQUJTX1NFUlZJQ0VfVE9LRU4sIHR5cGUgQ3VpVGFiT3B0aW9ucyB9IGZyb20gJy4vdGFicy5vcHRpb25zJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdjdWktdGFicycsXG4gICAgaW1wb3J0czogW05nVGVtcGxhdGVPdXRsZXRdLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgdGVtcGxhdGVVcmw6ICd0YWJzLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybDogJ3RhYnMuY29tcG9uZW50LnNjc3MnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW3sgcHJvdmlkZTogQ1VJX1RBQlNfU0VSVklDRV9UT0tFTiwgdXNlQ2xhc3M6IEN1aVRhYnNTZXJ2aWNlSW1wbCB9XVxufSlcbmV4cG9ydCBjbGFzcyBDdWlUYWJzQ29tcG9uZW50IHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRhYnNTZXJ2aWNlID0gaW5qZWN0KENVSV9UQUJTX1NFUlZJQ0VfVE9LRU4pO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHRhYnMgPSB0aGlzLnRhYnNTZXJ2aWNlLnRhYnM7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGFjdGl2ZVRhYiA9IHRoaXMudGFic1NlcnZpY2UuYWN0aXZlVGFiO1xuXG4gICAgcHVibGljIHJlYWRvbmx5IGhlYWRlclNsb3QgPSBpbnB1dDxUZW1wbGF0ZVJlZjx1bmtub3duPj4oKTtcbiAgICBwdWJsaWMgcmVhZG9ubHkgc2VsZWN0ZWRJbmRleCA9IGlucHV0PG51bWJlcj4oMCk7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgdGhpcy5pbml0U2VsZWN0ZWRUYWJFZmZlY3QoKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgb25TZWxlY3RUYWIoZXZlbnQ6IEV2ZW50LCB0YWI6IEN1aVRhYk9wdGlvbnMpOiB2b2lkIHtcbiAgICAgICAgaWYgKGV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMudGFic1NlcnZpY2Uuc2V0KHRhYik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0U2VsZWN0ZWRUYWJFZmZlY3QoKSB7XG4gICAgICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMuc2VsZWN0ZWRJbmRleCgpO1xuICAgICAgICAgICAgY29uc3QgbGVuZ3RoID0gdGhpcy50YWJzKCkubGVuZ3RoO1xuXG4gICAgICAgICAgICBpZiAoaW5kZXggPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCFsZW5ndGgpIHtcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIHRhYiBzZWxlY3RlZCcpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoaW5kZXggPCAwIHx8IGluZGV4ID49IGxlbmd0aCkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCB0YWIgaW5kZXgnKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy50YWJzU2VydmljZS5zZXQodGhpcy50YWJzKClbaW5kZXhdKTtcbiAgICAgICAgfSwgeyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9KTtcbiAgICB9XG59XG4iLCJAaWYgKGhlYWRlclNsb3QoKTsgYXMgaGVhZGVyKSB7XG4gICAgPG5nLWNvbnRhaW5lclxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJoZWFkZXJcIlxuICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IGJ1dHRvbnMgfVwiXG4gICAgLz5cbn0gQGVsc2Uge1xuICAgIDxoZWFkZXIgY2xhc3M9XCJoZWFkZXJcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJidXR0b25zXCIgLz5cbiAgICA8L2hlYWRlcj5cbn1cblxuPG5nLXRlbXBsYXRlICNidXR0b25zPlxuICAgIEBmb3IgKHRhYiBvZiB0YWJzKCk7IHRyYWNrIHRhYi5pZCkge1xuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIGNsYXNzPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIChjbGljayk9XCJvblNlbGVjdFRhYigkZXZlbnQsIHRhYilcIlxuICAgICAgICA+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwidGFiLmJ1dHRvblwiXG4gICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiB0YWIuZGF0YSwgaXNBY3RpdmU6IHRhYi5pZCA9PT0gYWN0aXZlVGFiKCk/LmlkIH1cIlxuICAgICAgICAgICAgLz5cbiAgICAgICAgPC9idXR0b24+XG4gICAgfVxuPC9uZy10ZW1wbGF0ZT5cblxuQGlmIChhY3RpdmVUYWIoKT8uY29udGVudDsgYXMgY29udGVudCkge1xuICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiY29udGVudFwiXG4gICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogYWN0aXZlVGFiKCk/LmRhdGEgfVwiXG4gICAgLz5cbn1cbiJdfQ==
@@ -0,0 +1,5 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ export const CUI_TABS_SERVICE_TOKEN = new InjectionToken('CUI_TABS_SERVICE');
3
+ export class CuiAbstractTabsService {
4
+ }
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFicy5vcHRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL3RhYnMvdGFicy5vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQTRCLE1BQU0sZUFBZSxDQUFDO0FBR3pFLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLElBQUksY0FBYyxDQUF5QixrQkFBa0IsQ0FBQyxDQUFDO0FBRXJHLE1BQU0sT0FBZ0Isc0JBQXNCO0NBTzNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0aW9uVG9rZW4sIFNpZ25hbCwgdHlwZSBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ3VpTnVsbGFibGUgfSBmcm9tICdAY3VieS11aS9jZGsnO1xuXG5leHBvcnQgY29uc3QgQ1VJX1RBQlNfU0VSVklDRV9UT0tFTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxDdWlBYnN0cmFjdFRhYnNTZXJ2aWNlPignQ1VJX1RBQlNfU0VSVklDRScpO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQ3VpQWJzdHJhY3RUYWJzU2VydmljZSBpbXBsZW1lbnRzIEN1aVRhYnNTZXJ2aWNlIHtcbiAgICByZWFkb25seSBhYnN0cmFjdCB0YWJzOiBTaWduYWw8Q3VpVGFiT3B0aW9uc1tdPjtcbiAgICByZWFkb25seSBhYnN0cmFjdCBhY3RpdmVUYWI6IFNpZ25hbDxDdWlOdWxsYWJsZTxDdWlUYWJPcHRpb25zPj47XG5cbiAgICBhYnN0cmFjdCBzZXQodGFiOiBDdWlUYWJPcHRpb25zKTogdm9pZDtcbiAgICBhYnN0cmFjdCBhZGRUYWIodGFiOiBDdWlUYWJPcHRpb25zKTogdm9pZDtcbiAgICBhYnN0cmFjdCByZW1vdmVUYWIodGFiSWQ6IHN0cmluZyk6IHZvaWQ7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3VpVGFic1NlcnZpY2Uge1xuICAgIHNldCh0YWI6IEN1aVRhYk9wdGlvbnMpOiB2b2lkO1xuICAgIGFkZFRhYih0YWI6IEN1aVRhYk9wdGlvbnMpOiB2b2lkO1xuICAgIHJlbW92ZVRhYih0YWJJZDogc3RyaW5nKTogdm9pZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDdWlUYWJPcHRpb25zIHtcbiAgICByZWFkb25seSBpZDogc3RyaW5nO1xuICAgIHJlYWRvbmx5IGJ1dHRvbjogVGVtcGxhdGVSZWY8dW5rbm93bj47XG4gICAgcmVhZG9ubHkgY29udGVudDogVGVtcGxhdGVSZWY8dW5rbm93bj47XG4gICAgcmVhZG9ubHkgZGF0YT86IHVua25vd247XG59XG4iXX0=
@@ -7,5 +7,7 @@ export { CuiCriterionReadonlyInfoComponent } from './criterion-readonly-info';
7
7
  export { CuiCriterionInfoComponent } from './criterion-info';
8
8
  export { CuiInstructionInfoComponent } from './instruction-info';
9
9
  export { CuiGeneralControlErrorHintComponent } from './general-control-error-hint';
10
+ export * from './select-modal';
11
+ export * from './storage-list';
10
12
  export * from './utility-modal';
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQzlDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNsRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNsRixPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM5RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRixjQUFjLGlCQUFpQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgQ3VpTG9hZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9sb2FkZXInO1xuZXhwb3J0IHsgQ3VpRGVsZXRlTW9kYWxDb21wb25lbnQgfSBmcm9tICcuL2RlbGV0ZS1tb2RhbCc7XG5leHBvcnQgeyBDdWlDYXRlZ29yaWVzQ29tcG9uZW50LCBDdWlTZWxlY3RlZENhdGVnb3J5U2VydmljZSB9IGZyb20gJy4vY2F0ZWdvcmllcyc7XG5leHBvcnQgeyBDdWlDaGVja2xpc3RCbG9ja0NvbXBvbmVudCB9IGZyb20gJy4vY2hlY2tsaXN0LWJsb2NrJztcbmV4cG9ydCB7IEN1aUluc3RydWN0aW9uUmVhZG9ubHlJbmZvQ29tcG9uZW50IH0gZnJvbSAnLi9pbnN0cnVjdGlvbi1yZWFkb25seS1pbmZvJztcbmV4cG9ydCB7IEN1aUNyaXRlcmlvblJlYWRvbmx5SW5mb0NvbXBvbmVudCB9IGZyb20gJy4vY3JpdGVyaW9uLXJlYWRvbmx5LWluZm8nO1xuZXhwb3J0IHsgQ3VpQ3JpdGVyaW9uSW5mb0NvbXBvbmVudCB9IGZyb20gJy4vY3JpdGVyaW9uLWluZm8nO1xuZXhwb3J0IHsgQ3VpSW5zdHJ1Y3Rpb25JbmZvQ29tcG9uZW50IH0gZnJvbSAnLi9pbnN0cnVjdGlvbi1pbmZvJztcbmV4cG9ydCB7IEN1aUdlbmVyYWxDb250cm9sRXJyb3JIaW50Q29tcG9uZW50IH0gZnJvbSAnLi9nZW5lcmFsLWNvbnRyb2wtZXJyb3ItaGludCc7XG5leHBvcnQgKiBmcm9tICcuL3V0aWxpdHktbW9kYWwnO1xuIl19
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQzlDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUNsRixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNsRixPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM5RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNqRSxPQUFPLEVBQUUsbUNBQW1DLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IEN1aUxvYWRlckNvbXBvbmVudCB9IGZyb20gJy4vbG9hZGVyJztcbmV4cG9ydCB7IEN1aURlbGV0ZU1vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi9kZWxldGUtbW9kYWwnO1xuZXhwb3J0IHsgQ3VpQ2F0ZWdvcmllc0NvbXBvbmVudCwgQ3VpU2VsZWN0ZWRDYXRlZ29yeVNlcnZpY2UgfSBmcm9tICcuL2NhdGVnb3JpZXMnO1xuZXhwb3J0IHsgQ3VpQ2hlY2tsaXN0QmxvY2tDb21wb25lbnQgfSBmcm9tICcuL2NoZWNrbGlzdC1ibG9jayc7XG5leHBvcnQgeyBDdWlJbnN0cnVjdGlvblJlYWRvbmx5SW5mb0NvbXBvbmVudCB9IGZyb20gJy4vaW5zdHJ1Y3Rpb24tcmVhZG9ubHktaW5mbyc7XG5leHBvcnQgeyBDdWlDcml0ZXJpb25SZWFkb25seUluZm9Db21wb25lbnQgfSBmcm9tICcuL2NyaXRlcmlvbi1yZWFkb25seS1pbmZvJztcbmV4cG9ydCB7IEN1aUNyaXRlcmlvbkluZm9Db21wb25lbnQgfSBmcm9tICcuL2NyaXRlcmlvbi1pbmZvJztcbmV4cG9ydCB7IEN1aUluc3RydWN0aW9uSW5mb0NvbXBvbmVudCB9IGZyb20gJy4vaW5zdHJ1Y3Rpb24taW5mbyc7XG5leHBvcnQgeyBDdWlHZW5lcmFsQ29udHJvbEVycm9ySGludENvbXBvbmVudCB9IGZyb20gJy4vZ2VuZXJhbC1jb250cm9sLWVycm9yLWhpbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9zZWxlY3QtbW9kYWwnO1xuZXhwb3J0ICogZnJvbSAnLi9zdG9yYWdlLWxpc3QnO1xuZXhwb3J0ICogZnJvbSAnLi91dGlsaXR5LW1vZGFsJztcbiJdfQ==
@@ -0,0 +1,3 @@
1
+ export { CuiSelectModalFolderComponent } from './select-modal-folder';
2
+ export { CuiSelectModalSearchComponent } from './select-modal-search';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvc2VsZWN0LW1vZGFsL2NvbXBvbmVudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDdEUsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBDdWlTZWxlY3RNb2RhbEZvbGRlckNvbXBvbmVudCB9IGZyb20gJy4vc2VsZWN0LW1vZGFsLWZvbGRlcic7XG5leHBvcnQgeyBDdWlTZWxlY3RNb2RhbFNlYXJjaENvbXBvbmVudCB9IGZyb20gJy4vc2VsZWN0LW1vZGFsLXNlYXJjaCc7XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export { CuiSelectModalFolderComponent } from './select-modal-folder.component';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvc2VsZWN0LW1vZGFsL2NvbXBvbmVudHMvc2VsZWN0LW1vZGFsLWZvbGRlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IEN1aVNlbGVjdE1vZGFsRm9sZGVyQ29tcG9uZW50IH0gZnJvbSAnLi9zZWxlY3QtbW9kYWwtZm9sZGVyLmNvbXBvbmVudCc7XG4iXX0=
@@ -0,0 +1,21 @@
1
+ import { NgTemplateOutlet } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';
3
+ import { CuiCardWrapperComponent } from '../../../../components/card-wrapper';
4
+ import { CuiSvgModule } from '../../../../components/svg';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../../../../components/svg/svg.component";
7
+ export class CuiSelectModalFolderComponent {
8
+ constructor() {
9
+ this.icon = computed(() => (this.isOpen() ? 'cuiIconFolderOpen' : 'cuiIconFolder'));
10
+ this.title = input.required();
11
+ this.buttonSlot = input.required();
12
+ this.isOpen = input(false);
13
+ }
14
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiSelectModalFolderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
15
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: CuiSelectModalFolderComponent, isStandalone: true, selector: "cui-select-modal-folder", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: true, transformFunction: null }, buttonSlot: { classPropertyName: "buttonSlot", publicName: "buttonSlot", isSignal: true, isRequired: true, transformFunction: null }, isOpen: { classPropertyName: "isOpen", publicName: "isOpen", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<cui-card-wrapper class=\"wrapper\">\n <ng-container [ngTemplateOutlet]=\"buttonSlot()\" />\n\n <cui-svg\n [icon]=\"icon()\"\n class=\"icon\"\n />\n\n <span class=\"title\">{{ title() }}</span>\n</cui-card-wrapper>\n", styles: [":host{--border-color: var(--cui-base-200);--padding-horizontal: 8px;--padding-vertical: 8px}:host .wrapper{--border: var(--border-color);padding:var(--padding-vertical) var(--padding-horizontal)}.title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.icon{padding:2px}\n"], dependencies: [{ kind: "ngmodule", type: CuiSvgModule }, { kind: "component", type: i1.CuiSvgComponent, selector: "cui-svg[icon]", inputs: ["width", "height", "strokeWidth", "color", "icon"] }, { kind: "component", type: CuiCardWrapperComponent, selector: "cui-card-wrapper, [cuiCardWrapper]", inputs: ["withBorder"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
16
+ }
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiSelectModalFolderComponent, decorators: [{
18
+ type: Component,
19
+ args: [{ selector: 'cui-select-modal-folder', imports: [CuiSvgModule, CuiCardWrapperComponent, NgTemplateOutlet], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<cui-card-wrapper class=\"wrapper\">\n <ng-container [ngTemplateOutlet]=\"buttonSlot()\" />\n\n <cui-svg\n [icon]=\"icon()\"\n class=\"icon\"\n />\n\n <span class=\"title\">{{ title() }}</span>\n</cui-card-wrapper>\n", styles: [":host{--border-color: var(--cui-base-200);--padding-horizontal: 8px;--padding-vertical: 8px}:host .wrapper{--border: var(--border-color);padding:var(--padding-vertical) var(--padding-horizontal)}.title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.icon{padding:2px}\n"] }]
20
+ }] });
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LW1vZGFsLWZvbGRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvc2VsZWN0LW1vZGFsL2NvbXBvbmVudHMvc2VsZWN0LW1vZGFsLWZvbGRlci9zZWxlY3QtbW9kYWwtZm9sZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvd2lkZ2V0cy9zZWxlY3QtbW9kYWwvY29tcG9uZW50cy9zZWxlY3QtbW9kYWwtZm9sZGVyL3NlbGVjdC1tb2RhbC1mb2xkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFbkQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXBGLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7O0FBVTFELE1BQU0sT0FBTyw2QkFBNkI7SUFSMUM7UUFTdUIsU0FBSSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUM7UUFFbEYsVUFBSyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQVUsQ0FBQztRQUNqQyxlQUFVLEdBQUcsS0FBSyxDQUFDLFFBQVEsRUFBd0IsQ0FBQztRQUNwRCxXQUFNLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0tBQ3pDOytHQU5ZLDZCQUE2QjttR0FBN0IsNkJBQTZCLHVkQ2YxQyxvUEFVQSxpVkREYyxZQUFZLHdLQUFFLHVCQUF1Qix1R0FBRSxnQkFBZ0I7OzRGQU14RCw2QkFBNkI7a0JBUnpDLFNBQVM7K0JBQ0kseUJBQXlCLFdBQzFCLENBQUMsWUFBWSxFQUFFLHVCQUF1QixFQUFFLGdCQUFnQixDQUFDLGNBR3RELElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHR5cGUgeyBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgY29tcHV0ZWQsIGlucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEN1aUNhcmRXcmFwcGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tcG9uZW50cy9jYXJkLXdyYXBwZXInO1xuaW1wb3J0IHsgQ3VpU3ZnTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29tcG9uZW50cy9zdmcnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2N1aS1zZWxlY3QtbW9kYWwtZm9sZGVyJyxcbiAgICBpbXBvcnRzOiBbQ3VpU3ZnTW9kdWxlLCBDdWlDYXJkV3JhcHBlckNvbXBvbmVudCwgTmdUZW1wbGF0ZU91dGxldF0sXG4gICAgdGVtcGxhdGVVcmw6ICdzZWxlY3QtbW9kYWwtZm9sZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybDogJ3NlbGVjdC1tb2RhbC1mb2xkZXIuY29tcG9uZW50LnNjc3MnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgQ3VpU2VsZWN0TW9kYWxGb2xkZXJDb21wb25lbnQge1xuICAgIHByb3RlY3RlZCByZWFkb25seSBpY29uID0gY29tcHV0ZWQoKCkgPT4gKHRoaXMuaXNPcGVuKCkgPyAnY3VpSWNvbkZvbGRlck9wZW4nIDogJ2N1aUljb25Gb2xkZXInKSk7XG5cbiAgICBwdWJsaWMgcmVhZG9ubHkgdGl0bGUgPSBpbnB1dC5yZXF1aXJlZDxzdHJpbmc+KCk7XG4gICAgcHVibGljIHJlYWRvbmx5IGJ1dHRvblNsb3QgPSBpbnB1dC5yZXF1aXJlZDxUZW1wbGF0ZVJlZjx1bmtub3duPj4oKTtcbiAgICBwdWJsaWMgcmVhZG9ubHkgaXNPcGVuID0gaW5wdXQoZmFsc2UpO1xufVxuIiwiPGN1aS1jYXJkLXdyYXBwZXIgY2xhc3M9XCJ3cmFwcGVyXCI+XG4gICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJidXR0b25TbG90KClcIiAvPlxuXG4gICAgPGN1aS1zdmdcbiAgICAgICAgW2ljb25dPVwiaWNvbigpXCJcbiAgICAgICAgY2xhc3M9XCJpY29uXCJcbiAgICAvPlxuXG4gICAgPHNwYW4gY2xhc3M9XCJ0aXRsZVwiPnt7IHRpdGxlKCkgfX08L3NwYW4+XG48L2N1aS1jYXJkLXdyYXBwZXI+XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export { CuiSelectModalSearchComponent } from './select-modal-search.component';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvc2VsZWN0LW1vZGFsL2NvbXBvbmVudHMvc2VsZWN0LW1vZGFsLXNlYXJjaC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IEN1aVNlbGVjdE1vZGFsU2VhcmNoQ29tcG9uZW50IH0gZnJvbSAnLi9zZWxlY3QtbW9kYWwtc2VhcmNoLmNvbXBvbmVudCc7XG4iXX0=
@@ -0,0 +1,22 @@
1
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
2
+ import { FormControl, ReactiveFormsModule } from '@angular/forms';
3
+ import { CuiIconButtonModule } from '../../../../components/icon-button';
4
+ import { CuiInputModule } from '../../../../components/input-text';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../../../../components/input-text/input-text.component";
7
+ import * as i2 from "../../../../directives/text-field-controller/text-field-icon-left.directive";
8
+ import * as i3 from "../../../../directives/text-field-controller/text-field-placeholder.directive";
9
+ import * as i4 from "../../../../components/icon-button/icon-button.component";
10
+ import * as i5 from "@angular/forms";
11
+ export class CuiSelectModalSearchComponent {
12
+ constructor() {
13
+ this.searchControl = new FormControl('');
14
+ }
15
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiSelectModalSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
16
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CuiSelectModalSearchComponent, isStandalone: true, selector: "cui-select-modal-search", ngImport: i0, template: "<cui-input-text\n cuiTextFieldPlaceholder=\"Search...\"\n cuiTextFieldIconLeft=\"cuiIconSearch\"\n [formControl]=\"searchControl\"\n class=\"search\"\n/>\n<button\n class=\"filters\"\n type=\"button\"\n cuiIconButton\n icon=\"cuiIconFiltersLines\"\n></button>\n", styles: [":host{padding-right:15px;display:flex;align-items:center;gap:4px}.search{width:100%}.filters{padding:4px;width:auto;height:auto}\n"], dependencies: [{ kind: "ngmodule", type: CuiInputModule }, { kind: "component", type: i1.CuiInputTextComponent, selector: "cui-input-text" }, { kind: "directive", type: i2.CuiTextFieldIconLeftDirective, selector: "[cuiTextFieldIconLeft]", inputs: ["cuiTextFieldIconLeft"] }, { kind: "directive", type: i3.CuiTextFieldPlaceholderDirective, selector: "[cuiTextFieldPlaceholder]", inputs: ["cuiTextFieldPlaceholder"] }, { kind: "ngmodule", type: CuiIconButtonModule }, { kind: "component", type: i4.CuiIconButtonComponent, selector: "button[cuiIconButton][icon], a[cuiIconButton][icon]", inputs: ["icon", "color", "hoverColor"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
17
+ }
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiSelectModalSearchComponent, decorators: [{
19
+ type: Component,
20
+ args: [{ selector: 'cui-select-modal-search', imports: [CuiInputModule, CuiIconButtonModule, ReactiveFormsModule], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<cui-input-text\n cuiTextFieldPlaceholder=\"Search...\"\n cuiTextFieldIconLeft=\"cuiIconSearch\"\n [formControl]=\"searchControl\"\n class=\"search\"\n/>\n<button\n class=\"filters\"\n type=\"button\"\n cuiIconButton\n icon=\"cuiIconFiltersLines\"\n></button>\n", styles: [":host{padding-right:15px;display:flex;align-items:center;gap:4px}.search{width:100%}.filters{padding:4px;width:auto;height:auto}\n"] }]
21
+ }] });
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LW1vZGFsLXNlYXJjaC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvc2VsZWN0LW1vZGFsL2NvbXBvbmVudHMvc2VsZWN0LW1vZGFsLXNlYXJjaC9zZWxlY3QtbW9kYWwtc2VhcmNoLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvd2lkZ2V0cy9zZWxlY3QtbW9kYWwvY29tcG9uZW50cy9zZWxlY3QtbW9kYWwtc2VhcmNoL3NlbGVjdC1tb2RhbC1zZWFyY2guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRSxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDekUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7Ozs7O0FBVW5FLE1BQU0sT0FBTyw2QkFBNkI7SUFSMUM7UUFTdUIsa0JBQWEsR0FBRyxJQUFJLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztLQUMxRDsrR0FGWSw2QkFBNkI7bUdBQTdCLDZCQUE2QixtRkNkMUMsK1JBWUEsMkxESmMsY0FBYyxvWUFBRSxtQkFBbUIsZ01BQUUsbUJBQW1COzs0RkFNekQsNkJBQTZCO2tCQVJ6QyxTQUFTOytCQUNJLHlCQUF5QixXQUMxQixDQUFDLGNBQWMsRUFBRSxtQkFBbUIsRUFBRSxtQkFBbUIsQ0FBQyxjQUd2RCxJQUFJLG1CQUNDLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgQ3VpSWNvbkJ1dHRvbk1vZHVsZSB9IGZyb20gJy4uLy4uLy4uLy4uL2NvbXBvbmVudHMvaWNvbi1idXR0b24nO1xuaW1wb3J0IHsgQ3VpSW5wdXRNb2R1bGUgfSBmcm9tICcuLi8uLi8uLi8uLi9jb21wb25lbnRzL2lucHV0LXRleHQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2N1aS1zZWxlY3QtbW9kYWwtc2VhcmNoJyxcbiAgICBpbXBvcnRzOiBbQ3VpSW5wdXRNb2R1bGUsIEN1aUljb25CdXR0b25Nb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGVdLFxuICAgIHRlbXBsYXRlVXJsOiAnc2VsZWN0LW1vZGFsLXNlYXJjaC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmw6ICdzZWxlY3QtbW9kYWwtc2VhcmNoLmNvbXBvbmVudC5zY3NzJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEN1aVNlbGVjdE1vZGFsU2VhcmNoQ29tcG9uZW50IHtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgc2VhcmNoQ29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCgnJyk7XG59XG4iLCI8Y3VpLWlucHV0LXRleHRcbiAgICBjdWlUZXh0RmllbGRQbGFjZWhvbGRlcj1cIlNlYXJjaC4uLlwiXG4gICAgY3VpVGV4dEZpZWxkSWNvbkxlZnQ9XCJjdWlJY29uU2VhcmNoXCJcbiAgICBbZm9ybUNvbnRyb2xdPVwic2VhcmNoQ29udHJvbFwiXG4gICAgY2xhc3M9XCJzZWFyY2hcIlxuLz5cbjxidXR0b25cbiAgICBjbGFzcz1cImZpbHRlcnNcIlxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIGN1aUljb25CdXR0b25cbiAgICBpY29uPVwiY3VpSWNvbkZpbHRlcnNMaW5lc1wiXG4+PC9idXR0b24+XG4iXX0=
@@ -0,0 +1,4 @@
1
+ export * from './components';
2
+ export { CuiSelectModalComponent } from './select-modal.component';
3
+ export { CuiSelectModalService } from './select-modal.service';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvc2VsZWN0LW1vZGFsL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsY0FBYyxDQUFDO0FBQzdCLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ25FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jb21wb25lbnRzJztcbmV4cG9ydCB7IEN1aVNlbGVjdE1vZGFsQ29tcG9uZW50IH0gZnJvbSAnLi9zZWxlY3QtbW9kYWwuY29tcG9uZW50JztcbmV4cG9ydCB7IEN1aVNlbGVjdE1vZGFsU2VydmljZSB9IGZyb20gJy4vc2VsZWN0LW1vZGFsLnNlcnZpY2UnO1xuIl19
@@ -0,0 +1,35 @@
1
+ import { NgComponentOutlet } from '@angular/common';
2
+ import { ChangeDetectionStrategy, Component, inject } from '@angular/core';
3
+ import { TranslocoDirective } from '@jsverse/transloco';
4
+ import { CUI_DIALOG_CONTEXT, CuiDialogModule } from '../../components/dialog';
5
+ import { CuiButtonModule } from '../../components/button';
6
+ import { CuiIconButtonModule } from '../../components/icon-button';
7
+ import { CuiInputModule } from '../../components/input-text';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "../../components/dialog/dialog-header/dialog-header.component";
10
+ export class CuiSelectModalComponent {
11
+ constructor() {
12
+ this.context = inject(CUI_DIALOG_CONTEXT);
13
+ this.data = this.context.data;
14
+ this.heading = this.data.heading;
15
+ this.leftData = this.data.leftData;
16
+ this.rightData = this.data.rightData;
17
+ }
18
+ onCancel() {
19
+ this.context.completeWith();
20
+ }
21
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiSelectModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
22
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: CuiSelectModalComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: "<ng-container *transloco=\"let t\">\n <div class=\"content\">\n <header\n class=\"header\"\n cuiDialogHeader\n [heading]=\"heading\"\n (closed)=\"onCancel()\"\n ></header>\n <div class=\"wrapper\">\n <div class=\"left-block\">\n @if (leftData) {\n <ng-container\n [ngComponentOutlet]=\"leftData.component\"\n [ngComponentOutletInputs]=\"leftData.inputs\"\n />\n }\n </div>\n <div class=\"right-block\">\n @if (rightData) {\n <ng-container\n [ngComponentOutlet]=\"rightData.component\"\n [ngComponentOutletInputs]=\"rightData.inputs\"\n />\n }\n </div>\n </div>\n </div>\n</ng-container>\n", styles: [".header{padding-right:16px;padding-left:16px}.content{display:flex;flex-direction:column;height:calc(100vh - 180px)}.wrapper{display:flex;flex-direction:row;flex-grow:1;border-top:1px solid var(--cui-base-200);width:100%;min-height:400px;overflow-y:hidden}.left-block{padding-left:16px;padding-top:19px;flex-shrink:0;display:flex;flex-direction:column;gap:16px;width:50%;border-right:1px solid var(--cui-base-200)}.right-block{position:relative;width:50%;overflow:hidden}.right-block__head{padding:16px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--cui-base-200)}.right-block__title{font-weight:500;font-size:14px;line-height:20px;overflow:hidden;text-overflow:ellipsis;text-wrap:nowrap}.right-block__subtitle{font-weight:400;font-size:14px;line-height:20px;margin-bottom:16px;text-transform:uppercase;color:var(--cui-base-500)}\n"], dependencies: [{ kind: "ngmodule", type: CuiButtonModule }, { kind: "ngmodule", type: CuiDialogModule }, { kind: "component", type: i1.CuiDialogHeaderComponent, selector: "header[cuiDialogHeader][heading]", inputs: ["heading", "headingContext", "subheading"], outputs: ["closed"] }, { kind: "ngmodule", type: CuiIconButtonModule }, { kind: "ngmodule", type: CuiInputModule }, { kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "directive", type: TranslocoDirective, selector: "[transloco]", inputs: ["transloco", "translocoParams", "translocoScope", "translocoRead", "translocoPrefix", "translocoLang", "translocoLoadingTpl"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
23
+ }
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiSelectModalComponent, decorators: [{
25
+ type: Component,
26
+ args: [{ imports: [
27
+ CuiButtonModule,
28
+ CuiDialogModule,
29
+ CuiIconButtonModule,
30
+ CuiInputModule,
31
+ NgComponentOutlet,
32
+ TranslocoDirective
33
+ ], standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *transloco=\"let t\">\n <div class=\"content\">\n <header\n class=\"header\"\n cuiDialogHeader\n [heading]=\"heading\"\n (closed)=\"onCancel()\"\n ></header>\n <div class=\"wrapper\">\n <div class=\"left-block\">\n @if (leftData) {\n <ng-container\n [ngComponentOutlet]=\"leftData.component\"\n [ngComponentOutletInputs]=\"leftData.inputs\"\n />\n }\n </div>\n <div class=\"right-block\">\n @if (rightData) {\n <ng-container\n [ngComponentOutlet]=\"rightData.component\"\n [ngComponentOutletInputs]=\"rightData.inputs\"\n />\n }\n </div>\n </div>\n </div>\n</ng-container>\n", styles: [".header{padding-right:16px;padding-left:16px}.content{display:flex;flex-direction:column;height:calc(100vh - 180px)}.wrapper{display:flex;flex-direction:row;flex-grow:1;border-top:1px solid var(--cui-base-200);width:100%;min-height:400px;overflow-y:hidden}.left-block{padding-left:16px;padding-top:19px;flex-shrink:0;display:flex;flex-direction:column;gap:16px;width:50%;border-right:1px solid var(--cui-base-200)}.right-block{position:relative;width:50%;overflow:hidden}.right-block__head{padding:16px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--cui-base-200)}.right-block__title{font-weight:500;font-size:14px;line-height:20px;overflow:hidden;text-overflow:ellipsis;text-wrap:nowrap}.right-block__subtitle{font-weight:400;font-size:14px;line-height:20px;margin-bottom:16px;text-transform:uppercase;color:var(--cui-base-500)}\n"] }]
34
+ }] });
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LW1vZGFsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvd2lkZ2V0cy9zZWxlY3QtbW9kYWwvc2VsZWN0LW1vZGFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvd2lkZ2V0cy9zZWxlY3QtbW9kYWwvc2VsZWN0LW1vZGFsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBS3hELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxlQUFlLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM5RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDMUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDZCQUE2QixDQUFDOzs7QUFnQjdELE1BQU0sT0FBTyx1QkFBdUI7SUFkcEM7UUFldUIsWUFBTyxHQUFHLE1BQU0sQ0FBNkMsa0JBQWtCLENBQUMsQ0FBQztRQUVuRixTQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7UUFDdkIsWUFBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQzVCLGFBQVEsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUM5QixjQUFTLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7S0FLdEQ7SUFIYSxRQUFRO1FBQ2QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNoQyxDQUFDOytHQVZRLHVCQUF1QjttR0FBdkIsdUJBQXVCLHdFQzFCcEMsNDZCQTRCQSxxNkJEZFEsZUFBZSw4QkFDZixlQUFlLGdOQUNmLG1CQUFtQiw4QkFDbkIsY0FBYywrQkFDZCxpQkFBaUIsb1BBQ2pCLGtCQUFrQjs7NEZBT2IsdUJBQXVCO2tCQWRuQyxTQUFTOzhCQUNHO3dCQUNMLGVBQWU7d0JBQ2YsZUFBZTt3QkFDZixtQkFBbUI7d0JBQ25CLGNBQWM7d0JBQ2QsaUJBQWlCO3dCQUNqQixrQkFBa0I7cUJBQ3JCLGNBR1csSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdDb21wb25lbnRPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUcmFuc2xvY29EaXJlY3RpdmUgfSBmcm9tICdAanN2ZXJzZS90cmFuc2xvY28nO1xuXG5pbXBvcnQgdHlwZSB7IEN1aVNlbGVjdE1vZGFsRGlhbG9nRGF0YSB9IGZyb20gJy4vc2VsZWN0LW1vZGFsLmludGVyZmFjZXMnO1xuXG5pbXBvcnQgdHlwZSB7IEN1aURpYWxvZ0NvbnRleHQgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL2RpYWxvZyc7XG5pbXBvcnQgeyBDVUlfRElBTE9HX0NPTlRFWFQsIEN1aURpYWxvZ01vZHVsZSB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvZGlhbG9nJztcbmltcG9ydCB7IEN1aUJ1dHRvbk1vZHVsZSB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7IEN1aUljb25CdXR0b25Nb2R1bGUgfSBmcm9tICcuLi8uLi9jb21wb25lbnRzL2ljb24tYnV0dG9uJztcbmltcG9ydCB7IEN1aUlucHV0TW9kdWxlIH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9pbnB1dC10ZXh0JztcblxuQENvbXBvbmVudCh7XG4gICAgaW1wb3J0czogW1xuICAgICAgICBDdWlCdXR0b25Nb2R1bGUsXG4gICAgICAgIEN1aURpYWxvZ01vZHVsZSxcbiAgICAgICAgQ3VpSWNvbkJ1dHRvbk1vZHVsZSxcbiAgICAgICAgQ3VpSW5wdXRNb2R1bGUsXG4gICAgICAgIE5nQ29tcG9uZW50T3V0bGV0LFxuICAgICAgICBUcmFuc2xvY29EaXJlY3RpdmVcbiAgICBdLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zZWxlY3QtbW9kYWwuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsOiAnLi9zZWxlY3QtbW9kYWwuY29tcG9uZW50LnNjc3MnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgQ3VpU2VsZWN0TW9kYWxDb21wb25lbnQge1xuICAgIHByb3RlY3RlZCByZWFkb25seSBjb250ZXh0ID0gaW5qZWN0PEN1aURpYWxvZ0NvbnRleHQ8Q3VpU2VsZWN0TW9kYWxEaWFsb2dEYXRhPj4oQ1VJX0RJQUxPR19DT05URVhUKTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGF0YSA9IHRoaXMuY29udGV4dC5kYXRhO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBoZWFkaW5nID0gdGhpcy5kYXRhLmhlYWRpbmc7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGxlZnREYXRhID0gdGhpcy5kYXRhLmxlZnREYXRhO1xuICAgIHByb3RlY3RlZCByZWFkb25seSByaWdodERhdGEgPSB0aGlzLmRhdGEucmlnaHREYXRhO1xuXG4gICAgcHJvdGVjdGVkIG9uQ2FuY2VsKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbnRleHQuY29tcGxldGVXaXRoKCk7XG4gICAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqdHJhbnNsb2NvPVwibGV0IHRcIj5cbiAgICA8ZGl2IGNsYXNzPVwiY29udGVudFwiPlxuICAgICAgICA8aGVhZGVyXG4gICAgICAgICAgICBjbGFzcz1cImhlYWRlclwiXG4gICAgICAgICAgICBjdWlEaWFsb2dIZWFkZXJcbiAgICAgICAgICAgIFtoZWFkaW5nXT1cImhlYWRpbmdcIlxuICAgICAgICAgICAgKGNsb3NlZCk9XCJvbkNhbmNlbCgpXCJcbiAgICAgICAgPjwvaGVhZGVyPlxuICAgICAgICA8ZGl2IGNsYXNzPVwid3JhcHBlclwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxlZnQtYmxvY2tcIj5cbiAgICAgICAgICAgICAgICBAaWYgKGxlZnREYXRhKSB7XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtuZ0NvbXBvbmVudE91dGxldF09XCJsZWZ0RGF0YS5jb21wb25lbnRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW25nQ29tcG9uZW50T3V0bGV0SW5wdXRzXT1cImxlZnREYXRhLmlucHV0c1wiXG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicmlnaHQtYmxvY2tcIj5cbiAgICAgICAgICAgICAgICBAaWYgKHJpZ2h0RGF0YSkge1xuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICAgICBbbmdDb21wb25lbnRPdXRsZXRdPVwicmlnaHREYXRhLmNvbXBvbmVudFwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbmdDb21wb25lbnRPdXRsZXRJbnB1dHNdPVwicmlnaHREYXRhLmlucHV0c1wiXG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9uZy1jb250YWluZXI+XG4iXX0=
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LW1vZGFsLmludGVyZmFjZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvc2VsZWN0LW1vZGFsL3NlbGVjdC1tb2RhbC5pbnRlcmZhY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGludGVyZmFjZSBDdWlTZWxlY3RNb2RhbERpYWxvZ0RhdGEge1xuICAgIHJlYWRvbmx5IGhlYWRpbmc6IHN0cmluZztcbiAgICByZWFkb25seSBsZWZ0RGF0YTogQ3VpU2VsZWN0TW9kYWxDb21wb25lbnREYXRhO1xuICAgIHJlYWRvbmx5IHJpZ2h0RGF0YTogQ3VpU2VsZWN0TW9kYWxDb21wb25lbnREYXRhO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEN1aVNlbGVjdE1vZGFsQ29tcG9uZW50RGF0YSB7XG4gICAgcmVhZG9ubHkgY29tcG9uZW50OiBUeXBlPHVua25vd24+O1xuICAgIHJlYWRvbmx5IGlucHV0cz86IHsgW2tleTogc3RyaW5nXTogdW5rbm93biB9O1xufVxuXG5leHBvcnQgdHlwZSBDdWlTZWxlY3RNb2RhbEVsZW1lbnQgPSB7IGlkOiBzdHJpbmcgfTtcbiJdfQ==
@@ -0,0 +1,23 @@
1
+ import { Injectable, signal } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class CuiSelectModalService {
4
+ constructor() {
5
+ this.selectedElementSignal = signal(null);
6
+ this.selectedElement = this.selectedElementSignal.asReadonly();
7
+ }
8
+ getSelectedData() {
9
+ return this.selectedElementSignal.asReadonly();
10
+ }
11
+ set(element) {
12
+ this.selectedElementSignal.set(element);
13
+ }
14
+ delete() {
15
+ this.selectedElementSignal.set(null);
16
+ }
17
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiSelectModalService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
18
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiSelectModalService }); }
19
+ }
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CuiSelectModalService, decorators: [{
21
+ type: Injectable
22
+ }] });
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LW1vZGFsLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvc2VsZWN0LW1vZGFsL3NlbGVjdC1tb2RhbC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU1uRCxNQUFNLE9BQU8scUJBQXFCO0lBRGxDO1FBRXFCLDBCQUFxQixHQUFHLE1BQU0sQ0FBcUMsSUFBSSxDQUFDLENBQUM7UUFFMUUsb0JBQWUsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsVUFBVSxFQUFFLENBQUM7S0FhN0U7SUFYVSxlQUFlO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLHFCQUFxQixDQUFDLFVBQVUsRUFBNEIsQ0FBQztJQUM3RSxDQUFDO0lBRU0sR0FBRyxDQUFDLE9BQThCO1FBQ3JDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVNLE1BQU07UUFDVCxJQUFJLENBQUMscUJBQXFCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pDLENBQUM7K0dBZlEscUJBQXFCO21IQUFyQixxQkFBcUI7OzRGQUFyQixxQkFBcUI7a0JBRGpDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IFNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgdHlwZSB7IEN1aU51bGxhYmxlIH0gZnJvbSAnQGN1YnktdWkvY2RrJztcblxuaW1wb3J0IHR5cGUgeyBDdWlTZWxlY3RNb2RhbEVsZW1lbnQgfSBmcm9tICcuL3NlbGVjdC1tb2RhbC5pbnRlcmZhY2VzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEN1aVNlbGVjdE1vZGFsU2VydmljZSB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBzZWxlY3RlZEVsZW1lbnRTaWduYWwgPSBzaWduYWw8Q3VpTnVsbGFibGU8Q3VpU2VsZWN0TW9kYWxFbGVtZW50Pj4obnVsbCk7XG5cbiAgICBwdWJsaWMgcmVhZG9ubHkgc2VsZWN0ZWRFbGVtZW50ID0gdGhpcy5zZWxlY3RlZEVsZW1lbnRTaWduYWwuYXNSZWFkb25seSgpO1xuXG4gICAgcHVibGljIGdldFNlbGVjdGVkRGF0YTxUPigpOiBTaWduYWw8Q3VpTnVsbGFibGU8VD4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRFbGVtZW50U2lnbmFsLmFzUmVhZG9ubHkoKSBhcyBTaWduYWw8Q3VpTnVsbGFibGU8VD4+O1xuICAgIH1cblxuICAgIHB1YmxpYyBzZXQoZWxlbWVudDogQ3VpU2VsZWN0TW9kYWxFbGVtZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRFbGVtZW50U2lnbmFsLnNldChlbGVtZW50KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZGVsZXRlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLnNlbGVjdGVkRWxlbWVudFNpZ25hbC5zZXQobnVsbCk7XG4gICAgfVxufVxuIl19
@@ -0,0 +1,2 @@
1
+ export * from './storage-list-item';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvc3RvcmFnZS1saXN0L2NvbXBvbmVudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQkFBcUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc3RvcmFnZS1saXN0LWl0ZW0nO1xuIl19
@@ -0,0 +1,2 @@
1
+ export { CuiStorageListItemComponent } from './storage-list-item.component';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3dpZGdldHMvc3RvcmFnZS1saXN0L2NvbXBvbmVudHMvc3RvcmFnZS1saXN0LWl0ZW0vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sK0JBQStCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBDdWlTdG9yYWdlTGlzdEl0ZW1Db21wb25lbnQgfSBmcm9tICcuL3N0b3JhZ2UtbGlzdC1pdGVtLmNvbXBvbmVudCc7XG4iXX0=