@taiga-ui/kit 4.52.0-canary.e10b718 → 4.52.0-canary.eb5ffe3

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 (269) hide show
  1. package/components/accordion/accordion.component.d.ts +13 -0
  2. package/components/accordion/accordion.d.ts +4 -4
  3. package/components/accordion/accordion.directive.d.ts +11 -10
  4. package/components/accordion/index.d.ts +1 -3
  5. package/components/action-bar/action-bar.component.d.ts +5 -7
  6. package/components/action-bar/index.d.ts +0 -2
  7. package/components/avatar/avatar-outline.directive.d.ts +3 -3
  8. package/components/badge/badge.directive.d.ts +2 -2
  9. package/components/block/block.directive.d.ts +4 -4
  10. package/components/block/block.options.d.ts +1 -1
  11. package/components/calendar-month/calendar-month.component.d.ts +1 -1
  12. package/components/calendar-range/calendar-range.component.d.ts +1 -2
  13. package/components/chip/chip.directive.d.ts +2 -4
  14. package/components/comment/comment.directive.d.ts +2 -2
  15. package/components/confirm/confirm.component.d.ts +2 -1
  16. package/components/confirm/confirm.service.d.ts +2 -1
  17. package/{directives → components}/copy/copy.component.d.ts +1 -1
  18. package/{directives → components}/copy/copy.directive.d.ts +1 -0
  19. package/components/data-list-wrapper/data-list-group-wrapper.component.d.ts +2 -0
  20. package/components/files/files/files.component.d.ts +2 -2
  21. package/components/floating-container/floating-container.directive.d.ts +2 -2
  22. package/components/fullscreen/fullscreen.component.d.ts +14 -0
  23. package/components/fullscreen/index.d.ts +1 -0
  24. package/components/index.d.ts +3 -1
  25. package/components/input-number/quantum.directive.d.ts +1 -1
  26. package/components/input-number/step/input-number-step.component.d.ts +1 -1
  27. package/components/input-phone-international/input-phone-international.component.d.ts +24 -30
  28. package/components/input-pin/input-pin.component.d.ts +1 -1
  29. package/components/input-range/input-range.component.d.ts +9 -12
  30. package/components/input-slider/input-slider.directive.d.ts +2 -4
  31. package/components/input-time/input-time.directive.d.ts +1 -0
  32. package/components/like/like.component.d.ts +2 -2
  33. package/components/line-clamp/line-clamp-box.component.d.ts +3 -4
  34. package/components/line-clamp/line-clamp.component.d.ts +8 -10
  35. package/components/multi-select/multi-select-group/multi-select-group.component.d.ts +3 -3
  36. package/components/multi-select/multi-select-option/multi-select-option.component.d.ts +1 -1
  37. package/components/pagination/pagination.component.d.ts +1 -1
  38. package/components/pin/pin.directive.d.ts +2 -2
  39. package/components/preview/pagination/preview-pagination.component.d.ts +1 -1
  40. package/components/preview/preview.component.d.ts +1 -1
  41. package/components/preview/zoom/preview-zoom.component.d.ts +1 -1
  42. package/components/progress/progress-bar/fixed-gradient/progress-fixed-gradient.directive.d.ts +1 -2
  43. package/components/progress/progress-segmented/progress-segmented.directive.d.ts +2 -2
  44. package/components/push/push-alert.component.d.ts +4 -3
  45. package/components/push/push.component.d.ts +1 -1
  46. package/components/push/push.directive.d.ts +4 -6
  47. package/components/push/push.options.d.ts +4 -8
  48. package/components/push/push.service.d.ts +6 -2
  49. package/components/range/range-change.directive.d.ts +1 -1
  50. package/components/range/range.component.d.ts +0 -5
  51. package/components/rating/rating.component.d.ts +5 -5
  52. package/components/rating/rating.options.d.ts +5 -3
  53. package/components/slider/helpers/key-steps.d.ts +1 -2
  54. package/components/slider/helpers/slider-key-steps.directive.d.ts +12 -21
  55. package/components/slides/slides.directive.d.ts +4 -4
  56. package/components/status/status.directive.d.ts +2 -2
  57. package/components/tabs/tabs-with-more.component.d.ts +1 -1
  58. package/components/textarea/textarea-limit.directive.d.ts +4 -5
  59. package/components/toast/index.d.ts +5 -0
  60. package/components/toast/toast.component.d.ts +18 -0
  61. package/components/toast/toast.d.ts +3 -0
  62. package/components/toast/toast.directive.d.ts +7 -0
  63. package/components/toast/toast.options.d.ts +9 -0
  64. package/components/toast/toast.service.d.ts +17 -0
  65. package/components/tree/components/tree-item-content/tree-item-content.component.d.ts +1 -1
  66. package/directives/button-select/button-select.directive.d.ts +1 -2
  67. package/directives/chevron/chevron.directive.d.ts +2 -3
  68. package/directives/fade/fade.directive.d.ts +1 -0
  69. package/directives/index.d.ts +0 -1
  70. package/directives/sensitive/sensitive.directive.d.ts +2 -2
  71. package/directives/shimmer/shimmer.directive.d.ts +3 -3
  72. package/directives/skeleton/skeleton.directive.d.ts +3 -3
  73. package/directives/tooltip/tooltip.directive.d.ts +2 -2
  74. package/fesm2022/taiga-ui-kit-components-accordion.mjs +69 -144
  75. package/fesm2022/taiga-ui-kit-components-accordion.mjs.map +1 -1
  76. package/fesm2022/taiga-ui-kit-components-action-bar.mjs +22 -38
  77. package/fesm2022/taiga-ui-kit-components-action-bar.mjs.map +1 -1
  78. package/fesm2022/taiga-ui-kit-components-avatar.mjs +21 -32
  79. package/fesm2022/taiga-ui-kit-components-avatar.mjs.map +1 -1
  80. package/fesm2022/taiga-ui-kit-components-badge-notification.mjs.map +1 -1
  81. package/fesm2022/taiga-ui-kit-components-badge.mjs +11 -18
  82. package/fesm2022/taiga-ui-kit-components-badge.mjs.map +1 -1
  83. package/fesm2022/taiga-ui-kit-components-badged-content.mjs.map +1 -1
  84. package/fesm2022/taiga-ui-kit-components-block.mjs +15 -22
  85. package/fesm2022/taiga-ui-kit-components-block.mjs.map +1 -1
  86. package/fesm2022/taiga-ui-kit-components-breadcrumbs.mjs +3 -4
  87. package/fesm2022/taiga-ui-kit-components-breadcrumbs.mjs.map +1 -1
  88. package/fesm2022/taiga-ui-kit-components-calendar-month.mjs +3 -4
  89. package/fesm2022/taiga-ui-kit-components-calendar-month.mjs.map +1 -1
  90. package/fesm2022/taiga-ui-kit-components-calendar-range.mjs +4 -5
  91. package/fesm2022/taiga-ui-kit-components-calendar-range.mjs.map +1 -1
  92. package/fesm2022/taiga-ui-kit-components-carousel.mjs +2 -2
  93. package/fesm2022/taiga-ui-kit-components-carousel.mjs.map +1 -1
  94. package/fesm2022/taiga-ui-kit-components-checkbox.mjs +2 -2
  95. package/fesm2022/taiga-ui-kit-components-checkbox.mjs.map +1 -1
  96. package/fesm2022/taiga-ui-kit-components-chip.mjs +13 -25
  97. package/fesm2022/taiga-ui-kit-components-chip.mjs.map +1 -1
  98. package/fesm2022/taiga-ui-kit-components-combo-box.mjs +5 -5
  99. package/fesm2022/taiga-ui-kit-components-combo-box.mjs.map +1 -1
  100. package/fesm2022/taiga-ui-kit-components-comment.mjs +11 -18
  101. package/fesm2022/taiga-ui-kit-components-comment.mjs.map +1 -1
  102. package/fesm2022/taiga-ui-kit-components-compass.mjs.map +1 -1
  103. package/fesm2022/taiga-ui-kit-components-confirm.mjs +8 -9
  104. package/fesm2022/taiga-ui-kit-components-confirm.mjs.map +1 -1
  105. package/fesm2022/{taiga-ui-kit-directives-copy.mjs → taiga-ui-kit-components-copy.mjs} +7 -6
  106. package/fesm2022/taiga-ui-kit-components-copy.mjs.map +1 -0
  107. package/fesm2022/taiga-ui-kit-components-data-list-wrapper.mjs +14 -6
  108. package/fesm2022/taiga-ui-kit-components-data-list-wrapper.mjs.map +1 -1
  109. package/fesm2022/taiga-ui-kit-components-drawer.mjs +2 -2
  110. package/fesm2022/taiga-ui-kit-components-drawer.mjs.map +1 -1
  111. package/fesm2022/taiga-ui-kit-components-elastic-container.mjs.map +1 -1
  112. package/fesm2022/taiga-ui-kit-components-files.mjs +12 -11
  113. package/fesm2022/taiga-ui-kit-components-files.mjs.map +1 -1
  114. package/fesm2022/taiga-ui-kit-components-filter.mjs +1 -1
  115. package/fesm2022/taiga-ui-kit-components-filter.mjs.map +1 -1
  116. package/fesm2022/taiga-ui-kit-components-floating-container.mjs +11 -17
  117. package/fesm2022/taiga-ui-kit-components-floating-container.mjs.map +1 -1
  118. package/fesm2022/taiga-ui-kit-components-fullscreen.mjs +63 -0
  119. package/fesm2022/taiga-ui-kit-components-fullscreen.mjs.map +1 -0
  120. package/fesm2022/taiga-ui-kit-components-input-chip.mjs.map +1 -1
  121. package/fesm2022/taiga-ui-kit-components-input-color.mjs +1 -2
  122. package/fesm2022/taiga-ui-kit-components-input-color.mjs.map +1 -1
  123. package/fesm2022/taiga-ui-kit-components-input-date-multi.mjs +1 -2
  124. package/fesm2022/taiga-ui-kit-components-input-date-multi.mjs.map +1 -1
  125. package/fesm2022/taiga-ui-kit-components-input-date-time.mjs +1 -2
  126. package/fesm2022/taiga-ui-kit-components-input-date-time.mjs.map +1 -1
  127. package/fesm2022/taiga-ui-kit-components-input-date.mjs +3 -4
  128. package/fesm2022/taiga-ui-kit-components-input-date.mjs.map +1 -1
  129. package/fesm2022/taiga-ui-kit-components-input-inline.mjs.map +1 -1
  130. package/fesm2022/taiga-ui-kit-components-input-month-range.mjs +3 -4
  131. package/fesm2022/taiga-ui-kit-components-input-month-range.mjs.map +1 -1
  132. package/fesm2022/taiga-ui-kit-components-input-month.mjs +3 -4
  133. package/fesm2022/taiga-ui-kit-components-input-month.mjs.map +1 -1
  134. package/fesm2022/taiga-ui-kit-components-input-number.mjs +10 -9
  135. package/fesm2022/taiga-ui-kit-components-input-number.mjs.map +1 -1
  136. package/fesm2022/taiga-ui-kit-components-input-phone-international.mjs +103 -126
  137. package/fesm2022/taiga-ui-kit-components-input-phone-international.mjs.map +1 -1
  138. package/fesm2022/taiga-ui-kit-components-input-phone.mjs +2 -3
  139. package/fesm2022/taiga-ui-kit-components-input-phone.mjs.map +1 -1
  140. package/fesm2022/taiga-ui-kit-components-input-pin.mjs +2 -2
  141. package/fesm2022/taiga-ui-kit-components-input-pin.mjs.map +1 -1
  142. package/fesm2022/taiga-ui-kit-components-input-range.mjs +31 -27
  143. package/fesm2022/taiga-ui-kit-components-input-range.mjs.map +1 -1
  144. package/fesm2022/taiga-ui-kit-components-input-slider.mjs +25 -39
  145. package/fesm2022/taiga-ui-kit-components-input-slider.mjs.map +1 -1
  146. package/fesm2022/taiga-ui-kit-components-input-time.mjs +19 -3
  147. package/fesm2022/taiga-ui-kit-components-input-time.mjs.map +1 -1
  148. package/fesm2022/taiga-ui-kit-components-input-year.mjs +2 -3
  149. package/fesm2022/taiga-ui-kit-components-input-year.mjs.map +1 -1
  150. package/fesm2022/taiga-ui-kit-components-items-with-more.mjs +2 -2
  151. package/fesm2022/taiga-ui-kit-components-items-with-more.mjs.map +1 -1
  152. package/fesm2022/taiga-ui-kit-components-like.mjs +3 -3
  153. package/fesm2022/taiga-ui-kit-components-like.mjs.map +1 -1
  154. package/fesm2022/taiga-ui-kit-components-line-clamp.mjs +25 -64
  155. package/fesm2022/taiga-ui-kit-components-line-clamp.mjs.map +1 -1
  156. package/fesm2022/taiga-ui-kit-components-message.mjs +6 -8
  157. package/fesm2022/taiga-ui-kit-components-message.mjs.map +1 -1
  158. package/fesm2022/taiga-ui-kit-components-multi-select.mjs +17 -18
  159. package/fesm2022/taiga-ui-kit-components-multi-select.mjs.map +1 -1
  160. package/fesm2022/taiga-ui-kit-components-notification-middle.mjs +2 -9
  161. package/fesm2022/taiga-ui-kit-components-notification-middle.mjs.map +1 -1
  162. package/fesm2022/taiga-ui-kit-components-pager.mjs.map +1 -1
  163. package/fesm2022/taiga-ui-kit-components-pagination.mjs +5 -6
  164. package/fesm2022/taiga-ui-kit-components-pagination.mjs.map +1 -1
  165. package/fesm2022/taiga-ui-kit-components-pin.mjs +13 -17
  166. package/fesm2022/taiga-ui-kit-components-pin.mjs.map +1 -1
  167. package/fesm2022/taiga-ui-kit-components-preview-dialog.mjs +2 -2
  168. package/fesm2022/taiga-ui-kit-components-preview-dialog.mjs.map +1 -1
  169. package/fesm2022/taiga-ui-kit-components-preview.mjs +13 -13
  170. package/fesm2022/taiga-ui-kit-components-preview.mjs.map +1 -1
  171. package/fesm2022/taiga-ui-kit-components-progress.mjs +21 -34
  172. package/fesm2022/taiga-ui-kit-components-progress.mjs.map +1 -1
  173. package/fesm2022/taiga-ui-kit-components-pulse.mjs.map +1 -1
  174. package/fesm2022/taiga-ui-kit-components-push.mjs +40 -47
  175. package/fesm2022/taiga-ui-kit-components-push.mjs.map +1 -1
  176. package/fesm2022/taiga-ui-kit-components-radio-list.mjs +2 -2
  177. package/fesm2022/taiga-ui-kit-components-radio-list.mjs.map +1 -1
  178. package/fesm2022/taiga-ui-kit-components-radio.mjs +2 -2
  179. package/fesm2022/taiga-ui-kit-components-radio.mjs.map +1 -1
  180. package/fesm2022/taiga-ui-kit-components-range.mjs +4 -13
  181. package/fesm2022/taiga-ui-kit-components-range.mjs.map +1 -1
  182. package/fesm2022/taiga-ui-kit-components-rating.mjs +15 -19
  183. package/fesm2022/taiga-ui-kit-components-rating.mjs.map +1 -1
  184. package/fesm2022/taiga-ui-kit-components-segmented.mjs.map +1 -1
  185. package/fesm2022/taiga-ui-kit-components-select.mjs +29 -22
  186. package/fesm2022/taiga-ui-kit-components-select.mjs.map +1 -1
  187. package/fesm2022/taiga-ui-kit-components-slider.mjs +57 -55
  188. package/fesm2022/taiga-ui-kit-components-slider.mjs.map +1 -1
  189. package/fesm2022/taiga-ui-kit-components-slides.mjs +12 -20
  190. package/fesm2022/taiga-ui-kit-components-slides.mjs.map +1 -1
  191. package/fesm2022/taiga-ui-kit-components-status.mjs +10 -14
  192. package/fesm2022/taiga-ui-kit-components-status.mjs.map +1 -1
  193. package/fesm2022/taiga-ui-kit-components-stepper.mjs.map +1 -1
  194. package/fesm2022/taiga-ui-kit-components-switch.mjs +2 -2
  195. package/fesm2022/taiga-ui-kit-components-switch.mjs.map +1 -1
  196. package/fesm2022/taiga-ui-kit-components-tabs.mjs +14 -17
  197. package/fesm2022/taiga-ui-kit-components-tabs.mjs.map +1 -1
  198. package/fesm2022/taiga-ui-kit-components-textarea.mjs +4 -11
  199. package/fesm2022/taiga-ui-kit-components-textarea.mjs.map +1 -1
  200. package/fesm2022/taiga-ui-kit-components-tiles.mjs.map +1 -1
  201. package/fesm2022/taiga-ui-kit-components-toast.mjs +165 -0
  202. package/fesm2022/taiga-ui-kit-components-toast.mjs.map +1 -0
  203. package/fesm2022/taiga-ui-kit-components-tree.mjs +4 -4
  204. package/fesm2022/taiga-ui-kit-components-tree.mjs.map +1 -1
  205. package/fesm2022/taiga-ui-kit-components.mjs +3 -1
  206. package/fesm2022/taiga-ui-kit-components.mjs.map +1 -1
  207. package/fesm2022/taiga-ui-kit-directives-button-group.mjs +6 -9
  208. package/fesm2022/taiga-ui-kit-directives-button-group.mjs.map +1 -1
  209. package/fesm2022/taiga-ui-kit-directives-button-select.mjs +2 -9
  210. package/fesm2022/taiga-ui-kit-directives-button-select.mjs.map +1 -1
  211. package/fesm2022/taiga-ui-kit-directives-chevron.mjs +11 -18
  212. package/fesm2022/taiga-ui-kit-directives-chevron.mjs.map +1 -1
  213. package/fesm2022/taiga-ui-kit-directives-connected.mjs +7 -12
  214. package/fesm2022/taiga-ui-kit-directives-connected.mjs.map +1 -1
  215. package/fesm2022/taiga-ui-kit-directives-fade.mjs +6 -9
  216. package/fesm2022/taiga-ui-kit-directives-fade.mjs.map +1 -1
  217. package/fesm2022/taiga-ui-kit-directives-password.mjs +2 -5
  218. package/fesm2022/taiga-ui-kit-directives-password.mjs.map +1 -1
  219. package/fesm2022/taiga-ui-kit-directives-sensitive.mjs +11 -16
  220. package/fesm2022/taiga-ui-kit-directives-sensitive.mjs.map +1 -1
  221. package/fesm2022/taiga-ui-kit-directives-shimmer.mjs +22 -32
  222. package/fesm2022/taiga-ui-kit-directives-shimmer.mjs.map +1 -1
  223. package/fesm2022/taiga-ui-kit-directives-skeleton.mjs +25 -36
  224. package/fesm2022/taiga-ui-kit-directives-skeleton.mjs.map +1 -1
  225. package/fesm2022/taiga-ui-kit-directives-tooltip.mjs +13 -18
  226. package/fesm2022/taiga-ui-kit-directives-tooltip.mjs.map +1 -1
  227. package/fesm2022/taiga-ui-kit-directives-unfinished-validator.mjs +2 -3
  228. package/fesm2022/taiga-ui-kit-directives-unfinished-validator.mjs.map +1 -1
  229. package/fesm2022/taiga-ui-kit-directives.mjs +0 -1
  230. package/fesm2022/taiga-ui-kit-directives.mjs.map +1 -1
  231. package/fesm2022/taiga-ui-kit-pipes-sort-countries.mjs +2 -1
  232. package/fesm2022/taiga-ui-kit-pipes-sort-countries.mjs.map +1 -1
  233. package/fesm2022/taiga-ui-kit-pipes.mjs +0 -1
  234. package/fesm2022/taiga-ui-kit-pipes.mjs.map +1 -1
  235. package/fesm2022/taiga-ui-kit-tokens.mjs +4 -7
  236. package/fesm2022/taiga-ui-kit-tokens.mjs.map +1 -1
  237. package/package.json +34 -33
  238. package/pipes/index.d.ts +0 -1
  239. package/styles/components/badge.less +1 -0
  240. package/styles/components/checkbox.less +1 -1
  241. package/styles/components/chip.less +12 -1
  242. package/styles/components/pin.less +0 -1
  243. package/styles/components/radio.less +1 -1
  244. package/styles/components/switch.less +1 -1
  245. package/styles/components/toast.less +44 -0
  246. package/tokens/i18n.d.ts +25 -26
  247. package/tokens/index.d.ts +0 -1
  248. package/components/accordion/accordion-item-content.directive.d.ts +0 -6
  249. package/components/accordion/accordion-item-eager-content.directive.d.ts +0 -5
  250. package/components/accordion/accordion-item.component.d.ts +0 -25
  251. package/components/action-bar/action-bar.d.ts +0 -3
  252. package/components/action-bar/action-bar.directive.d.ts +0 -6
  253. package/components/pdf-viewer/index.d.ts +0 -4
  254. package/components/pdf-viewer/pdf-viewer.component.d.ts +0 -12
  255. package/components/pdf-viewer/pdf-viewer.directive.d.ts +0 -7
  256. package/components/pdf-viewer/pdf-viewer.options.d.ts +0 -13
  257. package/components/pdf-viewer/pdf-viewer.service.d.ts +0 -13
  258. package/fesm2022/taiga-ui-kit-components-pdf-viewer.mjs +0 -83
  259. package/fesm2022/taiga-ui-kit-components-pdf-viewer.mjs.map +0 -1
  260. package/fesm2022/taiga-ui-kit-directives-copy.mjs.map +0 -1
  261. package/fesm2022/taiga-ui-kit-pipes-field-error.mjs +0 -147
  262. package/fesm2022/taiga-ui-kit-pipes-field-error.mjs.map +0 -1
  263. package/pipes/field-error/field-error-content-pipe.d.ts +0 -14
  264. package/pipes/field-error/field-error-pipe.d.ts +0 -29
  265. package/pipes/field-error/index.d.ts +0 -2
  266. package/tokens/validation-errors.d.ts +0 -5
  267. /package/{directives → components}/copy/copy.d.ts +0 -0
  268. /package/{directives → components}/copy/copy.options.d.ts +0 -0
  269. /package/{directives → components}/copy/index.d.ts +0 -0
