@taiga-ui/core 3.51.0 → 3.52.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (614) hide show
  1. package/abstract/taiga-ui-core-abstract.d.ts +3 -0
  2. package/animations/taiga-ui-core-animations.d.ts +3 -0
  3. package/bundles/taiga-ui-core-abstract.umd.js +9 -0
  4. package/bundles/taiga-ui-core-abstract.umd.js.map +1 -1
  5. package/bundles/taiga-ui-core-animations.umd.js +4 -0
  6. package/bundles/taiga-ui-core-animations.umd.js.map +1 -1
  7. package/bundles/taiga-ui-core-components-alert.umd.js +16 -1
  8. package/bundles/taiga-ui-core-components-alert.umd.js.map +1 -1
  9. package/bundles/taiga-ui-core-components-button.umd.js +7 -0
  10. package/bundles/taiga-ui-core-components-button.umd.js.map +1 -1
  11. package/bundles/taiga-ui-core-components-calendar.umd.js +4 -0
  12. package/bundles/taiga-ui-core-components-calendar.umd.js.map +1 -1
  13. package/bundles/taiga-ui-core-components-data-list.umd.js +10 -0
  14. package/bundles/taiga-ui-core-components-data-list.umd.js.map +1 -1
  15. package/bundles/taiga-ui-core-components-dialog.umd.js +12 -0
  16. package/bundles/taiga-ui-core-components-dialog.umd.js.map +1 -1
  17. package/bundles/taiga-ui-core-components-error.umd.js +4 -0
  18. package/bundles/taiga-ui-core-components-error.umd.js.map +1 -1
  19. package/bundles/taiga-ui-core-components-expand.umd.js +5 -0
  20. package/bundles/taiga-ui-core-components-expand.umd.js.map +1 -1
  21. package/bundles/taiga-ui-core-components-group.umd.js +4 -0
  22. package/bundles/taiga-ui-core-components-group.umd.js.map +1 -1
  23. package/bundles/taiga-ui-core-components-hints-host.umd.js +8 -0
  24. package/bundles/taiga-ui-core-components-hints-host.umd.js.map +1 -1
  25. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js +6 -0
  26. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js.map +1 -1
  27. package/bundles/taiga-ui-core-components-label.umd.js +4 -0
  28. package/bundles/taiga-ui-core-components-label.umd.js.map +1 -1
  29. package/bundles/taiga-ui-core-components-link.umd.js +5 -0
  30. package/bundles/taiga-ui-core-components-link.umd.js.map +1 -1
  31. package/bundles/taiga-ui-core-components-loader.umd.js +10 -1
  32. package/bundles/taiga-ui-core-components-loader.umd.js.map +1 -1
  33. package/bundles/taiga-ui-core-components-notification.umd.js +7 -0
  34. package/bundles/taiga-ui-core-components-notification.umd.js.map +1 -1
  35. package/bundles/taiga-ui-core-components-primitive-calendar.umd.js +7 -0
  36. package/bundles/taiga-ui-core-components-primitive-calendar.umd.js.map +1 -1
  37. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.js +8 -0
  38. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.js.map +1 -1
  39. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.js +4 -0
  40. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.js.map +1 -1
  41. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js +33 -1
  42. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js.map +1 -1
  43. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.js +4 -0
  44. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.js.map +1 -1
  45. package/bundles/taiga-ui-core-components-root.umd.js +7 -1
  46. package/bundles/taiga-ui-core-components-root.umd.js.map +1 -1
  47. package/bundles/taiga-ui-core-components-scroll-controls.umd.js +5 -0
  48. package/bundles/taiga-ui-core-components-scroll-controls.umd.js.map +1 -1
  49. package/bundles/taiga-ui-core-components-scrollbar.umd.js +8 -0
  50. package/bundles/taiga-ui-core-components-scrollbar.umd.js.map +1 -1
  51. package/bundles/taiga-ui-core-components-svg.umd.js +9 -0
  52. package/bundles/taiga-ui-core-components-svg.umd.js.map +1 -1
  53. package/bundles/taiga-ui-core-components-theme-night.umd.js +4 -0
  54. package/bundles/taiga-ui-core-components-theme-night.umd.js.map +1 -1
  55. package/bundles/taiga-ui-core-components-tooltip.umd.js +4 -0
  56. package/bundles/taiga-ui-core-components-tooltip.umd.js.map +1 -1
  57. package/bundles/taiga-ui-core-components.umd.js +4 -0
  58. package/bundles/taiga-ui-core-components.umd.js.map +1 -1
  59. package/bundles/taiga-ui-core-constants.umd.js +27 -0
  60. package/bundles/taiga-ui-core-constants.umd.js.map +1 -1
  61. package/bundles/taiga-ui-core-directives-dropdown.umd.js +34 -1
  62. package/bundles/taiga-ui-core-directives-dropdown.umd.js.map +1 -1
  63. package/bundles/taiga-ui-core-directives-hint.umd.js +13 -0
  64. package/bundles/taiga-ui-core-directives-hint.umd.js.map +1 -1
  65. package/bundles/taiga-ui-core-directives-mask-accessor.umd.js +7 -0
  66. package/bundles/taiga-ui-core-directives-mask-accessor.umd.js.map +1 -1
  67. package/bundles/taiga-ui-core-directives-mode.umd.js +4 -0
  68. package/bundles/taiga-ui-core-directives-mode.umd.js.map +1 -1
  69. package/bundles/taiga-ui-core-directives-number-format.umd.js +414 -0
  70. package/bundles/taiga-ui-core-directives-number-format.umd.js.map +1 -0
  71. package/bundles/taiga-ui-core-directives-scroll-into-view.umd.js +9 -0
  72. package/bundles/taiga-ui-core-directives-scroll-into-view.umd.js.map +1 -1
  73. package/bundles/taiga-ui-core-directives-textfield-controller.umd.js +11 -0
  74. package/bundles/taiga-ui-core-directives-textfield-controller.umd.js.map +1 -1
  75. package/bundles/taiga-ui-core-directives-wrapper.umd.js +4 -0
  76. package/bundles/taiga-ui-core-directives-wrapper.umd.js.map +1 -1
  77. package/bundles/taiga-ui-core-directives.umd.js +14 -4
  78. package/bundles/taiga-ui-core-directives.umd.js.map +1 -1
  79. package/bundles/taiga-ui-core-enums.umd.js +22 -0
  80. package/bundles/taiga-ui-core-enums.umd.js.map +1 -1
  81. package/bundles/taiga-ui-core-interfaces.umd.js +3 -1
  82. package/bundles/taiga-ui-core-interfaces.umd.js.map +1 -1
  83. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.js +4 -0
  84. package/bundles/taiga-ui-core-internal-primitive-year-month-pagination.umd.js.map +1 -1
  85. package/bundles/taiga-ui-core-internal-svg-defs-host.umd.js +5 -0
  86. package/bundles/taiga-ui-core-internal-svg-defs-host.umd.js.map +1 -1
  87. package/bundles/taiga-ui-core-internal.umd.js +4 -0
  88. package/bundles/taiga-ui-core-internal.umd.js.map +1 -1
  89. package/bundles/taiga-ui-core-mask.umd.js +3 -1
  90. package/bundles/taiga-ui-core-mask.umd.js.map +1 -1
  91. package/bundles/taiga-ui-core-observables.umd.js +11 -0
  92. package/bundles/taiga-ui-core-observables.umd.js.map +1 -1
  93. package/bundles/taiga-ui-core-pipes-calendar-sheet.umd.js +11 -0
  94. package/bundles/taiga-ui-core-pipes-calendar-sheet.umd.js.map +1 -1
  95. package/bundles/taiga-ui-core-pipes-flag.umd.js +4 -0
  96. package/bundles/taiga-ui-core-pipes-flag.umd.js.map +1 -1
  97. package/bundles/taiga-ui-core-pipes-format-date.umd.js +4 -0
  98. package/bundles/taiga-ui-core-pipes-format-date.umd.js.map +1 -1
  99. package/bundles/taiga-ui-core-pipes-format-number.umd.js +10 -0
  100. package/bundles/taiga-ui-core-pipes-format-number.umd.js.map +1 -1
  101. package/bundles/taiga-ui-core-pipes-format-phone.umd.js +11 -0
  102. package/bundles/taiga-ui-core-pipes-format-phone.umd.js.map +1 -1
  103. package/bundles/taiga-ui-core-pipes-month.umd.js +4 -0
  104. package/bundles/taiga-ui-core-pipes-month.umd.js.map +1 -1
  105. package/bundles/taiga-ui-core-pipes-order-week-days.umd.js +4 -0
  106. package/bundles/taiga-ui-core-pipes-order-week-days.umd.js.map +1 -1
  107. package/bundles/taiga-ui-core-pipes.umd.js +4 -0
  108. package/bundles/taiga-ui-core-pipes.umd.js.map +1 -1
  109. package/bundles/taiga-ui-core-providers.umd.js +7 -0
  110. package/bundles/taiga-ui-core-providers.umd.js.map +1 -1
  111. package/bundles/taiga-ui-core-services.umd.js +20 -2
  112. package/bundles/taiga-ui-core-services.umd.js.map +1 -1
  113. package/bundles/taiga-ui-core-tokens.umd.js +129 -0
  114. package/bundles/taiga-ui-core-tokens.umd.js.map +1 -1
  115. package/bundles/taiga-ui-core-types.umd.js +3 -1
  116. package/bundles/taiga-ui-core-types.umd.js.map +1 -1
  117. package/bundles/taiga-ui-core-utils-dom.umd.js +50 -0
  118. package/bundles/taiga-ui-core-utils-dom.umd.js.map +1 -1
  119. package/bundles/taiga-ui-core-utils-format.umd.js +51 -0
  120. package/bundles/taiga-ui-core-utils-format.umd.js.map +1 -1
  121. package/bundles/taiga-ui-core-utils-mask.umd.js +40 -1
  122. package/bundles/taiga-ui-core-utils-mask.umd.js.map +1 -1
  123. package/bundles/taiga-ui-core-utils-miscellaneous.umd.js +17 -0
  124. package/bundles/taiga-ui-core-utils-miscellaneous.umd.js.map +1 -1
  125. package/bundles/taiga-ui-core-utils-mobile.umd.js +4 -0
  126. package/bundles/taiga-ui-core-utils-mobile.umd.js.map +1 -1
  127. package/bundles/taiga-ui-core-utils.umd.js +4 -0
  128. package/bundles/taiga-ui-core-utils.umd.js.map +1 -1
  129. package/bundles/taiga-ui-core.umd.js +4 -0
  130. package/bundles/taiga-ui-core.umd.js.map +1 -1
  131. package/components/alert/taiga-ui-core-components-alert.d.ts +3 -0
  132. package/components/button/button.options.d.ts +3 -0
  133. package/components/button/taiga-ui-core-components-button.d.ts +3 -0
  134. package/components/calendar/taiga-ui-core-components-calendar.d.ts +3 -0
  135. package/components/data-list/option/option.component.d.ts +1 -0
  136. package/components/data-list/taiga-ui-core-components-data-list.d.ts +3 -0
  137. package/components/dialog/dialog.tokens.d.ts +6 -0
  138. package/components/dialog/taiga-ui-core-components-dialog.d.ts +3 -0
  139. package/components/error/taiga-ui-core-components-error.d.ts +3 -0
  140. package/components/expand/taiga-ui-core-components-expand.d.ts +3 -0
  141. package/components/group/taiga-ui-core-components-group.d.ts +3 -0
  142. package/components/hints-host/taiga-ui-core-components-hints-host.d.ts +3 -0
  143. package/components/hosted-dropdown/hosted-dropdown.component.d.ts +1 -0
  144. package/components/hosted-dropdown/taiga-ui-core-components-hosted-dropdown.d.ts +3 -0
  145. package/components/label/taiga-ui-core-components-label.d.ts +3 -0
  146. package/components/link/taiga-ui-core-components-link.d.ts +3 -0
  147. package/components/loader/loader.options.d.ts +4 -0
  148. package/components/loader/taiga-ui-core-components-loader.d.ts +3 -0
  149. package/components/notification/notification.component.d.ts +3 -0
  150. package/components/notification/taiga-ui-core-components-notification.d.ts +3 -0
  151. package/components/primitive-calendar/primitive-calendar.component.d.ts +3 -0
  152. package/components/primitive-calendar/taiga-ui-core-components-primitive-calendar.d.ts +3 -0
  153. package/components/primitive-checkbox/checkbox.options.d.ts +4 -0
  154. package/components/primitive-checkbox/taiga-ui-core-components-primitive-checkbox.d.ts +3 -0
  155. package/components/primitive-spin-button/taiga-ui-core-components-primitive-spin-button.d.ts +3 -0
  156. package/components/primitive-textfield/primitive-textfield-options.d.ts +16 -0
  157. package/components/primitive-textfield/primitive-textfield.component.d.ts +7 -0
  158. package/components/primitive-textfield/taiga-ui-core-components-primitive-textfield.d.ts +3 -0
  159. package/components/primitive-year-picker/taiga-ui-core-components-primitive-year-picker.d.ts +3 -0
  160. package/components/root/taiga-ui-core-components-root.d.ts +3 -0
  161. package/components/scroll-controls/scroll-controls.module.d.ts +1 -0
  162. package/components/scroll-controls/taiga-ui-core-components-scroll-controls.d.ts +3 -0
  163. package/components/scrollbar/scroll-ref.directive.d.ts +2 -0
  164. package/components/scrollbar/taiga-ui-core-components-scrollbar.d.ts +3 -0
  165. package/components/svg/svg-options.d.ts +3 -0
  166. package/components/svg/taiga-ui-core-components-svg.d.ts +3 -0
  167. package/components/taiga-ui-core-components.d.ts +3 -0
  168. package/components/theme-night/taiga-ui-core-components-theme-night.d.ts +3 -0
  169. package/components/tooltip/taiga-ui-core-components-tooltip.d.ts +3 -0
  170. package/constants/cache-basting-payload.d.ts +1 -1
  171. package/constants/decimal-symbols.d.ts +4 -0
  172. package/constants/events.d.ts +14 -0
  173. package/constants/mask-caret-trap.d.ts +4 -0
  174. package/constants/taiga-ui-core-constants.d.ts +3 -0
  175. package/directives/dropdown/dropdown-hover.options.d.ts +4 -0
  176. package/directives/dropdown/dropdown-options.directive.d.ts +4 -0
  177. package/directives/dropdown/dropdown-selection.directive.d.ts +9 -0
  178. package/directives/dropdown/dropdown.component.d.ts +5 -0
  179. package/directives/dropdown/dropdown.providers.d.ts +3 -0
  180. package/directives/dropdown/taiga-ui-core-directives-dropdown.d.ts +3 -0
  181. package/directives/hint/hint-options.directive.d.ts +4 -0
  182. package/directives/hint/hint.providers.d.ts +3 -0
  183. package/directives/hint/taiga-ui-core-directives-hint.d.ts +3 -0
  184. package/directives/index.d.ts +1 -0
  185. package/directives/mask-accessor/mask-accessor.module.d.ts +3 -0
  186. package/directives/mask-accessor/taiga-ui-core-directives-mask-accessor.d.ts +3 -0
  187. package/directives/mode/taiga-ui-core-directives-mode.d.ts +3 -0
  188. package/directives/number-format/index.d.ts +2 -0
  189. package/directives/number-format/number-format.directive.d.ts +10 -0
  190. package/directives/number-format/number-format.module.d.ts +7 -0
  191. package/directives/number-format/package.json +10 -0
  192. package/directives/number-format/taiga-ui-core-directives-number-format.d.ts +5 -0
  193. package/directives/scroll-into-view/scroll-into-view.directive.d.ts +3 -0
  194. package/directives/scroll-into-view/taiga-ui-core-directives-scroll-into-view.d.ts +3 -0
  195. package/directives/taiga-ui-core-directives.d.ts +3 -0
  196. package/directives/textfield-controller/taiga-ui-core-directives-textfield-controller.d.ts +3 -0
  197. package/directives/textfield-controller/textfield.options.d.ts +7 -0
  198. package/directives/wrapper/taiga-ui-core-directives-wrapper.d.ts +3 -0
  199. package/enums/dropdown-animation.d.ts +1 -0
  200. package/enums/interactive-state.d.ts +3 -0
  201. package/enums/notification.d.ts +3 -0
  202. package/enums/range-state.d.ts +3 -0
  203. package/enums/taiga-ui-core-enums.d.ts +3 -0
  204. package/esm2015/abstract/driver.js +2 -1
  205. package/esm2015/abstract/position-accessor.js +2 -1
  206. package/esm2015/abstract/rect-accessor.js +3 -1
  207. package/esm2015/abstract/taiga-ui-core-abstract.js +4 -1
  208. package/esm2015/abstract/vehicle.js +2 -1
  209. package/esm2015/animations/taiga-ui-core-animations.js +4 -1
  210. package/esm2015/components/alert/alert.component.js +13 -2
  211. package/esm2015/components/alert/taiga-ui-core-components-alert.js +4 -1
  212. package/esm2015/components/button/button.options.js +4 -1
  213. package/esm2015/components/button/taiga-ui-core-components-button.js +4 -1
  214. package/esm2015/components/calendar/taiga-ui-core-components-calendar.js +4 -1
  215. package/esm2015/components/data-list/data-list.component.js +3 -1
  216. package/esm2015/components/data-list/option/option.component.js +5 -1
  217. package/esm2015/components/data-list/taiga-ui-core-components-data-list.js +4 -1
  218. package/esm2015/components/dialog/dialog.component.js +3 -1
  219. package/esm2015/components/dialog/dialog.tokens.js +7 -1
  220. package/esm2015/components/dialog/taiga-ui-core-components-dialog.js +4 -1
  221. package/esm2015/components/error/taiga-ui-core-components-error.js +4 -1
  222. package/esm2015/components/expand/expand.component.js +2 -1
  223. package/esm2015/components/expand/taiga-ui-core-components-expand.js +4 -1
  224. package/esm2015/components/group/taiga-ui-core-components-group.js +4 -1
  225. package/esm2015/components/hints-host/hints-host.component.js +5 -1
  226. package/esm2015/components/hints-host/taiga-ui-core-components-hints-host.js +4 -1
  227. package/esm2015/components/hosted-dropdown/hosted-dropdown.component.js +3 -1
  228. package/esm2015/components/hosted-dropdown/taiga-ui-core-components-hosted-dropdown.js +4 -1
  229. package/esm2015/components/label/taiga-ui-core-components-label.js +4 -1
  230. package/esm2015/components/link/link.component.js +2 -1
  231. package/esm2015/components/link/taiga-ui-core-components-link.js +4 -1
  232. package/esm2015/components/loader/loader.component.js +3 -2
  233. package/esm2015/components/loader/loader.options.js +5 -1
  234. package/esm2015/components/loader/taiga-ui-core-components-loader.js +4 -1
  235. package/esm2015/components/notification/notification.component.js +4 -1
  236. package/esm2015/components/notification/taiga-ui-core-components-notification.js +4 -1
  237. package/esm2015/components/primitive-calendar/primitive-calendar.component.js +4 -1
  238. package/esm2015/components/primitive-calendar/taiga-ui-core-components-primitive-calendar.js +4 -1
  239. package/esm2015/components/primitive-checkbox/checkbox.options.js +5 -1
  240. package/esm2015/components/primitive-checkbox/taiga-ui-core-components-primitive-checkbox.js +4 -1
  241. package/esm2015/components/primitive-spin-button/taiga-ui-core-components-primitive-spin-button.js +4 -1
  242. package/esm2015/components/primitive-textfield/primitive-textfield-options.js +13 -1
  243. package/esm2015/components/primitive-textfield/primitive-textfield.component.js +9 -1
  244. package/esm2015/components/primitive-textfield/primitive-textfield.directive.js +6 -1
  245. package/esm2015/components/primitive-textfield/taiga-ui-core-components-primitive-textfield.js +4 -1
  246. package/esm2015/components/primitive-textfield/value-decoration/value-decoration.component.js +3 -1
  247. package/esm2015/components/primitive-year-picker/taiga-ui-core-components-primitive-year-picker.js +4 -1
  248. package/esm2015/components/root/root.component.js +4 -2
  249. package/esm2015/components/root/taiga-ui-core-components-root.js +4 -1
  250. package/esm2015/components/scroll-controls/scroll-controls.module.js +2 -1
  251. package/esm2015/components/scroll-controls/taiga-ui-core-components-scroll-controls.js +4 -1
  252. package/esm2015/components/scrollbar/scroll-ref.directive.js +3 -1
  253. package/esm2015/components/scrollbar/scrollbar.component.js +3 -1
  254. package/esm2015/components/scrollbar/taiga-ui-core-components-scrollbar.js +4 -1
  255. package/esm2015/components/svg/svg-options.js +4 -1
  256. package/esm2015/components/svg/svg.component.js +3 -1
  257. package/esm2015/components/svg/taiga-ui-core-components-svg.js +4 -1
  258. package/esm2015/components/taiga-ui-core-components.js +4 -1
  259. package/esm2015/components/theme-night/taiga-ui-core-components-theme-night.js +4 -1
  260. package/esm2015/components/tooltip/taiga-ui-core-components-tooltip.js +4 -1
  261. package/esm2015/constants/decimal-symbols.js +5 -1
  262. package/esm2015/constants/default-number-format.js +2 -1
  263. package/esm2015/constants/events.js +15 -1
  264. package/esm2015/constants/mask-caret-trap.js +5 -1
  265. package/esm2015/constants/taiga-ui-core-constants.js +4 -1
  266. package/esm2015/directives/dropdown/dropdown-driver.directive.js +2 -1
  267. package/esm2015/directives/dropdown/dropdown-hover.options.js +5 -1
  268. package/esm2015/directives/dropdown/dropdown-options.directive.js +5 -1
  269. package/esm2015/directives/dropdown/dropdown-position-sided.directive.js +2 -2
  270. package/esm2015/directives/dropdown/dropdown-selection.directive.js +10 -1
  271. package/esm2015/directives/dropdown/dropdown.component.js +8 -1
  272. package/esm2015/directives/dropdown/dropdown.directive.js +2 -1
  273. package/esm2015/directives/dropdown/dropdown.providers.js +4 -1
  274. package/esm2015/directives/dropdown/taiga-ui-core-directives-dropdown.js +4 -1
  275. package/esm2015/directives/hint/hint-driver.directive.js +2 -1
  276. package/esm2015/directives/hint/hint-hover.directive.js +2 -1
  277. package/esm2015/directives/hint/hint-options.directive.js +5 -1
  278. package/esm2015/directives/hint/hint-position.directive.js +2 -1
  279. package/esm2015/directives/hint/hint.directive.js +2 -1
  280. package/esm2015/directives/hint/hint.providers.js +5 -1
  281. package/esm2015/directives/hint/taiga-ui-core-directives-hint.js +4 -1
  282. package/esm2015/directives/index.js +2 -1
  283. package/esm2015/directives/mask-accessor/mask-accessor.module.js +4 -1
  284. package/esm2015/directives/mask-accessor/taiga-ui-core-directives-mask-accessor.js +4 -1
  285. package/esm2015/directives/mode/taiga-ui-core-directives-mode.js +4 -1
  286. package/esm2015/directives/number-format/index.js +3 -0
  287. package/esm2015/directives/number-format/number-format.directive.js +38 -0
  288. package/esm2015/directives/number-format/number-format.module.js +16 -0
  289. package/esm2015/directives/number-format/taiga-ui-core-directives-number-format.js +5 -0
  290. package/esm2015/directives/scroll-into-view/scroll-into-view.directive.js +6 -1
  291. package/esm2015/directives/scroll-into-view/taiga-ui-core-directives-scroll-into-view.js +4 -1
  292. package/esm2015/directives/taiga-ui-core-directives.js +4 -1
  293. package/esm2015/directives/textfield-controller/taiga-ui-core-directives-textfield-controller.js +4 -1
  294. package/esm2015/directives/textfield-controller/textfield-appearance.directive.js +4 -1
  295. package/esm2015/directives/textfield-controller/textfield.options.js +5 -1
  296. package/esm2015/directives/wrapper/taiga-ui-core-directives-wrapper.js +4 -1
  297. package/esm2015/enums/appearance.js +3 -1
  298. package/esm2015/enums/dropdown-animation.js +3 -1
  299. package/esm2015/enums/interactive-state.js +6 -1
  300. package/esm2015/enums/notification.js +5 -1
  301. package/esm2015/enums/range-state.js +6 -1
  302. package/esm2015/enums/taiga-ui-core-enums.js +4 -1
  303. package/esm2015/interfaces/number-format-settings.js +1 -1
  304. package/esm2015/interfaces/taiga-ui-core-interfaces.js +4 -1
  305. package/esm2015/internal/primitive-year-month-pagination/taiga-ui-core-internal-primitive-year-month-pagination.js +4 -1
  306. package/esm2015/internal/svg-defs-host/svg-defs-host.component.js +2 -1
  307. package/esm2015/internal/svg-defs-host/taiga-ui-core-internal-svg-defs-host.js +4 -1
  308. package/esm2015/internal/taiga-ui-core-internal.js +4 -1
  309. package/esm2015/mask/taiga-ui-core-mask.js +4 -1
  310. package/esm2015/observables/taiga-ui-core-observables.js +4 -1
  311. package/esm2015/observables/zoneful-map.js +8 -1
  312. package/esm2015/pipes/calendar-sheet/taiga-ui-core-pipes-calendar-sheet.js +4 -1
  313. package/esm2015/pipes/calendar-sheet/utils.js +8 -1
  314. package/esm2015/pipes/flag/taiga-ui-core-pipes-flag.js +4 -1
  315. package/esm2015/pipes/format-date/taiga-ui-core-pipes-format-date.js +4 -1
  316. package/esm2015/pipes/format-number/format-number.pipe.js +7 -1
  317. package/esm2015/pipes/format-number/taiga-ui-core-pipes-format-number.js +4 -1
  318. package/esm2015/pipes/format-phone/format-phone.pipe.js +8 -1
  319. package/esm2015/pipes/format-phone/taiga-ui-core-pipes-format-phone.js +4 -1
  320. package/esm2015/pipes/month/taiga-ui-core-pipes-month.js +4 -1
  321. package/esm2015/pipes/order-week-days/taiga-ui-core-pipes-order-week-days.js +4 -1
  322. package/esm2015/pipes/taiga-ui-core-pipes.js +4 -1
  323. package/esm2015/providers/is-mobile-resolution.provider.js +4 -1
  324. package/esm2015/providers/taiga-ui-core-providers.js +4 -1
  325. package/esm2015/services/breakpoint.service.js +4 -1
  326. package/esm2015/services/hint.service.js +4 -1
  327. package/esm2015/services/position.service.js +4 -2
  328. package/esm2015/services/router-link-active.service.js +4 -2
  329. package/esm2015/services/svg.service.js +4 -1
  330. package/esm2015/services/taiga-ui-core-services.js +4 -1
  331. package/esm2015/services/visual-viewport.service.js +2 -1
  332. package/esm2015/taiga-ui-core.js +4 -1
  333. package/esm2015/tokens/animation-options.js +4 -1
  334. package/esm2015/tokens/animations-duration.js +4 -1
  335. package/esm2015/tokens/assert-enabled.js +8 -1
  336. package/esm2015/tokens/data-list-accessor.js +4 -1
  337. package/esm2015/tokens/data-list-host.js +4 -1
  338. package/esm2015/tokens/day-type-handler.js +4 -1
  339. package/esm2015/tokens/element-ref.js +4 -1
  340. package/esm2015/tokens/first-day-of-week.js +4 -1
  341. package/esm2015/tokens/i18n.js +19 -1
  342. package/esm2015/tokens/icon-place.js +5 -1
  343. package/esm2015/tokens/icons-path.js +5 -1
  344. package/esm2015/tokens/icons.js +4 -1
  345. package/esm2015/tokens/index.js +2 -1
  346. package/esm2015/tokens/is-mobile-resolution.js +6 -1
  347. package/esm2015/tokens/legacy-mask.js +6 -1
  348. package/esm2015/tokens/media.js +4 -1
  349. package/esm2015/tokens/mode.js +4 -1
  350. package/esm2015/tokens/notification-options.js +6 -1
  351. package/esm2015/tokens/number-format-observable.js +8 -0
  352. package/esm2015/tokens/number-format.js +4 -1
  353. package/esm2015/tokens/option-content.js +4 -1
  354. package/esm2015/tokens/ordered-short-week-days.js +8 -1
  355. package/esm2015/tokens/sanitizer.js +4 -1
  356. package/esm2015/tokens/scroll-ref.js +4 -1
  357. package/esm2015/tokens/selection-stream.js +4 -1
  358. package/esm2015/tokens/svg-content-processor.js +5 -1
  359. package/esm2015/tokens/svg-src-processor.js +5 -1
  360. package/esm2015/tokens/taiga-ui-core-tokens.js +4 -1
  361. package/esm2015/tokens/textfield-appearance.js +6 -1
  362. package/esm2015/tokens/textfield-host.js +4 -1
  363. package/esm2015/tokens/value-accessor.js +4 -1
  364. package/esm2015/tokens/viewport.js +4 -1
  365. package/esm2015/types/size.js +12 -1
  366. package/esm2015/types/taiga-ui-core-types.js +4 -1
  367. package/esm2015/utils/dom/get-safe-area-size.js +6 -1
  368. package/esm2015/utils/dom/get-viewport-height.js +18 -1
  369. package/esm2015/utils/dom/get-viewport-width.js +18 -1
  370. package/esm2015/utils/dom/get-word-range.js +8 -1
  371. package/esm2015/utils/dom/taiga-ui-core-utils-dom.js +4 -1
  372. package/esm2015/utils/format/capitalize.js +8 -1
  373. package/esm2015/utils/format/format-number.js +9 -1
  374. package/esm2015/utils/format/format-phone.js +20 -1
  375. package/esm2015/utils/format/get-fractional-part-padded.js +8 -1
  376. package/esm2015/utils/format/number-to-string-without-exp.js +7 -1
  377. package/esm2015/utils/format/taiga-ui-core-utils-format.js +4 -1
  378. package/esm2015/utils/mask/create-auto-corrected-money-pipe.js +9 -1
  379. package/esm2015/utils/mask/create-correction-mask.js +5 -1
  380. package/esm2015/utils/mask/create-number-mask.js +10 -2
  381. package/esm2015/utils/mask/enable-auto-correct-decimal-symbol.js +5 -1
  382. package/esm2015/utils/mask/masked-money-value-is-empty.js +8 -1
  383. package/esm2015/utils/mask/masked-number-string-to-number.js +5 -1
  384. package/esm2015/utils/mask/taiga-ui-core-utils-mask.js +4 -1
  385. package/esm2015/utils/miscellaneous/is-editing-key.js +4 -1
  386. package/esm2015/utils/miscellaneous/is-obscured.js +4 -1
  387. package/esm2015/utils/miscellaneous/override-options.js +2 -1
  388. package/esm2015/utils/miscellaneous/size-bigger.js +7 -1
  389. package/esm2015/utils/miscellaneous/taiga-ui-core-utils-miscellaneous.js +4 -1
  390. package/esm2015/utils/mobile/taiga-ui-core-utils-mobile.js +4 -1
  391. package/esm2015/utils/taiga-ui-core-utils.js +4 -1
  392. package/fesm2015/taiga-ui-core-abstract.js +9 -0
  393. package/fesm2015/taiga-ui-core-abstract.js.map +1 -1
  394. package/fesm2015/taiga-ui-core-animations.js +4 -0
  395. package/fesm2015/taiga-ui-core-animations.js.map +1 -1
  396. package/fesm2015/taiga-ui-core-components-alert.js +16 -1
  397. package/fesm2015/taiga-ui-core-components-alert.js.map +1 -1
  398. package/fesm2015/taiga-ui-core-components-button.js +7 -0
  399. package/fesm2015/taiga-ui-core-components-button.js.map +1 -1
  400. package/fesm2015/taiga-ui-core-components-calendar.js +4 -0
  401. package/fesm2015/taiga-ui-core-components-calendar.js.map +1 -1
  402. package/fesm2015/taiga-ui-core-components-data-list.js +10 -0
  403. package/fesm2015/taiga-ui-core-components-data-list.js.map +1 -1
  404. package/fesm2015/taiga-ui-core-components-dialog.js +12 -0
  405. package/fesm2015/taiga-ui-core-components-dialog.js.map +1 -1
  406. package/fesm2015/taiga-ui-core-components-error.js +4 -0
  407. package/fesm2015/taiga-ui-core-components-error.js.map +1 -1
  408. package/fesm2015/taiga-ui-core-components-expand.js +5 -0
  409. package/fesm2015/taiga-ui-core-components-expand.js.map +1 -1
  410. package/fesm2015/taiga-ui-core-components-group.js +4 -0
  411. package/fesm2015/taiga-ui-core-components-group.js.map +1 -1
  412. package/fesm2015/taiga-ui-core-components-hints-host.js +8 -0
  413. package/fesm2015/taiga-ui-core-components-hints-host.js.map +1 -1
  414. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js +6 -0
  415. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
  416. package/fesm2015/taiga-ui-core-components-label.js +4 -0
  417. package/fesm2015/taiga-ui-core-components-label.js.map +1 -1
  418. package/fesm2015/taiga-ui-core-components-link.js +5 -0
  419. package/fesm2015/taiga-ui-core-components-link.js.map +1 -1
  420. package/fesm2015/taiga-ui-core-components-loader.js +10 -1
  421. package/fesm2015/taiga-ui-core-components-loader.js.map +1 -1
  422. package/fesm2015/taiga-ui-core-components-notification.js +7 -0
  423. package/fesm2015/taiga-ui-core-components-notification.js.map +1 -1
  424. package/fesm2015/taiga-ui-core-components-primitive-calendar.js +7 -0
  425. package/fesm2015/taiga-ui-core-components-primitive-calendar.js.map +1 -1
  426. package/fesm2015/taiga-ui-core-components-primitive-checkbox.js +8 -0
  427. package/fesm2015/taiga-ui-core-components-primitive-checkbox.js.map +1 -1
  428. package/fesm2015/taiga-ui-core-components-primitive-spin-button.js +4 -0
  429. package/fesm2015/taiga-ui-core-components-primitive-spin-button.js.map +1 -1
  430. package/fesm2015/taiga-ui-core-components-primitive-textfield.js +31 -0
  431. package/fesm2015/taiga-ui-core-components-primitive-textfield.js.map +1 -1
  432. package/fesm2015/taiga-ui-core-components-primitive-year-picker.js +4 -0
  433. package/fesm2015/taiga-ui-core-components-primitive-year-picker.js.map +1 -1
  434. package/fesm2015/taiga-ui-core-components-root.js +7 -1
  435. package/fesm2015/taiga-ui-core-components-root.js.map +1 -1
  436. package/fesm2015/taiga-ui-core-components-scroll-controls.js +5 -0
  437. package/fesm2015/taiga-ui-core-components-scroll-controls.js.map +1 -1
  438. package/fesm2015/taiga-ui-core-components-scrollbar.js +8 -0
  439. package/fesm2015/taiga-ui-core-components-scrollbar.js.map +1 -1
  440. package/fesm2015/taiga-ui-core-components-svg.js +9 -0
  441. package/fesm2015/taiga-ui-core-components-svg.js.map +1 -1
  442. package/fesm2015/taiga-ui-core-components-theme-night.js +4 -0
  443. package/fesm2015/taiga-ui-core-components-theme-night.js.map +1 -1
  444. package/fesm2015/taiga-ui-core-components-tooltip.js +4 -0
  445. package/fesm2015/taiga-ui-core-components-tooltip.js.map +1 -1
  446. package/fesm2015/taiga-ui-core-components.js +4 -0
  447. package/fesm2015/taiga-ui-core-components.js.map +1 -1
  448. package/fesm2015/taiga-ui-core-constants.js +27 -0
  449. package/fesm2015/taiga-ui-core-constants.js.map +1 -1
  450. package/fesm2015/taiga-ui-core-directives-dropdown.js +34 -1
  451. package/fesm2015/taiga-ui-core-directives-dropdown.js.map +1 -1
  452. package/fesm2015/taiga-ui-core-directives-hint.js +14 -0
  453. package/fesm2015/taiga-ui-core-directives-hint.js.map +1 -1
  454. package/fesm2015/taiga-ui-core-directives-mask-accessor.js +7 -0
  455. package/fesm2015/taiga-ui-core-directives-mask-accessor.js.map +1 -1
  456. package/fesm2015/taiga-ui-core-directives-mode.js +4 -0
  457. package/fesm2015/taiga-ui-core-directives-mode.js.map +1 -1
  458. package/fesm2015/taiga-ui-core-directives-number-format.js +58 -0
  459. package/fesm2015/taiga-ui-core-directives-number-format.js.map +1 -0
  460. package/fesm2015/taiga-ui-core-directives-scroll-into-view.js +9 -0
  461. package/fesm2015/taiga-ui-core-directives-scroll-into-view.js.map +1 -1
  462. package/fesm2015/taiga-ui-core-directives-textfield-controller.js +11 -0
  463. package/fesm2015/taiga-ui-core-directives-textfield-controller.js.map +1 -1
  464. package/fesm2015/taiga-ui-core-directives-wrapper.js +4 -0
  465. package/fesm2015/taiga-ui-core-directives-wrapper.js.map +1 -1
  466. package/fesm2015/taiga-ui-core-directives.js +5 -0
  467. package/fesm2015/taiga-ui-core-directives.js.map +1 -1
  468. package/fesm2015/taiga-ui-core-enums.js +22 -0
  469. package/fesm2015/taiga-ui-core-enums.js.map +1 -1
  470. package/fesm2015/taiga-ui-core-interfaces.js +3 -1
  471. package/fesm2015/taiga-ui-core-interfaces.js.map +1 -1
  472. package/fesm2015/taiga-ui-core-internal-primitive-year-month-pagination.js +4 -0
  473. package/fesm2015/taiga-ui-core-internal-primitive-year-month-pagination.js.map +1 -1
  474. package/fesm2015/taiga-ui-core-internal-svg-defs-host.js +5 -0
  475. package/fesm2015/taiga-ui-core-internal-svg-defs-host.js.map +1 -1
  476. package/fesm2015/taiga-ui-core-internal.js +4 -0
  477. package/fesm2015/taiga-ui-core-internal.js.map +1 -1
  478. package/fesm2015/taiga-ui-core-mask.js +3 -1
  479. package/fesm2015/taiga-ui-core-mask.js.map +1 -1
  480. package/fesm2015/taiga-ui-core-observables.js +11 -0
  481. package/fesm2015/taiga-ui-core-observables.js.map +1 -1
  482. package/fesm2015/taiga-ui-core-pipes-calendar-sheet.js +11 -0
  483. package/fesm2015/taiga-ui-core-pipes-calendar-sheet.js.map +1 -1
  484. package/fesm2015/taiga-ui-core-pipes-flag.js +4 -0
  485. package/fesm2015/taiga-ui-core-pipes-flag.js.map +1 -1
  486. package/fesm2015/taiga-ui-core-pipes-format-date.js +4 -0
  487. package/fesm2015/taiga-ui-core-pipes-format-date.js.map +1 -1
  488. package/fesm2015/taiga-ui-core-pipes-format-number.js +10 -0
  489. package/fesm2015/taiga-ui-core-pipes-format-number.js.map +1 -1
  490. package/fesm2015/taiga-ui-core-pipes-format-phone.js +11 -0
  491. package/fesm2015/taiga-ui-core-pipes-format-phone.js.map +1 -1
  492. package/fesm2015/taiga-ui-core-pipes-month.js +4 -0
  493. package/fesm2015/taiga-ui-core-pipes-month.js.map +1 -1
  494. package/fesm2015/taiga-ui-core-pipes-order-week-days.js +4 -0
  495. package/fesm2015/taiga-ui-core-pipes-order-week-days.js.map +1 -1
  496. package/fesm2015/taiga-ui-core-pipes.js +4 -0
  497. package/fesm2015/taiga-ui-core-pipes.js.map +1 -1
  498. package/fesm2015/taiga-ui-core-providers.js +7 -0
  499. package/fesm2015/taiga-ui-core-providers.js.map +1 -1
  500. package/fesm2015/taiga-ui-core-services.js +20 -2
  501. package/fesm2015/taiga-ui-core-services.js.map +1 -1
  502. package/fesm2015/taiga-ui-core-tokens.js +133 -2
  503. package/fesm2015/taiga-ui-core-tokens.js.map +1 -1
  504. package/fesm2015/taiga-ui-core-types.js +14 -0
  505. package/fesm2015/taiga-ui-core-types.js.map +1 -1
  506. package/fesm2015/taiga-ui-core-utils-dom.js +50 -0
  507. package/fesm2015/taiga-ui-core-utils-dom.js.map +1 -1
  508. package/fesm2015/taiga-ui-core-utils-format.js +51 -0
  509. package/fesm2015/taiga-ui-core-utils-format.js.map +1 -1
  510. package/fesm2015/taiga-ui-core-utils-mask.js +40 -1
  511. package/fesm2015/taiga-ui-core-utils-mask.js.map +1 -1
  512. package/fesm2015/taiga-ui-core-utils-miscellaneous.js +17 -0
  513. package/fesm2015/taiga-ui-core-utils-miscellaneous.js.map +1 -1
  514. package/fesm2015/taiga-ui-core-utils-mobile.js +4 -0
  515. package/fesm2015/taiga-ui-core-utils-mobile.js.map +1 -1
  516. package/fesm2015/taiga-ui-core-utils.js +4 -0
  517. package/fesm2015/taiga-ui-core-utils.js.map +1 -1
  518. package/fesm2015/taiga-ui-core.js +4 -0
  519. package/fesm2015/taiga-ui-core.js.map +1 -1
  520. package/interfaces/alert-options.d.ts +2 -0
  521. package/interfaces/dialog-options.d.ts +11 -0
  522. package/interfaces/number-format-settings.d.ts +26 -1
  523. package/interfaces/taiga-ui-core-interfaces.d.ts +3 -0
  524. package/internal/primitive-year-month-pagination/taiga-ui-core-internal-primitive-year-month-pagination.d.ts +3 -0
  525. package/internal/svg-defs-host/taiga-ui-core-internal-svg-defs-host.d.ts +3 -0
  526. package/internal/taiga-ui-core-internal.d.ts +3 -0
  527. package/mask/taiga-ui-core-mask.d.ts +3 -0
  528. package/mask/text-mask-config.d.ts +5 -0
  529. package/mask/text-mask-correction-handler.d.ts +3 -0
  530. package/mask/text-mask-list-handler.d.ts +3 -0
  531. package/mask/text-mask-list.d.ts +4 -0
  532. package/mask/text-mask-options.d.ts +22 -0
  533. package/mask/text-mask-pipe-handler.d.ts +4 -0
  534. package/mask/text-mask-pipe-result.d.ts +4 -0
  535. package/observables/taiga-ui-core-observables.d.ts +3 -0
  536. package/observables/zoneful-map.d.ts +7 -0
  537. package/package.json +4 -4
  538. package/pipes/calendar-sheet/taiga-ui-core-pipes-calendar-sheet.d.ts +3 -0
  539. package/pipes/calendar-sheet/utils.d.ts +13 -0
  540. package/pipes/flag/taiga-ui-core-pipes-flag.d.ts +3 -0
  541. package/pipes/format-date/taiga-ui-core-pipes-format-date.d.ts +3 -0
  542. package/pipes/format-number/format-number.pipe.d.ts +6 -0
  543. package/pipes/format-number/taiga-ui-core-pipes-format-number.d.ts +3 -0
  544. package/pipes/format-phone/format-phone.pipe.d.ts +7 -0
  545. package/pipes/format-phone/taiga-ui-core-pipes-format-phone.d.ts +3 -0
  546. package/pipes/month/taiga-ui-core-pipes-month.d.ts +3 -0
  547. package/pipes/order-week-days/taiga-ui-core-pipes-order-week-days.d.ts +3 -0
  548. package/pipes/taiga-ui-core-pipes.d.ts +3 -0
  549. package/providers/is-mobile-resolution.provider.d.ts +3 -0
  550. package/providers/taiga-ui-core-providers.d.ts +3 -0
  551. package/services/breakpoint.service.d.ts +3 -0
  552. package/services/hint.service.d.ts +3 -0
  553. package/services/svg.service.d.ts +3 -0
  554. package/services/taiga-ui-core-services.d.ts +3 -0
  555. package/styles/theme/variables.less +1 -0
  556. package/taiga-ui-core.d.ts +3 -0
  557. package/tokens/animation-options.d.ts +3 -0
  558. package/tokens/animations-duration.d.ts +3 -0
  559. package/tokens/assert-enabled.d.ts +7 -0
  560. package/tokens/data-list-accessor.d.ts +3 -0
  561. package/tokens/data-list-host.d.ts +3 -0
  562. package/tokens/day-type-handler.d.ts +3 -0
  563. package/tokens/element-ref.d.ts +3 -0
  564. package/tokens/first-day-of-week.d.ts +3 -0
  565. package/tokens/i18n.d.ts +18 -0
  566. package/tokens/icon-place.d.ts +4 -0
  567. package/tokens/icons-path.d.ts +4 -0
  568. package/tokens/icons.d.ts +3 -0
  569. package/tokens/index.d.ts +1 -0
  570. package/tokens/is-mobile-resolution.d.ts +5 -0
  571. package/tokens/legacy-mask.d.ts +5 -0
  572. package/tokens/media.d.ts +3 -0
  573. package/tokens/mode.d.ts +3 -0
  574. package/tokens/notification-options.d.ts +5 -0
  575. package/tokens/number-format-observable.d.ts +11 -0
  576. package/tokens/number-format.d.ts +3 -0
  577. package/tokens/option-content.d.ts +3 -0
  578. package/tokens/ordered-short-week-days.d.ts +7 -0
  579. package/tokens/sanitizer.d.ts +3 -0
  580. package/tokens/scroll-ref.d.ts +3 -0
  581. package/tokens/selection-stream.d.ts +3 -0
  582. package/tokens/svg-content-processor.d.ts +4 -0
  583. package/tokens/svg-src-processor.d.ts +4 -0
  584. package/tokens/taiga-ui-core-tokens.d.ts +3 -0
  585. package/tokens/textfield-appearance.d.ts +5 -0
  586. package/tokens/textfield-host.d.ts +3 -0
  587. package/tokens/value-accessor.d.ts +3 -0
  588. package/tokens/viewport.d.ts +3 -0
  589. package/types/size.d.ts +11 -0
  590. package/types/taiga-ui-core-types.d.ts +3 -0
  591. package/utils/dom/get-safe-area-size.d.ts +5 -0
  592. package/utils/dom/get-viewport-height.d.ts +17 -0
  593. package/utils/dom/get-viewport-width.d.ts +17 -0
  594. package/utils/dom/get-word-range.d.ts +6 -0
  595. package/utils/dom/taiga-ui-core-utils-dom.d.ts +3 -0
  596. package/utils/format/capitalize.d.ts +7 -0
  597. package/utils/format/format-number.d.ts +8 -0
  598. package/utils/format/format-phone.d.ts +19 -0
  599. package/utils/format/get-fractional-part-padded.d.ts +7 -0
  600. package/utils/format/number-to-string-without-exp.d.ts +6 -0
  601. package/utils/format/taiga-ui-core-utils-format.d.ts +3 -0
  602. package/utils/mask/create-auto-corrected-money-pipe.d.ts +5 -0
  603. package/utils/mask/create-correction-mask.d.ts +4 -0
  604. package/utils/mask/create-number-mask.d.ts +5 -0
  605. package/utils/mask/enable-auto-correct-decimal-symbol.d.ts +4 -0
  606. package/utils/mask/masked-money-value-is-empty.d.ts +7 -0
  607. package/utils/mask/masked-number-string-to-number.d.ts +4 -0
  608. package/utils/mask/taiga-ui-core-utils-mask.d.ts +3 -0
  609. package/utils/miscellaneous/is-editing-key.d.ts +3 -0
  610. package/utils/miscellaneous/is-obscured.d.ts +3 -0
  611. package/utils/miscellaneous/size-bigger.d.ts +6 -0
  612. package/utils/miscellaneous/taiga-ui-core-utils-miscellaneous.d.ts +3 -0
  613. package/utils/mobile/taiga-ui-core-utils-mobile.d.ts +3 -0
  614. package/utils/taiga-ui-core-utils.d.ts +3 -0
