@taiga-ui/legacy 4.102.0 → 4.103.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/components/input-color/input-color.component.d.ts +3 -0
  2. package/esm2022/components/combo-box/combo-box.component.mjs +2 -2
  3. package/esm2022/components/input/input.component.mjs +2 -2
  4. package/esm2022/components/input-color/input-color.component.mjs +9 -3
  5. package/esm2022/components/input-copy/input-copy.component.mjs +2 -2
  6. package/esm2022/components/input-date/input-date.component.mjs +2 -2
  7. package/esm2022/components/input-date-multi/input-date-multi.component.mjs +2 -2
  8. package/esm2022/components/input-date-range/input-date-range.component.mjs +2 -2
  9. package/esm2022/components/input-date-time/input-date-time.component.mjs +2 -2
  10. package/esm2022/components/input-month/input-month.component.mjs +2 -2
  11. package/esm2022/components/input-month-range/input-month-range.component.mjs +2 -2
  12. package/esm2022/components/input-number/input-number.component.mjs +2 -2
  13. package/esm2022/components/input-password/input-password.component.mjs +2 -2
  14. package/esm2022/components/input-phone/input-phone.component.mjs +2 -2
  15. package/esm2022/components/input-range/input-range.component.mjs +2 -2
  16. package/esm2022/components/input-tag/input-tag.component.mjs +2 -2
  17. package/esm2022/components/input-time/input-time.component.mjs +2 -2
  18. package/esm2022/components/input-year/input-year.component.mjs +2 -2
  19. package/esm2022/components/multi-select/multi-select.component.mjs +2 -2
  20. package/esm2022/components/primitive-textfield/primitive-textfield.component.mjs +2 -2
  21. package/esm2022/components/primitive-textfield/textfield/textfield.component.mjs +2 -2
  22. package/esm2022/components/select/select.component.mjs +2 -2
  23. package/esm2022/components/textarea/textarea.component.mjs +2 -2
  24. package/fesm2022/taiga-ui-legacy-components-combo-box.mjs +2 -2
  25. package/fesm2022/taiga-ui-legacy-components-combo-box.mjs.map +1 -1
  26. package/fesm2022/taiga-ui-legacy-components-input-color.mjs +8 -2
  27. package/fesm2022/taiga-ui-legacy-components-input-color.mjs.map +1 -1
  28. package/fesm2022/taiga-ui-legacy-components-input-copy.mjs +2 -2
  29. package/fesm2022/taiga-ui-legacy-components-input-copy.mjs.map +1 -1
  30. package/fesm2022/taiga-ui-legacy-components-input-date-multi.mjs +2 -2
  31. package/fesm2022/taiga-ui-legacy-components-input-date-multi.mjs.map +1 -1
  32. package/fesm2022/taiga-ui-legacy-components-input-date-range.mjs +2 -2
  33. package/fesm2022/taiga-ui-legacy-components-input-date-range.mjs.map +1 -1
  34. package/fesm2022/taiga-ui-legacy-components-input-date-time.mjs +2 -2
  35. package/fesm2022/taiga-ui-legacy-components-input-date-time.mjs.map +1 -1
  36. package/fesm2022/taiga-ui-legacy-components-input-date.mjs +2 -2
  37. package/fesm2022/taiga-ui-legacy-components-input-date.mjs.map +1 -1
  38. package/fesm2022/taiga-ui-legacy-components-input-month-range.mjs +2 -2
  39. package/fesm2022/taiga-ui-legacy-components-input-month-range.mjs.map +1 -1
  40. package/fesm2022/taiga-ui-legacy-components-input-month.mjs +2 -2
  41. package/fesm2022/taiga-ui-legacy-components-input-month.mjs.map +1 -1
  42. package/fesm2022/taiga-ui-legacy-components-input-number.mjs +2 -2
  43. package/fesm2022/taiga-ui-legacy-components-input-number.mjs.map +1 -1
  44. package/fesm2022/taiga-ui-legacy-components-input-password.mjs +2 -2
  45. package/fesm2022/taiga-ui-legacy-components-input-password.mjs.map +1 -1
  46. package/fesm2022/taiga-ui-legacy-components-input-phone.mjs +2 -2
  47. package/fesm2022/taiga-ui-legacy-components-input-phone.mjs.map +1 -1
  48. package/fesm2022/taiga-ui-legacy-components-input-range.mjs +2 -2
  49. package/fesm2022/taiga-ui-legacy-components-input-range.mjs.map +1 -1
  50. package/fesm2022/taiga-ui-legacy-components-input-tag.mjs +2 -2
  51. package/fesm2022/taiga-ui-legacy-components-input-tag.mjs.map +1 -1
  52. package/fesm2022/taiga-ui-legacy-components-input-time.mjs +2 -2
  53. package/fesm2022/taiga-ui-legacy-components-input-time.mjs.map +1 -1
  54. package/fesm2022/taiga-ui-legacy-components-input-year.mjs +2 -2
  55. package/fesm2022/taiga-ui-legacy-components-input-year.mjs.map +1 -1
  56. package/fesm2022/taiga-ui-legacy-components-input.mjs +2 -2
  57. package/fesm2022/taiga-ui-legacy-components-input.mjs.map +1 -1
  58. package/fesm2022/taiga-ui-legacy-components-multi-select.mjs +2 -2
  59. package/fesm2022/taiga-ui-legacy-components-multi-select.mjs.map +1 -1
  60. package/fesm2022/taiga-ui-legacy-components-primitive-textfield.mjs +4 -4
  61. package/fesm2022/taiga-ui-legacy-components-primitive-textfield.mjs.map +1 -1
  62. package/fesm2022/taiga-ui-legacy-components-select.mjs +2 -2
  63. package/fesm2022/taiga-ui-legacy-components-select.mjs.map +1 -1
  64. package/fesm2022/taiga-ui-legacy-components-textarea.mjs +2 -2
  65. package/fesm2022/taiga-ui-legacy-components-textarea.mjs.map +1 -1
  66. package/package.json +42 -42
  67. package/styles/mixins/textfield.less +18 -12
  68. package/utils/icons-path-factory.d.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-legacy-components-textarea.mjs","sources":["../../../projects/legacy/components/textarea/textarea.component.ts","../../../projects/legacy/components/textarea/textarea.template.html","../../../projects/legacy/components/textarea/textarea.directive.ts","../../../projects/legacy/components/textarea/textarea.module.ts","../../../projects/legacy/components/textarea/taiga-ui-legacy-components-textarea.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ElementRef,\n inject,\n Input,\n ViewChild,\n} from '@angular/core';\nimport {TUI_IS_IOS} from '@taiga-ui/cdk/tokens';\nimport {type TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiIsNativeFocused} from '@taiga-ui/cdk/utils/focus';\nimport {TUI_TEXTFIELD_OPTIONS} from '@taiga-ui/core/components/textfield';\nimport {TuiHintOptionsDirective} from '@taiga-ui/core/directives/hint';\nimport {type TuiSizeL, type TuiSizeS} from '@taiga-ui/core/types';\nimport {AbstractTuiControl, tuiAsControl} from '@taiga-ui/legacy/classes';\nimport {\n TUI_ICON_START_PADDINGS,\n TuiTextfieldComponent,\n} from '@taiga-ui/legacy/components/primitive-textfield';\nimport {\n TEXTFIELD_CONTROLLER_PROVIDER,\n TUI_TEXTFIELD_WATCHED_CONTROLLER,\n} from '@taiga-ui/legacy/directives';\nimport {\n tuiAsFocusableItemAccessor,\n type TuiFocusableElementAccessor,\n} from '@taiga-ui/legacy/tokens';\nimport {tuiGetBorder} from '@taiga-ui/legacy/utils';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\nexport const DEFAULT_ROWS = 20;\nexport const LINE_HEIGHT_M = 20;\nexport const LINE_HEIGHT_L = 24;\n\n/**\n * TODO(v5): delete it\n * @deprecated use new version of {@link https://taiga-ui.dev/components/textarea Textarea} (from @taiga-ui/kit) instead\n */\n@Component({\n standalone: false,\n selector: 'tui-textarea',\n templateUrl: './textarea.template.html',\n styleUrls: ['./textarea.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiTextareaComponent),\n tuiAsControl(TuiTextareaComponent),\n TEXTFIELD_CONTROLLER_PROVIDER,\n ],\n host: {\n '[attr.data-size]': 'size',\n '[class._ios]': 'isIOS',\n '[class._expandable]': 'expandable',\n '[class._has-counter]': 'hasCounter',\n '[class._label-outside]': 'labelOutside',\n '[class._has-tooltip]': 'hasTooltip',\n '[class._has-value]': 'hasValue',\n '[style.--t-border-end.rem]': 'borderEnd',\n '[style.--t-border-start.rem]': 'borderStart',\n '(focusin)': 'onFocused(true)',\n '(focusout)': 'onFocused(false)',\n },\n})\nexport class TuiTextareaComponent\n extends AbstractTuiControl<string>\n implements TuiFocusableElementAccessor\n{\n @ViewChild('focusableElement')\n private readonly focusableElement?: ElementRef<HTMLTextAreaElement>;\n\n @ContentChild(TuiTextfieldComponent, {read: ElementRef})\n private readonly textfield?: ElementRef<HTMLTextAreaElement>;\n\n private readonly options = inject(TUI_TEXTFIELD_OPTIONS);\n\n protected readonly isIOS = inject(TUI_IS_IOS);\n protected readonly controller = inject(TUI_TEXTFIELD_WATCHED_CONTROLLER);\n protected readonly hintOptions = inject(TuiHintOptionsDirective, {optional: true});\n\n @Input()\n public rows = DEFAULT_ROWS;\n\n @Input()\n public maxLength: number | null = null;\n\n @Input()\n public expandable = false;\n\n public get nativeFocusableElement(): HTMLTextAreaElement | null {\n if (this.computedDisabled) {\n return null;\n }\n\n return (\n this.textfield?.nativeElement || this.focusableElement?.nativeElement || null\n );\n }\n\n public get focused(): boolean {\n return tuiIsNativeFocused(this.nativeFocusableElement);\n }\n\n public get computeMaxHeight(): number | null {\n return this.expandable ? this.rows * this.lineHeight : null;\n }\n\n public onValueChange(value: string): void {\n this.value = value;\n }\n\n protected get labelOutside(): boolean {\n return this.options.appearance() === 'table' || this.controller.labelOutside;\n }\n\n protected get size(): TuiSizeL | TuiSizeS {\n return this.controller.size;\n }\n\n protected get borderStart(): number {\n return this.iconLeftContent ? TUI_ICON_START_PADDINGS[this.size] : 0;\n }\n\n protected get borderEnd(): number {\n return tuiGetBorder(\n !!this.iconContent,\n this.hasCleaner,\n this.hasTooltip,\n this.hasCustomContent,\n this.size,\n );\n }\n\n protected get hasTooltip(): boolean {\n return (\n !!this.hintOptions?.content &&\n (this.controller.options.hintOnDisabled || !this.computedDisabled)\n );\n }\n\n protected get hasValue(): boolean {\n return this.value !== '';\n }\n\n protected get hasCounter(): boolean {\n return !!this.maxLength && this.interactive;\n }\n\n protected get appearance(): string {\n return this.options.appearance() === 'table'\n ? 'table'\n : this.controller.appearance;\n }\n\n protected get hasCleaner(): boolean {\n return this.controller.cleaner && this.hasValue && this.interactive;\n }\n\n protected get hasPlaceholder(): boolean {\n return this.placeholderRaisable || (!this.hasValue && !this.hasExampleText);\n }\n\n protected get hasCustomContent(): boolean {\n return !!this.controller.customContent;\n }\n\n protected get iconLeftContent(): PolymorpheusContent<\n TuiContext<TuiSizeL | TuiSizeS>\n > {\n return this.controller.iconStart;\n }\n\n protected get iconContent(): PolymorpheusContent<TuiContext<TuiSizeL | TuiSizeS>> {\n return this.controller.icon;\n }\n\n protected get iconCleaner(): PolymorpheusContent<TuiContext<TuiSizeL | TuiSizeS>> {\n return this.controller.options.iconCleaner;\n }\n\n protected get hasExampleText(): boolean {\n return (\n !!this.textfield?.nativeElement.placeholder &&\n this.focused &&\n !this.hasValue &&\n !this.readOnly\n );\n }\n\n protected get placeholderRaised(): boolean {\n return (\n this.placeholderRaisable &&\n ((this.computedFocused && !this.readOnly) || this.hasValue)\n );\n }\n\n protected get fittedContent(): string {\n return this.value.slice(0, this.maxLength || Infinity);\n }\n\n protected get extraContent(): string {\n return this.value.slice(this.maxLength || Infinity);\n }\n\n protected onFocused(focused: boolean): void {\n this.updateFocused(focused);\n }\n\n protected onMouseDown(event: MouseEvent): void {\n if (event.target === this.nativeFocusableElement) {\n return;\n }\n\n event.preventDefault();\n\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.focus();\n }\n }\n\n protected getFallbackValue(): string {\n return '';\n }\n\n private get lineHeight(): number {\n return this.controller.size === 'm' ? LINE_HEIGHT_M : LINE_HEIGHT_L;\n }\n\n private get placeholderRaisable(): boolean {\n return this.size !== 's' && !this.controller.labelOutside;\n }\n}\n","<ng-container *ngIf=\"hintOptions?.change$ | async\" />\n<div\n automation-id=\"tui-text-area__wrapper\"\n tuiWrapper\n class=\"t-outline\"\n [appearance]=\"appearance\"\n [disabled]=\"disabled\"\n [focus]=\"computedFocused\"\n [hover]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [readOnly]=\"readOnly\"\n>\n <div\n *ngIf=\"hasCounter\"\n automation-id=\"tui-text-area__counter\"\n class=\"t-counter\"\n >\n {{ value.length }}/{{ maxLength }}\n </div>\n\n <label\n class=\"t-content\"\n (mousedown)=\"onMouseDown($event)\"\n >\n <div class=\"t-wrapper\">\n <div\n *ngIf=\"hasPlaceholder\"\n automation-id=\"tui-text-area__placeholder\"\n class=\"t-placeholder\"\n [class.t-placeholder_raised]=\"placeholderRaised\"\n >\n <ng-content />\n </div>\n <tui-scrollbar\n automation-id=\"tui-text-area__scrollbar\"\n class=\"t-box\"\n [style.maxHeight.px]=\"computeMaxHeight\"\n >\n <div class=\"t-input-wrapper\">\n <div class=\"t-relative\">\n <div\n aria-hidden=\"true\"\n class=\"t-pseudo-content\"\n >\n <span [textContent]=\"fittedContent || nativeFocusableElement?.placeholder\"></span>\n <span\n class=\"t-pseudo-content__extra\"\n [textContent]=\"extraContent\"\n ></span>\n <span class=\"t-caret\"></span>\n </div>\n <textarea\n #focusableElement\n automation-id=\"tui-text-area__native\"\n class=\"t-input\"\n [disabled]=\"computedDisabled\"\n [id]=\"id\"\n [ngModelOptions]=\"{standalone: true}\"\n [readOnly]=\"readOnly\"\n [tabIndex]=\"computedFocusable ? 0 : -1\"\n [(ngModel)]=\"value\"\n ></textarea>\n <ng-content select=\"textarea\" />\n </div>\n </div>\n </tui-scrollbar>\n </div>\n <div class=\"t-icons\">\n <div\n *ngIf=\"iconLeftContent\"\n class=\"t-icon t-icon_left t-textfield-icon\"\n >\n <tui-icon\n *polymorpheusOutlet=\"iconLeftContent as src; context: {$implicit: size}\"\n tuiAppearance=\"icon\"\n [icon]=\"src.toString()\"\n />\n </div>\n <ng-container *ngIf=\"hasCustomContent\">\n <tui-icon\n *polymorpheusOutlet=\"controller.customContent as src\"\n [icon]=\"src\"\n />\n </ng-container>\n <ng-container *ngIf=\"hasCleaner\">\n <tui-icon\n *polymorpheusOutlet=\"iconCleaner as src; context: {$implicit: size}\"\n tuiAppearance=\"icon\"\n class=\"t-cleaner\"\n [icon]=\"src.toString()\"\n (click.stop)=\"onValueChange('')\"\n />\n </ng-container>\n <tui-tooltip\n *ngIf=\"hasTooltip\"\n automation-id=\"tui-text-area__tooltip\"\n [content]=\"hintOptions?.content\"\n [describeId]=\"id\"\n />\n <div\n *ngIf=\"iconContent\"\n class=\"t-icon t-textfield-icon\"\n >\n <tui-icon\n *polymorpheusOutlet=\"iconContent as src; context: {$implicit: size}\"\n tuiAppearance=\"icon\"\n [icon]=\"src.toString()\"\n />\n </div>\n </div>\n </label>\n</div>\n","import {Directive} from '@angular/core';\nimport {AbstractTuiTextfieldHost} from '@taiga-ui/legacy/classes';\nimport {tuiAsTextfieldHost} from '@taiga-ui/legacy/tokens';\n\nimport {type TuiTextareaComponent} from './textarea.component';\n\n/**\n * TODO(v5): delete it\n * @deprecated use new version of {@link https://taiga-ui.dev/components/textarea Textarea} (from @taiga-ui/kit) instead\n */\n@Directive({\n standalone: false,\n selector: 'tui-textarea',\n providers: [tuiAsTextfieldHost(TuiTextareaDirective)],\n})\nexport class TuiTextareaDirective extends AbstractTuiTextfieldHost<TuiTextareaComponent> {\n public onValueChange(value: string): void {\n this.host.onValueChange(value);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TuiIcon} from '@taiga-ui/core/components/icon';\nimport {TuiScrollbar} from '@taiga-ui/core/components/scrollbar';\nimport {TuiAppearance} from '@taiga-ui/core/directives/appearance';\nimport {\n TuiPrimitiveTextfieldModule,\n TuiTextfieldComponent,\n} from '@taiga-ui/legacy/components/primitive-textfield';\nimport {TuiTooltipModule} from '@taiga-ui/legacy/components/tooltip';\nimport {TuiWrapperModule} from '@taiga-ui/legacy/directives';\nimport {PolymorpheusOutlet, PolymorpheusTemplate} from '@taiga-ui/polymorpheus';\n\nimport {TuiTextareaComponent} from './textarea.component';\nimport {TuiTextareaDirective} from './textarea.directive';\n\n/**\n * TODO(v5): delete it\n * @deprecated use new version of {@link https://taiga-ui.dev/components/textarea Textarea} (from @taiga-ui/kit) instead\n */\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n TuiScrollbar,\n TuiTooltipModule,\n TuiWrapperModule,\n TuiPrimitiveTextfieldModule,\n PolymorpheusOutlet,\n PolymorpheusTemplate,\n TuiIcon,\n TuiAppearance,\n ],\n declarations: [TuiTextareaComponent, TuiTextareaDirective],\n exports: [\n TuiTextareaComponent,\n TuiTextareaDirective,\n TuiTextfieldComponent,\n PolymorpheusOutlet,\n PolymorpheusTemplate,\n ],\n})\nexport class TuiTextareaModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-legacy-components-textarea.mjs","sources":["../../../projects/legacy/components/textarea/textarea.component.ts","../../../projects/legacy/components/textarea/textarea.template.html","../../../projects/legacy/components/textarea/textarea.directive.ts","../../../projects/legacy/components/textarea/textarea.module.ts","../../../projects/legacy/components/textarea/taiga-ui-legacy-components-textarea.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n ElementRef,\n inject,\n Input,\n ViewChild,\n} from '@angular/core';\nimport {TUI_IS_IOS} from '@taiga-ui/cdk/tokens';\nimport {type TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiIsNativeFocused} from '@taiga-ui/cdk/utils/focus';\nimport {TUI_TEXTFIELD_OPTIONS} from '@taiga-ui/core/components/textfield';\nimport {TuiHintOptionsDirective} from '@taiga-ui/core/directives/hint';\nimport {type TuiSizeL, type TuiSizeS} from '@taiga-ui/core/types';\nimport {AbstractTuiControl, tuiAsControl} from '@taiga-ui/legacy/classes';\nimport {\n TUI_ICON_START_PADDINGS,\n TuiTextfieldComponent,\n} from '@taiga-ui/legacy/components/primitive-textfield';\nimport {\n TEXTFIELD_CONTROLLER_PROVIDER,\n TUI_TEXTFIELD_WATCHED_CONTROLLER,\n} from '@taiga-ui/legacy/directives';\nimport {\n tuiAsFocusableItemAccessor,\n type TuiFocusableElementAccessor,\n} from '@taiga-ui/legacy/tokens';\nimport {tuiGetBorder} from '@taiga-ui/legacy/utils';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\nexport const DEFAULT_ROWS = 20;\nexport const LINE_HEIGHT_M = 20;\nexport const LINE_HEIGHT_L = 24;\n\n/**\n * TODO(v5): delete it\n * @deprecated use new version of {@link https://taiga-ui.dev/components/textarea Textarea} (from @taiga-ui/kit) instead\n */\n@Component({\n standalone: false,\n selector: 'tui-textarea',\n templateUrl: './textarea.template.html',\n styleUrls: ['./textarea.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiTextareaComponent),\n tuiAsControl(TuiTextareaComponent),\n TEXTFIELD_CONTROLLER_PROVIDER,\n ],\n host: {\n '[attr.data-size]': 'size',\n '[class._ios]': 'isIOS',\n '[class._expandable]': 'expandable',\n '[class._has-counter]': 'hasCounter',\n '[class._label-outside]': 'labelOutside',\n '[class._has-tooltip]': 'hasTooltip',\n '[class._has-value]': 'hasValue',\n '[style.--t-border-end.rem]': 'borderEnd',\n '[style.--t-border-start.rem]': 'borderStart',\n '(focusin)': 'onFocused(true)',\n '(focusout)': 'onFocused(false)',\n },\n})\nexport class TuiTextareaComponent\n extends AbstractTuiControl<string>\n implements TuiFocusableElementAccessor\n{\n @ViewChild('focusableElement')\n private readonly focusableElement?: ElementRef<HTMLTextAreaElement>;\n\n @ContentChild(TuiTextfieldComponent, {read: ElementRef})\n private readonly textfield?: ElementRef<HTMLTextAreaElement>;\n\n private readonly options = inject(TUI_TEXTFIELD_OPTIONS);\n\n protected readonly isIOS = inject(TUI_IS_IOS);\n protected readonly controller = inject(TUI_TEXTFIELD_WATCHED_CONTROLLER);\n protected readonly hintOptions = inject(TuiHintOptionsDirective, {optional: true});\n\n @Input()\n public rows = DEFAULT_ROWS;\n\n @Input()\n public maxLength: number | null = null;\n\n @Input()\n public expandable = false;\n\n public get nativeFocusableElement(): HTMLTextAreaElement | null {\n if (this.computedDisabled) {\n return null;\n }\n\n return (\n this.textfield?.nativeElement || this.focusableElement?.nativeElement || null\n );\n }\n\n public get focused(): boolean {\n return tuiIsNativeFocused(this.nativeFocusableElement);\n }\n\n public get computeMaxHeight(): number | null {\n return this.expandable ? this.rows * this.lineHeight : null;\n }\n\n public onValueChange(value: string): void {\n this.value = value;\n }\n\n protected get labelOutside(): boolean {\n return this.options.appearance() === 'table' || this.controller.labelOutside;\n }\n\n protected get size(): TuiSizeL | TuiSizeS {\n return this.controller.size;\n }\n\n protected get borderStart(): number {\n return this.iconLeftContent ? TUI_ICON_START_PADDINGS[this.size] : 0;\n }\n\n protected get borderEnd(): number {\n return tuiGetBorder(\n !!this.iconContent,\n this.hasCleaner,\n this.hasTooltip,\n this.hasCustomContent,\n this.size,\n );\n }\n\n protected get hasTooltip(): boolean {\n return (\n !!this.hintOptions?.content &&\n (this.controller.options.hintOnDisabled || !this.computedDisabled)\n );\n }\n\n protected get hasValue(): boolean {\n return this.value !== '';\n }\n\n protected get hasCounter(): boolean {\n return !!this.maxLength && this.interactive;\n }\n\n protected get appearance(): string {\n return this.options.appearance() === 'table'\n ? 'table'\n : this.controller.appearance;\n }\n\n protected get hasCleaner(): boolean {\n return this.controller.cleaner && this.hasValue && this.interactive;\n }\n\n protected get hasPlaceholder(): boolean {\n return this.placeholderRaisable || (!this.hasValue && !this.hasExampleText);\n }\n\n protected get hasCustomContent(): boolean {\n return !!this.controller.customContent;\n }\n\n protected get iconLeftContent(): PolymorpheusContent<\n TuiContext<TuiSizeL | TuiSizeS>\n > {\n return this.controller.iconStart;\n }\n\n protected get iconContent(): PolymorpheusContent<TuiContext<TuiSizeL | TuiSizeS>> {\n return this.controller.icon;\n }\n\n protected get iconCleaner(): PolymorpheusContent<TuiContext<TuiSizeL | TuiSizeS>> {\n return this.controller.options.iconCleaner;\n }\n\n protected get hasExampleText(): boolean {\n return (\n !!this.textfield?.nativeElement.placeholder &&\n this.focused &&\n !this.hasValue &&\n !this.readOnly\n );\n }\n\n protected get placeholderRaised(): boolean {\n return (\n this.placeholderRaisable &&\n ((this.computedFocused && !this.readOnly) || this.hasValue)\n );\n }\n\n protected get fittedContent(): string {\n return this.value.slice(0, this.maxLength || Infinity);\n }\n\n protected get extraContent(): string {\n return this.value.slice(this.maxLength || Infinity);\n }\n\n protected onFocused(focused: boolean): void {\n this.updateFocused(focused);\n }\n\n protected onMouseDown(event: MouseEvent): void {\n if (event.target === this.nativeFocusableElement) {\n return;\n }\n\n event.preventDefault();\n\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.focus();\n }\n }\n\n protected getFallbackValue(): string {\n return '';\n }\n\n private get lineHeight(): number {\n return this.controller.size === 'm' ? LINE_HEIGHT_M : LINE_HEIGHT_L;\n }\n\n private get placeholderRaisable(): boolean {\n return this.size !== 's' && !this.controller.labelOutside;\n }\n}\n","<ng-container *ngIf=\"hintOptions?.change$ | async\" />\n<div\n automation-id=\"tui-text-area__wrapper\"\n tuiWrapper\n class=\"t-outline\"\n [appearance]=\"appearance\"\n [disabled]=\"disabled\"\n [focus]=\"computedFocused\"\n [hover]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [readOnly]=\"readOnly\"\n>\n <div\n *ngIf=\"hasCounter\"\n automation-id=\"tui-text-area__counter\"\n class=\"t-counter\"\n >\n {{ value.length }}/{{ maxLength }}\n </div>\n\n <label\n class=\"t-content\"\n (mousedown)=\"onMouseDown($event)\"\n >\n <div class=\"t-wrapper\">\n <div\n *ngIf=\"hasPlaceholder\"\n automation-id=\"tui-text-area__placeholder\"\n class=\"t-placeholder\"\n [class.t-placeholder_raised]=\"placeholderRaised\"\n >\n <ng-content />\n </div>\n <tui-scrollbar\n automation-id=\"tui-text-area__scrollbar\"\n class=\"t-box\"\n [style.maxHeight.px]=\"computeMaxHeight\"\n >\n <div class=\"t-input-wrapper\">\n <div class=\"t-relative\">\n <div\n aria-hidden=\"true\"\n class=\"t-pseudo-content\"\n >\n <span [textContent]=\"fittedContent || nativeFocusableElement?.placeholder\"></span>\n <span\n class=\"t-pseudo-content__extra\"\n [textContent]=\"extraContent\"\n ></span>\n <span class=\"t-caret\"></span>\n </div>\n <textarea\n #focusableElement\n automation-id=\"tui-text-area__native\"\n class=\"t-input\"\n [disabled]=\"computedDisabled\"\n [id]=\"id\"\n [ngModelOptions]=\"{standalone: true}\"\n [readOnly]=\"readOnly\"\n [tabIndex]=\"computedFocusable ? 0 : -1\"\n [(ngModel)]=\"value\"\n ></textarea>\n <ng-content select=\"textarea\" />\n </div>\n </div>\n </tui-scrollbar>\n </div>\n <div class=\"t-icons\">\n <div\n *ngIf=\"iconLeftContent\"\n class=\"t-icon t-icon_left t-textfield-icon\"\n >\n <tui-icon\n *polymorpheusOutlet=\"iconLeftContent as src; context: {$implicit: size}\"\n tuiAppearance=\"icon\"\n [icon]=\"src.toString()\"\n />\n </div>\n <ng-container *ngIf=\"hasCustomContent\">\n <tui-icon\n *polymorpheusOutlet=\"controller.customContent as src\"\n [icon]=\"src\"\n />\n </ng-container>\n <ng-container *ngIf=\"hasCleaner\">\n <tui-icon\n *polymorpheusOutlet=\"iconCleaner as src; context: {$implicit: size}\"\n tuiAppearance=\"icon\"\n class=\"t-cleaner\"\n [icon]=\"src.toString()\"\n (click.stop)=\"onValueChange('')\"\n />\n </ng-container>\n <tui-tooltip\n *ngIf=\"hasTooltip\"\n automation-id=\"tui-text-area__tooltip\"\n [content]=\"hintOptions?.content\"\n [describeId]=\"id\"\n />\n <div\n *ngIf=\"iconContent\"\n class=\"t-icon t-textfield-icon\"\n >\n <tui-icon\n *polymorpheusOutlet=\"iconContent as src; context: {$implicit: size}\"\n tuiAppearance=\"icon\"\n [icon]=\"src.toString()\"\n />\n </div>\n </div>\n </label>\n</div>\n","import {Directive} from '@angular/core';\nimport {AbstractTuiTextfieldHost} from '@taiga-ui/legacy/classes';\nimport {tuiAsTextfieldHost} from '@taiga-ui/legacy/tokens';\n\nimport {type TuiTextareaComponent} from './textarea.component';\n\n/**\n * TODO(v5): delete it\n * @deprecated use new version of {@link https://taiga-ui.dev/components/textarea Textarea} (from @taiga-ui/kit) instead\n */\n@Directive({\n standalone: false,\n selector: 'tui-textarea',\n providers: [tuiAsTextfieldHost(TuiTextareaDirective)],\n})\nexport class TuiTextareaDirective extends AbstractTuiTextfieldHost<TuiTextareaComponent> {\n public onValueChange(value: string): void {\n this.host.onValueChange(value);\n }\n}\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TuiIcon} from '@taiga-ui/core/components/icon';\nimport {TuiScrollbar} from '@taiga-ui/core/components/scrollbar';\nimport {TuiAppearance} from '@taiga-ui/core/directives/appearance';\nimport {\n TuiPrimitiveTextfieldModule,\n TuiTextfieldComponent,\n} from '@taiga-ui/legacy/components/primitive-textfield';\nimport {TuiTooltipModule} from '@taiga-ui/legacy/components/tooltip';\nimport {TuiWrapperModule} from '@taiga-ui/legacy/directives';\nimport {PolymorpheusOutlet, PolymorpheusTemplate} from '@taiga-ui/polymorpheus';\n\nimport {TuiTextareaComponent} from './textarea.component';\nimport {TuiTextareaDirective} from './textarea.directive';\n\n/**\n * TODO(v5): delete it\n * @deprecated use new version of {@link https://taiga-ui.dev/components/textarea Textarea} (from @taiga-ui/kit) instead\n */\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n TuiScrollbar,\n TuiTooltipModule,\n TuiWrapperModule,\n TuiPrimitiveTextfieldModule,\n PolymorpheusOutlet,\n PolymorpheusTemplate,\n TuiIcon,\n TuiAppearance,\n ],\n declarations: [TuiTextareaComponent, TuiTextareaDirective],\n exports: [\n TuiTextareaComponent,\n TuiTextareaDirective,\n TuiTextfieldComponent,\n PolymorpheusOutlet,\n PolymorpheusTemplate,\n ],\n})\nexport class TuiTextareaModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@taiga-ui/legacy",
