@cuby-ui/core 0.0.113 → 0.0.115

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.
@@ -7,6 +7,7 @@ import * as i0 from "@angular/core";
7
7
  export declare class CuiDialogsComponent implements OnInit {
8
8
  private readonly destroy$;
9
9
  protected readonly dialogs$: Observable<ReadonlyArray<CuiPopover<CuiDialogOptions>>>;
10
+ protected dialogInjectorCache: Map<string, Injector>;
10
11
  protected dialogInjectors: ReadonlyArray<Injector>;
11
12
  ngOnInit(): void;
12
13
  protected trackByFn(_: number, dialog: CuiPopover<CuiDialogOptions>): string;
@@ -20,5 +20,6 @@ export * from './radio';
20
20
  export * from './root';
21
21
  export * from './select';
22
22
  export * from './svg';
23
+ export * from './tabs';
23
24
  export * from './textarea';
24
25
  export * from './toggle';
@@ -0,0 +1,3 @@
1
+ export * from './tab';
2
+ export * from './tabs.component';
3
+ export * from './tabs.module';
@@ -0,0 +1 @@
1
+ export * from './tab.component';
@@ -0,0 +1,8 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare const CUI_TAB_ACTIVATE = "cui-tab-activate";
3
+ export declare class CuiTabComponent {
4
+ protected readonly element: HTMLButtonElement;
5
+ protected onClick(): void;
6
+ static ɵfac: i0.ɵɵFactoryDeclaration<CuiTabComponent, never>;
7
+ static ɵcmp: i0.ɵɵComponentDeclaration<CuiTabComponent, "button[cuiTab]", never, {}, {}, never, ["*"], false, never>;
8
+ }
@@ -0,0 +1,16 @@
1
+ import type { AfterViewChecked } from '@angular/core';
2
+ import { EventEmitter } from '@angular/core';
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;
14
+ static ɵfac: i0.ɵɵFactoryDeclaration<CuiTabsComponent, never>;
15
+ static ɵcmp: i0.ɵɵComponentDeclaration<CuiTabsComponent, "cui-tabs", never, { "activeItemIndex": "activeItemIndex"; }, { "activeItemIndexChange": "activeItemIndexChange"; }, never, ["[cuiTab]"], false, never>;
16
+ }
@@ -0,0 +1,8 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./tabs.component";
3
+ import * as i2 from "./tab/tab.component";
4
+ export declare class CuiTabsModule {
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<CuiTabsModule, never>;
6
+ static ɵmod: i0.ɵɵNgModuleDeclaration<CuiTabsModule, [typeof i1.CuiTabsComponent, typeof i2.CuiTabComponent], never, [typeof i1.CuiTabsComponent, typeof i2.CuiTabComponent]>;
7
+ static ɵinj: i0.ɵɵInjectorDeclaration<CuiTabsModule>;
8
+ }
@@ -9,6 +9,7 @@ export class CuiDialogsComponent {
9
9
  constructor() {
10
10
  this.destroy$ = inject(CuiDestroyService, { self: true });
11
11
  this.dialogs$ = inject(CUI_DIALOGS);
12
+ this.dialogInjectorCache = new Map();
12
13
  }
13
14
  ngOnInit() {
14
15
  this.initDialogInjectorsSubscription();
@@ -19,9 +20,22 @@ export class CuiDialogsComponent {
19
20
  initDialogInjectorsSubscription() {
20
21
  this.dialogs$
21
22
  .pipe(takeUntil(this.destroy$))
22
- .subscribe(dialogs => this.dialogInjectors = dialogs.map(useValue => Injector.create({
23
- providers: [{ provide: CUI_DIALOG_CONTEXT, useValue }]
24
- })));
23
+ .subscribe(dialogs => {
24
+ this.dialogInjectors = dialogs.map(dialog => {
25
+ if (!this.dialogInjectorCache.has(dialog.id)) {
26
+ this.dialogInjectorCache.set(dialog.id, Injector.create({
27
+ providers: [{ provide: CUI_DIALOG_CONTEXT, useValue: dialog }]
28
+ }));
29
+ }
30
+ return this.dialogInjectorCache.get(dialog.id);
31
+ });
32
+ this.dialogInjectorCache.forEach((_, dialogId) => {
33
+ if (dialogs.find(dialog => dialog.id === dialogId)) {
34
+ return;
35
+ }
36
+ this.dialogInjectorCache.delete(dialogId);
37
+ });
38
+ });
25
39
  }
26
40
  }
27
41
  CuiDialogsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiDialogsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
@@ -30,4 +44,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
30
44
  type: Component,
31
45
  args: [{ selector: 'cui-dialogs', changeDetection: ChangeDetectionStrategy.OnPush, providers: [CuiDestroyService], template: "<ng-container *cuiLet=\"dialogs$ | async as dialogs\">\n <ng-container *ngFor=\"let dialog of dialogs; let i = index; trackBy: trackByFn\">\n <ng-container *ngComponentOutlet=\"dialog.component; injector: dialogInjectors[i]\"></ng-container>\n </ng-container>\n <div\n *ngIf=\"dialogs!.length\"\n class=\"c-overlay\"\n ></div>\n</ng-container>\n", styles: [".c-overlay{position:fixed;inset:0;background:var(--cui-base-900);opacity:.3}\n"] }]
32
46
  }] });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9ncy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvZGlhbG9nL2RpYWxvZ3MuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL2RpYWxvZy9kaWFsb2dzLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXJGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUVqRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRWpDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7OztBQVVsRSxNQUFNLE9BQU8sbUJBQW1CO0lBUGhDO1FBUW1CLGFBQVEsR0FBRyxNQUFNLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUVuRCxhQUFRLEdBQTRELE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztLQWtCNUc7SUFmUSxRQUFRO1FBQ2IsSUFBSSxDQUFDLCtCQUErQixFQUFFLENBQUM7SUFDekMsQ0FBQztJQUVTLFNBQVMsQ0FBQyxDQUFTLEVBQUUsTUFBb0M7UUFDakUsT0FBTyxNQUFNLENBQUMsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFUywrQkFBK0I7UUFDdkMsSUFBSSxDQUFDLFFBQVE7YUFDVixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUM5QixTQUFTLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDO1lBQ25GLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFFBQVEsRUFBRSxDQUFDO1NBQ3ZELENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDVCxDQUFDOztpSEFwQlUsbUJBQW1CO3FHQUFuQixtQkFBbUIsc0NBRm5CLENBQUMsaUJBQWlCLENBQUMsMEJDZmhDLHdXQVNBOzRGRFFhLG1CQUFtQjtrQkFQL0IsU0FBUzsrQkFDRSxhQUFhLG1CQUdOLHVCQUF1QixDQUFDLE1BQU0sYUFDcEMsQ0FBQyxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBpbmplY3QsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgdHlwZSB7IEN1aVBvcG92ZXIgfSBmcm9tICdAY3VieS11aS9jZGsnO1xuaW1wb3J0IHsgQ3VpRGVzdHJveVNlcnZpY2UgfSBmcm9tICdAY3VieS11aS9jZGsnO1xuaW1wb3J0IHR5cGUgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQ1VJX0RJQUxPR19DT05URVhULCBDVUlfRElBTE9HUyB9IGZyb20gJy4vZGlhbG9nLnRva2Vucyc7XG5pbXBvcnQgdHlwZSB7IEN1aURpYWxvZ09wdGlvbnMgfSBmcm9tICcuL2RpYWxvZy5pbnRlcmZhY2VzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY3VpLWRpYWxvZ3MnLFxuICB0ZW1wbGF0ZVVybDogJy4vZGlhbG9ncy50ZW1wbGF0ZS5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGlhbG9ncy5zdHlsZS5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcm92aWRlcnM6IFtDdWlEZXN0cm95U2VydmljZV1cbn0pXG5leHBvcnQgY2xhc3MgQ3VpRGlhbG9nc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSQgPSBpbmplY3QoQ3VpRGVzdHJveVNlcnZpY2UsIHsgc2VsZjogdHJ1ZSB9KTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZGlhbG9ncyQ6IE9ic2VydmFibGU8UmVhZG9ubHlBcnJheTxDdWlQb3BvdmVyPEN1aURpYWxvZ09wdGlvbnM+Pj4gPSBpbmplY3QoQ1VJX0RJQUxPR1MpO1xuICBwcm90ZWN0ZWQgZGlhbG9nSW5qZWN0b3JzITogUmVhZG9ubHlBcnJheTxJbmplY3Rvcj47XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuaW5pdERpYWxvZ0luamVjdG9yc1N1YnNjcmlwdGlvbigpO1xuICB9XG5cbiAgcHJvdGVjdGVkIHRyYWNrQnlGbihfOiBudW1iZXIsIGRpYWxvZzogQ3VpUG9wb3ZlcjxDdWlEaWFsb2dPcHRpb25zPik6IHN0cmluZyB7XG4gICAgcmV0dXJuIGRpYWxvZy5pZDtcbiAgfVxuXG4gIHByb3RlY3RlZCBpbml0RGlhbG9nSW5qZWN0b3JzU3Vic2NyaXB0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMuZGlhbG9ncyRcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcbiAgICAgIC5zdWJzY3JpYmUoZGlhbG9ncyA9PiB0aGlzLmRpYWxvZ0luamVjdG9ycyA9IGRpYWxvZ3MubWFwKHVzZVZhbHVlID0+IEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICAgIHByb3ZpZGVyczogW3sgcHJvdmlkZTogQ1VJX0RJQUxPR19DT05URVhULCB1c2VWYWx1ZSB9XVxuICAgICAgfSkpKTtcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqY3VpTGV0PVwiZGlhbG9ncyQgfCBhc3luYyBhcyBkaWFsb2dzXCI+XG4gIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGRpYWxvZyBvZiBkaWFsb2dzOyBsZXQgaSA9IGluZGV4OyB0cmFja0J5OiB0cmFja0J5Rm5cIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0NvbXBvbmVudE91dGxldD1cImRpYWxvZy5jb21wb25lbnQ7IGluamVjdG9yOiBkaWFsb2dJbmplY3RvcnNbaV1cIj48L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxkaXZcbiAgICAqbmdJZj1cImRpYWxvZ3MhLmxlbmd0aFwiXG4gICAgY2xhc3M9XCJjLW92ZXJsYXlcIlxuICA+PC9kaXY+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9ncy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvZGlhbG9nL2RpYWxvZ3MuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL2RpYWxvZy9kaWFsb2dzLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXJGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUVqRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRWpDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7OztBQVVsRSxNQUFNLE9BQU8sbUJBQW1CO0lBUGhDO1FBUW1CLGFBQVEsR0FBRyxNQUFNLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUVuRCxhQUFRLEdBQTRELE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNqRyx3QkFBbUIsR0FBRyxJQUFJLEdBQUcsRUFBb0IsQ0FBQztLQWtDN0Q7SUEvQlEsUUFBUTtRQUNiLElBQUksQ0FBQywrQkFBK0IsRUFBRSxDQUFDO0lBQ3pDLENBQUM7SUFFUyxTQUFTLENBQUMsQ0FBUyxFQUFFLE1BQW9DO1FBQ2pFLE9BQU8sTUFBTSxDQUFDLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRVMsK0JBQStCO1FBQ3ZDLElBQUksQ0FBQyxRQUFRO2FBQ1osSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDOUIsU0FBUyxDQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ25CLElBQUksQ0FBQyxlQUFlLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRTtnQkFDMUMsSUFBSSxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxFQUFFO29CQUM1QyxJQUFJLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsUUFBUSxDQUFDLE1BQU0sQ0FBQzt3QkFDdEQsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxDQUFDO3FCQUMvRCxDQUFDLENBQUMsQ0FBQztpQkFDTDtnQkFFRCxPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBRSxDQUFDO1lBQ2xELENBQUMsQ0FBQyxDQUFDO1lBRUgsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsRUFBRTtnQkFDL0MsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLEVBQUUsS0FBSyxRQUFRLENBQUMsRUFBRTtvQkFDbEQsT0FBTztpQkFDUjtnQkFFRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQzVDLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztpSEFyQ1UsbUJBQW1CO3FHQUFuQixtQkFBbUIsc0NBRm5CLENBQUMsaUJBQWlCLENBQUMsMEJDZmhDLHdXQVNBOzRGRFFhLG1CQUFtQjtrQkFQL0IsU0FBUzsrQkFDRSxhQUFhLG1CQUdOLHVCQUF1QixDQUFDLE1BQU0sYUFDcEMsQ0FBQyxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBpbmplY3QsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgdHlwZSB7IEN1aVBvcG92ZXIgfSBmcm9tICdAY3VieS11aS9jZGsnO1xuaW1wb3J0IHsgQ3VpRGVzdHJveVNlcnZpY2UgfSBmcm9tICdAY3VieS11aS9jZGsnO1xuaW1wb3J0IHR5cGUgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQ1VJX0RJQUxPR19DT05URVhULCBDVUlfRElBTE9HUyB9IGZyb20gJy4vZGlhbG9nLnRva2Vucyc7XG5pbXBvcnQgdHlwZSB7IEN1aURpYWxvZ09wdGlvbnMgfSBmcm9tICcuL2RpYWxvZy5pbnRlcmZhY2VzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY3VpLWRpYWxvZ3MnLFxuICB0ZW1wbGF0ZVVybDogJy4vZGlhbG9ncy50ZW1wbGF0ZS5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGlhbG9ncy5zdHlsZS5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBwcm92aWRlcnM6IFtDdWlEZXN0cm95U2VydmljZV1cbn0pXG5leHBvcnQgY2xhc3MgQ3VpRGlhbG9nc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSQgPSBpbmplY3QoQ3VpRGVzdHJveVNlcnZpY2UsIHsgc2VsZjogdHJ1ZSB9KTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZGlhbG9ncyQ6IE9ic2VydmFibGU8UmVhZG9ubHlBcnJheTxDdWlQb3BvdmVyPEN1aURpYWxvZ09wdGlvbnM+Pj4gPSBpbmplY3QoQ1VJX0RJQUxPR1MpO1xuICBwcm90ZWN0ZWQgZGlhbG9nSW5qZWN0b3JDYWNoZSA9IG5ldyBNYXA8c3RyaW5nLCBJbmplY3Rvcj4oKTtcbiAgcHJvdGVjdGVkIGRpYWxvZ0luamVjdG9ycyE6IFJlYWRvbmx5QXJyYXk8SW5qZWN0b3I+O1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmluaXREaWFsb2dJbmplY3RvcnNTdWJzY3JpcHRpb24oKTtcbiAgfVxuXG4gIHByb3RlY3RlZCB0cmFja0J5Rm4oXzogbnVtYmVyLCBkaWFsb2c6IEN1aVBvcG92ZXI8Q3VpRGlhbG9nT3B0aW9ucz4pOiBzdHJpbmcge1xuICAgIHJldHVybiBkaWFsb2cuaWQ7XG4gIH1cblxuICBwcm90ZWN0ZWQgaW5pdERpYWxvZ0luamVjdG9yc1N1YnNjcmlwdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLmRpYWxvZ3MkXG4gICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveSQpKVxuICAgIC5zdWJzY3JpYmUoZGlhbG9ncyA9PiB7XG4gICAgICB0aGlzLmRpYWxvZ0luamVjdG9ycyA9IGRpYWxvZ3MubWFwKGRpYWxvZyA9PiB7XG4gICAgICAgIGlmICghdGhpcy5kaWFsb2dJbmplY3RvckNhY2hlLmhhcyhkaWFsb2cuaWQpKSB7XG4gICAgICAgICAgdGhpcy5kaWFsb2dJbmplY3RvckNhY2hlLnNldChkaWFsb2cuaWQsIEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICAgICAgICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IENVSV9ESUFMT0dfQ09OVEVYVCwgdXNlVmFsdWU6IGRpYWxvZyB9XVxuICAgICAgICAgIH0pKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLmRpYWxvZ0luamVjdG9yQ2FjaGUuZ2V0KGRpYWxvZy5pZCkhO1xuICAgICAgfSk7XG5cbiAgICAgIHRoaXMuZGlhbG9nSW5qZWN0b3JDYWNoZS5mb3JFYWNoKChfLCBkaWFsb2dJZCkgPT4ge1xuICAgICAgICBpZiAoZGlhbG9ncy5maW5kKGRpYWxvZyA9PiBkaWFsb2cuaWQgPT09IGRpYWxvZ0lkKSkge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuZGlhbG9nSW5qZWN0b3JDYWNoZS5kZWxldGUoZGlhbG9nSWQpO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKmN1aUxldD1cImRpYWxvZ3MkIHwgYXN5bmMgYXMgZGlhbG9nc1wiPlxuICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBkaWFsb2cgb2YgZGlhbG9nczsgbGV0IGkgPSBpbmRleDsgdHJhY2tCeTogdHJhY2tCeUZuXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdDb21wb25lbnRPdXRsZXQ9XCJkaWFsb2cuY29tcG9uZW50OyBpbmplY3RvcjogZGlhbG9nSW5qZWN0b3JzW2ldXCI+PC9uZy1jb250YWluZXI+XG4gIDwvbmctY29udGFpbmVyPlxuICA8ZGl2XG4gICAgKm5nSWY9XCJkaWFsb2dzIS5sZW5ndGhcIlxuICAgIGNsYXNzPVwiYy1vdmVybGF5XCJcbiAgPjwvZGl2PlxuPC9uZy1jb250YWluZXI+XG4iXX0=
