@cuby-ui/core 0.0.112 → 0.0.114

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.
@@ -1,10 +1,25 @@
1
- import { EventEmitter } from '@angular/core';
1
+ import { EventEmitter, TemplateRef } from '@angular/core';
2
+ import type { CuiValueOf } from '@cuby-ui/cdk';
2
3
  import * as i0 from "@angular/core";
4
+ declare const HeadingType: {
5
+ readonly String: "string";
6
+ readonly Template: "template";
7
+ };
8
+ type IHeadingType = CuiValueOf<typeof HeadingType>;
3
9
  export declare class CuiDialogHeaderComponent {
4
- heading?: string;
10
+ protected readonly HeadingType: {
11
+ readonly String: "string";
12
+ readonly Template: "template";
13
+ };
14
+ protected _heading: TemplateRef<unknown> | string;
15
+ protected headingType: IHeadingType;
16
+ protected get headingTemplateRef(): TemplateRef<unknown>;
17
+ set heading(value: TemplateRef<unknown> | string);
5
18
  subheading?: string;
6
19
  readonly closed: EventEmitter<MouseEvent>;
7
20
  protected onClose(event: MouseEvent): void;
21
+ private changeHeadingType;
8
22
  static ɵfac: i0.ɵɵFactoryDeclaration<CuiDialogHeaderComponent, never>;
9
- static ɵcmp: i0.ɵɵComponentDeclaration<CuiDialogHeaderComponent, "header[cuiDialogHeader]", never, { "heading": "heading"; "subheading": "subheading"; }, { "closed": "closed"; }, never, ["*"], false, never>;
23
+ static ɵcmp: i0.ɵɵComponentDeclaration<CuiDialogHeaderComponent, "header[cuiDialogHeader][heading]", never, { "heading": "heading"; "subheading": "subheading"; }, { "closed": "closed"; }, never, ["*"], false, never>;
10
24
  }
25
+ export {};
@@ -5,12 +5,12 @@ import type { CuiValueOf } from '@cuby-ui/cdk';
5
5
  import type { CuiDialogSize } from './dialog.interfaces';
6
6
  import * as i0 from "@angular/core";
7
7
  import * as i1 from "@cuby-ui/cdk";
8
- export declare const ContentType: {
8
+ declare const ContentType: {
9
9
  readonly String: "string";
10
10
  readonly Template: "template";
11
11
  readonly Component: "component";
12
12
  };
13
- export type IContentType = CuiValueOf<typeof ContentType>;
13
+ type IContentType = CuiValueOf<typeof ContentType>;
14
14
  export declare class CuiDialogComponent implements OnInit, OnDestroy {
15
15
  protected readonly document: Document;
16
16
  protected readonly element: HTMLElement;
@@ -34,3 +34,4 @@ export declare class CuiDialogComponent implements OnInit, OnDestroy {
34
34
  static ɵfac: i0.ɵɵFactoryDeclaration<CuiDialogComponent, never>;
35
35
  static ɵcmp: i0.ɵɵComponentDeclaration<CuiDialogComponent, "cui-dialog", never, {}, {}, never, never, false, [{ directive: typeof i1.CuiFocusTrapDirective; inputs: {}; outputs: {}; }]>;
36
36
  }
37
+ export {};
@@ -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
+ }
@@ -1,20 +1,44 @@
1
- import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, TemplateRef } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  import * as i1 from "@angular/common";
4
4
  import * as i2 from "../../button/button.component";
5
+ // TODO: сделать структурную директиву
6
+ const HeadingType = {
7
+ String: 'string',
8
+ Template: 'template',
9
+ };
5
10
  export class CuiDialogHeaderComponent {
6
11
  constructor() {
12
+ this.HeadingType = HeadingType;
7
13
  this.closed = new EventEmitter();
8
14
  }
15
+ get headingTemplateRef() {
16
+ return this._heading;
17
+ }
18
+ set heading(value) {
19
+ this._heading = value;
20
+ this.changeHeadingType();
21
+ }
22
+ ;
9
23
  onClose(event) {
10
24
  this.closed.emit(event);
11
25
  }
26
+ changeHeadingType() {
27
+ switch (true) {
28
+ case (typeof this._heading === 'string'):
29
+ this.headingType = HeadingType.String;
30
+ return;
31
+ case (this._heading instanceof TemplateRef):
32
+ this.headingType = HeadingType.Template;
33
+ return;
34
+ }
35
+ }
12
36
  }
13
37
  CuiDialogHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiDialogHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