3
- "version": "4.102.0",
3
+ "version": "4.103.0",
4
4
  "description": "Legacy Taiga UI entities from the previous major release to simplify migration",
5
5
  "keywords": [
6
6
  "legacy",
@@ -69,18 +69,18 @@
69
69
  "esm": "./esm2022/components/arrow/taiga-ui-legacy-components-arrow.mjs",
70
70
  "default": "./fesm2022/taiga-ui-legacy-components-arrow.mjs"
71
71
  },
72
- "./components/color-selector": {
73
- "types": "./components/color-selector/index.d.ts",
74
- "esm2022": "./esm2022/components/color-selector/taiga-ui-legacy-components-color-selector.mjs",
75
- "esm": "./esm2022/components/color-selector/taiga-ui-legacy-components-color-selector.mjs",
76
- "default": "./fesm2022/taiga-ui-legacy-components-color-selector.mjs"
77
- },
78
72
  "./components/combo-box": {
79
73
  "types": "./components/combo-box/index.d.ts",
80
74
  "esm2022": "./esm2022/components/combo-box/taiga-ui-legacy-components-combo-box.mjs",
81
75
  "esm": "./esm2022/components/combo-box/taiga-ui-legacy-components-combo-box.mjs",
82
76
  "default": "./fesm2022/taiga-ui-legacy-components-combo-box.mjs"
83
77
  },