@@ -1,3 +1,6 @@
1
1
  import { InjectionToken } from '@angular/core';
2
+ /**
3
+ * Buffer token to pass NG_VALUE_ACCESSOR to a different Injector
4
+ */
2
5
  export const TUI_VALUE_ACCESSOR = new InjectionToken(`[TUI_VALUE_ACCESSOR]`);
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtYWNjZXNzb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3Rva2Vucy92YWx1ZS1hY2Nlc3Nvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBTTdDLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLElBQUksY0FBYyxDQUNoRCxzQkFBc0IsQ0FDekIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0aW9uVG9rZW59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtDb250cm9sVmFsdWVBY2Nlc3Nvcn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG4vKipcbiAqIEJ1ZmZlciB0b2tlbiB0byBwYXNzIE5HX1ZBTFVFX0FDQ0VTU09SIHRvIGEgZGlmZmVyZW50IEluamVjdG9yXG4gKi9cbmV4cG9ydCBjb25zdCBUVUlfVkFMVUVfQUNDRVNTT1IgPSBuZXcgSW5qZWN0aW9uVG9rZW48Q29udHJvbFZhbHVlQWNjZXNzb3I+KFxuICAgIGBbVFVJX1ZBTFVFX0FDQ0VTU09SXWAsXG4pO1xuIl19
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsdWUtYWNjZXNzb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3Rva2Vucy92YWx1ZS1hY2Nlc3Nvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRzdDOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxjQUFjLENBQ2hELHNCQUFzQixDQUN6QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3Rpb25Ub2tlbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbnRyb2xWYWx1ZUFjY2Vzc29yfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbi8qKlxuICogQnVmZmVyIHRva2VuIHRvIHBhc3MgTkdfVkFMVUVfQUNDRVNTT1IgdG8gYSBkaWZmZXJlbnQgSW5qZWN0b3JcbiAqL1xuZXhwb3J0IGNvbnN0IFRVSV9WQUxVRV9BQ0NFU1NPUiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxDb250cm9sVmFsdWVBY2Nlc3Nvcj4oXG4gICAgYFtUVUlfVkFMVUVfQUNDRVNTT1JdYCxcbik7XG4iXX0=
@@ -1,6 +1,9 @@
1
1
  import { inject } from '@angular/core';
2
2
  import { WINDOW } from '@ng-web-apis/common';
3
3
  import { tuiCreateTokenFromFactory } from '@taiga-ui/cdk';
