@cuby-ui/core 0.0.16 → 0.0.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/components/accordion/accordion-item/accordion-item.component.d.ts +2 -0
  2. package/components/alert/alert.module.d.ts +1 -1
  3. package/components/banner/banner.component.d.ts +17 -0
  4. package/components/banner/banner.module.d.ts +10 -0
  5. package/components/banner/banner.options.d.ts +13 -0
  6. package/components/banner/index.d.ts +3 -0
  7. package/components/context-menu/context-menu.component.d.ts +4 -3
  8. package/components/index.d.ts +2 -0
  9. package/components/root/index.d.ts +2 -0
  10. package/components/root/root.component.d.ts +5 -0
  11. package/components/root/root.module.d.ts +10 -0
  12. package/esm2020/components/accordion/accordion-item/accordion-item.component.mjs +6 -3
  13. package/esm2020/components/alert/alert.component.mjs +5 -4
  14. package/esm2020/components/alert/alert.module.mjs +3 -1
  15. package/esm2020/components/alert/alerts.component.mjs +2 -2
  16. package/esm2020/components/banner/banner.component.mjs +61 -0
  17. package/esm2020/components/banner/banner.module.mjs +28 -0
  18. package/esm2020/components/banner/banner.options.mjs +6 -0
  19. package/esm2020/components/banner/index.mjs +4 -0
  20. package/esm2020/components/context-menu/context-menu.component.mjs +22 -14
  21. package/esm2020/components/editor/editor.component.mjs +2 -1
  22. package/esm2020/components/index.mjs +3 -1
  23. package/esm2020/components/notification/notification.component.mjs +2 -2
  24. package/esm2020/components/root/index.mjs +3 -0
  25. package/esm2020/components/root/root.component.mjs +13 -0
  26. package/esm2020/components/root/root.module.mjs +28 -0
  27. package/esm2020/index.mjs +2 -1
  28. package/esm2020/services/index.mjs +2 -0
  29. package/esm2020/services/theme.options.mjs +6 -0
  30. package/esm2020/services/theme.service.mjs +30 -0
  31. package/fesm2015/cuby-ui-core.mjs +180 -23
  32. package/fesm2015/cuby-ui-core.mjs.map +1 -1
  33. package/fesm2020/cuby-ui-core.mjs +180 -23
  34. package/fesm2020/cuby-ui-core.mjs.map +1 -1
  35. package/index.d.ts +1 -0
  36. package/package.json +3 -3
  37. package/services/index.d.ts +1 -0
  38. package/services/theme.options.d.ts +5 -0
  39. package/services/theme.service.d.ts +12 -0
  40. package/styles/theme.scss +12 -1
  41. package/styles/variables/colors.scss +9 -1
@@ -1,6 +1,8 @@
1
+ import type { CuiIcon } from '@cuby-ui/icons';
1
2
  import * as i0 from "@angular/core";
