@pleione-lab/widgets 1.0.10 → 1.0.14

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":"pleione-lab-widgets.mjs","sources":["../../../projects/widgets/src/lib/taiga-ui/login-input.widget.ts","../../../projects/widgets/src/lib/taiga-ui/password-input.widget.ts","../../../projects/widgets/src/lib/taiga-ui/simple-button.widget.ts","../../../projects/widgets/src/lib/taiga-ui/email-input.widget.ts","../../../projects/widgets/src/lib/taiga-ui/validation.ts","../../../projects/widgets/src/lib/taiga-ui/simple-select.widget.ts","../../../projects/widgets/src/lib/taiga-ui/simple-combo.widget.ts","../../../projects/widgets/src/lib/taiga-ui/simple-number-input.widget.ts","../../../projects/widgets/src/lib/taiga-ui/simple-input.widget.ts","../../../projects/widgets/src/lib/taiga-ui/simple-textarea.widget.ts","../../../projects/widgets/src/lib/taiga-ui/simple-copy-input.widget.ts","../../../projects/widgets/src/lib/constants.ts","../../../projects/widgets/src/lib/taiga-ui/simple-control.ts","../../../projects/widgets/src/lib/taiga-ui/simple-phone-input.widget.ts","../../../projects/widgets/src/lib/taiga-ui/simple-password-input.widget.ts","../../../projects/widgets/src/lib/taiga-ui/simple-actions.widget.ts","../../../projects/widgets/src/lib/layouts/simple-flex.layout.ts","../../../projects/widgets/src/lib/layouts/simple-grid.layout.ts","../../../projects/widgets/src/lib/taiga-ui/simple-date-input.widget.ts","../../../projects/widgets/src/lib/taiga-ui/simple-date-range-input.widget.ts","../../../projects/widgets/src/lib/taiga-ui/simple-pagination.widget.ts","../../../projects/widgets/src/lib/taiga-ui/notification.widget.ts","../../../projects/widgets/src/lib/taiga-ui/simple-calendar.widget.ts","../../../projects/widgets/src/lib/dialog/name-description/name-description.component.ts","../../../projects/widgets/src/lib/dialog/name-description/name-description.dialog.ts","../../../projects/widgets/src/lib/dialog/name/name.component.ts","../../../projects/widgets/src/lib/dialog/name/name.dialog.ts","../../../projects/widgets/src/lib/overlay/reload-overlay.widget.ts","../../../projects/widgets/src/public-api.ts","../../../projects/widgets/src/pleione-lab-widgets.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n effect,\n output,\n} from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport {\n FormControl,\n FormsModule,\n ReactiveFormsModule,\n Validators,\n} from '@angular/forms';\nimport {\n TuiTextfieldComponent,\n TuiIcon,\n TuiLabel,\n TuiInput,\n} from '@taiga-ui/core';\n\n@Component({\n selector: 'keit-login-input',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n TuiTextfieldComponent,\n TuiInput,\n TuiLabel,\n TuiIcon,\n ],\n template: `\n <h3 class=\"tui-form__header tui-form__header_margin-top_none\">Логин</h3>\n <div class=\"tui-form__row\">\n <tui-textfield>\n <label tuiLabel>Введите логин</label>\n <input\n placeholder=\"Введите логин\"\n tuiInput\n [formControl]=\"loginCtrl\"\n autocomplete=\"off\"\n />\n <tui-icon icon=\"@tui.user\" />\n </tui-textfield>\n\n @if (loginCtrl.invalid && loginCtrl.dirty && loginCtrl.touched) {\n <div class=\"alert\">\n @if (loginCtrl.hasError('required')) {\n Требуется ввести логин.\n }\n @if (loginCtrl.hasError('minlength')) {\n Должен быть хотя бы 3 символов\n }\n </div>\n }\n </div>\n `,\n styles: `\n .alert {\n color: var(--tui-status-negative);\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LoginInputWidget {\n protected readonly loginCtrl = new FormControl<string>('', [\n Validators.required,\n Validators.minLength(3),\n ]);\n\n private readonly login$$ = toSignal(this.loginCtrl.valueChanges);\n\n readonly login = output<string | null | undefined>();\n readonly loginNotReady = output<boolean>();\n\n constructor() {\n effect(() => {\n this.login.emit(this.login$$());\n\n this.loginNotReady.emit(\n this.loginCtrl.invalid &&\n this.loginCtrl.dirty &&\n this.loginCtrl.touched,\n );\n });\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n effect,\n output,\n} from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport {\n FormControl,\n FormsModule,\n ReactiveFormsModule,\n Validators,\n} from '@angular/forms';\nimport {\n TuiTextfieldComponent,\n TuiIcon,\n TuiLabel,\n TuiInput,\n} from '@taiga-ui/core';\n\n@Component({\n selector: 'keit-password-input',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n TuiTextfieldComponent,\n TuiInput,\n TuiLabel,\n TuiIcon,\n ],\n template: `\n <h3 class=\"tui-form__header tui-form__header_margin-top_none\">\n Пароль\n </h3>\n <div class=\"tui-form__row\">\n <tui-textfield>\n <label tuiLabel>Введите пароль</label>\n <input\n placeholder=\"Введите пароль\"\n tuiInput\n type=\"password\"\n [formControl]=\"passwordCtrl\"\n class=\"tui-space_top-2\"\n autocomplete=\"off\"\n />\n <tui-icon tuiPassword />\n </tui-textfield>\n\n @if (\n passwordCtrl.invalid &&\n passwordCtrl.dirty &&\n passwordCtrl.touched\n ) {\n <div class=\"alert\">\n @if (passwordCtrl.hasError('required')) {\n Требуется ввести пароль\n }\n @if (passwordCtrl.hasError('minlength')) {\n Должен быть хотя бы 3 символа\n }\n </div>\n }\n </div>\n `,\n styles: `\n .alert {\n color: var(--tui-status-negative);\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class PasswordInputWidget {\n protected readonly passwordCtrl = new FormControl<string>('', [\n Validators.required,\n Validators.minLength(3),\n ]);\n\n private readonly password$$ = toSignal(this.passwordCtrl.valueChanges);\n\n readonly password = output<string | null | undefined>();\n readonly passwordNotReady = output<boolean>();\n\n constructor() {\n effect(() => {\n this.password.emit(this.password$$());\n\n this.passwordNotReady.emit(\n this.passwordCtrl.invalid &&\n this.passwordCtrl.dirty &&\n this.passwordCtrl.touched,\n );\n });\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n input,\n output,\n} from '@angular/core';\nimport { TuiButton, TuiIcon } from '@taiga-ui/core';\n\n@Component({\n selector: 'keit-simple-button',\n imports: [TuiIcon, TuiButton],\n template: `\n <!-- TODO: (Taiga UI migration) [appearance] binding uses a dynamic expression. If it can produce \"error\"/\"success\"/\"glass\", replace with \"negative\"/\"positive\"/\"secondary-grayscale\" -->\n <button\n tuiButton\n [appearance]=\"appearance()\"\n type=\"button\"\n [size]=\"size()\"\n (click)=\"action.emit()\"\n [disabled]=\"disabled()\"\n [attr.aria-label]=\"ariaLabel() || caption() || null\"\n >\n @if (icon()) {\n <tui-icon [icon]=\"icon() ?? ''\" />\n }\n {{ caption() }}\n @if (iconRight()) {\n <tui-icon [icon]=\"iconRight() ?? ''\" />\n }\n </button>\n `,\n styles: ``,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {},\n})\nexport class SimpleButtonWidget {\n readonly icon = input<string>();\n readonly iconRight = input<string>();\n readonly disabled = input<boolean>();\n readonly caption = input<string>();\n readonly ariaLabel = input<string>();\n readonly action = output<void>();\n readonly size = input<'xs' | 's' | 'm' | 'l'>('m');\n readonly appearance = input<'primary' | 'secondary' | 'flat' | 'accent'>(\n 'primary',\n );\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n effect,\n output,\n} from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport {\n FormControl,\n FormsModule,\n ReactiveFormsModule,\n Validators,\n} from '@angular/forms';\nimport { TuiTextfieldComponent, TuiLabel, TuiInput } from '@taiga-ui/core';\n\n@Component({\n selector: 'keit-email-input',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n TuiTextfieldComponent,\n TuiInput,\n TuiLabel,\n ],\n template: `\n <h3 class=\"tui-form__header tui-form__header_margin-top_none\">Email</h3>\n <div class=\"tui-form__row\">\n <tui-textfield>\n <label tuiLabel>Введите email</label>\n <input\n type=\"email\"\n placeholder=\"Введите email\"\n tuiInput\n [formControl]=\"emailCtrl\"\n autocomplete=\"off\"\n />\n </tui-textfield>\n\n @if (emailCtrl.invalid && emailCtrl.dirty && emailCtrl.touched) {\n <div class=\"alert\">\n @if (emailCtrl.hasError('required')) {\n Требуется ввести email.\n }\n @if (emailCtrl.hasError('minlength')) {\n Должен быть хотя бы 3 символов\n }\n @if (emailCtrl.hasError('email')) {\n Формат почты задан неверно\n }\n </div>\n }\n </div>\n `,\n styles: `\n .alert {\n color: var(--tui-status-negative);\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EmailInputWidget {\n protected readonly emailCtrl = new FormControl<string>('', [\n Validators.required,\n Validators.minLength(3),\n Validators.email,\n ]);\n\n private readonly email$$ = toSignal(this.emailCtrl.valueChanges);\n\n readonly email = output<string | null | undefined>();\n readonly emailNotReady = output<boolean>();\n\n constructor() {\n effect(() => {\n this.email.emit(this.email$$());\n\n this.emailNotReady.emit(\n this.emailCtrl.invalid &&\n this.emailCtrl.dirty &&\n this.emailCtrl.touched,\n );\n });\n }\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { FormControl, ReactiveFormsModule } from '@angular/forms';\nimport { Field } from '@angular/forms/signals';\nimport { TuiError } from '@taiga-ui/core';\n\n@Component({\n selector: 'keit-field-validation',\n imports: [ReactiveFormsModule, TuiError],\n template: `\n @let controlValue = control();\n\n @if (controlValue) {\n <tui-error [formControl]=\"controlValue\" />\n }\n `,\n styles: `\n :host {\n display: block;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class FieldValidation {\n readonly control = input<FormControl>();\n readonly field = input<Field<unknown>>();\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { TuiStringHandler } from '@taiga-ui/cdk/types';\nimport { TuiIcon, TuiInput } from '@taiga-ui/core';\nimport {\n TuiChevron,\n TuiSelect,\n TuiDataListWrapperComponent,\n TuiDataListWrapper,\n TuiTooltip,\n} from '@taiga-ui/kit';\nimport { FieldValidation } from './validation';\nimport { KeitControl } from './simple-control';\n\nexport interface SimpleSelectItem {\n id: number;\n name: string;\n}\n\n@Component({\n selector: 'keit-simple-select-widget',\n imports: [\n ReactiveFormsModule,\n TuiChevron,\n TuiDataListWrapper,\n TuiSelect,\n TuiInput,\n TuiDataListWrapperComponent,\n FieldValidation,\n TuiIcon,\n TuiTooltip,\n ],\n template: `\n <tui-textfield\n tuiChevron\n [stringify]=\"stringify\"\n [tuiTextfieldSize]=\"size()\"\n [tuiTextfieldCleaner]=\"cleaner() ?? false\"\n >\n <input\n tuiSelect\n [formControl]=\"control()\"\n [placeholder]=\"placeholder()\"\n />\n\n <tui-data-list-wrapper *tuiDropdown new [items]=\"items() ?? []\" />\n\n @if (hint()) {\n <tui-icon [tuiTooltip]=\"hint()\" tuiHintDirection=\"top-end\" />\n }\n </tui-textfield>\n\n <keit-field-validation [control]=\"control()\" />\n `,\n styles: ``,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimpleSelectWidget {\n readonly placeholder = input.required<string>();\n readonly control = input.required<KeitControl<SimpleSelectItem>>();\n readonly items = input<SimpleSelectItem[]>();\n readonly size = input<'s' | 'm' | 'l'>('m');\n readonly hint = input<string>('');\n readonly cleaner = input<boolean>();\n\n protected stringify: TuiStringHandler<SimpleSelectItem> = (\n item2: SimpleSelectItem,\n ) => {\n return this.items()?.find((item) => item.id === item2.id)?.name ?? '';\n };\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n DestroyRef,\n ElementRef,\n inject,\n input,\n OnInit,\n output,\n signal,\n TemplateRef,\n ViewChild,\n WritableSignal,\n} from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { KeitControl } from './simple-control';\nimport { TuiStringHandler } from '@taiga-ui/cdk/types';\nimport {\n TuiIcon,\n TuiLoader,\n TuiInput,\n TuiFilterByInputPipe,\n} from '@taiga-ui/core';\nimport {\n TuiChevron,\n TuiDataListWrapperComponent,\n TuiDataListWrapper,\n TuiTooltip,\n TuiComboBox,\n} from '@taiga-ui/kit';\nimport {\n catchError,\n debounceTime,\n filter,\n Observable,\n of,\n Subject,\n switchMap,\n tap,\n} from 'rxjs';\n\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { SimpleButtonWidget } from './simple-button.widget';\nimport { FieldValidation } from './validation';\n\nexport interface SimpleItem {\n id: number;\n name: string;\n payload?: any;\n}\n\n@Component({\n selector: 'keit-simple-combo-widget',\n imports: [\n ReactiveFormsModule,\n TuiChevron,\n TuiDataListWrapper,\n TuiComboBox,\n TuiInput,\n TuiDataListWrapperComponent,\n TuiIcon,\n TuiTooltip,\n TuiFilterByInputPipe,\n TuiLoader,\n SimpleButtonWidget,\n FieldValidation,\n ],\n template: `\n <tui-textfield\n tuiChevron\n [stringify]=\"stringify\"\n [tuiTextfieldSize]=\"size()\"\n [tuiTextfieldCleaner]=\"cleaner() ?? false\"\n >\n <input\n #inputRef\n tuiComboBox\n [formControl]=\"control()\"\n [placeholder]=\"placeholder()\"\n (input)=\"\n responseReady.set(false);\n search$.next($any($event.target).value)\n \"\n />\n\n <ng-template #emptyTemplate>\n <div class=\"empty-content\">\n <div class=\"no-found-icon\">Ничего не нашел</div>\n <keit-simple-button\n icon=\"@tui.plus\"\n caption=\"Создать\"\n size=\"s\"\n (action)=\"onAdd()\"\n />\n </div>\n </ng-template>\n\n <tui-data-list-wrapper\n *tuiDropdown\n new\n [emptyContent]=\"\n loading()\n ? 'Загрузка...'\n : inputRef.value.length < 2\n ? 'Введите хотя бы 2 символа'\n : responseReady()\n ? emptyTemplate\n : ''\n \"\n [items]=\"\n inputRef.value.length < 2\n ? []\n : (items() | tuiFilterByInput)\n \"\n />\n\n @if (hint()) {\n <tui-icon [tuiTooltip]=\"hint()\" tuiHintDirection=\"top-end\" />\n }\n @if (items()) {\n <tui-loader [loading]=\"loading()\" />\n }\n\n <keit-field-validation [control]=\"control()\" />\n </tui-textfield>\n `,\n styles: `\n .empty-content {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 12px;\n pointer-events: auto !important;\n }\n\n .no-found-icon {\n font-size: 12px;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimpleComboWidget implements OnInit {\n private readonly destroyRef = inject(DestroyRef);\n\n readonly search$ = new Subject<string>();\n\n readonly placeholder = input.required<string>();\n readonly control = input.required<KeitControl<SimpleItem>>();\n readonly size = input<'s' | 'm' | 'l'>('m');\n readonly hint = input<string>('');\n readonly cleaner = input<boolean>();\n\n readonly loading: WritableSignal<boolean> = signal(false);\n readonly responseReady: WritableSignal<boolean> = signal(false);\n\n readonly add = output<string>();\n\n // eslint-disable-next-line @angular-eslint/prefer-signals\n @ViewChild('emptyTemplate', { read: TemplateRef })\n emptyTemplate!: TemplateRef<unknown>;\n\n // eslint-disable-next-line @angular-eslint/prefer-signals\n @ViewChild('inputRef', { read: ElementRef })\n private inputRef!: ElementRef<HTMLInputElement>;\n\n private readonly searchedItems: WritableSignal<SimpleItem[]> = signal([]);\n\n protected readonly items = computed(() => {\n const value = this.control().value;\n const searched = this.searchedItems();\n if (!value) {\n return searched;\n }\n // Проверяем, есть ли value уже в searched по id\n const exists = searched.some((item) => item.id === value.id);\n if (exists) {\n return searched;\n }\n return [...searched, value];\n });\n\n readonly backendRequest =\n input.required<(search: string) => Observable<SimpleItem[]>>();\n\n protected stringify: TuiStringHandler<SimpleItem> = (item2: SimpleItem) => {\n const items = this.items();\n const found = items?.find((item) => item.id === item2.id);\n return found?.name ?? '';\n };\n\n ngOnInit(): void {\n this.search$\n .pipe(\n filter((str) => str.length >= 2),\n debounceTime(500),\n tap(() => this.loading.set(true)),\n switchMap((str) => this.backendRequest()(str)),\n catchError((error) => {\n this.loading.set(false);\n this.responseReady.set(true);\n return of([]);\n }),\n tap(() => this.loading.set(false)),\n tap(() => this.responseReady.set(true)),\n takeUntilDestroyed(this.destroyRef),\n )\n .subscribe((value) => {\n this.searchedItems.set(value);\n });\n }\n\n protected onAdd(): void {\n const value = this.inputRef?.nativeElement?.value?.trim() || '';\n this.add.emit(value);\n }\n\n public addItem(item: SimpleItem): void {\n const current = this.searchedItems();\n if (current) {\n this.searchedItems.set([...current, item]);\n } else {\n this.searchedItems.set([item]);\n }\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n input,\n output,\n} from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { KeitControl } from './simple-control';\nimport { TuiHint, TuiIcon, TuiLabel, TuiInput } from '@taiga-ui/core';\nimport { TuiInputNumber, TuiTooltip } from '@taiga-ui/kit';\nimport { FieldValidation } from './validation';\n\n@Component({\n selector: 'keit-simple-number-input-widget',\n imports: [\n ReactiveFormsModule,\n TuiInput,\n TuiInputNumber,\n TuiLabel,\n FieldValidation,\n TuiHint,\n TuiTooltip,\n TuiIcon,\n ],\n template: `\n <tui-textfield\n [tuiTextfieldSize]=\"size()\"\n [tuiTextfieldCleaner]=\"cleaner() ?? false\"\n >\n <label tuiLabel>{{ placeholder() }}</label>\n\n @if (step()) {\n <input\n tuiInputNumber\n [placeholder]=\"sample()\"\n [formControl]=\"control()\"\n [min]=\"min()\"\n [max]=\"max()\"\n [step]=\"step() ?? 1\"\n [postfix]=\"postfix() ?? ''\"\n (keydown.enter)=\"enter.emit()\"\n />\n } @else {\n <input\n tuiInputNumber\n [placeholder]=\"sample()\"\n [formControl]=\"control()\"\n [min]=\"min()\"\n [max]=\"max()\"\n [postfix]=\"postfix() ?? ''\"\n (keydown.enter)=\"enter.emit()\"\n />\n }\n\n @if (hint()) {\n <tui-icon\n [tuiHintDirection]=\"'top-end'\"\n [tuiTooltip]=\"hint() ?? ''\"\n />\n }\n </tui-textfield>\n\n <keit-field-validation [control]=\"control()\" />\n `,\n styles: `\n :host {\n display: block;\n flex-grow: 1;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimpleNumberInputWidget {\n readonly placeholder = input.required<string>();\n readonly sample = input<string>();\n readonly hint = input<string>();\n readonly control = input.required<KeitControl<number>>();\n readonly min = input.required<number>();\n readonly max = input.required<number>();\n readonly size = input<'s' | 'm' | 'l'>('m');\n readonly postfix = input<string>();\n readonly cleaner = input<boolean>();\n readonly step = input<number>();\n\n readonly enter = output<void>();\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n input,\n output,\n} from '@angular/core';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { TuiLabel, TuiIcon, TuiInput } from '@taiga-ui/core';\nimport { FieldValidation } from './validation';\nimport { TuiTooltip } from '@taiga-ui/kit';\nimport { KeitControl } from './simple-control';\n\n@Component({\n selector: 'keit-simple-input-widget',\n imports: [\n ReactiveFormsModule,\n FormsModule,\n TuiInput,\n TuiLabel,\n FieldValidation,\n TuiIcon,\n TuiTooltip,\n ],\n template: `\n <tui-textfield\n [tuiTextfieldSize]=\"size()\"\n [tuiTextfieldCleaner]=\"cleaner() ?? false\"\n >\n @if (placeholder()) {\n <label tuiLabel>{{ placeholder() }}</label>\n }\n <input\n tuiInput\n [placeholder]=\"sample()\"\n [formControl]=\"control()\"\n [readOnly]=\"readonly()\"\n [attr.autofocus]=\"focused()\"\n [focused]=\"focused()\"\n autocomplete=\"off\"\n (keydown.enter)=\"enter.emit()\"\n />\n\n @if (hasEnter()) {\n <tui-icon\n icon=\"@tui.corner-down-left\"\n (click)=\"enter.emit()\"\n class=\"icon\"\n />\n }\n\n @if (iconRight()) {\n <tui-icon [icon]=\"iconRight()\" />\n }\n\n @if (hint()) {\n <tui-icon [tuiTooltip]=\"hint()\" tuiHintDirection=\"top-end\" />\n }\n\n <keit-field-validation [control]=\"control()\" />\n </tui-textfield>\n `,\n styles: `\n :host {\n display: block;\n }\n\n .icon {\n cursor: pointer;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimpleInputWidget {\n readonly placeholder = input<string>();\n readonly sample = input<string>('Введите...');\n readonly control = input.required<KeitControl<string>>();\n readonly size = input<'s' | 'm' | 'l'>('m');\n readonly readonly = input<boolean>(false);\n readonly hint = input<string>('');\n readonly iconRight = input<string>('');\n readonly cleaner = input<boolean>();\n readonly hasEnter = input<boolean>();\n readonly focused = input<boolean | null>(null);\n\n readonly enter = output<void>();\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { TuiLabel, TuiInput } from '@taiga-ui/core';\nimport { TuiTextarea } from '@taiga-ui/kit';\nimport { FieldValidation } from './validation';\nimport { KeitControl } from './simple-control';\n\n@Component({\n selector: 'keit-simple-textarea',\n imports: [\n ReactiveFormsModule,\n TuiTextarea,\n TuiLabel,\n TuiInput,\n FieldValidation,\n ],\n template: `\n <tui-textfield\n [tuiTextfieldSize]=\"size()\"\n [tuiTextfieldCleaner]=\"cleaner() ?? false\"\n >\n <label tuiLabel>{{ placeholder() }}</label>\n <textarea\n [placeholder]=\"sample()\"\n [formControl]=\"control()\"\n [min]=\"3\"\n [max]=\"6\"\n [limit]=\"limit() ?? 1000\"\n tuiTextarea\n ></textarea>\n </tui-textfield>\n\n <keit-field-validation [control]=\"control()\" />\n `,\n styles: `\n :host {\n display: block;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimpleTextareaWidget {\n readonly placeholder = input.required<string>();\n readonly sample = input<string>();\n readonly control = input.required<KeitControl<string>>();\n readonly limit = input<number>();\n readonly size = input<'s' | 'm' | 'l'>('m');\n readonly cleaner = input<boolean>();\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { TuiIcon, TuiLabel, TuiInput } from '@taiga-ui/core';\nimport { KeitControl } from './simple-control';\nimport { TuiCopy } from '@taiga-ui/kit';\n\n@Component({\n selector: 'keit-simple-copy-input-widget',\n imports: [\n ReactiveFormsModule,\n FormsModule,\n TuiInput,\n TuiLabel,\n TuiIcon,\n TuiCopy,\n ],\n template: `\n <tui-textfield\n [tuiTextfieldCleaner]=\"false\"\n [tuiTextfieldSize]=\"size()\"\n >\n <label tuiLabel>{{ name() }}</label>\n <input\n tuiInput\n [placeholder]=\"placeholder()\"\n [formControl]=\"control()\"\n />\n <tui-icon tuiCopy />\n </tui-textfield>\n `,\n styles: `\n :host {\n display: block;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimpleCopyInputWidget {\n readonly name = input<string>();\n readonly placeholder = input<string>('');\n readonly control = input.required<KeitControl<string>>();\n readonly size = input<'s' | 'm' | 'l'>('m');\n}\n","import { tuiValidationErrorsProvider } from '@taiga-ui/core';\n\nexport const PATTERN_ONLY_CHARS = /^[a-zA-Zа-яёА-ЯЁ]+$/;\nexport const PATTERN_CHARS_WITH_SPACE = /^[a-zA-Zа-яёА-ЯЁ\\s]+$/;\nexport const PATTERN_ONLY_DIGITS = /^[0-9]+$/;\nexport const PATTERN_ONLY_DIGITS_CHARS = /^[a-zA-Zа-яёА-ЯЁ0-9]+$/;\nexport const PATTERN_ONLY_DIGITS_CHARS_TIRE = /^[a-zA-Zа-яёА-ЯЁ0-9\\-\\s]+$/;\nexport const PATTERN_REF_CATEGORIES = /^[a-zA-Zа-яёА-ЯЁ0-9\\-\\'\\\" .]+$/;\nexport const PATTERN_PHONE = /^\\+7\\d{10}$/;\n\nexport const validatorsProvider = tuiValidationErrorsProvider({\n required: 'Требуется ввести',\n maxlength: ({ requiredLength }: { requiredLength: string }) =>\n `Максимальная длина — ${requiredLength}`,\n minlength: ({ requiredLength }: { requiredLength: string }) =>\n `Минимальная длина — ${requiredLength}`,\n email: 'Введите корректный email',\n pattern: ({ requiredPattern }: { requiredPattern: string }) => {\n // Remove leading and trailing slashes from the pattern\n const pattern = requiredPattern.replace(/^\\/|\\/$/g, '');\n\n // Helper to compare regex patterns by their source\n const isPattern = (regex: RegExp) => {\n // Compare source without anchors for flexibility\n const source = regex.source.replace(/^\\^|\\$$/g, '');\n const patternWithoutAnchors = pattern.replace(/^\\^|\\$$/g, '');\n\n // Normalize backslashes: reduce double backslashes to single\n const normalize = (s: string) => s.replace(/\\\\\\\\/g, '\\\\');\n return normalize(source) === normalize(patternWithoutAnchors);\n };\n\n if (isPattern(PATTERN_ONLY_CHARS)) {\n return 'Должны быть только буквы';\n }\n if (isPattern(PATTERN_CHARS_WITH_SPACE)) {\n return 'Должны быть только буквы и пробел';\n }\n if (isPattern(PATTERN_ONLY_DIGITS)) {\n return 'Должны быть только цифры';\n }\n if (isPattern(PATTERN_ONLY_DIGITS_CHARS)) {\n return 'Только цифры и буквы';\n }\n if (isPattern(PATTERN_ONLY_DIGITS_CHARS_TIRE)) {\n return 'Только цифры, буквы, тире';\n }\n if (isPattern(PATTERN_REF_CATEGORIES)) {\n return 'Недопустимый символ';\n }\n if (isPattern(PATTERN_PHONE)) {\n return 'Введите корректный номер телефона';\n }\n\n return 'Некорректный формат';\n },\n});\n","import { FormControl, Validators } from '@angular/forms';\nimport {\n PATTERN_ONLY_CHARS,\n PATTERN_CHARS_WITH_SPACE,\n PATTERN_ONLY_DIGITS,\n PATTERN_ONLY_DIGITS_CHARS,\n PATTERN_ONLY_DIGITS_CHARS_TIRE,\n PATTERN_REF_CATEGORIES,\n PATTERN_PHONE,\n} from '../constants';\n\nexport class KeitControl<T> extends FormControl {\n constructor(defaultValue: T, blurable: boolean) {\n super(defaultValue, { updateOn: blurable ? 'blur' : 'change' });\n }\n\n static create<T>(defaultValue: T, blurable: boolean = false) {\n return new KeitControl(defaultValue, blurable);\n }\n\n required() {\n this.addValidators(Validators.required);\n return this;\n }\n\n min(m: number) {\n this.addValidators(Validators.min(m));\n return this;\n }\n\n max(m: number) {\n this.addValidators(Validators.max(m));\n return this;\n }\n\n minLength(m: number) {\n this.addValidators(Validators.minLength(m));\n return this;\n }\n\n maxLength(m: number) {\n this.addValidators(Validators.maxLength(m));\n return this;\n }\n\n email() {\n this.addValidators(Validators.email);\n return this;\n }\n\n pattern(p: string | RegExp) {\n this.addValidators(Validators.pattern(p));\n return this;\n }\n\n patternOnlyChars() {\n this.addValidators(Validators.pattern(PATTERN_ONLY_CHARS));\n return this;\n }\n\n patternCharsWithSpace() {\n this.addValidators(Validators.pattern(PATTERN_CHARS_WITH_SPACE));\n return this;\n }\n\n patternOnlyDigits() {\n this.addValidators(Validators.pattern(PATTERN_ONLY_DIGITS));\n return this;\n }\n\n patternOnlyDigitsChars() {\n this.addValidators(Validators.pattern(PATTERN_ONLY_DIGITS_CHARS));\n return this;\n }\n\n patternOnlyDigitsCharsTire() {\n this.addValidators(Validators.pattern(PATTERN_ONLY_DIGITS_CHARS_TIRE));\n return this;\n }\n\n patternRefCategories() {\n this.addValidators(Validators.pattern(PATTERN_REF_CATEGORIES));\n return this;\n }\n\n phone() {\n this.addValidators(Validators.pattern(PATTERN_PHONE));\n return this;\n }\n}\n","import { WA_IS_IOS } from '@ng-web-apis/platform';\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n input,\n OnInit,\n} from '@angular/core';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { TuiLabel, TuiInput } from '@taiga-ui/core';\nimport { TuiInputPhone } from '@taiga-ui/kit';\nimport { KeitControl } from './simple-control';\nimport { FieldValidation } from './validation';\n\n@Component({\n selector: 'keit-simple-phone-input-widget',\n imports: [\n ReactiveFormsModule,\n FormsModule,\n TuiInput,\n TuiLabel,\n TuiInputPhone,\n FieldValidation,\n ],\n template: `\n <tui-textfield [tuiTextfieldSize]=\"size()\">\n <label tuiLabel>Телефон</label>\n\n <input\n autocomplete=\"tel\"\n mask=\"+7 ### ###-##-##\"\n tuiInputPhone\n [attr.pattern]=\"pattern\"\n [formControl]=\"control()\"\n [readOnly]=\"readonly()\"\n />\n </tui-textfield>\n\n <keit-field-validation [control]=\"control()\" />\n `,\n styles: `\n :host {\n display: block;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimplePhoneInputWidget implements OnInit {\n protected readonly isIos = inject(WA_IS_IOS);\n\n readonly placeholder = input<string>();\n readonly readonly = input<boolean>(false);\n readonly control = input.required<KeitControl<string>>();\n readonly size = input<'s' | 'm' | 'l'>('s');\n\n ngOnInit(): void {\n const control = this.control();\n if (control instanceof KeitControl) {\n control.phone();\n }\n }\n\n protected get pattern(): string | null {\n return this.isIos ? '+[0-9-]{1,20}' : null;\n }\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport {\n TuiTextfieldComponent,\n TuiIcon,\n TuiLabel,\n TuiInput,\n} from '@taiga-ui/core';\nimport { FieldValidation } from './validation';\nimport { TuiPassword } from '@taiga-ui/kit';\nimport { KeitControl } from './simple-control';\n\n@Component({\n selector: 'keit-simple-password-input',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n TuiTextfieldComponent,\n TuiInput,\n TuiLabel,\n TuiIcon,\n FieldValidation,\n TuiPassword,\n ],\n template: `\n <tui-textfield [tuiTextfieldSize]=\"size()\">\n <label tuiLabel>{{ placeholder() }}</label>\n <input\n type=\"password\"\n autocomplete=\"off\"\n tuiInput\n [placeholder]=\"placeholder()\"\n [formControl]=\"control()\"\n [readOnly]=\"readonly()\"\n autocomplete=\"new-password\"\n />\n <tui-icon tuiPassword />\n <keit-field-validation [control]=\"control()\" />\n </tui-textfield>\n `,\n styles: `\n :host {\n display: block;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimplePasswordInputWidget {\n readonly placeholder = input<string>();\n readonly control = input.required<KeitControl<string>>();\n readonly size = input<'s' | 'm' | 'l'>('m');\n readonly readonly = input<boolean>(false);\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n input,\n output,\n} from '@angular/core';\nimport { TuiButton, TuiIcon } from '@taiga-ui/core';\n\n@Component({\n selector: 'keit-simple-actions',\n imports: [TuiIcon, TuiButton],\n template: `\n <div class=\"actions\">\n <button\n tuiButton\n type=\"button\"\n appearance=\"primary\"\n [disabled]=\"disabled()\"\n [size]=\"size()\"\n (click)=\"acceptEvent.emit()\"\n >\n @if (primaryIcon()) {\n <tui-icon [icon]=\"primaryIcon() ?? ''\" />\n }\n\n {{ primaryCaption() }}\n </button>\n\n @if (hasSecondary()) {\n <button\n tuiButton\n type=\"button\"\n appearance=\"flat\"\n [size]=\"size()\"\n class=\"tui-form__button\"\n (click)=\"cancelEvent.emit()\"\n >\n @if (secondaryIcon()) {\n <tui-icon [icon]=\"secondaryIcon() ?? ''\" />\n }\n\n {{ secondaryCaption() }}\n </button>\n }\n </div>\n `,\n styles: `\n :host {\n display: flex;\n margin: 12px 0;\n justify-content: end;\n }\n\n .actions {\n display: flex;\n flex-direction: row-reverse;\n gap: 4px;\n justify-content: end;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimpleActionsWidget {\n readonly primaryIcon = input<string>();\n readonly secondaryIcon = input<string>();\n readonly disabled = input<boolean>();\n readonly primaryCaption = input<string>('Принять');\n readonly secondaryCaption = input<string>('Отмена');\n readonly hasSecondary = input<boolean>(true);\n readonly size = input<'s' | 'm' | 'l'>('m');\n readonly acceptEvent = output<void>();\n readonly cancelEvent = output<void>();\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\n@Component({\n selector: 'keit-simple-flex',\n imports: [],\n template: `\n <div\n class=\"base\"\n [style.gap.px]=\"gap()\"\n [style.flexDirection]=\"\n direction() === 'vertical' ? 'column' : 'row'\n \"\n >\n <ng-content></ng-content>\n </div>\n `,\n styles: `\n :host {\n display: block;\n }\n\n .base {\n display: flex;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimpleFlexLayout {\n readonly gap = input<number>();\n readonly direction = input<'vertical' | 'horizontal'>();\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\n\n@Component({\n selector: 'keit-simple-grid',\n imports: [],\n template: `\n <div\n class=\"base\"\n [style.gridTemplateColumns]=\"getGridTemplate(columns())\"\n [style.gap.px]=\"gap()\"\n >\n <ng-content></ng-content>\n </div>\n `,\n styles: `\n :host {\n display: block;\n }\n\n .base {\n display: grid;\n\n gap: 20px;\n grid-auto-rows: auto;\n }\n\n @media (max-width: 480px) {\n .base {\n grid-template-columns: 1fr !important;\n }\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimpleGridLayout {\n readonly columns = input<number>();\n readonly gap = input<number>();\n\n protected getGridTemplate(count: number | undefined): string {\n if (count === undefined) {\n return '';\n }\n return `repeat(${count}, 1fr)`;\n }\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport {\n TuiLabel,\n TuiIcon,\n TuiCalendar,\n TuiHint,\n TuiInput,\n} from '@taiga-ui/core';\nimport { TuiInputDateTime, TuiTooltip } from '@taiga-ui/kit';\nimport { KeitControl } from './simple-control';\n\n@Component({\n selector: 'keit-simple-date-input-widget',\n imports: [\n ReactiveFormsModule,\n FormsModule,\n TuiInput,\n TuiInputDateTime,\n TuiLabel,\n TuiIcon,\n TuiTooltip,\n TuiCalendar,\n TuiHint,\n ],\n template: `\n <tui-textfield\n [tuiTextfieldSize]=\"size()\"\n [tuiTextfieldCleaner]=\"cleaner() ?? false\"\n >\n <label tuiLabel>{{ placeholder() }}</label>\n <input\n tuiInputDateTime\n [placeholder]=\"sample()\"\n [formControl]=\"control()\"\n [readOnly]=\"readonly()\"\n />\n <tui-calendar *tuiDropdown />\n\n @if (iconRight()) {\n <tui-icon [icon]=\"iconRight()\" />\n }\n\n @if (hint()) {\n <tui-icon [tuiTooltip]=\"hint()\" tuiHintDirection=\"top-end\" />\n }\n </tui-textfield>\n `,\n styles: `\n :host {\n display: block;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimpleDateInputWidget {\n readonly placeholder = input<string>();\n readonly sample = input<string>('Введите...');\n readonly control = input.required<KeitControl<Date>>();\n readonly size = input<'s' | 'm' | 'l'>('m');\n readonly readonly = input<boolean>(false);\n readonly hint = input<string>('');\n readonly iconRight = input<string>('');\n readonly cleaner = input<boolean>();\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { TuiLabel, TuiIcon, TuiHint, TuiInput } from '@taiga-ui/core';\nimport { TuiCalendarRange, TuiInputDateRange, TuiTooltip } from '@taiga-ui/kit';\nimport { KeitControl } from './simple-control';\n\n@Component({\n selector: 'keit-simple-date-range-input-widget',\n imports: [\n ReactiveFormsModule,\n FormsModule,\n TuiInput,\n TuiInputDateRange,\n TuiLabel,\n TuiIcon,\n TuiTooltip,\n TuiCalendarRange,\n TuiHint,\n ],\n template: `\n <tui-textfield\n [tuiTextfieldSize]=\"size()\"\n [tuiTextfieldCleaner]=\"cleaner() ?? false\"\n >\n <label tuiLabel>{{ placeholder() }}</label>\n <input\n tuiInputDateRange\n [placeholder]=\"sample()\"\n [formControl]=\"control()\"\n [readOnly]=\"readonly()\"\n />\n <tui-calendar-range *tuiDropdown />\n\n @if (iconRight()) {\n <tui-icon [icon]=\"iconRight()\" />\n }\n\n @if (hint()) {\n <tui-icon [tuiTooltip]=\"hint()\" tuiHintDirection=\"top-end\" />\n }\n </tui-textfield>\n `,\n styles: `\n :host {\n display: block;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimpleDateRangeInputWidget {\n readonly placeholder = input<string>();\n readonly sample = input<string>('Введите...');\n readonly control = input.required<KeitControl<[Date, Date]>>();\n readonly size = input<'s' | 'm' | 'l'>('m');\n readonly readonly = input<boolean>(false);\n readonly hint = input<string>('');\n readonly iconRight = input<string>('');\n readonly cleaner = input<boolean>();\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n input,\n output,\n} from '@angular/core';\nimport {\n TuiTablePagination,\n TuiTablePaginationEvent,\n tuiTablePaginationOptionsProvider,\n} from '@taiga-ui/addon-table';\n\n@Component({\n selector: 'keit-simple-pagination',\n imports: [TuiTablePagination],\n template: `\n <tui-table-pagination\n [page]=\"page()\"\n [size]=\"size()\"\n [total]=\"total()\"\n (paginationChange)=\"paginationChange.emit($event)\"\n />\n `,\n styles: `\n :host {\n display: block;\n padding: 16px;\n }\n `,\n providers: [tuiTablePaginationOptionsProvider({ showPages: false })],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimplePaginationWidget {\n readonly page = input.required<number>();\n readonly size = input.required<number>();\n readonly total = input.required<number>();\n readonly paginationChange = output<TuiTablePaginationEvent>();\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n input,\n output,\n effect,\n inject,\n signal,\n PLATFORM_ID,\n} from '@angular/core';\nimport { isPlatformBrowser } from '@angular/common';\nimport { TuiNotification, TuiButton } from '@taiga-ui/core';\nimport { SimpleButtonWidget } from './simple-button.widget';\n\n@Component({\n selector: 'keit-notification-widget',\n imports: [TuiNotification, TuiButton, SimpleButtonWidget],\n template: `\n @if (shouldShow()) {\n <!-- TODO: (Taiga UI migration) [appearance] binding uses a dynamic expression. If it can produce \"error\"/\"success\"/\"glass\", replace with \"negative\"/\"positive\"/\"secondary-grayscale\" -->\n <div tuiNotification [size]=\"size()\" [appearance]=\"appearance()\">\n <p class=\"text\"><ng-content></ng-content></p>\n @if (hideable()) {\n <!-- TODO: (Taiga UI migration) [appearance] binding uses a dynamic expression. If it can produce \"error\"/\"success\"/\"glass\", replace with \"negative\"/\"positive\"/\"secondary-grayscale\" -->\n <keit-simple-button\n [appearance]=\"hideButtonAppearance()\"\n [size]=\"hideButtonSize()\"\n [caption]=\"hideButtonLabel()\"\n (action)=\"hideForever()\"\n />\n }\n @if (closable()) {\n <button\n iconStart=\"@tui.x\"\n tuiIconButton\n type=\"button\"\n (click)=\"shouldShow.set(false)\"\n >\n {{ closeLabel() }}\n </button>\n }\n </div>\n }\n `,\n styles: `\n :host {\n display: block;\n margin-bottom: 8px;\n }\n\n .text {\n font-size: 12px;\n padding: 8px 8px 0 8px;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NotificationWidget {\n private readonly platformId = inject(PLATFORM_ID);\n\n readonly size = input<'s' | 'm' | 'l'>('l');\n readonly appearance = input<\n 'error' | 'warning' | 'info' | 'success' | 'neutral'\n >('info');\n readonly closable = input<boolean>(true);\n readonly closeLabel = input<string>('Close');\n readonly closeEvent = output<void>();\n\n readonly hideable = input<boolean>(false);\n readonly hideButtonLabel = input<string>('Больше не показывать');\n readonly hideButtonAppearance = input<\n 'primary' | 'secondary' | 'flat' | 'accent'\n >('flat');\n readonly hideButtonSize = input<'xs' | 's' | 'm' | 'l'>('s');\n readonly storageKey = input<string | undefined>();\n\n readonly shouldShow = signal(true);\n\n constructor() {\n effect(() => {\n const key = this.storageKey();\n if (key && isPlatformBrowser(this.platformId)) {\n const hidden = localStorage.getItem(`notification-hide-${key}`);\n this.shouldShow.set(!hidden);\n }\n });\n }\n\n hideForever() {\n const key = this.storageKey();\n if (key && isPlatformBrowser(this.platformId)) {\n localStorage.setItem(`notification-hide-${key}`, 'true');\n this.shouldShow.set(false);\n }\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n input,\n output,\n OnInit,\n} from '@angular/core';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { TuiDay, TuiMonth } from '@taiga-ui/cdk';\nimport { TuiCalendar, TuiMarkerHandler } from '@taiga-ui/core';\n\n@Component({\n selector: 'keit-simple-calendar-widget',\n imports: [ReactiveFormsModule, FormsModule, TuiCalendar],\n template: `\n <tui-calendar\n [markerHandler]=\"this.markerConditionFn()\"\n [month]=\"selectedMonth\"\n [showAdjacent]=\"false\"\n [value]=\"value\"\n [(hoveredItem)]=\"hoveredItem\"\n (dayClick)=\"onDayClick($event)\"\n (monthChange)=\"onMonthChange($event)\"\n />\n `,\n styles: `\n :host {\n display: block;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimpleCalendarWidget implements OnInit {\n readonly markerConditionFn = input<TuiMarkerHandler | null>(null);\n readonly initialMonth = input<TuiMonth | null>(null);\n readonly initialDay = input<TuiDay | null>(null);\n\n readonly selectDay = output<TuiDay>();\n readonly selectMonth = output<TuiMonth>();\n\n protected value: TuiDay | null = null;\n protected selectedMonth = TuiMonth.currentLocal();\n protected hoveredItem: TuiDay | null = null;\n\n ngOnInit(): void {\n const initialMonth = this.initialMonth();\n if (initialMonth) {\n this.selectedMonth = initialMonth;\n this.value = new TuiDay(\n this.selectedMonth.year,\n this.selectedMonth.month,\n 1,\n );\n }\n\n const initialDay = this.initialDay();\n if (initialDay) {\n this.value = initialDay;\n }\n }\n\n protected onDayClick(day: TuiDay): void {\n this.value = day;\n this.selectDay.emit(day);\n }\n\n protected onMonthChange(month: TuiMonth): void {\n this.selectedMonth = month;\n this.selectMonth.emit(month);\n this.value = new TuiDay(month.year, month.month, 1);\n this.selectDay.emit(this.value);\n }\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { TuiDialogContext, TuiInput } from '@taiga-ui/core';\nimport {\n SimpleInputWidget,\n SimpleTextareaWidget,\n SimpleActionsWidget,\n KeitControl,\n} from '../../taiga-ui';\n\nimport { SimpleFlexLayout } from '../../layouts/simple-flex.layout';\nimport { validatorsProvider } from '../../constants';\n\nimport { injectContext } from '@taiga-ui/polymorpheus';\n\n@Component({\n selector: 'keit-name-description-component',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n TuiInput,\n SimpleInputWidget,\n SimpleTextareaWidget,\n SimpleActionsWidget,\n SimpleFlexLayout,\n ],\n template: `\n <keit-simple-flex [gap]=\"8\" direction=\"vertical\">\n <keit-simple-input-widget\n [control]=\"name\"\n placeholder=\"Название\"\n sample=\"Введите тут название\"\n />\n\n <keit-simple-textarea\n placeholder=\"Описание\"\n [limit]=\"1024\"\n [control]=\"description\"\n [size]=\"'m'\"\n sample=\"Введите тут описание\"\n />\n\n <keit-simple-actions\n [size]=\"'s'\"\n (cancelEvent)=\"cancel(); context.completeWith(null)\"\n (acceptEvent)=\"accept()\"\n [disabled]=\"name.invalid || description.invalid\"\n />\n </keit-simple-flex>\n `,\n styles: ``,\n providers: [validatorsProvider],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NameDescriptionComponent {\n public readonly context =\n injectContext<\n TuiDialogContext<{ name: string; description: string } | null>\n >();\n\n readonly name = KeitControl.create('')\n .required()\n .minLength(3)\n .maxLength(255);\n\n readonly description = KeitControl.create('')\n .required()\n .minLength(3)\n .maxLength(1024);\n\n protected cancel() {\n this.name.reset();\n this.description.reset();\n }\n\n protected accept() {\n this.context.completeWith({\n name: this.name.value,\n description: this.description.value,\n });\n\n this.name.reset();\n this.description.reset();\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n inject,\n Injector,\n input,\n output,\n} from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { TuiDialogService, TuiInput } from '@taiga-ui/core';\nimport { SimpleButtonWidget } from '../../taiga-ui';\nimport { PolymorpheusComponent } from '@taiga-ui/polymorpheus';\nimport { NameDescriptionComponent } from './name-description.component';\n\n@Component({\n selector: 'keit-name-description-input-dialog',\n imports: [FormsModule, ReactiveFormsModule, TuiInput, SimpleButtonWidget],\n template: `\n <!-- TODO: (Taiga UI migration) [appearance] binding uses a dynamic expression. If it can produce \"error\"/\"success\"/\"glass\", replace with \"negative\"/\"positive\"/\"secondary-grayscale\" -->\n <keit-simple-button\n [icon]=\"operation() === 'create' ? '@tui.plus' : '@tui.edit'\"\n [size]=\"size()\"\n [caption]=\"caption()\"\n [appearance]=\"appearance()\"\n [disabled]=\"disabled()\"\n (action)=\"openDialog()\"\n />\n `,\n styles: ``,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NameDescriptionDialog {\n private readonly dialogs = inject(TuiDialogService);\n private readonly injector = inject(Injector);\n\n readonly operation = input<'create' | 'edit'>('create');\n readonly disabled = input<boolean>();\n readonly caption = input<string>();\n readonly size = input<'xs' | 's' | 'm' | 'l'>('m');\n readonly appearance = input<'primary' | 'secondary' | 'flat' | 'accent'>(\n 'primary',\n );\n\n readonly result = output<{ name: string; description: string } | null>();\n\n protected openDialog(): void {\n this.dialogs\n .open<{ name: string; description: string } | null>(\n new PolymorpheusComponent(\n NameDescriptionComponent,\n this.injector,\n ),\n {\n label: `${this.operation() === 'create' ? 'Добавить' : 'Редактировать'}`,\n size: 's',\n dismissible: false,\n },\n )\n .subscribe((data) => {\n this.result.emit(\n data != null\n ? {\n name: data.name,\n description: data.description,\n }\n : null,\n );\n });\n }\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { TuiDialogContext, TuiInput } from '@taiga-ui/core';\nimport {\n SimpleInputWidget,\n SimpleTextareaWidget,\n SimpleActionsWidget,\n KeitControl,\n} from '../../taiga-ui';\nimport { injectContext } from '@taiga-ui/polymorpheus';\nimport { tuiValidationErrorsProvider } from '@taiga-ui/core';\nimport { of } from 'rxjs';\nimport { SimpleFlexLayout } from '../../layouts/simple-flex.layout';\n\n@Component({\n selector: 'keit-name-component',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n TuiInput,\n SimpleInputWidget,\n SimpleTextareaWidget,\n SimpleActionsWidget,\n SimpleFlexLayout,\n ],\n template: `\n <keit-simple-flex [gap]=\"8\" direction=\"vertical\">\n <keit-simple-input-widget [control]=\"name\" placeholder=\"Название\" />\n\n <keit-simple-textarea\n placeholder=\"Описание\"\n [limit]=\"1200\"\n [control]=\"description\"\n [size]=\"'m'\"\n />\n\n <keit-simple-actions\n [size]=\"'s'\"\n (cancelEvent)=\"cancel(); context.completeWith(null)\"\n (acceptEvent)=\"accept()\"\n [disabled]=\"name.invalid || description.invalid\"\n />\n </keit-simple-flex>\n `,\n styles: ``,\n providers: [\n tuiValidationErrorsProvider({\n required: 'Требуется ввести',\n maxlength: ({ requiredLength }: { requiredLength: string }) =>\n `Максимальная длина — ${requiredLength}`,\n minlength: ({ requiredLength }: { requiredLength: string }) =>\n of(`Минимальная длина — ${requiredLength}`),\n }),\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NameDescriptionComponent {\n public readonly context =\n injectContext<\n TuiDialogContext<{ name: string; description: string } | null>\n >();\n\n readonly name = KeitControl.create('')\n .required()\n .maxLength(30)\n .minLength(2);\n readonly description = KeitControl.create('')\n .required()\n .maxLength(300)\n .minLength(2);\n\n protected cancel() {\n this.name.reset();\n this.description.reset();\n }\n\n protected accept() {\n this.context.completeWith({\n name: this.name.value,\n description: this.description.value,\n });\n\n this.name.reset();\n this.description.reset();\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n inject,\n Injector,\n input,\n output,\n} from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { TuiDialogService, TuiInput } from '@taiga-ui/core';\nimport { SimpleButtonWidget } from '../../taiga-ui';\nimport { PolymorpheusComponent } from '@taiga-ui/polymorpheus';\nimport { NameDescriptionComponent } from './name.component';\n\n@Component({\n selector: 'keit-name-input-dialog',\n imports: [FormsModule, ReactiveFormsModule, TuiInput, SimpleButtonWidget],\n template: `\n <!-- TODO: (Taiga UI migration) [appearance] binding uses a dynamic expression. If it can produce \"error\"/\"success\"/\"glass\", replace with \"negative\"/\"positive\"/\"secondary-grayscale\" -->\n <keit-simple-button\n [icon]=\"operation() === 'create' ? '@tui.plus' : '@tui.edit'\"\n [size]=\"size()\"\n [caption]=\"caption()\"\n [appearance]=\"appearance()\"\n [disabled]=\"disabled()\"\n (action)=\"openDialog()\"\n />\n `,\n styles: ``,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NameDialog {\n private readonly dialogs = inject(TuiDialogService);\n private readonly injector = inject(Injector);\n\n readonly operation = input<'create' | 'edit'>('create');\n readonly disabled = input<boolean>();\n readonly caption = input<string>();\n readonly size = input<'xs' | 's' | 'm' | 'l'>('m');\n readonly appearance = input<'primary' | 'secondary' | 'flat' | 'accent'>(\n 'primary',\n );\n\n readonly result = output<{ name: string; description: string } | null>();\n\n protected openDialog(): void {\n this.dialogs\n .open<{ name: string; description: string } | null>(\n new PolymorpheusComponent(\n NameDescriptionComponent,\n this.injector,\n ),\n {\n label: `${this.operation() === 'create' ? 'Добавить' : 'Редактировать'}`,\n size: 's',\n dismissible: false,\n },\n )\n .subscribe((data) => {\n this.result.emit(\n data != null\n ? {\n name: data.name,\n description: data.description,\n }\n : null,\n );\n });\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n input,\n output,\n} from '@angular/core';\nimport { SimpleButtonWidget } from '../taiga-ui';\n\n@Component({\n selector: 'keit-reload-overlay',\n imports: [SimpleButtonWidget],\n template: `\n <div [class.overlay]=\"overlayed()\">\n @if (overlayed()) {\n <keit-simple-button\n icon=\"@tui.refresh-ccw\"\n appearance=\"accent\"\n size=\"l\"\n caption=\"\"\n (action)=\"reload.emit()\"\n />\n } @else {\n <ng-content />\n }\n </div>\n `,\n styles: `\n .overlay {\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n gap: 1rem;\n background-color: rgba(0, 0, 0, 0.6);\n z-index: 1000;\n pointer-events: auto;\n }\n\n ::ng-deep keit-simple-button {\n z-index: 1001;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ReloadOverlayWidget {\n readonly reload = output<void>();\n readonly overlayed = input<boolean>();\n}\n","/*\n * Public API Surface of widgets\n */\n\nexport * from './lib/taiga-ui/login-input.widget';\nexport * from './lib/taiga-ui/password-input.widget';\nexport * from './lib/taiga-ui/simple-button.widget';\nexport * from './lib/taiga-ui/email-input.widget';\nexport * from './lib/taiga-ui/simple-select.widget';\nexport * from './lib/taiga-ui/simple-combo.widget';\nexport * from './lib/taiga-ui/simple-number-input.widget';\nexport * from './lib/taiga-ui/simple-input.widget';\nexport * from './lib/taiga-ui/simple-textarea.widget';\nexport * from './lib/taiga-ui/simple-copy-input.widget';\nexport * from './lib/taiga-ui/simple-phone-input.widget';\nexport * from './lib/taiga-ui/simple-control';\nexport * from './lib/taiga-ui/simple-password-input.widget';\nexport * from './lib/taiga-ui/simple-actions.widget';\nexport * from './lib/layouts/simple-flex.layout';\nexport * from './lib/layouts/simple-grid.layout';\nexport * from './lib/dialog/name-description/name-description.dialog';\nexport * from './lib/dialog/name/name.dialog';\nexport * from './lib/constants';\nexport * from './lib/taiga-ui/simple-date-input.widget';\nexport * from './lib/overlay/reload-overlay.widget';\nexport * from './lib/taiga-ui/simple-date-input.widget';\nexport * from './lib/taiga-ui/simple-date-range-input.widget';\nexport * from './lib/taiga-ui/simple-pagination.widget';\nexport * from './lib/taiga-ui/notification.widget';\nexport * from './lib/taiga-ui/simple-calendar.widget';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2","i3","i4","i5","i6","i1","NameDescriptionComponent"],"mappings":"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"}
1
+ {"version":3,"file":"pleione-lab-widgets.mjs","sources":["../../../projects/taiga-widget-wrappers/src/lib/login-input.widget.ts","../../../projects/taiga-widget-wrappers/src/lib/password-input.widget.ts","../../../projects/taiga-widget-wrappers/src/lib/simple-button.widget.ts","../../../projects/taiga-widget-wrappers/src/lib/email-input.widget.ts","../../../projects/taiga-widget-wrappers/src/lib/validation.ts","../../../projects/taiga-widget-wrappers/src/lib/simple-select.widget.ts","../../../projects/taiga-widget-wrappers/src/lib/simple-combo.widget.ts","../../../projects/taiga-widget-wrappers/src/lib/simple-number-input.widget.ts","../../../projects/taiga-widget-wrappers/src/lib/simple-input.widget.ts","../../../projects/taiga-widget-wrappers/src/lib/simple-textarea.widget.ts","../../../projects/taiga-widget-wrappers/src/lib/simple-copy-input.widget.ts","../../../projects/taiga-widget-wrappers/src/lib/constants.ts","../../../projects/taiga-widget-wrappers/src/lib/simple-control.ts","../../../projects/taiga-widget-wrappers/src/lib/simple-phone-input.widget.ts","../../../projects/taiga-widget-wrappers/src/lib/simple-password-input.widget.ts","../../../projects/taiga-widget-wrappers/src/lib/simple-actions.widget.ts","../../../projects/taiga-widget-wrappers/src/lib/simple-date-input.widget.ts","../../../projects/taiga-widget-wrappers/src/lib/simple-date-time-input.widget.ts","../../../projects/taiga-widget-wrappers/src/lib/simple-date-range-input.widget.ts","../../../projects/taiga-widget-wrappers/src/lib/simple-date-time-range-input.widget.ts","../../../projects/taiga-widget-wrappers/src/lib/simple-pagination.widget.ts","../../../projects/taiga-widget-wrappers/src/lib/notification.widget.ts","../../../projects/taiga-widget-wrappers/src/lib/simple-calendar.widget.ts","../../../projects/taiga-widget-wrappers/src/public-api.ts","../../../projects/taiga-widget-wrappers/src/pleione-lab-widgets.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n effect,\n output,\n} from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport {\n FormControl,\n FormsModule,\n ReactiveFormsModule,\n Validators,\n} from '@angular/forms';\nimport {\n TuiTextfieldComponent,\n TuiIcon,\n TuiLabel,\n TuiInput,\n} from '@taiga-ui/core';\n\n@Component({\n selector: 'keit-login-input',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n TuiTextfieldComponent,\n TuiInput,\n TuiLabel,\n TuiIcon,\n ],\n template: `\n <h3 class=\"tui-form__header tui-form__header_margin-top_none\">Логин</h3>\n <div class=\"tui-form__row\">\n <tui-textfield>\n <label tuiLabel>Введите логин</label>\n <input\n placeholder=\"Введите логин\"\n tuiInput\n [formControl]=\"loginCtrl\"\n autocomplete=\"off\"\n />\n <tui-icon icon=\"@tui.user\" />\n </tui-textfield>\n\n @if (loginCtrl.invalid && loginCtrl.dirty && loginCtrl.touched) {\n <div class=\"alert\">\n @if (loginCtrl.hasError('required')) {\n Требуется ввести логин.\n }\n @if (loginCtrl.hasError('minlength')) {\n Должен быть хотя бы 3 символов\n }\n </div>\n }\n </div>\n `,\n styles: `\n .alert {\n color: var(--tui-status-negative);\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class LoginInputWidget {\n protected readonly loginCtrl = new FormControl<string>('', [\n Validators.required,\n Validators.minLength(3),\n ]);\n\n private readonly login$$ = toSignal(this.loginCtrl.valueChanges);\n\n readonly login = output<string | null | undefined>();\n readonly loginNotReady = output<boolean>();\n\n constructor() {\n effect(() => {\n this.login.emit(this.login$$());\n\n this.loginNotReady.emit(\n this.loginCtrl.invalid &&\n this.loginCtrl.dirty &&\n this.loginCtrl.touched,\n );\n });\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n effect,\n output,\n} from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport {\n FormControl,\n FormsModule,\n ReactiveFormsModule,\n Validators,\n} from '@angular/forms';\nimport {\n TuiTextfieldComponent,\n TuiIcon,\n TuiLabel,\n TuiInput,\n} from '@taiga-ui/core';\n\n@Component({\n selector: 'keit-password-input',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n TuiTextfieldComponent,\n TuiInput,\n TuiLabel,\n TuiIcon,\n ],\n template: `\n <h3 class=\"tui-form__header tui-form__header_margin-top_none\">\n Пароль\n </h3>\n <div class=\"tui-form__row\">\n <tui-textfield>\n <label tuiLabel>Введите пароль</label>\n <input\n placeholder=\"Введите пароль\"\n tuiInput\n type=\"password\"\n [formControl]=\"passwordCtrl\"\n class=\"tui-space_top-2\"\n autocomplete=\"off\"\n />\n <tui-icon tuiPassword />\n </tui-textfield>\n\n @if (\n passwordCtrl.invalid &&\n passwordCtrl.dirty &&\n passwordCtrl.touched\n ) {\n <div class=\"alert\">\n @if (passwordCtrl.hasError('required')) {\n Требуется ввести пароль\n }\n @if (passwordCtrl.hasError('minlength')) {\n Должен быть хотя бы 3 символа\n }\n </div>\n }\n </div>\n `,\n styles: `\n .alert {\n color: var(--tui-status-negative);\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class PasswordInputWidget {\n protected readonly passwordCtrl = new FormControl<string>('', [\n Validators.required,\n Validators.minLength(3),\n ]);\n\n private readonly password$$ = toSignal(this.passwordCtrl.valueChanges);\n\n readonly password = output<string | null | undefined>();\n readonly passwordNotReady = output<boolean>();\n\n constructor() {\n effect(() => {\n this.password.emit(this.password$$());\n\n this.passwordNotReady.emit(\n this.passwordCtrl.invalid &&\n this.passwordCtrl.dirty &&\n this.passwordCtrl.touched,\n );\n });\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n input,\n output,\n} from '@angular/core';\nimport { TuiButton, TuiIcon } from '@taiga-ui/core';\n\n@Component({\n selector: 'keit-simple-button',\n imports: [TuiIcon, TuiButton],\n template: `\n <!-- TODO: (Taiga UI migration) [appearance] binding uses a dynamic expression. If it can produce \"error\"/\"success\"/\"glass\", replace with \"negative\"/\"positive\"/\"secondary-grayscale\" -->\n <button\n tuiButton\n [appearance]=\"appearance()\"\n type=\"button\"\n [size]=\"size()\"\n (click)=\"action.emit()\"\n [disabled]=\"disabled()\"\n [attr.aria-label]=\"ariaLabel() || caption() || null\"\n >\n @if (icon()) {\n <tui-icon [icon]=\"icon() ?? ''\" />\n }\n {{ caption() }}\n @if (iconRight()) {\n <tui-icon [icon]=\"iconRight() ?? ''\" />\n }\n </button>\n `,\n styles: ``,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {},\n})\nexport class SimpleButtonWidget {\n readonly icon = input<string>();\n readonly iconRight = input<string>();\n readonly disabled = input<boolean>();\n readonly caption = input<string>();\n readonly ariaLabel = input<string>();\n readonly action = output<void>();\n readonly size = input<'xs' | 's' | 'm' | 'l'>('m');\n readonly appearance = input<'primary' | 'secondary' | 'flat' | 'accent'>(\n 'primary',\n );\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n effect,\n output,\n} from '@angular/core';\nimport { toSignal } from '@angular/core/rxjs-interop';\nimport {\n FormControl,\n FormsModule,\n ReactiveFormsModule,\n Validators,\n} from '@angular/forms';\nimport { TuiTextfieldComponent, TuiLabel, TuiInput } from '@taiga-ui/core';\n\n@Component({\n selector: 'keit-email-input',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n TuiTextfieldComponent,\n TuiInput,\n TuiLabel,\n ],\n template: `\n <h3 class=\"tui-form__header tui-form__header_margin-top_none\">Email</h3>\n <div class=\"tui-form__row\">\n <tui-textfield>\n <label tuiLabel>Введите email</label>\n <input\n type=\"email\"\n placeholder=\"Введите email\"\n tuiInput\n [formControl]=\"emailCtrl\"\n autocomplete=\"off\"\n />\n </tui-textfield>\n\n @if (emailCtrl.invalid && emailCtrl.dirty && emailCtrl.touched) {\n <div class=\"alert\">\n @if (emailCtrl.hasError('required')) {\n Требуется ввести email.\n }\n @if (emailCtrl.hasError('minlength')) {\n Должен быть хотя бы 3 символов\n }\n @if (emailCtrl.hasError('email')) {\n Формат почты задан неверно\n }\n </div>\n }\n </div>\n `,\n styles: `\n .alert {\n color: var(--tui-status-negative);\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EmailInputWidget {\n protected readonly emailCtrl = new FormControl<string>('', [\n Validators.required,\n Validators.minLength(3),\n Validators.email,\n ]);\n\n private readonly email$$ = toSignal(this.emailCtrl.valueChanges);\n\n readonly email = output<string | null | undefined>();\n readonly emailNotReady = output<boolean>();\n\n constructor() {\n effect(() => {\n this.email.emit(this.email$$());\n\n this.emailNotReady.emit(\n this.emailCtrl.invalid &&\n this.emailCtrl.dirty &&\n this.emailCtrl.touched,\n );\n });\n }\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { FormControl, ReactiveFormsModule } from '@angular/forms';\nimport { TuiError } from '@taiga-ui/core';\n\n@Component({\n selector: 'keit-field-validation',\n imports: [ReactiveFormsModule, TuiError],\n template: `\n @let controlValue = control();\n\n @if (controlValue) {\n <tui-error [formControl]=\"controlValue\" />\n }\n `,\n styles: `\n :host {\n display: block;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class FieldValidation {\n readonly control = input<FormControl>();\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { TuiStringHandler } from '@taiga-ui/cdk/types';\nimport { TuiIcon, TuiInput } from '@taiga-ui/core';\nimport {\n TuiChevron,\n TuiSelect,\n TuiDataListWrapperComponent,\n TuiDataListWrapper,\n TuiTooltip,\n} from '@taiga-ui/kit';\nimport { FieldValidation } from './validation';\nimport { KeitControl } from './simple-control';\n\nexport interface SimpleSelectItem {\n id: number;\n name: string;\n}\n\n@Component({\n selector: 'keit-simple-select-widget',\n imports: [\n ReactiveFormsModule,\n TuiChevron,\n TuiDataListWrapper,\n TuiSelect,\n TuiInput,\n TuiDataListWrapperComponent,\n FieldValidation,\n TuiIcon,\n TuiTooltip,\n ],\n template: `\n <tui-textfield\n tuiChevron\n [stringify]=\"stringify\"\n [tuiTextfieldSize]=\"size()\"\n [tuiTextfieldCleaner]=\"cleaner() ?? false\"\n >\n <input\n tuiSelect\n [formControl]=\"control()\"\n [placeholder]=\"placeholder()\"\n />\n\n <tui-data-list-wrapper *tuiDropdown new [items]=\"items() ?? []\" />\n\n @if (hint()) {\n <tui-icon [tuiTooltip]=\"hint()\" tuiHintDirection=\"top-end\" />\n }\n </tui-textfield>\n\n <keit-field-validation [control]=\"control()\" />\n `,\n styles: ``,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimpleSelectWidget {\n readonly placeholder = input.required<string>();\n readonly control = input.required<KeitControl<SimpleSelectItem>>();\n readonly items = input<SimpleSelectItem[]>();\n readonly size = input<'s' | 'm' | 'l'>('m');\n readonly hint = input<string>('');\n readonly cleaner = input<boolean>();\n\n protected stringify: TuiStringHandler<SimpleSelectItem> = (\n item2: SimpleSelectItem,\n ) => {\n return this.items()?.find((item) => item.id === item2.id)?.name ?? '';\n };\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n DestroyRef,\n ElementRef,\n inject,\n input,\n OnInit,\n output,\n signal,\n TemplateRef,\n ViewChild,\n WritableSignal,\n} from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { KeitControl } from './simple-control';\nimport { TuiStringHandler } from '@taiga-ui/cdk/types';\nimport {\n TuiIcon,\n TuiLoader,\n TuiInput,\n TuiFilterByInputPipe,\n} from '@taiga-ui/core';\nimport {\n TuiChevron,\n TuiDataListWrapperComponent,\n TuiDataListWrapper,\n TuiTooltip,\n TuiComboBox,\n} from '@taiga-ui/kit';\nimport {\n catchError,\n debounceTime,\n filter,\n Observable,\n of,\n Subject,\n switchMap,\n tap,\n} from 'rxjs';\n\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { SimpleButtonWidget } from './simple-button.widget';\nimport { FieldValidation } from './validation';\n\nexport interface SimpleItem {\n id: number;\n name: string;\n payload?: any;\n}\n\n@Component({\n selector: 'keit-simple-combo-widget',\n imports: [\n ReactiveFormsModule,\n TuiChevron,\n TuiDataListWrapper,\n TuiComboBox,\n TuiInput,\n TuiDataListWrapperComponent,\n TuiIcon,\n TuiTooltip,\n TuiFilterByInputPipe,\n TuiLoader,\n SimpleButtonWidget,\n FieldValidation,\n ],\n template: `\n <tui-textfield\n tuiChevron\n [stringify]=\"stringify\"\n [tuiTextfieldSize]=\"size()\"\n [tuiTextfieldCleaner]=\"cleaner() ?? false\"\n >\n <input\n #inputRef\n tuiComboBox\n [formControl]=\"control()\"\n [placeholder]=\"placeholder()\"\n (input)=\"\n responseReady.set(false);\n search$.next($any($event.target).value)\n \"\n />\n\n <ng-template #emptyTemplate>\n <div class=\"empty-content\">\n <div class=\"no-found-icon\">Ничего не нашел</div>\n <keit-simple-button\n icon=\"@tui.plus\"\n caption=\"Создать\"\n size=\"s\"\n (action)=\"onAdd()\"\n />\n </div>\n </ng-template>\n\n <tui-data-list-wrapper\n *tuiDropdown\n new\n [emptyContent]=\"\n loading()\n ? 'Загрузка...'\n : inputRef.value.length < 2\n ? 'Введите хотя бы 2 символа'\n : responseReady()\n ? emptyTemplate\n : ''\n \"\n [items]=\"\n inputRef.value.length < 2\n ? []\n : (items() | tuiFilterByInput)\n \"\n />\n\n @if (hint()) {\n <tui-icon [tuiTooltip]=\"hint()\" tuiHintDirection=\"top-end\" />\n }\n @if (items()) {\n <tui-loader [loading]=\"loading()\" />\n }\n\n <keit-field-validation [control]=\"control()\" />\n </tui-textfield>\n `,\n styles: `\n .empty-content {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 12px;\n pointer-events: auto !important;\n }\n\n .no-found-icon {\n font-size: 12px;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimpleComboWidget implements OnInit {\n private readonly destroyRef = inject(DestroyRef);\n\n readonly search$ = new Subject<string>();\n\n readonly placeholder = input.required<string>();\n readonly control = input.required<KeitControl<SimpleItem>>();\n readonly size = input<'s' | 'm' | 'l'>('m');\n readonly hint = input<string>('');\n readonly cleaner = input<boolean>();\n\n readonly loading: WritableSignal<boolean> = signal(false);\n readonly responseReady: WritableSignal<boolean> = signal(false);\n\n readonly add = output<string>();\n\n // eslint-disable-next-line @angular-eslint/prefer-signals\n @ViewChild('emptyTemplate', { read: TemplateRef })\n emptyTemplate!: TemplateRef<unknown>;\n\n // eslint-disable-next-line @angular-eslint/prefer-signals\n @ViewChild('inputRef', { read: ElementRef })\n private inputRef!: ElementRef<HTMLInputElement>;\n\n private readonly searchedItems: WritableSignal<SimpleItem[]> = signal([]);\n\n protected readonly items = computed(() => {\n const value = this.control().value;\n const searched = this.searchedItems();\n if (!value) {\n return searched;\n }\n // Проверяем, есть ли value уже в searched по id\n const exists = searched.some((item) => item.id === value.id);\n if (exists) {\n return searched;\n }\n return [...searched, value];\n });\n\n readonly backendRequest =\n input.required<(search: string) => Observable<SimpleItem[]>>();\n\n protected stringify: TuiStringHandler<SimpleItem> = (item2: SimpleItem) => {\n const items = this.items();\n const found = items?.find((item) => item.id === item2.id);\n return found?.name ?? '';\n };\n\n ngOnInit(): void {\n this.search$\n .pipe(\n filter((str) => str.length >= 2),\n debounceTime(500),\n tap(() => this.loading.set(true)),\n switchMap((str) => this.backendRequest()(str)),\n catchError((error) => {\n this.loading.set(false);\n this.responseReady.set(true);\n return of([]);\n }),\n tap(() => this.loading.set(false)),\n tap(() => this.responseReady.set(true)),\n takeUntilDestroyed(this.destroyRef),\n )\n .subscribe((value) => {\n this.searchedItems.set(value);\n });\n }\n\n protected onAdd(): void {\n const value = this.inputRef?.nativeElement?.value?.trim() || '';\n this.add.emit(value);\n }\n\n public addItem(item: SimpleItem): void {\n const current = this.searchedItems();\n if (current) {\n this.searchedItems.set([...current, item]);\n } else {\n this.searchedItems.set([item]);\n }\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n input,\n output,\n} from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { KeitControl } from './simple-control';\nimport { TuiHint, TuiIcon, TuiLabel, TuiInput } from '@taiga-ui/core';\nimport { TuiInputNumber, TuiTooltip } from '@taiga-ui/kit';\nimport { FieldValidation } from './validation';\n\n@Component({\n selector: 'keit-simple-number-input-widget',\n imports: [\n ReactiveFormsModule,\n TuiInput,\n TuiInputNumber,\n TuiLabel,\n FieldValidation,\n TuiHint,\n TuiTooltip,\n TuiIcon,\n ],\n template: `\n <tui-textfield\n [tuiTextfieldSize]=\"size()\"\n [tuiTextfieldCleaner]=\"cleaner() ?? false\"\n >\n <label tuiLabel>{{ placeholder() }}</label>\n\n @if (step()) {\n <input\n tuiInputNumber\n [placeholder]=\"sample()\"\n [formControl]=\"control()\"\n [min]=\"min()\"\n [max]=\"max()\"\n [step]=\"step() ?? 1\"\n [postfix]=\"postfix() ?? ''\"\n (keydown.enter)=\"enter.emit()\"\n />\n } @else {\n <input\n tuiInputNumber\n [placeholder]=\"sample()\"\n [formControl]=\"control()\"\n [min]=\"min()\"\n [max]=\"max()\"\n [postfix]=\"postfix() ?? ''\"\n (keydown.enter)=\"enter.emit()\"\n />\n }\n\n @if (hint()) {\n <tui-icon\n [tuiHintDirection]=\"'top-end'\"\n [tuiTooltip]=\"hint() ?? ''\"\n />\n }\n </tui-textfield>\n\n <keit-field-validation [control]=\"control()\" />\n `,\n styles: `\n :host {\n display: block;\n flex-grow: 1;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimpleNumberInputWidget {\n readonly placeholder = input.required<string>();\n readonly sample = input<string>();\n readonly hint = input<string>();\n readonly control = input.required<KeitControl<number>>();\n readonly min = input.required<number>();\n readonly max = input.required<number>();\n readonly size = input<'s' | 'm' | 'l'>('m');\n readonly postfix = input<string>();\n readonly cleaner = input<boolean>();\n readonly step = input<number>();\n\n readonly enter = output<void>();\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n input,\n output,\n} from '@angular/core';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { TuiLabel, TuiIcon, TuiInput } from '@taiga-ui/core';\nimport { FieldValidation } from './validation';\nimport { TuiTooltip } from '@taiga-ui/kit';\nimport { KeitControl } from './simple-control';\n\n@Component({\n selector: 'keit-simple-input-widget',\n imports: [\n ReactiveFormsModule,\n FormsModule,\n TuiInput,\n TuiLabel,\n FieldValidation,\n TuiIcon,\n TuiTooltip,\n ],\n template: `\n <tui-textfield\n [tuiTextfieldSize]=\"size()\"\n [tuiTextfieldCleaner]=\"cleaner() ?? false\"\n >\n @if (placeholder()) {\n <label tuiLabel>{{ placeholder() }}</label>\n }\n <input\n tuiInput\n [placeholder]=\"sample()\"\n [formControl]=\"control()\"\n [readOnly]=\"readonly()\"\n [attr.autofocus]=\"focused()\"\n [focused]=\"focused()\"\n autocomplete=\"off\"\n (keydown.enter)=\"enter.emit()\"\n />\n\n @if (hasEnter()) {\n <tui-icon\n icon=\"@tui.corner-down-left\"\n (click)=\"enter.emit()\"\n class=\"icon\"\n />\n }\n\n @if (iconRight()) {\n <tui-icon [icon]=\"iconRight()\" />\n }\n\n @if (hint()) {\n <tui-icon [tuiTooltip]=\"hint()\" tuiHintDirection=\"top-end\" />\n }\n\n <keit-field-validation [control]=\"control()\" />\n </tui-textfield>\n `,\n styles: `\n :host {\n display: block;\n }\n\n .icon {\n cursor: pointer;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimpleInputWidget {\n readonly placeholder = input<string>();\n readonly sample = input<string>('Введите...');\n readonly control = input.required<KeitControl<string>>();\n readonly size = input<'s' | 'm' | 'l'>('m');\n readonly readonly = input<boolean>(false);\n readonly hint = input<string>('');\n readonly iconRight = input<string>('');\n readonly cleaner = input<boolean>();\n readonly hasEnter = input<boolean>();\n readonly focused = input<boolean | null>(null);\n\n readonly enter = output<void>();\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { TuiLabel, TuiInput } from '@taiga-ui/core';\nimport { TuiTextarea } from '@taiga-ui/kit';\nimport { FieldValidation } from './validation';\nimport { KeitControl } from './simple-control';\n\n@Component({\n selector: 'keit-simple-textarea',\n imports: [\n ReactiveFormsModule,\n TuiTextarea,\n TuiLabel,\n TuiInput,\n FieldValidation,\n ],\n template: `\n <tui-textfield\n [tuiTextfieldSize]=\"size()\"\n [tuiTextfieldCleaner]=\"cleaner() ?? false\"\n >\n <label tuiLabel>{{ placeholder() }}</label>\n <textarea\n [placeholder]=\"sample()\"\n [formControl]=\"control()\"\n [min]=\"3\"\n [max]=\"6\"\n [limit]=\"limit() ?? 1000\"\n tuiTextarea\n ></textarea>\n </tui-textfield>\n\n <keit-field-validation [control]=\"control()\" />\n `,\n styles: `\n :host {\n display: block;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimpleTextareaWidget {\n readonly placeholder = input.required<string>();\n readonly sample = input<string>();\n readonly control = input.required<KeitControl<string>>();\n readonly limit = input<number>();\n readonly size = input<'s' | 'm' | 'l'>('m');\n readonly cleaner = input<boolean>();\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { TuiIcon, TuiLabel, TuiInput } from '@taiga-ui/core';\nimport { KeitControl } from './simple-control';\nimport { TuiCopy } from '@taiga-ui/kit';\n\n@Component({\n selector: 'keit-simple-copy-input-widget',\n imports: [\n ReactiveFormsModule,\n FormsModule,\n TuiInput,\n TuiLabel,\n TuiIcon,\n TuiCopy,\n ],\n template: `\n <tui-textfield\n [tuiTextfieldCleaner]=\"false\"\n [tuiTextfieldSize]=\"size()\"\n >\n <label tuiLabel>{{ name() }}</label>\n <input\n tuiInput\n [placeholder]=\"placeholder()\"\n [formControl]=\"control()\"\n />\n <tui-icon tuiCopy />\n </tui-textfield>\n `,\n styles: `\n :host {\n display: block;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimpleCopyInputWidget {\n readonly name = input<string>();\n readonly placeholder = input<string>('');\n readonly control = input.required<KeitControl<string>>();\n readonly size = input<'s' | 'm' | 'l'>('m');\n}\n","import { tuiValidationErrorsProvider } from '@taiga-ui/core';\n\nexport const PATTERN_ONLY_CHARS = /^[a-zA-Zа-яёА-ЯЁ]+$/;\nexport const PATTERN_CHARS_WITH_SPACE = /^[a-zA-Zа-яёА-ЯЁ\\s]+$/;\nexport const PATTERN_ONLY_DIGITS = /^[0-9]+$/;\nexport const PATTERN_ONLY_DIGITS_CHARS = /^[a-zA-Zа-яёА-ЯЁ0-9]+$/;\nexport const PATTERN_ONLY_DIGITS_CHARS_TIRE = /^[a-zA-Zа-яёА-ЯЁ0-9\\-\\s]+$/;\nexport const PATTERN_REF_CATEGORIES = /^[a-zA-Zа-яёА-ЯЁ0-9\\-\\'\\\" .]+$/;\nexport const PATTERN_PHONE = /^\\+7\\d{10}$/;\n\nexport const validatorsProvider = tuiValidationErrorsProvider({\n required: 'Требуется ввести',\n maxlength: ({ requiredLength }: { requiredLength: string }) =>\n `Максимальная длина — ${requiredLength}`,\n minlength: ({ requiredLength }: { requiredLength: string }) =>\n `Минимальная длина — ${requiredLength}`,\n email: 'Введите корректный email',\n pattern: ({ requiredPattern }: { requiredPattern: string }) => {\n // Remove leading and trailing slashes from the pattern\n const pattern = requiredPattern.replace(/^\\/|\\/$/g, '');\n\n // Helper to compare regex patterns by their source\n const isPattern = (regex: RegExp) => {\n // Compare source without anchors for flexibility\n const source = regex.source.replace(/^\\^|\\$$/g, '');\n const patternWithoutAnchors = pattern.replace(/^\\^|\\$$/g, '');\n\n // Normalize backslashes: reduce double backslashes to single\n const normalize = (s: string) => s.replace(/\\\\\\\\/g, '\\\\');\n return normalize(source) === normalize(patternWithoutAnchors);\n };\n\n if (isPattern(PATTERN_ONLY_CHARS)) {\n return 'Должны быть только буквы';\n }\n if (isPattern(PATTERN_CHARS_WITH_SPACE)) {\n return 'Должны быть только буквы и пробел';\n }\n if (isPattern(PATTERN_ONLY_DIGITS)) {\n return 'Должны быть только цифры';\n }\n if (isPattern(PATTERN_ONLY_DIGITS_CHARS)) {\n return 'Только цифры и буквы';\n }\n if (isPattern(PATTERN_ONLY_DIGITS_CHARS_TIRE)) {\n return 'Только цифры, буквы, тире';\n }\n if (isPattern(PATTERN_REF_CATEGORIES)) {\n return 'Недопустимый символ';\n }\n if (isPattern(PATTERN_PHONE)) {\n return 'Введите корректный номер телефона';\n }\n\n return 'Некорректный формат';\n },\n});\n","import { FormControl, Validators } from '@angular/forms';\nimport {\n PATTERN_ONLY_CHARS,\n PATTERN_CHARS_WITH_SPACE,\n PATTERN_ONLY_DIGITS,\n PATTERN_ONLY_DIGITS_CHARS,\n PATTERN_ONLY_DIGITS_CHARS_TIRE,\n PATTERN_REF_CATEGORIES,\n PATTERN_PHONE,\n} from './constants';\n\nexport class KeitControl<T> extends FormControl {\n constructor(defaultValue: T, blurable: boolean) {\n super(defaultValue, { updateOn: blurable ? 'blur' : 'change' });\n }\n\n static create<T>(defaultValue: T, blurable: boolean = false) {\n return new KeitControl(defaultValue, blurable);\n }\n\n required() {\n this.addValidators(Validators.required);\n return this;\n }\n\n min(m: number) {\n this.addValidators(Validators.min(m));\n return this;\n }\n\n max(m: number) {\n this.addValidators(Validators.max(m));\n return this;\n }\n\n minLength(m: number) {\n this.addValidators(Validators.minLength(m));\n return this;\n }\n\n maxLength(m: number) {\n this.addValidators(Validators.maxLength(m));\n return this;\n }\n\n email() {\n this.addValidators(Validators.email);\n return this;\n }\n\n pattern(p: string | RegExp) {\n this.addValidators(Validators.pattern(p));\n return this;\n }\n\n patternOnlyChars() {\n this.addValidators(Validators.pattern(PATTERN_ONLY_CHARS));\n return this;\n }\n\n patternCharsWithSpace() {\n this.addValidators(Validators.pattern(PATTERN_CHARS_WITH_SPACE));\n return this;\n }\n\n patternOnlyDigits() {\n this.addValidators(Validators.pattern(PATTERN_ONLY_DIGITS));\n return this;\n }\n\n patternOnlyDigitsChars() {\n this.addValidators(Validators.pattern(PATTERN_ONLY_DIGITS_CHARS));\n return this;\n }\n\n patternOnlyDigitsCharsTire() {\n this.addValidators(Validators.pattern(PATTERN_ONLY_DIGITS_CHARS_TIRE));\n return this;\n }\n\n patternRefCategories() {\n this.addValidators(Validators.pattern(PATTERN_REF_CATEGORIES));\n return this;\n }\n\n phone() {\n this.addValidators(Validators.pattern(PATTERN_PHONE));\n return this;\n }\n}\n","import { WA_IS_IOS } from '@ng-web-apis/platform';\nimport {\n ChangeDetectionStrategy,\n Component,\n inject,\n input,\n OnInit,\n} from '@angular/core';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { TuiLabel, TuiInput } from '@taiga-ui/core';\nimport { TuiInputPhone } from '@taiga-ui/kit';\nimport { KeitControl } from './simple-control';\nimport { FieldValidation } from './validation';\n\n@Component({\n selector: 'keit-simple-phone-input-widget',\n imports: [\n ReactiveFormsModule,\n FormsModule,\n TuiInput,\n TuiLabel,\n TuiInputPhone,\n FieldValidation,\n ],\n template: `\n <tui-textfield [tuiTextfieldSize]=\"size()\">\n <label tuiLabel>Телефон</label>\n\n <input\n autocomplete=\"tel\"\n mask=\"+7 ### ###-##-##\"\n tuiInputPhone\n [attr.pattern]=\"pattern\"\n [formControl]=\"control()\"\n [readOnly]=\"readonly()\"\n />\n </tui-textfield>\n\n <keit-field-validation [control]=\"control()\" />\n `,\n styles: `\n :host {\n display: block;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimplePhoneInputWidget implements OnInit {\n protected readonly isIos = inject(WA_IS_IOS);\n\n readonly placeholder = input<string>();\n readonly readonly = input<boolean>(false);\n readonly control = input.required<KeitControl<string>>();\n readonly size = input<'s' | 'm' | 'l'>('s');\n\n ngOnInit(): void {\n const control = this.control();\n if (control instanceof KeitControl) {\n control.phone();\n }\n }\n\n protected get pattern(): string | null {\n return this.isIos ? '+[0-9-]{1,20}' : null;\n }\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport {\n TuiTextfieldComponent,\n TuiIcon,\n TuiLabel,\n TuiInput,\n} from '@taiga-ui/core';\nimport { FieldValidation } from './validation';\nimport { TuiPassword } from '@taiga-ui/kit';\nimport { KeitControl } from './simple-control';\n\n@Component({\n selector: 'keit-simple-password-input',\n imports: [\n FormsModule,\n ReactiveFormsModule,\n TuiTextfieldComponent,\n TuiInput,\n TuiLabel,\n TuiIcon,\n FieldValidation,\n TuiPassword,\n ],\n template: `\n <tui-textfield [tuiTextfieldSize]=\"size()\">\n <label tuiLabel>{{ placeholder() }}</label>\n <input\n type=\"password\"\n autocomplete=\"off\"\n tuiInput\n [placeholder]=\"placeholder()\"\n [formControl]=\"control()\"\n [readOnly]=\"readonly()\"\n autocomplete=\"new-password\"\n />\n <tui-icon tuiPassword />\n <keit-field-validation [control]=\"control()\" />\n </tui-textfield>\n `,\n styles: `\n :host {\n display: block;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimplePasswordInputWidget {\n readonly placeholder = input<string>();\n readonly control = input.required<KeitControl<string>>();\n readonly size = input<'s' | 'm' | 'l'>('m');\n readonly readonly = input<boolean>(false);\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n input,\n output,\n} from '@angular/core';\nimport { TuiButton, TuiIcon } from '@taiga-ui/core';\n\n@Component({\n selector: 'keit-simple-actions',\n imports: [TuiIcon, TuiButton],\n template: `\n <div class=\"actions\">\n <button\n tuiButton\n type=\"button\"\n appearance=\"primary\"\n [disabled]=\"disabled()\"\n [size]=\"size()\"\n (click)=\"acceptEvent.emit()\"\n >\n @if (primaryIcon()) {\n <tui-icon [icon]=\"primaryIcon() ?? ''\" />\n }\n\n {{ primaryCaption() }}\n </button>\n\n @if (hasSecondary()) {\n <button\n tuiButton\n type=\"button\"\n appearance=\"flat\"\n [size]=\"size()\"\n class=\"tui-form__button\"\n (click)=\"cancelEvent.emit()\"\n >\n @if (secondaryIcon()) {\n <tui-icon [icon]=\"secondaryIcon() ?? ''\" />\n }\n\n {{ secondaryCaption() }}\n </button>\n }\n </div>\n `,\n styles: `\n :host {\n display: flex;\n margin: 12px 0;\n justify-content: end;\n }\n\n .actions {\n display: flex;\n flex-direction: row-reverse;\n gap: 4px;\n justify-content: end;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimpleActionsWidget {\n readonly primaryIcon = input<string>();\n readonly secondaryIcon = input<string>();\n readonly disabled = input<boolean>();\n readonly primaryCaption = input<string>('Принять');\n readonly secondaryCaption = input<string>('Отмена');\n readonly hasSecondary = input<boolean>(true);\n readonly size = input<'s' | 'm' | 'l'>('m');\n readonly acceptEvent = output<void>();\n readonly cancelEvent = output<void>();\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport {\n TuiLabel,\n TuiIcon,\n TuiCalendar,\n TuiHint,\n TuiInput,\n} from '@taiga-ui/core';\nimport { TuiInputDateTime, TuiTooltip } from '@taiga-ui/kit';\nimport { KeitControl } from './simple-control';\n\n@Component({\n selector: 'keit-simple-date-input-widget',\n imports: [\n ReactiveFormsModule,\n FormsModule,\n TuiInput,\n TuiInputDateTime,\n TuiLabel,\n TuiIcon,\n TuiTooltip,\n TuiCalendar,\n TuiHint,\n ],\n template: `\n <tui-textfield\n [tuiTextfieldSize]=\"size()\"\n [tuiTextfieldCleaner]=\"cleaner() ?? false\"\n >\n <label tuiLabel>{{ placeholder() }}</label>\n <input\n tuiInputDateTime\n [placeholder]=\"sample()\"\n [formControl]=\"control()\"\n [readOnly]=\"readonly()\"\n />\n <tui-calendar *tuiDropdown />\n\n @if (iconRight()) {\n <tui-icon [icon]=\"iconRight()\" />\n }\n\n @if (hint()) {\n <tui-icon [tuiTooltip]=\"hint()\" tuiHintDirection=\"top-end\" />\n }\n </tui-textfield>\n `,\n styles: `\n :host {\n display: block;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimpleDateInputWidget {\n readonly placeholder = input<string>();\n readonly sample = input<string>('Введите...');\n readonly control = input.required<KeitControl<Date>>();\n readonly size = input<'s' | 'm' | 'l'>('m');\n readonly readonly = input<boolean>(false);\n readonly hint = input<string>('');\n readonly iconRight = input<string>('');\n readonly cleaner = input<boolean>();\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport {\n TuiLabel,\n TuiIcon,\n TuiCalendar,\n TuiHint,\n TuiInput,\n} from '@taiga-ui/core';\nimport { TuiInputDateTime, TuiTooltip } from '@taiga-ui/kit';\nimport { KeitControl } from './simple-control';\n\n@Component({\n selector: 'keit-simple-date-time-input-widget',\n imports: [\n ReactiveFormsModule,\n FormsModule,\n TuiInput,\n TuiInputDateTime,\n TuiLabel,\n TuiIcon,\n TuiTooltip,\n TuiCalendar,\n TuiHint,\n ],\n template: `\n <tui-textfield\n [tuiTextfieldSize]=\"size()\"\n [tuiTextfieldCleaner]=\"cleaner() ?? false\"\n >\n <label tuiLabel>{{ placeholder() }}</label>\n <input\n tuiInputDateTime\n [placeholder]=\"sample()\"\n [formControl]=\"control()\"\n [readOnly]=\"readonly()\"\n />\n <tui-calendar *tuiDropdown />\n @if (iconRight()) {\n <tui-icon [icon]=\"iconRight()\" />\n }\n\n @if (hint()) {\n <tui-icon [tuiTooltip]=\"hint()\" tuiHintDirection=\"top-end\" />\n }\n </tui-textfield>\n `,\n styles: `\n :host {\n display: block;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimpleDateTimeInputWidget {\n readonly placeholder = input<string>();\n readonly sample = input<string>('Введите...');\n readonly control = input.required<KeitControl<Date>>();\n readonly size = input<'s' | 'm' | 'l'>('m');\n readonly readonly = input<boolean>(false);\n readonly hint = input<string>('');\n readonly iconRight = input<string>('');\n readonly cleaner = input<boolean>();\n}\n","import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { TuiLabel, TuiIcon, TuiHint, TuiInput } from '@taiga-ui/core';\nimport { TuiCalendarRange, TuiInputDateRange, TuiTooltip } from '@taiga-ui/kit';\nimport { KeitControl } from './simple-control';\n\n@Component({\n selector: 'keit-simple-date-range-input-widget',\n imports: [\n ReactiveFormsModule,\n FormsModule,\n TuiInput,\n TuiInputDateRange,\n TuiLabel,\n TuiIcon,\n TuiTooltip,\n TuiCalendarRange,\n TuiHint,\n ],\n template: `\n <tui-textfield\n [tuiTextfieldSize]=\"size()\"\n [tuiTextfieldCleaner]=\"cleaner() ?? false\"\n >\n <label tuiLabel>{{ placeholder() }}</label>\n <input\n tuiInputDateRange\n [placeholder]=\"sample()\"\n [formControl]=\"control()\"\n [readOnly]=\"readonly()\"\n />\n <tui-calendar-range *tuiDropdown />\n\n @if (iconRight()) {\n <tui-icon [icon]=\"iconRight()\" />\n }\n\n @if (hint()) {\n <tui-icon [tuiTooltip]=\"hint()\" tuiHintDirection=\"top-end\" />\n }\n </tui-textfield>\n `,\n styles: `\n :host {\n display: block;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimpleDateRangeInputWidget {\n readonly placeholder = input<string>();\n readonly sample = input<string>('Введите...');\n readonly control = input.required<KeitControl<[Date, Date]>>();\n readonly size = input<'s' | 'm' | 'l'>('m');\n readonly readonly = input<boolean>(false);\n readonly hint = input<string>('');\n readonly iconRight = input<string>('');\n readonly cleaner = input<boolean>();\n}\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n input,\n} from '@angular/core';\nimport { TuiDay, TuiTime } from '@taiga-ui/cdk';\nimport { tuiInputDateTimeOptionsProvider } from '@taiga-ui/kit';\nimport { KeitControl } from './simple-control';\nimport { SimpleDateTimeInputWidget } from './simple-date-time-input.widget';\n\n@Component({\n selector: 'keit-simple-date-time-range-input-widget',\n imports: [SimpleDateTimeInputWidget],\n template: `\n <keit-simple-date-time-input-widget\n [placeholder]=\"startPlaceholder()\"\n [size]=\"size()\"\n [control]=\"startControl()\"\n />\n <keit-simple-date-time-input-widget\n [placeholder]=\"endPlaceholder()\"\n [size]=\"size()\"\n [control]=\"endControl()\"\n />\n `,\n styles: `\n :host {\n display: contents;\n }\n `,\n providers: [\n tuiInputDateTimeOptionsProvider({\n valueTransformer: {\n fromControlValue: (\n value: Date | null,\n ): [TuiDay, TuiTime | null] | null => {\n if (value?.toString() === 'Invalid Date') {\n return null;\n }\n return (\n value && [\n TuiDay.fromUtcNativeDate(value),\n new TuiTime(\n value.getUTCHours(),\n value.getUTCMinutes(),\n ),\n ]\n );\n },\n toControlValue: (\n value: [TuiDay, TuiTime | null] | null,\n ): Date | null => {\n const { hours = 0, minutes = 0 } = value?.[1] ?? {};\n return (\n value &&\n new Date(\n value[0]\n .toUtcNativeDate()\n .setUTCHours(hours, minutes),\n )\n );\n },\n },\n }),\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimpleDateTimeRangeInputWidget {\n readonly startPlaceholder = input<string>('Начало');\n readonly endPlaceholder = input<string>('Конец');\n readonly startControl = input.required<KeitControl<[TuiDay, TuiTime]>>();\n readonly endControl = input.required<KeitControl<[TuiDay, TuiTime]>>();\n readonly size = input<'s' | 'm' | 'l'>('m');\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n input,\n output,\n} from '@angular/core';\nimport {\n TuiTablePagination,\n TuiTablePaginationEvent,\n tuiTablePaginationOptionsProvider,\n} from '@taiga-ui/addon-table';\n\n@Component({\n selector: 'keit-simple-pagination',\n imports: [TuiTablePagination],\n template: `\n <tui-table-pagination\n [page]=\"page()\"\n [size]=\"size()\"\n [total]=\"total()\"\n (paginationChange)=\"paginationChange.emit($event)\"\n />\n `,\n styles: `\n :host {\n display: block;\n padding: 16px;\n }\n `,\n providers: [tuiTablePaginationOptionsProvider({ showPages: false })],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimplePaginationWidget {\n readonly page = input.required<number>();\n readonly size = input.required<number>();\n readonly total = input.required<number>();\n readonly paginationChange = output<TuiTablePaginationEvent>();\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n input,\n output,\n effect,\n inject,\n signal,\n PLATFORM_ID,\n} from '@angular/core';\nimport { isPlatformBrowser } from '@angular/common';\nimport { TuiNotification, TuiButton } from '@taiga-ui/core';\nimport { SimpleButtonWidget } from './simple-button.widget';\n\n@Component({\n selector: 'keit-notification-widget',\n imports: [TuiNotification, TuiButton, SimpleButtonWidget],\n template: `\n @if (shouldShow()) {\n <!-- TODO: (Taiga UI migration) [appearance] binding uses a dynamic expression. If it can produce \"error\"/\"success\"/\"glass\", replace with \"negative\"/\"positive\"/\"secondary-grayscale\" -->\n <div tuiNotification [size]=\"size()\" [appearance]=\"appearance()\">\n <p class=\"text\"><ng-content></ng-content></p>\n @if (hideable()) {\n <!-- TODO: (Taiga UI migration) [appearance] binding uses a dynamic expression. If it can produce \"error\"/\"success\"/\"glass\", replace with \"negative\"/\"positive\"/\"secondary-grayscale\" -->\n <keit-simple-button\n [appearance]=\"hideButtonAppearance()\"\n [size]=\"hideButtonSize()\"\n [caption]=\"hideButtonLabel()\"\n (action)=\"hideForever()\"\n />\n }\n @if (closable()) {\n <button\n iconStart=\"@tui.x\"\n tuiIconButton\n type=\"button\"\n (click)=\"shouldShow.set(false)\"\n >\n {{ closeLabel() }}\n </button>\n }\n </div>\n }\n `,\n styles: `\n :host {\n display: block;\n margin-bottom: 8px;\n }\n\n .text {\n font-size: 12px;\n padding: 8px 8px 0 8px;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NotificationWidget {\n private readonly platformId = inject(PLATFORM_ID);\n\n readonly size = input<'s' | 'm' | 'l'>('l');\n readonly appearance = input<\n 'error' | 'warning' | 'info' | 'success' | 'neutral'\n >('info');\n readonly closable = input<boolean>(true);\n readonly closeLabel = input<string>('Close');\n readonly closeEvent = output<void>();\n\n readonly hideable = input<boolean>(false);\n readonly hideButtonLabel = input<string>('Больше не показывать');\n readonly hideButtonAppearance = input<\n 'primary' | 'secondary' | 'flat' | 'accent'\n >('flat');\n readonly hideButtonSize = input<'xs' | 's' | 'm' | 'l'>('s');\n readonly storageKey = input<string | undefined>();\n\n readonly shouldShow = signal(true);\n\n constructor() {\n effect(() => {\n const key = this.storageKey();\n if (key && isPlatformBrowser(this.platformId)) {\n const hidden = localStorage.getItem(`notification-hide-${key}`);\n this.shouldShow.set(!hidden);\n }\n });\n }\n\n hideForever() {\n const key = this.storageKey();\n if (key && isPlatformBrowser(this.platformId)) {\n localStorage.setItem(`notification-hide-${key}`, 'true');\n this.shouldShow.set(false);\n }\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n input,\n output,\n OnInit,\n effect,\n WritableSignal,\n signal,\n} from '@angular/core';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\nimport { TuiBooleanHandler, TuiDay, TuiHandler, TuiMonth } from '@taiga-ui/cdk';\nimport {\n TuiCalendar,\n tuiCalendarOptionsProvider,\n TuiMarkerHandler,\n} from '@taiga-ui/core';\n\n@Component({\n selector: 'keit-simple-calendar-widget',\n imports: [ReactiveFormsModule, FormsModule, TuiCalendar],\n template: `\n <tui-calendar\n [markerHandler]=\"this.markerConditionFn()\"\n [month]=\"selectedMonth\"\n [showAdjacent]=\"false\"\n [value]=\"value\"\n [(hoveredItem)]=\"hoveredItem\"\n (dayClick)=\"onDayClick($event)\"\n (monthChange)=\"onMonthChange($event)\"\n [disabledItemHandler]=\"disabledDayesHandler\"\n />\n `,\n styles: `\n :host {\n display: block;\n }\n\n ::ng-deep tui-calendar-sheet [data-type='event']::before {\n background-color: #85bd84;\n border: 2px dotted black;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class SimpleCalendarWidget implements OnInit {\n readonly markerConditionFn = input<TuiMarkerHandler | null>(null);\n readonly specificDayes = input<TuiDay[]>([]);\n readonly initialMonth = input<TuiMonth | null>(null);\n readonly initialDay = input<TuiDay | null>(null);\n\n readonly selectDay = output<TuiDay>();\n readonly selectMonth = output<TuiMonth>();\n\n protected value: TuiDay | null = null;\n protected selectedMonth = TuiMonth.currentLocal();\n protected hoveredItem: TuiDay | null = null;\n\n protected readonly disabledDayesHandler: TuiBooleanHandler<TuiDay> = (\n day,\n ) => {\n return !this.specificDayes().some(\n (specificDay) =>\n specificDay.year === day.year &&\n specificDay.month === day.month &&\n specificDay.day === day.day,\n );\n };\n\n ngOnInit(): void {\n const initialMonth = this.initialMonth();\n if (initialMonth) {\n this.selectedMonth = initialMonth;\n this.value = new TuiDay(\n this.selectedMonth.year,\n this.selectedMonth.month,\n 1,\n );\n }\n\n const initialDay = this.initialDay();\n if (initialDay) {\n this.value = initialDay;\n }\n }\n\n protected onDayClick(day: TuiDay): void {\n this.value = day;\n this.selectDay.emit(day);\n }\n\n protected onMonthChange(month: TuiMonth): void {\n this.selectedMonth = month;\n this.selectMonth.emit(month);\n this.value = new TuiDay(month.year, month.month, 1);\n this.selectDay.emit(this.value);\n }\n}\n","/*\n * Public API Surface of widgets\n */\n\nexport * from './lib/login-input.widget';\nexport * from './lib/password-input.widget';\nexport * from './lib/simple-button.widget';\nexport * from './lib/email-input.widget';\nexport * from './lib/simple-select.widget';\nexport * from './lib/simple-combo.widget';\nexport * from './lib/simple-number-input.widget';\nexport * from './lib/simple-input.widget';\nexport * from './lib/simple-textarea.widget';\nexport * from './lib/simple-copy-input.widget';\nexport * from './lib/simple-phone-input.widget';\nexport * from './lib/simple-control';\nexport * from './lib/simple-password-input.widget';\nexport * from './lib/simple-actions.widget';\nexport * from './lib/simple-date-input.widget';\nexport * from './lib/simple-date-time-input.widget';\nexport * from './lib/simple-date-range-input.widget';\nexport * from './lib/simple-date-time-range-input.widget';\nexport * from './lib/simple-pagination.widget';\nexport * from './lib/notification.widget';\nexport * from './lib/simple-calendar.widget';\nexport * from './lib/constants';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2","i3","i4","i5","i6","i1"],"mappings":"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"}