4
+ /**
5
+ * Viewport accessor
6
+ */
4
7
  export const TUI_VIEWPORT = tuiCreateTokenFromFactory(() => {
5
8
  const win = inject(WINDOW);
6
9
  return {
@@ -23,4 +26,4 @@ export function tuiAsViewport(useExisting) {
23
26
  useExisting,
24
27
  };
25
28
  }
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld3BvcnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3Rva2Vucy92aWV3cG9ydC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNyRCxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDM0MsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBTXhELE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyx5QkFBeUIsQ0FBa0IsR0FBRyxFQUFFO0lBQ3hFLE1BQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUUzQixPQUFPO1FBQ0gsSUFBSSxFQUFFLFVBQVU7UUFDaEIsYUFBYTtZQUNULE9BQU87Z0JBQ0gsR0FBRyxFQUFFLENBQUM7Z0JBQ04sSUFBSSxFQUFFLENBQUM7Z0JBQ1AsS0FBSyxFQUFFLEdBQUcsQ0FBQyxVQUFVO2dCQUNyQixNQUFNLEVBQUUsR0FBRyxDQUFDLFdBQVc7Z0JBQ3ZCLEtBQUssRUFBRSxHQUFHLENBQUMsVUFBVTtnQkFDckIsTUFBTSxFQUFFLEdBQUcsQ0FBQyxXQUFXO2FBQzFCLENBQUM7UUFDTixDQUFDO0tBQ0osQ0FBQztBQUNOLENBQUMsQ0FBQyxDQUFDO0FBRUgsTUFBTSxVQUFVLGFBQWEsQ0FBQyxXQUFrQztJQUM1RCxPQUFPO1FBQ0gsT0FBTyxFQUFFLFlBQVk7UUFDckIsV0FBVztLQUNkLENBQUM7QUFDTixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtpbmplY3QsIFByb3ZpZGVyLCBUeXBlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7V0lORE9XfSBmcm9tICdAbmctd2ViLWFwaXMvY29tbW9uJztcbmltcG9ydCB7dHVpQ3JlYXRlVG9rZW5Gcm9tRmFjdG9yeX0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aVJlY3RBY2Nlc3Nvcn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvYWJzdHJhY3QnO1xuXG4vKipcbiAqIFZpZXdwb3J0IGFjY2Vzc29yXG4gKi9cbmV4cG9ydCBjb25zdCBUVUlfVklFV1BPUlQgPSB0dWlDcmVhdGVUb2tlbkZyb21GYWN0b3J5PFR1aVJlY3RBY2Nlc3Nvcj4oKCkgPT4ge1xuICAgIGNvbnN0IHdpbiA9IGluamVjdChXSU5ET1cpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgICAgdHlwZTogYHZpZXdwb3J0YCxcbiAgICAgICAgZ2V0Q2xpZW50UmVjdCgpIHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgdG9wOiAwLFxuICAgICAgICAgICAgICAgIGxlZnQ6IDAsXG4gICAgICAgICAgICAgICAgcmlnaHQ6IHdpbi5pbm5lcldpZHRoLFxuICAgICAgICAgICAgICAgIGJvdHRvbTogd2luLmlubmVySGVpZ2h0LFxuICAgICAgICAgICAgICAgIHdpZHRoOiB3aW4uaW5uZXJXaWR0aCxcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IHdpbi5pbm5lckhlaWdodCxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH0sXG4gICAgfTtcbn0pO1xuXG5leHBvcnQgZnVuY3Rpb24gdHVpQXNWaWV3cG9ydCh1c2VFeGlzdGluZzogVHlwZTxUdWlSZWN0QWNjZXNzb3I+KTogUHJvdmlkZXIge1xuICAgIHJldHVybiB7XG4gICAgICAgIHByb3ZpZGU6IFRVSV9WSUVXUE9SVCxcbiAgICAgICAgdXNlRXhpc3RpbmcsXG4gICAgfTtcbn1cbiJdfQ==
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmlld3BvcnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3Rva2Vucy92aWV3cG9ydC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsTUFBTSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNyRCxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFDM0MsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sZUFBZSxDQUFDO0FBR3hEOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLHlCQUF5QixDQUFrQixHQUFHLEVBQUU7SUFDeEUsTUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBRTNCLE9BQU87UUFDSCxJQUFJLEVBQUUsVUFBVTtRQUNoQixhQUFhO1lBQ1QsT0FBTztnQkFDSCxHQUFHLEVBQUUsQ0FBQztnQkFDTixJQUFJLEVBQUUsQ0FBQztnQkFDUCxLQUFLLEVBQUUsR0FBRyxDQUFDLFVBQVU7Z0JBQ3JCLE1BQU0sRUFBRSxHQUFHLENBQUMsV0FBVztnQkFDdkIsS0FBSyxFQUFFLEdBQUcsQ0FBQyxVQUFVO2dCQUNyQixNQUFNLEVBQUUsR0FBRyxDQUFDLFdBQVc7YUFDMUIsQ0FBQztRQUNOLENBQUM7S0FDSixDQUFDO0FBQ04sQ0FBQyxDQUFDLENBQUM7QUFFSCxNQUFNLFVBQVUsYUFBYSxDQUFDLFdBQWtDO0lBQzVELE9BQU87UUFDSCxPQUFPLEVBQUUsWUFBWTtRQUNyQixXQUFXO0tBQ2QsQ0FBQztBQUNOLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2luamVjdCwgUHJvdmlkZXIsIFR5cGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtXSU5ET1d9IGZyb20gJ0BuZy13ZWItYXBpcy9jb21tb24nO1xuaW1wb3J0IHt0dWlDcmVhdGVUb2tlbkZyb21GYWN0b3J5fSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7VHVpUmVjdEFjY2Vzc29yfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9hYnN0cmFjdCc7XG5cbi8qKlxuICogVmlld3BvcnQgYWNjZXNzb3JcbiAqL1xuZXhwb3J0IGNvbnN0IFRVSV9WSUVXUE9SVCA9IHR1aUNyZWF0ZVRva2VuRnJvbUZhY3Rvcnk8VHVpUmVjdEFjY2Vzc29yPigoKSA9PiB7XG4gICAgY29uc3Qgd2luID0gaW5qZWN0KFdJTkRPVyk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgICB0eXBlOiBgdmlld3BvcnRgLFxuICAgICAgICBnZXRDbGllbnRSZWN0KCkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICB0b3A6IDAsXG4gICAgICAgICAgICAgICAgbGVmdDogMCxcbiAgICAgICAgICAgICAgICByaWdodDogd2luLmlubmVyV2lkdGgsXG4gICAgICAgICAgICAgICAgYm90dG9tOiB3aW4uaW5uZXJIZWlnaHQsXG4gICAgICAgICAgICAgICAgd2lkdGg6IHdpbi5pbm5lcldpZHRoLFxuICAgICAgICAgICAgICAgIGhlaWdodDogd2luLmlubmVySGVpZ2h0LFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfSxcbiAgICB9O1xufSk7XG5cbmV4cG9ydCBmdW5jdGlvbiB0dWlBc1ZpZXdwb3J0KHVzZUV4aXN0aW5nOiBUeXBlPFR1aVJlY3RBY2Nlc3Nvcj4pOiBQcm92aWRlciB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgcHJvdmlkZTogVFVJX1ZJRVdQT1JULFxuICAgICAgICB1c2VFeGlzdGluZyxcbiAgICB9O1xufVxuIl19
@@ -1,2 +1,13 @@
1
+ /**
2
+ * Various sizes for components
3
+ *
4
+ * 'xxs' - extra extra small
5
+ * 'xs' - extra small
6
+ * 's' - small
7
+ * 'm' - medium (typically default)
8
+ * 'l' - large
9
+ * 'xl' - extra large
10
+ * 'xxl' - extra extra large
11
+ */
1
12
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2l6ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvdHlwZXMvc2l6ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBWYXJpb3VzIHNpemVzIGZvciBjb21wb25lbnRzXG4gKlxuICogJ3h4cycgLSBleHRyYSBleHRyYSBzbWFsbFxuICogJ3hzJyAtIGV4dHJhIHNtYWxsXG4gKiAncycgLSBzbWFsbFxuICogJ20nIC0gbWVkaXVtICh0eXBpY2FsbHkgZGVmYXVsdClcbiAqICdsJyAtIGxhcmdlXG4gKiAneGwnIC0gZXh0cmEgbGFyZ2VcbiAqICd4eGwnIC0gZXh0cmEgZXh0cmEgbGFyZ2VcbiAqL1xuXG5leHBvcnQgdHlwZSBUdWlTaXplTSA9ICdtJztcblxuZXhwb3J0IHR5cGUgVHVpU2l6ZVMgPSBUdWlTaXplTSB8ICdzJztcblxuZXhwb3J0IHR5cGUgVHVpU2l6ZUwgPSBUdWlTaXplTSB8ICdsJztcblxuZXhwb3J0IHR5cGUgVHVpU2l6ZVhTID0gVHVpU2l6ZVMgfCAneHMnO1xuXG5leHBvcnQgdHlwZSBUdWlTaXplWFhTID0gVHVpU2l6ZVhTIHwgJ3h4cyc7XG5cbmV4cG9ydCB0eXBlIFR1aVNpemVYTCA9IFR1aVNpemVMIHwgJ3hsJztcblxuZXhwb3J0IHR5cGUgVHVpU2l6ZVhYTCA9IFR1aVNpemVYTCB8ICd4eGwnO1xuIl19
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2l6ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvdHlwZXMvc2l6ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7OztHQVVHIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBWYXJpb3VzIHNpemVzIGZvciBjb21wb25lbnRzXG4gKlxuICogJ3h4cycgLSBleHRyYSBleHRyYSBzbWFsbFxuICogJ3hzJyAtIGV4dHJhIHNtYWxsXG4gKiAncycgLSBzbWFsbFxuICogJ20nIC0gbWVkaXVtICh0eXBpY2FsbHkgZGVmYXVsdClcbiAqICdsJyAtIGxhcmdlXG4gKiAneGwnIC0gZXh0cmEgbGFyZ2VcbiAqICd4eGwnIC0gZXh0cmEgZXh0cmEgbGFyZ2VcbiAqL1xuXG5leHBvcnQgdHlwZSBUdWlTaXplTSA9ICdtJztcblxuZXhwb3J0IHR5cGUgVHVpU2l6ZVMgPSBUdWlTaXplTSB8ICdzJztcblxuZXhwb3J0IHR5cGUgVHVpU2l6ZUwgPSBUdWlTaXplTSB8ICdsJztcblxuZXhwb3J0IHR5cGUgVHVpU2l6ZVhTID0gVHVpU2l6ZVMgfCAneHMnO1xuXG5leHBvcnQgdHlwZSBUdWlTaXplWFhTID0gVHVpU2l6ZVhTIHwgJ3h4cyc7XG5cbmV4cG9ydCB0eXBlIFR1aVNpemVYTCA9IFR1aVNpemVMIHwgJ3hsJztcblxuZXhwb3J0IHR5cGUgVHVpU2l6ZVhYTCA9IFR1aVNpemVYTCB8ICd4eGwnO1xuIl19
@@ -1,2 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
1
4
  export * from './index';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWktY29yZS10eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvdHlwZXMvdGFpZ2EtdWktY29yZS10eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0=
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWktY29yZS10eXBlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvdHlwZXMvdGFpZ2EtdWktY29yZS10eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
@@ -1,3 +1,8 @@
1
+ /**
2
+ * Calculates size of safe area on mobile devices (status bars)
3
+ *
4
+ * ATTENTION: Only use in browser environment
5
+ */
1
6
  export function tuiGetSafeAreaSize() {
2
7
  if (!CSS.supports(`padding-top: env(safe-area-inset-top)`)) {
3
8
  return 0;
@@ -9,4 +14,4 @@ export function tuiGetSafeAreaSize() {
9
14
  document.body.removeChild(div);
10
15
  return safeAreaSize;
11
16
  }
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXNhZmUtYXJlYS1zaXplLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS91dGlscy9kb20vZ2V0LXNhZmUtYXJlYS1zaXplLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLE1BQU0sVUFBVSxrQkFBa0I7SUFDOUIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsdUNBQXVDLENBQUMsRUFBRTtRQUN4RCxPQUFPLENBQUMsQ0FBQztLQUNaO0lBRUQsTUFBTSxHQUFHLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUUxQyxHQUFHLENBQUMsS0FBSyxDQUFDLFVBQVUsR0FBRywwQkFBMEIsQ0FBQztJQUNsRCxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUUvQixNQUFNLFlBQVksR0FBRyxRQUFRLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFaEYsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUM7SUFFL0IsT0FBTyxZQUFZLENBQUM7QUFDeEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ2FsY3VsYXRlcyBzaXplIG9mIHNhZmUgYXJlYSBvbiBtb2JpbGUgZGV2aWNlcyAoc3RhdHVzIGJhcnMpXG4gKlxuICogQVRURU5USU9OOiBPbmx5IHVzZSBpbiBicm93c2VyIGVudmlyb25tZW50XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0dWlHZXRTYWZlQXJlYVNpemUoKTogbnVtYmVyIHtcbiAgICBpZiAoIUNTUy5zdXBwb3J0cyhgcGFkZGluZy10b3A6IGVudihzYWZlLWFyZWEtaW5zZXQtdG9wKWApKSB7XG4gICAgICAgIHJldHVybiAwO1xuICAgIH1cblxuICAgIGNvbnN0IGRpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoYGRpdmApO1xuXG4gICAgZGl2LnN0eWxlLnBhZGRpbmdUb3AgPSBgZW52KHNhZmUtYXJlYS1pbnNldC10b3ApYDtcbiAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGRpdik7XG5cbiAgICBjb25zdCBzYWZlQXJlYVNpemUgPSBwYXJzZUludCh3aW5kb3cuZ2V0Q29tcHV0ZWRTdHlsZShkaXYpLnBhZGRpbmdUb3AsIDEwKSB8fCAwO1xuXG4gICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChkaXYpO1xuXG4gICAgcmV0dXJuIHNhZmVBcmVhU2l6ZTtcbn1cbiJdfQ==
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXNhZmUtYXJlYS1zaXplLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS91dGlscy9kb20vZ2V0LXNhZmUtYXJlYS1zaXplLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsa0JBQWtCO0lBQzlCLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLHVDQUF1QyxDQUFDLEVBQUU7UUFDeEQsT0FBTyxDQUFDLENBQUM7S0FDWjtJQUVELE1BQU0sR0FBRyxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7SUFFMUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxVQUFVLEdBQUcsMEJBQTBCLENBQUM7SUFDbEQsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUM7SUFFL0IsTUFBTSxZQUFZLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRWhGLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBRS9CLE9BQU8sWUFBWSxDQUFDO0FBQ3hCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENhbGN1bGF0ZXMgc2l6ZSBvZiBzYWZlIGFyZWEgb24gbW9iaWxlIGRldmljZXMgKHN0YXR1cyBiYXJzKVxuICpcbiAqIEFUVEVOVElPTjogT25seSB1c2UgaW4gYnJvd3NlciBlbnZpcm9ubWVudFxuICovXG5leHBvcnQgZnVuY3Rpb24gdHVpR2V0U2FmZUFyZWFTaXplKCk6IG51bWJlciB7XG4gICAgaWYgKCFDU1Muc3VwcG9ydHMoYHBhZGRpbmctdG9wOiBlbnYoc2FmZS1hcmVhLWluc2V0LXRvcClgKSkge1xuICAgICAgICByZXR1cm4gMDtcbiAgICB9XG5cbiAgICBjb25zdCBkaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KGBkaXZgKTtcblxuICAgIGRpdi5zdHlsZS5wYWRkaW5nVG9wID0gYGVudihzYWZlLWFyZWEtaW5zZXQtdG9wKWA7XG4gICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChkaXYpO1xuXG4gICAgY29uc3Qgc2FmZUFyZWFTaXplID0gcGFyc2VJbnQod2luZG93LmdldENvbXB1dGVkU3R5bGUoZGl2KS5wYWRkaW5nVG9wLCAxMCkgfHwgMDtcblxuICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQoZGl2KTtcblxuICAgIHJldHVybiBzYWZlQXJlYVNpemU7XG59XG4iXX0=
@@ -1,4 +1,21 @@
1
+ /**
2
+ * @description:
3
+ * Cross-browser @media (height)
4
+ *
5
+ * 1. window.innerWidth
6
+ * 1.1. gets CSS viewport @media (height) which include scrollbars
7
+ * 1.2. initial-scale and zoom variations may cause mobile values to
8
+ * wrongly scale down to what PPK calls the visual
9
+ * viewport and be smaller than the @media values
10
+ * 1.3. zoom may cause values to be 1px off due to native rounding
11
+ *
12
+ * 2. document.documentElement.clientHeight
13
+ * 2.1. equals CSS viewport width minus scrollbar width
14
+ * 2.2. matches @media (height) when there is no scrollbar
15
+ * 2.3. available cross-browser
16
+ * 2.4. inaccurate if doctype is missing
17
+ */
1
18
  export function tuiGetViewportHeight({ document, innerHeight }) {
2
19
  return Math.max(document.documentElement.clientHeight || 0, innerHeight || 0);
3
20
  }
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXZpZXdwb3J0LWhlaWdodC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvdXRpbHMvZG9tL2dldC12aWV3cG9ydC1oZWlnaHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBaUJBLE1BQU0sVUFBVSxvQkFBb0IsQ0FBQyxFQUFDLFFBQVEsRUFBRSxXQUFXLEVBQVM7SUFDaEUsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsWUFBWSxJQUFJLENBQUMsRUFBRSxXQUFXLElBQUksQ0FBQyxDQUFDLENBQUM7QUFDbEYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGRlc2NyaXB0aW9uOlxuICogQ3Jvc3MtYnJvd3NlciBAbWVkaWEgKGhlaWdodClcbiAqXG4gKiAxLiB3aW5kb3cuaW5uZXJXaWR0aFxuICogMS4xLiBnZXRzIENTUyB2aWV3cG9ydCBAbWVkaWEgKGhlaWdodCkgd2hpY2ggaW5jbHVkZSBzY3JvbGxiYXJzXG4gKiAxLjIuIGluaXRpYWwtc2NhbGUgYW5kIHpvb20gdmFyaWF0aW9ucyBtYXkgY2F1c2UgbW9iaWxlIHZhbHVlcyB0b1xuICogICAgICB3cm9uZ2x5IHNjYWxlIGRvd24gdG8gd2hhdCBQUEsgY2FsbHMgdGhlIHZpc3VhbFxuICogICAgICB2aWV3cG9ydCBhbmQgYmUgc21hbGxlciB0aGFuIHRoZSBAbWVkaWEgdmFsdWVzXG4gKiAgMS4zLiB6b29tIG1heSBjYXVzZSB2YWx1ZXMgdG8gYmUgMXB4IG9mZiBkdWUgdG8gbmF0aXZlIHJvdW5kaW5nXG4gKlxuICogIDIuIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHRcbiAqICAyLjEuIGVxdWFscyBDU1Mgdmlld3BvcnQgd2lkdGggbWludXMgc2Nyb2xsYmFyIHdpZHRoXG4gKiAgMi4yLiBtYXRjaGVzIEBtZWRpYSAoaGVpZ2h0KSB3aGVuIHRoZXJlIGlzIG5vIHNjcm9sbGJhclxuICogIDIuMy4gYXZhaWxhYmxlIGNyb3NzLWJyb3dzZXJcbiAqICAyLjQuIGluYWNjdXJhdGUgaWYgZG9jdHlwZSBpcyBtaXNzaW5nXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0dWlHZXRWaWV3cG9ydEhlaWdodCh7ZG9jdW1lbnQsIGlubmVySGVpZ2h0fTogV2luZG93KTogbnVtYmVyIHtcbiAgICByZXR1cm4gTWF0aC5tYXgoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodCB8fCAwLCBpbm5lckhlaWdodCB8fCAwKTtcbn1cbiJdfQ==
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXZpZXdwb3J0LWhlaWdodC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvdXRpbHMvZG9tL2dldC12aWV3cG9ydC1oZWlnaHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnQkc7QUFDSCxNQUFNLFVBQVUsb0JBQW9CLENBQUMsRUFBQyxRQUFRLEVBQUUsV0FBVyxFQUFTO0lBQ2hFLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLFlBQVksSUFBSSxDQUFDLEVBQUUsV0FBVyxJQUFJLENBQUMsQ0FBQyxDQUFDO0FBQ2xGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBkZXNjcmlwdGlvbjpcbiAqIENyb3NzLWJyb3dzZXIgQG1lZGlhIChoZWlnaHQpXG4gKlxuICogMS4gd2luZG93LmlubmVyV2lkdGhcbiAqIDEuMS4gZ2V0cyBDU1Mgdmlld3BvcnQgQG1lZGlhIChoZWlnaHQpIHdoaWNoIGluY2x1ZGUgc2Nyb2xsYmFyc1xuICogMS4yLiBpbml0aWFsLXNjYWxlIGFuZCB6b29tIHZhcmlhdGlvbnMgbWF5IGNhdXNlIG1vYmlsZSB2YWx1ZXMgdG9cbiAqICAgICAgd3JvbmdseSBzY2FsZSBkb3duIHRvIHdoYXQgUFBLIGNhbGxzIHRoZSB2aXN1YWxcbiAqICAgICAgdmlld3BvcnQgYW5kIGJlIHNtYWxsZXIgdGhhbiB0aGUgQG1lZGlhIHZhbHVlc1xuICogIDEuMy4gem9vbSBtYXkgY2F1c2UgdmFsdWVzIHRvIGJlIDFweCBvZmYgZHVlIHRvIG5hdGl2ZSByb3VuZGluZ1xuICpcbiAqICAyLiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0XG4gKiAgMi4xLiBlcXVhbHMgQ1NTIHZpZXdwb3J0IHdpZHRoIG1pbnVzIHNjcm9sbGJhciB3aWR0aFxuICogIDIuMi4gbWF0Y2hlcyBAbWVkaWEgKGhlaWdodCkgd2hlbiB0aGVyZSBpcyBubyBzY3JvbGxiYXJcbiAqICAyLjMuIGF2YWlsYWJsZSBjcm9zcy1icm93c2VyXG4gKiAgMi40LiBpbmFjY3VyYXRlIGlmIGRvY3R5cGUgaXMgbWlzc2luZ1xuICovXG5leHBvcnQgZnVuY3Rpb24gdHVpR2V0Vmlld3BvcnRIZWlnaHQoe2RvY3VtZW50LCBpbm5lckhlaWdodH06IFdpbmRvdyk6IG51bWJlciB7XG4gICAgcmV0dXJuIE1hdGgubWF4KGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHQgfHwgMCwgaW5uZXJIZWlnaHQgfHwgMCk7XG59XG4iXX0=
@@ -1,4 +1,21 @@
1
+ /**
2
+ * @description:
3
+ * Cross-browser @media (width)
4
+ *
5
+ * 1. window.innerWidth
6
+ * 1.1. gets CSS viewport @media (width) which include scrollbars
7
+ * 1.2. initial-scale and zoom variations may cause mobile values to
8
+ * wrongly scale down to what PPK calls the visual
9
+ * viewport and be smaller than the @media values
10
+ * 1.3. zoom may cause values to be 1px off due to native rounding
11
+ *
12
+ * 2. document.documentElement.clientWidth
13
+ * 2.1. equals CSS viewport width minus scrollbar width
14
+ * 2.2. matches @media (width) when there is no scrollbar
15
+ * 2.3. available cross-browser
16
+ * 2.4. inaccurate if doctype is missing
17
+ */
1
18
  export function tuiGetViewportWidth({ document, innerWidth }) {
2
19
  return Math.max(document.documentElement.clientWidth || 0, innerWidth || 0);
3
20
  }
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXZpZXdwb3J0LXdpZHRoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS91dGlscy9kb20vZ2V0LXZpZXdwb3J0LXdpZHRoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWlCQSxNQUFNLFVBQVUsbUJBQW1CLENBQUMsRUFBQyxRQUFRLEVBQUUsVUFBVSxFQUFTO0lBQzlELE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLFdBQVcsSUFBSSxDQUFDLEVBQUUsVUFBVSxJQUFJLENBQUMsQ0FBQyxDQUFDO0FBQ2hGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBkZXNjcmlwdGlvbjpcbiAqIENyb3NzLWJyb3dzZXIgQG1lZGlhICh3aWR0aClcbiAqXG4gKiAxLiB3aW5kb3cuaW5uZXJXaWR0aFxuICogMS4xLiBnZXRzIENTUyB2aWV3cG9ydCBAbWVkaWEgKHdpZHRoKSB3aGljaCBpbmNsdWRlIHNjcm9sbGJhcnNcbiAqIDEuMi4gaW5pdGlhbC1zY2FsZSBhbmQgem9vbSB2YXJpYXRpb25zIG1heSBjYXVzZSBtb2JpbGUgdmFsdWVzIHRvXG4gKiAgICAgIHdyb25nbHkgc2NhbGUgZG93biB0byB3aGF0IFBQSyBjYWxscyB0aGUgdmlzdWFsXG4gKiAgICAgIHZpZXdwb3J0IGFuZCBiZSBzbWFsbGVyIHRoYW4gdGhlIEBtZWRpYSB2YWx1ZXNcbiAqICAxLjMuIHpvb20gbWF5IGNhdXNlIHZhbHVlcyB0byBiZSAxcHggb2ZmIGR1ZSB0byBuYXRpdmUgcm91bmRpbmdcbiAqXG4gKiAgMi4gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRoXG4gKiAgMi4xLiBlcXVhbHMgQ1NTIHZpZXdwb3J0IHdpZHRoIG1pbnVzIHNjcm9sbGJhciB3aWR0aFxuICogIDIuMi4gbWF0Y2hlcyBAbWVkaWEgKHdpZHRoKSB3aGVuIHRoZXJlIGlzIG5vIHNjcm9sbGJhclxuICogIDIuMy4gYXZhaWxhYmxlIGNyb3NzLWJyb3dzZXJcbiAqICAyLjQuIGluYWNjdXJhdGUgaWYgZG9jdHlwZSBpcyBtaXNzaW5nXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0dWlHZXRWaWV3cG9ydFdpZHRoKHtkb2N1bWVudCwgaW5uZXJXaWR0aH06IFdpbmRvdyk6IG51bWJlciB7XG4gICAgcmV0dXJuIE1hdGgubWF4KGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRXaWR0aCB8fCAwLCBpbm5lcldpZHRoIHx8IDApO1xufVxuIl19
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXZpZXdwb3J0LXdpZHRoLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS91dGlscy9kb20vZ2V0LXZpZXdwb3J0LXdpZHRoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7O0dBZ0JHO0FBQ0gsTUFBTSxVQUFVLG1CQUFtQixDQUFDLEVBQUMsUUFBUSxFQUFFLFVBQVUsRUFBUztJQUM5RCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FBQyxXQUFXLElBQUksQ0FBQyxFQUFFLFVBQVUsSUFBSSxDQUFDLENBQUMsQ0FBQztBQUNoRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAZGVzY3JpcHRpb246XG4gKiBDcm9zcy1icm93c2VyIEBtZWRpYSAod2lkdGgpXG4gKlxuICogMS4gd2luZG93LmlubmVyV2lkdGhcbiAqIDEuMS4gZ2V0cyBDU1Mgdmlld3BvcnQgQG1lZGlhICh3aWR0aCkgd2hpY2ggaW5jbHVkZSBzY3JvbGxiYXJzXG4gKiAxLjIuIGluaXRpYWwtc2NhbGUgYW5kIHpvb20gdmFyaWF0aW9ucyBtYXkgY2F1c2UgbW9iaWxlIHZhbHVlcyB0b1xuICogICAgICB3cm9uZ2x5IHNjYWxlIGRvd24gdG8gd2hhdCBQUEsgY2FsbHMgdGhlIHZpc3VhbFxuICogICAgICB2aWV3cG9ydCBhbmQgYmUgc21hbGxlciB0aGFuIHRoZSBAbWVkaWEgdmFsdWVzXG4gKiAgMS4zLiB6b29tIG1heSBjYXVzZSB2YWx1ZXMgdG8gYmUgMXB4IG9mZiBkdWUgdG8gbmF0aXZlIHJvdW5kaW5nXG4gKlxuICogIDIuIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRXaWR0aFxuICogIDIuMS4gZXF1YWxzIENTUyB2aWV3cG9ydCB3aWR0aCBtaW51cyBzY3JvbGxiYXIgd2lkdGhcbiAqICAyLjIuIG1hdGNoZXMgQG1lZGlhICh3aWR0aCkgd2hlbiB0aGVyZSBpcyBubyBzY3JvbGxiYXJcbiAqICAyLjMuIGF2YWlsYWJsZSBjcm9zcy1icm93c2VyXG4gKiAgMi40LiBpbmFjY3VyYXRlIGlmIGRvY3R5cGUgaXMgbWlzc2luZ1xuICovXG5leHBvcnQgZnVuY3Rpb24gdHVpR2V0Vmlld3BvcnRXaWR0aCh7ZG9jdW1lbnQsIGlubmVyV2lkdGh9OiBXaW5kb3cpOiBudW1iZXIge1xuICAgIHJldHVybiBNYXRoLm1heChkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50V2lkdGggfHwgMCwgaW5uZXJXaWR0aCB8fCAwKTtcbn1cbiJdfQ==
@@ -1,4 +1,11 @@
1
1
  import { CHAR_NO_BREAK_SPACE, CHAR_ZERO_WIDTH_SPACE, svgNodeFilter } from '@taiga-ui/cdk';
2
+ /**
3
+ * Creates a cloned range with its boundaries set at word boundaries
4
+ *
5
+ * @param currentRange a range to clone
6
+ * @return modified range
7
+ */
8
+ // eslint-disable-next-line max-statements
2
9
  export function tuiGetWordRange(currentRange) {
3
10
  const range = currentRange.cloneRange();
4
11
  const { startContainer, startOffset, endContainer, endOffset } = range;
@@ -41,4 +48,4 @@ export function tuiGetWordRange(currentRange) {
41
48
  } while (treeWalker.nextNode());
42
49
  return range;
43
50
  }
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXdvcmQtcmFuZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3V0aWxzL2RvbS9nZXQtd29yZC1yYW5nZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsbUJBQW1CLEVBQUUscUJBQXFCLEVBQUUsYUFBYSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBU3hGLE1BQU0sVUFBVSxlQUFlLENBQUMsWUFBbUI7SUFDL0MsTUFBTSxLQUFLLEdBQUcsWUFBWSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3hDLE1BQU0sRUFBQyxjQUFjLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUMsR0FBRyxLQUFLLENBQUM7SUFDckUsTUFBTSxFQUFDLGFBQWEsRUFBQyxHQUFHLGNBQWMsQ0FBQztJQUV2QyxJQUFJLENBQUMsYUFBYSxFQUFFO1FBQ2hCLE9BQU8sS0FBSyxDQUFDO0tBQ2hCO0lBRUQsTUFBTSxVQUFVLEdBQUcsYUFBYSxDQUFDLGdCQUFnQixDQUM3QyxhQUFhLENBQUMsSUFBSSxFQUNsQixVQUFVLENBQUMsU0FBUyxFQUNwQixhQUFhLENBQ2hCLENBQUM7SUFFRixVQUFVLENBQUMsV0FBVyxHQUFHLGNBQWMsQ0FBQztJQUV4QyxHQUFHO1FBQ0MsTUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDLFdBQVcsQ0FBQztRQUN6QyxNQUFNLFdBQVcsR0FBRyxTQUFTLENBQUMsV0FBVyxJQUFJLEVBQUUsQ0FBQztRQUNoRCxNQUFNLE9BQU8sR0FDVCxTQUFTLEtBQUssY0FBYztZQUN4QixDQUFDLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsV0FBVyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3BELENBQUMsQ0FBQyxXQUFXLENBQUM7UUFDdEIsTUFBTSxNQUFNLEdBQ1IsSUFBSSxDQUFDLEdBQUcsQ0FDSixPQUFPLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxFQUN4QixPQUFPLENBQUMsV0FBVyxDQUFDLG1CQUFtQixDQUFDLEVBQ3hDLE9BQU8sQ0FBQyxXQUFXLENBQUMscUJBQXFCLENBQUMsQ0FDN0MsR0FBRyxDQUFDLENBQUM7UUFFVixLQUFLLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUU3QixJQUFJLE1BQU0sRUFBRTtZQUNSLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ2xDLE1BQU07U0FDVDtLQUNKLFFBQVEsVUFBVSxDQUFDLFlBQVksRUFBRSxFQUFFO0lBRXBDLFVBQVUsQ0FBQyxXQUFXLEdBQUcsWUFBWSxDQUFDO0lBRXRDLEdBQUc7UUFDQyxNQUFNLFNBQVMsR0FBRyxVQUFVLENBQUMsV0FBVyxDQUFDO1FBQ3pDLE1BQU0sV0FBVyxHQUFHLFNBQVMsQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDO1FBQ2hELE1BQU0sT0FBTyxHQUNULFNBQVMsS0FBSyxZQUFZLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUM7UUFDaEYsTUFBTSxNQUFNLEdBQUc7WUFDWCxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztZQUNwQixPQUFPLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDO1lBQ3BDLE9BQU8sQ0FBQyxPQUFPLENBQUMscUJBQXFCLENBQUM7U0FDekMsQ0FBQyxNQUFNLENBQ0osQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FDYixNQUFNLEtBQUssQ0FBQyxDQUFDLElBQUksSUFBSSxLQUFLLENBQUMsQ0FBQztZQUN4QixDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDO1lBQ3hCLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsRUFDaEMsQ0FBQyxDQUFDLENBQ0wsQ0FBQztRQUVGLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUU1QyxJQUFJLE1BQU0sS0FBSyxDQUFDLENBQUMsRUFBRTtZQUNmLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLE1BQU0sR0FBRyxXQUFXLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUN0RSxNQUFNO1NBQ1Q7S0FDSixRQUFRLFVBQVUsQ0FBQyxRQUFRLEVBQUUsRUFBRTtJQUVoQyxPQUFPLEtBQUssQ0FBQztBQUNqQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDSEFSX05PX0JSRUFLX1NQQUNFLCBDSEFSX1pFUk9fV0lEVEhfU1BBQ0UsIHN2Z05vZGVGaWx0ZXJ9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuXG4vKipcbiAqIENyZWF0ZXMgYSBjbG9uZWQgcmFuZ2Ugd2l0aCBpdHMgYm91bmRhcmllcyBzZXQgYXQgd29yZCBib3VuZGFyaWVzXG4gKlxuICogQHBhcmFtIGN1cnJlbnRSYW5nZSBhIHJhbmdlIHRvIGNsb25lXG4gKiBAcmV0dXJuIG1vZGlmaWVkIHJhbmdlXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBtYXgtc3RhdGVtZW50c1xuZXhwb3J0IGZ1bmN0aW9uIHR1aUdldFdvcmRSYW5nZShjdXJyZW50UmFuZ2U6IFJhbmdlKTogUmFuZ2Uge1xuICAgIGNvbnN0IHJhbmdlID0gY3VycmVudFJhbmdlLmNsb25lUmFuZ2UoKTtcbiAgICBjb25zdCB7c3RhcnRDb250YWluZXIsIHN0YXJ0T2Zmc2V0LCBlbmRDb250YWluZXIsIGVuZE9mZnNldH0gPSByYW5nZTtcbiAgICBjb25zdCB7b3duZXJEb2N1bWVudH0gPSBzdGFydENvbnRhaW5lcjtcblxuICAgIGlmICghb3duZXJEb2N1bWVudCkge1xuICAgICAgICByZXR1cm4gcmFuZ2U7XG4gICAgfVxuXG4gICAgY29uc3QgdHJlZVdhbGtlciA9IG93bmVyRG9jdW1lbnQuY3JlYXRlVHJlZVdhbGtlcihcbiAgICAgICAgb3duZXJEb2N1bWVudC5ib2R5LFxuICAgICAgICBOb2RlRmlsdGVyLlNIT1dfVEVYVCxcbiAgICAgICAgc3ZnTm9kZUZpbHRlcixcbiAgICApO1xuXG4gICAgdHJlZVdhbGtlci5jdXJyZW50Tm9kZSA9IHN0YXJ0Q29udGFpbmVyO1xuXG4gICAgZG8ge1xuICAgICAgICBjb25zdCBjb250YWluZXIgPSB0cmVlV2Fsa2VyLmN1cnJlbnROb2RlO1xuICAgICAgICBjb25zdCB0ZXh0Q29udGVudCA9IGNvbnRhaW5lci50ZXh0Q29udGVudCB8fCBgYDtcbiAgICAgICAgY29uc3QgY29udGVudCA9XG4gICAgICAgICAgICBjb250YWluZXIgPT09IHN0YXJ0Q29udGFpbmVyXG4gICAgICAgICAgICAgICAgPyB0ZXh0Q29udGVudC5zbGljZSgwLCBNYXRoLm1heCgwLCBzdGFydE9mZnNldCArIDEpKVxuICAgICAgICAgICAgICAgIDogdGV4dENvbnRlbnQ7XG4gICAgICAgIGNvbnN0IG9mZnNldCA9XG4gICAgICAgICAgICBNYXRoLm1heChcbiAgICAgICAgICAgICAgICBjb250ZW50Lmxhc3RJbmRleE9mKGAgYCksXG4gICAgICAgICAgICAgICAgY29udGVudC5sYXN0SW5kZXhPZihDSEFSX05PX0JSRUFLX1NQQUNFKSxcbiAgICAgICAgICAgICAgICBjb250ZW50Lmxhc3RJbmRleE9mKENIQVJfWkVST19XSURUSF9TUEFDRSksXG4gICAgICAgICAgICApICsgMTtcblxuICAgICAgICByYW5nZS5zZXRTdGFydChjb250YWluZXIsIDApO1xuXG4gICAgICAgIGlmIChvZmZzZXQpIHtcbiAgICAgICAgICAgIHJhbmdlLnNldFN0YXJ0KGNvbnRhaW5lciwgb2Zmc2V0KTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgfSB3aGlsZSAodHJlZVdhbGtlci5wcmV2aW91c05vZGUoKSk7XG5cbiAgICB0cmVlV2Fsa2VyLmN1cnJlbnROb2RlID0gZW5kQ29udGFpbmVyO1xuXG4gICAgZG8ge1xuICAgICAgICBjb25zdCBjb250YWluZXIgPSB0cmVlV2Fsa2VyLmN1cnJlbnROb2RlO1xuICAgICAgICBjb25zdCB0ZXh0Q29udGVudCA9IGNvbnRhaW5lci50ZXh0Q29udGVudCB8fCBgYDtcbiAgICAgICAgY29uc3QgY29udGVudCA9XG4gICAgICAgICAgICBjb250YWluZXIgPT09IGVuZENvbnRhaW5lciA/IHRleHRDb250ZW50LnNsaWNlKGVuZE9mZnNldCArIDEpIDogdGV4dENvbnRlbnQ7XG4gICAgICAgIGNvbnN0IG9mZnNldCA9IFtcbiAgICAgICAgICAgIGNvbnRlbnQuaW5kZXhPZihgIGApLFxuICAgICAgICAgICAgY29udGVudC5pbmRleE9mKENIQVJfTk9fQlJFQUtfU1BBQ0UpLFxuICAgICAgICAgICAgY29udGVudC5pbmRleE9mKENIQVJfWkVST19XSURUSF9TUEFDRSksXG4gICAgICAgIF0ucmVkdWNlKFxuICAgICAgICAgICAgKHJlc3VsdCwgaXRlbSkgPT5cbiAgICAgICAgICAgICAgICByZXN1bHQgPT09IC0xIHx8IGl0ZW0gPT09IC0xXG4gICAgICAgICAgICAgICAgICAgID8gTWF0aC5tYXgocmVzdWx0LCBpdGVtKVxuICAgICAgICAgICAgICAgICAgICA6IE1hdGgubWluKHJlc3VsdCwgaXRlbSksXG4gICAgICAgICAgICAtMSxcbiAgICAgICAgKTtcblxuICAgICAgICByYW5nZS5zZXRFbmQoY29udGFpbmVyLCB0ZXh0Q29udGVudC5sZW5ndGgpO1xuXG4gICAgICAgIGlmIChvZmZzZXQgIT09IC0xKSB7XG4gICAgICAgICAgICByYW5nZS5zZXRFbmQoY29udGFpbmVyLCBvZmZzZXQgKyB0ZXh0Q29udGVudC5sZW5ndGggLSBjb250ZW50Lmxlbmd0aCk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgIH0gd2hpbGUgKHRyZWVXYWxrZXIubmV4dE5vZGUoKSk7XG5cbiAgICByZXR1cm4gcmFuZ2U7XG59XG4iXX0=
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LXdvcmQtcmFuZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3V0aWxzL2RvbS9nZXQtd29yZC1yYW5nZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsbUJBQW1CLEVBQUUscUJBQXFCLEVBQUUsYUFBYSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRXhGOzs7OztHQUtHO0FBQ0gsMENBQTBDO0FBQzFDLE1BQU0sVUFBVSxlQUFlLENBQUMsWUFBbUI7SUFDL0MsTUFBTSxLQUFLLEdBQUcsWUFBWSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3hDLE1BQU0sRUFBQyxjQUFjLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUMsR0FBRyxLQUFLLENBQUM7SUFDckUsTUFBTSxFQUFDLGFBQWEsRUFBQyxHQUFHLGNBQWMsQ0FBQztJQUV2QyxJQUFJLENBQUMsYUFBYSxFQUFFO1FBQ2hCLE9BQU8sS0FBSyxDQUFDO0tBQ2hCO0lBRUQsTUFBTSxVQUFVLEdBQUcsYUFBYSxDQUFDLGdCQUFnQixDQUM3QyxhQUFhLENBQUMsSUFBSSxFQUNsQixVQUFVLENBQUMsU0FBUyxFQUNwQixhQUFhLENBQ2hCLENBQUM7SUFFRixVQUFVLENBQUMsV0FBVyxHQUFHLGNBQWMsQ0FBQztJQUV4QyxHQUFHO1FBQ0MsTUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDLFdBQVcsQ0FBQztRQUN6QyxNQUFNLFdBQVcsR0FBRyxTQUFTLENBQUMsV0FBVyxJQUFJLEVBQUUsQ0FBQztRQUNoRCxNQUFNLE9BQU8sR0FDVCxTQUFTLEtBQUssY0FBYztZQUN4QixDQUFDLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsV0FBVyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ3BELENBQUMsQ0FBQyxXQUFXLENBQUM7UUFDdEIsTUFBTSxNQUFNLEdBQ1IsSUFBSSxDQUFDLEdBQUcsQ0FDSixPQUFPLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxFQUN4QixPQUFPLENBQUMsV0FBVyxDQUFDLG1CQUFtQixDQUFDLEVBQ3hDLE9BQU8sQ0FBQyxXQUFXLENBQUMscUJBQXFCLENBQUMsQ0FDN0MsR0FBRyxDQUFDLENBQUM7UUFFVixLQUFLLENBQUMsUUFBUSxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUU3QixJQUFJLE1BQU0sRUFBRTtZQUNSLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ2xDLE1BQU07U0FDVDtLQUNKLFFBQVEsVUFBVSxDQUFDLFlBQVksRUFBRSxFQUFFO0lBRXBDLFVBQVUsQ0FBQyxXQUFXLEdBQUcsWUFBWSxDQUFDO0lBRXRDLEdBQUc7UUFDQyxNQUFNLFNBQVMsR0FBRyxVQUFVLENBQUMsV0FBVyxDQUFDO1FBQ3pDLE1BQU0sV0FBVyxHQUFHLFNBQVMsQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDO1FBQ2hELE1BQU0sT0FBTyxHQUNULFNBQVMsS0FBSyxZQUFZLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsU0FBUyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUM7UUFDaEYsTUFBTSxNQUFNLEdBQUc7WUFDWCxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQztZQUNwQixPQUFPLENBQUMsT0FBTyxDQUFDLG1CQUFtQixDQUFDO1lBQ3BDLE9BQU8sQ0FBQyxPQUFPLENBQUMscUJBQXFCLENBQUM7U0FDekMsQ0FBQyxNQUFNLENBQ0osQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FDYixNQUFNLEtBQUssQ0FBQyxDQUFDLElBQUksSUFBSSxLQUFLLENBQUMsQ0FBQztZQUN4QixDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDO1lBQ3hCLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsRUFDaEMsQ0FBQyxDQUFDLENBQ0wsQ0FBQztRQUVGLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUU1QyxJQUFJLE1BQU0sS0FBSyxDQUFDLENBQUMsRUFBRTtZQUNmLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLE1BQU0sR0FBRyxXQUFXLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUN0RSxNQUFNO1NBQ1Q7S0FDSixRQUFRLFVBQVUsQ0FBQyxRQUFRLEVBQUUsRUFBRTtJQUVoQyxPQUFPLEtBQUssQ0FBQztBQUNqQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDSEFSX05PX0JSRUFLX1NQQUNFLCBDSEFSX1pFUk9fV0lEVEhfU1BBQ0UsIHN2Z05vZGVGaWx0ZXJ9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuXG4vKipcbiAqIENyZWF0ZXMgYSBjbG9uZWQgcmFuZ2Ugd2l0aCBpdHMgYm91bmRhcmllcyBzZXQgYXQgd29yZCBib3VuZGFyaWVzXG4gKlxuICogQHBhcmFtIGN1cnJlbnRSYW5nZSBhIHJhbmdlIHRvIGNsb25lXG4gKiBAcmV0dXJuIG1vZGlmaWVkIHJhbmdlXG4gKi9cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBtYXgtc3RhdGVtZW50c1xuZXhwb3J0IGZ1bmN0aW9uIHR1aUdldFdvcmRSYW5nZShjdXJyZW50UmFuZ2U6IFJhbmdlKTogUmFuZ2Uge1xuICAgIGNvbnN0IHJhbmdlID0gY3VycmVudFJhbmdlLmNsb25lUmFuZ2UoKTtcbiAgICBjb25zdCB7c3RhcnRDb250YWluZXIsIHN0YXJ0T2Zmc2V0LCBlbmRDb250YWluZXIsIGVuZE9mZnNldH0gPSByYW5nZTtcbiAgICBjb25zdCB7b3duZXJEb2N1bWVudH0gPSBzdGFydENvbnRhaW5lcjtcblxuICAgIGlmICghb3duZXJEb2N1bWVudCkge1xuICAgICAgICByZXR1cm4gcmFuZ2U7XG4gICAgfVxuXG4gICAgY29uc3QgdHJlZVdhbGtlciA9IG93bmVyRG9jdW1lbnQuY3JlYXRlVHJlZVdhbGtlcihcbiAgICAgICAgb3duZXJEb2N1bWVudC5ib2R5LFxuICAgICAgICBOb2RlRmlsdGVyLlNIT1dfVEVYVCxcbiAgICAgICAgc3ZnTm9kZUZpbHRlcixcbiAgICApO1xuXG4gICAgdHJlZVdhbGtlci5jdXJyZW50Tm9kZSA9IHN0YXJ0Q29udGFpbmVyO1xuXG4gICAgZG8ge1xuICAgICAgICBjb25zdCBjb250YWluZXIgPSB0cmVlV2Fsa2VyLmN1cnJlbnROb2RlO1xuICAgICAgICBjb25zdCB0ZXh0Q29udGVudCA9IGNvbnRhaW5lci50ZXh0Q29udGVudCB8fCBgYDtcbiAgICAgICAgY29uc3QgY29udGVudCA9XG4gICAgICAgICAgICBjb250YWluZXIgPT09IHN0YXJ0Q29udGFpbmVyXG4gICAgICAgICAgICAgICAgPyB0ZXh0Q29udGVudC5zbGljZSgwLCBNYXRoLm1heCgwLCBzdGFydE9mZnNldCArIDEpKVxuICAgICAgICAgICAgICAgIDogdGV4dENvbnRlbnQ7XG4gICAgICAgIGNvbnN0IG9mZnNldCA9XG4gICAgICAgICAgICBNYXRoLm1heChcbiAgICAgICAgICAgICAgICBjb250ZW50Lmxhc3RJbmRleE9mKGAgYCksXG4gICAgICAgICAgICAgICAgY29udGVudC5sYXN0SW5kZXhPZihDSEFSX05PX0JSRUFLX1NQQUNFKSxcbiAgICAgICAgICAgICAgICBjb250ZW50Lmxhc3RJbmRleE9mKENIQVJfWkVST19XSURUSF9TUEFDRSksXG4gICAgICAgICAgICApICsgMTtcblxuICAgICAgICByYW5nZS5zZXRTdGFydChjb250YWluZXIsIDApO1xuXG4gICAgICAgIGlmIChvZmZzZXQpIHtcbiAgICAgICAgICAgIHJhbmdlLnNldFN0YXJ0KGNvbnRhaW5lciwgb2Zmc2V0KTtcbiAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgfSB3aGlsZSAodHJlZVdhbGtlci5wcmV2aW91c05vZGUoKSk7XG5cbiAgICB0cmVlV2Fsa2VyLmN1cnJlbnROb2RlID0gZW5kQ29udGFpbmVyO1xuXG4gICAgZG8ge1xuICAgICAgICBjb25zdCBjb250YWluZXIgPSB0cmVlV2Fsa2VyLmN1cnJlbnROb2RlO1xuICAgICAgICBjb25zdCB0ZXh0Q29udGVudCA9IGNvbnRhaW5lci50ZXh0Q29udGVudCB8fCBgYDtcbiAgICAgICAgY29uc3QgY29udGVudCA9XG4gICAgICAgICAgICBjb250YWluZXIgPT09IGVuZENvbnRhaW5lciA/IHRleHRDb250ZW50LnNsaWNlKGVuZE9mZnNldCArIDEpIDogdGV4dENvbnRlbnQ7XG4gICAgICAgIGNvbnN0IG9mZnNldCA9IFtcbiAgICAgICAgICAgIGNvbnRlbnQuaW5kZXhPZihgIGApLFxuICAgICAgICAgICAgY29udGVudC5pbmRleE9mKENIQVJfTk9fQlJFQUtfU1BBQ0UpLFxuICAgICAgICAgICAgY29udGVudC5pbmRleE9mKENIQVJfWkVST19XSURUSF9TUEFDRSksXG4gICAgICAgIF0ucmVkdWNlKFxuICAgICAgICAgICAgKHJlc3VsdCwgaXRlbSkgPT5cbiAgICAgICAgICAgICAgICByZXN1bHQgPT09IC0xIHx8IGl0ZW0gPT09IC0xXG4gICAgICAgICAgICAgICAgICAgID8gTWF0aC5tYXgocmVzdWx0LCBpdGVtKVxuICAgICAgICAgICAgICAgICAgICA6IE1hdGgubWluKHJlc3VsdCwgaXRlbSksXG4gICAgICAgICAgICAtMSxcbiAgICAgICAgKTtcblxuICAgICAgICByYW5nZS5zZXRFbmQoY29udGFpbmVyLCB0ZXh0Q29udGVudC5sZW5ndGgpO1xuXG4gICAgICAgIGlmIChvZmZzZXQgIT09IC0xKSB7XG4gICAgICAgICAgICByYW5nZS5zZXRFbmQoY29udGFpbmVyLCBvZmZzZXQgKyB0ZXh0Q29udGVudC5sZW5ndGggLSBjb250ZW50Lmxlbmd0aCk7XG4gICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgIH0gd2hpbGUgKHRyZWVXYWxrZXIubmV4dE5vZGUoKSk7XG5cbiAgICByZXR1cm4gcmFuZ2U7XG59XG4iXX0=
@@ -1,2 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
1
4
  export * from './index';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWktY29yZS11dGlscy1kb20uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3V0aWxzL2RvbS90YWlnYS11aS1jb3JlLXV0aWxzLWRvbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0=
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWktY29yZS11dGlscy1kb20uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3V0aWxzL2RvbS90YWlnYS11aS1jb3JlLXV0aWxzLWRvbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
@@ -1,4 +1,11 @@
1
+ /**
2
+ * Capitalizes a given string, replacing it with a lowercase string and making
3
+ * the first letter of each word uppercase.
4
+ *
5
+ * @param value the input string
6
+ * @return the capitalized string
7
+ */
1
8
  export function tuiCapitalize(value) {
2
9
  return value.toLowerCase().replace(/(?:^|\s)\S/g, char => char.toUpperCase());
3
10
  }
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FwaXRhbGl6ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvdXRpbHMvZm9ybWF0L2NhcGl0YWxpemUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsTUFBTSxVQUFVLGFBQWEsQ0FBQyxLQUFhO0lBQ3ZDLE9BQU8sS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztBQUNsRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDYXBpdGFsaXplcyBhIGdpdmVuIHN0cmluZywgcmVwbGFjaW5nIGl0IHdpdGggYSBsb3dlcmNhc2Ugc3RyaW5nIGFuZCBtYWtpbmdcbiAqIHRoZSBmaXJzdCBsZXR0ZXIgb2YgZWFjaCB3b3JkIHVwcGVyY2FzZS5cbiAqXG4gKiBAcGFyYW0gdmFsdWUgdGhlIGlucHV0IHN0cmluZ1xuICogQHJldHVybiB0aGUgY2FwaXRhbGl6ZWQgc3RyaW5nXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0dWlDYXBpdGFsaXplKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB2YWx1ZS50b0xvd2VyQ2FzZSgpLnJlcGxhY2UoLyg/Ol58XFxzKVxcUy9nLCBjaGFyID0+IGNoYXIudG9VcHBlckNhc2UoKSk7XG59XG4iXX0=
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FwaXRhbGl6ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvdXRpbHMvZm9ybWF0L2NhcGl0YWxpemUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBQ0gsTUFBTSxVQUFVLGFBQWEsQ0FBQyxLQUFhO0lBQ3ZDLE9BQU8sS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxhQUFhLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztBQUNsRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDYXBpdGFsaXplcyBhIGdpdmVuIHN0cmluZywgcmVwbGFjaW5nIGl0IHdpdGggYSBsb3dlcmNhc2Ugc3RyaW5nIGFuZCBtYWtpbmdcbiAqIHRoZSBmaXJzdCBsZXR0ZXIgb2YgZWFjaCB3b3JkIHVwcGVyY2FzZS5cbiAqXG4gKiBAcGFyYW0gdmFsdWUgdGhlIGlucHV0IHN0cmluZ1xuICogQHJldHVybiB0aGUgY2FwaXRhbGl6ZWQgc3RyaW5nXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0dWlDYXBpdGFsaXplKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiB2YWx1ZS50b0xvd2VyQ2FzZSgpLnJlcGxhY2UoLyg/Ol58XFxzKVxcUy9nLCBjaGFyID0+IGNoYXIudG9VcHBlckNhc2UoKSk7XG59XG4iXX0=
@@ -1,6 +1,14 @@
1
1
  import { CHAR_HYPHEN, tuiRoundWith } from '@taiga-ui/cdk';
2
2
  import { TUI_DEFAULT_NUMBER_FORMAT } from '@taiga-ui/core/constants';
3
3
  import { tuiGetFractionPartPadded } from './get-fractional-part-padded';
4
+ /**
5
+ * Formats number adding a thousand separators and correct decimal separator
6
+ * padding decimal part with zeroes to given length
7
+ *
8
+ * @param value the input number
9
+ * @param settings See {@link TuiNumberFormatSettings}
10
+ * @return the formatted string
11
+ */
4
12
  export function tuiFormatNumber(value, settings = {}) {
5
13
  const { decimalLimit, decimalSeparator, thousandSeparator, zeroPadding, rounding } = Object.assign(Object.assign({}, TUI_DEFAULT_NUMBER_FORMAT), settings);
6
14
  const rounded = Number.isFinite(decimalLimit)
@@ -29,4 +37,4 @@ export function tuiFormatNumber(value, settings = {}) {
29
37
  }
30
38
  return fractionPartPadded ? result + decimalSeparator + fractionPartPadded : result;
31
39
  }
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LW51bWJlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvdXRpbHMvZm9ybWF0L2Zvcm1hdC1udW1iZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFdBQVcsRUFBRSxZQUFZLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEQsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFHbkUsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFVdEUsTUFBTSxVQUFVLGVBQWUsQ0FDM0IsS0FBYSxFQUNiLFdBQTZDLEVBQUU7SUFFL0MsTUFBTSxFQUFDLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFDLG1DQUN6RSx5QkFBeUIsR0FDekIsUUFBUSxDQUNkLENBQUM7SUFFRixNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQztRQUN6QyxDQUFDLENBQUMsWUFBWSxDQUFDLEVBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBQyxDQUFDO1FBQ2xFLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFDWixNQUFNLGlCQUFpQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRWhFLElBQUksa0JBQWtCLEdBQUcsd0JBQXdCLENBQUMsT0FBTyxFQUFFLFlBQVksQ0FBQyxDQUFDO0lBRXpFLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsRUFBRTtRQUMvQixJQUFJLFdBQVcsRUFBRTtZQUNiLE1BQU0sZUFBZSxHQUFXLElBQUksQ0FBQyxHQUFHLENBQ3BDLFlBQVksR0FBRyxrQkFBa0IsQ0FBQyxNQUFNLEVBQ3hDLENBQUMsQ0FDSixDQUFDO1lBQ0YsTUFBTSxjQUFjLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsQ0FBQztZQUVuRCxrQkFBa0IsR0FBRyxHQUFHLGtCQUFrQixHQUFHLGNBQWMsRUFBRSxDQUFDO1NBQ2pFO2FBQU07WUFDSCxrQkFBa0IsR0FBRyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1NBQzlEO0tBQ0o7SUFFRCxNQUFNLFNBQVMsR0FBRyxpQkFBaUIsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQy9DLE1BQU0sSUFBSSxHQUFHLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQzFDLElBQUksTUFBTSxHQUFHLElBQUksR0FBRyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFFaEQsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLGlCQUFpQixDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtRQUMvQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssU0FBUyxJQUFJLGlCQUFpQixDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDckQsTUFBTSxJQUFJLGlCQUFpQixDQUFDO1NBQy9CO1FBRUQsTUFBTSxJQUFJLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUN6QztJQUVELE9BQU8sa0JBQWtCLENBQUMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxnQkFBZ0IsR0FBRyxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDO0FBQ3hGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NIQVJfSFlQSEVOLCB0dWlSb3VuZFdpdGh9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUVUlfREVGQVVMVF9OVU1CRVJfRk9STUFUfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb25zdGFudHMnO1xuaW1wb3J0IHtUdWlOdW1iZXJGb3JtYXRTZXR0aW5nc30gZnJvbSAnQHRhaWdhLXVpL2NvcmUvaW50ZXJmYWNlcyc7XG5cbmltcG9ydCB7dHVpR2V0RnJhY3Rpb25QYXJ0UGFkZGVkfSBmcm9tICcuL2dldC1mcmFjdGlvbmFsLXBhcnQtcGFkZGVkJztcblxuLyoqXG4gKiBGb3JtYXRzIG51bWJlciBhZGRpbmcgYSB0aG91c2FuZCBzZXBhcmF0b3JzIGFuZCBjb3JyZWN0IGRlY2ltYWwgc2VwYXJhdG9yXG4gKiBwYWRkaW5nIGRlY2ltYWwgcGFydCB3aXRoIHplcm9lcyB0byBnaXZlbiBsZW5ndGhcbiAqXG4gKiBAcGFyYW0gdmFsdWUgdGhlIGlucHV0IG51bWJlclxuICogQHBhcmFtIHNldHRpbmdzIFNlZSB7QGxpbmsgVHVpTnVtYmVyRm9ybWF0U2V0dGluZ3N9XG4gKiBAcmV0dXJuIHRoZSBmb3JtYXR0ZWQgc3RyaW5nXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0dWlGb3JtYXROdW1iZXIoXG4gICAgdmFsdWU6IG51bWJlcixcbiAgICBzZXR0aW5nczogUGFydGlhbDxUdWlOdW1iZXJGb3JtYXRTZXR0aW5ncz4gPSB7fSxcbik6IHN0cmluZyB7XG4gICAgY29uc3Qge2RlY2ltYWxMaW1pdCwgZGVjaW1hbFNlcGFyYXRvciwgdGhvdXNhbmRTZXBhcmF0b3IsIHplcm9QYWRkaW5nLCByb3VuZGluZ30gPSB7XG4gICAgICAgIC4uLlRVSV9ERUZBVUxUX05VTUJFUl9GT1JNQVQsXG4gICAgICAgIC4uLnNldHRpbmdzLFxuICAgIH07XG5cbiAgICBjb25zdCByb3VuZGVkID0gTnVtYmVyLmlzRmluaXRlKGRlY2ltYWxMaW1pdClcbiAgICAgICAgPyB0dWlSb3VuZFdpdGgoe3ZhbHVlLCBwcmVjaXNpb246IGRlY2ltYWxMaW1pdCwgbWV0aG9kOiByb3VuZGluZ30pXG4gICAgICAgIDogdmFsdWU7XG4gICAgY29uc3QgaW50ZWdlclBhcnRTdHJpbmcgPSBTdHJpbmcoTWF0aC5mbG9vcihNYXRoLmFicyhyb3VuZGVkKSkpO1xuXG4gICAgbGV0IGZyYWN0aW9uUGFydFBhZGRlZCA9IHR1aUdldEZyYWN0aW9uUGFydFBhZGRlZChyb3VuZGVkLCBkZWNpbWFsTGltaXQpO1xuXG4gICAgaWYgKE51bWJlci5pc0Zpbml0ZShkZWNpbWFsTGltaXQpKSB7XG4gICAgICAgIGlmICh6ZXJvUGFkZGluZykge1xuICAgICAgICAgICAgY29uc3QgemVyb1BhZGRpbmdTaXplOiBudW1iZXIgPSBNYXRoLm1heChcbiAgICAgICAgICAgICAgICBkZWNpbWFsTGltaXQgLSBmcmFjdGlvblBhcnRQYWRkZWQubGVuZ3RoLFxuICAgICAgICAgICAgICAgIDAsXG4gICAgICAgICAgICApO1xuICAgICAgICAgICAgY29uc3QgemVyb1BhcnRTdHJpbmcgPSBgMGAucmVwZWF0KHplcm9QYWRkaW5nU2l6ZSk7XG5cbiAgICAgICAgICAgIGZyYWN0aW9uUGFydFBhZGRlZCA9IGAke2ZyYWN0aW9uUGFydFBhZGRlZH0ke3plcm9QYXJ0U3RyaW5nfWA7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBmcmFjdGlvblBhcnRQYWRkZWQgPSBmcmFjdGlvblBhcnRQYWRkZWQucmVwbGFjZSgvMCokLywgYGApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgcmVtYWluZGVyID0gaW50ZWdlclBhcnRTdHJpbmcubGVuZ3RoICUgMztcbiAgICBjb25zdCBzaWduID0gdmFsdWUgPCAwID8gQ0hBUl9IWVBIRU4gOiBgYDtcbiAgICBsZXQgcmVzdWx0ID0gc2lnbiArIGludGVnZXJQYXJ0U3RyaW5nLmNoYXJBdCgwKTtcblxuICAgIGZvciAobGV0IGkgPSAxOyBpIDwgaW50ZWdlclBhcnRTdHJpbmcubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgaWYgKGkgJSAzID09PSByZW1haW5kZXIgJiYgaW50ZWdlclBhcnRTdHJpbmcubGVuZ3RoID4gMykge1xuICAgICAgICAgICAgcmVzdWx0ICs9IHRob3VzYW5kU2VwYXJhdG9yO1xuICAgICAgICB9XG5cbiAgICAgICAgcmVzdWx0ICs9IGludGVnZXJQYXJ0U3RyaW5nLmNoYXJBdChpKTtcbiAgICB9XG5cbiAgICByZXR1cm4gZnJhY3Rpb25QYXJ0UGFkZGVkID8gcmVzdWx0ICsgZGVjaW1hbFNlcGFyYXRvciArIGZyYWN0aW9uUGFydFBhZGRlZCA6IHJlc3VsdDtcbn1cbiJdfQ==
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LW51bWJlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvdXRpbHMvZm9ybWF0L2Zvcm1hdC1udW1iZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFdBQVcsRUFBRSxZQUFZLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEQsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFHbkUsT0FBTyxFQUFDLHdCQUF3QixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFFdEU7Ozs7Ozs7R0FPRztBQUNILE1BQU0sVUFBVSxlQUFlLENBQzNCLEtBQWEsRUFDYixXQUE2QyxFQUFFO0lBRS9DLE1BQU0sRUFBQyxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBQyxtQ0FDekUseUJBQXlCLEdBQ3pCLFFBQVEsQ0FDZCxDQUFDO0lBRUYsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUM7UUFDekMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxFQUFDLEtBQUssRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUMsQ0FBQztRQUNsRSxDQUFDLENBQUMsS0FBSyxDQUFDO0lBQ1osTUFBTSxpQkFBaUIsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUVoRSxJQUFJLGtCQUFrQixHQUFHLHdCQUF3QixDQUFDLE9BQU8sRUFBRSxZQUFZLENBQUMsQ0FBQztJQUV6RSxJQUFJLE1BQU0sQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLEVBQUU7UUFDL0IsSUFBSSxXQUFXLEVBQUU7WUFDYixNQUFNLGVBQWUsR0FBVyxJQUFJLENBQUMsR0FBRyxDQUNwQyxZQUFZLEdBQUcsa0JBQWtCLENBQUMsTUFBTSxFQUN4QyxDQUFDLENBQ0osQ0FBQztZQUNGLE1BQU0sY0FBYyxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLENBQUM7WUFFbkQsa0JBQWtCLEdBQUcsR0FBRyxrQkFBa0IsR0FBRyxjQUFjLEVBQUUsQ0FBQztTQUNqRTthQUFNO1lBQ0gsa0JBQWtCLEdBQUcsa0JBQWtCLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztTQUM5RDtLQUNKO0lBRUQsTUFBTSxTQUFTLEdBQUcsaUJBQWlCLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztJQUMvQyxNQUFNLElBQUksR0FBRyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUMxQyxJQUFJLE1BQU0sR0FBRyxJQUFJLEdBQUcsaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBRWhELEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxpQkFBaUIsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7UUFDL0MsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLFNBQVMsSUFBSSxpQkFBaUIsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3JELE1BQU0sSUFBSSxpQkFBaUIsQ0FBQztTQUMvQjtRQUVELE1BQU0sSUFBSSxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7S0FDekM7SUFFRCxPQUFPLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxNQUFNLEdBQUcsZ0JBQWdCLEdBQUcsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztBQUN4RixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDSEFSX0hZUEhFTiwgdHVpUm91bmRXaXRofSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7VFVJX0RFRkFVTFRfTlVNQkVSX0ZPUk1BVH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29uc3RhbnRzJztcbmltcG9ydCB7VHVpTnVtYmVyRm9ybWF0U2V0dGluZ3N9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2ludGVyZmFjZXMnO1xuXG5pbXBvcnQge3R1aUdldEZyYWN0aW9uUGFydFBhZGRlZH0gZnJvbSAnLi9nZXQtZnJhY3Rpb25hbC1wYXJ0LXBhZGRlZCc7XG5cbi8qKlxuICogRm9ybWF0cyBudW1iZXIgYWRkaW5nIGEgdGhvdXNhbmQgc2VwYXJhdG9ycyBhbmQgY29ycmVjdCBkZWNpbWFsIHNlcGFyYXRvclxuICogcGFkZGluZyBkZWNpbWFsIHBhcnQgd2l0aCB6ZXJvZXMgdG8gZ2l2ZW4gbGVuZ3RoXG4gKlxuICogQHBhcmFtIHZhbHVlIHRoZSBpbnB1dCBudW1iZXJcbiAqIEBwYXJhbSBzZXR0aW5ncyBTZWUge0BsaW5rIFR1aU51bWJlckZvcm1hdFNldHRpbmdzfVxuICogQHJldHVybiB0aGUgZm9ybWF0dGVkIHN0cmluZ1xuICovXG5leHBvcnQgZnVuY3Rpb24gdHVpRm9ybWF0TnVtYmVyKFxuICAgIHZhbHVlOiBudW1iZXIsXG4gICAgc2V0dGluZ3M6IFBhcnRpYWw8VHVpTnVtYmVyRm9ybWF0U2V0dGluZ3M+ID0ge30sXG4pOiBzdHJpbmcge1xuICAgIGNvbnN0IHtkZWNpbWFsTGltaXQsIGRlY2ltYWxTZXBhcmF0b3IsIHRob3VzYW5kU2VwYXJhdG9yLCB6ZXJvUGFkZGluZywgcm91bmRpbmd9ID0ge1xuICAgICAgICAuLi5UVUlfREVGQVVMVF9OVU1CRVJfRk9STUFULFxuICAgICAgICAuLi5zZXR0aW5ncyxcbiAgICB9O1xuXG4gICAgY29uc3Qgcm91bmRlZCA9IE51bWJlci5pc0Zpbml0ZShkZWNpbWFsTGltaXQpXG4gICAgICAgID8gdHVpUm91bmRXaXRoKHt2YWx1ZSwgcHJlY2lzaW9uOiBkZWNpbWFsTGltaXQsIG1ldGhvZDogcm91bmRpbmd9KVxuICAgICAgICA6IHZhbHVlO1xuICAgIGNvbnN0IGludGVnZXJQYXJ0U3RyaW5nID0gU3RyaW5nKE1hdGguZmxvb3IoTWF0aC5hYnMocm91bmRlZCkpKTtcblxuICAgIGxldCBmcmFjdGlvblBhcnRQYWRkZWQgPSB0dWlHZXRGcmFjdGlvblBhcnRQYWRkZWQocm91bmRlZCwgZGVjaW1hbExpbWl0KTtcblxuICAgIGlmIChOdW1iZXIuaXNGaW5pdGUoZGVjaW1hbExpbWl0KSkge1xuICAgICAgICBpZiAoemVyb1BhZGRpbmcpIHtcbiAgICAgICAgICAgIGNvbnN0IHplcm9QYWRkaW5nU2l6ZTogbnVtYmVyID0gTWF0aC5tYXgoXG4gICAgICAgICAgICAgICAgZGVjaW1hbExpbWl0IC0gZnJhY3Rpb25QYXJ0UGFkZGVkLmxlbmd0aCxcbiAgICAgICAgICAgICAgICAwLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGNvbnN0IHplcm9QYXJ0U3RyaW5nID0gYDBgLnJlcGVhdCh6ZXJvUGFkZGluZ1NpemUpO1xuXG4gICAgICAgICAgICBmcmFjdGlvblBhcnRQYWRkZWQgPSBgJHtmcmFjdGlvblBhcnRQYWRkZWR9JHt6ZXJvUGFydFN0cmluZ31gO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZnJhY3Rpb25QYXJ0UGFkZGVkID0gZnJhY3Rpb25QYXJ0UGFkZGVkLnJlcGxhY2UoLzAqJC8sIGBgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IHJlbWFpbmRlciA9IGludGVnZXJQYXJ0U3RyaW5nLmxlbmd0aCAlIDM7XG4gICAgY29uc3Qgc2lnbiA9IHZhbHVlIDwgMCA/IENIQVJfSFlQSEVOIDogYGA7XG4gICAgbGV0IHJlc3VsdCA9IHNpZ24gKyBpbnRlZ2VyUGFydFN0cmluZy5jaGFyQXQoMCk7XG5cbiAgICBmb3IgKGxldCBpID0gMTsgaSA8IGludGVnZXJQYXJ0U3RyaW5nLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGlmIChpICUgMyA9PT0gcmVtYWluZGVyICYmIGludGVnZXJQYXJ0U3RyaW5nLmxlbmd0aCA+IDMpIHtcbiAgICAgICAgICAgIHJlc3VsdCArPSB0aG91c2FuZFNlcGFyYXRvcjtcbiAgICAgICAgfVxuXG4gICAgICAgIHJlc3VsdCArPSBpbnRlZ2VyUGFydFN0cmluZy5jaGFyQXQoaSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZyYWN0aW9uUGFydFBhZGRlZCA/IHJlc3VsdCArIGRlY2ltYWxTZXBhcmF0b3IgKyBmcmFjdGlvblBhcnRQYWRkZWQgOiByZXN1bHQ7XG59XG4iXX0=
@@ -1,4 +1,23 @@
1
1
  import { CHAR_PLUS } from '@taiga-ui/cdk';
2
+ /**
3
+ * TODO: delete in v4.0
4
+ * @deprecated Use {@link https://maskito.dev/core-concepts/transformer maskitoTransform} instead<br/>
5
+ * @example
6
+ * import {maskitoTransform} from '@maskito/core';
7
+ *
8
+ * const mask = {
9
+ * mask: ['+', '1', ' ', /\d/, /\d/, /\d/, ')', ' ', /\d/, /\d/, /\d/, '-', /\d/, /\d/, /\d/, /\d/],
10
+ * };
11
+ * maskitoTransform('12125552368', mask); // +1 (212) 555-2368
12
+ * ___
13
+ * Formats a string with the phone format +7XXXXXXXXXXXX or XXXXXXXXXXXX,
14
+ * adding parentheses and hyphens.
15
+ *
16
+ * @param value the input string
17
+ * @param countryCode a country code
18
+ * @param phoneMask a phone number mask
19
+ * @return the formatted phone string of the form +7 XXX XXX-XX-XX
20
+ */
2
21
  export function tuiFormatPhone(value, countryCode, phoneMask) {
3
22
  if (!value) {
4
23
  return ``;
@@ -28,4 +47,4 @@ export function tuiFormatPhone(value, countryCode, phoneMask) {
28
47
  }
29
48
  return result;
30
49
  }
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LXBob25lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS91dGlscy9mb3JtYXQvZm9ybWF0LXBob25lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFxQnhDLE1BQU0sVUFBVSxjQUFjLENBQzFCLEtBQWEsRUFDYixXQUFtQixFQUNuQixTQUFpQjtJQUVqQixJQUFJLENBQUMsS0FBSyxFQUFFO1FBQ1IsT0FBTyxFQUFFLENBQUM7S0FDYjtJQUVELElBQUksTUFBTSxHQUFHLFdBQVcsQ0FBQztJQUV6QixXQUFXLEdBQUcsV0FBVyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFFL0MsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLEVBQUU7UUFDaEMsS0FBSyxHQUFHLFdBQVcsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztLQUN0RDtJQUVELE1BQU0sY0FBYyxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDM0MsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBRTdELE1BQU0sSUFBSSxHQUFHLENBQUM7SUFFZCxJQUFJLFVBQVUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1FBQ3pCLE9BQU8sTUFBTSxDQUFDO0tBQ2pCO0lBRUQsS0FBSyxNQUFNLElBQUksSUFBSSxjQUFjLEVBQUU7UUFDL0IsSUFBSSxVQUFVLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUN6QixNQUFNO1NBQ1Q7UUFFRCxJQUFJLElBQUksS0FBSyxHQUFHLEVBQUU7WUFDZCxNQUFNLElBQUksVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUM5QixVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztTQUMzQjthQUFNO1lBQ0gsTUFBTSxJQUFJLElBQUksQ0FBQztTQUNsQjtLQUNKO0lBRUQsT0FBTyxNQUFNLENBQUM7QUFDbEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q0hBUl9QTFVTfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcblxuLyoqXG4gKiBUT0RPOiBkZWxldGUgaW4gdjQuMFxuICogQGRlcHJlY2F0ZWQgVXNlIHtAbGluayBodHRwczovL21hc2tpdG8uZGV2L2NvcmUtY29uY2VwdHMvdHJhbnNmb3JtZXIgbWFza2l0b1RyYW5zZm9ybX0gaW5zdGVhZDxici8+XG4gKiBAZXhhbXBsZVxuICogaW1wb3J0IHttYXNraXRvVHJhbnNmb3JtfSBmcm9tICdAbWFza2l0by9jb3JlJztcbiAqXG4gKiBjb25zdCBtYXNrID0ge1xuICogICAgIG1hc2s6IFsnKycsICcxJywgJyAnLCAvXFxkLywgL1xcZC8sIC9cXGQvLCAnKScsICcgJywgL1xcZC8sIC9cXGQvLCAvXFxkLywgJy0nLCAvXFxkLywgL1xcZC8sIC9cXGQvLCAvXFxkL10sXG4gKiB9O1xuICogbWFza2l0b1RyYW5zZm9ybSgnMTIxMjU1NTIzNjgnLCBtYXNrKTsgLy8gKzEgKDIxMikgNTU1LTIzNjhcbiAqIF9fX1xuICogRm9ybWF0cyBhIHN0cmluZyB3aXRoIHRoZSBwaG9uZSBmb3JtYXQgKzdYWFhYWFhYWFhYWFggb3IgWFhYWFhYWFhYWFhYLFxuICogYWRkaW5nIHBhcmVudGhlc2VzIGFuZCBoeXBoZW5zLlxuICpcbiAqIEBwYXJhbSB2YWx1ZSB0aGUgaW5wdXQgc3RyaW5nXG4gKiBAcGFyYW0gY291bnRyeUNvZGUgYSBjb3VudHJ5IGNvZGVcbiAqIEBwYXJhbSBwaG9uZU1hc2sgYSBwaG9uZSBudW1iZXIgbWFza1xuICogQHJldHVybiB0aGUgZm9ybWF0dGVkIHBob25lIHN0cmluZyBvZiB0aGUgZm9ybSArNyBYWFggWFhYLVhYLVhYXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0dWlGb3JtYXRQaG9uZShcbiAgICB2YWx1ZTogc3RyaW5nLFxuICAgIGNvdW50cnlDb2RlOiBzdHJpbmcsXG4gICAgcGhvbmVNYXNrOiBzdHJpbmcsXG4pOiBzdHJpbmcge1xuICAgIGlmICghdmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIGBgO1xuICAgIH1cblxuICAgIGxldCByZXN1bHQgPSBjb3VudHJ5Q29kZTtcblxuICAgIGNvdW50cnlDb2RlID0gY291bnRyeUNvZGUucmVwbGFjZSgvWygpXS9nLCBgYCk7XG5cbiAgICBpZiAoIXZhbHVlLnN0YXJ0c1dpdGgoY291bnRyeUNvZGUpKSB7XG4gICAgICAgIHZhbHVlID0gY291bnRyeUNvZGUgKyB2YWx1ZS5yZXBsYWNlKENIQVJfUExVUywgYGApO1xuICAgIH1cblxuICAgIGNvbnN0IHNwbGl0UGhvbmVNYXNrID0gcGhvbmVNYXNrLnNwbGl0KGBgKTtcbiAgICBjb25zdCBzcGxpdFZhbHVlID0gdmFsdWUuc2xpY2UoY291bnRyeUNvZGUubGVuZ3RoKS5zcGxpdChgYCk7XG5cbiAgICByZXN1bHQgKz0gYCBgO1xuXG4gICAgaWYgKHNwbGl0VmFsdWUubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuXG4gICAgZm9yIChjb25zdCBtYXNrIG9mIHNwbGl0UGhvbmVNYXNrKSB7XG4gICAgICAgIGlmIChzcGxpdFZhbHVlLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAobWFzayA9PT0gYCNgKSB7XG4gICAgICAgICAgICByZXN1bHQgKz0gc3BsaXRWYWx1ZVswXSB8fCBgYDtcbiAgICAgICAgICAgIHNwbGl0VmFsdWUuc3BsaWNlKDAsIDEpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmVzdWx0ICs9IG1hc2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xufVxuIl19
50
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LXBob25lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS91dGlscy9mb3JtYXQvZm9ybWF0LXBob25lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFeEM7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWtCRztBQUNILE1BQU0sVUFBVSxjQUFjLENBQzFCLEtBQWEsRUFDYixXQUFtQixFQUNuQixTQUFpQjtJQUVqQixJQUFJLENBQUMsS0FBSyxFQUFFO1FBQ1IsT0FBTyxFQUFFLENBQUM7S0FDYjtJQUVELElBQUksTUFBTSxHQUFHLFdBQVcsQ0FBQztJQUV6QixXQUFXLEdBQUcsV0FBVyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFFL0MsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLEVBQUU7UUFDaEMsS0FBSyxHQUFHLFdBQVcsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsQ0FBQztLQUN0RDtJQUVELE1BQU0sY0FBYyxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDM0MsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBRTdELE1BQU0sSUFBSSxHQUFHLENBQUM7SUFFZCxJQUFJLFVBQVUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1FBQ3pCLE9BQU8sTUFBTSxDQUFDO0tBQ2pCO0lBRUQsS0FBSyxNQUFNLElBQUksSUFBSSxjQUFjLEVBQUU7UUFDL0IsSUFBSSxVQUFVLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUN6QixNQUFNO1NBQ1Q7UUFFRCxJQUFJLElBQUksS0FBSyxHQUFHLEVBQUU7WUFDZCxNQUFNLElBQUksVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUM5QixVQUFVLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztTQUMzQjthQUFNO1lBQ0gsTUFBTSxJQUFJLElBQUksQ0FBQztTQUNsQjtLQUNKO0lBRUQsT0FBTyxNQUFNLENBQUM7QUFDbEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q0hBUl9QTFVTfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcblxuLyoqXG4gKiBUT0RPOiBkZWxldGUgaW4gdjQuMFxuICogQGRlcHJlY2F0ZWQgVXNlIHtAbGluayBodHRwczovL21hc2tpdG8uZGV2L2NvcmUtY29uY2VwdHMvdHJhbnNmb3JtZXIgbWFza2l0b1RyYW5zZm9ybX0gaW5zdGVhZDxici8+XG4gKiBAZXhhbXBsZVxuICogaW1wb3J0IHttYXNraXRvVHJhbnNmb3JtfSBmcm9tICdAbWFza2l0by9jb3JlJztcbiAqXG4gKiBjb25zdCBtYXNrID0ge1xuICogICAgIG1hc2s6IFsnKycsICcxJywgJyAnLCAvXFxkLywgL1xcZC8sIC9cXGQvLCAnKScsICcgJywgL1xcZC8sIC9cXGQvLCAvXFxkLywgJy0nLCAvXFxkLywgL1xcZC8sIC9cXGQvLCAvXFxkL10sXG4gKiB9O1xuICogbWFza2l0b1RyYW5zZm9ybSgnMTIxMjU1NTIzNjgnLCBtYXNrKTsgLy8gKzEgKDIxMikgNTU1LTIzNjhcbiAqIF9fX1xuICogRm9ybWF0cyBhIHN0cmluZyB3aXRoIHRoZSBwaG9uZSBmb3JtYXQgKzdYWFhYWFhYWFhYWFggb3IgWFhYWFhYWFhYWFhYLFxuICogYWRkaW5nIHBhcmVudGhlc2VzIGFuZCBoeXBoZW5zLlxuICpcbiAqIEBwYXJhbSB2YWx1ZSB0aGUgaW5wdXQgc3RyaW5nXG4gKiBAcGFyYW0gY291bnRyeUNvZGUgYSBjb3VudHJ5IGNvZGVcbiAqIEBwYXJhbSBwaG9uZU1hc2sgYSBwaG9uZSBudW1iZXIgbWFza1xuICogQHJldHVybiB0aGUgZm9ybWF0dGVkIHBob25lIHN0cmluZyBvZiB0aGUgZm9ybSArNyBYWFggWFhYLVhYLVhYXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0dWlGb3JtYXRQaG9uZShcbiAgICB2YWx1ZTogc3RyaW5nLFxuICAgIGNvdW50cnlDb2RlOiBzdHJpbmcsXG4gICAgcGhvbmVNYXNrOiBzdHJpbmcsXG4pOiBzdHJpbmcge1xuICAgIGlmICghdmFsdWUpIHtcbiAgICAgICAgcmV0dXJuIGBgO1xuICAgIH1cblxuICAgIGxldCByZXN1bHQgPSBjb3VudHJ5Q29kZTtcblxuICAgIGNvdW50cnlDb2RlID0gY291bnRyeUNvZGUucmVwbGFjZSgvWygpXS9nLCBgYCk7XG5cbiAgICBpZiAoIXZhbHVlLnN0YXJ0c1dpdGgoY291bnRyeUNvZGUpKSB7XG4gICAgICAgIHZhbHVlID0gY291bnRyeUNvZGUgKyB2YWx1ZS5yZXBsYWNlKENIQVJfUExVUywgYGApO1xuICAgIH1cblxuICAgIGNvbnN0IHNwbGl0UGhvbmVNYXNrID0gcGhvbmVNYXNrLnNwbGl0KGBgKTtcbiAgICBjb25zdCBzcGxpdFZhbHVlID0gdmFsdWUuc2xpY2UoY291bnRyeUNvZGUubGVuZ3RoKS5zcGxpdChgYCk7XG5cbiAgICByZXN1bHQgKz0gYCBgO1xuXG4gICAgaWYgKHNwbGl0VmFsdWUubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuXG4gICAgZm9yIChjb25zdCBtYXNrIG9mIHNwbGl0UGhvbmVNYXNrKSB7XG4gICAgICAgIGlmIChzcGxpdFZhbHVlLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAobWFzayA9PT0gYCNgKSB7XG4gICAgICAgICAgICByZXN1bHQgKz0gc3BsaXRWYWx1ZVswXSB8fCBgYDtcbiAgICAgICAgICAgIHNwbGl0VmFsdWUuc3BsaWNlKDAsIDEpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmVzdWx0ICs9IG1hc2s7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gcmVzdWx0O1xufVxuIl19
@@ -1,9 +1,16 @@
1
1
  import { tuiIsNumber } from '@taiga-ui/cdk';
2
2
  import { tuiNumberToStringWithoutExp } from './number-to-string-without-exp';
3
+ /**
4
+ * Return fractional part of number
5
+ *
6
+ * @param value the number
7
+ * @param precision number of digits of decimal part, null to keep untouched
8
+ * @return the fractional part of number
9
+ */
3
10
  export function tuiGetFractionPartPadded(value, precision) {
4
11
  const [, fractionPartPadded = ``] = tuiNumberToStringWithoutExp(value).split(`.`);
5
12
  return tuiIsNumber(precision)
6
13
  ? fractionPartPadded.slice(0, Math.max(0, precision))
7
14
  : fractionPartPadded;
8
15
  }
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWZyYWN0aW9uYWwtcGFydC1wYWRkZWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3V0aWxzL2Zvcm1hdC9nZXQtZnJhY3Rpb25hbC1wYXJ0LXBhZGRlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRTFDLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBUzNFLE1BQU0sVUFBVSx3QkFBd0IsQ0FDcEMsS0FBYSxFQUNiLFNBQXlCO0lBRXpCLE1BQU0sQ0FBQyxFQUFFLGtCQUFrQixHQUFHLEVBQUUsQ0FBQyxHQUFHLDJCQUEyQixDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUVsRixPQUFPLFdBQVcsQ0FBQyxTQUFTLENBQUM7UUFDekIsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDckQsQ0FBQyxDQUFDLGtCQUFrQixDQUFDO0FBQzdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge3R1aUlzTnVtYmVyfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcblxuaW1wb3J0IHt0dWlOdW1iZXJUb1N0cmluZ1dpdGhvdXRFeHB9IGZyb20gJy4vbnVtYmVyLXRvLXN0cmluZy13aXRob3V0LWV4cCc7XG5cbi8qKlxuICogUmV0dXJuIGZyYWN0aW9uYWwgcGFydCBvZiBudW1iZXJcbiAqXG4gKiBAcGFyYW0gdmFsdWUgdGhlIG51bWJlclxuICogQHBhcmFtIHByZWNpc2lvbiBudW1iZXIgb2YgZGlnaXRzIG9mIGRlY2ltYWwgcGFydCwgbnVsbCB0byBrZWVwIHVudG91Y2hlZFxuICogQHJldHVybiB0aGUgZnJhY3Rpb25hbCBwYXJ0IG9mIG51bWJlclxuICovXG5leHBvcnQgZnVuY3Rpb24gdHVpR2V0RnJhY3Rpb25QYXJ0UGFkZGVkKFxuICAgIHZhbHVlOiBudW1iZXIsXG4gICAgcHJlY2lzaW9uPzogbnVtYmVyIHwgbnVsbCxcbik6IHN0cmluZyB7XG4gICAgY29uc3QgWywgZnJhY3Rpb25QYXJ0UGFkZGVkID0gYGBdID0gdHVpTnVtYmVyVG9TdHJpbmdXaXRob3V0RXhwKHZhbHVlKS5zcGxpdChgLmApO1xuXG4gICAgcmV0dXJuIHR1aUlzTnVtYmVyKHByZWNpc2lvbilcbiAgICAgICAgPyBmcmFjdGlvblBhcnRQYWRkZWQuc2xpY2UoMCwgTWF0aC5tYXgoMCwgcHJlY2lzaW9uKSlcbiAgICAgICAgOiBmcmFjdGlvblBhcnRQYWRkZWQ7XG59XG4iXX0=
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0LWZyYWN0aW9uYWwtcGFydC1wYWRkZWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3V0aWxzL2Zvcm1hdC9nZXQtZnJhY3Rpb25hbC1wYXJ0LXBhZGRlZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRTFDLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLGdDQUFnQyxDQUFDO0FBRTNFOzs7Ozs7R0FNRztBQUNILE1BQU0sVUFBVSx3QkFBd0IsQ0FDcEMsS0FBYSxFQUNiLFNBQXlCO0lBRXpCLE1BQU0sQ0FBQyxFQUFFLGtCQUFrQixHQUFHLEVBQUUsQ0FBQyxHQUFHLDJCQUEyQixDQUFDLEtBQUssQ0FBQyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUVsRixPQUFPLFdBQVcsQ0FBQyxTQUFTLENBQUM7UUFDekIsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDckQsQ0FBQyxDQUFDLGtCQUFrQixDQUFDO0FBQzdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge3R1aUlzTnVtYmVyfSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcblxuaW1wb3J0IHt0dWlOdW1iZXJUb1N0cmluZ1dpdGhvdXRFeHB9IGZyb20gJy4vbnVtYmVyLXRvLXN0cmluZy13aXRob3V0LWV4cCc7XG5cbi8qKlxuICogUmV0dXJuIGZyYWN0aW9uYWwgcGFydCBvZiBudW1iZXJcbiAqXG4gKiBAcGFyYW0gdmFsdWUgdGhlIG51bWJlclxuICogQHBhcmFtIHByZWNpc2lvbiBudW1iZXIgb2YgZGlnaXRzIG9mIGRlY2ltYWwgcGFydCwgbnVsbCB0byBrZWVwIHVudG91Y2hlZFxuICogQHJldHVybiB0aGUgZnJhY3Rpb25hbCBwYXJ0IG9mIG51bWJlclxuICovXG5leHBvcnQgZnVuY3Rpb24gdHVpR2V0RnJhY3Rpb25QYXJ0UGFkZGVkKFxuICAgIHZhbHVlOiBudW1iZXIsXG4gICAgcHJlY2lzaW9uPzogbnVtYmVyIHwgbnVsbCxcbik6IHN0cmluZyB7XG4gICAgY29uc3QgWywgZnJhY3Rpb25QYXJ0UGFkZGVkID0gYGBdID0gdHVpTnVtYmVyVG9TdHJpbmdXaXRob3V0RXhwKHZhbHVlKS5zcGxpdChgLmApO1xuXG4gICAgcmV0dXJuIHR1aUlzTnVtYmVyKHByZWNpc2lvbilcbiAgICAgICAgPyBmcmFjdGlvblBhcnRQYWRkZWQuc2xpY2UoMCwgTWF0aC5tYXgoMCwgcHJlY2lzaW9uKSlcbiAgICAgICAgOiBmcmFjdGlvblBhcnRQYWRkZWQ7XG59XG4iXX0=
@@ -1,3 +1,9 @@
1
+ /**
2
+ * Convert number to string with replacing exponent part on decimals
3
+ *
4
+ * @param value the number
5
+ * @return string representation of a number
6
+ */
1
7
  export function tuiNumberToStringWithoutExp(value) {
2
8
  const valueAsString = String(value);
3
9
  const [numberPart, expPart] = valueAsString.split(`e-`);
@@ -9,4 +15,4 @@ export function tuiNumberToStringWithoutExp(value) {
9
15
  }
10
16
  return valueWithoutExp;
11
17
  }
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLXRvLXN0cmluZy13aXRob3V0LWV4cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvdXRpbHMvZm9ybWF0L251bWJlci10by1zdHJpbmctd2l0aG91dC1leHAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsTUFBTSxVQUFVLDJCQUEyQixDQUFDLEtBQWE7SUFDckQsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3BDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLEdBQUcsYUFBYSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUV4RCxJQUFJLGVBQWUsR0FBRyxhQUFhLENBQUM7SUFFcEMsSUFBSSxPQUFPLEVBQUU7UUFDVCxNQUFNLENBQUMsRUFBRSxjQUFjLENBQUMsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2pELE1BQU0sYUFBYSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUEsY0FBYyxhQUFkLGNBQWMsdUJBQWQsY0FBYyxDQUFFLE1BQU0sS0FBSSxDQUFDLENBQUMsQ0FBQztRQUV0RSxlQUFlLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQztLQUNsRDtJQUVELE9BQU8sZUFBZSxDQUFDO0FBQzNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvbnZlcnQgbnVtYmVyIHRvIHN0cmluZyB3aXRoIHJlcGxhY2luZyBleHBvbmVudCBwYXJ0IG9uIGRlY2ltYWxzXG4gKlxuICogQHBhcmFtIHZhbHVlIHRoZSBudW1iZXJcbiAqIEByZXR1cm4gc3RyaW5nIHJlcHJlc2VudGF0aW9uIG9mIGEgbnVtYmVyXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0dWlOdW1iZXJUb1N0cmluZ1dpdGhvdXRFeHAodmFsdWU6IG51bWJlcik6IHN0cmluZyB7XG4gICAgY29uc3QgdmFsdWVBc1N0cmluZyA9IFN0cmluZyh2YWx1ZSk7XG4gICAgY29uc3QgW251bWJlclBhcnQsIGV4cFBhcnRdID0gdmFsdWVBc1N0cmluZy5zcGxpdChgZS1gKTtcblxuICAgIGxldCB2YWx1ZVdpdGhvdXRFeHAgPSB2YWx1ZUFzU3RyaW5nO1xuXG4gICAgaWYgKGV4cFBhcnQpIHtcbiAgICAgICAgY29uc3QgWywgZnJhY3Rpb25hbFBhcnRdID0gbnVtYmVyUGFydC5zcGxpdChgLmApO1xuICAgICAgICBjb25zdCBkZWNpbWFsRGlnaXRzID0gTnVtYmVyKGV4cFBhcnQpICsgKGZyYWN0aW9uYWxQYXJ0Py5sZW5ndGggfHwgMCk7XG5cbiAgICAgICAgdmFsdWVXaXRob3V0RXhwID0gdmFsdWUudG9GaXhlZChkZWNpbWFsRGlnaXRzKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdmFsdWVXaXRob3V0RXhwO1xufVxuIl19
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLXRvLXN0cmluZy13aXRob3V0LWV4cC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvdXRpbHMvZm9ybWF0L251bWJlci10by1zdHJpbmctd2l0aG91dC1leHAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsMkJBQTJCLENBQUMsS0FBYTtJQUNyRCxNQUFNLGFBQWEsR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEMsTUFBTSxDQUFDLFVBQVUsRUFBRSxPQUFPLENBQUMsR0FBRyxhQUFhLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBRXhELElBQUksZUFBZSxHQUFHLGFBQWEsQ0FBQztJQUVwQyxJQUFJLE9BQU8sRUFBRTtRQUNULE1BQU0sQ0FBQyxFQUFFLGNBQWMsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDakQsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQSxjQUFjLGFBQWQsY0FBYyx1QkFBZCxjQUFjLENBQUUsTUFBTSxLQUFJLENBQUMsQ0FBQyxDQUFDO1FBRXRFLGVBQWUsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO0tBQ2xEO0lBRUQsT0FBTyxlQUFlLENBQUM7QUFDM0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ29udmVydCBudW1iZXIgdG8gc3RyaW5nIHdpdGggcmVwbGFjaW5nIGV4cG9uZW50IHBhcnQgb24gZGVjaW1hbHNcbiAqXG4gKiBAcGFyYW0gdmFsdWUgdGhlIG51bWJlclxuICogQHJldHVybiBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgYSBudW1iZXJcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHR1aU51bWJlclRvU3RyaW5nV2l0aG91dEV4cCh2YWx1ZTogbnVtYmVyKTogc3RyaW5nIHtcbiAgICBjb25zdCB2YWx1ZUFzU3RyaW5nID0gU3RyaW5nKHZhbHVlKTtcbiAgICBjb25zdCBbbnVtYmVyUGFydCwgZXhwUGFydF0gPSB2YWx1ZUFzU3RyaW5nLnNwbGl0KGBlLWApO1xuXG4gICAgbGV0IHZhbHVlV2l0aG91dEV4cCA9IHZhbHVlQXNTdHJpbmc7XG5cbiAgICBpZiAoZXhwUGFydCkge1xuICAgICAgICBjb25zdCBbLCBmcmFjdGlvbmFsUGFydF0gPSBudW1iZXJQYXJ0LnNwbGl0KGAuYCk7XG4gICAgICAgIGNvbnN0IGRlY2ltYWxEaWdpdHMgPSBOdW1iZXIoZXhwUGFydCkgKyAoZnJhY3Rpb25hbFBhcnQ/Lmxlbmd0aCB8fCAwKTtcblxuICAgICAgICB2YWx1ZVdpdGhvdXRFeHAgPSB2YWx1ZS50b0ZpeGVkKGRlY2ltYWxEaWdpdHMpO1xuICAgIH1cblxuICAgIHJldHVybiB2YWx1ZVdpdGhvdXRFeHA7XG59XG4iXX0=
@@ -1,2 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
1
4
  export * from './index';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWktY29yZS11dGlscy1mb3JtYXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3V0aWxzL2Zvcm1hdC90YWlnYS11aS1jb3JlLXV0aWxzLWZvcm1hdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0=
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFpZ2EtdWktY29yZS11dGlscy1mb3JtYXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3V0aWxzL2Zvcm1hdC90YWlnYS11aS1jb3JlLXV0aWxzLWZvcm1hdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
@@ -1,6 +1,12 @@
1
1
  import { CHAR_HYPHEN, CHAR_NO_BREAK_SPACE, tuiAssert, tuiGetDocumentOrShadowRoot, tuiIsNativeFocused, tuiIsSafari, } from '@taiga-ui/cdk';
2
+ /**
3
+ * TODO: delete in v4.0
4
+ * @deprecated Use {@link https://maskito.dev/kit/number Number} from {@link https://github.com/taiga-family/maskito Maskito} instead <br/>
5
+ * Used to finish a number with zeros to a given precision
6
+ */
2
7
  export function tuiCreateAutoCorrectedNumberPipe(decimalLimit = 0, decimalSymbol = `,`, thousandSymbol = CHAR_NO_BREAK_SPACE, nativeInput, allowNegative, isIOS = false) {
3
8
  ngDevMode && tuiAssert.assert(decimalLimit >= 0);
9
+ // Guess for which browser I need this :)
4
10
  let previousCaret = -1;
5
11
  const unlucky = (!!nativeInput && tuiIsSafari(nativeInput)) || isIOS;
6
12
  if (nativeInput && unlucky) {
@@ -9,9 +15,11 @@ export function tuiCreateAutoCorrectedNumberPipe(decimalLimit = 0, decimalSymbol
9
15
  });
10
16
  }
11
17
  return (conformedValue, config) => {
18
+ // Removing everything by selecting and pressing '-'
12
19
  if (!conformedValue && config.rawValue === CHAR_HYPHEN && allowNegative) {
13
20
  return CHAR_HYPHEN;
14
21
  }
22
+ // remove these hacks after text mask library has changed
15
23
  if (nativeInput && unlucky && tuiIsNativeFocused(nativeInput)) {
16
24
  const caret = calculateSafariCaret(config.previousConformedValue, conformedValue, previousCaret);
17
25
  setTimeout(() => {
@@ -81,4 +89,4 @@ function calculateCaretGap(previousValue = ``, current, thousandSymbol) {
81
89
  const nowSpaces = current.split(thousandSymbol).length;
82
90
  return nowSpaces - wereSpaces;
83
91
  }
84
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWF1dG8tY29ycmVjdGVkLW1vbmV5LXBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3V0aWxzL21hc2svY3JlYXRlLWF1dG8tY29ycmVjdGVkLW1vbmV5LXBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFdBQVcsRUFDWCxtQkFBbUIsRUFDbkIsU0FBUyxFQUNULDBCQUEwQixFQUMxQixrQkFBa0IsRUFDbEIsV0FBVyxHQUNkLE1BQU0sZUFBZSxDQUFDO0FBU3ZCLE1BQU0sVUFBVSxnQ0FBZ0MsQ0FDNUMsZUFBdUIsQ0FBQyxFQUN4QixnQkFBa0MsR0FBRyxFQUNyQyxpQkFBeUIsbUJBQW1CLEVBQzVDLFdBQXFDLEVBQ3JDLGFBQXVCLEVBQ3ZCLEtBQUssR0FBRyxLQUFLO0lBRWIsU0FBUyxJQUFJLFNBQVMsQ0FBQyxNQUFNLENBQUMsWUFBWSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBR2pELElBQUksYUFBYSxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3ZCLE1BQU0sT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLFdBQVcsSUFBSSxXQUFXLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxLQUFLLENBQUM7SUFFckUsSUFBSSxXQUFXLElBQUksT0FBTyxFQUFFO1FBQ3hCLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLEVBQUUsR0FBRyxFQUFFO1lBQzdDLGFBQWEsR0FBRyxXQUFXLENBQUMsY0FBYyxJQUFJLENBQUMsQ0FBQztRQUNwRCxDQUFDLENBQUMsQ0FBQztLQUNOO0lBRUQsT0FBTyxDQUFDLGNBQWMsRUFBRSxNQUFNLEVBQUUsRUFBRTtRQUU5QixJQUFJLENBQUMsY0FBYyxJQUFJLE1BQU0sQ0FBQyxRQUFRLEtBQUssV0FBVyxJQUFJLGFBQWEsRUFBRTtZQUNyRSxPQUFPLFdBQVcsQ0FBQztTQUN0QjtRQUdELElBQUksV0FBVyxJQUFJLE9BQU8s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LCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENIQVJfSFlQSEVOLFxuICAgIENIQVJfTk9fQlJFQUtfU1BBQ0UsXG4gICAgdHVpQXNzZXJ0LFxuICAgIHR1aUdldERvY3VtZW50T3JTaGFkb3dSb290LFxuICAgIHR1aUlzTmF0aXZlRm9jdXNlZCxcbiAgICB0dWlJc1NhZmFyaSxcbn0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1R1aVRleHRNYXNrUGlwZUhhbmRsZXJ9IGZyb20gJ0B0YWlnYS11aS9jb3JlL21hc2snO1xuaW1wb3J0IHtUdWlEZWNpbWFsU3ltYm9sfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90eXBlcyc7XG5cbi8qKlxuICogVE9ETzogZGVsZXRlIGluIHY0LjBcbiAqIEBkZXByZWNhdGVkIFVzZSB7QGxpbmsgaHR0cHM6Ly9tYXNraXRvLmRldi9raXQvbnVtYmVyIE51bWJlcn0gZnJvbSB7QGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3RhaWdhLWZhbWlseS9tYXNraXRvIE1hc2tpdG99IGluc3RlYWQgPGJyLz5cbiAqIFVzZWQgdG8gZmluaXNoIGEgbnVtYmVyIHdpdGggemVyb3MgdG8gYSBnaXZlbiBwcmVjaXNpb25cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHR1aUNyZWF0ZUF1dG9Db3JyZWN0ZWROdW1iZXJQaXBlKFxuICAgIGRlY2ltYWxMaW1pdDogbnVtYmVyID0gMCxcbiAgICBkZWNpbWFsU3ltYm9sOiBUdWlEZWNpbWFsU3ltYm9sID0gYCxgLFxuICAgIHRob3VzYW5kU3ltYm9sOiBzdHJpbmcgPSBDSEFSX05PX0JSRUFLX1NQQUNFLFxuICAgIG5hdGl2ZUlucHV0PzogSFRNTElucHV0RWxlbWVudCB8IG51bGwsXG4gICAgYWxsb3dOZWdhdGl2ZT86IGJvb2xlYW4sXG4gICAgaXNJT1MgPSBmYWxzZSxcbik6IFR1aVRleHRNYXNrUGlwZUhhbmRsZXIge1xuICAgIG5nRGV2TW9kZSAmJiB0dWlBc3NlcnQuYXNzZXJ0KGRlY2ltYWxMaW1pdCA+PSAwKTtcblxuICAgIC8vIEd1ZXNzIGZvciB3aGljaCBicm93c2VyIEkgbmVlZCB0aGlzIDopXG4gICAgbGV0IHByZXZpb3VzQ2FyZXQgPSAtMTtcbiAgICBjb25zdCB1bmx1Y2t5ID0gKCEhbmF0aXZlSW5wdXQgJiYgdHVpSXNTYWZhcmkobmF0aXZlSW5wdXQpKSB8fCBpc0lPUztcblxuICAgIGlmIChuYXRpdmVJbnB1dCAmJiB1bmx1Y2t5KSB7XG4gICAgICAgIG5hdGl2ZUlucHV0LmFkZEV2ZW50TGlzdGVuZXIoYGJlZm9yZWlucHV0YCwgKCkgPT4ge1xuICAgICAgICAgICAgcHJldmlvdXNDYXJldCA9IG5hdGl2ZUlucHV0LnNlbGVjdGlvblN0YXJ0IHx8IDA7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHJldHVybiAoY29uZm9ybWVkVmFsdWUsIGNvbmZpZykgPT4ge1xuICAgICAgICAvLyBSZW1vdmluZyBldmVyeXRoaW5nIGJ5IHNlbGVjdGluZyBhbmQgcHJlc3NpbmcgJy0nXG4gICAgICAgIGlmICghY29uZm9ybWVkVmFsdWUgJiYgY29uZmlnLnJhd1ZhbHVlID09PSBDSEFSX0hZUEhFTiAmJiBhbGxvd05lZ2F0aXZlKSB7XG4gICAgICAgICAgICByZXR1cm4gQ0hBUl9IWVBIRU47XG4gICAgICAgIH1cblxuICAgICAgICAvLyByZW1vdmUgdGhlc2UgaGFja3MgYWZ0ZXIgdGV4dCBtYXNrIGxpYnJhcnkgaGFzIGNoYW5nZWRcbiAgICAgICAgaWYgKG5hdGl2ZUlucHV0ICYmIHVubHVja3kgJiYgdHVpSXNOYXRpdmVGb2N1c2VkKG5hdGl2ZUlucHV0KSkge1xuICAgICAgICAgICAgY29uc3QgY2FyZXQgPSBjYWxjdWxhdGVTYWZhcmlDYXJldChcbiAgICAgICAgICAgICAgICBjb25maWcucHJldmlvdXNDb25mb3JtZWRWYWx1ZSxcbiAgICAgICAgICAgICAgICBjb25mb3JtZWRWYWx1ZSxcbiAgICAgICAgICAgICAgICBwcmV2aW91c0NhcmV0LFxuICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgbmF0aXZlSW5wdXQuc2V0U2VsZWN0aW9uUmFuZ2UoY2FyZXQsIGNhcmV0KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgbmF0aXZlSW5wdXQgJiZcbiAgICAgICAgICAgIG5hdGl2ZUlucHV0Lm93bmVyRG9jdW1lbnQgIT09IHR1aUdldERvY3VtZW50T3JTaGFkb3dSb290KG5hdGl2ZUlucHV0KSAmJlxuICAgICAgICAgICAgdHVpSXNOYXRpdmVGb2N1c2VkKG5hdGl2ZUlucHV0KSAmJlxuICAgICAgICAgICAgY29uZmlnLmN1cnJlbnRDYXJldFBvc2l0aW9uXG4gICAgICAgICkge1xuICAgICAgICAgICAgY29uc3QgcmVhbENhcmV0UG9zaXRpb24gPVxuICAgICAgICAgICAgICAgIGNvbmZpZy5jdXJyZW50Q2FyZXRQb3NpdGlvbiArXG4gICAgICAgICAgICAgICAgY2FsY3VsYXRlQ2FyZXRHYXAoXG4gICAgICAgICAgICAgICAgICAgIGNvbmZpZy5wcmV2aW91c0NvbmZvcm1lZFZhbHVlLFxuICAgICAgICAgICAgICAgICAgICBjb25mb3JtZWRWYWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgdGhvdXNhbmRTeW1ib2wsXG4gICAgICAgICAgICAgICAgKTtcblxuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgbmF0aXZlSW5wdXQuc2V0U2VsZWN0aW9uUmFuZ2UocmVhbENhcmV0UG9zaXRpb24sIHJlYWxDYXJldFBvc2l0aW9uKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGNvbmZvcm1lZFZhbHVlID09PSBgYCB8fCAhZGVjaW1hbExpbWl0IHx8ICFOdW1iZXIuaXNJbnRlZ2VyKGRlY2ltYWxMaW1pdCkpIHtcbiAgICAgICAgICAgIHJldHVybiB7dmFsdWU6IGNvbmZvcm1lZFZhbHVlfTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHdpdGhEZWNpbWFsU3ltYm9sID0gYWRkRGVjaW1hbFN5bWJvbElmTmVlZGVkKGNvbmZvcm1lZFZhbHVlLCBkZWNpbWFsU3ltYm9sKTtcbiAgICAgICAgY29uc3QgZGVjaW1hbFBhcnQgPSB3aXRoRGVjaW1hbFN5bWJvbC5zcGxpdChkZWNpbWFsU3ltYm9sKVsxXTtcbiAgICAgICAgY29uc3QgemVyb1BhZGRpbmdTaXplID0gZGVjaW1hbExpbWl0IC0gZGVjaW1hbFBhcnQubGVuZ3RoO1xuXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICB2YWx1ZTogd2l0aERlY2ltYWxTeW1ib2wgKyBgMGAucmVwZWF0KHplcm9QYWRkaW5nU2l6ZSksXG4gICAgICAgIH07XG4gICAgfTtcbn1cblxuZnVuY3Rpb24gYWRkRGVjaW1hbFN5bWJvbElmTmVlZGVkKFxuICAgIHZhbHVlOiBzdHJpbmcsXG4gICAgZGVjaW1hbFN5bWJvbDogVHVpRGVjaW1hbFN5bWJvbCA9IGAsYCxcbik6IHN0cmluZyB7XG4gICAgcmV0dXJuICF2YWx1ZS5pbmNsdWRlcyhkZWNpbWFsU3ltYm9sKSA/IHZhbHVlICsgZGVjaW1hbFN5bWJvbCA6IHZhbHVlO1xufVxuXG5mdW5jdGlvbiBjYWxjdWxhdGVTYWZhcmlDYXJldChcbiAgICBwcmV2aW91c1ZhbHVlOiBzdHJpbmcgPSBgYCxcbiAgICBjdXJyZW50OiBzdHJpbmcsXG4gICAgcHJldmlvdXNDYXJldDogbnVtYmVyLFxuICAgIGRlY2ltYWxTeW1ib2w6IHN0cmluZyA9IGAsYCxcbik6IG51bWJlciB7XG4gICAgY29uc3QgdGFpbFJlZ2V4ID0gbmV3IFJlZ0V4cChgJHtkZWNpbWFsU3ltYm9sfS4rYCk7XG4gICAgY29uc3QgcHJldmlvdXNXaXRob3V0VGFpbCA9IHByZXZpb3VzVmFsdWUucmVwbGFjZSh0YWlsUmVnZXgsIGBgKTtcbiAgICBjb25zdCBjdXJyZW50V2l0aG91dFRhaWwgPSBjdXJyZW50LnJlcGxhY2UodGFpbFJlZ2V4LCBgYCk7XG5cbiAgICBjb25zdCBwYXN0ZU9yQ3V0T3BlcmF0aW9uID1cbiAgICAgICAgTWF0aC5hYnMocHJldmlvdXNXaXRob3V0VGFpbC5sZW5ndGggLSBjdXJyZW50V2l0aG91dFRhaWwubGVuZ3RoKSA+IDI7XG5cbiAgICBpZiAocGFzdGVPckN1dE9wZXJhdGlvbikge1xuICAgICAgICByZXR1cm4gY3VycmVudC5sZW5ndGg7XG4gICAgfVxuXG4gICAgaWYgKHByZXZpb3VzVmFsdWUubGVuZ3RoID09PSBjdXJyZW50Lmxlbmd0aCkge1xuICAgICAgICBpZiAocHJldmlvdXNWYWx1ZS5pbmRleE9mKGRlY2ltYWxTeW1ib2wpIDw9IHByZXZpb3VzQ2FyZXQpIHtcbiAgICAgICAgICAgIHJldHVybiBjYWxjdWxhdGVDaGFuZ2VkVGFpbEluZGV4KHByZXZpb3VzVmFsdWUsIGN1cnJlbnQpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHByZXZpb3VzV2l0aG91dFRhaWwgPT09IGN1cnJlbnRXaXRob3V0VGFpbFxuICAgICAgICAgICAgPyBwcmV2aW91c0NhcmV0IC0gMVxuICAgICAgICAgICAgOiBwcmV2aW91c0NhcmV0ICsgMTtcbiAgICB9XG5cbiAgICBpZiAocHJldmlvdXNWYWx1ZS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgcmV0dXJuIDE7XG4gICAgfVxuXG4gICAgY29uc3QgY2hhbmdlTGVuZ3RoID0gY3VycmVudC5sZW5ndGggLSBwcmV2aW91c1ZhbHVlLmxlbmd0aDtcblxuICAgIHJldHVybiBwcmV2aW91c0NhcmV0ICsgY2hhbmdlTGVuZ3RoO1xufVxuXG5mdW5jdGlvbiBjYWxjdWxhdGVDaGFuZ2VkVGFpbEluZGV4KHByZXZpb3VzOiBzdHJpbmcsIGN1cnJlbnQ6IHN0cmluZyk6IG51bWJlciB7XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjdXJyZW50Lmxlbmd0aDsgaSsrKSB7XG4gICAgICAgIGlmIChwcmV2aW91c1tpXSAhPT0gY3VycmVudFtpXSkge1xuICAgICAgICAgICAgcmV0dXJuIGN1cnJlbnRbaV0gPT09IGAwYCA/IGkgOiBpICsgMTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBjdXJyZW50Lmxlbmd0aDtcbn1cblxuZnVuY3Rpb24gY2FsY3VsYXRlQ2FyZXRHYXAoXG4gICAgcHJldmlvdXNWYWx1ZTogc3RyaW5nID0gYGAsXG4gICAgY3VycmVudDogc3RyaW5nLFxuICAgIHRob3VzYW5kU3ltYm9sOiBzdHJpbmcsXG4pOiBudW1iZXIge1xuICAgIGNvbnN0IHBhc3RlT3JDdXRPcGVyYXRpb24gPSBNYXRoLmFicyhwcmV2aW91c1ZhbHVlLmxlbmd0aCAtIGN1cnJlbnQubGVuZ3RoKSA+IDI7XG5cbiAgICBpZiAocGFzdGVPckN1dE9wZXJhdGlvbikge1xuICAgICAgICByZXR1cm4gMDtcbiAgICB9XG5cbiAgICBjb25zdCB3ZXJlU3BhY2VzID0gcHJldmlvdXNWYWx1ZS5zcGxpdCh0aG91c2FuZFN5bWJvbCkubGVuZ3RoO1xuICAgIGNvbnN0IG5vd1NwYWNlcyA9IGN1cnJlbnQuc3BsaXQodGhvdXNhbmRTeW1ib2wpLmxlbmd0aDtcblxuICAgIHJldHVybiBub3dTcGFjZXMgLSB3ZXJlU3BhY2VzO1xufVxuIl19
92
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWF1dG8tY29ycmVjdGVkLW1vbmV5LXBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3V0aWxzL21hc2svY3JlYXRlLWF1dG8tY29ycmVjdGVkLW1vbmV5LXBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFdBQVcsRUFDWCxtQkFBbUIsRUFDbkIsU0FBUyxFQUNULDBCQUEwQixFQUMxQixrQkFBa0IsRUFDbEIsV0FBVyxHQUNkLE1BQU0sZUFBZSxDQUFDO0FBSXZCOzs7O0dBSUc7QUFDSCxNQUFNLFVBQVUsZ0NBQWdDLENBQzVDLGVBQXVCLENBQUMsRUFDeEIsZ0JBQWtDLEdBQUcsRUFDckMsaUJBQXlCLG1CQUFtQixFQUM1QyxXQUFxQyxFQUNyQyxhQUF1QixFQUN2QixLQUFLLEdBQUcsS0FBSztJQUViLFNBQVMsSUFBSSxTQUFTLENBQUMsTUFBTSxDQUFDLFlBQVksSUFBSSxDQUFDLENBQUMsQ0FBQztJQUVqRCx5Q0FBeUM7SUFDekMsSUFBSSxhQUFhLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDdkIsTUFBTSxPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUMsV0FBVyxJQUFJLFdBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxJQUFJLEtBQUssQ0FBQztJQUVyRSxJQUFJLFdBQVcsSUFBSSxPQUFPLEVBQUU7UUFDeEIsV0FBVyxDQUFDLGdCQUFnQixDQUFDLGFBQWEsRUFBRSxHQUFHLEVBQUU7WUFDN0MsYUFBYSxHQUFHLFdBQVcsQ0FBQyxjQUFjLElBQUksQ0FBQyxDQUFDO1FBQ3BELENBQUMsQ0FBQyxDQUFDO0tBQ047SUFFRCxPQUFPLENBQUMsY0FBYyxFQUFFLE1BQU0sRUFBRSxFQUFFO1FBQzlCLG9EQUFvRDtRQUNwRCxJQUFJLENBQUMsY0FBYyxJQUFJLE1BQU0sQ0FBQyxRQUFRLEtBQUssV0FBVyxJQUFJLGFBQWEsRUFBRTtZQUNyRSxPQUFPLFdB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TUFBTSxDQUFDO0lBRXZELE9BQU8sU0FBUyxHQUFHLFVBQVUsQ0FBQztBQUNsQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDSEFSX0hZUEhFTixcbiAgICBDSEFSX05PX0JSRUFLX1NQQUNFLFxuICAgIHR1aUFzc2VydCxcbiAgICB0dWlHZXREb2N1bWVudE9yU2hhZG93Um9vdCxcbiAgICB0dWlJc05hdGl2ZUZvY3VzZWQsXG4gICAgdHVpSXNTYWZhcmksXG59IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtUdWlUZXh0TWFza1BpcGVIYW5kbGVyfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9tYXNrJztcbmltcG9ydCB7VHVpRGVjaW1hbFN5bWJvbH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdHlwZXMnO1xuXG4vKipcbiAqIFRPRE86IGRlbGV0ZSBpbiB2NC4wXG4gKiBAZGVwcmVjYXRlZCBVc2Uge0BsaW5rIGh0dHBzOi8vbWFza2l0by5kZXYva2l0L251bWJlciBOdW1iZXJ9IGZyb20ge0BsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS90YWlnYS1mYW1pbHkvbWFza2l0byBNYXNraXRvfSBpbnN0ZWFkIDxici8+XG4gKiBVc2VkIHRvIGZpbmlzaCBhIG51bWJlciB3aXRoIHplcm9zIHRvIGEgZ2l2ZW4gcHJlY2lzaW9uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0dWlDcmVhdGVBdXRvQ29ycmVjdGVkTnVtYmVyUGlwZShcbiAgICBkZWNpbWFsTGltaXQ6IG51bWJlciA9IDAsXG4gICAgZGVjaW1hbFN5bWJvbDogVHVpRGVjaW1hbFN5bWJvbCA9IGAsYCxcbiAgICB0aG91c2FuZFN5bWJvbDogc3RyaW5nID0gQ0hBUl9OT19CUkVBS19TUEFDRSxcbiAgICBuYXRpdmVJbnB1dD86IEhUTUxJbnB1dEVsZW1lbnQgfCBudWxsLFxuICAgIGFsbG93TmVnYXRpdmU/OiBib29sZWFuLFxuICAgIGlzSU9TID0gZmFsc2UsXG4pOiBUdWlUZXh0TWFza1BpcGVIYW5kbGVyIHtcbiAgICBuZ0Rldk1vZGUgJiYgdHVpQXNzZXJ0LmFzc2VydChkZWNpbWFsTGltaXQgPj0gMCk7XG5cbiAgICAvLyBHdWVzcyBmb3Igd2hpY2ggYnJvd3NlciBJIG5lZWQgdGhpcyA6KVxuICAgIGxldCBwcmV2aW91c0NhcmV0ID0gLTE7XG4gICAgY29uc3QgdW5sdWNreSA9ICghIW5hdGl2ZUlucHV0ICYmIHR1aUlzU2FmYXJpKG5hdGl2ZUlucHV0KSkgfHwgaXNJT1M7XG5cbiAgICBpZiAobmF0aXZlSW5wdXQgJiYgdW5sdWNreSkge1xuICAgICAgICBuYXRpdmVJbnB1dC5hZGRFdmVudExpc3RlbmVyKGBiZWZvcmVpbnB1dGAsICgpID0+IHtcbiAgICAgICAgICAgIHByZXZpb3VzQ2FyZXQgPSBuYXRpdmVJbnB1dC5zZWxlY3Rpb25TdGFydCB8fCAwO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gKGNvbmZvcm1lZFZhbHVlLCBjb25maWcpID0+IHtcbiAgICAgICAgLy8gUmVtb3ZpbmcgZXZlcnl0aGluZyBieSBzZWxlY3RpbmcgYW5kIHByZXNzaW5nICctJ1xuICAgICAgICBpZiAoIWNvbmZvcm1lZFZhbHVlICYmIGNvbmZpZy5yYXdWYWx1ZSA9PT0gQ0hBUl9IWVBIRU4gJiYgYWxsb3dOZWdhdGl2ZSkge1xuICAgICAgICAgICAgcmV0dXJuIENIQVJfSFlQSEVOO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gcmVtb3ZlIHRoZXNlIGhhY2tzIGFmdGVyIHRleHQgbWFzayBsaWJyYXJ5IGhhcyBjaGFuZ2VkXG4gICAgICAgIGlmIChuYXRpdmVJbnB1dCAmJiB1bmx1Y2t5ICYmIHR1aUlzTmF0aXZlRm9jdXNlZChuYXRpdmVJbnB1dCkpIHtcbiAgICAgICAgICAgIGNvbnN0IGNhcmV0ID0gY2FsY3VsYXRlU2FmYXJpQ2FyZXQoXG4gICAgICAgICAgICAgICAgY29uZmlnLnByZXZpb3VzQ29uZm9ybWVkVmFsdWUsXG4gICAgICAgICAgICAgICAgY29uZm9ybWVkVmFsdWUsXG4gICAgICAgICAgICAgICAgcHJldmlvdXNDYXJldCxcbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIG5hdGl2ZUlucHV0LnNldFNlbGVjdGlvblJhbmdlKGNhcmV0LCBjYXJldCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIG5hdGl2ZUlucHV0ICYmXG4gICAgICAgICAgICBuYXRpdmVJbnB1dC5vd25lckRvY3VtZW50ICE9PSB0dWlHZXREb2N1bWVudE9yU2hhZG93Um9vdChuYXRpdmVJbnB1dCkgJiZcbiAgICAgICAgICAgIHR1aUlzTmF0aXZlRm9jdXNlZChuYXRpdmVJbnB1dCkgJiZcbiAgICAgICAgICAgIGNvbmZpZy5jdXJyZW50Q2FyZXRQb3NpdGlvblxuICAgICAgICApIHtcbiAgICAgICAgICAgIGNvbnN0IHJlYWxDYXJldFBvc2l0aW9uID1cbiAgICAgICAgICAgICAgICBjb25maWcuY3VycmVudENhcmV0UG9zaXRpb24gK1xuICAgICAgICAgICAgICAgIGNhbGN1bGF0ZUNhcmV0R2FwKFxuICAgICAgICAgICAgICAgICAgICBjb25maWcucHJldmlvdXNDb25mb3JtZWRWYWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgY29uZm9ybWVkVmFsdWUsXG4gICAgICAgICAgICAgICAgICAgIHRob3VzYW5kU3ltYm9sLFxuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIG5hdGl2ZUlucHV0LnNldFNlbGVjdGlvblJhbmdlKHJlYWxDYXJldFBvc2l0aW9uLCByZWFsQ2FyZXRQb3NpdGlvbik7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChjb25mb3JtZWRWYWx1ZSA9PT0gYGAgfHwgIWRlY2ltYWxMaW1pdCB8fCAhTnVtYmVyLmlzSW50ZWdlcihkZWNpbWFsTGltaXQpKSB7XG4gICAgICAgICAgICByZXR1cm4ge3ZhbHVlOiBjb25mb3JtZWRWYWx1ZX07XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB3aXRoRGVjaW1hbFN5bWJvbCA9IGFkZERlY2ltYWxTeW1ib2xJZk5lZWRlZChjb25mb3JtZWRWYWx1ZSwgZGVjaW1hbFN5bWJvbCk7XG4gICAgICAgIGNvbnN0IGRlY2ltYWxQYXJ0ID0gd2l0aERlY2ltYWxTeW1ib2wuc3BsaXQoZGVjaW1hbFN5bWJvbClbMV07XG4gICAgICAgIGNvbnN0IHplcm9QYWRkaW5nU2l6ZSA9IGRlY2ltYWxMaW1pdCAtIGRlY2ltYWxQYXJ0Lmxlbmd0aDtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgdmFsdWU6IHdpdGhEZWNpbWFsU3ltYm9sICsgYDBgLnJlcGVhdCh6ZXJvUGFkZGluZ1NpemUpLFxuICAgICAgICB9O1xuICAgIH07XG59XG5cbmZ1bmN0aW9uIGFkZERlY2ltYWxTeW1ib2xJZk5lZWRlZChcbiAgICB2YWx1ZTogc3RyaW5nLFxuICAgIGRlY2ltYWxTeW1ib2w6IFR1aURlY2ltYWxTeW1ib2wgPSBgLGAsXG4pOiBzdHJpbmcge1xuICAgIHJldHVybiAhdmFsdWUuaW5jbHVkZXMoZGVjaW1hbFN5bWJvbCkgPyB2YWx1ZSArIGRlY2ltYWxTeW1ib2wgOiB2YWx1ZTtcbn1cblxuZnVuY3Rpb24gY2FsY3VsYXRlU2FmYXJpQ2FyZXQoXG4gICAgcHJldmlvdXNWYWx1ZTogc3RyaW5nID0gYGAsXG4gICAgY3VycmVudDogc3RyaW5nLFxuICAgIHByZXZpb3VzQ2FyZXQ6IG51bWJlcixcbiAgICBkZWNpbWFsU3ltYm9sOiBzdHJpbmcgPSBgLGAsXG4pOiBudW1iZXIge1xuICAgIGNvbnN0IHRhaWxSZWdleCA9IG5ldyBSZWdFeHAoYCR7ZGVjaW1hbFN5bWJvbH0uK2ApO1xuICAgIGNvbnN0IHByZXZpb3VzV2l0aG91dFRhaWwgPSBwcmV2aW91c1ZhbHVlLnJlcGxhY2UodGFpbFJlZ2V4LCBgYCk7XG4gICAgY29uc3QgY3VycmVudFdpdGhvdXRUYWlsID0gY3VycmVudC5yZXBsYWNlKHRhaWxSZWdleCwgYGApO1xuXG4gICAgY29uc3QgcGFzdGVPckN1dE9wZXJhdGlvbiA9XG4gICAgICAgIE1hdGguYWJzKHByZXZpb3VzV2l0aG91dFRhaWwubGVuZ3RoIC0gY3VycmVudFdpdGhvdXRUYWlsLmxlbmd0aCkgPiAyO1xuXG4gICAgaWYgKHBhc3RlT3JDdXRPcGVyYXRpb24pIHtcbiAgICAgICAgcmV0dXJuIGN1cnJlbnQubGVuZ3RoO1xuICAgIH1cblxuICAgIGlmIChwcmV2aW91c1ZhbHVlLmxlbmd0aCA9PT0gY3VycmVudC5sZW5ndGgpIHtcbiAgICAgICAgaWYgKHByZXZpb3VzVmFsdWUuaW5kZXhPZihkZWNpbWFsU3ltYm9sKSA8PSBwcmV2aW91c0NhcmV0KSB7XG4gICAgICAgICAgICByZXR1cm4gY2FsY3VsYXRlQ2hhbmdlZFRhaWxJbmRleChwcmV2aW91c1ZhbHVlLCBjdXJyZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBwcmV2aW91c1dpdGhvdXRUYWlsID09PSBjdXJyZW50V2l0aG91dFRhaWxcbiAgICAgICAgICAgID8gcHJldmlvdXNDYXJldCAtIDFcbiAgICAgICAgICAgIDogcHJldmlvdXNDYXJldCArIDE7XG4gICAgfVxuXG4gICAgaWYgKHByZXZpb3VzVmFsdWUubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHJldHVybiAxO1xuICAgIH1cblxuICAgIGNvbnN0IGNoYW5nZUxlbmd0aCA9IGN1cnJlbnQubGVuZ3RoIC0gcHJldmlvdXNWYWx1ZS5sZW5ndGg7XG5cbiAgICByZXR1cm4gcHJldmlvdXNDYXJldCArIGNoYW5nZUxlbmd0aDtcbn1cblxuZnVuY3Rpb24gY2FsY3VsYXRlQ2hhbmdlZFRhaWxJbmRleChwcmV2aW91czogc3RyaW5nLCBjdXJyZW50OiBzdHJpbmcpOiBudW1iZXIge1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY3VycmVudC5sZW5ndGg7IGkrKykge1xuICAgICAgICBpZiAocHJldmlvdXNbaV0gIT09IGN1cnJlbnRbaV0pIHtcbiAgICAgICAgICAgIHJldHVybiBjdXJyZW50W2ldID09PSBgMGAgPyBpIDogaSArIDE7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gY3VycmVudC5sZW5ndGg7XG59XG5cbmZ1bmN0aW9uIGNhbGN1bGF0ZUNhcmV0R2FwKFxuICAgIHByZXZpb3VzVmFsdWU6IHN0cmluZyA9IGBgLFxuICAgIGN1cnJlbnQ6IHN0cmluZyxcbiAgICB0aG91c2FuZFN5bWJvbDogc3RyaW5nLFxuKTogbnVtYmVyIHtcbiAgICBjb25zdCBwYXN0ZU9yQ3V0T3BlcmF0aW9uID0gTWF0aC5hYnMocHJldmlvdXNWYWx1ZS5sZW5ndGggLSBjdXJyZW50Lmxlbmd0aCkgPiAyO1xuXG4gICAgaWYgKHBhc3RlT3JDdXRPcGVyYXRpb24pIHtcbiAgICAgICAgcmV0dXJuIDA7XG4gICAgfVxuXG4gICAgY29uc3Qgd2VyZVNwYWNlcyA9IHByZXZpb3VzVmFsdWUuc3BsaXQodGhvdXNhbmRTeW1ib2wpLmxlbmd0aDtcbiAgICBjb25zdCBub3dTcGFjZXMgPSBjdXJyZW50LnNwbGl0KHRob3VzYW5kU3ltYm9sKS5sZW5ndGg7XG5cbiAgICByZXR1cm4gbm93U3BhY2VzIC0gd2VyZVNwYWNlcztcbn1cbiJdfQ==
@@ -1,6 +1,10 @@
1
1
  import { tuiAssert } from '@taiga-ui/cdk';
2
2
  import { MASK_CARET_TRAP } from '@taiga-ui/core/constants';
3
3
  const ASSERTION = `Correction function must return single char or null`;
4
+ /**
5
+ * TODO: delete in v4.0
6
+ * @deprecated Use {@link https://maskito.dev/core-concepts/processors processors} from {@link https://github.com/taiga-family/maskito Maskito}
7
+ */
4
8
  export function tuiCreateCorrectionMask(allowed, correctionHandler) {
5
9
  return rawValue => {
6
10
  const mask = rawValue.split(``).reduce((result, char, index) => {
@@ -25,4 +29,4 @@ export function tuiCreateCorrectionMask(allowed, correctionHandler) {
25
29
  : filtered;
26
30
  };
27
31
  }
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWNvcnJlY3Rpb24tbWFzay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvdXRpbHMvbWFzay9jcmVhdGUtY29ycmVjdGlvbi1tYXNrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBT3pELE1BQU0sU0FBUyxHQUFHLHFEQUFxRCxDQUFDO0FBTXhFLE1BQU0sVUFBVSx1QkFBdUIsQ0FDbkMsT0FBZSxFQUNmLGlCQUErQztJQUUvQyxPQUFPLFFBQVEsQ0FBQyxFQUFFO1FBQ2QsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQWtCLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBRTtZQUM1RSxNQUFNLFNBQVMsR0FBRyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFFakQsU0FBUztnQkFDTCxTQUFTLENBQUMsTUFBTSxDQUFDLFNBQVMsS0FBSyxJQUFJLElBQUksU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFFOUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7Z0JBQ25DLE9BQU8sTUFBTSxDQUFDO2FBQ2pCO1lBRUQsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUNwQixPQUFPLENBQUMsR0FBRyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7YUFDL0I7WUFFRCxJQUFJLFNBQVMsRUFBRTtnQkFDWCxPQUFPLENBQUMsR0FBRyxNQUFNLEVBQUUsU0FBUyxFQUFFLGVBQWUsQ0FBQyxDQUFDO2FBQ2xEO1lBRUQsT0FBTyxNQUFNLENBQUM7UUFDbEIsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ1AsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUNwRCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUN4QixDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLElBQUksS0FBSyxlQUFlLElBQUksS0FBSyxLQUFLLFNBQVMsQ0FDbkUsQ0FBQztRQUVGLE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksS0FBSyxPQUFPLENBQUM7WUFDMUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxRQUFRLEVBQUUsT0FBTyxDQUFDO1lBQ3hCLENBQUMsQ0FBQyxRQUFRLENBQUM7SUFDbkIsQ0FBQyxDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7dHVpQXNzZXJ0fSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7TUFTS19DQVJFVF9UUkFQfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb25zdGFudHMnO1xuaW1wb3J0IHtcbiAgICBUdWlUZXh0TWFza0NvcnJlY3Rpb25IYW5kbGVyLFxuICAgIFR1aVRleHRNYXNrTGlzdCxcbiAgICBUdWlUZXh0TWFza0xpc3RIYW5kbGVyLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9tYXNrJztcblxuY29uc3QgQVNTRVJUSU9OID0gYENvcnJlY3Rpb24gZnVuY3Rpb24gbXVzdCByZXR1cm4gc2luZ2xlIGNoYXIgb3IgbnVsbGA7XG5cbi8qKlxuICogVE9ETzogZGVsZXRlIGluIHY0LjBcbiAqIEBkZXByZWNhdGVkIFVzZSB7QGxpbmsgaHR0cHM6Ly9tYXNraXRvLmRldi9jb3JlLWNvbmNlcHRzL3Byb2Nlc3NvcnMgcHJvY2Vzc29yc30gZnJvbSB7QGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3RhaWdhLWZhbWlseS9tYXNraXRvIE1hc2tpdG99XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0dWlDcmVhdGVDb3JyZWN0aW9uTWFzayhcbiAgICBhbGxvd2VkOiBSZWdFeHAsXG4gICAgY29ycmVjdGlvbkhhbmRsZXI6IFR1aVRleHRNYXNrQ29ycmVjdGlvbkhhbmRsZXIsXG4pOiBUdWlUZXh0TWFza0xpc3RIYW5kbGVyIHtcbiAgICByZXR1cm4gcmF3VmFsdWUgPT4ge1xuICAgICAgICBjb25zdCBtYXNrID0gcmF3VmFsdWUuc3BsaXQoYGApLnJlZHVjZTxUdWlUZXh0TWFza0xpc3Q+KChyZXN1bHQsIGNoYXIsIGluZGV4KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjb3JyZWN0ZWQgPSBjb3JyZWN0aW9uSGFuZGxlcihjaGFyLCBpbmRleCk7XG5cbiAgICAgICAgICAgIG5nRGV2TW9kZSAmJlxuICAgICAgICAgICAgICAgIHR1aUFzc2VydC5hc3NlcnQoY29ycmVjdGVkID09PSBudWxsIHx8IGNvcnJlY3RlZC5sZW5ndGggPT09IDEsIEFTU0VSVElPTik7XG5cbiAgICAgICAgICAgIGlmICghYWxsb3dlZC50ZXN0KGNoYXIpICYmICFjb3JyZWN0ZWQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoYWxsb3dlZC50ZXN0KGNoYXIpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIFsuLi5yZXN1bHQsIGFsbG93ZWRdO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoY29ycmVjdGVkKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIFsuLi5yZXN1bHQsIGNvcnJlY3RlZCwgTUFTS19DQVJFVF9UUkFQXTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgfSwgW10pO1xuICAgICAgICBjb25zdCBsYXN0SW5kZXggPSBtYXNrLmxhc3RJbmRleE9mKE1BU0tfQ0FSRVRfVFJBUCk7XG4gICAgICAgIGNvbnN0IGZpbHRlcmVkID0gbWFzay5maWx0ZXIoXG4gICAgICAgICAgICAoaXRlbSwgaW5kZXgpID0+IGl0ZW0gIT09IE1BU0tfQ0FSRVRfVFJBUCB8fCBpbmRleCA9PT0gbGFzdEluZGV4LFxuICAgICAgICApO1xuXG4gICAgICAgIHJldHVybiBmaWx0ZXJlZC5zb21lKGl0ZW0gPT4gaXRlbSAhPT0gYWxsb3dlZClcbiAgICAgICAgICAgID8gWy4uLmZpbHRlcmVkLCBhbGxvd2VkXVxuICAgICAgICAgICAgOiBmaWx0ZXJlZDtcbiAgICB9O1xufVxuIl19
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLWNvcnJlY3Rpb24tbWFzay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvdXRpbHMvbWFzay9jcmVhdGUtY29ycmVjdGlvbi1tYXNrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEMsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBT3pELE1BQU0sU0FBUyxHQUFHLHFEQUFxRCxDQUFDO0FBRXhFOzs7R0FHRztBQUNILE1BQU0sVUFBVSx1QkFBdUIsQ0FDbkMsT0FBZSxFQUNmLGlCQUErQztJQUUvQyxPQUFPLFFBQVEsQ0FBQyxFQUFFO1FBQ2QsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQWtCLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBRTtZQUM1RSxNQUFNLFNBQVMsR0FBRyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFFakQsU0FBUztnQkFDTCxTQUFTLENBQUMsTUFBTSxDQUFDLFNBQVMsS0FBSyxJQUFJLElBQUksU0FBUyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7WUFFOUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7Z0JBQ25DLE9BQU8sTUFBTSxDQUFDO2FBQ2pCO1lBRUQsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFO2dCQUNwQixPQUFPLENBQUMsR0FBRyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7YUFDL0I7WUFFRCxJQUFJLFNBQVMsRUFBRTtnQkFDWCxPQUFPLENBQUMsR0FBRyxNQUFNLEVBQUUsU0FBUyxFQUFFLGVBQWUsQ0FBQyxDQUFDO2FBQ2xEO1lBRUQsT0FBTyxNQUFNLENBQUM7UUFDbEIsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ1AsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUNwRCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUN4QixDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLElBQUksS0FBSyxlQUFlLElBQUksS0FBSyxLQUFLLFNBQVMsQ0FDbkUsQ0FBQztRQUVGLE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksS0FBSyxPQUFPLENBQUM7WUFDMUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxRQUFRLEVBQUUsT0FBTyxDQUFDO1lBQ3hCLENBQUMsQ0FBQyxRQUFRLENBQUM7SUFDbkIsQ0FBQyxDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7dHVpQXNzZXJ0fSBmcm9tICdAdGFpZ2EtdWkvY2RrJztcbmltcG9ydCB7TUFTS19DQVJFVF9UUkFQfSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb25zdGFudHMnO1xuaW1wb3J0IHtcbiAgICBUdWlUZXh0TWFza0NvcnJlY3Rpb25IYW5kbGVyLFxuICAgIFR1aVRleHRNYXNrTGlzdCxcbiAgICBUdWlUZXh0TWFza0xpc3RIYW5kbGVyLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9tYXNrJztcblxuY29uc3QgQVNTRVJUSU9OID0gYENvcnJlY3Rpb24gZnVuY3Rpb24gbXVzdCByZXR1cm4gc2luZ2xlIGNoYXIgb3IgbnVsbGA7XG5cbi8qKlxuICogVE9ETzogZGVsZXRlIGluIHY0LjBcbiAqIEBkZXByZWNhdGVkIFVzZSB7QGxpbmsgaHR0cHM6Ly9tYXNraXRvLmRldi9jb3JlLWNvbmNlcHRzL3Byb2Nlc3NvcnMgcHJvY2Vzc29yc30gZnJvbSB7QGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3RhaWdhLWZhbWlseS9tYXNraXRvIE1hc2tpdG99XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0dWlDcmVhdGVDb3JyZWN0aW9uTWFzayhcbiAgICBhbGxvd2VkOiBSZWdFeHAsXG4gICAgY29ycmVjdGlvbkhhbmRsZXI6IFR1aVRleHRNYXNrQ29ycmVjdGlvbkhhbmRsZXIsXG4pOiBUdWlUZXh0TWFza0xpc3RIYW5kbGVyIHtcbiAgICByZXR1cm4gcmF3VmFsdWUgPT4ge1xuICAgICAgICBjb25zdCBtYXNrID0gcmF3VmFsdWUuc3BsaXQoYGApLnJlZHVjZTxUdWlUZXh0TWFza0xpc3Q+KChyZXN1bHQsIGNoYXIsIGluZGV4KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjb3JyZWN0ZWQgPSBjb3JyZWN0aW9uSGFuZGxlcihjaGFyLCBpbmRleCk7XG5cbiAgICAgICAgICAgIG5nRGV2TW9kZSAmJlxuICAgICAgICAgICAgICAgIHR1aUFzc2VydC5hc3NlcnQoY29ycmVjdGVkID09PSBudWxsIHx8IGNvcnJlY3RlZC5sZW5ndGggPT09IDEsIEFTU0VSVElPTik7XG5cbiAgICAgICAgICAgIGlmICghYWxsb3dlZC50ZXN0KGNoYXIpICYmICFjb3JyZWN0ZWQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoYWxsb3dlZC50ZXN0KGNoYXIpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIFsuLi5yZXN1bHQsIGFsbG93ZWRdO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoY29ycmVjdGVkKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIFsuLi5yZXN1bHQsIGNvcnJlY3RlZCwgTUFTS19DQVJFVF9UUkFQXTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICAgICAgfSwgW10pO1xuICAgICAgICBjb25zdCBsYXN0SW5kZXggPSBtYXNrLmxhc3RJbmRleE9mKE1BU0tfQ0FSRVRfVFJBUCk7XG4gICAgICAgIGNvbnN0IGZpbHRlcmVkID0gbWFzay5maWx0ZXIoXG4gICAgICAgICAgICAoaXRlbSwgaW5kZXgpID0+IGl0ZW0gIT09IE1BU0tfQ0FSRVRfVFJBUCB8fCBpbmRleCA9PT0gbGFzdEluZGV4LFxuICAgICAgICApO1xuXG4gICAgICAgIHJldHVybiBmaWx0ZXJlZC5zb21lKGl0ZW0gPT4gaXRlbSAhPT0gYWxsb3dlZClcbiAgICAgICAgICAgID8gWy4uLmZpbHRlcmVkLCBhbGxvd2VkXVxuICAgICAgICAgICAgOiBmaWx0ZXJlZDtcbiAgICB9O1xufVxuIl19
@@ -2,10 +2,16 @@ import { CHAR_EN_DASH, CHAR_HYPHEN, CHAR_NO_BREAK_SPACE, tuiAssert } from '@taig
2
2
  import { MASK_CARET_TRAP, TUI_DIGIT_REGEXP, TUI_LEADING_ZEROES_REGEXP, TUI_NON_DIGITS_REGEXP, } from '@taiga-ui/core/constants';
3
3
  import { tuiOtherDecimalSymbol } from '@taiga-ui/core/utils/format';
4
4
  const NON_ZERO_DIGIT = /[1-9]/;
5
+ /**
6
+ * TODO: delete in v4.0
7
+ * @deprecated Use {@link https://maskito.dev/kit/number Number} from {@link https://github.com/taiga-family/maskito Maskito} instead <br/>
8
+ * Adaptation for {@link https://github.com/text-mask/text-mask/tree/master/addons#createnumbermask `createNumberMask`}
9
+ */
5
10
  export function tuiCreateNumberMask({ allowDecimal = false, decimalSymbol = `,`, thousandSymbol = CHAR_NO_BREAK_SPACE, autoCorrectDecimalSymbol = true, decimalLimit = 2, requireDecimal = false, allowNegative = false, integerLimit = 0, } = {}) {
6
11
  ngDevMode && tuiAssert.assert(decimalLimit >= 0);
7
12
  ngDevMode && tuiAssert.assert(Number.isInteger(integerLimit));
8
13
  ngDevMode && tuiAssert.assert(integerLimit >= 0);
14
+ // eslint-disable-next-line max-statements
9
15
  return (rawValue, { previousConformedValue }) => {
10
16
  if (previousConformedValue && requireDecimal) {
11
17
  const conformedWithoutSeparator = rawValue.split(thousandSymbol).join(``);
@@ -14,6 +20,7 @@ export function tuiCreateNumberMask({ allowDecimal = false, decimalSymbol = `,`,
14
20
  .join(``)
15
21
  .split(decimalSymbol)
16
22
  .join(``);
23
+ // Forbid removal of decimal separator if decimal part is required
17
24
  if (conformedWithoutSeparator ===
18
25
  previousConformedValueWithoutDecimalSymbolAndSeparator) {
19
26
  rawValue = previousConformedValue;
@@ -107,8 +114,9 @@ function convertToMask(strNumber) {
107
114
  }
108
115
  function addThousandsSeparator(strNumber, thousandSymbol) {
109
116
  return strNumber.length > 3
110
- ?
117
+ ? // TODO: investigate to disallow potentially catastrophic exponential-time regular expressions.
118
+ // eslint-disable-next-line unicorn/no-unsafe-regex
111
119
  strNumber.replace(/\B(?=(\d{3})+(?!\d))/g, thousandSymbol)
112
120
  : strNumber;
113
121
  }
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLW51bWJlci1tYXNrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS91dGlscy9tYXNrL2NyZWF0ZS1udW1iZXItbWFzay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEYsT0FBTyxFQUNILGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIseUJBQXlCLEVBQ3pCLHFCQUFxQixHQUN4QixNQUFNLDBCQUEwQixDQUFDO0FBR2xDLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBRWxFLE1BQU0sY0FBYyxHQUFHLE9BQU8sQ0FBQztBQU8vQixNQUFNLFVBQVUsbUJBQW1CLENBQUMsRUFDaEMsWUFBWSxHQUFHLEtBQUssRUFDcEIsYUFBYSxHQUFHLEdBQUcsRUFDbkIsY0FBYyxHQUFHLG1CQUFtQixFQUNwQyx3QkFBd0IsR0FBRyxJQUFJLEVBQy9CLFlBQVksR0FBRyxDQUFDLEVBQ2hCLGNBQWMsR0FBRyxLQUFLLEVBQ3RCLGFBQWEsR0FBRyxLQUFLLEVBQ3JCLFlBQVksR0FBRyxDQUFDLE1BQ00sRUFBRTtJQUN4QixTQUFTLElBQUksU0FBUyxDQUFDLE1BQU0sQ0FBQyxZQUFZLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDakQsU0FBUyxJQUFJLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO0lBQzlELFNBQVMsSUFBSSxTQUFTLENBQUMsTUFBTSxDQUFDLFlBQVksSUFBSSxDQUFDLENBQUMsQ0FBQztJQUdqRCxPQUFPLENBQUMsUUFBUSxFQUFFLEVBQUMsc0JBQXNCLEVBQUMsRUFBRSxFQUFFO1FBQzFDLElBQUksc0JBQXNCLElBQUksY0FBYyxFQUFFO1lBQzFDLE1BQU0seUJBQXlC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Q0FBQyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7QUFDOUUsQ0FBQztBQUVELFNBQVMscUJBQXFCLENBQUMsU0FBaUIsRUFBRSxjQUFzQjtJQUNwRSxPQUFPLFNBQVMsQ0FBQyxNQUFNLEdBQUcsQ0FBQztRQUN2QixDQUFDO1lBRUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyx1QkFBdUIsRUFBRSxjQUFjLENBQUM7UUFDNUQsQ0FBQyxDQUFDLFNBQVMsQ0FBQztBQUNwQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDSEFSX0VOX0RBU0gsIENIQVJfSFlQSEVOLCBDSEFSX05PX0JSRUFLX1NQQUNFLCB0dWlBc3NlcnR9IGZyb20gJ0B0YWlnYS11aS9jZGsnO1xuaW1wb3J0IHtcbiAgICBNQVNLX0NBUkVUX1RSQVAsXG4gICAgVFVJX0RJR0lUX1JFR0VYUCxcbiAgICBUVUlfTEVBRElOR19aRVJPRVNfUkVHRVhQLFxuICAgIFRVSV9OT05fRElHSVRTX1JFR0VYUCxcbn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29uc3RhbnRzJztcbmltcG9ydCB7VHVpTnVtYmVyTWFza09wdGlvbnMsIFR1aVRleHRNYXNrTGlzdEhhbmRsZXJ9IGZyb20gJ0B0YWlnYS11aS9jb3JlL21hc2snO1xuaW1wb3J0IHtUdWlEZWNpbWFsU3ltYm9sfSBmcm9tICdAdGFpZ2EtdWkvY29yZS90eXBlcyc7XG5pbXBvcnQge3R1aU90aGVyRGVjaW1hbFN5bWJvbH0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvdXRpbHMvZm9ybWF0JztcblxuY29uc3QgTk9OX1pFUk9fRElHSVQgPSAvWzEtOV0vO1xuXG4vKipcbiAqIFRPRE86IGRlbGV0ZSBpbiB2NC4wXG4gKiBAZGVwcmVjYXRlZCBVc2Uge0BsaW5rIGh0dHBzOi8vbWFza2l0by5kZXYva2l0L251bWJlciBOdW1iZXJ9IGZyb20ge0BsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS90YWlnYS1mYW1pbHkvbWFza2l0byBNYXNraXRvfSBpbnN0ZWFkIDxici8+XG4gKiBBZGFwdGF0aW9uIGZvciB7QGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3RleHQtbWFzay90ZXh0LW1hc2svdHJlZS9tYXN0ZXIvYWRkb25zI2NyZWF0ZW51bWJlcm1hc2sgYGNyZWF0ZU51bWJlck1hc2tgfVxuICovXG5leHBvcnQgZnVuY3Rpb24gdHVpQ3JlYXRlTnVtYmVyTWFzayh7XG4gICAgYWxsb3dEZWNpbWFsID0gZmFsc2UsXG4gICAgZGVjaW1hbFN5bWJvbCA9IGAsYCxcbiAgICB0aG91c2FuZFN5bWJvbCA9IENIQVJfTk9fQlJFQUtfU1BBQ0UsXG4gICAgYXV0b0NvcnJlY3REZWNpbWFsU3ltYm9sID0gdHJ1ZSxcbiAgICBkZWNpbWFsTGltaXQgPSAyLFxuICAgIHJlcXVpcmVEZWNpbWFsID0gZmFsc2UsXG4gICAgYWxsb3dOZWdhdGl2ZSA9IGZhbHNlLFxuICAgIGludGVnZXJMaW1pdCA9IDAsXG59OiBUdWlOdW1iZXJNYXNrT3B0aW9ucyA9IHt9KTogVHVpVGV4dE1hc2tMaXN0SGFuZGxlciB7XG4gICAgbmdEZXZNb2RlICYmIHR1aUFzc2VydC5hc3NlcnQoZGVjaW1hbExpbWl0ID49IDApO1xuICAgIG5nRGV2TW9kZSAmJiB0dWlBc3NlcnQuYXNzZXJ0KE51bWJlci5pc0ludGVnZXIoaW50ZWdlckxpbWl0KSk7XG4gICAgbmdEZXZNb2RlICYmIHR1aUFzc2VydC5hc3NlcnQoaW50ZWdlckxpbWl0ID49IDApO1xuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIG1heC1zdGF0ZW1lbnRzXG4gICAgcmV0dXJuIChyYXdWYWx1ZSwge3ByZXZpb3VzQ29uZm9ybWVkVmFsdWV9KSA9PiB7XG4gICAgICAgIGlmIChwcmV2aW91c0NvbmZvcm1lZFZhbHVlICYmIHJlcXVpcmVEZWNpbWFsKSB7XG4gICAgICAgICAgICBjb25zdCBjb25mb3JtZWRXaXRob3V0U2VwYXJhdG9yID0gcmF3VmFsdWUuc3BsaXQodGhvdXNhbmRTeW1ib2wpLmpvaW4oYGApO1xuICAgICAgICAgICAgY29uc3QgcHJldmlvdXNDb25mb3JtZWRWYWx1ZVdpdGhvdXREZWNpbWFsU3ltYm9sQW5kU2VwYXJhdG9yID1cbiAgICAgICAgICAgICAgICBwcmV2aW91c0NvbmZvcm1lZFZhbHVlXG4gICAgICAgICAgICAgICAgICAgIC5zcGxpdCh0aG91c2FuZFN5bWJvbClcbiAgICAgICAgICAgICAgICAgICAgLmpvaW4oYGApXG4gICAgICAgICAgICAgICAgICAgIC5zcGxpdChkZWNpbWFsU3ltYm9sKVxuICAgICAgICAgICAgICAgICAgICAuam9pbihgYCk7XG5cbiAgICAgICAgICAgIC8vIEZvcmJpZCByZW1vdmFsIG9mIGRlY2ltYWwgc2VwYXJhdG9yIGlmIGRlY2ltYWwgcGFydCBpcyByZXF1aXJlZFxuICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgIGNvbmZvcm1lZFdpdGhvdXRTZXBhcmF0b3IgPT09XG4gICAgICAgICAgICAgICAgcHJldmlvdXNDb25mb3JtZWRWYWx1ZVdpdGhvdXREZWNpbWFsU3ltYm9sQW5kU2VwYXJhdG9yXG4gICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICByYXdWYWx1ZSA9IHByZXZpb3VzQ29uZm9ybWVkVmFsdWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBpc05lZ2F0aXZlID1cbiAgICAgICAgICAgIChyYXdWYWx1ZT8uc3RhcnRzV2l0aChDSEFSX0hZUEhFTikgfHwgcmF3VmFsdWU/LnN0YXJ0c1dpdGgoQ0hBUl9FTl9EQVNIKSkgJiZcbiAgICAgICAgICAgIGFsbG93TmVnYXRpdmU7XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgaXNEZWNpbWFsU3ltYm9sKHJhd1ZhbHVlLCBkZWNpbWFsU3ltYm9sLCBhdXRvQ29ycmVjdERlY2ltYWxTeW1ib2wpICYmXG4gICAgICAgICAgICBhbGxvd0RlY2ltYWxcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4gW2AwYCwgZGVjaW1hbFN5bWJvbCwgVFVJX0RJR0lUX1JFR0VYUF07XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaXNOZWdhdGl2ZSkge1xuICAgICAgICAgICAgcmF3VmFsdWUgPSByYXdWYWx1ZS5zbGljZSgxKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGRlY2ltYWxJbmRleCA9IGdldERlY2ltYWxTeW1ib2xJbmRleChcbiAgICAgICAgICAgIHJhd1ZhbHVlLFxuICAgICAgICAgICAgZGVjaW1hbFN5bWJvbCxcbiAgICAgICAgICAgIGF1dG9Db3JyZWN0RGVjaW1hbFN5bWJvbCxcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgaGFzRGVjaW1hbCA9IGRlY2ltYWxJbmRleCAhPT0gLTE7XG4gICAgICAgIGNvbnN0IGludGVnZXIgPSBoYXNEZWNpbWFsID8gcmF3VmFsdWUuc2xpY2UoMCwgZGVjaW1hbEluZGV4KSA6IHJhd1ZhbHVlO1xuICAgICAgICBjb25zdCB0aG91c2FuZFNlcGFyYXRvcnMgPSBpbnRlZ2VyLm1hdGNoKG5ldyBSZWdFeHAodGhvdXNhbmRTeW1ib2wsIGBnYCkpIHx8IFtdO1xuICAgICAgICBjb25zdCBpbnRlZ2VyQ2FwcGVkID0gaW50ZWdlckxpbWl0XG4gICAgICAgICAgICA/IGludGVnZXIuc2xpY2UoMCwgaW50ZWdlckxpbWl0ICsgdGhvdXNhbmRTZXBhcmF0b3JzLmxlbmd0aClcbiAgICAgICAgICAgIDogaW50ZWdlcjtcbiAgICAgICAgY29uc3QgaW50ZWdlckNhcHBlZENsZWFuID0gaW50ZWdlckNhcHBlZC5yZXBsYWNlKFRVSV9OT05fRElHSVRTX1JFR0VYUCwgYGApO1xuICAgICAgICBjb25zdCBbbGVhZGluZ1plcm9zTWF0Y2hdID0gaW50ZWdlckNhcHBlZENsZWFuLm1hdGNoKFxuICAgICAgICAgICAgVFVJX0xFQURJTkdfWkVST0VTX1JFR0VYUCxcbiAgICAgICAgKSB8fCBbYGBdO1xuICAgICAgICBjb25zdCBsZWFkaW5nWmVyb3NBbW91bnQgPSBsZWFkaW5nWmVyb3NNYXRjaC5sZW5ndGg7XG4gICAgICAgIGNvbnN0IGludGVnZXJDYXBwZWRaZXJvc0NsZWFuID0gaW50ZWdlckNhcHBlZENsZWFuXG4gICAgICAgICAgICAucmVwbGFjZSgvXjArKD8hXFwufCQpLywgYGApXG4gICAgICAgICAgICAudHJpbSgpO1xuICAgICAgICBjb25zdCB3aXRoU2VwYXJhdG9yID0gYWRkVGhvdXNhbmRzU2VwYXJhdG9yKFxuICAgICAgICAgICAgaW50ZWdlckNhcHBlZFplcm9zQ2xlYW4sXG4gICAgICAgICAgICB0aG91c2FuZFN5bWJvbCxcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgbWFzayA9IGNvbnZlcnRUb01hc2sod2l0aFNlcGFyYXRvcik7XG5cbiAgICAgICAgaWYgKChoYXNEZWNpbWFsICYmIGFsbG93RGVjaW1hbCkgfHwgcmVxdWlyZURlY2ltYWwpIHtcbiAgICAgICAgICAgIGNvbnN0IGZyYWN0aW9uID0gaGFzRGVjaW1hbFxuICAgICAgICAgICAgICAgID8gY29udmVydFRvTWFzayhcbiAgICAgICAgICAgICAgICAgICAgICByYXdWYWx1ZS5zbGljZShkZWNpbWFsSW5kZXggKyAxKS5yZXBsYWNlKFRVSV9OT05fRElHSVRTX1JFR0VYUCwgYGApLFxuICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIDogW107XG4gICAgICAgICAgICBjb25zdCBmcmFjdGlvbkNhcHBlZCA9IGRlY2ltYWxMaW1pdFxuICAgICAgICAgICAgICAgID8gZnJhY3Rpb24uc2xpY2UoMCwgZGVjaW1hbExpbWl0KVxuICAgICAgICAgICAgICAgIDogZnJhY3Rpb247XG5cbiAgICAgICAgICAgIGlmIChyYXdWYWx1ZVtkZWNpbWFsSW5kZXhdICE9PSB0dWlPdGhlckRlY2ltYWxTeW1ib2woZGVjaW1hbFN5bWJvbCkpIHtcbiAgICAgICAgICAgICAgICBtYXNrLnB1c2goTUFTS19DQVJFVF9UUkFQKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbWFzay5wdXNoKGRlY2ltYWxTeW1ib2wsIE1BU0tfQ0FSRVRfVFJBUCwgLi4uZnJhY3Rpb25DYXBwZWQpO1xuXG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IE1hdGgubWluKGRlY2ltYWxMaW1pdCAtIGZyYWN0aW9uQ2FwcGVkLmxlbmd0aCwgMjApOyBpKyspIHtcbiAgICAgICAgICAgICAgICBtYXNrLnB1c2goVFVJX0RJR0lUX1JFR0VYUCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBpc09ubHlaZXJvRGlnaXQgPSBtYXNrLmxlbmd0aCA9PT0gMSAmJiBpbnRlZ2VyQ2FwcGVkWmVyb3NDbGVhbiA9PT0gYDBgO1xuXG4gICAgICAgIGlmIChpc05lZ2F0aXZlKSB7XG4gICAgICAgICAgICBpZiAobWFzay5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgICAgICBtYXNrLnB1c2goVFVJX0RJR0lUX1JFR0VYUCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIG1hc2sudW5zaGlmdChDSEFSX0hZUEhFTik7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcHJldmVudExlYWRpbmdaZXJvZXMobWFzaywgaXNPbmx5WmVyb0RpZ2l0LCBsZWFkaW5nWmVyb3NBbW91bnQpO1xuICAgIH07XG59XG5cbmZ1bmN0aW9uIHByZXZlbnRMZWFkaW5nWmVyb2VzKFxuICAgIG1hc2s6IEFycmF5PFJlZ0V4cCB8IHN0cmluZz4sXG4gICAgaXNPbmx5WmVyb0RpZ2l0OiBib29sZWFuID0gZmFsc2UsXG4gICAgbGVhZGluZ1plcm9zQW1vdW50OiBudW1iZXIgPSAwLFxuKTogQXJyYXk8UmVnRXhwIHwgc3RyaW5nPiB7XG4gICAgaWYgKGlzT25seVplcm9EaWdpdCB8fCBsZWFkaW5nWmVyb3NBbW91bnQgPT09IDApIHtcbiAgICAgICAgcmV0dXJuIG1hc2s7XG4gICAgfVxuXG4gICAgY29uc3QgZmlyc3REaWdpdEluZGV4ID0gbWFzay5pbmRleE9mKFRVSV9ESUdJVF9SRUdFWFApO1xuXG4gICAgaWYgKGZpcnN0RGlnaXRJbmRleCA9PT0gLTEpIHtcbiAgICAgICAgcmV0dXJuIG1hc2s7XG4gICAgfVxuXG4gICAgY29uc3Qgc2Vjb25kTWFza0RpZ2l0ID0gbWFza1tmaXJzdERpZ2l0SW5kZXggKyAxXTtcbiAgICBjb25zdCBpc0NhcmV0VHJhcCA9IHNlY29uZE1hc2tEaWdpdCA9PT0gTUFTS19DQVJFVF9UUkFQO1xuXG4gICAgaWYgKGlzQ2FyZXRUcmFwICYmIGxlYWRpbmdaZXJvc0Ftb3VudCA9PT0gMSkge1xuICAgICAgICByZXR1cm4gbWFzaztcbiAgICB9XG5cbiAgICBpZiAoaXNDYXJldFRyYXApIHtcbiAgICAgICAgbWFzay51bnNoaWZ0KE5PTl9aRVJPX0RJR0lUKTtcblxuICAgICAgICByZXR1cm4gbWFzaztcbiAgICB9XG5cbiAgICBtYXNrW2ZpcnN0RGlnaXRJbmRleF0gPSBOT05fWkVST19ESUdJVDtcblxuICAgIHJldHVybiBtYXNrO1xufVxuXG5mdW5jdGlvbiBnZXREZWNpbWFsU3ltYm9sSW5kZXgoXG4gICAgc3RyOiBzdHJpbmcsXG4gICAgZGVjaW1hbFN5bWJvbDogVHVpRGVjaW1hbFN5bWJvbCxcbiAgICBhdXRvQ29ycmVjdERlY2ltYWxTeW1ib2w6IGJvb2xlYW4sXG4pOiBudW1iZXIge1xuICAgIGlmICghYXV0b0NvcnJlY3REZWNpbWFsU3ltYm9sKSB7XG4gICAgICAgIHJldHVybiBzdHIubGFzdEluZGV4T2YoZGVjaW1hbFN5bWJvbCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIE1hdGgubWF4KFxuICAgICAgICBzdHIubGFzdEluZGV4T2YoZGVjaW1hbFN5bWJvbCksXG4gICAgICAgIHN0ci5sYXN0SW5kZXhPZih0dWlPdGhlckRlY2ltYWxTeW1ib2woZGVjaW1hbFN5bWJvbCkpLFxuICAgICk7XG59XG5cbmZ1bmN0aW9uIGlzRGVjaW1hbFN5bWJvbChcbiAgICBzdHI6IHN0cmluZyxcbiAgICBkZWNpbWFsU3ltYm9sOiBUdWlEZWNpbWFsU3ltYm9sLFxuICAgIGF1dG9Db3JyZWN0RGVjaW1hbFN5bWJvbDogYm9vbGVhbixcbik6IGJvb2xlYW4ge1xuICAgIGlmIChhdXRvQ29ycmVjdERlY2ltYWxTeW1ib2wpIHtcbiAgICAgICAgcmV0dXJuIC9eWywuXSQvLnRlc3Qoc3RyKTtcbiAgICB9XG5cbiAgICByZXR1cm4gc3RyID09PSBkZWNpbWFsU3ltYm9sO1xufVxuXG5mdW5jdGlvbiBjb252ZXJ0VG9NYXNrKHN0ck51bWJlcjogc3RyaW5nKTogQXJyYXk8UmVnRXhwIHwgc3RyaW5nPiB7XG4gICAgcmV0dXJuIHN0ck51bWJlclxuICAgICAgICAuc3BsaXQoYGApXG4gICAgICAgIC5tYXAoY2hhciA9PiAoVFVJX0RJR0lUX1JFR0VYUC50ZXN0KGNoYXIpID8gVFVJX0RJR0lUX1JFR0VYUCA6IGNoYXIpKTtcbn1cblxuZnVuY3Rpb24gYWRkVGhvdXNhbmRzU2VwYXJhdG9yKHN0ck51bWJlcjogc3RyaW5nLCB0aG91c2FuZFN5bWJvbDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICByZXR1cm4gc3RyTnVtYmVyLmxlbmd0aCA+IDNcbiAgICAgICAgPyAvLyBUT0RPOiBpbnZlc3RpZ2F0ZSB0byBkaXNhbGxvdyBwb3RlbnRpYWxseSBjYXRhc3Ryb3BoaWMgZXhwb25lbnRpYWwtdGltZSByZWd1bGFyIGV4cHJlc3Npb25zLlxuICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSB1bmljb3JuL25vLXVuc2FmZS1yZWdleFxuICAgICAgICAgIHN0ck51bWJlci5yZXBsYWNlKC9cXEIoPz0oXFxkezN9KSsoPyFcXGQpKS9nLCB0aG91c2FuZFN5bWJvbClcbiAgICAgICAgOiBzdHJOdW1iZXI7XG59XG4iXX0=
122
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLW51bWJlci1tYXNrLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZS91dGlscy9tYXNrL2NyZWF0ZS1udW1iZXItbWFzay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsWUFBWSxFQUFFLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEYsT0FBTyxFQUNILGVBQWUsRUFDZixnQkFBZ0IsRUFDaEIseUJBQXlCLEVBQ3pCLHFCQUFxQixHQUN4QixNQUFNLDBCQUEwQixDQUFDO0FBR2xDLE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBRWxFLE1BQU0sY0FBYyxHQUFHLE9BQU8sQ0FBQztBQUUvQjs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLG1CQUFtQixDQUFDLEVBQ2hDLFlBQVksR0FBRyxLQUFLLEVBQ3BCLGFBQWEsR0FBRyxHQUFHLEVBQ25CLGNBQWMsR0FBRyxtQkFBbUIsRUFDcEMsd0JBQXdCLEdBQUcsSUFBSSxFQUMvQixZQUFZLEdBQUcsQ0FBQyxFQUNoQixjQUFjLEdBQUcsS0FBSyxFQUN0QixhQUFhLEdBQUcsS0FBSyxFQUNyQixZQUFZLEdBQUcsQ0FBQyxNQUNNLEVBQUU7SUFDeEIsU0FBUyxJQUFJLFNBQVMsQ0FBQyxNQUFNLENBQUMsWUFBWSxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ2pELFNBQVMsSUFBSSxTQUFTLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztJQUM5RCxTQUFTLElBQUksU0FBUyxDQUFDLE1BQU0sQ0FBQyxZQUFZLElBQUksQ0FBQyxDQUFDLENBQUM7SUFFakQsMENBQTBDO0lBQzFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsRUFBQyxzQkFBc0IsRUFBQyxFQUFFLEVBQUU7UUFDMUMsSUFBSSxzQkFBc0IsSUFBSSxj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QUFFLENBQUM7U0FDVCxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7QUFDOUUsQ0FBQztBQUVELFNBQVMscUJBQXFCLENBQUMsU0FBaUIsRUFBRSxjQUFzQjtJQUNwRSxPQUFPLFNBQVMsQ0FBQyxNQUFNLEdBQUcsQ0FBQztRQUN2QixDQUFDLENBQUMsK0ZBQStGO1lBQy9GLG1EQUFtRDtZQUNuRCxTQUFTLENBQUMsT0FBTyxDQUFDLHVCQUF1QixFQUFFLGNBQWMsQ0FBQztRQUM1RCxDQUFDLENBQUMsU0FBUyxDQUFDO0FBQ3BCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NIQVJfRU5fREFTSCwgQ0hBUl9IWVBIRU4sIENIQVJfTk9fQlJFQUtfU1BBQ0UsIHR1aUFzc2VydH0gZnJvbSAnQHRhaWdhLXVpL2Nkayc7XG5pbXBvcnQge1xuICAgIE1BU0tfQ0FSRVRfVFJBUCxcbiAgICBUVUlfRElHSVRfUkVHRVhQLFxuICAgIFRVSV9MRUFESU5HX1pFUk9FU19SRUdFWFAsXG4gICAgVFVJX05PTl9ESUdJVFNfUkVHRVhQLFxufSBmcm9tICdAdGFpZ2EtdWkvY29yZS9jb25zdGFudHMnO1xuaW1wb3J0IHtUdWlOdW1iZXJNYXNrT3B0aW9ucywgVHVpVGV4dE1hc2tMaXN0SGFuZGxlcn0gZnJvbSAnQHRhaWdhLXVpL2NvcmUvbWFzayc7XG5pbXBvcnQge1R1aURlY2ltYWxTeW1ib2x9IGZyb20gJ0B0YWlnYS11aS9jb3JlL3R5cGVzJztcbmltcG9ydCB7dHVpT3RoZXJEZWNpbWFsU3ltYm9sfSBmcm9tICdAdGFpZ2EtdWkvY29yZS91dGlscy9mb3JtYXQnO1xuXG5jb25zdCBOT05fWkVST19ESUdJVCA9IC9bMS05XS87XG5cbi8qKlxuICogVE9ETzogZGVsZXRlIGluIHY0LjBcbiAqIEBkZXByZWNhdGVkIFVzZSB7QGxpbmsgaHR0cHM6Ly9tYXNraXRvLmRldi9raXQvbnVtYmVyIE51bWJlcn0gZnJvbSB7QGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL3RhaWdhLWZhbWlseS9tYXNraXRvIE1hc2tpdG99IGluc3RlYWQgPGJyLz5cbiAqIEFkYXB0YXRpb24gZm9yIHtAbGluayBodHRwczovL2dpdGh1Yi5jb20vdGV4dC1tYXNrL3RleHQtbWFzay90cmVlL21hc3Rlci9hZGRvbnMjY3JlYXRlbnVtYmVybWFzayBgY3JlYXRlTnVtYmVyTWFza2B9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0dWlDcmVhdGVOdW1iZXJNYXNrKHtcbiAgICBhbGxvd0RlY2ltYWwgPSBmYWxzZSxcbiAgICBkZWNpbWFsU3ltYm9sID0gYCxgLFxuICAgIHRob3VzYW5kU3ltYm9sID0gQ0hBUl9OT19CUkVBS19TUEFDRSxcbiAgICBhdXRvQ29ycmVjdERlY2ltYWxTeW1ib2wgPSB0cnVlLFxuICAgIGRlY2ltYWxMaW1pdCA9IDIsXG4gICAgcmVxdWlyZURlY2ltYWwgPSBmYWxzZSxcbiAgICBhbGxvd05lZ2F0aXZlID0gZmFsc2UsXG4gICAgaW50ZWdlckxpbWl0ID0gMCxcbn06IFR1aU51bWJlck1hc2tPcHRpb25zID0ge30pOiBUdWlUZXh0TWFza0xpc3RIYW5kbGVyIHtcbiAgICBuZ0Rldk1vZGUgJiYgdHVpQXNzZXJ0LmFzc2VydChkZWNpbWFsTGltaXQgPj0gMCk7XG4gICAgbmdEZXZNb2RlICYmIHR1aUFzc2VydC5hc3NlcnQoTnVtYmVyLmlzSW50ZWdlcihpbnRlZ2VyTGltaXQpKTtcbiAgICBuZ0Rldk1vZGUgJiYgdHVpQXNzZXJ0LmFzc2VydChpbnRlZ2VyTGltaXQgPj0gMCk7XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbWF4LXN0YXRlbWVudHNcbiAgICByZXR1cm4gKHJhd1ZhbHVlLCB7cHJldmlvdXNDb25mb3JtZWRWYWx1ZX0pID0+IHtcbiAgICAgICAgaWYgKHByZXZpb3VzQ29uZm9ybWVkVmFsdWUgJiYgcmVxdWlyZURlY2ltYWwpIHtcbiAgICAgICAgICAgIGNvbnN0IGNvbmZvcm1lZFdpdGhvdXRTZXBhcmF0b3IgPSByYXdWYWx1ZS5zcGxpdCh0aG91c2FuZFN5bWJvbCkuam9pbihgYCk7XG4gICAgICAgICAgICBjb25zdCBwcmV2aW91c0NvbmZvcm1lZFZhbHVlV2l0aG91dERlY2ltYWxTeW1ib2xBbmRTZXBhcmF0b3IgPVxuICAgICAgICAgICAgICAgIHByZXZpb3VzQ29uZm9ybWVkVmFsdWVcbiAgICAgICAgICAgICAgICAgICAgLnNwbGl0KHRob3VzYW5kU3ltYm9sKVxuICAgICAgICAgICAgICAgICAgICAuam9pbihgYClcbiAgICAgICAgICAgICAgICAgICAgLnNwbGl0KGRlY2ltYWxTeW1ib2wpXG4gICAgICAgICAgICAgICAgICAgIC5qb2luKGBgKTtcblxuICAgICAgICAgICAgLy8gRm9yYmlkIHJlbW92YWwgb2YgZGVjaW1hbCBzZXBhcmF0b3IgaWYgZGVjaW1hbCBwYXJ0IGlzIHJlcXVpcmVkXG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgY29uZm9ybWVkV2l0aG91dFNlcGFyYXRvciA9PT1cbiAgICAgICAgICAgICAgICBwcmV2aW91c0NvbmZvcm1lZFZhbHVlV2l0aG91dERlY2ltYWxTeW1ib2xBbmRTZXBhcmF0b3JcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgIHJhd1ZhbHVlID0gcHJldmlvdXNDb25mb3JtZWRWYWx1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGlzTmVnYXRpdmUgPVxuICAgICAgICAgICAgKHJhd1ZhbHVlPy5zdGFydHNXaXRoKENIQVJfSFlQSEVOKSB8fCByYXdWYWx1ZT8uc3RhcnRzV2l0aChDSEFSX0VOX0RBU0gpKSAmJlxuICAgICAgICAgICAgYWxsb3dOZWdhdGl2ZTtcblxuICAgICAgICBpZiAoXG4gICAgICAgICAgICBpc0RlY2ltYWxTeW1ib2wocmF3VmFsdWUsIGRlY2ltYWxTeW1ib2wsIGF1dG9Db3JyZWN0RGVjaW1hbFN5bWJvbCkgJiZcbiAgICAgICAgICAgIGFsbG93RGVjaW1hbFxuICAgICAgICApIHtcbiAgICAgICAgICAgIHJldHVybiBbYDBgLCBkZWNpbWFsU3ltYm9sLCBUVUlfRElHSVRfUkVHRVhQXTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChpc05lZ2F0aXZlKSB7XG4gICAgICAgICAgICByYXdWYWx1ZSA9IHJhd1ZhbHVlLnNsaWNlKDEpO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZGVjaW1hbEluZGV4ID0gZ2V0RGVjaW1hbFN5bWJvbEluZGV4KFxuICAgICAgICAgICAgcmF3VmFsdWUsXG4gICAgICAgICAgICBkZWNpbWFsU3ltYm9sLFxuICAgICAgICAgICAgYXV0b0NvcnJlY3REZWNpbWFsU3ltYm9sLFxuICAgICAgICApO1xuICAgICAgICBjb25zdCBoYXNEZWNpbWFsID0gZGVjaW1hbEluZGV4ICE9PSAtMTtcbiAgICAgICAgY29uc3QgaW50ZWdlciA9IGhhc0RlY2ltYWwgPyByYXdWYWx1ZS5zbGljZSgwLCBkZWNpbWFsSW5kZXgpIDogcmF3VmFsdWU7XG4gICAgICAgIGNvbnN0IHRob3VzYW5kU2VwYXJhdG9ycyA9IGludGVnZXIubWF0Y2gobmV3IFJlZ0V4cCh0aG91c2FuZFN5bWJvbCwgYGdgKSkgfHwgW107XG4gICAgICAgIGNvbnN0IGludGVnZXJDYXBwZWQgPSBpbnRlZ2VyTGltaXRcbiAgICAgICAgICAgID8gaW50ZWdlci5zbGljZSgwLCBpbnRlZ2VyTGltaXQgKyB0aG91c2FuZFNlcGFyYXRvcnMubGVuZ3RoKVxuICAgICAgICAgICAgOiBpbnRlZ2VyO1xuICAgICAgICBjb25zdCBpbnRlZ2VyQ2FwcGVkQ2xlYW4gPSBpbnRlZ2VyQ2FwcGVkLnJlcGxhY2UoVFVJX05PTl9ESUdJVFNfUkVHRVhQLCBgYCk7XG4gICAgICAgIGNvbnN0IFtsZWFkaW5nWmVyb3NNYXRjaF0gPSBpbnRlZ2VyQ2FwcGVkQ2xlYW4ubWF0Y2goXG4gICAgICAgICAgICBUVUlfTEVBRElOR19aRVJPRVNfUkVHRVhQLFxuICAgICAgICApIHx8IFtgYF07XG4gICAgICAgIGNvbnN0IGxlYWRpbmdaZXJvc0Ftb3VudCA9IGxlYWRpbmdaZXJvc01hdGNoLmxlbmd0aDtcbiAgICAgICAgY29uc3QgaW50ZWdlckNhcHBlZFplcm9zQ2xlYW4gPSBpbnRlZ2VyQ2FwcGVkQ2xlYW5cbiAgICAgICAgICAgIC5yZXBsYWNlKC9eMCsoPyFcXC58JCkvLCBgYClcbiAgICAgICAgICAgIC50cmltKCk7XG4gICAgICAgIGNvbnN0IHdpdGhTZXBhcmF0b3IgPSBhZGRUaG91c2FuZHNTZXBhcmF0b3IoXG4gICAgICAgICAgICBpbnRlZ2VyQ2FwcGVkWmVyb3NDbGVhbixcbiAgICAgICAgICAgIHRob3VzYW5kU3ltYm9sLFxuICAgICAgICApO1xuICAgICAgICBjb25zdCBtYXNrID0gY29udmVydFRvTWFzayh3aXRoU2VwYXJhdG9yKTtcblxuICAgICAgICBpZiAoKGhhc0RlY2ltYWwgJiYgYWxsb3dEZWNpbWFsKSB8fCByZXF1aXJlRGVjaW1hbCkge1xuICAgICAgICAgICAgY29uc3QgZnJhY3Rpb24gPSBoYXNEZWNpbWFsXG4gICAgICAgICAgICAgICAgPyBjb252ZXJ0VG9NYXNrKFxuICAgICAgICAgICAgICAgICAgICAgIHJhd1ZhbHVlLnNsaWNlKGRlY2ltYWxJbmRleCArIDEpLnJlcGxhY2UoVFVJX05PTl9ESUdJVFNfUkVHRVhQLCBgYCksXG4gICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgOiBbXTtcbiAgICAgICAgICAgIGNvbnN0IGZyYWN0aW9uQ2FwcGVkID0gZGVjaW1hbExpbWl0XG4gICAgICAgICAgICAgICAgPyBmcmFjdGlvbi5zbGljZSgwLCBkZWNpbWFsTGltaXQpXG4gICAgICAgICAgICAgICAgOiBmcmFjdGlvbjtcblxuICAgICAgICAgICAgaWYgKHJhd1ZhbHVlW2RlY2ltYWxJbmRleF0gIT09IHR1aU90aGVyRGVjaW1hbFN5bWJvbChkZWNpbWFsU3ltYm9sKSkge1xuICAgICAgICAgICAgICAgIG1hc2sucHVzaChNQVNLX0NBUkVUX1RSQVApO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBtYXNrLnB1c2goZGVjaW1hbFN5bWJvbCwgTUFTS19DQVJFVF9UUkFQLCAuLi5mcmFjdGlvbkNhcHBlZCk7XG5cbiAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgTWF0aC5taW4oZGVjaW1hbExpbWl0IC0gZnJhY3Rpb25DYXBwZWQubGVuZ3RoLCAyMCk7IGkrKykge1xuICAgICAgICAgICAgICAgIG1hc2sucHVzaChUVUlfRElHSVRfUkVHRVhQKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGlzT25seVplcm9EaWdpdCA9IG1hc2subGVuZ3RoID09PSAxICYmIGludGVnZXJDYXBwZWRaZXJvc0NsZWFuID09PSBgMGA7XG5cbiAgICAgICAgaWYgKGlzTmVnYXRpdmUpIHtcbiAgICAgICAgICAgIGlmIChtYXNrLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgICAgIG1hc2sucHVzaChUVUlfRElHSVRfUkVHRVhQKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbWFzay51bnNoaWZ0KENIQVJfSFlQSEVOKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBwcmV2ZW50TGVhZGluZ1plcm9lcyhtYXNrLCBpc09ubHlaZXJvRGlnaXQsIGxlYWRpbmdaZXJvc0Ftb3VudCk7XG4gICAgfTtcbn1cblxuZnVuY3Rpb24gcHJldmVudExlYWRpbmdaZXJvZXMoXG4gICAgbWFzazogQXJyYXk8UmVnRXhwIHwgc3RyaW5nPixcbiAgICBpc09ubHlaZXJvRGlnaXQ6IGJvb2xlYW4gPSBmYWxzZSxcbiAgICBsZWFkaW5nWmVyb3NBbW91bnQ6IG51bWJlciA9IDAsXG4pOiBBcnJheTxSZWdFeHAgfCBzdHJpbmc+IHtcbiAgICBpZiAoaXNPbmx5WmVyb0RpZ2l0IHx8IGxlYWRpbmdaZXJvc0Ftb3VudCA9PT0gMCkge1xuICAgICAgICByZXR1cm4gbWFzaztcbiAgICB9XG5cbiAgICBjb25zdCBmaXJzdERpZ2l0SW5kZXggPSBtYXNrLmluZGV4T2YoVFVJX0RJR0lUX1JFR0VYUCk7XG5cbiAgICBpZiAoZmlyc3REaWdpdEluZGV4ID09PSAtMSkge1xuICAgICAgICByZXR1cm4gbWFzaztcbiAgICB9XG5cbiAgICBjb25zdCBzZWNvbmRNYXNrRGlnaXQgPSBtYXNrW2ZpcnN0RGlnaXRJbmRleCArIDFdO1xuICAgIGNvbnN0IGlzQ2FyZXRUcmFwID0gc2Vjb25kTWFza0RpZ2l0ID09PSBNQVNLX0NBUkVUX1RSQVA7XG5cbiAgICBpZiAoaXNDYXJldFRyYXAgJiYgbGVhZGluZ1plcm9zQW1vdW50ID09PSAxKSB7XG4gICAgICAgIHJldHVybiBtYXNrO1xuICAgIH1cblxuICAgIGlmIChpc0NhcmV0VHJhcCkge1xuICAgICAgICBtYXNrLnVuc2hpZnQoTk9OX1pFUk9fRElHSVQpO1xuXG4gICAgICAgIHJldHVybiBtYXNrO1xuICAgIH1cblxuICAgIG1hc2tbZmlyc3REaWdpdEluZGV4XSA9IE5PTl9aRVJPX0RJR0lUO1xuXG4gICAgcmV0dXJuIG1hc2s7XG59XG5cbmZ1bmN0aW9uIGdldERlY2ltYWxTeW1ib2xJbmRleChcbiAgICBzdHI6IHN0cmluZyxcbiAgICBkZWNpbWFsU3ltYm9sOiBUdWlEZWNpbWFsU3ltYm9sLFxuICAgIGF1dG9Db3JyZWN0RGVjaW1hbFN5bWJvbDogYm9vbGVhbixcbik6IG51bWJlciB7XG4gICAgaWYgKCFhdXRvQ29ycmVjdERlY2ltYWxTeW1ib2wpIHtcbiAgICAgICAgcmV0dXJuIHN0ci5sYXN0SW5kZXhPZihkZWNpbWFsU3ltYm9sKTtcbiAgICB9XG5cbiAgICByZXR1cm4gTWF0aC5tYXgoXG4gICAgICAgIHN0ci5sYXN0SW5kZXhPZihkZWNpbWFsU3ltYm9sKSxcbiAgICAgICAgc3RyLmxhc3RJbmRleE9mKHR1aU90aGVyRGVjaW1hbFN5bWJvbChkZWNpbWFsU3ltYm9sKSksXG4gICAgKTtcbn1cblxuZnVuY3Rpb24gaXNEZWNpbWFsU3ltYm9sKFxuICAgIHN0cjogc3RyaW5nLFxuICAgIGRlY2ltYWxTeW1ib2w6IFR1aURlY2ltYWxTeW1ib2wsXG4gICAgYXV0b0NvcnJlY3REZWNpbWFsU3ltYm9sOiBib29sZWFuLFxuKTogYm9vbGVhbiB7XG4gICAgaWYgKGF1dG9Db3JyZWN0RGVjaW1hbFN5bWJvbCkge1xuICAgICAgICByZXR1cm4gL15bLC5dJC8udGVzdChzdHIpO1xuICAgIH1cblxuICAgIHJldHVybiBzdHIgPT09IGRlY2ltYWxTeW1ib2w7XG59XG5cbmZ1bmN0aW9uIGNvbnZlcnRUb01hc2soc3RyTnVtYmVyOiBzdHJpbmcpOiBBcnJheTxSZWdFeHAgfCBzdHJpbmc+IHtcbiAgICByZXR1cm4gc3RyTnVtYmVyXG4gICAgICAgIC5zcGxpdChgYClcbiAgICAgICAgLm1hcChjaGFyID0+IChUVUlfRElHSVRfUkVHRVhQLnRlc3QoY2hhcikgPyBUVUlfRElHSVRfUkVHRVhQIDogY2hhcikpO1xufVxuXG5mdW5jdGlvbiBhZGRUaG91c2FuZHNTZXBhcmF0b3Ioc3RyTnVtYmVyOiBzdHJpbmcsIHRob3VzYW5kU3ltYm9sOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBzdHJOdW1iZXIubGVuZ3RoID4gM1xuICAgICAgICA/IC8vIFRPRE86IGludmVzdGlnYXRlIHRvIGRpc2FsbG93IHBvdGVudGlhbGx5IGNhdGFzdHJvcGhpYyBleHBvbmVudGlhbC10aW1lIHJlZ3VsYXIgZXhwcmVzc2lvbnMuXG4gICAgICAgICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHVuaWNvcm4vbm8tdW5zYWZlLXJlZ2V4XG4gICAgICAgICAgc3RyTnVtYmVyLnJlcGxhY2UoL1xcQig/PShcXGR7M30pKyg/IVxcZCkpL2csIHRob3VzYW5kU3ltYm9sKVxuICAgICAgICA6IHN0ck51bWJlcjtcbn1cbiJdfQ==
@@ -1,5 +1,9 @@
1
1
  import { TUI_DECIMAL_SYMBOLS } from '@taiga-ui/core/constants';
2
+ /**
3
+ * TODO: delete in v4.0
4
+ * @deprecated Use {@link https://maskito.dev/kit/number Number} from {@link https://github.com/taiga-family/maskito Maskito} instead
5
+ */
2
6
  export function tuiEnableAutoCorrectDecimalSymbol({ thousandSeparator, }) {
3
7
  return !TUI_DECIMAL_SYMBOLS.includes(thousandSeparator);
4
8
  }
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5hYmxlLWF1dG8tY29ycmVjdC1kZWNpbWFsLXN5bWJvbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvdXRpbHMvbWFzay9lbmFibGUtYXV0by1jb3JyZWN0LWRlY2ltYWwtc3ltYm9sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBTzdELE1BQU0sVUFBVSxpQ0FBaUMsQ0FBQyxFQUM5QyxpQkFBaUIsR0FDSztJQUN0QixPQUFPLENBQUMsbUJBQW1CLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLENBQUM7QUFDNUQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7VFVJX0RFQ0lNQUxfU1lNQk9MU30gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29uc3RhbnRzJztcbmltcG9ydCB7VHVpTnVtYmVyRm9ybWF0U2V0dGluZ3N9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2ludGVyZmFjZXMnO1xuXG4vKipcbiAqIFRPRE86IGRlbGV0ZSBpbiB2NC4wXG4gKiBAZGVwcmVjYXRlZCBVc2Uge0BsaW5rIGh0dHBzOi8vbWFza2l0by5kZXYva2l0L251bWJlciBOdW1iZXJ9IGZyb20ge0BsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS90YWlnYS1mYW1pbHkvbWFza2l0byBNYXNraXRvfSBpbnN0ZWFkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0dWlFbmFibGVBdXRvQ29ycmVjdERlY2ltYWxTeW1ib2woe1xuICAgIHRob3VzYW5kU2VwYXJhdG9yLFxufTogVHVpTnVtYmVyRm9ybWF0U2V0dGluZ3MpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIVRVSV9ERUNJTUFMX1NZTUJPTFMuaW5jbHVkZXModGhvdXNhbmRTZXBhcmF0b3IpO1xufVxuIl19
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5hYmxlLWF1dG8tY29ycmVjdC1kZWNpbWFsLXN5bWJvbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvdXRpbHMvbWFzay9lbmFibGUtYXV0by1jb3JyZWN0LWRlY2ltYWwtc3ltYm9sLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDBCQUEwQixDQUFDO0FBRzdEOzs7R0FHRztBQUNILE1BQU0sVUFBVSxpQ0FBaUMsQ0FBQyxFQUM5QyxpQkFBaUIsR0FDSztJQUN0QixPQUFPLENBQUMsbUJBQW1CLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLENBQUM7QUFDNUQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7VFVJX0RFQ0lNQUxfU1lNQk9MU30gZnJvbSAnQHRhaWdhLXVpL2NvcmUvY29uc3RhbnRzJztcbmltcG9ydCB7VHVpTnVtYmVyRm9ybWF0U2V0dGluZ3N9IGZyb20gJ0B0YWlnYS11aS9jb3JlL2ludGVyZmFjZXMnO1xuXG4vKipcbiAqIFRPRE86IGRlbGV0ZSBpbiB2NC4wXG4gKiBAZGVwcmVjYXRlZCBVc2Uge0BsaW5rIGh0dHBzOi8vbWFza2l0by5kZXYva2l0L251bWJlciBOdW1iZXJ9IGZyb20ge0BsaW5rIGh0dHBzOi8vZ2l0aHViLmNvbS90YWlnYS1mYW1pbHkvbWFza2l0byBNYXNraXRvfSBpbnN0ZWFkXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0dWlFbmFibGVBdXRvQ29ycmVjdERlY2ltYWxTeW1ib2woe1xuICAgIHRob3VzYW5kU2VwYXJhdG9yLFxufTogVHVpTnVtYmVyRm9ybWF0U2V0dGluZ3MpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIVRVSV9ERUNJTUFMX1NZTUJPTFMuaW5jbHVkZXModGhvdXNhbmRTZXBhcmF0b3IpO1xufVxuIl19