14
- CuiDialogHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CuiDialogHeaderComponent, selector: "header[cuiDialogHeader]", inputs: { heading: "heading", subheading: "subheading" }, outputs: { closed: "closed" }, ngImport: i0, template: "<h2 *ngIf=\"heading\" class=\"c-heading\">{{ heading }}</h2>\n<button\n cuiButton\n type=\"button\"\n appearance=\"ghost\"\n icon=\"cuiIconClearSm\"\n class=\"c-button\"\n (click)=\"onClose($event)\"\n></button>\n<span *ngIf=\"subheading\">{{ subheading }}</span>\n<ng-content />\n", styles: [":host{padding:16px 24px;font-weight:500;font-size:14px;line-height:20px;position:relative;display:flex;flex-direction:column;gap:4px;font-family:var(--cui-main-font);color:var(--cui-base-500)}.c-heading{font-weight:500;font-size:16px;line-height:24px;width:calc(100% - 36px);margin:0;color:var(--cui-base-900)}.c-button{position:absolute;top:12px;right:12px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.CuiButtonComponent, selector: "button[cuiButton], a[cuiButton]", inputs: ["shape", "disabled", "isLoaderShown", "icon", "iconRight", "appearance", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
38
+ CuiDialogHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CuiDialogHeaderComponent, selector: "header[cuiDialogHeader][heading]", inputs: { heading: "heading", subheading: "subheading" }, outputs: { closed: "closed" }, ngImport: i0, template: "<div class=\"c-heading\" [ngSwitch]=\"headingType\">\n <ng-container *ngSwitchCase=\"HeadingType.String\">\n {{ _heading }}\n </ng-container>\n <ng-container *ngSwitchCase=\"HeadingType.Template\">\n <ng-container *ngTemplateOutlet=\"headingTemplateRef\"></ng-container>\n </ng-container>\n</div>\n<button\n cuiButton\n type=\"button\"\n appearance=\"ghost\"\n icon=\"cuiIconClearSm\"\n class=\"c-button\"\n (click)=\"onClose($event)\"\n></button>\n<span *ngIf=\"subheading\">{{ subheading }}</span>\n<ng-content />\n", styles: [":host{padding:16px 24px;font-weight:500;font-size:14px;line-height:20px;position:relative;display:flex;flex-direction:column;gap:4px;font-family:var(--cui-main-font);color:var(--cui-base-500)}.c-heading{font-weight:500;font-size:16px;line-height:24px;width:calc(100% - 36px);color:var(--cui-base-900)}.c-button{position:absolute;top:12px;right:12px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i2.CuiButtonComponent, selector: "button[cuiButton], a[cuiButton]", inputs: ["shape", "disabled", "isLoaderShown", "icon", "iconRight", "appearance", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
15
39
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiDialogHeaderComponent, decorators: [{
16
40
  type: Component,
17
- args: [{ selector: 'header[cuiDialogHeader]', changeDetection: ChangeDetectionStrategy.OnPush, template: "<h2 *ngIf=\"heading\" class=\"c-heading\">{{ heading }}</h2>\n<button\n cuiButton\n type=\"button\"\n appearance=\"ghost\"\n icon=\"cuiIconClearSm\"\n class=\"c-button\"\n (click)=\"onClose($event)\"\n></button>\n<span *ngIf=\"subheading\">{{ subheading }}</span>\n<ng-content />\n", styles: [":host{padding:16px 24px;font-weight:500;font-size:14px;line-height:20px;position:relative;display:flex;flex-direction:column;gap:4px;font-family:var(--cui-main-font);color:var(--cui-base-500)}.c-heading{font-weight:500;font-size:16px;line-height:24px;width:calc(100% - 36px);margin:0;color:var(--cui-base-900)}.c-button{position:absolute;top:12px;right:12px}\n"] }]
41
+ args: [{ selector: 'header[cuiDialogHeader][heading]', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"c-heading\" [ngSwitch]=\"headingType\">\n <ng-container *ngSwitchCase=\"HeadingType.String\">\n {{ _heading }}\n </ng-container>\n <ng-container *ngSwitchCase=\"HeadingType.Template\">\n <ng-container *ngTemplateOutlet=\"headingTemplateRef\"></ng-container>\n </ng-container>\n</div>\n<button\n cuiButton\n type=\"button\"\n appearance=\"ghost\"\n icon=\"cuiIconClearSm\"\n class=\"c-button\"\n (click)=\"onClose($event)\"\n></button>\n<span *ngIf=\"subheading\">{{ subheading }}</span>\n<ng-content />\n", styles: [":host{padding:16px 24px;font-weight:500;font-size:14px;line-height:20px;position:relative;display:flex;flex-direction:column;gap:4px;font-family:var(--cui-main-font);color:var(--cui-base-500)}.c-heading{font-weight:500;font-size:16px;line-height:24px;width:calc(100% - 36px);color:var(--cui-base-900)}.c-button{position:absolute;top:12px;right:12px}\n"] }]
18
42
  }], propDecorators: { heading: [{
19
43
  type: Input
20
44
  }], subheading: [{
@@ -22,4 +46,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
22
46
  }], closed: [{
23
47
  type: Output
24
48
  }] } });
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvZGlhbG9nL2RpYWxvZy1oZWFkZXIvZGlhbG9nLWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvZGlhbG9nL2RpYWxvZy1oZWFkZXIvZGlhbG9nLWhlYWRlci50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFRaEcsTUFBTSxPQUFPLHdCQUF3QjtJQU5yQztRQWNrQixXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQWMsQ0FBQztLQUt6RDtJQUhXLE9BQU8sQ0FBQyxLQUFpQjtRQUNqQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxQixDQUFDOztzSEFaVSx3QkFBd0I7MEdBQXhCLHdCQUF3Qix3SkNSckMsaVNBV0E7NEZESGEsd0JBQXdCO2tCQU5wQyxTQUFTOytCQUNFLHlCQUF5QixtQkFHbEIsdUJBQXVCLENBQUMsTUFBTTs4QkFJeEMsT0FBTztzQkFEYixLQUFLO2dCQUlDLFVBQVU7c0JBRGhCLEtBQUs7Z0JBSVUsTUFBTTtzQkFEckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdoZWFkZXJbY3VpRGlhbG9nSGVhZGVyXScsXG4gIHRlbXBsYXRlVXJsOiAnLi9kaWFsb2ctaGVhZGVyLnRlbXBsYXRlLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kaWFsb2ctaGVhZGVyLnN0eWxlLnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgQ3VpRGlhbG9nSGVhZGVyQ29tcG9uZW50IHtcbiAgQElucHV0KClcbiAgcHVibGljIGhlYWRpbmc/OiBzdHJpbmc7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHN1YmhlYWRpbmc/OiBzdHJpbmc7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBjbG9zZWQgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XG5cbiAgcHJvdGVjdGVkIG9uQ2xvc2UoZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmNsb3NlZC5lbWl0KGV2ZW50KTtcbiAgfVxufVxuIiwiPGgyICpuZ0lmPVwiaGVhZGluZ1wiIGNsYXNzPVwiYy1oZWFkaW5nXCI+e3sgaGVhZGluZyB9fTwvaDI+XG48YnV0dG9uXG4gIGN1aUJ1dHRvblxuICB0eXBlPVwiYnV0dG9uXCJcbiAgYXBwZWFyYW5jZT1cImdob3N0XCJcbiAgaWNvbj1cImN1aUljb25DbGVhclNtXCJcbiAgY2xhc3M9XCJjLWJ1dHRvblwiXG4gIChjbGljayk9XCJvbkNsb3NlKCRldmVudClcIlxuPjwvYnV0dG9uPlxuPHNwYW4gKm5nSWY9XCJzdWJoZWFkaW5nXCI+e3sgc3ViaGVhZGluZyB9fTwvc3Bhbj5cbjxuZy1jb250ZW50IC8+XG4iXX0=
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvZGlhbG9nL2RpYWxvZy1oZWFkZXIvZGlhbG9nLWhlYWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvZGlhbG9nL2RpYWxvZy1oZWFkZXIvZGlhbG9nLWhlYWRlci50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBRzdHLHNDQUFzQztBQUN0QyxNQUFNLFdBQVcsR0FBRztJQUNsQixNQUFNLEVBQUUsUUFBUTtJQUNoQixRQUFRLEVBQUUsVUFBVTtDQUNaLENBQUM7QUFVWCxNQUFNLE9BQU8sd0JBQXdCO0lBTnJDO1FBT3FCLGdCQUFXLEdBQUcsV0FBVyxDQUFDO1FBbUI3QixXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQWMsQ0FBQztLQW1CekQ7SUFqQ0MsSUFBYyxrQkFBa0I7UUFDOUIsT0FBTyxJQUFJLENBQUMsUUFBZ0MsQ0FBQztJQUMvQyxDQUFDO0lBRUQsSUFDVyxPQUFPLENBQUMsS0FBb0M7UUFDckQsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFDdEIsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUFBLENBQUM7SUFRUSxPQUFPLENBQUMsS0FBaUI7UUFDakMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQUVPLGlCQUFpQjtRQUN2QixRQUFRLElBQUksRUFBRTtZQUNaLEtBQUssQ0FBQyxPQUFPLElBQUksQ0FBQyxRQUFRLEtBQUssUUFBUSxDQUFDO2dCQUN0QyxJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQyxNQUFNLENBQUM7Z0JBRXRDLE9BQU87WUFFVCxLQUFLLENBQUMsSUFBSSxDQUFDLFFBQVEsWUFBWSxXQUFXLENBQUM7Z0JBQ3pDLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDLFFBQVEsQ0FBQztnQkFFeEMsT0FBTztTQUNWO0lBQ0gsQ0FBQzs7c0hBdENVLHdCQUF3QjswR0FBeEIsd0JBQXdCLGlLQ2pCckMsdWhCQWtCQTs0RkREYSx3QkFBd0I7a0JBTnBDLFNBQVM7K0JBQ0Usa0NBQWtDLG1CQUczQix1QkFBdUIsQ0FBQyxNQUFNOzhCQWFwQyxPQUFPO3NCQURqQixLQUFLO2dCQU9DLFVBQVU7c0JBRGhCLEtBQUs7Z0JBSVUsTUFBTTtzQkFEckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB0eXBlIHsgQ3VpVmFsdWVPZiB9IGZyb20gJ0BjdWJ5LXVpL2Nkayc7XG5cbi8vIFRPRE86INGB0LTQtdC70LDRgtGMINGB0YLRgNGD0LrRgtGD0YDQvdGD0Y4g0LTQuNGA0LXQutGC0LjQstGDXG5jb25zdCBIZWFkaW5nVHlwZSA9IHtcbiAgU3RyaW5nOiAnc3RyaW5nJyxcbiAgVGVtcGxhdGU6ICd0ZW1wbGF0ZScsXG59IGFzIGNvbnN0O1xuXG50eXBlIElIZWFkaW5nVHlwZSA9IEN1aVZhbHVlT2Y8dHlwZW9mIEhlYWRpbmdUeXBlPjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaGVhZGVyW2N1aURpYWxvZ0hlYWRlcl1baGVhZGluZ10nLFxuICB0ZW1wbGF0ZVVybDogJy4vZGlhbG9nLWhlYWRlci50ZW1wbGF0ZS5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGlhbG9nLWhlYWRlci5zdHlsZS5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEN1aURpYWxvZ0hlYWRlckNvbXBvbmVudCB7XG4gIHByb3RlY3RlZCByZWFkb25seSBIZWFkaW5nVHlwZSA9IEhlYWRpbmdUeXBlO1xuXG4gIHByb3RlY3RlZCBfaGVhZGluZyE6IFRlbXBsYXRlUmVmPHVua25vd24+IHwgc3RyaW5nO1xuICBwcm90ZWN0ZWQgaGVhZGluZ1R5cGUhOiBJSGVhZGluZ1R5cGU7XG5cbiAgcHJvdGVjdGVkIGdldCBoZWFkaW5nVGVtcGxhdGVSZWYoKTogVGVtcGxhdGVSZWY8dW5rbm93bj4ge1xuICAgIHJldHVybiB0aGlzLl9oZWFkaW5nIGFzIFRlbXBsYXRlUmVmPHVua25vd24+O1xuICB9XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBoZWFkaW5nKHZhbHVlOiBUZW1wbGF0ZVJlZjx1bmtub3duPiB8IHN0cmluZykge1xuICAgIHRoaXMuX2hlYWRpbmcgPSB2YWx1ZTtcbiAgICB0aGlzLmNoYW5nZUhlYWRpbmdUeXBlKCk7XG4gIH07XG5cbiAgQElucHV0KClcbiAgcHVibGljIHN1YmhlYWRpbmc/OiBzdHJpbmc7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyByZWFkb25seSBjbG9zZWQgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XG5cbiAgcHJvdGVjdGVkIG9uQ2xvc2UoZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICB0aGlzLmNsb3NlZC5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIHByaXZhdGUgY2hhbmdlSGVhZGluZ1R5cGUoKTogdm9pZCB7XG4gICAgc3dpdGNoICh0cnVlKSB7XG4gICAgICBjYXNlICh0eXBlb2YgdGhpcy5faGVhZGluZyA9PT0gJ3N0cmluZycpOlxuICAgICAgICB0aGlzLmhlYWRpbmdUeXBlID0gSGVhZGluZ1R5cGUuU3RyaW5nO1xuXG4gICAgICAgIHJldHVybjtcblxuICAgICAgY2FzZSAodGhpcy5faGVhZGluZyBpbnN0YW5jZW9mIFRlbXBsYXRlUmVmKTpcbiAgICAgICAgdGhpcy5oZWFkaW5nVHlwZSA9IEhlYWRpbmdUeXBlLlRlbXBsYXRlO1xuXG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJjLWhlYWRpbmdcIiBbbmdTd2l0Y2hdPVwiaGVhZGluZ1R5cGVcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiSGVhZGluZ1R5cGUuU3RyaW5nXCI+XG4gICAge3sgX2hlYWRpbmcgfX1cbiAgPC9uZy1jb250YWluZXI+XG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIkhlYWRpbmdUeXBlLlRlbXBsYXRlXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImhlYWRpbmdUZW1wbGF0ZVJlZlwiPjwvbmctY29udGFpbmVyPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuPGJ1dHRvblxuICBjdWlCdXR0b25cbiAgdHlwZT1cImJ1dHRvblwiXG4gIGFwcGVhcmFuY2U9XCJnaG9zdFwiXG4gIGljb249XCJjdWlJY29uQ2xlYXJTbVwiXG4gIGNsYXNzPVwiYy1idXR0b25cIlxuICAoY2xpY2spPVwib25DbG9zZSgkZXZlbnQpXCJcbj48L2J1dHRvbj5cbjxzcGFuICpuZ0lmPVwic3ViaGVhZGluZ1wiPnt7IHN1YmhlYWRpbmcgfX08L3NwYW4+XG48bmctY29udGVudCAvPlxuIl19
@@ -6,7 +6,8 @@ import { CUI_DIALOG_CONTEXT } from './dialog.tokens';
6
6
  import * as i0 from "@angular/core";
