@taiga-ui/cdk 4.51.0 → 4.52.0-canary.0ec45da

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 (806) hide show
  1. package/classes/control.d.ts +2 -2
  2. package/classes/index.d.ts +0 -1
  3. package/constants/index.d.ts +0 -1
  4. package/constants/used-icons.d.ts +1 -1
  5. package/constants/version.d.ts +1 -1
  6. package/constants/version.js +2 -1
  7. package/constants/version.js.map +1 -0
  8. package/date-time/date-time.d.ts +1 -1
  9. package/date-time/day.d.ts +1 -1
  10. package/date-time/time.d.ts +2 -2
  11. package/date-time/types.d.ts +0 -5
  12. package/directives/active-zone/active-zone.directive.d.ts +4 -3
  13. package/directives/animated/animated.directive.d.ts +0 -1
  14. package/directives/auto-focus/autofocus.options.d.ts +2 -2
  15. package/directives/index.d.ts +1 -1
  16. package/directives/let/let.directive.d.ts +1 -2
  17. package/directives/popover/popover.directive.d.ts +1 -1
  18. package/directives/repeat-times/repeat-times.directive.d.ts +2 -2
  19. package/directives/with-styles/index.d.ts +1 -0
  20. package/directives/with-styles/with-styles.directive.d.ts +10 -0
  21. package/fesm2022/taiga-ui-cdk-classes.mjs +6 -78
  22. package/fesm2022/taiga-ui-cdk-classes.mjs.map +1 -1
  23. package/fesm2022/taiga-ui-cdk-constants.mjs +3 -27
  24. package/fesm2022/taiga-ui-cdk-constants.mjs.map +1 -1
  25. package/fesm2022/taiga-ui-cdk-date-time.mjs +14 -2
  26. package/fesm2022/taiga-ui-cdk-date-time.mjs.map +1 -1
  27. package/fesm2022/taiga-ui-cdk-directives-active-zone.mjs +22 -26
  28. package/fesm2022/taiga-ui-cdk-directives-active-zone.mjs.map +1 -1
  29. package/fesm2022/taiga-ui-cdk-directives-animated.mjs +48 -45
  30. package/fesm2022/taiga-ui-cdk-directives-animated.mjs.map +1 -1
  31. package/fesm2022/taiga-ui-cdk-directives-auto-focus.mjs +5 -5
  32. package/fesm2022/taiga-ui-cdk-directives-auto-focus.mjs.map +1 -1
  33. package/fesm2022/taiga-ui-cdk-directives-click-outside.mjs +4 -4
  34. package/fesm2022/taiga-ui-cdk-directives-click-outside.mjs.map +1 -1
  35. package/fesm2022/taiga-ui-cdk-directives-control.mjs +3 -3
  36. package/fesm2022/taiga-ui-cdk-directives-control.mjs.map +1 -1
  37. package/fesm2022/taiga-ui-cdk-directives-copy-processor.mjs +4 -4
  38. package/fesm2022/taiga-ui-cdk-directives-copy-processor.mjs.map +1 -1
  39. package/fesm2022/taiga-ui-cdk-directives-droppable.mjs +4 -4
  40. package/fesm2022/taiga-ui-cdk-directives-droppable.mjs.map +1 -1
  41. package/fesm2022/taiga-ui-cdk-directives-element.mjs +4 -4
  42. package/fesm2022/taiga-ui-cdk-directives-element.mjs.map +1 -1
  43. package/fesm2022/taiga-ui-cdk-directives-focus-trap.mjs +11 -19
  44. package/fesm2022/taiga-ui-cdk-directives-focus-trap.mjs.map +1 -1
  45. package/fesm2022/taiga-ui-cdk-directives-font-size.mjs +3 -3
  46. package/fesm2022/taiga-ui-cdk-directives-font-size.mjs.map +1 -1
  47. package/fesm2022/taiga-ui-cdk-directives-high-dpi.mjs +3 -3
  48. package/fesm2022/taiga-ui-cdk-directives-high-dpi.mjs.map +1 -1
  49. package/fesm2022/taiga-ui-cdk-directives-hovered.mjs +8 -8
  50. package/fesm2022/taiga-ui-cdk-directives-hovered.mjs.map +1 -1
  51. package/fesm2022/taiga-ui-cdk-directives-item.mjs +3 -3
  52. package/fesm2022/taiga-ui-cdk-directives-item.mjs.map +1 -1
  53. package/fesm2022/taiga-ui-cdk-directives-let.mjs +6 -7
  54. package/fesm2022/taiga-ui-cdk-directives-let.mjs.map +1 -1
  55. package/fesm2022/taiga-ui-cdk-directives-media.mjs +4 -4
  56. package/fesm2022/taiga-ui-cdk-directives-media.mjs.map +1 -1
  57. package/fesm2022/taiga-ui-cdk-directives-native-validator.mjs +4 -4
  58. package/fesm2022/taiga-ui-cdk-directives-native-validator.mjs.map +1 -1
  59. package/fesm2022/taiga-ui-cdk-directives-obscured.mjs +15 -9
  60. package/fesm2022/taiga-ui-cdk-directives-obscured.mjs.map +1 -1
  61. package/fesm2022/taiga-ui-cdk-directives-pan.mjs +8 -8
  62. package/fesm2022/taiga-ui-cdk-directives-pan.mjs.map +1 -1
  63. package/fesm2022/taiga-ui-cdk-directives-platform.mjs +4 -4
  64. package/fesm2022/taiga-ui-cdk-directives-platform.mjs.map +1 -1
  65. package/fesm2022/taiga-ui-cdk-directives-popover.mjs +3 -3
  66. package/fesm2022/taiga-ui-cdk-directives-popover.mjs.map +1 -1
  67. package/fesm2022/taiga-ui-cdk-directives-repeat-times.mjs +10 -10
  68. package/fesm2022/taiga-ui-cdk-directives-repeat-times.mjs.map +1 -1
  69. package/fesm2022/taiga-ui-cdk-directives-resizer.mjs +7 -7
  70. package/fesm2022/taiga-ui-cdk-directives-resizer.mjs.map +1 -1
  71. package/fesm2022/taiga-ui-cdk-directives-swipe.mjs +8 -8
  72. package/fesm2022/taiga-ui-cdk-directives-swipe.mjs.map +1 -1
  73. package/fesm2022/taiga-ui-cdk-directives-transitioned.mjs +4 -4
  74. package/fesm2022/taiga-ui-cdk-directives-transitioned.mjs.map +1 -1
  75. package/fesm2022/taiga-ui-cdk-directives-validator.mjs +3 -3
  76. package/fesm2022/taiga-ui-cdk-directives-validator.mjs.map +1 -1
  77. package/fesm2022/taiga-ui-cdk-directives-value-changes.mjs +4 -4
  78. package/fesm2022/taiga-ui-cdk-directives-value-changes.mjs.map +1 -1
  79. package/fesm2022/taiga-ui-cdk-directives-visual-viewport.mjs +3 -3
  80. package/fesm2022/taiga-ui-cdk-directives-visual-viewport.mjs.map +1 -1
  81. package/fesm2022/taiga-ui-cdk-directives-with-styles.mjs +29 -0
  82. package/fesm2022/taiga-ui-cdk-directives-with-styles.mjs.map +1 -0
  83. package/fesm2022/taiga-ui-cdk-directives-zoom.mjs +7 -7
  84. package/fesm2022/taiga-ui-cdk-directives-zoom.mjs.map +1 -1
  85. package/fesm2022/taiga-ui-cdk-directives.mjs +1 -1
  86. package/fesm2022/taiga-ui-cdk-observables.mjs +8 -4
  87. package/fesm2022/taiga-ui-cdk-observables.mjs.map +1 -1
  88. package/fesm2022/taiga-ui-cdk-pipes-animation.mjs +3 -3
  89. package/fesm2022/taiga-ui-cdk-pipes-animation.mjs.map +1 -1
  90. package/fesm2022/taiga-ui-cdk-pipes-filter.mjs +3 -3
  91. package/fesm2022/taiga-ui-cdk-pipes-filter.mjs.map +1 -1
  92. package/fesm2022/taiga-ui-cdk-pipes-is-present.mjs +3 -3
  93. package/fesm2022/taiga-ui-cdk-pipes-is-present.mjs.map +1 -1
  94. package/fesm2022/taiga-ui-cdk-pipes-keys.mjs +3 -3
  95. package/fesm2022/taiga-ui-cdk-pipes-keys.mjs.map +1 -1
  96. package/fesm2022/taiga-ui-cdk-pipes-mapper.mjs +3 -3
  97. package/fesm2022/taiga-ui-cdk-pipes-mapper.mjs.map +1 -1
  98. package/fesm2022/taiga-ui-cdk-pipes-obfuscate.mjs +3 -3
  99. package/fesm2022/taiga-ui-cdk-pipes-obfuscate.mjs.map +1 -1
  100. package/fesm2022/taiga-ui-cdk-pipes-repeat-times.mjs +3 -3
  101. package/fesm2022/taiga-ui-cdk-pipes-repeat-times.mjs.map +1 -1
  102. package/fesm2022/taiga-ui-cdk-pipes-replace.mjs +3 -3
  103. package/fesm2022/taiga-ui-cdk-pipes-replace.mjs.map +1 -1
  104. package/fesm2022/taiga-ui-cdk-pipes-to-array.mjs +3 -3
  105. package/fesm2022/taiga-ui-cdk-pipes-to-array.mjs.map +1 -1
  106. package/fesm2022/taiga-ui-cdk-portals.mjs +126 -0
  107. package/fesm2022/taiga-ui-cdk-portals.mjs.map +1 -0
  108. package/fesm2022/taiga-ui-cdk-services.mjs +17 -15
  109. package/fesm2022/taiga-ui-cdk-services.mjs.map +1 -1
  110. package/fesm2022/taiga-ui-cdk-tokens.mjs +14 -13
  111. package/fesm2022/taiga-ui-cdk-tokens.mjs.map +1 -1
  112. package/fesm2022/taiga-ui-cdk-utils-browser.mjs +1 -23
  113. package/fesm2022/taiga-ui-cdk-utils-browser.mjs.map +1 -1
  114. package/fesm2022/taiga-ui-cdk-utils-color.mjs +1 -1
  115. package/fesm2022/taiga-ui-cdk-utils-color.mjs.map +1 -1
  116. package/fesm2022/taiga-ui-cdk-utils-di.mjs +1 -1
  117. package/fesm2022/taiga-ui-cdk-utils-di.mjs.map +1 -1
  118. package/fesm2022/taiga-ui-cdk-utils-dom.mjs +15 -23
  119. package/fesm2022/taiga-ui-cdk-utils-dom.mjs.map +1 -1
  120. package/fesm2022/taiga-ui-cdk-utils-focus.mjs +13 -14
  121. package/fesm2022/taiga-ui-cdk-utils-focus.mjs.map +1 -1
  122. package/fesm2022/taiga-ui-cdk-utils-math.mjs.map +1 -1
  123. package/fesm2022/taiga-ui-cdk-utils-miscellaneous.mjs +24 -14
  124. package/fesm2022/taiga-ui-cdk-utils-miscellaneous.mjs.map +1 -1
  125. package/fesm2022/taiga-ui-cdk.mjs +1 -0
  126. package/fesm2022/taiga-ui-cdk.mjs.map +1 -1
  127. package/index.d.ts +1 -0
  128. package/package.json +28 -136
  129. package/pipes/obfuscate/obfuscate.options.d.ts +1 -1
  130. package/portals/directive.d.ts +11 -0
  131. package/portals/index.d.ts +4 -0
  132. package/portals/portal.d.ts +25 -0
  133. package/portals/portals.d.ts +12 -0
  134. package/portals/service.d.ts +15 -0
  135. package/schematics/collection.json +2 -1
  136. package/schematics/constants/file-globs.js +2 -1
  137. package/schematics/constants/file-globs.js.map +1 -0
  138. package/schematics/constants/index.js +1 -0
  139. package/schematics/constants/index.js.map +1 -0
  140. package/schematics/constants/taiga-styles.js +1 -0
  141. package/schematics/constants/taiga-styles.js.map +1 -0
  142. package/schematics/index.js +1 -0
  143. package/schematics/index.js.map +1 -0
  144. package/schematics/migrate-tui-let/index.js +5 -3
  145. package/schematics/migrate-tui-let/index.js.map +1 -0
  146. package/schematics/migrate-tui-let/schema.json +7 -0
  147. package/schematics/ng-add/constants/modules.js +1 -0
  148. package/schematics/ng-add/constants/modules.js.map +1 -0
  149. package/schematics/ng-add/constants/packages.js +1 -0
  150. package/schematics/ng-add/constants/packages.js.map +1 -0
  151. package/schematics/ng-add/constants/versions.d.ts +1 -1
  152. package/schematics/ng-add/constants/versions.js +1 -0
  153. package/schematics/ng-add/constants/versions.js.map +1 -0
  154. package/schematics/ng-add/index.js +2 -2
  155. package/schematics/ng-add/index.js.map +1 -0
  156. package/schematics/ng-add/schema.js +1 -0
  157. package/schematics/ng-add/schema.js.map +1 -0
  158. package/schematics/ng-add/setup-project.js +2 -1
  159. package/schematics/ng-add/setup-project.js.map +1 -0
  160. package/schematics/ng-add/steps/add-taiga-icons.js +3 -3
  161. package/schematics/ng-add/steps/add-taiga-icons.js.map +1 -0
  162. package/schematics/ng-add/steps/add-taiga-modules.js +2 -2
  163. package/schematics/ng-add/steps/add-taiga-modules.js.map +1 -0
  164. package/schematics/ng-add/steps/add-taiga-styles.js +2 -2
  165. package/schematics/ng-add/steps/add-taiga-styles.js.map +1 -0
  166. package/schematics/ng-add/steps/wrap-with-tui-root.js +2 -2
  167. package/schematics/ng-add/steps/wrap-with-tui-root.js.map +1 -0
  168. package/schematics/ng-update/interfaces/asset.js +1 -0
  169. package/schematics/ng-update/interfaces/asset.js.map +1 -0
  170. package/schematics/ng-update/interfaces/html-comment.js +1 -0
  171. package/schematics/ng-update/interfaces/html-comment.js.map +1 -0
  172. package/schematics/ng-update/interfaces/index.js +1 -0
  173. package/schematics/ng-update/interfaces/index.js.map +1 -0
  174. package/schematics/ng-update/interfaces/migration-warning.js +1 -0
  175. package/schematics/ng-update/interfaces/migration-warning.js.map +1 -0
  176. package/schematics/ng-update/interfaces/removable-input.js +1 -0
  177. package/schematics/ng-update/interfaces/removable-input.js.map +1 -0
  178. package/schematics/ng-update/interfaces/removed-module.js +1 -0
  179. package/schematics/ng-update/interfaces/removed-module.js.map +1 -0
  180. package/schematics/ng-update/interfaces/replacement-attribute-to-directive.js +1 -0
  181. package/schematics/ng-update/interfaces/replacement-attribute-to-directive.js.map +1 -0
  182. package/schematics/ng-update/interfaces/replacement-attribute-value.js +1 -0
  183. package/schematics/ng-update/interfaces/replacement-attribute-value.js.map +1 -0
  184. package/schematics/ng-update/interfaces/replacement-attribute.js +1 -0
  185. package/schematics/ng-update/interfaces/replacement-attribute.js.map +1 -0
  186. package/schematics/ng-update/interfaces/replacement-enum.js +1 -0
  187. package/schematics/ng-update/interfaces/replacement-enum.js.map +1 -0
  188. package/schematics/ng-update/interfaces/replacement-identifier.js +1 -0
  189. package/schematics/ng-update/interfaces/replacement-identifier.js.map +1 -0
  190. package/schematics/ng-update/interfaces/replacement-service.js +1 -0
  191. package/schematics/ng-update/interfaces/replacement-service.js.map +1 -0
  192. package/schematics/ng-update/interfaces/replacement-tag.js +1 -0
  193. package/schematics/ng-update/interfaces/replacement-tag.js.map +1 -0
  194. package/schematics/ng-update/interfaces/replacement-type.js +1 -0
  195. package/schematics/ng-update/interfaces/replacement-type.js.map +1 -0
  196. package/schematics/ng-update/interfaces/template-resource.js +1 -0
  197. package/schematics/ng-update/interfaces/template-resource.js.map +1 -0
  198. package/schematics/ng-update/steps/icons/replace-imports.js +2 -2
  199. package/schematics/ng-update/steps/icons/replace-imports.js.map +1 -0
  200. package/schematics/ng-update/steps/index.js +1 -0
  201. package/schematics/ng-update/steps/index.js.map +1 -0
  202. package/schematics/ng-update/steps/rename-types.js +2 -2
  203. package/schematics/ng-update/steps/rename-types.js.map +1 -0
  204. package/schematics/ng-update/steps/replace-deep-import.js +2 -2
  205. package/schematics/ng-update/steps/replace-deep-import.js.map +1 -0
  206. package/schematics/ng-update/steps/replace-enums.js +2 -2
  207. package/schematics/ng-update/steps/replace-enums.js.map +1 -0
  208. package/schematics/ng-update/steps/replace-identifier.js +3 -3
  209. package/schematics/ng-update/steps/replace-identifier.js.map +1 -0
  210. package/schematics/ng-update/steps/replace-package-name.js +2 -2
  211. package/schematics/ng-update/steps/replace-package-name.js.map +1 -0
  212. package/schematics/ng-update/steps/replace-services.js +2 -2
  213. package/schematics/ng-update/steps/replace-services.js.map +1 -0
  214. package/schematics/ng-update/steps/show-warnings.js +2 -2
  215. package/schematics/ng-update/steps/show-warnings.js.map +1 -0
  216. package/schematics/ng-update/utils/get-file-system.js +2 -2
  217. package/schematics/ng-update/utils/get-file-system.js.map +1 -0
  218. package/schematics/ng-update/{v4/steps → utils}/replace-functions.d.ts +1 -1
  219. package/schematics/ng-update/{v4/steps → utils}/replace-functions.js +3 -3
  220. package/schematics/ng-update/utils/replace-functions.js.map +1 -0
  221. package/schematics/ng-update/utils/replace-text.js +2 -2
  222. package/schematics/ng-update/utils/replace-text.js.map +1 -0
  223. package/schematics/ng-update/utils/templates/index.js +1 -0
  224. package/schematics/ng-update/utils/templates/index.js.map +1 -0
  225. package/schematics/ng-update/utils/templates/remove-inputs.js +2 -2
  226. package/schematics/ng-update/utils/templates/remove-inputs.js.map +1 -0
  227. package/schematics/ng-update/utils/templates/replace-attr-values.js +2 -2
  228. package/schematics/ng-update/utils/templates/replace-attr-values.js.map +1 -0
  229. package/schematics/ng-update/utils/templates/replace-attrs-by-directives.js +2 -2
  230. package/schematics/ng-update/utils/templates/replace-attrs-by-directives.js.map +1 -0
  231. package/schematics/ng-update/utils/templates/replace-attrs.js +2 -2
  232. package/schematics/ng-update/utils/templates/replace-attrs.js.map +1 -0
  233. package/schematics/ng-update/utils/templates/replace-tag.js +2 -2
  234. package/schematics/ng-update/utils/templates/replace-tag.js.map +1 -0
  235. package/schematics/ng-update/utils/templates/replace-tags.js +2 -2
  236. package/schematics/ng-update/utils/templates/replace-tags.js.map +1 -0
  237. package/schematics/ng-update/utils/templates/template-comments.js +2 -2
  238. package/schematics/ng-update/utils/templates/template-comments.js.map +1 -0
  239. package/schematics/ng-update/v4/index.js +3 -3
  240. package/schematics/ng-update/v4/index.js.map +1 -0
  241. package/schematics/ng-update/v4/migrate-addon-doc/index.js +2 -2
  242. package/schematics/ng-update/v4/migrate-addon-doc/index.js.map +1 -0
  243. package/schematics/ng-update/v4/migrate-addon-doc/replace-symbols.js +1 -0
  244. package/schematics/ng-update/v4/migrate-addon-doc/replace-symbols.js.map +1 -0
  245. package/schematics/ng-update/v4/migrate-css-vars/index.js +2 -2
  246. package/schematics/ng-update/v4/migrate-css-vars/index.js.map +1 -0
  247. package/schematics/ng-update/v4/migrate-css-vars/palette.js +1 -0
  248. package/schematics/ng-update/v4/migrate-css-vars/palette.js.map +1 -0
  249. package/schematics/ng-update/v4/migrate-css-vars/rename-css-vars.d.ts +0 -1
  250. package/schematics/ng-update/v4/migrate-css-vars/rename-css-vars.js +2 -2
  251. package/schematics/ng-update/v4/migrate-css-vars/rename-css-vars.js.map +1 -0
  252. package/schematics/ng-update/v4/migrate-icons/index.js +2 -2
  253. package/schematics/ng-update/v4/migrate-icons/index.js.map +1 -0
  254. package/schematics/ng-update/v4/migrate-icons/rename-icons.d.ts +0 -1
  255. package/schematics/ng-update/v4/migrate-icons/rename-icons.js +2 -2
  256. package/schematics/ng-update/v4/migrate-icons/rename-icons.js.map +1 -0
  257. package/schematics/ng-update/v4/migrate-icons/rename-proprietary-icons.d.ts +0 -1
  258. package/schematics/ng-update/v4/migrate-icons/rename-proprietary-icons.js +2 -2
  259. package/schematics/ng-update/v4/migrate-icons/rename-proprietary-icons.js.map +1 -0
  260. package/schematics/ng-update/v4/steps/constants/attr-to-directive-replace.js +1 -0
  261. package/schematics/ng-update/v4/steps/constants/attr-to-directive-replace.js.map +1 -0
  262. package/schematics/ng-update/v4/steps/constants/attr-with-values-to-replace.js +1 -0
  263. package/schematics/ng-update/v4/steps/constants/attr-with-values-to-replace.js.map +1 -0
  264. package/schematics/ng-update/v4/steps/constants/attrs-to-replace.js +1 -0
  265. package/schematics/ng-update/v4/steps/constants/attrs-to-replace.js.map +1 -0
  266. package/schematics/ng-update/v4/steps/constants/enums.js +1 -0
  267. package/schematics/ng-update/v4/steps/constants/enums.js.map +1 -0
  268. package/schematics/ng-update/v4/steps/constants/functions.js +1 -0
  269. package/schematics/ng-update/v4/steps/constants/functions.js.map +1 -0
  270. package/schematics/ng-update/v4/steps/constants/html-comments.js +1 -0
  271. package/schematics/ng-update/v4/steps/constants/html-comments.js.map +1 -0
  272. package/schematics/ng-update/v4/steps/constants/identifiers-to-replace.js +1 -0
  273. package/schematics/ng-update/v4/steps/constants/identifiers-to-replace.js.map +1 -0
  274. package/schematics/ng-update/v4/steps/constants/index.js +1 -0
  275. package/schematics/ng-update/v4/steps/constants/index.js.map +1 -0
  276. package/schematics/ng-update/v4/steps/constants/inputs-to-remove.js +1 -0
  277. package/schematics/ng-update/v4/steps/constants/inputs-to-remove.js.map +1 -0
  278. package/schematics/ng-update/v4/steps/constants/migration-warnings.js +2 -1
  279. package/schematics/ng-update/v4/steps/constants/migration-warnings.js.map +1 -0
  280. package/schematics/ng-update/v4/steps/constants/modules-to-remove.js +1 -0
  281. package/schematics/ng-update/v4/steps/constants/modules-to-remove.js.map +1 -0
  282. package/schematics/ng-update/v4/steps/constants/modules-to-replace.js +1 -0
  283. package/schematics/ng-update/v4/steps/constants/modules-to-replace.js.map +1 -0
  284. package/schematics/ng-update/v4/steps/constants/services.js +1 -0
  285. package/schematics/ng-update/v4/steps/constants/services.js.map +1 -0
  286. package/schematics/ng-update/v4/steps/constants/tags-to-replace.js +1 -0
  287. package/schematics/ng-update/v4/steps/constants/tags-to-replace.js.map +1 -0
  288. package/schematics/ng-update/v4/steps/constants/types.js +1 -0
  289. package/schematics/ng-update/v4/steps/constants/types.js.map +1 -0
  290. package/schematics/ng-update/v4/steps/drop-universal-mock.js +2 -2
  291. package/schematics/ng-update/v4/steps/drop-universal-mock.js.map +1 -0
  292. package/schematics/ng-update/v4/steps/index.js +1 -0
  293. package/schematics/ng-update/v4/steps/index.js.map +1 -0
  294. package/schematics/ng-update/v4/steps/migrate-alert-service.js +2 -2
  295. package/schematics/ng-update/v4/steps/migrate-alert-service.js.map +1 -0
  296. package/schematics/ng-update/v4/steps/migrate-all-country-iso-codes.js +2 -2
  297. package/schematics/ng-update/v4/steps/migrate-all-country-iso-codes.js.map +1 -0
  298. package/schematics/ng-update/v4/steps/migrate-destroy-service.js +2 -2
  299. package/schematics/ng-update/v4/steps/migrate-destroy-service.js.map +1 -0
  300. package/schematics/ng-update/v4/steps/migrate-editor.d.ts +0 -1
  301. package/schematics/ng-update/v4/steps/migrate-editor.js +3 -2
  302. package/schematics/ng-update/v4/steps/migrate-editor.js.map +1 -0
  303. package/schematics/ng-update/v4/steps/migrate-legacy-mask.js +2 -2
  304. package/schematics/ng-update/v4/steps/migrate-legacy-mask.js.map +1 -0
  305. package/schematics/ng-update/v4/steps/migrate-month-context.js +2 -2
  306. package/schematics/ng-update/v4/steps/migrate-month-context.js.map +1 -0
  307. package/schematics/ng-update/v4/steps/migrate-number-format-settings.js +2 -2
  308. package/schematics/ng-update/v4/steps/migrate-number-format-settings.js.map +1 -0
  309. package/schematics/ng-update/v4/steps/migrate-option-providers.js +2 -2
  310. package/schematics/ng-update/v4/steps/migrate-option-providers.js.map +1 -0
  311. package/schematics/ng-update/v4/steps/migrate-proprietary.d.ts +0 -1
  312. package/schematics/ng-update/v4/steps/migrate-proprietary.js +3 -3
  313. package/schematics/ng-update/v4/steps/migrate-proprietary.js.map +1 -0
  314. package/schematics/ng-update/v4/steps/migrate-providers-from.js +2 -2
  315. package/schematics/ng-update/v4/steps/migrate-providers-from.js.map +1 -0
  316. package/schematics/ng-update/v4/steps/migrate-root.js +2 -2
  317. package/schematics/ng-update/v4/steps/migrate-root.js.map +1 -0
  318. package/schematics/ng-update/v4/steps/migrate-templates.js +3 -3
  319. package/schematics/ng-update/v4/steps/migrate-templates.js.map +1 -0
  320. package/schematics/ng-update/v4/steps/remove-duplicates.js +2 -2
  321. package/schematics/ng-update/v4/steps/remove-duplicates.js.map +1 -0
  322. package/schematics/ng-update/v4/steps/restore-tui-mapper.js +3 -3
  323. package/schematics/ng-update/v4/steps/restore-tui-mapper.js.map +1 -0
  324. package/schematics/ng-update/v4/steps/restore-tui-matcher.js +3 -3
  325. package/schematics/ng-update/v4/steps/restore-tui-matcher.js.map +1 -0
  326. package/schematics/ng-update/v4/steps/styles/index.d.ts +0 -1
  327. package/schematics/ng-update/v4/steps/styles/index.js +3 -2
  328. package/schematics/ng-update/v4/steps/styles/index.js.map +1 -0
  329. package/schematics/ng-update/v4/steps/styles/migrate-legacy-mixins.js +2 -2
  330. package/schematics/ng-update/v4/steps/styles/migrate-legacy-mixins.js.map +1 -0
  331. package/schematics/ng-update/v4/steps/styles/migrate-less-scss-constants.js +2 -2
  332. package/schematics/ng-update/v4/steps/styles/migrate-less-scss-constants.js.map +1 -0
  333. package/schematics/ng-update/v4/steps/styles/migrate-mixins.js +2 -2
  334. package/schematics/ng-update/v4/steps/styles/migrate-mixins.js.map +1 -0
  335. package/schematics/ng-update/v4/steps/styles/migrate-shadow-mixins.js +2 -2
  336. package/schematics/ng-update/v4/steps/styles/migrate-shadow-mixins.js.map +1 -0
  337. package/schematics/ng-update/v4/steps/styles/migrate-space-mixins.js +2 -2
  338. package/schematics/ng-update/v4/steps/styles/migrate-space-mixins.js.map +1 -0
  339. package/schematics/ng-update/v4/steps/styles/migrate-text-mixins.js +2 -2
  340. package/schematics/ng-update/v4/steps/styles/migrate-text-mixins.js.map +1 -0
  341. package/schematics/ng-update/v4/steps/templates/dropdown-ref-comment.js +2 -2
  342. package/schematics/ng-update/v4/steps/templates/dropdown-ref-comment.js.map +1 -0
  343. package/schematics/ng-update/v4/steps/templates/index.js +1 -0
  344. package/schematics/ng-update/v4/steps/templates/index.js.map +1 -0
  345. package/schematics/ng-update/v4/steps/templates/migrate-active-zone.js +2 -2
  346. package/schematics/ng-update/v4/steps/templates/migrate-active-zone.js.map +1 -0
  347. package/schematics/ng-update/v4/steps/templates/migrate-avatar.js +2 -2
  348. package/schematics/ng-update/v4/steps/templates/migrate-avatar.js.map +1 -0
  349. package/schematics/ng-update/v4/steps/templates/migrate-axes.js +2 -2
  350. package/schematics/ng-update/v4/steps/templates/migrate-axes.js.map +1 -0
  351. package/schematics/ng-update/v4/steps/templates/migrate-badge.js +2 -2
  352. package/schematics/ng-update/v4/steps/templates/migrate-badge.js.map +1 -0
  353. package/schematics/ng-update/v4/steps/templates/migrate-badged-content.js +2 -2
  354. package/schematics/ng-update/v4/steps/templates/migrate-badged-content.js.map +1 -0
  355. package/schematics/ng-update/v4/steps/templates/migrate-blocked.js +2 -2
  356. package/schematics/ng-update/v4/steps/templates/migrate-blocked.js.map +1 -0
  357. package/schematics/ng-update/v4/steps/templates/migrate-button-appearance.js +2 -2
  358. package/schematics/ng-update/v4/steps/templates/migrate-button-appearance.js.map +1 -0
  359. package/schematics/ng-update/v4/steps/templates/migrate-expandable.js +2 -2
  360. package/schematics/ng-update/v4/steps/templates/migrate-expandable.js.map +1 -0
  361. package/schematics/ng-update/v4/steps/templates/migrate-filter-pipe.js +2 -2
  362. package/schematics/ng-update/v4/steps/templates/migrate-filter-pipe.js.map +1 -0
  363. package/schematics/ng-update/v4/steps/templates/migrate-focusable.js +2 -2
  364. package/schematics/ng-update/v4/steps/templates/migrate-focusable.js.map +1 -0
  365. package/schematics/ng-update/v4/steps/templates/migrate-label.js +2 -2
  366. package/schematics/ng-update/v4/steps/templates/migrate-label.js.map +1 -0
  367. package/schematics/ng-update/v4/steps/templates/migrate-labeled.js +2 -2
  368. package/schematics/ng-update/v4/steps/templates/migrate-labeled.js.map +1 -0
  369. package/schematics/ng-update/v4/steps/templates/migrate-mobile-tabs.js +2 -2
  370. package/schematics/ng-update/v4/steps/templates/migrate-mobile-tabs.js.map +1 -0
  371. package/schematics/ng-update/v4/steps/templates/migrate-money.js +2 -2
  372. package/schematics/ng-update/v4/steps/templates/migrate-money.js.map +1 -0
  373. package/schematics/ng-update/v4/steps/templates/migrate-notification.js +2 -2
  374. package/schematics/ng-update/v4/steps/templates/migrate-notification.js.map +1 -0
  375. package/schematics/ng-update/v4/steps/templates/migrate-number-precision.js +2 -2
  376. package/schematics/ng-update/v4/steps/templates/migrate-number-precision.js.map +1 -0
  377. package/schematics/ng-update/v4/steps/templates/migrate-overscroll.js +2 -2
  378. package/schematics/ng-update/v4/steps/templates/migrate-overscroll.js.map +1 -0
  379. package/schematics/ng-update/v4/steps/templates/migrate-prevent-default.js +2 -2
  380. package/schematics/ng-update/v4/steps/templates/migrate-prevent-default.js.map +1 -0
  381. package/schematics/ng-update/v4/steps/templates/migrate-progress-segmented.js +2 -2
  382. package/schematics/ng-update/v4/steps/templates/migrate-progress-segmented.js.map +1 -0
  383. package/schematics/ng-update/v4/steps/templates/migrate-thumbnail-card.js +2 -2
  384. package/schematics/ng-update/v4/steps/templates/migrate-thumbnail-card.js.map +1 -0
  385. package/schematics/ng-update/v4/steps/templates/toggles/common.js +5 -5
  386. package/schematics/ng-update/v4/steps/templates/toggles/common.js.map +1 -0
  387. package/schematics/ng-update/v4/steps/templates/toggles/index.js +1 -0
  388. package/schematics/ng-update/v4/steps/templates/toggles/index.js.map +1 -0
  389. package/schematics/ng-update/v4/steps/templates/toggles/migrate-checkbox.js +2 -2
  390. package/schematics/ng-update/v4/steps/templates/toggles/migrate-checkbox.js.map +1 -0
  391. package/schematics/ng-update/v4/steps/templates/toggles/migrate-radio.js +2 -2
  392. package/schematics/ng-update/v4/steps/templates/toggles/migrate-radio.js.map +1 -0
  393. package/schematics/ng-update/v4/steps/templates/toggles/migrate-toggle.js +2 -2
  394. package/schematics/ng-update/v4/steps/templates/toggles/migrate-toggle.js.map +1 -0
  395. package/schematics/ng-update/v4/steps/update-packages.d.ts +0 -1
  396. package/schematics/ng-update/v4/steps/update-packages.js +3 -2
  397. package/schematics/ng-update/v4/steps/update-packages.js.map +1 -0
  398. package/schematics/ng-update/v4/steps/utils/clean-object.js +2 -2
  399. package/schematics/ng-update/v4/steps/utils/clean-object.js.map +1 -0
  400. package/schematics/ng-update/v4/steps/utils/normalize-attr-value.js +2 -2
  401. package/schematics/ng-update/v4/steps/utils/normalize-attr-value.js.map +1 -0
  402. package/schematics/ng-update/v4/steps/utils/remove-attrs.js +2 -2
  403. package/schematics/ng-update/v4/steps/utils/remove-attrs.js.map +1 -0
  404. package/schematics/ng-update/v4/steps/utils/replace-modules-with-providers.js +1 -0
  405. package/schematics/ng-update/v4/steps/utils/replace-modules-with-providers.js.map +1 -0
  406. package/schematics/ng-update/v4/steps/utils/replace-substrings.js +2 -2
  407. package/schematics/ng-update/v4/steps/utils/replace-substrings.js.map +1 -0
  408. package/schematics/ng-update/v4/tests/migrate-destroy-service/utils.js +2 -2
  409. package/schematics/ng-update/v4/tests/migrate-destroy-service/utils.js.map +1 -0
  410. package/schematics/ng-update/v5/index.js +11 -2
  411. package/schematics/ng-update/v5/index.js.map +1 -0
  412. package/schematics/ng-update/v5/steps/constants/functions.d.ts +2 -0
  413. package/schematics/ng-update/v5/steps/constants/functions.js +72 -0
  414. package/schematics/ng-update/v5/steps/constants/functions.js.map +1 -0
  415. package/schematics/ng-update/v5/steps/constants/html-comments.d.ts +2 -0
  416. package/schematics/ng-update/v5/steps/constants/html-comments.js +11 -0
  417. package/schematics/ng-update/v5/steps/constants/html-comments.js.map +1 -0
  418. package/schematics/ng-update/v5/steps/migrate-templates.d.ts +17 -0
  419. package/schematics/ng-update/v5/steps/migrate-templates.js +40 -0
  420. package/schematics/ng-update/v5/steps/migrate-templates.js.map +1 -0
  421. package/schematics/ng-update/v5/steps/migrate-tokens/migrate-tokens.js +2 -2
  422. package/schematics/ng-update/v5/steps/migrate-tokens/migrate-tokens.js.map +1 -0
  423. package/schematics/ng-update/v5/steps/migrate-tokens/update-tsconfig.js +2 -2
  424. package/schematics/ng-update/v5/steps/migrate-tokens/update-tsconfig.js.map +1 -0
  425. package/schematics/ng-update/v5/tests/migrate-tokens/utils.js +2 -2
  426. package/schematics/ng-update/v5/tests/migrate-tokens/utils.js.map +1 -0
  427. package/schematics/utils/add-import-to-closest-module.js +3 -3
  428. package/schematics/utils/add-import-to-closest-module.js.map +1 -0
  429. package/schematics/utils/add-unique-import.js +2 -2
  430. package/schematics/utils/add-unique-import.js.map +1 -0
  431. package/schematics/utils/angular-json-manipulations.js +3 -5
  432. package/schematics/utils/angular-json-manipulations.js.map +1 -0
  433. package/schematics/utils/create-angular-json.js +2 -2
  434. package/schematics/utils/create-angular-json.js.map +1 -0
  435. package/schematics/utils/get-component-from-identifier.js +2 -2
  436. package/schematics/utils/get-component-from-identifier.js.map +1 -0
  437. package/schematics/utils/get-execution-time.js +2 -2
  438. package/schematics/utils/get-execution-time.js.map +1 -0
  439. package/schematics/utils/get-named-import-references.js +2 -2
  440. package/schematics/utils/get-named-import-references.js.map +1 -0
  441. package/schematics/utils/get-project-target-options.js +2 -2
  442. package/schematics/utils/get-project-target-options.js.map +1 -0
  443. package/schematics/utils/get-projects.js +2 -2
  444. package/schematics/utils/get-projects.js.map +1 -0
  445. package/schematics/utils/get-standalone-bootstrap-function.d.ts +1 -1
  446. package/schematics/utils/get-standalone-bootstrap-function.js +3 -5
  447. package/schematics/utils/get-standalone-bootstrap-function.js.map +1 -0
  448. package/schematics/utils/import-manipulations.js +3 -3
  449. package/schematics/utils/import-manipulations.js.map +1 -0
  450. package/schematics/utils/insert-todo.js +3 -2
  451. package/schematics/utils/insert-todo.js.map +1 -0
  452. package/schematics/utils/is-ci.js +2 -2
  453. package/schematics/utils/is-ci.js.map +1 -0
  454. package/schematics/utils/make-angular-json-with-assets.js +2 -2
  455. package/schematics/utils/make-angular-json-with-assets.js.map +1 -0
  456. package/schematics/utils/progress.js +2 -2
  457. package/schematics/utils/progress.js.map +1 -0
  458. package/schematics/utils/project-root.js +1 -0
  459. package/schematics/utils/project-root.js.map +1 -0
  460. package/schematics/utils/push-to-array-property.js +2 -2
  461. package/schematics/utils/push-to-array-property.js.map +1 -0
  462. package/schematics/utils/remove-module.js +3 -3
  463. package/schematics/utils/remove-module.js.map +1 -0
  464. package/schematics/utils/templates/elements.js +16 -24
  465. package/schematics/utils/templates/elements.js.map +1 -0
  466. package/schematics/utils/templates/get-component-templates.js +2 -2
  467. package/schematics/utils/templates/get-component-templates.js.map +1 -0
  468. package/schematics/utils/templates/inputs.js +3 -3
  469. package/schematics/utils/templates/inputs.js.map +1 -0
  470. package/schematics/utils/templates/ng-component-input-manipulations.js +7 -9
  471. package/schematics/utils/templates/ng-component-input-manipulations.js.map +1 -0
  472. package/schematics/utils/templates/template-resource.js +4 -4
  473. package/schematics/utils/templates/template-resource.js.map +1 -0
  474. package/services/scroll.service.d.ts +3 -0
  475. package/tokens/environment.d.ts +5 -0
  476. package/utils/browser/index.d.ts +0 -2
  477. package/utils/di/create-options.d.ts +2 -2
  478. package/utils/dom/get-element-obscurers.d.ts +1 -1
  479. package/utils/focus/blur-native-focused.d.ts +1 -1
  480. package/utils/focus/get-native-focused.d.ts +1 -1
  481. package/utils/focus/is-native-focused-in.d.ts +1 -1
  482. package/utils/focus/is-native-focused.d.ts +1 -1
  483. package/utils/focus/is-native-keyboard-focusable.d.ts +1 -1
  484. package/utils/focus/is-native-mouse-focusable.d.ts +1 -1
  485. package/utils/miscellaneous/index.d.ts +1 -1
  486. package/utils/miscellaneous/is-string.js +2 -2
  487. package/utils/miscellaneous/is-string.js.map +1 -0
  488. package/utils/miscellaneous/provide-options.d.ts +2 -2
  489. package/utils/miscellaneous/set-signal.d.ts +2 -0
  490. package/classes/portals.d.ts +0 -33
  491. package/constants/allow-signal-writes.d.ts +0 -2
  492. package/directives/for/for.directive.d.ts +0 -12
  493. package/directives/for/index.d.ts +0 -1
  494. package/esm2022/classes/control.mjs +0 -96
  495. package/esm2022/classes/index.mjs +0 -5
  496. package/esm2022/classes/portals.mjs +0 -77
  497. package/esm2022/classes/taiga-ui-cdk-classes.mjs +0 -5
  498. package/esm2022/classes/validation-error.mjs +0 -7
  499. package/esm2022/classes/value-transformer.mjs +0 -25
  500. package/esm2022/constants/allow-signal-writes.mjs +0 -3
  501. package/esm2022/constants/empty.mjs +0 -25
  502. package/esm2022/constants/handlers.mjs +0 -11
  503. package/esm2022/constants/index.mjs +0 -10
  504. package/esm2022/constants/matchers.mjs +0 -26
  505. package/esm2022/constants/regexp.mjs +0 -4
  506. package/esm2022/constants/svg-node-filter.mjs +0 -8
  507. package/esm2022/constants/taiga-ui-cdk-constants.mjs +0 -5
  508. package/esm2022/constants/unicode-chars.mjs +0 -64
  509. package/esm2022/constants/used-icons.mjs +0 -76
  510. package/esm2022/constants/version.mjs +0 -2
  511. package/esm2022/date-time/date-clamp.mjs +0 -10
  512. package/esm2022/date-time/date-fillers.mjs +0 -15
  513. package/esm2022/date-time/date-time.mjs +0 -20
  514. package/esm2022/date-time/day-of-week.mjs +0 -10
  515. package/esm2022/date-time/day-range.mjs +0 -84
  516. package/esm2022/date-time/day.mjs +0 -294
  517. package/esm2022/date-time/days.const.mjs +0 -6
  518. package/esm2022/date-time/index.mjs +0 -13
  519. package/esm2022/date-time/month-number.mjs +0 -15
  520. package/esm2022/date-time/month-range.mjs +0 -27
  521. package/esm2022/date-time/month.mjs +0 -152
  522. package/esm2022/date-time/taiga-ui-cdk-date-time.mjs +0 -5
  523. package/esm2022/date-time/time.mjs +0 -161
  524. package/esm2022/date-time/types.mjs +0 -2
  525. package/esm2022/date-time/year.mjs +0 -111
  526. package/esm2022/directives/active-zone/active-zone.directive.mjs +0 -74
  527. package/esm2022/directives/active-zone/index.mjs +0 -2
  528. package/esm2022/directives/active-zone/taiga-ui-cdk-directives-active-zone.mjs +0 -5
  529. package/esm2022/directives/animated/animated-parent.directive.mjs +0 -39
  530. package/esm2022/directives/animated/animated.directive.mjs +0 -81
  531. package/esm2022/directives/animated/index.mjs +0 -3
  532. package/esm2022/directives/animated/taiga-ui-cdk-directives-animated.mjs +0 -5
  533. package/esm2022/directives/auto-focus/autofocus.directive.mjs +0 -46
  534. package/esm2022/directives/auto-focus/autofocus.options.mjs +0 -31
  535. package/esm2022/directives/auto-focus/handlers/abstract.handler.mjs +0 -17
  536. package/esm2022/directives/auto-focus/handlers/default.handler.mjs +0 -21
  537. package/esm2022/directives/auto-focus/handlers/ios.handler.mjs +0 -125
  538. package/esm2022/directives/auto-focus/handlers/sync.handler.mjs +0 -7
  539. package/esm2022/directives/auto-focus/index.mjs +0 -7
  540. package/esm2022/directives/auto-focus/taiga-ui-cdk-directives-auto-focus.mjs +0 -5
  541. package/esm2022/directives/click-outside/click-outside.directive.mjs +0 -33
  542. package/esm2022/directives/click-outside/index.mjs +0 -2
  543. package/esm2022/directives/click-outside/taiga-ui-cdk-directives-click-outside.mjs +0 -5
  544. package/esm2022/directives/control/control.directive.mjs +0 -23
  545. package/esm2022/directives/control/index.mjs +0 -2
  546. package/esm2022/directives/control/taiga-ui-cdk-directives-control.mjs +0 -5
  547. package/esm2022/directives/copy-processor/copy-processor.directive.mjs +0 -33
  548. package/esm2022/directives/copy-processor/index.mjs +0 -2
  549. package/esm2022/directives/copy-processor/taiga-ui-cdk-directives-copy-processor.mjs +0 -5
  550. package/esm2022/directives/droppable/droppable.directive.mjs +0 -31
  551. package/esm2022/directives/droppable/index.mjs +0 -2
  552. package/esm2022/directives/droppable/taiga-ui-cdk-directives-droppable.mjs +0 -5
  553. package/esm2022/directives/element/element.directive.mjs +0 -35
  554. package/esm2022/directives/element/index.mjs +0 -2
  555. package/esm2022/directives/element/taiga-ui-cdk-directives-element.mjs +0 -5
  556. package/esm2022/directives/focus-trap/focus-trap.directive.mjs +0 -67
  557. package/esm2022/directives/focus-trap/index.mjs +0 -2
  558. package/esm2022/directives/focus-trap/taiga-ui-cdk-directives-focus-trap.mjs +0 -5
  559. package/esm2022/directives/font-size/font-size.directive.mjs +0 -27
  560. package/esm2022/directives/font-size/index.mjs +0 -2
  561. package/esm2022/directives/font-size/taiga-ui-cdk-directives-font-size.mjs +0 -5
  562. package/esm2022/directives/for/for.directive.mjs +0 -34
  563. package/esm2022/directives/for/index.mjs +0 -2
  564. package/esm2022/directives/for/taiga-ui-cdk-directives-for.mjs +0 -5
  565. package/esm2022/directives/high-dpi/high-dpi.directive.mjs +0 -23
  566. package/esm2022/directives/high-dpi/index.mjs +0 -2
  567. package/esm2022/directives/high-dpi/taiga-ui-cdk-directives-high-dpi.mjs +0 -5
  568. package/esm2022/directives/hovered/hovered.directive.mjs +0 -22
  569. package/esm2022/directives/hovered/hovered.service.mjs +0 -35
  570. package/esm2022/directives/hovered/index.mjs +0 -3
  571. package/esm2022/directives/hovered/taiga-ui-cdk-directives-hovered.mjs +0 -5
  572. package/esm2022/directives/index.mjs +0 -30
  573. package/esm2022/directives/item/index.mjs +0 -2
  574. package/esm2022/directives/item/item.directive.mjs +0 -18
  575. package/esm2022/directives/item/taiga-ui-cdk-directives-item.mjs +0 -5
  576. package/esm2022/directives/let/index.mjs +0 -3
  577. package/esm2022/directives/let/let-context.mjs +0 -15
  578. package/esm2022/directives/let/let.directive.mjs +0 -34
  579. package/esm2022/directives/let/taiga-ui-cdk-directives-let.mjs +0 -5
  580. package/esm2022/directives/media/index.mjs +0 -2
  581. package/esm2022/directives/media/media.directive.mjs +0 -89
  582. package/esm2022/directives/media/taiga-ui-cdk-directives-media.mjs +0 -5
  583. package/esm2022/directives/native-validator/index.mjs +0 -2
  584. package/esm2022/directives/native-validator/native-validator.directive.mjs +0 -43
  585. package/esm2022/directives/native-validator/taiga-ui-cdk-directives-native-validator.mjs +0 -5
  586. package/esm2022/directives/obscured/index.mjs +0 -3
  587. package/esm2022/directives/obscured/obscured.directive.mjs +0 -36
  588. package/esm2022/directives/obscured/obscured.service.mjs +0 -24
  589. package/esm2022/directives/obscured/taiga-ui-cdk-directives-obscured.mjs +0 -5
  590. package/esm2022/directives/pan/index.mjs +0 -3
  591. package/esm2022/directives/pan/pan.directive.mjs +0 -22
  592. package/esm2022/directives/pan/pan.service.mjs +0 -28
  593. package/esm2022/directives/pan/taiga-ui-cdk-directives-pan.mjs +0 -5
  594. package/esm2022/directives/platform/index.mjs +0 -2
  595. package/esm2022/directives/platform/platform.directive.mjs +0 -35
  596. package/esm2022/directives/platform/taiga-ui-cdk-directives-platform.mjs +0 -5
  597. package/esm2022/directives/popover/index.mjs +0 -2
  598. package/esm2022/directives/popover/popover.directive.mjs +0 -26
  599. package/esm2022/directives/popover/taiga-ui-cdk-directives-popover.mjs +0 -5
  600. package/esm2022/directives/repeat-times/index.mjs +0 -2
  601. package/esm2022/directives/repeat-times/repeat-times.directive.mjs +0 -55
  602. package/esm2022/directives/repeat-times/taiga-ui-cdk-directives-repeat-times.mjs +0 -5
  603. package/esm2022/directives/resizer/index.mjs +0 -3
  604. package/esm2022/directives/resizer/resizable.directive.mjs +0 -16
  605. package/esm2022/directives/resizer/resizer.directive.mjs +0 -83
  606. package/esm2022/directives/resizer/taiga-ui-cdk-directives-resizer.mjs +0 -5
  607. package/esm2022/directives/swipe/index.mjs +0 -4
  608. package/esm2022/directives/swipe/swipe.directive.mjs +0 -22
  609. package/esm2022/directives/swipe/swipe.options.mjs +0 -8
  610. package/esm2022/directives/swipe/swipe.service.mjs +0 -50
  611. package/esm2022/directives/swipe/swipe.types.mjs +0 -2
  612. package/esm2022/directives/swipe/taiga-ui-cdk-directives-swipe.mjs +0 -5
  613. package/esm2022/directives/taiga-ui-cdk-directives.mjs +0 -5
  614. package/esm2022/directives/transitioned/index.mjs +0 -2
  615. package/esm2022/directives/transitioned/taiga-ui-cdk-directives-transitioned.mjs +0 -5
  616. package/esm2022/directives/transitioned/transitioned.directive.mjs +0 -27
  617. package/esm2022/directives/validator/index.mjs +0 -2
  618. package/esm2022/directives/validator/taiga-ui-cdk-directives-validator.mjs +0 -5
  619. package/esm2022/directives/validator/validator.directive.mjs +0 -30
  620. package/esm2022/directives/value-changes/index.mjs +0 -2
  621. package/esm2022/directives/value-changes/taiga-ui-cdk-directives-value-changes.mjs +0 -5
  622. package/esm2022/directives/value-changes/value-changes.directive.mjs +0 -28
  623. package/esm2022/directives/visual-viewport/index.mjs +0 -2
  624. package/esm2022/directives/visual-viewport/taiga-ui-cdk-directives-visual-viewport.mjs +0 -5
  625. package/esm2022/directives/visual-viewport/visual-viewport.directive.mjs +0 -34
  626. package/esm2022/directives/zoom/index.mjs +0 -4
  627. package/esm2022/directives/zoom/taiga-ui-cdk-directives-zoom.mjs +0 -5
  628. package/esm2022/directives/zoom/zoom.directive.mjs +0 -24
  629. package/esm2022/directives/zoom/zoom.options.mjs +0 -10
  630. package/esm2022/directives/zoom/zoom.service.mjs +0 -46
  631. package/esm2022/directives/zoom/zoom.types.mjs +0 -2
  632. package/esm2022/index.mjs +0 -10
  633. package/esm2022/observables/close-watcher.mjs +0 -22
  634. package/esm2022/observables/control-value.mjs +0 -8
  635. package/esm2022/observables/drag-and-drop-from.mjs +0 -14
  636. package/esm2022/observables/events.mjs +0 -8
  637. package/esm2022/observables/if-map.mjs +0 -5
  638. package/esm2022/observables/index.mjs +0 -14
  639. package/esm2022/observables/must-be-present.mjs +0 -17
  640. package/esm2022/observables/query-list-observable.mjs +0 -9
  641. package/esm2022/observables/scroll-from.mjs +0 -10
  642. package/esm2022/observables/taiga-ui-cdk-observables.mjs +0 -5
  643. package/esm2022/observables/take-until-destroyed.mjs +0 -9
  644. package/esm2022/observables/typed-from-event.mjs +0 -9
  645. package/esm2022/observables/untracked-scheduler.mjs +0 -11
  646. package/esm2022/observables/watch.mjs +0 -6
  647. package/esm2022/observables/zone.mjs +0 -34
  648. package/esm2022/pipes/animation/animation.pipe.mjs +0 -27
  649. package/esm2022/pipes/animation/index.mjs +0 -2
  650. package/esm2022/pipes/animation/taiga-ui-cdk-pipes-animation.mjs +0 -5
  651. package/esm2022/pipes/filter/filter.pipe.mjs +0 -25
  652. package/esm2022/pipes/filter/index.mjs +0 -2
  653. package/esm2022/pipes/filter/taiga-ui-cdk-pipes-filter.mjs +0 -5
  654. package/esm2022/pipes/index.mjs +0 -10
  655. package/esm2022/pipes/is-present/index.mjs +0 -2
  656. package/esm2022/pipes/is-present/is-present.pipe.mjs +0 -19
  657. package/esm2022/pipes/is-present/taiga-ui-cdk-pipes-is-present.mjs +0 -5
  658. package/esm2022/pipes/keys/index.mjs +0 -2
  659. package/esm2022/pipes/keys/keys.pipe.mjs +0 -18
  660. package/esm2022/pipes/keys/taiga-ui-cdk-pipes-keys.mjs +0 -5
  661. package/esm2022/pipes/mapper/index.mjs +0 -2
  662. package/esm2022/pipes/mapper/mapper.pipe.mjs +0 -25
  663. package/esm2022/pipes/mapper/taiga-ui-cdk-pipes-mapper.mjs +0 -5
  664. package/esm2022/pipes/obfuscate/index.mjs +0 -3
  665. package/esm2022/pipes/obfuscate/obfuscate.options.mjs +0 -10
  666. package/esm2022/pipes/obfuscate/obfuscate.pipe.mjs +0 -44
  667. package/esm2022/pipes/obfuscate/taiga-ui-cdk-pipes-obfuscate.mjs +0 -5
  668. package/esm2022/pipes/repeat-times/index.mjs +0 -19
  669. package/esm2022/pipes/repeat-times/taiga-ui-cdk-pipes-repeat-times.mjs +0 -5
  670. package/esm2022/pipes/replace/index.mjs +0 -2
  671. package/esm2022/pipes/replace/replace.pipe.mjs +0 -20
  672. package/esm2022/pipes/replace/taiga-ui-cdk-pipes-replace.mjs +0 -5
  673. package/esm2022/pipes/taiga-ui-cdk-pipes.mjs +0 -5
  674. package/esm2022/pipes/to-array/index.mjs +0 -2
  675. package/esm2022/pipes/to-array/taiga-ui-cdk-pipes-to-array.mjs +0 -5
  676. package/esm2022/pipes/to-array/to-array.pipe.mjs +0 -18
  677. package/esm2022/services/id.service.mjs +0 -21
  678. package/esm2022/services/index.mjs +0 -5
  679. package/esm2022/services/popover.service.mjs +0 -45
  680. package/esm2022/services/scroll.service.mjs +0 -55
  681. package/esm2022/services/taiga-ui-cdk-services.mjs +0 -5
  682. package/esm2022/services/theme-color.service.mjs +0 -33
  683. package/esm2022/taiga-ui-cdk.mjs +0 -5
  684. package/esm2022/tokens/active-element.mjs +0 -56
  685. package/esm2022/tokens/base-href.mjs +0 -6
  686. package/esm2022/tokens/environment.mjs +0 -64
  687. package/esm2022/tokens/fallback-value.mjs +0 -11
  688. package/esm2022/tokens/index.mjs +0 -8
  689. package/esm2022/tokens/range.mjs +0 -9
  690. package/esm2022/tokens/removed-element.mjs +0 -20
  691. package/esm2022/tokens/taiga-ui-cdk-tokens.mjs +0 -5
  692. package/esm2022/tokens/window-size.mjs +0 -28
  693. package/esm2022/types/context.mjs +0 -2
  694. package/esm2022/types/handler.mjs +0 -2
  695. package/esm2022/types/index.mjs +0 -2
  696. package/esm2022/types/loose-union.mjs +0 -2
  697. package/esm2022/types/mapper.mjs +0 -2
  698. package/esm2022/types/matcher.mjs +0 -2
  699. package/esm2022/types/rounding.mjs +0 -2
  700. package/esm2022/types/safe-html.mjs +0 -2
  701. package/esm2022/types/taiga-ui-cdk-types.mjs +0 -5
  702. package/esm2022/types/values-of.mjs +0 -2
  703. package/esm2022/utils/browser/index.mjs +0 -6
  704. package/esm2022/utils/browser/is-apple.mjs +0 -14
  705. package/esm2022/utils/browser/is-edge.mjs +0 -4
  706. package/esm2022/utils/browser/is-firefox.mjs +0 -4
  707. package/esm2022/utils/browser/is-ios.mjs +0 -7
  708. package/esm2022/utils/browser/is-safari.mjs +0 -12
  709. package/esm2022/utils/browser/taiga-ui-cdk-utils-browser.mjs +0 -5
  710. package/esm2022/utils/color/get-gradient-data.mjs +0 -6
  711. package/esm2022/utils/color/hex-to-rgb.mjs +0 -12
  712. package/esm2022/utils/color/hex-to-rgba.mjs +0 -29
  713. package/esm2022/utils/color/hsv-to-rgb.mjs +0 -11
  714. package/esm2022/utils/color/index.mjs +0 -10
  715. package/esm2022/utils/color/parse-color.mjs +0 -27
  716. package/esm2022/utils/color/parse-gradient.mjs +0 -70
  717. package/esm2022/utils/color/rgb-to-hex.mjs +0 -4
  718. package/esm2022/utils/color/rgb-to-hsv.mjs +0 -8
  719. package/esm2022/utils/color/rgba-to-hex.mjs +0 -23
  720. package/esm2022/utils/color/taiga-ui-cdk-utils-color.mjs +0 -5
  721. package/esm2022/utils/di/create-options.mjs +0 -9
  722. package/esm2022/utils/di/index.mjs +0 -3
  723. package/esm2022/utils/di/taiga-ui-cdk-utils-di.mjs +0 -5
  724. package/esm2022/utils/dom/contains-or-after.mjs +0 -10
  725. package/esm2022/utils/dom/element-checks.mjs +0 -20
  726. package/esm2022/utils/dom/event-checks.mjs +0 -4
  727. package/esm2022/utils/dom/get-actual-target.mjs +0 -7
  728. package/esm2022/utils/dom/get-clipboard-data-text.mjs +0 -11
  729. package/esm2022/utils/dom/get-document-or-shadow-root.mjs +0 -6
  730. package/esm2022/utils/dom/get-element-obscurers.mjs +0 -44
  731. package/esm2022/utils/dom/get-element-offset.mjs +0 -20
  732. package/esm2022/utils/dom/get-element-point.mjs +0 -6
  733. package/esm2022/utils/dom/get-selected-text.mjs +0 -15
  734. package/esm2022/utils/dom/index.mjs +0 -20
  735. package/esm2022/utils/dom/inject-element.mjs +0 -5
  736. package/esm2022/utils/dom/is-current-target.mjs +0 -4
  737. package/esm2022/utils/dom/is-element-editable.mjs +0 -6
  738. package/esm2022/utils/dom/is-inside-iframe.mjs +0 -7
  739. package/esm2022/utils/dom/is-node-in.mjs +0 -14
  740. package/esm2022/utils/dom/point-to-client-rect.mjs +0 -17
  741. package/esm2022/utils/dom/retarget-boundary-crossing.mjs +0 -16
  742. package/esm2022/utils/dom/taiga-ui-cdk-utils-dom.mjs +0 -5
  743. package/esm2022/utils/dom/value-binding.mjs +0 -29
  744. package/esm2022/utils/dom/value.mjs +0 -78
  745. package/esm2022/utils/focus/blur-native-focused.mjs +0 -12
  746. package/esm2022/utils/focus/focused-in.mjs +0 -8
  747. package/esm2022/utils/focus/get-closest-focusable.mjs +0 -26
  748. package/esm2022/utils/focus/get-native-focused.mjs +0 -16
  749. package/esm2022/utils/focus/index.mjs +0 -10
  750. package/esm2022/utils/focus/is-native-focused-in.mjs +0 -12
  751. package/esm2022/utils/focus/is-native-focused.mjs +0 -15
  752. package/esm2022/utils/focus/is-native-keyboard-focusable.mjs +0 -33
  753. package/esm2022/utils/focus/is-native-mouse-focusable.mjs +0 -7
  754. package/esm2022/utils/focus/move-focus.mjs +0 -19
  755. package/esm2022/utils/focus/taiga-ui-cdk-utils-focus.mjs +0 -5
  756. package/esm2022/utils/index.mjs +0 -8
  757. package/esm2022/utils/math/clamp.mjs +0 -16
  758. package/esm2022/utils/math/in-range.mjs +0 -9
  759. package/esm2022/utils/math/index.mjs +0 -11
  760. package/esm2022/utils/math/normalize-to-int-number.mjs +0 -22
  761. package/esm2022/utils/math/quantize.mjs +0 -15
  762. package/esm2022/utils/math/round-with.mjs +0 -14
  763. package/esm2022/utils/math/round.mjs +0 -42
  764. package/esm2022/utils/math/sum.mjs +0 -7
  765. package/esm2022/utils/math/taiga-ui-cdk-utils-math.mjs +0 -5
  766. package/esm2022/utils/math/to-int.mjs +0 -4
  767. package/esm2022/utils/math/to-integer.mjs +0 -4
  768. package/esm2022/utils/math/to-radians.mjs +0 -7
  769. package/esm2022/utils/miscellaneous/array-remove.mjs +0 -4
  770. package/esm2022/utils/miscellaneous/array-shallow-equals.mjs +0 -4
  771. package/esm2022/utils/miscellaneous/array-toggle.mjs +0 -8
  772. package/esm2022/utils/miscellaneous/change-date-separator.mjs +0 -3
  773. package/esm2022/utils/miscellaneous/count-filled-controls.mjs +0 -13
  774. package/esm2022/utils/miscellaneous/create-token.mjs +0 -16
  775. package/esm2022/utils/miscellaneous/default-sort.mjs +0 -11
  776. package/esm2022/utils/miscellaneous/directive-binding.mjs +0 -26
  777. package/esm2022/utils/miscellaneous/directive-listener.mjs +0 -8
  778. package/esm2022/utils/miscellaneous/distance-between-touches.mjs +0 -4
  779. package/esm2022/utils/miscellaneous/ease-in-out-quad.mjs +0 -7
  780. package/esm2022/utils/miscellaneous/flat-length.mjs +0 -9
  781. package/esm2022/utils/miscellaneous/font-size-watcher.mjs +0 -30
  782. package/esm2022/utils/miscellaneous/get-original-array-from-query-list.mjs +0 -15
  783. package/esm2022/utils/miscellaneous/index.mjs +0 -31
  784. package/esm2022/utils/miscellaneous/is-control-empty.mjs +0 -4
  785. package/esm2022/utils/miscellaneous/is-falsy.mjs +0 -4
  786. package/esm2022/utils/miscellaneous/is-number.mjs +0 -4
  787. package/esm2022/utils/miscellaneous/is-object.mjs +0 -4
  788. package/esm2022/utils/miscellaneous/is-present.mjs +0 -4
  789. package/esm2022/utils/miscellaneous/is-string.mjs +0 -4
  790. package/esm2022/utils/miscellaneous/is-valid-url.mjs +0 -13
  791. package/esm2022/utils/miscellaneous/mark-control-as-touched-and-validate.mjs +0 -16
  792. package/esm2022/utils/miscellaneous/nullable-same.mjs +0 -18
  793. package/esm2022/utils/miscellaneous/obfuscate.mjs +0 -53
  794. package/esm2022/utils/miscellaneous/provide-options.mjs +0 -11
  795. package/esm2022/utils/miscellaneous/provide.mjs +0 -4
  796. package/esm2022/utils/miscellaneous/pure.mjs +0 -83
  797. package/esm2022/utils/miscellaneous/px.mjs +0 -9
  798. package/esm2022/utils/miscellaneous/taiga-ui-cdk-utils-miscellaneous.mjs +0 -5
  799. package/esm2022/utils/miscellaneous/uniq-by.mjs +0 -6
  800. package/esm2022/utils/miscellaneous/with-styles.mjs +0 -17
  801. package/esm2022/utils/taiga-ui-cdk-utils.mjs +0 -5
  802. package/fesm2022/taiga-ui-cdk-directives-for.mjs +0 -40
  803. package/fesm2022/taiga-ui-cdk-directives-for.mjs.map +0 -1
  804. package/utils/browser/is-apple.d.ts +0 -11
  805. package/utils/browser/is-ios.d.ts +0 -6
  806. package/utils/miscellaneous/directive-listener.d.ts +0 -9
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-directives-animated.mjs","sources":["../../../projects/cdk/directives/animated/animated.directive.ts","../../../projects/cdk/directives/animated/animated-parent.directive.ts","../../../projects/cdk/directives/animated/taiga-ui-cdk-directives-animated.ts"],"sourcesContent":["import {\n afterNextRender,\n ApplicationRef,\n Directive,\n inject,\n type OnDestroy,\n ViewContainerRef,\n} from '@angular/core';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\n\nexport const TUI_ENTER = 'tui-enter';\nexport const TUI_LEAVE = 'tui-leave';\n\n@Directive({\n standalone: true,\n selector: '[tuiAnimated]',\n host: {\n class: TUI_ENTER,\n '(animationend.self)': 'remove()',\n '(animationcancel.self)': 'remove()',\n },\n})\nexport class TuiAnimated implements OnDestroy {\n // @ts-ignore https://github.com/angular/angular/blob/main/packages/core/src/render3/interfaces/view.ts#L56\n private readonly renderer = inject(ViewContainerRef)._hostLView?.[11];\n private readonly el = tuiInjectElement();\n private readonly app = inject(ApplicationRef);\n\n constructor() {\n afterNextRender(() => this.remove());\n\n if (!this.renderer) {\n return;\n }\n\n // delegate is used in Angular Animations renderer\n const renderer = this.renderer.delegate || this.renderer;\n const {removeChild, data} = renderer;\n\n if (data[TUI_LEAVE]) {\n data[TUI_LEAVE].push(this.el);\n\n return;\n }\n\n data[TUI_LEAVE] = [this.el];\n\n afterNextRender(() => {\n renderer.removeChild = (parent: Node, el: Node, host?: boolean) => {\n const remove = (): void => removeChild.call(renderer, parent, el, host);\n const elements: Element[] = data[TUI_LEAVE];\n const element = elements.find((leave) => el.contains(leave));\n\n if (!element) {\n remove();\n\n return;\n }\n\n element.classList.remove(TUI_ENTER);\n\n const {length} = element.getAnimations?.() || [];\n\n element.classList.add(TUI_LEAVE);\n\n const animations = element.getAnimations?.() ?? [];\n const last = animations[animations.length - 1];\n const finish = (): void => {\n if (!parent || parent.contains(el)) {\n remove();\n this.app.tick();\n }\n };\n\n if (animations.length > length && last) {\n last.onfinish = finish;\n last.oncancel = finish;\n } else {\n remove();\n }\n };\n });\n }\n\n public ngOnDestroy(): void {\n const data = this.renderer?.data || {[TUI_LEAVE]: []};\n\n setTimeout(() => {\n data[TUI_LEAVE] = data[TUI_LEAVE].filter((e: Element) => e !== this.el);\n });\n }\n\n protected remove(): void {\n if (this.el.isConnected && !this.el.getAnimations?.().length) {\n this.el.classList.remove(TUI_ENTER);\n }\n }\n}\n","import {Directive, inject, Renderer2} from '@angular/core';\nimport {\n provideMutationObserverInit,\n WaMutationObserver,\n} from '@ng-web-apis/mutation-observer';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\n\nimport {TUI_ENTER, TUI_LEAVE, TuiAnimated} from './animated.directive';\n\n@Directive({\n standalone: true,\n selector: '[tuiAnimatedParent]',\n providers: [provideMutationObserverInit({childList: true})],\n hostDirectives: [\n TuiAnimated,\n {\n directive: WaMutationObserver,\n outputs: ['waMutationObserver'],\n },\n ],\n host: {\n '(waMutationObserver)': 'handle()',\n },\n})\nexport class TuiAnimatedParent {\n private readonly el = tuiInjectElement();\n private readonly renderer = inject(Renderer2);\n\n protected handle(): void {\n this.el.classList.remove(TUI_ENTER);\n this.renderer.data[TUI_LEAVE] = Array.from(this.el.children);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.TuiAnimated"],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-cdk-directives-animated.mjs","sources":["../../../projects/cdk/directives/animated/animated.directive.ts","../../../projects/cdk/directives/animated/animated-parent.directive.ts","../../../projects/cdk/directives/animated/taiga-ui-cdk-directives-animated.ts"],"sourcesContent":["import {isPlatformServer} from '@angular/common';\nimport {\n afterNextRender,\n ApplicationRef,\n Directive,\n inject,\n type OnDestroy,\n PLATFORM_ID,\n type Renderer2,\n ViewContainerRef,\n} from '@angular/core';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\n\nexport const TUI_ENTER = 'tui-enter';\nexport const TUI_LEAVE = 'tui-leave';\n\n@Directive({\n standalone: true,\n selector: '[tuiAnimated]',\n host: {\n class: TUI_ENTER,\n '(animationend.self)': 'remove()',\n '(animationcancel.self)': 'remove()',\n },\n})\nexport class TuiAnimated implements OnDestroy {\n // @ts-ignore https://github.com/angular/angular/blob/main/packages/core/src/render3/interfaces/view.ts#L56\n private readonly renderer = inject(ViewContainerRef)._hostLView?.[11];\n private readonly el = tuiInjectElement();\n\n constructor() {\n afterNextRender(() => this.remove());\n\n if (!this.renderer || isPlatformServer(inject(PLATFORM_ID))) {\n return;\n }\n\n // delegate is used in Angular Animations renderer\n const renderer = this.renderer.delegate || this.renderer;\n\n if (renderer.data[TUI_LEAVE]) {\n renderer.data[TUI_LEAVE].push(this.el);\n } else {\n renderer.data[TUI_LEAVE] = [this.el];\n renderer.removeChild = wrap(renderer);\n }\n }\n\n public ngOnDestroy(): void {\n const data = this.renderer?.data || {[TUI_LEAVE]: []};\n\n setTimeout(() => {\n data[TUI_LEAVE] = data[TUI_LEAVE]?.filter((e: Element) => e !== this.el);\n });\n }\n\n protected remove(): void {\n if (this.el.isConnected && !this.el.getAnimations?.().length) {\n this.el.classList.remove(TUI_ENTER);\n }\n }\n}\n\nfunction wrap(renderer: Renderer2): Renderer2['removeChild'] {\n const {removeChild} = renderer;\n const app = inject(ApplicationRef);\n\n return (parent: Node, el: Node, host?: boolean): void => {\n const remove = (): void => removeChild.call(renderer, parent, el, host);\n const elements: Element[] = renderer.data[TUI_LEAVE];\n const element = elements.find((leave) => el.contains(leave));\n\n if (!element) {\n remove();\n\n return;\n }\n\n element.classList.remove(TUI_ENTER);\n\n const {length} = element.getAnimations?.() || [];\n\n element.classList.add(TUI_LEAVE);\n\n const animations = element.getAnimations?.() ?? [];\n const last = animations[animations.length - 1];\n const finish = (): void => {\n if (!parent || parent.contains(el)) {\n remove();\n app.tick();\n }\n };\n\n if (animations.length > length && last) {\n last.onfinish = finish;\n last.oncancel = finish;\n } else {\n remove();\n }\n };\n}\n","import {Directive, inject, Renderer2} from '@angular/core';\nimport {\n provideMutationObserverInit,\n WaMutationObserver,\n} from '@ng-web-apis/mutation-observer';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\n\nimport {TUI_ENTER, TUI_LEAVE, TuiAnimated} from './animated.directive';\n\n@Directive({\n standalone: true,\n selector: '[tuiAnimatedParent]',\n providers: [provideMutationObserverInit({childList: true})],\n hostDirectives: [\n TuiAnimated,\n {\n directive: WaMutationObserver,\n outputs: ['waMutationObserver'],\n },\n ],\n host: {\n '(waMutationObserver)': 'handle()',\n },\n})\nexport class TuiAnimatedParent {\n private readonly el = tuiInjectElement();\n private readonly renderer = inject(Renderer2);\n\n protected handle(): void {\n this.el.classList.remove(TUI_ENTER);\n this.renderer.data[TUI_LEAVE] = Array.from(this.el.children);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.TuiAnimated"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { coerceBooleanProperty } from '@angular/cdk/coercion';
2
2
  import * as i0 from '@angular/core';
3
- import { InjectionToken, ElementRef, Renderer2, NgZone, inject, DestroyRef, Directive, Input } from '@angular/core';
3
+ import { InjectionToken, ElementRef, Renderer2, NgZone, inject, DestroyRef, Input, Directive } from '@angular/core';
4
4
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
5
5
  import { race, timer, throttleTime, map, skipWhile, take } from 'rxjs';
6
6
  import { WA_ANIMATION_FRAME, WA_WINDOW } from '@ng-web-apis/common';
@@ -167,7 +167,7 @@ class TuiIosAutofocusHandler extends AbstractTuiAutofocusHandler {
167
167
  }
168
168
 
169
169
  const [TUI_AUTOFOCUS_OPTIONS, tuiAutoFocusOptionsProvider] = tuiCreateOptions({
170
- delay: NaN,
170
+ delay: NaN, // NaN = no delay/sync
171
171
  query: 'input, textarea, select, [contenteditable]',
172
172
  preventScroll: false,
173
173
  });
@@ -212,10 +212,10 @@ class TuiAutoFocus {
212
212
  .subscribe(() => this.handler.setFocus());
213
213
  }
214
214
  }