@@ -20,6 +20,7 @@ export * from './radio';
20
20
  export * from './root';
21
21
  export * from './select';
22
22
  export * from './svg';
23
+ export * from './tabs';
23
24
  export * from './textarea';
24
25
  export * from './toggle';
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsUUFBUSxDQUFDO0FBQ3ZCLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsUUFBUSxDQUFDO0FBQ3ZCLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsT0FBTyxDQUFDO0FBQ3RCLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsVUFBVSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hY2NvcmRpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9hbGVydCc7XG5leHBvcnQgKiBmcm9tICcuL2JhZGdlJztcbmV4cG9ydCAqIGZyb20gJy4vYmFubmVyJztcbmV4cG9ydCAqIGZyb20gJy4vYnJlYWRjcnVtYnMnO1xuZXhwb3J0ICogZnJvbSAnLi9idXR0b24nO1xuZXhwb3J0ICogZnJvbSAnLi9idXR0b24tZ3JvdXAnO1xuZXhwb3J0ICogZnJvbSAnLi9jaGVja2JveCc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRleHQtbWVudSc7XG5leHBvcnQgKiBmcm9tICcuL2RpYWxvZyc7XG5leHBvcnQgKiBmcm9tICcuL2Zvcm0tZmllbGQnO1xuZXhwb3J0ICogZnJvbSAnLi9oaW50JztcbmV4cG9ydCAqIGZyb20gJy4vaWNvbi1idXR0b24nO1xuZXhwb3J0ICogZnJvbSAnLi9pbnB1dC1udW1iZXInO1xuZXhwb3J0ICogZnJvbSAnLi9pbnB1dC1wYXNzd29yZCc7XG5leHBvcnQgKiBmcm9tICcuL2lucHV0LXRleHQnO1xuZXhwb3J0ICogZnJvbSAnLi9sYWJlbCc7XG5leHBvcnQgKiBmcm9tICcuL25vdGlmaWNhdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3JhZGlvJztcbmV4cG9ydCAqIGZyb20gJy4vcm9vdCc7XG5leHBvcnQgKiBmcm9tICcuL3NlbGVjdCc7XG5leHBvcnQgKiBmcm9tICcuL3N2Zyc7XG5leHBvcnQgKiBmcm9tICcuL3RleHRhcmVhJztcbmV4cG9ydCAqIGZyb20gJy4vdG9nZ2xlJztcbiJdfQ==
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxnQkFBZ0IsQ0FBQztBQUMvQixjQUFjLFlBQVksQ0FBQztBQUMzQixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsY0FBYyxDQUFDO0FBQzdCLGNBQWMsUUFBUSxDQUFDO0FBQ3ZCLGNBQWMsZUFBZSxDQUFDO0FBQzlCLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLFNBQVMsQ0FBQztBQUN4QixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsUUFBUSxDQUFDO0FBQ3ZCLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsT0FBTyxDQUFDO0FBQ3RCLGNBQWMsUUFBUSxDQUFDO0FBQ3ZCLGNBQWMsWUFBWSxDQUFDO0FBQzNCLGNBQWMsVUFBVSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9hY2NvcmRpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9hbGVydCc7XG5leHBvcnQgKiBmcm9tICcuL2JhZGdlJztcbmV4cG9ydCAqIGZyb20gJy4vYmFubmVyJztcbmV4cG9ydCAqIGZyb20gJy4vYnJlYWRjcnVtYnMnO1xuZXhwb3J0ICogZnJvbSAnLi9idXR0b24nO1xuZXhwb3J0ICogZnJvbSAnLi9idXR0b24tZ3JvdXAnO1xuZXhwb3J0ICogZnJvbSAnLi9jaGVja2JveCc7XG5leHBvcnQgKiBmcm9tICcuL2NvbnRleHQtbWVudSc7XG5leHBvcnQgKiBmcm9tICcuL2RpYWxvZyc7XG5leHBvcnQgKiBmcm9tICcuL2Zvcm0tZmllbGQnO1xuZXhwb3J0ICogZnJvbSAnLi9oaW50JztcbmV4cG9ydCAqIGZyb20gJy4vaWNvbi1idXR0b24nO1xuZXhwb3J0ICogZnJvbSAnLi9pbnB1dC1udW1iZXInO1xuZXhwb3J0ICogZnJvbSAnLi9pbnB1dC1wYXNzd29yZCc7XG5leHBvcnQgKiBmcm9tICcuL2lucHV0LXRleHQnO1xuZXhwb3J0ICogZnJvbSAnLi9sYWJlbCc7XG5leHBvcnQgKiBmcm9tICcuL25vdGlmaWNhdGlvbic7XG5leHBvcnQgKiBmcm9tICcuL3JhZGlvJztcbmV4cG9ydCAqIGZyb20gJy4vcm9vdCc7XG5leHBvcnQgKiBmcm9tICcuL3NlbGVjdCc7XG5leHBvcnQgKiBmcm9tICcuL3N2Zyc7XG5leHBvcnQgKiBmcm9tICcuL3RhYnMnO1xuZXhwb3J0ICogZnJvbSAnLi90ZXh0YXJlYSc7XG5leHBvcnQgKiBmcm9tICcuL3RvZ2dsZSc7XG4iXX0=
@@ -0,0 +1,4 @@
1
+ export * from './tab';
2
+ export * from './tabs.component';
3
+ export * from './tabs.module';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvdGFicy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLE9BQU8sQ0FBQztBQUN0QixjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsZUFBZSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi90YWInO1xuZXhwb3J0ICogZnJvbSAnLi90YWJzLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3RhYnMubW9kdWxlJztcbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './tab.component';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvdGFicy90YWIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vdGFiLmNvbXBvbmVudCc7Il19
@@ -0,0 +1,21 @@
1
+ import { ChangeDetectionStrategy, Component, ElementRef, HostListener, inject } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export const CUI_TAB_ACTIVATE = 'cui-tab-activate';
4
+ export class CuiTabComponent {
5
+ constructor() {
6
+ this.element = inject(ElementRef).nativeElement;
7
+ }
8
+ onClick() {
9
+ this.element.dispatchEvent(new CustomEvent(CUI_TAB_ACTIVATE, { bubbles: true }));
10
+ }
11
+ }
12
+ CuiTabComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiTabComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
13
+ CuiTabComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CuiTabComponent, selector: "button[cuiTab]", host: { listeners: { "click": "onClick()" } }, ngImport: i0, template: "<ng-content />\n", styles: [":host{padding:0;border:0;flex-shrink:0;outline:none;cursor:pointer;appearance:none;color:inherit;font:inherit;background:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent;font-family:var(--cui-main-font)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiTabComponent, decorators: [{
15
+ type: Component,
16
+ args: [{ selector: 'button[cuiTab]', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content />\n", styles: [":host{padding:0;border:0;flex-shrink:0;outline:none;cursor:pointer;appearance:none;color:inherit;font:inherit;background:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent;font-family:var(--cui-main-font)}\n"] }]
17
+ }], propDecorators: { onClick: [{
18
+ type: HostListener,
19
+ args: ['click']
20
+ }] } });
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy90YWJzL3RhYi90YWIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL3RhYnMvdGFiL3RhYi50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRXJHLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLGtCQUFrQixDQUFDO0FBUW5ELE1BQU0sT0FBTyxlQUFlO0lBTjVCO1FBT3FCLFlBQU8sR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsYUFBa0MsQ0FBQztLQU1wRjtJQUhXLE9BQU87UUFDZixJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxJQUFJLFdBQVcsQ0FBQyxnQkFBZ0IsRUFBRSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDbkYsQ0FBQzs7NkdBTlUsZUFBZTtpR0FBZixlQUFlLHFHQ1Y1QixrQkFDQTs0RkRTYSxlQUFlO2tCQU4zQixTQUFTOytCQUNFLGdCQUFnQixtQkFHVCx1QkFBdUIsQ0FBQyxNQUFNOzhCQU1yQyxPQUFPO3NCQURoQixZQUFZO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgY29uc3QgQ1VJX1RBQl9BQ1RJVkFURSA9ICdjdWktdGFiLWFjdGl2YXRlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYnV0dG9uW2N1aVRhYl0nLFxuICB0ZW1wbGF0ZVVybDogJy4vdGFiLnRlbXBsYXRlLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90YWIuc3R5bGUuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBDdWlUYWJDb21wb25lbnQge1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZWxlbWVudCA9IGluamVjdChFbGVtZW50UmVmKS5uYXRpdmVFbGVtZW50IGFzIEhUTUxCdXR0b25FbGVtZW50O1xuXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgcHJvdGVjdGVkIG9uQ2xpY2soKTogdm9pZCB7XG4gICAgdGhpcy5lbGVtZW50LmRpc3BhdGNoRXZlbnQobmV3IEN1c3RvbUV2ZW50KENVSV9UQUJfQUNUSVZBVEUsIHsgYnViYmxlczogdHJ1ZSB9KSk7XG4gIH1cbn1cbiIsIjxuZy1jb250ZW50IC8+XG4iXX0=
@@ -0,0 +1,49 @@
1
+ import { ChangeDetectionStrategy, Component, ElementRef, EventEmitter, HostListener, inject, Input, Output } from '@angular/core';
2
+ import { CUI_TAB_ACTIVATE } from './tab';
3
+ import * as i0 from "@angular/core";
4
+ export class CuiTabsComponent {
5
+ constructor() {
6
+ this.element = inject(ElementRef).nativeElement;
7
+ this.activeElementClass = '_active';
8
+ this.activeItemIndex = 0;
9
+ this.activeItemIndexChange = new EventEmitter();
10
+ }
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) {
24
+ return;
25
+ }
26
+ this.activeItemIndexChange.emit(index);
27
+ this.activeItemIndex = index;
28
+ }
29
+ changeActiveItem() {
30
+ this.tabs.forEach(nativeElement => {
31
+ const active = nativeElement === this.activeElement;
32
+ nativeElement.classList.toggle(this.activeElementClass, active);
33
+ });
34
+ }
35
+ }
36
+ CuiTabsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiTabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
37
+ CuiTabsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", 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
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiTabsComponent, decorators: [{
39
+ 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFicy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvdGFicy90YWJzLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy90YWJzL3RhYnMudGVtcGxhdGUuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDUCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxPQUFPLENBQUM7O0FBUXpDLE1BQU0sT0FBTyxnQkFBZ0I7SUFON0I7UUFPbUIsWUFBTyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxhQUE0QixDQUFDO1FBRTFELHVCQUFrQixHQUFHLFNBQVMsQ0FBQztRQWV6QyxvQkFBZSxHQUFHLENBQUMsQ0FBQztRQUdYLDBCQUFxQixHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7S0F1QnBFO0lBdkNDLElBQWMsSUFBSTtRQUNoQixPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBYyxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQzVFLENBQUM7SUFFRCxJQUFXLGFBQWE7UUFDdEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxJQUFJLENBQUM7SUFDakQsQ0FBQztJQUVNLGtCQUFrQjtRQUN2QixJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBU1MsVUFBVSxDQUFDLEtBQWtCO1FBQ3JDLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUV4QixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxLQUFLLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUVqRSxJQUFJLEtBQUssS0FBSyxJQUFJLENBQUMsZUFBZSxFQUFFO1lBQ2xDLE9BQU87U0FDUjtRQUVELElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDdkMsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUM7SUFDL0IsQ0FBQztJQUVPLGdCQUFnQjtRQUN0QixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsRUFBRTtZQUNoQyxNQUFNLE1BQU0sR0FBRyxhQUFhLEtBQUssSUFBSSxDQUFDLGFBQWEsQ0FBQztZQUVwRCxhQUFhLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDbEUsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzs4R0EzQ1UsZ0JBQWdCO2tHQUFoQixnQkFBZ0IsZ09DcEI3QixzQ0FDQTs0RkRtQmEsZ0JBQWdCO2tCQU41QixTQUFTOytCQUNFLFVBQVUsbUJBR0gsdUJBQXVCLENBQUMsTUFBTTs4QkFvQnhDLGVBQWU7c0JBRHJCLEtBQUs7Z0JBSVUscUJBQXFCO3NCQURwQyxNQUFNO2dCQUlHLFVBQVU7c0JBRG5CLFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEFmdGVyVmlld0NoZWNrZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSG9zdExpc3RlbmVyLFxuICBpbmplY3QsXG4gIElucHV0LFxuICBPdXRwdXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IENVSV9UQUJfQUNUSVZBVEUgfSBmcm9tICcuL3RhYic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2N1aS10YWJzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RhYnMudGVtcGxhdGUuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3RhYnMuc3R5bGUuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBDdWlUYWJzQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3Q2hlY2tlZCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudCA9IGluamVjdChFbGVtZW50UmVmKS5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50O1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgYWN0aXZlRWxlbWVudENsYXNzID0gJ19hY3RpdmUnO1xuXG4gIHByb3RlY3RlZCBnZXQgdGFicygpOiByZWFkb25seSBIVE1MRWxlbWVudFtdIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLmVsZW1lbnQucXVlcnlTZWxlY3RvckFsbDxIVE1MRWxlbWVudD4oJ1tjdWlUYWJdJykpO1xuICB9XG5cbiAgcHVibGljIGdldCBhY3RpdmVFbGVtZW50KCk6IEhUTUxFbGVtZW50IHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMudGFic1t0aGlzLmFjdGl2ZUl0ZW1JbmRleF0gfHwgbnVsbDtcbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0NoZWNrZWQoKTogdm9pZCB7XG4gICAgdGhpcy5jaGFuZ2VBY3RpdmVJdGVtKCk7XG4gIH1cblxuICBASW5wdXQoKVxuICBwdWJsaWMgYWN0aXZlSXRlbUluZGV4ID0gMDtcblxuICBAT3V0cHV0KClcbiAgcHVibGljIHJlYWRvbmx5IGFjdGl2ZUl0ZW1JbmRleENoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gIEBIb3N0TGlzdGVuZXIoQ1VJX1RBQl9BQ1RJVkFURSwgWyckZXZlbnQnXSlcbiAgcHJvdGVjdGVkIG9uQWN0aXZhdGUoZXZlbnQ6IEN1c3RvbUV2ZW50KTogdm9pZCB7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICBjb25zdCBpbmRleCA9IHRoaXMudGFicy5maW5kSW5kZXgoKHRhYikgPT4gdGFiID09PSBldmVudC50YXJnZXQpO1xuXG4gICAgaWYgKGluZGV4ID09PSB0aGlzLmFjdGl2ZUl0ZW1JbmRleCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuYWN0aXZlSXRlbUluZGV4Q2hhbmdlLmVtaXQoaW5kZXgpO1xuICAgIHRoaXMuYWN0aXZlSXRlbUluZGV4ID0gaW5kZXg7XG4gIH1cblxuICBwcml2YXRlIGNoYW5nZUFjdGl2ZUl0ZW0oKTogdm9pZCB7XG4gICAgdGhpcy50YWJzLmZvckVhY2gobmF0aXZlRWxlbWVudCA9PiB7XG4gICAgICBjb25zdCBhY3RpdmUgPSBuYXRpdmVFbGVtZW50ID09PSB0aGlzLmFjdGl2ZUVsZW1lbnQ7XG5cbiAgICAgIG5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0LnRvZ2dsZSh0aGlzLmFjdGl2ZUVsZW1lbnRDbGFzcywgYWN0aXZlKTtcbiAgICB9KTtcbiAgfVxufVxuIiwiPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2N1aVRhYl1cIiAvPlxuIl19
@@ -0,0 +1,18 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CuiTabsComponent } from './tabs.component';
3
+ import { CuiTabComponent } from './tab';
4
+ import * as i0 from "@angular/core";
5
+ export class CuiTabsModule {
6
+ }
7
+ CuiTabsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiTabsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
+ CuiTabsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: CuiTabsModule, declarations: [CuiTabsComponent, CuiTabComponent], exports: [CuiTabsComponent, CuiTabComponent] });
9
+ CuiTabsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiTabsModule });
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiTabsModule, decorators: [{
11
+ type: NgModule,
12
+ args: [{
13
+ imports: [],
14
+ declarations: [CuiTabsComponent, CuiTabComponent],
15
+ exports: [CuiTabsComponent, CuiTabComponent]
16
+ }]
17
+ }] });
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFicy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvdGFicy90YWJzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXpDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxPQUFPLENBQUM7O0FBT3hDLE1BQU0sT0FBTyxhQUFhOzsyR0FBYixhQUFhOzRHQUFiLGFBQWEsaUJBSFQsZ0JBQWdCLEVBQUUsZUFBZSxhQUN0QyxnQkFBZ0IsRUFBRSxlQUFlOzRHQUVoQyxhQUFhOzRGQUFiLGFBQWE7a0JBTHpCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFLEVBQUU7b0JBQ1gsWUFBWSxFQUFFLENBQUMsZ0JBQWdCLEVBQUUsZUFBZSxDQUFDO29CQUNqRCxPQUFPLEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSxlQUFlLENBQUM7aUJBQzdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQ3VpVGFic0NvbXBvbmVudCB9IGZyb20gJy4vdGFicy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ3VpVGFiQ29tcG9uZW50IH0gZnJvbSAnLi90YWInO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXSxcbiAgZGVjbGFyYXRpb25zOiBbQ3VpVGFic0NvbXBvbmVudCwgQ3VpVGFiQ29tcG9uZW50XSxcbiAgZXhwb3J0czogW0N1aVRhYnNDb21wb25lbnQsIEN1aVRhYkNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgQ3VpVGFic01vZHVsZSB7XG59XG4iXX0=
@@ -725,6 +725,7 @@ class CuiDialogsComponent {
725
725
  constructor() {
726
726
  this.destroy$ = inject(CuiDestroyService, { self: true });
727
727
  this.dialogs$ = inject(CUI_DIALOGS);
728
+ this.dialogInjectorCache = new Map();
728
729
  }
729
730
  ngOnInit() {
730
731
  this.initDialogInjectorsSubscription();
@@ -735,9 +736,22 @@ class CuiDialogsComponent {
735
736
  initDialogInjectorsSubscription() {
736
737
  this.dialogs$
737
738
  .pipe(takeUntil(this.destroy$))
738
- .subscribe(dialogs => this.dialogInjectors = dialogs.map(useValue => Injector.create({
739
- providers: [{ provide: CUI_DIALOG_CONTEXT, useValue }]
740
- })));
739
+ .subscribe(dialogs => {
740
+ this.dialogInjectors = dialogs.map(dialog => {
741
+ if (!this.dialogInjectorCache.has(dialog.id)) {
742
+ this.dialogInjectorCache.set(dialog.id, Injector.create({
743
+ providers: [{ provide: CUI_DIALOG_CONTEXT, useValue: dialog }]
744
+ }));
745
+ }
746
+ return this.dialogInjectorCache.get(dialog.id);
747
+ });
748
+ this.dialogInjectorCache.forEach((_, dialogId) => {
749
+ if (dialogs.find(dialog => dialog.id === dialogId)) {
750
+ return;
751
+ }
752
+ this.dialogInjectorCache.delete(dialogId);
753
+ });
754
+ });
741
755
  }
742
756
  }
743
757
  CuiDialogsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiDialogsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
@@ -2065,6 +2079,85 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
2065
2079
  }]
