@taiga-ui/core 2.26.0 → 2.29.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 (336) hide show
  1. package/README.md +4 -5
  2. package/abstract/abstract-dropdown.d.ts +1 -1
  3. package/abstract/taiga-ui-core-abstract.metadata.json +1 -1
  4. package/bundles/taiga-ui-core-abstract.umd.js.map +1 -1
  5. package/bundles/taiga-ui-core-abstract.umd.min.js.map +1 -1
  6. package/bundles/taiga-ui-core-components-data-list.umd.js +20 -20
  7. package/bundles/taiga-ui-core-components-data-list.umd.js.map +1 -1
  8. package/bundles/taiga-ui-core-components-data-list.umd.min.js +1 -1
  9. package/bundles/taiga-ui-core-components-data-list.umd.min.js.map +1 -1
  10. package/bundles/taiga-ui-core-components-dialog.umd.js +1 -1
  11. package/bundles/taiga-ui-core-components-dialog.umd.min.js +2 -2
  12. package/bundles/taiga-ui-core-components-dialog.umd.min.js.map +1 -1
  13. package/bundles/taiga-ui-core-components-dropdown-box.umd.js.map +1 -1
  14. package/bundles/taiga-ui-core-components-dropdown-box.umd.min.js.map +1 -1
  15. package/bundles/taiga-ui-core-components-error.umd.js.map +1 -1
  16. package/bundles/taiga-ui-core-components-error.umd.min.js.map +1 -1
  17. package/bundles/taiga-ui-core-components-expand.umd.js +4 -4
  18. package/bundles/taiga-ui-core-components-expand.umd.js.map +1 -1
  19. package/bundles/taiga-ui-core-components-expand.umd.min.js +1 -1
  20. package/bundles/taiga-ui-core-components-expand.umd.min.js.map +1 -1
  21. package/bundles/taiga-ui-core-components-hints-host.umd.js +6 -6
  22. package/bundles/taiga-ui-core-components-hints-host.umd.js.map +1 -1
  23. package/bundles/taiga-ui-core-components-hints-host.umd.min.js +1 -1
  24. package/bundles/taiga-ui-core-components-hints-host.umd.min.js.map +1 -1
  25. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js +9 -9
  26. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.js.map +1 -1
  27. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.min.js +1 -1
  28. package/bundles/taiga-ui-core-components-hosted-dropdown.umd.min.js.map +1 -1
  29. package/bundles/taiga-ui-core-components-link.umd.js +1 -1
  30. package/bundles/taiga-ui-core-components-link.umd.min.js +2 -2
  31. package/bundles/taiga-ui-core-components-link.umd.min.js.map +1 -1
  32. package/bundles/taiga-ui-core-components-notification.umd.js.map +1 -1
  33. package/bundles/taiga-ui-core-components-notification.umd.min.js.map +1 -1
  34. package/bundles/taiga-ui-core-components-primitive-calendar.umd.js +2 -2
  35. package/bundles/taiga-ui-core-components-primitive-calendar.umd.js.map +1 -1
  36. package/bundles/taiga-ui-core-components-primitive-calendar.umd.min.js +1 -1
  37. package/bundles/taiga-ui-core-components-primitive-calendar.umd.min.js.map +1 -1
  38. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.js +2 -15
  39. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.js.map +1 -1
  40. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.min.js +1 -1
  41. package/bundles/taiga-ui-core-components-primitive-checkbox.umd.min.js.map +1 -1
  42. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.js +3 -3
  43. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.js.map +1 -1
  44. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.min.js +1 -1
  45. package/bundles/taiga-ui-core-components-primitive-spin-button.umd.min.js.map +1 -1
  46. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js +17 -14
  47. package/bundles/taiga-ui-core-components-primitive-textfield.umd.js.map +1 -1
  48. package/bundles/taiga-ui-core-components-primitive-textfield.umd.min.js +1 -1
  49. package/bundles/taiga-ui-core-components-primitive-textfield.umd.min.js.map +1 -1
  50. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.js +3 -3
  51. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.js.map +1 -1
  52. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.min.js +1 -1
  53. package/bundles/taiga-ui-core-components-primitive-year-picker.umd.min.js.map +1 -1
  54. package/bundles/taiga-ui-core-components-root.umd.js +12 -7
  55. package/bundles/taiga-ui-core-components-root.umd.js.map +1 -1
  56. package/bundles/taiga-ui-core-components-root.umd.min.js +2 -2
  57. package/bundles/taiga-ui-core-components-root.umd.min.js.map +1 -1
  58. package/bundles/taiga-ui-core-components-scrollbar.umd.js +2 -2
  59. package/bundles/taiga-ui-core-components-scrollbar.umd.js.map +1 -1
  60. package/bundles/taiga-ui-core-components-scrollbar.umd.min.js +1 -1
  61. package/bundles/taiga-ui-core-components-scrollbar.umd.min.js.map +1 -1
  62. package/bundles/taiga-ui-core-components-svg.umd.js +11 -6
  63. package/bundles/taiga-ui-core-components-svg.umd.js.map +1 -1
  64. package/bundles/taiga-ui-core-components-svg.umd.min.js +1 -1
  65. package/bundles/taiga-ui-core-components-svg.umd.min.js.map +1 -1
  66. package/bundles/taiga-ui-core-components-tooltip.umd.js +1 -1
  67. package/bundles/taiga-ui-core-components-tooltip.umd.js.map +1 -1
  68. package/bundles/taiga-ui-core-components-tooltip.umd.min.js +1 -1
  69. package/bundles/taiga-ui-core-components-tooltip.umd.min.js.map +1 -1
  70. package/bundles/taiga-ui-core-constants.umd.js +1 -1
  71. package/bundles/taiga-ui-core-constants.umd.js.map +1 -1
  72. package/bundles/taiga-ui-core-constants.umd.min.js +1 -1
  73. package/bundles/taiga-ui-core-constants.umd.min.js.map +1 -1
  74. package/bundles/taiga-ui-core-directives-hint.umd.js +1 -1
  75. package/bundles/taiga-ui-core-directives-hint.umd.js.map +1 -1
  76. package/bundles/taiga-ui-core-directives-hint.umd.min.js +1 -1
  77. package/bundles/taiga-ui-core-directives-hint.umd.min.js.map +1 -1
  78. package/bundles/taiga-ui-core-directives-pointer-hint.umd.js +1 -1
  79. package/bundles/taiga-ui-core-directives-pointer-hint.umd.js.map +1 -1
  80. package/bundles/taiga-ui-core-directives-pointer-hint.umd.min.js +1 -1
  81. package/bundles/taiga-ui-core-directives-pointer-hint.umd.min.js.map +1 -1
  82. package/bundles/taiga-ui-core-enums.umd.js +1 -0
  83. package/bundles/taiga-ui-core-enums.umd.js.map +1 -1
  84. package/bundles/taiga-ui-core-enums.umd.min.js +1 -1
  85. package/bundles/taiga-ui-core-enums.umd.min.js.map +1 -1
  86. package/bundles/taiga-ui-core-modules-notifications.umd.js +1 -1
  87. package/bundles/taiga-ui-core-modules-notifications.umd.js.map +1 -1
  88. package/bundles/taiga-ui-core-modules-notifications.umd.min.js +1 -1
  89. package/bundles/taiga-ui-core-modules-notifications.umd.min.js.map +1 -1
  90. package/bundles/taiga-ui-core-providers.umd.js +19 -4
  91. package/bundles/taiga-ui-core-providers.umd.js.map +1 -1
  92. package/bundles/taiga-ui-core-providers.umd.min.js +1 -1
  93. package/bundles/taiga-ui-core-providers.umd.min.js.map +1 -1
  94. package/bundles/taiga-ui-core-services.umd.js +1 -1
  95. package/bundles/taiga-ui-core-services.umd.js.map +1 -1
  96. package/bundles/taiga-ui-core-services.umd.min.js +1 -1
  97. package/bundles/taiga-ui-core-services.umd.min.js.map +1 -1
  98. package/bundles/taiga-ui-core-tokens.umd.js +12 -4
  99. package/bundles/taiga-ui-core-tokens.umd.js.map +1 -1
  100. package/bundles/taiga-ui-core-tokens.umd.min.js +2 -2
  101. package/bundles/taiga-ui-core-tokens.umd.min.js.map +1 -1
  102. package/bundles/taiga-ui-core-utils-mask.umd.js +5 -1
  103. package/bundles/taiga-ui-core-utils-mask.umd.js.map +1 -1
  104. package/bundles/taiga-ui-core-utils-mask.umd.min.js +1 -1
  105. package/bundles/taiga-ui-core-utils-mask.umd.min.js.map +1 -1
  106. package/components/data-list/data-list.component.d.ts +4 -4
  107. package/components/data-list/taiga-ui-core-components-data-list.metadata.json +1 -1
  108. package/components/dialog/taiga-ui-core-components-dialog.metadata.json +1 -1
  109. package/components/dropdown-box/dropdown-box.component.d.ts +2 -2
  110. package/components/dropdown-box/taiga-ui-core-components-dropdown-box.metadata.json +1 -1
  111. package/components/error/taiga-ui-core-components-error.metadata.json +1 -1
  112. package/components/expand/expand.component.d.ts +2 -2
  113. package/components/expand/taiga-ui-core-components-expand.metadata.json +1 -1
  114. package/components/hints-host/hint-box/hint-box.component.d.ts +1 -1
  115. package/components/hints-host/taiga-ui-core-components-hints-host.metadata.json +1 -1
  116. package/components/hosted-dropdown/hosted-dropdown.component.d.ts +3 -3
  117. package/components/hosted-dropdown/taiga-ui-core-components-hosted-dropdown.metadata.json +1 -1
  118. package/components/link/taiga-ui-core-components-link.metadata.json +1 -1
  119. package/components/notification/taiga-ui-core-components-notification.metadata.json +1 -1
  120. package/components/primitive-calendar/primitive-calendar.component.d.ts +3 -3
  121. package/components/primitive-calendar/taiga-ui-core-components-primitive-calendar.metadata.json +1 -1
  122. package/components/primitive-checkbox/primitive-checkbox.component.d.ts +1 -3
  123. package/components/primitive-checkbox/taiga-ui-core-components-primitive-checkbox.metadata.json +1 -1
  124. package/components/primitive-spin-button/primitive-spin-button.component.d.ts +1 -1
  125. package/components/primitive-spin-button/taiga-ui-core-components-primitive-spin-button.metadata.json +1 -1
  126. package/components/primitive-textfield/primitive-textfield.component.d.ts +2 -3
  127. package/components/primitive-textfield/taiga-ui-core-components-primitive-textfield.metadata.json +1 -1
  128. package/components/primitive-textfield/value-decoration/value-decoration.component.d.ts +2 -1
  129. package/components/primitive-year-picker/primitive-year-picker.component.d.ts +3 -3
  130. package/components/primitive-year-picker/taiga-ui-core-components-primitive-year-picker.metadata.json +1 -1
  131. package/components/root/root.component.d.ts +2 -1
  132. package/components/root/taiga-ui-core-components-root.metadata.json +1 -1
  133. package/components/scrollbar/scrollbar.component.d.ts +2 -2
  134. package/components/scrollbar/taiga-ui-core-components-scrollbar.metadata.json +1 -1
  135. package/components/svg/svg.component.d.ts +6 -4
  136. package/components/svg/taiga-ui-core-components-svg.metadata.json +1 -1
  137. package/components/tooltip/taiga-ui-core-components-tooltip.metadata.json +1 -1
  138. package/components/tooltip/tooltip.component.d.ts +1 -1
  139. package/constants/taiga-ui-core-constants.metadata.json +1 -1
  140. package/constants/version.d.ts +1 -1
  141. package/directives/hint/hint.directive.d.ts +1 -1
  142. package/directives/hint/taiga-ui-core-directives-hint.metadata.json +1 -1
  143. package/directives/pointer-hint/pointer-hint.directive.d.ts +1 -1
  144. package/directives/pointer-hint/taiga-ui-core-directives-pointer-hint.metadata.json +1 -1
  145. package/enums/appearance.d.ts +1 -0
  146. package/enums/taiga-ui-core-enums.metadata.json +1 -1
  147. package/esm2015/abstract/abstract-dropdown.js +1 -1
  148. package/esm2015/components/data-list/data-list.component.js +17 -17
  149. package/esm2015/components/dialog/dialog.component.js +1 -1
  150. package/esm2015/components/dropdown-box/dropdown-box.component.js +1 -1
  151. package/esm2015/components/error/error.component.js +1 -1
  152. package/esm2015/components/expand/expand.component.js +5 -5
  153. package/esm2015/components/hints-host/hint-box/hint-box.component.js +7 -7
  154. package/esm2015/components/hosted-dropdown/hosted-dropdown.component.js +10 -10
  155. package/esm2015/components/link/link.component.js +1 -1
  156. package/esm2015/components/notification/notification.component.js +1 -1
  157. package/esm2015/components/primitive-calendar/primitive-calendar.component.js +3 -3
  158. package/esm2015/components/primitive-checkbox/primitive-checkbox.component.js +4 -13
  159. package/esm2015/components/primitive-spin-button/primitive-spin-button.component.js +4 -4
  160. package/esm2015/components/primitive-textfield/primitive-textfield.component.js +7 -10
  161. package/esm2015/components/primitive-textfield/value-decoration/value-decoration.component.js +9 -3
  162. package/esm2015/components/primitive-year-picker/primitive-year-picker.component.js +4 -4
  163. package/esm2015/components/root/root.component.js +12 -6
  164. package/esm2015/components/scrollbar/scrollbar.component.js +3 -3
  165. package/esm2015/components/svg/svg.component.js +13 -8
  166. package/esm2015/components/tooltip/tooltip.component.js +2 -2
  167. package/esm2015/constants/version.js +2 -2
  168. package/esm2015/directives/hint/hint.directive.js +2 -2
  169. package/esm2015/directives/pointer-hint/pointer-hint.directive.js +2 -2
  170. package/esm2015/enums/appearance.js +2 -1
  171. package/esm2015/modules/notifications/notification-alert/notification-alert.component.js +1 -1
  172. package/esm2015/modules/notifications/notifications-host/notifications-host.component.js +1 -1
  173. package/esm2015/modules/notifications/notifications.service.js +1 -1
  174. package/esm2015/providers/index.js +2 -1
  175. package/esm2015/providers/is-mobile-resolution.provider.js +17 -0
  176. package/esm2015/services/hint.service.js +1 -1
  177. package/esm2015/services/svg.service.js +2 -2
  178. package/esm2015/tokens/index.js +3 -1
  179. package/esm2015/tokens/is-mobile-resolution.js +3 -0
  180. package/esm2015/tokens/svg-src-processor.js +6 -0
  181. package/esm2015/utils/mask/create-auto-corrected-money-pipe.js +6 -2
  182. package/esm5/abstract/abstract-dropdown.js +1 -1
  183. package/esm5/components/data-list/data-list.component.js +21 -21
  184. package/esm5/components/dialog/dialog.component.js +1 -1
  185. package/esm5/components/dropdown-box/dropdown-box.component.js +1 -1
  186. package/esm5/components/error/error.component.js +1 -1
  187. package/esm5/components/expand/expand.component.js +5 -5
  188. package/esm5/components/hints-host/hint-box/hint-box.component.js +7 -7
  189. package/esm5/components/hosted-dropdown/hosted-dropdown.component.js +10 -10
  190. package/esm5/components/link/link.component.js +1 -1
  191. package/esm5/components/notification/notification.component.js +1 -1
  192. package/esm5/components/primitive-calendar/primitive-calendar.component.js +3 -3
  193. package/esm5/components/primitive-checkbox/primitive-checkbox.component.js +4 -17
  194. package/esm5/components/primitive-spin-button/primitive-spin-button.component.js +4 -4
  195. package/esm5/components/primitive-textfield/primitive-textfield.component.js +7 -14
  196. package/esm5/components/primitive-textfield/value-decoration/value-decoration.component.js +13 -3
  197. package/esm5/components/primitive-year-picker/primitive-year-picker.component.js +4 -4
  198. package/esm5/components/root/root.component.js +12 -6
  199. package/esm5/components/scrollbar/scrollbar.component.js +3 -3
  200. package/esm5/components/svg/svg.component.js +13 -8
  201. package/esm5/components/tooltip/tooltip.component.js +2 -2
  202. package/esm5/constants/version.js +2 -2
  203. package/esm5/directives/hint/hint.directive.js +2 -2
  204. package/esm5/directives/pointer-hint/pointer-hint.directive.js +2 -2
  205. package/esm5/enums/appearance.js +2 -1
  206. package/esm5/modules/notifications/notification-alert/notification-alert.component.js +1 -1
  207. package/esm5/modules/notifications/notifications-host/notifications-host.component.js +1 -1
  208. package/esm5/modules/notifications/notifications.service.js +1 -1
  209. package/esm5/providers/index.js +2 -1
  210. package/esm5/providers/is-mobile-resolution.provider.js +19 -0
  211. package/esm5/services/hint.service.js +1 -1
  212. package/esm5/services/svg.service.js +2 -2
  213. package/esm5/tokens/index.js +3 -1
  214. package/esm5/tokens/is-mobile-resolution.js +3 -0
  215. package/esm5/tokens/svg-src-processor.js +6 -0
  216. package/esm5/utils/mask/create-auto-corrected-money-pipe.js +6 -2
  217. package/fesm2015/taiga-ui-core-abstract.js.map +1 -1
  218. package/fesm2015/taiga-ui-core-components-data-list.js +17 -17
  219. package/fesm2015/taiga-ui-core-components-data-list.js.map +1 -1
  220. package/fesm2015/taiga-ui-core-components-dialog.js +1 -1
  221. package/fesm2015/taiga-ui-core-components-dropdown-box.js.map +1 -1
  222. package/fesm2015/taiga-ui-core-components-error.js.map +1 -1
  223. package/fesm2015/taiga-ui-core-components-expand.js +5 -5
  224. package/fesm2015/taiga-ui-core-components-expand.js.map +1 -1
  225. package/fesm2015/taiga-ui-core-components-hints-host.js +7 -7
  226. package/fesm2015/taiga-ui-core-components-hints-host.js.map +1 -1
  227. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js +10 -10
  228. package/fesm2015/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
  229. package/fesm2015/taiga-ui-core-components-link.js +1 -1
  230. package/fesm2015/taiga-ui-core-components-notification.js.map +1 -1
  231. package/fesm2015/taiga-ui-core-components-primitive-calendar.js +3 -3
  232. package/fesm2015/taiga-ui-core-components-primitive-calendar.js.map +1 -1
  233. package/fesm2015/taiga-ui-core-components-primitive-checkbox.js +3 -12
  234. package/fesm2015/taiga-ui-core-components-primitive-checkbox.js.map +1 -1
  235. package/fesm2015/taiga-ui-core-components-primitive-spin-button.js +4 -4
  236. package/fesm2015/taiga-ui-core-components-primitive-spin-button.js.map +1 -1
  237. package/fesm2015/taiga-ui-core-components-primitive-textfield.js +14 -11
  238. package/fesm2015/taiga-ui-core-components-primitive-textfield.js.map +1 -1
  239. package/fesm2015/taiga-ui-core-components-primitive-year-picker.js +3 -3
  240. package/fesm2015/taiga-ui-core-components-primitive-year-picker.js.map +1 -1
  241. package/fesm2015/taiga-ui-core-components-root.js +11 -5
  242. package/fesm2015/taiga-ui-core-components-root.js.map +1 -1
  243. package/fesm2015/taiga-ui-core-components-scrollbar.js +2 -2
  244. package/fesm2015/taiga-ui-core-components-scrollbar.js.map +1 -1
  245. package/fesm2015/taiga-ui-core-components-svg.js +12 -7
  246. package/fesm2015/taiga-ui-core-components-svg.js.map +1 -1
  247. package/fesm2015/taiga-ui-core-components-tooltip.js +1 -1
  248. package/fesm2015/taiga-ui-core-components-tooltip.js.map +1 -1
  249. package/fesm2015/taiga-ui-core-constants.js +1 -1
  250. package/fesm2015/taiga-ui-core-constants.js.map +1 -1
  251. package/fesm2015/taiga-ui-core-directives-hint.js +1 -1
  252. package/fesm2015/taiga-ui-core-directives-hint.js.map +1 -1
  253. package/fesm2015/taiga-ui-core-directives-pointer-hint.js +1 -1
  254. package/fesm2015/taiga-ui-core-directives-pointer-hint.js.map +1 -1
  255. package/fesm2015/taiga-ui-core-enums.js +1 -0
  256. package/fesm2015/taiga-ui-core-enums.js.map +1 -1
  257. package/fesm2015/taiga-ui-core-modules-notifications.js +1 -1
  258. package/fesm2015/taiga-ui-core-modules-notifications.js.map +1 -1
  259. package/fesm2015/taiga-ui-core-providers.js +18 -6
  260. package/fesm2015/taiga-ui-core-providers.js.map +1 -1
  261. package/fesm2015/taiga-ui-core-services.js +1 -1
  262. package/fesm2015/taiga-ui-core-services.js.map +1 -1
  263. package/fesm2015/taiga-ui-core-tokens.js +8 -1
  264. package/fesm2015/taiga-ui-core-tokens.js.map +1 -1
  265. package/fesm2015/taiga-ui-core-utils-mask.js +5 -1
  266. package/fesm2015/taiga-ui-core-utils-mask.js.map +1 -1
  267. package/fesm5/taiga-ui-core-abstract.js.map +1 -1
  268. package/fesm5/taiga-ui-core-components-data-list.js +21 -21
  269. package/fesm5/taiga-ui-core-components-data-list.js.map +1 -1
  270. package/fesm5/taiga-ui-core-components-dialog.js +1 -1
  271. package/fesm5/taiga-ui-core-components-dropdown-box.js.map +1 -1
  272. package/fesm5/taiga-ui-core-components-error.js.map +1 -1
  273. package/fesm5/taiga-ui-core-components-expand.js +5 -5
  274. package/fesm5/taiga-ui-core-components-expand.js.map +1 -1
  275. package/fesm5/taiga-ui-core-components-hints-host.js +7 -7
  276. package/fesm5/taiga-ui-core-components-hints-host.js.map +1 -1
  277. package/fesm5/taiga-ui-core-components-hosted-dropdown.js +10 -10
  278. package/fesm5/taiga-ui-core-components-hosted-dropdown.js.map +1 -1
  279. package/fesm5/taiga-ui-core-components-link.js +1 -1
  280. package/fesm5/taiga-ui-core-components-notification.js.map +1 -1
  281. package/fesm5/taiga-ui-core-components-primitive-calendar.js +3 -3
  282. package/fesm5/taiga-ui-core-components-primitive-calendar.js.map +1 -1
  283. package/fesm5/taiga-ui-core-components-primitive-checkbox.js +3 -16
  284. package/fesm5/taiga-ui-core-components-primitive-checkbox.js.map +1 -1
  285. package/fesm5/taiga-ui-core-components-primitive-spin-button.js +4 -4
  286. package/fesm5/taiga-ui-core-components-primitive-spin-button.js.map +1 -1
  287. package/fesm5/taiga-ui-core-components-primitive-textfield.js +18 -15
  288. package/fesm5/taiga-ui-core-components-primitive-textfield.js.map +1 -1
  289. package/fesm5/taiga-ui-core-components-primitive-year-picker.js +3 -3
  290. package/fesm5/taiga-ui-core-components-primitive-year-picker.js.map +1 -1
  291. package/fesm5/taiga-ui-core-components-root.js +11 -5
  292. package/fesm5/taiga-ui-core-components-root.js.map +1 -1
  293. package/fesm5/taiga-ui-core-components-scrollbar.js +2 -2
  294. package/fesm5/taiga-ui-core-components-scrollbar.js.map +1 -1
  295. package/fesm5/taiga-ui-core-components-svg.js +12 -7
  296. package/fesm5/taiga-ui-core-components-svg.js.map +1 -1
  297. package/fesm5/taiga-ui-core-components-tooltip.js +1 -1
  298. package/fesm5/taiga-ui-core-components-tooltip.js.map +1 -1
  299. package/fesm5/taiga-ui-core-constants.js +1 -1
  300. package/fesm5/taiga-ui-core-constants.js.map +1 -1
  301. package/fesm5/taiga-ui-core-directives-hint.js +1 -1
  302. package/fesm5/taiga-ui-core-directives-hint.js.map +1 -1
  303. package/fesm5/taiga-ui-core-directives-pointer-hint.js +1 -1
  304. package/fesm5/taiga-ui-core-directives-pointer-hint.js.map +1 -1
  305. package/fesm5/taiga-ui-core-enums.js +1 -0
  306. package/fesm5/taiga-ui-core-enums.js.map +1 -1
  307. package/fesm5/taiga-ui-core-modules-notifications.js +1 -1
  308. package/fesm5/taiga-ui-core-modules-notifications.js.map +1 -1
  309. package/fesm5/taiga-ui-core-providers.js +20 -6
  310. package/fesm5/taiga-ui-core-providers.js.map +1 -1
  311. package/fesm5/taiga-ui-core-services.js +1 -1
  312. package/fesm5/taiga-ui-core-services.js.map +1 -1
  313. package/fesm5/taiga-ui-core-tokens.js +8 -1
  314. package/fesm5/taiga-ui-core-tokens.js.map +1 -1
  315. package/fesm5/taiga-ui-core-utils-mask.js +5 -1
  316. package/fesm5/taiga-ui-core-utils-mask.js.map +1 -1
  317. package/modules/notifications/taiga-ui-core-modules-notifications.metadata.json +1 -1
  318. package/package.json +5 -5
  319. package/providers/index.d.ts +1 -0
  320. package/providers/is-mobile-resolution.provider.d.ts +5 -0
  321. package/providers/taiga-ui-core-providers.metadata.json +1 -1
  322. package/services/hint.service.d.ts +3 -3
  323. package/services/svg.service.d.ts +1 -1
  324. package/styles/theme/variables.less +1 -1
  325. package/styles/theme/wrapper/accent.less +31 -0
  326. package/styles/theme/wrapper/icon.less +1 -0
  327. package/styles/theme/wrapper/outline.less +1 -0
  328. package/styles/theme/wrapper/primary.less +1 -0
  329. package/styles/theme/wrapper/secondary.less +1 -0
  330. package/styles/theme/wrapper/whiteblock.less +2 -0
  331. package/styles/theme/wrapper.less +1 -0
  332. package/tokens/index.d.ts +2 -0
  333. package/tokens/is-mobile-resolution.d.ts +3 -0
  334. package/tokens/svg-src-processor.d.ts +3 -0
  335. package/tokens/taiga-ui-core-tokens.metadata.json +1 -1
  336. package/utils/mask/create-auto-corrected-money-pipe.d.ts +1 -1
