@taiga-ui/kit 3.0.0-rc.0 → 3.0.0-rc.1

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 (585) hide show
  1. package/bundles/taiga-ui-kit-components-accordion.umd.js +5 -17
  2. package/bundles/taiga-ui-kit-components-accordion.umd.js.map +1 -1
  3. package/bundles/taiga-ui-kit-components-action.umd.js +3 -9
  4. package/bundles/taiga-ui-kit-components-action.umd.js.map +1 -1
  5. package/bundles/taiga-ui-kit-components-arrow.umd.js +1 -1
  6. package/bundles/taiga-ui-kit-components-arrow.umd.js.map +1 -1
  7. package/bundles/taiga-ui-kit-components-avatar.umd.js +3 -3
  8. package/bundles/taiga-ui-kit-components-avatar.umd.js.map +1 -1
  9. package/bundles/taiga-ui-kit-components-badge.umd.js +3 -3
  10. package/bundles/taiga-ui-kit-components-badge.umd.js.map +1 -1
  11. package/bundles/taiga-ui-kit-components-badged-content.umd.js +3 -6
  12. package/bundles/taiga-ui-kit-components-badged-content.umd.js.map +1 -1
  13. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.js +1 -1
  14. package/bundles/taiga-ui-kit-components-breadcrumbs.umd.js.map +1 -1
  15. package/bundles/taiga-ui-kit-components-calendar-month.umd.js +0 -1
  16. package/bundles/taiga-ui-kit-components-calendar-month.umd.js.map +1 -1
  17. package/bundles/taiga-ui-kit-components-calendar-range.umd.js +12 -8
  18. package/bundles/taiga-ui-kit-components-calendar-range.umd.js.map +1 -1
  19. package/bundles/taiga-ui-kit-components-carousel.umd.js +4 -5
  20. package/bundles/taiga-ui-kit-components-carousel.umd.js.map +1 -1
  21. package/bundles/taiga-ui-kit-components-checkbox-block.umd.js +7 -10
  22. package/bundles/taiga-ui-kit-components-checkbox-block.umd.js.map +1 -1
  23. package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.js +5 -9
  24. package/bundles/taiga-ui-kit-components-checkbox-labeled.umd.js.map +1 -1
  25. package/bundles/taiga-ui-kit-components-checkbox.umd.js +5 -9
  26. package/bundles/taiga-ui-kit-components-checkbox.umd.js.map +1 -1
  27. package/bundles/taiga-ui-kit-components-combo-box.umd.js +21 -41
  28. package/bundles/taiga-ui-kit-components-combo-box.umd.js.map +1 -1
  29. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js +5 -26
  30. package/bundles/taiga-ui-kit-components-data-list-wrapper.umd.js.map +1 -1
  31. package/bundles/taiga-ui-kit-components-files.umd.js +1 -2
  32. package/bundles/taiga-ui-kit-components-files.umd.js.map +1 -1
  33. package/bundles/taiga-ui-kit-components-filter.umd.js +1 -1
  34. package/bundles/taiga-ui-kit-components-filter.umd.js.map +1 -1
  35. package/bundles/taiga-ui-kit-components-input-copy.umd.js +21 -36
  36. package/bundles/taiga-ui-kit-components-input-copy.umd.js.map +1 -1
  37. package/bundles/taiga-ui-kit-components-input-count.umd.js +12 -35
  38. package/bundles/taiga-ui-kit-components-input-count.umd.js.map +1 -1
  39. package/bundles/taiga-ui-kit-components-input-date-range.umd.js +19 -42
  40. package/bundles/taiga-ui-kit-components-input-date-range.umd.js.map +1 -1
  41. package/bundles/taiga-ui-kit-components-input-date-time.umd.js +18 -42
  42. package/bundles/taiga-ui-kit-components-input-date-time.umd.js.map +1 -1
  43. package/bundles/taiga-ui-kit-components-input-date.umd.js +17 -41
  44. package/bundles/taiga-ui-kit-components-input-date.umd.js.map +1 -1
  45. package/bundles/taiga-ui-kit-components-input-files.umd.js +4 -17
  46. package/bundles/taiga-ui-kit-components-input-files.umd.js.map +1 -1
  47. package/bundles/taiga-ui-kit-components-input-inline.umd.js +2 -8
  48. package/bundles/taiga-ui-kit-components-input-inline.umd.js.map +1 -1
  49. package/bundles/taiga-ui-kit-components-input-month-range.umd.js +19 -37
  50. package/bundles/taiga-ui-kit-components-input-month-range.umd.js.map +1 -1
  51. package/bundles/taiga-ui-kit-components-input-month.umd.js +19 -37
  52. package/bundles/taiga-ui-kit-components-input-month.umd.js.map +1 -1
  53. package/bundles/taiga-ui-kit-components-input-number.umd.js +14 -37
  54. package/bundles/taiga-ui-kit-components-input-number.umd.js.map +1 -1
  55. package/bundles/taiga-ui-kit-components-input-password.umd.js +29 -56
  56. package/bundles/taiga-ui-kit-components-input-password.umd.js.map +1 -1
  57. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js +38 -51
  58. package/bundles/taiga-ui-kit-components-input-phone-international.umd.js.map +1 -1
  59. package/bundles/taiga-ui-kit-components-input-phone.umd.js +30 -57
  60. package/bundles/taiga-ui-kit-components-input-phone.umd.js.map +1 -1
  61. package/bundles/taiga-ui-kit-components-input-range.umd.js +17 -13
  62. package/bundles/taiga-ui-kit-components-input-range.umd.js.map +1 -1
  63. package/bundles/taiga-ui-kit-components-input-slider.umd.js +14 -12
  64. package/bundles/taiga-ui-kit-components-input-slider.umd.js.map +1 -1
  65. package/bundles/taiga-ui-kit-components-input-tag.umd.js +33 -50
  66. package/bundles/taiga-ui-kit-components-input-tag.umd.js.map +1 -1
  67. package/bundles/taiga-ui-kit-components-input-time.umd.js +8 -15
  68. package/bundles/taiga-ui-kit-components-input-time.umd.js.map +1 -1
  69. package/bundles/taiga-ui-kit-components-input.umd.js +16 -33
  70. package/bundles/taiga-ui-kit-components-input.umd.js.map +1 -1
  71. package/bundles/taiga-ui-kit-components-line-clamp.umd.js +108 -18
  72. package/bundles/taiga-ui-kit-components-line-clamp.umd.js.map +1 -1
  73. package/bundles/taiga-ui-kit-components-marker-icon.umd.js +1 -1
  74. package/bundles/taiga-ui-kit-components-marker-icon.umd.js.map +1 -1
  75. package/bundles/taiga-ui-kit-components-multi-select-option.umd.js +3 -3
  76. package/bundles/taiga-ui-kit-components-multi-select-option.umd.js.map +1 -1
  77. package/bundles/taiga-ui-kit-components-multi-select.umd.js +34 -69
  78. package/bundles/taiga-ui-kit-components-multi-select.umd.js.map +1 -1
  79. package/bundles/taiga-ui-kit-components-pagination.umd.js +10 -23
  80. package/bundles/taiga-ui-kit-components-pagination.umd.js.map +1 -1
  81. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.js +2 -15
  82. package/bundles/taiga-ui-kit-components-pdf-viewer.umd.js.map +1 -1
  83. package/bundles/taiga-ui-kit-components-progress.umd.js +5 -15
  84. package/bundles/taiga-ui-kit-components-progress.umd.js.map +1 -1
  85. package/bundles/taiga-ui-kit-components-radio-block.umd.js +7 -10
  86. package/bundles/taiga-ui-kit-components-radio-block.umd.js.map +1 -1
  87. package/bundles/taiga-ui-kit-components-radio-labeled.umd.js +5 -9
  88. package/bundles/taiga-ui-kit-components-radio-labeled.umd.js.map +1 -1
  89. package/bundles/taiga-ui-kit-components-radio-list.umd.js +5 -9
  90. package/bundles/taiga-ui-kit-components-radio-list.umd.js.map +1 -1
  91. package/bundles/taiga-ui-kit-components-radio.umd.js +5 -10
  92. package/bundles/taiga-ui-kit-components-radio.umd.js.map +1 -1
  93. package/bundles/taiga-ui-kit-components-range.umd.js +40 -86
  94. package/bundles/taiga-ui-kit-components-range.umd.js.map +1 -1
  95. package/bundles/taiga-ui-kit-components-rating.umd.js +4 -8
  96. package/bundles/taiga-ui-kit-components-rating.umd.js.map +1 -1
  97. package/bundles/taiga-ui-kit-components-select-option.umd.js +5 -5
  98. package/bundles/taiga-ui-kit-components-select-option.umd.js.map +1 -1
  99. package/bundles/taiga-ui-kit-components-select.umd.js +20 -40
  100. package/bundles/taiga-ui-kit-components-select.umd.js.map +1 -1
  101. package/bundles/taiga-ui-kit-components-slider.umd.js +40 -38
  102. package/bundles/taiga-ui-kit-components-slider.umd.js.map +1 -1
  103. package/bundles/taiga-ui-kit-components-stepper.umd.js +9 -7
  104. package/bundles/taiga-ui-kit-components-stepper.umd.js.map +1 -1
  105. package/bundles/taiga-ui-kit-components-tabs.umd.js +40 -40
  106. package/bundles/taiga-ui-kit-components-tabs.umd.js.map +1 -1
  107. package/bundles/taiga-ui-kit-components-tag.umd.js +6 -17
  108. package/bundles/taiga-ui-kit-components-tag.umd.js.map +1 -1
  109. package/bundles/taiga-ui-kit-components-text-area.umd.js +18 -31
  110. package/bundles/taiga-ui-kit-components-text-area.umd.js.map +1 -1
  111. package/bundles/taiga-ui-kit-components-toggle.umd.js +5 -9
  112. package/bundles/taiga-ui-kit-components-toggle.umd.js.map +1 -1
  113. package/bundles/taiga-ui-kit-components-tree.umd.js +2 -8
  114. package/bundles/taiga-ui-kit-components-tree.umd.js.map +1 -1
  115. package/bundles/taiga-ui-kit-constants.umd.js +334 -3
  116. package/bundles/taiga-ui-kit-constants.umd.js.map +1 -1
  117. package/bundles/{taiga-ui-kit-directives-dropdown-context.umd.js → taiga-ui-kit-directives-data-list-dropdown-manager.umd.js} +117 -141
  118. package/bundles/taiga-ui-kit-directives-data-list-dropdown-manager.umd.js.map +1 -0
  119. package/bundles/taiga-ui-kit-directives-highlight.umd.js +0 -1
  120. package/bundles/taiga-ui-kit-directives-highlight.umd.js.map +1 -1
  121. package/bundles/taiga-ui-kit-directives-lazy-loading.umd.js +2 -2
  122. package/bundles/taiga-ui-kit-directives-lazy-loading.umd.js.map +1 -1
  123. package/bundles/taiga-ui-kit-directives-present.umd.js +2 -2
  124. package/bundles/taiga-ui-kit-directives-present.umd.js.map +1 -1
  125. package/bundles/taiga-ui-kit-directives-project-class.umd.js +0 -3
  126. package/bundles/taiga-ui-kit-directives-project-class.umd.js.map +1 -1
  127. package/bundles/taiga-ui-kit-directives.umd.js +6 -18
  128. package/bundles/taiga-ui-kit-directives.umd.js.map +1 -1
  129. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js +4 -4
  130. package/bundles/taiga-ui-kit-internal-primitive-calendar-range.umd.js.map +1 -1
  131. package/bundles/taiga-ui-kit-pipes-field-error.umd.js +0 -2
  132. package/bundles/taiga-ui-kit-pipes-field-error.umd.js.map +1 -1
  133. package/bundles/taiga-ui-kit-pipes-filter-by-input.umd.js +3 -3
  134. package/bundles/taiga-ui-kit-pipes-filter-by-input.umd.js.map +1 -1
  135. package/bundles/taiga-ui-kit-providers.umd.js +11 -42
  136. package/bundles/taiga-ui-kit-providers.umd.js.map +1 -1
  137. package/bundles/taiga-ui-kit-tokens.umd.js +17 -12
  138. package/bundles/taiga-ui-kit-tokens.umd.js.map +1 -1
  139. package/bundles/taiga-ui-kit-utils-files.umd.js +3 -15
  140. package/bundles/taiga-ui-kit-utils-files.umd.js.map +1 -1
  141. package/bundles/taiga-ui-kit-utils-format.umd.js +1 -5
  142. package/bundles/taiga-ui-kit-utils-format.umd.js.map +1 -1
  143. package/bundles/taiga-ui-kit-utils-mask.umd.js +3 -9
  144. package/bundles/taiga-ui-kit-utils-mask.umd.js.map +1 -1
  145. package/bundles/taiga-ui-kit-utils-math.umd.js +1 -1
  146. package/bundles/taiga-ui-kit-utils-math.umd.js.map +1 -1
  147. package/bundles/taiga-ui-kit-utils-miscellaneous.umd.js +1 -5
  148. package/bundles/taiga-ui-kit-utils-miscellaneous.umd.js.map +1 -1
  149. package/bundles/taiga-ui-kit-utils.umd.js +4 -10
  150. package/bundles/taiga-ui-kit-utils.umd.js.map +1 -1
  151. package/components/badge/badge.component.d.ts +2 -2
  152. package/components/badged-content/badged-content.component.d.ts +2 -2
  153. package/components/combo-box/index.d.ts +0 -1
  154. package/components/filter/filter.component.d.ts +1 -1
  155. package/components/input/index.d.ts +0 -1
  156. package/components/input-copy/index.d.ts +0 -1
  157. package/components/input-copy/input-copy.component.d.ts +4 -4
  158. package/components/input-date/index.d.ts +0 -1
  159. package/components/input-date-range/index.d.ts +0 -1
  160. package/components/input-date-time/index.d.ts +0 -1
  161. package/components/input-month/index.d.ts +0 -1
  162. package/components/input-month-range/index.d.ts +0 -1
  163. package/components/input-password/input-password.component.d.ts +2 -2
  164. package/components/input-password/input-password.module.d.ts +2 -3
  165. package/components/input-phone/index.d.ts +0 -1
  166. package/components/input-phone/input-phone.component.d.ts +2 -2
  167. package/components/input-phone-international/utils/extract-value-from-event.d.ts +1 -5
  168. package/components/input-range/input-range.component.d.ts +1 -0
  169. package/components/input-slider/input-slider.component.d.ts +1 -0
  170. package/components/input-tag/input-tag-options.d.ts +4 -1
  171. package/components/input-tag/input-tag.component.d.ts +3 -5
  172. package/components/line-clamp/index.d.ts +1 -0
  173. package/components/line-clamp/line-clamp-box.component.d.ts +7 -0
  174. package/components/line-clamp/line-clamp-position.directive.d.ts +9 -0
  175. package/components/line-clamp/line-clamp.module.d.ts +7 -5
  176. package/components/multi-select/multi-select-group/multi-select-group.directive.d.ts +0 -3
  177. package/components/pagination/pagination.component.d.ts +0 -1
  178. package/components/progress/progress-segmented/progress-segmented.component.d.ts +0 -2
  179. package/components/range/range.component.d.ts +7 -23
  180. package/components/select/index.d.ts +0 -1
  181. package/components/slider/helpers/slider-key-steps.directive.d.ts +1 -3
  182. package/components/slider/slider.component.d.ts +5 -3
  183. package/components/stepper/step/step.component.d.ts +2 -2
  184. package/components/tabs/tab/tab.providers.d.ts +1 -4
  185. package/components/tabs/tabs-with-more/tabs-with-more.component.d.ts +2 -1
  186. package/components/tabs/tabs-with-more/tabs-with-more.providers.d.ts +3 -4
  187. package/components/tag/tag.component.d.ts +1 -3
  188. package/components/text-area/index.d.ts +0 -1
  189. package/components/tree/components/tree-item/tree-item.providers.d.ts +0 -1
  190. package/directives/data-list-dropdown-manager/data-list-dropdown-manager.directive.d.ts +15 -0
  191. package/directives/data-list-dropdown-manager/data-list-dropdown-manager.module.d.ts +7 -0
  192. package/directives/data-list-dropdown-manager/index.d.ts +2 -0
  193. package/directives/data-list-dropdown-manager/package.json +10 -0
  194. package/directives/data-list-dropdown-manager/taiga-ui-kit-directives-data-list-dropdown-manager.d.ts +5 -0
  195. package/directives/index.d.ts +1 -3
  196. package/esm2015/components/accordion/accordion-item/accordion-item.component.js +5 -17
  197. package/esm2015/components/accordion/accordion.component.js +5 -5
  198. package/esm2015/components/action/action.component.js +6 -12
  199. package/esm2015/components/arrow/arrow.component.js +3 -3
  200. package/esm2015/components/avatar/avatar.component.js +6 -6
  201. package/esm2015/components/badge/badge.component.js +6 -6
  202. package/esm2015/components/badged-content/badged-content.component.js +4 -7
  203. package/esm2015/components/breadcrumbs/breadcrumbs.component.js +2 -2
  204. package/esm2015/components/calendar-month/calendar-month.component.js +1 -2
  205. package/esm2015/components/calendar-range/calendar-range.component.js +12 -11
  206. package/esm2015/components/carousel/carousel-scroll.directive.js +3 -3
  207. package/esm2015/components/carousel/carousel.component.js +4 -5
  208. package/esm2015/components/carousel/carousel.directive.js +3 -3
  209. package/esm2015/components/checkbox/checkbox.component.js +8 -12
  210. package/esm2015/components/checkbox-block/checkbox-block.component.js +10 -13
  211. package/esm2015/components/checkbox-labeled/checkbox-labeled.component.js +8 -12
  212. package/esm2015/components/combo-box/combo-box.component.js +20 -8
  213. package/esm2015/components/combo-box/combo-box.directive.js +5 -15
  214. package/esm2015/components/combo-box/index.js +1 -2
  215. package/esm2015/components/data-list-wrapper/data-list-group-wrapper.component.js +5 -15
  216. package/esm2015/components/data-list-wrapper/data-list-wrapper.component.js +5 -15
  217. package/esm2015/components/data-list-wrapper/data-list-wrapper.js +3 -4
  218. package/esm2015/components/files/file/file.component.js +3 -4
  219. package/esm2015/components/filter/filter.component.js +2 -2
  220. package/esm2015/components/input/index.js +1 -2
  221. package/esm2015/components/input/input.component.js +18 -7
  222. package/esm2015/components/input/input.directive.js +5 -15
  223. package/esm2015/components/input-copy/index.js +1 -2
  224. package/esm2015/components/input-copy/input-copy.component.js +18 -10
  225. package/esm2015/components/input-copy/input-copy.directive.js +5 -15
  226. package/esm2015/components/input-count/input-count.component.js +14 -27
  227. package/esm2015/components/input-count/input-count.directive.js +5 -15
  228. package/esm2015/components/input-date/index.js +1 -2
  229. package/esm2015/components/input-date/input-date.component.js +15 -9
  230. package/esm2015/components/input-date/input-date.directive.js +5 -15
  231. package/esm2015/components/input-date-range/index.js +1 -2
  232. package/esm2015/components/input-date-range/input-date-range.component.js +18 -11
  233. package/esm2015/components/input-date-range/input-date-range.directive.js +5 -15
  234. package/esm2015/components/input-date-time/index.js +1 -2
  235. package/esm2015/components/input-date-time/input-date-time.component.js +16 -10
  236. package/esm2015/components/input-date-time/input-date-time.directive.js +5 -15
  237. package/esm2015/components/input-files/input-files.component.js +8 -21
  238. package/esm2015/components/input-inline/input-inline.component.js +5 -11
  239. package/esm2015/components/input-month/index.js +1 -2
  240. package/esm2015/components/input-month/input-month.component.js +17 -8
  241. package/esm2015/components/input-month/input-month.directive.js +5 -17
  242. package/esm2015/components/input-month-range/index.js +1 -2
  243. package/esm2015/components/input-month-range/input-month-range.component.js +17 -8
  244. package/esm2015/components/input-month-range/input-month-range.directive.js +5 -17
  245. package/esm2015/components/input-number/input-number.component.js +16 -29
  246. package/esm2015/components/input-number/input-number.directive.js +5 -15
  247. package/esm2015/components/input-password/input-password.component.js +18 -32
  248. package/esm2015/components/input-password/input-password.directive.js +5 -15
  249. package/esm2015/components/input-password/input-password.module.js +1 -5
  250. package/esm2015/components/input-phone/index.js +1 -2
  251. package/esm2015/components/input-phone/input-phone.component.js +28 -14
  252. package/esm2015/components/input-phone/input-phone.directive.js +5 -15
  253. package/esm2015/components/input-phone-international/input-phone-international.component.js +16 -22
  254. package/esm2015/components/input-phone-international/utils/extract-value-from-event.js +5 -11
  255. package/esm2015/components/input-range/input-range.component.js +20 -16
  256. package/esm2015/components/input-slider/input-slider.component.js +13 -15
  257. package/esm2015/components/input-tag/input-tag-options.js +8 -1
  258. package/esm2015/components/input-tag/input-tag.component.js +24 -54
  259. package/esm2015/components/input-time/input-time.component.js +11 -18
  260. package/esm2015/components/line-clamp/index.js +2 -1
  261. package/esm2015/components/line-clamp/line-clamp-box.component.js +32 -0
  262. package/esm2015/components/line-clamp/line-clamp-position.directive.js +26 -0
  263. package/esm2015/components/line-clamp/line-clamp.component.js +22 -9
  264. package/esm2015/components/line-clamp/line-clamp.module.js +30 -6
  265. package/esm2015/components/marker-icon/marker-icon.component.js +2 -2
  266. package/esm2015/components/multi-select/multi-select-group/multi-select-group.component.js +11 -21
  267. package/esm2015/components/multi-select/multi-select-group/multi-select-group.directive.js +17 -28
  268. package/esm2015/components/multi-select/multi-select.component.js +15 -30
  269. package/esm2015/components/multi-select-option/multi-select-option.component.js +6 -6
  270. package/esm2015/components/pagination/pagination.component.js +13 -25
  271. package/esm2015/components/pdf-viewer/pdf-viewer.module.js +4 -17
  272. package/esm2015/components/progress/progress-bar/progress-color-segments.directive.js +4 -4
  273. package/esm2015/components/progress/progress-circle/progress-circle.component.js +2 -2
  274. package/esm2015/components/progress/progress-segmented/progress-segmented.component.js +3 -11
  275. package/esm2015/components/radio/radio.component.js +8 -13
  276. package/esm2015/components/radio-block/radio-block.component.js +10 -13
  277. package/esm2015/components/radio-labeled/radio-labeled.component.js +8 -12
  278. package/esm2015/components/radio-list/radio-list.component.js +8 -12
  279. package/esm2015/components/range/range-change.directive.js +10 -9
  280. package/esm2015/components/range/range.component.js +27 -79
  281. package/esm2015/components/rating/rating.component.js +7 -11
  282. package/esm2015/components/select/index.js +1 -2
  283. package/esm2015/components/select/select.component.js +19 -7
  284. package/esm2015/components/select/select.directive.js +5 -15
  285. package/esm2015/components/select-option/select-option.component.js +7 -7
  286. package/esm2015/components/slider/helpers/slider-key-steps.directive.js +14 -22
  287. package/esm2015/components/slider/helpers/slider-readonly.directive.js +5 -6
  288. package/esm2015/components/slider/slider.component.js +21 -10
  289. package/esm2015/components/stepper/step/step.component.js +5 -5
  290. package/esm2015/components/stepper/stepper.component.js +7 -5
  291. package/esm2015/components/tabs/tab/tab.providers.js +10 -10
  292. package/esm2015/components/tabs/tabs/tabs.component.js +1 -2
  293. package/esm2015/components/tabs/tabs-with-more/tabs-with-more.component.js +18 -17
  294. package/esm2015/components/tabs/tabs-with-more/tabs-with-more.providers.js +9 -11
  295. package/esm2015/components/tag/tag.component.js +10 -20
  296. package/esm2015/components/text-area/index.js +1 -2
  297. package/esm2015/components/text-area/text-area.component.js +19 -8
  298. package/esm2015/components/text-area/text-area.directive.js +5 -15
  299. package/esm2015/components/toggle/toggle.component.js +8 -12
  300. package/esm2015/components/tree/components/tree-item/tree-item.providers.js +2 -6
  301. package/esm2015/components/tree/directives/tree-controller.directive.js +3 -3
  302. package/esm2015/components/tree/misc/tree.service.js +1 -2
  303. package/esm2015/constants/max-day-range-length-mapper.js +5 -4
  304. package/esm2015/directives/data-list-dropdown-manager/data-list-dropdown-manager.directive.js +100 -0
  305. package/esm2015/directives/data-list-dropdown-manager/data-list-dropdown-manager.module.js +16 -0
  306. package/esm2015/directives/data-list-dropdown-manager/index.js +3 -0
  307. package/esm2015/directives/data-list-dropdown-manager/taiga-ui-kit-directives-data-list-dropdown-manager.js +5 -0
  308. package/esm2015/directives/highlight/highlight.directive.js +1 -2
  309. package/esm2015/directives/index.js +2 -4
  310. package/esm2015/directives/lazy-loading/lazy-loading.directive.js +2 -2
  311. package/esm2015/directives/lazy-loading/lazy-loading.service.js +3 -3
  312. package/esm2015/directives/present/present.directive.js +4 -4
  313. package/esm2015/directives/project-class/project-class.directive.js +1 -4
  314. package/esm2015/interfaces/index.js +1 -2
  315. package/esm2015/internal/primitive-calendar-range/primitive-calendar-range.component.js +7 -7
  316. package/esm2015/pipes/field-error/field-error-content-pipe.js +1 -2
  317. package/esm2015/pipes/field-error/field-error-pipe.js +1 -2
  318. package/esm2015/pipes/filter-by-input/filter-by-input.base.js +5 -5
  319. package/esm2015/providers/month-formatter.provider.js +8 -13
  320. package/esm2015/providers/specific-dropdown-controllers.js +6 -29
  321. package/esm2015/tokens/calendar-date-stream.js +15 -0
  322. package/esm2015/tokens/index.js +2 -3
  323. package/esm2015/utils/files/format-size.js +4 -9
  324. package/esm2015/utils/files/get-accept-array.js +2 -7
  325. package/esm2015/utils/format/string-hash-to-hsl.js +2 -5
  326. package/esm2015/utils/index.js +1 -2
  327. package/esm2015/utils/mask/create-auto-corrected-date-pipe.js +3 -8
  328. package/esm2015/utils/mask/create-auto-corrected-date-time-pipe.js +3 -3
  329. package/esm2015/utils/math/key-steps.js +3 -3
  330. package/esm2015/utils/miscellaneous/get-precision.js +2 -5
  331. package/fesm2015/taiga-ui-kit-components-accordion.js +7 -19
  332. package/fesm2015/taiga-ui-kit-components-accordion.js.map +1 -1
  333. package/fesm2015/taiga-ui-kit-components-action.js +5 -11
  334. package/fesm2015/taiga-ui-kit-components-action.js.map +1 -1
  335. package/fesm2015/taiga-ui-kit-components-arrow.js +2 -2
  336. package/fesm2015/taiga-ui-kit-components-arrow.js.map +1 -1
  337. package/fesm2015/taiga-ui-kit-components-avatar.js +5 -5
  338. package/fesm2015/taiga-ui-kit-components-avatar.js.map +1 -1
  339. package/fesm2015/taiga-ui-kit-components-badge.js +4 -4
  340. package/fesm2015/taiga-ui-kit-components-badge.js.map +1 -1
  341. package/fesm2015/taiga-ui-kit-components-badged-content.js +3 -6
  342. package/fesm2015/taiga-ui-kit-components-badged-content.js.map +1 -1
  343. package/fesm2015/taiga-ui-kit-components-breadcrumbs.js +1 -1
  344. package/fesm2015/taiga-ui-kit-components-breadcrumbs.js.map +1 -1
  345. package/fesm2015/taiga-ui-kit-components-calendar-month.js +0 -1
  346. package/fesm2015/taiga-ui-kit-components-calendar-month.js.map +1 -1
  347. package/fesm2015/taiga-ui-kit-components-calendar-range.js +12 -11
  348. package/fesm2015/taiga-ui-kit-components-calendar-range.js.map +1 -1
  349. package/fesm2015/taiga-ui-kit-components-carousel.js +5 -6
  350. package/fesm2015/taiga-ui-kit-components-carousel.js.map +1 -1
  351. package/fesm2015/taiga-ui-kit-components-checkbox-block.js +9 -12
  352. package/fesm2015/taiga-ui-kit-components-checkbox-block.js.map +1 -1
  353. package/fesm2015/taiga-ui-kit-components-checkbox-labeled.js +7 -11
  354. package/fesm2015/taiga-ui-kit-components-checkbox-labeled.js.map +1 -1
  355. package/fesm2015/taiga-ui-kit-components-checkbox.js +7 -11
  356. package/fesm2015/taiga-ui-kit-components-checkbox.js.map +1 -1
  357. package/fesm2015/taiga-ui-kit-components-combo-box.js +22 -41
  358. package/fesm2015/taiga-ui-kit-components-combo-box.js.map +1 -1
  359. package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js +7 -28
  360. package/fesm2015/taiga-ui-kit-components-data-list-wrapper.js.map +1 -1
  361. package/fesm2015/taiga-ui-kit-components-files.js +2 -3
  362. package/fesm2015/taiga-ui-kit-components-files.js.map +1 -1
  363. package/fesm2015/taiga-ui-kit-components-filter.js +1 -1
  364. package/fesm2015/taiga-ui-kit-components-filter.js.map +1 -1
  365. package/fesm2015/taiga-ui-kit-components-input-copy.js +22 -36
  366. package/fesm2015/taiga-ui-kit-components-input-copy.js.map +1 -1
  367. package/fesm2015/taiga-ui-kit-components-input-count.js +15 -38
  368. package/fesm2015/taiga-ui-kit-components-input-count.js.map +1 -1
  369. package/fesm2015/taiga-ui-kit-components-input-date-range.js +20 -44
  370. package/fesm2015/taiga-ui-kit-components-input-date-range.js.map +1 -1
  371. package/fesm2015/taiga-ui-kit-components-input-date-time.js +19 -44
  372. package/fesm2015/taiga-ui-kit-components-input-date-time.js.map +1 -1
  373. package/fesm2015/taiga-ui-kit-components-input-date.js +18 -43
  374. package/fesm2015/taiga-ui-kit-components-input-date.js.map +1 -1
  375. package/fesm2015/taiga-ui-kit-components-input-files.js +7 -20
  376. package/fesm2015/taiga-ui-kit-components-input-files.js.map +1 -1
  377. package/fesm2015/taiga-ui-kit-components-input-inline.js +4 -10
  378. package/fesm2015/taiga-ui-kit-components-input-inline.js.map +1 -1
  379. package/fesm2015/taiga-ui-kit-components-input-month-range.js +20 -37
  380. package/fesm2015/taiga-ui-kit-components-input-month-range.js.map +1 -1
  381. package/fesm2015/taiga-ui-kit-components-input-month.js +20 -37
  382. package/fesm2015/taiga-ui-kit-components-input-month.js.map +1 -1
  383. package/fesm2015/taiga-ui-kit-components-input-number.js +17 -40
  384. package/fesm2015/taiga-ui-kit-components-input-number.js.map +1 -1
  385. package/fesm2015/taiga-ui-kit-components-input-password.js +20 -47
  386. package/fesm2015/taiga-ui-kit-components-input-password.js.map +1 -1
  387. package/fesm2015/taiga-ui-kit-components-input-phone-international.js +18 -30
  388. package/fesm2015/taiga-ui-kit-components-input-phone-international.js.map +1 -1
  389. package/fesm2015/taiga-ui-kit-components-input-phone.js +31 -57
  390. package/fesm2015/taiga-ui-kit-components-input-phone.js.map +1 -1
  391. package/fesm2015/taiga-ui-kit-components-input-range.js +19 -15
  392. package/fesm2015/taiga-ui-kit-components-input-range.js.map +1 -1
  393. package/fesm2015/taiga-ui-kit-components-input-slider.js +12 -14
  394. package/fesm2015/taiga-ui-kit-components-input-slider.js.map +1 -1
  395. package/fesm2015/taiga-ui-kit-components-input-tag.js +33 -55
  396. package/fesm2015/taiga-ui-kit-components-input-tag.js.map +1 -1
  397. package/fesm2015/taiga-ui-kit-components-input-time.js +10 -17
  398. package/fesm2015/taiga-ui-kit-components-input-time.js.map +1 -1
  399. package/fesm2015/taiga-ui-kit-components-input.js +20 -36
  400. package/fesm2015/taiga-ui-kit-components-input.js.map +1 -1
  401. package/fesm2015/taiga-ui-kit-components-line-clamp.js +96 -14
  402. package/fesm2015/taiga-ui-kit-components-line-clamp.js.map +1 -1
  403. package/fesm2015/taiga-ui-kit-components-marker-icon.js +1 -1
  404. package/fesm2015/taiga-ui-kit-components-marker-icon.js.map +1 -1
  405. package/fesm2015/taiga-ui-kit-components-multi-select-option.js +5 -5
  406. package/fesm2015/taiga-ui-kit-components-multi-select-option.js.map +1 -1
  407. package/fesm2015/taiga-ui-kit-components-multi-select.js +37 -73
  408. package/fesm2015/taiga-ui-kit-components-multi-select.js.map +1 -1
  409. package/fesm2015/taiga-ui-kit-components-pagination.js +13 -25
  410. package/fesm2015/taiga-ui-kit-components-pagination.js.map +1 -1
  411. package/fesm2015/taiga-ui-kit-components-pdf-viewer.js +3 -16
  412. package/fesm2015/taiga-ui-kit-components-pdf-viewer.js.map +1 -1
  413. package/fesm2015/taiga-ui-kit-components-progress.js +7 -15
  414. package/fesm2015/taiga-ui-kit-components-progress.js.map +1 -1
  415. package/fesm2015/taiga-ui-kit-components-radio-block.js +9 -12
  416. package/fesm2015/taiga-ui-kit-components-radio-block.js.map +1 -1
  417. package/fesm2015/taiga-ui-kit-components-radio-labeled.js +7 -11
  418. package/fesm2015/taiga-ui-kit-components-radio-labeled.js.map +1 -1
  419. package/fesm2015/taiga-ui-kit-components-radio-list.js +7 -11
  420. package/fesm2015/taiga-ui-kit-components-radio-list.js.map +1 -1
  421. package/fesm2015/taiga-ui-kit-components-radio.js +7 -12
  422. package/fesm2015/taiga-ui-kit-components-radio.js.map +1 -1
  423. package/fesm2015/taiga-ui-kit-components-range.js +38 -86
  424. package/fesm2015/taiga-ui-kit-components-range.js.map +1 -1
  425. package/fesm2015/taiga-ui-kit-components-rating.js +6 -10
  426. package/fesm2015/taiga-ui-kit-components-rating.js.map +1 -1
  427. package/fesm2015/taiga-ui-kit-components-select-option.js +6 -6
  428. package/fesm2015/taiga-ui-kit-components-select-option.js.map +1 -1
  429. package/fesm2015/taiga-ui-kit-components-select.js +21 -40
  430. package/fesm2015/taiga-ui-kit-components-select.js.map +1 -1
  431. package/fesm2015/taiga-ui-kit-components-slider.js +34 -32
  432. package/fesm2015/taiga-ui-kit-components-slider.js.map +1 -1
  433. package/fesm2015/taiga-ui-kit-components-stepper.js +10 -8
  434. package/fesm2015/taiga-ui-kit-components-stepper.js.map +1 -1
  435. package/fesm2015/taiga-ui-kit-components-tabs.js +33 -35
  436. package/fesm2015/taiga-ui-kit-components-tabs.js.map +1 -1
  437. package/fesm2015/taiga-ui-kit-components-tag.js +10 -20
  438. package/fesm2015/taiga-ui-kit-components-tag.js.map +1 -1
  439. package/fesm2015/taiga-ui-kit-components-text-area.js +22 -34
  440. package/fesm2015/taiga-ui-kit-components-text-area.js.map +1 -1
  441. package/fesm2015/taiga-ui-kit-components-toggle.js +7 -11
  442. package/fesm2015/taiga-ui-kit-components-toggle.js.map +1 -1
  443. package/fesm2015/taiga-ui-kit-components-tree.js +4 -9
  444. package/fesm2015/taiga-ui-kit-components-tree.js.map +1 -1
  445. package/fesm2015/taiga-ui-kit-constants.js +4 -3
  446. package/fesm2015/taiga-ui-kit-constants.js.map +1 -1
  447. package/fesm2015/taiga-ui-kit-directives-data-list-dropdown-manager.js +120 -0
  448. package/fesm2015/taiga-ui-kit-directives-data-list-dropdown-manager.js.map +1 -0
  449. package/fesm2015/taiga-ui-kit-directives-highlight.js +0 -1
  450. package/fesm2015/taiga-ui-kit-directives-highlight.js.map +1 -1
  451. package/fesm2015/taiga-ui-kit-directives-lazy-loading.js +3 -3
  452. package/fesm2015/taiga-ui-kit-directives-lazy-loading.js.map +1 -1
  453. package/fesm2015/taiga-ui-kit-directives-present.js +3 -3
  454. package/fesm2015/taiga-ui-kit-directives-present.js.map +1 -1
  455. package/fesm2015/taiga-ui-kit-directives-project-class.js +0 -3
  456. package/fesm2015/taiga-ui-kit-directives-project-class.js.map +1 -1
  457. package/fesm2015/taiga-ui-kit-directives.js +1 -3
  458. package/fesm2015/taiga-ui-kit-directives.js.map +1 -1
  459. package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js +6 -6
  460. package/fesm2015/taiga-ui-kit-internal-primitive-calendar-range.js.map +1 -1
  461. package/fesm2015/taiga-ui-kit-pipes-field-error.js +0 -2
  462. package/fesm2015/taiga-ui-kit-pipes-field-error.js.map +1 -1
  463. package/fesm2015/taiga-ui-kit-pipes-filter-by-input.js +4 -4
  464. package/fesm2015/taiga-ui-kit-pipes-filter-by-input.js.map +1 -1
  465. package/fesm2015/taiga-ui-kit-providers.js +13 -40
  466. package/fesm2015/taiga-ui-kit-providers.js.map +1 -1
  467. package/fesm2015/taiga-ui-kit-tokens.js +15 -8
  468. package/fesm2015/taiga-ui-kit-tokens.js.map +1 -1
  469. package/fesm2015/taiga-ui-kit-utils-files.js +5 -15
  470. package/fesm2015/taiga-ui-kit-utils-files.js.map +1 -1
  471. package/fesm2015/taiga-ui-kit-utils-format.js +2 -5
  472. package/fesm2015/taiga-ui-kit-utils-format.js.map +1 -1
  473. package/fesm2015/taiga-ui-kit-utils-mask.js +4 -9
  474. package/fesm2015/taiga-ui-kit-utils-mask.js.map +1 -1
  475. package/fesm2015/taiga-ui-kit-utils-math.js +2 -2
  476. package/fesm2015/taiga-ui-kit-utils-math.js.map +1 -1
  477. package/fesm2015/taiga-ui-kit-utils-miscellaneous.js +2 -5
  478. package/fesm2015/taiga-ui-kit-utils-miscellaneous.js.map +1 -1
  479. package/fesm2015/taiga-ui-kit-utils.js +0 -1
  480. package/fesm2015/taiga-ui-kit-utils.js.map +1 -1
  481. package/interfaces/index.d.ts +0 -1
  482. package/package.json +5 -5
  483. package/providers/month-formatter.provider.d.ts +0 -7
  484. package/providers/specific-dropdown-controllers.d.ts +1 -6
  485. package/tokens/calendar-date-stream.d.ts +5 -0
  486. package/tokens/index.d.ts +1 -2
  487. package/tokens/validation-errors.d.ts +1 -1
  488. package/utils/files/format-size.d.ts +1 -5
  489. package/utils/files/get-accept-array.d.ts +1 -5
  490. package/utils/format/string-hash-to-hsl.d.ts +1 -3
  491. package/utils/index.d.ts +0 -1
  492. package/utils/mask/create-auto-corrected-date-pipe.d.ts +1 -5
  493. package/utils/miscellaneous/get-precision.d.ts +1 -3
  494. package/abstract/index.d.ts +0 -1
  495. package/abstract/package.json +0 -10
  496. package/abstract/slider/slider.d.ts +0 -69
  497. package/abstract/taiga-ui-kit-abstract.d.ts +0 -5
  498. package/bundles/taiga-ui-kit-abstract.umd.js +0 -651
  499. package/bundles/taiga-ui-kit-abstract.umd.js.map +0 -1
  500. package/bundles/taiga-ui-kit-directives-dropdown-context.umd.js.map +0 -1
  501. package/bundles/taiga-ui-kit-directives-dropdown-hover.umd.js +0 -107
  502. package/bundles/taiga-ui-kit-directives-dropdown-hover.umd.js.map +0 -1
  503. package/bundles/taiga-ui-kit-directives-dropdown-selection.umd.js +0 -643
  504. package/bundles/taiga-ui-kit-directives-dropdown-selection.umd.js.map +0 -1
  505. package/bundles/taiga-ui-kit-utils-dom.umd.js +0 -124
  506. package/bundles/taiga-ui-kit-utils-dom.umd.js.map +0 -1
  507. package/components/combo-box/combo-box.providers.d.ts +0 -1
  508. package/components/input/input.providers.d.ts +0 -1
  509. package/components/input-copy/input-copy.providers.d.ts +0 -2
  510. package/components/input-date/input-date.providers.d.ts +0 -1
  511. package/components/input-date-range/input-date-range.providers.d.ts +0 -1
  512. package/components/input-date-time/input-date-time.providers.d.ts +0 -1
  513. package/components/input-month/input-month.providers.d.ts +0 -2
  514. package/components/input-month-range/input-month-range.providers.d.ts +0 -2
  515. package/components/input-phone/input-phone.providers.d.ts +0 -5
  516. package/components/select/select.providers.d.ts +0 -1
  517. package/components/text-area/text-area.providers.d.ts +0 -2
  518. package/directives/dropdown-context/dropdown-context.directive.d.ts +0 -30
  519. package/directives/dropdown-context/dropdown-context.module.d.ts +0 -8
  520. package/directives/dropdown-context/index.d.ts +0 -2
  521. package/directives/dropdown-context/package.json +0 -10
  522. package/directives/dropdown-context/taiga-ui-kit-directives-dropdown-context.d.ts +0 -5
  523. package/directives/dropdown-hover/dropdown-hover.directive.d.ts +0 -11
  524. package/directives/dropdown-hover/dropdown-hover.module.d.ts +0 -7
  525. package/directives/dropdown-hover/index.d.ts +0 -2
  526. package/directives/dropdown-hover/package.json +0 -10
  527. package/directives/dropdown-hover/taiga-ui-kit-directives-dropdown-hover.d.ts +0 -5
  528. package/directives/dropdown-selection/dropdown-selection.directive.d.ts +0 -46
  529. package/directives/dropdown-selection/dropdown-selection.module.d.ts +0 -8
  530. package/directives/dropdown-selection/index.d.ts +0 -2
  531. package/directives/dropdown-selection/package.json +0 -10
  532. package/directives/dropdown-selection/taiga-ui-kit-directives-dropdown-selection.d.ts +0 -5
  533. package/esm2015/abstract/index.js +0 -2
  534. package/esm2015/abstract/slider/slider.js +0 -264
  535. package/esm2015/abstract/taiga-ui-kit-abstract.js +0 -5
  536. package/esm2015/components/combo-box/combo-box.providers.js +0 -26
  537. package/esm2015/components/input/input.providers.js +0 -22
  538. package/esm2015/components/input-copy/input-copy.providers.js +0 -16
  539. package/esm2015/components/input-date/input-date.providers.js +0 -27
  540. package/esm2015/components/input-date-range/input-date-range.providers.js +0 -27
  541. package/esm2015/components/input-date-time/input-date-time.providers.js +0 -27
  542. package/esm2015/components/input-month/input-month.providers.js +0 -19
  543. package/esm2015/components/input-month-range/input-month-range.providers.js +0 -19
  544. package/esm2015/components/input-phone/input-phone.providers.js +0 -35
  545. package/esm2015/components/select/select.providers.js +0 -26
  546. package/esm2015/components/text-area/text-area.providers.js +0 -18
  547. package/esm2015/directives/dropdown-context/dropdown-context.directive.js +0 -141
  548. package/esm2015/directives/dropdown-context/dropdown-context.module.js +0 -18
  549. package/esm2015/directives/dropdown-context/index.js +0 -3
  550. package/esm2015/directives/dropdown-context/taiga-ui-kit-directives-dropdown-context.js +0 -5
  551. package/esm2015/directives/dropdown-hover/dropdown-hover.directive.js +0 -56
  552. package/esm2015/directives/dropdown-hover/dropdown-hover.module.js +0 -16
  553. package/esm2015/directives/dropdown-hover/index.js +0 -3
  554. package/esm2015/directives/dropdown-hover/taiga-ui-kit-directives-dropdown-hover.js +0 -5
  555. package/esm2015/directives/dropdown-selection/dropdown-selection.directive.js +0 -252
  556. package/esm2015/directives/dropdown-selection/dropdown-selection.module.js +0 -18
  557. package/esm2015/directives/dropdown-selection/index.js +0 -3
  558. package/esm2015/directives/dropdown-selection/taiga-ui-kit-directives-dropdown-selection.js +0 -5
  559. package/esm2015/interfaces/bread-crumbs-item.js +0 -2
  560. package/esm2015/tokens/calendar-data-stream.js +0 -3
  561. package/esm2015/tokens/tag-status.js +0 -6
  562. package/esm2015/utils/dom/get-word-range.js +0 -53
  563. package/esm2015/utils/dom/index.js +0 -4
  564. package/esm2015/utils/dom/scroll-to-element.js +0 -23
  565. package/esm2015/utils/dom/set-range-offset.js +0 -29
  566. package/esm2015/utils/dom/taiga-ui-kit-utils-dom.js +0 -5
  567. package/fesm2015/taiga-ui-kit-abstract.js +0 -271
  568. package/fesm2015/taiga-ui-kit-abstract.js.map +0 -1
  569. package/fesm2015/taiga-ui-kit-directives-dropdown-context.js +0 -162
  570. package/fesm2015/taiga-ui-kit-directives-dropdown-context.js.map +0 -1
  571. package/fesm2015/taiga-ui-kit-directives-dropdown-hover.js +0 -76
  572. package/fesm2015/taiga-ui-kit-directives-dropdown-hover.js.map +0 -1
  573. package/fesm2015/taiga-ui-kit-directives-dropdown-selection.js +0 -273
  574. package/fesm2015/taiga-ui-kit-directives-dropdown-selection.js.map +0 -1
  575. package/fesm2015/taiga-ui-kit-utils-dom.js +0 -111
  576. package/fesm2015/taiga-ui-kit-utils-dom.js.map +0 -1
  577. package/interfaces/bread-crumbs-item.d.ts +0 -6
  578. package/tokens/calendar-data-stream.d.ts +0 -4
  579. package/tokens/tag-status.d.ts +0 -3
  580. package/utils/dom/get-word-range.d.ts +0 -9
  581. package/utils/dom/index.d.ts +0 -3
  582. package/utils/dom/package.json +0 -10
  583. package/utils/dom/scroll-to-element.d.ts +0 -5
  584. package/utils/dom/set-range-offset.d.ts +0 -6
  585. package/utils/dom/taiga-ui-kit-utils-dom.d.ts +0 -5