@@ -1,26 +1,25 @@
1
1
  import { isPlatformBrowser } from '@angular/common';
2
2
  import * as i0 from '@angular/core';
3
- import { ChangeDetectionStrategy, ViewEncapsulation, Component, inject, PLATFORM_ID, Input, Directive } from '@angular/core';
3
+ import { ChangeDetectionStrategy, ViewEncapsulation, Component, inject, PLATFORM_ID, input, Directive } from '@angular/core';
4
4
  import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
5
5
  import { tuiWithStyles } from '@taiga-ui/cdk/utils/miscellaneous';
6
6
 
7
- class TuiShimmerStyles {
8
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiShimmerStyles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: TuiShimmerStyles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-shimmer-styles" }, ngImport: i0, template: '', isInline: true, styles: ["@keyframes tuiShimmer{0%{-webkit-mask-position:top left,-100rem;mask-position:top left,-100rem}to{-webkit-mask-position:top left,300rem;mask-position:top left,300rem}}[tuiShimmer]._shimmer{-webkit-mask-image:linear-gradient(#000,#000),linear-gradient(-70deg,transparent,rgba(0,0,0,.5),transparent);mask-image:linear-gradient(#000,#000),linear-gradient(-70deg,transparent,rgba(0,0,0,.5),transparent);-webkit-mask-size:100%,6rem 100%;mask-size:100%,6rem 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-composite:source-out;mask-composite:subtract;animation:tuiShimmer 8s infinite linear;pointer-events:none;-webkit-user-select:none;user-select:none}[tuiShimmer]._disabled{animation:none;mask:none;opacity:var(--tui-disabled-opacity)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
7
+ const OPTIONS = { duration: 1500, iterations: Infinity };
8
+ class Styles {
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: Styles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: Styles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-shimmer" }, ngImport: i0, template: '', isInline: true, styles: ["@keyframes tuiShimmer{0%{-webkit-mask-position:top left,-100rem;mask-position:top left,-100rem}to{-webkit-mask-position:top left,300rem;mask-position:top left,300rem}}[tuiShimmer]._shimmer{-webkit-mask-image:linear-gradient(#000,#000),linear-gradient(-70deg,transparent,rgba(0,0,0,.5),transparent);mask-image:linear-gradient(#000,#000),linear-gradient(-70deg,transparent,rgba(0,0,0,.5),transparent);-webkit-mask-size:100%,6rem 100%;mask-size:100%,6rem 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-composite:source-out;mask-composite:subtract;animation:tuiShimmer 8s infinite linear;pointer-events:none;-webkit-user-select:none;user-select:none}[tuiShimmer]._disabled{animation:none;mask:none;opacity:var(--tui-disabled-opacity)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
10
11
  }
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiShimmerStyles, decorators: [{
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: Styles, decorators: [{
12
13
  type: Component,
13
- args: [{ standalone: true, template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
14
- class: 'tui-shimmer-styles',
15
- }, styles: ["@keyframes tuiShimmer{0%{-webkit-mask-position:top left,-100rem;mask-position:top left,-100rem}to{-webkit-mask-position:top left,300rem;mask-position:top left,300rem}}[tuiShimmer]._shimmer{-webkit-mask-image:linear-gradient(#000,#000),linear-gradient(-70deg,transparent,rgba(0,0,0,.5),transparent);mask-image:linear-gradient(#000,#000),linear-gradient(-70deg,transparent,rgba(0,0,0,.5),transparent);-webkit-mask-size:100%,6rem 100%;mask-size:100%,6rem 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-composite:source-out;mask-composite:subtract;animation:tuiShimmer 8s infinite linear;pointer-events:none;-webkit-user-select:none;user-select:none}[tuiShimmer]._disabled{animation:none;mask:none;opacity:var(--tui-disabled-opacity)}\n"] }]
14
+ args: [{ template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'tui-shimmer' }, styles: ["@keyframes tuiShimmer{0%{-webkit-mask-position:top left,-100rem;mask-position:top left,-100rem}to{-webkit-mask-position:top left,300rem;mask-position:top left,300rem}}[tuiShimmer]._shimmer{-webkit-mask-image:linear-gradient(#000,#000),linear-gradient(-70deg,transparent,rgba(0,0,0,.5),transparent);mask-image:linear-gradient(#000,#000),linear-gradient(-70deg,transparent,rgba(0,0,0,.5),transparent);-webkit-mask-size:100%,6rem 100%;mask-size:100%,6rem 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-composite:source-out;mask-composite:subtract;animation:tuiShimmer 8s infinite linear;pointer-events:none;-webkit-user-select:none;user-select:none}[tuiShimmer]._disabled{animation:none;mask:none;opacity:var(--tui-disabled-opacity)}\n"] }]
16
15
  }] });
17
16
  class TuiShimmer {
18
17
  constructor() {
19
18
  this.isBrowser = isPlatformBrowser(inject(PLATFORM_ID));
20
19
  this.el = tuiInjectElement();
20
+ this.nothing = tuiWithStyles(Styles);
21
21
  this.disabled = false;
22
- this.nothing = tuiWithStyles(TuiShimmerStyles);
23
- this.shimmer = false;
22
+ this.tuiShimmer = input(false);
24
23
  }
25
24
  ngOnChanges() {
26
25
  if (!this.isBrowser) {
@@ -32,39 +31,30 @@ class TuiShimmer {
32
31
  }
33
32
  this.animation?.commitStyles();
34
33
  this.animation?.cancel();
35
- if (this.shimmer) {
36
- this.animation = this.el.animate({ opacity: [0.5, 0.25, 0.5, 0.5] }, { duration: 1500, iterations: Infinity });
37
- }
38
- else {
39
- this.animation = this.el.animate([{ opacity: 0, offset: 0.5 }, { opacity: 1 }], {
40
- duration: 800,
41
- });
42
- this.animation.finished
43
- .then(() => {
44
- this.el.style.opacity = '';
45
- })
46
- .catch(() => { });
47
- }
34
+ this.animation = this.tuiShimmer()
35
+ ? this.el.animate({ opacity: [0.5, 0.25, 0.5, 0.5] }, OPTIONS)
36
+ : this.el.animate([{ opacity: 0, offset: 0.5 }, { opacity: 1 }], 800);
37
+ this.animation.finished
38
+ .then(() => {
39
+ this.el.style.opacity = '';
40
+ })
41
+ .catch(() => { });
48
42
  }
49
43
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiShimmer, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
50
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiShimmer, isStandalone: true, selector: "[tuiShimmer]", inputs: { shimmer: ["tuiShimmer", "shimmer"] }, host: { attributes: { "tuiShimmer": "" }, properties: { "class._shimmer": "shimmer", "class._disabled": "shimmer && disabled", "attr.inert": "shimmer || null" } }, usesOnChanges: true, ngImport: i0 }); }
44
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.15", type: TuiShimmer, isStandalone: true, selector: "[tuiShimmer]", inputs: { tuiShimmer: { classPropertyName: "tuiShimmer", publicName: "tuiShimmer", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "tuiShimmer": "" }, properties: { "class._shimmer": "tuiShimmer()", "class._disabled": "tuiShimmer() && disabled", "attr.inert": "tuiShimmer() || null" } }, usesOnChanges: true, ngImport: i0 }); }
51
45
  }
52
46
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiShimmer, decorators: [{
53
47
  type: Directive,
54
48
  args: [{
55
- standalone: true,
56
49
  selector: '[tuiShimmer]',
57
50
  host: {
58
51
  tuiShimmer: '',
59
- '[class._shimmer]': 'shimmer',
60
- '[class._disabled]': 'shimmer && disabled',
61
- '[attr.inert]': 'shimmer || null',
52
+ '[class._shimmer]': 'tuiShimmer()',
53
+ '[class._disabled]': 'tuiShimmer() && disabled',
54
+ '[attr.inert]': 'tuiShimmer() || null',
62
55
  },
63
56
  }]
64
- }], propDecorators: { shimmer: [{
65
- type: Input,
66
- args: ['tuiShimmer']
67
- }] } });
57
+ }] });
68
58
 