2
3
  export declare class CuiAccordionItemComponent {
3
4
  protected isOpen: boolean;
5
+ protected get buttonIcon(): CuiIcon;
4
6
  protected onRowToggle(): void;
5
7
  static ɵfac: i0.ɵɵFactoryDeclaration<CuiAccordionItemComponent, never>;
6
8
  static ɵcmp: i0.ɵɵComponentDeclaration<CuiAccordionItemComponent, "cui-accordion-item", never, {}, {}, never, ["*", "[cuiAccordionItemContent]"], false, never>;
@@ -6,6 +6,6 @@ import * as i4 from "@cuby-ui/cdk";
6
6
  import * as i5 from "../notification/notification.module";
7
7
  export declare class CuiAlertModule {
8
8
  static ɵfac: i0.ɵɵFactoryDeclaration<CuiAlertModule, never>;
9
- static ɵmod: i0.ɵɵNgModuleDeclaration<CuiAlertModule, [typeof i1.CuiAlertComponent, typeof i2.CuiAlertsComponent], [typeof i3.CommonModule, typeof i4.CuiFilterPipe, typeof i5.CuiNotificationModule], [typeof i1.CuiAlertComponent, typeof i2.CuiAlertsComponent]>;
9
+ static ɵmod: i0.ɵɵNgModuleDeclaration<CuiAlertModule, [typeof i1.CuiAlertComponent, typeof i2.CuiAlertsComponent], [typeof i3.CommonModule, typeof i4.CuiFilterPipe, typeof i5.CuiNotificationModule], [typeof i1.CuiAlertComponent, typeof i1.CuiAlertComponent, typeof i2.CuiAlertsComponent]>;
10
10
  static ɵinj: i0.ɵɵInjectorDeclaration<CuiAlertModule>;
11
11
  }
@@ -0,0 +1,17 @@
1
+ import { EventEmitter } from '@angular/core';
2
+ import type { CuiBannerIconOptions, CuiBannerOptions } from './banner.options';
3
+ import * as i0 from "@angular/core";
4
+ export declare class CuiBannerComponent implements CuiBannerOptions {
5
+ private readonly cuiBannerOptions;
6
+ protected readonly ICON_OPTIONS: CuiBannerIconOptions;
7
+ status: import("@cuby-ui/core").CuiStatus;
8
+ isCloseable: boolean;
9
+ label?: string;
10
+ actionButtonText?: string;
11
+ actionButtonClicked: EventEmitter<void>;
12
+ closed: EventEmitter<void>;
13
+ protected onAction(): void;
14
+ protected onClose(): void;
15
+ static ɵfac: i0.ɵɵFactoryDeclaration<CuiBannerComponent, never>;
16
+ static ɵcmp: i0.ɵɵComponentDeclaration<CuiBannerComponent, "cui-banner", never, { "status": "status"; "isCloseable": "isCloseable"; "label": "label"; "actionButtonText": "actionButtonText"; }, { "actionButtonClicked": "actionButtonClicked"; "closed": "closed"; }, never, ["*"], false, never>;
17
+ }
@@ -0,0 +1,10 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./banner.component";
3
+ import * as i2 from "@angular/common";
4
+ import * as i3 from "../svg/svg.module";
5
+ import * as i4 from "../button/button.module";
6
+ export declare class CuiBannerModule {
7
+ static ɵfac: i0.ɵɵFactoryDeclaration<CuiBannerModule, never>;
8
+ static ɵmod: i0.ɵɵNgModuleDeclaration<CuiBannerModule, [typeof i1.CuiBannerComponent], [typeof i2.CommonModule, typeof i3.CuiSvgModule, typeof i4.CuiButtonModule], [typeof i1.CuiBannerComponent]>;
9
+ static ɵinj: i0.ɵɵInjectorDeclaration<CuiBannerModule>;
10
+ }
@@ -0,0 +1,13 @@
1
+ import type { CuiStatus } from '../../types';
2
+ import type { CuiIcon } from '@cuby-ui/icons';
3
+ export type CuiBannerIconOptions = {
4
+ [k in CuiStatus]: {
5
+ icon: CuiIcon;
6
+ color: string;
7
+ };
8
+ };
9
+ export interface CuiBannerOptions {
10
+ readonly status: CuiStatus;
11
+ }
12
+ export declare const CUI_BANNER_DEFAULT_OPTIONS: CuiBannerOptions;
13
+ export declare const CUI_BANNER_OPTIONS: import("@angular/core").InjectionToken<CuiBannerOptions>;
@@ -0,0 +1,3 @@
1
+ export * from './banner.component';
2
+ export * from './banner.module';
3
+ export * from './banner.options';
@@ -1,4 +1,4 @@
1
- import { AfterViewInit, OnDestroy } from '@angular/core';
1
+ import type { AfterViewInit, OnDestroy } from '@angular/core';
2
2
  import type { CuiContextMenuItem } from '../../interfaces';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class CuiContextMenuComponent implements AfterViewInit, OnDestroy {
@@ -12,12 +12,13 @@ export declare class CuiContextMenuComponent implements AfterViewInit, OnDestroy
12
12
  items: CuiContextMenuItem[];
13
13
  target: HTMLElement;
14
14
  isHidden: boolean;
15
- protected pageX?: number;
16
- protected pageY?: number;
15
+ protected clientX?: number;
16
+ protected clientY?: number;
17
17
  ngAfterViewInit(): void;
18
18
  ngOnDestroy(): void;
19
19
  protected onSelect(item: CuiContextMenuItem): void;
20
20
  protected onClickOutside(target: HTMLElement): void;
21
+ protected onClose(): void;
21
22
  protected trackByFn(_: number, item: CuiContextMenuItem): string;
22
23
  private initTargetElementListener;
23
24
  private destroyTargetElementListener;
@@ -1,5 +1,6 @@
1
1
  export * from './accordion';
2
2
  export * from './alert';
3
+ export * from './banner';
3
4
  export * from './button';
4
5
  export * from './button-group';
5
6
  export * from './context-menu';
@@ -12,5 +13,6 @@ export * from './input-password';
12
13
  export * from './input-text';
13
14
  export * from './label';
14
15
  export * from './notification';
16
+ export * from './root';
15
17
  export * from './svg';
16
18
  export * from './textarea';
@@ -0,0 +1,2 @@
1
+ export * from './root.component';
2
+ export * from './root.module';
@@ -0,0 +1,5 @@
1
+ import * as i0 from "@angular/core";
2
+ export declare class CuiRootComponent {
3
+ static ɵfac: i0.ɵɵFactoryDeclaration<CuiRootComponent, never>;
4
+ static ɵcmp: i0.ɵɵComponentDeclaration<CuiRootComponent, "cui-root", never, {}, {}, never, ["*"], false, never>;
5
+ }
@@ -0,0 +1,10 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./root.component";
3
+ import * as i2 from "@angular/common";
4
+ import * as i3 from "../dialog/dialog.module";
5
+ import * as i4 from "../alert/alert.module";
6
+ export declare class CuiRootModule {
7
+ static ɵfac: i0.ɵɵFactoryDeclaration<CuiRootModule, never>;
8
+ static ɵmod: i0.ɵɵNgModuleDeclaration<CuiRootModule, [typeof i1.CuiRootComponent], [typeof i2.CommonModule, typeof i3.CuiDialogModule, typeof i4.CuiAlertModule], [typeof i1.CuiRootComponent]>;
9
+ static ɵinj: i0.ɵɵInjectorDeclaration<CuiRootModule>;
10
+ }
@@ -6,14 +6,17 @@ export class CuiAccordionItemComponent {
6
6
  constructor() {
7
7
  this.isOpen = false;
8
8
  }
9
+ get buttonIcon() {
10
+ return this.isOpen ? 'cuiIconChevronDown' : 'cuiIconChevronRight';
11
+ }
9
12
  onRowToggle() {
10
13
  this.isOpen = !this.isOpen;
11
14
  }
12
15
  }
13
16
  CuiAccordionItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiAccordionItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
14
- CuiAccordionItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CuiAccordionItemComponent, selector: "cui-accordion-item", ngImport: i0, template: "<header class=\"c-header\">\n <span>\n <ng-content></ng-content>\n </span>\n <button\n cuiButton\n appearance=\"ghost\"\n size=\"xxs\"\n icon=\"cuiIconChevronDown\"\n (click)=\"onRowToggle()\"\n [class.c-button_opened]=\"isOpen\"\n ></button>\n</header>\n<div *ngIf=\"isOpen\">\n <ng-content select=\"[cuiAccordionItemContent]\"></ng-content>\n</div>\n", styles: [":host{padding:12px;display:flex;flex-direction:column;gap:8px;background:var(--cui-base-10);border-radius:8px}.c-header{font-weight:400;font-size:12px;line-height:14px;display:flex;justify-content:space-between;align-items:center;gap:8px;color:var(--cui-base-900);font-family:var(--cui-main-font);text-transform:uppercase}.c-button_opened{transform:rotate(180deg)}\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 });
17
+ CuiAccordionItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CuiAccordionItemComponent, selector: "cui-accordion-item", ngImport: i0, template: "<header class=\"c-header\">\n <button\n cuiButton\n appearance=\"ghost\"\n size=\"xxs\"\n [icon]=\"buttonIcon\"\n (click)=\"onRowToggle()\"\n ></button>\n <span>\n <ng-content></ng-content>\n </span>\n</header>\n<div *ngIf=\"isOpen\">\n <ng-content select=\"[cuiAccordionItemContent]\"></ng-content>\n</div>\n", styles: [":host{padding:16px;display:flex;flex-direction:column;gap:8px;background:var(--cui-base-10);border-radius:8px}.c-header{font-weight:400;font-size:12px;line-height:14px;display:flex;align-items:center;gap:8px;color:var(--cui-base-900);font-family:var(--cui-main-font);text-transform:uppercase}\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 });
15
18
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiAccordionItemComponent, decorators: [{
16
19
  type: Component,
17
- args: [{ selector: 'cui-accordion-item', changeDetection: ChangeDetectionStrategy.OnPush, template: "<header class=\"c-header\">\n <span>\n <ng-content></ng-content>\n </span>\n <button\n cuiButton\n appearance=\"ghost\"\n size=\"xxs\"\n icon=\"cuiIconChevronDown\"\n (click)=\"onRowToggle()\"\n [class.c-button_opened]=\"isOpen\"\n ></button>\n</header>\n<div *ngIf=\"isOpen\">\n <ng-content select=\"[cuiAccordionItemContent]\"></ng-content>\n</div>\n", styles: [":host{padding:12px;display:flex;flex-direction:column;gap:8px;background:var(--cui-base-10);border-radius:8px}.c-header{font-weight:400;font-size:12px;line-height:14px;display:flex;justify-content:space-between;align-items:center;gap:8px;color:var(--cui-base-900);font-family:var(--cui-main-font);text-transform:uppercase}.c-button_opened{transform:rotate(180deg)}\n"] }]
20
+ args: [{ selector: 'cui-accordion-item', changeDetection: ChangeDetectionStrategy.OnPush, template: "<header class=\"c-header\">\n <button\n cuiButton\n appearance=\"ghost\"\n size=\"xxs\"\n [icon]=\"buttonIcon\"\n (click)=\"onRowToggle()\"\n ></button>\n <span>\n <ng-content></ng-content>\n </span>\n</header>\n<div *ngIf=\"isOpen\">\n <ng-content select=\"[cuiAccordionItemContent]\"></ng-content>\n</div>\n", styles: [":host{padding:16px;display:flex;flex-direction:column;gap:8px;background:var(--cui-base-10);border-radius:8px}.c-header{font-weight:400;font-size:12px;line-height:14px;display:flex;align-items:center;gap:8px;color:var(--cui-base-900);font-family:var(--cui-main-font);text-transform:uppercase}\n"] }]
18
21
  }] });
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL2FjY29yZGlvbi9hY2NvcmRpb24taXRlbS9hY2NvcmRpb24taXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvYWNjb3JkaW9uL2FjY29yZGlvbi1pdGVtL2FjY29yZGlvbi1pdGVtLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQVFuRSxNQUFNLE9BQU8seUJBQXlCO0lBTnRDO1FBT1ksV0FBTSxHQUFHLEtBQUssQ0FBQztLQUsxQjtJQUhXLFdBQVc7UUFDbkIsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDN0IsQ0FBQzs7dUhBTFUseUJBQXlCOzJHQUF6Qix5QkFBeUIsMERDUnRDLDRYQWdCQTs0RkRSYSx5QkFBeUI7a0JBTnJDLFNBQVM7K0JBQ0Usb0JBQW9CLG1CQUdiLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2N1aS1hY2NvcmRpb24taXRlbScsXG4gIHRlbXBsYXRlVXJsOiAnLi9hY2NvcmRpb24taXRlbS50ZW1wbGF0ZS5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYWNjb3JkaW9uLWl0ZW0uc3R5bGUuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBDdWlBY2NvcmRpb25JdGVtQ29tcG9uZW50IHtcbiAgcHJvdGVjdGVkIGlzT3BlbiA9IGZhbHNlO1xuXG4gIHByb3RlY3RlZCBvblJvd1RvZ2dsZSgpOiB2b2lkIHtcbiAgICB0aGlzLmlzT3BlbiA9ICF0aGlzLmlzT3BlbjtcbiAgfVxufVxuIiwiPGhlYWRlciBjbGFzcz1cImMtaGVhZGVyXCI+XG4gIDxzcGFuPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPC9zcGFuPlxuICA8YnV0dG9uXG4gICAgY3VpQnV0dG9uXG4gICAgYXBwZWFyYW5jZT1cImdob3N0XCJcbiAgICBzaXplPVwieHhzXCJcbiAgICBpY29uPVwiY3VpSWNvbkNoZXZyb25Eb3duXCJcbiAgICAoY2xpY2spPVwib25Sb3dUb2dnbGUoKVwiXG4gICAgW2NsYXNzLmMtYnV0dG9uX29wZW5lZF09XCJpc09wZW5cIlxuICA+PC9idXR0b24+XG48L2hlYWRlcj5cbjxkaXYgKm5nSWY9XCJpc09wZW5cIj5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2N1aUFjY29yZGlvbkl0ZW1Db250ZW50XVwiPjwvbmctY29udGVudD5cbjwvZGl2PlxuIl19
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL2FjY29yZGlvbi9hY2NvcmRpb24taXRlbS9hY2NvcmRpb24taXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvYWNjb3JkaW9uL2FjY29yZGlvbi1pdGVtL2FjY29yZGlvbi1pdGVtLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQVNuRSxNQUFNLE9BQU8seUJBQXlCO0lBTnRDO1FBT1ksV0FBTSxHQUFHLEtBQUssQ0FBQztLQVMxQjtJQVBDLElBQWMsVUFBVTtRQUN0QixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQztJQUNwRSxDQUFDO0lBRVMsV0FBVztRQUNuQixJQUFJLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUM3QixDQUFDOzt1SEFUVSx5QkFBeUI7MkdBQXpCLHlCQUF5QiwwRENUdEMsOFVBZUE7NEZETmEseUJBQXlCO2tCQU5yQyxTQUFTOytCQUNFLG9CQUFvQixtQkFHYix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHR5cGUgeyBDdWlJY29uIH0gZnJvbSAnQGN1YnktdWkvaWNvbnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjdWktYWNjb3JkaW9uLWl0ZW0nLFxuICB0ZW1wbGF0ZVVybDogJy4vYWNjb3JkaW9uLWl0ZW0udGVtcGxhdGUuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2FjY29yZGlvbi1pdGVtLnN0eWxlLnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgQ3VpQWNjb3JkaW9uSXRlbUNvbXBvbmVudCB7XG4gIHByb3RlY3RlZCBpc09wZW4gPSBmYWxzZTtcblxuICBwcm90ZWN0ZWQgZ2V0IGJ1dHRvbkljb24oKTogQ3VpSWNvbiB7XG4gICAgcmV0dXJuIHRoaXMuaXNPcGVuID8gJ2N1aUljb25DaGV2cm9uRG93bicgOiAnY3VpSWNvbkNoZXZyb25SaWdodCc7XG4gIH1cblxuICBwcm90ZWN0ZWQgb25Sb3dUb2dnbGUoKTogdm9pZCB7XG4gICAgdGhpcy5pc09wZW4gPSAhdGhpcy5pc09wZW47XG4gIH1cbn1cbiIsIjxoZWFkZXIgY2xhc3M9XCJjLWhlYWRlclwiPlxuICA8YnV0dG9uXG4gICAgY3VpQnV0dG9uXG4gICAgYXBwZWFyYW5jZT1cImdob3N0XCJcbiAgICBzaXplPVwieHhzXCJcbiAgICBbaWNvbl09XCJidXR0b25JY29uXCJcbiAgICAoY2xpY2spPVwib25Sb3dUb2dnbGUoKVwiXG4gID48L2J1dHRvbj5cbiAgPHNwYW4+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICA8L3NwYW4+XG48L2hlYWRlcj5cbjxkaXYgKm5nSWY9XCJpc09wZW5cIj5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2N1aUFjY29yZGlvbkl0ZW1Db250ZW50XVwiPjwvbmctY29udGVudD5cbjwvZGl2PlxuIl19
@@ -2,7 +2,8 @@ import { HostBinding } from '@angular/core';
2
2
  import { ChangeDetectionStrategy, Component, inject } from '@angular/core';
3
3
  import { CUI_ALERT_CONTEXT } from './alert.tokens';
4
4
  import * as i0 from "@angular/core";
5
- import * as i1 from "../notification/notification.component";
5
+ import * as i1 from "@angular/common";
6
+ import * as i2 from "../notification/notification.component";
6
7
  export class CuiAlertComponent {
7
8
  constructor() {
8
9
  this.context = inject(CUI_ALERT_CONTEXT);
@@ -25,12 +26,12 @@ export class CuiAlertComponent {
25
26
  }
26
27
  }
27
28
  CuiAlertComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiAlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
28
- CuiAlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CuiAlertComponent, selector: "cui-alert", host: { properties: { "attr.data-resizing": "this.resizing" } }, ngImport: i0, template: "<cui-notification\n [status]=\"context.status\"\n [isCloseable]=\"context.isCloseable\"\n (closed)=\"onClosed()\"\n>\n <h2 class=\"c-heading\">Title</h2>\n {{ this.context.content }}\n</cui-notification>\n", styles: [":host{max-width:470px}:host[data-resizing=hug]{width:-moz-fit-content;width:fit-content}:host[data-resizing=fixed]{width:470px}.c-heading{font-weight:500;font-size:14px;line-height:20px;margin:0 0 8px}\n"], dependencies: [{ kind: "component", type: i1.CuiNotificationComponent, selector: "cui-notification", inputs: ["status", "isCloseable"], outputs: ["closed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
29
+ CuiAlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CuiAlertComponent, selector: "cui-alert", host: { properties: { "attr.data-resizing": "this.resizing" } }, ngImport: i0, template: "<cui-notification\n [status]=\"context.status\"\n [isCloseable]=\"context.isCloseable\"\n (closed)=\"onClosed()\"\n>\n <h2\n *ngIf=\"context.label\"\n class=\"c-heading\"\n >\n {{ context.label }}\n </h2>\n {{ context.content }}\n</cui-notification>\n", styles: [":host{max-width:470px}:host[data-resizing=hug]{width:-moz-fit-content;width:fit-content}:host[data-resizing=fixed]{width:470px}.c-heading{font-weight:500;font-size:14px;line-height:20px;margin:0 0 8px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.CuiNotificationComponent, selector: "cui-notification", inputs: ["status", "isCloseable"], outputs: ["closed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
29
30
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiAlertComponent, decorators: [{
30
31
  type: Component,
31
- args: [{ selector: 'cui-alert', changeDetection: ChangeDetectionStrategy.OnPush, template: "<cui-notification\n [status]=\"context.status\"\n [isCloseable]=\"context.isCloseable\"\n (closed)=\"onClosed()\"\n>\n <h2 class=\"c-heading\">Title</h2>\n {{ this.context.content }}\n</cui-notification>\n", styles: [":host{max-width:470px}:host[data-resizing=hug]{width:-moz-fit-content;width:fit-content}:host[data-resizing=fixed]{width:470px}.c-heading{font-weight:500;font-size:14px;line-height:20px;margin:0 0 8px}\n"] }]
32
+ args: [{ selector: 'cui-alert', changeDetection: ChangeDetectionStrategy.OnPush, template: "<cui-notification\n [status]=\"context.status\"\n [isCloseable]=\"context.isCloseable\"\n (closed)=\"onClosed()\"\n>\n <h2\n *ngIf=\"context.label\"\n class=\"c-heading\"\n >\n {{ context.label }}\n </h2>\n {{ context.content }}\n</cui-notification>\n", styles: [":host{max-width:470px}:host[data-resizing=hug]{width:-moz-fit-content;width:fit-content}:host[data-resizing=fixed]{width:470px}.c-heading{font-weight:500;font-size:14px;line-height:20px;margin:0 0 8px}\n"] }]
32
33
  }], propDecorators: { resizing: [{
33
34
  type: HostBinding,
34
35
  args: ['attr.data-resizing']
35
36
  }] } });
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL2FsZXJ0L2FsZXJ0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9hbGVydC9hbGVydC50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQVNuRCxNQUFNLE9BQU8saUJBQWlCO0lBTjlCO1FBT3FCLFlBQU8sR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUVwQyx3Q0FBbUMsR0FBRyxJQUFJLENBQUM7S0FzQi9EO0lBcEJDLElBQ2MsUUFBUTtRQUNwQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDO0lBQy9CLENBQUM7SUFFTSxRQUFRO1FBQ2IsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFUyxRQUFRO1FBQ2hCLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3BDLENBQUM7SUFFTyxhQUFhO1FBQ25CLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRTtZQUMvQixPQUFPO1NBQ1I7UUFFRCxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLG1DQUFtQyxDQUFDLENBQUM7SUFDakYsQ0FBQzs7K0dBeEJVLGlCQUFpQjttR0FBakIsaUJBQWlCLGtIQ2I5QixvTkFRQTs0RkRLYSxpQkFBaUI7a0JBTjdCLFNBQVM7K0JBQ0UsV0FBVyxtQkFHSix1QkFBdUIsQ0FBQyxNQUFNOzhCQVFqQyxRQUFRO3NCQURyQixXQUFXO3VCQUFDLG9CQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIb3N0QmluZGluZyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IENVSV9BTEVSVF9DT05URVhUIH0gZnJvbSAnLi9hbGVydC50b2tlbnMnO1xuaW1wb3J0IHR5cGUgeyBDdWlBbGVydFJlc2l6aW5nIH0gZnJvbSAnLi9hbGVydC50eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2N1aS1hbGVydCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9hbGVydC50ZW1wbGF0ZS5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYWxlcnQuc3R5bGUuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBDdWlBbGVydENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHByb3RlY3RlZCByZWFkb25seSBjb250ZXh0ID0gaW5qZWN0KENVSV9BTEVSVF9DT05URVhUKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgQVVUT19DTE9TRV9EVVJBVElPTl9JTl9NSUxMSVNFQ09ORFMgPSAzMDAwO1xuXG4gIEBIb3N0QmluZGluZygnYXR0ci5kYXRhLXJlc2l6aW5nJylcbiAgcHJvdGVjdGVkIGdldCByZXNpemluZygpOiBDdWlBbGVydFJlc2l6aW5nIHtcbiAgICByZXR1cm4gdGhpcy5jb250ZXh0LnJlc2l6aW5nO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuaW5pdEF1dG9DbG9zZSgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG9uQ2xvc2VkKCk6IHZvaWQge1xuICAgIHRoaXMuY29udGV4dC4kaW1wbGljaXQuY29tcGxldGUoKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdEF1dG9DbG9zZSgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuY29udGV4dC5uZWVkQXV0b0Nsb3NlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgc2V0VGltZW91dCh0aGlzLm9uQ2xvc2VkLmJpbmQodGhpcyksIHRoaXMuQVVUT19DTE9TRV9EVVJBVElPTl9JTl9NSUxMSVNFQ09ORFMpO1xuICB9XG59XG4iLCI8Y3VpLW5vdGlmaWNhdGlvblxuICBbc3RhdHVzXT1cImNvbnRleHQuc3RhdHVzXCJcbiAgW2lzQ2xvc2VhYmxlXT1cImNvbnRleHQuaXNDbG9zZWFibGVcIlxuICAoY2xvc2VkKT1cIm9uQ2xvc2VkKClcIlxuPlxuICA8aDIgY2xhc3M9XCJjLWhlYWRpbmdcIj5UaXRsZTwvaDI+XG4gIHt7IHRoaXMuY29udGV4dC5jb250ZW50IH19XG48L2N1aS1ub3RpZmljYXRpb24+XG4iXX0=
37
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL2FsZXJ0L2FsZXJ0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9hbGVydC9hbGVydC50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0UsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFTbkQsTUFBTSxPQUFPLGlCQUFpQjtJQU45QjtRQU9xQixZQUFPLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFFcEMsd0NBQW1DLEdBQUcsSUFBSSxDQUFDO0tBc0IvRDtJQXBCQyxJQUNjLFFBQVE7UUFDcEIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQztJQUMvQixDQUFDO0lBRU0sUUFBUTtRQUNiLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRVMsUUFBUTtRQUNoQixJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRU8sYUFBYTtRQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUU7WUFDL0IsT0FBTztTQUNSO1FBRUQsVUFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO0lBQ2pGLENBQUM7OytHQXhCVSxpQkFBaUI7bUdBQWpCLGlCQUFpQixrSENiOUIsNlFBYUE7NEZEQWEsaUJBQWlCO2tCQU43QixTQUFTOytCQUNFLFdBQVcsbUJBR0osdUJBQXVCLENBQUMsTUFBTTs4QkFRakMsUUFBUTtzQkFEckIsV0FBVzt1QkFBQyxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSG9zdEJpbmRpbmcgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBDVUlfQUxFUlRfQ09OVEVYVCB9IGZyb20gJy4vYWxlcnQudG9rZW5zJztcbmltcG9ydCB0eXBlIHsgQ3VpQWxlcnRSZXNpemluZyB9IGZyb20gJy4vYWxlcnQudHlwZXMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjdWktYWxlcnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vYWxlcnQudGVtcGxhdGUuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2FsZXJ0LnN0eWxlLnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgQ3VpQWxlcnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgY29udGV4dCA9IGluamVjdChDVUlfQUxFUlRfQ09OVEVYVCk7XG5cbiAgcHJvdGVjdGVkIHJlYWRvbmx5IEFVVE9fQ0xPU0VfRFVSQVRJT05fSU5fTUlMTElTRUNPTkRTID0gMzAwMDtcblxuICBASG9zdEJpbmRpbmcoJ2F0dHIuZGF0YS1yZXNpemluZycpXG4gIHByb3RlY3RlZCBnZXQgcmVzaXppbmcoKTogQ3VpQWxlcnRSZXNpemluZyB7XG4gICAgcmV0dXJuIHRoaXMuY29udGV4dC5yZXNpemluZztcbiAgfVxuXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmluaXRBdXRvQ2xvc2UoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBvbkNsb3NlZCgpOiB2b2lkIHtcbiAgICB0aGlzLmNvbnRleHQuJGltcGxpY2l0LmNvbXBsZXRlKCk7XG4gIH1cblxuICBwcml2YXRlIGluaXRBdXRvQ2xvc2UoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmNvbnRleHQubmVlZEF1dG9DbG9zZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHNldFRpbWVvdXQodGhpcy5vbkNsb3NlZC5iaW5kKHRoaXMpLCB0aGlzLkFVVE9fQ0xPU0VfRFVSQVRJT05fSU5fTUlMTElTRUNPTkRTKTtcbiAgfVxufVxuIiwiPGN1aS1ub3RpZmljYXRpb25cbiAgW3N0YXR1c109XCJjb250ZXh0LnN0YXR1c1wiXG4gIFtpc0Nsb3NlYWJsZV09XCJjb250ZXh0LmlzQ2xvc2VhYmxlXCJcbiAgKGNsb3NlZCk9XCJvbkNsb3NlZCgpXCJcbj5cbiAgPGgyXG4gICAgKm5nSWY9XCJjb250ZXh0LmxhYmVsXCJcbiAgICBjbGFzcz1cImMtaGVhZGluZ1wiXG4gID5cbiAgICB7eyBjb250ZXh0LmxhYmVsIH19XG4gIDwvaDI+XG4gIHt7IGNvbnRleHQuY29udGVudCB9fVxuPC9jdWktbm90aWZpY2F0aW9uPlxuIl19
@@ -12,6 +12,7 @@ CuiAlertModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version:
12
12
  CuiAlertsComponent], imports: [CommonModule,
13
13
  CuiFilterPipe,
14
14
  CuiNotificationModule], exports: [CuiAlertComponent,
15
+ CuiAlertComponent,
15
16
  CuiAlertsComponent] });
16
17
  CuiAlertModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiAlertModule, imports: [CommonModule,
17
18
  CuiNotificationModule] });