78
+ "./components/color-selector": {
79
+ "types": "./components/color-selector/index.d.ts",
80
+ "esm2022": "./esm2022/components/color-selector/taiga-ui-legacy-components-color-selector.mjs",
81
+ "esm": "./esm2022/components/color-selector/taiga-ui-legacy-components-color-selector.mjs",
82
+ "default": "./fesm2022/taiga-ui-legacy-components-color-selector.mjs"
83
+ },
84
84
  "./components/input": {
85
85
  "types": "./components/input/index.d.ts",
86
86
  "esm2022": "./esm2022/components/input/taiga-ui-legacy-components-input.mjs",
@@ -99,12 +99,6 @@
99
99
  "esm": "./esm2022/components/input-copy/taiga-ui-legacy-components-input-copy.mjs",
100
100
  "default": "./fesm2022/taiga-ui-legacy-components-input-copy.mjs"
101
101
  },
102
- "./components/input-date": {
103
- "types": "./components/input-date/index.d.ts",
104
- "esm2022": "./esm2022/components/input-date/taiga-ui-legacy-components-input-date.mjs",
105
- "esm": "./esm2022/components/input-date/taiga-ui-legacy-components-input-date.mjs",
106
- "default": "./fesm2022/taiga-ui-legacy-components-input-date.mjs"
107
- },
108
102
  "./components/input-date-multi": {
109
103
  "types": "./components/input-date-multi/index.d.ts",
110
104
  "esm2022": "./esm2022/components/input-date-multi/taiga-ui-legacy-components-input-date-multi.mjs",
@@ -117,17 +111,23 @@
117
111
  "esm": "./esm2022/components/input-date-range/taiga-ui-legacy-components-input-date-range.mjs",
118
112
  "default": "./fesm2022/taiga-ui-legacy-components-input-date-range.mjs"
119
113
  },
