@taiga-ui/cdk 4.52.0-canary.ece97e9 → 4.52.0-canary.efbd0d4

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 (266) hide show
  1. package/README.md +1 -1
  2. package/classes/control.d.ts +4 -6
  3. package/constants/used-icons.d.ts +2 -2
  4. package/constants/version.d.ts +1 -1
  5. package/constants/version.js +1 -1
  6. package/date-time/date-fillers.d.ts +5 -5
  7. package/date-time/day-range.d.ts +1 -1
  8. package/date-time/day.d.ts +3 -3
  9. package/date-time/types.d.ts +1 -7
  10. package/directives/active-zone/active-zone.directive.d.ts +0 -2
  11. package/directives/animated/animated.directive.d.ts +1 -3
  12. package/directives/animated/index.d.ts +0 -1
  13. package/directives/auto-focus/autofocus.directive.d.ts +2 -3
  14. package/directives/copy-processor/copy-processor.directive.d.ts +2 -2
  15. package/directives/hovered/hovered.directive.d.ts +1 -2
  16. package/directives/index.d.ts +0 -5
  17. package/directives/media/media.directive.d.ts +8 -12
  18. package/directives/native-validator/native-validator.directive.d.ts +2 -2
  19. package/directives/obscured/obscured.directive.d.ts +4 -4
  20. package/directives/pan/pan.directive.d.ts +1 -2
  21. package/directives/platform/platform.directive.d.ts +2 -2
  22. package/directives/resizer/resizer.directive.d.ts +3 -4
  23. package/directives/swipe/swipe.directive.d.ts +1 -2
  24. package/directives/transitioned/transitioned.directive.d.ts +1 -0
  25. package/directives/value-changes/value-changes.directive.d.ts +2 -2
  26. package/fesm2022/taiga-ui-cdk-classes.mjs +8 -20
  27. package/fesm2022/taiga-ui-cdk-classes.mjs.map +1 -1
  28. package/fesm2022/taiga-ui-cdk-constants.mjs +14 -3
  29. package/fesm2022/taiga-ui-cdk-constants.mjs.map +1 -1
  30. package/fesm2022/taiga-ui-cdk-date-time.mjs +23 -24
  31. package/fesm2022/taiga-ui-cdk-date-time.mjs.map +1 -1
  32. package/fesm2022/taiga-ui-cdk-directives-active-zone.mjs +12 -17
  33. package/fesm2022/taiga-ui-cdk-directives-active-zone.mjs.map +1 -1
  34. package/fesm2022/taiga-ui-cdk-directives-animated.mjs +23 -72
  35. package/fesm2022/taiga-ui-cdk-directives-animated.mjs.map +1 -1
  36. package/fesm2022/taiga-ui-cdk-directives-auto-focus.mjs +12 -14
  37. package/fesm2022/taiga-ui-cdk-directives-auto-focus.mjs.map +1 -1
  38. package/fesm2022/taiga-ui-cdk-directives-control.mjs +3 -4
  39. package/fesm2022/taiga-ui-cdk-directives-control.mjs.map +1 -1
  40. package/fesm2022/taiga-ui-cdk-directives-copy-processor.mjs +8 -11
  41. package/fesm2022/taiga-ui-cdk-directives-copy-processor.mjs.map +1 -1
  42. package/fesm2022/taiga-ui-cdk-directives-element.mjs +4 -5
  43. package/fesm2022/taiga-ui-cdk-directives-element.mjs.map +1 -1
  44. package/fesm2022/taiga-ui-cdk-directives-focus-trap.mjs +5 -8
  45. package/fesm2022/taiga-ui-cdk-directives-focus-trap.mjs.map +1 -1
  46. package/fesm2022/taiga-ui-cdk-directives-font-size.mjs +4 -7
  47. package/fesm2022/taiga-ui-cdk-directives-font-size.mjs.map +1 -1
  48. package/fesm2022/taiga-ui-cdk-directives-high-dpi.mjs +3 -4
  49. package/fesm2022/taiga-ui-cdk-directives-high-dpi.mjs.map +1 -1
  50. package/fesm2022/taiga-ui-cdk-directives-hovered.mjs +11 -14
  51. package/fesm2022/taiga-ui-cdk-directives-hovered.mjs.map +1 -1
  52. package/fesm2022/taiga-ui-cdk-directives-item.mjs +3 -4
  53. package/fesm2022/taiga-ui-cdk-directives-item.mjs.map +1 -1
  54. package/fesm2022/taiga-ui-cdk-directives-media.mjs +33 -58
  55. package/fesm2022/taiga-ui-cdk-directives-media.mjs.map +1 -1
  56. package/fesm2022/taiga-ui-cdk-directives-native-validator.mjs +9 -11
  57. package/fesm2022/taiga-ui-cdk-directives-native-validator.mjs.map +1 -1
  58. package/fesm2022/taiga-ui-cdk-directives-obscured.mjs +14 -26
  59. package/fesm2022/taiga-ui-cdk-directives-obscured.mjs.map +1 -1
  60. package/fesm2022/taiga-ui-cdk-directives-pan.mjs +10 -12
  61. package/fesm2022/taiga-ui-cdk-directives-pan.mjs.map +1 -1
  62. package/fesm2022/taiga-ui-cdk-directives-platform.mjs +9 -12
  63. package/fesm2022/taiga-ui-cdk-directives-platform.mjs.map +1 -1
  64. package/fesm2022/taiga-ui-cdk-directives-resizer.mjs +19 -23
  65. package/fesm2022/taiga-ui-cdk-directives-resizer.mjs.map +1 -1
  66. package/fesm2022/taiga-ui-cdk-directives-swipe.mjs +10 -12
  67. package/fesm2022/taiga-ui-cdk-directives-swipe.mjs.map +1 -1
  68. package/fesm2022/taiga-ui-cdk-directives-transitioned.mjs +8 -15
  69. package/fesm2022/taiga-ui-cdk-directives-transitioned.mjs.map +1 -1
  70. package/fesm2022/taiga-ui-cdk-directives-validator.mjs +4 -5
  71. package/fesm2022/taiga-ui-cdk-directives-validator.mjs.map +1 -1
  72. package/fesm2022/taiga-ui-cdk-directives-value-changes.mjs +8 -9
  73. package/fesm2022/taiga-ui-cdk-directives-value-changes.mjs.map +1 -1
  74. package/fesm2022/taiga-ui-cdk-directives-visual-viewport.mjs +5 -5
  75. package/fesm2022/taiga-ui-cdk-directives-visual-viewport.mjs.map +1 -1
  76. package/fesm2022/taiga-ui-cdk-directives-with-styles.mjs +3 -3
  77. package/fesm2022/taiga-ui-cdk-directives-zoom.mjs +8 -8
  78. package/fesm2022/taiga-ui-cdk-directives-zoom.mjs.map +1 -1
  79. package/fesm2022/taiga-ui-cdk-directives.mjs +0 -5
  80. package/fesm2022/taiga-ui-cdk-directives.mjs.map +1 -1
  81. package/fesm2022/taiga-ui-cdk-observables.mjs +2 -24
  82. package/fesm2022/taiga-ui-cdk-observables.mjs.map +1 -1
  83. package/fesm2022/taiga-ui-cdk-pipes-filter.mjs +3 -4
  84. package/fesm2022/taiga-ui-cdk-pipes-filter.mjs.map +1 -1
  85. package/fesm2022/taiga-ui-cdk-pipes-mapper.mjs +3 -4
  86. package/fesm2022/taiga-ui-cdk-pipes-mapper.mjs.map +1 -1
  87. package/fesm2022/taiga-ui-cdk-pipes-obfuscate.mjs +5 -5
  88. package/fesm2022/taiga-ui-cdk-pipes-obfuscate.mjs.map +1 -1
  89. package/fesm2022/taiga-ui-cdk-pipes.mjs +0 -6
  90. package/fesm2022/taiga-ui-cdk-pipes.mjs.map +1 -1
  91. package/fesm2022/taiga-ui-cdk-portals.mjs +16 -16
  92. package/fesm2022/taiga-ui-cdk-portals.mjs.map +1 -1
  93. package/fesm2022/taiga-ui-cdk-tokens.mjs +14 -47
  94. package/fesm2022/taiga-ui-cdk-tokens.mjs.map +1 -1
  95. package/fesm2022/taiga-ui-cdk-utils-browser.mjs +2 -3
  96. package/fesm2022/taiga-ui-cdk-utils-browser.mjs.map +1 -1
  97. package/fesm2022/taiga-ui-cdk-utils-di.mjs +45 -4
  98. package/fesm2022/taiga-ui-cdk-utils-di.mjs.map +1 -1
  99. package/fesm2022/taiga-ui-cdk-utils-dom.mjs +2 -74
  100. package/fesm2022/taiga-ui-cdk-utils-dom.mjs.map +1 -1
  101. package/fesm2022/taiga-ui-cdk-utils-focus.mjs +22 -38
  102. package/fesm2022/taiga-ui-cdk-utils-focus.mjs.map +1 -1
  103. package/fesm2022/taiga-ui-cdk-utils-math.mjs +1 -12
  104. package/fesm2022/taiga-ui-cdk-utils-math.mjs.map +1 -1
  105. package/fesm2022/taiga-ui-cdk-utils-miscellaneous.mjs +45 -119
  106. package/fesm2022/taiga-ui-cdk-utils-miscellaneous.mjs.map +1 -1
  107. package/fesm2022/taiga-ui-cdk-utils.mjs +0 -1
  108. package/fesm2022/taiga-ui-cdk-utils.mjs.map +1 -1
  109. package/fesm2022/taiga-ui-cdk.mjs +0 -1
  110. package/fesm2022/taiga-ui-cdk.mjs.map +1 -1
  111. package/index.d.ts +0 -1
  112. package/observables/index.d.ts +0 -2
  113. package/package.json +19 -69
  114. package/pipes/index.d.ts +0 -6
  115. package/pipes/obfuscate/obfuscate.options.d.ts +1 -1
  116. package/portals/portal.d.ts +1 -2
  117. package/schematics/index.d.ts +1 -0
  118. package/schematics/index.js +1 -0
  119. package/schematics/index.js.map +1 -1
  120. package/schematics/ng-add/constants/versions.d.ts +1 -1
  121. package/schematics/ng-add/steps/add-taiga-modules.js +0 -15
  122. package/schematics/ng-add/steps/add-taiga-modules.js.map +1 -1
  123. package/schematics/ng-update/interfaces/html-comment.d.ts +1 -1
  124. package/schematics/ng-update/interfaces/removable-input.d.ts +1 -1
  125. package/schematics/ng-update/interfaces/replacement-attribute-to-directive.d.ts +1 -1
  126. package/schematics/ng-update/interfaces/replacement-attribute-value.d.ts +1 -1
  127. package/schematics/ng-update/interfaces/replacement-attribute.d.ts +1 -1
  128. package/schematics/ng-update/interfaces/replacement-tag.d.ts +1 -1
  129. package/schematics/ng-update/v4/migrate-css-vars/palette.d.ts +4 -4
  130. package/schematics/ng-update/v4/migrate-css-vars/palette.js +4 -4
  131. package/schematics/ng-update/v4/migrate-css-vars/palette.js.map +1 -1
  132. package/schematics/ng-update/v4/steps/migrate-templates.d.ts +2 -2
  133. package/schematics/ng-update/v4/steps/styles/migrate-text-mixins.js +13 -13
  134. package/schematics/ng-update/v4/steps/styles/migrate-text-mixins.js.map +1 -1
  135. package/schematics/ng-update/v5/index.js +2 -0
  136. package/schematics/ng-update/v5/index.js.map +1 -1
  137. package/schematics/ng-update/v5/steps/constants/attrs-to-replace.d.ts +2 -0
  138. package/schematics/ng-update/v5/steps/constants/attrs-to-replace.js +22 -0
  139. package/schematics/ng-update/v5/steps/constants/attrs-to-replace.js.map +1 -0
  140. package/schematics/ng-update/v5/steps/constants/functions.js +1 -6
  141. package/schematics/ng-update/v5/steps/constants/functions.js.map +1 -1
  142. package/schematics/ng-update/v5/steps/migrate-css-variables.d.ts +3 -0
  143. package/schematics/ng-update/v5/steps/migrate-css-variables.js +30 -0
  144. package/schematics/ng-update/v5/steps/migrate-css-variables.js.map +1 -0
  145. package/schematics/ng-update/v5/steps/migrate-templates.d.ts +2 -2
  146. package/schematics/ng-update/v5/steps/migrate-templates.js +6 -0
  147. package/schematics/ng-update/v5/steps/migrate-templates.js.map +1 -1
  148. package/schematics/ng-update/v5/steps/templates/migrate-avatar.d.ts +8 -0
  149. package/schematics/ng-update/v5/steps/templates/migrate-avatar.js +111 -0
  150. package/schematics/ng-update/v5/steps/templates/migrate-avatar.js.map +1 -0
  151. package/schematics/ng-update/v5/steps/templates/migrate-notification.d.ts +8 -0
  152. package/schematics/ng-update/v5/steps/templates/migrate-notification.js +45 -0
  153. package/schematics/ng-update/v5/steps/templates/migrate-notification.js.map +1 -0
  154. package/schematics/utils/run-migration.d.ts +2 -2
  155. package/schematics/utils/run-migration.js +4 -3
  156. package/schematics/utils/run-migration.js.map +1 -1
  157. package/schematics/utils/templates/elements.d.ts +4 -1
  158. package/schematics/utils/templates/elements.js.map +1 -1
  159. package/schematics/utils/templates/ng-component-input-manipulations.d.ts +3 -3
  160. package/tokens/environment.d.ts +0 -13
  161. package/tokens/index.d.ts +0 -2
  162. package/tokens/removed-element.d.ts +0 -3
  163. package/types/index.d.ts +0 -2
  164. package/utils/di/index.d.ts +3 -0
  165. package/utils/dom/index.d.ts +0 -6
  166. package/utils/focus/get-closest-focusable.d.ts +1 -6
  167. package/utils/focus/index.d.ts +4 -6
  168. package/utils/focus/{is-native-keyboard-focusable.d.ts → is-focusable.d.ts} +1 -1
  169. package/utils/index.d.ts +0 -1
  170. package/utils/math/index.d.ts +0 -2
  171. package/utils/miscellaneous/generate-id.d.ts +1 -0
  172. package/utils/miscellaneous/index.d.ts +2 -10
  173. package/utils/miscellaneous/sanitize-text.d.ts +23 -0
  174. package/directives/animated/animated-parent.directive.d.ts +0 -10
  175. package/directives/click-outside/click-outside.directive.d.ts +0 -14
  176. package/directives/click-outside/index.d.ts +0 -1
  177. package/directives/droppable/droppable.directive.d.ts +0 -8
  178. package/directives/droppable/index.d.ts +0 -1
  179. package/directives/let/index.d.ts +0 -2
  180. package/directives/let/let-context.d.ts +0 -11
  181. package/directives/let/let.directive.d.ts +0 -18
  182. package/directives/popover/index.d.ts +0 -1
  183. package/directives/popover/popover.directive.d.ts +0 -14
  184. package/directives/repeat-times/index.d.ts +0 -1
  185. package/directives/repeat-times/repeat-times.directive.d.ts +0 -22
  186. package/fesm2022/taiga-ui-cdk-directives-click-outside.mjs +0 -39
  187. package/fesm2022/taiga-ui-cdk-directives-click-outside.mjs.map +0 -1
  188. package/fesm2022/taiga-ui-cdk-directives-droppable.mjs +0 -37
  189. package/fesm2022/taiga-ui-cdk-directives-droppable.mjs.map +0 -1
  190. package/fesm2022/taiga-ui-cdk-directives-let.mjs +0 -53
  191. package/fesm2022/taiga-ui-cdk-directives-let.mjs.map +0 -1
  192. package/fesm2022/taiga-ui-cdk-directives-popover.mjs +0 -32
  193. package/fesm2022/taiga-ui-cdk-directives-popover.mjs.map +0 -1
  194. package/fesm2022/taiga-ui-cdk-directives-repeat-times.mjs +0 -61
  195. package/fesm2022/taiga-ui-cdk-directives-repeat-times.mjs.map +0 -1
  196. package/fesm2022/taiga-ui-cdk-pipes-animation.mjs +0 -33
  197. package/fesm2022/taiga-ui-cdk-pipes-animation.mjs.map +0 -1
  198. package/fesm2022/taiga-ui-cdk-pipes-is-present.mjs +0 -25
  199. package/fesm2022/taiga-ui-cdk-pipes-is-present.mjs.map +0 -1
  200. package/fesm2022/taiga-ui-cdk-pipes-keys.mjs +0 -24
  201. package/fesm2022/taiga-ui-cdk-pipes-keys.mjs.map +0 -1
  202. package/fesm2022/taiga-ui-cdk-pipes-repeat-times.mjs +0 -25
  203. package/fesm2022/taiga-ui-cdk-pipes-repeat-times.mjs.map +0 -1
  204. package/fesm2022/taiga-ui-cdk-pipes-replace.mjs +0 -26
  205. package/fesm2022/taiga-ui-cdk-pipes-replace.mjs.map +0 -1
  206. package/fesm2022/taiga-ui-cdk-pipes-to-array.mjs +0 -24
  207. package/fesm2022/taiga-ui-cdk-pipes-to-array.mjs.map +0 -1
  208. package/fesm2022/taiga-ui-cdk-services.mjs +0 -151
  209. package/fesm2022/taiga-ui-cdk-services.mjs.map +0 -1
  210. package/fesm2022/taiga-ui-cdk-utils-color.mjs +0 -195
  211. package/fesm2022/taiga-ui-cdk-utils-color.mjs.map +0 -1
  212. package/observables/must-be-present.d.ts +0 -5
  213. package/observables/query-list-observable.d.ts +0 -6
  214. package/pipes/animation/animation.pipe.d.ts +0 -13
  215. package/pipes/animation/index.d.ts +0 -1
  216. package/pipes/is-present/index.d.ts +0 -1
  217. package/pipes/is-present/is-present.pipe.d.ts +0 -7
  218. package/pipes/keys/index.d.ts +0 -1
  219. package/pipes/keys/keys.pipe.d.ts +0 -7
  220. package/pipes/repeat-times/index.d.ts +0 -7
  221. package/pipes/replace/index.d.ts +0 -1
  222. package/pipes/replace/replace.pipe.d.ts +0 -7
  223. package/pipes/to-array/index.d.ts +0 -1
  224. package/pipes/to-array/to-array.pipe.d.ts +0 -7
  225. package/services/id.service.d.ts +0 -8
  226. package/services/index.d.ts +0 -4
  227. package/services/popover.service.d.ts +0 -25
  228. package/services/scroll.service.d.ts +0 -13
  229. package/services/theme-color.service.d.ts +0 -18
  230. package/tokens/base-href.d.ts +0 -2
  231. package/tokens/range.d.ts +0 -5
  232. package/types/safe-html.d.ts +0 -2
  233. package/types/values-of.d.ts +0 -1
  234. package/utils/color/get-gradient-data.d.ts +0 -1
  235. package/utils/color/hex-to-rgb.d.ts +0 -1
  236. package/utils/color/hex-to-rgba.d.ts +0 -3
  237. package/utils/color/hsv-to-rgb.d.ts +0 -4
  238. package/utils/color/index.d.ts +0 -9
  239. package/utils/color/parse-color.d.ts +0 -1
  240. package/utils/color/parse-gradient.d.ts +0 -10
  241. package/utils/color/rgb-to-hex.d.ts +0 -1
  242. package/utils/color/rgb-to-hsv.d.ts +0 -1
  243. package/utils/color/rgba-to-hex.d.ts +0 -2
  244. package/utils/dom/get-element-point.d.ts +0 -2
  245. package/utils/dom/is-current-target.d.ts +0 -1
  246. package/utils/dom/is-inside-iframe.d.ts +0 -4
  247. package/utils/dom/is-node-in.d.ts +0 -8
  248. package/utils/dom/retarget-boundary-crossing.d.ts +0 -1
  249. package/utils/dom/value-binding.d.ts +0 -3
  250. package/utils/focus/blur-native-focused.d.ts +0 -4
  251. package/utils/focus/is-native-mouse-focusable.d.ts +0 -1
  252. package/utils/math/to-integer.d.ts +0 -1
  253. package/utils/math/to-radians.d.ts +0 -4
  254. package/utils/miscellaneous/change-date-separator.d.ts +0 -1
  255. package/utils/miscellaneous/create-token.d.ts +0 -9
  256. package/utils/miscellaneous/flat-length.d.ts +0 -6
  257. package/utils/miscellaneous/get-original-array-from-query-list.d.ts +0 -8
  258. package/utils/miscellaneous/is-falsy.d.ts +0 -1
  259. package/utils/miscellaneous/is-valid-url.d.ts +0 -4
  260. package/utils/miscellaneous/uniq-by.d.ts +0 -1
  261. /package/utils/{miscellaneous → di}/directive-binding.d.ts +0 -0
  262. /package/utils/{miscellaneous → di}/provide-options.d.ts +0 -0
  263. /package/utils/{miscellaneous → di}/provide.d.ts +0 -0
  264. /package/utils/focus/{get-native-focused.d.ts → get-focused.d.ts} +0 -0
  265. /package/utils/focus/{is-native-focused-in.d.ts → is-focused-in.d.ts} +0 -0
  266. /package/utils/focus/{is-native-focused.d.ts → is-focused.d.ts} +0 -0