215
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAutoFocus, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
216
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "16.2.12", type: TuiAutoFocus, isStandalone: true, selector: "[tuiAutoFocus]", inputs: { autoFocus: ["tuiAutoFocus", "autoFocus", coerceBooleanProperty] }, providers: TUI_AUTOFOCUS_PROVIDERS, ngImport: i0 }); }
215
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAutoFocus, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
216
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.2.15", type: TuiAutoFocus, isStandalone: true, selector: "[tuiAutoFocus]", inputs: { autoFocus: ["tuiAutoFocus", "autoFocus", coerceBooleanProperty] }, providers: TUI_AUTOFOCUS_PROVIDERS, ngImport: i0 }); }
217
217
  }
218
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiAutoFocus, decorators: [{
218
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAutoFocus, decorators: [{
219
219
  type: Directive,
220
220
  args: [{
221
221
  standalone: true,
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-directives-auto-focus.mjs","sources":["../../../projects/cdk/directives/auto-focus/handlers/abstract.handler.ts","../../../projects/cdk/directives/auto-focus/handlers/default.handler.ts","../../../projects/cdk/directives/auto-focus/handlers/ios.handler.ts","../../../projects/cdk/directives/auto-focus/autofocus.options.ts","../../../projects/cdk/directives/auto-focus/autofocus.directive.ts","../../../projects/cdk/directives/auto-focus/handlers/sync.handler.ts","../../../projects/cdk/directives/auto-focus/taiga-ui-cdk-directives-auto-focus.ts"],"sourcesContent":["import {type ElementRef} from '@angular/core';\n\nimport {type TuiAutofocusHandler, type TuiAutofocusOptions} from '../autofocus.options';\n\nexport abstract class AbstractTuiAutofocusHandler implements TuiAutofocusHandler {\n constructor(\n protected readonly el: ElementRef<HTMLElement>,\n protected readonly options: TuiAutofocusOptions,\n ) {}\n\n public abstract setFocus(): void;\n\n protected get element(): HTMLElement {\n // TODO: Remove when legacy controls are dropped\n const el = this.el.nativeElement.tagName.includes('-')\n ? this.el.nativeElement.querySelector<HTMLElement>(this.options.query)\n : this.el.nativeElement;\n\n return el || this.el.nativeElement;\n }\n\n protected get isTextFieldElement(): boolean {\n return this.element.matches(this.options.query);\n }\n}\n","import {type ElementRef, type NgZone} from '@angular/core';\nimport {tuiZonefreeScheduler} from '@taiga-ui/cdk/observables';\nimport {map, type Observable, race, skipWhile, take, throttleTime, timer} from 'rxjs';\n\nimport {type TuiAutofocusOptions} from '../autofocus.options';\nimport {AbstractTuiAutofocusHandler} from './abstract.handler';\n\nconst TIMEOUT = 1000;\nconst NG_ANIMATION_SELECTOR = '.ng-animating';\n\nexport class TuiDefaultAutofocusHandler extends AbstractTuiAutofocusHandler {\n constructor(\n el: ElementRef<HTMLElement>,\n private readonly animationFrame$: Observable<number>,\n private readonly zone: NgZone,\n options: TuiAutofocusOptions,\n ) {\n super(el, options);\n }\n\n public setFocus(): void {\n if (this.isTextFieldElement) {\n race(\n timer(this.options.delay || TIMEOUT),\n this.animationFrame$.pipe(\n throttleTime(100, tuiZonefreeScheduler(this.zone)),\n map(() => this.element.closest(NG_ANIMATION_SELECTOR)),\n skipWhile(Boolean),\n take(1),\n ),\n ).subscribe(() =>\n this.element.focus({preventScroll: this.options.preventScroll}),\n );\n } else {\n this.element.focus({preventScroll: true});\n }\n }\n}\n","import {type ElementRef, type NgZone, type Renderer2} from '@angular/core';\nimport {tuiIsPresent, tuiPx} from '@taiga-ui/cdk/utils';\n\nimport {type TuiAutofocusOptions} from '../autofocus.options';\nimport {AbstractTuiAutofocusHandler} from './abstract.handler';\n\nconst TEXTFIELD_ATTRS = [\n 'type',\n 'inputMode',\n 'autocomplete',\n 'accept',\n 'min',\n 'max',\n 'step',\n 'pattern',\n 'size',\n 'maxlength',\n] as const;\n\nexport class TuiIosAutofocusHandler extends AbstractTuiAutofocusHandler {\n constructor(\n el: ElementRef<HTMLElement>,\n private readonly renderer: Renderer2,\n private readonly zone: NgZone,\n private readonly win: Window,\n options: TuiAutofocusOptions,\n ) {\n super(el, options);\n }\n\n public setFocus(): void {\n if (this.isTextFieldElement) {\n this.zone.runOutsideAngular(() => this.iosWebkitAutofocus());\n } else {\n this.element.focus({preventScroll: true});\n }\n }\n\n private iosWebkitAutofocus(): void {\n const fakeInput: HTMLInputElement = this.makeFakeInput();\n const duration = this.getDurationTimeBeforeFocus();\n let fakeFocusTimeoutId = 0;\n let elementFocusTimeoutId = 0;\n\n const blurHandler = (): void => fakeInput.focus({preventScroll: true});\n const focusHandler = (): void => {\n clearTimeout(fakeFocusTimeoutId);\n\n fakeFocusTimeoutId = this.win.setTimeout(() => {\n clearTimeout(elementFocusTimeoutId);\n\n fakeInput.removeEventListener('blur', blurHandler);\n fakeInput.removeEventListener('focus', focusHandler);\n\n elementFocusTimeoutId = this.win.setTimeout(() => {\n this.element.focus({preventScroll: this.options.preventScroll});\n fakeInput.remove();\n }, duration);\n });\n };\n\n fakeInput.addEventListener('blur', blurHandler, {once: true});\n fakeInput.addEventListener('focus', focusHandler);\n\n if (this.insideDialog()) {\n this.win.document.body.appendChild(fakeInput);\n } else {\n this.element.parentElement?.appendChild(fakeInput);\n }\n\n fakeInput.focus({preventScroll: true});\n }\n\n /**\n * @note:\n * emulate textfield position in layout with cursor\n * before focus to real textfield element\n *\n * required note:\n * [fakeInput.readOnly = true] ~\n * don't use {readOnly: true} value, it's doesn't work for emulate autofill\n *\n * [fakeInput.style.opacity = 0] ~\n * don't use {opacity: 0}, sometimes it's doesn't work for emulate real input\n *\n * [fakeInput.style.fontSize = 16px] ~\n * disable possible auto zoom\n *\n * [fakeInput.style.top/left] ~\n * emulate position cursor before focus to real textfield element\n */\n private makeFakeInput(): HTMLInputElement {\n const fakeInput: HTMLInputElement = this.renderer.createElement('input');\n const rect: DOMRect = this.element.getBoundingClientRect();\n\n this.patchFakeInputFromFocusableElement(fakeInput);\n\n fakeInput.style.height = tuiPx(rect.height);\n fakeInput.style.width = tuiPx(rect.width / 2);\n fakeInput.style.position = 'fixed';\n fakeInput.style.zIndex = '-99999999';\n fakeInput.style.caretColor = 'transparent';\n fakeInput.style.border = 'none';\n fakeInput.style.outline = 'none';\n fakeInput.style.color = 'transparent';\n fakeInput.style.background = 'transparent';\n fakeInput.style.cursor = 'none';\n fakeInput.style.fontSize = tuiPx(16);\n fakeInput.style.top = tuiPx(rect.top);\n fakeInput.style.left = tuiPx(rect.left);\n\n return fakeInput;\n }\n\n private getDurationTimeBeforeFocus(): number {\n return (\n parseFloat(\n this.win\n .getComputedStyle(this.element)\n .getPropertyValue('--tui-duration'),\n ) || 0\n );\n }\n\n /**\n * @note:\n * unfortunately, in older versions of iOS\n * there is a bug that the fake input cursor\n * will move along with the dialog animation\n * and then that dialog will be shaking\n */\n private insideDialog(): boolean {\n return !!this.element.closest('tui-dialog');\n }\n\n /**\n * @note:\n * inherit basic attributes values from real input\n * for help iOS detect what do you want see on keyboard,\n * for example [inputMode=numeric, autocomplete=cc-number]\n */\n private patchFakeInputFromFocusableElement(fakeInput: HTMLInputElement): void {\n TEXTFIELD_ATTRS.forEach((attr) => {\n const value = this.element.getAttribute(attr);\n\n if (tuiIsPresent(value)) {\n fakeInput.setAttribute(attr, value);\n }\n });\n }\n}\n","import {ElementRef, InjectionToken, NgZone, Renderer2} from '@angular/core';\nimport {WA_ANIMATION_FRAME, WA_WINDOW} from '@ng-web-apis/common';\nimport {TUI_IS_IOS} from '@taiga-ui/cdk/tokens';\nimport {tuiCreateOptions} from '@taiga-ui/cdk/utils';\nimport {type Observable} from 'rxjs';\n\nimport {TuiDefaultAutofocusHandler} from './handlers/default.handler';\nimport {TuiIosAutofocusHandler} from './handlers/ios.handler';\n\nexport interface TuiAutofocusHandler {\n setFocus(): void;\n}\n\nexport interface TuiAutofocusOptions {\n readonly delay: number;\n readonly query: string;\n readonly preventScroll: boolean;\n}\n\nexport const [TUI_AUTOFOCUS_OPTIONS, tuiAutoFocusOptionsProvider] =\n tuiCreateOptions<TuiAutofocusOptions>({\n delay: NaN, // NaN = no delay/sync\n query: 'input, textarea, select, [contenteditable]',\n preventScroll: false,\n });\n\nexport const TUI_AUTOFOCUS_HANDLER = new InjectionToken<TuiAutofocusHandler>(\n ngDevMode ? 'TUI_AUTOFOCUS_HANDLER' : '',\n);\n\nexport const TUI_AUTOFOCUS_PROVIDERS = [\n {\n provide: TUI_AUTOFOCUS_HANDLER,\n deps: [\n ElementRef,\n WA_ANIMATION_FRAME,\n Renderer2,\n NgZone,\n WA_WINDOW,\n TUI_IS_IOS,\n TUI_AUTOFOCUS_OPTIONS,\n ],\n\n // eslint-disable-next-line @typescript-eslint/max-params,max-params\n useFactory: (\n el: ElementRef<HTMLElement>,\n animationFrame$: Observable<number>,\n renderer: Renderer2,\n zone: NgZone,\n win: Window,\n isIos: boolean,\n options: TuiAutofocusOptions,\n ) =>\n isIos\n ? new TuiIosAutofocusHandler(el, renderer, zone, win, options)\n : new TuiDefaultAutofocusHandler(el, animationFrame$, zone, options),\n },\n];\n","import {type BooleanInput, coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {type AfterViewInit, DestroyRef, Directive, inject, Input} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {timer} from 'rxjs';\n\nimport {\n TUI_AUTOFOCUS_HANDLER,\n TUI_AUTOFOCUS_OPTIONS,\n TUI_AUTOFOCUS_PROVIDERS,\n} from './autofocus.options';\n\n@Directive({\n standalone: true,\n selector: '[tuiAutoFocus]',\n providers: TUI_AUTOFOCUS_PROVIDERS,\n})\nexport class TuiAutoFocus implements AfterViewInit {\n private readonly handler = inject(TUI_AUTOFOCUS_HANDLER);\n private readonly options = inject(TUI_AUTOFOCUS_OPTIONS);\n private readonly destroyRef = inject(DestroyRef);\n\n @Input({\n alias: 'tuiAutoFocus',\n transform: coerceBooleanProperty,\n })\n public autoFocus: BooleanInput;\n\n public ngAfterViewInit(): void {\n if (this.autoFocus) {\n this.focus();\n }\n }\n\n public focus(): void {\n if (Number.isNaN(this.options.delay)) {\n void Promise.resolve().then(() => this.handler.setFocus());\n } else {\n timer(this.options.delay)\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(() => this.handler.setFocus());\n }\n }\n}\n","import {AbstractTuiAutofocusHandler} from './abstract.handler';\n\nexport class TuiSynchronousAutofocusHandler extends AbstractTuiAutofocusHandler {\n public setFocus(): void {\n this.element.focus({preventScroll: true});\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-cdk-directives-auto-focus.mjs","sources":["../../../projects/cdk/directives/auto-focus/handlers/abstract.handler.ts","../../../projects/cdk/directives/auto-focus/handlers/default.handler.ts","../../../projects/cdk/directives/auto-focus/handlers/ios.handler.ts","../../../projects/cdk/directives/auto-focus/autofocus.options.ts","../../../projects/cdk/directives/auto-focus/autofocus.directive.ts","../../../projects/cdk/directives/auto-focus/handlers/sync.handler.ts","../../../projects/cdk/directives/auto-focus/taiga-ui-cdk-directives-auto-focus.ts"],"sourcesContent":["import {type ElementRef} from '@angular/core';\n\nimport {type TuiAutofocusHandler, type TuiAutofocusOptions} from '../autofocus.options';\n\nexport abstract class AbstractTuiAutofocusHandler implements TuiAutofocusHandler {\n constructor(\n protected readonly el: ElementRef<HTMLElement>,\n protected readonly options: TuiAutofocusOptions,\n ) {}\n\n public abstract setFocus(): void;\n\n protected get element(): HTMLElement {\n // TODO: Remove when legacy controls are dropped\n const el = this.el.nativeElement.tagName.includes('-')\n ? this.el.nativeElement.querySelector<HTMLElement>(this.options.query)\n : this.el.nativeElement;\n\n return el || this.el.nativeElement;\n }\n\n protected get isTextFieldElement(): boolean {\n return this.element.matches(this.options.query);\n }\n}\n","import {type ElementRef, type NgZone} from '@angular/core';\nimport {tuiZonefreeScheduler} from '@taiga-ui/cdk/observables';\nimport {map, type Observable, race, skipWhile, take, throttleTime, timer} from 'rxjs';\n\nimport {type TuiAutofocusOptions} from '../autofocus.options';\nimport {AbstractTuiAutofocusHandler} from './abstract.handler';\n\nconst TIMEOUT = 1000;\nconst NG_ANIMATION_SELECTOR = '.ng-animating';\n\nexport class TuiDefaultAutofocusHandler extends AbstractTuiAutofocusHandler {\n constructor(\n el: ElementRef<HTMLElement>,\n private readonly animationFrame$: Observable<number>,\n private readonly zone: NgZone,\n options: TuiAutofocusOptions,\n ) {\n super(el, options);\n }\n\n public setFocus(): void {\n if (this.isTextFieldElement) {\n race(\n timer(this.options.delay || TIMEOUT),\n this.animationFrame$.pipe(\n throttleTime(100, tuiZonefreeScheduler(this.zone)),\n map(() => this.element.closest(NG_ANIMATION_SELECTOR)),\n skipWhile(Boolean),\n take(1),\n ),\n ).subscribe(() =>\n this.element.focus({preventScroll: this.options.preventScroll}),\n );\n } else {\n this.element.focus({preventScroll: true});\n }\n }\n}\n","import {type ElementRef, type NgZone, type Renderer2} from '@angular/core';\nimport {tuiIsPresent, tuiPx} from '@taiga-ui/cdk/utils';\n\nimport {type TuiAutofocusOptions} from '../autofocus.options';\nimport {AbstractTuiAutofocusHandler} from './abstract.handler';\n\nconst TEXTFIELD_ATTRS = [\n 'type',\n 'inputMode',\n 'autocomplete',\n 'accept',\n 'min',\n 'max',\n 'step',\n 'pattern',\n 'size',\n 'maxlength',\n] as const;\n\nexport class TuiIosAutofocusHandler extends AbstractTuiAutofocusHandler {\n constructor(\n el: ElementRef<HTMLElement>,\n private readonly renderer: Renderer2,\n private readonly zone: NgZone,\n private readonly win: Window,\n options: TuiAutofocusOptions,\n ) {\n super(el, options);\n }\n\n public setFocus(): void {\n if (this.isTextFieldElement) {\n this.zone.runOutsideAngular(() => this.iosWebkitAutofocus());\n } else {\n this.element.focus({preventScroll: true});\n }\n }\n\n private iosWebkitAutofocus(): void {\n const fakeInput: HTMLInputElement = this.makeFakeInput();\n const duration = this.getDurationTimeBeforeFocus();\n let fakeFocusTimeoutId = 0;\n let elementFocusTimeoutId = 0;\n\n const blurHandler = (): void => fakeInput.focus({preventScroll: true});\n const focusHandler = (): void => {\n clearTimeout(fakeFocusTimeoutId);\n\n fakeFocusTimeoutId = this.win.setTimeout(() => {\n clearTimeout(elementFocusTimeoutId);\n\n fakeInput.removeEventListener('blur', blurHandler);\n fakeInput.removeEventListener('focus', focusHandler);\n\n elementFocusTimeoutId = this.win.setTimeout(() => {\n this.element.focus({preventScroll: this.options.preventScroll});\n fakeInput.remove();\n }, duration);\n });\n };\n\n fakeInput.addEventListener('blur', blurHandler, {once: true});\n fakeInput.addEventListener('focus', focusHandler);\n\n if (this.insideDialog()) {\n this.win.document.body.appendChild(fakeInput);\n } else {\n this.element.parentElement?.appendChild(fakeInput);\n }\n\n fakeInput.focus({preventScroll: true});\n }\n\n /**\n * @note:\n * emulate textfield position in layout with cursor\n * before focus to real textfield element\n *\n * required note:\n * [fakeInput.readOnly = true] ~\n * don't use {readOnly: true} value, it's doesn't work for emulate autofill\n *\n * [fakeInput.style.opacity = 0] ~\n * don't use {opacity: 0}, sometimes it's doesn't work for emulate real input\n *\n * [fakeInput.style.fontSize = 16px] ~\n * disable possible auto zoom\n *\n * [fakeInput.style.top/left] ~\n * emulate position cursor before focus to real textfield element\n */\n private makeFakeInput(): HTMLInputElement {\n const fakeInput: HTMLInputElement = this.renderer.createElement('input');\n const rect: DOMRect = this.element.getBoundingClientRect();\n\n this.patchFakeInputFromFocusableElement(fakeInput);\n\n fakeInput.style.height = tuiPx(rect.height);\n fakeInput.style.width = tuiPx(rect.width / 2);\n fakeInput.style.position = 'fixed';\n fakeInput.style.zIndex = '-99999999';\n fakeInput.style.caretColor = 'transparent';\n fakeInput.style.border = 'none';\n fakeInput.style.outline = 'none';\n fakeInput.style.color = 'transparent';\n fakeInput.style.background = 'transparent';\n fakeInput.style.cursor = 'none';\n fakeInput.style.fontSize = tuiPx(16);\n fakeInput.style.top = tuiPx(rect.top);\n fakeInput.style.left = tuiPx(rect.left);\n\n return fakeInput;\n }\n\n private getDurationTimeBeforeFocus(): number {\n return (\n parseFloat(\n this.win\n .getComputedStyle(this.element)\n .getPropertyValue('--tui-duration'),\n ) || 0\n );\n }\n\n /**\n * @note:\n * unfortunately, in older versions of iOS\n * there is a bug that the fake input cursor\n * will move along with the dialog animation\n * and then that dialog will be shaking\n */\n private insideDialog(): boolean {\n return !!this.element.closest('tui-dialog');\n }\n\n /**\n * @note:\n * inherit basic attributes values from real input\n * for help iOS detect what do you want see on keyboard,\n * for example [inputMode=numeric, autocomplete=cc-number]\n */\n private patchFakeInputFromFocusableElement(fakeInput: HTMLInputElement): void {\n TEXTFIELD_ATTRS.forEach((attr) => {\n const value = this.element.getAttribute(attr);\n\n if (tuiIsPresent(value)) {\n fakeInput.setAttribute(attr, value);\n }\n });\n }\n}\n","import {ElementRef, InjectionToken, NgZone, Renderer2} from '@angular/core';\nimport {WA_ANIMATION_FRAME, WA_WINDOW} from '@ng-web-apis/common';\nimport {TUI_IS_IOS} from '@taiga-ui/cdk/tokens';\nimport {tuiCreateOptions} from '@taiga-ui/cdk/utils';\nimport {type Observable} from 'rxjs';\n\nimport {TuiDefaultAutofocusHandler} from './handlers/default.handler';\nimport {TuiIosAutofocusHandler} from './handlers/ios.handler';\n\nexport interface TuiAutofocusHandler {\n setFocus(): void;\n}\n\nexport interface TuiAutofocusOptions {\n readonly delay: number;\n readonly query: string;\n readonly preventScroll: boolean;\n}\n\nexport const [TUI_AUTOFOCUS_OPTIONS, tuiAutoFocusOptionsProvider] =\n tuiCreateOptions<TuiAutofocusOptions>({\n delay: NaN, // NaN = no delay/sync\n query: 'input, textarea, select, [contenteditable]',\n preventScroll: false,\n });\n\nexport const TUI_AUTOFOCUS_HANDLER = new InjectionToken<TuiAutofocusHandler>(\n ngDevMode ? 'TUI_AUTOFOCUS_HANDLER' : '',\n);\n\nexport const TUI_AUTOFOCUS_PROVIDERS = [\n {\n provide: TUI_AUTOFOCUS_HANDLER,\n deps: [\n ElementRef,\n WA_ANIMATION_FRAME,\n Renderer2,\n NgZone,\n WA_WINDOW,\n TUI_IS_IOS,\n TUI_AUTOFOCUS_OPTIONS,\n ],\n\n // eslint-disable-next-line @typescript-eslint/max-params,max-params\n useFactory: (\n el: ElementRef<HTMLElement>,\n animationFrame$: Observable<number>,\n renderer: Renderer2,\n zone: NgZone,\n win: Window,\n isIos: boolean,\n options: TuiAutofocusOptions,\n ) =>\n isIos\n ? new TuiIosAutofocusHandler(el, renderer, zone, win, options)\n : new TuiDefaultAutofocusHandler(el, animationFrame$, zone, options),\n },\n];\n","import {type BooleanInput, coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {type AfterViewInit, DestroyRef, Directive, inject, Input} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {timer} from 'rxjs';\n\nimport {\n TUI_AUTOFOCUS_HANDLER,\n TUI_AUTOFOCUS_OPTIONS,\n TUI_AUTOFOCUS_PROVIDERS,\n} from './autofocus.options';\n\n@Directive({\n standalone: true,\n selector: '[tuiAutoFocus]',\n providers: TUI_AUTOFOCUS_PROVIDERS,\n})\nexport class TuiAutoFocus implements AfterViewInit {\n private readonly handler = inject(TUI_AUTOFOCUS_HANDLER);\n private readonly options = inject(TUI_AUTOFOCUS_OPTIONS);\n private readonly destroyRef = inject(DestroyRef);\n\n @Input({\n alias: 'tuiAutoFocus',\n transform: coerceBooleanProperty,\n })\n public autoFocus: BooleanInput;\n\n public ngAfterViewInit(): void {\n if (this.autoFocus) {\n this.focus();\n }\n }\n\n public focus(): void {\n if (Number.isNaN(this.options.delay)) {\n void Promise.resolve().then(() => this.handler.setFocus());\n } else {\n timer(this.options.delay)\n .pipe(takeUntilDestroyed(this.destroyRef))\n .subscribe(() => this.handler.setFocus());\n }\n }\n}\n","import {AbstractTuiAutofocusHandler} from './abstract.handler';\n\nexport class TuiSynchronousAutofocusHandler extends AbstractTuiAutofocusHandler {\n public setFocus(): void {\n this.element.focus({preventScroll: true});\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { DOCUMENT } from '@angular/common';
2
2
  import * as i0 from '@angular/core';
3
- import { inject, NgZone, Directive, Output } from '@angular/core';
3
+ import { inject, NgZone, Output, Directive } from '@angular/core';
4
4
  import { tuiZoneOptimized } from '@taiga-ui/cdk/observables';
5
5
  import { tuiInjectElement, tuiGetActualTarget, tuiContainsOrAfter } from '@taiga-ui/cdk/utils';
6
6
  import { fromEvent, map, filter } from 'rxjs';
@@ -18,10 +18,10 @@ class TuiClickOutside {
18
18
  isOutside(target) {
19
19
  return target === this.el || !tuiContainsOrAfter(this.el, target);
20
20
  }
21
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiClickOutside, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
22
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiClickOutside, isStandalone: true, selector: "[tuiClickOutside]", outputs: { tuiClickOutside: "tuiClickOutside" }, ngImport: i0 }); }
21
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiClickOutside, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
22
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiClickOutside, isStandalone: true, selector: "[tuiClickOutside]", outputs: { tuiClickOutside: "tuiClickOutside" }, ngImport: i0 }); }
23
23
  }
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiClickOutside, decorators: [{
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiClickOutside, decorators: [{
25
25
  type: Directive,
26
26
  args: [{
27
27
  standalone: true,
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-directives-click-outside.mjs","sources":["../../../projects/cdk/directives/click-outside/click-outside.directive.ts","../../../projects/cdk/directives/click-outside/taiga-ui-cdk-directives-click-outside.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {Directive, inject, NgZone, Output} from '@angular/core';\nimport {tuiZoneOptimized} from '@taiga-ui/cdk/observables';\nimport {\n tuiContainsOrAfter,\n tuiGetActualTarget,\n tuiInjectElement,\n} from '@taiga-ui/cdk/utils';\nimport {filter, fromEvent, map, type Observable} from 'rxjs';\n\n/**\n * @deprecated use {@link TuiActiveZone} instead\n */\n@Directive({\n standalone: true,\n selector: '[tuiClickOutside]',\n})\nexport class TuiClickOutside {\n private readonly zone = inject(NgZone);\n private readonly doc = inject(DOCUMENT);\n private readonly el = tuiInjectElement();\n\n @Output()\n public readonly tuiClickOutside: Observable<unknown> = fromEvent(\n this.doc,\n 'mouseup',\n ).pipe(\n map(tuiGetActualTarget),\n filter((target) => this.isOutside(target)),\n tuiZoneOptimized(this.zone),\n );\n\n private isOutside(target: Node): boolean {\n return target === this.el || !tuiContainsOrAfter(this.el, target);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;AAUA;;AAEG;AACH,MAIa,eAAe,CAAA;AAJ5B,IAAA,WAAA,GAAA;AAKqB,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;AACtB,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;QACvB,IAAE,CAAA,EAAA,GAAG,gBAAgB,EAAE,CAAC;AAGzB,QAAA,IAAA,CAAA,eAAe,GAAwB,SAAS,CAC5D,IAAI,CAAC,GAAG,EACR,SAAS,CACZ,CAAC,IAAI,CACF,GAAG,CAAC,kBAAkB,CAAC,EACvB,MAAM,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAC1C,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAC9B,CAAC;AAKL,KAAA;AAHW,IAAA,SAAS,CAAC,MAAY,EAAA;AAC1B,QAAA,OAAO,MAAM,KAAK,IAAI,CAAC,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;KACrE;+GAjBQ,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;mGAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,OAAA,EAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;4FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAJ3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,mBAAmB;AAChC,iBAAA,CAAA;8BAOmB,eAAe,EAAA,CAAA;sBAD9B,MAAM;;;ACtBX;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-cdk-directives-click-outside.mjs","sources":["../../../projects/cdk/directives/click-outside/click-outside.directive.ts","../../../projects/cdk/directives/click-outside/taiga-ui-cdk-directives-click-outside.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {Directive, inject, NgZone, Output} from '@angular/core';\nimport {tuiZoneOptimized} from '@taiga-ui/cdk/observables';\nimport {\n tuiContainsOrAfter,\n tuiGetActualTarget,\n tuiInjectElement,\n} from '@taiga-ui/cdk/utils';\nimport {filter, fromEvent, map, type Observable} from 'rxjs';\n\n/**\n * @deprecated use {@link TuiActiveZone} instead\n */\n@Directive({\n standalone: true,\n selector: '[tuiClickOutside]',\n})\nexport class TuiClickOutside {\n private readonly zone = inject(NgZone);\n private readonly doc = inject(DOCUMENT);\n private readonly el = tuiInjectElement();\n\n @Output()\n public readonly tuiClickOutside: Observable<unknown> = fromEvent(\n this.doc,\n 'mouseup',\n ).pipe(\n map(tuiGetActualTarget),\n filter((target) => this.isOutside(target)),\n tuiZoneOptimized(this.zone),\n );\n\n private isOutside(target: Node): boolean {\n return target === this.el || !tuiContainsOrAfter(this.el, target);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;AAUA;;AAEG;MAKU,eAAe,CAAA;AAJ5B,IAAA,WAAA,GAAA;AAKqB,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC;AACrB,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC;QACtB,IAAE,CAAA,EAAA,GAAG,gBAAgB,EAAE;AAGxB,QAAA,IAAA,CAAA,eAAe,GAAwB,SAAS,CAC5D,IAAI,CAAC,GAAG,EACR,SAAS,CACZ,CAAC,IAAI,CACF,GAAG,CAAC,kBAAkB,CAAC,EACvB,MAAM,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAC1C,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAC9B;AAKJ;AAHW,IAAA,SAAS,CAAC,MAAY,EAAA;AAC1B,QAAA,OAAO,MAAM,KAAK,IAAI,CAAC,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC;;+GAhB5D,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,OAAA,EAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAJ3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,mBAAmB;AAChC,iBAAA;8BAOmB,eAAe,EAAA,CAAA;sBAD9B;;;ACtBL;;AAEG;;;;"}
@@ -9,10 +9,10 @@ class TuiNgControl {
9
9
  get control() {
10
10
  return this.ngControl.control;
11
11
  }
12
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiNgControl, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
13
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiNgControl, isStandalone: true, selector: "[tuiControl]", exportAs: ["ngControl"], ngImport: i0 }); }
12
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiNgControl, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
13
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiNgControl, isStandalone: true, selector: "[tuiControl]", exportAs: ["ngControl"], ngImport: i0 }); }
14
14
  }
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiNgControl, decorators: [{
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiNgControl, decorators: [{
16
16
  type: Directive,
17
17
  args: [{
18
18
  standalone: true,
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-directives-control.mjs","sources":["../../../projects/cdk/directives/control/control.directive.ts","../../../projects/cdk/directives/control/taiga-ui-cdk-directives-control.ts"],"sourcesContent":["import {Directive, inject} from '@angular/core';\nimport {type AbstractControl, NgControl} from '@angular/forms';\n\n@Directive({\n standalone: true,\n selector: '[tuiControl]',\n exportAs: 'ngControl',\n})\nexport class TuiNgControl {\n private readonly ngControl = inject(NgControl);\n\n public get control(): AbstractControl {\n return this.ngControl.control!;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAGA,MAKa,YAAY,CAAA;AALzB,IAAA,WAAA,GAAA;AAMqB,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;AAKlD,KAAA;AAHG,IAAA,IAAW,OAAO,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,OAAQ,CAAC;KAClC;+GALQ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;mGAAZ,YAAY,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;4FAAZ,YAAY,EAAA,UAAA,EAAA,CAAA;kBALxB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,cAAc;AACxB,oBAAA,QAAQ,EAAE,WAAW;AACxB,iBAAA,CAAA;;;ACPD;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-cdk-directives-control.mjs","sources":["../../../projects/cdk/directives/control/control.directive.ts","../../../projects/cdk/directives/control/taiga-ui-cdk-directives-control.ts"],"sourcesContent":["import {Directive, inject} from '@angular/core';\nimport {type AbstractControl, NgControl} from '@angular/forms';\n\n@Directive({\n standalone: true,\n selector: '[tuiControl]',\n exportAs: 'ngControl',\n})\nexport class TuiNgControl {\n private readonly ngControl = inject(NgControl);\n\n public get control(): AbstractControl {\n return this.ngControl.control!;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;MAQa,YAAY,CAAA;AALzB,IAAA,WAAA,GAAA;AAMqB,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;AAKjD;AAHG,IAAA,IAAW,OAAO,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,SAAS,CAAC,OAAQ;;+GAJzB,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAZ,YAAY,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAZ,YAAY,EAAA,UAAA,EAAA,CAAA;kBALxB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,cAAc;AACxB,oBAAA,QAAQ,EAAE,WAAW;AACxB,iBAAA;;;ACPD;;AAEG;;;;"}
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, Directive, Input } from '@angular/core';
2
+ import { inject, Input, Directive } from '@angular/core';
3
3
  import { WA_WINDOW } from '@ng-web-apis/common';
4
4
  import { tuiGetSelectedText } from '@taiga-ui/cdk/utils';
5
5
  import { identity } from 'rxjs';
@@ -15,10 +15,10 @@ class TuiCopyProcessor {
15
15
  event.clipboardData?.setData('text/plain', this.tuiCopyProcessor(text));
16
16
  }
17
17
  }
18
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiCopyProcessor, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
19
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiCopyProcessor, isStandalone: true, selector: "[tuiCopyProcessor]", inputs: { tuiCopyProcessor: "tuiCopyProcessor" }, host: { listeners: { "copy.prevent": "onCopy($event)" } }, ngImport: i0 }); }
18
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiCopyProcessor, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
19
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiCopyProcessor, isStandalone: true, selector: "[tuiCopyProcessor]", inputs: { tuiCopyProcessor: "tuiCopyProcessor" }, host: { listeners: { "copy.prevent": "onCopy($event)" } }, ngImport: i0 }); }
20
20
  }
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiCopyProcessor, decorators: [{
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiCopyProcessor, decorators: [{
22
22
  type: Directive,
23
23
  args: [{
24
24
  standalone: true,
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-directives-copy-processor.mjs","sources":["../../../projects/cdk/directives/copy-processor/copy-processor.directive.ts","../../../projects/cdk/directives/copy-processor/taiga-ui-cdk-directives-copy-processor.ts"],"sourcesContent":["import {Directive, inject, Input} from '@angular/core';\nimport {WA_WINDOW} from '@ng-web-apis/common';\nimport {type TuiStringHandler} from '@taiga-ui/cdk/types';\nimport {tuiGetSelectedText} from '@taiga-ui/cdk/utils';\nimport {identity} from 'rxjs';\n\n@Directive({\n standalone: true,\n selector: '[tuiCopyProcessor]',\n host: {\n '(copy.prevent)': 'onCopy($event)',\n },\n})\nexport class TuiCopyProcessor {\n private readonly win = inject(WA_WINDOW);\n\n @Input()\n public tuiCopyProcessor: TuiStringHandler<string> = identity;\n\n protected onCopy(event: ClipboardEvent): void {\n const text = tuiGetSelectedText(this.win);\n\n if (text) {\n event.clipboardData?.setData('text/plain', this.tuiCopyProcessor(text));\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AAMA,MAOa,gBAAgB,CAAA;AAP7B,IAAA,WAAA,GAAA;AAQqB,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;QAGlC,IAAgB,CAAA,gBAAA,GAA6B,QAAQ,CAAC;AAShE,KAAA;AAPa,IAAA,MAAM,CAAC,KAAqB,EAAA;QAClC,MAAM,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE1C,QAAA,IAAI,IAAI,EAAE;AACN,YAAA,KAAK,CAAC,aAAa,EAAE,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;AAC3E,SAAA;KACJ;+GAZQ,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;mGAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;4FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAP5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,oBAAoB;AAC9B,oBAAA,IAAI,EAAE;AACF,wBAAA,gBAAgB,EAAE,gBAAgB;AACrC,qBAAA;AACJ,iBAAA,CAAA;8BAKU,gBAAgB,EAAA,CAAA;sBADtB,KAAK;;;AChBV;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-cdk-directives-copy-processor.mjs","sources":["../../../projects/cdk/directives/copy-processor/copy-processor.directive.ts","../../../projects/cdk/directives/copy-processor/taiga-ui-cdk-directives-copy-processor.ts"],"sourcesContent":["import {Directive, inject, Input} from '@angular/core';\nimport {WA_WINDOW} from '@ng-web-apis/common';\nimport {type TuiStringHandler} from '@taiga-ui/cdk/types';\nimport {tuiGetSelectedText} from '@taiga-ui/cdk/utils';\nimport {identity} from 'rxjs';\n\n@Directive({\n standalone: true,\n selector: '[tuiCopyProcessor]',\n host: {\n '(copy.prevent)': 'onCopy($event)',\n },\n})\nexport class TuiCopyProcessor {\n private readonly win = inject(WA_WINDOW);\n\n @Input()\n public tuiCopyProcessor: TuiStringHandler<string> = identity;\n\n protected onCopy(event: ClipboardEvent): void {\n const text = tuiGetSelectedText(this.win);\n\n if (text) {\n event.clipboardData?.setData('text/plain', this.tuiCopyProcessor(text));\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;MAaa,gBAAgB,CAAA;AAP7B,IAAA,WAAA,GAAA;AAQqB,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC;QAGjC,IAAgB,CAAA,gBAAA,GAA6B,QAAQ;AAS/D;AAPa,IAAA,MAAM,CAAC,KAAqB,EAAA;QAClC,MAAM,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC;QAEzC,IAAI,IAAI,EAAE;AACN,YAAA,KAAK,CAAC,aAAa,EAAE,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;;;+GAVtE,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAP5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,oBAAoB;AAC9B,oBAAA,IAAI,EAAE;AACF,wBAAA,gBAAgB,EAAE,gBAAgB;AACrC,qBAAA;AACJ,iBAAA;8BAKU,gBAAgB,EAAA,CAAA;sBADtB;;;AChBL;;AAEG;;;;"}
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Directive, Output } from '@angular/core';
2
+ import { Output, Directive } from '@angular/core';
3
3
  import { tuiTypedFromEvent, tuiPreventDefault } from '@taiga-ui/cdk/observables';
4
4
  import { tuiInjectElement } from '@taiga-ui/cdk/utils';
5
5
  import { tuiIsPresent } from '@taiga-ui/cdk/utils/miscellaneous';
@@ -11,10 +11,10 @@ class TuiDroppable {
11
11
  this.tuiDroppableDropped = tuiTypedFromEvent(this.el, 'drop').pipe(tuiPreventDefault(), map((event) => event.dataTransfer), filter(tuiIsPresent));
12
12
  this.tuiDroppableDragOverChange = tuiTypedFromEvent(this.el, 'dragenter').pipe(switchMap(({ target, dataTransfer }) => merge(tuiTypedFromEvent(this.el, 'dragleave').pipe(filter((event) => event.target === target)), tuiTypedFromEvent(this.el, 'drop')).pipe(map(() => null), startWith(dataTransfer))), distinctUntilChanged((a, b) => (!!a && !!b) || (!a && !b)));
13
13
  }
14
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDroppable, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
15
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiDroppable, isStandalone: true, selector: "[tuiDroppableDropped], [tuiDroppableDragOverChange]", outputs: { tuiDroppableDropped: "tuiDroppableDropped", tuiDroppableDragOverChange: "tuiDroppableDragOverChange" }, host: { listeners: { "dragover.prevent.zoneless": "0" } }, ngImport: i0 }); }
14
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDroppable, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
15
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiDroppable, isStandalone: true, selector: "[tuiDroppableDropped], [tuiDroppableDragOverChange]", outputs: { tuiDroppableDropped: "tuiDroppableDropped", tuiDroppableDragOverChange: "tuiDroppableDragOverChange" }, host: { listeners: { "dragover.prevent.zoneless": "0" } }, ngImport: i0 }); }
16
16
  }
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiDroppable, decorators: [{
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiDroppable, decorators: [{
18
18
  type: Directive,
19
19
  args: [{
20
20
  standalone: true,
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-directives-droppable.mjs","sources":["../../../projects/cdk/directives/droppable/droppable.directive.ts","../../../projects/cdk/directives/droppable/taiga-ui-cdk-directives-droppable.ts"],"sourcesContent":["import {Directive, Output} from '@angular/core';\nimport {tuiPreventDefault, tuiTypedFromEvent} from '@taiga-ui/cdk/observables';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils';\nimport {tuiIsPresent} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {distinctUntilChanged, filter, map, merge, startWith, switchMap} from 'rxjs';\n\n@Directive({\n standalone: true,\n selector: '[tuiDroppableDropped], [tuiDroppableDragOverChange]',\n host: {\n '(dragover.prevent.zoneless)': '0',\n },\n})\nexport class TuiDroppable {\n private readonly el = tuiInjectElement();\n\n @Output()\n public readonly tuiDroppableDropped = tuiTypedFromEvent(this.el, 'drop').pipe(\n tuiPreventDefault(),\n map((event) => event.dataTransfer),\n filter(tuiIsPresent),\n );\n\n @Output()\n public readonly tuiDroppableDragOverChange = tuiTypedFromEvent(\n this.el,\n 'dragenter',\n ).pipe(\n switchMap(({target, dataTransfer}) =>\n merge(\n tuiTypedFromEvent(this.el, 'dragleave').pipe(\n filter((event) => event.target === target),\n ),\n tuiTypedFromEvent(this.el, 'drop'),\n ).pipe(\n map(() => null),\n startWith(dataTransfer),\n ),\n ),\n distinctUntilChanged((a, b) => (!!a && !!b) || (!a && !b)),\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;AAMA,MAOa,YAAY,CAAA;AAPzB,IAAA,WAAA,GAAA;QAQqB,IAAE,CAAA,EAAA,GAAG,gBAAgB,EAAE,CAAC;AAGzB,QAAA,IAAA,CAAA,mBAAmB,GAAG,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,IAAI,CACzE,iBAAiB,EAAE,EACnB,GAAG,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,YAAY,CAAC,EAClC,MAAM,CAAC,YAAY,CAAC,CACvB,CAAC;QAGc,IAA0B,CAAA,0BAAA,GAAG,iBAAiB,CAC1D,IAAI,CAAC,EAAE,EACP,WAAW,CACd,CAAC,IAAI,CACF,SAAS,CAAC,CAAC,EAAC,MAAM,EAAE,YAAY,EAAC,KAC7B,KAAK,CACD,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC,IAAI,CACxC,MAAM,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,CAC7C,EACD,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CACrC,CAAC,IAAI,CACF,GAAG,CAAC,MAAM,IAAI,CAAC,EACf,SAAS,CAAC,YAAY,CAAC,CAC1B,CACJ,EACD,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAC7D,CAAC;AACL,KAAA;+GA5BY,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;mGAAZ,YAAY,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,OAAA,EAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,0BAAA,EAAA,4BAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,2BAAA,EAAA,GAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;4FAAZ,YAAY,EAAA,UAAA,EAAA,CAAA;kBAPxB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,qDAAqD;AAC/D,oBAAA,IAAI,EAAE;AACF,wBAAA,6BAA6B,EAAE,GAAG;AACrC,qBAAA;AACJ,iBAAA,CAAA;8BAKmB,mBAAmB,EAAA,CAAA;sBADlC,MAAM;gBAQS,0BAA0B,EAAA,CAAA;sBADzC,MAAM;;;ACvBX;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-cdk-directives-droppable.mjs","sources":["../../../projects/cdk/directives/droppable/droppable.directive.ts","../../../projects/cdk/directives/droppable/taiga-ui-cdk-directives-droppable.ts"],"sourcesContent":["import {Directive, Output} from '@angular/core';\nimport {tuiPreventDefault, tuiTypedFromEvent} from '@taiga-ui/cdk/observables';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils';\nimport {tuiIsPresent} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {distinctUntilChanged, filter, map, merge, startWith, switchMap} from 'rxjs';\n\n@Directive({\n standalone: true,\n selector: '[tuiDroppableDropped], [tuiDroppableDragOverChange]',\n host: {\n '(dragover.prevent.zoneless)': '0',\n },\n})\nexport class TuiDroppable {\n private readonly el = tuiInjectElement();\n\n @Output()\n public readonly tuiDroppableDropped = tuiTypedFromEvent(this.el, 'drop').pipe(\n tuiPreventDefault(),\n map((event) => event.dataTransfer),\n filter(tuiIsPresent),\n );\n\n @Output()\n public readonly tuiDroppableDragOverChange = tuiTypedFromEvent(\n this.el,\n 'dragenter',\n ).pipe(\n switchMap(({target, dataTransfer}) =>\n merge(\n tuiTypedFromEvent(this.el, 'dragleave').pipe(\n filter((event) => event.target === target),\n ),\n tuiTypedFromEvent(this.el, 'drop'),\n ).pipe(\n map(() => null),\n startWith(dataTransfer),\n ),\n ),\n distinctUntilChanged((a, b) => (!!a && !!b) || (!a && !b)),\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;MAaa,YAAY,CAAA;AAPzB,IAAA,WAAA,GAAA;QAQqB,IAAE,CAAA,EAAA,GAAG,gBAAgB,EAAE;AAGxB,QAAA,IAAA,CAAA,mBAAmB,GAAG,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,IAAI,CACzE,iBAAiB,EAAE,EACnB,GAAG,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,YAAY,CAAC,EAClC,MAAM,CAAC,YAAY,CAAC,CACvB;QAGe,IAA0B,CAAA,0BAAA,GAAG,iBAAiB,CAC1D,IAAI,CAAC,EAAE,EACP,WAAW,CACd,CAAC,IAAI,CACF,SAAS,CAAC,CAAC,EAAC,MAAM,EAAE,YAAY,EAAC,KAC7B,KAAK,CACD,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC,IAAI,CACxC,MAAM,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,CAC7C,EACD,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CACrC,CAAC,IAAI,CACF,GAAG,CAAC,MAAM,IAAI,CAAC,EACf,SAAS,CAAC,YAAY,CAAC,CAC1B,CACJ,EACD,oBAAoB,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAC7D;AACJ;+GA5BY,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAZ,YAAY,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,OAAA,EAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,0BAAA,EAAA,4BAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,2BAAA,EAAA,GAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAZ,YAAY,EAAA,UAAA,EAAA,CAAA;kBAPxB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,qDAAqD;AAC/D,oBAAA,IAAI,EAAE;AACF,wBAAA,6BAA6B,EAAE,GAAG;AACrC,qBAAA;AACJ,iBAAA;8BAKmB,mBAAmB,EAAA,CAAA;sBADlC;gBAQe,0BAA0B,EAAA,CAAA;sBADzC;;;ACvBL;;AAEG;;;;"}
@@ -21,17 +21,17 @@ class TuiElement {
21
21
  */
22
22
  return new ElementRef(this.nativeElement);
23
23
  }
24
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiElement, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
25
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiElement, isStandalone: true, selector: "[tuiElement]", exportAs: ["elementRef"], ngImport: i0 }); }
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiElement, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
25
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiElement, isStandalone: true, selector: "[tuiElement]", exportAs: ["elementRef"], ngImport: i0 }); }
26
26
  }
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiElement, decorators: [{
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiElement, decorators: [{
28
28
  type: Directive,
29
29
  args: [{
30
30
  standalone: true,
31
31
  selector: '[tuiElement]',
32
32
  exportAs: 'elementRef',
33
33
  }]
34
- }], ctorParameters: function () { return []; } });
34
+ }], ctorParameters: () => [] });
35
35
 
36
36
  /**
37
37
  * Generated bundle index. Do not edit.
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-directives-element.mjs","sources":["../../../projects/cdk/directives/element/element.directive.ts","../../../projects/cdk/directives/element/taiga-ui-cdk-directives-element.ts"],"sourcesContent":["import {Directive, ElementRef} from '@angular/core';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils';\n\n@Directive({\n standalone: true,\n selector: '[tuiElement]',\n exportAs: 'elementRef',\n})\nexport class TuiElement<T extends Element = HTMLElement> implements ElementRef<T> {\n public nativeElement = tuiInjectElement<T>();\n\n constructor() {\n /**\n * @note:\n * Typically, when your constructor is invoked with new,\n * an object is created, its constructor is assigned to\n * the invoked constructor and the object is then assigned\n * to this before executing any operations specified\n * in your constructor method.\n *\n * ERROR TypeError: Class constructor ElementRef cannot be invoked without 'new'\n * https://github.com/taiga-family/taiga-ui/issues/3072\n *\n * This way we can instantiate object creation\n * without additional prototype chain for possible fix bug.\n */\n return new ElementRef<T>(this.nativeElement);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAGA,MAKa,UAAU,CAAA;AAGnB,IAAA,WAAA,GAAA;QAFO,IAAa,CAAA,aAAA,GAAG,gBAAgB,EAAK,CAAC;AAGzC;;;;;;;;;;;;;AAaG;AACH,QAAA,OAAO,IAAI,UAAU,CAAI,IAAI,CAAC,aAAa,CAAC,CAAC;KAChD;+GAnBQ,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;mGAAV,UAAU,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;4FAAV,UAAU,EAAA,UAAA,EAAA,CAAA;kBALtB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,cAAc;AACxB,oBAAA,QAAQ,EAAE,YAAY;AACzB,iBAAA,CAAA;;;ACPD;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-cdk-directives-element.mjs","sources":["../../../projects/cdk/directives/element/element.directive.ts","../../../projects/cdk/directives/element/taiga-ui-cdk-directives-element.ts"],"sourcesContent":["import {Directive, ElementRef} from '@angular/core';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils';\n\n@Directive({\n standalone: true,\n selector: '[tuiElement]',\n exportAs: 'elementRef',\n})\nexport class TuiElement<T extends Element = HTMLElement> implements ElementRef<T> {\n public nativeElement = tuiInjectElement<T>();\n\n constructor() {\n /**\n * @note:\n * Typically, when your constructor is invoked with new,\n * an object is created, its constructor is assigned to\n * the invoked constructor and the object is then assigned\n * to this before executing any operations specified\n * in your constructor method.\n *\n * ERROR TypeError: Class constructor ElementRef cannot be invoked without 'new'\n * https://github.com/taiga-family/taiga-ui/issues/3072\n *\n * This way we can instantiate object creation\n * without additional prototype chain for possible fix bug.\n */\n return new ElementRef<T>(this.nativeElement);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;MAQa,UAAU,CAAA;AAGnB,IAAA,WAAA,GAAA;QAFO,IAAa,CAAA,aAAA,GAAG,gBAAgB,EAAK;AAGxC;;;;;;;;;;;;;AAaG;AACH,QAAA,OAAO,IAAI,UAAU,CAAI,IAAI,CAAC,aAAa,CAAC;;+GAlBvC,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAV,UAAU,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAV,UAAU,EAAA,UAAA,EAAA,CAAA;kBALtB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,cAAc;AACxB,oBAAA,QAAQ,EAAE,YAAY;AACzB,iBAAA;;;ACPD;;AAEG;;;;"}
@@ -2,7 +2,7 @@ import { DOCUMENT } from '@angular/common';
2
2
  import * as i0 from '@angular/core';
3
3
  import { inject, Directive } from '@angular/core';
4
4
  import { tuiInjectElement, tuiIsHTMLElement, tuiContainsOrAfter } from '@taiga-ui/cdk/utils/dom';
5
- import { tuiGetNativeFocused, tuiBlurNativeFocused, tuiGetClosestFocusable } from '@taiga-ui/cdk/utils/focus';
5
+ import { tuiGetFocused, tuiGetClosestFocusable } from '@taiga-ui/cdk/utils/focus';
6
6
 
7
7
  class TuiFocusTrap {
8
8
  constructor() {
@@ -20,26 +20,18 @@ class TuiFocusTrap {
20
20
  * The same event can synchronously close already opened focus trap and open another one.
21
21
  * All focus traps have microtask inside its `ngOnDestroy` –
22
22
  * they should be resolved before enabling of new focus trap.
23
- * Don't enable any new event listeners before `initialized` equals to `true`!
23
+ * Don't enable any new event listeners before `initialized` is equal to `true`!
24
24
  */
25
25
  this.initialized = true;
26
- this.activeElement = tuiGetNativeFocused(this.doc);
26
+ this.activeElement = tuiGetFocused(this.doc);
27
27
  this.el.focus();
28
28
  });
29
29
  }
30
30
  ngOnDestroy() {
31
- tuiBlurNativeFocused(this.doc);
32
- /**
33
- * HostListeners are triggered even after ngOnDestroy
34
- * {@link https://github.com/angular/angular/issues/38100}
35
- * so we need to delay it but stay in the same sync cycle,
36
- * therefore using Promise instead of setTimeout
37
- */
38
- Promise.resolve().then(() => {
39
- if (tuiIsHTMLElement(this.activeElement)) {
40
- this.activeElement.focus();
41
- }
42
- });
31
+ this.initialized = false;
32
+ if (tuiIsHTMLElement(this.activeElement)) {
33
+ this.activeElement.focus();
34
+ }
43
35
  }
44
36
  onFocusIn(node) {
45
37
  const { firstElementChild } = this.el;
@@ -50,10 +42,10 @@ class TuiFocusTrap {
50
42
  })?.focus();
51
43
  }
52
44
  }
53
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiFocusTrap, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
54
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiFocusTrap, isStandalone: true, selector: "[tuiFocusTrap]", host: { attributes: { "tabIndex": "0" }, listeners: { "window:focusin.zoneless": "initialized && onFocusIn($event.target)" } }, ngImport: i0 }); }
45
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiFocusTrap, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
46
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiFocusTrap, isStandalone: true, selector: "[tuiFocusTrap]", host: { attributes: { "tabIndex": "0" }, listeners: { "window:focusin.zoneless": "initialized && onFocusIn($event.target)" } }, ngImport: i0 }); }
55
47
  }
