@taiga-ui/kit 3.20.0-dev.main-1b892f1 → 3.20.0-dev.main-47eb6ae

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 (34) hide show
  1. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js +1 -1
  2. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js.map +1 -1
  3. package/bundles/taiga-ui-kit-components-input-time.umd.js +9 -2
  4. package/bundles/taiga-ui-kit-components-input-time.umd.js.map +1 -1
  5. package/bundles/taiga-ui-kit-components-line-clamp.umd.js +1 -1
  6. package/bundles/taiga-ui-kit-components-line-clamp.umd.js.map +1 -1
  7. package/bundles/taiga-ui-kit-services.umd.js +67 -0
  8. package/bundles/taiga-ui-kit-services.umd.js.map +1 -0
  9. package/bundles/taiga-ui-kit.umd.js +10 -4
  10. package/bundles/taiga-ui-kit.umd.js.map +1 -1
  11. package/components/input-time/input-time.component.d.ts +1 -0
  12. package/esm2015/components/input-phone-international/tokens/countries-masks.js +2 -2
  13. package/esm2015/components/input-time/input-time.component.js +6 -3
  14. package/esm2015/components/line-clamp/line-clamp.component.js +1 -1
  15. package/esm2015/index.js +2 -1
  16. package/esm2015/services/dialog-form.service.js +32 -0
  17. package/esm2015/services/index.js +2 -0
  18. package/esm2015/services/taiga-ui-kit-services.js +5 -0
  19. package/fesm2015/taiga-ui-kit-components-input-phone-international.js +1 -1
  20. package/fesm2015/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  21. package/fesm2015/taiga-ui-kit-components-input-time.js +5 -2
  22. package/fesm2015/taiga-ui-kit-components-input-time.js.map +1 -1
  23. package/fesm2015/taiga-ui-kit-components-line-clamp.js +1 -1
  24. package/fesm2015/taiga-ui-kit-components-line-clamp.js.map +1 -1
  25. package/fesm2015/taiga-ui-kit-services.js +39 -0
  26. package/fesm2015/taiga-ui-kit-services.js.map +1 -0
  27. package/fesm2015/taiga-ui-kit.js +1 -0
  28. package/fesm2015/taiga-ui-kit.js.map +1 -1
  29. package/index.d.ts +1 -0
  30. package/package.json +1 -1
  31. package/services/dialog-form.service.d.ts +14 -0
  32. package/services/index.d.ts +1 -0
  33. package/services/package.json +10 -0
  34. package/services/taiga-ui-kit-services.d.ts +5 -0
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-input-phone-international.js","sources":["../../../projects/kit/components/input-phone-international/const/mask-after-code-regexp.ts","../../../projects/kit/components/input-phone-international/input-phone-international.options.ts","../../../projects/kit/components/input-phone-international/tokens/countries-masks.ts","../../../projects/kit/components/input-phone-international/utils/extract-value-from-event.ts","../../../projects/kit/components/input-phone-international/input-phone-international.component.ts","../../../projects/kit/components/input-phone-international/input-phone-international.template.html","../../../projects/kit/components/input-phone-international/input-phone-international.module.ts","../../../projects/kit/components/input-phone-international/taiga-ui-kit-components-input-phone-international.ts"],"sourcesContent":["export const MASK_AFTER_CODE_REGEXP = /\\([#]+\\)|[#\\- ]/g;\n","import {InjectionToken, ValueProvider} from '@angular/core';\nimport {TuiCountryIsoCode} from '@taiga-ui/i18n';\n\nexport interface TuiInputPhoneInternationalOptions {\n readonly countries: readonly TuiCountryIsoCode[];\n readonly countryIsoCode: TuiCountryIsoCode;\n}\n\nexport const TUI_INPUT_PHONE_INTERNATIONAL_DEFAULT_OPTIONS: TuiInputPhoneInternationalOptions =\n {\n countries: [],\n countryIsoCode: TuiCountryIsoCode.RU,\n };\n\n/**\n * Default parameters for input phone international component\n */\nexport const TUI_INPUT_PHONE_INTERNATIONAL_OPTIONS =\n new InjectionToken<TuiInputPhoneInternationalOptions>(\n `[TUI_INPUT_PHONE_INTERNATIONAL_OPTIONS]`,\n {\n factory: () => TUI_INPUT_PHONE_INTERNATIONAL_DEFAULT_OPTIONS,\n },\n );\n\nexport const tuiInputPhoneInternationalOptionsProvider: (\n options: Partial<TuiInputPhoneInternationalOptions>,\n) => ValueProvider = (options: Partial<TuiInputPhoneInternationalOptions>) => ({\n provide: TUI_INPUT_PHONE_INTERNATIONAL_OPTIONS,\n useValue: {...TUI_INPUT_PHONE_INTERNATIONAL_DEFAULT_OPTIONS, ...options},\n});\n","import {InjectionToken} from '@angular/core';\nimport {TuiCountryIsoCode} from '@taiga-ui/i18n';\n\nexport const TUI_COUNTRIES_MASKS: InjectionToken<Record<TuiCountryIsoCode, string>> =\n new InjectionToken<Record<TuiCountryIsoCode, string>>(`[TUI_COUNTRIES_MASKS]`, {\n factory: () => ({\n [TuiCountryIsoCode.AD]: `+376###-###`,\n [TuiCountryIsoCode.AE]: `+971-##-###-####`,\n [TuiCountryIsoCode.AF]: `+93##-###-####`,\n [TuiCountryIsoCode.AG]: `+1(268) ###-####`,\n [TuiCountryIsoCode.AI]: `+1(264) ###-####`,\n [TuiCountryIsoCode.AL]: `+355(###) ###-###`,\n [TuiCountryIsoCode.AM]: `+374##-###-###`,\n [TuiCountryIsoCode.AO]: `+244(###) ###-###`,\n [TuiCountryIsoCode.AR]: `+54(###) ###-####`,\n [TuiCountryIsoCode.AT]: `+43(###) ###-####`,\n [TuiCountryIsoCode.AU]: `+61#-####-####`,\n [TuiCountryIsoCode.AW]: `+297###-####`,\n [TuiCountryIsoCode.AZ]: `+994##-###-##-##`,\n [TuiCountryIsoCode.BA]: `+387 ###-####-##`,\n [TuiCountryIsoCode.BB]: `+1(246) ###-####`,\n [TuiCountryIsoCode.BD]: `+880##-###-###`,\n [TuiCountryIsoCode.BE]: `+32(###) ###-###`,\n [TuiCountryIsoCode.BF]: `+226##-##-####`,\n [TuiCountryIsoCode.BG]: `+359(###) ###-###`,\n [TuiCountryIsoCode.BH]: `+973####-####`,\n [TuiCountryIsoCode.BI]: `+257##-##-####`,\n [TuiCountryIsoCode.BJ]: `+229##-##-####`,\n [TuiCountryIsoCode.BL]: `+590 ## ## ## ## ##`,\n [TuiCountryIsoCode.BM]: `+1(441) ###-####`,\n [TuiCountryIsoCode.BN]: `+673###-####`,\n [TuiCountryIsoCode.BO]: `+591#-###-####`,\n [TuiCountryIsoCode.BQ]: `+599-###-####`,\n [TuiCountryIsoCode.BR]: `+55(##) ####-####`,\n [TuiCountryIsoCode.BS]: `+1(242) ###-####`,\n [TuiCountryIsoCode.BT]: `+975#-###-###`,\n [TuiCountryIsoCode.BW]: `+267##-###-###`,\n [TuiCountryIsoCode.BY]: `+375(##) ###-##-##`,\n [TuiCountryIsoCode.BZ]: `+501###-####`,\n [TuiCountryIsoCode.CA]: `+1(###) ###-####`,\n [TuiCountryIsoCode.CD]: `+243(###) ###-###`,\n [TuiCountryIsoCode.CF]: `+236-##-##-####`,\n [TuiCountryIsoCode.CG]: `+242##-###-####`,\n [TuiCountryIsoCode.CH]: `+41##-###-####`,\n [TuiCountryIsoCode.CI]: `+225##-###-###`,\n [TuiCountryIsoCode.CL]: `+56#-####-####`,\n [TuiCountryIsoCode.CM]: `+237####-####`,\n [TuiCountryIsoCode.CN]: `+86(###) ####-####`,\n [TuiCountryIsoCode.CO]: `+57(###) ###-####`,\n [TuiCountryIsoCode.CR]: `+506####-####`,\n [TuiCountryIsoCode.CU]: `+53#-###-####`,\n [TuiCountryIsoCode.CV]: `+238(###) ##-##`,\n [TuiCountryIsoCode.CW]: `+5999-###-####`,\n [TuiCountryIsoCode.CY]: `+357##-###-###`,\n [TuiCountryIsoCode.CZ]: `+420(###) ###-###`,\n [TuiCountryIsoCode.DE]: `+49(###) ###-###-##`,\n [TuiCountryIsoCode.DJ]: `+253##-##-##-##`,\n [TuiCountryIsoCode.DK]: `+45##-##-##-##`,\n [TuiCountryIsoCode.DM]: `+1(767) ###-####`,\n [TuiCountryIsoCode.DO]: `+1(###) ###-####`,\n [TuiCountryIsoCode.DZ]: `+213##-###-####`,\n [TuiCountryIsoCode.EC]: `+593##-###-####`,\n [TuiCountryIsoCode.EE]: `+372####-####`,\n [TuiCountryIsoCode.EG]: `+20(###) ###-####`,\n [TuiCountryIsoCode.ER]: `+291#-###-###`,\n [TuiCountryIsoCode.ES]: `+34(###) ###-###`,\n [TuiCountryIsoCode.ET]: `+251##-###-####`,\n [TuiCountryIsoCode.FI]: `+358(###) ###-##-##`,\n [TuiCountryIsoCode.FJ]: `+679##-#####`,\n [TuiCountryIsoCode.FK]: `+500#####`,\n [TuiCountryIsoCode.FM]: `+691###-####`,\n [TuiCountryIsoCode.FR]: `+33 ## ## ## ## ##`,\n [TuiCountryIsoCode.GA]: `+241#-##-##-##`,\n [TuiCountryIsoCode.GB]: `+44##-####-####`,\n [TuiCountryIsoCode.GD]: `+1(473) ###-####`,\n [TuiCountryIsoCode.GE]: `+995(###) ###-###`,\n [TuiCountryIsoCode.GF]: `+594 ## ## ## ## ##`,\n [TuiCountryIsoCode.GH]: `+233(###) ###-###`,\n [TuiCountryIsoCode.GI]: `+350###-#####`,\n [TuiCountryIsoCode.GL]: `+299##-##-##`,\n [TuiCountryIsoCode.GM]: `+220(###) ##-##`,\n [TuiCountryIsoCode.GN]: `+224##-###-###`,\n [TuiCountryIsoCode.GP]: `+590 ## ## ## ## ##`,\n [TuiCountryIsoCode.GQ]: `+240##-###-####`,\n [TuiCountryIsoCode.GR]: `+30(###) ###-####`,\n [TuiCountryIsoCode.GT]: `+502#-###-####`,\n [TuiCountryIsoCode.GW]: `+245#-######`,\n [TuiCountryIsoCode.GY]: `+592###-####`,\n [TuiCountryIsoCode.HK]: `+852####-####`,\n [TuiCountryIsoCode.HN]: `+504####-####`,\n [TuiCountryIsoCode.HR]: `+385##-###-####`,\n [TuiCountryIsoCode.HT]: `+509##-##-####`,\n [TuiCountryIsoCode.HU]: `+36(###) ###-###`,\n [TuiCountryIsoCode.ID]: `+62(###) ###-##-###`,\n [TuiCountryIsoCode.IE]: `+353(###) ###-###`,\n [TuiCountryIsoCode.IL]: `+972##-###-####`,\n [TuiCountryIsoCode.IN]: `+91(####) ###-###`,\n [TuiCountryIsoCode.IQ]: `+964(###) ###-####`,\n [TuiCountryIsoCode.IR]: `+98(###) ###-####`,\n [TuiCountryIsoCode.IS]: `+354###-####`,\n [TuiCountryIsoCode.IT]: `+39(###) ####-###`,\n [TuiCountryIsoCode.JM]: `+1(876) ###-####`,\n [TuiCountryIsoCode.JO]: `+962#-####-####`,\n [TuiCountryIsoCode.JP]: `+81-##-####-####`,\n [TuiCountryIsoCode.KE]: `+254###-######`,\n [TuiCountryIsoCode.KG]: `+996(###) ###-###`,\n [TuiCountryIsoCode.KH]: `+855##-###-###`,\n [TuiCountryIsoCode.KM]: `+269##-#####`,\n [TuiCountryIsoCode.KN]: `+1(869) ###-####`,\n [TuiCountryIsoCode.KP]: `+850####-#############`,\n [TuiCountryIsoCode.KR]: `+82##-###-####`,\n [TuiCountryIsoCode.KW]: `+965####-####`,\n [TuiCountryIsoCode.KY]: `+1(345) ###-####`,\n [TuiCountryIsoCode.KZ]: `+7(###) ###-##-##`,\n [TuiCountryIsoCode.LA]: `+856##-##-###-###`,\n [TuiCountryIsoCode.LB]: `+961##-###-###`,\n [TuiCountryIsoCode.LC]: `+1(758) ###-####`,\n [TuiCountryIsoCode.LI]: `+423(###) ###-####`,\n [TuiCountryIsoCode.LK]: `+94##-###-####`,\n [TuiCountryIsoCode.LR]: `+231##-###-###`,\n [TuiCountryIsoCode.LS]: `+266#-###-####`,\n [TuiCountryIsoCode.LT]: `+370(###) ##-###`,\n [TuiCountryIsoCode.LU]: `+352(###) ###-###`,\n [TuiCountryIsoCode.LV]: `+371##-###-###`,\n [TuiCountryIsoCode.LY]: `+218##-###-####`,\n [TuiCountryIsoCode.MA]: `+212##-####-###`,\n [TuiCountryIsoCode.MC]: `+377###-###-###`,\n [TuiCountryIsoCode.MD]: `+373####-####`,\n [TuiCountryIsoCode.ME]: `+382##-###-###`,\n [TuiCountryIsoCode.MF]: `+590 ## ## ## ## ##`,\n [TuiCountryIsoCode.MG]: `+261##-##-#####`,\n [TuiCountryIsoCode.MK]: `+389##-###-###`,\n [TuiCountryIsoCode.ML]: `+223##-##-####`,\n [TuiCountryIsoCode.MM]: `+95##-###-###`,\n [TuiCountryIsoCode.MN]: `+976##-##-####`,\n [TuiCountryIsoCode.MO]: `+853####-####`,\n [TuiCountryIsoCode.MQ]: `+596 ## ## ## ## ##`,\n [TuiCountryIsoCode.MR]: `+222##-##-####`,\n [TuiCountryIsoCode.MS]: `+1(664) ###-####`,\n [TuiCountryIsoCode.MT]: `+356####-####`,\n [TuiCountryIsoCode.MU]: `+230###-####`,\n [TuiCountryIsoCode.MV]: `+960###-####`,\n [TuiCountryIsoCode.MW]: `+265#-####-####`,\n [TuiCountryIsoCode.MX]: `+52(###) ###-####`,\n [TuiCountryIsoCode.MY]: `+60(###) ###-###`,\n [TuiCountryIsoCode.MZ]: `+258##-###-###`,\n [TuiCountryIsoCode.NA]: `+264##-###-####`,\n [TuiCountryIsoCode.NC]: `+687 ### ###`,\n [TuiCountryIsoCode.NE]: `+227##-##-####`,\n [TuiCountryIsoCode.NG]: `+234(###) ###-####`,\n [TuiCountryIsoCode.NI]: `+505####-####`,\n [TuiCountryIsoCode.NL]: `+31##-###-####`,\n [TuiCountryIsoCode.NO]: `+47(###) ##-###`,\n [TuiCountryIsoCode.NP]: `+977##-###-###`,\n [TuiCountryIsoCode.NZ]: `+64(###) ###-####`,\n [TuiCountryIsoCode.OM]: `+968##-###-###`,\n [TuiCountryIsoCode.PA]: `+507###-####`,\n [TuiCountryIsoCode.PE]: `+51(###) ###-###`,\n [TuiCountryIsoCode.PF]: `+689 ## ## ## ##`,\n [TuiCountryIsoCode.PG]: `+675(###) ##-###`,\n [TuiCountryIsoCode.PH]: `+63(###) ###-####`,\n [TuiCountryIsoCode.PK]: `+92(###) ###-####`,\n [TuiCountryIsoCode.PL]: `+48(###) ###-###`,\n [TuiCountryIsoCode.PT]: `+351##-###-####`,\n [TuiCountryIsoCode.PW]: `+680###-####`,\n [TuiCountryIsoCode.PY]: `+595(###) ###-###`,\n [TuiCountryIsoCode.QA]: `+974####-####`,\n [TuiCountryIsoCode.RE]: `+262 ## ## ## ## ##`,\n [TuiCountryIsoCode.RO]: `+40##-###-####`,\n [TuiCountryIsoCode.RS]: `+381##-###-####`,\n [TuiCountryIsoCode.RU]: `+7### ###-##-##`,\n [TuiCountryIsoCode.RW]: `+250(###) ###-###`,\n [TuiCountryIsoCode.SA]: `+966#-####-####`,\n [TuiCountryIsoCode.SB]: `+677###-####`,\n [TuiCountryIsoCode.SC]: `+248#-###-###`,\n [TuiCountryIsoCode.SD]: `+249##-###-####`,\n [TuiCountryIsoCode.SE]: `+46##-###-####`,\n [TuiCountryIsoCode.SG]: `+65####-####`,\n [TuiCountryIsoCode.SH]: `+290####`,\n [TuiCountryIsoCode.SI]: `+386##-###-###`,\n [TuiCountryIsoCode.SK]: `+421(###) ###-###`,\n [TuiCountryIsoCode.SL]: `+232##-######`,\n [TuiCountryIsoCode.SM]: `+378####-######`,\n [TuiCountryIsoCode.SN]: `+221##-###-####`,\n [TuiCountryIsoCode.SO]: `+252##-###-###`,\n [TuiCountryIsoCode.SR]: `+597###-####`,\n [TuiCountryIsoCode.ST]: `+239##-#####`,\n [TuiCountryIsoCode.SV]: `+503##-##-####`,\n [TuiCountryIsoCode.SX]: `+1(721) ###-####`,\n [TuiCountryIsoCode.SY]: `+963##-####-###`,\n [TuiCountryIsoCode.SZ]: `+268##-##-####`,\n [TuiCountryIsoCode.TC]: `+1(649) ###-####`,\n [TuiCountryIsoCode.TD]: `+235##-##-##-##`,\n [TuiCountryIsoCode.TG]: `+228##-###-###`,\n [TuiCountryIsoCode.TH]: `+66##-###-####`,\n [TuiCountryIsoCode.TJ]: `+992##-###-####`,\n [TuiCountryIsoCode.TL]: `+670###-#####`,\n [TuiCountryIsoCode.TM]: `+993#-###-####`,\n [TuiCountryIsoCode.TN]: `+216##-###-###`,\n [TuiCountryIsoCode.TO]: `+676#####`,\n [TuiCountryIsoCode.TR]: `+90(###) ###-####`,\n [TuiCountryIsoCode.TT]: `+1(868) ###-####`,\n [TuiCountryIsoCode.TW]: `+886#-####-####`,\n [TuiCountryIsoCode.TZ]: `+255##-###-####`,\n [TuiCountryIsoCode.UA]: `+380(##) ###-##-##`,\n [TuiCountryIsoCode.UG]: `+256(###) ###-###`,\n [TuiCountryIsoCode.US]: `+1(###) ###-####`,\n [TuiCountryIsoCode.UY]: `+598#-###-##-##`,\n [TuiCountryIsoCode.UZ]: `+998##-###-####`,\n [TuiCountryIsoCode.VC]: `+1(784) ###-####`,\n [TuiCountryIsoCode.VE]: `+58(###) ###-####`,\n [TuiCountryIsoCode.VG]: `+1(284)###-####`,\n [TuiCountryIsoCode.VN]: `+84(###) ####-###`,\n [TuiCountryIsoCode.VU]: `+678##-#####`,\n [TuiCountryIsoCode.WS]: `+685##-####`,\n [TuiCountryIsoCode.XK]: `+383##-###-###`,\n [TuiCountryIsoCode.YE]: `+967###-###-###`,\n [TuiCountryIsoCode.YT]: `+262 ## ## ## ## ##`,\n [TuiCountryIsoCode.ZA]: `+27##-###-####`,\n [TuiCountryIsoCode.ZM]: `+260##-###-####`,\n [TuiCountryIsoCode.ZW]: `+263#-######`,\n }),\n });\n","import {tuiGetClipboardDataText} from '@taiga-ui/cdk';\n\nexport function tuiExtractValueFromEvent(event: ClipboardEvent | DragEvent): string {\n return `dataTransfer` in event\n ? event.dataTransfer?.getData(`text/plain`) || ``\n : tuiGetClipboardDataText(event);\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n HostListener,\n Inject,\n Input,\n Optional,\n Output,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiControl,\n CHAR_PLUS,\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiMapper,\n tuiPure,\n} from '@taiga-ui/cdk';\nimport {\n TUI_MASK_SYMBOLS_REGEXP,\n TUI_NON_DIGITS_REGEXP,\n TuiFlagPipe,\n TuiPrimitiveTextfieldComponent,\n TuiSizeL,\n TuiSizeM,\n TuiSizeS,\n} from '@taiga-ui/core';\nimport {TuiCountryIsoCode} from '@taiga-ui/i18n';\nimport {TUI_ARROW} from '@taiga-ui/kit/components/arrow';\nimport {TuiInputPhoneComponent} from '@taiga-ui/kit/components/input-phone';\nimport {FIXED_DROPDOWN_CONTROLLER_PROVIDER} from '@taiga-ui/kit/providers';\nimport {TUI_COUNTRIES} from '@taiga-ui/kit/tokens';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\n\nimport {MASK_AFTER_CODE_REGEXP} from './const/mask-after-code-regexp';\nimport {\n TUI_INPUT_PHONE_INTERNATIONAL_OPTIONS,\n TuiInputPhoneInternationalOptions,\n} from './input-phone-international.options';\nimport {TUI_COUNTRIES_MASKS} from './tokens/countries-masks';\nimport {tuiExtractValueFromEvent} from './utils/extract-value-from-event';\n\n@Component({\n selector: 'tui-input-phone-international',\n templateUrl: './input-phone-international.template.html',\n styleUrls: ['./input-phone-international.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiInputPhoneInternationalComponent),\n tuiAsControl(TuiInputPhoneInternationalComponent),\n // TODO: for backward compatibility only. Drop in v4.0\n TuiFlagPipe,\n ],\n viewProviders: [FIXED_DROPDOWN_CONTROLLER_PROVIDER],\n})\nexport class TuiInputPhoneInternationalComponent\n extends AbstractTuiControl<string>\n implements TuiFocusableElementAccessor\n{\n @ViewChild(TuiInputPhoneComponent)\n private readonly inputPhoneComponent?: TuiInputPhoneComponent;\n\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly primitiveTextfield?: TuiPrimitiveTextfieldComponent;\n\n @Input('countryIsoCode')\n @tuiDefaultProp()\n set isoCode(code: TuiCountryIsoCode) {\n if (this.countryIsoCode === code) {\n return;\n }\n\n this.inputPhoneComponent?.writeValue(this.value);\n this.countryIsoCode = code;\n }\n\n @Input()\n countries = this.options.countries;\n\n @Output()\n readonly countryIsoCodeChange = new EventEmitter<TuiCountryIsoCode>();\n\n countryIsoCode = this.options.countryIsoCode;\n\n open = false;\n\n readonly arrow: PolymorpheusContent<\n TuiContextWithImplicit<TuiSizeL | TuiSizeM | TuiSizeS>\n > = TUI_ARROW;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_COUNTRIES)\n readonly countriesNames$: Observable<Record<TuiCountryIsoCode, string>>,\n @Inject(TUI_COUNTRIES_MASKS)\n readonly countriesMasks: Record<TuiCountryIsoCode, string>,\n @Inject(TUI_INPUT_PHONE_INTERNATIONAL_OPTIONS)\n private readonly options: TuiInputPhoneInternationalOptions,\n @Inject(TuiFlagPipe)\n private readonly flagPipe: TuiFlagPipe,\n ) {\n super(control, changeDetectorRef);\n }\n\n get nativeFocusableElement(): HTMLElement | null {\n return this.inputPhoneComponent && !this.computedDisabled\n ? this.inputPhoneComponent.nativeFocusableElement\n : null;\n }\n\n get focused(): boolean {\n return (\n (!!this.primitiveTextfield && this.primitiveTextfield.focused) ||\n (!!this.inputPhoneComponent && this.inputPhoneComponent.focused)\n );\n }\n\n get inputPhoneCountryCode(): string {\n return this.isoToCountryCode(this.countryIsoCode);\n }\n\n get phoneMaskAfterCountryCode(): string {\n const countryCode = this.isoToCountryCode(this.countryIsoCode);\n\n return this.calculateMaskAfterCountryCode(\n this.countriesMasks[this.countryIsoCode],\n countryCode,\n );\n }\n\n /**\n * @deprecated use `<img [src]=\"countryIsoCode | tuiFlagPipe\" />`\n * TODO drop in v4.0\n */\n get countryFlagPath(): string {\n return this.getFlagPath(this.countryIsoCode);\n }\n\n @HostListener('paste.capture.prevent.stop', ['$event'])\n @HostListener('drop.capture.prevent.stop', ['$event'])\n onPaste(event: ClipboardEvent | DragEvent): void {\n let value = tuiExtractValueFromEvent(event).replace(TUI_NON_DIGITS_REGEXP, '');\n const countryIsoCode = this.extractCountryCode(value);\n\n if (!countryIsoCode) {\n this.updateValue(\n `${this.inputPhoneCountryCode}${value}`\n .replace(TUI_MASK_SYMBOLS_REGEXP, '')\n .slice(0, this.getMaxAllowedLength(this.countryIsoCode)),\n );\n\n return;\n }\n\n if (countryIsoCode === TuiCountryIsoCode.RU) {\n value = value.replace(/^8/, '7');\n }\n\n this.updateCountryIsoCode(countryIsoCode);\n this.updateValue(`${CHAR_PLUS}${value}`);\n }\n\n readonly isoToCountryCodeMapper: TuiMapper<TuiCountryIsoCode, string> = item =>\n this.isoToCountryCode(item);\n\n /**\n * @deprecated use `<img [src]=\"countryIsoCode | tuiFlagPipe\" />`\n * TODO drop in v4.0\n */\n getFlagPath(code: TuiCountryIsoCode): string {\n return this.flagPipe.transform(code);\n }\n\n onItemClick(isoCode: TuiCountryIsoCode): void {\n this.open = false;\n this.updateCountryIsoCode(isoCode);\n // recalculates mask inside inputPhone to prevent isoCode conflict\n this.changeDetectorRef.detectChanges();\n\n const maxLength = this.getMaxAllowedLength(isoCode);\n\n if (this.value.length > maxLength) {\n this.updateValue(this.value.slice(0, maxLength));\n }\n\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.focus();\n }\n }\n\n override setDisabledState(): void {\n super.setDisabledState();\n this.close();\n }\n\n isoToCountryCode(isoCode: TuiCountryIsoCode): string {\n return this.countriesMasks[isoCode].replace(MASK_AFTER_CODE_REGEXP, '');\n }\n\n onModelChange(value: string): void {\n this.updateValue(value);\n }\n\n onActiveZone(active: boolean): void {\n this.updateFocused(active);\n }\n\n protected getFallbackValue(): string {\n return '';\n }\n\n @tuiPure\n private calculateMaskAfterCountryCode(mask: string, countryCode: string): string {\n return mask.replace(countryCode, '').trim();\n }\n\n private close(): void {\n this.open = false;\n }\n\n private getMaxAllowedLength(isoCode: TuiCountryIsoCode): number {\n return this.countriesMasks[isoCode].replace(/[()\\- ]/g, '').length;\n }\n\n private updateCountryIsoCode(code: TuiCountryIsoCode): void {\n this.countryIsoCode = code;\n this.countryIsoCodeChange.emit(code);\n }\n\n private extractCountryCode(value: string): TuiCountryIsoCode | undefined {\n return this.countries.find(countryIsoCode => {\n const ruCodeTest =\n countryIsoCode === TuiCountryIsoCode.RU &&\n /^[7 | 8]/.test(value) &&\n /^(?!880[1-9 ])/.test(value) &&\n value.length + 1 === this.getMaxAllowedLength(TuiCountryIsoCode.RU);\n\n return (\n ruCodeTest ||\n (value.startsWith(\n this.isoToCountryCode(countryIsoCode).replace(CHAR_PLUS, ''),\n ) &&\n value.length + 1 === this.getMaxAllowedLength(countryIsoCode))\n );\n });\n }\n}\n","<tui-hosted-dropdown\n *ngIf=\"countriesNames$ | async as countriesNames\"\n class=\"t-hosted-dropdown\"\n [content]=\"dropdown\"\n [canOpen]=\"!readOnly\"\n [(open)]=\"open\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <div tuiGroup>\n <tui-primitive-textfield\n tuiHintContent=\"\"\n tuiTextfieldPrefix=\"\"\n tuiTextfieldPostfix=\"\"\n class=\"t-country-select tui-group__auto-width-item\"\n [tuiTextfieldCustomContent]=\"countryValueContent\"\n [tuiTextfieldLabelOutside]=\"true\"\n [tuiTextfieldIcon]=\"icon\"\n [disabled]=\"disabled\"\n [focusable]=\"focusable\"\n [editable]=\"false\"\n [pseudoFocus]=\"open || null\"\n [readOnly]=\"readOnly\"\n ></tui-primitive-textfield>\n <tui-input-phone\n class=\"t-input-phone tui-group__auto-width-item\"\n [ngModel]=\"value\"\n [disabled]=\"disabled\"\n [focusable]=\"focusable\"\n [countryCode]=\"inputPhoneCountryCode\"\n [phoneMaskAfterCountryCode]=\"phoneMaskAfterCountryCode\"\n [readOnly]=\"readOnly\"\n [pseudoInvalid]=\"computedInvalid\"\n [pseudoFocus]=\"pseudoFocus\"\n [pseudoHover]=\"pseudoHover\"\n (ngModelChange)=\"onModelChange($event)\"\n >\n <ng-content></ng-content>\n <input\n tuiTextfield\n autocomplete=\"new-password\"\n />\n </tui-input-phone>\n </div>\n\n <ng-template #dropdown>\n <tui-data-list>\n <button\n *ngFor=\"let item of countries\"\n tuiOption\n (click)=\"onItemClick(item)\"\n >\n <img\n alt=\"\"\n class=\"t-country-item-flag\"\n [src]=\"item | tuiFlag\"\n />\n <span class=\"t-country-item-name\">\n {{ countriesNames[item] }}\n </span>\n <span class=\"t-country-item-code\">\n {{ item | tuiMapper : isoToCountryCodeMapper }}\n </span>\n </button>\n </tui-data-list>\n </ng-template>\n\n <ng-template #countryValueContent>\n <!-- eslint-disable @html-eslint/require-img-alt -->\n <img\n class=\"t-flag\"\n [alt]=\"countriesNames[countryIsoCode]\"\n [src]=\"countryIsoCode | tuiFlag\"\n />\n </ng-template>\n\n <ng-template #icon>\n <div\n tuiWrapper\n appearance=\"icon\"\n >\n <ng-container *polymorpheusOutlet=\"arrow\"></ng-container>\n </div>\n </ng-template>\n</tui-hosted-dropdown>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TuiActiveZoneModule, TuiLetModule, TuiMapperPipeModule} from '@taiga-ui/cdk';\nimport {\n TuiDataListModule,\n TuiFlagPipeModule,\n TuiGroupModule,\n TuiHintModule,\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiSvgModule,\n TuiTextfieldControllerModule,\n TuiWrapperModule,\n} from '@taiga-ui/core';\nimport {TuiArrowModule} from '@taiga-ui/kit/components/arrow';\nimport {TuiInputPhoneModule} from '@taiga-ui/kit/components/input-phone';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiInputPhoneInternationalComponent} from './input-phone-international.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n PolymorpheusModule,\n TuiSvgModule,\n TuiInputPhoneModule,\n TuiGroupModule,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldControllerModule,\n TuiHintModule,\n TuiHostedDropdownModule,\n TuiDataListModule,\n TuiArrowModule,\n TuiWrapperModule,\n TuiLetModule,\n TuiMapperPipeModule,\n TuiActiveZoneModule,\n TuiFlagPipeModule,\n ],\n declarations: [TuiInputPhoneInternationalComponent],\n exports: [TuiInputPhoneInternationalComponent],\n})\nexport class TuiInputPhoneInternationalModule {}\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-kit-components-input-phone-international.js","sources":["../../../projects/kit/components/input-phone-international/const/mask-after-code-regexp.ts","../../../projects/kit/components/input-phone-international/input-phone-international.options.ts","../../../projects/kit/components/input-phone-international/tokens/countries-masks.ts","../../../projects/kit/components/input-phone-international/utils/extract-value-from-event.ts","../../../projects/kit/components/input-phone-international/input-phone-international.component.ts","../../../projects/kit/components/input-phone-international/input-phone-international.template.html","../../../projects/kit/components/input-phone-international/input-phone-international.module.ts","../../../projects/kit/components/input-phone-international/taiga-ui-kit-components-input-phone-international.ts"],"sourcesContent":["export const MASK_AFTER_CODE_REGEXP = /\\([#]+\\)|[#\\- ]/g;\n","import {InjectionToken, ValueProvider} from '@angular/core';\nimport {TuiCountryIsoCode} from '@taiga-ui/i18n';\n\nexport interface TuiInputPhoneInternationalOptions {\n readonly countries: readonly TuiCountryIsoCode[];\n readonly countryIsoCode: TuiCountryIsoCode;\n}\n\nexport const TUI_INPUT_PHONE_INTERNATIONAL_DEFAULT_OPTIONS: TuiInputPhoneInternationalOptions =\n {\n countries: [],\n countryIsoCode: TuiCountryIsoCode.RU,\n };\n\n/**\n * Default parameters for input phone international component\n */\nexport const TUI_INPUT_PHONE_INTERNATIONAL_OPTIONS =\n new InjectionToken<TuiInputPhoneInternationalOptions>(\n `[TUI_INPUT_PHONE_INTERNATIONAL_OPTIONS]`,\n {\n factory: () => TUI_INPUT_PHONE_INTERNATIONAL_DEFAULT_OPTIONS,\n },\n );\n\nexport const tuiInputPhoneInternationalOptionsProvider: (\n options: Partial<TuiInputPhoneInternationalOptions>,\n) => ValueProvider = (options: Partial<TuiInputPhoneInternationalOptions>) => ({\n provide: TUI_INPUT_PHONE_INTERNATIONAL_OPTIONS,\n useValue: {...TUI_INPUT_PHONE_INTERNATIONAL_DEFAULT_OPTIONS, ...options},\n});\n","import {InjectionToken} from '@angular/core';\nimport {TuiCountryIsoCode} from '@taiga-ui/i18n';\n\nexport const TUI_COUNTRIES_MASKS: InjectionToken<Record<TuiCountryIsoCode, string>> =\n new InjectionToken<Record<TuiCountryIsoCode, string>>(`[TUI_COUNTRIES_MASKS]`, {\n factory: () => ({\n [TuiCountryIsoCode.AD]: `+376###-###`,\n [TuiCountryIsoCode.AE]: `+971-##-###-####`,\n [TuiCountryIsoCode.AF]: `+93##-###-####`,\n [TuiCountryIsoCode.AG]: `+1(268) ###-####`,\n [TuiCountryIsoCode.AI]: `+1(264) ###-####`,\n [TuiCountryIsoCode.AL]: `+355(###) ###-###`,\n [TuiCountryIsoCode.AM]: `+374##-###-###`,\n [TuiCountryIsoCode.AO]: `+244(###) ###-###`,\n [TuiCountryIsoCode.AR]: `+54(###) ###-####`,\n [TuiCountryIsoCode.AT]: `+43(###) ###-####`,\n [TuiCountryIsoCode.AU]: `+61#-####-####`,\n [TuiCountryIsoCode.AW]: `+297###-####`,\n [TuiCountryIsoCode.AZ]: `+994##-###-##-##`,\n [TuiCountryIsoCode.BA]: `+387 ###-####-##`,\n [TuiCountryIsoCode.BB]: `+1(246) ###-####`,\n [TuiCountryIsoCode.BD]: `+880##-###-###`,\n [TuiCountryIsoCode.BE]: `+32(###) ###-###`,\n [TuiCountryIsoCode.BF]: `+226##-##-####`,\n [TuiCountryIsoCode.BG]: `+359(###) ###-###`,\n [TuiCountryIsoCode.BH]: `+973####-####`,\n [TuiCountryIsoCode.BI]: `+257##-##-####`,\n [TuiCountryIsoCode.BJ]: `+229##-##-####`,\n [TuiCountryIsoCode.BL]: `+590 ## ## ## ## ##`,\n [TuiCountryIsoCode.BM]: `+1(441) ###-####`,\n [TuiCountryIsoCode.BN]: `+673###-####`,\n [TuiCountryIsoCode.BO]: `+591#-###-####`,\n [TuiCountryIsoCode.BQ]: `+599-###-####`,\n [TuiCountryIsoCode.BR]: `+55(##) ####-####`,\n [TuiCountryIsoCode.BS]: `+1(242) ###-####`,\n [TuiCountryIsoCode.BT]: `+975#-###-###`,\n [TuiCountryIsoCode.BW]: `+267##-###-###`,\n [TuiCountryIsoCode.BY]: `+375(##) ###-##-##`,\n [TuiCountryIsoCode.BZ]: `+501###-####`,\n [TuiCountryIsoCode.CA]: `+1(###) ###-####`,\n [TuiCountryIsoCode.CD]: `+243(###) ###-###`,\n [TuiCountryIsoCode.CF]: `+236-##-##-####`,\n [TuiCountryIsoCode.CG]: `+242##-###-####`,\n [TuiCountryIsoCode.CH]: `+41##-###-####`,\n [TuiCountryIsoCode.CI]: `+225##-###-###`,\n [TuiCountryIsoCode.CL]: `+56#-####-####`,\n [TuiCountryIsoCode.CM]: `+237####-####`,\n [TuiCountryIsoCode.CN]: `+86(###) ####-####`,\n [TuiCountryIsoCode.CO]: `+57(###) ###-####`,\n [TuiCountryIsoCode.CR]: `+506####-####`,\n [TuiCountryIsoCode.CU]: `+53#-###-####`,\n [TuiCountryIsoCode.CV]: `+238(###) ##-##`,\n [TuiCountryIsoCode.CW]: `+5999-###-####`,\n [TuiCountryIsoCode.CY]: `+357##-###-###`,\n [TuiCountryIsoCode.CZ]: `+420(###) ###-###`,\n [TuiCountryIsoCode.DE]: `+49(###) ###-###-##`,\n [TuiCountryIsoCode.DJ]: `+253##-##-##-##`,\n [TuiCountryIsoCode.DK]: `+45##-##-##-##`,\n [TuiCountryIsoCode.DM]: `+1(767) ###-####`,\n [TuiCountryIsoCode.DO]: `+1(###) ###-####`,\n [TuiCountryIsoCode.DZ]: `+213##-###-####`,\n [TuiCountryIsoCode.EC]: `+593##-###-####`,\n [TuiCountryIsoCode.EE]: `+372####-####`,\n [TuiCountryIsoCode.EG]: `+20(###) ###-####`,\n [TuiCountryIsoCode.ER]: `+291#-###-###`,\n [TuiCountryIsoCode.ES]: `+34(###) ###-###`,\n [TuiCountryIsoCode.ET]: `+251##-###-####`,\n [TuiCountryIsoCode.FI]: `+358(###) ###-##-##`,\n [TuiCountryIsoCode.FJ]: `+679##-#####`,\n [TuiCountryIsoCode.FK]: `+500#####`,\n [TuiCountryIsoCode.FM]: `+691###-####`,\n [TuiCountryIsoCode.FR]: `+33 ## ## ## ## ##`,\n [TuiCountryIsoCode.GA]: `+241#-##-##-##`,\n [TuiCountryIsoCode.GB]: `+44##-####-####`,\n [TuiCountryIsoCode.GD]: `+1(473) ###-####`,\n [TuiCountryIsoCode.GE]: `+995(###) ###-###`,\n [TuiCountryIsoCode.GF]: `+594 ## ## ## ## ##`,\n [TuiCountryIsoCode.GH]: `+233(###) ###-###`,\n [TuiCountryIsoCode.GI]: `+350###-#####`,\n [TuiCountryIsoCode.GL]: `+299##-##-##`,\n [TuiCountryIsoCode.GM]: `+220(###) ##-##`,\n [TuiCountryIsoCode.GN]: `+224##-###-###`,\n [TuiCountryIsoCode.GP]: `+590 ## ## ## ## ##`,\n [TuiCountryIsoCode.GQ]: `+240##-###-####`,\n [TuiCountryIsoCode.GR]: `+30(###) ###-####`,\n [TuiCountryIsoCode.GT]: `+502#-###-####`,\n [TuiCountryIsoCode.GW]: `+245#-######`,\n [TuiCountryIsoCode.GY]: `+592###-####`,\n [TuiCountryIsoCode.HK]: `+852####-####`,\n [TuiCountryIsoCode.HN]: `+504####-####`,\n [TuiCountryIsoCode.HR]: `+385##-###-####`,\n [TuiCountryIsoCode.HT]: `+509##-##-####`,\n [TuiCountryIsoCode.HU]: `+36(###) ###-###`,\n [TuiCountryIsoCode.ID]: `+62(###) ###-##-###`,\n [TuiCountryIsoCode.IE]: `+353(###) ###-###`,\n [TuiCountryIsoCode.IL]: `+972##-###-####`,\n [TuiCountryIsoCode.IN]: `+91(####) ###-###`,\n [TuiCountryIsoCode.IQ]: `+964(###) ###-####`,\n [TuiCountryIsoCode.IR]: `+98(###) ###-####`,\n [TuiCountryIsoCode.IS]: `+354###-####`,\n [TuiCountryIsoCode.IT]: `+39(###) ####-###`,\n [TuiCountryIsoCode.JM]: `+1(876) ###-####`,\n [TuiCountryIsoCode.JO]: `+962#-####-####`,\n [TuiCountryIsoCode.JP]: `+81-##-####-####`,\n [TuiCountryIsoCode.KE]: `+254###-######`,\n [TuiCountryIsoCode.KG]: `+996(###) ###-###`,\n [TuiCountryIsoCode.KH]: `+855##-###-###`,\n [TuiCountryIsoCode.KM]: `+269##-#####`,\n [TuiCountryIsoCode.KN]: `+1(869) ###-####`,\n [TuiCountryIsoCode.KP]: `+850####-#############`,\n [TuiCountryIsoCode.KR]: `+82##-###-####`,\n [TuiCountryIsoCode.KW]: `+965####-####`,\n [TuiCountryIsoCode.KY]: `+1(345) ###-####`,\n [TuiCountryIsoCode.KZ]: `+7(###) ###-##-##`,\n [TuiCountryIsoCode.LA]: `+856##-##-###-###`,\n [TuiCountryIsoCode.LB]: `+961##-###-###`,\n [TuiCountryIsoCode.LC]: `+1(758) ###-####`,\n [TuiCountryIsoCode.LI]: `+423(###) ###-####`,\n [TuiCountryIsoCode.LK]: `+94##-###-####`,\n [TuiCountryIsoCode.LR]: `+231##-###-###`,\n [TuiCountryIsoCode.LS]: `+266#-###-####`,\n [TuiCountryIsoCode.LT]: `+370(###) ##-###`,\n [TuiCountryIsoCode.LU]: `+352(###) ###-###`,\n [TuiCountryIsoCode.LV]: `+371##-###-###`,\n [TuiCountryIsoCode.LY]: `+218##-###-####`,\n [TuiCountryIsoCode.MA]: `+212##-####-###`,\n [TuiCountryIsoCode.MC]: `+377###-###-###`,\n [TuiCountryIsoCode.MD]: `+373####-####`,\n [TuiCountryIsoCode.ME]: `+382##-###-###`,\n [TuiCountryIsoCode.MF]: `+590 ## ## ## ## ##`,\n [TuiCountryIsoCode.MG]: `+261##-##-#####`,\n [TuiCountryIsoCode.MK]: `+389##-###-###`,\n [TuiCountryIsoCode.ML]: `+223##-##-####`,\n [TuiCountryIsoCode.MM]: `+95##-###-###`,\n [TuiCountryIsoCode.MN]: `+976##-##-####`,\n [TuiCountryIsoCode.MO]: `+853####-####`,\n [TuiCountryIsoCode.MQ]: `+596 ## ## ## ## ##`,\n [TuiCountryIsoCode.MR]: `+222##-##-####`,\n [TuiCountryIsoCode.MS]: `+1(664) ###-####`,\n [TuiCountryIsoCode.MT]: `+356####-####`,\n [TuiCountryIsoCode.MU]: `+230####-####`,\n [TuiCountryIsoCode.MV]: `+960###-####`,\n [TuiCountryIsoCode.MW]: `+265#-####-####`,\n [TuiCountryIsoCode.MX]: `+52(###) ###-####`,\n [TuiCountryIsoCode.MY]: `+60(###) ###-###`,\n [TuiCountryIsoCode.MZ]: `+258##-###-###`,\n [TuiCountryIsoCode.NA]: `+264##-###-####`,\n [TuiCountryIsoCode.NC]: `+687 ### ###`,\n [TuiCountryIsoCode.NE]: `+227##-##-####`,\n [TuiCountryIsoCode.NG]: `+234(###) ###-####`,\n [TuiCountryIsoCode.NI]: `+505####-####`,\n [TuiCountryIsoCode.NL]: `+31##-###-####`,\n [TuiCountryIsoCode.NO]: `+47(###) ##-###`,\n [TuiCountryIsoCode.NP]: `+977##-###-###`,\n [TuiCountryIsoCode.NZ]: `+64(###) ###-####`,\n [TuiCountryIsoCode.OM]: `+968##-###-###`,\n [TuiCountryIsoCode.PA]: `+507###-####`,\n [TuiCountryIsoCode.PE]: `+51(###) ###-###`,\n [TuiCountryIsoCode.PF]: `+689 ## ## ## ##`,\n [TuiCountryIsoCode.PG]: `+675(###) ##-###`,\n [TuiCountryIsoCode.PH]: `+63(###) ###-####`,\n [TuiCountryIsoCode.PK]: `+92(###) ###-####`,\n [TuiCountryIsoCode.PL]: `+48(###) ###-###`,\n [TuiCountryIsoCode.PT]: `+351##-###-####`,\n [TuiCountryIsoCode.PW]: `+680###-####`,\n [TuiCountryIsoCode.PY]: `+595(###) ###-###`,\n [TuiCountryIsoCode.QA]: `+974####-####`,\n [TuiCountryIsoCode.RE]: `+262 ## ## ## ## ##`,\n [TuiCountryIsoCode.RO]: `+40##-###-####`,\n [TuiCountryIsoCode.RS]: `+381##-###-####`,\n [TuiCountryIsoCode.RU]: `+7### ###-##-##`,\n [TuiCountryIsoCode.RW]: `+250(###) ###-###`,\n [TuiCountryIsoCode.SA]: `+966#-####-####`,\n [TuiCountryIsoCode.SB]: `+677###-####`,\n [TuiCountryIsoCode.SC]: `+248#-###-###`,\n [TuiCountryIsoCode.SD]: `+249##-###-####`,\n [TuiCountryIsoCode.SE]: `+46##-###-####`,\n [TuiCountryIsoCode.SG]: `+65####-####`,\n [TuiCountryIsoCode.SH]: `+290####`,\n [TuiCountryIsoCode.SI]: `+386##-###-###`,\n [TuiCountryIsoCode.SK]: `+421(###) ###-###`,\n [TuiCountryIsoCode.SL]: `+232##-######`,\n [TuiCountryIsoCode.SM]: `+378####-######`,\n [TuiCountryIsoCode.SN]: `+221##-###-####`,\n [TuiCountryIsoCode.SO]: `+252##-###-###`,\n [TuiCountryIsoCode.SR]: `+597###-####`,\n [TuiCountryIsoCode.ST]: `+239##-#####`,\n [TuiCountryIsoCode.SV]: `+503##-##-####`,\n [TuiCountryIsoCode.SX]: `+1(721) ###-####`,\n [TuiCountryIsoCode.SY]: `+963##-####-###`,\n [TuiCountryIsoCode.SZ]: `+268##-##-####`,\n [TuiCountryIsoCode.TC]: `+1(649) ###-####`,\n [TuiCountryIsoCode.TD]: `+235##-##-##-##`,\n [TuiCountryIsoCode.TG]: `+228##-###-###`,\n [TuiCountryIsoCode.TH]: `+66##-###-####`,\n [TuiCountryIsoCode.TJ]: `+992##-###-####`,\n [TuiCountryIsoCode.TL]: `+670###-#####`,\n [TuiCountryIsoCode.TM]: `+993#-###-####`,\n [TuiCountryIsoCode.TN]: `+216##-###-###`,\n [TuiCountryIsoCode.TO]: `+676#####`,\n [TuiCountryIsoCode.TR]: `+90(###) ###-####`,\n [TuiCountryIsoCode.TT]: `+1(868) ###-####`,\n [TuiCountryIsoCode.TW]: `+886#-####-####`,\n [TuiCountryIsoCode.TZ]: `+255##-###-####`,\n [TuiCountryIsoCode.UA]: `+380(##) ###-##-##`,\n [TuiCountryIsoCode.UG]: `+256(###) ###-###`,\n [TuiCountryIsoCode.US]: `+1(###) ###-####`,\n [TuiCountryIsoCode.UY]: `+598#-###-##-##`,\n [TuiCountryIsoCode.UZ]: `+998##-###-####`,\n [TuiCountryIsoCode.VC]: `+1(784) ###-####`,\n [TuiCountryIsoCode.VE]: `+58(###) ###-####`,\n [TuiCountryIsoCode.VG]: `+1(284)###-####`,\n [TuiCountryIsoCode.VN]: `+84(###) ####-###`,\n [TuiCountryIsoCode.VU]: `+678##-#####`,\n [TuiCountryIsoCode.WS]: `+685##-####`,\n [TuiCountryIsoCode.XK]: `+383##-###-###`,\n [TuiCountryIsoCode.YE]: `+967###-###-###`,\n [TuiCountryIsoCode.YT]: `+262 ## ## ## ## ##`,\n [TuiCountryIsoCode.ZA]: `+27##-###-####`,\n [TuiCountryIsoCode.ZM]: `+260##-###-####`,\n [TuiCountryIsoCode.ZW]: `+263#-######`,\n }),\n });\n","import {tuiGetClipboardDataText} from '@taiga-ui/cdk';\n\nexport function tuiExtractValueFromEvent(event: ClipboardEvent | DragEvent): string {\n return `dataTransfer` in event\n ? event.dataTransfer?.getData(`text/plain`) || ``\n : tuiGetClipboardDataText(event);\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n HostListener,\n Inject,\n Input,\n Optional,\n Output,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiControl,\n CHAR_PLUS,\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiMapper,\n tuiPure,\n} from '@taiga-ui/cdk';\nimport {\n TUI_MASK_SYMBOLS_REGEXP,\n TUI_NON_DIGITS_REGEXP,\n TuiFlagPipe,\n TuiPrimitiveTextfieldComponent,\n TuiSizeL,\n TuiSizeM,\n TuiSizeS,\n} from '@taiga-ui/core';\nimport {TuiCountryIsoCode} from '@taiga-ui/i18n';\nimport {TUI_ARROW} from '@taiga-ui/kit/components/arrow';\nimport {TuiInputPhoneComponent} from '@taiga-ui/kit/components/input-phone';\nimport {FIXED_DROPDOWN_CONTROLLER_PROVIDER} from '@taiga-ui/kit/providers';\nimport {TUI_COUNTRIES} from '@taiga-ui/kit/tokens';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {Observable} from 'rxjs';\n\nimport {MASK_AFTER_CODE_REGEXP} from './const/mask-after-code-regexp';\nimport {\n TUI_INPUT_PHONE_INTERNATIONAL_OPTIONS,\n TuiInputPhoneInternationalOptions,\n} from './input-phone-international.options';\nimport {TUI_COUNTRIES_MASKS} from './tokens/countries-masks';\nimport {tuiExtractValueFromEvent} from './utils/extract-value-from-event';\n\n@Component({\n selector: 'tui-input-phone-international',\n templateUrl: './input-phone-international.template.html',\n styleUrls: ['./input-phone-international.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiInputPhoneInternationalComponent),\n tuiAsControl(TuiInputPhoneInternationalComponent),\n // TODO: for backward compatibility only. Drop in v4.0\n TuiFlagPipe,\n ],\n viewProviders: [FIXED_DROPDOWN_CONTROLLER_PROVIDER],\n})\nexport class TuiInputPhoneInternationalComponent\n extends AbstractTuiControl<string>\n implements TuiFocusableElementAccessor\n{\n @ViewChild(TuiInputPhoneComponent)\n private readonly inputPhoneComponent?: TuiInputPhoneComponent;\n\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly primitiveTextfield?: TuiPrimitiveTextfieldComponent;\n\n @Input('countryIsoCode')\n @tuiDefaultProp()\n set isoCode(code: TuiCountryIsoCode) {\n if (this.countryIsoCode === code) {\n return;\n }\n\n this.inputPhoneComponent?.writeValue(this.value);\n this.countryIsoCode = code;\n }\n\n @Input()\n countries = this.options.countries;\n\n @Output()\n readonly countryIsoCodeChange = new EventEmitter<TuiCountryIsoCode>();\n\n countryIsoCode = this.options.countryIsoCode;\n\n open = false;\n\n readonly arrow: PolymorpheusContent<\n TuiContextWithImplicit<TuiSizeL | TuiSizeM | TuiSizeS>\n > = TUI_ARROW;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_COUNTRIES)\n readonly countriesNames$: Observable<Record<TuiCountryIsoCode, string>>,\n @Inject(TUI_COUNTRIES_MASKS)\n readonly countriesMasks: Record<TuiCountryIsoCode, string>,\n @Inject(TUI_INPUT_PHONE_INTERNATIONAL_OPTIONS)\n private readonly options: TuiInputPhoneInternationalOptions,\n @Inject(TuiFlagPipe)\n private readonly flagPipe: TuiFlagPipe,\n ) {\n super(control, changeDetectorRef);\n }\n\n get nativeFocusableElement(): HTMLElement | null {\n return this.inputPhoneComponent && !this.computedDisabled\n ? this.inputPhoneComponent.nativeFocusableElement\n : null;\n }\n\n get focused(): boolean {\n return (\n (!!this.primitiveTextfield && this.primitiveTextfield.focused) ||\n (!!this.inputPhoneComponent && this.inputPhoneComponent.focused)\n );\n }\n\n get inputPhoneCountryCode(): string {\n return this.isoToCountryCode(this.countryIsoCode);\n }\n\n get phoneMaskAfterCountryCode(): string {\n const countryCode = this.isoToCountryCode(this.countryIsoCode);\n\n return this.calculateMaskAfterCountryCode(\n this.countriesMasks[this.countryIsoCode],\n countryCode,\n );\n }\n\n /**\n * @deprecated use `<img [src]=\"countryIsoCode | tuiFlagPipe\" />`\n * TODO drop in v4.0\n */\n get countryFlagPath(): string {\n return this.getFlagPath(this.countryIsoCode);\n }\n\n @HostListener('paste.capture.prevent.stop', ['$event'])\n @HostListener('drop.capture.prevent.stop', ['$event'])\n onPaste(event: ClipboardEvent | DragEvent): void {\n let value = tuiExtractValueFromEvent(event).replace(TUI_NON_DIGITS_REGEXP, '');\n const countryIsoCode = this.extractCountryCode(value);\n\n if (!countryIsoCode) {\n this.updateValue(\n `${this.inputPhoneCountryCode}${value}`\n .replace(TUI_MASK_SYMBOLS_REGEXP, '')\n .slice(0, this.getMaxAllowedLength(this.countryIsoCode)),\n );\n\n return;\n }\n\n if (countryIsoCode === TuiCountryIsoCode.RU) {\n value = value.replace(/^8/, '7');\n }\n\n this.updateCountryIsoCode(countryIsoCode);\n this.updateValue(`${CHAR_PLUS}${value}`);\n }\n\n readonly isoToCountryCodeMapper: TuiMapper<TuiCountryIsoCode, string> = item =>\n this.isoToCountryCode(item);\n\n /**\n * @deprecated use `<img [src]=\"countryIsoCode | tuiFlagPipe\" />`\n * TODO drop in v4.0\n */\n getFlagPath(code: TuiCountryIsoCode): string {\n return this.flagPipe.transform(code);\n }\n\n onItemClick(isoCode: TuiCountryIsoCode): void {\n this.open = false;\n this.updateCountryIsoCode(isoCode);\n // recalculates mask inside inputPhone to prevent isoCode conflict\n this.changeDetectorRef.detectChanges();\n\n const maxLength = this.getMaxAllowedLength(isoCode);\n\n if (this.value.length > maxLength) {\n this.updateValue(this.value.slice(0, maxLength));\n }\n\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.focus();\n }\n }\n\n override setDisabledState(): void {\n super.setDisabledState();\n this.close();\n }\n\n isoToCountryCode(isoCode: TuiCountryIsoCode): string {\n return this.countriesMasks[isoCode].replace(MASK_AFTER_CODE_REGEXP, '');\n }\n\n onModelChange(value: string): void {\n this.updateValue(value);\n }\n\n onActiveZone(active: boolean): void {\n this.updateFocused(active);\n }\n\n protected getFallbackValue(): string {\n return '';\n }\n\n @tuiPure\n private calculateMaskAfterCountryCode(mask: string, countryCode: string): string {\n return mask.replace(countryCode, '').trim();\n }\n\n private close(): void {\n this.open = false;\n }\n\n private getMaxAllowedLength(isoCode: TuiCountryIsoCode): number {\n return this.countriesMasks[isoCode].replace(/[()\\- ]/g, '').length;\n }\n\n private updateCountryIsoCode(code: TuiCountryIsoCode): void {\n this.countryIsoCode = code;\n this.countryIsoCodeChange.emit(code);\n }\n\n private extractCountryCode(value: string): TuiCountryIsoCode | undefined {\n return this.countries.find(countryIsoCode => {\n const ruCodeTest =\n countryIsoCode === TuiCountryIsoCode.RU &&\n /^[7 | 8]/.test(value) &&\n /^(?!880[1-9 ])/.test(value) &&\n value.length + 1 === this.getMaxAllowedLength(TuiCountryIsoCode.RU);\n\n return (\n ruCodeTest ||\n (value.startsWith(\n this.isoToCountryCode(countryIsoCode).replace(CHAR_PLUS, ''),\n ) &&\n value.length + 1 === this.getMaxAllowedLength(countryIsoCode))\n );\n });\n }\n}\n","<tui-hosted-dropdown\n *ngIf=\"countriesNames$ | async as countriesNames\"\n class=\"t-hosted-dropdown\"\n [content]=\"dropdown\"\n [canOpen]=\"!readOnly\"\n [(open)]=\"open\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <div tuiGroup>\n <tui-primitive-textfield\n tuiHintContent=\"\"\n tuiTextfieldPrefix=\"\"\n tuiTextfieldPostfix=\"\"\n class=\"t-country-select tui-group__auto-width-item\"\n [tuiTextfieldCustomContent]=\"countryValueContent\"\n [tuiTextfieldLabelOutside]=\"true\"\n [tuiTextfieldIcon]=\"icon\"\n [disabled]=\"disabled\"\n [focusable]=\"focusable\"\n [editable]=\"false\"\n [pseudoFocus]=\"open || null\"\n [readOnly]=\"readOnly\"\n ></tui-primitive-textfield>\n <tui-input-phone\n class=\"t-input-phone tui-group__auto-width-item\"\n [ngModel]=\"value\"\n [disabled]=\"disabled\"\n [focusable]=\"focusable\"\n [countryCode]=\"inputPhoneCountryCode\"\n [phoneMaskAfterCountryCode]=\"phoneMaskAfterCountryCode\"\n [readOnly]=\"readOnly\"\n [pseudoInvalid]=\"computedInvalid\"\n [pseudoFocus]=\"pseudoFocus\"\n [pseudoHover]=\"pseudoHover\"\n (ngModelChange)=\"onModelChange($event)\"\n >\n <ng-content></ng-content>\n <input\n tuiTextfield\n autocomplete=\"new-password\"\n />\n </tui-input-phone>\n </div>\n\n <ng-template #dropdown>\n <tui-data-list>\n <button\n *ngFor=\"let item of countries\"\n tuiOption\n (click)=\"onItemClick(item)\"\n >\n <img\n alt=\"\"\n class=\"t-country-item-flag\"\n [src]=\"item | tuiFlag\"\n />\n <span class=\"t-country-item-name\">\n {{ countriesNames[item] }}\n </span>\n <span class=\"t-country-item-code\">\n {{ item | tuiMapper : isoToCountryCodeMapper }}\n </span>\n </button>\n </tui-data-list>\n </ng-template>\n\n <ng-template #countryValueContent>\n <!-- eslint-disable @html-eslint/require-img-alt -->\n <img\n class=\"t-flag\"\n [alt]=\"countriesNames[countryIsoCode]\"\n [src]=\"countryIsoCode | tuiFlag\"\n />\n </ng-template>\n\n <ng-template #icon>\n <div\n tuiWrapper\n appearance=\"icon\"\n >\n <ng-container *polymorpheusOutlet=\"arrow\"></ng-container>\n </div>\n </ng-template>\n</tui-hosted-dropdown>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {FormsModule} from '@angular/forms';\nimport {TuiActiveZoneModule, TuiLetModule, TuiMapperPipeModule} from '@taiga-ui/cdk';\nimport {\n TuiDataListModule,\n TuiFlagPipeModule,\n TuiGroupModule,\n TuiHintModule,\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiSvgModule,\n TuiTextfieldControllerModule,\n TuiWrapperModule,\n} from '@taiga-ui/core';\nimport {TuiArrowModule} from '@taiga-ui/kit/components/arrow';\nimport {TuiInputPhoneModule} from '@taiga-ui/kit/components/input-phone';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiInputPhoneInternationalComponent} from './input-phone-international.component';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n PolymorpheusModule,\n TuiSvgModule,\n TuiInputPhoneModule,\n TuiGroupModule,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldControllerModule,\n TuiHintModule,\n TuiHostedDropdownModule,\n TuiDataListModule,\n TuiArrowModule,\n TuiWrapperModule,\n TuiLetModule,\n TuiMapperPipeModule,\n TuiActiveZoneModule,\n TuiFlagPipeModule,\n ],\n declarations: [TuiInputPhoneInternationalComponent],\n exports: [TuiInputPhoneInternationalComponent],\n})\nexport class TuiInputPhoneInternationalModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -56,6 +56,9 @@ class TuiInputTimeComponent extends AbstractTuiNullableControl {
56
56
  get focused() {
57
57
  return tuiIsNativeFocused(this.nativeFocusableElement);
58
58
  }
59
+ get canOpen() {
60
+ return this.interactive && !!this.filtered.length;
61
+ }
59
62
  get filtered() {
60
63
  return this.filter(this.items, this.mode, this.computedSearch);
61
64
  }
@@ -72,7 +75,7 @@ class TuiInputTimeComponent extends AbstractTuiNullableControl {
72
75
  if (this.pseudoFocus === false) {
73
76
  return false;
74
77
  }
75
- if (this.open || this.computedFocused) {
78
+ if ((this.open && this.canOpen) || this.computedFocused) {
76
79
  return true;
77
80
  }
78
81
  return null;
@@ -217,7 +220,7 @@ TuiInputTimeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0",
217
220
  tuiAsControl(TuiInputTimeComponent),
218
221
  tuiAsDataListHost(TuiInputTimeComponent),
219
222
  tuiAsOptionContent(TUI_SELECT_OPTION),
220
- ], viewQueries: [{ propertyName: "textfield", first: true, predicate: TuiPrimitiveTextfieldComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<tui-hosted-dropdown\n class=\"t-wrapper\"\n [canOpen]=\"interactive && !!filtered.length\"\n [content]=\"dropdownContent\"\n [open]=\"interactive && open && !!filtered.length\"\n (openChange)=\"onOpen($event)\"\n (focusedChange)=\"onFocused($event)\"\n>\n <tui-primitive-textfield\n tuiValueAccessor\n class=\"t-textfield\"\n [tuiTextfieldFiller]=\"(getFiller$(mode) | async) || ''\"\n [nativeId]=\"nativeId\"\n [pseudoFocus]=\"innerPseudoFocused\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoActive]=\"pseudoActive\"\n [invalid]=\"computedInvalid\"\n [focusable]=\"focusable\"\n [disabled]=\"disabled\"\n [readOnly]=\"readOnly\"\n [textMask]=\"textMaskOptions\"\n [tuiTextfieldIcon]=\"icon\"\n [value]=\"computedValue\"\n [postfix]=\"postfix\"\n (valueChange)=\"onValueChange($event)\"\n (keydown.arrowUp)=\"onArrowUp($event)\"\n (keydown.arrowDown)=\"onArrowDown($event)\"\n >\n <ng-content></ng-content>\n <input\n tuiTextfield\n inputmode=\"numeric\"\n />\n </tui-primitive-textfield>\n</tui-hosted-dropdown>\n<ng-template #dropdownContent>\n <tui-data-list\n automation-id=\"tui-input-time__dropdown\"\n [size]=\"itemSize\"\n >\n <button\n *ngFor=\"let item of filtered\"\n tuiOption\n automation-id=\"tui-input-time__item\"\n [disabled]=\"disabledItemHandler(item)\"\n [value]=\"item\"\n >\n {{ item }}\n </button>\n </tui-data-list>\n</ng-template>\n", styles: [":host{display:block;border-radius:var(--tui-radius-m);text-align:left}:host._disabled{pointer-events:none}.t-wrapper{display:block;border-radius:inherit}.t-textfield{border-radius:inherit;text-align:inherit}\n"], components: [{ type: i1.TuiHostedDropdownComponent, selector: "tui-hosted-dropdown", inputs: ["content", "sided", "canOpen", "open"], outputs: ["openChange", "focusedChange"] }, { type: i1.TuiPrimitiveTextfieldComponent, selector: "tui-primitive-textfield", inputs: ["editable", "filler", "iconCleaner", "readOnly", "invalid", "disabled", "prefix", "postfix", "value"], outputs: ["valueChange"] }, { type: i1.TuiTextfieldComponent, selector: "input[tuiTextfield], textarea[tuiTextfield]" }, { type: i1.TuiDataListComponent, selector: "tui-data-list", inputs: ["role", "emptyContent", "size"] }, { type: i1.TuiOptionComponent, selector: "button[tuiOption], a[tuiOption]", inputs: ["size", "role", "disabled", "value"] }], directives: [{ type: i1.TuiPrimitiveTextfieldDirective, selector: "tui-primitive-textfield" }, { type: i2.TuiValueAccessorDirective, selector: "[tuiValueAccessor]" }, { type: i1.TuiTextfieldFillerDirective, selector: "[tuiTextfieldFiller]", inputs: ["tuiTextfieldFiller"] }, { type: i2.MaskedInputDirective, selector: "[textMask]", inputs: ["textMask"], exportAs: ["textMask"] }, { type: i1.TuiTextfieldIconDirective, selector: "[tuiTextfieldIcon]", inputs: ["tuiTextfieldIcon"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i3.AsyncPipe }, viewProviders: [FIXED_DROPDOWN_CONTROLLER_PROVIDER], changeDetection: i0.ChangeDetectionStrategy.OnPush });
223
+ ], viewQueries: [{ propertyName: "textfield", first: true, predicate: TuiPrimitiveTextfieldComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<tui-hosted-dropdown\n class=\"t-wrapper\"\n [canOpen]=\"canOpen\"\n [content]=\"dropdownContent\"\n [open]=\"canOpen && open\"\n (openChange)=\"onOpen($event)\"\n (focusedChange)=\"onFocused($event)\"\n>\n <tui-primitive-textfield\n tuiValueAccessor\n class=\"t-textfield\"\n [tuiTextfieldFiller]=\"(getFiller$(mode) | async) || ''\"\n [nativeId]=\"nativeId\"\n [pseudoFocus]=\"innerPseudoFocused\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoActive]=\"pseudoActive\"\n [invalid]=\"computedInvalid\"\n [focusable]=\"focusable\"\n [disabled]=\"disabled\"\n [readOnly]=\"readOnly\"\n [textMask]=\"textMaskOptions\"\n [tuiTextfieldIcon]=\"icon\"\n [value]=\"computedValue\"\n [postfix]=\"postfix\"\n (valueChange)=\"onValueChange($event)\"\n (keydown.arrowUp)=\"onArrowUp($event)\"\n (keydown.arrowDown)=\"onArrowDown($event)\"\n >\n <ng-content></ng-content>\n <input\n tuiTextfield\n inputmode=\"numeric\"\n />\n </tui-primitive-textfield>\n</tui-hosted-dropdown>\n<ng-template #dropdownContent>\n <tui-data-list\n automation-id=\"tui-input-time__dropdown\"\n [size]=\"itemSize\"\n >\n <button\n *ngFor=\"let item of filtered\"\n tuiOption\n automation-id=\"tui-input-time__item\"\n [disabled]=\"disabledItemHandler(item)\"\n [value]=\"item\"\n >\n {{ item }}\n </button>\n </tui-data-list>\n</ng-template>\n", styles: [":host{display:block;border-radius:var(--tui-radius-m);text-align:left}:host._disabled{pointer-events:none}.t-wrapper{display:block;border-radius:inherit}.t-textfield{border-radius:inherit;text-align:inherit}\n"], components: [{ type: i1.TuiHostedDropdownComponent, selector: "tui-hosted-dropdown", inputs: ["content", "sided", "canOpen", "open"], outputs: ["openChange", "focusedChange"] }, { type: i1.TuiPrimitiveTextfieldComponent, selector: "tui-primitive-textfield", inputs: ["editable", "filler", "iconCleaner", "readOnly", "invalid", "disabled", "prefix", "postfix", "value"], outputs: ["valueChange"] }, { type: i1.TuiTextfieldComponent, selector: "input[tuiTextfield], textarea[tuiTextfield]" }, { type: i1.TuiDataListComponent, selector: "tui-data-list", inputs: ["role", "emptyContent", "size"] }, { type: i1.TuiOptionComponent, selector: "button[tuiOption], a[tuiOption]", inputs: ["size", "role", "disabled", "value"] }], directives: [{ type: i1.TuiPrimitiveTextfieldDirective, selector: "tui-primitive-textfield" }, { type: i2.TuiValueAccessorDirective, selector: "[tuiValueAccessor]" }, { type: i1.TuiTextfieldFillerDirective, selector: "[tuiTextfieldFiller]", inputs: ["tuiTextfieldFiller"] }, { type: i2.MaskedInputDirective, selector: "[textMask]", inputs: ["textMask"], exportAs: ["textMask"] }, { type: i1.TuiTextfieldIconDirective, selector: "[tuiTextfieldIcon]", inputs: ["tuiTextfieldIcon"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i3.AsyncPipe }, viewProviders: [FIXED_DROPDOWN_CONTROLLER_PROVIDER], changeDetection: i0.ChangeDetectionStrategy.OnPush });
221
224
  __decorate([
222
225
  tuiDefaultProp()
223
226
  ], TuiInputTimeComponent.prototype, "disabledItemHandler", void 0);
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-input-time.js","sources":["../../../projects/kit/components/input-time/input-time-options.ts","../../../projects/kit/components/input-time/input-time.component.ts","../../../projects/kit/components/input-time/input-time.template.html","../../../projects/kit/components/input-time/input-time.module.ts","../../../projects/kit/components/input-time/taiga-ui-kit-components-input-time.ts"],"sourcesContent":["import {InjectionToken, ValueProvider} from '@angular/core';\nimport {TuiContextWithImplicit, TuiTimeMode} from '@taiga-ui/cdk';\nimport {TuiSizeL, TuiSizeS} from '@taiga-ui/core';\nimport {MAX_TIME_VALUES} from '@taiga-ui/kit/constants';\nimport {TuiTimeFormatParts} from '@taiga-ui/kit/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport interface TuiInputTimeOptions {\n readonly icon: PolymorpheusContent<TuiContextWithImplicit<TuiSizeL | TuiSizeS>>;\n readonly mode: TuiTimeMode;\n readonly postfix: string;\n readonly maxValues: Record<TuiTimeFormatParts, number>;\n readonly itemSize: TuiSizeL | TuiSizeS;\n}\n\nexport const TUI_INPUT_TIME_DEFAULT_OPTIONS: TuiInputTimeOptions = {\n icon: ({$implicit}) => ($implicit === `s` ? `tuiIconClock` : `tuiIconClockLarge`),\n mode: `HH:MM`,\n postfix: ``,\n maxValues: MAX_TIME_VALUES,\n itemSize: `m`,\n};\n\n/**\n * Default parameters for InputTime component\n */\nexport const TUI_INPUT_TIME_OPTIONS = new InjectionToken<TuiInputTimeOptions>(\n `[TUI_INPUT_TIME_OPTIONS]`,\n {\n factory: () => TUI_INPUT_TIME_DEFAULT_OPTIONS,\n },\n);\n\nexport const tuiInputTimeOptionsProvider: (\n options: Partial<TuiInputTimeOptions>,\n) => ValueProvider = (options: Partial<TuiInputTimeOptions>) => ({\n provide: TUI_INPUT_TIME_OPTIONS,\n useValue: {...TUI_INPUT_TIME_DEFAULT_OPTIONS, ...options},\n});\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostListener,\n Inject,\n Input,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n ALWAYS_FALSE_HANDLER,\n TUI_STRICT_MATCHER,\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n TuiBooleanHandler,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n tuiIsElement,\n tuiIsInput,\n tuiIsNativeFocused,\n tuiPure,\n TuiTime,\n TuiTimeLike,\n TuiTimeMode,\n} from '@taiga-ui/cdk';\nimport {\n tuiAsDataListHost,\n tuiAsOptionContent,\n TuiDataListHost,\n TuiPrimitiveTextfieldComponent,\n TuiTextMaskOptions,\n} from '@taiga-ui/core';\nimport {TUI_SELECT_OPTION} from '@taiga-ui/kit/components/select-option';\nimport {FIXED_DROPDOWN_CONTROLLER_PROVIDER} from '@taiga-ui/kit/providers';\nimport {TUI_TIME_TEXTS} from '@taiga-ui/kit/tokens';\nimport {\n tuiCreateAutoCorrectedTimePipe,\n tuiCreateTimeMask,\n} from '@taiga-ui/kit/utils/mask';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {TUI_INPUT_TIME_OPTIONS, TuiInputTimeOptions} from './input-time-options';\n\n@Component({\n selector: 'tui-input-time',\n templateUrl: './input-time.template.html',\n styleUrls: ['./input-time.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiInputTimeComponent),\n tuiAsControl(TuiInputTimeComponent),\n tuiAsDataListHost(TuiInputTimeComponent),\n tuiAsOptionContent(TUI_SELECT_OPTION),\n ],\n viewProviders: [FIXED_DROPDOWN_CONTROLLER_PROVIDER],\n})\nexport class TuiInputTimeComponent\n extends AbstractTuiNullableControl<TuiTime>\n implements TuiFocusableElementAccessor, TuiDataListHost<TuiTime>\n{\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandler<TuiTime> = ALWAYS_FALSE_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n items: readonly TuiTime[] = [];\n\n @Input()\n @tuiDefaultProp()\n itemSize: TuiInputTimeOptions['itemSize'] = this.options.itemSize;\n\n @Input()\n @tuiDefaultProp()\n strict = false;\n\n @Input()\n @tuiDefaultProp()\n mode: TuiInputTimeOptions['mode'] = this.options.mode;\n\n /** @deprecated use `tuiTextfieldPostfix` from {@link TuiTextfieldControllerModule} instead */\n @Input()\n @tuiDefaultProp()\n postfix: TuiInputTimeOptions['postfix'] = this.options.postfix;\n\n open = false;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_TIME_TEXTS)\n private readonly timeTexts$: Observable<Record<TuiTimeMode, string>>,\n @Inject(TUI_INPUT_TIME_OPTIONS)\n private readonly options: TuiInputTimeOptions,\n ) {\n super(control, changeDetectorRef);\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return this.textfield ? this.textfield.nativeFocusableElement : null;\n }\n\n get focused(): boolean {\n return tuiIsNativeFocused(this.nativeFocusableElement);\n }\n\n get filtered(): readonly TuiTime[] {\n return this.filter(this.items, this.mode, this.computedSearch);\n }\n\n get textMaskOptions(): TuiTextMaskOptions {\n return this.calculateMask(this.mode);\n }\n\n get computedValue(): string {\n return this.value ? this.value.toString(this.mode) : this.nativeValue;\n }\n\n get computedSearch(): string {\n return this.computedValue.length !== this.mode.length ? this.computedValue : '';\n }\n\n get innerPseudoFocused(): boolean | null {\n if (this.pseudoFocus === false) {\n return false;\n }\n\n if (this.open || this.computedFocused) {\n return true;\n }\n\n return null;\n }\n\n get icon(): TuiInputTimeOptions['icon'] {\n return this.options.icon;\n }\n\n get nativeValue(): string {\n return this.nativeFocusableElement ? this.nativeFocusableElement.value : '';\n }\n\n set nativeValue(value: string) {\n if (!this.nativeFocusableElement) {\n return;\n }\n\n this.nativeFocusableElement.value = value;\n }\n\n @tuiPure\n getFiller$(mode: TuiTimeMode): Observable<string> {\n return this.timeTexts$.pipe(map(texts => texts[mode]));\n }\n\n @HostListener('click')\n onClick(): void {\n this.open = !this.open;\n }\n\n onValueChange(value: string): void {\n this.open = !!this.items.length;\n\n if (this.control) {\n this.control.updateValueAndValidity({emitEvent: false});\n }\n\n const match = this.getMatch(value);\n\n if (match !== undefined) {\n this.updateValue(match);\n\n return;\n }\n\n if (value.length !== this.mode.length) {\n this.updateValue(null);\n\n return;\n }\n\n const time = TuiTime.fromString(value);\n\n this.updateValue(this.strict ? this.findNearestTimeFromItems(time) : time);\n }\n\n onFocused(focused: boolean): void {\n this.updateFocused(focused);\n\n if (\n focused ||\n this.value !== null ||\n this.nativeValue === '' ||\n this.mode === 'HH:MM'\n ) {\n return;\n }\n\n const parsedTime = TuiTime.fromString(this.nativeValue);\n\n this.updateValue(parsedTime);\n\n setTimeout(() => {\n if (this.nativeValue.endsWith('.') || this.nativeValue.endsWith(':')) {\n this.nativeValue = this.nativeValue.slice(0, -1);\n }\n });\n }\n\n onArrowUp(event: Event): void {\n if (this.items.length) {\n return;\n }\n\n this.processArrow(event, 1);\n }\n\n onArrowDown(event: Event): void {\n if (this.items.length) {\n return;\n }\n\n this.processArrow(event, -1);\n }\n\n handleOption(item: TuiTime): void {\n this.focusInput();\n this.updateValue(item);\n }\n\n onOpen(open: boolean): void {\n this.open = open;\n }\n\n override writeValue(value: TuiTime | null): void {\n super.writeValue(value);\n this.nativeValue = value ? this.computedValue : '';\n }\n\n @tuiPure\n private calculateMask(mode: TuiTimeMode): TuiTextMaskOptions {\n return {\n mask: tuiCreateTimeMask(mode, this.options.maxValues),\n pipe: tuiCreateAutoCorrectedTimePipe(mode, this.options.maxValues),\n guide: false,\n };\n }\n\n @tuiPure\n private filter(\n items: readonly TuiTime[],\n mode: TuiTimeMode,\n search: string,\n ): readonly TuiTime[] {\n return items.filter(item => item.toString(mode).includes(search));\n }\n\n private findNearestTimeFromItems(value: TuiTime): TuiTime | null {\n return this.items.reduce((previous, current) =>\n Math.abs(current.toAbsoluteMilliseconds() - value.toAbsoluteMilliseconds()) <\n Math.abs(previous.toAbsoluteMilliseconds() - value.toAbsoluteMilliseconds())\n ? current\n : previous,\n );\n }\n\n private getMatch(value: string): TuiTime | undefined {\n return this.items.find(item => TUI_STRICT_MATCHER(item, value));\n }\n\n private close(): void {\n this.open = false;\n }\n\n private processArrow(event: Event, shift: -1 | 1): void {\n const {target} = event;\n\n if (this.readOnly || !tuiIsElement(target) || !tuiIsInput(target)) {\n return;\n }\n\n const selectionStart = target.selectionStart || 0;\n\n this.shiftTime(this.calculateShift(selectionStart, shift));\n\n target.setSelectionRange(selectionStart, selectionStart);\n event.preventDefault();\n }\n\n private calculateShift(selectionStart: number, shift: number): TuiTimeLike {\n if (selectionStart <= 2) {\n return {hours: shift};\n }\n\n if (selectionStart <= 5) {\n return {minutes: shift};\n }\n\n if (selectionStart <= 8) {\n return {seconds: shift};\n }\n\n return {ms: shift};\n }\n\n private shiftTime(shift: TuiTimeLike): void {\n if (this.value === null) {\n return;\n }\n\n const increasedTime: TuiTime = this.value.shift(shift);\n\n // Manual update so we can set caret position properly\n this.nativeValue = increasedTime.toString(this.mode);\n this.updateValue(increasedTime);\n }\n\n private focusInput(preventScroll: boolean = false): void {\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.focus({preventScroll});\n this.close();\n }\n }\n}\n","<tui-hosted-dropdown\n class=\"t-wrapper\"\n [canOpen]=\"interactive && !!filtered.length\"\n [content]=\"dropdownContent\"\n [open]=\"interactive && open && !!filtered.length\"\n (openChange)=\"onOpen($event)\"\n (focusedChange)=\"onFocused($event)\"\n>\n <tui-primitive-textfield\n tuiValueAccessor\n class=\"t-textfield\"\n [tuiTextfieldFiller]=\"(getFiller$(mode) | async) || ''\"\n [nativeId]=\"nativeId\"\n [pseudoFocus]=\"innerPseudoFocused\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoActive]=\"pseudoActive\"\n [invalid]=\"computedInvalid\"\n [focusable]=\"focusable\"\n [disabled]=\"disabled\"\n [readOnly]=\"readOnly\"\n [textMask]=\"textMaskOptions\"\n [tuiTextfieldIcon]=\"icon\"\n [value]=\"computedValue\"\n [postfix]=\"postfix\"\n (valueChange)=\"onValueChange($event)\"\n (keydown.arrowUp)=\"onArrowUp($event)\"\n (keydown.arrowDown)=\"onArrowDown($event)\"\n >\n <ng-content></ng-content>\n <input\n tuiTextfield\n inputmode=\"numeric\"\n />\n </tui-primitive-textfield>\n</tui-hosted-dropdown>\n<ng-template #dropdownContent>\n <tui-data-list\n automation-id=\"tui-input-time__dropdown\"\n [size]=\"itemSize\"\n >\n <button\n *ngFor=\"let item of filtered\"\n tuiOption\n automation-id=\"tui-input-time__item\"\n [disabled]=\"disabledItemHandler(item)\"\n [value]=\"item\"\n >\n {{ item }}\n </button>\n </tui-data-list>\n</ng-template>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiDataListModule,\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldControllerModule,\n} from '@taiga-ui/core';\nimport {TuiSelectOptionModule} from '@taiga-ui/kit/components/select-option';\nimport {TextMaskModule, TuiValueAccessorModule} from '@taiga-ui/kit/directives';\n\nimport {TuiInputTimeComponent} from './input-time.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TextMaskModule,\n TuiSelectOptionModule,\n TuiDataListModule,\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiValueAccessorModule,\n TuiTextfieldControllerModule,\n ],\n declarations: [TuiInputTimeComponent],\n exports: [TuiInputTimeComponent],\n})\nexport class TuiInputTimeModule {}\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-kit-components-input-time.js","sources":["../../../projects/kit/components/input-time/input-time-options.ts","../../../projects/kit/components/input-time/input-time.component.ts","../../../projects/kit/components/input-time/input-time.template.html","../../../projects/kit/components/input-time/input-time.module.ts","../../../projects/kit/components/input-time/taiga-ui-kit-components-input-time.ts"],"sourcesContent":["import {InjectionToken, ValueProvider} from '@angular/core';\nimport {TuiContextWithImplicit, TuiTimeMode} from '@taiga-ui/cdk';\nimport {TuiSizeL, TuiSizeS} from '@taiga-ui/core';\nimport {MAX_TIME_VALUES} from '@taiga-ui/kit/constants';\nimport {TuiTimeFormatParts} from '@taiga-ui/kit/types';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport interface TuiInputTimeOptions {\n readonly icon: PolymorpheusContent<TuiContextWithImplicit<TuiSizeL | TuiSizeS>>;\n readonly mode: TuiTimeMode;\n readonly postfix: string;\n readonly maxValues: Record<TuiTimeFormatParts, number>;\n readonly itemSize: TuiSizeL | TuiSizeS;\n}\n\nexport const TUI_INPUT_TIME_DEFAULT_OPTIONS: TuiInputTimeOptions = {\n icon: ({$implicit}) => ($implicit === `s` ? `tuiIconClock` : `tuiIconClockLarge`),\n mode: `HH:MM`,\n postfix: ``,\n maxValues: MAX_TIME_VALUES,\n itemSize: `m`,\n};\n\n/**\n * Default parameters for InputTime component\n */\nexport const TUI_INPUT_TIME_OPTIONS = new InjectionToken<TuiInputTimeOptions>(\n `[TUI_INPUT_TIME_OPTIONS]`,\n {\n factory: () => TUI_INPUT_TIME_DEFAULT_OPTIONS,\n },\n);\n\nexport const tuiInputTimeOptionsProvider: (\n options: Partial<TuiInputTimeOptions>,\n) => ValueProvider = (options: Partial<TuiInputTimeOptions>) => ({\n provide: TUI_INPUT_TIME_OPTIONS,\n useValue: {...TUI_INPUT_TIME_DEFAULT_OPTIONS, ...options},\n});\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostListener,\n Inject,\n Input,\n Optional,\n Self,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiNullableControl,\n ALWAYS_FALSE_HANDLER,\n TUI_STRICT_MATCHER,\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n TuiBooleanHandler,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n tuiIsElement,\n tuiIsInput,\n tuiIsNativeFocused,\n tuiPure,\n TuiTime,\n TuiTimeLike,\n TuiTimeMode,\n} from '@taiga-ui/cdk';\nimport {\n tuiAsDataListHost,\n tuiAsOptionContent,\n TuiDataListHost,\n TuiPrimitiveTextfieldComponent,\n TuiTextMaskOptions,\n} from '@taiga-ui/core';\nimport {TUI_SELECT_OPTION} from '@taiga-ui/kit/components/select-option';\nimport {FIXED_DROPDOWN_CONTROLLER_PROVIDER} from '@taiga-ui/kit/providers';\nimport {TUI_TIME_TEXTS} from '@taiga-ui/kit/tokens';\nimport {\n tuiCreateAutoCorrectedTimePipe,\n tuiCreateTimeMask,\n} from '@taiga-ui/kit/utils/mask';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {TUI_INPUT_TIME_OPTIONS, TuiInputTimeOptions} from './input-time-options';\n\n@Component({\n selector: 'tui-input-time',\n templateUrl: './input-time.template.html',\n styleUrls: ['./input-time.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n tuiAsFocusableItemAccessor(TuiInputTimeComponent),\n tuiAsControl(TuiInputTimeComponent),\n tuiAsDataListHost(TuiInputTimeComponent),\n tuiAsOptionContent(TUI_SELECT_OPTION),\n ],\n viewProviders: [FIXED_DROPDOWN_CONTROLLER_PROVIDER],\n})\nexport class TuiInputTimeComponent\n extends AbstractTuiNullableControl<TuiTime>\n implements TuiFocusableElementAccessor, TuiDataListHost<TuiTime>\n{\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n @Input()\n @tuiDefaultProp()\n disabledItemHandler: TuiBooleanHandler<TuiTime> = ALWAYS_FALSE_HANDLER;\n\n @Input()\n @tuiDefaultProp()\n items: readonly TuiTime[] = [];\n\n @Input()\n @tuiDefaultProp()\n itemSize: TuiInputTimeOptions['itemSize'] = this.options.itemSize;\n\n @Input()\n @tuiDefaultProp()\n strict = false;\n\n @Input()\n @tuiDefaultProp()\n mode: TuiInputTimeOptions['mode'] = this.options.mode;\n\n /** @deprecated use `tuiTextfieldPostfix` from {@link TuiTextfieldControllerModule} instead */\n @Input()\n @tuiDefaultProp()\n postfix: TuiInputTimeOptions['postfix'] = this.options.postfix;\n\n open = false;\n\n constructor(\n @Optional()\n @Self()\n @Inject(NgControl)\n control: NgControl | null,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_TIME_TEXTS)\n private readonly timeTexts$: Observable<Record<TuiTimeMode, string>>,\n @Inject(TUI_INPUT_TIME_OPTIONS)\n private readonly options: TuiInputTimeOptions,\n ) {\n super(control, changeDetectorRef);\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return this.textfield ? this.textfield.nativeFocusableElement : null;\n }\n\n get focused(): boolean {\n return tuiIsNativeFocused(this.nativeFocusableElement);\n }\n\n get canOpen(): boolean {\n return this.interactive && !!this.filtered.length;\n }\n\n get filtered(): readonly TuiTime[] {\n return this.filter(this.items, this.mode, this.computedSearch);\n }\n\n get textMaskOptions(): TuiTextMaskOptions {\n return this.calculateMask(this.mode);\n }\n\n get computedValue(): string {\n return this.value ? this.value.toString(this.mode) : this.nativeValue;\n }\n\n get computedSearch(): string {\n return this.computedValue.length !== this.mode.length ? this.computedValue : '';\n }\n\n get innerPseudoFocused(): boolean | null {\n if (this.pseudoFocus === false) {\n return false;\n }\n\n if ((this.open && this.canOpen) || this.computedFocused) {\n return true;\n }\n\n return null;\n }\n\n get icon(): TuiInputTimeOptions['icon'] {\n return this.options.icon;\n }\n\n get nativeValue(): string {\n return this.nativeFocusableElement ? this.nativeFocusableElement.value : '';\n }\n\n set nativeValue(value: string) {\n if (!this.nativeFocusableElement) {\n return;\n }\n\n this.nativeFocusableElement.value = value;\n }\n\n @tuiPure\n getFiller$(mode: TuiTimeMode): Observable<string> {\n return this.timeTexts$.pipe(map(texts => texts[mode]));\n }\n\n @HostListener('click')\n onClick(): void {\n this.open = !this.open;\n }\n\n onValueChange(value: string): void {\n this.open = !!this.items.length;\n\n if (this.control) {\n this.control.updateValueAndValidity({emitEvent: false});\n }\n\n const match = this.getMatch(value);\n\n if (match !== undefined) {\n this.updateValue(match);\n\n return;\n }\n\n if (value.length !== this.mode.length) {\n this.updateValue(null);\n\n return;\n }\n\n const time = TuiTime.fromString(value);\n\n this.updateValue(this.strict ? this.findNearestTimeFromItems(time) : time);\n }\n\n onFocused(focused: boolean): void {\n this.updateFocused(focused);\n\n if (\n focused ||\n this.value !== null ||\n this.nativeValue === '' ||\n this.mode === 'HH:MM'\n ) {\n return;\n }\n\n const parsedTime = TuiTime.fromString(this.nativeValue);\n\n this.updateValue(parsedTime);\n\n setTimeout(() => {\n if (this.nativeValue.endsWith('.') || this.nativeValue.endsWith(':')) {\n this.nativeValue = this.nativeValue.slice(0, -1);\n }\n });\n }\n\n onArrowUp(event: Event): void {\n if (this.items.length) {\n return;\n }\n\n this.processArrow(event, 1);\n }\n\n onArrowDown(event: Event): void {\n if (this.items.length) {\n return;\n }\n\n this.processArrow(event, -1);\n }\n\n handleOption(item: TuiTime): void {\n this.focusInput();\n this.updateValue(item);\n }\n\n onOpen(open: boolean): void {\n this.open = open;\n }\n\n override writeValue(value: TuiTime | null): void {\n super.writeValue(value);\n this.nativeValue = value ? this.computedValue : '';\n }\n\n @tuiPure\n private calculateMask(mode: TuiTimeMode): TuiTextMaskOptions {\n return {\n mask: tuiCreateTimeMask(mode, this.options.maxValues),\n pipe: tuiCreateAutoCorrectedTimePipe(mode, this.options.maxValues),\n guide: false,\n };\n }\n\n @tuiPure\n private filter(\n items: readonly TuiTime[],\n mode: TuiTimeMode,\n search: string,\n ): readonly TuiTime[] {\n return items.filter(item => item.toString(mode).includes(search));\n }\n\n private findNearestTimeFromItems(value: TuiTime): TuiTime | null {\n return this.items.reduce((previous, current) =>\n Math.abs(current.toAbsoluteMilliseconds() - value.toAbsoluteMilliseconds()) <\n Math.abs(previous.toAbsoluteMilliseconds() - value.toAbsoluteMilliseconds())\n ? current\n : previous,\n );\n }\n\n private getMatch(value: string): TuiTime | undefined {\n return this.items.find(item => TUI_STRICT_MATCHER(item, value));\n }\n\n private close(): void {\n this.open = false;\n }\n\n private processArrow(event: Event, shift: -1 | 1): void {\n const {target} = event;\n\n if (this.readOnly || !tuiIsElement(target) || !tuiIsInput(target)) {\n return;\n }\n\n const selectionStart = target.selectionStart || 0;\n\n this.shiftTime(this.calculateShift(selectionStart, shift));\n\n target.setSelectionRange(selectionStart, selectionStart);\n event.preventDefault();\n }\n\n private calculateShift(selectionStart: number, shift: number): TuiTimeLike {\n if (selectionStart <= 2) {\n return {hours: shift};\n }\n\n if (selectionStart <= 5) {\n return {minutes: shift};\n }\n\n if (selectionStart <= 8) {\n return {seconds: shift};\n }\n\n return {ms: shift};\n }\n\n private shiftTime(shift: TuiTimeLike): void {\n if (this.value === null) {\n return;\n }\n\n const increasedTime: TuiTime = this.value.shift(shift);\n\n // Manual update so we can set caret position properly\n this.nativeValue = increasedTime.toString(this.mode);\n this.updateValue(increasedTime);\n }\n\n private focusInput(preventScroll: boolean = false): void {\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.focus({preventScroll});\n this.close();\n }\n }\n}\n","<tui-hosted-dropdown\n class=\"t-wrapper\"\n [canOpen]=\"canOpen\"\n [content]=\"dropdownContent\"\n [open]=\"canOpen && open\"\n (openChange)=\"onOpen($event)\"\n (focusedChange)=\"onFocused($event)\"\n>\n <tui-primitive-textfield\n tuiValueAccessor\n class=\"t-textfield\"\n [tuiTextfieldFiller]=\"(getFiller$(mode) | async) || ''\"\n [nativeId]=\"nativeId\"\n [pseudoFocus]=\"innerPseudoFocused\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoActive]=\"pseudoActive\"\n [invalid]=\"computedInvalid\"\n [focusable]=\"focusable\"\n [disabled]=\"disabled\"\n [readOnly]=\"readOnly\"\n [textMask]=\"textMaskOptions\"\n [tuiTextfieldIcon]=\"icon\"\n [value]=\"computedValue\"\n [postfix]=\"postfix\"\n (valueChange)=\"onValueChange($event)\"\n (keydown.arrowUp)=\"onArrowUp($event)\"\n (keydown.arrowDown)=\"onArrowDown($event)\"\n >\n <ng-content></ng-content>\n <input\n tuiTextfield\n inputmode=\"numeric\"\n />\n </tui-primitive-textfield>\n</tui-hosted-dropdown>\n<ng-template #dropdownContent>\n <tui-data-list\n automation-id=\"tui-input-time__dropdown\"\n [size]=\"itemSize\"\n >\n <button\n *ngFor=\"let item of filtered\"\n tuiOption\n automation-id=\"tui-input-time__item\"\n [disabled]=\"disabledItemHandler(item)\"\n [value]=\"item\"\n >\n {{ item }}\n </button>\n </tui-data-list>\n</ng-template>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {\n TuiDataListModule,\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldControllerModule,\n} from '@taiga-ui/core';\nimport {TuiSelectOptionModule} from '@taiga-ui/kit/components/select-option';\nimport {TextMaskModule, TuiValueAccessorModule} from '@taiga-ui/kit/directives';\n\nimport {TuiInputTimeComponent} from './input-time.component';\n\n@NgModule({\n imports: [\n CommonModule,\n TextMaskModule,\n TuiSelectOptionModule,\n TuiDataListModule,\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiValueAccessorModule,\n TuiTextfieldControllerModule,\n ],\n declarations: [TuiInputTimeComponent],\n exports: [TuiInputTimeComponent],\n})\nexport class TuiInputTimeModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -156,7 +156,7 @@ TuiLineClampComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0",
156
156
  provide: TUI_HINT_COMPONENT,
157
157
  useValue: TuiLineClampBoxComponent,
158
158
  },
159
- ], viewQueries: [{ propertyName: "outlet", first: true, predicate: TuiHintDirective, descendants: true, read: ElementRef }], ngImport: i0, template: "<div\n *tuiLet=\"lineClamp$ | async as lineClamp\"\n tuiHintCustomPosition\n class=\"t-wrapper\"\n [tuiHint]=\"computedContent\"\n [style.-webkit-line-clamp]=\"lineClamp\"\n [style.word-break]=\"(lineClamp || 0) > 1 ? 'break-word' : 'break-all'\"\n (tuiResize)=\"updateView()\"\n>\n <ng-container *polymorpheusOutlet=\"content as text\">\n {{ text }}\n </ng-container>\n</div>\n", styles: [":host{position:relative;display:block;overflow:hidden}:host._initialized{transition-property:max-height;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out}.t-wrapper{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.t-wrapper ::ng-deep>*{white-space:normal;white-space:initial}\n"], directives: [{ type: i1$1.TuiLetDirective, selector: "[tuiLet]", inputs: ["tuiLet"] }, { type: TuiLineClampPositionDirective, selector: "[tuiHintCustomPosition]" }, { type: i3.TuiHintDirective, selector: "[tuiHint]:not(ng-container)", inputs: ["tuiHint", "tuiHintContext", "tuiHintAppearance"] }, { type: i3.TuiHintDriverDirective, selector: "[tuiHint]" }, { type: i3.TuiHintHoverDirective, selector: "[tuiHint]:not(ng-container)", inputs: ["tuiHintShowDelay", "tuiHintHideDelay"], exportAs: ["tuiHintHover"] }, { type: i1$1.TuiResizeDirective, selector: "[tuiResize]", outputs: ["tuiResize"] }, { type: i1.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], pipes: { "async": i5.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
159
+ ], viewQueries: [{ propertyName: "outlet", first: true, predicate: TuiHintDirective, descendants: true, read: ElementRef }], ngImport: i0, template: "<div\n *tuiLet=\"lineClamp$ | async as lineClamp\"\n tuiHintCustomPosition\n class=\"t-wrapper\"\n [tuiHint]=\"computedContent\"\n [style.-webkit-line-clamp]=\"lineClamp\"\n [style.word-break]=\"(lineClamp || 0) > 1 ? 'break-word' : 'break-all'\"\n (tuiResize)=\"updateView()\"\n>\n <ng-container *polymorpheusOutlet=\"content as text\">\n {{ text }}\n </ng-container>\n</div>\n", styles: [":host{position:relative;display:block;overflow:hidden}:host._initialized{transition-property:max-height;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out}.t-wrapper{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.t-wrapper ::ng-deep>*{white-space:normal;white-space:initial}\n"], directives: [{ type: i1$1.TuiLetDirective, selector: "[tuiLet]", inputs: ["tuiLet"] }, { type: TuiLineClampPositionDirective, selector: "[tuiHintCustomPosition]" }, { type: i3.TuiHintDirective, selector: "[tuiHint]:not(ng-container)", inputs: ["tuiHint", "tuiHintContext", "tuiHintAppearance"] }, { type: i3.TuiHintDriverDirective, selector: "[tuiHint]" }, { type: i3.TuiHintHoverDirective, selector: "[tuiHint]:not(ng-container)", inputs: ["tuiHintShowDelay", "tuiHintHideDelay"], exportAs: ["tuiHintHover"] }, { type: i1$1.TuiResizeDirective, selector: "[tuiResize]", outputs: ["tuiResize"] }, { type: i1.PolymorpheusOutletDirective, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }], pipes: { "async": i5.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
160
160
  __decorate([
161
161
  tuiDefaultProp()
162
162
  ], TuiLineClampComponent.prototype, "linesLimit", null);
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-line-clamp.js","sources":["../../../projects/kit/components/line-clamp/line-clamp-box.component.ts","../../../projects/kit/components/line-clamp/line-clamp-options.ts","../../../projects/kit/components/line-clamp/line-clamp-position.directive.ts","../../../projects/kit/components/line-clamp/line-clamp.component.ts","../../../projects/kit/components/line-clamp/line-clamp.template.html","../../../projects/kit/components/line-clamp/line-clamp.module.ts","../../../projects/kit/components/line-clamp/taiga-ui-kit-components-line-clamp.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component, HostBinding} from '@angular/core';\nimport {TuiDestroyService, TuiHoveredService} from '@taiga-ui/cdk';\nimport {\n tuiFadeIn,\n TuiHintComponent,\n TuiHintDirective,\n tuiPositionAccessorFor,\n TuiPositionService,\n tuiRectAccessorFor,\n} from '@taiga-ui/core';\n\n@Component({\n selector: 'tui-line-clamp-box',\n template: `\n <ng-container *polymorpheusOutlet=\"content as text\">{{ text }}</ng-container>\n `,\n styleUrls: ['./line-clamp-box.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n TuiDestroyService,\n TuiPositionService,\n TuiHoveredService,\n tuiPositionAccessorFor('hint'),\n tuiRectAccessorFor('hint', TuiHintDirective),\n ],\n animations: [tuiFadeIn],\n})\nexport class TuiLineClampBoxComponent extends TuiHintComponent {\n @HostBinding('style.minWidth.px')\n get width(): number {\n return this.accessor.getClientRect().width;\n }\n}\n","import {InjectionToken, ValueProvider} from '@angular/core';\n\nexport interface TuiLineClampOptions {\n readonly showHint: boolean;\n}\n\nexport const TUI_LINE_CLAMP_DEFAULT_OPTIONS: TuiLineClampOptions = {\n showHint: true,\n};\n\n/**\n * Default parameters for LineClamp component\n */\nexport const TUI_LINE_CLAMP_OPTIONS = new InjectionToken<TuiLineClampOptions>(\n `[TUI_LINE_CLAMP_OPTIONS]`,\n {\n factory: () => TUI_LINE_CLAMP_DEFAULT_OPTIONS,\n },\n);\n\nexport const tuiLineClampOptionsProvider: (\n options: Partial<TuiLineClampOptions>,\n) => ValueProvider = (options: Partial<TuiLineClampOptions>) => ({\n provide: TUI_LINE_CLAMP_OPTIONS,\n useValue: {...TUI_LINE_CLAMP_DEFAULT_OPTIONS, ...options},\n});\n","import {Directive, Inject} from '@angular/core';\nimport {\n tuiAsPositionAccessor,\n TuiHintDirective,\n TuiPoint,\n TuiPositionAccessor,\n TuiRectAccessor,\n} from '@taiga-ui/core';\n\n@Directive({\n selector: '[tuiHintCustomPosition]',\n providers: [tuiAsPositionAccessor(TuiLineClampPositionDirective)],\n})\nexport class TuiLineClampPositionDirective extends TuiPositionAccessor {\n readonly type = 'hint';\n\n constructor(@Inject(TuiHintDirective) private readonly accessor: TuiRectAccessor) {\n super();\n }\n\n getPosition(): TuiPoint {\n const {top, left} = this.accessor.getClientRect();\n\n return [top, left];\n }\n}\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n DoCheck,\n ElementRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n NgZone,\n Output,\n Renderer2,\n ViewChild,\n} from '@angular/core';\nimport {\n tuiDefaultProp,\n tuiIsCurrentTarget,\n tuiTypedFromEvent,\n tuiZonefree,\n} from '@taiga-ui/cdk';\nimport {TUI_HINT_COMPONENT, TuiHintDirective} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {BehaviorSubject, Observable, of, Subject, timer} from 'rxjs';\nimport {\n distinctUntilChanged,\n filter,\n map,\n pairwise,\n startWith,\n switchMap,\n} from 'rxjs/operators';\n\nimport {TuiLineClampBoxComponent} from './line-clamp-box.component';\nimport {TUI_LINE_CLAMP_OPTIONS, TuiLineClampOptions} from './line-clamp-options';\n\n@Component({\n selector: 'tui-line-clamp',\n templateUrl: './line-clamp.template.html',\n styleUrls: ['./line-clamp.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_HINT_COMPONENT,\n useValue: TuiLineClampBoxComponent,\n },\n ],\n})\nexport class TuiLineClampComponent implements DoCheck, AfterViewInit {\n @ViewChild(TuiHintDirective, {read: ElementRef})\n private readonly outlet?: ElementRef<HTMLElement>;\n\n private readonly linesLimit$ = new BehaviorSubject(1);\n private readonly isOverflown$ = new Subject<boolean>();\n private initialized = false;\n\n @HostBinding('style.maxHeight.px')\n maxHeight: number | null = null;\n\n @HostBinding('style.height.px')\n height = 0;\n\n @Input()\n @tuiDefaultProp()\n set linesLimit(linesLimit: number) {\n this.linesLimit$.next(linesLimit);\n }\n\n @Input()\n @tuiDefaultProp()\n lineHeight = 24;\n\n @Input()\n @tuiDefaultProp()\n content: PolymorpheusContent = '';\n\n @Output()\n readonly overflownChange: Observable<boolean> = this.isOverflown$.pipe(\n distinctUntilChanged(),\n );\n\n lineClamp$ = this.linesLimit$.pipe(\n startWith(1),\n pairwise(),\n switchMap(([prev, next]) =>\n next >= prev\n ? of(next)\n : tuiTypedFromEvent(this.elementRef.nativeElement, 'transitionend').pipe(\n filter(tuiIsCurrentTarget),\n map(() => next),\n ),\n ),\n );\n\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(Renderer2) private readonly renderer: Renderer2,\n @Inject(ChangeDetectorRef) private readonly cd: ChangeDetectorRef,\n @Inject(NgZone) private readonly ngZone: NgZone,\n @Inject(TUI_LINE_CLAMP_OPTIONS) private readonly options: TuiLineClampOptions,\n ) {\n this.skipInitialTransition();\n }\n\n get overflown(): boolean {\n if (!this.outlet) {\n return false;\n }\n\n const {scrollHeight, scrollWidth} = this.outlet.nativeElement;\n const {clientHeight, clientWidth} = this.elementRef.nativeElement;\n\n // 4px buffer for IE/Edge incorrectly rounding scrollHeight\n return scrollHeight - clientHeight > 4 || scrollWidth - clientWidth > 0;\n }\n\n get computedContent(): PolymorpheusContent {\n return this.options.showHint && this.overflown ? this.content : '';\n }\n\n @HostListener('transitionend')\n updateView(): void {\n this.cd.detectChanges();\n }\n\n ngAfterViewInit(): void {\n this.initialized = true;\n }\n\n ngDoCheck(): void {\n this.updateStaticallyHostBinding();\n this.isOverflown$.next(this.overflown);\n }\n\n private skipInitialTransition(): void {\n timer(0)\n .pipe(tuiZonefree(this.ngZone))\n .subscribe(() => {\n this.renderer.addClass(this.elementRef.nativeElement, '_initialized');\n this.cd.detectChanges();\n });\n }\n\n private updateStaticallyHostBinding(): void {\n if (this.outlet) {\n this.height = this.outlet.nativeElement.scrollHeight + 4;\n }\n\n if (this.initialized) {\n this.maxHeight = this.lineHeight * this.linesLimit$.value;\n }\n }\n}\n","<div\n *tuiLet=\"lineClamp$ | async as lineClamp\"\n tuiHintCustomPosition\n class=\"t-wrapper\"\n [tuiHint]=\"computedContent\"\n [style.-webkit-line-clamp]=\"lineClamp\"\n [style.word-break]=\"(lineClamp || 0) > 1 ? 'break-word' : 'break-all'\"\n (tuiResize)=\"updateView()\"\n>\n <ng-container *polymorpheusOutlet=\"content as text\">\n {{ text }}\n </ng-container>\n</div>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiLetModule, TuiResizeModule} from '@taiga-ui/cdk';\nimport {TuiHintModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiLineClampComponent} from './line-clamp.component';\nimport {TuiLineClampBoxComponent} from './line-clamp-box.component';\nimport {TuiLineClampPositionDirective} from './line-clamp-position.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiHintModule,\n TuiResizeModule,\n TuiLetModule,\n ],\n declarations: [\n TuiLineClampComponent,\n TuiLineClampBoxComponent,\n TuiLineClampPositionDirective,\n ],\n exports: [TuiLineClampComponent],\n})\nexport class TuiLineClampModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.TuiLineClampPositionDirective","i4"],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-kit-components-line-clamp.js","sources":["../../../projects/kit/components/line-clamp/line-clamp-box.component.ts","../../../projects/kit/components/line-clamp/line-clamp-options.ts","../../../projects/kit/components/line-clamp/line-clamp-position.directive.ts","../../../projects/kit/components/line-clamp/line-clamp.component.ts","../../../projects/kit/components/line-clamp/line-clamp.template.html","../../../projects/kit/components/line-clamp/line-clamp.module.ts","../../../projects/kit/components/line-clamp/taiga-ui-kit-components-line-clamp.ts"],"sourcesContent":["import {ChangeDetectionStrategy, Component, HostBinding} from '@angular/core';\nimport {TuiDestroyService, TuiHoveredService} from '@taiga-ui/cdk';\nimport {\n tuiFadeIn,\n TuiHintComponent,\n TuiHintDirective,\n tuiPositionAccessorFor,\n TuiPositionService,\n tuiRectAccessorFor,\n} from '@taiga-ui/core';\n\n@Component({\n selector: 'tui-line-clamp-box',\n template: `\n <ng-container *polymorpheusOutlet=\"content as text\">{{ text }}</ng-container>\n `,\n styleUrls: ['./line-clamp-box.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n TuiDestroyService,\n TuiPositionService,\n TuiHoveredService,\n tuiPositionAccessorFor('hint'),\n tuiRectAccessorFor('hint', TuiHintDirective),\n ],\n animations: [tuiFadeIn],\n})\nexport class TuiLineClampBoxComponent extends TuiHintComponent {\n @HostBinding('style.minWidth.px')\n get width(): number {\n return this.accessor.getClientRect().width;\n }\n}\n","import {InjectionToken, ValueProvider} from '@angular/core';\n\nexport interface TuiLineClampOptions {\n readonly showHint: boolean;\n}\n\nexport const TUI_LINE_CLAMP_DEFAULT_OPTIONS: TuiLineClampOptions = {\n showHint: true,\n};\n\n/**\n * Default parameters for LineClamp component\n */\nexport const TUI_LINE_CLAMP_OPTIONS = new InjectionToken<TuiLineClampOptions>(\n `[TUI_LINE_CLAMP_OPTIONS]`,\n {\n factory: () => TUI_LINE_CLAMP_DEFAULT_OPTIONS,\n },\n);\n\nexport const tuiLineClampOptionsProvider: (\n options: Partial<TuiLineClampOptions>,\n) => ValueProvider = (options: Partial<TuiLineClampOptions>) => ({\n provide: TUI_LINE_CLAMP_OPTIONS,\n useValue: {...TUI_LINE_CLAMP_DEFAULT_OPTIONS, ...options},\n});\n","import {Directive, Inject} from '@angular/core';\nimport {\n tuiAsPositionAccessor,\n TuiHintDirective,\n TuiPoint,\n TuiPositionAccessor,\n TuiRectAccessor,\n} from '@taiga-ui/core';\n\n@Directive({\n selector: '[tuiHintCustomPosition]',\n providers: [tuiAsPositionAccessor(TuiLineClampPositionDirective)],\n})\nexport class TuiLineClampPositionDirective extends TuiPositionAccessor {\n readonly type = 'hint';\n\n constructor(@Inject(TuiHintDirective) private readonly accessor: TuiRectAccessor) {\n super();\n }\n\n getPosition(): TuiPoint {\n const {top, left} = this.accessor.getClientRect();\n\n return [top, left];\n }\n}\n","import {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n DoCheck,\n ElementRef,\n HostBinding,\n HostListener,\n Inject,\n Input,\n NgZone,\n Output,\n Renderer2,\n ViewChild,\n} from '@angular/core';\nimport {\n tuiDefaultProp,\n tuiIsCurrentTarget,\n tuiTypedFromEvent,\n tuiZonefree,\n} from '@taiga-ui/cdk';\nimport {TUI_HINT_COMPONENT, TuiHintDirective} from '@taiga-ui/core';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\nimport {BehaviorSubject, Observable, of, Subject, timer} from 'rxjs';\nimport {\n distinctUntilChanged,\n filter,\n map,\n pairwise,\n startWith,\n switchMap,\n} from 'rxjs/operators';\n\nimport {TuiLineClampBoxComponent} from './line-clamp-box.component';\nimport {TUI_LINE_CLAMP_OPTIONS, TuiLineClampOptions} from './line-clamp-options';\n\n@Component({\n selector: 'tui-line-clamp',\n templateUrl: './line-clamp.template.html',\n styleUrls: ['./line-clamp.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: TUI_HINT_COMPONENT,\n useValue: TuiLineClampBoxComponent,\n },\n ],\n})\nexport class TuiLineClampComponent implements DoCheck, AfterViewInit {\n @ViewChild(TuiHintDirective, {read: ElementRef})\n private readonly outlet?: ElementRef<HTMLElement>;\n\n private readonly linesLimit$ = new BehaviorSubject(1);\n private readonly isOverflown$ = new Subject<boolean>();\n private initialized = false;\n\n @HostBinding('style.maxHeight.px')\n maxHeight: number | null = null;\n\n @HostBinding('style.height.px')\n height = 0;\n\n @Input()\n @tuiDefaultProp()\n set linesLimit(linesLimit: number) {\n this.linesLimit$.next(linesLimit);\n }\n\n @Input()\n @tuiDefaultProp()\n lineHeight = 24;\n\n @Input()\n @tuiDefaultProp()\n content: PolymorpheusContent = '';\n\n @Output()\n readonly overflownChange: Observable<boolean> = this.isOverflown$.pipe(\n distinctUntilChanged(),\n );\n\n lineClamp$ = this.linesLimit$.pipe(\n startWith(1),\n pairwise(),\n switchMap(([prev, next]) =>\n next >= prev\n ? of(next)\n : tuiTypedFromEvent(this.elementRef.nativeElement, 'transitionend').pipe(\n filter(tuiIsCurrentTarget),\n map(() => next),\n ),\n ),\n );\n\n constructor(\n @Inject(ElementRef) private readonly elementRef: ElementRef<HTMLElement>,\n @Inject(Renderer2) private readonly renderer: Renderer2,\n @Inject(ChangeDetectorRef) private readonly cd: ChangeDetectorRef,\n @Inject(NgZone) private readonly ngZone: NgZone,\n @Inject(TUI_LINE_CLAMP_OPTIONS) private readonly options: TuiLineClampOptions,\n ) {\n this.skipInitialTransition();\n }\n\n get overflown(): boolean {\n if (!this.outlet) {\n return false;\n }\n\n const {scrollHeight, scrollWidth} = this.outlet.nativeElement;\n const {clientHeight, clientWidth} = this.elementRef.nativeElement;\n\n // 4px buffer for IE/Edge incorrectly rounding scrollHeight\n return scrollHeight - clientHeight > 4 || scrollWidth - clientWidth > 0;\n }\n\n get computedContent(): PolymorpheusContent {\n return this.options.showHint && this.overflown ? this.content : '';\n }\n\n @HostListener('transitionend')\n updateView(): void {\n this.cd.detectChanges();\n }\n\n ngAfterViewInit(): void {\n this.initialized = true;\n }\n\n ngDoCheck(): void {\n this.updateStaticallyHostBinding();\n this.isOverflown$.next(this.overflown);\n }\n\n private skipInitialTransition(): void {\n timer(0)\n .pipe(tuiZonefree(this.ngZone))\n .subscribe(() => {\n this.renderer.addClass(this.elementRef.nativeElement, '_initialized');\n this.cd.detectChanges();\n });\n }\n\n private updateStaticallyHostBinding(): void {\n if (this.outlet) {\n this.height = this.outlet.nativeElement.scrollHeight + 4;\n }\n\n if (this.initialized) {\n this.maxHeight = this.lineHeight * this.linesLimit$.value;\n }\n }\n}\n","<div\n *tuiLet=\"lineClamp$ | async as lineClamp\"\n tuiHintCustomPosition\n class=\"t-wrapper\"\n [tuiHint]=\"computedContent\"\n [style.-webkit-line-clamp]=\"lineClamp\"\n [style.word-break]=\"(lineClamp || 0) > 1 ? 'break-word' : 'break-all'\"\n (tuiResize)=\"updateView()\"\n>\n <ng-container *polymorpheusOutlet=\"content as text\">\n {{ text }}\n </ng-container>\n</div>\n","import {CommonModule} from '@angular/common';\nimport {NgModule} from '@angular/core';\nimport {TuiLetModule, TuiResizeModule} from '@taiga-ui/cdk';\nimport {TuiHintModule} from '@taiga-ui/core';\nimport {PolymorpheusModule} from '@tinkoff/ng-polymorpheus';\n\nimport {TuiLineClampComponent} from './line-clamp.component';\nimport {TuiLineClampBoxComponent} from './line-clamp-box.component';\nimport {TuiLineClampPositionDirective} from './line-clamp-position.directive';\n\n@NgModule({\n imports: [\n CommonModule,\n PolymorpheusModule,\n TuiHintModule,\n TuiResizeModule,\n TuiLetModule,\n ],\n declarations: [\n TuiLineClampComponent,\n TuiLineClampBoxComponent,\n TuiLineClampPositionDirective,\n ],\n exports: [TuiLineClampComponent],\n})\nexport class TuiLineClampModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.TuiLineClampPositionDirective","i4"],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Injectable, Inject } from '@angular/core';
3
+ import * as i1 from '@taiga-ui/core';
4
+ import { TuiDialogService } from '@taiga-ui/core';
5
+ import { TUI_PROMPT } from '@taiga-ui/kit/components';
6
+ import { defer, of } from 'rxjs';
7
+
8
+ class TuiDialogFormService {
9
+ constructor(dialogService) {
10
+ this.dialogService = dialogService;
11
+ this.dirty = false;
12
+ }
13
+ markAsDirty() {
14
+ this.dirty = true;
15
+ }
16
+ markAsPristine() {
17
+ this.dirty = false;
18
+ }
19
+ withPrompt(options) {
20
+ return defer(() => this.dirty
21
+ ? this.dialogService.open(TUI_PROMPT, Object.assign({ size: `s` }, options))
22
+ : of(true));
23
+ }
24
+ }
25
+ TuiDialogFormService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiDialogFormService, deps: [{ token: TuiDialogService }], target: i0.ɵɵFactoryTarget.Injectable });
26
+ TuiDialogFormService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiDialogFormService });
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TuiDialogFormService, decorators: [{
28
+ type: Injectable
29
+ }], ctorParameters: function () { return [{ type: i1.TuiDialogService, decorators: [{
30
+ type: Inject,
31
+ args: [TuiDialogService]
32
+ }] }]; } });
33
+
34
+ /**
35
+ * Generated bundle index. Do not edit.
36
+ */
37
+
38
+ export { TuiDialogFormService };
39
+ //# sourceMappingURL=taiga-ui-kit-services.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"taiga-ui-kit-services.js","sources":["../../../projects/kit/services/dialog-form.service.ts","../../../projects/kit/services/taiga-ui-kit-services.ts"],"sourcesContent":["import {Inject, Injectable} from '@angular/core';\nimport {TuiDialogOptions, TuiDialogService} from '@taiga-ui/core';\nimport {TUI_PROMPT, TuiPromptData} from '@taiga-ui/kit/components';\nimport {defer, Observable, of} from 'rxjs';\n\n@Injectable()\nexport class TuiDialogFormService {\n private dirty = false;\n\n constructor(\n @Inject(TuiDialogService) private readonly dialogService: TuiDialogService,\n ) {}\n\n markAsDirty(): void {\n this.dirty = true;\n }\n\n markAsPristine(): void {\n this.dirty = false;\n }\n\n withPrompt(options: Partial<TuiDialogOptions<TuiPromptData>>): Observable<boolean> {\n return defer(() =>\n this.dirty\n ? this.dialogService.open<boolean>(TUI_PROMPT, {\n size: `s`,\n ...options,\n })\n : of(true),\n );\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;MAMa,oBAAoB,CAAA;AAG7B,IAAA,WAAA,CAC+C,aAA+B,EAAA;QAA/B,IAAa,CAAA,aAAA,GAAb,aAAa,CAAkB;QAHtE,IAAK,CAAA,KAAA,GAAG,KAAK,CAAC;KAIlB;IAEJ,WAAW,GAAA;AACP,QAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;KACrB;IAED,cAAc,GAAA;AACV,QAAA,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;KACtB;AAED,IAAA,UAAU,CAAC,OAAiD,EAAA;AACxD,QAAA,OAAO,KAAK,CAAC,MACT,IAAI,CAAC,KAAK;AACN,cAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAU,UAAU,EAAA,MAAA,CAAA,MAAA,CAAA,EACvC,IAAI,EAAE,CAAG,CAAA,CAAA,EAAA,EACN,OAAO,CACZ,CAAA;AACJ,cAAE,EAAE,CAAC,IAAI,CAAC,CACjB,CAAC;KACL;;AAxBQ,oBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,kBAIjB,gBAAgB,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;sHAJnB,oBAAoB,EAAA,CAAA,CAAA;4FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBADhC,UAAU;;0BAKF,MAAM;2BAAC,gBAAgB,CAAA;;;ACVhC;;AAEG;;;;"}
@@ -6,6 +6,7 @@ export * from '@taiga-ui/kit/interfaces';
6
6
  export * from '@taiga-ui/kit/internal';
7
7
  export * from '@taiga-ui/kit/pipes';
8
8
  export * from '@taiga-ui/kit/providers';
9
+ export * from '@taiga-ui/kit/services';
9
10
  export * from '@taiga-ui/kit/tokens';
10
11
  export * from '@taiga-ui/kit/types';
11
12
  export * from '@taiga-ui/kit/utils';
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit.js","sources":["../../../projects/kit/taiga-ui-kit.ts"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;AAAA;;AAEG"}
1
+ {"version":3,"file":"taiga-ui-kit.js","sources":["../../../projects/kit/taiga-ui-kit.ts"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA;;AAEG"}
package/index.d.ts CHANGED
@@ -6,6 +6,7 @@ export * from '@taiga-ui/kit/interfaces';
6
6
  export * from '@taiga-ui/kit/internal';
7
7
  export * from '@taiga-ui/kit/pipes';
8
8
  export * from '@taiga-ui/kit/providers';
9
+ export * from '@taiga-ui/kit/services';
9
10
  export * from '@taiga-ui/kit/tokens';
10
11
  export * from '@taiga-ui/kit/types';
11
12
  export * from '@taiga-ui/kit/utils';