2066
2080
  }] });
2067
2081
 
2082
+ const CUI_TAB_ACTIVATE = 'cui-tab-activate';
2083
+ class CuiTabComponent {
2084
+ constructor() {
2085
+ this.element = inject(ElementRef).nativeElement;
2086
+ }
2087
+ onClick() {
2088
+ this.element.dispatchEvent(new CustomEvent(CUI_TAB_ACTIVATE, { bubbles: true }));
2089
+ }
2090
+ }
2091
+ CuiTabComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiTabComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2092
+ CuiTabComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CuiTabComponent, selector: "button[cuiTab]", host: { listeners: { "click": "onClick()" } }, ngImport: i0, template: "<ng-content />\n", styles: [":host{padding:0;border:0;flex-shrink:0;outline:none;cursor:pointer;appearance:none;color:inherit;font:inherit;background:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent;font-family:var(--cui-main-font)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
2093
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiTabComponent, decorators: [{
2094
+ type: Component,
2095
+ args: [{ selector: 'button[cuiTab]', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content />\n", styles: [":host{padding:0;border:0;flex-shrink:0;outline:none;cursor:pointer;appearance:none;color:inherit;font:inherit;background:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent;font-family:var(--cui-main-font)}\n"] }]
2096
+ }], propDecorators: { onClick: [{
2097
+ type: HostListener,
2098
+ args: ['click']
2099
+ }] } });
2100
+
2101
+ class CuiTabsComponent {
2102
+ constructor() {
2103
+ this.element = inject(ElementRef).nativeElement;
2104
+ this.activeElementClass = '_active';
2105
+ this.activeItemIndex = 0;
2106
+ this.activeItemIndexChange = new EventEmitter();
2107
+ }
2108
+ get tabs() {
2109
+ return Array.from(this.element.querySelectorAll('[cuiTab]'));
2110
+ }
2111
+ get activeElement() {
2112
+ return this.tabs[this.activeItemIndex] || null;
2113
+ }
2114
+ ngAfterViewChecked() {
2115
+ this.changeActiveItem();
2116
+ }
2117
+ onActivate(event) {
2118
+ event.stopPropagation();
2119
+ const index = this.tabs.findIndex((tab) => tab === event.target);
2120
+ if (index === this.activeItemIndex) {
2121
+ return;
2122
+ }
2123
+ this.activeItemIndexChange.emit(index);
2124
+ this.activeItemIndex = index;
2125
+ }
2126
+ changeActiveItem() {
2127
+ this.tabs.forEach(nativeElement => {
2128
+ const active = nativeElement === this.activeElement;
2129
+ nativeElement.classList.toggle(this.activeElementClass, active);
2130
+ });
2131
+ }
2132
+ }
2133
+ CuiTabsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiTabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2134
+ CuiTabsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", 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 });
2135
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiTabsComponent, decorators: [{
2136
+ type: Component,
2137
+ 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"] }]
2138
+ }], propDecorators: { activeItemIndex: [{
2139
+ type: Input
2140
+ }], activeItemIndexChange: [{
2141
+ type: Output
2142
+ }], onActivate: [{
2143
+ type: HostListener,
2144
+ args: [CUI_TAB_ACTIVATE, ['$event']]
2145
+ }] } });
2146
+
2147
+ class CuiTabsModule {
2148
+ }
2149
+ CuiTabsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiTabsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2150
+ CuiTabsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: CuiTabsModule, declarations: [CuiTabsComponent, CuiTabComponent], exports: [CuiTabsComponent, CuiTabComponent] });
2151
+ CuiTabsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiTabsModule });
2152
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiTabsModule, decorators: [{
2153
+ type: NgModule,
2154
+ args: [{
2155
+ imports: [],
2156
+ declarations: [CuiTabsComponent, CuiTabComponent],
2157
+ exports: [CuiTabsComponent, CuiTabComponent]
2158
+ }]
2159
+ }] });
2160
+
2068
2161
  class CuiTextareaComponent {
2069
2162
  constructor() {
2070
2163
  this.cuiTextFieldController = inject(CUI_TEXT_FIELD_CONTROLLER);
@@ -2134,5 +2227,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
2134
2227
  * Generated bundle index. Do not edit.
2135
2228
  */
2136
2229
 
2137
- export { CUI_ALERTS, CUI_ALERT_CONTEXT, CUI_ALERT_DEFAULT_OPTIONS, CUI_ALERT_OPTIONS, CUI_BANNER_DEFAULT_OPTIONS, CUI_BANNER_OPTIONS, CUI_BUTTON_DEFAULT_OPTIONS, CUI_BUTTON_OPTIONS, CUI_DEFAULT_THEME, CUI_DIALOGS, CUI_DIALOG_CONTEXT, CUI_DIALOG_DEFAULT_OPTIONS, CUI_DIALOG_OPTIONS, CUI_NOTIFICATION_DEFAULT_OPTIONS, CUI_NOTIFICATION_OPTIONS, CUI_ROOT_SELECTOR, CUI_TEXT_FIELD_CONTROLLER, CUI_TEXT_FIELD_ICON_LEFT, CUI_TEXT_FIELD_ID, CUI_TEXT_FIELD_IS_ERROR, CUI_TEXT_FIELD_PLACEHOLDER, CUI_TEXT_FIELD_SIZE, CUI_TEXT_FILED_CONTROLLER_PROVIDER, CUI_THEME, CUI_THEME_STORAGE_DEFAULT_KEY, CUI_THEME_STORAGE_KEY, CuiAccordionComponent, CuiAccordionItemComponent, CuiAccordionModule, CuiAlertComponent, CuiAlertModule, CuiAlertService, CuiAlertsComponent, CuiBadgeComponent, CuiBadgeModule, CuiBannerComponent, CuiBannerModule, CuiBreadcrumbComponent, CuiBreadcrumbsComponent, CuiBreadcrumbsModule, CuiButtonComponent, CuiButtonGroupComponent, CuiButtonGroupModule, CuiButtonModule, CuiCheckboxComponent, CuiCheckboxModule, CuiContextMenuComponent, CuiContextMenuModule, CuiDialogActionsComponent, CuiDialogComponent, CuiDialogHeaderComponent, CuiDialogModule, CuiDialogService, CuiDialogsComponent, CuiFormFieldComponent, CuiFormFieldModule, CuiHintComponent, CuiHintModule, CuiIconButtonComponent, CuiIconButtonModule, CuiInputModule, CuiInputNumberComponent, CuiInputNumberModule, CuiInputPasswordComponent, CuiInputPasswordModule, CuiInputTextComponent, CuiLabelComponent, CuiLabelModule, CuiNotificationComponent, CuiNotificationModule, CuiRadioComponent, CuiRadioModule, CuiRootComponent, CuiRootModule, CuiSelectComponent, CuiSelectModule, CuiSvgComponent, CuiSvgModule, CuiTextFieldController, CuiTextFieldControllerModule, CuiTextFieldIconLeftDirective, CuiTextFieldIdDirective, CuiTextFieldIsErrorDirective, CuiTextFieldPlaceholderDirective, CuiTextFieldSizeDirective, CuiTextareaComponent, CuiTextareaModule, CuiThemeService, CuiToggleComponent, CuiToggleModule, cuiRemoveSpaces, cuiReplace };
2230
+ export { CUI_ALERTS, CUI_ALERT_CONTEXT, CUI_ALERT_DEFAULT_OPTIONS, CUI_ALERT_OPTIONS, CUI_BANNER_DEFAULT_OPTIONS, CUI_BANNER_OPTIONS, CUI_BUTTON_DEFAULT_OPTIONS, CUI_BUTTON_OPTIONS, CUI_DEFAULT_THEME, CUI_DIALOGS, CUI_DIALOG_CONTEXT, CUI_DIALOG_DEFAULT_OPTIONS, CUI_DIALOG_OPTIONS, CUI_NOTIFICATION_DEFAULT_OPTIONS, CUI_NOTIFICATION_OPTIONS, CUI_ROOT_SELECTOR, CUI_TAB_ACTIVATE, CUI_TEXT_FIELD_CONTROLLER, CUI_TEXT_FIELD_ICON_LEFT, CUI_TEXT_FIELD_ID, CUI_TEXT_FIELD_IS_ERROR, CUI_TEXT_FIELD_PLACEHOLDER, CUI_TEXT_FIELD_SIZE, CUI_TEXT_FILED_CONTROLLER_PROVIDER, CUI_THEME, CUI_THEME_STORAGE_DEFAULT_KEY, CUI_THEME_STORAGE_KEY, CuiAccordionComponent, CuiAccordionItemComponent, CuiAccordionModule, CuiAlertComponent, CuiAlertModule, CuiAlertService, CuiAlertsComponent, CuiBadgeComponent, CuiBadgeModule, CuiBannerComponent, CuiBannerModule, CuiBreadcrumbComponent, CuiBreadcrumbsComponent, CuiBreadcrumbsModule, CuiButtonComponent, CuiButtonGroupComponent, CuiButtonGroupModule, CuiButtonModule, CuiCheckboxComponent, CuiCheckboxModule, CuiContextMenuComponent, CuiContextMenuModule, CuiDialogActionsComponent, CuiDialogComponent, CuiDialogHeaderComponent, CuiDialogModule, CuiDialogService, CuiDialogsComponent, CuiFormFieldComponent, CuiFormFieldModule, CuiHintComponent, CuiHintModule, CuiIconButtonComponent, CuiIconButtonModule, CuiInputModule, CuiInputNumberComponent, CuiInputNumberModule, CuiInputPasswordComponent, CuiInputPasswordModule, CuiInputTextComponent, CuiLabelComponent, CuiLabelModule, CuiNotificationComponent, CuiNotificationModule, CuiRadioComponent, CuiRadioModule, CuiRootComponent, CuiRootModule, CuiSelectComponent, CuiSelectModule, CuiSvgComponent, CuiSvgModule, CuiTabComponent, CuiTabsComponent, CuiTabsModule, CuiTextFieldController, CuiTextFieldControllerModule, CuiTextFieldIconLeftDirective, CuiTextFieldIdDirective, CuiTextFieldIsErrorDirective, CuiTextFieldPlaceholderDirective, CuiTextFieldSizeDirective, CuiTextareaComponent, CuiTextareaModule, CuiThemeService, CuiToggleComponent, CuiToggleModule, cuiRemoveSpaces, cuiReplace };
2138
2231
  //# sourceMappingURL=cuby-ui-core.mjs.map