114
+ "./components/input-month": {
115
+ "types": "./components/input-month/index.d.ts",
116
+ "esm2022": "./esm2022/components/input-month/taiga-ui-legacy-components-input-month.mjs",
117
+ "esm": "./esm2022/components/input-month/taiga-ui-legacy-components-input-month.mjs",
118
+ "default": "./fesm2022/taiga-ui-legacy-components-input-month.mjs"
119
+ },
120
120
  "./components/input-date-time": {
121
121
  "types": "./components/input-date-time/index.d.ts",
122
122
  "esm2022": "./esm2022/components/input-date-time/taiga-ui-legacy-components-input-date-time.mjs",
123
123
  "esm": "./esm2022/components/input-date-time/taiga-ui-legacy-components-input-date-time.mjs",
124
124
  "default": "./fesm2022/taiga-ui-legacy-components-input-date-time.mjs"
125
125
  },
126
- "./components/input-month": {
127
- "types": "./components/input-month/index.d.ts",
128
- "esm2022": "./esm2022/components/input-month/taiga-ui-legacy-components-input-month.mjs",
129
- "esm": "./esm2022/components/input-month/taiga-ui-legacy-components-input-month.mjs",
130
- "default": "./fesm2022/taiga-ui-legacy-components-input-month.mjs"
126
+ "./components/input-date": {
127
+ "types": "./components/input-date/index.d.ts",
128
+ "esm2022": "./esm2022/components/input-date/taiga-ui-legacy-components-input-date.mjs",
129
+ "esm": "./esm2022/components/input-date/taiga-ui-legacy-components-input-date.mjs",
130
+ "default": "./fesm2022/taiga-ui-legacy-components-input-date.mjs"
131
131
  },
132
132
  "./components/input-month-range": {
133
133
  "types": "./components/input-month-range/index.d.ts",
@@ -153,18 +153,18 @@
153
153
  "esm": "./esm2022/components/input-phone/taiga-ui-legacy-components-input-phone.mjs",
154
154
  "default": "./fesm2022/taiga-ui-legacy-components-input-phone.mjs"
155
155
  },
156
- "./components/input-phone-international": {
157
- "types": "./components/input-phone-international/index.d.ts",
158
- "esm2022": "./esm2022/components/input-phone-international/taiga-ui-legacy-components-input-phone-international.mjs",
159
- "esm": "./esm2022/components/input-phone-international/taiga-ui-legacy-components-input-phone-international.mjs",
160
- "default": "./fesm2022/taiga-ui-legacy-components-input-phone-international.mjs"
161
- },
162
156
  "./components/input-range": {
163
157
  "types": "./components/input-range/index.d.ts",
164
158
  "esm2022": "./esm2022/components/input-range/taiga-ui-legacy-components-input-range.mjs",
165
159
  "esm": "./esm2022/components/input-range/taiga-ui-legacy-components-input-range.mjs",
166
160
  "default": "./fesm2022/taiga-ui-legacy-components-input-range.mjs"
167
161
  },
162
+ "./components/input-phone-international": {
163
+ "types": "./components/input-phone-international/index.d.ts",
164
+ "esm2022": "./esm2022/components/input-phone-international/taiga-ui-legacy-components-input-phone-international.mjs",
165
+ "esm": "./esm2022/components/input-phone-international/taiga-ui-legacy-components-input-phone-international.mjs",
166
+ "default": "./fesm2022/taiga-ui-legacy-components-input-phone-international.mjs"
167
+ },
168
168
  "./components/input-slider": {
169
169
  "types": "./components/input-slider/index.d.ts",
170
170
  "esm2022": "./esm2022/components/input-slider/taiga-ui-legacy-components-input-slider.mjs",
@@ -177,18 +177,18 @@
177
177
  "esm": "./esm2022/components/input-tag/taiga-ui-legacy-components-input-tag.mjs",
178
178
  "default": "./fesm2022/taiga-ui-legacy-components-input-tag.mjs"
179
179
  },
180
- "./components/input-time": {
181
- "types": "./components/input-time/index.d.ts",
182
- "esm2022": "./esm2022/components/input-time/taiga-ui-legacy-components-input-time.mjs",
183
- "esm": "./esm2022/components/input-time/taiga-ui-legacy-components-input-time.mjs",
184
- "default": "./fesm2022/taiga-ui-legacy-components-input-time.mjs"
185
- },
186
180
  "./components/input-year": {
187
181
  "types": "./components/input-year/index.d.ts",
188
182
  "esm2022": "./esm2022/components/input-year/taiga-ui-legacy-components-input-year.mjs",
189
183
  "esm": "./esm2022/components/input-year/taiga-ui-legacy-components-input-year.mjs",
190
184
  "default": "./fesm2022/taiga-ui-legacy-components-input-year.mjs"
191
185
  },
186
+ "./components/input-time": {
187
+ "types": "./components/input-time/index.d.ts",
188
+ "esm2022": "./esm2022/components/input-time/taiga-ui-legacy-components-input-time.mjs",
189
+ "esm": "./esm2022/components/input-time/taiga-ui-legacy-components-input-time.mjs",
190
+ "default": "./fesm2022/taiga-ui-legacy-components-input-time.mjs"
191
+ },
192
192
  "./components/island": {
193
193
  "types": "./components/island/index.d.ts",
194
194
  "esm2022": "./esm2022/components/island/taiga-ui-legacy-components-island.mjs",
@@ -261,18 +261,18 @@
261
261
  "esm": "./esm2022/components/tooltip/taiga-ui-legacy-components-tooltip.mjs",
262
262
  "default": "./fesm2022/taiga-ui-legacy-components-tooltip.mjs"
263
263
  },
264
- "./directives/legacy-dropdown-open-monitor": {
265
- "types": "./directives/legacy-dropdown-open-monitor/index.d.ts",
266
- "esm2022": "./esm2022/directives/legacy-dropdown-open-monitor/taiga-ui-legacy-directives-legacy-dropdown-open-monitor.mjs",
267
- "esm": "./esm2022/directives/legacy-dropdown-open-monitor/taiga-ui-legacy-directives-legacy-dropdown-open-monitor.mjs",
268
- "default": "./fesm2022/taiga-ui-legacy-directives-legacy-dropdown-open-monitor.mjs"
269
- },
270
264
  "./directives/textfield-controller": {
271
265
  "types": "./directives/textfield-controller/index.d.ts",
272
266
  "esm2022": "./esm2022/directives/textfield-controller/taiga-ui-legacy-directives-textfield-controller.mjs",
273
267
  "esm": "./esm2022/directives/textfield-controller/taiga-ui-legacy-directives-textfield-controller.mjs",
274
268
  "default": "./fesm2022/taiga-ui-legacy-directives-textfield-controller.mjs"
275
269
  },
270
+ "./directives/legacy-dropdown-open-monitor": {
271
+ "types": "./directives/legacy-dropdown-open-monitor/index.d.ts",
272
+ "esm2022": "./esm2022/directives/legacy-dropdown-open-monitor/taiga-ui-legacy-directives-legacy-dropdown-open-monitor.mjs",
273
+ "esm": "./esm2022/directives/legacy-dropdown-open-monitor/taiga-ui-legacy-directives-legacy-dropdown-open-monitor.mjs",
274
+ "default": "./fesm2022/taiga-ui-legacy-directives-legacy-dropdown-open-monitor.mjs"
275
+ },
276
276
  "./directives/unfinished-validator": {
277
277
  "types": "./directives/unfinished-validator/index.d.ts",
278
278
  "esm2022": "./esm2022/directives/unfinished-validator/taiga-ui-legacy-directives-unfinished-validator.mjs",
@@ -291,18 +291,18 @@
291
291
  "esm": "./esm2022/directives/wrapper/taiga-ui-legacy-directives-wrapper.mjs",
292
292
  "default": "./fesm2022/taiga-ui-legacy-directives-wrapper.mjs"
293
293
  },
294
- "./pipes/format-phone": {
295
- "types": "./pipes/format-phone/index.d.ts",
296
- "esm2022": "./esm2022/pipes/format-phone/taiga-ui-legacy-pipes-format-phone.mjs",
297
- "esm": "./esm2022/pipes/format-phone/taiga-ui-legacy-pipes-format-phone.mjs",
298
- "default": "./fesm2022/taiga-ui-legacy-pipes-format-phone.mjs"
299
- },
300
294
  "./pipes/iso-to-country-code": {
301
295
  "types": "./pipes/iso-to-country-code/index.d.ts",
302
296
  "esm2022": "./esm2022/pipes/iso-to-country-code/taiga-ui-legacy-pipes-iso-to-country-code.mjs",
303
297
  "esm": "./esm2022/pipes/iso-to-country-code/taiga-ui-legacy-pipes-iso-to-country-code.mjs",
304
298
  "default": "./fesm2022/taiga-ui-legacy-pipes-iso-to-country-code.mjs"
305
299
  },
300
+ "./pipes/format-phone": {
301
+ "types": "./pipes/format-phone/index.d.ts",
302
+ "esm2022": "./esm2022/pipes/format-phone/taiga-ui-legacy-pipes-format-phone.mjs",
303
+ "esm": "./esm2022/pipes/format-phone/taiga-ui-legacy-pipes-format-phone.mjs",
304
+ "default": "./fesm2022/taiga-ui-legacy-pipes-format-phone.mjs"
305
+ },
306
306
  "./pipes/to-country-code": {
307
307
  "types": "./pipes/to-country-code/index.d.ts",
308
308
  "esm2022": "./esm2022/pipes/to-country-code/taiga-ui-legacy-pipes-to-country-code.mjs",
@@ -10,19 +10,22 @@
10
10
  &[data-size='s'] {
11
11
  --tui-height: var(--tui-height-s);
12
12
 
13
- font: var(--tui-font-text-s);
13
+ font: var(--tui-font-text-ui-s);
14
+ line-height: 1rem;
14
15
  }
15
16
 
16
17
  &[data-size='m'] {
17
18
  --tui-height: var(--tui-height-m);
18
19
 
19
- font: var(--tui-font-text-s);
20
+ font: var(--tui-font-text-ui-s);
21
+ line-height: 1rem;
20
22
  }
21
23
 
22
24
  &[data-size='l'] {
23
25
  --tui-height: var(--tui-height-l);
24
26
 
25
- font: var(--tui-font-text-m);
27
+ border-radius: var(--tui-radius-l);
28
+ font: var(--tui-font-text-ui-m);
26
29
  line-height: 1.25rem;
27
30
  }
28
31
 
@@ -95,7 +98,7 @@
95
98
  }
96
99
 
97
100
  &::placeholder {
98
- color: var(--tui-text-tertiary);
101
+ color: var(--tui-text-secondary);
99
102
  opacity: 0;
100
103
  }
101
104
 
@@ -150,16 +153,18 @@
150
153
 
151
154
  // Workaround for raising placeholder in temporary autofill
152
155
  &:-webkit-autofill + .t-content .t-placeholder {
153
- font-size: 0.8156rem;
154
- transform: translateY(-0.625rem);
156
+ font: var(--tui-font-text-s);
157
+ line-height: 1.25rem;
158
+ transform: translateY(-0.75rem);
155
159
  }
156
160
  }