56
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiFocusTrap, decorators: [{
48
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiFocusTrap, decorators: [{
57
49
  type: Directive,
58
50
  args: [{
59
51
  standalone: true,
@@ -63,7 +55,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
63
55
  '(window:focusin.zoneless)': 'initialized && onFocusIn($event.target)',
64
56
  },
65
57
  }]
66
- }], ctorParameters: function () { return []; } });
58
+ }], ctorParameters: () => [] });
67
59
 
68
60
  /**
69
61
  * Generated bundle index. Do not edit.
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-directives-focus-trap.mjs","sources":["../../../projects/cdk/directives/focus-trap/focus-trap.directive.ts","../../../projects/cdk/directives/focus-trap/taiga-ui-cdk-directives-focus-trap.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {Directive, inject, type OnDestroy} from '@angular/core';\nimport {\n tuiContainsOrAfter,\n tuiInjectElement,\n tuiIsHTMLElement,\n} from '@taiga-ui/cdk/utils/dom';\nimport {\n tuiBlurNativeFocused,\n tuiGetClosestFocusable,\n tuiGetNativeFocused,\n} from '@taiga-ui/cdk/utils/focus';\n\n@Directive({\n standalone: true,\n selector: '[tuiFocusTrap]',\n host: {\n tabIndex: '0',\n '(window:focusin.zoneless)': 'initialized && onFocusIn($event.target)',\n },\n})\nexport class TuiFocusTrap implements OnDestroy {\n private readonly doc = inject(DOCUMENT);\n private readonly el = tuiInjectElement();\n private activeElement: Element | null = null;\n protected initialized = false;\n\n constructor() {\n /**\n * This would cause currently focused element to lose focus,\n * but it might cause ExpressionChanged error due to potential HostBinding.\n * Microtask keeps it in the same frame but allows change detection to run\n */\n Promise.resolve().then(() => {\n /**\n * The same event can synchronously close already opened focus trap and open another one.\n * All focus traps have microtask inside its `ngOnDestroy` –\n * they should be resolved before enabling of new focus trap.\n * Don't enable any new event listeners before `initialized` equals to `true`!\n */\n this.initialized = true;\n this.activeElement = tuiGetNativeFocused(this.doc);\n this.el.focus();\n });\n }\n\n public ngOnDestroy(): void {\n tuiBlurNativeFocused(this.doc);\n\n /**\n * HostListeners are triggered even after ngOnDestroy\n * {@link https://github.com/angular/angular/issues/38100}\n * so we need to delay it but stay in the same sync cycle,\n * therefore using Promise instead of setTimeout\n */\n Promise.resolve().then(() => {\n if (tuiIsHTMLElement(this.activeElement)) {\n this.activeElement.focus();\n }\n });\n }\n\n protected onFocusIn(node: Node): void {\n const {firstElementChild} = this.el;\n\n if (!tuiContainsOrAfter(this.el, node) && firstElementChild) {\n tuiGetClosestFocusable({\n initial: firstElementChild,\n root: this.el,\n })?.focus();\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AAaA,MAQa,YAAY,CAAA;AAMrB,IAAA,WAAA,GAAA;AALiB,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;QACvB,IAAE,CAAA,EAAA,GAAG,gBAAgB,EAAE,CAAC;QACjC,IAAa,CAAA,aAAA,GAAmB,IAAI,CAAC;QACnC,IAAW,CAAA,WAAA,GAAG,KAAK,CAAC;AAG1B;;;;AAIG;AACH,QAAA,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,MAAK;AACxB;;;;;AAKG;AACH,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YACxB,IAAI,CAAC,aAAa,GAAG,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACnD,YAAA,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;AACpB,SAAC,CAAC,CAAC;KACN;IAEM,WAAW,GAAA;AACd,QAAA,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE/B;;;;;AAKG;AACH,QAAA,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,MAAK;AACxB,YAAA,IAAI,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE;AACtC,gBAAA,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;AAC9B,aAAA;AACL,SAAC,CAAC,CAAC;KACN;AAES,IAAA,SAAS,CAAC,IAAU,EAAA;AAC1B,QAAA,MAAM,EAAC,iBAAiB,EAAC,GAAG,IAAI,CAAC,EAAE,CAAC;QAEpC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,iBAAiB,EAAE;AACzD,YAAA,sBAAsB,CAAC;AACnB,gBAAA,OAAO,EAAE,iBAAiB;gBAC1B,IAAI,EAAE,IAAI,CAAC,EAAE;aAChB,CAAC,EAAE,KAAK,EAAE,CAAC;AACf,SAAA;KACJ;+GAlDQ,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;mGAAZ,YAAY,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,UAAA,EAAA,GAAA,EAAA,EAAA,SAAA,EAAA,EAAA,yBAAA,EAAA,yCAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;4FAAZ,YAAY,EAAA,UAAA,EAAA,CAAA;kBARxB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,IAAI,EAAE;AACF,wBAAA,QAAQ,EAAE,GAAG;AACb,wBAAA,2BAA2B,EAAE,yCAAyC;AACzE,qBAAA;AACJ,iBAAA,CAAA;;;ACpBD;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-cdk-directives-focus-trap.mjs","sources":["../../../projects/cdk/directives/focus-trap/focus-trap.directive.ts","../../../projects/cdk/directives/focus-trap/taiga-ui-cdk-directives-focus-trap.ts"],"sourcesContent":["import {DOCUMENT} from '@angular/common';\nimport {Directive, inject, type OnDestroy} from '@angular/core';\nimport {\n tuiContainsOrAfter,\n tuiInjectElement,\n tuiIsHTMLElement,\n} from '@taiga-ui/cdk/utils/dom';\nimport {tuiGetClosestFocusable, tuiGetFocused} from '@taiga-ui/cdk/utils/focus';\n\n@Directive({\n standalone: true,\n selector: '[tuiFocusTrap]',\n host: {\n tabIndex: '0',\n '(window:focusin.zoneless)': 'initialized && onFocusIn($event.target)',\n },\n})\nexport class TuiFocusTrap implements OnDestroy {\n private readonly doc = inject(DOCUMENT);\n private readonly el = tuiInjectElement();\n private activeElement: Element | null = null;\n protected initialized = false;\n\n constructor() {\n /**\n * This would cause currently focused element to lose focus,\n * but it might cause ExpressionChanged error due to potential HostBinding.\n * Microtask keeps it in the same frame but allows change detection to run\n */\n Promise.resolve().then(() => {\n /**\n * The same event can synchronously close already opened focus trap and open another one.\n * All focus traps have microtask inside its `ngOnDestroy` –\n * they should be resolved before enabling of new focus trap.\n * Don't enable any new event listeners before `initialized` is equal to `true`!\n */\n this.initialized = true;\n this.activeElement = tuiGetFocused(this.doc);\n this.el.focus();\n });\n }\n\n public ngOnDestroy(): void {\n this.initialized = false;\n\n if (tuiIsHTMLElement(this.activeElement)) {\n this.activeElement.focus();\n }\n }\n\n protected onFocusIn(node: Node): void {\n const {firstElementChild} = this.el;\n\n if (!tuiContainsOrAfter(this.el, node) && firstElementChild) {\n tuiGetClosestFocusable({\n initial: firstElementChild,\n root: this.el,\n })?.focus();\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;MAiBa,YAAY,CAAA;AAMrB,IAAA,WAAA,GAAA;AALiB,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC;QACtB,IAAE,CAAA,EAAA,GAAG,gBAAgB,EAAE;QAChC,IAAa,CAAA,aAAA,GAAmB,IAAI;QAClC,IAAW,CAAA,WAAA,GAAG,KAAK;AAGzB;;;;AAIG;AACH,QAAA,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,MAAK;AACxB;;;;;AAKG;AACH,YAAA,IAAI,CAAC,WAAW,GAAG,IAAI;YACvB,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC;AAC5C,YAAA,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE;AACnB,SAAC,CAAC;;IAGC,WAAW,GAAA;AACd,QAAA,IAAI,CAAC,WAAW,GAAG,KAAK;AAExB,QAAA,IAAI,gBAAgB,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE;AACtC,YAAA,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE;;;AAIxB,IAAA,SAAS,CAAC,IAAU,EAAA;AAC1B,QAAA,MAAM,EAAC,iBAAiB,EAAC,GAAG,IAAI,CAAC,EAAE;AAEnC,QAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,iBAAiB,EAAE;AACzD,YAAA,sBAAsB,CAAC;AACnB,gBAAA,OAAO,EAAE,iBAAiB;gBAC1B,IAAI,EAAE,IAAI,CAAC,EAAE;aAChB,CAAC,EAAE,KAAK,EAAE;;;+GAxCV,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAZ,YAAY,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,UAAA,EAAA,GAAA,EAAA,EAAA,SAAA,EAAA,EAAA,yBAAA,EAAA,yCAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAZ,YAAY,EAAA,UAAA,EAAA,CAAA;kBARxB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,gBAAgB;AAC1B,oBAAA,IAAI,EAAE;AACF,wBAAA,QAAQ,EAAE,GAAG;AACb,wBAAA,2BAA2B,EAAE,yCAAyC;AACzE,qBAAA;AACJ,iBAAA;;;AChBD;;AAEG;;;;"}
@@ -15,10 +15,10 @@ class TuiFontSize {
15
15
  ? tuiFontSizeWatcher(this.handler, inject(WA_WINDOW))
16
16
  : EMPTY_FUNCTION);
17
17
  }
18
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiFontSize, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
19
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiFontSize, isStandalone: true, ngImport: i0 }); }
18
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiFontSize, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
19
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiFontSize, isStandalone: true, ngImport: i0 }); }
20
20
  }
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiFontSize, decorators: [{
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiFontSize, decorators: [{
22
22
  type: Directive,
23
23
  args: [{
24
24
  standalone: true,
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-directives-font-size.mjs","sources":["../../../projects/cdk/directives/font-size/font-size.directive.ts","../../../projects/cdk/directives/font-size/taiga-ui-cdk-directives-font-size.ts"],"sourcesContent":["import {isPlatformBrowser} from '@angular/common';\nimport {DestroyRef, Directive, inject, InjectionToken, PLATFORM_ID} from '@angular/core';\nimport {WA_WINDOW} from '@ng-web-apis/common';\nimport {EMPTY_FUNCTION} from '@taiga-ui/cdk/constants';\nimport {tuiFontSizeWatcher} from '@taiga-ui/cdk/utils/miscellaneous';\n\nexport const TUI_FONT_SIZE_HANDLER = new InjectionToken<(size: number) => void>(\n ngDevMode ? 'TUI_FONT_SIZE_HANDLER' : '',\n);\n\n@Directive({\n standalone: true,\n})\nexport class TuiFontSize {\n private readonly handler = inject(TUI_FONT_SIZE_HANDLER, {optional: true});\n protected readonly nothing = inject(DestroyRef).onDestroy(\n this.handler &&\n isPlatformBrowser(inject(PLATFORM_ID)) &&\n typeof ResizeObserver !== 'undefined'\n ? tuiFontSizeWatcher(this.handler, inject(WA_WINDOW))\n : EMPTY_FUNCTION,\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;AAMa,MAAA,qBAAqB,GAAG,IAAI,cAAc,CACnD,SAAS,GAAG,uBAAuB,GAAG,EAAE,EAC1C;AAEF,MAGa,WAAW,CAAA;AAHxB,IAAA,WAAA,GAAA;QAIqB,IAAO,CAAA,OAAA,GAAG,MAAM,CAAC,qBAAqB,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAC;QACxD,IAAO,CAAA,OAAA,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CACrD,IAAI,CAAC,OAAO;AACR,YAAA,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YACtC,OAAO,cAAc,KAAK,WAAW;cACnC,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;cACnD,cAAc,CACvB,CAAC;AACL,KAAA;+GATY,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;mGAAX,WAAW,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;4FAAX,WAAW,EAAA,UAAA,EAAA,CAAA;kBAHvB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AACnB,iBAAA,CAAA;;;ACZD;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-cdk-directives-font-size.mjs","sources":["../../../projects/cdk/directives/font-size/font-size.directive.ts","../../../projects/cdk/directives/font-size/taiga-ui-cdk-directives-font-size.ts"],"sourcesContent":["import {isPlatformBrowser} from '@angular/common';\nimport {DestroyRef, Directive, inject, InjectionToken, PLATFORM_ID} from '@angular/core';\nimport {WA_WINDOW} from '@ng-web-apis/common';\nimport {EMPTY_FUNCTION} from '@taiga-ui/cdk/constants';\nimport {tuiFontSizeWatcher} from '@taiga-ui/cdk/utils/miscellaneous';\n\nexport const TUI_FONT_SIZE_HANDLER = new InjectionToken<(size: number) => void>(\n ngDevMode ? 'TUI_FONT_SIZE_HANDLER' : '',\n);\n\n@Directive({\n standalone: true,\n})\nexport class TuiFontSize {\n private readonly handler = inject(TUI_FONT_SIZE_HANDLER, {optional: true});\n protected readonly nothing = inject(DestroyRef).onDestroy(\n this.handler &&\n isPlatformBrowser(inject(PLATFORM_ID)) &&\n typeof ResizeObserver !== 'undefined'\n ? tuiFontSizeWatcher(this.handler, inject(WA_WINDOW))\n : EMPTY_FUNCTION,\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;AAMa,MAAA,qBAAqB,GAAG,IAAI,cAAc,CACnD,SAAS,GAAG,uBAAuB,GAAG,EAAE;MAM/B,WAAW,CAAA;AAHxB,IAAA,WAAA,GAAA;QAIqB,IAAO,CAAA,OAAA,GAAG,MAAM,CAAC,qBAAqB,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;QACvD,IAAO,CAAA,OAAA,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CACrD,IAAI,CAAC,OAAO;AACR,YAAA,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YACtC,OAAO,cAAc,KAAK;cACxB,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC;cAClD,cAAc,CACvB;AACJ;+GATY,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAX,WAAW,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAX,WAAW,EAAA,UAAA,EAAA,CAAA;kBAHvB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AACnB,iBAAA;;;ACZD;;AAEG;;;;"}
@@ -10,10 +10,10 @@ class TuiHighDpi {
10
10
  this.ref = inject(WA_WINDOW).devicePixelRatio > 1 &&
11
11
  inject(ViewContainerRef).createEmbeddedView(inject(TemplateRef));
12
12
  }
13
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiHighDpi, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
14
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiHighDpi, isStandalone: true, selector: "[tuiHighDpi]", ngImport: i0 }); }
13
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHighDpi, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
14
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiHighDpi, isStandalone: true, selector: "[tuiHighDpi]", ngImport: i0 }); }
15
15
  }
16
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiHighDpi, decorators: [{
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHighDpi, decorators: [{
17
17
  type: Directive,
18
18
  args: [{
19
19
  standalone: true,
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-directives-high-dpi.mjs","sources":["../../../projects/cdk/directives/high-dpi/high-dpi.directive.ts","../../../projects/cdk/directives/high-dpi/taiga-ui-cdk-directives-high-dpi.ts"],"sourcesContent":["import {Directive, inject, TemplateRef, ViewContainerRef} from '@angular/core';\nimport {WA_WINDOW} from '@ng-web-apis/common';\n\n/**\n * Only adds current content if user has High DPI display\n */\n@Directive({\n standalone: true,\n selector: '[tuiHighDpi]',\n})\nexport class TuiHighDpi {\n protected readonly ref =\n inject(WA_WINDOW).devicePixelRatio > 1 &&\n inject(ViewContainerRef).createEmbeddedView(inject(TemplateRef));\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAGA;;AAEG;AACH,MAIa,UAAU,CAAA;AAJvB,IAAA,WAAA,GAAA;QAKuB,IAAG,CAAA,GAAA,GAClB,MAAM,CAAC,SAAS,CAAC,CAAC,gBAAgB,GAAG,CAAC;YACtC,MAAM,CAAC,gBAAgB,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;AACxE,KAAA;+GAJY,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;mGAAV,UAAU,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;4FAAV,UAAU,EAAA,UAAA,EAAA,CAAA;kBAJtB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,cAAc;AAC3B,iBAAA,CAAA;;;ACTD;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-cdk-directives-high-dpi.mjs","sources":["../../../projects/cdk/directives/high-dpi/high-dpi.directive.ts","../../../projects/cdk/directives/high-dpi/taiga-ui-cdk-directives-high-dpi.ts"],"sourcesContent":["import {Directive, inject, TemplateRef, ViewContainerRef} from '@angular/core';\nimport {WA_WINDOW} from '@ng-web-apis/common';\n\n/**\n * Only adds current content if user has High DPI display\n */\n@Directive({\n standalone: true,\n selector: '[tuiHighDpi]',\n})\nexport class TuiHighDpi {\n protected readonly ref =\n inject(WA_WINDOW).devicePixelRatio > 1 &&\n inject(ViewContainerRef).createEmbeddedView(inject(TemplateRef));\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;AAGA;;AAEG;MAKU,UAAU,CAAA;AAJvB,IAAA,WAAA,GAAA;QAKuB,IAAG,CAAA,GAAA,GAClB,MAAM,CAAC,SAAS,CAAC,CAAC,gBAAgB,GAAG,CAAC;YACtC,MAAM,CAAC,gBAAgB,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;AACvE;+GAJY,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAV,UAAU,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAV,UAAU,EAAA,UAAA,EAAA,CAAA;kBAJtB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,cAAc;AAC3B,iBAAA;;;ACTD;;AAEG;;;;"}
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, NgZone, Injectable, Directive, Output } from '@angular/core';
2
+ import { inject, NgZone, Injectable, Output, Directive } from '@angular/core';
3
3
  import { toSignal } from '@angular/core/rxjs-interop';
4
4
  import { TUI_TRUE_HANDLER, TUI_FALSE_HANDLER } from '@taiga-ui/cdk/constants';
5
5
  import { tuiTypedFromEvent, tuiZoneOptimized, tuiWatch } from '@taiga-ui/cdk/observables';
@@ -21,12 +21,12 @@ class TuiHoveredService extends Observable {
21
21
  // Hello, Safari
22
22
  tuiTypedFromEvent(this.el, 'mouseout').pipe(filter(movedOut), map(TUI_FALSE_HANDLER))).pipe(distinctUntilChanged(), tuiZoneOptimized(this.zone));
23
23
  }
24
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiHoveredService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
25
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiHoveredService }); }
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHoveredService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
25
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHoveredService }); }
26
26
  }
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiHoveredService, decorators: [{
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHoveredService, decorators: [{
28
28
  type: Injectable
29
- }], ctorParameters: function () { return []; } });
29
+ }], ctorParameters: () => [] });
30
30
  function tuiHovered() {
31
31
  return toSignal(inject(TUI_IS_MOBILE) ? of(false) : inject(TuiHoveredService).pipe(tuiWatch()), {
32
32
  initialValue: false,
@@ -37,10 +37,10 @@ class TuiHovered {
37
37
  constructor() {
38
38
  this.tuiHoveredChange = inject(TuiHoveredService);
39
39
  }
40
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiHovered, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
41
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiHovered, isStandalone: true, selector: "[tuiHoveredChange]", outputs: { tuiHoveredChange: "tuiHoveredChange" }, providers: [TuiHoveredService], ngImport: i0 }); }
40
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHovered, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
41
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiHovered, isStandalone: true, selector: "[tuiHoveredChange]", outputs: { tuiHoveredChange: "tuiHoveredChange" }, providers: [TuiHoveredService], ngImport: i0 }); }
42
42
  }