@@ -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\nexport const TUI_INPUT_PHONE_INTERNATIONAL_OPTIONS =\n new InjectionToken<TuiInputPhoneInternationalOptions>(\n `Default parameters for input phone international component`,\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>>(`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.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.GH]: `+233(###) ###-###`,\n [TuiCountryIsoCode.GI]: `+350###-#####`,\n [TuiCountryIsoCode.GL]: `+299##-##-##`,\n [TuiCountryIsoCode.GM]: `+220(###) ##-##`,\n [TuiCountryIsoCode.GN]: `+224##-###-###`,\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.MG]: `+261##-##-#####`,\n [TuiCountryIsoCode.MK]: `+389##-###-###`,\n [TuiCountryIsoCode.ML]: `+223##-##-####`,\n [TuiCountryIsoCode.MM]: `+95##-###-###`,\n [TuiCountryIsoCode.MN]: `+976##-##-####`,\n [TuiCountryIsoCode.MO]: `+853####-####`,\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.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\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.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.ZA]: `+27##-###-####`,\n [TuiCountryIsoCode.ZM]: `+260##-###-####`,\n [TuiCountryIsoCode.ZW]: `+263#-######`,\n }),\n });\n","import {getClipboardDataText} from '@taiga-ui/cdk';\n\n/**\n * @deprecated: use {@link tuiExtractValueFromEvent} instead\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function extractValueFromEvent(event: DragEvent | ClipboardEvent): string {\n // TODO: iframe warning\n return event instanceof DragEvent\n ? event.dataTransfer?.getData(`text/plain`) || ``\n : getClipboardDataText(event);\n}\n\nexport const tuiExtractValueFromEvent = extractValueFromEvent;\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n EventEmitter,\n forwardRef,\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 setNativeFocused,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiMapper,\n tuiPure,\n TuiStringHandler,\n} from '@taiga-ui/cdk';\nimport {\n TUI_ICONS_PATH,\n TUI_MASK_SYMBOLS_REGEXP,\n TUI_NON_DIGITS_REGEXP,\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 {extractValueFromEvent} from './utils/extract-value-from-event';\n\n// @dynamic\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 {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiInputPhoneInternationalComponent),\n },\n FIXED_DROPDOWN_CONTROLLER_PROVIDER,\n ],\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 private readonly staticPath: string | null = null;\n\n @Input(`countryIsoCode`)\n @tuiDefaultProp()\n set isoCode(code: TuiCountryIsoCode) {\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<TuiSizeS | TuiSizeM | TuiSizeL>\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_ICONS_PATH)\n iconsPath: TuiStringHandler<string>,\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 ) {\n super(control, changeDetectorRef);\n\n this.staticPath = iconsPath(`tuiIcon`).replace(`tuiIcon.svg#tuiIcon`, ``);\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 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 = extractValueFromEvent(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 getFlagPath(code: TuiCountryIsoCode): string {\n return `${this.staticPath}${code}.png`;\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 setNativeFocused(this.nativeFocusableElement);\n }\n }\n\n 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 *tuiLet=\"countriesNames$ | async as countriesNames\"\n class=\"hosted-dropdown\"\n [content]=\"dropdown\"\n [canOpen]=\"!readOnly\"\n [(open)]=\"open\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <div tuiGroup>\n <tui-primitive-textfield\n tuiHostedDropdownHost\n class=\"country-select tui-group__auto-width-item\"\n [tuiTextfieldCustomContent]=\"countryValueContent\"\n [tuiTextfieldLabelOutside]=\"true\"\n [tuiTextfieldIcon]=\"arrow\"\n [disabled]=\"disabled\"\n [focusable]=\"focusable\"\n [editable]=\"false\"\n [pseudoFocus]=\"open || null\"\n [readOnly]=\"readOnly\"\n [tuiHintContent]=\"null\"\n ></tui-primitive-textfield>\n <tui-input-phone\n tuiTextfieldAutocomplete=\"off\"\n class=\"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 </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=\"country-item-flag\"\n [src]=\"getFlagPath(item)\"\n />\n <span class=\"country-item-name\">\n {{ countriesNames[item] }}\n </span>\n <span class=\"country-item-code\">\n {{ item | tuiMapper: isoToCountryCodeMapper }}\n </span>\n </button>\n </tui-data-list>\n </ng-template>\n\n <ng-template #countryValueContent>\n <img\n class=\"flag\"\n [alt]=\"countriesNames[countryIsoCode]\"\n [src]=\"countryFlagPath\"\n />\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 TuiGroupModule,\n TuiHintControllerModule,\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiSvgModule,\n TuiTextfieldControllerModule,\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 TuiHintControllerModule,\n TuiHostedDropdownModule,\n TuiDataListModule,\n TuiArrowModule,\n TuiLetModule,\n TuiMapperPipeModule,\n TuiActiveZoneModule,\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":";;;;;;;;;;;;;;;;;;;;AAAO,MAAM,sBAAsB,GAAG;;ACQzB,MAAA,6CAA6C,GACtD;AACI,IAAA,SAAS,EAAE,EAAE;IACb,cAAc,EAAE,iBAAiB,CAAC,EAAE;EACtC;MAEO,qCAAqC,GAC9C,IAAI,cAAc,CACd,4DAA4D,EAC5D;AACI,IAAA,OAAO,EAAE,MAAM,6CAA6C;AAC/D,CAAA,EACH;MAEO,yCAAyC,GAEjC,CAAC,OAAmD,MAAM;AAC3E,IAAA,OAAO,EAAE,qCAAqC;AAC9C,IAAA,QAAQ,EAAM,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAAA,6CAA6C,CAAK,EAAA,OAAO,CAAC;AAC3E,CAAA;;MCxBY,mBAAmB,GAC5B,IAAI,cAAc,CAAoC,iBAAiB,EAAE;AACrE,IAAA,OAAO,EAAE,OAAO;AACZ,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAa,WAAA,CAAA;AACrC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAc,YAAA,CAAA;AACtC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAe,aAAA,CAAA;AACvC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAc,YAAA,CAAA;AACtC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAe,aAAA,CAAA;AACvC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAe,aAAA,CAAA;AACvC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAoB,kBAAA,CAAA;AAC5C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAc,YAAA,CAAA;AACtC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAe,aAAA,CAAA;AACvC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAoB,kBAAA,CAAA;AAC5C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAe,aAAA,CAAA;AACvC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAe,aAAA,CAAA;AACvC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAqB,mBAAA,CAAA;AAC7C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAe,aAAA,CAAA;AACvC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAe,aAAA,CAAA;AACvC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAqB,mBAAA,CAAA;AAC7C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAc,YAAA,CAAA;AACtC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAW,SAAA,CAAA;AACnC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAc,YAAA,CAAA;AACtC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAoB,kBAAA,CAAA;AAC5C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAe,aAAA,CAAA;AACvC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAc,YAAA,CAAA;AACtC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAc,YAAA,CAAA;AACtC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAc,YAAA,CAAA;AACtC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAe,aAAA,CAAA;AACvC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAe,aAAA,CAAA;AACvC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAqB,mBAAA,CAAA;AAC7C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAoB,kBAAA,CAAA;AAC5C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAc,YAAA,CAAA;AACtC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAc,YAAA,CAAA;AACtC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAwB,sBAAA,CAAA;AAChD,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAe,aAAA,CAAA;AACvC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAoB,kBAAA,CAAA;AAC5C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAe,aAAA,CAAA;AACvC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAe,aAAA,CAAA;AACvC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAe,aAAA,CAAA;AACvC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAe,aAAA,CAAA;AACvC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAc,YAAA,CAAA;AACtC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAc,YAAA,CAAA;AACtC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAoB,kBAAA,CAAA;AAC5C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAe,aAAA,CAAA;AACvC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAc,YAAA,CAAA;AACtC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAc,YAAA,CAAA;AAEtC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAc,YAAA,CAAA;AACtC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAe,aAAA,CAAA;AACvC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAc,YAAA,CAAA;AACtC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAe,aAAA,CAAA;AACvC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAc,YAAA,CAAA;AACtC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAU,QAAA,CAAA;AAClC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAe,aAAA,CAAA;AACvC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAc,YAAA,CAAA;AACtC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAc,YAAA,CAAA;AACtC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAe,aAAA,CAAA;AACvC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAW,SAAA,CAAA;AACnC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAoB,kBAAA,CAAA;AAC5C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAkB,gBAAA,CAAA;AAC1C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAmB,iBAAA,CAAA;AAC3C,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAc,YAAA,CAAA;AACtC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAa,WAAA,CAAA;AACrC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAgB,cAAA,CAAA;AACxC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAiB,eAAA,CAAA;AACzC,QAAA,CAAC,iBAAiB,CAAC,EAAE,GAAG,CAAc,YAAA,CAAA;KACzC,CAAC;AACL,CAAA;;ACrNL;;AAEG;AACH;AACM,SAAU,qBAAqB,CAAC,KAAiC,EAAA;;;IAEnE,OAAO,KAAK,YAAY,SAAS;AAC7B,UAAE,CAAA,CAAA,EAAA,GAAA,KAAK,CAAC,YAAY,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,OAAO,CAAC,CAAA,UAAA,CAAY,CAAC,KAAI,CAAE,CAAA;AACjD,UAAE,oBAAoB,CAAC,KAAK,CAAC,CAAC;AACtC,CAAC;AAEM,MAAM,wBAAwB,GAAG;;ACuCxC;AAcM,MAAO,mCACT,SAAQ,kBAA0B,CAAA;IAgClC,WAII,CAAA,OAAyB,EACE,iBAAoC,EAE/D,SAAmC,EAE1B,eAA8D,EAE9D,cAAiD,EAEzC,OAA0C,EAAA;AAE3D,QAAA,KAAK,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;QANzB,IAAe,CAAA,eAAA,GAAf,eAAe,CAA+C;QAE9D,IAAc,CAAA,cAAA,GAAd,cAAc,CAAmC;QAEzC,IAAO,CAAA,OAAA,GAAP,OAAO,CAAmC;QApC9C,IAAU,CAAA,UAAA,GAAkB,IAAI,CAAC;AAUlD,QAAA,IAAA,CAAA,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;AAG1B,QAAA,IAAA,CAAA,oBAAoB,GAAG,IAAI,YAAY,EAAqB,CAAC;AAEtE,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;QAE7C,IAAI,CAAA,IAAA,GAAG,KAAK,CAAC;QAEJ,IAAK,CAAA,KAAA,GAEV,SAAS,CAAC;QA4EL,IAAsB,CAAA,sBAAA,GAAyC,IAAI,IACxE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;AA1D5B,QAAA,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,CAAS,OAAA,CAAA,CAAC,CAAC,OAAO,CAAC,CAAA,mBAAA,CAAqB,EAAE,CAAA,CAAE,CAAC,CAAC;KAC7E;IArCD,IAAI,OAAO,CAAC,IAAuB,EAAA;;QAC/B,CAAA,EAAA,GAAA,IAAI,CAAC,mBAAmB,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACjD,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;KAC9B;AAoCD,IAAA,IAAI,sBAAsB,GAAA;AACtB,QAAA,OAAO,IAAI,CAAC,mBAAmB,IAAI,CAAC,IAAI,CAAC,gBAAgB;AACrD,cAAE,IAAI,CAAC,mBAAmB,CAAC,sBAAsB;cAC/C,IAAI,CAAC;KACd;AAED,IAAA,IAAI,OAAO,GAAA;AACP,QAAA,QACI,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,kBAAkB,CAAC,OAAO;AAC7D,aAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,IAAI,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAClE;KACL;AAED,IAAA,IAAI,qBAAqB,GAAA;QACrB,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;KACrD;AAED,IAAA,IAAI,yBAAyB,GAAA;QACzB,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;AAE/D,QAAA,OAAO,IAAI,CAAC,6BAA6B,CACrC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,cAAc,CAAC,EACxC,WAAW,CACd,CAAC;KACL;AAED,IAAA,IAAI,eAAe,GAAA;QACf,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;KAChD;AAID,IAAA,OAAO,CAAC,KAAiC,EAAA;AACrC,QAAA,IAAI,KAAK,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAA,CAAE,CAAC,CAAC;QAC5E,MAAM,cAAc,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAEtD,IAAI,CAAC,cAAc,EAAE;YACjB,IAAI,CAAC,WAAW,CACZ,CAAA,EAAG,IAAI,CAAC,qBAAqB,CAAG,EAAA,KAAK,CAAE,CAAA;AAClC,iBAAA,OAAO,CAAC,uBAAuB,EAAE,CAAA,CAAE,CAAC;AACpC,iBAAA,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAC/D,CAAC;YAEF,OAAO;AACV,SAAA;AAED,QAAA,IAAI,cAAc,KAAK,iBAAiB,CAAC,EAAE,EAAE;YACzC,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAG,CAAA,CAAA,CAAC,CAAC;AACpC,SAAA;AAED,QAAA,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC;QAC1C,IAAI,CAAC,WAAW,CAAC,CAAA,EAAG,SAAS,CAAG,EAAA,KAAK,CAAE,CAAA,CAAC,CAAC;KAC5C;AAKD,IAAA,WAAW,CAAC,IAAuB,EAAA;AAC/B,QAAA,OAAO,GAAG,IAAI,CAAC,UAAU,CAAG,EAAA,IAAI,MAAM,CAAC;KAC1C;AAED,IAAA,WAAW,CAAC,OAA0B,EAAA;AAClC,QAAA,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;AAClB,QAAA,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;;AAEnC,QAAA,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;QAEvC,MAAM,SAAS,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;AAEpD,QAAA,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,EAAE;AAC/B,YAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC;AACpD,SAAA;QAED,IAAI,IAAI,CAAC,sBAAsB,EAAE;AAC7B,YAAA,gBAAgB,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;AACjD,SAAA;KACJ;IAED,gBAAgB,GAAA;QACZ,KAAK,CAAC,gBAAgB,EAAE,CAAC;QACzB,IAAI,CAAC,KAAK,EAAE,CAAC;KAChB;AAED,IAAA,gBAAgB,CAAC,OAA0B,EAAA;AACvC,QAAA,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,sBAAsB,EAAE,CAAA,CAAE,CAAC,CAAC;KAC3E;AAED,IAAA,aAAa,CAAC,KAAa,EAAA;AACvB,QAAA,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;KAC3B;AAED,IAAA,YAAY,CAAC,MAAe,EAAA;AACxB,QAAA,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;KAC9B;IAES,gBAAgB,GAAA;AACtB,QAAA,OAAO,EAAE,CAAC;KACb;IAGO,6BAA6B,CAAC,IAAY,EAAE,WAAmB,EAAA;QACnE,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAA,CAAE,CAAC,CAAC,IAAI,EAAE,CAAC;KAC/C;IAEO,KAAK,GAAA;AACT,QAAA,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;KACrB;AAEO,IAAA,mBAAmB,CAAC,OAA0B,EAAA;AAClD,QAAA,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,CAAA,CAAE,CAAC,CAAC,MAAM,CAAC;KACtE;AAEO,IAAA,oBAAoB,CAAC,IAAuB,EAAA;AAChD,QAAA,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;AAC3B,QAAA,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACxC;AAEO,IAAA,kBAAkB,CAAC,KAAa,EAAA;QACpC,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,cAAc,IAAG;AACxC,YAAA,MAAM,UAAU,GACZ,cAAc,KAAK,iBAAiB,CAAC,EAAE;AACvC,gBAAA,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;AACtB,gBAAA,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC;AAC5B,gBAAA,KAAK,CAAC,MAAM,GAAG,CAAC,KAAK,IAAI,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;AAExE,YAAA,QACI,UAAU;AACV,iBAAC,KAAK,CAAC,UAAU,CACb,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,CAAA,CAAE,CAAC,CAC/D;AACG,oBAAA,KAAK,CAAC,MAAM,GAAG,CAAC,KAAK,IAAI,CAAC,mBAAmB,CAAC,cAAc,CAAC,CAAC,EACpE;AACN,SAAC,CAAC,CAAC;KACN;;iIA1LQ,mCAAmC,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAoChC,SAAS,EAAA,QAAA,EAAA,IAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAET,iBAAiB,EAAA,EAAA,EAAA,KAAA,EACjB,cAAc,EAAA,EAAA,EAAA,KAAA,EAEd,aAAa,EAAA,EAAA,EAAA,KAAA,EAEb,mBAAmB,EAAA,EAAA,EAAA,KAAA,EAEnB,qCAAqC,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AA7CxC,mCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,mCAAmC,EARjC,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,CAAA,gBAAA,EAAA,SAAA,CAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,OAAA,EAAA,EAAA,oBAAA,EAAA,sBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,4BAAA,EAAA,iBAAA,EAAA,2BAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,SAAA,EAAA;AACP,QAAA;AACI,YAAA,OAAO,EAAE,2BAA2B;AACpC,YAAA,WAAW,EAAE,UAAU,CAAC,MAAM,mCAAmC,CAAC;AACrE,SAAA;QACD,kCAAkC;AACrC,KAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,qBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAMU,sBAAsB,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAGtB,8BAA8B,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECzE7C,o6EAsEA,EAAA,MAAA,EAAA,CAAA,snCAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,0BAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,SAAA,EAAA,MAAA,CAAA,EAAA,OAAA,EAAA,CAAA,YAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,8BAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,QAAA,EAAA,aAAA,EAAA,UAAA,EAAA,SAAA,EAAA,UAAA,EAAA,QAAA,EAAA,SAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,sBAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,2BAAA,EAAA,WAAA,EAAA,QAAA,CAAA,EAAA,OAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,iCAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,EAAA,UAAA,EAAA,OAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,sBAAA,EAAA,QAAA,EAAA,qHAAA,EAAA,MAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,QAAA,EAAA,8BAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,UAAA,EAAA,WAAA,EAAA,SAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,8BAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,mCAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kCAAA,EAAA,QAAA,EAAA,6BAAA,EAAA,MAAA,EAAA,CAAA,2BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,iCAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,MAAA,EAAA,CAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,yBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,0BAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,gBAAA,EAAA,kBAAA,EAAA,aAAA,EAAA,kBAAA,EAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,sBAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,iCAAA,EAAA,QAAA,EAAA,4BAAA,EAAA,MAAA,EAAA,CAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,gBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,OAAA,EAAA,EAAA,CAAA,SAAA,EAAA,WAAA,EAAA,EAAA,CAAA,aAAA,EAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;ADUI,UAAA,CAAA;AADC,IAAA,cAAc,EAAE;AAIhB,CAAA,EAAA,mCAAA,CAAA,SAAA,EAAA,SAAA,EAAA,IAAA,CAAA,CAAA;AAwID,UAAA,CAAA;IADC,OAAO;AAGP,CAAA,EAAA,mCAAA,CAAA,SAAA,EAAA,+BAAA,EAAA,IAAA,CAAA,CAAA;4FA3JQ,mCAAmC,EAAA,UAAA,EAAA,CAAA;kBAb/C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,CAA+B,6BAAA,CAAA;AACzC,oBAAA,WAAW,EAAE,CAA2C,yCAAA,CAAA;oBACxD,SAAS,EAAE,CAAC,CAAA,sCAAA,CAAwC,CAAC;oBACrD,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,SAAS,EAAE;AACP,wBAAA;AACI,4BAAA,OAAO,EAAE,2BAA2B;AACpC,4BAAA,WAAW,EAAE,UAAU,CAAC,yCAAyC,CAAC;AACrE,yBAAA;wBACD,kCAAkC;AACrC,qBAAA;AACJ,iBAAA,CAAA;;0BAmCQ,QAAQ;;0BACR,IAAI;;0BACJ,MAAM;2BAAC,SAAS,CAAA;;0BAEhB,MAAM;2BAAC,iBAAiB,CAAA;;0BACxB,MAAM;2BAAC,cAAc,CAAA;;0BAErB,MAAM;2BAAC,aAAa,CAAA;;0BAEpB,MAAM;2BAAC,mBAAmB,CAAA;;0BAE1B,MAAM;2BAAC,qCAAqC,CAAA;4CAxChC,mBAAmB,EAAA,CAAA;sBADnC,SAAS;uBAAC,sBAAsB,CAAA;gBAIhB,kBAAkB,EAAA,CAAA;sBADlC,SAAS;uBAAC,8BAA8B,CAAA;gBAOrC,OAAO,EAAA,CAAA;sBAFV,KAAK;uBAAC,CAAgB,cAAA,CAAA,CAAA;gBAQvB,SAAS,EAAA,CAAA;sBADR,KAAK;gBAIG,oBAAoB,EAAA,CAAA;sBAD5B,MAAM;gBA+DP,OAAO,EAAA,CAAA;sBAFN,YAAY;uBAAC,CAA4B,0BAAA,CAAA,EAAE,CAAC,CAAA,MAAA,CAAQ,CAAC,CAAA;;sBACrD,YAAY;uBAAC,CAA2B,yBAAA,CAAA,EAAE,CAAC,CAAA,MAAA,CAAQ,CAAC,CAAA;gBAqE7C,6BAA6B,EAAA,EAAA,EAAA,EAAA,CAAA;;MEnL5B,gCAAgC,CAAA;;8HAAhC,gCAAgC,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;+HAAhC,gCAAgC,EAAA,YAAA,EAAA,CAH1B,mCAAmC,CAAA,EAAA,OAAA,EAAA,CAhB9C,YAAY;QACZ,WAAW;QACX,kBAAkB;QAClB,YAAY;QACZ,mBAAmB;QACnB,cAAc;QACd,2BAA2B;QAC3B,4BAA4B;QAC5B,uBAAuB;QACvB,uBAAuB;QACvB,iBAAiB;QACjB,cAAc;QACd,YAAY;QACZ,mBAAmB;AACnB,QAAA,mBAAmB,aAGb,mCAAmC,CAAA,EAAA,CAAA,CAAA;AAEpC,gCAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gCAAgC,EApBhC,OAAA,EAAA,CAAA;YACL,YAAY;YACZ,WAAW;YACX,kBAAkB;YAClB,YAAY;YACZ,mBAAmB;YACnB,cAAc;YACd,2BAA2B;YAC3B,4BAA4B;YAC5B,uBAAuB;YACvB,uBAAuB;YACvB,iBAAiB;YACjB,cAAc;YACd,YAAY;YACZ,mBAAmB;YACnB,mBAAmB;AACtB,SAAA,CAAA,EAAA,CAAA,CAAA;4FAIQ,gCAAgC,EAAA,UAAA,EAAA,CAAA;kBArB5C,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE;wBACL,YAAY;wBACZ,WAAW;wBACX,kBAAkB;wBAClB,YAAY;wBACZ,mBAAmB;wBACnB,cAAc;wBACd,2BAA2B;wBAC3B,4BAA4B;wBAC5B,uBAAuB;wBACvB,uBAAuB;wBACvB,iBAAiB;wBACjB,cAAc;wBACd,YAAY;wBACZ,mBAAmB;wBACnB,mBAAmB;AACtB,qBAAA;oBACD,YAAY,EAAE,CAAC,mCAAmC,CAAC;oBACnD,OAAO,EAAE,CAAC,mCAAmC,CAAC;AACjD,iBAAA,CAAA;;;ACvCD;;AAEG;;;;"}
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\nexport const TUI_INPUT_PHONE_INTERNATIONAL_OPTIONS =\n new InjectionToken<TuiInputPhoneInternationalOptions>(\n `Default parameters for input phone international component`,\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>>(`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.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.GH]: `+233(###) ###-###`,\n [TuiCountryIsoCode.GI]: `+350###-#####`,\n [TuiCountryIsoCode.GL]: `+299##-##-##`,\n [TuiCountryIsoCode.GM]: `+220(###) ##-##`,\n [TuiCountryIsoCode.GN]: `+224##-###-###`,\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.MG]: `+261##-##-#####`,\n [TuiCountryIsoCode.MK]: `+389##-###-###`,\n [TuiCountryIsoCode.ML]: `+223##-##-####`,\n [TuiCountryIsoCode.MM]: `+95##-###-###`,\n [TuiCountryIsoCode.MN]: `+976##-##-####`,\n [TuiCountryIsoCode.MO]: `+853####-####`,\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.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\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.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.ZA]: `+27##-###-####`,\n [TuiCountryIsoCode.ZM]: `+260##-###-####`,\n [TuiCountryIsoCode.ZW]: `+263#-######`,\n }),\n });\n","import {tuiGetClipboardDataText} from '@taiga-ui/cdk';\n\nexport function tuiExtractValueFromEvent(event: DragEvent | ClipboardEvent): 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 TuiStringHandler,\n} from '@taiga-ui/cdk';\nimport {\n TUI_ICONS_PATH,\n TUI_MASK_SYMBOLS_REGEXP,\n TUI_NON_DIGITS_REGEXP,\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 ],\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 private readonly staticPath: string | null = null;\n\n @Input(`countryIsoCode`)\n @tuiDefaultProp()\n set isoCode(code: TuiCountryIsoCode) {\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<TuiSizeS | TuiSizeM | TuiSizeL>\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_ICONS_PATH)\n iconsPath: TuiStringHandler<string>,\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 ) {\n super(control, changeDetectorRef);\n\n this.staticPath = iconsPath(`tuiIcon`).replace(`tuiIcon.svg#tuiIcon`, ``);\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 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 getFlagPath(code: TuiCountryIsoCode): string {\n return `${this.staticPath}${code}.png`;\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 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 class=\"t-country-select tui-group__auto-width-item\"\n [tuiTextfieldCustomContent]=\"countryValueContent\"\n [tuiTextfieldLabelOutside]=\"true\"\n [tuiTextfieldIcon]=\"arrow\"\n [disabled]=\"disabled\"\n [focusable]=\"focusable\"\n [editable]=\"false\"\n [pseudoFocus]=\"open || null\"\n [readOnly]=\"readOnly\"\n [tuiHintContent]=\"null\"\n ></tui-primitive-textfield>\n <tui-input-phone\n tuiTextfieldAutocomplete=\"off\"\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 </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]=\"getFlagPath(item)\"\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 <img\n class=\"t-flag\"\n [alt]=\"countriesNames[countryIsoCode]\"\n [src]=\"countryFlagPath\"\n />\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 TuiGroupModule,\n TuiHintControllerModule,\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiSvgModule,\n TuiTextfieldControllerModule,\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 TuiHintControllerModule,\n TuiHostedDropdownModule,\n TuiDataListModule,\n TuiArrowModule,\n TuiLetModule,\n TuiMapperPipeModule,\n TuiActiveZoneModule,\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,21 +1,19 @@
1
1
  import { __decorate } from 'tslib';
2
2
  import * as i0 from '@angular/core';
3
- import { InjectionToken, forwardRef, EventEmitter, ChangeDetectorRef, TemplateRef, Component, ChangeDetectionStrategy, Optional, Self, Inject, ViewChild, Input, Output, ContentChild, Directive, NgModule } from '@angular/core';
3
+ import { InjectionToken, EventEmitter, ChangeDetectorRef, TemplateRef, Component, ChangeDetectionStrategy, Optional, Self, Inject, ViewChild, Input, Output, ContentChild, Directive, NgModule } from '@angular/core';
4
4
  import * as i5 from '@angular/forms';
5
5
  import { NgControl } from '@angular/forms';
6
6
  import * as i2 from '@taiga-ui/cdk';
7
- import { TuiDestroyService, AbstractTuiControl, TUI_FOCUSABLE_ITEM_ACCESSOR, tuiIsNativeFocused, getClipboardDataText, setNativeFocused, tuiRequiredSetter, tuiDefaultProp, TuiActiveZoneModule } from '@taiga-ui/cdk';
7
+ import { AbstractTuiControl, tuiIsNativeFocused, tuiGetClipboardDataText, TuiDestroyService, tuiAsFocusableItemAccessor, tuiAsControl, tuiRequiredSetter, tuiDefaultProp, TuiActiveZoneModule } from '@taiga-ui/cdk';
8
8
  import * as i1 from '@taiga-ui/core';
9
- import { TUI_DATA_LIST_HOST, TUI_MASK_SYMBOLS_REGEXP, formatPhone, TUI_TEXTFIELD_CLEANER, TuiDataListDirective, TuiHostedDropdownComponent, TuiPrimitiveTextfieldComponent, TuiAbstractTextfieldHost, TUI_TEXTFIELD_HOST, TuiPrimitiveTextfieldModule, TuiHostedDropdownModule, TuiTextfieldControllerModule, TuiTextfieldComponent } from '@taiga-ui/core';
10
- import { DOCUMENT } from '@angular/common';
9
+ import { TUI_MASK_SYMBOLS_REGEXP, tuiFormatPhone, TUI_SELECTION_STREAM, TUI_TEXTFIELD_CLEANER, tuiAsDataListHost, TuiDataListDirective, TuiHostedDropdownComponent, TuiPrimitiveTextfieldComponent, TuiAbstractTextfieldHost, tuiAsTextfieldHost, TuiPrimitiveTextfieldModule, TuiHostedDropdownModule, TuiTextfieldControllerModule, TuiTextfieldComponent } from '@taiga-ui/core';
11
10
  import { FIXED_DROPDOWN_CONTROLLER_PROVIDER } from '@taiga-ui/kit/providers';
12
- import * as i6 from 'rxjs';
13
- import { fromEvent, merge } from 'rxjs';
14
- import { windowToggle, flatMap, startWith, takeUntil } from 'rxjs/operators';
11
+ import { takeUntil } from 'rxjs/operators';
15
12
  import * as i3 from '@taiga-ui/kit/directives';
16
13
  import { TuiValueAccessorModule } from '@taiga-ui/kit/directives';
17
14
  import * as i4 from 'angular2-text-mask';
18
15
  import { TextMaskModule } from 'angular2-text-mask';
16
+ import * as i6 from 'rxjs';
19
17
 
20
18
  const TUI_INPUT_PHONE_DEFAULT_OPTIONS = {
21
19
  phoneMaskAfterCountryCode: `### ###-##-##`,
@@ -30,36 +28,8 @@ const tuiInputPhoneOptionsProvider = (options) => ({
30
28
  useValue: Object.assign(Object.assign({}, TUI_INPUT_PHONE_DEFAULT_OPTIONS), options),
31
29
  });
32
30
 
33
- const SELECTION_STREAM = new InjectionToken(`A stream of selection changes`);
34
- const INPUT_PHONE_PROVIDERS = [
35
- TuiDestroyService,
36
- FIXED_DROPDOWN_CONTROLLER_PROVIDER,
37
- {
38
- provide: AbstractTuiControl,
39
- useExisting: forwardRef(() => TuiInputPhoneComponent),
40
- },
41
- {
42
- provide: TUI_FOCUSABLE_ITEM_ACCESSOR,
43
- useExisting: forwardRef(() => TuiInputPhoneComponent),
44
- },
45
- {
46
- provide: TUI_DATA_LIST_HOST,
47
- useExisting: forwardRef(() => TuiInputPhoneComponent),
48
- },
49
- {
50
- provide: SELECTION_STREAM,
51
- deps: [TuiDestroyService, DOCUMENT],
52
- useFactory: selectionStreamFactory,
53
- },
54
- ];
55
- // eslint-disable-next-line @typescript-eslint/naming-convention
56
- function selectionStreamFactory(destroy$, documentRef) {
57
- return fromEvent(documentRef, `selectionchange`).pipe(windowToggle(merge(fromEvent(documentRef, `mouseup`), fromEvent(documentRef, `keydown`)), () => fromEvent(documentRef, `mousedown`)), flatMap(windowed$ => windowed$.pipe(startWith(null))), takeUntil(destroy$));
58
- }
59
-
60
- // @dynamic
61
31
  class TuiInputPhoneComponent extends AbstractTuiControl {
62
- constructor(control, changeDetectorRef, selection$, textfieldCleaner, options) {
32
+ constructor(control, destroy$, changeDetectorRef, selection$, textfieldCleaner, options) {
63
33
  super(control, changeDetectorRef);
64
34
  this.textfieldCleaner = textfieldCleaner;
65
35
  this.options = options;
@@ -90,7 +60,7 @@ class TuiInputPhoneComponent extends AbstractTuiControl {
90
60
  };
91
61
  this.countryCode = this.options.countryCode;
92
62
  this.open = false;
93
- selection$.subscribe(() => {
63
+ selection$.pipe(takeUntil(destroy$)).subscribe(() => {
94
64
  this.setCaretPosition();
95
65
  });
96
66
  }
@@ -109,7 +79,7 @@ class TuiInputPhoneComponent extends AbstractTuiControl {
109
79
  }
110
80
  get computedValue() {
111
81
  return this.value
112
- ? formatPhone(this.value, this.countryCode, this.phoneMaskAfterCountryCode)
82
+ ? tuiFormatPhone(this.value, this.countryCode, this.phoneMaskAfterCountryCode)
113
83
  : this.search || ``;
114
84
  }
115
85
  get inputMode() {
@@ -129,7 +99,7 @@ class TuiInputPhoneComponent extends AbstractTuiControl {
129
99
  event.preventDefault();
130
100
  }
131
101
  onPaste(event) {
132
- this.setValueWithoutPrefix(getClipboardDataText(event));
102
+ this.setValueWithoutPrefix(tuiGetClipboardDataText(event));
133
103
  }
134
104
  onActiveZone(active) {
135
105
  this.updateFocused(active);
@@ -227,7 +197,7 @@ class TuiInputPhoneComponent extends AbstractTuiControl {
227
197
  }
228
198
  focusInput() {
229
199
  if (this.nativeFocusableElement) {
230
- setNativeFocused(this.nativeFocusableElement, true, true);
200
+ this.nativeFocusableElement.focus({ preventScroll: true });
231
201
  }
232
202
  }
233
203
  updateSearch(search) {
@@ -243,8 +213,13 @@ class TuiInputPhoneComponent extends AbstractTuiControl {
243
213
  }
244
214
  }
245
215
  }
246
- TuiInputPhoneComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiInputPhoneComponent, deps: [{ token: NgControl, optional: true, self: true }, { token: ChangeDetectorRef }, { token: SELECTION_STREAM }, { token: TUI_TEXTFIELD_CLEANER }, { token: TUI_INPUT_PHONE_OPTIONS }], target: i0.ɵɵFactoryTarget.Component });
247
- TuiInputPhoneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiInputPhoneComponent, selector: "tui-input-phone", inputs: { countryCodeSetter: ["countryCode", "countryCodeSetter"], phoneMaskAfterCountryCode: "phoneMaskAfterCountryCode", allowText: "allowText", search: "search" }, outputs: { searchChange: "searchChange" }, providers: INPUT_PHONE_PROVIDERS, queries: [{ propertyName: "datalist", first: true, predicate: TuiDataListDirective, descendants: true, read: TemplateRef }], viewQueries: [{ propertyName: "dropdown", first: true, predicate: TuiHostedDropdownComponent, descendants: true }, { propertyName: "textfield", first: true, predicate: TuiPrimitiveTextfieldComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<tui-hosted-dropdown\n class=\"hosted\"\n [canOpen]=\"canOpen\"\n [content]=\"datalist || ''\"\n [(open)]=\"open\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <tui-primitive-textfield\n tuiValueAccessor\n tuiTextfieldType=\"tel\"\n class=\"textfield\"\n [tuiTextfieldInputMode]=\"inputMode\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoFocus]=\"computedFocused\"\n [invalid]=\"computedInvalid\"\n [nativeId]=\"nativeId\"\n [readOnly]=\"readOnly\"\n [disabled]=\"computedDisabled\"\n [focusable]=\"focusable\"\n [textMask]=\"textMaskOptions\"\n [value]=\"computedValue\"\n [tuiTextfieldCleaner]=\"canClean\"\n (valueChange)=\"onValueChange($event)\"\n (drop)=\"onDrop($event)\"\n (keydown.backspace)=\"onBackspace($event)\"\n (paste.prevent)=\"onPaste($event)\"\n >\n <ng-content></ng-content>\n <ng-content\n select=\"input\"\n ngProjectAs=\"input\"\n ></ng-content>\n </tui-primitive-textfield>\n</tui-hosted-dropdown>\n", styles: [":host{display:block;border-radius:var(--tui-radius-m);text-align:left}:host._disabled{pointer-events:none}.hosted{display:block;border-radius:inherit}.textfield{border-radius:inherit;text-align:inherit}\n"], components: [{ type: i1.TuiHostedDropdownComponent, selector: "tui-hosted-dropdown", inputs: ["content", "canOpen", "open"], outputs: ["openChange", "focusedChange"] }, { type: i1.TuiPrimitiveTextfieldComponent, selector: "tui-primitive-textfield", inputs: ["editable", "filler", "iconCleaner", "readOnly", "invalid", "disabled", "prefix", "postfix", "value"], outputs: ["valueChange"] }], directives: [{ type: i2.TuiActiveZoneDirective, selector: "[tuiActiveZone]:not(ng-container), [tuiActiveZoneChange]:not(ng-container), [tuiActiveZoneParent]:not(ng-container)", inputs: ["tuiActiveZoneParent"], outputs: ["tuiActiveZoneChange"], exportAs: ["tuiActiveZone"] }, { type: i1.TuiPrimitiveTextfieldDirective, selector: "tui-primitive-textfield" }, { type: i3.TuiValueAccessorDirective, selector: "[tuiValueAccessor]" }, { type: i1.TuiTextfieldTypeDirective, selector: "[tuiTextfieldType]", inputs: ["tuiTextfieldType"] }, { type: i1.TuiTextfieldInputModeDirective, selector: "[tuiTextfieldInputMode]", inputs: ["tuiTextfieldInputMode"] }, { type: i4.MaskedInputDirective, selector: "[textMask]", inputs: ["textMask"], exportAs: ["textMask"] }, { type: i1.TuiTextfieldCleanerDirective, selector: "[tuiTextfieldCleaner]", inputs: ["tuiTextfieldCleaner"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
216
+ TuiInputPhoneComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiInputPhoneComponent, deps: [{ token: NgControl, optional: true, self: true }, { token: TuiDestroyService }, { token: ChangeDetectorRef }, { token: TUI_SELECTION_STREAM }, { token: TUI_TEXTFIELD_CLEANER }, { token: TUI_INPUT_PHONE_OPTIONS }], target: i0.ɵɵFactoryTarget.Component });
217
+ TuiInputPhoneComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: TuiInputPhoneComponent, selector: "tui-input-phone", inputs: { countryCodeSetter: ["countryCode", "countryCodeSetter"], phoneMaskAfterCountryCode: "phoneMaskAfterCountryCode", allowText: "allowText", search: "search" }, outputs: { searchChange: "searchChange" }, providers: [
218
+ TuiDestroyService,
219
+ tuiAsFocusableItemAccessor(TuiInputPhoneComponent),
220
+ tuiAsControl(TuiInputPhoneComponent),
221
+ tuiAsDataListHost(TuiInputPhoneComponent),
222
+ ], queries: [{ propertyName: "datalist", first: true, predicate: TuiDataListDirective, descendants: true, read: TemplateRef }], viewQueries: [{ propertyName: "dropdown", first: true, predicate: TuiHostedDropdownComponent, descendants: true }, { propertyName: "textfield", first: true, predicate: TuiPrimitiveTextfieldComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<tui-hosted-dropdown\n class=\"t-hosted\"\n [canOpen]=\"canOpen\"\n [content]=\"datalist || ''\"\n [(open)]=\"open\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <tui-primitive-textfield\n tuiValueAccessor\n tuiTextfieldType=\"tel\"\n class=\"t-textfield\"\n [tuiTextfieldInputMode]=\"inputMode\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoFocus]=\"computedFocused\"\n [invalid]=\"computedInvalid\"\n [nativeId]=\"nativeId\"\n [readOnly]=\"readOnly\"\n [disabled]=\"computedDisabled\"\n [focusable]=\"focusable\"\n [textMask]=\"textMaskOptions\"\n [value]=\"computedValue\"\n [tuiTextfieldCleaner]=\"canClean\"\n (valueChange)=\"onValueChange($event)\"\n (drop)=\"onDrop($event)\"\n (keydown.backspace)=\"onBackspace($event)\"\n (paste.prevent)=\"onPaste($event)\"\n >\n <ng-content></ng-content>\n <ng-content\n select=\"input\"\n ngProjectAs=\"input\"\n ></ng-content>\n </tui-primitive-textfield>\n</tui-hosted-dropdown>\n", styles: [":host{display:block;border-radius:var(--tui-radius-m);text-align:left}:host._disabled{pointer-events:none}.t-hosted{display:block;border-radius:inherit}.t-textfield{border-radius:inherit;text-align:inherit}\n"], components: [{ type: i1.TuiHostedDropdownComponent, selector: "tui-hosted-dropdown", inputs: ["content", "canOpen", "open"], outputs: ["openChange", "focusedChange"] }, { type: i1.TuiPrimitiveTextfieldComponent, selector: "tui-primitive-textfield", inputs: ["editable", "filler", "iconCleaner", "readOnly", "invalid", "disabled", "prefix", "postfix", "value"], outputs: ["valueChange"] }], directives: [{ type: i2.TuiActiveZoneDirective, selector: "[tuiActiveZone]:not(ng-container), [tuiActiveZoneChange]:not(ng-container), [tuiActiveZoneParent]:not(ng-container)", inputs: ["tuiActiveZoneParent"], outputs: ["tuiActiveZoneChange"], exportAs: ["tuiActiveZone"] }, { type: i1.TuiPrimitiveTextfieldDirective, selector: "tui-primitive-textfield" }, { type: i3.TuiValueAccessorDirective, selector: "[tuiValueAccessor]" }, { type: i1.TuiTextfieldTypeDirective, selector: "[tuiTextfieldType]", inputs: ["tuiTextfieldType"] }, { type: i1.TuiTextfieldInputModeDirective, selector: "[tuiTextfieldInputMode]", inputs: ["tuiTextfieldInputMode"] }, { type: i4.MaskedInputDirective, selector: "[textMask]", inputs: ["textMask"], exportAs: ["textMask"] }, { type: i1.TuiTextfieldCleanerDirective, selector: "[tuiTextfieldCleaner]", inputs: ["tuiTextfieldCleaner"] }], viewProviders: [FIXED_DROPDOWN_CONTROLLER_PROVIDER], changeDetection: i0.ChangeDetectionStrategy.OnPush });
248
223
  __decorate([
249
224
  tuiRequiredSetter()
250
225
  ], TuiInputPhoneComponent.prototype, "countryCodeSetter", null);
@@ -264,7 +239,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
264
239
  templateUrl: `./input-phone.template.html`,
265
240
  styleUrls: [`./input-phone.style.less`],
266
241
  changeDetection: ChangeDetectionStrategy.OnPush,
267
- providers: INPUT_PHONE_PROVIDERS,
242
+ providers: [
243
+ TuiDestroyService,
244
+ tuiAsFocusableItemAccessor(TuiInputPhoneComponent),
245
+ tuiAsControl(TuiInputPhoneComponent),
246
+ tuiAsDataListHost(TuiInputPhoneComponent),
247
+ ],
248
+ viewProviders: [FIXED_DROPDOWN_CONTROLLER_PROVIDER],
268
249
  }]
269
250
  }], ctorParameters: function () { return [{ type: i5.NgControl, decorators: [{
270
251
  type: Optional
@@ -273,12 +254,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
273
254
  }, {
274
255
  type: Inject,
275
256
  args: [NgControl]
257
+ }] }, { type: i6.Observable, decorators: [{
258
+ type: Inject,
259
+ args: [TuiDestroyService]
276
260
  }] }, { type: i0.ChangeDetectorRef, decorators: [{
277
261
  type: Inject,
278
262
  args: [ChangeDetectorRef]
279
263
  }] }, { type: i6.Observable, decorators: [{
280
264
  type: Inject,
281
- args: [SELECTION_STREAM]
265
+ args: [TUI_SELECTION_STREAM]
282
266
  }] }, { type: i1.TuiTextfieldCleanerDirective, decorators: [{
283
267
  type: Inject,
284
268
  args: [TUI_TEXTFIELD_CLEANER]
@@ -329,22 +313,12 @@ class TuiInputPhoneDirective extends TuiAbstractTextfieldHost {
329
313
  }
330
314
  }
331
315
  TuiInputPhoneDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiInputPhoneDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
332
- TuiInputPhoneDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: TuiInputPhoneDirective, selector: "tui-input-phone", providers: [
333
- {
334
- provide: TUI_TEXTFIELD_HOST,
335
- useExisting: forwardRef(() => TuiInputPhoneDirective),
336
- },
337
- ], usesInheritance: true, ngImport: i0 });
316
+ TuiInputPhoneDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", type: TuiInputPhoneDirective, selector: "tui-input-phone", providers: [tuiAsTextfieldHost(TuiInputPhoneDirective)], usesInheritance: true, ngImport: i0 });
338
317
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: TuiInputPhoneDirective, decorators: [{
339
318
  type: Directive,
340
319
  args: [{
341
320
  selector: `tui-input-phone`,
342
- providers: [
343
- {
344
- provide: TUI_TEXTFIELD_HOST,
345
- useExisting: forwardRef(() => TuiInputPhoneDirective),
346
- },
347
- ],
321
+ providers: [tuiAsTextfieldHost(TuiInputPhoneDirective)],
348
322
  }]
349
323
  }] });
350
324
 
@@ -385,5 +359,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
385
359
  * Generated bundle index. Do not edit.
386
360
  */
387
361
 
388
- export { INPUT_PHONE_PROVIDERS, SELECTION_STREAM, TUI_INPUT_PHONE_DEFAULT_OPTIONS, TUI_INPUT_PHONE_OPTIONS, TuiInputPhoneComponent, TuiInputPhoneDirective, TuiInputPhoneModule, selectionStreamFactory, tuiInputPhoneOptionsProvider };
362
+ export { TUI_INPUT_PHONE_DEFAULT_OPTIONS, TUI_INPUT_PHONE_OPTIONS, TuiInputPhoneComponent, TuiInputPhoneDirective, TuiInputPhoneModule, tuiInputPhoneOptionsProvider };
389
363
  //# sourceMappingURL=taiga-ui-kit-components-input-phone.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-input-phone.js","sources":["../../../projects/kit/components/input-phone/input-phone.options.ts","../../../projects/kit/components/input-phone/input-phone.providers.ts","../../../projects/kit/components/input-phone/input-phone.component.ts","../../../projects/kit/components/input-phone/input-phone.template.html","../../../projects/kit/components/input-phone/input-phone.directive.ts","../../../projects/kit/components/input-phone/input-phone.module.ts","../../../projects/kit/components/input-phone/taiga-ui-kit-components-input-phone.ts"],"sourcesContent":["import {InjectionToken, ValueProvider} from '@angular/core';\n\nexport interface TuiInputPhoneOptions {\n readonly phoneMaskAfterCountryCode: string;\n readonly allowText: boolean;\n readonly countryCode: string;\n}\n\nexport const TUI_INPUT_PHONE_DEFAULT_OPTIONS: TuiInputPhoneOptions = {\n phoneMaskAfterCountryCode: `### ###-##-##`,\n allowText: false,\n countryCode: `+7`,\n};\n\nexport const TUI_INPUT_PHONE_OPTIONS = new InjectionToken<TuiInputPhoneOptions>(\n `Default parameters for input phone component`,\n {\n factory: () => TUI_INPUT_PHONE_DEFAULT_OPTIONS,\n },\n);\n\nexport const tuiInputPhoneOptionsProvider: (\n options: Partial<TuiInputPhoneOptions>,\n) => ValueProvider = (options: Partial<TuiInputPhoneOptions>) => ({\n provide: TUI_INPUT_PHONE_OPTIONS,\n useValue: {...TUI_INPUT_PHONE_DEFAULT_OPTIONS, ...options},\n});\n","import {DOCUMENT} from '@angular/common';\nimport {forwardRef, InjectionToken} from '@angular/core';\nimport {\n AbstractTuiControl,\n TUI_FOCUSABLE_ITEM_ACCESSOR,\n TuiDestroyService,\n} from '@taiga-ui/cdk';\nimport {TUI_DATA_LIST_HOST} from '@taiga-ui/core';\nimport {FIXED_DROPDOWN_CONTROLLER_PROVIDER} from '@taiga-ui/kit/providers';\nimport {fromEvent, merge, Observable} from 'rxjs';\nimport {flatMap, startWith, takeUntil, windowToggle} from 'rxjs/operators';\n\nimport {TuiInputPhoneComponent} from './input-phone.component';\n\nexport const SELECTION_STREAM = new InjectionToken<Observable<unknown>>(\n `A stream of selection changes`,\n);\nexport const INPUT_PHONE_PROVIDERS = [\n TuiDestroyService,\n FIXED_DROPDOWN_CONTROLLER_PROVIDER,\n {\n provide: AbstractTuiControl,\n useExisting: forwardRef(() => TuiInputPhoneComponent),\n },\n {\n provide: TUI_FOCUSABLE_ITEM_ACCESSOR,\n useExisting: forwardRef(() => TuiInputPhoneComponent),\n },\n {\n provide: TUI_DATA_LIST_HOST,\n useExisting: forwardRef(() => TuiInputPhoneComponent),\n },\n {\n provide: SELECTION_STREAM,\n deps: [TuiDestroyService, DOCUMENT],\n useFactory: selectionStreamFactory,\n },\n];\n\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport function selectionStreamFactory(\n destroy$: Observable<unknown>,\n documentRef: Document,\n): Observable<unknown> {\n return fromEvent(documentRef, `selectionchange`).pipe(\n windowToggle(\n merge(fromEvent(documentRef, `mouseup`), fromEvent(documentRef, `keydown`)),\n () => fromEvent(documentRef, `mousedown`),\n ),\n flatMap(windowed$ => windowed$.pipe(startWith(null))),\n takeUntil(destroy$),\n );\n}\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n EventEmitter,\n Inject,\n Input,\n Optional,\n Output,\n Self,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiControl,\n getClipboardDataText,\n setNativeFocused,\n TuiActiveZoneDirective,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiFocusableElementAccessor,\n TuiInputMode,\n tuiIsNativeFocused,\n tuiRequiredSetter,\n} from '@taiga-ui/cdk';\nimport {\n formatPhone,\n TUI_MASK_SYMBOLS_REGEXP,\n TUI_TEXTFIELD_CLEANER,\n TuiDataListDirective,\n TuiDataListHost,\n TuiHostedDropdownComponent,\n TuiPrimitiveTextfieldComponent,\n TuiTextfieldCleanerDirective,\n TuiTextMaskOptions,\n} from '@taiga-ui/core';\nimport {TextMaskConfig} from 'angular2-text-mask';\nimport {Observable} from 'rxjs';\n\nimport {TUI_INPUT_PHONE_OPTIONS, TuiInputPhoneOptions} from './input-phone.options';\nimport {INPUT_PHONE_PROVIDERS, SELECTION_STREAM} from './input-phone.providers';\n\n// @dynamic\n@Component({\n selector: `tui-input-phone`,\n templateUrl: `./input-phone.template.html`,\n styleUrls: [`./input-phone.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: INPUT_PHONE_PROVIDERS,\n})\nexport class TuiInputPhoneComponent\n extends AbstractTuiControl<string>\n implements TuiFocusableElementAccessor, TuiDataListHost<string>\n{\n @ViewChild(TuiHostedDropdownComponent)\n private readonly dropdown?: TuiHostedDropdownComponent;\n\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n @Input(`countryCode`)\n @tuiRequiredSetter()\n set countryCodeSetter(countryCode: string) {\n this.updateValueWithNewCountryCode(countryCode);\n this.countryCode = countryCode;\n }\n\n @Input()\n @tuiDefaultProp()\n phoneMaskAfterCountryCode = this.options.phoneMaskAfterCountryCode;\n\n @Input()\n @tuiDefaultProp()\n allowText = this.options.allowText;\n\n @Input()\n @tuiDefaultProp()\n search = ``;\n\n @Output()\n readonly searchChange = new EventEmitter<string>();\n\n @ContentChild(TuiDataListDirective, {read: TemplateRef})\n readonly datalist?: TemplateRef<TuiContextWithImplicit<TuiActiveZoneDirective>>;\n\n readonly textMaskOptions: TextMaskConfig = {\n mask: value =>\n this.allowText && !this.value && isText(value) && value !== `+`\n ? false\n : [\n ...this.countryCode.split(``),\n ` `,\n ...this.phoneMaskAfterCountryCode\n .replace(/[^#\\- ()]+/g, ``)\n .split(``)\n .map(item => (item === `#` ? /\\d/ : item)),\n ],\n pipe: value => {\n if (this.allowText) {\n return value;\n }\n\n return value === `` && this.focused && !this.readOnly\n ? `${this.countryCode} `\n : value.replace(/-$/, ``);\n },\n guide: false,\n } as TuiTextMaskOptions as unknown as TextMaskConfig;\n\n countryCode = this.options.countryCode;\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(SELECTION_STREAM)\n selection$: Observable<unknown>,\n @Inject(TUI_TEXTFIELD_CLEANER)\n private readonly textfieldCleaner: TuiTextfieldCleanerDirective,\n @Inject(TUI_INPUT_PHONE_OPTIONS)\n private readonly options: TuiInputPhoneOptions,\n ) {\n super(control, changeDetectorRef);\n\n selection$.subscribe(() => {\n this.setCaretPosition();\n });\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return !this.textfield || this.computedDisabled\n ? null\n : this.textfield.nativeFocusableElement;\n }\n\n get focused(): boolean {\n return (\n tuiIsNativeFocused(this.nativeFocusableElement) ||\n (!!this.dropdown && this.dropdown.focused)\n );\n }\n\n get computedValue(): string {\n return this.value\n ? formatPhone(this.value, this.countryCode, this.phoneMaskAfterCountryCode)\n : this.search || ``;\n }\n\n get inputMode(): TuiInputMode {\n return this.allowText ? `text` : `numeric`;\n }\n\n get canOpen(): boolean {\n return this.interactive && !!this.datalist;\n }\n\n get canClean(): boolean {\n return this.computedValue !== this.countryCode && this.textfieldCleaner.cleaner;\n }\n\n onDrop(event: DragEvent): void {\n if (!event.dataTransfer) {\n return;\n }\n\n this.setValueWithoutPrefix(event.dataTransfer.getData(`text`));\n event.preventDefault();\n }\n\n onPaste(event: Event): void {\n this.setValueWithoutPrefix(getClipboardDataText(event as ClipboardEvent));\n }\n\n onActiveZone(active: boolean): void {\n this.updateFocused(active);\n\n if (active && !this.computedValue && !this.readOnly && !this.allowText) {\n this.updateSearch(this.countryCode);\n\n return;\n }\n\n if (\n this.computedValue === this.countryCode ||\n (this.search !== null &&\n isNaN(parseInt(this.search.replace(TUI_MASK_SYMBOLS_REGEXP, ``), 10)))\n ) {\n this.updateSearch(``);\n }\n }\n\n onBackspace(event: Event): void {\n const target = event.target as HTMLInputElement;\n\n if (\n (target.selectionStart || 0) <= this.nonRemovableLength &&\n target.selectionStart === target.selectionEnd\n ) {\n event.preventDefault();\n }\n }\n\n onValueChange(value: string): void {\n value = value === `` ? this.countryCode : value;\n\n const parsed = isText(value) ? value : value.replace(TUI_MASK_SYMBOLS_REGEXP, ``);\n\n this.updateSearch(parsed);\n this.updateValue(parsed === this.countryCode || isText(parsed) ? `` : parsed);\n this.open = true;\n }\n\n handleOption(item: string): void {\n this.focusInput();\n this.updateValue(item);\n this.updateSearch(``);\n this.open = false;\n }\n\n setDisabledState(): void {\n super.setDisabledState();\n this.open = false;\n }\n\n writeValue(value: string | null): void {\n super.writeValue(value);\n this.updateSearch(``);\n }\n\n protected getFallbackValue(): string {\n return ``;\n }\n\n private get caretIsInForbiddenArea(): boolean {\n const {nativeFocusableElement} = this;\n\n if (!nativeFocusableElement) {\n return false;\n }\n\n const {selectionStart, selectionEnd} = nativeFocusableElement;\n\n return (\n tuiIsNativeFocused(nativeFocusableElement) &&\n selectionStart !== null &&\n selectionStart < this.nonRemovableLength &&\n selectionStart === selectionEnd\n );\n }\n\n private get nonRemovableLength(): number {\n return this.isTextValue ? 0 : this.countryCode.length + 1;\n }\n\n private get maxPhoneLength(): number {\n return (\n this.countryCode.length +\n this.phoneMaskAfterCountryCode.replace(/[^#]+/g, ``).length\n );\n }\n\n private get isTextValue(): boolean {\n return !!this.search && isText(this.search);\n }\n\n private setCaretPosition(): void {\n if (this.caretIsInForbiddenArea && !!this.nativeFocusableElement) {\n this.nativeFocusableElement.setSelectionRange(\n this.nonRemovableLength,\n this.nonRemovableLength,\n );\n }\n }\n\n private setValueWithoutPrefix(value: string): void {\n if (this.readOnly) {\n return;\n }\n\n this.open = true;\n this.updateValue(this.cleanValue(value));\n this.updateSearch(\n this.allowText && isText(value)\n ? value\n : value.replace(TUI_MASK_SYMBOLS_REGEXP, ``),\n );\n }\n\n private cleanValue(value: string): string {\n const reg: RegExp =\n this.countryCode === `+7` ? /^7|^8/ : new RegExp(this.countryCode.slice(1));\n const oldValueExist =\n this.value.length > this.countryCode.length &&\n this.value.length < this.maxPhoneLength;\n const newValueLength = value.replace(TUI_MASK_SYMBOLS_REGEXP, ``).length;\n const cleanNewValue = value.replace(/[^0-9]+/g, ``);\n const selectionLength = String(getSelection()).length;\n\n if (oldValueExist && selectionLength === 0) {\n return `${this.value}${cleanNewValue}`.slice(0, this.maxPhoneLength);\n }\n\n if (newValueLength < this.maxPhoneLength - 1) {\n return `${this.countryCode}${cleanNewValue}`.slice(0, this.maxPhoneLength);\n }\n\n return `${this.countryCode}${cleanNewValue.replace(reg, ``)}`.slice(\n 0,\n this.maxPhoneLength,\n );\n }\n\n private focusInput(): void {\n if (this.nativeFocusableElement) {\n setNativeFocused(this.nativeFocusableElement, true, true);\n }\n }\n\n private updateSearch(search: string): void {\n if (this.search === search) {\n return;\n }\n\n this.search = search;\n this.searchChange.emit(search);\n }\n\n private updateValueWithNewCountryCode(newCountryCode: string): void {\n if (!this.isTextValue) {\n this.updateValue(this.value.replace(this.countryCode, newCountryCode));\n }\n }\n}\n\nfunction isText(value: string): boolean {\n return isNaN(parseInt(value.replace(TUI_MASK_SYMBOLS_REGEXP, ``), 10));\n}\n","<tui-hosted-dropdown\n class=\"hosted\"\n [canOpen]=\"canOpen\"\n [content]=\"datalist || ''\"\n [(open)]=\"open\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <tui-primitive-textfield\n tuiValueAccessor\n tuiTextfieldType=\"tel\"\n class=\"textfield\"\n [tuiTextfieldInputMode]=\"inputMode\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoFocus]=\"computedFocused\"\n [invalid]=\"computedInvalid\"\n [nativeId]=\"nativeId\"\n [readOnly]=\"readOnly\"\n [disabled]=\"computedDisabled\"\n [focusable]=\"focusable\"\n [textMask]=\"textMaskOptions\"\n [value]=\"computedValue\"\n [tuiTextfieldCleaner]=\"canClean\"\n (valueChange)=\"onValueChange($event)\"\n (drop)=\"onDrop($event)\"\n (keydown.backspace)=\"onBackspace($event)\"\n (paste.prevent)=\"onPaste($event)\"\n >\n <ng-content></ng-content>\n <ng-content\n select=\"input\"\n ngProjectAs=\"input\"\n ></ng-content>\n </tui-primitive-textfield>\n</tui-hosted-dropdown>\n","import {Directive, DoCheck, forwardRef} from '@angular/core';\nimport {TUI_TEXTFIELD_HOST, TuiAbstractTextfieldHost} from '@taiga-ui/core';\n\nimport {TuiInputPhoneComponent} from './input-phone.component';\n\n@Directive({\n selector: `tui-input-phone`,\n providers: [\n {\n provide: TUI_TEXTFIELD_HOST,\n useExisting: forwardRef(() => TuiInputPhoneDirective),\n },\n ],\n})\nexport class TuiInputPhoneDirective\n extends TuiAbstractTextfieldHost<TuiInputPhoneComponent>\n implements DoCheck\n{\n input?: HTMLInputElement;\n\n get value(): string {\n return this.host.computedValue;\n }\n\n onValueChange(value: string): void {\n this.host.onValueChange(value);\n }\n\n process(input: HTMLInputElement): void {\n this.input = input;\n }\n\n ngDoCheck(): void {\n if (!this.input) {\n return;\n }\n\n this.input.type = `tel`;\n this.input.inputMode = this.host.inputMode;\n }\n}\n","import {NgModule} from '@angular/core';\nimport {TuiActiveZoneModule} from '@taiga-ui/cdk';\nimport {\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldComponent,\n TuiTextfieldControllerModule,\n} from '@taiga-ui/core';\nimport {TuiValueAccessorModule} from '@taiga-ui/kit/directives';\nimport {TextMaskModule} from 'angular2-text-mask';\n\nimport {TuiInputPhoneComponent} from './input-phone.component';\nimport {TuiInputPhoneDirective} from './input-phone.directive';\n\n@NgModule({\n imports: [\n TextMaskModule,\n TuiPrimitiveTextfieldModule,\n TuiHostedDropdownModule,\n TuiTextfieldControllerModule,\n TuiActiveZoneModule,\n TuiValueAccessorModule,\n ],\n declarations: [TuiInputPhoneComponent, TuiInputPhoneDirective],\n exports: [TuiInputPhoneComponent, TuiInputPhoneDirective, TuiTextfieldComponent],\n})\nexport class TuiInputPhoneModule {}\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.js","sources":["../../../projects/kit/components/input-phone/input-phone.options.ts","../../../projects/kit/components/input-phone/input-phone.component.ts","../../../projects/kit/components/input-phone/input-phone.template.html","../../../projects/kit/components/input-phone/input-phone.directive.ts","../../../projects/kit/components/input-phone/input-phone.module.ts","../../../projects/kit/components/input-phone/taiga-ui-kit-components-input-phone.ts"],"sourcesContent":["import {InjectionToken, ValueProvider} from '@angular/core';\n\nexport interface TuiInputPhoneOptions {\n readonly phoneMaskAfterCountryCode: string;\n readonly allowText: boolean;\n readonly countryCode: string;\n}\n\nexport const TUI_INPUT_PHONE_DEFAULT_OPTIONS: TuiInputPhoneOptions = {\n phoneMaskAfterCountryCode: `### ###-##-##`,\n allowText: false,\n countryCode: `+7`,\n};\n\nexport const TUI_INPUT_PHONE_OPTIONS = new InjectionToken<TuiInputPhoneOptions>(\n `Default parameters for input phone component`,\n {\n factory: () => TUI_INPUT_PHONE_DEFAULT_OPTIONS,\n },\n);\n\nexport const tuiInputPhoneOptionsProvider: (\n options: Partial<TuiInputPhoneOptions>,\n) => ValueProvider = (options: Partial<TuiInputPhoneOptions>) => ({\n provide: TUI_INPUT_PHONE_OPTIONS,\n useValue: {...TUI_INPUT_PHONE_DEFAULT_OPTIONS, ...options},\n});\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n EventEmitter,\n Inject,\n Input,\n Optional,\n Output,\n Self,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport {NgControl} from '@angular/forms';\nimport {\n AbstractTuiControl,\n TuiActiveZoneDirective,\n tuiAsControl,\n tuiAsFocusableItemAccessor,\n TuiContextWithImplicit,\n tuiDefaultProp,\n TuiDestroyService,\n TuiFocusableElementAccessor,\n tuiGetClipboardDataText,\n TuiInputMode,\n tuiIsNativeFocused,\n tuiRequiredSetter,\n} from '@taiga-ui/cdk';\nimport {\n TUI_MASK_SYMBOLS_REGEXP,\n TUI_SELECTION_STREAM,\n TUI_TEXTFIELD_CLEANER,\n tuiAsDataListHost,\n TuiDataListDirective,\n TuiDataListHost,\n tuiFormatPhone,\n TuiHostedDropdownComponent,\n TuiPrimitiveTextfieldComponent,\n TuiTextfieldCleanerDirective,\n TuiTextMaskOptions,\n} from '@taiga-ui/core';\nimport {FIXED_DROPDOWN_CONTROLLER_PROVIDER} from '@taiga-ui/kit/providers';\nimport {TextMaskConfig} from 'angular2-text-mask';\nimport {Observable} from 'rxjs';\nimport {takeUntil} from 'rxjs/operators';\n\nimport {TUI_INPUT_PHONE_OPTIONS, TuiInputPhoneOptions} from './input-phone.options';\n\n@Component({\n selector: `tui-input-phone`,\n templateUrl: `./input-phone.template.html`,\n styleUrls: [`./input-phone.style.less`],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n TuiDestroyService,\n tuiAsFocusableItemAccessor(TuiInputPhoneComponent),\n tuiAsControl(TuiInputPhoneComponent),\n tuiAsDataListHost(TuiInputPhoneComponent),\n ],\n viewProviders: [FIXED_DROPDOWN_CONTROLLER_PROVIDER],\n})\nexport class TuiInputPhoneComponent\n extends AbstractTuiControl<string>\n implements TuiFocusableElementAccessor, TuiDataListHost<string>\n{\n @ViewChild(TuiHostedDropdownComponent)\n private readonly dropdown?: TuiHostedDropdownComponent;\n\n @ViewChild(TuiPrimitiveTextfieldComponent)\n private readonly textfield?: TuiPrimitiveTextfieldComponent;\n\n @Input(`countryCode`)\n @tuiRequiredSetter()\n set countryCodeSetter(countryCode: string) {\n this.updateValueWithNewCountryCode(countryCode);\n this.countryCode = countryCode;\n }\n\n @Input()\n @tuiDefaultProp()\n phoneMaskAfterCountryCode = this.options.phoneMaskAfterCountryCode;\n\n @Input()\n @tuiDefaultProp()\n allowText = this.options.allowText;\n\n @Input()\n @tuiDefaultProp()\n search = ``;\n\n @Output()\n readonly searchChange = new EventEmitter<string>();\n\n @ContentChild(TuiDataListDirective, {read: TemplateRef})\n readonly datalist?: TemplateRef<TuiContextWithImplicit<TuiActiveZoneDirective>>;\n\n readonly textMaskOptions: TextMaskConfig = {\n mask: value =>\n this.allowText && !this.value && isText(value) && value !== `+`\n ? false\n : [\n ...this.countryCode.split(``),\n ` `,\n ...this.phoneMaskAfterCountryCode\n .replace(/[^#\\- ()]+/g, ``)\n .split(``)\n .map(item => (item === `#` ? /\\d/ : item)),\n ],\n pipe: value => {\n if (this.allowText) {\n return value;\n }\n\n return value === `` && this.focused && !this.readOnly\n ? `${this.countryCode} `\n : value.replace(/-$/, ``);\n },\n guide: false,\n } as TuiTextMaskOptions as unknown as TextMaskConfig;\n\n countryCode = this.options.countryCode;\n\n open = false;\n\n constructor(\n @Optional() @Self() @Inject(NgControl) control: NgControl | null,\n @Inject(TuiDestroyService) destroy$: Observable<unknown>,\n @Inject(ChangeDetectorRef) changeDetectorRef: ChangeDetectorRef,\n @Inject(TUI_SELECTION_STREAM) selection$: Observable<unknown>,\n @Inject(TUI_TEXTFIELD_CLEANER)\n private readonly textfieldCleaner: TuiTextfieldCleanerDirective,\n @Inject(TUI_INPUT_PHONE_OPTIONS) private readonly options: TuiInputPhoneOptions,\n ) {\n super(control, changeDetectorRef);\n\n selection$.pipe(takeUntil(destroy$)).subscribe(() => {\n this.setCaretPosition();\n });\n }\n\n get nativeFocusableElement(): HTMLInputElement | null {\n return !this.textfield || this.computedDisabled\n ? null\n : this.textfield.nativeFocusableElement;\n }\n\n get focused(): boolean {\n return (\n tuiIsNativeFocused(this.nativeFocusableElement) ||\n (!!this.dropdown && this.dropdown.focused)\n );\n }\n\n get computedValue(): string {\n return this.value\n ? tuiFormatPhone(this.value, this.countryCode, this.phoneMaskAfterCountryCode)\n : this.search || ``;\n }\n\n get inputMode(): TuiInputMode {\n return this.allowText ? `text` : `numeric`;\n }\n\n get canOpen(): boolean {\n return this.interactive && !!this.datalist;\n }\n\n get canClean(): boolean {\n return this.computedValue !== this.countryCode && this.textfieldCleaner.cleaner;\n }\n\n onDrop(event: DragEvent): void {\n if (!event.dataTransfer) {\n return;\n }\n\n this.setValueWithoutPrefix(event.dataTransfer.getData(`text`));\n event.preventDefault();\n }\n\n onPaste(event: Event): void {\n this.setValueWithoutPrefix(tuiGetClipboardDataText(event as ClipboardEvent));\n }\n\n onActiveZone(active: boolean): void {\n this.updateFocused(active);\n\n if (active && !this.computedValue && !this.readOnly && !this.allowText) {\n this.updateSearch(this.countryCode);\n\n return;\n }\n\n if (\n this.computedValue === this.countryCode ||\n (this.search !== null &&\n isNaN(parseInt(this.search.replace(TUI_MASK_SYMBOLS_REGEXP, ``), 10)))\n ) {\n this.updateSearch(``);\n }\n }\n\n onBackspace(event: Event): void {\n const target = event.target as HTMLInputElement;\n\n if (\n (target.selectionStart || 0) <= this.nonRemovableLength &&\n target.selectionStart === target.selectionEnd\n ) {\n event.preventDefault();\n }\n }\n\n onValueChange(value: string): void {\n value = value === `` ? this.countryCode : value;\n\n const parsed = isText(value) ? value : value.replace(TUI_MASK_SYMBOLS_REGEXP, ``);\n\n this.updateSearch(parsed);\n this.updateValue(parsed === this.countryCode || isText(parsed) ? `` : parsed);\n this.open = true;\n }\n\n handleOption(item: string): void {\n this.focusInput();\n this.updateValue(item);\n this.updateSearch(``);\n this.open = false;\n }\n\n setDisabledState(): void {\n super.setDisabledState();\n this.open = false;\n }\n\n writeValue(value: string | null): void {\n super.writeValue(value);\n this.updateSearch(``);\n }\n\n protected getFallbackValue(): string {\n return ``;\n }\n\n private get caretIsInForbiddenArea(): boolean {\n const {nativeFocusableElement} = this;\n\n if (!nativeFocusableElement) {\n return false;\n }\n\n const {selectionStart, selectionEnd} = nativeFocusableElement;\n\n return (\n tuiIsNativeFocused(nativeFocusableElement) &&\n selectionStart !== null &&\n selectionStart < this.nonRemovableLength &&\n selectionStart === selectionEnd\n );\n }\n\n private get nonRemovableLength(): number {\n return this.isTextValue ? 0 : this.countryCode.length + 1;\n }\n\n private get maxPhoneLength(): number {\n return (\n this.countryCode.length +\n this.phoneMaskAfterCountryCode.replace(/[^#]+/g, ``).length\n );\n }\n\n private get isTextValue(): boolean {\n return !!this.search && isText(this.search);\n }\n\n private setCaretPosition(): void {\n if (this.caretIsInForbiddenArea && !!this.nativeFocusableElement) {\n this.nativeFocusableElement.setSelectionRange(\n this.nonRemovableLength,\n this.nonRemovableLength,\n );\n }\n }\n\n private setValueWithoutPrefix(value: string): void {\n if (this.readOnly) {\n return;\n }\n\n this.open = true;\n this.updateValue(this.cleanValue(value));\n this.updateSearch(\n this.allowText && isText(value)\n ? value\n : value.replace(TUI_MASK_SYMBOLS_REGEXP, ``),\n );\n }\n\n private cleanValue(value: string): string {\n const reg: RegExp =\n this.countryCode === `+7` ? /^7|^8/ : new RegExp(this.countryCode.slice(1));\n const oldValueExist =\n this.value.length > this.countryCode.length &&\n this.value.length < this.maxPhoneLength;\n const newValueLength = value.replace(TUI_MASK_SYMBOLS_REGEXP, ``).length;\n const cleanNewValue = value.replace(/[^0-9]+/g, ``);\n const selectionLength = String(getSelection()).length;\n\n if (oldValueExist && selectionLength === 0) {\n return `${this.value}${cleanNewValue}`.slice(0, this.maxPhoneLength);\n }\n\n if (newValueLength < this.maxPhoneLength - 1) {\n return `${this.countryCode}${cleanNewValue}`.slice(0, this.maxPhoneLength);\n }\n\n return `${this.countryCode}${cleanNewValue.replace(reg, ``)}`.slice(\n 0,\n this.maxPhoneLength,\n );\n }\n\n private focusInput(): void {\n if (this.nativeFocusableElement) {\n this.nativeFocusableElement.focus({preventScroll: true});\n }\n }\n\n private updateSearch(search: string): void {\n if (this.search === search) {\n return;\n }\n\n this.search = search;\n this.searchChange.emit(search);\n }\n\n private updateValueWithNewCountryCode(newCountryCode: string): void {\n if (!this.isTextValue) {\n this.updateValue(this.value.replace(this.countryCode, newCountryCode));\n }\n }\n}\n\nfunction isText(value: string): boolean {\n return isNaN(parseInt(value.replace(TUI_MASK_SYMBOLS_REGEXP, ``), 10));\n}\n","<tui-hosted-dropdown\n class=\"t-hosted\"\n [canOpen]=\"canOpen\"\n [content]=\"datalist || ''\"\n [(open)]=\"open\"\n (tuiActiveZoneChange)=\"onActiveZone($event)\"\n>\n <tui-primitive-textfield\n tuiValueAccessor\n tuiTextfieldType=\"tel\"\n class=\"t-textfield\"\n [tuiTextfieldInputMode]=\"inputMode\"\n [pseudoHover]=\"pseudoHover\"\n [pseudoFocus]=\"computedFocused\"\n [invalid]=\"computedInvalid\"\n [nativeId]=\"nativeId\"\n [readOnly]=\"readOnly\"\n [disabled]=\"computedDisabled\"\n [focusable]=\"focusable\"\n [textMask]=\"textMaskOptions\"\n [value]=\"computedValue\"\n [tuiTextfieldCleaner]=\"canClean\"\n (valueChange)=\"onValueChange($event)\"\n (drop)=\"onDrop($event)\"\n (keydown.backspace)=\"onBackspace($event)\"\n (paste.prevent)=\"onPaste($event)\"\n >\n <ng-content></ng-content>\n <ng-content\n select=\"input\"\n ngProjectAs=\"input\"\n ></ng-content>\n </tui-primitive-textfield>\n</tui-hosted-dropdown>\n","import {Directive, DoCheck} from '@angular/core';\nimport {TuiAbstractTextfieldHost, tuiAsTextfieldHost} from '@taiga-ui/core';\n\nimport {TuiInputPhoneComponent} from './input-phone.component';\n\n@Directive({\n selector: `tui-input-phone`,\n providers: [tuiAsTextfieldHost(TuiInputPhoneDirective)],\n})\nexport class TuiInputPhoneDirective\n extends TuiAbstractTextfieldHost<TuiInputPhoneComponent>\n implements DoCheck\n{\n input?: HTMLInputElement;\n\n get value(): string {\n return this.host.computedValue;\n }\n\n onValueChange(value: string): void {\n this.host.onValueChange(value);\n }\n\n process(input: HTMLInputElement): void {\n this.input = input;\n }\n\n ngDoCheck(): void {\n if (!this.input) {\n return;\n }\n\n this.input.type = `tel`;\n this.input.inputMode = this.host.inputMode;\n }\n}\n","import {NgModule} from '@angular/core';\nimport {TuiActiveZoneModule} from '@taiga-ui/cdk';\nimport {\n TuiHostedDropdownModule,\n TuiPrimitiveTextfieldModule,\n TuiTextfieldComponent,\n TuiTextfieldControllerModule,\n} from '@taiga-ui/core';\nimport {TuiValueAccessorModule} from '@taiga-ui/kit/directives';\nimport {TextMaskModule} from 'angular2-text-mask';\n\nimport {TuiInputPhoneComponent} from './input-phone.component';\nimport {TuiInputPhoneDirective} from './input-phone.directive';\n\n@NgModule({\n imports: [\n TextMaskModule,\n TuiPrimitiveTextfieldModule,\n TuiHostedDropdownModule,\n TuiTextfieldControllerModule,\n TuiActiveZoneModule,\n TuiValueAccessorModule,\n ],\n declarations: [TuiInputPhoneComponent, TuiInputPhoneDirective],\n exports: [TuiInputPhoneComponent, TuiInputPhoneDirective, TuiTextfieldComponent],\n})\nexport class TuiInputPhoneModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}