@@ -28,9 +29,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
28
29
  CuiAlertsComponent
29
30
  ],
30
31
  exports: [
32
+ CuiAlertComponent,
31
33
  CuiAlertComponent,
32
34
  CuiAlertsComponent
33
35
  ]
34
36
  }]
35
37
  }] });
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL2FsZXJ0L2FsZXJ0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRTdDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQWlCeEQsTUFBTSxPQUFPLGNBQWM7OzRHQUFkLGNBQWM7NkdBQWQsY0FBYyxpQkFSdkIsaUJBQWlCO1FBQ2pCLGtCQUFrQixhQU5sQixZQUFZO1FBQ1osYUFBYTtRQUNiLHFCQUFxQixhQU9yQixpQkFBaUI7UUFDakIsa0JBQWtCOzZHQUdULGNBQWMsWUFidkIsWUFBWTtRQUVaLHFCQUFxQjs0RkFXWixjQUFjO2tCQWYxQixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLGFBQWE7d0JBQ2IscUJBQXFCO3FCQUN0QjtvQkFDRCxZQUFZLEVBQUU7d0JBQ1osaUJBQWlCO3dCQUNqQixrQkFBa0I7cUJBQ25CO29CQUNELE9BQU8sRUFBRTt3QkFDUCxpQkFBaUI7d0JBQ2pCLGtCQUFrQjtxQkFDbkI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEN1aUZpbHRlclBpcGUgfSBmcm9tICdAY3VieS11aS9jZGsnO1xuXG5pbXBvcnQgeyBDdWlBbGVydENvbXBvbmVudCB9IGZyb20gJy4vYWxlcnQuY29tcG9uZW50JztcbmltcG9ydCB7IEN1aUFsZXJ0c0NvbXBvbmVudCB9IGZyb20gJy4vYWxlcnRzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDdWlOb3RpZmljYXRpb25Nb2R1bGUgfSBmcm9tICcuLi9ub3RpZmljYXRpb24nO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEN1aUZpbHRlclBpcGUsXG4gICAgQ3VpTm90aWZpY2F0aW9uTW9kdWxlXG4gIF0sXG4gIGRlY2xhcmF0aW9uczogW1xuICAgIEN1aUFsZXJ0Q29tcG9uZW50LFxuICAgIEN1aUFsZXJ0c0NvbXBvbmVudFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgQ3VpQWxlcnRDb21wb25lbnQsXG4gICAgQ3VpQWxlcnRzQ29tcG9uZW50XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgQ3VpQWxlcnRNb2R1bGUge1xufVxuIl19
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL2FsZXJ0L2FsZXJ0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRTdDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDOztBQWtCeEQsTUFBTSxPQUFPLGNBQWM7OzRHQUFkLGNBQWM7NkdBQWQsY0FBYyxpQkFUdkIsaUJBQWlCO1FBQ2pCLGtCQUFrQixhQU5sQixZQUFZO1FBQ1osYUFBYTtRQUNiLHFCQUFxQixhQU9yQixpQkFBaUI7UUFDakIsaUJBQWlCO1FBQ2pCLGtCQUFrQjs2R0FHVCxjQUFjLFlBZHZCLFlBQVk7UUFFWixxQkFBcUI7NEZBWVosY0FBYztrQkFoQjFCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osYUFBYTt3QkFDYixxQkFBcUI7cUJBQ3RCO29CQUNELFlBQVksRUFBRTt3QkFDWixpQkFBaUI7d0JBQ2pCLGtCQUFrQjtxQkFDbkI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLGlCQUFpQjt3QkFDakIsaUJBQWlCO3dCQUNqQixrQkFBa0I7cUJBQ25CO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDdWlGaWx0ZXJQaXBlIH0gZnJvbSAnQGN1YnktdWkvY2RrJztcblxuaW1wb3J0IHsgQ3VpQWxlcnRDb21wb25lbnQgfSBmcm9tICcuL2FsZXJ0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDdWlBbGVydHNDb21wb25lbnQgfSBmcm9tICcuL2FsZXJ0cy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ3VpTm90aWZpY2F0aW9uTW9kdWxlIH0gZnJvbSAnLi4vbm90aWZpY2F0aW9uJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBDdWlGaWx0ZXJQaXBlLFxuICAgIEN1aU5vdGlmaWNhdGlvbk1vZHVsZVxuICBdLFxuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBDdWlBbGVydENvbXBvbmVudCxcbiAgICBDdWlBbGVydHNDb21wb25lbnRcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEN1aUFsZXJ0Q29tcG9uZW50LFxuICAgIEN1aUFsZXJ0Q29tcG9uZW50LFxuICAgIEN1aUFsZXJ0c0NvbXBvbmVudFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEN1aUFsZXJ0TW9kdWxlIHtcbn1cbiJdfQ==
@@ -28,9 +28,9 @@ export class CuiAlertsComponent {
28
28
  }