@@ -4,6 +4,7 @@ import { iconsPathFactory } from '@taiga-ui/core/utils';
4
4
  import { CHAR_NO_BREAK_SPACE, TUI_SANITIZER as TUI_SANITIZER$1 } from '@taiga-ui/cdk';
5
5
  import { __spread } from 'tslib';
6
6
  import { map } from 'rxjs/operators';
7
+ import { identity } from 'rxjs';
7
8
 
8
9
  var TUI_ANIMATIONS_DURATION = new InjectionToken('Duration of all Taiga UI animations in ms', {
9
10
  factory: function () { return 300; },
@@ -62,6 +63,8 @@ var TUI_ICONS_PATH = new InjectionToken('A handler to retrieve USE id for icon b
62
63
  factory: function () { return iconsPathFactory('assets/taiga-ui/icons/'); },
63
64
  });
64
65
 
66
+ var TUI_IS_MOBILE_RES = new InjectionToken('Mobile resolution stream for private providers');
67
+
65
68
  var TUI_MEDIA = new InjectionToken('Token for media constant', {
66
69
  factory: function () { return ({
67
70
  mobile: 768,
@@ -114,6 +117,10 @@ var TUI_SANITIZER = TUI_SANITIZER$1;
114
117
 
115
118
  var TUI_SCROLL_REF = new InjectionToken('Scrollable container');
116
119
 
120
+ var TUI_SVG_SRC_PROCESSOR = new InjectionToken('Source path processor for svg', {
121
+ factory: function () { return identity; },
122
+ });
123
+
117
124
  var TUI_TEXTFIELD_APPEARANCE = new InjectionToken('Appearance for inputs', {
118
125
  factory: function () { return "textfield" /* Textfield */; },
119
126
  });
@@ -124,5 +131,5 @@ var TUI_VALUE_ACCESSOR = new InjectionToken('Buffer token to pass NG_VALUE_ACCES
124
131
  * Generated bundle index. Do not edit.
125
132
  */
126
133
 
127
- export { TUI_ANIMATIONS_DURATION, TUI_ANIMATION_OPTIONS, TUI_ASSERT_ENABLED, TUI_CLOSE_WORD, TUI_DATA_LIST_ACCESSOR, TUI_DATA_LIST_HOST, TUI_DEFAULT_ERROR_MESSAGE, TUI_DOCUMENT_OR_SHADOW_ROOT, TUI_DROPDOWN_DIRECTIVE, TUI_ELEMENT_REF, TUI_FIRST_DAY_OF_WEEK, TUI_ICONS, TUI_ICONS_PATH, TUI_MEDIA, TUI_MODE, TUI_MONTHS, TUI_NOTHING_FOUND_MESSAGE, TUI_NOTIFICATION_DEFAULT_OPTIONS, TUI_NOTIFICATION_OPTIONS, TUI_NUMBER_FORMAT, TUI_OPTION_CONTENT, TUI_ORDERED_SHORT_WEEK_DAYS, TUI_SANITIZER, TUI_SCROLL_REF, TUI_SHORT_WEEK_DAYS, TUI_SPIN_TEXTS, TUI_TEXTFIELD_APPEARANCE, TUI_VALUE_ACCESSOR, convertToSundayFirstWeekFormat };
134
+ export { TUI_ANIMATIONS_DURATION, TUI_ANIMATION_OPTIONS, TUI_ASSERT_ENABLED, TUI_CLOSE_WORD, TUI_DATA_LIST_ACCESSOR, TUI_DATA_LIST_HOST, TUI_DEFAULT_ERROR_MESSAGE, TUI_DOCUMENT_OR_SHADOW_ROOT, TUI_DROPDOWN_DIRECTIVE, TUI_ELEMENT_REF, TUI_FIRST_DAY_OF_WEEK, TUI_ICONS, TUI_ICONS_PATH, TUI_IS_MOBILE_RES, TUI_MEDIA, TUI_MODE, TUI_MONTHS, TUI_NOTHING_FOUND_MESSAGE, TUI_NOTIFICATION_DEFAULT_OPTIONS, TUI_NOTIFICATION_OPTIONS, TUI_NUMBER_FORMAT, TUI_OPTION_CONTENT, TUI_ORDERED_SHORT_WEEK_DAYS, TUI_SANITIZER, TUI_SCROLL_REF, TUI_SHORT_WEEK_DAYS, TUI_SPIN_TEXTS, TUI_SVG_SRC_PROCESSOR, TUI_TEXTFIELD_APPEARANCE, TUI_VALUE_ACCESSOR, convertToSundayFirstWeekFormat };
128
135
  //# sourceMappingURL=taiga-ui-core-tokens.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-tokens.js","sources":["ng://@taiga-ui/core/tokens/animations-duration.ts","ng://@taiga-ui/core/tokens/animation-options.ts","ng://@taiga-ui/core/tokens/assert-enabled.ts","ng://@taiga-ui/core/tokens/data-list-accessor.ts","ng://@taiga-ui/core/tokens/data-list-host.ts","ng://@taiga-ui/core/tokens/document-or-shadow-root.ts","ng://@taiga-ui/core/tokens/dropdown-directive.ts","ng://@taiga-ui/core/tokens/element-ref.ts","ng://@taiga-ui/core/tokens/first-day-of-week.ts","ng://@taiga-ui/core/tokens/i18n.ts","ng://@taiga-ui/core/tokens/icons.ts","ng://@taiga-ui/core/tokens/icons-path.ts","ng://@taiga-ui/core/tokens/media.ts","ng://@taiga-ui/core/tokens/mode.ts","ng://@taiga-ui/core/tokens/notification-options.ts","ng://@taiga-ui/core/tokens/number-format.ts","ng://@taiga-ui/core/tokens/option-content.ts","ng://@taiga-ui/core/tokens/ordered-short-week-days.ts","ng://@taiga-ui/core/tokens/sanitizer.ts","ng://@taiga-ui/core/tokens/scroll-ref.ts","ng://@taiga-ui/core/tokens/textfield-appearance.ts","ng://@taiga-ui/core/tokens/value-accessor.ts","ng://@taiga-ui/core/tokens/taiga-ui-core-tokens.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\n\nexport const TUI_ANIMATIONS_DURATION = new InjectionToken<number>(\n 'Duration of all Taiga UI animations in ms',\n {\n factory: () => 300,\n },\n);\n","import {AnimationOptions} from '@angular/animations';\nimport {inject, InjectionToken} from '@angular/core';\n\nimport {TUI_ANIMATIONS_DURATION} from './animations-duration';\n\nexport const TUI_ANIMATION_OPTIONS = new InjectionToken<AnimationOptions>(\n 'Options for Taiga UI animations',\n {\n factory: () => ({\n params: {\n duration: inject(TUI_ANIMATIONS_DURATION),\n },\n }),\n },\n);\n","import {InjectionToken, isDevMode} from '@angular/core';\n\nexport const TUI_ASSERT_ENABLED = new InjectionToken(\n 'Flag to enable assertions across Taiga UI',\n {\n factory: () => isDevMode(),\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiDataListAccessor} from '@taiga-ui/core/interfaces';\n\nexport const TUI_DATA_LIST_ACCESSOR = new InjectionToken<TuiDataListAccessor>(\n 'Accessor for options',\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiDataListHost} from '@taiga-ui/core/interfaces';\n\nexport const TUI_DATA_LIST_HOST = new InjectionToken<TuiDataListHost<any>>(\n 'DataList controller',\n);\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_DOCUMENT_OR_SHADOW_ROOT = new InjectionToken<DocumentOrShadowRoot>(\n 'Document or ShadowRoot',\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiDropdown} from '@taiga-ui/core/interfaces';\n\nexport const TUI_DROPDOWN_DIRECTIVE = new InjectionToken<TuiDropdown>(\n 'Directive controlling TuiDropdownBoxComponent',\n);\n","import {ElementRef, InjectionToken} from '@angular/core';\n\nexport const TUI_ELEMENT_REF = new InjectionToken<ElementRef>(\n 'ElementRef when you cannot use @Input for single time injection',\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiDayOfWeek} from '@taiga-ui/cdk';\n\nexport const TUI_FIRST_DAY_OF_WEEK = new InjectionToken<TuiDayOfWeek>(\n 'The first day of the week index',\n {\n factory: () => TuiDayOfWeek.Monday,\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {extractI18n} from '@taiga-ui/i18n';\n\nexport const TUI_MONTHS = new InjectionToken('Localized months names', {\n factory: extractI18n('months'),\n});\n\nexport const TUI_CLOSE_WORD = new InjectionToken(`i18n 'close' word`, {\n factory: extractI18n('close'),\n});\n\nexport const TUI_NOTHING_FOUND_MESSAGE = new InjectionToken(\n `i18n 'Nothing found' message`,\n {\n factory: extractI18n('nothingFoundMessage'),\n },\n);\n\nexport const TUI_DEFAULT_ERROR_MESSAGE = new InjectionToken(`i18n of error message`, {\n factory: extractI18n('defaultErrorMessage'),\n});\n\nexport const TUI_SPIN_TEXTS = new InjectionToken('spin i18n texts', {\n factory: extractI18n('spinTexts'),\n});\n\nexport const TUI_SHORT_WEEK_DAYS = new InjectionToken('calendars i18n texts', {\n factory: extractI18n('shortWeekDays'),\n});\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_ICONS = new InjectionToken<Record<string, string>>(\n 'A key/value dictionary of icon names and src to be defined with TuiSvgService',\n {\n factory: () => ({}),\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiStringHandler} from '@taiga-ui/cdk';\nimport {iconsPathFactory} from '@taiga-ui/core/utils';\n\nexport const TUI_ICONS_PATH: InjectionToken<TuiStringHandler<string>> =\n new InjectionToken<TuiStringHandler<string>>(\n 'A handler to retrieve USE id for icon by name',\n {\n factory: () => iconsPathFactory('assets/taiga-ui/icons/'),\n },\n );\n","import {InjectionToken} from '@angular/core';\nimport {TuiMedia} from '@taiga-ui/core/interfaces';\n\nexport const TUI_MEDIA = new InjectionToken<TuiMedia>('Token for media constant', {\n factory: () => ({\n mobile: 768,\n desktopSmall: 1024,\n desktopLarge: 1280,\n }),\n});\n","import {InjectionToken} from '@angular/core';\nimport {TuiBrightness} from '@taiga-ui/core/types';\nimport {Observable} from 'rxjs';\n\nexport const TUI_MODE: InjectionToken<Observable<TuiBrightness | null>> =\n new InjectionToken<Observable<TuiBrightness | null>>(\n 'Mode stream for private providers',\n );\n","import {InjectionToken} from '@angular/core';\nimport {TuiContextWithImplicit} from '@taiga-ui/cdk';\nimport {TuiNotification} from '@taiga-ui/core/enums';\nimport {TuiNotificationAutoClose} from '@taiga-ui/core/interfaces';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport interface NotificationTokenOptions {\n readonly autoClose: TuiNotificationAutoClose;\n readonly label: PolymorpheusContent<TuiContextWithImplicit<TuiNotification>>;\n readonly status: TuiNotification;\n readonly hasIcon: boolean;\n readonly hasCloseButton: boolean;\n}\n\n/** Default values for the notification options. */\nexport const TUI_NOTIFICATION_DEFAULT_OPTIONS: NotificationTokenOptions = {\n autoClose: true,\n label: '',\n status: TuiNotification.Info,\n hasIcon: true,\n hasCloseButton: true,\n};\n\nexport const TUI_NOTIFICATION_OPTIONS = new InjectionToken<NotificationTokenOptions>(\n 'Default parameters for notification alert component',\n {\n factory: () => TUI_NOTIFICATION_DEFAULT_OPTIONS,\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {CHAR_NO_BREAK_SPACE} from '@taiga-ui/cdk';\nimport {NumberFormatSettings} from '@taiga-ui/core/interfaces';\n\nexport const TUI_NUMBER_FORMAT = new InjectionToken<NumberFormatSettings>(\n 'Formatting configuration for displayed numbers',\n {\n factory: () => ({\n decimalSeparator: ',',\n thousandSeparator: CHAR_NO_BREAK_SPACE,\n zeroPadding: true,\n }),\n },\n);\n","import {InjectionToken, TemplateRef} from '@angular/core';\nimport {TuiContextWithImplicit} from '@taiga-ui/cdk';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport const TUI_OPTION_CONTENT = new InjectionToken<\n PolymorpheusContent<TuiContextWithImplicit<TemplateRef<{}>>>\n>('Content for tuiOption component');\n","import {inject, InjectionToken} from '@angular/core';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {TUI_FIRST_DAY_OF_WEEK, TUI_SHORT_WEEK_DAYS} from './index';\n\nexport type WEEK_DAYS_NAMES = [string, string, string, string, string, string, string];\n\n// TODO: Remove export in ivy compiation\nexport const convertToSundayFirstWeekFormat = (weekDaysNames: WEEK_DAYS_NAMES) => {\n const sundayIndex = weekDaysNames.length - 1;\n\n return [\n weekDaysNames[sundayIndex],\n ...weekDaysNames.slice(0, sundayIndex),\n ] as WEEK_DAYS_NAMES;\n};\n\nexport const TUI_ORDERED_SHORT_WEEK_DAYS = new InjectionToken<\n Observable<WEEK_DAYS_NAMES>\n>('Ordered calendars i18n texts', {\n factory: () => {\n const firstDayOfWeekIndex = inject(TUI_FIRST_DAY_OF_WEEK);\n\n return inject(TUI_SHORT_WEEK_DAYS).pipe(\n map(convertToSundayFirstWeekFormat),\n map(\n weekDays =>\n [\n ...weekDays.slice(firstDayOfWeekIndex),\n ...weekDays.slice(0, firstDayOfWeekIndex),\n ] as WEEK_DAYS_NAMES,\n ),\n );\n },\n});\n","import {TUI_SANITIZER as TOKEN} from '@taiga-ui/cdk';\n\nexport const TUI_SANITIZER = TOKEN;\n","import {ElementRef, InjectionToken} from '@angular/core';\n\nexport const TUI_SCROLL_REF = new InjectionToken<ElementRef<HTMLElement>>(\n 'Scrollable container',\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiAppearance} from '@taiga-ui/core/enums';\n\nexport const TUI_TEXTFIELD_APPEARANCE = new InjectionToken<string>(\n 'Appearance for inputs',\n {\n factory: () => TuiAppearance.Textfield,\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {ControlValueAccessor} from '@angular/forms';\n\nexport const TUI_VALUE_ACCESSOR = new InjectionToken<ControlValueAccessor>(\n 'Buffer token to pass NG_VALUE_ACCESSOR to a different Injector',\n);\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["TOKEN"],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-core-tokens.js","sources":["ng://@taiga-ui/core/tokens/animations-duration.ts","ng://@taiga-ui/core/tokens/animation-options.ts","ng://@taiga-ui/core/tokens/assert-enabled.ts","ng://@taiga-ui/core/tokens/data-list-accessor.ts","ng://@taiga-ui/core/tokens/data-list-host.ts","ng://@taiga-ui/core/tokens/document-or-shadow-root.ts","ng://@taiga-ui/core/tokens/dropdown-directive.ts","ng://@taiga-ui/core/tokens/element-ref.ts","ng://@taiga-ui/core/tokens/first-day-of-week.ts","ng://@taiga-ui/core/tokens/i18n.ts","ng://@taiga-ui/core/tokens/icons.ts","ng://@taiga-ui/core/tokens/icons-path.ts","ng://@taiga-ui/core/tokens/is-mobile-resolution.ts","ng://@taiga-ui/core/tokens/media.ts","ng://@taiga-ui/core/tokens/mode.ts","ng://@taiga-ui/core/tokens/notification-options.ts","ng://@taiga-ui/core/tokens/number-format.ts","ng://@taiga-ui/core/tokens/option-content.ts","ng://@taiga-ui/core/tokens/ordered-short-week-days.ts","ng://@taiga-ui/core/tokens/sanitizer.ts","ng://@taiga-ui/core/tokens/scroll-ref.ts","ng://@taiga-ui/core/tokens/svg-src-processor.ts","ng://@taiga-ui/core/tokens/textfield-appearance.ts","ng://@taiga-ui/core/tokens/value-accessor.ts","ng://@taiga-ui/core/tokens/taiga-ui-core-tokens.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\n\nexport const TUI_ANIMATIONS_DURATION = new InjectionToken<number>(\n 'Duration of all Taiga UI animations in ms',\n {\n factory: () => 300,\n },\n);\n","import {AnimationOptions} from '@angular/animations';\nimport {inject, InjectionToken} from '@angular/core';\n\nimport {TUI_ANIMATIONS_DURATION} from './animations-duration';\n\nexport const TUI_ANIMATION_OPTIONS = new InjectionToken<AnimationOptions>(\n 'Options for Taiga UI animations',\n {\n factory: () => ({\n params: {\n duration: inject(TUI_ANIMATIONS_DURATION),\n },\n }),\n },\n);\n","import {InjectionToken, isDevMode} from '@angular/core';\n\nexport const TUI_ASSERT_ENABLED = new InjectionToken(\n 'Flag to enable assertions across Taiga UI',\n {\n factory: () => isDevMode(),\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiDataListAccessor} from '@taiga-ui/core/interfaces';\n\nexport const TUI_DATA_LIST_ACCESSOR = new InjectionToken<TuiDataListAccessor>(\n 'Accessor for options',\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiDataListHost} from '@taiga-ui/core/interfaces';\n\nexport const TUI_DATA_LIST_HOST = new InjectionToken<TuiDataListHost<any>>(\n 'DataList controller',\n);\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_DOCUMENT_OR_SHADOW_ROOT = new InjectionToken<DocumentOrShadowRoot>(\n 'Document or ShadowRoot',\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiDropdown} from '@taiga-ui/core/interfaces';\n\nexport const TUI_DROPDOWN_DIRECTIVE = new InjectionToken<TuiDropdown>(\n 'Directive controlling TuiDropdownBoxComponent',\n);\n","import {ElementRef, InjectionToken} from '@angular/core';\n\nexport const TUI_ELEMENT_REF = new InjectionToken<ElementRef>(\n 'ElementRef when you cannot use @Input for single time injection',\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiDayOfWeek} from '@taiga-ui/cdk';\n\nexport const TUI_FIRST_DAY_OF_WEEK = new InjectionToken<TuiDayOfWeek>(\n 'The first day of the week index',\n {\n factory: () => TuiDayOfWeek.Monday,\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {extractI18n} from '@taiga-ui/i18n';\n\nexport const TUI_MONTHS = new InjectionToken('Localized months names', {\n factory: extractI18n('months'),\n});\n\nexport const TUI_CLOSE_WORD = new InjectionToken(`i18n 'close' word`, {\n factory: extractI18n('close'),\n});\n\nexport const TUI_NOTHING_FOUND_MESSAGE = new InjectionToken(\n `i18n 'Nothing found' message`,\n {\n factory: extractI18n('nothingFoundMessage'),\n },\n);\n\nexport const TUI_DEFAULT_ERROR_MESSAGE = new InjectionToken(`i18n of error message`, {\n factory: extractI18n('defaultErrorMessage'),\n});\n\nexport const TUI_SPIN_TEXTS = new InjectionToken('spin i18n texts', {\n factory: extractI18n('spinTexts'),\n});\n\nexport const TUI_SHORT_WEEK_DAYS = new InjectionToken('calendars i18n texts', {\n factory: extractI18n('shortWeekDays'),\n});\n","import {InjectionToken} from '@angular/core';\n\nexport const TUI_ICONS = new InjectionToken<Record<string, string>>(\n 'A key/value dictionary of icon names and src to be defined with TuiSvgService',\n {\n factory: () => ({}),\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiStringHandler} from '@taiga-ui/cdk';\nimport {iconsPathFactory} from '@taiga-ui/core/utils';\n\nexport const TUI_ICONS_PATH: InjectionToken<TuiStringHandler<string>> =\n new InjectionToken<TuiStringHandler<string>>(\n 'A handler to retrieve USE id for icon by name',\n {\n factory: () => iconsPathFactory('assets/taiga-ui/icons/'),\n },\n );\n","import {InjectionToken} from '@angular/core';\nimport {Observable} from 'rxjs';\n\nexport const TUI_IS_MOBILE_RES = new InjectionToken<Observable<boolean>>(\n 'Mobile resolution stream for private providers',\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiMedia} from '@taiga-ui/core/interfaces';\n\nexport const TUI_MEDIA = new InjectionToken<TuiMedia>('Token for media constant', {\n factory: () => ({\n mobile: 768,\n desktopSmall: 1024,\n desktopLarge: 1280,\n }),\n});\n","import {InjectionToken} from '@angular/core';\nimport {TuiBrightness} from '@taiga-ui/core/types';\nimport {Observable} from 'rxjs';\n\nexport const TUI_MODE: InjectionToken<Observable<TuiBrightness | null>> =\n new InjectionToken<Observable<TuiBrightness | null>>(\n 'Mode stream for private providers',\n );\n","import {InjectionToken} from '@angular/core';\nimport {TuiContextWithImplicit} from '@taiga-ui/cdk';\nimport {TuiNotification} from '@taiga-ui/core/enums';\nimport {TuiNotificationAutoClose} from '@taiga-ui/core/interfaces';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport interface NotificationTokenOptions {\n readonly autoClose: TuiNotificationAutoClose;\n readonly label: PolymorpheusContent<TuiContextWithImplicit<TuiNotification>>;\n readonly status: TuiNotification;\n readonly hasIcon: boolean;\n readonly hasCloseButton: boolean;\n}\n\n/** Default values for the notification options. */\nexport const TUI_NOTIFICATION_DEFAULT_OPTIONS: NotificationTokenOptions = {\n autoClose: true,\n label: '',\n status: TuiNotification.Info,\n hasIcon: true,\n hasCloseButton: true,\n};\n\nexport const TUI_NOTIFICATION_OPTIONS = new InjectionToken<NotificationTokenOptions>(\n 'Default parameters for notification alert component',\n {\n factory: () => TUI_NOTIFICATION_DEFAULT_OPTIONS,\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {CHAR_NO_BREAK_SPACE} from '@taiga-ui/cdk';\nimport {NumberFormatSettings} from '@taiga-ui/core/interfaces';\n\nexport const TUI_NUMBER_FORMAT = new InjectionToken<NumberFormatSettings>(\n 'Formatting configuration for displayed numbers',\n {\n factory: () => ({\n decimalSeparator: ',',\n thousandSeparator: CHAR_NO_BREAK_SPACE,\n zeroPadding: true,\n }),\n },\n);\n","import {InjectionToken, TemplateRef} from '@angular/core';\nimport {TuiContextWithImplicit} from '@taiga-ui/cdk';\nimport {PolymorpheusContent} from '@tinkoff/ng-polymorpheus';\n\nexport const TUI_OPTION_CONTENT = new InjectionToken<\n PolymorpheusContent<TuiContextWithImplicit<TemplateRef<{}>>>\n>('Content for tuiOption component');\n","import {inject, InjectionToken} from '@angular/core';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\nimport {TUI_FIRST_DAY_OF_WEEK, TUI_SHORT_WEEK_DAYS} from './index';\n\nexport type WEEK_DAYS_NAMES = [string, string, string, string, string, string, string];\n\n// TODO: Remove export in ivy compiation\nexport const convertToSundayFirstWeekFormat = (weekDaysNames: WEEK_DAYS_NAMES) => {\n const sundayIndex = weekDaysNames.length - 1;\n\n return [\n weekDaysNames[sundayIndex],\n ...weekDaysNames.slice(0, sundayIndex),\n ] as WEEK_DAYS_NAMES;\n};\n\nexport const TUI_ORDERED_SHORT_WEEK_DAYS = new InjectionToken<\n Observable<WEEK_DAYS_NAMES>\n>('Ordered calendars i18n texts', {\n factory: () => {\n const firstDayOfWeekIndex = inject(TUI_FIRST_DAY_OF_WEEK);\n\n return inject(TUI_SHORT_WEEK_DAYS).pipe(\n map(convertToSundayFirstWeekFormat),\n map(\n weekDays =>\n [\n ...weekDays.slice(firstDayOfWeekIndex),\n ...weekDays.slice(0, firstDayOfWeekIndex),\n ] as WEEK_DAYS_NAMES,\n ),\n );\n },\n});\n","import {TUI_SANITIZER as TOKEN} from '@taiga-ui/cdk';\n\nexport const TUI_SANITIZER = TOKEN;\n","import {ElementRef, InjectionToken} from '@angular/core';\n\nexport const TUI_SCROLL_REF = new InjectionToken<ElementRef<HTMLElement>>(\n 'Scrollable container',\n);\n","import {InjectionToken} from '@angular/core';\nimport {TuiStringHandler} from '@taiga-ui/cdk';\nimport {identity} from 'rxjs';\n\nexport const TUI_SVG_SRC_PROCESSOR: InjectionToken<TuiStringHandler<string>> =\n new InjectionToken<TuiStringHandler<string>>('Source path processor for svg', {\n factory: () => identity,\n });\n","import {InjectionToken} from '@angular/core';\nimport {TuiAppearance} from '@taiga-ui/core/enums';\n\nexport const TUI_TEXTFIELD_APPEARANCE = new InjectionToken<string>(\n 'Appearance for inputs',\n {\n factory: () => TuiAppearance.Textfield,\n },\n);\n","import {InjectionToken} from '@angular/core';\nimport {ControlValueAccessor} from '@angular/forms';\n\nexport const TUI_VALUE_ACCESSOR = new InjectionToken<ControlValueAccessor>(\n 'Buffer token to pass NG_VALUE_ACCESSOR to a different Injector',\n);\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["TOKEN"],"mappings":"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"}
@@ -6,7 +6,7 @@ import { otherDecimalSymbol } from '@taiga-ui/core/utils/format';
6
6
  /**
7
7
  * Used to finish a number with zeros to a given precision
8
8
  */
9
- function tuiCreateAutoCorrectedNumberPipe(decimalLimit, decimalSymbol, thousandSymbol, nativeInput) {
9
+ function tuiCreateAutoCorrectedNumberPipe(decimalLimit, decimalSymbol, thousandSymbol, nativeInput, allowNegative) {
10
10
  if (decimalLimit === void 0) { decimalLimit = 0; }
11
11
  if (decimalSymbol === void 0) { decimalSymbol = ','; }
12
12
  if (thousandSymbol === void 0) { thousandSymbol = CHAR_NO_BREAK_SPACE; }
@@ -21,6 +21,10 @@ function tuiCreateAutoCorrectedNumberPipe(decimalLimit, decimalSymbol, thousandS
21
21
  });
22
22
  }
23
23
  return function (conformedValue, config) {
24
+ // Removing everything by selecting and pressing '-'
25
+ if (!conformedValue && config.rawValue === '-' && allowNegative) {
26
+ return '-';
27
+ }
24
28
  // remove these hacks after text mask library has changed
25
29
  if (nativeInput && unlucky && isNativeFocused(nativeInput)) {
26
30
  var caret_1 = calculateSafariCaret(config.previousConformedValue, conformedValue, previousCaret);
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-core-utils-mask.js","sources":["ng://@taiga-ui/core/utils/mask/create-auto-corrected-money-pipe.ts","ng://@taiga-ui/core/utils/mask/create-correction-mask.ts","ng://@taiga-ui/core/utils/mask/create-number-mask.ts","ng://@taiga-ui/core/utils/mask/masked-money-value-is-empty.ts","ng://@taiga-ui/core/utils/mask/masked-number-string-to-number.ts","ng://@taiga-ui/core/utils/mask/taiga-ui-core-utils-mask.ts"],"sourcesContent":["import {\n CHAR_NO_BREAK_SPACE,\n getDocumentOrShadowRoot,\n isNativeFocused,\n isSafari,\n tuiAssert,\n} from '@taiga-ui/cdk';\nimport {TuiTextMaskPipeHandler} from '@taiga-ui/core/mask';\nimport {TuiDecimalSymbol} from '@taiga-ui/core/types';\n\n/**\n * Used to finish a number with zeros to a given precision\n */\nexport function tuiCreateAutoCorrectedNumberPipe(\n decimalLimit: number = 0,\n decimalSymbol: TuiDecimalSymbol = ',',\n thousandSymbol: string = CHAR_NO_BREAK_SPACE,\n nativeInput?: HTMLInputElement,\n): TuiTextMaskPipeHandler {\n tuiAssert.assert(Number.isInteger(decimalLimit));\n tuiAssert.assert(decimalLimit >= 0);\n\n // Guess for which browser I need this :)\n let previousCaret = -1;\n\n const unlucky = !!nativeInput && isSafari(nativeInput);\n\n if (nativeInput && unlucky) {\n nativeInput.addEventListener('beforeinput', () => {\n previousCaret = nativeInput.selectionStart || 0;\n });\n }\n\n return (conformedValue, config) => {\n // remove these hacks after text mask library has changed\n if (nativeInput && unlucky && isNativeFocused(nativeInput)) {\n const caret = calculateSafariCaret(\n config.previousConformedValue,\n conformedValue,\n previousCaret,\n );\n\n setTimeout(() => {\n nativeInput.setSelectionRange(caret, caret);\n });\n }\n\n if (\n nativeInput &&\n nativeInput.ownerDocument !== getDocumentOrShadowRoot(nativeInput) &&\n isNativeFocused(nativeInput) &&\n config.currentCaretPosition\n ) {\n const realCaretPosition =\n config.currentCaretPosition +\n calculateCaretGap(\n config.previousConformedValue,\n conformedValue,\n thousandSymbol,\n );\n\n setTimeout(() => {\n nativeInput.setSelectionRange(realCaretPosition, realCaretPosition);\n });\n }\n\n if (conformedValue === '' || !decimalLimit) {\n return {value: conformedValue};\n }\n\n const withDecimalSymbol = addDecimalSymbolIfNeeded(conformedValue, decimalSymbol);\n const decimalPart = withDecimalSymbol.split(decimalSymbol)[1];\n const zeroPaddingSize = decimalLimit - decimalPart.length;\n\n return {\n value: withDecimalSymbol + '0'.repeat(zeroPaddingSize),\n };\n };\n}\n\nfunction addDecimalSymbolIfNeeded(\n value: string,\n decimalSymbol: TuiDecimalSymbol = ',',\n): string {\n return value.indexOf(decimalSymbol) === -1 ? value + decimalSymbol : value;\n}\n\nfunction calculateSafariCaret(\n previousValue: string = '',\n current: string,\n previousCaret: number,\n decimalSymbol: string = ',',\n): number {\n const tailRegex = new RegExp(`${decimalSymbol}.+`);\n const previousWithoutTail = previousValue.replace(tailRegex, '');\n const currentWithoutTail = current.replace(tailRegex, '');\n\n const pasteOrCutOperation =\n Math.abs(previousWithoutTail.length - currentWithoutTail.length) > 2;\n\n if (pasteOrCutOperation) {\n return current.length;\n }\n\n if (previousValue.length === current.length) {\n if (previousValue.indexOf(decimalSymbol) <= previousCaret) {\n return calculateChangedTailIndex(previousValue, current);\n }\n\n return previousWithoutTail === currentWithoutTail\n ? previousCaret - 1\n : previousCaret + 1;\n }\n\n if (previousValue.length === 0) {\n return 1;\n }\n\n const changeLength = current.length - previousValue.length;\n\n return previousCaret + changeLength;\n}\n\nfunction calculateChangedTailIndex(previous: string, current: string): number {\n for (let i = 0; i < current.length; i++) {\n if (previous[i] !== current[i]) {\n return current[i] === '0' ? i : i + 1;\n }\n }\n\n return current.length;\n}\n\nfunction calculateCaretGap(\n previousValue: string = '',\n current: string,\n thousandSymbol: string,\n): number {\n const pasteOrCutOperation = Math.abs(previousValue.length - current.length) > 2;\n\n if (pasteOrCutOperation) {\n return 0;\n }\n\n const wereSpaces = previousValue.split(thousandSymbol).length;\n const nowSpaces = current.split(thousandSymbol).length;\n\n return nowSpaces - wereSpaces;\n}\n","import {tuiAssert} from '@taiga-ui/cdk';\nimport {MASK_CARET_TRAP} from '@taiga-ui/core/constants';\nimport {\n TuiTextMaskCorrectionHandler,\n TuiTextMaskList,\n TuiTextMaskListHandler,\n} from '@taiga-ui/core/mask';\n\nconst ASSERTION = 'Correction function must return single char or null';\n\nexport function tuiCreateCorrectionMask(\n allowed: RegExp,\n correctionHandler: TuiTextMaskCorrectionHandler,\n): TuiTextMaskListHandler {\n return rawValue => {\n const mask = rawValue.split('').reduce<TuiTextMaskList>((result, char, index) => {\n const corrected = correctionHandler(char, index);\n\n tuiAssert.assert(corrected === null || corrected.length === 1, ASSERTION);\n\n if (!allowed.test(char) && !corrected) {\n return result;\n }\n\n if (allowed.test(char)) {\n return [...result, allowed];\n }\n\n if (corrected) {\n return [...result, corrected, MASK_CARET_TRAP];\n }\n\n return result;\n }, []);\n const lastIndex = mask.lastIndexOf(MASK_CARET_TRAP);\n const filtered = mask.filter(\n (item, index) => item !== MASK_CARET_TRAP || index === lastIndex,\n );\n\n return filtered.some(item => item !== allowed)\n ? [...filtered, allowed]\n : filtered;\n };\n}\n","import {CHAR_EN_DASH, CHAR_NO_BREAK_SPACE, tuiAssert} from '@taiga-ui/cdk';\nimport {\n MASK_CARET_TRAP,\n TUI_DIGIT_REGEXP,\n TUI_LEADING_ZEROES_REGEXP,\n TUI_NON_DIGITS_REGEXP,\n} from '@taiga-ui/core/constants';\nimport {TuiNumberMaskOptions, TuiTextMaskListHandler} from '@taiga-ui/core/mask';\nimport {TuiDecimalSymbol} from '@taiga-ui/core/types';\nimport {otherDecimalSymbol} from '@taiga-ui/core/utils/format';\n\nconst NON_ZERO_DIGIT = /[1-9]/;\n\n/**\n * Adaptation for {@link https://github.com/text-mask/text-mask/tree/master/addons#createnumbermask `createNumberMask`}\n * @todo TODO: autocCorrectDecimalSymbol is no longer needed. Remove it in 3.0\n */\nexport function tuiCreateNumberMask({\n allowDecimal = false,\n decimalSymbol = ',',\n thousandSymbol = CHAR_NO_BREAK_SPACE,\n autoCorrectDecimalSymbol = true,\n decimalLimit = 2,\n requireDecimal = false,\n allowNegative = false,\n integerLimit = 0,\n}: TuiNumberMaskOptions = {}): TuiTextMaskListHandler {\n tuiAssert.assert(Number.isInteger(decimalLimit));\n tuiAssert.assert(decimalLimit > 0);\n tuiAssert.assert(Number.isInteger(integerLimit));\n tuiAssert.assert(integerLimit >= 0);\n\n return (rawValue, {previousConformedValue}) => {\n if (previousConformedValue && requireDecimal) {\n const conformedWithoutSeparator = rawValue.split(thousandSymbol).join('');\n const previousConformedValueWithoutDecimalSymbolAndSeparator =\n previousConformedValue\n .split(thousandSymbol)\n .join('')\n .split(decimalSymbol)\n .join('');\n\n // Forbid removal of decimal separator if decimal part is required\n if (\n conformedWithoutSeparator ===\n previousConformedValueWithoutDecimalSymbolAndSeparator\n ) {\n rawValue = previousConformedValue;\n }\n }\n\n const isNegative =\n (rawValue[0] === '-' || rawValue[0] === CHAR_EN_DASH) && allowNegative;\n\n if (\n isDecimalSymbol(rawValue, decimalSymbol, autoCorrectDecimalSymbol) &&\n allowDecimal\n ) {\n return ['0', decimalSymbol, TUI_DIGIT_REGEXP];\n }\n\n if (isNegative) {\n rawValue = rawValue.substr(1);\n }\n\n const decimalIndex = getDecimalSymbolIndex(\n rawValue,\n decimalSymbol,\n autoCorrectDecimalSymbol,\n );\n const hasDecimal = decimalIndex !== -1;\n const integer = hasDecimal ? rawValue.slice(0, decimalIndex) : rawValue;\n const thousandSeparators = integer.match(new RegExp(thousandSymbol, 'g')) || [];\n const integerCapped = integerLimit\n ? integer.slice(0, integerLimit + thousandSeparators.length)\n : integer;\n const integerCappedClean = integerCapped.replace(TUI_NON_DIGITS_REGEXP, '');\n const [leadingZerosMatch] = integerCappedClean.match(\n TUI_LEADING_ZEROES_REGEXP,\n ) || [''];\n const leadingZerosAmount = leadingZerosMatch.length;\n const integerCappedZerosClean = integerCappedClean\n .replace(/^0+(?!\\.|$)/, '')\n .trim();\n const withSeparator = addThousandsSeparator(\n integerCappedZerosClean,\n thousandSymbol,\n );\n const mask = convertToMask(withSeparator);\n\n if ((hasDecimal && allowDecimal) || requireDecimal) {\n const fraction = hasDecimal\n ? convertToMask(\n rawValue.slice(decimalIndex + 1).replace(TUI_NON_DIGITS_REGEXP, ''),\n )\n : [];\n const fractionCapped = decimalLimit\n ? fraction.slice(0, decimalLimit)\n : fraction;\n\n if (rawValue[decimalIndex] !== otherDecimalSymbol(decimalSymbol)) {\n mask.push(MASK_CARET_TRAP);\n }\n\n mask.push(decimalSymbol, MASK_CARET_TRAP, ...fractionCapped);\n\n for (let i = 0; i < decimalLimit - fractionCapped.length; i++) {\n mask.push(TUI_DIGIT_REGEXP);\n }\n }\n\n const isOnlyZeroDigit = mask.length === 1 && integerCappedZerosClean === '0';\n\n if (isNegative) {\n if (mask.length === 0) {\n mask.push(TUI_DIGIT_REGEXP);\n }\n\n mask.unshift('-');\n }\n\n return preventLeadingZeroes(mask, isOnlyZeroDigit, leadingZerosAmount);\n };\n}\n\nfunction preventLeadingZeroes(\n mask: Array<string | RegExp>,\n isOnlyZeroDigit: boolean = false,\n leadingZerosAmount: number = 0,\n): Array<string | RegExp> {\n if (isOnlyZeroDigit || leadingZerosAmount === 0) {\n return mask;\n }\n\n const firstDigitIndex = mask.indexOf(TUI_DIGIT_REGEXP);\n\n if (firstDigitIndex === -1) {\n return mask;\n }\n\n const secondMaskDigit = mask[firstDigitIndex + 1];\n const isCaretTrap = secondMaskDigit === MASK_CARET_TRAP;\n\n if (isCaretTrap && leadingZerosAmount === 1) {\n return mask;\n } else if (isCaretTrap) {\n mask.unshift(NON_ZERO_DIGIT);\n\n return mask;\n }\n\n mask[firstDigitIndex] = NON_ZERO_DIGIT;\n\n return mask;\n}\n\nfunction getDecimalSymbolIndex(\n str: string,\n decimalSymbol: TuiDecimalSymbol,\n autoCorrectDecimalSymbol: boolean,\n): number {\n if (!autoCorrectDecimalSymbol) {\n return str.lastIndexOf(decimalSymbol);\n }\n\n return Math.max(\n str.lastIndexOf(decimalSymbol),\n str.lastIndexOf(otherDecimalSymbol(decimalSymbol)),\n );\n}\n\nfunction isDecimalSymbol(\n str: string,\n decimalSymbol: TuiDecimalSymbol,\n autoCorrectDecimalSymbol: boolean,\n): boolean {\n if (autoCorrectDecimalSymbol) {\n return /^[,.]$/.test(str);\n }\n\n return str === decimalSymbol;\n}\n\nfunction convertToMask(strNumber: string): Array<string | RegExp> {\n return strNumber\n .split('')\n .map(char => (TUI_DIGIT_REGEXP.test(char) ? TUI_DIGIT_REGEXP : char));\n}\n\nfunction addThousandsSeparator(strNumber: string, thousandSymbol: string): string {\n return strNumber.length > 3\n ? strNumber.replace(/\\B(?=(\\d{3})+(?!\\d))/g, thousandSymbol)\n : strNumber;\n}\n","export function maskedMoneyValueIsEmpty(value: string): boolean {\n switch (value) {\n case '':\n case '-':\n case ',':\n case '-,':\n return true;\n default:\n return false;\n }\n}\n","import {TuiDecimalSymbol} from '@taiga-ui/core/types';\n\nexport function maskedNumberStringToNumber(\n value: string,\n decimalsSymbol: TuiDecimalSymbol,\n thousandSymbol: string,\n): number {\n return parseFloat(\n value.split(thousandSymbol).join('').split(decimalsSymbol).join('.'),\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-core-utils-mask.js","sources":["ng://@taiga-ui/core/utils/mask/create-auto-corrected-money-pipe.ts","ng://@taiga-ui/core/utils/mask/create-correction-mask.ts","ng://@taiga-ui/core/utils/mask/create-number-mask.ts","ng://@taiga-ui/core/utils/mask/masked-money-value-is-empty.ts","ng://@taiga-ui/core/utils/mask/masked-number-string-to-number.ts","ng://@taiga-ui/core/utils/mask/taiga-ui-core-utils-mask.ts"],"sourcesContent":["import {\n CHAR_NO_BREAK_SPACE,\n getDocumentOrShadowRoot,\n isNativeFocused,\n isSafari,\n tuiAssert,\n} from '@taiga-ui/cdk';\nimport {TuiTextMaskPipeHandler} from '@taiga-ui/core/mask';\nimport {TuiDecimalSymbol} from '@taiga-ui/core/types';\n\n/**\n * Used to finish a number with zeros to a given precision\n */\nexport function tuiCreateAutoCorrectedNumberPipe(\n decimalLimit: number = 0,\n decimalSymbol: TuiDecimalSymbol = ',',\n thousandSymbol: string = CHAR_NO_BREAK_SPACE,\n nativeInput?: HTMLInputElement,\n allowNegative?: boolean,\n): TuiTextMaskPipeHandler {\n tuiAssert.assert(Number.isInteger(decimalLimit));\n tuiAssert.assert(decimalLimit >= 0);\n\n // Guess for which browser I need this :)\n let previousCaret = -1;\n\n const unlucky = !!nativeInput && isSafari(nativeInput);\n\n if (nativeInput && unlucky) {\n nativeInput.addEventListener('beforeinput', () => {\n previousCaret = nativeInput.selectionStart || 0;\n });\n }\n\n return (conformedValue, config) => {\n // Removing everything by selecting and pressing '-'\n if (!conformedValue && config.rawValue === '-' && allowNegative) {\n return '-';\n }\n\n // remove these hacks after text mask library has changed\n if (nativeInput && unlucky && isNativeFocused(nativeInput)) {\n const caret = calculateSafariCaret(\n config.previousConformedValue,\n conformedValue,\n previousCaret,\n );\n\n setTimeout(() => {\n nativeInput.setSelectionRange(caret, caret);\n });\n }\n\n if (\n nativeInput &&\n nativeInput.ownerDocument !== getDocumentOrShadowRoot(nativeInput) &&\n isNativeFocused(nativeInput) &&\n config.currentCaretPosition\n ) {\n const realCaretPosition =\n config.currentCaretPosition +\n calculateCaretGap(\n config.previousConformedValue,\n conformedValue,\n thousandSymbol,\n );\n\n setTimeout(() => {\n nativeInput.setSelectionRange(realCaretPosition, realCaretPosition);\n });\n }\n\n if (conformedValue === '' || !decimalLimit) {\n return {value: conformedValue};\n }\n\n const withDecimalSymbol = addDecimalSymbolIfNeeded(conformedValue, decimalSymbol);\n const decimalPart = withDecimalSymbol.split(decimalSymbol)[1];\n const zeroPaddingSize = decimalLimit - decimalPart.length;\n\n return {\n value: withDecimalSymbol + '0'.repeat(zeroPaddingSize),\n };\n };\n}\n\nfunction addDecimalSymbolIfNeeded(\n value: string,\n decimalSymbol: TuiDecimalSymbol = ',',\n): string {\n return value.indexOf(decimalSymbol) === -1 ? value + decimalSymbol : value;\n}\n\nfunction calculateSafariCaret(\n previousValue: string = '',\n current: string,\n previousCaret: number,\n decimalSymbol: string = ',',\n): number {\n const tailRegex = new RegExp(`${decimalSymbol}.+`);\n const previousWithoutTail = previousValue.replace(tailRegex, '');\n const currentWithoutTail = current.replace(tailRegex, '');\n\n const pasteOrCutOperation =\n Math.abs(previousWithoutTail.length - currentWithoutTail.length) > 2;\n\n if (pasteOrCutOperation) {\n return current.length;\n }\n\n if (previousValue.length === current.length) {\n if (previousValue.indexOf(decimalSymbol) <= previousCaret) {\n return calculateChangedTailIndex(previousValue, current);\n }\n\n return previousWithoutTail === currentWithoutTail\n ? previousCaret - 1\n : previousCaret + 1;\n }\n\n if (previousValue.length === 0) {\n return 1;\n }\n\n const changeLength = current.length - previousValue.length;\n\n return previousCaret + changeLength;\n}\n\nfunction calculateChangedTailIndex(previous: string, current: string): number {\n for (let i = 0; i < current.length; i++) {\n if (previous[i] !== current[i]) {\n return current[i] === '0' ? i : i + 1;\n }\n }\n\n return current.length;\n}\n\nfunction calculateCaretGap(\n previousValue: string = '',\n current: string,\n thousandSymbol: string,\n): number {\n const pasteOrCutOperation = Math.abs(previousValue.length - current.length) > 2;\n\n if (pasteOrCutOperation) {\n return 0;\n }\n\n const wereSpaces = previousValue.split(thousandSymbol).length;\n const nowSpaces = current.split(thousandSymbol).length;\n\n return nowSpaces - wereSpaces;\n}\n","import {tuiAssert} from '@taiga-ui/cdk';\nimport {MASK_CARET_TRAP} from '@taiga-ui/core/constants';\nimport {\n TuiTextMaskCorrectionHandler,\n TuiTextMaskList,\n TuiTextMaskListHandler,\n} from '@taiga-ui/core/mask';\n\nconst ASSERTION = 'Correction function must return single char or null';\n\nexport function tuiCreateCorrectionMask(\n allowed: RegExp,\n correctionHandler: TuiTextMaskCorrectionHandler,\n): TuiTextMaskListHandler {\n return rawValue => {\n const mask = rawValue.split('').reduce<TuiTextMaskList>((result, char, index) => {\n const corrected = correctionHandler(char, index);\n\n tuiAssert.assert(corrected === null || corrected.length === 1, ASSERTION);\n\n if (!allowed.test(char) && !corrected) {\n return result;\n }\n\n if (allowed.test(char)) {\n return [...result, allowed];\n }\n\n if (corrected) {\n return [...result, corrected, MASK_CARET_TRAP];\n }\n\n return result;\n }, []);\n const lastIndex = mask.lastIndexOf(MASK_CARET_TRAP);\n const filtered = mask.filter(\n (item, index) => item !== MASK_CARET_TRAP || index === lastIndex,\n );\n\n return filtered.some(item => item !== allowed)\n ? [...filtered, allowed]\n : filtered;\n };\n}\n","import {CHAR_EN_DASH, CHAR_NO_BREAK_SPACE, tuiAssert} from '@taiga-ui/cdk';\nimport {\n MASK_CARET_TRAP,\n TUI_DIGIT_REGEXP,\n TUI_LEADING_ZEROES_REGEXP,\n TUI_NON_DIGITS_REGEXP,\n} from '@taiga-ui/core/constants';\nimport {TuiNumberMaskOptions, TuiTextMaskListHandler} from '@taiga-ui/core/mask';\nimport {TuiDecimalSymbol} from '@taiga-ui/core/types';\nimport {otherDecimalSymbol} from '@taiga-ui/core/utils/format';\n\nconst NON_ZERO_DIGIT = /[1-9]/;\n\n/**\n * Adaptation for {@link https://github.com/text-mask/text-mask/tree/master/addons#createnumbermask `createNumberMask`}\n * @todo TODO: autocCorrectDecimalSymbol is no longer needed. Remove it in 3.0\n */\nexport function tuiCreateNumberMask({\n allowDecimal = false,\n decimalSymbol = ',',\n thousandSymbol = CHAR_NO_BREAK_SPACE,\n autoCorrectDecimalSymbol = true,\n decimalLimit = 2,\n requireDecimal = false,\n allowNegative = false,\n integerLimit = 0,\n}: TuiNumberMaskOptions = {}): TuiTextMaskListHandler {\n tuiAssert.assert(Number.isInteger(decimalLimit));\n tuiAssert.assert(decimalLimit > 0);\n tuiAssert.assert(Number.isInteger(integerLimit));\n tuiAssert.assert(integerLimit >= 0);\n\n return (rawValue, {previousConformedValue}) => {\n if (previousConformedValue && requireDecimal) {\n const conformedWithoutSeparator = rawValue.split(thousandSymbol).join('');\n const previousConformedValueWithoutDecimalSymbolAndSeparator =\n previousConformedValue\n .split(thousandSymbol)\n .join('')\n .split(decimalSymbol)\n .join('');\n\n // Forbid removal of decimal separator if decimal part is required\n if (\n conformedWithoutSeparator ===\n previousConformedValueWithoutDecimalSymbolAndSeparator\n ) {\n rawValue = previousConformedValue;\n }\n }\n\n const isNegative =\n (rawValue[0] === '-' || rawValue[0] === CHAR_EN_DASH) && allowNegative;\n\n if (\n isDecimalSymbol(rawValue, decimalSymbol, autoCorrectDecimalSymbol) &&\n allowDecimal\n ) {\n return ['0', decimalSymbol, TUI_DIGIT_REGEXP];\n }\n\n if (isNegative) {\n rawValue = rawValue.substr(1);\n }\n\n const decimalIndex = getDecimalSymbolIndex(\n rawValue,\n decimalSymbol,\n autoCorrectDecimalSymbol,\n );\n const hasDecimal = decimalIndex !== -1;\n const integer = hasDecimal ? rawValue.slice(0, decimalIndex) : rawValue;\n const thousandSeparators = integer.match(new RegExp(thousandSymbol, 'g')) || [];\n const integerCapped = integerLimit\n ? integer.slice(0, integerLimit + thousandSeparators.length)\n : integer;\n const integerCappedClean = integerCapped.replace(TUI_NON_DIGITS_REGEXP, '');\n const [leadingZerosMatch] = integerCappedClean.match(\n TUI_LEADING_ZEROES_REGEXP,\n ) || [''];\n const leadingZerosAmount = leadingZerosMatch.length;\n const integerCappedZerosClean = integerCappedClean\n .replace(/^0+(?!\\.|$)/, '')\n .trim();\n const withSeparator = addThousandsSeparator(\n integerCappedZerosClean,\n thousandSymbol,\n );\n const mask = convertToMask(withSeparator);\n\n if ((hasDecimal && allowDecimal) || requireDecimal) {\n const fraction = hasDecimal\n ? convertToMask(\n rawValue.slice(decimalIndex + 1).replace(TUI_NON_DIGITS_REGEXP, ''),\n )\n : [];\n const fractionCapped = decimalLimit\n ? fraction.slice(0, decimalLimit)\n : fraction;\n\n if (rawValue[decimalIndex] !== otherDecimalSymbol(decimalSymbol)) {\n mask.push(MASK_CARET_TRAP);\n }\n\n mask.push(decimalSymbol, MASK_CARET_TRAP, ...fractionCapped);\n\n for (let i = 0; i < decimalLimit - fractionCapped.length; i++) {\n mask.push(TUI_DIGIT_REGEXP);\n }\n }\n\n const isOnlyZeroDigit = mask.length === 1 && integerCappedZerosClean === '0';\n\n if (isNegative) {\n if (mask.length === 0) {\n mask.push(TUI_DIGIT_REGEXP);\n }\n\n mask.unshift('-');\n }\n\n return preventLeadingZeroes(mask, isOnlyZeroDigit, leadingZerosAmount);\n };\n}\n\nfunction preventLeadingZeroes(\n mask: Array<string | RegExp>,\n isOnlyZeroDigit: boolean = false,\n leadingZerosAmount: number = 0,\n): Array<string | RegExp> {\n if (isOnlyZeroDigit || leadingZerosAmount === 0) {\n return mask;\n }\n\n const firstDigitIndex = mask.indexOf(TUI_DIGIT_REGEXP);\n\n if (firstDigitIndex === -1) {\n return mask;\n }\n\n const secondMaskDigit = mask[firstDigitIndex + 1];\n const isCaretTrap = secondMaskDigit === MASK_CARET_TRAP;\n\n if (isCaretTrap && leadingZerosAmount === 1) {\n return mask;\n } else if (isCaretTrap) {\n mask.unshift(NON_ZERO_DIGIT);\n\n return mask;\n }\n\n mask[firstDigitIndex] = NON_ZERO_DIGIT;\n\n return mask;\n}\n\nfunction getDecimalSymbolIndex(\n str: string,\n decimalSymbol: TuiDecimalSymbol,\n autoCorrectDecimalSymbol: boolean,\n): number {\n if (!autoCorrectDecimalSymbol) {\n return str.lastIndexOf(decimalSymbol);\n }\n\n return Math.max(\n str.lastIndexOf(decimalSymbol),\n str.lastIndexOf(otherDecimalSymbol(decimalSymbol)),\n );\n}\n\nfunction isDecimalSymbol(\n str: string,\n decimalSymbol: TuiDecimalSymbol,\n autoCorrectDecimalSymbol: boolean,\n): boolean {\n if (autoCorrectDecimalSymbol) {\n return /^[,.]$/.test(str);\n }\n\n return str === decimalSymbol;\n}\n\nfunction convertToMask(strNumber: string): Array<string | RegExp> {\n return strNumber\n .split('')\n .map(char => (TUI_DIGIT_REGEXP.test(char) ? TUI_DIGIT_REGEXP : char));\n}\n\nfunction addThousandsSeparator(strNumber: string, thousandSymbol: string): string {\n return strNumber.length > 3\n ? strNumber.replace(/\\B(?=(\\d{3})+(?!\\d))/g, thousandSymbol)\n : strNumber;\n}\n","export function maskedMoneyValueIsEmpty(value: string): boolean {\n switch (value) {\n case '':\n case '-':\n case ',':\n case '-,':\n return true;\n default:\n return false;\n }\n}\n","import {TuiDecimalSymbol} from '@taiga-ui/core/types';\n\nexport function maskedNumberStringToNumber(\n value: string,\n decimalsSymbol: TuiDecimalSymbol,\n thousandSymbol: string,\n): number {\n return parseFloat(\n value.split(thousandSymbol).join('').split(decimalsSymbol).join('.'),\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"__symbolic":"module","version":4,"metadata":{"NotificationAlert":{"__symbolic":"class","arity":2,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Observer","module":"rxjs","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":26,"character":36,"context":{"typeName":"O"},"module":"./notification-alert/Notification-alert"}]},{"__symbolic":"reference","name":"PolymorpheusContent","module":"@tinkoff/ng-polymorpheus","arguments":[{"__symbolic":"reference","name":"TuiNotificationContentContext"}]},{"__symbolic":"error","message":"Could not resolve type","line":28,"character":34,"context":{"typeName":"Required"},"module":"./notification-alert/Notification-alert"}]}],"withData":[{"__symbolic":"method"}]}},"DEFAULT_ALERT_AUTOCLOSE_TIMEOUT":3000,"TuiNotificationAlertComponent":{"__symbolic":"class","arity":2,"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":18,"character":1},"arguments":[{"selector":"tui-notification-alert","changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":20,"character":21},"member":"OnPush"},"providers":[{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"TuiDestroyService","line":23,"character":16}],"template":"<tui-notification\n *ngIf=\"item.hasCloseButton; else noClose\"\n [status]=\"item.status\"\n [hasIcon]=\"item.hasIcon\"\n (close)=\"closeNotification()\"\n>\n <label\n *ngIf=\"item.label\"\n polymorpheus-outlet\n automation-id=\"tui-notification-alert__heading\"\n class=\"heading\"\n [content]=\"item.label\"\n [context]=\"context\"\n ></label>\n <div\n polymorpheus-outlet\n automation-id=\"tui-notification-alert__content\"\n class=\"content\"\n [content]=\"item.content\"\n [context]=\"context\"\n ></div>\n</tui-notification>\n<ng-template #noClose>\n <tui-notification [status]=\"item.status\" [hasIcon]=\"item.hasIcon\">\n <label\n *ngIf=\"item.label\"\n polymorpheus-outlet\n automation-id=\"tui-notification-alert__heading\"\n class=\"heading\"\n [content]=\"item.label\"\n [context]=\"context\"\n ></label>\n <div\n polymorpheus-outlet\n automation-id=\"tui-notification-alert__content\"\n class=\"content\"\n [content]=\"item.content\"\n [context]=\"context\"\n ></div>\n </tui-notification>\n</ng-template>\n","styles":[":host{box-shadow:0 .5rem 1rem rgba(0,0,0,.16);display:block;border-radius:var(--tui-radius-m)}.heading{font:var(--tui-font-text-m);line-height:1.25rem;font-weight:700;margin:0}.content{color:var(--tui-text-01);word-wrap:break-word}.content:empty{display:none}"]}]}],"members":{"item":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":26,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":30,"character":9},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":30,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":31,"character":9},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"TuiDestroyService","line":31,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":32,"character":9},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/core/tokens","name":"TUI_NOTIFICATION_OPTIONS","line":32,"character":16}]}]],"parameters":[{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":30,"character":68,"context":{"typeName":"HTMLElement"},"module":"./notification-alert/notification-alert.component"}]},{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"TuiDestroyService","line":31,"character":62},{"__symbolic":"reference","module":"@taiga-ui/core/tokens","name":"NotificationTokenOptions","line":33,"character":33}]}],"ngOnInit":[{"__symbolic":"method"}],"closeNotification":[{"__symbolic":"method"}],"calculateContext":[{"__symbolic":"method","decorators":[{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiPure","line":48,"character":5}]}],"initAutoClose":[{"__symbolic":"method"}]}},"TuiNotificationAlertModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":7,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":8,"character":14},{"__symbolic":"reference","module":"@tinkoff/ng-polymorpheus","name":"PolymorpheusModule","line":8,"character":28},{"__symbolic":"reference","module":"@taiga-ui/core/components/notification","name":"TuiNotificationModule","line":8,"character":48}],"declarations":[{"__symbolic":"reference","name":"TuiNotificationAlertComponent"}],"exports":[{"__symbolic":"reference","name":"TuiNotificationAlertComponent"}]}]}],"members":{}},"TuiNotificationContentContext":{"__symbolic":"interface"},"NOTIFICATIONS_HOST":{"__symbolic":"reference","name":"TuiNotificationsHostComponent"},"TuiNotificationsModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":10,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":11,"character":14},{"__symbolic":"reference","name":"TuiNotificationAlertModule"},{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"TuiLetModule","line":11,"character":56}],"declarations":[{"__symbolic":"reference","name":"TuiNotificationsHostComponent"}],"exports":[{"__symbolic":"reference","name":"TuiNotificationsHostComponent"}],"entryComponents":[{"__symbolic":"reference","name":"TuiNotificationsHostComponent"}],"providers":[{"provide":{"__symbolic":"reference","name":"TuiNotificationsHostComponent"},"useValue":{"__symbolic":"reference","name":"NOTIFICATIONS_HOST"}}]}]}],"members":{}},"TuiNotificationsService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":16,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":24,"character":9},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/core/tokens","name":"TUI_NOTIFICATION_OPTIONS","line":24,"character":16}]}]],"parameters":[{"__symbolic":"reference","module":"@taiga-ui/core/tokens","name":"NotificationTokenOptions","line":25,"character":33}]}],"show":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"TuiNotificationsHostComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":13,"character":1},"arguments":[{"selector":"tui-notifications-host","changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":15,"character":21},"member":"OnPush"},"animations":[{"__symbolic":"reference","module":"@taiga-ui/core/animations","name":"tuiFadeInList","line":18,"character":17},{"__symbolic":"reference","module":"@taiga-ui/core/animations","name":"tuiSlideInRightList","line":18,"character":32},{"__symbolic":"reference","module":"@taiga-ui/core/animations","name":"tuiHeightCollapseList","line":18,"character":53}],"template":"<ng-container *tuiLet=\"service.items$ | async as items\">\n <div\n *ngIf=\"items.length\"\n class=\"wrapper\"\n [@tuiFadeInList]=\"getAnimation(items.length)\"\n [@tuiHeightCollapseList]=\"getAnimation(items.length)\"\n [@tuiSlideInRightList]=\"getAnimation(items.length)\"\n >\n <tui-notification-alert\n *ngFor=\"let item of items\"\n role=\"alert\"\n class=\"alert\"\n [item]=\"item\"\n ></tui-notification-alert>\n </div>\n</ng-container>\n","styles":[":host{position:fixed;top:0;left:0;width:100%;height:0}.wrapper{width:18rem;margin-left:auto;padding:2rem 3rem 0 0;pointer-events:none}@media screen and (max-width:47.9375em){.wrapper{padding:1rem 1rem 0 0}}@media screen and (min-width:80em){.wrapper{width:23rem}}.alert{pointer-events:auto}.alert:not(:first-child){margin-top:.75rem}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":22,"character":9},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/core/tokens","name":"TUI_ANIMATION_OPTIONS","line":22,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":23,"character":9},"arguments":[{"__symbolic":"reference","name":"TuiNotificationsService"}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/animations","name":"AnimationOptions","line":22,"character":65},{"__symbolic":"reference","name":"TuiNotificationsService"}]}],"getAnimation":[{"__symbolic":"method","decorators":[{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiPure","line":26,"character":5}]}]}}},"origins":{"NotificationAlert":"./notification-alert/Notification-alert","DEFAULT_ALERT_AUTOCLOSE_TIMEOUT":"./notification-alert/notification-alert.component","TuiNotificationAlertComponent":"./notification-alert/notification-alert.component","TuiNotificationAlertModule":"./notification-alert/notification-alert.module","TuiNotificationContentContext":"./notification-content-context","NOTIFICATIONS_HOST":"./notifications-host/notifications-host.component","TuiNotificationsModule":"./notifications.module","TuiNotificationsService":"./notifications.service","TuiNotificationsHostComponent":"./notifications-host/notifications-host.component"},"importAs":"@taiga-ui/core/modules/notifications"}
1
+ {"__symbolic":"module","version":4,"metadata":{"NotificationAlert":{"__symbolic":"class","arity":2,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"Observer","module":"rxjs","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":26,"character":36,"context":{"typeName":"O"},"module":"./notification-alert/Notification-alert"}]},{"__symbolic":"reference","name":"PolymorpheusContent","module":"@tinkoff/ng-polymorpheus","arguments":[{"__symbolic":"reference","name":"TuiNotificationContentContext"}]},{"__symbolic":"error","message":"Could not resolve type","line":28,"character":34,"context":{"typeName":"Required"},"module":"./notification-alert/Notification-alert"}]}],"withData":[{"__symbolic":"method"}]}},"DEFAULT_ALERT_AUTOCLOSE_TIMEOUT":3000,"TuiNotificationAlertComponent":{"__symbolic":"class","arity":2,"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":18,"character":1},"arguments":[{"selector":"tui-notification-alert","changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":20,"character":21},"member":"OnPush"},"providers":[{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"TuiDestroyService","line":23,"character":16}],"template":"<tui-notification\n *ngIf=\"item.hasCloseButton; else noClose\"\n [status]=\"item.status\"\n [hasIcon]=\"item.hasIcon\"\n (close)=\"closeNotification()\"\n>\n <label\n *ngIf=\"item.label\"\n polymorpheus-outlet\n automation-id=\"tui-notification-alert__heading\"\n class=\"heading\"\n [content]=\"item.label\"\n [context]=\"context\"\n ></label>\n <div\n polymorpheus-outlet\n automation-id=\"tui-notification-alert__content\"\n class=\"content\"\n [content]=\"item.content\"\n [context]=\"context\"\n ></div>\n</tui-notification>\n<ng-template #noClose>\n <tui-notification [status]=\"item.status\" [hasIcon]=\"item.hasIcon\">\n <label\n *ngIf=\"item.label\"\n polymorpheus-outlet\n automation-id=\"tui-notification-alert__heading\"\n class=\"heading\"\n [content]=\"item.label\"\n [context]=\"context\"\n ></label>\n <div\n polymorpheus-outlet\n automation-id=\"tui-notification-alert__content\"\n class=\"content\"\n [content]=\"item.content\"\n [context]=\"context\"\n ></div>\n </tui-notification>\n</ng-template>\n","styles":[":host{box-shadow:0 .5rem 1rem rgba(0,0,0,.16);display:block;border-radius:var(--tui-radius-m)}.heading{font:var(--tui-font-text-m);line-height:1.25rem;font-weight:700;margin:0}.content{color:var(--tui-text-01);word-wrap:break-word}.content:empty{display:none}"]}]}],"members":{"item":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":26,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":30,"character":9},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":30,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":31,"character":9},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"TuiDestroyService","line":31,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":32,"character":9},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/core/tokens","name":"TUI_NOTIFICATION_OPTIONS","line":32,"character":16}]}]],"parameters":[{"__symbolic":"reference","name":"ElementRef","module":"@angular/core","arguments":[{"__symbolic":"error","message":"Could not resolve type","line":30,"character":68,"context":{"typeName":"HTMLElement"},"module":"./notification-alert/notification-alert.component"}]},{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"TuiDestroyService","line":31,"character":62},{"__symbolic":"reference","module":"@taiga-ui/core/tokens","name":"NotificationTokenOptions","line":33,"character":26}]}],"ngOnInit":[{"__symbolic":"method"}],"closeNotification":[{"__symbolic":"method"}],"calculateContext":[{"__symbolic":"method","decorators":[{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiPure","line":48,"character":5}]}],"initAutoClose":[{"__symbolic":"method"}]}},"TuiNotificationAlertModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":7,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":8,"character":14},{"__symbolic":"reference","module":"@tinkoff/ng-polymorpheus","name":"PolymorpheusModule","line":8,"character":28},{"__symbolic":"reference","module":"@taiga-ui/core/components/notification","name":"TuiNotificationModule","line":8,"character":48}],"declarations":[{"__symbolic":"reference","name":"TuiNotificationAlertComponent"}],"exports":[{"__symbolic":"reference","name":"TuiNotificationAlertComponent"}]}]}],"members":{}},"TuiNotificationContentContext":{"__symbolic":"interface"},"NOTIFICATIONS_HOST":{"__symbolic":"reference","name":"TuiNotificationsHostComponent"},"TuiNotificationsModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":10,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":11,"character":14},{"__symbolic":"reference","name":"TuiNotificationAlertModule"},{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"TuiLetModule","line":11,"character":56}],"declarations":[{"__symbolic":"reference","name":"TuiNotificationsHostComponent"}],"exports":[{"__symbolic":"reference","name":"TuiNotificationsHostComponent"}],"entryComponents":[{"__symbolic":"reference","name":"TuiNotificationsHostComponent"}],"providers":[{"provide":{"__symbolic":"reference","name":"TuiNotificationsHostComponent"},"useValue":{"__symbolic":"reference","name":"NOTIFICATIONS_HOST"}}]}]}],"members":{}},"TuiNotificationsService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":16,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":24,"character":9},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/core/tokens","name":"TUI_NOTIFICATION_OPTIONS","line":24,"character":16}]}]],"parameters":[{"__symbolic":"reference","module":"@taiga-ui/core/tokens","name":"NotificationTokenOptions","line":25,"character":26}]}],"show":[{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"},{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"TuiNotificationsHostComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":13,"character":1},"arguments":[{"selector":"tui-notifications-host","changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":15,"character":21},"member":"OnPush"},"animations":[{"__symbolic":"reference","module":"@taiga-ui/core/animations","name":"tuiFadeInList","line":18,"character":17},{"__symbolic":"reference","module":"@taiga-ui/core/animations","name":"tuiSlideInRightList","line":18,"character":32},{"__symbolic":"reference","module":"@taiga-ui/core/animations","name":"tuiHeightCollapseList","line":18,"character":53}],"template":"<ng-container *tuiLet=\"service.items$ | async as items\">\n <div\n *ngIf=\"items.length\"\n class=\"wrapper\"\n [@tuiFadeInList]=\"getAnimation(items.length)\"\n [@tuiHeightCollapseList]=\"getAnimation(items.length)\"\n [@tuiSlideInRightList]=\"getAnimation(items.length)\"\n >\n <tui-notification-alert\n *ngFor=\"let item of items\"\n role=\"alert\"\n class=\"alert\"\n [item]=\"item\"\n ></tui-notification-alert>\n </div>\n</ng-container>\n","styles":[":host{position:fixed;top:0;left:0;width:100%;height:0}.wrapper{width:18rem;margin-left:auto;padding:2rem 3rem 0 0;pointer-events:none}:host-context(tui-root._mobile) .wrapper{padding:1rem 1rem 0 0}@media screen and (min-width:80em){.wrapper{width:23rem}}.alert{pointer-events:auto}.alert:not(:first-child){margin-top:.75rem}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":22,"character":9},"arguments":[{"__symbolic":"reference","module":"@taiga-ui/core/tokens","name":"TUI_ANIMATION_OPTIONS","line":22,"character":16}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":23,"character":9},"arguments":[{"__symbolic":"reference","name":"TuiNotificationsService"}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/animations","name":"AnimationOptions","line":22,"character":65},{"__symbolic":"reference","name":"TuiNotificationsService"}]}],"getAnimation":[{"__symbolic":"method","decorators":[{"__symbolic":"reference","module":"@taiga-ui/cdk","name":"tuiPure","line":26,"character":5}]}]}}},"origins":{"NotificationAlert":"./notification-alert/Notification-alert","DEFAULT_ALERT_AUTOCLOSE_TIMEOUT":"./notification-alert/notification-alert.component","TuiNotificationAlertComponent":"./notification-alert/notification-alert.component","TuiNotificationAlertModule":"./notification-alert/notification-alert.module","TuiNotificationContentContext":"./notification-content-context","NOTIFICATIONS_HOST":"./notifications-host/notifications-host.component","TuiNotificationsModule":"./notifications.module","TuiNotificationsService":"./notifications.service","TuiNotificationsHostComponent":"./notifications-host/notifications-host.component"},"importAs":"@taiga-ui/core/modules/notifications"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@taiga-ui/core",
3
- "version": "2.26.0",
3
+ "version": "2.29.0",
4
4
  "description": "Core library for creating Angular components and applications using Taiga UI",
