@taiga-ui/legacy 4.52.0-canary.698642f → 4.52.0-canary.6c67ccf

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 (90) hide show
  1. package/fesm2022/taiga-ui-legacy-classes.mjs +21 -21
  2. package/fesm2022/taiga-ui-legacy-classes.mjs.map +1 -1
  3. package/fesm2022/taiga-ui-legacy-components-arrow.mjs +3 -3
  4. package/fesm2022/taiga-ui-legacy-components-arrow.mjs.map +1 -1
  5. package/fesm2022/taiga-ui-legacy-components-color-selector.mjs +52 -52
  6. package/fesm2022/taiga-ui-legacy-components-color-selector.mjs.map +1 -1
  7. package/fesm2022/taiga-ui-legacy-components-combo-box.mjs +13 -13
  8. package/fesm2022/taiga-ui-legacy-components-combo-box.mjs.map +1 -1
  9. package/fesm2022/taiga-ui-legacy-components-input-color.mjs +7 -7
  10. package/fesm2022/taiga-ui-legacy-components-input-color.mjs.map +1 -1
  11. package/fesm2022/taiga-ui-legacy-components-input-copy.mjs +10 -10
  12. package/fesm2022/taiga-ui-legacy-components-input-copy.mjs.map +1 -1
  13. package/fesm2022/taiga-ui-legacy-components-input-date-multi.mjs +7 -7
  14. package/fesm2022/taiga-ui-legacy-components-input-date-multi.mjs.map +1 -1
  15. package/fesm2022/taiga-ui-legacy-components-input-date-range.mjs +10 -10
  16. package/fesm2022/taiga-ui-legacy-components-input-date-range.mjs.map +1 -1
  17. package/fesm2022/taiga-ui-legacy-components-input-date-time.mjs +13 -13
  18. package/fesm2022/taiga-ui-legacy-components-input-date-time.mjs.map +1 -1
  19. package/fesm2022/taiga-ui-legacy-components-input-date.mjs +13 -13
  20. package/fesm2022/taiga-ui-legacy-components-input-date.mjs.map +1 -1
  21. package/fesm2022/taiga-ui-legacy-components-input-month-range.mjs +10 -10
  22. package/fesm2022/taiga-ui-legacy-components-input-month-range.mjs.map +1 -1
  23. package/fesm2022/taiga-ui-legacy-components-input-month.mjs +10 -10
  24. package/fesm2022/taiga-ui-legacy-components-input-month.mjs.map +1 -1
  25. package/fesm2022/taiga-ui-legacy-components-input-number.mjs +10 -10
  26. package/fesm2022/taiga-ui-legacy-components-input-number.mjs.map +1 -1
  27. package/fesm2022/taiga-ui-legacy-components-input-password.mjs +10 -10
  28. package/fesm2022/taiga-ui-legacy-components-input-password.mjs.map +1 -1
  29. package/fesm2022/taiga-ui-legacy-components-input-phone-international.mjs +3 -3
  30. package/fesm2022/taiga-ui-legacy-components-input-phone-international.mjs.map +1 -1
  31. package/fesm2022/taiga-ui-legacy-components-input-phone.mjs +10 -10
  32. package/fesm2022/taiga-ui-legacy-components-input-phone.mjs.map +1 -1
  33. package/fesm2022/taiga-ui-legacy-components-input-range.mjs +7 -7
  34. package/fesm2022/taiga-ui-legacy-components-input-range.mjs.map +1 -1
  35. package/fesm2022/taiga-ui-legacy-components-input-slider.mjs +7 -7
  36. package/fesm2022/taiga-ui-legacy-components-input-slider.mjs.map +1 -1
  37. package/fesm2022/taiga-ui-legacy-components-input-tag.mjs +7 -7
  38. package/fesm2022/taiga-ui-legacy-components-input-tag.mjs.map +1 -1
  39. package/fesm2022/taiga-ui-legacy-components-input-time.mjs +13 -13
  40. package/fesm2022/taiga-ui-legacy-components-input-time.mjs.map +1 -1
  41. package/fesm2022/taiga-ui-legacy-components-input-year.mjs +10 -10
  42. package/fesm2022/taiga-ui-legacy-components-input-year.mjs.map +1 -1
  43. package/fesm2022/taiga-ui-legacy-components-input.mjs +10 -10
  44. package/fesm2022/taiga-ui-legacy-components-input.mjs.map +1 -1
  45. package/fesm2022/taiga-ui-legacy-components-island.mjs +3 -3
  46. package/fesm2022/taiga-ui-legacy-components-island.mjs.map +1 -1
  47. package/fesm2022/taiga-ui-legacy-components-multi-select-option.mjs +7 -7
  48. package/fesm2022/taiga-ui-legacy-components-multi-select-option.mjs.map +1 -1
  49. package/fesm2022/taiga-ui-legacy-components-multi-select.mjs +28 -28
  50. package/fesm2022/taiga-ui-legacy-components-multi-select.mjs.map +1 -1
  51. package/fesm2022/taiga-ui-legacy-components-primitive-textfield.mjs +16 -16
  52. package/fesm2022/taiga-ui-legacy-components-primitive-textfield.mjs.map +1 -1
  53. package/fesm2022/taiga-ui-legacy-components-select-option.mjs +7 -7
  54. package/fesm2022/taiga-ui-legacy-components-select-option.mjs.map +1 -1
  55. package/fesm2022/taiga-ui-legacy-components-select.mjs +16 -16
  56. package/fesm2022/taiga-ui-legacy-components-select.mjs.map +1 -1
  57. package/fesm2022/taiga-ui-legacy-components-sheet.mjs +34 -34
  58. package/fesm2022/taiga-ui-legacy-components-sheet.mjs.map +1 -1
  59. package/fesm2022/taiga-ui-legacy-components-svg.mjs +6 -6
  60. package/fesm2022/taiga-ui-legacy-components-svg.mjs.map +1 -1
  61. package/fesm2022/taiga-ui-legacy-components-table-bar.mjs +12 -12
  62. package/fesm2022/taiga-ui-legacy-components-table-bar.mjs.map +1 -1
  63. package/fesm2022/taiga-ui-legacy-components-tag.mjs +7 -7
  64. package/fesm2022/taiga-ui-legacy-components-tag.mjs.map +1 -1
  65. package/fesm2022/taiga-ui-legacy-components-textarea.mjs +10 -10
  66. package/fesm2022/taiga-ui-legacy-components-textarea.mjs.map +1 -1
  67. package/fesm2022/taiga-ui-legacy-components-tooltip.mjs +7 -7
  68. package/fesm2022/taiga-ui-legacy-components-tooltip.mjs.map +1 -1
  69. package/fesm2022/taiga-ui-legacy-directives-legacy-dropdown-open-monitor.mjs +3 -3
  70. package/fesm2022/taiga-ui-legacy-directives-legacy-dropdown-open-monitor.mjs.map +1 -1
  71. package/fesm2022/taiga-ui-legacy-directives-textfield-controller.mjs +34 -34
  72. package/fesm2022/taiga-ui-legacy-directives-textfield-controller.mjs.map +1 -1
  73. package/fesm2022/taiga-ui-legacy-directives-unfinished-validator.mjs +3 -3
  74. package/fesm2022/taiga-ui-legacy-directives-unfinished-validator.mjs.map +1 -1
  75. package/fesm2022/taiga-ui-legacy-directives-value-accessor.mjs +7 -7
  76. package/fesm2022/taiga-ui-legacy-directives-value-accessor.mjs.map +1 -1
  77. package/fesm2022/taiga-ui-legacy-directives-wrapper.mjs +7 -7
  78. package/fesm2022/taiga-ui-legacy-directives-wrapper.mjs.map +1 -1
  79. package/fesm2022/taiga-ui-legacy-pipes-format-phone.mjs +3 -3
  80. package/fesm2022/taiga-ui-legacy-pipes-format-phone.mjs.map +1 -1
  81. package/fesm2022/taiga-ui-legacy-pipes-iso-to-country-code.mjs +3 -3
  82. package/fesm2022/taiga-ui-legacy-pipes-iso-to-country-code.mjs.map +1 -1
  83. package/fesm2022/taiga-ui-legacy-pipes-to-country-code.mjs +3 -3
  84. package/fesm2022/taiga-ui-legacy-pipes-to-country-code.mjs.map +1 -1
  85. package/fesm2022/taiga-ui-legacy-services.mjs +3 -3
  86. package/fesm2022/taiga-ui-legacy-services.mjs.map +1 -1
  87. package/fesm2022/taiga-ui-legacy-tokens.mjs.map +1 -1
  88. package/fesm2022/taiga-ui-legacy-utils.mjs.map +1 -1
  89. package/package.json +25 -25
  90. package/utils/icons-path-factory.d.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-legacy-components-input-phone.mjs","sources":["../../../projects/legacy/components/input-phone/input-phone.options.ts","../../../projects/legacy/components/input-phone/utils/complete-phone-insertion-preprocessor.ts","../../../projects/legacy/components/input-phone/utils/create-phone-mask-expression.ts","../../../projects/legacy/components/input-phone/input-phone.component.ts","../../../projects/legacy/components/input-phone/input-phone.template.html","../../../projects/legacy/components/input-phone/input-phone.directive.ts","../../../projects/legacy/components/input-phone/input-phone.module.ts","../../../projects/legacy/components/input-phone/taiga-ui-legacy-components-input-phone.ts"],"sourcesContent":["import {InjectionToken, type Provider} from '@angular/core';\nimport {tuiProvideOptions} from '@taiga-ui/cdk/utils/miscellaneous';\n\nexport interface TuiInputPhoneOptions {\n readonly allowText: boolean;\n readonly countryCode: string;\n readonly phoneMaskAfterCountryCode: string;\n}\n\nexport const TUI_INPUT_PHONE_DEFAULT_OPTIONS: TuiInputPhoneOptions = {\n phoneMaskAfterCountryCode: '### ###-##-##',\n allowText: false,\n countryCode: '+7',\n};\n\n/**\n * @deprecated: drop in v5.0\n * Default parameters for input phone component\n */\nexport const TUI_INPUT_PHONE_OPTIONS = new InjectionToken(\n ngDevMode ? 'TUI_INPUT_PHONE_OPTIONS' : '',\n {\n factory: () => TUI_INPUT_PHONE_DEFAULT_OPTIONS,\n },\n);\n\nexport function tuiInputPhoneOptionsProvider(\n options: Partial<TuiInputPhoneOptions>,\n): Provider {\n return tuiProvideOptions(\n TUI_INPUT_PHONE_OPTIONS,\n options,\n TUI_INPUT_PHONE_DEFAULT_OPTIONS,\n );\n}\n","import {type MaskitoPreprocessor} from '@maskito/core';\n\nconst countDigits = (value: string): number => value.replaceAll(/\\D/g, '').length;\n\n/**\n * `InputPhone` component sets country code as non-removable prefix.\n * This prefix appears on focus and cannot be erased.\n * But users sometimes can copy complete phone number (from any different source)\n * and try to insert the whole string inside our `InputPhone` textfield.\n * This preprocessor helps to avoid country prefix duplication on paste/drop/autofill events.\n */\nexport function tuiCreateCompletePhoneInsertionPreprocessor(\n countryCode: string,\n phoneMaskAfterCountryCode: string,\n): MaskitoPreprocessor {\n const completePhoneLength = (countryCode + phoneMaskAfterCountryCode).replaceAll(\n /[^#\\d]+/g,\n '',\n ).length;\n\n const trimCountryPrefix = (value: string): string =>\n countryCode === '+7'\n ? value.replace(/^(\\+?\\s*7?\\s?8?)\\s?/, '')\n : value.replace(\n new RegExp(`^(\\\\+?\\\\s*${countryCode.replace('+', '')}?)\\\\s?`),\n '',\n );\n\n return ({elementState, data}) => {\n const {value, selection} = elementState;\n\n return {\n elementState: {\n selection,\n value:\n /**\n * The only possible case when `value` includes digits more\n * than mask expression allows – browser autofill.\n * It means that we are inside `input`-event\n * and mask are ready to reject \"extra\" characters.\n * We should cut leading country prefix to save trailing characters!\n */\n countDigits(value) > completePhoneLength\n ? trimCountryPrefix(value)\n : value,\n },\n data:\n countDigits(data) >= completePhoneLength || data.startsWith(countryCode)\n ? /**\n * User tries to insert/drop the complete phone number (with country prefix).\n * We should drop already existing non-removable prefix.\n */\n trimCountryPrefix(data)\n : data,\n };\n };\n}\n","/**\n * Create {@link https://maskito.dev/core-concepts/mask-expression pattern mask expression} for phone number\n *\n * @example\n * tuiCreatePhoneMaskExpression('+1', '(###) ###-####');\n */\nexport function tuiCreatePhoneMaskExpression(\n countryCode: string,\n phoneMaskAfterCountryCode: string,\n): Array<RegExp | string> {\n return [\n ...countryCode.split(''),\n ' ',\n ...phoneMaskAfterCountryCode\n .replaceAll(/[^#\\- ()]+/g, '')\n .split('')\n .map((item) => (item === '#' ? /\\d/ : item)),\n ];\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n EventEmitter,\n inject,\n Input,\n Output,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport {\n MASKITO_DEFAULT_OPTIONS,\n type MaskitoOptions,\n maskitoTransform,\n} from '@maskito/core';\nimport {maskitoCaretGuard, maskitoPrefixPostprocessorGenerator} from '@maskito/kit';\nimport {type TuiActiveZone} from '@taiga-ui/cdk/directives/active-zone';\nimport {type TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiIsNativeFocused} from '@taiga-ui/cdk/utils/focus';\nimport {tuiPure} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {\n tuiAsDataListHost,\n TuiDataListDirective,\n type TuiDataListHost,\n} from '@taiga-ui/core/components/data-list';\nimport {TuiDropdownFixed, TuiDropdownOpen} from '@taiga-ui/core/directives/dropdown';\nimport {type TuiSizeL, type TuiSizeS} from '@taiga-ui/core/types';\nimport {AbstractTuiControl, tuiAsControl} from '@taiga-ui/legacy/classes';\nimport {TuiPrimitiveTextfieldComponent} from '@taiga-ui/legacy/components/primitive-textfield';\nimport {TUI_TEXTFIELD_CLEANER, TUI_TEXTFIELD_SIZE} from '@taiga-ui/legacy/directives';\nimport {\n tuiAsFocusableItemAccessor,\n type TuiFocusableElementAccessor,\n} from '@taiga-ui/legacy/tokens';\n\nimport {TUI_INPUT_PHONE_OPTIONS} from './input-phone.options';\nimport {\n tuiCreateCompletePhoneInsertionPreprocessor,\n tuiCreatePhoneMaskExpression,\n} from './utils';\n\nconst MASK_SYMBOLS = /[ \\-_()]/g;\n\nfunction isText(value: string): boolean {\n return Number.isNaN(parseInt(value.replaceAll(MASK_SYMBOLS, ''), 10));\n}\n\n@Component({\n standalone: false,\n selector: 'tui-input-phone',\n templateUrl: './input-phone.template.html',\n styleUrls: ['./input-phone.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiInputPhoneComponent),\n tuiAsControl(TuiInputPhoneComponent),\n tuiAsDataListHost(TuiInputPhoneComponent),\n ],\n hostDirectives: [TuiDropdownFixed],\n host: {\n '[attr.data-size]': 'size',\n },\n})\nexport class TuiInputPhoneComponent\n extends AbstractTuiControl<string>\n implements TuiFocusableElementAccessor, TuiDataListHost<string>\n{\n @ViewChild(TuiDropdownOpen)\n private readonly dropdown?: TuiDropdownOpen;\n\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n private readonly textfieldCleaner = inject(TUI_TEXTFIELD_CLEANER);\n private readonly options = inject(TUI_INPUT_PHONE_OPTIONS);\n private readonly textfieldSize = inject(TUI_TEXTFIELD_SIZE);\n\n @ContentChild(TuiDataListDirective, {read: TemplateRef})\n protected readonly datalist?: TemplateRef<TuiContext<TuiActiveZone>>;\n\n protected open = false;\n\n @Input()\n public phoneMaskAfterCountryCode = this.options.phoneMaskAfterCountryCode;\n\n @Input()\n public allowText = this.options.allowText;\n\n @Input()\n public search = '';\n\n @Output()\n public readonly searchChange = new EventEmitter<string>();\n\n public countryCode = this.options.countryCode;\n\n @Input('countryCode')\n public set countryCodeSetter(newCountryCode: string) {\n const prevCountryCode = this.countryCode;\n\n this.countryCode = newCountryCode;\n this.updateValueWithNewCountryCode(prevCountryCode, newCountryCode);\n }\n\n public get size(): TuiSizeL | TuiSizeS {\n return this.textfieldSize.size;\n }\n\n public get nativeFocusableElement(): HTMLInputElement | null {\n return !this.textfield || this.computedDisabled\n ? null\n : this.textfield.nativeFocusableElement;\n }\n\n public get focused(): boolean {\n return (\n tuiIsNativeFocused(this.nativeFocusableElement) ||\n !!this.dropdown?.tuiDropdownOpen\n );\n }\n\n public get nativeValue(): string {\n return (\n this.nativeFocusableElement?.value ||\n maskitoTransform(this.value, this.maskOptions)\n );\n }\n\n public set nativeValue(value: string) {\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.value = value;\n }\n }\n\n public get inputMode(): string {\n return this.allowText ? 'text' : 'numeric';\n }\n\n public onValueChange(value: string): void {\n const parsed = isText(value)\n ? value\n : value.replaceAll(MASK_SYMBOLS, '').slice(0, this.maxPhoneLength);\n\n this.updateSearch(parsed);\n this.value = parsed === this.countryCode || isText(parsed) ? '' : parsed;\n this.open = true;\n\n if (!this.value && !this.allowText) {\n this.nativeValue = this.nonRemovablePrefix;\n }\n }\n\n public handleOption(item: string): void {\n this.focusInput();\n this.value = item;\n this.nativeValue = maskitoTransform(this.value, this.maskOptions);\n this.updateSearch('');\n this.open = false;\n }\n\n public override setDisabledState(): void {\n super.setDisabledState();\n this.open = false;\n }\n\n public override writeValue(value: string | null): void {\n super.writeValue(value);\n this.nativeValue = maskitoTransform(this.value || '', this.maskOptions);\n this.updateSearch('');\n }\n\n protected get canOpen(): boolean {\n return this.interactive && !!this.datalist;\n }\n\n protected get canClean(): boolean {\n return (\n this.nativeValue !== this.nonRemovablePrefix && this.textfieldCleaner.cleaner\n );\n }\n\n protected get maskOptions(): MaskitoOptions {\n return this.calculateMask(\n this.countryCode,\n this.phoneMaskAfterCountryCode,\n this.nonRemovablePrefix,\n this.allowText,\n );\n }\n\n protected onActiveZone(active: boolean): void {\n this.updateFocused(active);\n\n if (active && !this.nativeValue && !this.readOnly && !this.allowText) {\n this.updateSearch(this.nonRemovablePrefix);\n this.nativeValue = this.nonRemovablePrefix;\n\n return;\n }\n\n if (this.nativeValue === this.nonRemovablePrefix || this.isTextValue) {\n this.updateSearch('');\n this.nativeValue = '';\n\n return;\n }\n\n if (!active && !this.allowText && this.nativeFocusableElement) {\n this.nativeValue = this.nativeValue.replace(/\\D$/, '');\n }\n }\n\n protected getFallbackValue(): string {\n return '';\n }\n\n private get nonRemovablePrefix(): string {\n return `${this.countryCode} `;\n }\n\n private get maxPhoneLength(): number {\n return (\n this.countryCode.length +\n this.phoneMaskAfterCountryCode.replaceAll(/[^#]+/g, '').length\n );\n }\n\n private get isTextValue(): boolean {\n return !!this.search && isText(this.search);\n }\n\n @tuiPure\n private calculateMask(\n countryCode: string,\n phoneMaskAfterCountryCode: string,\n nonRemovablePrefix: string,\n allowText: boolean,\n ): MaskitoOptions {\n const mask = tuiCreatePhoneMaskExpression(countryCode, phoneMaskAfterCountryCode);\n const preprocessors = [\n tuiCreateCompletePhoneInsertionPreprocessor(\n countryCode,\n phoneMaskAfterCountryCode,\n ),\n ];\n\n return allowText\n ? {\n mask: ({value}) =>\n isText(value) && value !== '+'\n ? (MASKITO_DEFAULT_OPTIONS.mask as RegExp)\n : mask,\n preprocessors,\n }\n : {\n mask,\n preprocessors,\n postprocessors: [\n maskitoPrefixPostprocessorGenerator(nonRemovablePrefix),\n ],\n plugins: [\n maskitoCaretGuard((value, [from, to]) => [\n from === to ? nonRemovablePrefix.length : 0,\n value.length,\n ]),\n ],\n };\n }\n\n private focusInput(): void {\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.focus({preventScroll: true});\n }\n }\n\n private updateSearch(search: string): void {\n if (this.search === search) {\n return;\n }\n\n this.search = search;\n this.searchChange.emit(search);\n }\n\n private updateValueWithNewCountryCode(\n prevCountryCode: string,\n newCountryCode: string,\n ): void {\n if (!this.isTextValue) {\n this.value = this.value.replace(prevCountryCode, newCountryCode);\n this.nativeValue = maskitoTransform(this.value, this.maskOptions);\n }\n }\n}\n","<div\n tuiDropdownOpenMonitor\n class=\"t-hosted\"\n [tuiDropdown]=\"datalist || ''\"\n [tuiDropdownEnabled]=\"canOpen\"\n [(tuiDropdownOpen)]=\"open\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <tui-primitive-textfield\n tuiValueAccessor\n class=\"t-textfield\"\n [disabled]=\"computedDisabled\"\n [focusable]=\"focusable\"\n [invalid]=\"computedInvalid\"\n [maskito]=\"maskOptions\"\n [nativeId]=\"nativeId\"\n [pseudoFocus]=\"computedFocused\"\n [pseudoHover]=\"pseudoHover\"\n [readOnly]=\"readOnly\"\n [tuiTextfieldCleaner]=\"canClean\"\n [(value)]=\"nativeValue\"\n (valueChange)=\"onValueChange($event)\"\n >\n <ng-content />\n <ng-content\n ngProjectAs=\"input\"\n select=\"input\"\n />\n </tui-primitive-textfield>\n</div>\n","import {Directive, type DoCheck} from '@angular/core';\nimport {AbstractTuiTextfieldHost} from '@taiga-ui/legacy/classes';\nimport {tuiAsTextfieldHost} from '@taiga-ui/legacy/tokens';\n\nimport {type TuiInputPhoneComponent} from './input-phone.component';\n\n@Directive({\n standalone: false,\n selector: 'tui-input-phone',\n providers: [tuiAsTextfieldHost(TuiInputPhoneDirective)],\n})\nexport class TuiInputPhoneDirective\n extends AbstractTuiTextfieldHost<TuiInputPhoneComponent>\n implements DoCheck\n{\n protected input?: HTMLInputElement;\n\n public override get value(): string {\n return this.host.nativeValue;\n }\n\n public onValueChange(value: string): void {\n this.host.onValueChange(value);\n }\n\n public override process(input: HTMLInputElement): void {\n this.input = input;\n }\n\n public ngDoCheck(): void {\n if (!this.input) {\n return;\n }\n\n this.input.type = 'tel';\n this.input.inputMode = this.host.inputMode;\n }\n}\n","import {NgModule} from '@angular/core';\nimport {MaskitoDirective} from '@maskito/angular';\nimport {TuiDropdown} from '@taiga-ui/core/directives/dropdown';\nimport {\n TuiPrimitiveTextfieldModule,\n TuiTextfieldComponent,\n} from '@taiga-ui/legacy/components/primitive-textfield';\nimport {\n TuiLegacyDropdownOpenMonitorDirective,\n TuiTextfieldControllerModule,\n TuiValueAccessorModule,\n} from '@taiga-ui/legacy/directives';\n\nimport {TuiInputPhoneComponent} from './input-phone.component';\nimport {TuiInputPhoneDirective} from './input-phone.directive';\n\n@NgModule({\n imports: [\n MaskitoDirective,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldControllerModule,\n TuiValueAccessorModule,\n TuiLegacyDropdownOpenMonitorDirective,\n ...TuiDropdown,\n ],\n declarations: [TuiInputPhoneComponent, TuiInputPhoneDirective],\n exports: [\n TuiInputPhoneComponent,\n TuiInputPhoneDirective,\n TuiTextfieldComponent,\n ...TuiDropdown,\n ],\n})\nexport class TuiInputPhoneModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AASO,MAAM,+BAA+B,GAAyB;AACjE,IAAA,yBAAyB,EAAE,eAAe;AAC1C,IAAA,SAAS,EAAE,KAAK;AAChB,IAAA,WAAW,EAAE,IAAI;;AAGrB;;;AAGG;AACI,MAAM,uBAAuB,GAAG,IAAI,cAAc,CACrD,SAAS,GAAG,yBAAyB,GAAG,EAAE,EAC1C;AACI,IAAA,OAAO,EAAE,MAAM,+BAA+B;AACjD,CAAA;AAGC,SAAU,4BAA4B,CACxC,OAAsC,EAAA;IAEtC,OAAO,iBAAiB,CACpB,uBAAuB,EACvB,OAAO,EACP,+BAA+B,CAClC;AACL;;AChCA,MAAM,WAAW,GAAG,CAAC,KAAa,KAAa,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,MAAM;AAEjF;;;;;;AAMG;AACG,SAAU,2CAA2C,CACvD,WAAmB,EACnB,yBAAiC,EAAA;AAEjC,IAAA,MAAM,mBAAmB,GAAG,CAAC,WAAW,GAAG,yBAAyB,EAAE,UAAU,CAC5E,UAAU,EACV,EAAE,CACL,CAAC,MAAM;IAER,MAAM,iBAAiB,GAAG,CAAC,KAAa,KACpC,WAAW,KAAK;UACV,KAAK,CAAC,OAAO,CAAC,qBAAqB,EAAE,EAAE;UACvC,KAAK,CAAC,OAAO,CACT,IAAI,MAAM,CAAC,CAAA,UAAA,EAAa,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,QAAQ,CAAC,EAC7D,EAAE,CACL;AAEX,IAAA,OAAO,CAAC,EAAC,YAAY,EAAE,IAAI,EAAC,KAAI;AAC5B,QAAA,MAAM,EAAC,KAAK,EAAE,SAAS,EAAC,GAAG,YAAY;QAEvC,OAAO;AACH,YAAA,YAAY,EAAE;gBACV,SAAS;gBACT,KAAK;AACD;;;;;;AAMG;AACH,gBAAA,WAAW,CAAC,KAAK,CAAC,GAAG;AACjB,sBAAE,iBAAiB,CAAC,KAAK;AACzB,sBAAE,KAAK;AAClB,aAAA;AACD,YAAA,IAAI,EACA,WAAW,CAAC,IAAI,CAAC,IAAI,mBAAmB,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW;AACnE;;;AAGK;oBACH,iBAAiB,CAAC,IAAI;AACxB,kBAAE,IAAI;SACjB;AACL,IAAA,CAAC;AACL;;ACxDA;;;;;AAKG;AACG,SAAU,4BAA4B,CACxC,WAAmB,EACnB,yBAAiC,EAAA;IAEjC,OAAO;AACH,QAAA,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;QACxB,GAAG;AACH,QAAA,GAAG;AACE,aAAA,UAAU,CAAC,aAAa,EAAE,EAAE;aAC5B,KAAK,CAAC,EAAE;AACR,aAAA,GAAG,CAAC,CAAC,IAAI,MAAM,IAAI,KAAK,GAAG,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC;KACnD;AACL;;ACwBA,MAAM,YAAY,GAAG,WAAW;AAEhC,SAAS,MAAM,CAAC,KAAa,EAAA;AACzB,IAAA,OAAO,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;AACzE;AAkBM,MAAO,sBACT,SAAQ,kBAA0B,CAAA;AAjBtC,IAAA,WAAA,GAAA;;AA0BqB,QAAA,IAAA,CAAA,gBAAgB,GAAG,MAAM,CAAC,qBAAqB,CAAC;AAChD,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,uBAAuB,CAAC;AACzC,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,kBAAkB,CAAC;QAKjD,IAAA,CAAA,IAAI,GAAG,KAAK;AAGf,QAAA,IAAA,CAAA,yBAAyB,GAAG,IAAI,CAAC,OAAO,CAAC,yBAAyB;AAGlE,QAAA,IAAA,CAAA,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS;QAGlC,IAAA,CAAA,MAAM,GAAG,EAAE;AAGF,QAAA,IAAA,CAAA,YAAY,GAAG,IAAI,YAAY,EAAU;AAElD,QAAA,IAAA,CAAA,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW;AAuMhD,IAAA;IArMG,IACW,iBAAiB,CAAC,cAAsB,EAAA;AAC/C,QAAA,MAAM,eAAe,GAAG,IAAI,CAAC,WAAW;AAExC,QAAA,IAAI,CAAC,WAAW,GAAG,cAAc;AACjC,QAAA,IAAI,CAAC,6BAA6B,CAAC,eAAe,EAAE,cAAc,CAAC;IACvE;AAEA,IAAA,IAAW,IAAI,GAAA;AACX,QAAA,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI;IAClC;AAEA,IAAA,IAAW,sBAAsB,GAAA;AAC7B,QAAA,OAAO,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC;AAC3B,cAAE;AACF,cAAE,IAAI,CAAC,SAAS,CAAC,sBAAsB;IAC/C;AAEA,IAAA,IAAW,OAAO,GAAA;AACd,QAAA,QACI,kBAAkB,CAAC,IAAI,CAAC,sBAAsB,CAAC;AAC/C,YAAA,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,eAAe;IAExC;AAEA,IAAA,IAAW,WAAW,GAAA;AAClB,QAAA,QACI,IAAI,CAAC,sBAAsB,EAAE,KAAK;YAClC,gBAAgB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC;IAEtD;IAEA,IAAW,WAAW,CAAC,KAAa,EAAA;AAChC,QAAA,IAAI,IAAI,CAAC,sBAAsB,EAAE;AAC7B,YAAA,IAAI,CAAC,sBAAsB,CAAC,KAAK,GAAG,KAAK;QAC7C;IACJ;AAEA,IAAA,IAAW,SAAS,GAAA;QAChB,OAAO,IAAI,CAAC,SAAS,GAAG,MAAM,GAAG,SAAS;IAC9C;AAEO,IAAA,aAAa,CAAC,KAAa,EAAA;AAC9B,QAAA,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK;AACvB,cAAE;AACF,cAAE,KAAK,CAAC,UAAU,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC;AAEtE,QAAA,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,MAAM,KAAK,IAAI,CAAC,WAAW,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,GAAG,MAAM;AACxE,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI;QAEhB,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;AAChC,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,kBAAkB;QAC9C;IACJ;AAEO,IAAA,YAAY,CAAC,IAAY,EAAA;QAC5B,IAAI,CAAC,UAAU,EAAE;AACjB,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI;AACjB,QAAA,IAAI,CAAC,WAAW,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC;AACjE,QAAA,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;AACrB,QAAA,IAAI,CAAC,IAAI,GAAG,KAAK;IACrB;IAEgB,gBAAgB,GAAA;QAC5B,KAAK,CAAC,gBAAgB,EAAE;AACxB,QAAA,IAAI,CAAC,IAAI,GAAG,KAAK;IACrB;AAEgB,IAAA,UAAU,CAAC,KAAoB,EAAA;AAC3C,QAAA,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC;AACvB,QAAA,IAAI,CAAC,WAAW,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC;AACvE,QAAA,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;IACzB;AAEA,IAAA,IAAc,OAAO,GAAA;QACjB,OAAO,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ;IAC9C;AAEA,IAAA,IAAc,QAAQ,GAAA;AAClB,QAAA,QACI,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,gBAAgB,CAAC,OAAO;IAErF;AAEA,IAAA,IAAc,WAAW,GAAA;QACrB,OAAO,IAAI,CAAC,aAAa,CACrB,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,yBAAyB,EAC9B,IAAI,CAAC,kBAAkB,EACvB,IAAI,CAAC,SAAS,CACjB;IACL;AAEU,IAAA,YAAY,CAAC,MAAe,EAAA;AAClC,QAAA,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;AAE1B,QAAA,IAAI,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;AAClE,YAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC;AAC1C,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,kBAAkB;YAE1C;QACJ;AAEA,QAAA,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,WAAW,EAAE;AAClE,YAAA,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;AACrB,YAAA,IAAI,CAAC,WAAW,GAAG,EAAE;YAErB;QACJ;AAEA,QAAA,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,sBAAsB,EAAE;AAC3D,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;QAC1D;IACJ;IAEU,gBAAgB,GAAA;AACtB,QAAA,OAAO,EAAE;IACb;AAEA,IAAA,IAAY,kBAAkB,GAAA;AAC1B,QAAA,OAAO,CAAA,EAAG,IAAI,CAAC,WAAW,GAAG;IACjC;AAEA,IAAA,IAAY,cAAc,GAAA;AACtB,QAAA,QACI,IAAI,CAAC,WAAW,CAAC,MAAM;AACvB,YAAA,IAAI,CAAC,yBAAyB,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,MAAM;IAEtE;AAEA,IAAA,IAAY,WAAW,GAAA;AACnB,QAAA,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;IAC/C;AAGQ,IAAA,aAAa,CACjB,WAAmB,EACnB,yBAAiC,EACjC,kBAA0B,EAC1B,SAAkB,EAAA;QAElB,MAAM,IAAI,GAAG,4BAA4B,CAAC,WAAW,EAAE,yBAAyB,CAAC;AACjF,QAAA,MAAM,aAAa,GAAG;AAClB,YAAA,2CAA2C,CACvC,WAAW,EACX,yBAAyB,CAC5B;SACJ;AAED,QAAA,OAAO;AACH,cAAE;AACI,gBAAA,IAAI,EAAE,CAAC,EAAC,KAAK,EAAC,KACV,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK;sBACpB,uBAAuB,CAAC;AAC3B,sBAAE,IAAI;gBACd,aAAa;AAChB;AACH,cAAE;gBACI,IAAI;gBACJ,aAAa;AACb,gBAAA,cAAc,EAAE;oBACZ,mCAAmC,CAAC,kBAAkB,CAAC;AAC1D,iBAAA;AACD,gBAAA,OAAO,EAAE;oBACL,iBAAiB,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK;wBACrC,IAAI,KAAK,EAAE,GAAG,kBAAkB,CAAC,MAAM,GAAG,CAAC;AAC3C,wBAAA,KAAK,CAAC,MAAM;qBACf,CAAC;AACL,iBAAA;aACJ;IACX;IAEQ,UAAU,GAAA;AACd,QAAA,IAAI,IAAI,CAAC,sBAAsB,EAAE;YAC7B,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAAC,aAAa,EAAE,IAAI,EAAC,CAAC;QAC5D;IACJ;AAEQ,IAAA,YAAY,CAAC,MAAc,EAAA;AAC/B,QAAA,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,EAAE;YACxB;QACJ;AAEA,QAAA,IAAI,CAAC,MAAM,GAAG,MAAM;AACpB,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC;IAClC;IAEQ,6BAA6B,CACjC,eAAuB,EACvB,cAAsB,EAAA;AAEtB,QAAA,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;AACnB,YAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe,EAAE,cAAc,CAAC;AAChE,YAAA,IAAI,CAAC,WAAW,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC;QACrE;IACJ;8GArOS,sBAAsB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,EAAA,YAAA,EAAA,KAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,EAAA,yBAAA,EAAA,2BAAA,EAAA,SAAA,EAAA,WAAA,EAAA,MAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,CAAA,aAAA,EAAA,mBAAA,CAAA,EAAA,EAAA,OAAA,EAAA,EAAA,YAAA,EAAA,cAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,EAAA,EAAA,SAAA,EAVpB;YACP,0BAA0B,CAAC,sBAAsB,CAAC;YAClD,YAAY,CAAC,sBAAsB,CAAC;YACpC,iBAAiB,CAAC,sBAAsB,CAAC;SAC5C,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,UAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAoBa,oBAAoB,2BAAS,WAAW,EAAA,CAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,UAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAV3C,eAAe,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,WAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAGf,8BAA8B,6HCvE7C,24BA8BA,EAAA,MAAA,EAAA,CAAA,mPAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,8BAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,aAAA,EAAA,UAAA,EAAA,SAAA,EAAA,UAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,8BAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,4BAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,yBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,qCAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,kDAAA,EAAA,MAAA,EAAA,CAAA,aAAA,CAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,qEAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,iBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,uBAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;AD2MY,UAAA,CAAA;IADP;AAoCA,CAAA,EAAA,sBAAA,CAAA,SAAA,EAAA,eAAA,EAAA,IAAA,CAAA;2FA5MQ,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAhBlC,SAAS;AACM,YAAA,IAAA,EAAA,CAAA,EAAA,UAAA,EAAA,KAAK,YACP,iBAAiB,EAAA,eAAA,EAGV,uBAAuB,CAAC,MAAM,EAAA,SAAA,EACpC;AACP,wBAAA,0BAA0B,CAAA,sBAAA,CAAwB;AAClD,wBAAA,YAAY,CAAA,sBAAA,CAAwB;AACpC,wBAAA,iBAAiB,CAAA,sBAAA,CAAwB;qBAC5C,EAAA,cAAA,EACe,CAAC,gBAAgB,CAAC,EAAA,IAAA,EAC5B;AACF,wBAAA,kBAAkB,EAAE,MAAM;AAC7B,qBAAA,EAAA,QAAA,EAAA,24BAAA,EAAA,MAAA,EAAA,CAAA,mPAAA,CAAA,EAAA;8BAOgB,QAAQ,EAAA,CAAA;sBADxB,SAAS;uBAAC,eAAe;gBAIT,SAAS,EAAA,CAAA;sBADzB,SAAS;uBAAC,8BAA8B;gBAQtB,QAAQ,EAAA,CAAA;sBAD1B,YAAY;AAAC,gBAAA,IAAA,EAAA,CAAA,oBAAoB,EAAE,EAAC,IAAI,EAAE,WAAW,EAAC;gBAMhD,yBAAyB,EAAA,CAAA;sBAD/B;gBAIM,SAAS,EAAA,CAAA;sBADf;gBAIM,MAAM,EAAA,CAAA;sBADZ;gBAIe,YAAY,EAAA,CAAA;sBAD3B;gBAMU,iBAAiB,EAAA,CAAA;sBAD3B,KAAK;uBAAC,aAAa;gBAwIZ,aAAa,EAAA,EAAA,EAAA,EAAA,CAAA;;AE9NnB,MAAO,sBACT,SAAQ,wBAAgD,CAAA;AAKxD,IAAA,IAAoB,KAAK,GAAA;AACrB,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW;IAChC;AAEO,IAAA,aAAa,CAAC,KAAa,EAAA;AAC9B,QAAA,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;IAClC;AAEgB,IAAA,OAAO,CAAC,KAAuB,EAAA;AAC3C,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK;IACtB;IAEO,SAAS,GAAA;AACZ,QAAA,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACb;QACJ;AAEA,QAAA,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,KAAK;QACvB,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS;IAC9C;8GAzBS,sBAAsB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,+DAFpB,CAAC,kBAAkB,CAAC,sBAAsB,CAAC,CAAC,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAE9C,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBALlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,KAAK;AACjB,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,SAAS,EAAE,CAAC,kBAAkB,CAAA,sBAAA,CAAwB,CAAC;AAC1D,iBAAA;;;MCuBY,mBAAmB,CAAA;8GAAnB,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAnB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,EAAA,YAAA,EAAA,CARb,sBAAsB,EAAE,sBAAsB,aAPzD,gBAAgB;YAChB,2BAA2B;YAC3B,4BAA4B;YAC5B,sBAAsB;AACtB,YAAA,qCAAqC,kVAKrC,sBAAsB;YACtB,sBAAsB;YACtB,qBAAqB,EAAA,EAAA,CAAA,2BAAA,EAAA,EAAA,CAAA,0BAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,EAAA,CAAA,eAAA,EAAA,EAAA,CAAA,qBAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,EAAA,CAAA,wBAAA,EAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,CAAA,CAAA;AAIhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,YAdxB,2BAA2B;YAC3B,4BAA4B;YAC5B,sBAAsB,EAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,CAAA,CAAA;;2FAYjB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAjB/B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE;wBACL,gBAAgB;wBAChB,2BAA2B;wBAC3B,4BAA4B;wBAC5B,sBAAsB;wBACtB,qCAAqC;AACrC,wBAAA,GAAG,WAAW;AACjB,qBAAA;AACD,oBAAA,YAAY,EAAE,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;AAC9D,oBAAA,OAAO,EAAE;wBACL,sBAAsB;wBACtB,sBAAsB;wBACtB,qBAAqB;AACrB,wBAAA,GAAG,WAAW;AACjB,qBAAA;AACJ,iBAAA;;;AChCD;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-legacy-components-input-phone.mjs","sources":["../../../projects/legacy/components/input-phone/input-phone.options.ts","../../../projects/legacy/components/input-phone/utils/complete-phone-insertion-preprocessor.ts","../../../projects/legacy/components/input-phone/utils/create-phone-mask-expression.ts","../../../projects/legacy/components/input-phone/input-phone.component.ts","../../../projects/legacy/components/input-phone/input-phone.template.html","../../../projects/legacy/components/input-phone/input-phone.directive.ts","../../../projects/legacy/components/input-phone/input-phone.module.ts","../../../projects/legacy/components/input-phone/taiga-ui-legacy-components-input-phone.ts"],"sourcesContent":["import {InjectionToken, type Provider} from '@angular/core';\nimport {tuiProvideOptions} from '@taiga-ui/cdk/utils/miscellaneous';\n\nexport interface TuiInputPhoneOptions {\n readonly allowText: boolean;\n readonly countryCode: string;\n readonly phoneMaskAfterCountryCode: string;\n}\n\nexport const TUI_INPUT_PHONE_DEFAULT_OPTIONS: TuiInputPhoneOptions = {\n phoneMaskAfterCountryCode: '### ###-##-##',\n allowText: false,\n countryCode: '+7',\n};\n\n/**\n * @deprecated: drop in v5.0\n * Default parameters for input phone component\n */\nexport const TUI_INPUT_PHONE_OPTIONS = new InjectionToken(\n ngDevMode ? 'TUI_INPUT_PHONE_OPTIONS' : '',\n {\n factory: () => TUI_INPUT_PHONE_DEFAULT_OPTIONS,\n },\n);\n\nexport function tuiInputPhoneOptionsProvider(\n options: Partial<TuiInputPhoneOptions>,\n): Provider {\n return tuiProvideOptions(\n TUI_INPUT_PHONE_OPTIONS,\n options,\n TUI_INPUT_PHONE_DEFAULT_OPTIONS,\n );\n}\n","import {type MaskitoPreprocessor} from '@maskito/core';\n\nconst countDigits = (value: string): number => value.replaceAll(/\\D/g, '').length;\n\n/**\n * `InputPhone` component sets country code as non-removable prefix.\n * This prefix appears on focus and cannot be erased.\n * But users sometimes can copy complete phone number (from any different source)\n * and try to insert the whole string inside our `InputPhone` textfield.\n * This preprocessor helps to avoid country prefix duplication on paste/drop/autofill events.\n */\nexport function tuiCreateCompletePhoneInsertionPreprocessor(\n countryCode: string,\n phoneMaskAfterCountryCode: string,\n): MaskitoPreprocessor {\n const completePhoneLength = (countryCode + phoneMaskAfterCountryCode).replaceAll(\n /[^#\\d]+/g,\n '',\n ).length;\n\n const trimCountryPrefix = (value: string): string =>\n countryCode === '+7'\n ? value.replace(/^(\\+?\\s*7?\\s?8?)\\s?/, '')\n : value.replace(\n new RegExp(`^(\\\\+?\\\\s*${countryCode.replace('+', '')}?)\\\\s?`),\n '',\n );\n\n return ({elementState, data}) => {\n const {value, selection} = elementState;\n\n return {\n elementState: {\n selection,\n value:\n /**\n * The only possible case when `value` includes digits more\n * than mask expression allows – browser autofill.\n * It means that we are inside `input`-event\n * and mask are ready to reject \"extra\" characters.\n * We should cut leading country prefix to save trailing characters!\n */\n countDigits(value) > completePhoneLength\n ? trimCountryPrefix(value)\n : value,\n },\n data:\n countDigits(data) >= completePhoneLength || data.startsWith(countryCode)\n ? /**\n * User tries to insert/drop the complete phone number (with country prefix).\n * We should drop already existing non-removable prefix.\n */\n trimCountryPrefix(data)\n : data,\n };\n };\n}\n","/**\n * Create {@link https://maskito.dev/core-concepts/mask-expression pattern mask expression} for phone number\n *\n * @example\n * tuiCreatePhoneMaskExpression('+1', '(###) ###-####');\n */\nexport function tuiCreatePhoneMaskExpression(\n countryCode: string,\n phoneMaskAfterCountryCode: string,\n): Array<RegExp | string> {\n return [\n ...countryCode.split(''),\n ' ',\n ...phoneMaskAfterCountryCode\n .replaceAll(/[^#\\- ()]+/g, '')\n .split('')\n .map((item) => (item === '#' ? /\\d/ : item)),\n ];\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n EventEmitter,\n inject,\n Input,\n Output,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport {\n MASKITO_DEFAULT_OPTIONS,\n type MaskitoOptions,\n maskitoTransform,\n} from '@maskito/core';\nimport {maskitoCaretGuard, maskitoPrefixPostprocessorGenerator} from '@maskito/kit';\nimport {type TuiActiveZone} from '@taiga-ui/cdk/directives/active-zone';\nimport {type TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiIsNativeFocused} from '@taiga-ui/cdk/utils/focus';\nimport {tuiPure} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {\n tuiAsDataListHost,\n TuiDataListDirective,\n type TuiDataListHost,\n} from '@taiga-ui/core/components/data-list';\nimport {TuiDropdownFixed, TuiDropdownOpen} from '@taiga-ui/core/directives/dropdown';\nimport {type TuiSizeL, type TuiSizeS} from '@taiga-ui/core/types';\nimport {AbstractTuiControl, tuiAsControl} from '@taiga-ui/legacy/classes';\nimport {TuiPrimitiveTextfieldComponent} from '@taiga-ui/legacy/components/primitive-textfield';\nimport {TUI_TEXTFIELD_CLEANER, TUI_TEXTFIELD_SIZE} from '@taiga-ui/legacy/directives';\nimport {\n tuiAsFocusableItemAccessor,\n type TuiFocusableElementAccessor,\n} from '@taiga-ui/legacy/tokens';\n\nimport {TUI_INPUT_PHONE_OPTIONS} from './input-phone.options';\nimport {\n tuiCreateCompletePhoneInsertionPreprocessor,\n tuiCreatePhoneMaskExpression,\n} from './utils';\n\nconst MASK_SYMBOLS = /[ \\-_()]/g;\n\nfunction isText(value: string): boolean {\n return Number.isNaN(parseInt(value.replaceAll(MASK_SYMBOLS, ''), 10));\n}\n\n@Component({\n standalone: false,\n selector: 'tui-input-phone',\n templateUrl: './input-phone.template.html',\n styleUrls: ['./input-phone.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiInputPhoneComponent),\n tuiAsControl(TuiInputPhoneComponent),\n tuiAsDataListHost(TuiInputPhoneComponent),\n ],\n hostDirectives: [TuiDropdownFixed],\n host: {\n '[attr.data-size]': 'size',\n },\n})\nexport class TuiInputPhoneComponent\n extends AbstractTuiControl<string>\n implements TuiFocusableElementAccessor, TuiDataListHost<string>\n{\n @ViewChild(TuiDropdownOpen)\n private readonly dropdown?: TuiDropdownOpen;\n\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n private readonly textfieldCleaner = inject(TUI_TEXTFIELD_CLEANER);\n private readonly options = inject(TUI_INPUT_PHONE_OPTIONS);\n private readonly textfieldSize = inject(TUI_TEXTFIELD_SIZE);\n\n @ContentChild(TuiDataListDirective, {read: TemplateRef})\n protected readonly datalist?: TemplateRef<TuiContext<TuiActiveZone>>;\n\n protected open = false;\n\n @Input()\n public phoneMaskAfterCountryCode = this.options.phoneMaskAfterCountryCode;\n\n @Input()\n public allowText = this.options.allowText;\n\n @Input()\n public search = '';\n\n @Output()\n public readonly searchChange = new EventEmitter<string>();\n\n public countryCode = this.options.countryCode;\n\n @Input('countryCode')\n public set countryCodeSetter(newCountryCode: string) {\n const prevCountryCode = this.countryCode;\n\n this.countryCode = newCountryCode;\n this.updateValueWithNewCountryCode(prevCountryCode, newCountryCode);\n }\n\n public get size(): TuiSizeL | TuiSizeS {\n return this.textfieldSize.size;\n }\n\n public get nativeFocusableElement(): HTMLInputElement | null {\n return !this.textfield || this.computedDisabled\n ? null\n : this.textfield.nativeFocusableElement;\n }\n\n public get focused(): boolean {\n return (\n tuiIsNativeFocused(this.nativeFocusableElement) ||\n !!this.dropdown?.tuiDropdownOpen\n );\n }\n\n public get nativeValue(): string {\n return (\n this.nativeFocusableElement?.value ||\n maskitoTransform(this.value, this.maskOptions)\n );\n }\n\n public set nativeValue(value: string) {\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.value = value;\n }\n }\n\n public get inputMode(): string {\n return this.allowText ? 'text' : 'numeric';\n }\n\n public onValueChange(value: string): void {\n const parsed = isText(value)\n ? value\n : value.replaceAll(MASK_SYMBOLS, '').slice(0, this.maxPhoneLength);\n\n this.updateSearch(parsed);\n this.value = parsed === this.countryCode || isText(parsed) ? '' : parsed;\n this.open = true;\n\n if (!this.value && !this.allowText) {\n this.nativeValue = this.nonRemovablePrefix;\n }\n }\n\n public handleOption(item: string): void {\n this.focusInput();\n this.value = item;\n this.nativeValue = maskitoTransform(this.value, this.maskOptions);\n this.updateSearch('');\n this.open = false;\n }\n\n public override setDisabledState(): void {\n super.setDisabledState();\n this.open = false;\n }\n\n public override writeValue(value: string | null): void {\n super.writeValue(value);\n this.nativeValue = maskitoTransform(this.value || '', this.maskOptions);\n this.updateSearch('');\n }\n\n protected get canOpen(): boolean {\n return this.interactive && !!this.datalist;\n }\n\n protected get canClean(): boolean {\n return (\n this.nativeValue !== this.nonRemovablePrefix && this.textfieldCleaner.cleaner\n );\n }\n\n protected get maskOptions(): MaskitoOptions {\n return this.calculateMask(\n this.countryCode,\n this.phoneMaskAfterCountryCode,\n this.nonRemovablePrefix,\n this.allowText,\n );\n }\n\n protected onActiveZone(active: boolean): void {\n this.updateFocused(active);\n\n if (active && !this.nativeValue && !this.readOnly && !this.allowText) {\n this.updateSearch(this.nonRemovablePrefix);\n this.nativeValue = this.nonRemovablePrefix;\n\n return;\n }\n\n if (this.nativeValue === this.nonRemovablePrefix || this.isTextValue) {\n this.updateSearch('');\n this.nativeValue = '';\n\n return;\n }\n\n if (!active && !this.allowText && this.nativeFocusableElement) {\n this.nativeValue = this.nativeValue.replace(/\\D$/, '');\n }\n }\n\n protected getFallbackValue(): string {\n return '';\n }\n\n private get nonRemovablePrefix(): string {\n return `${this.countryCode} `;\n }\n\n private get maxPhoneLength(): number {\n return (\n this.countryCode.length +\n this.phoneMaskAfterCountryCode.replaceAll(/[^#]+/g, '').length\n );\n }\n\n private get isTextValue(): boolean {\n return !!this.search && isText(this.search);\n }\n\n @tuiPure\n private calculateMask(\n countryCode: string,\n phoneMaskAfterCountryCode: string,\n nonRemovablePrefix: string,\n allowText: boolean,\n ): MaskitoOptions {\n const mask = tuiCreatePhoneMaskExpression(countryCode, phoneMaskAfterCountryCode);\n const preprocessors = [\n tuiCreateCompletePhoneInsertionPreprocessor(\n countryCode,\n phoneMaskAfterCountryCode,\n ),\n ];\n\n return allowText\n ? {\n mask: ({value}) =>\n isText(value) && value !== '+'\n ? (MASKITO_DEFAULT_OPTIONS.mask as RegExp)\n : mask,\n preprocessors,\n }\n : {\n mask,\n preprocessors,\n postprocessors: [\n maskitoPrefixPostprocessorGenerator(nonRemovablePrefix),\n ],\n plugins: [\n maskitoCaretGuard((value, [from, to]) => [\n from === to ? nonRemovablePrefix.length : 0,\n value.length,\n ]),\n ],\n };\n }\n\n private focusInput(): void {\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.focus({preventScroll: true});\n }\n }\n\n private updateSearch(search: string): void {\n if (this.search === search) {\n return;\n }\n\n this.search = search;\n this.searchChange.emit(search);\n }\n\n private updateValueWithNewCountryCode(\n prevCountryCode: string,\n newCountryCode: string,\n ): void {\n if (!this.isTextValue) {\n this.value = this.value.replace(prevCountryCode, newCountryCode);\n this.nativeValue = maskitoTransform(this.value, this.maskOptions);\n }\n }\n}\n","<div\n tuiDropdownOpenMonitor\n class=\"t-hosted\"\n [tuiDropdown]=\"datalist || ''\"\n [tuiDropdownEnabled]=\"canOpen\"\n [(tuiDropdownOpen)]=\"open\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <tui-primitive-textfield\n tuiValueAccessor\n class=\"t-textfield\"\n [disabled]=\"computedDisabled\"\n [focusable]=\"focusable\"\n [invalid]=\"computedInvalid\"\n [maskito]=\"maskOptions\"\n [nativeId]=\"nativeId\"\n [pseudoFocus]=\"computedFocused\"\n [pseudoHover]=\"pseudoHover\"\n [readOnly]=\"readOnly\"\n [tuiTextfieldCleaner]=\"canClean\"\n [(value)]=\"nativeValue\"\n (valueChange)=\"onValueChange($event)\"\n >\n <ng-content />\n <ng-content\n ngProjectAs=\"input\"\n select=\"input\"\n />\n </tui-primitive-textfield>\n</div>\n","import {Directive, type DoCheck} from '@angular/core';\nimport {AbstractTuiTextfieldHost} from '@taiga-ui/legacy/classes';\nimport {tuiAsTextfieldHost} from '@taiga-ui/legacy/tokens';\n\nimport {type TuiInputPhoneComponent} from './input-phone.component';\n\n@Directive({\n standalone: false,\n selector: 'tui-input-phone',\n providers: [tuiAsTextfieldHost(TuiInputPhoneDirective)],\n})\nexport class TuiInputPhoneDirective\n extends AbstractTuiTextfieldHost<TuiInputPhoneComponent>\n implements DoCheck\n{\n protected input?: HTMLInputElement;\n\n public override get value(): string {\n return this.host.nativeValue;\n }\n\n public onValueChange(value: string): void {\n this.host.onValueChange(value);\n }\n\n public override process(input: HTMLInputElement): void {\n this.input = input;\n }\n\n public ngDoCheck(): void {\n if (!this.input) {\n return;\n }\n\n this.input.type = 'tel';\n this.input.inputMode = this.host.inputMode;\n }\n}\n","import {NgModule} from '@angular/core';\nimport {MaskitoDirective} from '@maskito/angular';\nimport {TuiDropdown} from '@taiga-ui/core/directives/dropdown';\nimport {\n TuiPrimitiveTextfieldModule,\n TuiTextfieldComponent,\n} from '@taiga-ui/legacy/components/primitive-textfield';\nimport {\n TuiLegacyDropdownOpenMonitorDirective,\n TuiTextfieldControllerModule,\n TuiValueAccessorModule,\n} from '@taiga-ui/legacy/directives';\n\nimport {TuiInputPhoneComponent} from './input-phone.component';\nimport {TuiInputPhoneDirective} from './input-phone.directive';\n\n@NgModule({\n imports: [\n MaskitoDirective,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldControllerModule,\n TuiValueAccessorModule,\n TuiLegacyDropdownOpenMonitorDirective,\n ...TuiDropdown,\n ],\n declarations: [TuiInputPhoneComponent, TuiInputPhoneDirective],\n exports: [\n TuiInputPhoneComponent,\n TuiInputPhoneDirective,\n TuiTextfieldComponent,\n ...TuiDropdown,\n ],\n})\nexport class TuiInputPhoneModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -162,8 +162,8 @@ class TuiInputRangeComponent extends AbstractTuiControl {
162
162
  this.leftTextfieldValue = leftValue;
163
163
  this.rightTextfieldValue = rightValue;
164
164
  }
165
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiInputRangeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
166
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.9", type: TuiInputRangeComponent, isStandalone: false, selector: "tui-input-range", inputs: { min: "min", max: "max", quantum: "quantum", steps: "steps", segments: "segments", keySteps: "keySteps", leftValueContent: "leftValueContent", rightValueContent: "rightValueContent", pluralize: "pluralize" }, host: { properties: { "attr.data-size": "controller.size", "class._label-outside": "controller.labelOutside" } }, providers: [
165
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiInputRangeComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
166
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: TuiInputRangeComponent, isStandalone: false, selector: "tui-input-range", inputs: { min: "min", max: "max", quantum: "quantum", steps: "steps", segments: "segments", keySteps: "keySteps", leftValueContent: "leftValueContent", rightValueContent: "rightValueContent", pluralize: "pluralize" }, host: { properties: { "attr.data-size": "controller.size", "class._label-outside": "controller.labelOutside" } }, providers: [
167
167
  tuiAsFocusableItemAccessor(TuiInputRangeComponent),
168
168
  tuiAsControl(TuiInputRangeComponent),
169
169
  tuiSliderOptionsProvider({ trackColor: 'transparent' }),
@@ -173,7 +173,7 @@ class TuiInputRangeComponent extends AbstractTuiControl {
173
173
  __decorate([
174
174
  tuiPure
175
175
  ], TuiInputRangeComponent.prototype, "computeKeySteps", null);
176
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiInputRangeComponent, decorators: [{
176
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiInputRangeComponent, decorators: [{
177
177
  type: Component,
178
178
  args: [{ standalone: false, selector: 'tui-input-range', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
179
179
  tuiAsFocusableItemAccessor(TuiInputRangeComponent),
@@ -215,8 +215,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImpor
215
215
  * @deprecated use new version of {@link https://taiga-ui.dev/components/input-range TuiInputRange} (from @taiga-ui/kit) instead
216
216
  */
217
217
  class TuiInputRangeModule {
218
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiInputRangeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
219
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.9", ngImport: i0, type: TuiInputRangeModule, declarations: [TuiInputRangeComponent], imports: [CommonModule,
218
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiInputRangeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
219
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.15", ngImport: i0, type: TuiInputRangeModule, declarations: [TuiInputRangeComponent], imports: [CommonModule,
220
220
  FormsModule,
221
221
  PolymorpheusOutlet,
222
222
  PolymorpheusTemplate,
@@ -226,14 +226,14 @@ class TuiInputRangeModule {
226
226
  TuiWrapperModule,
227
227
  TuiTextfieldControllerModule,
228
228
  TuiNumberFormat], exports: [TuiInputRangeComponent] }); }
229
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiInputRangeModule, imports: [CommonModule,
229
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiInputRangeModule, imports: [CommonModule,
230
230
  FormsModule,
231
231
  TuiInputNumberModule,
232
232
  TuiRange,
233
233
  TuiWrapperModule,
234
234
  TuiTextfieldControllerModule] }); }
235
235
  }
236
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiInputRangeModule, decorators: [{
236
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiInputRangeModule, decorators: [{
237
237
  type: NgModule,
238
238
  args: [{
239
239
  imports: [
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-legacy-components-input-range.mjs","sources":["../../../projects/legacy/components/input-range/input-range.component.ts","../../../projects/legacy/components/input-range/input-range.template.html","../../../projects/legacy/components/input-range/input-range.module.ts","../../../projects/legacy/components/input-range/taiga-ui-legacy-components-input-range.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n inject,\n Input,\n type QueryList,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport {EMPTY_QUERY} from '@taiga-ui/cdk/constants';\nimport {TUI_IS_MOBILE} from '@taiga-ui/cdk/tokens';\nimport {type TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiIsNativeFocused, tuiIsNativeFocusedIn} from '@taiga-ui/cdk/utils/focus';\nimport {tuiClamp, tuiRound} from '@taiga-ui/cdk/utils/math';\nimport {tuiPure} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {tuiGetFractionPartPadded} from '@taiga-ui/core/utils/format';\nimport {TuiRange} from '@taiga-ui/kit/components/range';\nimport {\n TUI_FLOATING_PRECISION,\n type TuiKeySteps,\n tuiSliderOptionsProvider,\n} from '@taiga-ui/kit/components/slider';\nimport {AbstractTuiControl, tuiAsControl} from '@taiga-ui/legacy/classes';\nimport {TuiInputNumberComponent} from '@taiga-ui/legacy/components/input-number';\nimport {\n TEXTFIELD_CONTROLLER_PROVIDER,\n TUI_TEXTFIELD_WATCHED_CONTROLLER,\n} from '@taiga-ui/legacy/directives';\nimport {\n tuiAsFocusableItemAccessor,\n type TuiFocusableElementAccessor,\n type TuiNativeFocusableElement,\n} from '@taiga-ui/legacy/tokens';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\n/**\n * TODO(v5): delete it\n * @deprecated use new version of {@link https://taiga-ui.dev/components/input-range TuiInputRange} (from @taiga-ui/kit) instead\n */\n@Component({\n standalone: false,\n selector: 'tui-input-range',\n templateUrl: './input-range.template.html',\n styleUrls: ['./input-range.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiInputRangeComponent),\n tuiAsControl(TuiInputRangeComponent),\n tuiSliderOptionsProvider({trackColor: 'transparent'}),\n TEXTFIELD_CONTROLLER_PROVIDER,\n ],\n host: {\n '[attr.data-size]': 'controller.size',\n '[class._label-outside]': 'controller.labelOutside',\n },\n})\nexport class TuiInputRangeComponent\n extends AbstractTuiControl<[number, number]>\n implements TuiFocusableElementAccessor\n{\n @ViewChildren(TuiInputNumberComponent)\n private readonly inputNumberRefs: QueryList<TuiInputNumberComponent> = EMPTY_QUERY;\n\n @ViewChild(TuiRange, {read: ElementRef})\n private readonly range?: ElementRef<HTMLElement>;\n\n private readonly isMobile = inject(TUI_IS_MOBILE);\n private readonly el = tuiInjectElement();\n\n protected leftTextfieldValue = this.safeCurrentValue[0];\n protected rightTextfieldValue = this.safeCurrentValue[1];\n protected lastActiveSide: 'left' | 'right' = 'left';\n protected readonly controller = inject(TUI_TEXTFIELD_WATCHED_CONTROLLER);\n\n @Input()\n public min = 0;\n\n @Input()\n public max = 100;\n\n @Input()\n public quantum = 1;\n\n @Input()\n public steps = 0;\n\n @Input()\n public segments = 1;\n\n @Input()\n public keySteps: TuiKeySteps | null = null;\n\n @Input()\n public leftValueContent: PolymorpheusContent<TuiContext<number>>;\n\n @Input()\n public rightValueContent: PolymorpheusContent<TuiContext<number>>;\n\n @Input()\n public pluralize: Record<string, string> | null = null;\n\n public get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return this.disabled\n ? null\n : this.leftFocusableElement || this.rightFocusableElement;\n }\n\n public get focused(): boolean {\n return tuiIsNativeFocusedIn(this.el);\n }\n\n public override writeValue(value: [number, number]): void {\n super.writeValue(value);\n this.updateTextfieldValues(this.value);\n }\n\n protected get leftFocusableElement(): HTMLInputElement | null {\n return this.inputNumberRefs.first?.nativeFocusableElement || null;\n }\n\n protected get rightFocusableElement(): HTMLInputElement | null {\n return this.inputNumberRefs.last?.nativeFocusableElement || null;\n }\n\n protected get appearance(): string {\n return this.controller.appearance;\n }\n\n protected get showLeftValueContent(): boolean {\n return Boolean(\n this.leftValueContent &&\n !tuiIsNativeFocused(this.leftFocusableElement) &&\n (!tuiIsNativeFocusedIn(this.range?.nativeElement) ||\n this.lastActiveSide !== 'left'),\n );\n }\n\n protected get showRightValueContent(): boolean {\n return Boolean(\n this.rightValueContent &&\n !tuiIsNativeFocused(this.rightFocusableElement) &&\n (!tuiIsNativeFocusedIn(this.range?.nativeElement) ||\n this.lastActiveSide !== 'right'),\n );\n }\n\n protected get precision(): number {\n return tuiGetFractionPartPadded(this.quantum).length;\n }\n\n protected get computedSteps(): number {\n return this.steps || (this.max - this.min) / this.quantum;\n }\n\n protected get step(): number {\n return (this.max - this.min) / this.computedSteps;\n }\n\n @tuiPure\n protected computeKeySteps(\n keySteps: TuiKeySteps | null,\n min: number,\n max: number,\n ): TuiKeySteps {\n return (\n keySteps || [\n [0, min],\n [100, max],\n ]\n );\n }\n\n protected onActiveZone(active: boolean): void {\n this.updateFocused(active);\n }\n\n protected onTextInputFocused(focused: boolean): void {\n if (!focused) {\n this.updateTextfieldValues(this.value);\n }\n }\n\n protected changeByStep(\n event: Event | KeyboardEvent,\n [leftCoefficient, rightCoefficient]: [number, number],\n ): void {\n if (this.readOnly) {\n return;\n }\n\n event.preventDefault();\n\n const newValue = this.valueGuard([\n this.value[0] + leftCoefficient * this.step,\n this.value[1] + rightCoefficient * this.step,\n ]);\n\n if (newValue[0] !== this.value[0] || newValue[1] !== this.value[1]) {\n this.onExternalValueUpdate(newValue);\n }\n }\n\n protected onInputLeft(value: number | null): void {\n this.safelyUpdateValue([value ?? this.safeCurrentValue[0], this.value[1]]);\n }\n\n protected onInputRight(value: number | null): void {\n this.safelyUpdateValue([this.value[0], value ?? this.safeCurrentValue[1]]);\n }\n\n protected onExternalValueUpdate(value: [number, number]): void {\n this.safelyUpdateValue(value);\n this.updateTextfieldValues(this.value);\n }\n\n protected focusToTextInput(): void {\n const element =\n this.lastActiveSide === 'left'\n ? this.leftFocusableElement\n : this.rightFocusableElement;\n\n if (!this.isMobile && element) {\n element.focus();\n }\n }\n\n protected onActiveThumbChange(activeThumb: 'left' | 'right'): void {\n this.lastActiveSide = activeThumb;\n }\n\n protected getFallbackValue(): [number, number] {\n return [0, 0];\n }\n\n private safelyUpdateValue(value: [number, number]): void {\n this.value = this.valueGuard(value);\n }\n\n private valueGuard([leftValue, rightValue]: [number, number]): [number, number] {\n const leftCalibratedValue = this.calibrate(leftValue);\n const rightCalibratedValue = this.calibrate(rightValue);\n\n return [\n Math.min(leftCalibratedValue, this.value[1]),\n Math.max(rightCalibratedValue, this.value[0]),\n ];\n }\n\n private calibrate(value: number): number {\n const roundedValue = tuiRound(\n Math.round(value / this.quantum) * this.quantum,\n TUI_FLOATING_PRECISION,\n );\n\n return tuiClamp(roundedValue, this.min, this.max);\n }\n\n private updateTextfieldValues([leftValue, rightValue]: [number, number]): void {\n this.leftTextfieldValue = leftValue;\n this.rightTextfieldValue = rightValue;\n }\n}\n","<div\n tuiWrapper\n class=\"t-wrapper\"\n [appearance]=\"appearance\"\n [disabled]=\"disabled\"\n [focus]=\"computedFocused\"\n [hover]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [readOnly]=\"readOnly\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <tui-input-number\n automation-id=\"tui-input-range__left-input\"\n tuiTextfieldAppearance=\"none\"\n class=\"t-left\"\n [disabled]=\"computedDisabled\"\n [max]=\"value[1]\"\n [min]=\"min\"\n [ngModelOptions]=\"{standalone: true}\"\n [readOnly]=\"readOnly\"\n [tuiNumberFormat]=\"{precision}\"\n [tuiTextfieldPostfix]=\"pluralize ? (value[0] | i18nPlural: pluralize) : ''\"\n [(ngModel)]=\"leftTextfieldValue\"\n (focusedChange)=\"onTextInputFocused($event)\"\n (keydown.arrowDown)=\"changeByStep($event, [-1, 0])\"\n (keydown.arrowUp)=\"changeByStep($event, [1, 0])\"\n (ngModelChange)=\"onInputLeft($event)\"\n >\n <ng-content />\n @if (showLeftValueContent) {\n <div ngProjectAs=\"tuiContent\">\n <ng-container *polymorpheusOutlet=\"leftValueContent as text; context: {$implicit: value[0]}\">\n {{ text }}\n </ng-container>\n </div>\n }\n </tui-input-number>\n\n <tui-input-number\n automation-id=\"tui-input-range__right-input\"\n tuiTextfieldAppearance=\"none\"\n class=\"t-right\"\n [disabled]=\"computedDisabled\"\n [max]=\"max\"\n [min]=\"value[0]\"\n [ngModelOptions]=\"{standalone: true}\"\n [readOnly]=\"readOnly\"\n [tuiNumberFormat]=\"{precision}\"\n [tuiTextfieldPostfix]=\"pluralize ? (value[1] | i18nPlural: pluralize) : ''\"\n [(ngModel)]=\"rightTextfieldValue\"\n (focusedChange)=\"onTextInputFocused($event)\"\n (keydown.arrowDown)=\"changeByStep($event, [0, -1])\"\n (keydown.arrowUp)=\"changeByStep($event, [0, 1])\"\n (ngModelChange)=\"onInputRight($event)\"\n >\n @if (showRightValueContent) {\n <div ngProjectAs=\"tuiContent\">\n <ng-container *polymorpheusOutlet=\"rightValueContent as text; context: {$implicit: value[1]}\">\n {{ text }}\n </ng-container>\n </div>\n }\n </tui-input-number>\n\n <tui-range\n class=\"t-range\"\n [disabled]=\"readOnly || disabled\"\n [focusable]=\"false\"\n [keySteps]=\"computeKeySteps(keySteps, min, max)\"\n [max]=\"max\"\n [min]=\"min\"\n [ngModel]=\"value\"\n [ngModelOptions]=\"{standalone: true}\"\n [segments]=\"segments\"\n [step]=\"step\"\n (activeThumbChange)=\"onActiveThumbChange($event)\"\n (mousedown.prevent)=\"focusToTextInput()\"\n (ngModelChange)=\"onExternalValueUpdate($event)\"\n />\n</div>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TuiActiveZone} from '@taiga-ui/cdk/directives/active-zone';\nimport {TuiNumberFormat} from '@taiga-ui/core/directives/number-format';\nimport {TuiRange} from '@taiga-ui/kit/components/range';\nimport {TuiInputNumberModule} from '@taiga-ui/legacy/components/input-number';\nimport {\n TuiTextfieldControllerModule,\n TuiWrapperModule,\n} from '@taiga-ui/legacy/directives';\nimport {PolymorpheusOutlet, PolymorpheusTemplate} from '@taiga-ui/polymorpheus';\n\nimport {TuiInputRangeComponent} from './input-range.component';\n\n/**\n * TODO(v5): delete it\n * @deprecated use new version of {@link https://taiga-ui.dev/components/input-range TuiInputRange} (from @taiga-ui/kit) instead\n */\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n PolymorpheusOutlet,\n PolymorpheusTemplate,\n TuiActiveZone,\n TuiInputNumberModule,\n TuiRange,\n TuiWrapperModule,\n TuiTextfieldControllerModule,\n TuiNumberFormat,\n ],\n declarations: [TuiInputRangeComponent],\n exports: [TuiInputRangeComponent],\n})\nexport class TuiInputRangeModule {}\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-input-range.mjs","sources":["../../../projects/legacy/components/input-range/input-range.component.ts","../../../projects/legacy/components/input-range/input-range.template.html","../../../projects/legacy/components/input-range/input-range.module.ts","../../../projects/legacy/components/input-range/taiga-ui-legacy-components-input-range.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n inject,\n Input,\n type QueryList,\n ViewChild,\n ViewChildren,\n} from '@angular/core';\nimport {EMPTY_QUERY} from '@taiga-ui/cdk/constants';\nimport {TUI_IS_MOBILE} from '@taiga-ui/cdk/tokens';\nimport {type TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiIsNativeFocused, tuiIsNativeFocusedIn} from '@taiga-ui/cdk/utils/focus';\nimport {tuiClamp, tuiRound} from '@taiga-ui/cdk/utils/math';\nimport {tuiPure} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {tuiGetFractionPartPadded} from '@taiga-ui/core/utils/format';\nimport {TuiRange} from '@taiga-ui/kit/components/range';\nimport {\n TUI_FLOATING_PRECISION,\n type TuiKeySteps,\n tuiSliderOptionsProvider,\n} from '@taiga-ui/kit/components/slider';\nimport {AbstractTuiControl, tuiAsControl} from '@taiga-ui/legacy/classes';\nimport {TuiInputNumberComponent} from '@taiga-ui/legacy/components/input-number';\nimport {\n TEXTFIELD_CONTROLLER_PROVIDER,\n TUI_TEXTFIELD_WATCHED_CONTROLLER,\n} from '@taiga-ui/legacy/directives';\nimport {\n tuiAsFocusableItemAccessor,\n type TuiFocusableElementAccessor,\n type TuiNativeFocusableElement,\n} from '@taiga-ui/legacy/tokens';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\n/**\n * TODO(v5): delete it\n * @deprecated use new version of {@link https://taiga-ui.dev/components/input-range TuiInputRange} (from @taiga-ui/kit) instead\n */\n@Component({\n standalone: false,\n selector: 'tui-input-range',\n templateUrl: './input-range.template.html',\n styleUrls: ['./input-range.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiInputRangeComponent),\n tuiAsControl(TuiInputRangeComponent),\n tuiSliderOptionsProvider({trackColor: 'transparent'}),\n TEXTFIELD_CONTROLLER_PROVIDER,\n ],\n host: {\n '[attr.data-size]': 'controller.size',\n '[class._label-outside]': 'controller.labelOutside',\n },\n})\nexport class TuiInputRangeComponent\n extends AbstractTuiControl<[number, number]>\n implements TuiFocusableElementAccessor\n{\n @ViewChildren(TuiInputNumberComponent)\n private readonly inputNumberRefs: QueryList<TuiInputNumberComponent> = EMPTY_QUERY;\n\n @ViewChild(TuiRange, {read: ElementRef})\n private readonly range?: ElementRef<HTMLElement>;\n\n private readonly isMobile = inject(TUI_IS_MOBILE);\n private readonly el = tuiInjectElement();\n\n protected leftTextfieldValue = this.safeCurrentValue[0];\n protected rightTextfieldValue = this.safeCurrentValue[1];\n protected lastActiveSide: 'left' | 'right' = 'left';\n protected readonly controller = inject(TUI_TEXTFIELD_WATCHED_CONTROLLER);\n\n @Input()\n public min = 0;\n\n @Input()\n public max = 100;\n\n @Input()\n public quantum = 1;\n\n @Input()\n public steps = 0;\n\n @Input()\n public segments = 1;\n\n @Input()\n public keySteps: TuiKeySteps | null = null;\n\n @Input()\n public leftValueContent: PolymorpheusContent<TuiContext<number>>;\n\n @Input()\n public rightValueContent: PolymorpheusContent<TuiContext<number>>;\n\n @Input()\n public pluralize: Record<string, string> | null = null;\n\n public get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return this.disabled\n ? null\n : this.leftFocusableElement || this.rightFocusableElement;\n }\n\n public get focused(): boolean {\n return tuiIsNativeFocusedIn(this.el);\n }\n\n public override writeValue(value: [number, number]): void {\n super.writeValue(value);\n this.updateTextfieldValues(this.value);\n }\n\n protected get leftFocusableElement(): HTMLInputElement | null {\n return this.inputNumberRefs.first?.nativeFocusableElement || null;\n }\n\n protected get rightFocusableElement(): HTMLInputElement | null {\n return this.inputNumberRefs.last?.nativeFocusableElement || null;\n }\n\n protected get appearance(): string {\n return this.controller.appearance;\n }\n\n protected get showLeftValueContent(): boolean {\n return Boolean(\n this.leftValueContent &&\n !tuiIsNativeFocused(this.leftFocusableElement) &&\n (!tuiIsNativeFocusedIn(this.range?.nativeElement) ||\n this.lastActiveSide !== 'left'),\n );\n }\n\n protected get showRightValueContent(): boolean {\n return Boolean(\n this.rightValueContent &&\n !tuiIsNativeFocused(this.rightFocusableElement) &&\n (!tuiIsNativeFocusedIn(this.range?.nativeElement) ||\n this.lastActiveSide !== 'right'),\n );\n }\n\n protected get precision(): number {\n return tuiGetFractionPartPadded(this.quantum).length;\n }\n\n protected get computedSteps(): number {\n return this.steps || (this.max - this.min) / this.quantum;\n }\n\n protected get step(): number {\n return (this.max - this.min) / this.computedSteps;\n }\n\n @tuiPure\n protected computeKeySteps(\n keySteps: TuiKeySteps | null,\n min: number,\n max: number,\n ): TuiKeySteps {\n return (\n keySteps || [\n [0, min],\n [100, max],\n ]\n );\n }\n\n protected onActiveZone(active: boolean): void {\n this.updateFocused(active);\n }\n\n protected onTextInputFocused(focused: boolean): void {\n if (!focused) {\n this.updateTextfieldValues(this.value);\n }\n }\n\n protected changeByStep(\n event: Event | KeyboardEvent,\n [leftCoefficient, rightCoefficient]: [number, number],\n ): void {\n if (this.readOnly) {\n return;\n }\n\n event.preventDefault();\n\n const newValue = this.valueGuard([\n this.value[0] + leftCoefficient * this.step,\n this.value[1] + rightCoefficient * this.step,\n ]);\n\n if (newValue[0] !== this.value[0] || newValue[1] !== this.value[1]) {\n this.onExternalValueUpdate(newValue);\n }\n }\n\n protected onInputLeft(value: number | null): void {\n this.safelyUpdateValue([value ?? this.safeCurrentValue[0], this.value[1]]);\n }\n\n protected onInputRight(value: number | null): void {\n this.safelyUpdateValue([this.value[0], value ?? this.safeCurrentValue[1]]);\n }\n\n protected onExternalValueUpdate(value: [number, number]): void {\n this.safelyUpdateValue(value);\n this.updateTextfieldValues(this.value);\n }\n\n protected focusToTextInput(): void {\n const element =\n this.lastActiveSide === 'left'\n ? this.leftFocusableElement\n : this.rightFocusableElement;\n\n if (!this.isMobile && element) {\n element.focus();\n }\n }\n\n protected onActiveThumbChange(activeThumb: 'left' | 'right'): void {\n this.lastActiveSide = activeThumb;\n }\n\n protected getFallbackValue(): [number, number] {\n return [0, 0];\n }\n\n private safelyUpdateValue(value: [number, number]): void {\n this.value = this.valueGuard(value);\n }\n\n private valueGuard([leftValue, rightValue]: [number, number]): [number, number] {\n const leftCalibratedValue = this.calibrate(leftValue);\n const rightCalibratedValue = this.calibrate(rightValue);\n\n return [\n Math.min(leftCalibratedValue, this.value[1]),\n Math.max(rightCalibratedValue, this.value[0]),\n ];\n }\n\n private calibrate(value: number): number {\n const roundedValue = tuiRound(\n Math.round(value / this.quantum) * this.quantum,\n TUI_FLOATING_PRECISION,\n );\n\n return tuiClamp(roundedValue, this.min, this.max);\n }\n\n private updateTextfieldValues([leftValue, rightValue]: [number, number]): void {\n this.leftTextfieldValue = leftValue;\n this.rightTextfieldValue = rightValue;\n }\n}\n","<div\n tuiWrapper\n class=\"t-wrapper\"\n [appearance]=\"appearance\"\n [disabled]=\"disabled\"\n [focus]=\"computedFocused\"\n [hover]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [readOnly]=\"readOnly\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <tui-input-number\n automation-id=\"tui-input-range__left-input\"\n tuiTextfieldAppearance=\"none\"\n class=\"t-left\"\n [disabled]=\"computedDisabled\"\n [max]=\"value[1]\"\n [min]=\"min\"\n [ngModelOptions]=\"{standalone: true}\"\n [readOnly]=\"readOnly\"\n [tuiNumberFormat]=\"{precision}\"\n [tuiTextfieldPostfix]=\"pluralize ? (value[0] | i18nPlural: pluralize) : ''\"\n [(ngModel)]=\"leftTextfieldValue\"\n (focusedChange)=\"onTextInputFocused($event)\"\n (keydown.arrowDown)=\"changeByStep($event, [-1, 0])\"\n (keydown.arrowUp)=\"changeByStep($event, [1, 0])\"\n (ngModelChange)=\"onInputLeft($event)\"\n >\n <ng-content />\n @if (showLeftValueContent) {\n <div ngProjectAs=\"tuiContent\">\n <ng-container *polymorpheusOutlet=\"leftValueContent as text; context: {$implicit: value[0]}\">\n {{ text }}\n </ng-container>\n </div>\n }\n </tui-input-number>\n\n <tui-input-number\n automation-id=\"tui-input-range__right-input\"\n tuiTextfieldAppearance=\"none\"\n class=\"t-right\"\n [disabled]=\"computedDisabled\"\n [max]=\"max\"\n [min]=\"value[0]\"\n [ngModelOptions]=\"{standalone: true}\"\n [readOnly]=\"readOnly\"\n [tuiNumberFormat]=\"{precision}\"\n [tuiTextfieldPostfix]=\"pluralize ? (value[1] | i18nPlural: pluralize) : ''\"\n [(ngModel)]=\"rightTextfieldValue\"\n (focusedChange)=\"onTextInputFocused($event)\"\n (keydown.arrowDown)=\"changeByStep($event, [0, -1])\"\n (keydown.arrowUp)=\"changeByStep($event, [0, 1])\"\n (ngModelChange)=\"onInputRight($event)\"\n >\n @if (showRightValueContent) {\n <div ngProjectAs=\"tuiContent\">\n <ng-container *polymorpheusOutlet=\"rightValueContent as text; context: {$implicit: value[1]}\">\n {{ text }}\n </ng-container>\n </div>\n }\n </tui-input-number>\n\n <tui-range\n class=\"t-range\"\n [disabled]=\"readOnly || disabled\"\n [focusable]=\"false\"\n [keySteps]=\"computeKeySteps(keySteps, min, max)\"\n [max]=\"max\"\n [min]=\"min\"\n [ngModel]=\"value\"\n [ngModelOptions]=\"{standalone: true}\"\n [segments]=\"segments\"\n [step]=\"step\"\n (activeThumbChange)=\"onActiveThumbChange($event)\"\n (mousedown.prevent)=\"focusToTextInput()\"\n (ngModelChange)=\"onExternalValueUpdate($event)\"\n />\n</div>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TuiActiveZone} from '@taiga-ui/cdk/directives/active-zone';\nimport {TuiNumberFormat} from '@taiga-ui/core/directives/number-format';\nimport {TuiRange} from '@taiga-ui/kit/components/range';\nimport {TuiInputNumberModule} from '@taiga-ui/legacy/components/input-number';\nimport {\n TuiTextfieldControllerModule,\n TuiWrapperModule,\n} from '@taiga-ui/legacy/directives';\nimport {PolymorpheusOutlet, PolymorpheusTemplate} from '@taiga-ui/polymorpheus';\n\nimport {TuiInputRangeComponent} from './input-range.component';\n\n/**\n * TODO(v5): delete it\n * @deprecated use new version of {@link https://taiga-ui.dev/components/input-range TuiInputRange} (from @taiga-ui/kit) instead\n */\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n PolymorpheusOutlet,\n PolymorpheusTemplate,\n TuiActiveZone,\n TuiInputNumberModule,\n TuiRange,\n TuiWrapperModule,\n TuiTextfieldControllerModule,\n TuiNumberFormat,\n ],\n declarations: [TuiInputRangeComponent],\n exports: [TuiInputRangeComponent],\n})\nexport class TuiInputRangeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -111,8 +111,8 @@ class TuiInputSliderComponent extends AbstractTuiControl {
111
111
  const roundedValue = tuiRound(Math.round(value / this.quantum) * this.quantum, TUI_FLOATING_PRECISION);
112
112
  return tuiClamp(roundedValue, this.min, this.max);
113
113
  }
114
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiInputSliderComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
115
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.9", type: TuiInputSliderComponent, isStandalone: false, selector: "tui-input-slider", inputs: { min: "min", max: "max", quantum: "quantum", steps: "steps", segments: "segments", keySteps: "keySteps", valueContent: "valueContent" }, host: { properties: { "attr.data-size": "controller.size", "class._label-outside": "controller.labelOutside" } }, providers: [
114
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiInputSliderComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
115
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: TuiInputSliderComponent, isStandalone: false, selector: "tui-input-slider", inputs: { min: "min", max: "max", quantum: "quantum", steps: "steps", segments: "segments", keySteps: "keySteps", valueContent: "valueContent" }, host: { properties: { "attr.data-size": "controller.size", "class._label-outside": "controller.labelOutside" } }, providers: [
116
116
  tuiAsFocusableItemAccessor(TuiInputSliderComponent),
117
117
  tuiAsControl(TuiInputSliderComponent),
118
118
  tuiSliderOptionsProvider({ trackColor: 'transparent' }),
@@ -122,7 +122,7 @@ class TuiInputSliderComponent extends AbstractTuiControl {
122
122
  __decorate([
123
123
  tuiPure
124
124
  ], TuiInputSliderComponent.prototype, "computeKeySteps", null);
125
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiInputSliderComponent, decorators: [{
125
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiInputSliderComponent, decorators: [{
126
126
  type: Component,
127
127
  args: [{ standalone: false, selector: 'tui-input-slider', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
128
128
  tuiAsFocusableItemAccessor(TuiInputSliderComponent),
@@ -160,20 +160,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImpor
160
160
  * @deprecated use new version of {@link https://taiga-ui.dev/components/input-slider TuiInputSlider} (from @taiga-ui/kit) instead
161
161
  */
162
162
  class TuiInputSliderModule {
163
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiInputSliderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
164
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.9", ngImport: i0, type: TuiInputSliderModule, declarations: [TuiInputSliderComponent], imports: [CommonModule,
163
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiInputSliderModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
164
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.15", ngImport: i0, type: TuiInputSliderModule, declarations: [TuiInputSliderComponent], imports: [CommonModule,
165
165
  FormsModule,
166
166
  PolymorpheusOutlet,
167
167
  PolymorpheusTemplate,
168
168
  TuiInputNumberModule,
169
169
  TuiNumberFormat,
170
170
  TuiTextfieldControllerModule, i1$1.TuiSliderComponent, i1$1.TuiSliderThumbLabel, i1$1.TuiSliderKeyStepsBase, i1$1.TuiSliderKeySteps, i1$1.TuiSliderReadonly], exports: [TuiInputSliderComponent, i1$1.TuiSliderComponent, i1$1.TuiSliderThumbLabel, i1$1.TuiSliderKeyStepsBase, i1$1.TuiSliderKeySteps, i1$1.TuiSliderReadonly] }); }
171
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiInputSliderModule, imports: [CommonModule,
171
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiInputSliderModule, imports: [CommonModule,
172
172
  FormsModule,
173
173
  TuiInputNumberModule,
174
174
  TuiTextfieldControllerModule, i1$1.TuiSliderComponent, i1$1.TuiSliderThumbLabel] }); }
175
175
  }
176
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiInputSliderModule, decorators: [{
176
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiInputSliderModule, decorators: [{
177
177
  type: NgModule,
178
178
  args: [{
179
179
  imports: [
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-legacy-components-input-slider.mjs","sources":["../../../projects/legacy/components/input-slider/input-slider.component.ts","../../../projects/legacy/components/input-slider/input-slider.template.html","../../../projects/legacy/components/input-slider/input-slider.module.ts","../../../projects/legacy/components/input-slider/taiga-ui-legacy-components-input-slider.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n inject,\n Input,\n ViewChild,\n} from '@angular/core';\nimport {type TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiIsNativeFocused} from '@taiga-ui/cdk/utils/focus';\nimport {tuiClamp, tuiRound} from '@taiga-ui/cdk/utils/math';\nimport {tuiPure} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {tuiGetFractionPartPadded} from '@taiga-ui/core/utils/format';\nimport {\n TUI_FLOATING_PRECISION,\n type TuiKeySteps,\n TuiSliderComponent,\n tuiSliderOptionsProvider,\n} from '@taiga-ui/kit/components/slider';\nimport {AbstractTuiControl, tuiAsControl} from '@taiga-ui/legacy/classes';\nimport {TuiInputNumberComponent} from '@taiga-ui/legacy/components/input-number';\nimport {\n TEXTFIELD_CONTROLLER_PROVIDER,\n TUI_TEXTFIELD_WATCHED_CONTROLLER,\n} from '@taiga-ui/legacy/directives';\nimport {\n tuiAsFocusableItemAccessor,\n type TuiFocusableElementAccessor,\n type TuiNativeFocusableElement,\n} from '@taiga-ui/legacy/tokens';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\n/**\n * TODO(v5): delete it\n * @deprecated use new version of {@link https://taiga-ui.dev/components/input-slider TuiInputSlider} (from @taiga-ui/kit) instead\n */\n@Component({\n standalone: false,\n selector: 'tui-input-slider',\n templateUrl: './input-slider.template.html',\n styleUrls: ['./input-slider.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiInputSliderComponent),\n tuiAsControl(TuiInputSliderComponent),\n tuiSliderOptionsProvider({trackColor: 'transparent'}),\n TEXTFIELD_CONTROLLER_PROVIDER,\n ],\n host: {\n '[attr.data-size]': 'controller.size',\n '[class._label-outside]': 'controller.labelOutside',\n },\n})\nexport class TuiInputSliderComponent\n extends AbstractTuiControl<number>\n implements TuiFocusableElementAccessor\n{\n @ViewChild(TuiInputNumberComponent)\n private readonly inputNumberRef?: TuiInputNumberComponent;\n\n @ViewChild(TuiSliderComponent, {read: ElementRef})\n private readonly sliderRef?: ElementRef<HTMLInputElement>;\n\n protected textfieldValue = this.safeCurrentValue;\n protected readonly controller = inject(TUI_TEXTFIELD_WATCHED_CONTROLLER);\n\n @Input()\n public min = 0;\n\n @Input()\n public max = 100;\n\n @Input()\n public quantum = 1;\n\n @Input()\n public steps = 0;\n\n @Input()\n public segments: number[] | number = 1;\n\n @Input()\n public keySteps: TuiKeySteps | null = null;\n\n @Input()\n public valueContent: PolymorpheusContent<TuiContext<number>>;\n\n public get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return !this.inputNumberRef?.nativeFocusableElement || this.computedDisabled\n ? null\n : this.inputNumberRef.nativeFocusableElement;\n }\n\n public get focused(): boolean {\n return (\n tuiIsNativeFocused(this.nativeFocusableElement) ||\n tuiIsNativeFocused(this.sliderRef?.nativeElement || null)\n );\n }\n\n public override writeValue(value: number | null): void {\n super.writeValue(value);\n this.textfieldValue = this.value;\n }\n\n protected get prefix(): string {\n return this.controller.prefix;\n }\n\n protected get postfix(): string {\n return this.controller.postfix;\n }\n\n protected get computedSteps(): number {\n return this.steps || (this.max - this.min) / this.quantum;\n }\n\n protected get precision(): number {\n return tuiGetFractionPartPadded(this.quantum).length;\n }\n\n protected get showValueContent(): boolean {\n return Boolean(this.valueContent && !this.focused);\n }\n\n protected get step(): number {\n return (this.max - this.min) / this.computedSteps;\n }\n\n @tuiPure\n protected computeKeySteps(\n keySteps: TuiKeySteps | null,\n min: number,\n max: number,\n ): TuiKeySteps {\n return (\n keySteps || [\n [0, min],\n [100, max],\n ]\n );\n }\n\n protected focusTextInput(): void {\n const focusableElement = this.inputNumberRef?.nativeFocusableElement;\n\n if (focusableElement) {\n focusableElement.focus();\n }\n }\n\n protected safelyUpdateValue(value: number | null): void {\n this.value = this.valueGuard(value ?? this.safeCurrentValue);\n }\n\n protected onVerticalArrowKeyDown(coefficient: number): void {\n if (this.readOnly || !this.step) {\n return;\n }\n\n const value = this.value + coefficient * this.step;\n\n if (value !== this.value) {\n this.safelyUpdateValue(value);\n this.textfieldValue = this.value;\n }\n }\n\n protected onSliderChange(newValue: number): void {\n this.safelyUpdateValue(newValue);\n this.textfieldValue = this.value;\n }\n\n protected onFocused(focused: boolean): void {\n const {value, textfieldValue} = this;\n\n if (!focused && textfieldValue !== value) {\n this.textfieldValue = value;\n }\n\n this.updateFocused(focused);\n }\n\n protected getFallbackValue(): number {\n return 0;\n }\n\n private valueGuard(value: number): number {\n const roundedValue = tuiRound(\n Math.round(value / this.quantum) * this.quantum,\n TUI_FLOATING_PRECISION,\n );\n\n return tuiClamp(roundedValue, this.min, this.max);\n }\n}\n","<tui-input-number\n [disabled]=\"computedDisabled\"\n [max]=\"max\"\n [min]=\"min\"\n [ngModelOptions]=\"{standalone: true}\"\n [pseudoActive]=\"pseudoActive\"\n [pseudoFocus]=\"computedFocused\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoInvalid]=\"pseudoInvalid\"\n [readOnly]=\"readOnly\"\n [tuiNumberFormat]=\"{precision}\"\n [tuiTextfieldPostfix]=\"postfix\"\n [tuiTextfieldPrefix]=\"prefix\"\n [(ngModel)]=\"textfieldValue\"\n (focusedChange)=\"onFocused($event)\"\n (keydown.arrowDown.prevent)=\"onVerticalArrowKeyDown(-1)\"\n (keydown.arrowUp.prevent)=\"onVerticalArrowKeyDown(1)\"\n (ngModelChange)=\"safelyUpdateValue($event)\"\n>\n <ng-content />\n @if (showValueContent) {\n <div\n automation-id=\"tui-input-slider__value-content\"\n ngProjectAs=\"tuiContent\"\n >\n <ng-container *polymorpheusOutlet=\"valueContent as text; context: {$implicit: value}\">\n {{ text }}\n </ng-container>\n </div>\n }\n</tui-input-number>\n\n<input\n tabIndex=\"-1\"\n tuiSlider\n type=\"range\"\n [disabled]=\"readOnly || computedDisabled\"\n [keySteps]=\"computeKeySteps(keySteps, min, max)\"\n [max]=\"computedSteps\"\n [ngModel]=\"value\"\n [ngModelOptions]=\"{standalone: true}\"\n [segments]=\"segments\"\n (click)=\"focusTextInput()\"\n (ngModelChange)=\"onSliderChange($event)\"\n/>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TuiNumberFormat} from '@taiga-ui/core/directives/number-format';\nimport {TuiSlider} from '@taiga-ui/kit/components/slider';\nimport {TuiInputNumberModule} from '@taiga-ui/legacy/components/input-number';\nimport {TuiTextfieldControllerModule} from '@taiga-ui/legacy/directives';\nimport {PolymorpheusOutlet, PolymorpheusTemplate} from '@taiga-ui/polymorpheus';\n\nimport {TuiInputSliderComponent} from './input-slider.component';\n\n/**\n * TODO(v5): delete it\n * @deprecated use new version of {@link https://taiga-ui.dev/components/input-slider TuiInputSlider} (from @taiga-ui/kit) instead\n */\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n PolymorpheusOutlet,\n PolymorpheusTemplate,\n TuiInputNumberModule,\n TuiNumberFormat,\n TuiTextfieldControllerModule,\n ...TuiSlider,\n ],\n declarations: [TuiInputSliderComponent],\n exports: [TuiInputSliderComponent, ...TuiSlider],\n})\nexport class TuiInputSliderModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i6","i1"],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-legacy-components-input-slider.mjs","sources":["../../../projects/legacy/components/input-slider/input-slider.component.ts","../../../projects/legacy/components/input-slider/input-slider.template.html","../../../projects/legacy/components/input-slider/input-slider.module.ts","../../../projects/legacy/components/input-slider/taiga-ui-legacy-components-input-slider.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n inject,\n Input,\n ViewChild,\n} from '@angular/core';\nimport {type TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiIsNativeFocused} from '@taiga-ui/cdk/utils/focus';\nimport {tuiClamp, tuiRound} from '@taiga-ui/cdk/utils/math';\nimport {tuiPure} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {tuiGetFractionPartPadded} from '@taiga-ui/core/utils/format';\nimport {\n TUI_FLOATING_PRECISION,\n type TuiKeySteps,\n TuiSliderComponent,\n tuiSliderOptionsProvider,\n} from '@taiga-ui/kit/components/slider';\nimport {AbstractTuiControl, tuiAsControl} from '@taiga-ui/legacy/classes';\nimport {TuiInputNumberComponent} from '@taiga-ui/legacy/components/input-number';\nimport {\n TEXTFIELD_CONTROLLER_PROVIDER,\n TUI_TEXTFIELD_WATCHED_CONTROLLER,\n} from '@taiga-ui/legacy/directives';\nimport {\n tuiAsFocusableItemAccessor,\n type TuiFocusableElementAccessor,\n type TuiNativeFocusableElement,\n} from '@taiga-ui/legacy/tokens';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\n/**\n * TODO(v5): delete it\n * @deprecated use new version of {@link https://taiga-ui.dev/components/input-slider TuiInputSlider} (from @taiga-ui/kit) instead\n */\n@Component({\n standalone: false,\n selector: 'tui-input-slider',\n templateUrl: './input-slider.template.html',\n styleUrls: ['./input-slider.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiInputSliderComponent),\n tuiAsControl(TuiInputSliderComponent),\n tuiSliderOptionsProvider({trackColor: 'transparent'}),\n TEXTFIELD_CONTROLLER_PROVIDER,\n ],\n host: {\n '[attr.data-size]': 'controller.size',\n '[class._label-outside]': 'controller.labelOutside',\n },\n})\nexport class TuiInputSliderComponent\n extends AbstractTuiControl<number>\n implements TuiFocusableElementAccessor\n{\n @ViewChild(TuiInputNumberComponent)\n private readonly inputNumberRef?: TuiInputNumberComponent;\n\n @ViewChild(TuiSliderComponent, {read: ElementRef})\n private readonly sliderRef?: ElementRef<HTMLInputElement>;\n\n protected textfieldValue = this.safeCurrentValue;\n protected readonly controller = inject(TUI_TEXTFIELD_WATCHED_CONTROLLER);\n\n @Input()\n public min = 0;\n\n @Input()\n public max = 100;\n\n @Input()\n public quantum = 1;\n\n @Input()\n public steps = 0;\n\n @Input()\n public segments: number[] | number = 1;\n\n @Input()\n public keySteps: TuiKeySteps | null = null;\n\n @Input()\n public valueContent: PolymorpheusContent<TuiContext<number>>;\n\n public get nativeFocusableElement(): TuiNativeFocusableElement | null {\n return !this.inputNumberRef?.nativeFocusableElement || this.computedDisabled\n ? null\n : this.inputNumberRef.nativeFocusableElement;\n }\n\n public get focused(): boolean {\n return (\n tuiIsNativeFocused(this.nativeFocusableElement) ||\n tuiIsNativeFocused(this.sliderRef?.nativeElement || null)\n );\n }\n\n public override writeValue(value: number | null): void {\n super.writeValue(value);\n this.textfieldValue = this.value;\n }\n\n protected get prefix(): string {\n return this.controller.prefix;\n }\n\n protected get postfix(): string {\n return this.controller.postfix;\n }\n\n protected get computedSteps(): number {\n return this.steps || (this.max - this.min) / this.quantum;\n }\n\n protected get precision(): number {\n return tuiGetFractionPartPadded(this.quantum).length;\n }\n\n protected get showValueContent(): boolean {\n return Boolean(this.valueContent && !this.focused);\n }\n\n protected get step(): number {\n return (this.max - this.min) / this.computedSteps;\n }\n\n @tuiPure\n protected computeKeySteps(\n keySteps: TuiKeySteps | null,\n min: number,\n max: number,\n ): TuiKeySteps {\n return (\n keySteps || [\n [0, min],\n [100, max],\n ]\n );\n }\n\n protected focusTextInput(): void {\n const focusableElement = this.inputNumberRef?.nativeFocusableElement;\n\n if (focusableElement) {\n focusableElement.focus();\n }\n }\n\n protected safelyUpdateValue(value: number | null): void {\n this.value = this.valueGuard(value ?? this.safeCurrentValue);\n }\n\n protected onVerticalArrowKeyDown(coefficient: number): void {\n if (this.readOnly || !this.step) {\n return;\n }\n\n const value = this.value + coefficient * this.step;\n\n if (value !== this.value) {\n this.safelyUpdateValue(value);\n this.textfieldValue = this.value;\n }\n }\n\n protected onSliderChange(newValue: number): void {\n this.safelyUpdateValue(newValue);\n this.textfieldValue = this.value;\n }\n\n protected onFocused(focused: boolean): void {\n const {value, textfieldValue} = this;\n\n if (!focused && textfieldValue !== value) {\n this.textfieldValue = value;\n }\n\n this.updateFocused(focused);\n }\n\n protected getFallbackValue(): number {\n return 0;\n }\n\n private valueGuard(value: number): number {\n const roundedValue = tuiRound(\n Math.round(value / this.quantum) * this.quantum,\n TUI_FLOATING_PRECISION,\n );\n\n return tuiClamp(roundedValue, this.min, this.max);\n }\n}\n","<tui-input-number\n [disabled]=\"computedDisabled\"\n [max]=\"max\"\n [min]=\"min\"\n [ngModelOptions]=\"{standalone: true}\"\n [pseudoActive]=\"pseudoActive\"\n [pseudoFocus]=\"computedFocused\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoInvalid]=\"pseudoInvalid\"\n [readOnly]=\"readOnly\"\n [tuiNumberFormat]=\"{precision}\"\n [tuiTextfieldPostfix]=\"postfix\"\n [tuiTextfieldPrefix]=\"prefix\"\n [(ngModel)]=\"textfieldValue\"\n (focusedChange)=\"onFocused($event)\"\n (keydown.arrowDown.prevent)=\"onVerticalArrowKeyDown(-1)\"\n (keydown.arrowUp.prevent)=\"onVerticalArrowKeyDown(1)\"\n (ngModelChange)=\"safelyUpdateValue($event)\"\n>\n <ng-content />\n @if (showValueContent) {\n <div\n automation-id=\"tui-input-slider__value-content\"\n ngProjectAs=\"tuiContent\"\n >\n <ng-container *polymorpheusOutlet=\"valueContent as text; context: {$implicit: value}\">\n {{ text }}\n </ng-container>\n </div>\n }\n</tui-input-number>\n\n<input\n tabIndex=\"-1\"\n tuiSlider\n type=\"range\"\n [disabled]=\"readOnly || computedDisabled\"\n [keySteps]=\"computeKeySteps(keySteps, min, max)\"\n [max]=\"computedSteps\"\n [ngModel]=\"value\"\n [ngModelOptions]=\"{standalone: true}\"\n [segments]=\"segments\"\n (click)=\"focusTextInput()\"\n (ngModelChange)=\"onSliderChange($event)\"\n/>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TuiNumberFormat} from '@taiga-ui/core/directives/number-format';\nimport {TuiSlider} from '@taiga-ui/kit/components/slider';\nimport {TuiInputNumberModule} from '@taiga-ui/legacy/components/input-number';\nimport {TuiTextfieldControllerModule} from '@taiga-ui/legacy/directives';\nimport {PolymorpheusOutlet, PolymorpheusTemplate} from '@taiga-ui/polymorpheus';\n\nimport {TuiInputSliderComponent} from './input-slider.component';\n\n/**\n * TODO(v5): delete it\n * @deprecated use new version of {@link https://taiga-ui.dev/components/input-slider TuiInputSlider} (from @taiga-ui/kit) instead\n */\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n PolymorpheusOutlet,\n PolymorpheusTemplate,\n TuiInputNumberModule,\n TuiNumberFormat,\n TuiTextfieldControllerModule,\n ...TuiSlider,\n ],\n declarations: [TuiInputSliderComponent],\n exports: [TuiInputSliderComponent, ...TuiSlider],\n})\nexport class TuiInputSliderModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i6","i1"],"mappings":"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"}
@@ -382,15 +382,15 @@ class TuiInputTagComponent extends AbstractTuiMultipleControl {
382
382
  clippedValue(value) {
383
383
  return value.slice(0, this.maxLength || value.length);
384
384
  }
385
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiInputTagComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
386
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.9", type: TuiInputTagComponent, isStandalone: false, selector: "tui-input-tag", inputs: { separator: "separator", search: "search", editable: "editable", tagValidator: "tagValidator", rows: "rows", inputHidden: "inputHidden", uniqueTags: "uniqueTags", autoColor: "autoColor", maxLength: "maxLength", placeholder: "placeholder", removable: "removable", disabledItemHandler: "disabledItemHandler", pseudoFocusedSetter: ["pseudoFocused", "pseudoFocusedSetter"], setPseudoOpen: ["pseudoOpen", "setPseudoOpen"] }, outputs: { searchChange: "searchChange" }, host: { listeners: { "focusin.capture.zoneless": "onFocusInOut()", "focusout.capture.zoneless": "onFocusInOut()" }, properties: { "attr.data-size": "size", "class._icon-start": "iconStart", "class._expandable": "expandable", "class._label-outside": "labelOutside" } }, providers: [
385
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiInputTagComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
386
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", type: TuiInputTagComponent, isStandalone: false, selector: "tui-input-tag", inputs: { separator: "separator", search: "search", editable: "editable", tagValidator: "tagValidator", rows: "rows", inputHidden: "inputHidden", uniqueTags: "uniqueTags", autoColor: "autoColor", maxLength: "maxLength", placeholder: "placeholder", removable: "removable", disabledItemHandler: "disabledItemHandler", pseudoFocusedSetter: ["pseudoFocused", "pseudoFocusedSetter"], setPseudoOpen: ["pseudoOpen", "setPseudoOpen"] }, outputs: { searchChange: "searchChange" }, host: { listeners: { "focusin.capture.zoneless": "onFocusInOut()", "focusout.capture.zoneless": "onFocusInOut()" }, properties: { "attr.data-size": "size", "class._icon-start": "iconStart", "class._expandable": "expandable", "class._label-outside": "labelOutside" } }, providers: [
387
387
  tuiAsFocusableItemAccessor(TuiInputTagComponent),
388
388
  tuiAsControl(TuiInputTagComponent),
389
389
  tuiAsDataListHost(TuiInputTagComponent),
390
390
  TEXTFIELD_CONTROLLER_PROVIDER,
391
391
  ], queries: [{ propertyName: "datalist", first: true, predicate: TuiDataListDirective, descendants: true, read: TemplateRef }, { propertyName: "valueContent", first: true, predicate: PolymorpheusOutlet, descendants: true }], viewQueries: [{ propertyName: "dropdown", first: true, predicate: TuiDropdownOpen, descendants: true }, { propertyName: "focusableElement", first: true, predicate: ["focusableElement"], descendants: true }, { propertyName: "tagsContainer", first: true, predicate: ["tagsContainer"], descendants: true }, { propertyName: "cleanerSvg", first: true, predicate: ["cleaner"], descendants: true, read: ElementRef }, { propertyName: "scrollBar", first: true, predicate: TuiScrollbar, descendants: true, read: ElementRef }, { propertyName: "errorIconTemplate", first: true, predicate: ["errorIcon"], descendants: true }, { propertyName: "tags", predicate: ["tag"], descendants: true, read: ElementRef }], usesInheritance: true, hostDirectives: [{ directive: i1.TuiDropdownFixed }], ngImport: i0, template: "@if (hintOptions?.change$ | async) {}\n<div\n tuiDropdownOpenMonitor\n class=\"t-hosted\"\n [tuiDropdown]=\"datalist || ''\"\n [tuiDropdownEnabled]=\"canOpen\"\n [(tuiDropdownOpen)]=\"open\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <div\n tuiWrapper\n [appearance]=\"appearance\"\n [disabled]=\"computedDisabled\"\n [focus]=\"computedFocused\"\n [hover]=\"pseudoHover\"\n [invalid]=\"computedInvalid\"\n [readOnly]=\"readOnly\"\n (click.prevent.zoneless)=\"detectRetargetFromLabel($event)\"\n (mousedown)=\"onMouseDown($event)\"\n >\n <div class=\"t-content\">\n @if (iconStart) {\n <div class=\"t-icon t-icon_left t-textfield-icon t-icon-wrapper\">\n <tui-icon\n *polymorpheusOutlet=\"iconStart as src; context: {$implicit: size}\"\n tuiAppearance=\"icon\"\n [icon]=\"src.toString()\"\n />\n </div>\n }\n <div class=\"t-wrapper\">\n <div class=\"t-absolute-wrapper\">\n @if (hasPlaceholder) {\n <div\n automation-id=\"tui-input-tag__placeholder\"\n class=\"t-placeholder\"\n [class.t-placeholder_raised]=\"placeholderRaised\"\n >\n <ng-content />\n </div>\n }\n </div>\n <tui-scrollbar\n class=\"t-scrollbar\"\n [hidden]=\"!expandable\"\n [style.maxHeight.rem]=\"computeMaxHeight\"\n >\n <div\n class=\"t-tags\"\n [class.t-tags_empty]=\"tagsEmpty\"\n >\n @if (labelOutside) {\n @for (item of value; track trackByFn(index, item); let index = $index) {\n <tui-tag\n #tag\n automation-id=\"tui-input-tag__tag\"\n tabIndex=\"-1\"\n class=\"t-tag\"\n [autoColor]=\"autoColor\"\n [disabled]=\"computedDisabled || disabledItemHandler(item)\"\n [editable]=\"editable && !readOnly\"\n [hoverable]=\"!readOnly\"\n [leftContent]=\"getLeftContent(item)\"\n [maxLength]=\"maxLength\"\n [removable]=\"!readOnly && removable\"\n [separator]=\"separator\"\n [size]=\"controller.size\"\n [status]=\"status\"\n [value]=\"item.toString()\"\n (edited)=\"onTagEdited($event, index)\"\n (keydown.arrowLeft.prevent)=\"onTagKeyDownArrowLeft(index)\"\n (keydown.arrowRight.prevent)=\"onTagKeyDownArrowRight(index)\"\n />\n }\n } @else {\n @for (item of value; track item) {\n <span\n class=\"t-text\"\n [class.t-text_comma]=\"computedFocused && !inputHidden\"\n [class.t-text_disabled]=\"disabledItemHandler(item)\"\n [class.t-text_error]=\"!tagValidator(item)\"\n [textContent]=\"item\"\n ></span>\n }\n }\n <div\n class=\"t-input-wrapper\"\n [class.t-input-wrapper_collapsed]=\"computedDisabled || readOnly || inputHidden\"\n >\n <div class=\"t-ghost\">{{ search }}</div>\n <input\n #focusableElement\n automation-id=\"tui-input-tag__native\"\n type=\"text\"\n class=\"t-native\"\n [attr.maxLength]=\"maxLength\"\n [class.t-native_hidden]=\"inputHidden\"\n [disabled]=\"computedDisabled\"\n [id]=\"id\"\n [ngModel]=\"search\"\n [ngModelOptions]=\"{standalone: true}\"\n [placeholder]=\"placeholder\"\n [readOnly]=\"readOnly || inputHidden\"\n [tabIndex]=\"computedFocusable ? 0 : -1\"\n (drop.prevent)=\"onDrop($any($event))\"\n (keydown.arrowLeft)=\"onFieldKeyDownArrowLeft($event)\"\n (keydown.backspace)=\"onFieldKeyDownBackspace($event)\"\n (keydown.enter.prevent)=\"onFieldKeyDownEnter()\"\n (ngModelChange)=\"onInput($event)\"\n (paste.prevent)=\"onPaste($event)\"\n />\n </div>\n </div>\n <div class=\"t-value-content\">\n <ng-content select=\"tuiContent\" />\n </div>\n </tui-scrollbar>\n </div>\n <ng-content select=\"select\" />\n @if (hasRightIcons) {\n <div class=\"t-icons t-icon-wrapper\">\n @if (hasCleaner) {\n <tui-icon\n *polymorpheusOutlet=\"iconCleaner as src; context: {$implicit: size}\"\n #cleaner\n automation-id=\"tui-input-tag__cleaner\"\n tuiAppearance=\"icon\"\n class=\"t-cleaner\"\n [icon]=\"src.toString()\"\n (click.stop)=\"onCleanerClick()\"\n />\n }\n @if (showHint) {\n <tui-tooltip\n automation-id=\"tui-input-tag__tooltip\"\n class=\"t-tooltip\"\n [content]=\"hintOptions?.content\"\n [describeId]=\"id\"\n />\n }\n @if (icon) {\n <div class=\"t-icon t-textfield-icon\">\n <tui-icon\n *polymorpheusOutlet=\"icon as src; context: {$implicit: size}\"\n tuiAppearance=\"icon\"\n [icon]=\"src.toString()\"\n />\n </div>\n }\n </div>\n }\n </div>\n <ng-template #errorIcon>\n <tui-icon\n class=\"t-error-icon\"\n [icon]=\"icons.error\"\n />\n </ng-template>\n </div>\n</div>\n", styles: [":host{position:relative;display:block;text-align:start;border-radius:var(--tui-radius-m);block-size:var(--tui-height);min-block-size:var(--tui-height);max-block-size:var(--tui-height)}:host[data-size=s]{--tui-height: var(--tui-height-s);font:var(--tui-font-text-s)}:host[data-size=m]{--tui-height: var(--tui-height-m);font:var(--tui-font-text-s)}:host[data-size=l]{--tui-height: var(--tui-height-l);font:var(--tui-font-text-m);line-height:1.25rem}:host :host-context(*:disabled){pointer-events:none}.t-input{padding:0;margin:0;border-width:0;border-radius:inherit;background:none;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:none;-webkit-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;inline-size:100%;block-size:100%;border-style:solid;border-color:transparent;border-inline-start-width:var(--t-border-start, 0);border-inline-end-width:var(--t-border-end, 0);text-indent:var(--t-text-indent);color:var(--tui-text-primary);text-align:inherit;box-sizing:border-box;white-space:nowrap;overflow:hidden;text-transform:inherit;resize:none}.t-input:-webkit-autofill,.t-input:-webkit-autofill:hover,.t-input:-webkit-autofill:focus{-webkit-text-fill-color:var(--tui-text-primary)!important;border-color:var(--tui-service-autofill-background);box-shadow:0 0 0 100rem var(--tui-service-autofill-background) inset!important}.t-input[inputMode=none]{caret-color:transparent}.t-input:-webkit-autofill,.t-input:-webkit-autofill:first-line{font-size:inherit;line-height:inherit}.t-input::-webkit-caps-lock-indicator,.t-input::-webkit-contacts-auto-fill-button,.t-input::-webkit-credit-card-auto-fill-button,.t-input::-webkit-credentials-auto-fill-button,.t-input::-webkit-strong-password-auto-fill-button{content:none!important;position:absolute;left:-62.4375rem;top:-62.4375rem;z-index:-999;display:none!important;background:transparent!important;pointer-events:none!important}.t-input::placeholder{color:var(--tui-text-tertiary);opacity:0}:host._focused:not(._readonly) .t-input::placeholder,:host-context(tui-primitive-textfield._focused:not(._readonly)) .t-input::placeholder,:host-context(tui-textarea._focused:not(._readonly)) .t-input::placeholder,:host-context(tui-text-area._focused:not(._readonly)) .t-input::placeholder{opacity:1}:host[data-size=s] .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"s\"]):not(tui-primitive-textfield),.t-input :host-context(tui-textarea[data-size=\"s\"]):not(tui-textarea),.t-input :host-context(tui-text-area[data-size=\"s\"]):not(tui-text-area){padding:0 var(--tui-padding-s)}:host[data-size=m] .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"m\"]):not(tui-primitive-textfield),.t-input :host-context(tui-textarea[data-size=\"m\"]):not(tui-textarea),.t-input :host-context(tui-text-area[data-size=\"m\"]):not(tui-text-area){padding:0 var(--tui-padding-m)}:host[data-size=l] .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"l\"]):not(tui-primitive-textfield),.t-input :host-context(tui-textarea[data-size=\"l\"]):not(tui-textarea),.t-input :host-context(tui-text-area[data-size=\"l\"]):not(tui-text-area){padding:0 var(--tui-padding-l)}:host._disabled .t-input,.t-input :host-context(tui-primitive-textfield._disabled),.t-input :host-context(tui-textarea._disabled),.t-input :host-context(tui-text-area._disabled){pointer-events:none}:host[data-size=l]:not(._label-outside) .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"l\"]:not(._label-outside)):not(tui-primitive-textfield){padding-block-start:1.25rem}:host[data-size=m]:not(._label-outside) .t-input,.t-input :host-context(tui-primitive-textfield[data-size=\"m\"]:not(._label-outside)):not(tui-primitive-textfield){padding-block-start:1rem}:host[data-size=l]:not(._label-outside) .t-input{padding-block-start:1.25rem}:host[data-size=l]:not(._label-outside) .t-input:-webkit-autofill+.t-content .t-placeholder{font-size:.8156rem;transform:translateY(-.625rem)}:host[data-size=m]:not(._label-outside) .t-input:-webkit-autofill+.t-content .t-placeholder{font-size:.69rem;transform:translateY(-.5rem)}:host._hidden input.t-input,.t-input :host-context(tui-primitive-textfield._hidden){opacity:0;text-indent:-10em}.t-content{display:flex;block-size:100%;inline-size:100%;box-sizing:border-box;align-items:center;overflow:hidden}:host[data-size=s] .t-content{padding:0 var(--tui-padding-s)}:host[data-size=m] .t-content{padding:0 var(--tui-padding-m)}:host[data-size=l] .t-content{padding:0 var(--tui-padding-l)}.t-wrapper{flex:1;min-inline-size:0;padding-inline-end:.25rem}.t-placeholder{transition-property:transform,font-size,color,letter-spacing;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;inline-size:100%;-webkit-user-select:none;user-select:none;font:var(--tui-font-text-s);color:var(--tui-text-secondary);pointer-events:none;will-change:transform;transform:translateY(0)}@supports (-webkit-hyphens: none){.t-placeholder{will-change:unset;transition-property:transform,color,letter-spacing}}.t-placeholder_raised{transform:translateY(-.625rem)}:host[data-size=m] .t-placeholder_raised{font:var(--tui-font-text-xs);line-height:1.25rem;transform:translateY(-.5rem);letter-spacing:.025rem}:host._invalid:not(._focused) .t-placeholder_raised,:host._invalid:not(._focused):hover .t-placeholder_raised{color:var(--tui-text-negative)}:host._focused .t-placeholder,:host[data-size=m]._focused._label-outside .t-placeholder,:host[data-size=l]._focused._label-outside .t-placeholder{color:var(--tui-text-tertiary)}:host[data-size=l] .t-placeholder{font:var(--tui-font-text-m);line-height:1.25rem}:host[data-size=l] .t-placeholder_raised{font-size:.8156rem}:host[data-size=m]._focused:not(._label-outside) .t-placeholder,:host[data-size=l]._focused:not(._label-outside) .t-placeholder{color:var(--tui-text-primary)}.t-cleaner{position:relative;display:flex;inline-size:1.5rem;block-size:1.5rem;align-items:center;justify-content:center;box-sizing:border-box;cursor:pointer;pointer-events:none;pointer-events:auto}:host._readonly .t-cleaner,:host._disabled .t-cleaner{pointer-events:none}.t-cleaner:before{font-size:1rem}.t-icon{position:relative;display:flex;inline-size:1.5rem;block-size:1.5rem;align-items:center;justify-content:center;box-sizing:border-box;cursor:pointer;pointer-events:none}:host[data-size=s] .t-icon_left{margin:0 .125rem 0 -.375rem}:host[data-size=m] .t-icon_left{margin-inline-start:-.125rem;margin-inline-end:.375rem}:host[data-size=l] .t-icon_left{margin-inline-end:.75rem}.t-icons{display:flex;align-items:center}:host[data-size=m] .t-icons{margin-inline-end:-.125rem}:host[data-size=s] .t-icons{margin-inline-end:-.375rem}:host:not([data-size=s]) .t-icons>:not(:first-child){margin-inline-start:.25rem}:host{cursor:text}:host._expandable{block-size:auto;max-block-size:none}:host._disabled,:host :host-context(*:disabled){pointer-events:none}:host._readonly{cursor:default}:host[data-size=m]{line-height:1rem}.t-hosted{display:block;border-radius:inherit}.t-scrollbar{scroll-behavior:var(--tui-scroll-behavior);margin-inline-start:-.25rem;min-inline-size:100%}:host:not(._label-outside) .t-scrollbar,:host._label-outside._icon-start .t-scrollbar{margin:0}:host[data-size=s]._icon-start .t-scrollbar{margin-inline-start:.25rem}:host[data-size=m]:not(._label-outside) .t-scrollbar{border-block-start:1rem solid transparent}:host[data-size=l]:not(._label-outside) .t-scrollbar{border-block-start:1.25rem solid transparent}.t-tags{display:flex;padding-inline-start:.25rem}.t-tags_expandable{overflow:hidden}.t-tags_empty{block-size:0}:host._expandable .t-tags{flex-wrap:wrap;white-space:normal;overflow:hidden}:host._readonly .t-tags{pointer-events:none}:host[data-size=m]:not(._label-outside) .t-tags,:host[data-size=l]:not(._label-outside) .t-tags{padding:0}.t-tags tui-tag:last-of-type{max-inline-size:80%}.t-content{align-items:flex-start}:host[data-size=s] .t-content{min-block-size:var(--tui-height-s)}:host[data-size=m] .t-content{min-block-size:var(--tui-height-m)}:host[data-size=l] .t-content{min-block-size:var(--tui-height-l)}:host[data-size=s] .t-icon-wrapper{block-size:var(--tui-height-s)}:host[data-size=m] .t-icon-wrapper{block-size:var(--tui-height-m)}:host[data-size=l] .t-icon-wrapper{block-size:var(--tui-height-l)}.t-absolute-wrapper{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;display:flex;flex-direction:column;justify-content:center}:host[data-size=m] .t-absolute-wrapper{block-size:var(--tui-height-m)}:host[data-size=l] .t-absolute-wrapper{block-size:var(--tui-height-l)}.t-wrapper{position:relative;display:flex;align-items:center;padding:0;box-sizing:border-box}:host[data-size=s] .t-wrapper{min-block-size:var(--tui-height-s);padding:calc((var(--tui-height-s) - 1.5rem) / 2) 0}:host[data-size=m] .t-wrapper{min-block-size:var(--tui-height-m);padding:calc((var(--tui-height-m) - var(--tui-height-xs) - .25rem) / 2) 0}:host[data-size=l] .t-wrapper{padding:calc((var(--tui-height-l) - var(--tui-height-s) - .25rem) / 2) 0}:host[data-size=m]:not(._label-outside) .t-wrapper{padding:calc((var(--tui-height-m) - 2rem) / 2) 0}:host[data-size=l]:not(._label-outside) .t-wrapper{padding:calc((var(--tui-height-l) - 2.5rem) / 2) 0}.t-tag{margin:.125rem .5rem .125rem -.25rem;margin-inline-start:-.25rem;margin-inline-end:.5rem;max-inline-size:100%;flex-shrink:0}:host[data-size=m] .t-tag{margin-inline-start:-.125rem;margin-inline-end:.375rem}.t-text:after{content:\",\\a0\"}.t-text_disabled{color:var(--tui-text-tertiary)}.t-text_error{color:var(--tui-text-negative)}.t-text:not(.t-text_comma):last-of-type:after{content:\"\"}:host:not(._expandable) .t-text{white-space:nowrap}.t-input-wrapper,.t-value-content{position:relative;display:flex;flex:1;max-inline-size:100%}:host[data-size=s] .t-input-wrapper,:host[data-size=s] .t-value-content{min-block-size:1.5rem}:host[data-size=m] .t-input-wrapper,:host[data-size=m] .t-value-content{min-block-size:calc(var(--tui-height-xs) + 2 * .125rem)}:host[data-size=l] .t-input-wrapper,:host[data-size=l] .t-value-content{min-block-size:calc(var(--tui-height-s) + 2 * .125rem)}:host:not(._label-outside) .t-input-wrapper,:host:not(._label-outside) .t-value-content{min-block-size:1rem}.t-input-wrapper_collapsed{flex:0;margin-inline-start:-.5rem}.t-value-content:empty{display:none}.t-ghost{visibility:hidden;white-space:pre;text-overflow:clip;min-inline-size:.125rem}:host:not(._expandable) .t-ghost{min-inline-size:2rem}.t-native{margin:0;border-width:0;border-radius:inherit;background:none;font-size:inherit;line-height:inherit;font-weight:inherit;color:inherit;caret-color:currentColor;outline:none;-webkit-appearance:none;appearance:none;word-break:keep-all;-webkit-text-fill-color:currentColor;position:absolute;top:0;left:0;inline-size:100%;block-size:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box;padding:0;cursor:inherit}.t-native:-webkit-autofill,.t-native:-webkit-autofill:hover,.t-native:-webkit-autofill:focus{-webkit-text-fill-color:var(--tui-text-primary)!important;border-color:var(--tui-service-autofill-background);box-shadow:0 0 0 100rem var(--tui-service-autofill-background) inset!important}.t-native[inputMode=none]{caret-color:transparent}.t-native_hidden{opacity:0;text-indent:-10em}.t-native::placeholder{color:var(--tui-text-tertiary);opacity:0}:host-context([tuiTheme=\"dark\"]) .t-native::placeholder{color:var(--tui-text-tertiary)}:host._focused .t-native:not(:read-only)::placeholder{opacity:1}.t-error-icon{display:block;color:var(--tui-status-negative);font-size:1rem}:host._readonly .t-textfield-icon ::ng-deep [tuiAppearance][data-appearance=icon]{pointer-events:none}@media (hover: hover) and (pointer: fine){:host:not(._readonly):not(._disabled):hover .t-textfield-icon ::ng-deep [tuiAppearance][data-appearance=icon]:before{color:var(--tui-text-secondary)}}\n"], dependencies: [{ kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "component", type: i4.TuiScrollbar, selector: "tui-scrollbar", inputs: ["hidden"] }, { kind: "component", type: i5.TuiTooltipComponent, selector: "tui-tooltip", inputs: ["content", "direction", "appearance", "showDelay", "hideDelay", "describeId", "context"] }, { kind: "component", type: i6.TuiTagComponent, selector: "tui-tag, a[tuiTag], button[tuiTag]", inputs: ["value", "editable", "separator", "maxLength", "size", "showLoader", "status", "hoverable", "removable", "disabled", "autoColor", "leftContent"], outputs: ["edited"] }, { kind: "directive", type: i7.TuiWrapperDirective, selector: "[tuiWrapper]", inputs: ["disabled", "readOnly", "hover", "active", "focus", "invalid", "appearance"] }, { kind: "directive", type: i7.TuiLegacyDropdownOpenMonitorDirective, selector: "[tuiDropdownOpenMonitor]" }, { kind: "directive", type: i8.TuiAppearance, selector: "[tuiAppearance]", inputs: ["tuiAppearance", "tuiAppearanceState", "tuiAppearanceFocus", "tuiAppearanceMode"] }, { kind: "component", type: i9.TuiIcon, selector: "tui-icon:not([tuiBadge])", inputs: ["background"] }, { kind: "directive", type: i1.TuiDropdownDirective, selector: "[tuiDropdown]:not(ng-container):not(ng-template)", inputs: ["tuiDropdown"], exportAs: ["tuiDropdown"] }, { kind: "directive", type: i1.TuiDropdownOpen, selector: "[tuiDropdown][tuiDropdownOpen],[tuiDropdown][tuiDropdownOpenChange]", inputs: ["tuiDropdownEnabled", "tuiDropdownOpen"], outputs: ["tuiDropdownOpenChange"] }, { kind: "pipe", type: i10.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
392
392
  }
393
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiInputTagComponent, decorators: [{
393
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiInputTagComponent, decorators: [{
394
394
  type: Component,
395
395
  args: [{ standalone: false, selector: 'tui-input-tag', changeDetection: ChangeDetectionStrategy.OnPush, providers: [
396
396
  tuiAsFocusableItemAccessor(TuiInputTagComponent),
@@ -471,8 +471,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImpor
471
471
  * @deprecated use {@link https://taiga-ui.dev/components/input-chip TuiInputChip} instead
472
472
  */
473
473
  class TuiInputTagModule {
474
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiInputTagModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
475
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.9", ngImport: i0, type: TuiInputTagModule, declarations: [TuiInputTagComponent], imports: [CommonModule,
474
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiInputTagModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
475
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.15", ngImport: i0, type: TuiInputTagModule, declarations: [TuiInputTagComponent], imports: [CommonModule,
476
476
  FormsModule,
477
477
  PolymorpheusOutlet,
478
478
  PolymorpheusTemplate,
@@ -484,7 +484,7 @@ class TuiInputTagModule {
484
484
  TuiLegacyDropdownOpenMonitorDirective,
485
485
  TuiAppearance,
486
486
  TuiIcon, i1.TuiDropdownOptionsDirective, i1.TuiDropdownDriverDirective, i1.TuiDropdownDirective, i1.TuiDropdownComponent, i1.TuiDropdownOpen, i1.TuiDropdownOpenLegacy, i1.TuiDropdownPortal, i1.TuiDropdownManual, i1.TuiDropdownHover, i1.TuiDropdownContext, i1.TuiDropdownPosition, i1.TuiDropdownPositionSided, i1.TuiDropdownSelection], exports: [TuiInputTagComponent, i1.TuiDropdownOptionsDirective, i1.TuiDropdownDriverDirective, i1.TuiDropdownDirective, i1.TuiDropdownComponent, i1.TuiDropdownOpen, i1.TuiDropdownOpenLegacy, i1.TuiDropdownPortal, i1.TuiDropdownManual, i1.TuiDropdownHover, i1.TuiDropdownContext, i1.TuiDropdownPosition, i1.TuiDropdownPositionSided, i1.TuiDropdownSelection] }); }
487
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiInputTagModule, providers: [TuiScrollService], imports: [CommonModule,
487
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiInputTagModule, providers: [TuiScrollService], imports: [CommonModule,
488
488
  FormsModule,
489
489
  TuiScrollbar,
490
490
  TuiTooltipModule,
@@ -492,7 +492,7 @@ class TuiInputTagModule {
492
492
  TuiWrapperModule,
493
493
  TuiIcon, i1.TuiDropdownComponent] }); }
494
494
  }
495
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiInputTagModule, decorators: [{
495
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiInputTagModule, decorators: [{
496
496
  type: NgModule,
497
497
  args: [{
498
498
  imports: [