29
29
  }
30
30
  CuiAlertsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiAlertsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
31
- CuiAlertsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CuiAlertsComponent, selector: "cui-alerts", providers: [CuiDestroyService], ngImport: i0, template: "<ng-container *ngIf=\"alerts$ | async as alerts\">\n <div class=\"c-wrapper c-wrapper_position_center\">\n <ng-container *ngFor=\"let alert of alerts | cuiFilter: alertsMatcher: 'center'; let i = index; trackBy: trackByFn\">\n <ng-container *ngComponentOutlet=\"alert.component; injector: alertInjectors[i]\"></ng-container>\n </ng-container>\n </div>\n <div class=\"c-wrapper c-wrapper_position_right\">\n <ng-container *ngFor=\"let alert of alerts | cuiFilter: alertsMatcher: 'right'; let i = index; trackBy: trackByFn\">\n <ng-container *ngComponentOutlet=\"alert.component; injector: alertInjectors[i]\"></ng-container>\n </ng-container>\n </div>\n</ng-container>\n", styles: [":host{display:flex;flex-direction:column;position:fixed;right:20px;bottom:20px}.c-wrapper{position:fixed;bottom:20px;display:flex;flex-direction:column;gap:16px}.c-wrapper_position_center{left:50%;transform:translate(-50%)}.c-wrapper_position_right{right:20px}\n"], dependencies: [{ kind: "directive", type: i1.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.CuiFilterPipe, name: "cuiFilter" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
31
+ CuiAlertsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CuiAlertsComponent, selector: "cui-alerts", providers: [CuiDestroyService], ngImport: i0, template: "<ng-container *ngIf=\"alerts$ | async as alerts\">\n <div class=\"c-wrapper c-wrapper_position_center\">\n <ng-container *ngFor=\"let alert of alerts | cuiFilter: alertsMatcher: 'center'; let i = index; trackBy: trackByFn\">\n <ng-container *ngComponentOutlet=\"alert.component; injector: alertInjectors[i]\"></ng-container>\n </ng-container>\n </div>\n <div class=\"c-wrapper c-wrapper_position_right\">\n <ng-container *ngFor=\"let alert of alerts | cuiFilter: alertsMatcher: 'right'; let i = index; trackBy: trackByFn\">\n <ng-container *ngComponentOutlet=\"alert.component; injector: alertInjectors[i]\"></ng-container>\n </ng-container>\n </div>\n</ng-container>\n", styles: [":host{display:flex;flex-direction:column;position:fixed;right:20px;bottom:20px}.c-wrapper{position:fixed;bottom:20px;display:flex;flex-direction:column;gap:16px}.c-wrapper_position_center{align-items:center;left:50%;transform:translate(-50%)}.c-wrapper_position_right{align-items:flex-end;right:20px}\n"], dependencies: [{ kind: "directive", type: i1.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.CuiFilterPipe, name: "cuiFilter" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
32
32
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiAlertsComponent, decorators: [{
33
33
  type: Component,
34
- args: [{ selector: 'cui-alerts', changeDetection: ChangeDetectionStrategy.OnPush, providers: [CuiDestroyService], template: "<ng-container *ngIf=\"alerts$ | async as alerts\">\n <div class=\"c-wrapper c-wrapper_position_center\">\n <ng-container *ngFor=\"let alert of alerts | cuiFilter: alertsMatcher: 'center'; let i = index; trackBy: trackByFn\">\n <ng-container *ngComponentOutlet=\"alert.component; injector: alertInjectors[i]\"></ng-container>\n </ng-container>\n </div>\n <div class=\"c-wrapper c-wrapper_position_right\">\n <ng-container *ngFor=\"let alert of alerts | cuiFilter: alertsMatcher: 'right'; let i = index; trackBy: trackByFn\">\n <ng-container *ngComponentOutlet=\"alert.component; injector: alertInjectors[i]\"></ng-container>\n </ng-container>\n </div>\n</ng-container>\n", styles: [":host{display:flex;flex-direction:column;position:fixed;right:20px;bottom:20px}.c-wrapper{position:fixed;bottom:20px;display:flex;flex-direction:column;gap:16px}.c-wrapper_position_center{left:50%;transform:translate(-50%)}.c-wrapper_position_right{right:20px}\n"] }]
34
+ args: [{ selector: 'cui-alerts', changeDetection: ChangeDetectionStrategy.OnPush, providers: [CuiDestroyService], template: "<ng-container *ngIf=\"alerts$ | async as alerts\">\n <div class=\"c-wrapper c-wrapper_position_center\">\n <ng-container *ngFor=\"let alert of alerts | cuiFilter: alertsMatcher: 'center'; let i = index; trackBy: trackByFn\">\n <ng-container *ngComponentOutlet=\"alert.component; injector: alertInjectors[i]\"></ng-container>\n </ng-container>\n </div>\n <div class=\"c-wrapper c-wrapper_position_right\">\n <ng-container *ngFor=\"let alert of alerts | cuiFilter: alertsMatcher: 'right'; let i = index; trackBy: trackByFn\">\n <ng-container *ngComponentOutlet=\"alert.component; injector: alertInjectors[i]\"></ng-container>\n </ng-container>\n </div>\n</ng-container>\n", styles: [":host{display:flex;flex-direction:column;position:fixed;right:20px;bottom:20px}.c-wrapper{position:fixed;bottom:20px;display:flex;flex-direction:column;gap:16px}.c-wrapper_position_center{align-items:center;left:50%;transform:translate(-50%)}.c-wrapper_position_right{align-items:flex-end;right:20px}\n"] }]
35
35
  }] });
36
36
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnRzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9hbGVydC9hbGVydHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS9jb21wb25lbnRzL2FsZXJ0L2FsZXJ0cy50ZW1wbGF0ZS5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVyRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFakQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVqQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFVL0QsTUFBTSxPQUFPLGtCQUFrQjtJQVAvQjtRQVFtQixhQUFRLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFFbkQsWUFBTyxHQUEyRCxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7S0FzQnpHO0lBbkJRLFFBQVE7UUFDYixJQUFJLENBQUMsOEJBQThCLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBRVMsU0FBUyxDQUFDLENBQVMsRUFBRSxLQUFrQztRQUMvRCxPQUFPLEtBQUssQ0FBQyxFQUFFLENBQUM7SUFDbEIsQ0FBQztJQUVTLGFBQWEsQ0FBQyxLQUFrQyxFQUFFLFFBQWdCO1FBQzFFLE9BQU8sS0FBSyxDQUFDLFFBQVEsS0FBSyxRQUFRLENBQUM7SUFDckMsQ0FBQztJQUVTLDhCQUE4QjtRQUN0QyxJQUFJLENBQUMsT0FBTzthQUNULElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQzlCLFNBQVMsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxjQUFjLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUM7WUFDbEYsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLENBQUM7U0FDdEQsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNULENBQUM7O2dIQXhCVSxrQkFBa0I7b0dBQWxCLGtCQUFrQixxQ0FGbEIsQ0FBQyxpQkFBaUIsQ0FBQywwQkNmaEMseXJCQVlBOzRGREthLGtCQUFrQjtrQkFQOUIsU0FBUzsrQkFDRSxZQUFZLG1CQUdMLHVCQUF1QixDQUFDLE1BQU0sYUFDcEMsQ0FBQyxpQkFBaUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBpbmplY3QsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgdHlwZSB7IEN1aVBvcG92ZXIgfSBmcm9tICdAY3VieS11aS9jZGsnO1xuaW1wb3J0IHsgQ3VpRGVzdHJveVNlcnZpY2UgfSBmcm9tICdAY3VieS11aS9jZGsnO1xuaW1wb3J0IHR5cGUgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHsgQ1VJX0FMRVJUX0NPTlRFWFQsIENVSV9BTEVSVFMgfSBmcm9tICcuL2FsZXJ0LnRva2Vucyc7XG5pbXBvcnQgdHlwZSB7IEN1aUFsZXJ0T3B0aW9ucyB9IGZyb20gJy4vYWxlcnQuaW50ZXJmYWNlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2N1aS1hbGVydHMnLFxuICB0ZW1wbGF0ZVVybDogJy4vYWxlcnRzLnRlbXBsYXRlLmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hbGVydHMuc3R5bGUuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgcHJvdmlkZXJzOiBbQ3VpRGVzdHJveVNlcnZpY2VdXG59KVxuZXhwb3J0IGNsYXNzIEN1aUFsZXJ0c0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveSQgPSBpbmplY3QoQ3VpRGVzdHJveVNlcnZpY2UsIHsgc2VsZjogdHJ1ZSB9KTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgYWxlcnRzJDogT2JzZXJ2YWJsZTxSZWFkb25seUFycmF5PEN1aVBvcG92ZXI8Q3VpQWxlcnRPcHRpb25zPj4+ID0gaW5qZWN0KENVSV9BTEVSVFMpO1xuICBwcm90ZWN0ZWQgYWxlcnRJbmplY3RvcnMhOiBSZWFkb25seUFycmF5PEluamVjdG9yPjtcblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5pbml0QWxlcnRJbmplY3RvcnNTdWJzY3JpcHRpb24oKTtcbiAgfVxuXG4gIHByb3RlY3RlZCB0cmFja0J5Rm4oXzogbnVtYmVyLCBhbGVydDogQ3VpUG9wb3ZlcjxDdWlBbGVydE9wdGlvbnM+KTogc3RyaW5nIHtcbiAgICByZXR1cm4gYWxlcnQuaWQ7XG4gIH1cblxuICBwcm90ZWN0ZWQgYWxlcnRzTWF0Y2hlcihhbGVydDogQ3VpUG9wb3ZlcjxDdWlBbGVydE9wdGlvbnM+LCBwb3NpdGlvbjogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGFsZXJ0LnBvc2l0aW9uID09PSBwb3NpdGlvbjtcbiAgfVxuXG4gIHByb3RlY3RlZCBpbml0QWxlcnRJbmplY3RvcnNTdWJzY3JpcHRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5hbGVydHMkXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKGRpYWxvZ3MgPT4gdGhpcy5hbGVydEluamVjdG9ycyA9IGRpYWxvZ3MubWFwKHVzZVZhbHVlID0+IEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICAgIHByb3ZpZGVyczogW3sgcHJvdmlkZTogQ1VJX0FMRVJUX0NPTlRFWFQsIHVzZVZhbHVlIH1dXG4gICAgICB9KSkpO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiYWxlcnRzJCB8IGFzeW5jIGFzIGFsZXJ0c1wiPlxuICA8ZGl2IGNsYXNzPVwiYy13cmFwcGVyIGMtd3JhcHBlcl9wb3NpdGlvbl9jZW50ZXJcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBhbGVydCBvZiBhbGVydHMgfCBjdWlGaWx0ZXI6IGFsZXJ0c01hdGNoZXI6ICdjZW50ZXInOyBsZXQgaSA9IGluZGV4OyB0cmFja0J5OiB0cmFja0J5Rm5cIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nQ29tcG9uZW50T3V0bGV0PVwiYWxlcnQuY29tcG9uZW50OyBpbmplY3RvcjogYWxlcnRJbmplY3RvcnNbaV1cIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG4gIDxkaXYgY2xhc3M9XCJjLXdyYXBwZXIgYy13cmFwcGVyX3Bvc2l0aW9uX3JpZ2h0XCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgYWxlcnQgb2YgYWxlcnRzIHwgY3VpRmlsdGVyOiBhbGVydHNNYXRjaGVyOiAncmlnaHQnOyBsZXQgaSA9IGluZGV4OyB0cmFja0J5OiB0cmFja0J5Rm5cIj5cbiAgICAgIDxuZy1jb250YWluZXIgKm5nQ29tcG9uZW50T3V0bGV0PVwiYWxlcnQuY29tcG9uZW50OyBpbmplY3RvcjogYWxlcnRJbmplY3RvcnNbaV1cIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
@@ -0,0 +1,61 @@
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, inject, Input, Output } from '@angular/core';
2
+ import { CUI_BANNER_OPTIONS } from './banner.options';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ import * as i2 from "../svg/svg.component";
6
+ import * as i3 from "../button/button.component";
7
+ export class CuiBannerComponent {
8
+ constructor() {
9
+ this.cuiBannerOptions = inject(CUI_BANNER_OPTIONS);
10
+ this.ICON_OPTIONS = {
11
+ info: {
12
+ icon: 'cuiIconInfo',
13
+ color: 'var(--c-info-color)'
14
+ },
15
+ success: {
16
+ icon: 'cuiIconCheckCircle',
17
+ color: 'var(--cui-green-500)'
18
+ },
19
+ alert: {
20
+ icon: 'cuiIconAlertTriangle',
21
+ color: 'var(--c-alert-color)'
22
+ },
23
+ error: {
24
+ icon: 'cuiIconXCircle',
25
+ color: 'var(--cui-red-500)'
26
+ },
27
+ };
28
+ this.status = this.cuiBannerOptions.status;
29
+ this.isCloseable = true;
30
+ this.actionButtonClicked = new EventEmitter();
31
+ this.closed = new EventEmitter();
32
+ }
33
+ onAction() {
34
+ this.actionButtonClicked.emit();
35
+ }
36
+ onClose() {
37
+ this.closed.emit();
38
+ }
39
+ }
40
+ CuiBannerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiBannerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
41
+ CuiBannerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CuiBannerComponent, selector: "cui-banner", inputs: { status: "status", isCloseable: "isCloseable", label: "label", actionButtonText: "actionButtonText" }, outputs: { actionButtonClicked: "actionButtonClicked", closed: "closed" }, host: { properties: { "attr.data-status": "this.status" } }, ngImport: i0, template: "<cui-svg\n *ngIf=\"ICON_OPTIONS[status] as iconOption\"\n [icon]=\"iconOption.icon\"\n [color]=\"iconOption.color\"\n class=\"c-icon\"\n></cui-svg>\n<div class=\"c-wrapper\">\n <h2\n *ngIf=\"label\"\n class=\"c-heading\"\n >\n {{ label }}\n </h2>\n <ng-content></ng-content>\n <!-- TODO: \u0416\u0434\u0443 \u0442\u0451\u043C\u043D\u0443\u044E \u0442\u0435\u043C\u0443 \u043A\u043D\u043E\u043F\u043E\u043A -->\n <button\n cuiButton\n *ngIf=\"actionButtonText\"\n appearance=\"link\"\n (click)=\"onAction()\"\n >\n {{ actionButtonText }}\n </button>\n</div>\n<button\n *ngIf=\"isCloseable\"\n cuiButton\n appearance=\"ghost\"\n size=\"xxs\"\n icon=\"cuiIconX\"\n (click)=\"onClose()\"\n></button>\n", styles: [":host{--c-info-color: var(--cui-blue-600);--c-success-color: var(--cui-green-700);--c-alert-color: var(--cui-orange-800);padding:12px 16px;font-weight:400;font-size:14px;line-height:20px;display:flex;color:var(--cui-base-900);font-family:var(--cui-main-font)}:host[data-status=info]{background:var(--cui-light-blue-50)}:host[data-status=success]{background:var(--cui-green-50)}:host[data-status=alert]{color:var(--cui-orange-800);background:var(--cui-yellow-100)}:host[data-status=error]{background:var(--cui-red-50)}:host-context([cuiTheme=dark]){--c-info-color: var(--cui-blue-500);--c-success-color: var(--cui-green-500);--c-alert-color: #F9C15A;color:var(--cui-gray-0)}:host-context([cuiTheme=dark])[data-status=info]{background:var(--cui-blue-900)}:host-context([cuiTheme=dark])[data-status=success]{background:var(--cui-green-900)}:host-context([cuiTheme=dark])[data-status=alert]{background:var(--cui-yellow-900)}:host-context([cuiTheme=dark])[data-status=error]{background:var(--cui-red-900)}.c-icon{height:28px}.c-wrapper{flex:1;display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-left:12px;margin-right:16px;overflow-wrap:anywhere}.c-heading{font-weight:500;font-size:14px;line-height:20px;margin:0}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.CuiSvgComponent, selector: "cui-svg[icon]", inputs: ["width", "height", "strokeWidth", "color", "icon"] }, { kind: "component", type: i3.CuiButtonComponent, selector: "button[cuiButton], a[cuiButton]", inputs: ["shape", "disabled", "isLoaderShown", "icon", "iconRight", "appearance", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
42
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiBannerComponent, decorators: [{
43
+ type: Component,
44
+ args: [{ selector: 'cui-banner', changeDetection: ChangeDetectionStrategy.OnPush, template: "<cui-svg\n *ngIf=\"ICON_OPTIONS[status] as iconOption\"\n [icon]=\"iconOption.icon\"\n [color]=\"iconOption.color\"\n class=\"c-icon\"\n></cui-svg>\n<div class=\"c-wrapper\">\n <h2\n *ngIf=\"label\"\n class=\"c-heading\"\n >\n {{ label }}\n </h2>\n <ng-content></ng-content>\n <!-- TODO: \u0416\u0434\u0443 \u0442\u0451\u043C\u043D\u0443\u044E \u0442\u0435\u043C\u0443 \u043A\u043D\u043E\u043F\u043E\u043A -->\n <button\n cuiButton\n *ngIf=\"actionButtonText\"\n appearance=\"link\"\n (click)=\"onAction()\"\n >\n {{ actionButtonText }}\n </button>\n</div>\n<button\n *ngIf=\"isCloseable\"\n cuiButton\n appearance=\"ghost\"\n size=\"xxs\"\n icon=\"cuiIconX\"\n (click)=\"onClose()\"\n></button>\n", styles: [":host{--c-info-color: var(--cui-blue-600);--c-success-color: var(--cui-green-700);--c-alert-color: var(--cui-orange-800);padding:12px 16px;font-weight:400;font-size:14px;line-height:20px;display:flex;color:var(--cui-base-900);font-family:var(--cui-main-font)}:host[data-status=info]{background:var(--cui-light-blue-50)}:host[data-status=success]{background:var(--cui-green-50)}:host[data-status=alert]{color:var(--cui-orange-800);background:var(--cui-yellow-100)}:host[data-status=error]{background:var(--cui-red-50)}:host-context([cuiTheme=dark]){--c-info-color: var(--cui-blue-500);--c-success-color: var(--cui-green-500);--c-alert-color: #F9C15A;color:var(--cui-gray-0)}:host-context([cuiTheme=dark])[data-status=info]{background:var(--cui-blue-900)}:host-context([cuiTheme=dark])[data-status=success]{background:var(--cui-green-900)}:host-context([cuiTheme=dark])[data-status=alert]{background:var(--cui-yellow-900)}:host-context([cuiTheme=dark])[data-status=error]{background:var(--cui-red-900)}.c-icon{height:28px}.c-wrapper{flex:1;display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-left:12px;margin-right:16px;overflow-wrap:anywhere}.c-heading{font-weight:500;font-size:14px;line-height:20px;margin:0}\n"] }]
45
+ }], propDecorators: { status: [{
46
+ type: Input
47
+ }, {
48
+ type: HostBinding,
49
+ args: ['attr.data-status']
50
+ }], isCloseable: [{
51
+ type: Input
52
+ }], label: [{
53
+ type: Input
54
+ }], actionButtonText: [{
55
+ type: Input
56
+ }], actionButtonClicked: [{
57
+ type: Output
58
+ }], closed: [{
59
+ type: Output
60
+ }] } });
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFubmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9iYW5uZXIvYmFubmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9iYW5uZXIvYmFubmVyLnRlbXBsYXRlLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR3JILE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDOzs7OztBQVF0RCxNQUFNLE9BQU8sa0JBQWtCO0lBTi9CO1FBT21CLHFCQUFnQixHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBRTVDLGlCQUFZLEdBQXlCO1lBQ3RELElBQUksRUFBRTtnQkFDSixJQUFJLEVBQUUsYUFBYTtnQkFDbkIsS0FBSyxFQUFFLHFCQUFxQjthQUM3QjtZQUNELE9BQU8sRUFBRTtnQkFDUCxJQUFJLEVBQUUsb0JBQW9CO2dCQUMxQixLQUFLLEVBQUUsc0JBQXNCO2FBQzlCO1lBQ0QsS0FBSyxFQUFFO2dCQUNMLElBQUksRUFBRSxzQkFBc0I7Z0JBQzVCLEtBQUssRUFBRSxzQkFBc0I7YUFDOUI7WUFDRCxLQUFLLEVBQUU7Z0JBQ0wsSUFBSSxFQUFFLGdCQUFnQjtnQkFDdEIsS0FBSyxFQUFFLG9CQUFvQjthQUM1QjtTQUNGLENBQUM7UUFJSyxXQUFNLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQztRQUd0QyxnQkFBVyxHQUFHLElBQUksQ0FBQztRQVNuQix3QkFBbUIsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBRy9DLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0tBUzFDO0lBUFcsUUFBUTtRQUNoQixJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDbEMsQ0FBQztJQUVTLE9BQU87UUFDZixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3JCLENBQUM7O2dIQS9DVSxrQkFBa0I7b0dBQWxCLGtCQUFrQiwwU0NYL0IscXVCQWdDQTs0RkRyQmEsa0JBQWtCO2tCQU45QixTQUFTOytCQUNFLFlBQVksbUJBR0wsdUJBQXVCLENBQUMsTUFBTTs4QkEwQnhDLE1BQU07c0JBRlosS0FBSzs7c0JBQ0wsV0FBVzt1QkFBQyxrQkFBa0I7Z0JBSXhCLFdBQVc7c0JBRGpCLEtBQUs7Z0JBSUMsS0FBSztzQkFEWCxLQUFLO2dCQUlDLGdCQUFnQjtzQkFEdEIsS0FBSztnQkFJQyxtQkFBbUI7c0JBRHpCLE1BQU07Z0JBSUEsTUFBTTtzQkFEWixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgaW5qZWN0LCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB0eXBlIHsgQ3VpQmFubmVySWNvbk9wdGlvbnMsIEN1aUJhbm5lck9wdGlvbnMgfSBmcm9tICcuL2Jhbm5lci5vcHRpb25zJztcbmltcG9ydCB7IENVSV9CQU5ORVJfT1BUSU9OUyB9IGZyb20gJy4vYmFubmVyLm9wdGlvbnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjdWktYmFubmVyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Jhbm5lci50ZW1wbGF0ZS5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYmFubmVyLnN0eWxlLnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgQ3VpQmFubmVyQ29tcG9uZW50IGltcGxlbWVudHMgQ3VpQmFubmVyT3B0aW9ucyB7XG4gIHByaXZhdGUgcmVhZG9ubHkgY3VpQmFubmVyT3B0aW9ucyA9IGluamVjdChDVUlfQkFOTkVSX09QVElPTlMpO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBJQ09OX09QVElPTlM6IEN1aUJhbm5lckljb25PcHRpb25zID0ge1xuICAgIGluZm86IHtcbiAgICAgIGljb246ICdjdWlJY29uSW5mbycsXG4gICAgICBjb2xvcjogJ3ZhcigtLWMtaW5mby1jb2xvciknXG4gICAgfSxcbiAgICBzdWNjZXNzOiB7XG4gICAgICBpY29uOiAnY3VpSWNvbkNoZWNrQ2lyY2xlJyxcbiAgICAgIGNvbG9yOiAndmFyKC0tY3VpLWdyZWVuLTUwMCknXG4gICAgfSxcbiAgICBhbGVydDoge1xuICAgICAgaWNvbjogJ2N1aUljb25BbGVydFRyaWFuZ2xlJyxcbiAgICAgIGNvbG9yOiAndmFyKC0tYy1hbGVydC1jb2xvciknXG4gICAgfSxcbiAgICBlcnJvcjoge1xuICAgICAgaWNvbjogJ2N1aUljb25YQ2lyY2xlJyxcbiAgICAgIGNvbG9yOiAndmFyKC0tY3VpLXJlZC01MDApJ1xuICAgIH0sXG4gIH07XG5cbiAgQElucHV0KClcbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtc3RhdHVzJylcbiAgcHVibGljIHN0YXR1cyA9IHRoaXMuY3VpQmFubmVyT3B0aW9ucy5zdGF0dXM7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGlzQ2xvc2VhYmxlID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgbGFiZWw/OiBzdHJpbmc7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGFjdGlvbkJ1dHRvblRleHQ/OiBzdHJpbmc7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBhY3Rpb25CdXR0b25DbGlja2VkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgY2xvc2VkID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIHByb3RlY3RlZCBvbkFjdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLmFjdGlvbkJ1dHRvbkNsaWNrZWQuZW1pdCgpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG9uQ2xvc2UoKTogdm9pZCB7XG4gICAgdGhpcy5jbG9zZWQuZW1pdCgpO1xuICB9XG59XG4iLCI8Y3VpLXN2Z1xuICAqbmdJZj1cIklDT05fT1BUSU9OU1tzdGF0dXNdIGFzIGljb25PcHRpb25cIlxuICBbaWNvbl09XCJpY29uT3B0aW9uLmljb25cIlxuICBbY29sb3JdPVwiaWNvbk9wdGlvbi5jb2xvclwiXG4gIGNsYXNzPVwiYy1pY29uXCJcbj48L2N1aS1zdmc+XG48ZGl2IGNsYXNzPVwiYy13cmFwcGVyXCI+XG4gIDxoMlxuICAgICpuZ0lmPVwibGFiZWxcIlxuICAgIGNsYXNzPVwiYy1oZWFkaW5nXCJcbiAgPlxuICAgIHt7IGxhYmVsIH19XG4gIDwvaDI+XG4gIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPCEtLSBUT0RPOiDQltC00YMg0YLRkdC80L3Rg9GOINGC0LXQvNGDINC60L3QvtC/0L7QuiAtLT5cbiAgPGJ1dHRvblxuICAgIGN1aUJ1dHRvblxuICAgICpuZ0lmPVwiYWN0aW9uQnV0dG9uVGV4dFwiXG4gICAgYXBwZWFyYW5jZT1cImxpbmtcIlxuICAgIChjbGljayk9XCJvbkFjdGlvbigpXCJcbiAgPlxuICAgIHt7IGFjdGlvbkJ1dHRvblRleHQgfX1cbiAgPC9idXR0b24+XG48L2Rpdj5cbjxidXR0b25cbiAgKm5nSWY9XCJpc0Nsb3NlYWJsZVwiXG4gIGN1aUJ1dHRvblxuICBhcHBlYXJhbmNlPVwiZ2hvc3RcIlxuICBzaXplPVwieHhzXCJcbiAgaWNvbj1cImN1aUljb25YXCJcbiAgKGNsaWNrKT1cIm9uQ2xvc2UoKVwiXG4+PC9idXR0b24+XG4iXX0=
@@ -0,0 +1,28 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { CuiBannerComponent } from './banner.component';
4
+ import { CuiSvgModule } from '../svg';
5
+ import { CuiButtonModule } from '../button';
6
+ import * as i0 from "@angular/core";
7
+ export class CuiBannerModule {
8
+ }
9
+ CuiBannerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiBannerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
+ CuiBannerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: CuiBannerModule, declarations: [CuiBannerComponent], imports: [CommonModule,
11
+ CuiSvgModule,
12
+ CuiButtonModule], exports: [CuiBannerComponent] });
13
+ CuiBannerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiBannerModule, imports: [CommonModule,
14
+ CuiSvgModule,
15
+ CuiButtonModule] });
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiBannerModule, decorators: [{
17
+ type: NgModule,
18
+ args: [{
19
+ imports: [
20
+ CommonModule,
21
+ CuiSvgModule,
22
+ CuiButtonModule
23
+ ],
24
+ declarations: [CuiBannerComponent],
25
+ exports: [CuiBannerComponent]
26
+ }]
27
+ }] });
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFubmVyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9iYW5uZXIvYmFubmVyLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUUvQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ3RDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxXQUFXLENBQUM7O0FBVzVDLE1BQU0sT0FBTyxlQUFlOzs2R0FBZixlQUFlOzhHQUFmLGVBQWUsaUJBSFgsa0JBQWtCLGFBSi9CLFlBQVk7UUFDWixZQUFZO1FBQ1osZUFBZSxhQUdQLGtCQUFrQjs4R0FFakIsZUFBZSxZQVB4QixZQUFZO1FBQ1osWUFBWTtRQUNaLGVBQWU7NEZBS04sZUFBZTtrQkFUM0IsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixZQUFZO3dCQUNaLGVBQWU7cUJBQ2hCO29CQUNELFlBQVksRUFBRSxDQUFDLGtCQUFrQixDQUFDO29CQUNsQyxPQUFPLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztpQkFDOUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHsgQ3VpQmFubmVyQ29tcG9uZW50IH0gZnJvbSAnLi9iYW5uZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEN1aVN2Z01vZHVsZSB9IGZyb20gJy4uL3N2Zyc7XG5pbXBvcnQgeyBDdWlCdXR0b25Nb2R1bGUgfSBmcm9tICcuLi9idXR0b24nO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEN1aVN2Z01vZHVsZSxcbiAgICBDdWlCdXR0b25Nb2R1bGVcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbQ3VpQmFubmVyQ29tcG9uZW50XSxcbiAgZXhwb3J0czogW0N1aUJhbm5lckNvbXBvbmVudF1cbn0pXG5leHBvcnQgY2xhc3MgQ3VpQmFubmVyTW9kdWxlIHtcbn1cbiJdfQ==
@@ -0,0 +1,6 @@
1
+ import { cuiCreateToken } from '@cuby-ui/cdk';
2
+ export const CUI_BANNER_DEFAULT_OPTIONS = {
3
+ status: 'info'
4
+ };
5
+ export const CUI_BANNER_OPTIONS = cuiCreateToken(CUI_BANNER_DEFAULT_OPTIONS);
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFubmVyLm9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvYmFubmVyL2Jhbm5lci5vcHRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFjOUMsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQXFCO0lBQzFELE1BQU0sRUFBRSxNQUFNO0NBQ2YsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLGNBQWMsQ0FBQywwQkFBMEIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBDdWlTdGF0dXMgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBjdWlDcmVhdGVUb2tlbiB9IGZyb20gJ0BjdWJ5LXVpL2Nkayc7XG5pbXBvcnQgdHlwZSB7IEN1aUljb24gfSBmcm9tICdAY3VieS11aS9pY29ucyc7XG5cbmV4cG9ydCB0eXBlIEN1aUJhbm5lckljb25PcHRpb25zID0ge1xuICBbayBpbiBDdWlTdGF0dXNdOiB7XG4gICAgaWNvbjogQ3VpSWNvbjtcbiAgICBjb2xvcjogc3RyaW5nO1xuICB9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ3VpQmFubmVyT3B0aW9ucyB7XG4gIHJlYWRvbmx5IHN0YXR1czogQ3VpU3RhdHVzO1xufVxuXG5leHBvcnQgY29uc3QgQ1VJX0JBTk5FUl9ERUZBVUxUX09QVElPTlM6IEN1aUJhbm5lck9wdGlvbnMgPSB7XG4gIHN0YXR1czogJ2luZm8nXG59O1xuXG5leHBvcnQgY29uc3QgQ1VJX0JBTk5FUl9PUFRJT05TID0gY3VpQ3JlYXRlVG9rZW4oQ1VJX0JBTk5FUl9ERUZBVUxUX09QVElPTlMpO1xuIl19
@@ -0,0 +1,4 @@
1
+ export * from './banner.component';
2
+ export * from './banner.module';
3
+ export * from './banner.options';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL2NvbXBvbmVudHMvYmFubmVyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9iYW5uZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vYmFubmVyLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2Jhbm5lci5vcHRpb25zJztcbiJdfQ==
@@ -29,14 +29,17 @@ export class CuiContextMenuComponent {
29
29
  }