69
59
  /**
70
60
  * Generated bundle index. Do not edit.
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-directives-shimmer.mjs","sources":["../../../projects/kit/directives/shimmer/shimmer.directive.ts","../../../projects/kit/directives/shimmer/taiga-ui-kit-directives-shimmer.ts"],"sourcesContent":["import {isPlatformBrowser} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n Directive,\n inject,\n Input,\n type OnChanges,\n PLATFORM_ID,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\n\n@Component({\n standalone: true,\n template: '',\n styleUrls: ['./shimmer.style.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'tui-shimmer-styles',\n },\n})\nclass TuiShimmerStyles {}\n\n@Directive({\n standalone: true,\n selector: '[tuiShimmer]',\n host: {\n tuiShimmer: '',\n '[class._shimmer]': 'shimmer',\n '[class._disabled]': 'shimmer && disabled',\n '[attr.inert]': 'shimmer || null',\n },\n})\nexport class TuiShimmer implements OnChanges {\n private readonly isBrowser = isPlatformBrowser(inject(PLATFORM_ID));\n private readonly el = tuiInjectElement();\n private animation?: Animation;\n\n protected disabled = false;\n\n protected readonly nothing = tuiWithStyles(TuiShimmerStyles);\n\n @Input('tuiShimmer')\n public shimmer = false;\n\n public ngOnChanges(): void {\n if (!this.isBrowser) {\n return;\n }\n\n this.disabled = !parseFloat(\n getComputedStyle(this.el).getPropertyValue('--tui-duration'),\n );\n\n if (this.disabled) {\n return;\n }\n\n this.animation?.commitStyles();\n this.animation?.cancel();\n\n if (this.shimmer) {\n this.animation = this.el.animate(\n {opacity: [0.5, 0.25, 0.5, 0.5]},\n {duration: 1500, iterations: Infinity},\n );\n } else {\n this.animation = this.el.animate([{opacity: 0, offset: 0.5}, {opacity: 1}], {\n duration: 800,\n });\n\n this.animation.finished\n .then(() => {\n this.el.style.opacity = '';\n })\n .catch(() => {});\n }\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-kit-directives-shimmer.mjs","sources":["../../../projects/kit/directives/shimmer/shimmer.directive.ts","../../../projects/kit/directives/shimmer/taiga-ui-kit-directives-shimmer.ts"],"sourcesContent":["import {isPlatformBrowser} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n Directive,\n inject,\n input,\n type OnChanges,\n PLATFORM_ID,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\n\nconst OPTIONS = {duration: 1500, iterations: Infinity};\n\n@Component({\n template: '',\n styleUrl: './shimmer.style.less',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {class: 'tui-shimmer'},\n})\nclass Styles {}\n\n@Directive({\n selector: '[tuiShimmer]',\n host: {\n tuiShimmer: '',\n '[class._shimmer]': 'tuiShimmer()',\n '[class._disabled]': 'tuiShimmer() && disabled',\n '[attr.inert]': 'tuiShimmer() || null',\n },\n})\nexport class TuiShimmer implements OnChanges {\n private readonly isBrowser = isPlatformBrowser(inject(PLATFORM_ID));\n private readonly el = tuiInjectElement();\n private animation?: Animation;\n\n protected readonly nothing = tuiWithStyles(Styles);\n protected disabled = false;\n\n public readonly tuiShimmer = input(false);\n\n public ngOnChanges(): void {\n if (!this.isBrowser) {\n return;\n }\n\n this.disabled = !parseFloat(\n getComputedStyle(this.el).getPropertyValue('--tui-duration'),\n );\n\n if (this.disabled) {\n return;\n }\n\n this.animation?.commitStyles();\n this.animation?.cancel();\n this.animation = this.tuiShimmer()\n ? this.el.animate({opacity: [0.5, 0.25, 0.5, 0.5]}, OPTIONS)\n : this.el.animate([{opacity: 0, offset: 0.5}, {opacity: 1}], 800);\n this.animation.finished\n .then(() => {\n this.el.style.opacity = '';\n })\n .catch(() => {});\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,29 +1,36 @@
1
- import { __decorate } from 'tslib';
2
1
  import * as i0 from '@angular/core';
3
- import { ChangeDetectionStrategy, ViewEncapsulation, Component, inject, Input, Directive } from '@angular/core';
2
+ import { ChangeDetectionStrategy, ViewEncapsulation, Component, inject, computed, input, Directive } from '@angular/core';
4
3
  import { CHAR_NO_BREAK_SPACE } from '@taiga-ui/cdk/constants';
5
4
  import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
6
- import { tuiWithStyles, tuiPure } from '@taiga-ui/cdk/utils/miscellaneous';
5
+ import { tuiWithStyles } from '@taiga-ui/cdk/utils/miscellaneous';
7
6
  import { TUI_ANIMATIONS_SPEED } from '@taiga-ui/core/tokens';
8
7
  import { tuiGetDuration } from '@taiga-ui/core/utils/miscellaneous';
9
8
 
10
9
  const FADE = [{ opacity: 0.06 }, { opacity: 1 }];
11
- class TuiSkeletonStyles {
12
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiSkeletonStyles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
13
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: TuiSkeletonStyles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-skeleton-styles" }, ngImport: i0, template: '', isInline: true, styles: ["@keyframes tuiSkeleton{0%{opacity:.03}to{opacity:.06}}[tuiSkeleton]._skeleton{color:transparent;background:var(--tui-background-base)!important;box-shadow:none!important;filter:contrast(0) brightness(0);animation:tuiSkeleton ease-in-out calc(var(--tui-duration) * 4) infinite alternate;-webkit-user-select:none;user-select:none;pointer-events:none;opacity:.06}[tuiSkeleton]._skeleton[data-tui-skeleton]{background:transparent!important}[tuiSkeleton]._skeleton[data-tui-skeleton]:before{content:attr(data-tui-skeleton);background:var(--tui-background-base);font-size:smaller;-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:.25rem}[tuiTheme=dark] [tuiSkeleton]._skeleton,[tuiTheme=dark][tuiSkeleton]._skeleton{filter:contrast(0) brightness(0) invert(1)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
10
+ class Styles {
11
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: Styles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
12
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: Styles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-skeleton" }, ngImport: i0, template: '', isInline: true, styles: ["@keyframes tuiSkeleton{0%{opacity:.03}to{opacity:.06}}[tuiSkeleton]._skeleton{color:transparent;background:var(--tui-background-base)!important;box-shadow:none!important;filter:contrast(0) brightness(0);animation:tuiSkeleton ease-in-out calc(var(--tui-duration) * 4) infinite alternate;-webkit-user-select:none;user-select:none;pointer-events:none;opacity:.06}[tuiSkeleton]._skeleton[data-tui-skeleton]{background:transparent!important}[tuiSkeleton]._skeleton[data-tui-skeleton]:before{content:attr(data-tui-skeleton);background:var(--tui-background-base);font-size:smaller;-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:.25rem}[tuiTheme=dark] [tuiSkeleton]._skeleton,[tuiTheme=dark][tuiSkeleton]._skeleton{filter:contrast(0) brightness(0) invert(1)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
14
13
  }
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiSkeletonStyles, decorators: [{
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: Styles, decorators: [{
16
15
  type: Component,
17
- args: [{ standalone: true, template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
18
- class: 'tui-skeleton-styles',
19
- }, styles: ["@keyframes tuiSkeleton{0%{opacity:.03}to{opacity:.06}}[tuiSkeleton]._skeleton{color:transparent;background:var(--tui-background-base)!important;box-shadow:none!important;filter:contrast(0) brightness(0);animation:tuiSkeleton ease-in-out calc(var(--tui-duration) * 4) infinite alternate;-webkit-user-select:none;user-select:none;pointer-events:none;opacity:.06}[tuiSkeleton]._skeleton[data-tui-skeleton]{background:transparent!important}[tuiSkeleton]._skeleton[data-tui-skeleton]:before{content:attr(data-tui-skeleton);background:var(--tui-background-base);font-size:smaller;-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:.25rem}[tuiTheme=dark] [tuiSkeleton]._skeleton,[tuiTheme=dark][tuiSkeleton]._skeleton{filter:contrast(0) brightness(0) invert(1)}\n"] }]
16
+ args: [{ template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'tui-skeleton' }, styles: ["@keyframes tuiSkeleton{0%{opacity:.03}to{opacity:.06}}[tuiSkeleton]._skeleton{color:transparent;background:var(--tui-background-base)!important;box-shadow:none!important;filter:contrast(0) brightness(0);animation:tuiSkeleton ease-in-out calc(var(--tui-duration) * 4) infinite alternate;-webkit-user-select:none;user-select:none;pointer-events:none;opacity:.06}[tuiSkeleton]._skeleton[data-tui-skeleton]{background:transparent!important}[tuiSkeleton]._skeleton[data-tui-skeleton]:before{content:attr(data-tui-skeleton);background:var(--tui-background-base);font-size:smaller;-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:.25rem}[tuiTheme=dark] [tuiSkeleton]._skeleton,[tuiTheme=dark][tuiSkeleton]._skeleton{filter:contrast(0) brightness(0) invert(1)}\n"] }]
20
17
  }] });
21
18
  class TuiSkeleton {
22
19
  constructor() {
23
20
  this.el = tuiInjectElement();
24
21
  this.duration = tuiGetDuration(inject(TUI_ANIMATIONS_SPEED)) * 2;
25
- this.nothing = tuiWithStyles(TuiSkeletonStyles);
26
- this.tuiSkeleton = false;
22
+ this.nothing = tuiWithStyles(Styles);
23
+ this.placeholder = computed((length = this.tuiSkeleton()) => {
24
+ switch (typeof length) {
25
+ case 'number':
26
+ return Array.from({ length }).map(getWord).join(' ');
27
+ case 'string':
28
+ return length;
29
+ default:
30
+ return null;
31
+ }
32
+ });
33
+ this.tuiSkeleton = input(false);
27
34
  }
28
35
  ngOnChanges({ tuiSkeleton }) {
29
36
  this.animation?.cancel();
@@ -31,40 +38,22 @@ class TuiSkeleton {
31
38
  this.animation = this.el.animate?.(FADE, this.duration);
32
39
  }
33
40
  }
34
- getPlaceholder(value) {
35
- switch (typeof value) {
36
- case 'number':
37
- return Array.from({ length: value })
38
- .map(() => CHAR_NO_BREAK_SPACE.repeat(getLength()))
39
- .join(' ');
40
- case 'string':
41
- return value;
42
- default:
43
- return null;
44
- }
45
- }
46
41
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiSkeleton, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
47
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiSkeleton, isStandalone: true, selector: "[tuiSkeleton]", inputs: { tuiSkeleton: "tuiSkeleton" }, host: { attributes: { "tuiSkeleton": "" }, properties: { "class._skeleton": "tuiSkeleton", "attr.data-tui-skeleton": "getPlaceholder(tuiSkeleton)" } }, usesOnChanges: true, ngImport: i0 }); }
42
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.15", type: TuiSkeleton, isStandalone: true, selector: "[tuiSkeleton]", inputs: { tuiSkeleton: { classPropertyName: "tuiSkeleton", publicName: "tuiSkeleton", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "tuiSkeleton": "" }, properties: { "class._skeleton": "tuiSkeleton()", "attr.data-tui-skeleton": "placeholder()" } }, usesOnChanges: true, ngImport: i0 }); }
48
43
  }
49
- __decorate([
50
- tuiPure
51
- ], TuiSkeleton.prototype, "getPlaceholder", null);
52
44
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiSkeleton, decorators: [{
53
45
  type: Directive,
54
46
  args: [{
55
- standalone: true,
56
47
  selector: '[tuiSkeleton]',
57
48
  host: {
58
49
  tuiSkeleton: '',
59
- '[class._skeleton]': 'tuiSkeleton',
60
- '[attr.data-tui-skeleton]': 'getPlaceholder(tuiSkeleton)',
50
+ '[class._skeleton]': 'tuiSkeleton()',
51
+ '[attr.data-tui-skeleton]': 'placeholder()',
61
52
  },
62
53
  }]
63
- }], propDecorators: { tuiSkeleton: [{
64
- type: Input
65
- }], getPlaceholder: [] } });
66
- function getLength() {
67
- return Math.floor(Math.random() * (15 - 5 + 1)) + 5;
54
+ }] });
55
+ function getWord() {
56
+ return CHAR_NO_BREAK_SPACE.repeat(Math.floor(Math.random() * (15 - 5 + 1)) + 5);
68
57
  }
69
58
 
70
59
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-directives-skeleton.mjs","sources":["../../../projects/kit/directives/skeleton/skeleton.directive.ts","../../../projects/kit/directives/skeleton/taiga-ui-kit-directives-skeleton.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n inject,\n Input,\n type OnChanges,\n type SimpleChanges,\n ViewEncapsulation,\n} from '@angular/core';\nimport {CHAR_NO_BREAK_SPACE} from '@taiga-ui/cdk/constants';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiPure, tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TUI_ANIMATIONS_SPEED} from '@taiga-ui/core/tokens';\nimport {tuiGetDuration} from '@taiga-ui/core/utils/miscellaneous';\n\nconst FADE = [{opacity: 0.06}, {opacity: 1}];\n\n@Component({\n standalone: true,\n template: '',\n styleUrls: ['./skeleton.style.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'tui-skeleton-styles',\n },\n})\nclass TuiSkeletonStyles {}\n\n@Directive({\n standalone: true,\n selector: '[tuiSkeleton]',\n host: {\n tuiSkeleton: '',\n '[class._skeleton]': 'tuiSkeleton',\n '[attr.data-tui-skeleton]': 'getPlaceholder(tuiSkeleton)',\n },\n})\nexport class TuiSkeleton implements OnChanges {\n private animation?: Animation;\n private readonly el = tuiInjectElement();\n private readonly duration = tuiGetDuration(inject(TUI_ANIMATIONS_SPEED)) * 2;\n\n protected readonly nothing = tuiWithStyles(TuiSkeletonStyles);\n\n @Input()\n public tuiSkeleton: boolean | number | string = false;\n\n public ngOnChanges({tuiSkeleton}: SimpleChanges): void {\n this.animation?.cancel();\n\n if (!tuiSkeleton?.currentValue && !tuiSkeleton?.firstChange) {\n this.animation = this.el.animate?.(FADE, this.duration);\n }\n }\n\n @tuiPure\n protected getPlaceholder(value: boolean | number | string): string | null {\n switch (typeof value) {\n case 'number':\n return Array.from({length: value})\n .map(() => CHAR_NO_BREAK_SPACE.repeat(getLength()))\n .join(' ');\n case 'string':\n return value;\n default:\n return null;\n }\n }\n}\n\nfunction getLength(): number {\n return Math.floor(Math.random() * (15 - 5 + 1)) + 5;\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-kit-directives-skeleton.mjs","sources":["../../../projects/kit/directives/skeleton/skeleton.directive.ts","../../../projects/kit/directives/skeleton/taiga-ui-kit-directives-skeleton.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n computed,\n Directive,\n inject,\n input,\n type OnChanges,\n type SimpleChanges,\n ViewEncapsulation,\n} from '@angular/core';\nimport {CHAR_NO_BREAK_SPACE} from '@taiga-ui/cdk/constants';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TUI_ANIMATIONS_SPEED} from '@taiga-ui/core/tokens';\nimport {tuiGetDuration} from '@taiga-ui/core/utils/miscellaneous';\n\nconst FADE = [{opacity: 0.06}, {opacity: 1}];\n\n@Component({\n template: '',\n styleUrl: './skeleton.style.less',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {class: 'tui-skeleton'},\n})\nclass Styles {}\n\n@Directive({\n selector: '[tuiSkeleton]',\n host: {\n tuiSkeleton: '',\n '[class._skeleton]': 'tuiSkeleton()',\n '[attr.data-tui-skeleton]': 'placeholder()',\n },\n})\nexport class TuiSkeleton implements OnChanges {\n private animation?: Animation;\n private readonly el = tuiInjectElement();\n private readonly duration = tuiGetDuration(inject(TUI_ANIMATIONS_SPEED)) * 2;\n\n protected readonly nothing = tuiWithStyles(Styles);\n protected readonly placeholder = computed((length = this.tuiSkeleton()) => {\n switch (typeof length) {\n case 'number':\n return Array.from({length}).map(getWord).join(' ');\n case 'string':\n return length;\n default:\n return null;\n }\n });\n\n public readonly tuiSkeleton = input<boolean | number | string>(false);\n\n public ngOnChanges({tuiSkeleton}: SimpleChanges): void {\n this.animation?.cancel();\n\n if (!tuiSkeleton?.currentValue && !tuiSkeleton?.firstChange) {\n this.animation = this.el.animate?.(FADE, this.duration);\n }\n }\n}\n\nfunction getWord(): string {\n return CHAR_NO_BREAK_SPACE.repeat(Math.floor(Math.random() * (15 - 5 + 1)) + 5);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import * as i0 from '@angular/core';
2
- import { ChangeDetectionStrategy, ViewEncapsulation, Component, inject, Input, Directive } from '@angular/core';
2
+ import { ChangeDetectionStrategy, ViewEncapsulation, Component, inject, input, Directive } from '@angular/core';
3
3
  import { toSignal } from '@angular/core/rxjs-interop';
4
4
  import { tuiWatch } from '@taiga-ui/cdk/observables';
5
5
  import { TUI_IS_MOBILE } from '@taiga-ui/cdk/tokens';
6
- import { tuiWithStyles } from '@taiga-ui/cdk/utils/miscellaneous';
6
+ import { tuiWithStyles, tuiSetSignal } from '@taiga-ui/cdk/utils/miscellaneous';
7
7
  import { TuiTextfieldComponent } from '@taiga-ui/core/components/textfield';
8
8
  import * as i1 from '@taiga-ui/core/directives/appearance';
9
9
  import { tuiAppearanceState, tuiAppearanceOptionsProvider, TuiWithAppearance } from '@taiga-ui/core/directives/appearance';
@@ -18,15 +18,13 @@ const [TUI_TOOLTIP_OPTIONS, tuiTooltipOptionsProvider] = tuiCreateOptions({
18
18
  appearance: 'icon',
19
19
  });
20
20
 
21
- class TuiTooltipStyles {
22
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTooltipStyles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
23
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: TuiTooltipStyles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-tooltip" }, ngImport: i0, template: '', isInline: true, styles: ["[tuiTooltip]{border-width:.125rem;border-radius:100%;cursor:pointer;pointer-events:auto;background-clip:content-box!important}[tuiTooltip] [tuiBlock],[tuiTooltip] [tuiCell][data-size=s],[tuiLabel][data-orientation=horizontal] [tuiTooltip],[tuiTooltip][data-size=s]{font-size:1.25rem}[tuiTitle] [tuiTooltip]{font-size:1rem;border:none}[tuiTooltip]:before{font-size:1rem}@media (hover: hover) and (pointer: fine){tui-textfield:hover [tuiTooltip][data-appearance=icon]:before,tui-textarea:hover [tuiTooltip][data-appearance=icon]:before,tui-primitive-textfield:hover [tuiTooltip][data-appearance=icon]:before,tui-input-tag:hover [tuiTooltip][data-appearance=icon]:before{color:var(--tui-text-secondary)}}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
21
+ class Styles {
22
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: Styles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
23
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.15", type: Styles, isStandalone: true, selector: "ng-component", host: { classAttribute: "tui-tooltip" }, ngImport: i0, template: '', isInline: true, styles: ["[tuiTooltip]{border-width:.125rem;border-radius:100%;cursor:pointer;pointer-events:auto;background-clip:content-box!important}[tuiTooltip] [tuiBlock],[tuiTooltip] [tuiCell][data-size=s],[tuiLabel][data-orientation=horizontal] [tuiTooltip],[tuiTooltip][data-size=s]{font-size:1.25rem}[tuiTitle] [tuiTooltip]{font-size:1rem;border:none}[tuiTooltip]:before{font-size:1rem}@media (hover: hover) and (pointer: fine){tui-textfield:hover [tuiTooltip][data-appearance=icon]:before,tui-textarea:hover [tuiTooltip][data-appearance=icon]:before,tui-primitive-textfield:hover [tuiTooltip][data-appearance=icon]:before,tui-input-tag:hover [tuiTooltip][data-appearance=icon]:before{color:var(--tui-text-secondary)}}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
24
24
  }
25
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTooltipStyles, decorators: [{
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: Styles, decorators: [{
26
26
  type: Component,
27
- args: [{ standalone: true, template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
28
- class: 'tui-tooltip',
29
- }, styles: ["[tuiTooltip]{border-width:.125rem;border-radius:100%;cursor:pointer;pointer-events:auto;background-clip:content-box!important}[tuiTooltip] [tuiBlock],[tuiTooltip] [tuiCell][data-size=s],[tuiLabel][data-orientation=horizontal] [tuiTooltip],[tuiTooltip][data-size=s]{font-size:1.25rem}[tuiTitle] [tuiTooltip]{font-size:1rem;border:none}[tuiTooltip]:before{font-size:1rem}@media (hover: hover) and (pointer: fine){tui-textfield:hover [tuiTooltip][data-appearance=icon]:before,tui-textarea:hover [tuiTooltip][data-appearance=icon]:before,tui-primitive-textfield:hover [tuiTooltip][data-appearance=icon]:before,tui-input-tag:hover [tuiTooltip][data-appearance=icon]:before{color:var(--tui-text-secondary)}}\n"] }]
27
+ args: [{ template: '', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: { class: 'tui-tooltip' }, styles: ["[tuiTooltip]{border-width:.125rem;border-radius:100%;cursor:pointer;pointer-events:auto;background-clip:content-box!important}[tuiTooltip] [tuiBlock],[tuiTooltip] [tuiCell][data-size=s],[tuiLabel][data-orientation=horizontal] [tuiTooltip],[tuiTooltip][data-size=s]{font-size:1.25rem}[tuiTitle] [tuiTooltip]{font-size:1rem;border:none}[tuiTooltip]:before{font-size:1rem}@media (hover: hover) and (pointer: fine){tui-textfield:hover [tuiTooltip][data-appearance=icon]:before,tui-textarea:hover [tuiTooltip][data-appearance=icon]:before,tui-primitive-textfield:hover [tuiTooltip][data-appearance=icon]:before,tui-input-tag:hover [tuiTooltip][data-appearance=icon]:before{color:var(--tui-text-secondary)}}\n"] }]
30
28
  }] });
31
29
  class TuiTooltip {
32
30
  constructor() {
@@ -34,13 +32,13 @@ class TuiTooltip {
34
32
  this.isMobile = inject(TUI_IS_MOBILE);
35
33
  this.describe = inject(TuiHintDescribe);
36
34
  this.driver = inject(TuiHintHover);
37
- this.nothing = tuiWithStyles(TuiTooltipStyles);
35
+ this.nothing = tuiWithStyles(Styles);
38
36
  this.state = tuiAppearanceState(toSignal(inject(TuiHintHover).pipe(map((hover) => (hover ? 'hover' : null)), tuiWatch()), { initialValue: null }));
39
- this.size = 'm';
37
+ this.size = input('m');
40
38
  }
41
39
  ngDoCheck() {
42
40
  if (this.textfield?.id) {
43
- this.describe.tuiHintDescribe = this.textfield.id;
41
+ tuiSetSignal(this.describe.id, this.textfield.id);
44
42
  }
45
43
  }
46
44
  onClick(event) {
@@ -53,7 +51,7 @@ class TuiTooltip {
53
51
  }
54
52
  }
55
53
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTooltip, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
56
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiTooltip, isStandalone: true, selector: "tui-icon[tuiTooltip]", inputs: { size: "size" }, host: { attributes: { "tuiTooltip": "" }, listeners: { "click.prevent": "0", "mousedown": "onClick($event)" }, properties: { "attr.data-size": "size" } }, providers: [
54
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.15", type: TuiTooltip, isStandalone: true, selector: "tui-icon[tuiTooltip]", inputs: { size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "tuiTooltip": "" }, listeners: { "click.prevent": "0", "mousedown": "onClick($event)" }, properties: { "attr.data-size": "size()" } }, providers: [
57
55
  tuiAppearanceOptionsProvider(TUI_TOOLTIP_OPTIONS),
58
56
  {
59
57
  provide: TUI_ICON_START,
@@ -64,7 +62,6 @@ class TuiTooltip {
64
62
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiTooltip, decorators: [{
65
63
  type: Directive,
66
64
  args: [{
67
- standalone: true,
68
65
  selector: 'tui-icon[tuiTooltip]',
69
66
  providers: [
70
67
  tuiAppearanceOptionsProvider(TUI_TOOLTIP_OPTIONS),
@@ -86,14 +83,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImpo
86
83
  ],
87
84
  host: {
88
85
  tuiTooltip: '',
89
- '[attr.data-size]': 'size',
86
+ '[attr.data-size]': 'size()',
90
87
  '(click.prevent)': '0',
91
88
  '(mousedown)': 'onClick($event)',
92
89
  },
93
90
  }]
94
- }], propDecorators: { size: [{
95
- type: Input
96
- }] } });
91
+ }] });
97
92
 
98
93
  /**
99
94
  * Generated bundle index. Do not edit.
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-directives-tooltip.mjs","sources":["../../../projects/kit/directives/tooltip/tooltip.options.ts","../../../projects/kit/directives/tooltip/tooltip.directive.ts","../../../projects/kit/directives/tooltip/taiga-ui-kit-directives-tooltip.ts"],"sourcesContent":["import {tuiCreateOptions} from '@taiga-ui/cdk/utils/di';\n\nexport const [TUI_TOOLTIP_OPTIONS, tuiTooltipOptionsProvider] = tuiCreateOptions({\n icon: '',\n appearance: 'icon',\n});\n","import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n type DoCheck,\n inject,\n Input,\n type Signal,\n ViewEncapsulation,\n} from '@angular/core';\nimport {toSignal} from '@angular/core/rxjs-interop';\nimport {tuiWatch} from '@taiga-ui/cdk/observables';\nimport {TUI_IS_MOBILE} from '@taiga-ui/cdk/tokens';\nimport {tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiTextfieldComponent} from '@taiga-ui/core/components/textfield';\nimport {\n tuiAppearanceOptionsProvider,\n tuiAppearanceState,\n TuiWithAppearance,\n} from '@taiga-ui/core/directives/appearance';\nimport {\n TUI_HINT_OPTIONS,\n TuiHintDescribe,\n TuiHintDirective,\n TuiHintHover,\n} from '@taiga-ui/core/directives/hint';\nimport {TUI_ICON_START} from '@taiga-ui/core/tokens';\nimport {type TuiSizeS} from '@taiga-ui/core/types';\nimport {map} from 'rxjs';\n\nimport {TUI_TOOLTIP_OPTIONS} from './tooltip.options';\n\n@Component({\n standalone: true,\n template: '',\n styleUrls: ['./tooltip.style.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'tui-tooltip',\n },\n})\nclass TuiTooltipStyles {}\n\n@Directive({\n standalone: true,\n selector: 'tui-icon[tuiTooltip]',\n providers: [\n tuiAppearanceOptionsProvider(TUI_TOOLTIP_OPTIONS),\n {\n provide: TUI_ICON_START,\n useFactory: () =>\n inject(TUI_TOOLTIP_OPTIONS).icon || inject(TUI_HINT_OPTIONS).icon,\n },\n ],\n hostDirectives: [\n TuiWithAppearance,\n {\n directive: TuiHintDescribe,\n inputs: ['tuiHintDescribe: tuiTooltipDescribe'],\n },\n {\n directive: TuiHintDirective,\n inputs: ['tuiHint: tuiTooltip', 'tuiHintAppearance', 'tuiHintContext'],\n },\n ],\n host: {\n tuiTooltip: '',\n '[attr.data-size]': 'size',\n '(click.prevent)': '0',\n '(mousedown)': 'onClick($event)',\n },\n})\nexport class TuiTooltip implements DoCheck {\n private readonly textfield = inject(TuiTextfieldComponent, {optional: true});\n private readonly isMobile = inject(TUI_IS_MOBILE);\n private readonly describe = inject(TuiHintDescribe);\n private readonly driver = inject(TuiHintHover);\n\n protected readonly nothing = tuiWithStyles(TuiTooltipStyles);\n protected readonly state: Signal<unknown> = tuiAppearanceState(\n toSignal(\n inject(TuiHintHover).pipe(\n map((hover) => (hover ? 'hover' : null)),\n tuiWatch(),\n ),\n {initialValue: null},\n ),\n );\n\n @Input()\n public size: TuiSizeS = 'm';\n\n public ngDoCheck(): void {\n if (this.textfield?.id) {\n this.describe.tuiHintDescribe = this.textfield.id;\n }\n }\n\n protected onClick(event: MouseEvent): void {\n if (this.isMobile) {\n event.preventDefault();\n event.stopPropagation();\n } else {\n this.driver.toggle();\n }\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-kit-directives-tooltip.mjs","sources":["../../../projects/kit/directives/tooltip/tooltip.options.ts","../../../projects/kit/directives/tooltip/tooltip.directive.ts","../../../projects/kit/directives/tooltip/taiga-ui-kit-directives-tooltip.ts"],"sourcesContent":["import {tuiCreateOptions} from '@taiga-ui/cdk/utils/di';\n\nexport const [TUI_TOOLTIP_OPTIONS, tuiTooltipOptionsProvider] = tuiCreateOptions({\n icon: '',\n appearance: 'icon',\n});\n","import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n type DoCheck,\n inject,\n input,\n type Signal,\n ViewEncapsulation,\n} from '@angular/core';\nimport {toSignal} from '@angular/core/rxjs-interop';\nimport {tuiWatch} from '@taiga-ui/cdk/observables';\nimport {TUI_IS_MOBILE} from '@taiga-ui/cdk/tokens';\nimport {tuiSetSignal, tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiTextfieldComponent} from '@taiga-ui/core/components/textfield';\nimport {\n tuiAppearanceOptionsProvider,\n tuiAppearanceState,\n TuiWithAppearance,\n} from '@taiga-ui/core/directives/appearance';\nimport {\n TUI_HINT_OPTIONS,\n TuiHintDescribe,\n TuiHintDirective,\n TuiHintHover,\n} from '@taiga-ui/core/directives/hint';\nimport {TUI_ICON_START} from '@taiga-ui/core/tokens';\nimport {type TuiSizeS} from '@taiga-ui/core/types';\nimport {map} from 'rxjs';\n\nimport {TUI_TOOLTIP_OPTIONS} from './tooltip.options';\n\n@Component({\n template: '',\n styleUrl: './tooltip.style.less',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {class: 'tui-tooltip'},\n})\nclass Styles {}\n\n@Directive({\n selector: 'tui-icon[tuiTooltip]',\n providers: [\n tuiAppearanceOptionsProvider(TUI_TOOLTIP_OPTIONS),\n {\n provide: TUI_ICON_START,\n useFactory: () =>\n inject(TUI_TOOLTIP_OPTIONS).icon || inject(TUI_HINT_OPTIONS).icon,\n },\n ],\n hostDirectives: [\n TuiWithAppearance,\n {\n directive: TuiHintDescribe,\n inputs: ['tuiHintDescribe: tuiTooltipDescribe'],\n },\n {\n directive: TuiHintDirective,\n inputs: ['tuiHint: tuiTooltip', 'tuiHintAppearance', 'tuiHintContext'],\n },\n ],\n host: {\n tuiTooltip: '',\n '[attr.data-size]': 'size()',\n '(click.prevent)': '0',\n '(mousedown)': 'onClick($event)',\n },\n})\nexport class TuiTooltip implements DoCheck {\n private readonly textfield = inject(TuiTextfieldComponent, {optional: true});\n private readonly isMobile = inject(TUI_IS_MOBILE);\n private readonly describe = inject(TuiHintDescribe);\n private readonly driver = inject(TuiHintHover);\n\n protected readonly nothing = tuiWithStyles(Styles);\n protected readonly state: Signal<unknown> = tuiAppearanceState(\n toSignal(\n inject(TuiHintHover).pipe(\n map((hover) => (hover ? 'hover' : null)),\n tuiWatch(),\n ),\n {initialValue: null},\n ),\n );\n\n public readonly size = input<TuiSizeS>('m');\n\n public ngDoCheck(): void {\n if (this.textfield?.id) {\n tuiSetSignal(this.describe.id, this.textfield.id);\n }\n }\n\n protected onClick(event: MouseEvent): void {\n if (this.isMobile) {\n event.preventDefault();\n event.stopPropagation();\n } else {\n this.driver.toggle();\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -5,8 +5,7 @@ import { toSignal } from '@angular/core/rxjs-interop';
5
5
  import { NG_VALIDATORS } from '@angular/forms';
6
6
  import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
7
7
  import { tuiProvide } from '@taiga-ui/cdk/utils/miscellaneous';
8
- import { TUI_DEFAULT_ERROR_MESSAGE } from '@taiga-ui/core/tokens';
9
- import { TUI_VALIDATION_ERRORS } from '@taiga-ui/kit/tokens';
8
+ import { TUI_DEFAULT_ERROR_MESSAGE, TUI_VALIDATION_ERRORS } from '@taiga-ui/core/tokens';
10
9
  import { isObservable } from 'rxjs';
11
10
 
12
11
  function tuiCreateUnfinishedValidator(element, message) {
@@ -17,7 +16,7 @@ function tuiCreateUnfinishedValidator(element, message) {
17
16
 
18
17
  class TuiUnfinishedValidator {
19
18
  constructor() {
20
- this.default = toSignal(inject(TUI_DEFAULT_ERROR_MESSAGE));
19
+ this.default = inject(TUI_DEFAULT_ERROR_MESSAGE);
21
20
  this.error = inject(TUI_VALIDATION_ERRORS)['tuiUnfinished'];
22
21
  this.fallback = this.error ? signal(this.error) : this.default;
23
22
  this.message = isObservable(this.error)
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-directives-unfinished-validator.mjs","sources":["../../../projects/kit/directives/unfinished-validator/unfinished.validator.ts","../../../projects/kit/directives/unfinished-validator/unfinished-validator.directive.ts","../../../projects/kit/directives/unfinished-validator/taiga-ui-kit-directives-unfinished-validator.ts"],"sourcesContent":["import {type AbstractControl, type ValidatorFn} from '@angular/forms';\nimport {TuiValidationError} from '@taiga-ui/cdk/classes';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\nexport function tuiCreateUnfinishedValidator(\n element: HTMLInputElement,\n message: PolymorpheusContent,\n): ValidatorFn {\n return ({\n value,\n }: AbstractControl): {tuiUnfinished: TuiValidationError | string} | null =>\n value === null && element.value !== ''\n ? {tuiUnfinished: new TuiValidationError(message)}\n : null;\n}\n","import {Directive, inject, Input, signal} from '@angular/core';\nimport {toSignal} from '@angular/core/rxjs-interop';\nimport {NG_VALIDATORS, type Validator} from '@angular/forms';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TUI_DEFAULT_ERROR_MESSAGE} from '@taiga-ui/core/tokens';\nimport {TUI_VALIDATION_ERRORS} from '@taiga-ui/kit/tokens';\nimport {isObservable} from 'rxjs';\n\nimport {tuiCreateUnfinishedValidator} from './unfinished.validator';\n\n@Directive({\n standalone: true,\n selector: 'input[tuiUnfinishedValidator]',\n providers: [tuiProvide(NG_VALIDATORS, TuiUnfinishedValidator, true)],\n})\nexport class TuiUnfinishedValidator implements Validator {\n private readonly default = toSignal(inject(TUI_DEFAULT_ERROR_MESSAGE));\n private readonly error = inject(TUI_VALIDATION_ERRORS)['tuiUnfinished'];\n private readonly fallback = this.error ? signal(this.error) : this.default;\n private readonly message = isObservable(this.error)\n ? toSignal(this.error)\n : this.fallback;\n\n @Input()\n public tuiUnfinishedValidator = '';\n\n public readonly validate = tuiCreateUnfinishedValidator(\n tuiInjectElement<HTMLInputElement>(),\n () => this.tuiUnfinishedValidator || this.message(),\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;AAIgB,SAAA,4BAA4B,CACxC,OAAyB,EACzB,OAA4B,EAAA;AAE5B,IAAA,OAAO,CAAC,EACJ,KAAK,GACS,KACd,KAAK,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,KAAK;UAC9B,EAAC,aAAa,EAAE,IAAI,kBAAkB,CAAC,OAAO,CAAC;UAC/C,IAAI;AAClB;;MCEa,sBAAsB,CAAA;AALnC,IAAA,WAAA,GAAA;QAMqB,IAAO,CAAA,OAAA,GAAG,QAAQ,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;QACrD,IAAK,CAAA,KAAA,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC,eAAe,CAAC;AACtD,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO;AACzD,QAAA,IAAA,CAAA,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK;AAC9C,cAAE,QAAQ,CAAC,IAAI,CAAC,KAAK;AACrB,cAAE,IAAI,CAAC,QAAQ;QAGZ,IAAsB,CAAA,sBAAA,GAAG,EAAE;AAElB,QAAA,IAAA,CAAA,QAAQ,GAAG,4BAA4B,CACnD,gBAAgB,EAAoB,EACpC,MAAM,IAAI,CAAC,sBAAsB,IAAI,IAAI,CAAC,OAAO,EAAE,CACtD;AACJ;+GAfY,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAtB,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,EAAA,sBAAA,EAAA,wBAAA,EAAA,EAAA,SAAA,EAFpB,CAAC,UAAU,CAAC,aAAa,EAAE,sBAAsB,EAAE,IAAI,CAAC,CAAC,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAE3D,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBALlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,+BAA+B;oBACzC,SAAS,EAAE,CAAC,UAAU,CAAC,aAAa,EAA0B,sBAAA,EAAA,IAAI,CAAC,CAAC;AACvE,iBAAA;8BAUU,sBAAsB,EAAA,CAAA;sBAD5B;;;ACxBL;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-kit-directives-unfinished-validator.mjs","sources":["../../../projects/kit/directives/unfinished-validator/unfinished.validator.ts","../../../projects/kit/directives/unfinished-validator/unfinished-validator.directive.ts","../../../projects/kit/directives/unfinished-validator/taiga-ui-kit-directives-unfinished-validator.ts"],"sourcesContent":["import {type AbstractControl, type ValidatorFn} from '@angular/forms';\nimport {TuiValidationError} from '@taiga-ui/cdk/classes';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\nexport function tuiCreateUnfinishedValidator(\n element: HTMLInputElement,\n message: PolymorpheusContent,\n): ValidatorFn {\n return ({\n value,\n }: AbstractControl): {tuiUnfinished: TuiValidationError | string} | null =>\n value === null && element.value !== ''\n ? {tuiUnfinished: new TuiValidationError(message)}\n : null;\n}\n","import {Directive, inject, Input, signal} from '@angular/core';\nimport {toSignal} from '@angular/core/rxjs-interop';\nimport {NG_VALIDATORS, type Validator} from '@angular/forms';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TUI_DEFAULT_ERROR_MESSAGE, TUI_VALIDATION_ERRORS} from '@taiga-ui/core/tokens';\nimport {isObservable} from 'rxjs';\n\nimport {tuiCreateUnfinishedValidator} from './unfinished.validator';\n\n@Directive({\n standalone: true,\n selector: 'input[tuiUnfinishedValidator]',\n providers: [tuiProvide(NG_VALIDATORS, TuiUnfinishedValidator, true)],\n})\nexport class TuiUnfinishedValidator implements Validator {\n private readonly default = inject(TUI_DEFAULT_ERROR_MESSAGE);\n private readonly error = inject(TUI_VALIDATION_ERRORS)['tuiUnfinished'];\n private readonly fallback = this.error ? signal(this.error) : this.default;\n private readonly message = isObservable(this.error)\n ? toSignal(this.error)\n : this.fallback;\n\n @Input()\n public tuiUnfinishedValidator = '';\n\n public readonly validate = tuiCreateUnfinishedValidator(\n tuiInjectElement<HTMLInputElement>(),\n () => this.tuiUnfinishedValidator || this.message(),\n );\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;AAIgB,SAAA,4BAA4B,CACxC,OAAyB,EACzB,OAA4B,EAAA;AAE5B,IAAA,OAAO,CAAC,EACJ,KAAK,GACS,KACd,KAAK,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,KAAK;UAC9B,EAAC,aAAa,EAAE,IAAI,kBAAkB,CAAC,OAAO,CAAC;UAC/C,IAAI;AAClB;;MCCa,sBAAsB,CAAA;AALnC,IAAA,WAAA,GAAA;AAMqB,QAAA,IAAA,CAAA,OAAO,GAAG,MAAM,CAAC,yBAAyB,CAAC;QAC3C,IAAK,CAAA,KAAA,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC,eAAe,CAAC;AACtD,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO;AACzD,QAAA,IAAA,CAAA,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK;AAC9C,cAAE,QAAQ,CAAC,IAAI,CAAC,KAAK;AACrB,cAAE,IAAI,CAAC,QAAQ;QAGZ,IAAsB,CAAA,sBAAA,GAAG,EAAE;AAElB,QAAA,IAAA,CAAA,QAAQ,GAAG,4BAA4B,CACnD,gBAAgB,EAAoB,EACpC,MAAM,IAAI,CAAC,sBAAsB,IAAI,IAAI,CAAC,OAAO,EAAE,CACtD;AACJ;+GAfY,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAtB,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,+BAAA,EAAA,MAAA,EAAA,EAAA,sBAAA,EAAA,wBAAA,EAAA,EAAA,SAAA,EAFpB,CAAC,UAAU,CAAC,aAAa,EAAE,sBAAsB,EAAE,IAAI,CAAC,CAAC,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAE3D,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBALlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,+BAA+B;oBACzC,SAAS,EAAE,CAAC,UAAU,CAAC,aAAa,EAA0B,sBAAA,EAAA,IAAI,CAAC,CAAC;AACvE,iBAAA;8BAUU,sBAAsB,EAAA,CAAA;sBAD5B;;;ACvBL;;AAEG;;;;"}
@@ -3,7 +3,6 @@ export * from '@taiga-ui/kit/directives/button-group';
3
3
  export * from '@taiga-ui/kit/directives/button-select';
4
4
  export * from '@taiga-ui/kit/directives/chevron';
5
5
  export * from '@taiga-ui/kit/directives/connected';
6
- export * from '@taiga-ui/kit/directives/copy';
7
6
  export * from '@taiga-ui/kit/directives/data-list-dropdown-manager';
8
7
  export * from '@taiga-ui/kit/directives/fade';
9
8
  export * from '@taiga-ui/kit/directives/fluid-typography';
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-directives.mjs","sources":["../../../projects/kit/directives/taiga-ui-kit-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-kit-directives.mjs","sources":["../../../projects/kit/directives/taiga-ui-kit-directives.ts"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;AAEG"}
@@ -1,11 +1,12 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { inject, Pipe } from '@angular/core';
3
+ import { toObservable } from '@angular/core/rxjs-interop';
3
4
  import { TUI_COUNTRIES } from '@taiga-ui/kit/tokens';
4
5
  import { map } from 'rxjs';
5
6
 
6
7
  class TuiSortCountriesPipe {
7
8
  constructor() {
8
- this.countriesNames$ = inject(TUI_COUNTRIES);
9
+ this.countriesNames$ = toObservable(inject(TUI_COUNTRIES));
9
10
  }
10
11
  transform(countries) {
11
12
  return this.countriesNames$.pipe(map((names) => [...countries].sort((a, b) => names[a].localeCompare(names[b]))));
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-pipes-sort-countries.mjs","sources":["../../../projects/kit/pipes/sort-countries/sort-countries.pipe.ts","../../../projects/kit/pipes/sort-countries/taiga-ui-kit-pipes-sort-countries.ts"],"sourcesContent":["import {inject, Pipe, type PipeTransform} from '@angular/core';\nimport {type TuiCountryIsoCode} from '@taiga-ui/i18n/types';\nimport {TUI_COUNTRIES} from '@taiga-ui/kit/tokens';\nimport {map, type Observable} from 'rxjs';\n\n@Pipe({\n standalone: true,\n name: 'tuiSortCountries',\n})\nexport class TuiSortCountriesPipe implements PipeTransform {\n private readonly countriesNames$ = inject(TUI_COUNTRIES);\n\n public transform(\n countries: readonly TuiCountryIsoCode[],\n ): Observable<TuiCountryIsoCode[]> {\n return this.countriesNames$.pipe(\n map((names) =>\n [...countries].sort((a, b) => names[a].localeCompare(names[b])),\n ),\n );\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;MASa,oBAAoB,CAAA;AAJjC,IAAA,WAAA,GAAA;AAKqB,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,aAAa,CAAC;AAW3D;AATU,IAAA,SAAS,CACZ,SAAuC,EAAA;AAEvC,QAAA,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAC5B,GAAG,CAAC,CAAC,KAAK,KACN,CAAC,GAAG,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAClE,CACJ;;+GAVI,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA;6GAApB,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,kBAAA,EAAA,CAAA,CAAA;;4FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAJhC,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACF,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,IAAI,EAAE,kBAAkB;AAC3B,iBAAA;;;ACRD;;AAEG;;;;"}
1
+ {"version":3,"file":"taiga-ui-kit-pipes-sort-countries.mjs","sources":["../../../projects/kit/pipes/sort-countries/sort-countries.pipe.ts","../../../projects/kit/pipes/sort-countries/taiga-ui-kit-pipes-sort-countries.ts"],"sourcesContent":["import {inject, Pipe, type PipeTransform} from '@angular/core';\nimport {toObservable} from '@angular/core/rxjs-interop';\nimport {type TuiCountryIsoCode} from '@taiga-ui/i18n/types';\nimport {TUI_COUNTRIES} from '@taiga-ui/kit/tokens';\nimport {map, type Observable} from 'rxjs';\n\n@Pipe({\n standalone: true,\n name: 'tuiSortCountries',\n})\nexport class TuiSortCountriesPipe implements PipeTransform {\n private readonly countriesNames$ = toObservable(inject(TUI_COUNTRIES));\n\n public transform(\n countries: readonly TuiCountryIsoCode[],\n ): Observable<TuiCountryIsoCode[]> {\n return this.countriesNames$.pipe(\n map((names) =>\n [...countries].sort((a, b) => names[a].localeCompare(names[b])),\n ),\n );\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;MAUa,oBAAoB,CAAA;AAJjC,IAAA,WAAA,GAAA;QAKqB,IAAe,CAAA,eAAA,GAAG,YAAY,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;AAWzE;AATU,IAAA,SAAS,CACZ,SAAuC,EAAA;AAEvC,QAAA,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAC5B,GAAG,CAAC,CAAC,KAAK,KACN,CAAC,GAAG,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAClE,CACJ;;+GAVI,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA;6GAApB,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,IAAA,EAAA,kBAAA,EAAA,CAAA,CAAA;;4FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAJhC,IAAI;AAAC,YAAA,IAAA,EAAA,CAAA;AACF,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,IAAI,EAAE,kBAAkB;AAC3B,iBAAA;;;ACTD;;AAEG;;;;"}
@@ -1,5 +1,4 @@
1
1
  export * from '@taiga-ui/kit/pipes/emails';
2
- export * from '@taiga-ui/kit/pipes/field-error';
3
2
  export * from '@taiga-ui/kit/pipes/filter-by-input';
4
3
  export * from '@taiga-ui/kit/pipes/hide-selected';
5
4
  export * from '@taiga-ui/kit/pipes/sort-countries';
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-pipes.mjs","sources":["../../../projects/kit/pipes/taiga-ui-kit-pipes.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-kit-pipes.mjs","sources":["../../../projects/kit/pipes/taiga-ui-kit-pipes.ts"],"sourcesContent":["/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;AAAA;;AAEG"}
@@ -10,6 +10,7 @@ import { TUI_FALSE_HANDLER, TUI_DEFAULT_IDENTITY_MATCHER } from '@taiga-ui/cdk/c
10
10
  import { tuiProvideOptions } from '@taiga-ui/cdk/utils/miscellaneous';
11
11
  import { TUI_IS_MOBILE } from '@taiga-ui/cdk/tokens';
12
12
  import { TUI_DROPDOWN_COMPONENT } from '@taiga-ui/core/directives/dropdown';
13
+ import { toObservable } from '@angular/core/rxjs-interop';
13
14
  import { TUI_MONTHS } from '@taiga-ui/core/tokens';
14
15
 
15
16
  /**
@@ -170,8 +171,9 @@ const TUI_MOBILE_CALENDAR_PROVIDER = {
170
171
  inject(TUI_DROPDOWN_COMPONENT, { skipSelf: true }),
171
172
  };
172
173
 
174
+ // TODO: replace with signal
173
175
  const TUI_MONTH_FORMATTER = new InjectionToken(ngDevMode ? 'TUI_MONTH_FORMATTER' : '', {
174
- factory: () => inject(TUI_MONTHS).pipe(map((months) => (date) => {
176
+ factory: () => toObservable(inject(TUI_MONTHS)).pipe(map((months) => (date) => {
175
177
  if (!date) {
176
178
  return '';
177
179
  }
@@ -194,14 +196,9 @@ function tuiPreviewIconsProvider(icons) {
194
196
  return tuiProvideOptions(TUI_PREVIEW_ICONS, icons, TUI_PREVIEW_ICONS_DEFAULT);
195
197
  }
196
198
 
197
- const TUI_VALIDATION_ERRORS = new InjectionToken(ngDevMode ? 'TUI_VALIDATION_ERRORS' : '', {
198
- factory: () => ({}),
199
- });
200
- const tuiValidationErrorsProvider = (useValue) => ({ provide: TUI_VALIDATION_ERRORS, useValue });
201
-
202
199
  /**
203
200
  * Generated bundle index. Do not edit.
204
201
  */