5
5
  "keywords": [
6
6
  "angular",
@@ -12,15 +12,15 @@
12
12
  "directive"
13
13
  ],
14
14
  "license": "Apache-2.0",
15
- "repository": "https://github.com/TinkoffCreditSystems/taiga-ui",
16
- "homepage": "https://github.com/TinkoffCreditSystems/taiga-ui",
15
+ "repository": "https://github.com/tinkoff/taiga-ui",
16
+ "homepage": "https://github.com/tinkoff/taiga-ui",
17
17
  "schematics": "./schematics/collection.json",
18
18
  "dependencies": {
19
- "@taiga-ui/i18n": "2.26.0",
19
+ "@taiga-ui/i18n": "2.29.0",
20
20
  "tslib": "^1.10.0"
21
21
  },
22
22
  "peerDependencies": {
23
- "@taiga-ui/cdk": "2.26.0",
23
+ "@taiga-ui/cdk": "2.29.0",
24
24
  "@angular/animations": ">=9.0.0",
25
25
  "@angular/common": ">=9.0.0",
26
26
  "@angular/core": ">=9.0.0",
@@ -1,2 +1,3 @@
1
+ export * from './is-mobile-resolution.provider';
1
2
  export * from './mode.provider';
2
3
  export * from './watched-controller-provider-factory';
@@ -0,0 +1,5 @@
1
+ import { ElementRef, NgZone, Provider } from '@angular/core';
2
+ import { TuiMedia } from '@taiga-ui/core/interfaces';
3
+ import { Observable } from 'rxjs';
4
+ export declare function isMobileResFactory(windowRef: Window, { mobile }: TuiMedia, { nativeElement }: ElementRef, ngZone: NgZone): Observable<boolean>;
5
+ export declare const TUI_IS_MOBILE_RES_PROVIDER: Provider;
@@ -1 +1 @@
1
- {"__symbolic":"module","version":4,"metadata":{"modeFactory":{"__symbolic":"function"},"MODE_PROVIDER":{"provide":{"__symbolic":"reference","module":"@taiga-ui/core/tokens","name":"TUI_MODE","line":22,"character":13},"deps":[[{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":23,"character":16}},{"__symbolic":"reference","module":"@taiga-ui/core/directives/mode","name":"TuiModeDirective","line":23,"character":28}],{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":23,"character":47}],"useFactory":{"__symbolic":"reference","name":"modeFactory"}},"watchedControllerFactory":{"__symbolic":"function"}},"origins":{"modeFactory":"./mode.provider","MODE_PROVIDER":"./mode.provider","watchedControllerFactory":"./watched-controller-provider-factory"},"importAs":"@taiga-ui/core/providers"}
1
+ {"__symbolic":"module","version":4,"metadata":{"isMobileResFactory":{"__symbolic":"function"},"TUI_IS_MOBILE_RES_PROVIDER":{"provide":{"__symbolic":"reference","module":"@taiga-ui/core/tokens","name":"TUI_IS_MOBILE_RES","line":27,"character":13},"deps":[{"__symbolic":"reference","module":"@ng-web-apis/common","name":"WINDOW","line":28,"character":11},{"__symbolic":"reference","module":"@taiga-ui/core/tokens","name":"TUI_MEDIA","line":28,"character":19},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":28,"character":30},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":28,"character":42}],"useFactory":{"__symbolic":"reference","name":"isMobileResFactory"}},"modeFactory":{"__symbolic":"function"},"MODE_PROVIDER":{"provide":{"__symbolic":"reference","module":"@taiga-ui/core/tokens","name":"TUI_MODE","line":22,"character":13},"deps":[[{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":23,"character":16}},{"__symbolic":"reference","module":"@taiga-ui/core/directives/mode","name":"TuiModeDirective","line":23,"character":28}],{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":23,"character":47}],"useFactory":{"__symbolic":"reference","name":"modeFactory"}},"watchedControllerFactory":{"__symbolic":"function"}},"origins":{"isMobileResFactory":"./is-mobile-resolution.provider","TUI_IS_MOBILE_RES_PROVIDER":"./is-mobile-resolution.provider","modeFactory":"./mode.provider","MODE_PROVIDER":"./mode.provider","watchedControllerFactory":"./watched-controller-provider-factory"},"importAs":"@taiga-ui/core/providers"}
@@ -5,9 +5,6 @@ declare type AbstractTuiHint = any;
5
5
  * Service for displaying hints/tooltips
6
6
  */
7
7
  export declare class TuiHintService extends BehaviorSubject<ReadonlyArray<AbstractTuiHint>> {
8
- constructor();
9
- add(directive: AbstractTuiHint): void;
10
- remove(directive: AbstractTuiHint): void;
11
8
  /**
12
9
  * TODO: v2.0
13
10
  * We need the following logic for desribedBy
@@ -15,6 +12,9 @@ export declare class TuiHintService extends BehaviorSubject<ReadonlyArray<Abstra
15
12
  * manage it using TuiHintService inside
16
13
  */
17
14
  private directives;
15
+ constructor();
16
+ add(directive: AbstractTuiHint): void;
17
+ remove(directive: AbstractTuiHint): void;
18
18
  register(directive: TuiHintDirective): void;
19
19
  unregister(directive: TuiHintDirective): void;
20
20
  showHintForId(id: string): void;
@@ -7,8 +7,8 @@ import { BehaviorSubject } from 'rxjs';
7
7
  export declare class TuiSvgService {
8
8
  private readonly tuiSanitizer;
9
9
  private readonly sanitizer;
10
- readonly items$: BehaviorSubject<Map<string, SafeHtml>>;
11
10
  private originals;
11
+ readonly items$: BehaviorSubject<Map<string, SafeHtml>>;
12
12
  constructor(tuiSanitizer: Sanitizer | null, sanitizer: DomSanitizer, icons: Record<string, string>);
13
13
  define(icons: Record<string, string>): void;
14
14
  getOriginal(name: string): string | null;
@@ -53,7 +53,7 @@
53
53
  --tui-secondary: #ebefff; // inputs and secondary buttons
54
54
  --tui-secondary-hover: #dfe3f3; // inputs and secondary buttons hover
55
55
  --tui-secondary-active: #d8ddf2; // inputs and secondary buttons pressed
56
- --tui-accent: #ff8078; // fill and outline of accent elements
56
+ --tui-accent: #ff7043; // fill and outline of accent elements
57
57
  --tui-accent-hover: #ff9a94; // accent elements hover
58
58
  --tui-accent-active: #e7716a; // accent elements pressed
59
59
  --tui-accent-text: #fff; // text on accent background
@@ -0,0 +1,31 @@
1
+ tui-wrapper[data-appearance='accent'] {
2
+ background: var(--tui-accent);
3
+ color: var(--tui-accent-text);
4
+
5
+ &[data-state='hovered'] {
6
+ background: var(--tui-accent-hover);
7
+ }
8
+
9
+ &:active,
10
+ &[data-state='pressed'] {
11
+ background: var(--tui-accent-active);
12
+ }
13
+
14
+ &[data-state='disabled'] {
15
+ opacity: var(--tui-disabled-opacity);
16
+ }
17
+
18
+ &._invalid {
19
+ color: var(--tui-negative-night);
20
+ background: var(--tui-error-bg);
21
+
22
+ &[data-state='hovered'],
23
+ &[data-state='pressed'] {
24
+ background: var(--tui-error-bg-hover);
25
+ }
26
+
27
+ &._focused:after {
28
+ color: var(--tui-error-fill);
29
+ }
30
+ }
31
+ }
@@ -7,6 +7,7 @@ tui-wrapper[data-appearance='icon'] {
7
7
  color: var(--tui-base-07);
8
8
  }
9
9
 
10
+ &:active,
10
11
  &[data-state='pressed'] {
11
12
  color: var(--tui-base-08);
12
13
  }
@@ -12,6 +12,7 @@ tui-wrapper[data-appearance='outline'] {
12
12
  }
13
13
  }
14
14
 
15
+ &:active,
15
16
  &[data-state='pressed'] {
16
17
  &:after {
17
18
  color: var(--tui-base-06);
@@ -6,6 +6,7 @@ tui-wrapper[data-appearance='primary'] {
6
6
  background: var(--tui-primary-hover);
7
7
  }
8
8
 
9
+ &:active,
9
10
  &[data-state='pressed'] {
10
11
  background: var(--tui-primary-active);
11
12
  }
@@ -8,6 +8,7 @@ tui-wrapper[data-appearance='flat'] {
8
8
  color: var(--tui-link-hover);
9
9
  }
10
10
 
11
+ &:active,
11
12
  &[data-state='pressed'] {
12
13
  background: var(--tui-secondary-active);
13
14
  }
@@ -7,6 +7,7 @@ tui-wrapper[data-appearance='whiteblock-active'] {
7
7
  color: var(--tui-base-03);
8
8
  }
9
9
 
10
+ &:active,
10
11
  &[data-state='hovered'],
11
12
  &[data-state='pressed'] {
12
13
  background: var(--tui-base-02);
@@ -31,6 +32,7 @@ tui-wrapper[data-appearance='whiteblock-active'] {
31
32
  color: var(--tui-primary-hover);
32
33
  }
33
34
 
35
+ &:active,
34
36
  &[data-state='pressed']:after {
35
37
  color: var(--tui-primary-active);
36
38
  }
@@ -1,6 +1,7 @@
1
1
  @import 'wrapper/icon.less';
2
2
  @import 'wrapper/outline.less';
3
3
  @import 'wrapper/primary.less';
4
+ @import 'wrapper/accent.less';
4
5
  @import 'wrapper/secondary.less';
5
6
  @import 'wrapper/table.less';
6
7
  @import 'wrapper/textfield.less';
package/tokens/index.d.ts CHANGED
@@ -10,6 +10,7 @@ export * from './first-day-of-week';
10
10
  export * from './i18n';
11
11
  export * from './icons';
12
12
  export * from './icons-path';
13
+ export * from './is-mobile-resolution';
13
14
  export * from './media';
14
15
  export * from './mode';
15
16
  export * from './notification-options';
@@ -18,5 +19,6 @@ export * from './option-content';
18
19
  export * from './ordered-short-week-days';
19
20
  export * from './sanitizer';
20
21
  export * from './scroll-ref';
22
+ export * from './svg-src-processor';
21
23
  export * from './textfield-appearance';
22
24
  export * from './value-accessor';
@@ -0,0 +1,3 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ import { Observable } from 'rxjs';
3
+ export declare const TUI_IS_MOBILE_RES: InjectionToken<Observable<boolean>>;
@@ -0,0 +1,3 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ import { TuiStringHandler } from '@taiga-ui/cdk';
3
+ export declare const TUI_SVG_SRC_PROCESSOR: InjectionToken<TuiStringHandler<string>>;