7
7
  import * as i1 from "@cuby-ui/cdk";
8
8
  import * as i2 from "@angular/common";
9
- export const ContentType = {
9
+ // TODO: сделать структурную директиву
10
+ const ContentType = {
10
11
  String: 'string',
11
12
  Template: 'template',
12
13
  Component: 'component'
@@ -72,4 +73,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
72
73
  type: HostListener,
73
74
  args: ['document:keydown.escape', ['$event']]
74
75
  }] } });
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9kaWFsb2cvZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9kaWFsb2cvZGlhbG9nLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQVEsTUFBTSxlQUFlLENBQUM7QUFDaEUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFcEcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBR3JELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7O0FBRXJELE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRztJQUN6QixNQUFNLEVBQUUsUUFBUTtJQUNoQixRQUFRLEVBQUUsVUFBVTtJQUNwQixTQUFTLEVBQUUsV0FBVztDQUNkLENBQUM7QUFXWCxNQUFNLE9BQU8sa0JBQWtCO0lBUC9CO1FBUXFCLGFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDNUIsWUFBTyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxhQUE0QixDQUFDO1FBQzFELFlBQU8sR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUVyQywwQkFBcUIsR0FBRyxlQUFlLENBQUM7UUFFeEMsZ0JBQVcsR0FBRyxXQUFXLENBQUM7UUFFbkMsZ0JBQVcsR0FBaUIsV0FBVyxDQUFDLFNBQVMsQ0FBQztLQXdEN0Q7SUF0REMsSUFDYyxJQUFJO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7SUFDM0IsQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVELElBQWMsa0JBQWtCO1FBQzlCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUErQixDQUFDO0lBQ3RELENBQUM7SUFFRCxJQUFjLGFBQWE7UUFDekIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQXdCLENBQUM7SUFDL0MsQ0FBQztJQUdTLFFBQVE7UUFDZCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEVBQUU7WUFDckQsT0FBTztTQUNSO1FBRUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRU8sZUFBZTtRQUNyQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQztRQUVyQyxRQUFRLElBQUksRUFBRTtZQUNaLEtBQUssQ0FBQyxPQUFPLE9BQU8sS0FBSyxRQUFRLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDLE1BQU0sQ0FBQztnQkFFdEMsT0FBTztZQUVULEtBQUssQ0FBQyxPQUFPLFlBQVksV0FBVyxDQUFDO2dCQUNuQyxJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQyxRQUFRLENBQUM7Z0JBRXhDLE9BQU87U0FDVjtJQUNILENBQUM7SUFFTyxvQkFBb0I7UUFDMUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7SUFDL0MsQ0FBQztJQUVPLHVCQUF1QjtRQUM3QixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUN6QyxDQUFDOztnSEFoRVUsa0JBQWtCO29HQUFsQixrQkFBa0Isb09DekIvQiwyaEJBYUE7NEZEWWEsa0JBQWtCO2tCQVA5QixTQUFTOytCQUNFLFlBQVksbUJBR0wsdUJBQXVCLENBQUMsTUFBTSxrQkFDL0IsQ0FBQyxxQkFBcUIsQ0FBQzs4QkFjekIsSUFBSTtzQkFEakIsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBdUJuQixRQUFRO3NCQURqQixZQUFZO3VCQUFDLHlCQUF5QixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSG9zdEJpbmRpbmcsIEhvc3RMaXN0ZW5lciwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgaW5qZWN0LCBUZW1wbGF0ZVJlZiwgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHR5cGUgeyBDdWlWYWx1ZU9mIH0gZnJvbSAnQGN1YnktdWkvY2RrJztcbmltcG9ydCB7IEN1aUZvY3VzVHJhcERpcmVjdGl2ZSB9IGZyb20gJ0BjdWJ5LXVpL2Nkayc7XG5cbmltcG9ydCB0eXBlIHsgQ3VpRGlhbG9nU2l6ZSB9IGZyb20gJy4vZGlhbG9nLmludGVyZmFjZXMnO1xuaW1wb3J0IHsgQ1VJX0RJQUxPR19DT05URVhUIH0gZnJvbSAnLi9kaWFsb2cudG9rZW5zJztcblxuZXhwb3J0IGNvbnN0IENvbnRlbnRUeXBlID0ge1xuICBTdHJpbmc6ICdzdHJpbmcnLFxuICBUZW1wbGF0ZTogJ3RlbXBsYXRlJyxcbiAgQ29tcG9uZW50OiAnY29tcG9uZW50J1xufSBhcyBjb25zdDtcblxuZXhwb3J0IHR5cGUgSUNvbnRlbnRUeXBlID0gQ3VpVmFsdWVPZjx0eXBlb2YgQ29udGVudFR5cGU+O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjdWktZGlhbG9nJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2RpYWxvZy50ZW1wbGF0ZS5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZGlhbG9nLnN0eWxlLnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGhvc3REaXJlY3RpdmVzOiBbQ3VpRm9jdXNUcmFwRGlyZWN0aXZlXVxufSlcbmV4cG9ydCBjbGFzcyBDdWlEaWFsb2dDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHByb3RlY3RlZCByZWFkb25seSBkb2N1bWVudCA9IGluamVjdChET0NVTUVOVCk7XG4gIHByb3RlY3RlZCByZWFkb25seSBlbGVtZW50ID0gaW5qZWN0KEVsZW1lbnRSZWYpLm5hdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XG4gIHByb3RlY3RlZCByZWFkb25seSBjb250ZXh0ID0gaW5qZWN0KENVSV9ESUFMT0dfQ09OVEVYVCk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IExBU1RfT0ZfVFlQRV9TRUxFQ1RPUiA9ICc6bGFzdC1vZi10eXBlJztcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgQ29udGVudFR5cGUgPSBDb250ZW50VHlwZTtcblxuICBwcm90ZWN0ZWQgY29udGVudFR5cGU6IElDb250ZW50VHlwZSA9IENvbnRlbnRUeXBlLkNvbXBvbmVudDtcblxuICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS1zaXplJylcbiAgcHJvdGVjdGVkIGdldCBzaXplKCk6IEN1aURpYWxvZ1NpemUge1xuICAgIHJldHVybiB0aGlzLmNvbnRleHQuc2l6ZTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmluaXRCb2R5U2Nyb2xsSGlkaW5nKCk7XG4gICAgdGhpcy5pbml0Q29udGVudFR5cGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmRlc3Ryb3lCb2R5U2Nyb2xsSGlkaW5nKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IGNvbnRlbnRUZW1wbGF0ZVJlZigpOiBUZW1wbGF0ZVJlZjx1bmtub3duPiB7XG4gICAgcmV0dXJuIHRoaXMuY29udGV4dC5jb250ZW50IGFzIFRlbXBsYXRlUmVmPHVua25vd24+O1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCBjb21wb25lbnRUeXBlKCk6IFR5cGU8dW5rbm93bj4ge1xuICAgIHJldHVybiB0aGlzLmNvbnRleHQuY29udGVudCBhcyBUeXBlPHVua25vd24+O1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6a2V5ZG93bi5lc2NhcGUnLCBbJyRldmVudCddKVxuICBwcm90ZWN0ZWQgb25Fc2NhcGUoKTogdm9pZCB7XG4gICAgICBpZiAoIXRoaXMuZWxlbWVudC5tYXRjaGVzKHRoaXMuTEFTVF9PRl9UWVBFX1NFTEVDVE9SKSkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHRoaXMuY29udGV4dC5jb21wbGV0ZVdpdGgoKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdENvbnRlbnRUeXBlKCk6IHZvaWQge1xuICAgIGNvbnN0IGNvbnRlbnQgPSB0aGlzLmNvbnRleHQuY29udGVudDtcblxuICAgIHN3aXRjaCAodHJ1ZSkge1xuICAgICAgY2FzZSAodHlwZW9mIGNvbnRlbnQgPT09ICdzdHJpbmcnKTpcbiAgICAgICAgdGhpcy5jb250ZW50VHlwZSA9IENvbnRlbnRUeXBlLlN0cmluZztcblxuICAgICAgICByZXR1cm47XG5cbiAgICAgIGNhc2UgKGNvbnRlbnQgaW5zdGFuY2VvZiBUZW1wbGF0ZVJlZik6XG4gICAgICAgIHRoaXMuY29udGVudFR5cGUgPSBDb250ZW50VHlwZS5UZW1wbGF0ZTtcblxuICAgICAgICByZXR1cm47XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBpbml0Qm9keVNjcm9sbEhpZGluZygpOiB2b2lkIHtcbiAgICB0aGlzLmRvY3VtZW50LmJvZHkuc3R5bGUub3ZlcmZsb3cgPSAnaGlkZGVuJztcbiAgfVxuXG4gIHByaXZhdGUgZGVzdHJveUJvZHlTY3JvbGxIaWRpbmcoKTogdm9pZCB7XG4gICAgdGhpcy5kb2N1bWVudC5ib2R5LnN0eWxlLm92ZXJmbG93ID0gJyc7XG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgW25nU3dpdGNoXT1cImNvbnRlbnRUeXBlXCI+XG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIkNvbnRlbnRUeXBlLlN0cmluZ1wiPlxuICAgIHt7IGNvbnRleHQuY29udGVudCB9fVxuICA8L25nLWNvbnRhaW5lcj5cbiAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiQ29udGVudFR5cGUuVGVtcGxhdGVcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudFRlbXBsYXRlUmVmOyBjb250ZXh0OiBjb250ZXh0XCI+PC9uZy1jb250YWluZXI+XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCJDb250ZW50VHlwZS5Db21wb25lbnRcIj5cbiAgICA8ZGl2IGNsYXNzPVwiYy1jb21wb25lbnQtY29udGFpbmVyXCI+XG4gICAgICA8bmctY29udGFpbmVyICpuZ0NvbXBvbmVudE91dGxldD1cImNvbXBvbmVudFR5cGVcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgPC9uZy1jb250YWluZXI+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9kaWFsb2cvZGlhbG9nLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9kaWFsb2cvZGlhbG9nLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQVEsTUFBTSxlQUFlLENBQUM7QUFDaEUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzNDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFcEcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBR3JELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7O0FBRXJELHNDQUFzQztBQUN0QyxNQUFNLFdBQVcsR0FBRztJQUNsQixNQUFNLEVBQUUsUUFBUTtJQUNoQixRQUFRLEVBQUUsVUFBVTtJQUNwQixTQUFTLEVBQUUsV0FBVztDQUNkLENBQUM7QUFXWCxNQUFNLE9BQU8sa0JBQWtCO0lBUC9CO1FBUXFCLGFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDNUIsWUFBTyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxhQUE0QixDQUFDO1FBQzFELFlBQU8sR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUVyQywwQkFBcUIsR0FBRyxlQUFlLENBQUM7UUFFeEMsZ0JBQVcsR0FBRyxXQUFXLENBQUM7UUFFbkMsZ0JBQVcsR0FBaUIsV0FBVyxDQUFDLFNBQVMsQ0FBQztLQXdEN0Q7SUF0REMsSUFDYyxJQUFJO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7SUFDM0IsQ0FBQztJQUVNLFFBQVE7UUFDYixJQUFJLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVELElBQWMsa0JBQWtCO1FBQzlCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUErQixDQUFDO0lBQ3RELENBQUM7SUFFRCxJQUFjLGFBQWE7UUFDekIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQXdCLENBQUM7SUFDL0MsQ0FBQztJQUdTLFFBQVE7UUFDZCxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEVBQUU7WUFDckQsT0FBTztTQUNSO1FBRUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNoQyxDQUFDO0lBRU8sZUFBZTtRQUNyQixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQztRQUVyQyxRQUFRLElBQUksRUFBRTtZQUNaLEtBQUssQ0FBQyxPQUFPLE9BQU8sS0FBSyxRQUFRLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDLE1BQU0sQ0FBQztnQkFFdEMsT0FBTztZQUVULEtBQUssQ0FBQyxPQUFPLFlBQVksV0FBVyxDQUFDO2dCQUNuQyxJQUFJLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQyxRQUFRLENBQUM7Z0JBRXhDLE9BQU87U0FDVjtJQUNILENBQUM7SUFFTyxvQkFBb0I7UUFDMUIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7SUFDL0MsQ0FBQztJQUVPLHVCQUF1QjtRQUM3QixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQztJQUN6QyxDQUFDOztnSEFoRVUsa0JBQWtCO29HQUFsQixrQkFBa0Isb09DMUIvQiwyaEJBYUE7NEZEYWEsa0JBQWtCO2tCQVA5QixTQUFTOytCQUNFLFlBQVksbUJBR0wsdUJBQXVCLENBQUMsTUFBTSxrQkFDL0IsQ0FBQyxxQkFBcUIsQ0FBQzs4QkFjekIsSUFBSTtzQkFEakIsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBdUJuQixRQUFRO3NCQURqQixZQUFZO3VCQUFDLHlCQUF5QixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSG9zdEJpbmRpbmcsIEhvc3RMaXN0ZW5lciwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgaW5qZWN0LCBUZW1wbGF0ZVJlZiwgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHR5cGUgeyBDdWlWYWx1ZU9mIH0gZnJvbSAnQGN1YnktdWkvY2RrJztcbmltcG9ydCB7IEN1aUZvY3VzVHJhcERpcmVjdGl2ZSB9IGZyb20gJ0BjdWJ5LXVpL2Nkayc7XG5cbmltcG9ydCB0eXBlIHsgQ3VpRGlhbG9nU2l6ZSB9IGZyb20gJy4vZGlhbG9nLmludGVyZmFjZXMnO1xuaW1wb3J0IHsgQ1VJX0RJQUxPR19DT05URVhUIH0gZnJvbSAnLi9kaWFsb2cudG9rZW5zJztcblxuLy8gVE9ETzog0YHQtNC10LvQsNGC0Ywg0YHRgtGA0YPQutGC0YPRgNC90YPRjiDQtNC40YDQtdC60YLQuNCy0YNcbmNvbnN0IENvbnRlbnRUeXBlID0ge1xuICBTdHJpbmc6ICdzdHJpbmcnLFxuICBUZW1wbGF0ZTogJ3RlbXBsYXRlJyxcbiAgQ29tcG9uZW50OiAnY29tcG9uZW50J1xufSBhcyBjb25zdDtcblxudHlwZSBJQ29udGVudFR5cGUgPSBDdWlWYWx1ZU9mPHR5cGVvZiBDb250ZW50VHlwZT47XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2N1aS1kaWFsb2cnLFxuICB0ZW1wbGF0ZVVybDogJy4vZGlhbG9nLnRlbXBsYXRlLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kaWFsb2cuc3R5bGUuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdERpcmVjdGl2ZXM6IFtDdWlGb2N1c1RyYXBEaXJlY3RpdmVdXG59KVxuZXhwb3J0IGNsYXNzIEN1aURpYWxvZ0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGRvY3VtZW50ID0gaW5qZWN0KERPQ1VNRU5UKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGVsZW1lbnQgPSBpbmplY3QoRWxlbWVudFJlZikubmF0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudDtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGNvbnRleHQgPSBpbmplY3QoQ1VJX0RJQUxPR19DT05URVhUKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgTEFTVF9PRl9UWVBFX1NFTEVDVE9SID0gJzpsYXN0LW9mLXR5cGUnO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBDb250ZW50VHlwZSA9IENvbnRlbnRUeXBlO1xuXG4gIHByb3RlY3RlZCBjb250ZW50VHlwZTogSUNvbnRlbnRUeXBlID0gQ29udGVudFR5cGUuQ29tcG9uZW50O1xuXG4gIEBIb3N0QmluZGluZygnYXR0ci5kYXRhLXNpemUnKVxuICBwcm90ZWN0ZWQgZ2V0IHNpemUoKTogQ3VpRGlhbG9nU2l6ZSB7XG4gICAgcmV0dXJuIHRoaXMuY29udGV4dC5zaXplO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuaW5pdEJvZHlTY3JvbGxIaWRpbmcoKTtcbiAgICB0aGlzLmluaXRDb250ZW50VHlwZSgpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveUJvZHlTY3JvbGxIaWRpbmcoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXQgY29udGVudFRlbXBsYXRlUmVmKCk6IFRlbXBsYXRlUmVmPHVua25vd24+IHtcbiAgICByZXR1cm4gdGhpcy5jb250ZXh0LmNvbnRlbnQgYXMgVGVtcGxhdGVSZWY8dW5rbm93bj47XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IGNvbXBvbmVudFR5cGUoKTogVHlwZTx1bmtub3duPiB7XG4gICAgcmV0dXJuIHRoaXMuY29udGV4dC5jb250ZW50IGFzIFR5cGU8dW5rbm93bj47XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdkb2N1bWVudDprZXlkb3duLmVzY2FwZScsIFsnJGV2ZW50J10pXG4gIHByb3RlY3RlZCBvbkVzY2FwZSgpOiB2b2lkIHtcbiAgICAgIGlmICghdGhpcy5lbGVtZW50Lm1hdGNoZXModGhpcy5MQVNUX09GX1RZUEVfU0VMRUNUT1IpKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgdGhpcy5jb250ZXh0LmNvbXBsZXRlV2l0aCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0Q29udGVudFR5cGUoKTogdm9pZCB7XG4gICAgY29uc3QgY29udGVudCA9IHRoaXMuY29udGV4dC5jb250ZW50O1xuXG4gICAgc3dpdGNoICh0cnVlKSB7XG4gICAgICBjYXNlICh0eXBlb2YgY29udGVudCA9PT0gJ3N0cmluZycpOlxuICAgICAgICB0aGlzLmNvbnRlbnRUeXBlID0gQ29udGVudFR5cGUuU3RyaW5nO1xuXG4gICAgICAgIHJldHVybjtcblxuICAgICAgY2FzZSAoY29udGVudCBpbnN0YW5jZW9mIFRlbXBsYXRlUmVmKTpcbiAgICAgICAgdGhpcy5jb250ZW50VHlwZSA9IENvbnRlbnRUeXBlLlRlbXBsYXRlO1xuXG4gICAgICAgIHJldHVybjtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGluaXRCb2R5U2Nyb2xsSGlkaW5nKCk6IHZvaWQge1xuICAgIHRoaXMuZG9jdW1lbnQuYm9keS5zdHlsZS5vdmVyZmxvdyA9ICdoaWRkZW4nO1xuICB9XG5cbiAgcHJpdmF0ZSBkZXN0cm95Qm9keVNjcm9sbEhpZGluZygpOiB2b2lkIHtcbiAgICB0aGlzLmRvY3VtZW50LmJvZHkuc3R5bGUub3ZlcmZsb3cgPSAnJztcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciBbbmdTd2l0Y2hdPVwiY29udGVudFR5cGVcIj5cbiAgPG5nLWNvbnRhaW5lciAqbmdTd2l0Y2hDYXNlPVwiQ29udGVudFR5cGUuU3RyaW5nXCI+XG4gICAge3sgY29udGV4dC5jb250ZW50IH19XG4gIDwvbmctY29udGFpbmVyPlxuICA8bmctY29udGFpbmVyICpuZ1N3aXRjaENhc2U9XCJDb250ZW50VHlwZS5UZW1wbGF0ZVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjb250ZW50VGVtcGxhdGVSZWY7IGNvbnRleHQ6IGNvbnRleHRcIj48L25nLWNvbnRhaW5lcj5cbiAgPC9uZy1jb250YWluZXI+XG4gIDxuZy1jb250YWluZXIgKm5nU3dpdGNoQ2FzZT1cIkNvbnRlbnRUeXBlLkNvbXBvbmVudFwiPlxuICAgIDxkaXYgY2xhc3M9XCJjLWNvbXBvbmVudC1jb250YWluZXJcIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nQ29tcG9uZW50T3V0bGV0PVwiY29tcG9uZW50VHlwZVwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICA8L25nLWNvbnRhaW5lcj5cbjwvbmctY29udGFpbmVyPlxuIl19
@@ -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=
@@ -769,6 +769,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
769
769
  args: [{ selector: CUI_ROOT_SELECTOR, changeDetection: ChangeDetectionStrategy.OnPush, providers: [CuiDestroyService], template: "<div class=\"c-content\">\n <ng-content />\n</div>\n<cui-dialogs />\n<cui-alerts />\n", styles: [".c-content{isolation:isolate}\n"] }]
