@cuby-ui/core 0.0.179 → 0.0.180
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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cuby-ui-core.mjs","sources":["../../../projects/core/components/accordion/accordion.component.ts","../../../projects/core/components/accordion/accordion.template.html","../../../projects/core/components/button/button.options.ts","../../../projects/core/components/svg/svg.component.ts","../../../projects/core/components/svg/svg.template.html","../../../projects/core/components/button/button.component.ts","../../../projects/core/components/button/button.template.html","../../../projects/core/components/accordion/accordion-item/accordion-item.component.ts","../../../projects/core/components/accordion/accordion-item/accordion-item.template.html","../../../projects/core/components/svg/svg.module.ts","../../../projects/core/components/button/button.module.ts","../../../projects/core/components/accordion/accordion.module.ts","../../../projects/core/components/notification/notification.options.ts","../../../projects/core/components/notification/notification.component.ts","../../../projects/core/components/notification/notification.template.html","../../../projects/core/components/notification/notification.module.ts","../../../projects/core/components/alert/alert.tokens.ts","../../../projects/core/components/alert/alert.component.ts","../../../projects/core/components/alert/alert.template.html","../../../projects/core/components/alert/alerts.component.ts","../../../projects/core/components/alert/alerts.template.html","../../../projects/core/components/alert/alert.module.ts","../../../projects/core/components/alert/alert.service.ts","../../../projects/core/components/badge/badge.options.ts","../../../projects/core/components/badge/badge.component.ts","../../../projects/core/components/badge/badge.template.html","../../../projects/core/components/badge/badge.module.ts","../../../projects/core/components/banner/banner.options.ts","../../../projects/core/services/theme.options.ts","../../../projects/core/services/theme.service.ts","../../../projects/core/components/banner/banner.component.ts","../../../projects/core/components/banner/banner.template.html","../../../projects/core/components/banner/banner.module.ts","../../../projects/core/components/breadcrumbs/breadcrumbs.component.ts","../../../projects/core/components/breadcrumbs/breadcrumbs.template.html","../../../projects/core/components/breadcrumbs/breadcrumb/breadcrumb.component.ts","../../../projects/core/components/breadcrumbs/breadcrumb/breadcrumb.template.html","../../../projects/core/components/breadcrumbs/breadcrumbs.module.ts","../../../projects/core/components/button-group/button-group.component.ts","../../../projects/core/components/button-group/button-group.template.html","../../../projects/core/components/button-group/button-group.module.ts","../../../projects/core/components/checkbox/checkbox.component.ts","../../../projects/core/components/checkbox/checkbox.module.ts","../../../projects/core/components/root/root.options.ts","../../../projects/core/components/dialog/dialog.tokens.ts","../../../projects/core/components/dialog/dialogs.component.ts","../../../projects/core/components/dialog/dialogs.template.html","../../../projects/core/components/root/root.component.ts","../../../projects/core/components/root/root.template.html","../../../projects/core/components/dialog/dialog.component.ts","../../../projects/core/components/dialog/dialog.template.html","../../../projects/core/components/dialog/dialog-actions/dialog-actions.component.ts","../../../projects/core/components/dialog/dialog-actions/dialog-actions.template.html","../../../projects/core/components/dialog/dialog-header/dialog-header.component.ts","../../../projects/core/components/dialog/dialog-header/dialog-header.template.html","../../../projects/core/components/dialog/dialog.module.ts","../../../projects/core/components/dialog/dialog.service.ts","../../../projects/core/components/root/root.module.ts","../../../projects/core/components/context-menu/context-menu.component.ts","../../../projects/core/components/context-menu/context-menu.component.html","../../../projects/core/components/context-menu/context-menu.module.ts","../../../projects/core/components/form-field/form-field.component.ts","../../../projects/core/components/form-field/form-field.template.html","../../../projects/core/components/form-field/form-field.module.ts","../../../projects/core/components/hint/hint.component.ts","../../../projects/core/components/hint/hint.template.html","../../../projects/core/components/hint/hint.module.ts","../../../projects/core/components/icon-button/icon-button.component.ts","../../../projects/core/components/icon-button/icon-button.template.html","../../../projects/core/components/icon-button/icon-button.module.ts","../../../projects/core/directives/text-field-controller/text-field.controller.ts","../../../projects/core/directives/text-field-controller/text-field-icon-left.directive.ts","../../../projects/core/directives/text-field-controller/text-field-id.directive.ts","../../../projects/core/directives/text-field-controller/text-field-is-error.directive.ts","../../../projects/core/directives/text-field-controller/text-field-placeholder.directive.ts","../../../projects/core/directives/text-field-controller/text-field-size.directive.ts","../../../projects/core/directives/text-field-controller/text-field-controller.module.ts","../../../projects/core/directives/text-field-controller/text-field-controller.provider.ts","../../../projects/core/components/input-number/input-number.component.ts","../../../projects/core/components/input-number/input-number.template.html","../../../projects/core/components/input-number/input-number.module.ts","../../../projects/core/components/input-password/input-password.component.ts","../../../projects/core/components/input-password/input-password.template.html","../../../projects/core/components/input-password/input-password.module.ts","../../../projects/core/components/input-text/input-text.component.ts","../../../projects/core/components/input-text/input-text.template.html","../../../projects/core/components/input-text/input-text.module.ts","../../../projects/core/components/input-time/input-time.options.ts","../../../projects/core/components/input-time/input-time.component.ts","../../../projects/core/components/input-time/input-time.template.html","../../../projects/core/components/input-time/input-time.module.ts","../../../projects/core/components/label/label.component.ts","../../../projects/core/components/label/label.template.html","../../../projects/core/components/label/label.module.ts","../../../projects/core/components/radio/radio.component.ts","../../../projects/core/components/radio/radio.module.ts","../../../projects/core/components/select/select.component.ts","../../../projects/core/components/select/select.template.html","../../../projects/core/components/select/select.module.ts","../../../projects/core/components/tabs/tab/tab.component.ts","../../../projects/core/components/tabs/tab/tab.template.html","../../../projects/core/components/tabs/tabs.component.ts","../../../projects/core/components/tabs/tabs.template.html","../../../projects/core/components/tabs/tabs.module.ts","../../../projects/core/components/textarea/textarea.component.ts","../../../projects/core/components/textarea/textarea.module.ts","../../../projects/core/components/toggle/toggle.component.ts","../../../projects/core/components/toggle/toggle.module.ts","../../../projects/core/utils/format/remove-spaces.ts","../../../projects/core/utils/format/replace.ts","../../../projects/core/cuby-ui-core.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'cui-accordion',\n templateUrl: './accordion.template.html',\n styleUrls: ['./accordion.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiAccordionComponent {\n}\n","<ng-content select=\"cui-accordion-item\"></ng-content>\n","import { InjectionToken } from '@angular/core';\n\nimport type {\n CuiAppearanceAction,\n CuiAppearanceDestructive,\n CuiAppearanceFlat,\n CuiAppearanceGhost,\n CuiAppearanceLink,\n CuiAppearanceOutlined,\n CuiAppearanceOutlinedGray,\n CuiAppearanceSecondary,\n CuiShapeRounded,\n CuiSizeMd,\n CuiSizeSm,\n CuiSizeXs,\n CuiSizeXxs\n} from '../../types';\n\nexport interface CuiButtonOptions {\n readonly appearance:\n | CuiAppearanceAction\n | CuiAppearanceSecondary\n | CuiAppearanceOutlined\n | CuiAppearanceOutlinedGray\n | CuiAppearanceGhost\n | CuiAppearanceFlat\n | CuiAppearanceDestructive\n | CuiAppearanceLink\n readonly shape: CuiShapeRounded | null;\n readonly size:\n | CuiSizeXxs\n | CuiSizeXs\n | CuiSizeSm\n | CuiSizeMd;\n}\n\nexport const CUI_BUTTON_DEFAULT_OPTIONS: CuiButtonOptions = {\n appearance: 'action',\n shape: null,\n size: 'sm'\n};\n\nexport const CUI_BUTTON_OPTIONS = new InjectionToken('', {\n factory: () => CUI_BUTTON_DEFAULT_OPTIONS\n});\n","import {\n ChangeDetectionStrategy,\n Component,\n HostBinding,\n inject,\n Input\n} from '@angular/core';\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\n\nimport type { CuiIcon } from '@cuby-ui/icons';\nimport { CUI_ICONS, cuiIsIcon } from '@cuby-ui/icons';\n\n@Component({\n selector: 'cui-svg[icon]',\n templateUrl: './svg.template.html',\n styleUrls: ['./svg.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiSvgComponent {\n private readonly domSanitizer = inject(DomSanitizer);\n\n protected safeSvgContent!: SafeHtml;\n\n @Input()\n public width?: number;\n\n @Input()\n public height?: number;\n\n @Input()\n @HostBinding('style.--stroke-width')\n public strokeWidth?: number;\n\n @Input()\n @HostBinding('style.--color')\n public color?: string;\n\n @Input()\n public set icon(icon: CuiIcon | string) {\n // TODO: В данном случае подключаются все иконки (вероятно, можно как-то оптимизировано их подключать)\n this.safeSvgContent = this.domSanitizer.bypassSecurityTrustHtml(cuiIsIcon(icon)\n ? CUI_ICONS[icon]\n : icon);\n }\n\n @HostBinding('class._with-stroke-width')\n public get isWithStrokeWidth(): boolean {\n return !!this.strokeWidth;\n }\n\n @HostBinding('class._with-color')\n public get isWithColor(): boolean {\n return !!this.color;\n }\n}\n","<span\n [innerHTML]=\"safeSvgContent\"\n [style.width.px]=\"width\"\n [style.height.px]=\"height\"\n></span>","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n HostBinding,\n inject,\n Input,\n ViewChild,\n OnInit\n} from '@angular/core';\nimport type { CuiIcon } from '@cuby-ui/icons';\nimport { CUI_WINDOW } from '@cuby-ui/cdk';\n\nimport { CUI_BUTTON_OPTIONS, CuiButtonOptions } from './button.options';\n\n@Component({\n selector: 'button[cuiButton], a[cuiButton]',\n templateUrl: './button.template.html',\n styleUrls: ['./button.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiButtonComponent implements CuiButtonOptions, OnInit {\n private readonly changeDetectorRef = inject(ChangeDetectorRef);\n private readonly element = inject(ElementRef).nativeElement as HTMLButtonElement;\n private readonly window = inject(CUI_WINDOW);\n private readonly cuiButtonOptions = inject(CUI_BUTTON_OPTIONS);\n\n protected readonly AppearanceIconColors: Record<CuiButtonOptions['appearance'], string> = {\n action: '--c-action-icon-color',\n secondary: '--c-secondary-icon-color',\n outlined: '--c-outlined-icon-color',\n 'outlined-gray': '--c-outlined-gray-icon-color',\n ghost: '--c-ghost-icon-color',\n flat: '--c-flat-icon-color',\n destructive: '--c-destructive-icon-color',\n link: '--c-link-icon-color'\n };\n protected readonly COLOR_BASE_500 = 'var(--cui-base-500)';\n protected readonly BUTTON_ICONS_COLOR_BASE_500: CuiButtonOptions['appearance'][] = [\n 'secondary',\n 'outlined',\n 'outlined-gray',\n 'ghost'\n ];\n\n protected _appearance = this.cuiButtonOptions.appearance;\n protected iconColor = this.getIconColor(this._appearance);\n protected _size = this.cuiButtonOptions.size;\n protected iconDimensions = {\n width: 20,\n height: 20\n };\n\n @Input()\n @HostBinding('attr.data-shape')\n public shape = this.cuiButtonOptions.shape;\n\n @Input()\n @HostBinding('class._disabled')\n public disabled = false;\n\n @Input()\n @HostBinding('class._loading')\n public isLoaderShown = false;\n\n @Input()\n public icon?: CuiIcon | string;\n\n @Input()\n public iconRight?: CuiIcon | string;\n\n @Input()\n @HostBinding('attr.data-appearance')\n public get appearance(): CuiButtonOptions['appearance'] {\n return this._appearance;\n }\n\n public set appearance(appearance: CuiButtonOptions['appearance']) {\n this._appearance = appearance;\n\n this.changeIconColor();\n }\n\n @Input()\n @HostBinding('attr.data-size')\n public get size(): CuiButtonOptions['size'] {\n return this._size;\n }\n\n public set size(size: CuiButtonOptions['size']) {\n this._size = size;\n\n if (size === 'xxs') {\n this.iconDimensions = {\n width: 16,\n height: 16\n };\n\n return;\n }\n\n this.iconDimensions = {\n width: 20,\n height: 20\n };\n }\n\n @HostBinding('class._only-icon')\n protected containsOnlyIcon = false;\n\n @HostBinding('disabled')\n protected get isDisabled(): boolean {\n return this.disabled || this.isLoaderShown;\n }\n\n @ViewChild('content')\n protected content!: ElementRef<HTMLSpanElement>;\n\n public ngOnInit(): void {\n this.initIconColor();\n }\n\n private initIconColor(): void {\n this.changeIconColor();\n }\n\n private changeIconColor(): void {\n Promise.resolve().then(() => {\n this.iconColor = this.getIconColor(this._appearance);\n\n this.changeDetectorRef.markForCheck();\n });\n }\n\n private getIconColor(appearance: CuiButtonOptions['appearance']): string {\n const customIconColor = this.window\n .getComputedStyle(this.element)\n .getPropertyValue(this.AppearanceIconColors[appearance]);\n\n if (customIconColor) {\n return customIconColor;\n }\n\n if (this.BUTTON_ICONS_COLOR_BASE_500.includes(appearance)) {\n return this.COLOR_BASE_500;\n }\n\n return 'currentColor';\n }\n}\n","<span\n class=\"c-wrapper\"\n [class.c-wrapper_invisible]=\"isLoaderShown\"\n>\n <cui-svg\n *ngIf=\"icon\"\n [icon]=\"icon\"\n [width]=\"iconDimensions.width\"\n [height]=\"iconDimensions.height\"\n [color]=\"iconColor\"\n ></cui-svg>\n <span\n #content\n class=\"c-content\"\n ><ng-content></ng-content></span>\n <cui-svg\n *ngIf=\"iconRight\"\n [icon]=\"iconRight\"\n [width]=\"iconDimensions.width\"\n [height]=\"iconDimensions.height\"\n [color]=\"iconColor\"\n ></cui-svg>\n</span>\n<cui-svg\n *ngIf=\"isLoaderShown\"\n icon=\"cuiIconLoading\"\n class=\"c-loader\"\n></cui-svg>\n","import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\nimport type { CuiIcon } from '@cuby-ui/icons';\n\n@Component({\n selector: 'cui-accordion-item',\n templateUrl: './accordion-item.template.html',\n styleUrls: ['./accordion-item.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiAccordionItemComponent {\n @Input()\n public isOpen = true;\n\n @Output()\n public readonly isOpenChange= new EventEmitter<boolean>();\n\n protected get buttonIcon(): CuiIcon {\n return this.isOpen ? 'cuiIconChevronDown' : 'cuiIconChevronRight';\n }\n\n protected onRowToggle(): void {\n this.isOpen = !this.isOpen;\n\n this.isOpenChange.emit(this.isOpen);\n }\n}\n","<header class=\"c-header\">\n <button\n cuiButton\n appearance=\"ghost\"\n size=\"xxs\"\n [icon]=\"buttonIcon\"\n (click)=\"onRowToggle()\"\n ></button>\n <div class=\"c-header__wrapper\">\n <ng-content></ng-content>\n </div>\n</header>\n<div *ngIf=\"isOpen\">\n <ng-content select=\"[cuiAccordionItemContent]\"></ng-content>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { CuiSvgComponent } from './svg.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [CuiSvgComponent],\n exports: [CuiSvgComponent]\n})\nexport class CuiSvgModule {\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { CuiButtonComponent } from './button.component';\nimport { CuiSvgModule } from '../svg';\n\n@NgModule({\n imports: [\n CommonModule,\n CuiSvgModule\n ],\n declarations: [CuiButtonComponent],\n exports: [CuiButtonComponent]\n})\nexport class CuiButtonModule {\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { CuiAccordionComponent } from './accordion.component';\nimport { CuiAccordionItemComponent } from './accordion-item/accordion-item.component';\nimport { CuiSvgModule } from '../svg';\nimport { CuiButtonModule } from '../button';\n\n@NgModule({\n imports: [\n CommonModule,\n CuiSvgModule,\n CuiButtonModule,\n ],\n declarations: [\n CuiAccordionComponent,\n CuiAccordionItemComponent\n ],\n exports: [\n CuiAccordionComponent,\n CuiAccordionItemComponent\n ]\n})\nexport class CuiAccordionModule {\n}\n","import { cuiCreateToken } from '@cuby-ui/cdk';\n\nimport type { CuiStatus } from '../../types';\n\nexport type CuiNotificationIcons = Record<CuiStatus, { icon: string }>;\n\nexport type CuiNotificationIconOptions = Record<CuiStatus, { color: string }>;\n\nexport interface CuiNotificationOptions {\n readonly status: CuiStatus;\n readonly mode: 'default' | 'light';\n}\n\nexport const CUI_NOTIFICATION_DEFAULT_OPTIONS: CuiNotificationOptions = {\n status: 'info',\n mode: 'default'\n};\n\nexport const CUI_NOTIFICATION_OPTIONS = cuiCreateToken(CUI_NOTIFICATION_DEFAULT_OPTIONS);\n\nexport const CUI_NOTIFICATION_ICONS: CuiNotificationIcons = {\n info: {\n icon: 'cuiIconInfo'\n },\n success: {\n icon: 'cuiIconCheckCircle'\n },\n alert: {\n icon: 'cuiIconAlertTriangle'\n },\n error: {\n icon: 'cuiIconXCircle'\n },\n} as const;\n\nexport const CUI_NOTIFICATION_ICON_OPTIONS_DEFAULT_MODE: CuiNotificationIconOptions = {\n info: {\n color: 'var(--c-info-icon-color)'\n },\n success: {\n color: 'var(--cui-green-500)'\n },\n alert: {\n color: 'var(--cui-yellow-400)'\n },\n error: {\n color: 'var(--cui-danger)'\n },\n} as const;\n\nexport const CUI_NOTIFICATION_ICON_OPTIONS_LIGHT_MODE: CuiNotificationIconOptions = {\n info: {\n color: 'var(--cui-info)'\n },\n success: {\n color: 'var(--cui-green-700)'\n },\n alert: {\n color: 'var(--cui-yellow-400)'\n },\n error: {\n color: 'var(--cui-danger)'\n },\n} as const;\n\nexport const CUI_NOTIFICATION_ICON_OPTIONS: Record<CuiNotificationOptions['mode'], CuiNotificationIconOptions> = {\n default: CUI_NOTIFICATION_ICON_OPTIONS_DEFAULT_MODE,\n light: CUI_NOTIFICATION_ICON_OPTIONS_LIGHT_MODE\n}","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n inject,\n Input,\n OnInit,\n Output\n} from '@angular/core';\nimport {\n CUI_NOTIFICATION_ICON_OPTIONS,\n CuiNotificationIconOptions,\n CuiNotificationOptions\n} from './notification.options';\nimport { CUI_NOTIFICATION_OPTIONS, CUI_NOTIFICATION_ICONS } from './notification.options';\n\n@Component({\n selector: 'cui-notification',\n templateUrl: './notification.template.html',\n styleUrls: ['./notification.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiNotificationComponent implements CuiNotificationOptions, OnInit {\n private readonly cuiNotificationOptions = inject(CUI_NOTIFICATION_OPTIONS);\n\n protected readonly ICONS = CUI_NOTIFICATION_ICONS;\n protected readonly ICON_OPTIONS = CUI_NOTIFICATION_ICON_OPTIONS;\n\n protected iconOptions!: CuiNotificationIconOptions;\n\n @Input()\n @HostBinding('attr.data-status')\n public status = this.cuiNotificationOptions.status;\n\n @Input()\n @HostBinding('attr.data-mode')\n public mode = this.cuiNotificationOptions.mode;\n\n @Input()\n public isCloseable = false;\n\n @Output()\n public readonly closed = new EventEmitter<void>();\n\n public ngOnInit(): void {\n this.initIconOptions();\n }\n\n protected onClose(): void {\n this.closed.next();\n }\n\n private initIconOptions(): void {\n this.iconOptions = this.ICON_OPTIONS[this.mode];\n }\n}\n","<cui-svg\n class=\"c-icon\"\n [icon]=\"ICONS[status].icon\"\n [color]=\"iconOptions[status].color\"\n></cui-svg>\n<div class=\"c-content\">\n <ng-content></ng-content>\n</div>\n<button\n *ngIf=\"isCloseable\"\n class=\"c-button\"\n (click)=\"onClose()\"\n>\n <cui-svg\n icon=\"cuiIconX\"\n color=\"var(--cui-gray-0)\"\n />\n</button>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { CuiSvgModule } from '../svg';\nimport { CuiNotificationComponent } from './notification.component';\n\n@NgModule({\n imports: [\n CommonModule,\n CuiSvgModule\n ],\n declarations: [CuiNotificationComponent],\n exports: [CuiNotificationComponent]\n})\nexport class CuiNotificationModule {\n}\n","import { inject, InjectionToken } from '@angular/core';\nimport { cuiCreateTokenFromFactory, CuiPopover } from '@cuby-ui/cdk';\nimport { cuiCreateToken } from '@cuby-ui/cdk';\nimport { BehaviorSubject } from 'rxjs';\n\nimport type { CuiAlertOptions } from './alert.interfaces';\nimport { CUI_NOTIFICATION_OPTIONS } from '../notification';\n\nexport const CUI_ALERTS = cuiCreateToken(\n new BehaviorSubject<ReadonlyArray<CuiPopover<CuiAlertOptions>>>([])\n);\n\nexport const CUI_ALERT_DEFAULT_OPTIONS: Omit<CuiAlertOptions, 'status'> = {\n label: '',\n needAutoClose: true,\n isCloseable: true,\n mode: 'default',\n position: 'right',\n resizing: 'fixed'\n};\n\nexport const CUI_ALERT_OPTIONS = cuiCreateTokenFromFactory(\n () => ({\n ...CUI_ALERT_DEFAULT_OPTIONS,\n ...inject(CUI_NOTIFICATION_OPTIONS)\n })\n);\n\nexport const CUI_ALERT_CONTEXT = new InjectionToken<CuiPopover<CuiAlertOptions>>('');\n","import type { OnInit } from '@angular/core';\nimport { ChangeDetectionStrategy, Component, inject, HostBinding } from '@angular/core';\n\nimport { CUI_ALERT_CONTEXT } from './alert.tokens';\nimport type { CuiAlertResizing } from './alert.types';\n\n@Component({\n selector: 'cui-alert',\n templateUrl: './alert.template.html',\n styleUrls: ['./alert.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiAlertComponent implements OnInit {\n protected readonly context = inject(CUI_ALERT_CONTEXT);\n\n protected readonly AUTO_CLOSE_DURATION_IN_MILLISECONDS = 3000;\n\n @HostBinding('attr.data-resizing')\n protected get resizing(): CuiAlertResizing {\n return this.context.resizing;\n }\n\n public ngOnInit(): void {\n this.initAutoClose();\n }\n\n protected onClosed(): void {\n this.context.$implicit.complete();\n }\n\n private initAutoClose(): void {\n if (!this.context.needAutoClose) {\n return;\n }\n\n setTimeout(this.onClosed.bind(this), this.AUTO_CLOSE_DURATION_IN_MILLISECONDS);\n }\n}\n","<cui-notification\n [status]=\"context.status\"\n [mode]=\"context.mode\"\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","import type { OnInit } from '@angular/core';\nimport { ChangeDetectionStrategy, Component, inject, Injector } from '@angular/core';\nimport type { CuiPopover } from '@cuby-ui/cdk';\nimport { CuiDestroyService } from '@cuby-ui/cdk';\nimport type { Observable } from 'rxjs';\nimport { takeUntil } from 'rxjs';\n\nimport { CUI_ALERT_CONTEXT, CUI_ALERTS } from './alert.tokens';\nimport type { CuiAlertOptions } from './alert.interfaces';\n\n@Component({\n selector: 'cui-alerts',\n templateUrl: './alerts.template.html',\n styleUrls: ['./alerts.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [CuiDestroyService]\n})\nexport class CuiAlertsComponent implements OnInit {\n private readonly destroy$ = inject(CuiDestroyService, { self: true });\n\n protected readonly alerts$: Observable<ReadonlyArray<CuiPopover<CuiAlertOptions>>> = inject(CUI_ALERTS);\n protected alertInjectors!: ReadonlyArray<Injector>;\n\n public ngOnInit(): void {\n this.initAlertInjectorsSubscription();\n }\n\n protected trackByFn(_: number, alert: CuiPopover<CuiAlertOptions>): string {\n return alert.id;\n }\n\n protected alertsMatcher(alert: CuiPopover<CuiAlertOptions>, position: string): boolean {\n return alert.position === position;\n }\n\n protected initAlertInjectorsSubscription(): void {\n this.alerts$\n .pipe(takeUntil(this.destroy$))\n .subscribe(dialogs => this.alertInjectors = dialogs.map(useValue => Injector.create({\n providers: [{ provide: CUI_ALERT_CONTEXT, useValue }]\n })));\n }\n}\n","<ng-container *cuiLet=\"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]\" />\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]\" />\n </ng-container>\n </div>\n</ng-container>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { CuiFilterPipe, CuiLetDirective } from '@cuby-ui/cdk';\n\nimport { CuiAlertComponent } from './alert.component';\nimport { CuiAlertsComponent } from './alerts.component';\nimport { CuiNotificationModule } from '../notification';\n\n@NgModule({\n imports: [\n CommonModule,\n CuiFilterPipe,\n CuiNotificationModule,\n CuiLetDirective\n ],\n declarations: [\n CuiAlertComponent,\n CuiAlertsComponent\n ],\n exports: [\n CuiAlertComponent,\n CuiAlertComponent,\n CuiAlertsComponent\n ]\n})\nexport class CuiAlertModule {\n}\n","import { inject, Injectable } from '@angular/core';\nimport { CuiPopoverService } from '@cuby-ui/cdk';\n\nimport { CUI_ALERT_OPTIONS, CUI_ALERTS } from './alert.tokens';\nimport { CuiAlertComponent } from './alert.component';\nimport type { CuiAlertOptions } from './alert.interfaces';\n\n@Injectable({\n providedIn: 'root',\n useFactory: () => new CuiAlertService(CUI_ALERTS, CuiAlertComponent, inject(CUI_ALERT_OPTIONS))\n})\nexport class CuiAlertService extends CuiPopoverService<CuiAlertOptions> {\n}\n","import { cuiCreateToken } from '@cuby-ui/cdk';\n\nimport type { CuiSizeMd, CuiSizeSm } from '../../types';\n\nexport interface CuiBadgeOptions {\n readonly color: 'light-blue' | 'yellow' | 'green' | 'gray' | 'dark-gray' | 'red' | 'violet';\n readonly size: CuiSizeSm | CuiSizeMd;\n readonly isWithDot: boolean;\n}\n\nexport const CUI_BADGE_DEFAULT_OPTIONS: CuiBadgeOptions = {\n color: 'light-blue',\n size: 'sm',\n isWithDot: false\n};\n\nexport const CUI_BADGE_OPTIONS = cuiCreateToken(CUI_BADGE_DEFAULT_OPTIONS);","import { ChangeDetectionStrategy, Component, HostBinding, inject, Input } from '@angular/core';\n\nimport type { CuiBadgeOptions } from './badge.options';\nimport { CUI_BADGE_OPTIONS } from './badge.options';\n\n@Component({\n selector: 'cui-badge',\n templateUrl: './badge.template.html',\n styleUrls: ['./badge.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiBadgeComponent implements CuiBadgeOptions {\n private readonly options = inject(CUI_BADGE_OPTIONS);\n\n @Input()\n @HostBinding('attr.data-color')\n public color = this.options.color;\n\n @Input()\n @HostBinding('attr.data-size')\n public size = this.options.size;\n\n @Input()\n public isWithDot = this.options.isWithDot;\n}\n","<span\n *ngIf=\"isWithDot\"\n class=\"c-dots\"\n></span>\n<ng-content />","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { CuiBadgeComponent } from './badge.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [CuiBadgeComponent],\n exports: [CuiBadgeComponent]\n})\nexport class CuiBadgeModule {\n}\n","import type { CuiStatus } from '../../types';\nimport { cuiCreateToken } from '@cuby-ui/cdk';\nimport type { CuiIcon } from '@cuby-ui/icons';\n\nexport type CuiBannerIconOptions = {\n [k in CuiStatus]: {\n icon: CuiIcon;\n color: string;\n }\n}\n\nexport interface CuiBannerOptions {\n readonly status: CuiStatus;\n}\n\nexport const CUI_BANNER_DEFAULT_OPTIONS: CuiBannerOptions = {\n status: 'info'\n};\n\nexport const CUI_BANNER_OPTIONS = cuiCreateToken(CUI_BANNER_DEFAULT_OPTIONS);\n","import { cuiCreateToken } from '@cuby-ui/cdk';\n\nexport type CuiTheme = 'light' | 'dark';\n\nexport const CUI_THEME_STORAGE_DEFAULT_KEY = 'cuiTheme';\n\nexport const CUI_DEFAULT_THEME: CuiTheme = 'light';\n\nexport const CUI_THEME_STORAGE_KEY = cuiCreateToken(CUI_THEME_STORAGE_DEFAULT_KEY);\n\nexport const CUI_THEME = cuiCreateToken<CuiTheme>(CUI_DEFAULT_THEME);","import { inject, Injectable } from '@angular/core';\nimport type { CuiNullable } from '@cuby-ui/cdk';\nimport { CUI_LOCAL_STORAGE } from '@cuby-ui/cdk';\nimport { BehaviorSubject } from 'rxjs';\n\nimport type { CuiTheme } from './theme.options';\nimport { CUI_THEME, CUI_THEME_STORAGE_KEY } from './theme.options';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CuiThemeService extends BehaviorSubject<CuiTheme> {\n private readonly localStorage = inject(CUI_LOCAL_STORAGE);\n private readonly key = inject(CUI_THEME_STORAGE_KEY);\n\n constructor() {\n super(\n inject(CUI_LOCAL_STORAGE).getItem(inject(CUI_THEME_STORAGE_KEY)) as CuiNullable<CuiTheme>\n ?? inject(CUI_THEME)\n );\n }\n\n public override next(theme: CuiTheme): void {\n this.localStorage.setItem(this.key, theme);\n super.next(theme);\n }\n\n // При работе только двух тем\n public switch(): void {\n this.next(this.value === 'light' ? 'dark' : 'light');\n }\n}","import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, inject, Input, Output } from '@angular/core';\n\nimport type { CuiBannerIconOptions, CuiBannerOptions } from './banner.options';\nimport { CUI_BANNER_OPTIONS } from './banner.options';\nimport type { CuiTheme } from '../../services';\nimport { CuiThemeService } from '../../services';\n\n@Component({\n selector: 'cui-banner',\n templateUrl: './banner.template.html',\n styleUrls: ['./banner.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiBannerComponent implements CuiBannerOptions {\n private readonly options = inject(CUI_BANNER_OPTIONS);\n protected readonly theme$ = inject(CuiThemeService);\n\n protected readonly ICON_OPTIONS: CuiBannerIconOptions = {\n info: {\n icon: 'cuiIconInfo',\n color: 'var(--c-info-icon-color)'\n },\n success: {\n icon: 'cuiIconCheckCircle',\n color: 'var(--cui-success)'\n },\n alert: {\n icon: 'cuiIconAlertTriangle',\n color: 'var(--c-alert-icon-color)'\n },\n error: {\n icon: 'cuiIconAlertCircle',\n color: 'var(--cui-danger)'\n },\n };\n protected readonly THEME_CLOSE_BUTTON_ICON_COLORS: Record<CuiTheme, string> = {\n light: 'var(--cui-gray-500)',\n dark: 'var(--cui-gray-0)'\n }\n\n @Input()\n @HostBinding('attr.data-status')\n public status = this.options.status;\n\n @Input()\n public isCloseable = true;\n\n @Input()\n public label?: string;\n\n @Input()\n public actionButtonText?: string;\n\n @Output()\n public actionButtonClicked = new EventEmitter<void>();\n\n @Output()\n public closed = new EventEmitter<void>();\n\n protected onAction(): void {\n this.actionButtonClicked.emit();\n }\n\n protected onClose(): void {\n this.closed.emit();\n }\n}\n","<cui-svg\n *cuiLet=\"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 <button\n cuiButton\n *ngIf=\"actionButtonText\"\n appearance=\"link\"\n class=\"c-action\"\n (click)=\"onAction()\"\n >\n {{ actionButtonText }}\n </button>\n</div>\n<button\n *ngIf=\"isCloseable\"\n class=\"c-button\"\n (click)=\"onClose()\"\n>\n <cui-svg\n *cuiLet=\"theme$ | async as theme\"\n icon=\"cuiIconX\"\n [color]=\"THEME_CLOSE_BUTTON_ICON_COLORS[theme!]\"\n />\n</button>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { CuiLetDirective } from '@cuby-ui/cdk';\n\nimport { CuiBannerComponent } from './banner.component';\nimport { CuiSvgModule } from '../svg';\nimport { CuiButtonModule } from '../button';\n\n@NgModule({\n imports: [\n CommonModule,\n CuiLetDirective,\n CuiSvgModule,\n CuiButtonModule\n ],\n declarations: [CuiBannerComponent],\n exports: [CuiBannerComponent]\n})\nexport class CuiBannerModule {\n}\n","import { ChangeDetectionStrategy, Component, ContentChildren, QueryList, TemplateRef } from '@angular/core';\n\nimport { CuiItemDirective } from '@cuby-ui/cdk';\n\n@Component({\n selector: 'cui-breadcrumbs',\n templateUrl: './breadcrumbs.template.html',\n styleUrls: ['./breadcrumbs.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiBreadcrumbsComponent {\n @ContentChildren(CuiItemDirective, { read: TemplateRef })\n protected readonly breadcrumbs!: QueryList<TemplateRef<unknown>>;\n}\n","<ng-container *ngIf=\"breadcrumbs.changes | async\"/>\n<ng-container *ngFor=\"let breadcrumb of breadcrumbs; let isLast = last\">\n <ng-container *ngTemplateOutlet=\"breadcrumb\" />\n <cui-svg\n *ngIf=\"!isLast\"\n icon=\"cuiIconSlashDivider\"\n color=\"var(--cui-base-500)\"\n />\n</ng-container>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n@Component({\n selector: '[cuiBreadcrumb]',\n templateUrl: './breadcrumb.template.html',\n styleUrls: ['./breadcrumb.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiBreadcrumbComponent {\n @Input()\n public isLast = false;\n}\n","<ng-content />\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { CuiBreadcrumbsComponent } from './breadcrumbs.component';\nimport { CuiBreadcrumbComponent } from './breadcrumb/breadcrumb.component';\nimport { CuiSvgModule } from '../svg';\n\n@NgModule({\n imports: [\n CommonModule,\n CuiSvgModule\n ],\n declarations: [\n CuiBreadcrumbsComponent,\n CuiBreadcrumbComponent\n ],\n exports: [\n CuiBreadcrumbsComponent,\n CuiBreadcrumbComponent\n ]\n})\nexport class CuiBreadcrumbsModule {\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'cui-button-group',\n templateUrl: './button-group.template.html',\n styleUrls: ['./button-group.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiButtonGroupComponent {\n}\n","<ng-content select=\"button[cuiButton], a[cuiButton]\"></ng-content>\n","import { NgModule } from '@angular/core';\n\nimport { CuiButtonGroupComponent } from './button-group.component';\n\n@NgModule({\n declarations: [CuiButtonGroupComponent],\n exports: [CuiButtonGroupComponent]\n})\nexport class CuiButtonGroupModule {\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'input[type=\"checkbox\"][cuiCheckbox]',\n template: '',\n styleUrls: ['./checkbox.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiCheckboxComponent {\n}\n","import { NgModule } from '@angular/core';\n\nimport { CuiCheckboxComponent } from './checkbox.component';\n\n@NgModule({\n declarations: [CuiCheckboxComponent],\n exports: [CuiCheckboxComponent]\n})\nexport class CuiCheckboxModule {\n}\n","export const CUI_ROOT_SELECTOR = 'cui-root';","import { InjectionToken } from '@angular/core';\nimport type { CuiPopover } from '@cuby-ui/cdk';\nimport { cuiCreateToken } from '@cuby-ui/cdk';\nimport { BehaviorSubject } from 'rxjs';\n\nimport type { CuiDialogOptions } from './dialog.interfaces';\n\nexport const CUI_DIALOGS = cuiCreateToken(\n new BehaviorSubject<ReadonlyArray<CuiPopover<CuiDialogOptions>>>([])\n);\n\nexport const CUI_DIALOG_DEFAULT_OPTIONS: CuiDialogOptions = {\n size: 'auto',\n data: undefined,\n dismissible: true\n};\n\nexport const CUI_DIALOG_OPTIONS = cuiCreateToken(CUI_DIALOG_DEFAULT_OPTIONS);\n\nexport const CUI_DIALOG_CONTEXT = new InjectionToken<CuiPopover<CuiDialogOptions>>('');\n","import type { OnInit } from '@angular/core';\nimport { ChangeDetectionStrategy, Component, inject, Injector } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport type { CuiPopover } from '@cuby-ui/cdk';\nimport { CuiDestroyService } from '@cuby-ui/cdk';\nimport type { Observable } from 'rxjs';\nimport { takeUntil } from 'rxjs';\n\nimport { CUI_DIALOG_CONTEXT, CUI_DIALOGS } from './dialog.tokens';\nimport type { CuiDialogOptions } from './dialog.interfaces';\n\n@Component({\n selector: 'cui-dialogs',\n templateUrl: './dialogs.template.html',\n styleUrls: ['./dialogs.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [CuiDestroyService]\n})\nexport class CuiDialogsComponent implements OnInit {\n private readonly document = inject(DOCUMENT);\n private readonly destroy$ = inject(CuiDestroyService, { self: true });\n\n protected readonly dialogs$: Observable<ReadonlyArray<CuiPopover<CuiDialogOptions>>> = inject(CUI_DIALOGS);\n protected dialogInjectorCache = new Map<string, Injector>();\n protected dialogInjectors!: ReadonlyArray<Injector>;\n\n public ngOnInit(): void {\n this.initDialogsSubscription();\n }\n\n protected trackByFn(_: number, dialog: CuiPopover<CuiDialogOptions>): string {\n return dialog.id;\n }\n\n protected initDialogsSubscription(): void {\n this.dialogs$\n .pipe(takeUntil(this.destroy$))\n .subscribe(dialogs => {\n this.document.body.style.overflow = dialogs.length ? 'hidden' : '';\n this.dialogInjectors = dialogs.map(dialog => {\n if (!this.dialogInjectorCache.has(dialog.id)) {\n this.dialogInjectorCache.set(dialog.id, Injector.create({\n providers: [{ provide: CUI_DIALOG_CONTEXT, useValue: dialog }],\n parent: dialog.injector\n }));\n }\n\n return this.dialogInjectorCache.get(dialog.id)!;\n });\n\n this.dialogInjectorCache.forEach((_, dialogId) => {\n if (dialogs.find(dialog => dialog.id === dialogId)) {\n return;\n }\n\n this.dialogInjectorCache.delete(dialogId);\n });\n });\n }\n}\n","<ng-container *cuiLet=\"dialogs$ | async as dialogs\">\n <ng-container *ngFor=\"let dialog of dialogs; let i = index; trackBy: trackByFn\">\n <ng-container *ngComponentOutlet=\"dialog.component; injector: dialogInjectors[i]\"></ng-container>\n </ng-container>\n <div\n *ngIf=\"dialogs!.length\"\n class=\"c-overlay\"\n ></div>\n</ng-container>\n","import type { OnInit } from '@angular/core';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport { CuiDestroyService } from '@cuby-ui/cdk';\nimport { takeUntil } from 'rxjs';\n\nimport { CuiThemeService } from '../../services';\nimport { CUI_ROOT_SELECTOR } from './root.options';\n\n@Component({\n selector: CUI_ROOT_SELECTOR,\n templateUrl: './root.template.html',\n styleUrls: ['./root.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [CuiDestroyService]\n})\nexport class CuiRootComponent implements OnInit {\n private readonly document = inject(DOCUMENT);\n private readonly theme$ = inject(CuiThemeService);\n private readonly destroy$ = inject(CuiDestroyService);\n\n public ngOnInit(): void {\n this.initThemeSubscription();\n }\n\n private initThemeSubscription(): void {\n this.theme$\n .pipe(takeUntil(this.destroy$))\n .subscribe(theme => this.document.documentElement.setAttribute('cuiTheme', theme));\n }\n}\n","<div class=\"c-content\">\n <ng-content />\n</div>\n<cui-dialogs />\n<cui-alerts />\n","import type { OnInit } from '@angular/core';\nimport { HostBinding, HostListener, Type } from '@angular/core';\nimport { ChangeDetectionStrategy, Component, inject, TemplateRef, ElementRef } from '@angular/core';\nimport type { CuiValueOf } from '@cuby-ui/cdk';\nimport { CuiFocusTrapDirective } from '@cuby-ui/cdk';\n\nimport type { CuiDialogSize } from './dialog.interfaces';\nimport { CUI_DIALOG_CONTEXT } from './dialog.tokens';\n\n// TODO: сделать структурную директиву\nconst ContentType = {\n String: 'string',\n Template: 'template',\n Component: 'component'\n} as const;\n\ntype IContentType = CuiValueOf<typeof ContentType>;\n\n@Component({\n selector: 'cui-dialog',\n templateUrl: './dialog.template.html',\n styleUrls: ['./dialog.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [CuiFocusTrapDirective]\n})\nexport class CuiDialogComponent implements OnInit {\n protected readonly element = inject(ElementRef).nativeElement as HTMLElement;\n protected readonly context = inject(CUI_DIALOG_CONTEXT);\n\n protected readonly LAST_OF_TYPE_SELECTOR = ':last-of-type';\n\n protected readonly ContentType = ContentType;\n\n protected contentType: IContentType = ContentType.Component;\n\n @HostBinding('attr.data-size')\n protected get size(): CuiDialogSize {\n return this.context.size;\n }\n\n public ngOnInit(): void {\n this.initContentType();\n }\n\n protected get contentTemplateRef(): TemplateRef<unknown> {\n return this.context.content as TemplateRef<unknown>;\n }\n\n protected get componentType(): Type<unknown> {\n return this.context.content as Type<unknown>;\n }\n\n @HostListener('document:keydown.escape', ['$event'])\n protected onEscape(): void {\n if (!this.context.dismissible) {\n return\n }\n\n if (!this.element.matches(this.LAST_OF_TYPE_SELECTOR)) {\n return;\n }\n\n this.context.completeWith();\n }\n\n private initContentType(): void {\n const content = this.context.content;\n\n switch (true) {\n case (typeof content === 'string'):\n this.contentType = ContentType.String;\n\n return;\n\n case (content instanceof TemplateRef):\n this.contentType = ContentType.Template;\n\n return;\n }\n }\n}\n","<ng-container [ngSwitch]=\"contentType\">\n <ng-container *ngSwitchCase=\"ContentType.String\">\n {{ context.content }}\n </ng-container>\n <ng-container *ngSwitchCase=\"ContentType.Template\">\n <ng-container *ngTemplateOutlet=\"contentTemplateRef; context: context\"></ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"ContentType.Component\">\n <div class=\"c-component-container\">\n <ng-container *ngComponentOutlet=\"componentType\"></ng-container>\n </div>\n </ng-container>\n</ng-container>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'cui-dialog-actions',\n templateUrl: './dialog-actions.template.html',\n styleUrls: ['./dialog-actions.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiDialogActionsComponent {\n}\n","<div class=\"c-divider\"></div>\n<div class=\"c-content\">\n <ng-content />\n</div>\n","import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\nimport type { PolymorpheusContent } from '@tinkoff/ng-polymorpheus';\nimport { PolymorpheusContext } from '@tinkoff/ng-polymorpheus/classes/context';\n\n@Component({\n selector: 'header[cuiDialogHeader][heading]',\n templateUrl: './dialog-header.template.html',\n styleUrls: ['./dialog-header.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiDialogHeaderComponent {\n @Input()\n public heading!: PolymorpheusContent;\n\n @Input()\n public headingContext?: PolymorpheusContext<any>['$implicit'];\n\n @Input()\n public subheading?: string;\n\n @Output()\n public readonly closed = new EventEmitter<MouseEvent>();\n\n protected onClose(event: MouseEvent): void {\n this.closed.emit(event);\n }\n}\n","<div class=\"c-heading\">\n <ng-container *polymorpheusOutlet=\"heading as heading; context: headingContext\">{{ heading }}</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","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { PolymorpheusModule } from '@tinkoff/ng-polymorpheus';\nimport { CuiLetDirective } from '@cuby-ui/cdk';\n\nimport { CuiButtonModule } from '../button';\nimport { CuiDialogComponent } from './dialog.component';\nimport { CuiDialogsComponent } from './dialogs.component';\nimport { CuiDialogActionsComponent } from './dialog-actions/dialog-actions.component';\nimport { CuiDialogHeaderComponent } from './dialog-header/dialog-header.component';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n CuiLetDirective,\n CuiButtonModule\n ],\n declarations: [\n CuiDialogComponent,\n CuiDialogsComponent,\n CuiDialogActionsComponent,\n CuiDialogHeaderComponent\n ],\n exports: [\n CuiDialogComponent,\n CuiDialogsComponent,\n CuiDialogActionsComponent,\n CuiDialogHeaderComponent\n ]\n})\nexport class CuiDialogModule {\n}\n","import { inject, Injectable } from '@angular/core';\nimport { CuiPopoverService } from '@cuby-ui/cdk';\n\nimport { CUI_DIALOG_OPTIONS, CUI_DIALOGS } from './dialog.tokens';\nimport { CuiDialogComponent } from './dialog.component';\nimport type { CuiDialogOptions } from './dialog.interfaces';\n\n@Injectable({\n providedIn: 'root',\n useFactory: () => new CuiDialogService(CUI_DIALOGS, CuiDialogComponent, inject(CUI_DIALOG_OPTIONS))\n})\nexport class CuiDialogService extends CuiPopoverService<CuiDialogOptions> {\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { CuiRootComponent } from './root.component';\nimport { CuiDialogModule } from '../dialog';\nimport { CuiAlertModule } from '../alert';\n\n@NgModule({\n imports: [\n CommonModule,\n CuiDialogModule,\n CuiAlertModule\n ],\n declarations: [CuiRootComponent],\n exports: [CuiRootComponent]\n})\nexport class CuiRootModule {\n}\n","import type { OnInit, AfterViewInit, TemplateRef, OnDestroy } from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostListener,\n inject,\n Input,\n ViewContainerRef,\n ViewChild,\n} from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport { fromEvent, take, takeUntil } from 'rxjs';\n\nimport { CuiDestroyService, CuiClickOutsideDirective, CuiTargetDirective, CUI_WINDOW } from '@cuby-ui/cdk';\n\nimport type { CuiContextMenuItem } from '../../interfaces';\nimport { CUI_ROOT_SELECTOR } from '../root';\n\n@Component({\n selector: 'cui-context-menu[items][target]',\n templateUrl: './context-menu.component.html',\n styleUrls: ['./context-menu.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [CuiDestroyService],\n hostDirectives: [\n CuiClickOutsideDirective,\n {\n directive: CuiTargetDirective,\n inputs: ['ccTarget: target']\n }\n ],\n})\nexport class CuiContextMenuComponent implements OnInit, AfterViewInit, OnDestroy {\n private readonly changeDetectorRef = inject(ChangeDetectorRef);\n private readonly viewContainerRef = inject(ViewContainerRef);\n private readonly document = inject(DOCUMENT);\n private readonly documentElement = this.document.documentElement;\n private readonly window = inject(CUI_WINDOW);\n private readonly destroy$ = inject(CuiDestroyService, { self: true });\n private readonly cuiClickOutsideDirective = inject(CuiClickOutsideDirective, { self: true });\n private readonly cuiTargetDirective = inject(CuiTargetDirective, { self: true });\n\n protected readonly EXTRA_OFFSET_LEFT = 0;\n protected readonly EXTRA_OFFSET_TOP = 0;\n\n protected isVisible = false;\n protected targetEventListener!: (event: MouseEvent) => void;\n protected node?: HTMLDivElement;\n\n @Input()\n public items!: CuiContextMenuItem[];\n\n @Input()\n public target!: HTMLElement;\n\n @ViewChild('list')\n protected readonly list!: TemplateRef<any>;\n\n public ngOnInit(): void {\n this.initClickOutsideSubscription();\n }\n\n public ngOnDestroy(): void {\n this.clearViewContainerRef();\n }\n\n public ngAfterViewInit(): void {\n this.initTargetElementListener();\n }\n\n protected onSelect(item: CuiContextMenuItem): void {\n this.close();\n\n item.command?.();\n }\n\n @HostListener('window:resize')\n protected onClose(): void {\n this.close();\n }\n\n @HostListener('click', ['$event'])\n protected onStopClickPropagation(event: MouseEvent): void {\n event.stopPropagation();\n }\n\n protected trackByFn(_: number, item: CuiContextMenuItem): string {\n return item.label;\n }\n\n private initClickOutsideSubscription(): void {\n this.cuiClickOutsideDirective.cuiClickOutside\n .pipe(takeUntil(this.destroy$))\n .subscribe((target) => {\n if (this.target.contains(target)) {\n return;\n }\n\n this.close();\n })\n }\n\n private initTargetElementListener(): void {\n this.targetEventListener = (event) => {\n event.stopPropagation();\n this.document.body.click();\n\n this.isVisible = !this.isVisible;\n\n this.clearViewContainerRef();\n\n if (this.isVisible) {\n this.renderList();\n this.changePosition(event.clientX, event.clientY);\n this.initHidingSubscription();\n }\n\n this.changeDetectorRef.markForCheck();\n };\n\n this.cuiTargetDirective.clicked\n .pipe(takeUntil(this.destroy$))\n .subscribe(this.targetEventListener);\n }\n\n private initHidingSubscription(): void {\n this.initHidingFromWindowEvent('scroll');\n this.initHidingFromWindowEvent('resize');\n }\n\n private initHidingFromWindowEvent(eventName: keyof WindowEventMap): void {\n fromEvent(this.window, eventName)\n .pipe(take(1))\n .subscribe(() => {\n this.close();\n this.changeDetectorRef.markForCheck();\n });\n }\n\n private close(): void {\n this.isVisible = false;\n\n this.clearViewContainerRef();\n }\n\n private renderList(): void {\n const embeddedViewRef = this.viewContainerRef.createEmbeddedView(this.list);\n\n this.node = embeddedViewRef.rootNodes[0];\n\n embeddedViewRef.detectChanges();\n\n this.document.querySelector(CUI_ROOT_SELECTOR)!.appendChild(this.node!);\n }\n\n private changePosition(x: number, y: number): void {\n this.node!.style.visibility = 'hidden';\n\n setTimeout(() => {\n const { clientWidth, clientHeight } = this.documentElement;\n const width = this.node!.offsetWidth;\n const height = this.node!.offsetHeight;\n let left = x;\n let top = y;\n\n if (left + width > clientWidth) {\n left -= width;\n }\n\n if (top + height > clientHeight) {\n top -= height;\n }\n\n left = Math.max(left, this.EXTRA_OFFSET_LEFT);\n top = Math.max(top, this.EXTRA_OFFSET_TOP);\n\n this.node!.style.left = left + 'px';\n this.node!.style.top = top + 'px';\n this.node!.style.visibility = '';\n\n this.changeDetectorRef.markForCheck();\n });\n }\n\n private clearViewContainerRef(): void {\n this.viewContainerRef.clear();\n }\n}\n","<ng-template #list>\n <div class=\"c-container\">\n <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 type=\"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 </div>\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { CuiContextMenuComponent } from './context-menu.component';\nimport { CuiSvgModule } from '../svg';\n\n@NgModule({\n imports: [\n CommonModule,\n CuiSvgModule\n ],\n declarations: [CuiContextMenuComponent],\n exports: [CuiContextMenuComponent]\n})\nexport class CuiContextMenuModule {\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'cui-form-field',\n templateUrl: './form-field.template.html',\n styleUrls: ['./form-field.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiFormFieldComponent {\n}\n","<ng-content select=\"label[cuiLabel]\" />\n<ng-content />\n<div class=\"c-hint-container\">\n <ng-content select=\"cui-hint\" />\n</div>\n","import { NgModule } from '@angular/core';\n\nimport { CuiFormFieldComponent } from './form-field.component';\n\n@NgModule({\n declarations: [CuiFormFieldComponent],\n exports: [CuiFormFieldComponent]\n})\nexport class CuiFormFieldModule {\n}\n","import { ChangeDetectionStrategy, Component, HostBinding, Input } from '@angular/core';\n\nimport type { CuiHintType } from '../../types';\n\n@Component({\n selector: 'cui-hint',\n templateUrl: './hint.template.html',\n styleUrls: ['./hint.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiHintComponent {\n @Input()\n @HostBinding('attr.data-hint-type')\n public hintType: CuiHintType = 'info';\n}\n","<ng-content></ng-content>\n","import { NgModule } from '@angular/core';\n\nimport { CuiHintComponent } from './hint.component';\n\n@NgModule({\n declarations: [CuiHintComponent],\n exports: [CuiHintComponent]\n})\nexport class CuiHintModule {\n}\n","import { ChangeDetectionStrategy, Component, HostBinding, Input } from '@angular/core';\nimport type { CuiIcon } from '@cuby-ui/icons';\n\n@Component({\n selector: 'button[cuiIconButton][icon], a[cuiIconButton][icon]',\n templateUrl: './icon-button.template.html',\n styleUrls: ['./icon-button.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiIconButtonComponent {\n protected readonly ICON_WIDTH = 16;\n protected readonly ICON_HEIGHT = 16;\n protected readonly ICON_STROKE_WIDTH = 1.5;\n\n @Input()\n public icon!: CuiIcon | string;\n\n @Input()\n public color?: string;\n\n @Input()\n @HostBinding('style.--icon-hover-color')\n public hoverColor?: string;\n\n @HostBinding('class._with-hover-color')\n protected get isWithHoverColor(): boolean {\n return !!this.hoverColor;\n }\n}\n","<cui-svg\n [icon]=\"icon\"\n [width]=\"ICON_WIDTH\"\n [height]=\"ICON_HEIGHT\"\n [color]=\"color\"\n [strokeWidth]=\"ICON_STROKE_WIDTH\"\n class=\"c-icon\"\n></cui-svg>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { CuiIconButtonComponent } from './icon-button.component';\nimport { CuiSvgModule } from '../svg';\n\n@NgModule({\n imports: [\n CommonModule,\n CuiSvgModule\n ],\n declarations: [CuiIconButtonComponent],\n exports: [CuiIconButtonComponent]\n})\nexport class CuiIconButtonModule {\n}\n","import type { CuiIcon } from '@cuby-ui/icons';\n\nimport type { CuiTextFieldSizeDirective } from './text-field-size.directive';\nimport type { CuiTextFieldIdDirective } from './text-field-id.directive';\nimport type { CuiTextFieldIconLeftDirective } from './text-field-icon-left.directive';\nimport type { CuiTextFieldPlaceholderDirective } from './text-field-placeholder.directive';\nimport type { CuiTextFieldIsErrorDirective } from './text-field-is-error.directive';\nimport type { CuiSizeMd, CuiSizeSm } from '../../types';\n\nexport class CuiTextFieldController {\n constructor(private readonly iconLeftDirective: CuiTextFieldIconLeftDirective,\n private readonly idDirective: CuiTextFieldIdDirective,\n private readonly isErrorDirective: CuiTextFieldIsErrorDirective,\n private readonly placeholderDirective: CuiTextFieldPlaceholderDirective,\n private readonly sizeDirective: CuiTextFieldSizeDirective) {\n }\n\n public get iconLeft(): CuiIcon | string | undefined {\n return this.iconLeftDirective.iconLeft;\n }\n\n public get id(): string | undefined {\n return this.idDirective.id;\n }\n\n public get isError(): boolean {\n return this.isErrorDirective.isError;\n }\n\n public get placeholder(): string | undefined {\n return this.placeholderDirective.placeholder;\n }\n\n public get size(): CuiSizeSm | CuiSizeMd {\n return this.sizeDirective.size;\n }\n}\n","import { Directive, InjectionToken, Input } from '@angular/core';\nimport { cuiProvide } from '@cuby-ui/cdk';\nimport type { CuiIcon } from '@cuby-ui/icons';\n\nexport const CUI_TEXT_FIELD_ICON_LEFT = new InjectionToken<CuiTextFieldIconLeftDirective>('', {\n factory: () => new CuiTextFieldIconLeftDirective()\n});\n\n@Directive({\n selector: '[cuiTextFieldIconLeft]',\n providers: [cuiProvide(CUI_TEXT_FIELD_ICON_LEFT, CuiTextFieldIconLeftDirective)]\n})\nexport class CuiTextFieldIconLeftDirective {\n @Input('cuiTextFieldIconLeft')\n public iconLeft?: CuiIcon | string;\n}\n","import { Directive, InjectionToken, Input } from '@angular/core';\nimport { cuiProvide } from '@cuby-ui/cdk';\n\nexport const CUI_TEXT_FIELD_ID = new InjectionToken<CuiTextFieldIdDirective>('', {\n factory: () => new CuiTextFieldIdDirective()\n});\n\n@Directive({\n selector: '[cuiTextFieldId]',\n providers: [cuiProvide(CUI_TEXT_FIELD_ID, CuiTextFieldIdDirective)]\n})\nexport class CuiTextFieldIdDirective {\n @Input('cuiTextFieldId')\n public id?: string;\n}\n","import { Directive, InjectionToken, Input } from '@angular/core';\nimport { cuiProvide } from '@cuby-ui/cdk';\n\nexport const CUI_TEXT_FIELD_IS_ERROR = new InjectionToken<CuiTextFieldIsErrorDirective>('', {\n factory: () => new CuiTextFieldIsErrorDirective()\n});\n\n@Directive({\n selector: '[cuiTextFieldIsError]',\n providers: [cuiProvide(CUI_TEXT_FIELD_IS_ERROR, CuiTextFieldIsErrorDirective)]\n})\nexport class CuiTextFieldIsErrorDirective {\n @Input('cuiTextFieldIsError')\n public isError = false;\n}\n","import { Directive, InjectionToken, Input } from '@angular/core';\nimport { cuiProvide } from '@cuby-ui/cdk';\n\nexport const CUI_TEXT_FIELD_PLACEHOLDER = new InjectionToken<CuiTextFieldPlaceholderDirective>('', {\n factory: () => new CuiTextFieldPlaceholderDirective()\n});\n\n@Directive({\n selector: '[cuiTextFieldPlaceholder]',\n providers: [cuiProvide(CUI_TEXT_FIELD_PLACEHOLDER, CuiTextFieldPlaceholderDirective)]\n})\nexport class CuiTextFieldPlaceholderDirective {\n @Input('cuiTextFieldPlaceholder')\n public placeholder?: string;\n}\n","import { Directive, InjectionToken, Input } from '@angular/core';\nimport { cuiProvide } from '@cuby-ui/cdk';\n\nimport type { CuiSizeMd, CuiSizeSm } from '../../types';\n\nexport const CUI_TEXT_FIELD_SIZE = new InjectionToken<CuiTextFieldSizeDirective>('', {\n factory: () => new CuiTextFieldSizeDirective()\n});\n\n@Directive({\n selector: '[cuiTextFieldSize]',\n providers: [cuiProvide(CUI_TEXT_FIELD_SIZE, CuiTextFieldSizeDirective)]\n})\nexport class CuiTextFieldSizeDirective {\n @Input('cuiTextFieldSize')\n public size: CuiSizeSm | CuiSizeMd = 'sm';\n}\n","import { NgModule } from '@angular/core';\n\nimport { CuiTextFieldIconLeftDirective } from './text-field-icon-left.directive';\nimport { CuiTextFieldIdDirective } from './text-field-id.directive';\nimport { CuiTextFieldIsErrorDirective } from './text-field-is-error.directive';\nimport { CuiTextFieldPlaceholderDirective } from './text-field-placeholder.directive';\nimport { CuiTextFieldSizeDirective } from './text-field-size.directive';\n\n@NgModule({\n declarations: [\n CuiTextFieldIconLeftDirective,\n CuiTextFieldIdDirective,\n CuiTextFieldPlaceholderDirective,\n CuiTextFieldIsErrorDirective,\n CuiTextFieldSizeDirective\n ],\n exports: [\n CuiTextFieldIconLeftDirective,\n CuiTextFieldIdDirective,\n CuiTextFieldPlaceholderDirective,\n CuiTextFieldIsErrorDirective,\n CuiTextFieldSizeDirective\n ]\n})\nexport class CuiTextFieldControllerModule {\n}\n","import { InjectionToken, Provider } from '@angular/core';\n\nimport { CuiTextFieldController } from './text-field.controller';\n\nimport { CUI_TEXT_FIELD_SIZE } from './text-field-size.directive';\nimport type { CuiTextFieldSizeDirective } from './text-field-size.directive';\nimport { CUI_TEXT_FIELD_ID } from './text-field-id.directive';\nimport type { CuiTextFieldIdDirective } from './text-field-id.directive';\nimport { CUI_TEXT_FIELD_IS_ERROR } from './text-field-is-error.directive';\nimport type { CuiTextFieldIsErrorDirective } from './text-field-is-error.directive';\nimport { CUI_TEXT_FIELD_PLACEHOLDER } from './text-field-placeholder.directive';\nimport type { CuiTextFieldPlaceholderDirective } from './text-field-placeholder.directive';\nimport { CUI_TEXT_FIELD_ICON_LEFT } from './text-field-icon-left.directive';\nimport type { CuiTextFieldIconLeftDirective } from './text-field-icon-left.directive';\n\nexport const CUI_TEXT_FIELD_CONTROLLER = new InjectionToken<CuiTextFieldController>('');\n\nexport const CUI_TEXT_FILED_CONTROLLER_PROVIDER: Provider = [\n {\n provide: CUI_TEXT_FIELD_CONTROLLER,\n useFactory: (...controllers: [\n CuiTextFieldIconLeftDirective,\n CuiTextFieldIdDirective,\n CuiTextFieldIsErrorDirective,\n CuiTextFieldPlaceholderDirective,\n CuiTextFieldSizeDirective\n ]) => {\n return new CuiTextFieldController(...controllers);\n },\n deps: [\n CUI_TEXT_FIELD_ICON_LEFT,\n CUI_TEXT_FIELD_ID,\n CUI_TEXT_FIELD_IS_ERROR,\n CUI_TEXT_FIELD_PLACEHOLDER,\n CUI_TEXT_FIELD_SIZE\n ]\n }\n];\n","import type { ElementRef } from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostBinding,\n HostListener,\n inject,\n Input,\n ViewChild\n} from '@angular/core';\nimport type { ControlValueAccessor } from '@angular/forms';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport type { MaskitoOptions } from '@maskito/core';\nimport { maskitoNumberOptionsGenerator, maskitoParseNumber } from '@maskito/kit';\nimport { CuiNullable, CuiOnChange, CuiOnTouched } from '@cuby-ui/cdk';\nimport { cuiProvide } from '@cuby-ui/cdk';\nimport type { CuiIcon } from '@cuby-ui/icons';\n\nimport { CUI_TEXT_FIELD_CONTROLLER, CUI_TEXT_FILED_CONTROLLER_PROVIDER } from '../../directives';\nimport { CuiSizeMd, CuiSizeSm } from '../../types';\n\n@Component({\n selector: 'cui-input-number',\n templateUrl: './input-number.template.html',\n styleUrls: ['./input-number.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n CUI_TEXT_FILED_CONTROLLER_PROVIDER,\n cuiProvide(NG_VALUE_ACCESSOR, CuiInputNumberComponent, true)\n ]\n})\nexport class CuiInputNumberComponent implements ControlValueAccessor {\n private readonly changeDetectorRef = inject(ChangeDetectorRef);\n private readonly cuiTextFieldController = inject(CUI_TEXT_FIELD_CONTROLLER);\n\n protected maskOptions = this.generateMask();\n protected _precision = 0;\n protected _min = Number.MIN_SAFE_INTEGER;\n protected _max = Number.MAX_SAFE_INTEGER;\n protected value!: CuiNullable<string>;\n protected onChange!: CuiOnChange<CuiNullable<number>>;\n protected onTouched!: CuiOnTouched;\n\n @Input()\n public set precision(value: number) {\n this._precision = value;\n this.maskOptions = this.generateMask();\n }\n\n @Input()\n public set min(value: number) {\n this._min = value;\n this.maskOptions = this.generateMask();\n }\n\n @Input()\n public set max(value: number) {\n this._max = value;\n this.maskOptions = this.generateMask();\n }\n\n @HostBinding('class._disabled')\n protected isDisabled!: boolean;\n\n @ViewChild('input')\n protected input!: ElementRef<HTMLInputElement>;\n\n protected get id(): string | undefined {\n return this.cuiTextFieldController.id;\n }\n\n protected get placeholder(): string | undefined {\n return this.cuiTextFieldController.placeholder;\n }\n\n protected get iconLeft(): CuiIcon | string | undefined {\n return this.cuiTextFieldController.iconLeft;\n }\n\n @HostBinding('attr.data-size')\n protected get size(): CuiSizeSm | CuiSizeMd {\n return this.cuiTextFieldController.size;\n }\n\n @HostBinding('class._with-error')\n protected get isError(): boolean {\n return this.cuiTextFieldController.isError;\n }\n\n public writeValue(value: CuiNullable<number>): void {\n this.value = value?.toString();\n\n this.changeDetectorRef.markForCheck();\n }\n\n public registerOnChange(fn: CuiOnChange<CuiNullable<number>>): void {\n this.onChange = fn;\n }\n\n public registerOnTouched(fn: CuiOnTouched): void {\n this.onTouched = fn;\n }\n\n public setDisabledState(isDisabled: boolean): void {\n this.isDisabled = isDisabled;\n\n this.changeDetectorRef.markForCheck();\n }\n\n protected onInput({ target }: Event): void {\n this.changeModel((target as HTMLInputElement).value);\n }\n\n @HostListener('click')\n protected onFocus(): void {\n this.input.nativeElement.focus();\n }\n\n private changeModel(value: string): void {\n const parsedValue = maskitoParseNumber(value);\n\n this.value = value;\n\n this.onChange(Number.isNaN(parsedValue) ? null : parsedValue);\n }\n\n private generateMask(): MaskitoOptions {\n return maskitoNumberOptionsGenerator({\n precision: this._precision,\n min: this._min,\n max: this._max\n });\n }\n}\n","<cui-svg\n *ngIf=\"iconLeft\"\n [icon]=\"iconLeft\"\n color=\"var(--cui-base-500)\"\n></cui-svg>\n<input\n #input\n [ngModel]=\"value\"\n [attr.id]=\"id\"\n [attr.placeholder]=\"placeholder\"\n type=\"text\"\n [maskito]=\"maskOptions\"\n [disabled]=\"isDisabled\"\n class=\"c-input\"\n (input)=\"onInput($event)\"\n (focus)=\"onTouched()\"\n>\n\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { MaskitoDirective } from '@maskito/angular';\n\nimport { CuiInputNumberComponent } from './input-number.component';\nimport { CuiSvgModule } from '../svg';\nimport { CuiTextFieldControllerModule } from '../../directives';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n MaskitoDirective,\n CuiSvgModule,\n ],\n declarations: [CuiInputNumberComponent],\n exports: [\n CuiInputNumberComponent,\n CuiTextFieldControllerModule\n ]\n})\nexport class CuiInputNumberModule {\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostBinding,\n inject\n} from '@angular/core';\nimport type { ControlValueAccessor } from '@angular/forms';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport type { CuiInputType, CuiNullable, CuiOnChange, CuiOnTouched } from '@cuby-ui/cdk';\nimport { cuiProvide } from '@cuby-ui/cdk';\nimport type { CuiIcon } from '@cuby-ui/icons';\n\nimport { CUI_TEXT_FIELD_CONTROLLER, CUI_TEXT_FILED_CONTROLLER_PROVIDER } from '../../directives';\nimport { CuiSizeMd, CuiSizeSm } from '../../types';\n\n@Component({\n selector: 'cui-input-password',\n templateUrl: './input-password.template.html',\n styleUrls: ['./input-password.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n CUI_TEXT_FILED_CONTROLLER_PROVIDER,\n cuiProvide(NG_VALUE_ACCESSOR, CuiInputPasswordComponent, true)\n ]\n})\nexport class CuiInputPasswordComponent implements ControlValueAccessor {\n private readonly changeDetectorRef = inject(ChangeDetectorRef);\n private readonly cuiTextFieldController = inject(CUI_TEXT_FIELD_CONTROLLER);\n\n protected isPasswordHidden = true;\n protected value!: CuiNullable<string>;\n protected onChange!: CuiOnChange<string>;\n protected onTouched!: CuiOnTouched;\n\n @HostBinding('class._disabled')\n protected isDisabled!: boolean;\n\n protected get id(): string | undefined {\n return this.cuiTextFieldController.id;\n }\n\n protected get placeholder(): string | undefined {\n return this.cuiTextFieldController.placeholder;\n }\n\n protected get iconLeft(): CuiIcon | string | undefined {\n return this.cuiTextFieldController.iconLeft;\n }\n\n protected get isToggleButtonShown(): boolean {\n return !this.isDisabled;\n }\n\n protected get icon(): CuiIcon {\n return this.isPasswordHidden ? 'cuiIconEye' : 'cuiIconEyeOff';\n }\n\n protected get type(): CuiInputType {\n return this.isPasswordHidden ? 'password' : 'text';\n }\n\n protected get buttonTitle(): string {\n return this.isPasswordHidden ? 'Reveal password' : 'Hide password';\n }\n\n @HostBinding('attr.data-size')\n protected get size(): CuiSizeSm | CuiSizeMd {\n return this.cuiTextFieldController.size;\n }\n\n @HostBinding('class._with-error')\n protected get isError(): boolean {\n return this.cuiTextFieldController.isError;\n }\n\n public writeValue(value: CuiNullable<string>): void {\n this.value = value;\n\n this.changeDetectorRef.markForCheck();\n }\n\n public registerOnChange(fn: CuiOnChange<string>): void {\n this.onChange = fn;\n }\n\n public registerOnTouched(fn: CuiOnTouched): void {\n this.onTouched = fn;\n }\n\n public setDisabledState(isDisabled: boolean): void {\n this.isDisabled = isDisabled;\n\n if (this.isDisabled) {\n this.isPasswordHidden = true;\n }\n\n this.changeDetectorRef.markForCheck();\n }\n\n protected onInput({ target }: Event): void {\n const value = (target as HTMLInputElement).value;\n\n this.value = value;\n\n this.onChange(value);\n }\n\n protected onTogglePasswordVisibility(): void {\n this.isPasswordHidden = !this.isPasswordHidden;\n }\n}\n","<cui-svg\n *ngIf=\"iconLeft\"\n [icon]=\"iconLeft\"\n color=\"var(--cui-base-500)\"\n></cui-svg>\n<input\n [ngModel]=\"value\"\n [attr.id]=\"id\"\n [attr.placeholder]=\"placeholder\"\n [type]=\"type\"\n [disabled]=\"isDisabled\"\n class=\"c-input\"\n (input)=\"onInput($event)\"\n (focus)=\"onTouched()\"\n>\n<button\n *ngIf=\"isToggleButtonShown\"\n [title]=\"buttonTitle\"\n class=\"c-button\"\n (click)=\"onTogglePasswordVisibility()\"\n>\n <cui-svg\n [icon]=\"icon\"\n [width]=\"16\"\n [height]=\"16\"\n color=\"var(--cui-base-500)\"\n ></cui-svg>\n</button>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { CuiInputPasswordComponent } from './input-password.component';\nimport { CuiSvgModule } from '../svg';\nimport { CuiTextFieldControllerModule } from '../../directives';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n CuiSvgModule\n ],\n declarations: [CuiInputPasswordComponent],\n exports: [\n CuiInputPasswordComponent,\n CuiTextFieldControllerModule\n ]\n})\nexport class CuiInputPasswordModule {\n}\n","import type { ElementRef } from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostBinding,\n HostListener,\n inject,\n ViewChild\n} from '@angular/core';\nimport type { ControlValueAccessor } from '@angular/forms';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport type { CuiOnChange, CuiOnTouched, CuiNullable } from '@cuby-ui/cdk';\nimport { cuiProvide } from '@cuby-ui/cdk';\nimport type { CuiIcon } from '@cuby-ui/icons';\n\nimport { CUI_TEXT_FIELD_CONTROLLER, CUI_TEXT_FILED_CONTROLLER_PROVIDER } from '../../directives';\nimport { CuiSizeMd, CuiSizeSm } from '../../types';\n\n@Component({\n selector: 'cui-input-text',\n templateUrl: './input-text.template.html',\n styleUrls: ['./input-text.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n CUI_TEXT_FILED_CONTROLLER_PROVIDER,\n cuiProvide(NG_VALUE_ACCESSOR, CuiInputTextComponent, true)\n ]\n})\nexport class CuiInputTextComponent implements ControlValueAccessor {\n private readonly changeDetectorRef = inject(ChangeDetectorRef);\n private readonly cuiTextFieldController = inject(CUI_TEXT_FIELD_CONTROLLER);\n\n protected value!: CuiNullable<string>;\n protected onChange!: CuiOnChange<string>;\n protected onTouched!: CuiOnTouched;\n\n @HostBinding('class._disabled')\n protected isDisabled!: boolean;\n\n @ViewChild('input')\n protected input!: ElementRef<HTMLInputElement>;\n\n protected get id(): string | undefined {\n return this.cuiTextFieldController.id;\n }\n\n protected get placeholder(): string | undefined {\n return this.cuiTextFieldController.placeholder;\n }\n\n protected get iconLeft(): CuiIcon | string | undefined {\n return this.cuiTextFieldController.iconLeft;\n }\n\n protected get isClearButtonHidden(): boolean {\n return !(this.value && !this.isDisabled);\n }\n\n @HostBinding('attr.data-size')\n protected get size(): CuiSizeSm | CuiSizeMd {\n return this.cuiTextFieldController.size;\n }\n\n @HostBinding('class._with-error')\n protected get isError(): boolean {\n return this.cuiTextFieldController.isError;\n }\n\n public writeValue(value: CuiNullable<string>): void {\n this.value = value;\n\n this.changeDetectorRef.markForCheck();\n }\n\n public registerOnChange(fn: CuiOnChange<string>): void {\n this.onChange = fn;\n }\n\n public registerOnTouched(fn: CuiOnTouched): void {\n this.onTouched = fn;\n }\n\n public setDisabledState(isDisabled: boolean): void {\n this.isDisabled = isDisabled;\n\n this.changeDetectorRef.markForCheck();\n }\n\n protected onInput({ target }: Event): void {\n this.changeModel((target as HTMLInputElement).value);\n }\n\n protected onClear(): void {\n this.changeModel('');\n }\n\n @HostListener('click')\n protected onFocus(): void {\n this.input.nativeElement.focus();\n }\n\n private changeModel(value: string): void {\n this.value = value;\n\n this.onChange(value);\n }\n}\n","<cui-svg\n *ngIf=\"iconLeft\"\n [icon]=\"iconLeft\"\n color=\"var(--cui-base-500)\"\n></cui-svg>\n<input\n #input\n [ngModel]=\"value\"\n [attr.id]=\"id\"\n [attr.placeholder]=\"placeholder\"\n type=\"text\"\n [disabled]=\"isDisabled\"\n class=\"c-input\"\n (input)=\"onInput($event)\"\n (focus)=\"onTouched()\"\n>\n<button\n type=\"button\"\n class=\"c-button\"\n [class.c-button_hidden]=\"isClearButtonHidden\"\n (click)=\"onClear()\"\n>\n <cui-svg\n icon=\"cuiIconClear\"\n color=\"var(--cui-base-300)\"\n class=\"c-close-icon\"\n />\n</button>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { CuiInputTextComponent } from './input-text.component';\nimport { CuiSvgModule } from '../svg';\nimport { CuiTextFieldControllerModule } from '../../directives';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n CuiSvgModule\n ],\n declarations: [CuiInputTextComponent],\n exports: [\n CuiInputTextComponent,\n CuiTextFieldControllerModule\n ]\n})\nexport class CuiInputModule {\n}\n","import { InjectionToken } from '@angular/core';\nimport type { CuiTimeMode } from '@cuby-ui/cdk';\n\nexport interface CuiInputTimeOptions {\n readonly mode: CuiTimeMode;\n}\n\nexport const CUI_INPUT_TIME_DEFAULT_OPTIONS: CuiInputTimeOptions = {\n mode: 'HH:MM'\n};\n\nexport const CUI_INPUT_TIME_OPTIONS = new InjectionToken('', {\n factory: () => CUI_INPUT_TIME_DEFAULT_OPTIONS\n});","import type { ElementRef } from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostBinding,\n HostListener,\n inject,\n Input,\n ViewChild\n} from '@angular/core';\nimport type { ControlValueAccessor } from '@angular/forms';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport type { MaskitoTimeMode } from '@maskito/kit';\nimport { maskitoTimeOptionsGenerator } from '@maskito/kit';\nimport type { MaskitoOptions } from '@maskito/core';\nimport type { CuiNullable, CuiOnChange, CuiOnTouched } from '@cuby-ui/cdk';\nimport { cuiProvide, CuiTime } from '@cuby-ui/cdk';\n\nimport { CUI_INPUT_TIME_OPTIONS, CuiInputTimeOptions } from './input-time.options';\nimport type { CuiSizeMd, CuiSizeSm } from '../../types';\nimport { CUI_TEXT_FIELD_CONTROLLER, CUI_TEXT_FILED_CONTROLLER_PROVIDER } from '../../directives';\n\n@Component({\n selector: 'cui-input-time',\n templateUrl: './input-time.template.html',\n styleUrls: ['./input-time.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n CUI_TEXT_FILED_CONTROLLER_PROVIDER,\n cuiProvide(NG_VALUE_ACCESSOR, CuiInputTimeComponent, true)\n ]\n})\nexport class CuiInputTimeComponent implements CuiInputTimeOptions, ControlValueAccessor {\n private readonly changeDetectorRef = inject(ChangeDetectorRef);\n private readonly cuiTextFieldController = inject(CUI_TEXT_FIELD_CONTROLLER);\n private readonly options = inject(CUI_INPUT_TIME_OPTIONS);\n\n protected _mode = this.options.mode\n protected maskOptions = this.generateMask(this._mode);\n protected defaultPlaceholder = this._mode.toLowerCase();\n protected value!: CuiNullable<CuiTime>;\n protected onChange!: CuiOnChange<CuiNullable<CuiTime>>;\n protected onTouched!: CuiOnTouched;\n\n @Input()\n public set mode(value: CuiInputTimeOptions['mode']) {\n this._mode = value;\n this.maskOptions = this.generateMask(value);\n this.defaultPlaceholder = value.toLowerCase();\n }\n\n @HostBinding('class._disabled')\n protected isDisabled!: boolean;\n\n @ViewChild('input')\n protected input!: ElementRef<HTMLInputElement>;\n\n protected get id(): string | undefined {\n return this.cuiTextFieldController.id;\n }\n\n protected get placeholder(): string | undefined {\n return this.cuiTextFieldController.placeholder ?? this.defaultPlaceholder;\n }\n\n public get computedValue(): string {\n return this.value ? this.value.toString(this._mode) : '';\n }\n\n @HostBinding('attr.data-size')\n protected get size(): CuiSizeSm | CuiSizeMd {\n return this.cuiTextFieldController.size;\n }\n\n @HostBinding('class._with-error')\n protected get isError(): boolean {\n return this.cuiTextFieldController.isError;\n }\n\n public writeValue(value: CuiNullable<CuiTime>): void {\n this.value = value;\n\n this.changeDetectorRef.markForCheck();\n }\n\n public registerOnChange(fn: CuiOnChange<CuiNullable<CuiTime>>): void {\n this.onChange = fn;\n }\n\n public registerOnTouched(fn: CuiOnTouched): void {\n this.onTouched = fn;\n }\n\n public setDisabledState(isDisabled: boolean): void {\n this.isDisabled = isDisabled;\n\n this.changeDetectorRef.markForCheck();\n }\n\n protected onInput(event: Event): void {\n const value = (event.target as HTMLInputElement).value;\n\n if (value.length !== this._mode.length) {\n this.onChange(null);\n\n return;\n }\n\n const time = CuiTime.fromString(value);\n\n this.onChange(time);\n }\n\n @HostListener('click')\n protected onFocus(): void {\n this.input.nativeElement.focus();\n }\n\n private generateMask(mode: MaskitoTimeMode): MaskitoOptions {\n return maskitoTimeOptionsGenerator({ mode });\n }\n}\n","<cui-svg\n icon=\"cuiIconClock\"\n color=\"var(--cui-base-500)\"\n></cui-svg>\n<input\n #input\n [ngModel]=\"computedValue\"\n [attr.id]=\"id\"\n [attr.placeholder]=\"placeholder\"\n type=\"text\"\n [maskito]=\"maskOptions\"\n [disabled]=\"isDisabled\"\n class=\"c-input\"\n (input)=\"onInput($event)\"\n (focus)=\"onTouched()\"\n>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { MaskitoDirective } from '@maskito/angular';\n\nimport { CuiInputTimeComponent } from './input-time.component';\nimport { CuiSvgModule } from '../svg';\nimport { CuiTextFieldControllerModule } from '../../directives';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n MaskitoDirective,\n CuiSvgModule\n ],\n declarations: [CuiInputTimeComponent],\n exports: [\n CuiInputTimeComponent,\n CuiTextFieldControllerModule\n ]\n})\nexport class CuiInputTimeModule {\n}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n@Component({\n selector: 'label[cuiLabel]',\n templateUrl: './label.template.html',\n styleUrls: ['./label.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiLabelComponent {\n @Input()\n public isRequired = false;\n}\n","<span class=\"c-wrapper\">\n <ng-content></ng-content>\n</span>\n<span\n *ngIf=\"isRequired\"\n class=\"c-star\"\n>\n *\n</span>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { CuiLabelComponent } from './label.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [CuiLabelComponent],\n exports: [CuiLabelComponent]\n})\nexport class CuiLabelModule {\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'input[type=\"radio\"][cuiRadio]',\n template: '',\n styleUrls: ['./radio.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiRadioComponent {\n}\n","import { NgModule } from '@angular/core';\n\nimport { CuiRadioComponent } from './radio.component';\n\n@NgModule({\n declarations: [CuiRadioComponent],\n exports: [CuiRadioComponent]\n})\nexport class CuiRadioModule {\n}\n","import type { OnDestroy, OnInit, TemplateRef } from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n inject,\n Input,\n ElementRef,\n ViewChild,\n HostBinding,\n ViewContainerRef,\n HostListener\n} from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport type { CuiOnChange, CuiOnTouched, CuiNullable } from '@cuby-ui/cdk';\nimport { CuiDestroyService } from '@cuby-ui/cdk';\nimport { cuiProvide, CuiClickOutsideDirective } from '@cuby-ui/cdk';\nimport { takeUntil } from 'rxjs';\n\nimport type { CuiOption } from '../../interfaces';\nimport type { CuiSizeMd, CuiSizeSm } from '../../types';\nimport { CUI_TEXT_FIELD_CONTROLLER, CUI_TEXT_FILED_CONTROLLER_PROVIDER } from '../../directives';\nimport { CUI_ROOT_SELECTOR } from '../root';\n\n@Component({\n selector: 'cui-select[options]',\n templateUrl: './select.template.html',\n styleUrls: ['./select.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n CUI_TEXT_FILED_CONTROLLER_PROVIDER,\n cuiProvide(NG_VALUE_ACCESSOR, CuiSelectComponent, true),\n CuiDestroyService\n ],\n hostDirectives: [CuiClickOutsideDirective]\n})\nexport class CuiSelectComponent implements ControlValueAccessor, OnInit, OnDestroy {\n private readonly element = inject(ElementRef).nativeElement;\n private readonly document = inject(DOCUMENT);\n private readonly changeDetectorRef = inject(ChangeDetectorRef);\n private readonly viewContainerRef = inject(ViewContainerRef);\n private readonly destroy$ = inject(CuiDestroyService, {self: true});\n private readonly cuiTextFieldController = inject(CUI_TEXT_FIELD_CONTROLLER);\n private readonly cuiClickOutsideDirective = inject(CuiClickOutsideDirective, {self: true});\n\n protected readonly SPACE_BETWEEN_BUTTON_AND_OPTIONS = 3;\n\n protected isOpened = false;\n protected isOptionsListAbove = false;\n protected value!: CuiNullable<unknown>;\n protected onChange!: CuiOnChange<unknown>;\n protected onTouched!: CuiOnTouched;\n protected isDisabled!: boolean;\n protected selectedOption?: CuiOption;\n\n @Input()\n public options!: CuiOption[];\n\n @Input()\n public defaultOptionText?: string;\n\n @ViewChild('button')\n protected readonly button!: ElementRef<HTMLButtonElement>;\n\n @ViewChild('getOptionsListHeightContainer')\n protected readonly getOptionsListHeightContainer!: ElementRef<HTMLUListElement>;\n\n @ViewChild('backdrop')\n protected readonly backdrop!: TemplateRef<unknown>;\n\n @ViewChild('optionsWrapper')\n protected readonly optionsWrapper!: TemplateRef<unknown>;\n\n @HostBinding('style.--c-gap')\n protected gap = `${this.SPACE_BETWEEN_BUTTON_AND_OPTIONS}px`;\n\n protected get id(): string | undefined {\n return this.cuiTextFieldController.id;\n }\n\n protected get size(): CuiSizeSm | CuiSizeMd {\n return this.cuiTextFieldController.size;\n }\n\n protected get placeholder(): string | undefined {\n return this.cuiTextFieldController.placeholder;\n }\n\n protected get isError(): boolean {\n return this.cuiTextFieldController.isError;\n }\n\n protected trackByFn(_: number, item: CuiOption): string {\n return item.label;\n }\n\n public writeValue(value: unknown): void {\n this.value = value;\n // TODO: Непонятно, зачем нужно в construction вторая часть выражения\n this.selectedOption = this.options.find(option => option.value === value) ?? value as CuiOption;\n\n this.changeDetectorRef.markForCheck();\n }\n\n public registerOnChange(fn: CuiOnChange<unknown>): void {\n this.onChange = fn;\n }\n\n public registerOnTouched(fn: CuiOnTouched): void {\n this.onTouched = fn;\n }\n\n public ngOnInit(): void {\n this.initClickOutsideSubscription();\n }\n\n public ngOnDestroy(): void {\n this.clearViewContainerRef();\n }\n\n public setDisabledState(isDisabled: boolean): void {\n this.isDisabled = isDisabled;\n\n this.changeDetectorRef.markForCheck();\n }\n\n protected onSelect(event: Event, option: CuiOption): void {\n event.stopPropagation();\n\n if (option.isDisabled) {\n return\n }\n\n this.value = option.value;\n this.selectedOption = option;\n\n this.onChange(this.value);\n this.onSwitch();\n this.onTouched();\n this.changeDetectorRef.markForCheck();\n }\n\n protected onSwitch(): void {\n if (!this.options.length && !this.defaultOptionText) {\n return;\n }\n\n if (!this.isOpened) {\n this.open();\n\n return;\n }\n\n this.close();\n }\n\n protected onClose(): void {\n this.close();\n }\n\n @HostListener('window:resize')\n protected onWindowResize(): void {\n this.button.nativeElement.blur();\n this.close();\n }\n\n private initClickOutsideSubscription(): void {\n this.cuiClickOutsideDirective.cuiClickOutside\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => {\n if (this.isOpened) {\n this.onTouched();\n }\n\n this.close();\n });\n }\n\n private open(): void {\n this.isOpened = true;\n\n const rootElement = this.document.querySelector(CUI_ROOT_SELECTOR)!;\n const {\n top: elementRectTop,\n left: elementRectLeft,\n bottom: elementRectBottom\n } = this.element.getBoundingClientRect();\n const distanceToBottom = this.document.documentElement.clientHeight\n - (elementRectBottom + this.SPACE_BETWEEN_BUTTON_AND_OPTIONS);\n const embeddedViewRef = this.viewContainerRef.createEmbeddedView(this.optionsWrapper);\n const node = embeddedViewRef.rootNodes[0];\n const nodeStyles = node.style;\n\n this.isOptionsListAbove = distanceToBottom < this.getOptionsListHeightContainer.nativeElement.offsetHeight;\n\n embeddedViewRef.detectChanges();\n\n nodeStyles.width = this.element.offsetWidth + 'px';\n nodeStyles.left = window.scrollX + elementRectLeft + 'px';\n\n if (this.isOptionsListAbove) {\n nodeStyles.top = window.scrollY + elementRectTop\n - this.getOptionsListHeightContainer.nativeElement.offsetHeight\n - this.SPACE_BETWEEN_BUTTON_AND_OPTIONS\n + 'px';\n } else {\n nodeStyles.top = window.scrollY + elementRectBottom + this.SPACE_BETWEEN_BUTTON_AND_OPTIONS + 'px';\n }\n\n rootElement.appendChild(this.viewContainerRef.createEmbeddedView(this.backdrop).rootNodes[0]);\n rootElement.appendChild(embeddedViewRef.rootNodes[0]);\n }\n\n private close(): void {\n this.isOpened = false;\n\n this.clearViewContainerRef();\n }\n\n private clearViewContainerRef(): void {\n this.viewContainerRef.clear();\n }\n}\n","<button\n #button\n type=\"button\"\n [attr.id]=\"id\"\n [attr.data-size]=\"size\"\n [disabled]=\"isDisabled\"\n class=\"c-button\"\n [class.c-button_active]=\"isOpened\"\n [class.c-button_with-error]=\"isError\"\n (click)=\"onSwitch()\"\n>\n <ng-container *ngIf=\"selectedOption; else placeholderTemplate\">\n {{ selectedOption.label }}\n </ng-container>\n <ng-template #placeholderTemplate>\n <span class=\"c-placeholder\">{{ placeholder }}</span>\n </ng-template>\n <cui-svg\n icon=\"cuiIconChevronDown\"\n color=\"var(--cui-base-500)\"\n />\n</button>\n<ng-template #backdrop>\n <div class=\"c-backdrop\"></div>\n</ng-template>\n<ng-template #optionsWrapper>\n <div\n cuiFocusTrap\n class=\"c-options__wrapper\"\n [class.c-options__wrapper_top]=\"isOptionsListAbove\"\n >\n <ng-container *ngTemplateOutlet=\"optionsList\"/>\n </div>\n</ng-template>\n<div\n #getOptionsListHeightContainer\n class=\"c-get-options-list-height-container\"\n>\n <ng-container *ngTemplateOutlet=\"optionsList\"/>\n</div>\n<ng-template #optionsList>\n <ul\n class=\"c-options\"\n [class.c-options_top]=\"isOptionsListAbove\"\n >\n <ng-container *ngIf=\"options.length; else empty\">\n <li *ngFor=\"let option of options; trackBy: trackByFn\">\n <button\n type=\"button\"\n class=\"c-option-button\"\n [class.c-option-button_selected]=\"selectedOption === option\"\n [disabled]=\"option.isDisabled\"\n (click)=\"onSelect($event, option)\"\n >\n <span>{{ option.label }}</span>\n <cui-svg\n *ngIf=\"selectedOption === option\"\n icon=\"cuiIconCheckSm\"\n color=\"var(--cui-info)\"\n class=\"c-option-button__icon\"\n />\n </button>\n </li>\n </ng-container>\n <ng-template #empty>\n <li *ngIf=\"defaultOptionText\">\n <button\n type=\"button\"\n class=\"c-option-button\"\n (click)=\"onClose()\"\n >\n {{ defaultOptionText }}\n </button>\n </li>\n </ng-template>\n </ul>\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { CuiSelectComponent } from './select.component';\nimport { CuiSvgModule } from '../svg';\nimport { CuiTextFieldControllerModule } from '../../directives';\nimport { CuiFocusTrapDirective } from '@cuby-ui/cdk';\n\n@NgModule({\n imports: [\n CommonModule,\n CuiSvgModule,\n CuiFocusTrapDirective\n ],\n declarations: [CuiSelectComponent],\n exports: [\n CuiSelectComponent,\n CuiTextFieldControllerModule\n ]\n})\nexport class CuiSelectModule {\n}\n","import { ChangeDetectionStrategy, Component, ElementRef, HostListener, inject } from '@angular/core';\n\nexport const CUI_TAB_ACTIVATE = 'cui-tab-activate';\n\n@Component({\n selector: 'button[cuiTab]',\n templateUrl: './tab.template.html',\n styleUrls: ['./tab.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiTabComponent {\n protected readonly element = inject(ElementRef).nativeElement as HTMLButtonElement;\n\n @HostListener('click')\n protected onClick(): void {\n this.element.dispatchEvent(new CustomEvent(CUI_TAB_ACTIVATE, { bubbles: true }));\n }\n}\n","<ng-content />\n","import type { AfterViewChecked } from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n EventEmitter,\n HostListener,\n inject,\n Input,\n Output\n} from '@angular/core';\n\nimport { CUI_TAB_ACTIVATE } from './tab';\n\n@Component({\n selector: 'cui-tabs',\n templateUrl: './tabs.template.html',\n styleUrls: ['./tabs.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiTabsComponent implements AfterViewChecked {\n private readonly element = inject(ElementRef).nativeElement as HTMLElement;\n\n private readonly activeElementClass = '_active';\n\n protected get tabs(): readonly HTMLElement[] {\n return Array.from(this.element.querySelectorAll<HTMLElement>('[cuiTab]'));\n }\n\n public get activeElement(): HTMLElement | null {\n return this.tabs[this.activeItemIndex] || null;\n }\n\n public ngAfterViewChecked(): void {\n this.changeActiveItem();\n }\n\n @Input()\n public activeItemIndex = 0;\n\n @Output()\n public readonly activeItemIndexChange = new EventEmitter<number>();\n\n @HostListener(CUI_TAB_ACTIVATE, ['$event'])\n protected onActivate(event: CustomEvent): void {\n event.stopPropagation();\n\n const index = this.tabs.findIndex((tab) => tab === event.target);\n\n if (index === this.activeItemIndex) {\n return;\n }\n\n this.activeItemIndexChange.emit(index);\n this.activeItemIndex = index;\n }\n\n private changeActiveItem(): void {\n this.tabs.forEach(nativeElement => {\n const active = nativeElement === this.activeElement;\n\n nativeElement.classList.toggle(this.activeElementClass, active);\n });\n }\n}\n","<ng-content select=\"[cuiTab]\" />\n","import { NgModule } from '@angular/core';\n\nimport { CuiTabsComponent } from './tabs.component';\nimport { CuiTabComponent } from './tab';\n\n@NgModule({\n imports: [],\n declarations: [CuiTabsComponent, CuiTabComponent],\n exports: [CuiTabsComponent, CuiTabComponent]\n})\nexport class CuiTabsModule {\n}\n","import { ChangeDetectionStrategy, Component, HostBinding, inject, Input } from '@angular/core';\nimport { CuiAutoResizingDirective } from '@cuby-ui/cdk';\n\nimport { CUI_TEXT_FIELD_CONTROLLER, CUI_TEXT_FILED_CONTROLLER_PROVIDER } from '../../directives';\n\n@Component({\n selector: 'textarea[cuiTextarea]',\n template: '',\n styleUrls: ['./textarea.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [CUI_TEXT_FILED_CONTROLLER_PROVIDER],\n hostDirectives: [CuiAutoResizingDirective]\n})\nexport class CuiTextareaComponent {\n private readonly cuiTextFieldController = inject(CUI_TEXT_FIELD_CONTROLLER);\n\n @Input()\n @HostBinding('rows')\n public rows = 4;\n\n @Input()\n @HostBinding('class._no-borders-and-paddings')\n public noBordersAndPaddings = false;\n\n @HostBinding('class._with-error')\n protected get isError(): boolean {\n return this.cuiTextFieldController.isError;\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { CuiTextareaComponent } from './textarea.component';\n\n@NgModule({\n declarations: [CuiTextareaComponent],\n exports: [CuiTextareaComponent]\n})\nexport class CuiTextareaModule {\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'input[type=\"checkbox\"][cuiToggle]',\n template: '',\n styleUrls: ['./toggle.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiToggleComponent {\n}\n","import { NgModule } from '@angular/core';\n\nimport { CuiToggleComponent } from './toggle.component';\n\n@NgModule({\n declarations: [CuiToggleComponent],\n exports: [CuiToggleComponent]\n})\nexport class CuiToggleModule {\n}\n","export function cuiRemoveSpaces(value: string): string {\n return value.replace(/\\s+/g, '');\n}\n","export function cuiReplace(value: string, search: string, replace: string): string {\n const regex = new RegExp(search.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\$&'), 'g');\n\n return value.replace(regex, replace);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.CuiSvgComponent","i2.CuiButtonComponent","i2.CuiNotificationComponent","i2","i3.CuiSvgComponent","i4.CuiButtonComponent","i1.CuiDialogsComponent","i2.CuiAlertsComponent","i3.CuiButtonComponent","i1.CuiSvgComponent","i4.CuiSvgComponent","i1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cuby-ui-core.mjs","sources":["../../../projects/core/components/accordion/accordion.component.ts","../../../projects/core/components/accordion/accordion.template.html","../../../projects/core/components/button/button.options.ts","../../../projects/core/components/svg/svg.component.ts","../../../projects/core/components/svg/svg.template.html","../../../projects/core/components/button/button.component.ts","../../../projects/core/components/button/button.template.html","../../../projects/core/components/accordion/accordion-item/accordion-item.component.ts","../../../projects/core/components/accordion/accordion-item/accordion-item.template.html","../../../projects/core/components/svg/svg.module.ts","../../../projects/core/components/button/button.module.ts","../../../projects/core/components/accordion/accordion.module.ts","../../../projects/core/components/notification/notification.options.ts","../../../projects/core/components/notification/notification.component.ts","../../../projects/core/components/notification/notification.template.html","../../../projects/core/components/notification/notification.module.ts","../../../projects/core/components/alert/alert.tokens.ts","../../../projects/core/components/alert/alert.component.ts","../../../projects/core/components/alert/alert.template.html","../../../projects/core/components/alert/alerts.component.ts","../../../projects/core/components/alert/alerts.template.html","../../../projects/core/components/alert/alert.module.ts","../../../projects/core/components/alert/alert.service.ts","../../../projects/core/components/badge/badge.options.ts","../../../projects/core/components/badge/badge.component.ts","../../../projects/core/components/badge/badge.template.html","../../../projects/core/components/badge/badge.module.ts","../../../projects/core/components/banner/banner.options.ts","../../../projects/core/services/theme.options.ts","../../../projects/core/services/theme.service.ts","../../../projects/core/components/banner/banner.component.ts","../../../projects/core/components/banner/banner.template.html","../../../projects/core/components/banner/banner.module.ts","../../../projects/core/components/breadcrumbs/breadcrumbs.component.ts","../../../projects/core/components/breadcrumbs/breadcrumbs.template.html","../../../projects/core/components/breadcrumbs/breadcrumb/breadcrumb.component.ts","../../../projects/core/components/breadcrumbs/breadcrumb/breadcrumb.template.html","../../../projects/core/components/breadcrumbs/breadcrumbs.module.ts","../../../projects/core/components/button-group/button-group.component.ts","../../../projects/core/components/button-group/button-group.template.html","../../../projects/core/components/button-group/button-group.module.ts","../../../projects/core/components/checkbox/checkbox.component.ts","../../../projects/core/components/checkbox/checkbox.module.ts","../../../projects/core/components/root/root.options.ts","../../../projects/core/components/dialog/dialog.tokens.ts","../../../projects/core/components/dialog/dialogs.component.ts","../../../projects/core/components/dialog/dialogs.template.html","../../../projects/core/components/root/root.component.ts","../../../projects/core/components/root/root.template.html","../../../projects/core/components/dialog/dialog.component.ts","../../../projects/core/components/dialog/dialog.template.html","../../../projects/core/components/dialog/dialog-actions/dialog-actions.component.ts","../../../projects/core/components/dialog/dialog-actions/dialog-actions.template.html","../../../projects/core/components/dialog/dialog-header/dialog-header.component.ts","../../../projects/core/components/dialog/dialog-header/dialog-header.template.html","../../../projects/core/components/dialog/dialog.module.ts","../../../projects/core/components/dialog/dialog.service.ts","../../../projects/core/components/root/root.module.ts","../../../projects/core/components/context-menu/context-menu.component.ts","../../../projects/core/components/context-menu/context-menu.component.html","../../../projects/core/components/context-menu/context-menu.module.ts","../../../projects/core/components/form-field/form-field.component.ts","../../../projects/core/components/form-field/form-field.template.html","../../../projects/core/components/form-field/form-field.module.ts","../../../projects/core/components/hint/hint.component.ts","../../../projects/core/components/hint/hint.template.html","../../../projects/core/components/hint/hint.module.ts","../../../projects/core/components/icon-button/icon-button.component.ts","../../../projects/core/components/icon-button/icon-button.template.html","../../../projects/core/components/icon-button/icon-button.module.ts","../../../projects/core/directives/text-field-controller/text-field.controller.ts","../../../projects/core/directives/text-field-controller/text-field-icon-left.directive.ts","../../../projects/core/directives/text-field-controller/text-field-id.directive.ts","../../../projects/core/directives/text-field-controller/text-field-is-error.directive.ts","../../../projects/core/directives/text-field-controller/text-field-placeholder.directive.ts","../../../projects/core/directives/text-field-controller/text-field-size.directive.ts","../../../projects/core/directives/text-field-controller/text-field-controller.module.ts","../../../projects/core/directives/text-field-controller/text-field-controller.provider.ts","../../../projects/core/components/input-number/input-number.component.ts","../../../projects/core/components/input-number/input-number.template.html","../../../projects/core/components/input-number/input-number.module.ts","../../../projects/core/components/input-password/input-password.component.ts","../../../projects/core/components/input-password/input-password.template.html","../../../projects/core/components/input-password/input-password.module.ts","../../../projects/core/components/input-text/input-text.component.ts","../../../projects/core/components/input-text/input-text.template.html","../../../projects/core/components/input-text/input-text.module.ts","../../../projects/core/components/input-time/input-time.options.ts","../../../projects/core/components/input-time/input-time.component.ts","../../../projects/core/components/input-time/input-time.template.html","../../../projects/core/components/input-time/input-time.module.ts","../../../projects/core/components/label/label.component.ts","../../../projects/core/components/label/label.template.html","../../../projects/core/components/label/label.module.ts","../../../projects/core/components/radio/radio.component.ts","../../../projects/core/components/radio/radio.module.ts","../../../projects/core/components/select/select.component.ts","../../../projects/core/components/select/select.template.html","../../../projects/core/components/select/select.module.ts","../../../projects/core/components/tabs/tab/tab.component.ts","../../../projects/core/components/tabs/tab/tab.template.html","../../../projects/core/components/tabs/tabs.component.ts","../../../projects/core/components/tabs/tabs.template.html","../../../projects/core/components/tabs/tabs.module.ts","../../../projects/core/components/textarea/textarea.component.ts","../../../projects/core/components/textarea/textarea.module.ts","../../../projects/core/components/toggle/toggle.component.ts","../../../projects/core/components/toggle/toggle.module.ts","../../../projects/core/utils/format/remove-spaces.ts","../../../projects/core/utils/format/replace.ts","../../../projects/core/cuby-ui-core.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'cui-accordion',\n templateUrl: './accordion.template.html',\n styleUrls: ['./accordion.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiAccordionComponent {\n}\n","<ng-content select=\"cui-accordion-item\"></ng-content>\n","import { InjectionToken } from '@angular/core';\n\nimport type {\n CuiAppearanceAction,\n CuiAppearanceDestructive,\n CuiAppearanceFlat,\n CuiAppearanceGhost,\n CuiAppearanceLink,\n CuiAppearanceOutlined,\n CuiAppearanceOutlinedGray,\n CuiAppearanceSecondary,\n CuiShapeRounded,\n CuiSizeMd,\n CuiSizeSm,\n CuiSizeXs,\n CuiSizeXxs\n} from '../../types';\n\nexport interface CuiButtonOptions {\n readonly appearance:\n | CuiAppearanceAction\n | CuiAppearanceSecondary\n | CuiAppearanceOutlined\n | CuiAppearanceOutlinedGray\n | CuiAppearanceGhost\n | CuiAppearanceFlat\n | CuiAppearanceDestructive\n | CuiAppearanceLink\n readonly shape: CuiShapeRounded | null;\n readonly size:\n | CuiSizeXxs\n | CuiSizeXs\n | CuiSizeSm\n | CuiSizeMd;\n}\n\nexport const CUI_BUTTON_DEFAULT_OPTIONS: CuiButtonOptions = {\n appearance: 'action',\n shape: null,\n size: 'sm'\n};\n\nexport const CUI_BUTTON_OPTIONS = new InjectionToken('', {\n factory: () => CUI_BUTTON_DEFAULT_OPTIONS\n});\n","import {\n ChangeDetectionStrategy,\n Component,\n HostBinding,\n inject,\n Input\n} from '@angular/core';\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\n\nimport type { CuiIcon } from '@cuby-ui/icons';\nimport { CUI_ICONS, cuiIsIcon } from '@cuby-ui/icons';\n\n@Component({\n selector: 'cui-svg[icon]',\n templateUrl: './svg.template.html',\n styleUrls: ['./svg.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiSvgComponent {\n private readonly domSanitizer = inject(DomSanitizer);\n\n protected safeSvgContent!: SafeHtml;\n\n @Input()\n public width?: number;\n\n @Input()\n public height?: number;\n\n @Input()\n @HostBinding('style.--stroke-width')\n public strokeWidth?: number;\n\n @Input()\n @HostBinding('style.--color')\n public color?: string;\n\n @Input()\n public set icon(icon: CuiIcon | string) {\n // TODO: В данном случае подключаются все иконки (вероятно, можно как-то оптимизировано их подключать)\n this.safeSvgContent = this.domSanitizer.bypassSecurityTrustHtml(cuiIsIcon(icon)\n ? CUI_ICONS[icon]\n : icon);\n }\n\n @HostBinding('class._with-stroke-width')\n public get isWithStrokeWidth(): boolean {\n return !!this.strokeWidth;\n }\n\n @HostBinding('class._with-color')\n public get isWithColor(): boolean {\n return !!this.color;\n }\n}\n","<span\n [innerHTML]=\"safeSvgContent\"\n [style.width.px]=\"width\"\n [style.height.px]=\"height\"\n></span>","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n HostBinding,\n inject,\n Input,\n ViewChild,\n OnInit\n} from '@angular/core';\nimport type { CuiIcon } from '@cuby-ui/icons';\nimport { CUI_WINDOW } from '@cuby-ui/cdk';\n\nimport { CUI_BUTTON_OPTIONS, CuiButtonOptions } from './button.options';\n\n@Component({\n selector: 'button[cuiButton], a[cuiButton]',\n templateUrl: './button.template.html',\n styleUrls: ['./button.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiButtonComponent implements CuiButtonOptions, OnInit {\n private readonly changeDetectorRef = inject(ChangeDetectorRef);\n private readonly element = inject(ElementRef).nativeElement as HTMLButtonElement;\n private readonly window = inject(CUI_WINDOW);\n private readonly cuiButtonOptions = inject(CUI_BUTTON_OPTIONS);\n\n protected readonly AppearanceIconColors: Record<CuiButtonOptions['appearance'], string> = {\n action: '--c-action-icon-color',\n secondary: '--c-secondary-icon-color',\n outlined: '--c-outlined-icon-color',\n 'outlined-gray': '--c-outlined-gray-icon-color',\n ghost: '--c-ghost-icon-color',\n flat: '--c-flat-icon-color',\n destructive: '--c-destructive-icon-color',\n link: '--c-link-icon-color'\n };\n protected readonly COLOR_BASE_500 = 'var(--cui-base-500)';\n protected readonly BUTTON_ICONS_COLOR_BASE_500: CuiButtonOptions['appearance'][] = [\n 'secondary',\n 'outlined',\n 'outlined-gray',\n 'ghost'\n ];\n\n protected _appearance = this.cuiButtonOptions.appearance;\n protected iconColor = this.getIconColor(this._appearance);\n protected _size = this.cuiButtonOptions.size;\n protected iconDimensions = {\n width: 20,\n height: 20\n };\n\n @Input()\n @HostBinding('attr.data-shape')\n public shape = this.cuiButtonOptions.shape;\n\n @Input()\n @HostBinding('class._disabled')\n public disabled = false;\n\n @Input()\n @HostBinding('class._loading')\n public isLoaderShown = false;\n\n @Input()\n public icon?: CuiIcon | string;\n\n @Input()\n public iconRight?: CuiIcon | string;\n\n @Input()\n @HostBinding('attr.data-appearance')\n public get appearance(): CuiButtonOptions['appearance'] {\n return this._appearance;\n }\n\n public set appearance(appearance: CuiButtonOptions['appearance']) {\n this._appearance = appearance;\n\n this.changeIconColor();\n }\n\n @Input()\n @HostBinding('attr.data-size')\n public get size(): CuiButtonOptions['size'] {\n return this._size;\n }\n\n public set size(size: CuiButtonOptions['size']) {\n this._size = size;\n\n if (size === 'xxs') {\n this.iconDimensions = {\n width: 16,\n height: 16\n };\n\n return;\n }\n\n this.iconDimensions = {\n width: 20,\n height: 20\n };\n }\n\n @HostBinding('class._only-icon')\n protected containsOnlyIcon = false;\n\n @HostBinding('disabled')\n protected get isDisabled(): boolean {\n return this.disabled || this.isLoaderShown;\n }\n\n @ViewChild('content')\n protected content!: ElementRef<HTMLSpanElement>;\n\n public ngOnInit(): void {\n this.initIconColor();\n }\n\n private initIconColor(): void {\n this.changeIconColor();\n }\n\n private changeIconColor(): void {\n Promise.resolve().then(() => {\n this.iconColor = this.getIconColor(this._appearance);\n\n this.changeDetectorRef.markForCheck();\n });\n }\n\n private getIconColor(appearance: CuiButtonOptions['appearance']): string {\n const customIconColor = this.window\n .getComputedStyle(this.element)\n .getPropertyValue(this.AppearanceIconColors[appearance]);\n\n if (customIconColor) {\n return customIconColor;\n }\n\n if (this.BUTTON_ICONS_COLOR_BASE_500.includes(appearance)) {\n return this.COLOR_BASE_500;\n }\n\n return 'currentColor';\n }\n}\n","<span\n class=\"c-wrapper\"\n [class.c-wrapper_invisible]=\"isLoaderShown\"\n>\n <cui-svg\n *ngIf=\"icon\"\n [icon]=\"icon\"\n [width]=\"iconDimensions.width\"\n [height]=\"iconDimensions.height\"\n [color]=\"iconColor\"\n ></cui-svg>\n <span\n #content\n class=\"c-content\"\n ><ng-content></ng-content></span>\n <cui-svg\n *ngIf=\"iconRight\"\n [icon]=\"iconRight\"\n [width]=\"iconDimensions.width\"\n [height]=\"iconDimensions.height\"\n [color]=\"iconColor\"\n ></cui-svg>\n</span>\n<cui-svg\n *ngIf=\"isLoaderShown\"\n icon=\"cuiIconLoading\"\n class=\"c-loader\"\n></cui-svg>\n","import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\nimport type { CuiIcon } from '@cuby-ui/icons';\n\n@Component({\n selector: 'cui-accordion-item',\n templateUrl: './accordion-item.template.html',\n styleUrls: ['./accordion-item.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiAccordionItemComponent {\n @Input()\n public isOpen = true;\n\n @Output()\n public readonly isOpenChange= new EventEmitter<boolean>();\n\n protected get buttonIcon(): CuiIcon {\n return this.isOpen ? 'cuiIconChevronDown' : 'cuiIconChevronRight';\n }\n\n protected onRowToggle(): void {\n this.isOpen = !this.isOpen;\n\n this.isOpenChange.emit(this.isOpen);\n }\n}\n","<header class=\"c-header\">\n <button\n cuiButton\n appearance=\"ghost\"\n size=\"xxs\"\n [icon]=\"buttonIcon\"\n (click)=\"onRowToggle()\"\n ></button>\n <div class=\"c-header__wrapper\">\n <ng-content></ng-content>\n </div>\n</header>\n<div *ngIf=\"isOpen\">\n <ng-content select=\"[cuiAccordionItemContent]\"></ng-content>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { CuiSvgComponent } from './svg.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [CuiSvgComponent],\n exports: [CuiSvgComponent]\n})\nexport class CuiSvgModule {\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { CuiButtonComponent } from './button.component';\nimport { CuiSvgModule } from '../svg';\n\n@NgModule({\n imports: [\n CommonModule,\n CuiSvgModule\n ],\n declarations: [CuiButtonComponent],\n exports: [CuiButtonComponent]\n})\nexport class CuiButtonModule {\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { CuiAccordionComponent } from './accordion.component';\nimport { CuiAccordionItemComponent } from './accordion-item/accordion-item.component';\nimport { CuiSvgModule } from '../svg';\nimport { CuiButtonModule } from '../button';\n\n@NgModule({\n imports: [\n CommonModule,\n CuiSvgModule,\n CuiButtonModule,\n ],\n declarations: [\n CuiAccordionComponent,\n CuiAccordionItemComponent\n ],\n exports: [\n CuiAccordionComponent,\n CuiAccordionItemComponent\n ]\n})\nexport class CuiAccordionModule {\n}\n","import { cuiCreateToken } from '@cuby-ui/cdk';\n\nimport type { CuiStatus } from '../../types';\n\nexport type CuiNotificationIcons = Record<CuiStatus, { icon: string }>;\n\nexport type CuiNotificationIconOptions = Record<CuiStatus, { color: string }>;\n\nexport interface CuiNotificationOptions {\n readonly status: CuiStatus;\n readonly mode: 'default' | 'light';\n}\n\nexport const CUI_NOTIFICATION_DEFAULT_OPTIONS: CuiNotificationOptions = {\n status: 'info',\n mode: 'default'\n};\n\nexport const CUI_NOTIFICATION_OPTIONS = cuiCreateToken(CUI_NOTIFICATION_DEFAULT_OPTIONS);\n\nexport const CUI_NOTIFICATION_ICONS: CuiNotificationIcons = {\n info: {\n icon: 'cuiIconInfo'\n },\n success: {\n icon: 'cuiIconCheckCircle'\n },\n alert: {\n icon: 'cuiIconAlertTriangle'\n },\n error: {\n icon: 'cuiIconXCircle'\n },\n} as const;\n\nexport const CUI_NOTIFICATION_ICON_OPTIONS_DEFAULT_MODE: CuiNotificationIconOptions = {\n info: {\n color: 'var(--c-info-icon-color)'\n },\n success: {\n color: 'var(--cui-green-500)'\n },\n alert: {\n color: 'var(--cui-yellow-400)'\n },\n error: {\n color: 'var(--cui-danger)'\n },\n} as const;\n\nexport const CUI_NOTIFICATION_ICON_OPTIONS_LIGHT_MODE: CuiNotificationIconOptions = {\n info: {\n color: 'var(--cui-info)'\n },\n success: {\n color: 'var(--cui-green-700)'\n },\n alert: {\n color: 'var(--cui-yellow-400)'\n },\n error: {\n color: 'var(--cui-danger)'\n },\n} as const;\n\nexport const CUI_NOTIFICATION_ICON_OPTIONS: Record<CuiNotificationOptions['mode'], CuiNotificationIconOptions> = {\n default: CUI_NOTIFICATION_ICON_OPTIONS_DEFAULT_MODE,\n light: CUI_NOTIFICATION_ICON_OPTIONS_LIGHT_MODE\n}","import {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n inject,\n Input,\n OnInit,\n Output\n} from '@angular/core';\nimport {\n CUI_NOTIFICATION_ICON_OPTIONS,\n CuiNotificationIconOptions,\n CuiNotificationOptions\n} from './notification.options';\nimport { CUI_NOTIFICATION_OPTIONS, CUI_NOTIFICATION_ICONS } from './notification.options';\n\n@Component({\n selector: 'cui-notification',\n templateUrl: './notification.template.html',\n styleUrls: ['./notification.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiNotificationComponent implements CuiNotificationOptions, OnInit {\n private readonly cuiNotificationOptions = inject(CUI_NOTIFICATION_OPTIONS);\n\n protected readonly ICONS = CUI_NOTIFICATION_ICONS;\n protected readonly ICON_OPTIONS = CUI_NOTIFICATION_ICON_OPTIONS;\n\n protected iconOptions!: CuiNotificationIconOptions;\n\n @Input()\n @HostBinding('attr.data-status')\n public status = this.cuiNotificationOptions.status;\n\n @Input()\n @HostBinding('attr.data-mode')\n public mode = this.cuiNotificationOptions.mode;\n\n @Input()\n public isCloseable = false;\n\n @Output()\n public readonly closed = new EventEmitter<void>();\n\n public ngOnInit(): void {\n this.initIconOptions();\n }\n\n protected onClose(): void {\n this.closed.next();\n }\n\n private initIconOptions(): void {\n this.iconOptions = this.ICON_OPTIONS[this.mode];\n }\n}\n","<cui-svg\n class=\"c-icon\"\n [icon]=\"ICONS[status].icon\"\n [color]=\"iconOptions[status].color\"\n></cui-svg>\n<div class=\"c-content\">\n <ng-content></ng-content>\n</div>\n<button\n *ngIf=\"isCloseable\"\n class=\"c-button\"\n (click)=\"onClose()\"\n>\n <cui-svg\n icon=\"cuiIconX\"\n color=\"var(--cui-gray-0)\"\n />\n</button>\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { CuiSvgModule } from '../svg';\nimport { CuiNotificationComponent } from './notification.component';\n\n@NgModule({\n imports: [\n CommonModule,\n CuiSvgModule\n ],\n declarations: [CuiNotificationComponent],\n exports: [CuiNotificationComponent]\n})\nexport class CuiNotificationModule {\n}\n","import { inject, InjectionToken } from '@angular/core';\nimport { cuiCreateTokenFromFactory, CuiPopover } from '@cuby-ui/cdk';\nimport { cuiCreateToken } from '@cuby-ui/cdk';\nimport { BehaviorSubject } from 'rxjs';\n\nimport type { CuiAlertOptions } from './alert.interfaces';\nimport { CUI_NOTIFICATION_OPTIONS } from '../notification';\n\nexport const CUI_ALERTS = cuiCreateToken(\n new BehaviorSubject<ReadonlyArray<CuiPopover<CuiAlertOptions>>>([])\n);\n\nexport const CUI_ALERT_DEFAULT_OPTIONS: Omit<CuiAlertOptions, 'status'> = {\n label: '',\n needAutoClose: true,\n isCloseable: true,\n mode: 'default',\n position: 'right',\n resizing: 'fixed'\n};\n\nexport const CUI_ALERT_OPTIONS = cuiCreateTokenFromFactory(\n () => ({\n ...CUI_ALERT_DEFAULT_OPTIONS,\n ...inject(CUI_NOTIFICATION_OPTIONS)\n })\n);\n\nexport const CUI_ALERT_CONTEXT = new InjectionToken<CuiPopover<CuiAlertOptions>>('');\n","import type { OnInit } from '@angular/core';\nimport { ChangeDetectionStrategy, Component, inject, HostBinding } from '@angular/core';\n\nimport { CUI_ALERT_CONTEXT } from './alert.tokens';\nimport type { CuiAlertResizing } from './alert.types';\n\n@Component({\n selector: 'cui-alert',\n templateUrl: './alert.template.html',\n styleUrls: ['./alert.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiAlertComponent implements OnInit {\n protected readonly context = inject(CUI_ALERT_CONTEXT);\n\n protected readonly AUTO_CLOSE_DURATION_IN_MILLISECONDS = 3000;\n\n @HostBinding('attr.data-resizing')\n protected get resizing(): CuiAlertResizing {\n return this.context.resizing;\n }\n\n public ngOnInit(): void {\n this.initAutoClose();\n }\n\n protected onClosed(): void {\n this.context.$implicit.complete();\n }\n\n private initAutoClose(): void {\n if (!this.context.needAutoClose) {\n return;\n }\n\n setTimeout(this.onClosed.bind(this), this.AUTO_CLOSE_DURATION_IN_MILLISECONDS);\n }\n}\n","<cui-notification\n [status]=\"context.status\"\n [mode]=\"context.mode\"\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","import type { OnInit } from '@angular/core';\nimport { ChangeDetectionStrategy, Component, inject, Injector } from '@angular/core';\nimport type { CuiPopover } from '@cuby-ui/cdk';\nimport { CuiDestroyService } from '@cuby-ui/cdk';\nimport type { Observable } from 'rxjs';\nimport { takeUntil } from 'rxjs';\n\nimport { CUI_ALERT_CONTEXT, CUI_ALERTS } from './alert.tokens';\nimport type { CuiAlertOptions } from './alert.interfaces';\n\n@Component({\n selector: 'cui-alerts',\n templateUrl: './alerts.template.html',\n styleUrls: ['./alerts.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [CuiDestroyService]\n})\nexport class CuiAlertsComponent implements OnInit {\n private readonly destroy$ = inject(CuiDestroyService, { self: true });\n\n protected readonly alerts$: Observable<ReadonlyArray<CuiPopover<CuiAlertOptions>>> = inject(CUI_ALERTS);\n protected alertInjectors!: ReadonlyArray<Injector>;\n\n public ngOnInit(): void {\n this.initAlertInjectorsSubscription();\n }\n\n protected trackByFn(_: number, alert: CuiPopover<CuiAlertOptions>): string {\n return alert.id;\n }\n\n protected alertsMatcher(alert: CuiPopover<CuiAlertOptions>, position: string): boolean {\n return alert.position === position;\n }\n\n protected initAlertInjectorsSubscription(): void {\n this.alerts$\n .pipe(takeUntil(this.destroy$))\n .subscribe(dialogs => this.alertInjectors = dialogs.map(useValue => Injector.create({\n providers: [{ provide: CUI_ALERT_CONTEXT, useValue }]\n })));\n }\n}\n","<ng-container *cuiLet=\"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]\" />\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]\" />\n </ng-container>\n </div>\n</ng-container>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { CuiFilterPipe, CuiLetDirective } from '@cuby-ui/cdk';\n\nimport { CuiAlertComponent } from './alert.component';\nimport { CuiAlertsComponent } from './alerts.component';\nimport { CuiNotificationModule } from '../notification';\n\n@NgModule({\n imports: [\n CommonModule,\n CuiFilterPipe,\n CuiNotificationModule,\n CuiLetDirective\n ],\n declarations: [\n CuiAlertComponent,\n CuiAlertsComponent\n ],\n exports: [\n CuiAlertComponent,\n CuiAlertComponent,\n CuiAlertsComponent\n ]\n})\nexport class CuiAlertModule {\n}\n","import { inject, Injectable } from '@angular/core';\nimport { CuiPopoverService } from '@cuby-ui/cdk';\n\nimport { CUI_ALERT_OPTIONS, CUI_ALERTS } from './alert.tokens';\nimport { CuiAlertComponent } from './alert.component';\nimport type { CuiAlertOptions } from './alert.interfaces';\n\n@Injectable({\n providedIn: 'root',\n useFactory: () => new CuiAlertService(CUI_ALERTS, CuiAlertComponent, inject(CUI_ALERT_OPTIONS))\n})\nexport class CuiAlertService extends CuiPopoverService<CuiAlertOptions> {\n}\n","import { cuiCreateToken } from '@cuby-ui/cdk';\n\nimport type { CuiSizeMd, CuiSizeSm } from '../../types';\n\nexport interface CuiBadgeOptions {\n readonly color: 'light-blue' | 'yellow' | 'green' | 'gray' | 'dark-gray' | 'red' | 'violet';\n readonly size: CuiSizeSm | CuiSizeMd;\n readonly isWithDot: boolean;\n}\n\nexport const CUI_BADGE_DEFAULT_OPTIONS: CuiBadgeOptions = {\n color: 'light-blue',\n size: 'sm',\n isWithDot: false\n};\n\nexport const CUI_BADGE_OPTIONS = cuiCreateToken(CUI_BADGE_DEFAULT_OPTIONS);","import { ChangeDetectionStrategy, Component, HostBinding, inject, Input } from '@angular/core';\n\nimport type { CuiBadgeOptions } from './badge.options';\nimport { CUI_BADGE_OPTIONS } from './badge.options';\n\n@Component({\n selector: 'cui-badge',\n templateUrl: './badge.template.html',\n styleUrls: ['./badge.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiBadgeComponent implements CuiBadgeOptions {\n private readonly options = inject(CUI_BADGE_OPTIONS);\n\n @Input()\n @HostBinding('attr.data-color')\n public color = this.options.color;\n\n @Input()\n @HostBinding('attr.data-size')\n public size = this.options.size;\n\n @Input()\n public isWithDot = this.options.isWithDot;\n}\n","<span\n *ngIf=\"isWithDot\"\n class=\"c-dots\"\n></span>\n<ng-content />","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { CuiBadgeComponent } from './badge.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [CuiBadgeComponent],\n exports: [CuiBadgeComponent]\n})\nexport class CuiBadgeModule {\n}\n","import type { CuiStatus } from '../../types';\nimport { cuiCreateToken } from '@cuby-ui/cdk';\nimport type { CuiIcon } from '@cuby-ui/icons';\n\nexport type CuiBannerIconOptions = {\n [k in CuiStatus]: {\n icon: CuiIcon;\n color: string;\n }\n}\n\nexport interface CuiBannerOptions {\n readonly status: CuiStatus;\n}\n\nexport const CUI_BANNER_DEFAULT_OPTIONS: CuiBannerOptions = {\n status: 'info'\n};\n\nexport const CUI_BANNER_OPTIONS = cuiCreateToken(CUI_BANNER_DEFAULT_OPTIONS);\n","import { cuiCreateToken } from '@cuby-ui/cdk';\n\nexport type CuiTheme = 'light' | 'dark';\n\nexport const CUI_THEME_STORAGE_DEFAULT_KEY = 'cuiTheme';\n\nexport const CUI_DEFAULT_THEME: CuiTheme = 'light';\n\nexport const CUI_THEME_STORAGE_KEY = cuiCreateToken(CUI_THEME_STORAGE_DEFAULT_KEY);\n\nexport const CUI_THEME = cuiCreateToken<CuiTheme>(CUI_DEFAULT_THEME);","import { inject, Injectable } from '@angular/core';\nimport type { CuiNullable } from '@cuby-ui/cdk';\nimport { CUI_LOCAL_STORAGE } from '@cuby-ui/cdk';\nimport { BehaviorSubject } from 'rxjs';\n\nimport type { CuiTheme } from './theme.options';\nimport { CUI_THEME, CUI_THEME_STORAGE_KEY } from './theme.options';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class CuiThemeService extends BehaviorSubject<CuiTheme> {\n private readonly localStorage = inject(CUI_LOCAL_STORAGE);\n private readonly key = inject(CUI_THEME_STORAGE_KEY);\n\n constructor() {\n super(\n inject(CUI_LOCAL_STORAGE).getItem(inject(CUI_THEME_STORAGE_KEY)) as CuiNullable<CuiTheme>\n ?? inject(CUI_THEME)\n );\n }\n\n public override next(theme: CuiTheme): void {\n this.localStorage.setItem(this.key, theme);\n super.next(theme);\n }\n\n // При работе только двух тем\n public switch(): void {\n this.next(this.value === 'light' ? 'dark' : 'light');\n }\n}","import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, inject, Input, Output } from '@angular/core';\n\nimport type { CuiBannerIconOptions, CuiBannerOptions } from './banner.options';\nimport { CUI_BANNER_OPTIONS } from './banner.options';\nimport type { CuiTheme } from '../../services';\nimport { CuiThemeService } from '../../services';\n\n@Component({\n selector: 'cui-banner',\n templateUrl: './banner.template.html',\n styleUrls: ['./banner.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiBannerComponent implements CuiBannerOptions {\n private readonly options = inject(CUI_BANNER_OPTIONS);\n protected readonly theme$ = inject(CuiThemeService);\n\n protected readonly ICON_OPTIONS: CuiBannerIconOptions = {\n info: {\n icon: 'cuiIconInfo',\n color: 'var(--c-info-icon-color)'\n },\n success: {\n icon: 'cuiIconCheckCircle',\n color: 'var(--cui-success)'\n },\n alert: {\n icon: 'cuiIconAlertTriangle',\n color: 'var(--c-alert-icon-color)'\n },\n error: {\n icon: 'cuiIconAlertCircle',\n color: 'var(--cui-danger)'\n },\n };\n protected readonly THEME_CLOSE_BUTTON_ICON_COLORS: Record<CuiTheme, string> = {\n light: 'var(--cui-gray-500)',\n dark: 'var(--cui-gray-0)'\n }\n\n @Input()\n @HostBinding('attr.data-status')\n public status = this.options.status;\n\n @Input()\n public isCloseable = true;\n\n @Input()\n public label?: string;\n\n @Input()\n public actionButtonText?: string;\n\n @Output()\n public actionButtonClicked = new EventEmitter<void>();\n\n @Output()\n public closed = new EventEmitter<void>();\n\n protected onAction(): void {\n this.actionButtonClicked.emit();\n }\n\n protected onClose(): void {\n this.closed.emit();\n }\n}\n","<cui-svg\n *cuiLet=\"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 <button\n cuiButton\n *ngIf=\"actionButtonText\"\n appearance=\"link\"\n class=\"c-action\"\n (click)=\"onAction()\"\n >\n {{ actionButtonText }}\n </button>\n</div>\n<button\n *ngIf=\"isCloseable\"\n class=\"c-button\"\n (click)=\"onClose()\"\n>\n <cui-svg\n *cuiLet=\"theme$ | async as theme\"\n icon=\"cuiIconX\"\n [color]=\"THEME_CLOSE_BUTTON_ICON_COLORS[theme!]\"\n />\n</button>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { CuiLetDirective } from '@cuby-ui/cdk';\n\nimport { CuiBannerComponent } from './banner.component';\nimport { CuiSvgModule } from '../svg';\nimport { CuiButtonModule } from '../button';\n\n@NgModule({\n imports: [\n CommonModule,\n CuiLetDirective,\n CuiSvgModule,\n CuiButtonModule\n ],\n declarations: [CuiBannerComponent],\n exports: [CuiBannerComponent]\n})\nexport class CuiBannerModule {\n}\n","import { ChangeDetectionStrategy, Component, ContentChildren, QueryList, TemplateRef } from '@angular/core';\n\nimport { CuiItemDirective } from '@cuby-ui/cdk';\n\n@Component({\n selector: 'cui-breadcrumbs',\n templateUrl: './breadcrumbs.template.html',\n styleUrls: ['./breadcrumbs.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiBreadcrumbsComponent {\n @ContentChildren(CuiItemDirective, { read: TemplateRef })\n protected readonly breadcrumbs!: QueryList<TemplateRef<unknown>>;\n}\n","<ng-container *ngIf=\"breadcrumbs.changes | async\"/>\n<ng-container *ngFor=\"let breadcrumb of breadcrumbs; let isLast = last\">\n <ng-container *ngTemplateOutlet=\"breadcrumb\" />\n <cui-svg\n *ngIf=\"!isLast\"\n icon=\"cuiIconSlashDivider\"\n color=\"var(--cui-base-500)\"\n />\n</ng-container>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n@Component({\n selector: '[cuiBreadcrumb]',\n templateUrl: './breadcrumb.template.html',\n styleUrls: ['./breadcrumb.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiBreadcrumbComponent {\n @Input()\n public isLast = false;\n}\n","<ng-content />\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { CuiBreadcrumbsComponent } from './breadcrumbs.component';\nimport { CuiBreadcrumbComponent } from './breadcrumb/breadcrumb.component';\nimport { CuiSvgModule } from '../svg';\n\n@NgModule({\n imports: [\n CommonModule,\n CuiSvgModule\n ],\n declarations: [\n CuiBreadcrumbsComponent,\n CuiBreadcrumbComponent\n ],\n exports: [\n CuiBreadcrumbsComponent,\n CuiBreadcrumbComponent\n ]\n})\nexport class CuiBreadcrumbsModule {\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'cui-button-group',\n templateUrl: './button-group.template.html',\n styleUrls: ['./button-group.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiButtonGroupComponent {\n}\n","<ng-content select=\"button[cuiButton], a[cuiButton]\"></ng-content>\n","import { NgModule } from '@angular/core';\n\nimport { CuiButtonGroupComponent } from './button-group.component';\n\n@NgModule({\n declarations: [CuiButtonGroupComponent],\n exports: [CuiButtonGroupComponent]\n})\nexport class CuiButtonGroupModule {\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'input[type=\"checkbox\"][cuiCheckbox]',\n template: '',\n styleUrls: ['./checkbox.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiCheckboxComponent {\n}\n","import { NgModule } from '@angular/core';\n\nimport { CuiCheckboxComponent } from './checkbox.component';\n\n@NgModule({\n declarations: [CuiCheckboxComponent],\n exports: [CuiCheckboxComponent]\n})\nexport class CuiCheckboxModule {\n}\n","export const CUI_ROOT_SELECTOR = 'cui-root';","import { InjectionToken } from '@angular/core';\nimport type { CuiPopover } from '@cuby-ui/cdk';\nimport { cuiCreateToken } from '@cuby-ui/cdk';\nimport { BehaviorSubject } from 'rxjs';\n\nimport type { CuiDialogOptions } from './dialog.interfaces';\n\nexport const CUI_DIALOGS = cuiCreateToken(\n new BehaviorSubject<ReadonlyArray<CuiPopover<CuiDialogOptions>>>([])\n);\n\nexport const CUI_DIALOG_DEFAULT_OPTIONS: CuiDialogOptions = {\n size: 'auto',\n data: undefined,\n dismissible: true\n};\n\nexport const CUI_DIALOG_OPTIONS = cuiCreateToken(CUI_DIALOG_DEFAULT_OPTIONS);\n\nexport const CUI_DIALOG_CONTEXT = new InjectionToken<CuiPopover<CuiDialogOptions>>('');\n","import type { OnInit } from '@angular/core';\nimport { ChangeDetectionStrategy, Component, inject, Injector } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport type { CuiPopover } from '@cuby-ui/cdk';\nimport { CuiDestroyService } from '@cuby-ui/cdk';\nimport type { Observable } from 'rxjs';\nimport { takeUntil } from 'rxjs';\n\nimport { CUI_DIALOG_CONTEXT, CUI_DIALOGS } from './dialog.tokens';\nimport type { CuiDialogOptions } from './dialog.interfaces';\n\n@Component({\n selector: 'cui-dialogs',\n templateUrl: './dialogs.template.html',\n styleUrls: ['./dialogs.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [CuiDestroyService]\n})\nexport class CuiDialogsComponent implements OnInit {\n private readonly document = inject(DOCUMENT);\n private readonly destroy$ = inject(CuiDestroyService, { self: true });\n\n protected readonly dialogs$: Observable<ReadonlyArray<CuiPopover<CuiDialogOptions>>> = inject(CUI_DIALOGS);\n protected dialogInjectorCache = new Map<string, Injector>();\n protected dialogInjectors!: ReadonlyArray<Injector>;\n\n public ngOnInit(): void {\n this.initDialogsSubscription();\n }\n\n protected trackByFn(_: number, dialog: CuiPopover<CuiDialogOptions>): string {\n return dialog.id;\n }\n\n protected initDialogsSubscription(): void {\n this.dialogs$\n .pipe(takeUntil(this.destroy$))\n .subscribe(dialogs => {\n this.document.body.style.overflow = dialogs.length ? 'hidden' : '';\n this.dialogInjectors = dialogs.map(dialog => {\n if (!this.dialogInjectorCache.has(dialog.id)) {\n this.dialogInjectorCache.set(dialog.id, Injector.create({\n providers: [{ provide: CUI_DIALOG_CONTEXT, useValue: dialog }],\n parent: dialog.injector\n }));\n }\n\n return this.dialogInjectorCache.get(dialog.id)!;\n });\n\n this.dialogInjectorCache.forEach((_, dialogId) => {\n if (dialogs.find(dialog => dialog.id === dialogId)) {\n return;\n }\n\n this.dialogInjectorCache.delete(dialogId);\n });\n });\n }\n}\n","<ng-container *cuiLet=\"dialogs$ | async as dialogs\">\n <ng-container *ngFor=\"let dialog of dialogs; let i = index; trackBy: trackByFn\">\n <ng-container *ngComponentOutlet=\"dialog.component; injector: dialogInjectors[i]\"></ng-container>\n </ng-container>\n <div\n *ngIf=\"dialogs!.length\"\n class=\"c-overlay\"\n ></div>\n</ng-container>\n","import type { OnInit } from '@angular/core';\nimport { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport { CuiDestroyService } from '@cuby-ui/cdk';\nimport { takeUntil } from 'rxjs';\n\nimport { CuiThemeService } from '../../services';\nimport { CUI_ROOT_SELECTOR } from './root.options';\n\n@Component({\n selector: CUI_ROOT_SELECTOR,\n templateUrl: './root.template.html',\n styleUrls: ['./root.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [CuiDestroyService]\n})\nexport class CuiRootComponent implements OnInit {\n private readonly document = inject(DOCUMENT);\n private readonly theme$ = inject(CuiThemeService);\n private readonly destroy$ = inject(CuiDestroyService);\n\n public ngOnInit(): void {\n this.initThemeSubscription();\n }\n\n private initThemeSubscription(): void {\n this.theme$\n .pipe(takeUntil(this.destroy$))\n .subscribe(theme => this.document.documentElement.setAttribute('cuiTheme', theme));\n }\n}\n","<div class=\"c-content\">\n <ng-content />\n</div>\n<cui-dialogs />\n<cui-alerts />\n","import type { OnInit } from '@angular/core';\nimport { HostBinding, HostListener, Type } from '@angular/core';\nimport { ChangeDetectionStrategy, Component, inject, TemplateRef, ElementRef } from '@angular/core';\nimport type { CuiValueOf } from '@cuby-ui/cdk';\nimport { CuiFocusTrapDirective } from '@cuby-ui/cdk';\n\nimport type { CuiDialogSize } from './dialog.interfaces';\nimport { CUI_DIALOG_CONTEXT } from './dialog.tokens';\n\n// TODO: сделать структурную директиву\nconst ContentType = {\n String: 'string',\n Template: 'template',\n Component: 'component'\n} as const;\n\ntype IContentType = CuiValueOf<typeof ContentType>;\n\n@Component({\n selector: 'cui-dialog',\n templateUrl: './dialog.template.html',\n styleUrls: ['./dialog.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n hostDirectives: [CuiFocusTrapDirective]\n})\nexport class CuiDialogComponent implements OnInit {\n protected readonly element = inject(ElementRef).nativeElement as HTMLElement;\n protected readonly context = inject(CUI_DIALOG_CONTEXT);\n\n protected readonly LAST_OF_TYPE_SELECTOR = ':last-of-type';\n\n protected readonly ContentType = ContentType;\n\n protected contentType: IContentType = ContentType.Component;\n\n @HostBinding('attr.data-size')\n protected get size(): CuiDialogSize {\n return this.context.size;\n }\n\n public ngOnInit(): void {\n this.initContentType();\n }\n\n protected get contentTemplateRef(): TemplateRef<unknown> {\n return this.context.content as TemplateRef<unknown>;\n }\n\n protected get componentType(): Type<unknown> {\n return this.context.content as Type<unknown>;\n }\n\n @HostListener('document:keydown.escape', ['$event'])\n protected onEscape(): void {\n if (!this.context.dismissible) {\n return\n }\n\n if (!this.element.matches(this.LAST_OF_TYPE_SELECTOR)) {\n return;\n }\n\n this.context.completeWith();\n }\n\n private initContentType(): void {\n const content = this.context.content;\n\n switch (true) {\n case (typeof content === 'string'):\n this.contentType = ContentType.String;\n\n return;\n\n case (content instanceof TemplateRef):\n this.contentType = ContentType.Template;\n\n return;\n }\n }\n}\n","<ng-container [ngSwitch]=\"contentType\">\n <ng-container *ngSwitchCase=\"ContentType.String\">\n {{ context.content }}\n </ng-container>\n <ng-container *ngSwitchCase=\"ContentType.Template\">\n <ng-container *ngTemplateOutlet=\"contentTemplateRef; context: context\"></ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"ContentType.Component\">\n <div class=\"c-component-container\">\n <ng-container *ngComponentOutlet=\"componentType\"></ng-container>\n </div>\n </ng-container>\n</ng-container>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'cui-dialog-actions',\n templateUrl: './dialog-actions.template.html',\n styleUrls: ['./dialog-actions.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiDialogActionsComponent {\n}\n","<div class=\"c-divider\"></div>\n<div class=\"c-content\">\n <ng-content />\n</div>\n","import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\nimport type { PolymorpheusContent } from '@tinkoff/ng-polymorpheus';\nimport { PolymorpheusContext } from '@tinkoff/ng-polymorpheus/classes/context';\n\n@Component({\n selector: 'header[cuiDialogHeader][heading]',\n templateUrl: './dialog-header.template.html',\n styleUrls: ['./dialog-header.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiDialogHeaderComponent {\n @Input()\n public heading!: PolymorpheusContent;\n\n @Input()\n public headingContext?: PolymorpheusContext<any>['$implicit'];\n\n @Input()\n public subheading?: string;\n\n @Output()\n public readonly closed = new EventEmitter<MouseEvent>();\n\n protected onClose(event: MouseEvent): void {\n this.closed.emit(event);\n }\n}\n","<div class=\"c-heading\">\n <ng-container *polymorpheusOutlet=\"heading as heading; context: headingContext\">{{ heading }}</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","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { PolymorpheusModule } from '@tinkoff/ng-polymorpheus';\nimport { CuiLetDirective } from '@cuby-ui/cdk';\n\nimport { CuiButtonModule } from '../button';\nimport { CuiDialogComponent } from './dialog.component';\nimport { CuiDialogsComponent } from './dialogs.component';\nimport { CuiDialogActionsComponent } from './dialog-actions/dialog-actions.component';\nimport { CuiDialogHeaderComponent } from './dialog-header/dialog-header.component';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n CuiLetDirective,\n CuiButtonModule\n ],\n declarations: [\n CuiDialogComponent,\n CuiDialogsComponent,\n CuiDialogActionsComponent,\n CuiDialogHeaderComponent\n ],\n exports: [\n CuiDialogComponent,\n CuiDialogsComponent,\n CuiDialogActionsComponent,\n CuiDialogHeaderComponent\n ]\n})\nexport class CuiDialogModule {\n}\n","import { inject, Injectable } from '@angular/core';\nimport { CuiPopoverService } from '@cuby-ui/cdk';\n\nimport { CUI_DIALOG_OPTIONS, CUI_DIALOGS } from './dialog.tokens';\nimport { CuiDialogComponent } from './dialog.component';\nimport type { CuiDialogOptions } from './dialog.interfaces';\n\n@Injectable({\n providedIn: 'root',\n useFactory: () => new CuiDialogService(CUI_DIALOGS, CuiDialogComponent, inject(CUI_DIALOG_OPTIONS))\n})\nexport class CuiDialogService extends CuiPopoverService<CuiDialogOptions> {\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { CuiRootComponent } from './root.component';\nimport { CuiDialogModule } from '../dialog';\nimport { CuiAlertModule } from '../alert';\n\n@NgModule({\n imports: [\n CommonModule,\n CuiDialogModule,\n CuiAlertModule\n ],\n declarations: [CuiRootComponent],\n exports: [CuiRootComponent]\n})\nexport class CuiRootModule {\n}\n","import type { OnInit, AfterViewInit, TemplateRef, OnDestroy } from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostListener,\n inject,\n Input,\n ViewContainerRef,\n ViewChild,\n} from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport { fromEvent, take, takeUntil } from 'rxjs';\n\nimport { CuiDestroyService, CuiClickOutsideDirective, CuiTargetDirective, CUI_WINDOW } from '@cuby-ui/cdk';\n\nimport type { CuiContextMenuItem } from '../../interfaces';\nimport { CUI_ROOT_SELECTOR } from '../root';\n\n@Component({\n selector: 'cui-context-menu[items][target]',\n templateUrl: './context-menu.component.html',\n styleUrls: ['./context-menu.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [CuiDestroyService],\n hostDirectives: [\n CuiClickOutsideDirective,\n {\n directive: CuiTargetDirective,\n inputs: ['ccTarget: target']\n }\n ],\n})\nexport class CuiContextMenuComponent implements OnInit, AfterViewInit, OnDestroy {\n private readonly changeDetectorRef = inject(ChangeDetectorRef);\n private readonly viewContainerRef = inject(ViewContainerRef);\n private readonly document = inject(DOCUMENT);\n private readonly documentElement = this.document.documentElement;\n private readonly window = inject(CUI_WINDOW);\n private readonly destroy$ = inject(CuiDestroyService, { self: true });\n private readonly cuiClickOutsideDirective = inject(CuiClickOutsideDirective, { self: true });\n private readonly cuiTargetDirective = inject(CuiTargetDirective, { self: true });\n\n protected readonly EXTRA_OFFSET_LEFT = 0;\n protected readonly EXTRA_OFFSET_TOP = 0;\n\n protected isVisible = false;\n protected targetEventListener!: (event: MouseEvent) => void;\n protected node?: HTMLDivElement;\n\n @Input()\n public items!: CuiContextMenuItem[];\n\n @Input()\n public target!: HTMLElement;\n\n @ViewChild('list')\n protected readonly list!: TemplateRef<any>;\n\n public ngOnInit(): void {\n this.initClickOutsideSubscription();\n }\n\n public ngOnDestroy(): void {\n this.clearViewContainerRef();\n }\n\n public ngAfterViewInit(): void {\n this.initTargetElementListener();\n }\n\n protected onSelect(item: CuiContextMenuItem): void {\n this.close();\n\n item.command?.();\n }\n\n @HostListener('window:resize')\n protected onClose(): void {\n this.close();\n }\n\n @HostListener('click', ['$event'])\n protected onStopClickPropagation(event: MouseEvent): void {\n event.stopPropagation();\n }\n\n protected trackByFn(_: number, item: CuiContextMenuItem): string {\n return item.label;\n }\n\n private initClickOutsideSubscription(): void {\n this.cuiClickOutsideDirective.cuiClickOutside\n .pipe(takeUntil(this.destroy$))\n .subscribe((target) => {\n if (this.target.contains(target)) {\n return;\n }\n\n this.close();\n })\n }\n\n private initTargetElementListener(): void {\n this.targetEventListener = (event) => {\n event.stopPropagation();\n this.document.body.click();\n\n this.isVisible = !this.isVisible;\n\n this.clearViewContainerRef();\n\n if (this.isVisible) {\n this.renderList();\n this.changePosition(event.clientX, event.clientY);\n this.initHidingSubscription();\n }\n\n this.changeDetectorRef.markForCheck();\n };\n\n this.cuiTargetDirective.clicked\n .pipe(takeUntil(this.destroy$))\n .subscribe(this.targetEventListener);\n }\n\n private initHidingSubscription(): void {\n this.initHidingFromWindowEvent('scroll');\n this.initHidingFromWindowEvent('resize');\n }\n\n private initHidingFromWindowEvent(eventName: keyof WindowEventMap): void {\n fromEvent(this.window, eventName)\n .pipe(take(1))\n .subscribe(() => {\n this.close();\n this.changeDetectorRef.markForCheck();\n });\n }\n\n private close(): void {\n this.isVisible = false;\n\n this.clearViewContainerRef();\n }\n\n private renderList(): void {\n const embeddedViewRef = this.viewContainerRef.createEmbeddedView(this.list);\n\n this.node = embeddedViewRef.rootNodes[0];\n\n embeddedViewRef.detectChanges();\n\n this.document.querySelector(CUI_ROOT_SELECTOR)!.appendChild(this.node!);\n }\n\n private changePosition(x: number, y: number): void {\n this.node!.style.visibility = 'hidden';\n\n setTimeout(() => {\n const { clientWidth, clientHeight } = this.documentElement;\n const width = this.node!.offsetWidth;\n const height = this.node!.offsetHeight;\n let left = x;\n let top = y;\n\n if (left + width > clientWidth) {\n left -= width;\n }\n\n if (top + height > clientHeight) {\n top -= height;\n }\n\n left = Math.max(left, this.EXTRA_OFFSET_LEFT);\n top = Math.max(top, this.EXTRA_OFFSET_TOP);\n\n this.node!.style.left = left + 'px';\n this.node!.style.top = top + 'px';\n this.node!.style.visibility = '';\n\n this.changeDetectorRef.markForCheck();\n });\n }\n\n private clearViewContainerRef(): void {\n this.viewContainerRef.clear();\n }\n}\n","<ng-template #list>\n <div class=\"c-container\">\n <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 type=\"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 </div>\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { CuiContextMenuComponent } from './context-menu.component';\nimport { CuiSvgModule } from '../svg';\n\n@NgModule({\n imports: [\n CommonModule,\n CuiSvgModule\n ],\n declarations: [CuiContextMenuComponent],\n exports: [CuiContextMenuComponent]\n})\nexport class CuiContextMenuModule {\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'cui-form-field',\n templateUrl: './form-field.template.html',\n styleUrls: ['./form-field.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiFormFieldComponent {\n}\n","<ng-content select=\"label[cuiLabel]\" />\n<ng-content />\n<div class=\"c-hint-container\">\n <ng-content select=\"cui-hint\" />\n</div>\n","import { NgModule } from '@angular/core';\n\nimport { CuiFormFieldComponent } from './form-field.component';\n\n@NgModule({\n declarations: [CuiFormFieldComponent],\n exports: [CuiFormFieldComponent]\n})\nexport class CuiFormFieldModule {\n}\n","import { ChangeDetectionStrategy, Component, HostBinding, Input } from '@angular/core';\n\nimport type { CuiHintType } from '../../types';\n\n@Component({\n selector: 'cui-hint',\n templateUrl: './hint.template.html',\n styleUrls: ['./hint.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiHintComponent {\n @Input()\n @HostBinding('attr.data-hint-type')\n public hintType: CuiHintType = 'info';\n}\n","<ng-content></ng-content>\n","import { NgModule } from '@angular/core';\n\nimport { CuiHintComponent } from './hint.component';\n\n@NgModule({\n declarations: [CuiHintComponent],\n exports: [CuiHintComponent]\n})\nexport class CuiHintModule {\n}\n","import { ChangeDetectionStrategy, Component, HostBinding, Input } from '@angular/core';\nimport type { CuiIcon } from '@cuby-ui/icons';\n\n@Component({\n selector: 'button[cuiIconButton][icon], a[cuiIconButton][icon]',\n templateUrl: './icon-button.template.html',\n styleUrls: ['./icon-button.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiIconButtonComponent {\n protected readonly ICON_WIDTH = 16;\n protected readonly ICON_HEIGHT = 16;\n protected readonly ICON_STROKE_WIDTH = 1.5;\n\n @Input()\n public icon!: CuiIcon | string;\n\n @Input()\n public color?: string;\n\n @Input()\n @HostBinding('style.--icon-hover-color')\n public hoverColor?: string;\n\n @HostBinding('class._with-hover-color')\n protected get isWithHoverColor(): boolean {\n return !!this.hoverColor;\n }\n}\n","<cui-svg\n [icon]=\"icon\"\n [width]=\"ICON_WIDTH\"\n [height]=\"ICON_HEIGHT\"\n [color]=\"color\"\n [strokeWidth]=\"ICON_STROKE_WIDTH\"\n class=\"c-icon\"\n></cui-svg>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { CuiIconButtonComponent } from './icon-button.component';\nimport { CuiSvgModule } from '../svg';\n\n@NgModule({\n imports: [\n CommonModule,\n CuiSvgModule\n ],\n declarations: [CuiIconButtonComponent],\n exports: [CuiIconButtonComponent]\n})\nexport class CuiIconButtonModule {\n}\n","import type { CuiIcon } from '@cuby-ui/icons';\n\nimport type { CuiTextFieldSizeDirective } from './text-field-size.directive';\nimport type { CuiTextFieldIdDirective } from './text-field-id.directive';\nimport type { CuiTextFieldIconLeftDirective } from './text-field-icon-left.directive';\nimport type { CuiTextFieldPlaceholderDirective } from './text-field-placeholder.directive';\nimport type { CuiTextFieldIsErrorDirective } from './text-field-is-error.directive';\nimport type { CuiSizeMd, CuiSizeSm } from '../../types';\n\nexport class CuiTextFieldController {\n constructor(private readonly iconLeftDirective: CuiTextFieldIconLeftDirective,\n private readonly idDirective: CuiTextFieldIdDirective,\n private readonly isErrorDirective: CuiTextFieldIsErrorDirective,\n private readonly placeholderDirective: CuiTextFieldPlaceholderDirective,\n private readonly sizeDirective: CuiTextFieldSizeDirective) {\n }\n\n public get iconLeft(): CuiIcon | string | undefined {\n return this.iconLeftDirective.iconLeft;\n }\n\n public get id(): string | undefined {\n return this.idDirective.id;\n }\n\n public get isError(): boolean {\n return this.isErrorDirective.isError;\n }\n\n public get placeholder(): string | undefined {\n return this.placeholderDirective.placeholder;\n }\n\n public get size(): CuiSizeSm | CuiSizeMd {\n return this.sizeDirective.size;\n }\n}\n","import { Directive, InjectionToken, Input } from '@angular/core';\nimport { cuiProvide } from '@cuby-ui/cdk';\nimport type { CuiIcon } from '@cuby-ui/icons';\n\nexport const CUI_TEXT_FIELD_ICON_LEFT = new InjectionToken<CuiTextFieldIconLeftDirective>('', {\n factory: () => new CuiTextFieldIconLeftDirective()\n});\n\n@Directive({\n selector: '[cuiTextFieldIconLeft]',\n providers: [cuiProvide(CUI_TEXT_FIELD_ICON_LEFT, CuiTextFieldIconLeftDirective)]\n})\nexport class CuiTextFieldIconLeftDirective {\n @Input('cuiTextFieldIconLeft')\n public iconLeft?: CuiIcon | string;\n}\n","import { Directive, InjectionToken, Input } from '@angular/core';\nimport { cuiProvide } from '@cuby-ui/cdk';\n\nexport const CUI_TEXT_FIELD_ID = new InjectionToken<CuiTextFieldIdDirective>('', {\n factory: () => new CuiTextFieldIdDirective()\n});\n\n@Directive({\n selector: '[cuiTextFieldId]',\n providers: [cuiProvide(CUI_TEXT_FIELD_ID, CuiTextFieldIdDirective)]\n})\nexport class CuiTextFieldIdDirective {\n @Input('cuiTextFieldId')\n public id?: string;\n}\n","import { Directive, InjectionToken, Input } from '@angular/core';\nimport { cuiProvide } from '@cuby-ui/cdk';\n\nexport const CUI_TEXT_FIELD_IS_ERROR = new InjectionToken<CuiTextFieldIsErrorDirective>('', {\n factory: () => new CuiTextFieldIsErrorDirective()\n});\n\n@Directive({\n selector: '[cuiTextFieldIsError]',\n providers: [cuiProvide(CUI_TEXT_FIELD_IS_ERROR, CuiTextFieldIsErrorDirective)]\n})\nexport class CuiTextFieldIsErrorDirective {\n @Input('cuiTextFieldIsError')\n public isError = false;\n}\n","import { Directive, InjectionToken, Input } from '@angular/core';\nimport { cuiProvide } from '@cuby-ui/cdk';\n\nexport const CUI_TEXT_FIELD_PLACEHOLDER = new InjectionToken<CuiTextFieldPlaceholderDirective>('', {\n factory: () => new CuiTextFieldPlaceholderDirective()\n});\n\n@Directive({\n selector: '[cuiTextFieldPlaceholder]',\n providers: [cuiProvide(CUI_TEXT_FIELD_PLACEHOLDER, CuiTextFieldPlaceholderDirective)]\n})\nexport class CuiTextFieldPlaceholderDirective {\n @Input('cuiTextFieldPlaceholder')\n public placeholder?: string;\n}\n","import { Directive, InjectionToken, Input } from '@angular/core';\nimport { cuiProvide } from '@cuby-ui/cdk';\n\nimport type { CuiSizeMd, CuiSizeSm } from '../../types';\n\nexport const CUI_TEXT_FIELD_SIZE = new InjectionToken<CuiTextFieldSizeDirective>('', {\n factory: () => new CuiTextFieldSizeDirective()\n});\n\n@Directive({\n selector: '[cuiTextFieldSize]',\n providers: [cuiProvide(CUI_TEXT_FIELD_SIZE, CuiTextFieldSizeDirective)]\n})\nexport class CuiTextFieldSizeDirective {\n @Input('cuiTextFieldSize')\n public size: CuiSizeSm | CuiSizeMd = 'sm';\n}\n","import { NgModule } from '@angular/core';\n\nimport { CuiTextFieldIconLeftDirective } from './text-field-icon-left.directive';\nimport { CuiTextFieldIdDirective } from './text-field-id.directive';\nimport { CuiTextFieldIsErrorDirective } from './text-field-is-error.directive';\nimport { CuiTextFieldPlaceholderDirective } from './text-field-placeholder.directive';\nimport { CuiTextFieldSizeDirective } from './text-field-size.directive';\n\n@NgModule({\n declarations: [\n CuiTextFieldIconLeftDirective,\n CuiTextFieldIdDirective,\n CuiTextFieldPlaceholderDirective,\n CuiTextFieldIsErrorDirective,\n CuiTextFieldSizeDirective\n ],\n exports: [\n CuiTextFieldIconLeftDirective,\n CuiTextFieldIdDirective,\n CuiTextFieldPlaceholderDirective,\n CuiTextFieldIsErrorDirective,\n CuiTextFieldSizeDirective\n ]\n})\nexport class CuiTextFieldControllerModule {\n}\n","import { InjectionToken, Provider } from '@angular/core';\n\nimport { CuiTextFieldController } from './text-field.controller';\n\nimport { CUI_TEXT_FIELD_SIZE } from './text-field-size.directive';\nimport type { CuiTextFieldSizeDirective } from './text-field-size.directive';\nimport { CUI_TEXT_FIELD_ID } from './text-field-id.directive';\nimport type { CuiTextFieldIdDirective } from './text-field-id.directive';\nimport { CUI_TEXT_FIELD_IS_ERROR } from './text-field-is-error.directive';\nimport type { CuiTextFieldIsErrorDirective } from './text-field-is-error.directive';\nimport { CUI_TEXT_FIELD_PLACEHOLDER } from './text-field-placeholder.directive';\nimport type { CuiTextFieldPlaceholderDirective } from './text-field-placeholder.directive';\nimport { CUI_TEXT_FIELD_ICON_LEFT } from './text-field-icon-left.directive';\nimport type { CuiTextFieldIconLeftDirective } from './text-field-icon-left.directive';\n\nexport const CUI_TEXT_FIELD_CONTROLLER = new InjectionToken<CuiTextFieldController>('');\n\nexport const CUI_TEXT_FILED_CONTROLLER_PROVIDER: Provider = [\n {\n provide: CUI_TEXT_FIELD_CONTROLLER,\n useFactory: (...controllers: [\n CuiTextFieldIconLeftDirective,\n CuiTextFieldIdDirective,\n CuiTextFieldIsErrorDirective,\n CuiTextFieldPlaceholderDirective,\n CuiTextFieldSizeDirective\n ]) => {\n return new CuiTextFieldController(...controllers);\n },\n deps: [\n CUI_TEXT_FIELD_ICON_LEFT,\n CUI_TEXT_FIELD_ID,\n CUI_TEXT_FIELD_IS_ERROR,\n CUI_TEXT_FIELD_PLACEHOLDER,\n CUI_TEXT_FIELD_SIZE\n ]\n }\n];\n","import type { ElementRef } from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostBinding,\n HostListener,\n inject,\n Input,\n ViewChild\n} from '@angular/core';\nimport type { ControlValueAccessor } from '@angular/forms';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport type { MaskitoOptions } from '@maskito/core';\nimport { maskitoNumberOptionsGenerator, maskitoParseNumber } from '@maskito/kit';\nimport { CuiNullable, CuiOnChange, CuiOnTouched } from '@cuby-ui/cdk';\nimport { cuiProvide } from '@cuby-ui/cdk';\nimport type { CuiIcon } from '@cuby-ui/icons';\n\nimport { CUI_TEXT_FIELD_CONTROLLER, CUI_TEXT_FILED_CONTROLLER_PROVIDER } from '../../directives';\nimport { CuiSizeMd, CuiSizeSm } from '../../types';\n\n@Component({\n selector: 'cui-input-number',\n templateUrl: './input-number.template.html',\n styleUrls: ['./input-number.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n CUI_TEXT_FILED_CONTROLLER_PROVIDER,\n cuiProvide(NG_VALUE_ACCESSOR, CuiInputNumberComponent, true)\n ]\n})\nexport class CuiInputNumberComponent implements ControlValueAccessor {\n private readonly changeDetectorRef = inject(ChangeDetectorRef);\n private readonly cuiTextFieldController = inject(CUI_TEXT_FIELD_CONTROLLER);\n\n protected maskOptions = this.generateMask();\n protected _precision = 0;\n protected _min = Number.MIN_SAFE_INTEGER;\n protected _max = Number.MAX_SAFE_INTEGER;\n protected value!: CuiNullable<string>;\n protected onChange!: CuiOnChange<CuiNullable<number>>;\n protected onTouched!: CuiOnTouched;\n\n @Input()\n public set precision(value: number) {\n this._precision = value;\n this.maskOptions = this.generateMask();\n }\n\n @Input()\n public set min(value: number) {\n this._min = value;\n this.maskOptions = this.generateMask();\n }\n\n @Input()\n public set max(value: number) {\n this._max = value;\n this.maskOptions = this.generateMask();\n }\n\n @HostBinding('class._disabled')\n protected isDisabled!: boolean;\n\n @ViewChild('input')\n protected input!: ElementRef<HTMLInputElement>;\n\n protected get id(): string | undefined {\n return this.cuiTextFieldController.id;\n }\n\n protected get placeholder(): string | undefined {\n return this.cuiTextFieldController.placeholder;\n }\n\n protected get iconLeft(): CuiIcon | string | undefined {\n return this.cuiTextFieldController.iconLeft;\n }\n\n @HostBinding('attr.data-size')\n protected get size(): CuiSizeSm | CuiSizeMd {\n return this.cuiTextFieldController.size;\n }\n\n @HostBinding('class._with-error')\n protected get isError(): boolean {\n return this.cuiTextFieldController.isError;\n }\n\n public writeValue(value: CuiNullable<number>): void {\n this.value = value?.toString();\n\n this.changeDetectorRef.markForCheck();\n }\n\n public registerOnChange(fn: CuiOnChange<CuiNullable<number>>): void {\n this.onChange = fn;\n }\n\n public registerOnTouched(fn: CuiOnTouched): void {\n this.onTouched = fn;\n }\n\n public setDisabledState(isDisabled: boolean): void {\n this.isDisabled = isDisabled;\n\n this.changeDetectorRef.markForCheck();\n }\n\n protected onInput({ target }: Event): void {\n this.changeModel((target as HTMLInputElement).value);\n }\n\n @HostListener('click')\n protected onFocus(): void {\n this.input.nativeElement.focus();\n }\n\n private changeModel(value: string): void {\n const parsedValue = maskitoParseNumber(value);\n\n this.value = value;\n\n this.onChange(Number.isNaN(parsedValue) ? null : parsedValue);\n }\n\n private generateMask(): MaskitoOptions {\n return maskitoNumberOptionsGenerator({\n precision: this._precision,\n min: this._min,\n max: this._max\n });\n }\n}\n","<cui-svg\n *ngIf=\"iconLeft\"\n [icon]=\"iconLeft\"\n color=\"var(--cui-base-500)\"\n></cui-svg>\n<input\n #input\n [ngModel]=\"value\"\n [attr.id]=\"id\"\n [attr.placeholder]=\"placeholder\"\n type=\"text\"\n [maskito]=\"maskOptions\"\n [disabled]=\"isDisabled\"\n class=\"c-input\"\n (input)=\"onInput($event)\"\n (focus)=\"onTouched()\"\n>\n\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { MaskitoDirective } from '@maskito/angular';\n\nimport { CuiInputNumberComponent } from './input-number.component';\nimport { CuiSvgModule } from '../svg';\nimport { CuiTextFieldControllerModule } from '../../directives';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n MaskitoDirective,\n CuiSvgModule,\n ],\n declarations: [CuiInputNumberComponent],\n exports: [\n CuiInputNumberComponent,\n CuiTextFieldControllerModule\n ]\n})\nexport class CuiInputNumberModule {\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostBinding,\n inject\n} from '@angular/core';\nimport type { ControlValueAccessor } from '@angular/forms';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport type { CuiInputType, CuiNullable, CuiOnChange, CuiOnTouched } from '@cuby-ui/cdk';\nimport { cuiProvide } from '@cuby-ui/cdk';\nimport type { CuiIcon } from '@cuby-ui/icons';\n\nimport { CUI_TEXT_FIELD_CONTROLLER, CUI_TEXT_FILED_CONTROLLER_PROVIDER } from '../../directives';\nimport { CuiSizeMd, CuiSizeSm } from '../../types';\n\n@Component({\n selector: 'cui-input-password',\n templateUrl: './input-password.template.html',\n styleUrls: ['./input-password.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n CUI_TEXT_FILED_CONTROLLER_PROVIDER,\n cuiProvide(NG_VALUE_ACCESSOR, CuiInputPasswordComponent, true)\n ]\n})\nexport class CuiInputPasswordComponent implements ControlValueAccessor {\n private readonly changeDetectorRef = inject(ChangeDetectorRef);\n private readonly cuiTextFieldController = inject(CUI_TEXT_FIELD_CONTROLLER);\n\n protected isPasswordHidden = true;\n protected value!: CuiNullable<string>;\n protected onChange!: CuiOnChange<string>;\n protected onTouched!: CuiOnTouched;\n\n @HostBinding('class._disabled')\n protected isDisabled!: boolean;\n\n protected get id(): string | undefined {\n return this.cuiTextFieldController.id;\n }\n\n protected get placeholder(): string | undefined {\n return this.cuiTextFieldController.placeholder;\n }\n\n protected get iconLeft(): CuiIcon | string | undefined {\n return this.cuiTextFieldController.iconLeft;\n }\n\n protected get isToggleButtonShown(): boolean {\n return !this.isDisabled;\n }\n\n protected get icon(): CuiIcon {\n return this.isPasswordHidden ? 'cuiIconEye' : 'cuiIconEyeOff';\n }\n\n protected get type(): CuiInputType {\n return this.isPasswordHidden ? 'password' : 'text';\n }\n\n protected get buttonTitle(): string {\n return this.isPasswordHidden ? 'Reveal password' : 'Hide password';\n }\n\n @HostBinding('attr.data-size')\n protected get size(): CuiSizeSm | CuiSizeMd {\n return this.cuiTextFieldController.size;\n }\n\n @HostBinding('class._with-error')\n protected get isError(): boolean {\n return this.cuiTextFieldController.isError;\n }\n\n public writeValue(value: CuiNullable<string>): void {\n this.value = value;\n\n this.changeDetectorRef.markForCheck();\n }\n\n public registerOnChange(fn: CuiOnChange<string>): void {\n this.onChange = fn;\n }\n\n public registerOnTouched(fn: CuiOnTouched): void {\n this.onTouched = fn;\n }\n\n public setDisabledState(isDisabled: boolean): void {\n this.isDisabled = isDisabled;\n\n if (this.isDisabled) {\n this.isPasswordHidden = true;\n }\n\n this.changeDetectorRef.markForCheck();\n }\n\n protected onInput({ target }: Event): void {\n const value = (target as HTMLInputElement).value;\n\n this.value = value;\n\n this.onChange(value);\n }\n\n protected onTogglePasswordVisibility(): void {\n this.isPasswordHidden = !this.isPasswordHidden;\n }\n}\n","<cui-svg\n *ngIf=\"iconLeft\"\n [icon]=\"iconLeft\"\n color=\"var(--cui-base-500)\"\n></cui-svg>\n<input\n [ngModel]=\"value\"\n [attr.id]=\"id\"\n [attr.placeholder]=\"placeholder\"\n [type]=\"type\"\n [disabled]=\"isDisabled\"\n class=\"c-input\"\n (input)=\"onInput($event)\"\n (focus)=\"onTouched()\"\n>\n<button\n *ngIf=\"isToggleButtonShown\"\n [title]=\"buttonTitle\"\n class=\"c-button\"\n (click)=\"onTogglePasswordVisibility()\"\n>\n <cui-svg\n [icon]=\"icon\"\n [width]=\"16\"\n [height]=\"16\"\n color=\"var(--cui-base-500)\"\n ></cui-svg>\n</button>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { CuiInputPasswordComponent } from './input-password.component';\nimport { CuiSvgModule } from '../svg';\nimport { CuiTextFieldControllerModule } from '../../directives';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n CuiSvgModule\n ],\n declarations: [CuiInputPasswordComponent],\n exports: [\n CuiInputPasswordComponent,\n CuiTextFieldControllerModule\n ]\n})\nexport class CuiInputPasswordModule {\n}\n","import type { ElementRef } from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostBinding,\n HostListener,\n inject,\n ViewChild\n} from '@angular/core';\nimport type { ControlValueAccessor } from '@angular/forms';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport type { CuiOnChange, CuiOnTouched, CuiNullable } from '@cuby-ui/cdk';\nimport { cuiProvide } from '@cuby-ui/cdk';\nimport type { CuiIcon } from '@cuby-ui/icons';\n\nimport { CUI_TEXT_FIELD_CONTROLLER, CUI_TEXT_FILED_CONTROLLER_PROVIDER } from '../../directives';\nimport { CuiSizeMd, CuiSizeSm } from '../../types';\n\n@Component({\n selector: 'cui-input-text',\n templateUrl: './input-text.template.html',\n styleUrls: ['./input-text.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n CUI_TEXT_FILED_CONTROLLER_PROVIDER,\n cuiProvide(NG_VALUE_ACCESSOR, CuiInputTextComponent, true)\n ]\n})\nexport class CuiInputTextComponent implements ControlValueAccessor {\n private readonly changeDetectorRef = inject(ChangeDetectorRef);\n private readonly cuiTextFieldController = inject(CUI_TEXT_FIELD_CONTROLLER);\n\n protected value!: CuiNullable<string>;\n protected onChange!: CuiOnChange<string>;\n protected onTouched!: CuiOnTouched;\n\n @HostBinding('class._disabled')\n protected isDisabled!: boolean;\n\n @ViewChild('input')\n protected input!: ElementRef<HTMLInputElement>;\n\n protected get id(): string | undefined {\n return this.cuiTextFieldController.id;\n }\n\n protected get placeholder(): string | undefined {\n return this.cuiTextFieldController.placeholder;\n }\n\n protected get iconLeft(): CuiIcon | string | undefined {\n return this.cuiTextFieldController.iconLeft;\n }\n\n protected get isClearButtonHidden(): boolean {\n return !(this.value && !this.isDisabled);\n }\n\n @HostBinding('attr.data-size')\n protected get size(): CuiSizeSm | CuiSizeMd {\n return this.cuiTextFieldController.size;\n }\n\n @HostBinding('class._with-error')\n protected get isError(): boolean {\n return this.cuiTextFieldController.isError;\n }\n\n public writeValue(value: CuiNullable<string>): void {\n this.value = value;\n\n this.changeDetectorRef.markForCheck();\n }\n\n public registerOnChange(fn: CuiOnChange<string>): void {\n this.onChange = fn;\n }\n\n public registerOnTouched(fn: CuiOnTouched): void {\n this.onTouched = fn;\n }\n\n public setDisabledState(isDisabled: boolean): void {\n this.isDisabled = isDisabled;\n\n this.changeDetectorRef.markForCheck();\n }\n\n protected onInput({ target }: Event): void {\n this.changeModel((target as HTMLInputElement).value);\n }\n\n protected onClear(): void {\n this.changeModel('');\n }\n\n @HostListener('click')\n protected onFocus(): void {\n this.input.nativeElement.focus();\n }\n\n private changeModel(value: string): void {\n this.value = value;\n\n this.onChange(value);\n }\n}\n","<cui-svg\n *ngIf=\"iconLeft\"\n [icon]=\"iconLeft\"\n color=\"var(--cui-base-500)\"\n></cui-svg>\n<input\n #input\n [ngModel]=\"value\"\n [attr.id]=\"id\"\n [attr.placeholder]=\"placeholder\"\n type=\"text\"\n [disabled]=\"isDisabled\"\n class=\"c-input\"\n (input)=\"onInput($event)\"\n (focus)=\"onTouched()\"\n>\n<button\n type=\"button\"\n class=\"c-button\"\n [class.c-button_hidden]=\"isClearButtonHidden\"\n (click)=\"onClear()\"\n>\n <cui-svg\n icon=\"cuiIconClear\"\n color=\"var(--cui-base-300)\"\n class=\"c-close-icon\"\n />\n</button>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { CuiInputTextComponent } from './input-text.component';\nimport { CuiSvgModule } from '../svg';\nimport { CuiTextFieldControllerModule } from '../../directives';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n CuiSvgModule\n ],\n declarations: [CuiInputTextComponent],\n exports: [\n CuiInputTextComponent,\n CuiTextFieldControllerModule\n ]\n})\nexport class CuiInputModule {\n}\n","import { InjectionToken } from '@angular/core';\nimport type { CuiTimeMode } from '@cuby-ui/cdk';\n\nexport interface CuiInputTimeOptions {\n readonly mode: CuiTimeMode;\n}\n\nexport const CUI_INPUT_TIME_DEFAULT_OPTIONS: CuiInputTimeOptions = {\n mode: 'HH:MM'\n};\n\nexport const CUI_INPUT_TIME_OPTIONS = new InjectionToken('', {\n factory: () => CUI_INPUT_TIME_DEFAULT_OPTIONS\n});","import type { ElementRef } from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostBinding,\n HostListener,\n inject,\n Input,\n ViewChild\n} from '@angular/core';\nimport type { ControlValueAccessor } from '@angular/forms';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport type { MaskitoTimeMode } from '@maskito/kit';\nimport { maskitoTimeOptionsGenerator } from '@maskito/kit';\nimport type { MaskitoOptions } from '@maskito/core';\nimport type { CuiNullable, CuiOnChange, CuiOnTouched } from '@cuby-ui/cdk';\nimport { cuiProvide, CuiTime } from '@cuby-ui/cdk';\n\nimport { CUI_INPUT_TIME_OPTIONS, CuiInputTimeOptions } from './input-time.options';\nimport type { CuiSizeMd, CuiSizeSm } from '../../types';\nimport { CUI_TEXT_FIELD_CONTROLLER, CUI_TEXT_FILED_CONTROLLER_PROVIDER } from '../../directives';\n\n@Component({\n selector: 'cui-input-time',\n templateUrl: './input-time.template.html',\n styleUrls: ['./input-time.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n CUI_TEXT_FILED_CONTROLLER_PROVIDER,\n cuiProvide(NG_VALUE_ACCESSOR, CuiInputTimeComponent, true)\n ]\n})\nexport class CuiInputTimeComponent implements CuiInputTimeOptions, ControlValueAccessor {\n private readonly changeDetectorRef = inject(ChangeDetectorRef);\n private readonly cuiTextFieldController = inject(CUI_TEXT_FIELD_CONTROLLER);\n private readonly options = inject(CUI_INPUT_TIME_OPTIONS);\n\n protected _mode = this.options.mode\n protected maskOptions = this.generateMask(this._mode);\n protected defaultPlaceholder = this._mode.toLowerCase();\n protected value!: CuiNullable<CuiTime>;\n protected onChange!: CuiOnChange<CuiNullable<CuiTime>>;\n protected onTouched!: CuiOnTouched;\n\n @Input()\n public set mode(value: CuiInputTimeOptions['mode']) {\n this._mode = value;\n this.maskOptions = this.generateMask(value);\n this.defaultPlaceholder = value.toLowerCase();\n }\n\n @HostBinding('class._disabled')\n protected isDisabled!: boolean;\n\n @ViewChild('input')\n protected input!: ElementRef<HTMLInputElement>;\n\n protected get id(): string | undefined {\n return this.cuiTextFieldController.id;\n }\n\n protected get placeholder(): string | undefined {\n return this.cuiTextFieldController.placeholder ?? this.defaultPlaceholder;\n }\n\n public get computedValue(): string {\n return this.value ? this.value.toString(this._mode) : '';\n }\n\n @HostBinding('attr.data-size')\n protected get size(): CuiSizeSm | CuiSizeMd {\n return this.cuiTextFieldController.size;\n }\n\n @HostBinding('class._with-error')\n protected get isError(): boolean {\n return this.cuiTextFieldController.isError;\n }\n\n public writeValue(value: CuiNullable<CuiTime>): void {\n this.value = value;\n\n this.changeDetectorRef.markForCheck();\n }\n\n public registerOnChange(fn: CuiOnChange<CuiNullable<CuiTime>>): void {\n this.onChange = fn;\n }\n\n public registerOnTouched(fn: CuiOnTouched): void {\n this.onTouched = fn;\n }\n\n public setDisabledState(isDisabled: boolean): void {\n this.isDisabled = isDisabled;\n\n this.changeDetectorRef.markForCheck();\n }\n\n protected onInput(event: Event): void {\n const value = (event.target as HTMLInputElement).value;\n\n if (value.length !== this._mode.length) {\n this.onChange(null);\n\n return;\n }\n\n const time = CuiTime.fromString(value);\n\n this.onChange(time);\n }\n\n @HostListener('click')\n protected onFocus(): void {\n this.input.nativeElement.focus();\n }\n\n private generateMask(mode: MaskitoTimeMode): MaskitoOptions {\n return maskitoTimeOptionsGenerator({ mode });\n }\n}\n","<cui-svg\n icon=\"cuiIconClock\"\n color=\"var(--cui-base-500)\"\n></cui-svg>\n<input\n #input\n [ngModel]=\"computedValue\"\n [attr.id]=\"id\"\n [attr.placeholder]=\"placeholder\"\n type=\"text\"\n [maskito]=\"maskOptions\"\n [disabled]=\"isDisabled\"\n class=\"c-input\"\n (input)=\"onInput($event)\"\n (focus)=\"onTouched()\"\n>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { MaskitoDirective } from '@maskito/angular';\n\nimport { CuiInputTimeComponent } from './input-time.component';\nimport { CuiSvgModule } from '../svg';\nimport { CuiTextFieldControllerModule } from '../../directives';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n MaskitoDirective,\n CuiSvgModule\n ],\n declarations: [CuiInputTimeComponent],\n exports: [\n CuiInputTimeComponent,\n CuiTextFieldControllerModule\n ]\n})\nexport class CuiInputTimeModule {\n}\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\n\n@Component({\n selector: 'label[cuiLabel]',\n templateUrl: './label.template.html',\n styleUrls: ['./label.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiLabelComponent {\n @Input()\n public isRequired = false;\n}\n","<span class=\"c-wrapper\">\n <ng-content></ng-content>\n</span>\n<span\n *ngIf=\"isRequired\"\n class=\"c-star\"\n>\n *\n</span>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { CuiLabelComponent } from './label.component';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [CuiLabelComponent],\n exports: [CuiLabelComponent]\n})\nexport class CuiLabelModule {\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'input[type=\"radio\"][cuiRadio]',\n template: '',\n styleUrls: ['./radio.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiRadioComponent {\n}\n","import { NgModule } from '@angular/core';\n\nimport { CuiRadioComponent } from './radio.component';\n\n@NgModule({\n declarations: [CuiRadioComponent],\n exports: [CuiRadioComponent]\n})\nexport class CuiRadioModule {\n}\n","import type { OnDestroy, OnInit, TemplateRef } from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n inject,\n Input,\n ElementRef,\n ViewChild,\n HostBinding,\n ViewContainerRef,\n HostListener\n} from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport type { CuiOnChange, CuiOnTouched, CuiNullable } from '@cuby-ui/cdk';\nimport { CuiDestroyService } from '@cuby-ui/cdk';\nimport { cuiProvide, CuiClickOutsideDirective } from '@cuby-ui/cdk';\nimport { takeUntil } from 'rxjs';\n\nimport type { CuiOption } from '../../interfaces';\nimport type { CuiSizeMd, CuiSizeSm } from '../../types';\nimport { CUI_TEXT_FIELD_CONTROLLER, CUI_TEXT_FILED_CONTROLLER_PROVIDER } from '../../directives';\nimport { CUI_ROOT_SELECTOR } from '../root';\n\n@Component({\n selector: 'cui-select[options]',\n templateUrl: './select.template.html',\n styleUrls: ['./select.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n CUI_TEXT_FILED_CONTROLLER_PROVIDER,\n cuiProvide(NG_VALUE_ACCESSOR, CuiSelectComponent, true),\n CuiDestroyService\n ],\n hostDirectives: [CuiClickOutsideDirective]\n})\nexport class CuiSelectComponent implements ControlValueAccessor, OnInit, OnDestroy {\n private readonly element = inject(ElementRef).nativeElement;\n private readonly document = inject(DOCUMENT);\n private readonly changeDetectorRef = inject(ChangeDetectorRef);\n private readonly viewContainerRef = inject(ViewContainerRef);\n private readonly destroy$ = inject(CuiDestroyService, {self: true});\n private readonly cuiTextFieldController = inject(CUI_TEXT_FIELD_CONTROLLER);\n private readonly cuiClickOutsideDirective = inject(CuiClickOutsideDirective, {self: true});\n\n protected readonly SPACE_BETWEEN_BUTTON_AND_OPTIONS = 3;\n\n protected isOpened = false;\n protected isOptionsListAbove = false;\n protected value!: CuiNullable<unknown>;\n protected onChange!: CuiOnChange<unknown>;\n protected onTouched!: CuiOnTouched;\n protected isDisabled!: boolean;\n protected selectedOption?: CuiOption;\n\n @Input()\n public options!: CuiOption[];\n\n @Input()\n public defaultOptionText?: string;\n\n @ViewChild('button')\n protected readonly button!: ElementRef<HTMLButtonElement>;\n\n @ViewChild('getOptionsListHeightContainer')\n protected readonly getOptionsListHeightContainer!: ElementRef<HTMLUListElement>;\n\n @ViewChild('backdrop')\n protected readonly backdrop!: TemplateRef<unknown>;\n\n @ViewChild('optionsWrapper')\n protected readonly optionsWrapper!: TemplateRef<unknown>;\n\n @HostBinding('style.--c-gap')\n protected gap = `${this.SPACE_BETWEEN_BUTTON_AND_OPTIONS}px`;\n\n protected get id(): string | undefined {\n return this.cuiTextFieldController.id;\n }\n\n protected get size(): CuiSizeSm | CuiSizeMd {\n return this.cuiTextFieldController.size;\n }\n\n protected get placeholder(): string | undefined {\n return this.cuiTextFieldController.placeholder;\n }\n\n protected get isError(): boolean {\n return this.cuiTextFieldController.isError;\n }\n\n protected trackByFn(_: number, item: CuiOption): string {\n return item.label;\n }\n\n public writeValue(value: unknown): void {\n this.value = value;\n // TODO: Непонятно, зачем нужно в construction вторая часть выражения\n this.selectedOption = this.options.find(option => option.value === value) ?? value as CuiOption;\n\n this.changeDetectorRef.markForCheck();\n }\n\n public registerOnChange(fn: CuiOnChange<unknown>): void {\n this.onChange = fn;\n }\n\n public registerOnTouched(fn: CuiOnTouched): void {\n this.onTouched = fn;\n }\n\n public ngOnInit(): void {\n this.initClickOutsideSubscription();\n }\n\n public ngOnDestroy(): void {\n this.clearViewContainerRef();\n }\n\n public setDisabledState(isDisabled: boolean): void {\n this.isDisabled = isDisabled;\n\n this.changeDetectorRef.markForCheck();\n }\n\n protected onSelect(event: Event, option: CuiOption): void {\n event.stopPropagation();\n\n if (option.isDisabled) {\n return\n }\n\n this.value = option.value;\n this.selectedOption = option;\n\n this.onChange(this.value);\n this.onSwitch();\n this.onTouched();\n this.changeDetectorRef.markForCheck();\n }\n\n protected onSwitch(): void {\n if (!this.options.length && !this.defaultOptionText) {\n return;\n }\n\n if (!this.isOpened) {\n this.open();\n\n return;\n }\n\n this.close();\n }\n\n protected onClose(): void {\n this.close();\n }\n\n @HostListener('window:resize')\n protected onWindowResize(): void {\n this.button.nativeElement.blur();\n this.close();\n }\n\n private initClickOutsideSubscription(): void {\n this.cuiClickOutsideDirective.cuiClickOutside\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => {\n if (this.isOpened) {\n this.onTouched();\n }\n\n this.close();\n });\n }\n\n private open(): void {\n this.isOpened = true;\n\n const rootElement = this.document.querySelector(CUI_ROOT_SELECTOR)!;\n const {\n top: elementRectTop,\n left: elementRectLeft,\n bottom: elementRectBottom\n } = this.element.getBoundingClientRect();\n const distanceToBottom = this.document.documentElement.clientHeight\n - (elementRectBottom + this.SPACE_BETWEEN_BUTTON_AND_OPTIONS);\n const embeddedViewRef = this.viewContainerRef.createEmbeddedView(this.optionsWrapper);\n const node = embeddedViewRef.rootNodes[0];\n const nodeStyles = node.style;\n\n this.isOptionsListAbove = distanceToBottom < this.getOptionsListHeightContainer.nativeElement.offsetHeight;\n\n embeddedViewRef.detectChanges();\n\n nodeStyles.width = this.element.offsetWidth + 'px';\n nodeStyles.left = window.scrollX + elementRectLeft + 'px';\n\n if (this.isOptionsListAbove) {\n nodeStyles.top = window.scrollY + elementRectTop\n - this.getOptionsListHeightContainer.nativeElement.offsetHeight\n - this.SPACE_BETWEEN_BUTTON_AND_OPTIONS\n + 'px';\n } else {\n nodeStyles.top = window.scrollY + elementRectBottom + this.SPACE_BETWEEN_BUTTON_AND_OPTIONS + 'px';\n }\n\n rootElement.appendChild(this.viewContainerRef.createEmbeddedView(this.backdrop).rootNodes[0]);\n rootElement.appendChild(embeddedViewRef.rootNodes[0]);\n }\n\n private close(): void {\n this.isOpened = false;\n\n this.clearViewContainerRef();\n }\n\n private clearViewContainerRef(): void {\n this.viewContainerRef.clear();\n }\n}\n","<button\n #button\n type=\"button\"\n [attr.id]=\"id\"\n [attr.data-size]=\"size\"\n [disabled]=\"isDisabled\"\n class=\"c-button\"\n [class.c-button_active]=\"isOpened\"\n [class.c-button_with-error]=\"isError\"\n (click)=\"onSwitch()\"\n>\n <ng-container *ngIf=\"selectedOption; else placeholderTemplate\">\n {{ selectedOption.label }}\n </ng-container>\n <ng-template #placeholderTemplate>\n <span class=\"c-placeholder\">{{ placeholder }}</span>\n </ng-template>\n <cui-svg\n icon=\"cuiIconChevronDown\"\n color=\"var(--cui-base-500)\"\n />\n</button>\n<ng-template #backdrop>\n <div class=\"c-backdrop\"></div>\n</ng-template>\n<ng-template #optionsWrapper>\n <div\n cuiFocusTrap\n class=\"c-options__wrapper\"\n [class.c-options__wrapper_top]=\"isOptionsListAbove\"\n >\n <ng-container *ngTemplateOutlet=\"optionsList\"/>\n </div>\n</ng-template>\n<div\n #getOptionsListHeightContainer\n class=\"c-get-options-list-height-container\"\n>\n <ng-container *ngTemplateOutlet=\"optionsList\"/>\n</div>\n<ng-template #optionsList>\n <ul\n class=\"c-options\"\n [class.c-options_top]=\"isOptionsListAbove\"\n >\n <ng-container *ngIf=\"options.length; else empty\">\n <li *ngFor=\"let option of options; trackBy: trackByFn\">\n <button\n type=\"button\"\n class=\"c-option-button\"\n [class.c-option-button_selected]=\"selectedOption === option\"\n [disabled]=\"option.isDisabled\"\n (click)=\"onSelect($event, option)\"\n >\n <span>{{ option.label }}</span>\n <cui-svg\n *ngIf=\"selectedOption === option\"\n icon=\"cuiIconCheckSm\"\n color=\"var(--cui-info)\"\n class=\"c-option-button__icon\"\n />\n </button>\n </li>\n </ng-container>\n <ng-template #empty>\n <li *ngIf=\"defaultOptionText\">\n <button\n type=\"button\"\n class=\"c-option-button\"\n (click)=\"onClose()\"\n >\n {{ defaultOptionText }}\n </button>\n </li>\n </ng-template>\n </ul>\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { CuiSelectComponent } from './select.component';\nimport { CuiSvgModule } from '../svg';\nimport { CuiTextFieldControllerModule } from '../../directives';\nimport { CuiFocusTrapDirective } from '@cuby-ui/cdk';\n\n@NgModule({\n imports: [\n CommonModule,\n CuiSvgModule,\n CuiFocusTrapDirective\n ],\n declarations: [CuiSelectComponent],\n exports: [\n CuiSelectComponent,\n CuiTextFieldControllerModule\n ]\n})\nexport class CuiSelectModule {\n}\n","import { ChangeDetectionStrategy, Component, ElementRef, HostListener, inject } from '@angular/core';\n\nexport const CUI_TAB_ACTIVATE = 'cui-tab-activate';\n\n@Component({\n selector: 'button[cuiTab]',\n templateUrl: './tab.template.html',\n styleUrls: ['./tab.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiTabComponent {\n protected readonly element = inject(ElementRef).nativeElement as HTMLButtonElement;\n\n @HostListener('click')\n protected onClick(): void {\n this.element.dispatchEvent(new CustomEvent(CUI_TAB_ACTIVATE, { bubbles: true }));\n }\n}\n","<ng-content />\n","import type { AfterViewChecked } from '@angular/core';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n EventEmitter,\n HostListener,\n inject,\n Input,\n Output\n} from '@angular/core';\n\nimport { CUI_TAB_ACTIVATE } from './tab';\n\n@Component({\n selector: 'cui-tabs',\n templateUrl: './tabs.template.html',\n styleUrls: ['./tabs.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiTabsComponent implements AfterViewChecked {\n private readonly element = inject(ElementRef).nativeElement as HTMLElement;\n\n private readonly activeElementClass = '_active';\n\n protected get tabs(): readonly HTMLElement[] {\n return Array.from(this.element.querySelectorAll<HTMLElement>('[cuiTab]'));\n }\n\n public get activeElement(): HTMLElement | null {\n return this.tabs[this.activeItemIndex] || null;\n }\n\n public ngAfterViewChecked(): void {\n this.changeActiveItem();\n }\n\n @Input()\n public activeItemIndex = 0;\n\n @Output()\n public readonly activeItemIndexChange = new EventEmitter<number>();\n\n @HostListener(CUI_TAB_ACTIVATE, ['$event'])\n protected onActivate(event: CustomEvent): void {\n event.stopPropagation();\n\n const index = this.tabs.findIndex((tab) => tab === event.target);\n\n if (index === this.activeItemIndex) {\n return;\n }\n\n this.activeItemIndexChange.emit(index);\n this.activeItemIndex = index;\n }\n\n private changeActiveItem(): void {\n this.tabs.forEach(nativeElement => {\n const active = nativeElement === this.activeElement;\n\n nativeElement.classList.toggle(this.activeElementClass, active);\n });\n }\n}\n","<ng-content select=\"[cuiTab]\" />\n","import { NgModule } from '@angular/core';\n\nimport { CuiTabsComponent } from './tabs.component';\nimport { CuiTabComponent } from './tab';\n\n@NgModule({\n imports: [],\n declarations: [CuiTabsComponent, CuiTabComponent],\n exports: [CuiTabsComponent, CuiTabComponent]\n})\nexport class CuiTabsModule {\n}\n","import { ChangeDetectionStrategy, Component, HostBinding, inject, Input } from '@angular/core';\nimport { CuiAutoResizingDirective } from '@cuby-ui/cdk';\n\nimport { CUI_TEXT_FIELD_CONTROLLER, CUI_TEXT_FILED_CONTROLLER_PROVIDER } from '../../directives';\n\n@Component({\n selector: 'textarea[cuiTextarea]',\n template: '',\n styleUrls: ['./textarea.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [CUI_TEXT_FILED_CONTROLLER_PROVIDER],\n hostDirectives: [CuiAutoResizingDirective]\n})\nexport class CuiTextareaComponent {\n private readonly cuiTextFieldController = inject(CUI_TEXT_FIELD_CONTROLLER);\n\n @Input()\n @HostBinding('rows')\n public rows = 4;\n\n @Input()\n @HostBinding('class._no-borders-and-paddings')\n public noBordersAndPaddings = false;\n\n @HostBinding('class._with-error')\n protected get isError(): boolean {\n return this.cuiTextFieldController.isError;\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { CuiTextareaComponent } from './textarea.component';\n\n@NgModule({\n declarations: [CuiTextareaComponent],\n exports: [CuiTextareaComponent]\n})\nexport class CuiTextareaModule {\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'input[type=\"checkbox\"][cuiToggle]',\n template: '',\n styleUrls: ['./toggle.style.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class CuiToggleComponent {\n}\n","import { NgModule } from '@angular/core';\n\nimport { CuiToggleComponent } from './toggle.component';\n\n@NgModule({\n declarations: [CuiToggleComponent],\n exports: [CuiToggleComponent]\n})\nexport class CuiToggleModule {\n}\n","export function cuiRemoveSpaces(value: string): string {\n return value.replace(/\\s+/g, '');\n}\n","export function cuiReplace(value: string, search: string, replace: string): string {\n const regex = new RegExp(search.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\$&'), 'g');\n\n return value.replace(regex, replace);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2.CuiSvgComponent","i2.CuiButtonComponent","i2.CuiNotificationComponent","i2","i3.CuiSvgComponent","i4.CuiButtonComponent","i1.CuiDialogsComponent","i2.CuiAlertsComponent","i3.CuiButtonComponent","i1.CuiSvgComponent","i4.CuiSvgComponent","i1"],"mappings":"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"}
|