30
30
  this.isVisible = false;
31
31
  }
32
+ onClose() {
33
+ this.isVisible = false;
34
+ }
32
35
  trackByFn(_, item) {
33
36
  return item.label;
34
37
  }
35
38
  initTargetElementListener() {
36
- this.targetEventListener = ({ pageX, pageY }) => {
39
+ this.targetEventListener = ({ clientX, clientY }) => {
37
40
  this.isVisible = !this.isVisible;
38
41
  if (this.isVisible) {
39
- this.changePosition(pageX, pageY);
42
+ this.changePosition(clientX, clientY);
40
43
  }
41
44
  this.changeDetectorRef.markForCheck();
42
45
  };
@@ -48,32 +51,31 @@ export class CuiContextMenuComponent {
48
51
  changePosition(x, y) {
49
52
  this.isHidden = true;
50
53
  setTimeout(() => {
51
- const { scrollX, scrollY } = this.window;
52
54
  const { clientWidth, clientHeight } = this.documentElement;
53
55
  const width = this.element.offsetWidth;
54
56
  const height = this.element.offsetHeight;
55
57
  let left = x;
56
58
  let top = y;
57
- if (left + width > scrollX + clientWidth) {
59
+ if (left + width > clientWidth) {
58
60
  left -= width;
59
61
  }
60
- if (top + height > scrollY + clientHeight) {
62
+ if (top + height > clientHeight) {
61
63
  top -= height;
62
64
  }
63
- left = Math.max(left, scrollX);
64
- top = Math.max(top, scrollY);
65
+ left = Math.max(left, 1);
66
+ top = Math.max(top, 1);
65
67
  this.isHidden = false;
66
- this.pageX = left;
67
- this.pageY = top;
68
+ this.clientX = left;
69
+ this.clientY = top;
68
70
  this.changeDetectorRef.markForCheck();
69
71
  });
70
72
  }
71
73
  }
72
74
  CuiContextMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiContextMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
73
- CuiContextMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CuiContextMenuComponent, selector: "cui-context-menu[items][target]", inputs: { items: "items", target: "target" }, host: { listeners: { "document:click": "onClickOutside($event.target)" }, properties: { "class._hidden": "this.isHidden", "style.left.px": "this.pageX", "style.top.px": "this.pageY" } }, ngImport: i0, template: "<ul\n *ngIf=\"isVisible\"\n class=\"c-ul\"\n>\n <li\n *ngFor=\"let item of items; trackBy: trackByFn\"\n [style.color]=\"item.color\"\n >\n <button\n class=\"c-button\"\n (click)=\"onSelect(item)\"\n >\n <cui-svg\n *ngIf=\"item.icon\"\n [icon]=\"item.icon\"\n [color]=\"item.color\"\n ></cui-svg>\n <span>{{ item.label }}</span>\n </button>\n </li>\n</ul>\n", styles: [":host{position:absolute;z-index:2;display:block;width:268px;border-radius:8px}:host._hidden{visibility:hidden}.c-ul{padding:7px 0;margin:0;list-style:none;font-weight:400;font-size:14px;line-height:20px;box-shadow:0 1px 4px #0000000a,0 1px 4px #0000000a;border:1px solid var(--cui-base-200);border-radius:inherit;background:var(--cui-base-0);color:var(--cui-base-900);font-family:var(--cui-main-font)}.c-button{padding:8px 11px 8px 0;border:0;outline:none;cursor:pointer;appearance:none;color:inherit;font:inherit;background:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent;padding:8px 11px;width:100%;display:flex;align-items:center;gap:12px}.c-button:active{background:var(--cui-base-50)}@media (hover: hover){.c-button:hover{background:var(--cui-base-50)}}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.CuiSvgComponent, selector: "cui-svg[icon]", inputs: ["width", "height", "strokeWidth", "color", "icon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
75
+ CuiContextMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CuiContextMenuComponent, selector: "cui-context-menu[items][target]", inputs: { items: "items", target: "target" }, host: { listeners: { "document:click": "onClickOutside($event.target)", "window:scroll": "onClose()", "window:resize": "onClose()" }, properties: { "class._hidden": "this.isHidden", "style.left.px": "this.clientX", "style.top.px": "this.clientY" } }, ngImport: i0, template: "<ul\n *ngIf=\"isVisible\"\n class=\"c-ul\"\n>\n <li\n *ngFor=\"let item of items; trackBy: trackByFn\"\n [style.color]=\"item.color\"\n >\n <button\n class=\"c-button\"\n (click)=\"onSelect(item)\"\n >\n <cui-svg\n *ngIf=\"item.icon\"\n [icon]=\"item.icon\"\n [color]=\"item.color\"\n ></cui-svg>\n <span>{{ item.label }}</span>\n </button>\n </li>\n</ul>\n", styles: [":host{position:fixed;z-index:2;display:block;width:268px;border-radius:8px}:host._hidden{visibility:hidden}.c-ul{padding:7px 0;margin:0;list-style:none;font-weight:400;font-size:14px;line-height:20px;box-shadow:0 1px 4px #0000000a,0 1px 4px #0000000a;border:1px solid var(--cui-base-200);border-radius:inherit;background:var(--cui-base-0);color:var(--cui-base-900);font-family:var(--cui-main-font)}.c-button{padding:8px 11px 8px 0;border:0;outline:none;cursor:pointer;appearance:none;color:inherit;font:inherit;background:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent;padding:8px 11px;width:100%;display:flex;align-items:center;gap:12px}.c-button:active{background:var(--cui-base-50)}@media (hover: hover){.c-button:hover{background:var(--cui-base-50)}}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.CuiSvgComponent, selector: "cui-svg[icon]", inputs: ["width", "height", "strokeWidth", "color", "icon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
74
76
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CuiContextMenuComponent, decorators: [{
75
77
  type: Component,
76
- args: [{ selector: 'cui-context-menu[items][target]', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ul\n *ngIf=\"isVisible\"\n class=\"c-ul\"\n>\n <li\n *ngFor=\"let item of items; trackBy: trackByFn\"\n [style.color]=\"item.color\"\n >\n <button\n class=\"c-button\"\n (click)=\"onSelect(item)\"\n >\n <cui-svg\n *ngIf=\"item.icon\"\n [icon]=\"item.icon\"\n [color]=\"item.color\"\n ></cui-svg>\n <span>{{ item.label }}</span>\n </button>\n </li>\n</ul>\n", styles: [":host{position:absolute;z-index:2;display:block;width:268px;border-radius:8px}:host._hidden{visibility:hidden}.c-ul{padding:7px 0;margin:0;list-style:none;font-weight:400;font-size:14px;line-height:20px;box-shadow:0 1px 4px #0000000a,0 1px 4px #0000000a;border:1px solid var(--cui-base-200);border-radius:inherit;background:var(--cui-base-0);color:var(--cui-base-900);font-family:var(--cui-main-font)}.c-button{padding:8px 11px 8px 0;border:0;outline:none;cursor:pointer;appearance:none;color:inherit;font:inherit;background:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent;padding:8px 11px;width:100%;display:flex;align-items:center;gap:12px}.c-button:active{background:var(--cui-base-50)}@media (hover: hover){.c-button:hover{background:var(--cui-base-50)}}\n"] }]
78
+ args: [{ selector: 'cui-context-menu[items][target]', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ul\n *ngIf=\"isVisible\"\n class=\"c-ul\"\n>\n <li\n *ngFor=\"let item of items; trackBy: trackByFn\"\n [style.color]=\"item.color\"\n >\n <button\n class=\"c-button\"\n (click)=\"onSelect(item)\"\n >\n <cui-svg\n *ngIf=\"item.icon\"\n [icon]=\"item.icon\"\n [color]=\"item.color\"\n ></cui-svg>\n <span>{{ item.label }}</span>\n </button>\n </li>\n</ul>\n", styles: [":host{position:fixed;z-index:2;display:block;width:268px;border-radius:8px}:host._hidden{visibility:hidden}.c-ul{padding:7px 0;margin:0;list-style:none;font-weight:400;font-size:14px;line-height:20px;box-shadow:0 1px 4px #0000000a,0 1px 4px #0000000a;border:1px solid var(--cui-base-200);border-radius:inherit;background:var(--cui-base-0);color:var(--cui-base-900);font-family:var(--cui-main-font)}.c-button{padding:8px 11px 8px 0;border:0;outline:none;cursor:pointer;appearance:none;color:inherit;font:inherit;background:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent;padding:8px 11px;width:100%;display:flex;align-items:center;gap:12px}.c-button:active{background:var(--cui-base-50)}@media (hover: hover){.c-button:hover{background:var(--cui-base-50)}}\n"] }]
77
79
  }], propDecorators: { items: [{
78
80
  type: Input
79
81
  }], target: [{
@@ -81,14 +83,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
81
83
  }], isHidden: [{
82
84
  type: HostBinding,
83
85
  args: ['class._hidden']
84
- }], pageX: [{
86
+ }], clientX: [{
85
87
  type: HostBinding,
86
88
  args: ['style.left.px']
87
- }], pageY: [{
89
+ }], clientY: [{
88
90
  type: HostBinding,
89
91
  args: ['style.top.px']
90
92
  }], onClickOutside: [{
91
93
  type: HostListener,
92
94
  args: ['document:click', ['$event.target']]
95
+ }], onClose: [{
96
+ type: HostListener,
97
+ args: ['window:scroll']
98
+ }, {
99
+ type: HostListener,
100
+ args: ['window:resize']
93
101
  }] } });
94
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9jb250ZXh0LW1lbnUvY29udGV4dC1tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9jb250ZXh0LW1lbnUvY29udGV4dC1tZW51LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsV0FBVyxFQUNYLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUVOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7OztBQVUzQyxNQUFNLE9BQU8sdUJBQXVCO0lBTnBDO1FBT21CLHNCQUFpQixHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQzlDLFlBQU8sR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsYUFBYSxDQUFDO1FBQzNDLGFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDNUIsb0JBQWUsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQztRQUNoRCxXQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFxQixDQUFDO1FBRXBELGNBQVMsR0FBRyxLQUFLLENBQUM7UUFVNUIsYUFBUSxHQUFZLEtBQUssQ0FBQztLQWtGM0I7SUExRVEsZUFBZTtRQUNwQixJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0lBRVMsUUFBUSxDQUFDLElBQXdCO1FBQ3pDLElBQUksQ0FBQyxTQUFTLEdBQUcs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ZTtnQkFJbEIsS0FBSztzQkFEZCxXQUFXO3VCQUFDLGVBQWU7Z0JBSWxCLEtBQUs7c0JBRGQsV0FBVzt1QkFBQyxjQUFjO2dCQWtCakIsY0FBYztzQkFEdkIsWUFBWTt1QkFBQyxnQkFBZ0IsRUFBRSxDQUFDLGVBQWUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBIb3N0QmluZGluZyxcbiAgSG9zdExpc3RlbmVyLFxuICBpbmplY3QsXG4gIElucHV0LFxuICBPbkRlc3Ryb3lcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBET0NVTUVOVCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbmltcG9ydCB0eXBlIHsgQ3VpQ29udGV4dE1lbnVJdGVtIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2N1aS1jb250ZXh0LW1lbnVbaXRlbXNdW3RhcmdldF0nLFxuICB0ZW1wbGF0ZVVybDogJy4vY29udGV4dC1tZW51LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY29udGV4dC1tZW51LmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEN1aUNvbnRleHRNZW51Q29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgcHJpdmF0ZSByZWFkb25seSBjaGFuZ2VEZXRlY3RvclJlZiA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG4gIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudCA9IGluamVjdChFbGVtZW50UmVmKS5uYXRpdmVFbGVtZW50O1xuICBwcml2YXRlIHJlYWRvbmx5IGRvY3VtZW50ID0gaW5qZWN0KERPQ1VNRU5UKTtcbiAgcHJpdmF0ZSByZWFkb25seSBkb2N1bWVudEVsZW1lbnQgPSB0aGlzLmRvY3VtZW50LmRvY3VtZW50RWxlbWVudDtcbiAgcHJpdmF0ZSByZWFkb25seSB3aW5kb3cgPSB0aGlzLmRvY3VtZW50LmRlZmF1bHRWaWV3IGFzIFdpbmRvdztcblxuICBwcm90ZWN0ZWQgaXNWaXNpYmxlID0gZmFsc2U7XG4gIHByb3RlY3RlZCB0YXJnZXRFdmVudExpc3RlbmVyITogKGV2ZW50OiBNb3VzZUV2ZW50KSA9PiB2b2lkO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBpdGVtcyE6IEN1aUNvbnRleHRNZW51SXRlbVtdO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB0YXJnZXQhOiBIVE1MRWxlbWVudDtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLl9oaWRkZW4nKVxuICBpc0hpZGRlbjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBIb3N0QmluZGluZygnc3R5bGUubGVmdC5weCcpXG4gIHByb3RlY3RlZCBwYWdlWD86IG51bWJlcjtcblxuICBASG9zdEJpbmRpbmcoJ3N0eWxlLnRvcC5weCcpXG4gIHByb3RlY3RlZCBwYWdlWT86IG51bWJlcjtcblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuaW5pdFRhcmdldEVsZW1lbnRMaXN0ZW5lcigpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveVRhcmdldEVsZW1lbnRMaXN0ZW5lcigpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG9uU2VsZWN0KGl0ZW06IEN1aUNvbnRleHRNZW51SXRlbSk6IHZvaWQge1xuICAgIHRoaXMuaXNWaXNpYmxlID0gZmFsc2U7XG5cbiAgICBpdGVtLmNvbW1hbmQ/LigpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6Y2xpY2snLCBbJyRldmVudC50YXJnZXQnXSlcbiAgcHJvdGVjdGVkIG9uQ2xpY2tPdXRzaWRlKHRhcmdldDogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5lbGVtZW50LmNvbnRhaW5zKHRhcmdldCkgfHwgdGhpcy50YXJnZXQuY29udGFpbnModGFyZ2V0KSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuaXNWaXNpYmxlID0gZmFsc2U7XG4gIH1cblxuICBwcm90ZWN0ZWQgdHJhY2tCeUZuKF86IG51bWJlciwgaXRlbTogQ3VpQ29udGV4dE1lbnVJdGVtKTogc3RyaW5nIHtcbiAgICByZXR1cm4gaXRlbS5sYWJlbDtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdFRhcmdldEVsZW1lbnRMaXN0ZW5lcigpOiB2b2lkIHtcbiAgICB0aGlzLnRhcmdldEV2ZW50TGlzdGVuZXIgPSAoeyBwYWdlWCwgcGFnZVkgfSkgPT4ge1xuICAgICAgdGhpcy5pc1Zpc2libGUgPSAhdGhpcy5pc1Zpc2libGU7XG5cbiAgICAgIGlmICh0aGlzLmlzVmlzaWJsZSkge1xuICAgICAgICB0aGlzLmNoYW5nZVBvc2l0aW9uKHBhZ2VYLCBwYWdlWSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgfTtcblxuICAgIHRoaXMudGFyZ2V0LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy50YXJnZXRFdmVudExpc3RlbmVyKTtcbiAgfVxuXG4gIHByaXZhdGUgZGVzdHJveVRhcmdldEVsZW1lbnRMaXN0ZW5lcigpOiB2b2lkIHtcbiAgICB0aGlzLnRhcmdldC5yZW1vdmVFdmVudExpc3RlbmVyKCdjbGljaycsIHRoaXMudGFyZ2V0RXZlbnRMaXN0ZW5lcik7XG4gIH1cblxuICBwcml2YXRlIGNoYW5nZVBvc2l0aW9uKHg6IG51bWJlciwgeTogbnVtYmVyKTogdm9pZCB7XG4gICAgdGhpcy5pc0hpZGRlbiA9IHRydWU7XG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGNvbnN0IHsgc2Nyb2xsWCwgc2Nyb2xsWSB9ID0gdGhpcy53aW5kb3c7XG4gICAgICBjb25zdCB7IGNsaWVudFdpZHRoLCBjbGllbnRIZWlnaHQgfSA9IHRoaXMuZG9jdW1lbnRFbGVtZW50O1xuICAgICAgY29uc3Qgd2lkdGggPSB0aGlzLmVsZW1lbnQub2Zmc2V0V2lkdGg7XG4gICAgICBjb25zdCBoZWlnaHQgPSB0aGlzLmVsZW1lbnQub2Zmc2V0SGVpZ2h0O1xuICAgICAgbGV0IGxlZnQgPSB4O1xuICAgICAgbGV0IHRvcCA9IHk7XG5cbiAgICAgIGlmIChsZWZ0ICsgd2lkdGggPiBzY3JvbGxYICsgY2xpZW50V2lkdGgpIHtcbiAgICAgICAgbGVmdCAtPSB3aWR0aDtcbiAgICAgIH1cblxuICAgICAgaWYgKHRvcCArIGhlaWdodCA+IHNjcm9sbFkgKyBjbGllbnRIZWlnaHQpIHtcbiAgICAgICAgdG9wIC09IGhlaWdodDtcbiAgICAgIH1cblxuICAgICAgbGVmdCA9IE1hdGgubWF4KGxlZnQsIHNjcm9sbFgpO1xuICAgICAgdG9wID0gTWF0aC5tYXgodG9wLCBzY3JvbGxZKTtcblxuICAgICAgdGhpcy5pc0hpZGRlbiA9IGZhbHNlO1xuICAgICAgdGhpcy5wYWdlWCA9IGxlZnQ7XG4gICAgICB0aGlzLnBhZ2VZID0gdG9wO1xuXG4gICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH0pO1xuICB9XG59XG4iLCI8dWxcbiAgKm5nSWY9XCJpc1Zpc2libGVcIlxuICBjbGFzcz1cImMtdWxcIlxuPlxuICA8bGlcbiAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBpdGVtczsgdHJhY2tCeTogdHJhY2tCeUZuXCJcbiAgICBbc3R5bGUuY29sb3JdPVwiaXRlbS5jb2xvclwiXG4gID5cbiAgICA8YnV0dG9uXG4gICAgICBjbGFzcz1cImMtYnV0dG9uXCJcbiAgICAgIChjbGljayk9XCJvblNlbGVjdChpdGVtKVwiXG4gICAgPlxuICAgICAgPGN1aS1zdmdcbiAgICAgICAgKm5nSWY9XCJpdGVtLmljb25cIlxuICAgICAgICBbaWNvbl09XCJpdGVtLmljb25cIlxuICAgICAgICBbY29sb3JdPVwiaXRlbS5jb2xvclwiXG4gICAgICA+PC9jdWktc3ZnPlxuICAgICAgPHNwYW4+e3sgaXRlbS5sYWJlbCB9fTwvc3Bhbj5cbiAgICA8L2J1dHRvbj5cbiAgPC9saT5cbjwvdWw+XG4iXX0=
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGV4dC1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9jb250ZXh0LW1lbnUvY29udGV4dC1tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvY29tcG9uZW50cy9jb250ZXh0LW1lbnUvY29udGV4dC1tZW51LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsV0FBVyxFQUNYLFlBQVksRUFDWixNQUFNLEVBQ04sS0FBSyxFQUNOLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7OztBQVUzQyxNQUFNLE9BQU8sdUJBQXVCO0lBTnBDO1FBT21CLHNCQUFpQixHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQzlDLFlBQU8sR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsYUFBYSxDQUFDO1FBQzNDLGFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDNUIsb0JBQWUsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQztRQUNoRCxXQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFxQixDQUFDO1FBRXBELGNBQVMsR0FBRyxLQUFLLENBQUM7UUFVNUIsYUFBUSxHQUFZLEtBQUssQ0FBQztLQXVGM0I7SUEvRVEsZUFBZTtRQUNwQixJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRU0sV0FBVztRQUNoQixJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0lBRVMsUUFBUSxDQUFDLElBQXdCO1FBQ3pDLElBQUksQ0FBQyxTQUFTLEdBQUcs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O3VCQUFDLGVBQWU7Z0JBSWxCLE9BQU87c0JBRGhCLFdBQVc7dUJBQUMsY0FBYztnQkFrQmpCLGNBQWM7c0JBRHZCLFlBQVk7dUJBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxlQUFlLENBQUM7Z0JBV3ZDLE9BQU87c0JBRmhCLFlBQVk7dUJBQUMsZUFBZTs7c0JBQzVCLFlBQVk7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgSG9zdEJpbmRpbmcsXG4gIEhvc3RMaXN0ZW5lcixcbiAgaW5qZWN0LFxuICBJbnB1dFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHR5cGUgeyBDdWlDb250ZXh0TWVudUl0ZW0gfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY3VpLWNvbnRleHQtbWVudVtpdGVtc11bdGFyZ2V0XScsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb250ZXh0LW1lbnUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jb250ZXh0LW1lbnUuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgQ3VpQ29udGV4dE1lbnVDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIHJlYWRvbmx5IGNoYW5nZURldGVjdG9yUmVmID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50ID0gaW5qZWN0KEVsZW1lbnRSZWYpLm5hdGl2ZUVsZW1lbnQ7XG4gIHByaXZhdGUgcmVhZG9ubHkgZG9jdW1lbnQgPSBpbmplY3QoRE9DVU1FTlQpO1xuICBwcml2YXRlIHJlYWRvbmx5IGRvY3VtZW50RWxlbWVudCA9IHRoaXMuZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50O1xuICBwcml2YXRlIHJlYWRvbmx5IHdpbmRvdyA9IHRoaXMuZG9jdW1lbnQuZGVmYXVsdFZpZXcgYXMgV2luZG93O1xuXG4gIHByb3RlY3RlZCBpc1Zpc2libGUgPSBmYWxzZTtcbiAgcHJvdGVjdGVkIHRhcmdldEV2ZW50TGlzdGVuZXIhOiAoZXZlbnQ6IE1vdXNlRXZlbnQpID0+IHZvaWQ7XG5cbiAgQElucHV0KClcbiAgcHVibGljIGl0ZW1zITogQ3VpQ29udGV4dE1lbnVJdGVtW107XG5cbiAgQElucHV0KClcbiAgcHVibGljIHRhcmdldCE6IEhUTUxFbGVtZW50O1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3MuX2hpZGRlbicpXG4gIGlzSGlkZGVuOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS5sZWZ0LnB4JylcbiAgcHJvdGVjdGVkIGNsaWVudFg/OiBudW1iZXI7XG5cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS50b3AucHgnKVxuICBwcm90ZWN0ZWQgY2xpZW50WT86IG51bWJlcjtcblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuaW5pdFRhcmdldEVsZW1lbnRMaXN0ZW5lcigpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuZGVzdHJveVRhcmdldEVsZW1lbnRMaXN0ZW5lcigpO1xuICB9XG5cbiAgcHJvdGVjdGVkIG9uU2VsZWN0KGl0ZW06IEN1aUNvbnRleHRNZW51SXRlbSk6IHZvaWQge1xuICAgIHRoaXMuaXNWaXNpYmxlID0gZmFsc2U7XG5cbiAgICBpdGVtLmNvbW1hbmQ/LigpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6Y2xpY2snLCBbJyRldmVudC50YXJnZXQnXSlcbiAgcHJvdGVjdGVkIG9uQ2xpY2tPdXRzaWRlKHRhcmdldDogSFRNTEVsZW1lbnQpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5lbGVtZW50LmNvbnRhaW5zKHRhcmdldCkgfHwgdGhpcy50YXJnZXQuY29udGFpbnModGFyZ2V0KSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuaXNWaXNpYmxlID0gZmFsc2U7XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6c2Nyb2xsJylcbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScpXG4gIHByb3RlY3RlZCBvbkNsb3NlKCk6IHZvaWQge1xuICAgIHRoaXMuaXNWaXNpYmxlID0gZmFsc2U7XG4gIH1cblxuICBwcm90ZWN0ZWQgdHJhY2tCeUZuKF86IG51bWJlciwgaXRlbTogQ3VpQ29udGV4dE1lbnVJdGVtKTogc3RyaW5nIHtcbiAgICByZXR1cm4gaXRlbS5sYWJlbDtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdFRhcmdldEVsZW1lbnRMaXN0ZW5lcigpOiB2b2lkIHtcbiAgICB0aGlzLnRhcmdldEV2ZW50TGlzdGVuZXIgPSAoeyBjbGllbnRYLCBjbGllbnRZIH0pID0+IHtcbiAgICAgIHRoaXMuaXNWaXNpYmxlID0gIXRoaXMuaXNWaXNpYmxlO1xuXG4gICAgICBpZiAodGhpcy5pc1Zpc2libGUpIHtcbiAgICAgICAgdGhpcy5jaGFuZ2VQb3NpdGlvbihjbGllbnRYLCBjbGllbnRZKTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICB9O1xuXG4gICAgdGhpcy50YXJnZXQuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLnRhcmdldEV2ZW50TGlzdGVuZXIpO1xuICB9XG5cbiAgcHJpdmF0ZSBkZXN0cm95VGFyZ2V0RWxlbWVudExpc3RlbmVyKCk6IHZvaWQge1xuICAgIHRoaXMudGFyZ2V0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgdGhpcy50YXJnZXRFdmVudExpc3RlbmVyKTtcbiAgfVxuXG4gIHByaXZhdGUgY2hhbmdlUG9zaXRpb24oeDogbnVtYmVyLCB5OiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLmlzSGlkZGVuID0gdHJ1ZTtcblxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgY29uc3QgeyBjbGllbnRXaWR0aCwgY2xpZW50SGVpZ2h0IH0gPSB0aGlzLmRvY3VtZW50RWxlbWVudDtcbiAgICAgIGNvbnN0IHdpZHRoID0gdGhpcy5lbGVtZW50Lm9mZnNldFdpZHRoO1xuICAgICAgY29uc3QgaGVpZ2h0ID0gdGhpcy5lbGVtZW50Lm9mZnNldEhlaWdodDtcbiAgICAgIGxldCBsZWZ0ID0geDtcbiAgICAgIGxldCB0b3AgPSB5O1xuXG4gICAgICBpZiAobGVmdCArIHdpZHRoID4gY2xpZW50V2lkdGgpIHtcbiAgICAgICAgbGVmdCAtPSB3aWR0aDtcbiAgICAgIH1cblxuICAgICAgaWYgKHRvcCArIGhlaWdodCA+IGNsaWVudEhlaWdodCkge1xuICAgICAgICB0b3AgLT0gaGVpZ2h0O1xuICAgICAgfVxuXG4gICAgICBsZWZ0ID0gTWF0aC5tYXgobGVmdCwgMSk7XG4gICAgICB0b3AgPSBNYXRoLm1heCh0b3AsIDEpO1xuXG4gICAgICB0aGlzLmlzSGlkZGVuID0gZmFsc2U7XG4gICAgICB0aGlzLmNsaWVudFggPSBsZWZ0O1xuICAgICAgdGhpcy5jbGllbnRZID0gdG9wO1xuXG4gICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpO1xuICAgIH0pO1xuICB9XG59XG4iLCI8dWxcbiAgKm5nSWY9XCJpc1Zpc2libGVcIlxuICBjbGFzcz1cImMtdWxcIlxuPlxuICA8bGlcbiAgICAqbmdGb3I9XCJsZXQgaXRlbSBvZiBpdGVtczsgdHJhY2tCeTogdHJhY2tCeUZuXCJcbiAgICBbc3R5bGUuY29sb3JdPVwiaXRlbS5jb2xvclwiXG4gID5cbiAgICA8YnV0dG9uXG4gICAgICBjbGFzcz1cImMtYnV0dG9uXCJcbiAgICAgIChjbGljayk9XCJvblNlbGVjdChpdGVtKVwiXG4gICAgPlxuICAgICAgPGN1aS1zdmdcbiAgICAgICAgKm5nSWY9XCJpdGVtLmljb25cIlxuICAgICAgICBbaWNvbl09XCJpdGVtLmljb25cIlxuICAgICAgICBbY29sb3JdPVwiaXRlbS5jb2xvclwiXG4gICAgICA+PC9jdWktc3ZnPlxuICAgICAgPHNwYW4+e3sgaXRlbS5sYWJlbCB9fTwvc3Bhbj5cbiAgICA8L2J1dHRvbj5cbiAgPC9saT5cbjwvdWw+XG4iXX0=