770
770
  }] });
771
771
 
772
+ // TODO: сделать структурную директиву
772
773
  const ContentType = {
773
774
  String: 'string',
774
775
  Template: 'template',
@@ -845,19 +846,43 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
845
846
  args: [{ selector: 'cui-dialog-actions', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"c-divider\"></div>\n<div class=\"c-content\">\n <ng-content />\n</div>\n", styles: [":host{padding-right:24px;padding-left:24px;padding-bottom:16px;display:block}.c-divider{position:relative;left:-24px;width:calc(100% + 48px);height:1px;margin-bottom:15px;background:var(--cui-base-200)}.c-content{display:flex;align-items:center;justify-content:flex-end;gap:12px}\n"] }]
846
847
  }] });
847
848
 
849
+ // TODO: сделать структурную директиву
850
+ const HeadingType = {
851
+ String: 'string',
852
+ Template: 'template',
853
+ };
848
854
  class CuiDialogHeaderComponent {
849
855
  constructor() {
856
+ this.HeadingType = HeadingType;
850
857
  this.closed = new EventEmitter();
851
858
  }
859
+ get headingTemplateRef() {
860
+ return this._heading;
861
+ }
862
+ set heading(value) {
863
+ this._heading = value;
864
+ this.changeHeadingType();
865
+ }
866
+ ;
852
867
  onClose(event) {
853
868
  this.closed.emit(event);
854
869
  }
870
+ changeHeadingType() {
871
+ switch (true) {
872
+ case (typeof this._heading === 'string'):
873
+ this.headingType = HeadingType.String;
874
+ return;
875
+ case (this._heading instanceof TemplateRef):
876
+ this.headingType = HeadingType.Template;
877
+ return;
878
+ }
879
+ }
855
880
  }