43
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiHovered, decorators: [{
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiHovered, decorators: [{
44
44
  type: Directive,
45
45
  args: [{
46
46
  standalone: true,
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-directives-hovered.mjs","sources":["../../../projects/cdk/directives/hovered/hovered.service.ts","../../../projects/cdk/directives/hovered/hovered.directive.ts","../../../projects/cdk/directives/hovered/taiga-ui-cdk-directives-hovered.ts"],"sourcesContent":["import {inject, Injectable, NgZone, type Signal} from '@angular/core';\nimport {toSignal} from '@angular/core/rxjs-interop';\nimport {TUI_FALSE_HANDLER, TUI_TRUE_HANDLER} from '@taiga-ui/cdk/constants';\nimport {tuiTypedFromEvent, tuiWatch, tuiZoneOptimized} from '@taiga-ui/cdk/observables';\nimport {TUI_IS_MOBILE} from '@taiga-ui/cdk/tokens';\nimport {tuiInjectElement, tuiIsElement} from '@taiga-ui/cdk/utils';\nimport {distinctUntilChanged, filter, map, merge, Observable, of} from 'rxjs';\n\nfunction movedOut({currentTarget, relatedTarget}: MouseEvent): boolean {\n return (\n !tuiIsElement(relatedTarget) ||\n !tuiIsElement(currentTarget) ||\n !currentTarget.contains(relatedTarget)\n );\n}\n\n@Injectable()\nexport class TuiHoveredService extends Observable<boolean> {\n private readonly el = tuiInjectElement();\n private readonly zone = inject(NgZone);\n\n private readonly stream$ = merge(\n tuiTypedFromEvent(this.el, 'mouseenter').pipe(map(TUI_TRUE_HANDLER)),\n tuiTypedFromEvent(this.el, 'mouseleave').pipe(map(TUI_FALSE_HANDLER)),\n // Hello, Safari\n tuiTypedFromEvent(this.el, 'mouseout').pipe(\n filter(movedOut),\n map(TUI_FALSE_HANDLER),\n ),\n ).pipe(distinctUntilChanged(), tuiZoneOptimized(this.zone));\n\n constructor() {\n super((subscriber) => this.stream$.subscribe(subscriber));\n }\n}\n\nexport function tuiHovered(): Signal<boolean> {\n return toSignal(\n inject(TUI_IS_MOBILE) ? of(false) : inject(TuiHoveredService).pipe(tuiWatch()),\n {\n initialValue: false,\n },\n );\n}\n","import {Directive, inject, Output} from '@angular/core';\n\nimport {TuiHoveredService} from './hovered.service';\n\n@Directive({\n standalone: true,\n selector: '[tuiHoveredChange]',\n providers: [TuiHoveredService],\n})\nexport class TuiHovered {\n @Output()\n public readonly tuiHoveredChange = inject(TuiHoveredService);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;AAQA,SAAS,QAAQ,CAAC,EAAC,aAAa,EAAE,aAAa,EAAa,EAAA;AACxD,IAAA,QACI,CAAC,YAAY,CAAC,aAAa,CAAC;QAC5B,CAAC,YAAY,CAAC,aAAa,CAAC;AAC5B,QAAA,CAAC,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC,EACxC;AACN,CAAC;AAED,MACa,iBAAkB,SAAQ,UAAmB,CAAA;AActD,IAAA,WAAA,GAAA;AACI,QAAA,KAAK,CAAC,CAAC,UAAU,KAAK,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;QAd7C,IAAE,CAAA,EAAA,GAAG,gBAAgB,EAAE,CAAC;AACxB,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;AAEtB,QAAA,IAAA,CAAA,OAAO,GAAG,KAAK,CAC5B,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,EACpE,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;;AAErE,QAAA,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC,IAAI,CACvC,MAAM,CAAC,QAAQ,CAAC,EAChB,GAAG,CAAC,iBAAiB,CAAC,CACzB,CACJ,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;KAI3D;+GAhBQ,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA,EAAA;mHAAjB,iBAAiB,EAAA,CAAA,CAAA,EAAA;;4FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAD7B,UAAU;;SAoBK,UAAU,GAAA;IACtB,OAAO,QAAQ,CACX,MAAM,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,EAC9E;AACI,QAAA,YAAY,EAAE,KAAK;AACtB,KAAA,CACJ,CAAC;AACN;;ACvCA,MAKa,UAAU,CAAA;AALvB,IAAA,WAAA,GAAA;AAOoB,QAAA,IAAA,CAAA,gBAAgB,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAChE,KAAA;+GAHY,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;mGAAV,UAAU,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,OAAA,EAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,EAAA,SAAA,EAFR,CAAC,iBAAiB,CAAC,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;4FAErB,UAAU,EAAA,UAAA,EAAA,CAAA;kBALtB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,oBAAoB;oBAC9B,SAAS,EAAE,CAAC,iBAAiB,CAAC;AACjC,iBAAA,CAAA;8BAGmB,gBAAgB,EAAA,CAAA;sBAD/B,MAAM;;;ACVX;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-cdk-directives-hovered.mjs","sources":["../../../projects/cdk/directives/hovered/hovered.service.ts","../../../projects/cdk/directives/hovered/hovered.directive.ts","../../../projects/cdk/directives/hovered/taiga-ui-cdk-directives-hovered.ts"],"sourcesContent":["import {inject, Injectable, NgZone, type Signal} from '@angular/core';\nimport {toSignal} from '@angular/core/rxjs-interop';\nimport {TUI_FALSE_HANDLER, TUI_TRUE_HANDLER} from '@taiga-ui/cdk/constants';\nimport {tuiTypedFromEvent, tuiWatch, tuiZoneOptimized} from '@taiga-ui/cdk/observables';\nimport {TUI_IS_MOBILE} from '@taiga-ui/cdk/tokens';\nimport {tuiInjectElement, tuiIsElement} from '@taiga-ui/cdk/utils';\nimport {distinctUntilChanged, filter, map, merge, Observable, of} from 'rxjs';\n\nfunction movedOut({currentTarget, relatedTarget}: MouseEvent): boolean {\n return (\n !tuiIsElement(relatedTarget) ||\n !tuiIsElement(currentTarget) ||\n !currentTarget.contains(relatedTarget)\n );\n}\n\n@Injectable()\nexport class TuiHoveredService extends Observable<boolean> {\n private readonly el = tuiInjectElement();\n private readonly zone = inject(NgZone);\n\n private readonly stream$ = merge(\n tuiTypedFromEvent(this.el, 'mouseenter').pipe(map(TUI_TRUE_HANDLER)),\n tuiTypedFromEvent(this.el, 'mouseleave').pipe(map(TUI_FALSE_HANDLER)),\n // Hello, Safari\n tuiTypedFromEvent(this.el, 'mouseout').pipe(\n filter(movedOut),\n map(TUI_FALSE_HANDLER),\n ),\n ).pipe(distinctUntilChanged(), tuiZoneOptimized(this.zone));\n\n constructor() {\n super((subscriber) => this.stream$.subscribe(subscriber));\n }\n}\n\nexport function tuiHovered(): Signal<boolean> {\n return toSignal(\n inject(TUI_IS_MOBILE) ? of(false) : inject(TuiHoveredService).pipe(tuiWatch()),\n {\n initialValue: false,\n },\n );\n}\n","import {Directive, inject, Output} from '@angular/core';\n\nimport {TuiHoveredService} from './hovered.service';\n\n@Directive({\n standalone: true,\n selector: '[tuiHoveredChange]',\n providers: [TuiHoveredService],\n})\nexport class TuiHovered {\n @Output()\n public readonly tuiHoveredChange = inject(TuiHoveredService);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;AAQA,SAAS,QAAQ,CAAC,EAAC,aAAa,EAAE,aAAa,EAAa,EAAA;AACxD,IAAA,QACI,CAAC,YAAY,CAAC,aAAa,CAAC;QAC5B,CAAC,YAAY,CAAC,aAAa,CAAC;AAC5B,QAAA,CAAC,aAAa,CAAC,QAAQ,CAAC,aAAa,CAAC;AAE9C;AAGM,MAAO,iBAAkB,SAAQ,UAAmB,CAAA;AActD,IAAA,WAAA,GAAA;AACI,QAAA,KAAK,CAAC,CAAC,UAAU,KAAK,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAd5C,IAAE,CAAA,EAAA,GAAG,gBAAgB,EAAE;AACvB,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC;AAErB,QAAA,IAAA,CAAA,OAAO,GAAG,KAAK,CAC5B,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,EACpE,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;;AAErE,QAAA,iBAAiB,CAAC,IAAI,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC,IAAI,CACvC,MAAM,CAAC,QAAQ,CAAC,EAChB,GAAG,CAAC,iBAAiB,CAAC,CACzB,CACJ,CAAC,IAAI,CAAC,oBAAoB,EAAE,EAAE,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;;+GAZlD,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;mHAAjB,iBAAiB,EAAA,CAAA,CAAA;;4FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAD7B;;SAoBe,UAAU,GAAA;IACtB,OAAO,QAAQ,CACX,MAAM,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,EAC9E;AACI,QAAA,YAAY,EAAE,KAAK;AACtB,KAAA,CACJ;AACL;;MClCa,UAAU,CAAA;AALvB,IAAA,WAAA,GAAA;AAOoB,QAAA,IAAA,CAAA,gBAAgB,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAC/D;+GAHY,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAV,UAAU,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,OAAA,EAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,EAAA,SAAA,EAFR,CAAC,iBAAiB,CAAC,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAErB,UAAU,EAAA,UAAA,EAAA,CAAA;kBALtB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,oBAAoB;oBAC9B,SAAS,EAAE,CAAC,iBAAiB,CAAC;AACjC,iBAAA;8BAGmB,gBAAgB,EAAA,CAAA;sBAD/B;;;ACVL;;AAEG;;;;"}