@@ -1,16 +1,15 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Directive, inject, EventEmitter, Output, Input } from '@angular/core';
2
+ import { Directive, inject, input, output } from '@angular/core';
3
3
  import { TuiElement } from '@taiga-ui/cdk/directives/element';
4
4
  import { tuiPx } from '@taiga-ui/cdk/utils/miscellaneous';
5
5
 
6
6
  class TuiResizable extends TuiElement {
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiResizable, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
8
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiResizable, isStandalone: true, selector: "[tuiResizable]", usesInheritance: true, ngImport: i0 }); }
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiResizable, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
8
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.17", type: TuiResizable, isStandalone: true, selector: "[tuiResizable]", usesInheritance: true, ngImport: i0 }); }
9
9
  }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiResizable, decorators: [{
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiResizable, decorators: [{
11
11
  type: Directive,
12
12
  args: [{
13
- standalone: true,
14
13
  selector: '[tuiResizable]',
15
14
  }]
16
15
  }] });
@@ -22,17 +21,18 @@ class TuiResizer {
22
21
  this.y = NaN;
23
22
  this.width = 0;
24
23
  this.height = 0;
25
- this.tuiResizer = [0, 0];
26
- this.tuiSizeChange = new EventEmitter();
24
+ this.tuiResizer = input([0, 0]);
25
+ this.tuiSizeChange = output();
27
26
  }