856
881
  CuiDialogHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiDialogHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
857
- CuiDialogHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CuiDialogHeaderComponent, selector: "header[cuiDialogHeader]", inputs: { heading: "heading", subheading: "subheading" }, outputs: { closed: "closed" }, ngImport: i0, template: "<h2 *ngIf=\"heading\" class=\"c-heading\">{{ heading }}</h2>\n<button\n cuiButton\n type=\"button\"\n appearance=\"ghost\"\n icon=\"cuiIconClearSm\"\n class=\"c-button\"\n (click)=\"onClose($event)\"\n></button>\n<span *ngIf=\"subheading\">{{ subheading }}</span>\n<ng-content />\n", styles: [":host{padding:16px 24px;font-weight:500;font-size:14px;line-height:20px;position:relative;display:flex;flex-direction:column;gap:4px;font-family:var(--cui-main-font);color:var(--cui-base-500)}.c-heading{font-weight:500;font-size:16px;line-height:24px;width:calc(100% - 36px);margin:0;color:var(--cui-base-900)}.c-button{position:absolute;top:12px;right:12px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: CuiButtonComponent, selector: "button[cuiButton], a[cuiButton]", inputs: ["shape", "disabled", "isLoaderShown", "icon", "iconRight", "appearance", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
882
+ CuiDialogHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CuiDialogHeaderComponent, selector: "header[cuiDialogHeader][heading]", inputs: { heading: "heading", subheading: "subheading" }, outputs: { closed: "closed" }, ngImport: i0, template: "<div class=\"c-heading\" [ngSwitch]=\"headingType\">\n <ng-container *ngSwitchCase=\"HeadingType.String\">\n {{ _heading }}\n </ng-container>\n <ng-container *ngSwitchCase=\"HeadingType.Template\">\n <ng-container *ngTemplateOutlet=\"headingTemplateRef\"></ng-container>\n </ng-container>\n</div>\n<button\n cuiButton\n type=\"button\"\n appearance=\"ghost\"\n icon=\"cuiIconClearSm\"\n class=\"c-button\"\n (click)=\"onClose($event)\"\n></button>\n<span *ngIf=\"subheading\">{{ subheading }}</span>\n<ng-content />\n", styles: [":host{padding:16px 24px;font-weight:500;font-size:14px;line-height:20px;position:relative;display:flex;flex-direction:column;gap:4px;font-family:var(--cui-main-font);color:var(--cui-base-500)}.c-heading{font-weight:500;font-size:16px;line-height:24px;width:calc(100% - 36px);color:var(--cui-base-900)}.c-button{position:absolute;top:12px;right:12px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: CuiButtonComponent, selector: "button[cuiButton], a[cuiButton]", inputs: ["shape", "disabled", "isLoaderShown", "icon", "iconRight", "appearance", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
858
883
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiDialogHeaderComponent, decorators: [{
859
884
  type: Component,
860
- args: [{ selector: 'header[cuiDialogHeader]', changeDetection: ChangeDetectionStrategy.OnPush, template: "<h2 *ngIf=\"heading\" class=\"c-heading\">{{ heading }}</h2>\n<button\n cuiButton\n type=\"button\"\n appearance=\"ghost\"\n icon=\"cuiIconClearSm\"\n class=\"c-button\"\n (click)=\"onClose($event)\"\n></button>\n<span *ngIf=\"subheading\">{{ subheading }}</span>\n<ng-content />\n", styles: [":host{padding:16px 24px;font-weight:500;font-size:14px;line-height:20px;position:relative;display:flex;flex-direction:column;gap:4px;font-family:var(--cui-main-font);color:var(--cui-base-500)}.c-heading{font-weight:500;font-size:16px;line-height:24px;width:calc(100% - 36px);margin:0;color:var(--cui-base-900)}.c-button{position:absolute;top:12px;right:12px}\n"] }]
885
+ args: [{ selector: 'header[cuiDialogHeader][heading]', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"c-heading\" [ngSwitch]=\"headingType\">\n <ng-container *ngSwitchCase=\"HeadingType.String\">\n {{ _heading }}\n </ng-container>\n <ng-container *ngSwitchCase=\"HeadingType.Template\">\n <ng-container *ngTemplateOutlet=\"headingTemplateRef\"></ng-container>\n </ng-container>\n</div>\n<button\n cuiButton\n type=\"button\"\n appearance=\"ghost\"\n icon=\"cuiIconClearSm\"\n class=\"c-button\"\n (click)=\"onClose($event)\"\n></button>\n<span *ngIf=\"subheading\">{{ subheading }}</span>\n<ng-content />\n", styles: [":host{padding:16px 24px;font-weight:500;font-size:14px;line-height:20px;position:relative;display:flex;flex-direction:column;gap:4px;font-family:var(--cui-main-font);color:var(--cui-base-500)}.c-heading{font-weight:500;font-size:16px;line-height:24px;width:calc(100% - 36px);color:var(--cui-base-900)}.c-button{position:absolute;top:12px;right:12px}\n"] }]
861
886
  }], propDecorators: { heading: [{
862
887
  type: Input
863
888
  }], subheading: [{
@@ -2040,6 +2065,85 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
2040
2065
  }]
2041
2066
  }] });