157
161
 
158
162
  :host[data-size='m']:not(._label-outside) & {
159
163
  // Workaround for raising placeholder in temporary autofill
160
164
  &:-webkit-autofill + .t-content .t-placeholder {
161
- font-size: 0.69rem;
162
- transform: translateY(-0.5rem);
165
+ font: var(--tui-font-text-xs);
166
+ line-height: 1.25rem;
167
+ transform: translateY(-0.5625rem);
163
168
  }
164
169
  }
165
170
 
@@ -196,12 +201,12 @@
196
201
  transform: translateY(0);
197
202
 
198
203
  &_raised {
199
- transform: translateY(-0.625rem);
204
+ transform: translateY(-0.75rem);
200
205
 
201
206
  :host[data-size='m'] & {
202
207
  font: var(--tui-font-text-xs);
203
208
  line-height: 1.25rem;
204
- transform: translateY(-0.5rem);
209
+ transform: translateY(-0.5625rem);
205
210
  letter-spacing: 0.025rem;
206
211
  }
207
212
 
@@ -218,11 +223,12 @@
218
223
  }
219
224
 
220
225
  :host[data-size='l'] & {
221
- font: var(--tui-font-text-m);
226
+ font: var(--tui-font-text-ui-m);
222
227
  line-height: 1.25rem;
223
228
 
224
229
  &_raised {
225
- font-size: 0.8156rem;
230
+ font: var(--tui-font-text-s);
231
+ line-height: 1.25rem;
226
232
  }
227
233
  }
228
234
 
@@ -2,7 +2,7 @@ import { type TuiStringHandler } from '@taiga-ui/cdk/types';
2
2
  /**
3
3
  * @deprecated: drop in v5.0
4
4
  */
5
- export declare const TUI_CACHE_BUSTING_PAYLOAD: "?v=4.102.0";
5
+ export declare const TUI_CACHE_BUSTING_PAYLOAD: "?v=4.103.0";
6
6
  /**
7
7
  * @deprecated: drop in v5.0
8
8
  */