@taiga-ui/core 4.52.0-canary.eb5ffe3 → 4.52.0-canary.ec0802b
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.
- package/README.md +1 -1
- package/classes/accessors.d.ts +1 -1
- package/components/calendar/calendar-sheet.options.d.ts +1 -3
- package/components/data-list/data-list.component.d.ts +6 -8
- package/components/data-list/opt-group.directive.d.ts +2 -2
- package/components/data-list/option/option.directive.d.ts +5 -6
- package/components/dialog/dialog.component.d.ts +2 -3
- package/components/dialog/dialog.directive.d.ts +4 -3
- package/components/dialog/dialog.options.d.ts +2 -3
- package/components/dialog/dialog.providers.d.ts +1 -2
- package/components/dialog/dialog.service.d.ts +5 -2
- package/components/dialog/index.d.ts +0 -1
- package/components/index.d.ts +1 -2
- package/components/link/link.directive.d.ts +2 -2
- package/components/link/link.options.d.ts +1 -3
- package/components/loader/loader.component.d.ts +7 -7
- package/components/loader/loader.options.d.ts +1 -3
- package/components/modal/index.d.ts +2 -0
- package/components/modal/modal.component.d.ts +17 -0
- package/components/modal/modal.service.d.ts +13 -0
- package/components/notification/index.d.ts +3 -0
- package/components/notification/notification.component.d.ts +14 -0
- package/components/notification/notification.d.ts +3 -0
- package/components/notification/notification.directive.d.ts +7 -12
- package/components/notification/notification.options.d.ts +9 -7
- package/components/notification/notification.service.d.ts +17 -0
- package/components/root/root.component.d.ts +1 -1
- package/components/scrollbar/scroll-into-view.directive.d.ts +3 -2
- package/components/scrollbar/scrollbar.component.d.ts +2 -2
- package/components/scrollbar/scrollbar.directive.d.ts +2 -2
- package/components/spin-button/spin-button.component.d.ts +7 -8
- package/components/textfield/textfield-multi/textfield-multi.component.d.ts +2 -2
- package/components/textfield/textfield.component.d.ts +3 -4
- package/components/textfield/textfield.directive.d.ts +9 -12
- package/directives/{notification/notification.directive.d.ts → alert/alert.directive.d.ts} +3 -3
- package/directives/{notification/notification.service.d.ts → alert/alert.service.d.ts} +3 -3
- package/directives/alert/index.d.ts +2 -0
- package/directives/date-format/date-format.directive.d.ts +3 -7
- package/directives/dropdown/dropdown-hover.options.d.ts +1 -3
- package/directives/dropdown/dropdown-position.directive.d.ts +1 -1
- package/directives/group/group.options.d.ts +1 -3
- package/directives/index.d.ts +1 -1
- package/directives/number-format/number-format.directive.d.ts +3 -7
- package/fesm2022/taiga-ui-core-classes.mjs +1 -1
- package/fesm2022/taiga-ui-core-classes.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-calendar.mjs +9 -15
- package/fesm2022/taiga-ui-core-components-calendar.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-data-list.mjs +36 -70
- package/fesm2022/taiga-ui-core-components-data-list.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-dialog.mjs +33 -90
- package/fesm2022/taiga-ui-core-components-dialog.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-icon.mjs +1 -2
- package/fesm2022/taiga-ui-core-components-icon.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-link.mjs +10 -16
- package/fesm2022/taiga-ui-core-components-link.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-loader.mjs +14 -32
- package/fesm2022/taiga-ui-core-components-loader.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-modal.mjs +89 -0
- package/fesm2022/taiga-ui-core-components-modal.mjs.map +1 -0
- package/fesm2022/taiga-ui-core-components-notification.mjs +98 -41
- package/fesm2022/taiga-ui-core-components-notification.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-root.mjs +5 -7
- package/fesm2022/taiga-ui-core-components-root.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-scrollbar.mjs +35 -43
- package/fesm2022/taiga-ui-core-components-scrollbar.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-spin-button.mjs +12 -24
- package/fesm2022/taiga-ui-core-components-spin-button.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components-textfield.mjs +38 -75
- package/fesm2022/taiga-ui-core-components-textfield.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-components.mjs +1 -2
- package/fesm2022/taiga-ui-core-components.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-directives-alert.mjs +73 -0
- package/fesm2022/taiga-ui-core-directives-alert.mjs.map +1 -0
- package/fesm2022/taiga-ui-core-directives-appearance.mjs +0 -1
- package/fesm2022/taiga-ui-core-directives-appearance.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-directives-date-format.mjs +24 -18
- package/fesm2022/taiga-ui-core-directives-date-format.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-directives-dropdown.mjs +18 -45
- package/fesm2022/taiga-ui-core-directives-dropdown.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-directives-group.mjs +4 -8
- package/fesm2022/taiga-ui-core-directives-group.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-directives-hint.mjs +5 -8
- package/fesm2022/taiga-ui-core-directives-hint.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-directives-icons.mjs +0 -1
- package/fesm2022/taiga-ui-core-directives-icons.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-directives-items-handlers.mjs +0 -3
- package/fesm2022/taiga-ui-core-directives-items-handlers.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-directives-number-format.mjs +30 -18
- package/fesm2022/taiga-ui-core-directives-number-format.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-directives-popup.mjs +2 -2
- package/fesm2022/taiga-ui-core-directives-popup.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-directives.mjs +1 -1
- package/fesm2022/taiga-ui-core-pipes-auto-color.mjs +0 -1
- package/fesm2022/taiga-ui-core-pipes-auto-color.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-pipes-calendar-sheet.mjs +0 -1
- package/fesm2022/taiga-ui-core-pipes-calendar-sheet.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-pipes-flag.mjs +0 -1
- package/fesm2022/taiga-ui-core-pipes-flag.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-pipes-format-date.mjs +0 -1
- package/fesm2022/taiga-ui-core-pipes-format-date.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-pipes-format-number.mjs +21 -12
- package/fesm2022/taiga-ui-core-pipes-format-number.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-pipes-initials.mjs +0 -1
- package/fesm2022/taiga-ui-core-pipes-initials.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-pipes-month.mjs +0 -1
- package/fesm2022/taiga-ui-core-pipes-month.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-pipes-order-week-days.mjs +0 -1
- package/fesm2022/taiga-ui-core-pipes-order-week-days.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-tokens.mjs +21 -15
- package/fesm2022/taiga-ui-core-tokens.mjs.map +1 -1
- package/fesm2022/taiga-ui-core-utils-format.mjs +1 -0
- package/fesm2022/taiga-ui-core-utils-format.mjs.map +1 -1
- package/package.json +13 -14
- package/pipes/format-number/format-number.pipe.d.ts +5 -3
- package/styles/components/link.less +1 -0
- package/styles/mixins/appearance.less +1 -1
- package/styles/mixins/mixins.less +0 -5
- package/styles/mixins/mixins.scss +0 -5
- package/styles/theme/variables.less +2 -4
- package/tokens/common-icons.d.ts +1 -3
- package/tokens/date-format.d.ts +2 -3
- package/tokens/number-format.d.ts +2 -3
- package/components/alert/alert.component.d.ts +0 -14
- package/components/alert/alert.directive.d.ts +0 -8
- package/components/alert/alert.interfaces.d.ts +0 -13
- package/components/alert/alert.service.d.ts +0 -11
- package/components/alert/alert.tokens.d.ts +0 -6
- package/components/alert/index.d.ts +0 -5
- package/components/dialog/active-zone-adapter.directive.d.ts +0 -11
- package/components/dialog/dialogs.component.d.ts +0 -8
- package/components/header/header.directive.d.ts +0 -17
- package/components/header/index.d.ts +0 -1
- package/directives/notification/index.d.ts +0 -2
- package/fesm2022/taiga-ui-core-components-alert.mjs +0 -110
- package/fesm2022/taiga-ui-core-components-alert.mjs.map +0 -1
- package/fesm2022/taiga-ui-core-components-header.mjs +0 -42
- package/fesm2022/taiga-ui-core-components-header.mjs.map +0 -1
- package/fesm2022/taiga-ui-core-directives-notification.mjs +0 -73
- package/fesm2022/taiga-ui-core-directives-notification.mjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-core-components-textfield.mjs","sources":["../../../projects/core/components/textfield/select-like.directive.ts","../../../projects/core/components/textfield/textfield.options.ts","../../../projects/core/components/textfield/textfield-accessor.ts","../../../projects/core/components/textfield/textfield.directive.ts","../../../projects/core/components/textfield/textfield.component.ts","../../../projects/core/components/textfield/textfield.template.html","../../../projects/core/components/textfield/textfield-multi/textfield-item.component.ts","../../../projects/core/components/textfield/textfield-multi/textfield-multi.component.ts","../../../projects/core/components/textfield/textfield-multi/textfield-multi.template.html","../../../projects/core/components/textfield/textfield.ts","../../../projects/core/components/textfield/textfield-auxiliary.ts","../../../projects/core/components/textfield/textfield-content.directive.ts","../../../projects/core/components/textfield/textfield-icon.ts","../../../projects/core/components/textfield/with-native-picker.directive.ts","../../../projects/core/components/textfield/taiga-ui-core-components-textfield.ts"],"sourcesContent":["import {Directive, inject} from '@angular/core';\nimport {TUI_IS_ANDROID} from '@taiga-ui/cdk/tokens';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\n\n@Directive({\n standalone: true,\n selector: '[tuiSelectLike]',\n host: {\n tuiSelectLike: '',\n inputmode: 'none',\n spellcheck: 'false',\n autocomplete: 'off',\n // Click on cleaner icon does not trigger `beforeinput` event --> handle all kind of deletion in input event\n '(beforeinput)': '$event.inputType.includes(\"delete\") || $event.preventDefault()',\n '(input.capture)': '$event.inputType?.includes(\"delete\") && clear()',\n // Hide Android text select handle (bubble marker below transparent caret)\n '(mousedown)': 'prevent($event)',\n },\n})\nexport class TuiSelectLike {\n private readonly el = tuiInjectElement<HTMLInputElement>();\n private readonly isAndroid = inject(TUI_IS_ANDROID);\n\n protected clear(): void {\n this.el.value = '';\n }\n\n protected prevent(event: MouseEvent): void {\n if (!this.isAndroid) {\n return;\n }\n\n event.preventDefault();\n this.el.focus();\n }\n}\n","import {\n Directive,\n inject,\n InjectionToken,\n input,\n Optional,\n type Provider,\n type Signal,\n signal,\n SkipSelf,\n} from '@angular/core';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {type TuiSizeL, type TuiSizeS} from '@taiga-ui/core/types';\n\nconst DEFAULT = {appearance: 'textfield', size: 'l', cleaner: true} as const;\n\nexport interface TuiTextfieldOptions {\n readonly appearance: Signal<string>;\n readonly size: Signal<TuiSizeL | TuiSizeS>;\n readonly cleaner: Signal<boolean>;\n}\n\nexport const TUI_TEXTFIELD_OPTIONS = new InjectionToken<TuiTextfieldOptions>(\n ngDevMode ? 'TUI_TEXTFIELD_OPTIONS' : '',\n {\n factory: () => ({\n appearance: signal(DEFAULT.appearance),\n size: signal(DEFAULT.size),\n cleaner: signal(DEFAULT.cleaner),\n }),\n },\n);\n\nexport function tuiTextfieldOptionsProvider(\n options: Partial<TuiTextfieldOptions>,\n): Provider {\n return {\n provide: TUI_TEXTFIELD_OPTIONS,\n deps: [[new Optional(), new SkipSelf(), TUI_TEXTFIELD_OPTIONS]],\n useFactory: (parent: TuiTextfieldOptions | null) => ({\n appearance: signal(parent?.appearance() ?? DEFAULT.appearance),\n size: signal(parent?.size() ?? DEFAULT.size),\n cleaner: signal(parent?.cleaner() ?? DEFAULT.cleaner),\n ...options,\n }),\n };\n}\n\n@Directive({\n standalone: true,\n selector: '[tuiTextfieldAppearance],[tuiTextfieldSize],[tuiTextfieldCleaner]',\n providers: [tuiProvide(TUI_TEXTFIELD_OPTIONS, TuiTextfieldOptionsDirective)],\n})\nexport class TuiTextfieldOptionsDirective implements TuiTextfieldOptions {\n private readonly options = inject(TUI_TEXTFIELD_OPTIONS, {skipSelf: true});\n\n public readonly appearance = input(this.options.appearance(), {\n alias: 'tuiTextfieldAppearance',\n });\n\n public readonly size = input(this.options.size(), {\n alias: 'tuiTextfieldSize',\n transform: (size: TuiSizeL | TuiSizeS | ''): TuiSizeL | TuiSizeS =>\n size || DEFAULT.size,\n });\n\n public readonly cleaner = input(this.options.cleaner(), {\n alias: 'tuiTextfieldCleaner',\n });\n}\n","import {InjectionToken, type Provider, type Type} from '@angular/core';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/miscellaneous';\n\nexport interface TuiTextfieldAccessor<T = unknown> {\n setValue(value: T | T[] | null): void;\n}\n\nexport const TUI_TEXTFIELD_ACCESSOR = new InjectionToken<TuiTextfieldAccessor>(\n ngDevMode ? 'TUI_TEXTFIELD_ACCESSOR' : '',\n);\n\nexport function tuiAsTextfieldAccessor(accessor: Type<TuiTextfieldAccessor>): Provider {\n return tuiProvide(TUI_TEXTFIELD_ACCESSOR, accessor);\n}\n","import {computed, Directive, inject, Input, type OnChanges, signal} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {TuiNativeValidator} from '@taiga-ui/cdk/directives/native-validator';\nimport {tuiInjectElement, tuiValue} from '@taiga-ui/cdk/utils/dom';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {\n TuiAppearance,\n tuiAppearance,\n tuiAppearanceFocus,\n tuiAppearanceMode,\n tuiAppearanceState,\n} from '@taiga-ui/core/directives/appearance';\nimport {\n TUI_ITEMS_HANDLERS,\n type TuiItemsHandlers,\n} from '@taiga-ui/core/directives/items-handlers';\nimport {type TuiInteractiveState} from '@taiga-ui/core/types';\n\nimport {TuiTextfieldComponent} from './textfield.component';\nimport {TUI_TEXTFIELD_OPTIONS} from './textfield.options';\nimport {tuiAsTextfieldAccessor, type TuiTextfieldAccessor} from './textfield-accessor';\n\n// TODO: Drop in v5 after updated Angular and hostDirectives inherit\n@Directive({\n standalone: true,\n providers: [tuiAsTextfieldAccessor(TuiTextfieldBase)],\n host: {\n tuiTextfield: '',\n '[id]': 'textfield.id',\n '[readOnly]': 'readOnly',\n '[class._empty]': 'value() === \"\"',\n '(input)': '0',\n '(focusin)': '0',\n '(focusout)': '0',\n },\n})\nexport class TuiTextfieldBase<T> implements OnChanges, TuiTextfieldAccessor<T> {\n // TODO: refactor to signal inputs after Angular update\n private readonly focused = signal<boolean | null>(null);\n\n protected readonly control = inject(NgControl, {optional: true});\n protected readonly a = tuiAppearance(inject(TUI_TEXTFIELD_OPTIONS).appearance, {});\n protected readonly s = tuiAppearanceState(null, {});\n protected readonly m = tuiAppearanceMode(this.mode, {});\n protected readonly f = tuiAppearanceFocus(\n computed(() => this.focused() ?? this.textfield.focused()),\n {},\n );\n\n protected readonly el = tuiInjectElement<HTMLInputElement>();\n protected readonly handlers: TuiItemsHandlers<T> = inject(TUI_ITEMS_HANDLERS);\n protected readonly textfield: TuiTextfieldComponent<T> =\n inject(TuiTextfieldComponent);\n\n @Input()\n public readOnly = false;\n\n @Input()\n public invalid: boolean | null = null;\n\n public readonly value = tuiValue(this.el);\n\n @Input('focused')\n public set focusedSetter(focused: boolean | null) {\n this.focused.set(focused);\n }\n\n @Input('state')\n public set stateSetter(state: TuiInteractiveState | null) {\n this.s.set(state);\n }\n\n public get mode(): string | null {\n if (this.readOnly) {\n return 'readonly';\n }\n\n if (this.invalid === false) {\n return 'valid';\n }\n\n if (this.invalid) {\n return 'invalid';\n }\n\n return null;\n }\n\n // TODO: refactor to signal inputs after Angular update\n public ngOnChanges(): void {\n this.m.set(this.mode);\n }\n\n public setValue(value: T | null): void {\n this.el.focus();\n this.el.select();\n\n if (value == null) {\n this.el.ownerDocument.execCommand('delete');\n\n // see https://github.com/taiga-family/taiga-ui/issues/11634\n // ensure non-erasable affixes actually deleted\n this.el.value = '';\n } else {\n this.el.ownerDocument.execCommand(\n 'insertText',\n false,\n this.handlers.stringify()(value),\n );\n }\n }\n}\n\n@Directive({\n standalone: true,\n selector: 'input[tuiTextfield]',\n providers: [\n tuiAsTextfieldAccessor(TuiTextfieldDirective),\n tuiProvide(TuiTextfieldBase, TuiTextfieldDirective),\n ],\n hostDirectives: [TuiNativeValidator, TuiAppearance],\n})\nexport class TuiTextfieldDirective<T> extends TuiTextfieldBase<T> {}\n\n@Directive({\n standalone: true,\n hostDirectives: [\n {\n directive: TuiTextfieldDirective,\n inputs: ['invalid', 'focused', 'readOnly', 'state'],\n },\n ],\n})\nexport class TuiWithTextfield {}\n","import {AsyncPipe} from '@angular/common';\nimport {\n type AfterContentChecked,\n ChangeDetectionStrategy,\n Component,\n computed,\n ContentChild,\n ContentChildren,\n Directive,\n ElementRef,\n forwardRef,\n inject,\n Input,\n type QueryList,\n signal,\n ViewChild,\n ViewContainerRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport {toSignal} from '@angular/core/rxjs-interop';\nimport {NgControl} from '@angular/forms';\nimport {WaResizeObserver} from '@ng-web-apis/resize-observer';\nimport {TuiControl} from '@taiga-ui/cdk/classes';\nimport {EMPTY_QUERY} from '@taiga-ui/cdk/constants';\nimport {TuiTransitioned} from '@taiga-ui/cdk/directives/transitioned';\nimport {tuiQueryListChanges} from '@taiga-ui/cdk/observables';\nimport {tuiInjectId} from '@taiga-ui/cdk/services';\nimport {type TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiInjectElement, tuiValue} from '@taiga-ui/cdk/utils/dom';\nimport {tuiFocusedIn} from '@taiga-ui/cdk/utils/focus';\nimport {tuiPx} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiButton, tuiButtonOptionsProvider} from '@taiga-ui/core/components/button';\nimport {\n tuiAsDataListHost,\n type TuiDataListHost,\n TuiWithOptionContent,\n} from '@taiga-ui/core/components/data-list';\nimport {TuiLabel} from '@taiga-ui/core/components/label';\nimport {\n TuiDropdownDirective,\n TuiDropdownFixed,\n TuiDropdownOpen,\n tuiDropdownOpen,\n TuiWithDropdownOpen,\n} from '@taiga-ui/core/directives/dropdown';\nimport {TuiWithIcons} from '@taiga-ui/core/directives/icons';\nimport {TuiWithItemsHandlers} from '@taiga-ui/core/directives/items-handlers';\nimport {TUI_AUXILIARY, TUI_CLEAR_WORD, TUI_COMMON_ICONS} from '@taiga-ui/core/tokens';\nimport {type TuiSizeL, type TuiSizeS} from '@taiga-ui/core/types';\nimport {type PolymorpheusContent, PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\nimport {ReplaySubject, startWith, switchMap, take} from 'rxjs';\n\nimport {TuiTextfieldBase} from './textfield.directive';\nimport {TUI_TEXTFIELD_OPTIONS} from './textfield.options';\nimport {TUI_TEXTFIELD_ACCESSOR, type TuiTextfieldAccessor} from './textfield-accessor';\n\n// TODO: Remove base class in v5\n@Directive()\nexport class TuiTextfieldBaseComponent<T>\n implements TuiDataListHost<T>, AfterContentChecked\n{\n // TODO: refactor to signal inputs after Angular update\n private readonly filler = signal('');\n private readonly autoId = tuiInjectId();\n private readonly focusedIn = tuiFocusedIn(tuiInjectElement());\n private readonly contentReady$ = new ReplaySubject<boolean>(1);\n private readonly inputQuery = signal<ElementRef<HTMLInputElement> | undefined>(\n undefined,\n );\n\n @ViewChild('ghost')\n protected readonly ghost?: ElementRef<HTMLElement>;\n\n @ContentChild(forwardRef(() => TuiLabel), {read: ElementRef})\n protected readonly label?: ElementRef<HTMLElement>;\n\n @ContentChildren(TUI_AUXILIARY, {descendants: true})\n protected readonly auxiliaryQuery: QueryList<object> = EMPTY_QUERY;\n\n // TODO: Added just to avoid breaking anything until we refactor to signal queries\n @ContentChild(forwardRef(() => TuiTextfieldBase), {read: ElementRef})\n // eslint-disable-next-line @typescript-eslint/naming-convention\n protected readonly _input?: ElementRef<HTMLInputElement>;\n\n protected readonly open = tuiDropdownOpen();\n protected readonly dropdown = inject(TuiDropdownDirective);\n protected readonly dropdownOpen = inject(TuiDropdownOpen);\n\n protected readonly icons = inject(TUI_COMMON_ICONS);\n protected readonly clear = inject(TUI_CLEAR_WORD);\n\n protected readonly computedFiller = computed((value = this.value()) => {\n const filler = value + this.filler().slice(value.length);\n\n return filler.length > value.length ? filler : '';\n });\n\n protected readonly showFiller = computed<boolean>(\n () =>\n this.focused() &&\n !!this.computedFiller() &&\n (!!this.value() || !this.input?.nativeElement.placeholder),\n );\n\n @ViewChild('vcr', {read: ViewContainerRef, static: true})\n public readonly vcr?: ViewContainerRef;\n\n @ContentChild(TUI_TEXTFIELD_ACCESSOR, {descendants: true})\n public readonly accessor?: TuiTextfieldAccessor<T>;\n\n @ContentChild(NgControl)\n public readonly control?: NgControl;\n\n @ContentChild(TuiControl)\n public readonly cva?: TuiControl<unknown>;\n\n // TODO: Replace with signal query when Angular is updated v5\n @ContentChild(forwardRef(() => TuiTextfieldBase), {\n read: ElementRef,\n static: true,\n })\n public readonly input?: ElementRef<HTMLInputElement>;\n\n @Input()\n public content: PolymorpheusContent<TuiContext<T>>;\n\n public readonly focused = computed(() => this.open() || this.focusedIn());\n public readonly options = inject(TUI_TEXTFIELD_OPTIONS);\n public readonly el = tuiInjectElement();\n public readonly value = tuiValue(this.inputQuery);\n\n // TODO: Refactor to signal queries when Angular is updated\n public readonly auxiliaries = toSignal<readonly object[]>(\n this.contentReady$.pipe(\n take(1),\n switchMap(() => tuiQueryListChanges(this.auxiliaryQuery)),\n startWith([]),\n ),\n {requireSync: true},\n );\n\n @Input('filler')\n public set fillerSetter(filler: string) {\n this.filler.set(filler);\n }\n\n public get id(): string {\n return this.input?.nativeElement.id || this.autoId;\n }\n\n public get size(): TuiSizeL | TuiSizeS {\n return this.options.size();\n }\n\n public ngAfterContentChecked(): void {\n this.contentReady$.next(true);\n this.inputQuery.set(this._input);\n }\n\n public handleOption(option: T): void {\n this.accessor?.setValue(option);\n this.open.set(false);\n }\n\n protected get hasLabel(): boolean {\n return Boolean(this.label?.nativeElement?.childNodes.length);\n }\n\n protected onResize({contentRect}: ResizeObserverEntry): void {\n this.el.style.setProperty('--t-side', tuiPx(contentRect.width));\n }\n\n // Click on ::before,::after pseudo-elements ([iconStart] / [iconEnd])\n protected onIconClick(): void {\n this.input?.nativeElement.focus();\n\n if (\n !this.dropdownOpen.tuiDropdownEnabled ||\n this.input?.nativeElement.matches('input:read-only,textarea:read-only')\n ) {\n return;\n }\n\n this.open.update((open) => !open);\n\n try {\n this.input?.nativeElement.showPicker?.();\n } catch {\n // Empty catch block - silently ignore showPicker errors\n }\n }\n\n protected onScroll(element: HTMLElement): void {\n if (this.input?.nativeElement === element) {\n this.ghost?.nativeElement.scrollTo({\n left: this.input.nativeElement.scrollLeft,\n });\n }\n }\n}\n\n@Component({\n selector: 'tui-textfield:not([multi])',\n imports: [AsyncPipe, PolymorpheusOutlet, TuiButton, WaResizeObserver],\n templateUrl: './textfield.template.html',\n styles: '@import \"@taiga-ui/core/styles/components/textfield.less\";',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiButtonOptionsProvider({size: 'xs', appearance: 'icon'}),\n tuiAsDataListHost(TuiTextfieldComponent),\n ],\n hostDirectives: [\n TuiDropdownDirective,\n TuiDropdownFixed,\n TuiTransitioned,\n TuiWithDropdownOpen,\n TuiWithIcons,\n TuiWithItemsHandlers,\n TuiWithOptionContent,\n ],\n host: {\n '[attr.data-size]': 'options.size()',\n '[class._with-label]': 'hasLabel',\n '[class._with-template]': 'content && control?.value != null',\n '[class._disabled]': 'input?.nativeElement?.disabled',\n '(click.self.prevent)': '0',\n '(pointerdown.self.prevent)': 'onIconClick()',\n '(scroll.capture.zoneless)': 'onScroll($event.target)',\n '(tuiActiveZoneChange)': '!$event && cva?.onTouched()',\n },\n})\nexport class TuiTextfieldComponent<T> extends TuiTextfieldBaseComponent<T> {}\n","@if (control?.control?.valueChanges | async) {}\n<ng-content select=\"input\" />\n<ng-content select=\"select\" />\n<ng-content select=\"textarea\" />\n<ng-content select=\"label\" />\n<span\n class=\"t-content\"\n (pointerdown.prevent)=\"input?.nativeElement?.focus()\"\n (waResizeObserver)=\"$event[0] && onResize($event[0])\"\n>\n <ng-content />\n <ng-container #vcr />\n @if (options.cleaner()) {\n <button\n appearance=\"icon\"\n size=\"xs\"\n tabindex=\"-1\"\n tuiIconButton\n type=\"button\"\n class=\"t-clear\"\n [iconStart]=\"icons.close\"\n (click)=\"accessor?.setValue(null)\"\n (pointerdown.zoneless.prevent)=\"input?.nativeElement?.focus()\"\n >\n {{ clear() }}\n </button>\n }\n <ng-content select=\"tui-icon\" />\n</span>\n@if (control?.value != null) {\n <span class=\"t-template\">\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: control?.value}\">\n {{ text }}\n </ng-container>\n </span>\n}\n@if (showFiller()) {\n <input\n #ghost\n aria-hidden=\"true\"\n disabled\n class=\"t-filler\"\n [value]=\"computedFiller()\"\n />\n}\n","import {ChangeDetectionStrategy, Component, inject} from '@angular/core';\nimport {type TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {TUI_ITEMS_HANDLERS} from '@taiga-ui/core/directives/items-handlers';\nimport {\n injectContext,\n type PolymorpheusContent,\n PolymorpheusOutlet,\n} from '@taiga-ui/polymorpheus';\n\nimport {TuiTextfieldMultiComponent} from './textfield-multi.component';\n\nexport interface TuiTextfieldItem<T> {\n readonly item: T;\n readonly index: number;\n}\n\n/*\n * Internal wrapper for polymorpheus-context\n */\n@Component({\n selector: 'tui-textfield-item',\n imports: [PolymorpheusOutlet],\n template:\n '<ng-container *polymorpheusOutlet=\"content as text; context: context\">{{ text }}</ng-container>',\n styleUrl: './textfield-item.style.less',\n // TODO: Set to OnPush in v5 when textfield.item becomes a signal\n // eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection\n changeDetection: ChangeDetectionStrategy.Default,\n host: {\n '[class._string]': '!textfield.item',\n '[class._disabled]': 'handlers.disabledItemHandler()(context.$implicit.item)',\n '(pointerdown.self.prevent)': '0',\n '(keydown.arrowLeft.prevent)': 'el.previousElementSibling?.firstChild?.focus()',\n '(keydown.arrowRight.prevent)': 'el.nextElementSibling?.firstChild?.focus()',\n },\n})\nexport class TuiTextfieldItemComponent<T> {\n protected readonly el = tuiInjectElement();\n protected readonly handlers = inject(TUI_ITEMS_HANDLERS);\n protected readonly context = injectContext<TuiContext<TuiTextfieldItem<T>>>();\n protected readonly textfield: TuiTextfieldMultiComponent<T> = inject(\n TuiTextfieldMultiComponent,\n );\n\n protected get content(): PolymorpheusContent<TuiContext<TuiTextfieldItem<T>>> {\n return (\n this.textfield.item ?? this.handlers.stringify()(this.context.$implicit.item)\n );\n }\n}\n","import {AsyncPipe} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ElementRef,\n inject,\n Input,\n signal,\n TemplateRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {WaResizeObserver} from '@ng-web-apis/resize-observer';\nimport {TuiItem} from '@taiga-ui/cdk/directives/item';\nimport {tuiZonefree} from '@taiga-ui/cdk/observables';\nimport {type TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiIsElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiArrayToggle, tuiProvide, tuiPx} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiButton, tuiButtonOptionsProvider} from '@taiga-ui/core/components/button';\nimport {\n tuiAsDataListHost,\n TuiWithOptionContent,\n} from '@taiga-ui/core/components/data-list';\nimport {TuiScrollControls} from '@taiga-ui/core/components/scrollbar';\nimport {\n TUI_ITEMS_HANDLERS,\n TuiWithAppearance,\n TuiWithItemsHandlers,\n} from '@taiga-ui/core/directives';\nimport {\n TuiDropdownDirective,\n TuiDropdownFixed,\n TuiWithDropdownOpen,\n} from '@taiga-ui/core/directives/dropdown';\nimport {TuiWithIcons} from '@taiga-ui/core/directives/icons';\nimport {TUI_SCROLL_REF} from '@taiga-ui/core/tokens';\nimport {\n PolymorpheusComponent,\n type PolymorpheusContent,\n PolymorpheusOutlet,\n} from '@taiga-ui/polymorpheus';\nimport {filter, fromEvent} from 'rxjs';\n\nimport {TuiTextfieldBaseComponent, TuiTextfieldComponent} from '../textfield.component';\nimport {\n type TuiTextfieldItem,\n TuiTextfieldItemComponent,\n} from './textfield-item.component';\n\n@Component({\n selector: 'tui-textfield[multi]',\n imports: [\n AsyncPipe,\n PolymorpheusOutlet,\n TuiButton,\n TuiScrollControls,\n WaResizeObserver,\n ],\n templateUrl: './textfield-multi.template.html',\n styleUrl: './textfield-multi.style.less',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiButtonOptionsProvider({size: 'xs', appearance: 'icon'}),\n tuiAsDataListHost(TuiTextfieldMultiComponent),\n tuiProvide(TuiTextfieldComponent, TuiTextfieldMultiComponent),\n tuiProvide(TUI_SCROLL_REF, ElementRef),\n ],\n hostDirectives: [\n TuiDropdownFixed,\n TuiDropdownDirective,\n TuiWithDropdownOpen,\n TuiWithIcons,\n TuiWithItemsHandlers,\n TuiWithOptionContent,\n TuiWithAppearance,\n ],\n host: {\n class: 'tui-interactive',\n '[attr.data-state]': 'control?.disabled ? \"disabled\" : null',\n '[class._empty]': '!control?.value?.length',\n '[style.--t-item-height.px]': 'height()',\n '[style.--t-rows]': 'rows',\n '(click.prevent)': 'onClick($event.target)',\n '(tuiActiveZoneChange)':\n '!$event && (el.scrollTo({left: 0}) || cva?.onTouched())',\n // TODO: Remove in v5\n '[attr.data-size]': 'options.size()',\n '[class._with-label]': 'hasLabel',\n '[class._with-template]': 'content && control?.value != null',\n '[class._disabled]': 'input?.nativeElement?.disabled',\n '(pointerdown.self.prevent)': 'onIconClick()',\n '(scroll.capture.zoneless)': 'onScroll($event.target)',\n },\n})\nexport class TuiTextfieldMultiComponent<T> extends TuiTextfieldBaseComponent<T> {\n protected readonly height = signal<number | null>(null);\n protected readonly handlers = inject(TUI_ITEMS_HANDLERS);\n protected readonly component: PolymorpheusContent<TuiContext<TuiTextfieldItem<T>>> =\n new PolymorpheusComponent(TuiTextfieldItemComponent);\n\n protected readonly sub = fromEvent(this.el, 'scroll')\n .pipe(\n filter(() => this.rows === 1),\n tuiZonefree(),\n takeUntilDestroyed(),\n )\n .subscribe(() => {\n this.el.style.setProperty('--t-scroll', tuiPx(-1 * this.el.scrollLeft));\n });\n\n @ContentChild(TuiItem, {read: TemplateRef, descendants: true})\n public readonly item?: TemplateRef<unknown>;\n\n @Input()\n public rows = 100;\n\n public override handleOption(option: T): void {\n this.accessor?.setValue(\n tuiArrayToggle(\n this.control?.value ?? [],\n option,\n this.handlers.identityMatcher(),\n ),\n );\n }\n\n protected get placeholder(): string {\n const placeholder = this.input?.nativeElement.matches('input')\n ? this.input.nativeElement.placeholder\n : this.computedFiller();\n const value = this.computedFiller() || this.value();\n const longer = value.length > placeholder.length ? value : placeholder;\n\n return this.focused() ? longer : '';\n }\n\n protected onItems({target}: ResizeObserverEntry): void {\n const height =\n this.rows > 1 && this.control?.value?.length\n ? (target.querySelector('tui-textfield-item')?.clientHeight ?? 0)\n : null;\n\n if (height !== 0) {\n this.height.set(height);\n }\n }\n\n protected onLeft(event: any): void {\n if (this.value() || !tuiIsElement(event.currentTarget)) {\n return;\n }\n\n event.preventDefault();\n event.currentTarget.previousElementSibling?.firstElementChild?.focus();\n }\n\n protected onClick(target: HTMLElement): void {\n if (\n target === this.el ||\n !this.cva?.interactive() ||\n (!this.el.matches('[tuiChevron]') &&\n !this.el.querySelector('select, [tuiInputDateMulti]')) ||\n target.matches('input:read-only,input[inputmode=\"none\"]')\n ) {\n return;\n }\n\n this.open.update((open) => !open);\n\n try {\n this.input?.nativeElement.showPicker?.();\n } catch {\n // Empty catch block - silently ignore showPicker errors\n }\n }\n}\n","@if (control?.control?.valueChanges | async) {}\n@if (rows > 1) {\n <tui-scroll-controls class=\"t-scrollbar\" />\n}\n\n<div\n class=\"t-items\"\n [class.t-items_horizontal]=\"rows === 1\"\n (click)=\"input?.nativeElement?.focus()\"\n (pointerdown.self.zoneless.prevent)=\"(0)\"\n (waResizeObserver)=\"$event[0] && onItems($event[0])\"\n>\n <ng-content select=\"label\" />\n @for (item of control?.value; track item) {\n <ng-template\n [polymorpheusOutlet]=\"component\"\n [polymorpheusOutletContext]=\"{$implicit: {item, index: $index}}\"\n />\n }\n <span\n class=\"t-input\"\n (keydown.arrowLeft)=\"onLeft($event)\"\n >\n <ng-content select=\"input\" />\n <ng-content select=\"select\" />\n <span class=\"t-ghost\">{{ placeholder }}</span>\n <input\n aria-hidden=\"true\"\n disabled\n class=\"t-filler\"\n [class.t-filler_hidden]=\"!showFiller()\"\n [value]=\"computedFiller()\"\n />\n </span>\n</div>\n\n<span\n class=\"t-content\"\n (click.stop)=\"input?.nativeElement?.focus()\"\n (pointerdown.zoneless.prevent)=\"(0)\"\n (waResizeObserver)=\"$event[0] && onResize($event[0])\"\n>\n <ng-content />\n @if (options.cleaner()) {\n <button\n appearance=\"icon\"\n size=\"xs\"\n tabindex=\"-1\"\n tuiIconButton\n type=\"button\"\n class=\"t-clear\"\n [iconStart]=\"icons.close\"\n (click)=\"accessor?.setValue([])\"\n >\n {{ clear() }}\n </button>\n }\n <ng-container #vcr />\n <ng-content select=\"tui-icon\" />\n</span>\n\n@if (control?.value != null) {\n <span class=\"t-template\">\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: control?.value}\">\n {{ text }}\n </ng-container>\n </span>\n}\n","import {TuiItem} from '@taiga-ui/cdk/directives/item';\nimport {TuiLabel} from '@taiga-ui/core/components/label';\nimport {TuiDropdownContent} from '@taiga-ui/core/directives/dropdown';\n\nimport {TuiTextfieldComponent} from './textfield.component';\nimport {TuiTextfieldDirective} from './textfield.directive';\nimport {TuiTextfieldOptionsDirective} from './textfield.options';\nimport {TuiTextfieldMultiComponent} from './textfield-multi/textfield-multi.component';\n\nexport const TuiTextfield = [\n TuiItem,\n TuiLabel,\n TuiTextfieldComponent,\n TuiTextfieldDirective,\n TuiTextfieldOptionsDirective,\n TuiTextfieldMultiComponent,\n TuiDropdownContent,\n] as const;\n","import {computed, inject, type Signal} from '@angular/core';\n\nimport {TuiTextfieldComponent} from './textfield.component';\n\nexport function tuiInjectAuxiliary<T>(\n predicate: (auxiliary: any, index: number) => boolean,\n): Signal<T | null> {\n const {auxiliaries} = inject(TuiTextfieldComponent);\n\n return computed(() => (auxiliaries().find(predicate) ?? null) as T | null);\n}\n","import {\n Directive,\n type DoCheck,\n inject,\n type OnDestroy,\n TemplateRef,\n} from '@angular/core';\n\nimport {TuiTextfieldComponent} from './textfield.component';\n\n@Directive({\n standalone: true,\n selector: 'ng-template[tuiTextfieldContent]',\n})\nexport class TuiTextfieldContent implements DoCheck, OnDestroy {\n private readonly ref = inject(TuiTextfieldComponent).vcr?.createEmbeddedView(\n inject(TemplateRef),\n );\n\n public ngDoCheck(): void {\n this.ref?.detectChanges();\n }\n\n public ngOnDestroy(): void {\n this.ref?.destroy();\n }\n}\n","import {computed, inject, type ProviderToken, type Signal} from '@angular/core';\nimport {type TuiStringHandler} from '@taiga-ui/cdk/types';\nimport {tuiIconEnd} from '@taiga-ui/core/directives/icons';\nimport {type TuiSizeL, type TuiSizeS} from '@taiga-ui/core/types';\n\nimport {TUI_TEXTFIELD_OPTIONS} from './textfield.options';\n\nexport function tuiTextfieldIcon(\n token: ProviderToken<{icon: TuiStringHandler<TuiSizeL | TuiSizeS>}>,\n): Signal<string> {\n const {size} = inject(TUI_TEXTFIELD_OPTIONS);\n const {icon} = inject(token);\n\n return tuiIconEnd(\n computed(() => icon(size())),\n {},\n );\n}\n","import {Directive} from '@angular/core';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\n\n/**\n * Use it instead of host binding\n * host: { '[type]': '\"text\"' }\n * ___\n * From Angular 19+ all effects are called before host bindings.\n * If effects inside `tuiValue` will be called before `<input />` get `type=\"text\"`,\n * it will cause loss of initial value\n */\n@Directive({standalone: true})\nexport class TuiWithNativePicker {\n constructor() {\n tuiInjectElement<HTMLInputElement>().type = 'text';\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","TUI_ITEMS_HANDLERS","i3","i4","TuiWithItemsHandlers"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"taiga-ui-core-components-textfield.mjs","sources":["../../../projects/core/components/textfield/select-like.directive.ts","../../../projects/core/components/textfield/textfield.options.ts","../../../projects/core/components/textfield/textfield-accessor.ts","../../../projects/core/components/textfield/textfield.directive.ts","../../../projects/core/components/textfield/textfield.component.ts","../../../projects/core/components/textfield/textfield.template.html","../../../projects/core/components/textfield/textfield-multi/textfield-item.component.ts","../../../projects/core/components/textfield/textfield-multi/textfield-multi.component.ts","../../../projects/core/components/textfield/textfield-multi/textfield-multi.template.html","../../../projects/core/components/textfield/textfield.ts","../../../projects/core/components/textfield/textfield-auxiliary.ts","../../../projects/core/components/textfield/textfield-content.directive.ts","../../../projects/core/components/textfield/textfield-icon.ts","../../../projects/core/components/textfield/with-native-picker.directive.ts","../../../projects/core/components/textfield/taiga-ui-core-components-textfield.ts"],"sourcesContent":["import {Directive, inject} from '@angular/core';\nimport {TUI_IS_ANDROID} from '@taiga-ui/cdk/tokens';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\n\n@Directive({\n selector: '[tuiSelectLike]',\n host: {\n tuiSelectLike: '',\n inputmode: 'none',\n spellcheck: 'false',\n autocomplete: 'off',\n // Click on cleaner icon does not trigger `beforeinput` event --> handle all kind of deletion in input event\n '(beforeinput)': '$event.inputType.includes(\"delete\") || $event.preventDefault()',\n '(input.capture)': '$event.inputType?.includes(\"delete\") && clear()',\n // Hide Android text select handle (bubble marker below transparent caret)\n '(mousedown)': 'prevent($event)',\n },\n})\nexport class TuiSelectLike {\n private readonly el = tuiInjectElement<HTMLInputElement>();\n private readonly isAndroid = inject(TUI_IS_ANDROID);\n\n protected clear(): void {\n this.el.value = '';\n }\n\n protected prevent(event: MouseEvent): void {\n if (!this.isAndroid) {\n return;\n }\n\n event.preventDefault();\n this.el.focus();\n }\n}\n","import {\n Directive,\n inject,\n InjectionToken,\n input,\n Optional,\n type Provider,\n type Signal,\n signal,\n SkipSelf,\n} from '@angular/core';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {type TuiSizeL, type TuiSizeS} from '@taiga-ui/core/types';\n\nconst DEFAULT = {appearance: 'textfield', size: 'l', cleaner: true} as const;\n\nexport interface TuiTextfieldOptions {\n readonly appearance: Signal<string>;\n readonly size: Signal<TuiSizeL | TuiSizeS>;\n readonly cleaner: Signal<boolean>;\n}\n\nexport const TUI_TEXTFIELD_OPTIONS = new InjectionToken<TuiTextfieldOptions>(\n ngDevMode ? 'TUI_TEXTFIELD_OPTIONS' : '',\n {\n factory: () => ({\n appearance: signal(DEFAULT.appearance),\n size: signal(DEFAULT.size),\n cleaner: signal(DEFAULT.cleaner),\n }),\n },\n);\n\nexport function tuiTextfieldOptionsProvider(\n options: Partial<TuiTextfieldOptions>,\n): Provider {\n return {\n provide: TUI_TEXTFIELD_OPTIONS,\n deps: [[new Optional(), new SkipSelf(), TUI_TEXTFIELD_OPTIONS]],\n useFactory: (parent: TuiTextfieldOptions | null) => ({\n appearance: signal(parent?.appearance() ?? DEFAULT.appearance),\n size: signal(parent?.size() ?? DEFAULT.size),\n cleaner: signal(parent?.cleaner() ?? DEFAULT.cleaner),\n ...options,\n }),\n };\n}\n\n@Directive({\n selector: '[tuiTextfieldAppearance],[tuiTextfieldSize],[tuiTextfieldCleaner]',\n providers: [tuiProvide(TUI_TEXTFIELD_OPTIONS, TuiTextfieldOptionsDirective)],\n})\nexport class TuiTextfieldOptionsDirective implements TuiTextfieldOptions {\n private readonly options = inject(TUI_TEXTFIELD_OPTIONS, {skipSelf: true});\n\n public readonly appearance = input(this.options.appearance(), {\n alias: 'tuiTextfieldAppearance',\n });\n\n public readonly size = input(this.options.size(), {\n alias: 'tuiTextfieldSize',\n transform: (size: TuiSizeL | TuiSizeS | ''): TuiSizeL | TuiSizeS =>\n size || DEFAULT.size,\n });\n\n public readonly cleaner = input(this.options.cleaner(), {\n alias: 'tuiTextfieldCleaner',\n });\n}\n","import {InjectionToken, type Provider, type Type} from '@angular/core';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/miscellaneous';\n\nexport interface TuiTextfieldAccessor<T = unknown> {\n setValue(value: T | T[] | null): void;\n}\n\nexport const TUI_TEXTFIELD_ACCESSOR = new InjectionToken<TuiTextfieldAccessor>(\n ngDevMode ? 'TUI_TEXTFIELD_ACCESSOR' : '',\n);\n\nexport function tuiAsTextfieldAccessor(accessor: Type<TuiTextfieldAccessor>): Provider {\n return tuiProvide(TUI_TEXTFIELD_ACCESSOR, accessor);\n}\n","import {computed, Directive, inject, input} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {TuiNativeValidator} from '@taiga-ui/cdk/directives/native-validator';\nimport {tuiInjectElement, tuiValue} from '@taiga-ui/cdk/utils/dom';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {\n TuiAppearance,\n tuiAppearance,\n tuiAppearanceFocus,\n tuiAppearanceMode,\n tuiAppearanceState,\n} from '@taiga-ui/core/directives/appearance';\nimport {\n TUI_ITEMS_HANDLERS,\n type TuiItemsHandlers,\n} from '@taiga-ui/core/directives/items-handlers';\nimport {type TuiInteractiveState} from '@taiga-ui/core/types';\n\nimport {TuiTextfieldComponent} from './textfield.component';\nimport {TUI_TEXTFIELD_OPTIONS} from './textfield.options';\nimport {tuiAsTextfieldAccessor, type TuiTextfieldAccessor} from './textfield-accessor';\n\n// TODO: Drop in v5 after updated Angular and hostDirectives inherit\n@Directive({\n providers: [tuiAsTextfieldAccessor(TuiTextfieldBase)],\n host: {\n tuiTextfield: '',\n '[id]': 'textfield.id',\n '[readOnly]': 'readOnly()',\n '[class._empty]': 'value() === \"\"',\n '(input)': '0',\n '(focusin)': '0',\n '(focusout)': '0',\n },\n})\nexport class TuiTextfieldBase<T> implements TuiTextfieldAccessor<T> {\n protected readonly control = inject(NgControl, {optional: true});\n protected readonly a = tuiAppearance(inject(TUI_TEXTFIELD_OPTIONS).appearance, {});\n protected readonly s = tuiAppearanceState(\n computed(() => this.state()),\n {},\n );\n\n protected readonly m = tuiAppearanceMode(\n computed(() => this.mode()),\n {},\n );\n\n protected readonly f = tuiAppearanceFocus(\n computed(() => this.focused() ?? this.textfield.focused()),\n {},\n );\n\n protected readonly el = tuiInjectElement<HTMLInputElement>();\n protected readonly handlers: TuiItemsHandlers<T> = inject(TUI_ITEMS_HANDLERS);\n protected readonly textfield: TuiTextfieldComponent<T> =\n inject(TuiTextfieldComponent);\n\n public readonly readOnly = input(false);\n\n public readonly invalid = input<boolean | null>(null);\n\n public readonly value = tuiValue(this.el);\n\n public readonly focused = input<boolean | null>(null);\n\n public readonly state = input<TuiInteractiveState | null>(null);\n\n public readonly mode = computed<string | null>(() => {\n if (this.readOnly()) {\n return 'readonly';\n }\n\n if (this.invalid() === false) {\n return 'valid';\n }\n\n if (this.invalid()) {\n return 'invalid';\n }\n\n return null;\n });\n\n public setValue(value: T | null): void {\n this.el.focus();\n this.el.select();\n\n if (value == null) {\n this.el.ownerDocument.execCommand('delete');\n\n // see https://github.com/taiga-family/taiga-ui/issues/11634\n // ensure non-erasable affixes actually deleted\n this.el.value = '';\n } else {\n this.el.ownerDocument.execCommand(\n 'insertText',\n false,\n this.handlers.stringify()(value),\n );\n }\n }\n}\n\n@Directive({\n selector: 'input[tuiTextfield]',\n providers: [\n tuiAsTextfieldAccessor(TuiTextfieldDirective),\n tuiProvide(TuiTextfieldBase, TuiTextfieldDirective),\n ],\n hostDirectives: [TuiNativeValidator, TuiAppearance],\n})\nexport class TuiTextfieldDirective<T> extends TuiTextfieldBase<T> {}\n\n@Directive({\n hostDirectives: [\n {\n directive: TuiTextfieldDirective,\n inputs: ['invalid', 'focused', 'readOnly', 'state'],\n },\n ],\n})\nexport class TuiWithTextfield {}\n","import {AsyncPipe} from '@angular/common';\nimport {\n type AfterContentChecked,\n ChangeDetectionStrategy,\n Component,\n computed,\n ContentChild,\n ContentChildren,\n Directive,\n ElementRef,\n forwardRef,\n inject,\n input,\n type QueryList,\n signal,\n ViewChild,\n ViewContainerRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport {toSignal} from '@angular/core/rxjs-interop';\nimport {NgControl} from '@angular/forms';\nimport {WaResizeObserver} from '@ng-web-apis/resize-observer';\nimport {TuiControl} from '@taiga-ui/cdk/classes';\nimport {EMPTY_QUERY} from '@taiga-ui/cdk/constants';\nimport {TuiTransitioned} from '@taiga-ui/cdk/directives/transitioned';\nimport {tuiQueryListChanges} from '@taiga-ui/cdk/observables';\nimport {tuiInjectId} from '@taiga-ui/cdk/services';\nimport {type TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiInjectElement, tuiValue} from '@taiga-ui/cdk/utils/dom';\nimport {tuiFocusedIn} from '@taiga-ui/cdk/utils/focus';\nimport {tuiPx} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiButton, tuiButtonOptionsProvider} from '@taiga-ui/core/components/button';\nimport {\n tuiAsDataListHost,\n type TuiDataListHost,\n TuiWithOptionContent,\n} from '@taiga-ui/core/components/data-list';\nimport {TuiLabel} from '@taiga-ui/core/components/label';\nimport {\n TuiDropdownDirective,\n TuiDropdownFixed,\n TuiDropdownOpen,\n tuiDropdownOpen,\n TuiWithDropdownOpen,\n} from '@taiga-ui/core/directives/dropdown';\nimport {TuiWithIcons} from '@taiga-ui/core/directives/icons';\nimport {TuiWithItemsHandlers} from '@taiga-ui/core/directives/items-handlers';\nimport {TUI_AUXILIARY, TUI_CLEAR_WORD, TUI_COMMON_ICONS} from '@taiga-ui/core/tokens';\nimport {type TuiSizeL, type TuiSizeS} from '@taiga-ui/core/types';\nimport {type PolymorpheusContent, PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\nimport {ReplaySubject, startWith, switchMap, take} from 'rxjs';\n\nimport {TuiTextfieldBase} from './textfield.directive';\nimport {TUI_TEXTFIELD_OPTIONS} from './textfield.options';\nimport {TUI_TEXTFIELD_ACCESSOR, type TuiTextfieldAccessor} from './textfield-accessor';\n\n// TODO: Remove base class in v5\n@Directive()\nexport class TuiTextfieldBaseComponent<T>\n implements TuiDataListHost<T>, AfterContentChecked\n{\n private readonly autoId = tuiInjectId();\n private readonly focusedIn = tuiFocusedIn(tuiInjectElement());\n private readonly contentReady$ = new ReplaySubject<boolean>(1);\n private readonly inputQuery = signal<ElementRef<HTMLInputElement> | undefined>(\n undefined,\n );\n\n @ViewChild('ghost')\n protected readonly ghost?: ElementRef<HTMLElement>;\n\n @ContentChild(forwardRef(() => TuiLabel), {read: ElementRef})\n protected readonly label?: ElementRef<HTMLElement>;\n\n @ContentChildren(TUI_AUXILIARY, {descendants: true})\n protected readonly auxiliaryQuery: QueryList<object> = EMPTY_QUERY;\n\n // TODO: Added just to avoid breaking anything until we refactor to signal queries\n @ContentChild(forwardRef(() => TuiTextfieldBase), {read: ElementRef})\n // eslint-disable-next-line @typescript-eslint/naming-convention\n protected readonly _input?: ElementRef<HTMLInputElement>;\n\n protected readonly open = tuiDropdownOpen();\n protected readonly dropdown = inject(TuiDropdownDirective);\n protected readonly dropdownOpen = inject(TuiDropdownOpen);\n\n protected readonly icons = inject(TUI_COMMON_ICONS);\n protected readonly clear = inject(TUI_CLEAR_WORD);\n\n protected readonly computedFiller = computed((value = this.value()) => {\n const filler = value + this.filler().slice(value.length);\n\n return filler.length > value.length ? filler : '';\n });\n\n protected readonly showFiller = computed<boolean>(\n () =>\n this.focused() &&\n !!this.computedFiller() &&\n (!!this.value() || !this.input?.nativeElement.placeholder),\n );\n\n @ViewChild('vcr', {read: ViewContainerRef, static: true})\n public readonly vcr?: ViewContainerRef;\n\n @ContentChild(TUI_TEXTFIELD_ACCESSOR, {descendants: true})\n public readonly accessor?: TuiTextfieldAccessor<T>;\n\n @ContentChild(NgControl)\n public readonly control?: NgControl;\n\n @ContentChild(TuiControl)\n public readonly cva?: TuiControl<unknown>;\n\n // TODO: Replace with signal query when Angular is updated v5\n @ContentChild(forwardRef(() => TuiTextfieldBase), {\n read: ElementRef,\n static: true,\n })\n public readonly input?: ElementRef<HTMLInputElement>;\n\n public readonly content = input<PolymorpheusContent<TuiContext<T>>>();\n\n public readonly focused = computed(() => this.open() || this.focusedIn());\n public readonly options = inject(TUI_TEXTFIELD_OPTIONS);\n public readonly el = tuiInjectElement();\n public readonly value = tuiValue(this.inputQuery);\n\n // TODO: Refactor to signal queries when Angular is updated\n public readonly auxiliaries = toSignal<readonly object[]>(\n this.contentReady$.pipe(\n take(1),\n switchMap(() => tuiQueryListChanges(this.auxiliaryQuery)),\n startWith([]),\n ),\n {requireSync: true},\n );\n\n public readonly filler = input('');\n\n public get id(): string {\n return this.input?.nativeElement.id || this.autoId;\n }\n\n public get size(): TuiSizeL | TuiSizeS {\n return this.options.size();\n }\n\n public ngAfterContentChecked(): void {\n this.contentReady$.next(true);\n this.inputQuery.set(this._input);\n }\n\n public handleOption(option: T): void {\n this.accessor?.setValue(option);\n this.open.set(false);\n }\n\n protected get hasLabel(): boolean {\n return Boolean(this.label?.nativeElement?.childNodes.length);\n }\n\n protected onResize({contentRect}: ResizeObserverEntry): void {\n this.el.style.setProperty('--t-side', tuiPx(contentRect.width));\n }\n\n // Click on ::before,::after pseudo-elements ([iconStart] / [iconEnd])\n protected onIconClick(): void {\n this.input?.nativeElement.focus();\n\n if (\n !this.dropdownOpen.tuiDropdownEnabled ||\n this.input?.nativeElement.matches('input:read-only,textarea:read-only')\n ) {\n return;\n }\n\n this.open.update((open) => !open);\n\n try {\n this.input?.nativeElement.showPicker?.();\n } catch {\n // Empty catch block - silently ignore showPicker errors\n }\n }\n\n protected onScroll(element: HTMLElement): void {\n if (this.input?.nativeElement === element) {\n this.ghost?.nativeElement.scrollTo({\n left: this.input.nativeElement.scrollLeft,\n });\n }\n }\n}\n\n@Component({\n selector: 'tui-textfield:not([multi])',\n imports: [AsyncPipe, PolymorpheusOutlet, TuiButton, WaResizeObserver],\n templateUrl: './textfield.template.html',\n styles: '@import \"@taiga-ui/core/styles/components/textfield.less\";',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiButtonOptionsProvider({size: 'xs', appearance: 'icon'}),\n tuiAsDataListHost(TuiTextfieldComponent),\n ],\n hostDirectives: [\n TuiDropdownDirective,\n TuiDropdownFixed,\n TuiTransitioned,\n TuiWithDropdownOpen,\n TuiWithIcons,\n TuiWithItemsHandlers,\n TuiWithOptionContent,\n ],\n host: {\n '[attr.data-size]': 'options.size()',\n '[class._with-label]': 'hasLabel',\n '[class._with-template]': 'content() && control?.value != null',\n '[class._disabled]': 'input?.nativeElement?.disabled',\n '(click.self.prevent)': '0',\n '(pointerdown.self.prevent)': 'onIconClick()',\n '(scroll.capture.zoneless)': 'onScroll($event.target)',\n '(tuiActiveZoneChange)': '!$event && cva?.onTouched()',\n },\n})\nexport class TuiTextfieldComponent<T> extends TuiTextfieldBaseComponent<T> {}\n","@if (control?.control?.valueChanges | async) {}\n<ng-content select=\"input\" />\n<ng-content select=\"select\" />\n<ng-content select=\"textarea\" />\n<ng-content select=\"label\" />\n<span\n class=\"t-content\"\n (pointerdown)=\"input?.nativeElement?.focus()\"\n (waResizeObserver)=\"$event[0] && onResize($event[0])\"\n>\n <ng-content />\n <ng-container #vcr />\n @if (options.cleaner()) {\n <button\n appearance=\"icon\"\n size=\"xs\"\n tabindex=\"-1\"\n tuiIconButton\n type=\"button\"\n class=\"t-clear\"\n [iconStart]=\"icons.close\"\n (click)=\"accessor?.setValue(null)\"\n (pointerdown.zoneless.prevent)=\"input?.nativeElement?.focus()\"\n >\n {{ clear() }}\n </button>\n }\n <ng-content select=\"tui-icon\" />\n</span>\n@if (control?.value != null) {\n <span class=\"t-template\">\n <ng-container *polymorpheusOutlet=\"content() as text; context: {$implicit: control?.value}\">\n {{ text }}\n </ng-container>\n </span>\n}\n@if (showFiller()) {\n <input\n #ghost\n aria-hidden=\"true\"\n disabled\n class=\"t-filler\"\n [value]=\"computedFiller()\"\n />\n}\n","import {ChangeDetectionStrategy, Component, inject} from '@angular/core';\nimport {type TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {TUI_ITEMS_HANDLERS} from '@taiga-ui/core/directives/items-handlers';\nimport {\n injectContext,\n type PolymorpheusContent,\n PolymorpheusOutlet,\n} from '@taiga-ui/polymorpheus';\n\nimport {TuiTextfieldMultiComponent} from './textfield-multi.component';\n\nexport interface TuiTextfieldItem<T> {\n readonly item: T;\n readonly index: number;\n}\n\n/*\n * Internal wrapper for polymorpheus-context\n */\n@Component({\n selector: 'tui-textfield-item',\n imports: [PolymorpheusOutlet],\n template:\n '<ng-container *polymorpheusOutlet=\"content as text; context: context\">{{ text }}</ng-container>',\n styleUrl: './textfield-item.style.less',\n // TODO: Set to OnPush in v5 when textfield.item becomes a signal\n // eslint-disable-next-line @angular-eslint/prefer-on-push-component-change-detection\n changeDetection: ChangeDetectionStrategy.Default,\n host: {\n '[class._string]': '!textfield.item',\n '[class._disabled]': 'handlers.disabledItemHandler()(context.$implicit.item)',\n '(pointerdown.self.prevent)': '0',\n '(keydown.arrowLeft.prevent)': 'el.previousElementSibling?.firstChild?.focus()',\n '(keydown.arrowRight.prevent)': 'el.nextElementSibling?.firstChild?.focus()',\n },\n})\nexport class TuiTextfieldItemComponent<T> {\n protected readonly el = tuiInjectElement();\n protected readonly handlers = inject(TUI_ITEMS_HANDLERS);\n protected readonly context = injectContext<TuiContext<TuiTextfieldItem<T>>>();\n protected readonly textfield: TuiTextfieldMultiComponent<T> = inject(\n TuiTextfieldMultiComponent,\n );\n\n protected get content(): PolymorpheusContent<TuiContext<TuiTextfieldItem<T>>> {\n return (\n this.textfield.item ?? this.handlers.stringify()(this.context.$implicit.item)\n );\n }\n}\n","import {AsyncPipe} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ElementRef,\n inject,\n input,\n signal,\n TemplateRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {WaResizeObserver} from '@ng-web-apis/resize-observer';\nimport {TuiItem} from '@taiga-ui/cdk/directives/item';\nimport {tuiZonefree} from '@taiga-ui/cdk/observables';\nimport {type TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiIsElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiArrayToggle, tuiProvide, tuiPx} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiButton, tuiButtonOptionsProvider} from '@taiga-ui/core/components/button';\nimport {\n tuiAsDataListHost,\n TuiWithOptionContent,\n} from '@taiga-ui/core/components/data-list';\nimport {TuiScrollControls} from '@taiga-ui/core/components/scrollbar';\nimport {\n TUI_ITEMS_HANDLERS,\n TuiWithAppearance,\n TuiWithItemsHandlers,\n} from '@taiga-ui/core/directives';\nimport {\n TuiDropdownDirective,\n TuiDropdownFixed,\n TuiWithDropdownOpen,\n} from '@taiga-ui/core/directives/dropdown';\nimport {TuiWithIcons} from '@taiga-ui/core/directives/icons';\nimport {TUI_SCROLL_REF} from '@taiga-ui/core/tokens';\nimport {\n PolymorpheusComponent,\n type PolymorpheusContent,\n PolymorpheusOutlet,\n} from '@taiga-ui/polymorpheus';\nimport {filter, fromEvent} from 'rxjs';\n\nimport {TuiTextfieldBaseComponent, TuiTextfieldComponent} from '../textfield.component';\nimport {\n type TuiTextfieldItem,\n TuiTextfieldItemComponent,\n} from './textfield-item.component';\n\n@Component({\n selector: 'tui-textfield[multi]',\n imports: [\n AsyncPipe,\n PolymorpheusOutlet,\n TuiButton,\n TuiScrollControls,\n WaResizeObserver,\n ],\n templateUrl: './textfield-multi.template.html',\n styleUrl: './textfield-multi.style.less',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiButtonOptionsProvider({size: 'xs', appearance: 'icon'}),\n tuiAsDataListHost(TuiTextfieldMultiComponent),\n tuiProvide(TuiTextfieldComponent, TuiTextfieldMultiComponent),\n tuiProvide(TUI_SCROLL_REF, ElementRef),\n ],\n hostDirectives: [\n TuiDropdownFixed,\n TuiDropdownDirective,\n TuiWithDropdownOpen,\n TuiWithIcons,\n TuiWithItemsHandlers,\n TuiWithOptionContent,\n TuiWithAppearance,\n ],\n host: {\n class: 'tui-interactive',\n '[attr.data-state]': 'control?.disabled ? \"disabled\" : null',\n '[class._empty]': '!control?.value?.length',\n '[style.--t-item-height.px]': 'height()',\n '[style.--t-rows]': 'rows()',\n '(click.prevent)': 'onClick($event.target)',\n '(tuiActiveZoneChange)':\n '!$event && (el.scrollTo({left: 0}) || cva?.onTouched())',\n // TODO: Remove in v5\n '[attr.data-size]': 'options.size()',\n '[class._with-label]': 'hasLabel',\n '[class._with-template]': 'content() && control?.value != null',\n '[class._disabled]': 'input?.nativeElement?.disabled',\n '(pointerdown.self.prevent)': 'onIconClick()',\n '(scroll.capture.zoneless)': 'onScroll($event.target)',\n },\n})\nexport class TuiTextfieldMultiComponent<T> extends TuiTextfieldBaseComponent<T> {\n protected readonly height = signal<number | null>(null);\n protected readonly handlers = inject(TUI_ITEMS_HANDLERS);\n protected readonly component: PolymorpheusContent<TuiContext<TuiTextfieldItem<T>>> =\n new PolymorpheusComponent(TuiTextfieldItemComponent);\n\n protected readonly sub = fromEvent(this.el, 'scroll')\n .pipe(\n filter(() => this.rows() === 1),\n tuiZonefree(),\n takeUntilDestroyed(),\n )\n .subscribe(() => {\n this.el.style.setProperty('--t-scroll', tuiPx(-1 * this.el.scrollLeft));\n });\n\n @ContentChild(TuiItem, {read: TemplateRef, descendants: true})\n public readonly item?: TemplateRef<unknown>;\n\n public readonly rows = input(100);\n\n public override handleOption(option: T): void {\n this.accessor?.setValue(\n tuiArrayToggle(\n this.control?.value ?? [],\n option,\n this.handlers.identityMatcher(),\n ),\n );\n }\n\n protected get placeholder(): string {\n const placeholder = this.input?.nativeElement.matches('input')\n ? this.input.nativeElement.placeholder\n : this.computedFiller();\n const value = this.computedFiller() || this.value();\n const longer = value.length > placeholder.length ? value : placeholder;\n\n return this.focused() ? longer : '';\n }\n\n protected onItems({target}: ResizeObserverEntry): void {\n const height =\n this.rows() > 1 && this.control?.value?.length\n ? (target.querySelector('tui-textfield-item')?.clientHeight ?? 0)\n : null;\n\n if (height !== 0) {\n this.height.set(height);\n }\n }\n\n protected onLeft(event: any): void {\n if (this.value() || !tuiIsElement(event.currentTarget)) {\n return;\n }\n\n event.preventDefault();\n event.currentTarget.previousElementSibling?.firstElementChild?.focus();\n }\n\n protected onClick(target: HTMLElement): void {\n if (\n target === this.el ||\n !this.cva?.interactive() ||\n (!this.el.matches('[tuiChevron]') &&\n !this.el.querySelector('select, [tuiInputDateMulti]')) ||\n target.matches('input:read-only,input[inputmode=\"none\"]')\n ) {\n return;\n }\n\n this.open.update((open) => !open);\n\n try {\n this.input?.nativeElement.showPicker?.();\n } catch {\n // Empty catch block - silently ignore showPicker errors\n }\n }\n}\n","@if (control?.control?.valueChanges | async) {}\n@if (rows() > 1) {\n <tui-scroll-controls class=\"t-scrollbar\" />\n}\n\n<div\n class=\"t-items\"\n [class.t-items_horizontal]=\"rows() === 1\"\n (click)=\"input?.nativeElement?.focus()\"\n (pointerdown.self.zoneless.prevent)=\"(0)\"\n (waResizeObserver)=\"$event[0] && onItems($event[0])\"\n>\n <ng-content select=\"label\" />\n @for (item of control?.value; track item) {\n <ng-template\n [polymorpheusOutlet]=\"component\"\n [polymorpheusOutletContext]=\"{$implicit: {item, index: $index}}\"\n />\n }\n <span\n class=\"t-input\"\n (keydown.arrowLeft)=\"onLeft($event)\"\n >\n <ng-content select=\"input\" />\n <ng-content select=\"select\" />\n <span class=\"t-ghost\">{{ placeholder }}</span>\n <input\n aria-hidden=\"true\"\n disabled\n class=\"t-filler\"\n [class.t-filler_hidden]=\"!showFiller()\"\n [value]=\"computedFiller()\"\n />\n </span>\n</div>\n\n<span\n class=\"t-content\"\n (click.stop)=\"input?.nativeElement?.focus()\"\n (pointerdown.zoneless.prevent)=\"(0)\"\n (waResizeObserver)=\"$event[0] && onResize($event[0])\"\n>\n <ng-content />\n @if (options.cleaner()) {\n <button\n appearance=\"icon\"\n size=\"xs\"\n tabindex=\"-1\"\n tuiIconButton\n type=\"button\"\n class=\"t-clear\"\n [iconStart]=\"icons.close\"\n (click)=\"accessor?.setValue([])\"\n >\n {{ clear() }}\n </button>\n }\n <ng-container #vcr />\n <ng-content select=\"tui-icon\" />\n</span>\n\n@if (control?.value != null) {\n <span class=\"t-template\">\n <ng-container *polymorpheusOutlet=\"content() as text; context: {$implicit: control?.value}\">\n {{ text }}\n </ng-container>\n </span>\n}\n","import {TuiItem} from '@taiga-ui/cdk/directives/item';\nimport {TuiLabel} from '@taiga-ui/core/components/label';\nimport {TuiDropdownContent} from '@taiga-ui/core/directives/dropdown';\n\nimport {TuiTextfieldComponent} from './textfield.component';\nimport {TuiTextfieldDirective} from './textfield.directive';\nimport {TuiTextfieldOptionsDirective} from './textfield.options';\nimport {TuiTextfieldMultiComponent} from './textfield-multi/textfield-multi.component';\n\nexport const TuiTextfield = [\n TuiItem,\n TuiLabel,\n TuiTextfieldComponent,\n TuiTextfieldDirective,\n TuiTextfieldOptionsDirective,\n TuiTextfieldMultiComponent,\n TuiDropdownContent,\n] as const;\n","import {computed, inject, type Signal} from '@angular/core';\n\nimport {TuiTextfieldComponent} from './textfield.component';\n\nexport function tuiInjectAuxiliary<T>(\n predicate: (auxiliary: any, index: number) => boolean,\n): Signal<T | null> {\n const {auxiliaries} = inject(TuiTextfieldComponent);\n\n return computed(() => (auxiliaries().find(predicate) ?? null) as T | null);\n}\n","import {\n Directive,\n type DoCheck,\n inject,\n type OnDestroy,\n TemplateRef,\n} from '@angular/core';\n\nimport {TuiTextfieldComponent} from './textfield.component';\n\n@Directive({\n selector: 'ng-template[tuiTextfieldContent]',\n})\nexport class TuiTextfieldContent implements DoCheck, OnDestroy {\n private readonly ref = inject(TuiTextfieldComponent).vcr?.createEmbeddedView(\n inject(TemplateRef),\n );\n\n public ngDoCheck(): void {\n this.ref?.detectChanges();\n }\n\n public ngOnDestroy(): void {\n this.ref?.destroy();\n }\n}\n","import {computed, inject, type ProviderToken, type Signal} from '@angular/core';\nimport {type TuiStringHandler} from '@taiga-ui/cdk/types';\nimport {tuiIconEnd} from '@taiga-ui/core/directives/icons';\nimport {type TuiSizeL, type TuiSizeS} from '@taiga-ui/core/types';\n\nimport {TUI_TEXTFIELD_OPTIONS} from './textfield.options';\n\nexport function tuiTextfieldIcon(\n token: ProviderToken<{icon: TuiStringHandler<TuiSizeL | TuiSizeS>}>,\n): Signal<string> {\n const {size} = inject(TUI_TEXTFIELD_OPTIONS);\n const {icon} = inject(token);\n\n return tuiIconEnd(\n computed(() => icon(size())),\n {},\n );\n}\n","import {Directive} from '@angular/core';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\n\n/**\n * Use it instead of host binding\n * host: { '[type]': '\"text\"' }\n * ___\n * From Angular 19+ all effects are called before host bindings.\n * If effects inside `tuiValue` will be called before `<input />` get `type=\"text\"`,\n * it will cause loss of initial value\n */\n@Directive()\nexport class TuiWithNativePicker {\n constructor() {\n tuiInjectElement<HTMLInputElement>().type = 'text';\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2","TUI_ITEMS_HANDLERS","i3","i4","TuiWithItemsHandlers"],"mappings":"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"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
export * from '@taiga-ui/core/components/alert';
|
|
2
1
|
export * from '@taiga-ui/core/components/button';
|
|
3
2
|
export * from '@taiga-ui/core/components/calendar';
|
|
4
3
|
export * from '@taiga-ui/core/components/cell';
|
|
@@ -6,11 +5,11 @@ export * from '@taiga-ui/core/components/data-list';
|
|
|
6
5
|
export * from '@taiga-ui/core/components/dialog';
|
|
7
6
|
export * from '@taiga-ui/core/components/error';
|
|
8
7
|
export * from '@taiga-ui/core/components/expand';
|
|
9
|
-
export * from '@taiga-ui/core/components/header';
|
|
10
8
|
export * from '@taiga-ui/core/components/icon';
|
|
11
9
|
export * from '@taiga-ui/core/components/label';
|
|
12
10
|
export * from '@taiga-ui/core/components/link';
|
|
13
11
|
export * from '@taiga-ui/core/components/loader';
|
|
12
|
+
export * from '@taiga-ui/core/components/modal';
|
|
14
13
|
export * from '@taiga-ui/core/components/notification';
|
|
15
14
|
export * from '@taiga-ui/core/components/root';
|
|
16
15
|
export * from '@taiga-ui/core/components/scrollbar';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-core-components.mjs","sources":["../../../projects/core/components/taiga-ui-core-components.ts"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"taiga-ui-core-components.mjs","sources":["../../../projects/core/components/taiga-ui-core-components.ts"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA;;AAEG"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { ChangeDetectionStrategy, ViewEncapsulation, Component, Directive, inject, Injectable } from '@angular/core';
|
|
3
|
+
import { tuiWithStyles } from '@taiga-ui/cdk/utils/miscellaneous';
|
|
4
|
+
import { injectContext } from '@taiga-ui/polymorpheus';
|
|
5
|
+
import { TuiPortal } from '@taiga-ui/cdk/portals';
|
|
6
|
+
import { TuiPopupService } from '@taiga-ui/core/directives/popup';
|
|
7
|
+
|
|
8
|
+
class Styles {
|
|
9
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: Styles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
10
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: Styles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-alert-styles" }, ngImport: i0, template: '', isInline: true, styles: ["[tuiAlert]{position:relative;display:grid;grid-column:1;place-self:start start;isolation:isolate;--tui-from: translateX(-100%)}[tuiAlert][data-inline=end]{justify-self:end;--tui-from: translateX(100%)}[tuiAlert][data-inline=center]{justify-self:center;--tui-from: translateY(-100%)}[tuiAlert][data-block=end]{align-self:end}[tuiAlert][data-block=end][data-inline=center]{--tui-from: translateY(100%)}[tuiAlert][data-block=end]:nth-of-type(1){grid-row:11}[tuiAlert][data-block=end]:nth-of-type(2){grid-row:12}[tuiAlert][data-block=end]:nth-of-type(3){grid-row:13}[tuiAlert][data-block=end]:nth-of-type(4){grid-row:14}[tuiAlert][data-block=end]:nth-of-type(5){grid-row:15}[tuiAlert][data-block=end]:nth-of-type(6){grid-row:16}[tuiAlert][data-block=end]:nth-of-type(7){grid-row:17}[tuiAlert][data-block=end]:nth-of-type(8){grid-row:18}[tuiAlert].tui-enter,[tuiAlert].tui-leave{animation-name:tuiFade,tuiSlide,tuiCollapse}[tuiAlert]:not(:first-of-type){margin-block-start:0}[tuiAlert]:not(:last-of-type){margin-block-end:0}[tuiAlert]:nth-of-type(1){grid-row:5}[tuiAlert]:nth-of-type(2){grid-row:6}[tuiAlert]:nth-of-type(3){grid-row:7}[tuiAlert]:nth-of-type(4){grid-row:8}[tuiAlert]:nth-of-type(5){grid-row:9}[tuiAlert]>*{grid-row:1 / span 2}[tuiAlert]>*:before,[tuiAlert]>*:after{content:\"\";display:block;block-size:.375rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
11
|
+
}
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: Styles, decorators: [{
|
|
13
|
+
type: Component,
|
|
14
|
+
args: [{ template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'tui-alert-styles' }, styles: ["[tuiAlert]{position:relative;display:grid;grid-column:1;place-self:start start;isolation:isolate;--tui-from: translateX(-100%)}[tuiAlert][data-inline=end]{justify-self:end;--tui-from: translateX(100%)}[tuiAlert][data-inline=center]{justify-self:center;--tui-from: translateY(-100%)}[tuiAlert][data-block=end]{align-self:end}[tuiAlert][data-block=end][data-inline=center]{--tui-from: translateY(100%)}[tuiAlert][data-block=end]:nth-of-type(1){grid-row:11}[tuiAlert][data-block=end]:nth-of-type(2){grid-row:12}[tuiAlert][data-block=end]:nth-of-type(3){grid-row:13}[tuiAlert][data-block=end]:nth-of-type(4){grid-row:14}[tuiAlert][data-block=end]:nth-of-type(5){grid-row:15}[tuiAlert][data-block=end]:nth-of-type(6){grid-row:16}[tuiAlert][data-block=end]:nth-of-type(7){grid-row:17}[tuiAlert][data-block=end]:nth-of-type(8){grid-row:18}[tuiAlert].tui-enter,[tuiAlert].tui-leave{animation-name:tuiFade,tuiSlide,tuiCollapse}[tuiAlert]:not(:first-of-type){margin-block-start:0}[tuiAlert]:not(:last-of-type){margin-block-end:0}[tuiAlert]:nth-of-type(1){grid-row:5}[tuiAlert]:nth-of-type(2){grid-row:6}[tuiAlert]:nth-of-type(3){grid-row:7}[tuiAlert]:nth-of-type(4){grid-row:8}[tuiAlert]:nth-of-type(5){grid-row:9}[tuiAlert]>*{grid-row:1 / span 2}[tuiAlert]>*:before,[tuiAlert]>*:after{content:\"\";display:block;block-size:.375rem}\n"] }]
|
|
15
|
+
}] });
|
|
16
|
+
class TuiAlertDirective {
|
|
17
|
+
constructor() {
|
|
18
|
+
this.nothing = tuiWithStyles(Styles);
|
|
19
|
+
this.context = injectContext();
|
|
20
|
+
}
|
|
21
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAlertDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
22
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiAlertDirective, isStandalone: true, host: { attributes: { "role": "alert", "tuiAlert": "" }, properties: { "attr.data-block": "context.block", "attr.data-inline": "context.inline" } }, ngImport: i0 }); }
|
|
23
|
+
}
|
|
24
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAlertDirective, decorators: [{
|
|
25
|
+
type: Directive,
|
|
26
|
+
args: [{
|
|
27
|
+
host: {
|
|
28
|
+
role: 'alert',
|
|
29
|
+
tuiAlert: '',
|
|
30
|
+
'[attr.data-block]': 'context.block',
|
|
31
|
+
'[attr.data-inline]': 'context.inline',
|
|
32
|
+
},
|
|
33
|
+
}]
|
|
34
|
+
}] });
|
|
35
|
+
|
|
36
|
+
class TuiAlertService extends TuiPortal {
|
|
37
|
+
constructor(concurrency) {
|
|
38
|
+
super(inject(TuiPopupService));
|
|
39
|
+
this.current = new Map();
|
|
40
|
+
this.queue = new Set();
|
|
41
|
+
this.concurrency = Math.min(concurrency, 5);
|
|
42
|
+
}
|
|
43
|
+
add(component) {
|
|
44
|
+
if (this.current.size < this.concurrency) {
|
|
45
|
+
this.current.set(component, this.service.add(component));
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
this.queue.add(component);
|
|
49
|
+
}
|
|
50
|
+
return () => {
|
|
51
|
+
this.current.get(component)?.destroy();
|
|
52
|
+
this.current.delete(component);
|
|
53
|
+
this.queue.delete(component);
|
|
54
|
+
const [next] = this.queue;
|
|
55
|
+
if (this.current.size < this.concurrency && next) {
|
|
56
|
+
this.current.set(next, this.service.add(next));
|
|
57
|
+
this.queue.delete(next);
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAlertService, deps: "invalid", target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
62
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAlertService }); }
|
|
63
|
+
}
|
|
64
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAlertService, decorators: [{
|
|
65
|
+
type: Injectable
|
|
66
|
+
}], ctorParameters: () => [{ type: undefined }] });
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* Generated bundle index. Do not edit.
|
|
70
|
+
*/
|
|
71
|
+
|
|
72
|
+
export { TuiAlertDirective, TuiAlertService };
|
|
73
|
+
//# sourceMappingURL=taiga-ui-core-directives-alert.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"taiga-ui-core-directives-alert.mjs","sources":["../../../projects/core/directives/alert/alert.directive.ts","../../../projects/core/directives/alert/alert.service.ts","../../../projects/core/directives/alert/taiga-ui-core-directives-alert.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {injectContext} from '@taiga-ui/polymorpheus';\n\nexport interface TuiPositionOptions {\n readonly block: 'end' | 'start';\n readonly inline: 'center' | 'end' | 'start';\n}\n\n@Component({\n template: '',\n styleUrl: './alert.style.less',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {class: 'tui-alert-styles'},\n})\nclass Styles {}\n\n@Directive({\n host: {\n role: 'alert',\n tuiAlert: '',\n '[attr.data-block]': 'context.block',\n '[attr.data-inline]': 'context.inline',\n },\n})\nexport class TuiAlertDirective {\n protected readonly nothing = tuiWithStyles(Styles);\n protected readonly context = injectContext<TuiPositionOptions>();\n}\n","import {type ComponentRef, inject, Injectable} from '@angular/core';\nimport {TuiPortal} from '@taiga-ui/cdk/portals';\nimport {TuiPopupService} from '@taiga-ui/core/directives/popup';\nimport {type PolymorpheusComponent} from '@taiga-ui/polymorpheus';\n\n@Injectable()\nexport abstract class TuiAlertService<T, K = void> extends TuiPortal<T, K> {\n private readonly concurrency: number;\n private readonly current = new Map<unknown, ComponentRef<unknown>>();\n private readonly queue = new Set<PolymorpheusComponent<unknown>>();\n\n constructor(concurrency: number) {\n super(inject(TuiPopupService));\n this.concurrency = Math.min(concurrency, 5);\n }\n\n protected override add(component: PolymorpheusComponent<unknown>): () => void {\n if (this.current.size < this.concurrency) {\n this.current.set(component, this.service.add(component));\n } else {\n this.queue.add(component);\n }\n\n return () => {\n this.current.get(component)?.destroy();\n this.current.delete(component);\n this.queue.delete(component);\n\n const [next] = this.queue;\n\n if (this.current.size < this.concurrency && next) {\n this.current.set(next, this.service.add(next));\n this.queue.delete(next);\n }\n };\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -69,7 +69,6 @@ class TuiWithAppearance {
|
|
|
69
69
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiWithAppearance, decorators: [{
|
|
70
70
|
type: Directive,
|
|
71
71
|
args: [{
|
|
72
|
-
standalone: true,
|
|
73
72
|
hostDirectives: [
|
|
74
73
|
{
|
|
75
74
|
directive: TuiAppearance,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-core-directives-appearance.mjs","sources":["../../../projects/core/directives/appearance/appearance.options.ts","../../../projects/core/directives/appearance/appearance.directive.ts","../../../projects/core/directives/appearance/appearance.bindings.ts","../../../projects/core/directives/appearance/with-appearance.ts","../../../projects/core/directives/appearance/taiga-ui-core-directives-appearance.ts"],"sourcesContent":["import {type ExistingProvider, InjectionToken, type ProviderToken} from '@angular/core';\nimport {type TuiLooseUnion} from '@taiga-ui/cdk/types';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/miscellaneous';\n\n/**\n * Bundled appearances for autocomplete purposes, not exported on purpose\n */\ntype Appearance = TuiLooseUnion<\n | 'accent'\n | 'action-destructive'\n | 'action-grayscale'\n | 'action'\n | 'flat-destructive'\n | 'flat-grayscale'\n | 'flat'\n | 'floating'\n | 'glass'\n | 'icon'\n | 'info'\n | 'negative'\n | 'neutral'\n | 'outline-destructive'\n | 'outline-grayscale'\n | 'outline'\n | 'positive'\n | 'primary-destructive'\n | 'primary-grayscale'\n | 'primary'\n | 'secondary-destructive'\n | 'secondary-grayscale'\n | 'secondary'\n | 'textfield'\n | 'warning'\n>;\n\nexport interface TuiAppearanceOptions {\n readonly appearance: Appearance | '';\n}\n\nexport const TUI_APPEARANCE_DEFAULT_OPTIONS: TuiAppearanceOptions = {\n appearance: '',\n};\n\nexport const TUI_APPEARANCE_OPTIONS = new InjectionToken(\n ngDevMode ? 'TUI_APPEARANCE_OPTIONS' : '',\n {\n factory: () => TUI_APPEARANCE_DEFAULT_OPTIONS,\n },\n);\n\nexport function tuiAppearanceOptionsProvider(\n token: ProviderToken<TuiAppearanceOptions>,\n): ExistingProvider {\n return tuiProvide(TUI_APPEARANCE_OPTIONS, token);\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n Directive,\n inject,\n input,\n ViewEncapsulation,\n} from '@angular/core';\nimport {TuiTransitioned} from '@taiga-ui/cdk/directives/transitioned';\nimport {tuiIsString, tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {type TuiInteractiveState} from '@taiga-ui/core/types';\n\nimport {TUI_APPEARANCE_OPTIONS} from './appearance.options';\n\n@Component({\n template: '',\n styles: '@import \"@taiga-ui/core/styles/components/appearance.less\";',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {class: 'tui-appearance'},\n})\nclass Styles {}\n\n@Directive({\n selector: '[tuiAppearance]',\n hostDirectives: [TuiTransitioned],\n host: {\n tuiAppearance: '',\n '[attr.data-appearance]': 'tuiAppearance()',\n '[attr.data-state]': 'tuiAppearanceState()',\n '[attr.data-focus]': 'tuiAppearanceFocus()',\n '[attr.data-mode]': 'modes()',\n },\n})\nexport class TuiAppearance {\n protected readonly nothing = tuiWithStyles(Styles);\n protected readonly modes = computed((mode = this.tuiAppearanceMode()) =>\n !mode || tuiIsString(mode) ? mode : mode.join(' '),\n );\n\n public readonly tuiAppearance = input(inject(TUI_APPEARANCE_OPTIONS).appearance);\n public readonly tuiAppearanceState = input<TuiInteractiveState | null>(null);\n public readonly tuiAppearanceFocus = input<boolean | null>(null);\n public readonly tuiAppearanceMode = input<string | readonly string[] | null>(null);\n}\n","import {type InjectOptions, type Signal, type WritableSignal} from '@angular/core';\nimport {tuiDirectiveBinding} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {type TuiInteractiveState} from '@taiga-ui/core/types';\n\nimport {TuiAppearance} from './appearance.directive';\n\ntype A = string;\n\ntype S = TuiInteractiveState | null;\n\ntype F = boolean | null;\n\ntype M = string | readonly string[] | null;\n\nexport function tuiAppearance(\n value: A | WritableSignal<A>,\n options?: InjectOptions,\n): WritableSignal<A>;\nexport function tuiAppearance(value: Signal<A>, options?: InjectOptions): Signal<A>;\nexport function tuiAppearance(value: A | Signal<A>, options?: InjectOptions): Signal<A> {\n return tuiDirectiveBinding(TuiAppearance, 'tuiAppearance', value, options);\n}\n\nexport function tuiAppearanceState(\n value: S | WritableSignal<S>,\n options?: InjectOptions,\n): WritableSignal<S>;\nexport function tuiAppearanceState(value: Signal<S>, options?: InjectOptions): Signal<S>;\nexport function tuiAppearanceState(\n value: S | Signal<S>,\n options?: InjectOptions,\n): Signal<S> {\n return tuiDirectiveBinding(TuiAppearance, 'tuiAppearanceState', value, options);\n}\n\nexport function tuiAppearanceFocus(\n value: F | WritableSignal<F>,\n options?: InjectOptions,\n): WritableSignal<F>;\nexport function tuiAppearanceFocus(value: Signal<F>, options?: InjectOptions): Signal<F>;\nexport function tuiAppearanceFocus(\n value: F | Signal<F>,\n options?: InjectOptions,\n): Signal<F> {\n return tuiDirectiveBinding(TuiAppearance, 'tuiAppearanceFocus', value, options);\n}\n\nexport function tuiAppearanceMode(\n value: M | WritableSignal<M>,\n options?: InjectOptions,\n): WritableSignal<M>;\nexport function tuiAppearanceMode(value: Signal<M>, options?: InjectOptions): Signal<M>;\nexport function tuiAppearanceMode(\n value: M | Signal<M>,\n options?: InjectOptions,\n): Signal<M> {\n return tuiDirectiveBinding(TuiAppearance, 'tuiAppearanceMode', value, options);\n}\n","import {Directive} from '@angular/core';\n\nimport {TuiAppearance} from './appearance.directive';\n\n@Directive({\n
|
|
1
|
+
{"version":3,"file":"taiga-ui-core-directives-appearance.mjs","sources":["../../../projects/core/directives/appearance/appearance.options.ts","../../../projects/core/directives/appearance/appearance.directive.ts","../../../projects/core/directives/appearance/appearance.bindings.ts","../../../projects/core/directives/appearance/with-appearance.ts","../../../projects/core/directives/appearance/taiga-ui-core-directives-appearance.ts"],"sourcesContent":["import {type ExistingProvider, InjectionToken, type ProviderToken} from '@angular/core';\nimport {type TuiLooseUnion} from '@taiga-ui/cdk/types';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/miscellaneous';\n\n/**\n * Bundled appearances for autocomplete purposes, not exported on purpose\n */\ntype Appearance = TuiLooseUnion<\n | 'accent'\n | 'action-destructive'\n | 'action-grayscale'\n | 'action'\n | 'flat-destructive'\n | 'flat-grayscale'\n | 'flat'\n | 'floating'\n | 'glass'\n | 'icon'\n | 'info'\n | 'negative'\n | 'neutral'\n | 'outline-destructive'\n | 'outline-grayscale'\n | 'outline'\n | 'positive'\n | 'primary-destructive'\n | 'primary-grayscale'\n | 'primary'\n | 'secondary-destructive'\n | 'secondary-grayscale'\n | 'secondary'\n | 'textfield'\n | 'warning'\n>;\n\nexport interface TuiAppearanceOptions {\n readonly appearance: Appearance | '';\n}\n\nexport const TUI_APPEARANCE_DEFAULT_OPTIONS: TuiAppearanceOptions = {\n appearance: '',\n};\n\nexport const TUI_APPEARANCE_OPTIONS = new InjectionToken(\n ngDevMode ? 'TUI_APPEARANCE_OPTIONS' : '',\n {\n factory: () => TUI_APPEARANCE_DEFAULT_OPTIONS,\n },\n);\n\nexport function tuiAppearanceOptionsProvider(\n token: ProviderToken<TuiAppearanceOptions>,\n): ExistingProvider {\n return tuiProvide(TUI_APPEARANCE_OPTIONS, token);\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n computed,\n Directive,\n inject,\n input,\n ViewEncapsulation,\n} from '@angular/core';\nimport {TuiTransitioned} from '@taiga-ui/cdk/directives/transitioned';\nimport {tuiIsString, tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {type TuiInteractiveState} from '@taiga-ui/core/types';\n\nimport {TUI_APPEARANCE_OPTIONS} from './appearance.options';\n\n@Component({\n template: '',\n styles: '@import \"@taiga-ui/core/styles/components/appearance.less\";',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {class: 'tui-appearance'},\n})\nclass Styles {}\n\n@Directive({\n selector: '[tuiAppearance]',\n hostDirectives: [TuiTransitioned],\n host: {\n tuiAppearance: '',\n '[attr.data-appearance]': 'tuiAppearance()',\n '[attr.data-state]': 'tuiAppearanceState()',\n '[attr.data-focus]': 'tuiAppearanceFocus()',\n '[attr.data-mode]': 'modes()',\n },\n})\nexport class TuiAppearance {\n protected readonly nothing = tuiWithStyles(Styles);\n protected readonly modes = computed((mode = this.tuiAppearanceMode()) =>\n !mode || tuiIsString(mode) ? mode : mode.join(' '),\n );\n\n public readonly tuiAppearance = input(inject(TUI_APPEARANCE_OPTIONS).appearance);\n public readonly tuiAppearanceState = input<TuiInteractiveState | null>(null);\n public readonly tuiAppearanceFocus = input<boolean | null>(null);\n public readonly tuiAppearanceMode = input<string | readonly string[] | null>(null);\n}\n","import {type InjectOptions, type Signal, type WritableSignal} from '@angular/core';\nimport {tuiDirectiveBinding} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {type TuiInteractiveState} from '@taiga-ui/core/types';\n\nimport {TuiAppearance} from './appearance.directive';\n\ntype A = string;\n\ntype S = TuiInteractiveState | null;\n\ntype F = boolean | null;\n\ntype M = string | readonly string[] | null;\n\nexport function tuiAppearance(\n value: A | WritableSignal<A>,\n options?: InjectOptions,\n): WritableSignal<A>;\nexport function tuiAppearance(value: Signal<A>, options?: InjectOptions): Signal<A>;\nexport function tuiAppearance(value: A | Signal<A>, options?: InjectOptions): Signal<A> {\n return tuiDirectiveBinding(TuiAppearance, 'tuiAppearance', value, options);\n}\n\nexport function tuiAppearanceState(\n value: S | WritableSignal<S>,\n options?: InjectOptions,\n): WritableSignal<S>;\nexport function tuiAppearanceState(value: Signal<S>, options?: InjectOptions): Signal<S>;\nexport function tuiAppearanceState(\n value: S | Signal<S>,\n options?: InjectOptions,\n): Signal<S> {\n return tuiDirectiveBinding(TuiAppearance, 'tuiAppearanceState', value, options);\n}\n\nexport function tuiAppearanceFocus(\n value: F | WritableSignal<F>,\n options?: InjectOptions,\n): WritableSignal<F>;\nexport function tuiAppearanceFocus(value: Signal<F>, options?: InjectOptions): Signal<F>;\nexport function tuiAppearanceFocus(\n value: F | Signal<F>,\n options?: InjectOptions,\n): Signal<F> {\n return tuiDirectiveBinding(TuiAppearance, 'tuiAppearanceFocus', value, options);\n}\n\nexport function tuiAppearanceMode(\n value: M | WritableSignal<M>,\n options?: InjectOptions,\n): WritableSignal<M>;\nexport function tuiAppearanceMode(value: Signal<M>, options?: InjectOptions): Signal<M>;\nexport function tuiAppearanceMode(\n value: M | Signal<M>,\n options?: InjectOptions,\n): Signal<M> {\n return tuiDirectiveBinding(TuiAppearance, 'tuiAppearanceMode', value, options);\n}\n","import {Directive} from '@angular/core';\n\nimport {TuiAppearance} from './appearance.directive';\n\n@Directive({\n hostDirectives: [\n {\n directive: TuiAppearance,\n inputs: [\n 'tuiAppearance: appearance',\n 'tuiAppearanceState',\n 'tuiAppearanceFocus',\n 'tuiAppearanceMode',\n ],\n },\n ],\n})\nexport class TuiWithAppearance {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.TuiAppearance"],"mappings":";;;;;;AAuCa,MAAA,8BAA8B,GAAyB;AAChE,IAAA,UAAU,EAAE,EAAE;;AAGL,MAAA,sBAAsB,GAAG,IAAI,cAAc,CACpD,SAAS,GAAG,wBAAwB,GAAG,EAAE,EACzC;AACI,IAAA,OAAO,EAAE,MAAM,8BAA8B;AAChD,CAAA;AAGC,SAAU,4BAA4B,CACxC,KAA0C,EAAA;AAE1C,IAAA,OAAO,UAAU,CAAC,sBAAsB,EAAE,KAAK,CAAC;AACpD;;ACvCA,MAOM,MAAM,CAAA;+GAAN,MAAM,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAN,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,MAAM,oHANE,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,+gCAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FAMV,MAAM,EAAA,UAAA,EAAA,CAAA;kBAPX,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAE,EAEG,aAAA,EAAA,iBAAiB,CAAC,IAAI,EACpB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EACzC,IAAA,EAAA,EAAC,KAAK,EAAE,gBAAgB,EAAC,EAAA,MAAA,EAAA,CAAA,+gCAAA,CAAA,EAAA;;MAetB,aAAa,CAAA;AAX1B,IAAA,WAAA,GAAA;AAYuB,QAAA,IAAA,CAAA,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC;AAC/B,QAAA,IAAA,CAAA,KAAK,GAAG,QAAQ,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,iBAAiB,EAAE,KAChE,CAAC,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CACrD;QAEe,IAAa,CAAA,aAAA,GAAG,KAAK,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,UAAU,CAAC;AAChE,QAAA,IAAA,CAAA,kBAAkB,GAAG,KAAK,CAA6B,IAAI,CAAC;AAC5D,QAAA,IAAA,CAAA,kBAAkB,GAAG,KAAK,CAAiB,IAAI,CAAC;AAChD,QAAA,IAAA,CAAA,iBAAiB,GAAG,KAAK,CAAoC,IAAI,CAAC;AACrF;+GAVY,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAb,aAAa,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,eAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,kBAAA,EAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,UAAA,EAAA,oBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,kBAAA,EAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,UAAA,EAAA,oBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,UAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,eAAA,EAAA,EAAA,EAAA,EAAA,UAAA,EAAA,EAAA,sBAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,sBAAA,EAAA,iBAAA,EAAA,sBAAA,EAAA,gBAAA,EAAA,SAAA,EAAA,EAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,eAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAb,aAAa,EAAA,UAAA,EAAA,CAAA;kBAXzB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,iBAAiB;oBAC3B,cAAc,EAAE,CAAC,eAAe,CAAC;AACjC,oBAAA,IAAI,EAAE;AACF,wBAAA,aAAa,EAAE,EAAE;AACjB,wBAAA,wBAAwB,EAAE,iBAAiB;AAC3C,wBAAA,mBAAmB,EAAE,sBAAsB;AAC3C,wBAAA,mBAAmB,EAAE,sBAAsB;AAC3C,wBAAA,kBAAkB,EAAE,SAAS;AAChC,qBAAA;AACJ,iBAAA;;;ACfe,SAAA,aAAa,CAAC,KAAoB,EAAE,OAAuB,EAAA;IACvE,OAAO,mBAAmB,CAAC,aAAa,EAAE,eAAe,EAAE,KAAK,EAAE,OAAO,CAAC;AAC9E;AAOgB,SAAA,kBAAkB,CAC9B,KAAoB,EACpB,OAAuB,EAAA;IAEvB,OAAO,mBAAmB,CAAC,aAAa,EAAE,oBAAoB,EAAE,KAAK,EAAE,OAAO,CAAC;AACnF;AAOgB,SAAA,kBAAkB,CAC9B,KAAoB,EACpB,OAAuB,EAAA;IAEvB,OAAO,mBAAmB,CAAC,aAAa,EAAE,oBAAoB,EAAE,KAAK,EAAE,OAAO,CAAC;AACnF;AAOgB,SAAA,iBAAiB,CAC7B,KAAoB,EACpB,OAAuB,EAAA;IAEvB,OAAO,mBAAmB,CAAC,aAAa,EAAE,mBAAmB,EAAE,KAAK,EAAE,OAAO,CAAC;AAClF;;MCxCa,iBAAiB,CAAA;+GAAjB,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAjB,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAAA,aAAA,EAAA,MAAA,EAAA,CAAA,eAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,oBAAA,EAAA,oBAAA,EAAA,oBAAA,EAAA,mBAAA,EAAA,mBAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAb7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,cAAc,EAAE;AACZ,wBAAA;AACI,4BAAA,SAAS,EAAE,aAAa;AACxB,4BAAA,MAAM,EAAE;gCACJ,2BAA2B;gCAC3B,oBAAoB;gCACpB,oBAAoB;gCACpB,mBAAmB;AACtB,6BAAA;AACJ,yBAAA;AACJ,qBAAA;AACJ,iBAAA;;;AChBD;;AAEG;;;;"}
|
|
@@ -1,33 +1,39 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { inject,
|
|
3
|
-
import { tuiProvide } from '@taiga-ui/cdk/utils/miscellaneous';
|
|
2
|
+
import { input, inject, computed, Directive } from '@angular/core';
|
|
4
3
|
import { TUI_DATE_FORMAT } from '@taiga-ui/core/tokens';
|
|
5
|
-
import { Observable, combineLatest, map, ReplaySubject } from 'rxjs';
|
|
6
4
|
|
|
7
|
-
class TuiDateFormat
|
|
5
|
+
class TuiDateFormat {
|
|
8
6
|
constructor() {
|
|
9
|
-
|
|
10
|
-
.pipe(map(([parent, settings]) => ({ ...parent, ...settings })))
|
|
11
|
-
.subscribe(subscriber));
|
|
12
|
-
this.settings = new ReplaySubject(1);
|
|
13
|
-
this.parent = inject(TUI_DATE_FORMAT, { skipSelf: true });
|
|
14
|
-
}
|
|
15
|
-
set tuiDateFormat(format) {
|
|
16
|
-
this.settings.next(format);
|
|
7
|
+
this.tuiDateFormat = input.required();
|
|
17
8
|
}
|
|
18
9
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDateFormat, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
19
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "
|
|
10
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.15", type: TuiDateFormat, isStandalone: true, selector: "[tuiDateFormat]", inputs: { tuiDateFormat: { classPropertyName: "tuiDateFormat", publicName: "tuiDateFormat", isSignal: true, isRequired: true, transformFunction: null } }, providers: [
|
|
11
|
+
{
|
|
12
|
+
provide: TUI_DATE_FORMAT,
|
|
13
|
+
useFactory: () => {
|
|
14
|
+
const parent = inject(TUI_DATE_FORMAT, { skipSelf: true });
|
|
15
|
+
const format = inject(TuiDateFormat).tuiDateFormat;
|
|
16
|
+
return computed(() => ({ ...parent(), ...format() }));
|
|
17
|
+
},
|
|
18
|
+
},
|
|
19
|
+
], ngImport: i0 }); }
|
|
20
20
|
}
|
|
21
21
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDateFormat, decorators: [{
|
|
22
22
|
type: Directive,
|
|
23
23
|
args: [{
|
|
24
|
-
standalone: true,
|
|
25
24
|
selector: '[tuiDateFormat]',
|
|
26
|
-
providers: [
|
|
25
|
+
providers: [
|
|
26
|
+
{
|
|
27
|
+
provide: TUI_DATE_FORMAT,
|
|
28
|
+
useFactory: () => {
|
|
29
|
+
const parent = inject(TUI_DATE_FORMAT, { skipSelf: true });
|
|
30
|
+
const format = inject(TuiDateFormat).tuiDateFormat;
|
|
31
|
+
return computed(() => ({ ...parent(), ...format() }));
|
|
32
|
+
},
|
|
33
|
+
},
|
|
34
|
+
],
|
|
27
35
|
}]
|
|
28
|
-
}]
|
|
29
|
-
type: Input
|
|
30
|
-
}] } });
|
|
36
|
+
}] });
|
|
31
37
|
|
|
32
38
|
/**
|
|
33
39
|
* Generated bundle index. Do not edit.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"taiga-ui-core-directives-date-format.mjs","sources":["../../../projects/core/directives/date-format/date-format.directive.ts","../../../projects/core/directives/date-format/taiga-ui-core-directives-date-format.ts"],"sourcesContent":["import {Directive, inject,
|
|
1
|
+
{"version":3,"file":"taiga-ui-core-directives-date-format.mjs","sources":["../../../projects/core/directives/date-format/date-format.directive.ts","../../../projects/core/directives/date-format/taiga-ui-core-directives-date-format.ts"],"sourcesContent":["import {computed, Directive, inject, input} from '@angular/core';\nimport {TUI_DATE_FORMAT, type TuiDateFormatSettings} from '@taiga-ui/core/tokens';\n\n@Directive({\n selector: '[tuiDateFormat]',\n providers: [\n {\n provide: TUI_DATE_FORMAT,\n useFactory: () => {\n const parent = inject(TUI_DATE_FORMAT, {skipSelf: true});\n const format = inject(TuiDateFormat).tuiDateFormat;\n\n return computed(() => ({...parent(), ...format()}));\n },\n },\n ],\n})\nexport class TuiDateFormat {\n public readonly tuiDateFormat = input.required<Partial<TuiDateFormatSettings>>();\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;MAiBa,aAAa,CAAA;AAd1B,IAAA,WAAA,GAAA;AAeoB,QAAA,IAAA,CAAA,aAAa,GAAG,KAAK,CAAC,QAAQ,EAAkC;AACnF;+GAFY,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAb,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,aAAa,EAZX,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,eAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,SAAA,EAAA;AACP,YAAA;AACI,gBAAA,OAAO,EAAE,eAAe;gBACxB,UAAU,EAAE,MAAK;AACb,oBAAA,MAAM,MAAM,GAAG,MAAM,CAAC,eAAe,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;oBACxD,MAAM,MAAM,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC,aAAa;AAElD,oBAAA,OAAO,QAAQ,CAAC,OAAO,EAAC,GAAG,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,EAAC,CAAC,CAAC;iBACtD;AACJ,aAAA;AACJ,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAEQ,aAAa,EAAA,UAAA,EAAA,CAAA;kBAdzB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,SAAS,EAAE;AACP,wBAAA;AACI,4BAAA,OAAO,EAAE,eAAe;4BACxB,UAAU,EAAE,MAAK;AACb,gCAAA,MAAM,MAAM,GAAG,MAAM,CAAC,eAAe,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;AACxD,gCAAA,MAAM,MAAM,GAAG,MAAM,CAAe,aAAA,CAAA,CAAC,aAAa;AAElD,gCAAA,OAAO,QAAQ,CAAC,OAAO,EAAC,GAAG,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,EAAC,CAAC,CAAC;6BACtD;AACJ,yBAAA;AACJ,qBAAA;AACJ,iBAAA;;;AChBD;;AAEG;;;;"}
|