28
27
  get cursor() {
29
- if (!this.tuiResizer[0]) {
28
+ const tuiResizer = this.tuiResizer();
29
+ if (!tuiResizer[0]) {
30
30
  return 'ns-resize';
31
31
  }
32
- if (!this.tuiResizer[1]) {
32
+ if (!tuiResizer[1]) {
33
33
  return 'ew-resize';
34
34
  }
35
- if (this.tuiResizer[0] * this.tuiResizer[1] > 0) {
35
+ if (tuiResizer[0] * tuiResizer[1] > 0) {
36
36
  return 'nwse-resize';
37
37
  }
38
38
  return 'nesw-resize';
@@ -55,29 +55,29 @@ class TuiResizer {
55
55
  this.x = NaN;
56
56
  }
57
57
  onMove(x, y) {
58
+ const tuiResizer = this.tuiResizer();
58
59
  if (Number.isNaN(this.x)) {
59
60
  return;
60
61
  }
61
62
  const { style } = this.resizable.nativeElement;
62
63
  const size = [
63
- this.width + this.tuiResizer[0] * (x - this.x),
64
- this.height + this.tuiResizer[1] * (y - this.y),
64
+ this.width + tuiResizer[0] * (x - this.x),
65
+ this.height + tuiResizer[1] * (y - this.y),
65
66
  ];
66
- if (this.tuiResizer[0]) {
67
+ if (tuiResizer[0]) {
67
68
  style.width = tuiPx(size[0]);
68
69
  }
69
- if (this.tuiResizer[1]) {
70
+ if (tuiResizer[1]) {
70
71
  style.height = tuiPx(size[1]);
71
72
  }
72
73
  this.tuiSizeChange.emit(size);
73
74
  }
74
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiResizer, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
75
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiResizer, isStandalone: true, selector: "[tuiResizer]", inputs: { tuiResizer: "tuiResizer" }, outputs: { tuiSizeChange: "tuiSizeChange" }, host: { listeners: { "pointerdown.zoneless.prevent": "onPointerDown($event.x, $event.y)", "document:pointermove.zoneless": "onPointerMove($event)", "document:pointerup.zoneless": "onPointerUp()" }, properties: { "style.cursor": "cursor", "style.touchAction": "\"none\"" } }, ngImport: i0 }); }
75
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiResizer, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
76
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.17", type: TuiResizer, isStandalone: true, selector: "[tuiResizer]", inputs: { tuiResizer: { classPropertyName: "tuiResizer", publicName: "tuiResizer", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { tuiSizeChange: "tuiSizeChange" }, host: { listeners: { "pointerdown.zoneless.prevent": "onPointerDown($event.x, $event.y)", "document:pointermove.zoneless": "onPointerMove($event)", "document:pointerup.zoneless": "onPointerUp()" }, properties: { "style.cursor": "cursor", "style.touchAction": "\"none\"" } }, ngImport: i0 }); }
76
77
  }
77
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiResizer, decorators: [{
78
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiResizer, decorators: [{
78
79
  type: Directive,
79
80
  args: [{
80
- standalone: true,
81
81
  selector: '[tuiResizer]',
82
82
  host: {
83
83
  '[style.cursor]': 'cursor',
@@ -87,11 +87,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
87
87
  '(document:pointerup.zoneless)': 'onPointerUp()',
88
88
  },
89
89
  }]
90
- }], propDecorators: { tuiResizer: [{
91
- type: Input
92
- }], tuiSizeChange: [{
93
- type: Output
94
- }] } });
90
+ }] });
95
91
 