205
202
 
206
- export { TUI_CALENDAR_DATE_STREAM, TUI_CALENDAR_MONTHS, TUI_CANCEL_WORD, TUI_CHOOSE_DAY_OR_RANGE_TEXTS, TUI_CONFIRM_WORDS, TUI_COPY_TEXTS, TUI_COUNTRIES, TUI_DATE_RANGE_VALUE_TRANSFORMER, TUI_DATE_TEXTS, TUI_DATE_TIME_VALUE_TRANSFORMER, TUI_DATE_VALUE_TRANSFORMER, TUI_DEFAULT_ITEMS_HANDLERS, TUI_DIGITAL_INFORMATION_UNITS, TUI_DONE_WORD, TUI_FILE_TEXTS, TUI_FROM_TO_TEXTS, TUI_HIDE_TEXT, TUI_INPUT_DATE_DEFAULT_OPTIONS, TUI_INPUT_DATE_OPTIONS, TUI_INPUT_FILE_TEXTS, TUI_INTERNATIONAL_SEARCH, TUI_ITEMS_HANDLERS, TUI_MOBILE_CALENDAR, TUI_MOBILE_CALENDAR_PROVIDER, TUI_MONTH_FORMATTER, TUI_MORE_WORD, TUI_MULTI_SELECT_TEXTS, TUI_OTHER_DATE_TEXT, TUI_PAGINATION_TEXTS, TUI_PASSWORD_TEXTS, TUI_PLUS_MINUS_TEXTS, TUI_PREVIEW_ICONS, TUI_PREVIEW_ICONS_DEFAULT, TUI_PREVIEW_TEXTS, TUI_PREVIEW_ZOOM_TEXTS, TUI_SHOW_ALL_TEXT, TUI_TIME_TEXTS, TUI_TIME_VALUE_TRANSFORMER, TUI_VALIDATION_ERRORS, tuiDateStreamWithTransformer, tuiInputDateOptionsProvider, tuiItemsHandlersProvider, tuiPreviewIconsProvider, tuiValidationErrorsProvider };
203
+ export { TUI_CALENDAR_DATE_STREAM, TUI_CALENDAR_MONTHS, TUI_CANCEL_WORD, TUI_CHOOSE_DAY_OR_RANGE_TEXTS, TUI_CONFIRM_WORDS, TUI_COPY_TEXTS, TUI_COUNTRIES, TUI_DATE_RANGE_VALUE_TRANSFORMER, TUI_DATE_TEXTS, TUI_DATE_TIME_VALUE_TRANSFORMER, TUI_DATE_VALUE_TRANSFORMER, TUI_DEFAULT_ITEMS_HANDLERS, TUI_DIGITAL_INFORMATION_UNITS, TUI_DONE_WORD, TUI_FILE_TEXTS, TUI_FROM_TO_TEXTS, TUI_HIDE_TEXT, TUI_INPUT_DATE_DEFAULT_OPTIONS, TUI_INPUT_DATE_OPTIONS, TUI_INPUT_FILE_TEXTS, TUI_INTERNATIONAL_SEARCH, TUI_ITEMS_HANDLERS, TUI_MOBILE_CALENDAR, TUI_MOBILE_CALENDAR_PROVIDER, TUI_MONTH_FORMATTER, TUI_MORE_WORD, TUI_MULTI_SELECT_TEXTS, TUI_OTHER_DATE_TEXT, TUI_PAGINATION_TEXTS, TUI_PASSWORD_TEXTS, TUI_PLUS_MINUS_TEXTS, TUI_PREVIEW_ICONS, TUI_PREVIEW_ICONS_DEFAULT, TUI_PREVIEW_TEXTS, TUI_PREVIEW_ZOOM_TEXTS, TUI_SHOW_ALL_TEXT, TUI_TIME_TEXTS, TUI_TIME_VALUE_TRANSFORMER, tuiDateStreamWithTransformer, tuiInputDateOptionsProvider, tuiItemsHandlersProvider, tuiPreviewIconsProvider };
207
204
  //# sourceMappingURL=taiga-ui-kit-tokens.mjs.map