2042
2067
 
2068
+ const CUI_TAB_ACTIVATE = 'cui-tab-activate';
2069
+ class CuiTabComponent {
2070
+ constructor() {
2071
+ this.element = inject(ElementRef).nativeElement;
2072
+ }
2073
+ onClick() {
2074
+ this.element.dispatchEvent(new CustomEvent(CUI_TAB_ACTIVATE, { bubbles: true }));
2075
+ }
2076
+ }
2077
+ CuiTabComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiTabComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2078
+ 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 });
2079
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiTabComponent, decorators: [{
2080
+ type: Component,
2081
+ 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"] }]
2082
+ }], propDecorators: { onClick: [{
2083
+ type: HostListener,
2084
+ args: ['click']
2085
+ }] } });
2086
+
2087
+ class CuiTabsComponent {
2088
+ constructor() {
2089
+ this.element = inject(ElementRef).nativeElement;
2090
+ this.activeElementClass = '_active';
2091
+ this.activeItemIndex = 0;
2092
+ this.activeItemIndexChange = new EventEmitter();
2093
+ }
2094
+ get tabs() {
2095
+ return Array.from(this.element.querySelectorAll('[cuiTab]'));
2096
+ }
2097
+ get activeElement() {
2098
+ return this.tabs[this.activeItemIndex] || null;
2099
+ }
2100
+ ngAfterViewChecked() {
2101
+ this.changeActiveItem();
2102
+ }
2103
+ onActivate(event) {
2104
+ event.stopPropagation();
2105
+ const index = this.tabs.findIndex((tab) => tab === event.target);
2106
+ if (index === this.activeItemIndex) {
2107
+ return;
2108
+ }
2109
+ this.activeItemIndexChange.emit(index);
2110
+ this.activeItemIndex = index;
2111
+ }
2112
+ changeActiveItem() {
2113
+ this.tabs.forEach(nativeElement => {
2114
+ const active = nativeElement === this.activeElement;
2115
+ nativeElement.classList.toggle(this.activeElementClass, active);
2116
+ });
2117
+ }
2118
+ }
2119
+ CuiTabsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiTabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2120
+ 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 });
2121
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiTabsComponent, decorators: [{
2122
+ type: Component,
2123
+ 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"] }]
2124
+ }], propDecorators: { activeItemIndex: [{
2125
+ type: Input
2126
+ }], activeItemIndexChange: [{
2127
+ type: Output
2128
+ }], onActivate: [{
2129
+ type: HostListener,
2130
+ args: [CUI_TAB_ACTIVATE, ['$event']]
2131
+ }] } });
2132
+
2133
+ class CuiTabsModule {
2134
+ }
2135
+ CuiTabsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiTabsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2136
+ CuiTabsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: CuiTabsModule, declarations: [CuiTabsComponent, CuiTabComponent], exports: [CuiTabsComponent, CuiTabComponent] });
2137
+ CuiTabsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiTabsModule });
2138
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiTabsModule, decorators: [{
2139
+ type: NgModule,
2140
+ args: [{
2141
+ imports: [],
2142
+ declarations: [CuiTabsComponent, CuiTabComponent],
2143
+ exports: [CuiTabsComponent, CuiTabComponent]
2144
+ }]
2145
+ }] });
2146
+
2043
2147
  class CuiTextareaComponent {
2044
2148
  constructor() {
2045
2149
  this.cuiTextFieldController = inject(CUI_TEXT_FIELD_CONTROLLER);
@@ -2109,5 +2213,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
2109
2213
  * Generated bundle index. Do not edit.
2110
2214
  */
2111
2215
 
2112
- 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, ContentType, 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 };
2216
+ 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 };
2113
2217
  //# sourceMappingURL=cuby-ui-core.mjs.map