@taiga-ui/cdk 3.51.0-canary.6291033 → 3.51.0-canary.8873fad

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 (735) hide show
  1. package/abstract/control.d.ts +6 -0
  2. package/abstract/interactive.d.ts +9 -0
  3. package/abstract/portal-host.d.ts +4 -0
  4. package/abstract/portal-service.d.ts +3 -0
  5. package/abstract/taiga-ui-cdk-abstract.d.ts +3 -0
  6. package/abstract/theme-switcher.d.ts +6 -0
  7. package/bundles/taiga-ui-cdk-abstract.umd.js +34 -0
  8. package/bundles/taiga-ui-cdk-abstract.umd.js.map +1 -1
  9. package/bundles/taiga-ui-cdk-classes.umd.js +9 -0
  10. package/bundles/taiga-ui-cdk-classes.umd.js.map +1 -1
  11. package/bundles/taiga-ui-cdk-coercion.umd.js +10 -0
  12. package/bundles/taiga-ui-cdk-coercion.umd.js.map +1 -1
  13. package/bundles/taiga-ui-cdk-components-alert-host.umd.js +8 -0
  14. package/bundles/taiga-ui-cdk-components-alert-host.umd.js.map +1 -1
  15. package/bundles/taiga-ui-cdk-components-dialog-host.umd.js +11 -0
  16. package/bundles/taiga-ui-cdk-components-dialog-host.umd.js.map +1 -1
  17. package/bundles/taiga-ui-cdk-components-dropdown-host.umd.js +12 -0
  18. package/bundles/taiga-ui-cdk-components-dropdown-host.umd.js.map +1 -1
  19. package/bundles/taiga-ui-cdk-components-scroll-controls.umd.js +4 -0
  20. package/bundles/taiga-ui-cdk-components-scroll-controls.umd.js.map +1 -1
  21. package/bundles/taiga-ui-cdk-components.umd.js +4 -0
  22. package/bundles/taiga-ui-cdk-components.umd.js.map +1 -1
  23. package/bundles/taiga-ui-cdk-constants.umd.js +108 -0
  24. package/bundles/taiga-ui-cdk-constants.umd.js.map +1 -1
  25. package/bundles/taiga-ui-cdk-date-time.umd.js +284 -0
  26. package/bundles/taiga-ui-cdk-date-time.umd.js.map +1 -1
  27. package/bundles/taiga-ui-cdk-decorators.umd.js +26 -0
  28. package/bundles/taiga-ui-cdk-decorators.umd.js.map +1 -1
  29. package/bundles/taiga-ui-cdk-directives-active-zone.umd.js +4 -0
  30. package/bundles/taiga-ui-cdk-directives-active-zone.umd.js.map +1 -1
  31. package/bundles/taiga-ui-cdk-directives-auto-focus.umd.js +44 -1
  32. package/bundles/taiga-ui-cdk-directives-auto-focus.umd.js.map +1 -1
  33. package/bundles/taiga-ui-cdk-directives-autofilled.umd.js +4 -0
  34. package/bundles/taiga-ui-cdk-directives-autofilled.umd.js.map +1 -1
  35. package/bundles/taiga-ui-cdk-directives-checked.umd.js +4 -0
  36. package/bundles/taiga-ui-cdk-directives-checked.umd.js.map +1 -1
  37. package/bundles/taiga-ui-cdk-directives-click-outside.umd.js +4 -0
  38. package/bundles/taiga-ui-cdk-directives-click-outside.umd.js.map +1 -1
  39. package/bundles/taiga-ui-cdk-directives-control.umd.js +4 -0
  40. package/bundles/taiga-ui-cdk-directives-control.umd.js.map +1 -1
  41. package/bundles/taiga-ui-cdk-directives-copy-processor.umd.js +4 -0
  42. package/bundles/taiga-ui-cdk-directives-copy-processor.umd.js.map +1 -1
  43. package/bundles/taiga-ui-cdk-directives-drag.umd.js +10 -0
  44. package/bundles/taiga-ui-cdk-directives-drag.umd.js.map +1 -1
  45. package/bundles/taiga-ui-cdk-directives-droppable.umd.js +5 -0
  46. package/bundles/taiga-ui-cdk-directives-droppable.umd.js.map +1 -1
  47. package/bundles/taiga-ui-cdk-directives-element.umd.js +18 -0
  48. package/bundles/taiga-ui-cdk-directives-element.umd.js.map +1 -1
  49. package/bundles/taiga-ui-cdk-directives-focus-trap.umd.js +17 -0
  50. package/bundles/taiga-ui-cdk-directives-focus-trap.umd.js.map +1 -1
  51. package/bundles/taiga-ui-cdk-directives-focus-visible.umd.js +9 -0
  52. package/bundles/taiga-ui-cdk-directives-focus-visible.umd.js.map +1 -1
  53. package/bundles/taiga-ui-cdk-directives-focusable.umd.js +10 -0
  54. package/bundles/taiga-ui-cdk-directives-focusable.umd.js.map +1 -1
  55. package/bundles/taiga-ui-cdk-directives-focused.umd.js +9 -0
  56. package/bundles/taiga-ui-cdk-directives-focused.umd.js.map +1 -1
  57. package/bundles/taiga-ui-cdk-directives-for-async.umd.js +7 -0
  58. package/bundles/taiga-ui-cdk-directives-for-async.umd.js.map +1 -1
  59. package/bundles/taiga-ui-cdk-directives-for.umd.js +4 -0
  60. package/bundles/taiga-ui-cdk-directives-for.umd.js.map +1 -1
  61. package/bundles/taiga-ui-cdk-directives-high-dpi.umd.js +7 -0
  62. package/bundles/taiga-ui-cdk-directives-high-dpi.umd.js.map +1 -1
  63. package/bundles/taiga-ui-cdk-directives-hovered.umd.js +7 -1
  64. package/bundles/taiga-ui-cdk-directives-hovered.umd.js.map +1 -1
  65. package/bundles/taiga-ui-cdk-directives-item.umd.js +7 -0
  66. package/bundles/taiga-ui-cdk-directives-item.umd.js.map +1 -1
  67. package/bundles/taiga-ui-cdk-directives-let.umd.js +17 -0
  68. package/bundles/taiga-ui-cdk-directives-let.umd.js.map +1 -1
  69. package/bundles/taiga-ui-cdk-directives-media.umd.js +7 -0
  70. package/bundles/taiga-ui-cdk-directives-media.umd.js.map +1 -1
  71. package/bundles/taiga-ui-cdk-directives-obscured.umd.js +7 -0
  72. package/bundles/taiga-ui-cdk-directives-obscured.umd.js.map +1 -1
  73. package/bundles/taiga-ui-cdk-directives-overscroll.umd.js +10 -0
  74. package/bundles/taiga-ui-cdk-directives-overscroll.umd.js.map +1 -1
  75. package/bundles/taiga-ui-cdk-directives-pan.umd.js +7 -0
  76. package/bundles/taiga-ui-cdk-directives-pan.umd.js.map +1 -1
  77. package/bundles/taiga-ui-cdk-directives-platform.umd.js +4 -0
  78. package/bundles/taiga-ui-cdk-directives-platform.umd.js.map +1 -1
  79. package/bundles/taiga-ui-cdk-directives-portal.umd.js +4 -0
  80. package/bundles/taiga-ui-cdk-directives-portal.umd.js.map +1 -1
  81. package/bundles/taiga-ui-cdk-directives-pressed.umd.js +4 -0
  82. package/bundles/taiga-ui-cdk-directives-pressed.umd.js.map +1 -1
  83. package/bundles/taiga-ui-cdk-directives-prevent-default.umd.js +12 -0
  84. package/bundles/taiga-ui-cdk-directives-prevent-default.umd.js.map +1 -1
  85. package/bundles/taiga-ui-cdk-directives-repeat-times.umd.js +11 -0
  86. package/bundles/taiga-ui-cdk-directives-repeat-times.umd.js.map +1 -1
  87. package/bundles/taiga-ui-cdk-directives-resize.umd.js +7 -0
  88. package/bundles/taiga-ui-cdk-directives-resize.umd.js.map +1 -1
  89. package/bundles/taiga-ui-cdk-directives-resizer.umd.js +5 -0
  90. package/bundles/taiga-ui-cdk-directives-resizer.umd.js.map +1 -1
  91. package/bundles/taiga-ui-cdk-directives-swipe.umd.js +7 -0
  92. package/bundles/taiga-ui-cdk-directives-swipe.umd.js.map +1 -1
  93. package/bundles/taiga-ui-cdk-directives-validator.umd.js +4 -0
  94. package/bundles/taiga-ui-cdk-directives-validator.umd.js.map +1 -1
  95. package/bundles/taiga-ui-cdk-directives-value-changes.umd.js +4 -0
  96. package/bundles/taiga-ui-cdk-directives-value-changes.umd.js.map +1 -1
  97. package/bundles/taiga-ui-cdk-directives-zoom.umd.js +7 -0
  98. package/bundles/taiga-ui-cdk-directives-zoom.umd.js.map +1 -1
  99. package/bundles/taiga-ui-cdk-directives.umd.js +4 -0
  100. package/bundles/taiga-ui-cdk-directives.umd.js.map +1 -1
  101. package/bundles/taiga-ui-cdk-enums.umd.js +8 -0
  102. package/bundles/taiga-ui-cdk-enums.umd.js.map +1 -1
  103. package/bundles/taiga-ui-cdk-exceptions.umd.js +4 -0
  104. package/bundles/taiga-ui-cdk-exceptions.umd.js.map +1 -1
  105. package/bundles/taiga-ui-cdk-interfaces.umd.js +3 -1
  106. package/bundles/taiga-ui-cdk-interfaces.umd.js.map +1 -1
  107. package/bundles/taiga-ui-cdk-observables.umd.js +34 -1
  108. package/bundles/taiga-ui-cdk-observables.umd.js.map +1 -1
  109. package/bundles/taiga-ui-cdk-pipes-filter.umd.js +4 -0
  110. package/bundles/taiga-ui-cdk-pipes-filter.umd.js.map +1 -1
  111. package/bundles/taiga-ui-cdk-pipes-is-present.umd.js +4 -0
  112. package/bundles/taiga-ui-cdk-pipes-is-present.umd.js.map +1 -1
  113. package/bundles/taiga-ui-cdk-pipes-keys.umd.js +4 -0
  114. package/bundles/taiga-ui-cdk-pipes-keys.umd.js.map +1 -1
  115. package/bundles/taiga-ui-cdk-pipes-mapper.umd.js +4 -0
  116. package/bundles/taiga-ui-cdk-pipes-mapper.umd.js.map +1 -1
  117. package/bundles/taiga-ui-cdk-pipes-replace.umd.js +7 -1
  118. package/bundles/taiga-ui-cdk-pipes-replace.umd.js.map +1 -1
  119. package/bundles/taiga-ui-cdk-pipes.umd.js +4 -0
  120. package/bundles/taiga-ui-cdk-pipes.umd.js.map +1 -1
  121. package/bundles/taiga-ui-cdk-services.umd.js +53 -5
  122. package/bundles/taiga-ui-cdk-services.umd.js.map +1 -1
  123. package/bundles/taiga-ui-cdk-tokens.umd.js +109 -5
  124. package/bundles/taiga-ui-cdk-tokens.umd.js.map +1 -1
  125. package/bundles/taiga-ui-cdk-types.umd.js +3 -1
  126. package/bundles/taiga-ui-cdk-types.umd.js.map +1 -1
  127. package/bundles/taiga-ui-cdk-utils-browser.umd.js +4 -0
  128. package/bundles/taiga-ui-cdk-utils-browser.umd.js.map +1 -1
  129. package/bundles/taiga-ui-cdk-utils-color.umd.js +10 -0
  130. package/bundles/taiga-ui-cdk-utils-color.umd.js.map +1 -1
  131. package/bundles/taiga-ui-cdk-utils-dom.umd.js +59 -3
  132. package/bundles/taiga-ui-cdk-utils-dom.umd.js.map +1 -1
  133. package/bundles/taiga-ui-cdk-utils-focus.umd.js +51 -0
  134. package/bundles/taiga-ui-cdk-utils-focus.umd.js.map +1 -1
  135. package/bundles/taiga-ui-cdk-utils-format.umd.js +7 -0
  136. package/bundles/taiga-ui-cdk-utils-format.umd.js.map +1 -1
  137. package/bundles/taiga-ui-cdk-utils-math.umd.js +38 -0
  138. package/bundles/taiga-ui-cdk-utils-math.umd.js.map +1 -1
  139. package/bundles/taiga-ui-cdk-utils-miscellaneous.umd.js +42 -6
  140. package/bundles/taiga-ui-cdk-utils-miscellaneous.umd.js.map +1 -1
  141. package/bundles/taiga-ui-cdk-utils-os.umd.js +14 -0
  142. package/bundles/taiga-ui-cdk-utils-os.umd.js.map +1 -1
  143. package/bundles/taiga-ui-cdk-utils-svg.umd.js +19 -1
  144. package/bundles/taiga-ui-cdk-utils-svg.umd.js.map +1 -1
  145. package/bundles/taiga-ui-cdk-utils.umd.js +4 -0
  146. package/bundles/taiga-ui-cdk-utils.umd.js.map +1 -1
  147. package/bundles/taiga-ui-cdk.umd.js +4 -0
  148. package/bundles/taiga-ui-cdk.umd.js.map +1 -1
  149. package/classes/assert.d.ts +5 -0
  150. package/classes/taiga-ui-cdk-classes.d.ts +3 -0
  151. package/coercion/coerce-boolean-property.d.ts +4 -0
  152. package/coercion/taiga-ui-cdk-coercion.d.ts +3 -0
  153. package/components/alert-host/taiga-ui-cdk-components-alert-host.d.ts +3 -0
  154. package/components/dialog-host/dialog-host.component.d.ts +3 -0
  155. package/components/dialog-host/taiga-ui-cdk-components-dialog-host.d.ts +3 -0
  156. package/components/dropdown-host/dropdown-host.component.d.ts +3 -0
  157. package/components/dropdown-host/dropdown-portal.service.d.ts +3 -0
  158. package/components/dropdown-host/taiga-ui-cdk-components-dropdown-host.d.ts +3 -0
  159. package/components/scroll-controls/taiga-ui-cdk-components-scroll-controls.d.ts +3 -0
  160. package/components/taiga-ui-cdk-components.d.ts +3 -0
  161. package/constants/always-false-handler.d.ts +3 -0
  162. package/constants/always-true-handler.d.ts +3 -0
  163. package/constants/browser.d.ts +4 -0
  164. package/constants/empty.d.ts +5 -0
  165. package/constants/matcher.d.ts +19 -0
  166. package/constants/parent-animation.d.ts +6 -0
  167. package/constants/stringify.d.ts +3 -0
  168. package/constants/taiga-ui-cdk-constants.d.ts +3 -0
  169. package/constants/unicode-chars.d.ts +51 -0
  170. package/constants/used-icons.d.ts +6 -0
  171. package/date-time/date-fillers.d.ts +11 -0
  172. package/date-time/date-format.d.ts +3 -0
  173. package/date-time/date-separator.d.ts +3 -0
  174. package/date-time/day-range.d.ts +33 -0
  175. package/date-time/day.d.ts +91 -0
  176. package/date-time/month-range.d.ts +3 -0
  177. package/date-time/month.d.ts +56 -0
  178. package/date-time/taiga-ui-cdk-date-time.d.ts +3 -0
  179. package/date-time/time.d.ts +36 -0
  180. package/date-time/year.d.ts +42 -0
  181. package/decorators/debounce.d.ts +4 -0
  182. package/decorators/default-prop.d.ts +9 -0
  183. package/decorators/pure.d.ts +18 -0
  184. package/decorators/required-setter.d.ts +9 -0
  185. package/decorators/taiga-ui-cdk-decorators.d.ts +3 -0
  186. package/directives/active-zone/taiga-ui-cdk-directives-active-zone.d.ts +3 -0
  187. package/directives/auto-focus/handlers/ios.handler.d.ts +39 -0
  188. package/directives/auto-focus/taiga-ui-cdk-directives-auto-focus.d.ts +3 -0
  189. package/directives/autofilled/taiga-ui-cdk-directives-autofilled.d.ts +3 -0
  190. package/directives/checked/taiga-ui-cdk-directives-checked.d.ts +3 -0
  191. package/directives/click-outside/taiga-ui-cdk-directives-click-outside.d.ts +3 -0
  192. package/directives/control/taiga-ui-cdk-directives-control.d.ts +3 -0
  193. package/directives/copy-processor/taiga-ui-cdk-directives-copy-processor.d.ts +3 -0
  194. package/directives/drag/drag.directive.d.ts +3 -0
  195. package/directives/drag/drag.module.d.ts +3 -0
  196. package/directives/drag/taiga-ui-cdk-directives-drag.d.ts +3 -0
  197. package/directives/droppable/taiga-ui-cdk-directives-droppable.d.ts +3 -0
  198. package/directives/element/taiga-ui-cdk-directives-element.d.ts +3 -0
  199. package/directives/focus-trap/taiga-ui-cdk-directives-focus-trap.d.ts +3 -0
  200. package/directives/focus-visible/focus-visible.directive.d.ts +5 -0
  201. package/directives/focus-visible/taiga-ui-cdk-directives-focus-visible.d.ts +3 -0
  202. package/directives/focusable/focusable.directive.d.ts +6 -0
  203. package/directives/focusable/taiga-ui-cdk-directives-focusable.d.ts +3 -0
  204. package/directives/focused/focused.directive.d.ts +5 -0
  205. package/directives/focused/taiga-ui-cdk-directives-focused.d.ts +3 -0
  206. package/directives/for/taiga-ui-cdk-directives-for.d.ts +3 -0
  207. package/directives/for-async/for-async.module.d.ts +3 -0
  208. package/directives/for-async/taiga-ui-cdk-directives-for-async.d.ts +3 -0
  209. package/directives/high-dpi/high-dpi.directive.d.ts +3 -0
  210. package/directives/high-dpi/taiga-ui-cdk-directives-high-dpi.d.ts +3 -0
  211. package/directives/hovered/taiga-ui-cdk-directives-hovered.d.ts +3 -0
  212. package/directives/item/item.directive.d.ts +3 -0
  213. package/directives/item/taiga-ui-cdk-directives-item.d.ts +3 -0
  214. package/directives/let/let-context.d.ts +3 -0
  215. package/directives/let/let.directive.d.ts +10 -0
  216. package/directives/let/taiga-ui-cdk-directives-let.d.ts +3 -0
  217. package/directives/media/taiga-ui-cdk-directives-media.d.ts +3 -0
  218. package/directives/obscured/obscured.directive.d.ts +3 -0
  219. package/directives/obscured/taiga-ui-cdk-directives-obscured.d.ts +3 -0
  220. package/directives/overscroll/overscroll.directive.d.ts +3 -0
  221. package/directives/overscroll/taiga-ui-cdk-directives-overscroll.d.ts +3 -0
  222. package/directives/pan/pan.module.d.ts +3 -0
  223. package/directives/pan/taiga-ui-cdk-directives-pan.d.ts +3 -0
  224. package/directives/platform/taiga-ui-cdk-directives-platform.d.ts +3 -0
  225. package/directives/portal/taiga-ui-cdk-directives-portal.d.ts +3 -0
  226. package/directives/pressed/taiga-ui-cdk-directives-pressed.d.ts +3 -0
  227. package/directives/prevent-default/prevent-default.directive.d.ts +5 -0
  228. package/directives/prevent-default/prevent-default.module.d.ts +3 -0
  229. package/directives/prevent-default/taiga-ui-cdk-directives-prevent-default.d.ts +3 -0
  230. package/directives/repeat-times/repeat-times.directive.d.ts +7 -0
  231. package/directives/repeat-times/taiga-ui-cdk-directives-repeat-times.d.ts +3 -0
  232. package/directives/resize/resize.module.d.ts +3 -0
  233. package/directives/resize/taiga-ui-cdk-directives-resize.d.ts +3 -0
  234. package/directives/resizer/taiga-ui-cdk-directives-resizer.d.ts +3 -0
  235. package/directives/swipe/swipe.module.d.ts +3 -0
  236. package/directives/swipe/taiga-ui-cdk-directives-swipe.d.ts +3 -0
  237. package/directives/taiga-ui-cdk-directives.d.ts +3 -0
  238. package/directives/validator/taiga-ui-cdk-directives-validator.d.ts +3 -0
  239. package/directives/value-changes/taiga-ui-cdk-directives-value-changes.d.ts +3 -0
  240. package/directives/zoom/taiga-ui-cdk-directives-zoom.d.ts +3 -0
  241. package/directives/zoom/zoom.module.d.ts +3 -0
  242. package/enums/taiga-ui-cdk-enums.d.ts +3 -0
  243. package/esm2015/abstract/control.js +7 -1
  244. package/esm2015/abstract/interactive.js +11 -1
  245. package/esm2015/abstract/portal-host.js +6 -1
  246. package/esm2015/abstract/portal-service.js +4 -1
  247. package/esm2015/abstract/taiga-ui-cdk-abstract.js +4 -1
  248. package/esm2015/abstract/theme-switcher.js +7 -1
  249. package/esm2015/classes/assert.js +6 -1
  250. package/esm2015/classes/taiga-ui-cdk-classes.js +4 -1
  251. package/esm2015/coercion/coerce-boolean-property.js +7 -1
  252. package/esm2015/coercion/taiga-ui-cdk-coercion.js +4 -1
  253. package/esm2015/components/alert-host/alert-host.component.js +5 -1
  254. package/esm2015/components/alert-host/taiga-ui-cdk-components-alert-host.js +4 -1
  255. package/esm2015/components/dialog-host/dialog-host.component.js +8 -1
  256. package/esm2015/components/dialog-host/taiga-ui-cdk-components-dialog-host.js +4 -1
  257. package/esm2015/components/dropdown-host/dropdown-host.component.js +6 -1
  258. package/esm2015/components/dropdown-host/dropdown-portal.service.js +4 -1
  259. package/esm2015/components/dropdown-host/taiga-ui-cdk-components-dropdown-host.js +4 -1
  260. package/esm2015/components/scroll-controls/taiga-ui-cdk-components-scroll-controls.js +4 -1
  261. package/esm2015/components/taiga-ui-cdk-components.js +4 -1
  262. package/esm2015/constants/always-false-handler.js +5 -1
  263. package/esm2015/constants/always-true-handler.js +5 -1
  264. package/esm2015/constants/browser.js +5 -1
  265. package/esm2015/constants/empty.js +6 -1
  266. package/esm2015/constants/matcher.js +20 -1
  267. package/esm2015/constants/parent-animation.js +7 -1
  268. package/esm2015/constants/stringify.js +4 -1
  269. package/esm2015/constants/svg-node-filter.js +3 -1
  270. package/esm2015/constants/taiga-ui-cdk-constants.js +4 -1
  271. package/esm2015/constants/unicode-chars.js +52 -1
  272. package/esm2015/constants/used-icons.js +7 -1
  273. package/esm2015/date-time/date-fillers.js +12 -1
  274. package/esm2015/date-time/date-format.js +4 -1
  275. package/esm2015/date-time/date-separator.js +4 -1
  276. package/esm2015/date-time/day-range.js +34 -1
  277. package/esm2015/date-time/day.js +94 -1
  278. package/esm2015/date-time/month-range.js +4 -1
  279. package/esm2015/date-time/month.js +57 -1
  280. package/esm2015/date-time/taiga-ui-cdk-date-time.js +4 -1
  281. package/esm2015/date-time/time.js +37 -1
  282. package/esm2015/date-time/year.js +43 -1
  283. package/esm2015/decorators/debounce.js +5 -1
  284. package/esm2015/decorators/default-prop.js +10 -1
  285. package/esm2015/decorators/required-setter.js +10 -1
  286. package/esm2015/decorators/taiga-ui-cdk-decorators.js +4 -1
  287. package/esm2015/directives/active-zone/taiga-ui-cdk-directives-active-zone.js +4 -1
  288. package/esm2015/directives/auto-focus/autofocus.options.js +3 -2
  289. package/esm2015/directives/auto-focus/handlers/ios.handler.js +40 -1
  290. package/esm2015/directives/auto-focus/taiga-ui-cdk-directives-auto-focus.js +4 -1
  291. package/esm2015/directives/autofilled/taiga-ui-cdk-directives-autofilled.js +4 -1
  292. package/esm2015/directives/checked/taiga-ui-cdk-directives-checked.js +4 -1
  293. package/esm2015/directives/click-outside/taiga-ui-cdk-directives-click-outside.js +4 -1
  294. package/esm2015/directives/control/taiga-ui-cdk-directives-control.js +4 -1
  295. package/esm2015/directives/copy-processor/taiga-ui-cdk-directives-copy-processor.js +4 -1
  296. package/esm2015/directives/drag/drag.directive.js +4 -1
  297. package/esm2015/directives/drag/drag.module.js +4 -1
  298. package/esm2015/directives/drag/taiga-ui-cdk-directives-drag.js +4 -1
  299. package/esm2015/directives/droppable/droppable.directive.js +2 -1
  300. package/esm2015/directives/droppable/taiga-ui-cdk-directives-droppable.js +4 -1
  301. package/esm2015/directives/element/element.directive.js +15 -1
  302. package/esm2015/directives/element/taiga-ui-cdk-directives-element.js +4 -1
  303. package/esm2015/directives/focus-trap/focus-trap.directive.js +14 -1
  304. package/esm2015/directives/focus-trap/taiga-ui-cdk-directives-focus-trap.js +4 -1
  305. package/esm2015/directives/focus-visible/focus-visible.directive.js +6 -1
  306. package/esm2015/directives/focus-visible/taiga-ui-cdk-directives-focus-visible.js +4 -1
  307. package/esm2015/directives/focusable/focusable.directive.js +7 -1
  308. package/esm2015/directives/focusable/taiga-ui-cdk-directives-focusable.js +4 -1
  309. package/esm2015/directives/focused/focused.directive.js +6 -1
  310. package/esm2015/directives/focused/taiga-ui-cdk-directives-focused.js +4 -1
  311. package/esm2015/directives/for/taiga-ui-cdk-directives-for.js +4 -1
  312. package/esm2015/directives/for-async/for-async.module.js +4 -1
  313. package/esm2015/directives/for-async/taiga-ui-cdk-directives-for-async.js +4 -1
  314. package/esm2015/directives/high-dpi/high-dpi.directive.js +4 -1
  315. package/esm2015/directives/high-dpi/taiga-ui-cdk-directives-high-dpi.js +4 -1
  316. package/esm2015/directives/hovered/hovered.service.js +4 -2
  317. package/esm2015/directives/hovered/taiga-ui-cdk-directives-hovered.js +4 -1
  318. package/esm2015/directives/item/item.directive.js +4 -1
  319. package/esm2015/directives/item/taiga-ui-cdk-directives-item.js +4 -1
  320. package/esm2015/directives/let/let-context.js +4 -1
  321. package/esm2015/directives/let/let.directive.js +11 -1
  322. package/esm2015/directives/let/taiga-ui-cdk-directives-let.js +4 -1
  323. package/esm2015/directives/media/media.directive.js +4 -1
  324. package/esm2015/directives/media/taiga-ui-cdk-directives-media.js +4 -1
  325. package/esm2015/directives/obscured/obscured.directive.js +4 -1
  326. package/esm2015/directives/obscured/taiga-ui-cdk-directives-obscured.js +4 -1
  327. package/esm2015/directives/overscroll/overscroll.directive.js +7 -1
  328. package/esm2015/directives/overscroll/taiga-ui-cdk-directives-overscroll.js +4 -1
  329. package/esm2015/directives/pan/pan.module.js +4 -1
  330. package/esm2015/directives/pan/taiga-ui-cdk-directives-pan.js +4 -1
  331. package/esm2015/directives/platform/taiga-ui-cdk-directives-platform.js +4 -1
  332. package/esm2015/directives/portal/taiga-ui-cdk-directives-portal.js +4 -1
  333. package/esm2015/directives/pressed/taiga-ui-cdk-directives-pressed.js +4 -1
  334. package/esm2015/directives/prevent-default/prevent-default.directive.js +6 -1
  335. package/esm2015/directives/prevent-default/prevent-default.module.js +4 -1
  336. package/esm2015/directives/prevent-default/taiga-ui-cdk-directives-prevent-default.js +4 -1
  337. package/esm2015/directives/repeat-times/repeat-times.directive.js +8 -1
  338. package/esm2015/directives/repeat-times/taiga-ui-cdk-directives-repeat-times.js +4 -1
  339. package/esm2015/directives/resize/resize.module.js +4 -1
  340. package/esm2015/directives/resize/taiga-ui-cdk-directives-resize.js +4 -1
  341. package/esm2015/directives/resizer/resizer.directive.js +2 -1
  342. package/esm2015/directives/resizer/taiga-ui-cdk-directives-resizer.js +4 -1
  343. package/esm2015/directives/swipe/swipe.module.js +4 -1
  344. package/esm2015/directives/swipe/taiga-ui-cdk-directives-swipe.js +4 -1
  345. package/esm2015/directives/taiga-ui-cdk-directives.js +4 -1
  346. package/esm2015/directives/validator/taiga-ui-cdk-directives-validator.js +4 -1
  347. package/esm2015/directives/value-changes/taiga-ui-cdk-directives-value-changes.js +4 -1
  348. package/esm2015/directives/zoom/taiga-ui-cdk-directives-zoom.js +4 -1
  349. package/esm2015/directives/zoom/zoom.module.js +4 -1
  350. package/esm2015/enums/day-of-week.js +3 -1
  351. package/esm2015/enums/month-number.js +3 -1
  352. package/esm2015/enums/taiga-ui-cdk-enums.js +4 -1
  353. package/esm2015/exceptions/taiga-ui-cdk-exceptions.js +4 -1
  354. package/esm2015/interfaces/taiga-ui-cdk-interfaces.js +4 -1
  355. package/esm2015/observables/control-value.js +4 -1
  356. package/esm2015/observables/drag-and-drop-from.js +3 -1
  357. package/esm2015/observables/focus-visible-observable.js +6 -2
  358. package/esm2015/observables/is-alive.js +4 -1
  359. package/esm2015/observables/items-query-list-observable.js +7 -1
  360. package/esm2015/observables/mouse-drag-finish-from.js +5 -1
  361. package/esm2015/observables/scroll-from.js +4 -1
  362. package/esm2015/observables/taiga-ui-cdk-observables.js +4 -1
  363. package/esm2015/observables/typed-from-event.js +5 -1
  364. package/esm2015/pipes/filter/taiga-ui-cdk-pipes-filter.js +4 -1
  365. package/esm2015/pipes/is-present/taiga-ui-cdk-pipes-is-present.js +4 -1
  366. package/esm2015/pipes/keys/taiga-ui-cdk-pipes-keys.js +4 -1
  367. package/esm2015/pipes/mapper/taiga-ui-cdk-pipes-mapper.js +4 -1
  368. package/esm2015/pipes/replace/replace.pipe.js +4 -2
  369. package/esm2015/pipes/replace/taiga-ui-cdk-pipes-replace.js +4 -1
  370. package/esm2015/pipes/taiga-ui-cdk-pipes.js +4 -1
  371. package/esm2015/services/destroy.service.js +9 -1
  372. package/esm2015/services/directive-styles.service.js +4 -1
  373. package/esm2015/services/focus-visible.service.js +6 -1
  374. package/esm2015/services/id.service.js +4 -1
  375. package/esm2015/services/obscured.service.js +10 -2
  376. package/esm2015/services/pan.service.js +4 -2
  377. package/esm2015/services/parents-scroll.service.js +7 -2
  378. package/esm2015/services/resize.service.js +8 -2
  379. package/esm2015/services/static-request.service.js +5 -2
  380. package/esm2015/services/taiga-ui-cdk-services.js +4 -1
  381. package/esm2015/taiga-ui-cdk.js +4 -1
  382. package/esm2015/tokens/active-element.js +26 -4
  383. package/esm2015/tokens/alerts.js +4 -1
  384. package/esm2015/tokens/default-renderer.js +10 -2
  385. package/esm2015/tokens/dialogs.js +5 -1
  386. package/esm2015/tokens/ensure-base-href.js +4 -1
  387. package/esm2015/tokens/focusable-item-accessor.js +4 -1
  388. package/esm2015/tokens/is-android.js +4 -1
  389. package/esm2015/tokens/is-apple.js +4 -1
  390. package/esm2015/tokens/is-chromium.js +4 -1
  391. package/esm2015/tokens/is-cypress.js +5 -1
  392. package/esm2015/tokens/is-e2e.js +4 -1
  393. package/esm2015/tokens/is-firefox.js +4 -1
  394. package/esm2015/tokens/is-ios.js +4 -1
  395. package/esm2015/tokens/is-mobile.js +5 -1
  396. package/esm2015/tokens/is-playwright.js +4 -1
  397. package/esm2015/tokens/is-webkit.js +4 -1
  398. package/esm2015/tokens/platform.js +2 -1
  399. package/esm2015/tokens/range.js +4 -1
  400. package/esm2015/tokens/removed-element.js +4 -1
  401. package/esm2015/tokens/scroll-ref.js +4 -1
  402. package/esm2015/tokens/swipe-options.js +4 -1
  403. package/esm2015/tokens/taiga-ui-cdk-tokens.js +4 -1
  404. package/esm2015/tokens/take-only-trusted-events.js +7 -1
  405. package/esm2015/tokens/window-height.js +4 -1
  406. package/esm2015/tokens/zoom-options.js +4 -1
  407. package/esm2015/types/taiga-ui-cdk-types.js +4 -1
  408. package/esm2015/utils/browser/taiga-ui-cdk-utils-browser.js +4 -1
  409. package/esm2015/utils/color/hex-to-rgba.js +2 -1
  410. package/esm2015/utils/color/hsv-to-rgb.js +4 -1
  411. package/esm2015/utils/color/rgb-to-hsv.js +2 -1
  412. package/esm2015/utils/color/rgba-to-hex.js +2 -1
  413. package/esm2015/utils/color/taiga-ui-cdk-utils-color.js +4 -1
  414. package/esm2015/utils/dom/element-checks.js +2 -1
  415. package/esm2015/utils/dom/get-actual-target.js +4 -1
  416. package/esm2015/utils/dom/get-clipboard-data-text.js +4 -1
  417. package/esm2015/utils/dom/get-element-obscurers.js +10 -1
  418. package/esm2015/utils/dom/get-element-offset.js +8 -1
  419. package/esm2015/utils/dom/get-scroll-parent.js +7 -1
  420. package/esm2015/utils/dom/get-selected-text.js +9 -1
  421. package/esm2015/utils/dom/is-inside-iframe.js +4 -1
  422. package/esm2015/utils/dom/is-node-in.js +8 -1
  423. package/esm2015/utils/dom/retarget-boundary-crossing.js +9 -4
  424. package/esm2015/utils/dom/taiga-ui-cdk-utils-dom.js +4 -1
  425. package/esm2015/utils/focus/blur-native-focused.js +4 -1
  426. package/esm2015/utils/focus/get-closest-focusable.js +5 -1
  427. package/esm2015/utils/focus/get-native-focused.js +6 -1
  428. package/esm2015/utils/focus/is-native-focused-in.js +8 -1
  429. package/esm2015/utils/focus/is-native-focused.js +9 -1
  430. package/esm2015/utils/focus/is-native-keyboard-focusable.js +7 -1
  431. package/esm2015/utils/focus/move-focus.js +8 -1
  432. package/esm2015/utils/focus/set-native-mouse-focused.js +8 -1
  433. package/esm2015/utils/focus/taiga-ui-cdk-utils-focus.js +4 -1
  434. package/esm2015/utils/format/px.js +4 -1
  435. package/esm2015/utils/format/taiga-ui-cdk-utils-format.js +4 -1
  436. package/esm2015/utils/math/clamp.js +8 -1
  437. package/esm2015/utils/math/normalize-to-int-number.js +9 -1
  438. package/esm2015/utils/math/quantize.js +7 -1
  439. package/esm2015/utils/math/round.js +8 -1
  440. package/esm2015/utils/math/sum.js +4 -1
  441. package/esm2015/utils/math/taiga-ui-cdk-utils-math.js +4 -1
  442. package/esm2015/utils/math/to-radians.js +4 -1
  443. package/esm2015/utils/miscellaneous/create-options.js +2 -1
  444. package/esm2015/utils/miscellaneous/flat-length.js +6 -1
  445. package/esm2015/utils/miscellaneous/get-original-array-from-query-list.js +7 -1
  446. package/esm2015/utils/miscellaneous/is-number.js +2 -1
  447. package/esm2015/utils/miscellaneous/is-object.js +2 -1
  448. package/esm2015/utils/miscellaneous/is-string.js +2 -1
  449. package/esm2015/utils/miscellaneous/is-valid-url.js +8 -7
  450. package/esm2015/utils/miscellaneous/nullable-same.js +9 -1
  451. package/esm2015/utils/miscellaneous/object-from-entries.js +9 -1
  452. package/esm2015/utils/miscellaneous/taiga-ui-cdk-utils-miscellaneous.js +4 -1
  453. package/esm2015/utils/os/is-apple-platform.js +11 -1
  454. package/esm2015/utils/os/taiga-ui-cdk-utils-os.js +4 -1
  455. package/esm2015/utils/svg/svg-linear-gradient-processor.js +16 -2
  456. package/esm2015/utils/svg/taiga-ui-cdk-utils-svg.js +4 -1
  457. package/esm2015/utils/taiga-ui-cdk-utils.js +4 -1
  458. package/exceptions/taiga-ui-cdk-exceptions.d.ts +3 -0
  459. package/fesm2015/taiga-ui-cdk-abstract.js +34 -0
  460. package/fesm2015/taiga-ui-cdk-abstract.js.map +1 -1
  461. package/fesm2015/taiga-ui-cdk-classes.js +9 -0
  462. package/fesm2015/taiga-ui-cdk-classes.js.map +1 -1
  463. package/fesm2015/taiga-ui-cdk-coercion.js +10 -0
  464. package/fesm2015/taiga-ui-cdk-coercion.js.map +1 -1
  465. package/fesm2015/taiga-ui-cdk-components-alert-host.js +8 -0
  466. package/fesm2015/taiga-ui-cdk-components-alert-host.js.map +1 -1
  467. package/fesm2015/taiga-ui-cdk-components-dialog-host.js +11 -0
  468. package/fesm2015/taiga-ui-cdk-components-dialog-host.js.map +1 -1
  469. package/fesm2015/taiga-ui-cdk-components-dropdown-host.js +12 -0
  470. package/fesm2015/taiga-ui-cdk-components-dropdown-host.js.map +1 -1
  471. package/fesm2015/taiga-ui-cdk-components-scroll-controls.js +4 -0
  472. package/fesm2015/taiga-ui-cdk-components-scroll-controls.js.map +1 -1
  473. package/fesm2015/taiga-ui-cdk-components.js +4 -0
  474. package/fesm2015/taiga-ui-cdk-components.js.map +1 -1
  475. package/fesm2015/taiga-ui-cdk-constants.js +108 -0
  476. package/fesm2015/taiga-ui-cdk-constants.js.map +1 -1
  477. package/fesm2015/taiga-ui-cdk-date-time.js +284 -0
  478. package/fesm2015/taiga-ui-cdk-date-time.js.map +1 -1
  479. package/fesm2015/taiga-ui-cdk-decorators.js +26 -0
  480. package/fesm2015/taiga-ui-cdk-decorators.js.map +1 -1
  481. package/fesm2015/taiga-ui-cdk-directives-active-zone.js +4 -0
  482. package/fesm2015/taiga-ui-cdk-directives-active-zone.js.map +1 -1
  483. package/fesm2015/taiga-ui-cdk-directives-auto-focus.js +44 -1
  484. package/fesm2015/taiga-ui-cdk-directives-auto-focus.js.map +1 -1
  485. package/fesm2015/taiga-ui-cdk-directives-autofilled.js +4 -0
  486. package/fesm2015/taiga-ui-cdk-directives-autofilled.js.map +1 -1
  487. package/fesm2015/taiga-ui-cdk-directives-checked.js +4 -0
  488. package/fesm2015/taiga-ui-cdk-directives-checked.js.map +1 -1
  489. package/fesm2015/taiga-ui-cdk-directives-click-outside.js +4 -0
  490. package/fesm2015/taiga-ui-cdk-directives-click-outside.js.map +1 -1
  491. package/fesm2015/taiga-ui-cdk-directives-control.js +4 -0
  492. package/fesm2015/taiga-ui-cdk-directives-control.js.map +1 -1
  493. package/fesm2015/taiga-ui-cdk-directives-copy-processor.js +4 -0
  494. package/fesm2015/taiga-ui-cdk-directives-copy-processor.js.map +1 -1
  495. package/fesm2015/taiga-ui-cdk-directives-drag.js +10 -0
  496. package/fesm2015/taiga-ui-cdk-directives-drag.js.map +1 -1
  497. package/fesm2015/taiga-ui-cdk-directives-droppable.js +5 -0
  498. package/fesm2015/taiga-ui-cdk-directives-droppable.js.map +1 -1
  499. package/fesm2015/taiga-ui-cdk-directives-element.js +18 -0
  500. package/fesm2015/taiga-ui-cdk-directives-element.js.map +1 -1
  501. package/fesm2015/taiga-ui-cdk-directives-focus-trap.js +17 -0
  502. package/fesm2015/taiga-ui-cdk-directives-focus-trap.js.map +1 -1
  503. package/fesm2015/taiga-ui-cdk-directives-focus-visible.js +9 -0
  504. package/fesm2015/taiga-ui-cdk-directives-focus-visible.js.map +1 -1
  505. package/fesm2015/taiga-ui-cdk-directives-focusable.js +10 -0
  506. package/fesm2015/taiga-ui-cdk-directives-focusable.js.map +1 -1
  507. package/fesm2015/taiga-ui-cdk-directives-focused.js +9 -0
  508. package/fesm2015/taiga-ui-cdk-directives-focused.js.map +1 -1
  509. package/fesm2015/taiga-ui-cdk-directives-for-async.js +7 -0
  510. package/fesm2015/taiga-ui-cdk-directives-for-async.js.map +1 -1
  511. package/fesm2015/taiga-ui-cdk-directives-for.js +4 -0
  512. package/fesm2015/taiga-ui-cdk-directives-for.js.map +1 -1
  513. package/fesm2015/taiga-ui-cdk-directives-high-dpi.js +7 -0
  514. package/fesm2015/taiga-ui-cdk-directives-high-dpi.js.map +1 -1
  515. package/fesm2015/taiga-ui-cdk-directives-hovered.js +7 -1
  516. package/fesm2015/taiga-ui-cdk-directives-hovered.js.map +1 -1
  517. package/fesm2015/taiga-ui-cdk-directives-item.js +7 -0
  518. package/fesm2015/taiga-ui-cdk-directives-item.js.map +1 -1
  519. package/fesm2015/taiga-ui-cdk-directives-let.js +17 -0
  520. package/fesm2015/taiga-ui-cdk-directives-let.js.map +1 -1
  521. package/fesm2015/taiga-ui-cdk-directives-media.js +7 -0
  522. package/fesm2015/taiga-ui-cdk-directives-media.js.map +1 -1
  523. package/fesm2015/taiga-ui-cdk-directives-obscured.js +7 -0
  524. package/fesm2015/taiga-ui-cdk-directives-obscured.js.map +1 -1
  525. package/fesm2015/taiga-ui-cdk-directives-overscroll.js +10 -0
  526. package/fesm2015/taiga-ui-cdk-directives-overscroll.js.map +1 -1
  527. package/fesm2015/taiga-ui-cdk-directives-pan.js +7 -0
  528. package/fesm2015/taiga-ui-cdk-directives-pan.js.map +1 -1
  529. package/fesm2015/taiga-ui-cdk-directives-platform.js +4 -0
  530. package/fesm2015/taiga-ui-cdk-directives-platform.js.map +1 -1
  531. package/fesm2015/taiga-ui-cdk-directives-portal.js +4 -0
  532. package/fesm2015/taiga-ui-cdk-directives-portal.js.map +1 -1
  533. package/fesm2015/taiga-ui-cdk-directives-pressed.js +4 -0
  534. package/fesm2015/taiga-ui-cdk-directives-pressed.js.map +1 -1
  535. package/fesm2015/taiga-ui-cdk-directives-prevent-default.js +12 -0
  536. package/fesm2015/taiga-ui-cdk-directives-prevent-default.js.map +1 -1
  537. package/fesm2015/taiga-ui-cdk-directives-repeat-times.js +11 -0
  538. package/fesm2015/taiga-ui-cdk-directives-repeat-times.js.map +1 -1
  539. package/fesm2015/taiga-ui-cdk-directives-resize.js +7 -0
  540. package/fesm2015/taiga-ui-cdk-directives-resize.js.map +1 -1
  541. package/fesm2015/taiga-ui-cdk-directives-resizer.js +5 -0
  542. package/fesm2015/taiga-ui-cdk-directives-resizer.js.map +1 -1
  543. package/fesm2015/taiga-ui-cdk-directives-swipe.js +7 -0
  544. package/fesm2015/taiga-ui-cdk-directives-swipe.js.map +1 -1
  545. package/fesm2015/taiga-ui-cdk-directives-validator.js +4 -0
  546. package/fesm2015/taiga-ui-cdk-directives-validator.js.map +1 -1
  547. package/fesm2015/taiga-ui-cdk-directives-value-changes.js +4 -0
  548. package/fesm2015/taiga-ui-cdk-directives-value-changes.js.map +1 -1
  549. package/fesm2015/taiga-ui-cdk-directives-zoom.js +7 -0
  550. package/fesm2015/taiga-ui-cdk-directives-zoom.js.map +1 -1
  551. package/fesm2015/taiga-ui-cdk-directives.js +4 -0
  552. package/fesm2015/taiga-ui-cdk-directives.js.map +1 -1
  553. package/fesm2015/taiga-ui-cdk-enums.js +8 -0
  554. package/fesm2015/taiga-ui-cdk-enums.js.map +1 -1
  555. package/fesm2015/taiga-ui-cdk-exceptions.js +4 -0
  556. package/fesm2015/taiga-ui-cdk-exceptions.js.map +1 -1
  557. package/fesm2015/taiga-ui-cdk-interfaces.js +3 -1
  558. package/fesm2015/taiga-ui-cdk-interfaces.js.map +1 -1
  559. package/fesm2015/taiga-ui-cdk-observables.js +34 -1
  560. package/fesm2015/taiga-ui-cdk-observables.js.map +1 -1
  561. package/fesm2015/taiga-ui-cdk-pipes-filter.js +4 -0
  562. package/fesm2015/taiga-ui-cdk-pipes-filter.js.map +1 -1
  563. package/fesm2015/taiga-ui-cdk-pipes-is-present.js +4 -0
  564. package/fesm2015/taiga-ui-cdk-pipes-is-present.js.map +1 -1
  565. package/fesm2015/taiga-ui-cdk-pipes-keys.js +4 -0
  566. package/fesm2015/taiga-ui-cdk-pipes-keys.js.map +1 -1
  567. package/fesm2015/taiga-ui-cdk-pipes-mapper.js +4 -0
  568. package/fesm2015/taiga-ui-cdk-pipes-mapper.js.map +1 -1
  569. package/fesm2015/taiga-ui-cdk-pipes-replace.js +7 -1
  570. package/fesm2015/taiga-ui-cdk-pipes-replace.js.map +1 -1
  571. package/fesm2015/taiga-ui-cdk-pipes.js +4 -0
  572. package/fesm2015/taiga-ui-cdk-pipes.js.map +1 -1
  573. package/fesm2015/taiga-ui-cdk-services.js +52 -5
  574. package/fesm2015/taiga-ui-cdk-services.js.map +1 -1
  575. package/fesm2015/taiga-ui-cdk-tokens.js +108 -4
  576. package/fesm2015/taiga-ui-cdk-tokens.js.map +1 -1
  577. package/fesm2015/taiga-ui-cdk-types.js +3 -1
  578. package/fesm2015/taiga-ui-cdk-types.js.map +1 -1
  579. package/fesm2015/taiga-ui-cdk-utils-browser.js +4 -0
  580. package/fesm2015/taiga-ui-cdk-utils-browser.js.map +1 -1
  581. package/fesm2015/taiga-ui-cdk-utils-color.js +10 -0
  582. package/fesm2015/taiga-ui-cdk-utils-color.js.map +1 -1
  583. package/fesm2015/taiga-ui-cdk-utils-dom.js +59 -3
  584. package/fesm2015/taiga-ui-cdk-utils-dom.js.map +1 -1
  585. package/fesm2015/taiga-ui-cdk-utils-focus.js +51 -0
  586. package/fesm2015/taiga-ui-cdk-utils-focus.js.map +1 -1
  587. package/fesm2015/taiga-ui-cdk-utils-format.js +7 -0
  588. package/fesm2015/taiga-ui-cdk-utils-format.js.map +1 -1
  589. package/fesm2015/taiga-ui-cdk-utils-math.js +38 -0
  590. package/fesm2015/taiga-ui-cdk-utils-math.js.map +1 -1
  591. package/fesm2015/taiga-ui-cdk-utils-miscellaneous.js +42 -6
  592. package/fesm2015/taiga-ui-cdk-utils-miscellaneous.js.map +1 -1
  593. package/fesm2015/taiga-ui-cdk-utils-os.js +14 -0
  594. package/fesm2015/taiga-ui-cdk-utils-os.js.map +1 -1
  595. package/fesm2015/taiga-ui-cdk-utils-svg.js +19 -1
  596. package/fesm2015/taiga-ui-cdk-utils-svg.js.map +1 -1
  597. package/fesm2015/taiga-ui-cdk-utils.js +4 -0
  598. package/fesm2015/taiga-ui-cdk-utils.js.map +1 -1
  599. package/fesm2015/taiga-ui-cdk.js +4 -0
  600. package/fesm2015/taiga-ui-cdk.js.map +1 -1
  601. package/interfaces/control-value-transformer.d.ts +3 -0
  602. package/interfaces/day-like.d.ts +3 -0
  603. package/interfaces/focusable-element-accessor.d.ts +4 -0
  604. package/interfaces/month-like.d.ts +3 -0
  605. package/interfaces/taiga-ui-cdk-interfaces.d.ts +3 -0
  606. package/interfaces/year-like.d.ts +3 -0
  607. package/observables/control-value.d.ts +3 -0
  608. package/observables/is-alive.d.ts +3 -0
  609. package/observables/items-query-list-observable.d.ts +6 -0
  610. package/observables/mouse-drag-finish-from.d.ts +4 -0
  611. package/observables/scroll-from.d.ts +3 -0
  612. package/observables/taiga-ui-cdk-observables.d.ts +3 -0
  613. package/package.json +1 -1
  614. package/pipes/filter/filter.pipe.d.ts +7 -0
  615. package/pipes/filter/taiga-ui-cdk-pipes-filter.d.ts +3 -0
  616. package/pipes/is-present/taiga-ui-cdk-pipes-is-present.d.ts +3 -0
  617. package/pipes/keys/taiga-ui-cdk-pipes-keys.d.ts +3 -0
  618. package/pipes/mapper/mapper.pipe.d.ts +7 -0
  619. package/pipes/mapper/taiga-ui-cdk-pipes-mapper.d.ts +3 -0
  620. package/pipes/replace/taiga-ui-cdk-pipes-replace.d.ts +3 -0
  621. package/pipes/taiga-ui-cdk-pipes.d.ts +3 -0
  622. package/schematics/constants/file-globs.js +3 -1
  623. package/schematics/ng-add/index.js +1 -0
  624. package/schematics/ng-add/schema.d.ts +12 -0
  625. package/schematics/ng-update/steps/show-warnings.js +5 -0
  626. package/schematics/ng-update/v3/constants/breakpoints.js +2 -0
  627. package/schematics/ng-update/v3/constants/enums.js +4 -0
  628. package/schematics/ng-update/v3/constants/templates.d.ts +5 -0
  629. package/schematics/ng-update/v3/constants/templates.js +5 -0
  630. package/schematics/ng-update/v3/index.js +4 -1
  631. package/schematics/ng-update/v3/steps/migrate-date-time.js +18 -0
  632. package/schematics/ng-update/v3/steps/migrate-progress.js +3 -1
  633. package/schematics/ng-update/v3/steps/migrate-sliders/migrate-input-range.js +6 -0
  634. package/schematics/ng-update/v3/steps/migrate-sliders/migrate-input-slider.js +5 -0
  635. package/schematics/ng-update/v3/steps/migrate-taiga-proprietary-icons.js +1 -0
  636. package/schematics/ng-update/v3/steps/migrate-templates.js +1 -0
  637. package/schematics/ng-update/v3/steps/miscellaneous.js +4 -0
  638. package/schematics/ng-update/v3/steps/replace-functions.js +1 -1
  639. package/schematics/ng-update/v3-30/index.js +1 -0
  640. package/schematics/ng-update/v3-35/index.js +1 -0
  641. package/schematics/ng-update/v3-36/index.js +1 -0
  642. package/schematics/ng-update/v3-40/index.js +1 -0
  643. package/schematics/ng-update/v3-5/index.js +1 -0
  644. package/schematics/utils/add-import-to-component.js +1 -0
  645. package/schematics/utils/angular/ng-module.d.ts +3 -0
  646. package/schematics/utils/angular/ng-module.js +3 -0
  647. package/schematics/utils/angular-json-manipulations.js +7 -0
  648. package/schematics/utils/colored-log.js +1 -1
  649. package/schematics/utils/get-projects.js +3 -1
  650. package/schematics/utils/is-ci.js +13 -11
  651. package/schematics/utils/progress.js +1 -0
  652. package/schematics/utils/push-to-array-property.js +1 -0
  653. package/schematics/utils/templates/elements.d.ts +19 -0
  654. package/schematics/utils/templates/elements.js +26 -2
  655. package/schematics/utils/templates/ng-component-input-manipulations.d.ts +44 -0
  656. package/schematics/utils/templates/ng-component-input-manipulations.js +47 -1
  657. package/services/destroy.service.d.ts +8 -0
  658. package/services/directive-styles.service.d.ts +3 -0
  659. package/services/focus-visible.service.d.ts +5 -0
  660. package/services/id.service.d.ts +3 -0
  661. package/services/obscured.service.d.ts +5 -0
  662. package/services/parents-scroll.service.d.ts +3 -0
  663. package/services/taiga-ui-cdk-services.d.ts +3 -0
  664. package/taiga-ui-cdk.d.ts +3 -0
  665. package/tokens/active-element.d.ts +3 -0
  666. package/tokens/alerts.d.ts +3 -0
  667. package/tokens/default-renderer.d.ts +6 -0
  668. package/tokens/dialogs.d.ts +3 -0
  669. package/tokens/ensure-base-href.d.ts +3 -0
  670. package/tokens/focusable-item-accessor.d.ts +3 -0
  671. package/tokens/is-android.d.ts +3 -0
  672. package/tokens/is-apple.d.ts +3 -0
  673. package/tokens/is-chromium.d.ts +3 -0
  674. package/tokens/is-cypress.d.ts +4 -0
  675. package/tokens/is-e2e.d.ts +3 -0
  676. package/tokens/is-firefox.d.ts +3 -0
  677. package/tokens/is-ios.d.ts +3 -0
  678. package/tokens/is-mobile.d.ts +3 -0
  679. package/tokens/is-playwright.d.ts +3 -0
  680. package/tokens/is-webkit.d.ts +3 -0
  681. package/tokens/range.d.ts +3 -0
  682. package/tokens/removed-element.d.ts +3 -0
  683. package/tokens/scroll-ref.d.ts +3 -0
  684. package/tokens/swipe-options.d.ts +3 -0
  685. package/tokens/taiga-ui-cdk-tokens.d.ts +3 -0
  686. package/tokens/take-only-trusted-events.d.ts +6 -0
  687. package/tokens/window-height.d.ts +3 -0
  688. package/tokens/zoom-options.d.ts +3 -0
  689. package/types/autocomplete.d.ts +1 -0
  690. package/types/date-mode.d.ts +5 -0
  691. package/types/event-with.d.ts +3 -0
  692. package/types/mapper.d.ts +9 -0
  693. package/types/matcher.d.ts +8 -0
  694. package/types/taiga-ui-cdk-types.d.ts +3 -0
  695. package/utils/browser/taiga-ui-cdk-utils-browser.d.ts +3 -0
  696. package/utils/color/hsv-to-rgb.d.ts +3 -0
  697. package/utils/color/taiga-ui-cdk-utils-color.d.ts +3 -0
  698. package/utils/dom/get-actual-target.d.ts +3 -0
  699. package/utils/dom/get-clipboard-data-text.d.ts +3 -0
  700. package/utils/dom/get-element-obscurers.d.ts +9 -0
  701. package/utils/dom/get-element-offset.d.ts +7 -0
  702. package/utils/dom/get-scroll-parent.d.ts +6 -0
  703. package/utils/dom/get-selected-text.d.ts +8 -0
  704. package/utils/dom/is-inside-iframe.d.ts +3 -0
  705. package/utils/dom/is-node-in.d.ts +7 -0
  706. package/utils/dom/taiga-ui-cdk-utils-dom.d.ts +3 -0
  707. package/utils/focus/blur-native-focused.d.ts +3 -0
  708. package/utils/focus/get-closest-focusable.d.ts +20 -0
  709. package/utils/focus/get-native-focused.d.ts +5 -0
  710. package/utils/focus/is-native-focused-in.d.ts +6 -0
  711. package/utils/focus/is-native-focused.d.ts +8 -0
  712. package/utils/focus/is-native-keyboard-focusable.d.ts +6 -0
  713. package/utils/focus/move-focus.d.ts +7 -0
  714. package/utils/focus/set-native-mouse-focused.d.ts +7 -0
  715. package/utils/focus/taiga-ui-cdk-utils-focus.d.ts +3 -0
  716. package/utils/format/px.d.ts +3 -0
  717. package/utils/format/taiga-ui-cdk-utils-format.d.ts +3 -0
  718. package/utils/math/clamp.d.ts +7 -0
  719. package/utils/math/normalize-to-int-number.d.ts +8 -0
  720. package/utils/math/quantize.d.ts +6 -0
  721. package/utils/math/sum.d.ts +3 -0
  722. package/utils/math/taiga-ui-cdk-utils-math.d.ts +3 -0
  723. package/utils/math/to-radians.d.ts +3 -0
  724. package/utils/miscellaneous/create-options.d.ts +1 -0
  725. package/utils/miscellaneous/flat-length.d.ts +5 -0
  726. package/utils/miscellaneous/get-original-array-from-query-list.d.ts +6 -0
  727. package/utils/miscellaneous/is-string.js +1 -0
  728. package/utils/miscellaneous/nullable-same.d.ts +8 -0
  729. package/utils/miscellaneous/object-from-entries.d.ts +8 -0
  730. package/utils/miscellaneous/taiga-ui-cdk-utils-miscellaneous.d.ts +3 -0
  731. package/utils/os/is-apple-platform.d.ts +10 -0
  732. package/utils/os/taiga-ui-cdk-utils-os.d.ts +3 -0
  733. package/utils/svg/svg-linear-gradient-processor.d.ts +14 -0
  734. package/utils/svg/taiga-ui-cdk-utils-svg.d.ts +3 -0
  735. package/utils/taiga-ui-cdk-utils.d.ts +3 -0
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-utils-miscellaneous.js","sources":["../../../projects/cdk/utils/miscellaneous/array-remove.ts","../../../projects/cdk/utils/miscellaneous/array-shallow-equals.ts","../../../projects/cdk/utils/miscellaneous/array-toggle.ts","../../../projects/cdk/utils/miscellaneous/is-string.ts","../../../projects/cdk/utils/miscellaneous/clean-object.ts","../../../projects/cdk/utils/miscellaneous/create-token.ts","../../../projects/cdk/utils/miscellaneous/create-options.ts","../../../projects/cdk/utils/miscellaneous/default-sort.ts","../../../projects/cdk/utils/miscellaneous/distance-between-touches.ts","../../../projects/cdk/utils/miscellaneous/ease-in-out-quad.ts","../../../projects/cdk/utils/miscellaneous/flat-length.ts","../../../projects/cdk/utils/miscellaneous/get-original-array-from-query-list.ts","../../../projects/cdk/utils/miscellaneous/get-swipe-direction.ts","../../../projects/cdk/utils/miscellaneous/is-falsy.ts","../../../projects/cdk/utils/miscellaneous/is-number.ts","../../../projects/cdk/utils/miscellaneous/is-object.ts","../../../projects/cdk/utils/miscellaneous/is-present.ts","../../../projects/cdk/utils/miscellaneous/is-valid-url.ts","../../../projects/cdk/utils/miscellaneous/mark-control-as-touched-and-validate.ts","../../../projects/cdk/utils/miscellaneous/nullable-same.ts","../../../projects/cdk/utils/miscellaneous/object-from-entries.ts","../../../projects/cdk/utils/miscellaneous/provide-options.ts","../../../projects/cdk/utils/miscellaneous/uniq-by.ts"],"sourcesContent":["export function tuiArrayRemove<T>(array: readonly T[], index: number): T[] {\n return array.slice(0, Math.max(index, 0)).concat(array.slice(Math.max(index + 1, 0)));\n}\n","export function tuiArrayShallowEquals<T>(a: readonly T[], b: readonly T[]): boolean {\n return a.length === b.length && a.every((item, index) => item === b[index]);\n}\n","import {tuiArrayRemove} from './array-remove';\n\nexport function tuiArrayToggle<T>(array: readonly T[], item: T): T[] {\n const index = array.indexOf(item);\n\n return index === -1 ? [...array, item] : tuiArrayRemove(array, index);\n}\n","export function tuiIsString(value: unknown): value is string {\n // eslint-disable-next-line @taiga-ui/experience/no-typeof\n return typeof value === `string`;\n}\n","import {TuiDeepPartial} from '@taiga-ui/cdk/types';\n\nimport {tuiIsString} from './is-string';\n\nexport function tuiCleanObject<T>(object: T): TuiDeepPartial<T> {\n return JSON.parse(\n JSON.stringify(object, (_key: string, value: unknown) =>\n checkValueIsEmpty(value) ? undefined : value,\n ),\n );\n}\n\ntype EmptyValue = '' | null | undefined;\n\nfunction checkValueIsEmpty<T>(value: EmptyValue | T): value is EmptyValue {\n const nextValue: any = tuiIsString(value) ? value.trim() : value;\n\n return [undefined, null, NaN, ``].includes(nextValue);\n}\n","import {InjectionToken} from '@angular/core';\n\nexport function tuiCreateToken<T>(defaults: T): InjectionToken<T> {\n return tuiCreateTokenFromFactory(() => defaults);\n}\n\nexport function tuiCreateTokenFromFactory<T>(factory: () => T): InjectionToken<T> {\n return new InjectionToken<T>(``, {factory});\n}\n","import {InjectionToken} from '@angular/core';\n\nimport {tuiCreateTokenFromFactory} from './create-token';\n\n/** @deprecated use {@link tuiCreateToken} instead */\nexport function tuiCreateOptions<T>(defaults: T): InjectionToken<T> {\n return tuiCreateTokenFromFactory(() => defaults);\n}\n","import {tuiIsString} from './is-string';\n\nexport function tuiDefaultSort<T>(x: T, y: T): number {\n if (x === y) {\n return 0;\n }\n\n if (tuiIsString(x) && tuiIsString(y)) {\n return x.localeCompare(y);\n }\n\n return x > y ? 1 : -1;\n}\n","export function tuiDistanceBetweenTouches({touches}: TouchEvent): number {\n return Math.hypot(\n touches[0].clientX - touches[1].clientX,\n touches[0].clientY - touches[1].clientY,\n );\n}\n","import {tuiAssert} from '@taiga-ui/cdk/classes';\n\nexport function tuiEaseInOutQuad(t: number): number {\n ngDevMode &&\n tuiAssert.assert(\n t >= 0 && t <= 1,\n `Input must be between 0 and 1 inclusive but received `,\n t,\n );\n\n return t < 0.5 ? 2 * t * t : -1 + (4 - 2 * t) * t;\n}\n","/**\n * Flattens two-dimensional array and calculates resulting length\n *\n * @param array twi dimensional array\n */\nexport function tuiFlatLength(array: ReadonlyArray<readonly unknown[]>): number {\n return array.reduce((count, section) => count + section.length, 0);\n}\n","import {QueryList} from '@angular/core';\n\n/**\n * Extracts original array from {@link QueryList} rather than\n * creating a copy like {@link QueryList.toArray} does.\n * @param queryList\n * @returns original array from {@link QueryList}.\n */\nexport function tuiGetOriginalArrayFromQueryList<T>(\n queryList: QueryList<T>,\n): readonly T[] {\n let array: readonly T[] = [];\n\n queryList.find((_item, _index, originalArray) => {\n array = originalArray;\n\n return true;\n });\n\n return array;\n}\n","import {TuiSwipeDirection} from '@taiga-ui/cdk/interfaces';\n\nexport function tuiGetSwipeDirection(deltaX: number, deltaY: number): TuiSwipeDirection {\n if (Math.abs(deltaY) > Math.abs(deltaX)) {\n return deltaY > 0 ? `top` : `bottom`;\n }\n\n return deltaX > 0 ? `left` : `right`;\n}\n","export function tuiIsFalsy(value: unknown): boolean {\n return !value;\n}\n","export function tuiIsNumber(value: unknown): value is number {\n // eslint-disable-next-line @taiga-ui/experience/no-typeof\n return typeof value === `number`;\n}\n","export function tuiIsObject<T extends Record<string, any>>(\n value: unknown,\n): value is NonNullable<T> {\n // eslint-disable-next-line @taiga-ui/experience/no-typeof\n return typeof value === `object` && !!value;\n}\n","export function tuiIsPresent<T>(value?: T | null): value is T {\n return value !== null && value !== undefined;\n}\n","export function tuiIsValidUrl(url: string): boolean {\n const pattern = new RegExp(\n `^([a-zA-Z]+:\\\\/\\\\/)?` + // protocol\n `((([a-z\\\\d]([a-z\\\\d-]*[a-z\\\\d])*)\\\\.)+[a-z]{2,}|localhost|` + // domain name\n `((\\\\d{1,3}\\\\.){3}\\\\d{1,3}))` + // OR IP (v4) address\n `(\\\\:\\\\d+)?(\\\\/[-a-z\\\\d%_.~+]*)*` + // port and path\n `(\\\\?[;&a-z\\\\d%_.~+=-]*)?` + // query string\n `(\\\\#[-a-z\\\\d_]*)?$`, // fragment locator\n `i`,\n );\n\n return pattern.test(url);\n}\n","import {AbstractControl, FormArray, FormGroup} from '@angular/forms';\n\nexport function tuiMarkControlAsTouchedAndValidate(control: AbstractControl): void {\n if (control instanceof FormArray) {\n control.controls.forEach(nestedControl => {\n tuiMarkControlAsTouchedAndValidate(nestedControl);\n });\n }\n\n if (control instanceof FormGroup) {\n Object.values(control.controls).forEach(nestedControl => {\n tuiMarkControlAsTouchedAndValidate(nestedControl);\n });\n }\n\n control.markAsTouched();\n control.updateValueAndValidity();\n}\n","import {TuiIdentityMatcher} from '@taiga-ui/cdk/types';\n\n/**\n * Checks identity for nullable elements.\n *\n * @param a element a\n * @param b element b\n * @param handler called if both elements are not null\n * @return true if either both are null or they pass identity handler\n */\nexport function tuiNullableSame<T>(\n a: T | null,\n b: T | null,\n handler: TuiIdentityMatcher<T>,\n): boolean {\n if (a === null) {\n return b === null;\n }\n\n if (b === null) {\n return false;\n }\n\n return handler(a, b);\n}\n","/**\n * @deprecated use `Object.fromEntries` instead\n * (check browser support first https://caniuse.com/mdn-javascript_builtins_object_fromentries)\n * ___\n * TODO: after we bump Firefox to 63+ replace this function with `Object.fromEntries`.\n * TODO: Add `es2019.object` to `tsconfig.json` => `compilerOptions.lib`.\n *\n */\nexport function tuiObjectFromEntries<K extends number | string, V>(\n keyValuePairs: Array<[K, V]>,\n): Record<K, V> {\n return keyValuePairs.reduce(\n (obj, [key, val]) => ({...obj, [key]: val}),\n {} as Record<K, V>,\n );\n}\n","import {FactoryProvider, InjectionToken, Optional, SkipSelf} from '@angular/core';\n\nexport function tuiProvideOptions<T>(\n provide: InjectionToken<T>,\n options: Partial<T>,\n fallback: T,\n): FactoryProvider {\n return {\n provide,\n deps: [[new Optional(), new SkipSelf(), provide]],\n useFactory: (parent: T | null): T => ({\n ...(parent || fallback),\n ...options,\n }),\n };\n}\n","import {TuiValuesOf} from '@taiga-ui/cdk/types';\n\nexport function tuiUniqBy<T extends Record<string, any>>(\n array: readonly T[],\n key: keyof T,\n): readonly T[] {\n return Array.from(\n array\n .reduce(\n (map, item) => (map.has(item[key]) ? map : map.set(item[key], item)),\n new Map<TuiValuesOf<T>, T>(),\n )\n .values(),\n );\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-cdk-utils-miscellaneous.js","sources":["../../../projects/cdk/utils/miscellaneous/array-remove.ts","../../../projects/cdk/utils/miscellaneous/array-shallow-equals.ts","../../../projects/cdk/utils/miscellaneous/array-toggle.ts","../../../projects/cdk/utils/miscellaneous/is-string.ts","../../../projects/cdk/utils/miscellaneous/clean-object.ts","../../../projects/cdk/utils/miscellaneous/create-token.ts","../../../projects/cdk/utils/miscellaneous/create-options.ts","../../../projects/cdk/utils/miscellaneous/default-sort.ts","../../../projects/cdk/utils/miscellaneous/distance-between-touches.ts","../../../projects/cdk/utils/miscellaneous/ease-in-out-quad.ts","../../../projects/cdk/utils/miscellaneous/flat-length.ts","../../../projects/cdk/utils/miscellaneous/get-original-array-from-query-list.ts","../../../projects/cdk/utils/miscellaneous/get-swipe-direction.ts","../../../projects/cdk/utils/miscellaneous/is-falsy.ts","../../../projects/cdk/utils/miscellaneous/is-number.ts","../../../projects/cdk/utils/miscellaneous/is-object.ts","../../../projects/cdk/utils/miscellaneous/is-present.ts","../../../projects/cdk/utils/miscellaneous/is-valid-url.ts","../../../projects/cdk/utils/miscellaneous/mark-control-as-touched-and-validate.ts","../../../projects/cdk/utils/miscellaneous/nullable-same.ts","../../../projects/cdk/utils/miscellaneous/object-from-entries.ts","../../../projects/cdk/utils/miscellaneous/provide-options.ts","../../../projects/cdk/utils/miscellaneous/uniq-by.ts","../../../projects/cdk/utils/miscellaneous/taiga-ui-cdk-utils-miscellaneous.ts"],"sourcesContent":["export function tuiArrayRemove<T>(array: readonly T[], index: number): T[] {\n return array.slice(0, Math.max(index, 0)).concat(array.slice(Math.max(index + 1, 0)));\n}\n","export function tuiArrayShallowEquals<T>(a: readonly T[], b: readonly T[]): boolean {\n return a.length === b.length && a.every((item, index) => item === b[index]);\n}\n","import {tuiArrayRemove} from './array-remove';\n\nexport function tuiArrayToggle<T>(array: readonly T[], item: T): T[] {\n const index = array.indexOf(item);\n\n return index === -1 ? [...array, item] : tuiArrayRemove(array, index);\n}\n","export function tuiIsString(value: unknown): value is string {\n // eslint-disable-next-line @taiga-ui/experience/no-typeof\n return typeof value === `string`;\n}\n","import {TuiDeepPartial} from '@taiga-ui/cdk/types';\n\nimport {tuiIsString} from './is-string';\n\nexport function tuiCleanObject<T>(object: T): TuiDeepPartial<T> {\n return JSON.parse(\n JSON.stringify(object, (_key: string, value: unknown) =>\n checkValueIsEmpty(value) ? undefined : value,\n ),\n );\n}\n\ntype EmptyValue = '' | null | undefined;\n\nfunction checkValueIsEmpty<T>(value: EmptyValue | T): value is EmptyValue {\n const nextValue: any = tuiIsString(value) ? value.trim() : value;\n\n return [undefined, null, NaN, ``].includes(nextValue);\n}\n","import {InjectionToken} from '@angular/core';\n\nexport function tuiCreateToken<T>(defaults: T): InjectionToken<T> {\n return tuiCreateTokenFromFactory(() => defaults);\n}\n\nexport function tuiCreateTokenFromFactory<T>(factory: () => T): InjectionToken<T> {\n return new InjectionToken<T>(``, {factory});\n}\n","import {InjectionToken} from '@angular/core';\n\nimport {tuiCreateTokenFromFactory} from './create-token';\n\n/** @deprecated use {@link tuiCreateToken} instead */\nexport function tuiCreateOptions<T>(defaults: T): InjectionToken<T> {\n return tuiCreateTokenFromFactory(() => defaults);\n}\n","import {tuiIsString} from './is-string';\n\nexport function tuiDefaultSort<T>(x: T, y: T): number {\n if (x === y) {\n return 0;\n }\n\n if (tuiIsString(x) && tuiIsString(y)) {\n return x.localeCompare(y);\n }\n\n return x > y ? 1 : -1;\n}\n","export function tuiDistanceBetweenTouches({touches}: TouchEvent): number {\n return Math.hypot(\n touches[0].clientX - touches[1].clientX,\n touches[0].clientY - touches[1].clientY,\n );\n}\n","import {tuiAssert} from '@taiga-ui/cdk/classes';\n\nexport function tuiEaseInOutQuad(t: number): number {\n ngDevMode &&\n tuiAssert.assert(\n t >= 0 && t <= 1,\n `Input must be between 0 and 1 inclusive but received `,\n t,\n );\n\n return t < 0.5 ? 2 * t * t : -1 + (4 - 2 * t) * t;\n}\n","/**\n * Flattens two-dimensional array and calculates resulting length\n *\n * @param array twi dimensional array\n */\nexport function tuiFlatLength(array: ReadonlyArray<readonly unknown[]>): number {\n return array.reduce((count, section) => count + section.length, 0);\n}\n","import {QueryList} from '@angular/core';\n\n/**\n * Extracts original array from {@link QueryList} rather than\n * creating a copy like {@link QueryList.toArray} does.\n * @param queryList\n * @returns original array from {@link QueryList}.\n */\nexport function tuiGetOriginalArrayFromQueryList<T>(\n queryList: QueryList<T>,\n): readonly T[] {\n let array: readonly T[] = [];\n\n queryList.find((_item, _index, originalArray) => {\n array = originalArray;\n\n return true;\n });\n\n return array;\n}\n","import {TuiSwipeDirection} from '@taiga-ui/cdk/interfaces';\n\nexport function tuiGetSwipeDirection(deltaX: number, deltaY: number): TuiSwipeDirection {\n if (Math.abs(deltaY) > Math.abs(deltaX)) {\n return deltaY > 0 ? `top` : `bottom`;\n }\n\n return deltaX > 0 ? `left` : `right`;\n}\n","export function tuiIsFalsy(value: unknown): boolean {\n return !value;\n}\n","export function tuiIsNumber(value: unknown): value is number {\n // eslint-disable-next-line @taiga-ui/experience/no-typeof\n return typeof value === `number`;\n}\n","export function tuiIsObject<T extends Record<string, any>>(\n value: unknown,\n): value is NonNullable<T> {\n // eslint-disable-next-line @taiga-ui/experience/no-typeof\n return typeof value === `object` && !!value;\n}\n","export function tuiIsPresent<T>(value?: T | null): value is T {\n return value !== null && value !== undefined;\n}\n","export function tuiIsValidUrl(url: string): boolean {\n const pattern = new RegExp(\n `^([a-zA-Z]+:\\\\/\\\\/)?` + // protocol\n `((([a-z\\\\d]([a-z\\\\d-]*[a-z\\\\d])*)\\\\.)+[a-z]{2,}|localhost|` + // domain name\n `((\\\\d{1,3}\\\\.){3}\\\\d{1,3}))` + // OR IP (v4) address\n `(\\\\:\\\\d+)?(\\\\/[-a-z\\\\d%_.~+]*)*` + // port and path\n `(\\\\?[;&a-z\\\\d%_.~+=-]*)?` + // query string\n `(\\\\#[-a-z\\\\d_]*)?$`, // fragment locator\n `i`,\n );\n\n return pattern.test(url);\n}\n","import {AbstractControl, FormArray, FormGroup} from '@angular/forms';\n\nexport function tuiMarkControlAsTouchedAndValidate(control: AbstractControl): void {\n if (control instanceof FormArray) {\n control.controls.forEach(nestedControl => {\n tuiMarkControlAsTouchedAndValidate(nestedControl);\n });\n }\n\n if (control instanceof FormGroup) {\n Object.values(control.controls).forEach(nestedControl => {\n tuiMarkControlAsTouchedAndValidate(nestedControl);\n });\n }\n\n control.markAsTouched();\n control.updateValueAndValidity();\n}\n","import {TuiIdentityMatcher} from '@taiga-ui/cdk/types';\n\n/**\n * Checks identity for nullable elements.\n *\n * @param a element a\n * @param b element b\n * @param handler called if both elements are not null\n * @return true if either both are null or they pass identity handler\n */\nexport function tuiNullableSame<T>(\n a: T | null,\n b: T | null,\n handler: TuiIdentityMatcher<T>,\n): boolean {\n if (a === null) {\n return b === null;\n }\n\n if (b === null) {\n return false;\n }\n\n return handler(a, b);\n}\n","/**\n * @deprecated use `Object.fromEntries` instead\n * (check browser support first https://caniuse.com/mdn-javascript_builtins_object_fromentries)\n * ___\n * TODO: after we bump Firefox to 63+ replace this function with `Object.fromEntries`.\n * TODO: Add `es2019.object` to `tsconfig.json` => `compilerOptions.lib`.\n *\n */\nexport function tuiObjectFromEntries<K extends number | string, V>(\n keyValuePairs: Array<[K, V]>,\n): Record<K, V> {\n return keyValuePairs.reduce(\n (obj, [key, val]) => ({...obj, [key]: val}),\n {} as Record<K, V>,\n );\n}\n","import {FactoryProvider, InjectionToken, Optional, SkipSelf} from '@angular/core';\n\nexport function tuiProvideOptions<T>(\n provide: InjectionToken<T>,\n options: Partial<T>,\n fallback: T,\n): FactoryProvider {\n return {\n provide,\n deps: [[new Optional(), new SkipSelf(), provide]],\n useFactory: (parent: T | null): T => ({\n ...(parent || fallback),\n ...options,\n }),\n };\n}\n","import {TuiValuesOf} from '@taiga-ui/cdk/types';\n\nexport function tuiUniqBy<T extends Record<string, any>>(\n array: readonly T[],\n key: keyof T,\n): readonly T[] {\n return Array.from(\n array\n .reduce(\n (map, item) => (map.has(item[key]) ? map : map.set(item[key], item)),\n new Map<TuiValuesOf<T>, T>(),\n )\n .values(),\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,3 +1,13 @@
1
+ /**
2
+ * @description:
3
+ * All Chrome / Chromium-based browsers will return MacIntel on macOS,
4
+ * no matter what the hardware architecture is. See the source code here:
5
+ * https://source.chromium.org/chromium/chromium/src/+/master:third_party/blink/renderer/core/frame/navigator_id.cc;l=64;drc=703d3c472cf27470dad21a3f2c8972aca3732cd6
6
+ * But maybe in future years, it will be changed to MacM1
7
+ *
8
+ * Documentation:
9
+ * https://developer.mozilla.org/en-US/docs/Web/API/Navigator/platform
10
+ */
1
11
  function tuiIsApplePlatform(navigator) {
2
12
  return navigator.platform.startsWith(`Mac`) || navigator.platform === `iPhone`;
3
13
  }
@@ -13,5 +23,9 @@ function tuiIsApple(navigator) {
13
23
  return tuiIsIos(navigator) || SAFARI_REG_EXP.test(navigator.userAgent.toLowerCase());
14
24
  }
15
25
 
26
+ /**
27
+ * Generated bundle index. Do not edit.
28
+ */
29
+
16
30
  export { tuiIsApple, tuiIsApplePlatform, tuiIsIos };
17
31
  //# sourceMappingURL=taiga-ui-cdk-utils-os.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-utils-os.js","sources":["../../../projects/cdk/utils/os/is-apple-platform.ts","../../../projects/cdk/utils/os/is-ios.ts","../../../projects/cdk/utils/os/is-apple.ts"],"sourcesContent":["/**\n * @description:\n * All Chrome / Chromium-based browsers will return MacIntel on macOS,\n * no matter what the hardware architecture is. See the source code here:\n * https://source.chromium.org/chromium/chromium/src/+/master:third_party/blink/renderer/core/frame/navigator_id.cc;l=64;drc=703d3c472cf27470dad21a3f2c8972aca3732cd6\n * But maybe in future years, it will be changed to MacM1\n *\n * Documentation:\n * https://developer.mozilla.org/en-US/docs/Web/API/Navigator/platform\n */\nexport function tuiIsApplePlatform(navigator: Navigator): boolean {\n return navigator.platform.startsWith(`Mac`) || navigator.platform === `iPhone`;\n}\n","import {tuiIsApplePlatform} from './is-apple-platform';\n\nconst IOS_REG_EXP = /ipad|iphone|ipod/;\n\nexport function tuiIsIos(navigator: Navigator): boolean {\n return (\n IOS_REG_EXP.test(navigator.userAgent.toLowerCase()) ||\n (tuiIsApplePlatform(navigator) && navigator.maxTouchPoints > 1)\n );\n}\n","import {tuiIsIos} from './is-ios';\n\nconst SAFARI_REG_EXP = /^((?!chrome|android).)*safari/i;\n\nexport function tuiIsApple(navigator: Navigator): boolean {\n return tuiIsIos(navigator) || SAFARI_REG_EXP.test(navigator.userAgent.toLowerCase());\n}\n"],"names":[],"mappings":"AAUM,SAAU,kBAAkB,CAAC,SAAoB,EAAA;AACnD,IAAA,OAAO,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA,GAAA,CAAK,CAAC,IAAI,SAAS,CAAC,QAAQ,KAAK,QAAQ,CAAC;AACnF;;ACVA,MAAM,WAAW,GAAG,kBAAkB,CAAC;AAEjC,SAAU,QAAQ,CAAC,SAAoB,EAAA;IACzC,QACI,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;AACnD,SAAC,kBAAkB,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,cAAc,GAAG,CAAC,CAAC,EACjE;AACN;;ACPA,MAAM,cAAc,GAAG,gCAAgC,CAAC;AAElD,SAAU,UAAU,CAAC,SAAoB,EAAA;AAC3C,IAAA,OAAO,QAAQ,CAAC,SAAS,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;AACzF;;;;"}
1
+ {"version":3,"file":"taiga-ui-cdk-utils-os.js","sources":["../../../projects/cdk/utils/os/is-apple-platform.ts","../../../projects/cdk/utils/os/is-ios.ts","../../../projects/cdk/utils/os/is-apple.ts","../../../projects/cdk/utils/os/taiga-ui-cdk-utils-os.ts"],"sourcesContent":["/**\n * @description:\n * All Chrome / Chromium-based browsers will return MacIntel on macOS,\n * no matter what the hardware architecture is. See the source code here:\n * https://source.chromium.org/chromium/chromium/src/+/master:third_party/blink/renderer/core/frame/navigator_id.cc;l=64;drc=703d3c472cf27470dad21a3f2c8972aca3732cd6\n * But maybe in future years, it will be changed to MacM1\n *\n * Documentation:\n * https://developer.mozilla.org/en-US/docs/Web/API/Navigator/platform\n */\nexport function tuiIsApplePlatform(navigator: Navigator): boolean {\n return navigator.platform.startsWith(`Mac`) || navigator.platform === `iPhone`;\n}\n","import {tuiIsApplePlatform} from './is-apple-platform';\n\nconst IOS_REG_EXP = /ipad|iphone|ipod/;\n\nexport function tuiIsIos(navigator: Navigator): boolean {\n return (\n IOS_REG_EXP.test(navigator.userAgent.toLowerCase()) ||\n (tuiIsApplePlatform(navigator) && navigator.maxTouchPoints > 1)\n );\n}\n","import {tuiIsIos} from './is-ios';\n\nconst SAFARI_REG_EXP = /^((?!chrome|android).)*safari/i;\n\nexport function tuiIsApple(navigator: Navigator): boolean {\n return tuiIsIos(navigator) || SAFARI_REG_EXP.test(navigator.userAgent.toLowerCase());\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"AAAA;;;;;;;;;AASG;AACG,SAAU,kBAAkB,CAAC,SAAoB,EAAA;AACnD,IAAA,OAAO,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA,GAAA,CAAK,CAAC,IAAI,SAAS,CAAC,QAAQ,KAAK,QAAQ,CAAC;AACnF;;ACVA,MAAM,WAAW,GAAG,kBAAkB,CAAC;AAEjC,SAAU,QAAQ,CAAC,SAAoB,EAAA;IACzC,QACI,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;AACnD,SAAC,kBAAkB,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,cAAc,GAAG,CAAC,CAAC,EACjE;AACN;;ACPA,MAAM,cAAc,GAAG,gCAAgC,CAAC;AAElD,SAAU,UAAU,CAAC,SAAoB,EAAA;AAC3C,IAAA,OAAO,QAAQ,CAAC,SAAS,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC;AACzF;;ACNA;;AAEG;;;;"}
@@ -1,5 +1,19 @@
1
1
  import { tuiIsString } from '@taiga-ui/cdk/utils/miscellaneous';
2
2
 
3
+ /**
4
+ * @description:
5
+ * Any ‘linearGradient’ attributes which are defined on the referenced
6
+ * element which are not defined on this element are inherited by this element.
7
+ * If this element has no defined gradient stops, and the referenced element does
8
+ * (possibly due to its own ‘xlink:href’ attribute), then this element inherits
9
+ * the gradient stop from the referenced element. Inheritance can be indirect
10
+ * to an arbitrary level; thus, if the referenced element inherits attribute
11
+ * or gradient stops due to its own ‘xlink:href’ attribute, then the current
12
+ * element can inherit those attributes or gradient stops.
13
+ *
14
+ * Documentation: https://www.w3.org/TR/SVG11/pservers.html
15
+ *
16
+ */
3
17
  function tuiSvgLinearGradientProcessor(svg, salt = makeRandomSalt(), fallback = `rgba(0, 0, 0, 0.7)`) {
4
18
  if (tuiIsString(svg)) {
5
19
  const uniqueIds = extractLinearGradientIdsFromSvg(svg);
@@ -32,7 +46,7 @@ function setFallbackForGradientFill(svg, fallback) {
32
46
  try {
33
47
  const tree = new DOMParser().parseFromString(svg, `text/html`);
34
48
  tree.body
35
- .querySelectorAll(`[fill^=url]`)
49
+ .querySelectorAll(`[fill^=url]`) // only gradient
36
50
  .forEach(element => element.setAttribute(`fill`, `${element.getAttribute(`fill`)} ${fallback}`.trim()));
37
51
  return tree.body.innerHTML.trim();
38
52
  }
@@ -41,5 +55,9 @@ function setFallbackForGradientFill(svg, fallback) {
41
55
  }
42
56
  }
43
57
 
58
+ /**
59
+ * Generated bundle index. Do not edit.
60
+ */
61
+
44
62
  export { tuiSvgLinearGradientProcessor };
45
63
  //# sourceMappingURL=taiga-ui-cdk-utils-svg.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-utils-svg.js","sources":["../../../projects/cdk/utils/svg/svg-linear-gradient-processor.ts"],"sourcesContent":["import {TuiSafeHtml} from '@taiga-ui/cdk/interfaces';\nimport {tuiIsString} from '@taiga-ui/cdk/utils/miscellaneous';\n\n/**\n * @description:\n * Any ‘linearGradient’ attributes which are defined on the referenced\n * element which are not defined on this element are inherited by this element.\n * If this element has no defined gradient stops, and the referenced element does\n * (possibly due to its own ‘xlink:href’ attribute), then this element inherits\n * the gradient stop from the referenced element. Inheritance can be indirect\n * to an arbitrary level; thus, if the referenced element inherits attribute\n * or gradient stops due to its own ‘xlink:href’ attribute, then the current\n * element can inherit those attributes or gradient stops.\n *\n * Documentation: https://www.w3.org/TR/SVG11/pservers.html\n *\n */\nexport function tuiSvgLinearGradientProcessor(\n svg: TuiSafeHtml,\n salt: number | string = makeRandomSalt(),\n fallback: string = `rgba(0, 0, 0, 0.7)`,\n): TuiSafeHtml {\n if (tuiIsString(svg)) {\n const uniqueIds = extractLinearGradientIdsFromSvg(svg);\n const rawSvg = uniqueIds.reduce((newSvg, previousId) => {\n const escapedId = escapeRegExp(previousId);\n const newId = `id_${salt}_${previousId}`;\n\n return newSvg\n .replace(new RegExp(`\"${escapedId}\"`, `g`), `\"${newId}\"`)\n .replace(new RegExp(`'${escapedId}'`, `g`), `'${newId}'`)\n .replace(new RegExp(`url\\\\('#${escapedId}'\\\\)`, `g`), `url('#${newId}')`)\n .replace(new RegExp(`url\\\\(\"#${escapedId}\"\\\\)`, `g`), `url(\"#${newId}\")`)\n .replace(new RegExp(`url\\\\(#${escapedId}\\\\)`, `g`), `url(#${newId})`);\n }, svg);\n\n return setFallbackForGradientFill(rawSvg, fallback);\n }\n\n return svg;\n}\n\nfunction makeRandomSalt(): number {\n return Math.floor(Math.random() * Date.now());\n}\n\nfunction escapeRegExp(search: string): string {\n return search.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, `\\\\$&`);\n}\n\nfunction extractLinearGradientIdsFromSvg(svg: string): string[] {\n const ids = (svg.match(/url\\((\"?)('*)#(.*?)('*)\\)/g) ?? []).map(url =>\n url.slice(4, url.length - 1).replace(/['\"#]+/g, ``),\n );\n\n return Array.from(new Set(ids));\n}\n\nfunction setFallbackForGradientFill(svg: string, fallback: string): string {\n try {\n const tree = new DOMParser().parseFromString(svg, `text/html`);\n\n tree.body\n .querySelectorAll(`[fill^=url]`) // only gradient\n .forEach(element =>\n element.setAttribute(\n `fill`,\n `${element.getAttribute(`fill`)} ${fallback}`.trim(),\n ),\n );\n\n return tree.body.innerHTML.trim();\n } catch {\n return svg;\n }\n}\n"],"names":[],"mappings":";;AAiBM,SAAU,6BAA6B,CACzC,GAAgB,EAChB,OAAwB,cAAc,EAAE,EACxC,QAAA,GAAmB,CAAoB,kBAAA,CAAA,EAAA;AAEvC,IAAA,IAAI,WAAW,CAAC,GAAG,CAAC,EAAE;AAClB,QAAA,MAAM,SAAS,GAAG,+BAA+B,CAAC,GAAG,CAAC,CAAC;QACvD,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,UAAU,KAAI;AACnD,YAAA,MAAM,SAAS,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;AAC3C,YAAA,MAAM,KAAK,GAAG,CAAA,GAAA,EAAM,IAAI,CAAI,CAAA,EAAA,UAAU,EAAE,CAAC;AAEzC,YAAA,OAAO,MAAM;AACR,iBAAA,OAAO,CAAC,IAAI,MAAM,CAAC,IAAI,SAAS,CAAA,CAAA,CAAG,EAAE,CAAA,CAAA,CAAG,CAAC,EAAE,CAAI,CAAA,EAAA,KAAK,GAAG,CAAC;AACxD,iBAAA,OAAO,CAAC,IAAI,MAAM,CAAC,IAAI,SAAS,CAAA,CAAA,CAAG,EAAE,CAAA,CAAA,CAAG,CAAC,EAAE,CAAI,CAAA,EAAA,KAAK,GAAG,CAAC;AACxD,iBAAA,OAAO,CAAC,IAAI,MAAM,CAAC,WAAW,SAAS,CAAA,IAAA,CAAM,EAAE,CAAA,CAAA,CAAG,CAAC,EAAE,CAAS,MAAA,EAAA,KAAK,IAAI,CAAC;AACxE,iBAAA,OAAO,CAAC,IAAI,MAAM,CAAC,WAAW,SAAS,CAAA,IAAA,CAAM,EAAE,CAAA,CAAA,CAAG,CAAC,EAAE,CAAS,MAAA,EAAA,KAAK,IAAI,CAAC;AACxE,iBAAA,OAAO,CAAC,IAAI,MAAM,CAAC,UAAU,SAAS,CAAA,GAAA,CAAK,EAAE,CAAA,CAAA,CAAG,CAAC,EAAE,CAAA,KAAA,EAAQ,KAAK,CAAA,CAAA,CAAG,CAAC,CAAC;SAC7E,EAAE,GAAG,CAAC,CAAC;AAER,QAAA,OAAO,0BAA0B,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;AACvD,KAAA;AAED,IAAA,OAAO,GAAG,CAAC;AACf,CAAC;AAED,SAAS,cAAc,GAAA;AACnB,IAAA,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;AAClD,CAAC;AAED,SAAS,YAAY,CAAC,MAAc,EAAA;IAChC,OAAO,MAAM,CAAC,OAAO,CAAC,0BAA0B,EAAE,CAAA,IAAA,CAAM,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,+BAA+B,CAAC,GAAW,EAAA;;AAChD,IAAA,MAAM,GAAG,GAAG,CAAC,MAAA,GAAG,CAAC,KAAK,CAAC,4BAA4B,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAI,EAAE,EAAE,GAAG,CAAC,GAAG,IAC/D,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,CAAE,CAAA,CAAC,CACtD,CAAC;IAEF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;AACpC,CAAC;AAED,SAAS,0BAA0B,CAAC,GAAW,EAAE,QAAgB,EAAA;IAC7D,IAAI;AACA,QAAA,MAAM,IAAI,GAAG,IAAI,SAAS,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE,CAAW,SAAA,CAAA,CAAC,CAAC;AAE/D,QAAA,IAAI,CAAC,IAAI;aACJ,gBAAgB,CAAC,aAAa,CAAC;aAC/B,OAAO,CAAC,OAAO,IACZ,OAAO,CAAC,YAAY,CAChB,CAAM,IAAA,CAAA,EACN,CAAG,EAAA,OAAO,CAAC,YAAY,CAAC,CAAM,IAAA,CAAA,CAAC,CAAI,CAAA,EAAA,QAAQ,CAAE,CAAA,CAAC,IAAI,EAAE,CACvD,CACJ,CAAC;QAEN,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;AACrC,KAAA;IAAC,OAAM,EAAA,EAAA;AACJ,QAAA,OAAO,GAAG,CAAC;AACd,KAAA;AACL;;;;"}
1
+ {"version":3,"file":"taiga-ui-cdk-utils-svg.js","sources":["../../../projects/cdk/utils/svg/svg-linear-gradient-processor.ts","../../../projects/cdk/utils/svg/taiga-ui-cdk-utils-svg.ts"],"sourcesContent":["import {TuiSafeHtml} from '@taiga-ui/cdk/interfaces';\nimport {tuiIsString} from '@taiga-ui/cdk/utils/miscellaneous';\n\n/**\n * @description:\n * Any ‘linearGradient’ attributes which are defined on the referenced\n * element which are not defined on this element are inherited by this element.\n * If this element has no defined gradient stops, and the referenced element does\n * (possibly due to its own ‘xlink:href’ attribute), then this element inherits\n * the gradient stop from the referenced element. Inheritance can be indirect\n * to an arbitrary level; thus, if the referenced element inherits attribute\n * or gradient stops due to its own ‘xlink:href’ attribute, then the current\n * element can inherit those attributes or gradient stops.\n *\n * Documentation: https://www.w3.org/TR/SVG11/pservers.html\n *\n */\nexport function tuiSvgLinearGradientProcessor(\n svg: TuiSafeHtml,\n salt: number | string = makeRandomSalt(),\n fallback: string = `rgba(0, 0, 0, 0.7)`,\n): TuiSafeHtml {\n if (tuiIsString(svg)) {\n const uniqueIds = extractLinearGradientIdsFromSvg(svg);\n const rawSvg = uniqueIds.reduce((newSvg, previousId) => {\n const escapedId = escapeRegExp(previousId);\n const newId = `id_${salt}_${previousId}`;\n\n return newSvg\n .replace(new RegExp(`\"${escapedId}\"`, `g`), `\"${newId}\"`)\n .replace(new RegExp(`'${escapedId}'`, `g`), `'${newId}'`)\n .replace(new RegExp(`url\\\\('#${escapedId}'\\\\)`, `g`), `url('#${newId}')`)\n .replace(new RegExp(`url\\\\(\"#${escapedId}\"\\\\)`, `g`), `url(\"#${newId}\")`)\n .replace(new RegExp(`url\\\\(#${escapedId}\\\\)`, `g`), `url(#${newId})`);\n }, svg);\n\n return setFallbackForGradientFill(rawSvg, fallback);\n }\n\n return svg;\n}\n\nfunction makeRandomSalt(): number {\n return Math.floor(Math.random() * Date.now());\n}\n\nfunction escapeRegExp(search: string): string {\n return search.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, `\\\\$&`);\n}\n\nfunction extractLinearGradientIdsFromSvg(svg: string): string[] {\n const ids = (svg.match(/url\\((\"?)('*)#(.*?)('*)\\)/g) ?? []).map(url =>\n url.slice(4, url.length - 1).replace(/['\"#]+/g, ``),\n );\n\n return Array.from(new Set(ids));\n}\n\nfunction setFallbackForGradientFill(svg: string, fallback: string): string {\n try {\n const tree = new DOMParser().parseFromString(svg, `text/html`);\n\n tree.body\n .querySelectorAll(`[fill^=url]`) // only gradient\n .forEach(element =>\n element.setAttribute(\n `fill`,\n `${element.getAttribute(`fill`)} ${fallback}`.trim(),\n ),\n );\n\n return tree.body.innerHTML.trim();\n } catch {\n return svg;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -7,4 +7,8 @@ export * from '@taiga-ui/cdk/utils/math';
7
7
  export * from '@taiga-ui/cdk/utils/miscellaneous';
8
8
  export * from '@taiga-ui/cdk/utils/os';
9
9
  export * from '@taiga-ui/cdk/utils/svg';
10
+
11
+ /**
12
+ * Generated bundle index. Do not edit.
13
+ */
10
14
  //# sourceMappingURL=taiga-ui-cdk-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-utils.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
1
+ {"version":3,"file":"taiga-ui-cdk-utils.js","sources":["../../../projects/cdk/utils/taiga-ui-cdk-utils.ts"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;AAAA;;AAEG"}
@@ -15,4 +15,8 @@ export * from '@taiga-ui/cdk/services';
15
15
  export * from '@taiga-ui/cdk/tokens';
16
16
  export * from '@taiga-ui/cdk/types';
17
17
  export * from '@taiga-ui/cdk/utils';
18
+
19
+ /**
20
+ * Generated bundle index. Do not edit.
21
+ */
18
22
  //# sourceMappingURL=taiga-ui-cdk.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"taiga-ui-cdk.js","sources":["../../../projects/cdk/taiga-ui-cdk.ts"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA;;AAEG"}
@@ -1,3 +1,6 @@
1
+ /**
2
+ * @deprecated Use {@link AbstractTuiValueTransformer} instead
3
+ */
1
4
  export interface TuiControlValueTransformer<From, To = unknown> {
2
5
  readonly fromControlValue: (controlValue: To) => From;
3
6
  readonly toControlValue: (componentValue: From) => To;
@@ -1,4 +1,7 @@
1
1
  import { TuiMonthLike } from './month-like';
2
+ /**
3
+ * Optionally has year and/or month and/or day
4
+ */
2
5
  export interface TuiDayLike extends TuiMonthLike {
3
6
  readonly day?: number;
4
7
  }
@@ -1,6 +1,10 @@
1
1
  import { Observable } from 'rxjs';
2
2
  export interface TuiNativeFocusableElement extends Element, HTMLOrSVGElement {
3
3
  }
4
+ /**
5
+ * Public interface for any focusable component or directive
6
+ * TODO: shorten `nativeFocusableElement` in 4.0
7
+ */
4
8
  export interface TuiFocusableElementAccessor {
5
9
  focused: boolean;
6
10
  readonly focusedChange: Observable<boolean>;
@@ -1,4 +1,7 @@
1
1
  import { TuiYearLike } from './year-like';
2
+ /**
3
+ * Optionally has year and/or month
4
+ */
2
5
  export interface TuiMonthLike extends TuiYearLike {
3
6
  readonly month?: number;
4
7
  }
@@ -1,2 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
1
4
  /// <amd-module name="@taiga-ui/cdk/interfaces" />
2
5
  export * from './index';
@@ -1,3 +1,6 @@
1
+ /**
2
+ * Optionally has year
3
+ */
1
4
  export interface TuiYearLike {
2
5
  readonly year?: number;
3
6
  }
@@ -1,3 +1,6 @@
1
1
  import { AbstractControl, AbstractControlDirective } from '@angular/forms';
2
2
  import { Observable } from 'rxjs';
3
+ /**
4
+ * Turns AbstractControl/Abstract-control-directive valueChanges into ReplaySubject(1)
5
+ */
3
6
  export declare function tuiControlValue<T>(control: AbstractControl | AbstractControlDirective): Observable<T>;
@@ -1,2 +1,5 @@
1
1
  import { OperatorFunction } from 'rxjs';
2
+ /**
3
+ * Operator to set lifespan after which current value is considered obsolete
4
+ */
2
5
  export declare function tuiIsAlive(lifespan?: number): OperatorFunction<unknown, boolean>;
@@ -1,4 +1,10 @@
1
1
  import { QueryList } from '@angular/core';
2
2
  import { Observable } from 'rxjs';
3
+ /**
4
+ * Converts changes observable of a QueryList to an Observable of arrays
5
+ */
3
6
  export declare function tuiQueryListChanges<T>(queryList: QueryList<T>): Observable<readonly T[]>;
7
+ /**
8
+ * @deprecated An alias, use {@link tuiQueryListChanges} instead
9
+ */
4
10
  export declare const tuiItemsQueryListObservable: typeof tuiQueryListChanges;
@@ -1,3 +1,7 @@
1
1
  import { TuiEventWith, TuiTypedEventTarget } from '@taiga-ui/cdk/types';
2
2
  import { Observable } from 'rxjs';
3
+ /**
4
+ * Letting go of the mouse after it was pressed
5
+ * @param target
6
+ */
3
7
  export declare function tuiMouseDragFinishFrom<T extends TuiTypedEventTarget<TuiEventWith<DragEvent, T>>>(target: Exclude<T, null>): Observable<TuiEventWith<MouseEvent, T>>;
@@ -1,2 +1,5 @@
1
1
  import { Observable } from 'rxjs';
2
+ /**
3
+ * Normalizes scroll event in case element is `html` (document.documentElement)
4
+ */
2
5
  export declare function tuiScrollFrom(element: Element): Observable<Event>;
@@ -1,2 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
1
4
  /// <amd-module name="@taiga-ui/cdk/observables" />
2
5
  export * from './index';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@taiga-ui/cdk",
3
- "version": "3.51.0-canary.6291033",
3
+ "version": "3.51.0-canary.8873fad",
4
4
  "description": "Base library for creating Angular components and applications using Taiga UI principles regarding of actual visual appearance",
5
5
  "keywords": [
6
6
  "angular",
@@ -2,6 +2,13 @@ import { PipeTransform } from '@angular/core';
2
2
  import { TuiMatcher } from '@taiga-ui/cdk/types';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class TuiFilterPipe implements PipeTransform {
5
+ /**
6
+ * Filters an array through a matcher function using additional arguments
7
+ *
8
+ * @param items array
9
+ * @param matcher method for filtering
10
+ * @param args arbitrary number of additional arguments
11
+ */
5
12
  transform<T>(items: readonly T[], matcher: TuiMatcher<T>, ...args: any[]): T[];
6
13
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiFilterPipe, never>;
7
14
  static ɵpipe: i0.ɵɵPipeDeclaration<TuiFilterPipe, "tuiFilter">;
@@ -1,2 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
1
4
  /// <amd-module name="@taiga-ui/cdk/pipes/filter" />
2
5
  export * from './index';
@@ -1,2 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
1
4
  /// <amd-module name="@taiga-ui/cdk/pipes/is-present" />
2
5
  export * from './index';
@@ -1,2 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
1
4
  /// <amd-module name="@taiga-ui/cdk/pipes/keys" />
2
5
  export * from './index';
@@ -2,6 +2,13 @@ import { PipeTransform } from '@angular/core';
2
2
  import { TuiMapper } from '@taiga-ui/cdk/types';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class TuiMapperPipe implements PipeTransform {
5
+ /**
6
+ * Maps object to an arbitrary result through a mapper function
7
+ *
8
+ * @param value an item to transform
9
+ * @param mapper a mapping function
10
+ * @param args arbitrary number of additional arguments
11
+ */
5
12
  transform<T, G>(value: T, mapper: TuiMapper<T, G>, ...args: any[]): G;
6
13
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiMapperPipe, never>;
7
14
  static ɵpipe: i0.ɵɵPipeDeclaration<TuiMapperPipe, "tuiMapper">;
@@ -1,2 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
1
4
  /// <amd-module name="@taiga-ui/cdk/pipes/mapper" />
2
5
  export * from './index';
@@ -1,2 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
1
4
  /// <amd-module name="@taiga-ui/cdk/pipes/replace" />
2
5
  export * from './index';
@@ -1,2 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
1
4
  /// <amd-module name="@taiga-ui/cdk/pipes" />
2
5
  export * from './index';
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ALL_FILES = exports.ALL_TS_FILES = void 0;
4
4
  const EXCLUDE_DIRECTORIES = [
5
5
  `e2e`,
6
+ // compiled
6
7
  `scripts`,
7
8
  `dist`,
8
9
  `node_modules`,
@@ -10,6 +11,7 @@ const EXCLUDE_DIRECTORIES = [
10
11
  `dll`,
11
12
  `tmp`,
12
13
  `__build__`,
14
+ // hidden directories
13
15
  `.rpt2_cache`,
14
16
  `.husky`,
15
17
  `.vscode`,
@@ -25,7 +27,7 @@ const EXCLUDE_FILE_PATTERNS = [
25
27
  `*__name@dasherize__*`,
26
28
  `*__name@camelize__*`,
27
29
  `*__name@underscore__*`,
28
- `*.d`,
30
+ `*.d`, // typings
29
31
  ].join(`|`);
30
32
  exports.ALL_TS_FILES = [
31
33
  `!(${EXCLUDE_FILE_PATTERNS}).ts`,
@@ -71,5 +71,6 @@ function removeTaigaSchematicsPackage(tree) {
71
71
  }
72
72
  }
73
73
  catch (_b) {
74
+ // noop
74
75
  }
75
76
  }
@@ -5,6 +5,18 @@ export interface TuiSchema {
5
5
  readonly addSanitizer: boolean;
6
6
  readonly addons: readonly string[];
7
7
  readonly project: string;
8
+ /**
9
+ * @example
10
+ * ```console
11
+ * schematics ./dist/cdk:updateToV3 --allow-private --skip-deep-imports --dry-run false
12
+ * ```
13
+ */
8
14
  'skip-deep-imports'?: boolean;
15
+ /**
16
+ * @example
17
+ * ```console
18
+ * schematics ./dist/cdk:updateToV3 --skip-logs
19
+ * ```
20
+ */
9
21
  'skip-logs'?: boolean;
10
22
  }
@@ -27,6 +27,11 @@ function showWarning({ name, message, moduleSpecifier = `**/**` }, { logger }) {
27
27
  startLinePos: ref.getStartLinePos(),
28
28
  };
29
29
  });
30
+ /**
31
+ * We have to twice iterate array with refs because otherwise we get error:
32
+ * > Attempted to get information from a node that was removed or forgotten.
33
+ * See this {@link https://ts-morph.com/manipulation/#strongwarningstrong warning}
34
+ */
30
35
  referencesMeta.forEach(({ sourceFile, filePath, startLinePos }) => {
31
36
  logger.warn(`[WARNING] in ${filePath}: ${message}`);
32
37
  sourceFile.insertText(startLinePos, `// TODO: (Taiga UI migration) ${message}\n`);
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DEPRECATED_BREAKPOINTS = void 0;
4
4
  exports.DEPRECATED_BREAKPOINTS = [
5
+ // all previously actual breakpoints
5
6
  { from: `@media-retina`, to: `@tui-media-retina` },
6
7
  { from: `@media-retina-mobile`, to: `@tui-media-retina-mobile` },
7
8
  { from: `@media-retina-tablet`, to: `@tui-media-retina-tablet` },
@@ -16,6 +17,7 @@ exports.DEPRECATED_BREAKPOINTS = [
16
17
  { from: `@desktop-s-min`, to: `@tui-desktop-min` },
17
18
  { from: `@desktop-s-interval`, to: `@tui-desktop-interval` },
18
19
  { from: `@desktop-m-min`, to: `@tui-desktop-lg-min` },
20
+ // legacy breakpoints
19
21
  { from: `@mobile`, to: `@tui-mobile` },
20
22
  { from: `@mobile-min`, to: `@tui-mobile-min` },
21
23
  { from: `@mobile-interval`, to: `@tui-mobile-interval` },
@@ -182,18 +182,22 @@ exports.ENUMS_TO_REPLACE = [
182
182
  Bittersweet: `support-06`,
183
183
  Pinkie: `support-07`,
184
184
  Charm: `support-08`,
185
+ // cspell:disable-next-line
185
186
  Amethist: `support-09`,
186
187
  Helio: `support-10`,
187
188
  Lilac: `support-11`,
188
189
  Malibu: `support-12`,
189
190
  Havelock: `support-13`,
191
+ // cspell:disable-next-line
190
192
  Picton: `support-14`,
191
193
  Mint: `support-15`,
192
194
  Fountain: `support-16`,
195
+ // cspell:disable-next-line
193
196
  Puertorico: `support-17`,
194
197
  Bay: `support-18`,
195
198
  Forest: `support-19`,
196
199
  York: `support-20`,
200
+ // cspell:disable-next-line
197
201
  Feijoa: `support-21`,
198
202
  },
199
203
  keepAsType: false,
@@ -7,6 +7,11 @@ export declare const ATTRS_TO_REPLACE: ReplaceableAttribute[];
7
7
  export declare const INPUTS_TO_REMOVE: RemovableInput[];
8
8
  export declare const TAGS_TO_REPLACE: ReplaceableTag[];
9
9
  export declare const ATTR_TO_DIRECTIVE: AttributeToDirective[];
10
+ /**
11
+ * @example `<div [someDirective]="true" />` => `<div someDirective />`
12
+ *
13
+ * Keeping it for future sake
14
+ */
10
15
  export declare const TRUTHY_BOOLEAN_INPUT_TO_HTML_BINARY_ATTRIBUTE: readonly string[];
11
16
  export declare const TEMPLATE_COMMENTS: readonly [{
12
17
  readonly tag: "tui-input-slider";
@@ -663,6 +663,11 @@ exports.ATTR_TO_DIRECTIVE = [
663
663
  },
664
664
  },
665
665
  ];
666
+ /**
667
+ * @example `<div [someDirective]="true" />` => `<div someDirective />`
668
+ *
669
+ * Keeping it for future sake
670
+ */
666
671
  exports.TRUTHY_BOOLEAN_INPUT_TO_HTML_BINARY_ATTRIBUTE = [];
667
672
  exports.TEMPLATE_COMMENTS = [
668
673
  {
@@ -86,7 +86,9 @@ function addTaigaStyles(options) {
86
86
  `– Manually replace "${taiga_styles_1.TAIGA_GLOBAL_OLD_STYLE}" with "${taiga_styles_1.TAIGA_GLOBAL_NEW_STYLE}" inside "styles" of angular.json (don't forget to install "@taiga-ui/styles")`);
87
87
  return;
88
88
  }
89
- return angular_json_manipulations_1.addStylesToAngularJson(options, context, taigaStyles, existingStyles => !!(existingStyles === null || existingStyles === void 0 ? void 0 : existingStyles.some(style => typeof style === `string` && style.includes(`tinkoff-theme`))), stylesToReplace, tree);
89
+ return angular_json_manipulations_1.addStylesToAngularJson(options, context, taigaStyles, existingStyles => !!(existingStyles === null || existingStyles === void 0 ? void 0 : existingStyles.some(
90
+ // eslint-disable-next-line @taiga-ui/experience/no-typeof
91
+ style => typeof style === `string` && style.includes(`tinkoff-theme`))), stylesToReplace, tree);
90
92
  });
91
93
  }
92
94
  function showNormalizeWarning() {
@@ -98,6 +100,7 @@ function showNormalizeWarning() {
98
100
  }
99
101
  }
100
102
  catch (_b) {
103
+ // noop
101
104
  }
102
105
  };
103
106
  }
@@ -140,6 +140,24 @@ function replaceIdentifier(node, from, callback) {
140
140
  function replaceIdentifierReferences(identifier, from, callback) {
141
141
  identifier
142
142
  .findReferencesAsNodes()
143
+ /**
144
+ * `findReferencesAsNodes` has strange behavior.
145
+ * Imagine schematics run on the following file:
146
+ * ```
147
+ * class Dummy {
148
+ * var = 5;
149
+ * method1() {
150
+ * const {var} = this; // (1)
151
+ * return var; // (2)
152
+ * }
153
+ * method2() {
154
+ * const {var} = this; // (3)
155
+ * }
156
+ * }
157
+ * ```
158
+ * If `identifier` is equal to `var` from `method1` (1),
159
+ * then `identifier.findReferencesAsNodes` will return array with 2 references: (2) and (3).
160
+ */
143
161
  .filter(ref => !areBothObjectDestructuring(ref, identifier))
144
162
  .forEach(ref => {
145
163
  if (ref.wasForgotten()) {
@@ -8,7 +8,9 @@ const project_root_1 = require("../../../utils/project-root");
8
8
  const elements_1 = require("../../../utils/templates/elements");
9
9
  const get_component_templates_1 = require("../../../utils/templates/get-component-templates");
10
10
  const template_resource_1 = require("../../../utils/templates/template-resource");
11
- exports.DEPRECATED_PROGRESS_PIPES_REG = /\s*\|\s*tuiProgressColorSegments(Async\s*\|\s*async)?/gi;
11
+ exports.DEPRECATED_PROGRESS_PIPES_REG =
12
+ // eslint-disable-next-line unicorn/no-unsafe-regex
13
+ /\s*\|\s*tuiProgressColorSegments(Async\s*\|\s*async)?/gi;
12
14
  const PROPERTY_FOR_DEPRECATED_PIPES = `[color]`;
13
15
  function migrateProgress(fileSystem, options) {
14
16
  !options[`skip-logs`] &&
@@ -13,7 +13,9 @@ const MIN_LABELS_MIGRATION_METHOD_NAME = `tuiMigrationInputRangeMinLabel`;
13
13
  const MAX_LABELS_MIGRATION_METHOD_NAME = `tuiMigrationInputRangeMaxLabel`;
14
14
  function migrateInputRange(fileSystem, options) {
15
15
  const templateResources = get_component_templates_1.getComponentTemplates(constants_1.ALL_TS_FILES);
16
+ // eslint-disable-next-line @typescript-eslint/naming-convention
16
17
  const COMPONENTS_WITH_MIN_LABELS = new Set();
18
+ // eslint-disable-next-line @typescript-eslint/naming-convention
17
19
  const COMPONENTS_WITH_MAX_LABELS = new Set();
18
20
  let progressLog = progress_1.setupProgressLogger({
19
21
  total: templateResources.length,
@@ -93,6 +95,10 @@ function addMinMaxLabelMethod(componentPath, methodName, methodCode) {
93
95
  });
94
96
  }
95
97
  }
98
+ /**
99
+ * We should update virtual file tree after template manipulations
100
+ * otherwise all following ng-morph commands will overwrite all previous template manipulations
101
+ * */
96
102
  function save(fileSystem) {
97
103
  fileSystem.commitEdits();
98
104
  ng_morph_1.saveActiveProject();