96
92
  /**
97
93
  * Generated bundle index. Do not edit.
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-directives-resizer.mjs","sources":["../../../projects/cdk/directives/resizer/resizable.directive.ts","../../../projects/cdk/directives/resizer/resizer.directive.ts","../../../projects/cdk/directives/resizer/taiga-ui-cdk-directives-resizer.ts"],"sourcesContent":["import {Directive} from '@angular/core';\nimport {TuiElement} from '@taiga-ui/cdk/directives/element';\n\n@Directive({\n standalone: true,\n selector: '[tuiResizable]',\n})\nexport class TuiResizable extends TuiElement {}\n","import {\n Directive,\n type ElementRef,\n EventEmitter,\n inject,\n Input,\n Output,\n} from '@angular/core';\nimport {tuiPx} from '@taiga-ui/cdk/utils/miscellaneous';\n\nimport {TuiResizable} from './resizable.directive';\n\n@Directive({\n standalone: true,\n selector: '[tuiResizer]',\n host: {\n '[style.cursor]': 'cursor',\n '[style.touchAction]': '\"none\"',\n '(pointerdown.zoneless.prevent)': 'onPointerDown($event.x, $event.y)',\n '(document:pointermove.zoneless)': 'onPointerMove($event)',\n '(document:pointerup.zoneless)': 'onPointerUp()',\n },\n})\nexport class TuiResizer {\n private readonly resizable: ElementRef<HTMLElement> = inject(TuiResizable);\n\n protected x = NaN;\n protected y = NaN;\n protected width = 0;\n protected height = 0;\n\n @Input()\n public tuiResizer: readonly [x: number, y: number] = [0, 0];\n\n @Output()\n public readonly tuiSizeChange = new EventEmitter<readonly [x: number, y: number]>();\n\n protected get cursor(): string {\n if (!this.tuiResizer[0]) {\n return 'ns-resize';\n }\n\n if (!this.tuiResizer[1]) {\n return 'ew-resize';\n }\n\n if (this.tuiResizer[0] * this.tuiResizer[1] > 0) {\n return 'nwse-resize';\n }\n\n return 'nesw-resize';\n }\n\n protected onPointerDown(x: number, y: number): void {\n this.x = x;\n this.y = y;\n this.width = this.resizable.nativeElement.clientWidth;\n this.height = this.resizable.nativeElement.clientHeight;\n }\n\n protected onPointerMove({x, y, buttons}: PointerEvent): void {\n if (!buttons) {\n this.onPointerUp();\n } else {\n this.onMove(x, y);\n }\n }\n\n protected onPointerUp(): void {\n this.x = NaN;\n }\n\n protected onMove(x: number, y: number): void {\n if (Number.isNaN(this.x)) {\n return;\n }\n\n const {style} = this.resizable.nativeElement;\n const size = [\n this.width + this.tuiResizer[0] * (x - this.x),\n this.height + this.tuiResizer[1] * (y - this.y),\n ] as const;\n\n if (this.tuiResizer[0]) {\n style.width = tuiPx(size[0]);\n }\n\n if (this.tuiResizer[1]) {\n style.height = tuiPx(size[1]);\n }\n\n this.tuiSizeChange.emit(size);\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-resizer.mjs","sources":["../../../projects/cdk/directives/resizer/resizable.directive.ts","../../../projects/cdk/directives/resizer/resizer.directive.ts","../../../projects/cdk/directives/resizer/taiga-ui-cdk-directives-resizer.ts"],"sourcesContent":["import {Directive} from '@angular/core';\nimport {TuiElement} from '@taiga-ui/cdk/directives/element';\n\n@Directive({\n selector: '[tuiResizable]',\n})\nexport class TuiResizable extends TuiElement {}\n","import {Directive, type ElementRef, inject, input, output} from '@angular/core';\nimport {tuiPx} from '@taiga-ui/cdk/utils/miscellaneous';\n\nimport {TuiResizable} from './resizable.directive';\n\n@Directive({\n selector: '[tuiResizer]',\n host: {\n '[style.cursor]': 'cursor',\n '[style.touchAction]': '\"none\"',\n '(pointerdown.zoneless.prevent)': 'onPointerDown($event.x, $event.y)',\n '(document:pointermove.zoneless)': 'onPointerMove($event)',\n '(document:pointerup.zoneless)': 'onPointerUp()',\n },\n})\nexport class TuiResizer {\n private readonly resizable: ElementRef<HTMLElement> = inject(TuiResizable);\n\n protected x = NaN;\n protected y = NaN;\n protected width = 0;\n protected height = 0;\n\n public readonly tuiResizer = input<readonly [x: number, y: number]>([0, 0]);\n\n public readonly tuiSizeChange = output<readonly [x: number, y: number]>();\n\n protected get cursor(): string {\n const tuiResizer = this.tuiResizer();\n\n if (!tuiResizer[0]) {\n return 'ns-resize';\n }\n\n if (!tuiResizer[1]) {\n return 'ew-resize';\n }\n\n if (tuiResizer[0] * tuiResizer[1] > 0) {\n return 'nwse-resize';\n }\n\n return 'nesw-resize';\n }\n\n protected onPointerDown(x: number, y: number): void {\n this.x = x;\n this.y = y;\n this.width = this.resizable.nativeElement.clientWidth;\n this.height = this.resizable.nativeElement.clientHeight;\n }\n\n protected onPointerMove({x, y, buttons}: PointerEvent): void {\n if (!buttons) {\n this.onPointerUp();\n } else {\n this.onMove(x, y);\n }\n }\n\n protected onPointerUp(): void {\n this.x = NaN;\n }\n\n protected onMove(x: number, y: number): void {\n const tuiResizer = this.tuiResizer();\n\n if (Number.isNaN(this.x)) {\n return;\n }\n\n const {style} = this.resizable.nativeElement;\n const size = [\n this.width + tuiResizer[0] * (x - this.x),\n this.height + tuiResizer[1] * (y - this.y),\n ] as const;\n\n if (tuiResizer[0]) {\n style.width = tuiPx(size[0]);\n }\n\n if (tuiResizer[1]) {\n style.height = tuiPx(size[1]);\n }\n\n this.tuiSizeChange.emit(size);\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import * as i0 from '@angular/core';
2
- import { InjectionToken, inject, Injectable, Output, Directive } from '@angular/core';
2
+ import { InjectionToken, inject, Injectable, Directive } from '@angular/core';
3
+ import { outputFromObservable } from '@angular/core/rxjs-interop';
3
4
  import { DOCUMENT } from '@angular/common';
4
5
  import { tuiTypedFromEvent } from '@taiga-ui/cdk/observables';
5
6
  import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
@@ -41,10 +42,10 @@ class TuiSwipeService extends Observable {
41
42
  }), filter(tuiIsPresent))
42
43
  .subscribe(subscriber));
43
44
  }
44
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiSwipeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
45
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiSwipeService }); }
45
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiSwipeService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
46
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiSwipeService }); }
46
47
  }
47
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiSwipeService, decorators: [{
48
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiSwipeService, decorators: [{
48
49
  type: Injectable
49
50
  }], ctorParameters: () => [] });
50
51
  function tuiGetSwipeDirection(deltaX, deltaY) {
@@ -56,21 +57,18 @@ function tuiGetSwipeDirection(deltaX, deltaY) {
56
57
 
57
58
  class TuiSwipe {
58
59
  constructor() {
59
- this.tuiSwipe = inject(TuiSwipeService);
60
+ this.tuiSwipe = outputFromObservable(inject(TuiSwipeService));
60
61
  }
61
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiSwipe, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
62
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiSwipe, isStandalone: true, selector: "[tuiSwipe]", outputs: { tuiSwipe: "tuiSwipe" }, providers: [TuiSwipeService], ngImport: i0 }); }
62
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiSwipe, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
63
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.17", type: TuiSwipe, isStandalone: true, selector: "[tuiSwipe]", outputs: { tuiSwipe: "tuiSwipe" }, providers: [TuiSwipeService], ngImport: i0 }); }
63
64
  }
64
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiSwipe, decorators: [{
65
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiSwipe, decorators: [{
65
66
  type: Directive,
66
67
  args: [{
67
- standalone: true,
68
68
  selector: '[tuiSwipe]',
69
69
  providers: [TuiSwipeService],
70
70
  }]
71
- }], propDecorators: { tuiSwipe: [{
72
- type: Output
73
- }] } });
71
+ }] });
74
72
 
75
73
  /**
76
74
  * Generated bundle index. Do not edit.
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-directives-swipe.mjs","sources":["../../../projects/cdk/directives/swipe/swipe.options.ts","../../../projects/cdk/directives/swipe/swipe.service.ts","../../../projects/cdk/directives/swipe/swipe.directive.ts","../../../projects/cdk/directives/swipe/taiga-ui-cdk-directives-swipe.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\n\nimport {type TuiSwipeOptions} from './swipe.types';\n\nexport const TUI_SWIPE_OPTIONS = new InjectionToken<TuiSwipeOptions>(\n ngDevMode ? 'TUI_SWIPE_OPTIONS' : '',\n {\n factory: () => ({\n timeout: 500,\n threshold: 30,\n }),\n },\n);\n","import {DOCUMENT} from '@angular/common';\nimport {inject, Injectable} from '@angular/core';\nimport {tuiTypedFromEvent} from '@taiga-ui/cdk/observables';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiIsPresent} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {filter, map, merge, Observable, pairwise} from 'rxjs';\n\nimport {TUI_SWIPE_OPTIONS} from './swipe.options';\nimport {type TuiSwipeDirection, type TuiSwipeEvent} from './swipe.types';\n\n@Injectable()\nexport class TuiSwipeService extends Observable<TuiSwipeEvent> {\n constructor() {\n const doc = inject(DOCUMENT);\n const el = tuiInjectElement();\n const {timeout, threshold} = inject(TUI_SWIPE_OPTIONS);\n\n super((subscriber) =>\n merge(\n tuiTypedFromEvent(el, 'touchstart', {passive: true}),\n tuiTypedFromEvent(doc, 'touchend'),\n )\n .pipe(\n pairwise(),\n filter(\n ([first, second]) =>\n !!first.touches.length &&\n first.touches[0]?.identifier ===\n second.changedTouches[0]?.identifier,\n ),\n map(([start, end]) => {\n const startX = start.touches[0]?.clientX ?? 0;\n const startY = start.touches[0]?.clientY ?? 0;\n const endX = end.changedTouches[0]?.clientX ?? 0;\n const endY = end.changedTouches[0]?.clientY ?? 0;\n\n const distanceX = startX - endX;\n const distanceY = startY - endY;\n const duration = end.timeStamp - start.timeStamp;\n\n if (\n (Math.abs(distanceX) > threshold ||\n Math.abs(distanceY) > threshold) &&\n duration < timeout\n ) {\n return {\n direction: tuiGetSwipeDirection(distanceX, distanceY),\n events: [start, end] as [TouchEvent, TouchEvent],\n };\n }\n\n return null;\n }),\n filter(tuiIsPresent),\n )\n .subscribe(subscriber),\n );\n }\n}\n\nfunction tuiGetSwipeDirection(deltaX: number, deltaY: number): TuiSwipeDirection {\n if (Math.abs(deltaY) > Math.abs(deltaX)) {\n return deltaY > 0 ? 'top' : 'bottom';\n }\n\n return deltaX > 0 ? 'left' : 'right';\n}\n","import {Directive, inject, Output} from '@angular/core';\n\nimport {TuiSwipeService} from './swipe.service';\n\n@Directive({\n standalone: true,\n selector: '[tuiSwipe]',\n providers: [TuiSwipeService],\n})\nexport class TuiSwipe {\n @Output()\n public readonly tuiSwipe = inject(TuiSwipeService);\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-swipe.mjs","sources":["../../../projects/cdk/directives/swipe/swipe.options.ts","../../../projects/cdk/directives/swipe/swipe.service.ts","../../../projects/cdk/directives/swipe/swipe.directive.ts","../../../projects/cdk/directives/swipe/taiga-ui-cdk-directives-swipe.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\n\nimport {type TuiSwipeOptions} from './swipe.types';\n\nexport const TUI_SWIPE_OPTIONS = new InjectionToken<TuiSwipeOptions>(\n ngDevMode ? 'TUI_SWIPE_OPTIONS' : '',\n {\n factory: () => ({\n timeout: 500,\n threshold: 30,\n }),\n },\n);\n","import {DOCUMENT} from '@angular/common';\nimport {inject, Injectable} from '@angular/core';\nimport {tuiTypedFromEvent} from '@taiga-ui/cdk/observables';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiIsPresent} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {filter, map, merge, Observable, pairwise} from 'rxjs';\n\nimport {TUI_SWIPE_OPTIONS} from './swipe.options';\nimport {type TuiSwipeDirection, type TuiSwipeEvent} from './swipe.types';\n\n@Injectable()\nexport class TuiSwipeService extends Observable<TuiSwipeEvent> {\n constructor() {\n const doc = inject(DOCUMENT);\n const el = tuiInjectElement();\n const {timeout, threshold} = inject(TUI_SWIPE_OPTIONS);\n\n super((subscriber) =>\n merge(\n tuiTypedFromEvent(el, 'touchstart', {passive: true}),\n tuiTypedFromEvent(doc, 'touchend'),\n )\n .pipe(\n pairwise(),\n filter(\n ([first, second]) =>\n !!first.touches.length &&\n first.touches[0]?.identifier ===\n second.changedTouches[0]?.identifier,\n ),\n map(([start, end]) => {\n const startX = start.touches[0]?.clientX ?? 0;\n const startY = start.touches[0]?.clientY ?? 0;\n const endX = end.changedTouches[0]?.clientX ?? 0;\n const endY = end.changedTouches[0]?.clientY ?? 0;\n\n const distanceX = startX - endX;\n const distanceY = startY - endY;\n const duration = end.timeStamp - start.timeStamp;\n\n if (\n (Math.abs(distanceX) > threshold ||\n Math.abs(distanceY) > threshold) &&\n duration < timeout\n ) {\n return {\n direction: tuiGetSwipeDirection(distanceX, distanceY),\n events: [start, end] as [TouchEvent, TouchEvent],\n };\n }\n\n return null;\n }),\n filter(tuiIsPresent),\n )\n .subscribe(subscriber),\n );\n }\n}\n\nfunction tuiGetSwipeDirection(deltaX: number, deltaY: number): TuiSwipeDirection {\n if (Math.abs(deltaY) > Math.abs(deltaX)) {\n return deltaY > 0 ? 'top' : 'bottom';\n }\n\n return deltaX > 0 ? 'left' : 'right';\n}\n","import {Directive, inject} from '@angular/core';\nimport {outputFromObservable} from '@angular/core/rxjs-interop';\n\nimport {TuiSwipeService} from './swipe.service';\n\n@Directive({\n selector: '[tuiSwipe]',\n providers: [TuiSwipeService],\n})\nexport class TuiSwipe {\n public readonly tuiSwipe = outputFromObservable(inject(TuiSwipeService));\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;AAIa,MAAA,iBAAiB,GAAG,IAAI,cAAc,CAC/C,SAAS,GAAG,mBAAmB,GAAG,EAAE,EACpC;AACI,IAAA,OAAO,EAAE,OAAO;AACZ,QAAA,OAAO,EAAE,GAAG;AACZ,QAAA,SAAS,EAAE,EAAE;KAChB,CAAC;AACL,CAAA;;ACAC,MAAO,eAAgB,SAAQ,UAAyB,CAAA;AAC1D,IAAA,WAAA,GAAA;AACI,QAAA,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC;AAC5B,QAAA,MAAM,EAAE,GAAG,gBAAgB,EAAE;QAC7B,MAAM,EAAC,OAAO,EAAE,SAAS,EAAC,GAAG,MAAM,CAAC,iBAAiB,CAAC;QAEtD,KAAK,CAAC,CAAC,UAAU,KACb,KAAK,CACD,iBAAiB,CAAC,EAAE,EAAE,YAAY,EAAE,EAAC,OAAO,EAAE,IAAI,EAAC,CAAC,EACpD,iBAAiB,CAAC,GAAG,EAAE,UAAU,CAAC;aAEjC,IAAI,CACD,QAAQ,EAAE,EACV,MAAM,CACF,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,KACZ,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM;AACtB,YAAA,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,UAAU;AACxB,gBAAA,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,UAAU,CAC/C,EACD,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,CAAC,KAAI;AACjB,YAAA,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,CAAC;AAC7C,YAAA,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,CAAC;AAC7C,YAAA,MAAM,IAAI,GAAG,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,CAAC;AAChD,YAAA,MAAM,IAAI,GAAG,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,CAAC;AAEhD,YAAA,MAAM,SAAS,GAAG,MAAM,GAAG,IAAI;AAC/B,YAAA,MAAM,SAAS,GAAG,MAAM,GAAG,IAAI;YAC/B,MAAM,QAAQ,GAAG,GAAG,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS;YAEhD,IACI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,SAAS;AAC5B,gBAAA,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,SAAS;gBACnC,QAAQ,GAAG,OAAO,EACpB;gBACE,OAAO;AACH,oBAAA,SAAS,EAAE,oBAAoB,CAAC,SAAS,EAAE,SAAS,CAAC;AACrD,oBAAA,MAAM,EAAE,CAAC,KAAK,EAAE,GAAG,CAA6B;iBACnD;;AAGL,YAAA,OAAO,IAAI;AACf,SAAC,CAAC,EACF,MAAM,CAAC,YAAY,CAAC;AAEvB,aAAA,SAAS,CAAC,UAAU,CAAC,CAC7B;;+GA7CI,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;mHAAf,eAAe,EAAA,CAAA,CAAA;;4FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAD3B;;AAkDD,SAAS,oBAAoB,CAAC,MAAc,EAAE,MAAc,EAAA;AACxD,IAAA,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;QACrC,OAAO,MAAM,GAAG,CAAC,GAAG,KAAK,GAAG,QAAQ;;IAGxC,OAAO,MAAM,GAAG,CAAC,GAAG,MAAM,GAAG,OAAO;AACxC;;MCzDa,QAAQ,CAAA;AAJrB,IAAA,WAAA,GAAA;QAKoB,IAAQ,CAAA,QAAA,GAAG,oBAAoB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;AAC3E;+GAFY,QAAQ,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAR,QAAQ,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,YAAA,EAAA,OAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,SAAA,EAFN,CAAC,eAAe,CAAC,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAEnB,QAAQ,EAAA,UAAA,EAAA,CAAA;kBAJpB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,YAAY;oBACtB,SAAS,EAAE,CAAC,eAAe,CAAC;AAC/B,iBAAA;;;ACRD;;AAEG;;;;"}
@@ -1,27 +1,20 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, NgZone, Directive } from '@angular/core';
3
- import { tuiInjectElement } from '@taiga-ui/cdk/utils';
2
+ import { afterNextRender, Directive } from '@angular/core';
3
+ import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
4
4
 
5
5
  class TuiTransitioned {
6
6
  constructor() {
7
- const el = tuiInjectElement();
8
- inject(NgZone).runOutsideAngular(() => {
9
- setTimeout(() => {
10
- el.style.transition = '';
11
- });
12
- });
7
+ this.el = tuiInjectElement();
8
+ afterNextRender(() => this.el.style.setProperty('transition', ''));
13
9
  }
14
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTransitioned, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
15
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiTransitioned, isStandalone: true, selector: "[tuiTransitioned]", host: { properties: { "style.transition": "\"none\"" } }, ngImport: i0 }); }
10
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiTransitioned, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
11
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.17", type: TuiTransitioned, isStandalone: true, selector: "[tuiTransitioned]", host: { properties: { "style.transition": "\"none\"" } }, ngImport: i0 }); }
16
12
  }
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTransitioned, decorators: [{
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiTransitioned, decorators: [{
18
14
  type: Directive,
19
15
  args: [{
20
- standalone: true,
21
16
  selector: '[tuiTransitioned]',
22
- host: {
23
- '[style.transition]': '"none"',
24
- },
17
+ host: { '[style.transition]': '"none"' },
25
18
  }]
26
19
  }], ctorParameters: () => [] });
27
20
 
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-directives-transitioned.mjs","sources":["../../../projects/cdk/directives/transitioned/transitioned.directive.ts","../../../projects/cdk/directives/transitioned/taiga-ui-cdk-directives-transitioned.ts"],"sourcesContent":["import {Directive, inject, NgZone} from '@angular/core';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils';\n\n@Directive({\n standalone: true,\n selector: '[tuiTransitioned]',\n host: {\n '[style.transition]': '\"none\"',\n },\n})\nexport class TuiTransitioned {\n constructor() {\n const el = tuiInjectElement();\n\n inject(NgZone).runOutsideAngular(() => {\n setTimeout(() => {\n el.style.transition = '';\n });\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;MAUa,eAAe,CAAA;AACxB,IAAA,WAAA,GAAA;AACI,QAAA,MAAM,EAAE,GAAG,gBAAgB,EAAE;AAE7B,QAAA,MAAM,CAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,MAAK;YAClC,UAAU,CAAC,MAAK;AACZ,gBAAA,EAAE,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE;AAC5B,aAAC,CAAC;AACN,SAAC,CAAC;;+GARG,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,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,kBAAA,EAAA,UAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAP3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,IAAI,EAAE;AACF,wBAAA,oBAAoB,EAAE,QAAQ;AACjC,qBAAA;AACJ,iBAAA;;;ACTD;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-cdk-directives-transitioned.mjs","sources":["../../../projects/cdk/directives/transitioned/transitioned.directive.ts","../../../projects/cdk/directives/transitioned/taiga-ui-cdk-directives-transitioned.ts"],"sourcesContent":["import {afterNextRender, Directive} from '@angular/core';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\n\n@Directive({\n selector: '[tuiTransitioned]',\n host: {'[style.transition]': '\"none\"'},\n})\nexport class TuiTransitioned {\n private readonly el = tuiInjectElement();\n\n constructor() {\n afterNextRender(() => this.el.style.setProperty('transition', ''));\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;MAOa,eAAe,CAAA;AAGxB,IAAA,WAAA,GAAA;QAFiB,IAAE,CAAA,EAAA,GAAG,gBAAgB,EAAE;AAGpC,QAAA,eAAe,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;;+GAJ7D,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,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,kBAAA,EAAA,UAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAJ3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,IAAI,EAAE,EAAC,oBAAoB,EAAE,QAAQ,EAAC;AACzC,iBAAA;;;ACND;;AAEG;;;;"}
@@ -2,7 +2,7 @@ import * as i0 from '@angular/core';
2
2
  import { Directive } from '@angular/core';
3
3
  import { Validators, NG_VALIDATORS } from '@angular/forms';
4
4
  import { EMPTY_FUNCTION } from '@taiga-ui/cdk/constants';
5
- import { tuiProvide } from '@taiga-ui/cdk/utils';
5
+ import { tuiProvide } from '@taiga-ui/cdk/utils/di';
6
6
 
7
7
  class TuiValidator {
8
8
  constructor() {
@@ -15,13 +15,12 @@ class TuiValidator {
15
15
  ngOnChanges() {
16
16
  this.onChange();
17
17
  }
18
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiValidator, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
19
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiValidator, isStandalone: true, selector: "[tuiValidator]", inputs: { validate: ["tuiValidator", "validate"] }, providers: [tuiProvide(NG_VALIDATORS, TuiValidator, true)], usesOnChanges: true, ngImport: i0 }); }
18
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiValidator, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
19
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.17", type: TuiValidator, isStandalone: true, selector: "[tuiValidator]", inputs: { validate: ["tuiValidator", "validate"] }, providers: [tuiProvide(NG_VALIDATORS, TuiValidator, true)], usesOnChanges: true, ngImport: i0 }); }
20
20
  }
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiValidator, decorators: [{
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiValidator, decorators: [{
22
22
  type: Directive,
23
23
  args: [{
24
- standalone: true,
25
24
  selector: '[tuiValidator]',
26
25
  inputs: ['validate: tuiValidator'],
27
26
  providers: [tuiProvide(NG_VALIDATORS, TuiValidator, true)],
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-directives-validator.mjs","sources":["../../../projects/cdk/directives/validator/validator.directive.ts","../../../projects/cdk/directives/validator/taiga-ui-cdk-directives-validator.ts"],"sourcesContent":["import {Directive, type OnChanges} from '@angular/core';\nimport {NG_VALIDATORS, type Validator, Validators} from '@angular/forms';\nimport {EMPTY_FUNCTION} from '@taiga-ui/cdk/constants';\nimport {tuiProvide} from '@taiga-ui/cdk/utils';\n\n@Directive({\n standalone: true,\n selector: '[tuiValidator]',\n inputs: ['validate: tuiValidator'],\n providers: [tuiProvide(NG_VALIDATORS, TuiValidator, true)],\n})\nexport class TuiValidator implements Validator, OnChanges {\n protected onChange = EMPTY_FUNCTION;\n\n public validate = Validators.nullValidator;\n\n public registerOnValidatorChange(onChange: (...args: any[]) => void): void {\n this.onChange = onChange;\n }\n\n public ngOnChanges(): void {\n this.onChange();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;MAWa,YAAY,CAAA;AANzB,IAAA,WAAA,GAAA;QAOc,IAAQ,CAAA,QAAA,GAAG,cAAc;AAE5B,QAAA,IAAA,CAAA,QAAQ,GAAG,UAAU,CAAC,aAAa;AAS7C;AAPU,IAAA,yBAAyB,CAAC,QAAkC,EAAA;AAC/D,QAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ;;IAGrB,WAAW,GAAA;QACd,IAAI,CAAC,QAAQ,EAAE;;+GAVV,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,MAAA,EAAA,EAAA,QAAA,EAAA,CAAA,cAAA,EAAA,UAAA,CAAA,EAAA,EAAA,SAAA,EAFV,CAAC,UAAU,CAAC,aAAa,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAEjD,YAAY,EAAA,UAAA,EAAA,CAAA;kBANxB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,gBAAgB;oBAC1B,MAAM,EAAE,CAAC,wBAAwB,CAAC;oBAClC,SAAS,EAAE,CAAC,UAAU,CAAC,aAAa,EAAgB,YAAA,EAAA,IAAI,CAAC,CAAC;AAC7D,iBAAA;;;ACVD;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-cdk-directives-validator.mjs","sources":["../../../projects/cdk/directives/validator/validator.directive.ts","../../../projects/cdk/directives/validator/taiga-ui-cdk-directives-validator.ts"],"sourcesContent":["import {Directive, type OnChanges} from '@angular/core';\nimport {NG_VALIDATORS, type Validator, Validators} from '@angular/forms';\nimport {EMPTY_FUNCTION} from '@taiga-ui/cdk/constants';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/di';\n\n@Directive({\n selector: '[tuiValidator]',\n inputs: ['validate: tuiValidator'],\n providers: [tuiProvide(NG_VALIDATORS, TuiValidator, true)],\n})\nexport class TuiValidator implements Validator, OnChanges {\n protected onChange = EMPTY_FUNCTION;\n\n public validate = Validators.nullValidator;\n\n public registerOnValidatorChange(onChange: (...args: any[]) => void): void {\n this.onChange = onChange;\n }\n\n public ngOnChanges(): void {\n this.onChange();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;MAUa,YAAY,CAAA;AALzB,IAAA,WAAA,GAAA;QAMc,IAAQ,CAAA,QAAA,GAAG,cAAc;AAE5B,QAAA,IAAA,CAAA,QAAQ,GAAG,UAAU,CAAC,aAAa;AAS7C;AAPU,IAAA,yBAAyB,CAAC,QAAkC,EAAA;AAC/D,QAAA,IAAI,CAAC,QAAQ,GAAG,QAAQ;;IAGrB,WAAW,GAAA;QACd,IAAI,CAAC,QAAQ,EAAE;;+GAVV,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,MAAA,EAAA,EAAA,QAAA,EAAA,CAAA,cAAA,EAAA,UAAA,CAAA,EAAA,EAAA,SAAA,EAFV,CAAC,UAAU,CAAC,aAAa,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAEjD,YAAY,EAAA,UAAA,EAAA,CAAA;kBALxB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,gBAAgB;oBAC1B,MAAM,EAAE,CAAC,wBAAwB,CAAC;oBAClC,SAAS,EAAE,CAAC,UAAU,CAAC,aAAa,EAAgB,YAAA,EAAA,IAAI,CAAC,CAAC;AAC7D,iBAAA;;;ACTD;;AAEG;;;;"}
@@ -1,5 +1,6 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, Output, Directive } from '@angular/core';
2
+ import { inject, Directive } from '@angular/core';
3
+ import { outputFromObservable } from '@angular/core/rxjs-interop';
3
4
  import { ControlContainer, NgControl } from '@angular/forms';
4
5
  import { Subject, distinctUntilChanged, switchAll, EMPTY } from 'rxjs';
5
6
 
@@ -8,23 +9,21 @@ class TuiValueChanges {
8
9
  this.container = inject(ControlContainer, { optional: true });
9
10
  this.control = inject(NgControl, { optional: true });
10
11
  this.refresh$ = new Subject();
11
- this.tuiValueChanges = this.refresh$.pipe(distinctUntilChanged(), switchAll(), distinctUntilChanged());
12
+ this.tuiValueChanges$ = this.refresh$.pipe(distinctUntilChanged(), switchAll(), distinctUntilChanged());
13
+ this.tuiValueChanges = outputFromObservable(this.tuiValueChanges$);
12
14
  }
13
15
  ngDoCheck() {
14
16
  this.refresh$.next(this.control?.valueChanges || this.container?.valueChanges || EMPTY);
15
17
  }
16
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiValueChanges, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
17
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiValueChanges, isStandalone: true, selector: "[tuiValueChanges]", outputs: { tuiValueChanges: "tuiValueChanges" }, ngImport: i0 }); }
18
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiValueChanges, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
19
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.17", type: TuiValueChanges, isStandalone: true, selector: "[tuiValueChanges]", outputs: { tuiValueChanges: "tuiValueChanges" }, ngImport: i0 }); }
18
20
  }
19
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiValueChanges, decorators: [{
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiValueChanges, decorators: [{
20
22
  type: Directive,
21
23
  args: [{
22
- standalone: true,
23
24
  selector: '[tuiValueChanges]',
24
25
  }]
25
- }], propDecorators: { tuiValueChanges: [{
26
- type: Output
27
- }] } });
26
+ }] });
28
27
 
29
28
  /**
30
29
  * Generated bundle index. Do not edit.
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-directives-value-changes.mjs","sources":["../../../projects/cdk/directives/value-changes/value-changes.directive.ts","../../../projects/cdk/directives/value-changes/taiga-ui-cdk-directives-value-changes.ts"],"sourcesContent":["import {Directive, type DoCheck, inject, Output} from '@angular/core';\nimport {ControlContainer, NgControl} from '@angular/forms';\nimport {distinctUntilChanged, EMPTY, type Observable, Subject, switchAll} from 'rxjs';\n\n@Directive({\n standalone: true,\n selector: '[tuiValueChanges]',\n})\nexport class TuiValueChanges<T> implements DoCheck {\n private readonly container = inject(ControlContainer, {optional: true});\n private readonly control = inject(NgControl, {optional: true});\n private readonly refresh$ = new Subject<Observable<T>>();\n\n @Output()\n public readonly tuiValueChanges = this.refresh$.pipe(\n distinctUntilChanged(),\n switchAll(),\n distinctUntilChanged(),\n );\n\n public ngDoCheck(): void {\n this.refresh$.next(\n this.control?.valueChanges || this.container?.valueChanges || EMPTY,\n );\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MAQa,eAAe,CAAA;AAJ5B,IAAA,WAAA,GAAA;QAKqB,IAAS,CAAA,SAAA,GAAG,MAAM,CAAC,gBAAgB,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;QACtD,IAAO,CAAA,OAAA,GAAG,MAAM,CAAC,SAAS,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;AAC7C,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,OAAO,EAAiB;AAGxC,QAAA,IAAA,CAAA,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAChD,oBAAoB,EAAE,EACtB,SAAS,EAAE,EACX,oBAAoB,EAAE,CACzB;AAOJ;IALU,SAAS,GAAA;AACZ,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,YAAY,IAAI,IAAI,CAAC,SAAS,EAAE,YAAY,IAAI,KAAK,CACtE;;+GAfI,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;;;ACbL;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-cdk-directives-value-changes.mjs","sources":["../../../projects/cdk/directives/value-changes/value-changes.directive.ts","../../../projects/cdk/directives/value-changes/taiga-ui-cdk-directives-value-changes.ts"],"sourcesContent":["import {Directive, type DoCheck, inject} from '@angular/core';\nimport {outputFromObservable} from '@angular/core/rxjs-interop';\nimport {ControlContainer, NgControl} from '@angular/forms';\nimport {distinctUntilChanged, EMPTY, type Observable, Subject, switchAll} from 'rxjs';\n\n@Directive({\n selector: '[tuiValueChanges]',\n})\nexport class TuiValueChanges<T> implements DoCheck {\n private readonly container = inject(ControlContainer, {optional: true});\n private readonly control = inject(NgControl, {optional: true});\n private readonly refresh$ = new Subject<Observable<T>>();\n\n private readonly tuiValueChanges$ = this.refresh$.pipe(\n distinctUntilChanged(),\n switchAll(),\n distinctUntilChanged(),\n );\n\n public readonly tuiValueChanges = outputFromObservable(this.tuiValueChanges$);\n\n public ngDoCheck(): void {\n this.refresh$.next(\n this.control?.valueChanges || this.container?.valueChanges || EMPTY,\n );\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;MAQa,eAAe,CAAA;AAH5B,IAAA,WAAA,GAAA;QAIqB,IAAS,CAAA,SAAA,GAAG,MAAM,CAAC,gBAAgB,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;QACtD,IAAO,CAAA,OAAA,GAAG,MAAM,CAAC,SAAS,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC;AAC7C,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,OAAO,EAAiB;AAEvC,QAAA,IAAA,CAAA,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAClD,oBAAoB,EAAE,EACtB,SAAS,EAAE,EACX,oBAAoB,EAAE,CACzB;AAEe,QAAA,IAAA,CAAA,eAAe,GAAG,oBAAoB,CAAC,IAAI,CAAC,gBAAgB,CAAC;AAOhF;IALU,SAAS,GAAA;AACZ,QAAA,IAAI,CAAC,QAAQ,CAAC,IAAI,CACd,IAAI,CAAC,OAAO,EAAE,YAAY,IAAI,IAAI,CAAC,SAAS,EAAE,YAAY,IAAI,KAAK,CACtE;;+GAhBI,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;kBAH3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,mBAAmB;AAChC,iBAAA;;;ACPD;;AAEG;;;;"}
@@ -3,7 +3,8 @@ import { inject, Directive } from '@angular/core';
3
3
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
4
4
  import { WA_WINDOW } from '@ng-web-apis/common';
5
5
  import { ViewportService } from '@ng-web-apis/screen-orientation';
6
- import { tuiInjectElement, tuiPx } from '@taiga-ui/cdk/utils';
6
+ import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
7
+ import { tuiPx } from '@taiga-ui/cdk/utils/miscellaneous';
7
8
 
8
9
  class TuiVisualViewport {
9
10
  constructor() {
@@ -21,13 +22,12 @@ class TuiVisualViewport {
21
22
  this.style.setProperty('--tui-viewport-vw', tuiPx(this.w.innerWidth / 100));
22
23
  });
23
24
  }
24
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiVisualViewport, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
25
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiVisualViewport, isStandalone: true, selector: "[tuiVisualViewport]", ngImport: i0 }); }
25
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiVisualViewport, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
26
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.17", type: TuiVisualViewport, isStandalone: true, selector: "[tuiVisualViewport]", ngImport: i0 }); }
26
27
  }
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiVisualViewport, decorators: [{
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiVisualViewport, decorators: [{
28
29
  type: Directive,
29
30
  args: [{
30
- standalone: true,
31
31
  selector: '[tuiVisualViewport]',
32
32
  }]
33
33
  }] });
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-directives-visual-viewport.mjs","sources":["../../../projects/cdk/directives/visual-viewport/visual-viewport.directive.ts","../../../projects/cdk/directives/visual-viewport/taiga-ui-cdk-directives-visual-viewport.ts"],"sourcesContent":["import {Directive, inject} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {WA_WINDOW} from '@ng-web-apis/common';\nimport {ViewportService} from '@ng-web-apis/screen-orientation';\nimport {tuiInjectElement, tuiPx} from '@taiga-ui/cdk/utils';\n\n@Directive({\n standalone: true,\n selector: '[tuiVisualViewport]',\n})\nexport class TuiVisualViewport {\n private readonly w = inject(WA_WINDOW);\n private readonly style = tuiInjectElement().style;\n\n protected readonly $ = inject(ViewportService)\n .pipe(takeUntilDestroyed())\n .subscribe(({offsetLeft, offsetTop, height, width, scale}) => {\n this.style.setProperty('--tui-viewport-x', tuiPx(offsetLeft));\n this.style.setProperty('--tui-viewport-y', tuiPx(offsetTop));\n this.style.setProperty('--tui-viewport-height', tuiPx(height));\n this.style.setProperty('--tui-viewport-width', tuiPx(width));\n this.style.setProperty('--tui-viewport-scale', String(scale));\n this.style.setProperty('--tui-viewport-vh', tuiPx(this.w.innerHeight / 100));\n this.style.setProperty('--tui-viewport-vw', tuiPx(this.w.innerWidth / 100));\n });\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;MAUa,iBAAiB,CAAA;AAJ9B,IAAA,WAAA,GAAA;AAKqB,QAAA,IAAA,CAAA,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC;AACrB,QAAA,IAAA,CAAA,KAAK,GAAG,gBAAgB,EAAE,CAAC,KAAK;AAE9B,QAAA,IAAA,CAAA,CAAC,GAAG,MAAM,CAAC,eAAe;aACxC,IAAI,CAAC,kBAAkB,EAAE;AACzB,aAAA,SAAS,CAAC,CAAC,EAAC,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAC,KAAI;AACzD,YAAA,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,kBAAkB,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;AAC7D,YAAA,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,kBAAkB,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;AAC5D,YAAA,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,uBAAuB,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;AAC9D,YAAA,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,sBAAsB,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;AAC5D,YAAA,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,sBAAsB,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;AAC7D,YAAA,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,mBAAmB,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,GAAG,GAAG,CAAC,CAAC;AAC5E,YAAA,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,mBAAmB,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC;AAC/E,SAAC,CAAC;AACT;+GAfY,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAjB,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAJ7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,qBAAqB;AAClC,iBAAA;;;ACTD;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-cdk-directives-visual-viewport.mjs","sources":["../../../projects/cdk/directives/visual-viewport/visual-viewport.directive.ts","../../../projects/cdk/directives/visual-viewport/taiga-ui-cdk-directives-visual-viewport.ts"],"sourcesContent":["import {Directive, inject} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {WA_WINDOW} from '@ng-web-apis/common';\nimport {ViewportService} from '@ng-web-apis/screen-orientation';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiPx} from '@taiga-ui/cdk/utils/miscellaneous';\n\n@Directive({\n selector: '[tuiVisualViewport]',\n})\nexport class TuiVisualViewport {\n private readonly w = inject(WA_WINDOW);\n private readonly style = tuiInjectElement().style;\n\n protected readonly $ = inject(ViewportService)\n .pipe(takeUntilDestroyed())\n .subscribe(({offsetLeft, offsetTop, height, width, scale}) => {\n this.style.setProperty('--tui-viewport-x', tuiPx(offsetLeft));\n this.style.setProperty('--tui-viewport-y', tuiPx(offsetTop));\n this.style.setProperty('--tui-viewport-height', tuiPx(height));\n this.style.setProperty('--tui-viewport-width', tuiPx(width));\n this.style.setProperty('--tui-viewport-scale', String(scale));\n this.style.setProperty('--tui-viewport-vh', tuiPx(this.w.innerHeight / 100));\n this.style.setProperty('--tui-viewport-vw', tuiPx(this.w.innerWidth / 100));\n });\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;MAUa,iBAAiB,CAAA;AAH9B,IAAA,WAAA,GAAA;AAIqB,QAAA,IAAA,CAAA,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC;AACrB,QAAA,IAAA,CAAA,KAAK,GAAG,gBAAgB,EAAE,CAAC,KAAK;AAE9B,QAAA,IAAA,CAAA,CAAC,GAAG,MAAM,CAAC,eAAe;aACxC,IAAI,CAAC,kBAAkB,EAAE;AACzB,aAAA,SAAS,CAAC,CAAC,EAAC,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAC,KAAI;AACzD,YAAA,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,kBAAkB,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;AAC7D,YAAA,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,kBAAkB,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;AAC5D,YAAA,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,uBAAuB,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;AAC9D,YAAA,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,sBAAsB,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;AAC5D,YAAA,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,sBAAsB,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;AAC7D,YAAA,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,mBAAmB,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,GAAG,GAAG,CAAC,CAAC;AAC5E,YAAA,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,mBAAmB,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC;AAC/E,SAAC,CAAC;AACT;+GAfY,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAjB,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAH7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,qBAAqB;AAClC,iBAAA;;;ACTD;;AAEG;;;;"}
@@ -14,10 +14,10 @@ class TuiWithStyles {
14
14
  ngOnDestroy() {
15
15
  this.refs.forEach((ref) => ref.destroy());
16
16
  }
17
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiWithStyles, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
18
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiWithStyles, isStandalone: true, ngImport: i0 }); }
17
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiWithStyles, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
18
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.17", type: TuiWithStyles, isStandalone: true, ngImport: i0 }); }
19
19
  }
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiWithStyles, decorators: [{
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiWithStyles, decorators: [{
21
21
  type: Directive
22
22
  }] });
23
23
 
@@ -1,7 +1,8 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { InjectionToken, inject, Injectable, Directive } from '@angular/core';
3
3
  import { tuiTypedFromEvent, tuiPreventDefault } from '@taiga-ui/cdk/observables';
4
- import { tuiInjectElement, tuiDistanceBetweenTouches } from '@taiga-ui/cdk/utils';
4
+ import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
5
+ import { tuiDistanceBetweenTouches } from '@taiga-ui/cdk/utils/miscellaneous';
5
6
  import { Observable, merge, filter, switchMap, scan, map, takeUntil } from 'rxjs';
6
7
 
7
8
  /**
@@ -45,10 +46,10 @@ class TuiZoomService extends Observable {
45
46
  event: wheel,
46
47
  })))).subscribe(subscriber));
47
48
  }
48
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiZoomService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
49
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiZoomService }); }
49
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiZoomService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
50
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiZoomService }); }
50
51
  }
51
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiZoomService, decorators: [{
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiZoomService, decorators: [{
52
53
  type: Injectable
53
54
  }], ctorParameters: () => [] });
54
55
 
@@ -56,13 +57,12 @@ class TuiZoom {
56
57
  constructor() {
57
58
  this.tuiZoom = inject(TuiZoomService);
58
59
  }
59
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiZoom, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
60
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiZoom, isStandalone: true, selector: "[tuiZoom]", outputs: { tuiZoom: "tuiZoom" }, host: { properties: { "style.touch-action": "\"none\"" } }, providers: [TuiZoomService], ngImport: i0 }); }
60
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiZoom, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
61
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.17", type: TuiZoom, isStandalone: true, selector: "[tuiZoom]", outputs: { tuiZoom: "tuiZoom" }, host: { properties: { "style.touch-action": "\"none\"" } }, providers: [TuiZoomService], ngImport: i0 }); }
61
62
  }
62
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiZoom, decorators: [{
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiZoom, decorators: [{
63
64
  type: Directive,
64
65
  args: [{
65
- standalone: true,
66
66
  selector: '[tuiZoom]',
67
67
  outputs: ['tuiZoom'],
68
68
  providers: [TuiZoomService],
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-directives-zoom.mjs","sources":["../../../projects/cdk/directives/zoom/zoom.options.ts","../../../projects/cdk/directives/zoom/zoom.service.ts","../../../projects/cdk/directives/zoom/zoom.directive.ts","../../../projects/cdk/directives/zoom/taiga-ui-cdk-directives-zoom.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\n\nimport {type TuiZoomOptions} from './zoom.types';\n\n/**\n * Zoom options\n */\nexport const TUI_ZOOM_OPTIONS = new InjectionToken<TuiZoomOptions>(\n ngDevMode ? 'TUI_ZOOM_OPTIONS' : '',\n {\n factory: () => ({\n wheelSensitivity: 0.01,\n }),\n },\n);\n","import {inject, Injectable} from '@angular/core';\nimport {tuiPreventDefault, tuiTypedFromEvent} from '@taiga-ui/cdk/observables';\nimport {tuiDistanceBetweenTouches, tuiInjectElement} from '@taiga-ui/cdk/utils';\nimport {filter, map, merge, Observable, scan, switchMap, takeUntil} from 'rxjs';\n\nimport {TUI_ZOOM_OPTIONS} from './zoom.options';\nimport {type TuiZoomEvent} from './zoom.types';\n\nconst TOUCH_SENSITIVITY = 0.01;\n\n@Injectable()\nexport class TuiZoomService extends Observable<TuiZoomEvent> {\n constructor() {\n const el = tuiInjectElement();\n const {wheelSensitivity} = inject(TUI_ZOOM_OPTIONS);\n\n super((subscriber) =>\n merge(\n tuiTypedFromEvent(el, 'touchstart', {passive: true}).pipe(\n filter(({touches}) => touches.length > 1),\n switchMap((startEvent) =>\n tuiTypedFromEvent(el, 'touchmove', {passive: true}).pipe(\n tuiPreventDefault(),\n scan(\n (prev, event) => {\n const distance = tuiDistanceBetweenTouches(event);\n\n return {\n event,\n distance,\n delta:\n (distance - prev.distance) *\n TOUCH_SENSITIVITY,\n };\n },\n {\n event: startEvent,\n distance: tuiDistanceBetweenTouches(startEvent),\n delta: 0,\n },\n ),\n map(({event, delta}) => {\n const clientX =\n ((event.touches[0]?.clientX ?? 0) +\n (event.touches[1]?.clientX ?? 0)) /\n 2;\n const clientY =\n ((event.touches[0]?.clientY ?? 0) +\n (event.touches[1]?.clientY ?? 0)) /\n 2;\n\n return {clientX, clientY, delta, event};\n }),\n takeUntil(tuiTypedFromEvent(el, 'touchend')),\n ),\n ),\n ),\n tuiTypedFromEvent(el, 'wheel', {passive: false}).pipe(\n tuiPreventDefault(),\n map((wheel) => ({\n clientX: wheel.clientX,\n clientY: wheel.clientY,\n delta: -wheel.deltaY * wheelSensitivity,\n event: wheel,\n })),\n ),\n ).subscribe(subscriber),\n );\n }\n}\n","import {Directive, inject} from '@angular/core';\n\nimport {TuiZoomService} from './zoom.service';\n\n@Directive({\n standalone: true,\n selector: '[tuiZoom]',\n outputs: ['tuiZoom'],\n providers: [TuiZoomService],\n host: {\n '[style.touch-action]': '\"none\"',\n },\n})\nexport class TuiZoom {\n protected readonly tuiZoom = inject(TuiZoomService);\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-zoom.mjs","sources":["../../../projects/cdk/directives/zoom/zoom.options.ts","../../../projects/cdk/directives/zoom/zoom.service.ts","../../../projects/cdk/directives/zoom/zoom.directive.ts","../../../projects/cdk/directives/zoom/taiga-ui-cdk-directives-zoom.ts"],"sourcesContent":["import {InjectionToken} from '@angular/core';\n\nimport {type TuiZoomOptions} from './zoom.types';\n\n/**\n * Zoom options\n */\nexport const TUI_ZOOM_OPTIONS = new InjectionToken<TuiZoomOptions>(\n ngDevMode ? 'TUI_ZOOM_OPTIONS' : '',\n {\n factory: () => ({\n wheelSensitivity: 0.01,\n }),\n },\n);\n","import {inject, Injectable} from '@angular/core';\nimport {tuiPreventDefault, tuiTypedFromEvent} from '@taiga-ui/cdk/observables';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiDistanceBetweenTouches} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {filter, map, merge, Observable, scan, switchMap, takeUntil} from 'rxjs';\n\nimport {TUI_ZOOM_OPTIONS} from './zoom.options';\nimport {type TuiZoomEvent} from './zoom.types';\n\nconst TOUCH_SENSITIVITY = 0.01;\n\n@Injectable()\nexport class TuiZoomService extends Observable<TuiZoomEvent> {\n constructor() {\n const el = tuiInjectElement();\n const {wheelSensitivity} = inject(TUI_ZOOM_OPTIONS);\n\n super((subscriber) =>\n merge(\n tuiTypedFromEvent(el, 'touchstart', {passive: true}).pipe(\n filter(({touches}) => touches.length > 1),\n switchMap((startEvent) =>\n tuiTypedFromEvent(el, 'touchmove', {passive: true}).pipe(\n tuiPreventDefault(),\n scan(\n (prev, event) => {\n const distance = tuiDistanceBetweenTouches(event);\n\n return {\n event,\n distance,\n delta:\n (distance - prev.distance) *\n TOUCH_SENSITIVITY,\n };\n },\n {\n event: startEvent,\n distance: tuiDistanceBetweenTouches(startEvent),\n delta: 0,\n },\n ),\n map(({event, delta}) => {\n const clientX =\n ((event.touches[0]?.clientX ?? 0) +\n (event.touches[1]?.clientX ?? 0)) /\n 2;\n const clientY =\n ((event.touches[0]?.clientY ?? 0) +\n (event.touches[1]?.clientY ?? 0)) /\n 2;\n\n return {clientX, clientY, delta, event};\n }),\n takeUntil(tuiTypedFromEvent(el, 'touchend')),\n ),\n ),\n ),\n tuiTypedFromEvent(el, 'wheel', {passive: false}).pipe(\n tuiPreventDefault(),\n map((wheel) => ({\n clientX: wheel.clientX,\n clientY: wheel.clientY,\n delta: -wheel.deltaY * wheelSensitivity,\n event: wheel,\n })),\n ),\n ).subscribe(subscriber),\n );\n }\n}\n","import {Directive, inject} from '@angular/core';\n\nimport {TuiZoomService} from './zoom.service';\n\n@Directive({\n selector: '[tuiZoom]',\n outputs: ['tuiZoom'],\n providers: [TuiZoomService],\n host: {\n '[style.touch-action]': '\"none\"',\n },\n})\nexport class TuiZoom {\n protected readonly tuiZoom = inject(TuiZoomService);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,24 +1,19 @@
1
1
  export * from '@taiga-ui/cdk/directives/active-zone';
2
2
  export * from '@taiga-ui/cdk/directives/animated';
3
3
  export * from '@taiga-ui/cdk/directives/auto-focus';
4
- export * from '@taiga-ui/cdk/directives/click-outside';
5
4
  export * from '@taiga-ui/cdk/directives/control';
6
5
  export * from '@taiga-ui/cdk/directives/copy-processor';
7
- export * from '@taiga-ui/cdk/directives/droppable';
8
6
  export * from '@taiga-ui/cdk/directives/element';
9
7
  export * from '@taiga-ui/cdk/directives/focus-trap';
10
8
  export * from '@taiga-ui/cdk/directives/font-size';
11
9
  export * from '@taiga-ui/cdk/directives/high-dpi';
12
10
  export * from '@taiga-ui/cdk/directives/hovered';
13
11
  export * from '@taiga-ui/cdk/directives/item';
14
- export * from '@taiga-ui/cdk/directives/let';
15
12
  export * from '@taiga-ui/cdk/directives/media';
16
13
  export * from '@taiga-ui/cdk/directives/native-validator';
17
14
  export * from '@taiga-ui/cdk/directives/obscured';
18
15
  export * from '@taiga-ui/cdk/directives/pan';
19
16
  export * from '@taiga-ui/cdk/directives/platform';
20
- export * from '@taiga-ui/cdk/directives/popover';
21
- export * from '@taiga-ui/cdk/directives/repeat-times';
22
17
  export * from '@taiga-ui/cdk/directives/resizer';
23
18
  export * from '@taiga-ui/cdk/directives/swipe';
24
19
  export * from '@taiga-ui/cdk/directives/transitioned';
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-cdk-directives.mjs","sources":["../../../projects/cdk/directives/taiga-ui-cdk-directives.ts"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAEG"}
1
+ {"version":3,"file":"taiga-ui-cdk-directives.mjs","sources":["../../../projects/cdk/directives/taiga-ui-cdk-directives.ts"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAEG"}
@@ -1,5 +1,5 @@
1
1
  import { Observable, startWith, fromEvent, concat, take, map, merge, endWith, takeWhile, repeat, tap, pipe, switchMap, EMPTY, takeUntil, NEVER, catchError, defaultIfEmpty, queueScheduler, asyncScheduler } from 'rxjs';
2
- import { tuiIsPresent, tuiGetOriginalArrayFromQueryList } from '@taiga-ui/cdk/utils/miscellaneous';
2
+ import { tuiIsPresent } from '@taiga-ui/cdk/utils/miscellaneous';
3
3
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
4
4
  import { untracked, inject, ChangeDetectorRef, NgZone } from '@angular/core';
5
5
 
@@ -65,28 +65,6 @@ function tuiIfMap(project, predicate = Boolean) {
65
65
  return pipe(switchMap((value) => (predicate(value) ? project(value) : EMPTY)));
66
66
  }
67
67
 
68
- /// <reference types="@taiga-ui/tsconfig/ng-dev-mode" />
69
- function tuiMustBePresent() {
70
- return map((value) => {
71
- if (!tuiIsPresent(value)) {
72
- throw new TuiValuePresentException();
73
- }
74
- return value;
75
- });
76
- }
77
- class TuiValuePresentException extends Error {
78
- constructor() {
79
- super(ngDevMode ? 'Value must present' : '');
80
- }
81
- }
82
-
83
- /**
84
- * Converts changes observable of a QueryList to an Observable of arrays
85
- */
86
- function tuiQueryListChanges(queryList) {
87
- return queryList.changes.pipe(startWith(null), map(() => tuiGetOriginalArrayFromQueryList(queryList)));
88
- }
89
-
90
68
  /**
91
69
  * Normalizes scroll event in case element is `html` (document.documentElement)
92
70
  */
@@ -152,5 +130,5 @@ function tuiZonefullScheduler(zone = inject(NgZone), scheduler = asyncScheduler)
152
130
  * Generated bundle index. Do not edit.
153
131
  */
154
132
 
155
- export { TuiDragState, TuiValuePresentException, tuiCloseWatcher, tuiControlValue, tuiDragAndDropFrom, tuiIfMap, tuiMustBePresent, tuiPreventDefault, tuiQueryListChanges, tuiScrollFrom, tuiStopPropagation, tuiTakeUntilDestroyed, tuiTypedFromEvent, tuiUntrackedScheduler, tuiWatch, tuiZoneOptimized, tuiZonefree, tuiZonefreeScheduler, tuiZonefull, tuiZonefullScheduler };
133
+ export { TuiDragState, tuiCloseWatcher, tuiControlValue, tuiDragAndDropFrom, tuiIfMap, tuiPreventDefault, tuiScrollFrom, tuiStopPropagation, tuiTakeUntilDestroyed, tuiTypedFromEvent, tuiUntrackedScheduler, tuiWatch, tuiZoneOptimized, tuiZonefree, tuiZonefreeScheduler, tuiZonefull, tuiZonefullScheduler };
156
134
  //# sourceMappingURL=taiga-ui-cdk-observables.mjs.map