@taiga-ui/kit 4.52.0-canary.6af05be → 4.52.0-canary.a4e325d

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 (710) hide show
  1. package/components/input-color/input-color.component.d.ts +2 -1
  2. package/components/input-number/quantum.directive.d.ts +1 -1
  3. package/components/segmented/segmented.component.d.ts +4 -4
  4. package/components/tree/components/tree-item/tree-item.component.d.ts +1 -1
  5. package/components/tree/components/tree-item-content/tree-item-content.component.d.ts +1 -6
  6. package/fesm2022/taiga-ui-kit-components-accordion.mjs +16 -16
  7. package/fesm2022/taiga-ui-kit-components-accordion.mjs.map +1 -1
  8. package/fesm2022/taiga-ui-kit-components-action-bar.mjs +8 -8
  9. package/fesm2022/taiga-ui-kit-components-action-bar.mjs.map +1 -1
  10. package/fesm2022/taiga-ui-kit-components-avatar.mjs +20 -20
  11. package/fesm2022/taiga-ui-kit-components-avatar.mjs.map +1 -1
  12. package/fesm2022/taiga-ui-kit-components-badge-notification.mjs +4 -4
  13. package/fesm2022/taiga-ui-kit-components-badge-notification.mjs.map +1 -1
  14. package/fesm2022/taiga-ui-kit-components-badge.mjs +8 -8
  15. package/fesm2022/taiga-ui-kit-components-badge.mjs.map +1 -1
  16. package/fesm2022/taiga-ui-kit-components-badged-content.mjs +8 -8
  17. package/fesm2022/taiga-ui-kit-components-badged-content.mjs.map +1 -1
  18. package/fesm2022/taiga-ui-kit-components-block.mjs +7 -7
  19. package/fesm2022/taiga-ui-kit-components-block.mjs.map +1 -1
  20. package/fesm2022/taiga-ui-kit-components-breadcrumbs.mjs +5 -5
  21. package/fesm2022/taiga-ui-kit-components-breadcrumbs.mjs.map +1 -1
  22. package/fesm2022/taiga-ui-kit-components-button-loading.mjs +4 -5
  23. package/fesm2022/taiga-ui-kit-components-button-loading.mjs.map +1 -1
  24. package/fesm2022/taiga-ui-kit-components-calendar-month.mjs +6 -6
  25. package/fesm2022/taiga-ui-kit-components-calendar-month.mjs.map +1 -1
  26. package/fesm2022/taiga-ui-kit-components-calendar-range.mjs +7 -7
  27. package/fesm2022/taiga-ui-kit-components-calendar-range.mjs.map +1 -1
  28. package/fesm2022/taiga-ui-kit-components-carousel.mjs +19 -19
  29. package/fesm2022/taiga-ui-kit-components-carousel.mjs.map +1 -1
  30. package/fesm2022/taiga-ui-kit-components-checkbox.mjs +5 -5
  31. package/fesm2022/taiga-ui-kit-components-checkbox.mjs.map +1 -1
  32. package/fesm2022/taiga-ui-kit-components-chip.mjs +8 -8
  33. package/fesm2022/taiga-ui-kit-components-chip.mjs.map +1 -1
  34. package/fesm2022/taiga-ui-kit-components-combo-box.mjs +4 -4
  35. package/fesm2022/taiga-ui-kit-components-combo-box.mjs.map +1 -1
  36. package/fesm2022/taiga-ui-kit-components-comment.mjs +8 -8
  37. package/fesm2022/taiga-ui-kit-components-comment.mjs.map +1 -1
  38. package/fesm2022/taiga-ui-kit-components-compass.mjs +4 -4
  39. package/fesm2022/taiga-ui-kit-components-compass.mjs.map +1 -1
  40. package/fesm2022/taiga-ui-kit-components-confirm.mjs +8 -8
  41. package/fesm2022/taiga-ui-kit-components-confirm.mjs.map +1 -1
  42. package/fesm2022/taiga-ui-kit-components-data-list-wrapper.mjs +11 -11
  43. package/fesm2022/taiga-ui-kit-components-data-list-wrapper.mjs.map +1 -1
  44. package/fesm2022/taiga-ui-kit-components-drawer.mjs +7 -7
  45. package/fesm2022/taiga-ui-kit-components-drawer.mjs.map +1 -1
  46. package/fesm2022/taiga-ui-kit-components-elastic-container.mjs +8 -8
  47. package/fesm2022/taiga-ui-kit-components-elastic-container.mjs.map +1 -1
  48. package/fesm2022/taiga-ui-kit-components-files.mjs +29 -30
  49. package/fesm2022/taiga-ui-kit-components-files.mjs.map +1 -1
  50. package/fesm2022/taiga-ui-kit-components-filter.mjs +5 -5
  51. package/fesm2022/taiga-ui-kit-components-filter.mjs.map +1 -1
  52. package/fesm2022/taiga-ui-kit-components-floating-container.mjs +7 -7
  53. package/fesm2022/taiga-ui-kit-components-floating-container.mjs.map +1 -1
  54. package/fesm2022/taiga-ui-kit-components-input-chip.mjs +11 -11
  55. package/fesm2022/taiga-ui-kit-components-input-chip.mjs.map +1 -1
  56. package/fesm2022/taiga-ui-kit-components-input-color.mjs +9 -9
  57. package/fesm2022/taiga-ui-kit-components-input-color.mjs.map +1 -1
  58. package/fesm2022/taiga-ui-kit-components-input-date-multi.mjs +4 -4
  59. package/fesm2022/taiga-ui-kit-components-input-date-multi.mjs.map +1 -1
  60. package/fesm2022/taiga-ui-kit-components-input-date-range.mjs +4 -4
  61. package/fesm2022/taiga-ui-kit-components-input-date-range.mjs.map +1 -1
  62. package/fesm2022/taiga-ui-kit-components-input-date-time.mjs +8 -8
  63. package/fesm2022/taiga-ui-kit-components-input-date-time.mjs.map +1 -1
  64. package/fesm2022/taiga-ui-kit-components-input-date.mjs +12 -12
  65. package/fesm2022/taiga-ui-kit-components-input-date.mjs.map +1 -1
  66. package/fesm2022/taiga-ui-kit-components-input-inline.mjs +5 -5
  67. package/fesm2022/taiga-ui-kit-components-input-inline.mjs.map +1 -1
  68. package/fesm2022/taiga-ui-kit-components-input-month-range.mjs +3 -3
  69. package/fesm2022/taiga-ui-kit-components-input-month-range.mjs.map +1 -1
  70. package/fesm2022/taiga-ui-kit-components-input-month.mjs +8 -8
  71. package/fesm2022/taiga-ui-kit-components-input-month.mjs.map +1 -1
  72. package/fesm2022/taiga-ui-kit-components-input-number.mjs +21 -21
  73. package/fesm2022/taiga-ui-kit-components-input-number.mjs.map +1 -1
  74. package/fesm2022/taiga-ui-kit-components-input-password.mjs +4 -5
  75. package/fesm2022/taiga-ui-kit-components-input-password.mjs.map +1 -1
  76. package/fesm2022/taiga-ui-kit-components-input-phone-international.mjs +8 -8
  77. package/fesm2022/taiga-ui-kit-components-input-phone-international.mjs.map +1 -1
  78. package/fesm2022/taiga-ui-kit-components-input-phone.mjs +9 -10
  79. package/fesm2022/taiga-ui-kit-components-input-phone.mjs.map +1 -1
  80. package/fesm2022/taiga-ui-kit-components-input-pin.mjs +5 -5
  81. package/fesm2022/taiga-ui-kit-components-input-pin.mjs.map +1 -1
  82. package/fesm2022/taiga-ui-kit-components-input-range.mjs +6 -6
  83. package/fesm2022/taiga-ui-kit-components-input-range.mjs.map +1 -1
  84. package/fesm2022/taiga-ui-kit-components-input-slider.mjs +7 -7
  85. package/fesm2022/taiga-ui-kit-components-input-slider.mjs.map +1 -1
  86. package/fesm2022/taiga-ui-kit-components-input-time.mjs +12 -11
  87. package/fesm2022/taiga-ui-kit-components-input-time.mjs.map +1 -1
  88. package/fesm2022/taiga-ui-kit-components-input-year.mjs +4 -4
  89. package/fesm2022/taiga-ui-kit-components-input-year.mjs.map +1 -1
  90. package/fesm2022/taiga-ui-kit-components-items-with-more.mjs +15 -15
  91. package/fesm2022/taiga-ui-kit-components-items-with-more.mjs.map +1 -1
  92. package/fesm2022/taiga-ui-kit-components-like.mjs +5 -5
  93. package/fesm2022/taiga-ui-kit-components-like.mjs.map +1 -1
  94. package/fesm2022/taiga-ui-kit-components-line-clamp.mjs +14 -14
  95. package/fesm2022/taiga-ui-kit-components-line-clamp.mjs.map +1 -1
  96. package/fesm2022/taiga-ui-kit-components-message.mjs +8 -8
  97. package/fesm2022/taiga-ui-kit-components-message.mjs.map +1 -1
  98. package/fesm2022/taiga-ui-kit-components-multi-select.mjs +17 -17
  99. package/fesm2022/taiga-ui-kit-components-multi-select.mjs.map +1 -1
  100. package/fesm2022/taiga-ui-kit-components-notification-middle.mjs +12 -12
  101. package/fesm2022/taiga-ui-kit-components-notification-middle.mjs.map +1 -1
  102. package/fesm2022/taiga-ui-kit-components-pager.mjs +7 -7
  103. package/fesm2022/taiga-ui-kit-components-pager.mjs.map +1 -1
  104. package/fesm2022/taiga-ui-kit-components-pagination.mjs +5 -5
  105. package/fesm2022/taiga-ui-kit-components-pagination.mjs.map +1 -1
  106. package/fesm2022/taiga-ui-kit-components-pdf-viewer.mjs +11 -11
  107. package/fesm2022/taiga-ui-kit-components-pdf-viewer.mjs.map +1 -1
  108. package/fesm2022/taiga-ui-kit-components-pin.mjs +8 -8
  109. package/fesm2022/taiga-ui-kit-components-pin.mjs.map +1 -1
  110. package/fesm2022/taiga-ui-kit-components-preview-dialog.mjs +11 -11
  111. package/fesm2022/taiga-ui-kit-components-preview-dialog.mjs.map +1 -1
  112. package/fesm2022/taiga-ui-kit-components-preview.mjs +29 -29
  113. package/fesm2022/taiga-ui-kit-components-preview.mjs.map +1 -1
  114. package/fesm2022/taiga-ui-kit-components-progress.mjs +28 -28
  115. package/fesm2022/taiga-ui-kit-components-progress.mjs.map +1 -1
  116. package/fesm2022/taiga-ui-kit-components-pulse.mjs +4 -4
  117. package/fesm2022/taiga-ui-kit-components-pulse.mjs.map +1 -1
  118. package/fesm2022/taiga-ui-kit-components-push.mjs +17 -17
  119. package/fesm2022/taiga-ui-kit-components-push.mjs.map +1 -1
  120. package/fesm2022/taiga-ui-kit-components-radio-list.mjs +6 -6
  121. package/fesm2022/taiga-ui-kit-components-radio-list.mjs.map +1 -1
  122. package/fesm2022/taiga-ui-kit-components-radio.mjs +9 -9
  123. package/fesm2022/taiga-ui-kit-components-radio.mjs.map +1 -1
  124. package/fesm2022/taiga-ui-kit-components-range.mjs +9 -9
  125. package/fesm2022/taiga-ui-kit-components-range.mjs.map +1 -1
  126. package/fesm2022/taiga-ui-kit-components-rating.mjs +6 -6
  127. package/fesm2022/taiga-ui-kit-components-rating.mjs.map +1 -1
  128. package/fesm2022/taiga-ui-kit-components-routable-dialog.mjs +5 -5
  129. package/fesm2022/taiga-ui-kit-components-routable-dialog.mjs.map +1 -1
  130. package/fesm2022/taiga-ui-kit-components-segmented.mjs +8 -8
  131. package/fesm2022/taiga-ui-kit-components-segmented.mjs.map +1 -1
  132. package/fesm2022/taiga-ui-kit-components-select.mjs +15 -15
  133. package/fesm2022/taiga-ui-kit-components-select.mjs.map +1 -1
  134. package/fesm2022/taiga-ui-kit-components-slider.mjs +20 -21
  135. package/fesm2022/taiga-ui-kit-components-slider.mjs.map +1 -1
  136. package/fesm2022/taiga-ui-kit-components-slides.mjs +7 -7
  137. package/fesm2022/taiga-ui-kit-components-slides.mjs.map +1 -1
  138. package/fesm2022/taiga-ui-kit-components-status.mjs +7 -7
  139. package/fesm2022/taiga-ui-kit-components-status.mjs.map +1 -1
  140. package/fesm2022/taiga-ui-kit-components-stepper.mjs +10 -10
  141. package/fesm2022/taiga-ui-kit-components-stepper.mjs.map +1 -1
  142. package/fesm2022/taiga-ui-kit-components-switch.mjs +5 -5
  143. package/fesm2022/taiga-ui-kit-components-switch.mjs.map +1 -1
  144. package/fesm2022/taiga-ui-kit-components-tabs.mjs +21 -21
  145. package/fesm2022/taiga-ui-kit-components-tabs.mjs.map +1 -1
  146. package/fesm2022/taiga-ui-kit-components-textarea.mjs +15 -15
  147. package/fesm2022/taiga-ui-kit-components-textarea.mjs.map +1 -1
  148. package/fesm2022/taiga-ui-kit-components-tiles.mjs +13 -13
  149. package/fesm2022/taiga-ui-kit-components-tiles.mjs.map +1 -1
  150. package/fesm2022/taiga-ui-kit-components-tree.mjs +32 -40
  151. package/fesm2022/taiga-ui-kit-components-tree.mjs.map +1 -1
  152. package/fesm2022/taiga-ui-kit-directives-button-close.mjs +3 -3
  153. package/fesm2022/taiga-ui-kit-directives-button-close.mjs.map +1 -1
  154. package/fesm2022/taiga-ui-kit-directives-button-group.mjs +7 -7
  155. package/fesm2022/taiga-ui-kit-directives-button-group.mjs.map +1 -1
  156. package/fesm2022/taiga-ui-kit-directives-button-select.mjs +3 -3
  157. package/fesm2022/taiga-ui-kit-directives-button-select.mjs.map +1 -1
  158. package/fesm2022/taiga-ui-kit-directives-chevron.mjs +8 -8
  159. package/fesm2022/taiga-ui-kit-directives-chevron.mjs.map +1 -1
  160. package/fesm2022/taiga-ui-kit-directives-connected.mjs +8 -8
  161. package/fesm2022/taiga-ui-kit-directives-connected.mjs.map +1 -1
  162. package/fesm2022/taiga-ui-kit-directives-copy.mjs +9 -9
  163. package/fesm2022/taiga-ui-kit-directives-copy.mjs.map +1 -1
  164. package/fesm2022/taiga-ui-kit-directives-data-list-dropdown-manager.mjs +4 -4
  165. package/fesm2022/taiga-ui-kit-directives-data-list-dropdown-manager.mjs.map +1 -1
  166. package/fesm2022/taiga-ui-kit-directives-fade.mjs +9 -9
  167. package/fesm2022/taiga-ui-kit-directives-fade.mjs.map +1 -1
  168. package/fesm2022/taiga-ui-kit-directives-fluid-typography.mjs +4 -4
  169. package/fesm2022/taiga-ui-kit-directives-fluid-typography.mjs.map +1 -1
  170. package/fesm2022/taiga-ui-kit-directives-highlight.mjs +5 -5
  171. package/fesm2022/taiga-ui-kit-directives-highlight.mjs.map +1 -1
  172. package/fesm2022/taiga-ui-kit-directives-icon-badge.mjs +8 -8
  173. package/fesm2022/taiga-ui-kit-directives-icon-badge.mjs.map +1 -1
  174. package/fesm2022/taiga-ui-kit-directives-lazy-loading.mjs +8 -8
  175. package/fesm2022/taiga-ui-kit-directives-lazy-loading.mjs.map +1 -1
  176. package/fesm2022/taiga-ui-kit-directives-password.mjs +3 -3
  177. package/fesm2022/taiga-ui-kit-directives-password.mjs.map +1 -1
  178. package/fesm2022/taiga-ui-kit-directives-present.mjs +4 -4
  179. package/fesm2022/taiga-ui-kit-directives-present.mjs.map +1 -1
  180. package/fesm2022/taiga-ui-kit-directives-sensitive.mjs +8 -8
  181. package/fesm2022/taiga-ui-kit-directives-sensitive.mjs.map +1 -1
  182. package/fesm2022/taiga-ui-kit-directives-shimmer.mjs +8 -8
  183. package/fesm2022/taiga-ui-kit-directives-shimmer.mjs.map +1 -1
  184. package/fesm2022/taiga-ui-kit-directives-skeleton.mjs +7 -7
  185. package/fesm2022/taiga-ui-kit-directives-skeleton.mjs.map +1 -1
  186. package/fesm2022/taiga-ui-kit-directives-tooltip.mjs +8 -8
  187. package/fesm2022/taiga-ui-kit-directives-tooltip.mjs.map +1 -1
  188. package/fesm2022/taiga-ui-kit-directives-unfinished-validator.mjs +4 -4
  189. package/fesm2022/taiga-ui-kit-directives-unfinished-validator.mjs.map +1 -1
  190. package/fesm2022/taiga-ui-kit-directives-unmask-handler.mjs +4 -4
  191. package/fesm2022/taiga-ui-kit-directives-unmask-handler.mjs.map +1 -1
  192. package/fesm2022/taiga-ui-kit-pipes-emails.mjs +3 -3
  193. package/fesm2022/taiga-ui-kit-pipes-emails.mjs.map +1 -1
  194. package/fesm2022/taiga-ui-kit-pipes-field-error.mjs +7 -7
  195. package/fesm2022/taiga-ui-kit-pipes-field-error.mjs.map +1 -1
  196. package/fesm2022/taiga-ui-kit-pipes-filter-by-input.mjs +3 -3
  197. package/fesm2022/taiga-ui-kit-pipes-filter-by-input.mjs.map +1 -1
  198. package/fesm2022/taiga-ui-kit-pipes-hide-selected.mjs +3 -3
  199. package/fesm2022/taiga-ui-kit-pipes-hide-selected.mjs.map +1 -1
  200. package/fesm2022/taiga-ui-kit-pipes-sort-countries.mjs +3 -3
  201. package/fesm2022/taiga-ui-kit-pipes-sort-countries.mjs.map +1 -1
  202. package/fesm2022/taiga-ui-kit-pipes-stringify-content.mjs +3 -3
  203. package/fesm2022/taiga-ui-kit-pipes-stringify-content.mjs.map +1 -1
  204. package/fesm2022/taiga-ui-kit-pipes-stringify.mjs +3 -3
  205. package/fesm2022/taiga-ui-kit-pipes-stringify.mjs.map +1 -1
  206. package/fesm2022/taiga-ui-kit-tokens.mjs +3 -3
  207. package/fesm2022/taiga-ui-kit-tokens.mjs.map +1 -1
  208. package/fesm2022/taiga-ui-kit-utils.mjs +1 -1
  209. package/fesm2022/taiga-ui-kit-utils.mjs.map +1 -1
  210. package/package.json +5 -217
  211. package/styles/components/badge.less +3 -18
  212. package/styles/components/checkbox.less +5 -6
  213. package/styles/components/like.less +13 -10
  214. package/styles/components/radio.less +1 -1
  215. package/styles/components/switch.less +5 -5
  216. package/esm2022/components/accordion/accordion-item-content.directive.mjs +0 -16
  217. package/esm2022/components/accordion/accordion-item-eager-content.directive.mjs +0 -15
  218. package/esm2022/components/accordion/accordion-item.component.mjs +0 -85
  219. package/esm2022/components/accordion/accordion.directive.mjs +0 -56
  220. package/esm2022/components/accordion/accordion.mjs +0 -11
  221. package/esm2022/components/accordion/index.mjs +0 -6
  222. package/esm2022/components/accordion/taiga-ui-kit-components-accordion.mjs +0 -5
  223. package/esm2022/components/action-bar/action-bar.component.mjs +0 -36
  224. package/esm2022/components/action-bar/action-bar.directive.mjs +0 -17
  225. package/esm2022/components/action-bar/action-bar.mjs +0 -4
  226. package/esm2022/components/action-bar/index.mjs +0 -4
  227. package/esm2022/components/action-bar/taiga-ui-kit-components-action-bar.mjs +0 -5
  228. package/esm2022/components/avatar/avatar-labeled.component.mjs +0 -47
  229. package/esm2022/components/avatar/avatar-outline.directive.mjs +0 -41
  230. package/esm2022/components/avatar/avatar-stack.component.mjs +0 -19
  231. package/esm2022/components/avatar/avatar.component.mjs +0 -59
  232. package/esm2022/components/avatar/avatar.options.mjs +0 -14
  233. package/esm2022/components/avatar/index.mjs +0 -6
  234. package/esm2022/components/avatar/taiga-ui-kit-components-avatar.mjs +0 -5
  235. package/esm2022/components/badge/badge.directive.mjs +0 -42
  236. package/esm2022/components/badge/badge.options.mjs +0 -13
  237. package/esm2022/components/badge/index.mjs +0 -3
  238. package/esm2022/components/badge/taiga-ui-kit-components-badge.mjs +0 -5
  239. package/esm2022/components/badge-notification/badge-notification.component.mjs +0 -22
  240. package/esm2022/components/badge-notification/badge-notification.options.mjs +0 -12
  241. package/esm2022/components/badge-notification/index.mjs +0 -3
  242. package/esm2022/components/badge-notification/taiga-ui-kit-components-badge-notification.mjs +0 -5
  243. package/esm2022/components/badged-content/badge-content.mjs +0 -7
  244. package/esm2022/components/badged-content/badged-content.component.mjs +0 -30
  245. package/esm2022/components/badged-content/badged-content.directive.mjs +0 -20
  246. package/esm2022/components/badged-content/index.mjs +0 -4
  247. package/esm2022/components/badged-content/taiga-ui-kit-components-badged-content.mjs +0 -5
  248. package/esm2022/components/block/block.directive.mjs +0 -58
  249. package/esm2022/components/block/block.options.mjs +0 -13
  250. package/esm2022/components/block/index.mjs +0 -3
  251. package/esm2022/components/block/taiga-ui-kit-components-block.mjs +0 -5
  252. package/esm2022/components/breadcrumbs/breadcrumbs.component.mjs +0 -69
  253. package/esm2022/components/breadcrumbs/breadcrumbs.options.mjs +0 -14
  254. package/esm2022/components/breadcrumbs/index.mjs +0 -3
  255. package/esm2022/components/breadcrumbs/taiga-ui-kit-components-breadcrumbs.mjs +0 -5
  256. package/esm2022/components/button-loading/button-loading.component.mjs +0 -70
  257. package/esm2022/components/button-loading/index.mjs +0 -2
  258. package/esm2022/components/button-loading/taiga-ui-kit-components-button-loading.mjs +0 -5
  259. package/esm2022/components/calendar-month/calendar-month.component.mjs +0 -186
  260. package/esm2022/components/calendar-month/calendar-month.options.mjs +0 -6
  261. package/esm2022/components/calendar-month/index.mjs +0 -3
  262. package/esm2022/components/calendar-month/taiga-ui-kit-components-calendar-month.mjs +0 -5
  263. package/esm2022/components/calendar-range/calculate-disabled-item-handler.mjs +0 -12
  264. package/esm2022/components/calendar-range/calendar-range.component.mjs +0 -224
  265. package/esm2022/components/calendar-range/day-caps-mapper.mjs +0 -26
  266. package/esm2022/components/calendar-range/day-range-period.mjs +0 -36
  267. package/esm2022/components/calendar-range/index.mjs +0 -5
  268. package/esm2022/components/calendar-range/taiga-ui-kit-components-calendar-range.mjs +0 -5
  269. package/esm2022/components/carousel/carousel-autoscroll.directive.mjs +0 -21
  270. package/esm2022/components/carousel/carousel-buttons.directive.mjs +0 -27
  271. package/esm2022/components/carousel/carousel-scroll.directive.mjs +0 -27
  272. package/esm2022/components/carousel/carousel.component.mjs +0 -166
  273. package/esm2022/components/carousel/carousel.directive.mjs +0 -37
  274. package/esm2022/components/carousel/carousel.mjs +0 -15
  275. package/esm2022/components/carousel/index.mjs +0 -7
  276. package/esm2022/components/carousel/taiga-ui-kit-components-carousel.mjs +0 -5
  277. package/esm2022/components/checkbox/checkbox.component.mjs +0 -74
  278. package/esm2022/components/checkbox/checkbox.options.mjs +0 -17
  279. package/esm2022/components/checkbox/index.mjs +0 -3
  280. package/esm2022/components/checkbox/taiga-ui-kit-components-checkbox.mjs +0 -5
  281. package/esm2022/components/chip/chip.directive.mjs +0 -63
  282. package/esm2022/components/chip/chip.options.mjs +0 -13
  283. package/esm2022/components/chip/index.mjs +0 -3
  284. package/esm2022/components/chip/taiga-ui-kit-components-chip.mjs +0 -5
  285. package/esm2022/components/combo-box/combo-box.directive.mjs +0 -139
  286. package/esm2022/components/combo-box/index.mjs +0 -2
  287. package/esm2022/components/combo-box/taiga-ui-kit-components-combo-box.mjs +0 -5
  288. package/esm2022/components/comment/comment.directive.mjs +0 -35
  289. package/esm2022/components/comment/index.mjs +0 -2
  290. package/esm2022/components/comment/taiga-ui-kit-components-comment.mjs +0 -5
  291. package/esm2022/components/compass/compass.component.mjs +0 -19
  292. package/esm2022/components/compass/index.mjs +0 -2
  293. package/esm2022/components/compass/taiga-ui-kit-components-compass.mjs +0 -5
  294. package/esm2022/components/confirm/confirm.component.mjs +0 -28
  295. package/esm2022/components/confirm/confirm.service.mjs +0 -32
  296. package/esm2022/components/confirm/index.mjs +0 -3
  297. package/esm2022/components/confirm/taiga-ui-kit-components-confirm.mjs +0 -5
  298. package/esm2022/components/data-list-wrapper/data-list-group-wrapper.component.mjs +0 -25
  299. package/esm2022/components/data-list-wrapper/data-list-wrapper.component.mjs +0 -86
  300. package/esm2022/components/data-list-wrapper/data-list-wrapper.module.mjs +0 -9
  301. package/esm2022/components/data-list-wrapper/index.mjs +0 -4
  302. package/esm2022/components/data-list-wrapper/taiga-ui-kit-components-data-list-wrapper.mjs +0 -5
  303. package/esm2022/components/drawer/drawer.component.mjs +0 -44
  304. package/esm2022/components/drawer/index.mjs +0 -2
  305. package/esm2022/components/drawer/taiga-ui-kit-components-drawer.mjs +0 -5
  306. package/esm2022/components/elastic-container/elastic-container.component.mjs +0 -28
  307. package/esm2022/components/elastic-container/elastic-container.directive.mjs +0 -48
  308. package/esm2022/components/elastic-container/index.mjs +0 -3
  309. package/esm2022/components/elastic-container/taiga-ui-kit-components-elastic-container.mjs +0 -5
  310. package/esm2022/components/files/file/file.component.mjs +0 -144
  311. package/esm2022/components/files/file/file.options.mjs +0 -16
  312. package/esm2022/components/files/files/files.component.mjs +0 -56
  313. package/esm2022/components/files/files.mjs +0 -15
  314. package/esm2022/components/files/files.types.mjs +0 -2
  315. package/esm2022/components/files/files.utils.mjs +0 -30
  316. package/esm2022/components/files/files.validators.mjs +0 -32
  317. package/esm2022/components/files/index.mjs +0 -13
  318. package/esm2022/components/files/input-files/input-files-validator.directive.mjs +0 -45
  319. package/esm2022/components/files/input-files/input-files.component.mjs +0 -70
  320. package/esm2022/components/files/input-files/input-files.content.mjs +0 -73
  321. package/esm2022/components/files/input-files/input-files.directive.mjs +0 -77
  322. package/esm2022/components/files/input-files/input-files.options.mjs +0 -19
  323. package/esm2022/components/files/pipes/file-rejected.pipe.mjs +0 -51
  324. package/esm2022/components/files/taiga-ui-kit-components-files.mjs +0 -5
  325. package/esm2022/components/filter/filter.component.mjs +0 -65
  326. package/esm2022/components/filter/index.mjs +0 -2
  327. package/esm2022/components/filter/taiga-ui-kit-components-filter.mjs +0 -5
  328. package/esm2022/components/floating-container/floating-container.directive.mjs +0 -37
  329. package/esm2022/components/floating-container/index.mjs +0 -2
  330. package/esm2022/components/floating-container/taiga-ui-kit-components-floating-container.mjs +0 -5
  331. package/esm2022/components/index.mjs +0 -73
  332. package/esm2022/components/input-chip/index.mjs +0 -5
  333. package/esm2022/components/input-chip/input-chip.component.mjs +0 -101
  334. package/esm2022/components/input-chip/input-chip.directive.mjs +0 -138
  335. package/esm2022/components/input-chip/input-chip.mjs +0 -4
  336. package/esm2022/components/input-chip/input-chip.options.mjs +0 -7
  337. package/esm2022/components/input-chip/taiga-ui-kit-components-input-chip.mjs +0 -5
  338. package/esm2022/components/input-color/index.mjs +0 -3
  339. package/esm2022/components/input-color/input-color.component.mjs +0 -89
  340. package/esm2022/components/input-color/input-color.options.mjs +0 -6
  341. package/esm2022/components/input-color/taiga-ui-kit-components-input-color.mjs +0 -5
  342. package/esm2022/components/input-date/date-filler.mjs +0 -20
  343. package/esm2022/components/input-date/index.mjs +0 -6
  344. package/esm2022/components/input-date/input-date.component.mjs +0 -33
  345. package/esm2022/components/input-date/input-date.directive.mjs +0 -167
  346. package/esm2022/components/input-date/input-date.mjs +0 -9
  347. package/esm2022/components/input-date/input-date.options.mjs +0 -11
  348. package/esm2022/components/input-date/taiga-ui-kit-components-input-date.mjs +0 -5
  349. package/esm2022/components/input-date-multi/index.mjs +0 -3
  350. package/esm2022/components/input-date-multi/input-date-multi.directive.mjs +0 -123
  351. package/esm2022/components/input-date-multi/input-date-multi.mjs +0 -9
  352. package/esm2022/components/input-date-multi/taiga-ui-kit-components-input-date-multi.mjs +0 -5
  353. package/esm2022/components/input-date-range/index.mjs +0 -4
  354. package/esm2022/components/input-date-range/input-date-range.directive.mjs +0 -79
  355. package/esm2022/components/input-date-range/input-date-range.mjs +0 -4
  356. package/esm2022/components/input-date-range/input-date-range.options.mjs +0 -12
  357. package/esm2022/components/input-date-range/taiga-ui-kit-components-input-date-range.mjs +0 -5
  358. package/esm2022/components/input-date-time/index.mjs +0 -5
  359. package/esm2022/components/input-date-time/input-date-time.component.mjs +0 -35
  360. package/esm2022/components/input-date-time/input-date-time.directive.mjs +0 -178
  361. package/esm2022/components/input-date-time/input-date-time.mjs +0 -9
  362. package/esm2022/components/input-date-time/input-date-time.options.mjs +0 -20
  363. package/esm2022/components/input-date-time/taiga-ui-kit-components-input-date-time.mjs +0 -5
  364. package/esm2022/components/input-inline/index.mjs +0 -2
  365. package/esm2022/components/input-inline/input-inline.component.mjs +0 -23
  366. package/esm2022/components/input-inline/taiga-ui-kit-components-input-inline.mjs +0 -5
  367. package/esm2022/components/input-month/index.mjs +0 -5
  368. package/esm2022/components/input-month/input-month.component.mjs +0 -53
  369. package/esm2022/components/input-month/input-month.directive.mjs +0 -65
  370. package/esm2022/components/input-month/input-month.mjs +0 -9
  371. package/esm2022/components/input-month/input-month.options.mjs +0 -19
  372. package/esm2022/components/input-month/taiga-ui-kit-components-input-month.mjs +0 -5
  373. package/esm2022/components/input-month-range/index.mjs +0 -4
  374. package/esm2022/components/input-month-range/input-month-range.directive.mjs +0 -86
  375. package/esm2022/components/input-month-range/input-month-range.mjs +0 -7
  376. package/esm2022/components/input-month-range/input-month-range.options.mjs +0 -13
  377. package/esm2022/components/input-month-range/taiga-ui-kit-components-input-month-range.mjs +0 -5
  378. package/esm2022/components/input-number/index.mjs +0 -6
  379. package/esm2022/components/input-number/input-number.directive.mjs +0 -196
  380. package/esm2022/components/input-number/input-number.mjs +0 -9
  381. package/esm2022/components/input-number/input-number.options.mjs +0 -15
  382. package/esm2022/components/input-number/quantum.directive.mjs +0 -68
  383. package/esm2022/components/input-number/step/input-number-step.component.mjs +0 -58
  384. package/esm2022/components/input-number/taiga-ui-kit-components-input-number.mjs +0 -5
  385. package/esm2022/components/input-password/index.mjs +0 -3
  386. package/esm2022/components/input-password/input-password.component.mjs +0 -69
  387. package/esm2022/components/input-password/input-password.options.mjs +0 -24
  388. package/esm2022/components/input-password/taiga-ui-kit-components-input-password.mjs +0 -5
  389. package/esm2022/components/input-phone/index.mjs +0 -3
  390. package/esm2022/components/input-phone/input-phone.directive.mjs +0 -137
  391. package/esm2022/components/input-phone/input-phone.options.mjs +0 -9
  392. package/esm2022/components/input-phone/taiga-ui-kit-components-input-phone.mjs +0 -5
  393. package/esm2022/components/input-phone/utils/complete-phone-insertion-preprocessor.mjs +0 -41
  394. package/esm2022/components/input-phone/utils/create-phone-mask-expression.mjs +0 -17
  395. package/esm2022/components/input-phone-international/index.mjs +0 -3
  396. package/esm2022/components/input-phone-international/input-phone-international.component.mjs +0 -210
  397. package/esm2022/components/input-phone-international/input-phone-international.options.mjs +0 -19
  398. package/esm2022/components/input-phone-international/taiga-ui-kit-components-input-phone-international.mjs +0 -5
  399. package/esm2022/components/input-pin/index.mjs +0 -2
  400. package/esm2022/components/input-pin/input-pin.component.mjs +0 -66
  401. package/esm2022/components/input-pin/taiga-ui-kit-components-input-pin.mjs +0 -5
  402. package/esm2022/components/input-range/index.mjs +0 -3
  403. package/esm2022/components/input-range/input-range.component.mjs +0 -166
  404. package/esm2022/components/input-range/input-range.mjs +0 -4
  405. package/esm2022/components/input-range/taiga-ui-kit-components-input-range.mjs +0 -5
  406. package/esm2022/components/input-slider/index.mjs +0 -3
  407. package/esm2022/components/input-slider/input-slider.directive.mjs +0 -114
  408. package/esm2022/components/input-slider/input-slider.mjs +0 -9
  409. package/esm2022/components/input-slider/taiga-ui-kit-components-input-slider.mjs +0 -5
  410. package/esm2022/components/input-time/index.mjs +0 -5
  411. package/esm2022/components/input-time/input-time.component.mjs +0 -64
  412. package/esm2022/components/input-time/input-time.directive.mjs +0 -159
  413. package/esm2022/components/input-time/input-time.mjs +0 -4
  414. package/esm2022/components/input-time/input-time.options.mjs +0 -10
  415. package/esm2022/components/input-time/taiga-ui-kit-components-input-time.mjs +0 -5
  416. package/esm2022/components/input-year/index.mjs +0 -4
  417. package/esm2022/components/input-year/input-year.directive.mjs +0 -103
  418. package/esm2022/components/input-year/input-year.mjs +0 -4
  419. package/esm2022/components/input-year/input-year.options.mjs +0 -12
  420. package/esm2022/components/input-year/taiga-ui-kit-components-input-year.mjs +0 -5
  421. package/esm2022/components/items-with-more/index.mjs +0 -6
  422. package/esm2022/components/items-with-more/items-with-more.component.mjs +0 -77
  423. package/esm2022/components/items-with-more/items-with-more.directive.mjs +0 -46
  424. package/esm2022/components/items-with-more/items-with-more.mjs +0 -11
  425. package/esm2022/components/items-with-more/items-with-more.service.mjs +0 -85
  426. package/esm2022/components/items-with-more/more.directive.mjs +0 -18
  427. package/esm2022/components/items-with-more/taiga-ui-kit-components-items-with-more.mjs +0 -5
  428. package/esm2022/components/like/index.mjs +0 -3
  429. package/esm2022/components/like/like.component.mjs +0 -46
  430. package/esm2022/components/like/like.options.mjs +0 -10
  431. package/esm2022/components/like/taiga-ui-kit-components-like.mjs +0 -5
  432. package/esm2022/components/line-clamp/index.mjs +0 -4
  433. package/esm2022/components/line-clamp/line-clamp-box.component.mjs +0 -25
  434. package/esm2022/components/line-clamp/line-clamp-position.directive.mjs +0 -27
  435. package/esm2022/components/line-clamp/line-clamp.component.mjs +0 -95
  436. package/esm2022/components/line-clamp/line-clamp.options.mjs +0 -15
  437. package/esm2022/components/line-clamp/taiga-ui-kit-components-line-clamp.mjs +0 -5
  438. package/esm2022/components/message/index.mjs +0 -2
  439. package/esm2022/components/message/message.directive.mjs +0 -43
  440. package/esm2022/components/message/taiga-ui-kit-components-message.mjs +0 -5
  441. package/esm2022/components/multi-select/index.mjs +0 -6
  442. package/esm2022/components/multi-select/multi-select-group/multi-select-group.component.mjs +0 -50
  443. package/esm2022/components/multi-select/multi-select-group/multi-select-group.directive.mjs +0 -18
  444. package/esm2022/components/multi-select/multi-select-native/multi-select-native.component.mjs +0 -56
  445. package/esm2022/components/multi-select/multi-select-option/multi-select-option.component.mjs +0 -47
  446. package/esm2022/components/multi-select/multi-select.mjs +0 -9
  447. package/esm2022/components/multi-select/taiga-ui-kit-components-multi-select.mjs +0 -5
  448. package/esm2022/components/notification-middle/index.mjs +0 -4
  449. package/esm2022/components/notification-middle/notification-middle.component.mjs +0 -57
  450. package/esm2022/components/notification-middle/notification-middle.directive.mjs +0 -21
  451. package/esm2022/components/notification-middle/notification-middle.service.mjs +0 -22
  452. package/esm2022/components/notification-middle/taiga-ui-kit-components-notification-middle.mjs +0 -5
  453. package/esm2022/components/pager/index.mjs +0 -2
  454. package/esm2022/components/pager/pager.component.mjs +0 -97
  455. package/esm2022/components/pager/taiga-ui-kit-components-pager.mjs +0 -5
  456. package/esm2022/components/pagination/index.mjs +0 -2
  457. package/esm2022/components/pagination/pagination.component.mjs +0 -213
  458. package/esm2022/components/pagination/taiga-ui-kit-components-pagination.mjs +0 -5
  459. package/esm2022/components/pdf-viewer/index.mjs +0 -5
  460. package/esm2022/components/pdf-viewer/pdf-viewer.component.mjs +0 -28
  461. package/esm2022/components/pdf-viewer/pdf-viewer.directive.mjs +0 -21
  462. package/esm2022/components/pdf-viewer/pdf-viewer.options.mjs +0 -17
  463. package/esm2022/components/pdf-viewer/pdf-viewer.service.mjs +0 -22
  464. package/esm2022/components/pdf-viewer/taiga-ui-kit-components-pdf-viewer.mjs +0 -5
  465. package/esm2022/components/pin/index.mjs +0 -2
  466. package/esm2022/components/pin/pin.directive.mjs +0 -35
  467. package/esm2022/components/pin/taiga-ui-kit-components-pin.mjs +0 -5
  468. package/esm2022/components/preview/action/preview-action.directive.mjs +0 -30
  469. package/esm2022/components/preview/dialog/index.mjs +0 -4
  470. package/esm2022/components/preview/dialog/preview-dialog.component.mjs +0 -28
  471. package/esm2022/components/preview/dialog/preview-dialog.directive.mjs +0 -21
  472. package/esm2022/components/preview/dialog/preview-dialog.service.mjs +0 -18
  473. package/esm2022/components/preview/dialog/taiga-ui-kit-components-preview-dialog.mjs +0 -5
  474. package/esm2022/components/preview/index.mjs +0 -8
  475. package/esm2022/components/preview/pagination/preview-pagination.component.mjs +0 -49
  476. package/esm2022/components/preview/preview.component.mjs +0 -142
  477. package/esm2022/components/preview/preview.mjs +0 -13
  478. package/esm2022/components/preview/taiga-ui-kit-components-preview.mjs +0 -5
  479. package/esm2022/components/preview/title/preview-title.component.mjs +0 -16
  480. package/esm2022/components/preview/zoom/preview-zoom.component.mjs +0 -81
  481. package/esm2022/components/progress/index.mjs +0 -9
  482. package/esm2022/components/progress/progress-bar/fixed-gradient/progress-fixed-gradient.directive.mjs +0 -39
  483. package/esm2022/components/progress/progress-bar/progress-bar.component.mjs +0 -25
  484. package/esm2022/components/progress/progress-bar/progress-color-segments.directive.mjs +0 -40
  485. package/esm2022/components/progress/progress-circle/progress-circle.component.mjs +0 -45
  486. package/esm2022/components/progress/progress-label/progress-label.component.mjs +0 -12
  487. package/esm2022/components/progress/progress-segmented/progress-segmented.directive.mjs +0 -34
  488. package/esm2022/components/progress/progress.mjs +0 -15
  489. package/esm2022/components/progress/progress.options.mjs +0 -13
  490. package/esm2022/components/progress/taiga-ui-kit-components-progress.mjs +0 -5
  491. package/esm2022/components/pulse/index.mjs +0 -2
  492. package/esm2022/components/pulse/pulse.component.mjs +0 -34
  493. package/esm2022/components/pulse/taiga-ui-kit-components-pulse.mjs +0 -5
  494. package/esm2022/components/push/index.mjs +0 -7
  495. package/esm2022/components/push/push-alert.component.mjs +0 -29
  496. package/esm2022/components/push/push.component.mjs +0 -39
  497. package/esm2022/components/push/push.directive.mjs +0 -33
  498. package/esm2022/components/push/push.mjs +0 -5
  499. package/esm2022/components/push/push.options.mjs +0 -21
  500. package/esm2022/components/push/push.service.mjs +0 -19
  501. package/esm2022/components/push/taiga-ui-kit-components-push.mjs +0 -5
  502. package/esm2022/components/radio/index.mjs +0 -5
  503. package/esm2022/components/radio/radio.component.mjs +0 -53
  504. package/esm2022/components/radio/radio.directive.mjs +0 -32
  505. package/esm2022/components/radio/radio.mjs +0 -4
  506. package/esm2022/components/radio/radio.options.mjs +0 -13
  507. package/esm2022/components/radio/taiga-ui-kit-components-radio.mjs +0 -5
  508. package/esm2022/components/radio-list/index.mjs +0 -2
  509. package/esm2022/components/radio-list/radio-list.component.mjs +0 -64
  510. package/esm2022/components/radio-list/taiga-ui-kit-components-radio-list.mjs +0 -5
  511. package/esm2022/components/range/index.mjs +0 -3
  512. package/esm2022/components/range/range-change.directive.mjs +0 -78
  513. package/esm2022/components/range/range.component.mjs +0 -164
  514. package/esm2022/components/range/taiga-ui-kit-components-range.mjs +0 -5
  515. package/esm2022/components/rating/index.mjs +0 -3
  516. package/esm2022/components/rating/rating.component.mjs +0 -64
  517. package/esm2022/components/rating/rating.options.mjs +0 -13
  518. package/esm2022/components/rating/taiga-ui-kit-components-rating.mjs +0 -5
  519. package/esm2022/components/routable-dialog/generate-dialogable-route.mjs +0 -17
  520. package/esm2022/components/routable-dialog/index.mjs +0 -3
  521. package/esm2022/components/routable-dialog/routable-dialog.component.mjs +0 -53
  522. package/esm2022/components/routable-dialog/taiga-ui-kit-components-routable-dialog.mjs +0 -5
  523. package/esm2022/components/segmented/index.mjs +0 -3
  524. package/esm2022/components/segmented/segmented.component.mjs +0 -67
  525. package/esm2022/components/segmented/segmented.directive.mjs +0 -65
  526. package/esm2022/components/segmented/taiga-ui-kit-components-segmented.mjs +0 -5
  527. package/esm2022/components/select/index.mjs +0 -5
  528. package/esm2022/components/select/native-select/native-select.component.mjs +0 -57
  529. package/esm2022/components/select/select-option/select-option.component.mjs +0 -51
  530. package/esm2022/components/select/select.directive.mjs +0 -56
  531. package/esm2022/components/select/select.mjs +0 -4
  532. package/esm2022/components/select/taiga-ui-kit-components-select.mjs +0 -5
  533. package/esm2022/components/slider/helpers/key-steps.mjs +0 -36
  534. package/esm2022/components/slider/helpers/slider-key-steps.directive.mjs +0 -110
  535. package/esm2022/components/slider/helpers/slider-readonly.directive.mjs +0 -75
  536. package/esm2022/components/slider/helpers/slider-thumb-label.component.mjs +0 -38
  537. package/esm2022/components/slider/index.mjs +0 -8
  538. package/esm2022/components/slider/slider.component.mjs +0 -124
  539. package/esm2022/components/slider/slider.mjs +0 -12
  540. package/esm2022/components/slider/slider.options.mjs +0 -16
  541. package/esm2022/components/slider/taiga-ui-kit-components-slider.mjs +0 -5
  542. package/esm2022/components/slides/index.mjs +0 -2
  543. package/esm2022/components/slides/slides.directive.mjs +0 -51
  544. package/esm2022/components/slides/taiga-ui-kit-components-slides.mjs +0 -5
  545. package/esm2022/components/status/index.mjs +0 -2
  546. package/esm2022/components/status/status.directive.mjs +0 -35
  547. package/esm2022/components/status/taiga-ui-kit-components-status.mjs +0 -5
  548. package/esm2022/components/stepper/index.mjs +0 -4
  549. package/esm2022/components/stepper/step.component.mjs +0 -58
  550. package/esm2022/components/stepper/stepper.component.mjs +0 -118
  551. package/esm2022/components/stepper/stepper.mjs +0 -4
  552. package/esm2022/components/stepper/taiga-ui-kit-components-stepper.mjs +0 -5
  553. package/esm2022/components/switch/index.mjs +0 -3
  554. package/esm2022/components/switch/switch.component.mjs +0 -63
  555. package/esm2022/components/switch/switch.options.mjs +0 -15
  556. package/esm2022/components/switch/taiga-ui-kit-components-switch.mjs +0 -5
  557. package/esm2022/components/tabs/index.mjs +0 -9
  558. package/esm2022/components/tabs/tab.directive.mjs +0 -47
  559. package/esm2022/components/tabs/tabs-horizontal.directive.mjs +0 -108
  560. package/esm2022/components/tabs/tabs-vertical.directive.mjs +0 -38
  561. package/esm2022/components/tabs/tabs-with-more.component.mjs +0 -213
  562. package/esm2022/components/tabs/tabs.directive.mjs +0 -79
  563. package/esm2022/components/tabs/tabs.mjs +0 -15
  564. package/esm2022/components/tabs/tabs.options.mjs +0 -19
  565. package/esm2022/components/tabs/tabs.providers.mjs +0 -35
  566. package/esm2022/components/tabs/taiga-ui-kit-components-tabs.mjs +0 -5
  567. package/esm2022/components/taiga-ui-kit-components.mjs +0 -5
  568. package/esm2022/components/textarea/index.mjs +0 -4
  569. package/esm2022/components/textarea/taiga-ui-kit-components-textarea.mjs +0 -5
  570. package/esm2022/components/textarea/textarea-limit.directive.mjs +0 -93
  571. package/esm2022/components/textarea/textarea.component.mjs +0 -58
  572. package/esm2022/components/textarea/textarea.options.mjs +0 -7
  573. package/esm2022/components/tiles/index.mjs +0 -7
  574. package/esm2022/components/tiles/taiga-ui-kit-components-tiles.mjs +0 -5
  575. package/esm2022/components/tiles/tile-handle.directive.mjs +0 -60
  576. package/esm2022/components/tiles/tile.component.mjs +0 -69
  577. package/esm2022/components/tiles/tile.service.mjs +0 -90
  578. package/esm2022/components/tiles/tiles.component.mjs +0 -70
  579. package/esm2022/components/tiles/tiles.mjs +0 -5
  580. package/esm2022/components/tiles/tiles.tokens.mjs +0 -37
  581. package/esm2022/components/tree/components/tree/tree.component.mjs +0 -64
  582. package/esm2022/components/tree/components/tree-item/tree-item.component.mjs +0 -63
  583. package/esm2022/components/tree/components/tree-item-content/tree-item-content.component.mjs +0 -44
  584. package/esm2022/components/tree/directives/tree-children.directive.mjs +0 -24
  585. package/esm2022/components/tree/directives/tree-controller.directive.mjs +0 -57
  586. package/esm2022/components/tree/directives/tree-item-controller.directive.mjs +0 -32
  587. package/esm2022/components/tree/directives/tree-node.directive.mjs +0 -32
  588. package/esm2022/components/tree/index.mjs +0 -12
  589. package/esm2022/components/tree/misc/tree.constants.mjs +0 -9
  590. package/esm2022/components/tree/misc/tree.interfaces.mjs +0 -2
  591. package/esm2022/components/tree/misc/tree.service.mjs +0 -31
  592. package/esm2022/components/tree/misc/tree.tokens.mjs +0 -43
  593. package/esm2022/components/tree/taiga-ui-kit-components-tree.mjs +0 -5
  594. package/esm2022/components/tree/tree.mjs +0 -17
  595. package/esm2022/directives/button-close/button-close.directive.mjs +0 -33
  596. package/esm2022/directives/button-close/index.mjs +0 -2
  597. package/esm2022/directives/button-close/taiga-ui-kit-directives-button-close.mjs +0 -5
  598. package/esm2022/directives/button-group/button-group.directive.mjs +0 -29
  599. package/esm2022/directives/button-group/index.mjs +0 -2
  600. package/esm2022/directives/button-group/taiga-ui-kit-directives-button-group.mjs +0 -5
  601. package/esm2022/directives/button-select/button-select.directive.mjs +0 -48
  602. package/esm2022/directives/button-select/index.mjs +0 -2
  603. package/esm2022/directives/button-select/taiga-ui-kit-directives-button-select.mjs +0 -5
  604. package/esm2022/directives/chevron/chevron.directive.mjs +0 -45
  605. package/esm2022/directives/chevron/index.mjs +0 -2
  606. package/esm2022/directives/chevron/taiga-ui-kit-directives-chevron.mjs +0 -5
  607. package/esm2022/directives/connected/connected.directive.mjs +0 -32
  608. package/esm2022/directives/connected/index.mjs +0 -2
  609. package/esm2022/directives/connected/taiga-ui-kit-directives-connected.mjs +0 -5
  610. package/esm2022/directives/copy/copy.component.mjs +0 -48
  611. package/esm2022/directives/copy/copy.directive.mjs +0 -71
  612. package/esm2022/directives/copy/copy.mjs +0 -4
  613. package/esm2022/directives/copy/copy.options.mjs +0 -3
  614. package/esm2022/directives/copy/index.mjs +0 -6
  615. package/esm2022/directives/copy/taiga-ui-kit-directives-copy.mjs +0 -5
  616. package/esm2022/directives/data-list-dropdown-manager/data-list-dropdown-manager.directive.mjs +0 -105
  617. package/esm2022/directives/data-list-dropdown-manager/index.mjs +0 -2
  618. package/esm2022/directives/data-list-dropdown-manager/taiga-ui-kit-directives-data-list-dropdown-manager.mjs +0 -5
  619. package/esm2022/directives/fade/fade.directive.mjs +0 -92
  620. package/esm2022/directives/fade/index.mjs +0 -2
  621. package/esm2022/directives/fade/taiga-ui-kit-directives-fade.mjs +0 -5
  622. package/esm2022/directives/fluid-typography/fluid-typography.directive.mjs +0 -63
  623. package/esm2022/directives/fluid-typography/fluid-typography.options.mjs +0 -13
  624. package/esm2022/directives/fluid-typography/index.mjs +0 -3
  625. package/esm2022/directives/fluid-typography/taiga-ui-kit-directives-fluid-typography.mjs +0 -5
  626. package/esm2022/directives/highlight/highlight.directive.mjs +0 -92
  627. package/esm2022/directives/highlight/index.mjs +0 -2
  628. package/esm2022/directives/highlight/taiga-ui-kit-directives-highlight.mjs +0 -5
  629. package/esm2022/directives/icon-badge/icon-badge.directive.mjs +0 -41
  630. package/esm2022/directives/icon-badge/index.mjs +0 -2
  631. package/esm2022/directives/icon-badge/taiga-ui-kit-directives-icon-badge.mjs +0 -5
  632. package/esm2022/directives/index.mjs +0 -21
  633. package/esm2022/directives/lazy-loading/index.mjs +0 -3
  634. package/esm2022/directives/lazy-loading/lazy-loading.directive.mjs +0 -58
  635. package/esm2022/directives/lazy-loading/lazy-loading.service.mjs +0 -23
  636. package/esm2022/directives/lazy-loading/taiga-ui-kit-directives-lazy-loading.mjs +0 -5
  637. package/esm2022/directives/password/index.mjs +0 -3
  638. package/esm2022/directives/password/password.directive.mjs +0 -67
  639. package/esm2022/directives/password/password.options.mjs +0 -8
  640. package/esm2022/directives/password/taiga-ui-kit-directives-password.mjs +0 -5
  641. package/esm2022/directives/present/index.mjs +0 -2
  642. package/esm2022/directives/present/present.directive.mjs +0 -33
  643. package/esm2022/directives/present/taiga-ui-kit-directives-present.mjs +0 -5
  644. package/esm2022/directives/sensitive/index.mjs +0 -2
  645. package/esm2022/directives/sensitive/sensitive.directive.mjs +0 -48
  646. package/esm2022/directives/sensitive/taiga-ui-kit-directives-sensitive.mjs +0 -5
  647. package/esm2022/directives/shimmer/index.mjs +0 -2
  648. package/esm2022/directives/shimmer/shimmer.directive.mjs +0 -68
  649. package/esm2022/directives/shimmer/taiga-ui-kit-directives-shimmer.mjs +0 -5
  650. package/esm2022/directives/skeleton/index.mjs +0 -2
  651. package/esm2022/directives/skeleton/skeleton.directive.mjs +0 -69
  652. package/esm2022/directives/skeleton/taiga-ui-kit-directives-skeleton.mjs +0 -5
  653. package/esm2022/directives/taiga-ui-kit-directives.mjs +0 -5
  654. package/esm2022/directives/tooltip/index.mjs +0 -3
  655. package/esm2022/directives/tooltip/taiga-ui-kit-directives-tooltip.mjs +0 -5
  656. package/esm2022/directives/tooltip/tooltip.directive.mjs +0 -92
  657. package/esm2022/directives/tooltip/tooltip.options.mjs +0 -6
  658. package/esm2022/directives/unfinished-validator/index.mjs +0 -3
  659. package/esm2022/directives/unfinished-validator/taiga-ui-kit-directives-unfinished-validator.mjs +0 -5
  660. package/esm2022/directives/unfinished-validator/unfinished-validator.directive.mjs +0 -36
  661. package/esm2022/directives/unfinished-validator/unfinished.validator.mjs +0 -7
  662. package/esm2022/directives/unmask-handler/index.mjs +0 -2
  663. package/esm2022/directives/unmask-handler/taiga-ui-kit-directives-unmask-handler.mjs +0 -5
  664. package/esm2022/directives/unmask-handler/unmask-handler.directive.mjs +0 -35
  665. package/esm2022/index.mjs +0 -6
  666. package/esm2022/pipes/emails/emails.options.mjs +0 -13
  667. package/esm2022/pipes/emails/emails.pipe.mjs +0 -26
  668. package/esm2022/pipes/emails/index.mjs +0 -3
  669. package/esm2022/pipes/emails/taiga-ui-kit-pipes-emails.mjs +0 -5
  670. package/esm2022/pipes/field-error/field-error-content-pipe.mjs +0 -42
  671. package/esm2022/pipes/field-error/field-error-pipe.mjs +0 -103
  672. package/esm2022/pipes/field-error/index.mjs +0 -3
  673. package/esm2022/pipes/field-error/taiga-ui-kit-pipes-field-error.mjs +0 -5
  674. package/esm2022/pipes/filter-by-input/filter-by-input.pipe.mjs +0 -68
  675. package/esm2022/pipes/filter-by-input/index.mjs +0 -2
  676. package/esm2022/pipes/filter-by-input/taiga-ui-kit-pipes-filter-by-input.mjs +0 -5
  677. package/esm2022/pipes/hide-selected/hide-selected.pipe.mjs +0 -46
  678. package/esm2022/pipes/hide-selected/index.mjs +0 -2
  679. package/esm2022/pipes/hide-selected/taiga-ui-kit-pipes-hide-selected.mjs +0 -5
  680. package/esm2022/pipes/index.mjs +0 -8
  681. package/esm2022/pipes/sort-countries/index.mjs +0 -2
  682. package/esm2022/pipes/sort-countries/sort-countries.pipe.mjs +0 -23
  683. package/esm2022/pipes/sort-countries/taiga-ui-kit-pipes-sort-countries.mjs +0 -5
  684. package/esm2022/pipes/stringify/index.mjs +0 -2
  685. package/esm2022/pipes/stringify/stringify.pipe.mjs +0 -18
  686. package/esm2022/pipes/stringify/taiga-ui-kit-pipes-stringify.mjs +0 -5
  687. package/esm2022/pipes/stringify-content/index.mjs +0 -2
  688. package/esm2022/pipes/stringify-content/stringify-content.pipe.mjs +0 -18
  689. package/esm2022/pipes/stringify-content/taiga-ui-kit-pipes-stringify-content.mjs +0 -5
  690. package/esm2022/pipes/taiga-ui-kit-pipes.mjs +0 -5
  691. package/esm2022/taiga-ui-kit.mjs +0 -5
  692. package/esm2022/tokens/calendar-date-stream.mjs +0 -25
  693. package/esm2022/tokens/date-inputs-value-transformers.mjs +0 -21
  694. package/esm2022/tokens/i18n.mjs +0 -75
  695. package/esm2022/tokens/index.mjs +0 -10
  696. package/esm2022/tokens/input-date-options.mjs +0 -13
  697. package/esm2022/tokens/items-handlers.mjs +0 -27
  698. package/esm2022/tokens/mobile-calendar.mjs +0 -13
  699. package/esm2022/tokens/month-formatter.mjs +0 -12
  700. package/esm2022/tokens/preview-icons.mjs +0 -17
  701. package/esm2022/tokens/taiga-ui-kit-tokens.mjs +0 -5
  702. package/esm2022/tokens/validation-errors.mjs +0 -6
  703. package/esm2022/utils/create-time-periods.mjs +0 -12
  704. package/esm2022/utils/index.mjs +0 -7
  705. package/esm2022/utils/inject-value.mjs +0 -11
  706. package/esm2022/utils/is-flat.mjs +0 -4
  707. package/esm2022/utils/maskito.binding.mjs +0 -6
  708. package/esm2022/utils/phone.mjs +0 -6
  709. package/esm2022/utils/taiga-ui-kit-utils.mjs +0 -5
  710. package/esm2022/utils/toggle-day.mjs +0 -6
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-tabs.mjs","sources":["../../../projects/kit/components/tabs/tab.directive.ts","../../../projects/kit/components/tabs/tabs.options.ts","../../../projects/kit/components/tabs/tabs.directive.ts","../../../projects/kit/components/tabs/tabs-horizontal.directive.ts","../../../projects/kit/components/tabs/tabs-vertical.directive.ts","../../../projects/kit/components/tabs/tabs.providers.ts","../../../projects/kit/components/tabs/tabs-with-more.component.ts","../../../projects/kit/components/tabs/tabs-with-more.template.html","../../../projects/kit/components/tabs/tabs.ts","../../../projects/kit/components/tabs/taiga-ui-kit-components-tabs.ts"],"sourcesContent":["import {Directive, inject, type OnDestroy} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {RouterLinkActive} from '@angular/router';\nimport {MutationObserverService} from '@ng-web-apis/mutation-observer';\nimport {tuiTypedFromEvent} from '@taiga-ui/cdk/observables';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiIsNativeFocused} from '@taiga-ui/cdk/utils/focus';\nimport {TuiWithIcons} from '@taiga-ui/core/directives/icons';\nimport {EMPTY, filter, merge, switchMap, take} from 'rxjs';\n\nexport const TUI_TAB_ACTIVATE = 'tui-tab-activate';\n\n@Directive({\n standalone: true,\n selector:\n 'a[tuiTab]:not([routerLink]), a[tuiTab][routerLink][routerLinkActive], button[tuiTab]',\n hostDirectives: [TuiWithIcons],\n host: {\n type: 'button',\n },\n})\nexport class TuiTab implements OnDestroy {\n private readonly el = tuiInjectElement();\n private readonly rla = inject(RouterLinkActive, {optional: true});\n private readonly observer =\n this.rla &&\n inject(MutationObserverService, {optional: true})?.pipe(\n filter(() => !!this.rla?.isActive),\n );\n\n protected readonly sub = merge(\n this.observer || EMPTY,\n this.rla?.isActiveChange.pipe(filter(Boolean)) || EMPTY,\n this.el.matches('button')\n ? tuiTypedFromEvent(this.el, 'click').pipe(\n // Delaying execution until after all other click callbacks\n switchMap(() =>\n tuiTypedFromEvent(this.el.parentElement!, 'click').pipe(take(1)),\n ),\n )\n : EMPTY,\n )\n .pipe(takeUntilDestroyed())\n .subscribe(() =>\n this.el.dispatchEvent(new CustomEvent(TUI_TAB_ACTIVATE, {bubbles: true})),\n );\n\n public ngOnDestroy(): void {\n if (tuiIsNativeFocused(this.el)) {\n this.el.blur();\n }\n }\n}\n","import {InjectionToken, type Provider} from '@angular/core';\nimport {tuiProvideOptions} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {type TuiSizeL} from '@taiga-ui/core/types';\n\nexport interface TuiTabsOptions {\n readonly exposeActive: boolean;\n readonly itemsLimit: number;\n readonly minMoreWidth: number;\n readonly underline: boolean | string;\n readonly size: TuiSizeL;\n}\n\nexport const TUI_TABS_DEFAULT_OPTIONS: TuiTabsOptions = {\n underline: true,\n exposeActive: true,\n itemsLimit: Infinity,\n minMoreWidth: 0,\n size: 'l',\n};\n\n/**\n * Default parameters for Tabs component\n */\nexport const TUI_TABS_OPTIONS = new InjectionToken(ngDevMode ? 'TUI_TABS_OPTIONS' : '', {\n factory: () => TUI_TABS_DEFAULT_OPTIONS,\n});\n\nexport function tuiTabsOptionsProvider(options: Partial<TuiTabsOptions>): Provider {\n return tuiProvideOptions(TUI_TABS_OPTIONS, options, TUI_TABS_DEFAULT_OPTIONS);\n}\n","import {\n afterNextRender,\n type AfterViewChecked,\n ChangeDetectionStrategy,\n Component,\n Directive,\n EventEmitter,\n inject,\n INJECTOR,\n Input,\n Output,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiMoveFocus} from '@taiga-ui/cdk/utils/focus';\nimport {tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {type TuiSizeL} from '@taiga-ui/core/types';\n\nimport {TUI_TAB_ACTIVATE} from './tab.directive';\nimport {TUI_TABS_OPTIONS} from './tabs.options';\n\n@Component({\n standalone: true,\n template: '',\n styleUrls: ['./tabs.style.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'tui-tabs',\n },\n})\nclass TuiTabsStyles {}\n\n@Directive({\n standalone: true,\n host: {\n '[attr.data-size]': 'size',\n [`(${TUI_TAB_ACTIVATE})`]: 'onActivate($event, $event.target)',\n },\n})\nexport class TuiTabsDirective implements AfterViewChecked {\n private readonly el = tuiInjectElement();\n private readonly injector = inject(INJECTOR);\n\n protected readonly nothing = tuiWithStyles(TuiTabsStyles);\n\n @Input()\n public size: TuiSizeL = inject(TUI_TABS_OPTIONS).size;\n\n @Input()\n public activeItemIndex = 0;\n\n @Output()\n public readonly activeItemIndexChange = new EventEmitter<number>();\n\n public get tabs(): readonly HTMLElement[] {\n return Array.from(this.el.querySelectorAll<HTMLElement>('[tuiTab]'));\n }\n\n public get activeElement(): HTMLElement | null {\n return this.tabs[this.activeItemIndex] || null;\n }\n\n public moveFocus(current: HTMLElement, step: number): void {\n const {tabs} = this;\n\n tuiMoveFocus(tabs.indexOf(current), tabs, step);\n }\n\n public ngAfterViewChecked(): void {\n afterNextRender(\n () => {\n this.markTabAsActive();\n },\n {injector: this.injector},\n );\n }\n\n protected onActivate(event: Event, element: HTMLElement): void {\n const index = this.tabs.findIndex((tab) => tab === element);\n\n event.stopPropagation();\n\n if (index === this.activeItemIndex) {\n return;\n }\n\n this.activeItemIndexChange.emit(index);\n this.activeItemIndex = index;\n }\n\n protected markTabAsActive(): void {\n const {tabs, activeElement} = this;\n\n tabs.forEach((nativeElement) => {\n const active = nativeElement === activeElement;\n\n nativeElement.classList.toggle('_active', active);\n nativeElement.setAttribute('tabIndex', active ? '0' : '-1');\n });\n }\n}\n","import {\n type AfterViewChecked,\n ContentChildren,\n Directive,\n forwardRef,\n inject,\n Input,\n type QueryList,\n} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {\n MutationObserverService,\n WA_MUTATION_OBSERVER_INIT,\n} from '@ng-web-apis/mutation-observer';\nimport {EMPTY_QUERY} from '@taiga-ui/cdk/constants';\nimport {tuiZonefree} from '@taiga-ui/cdk/observables';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiPure, tuiPx} from '@taiga-ui/cdk/utils/miscellaneous';\n\nimport {TuiTab} from './tab.directive';\nimport {TuiTabsDirective} from './tabs.directive';\nimport {TUI_TABS_OPTIONS} from './tabs.options';\n\n@Directive({\n standalone: true,\n selector: 'tui-tabs:not([vertical]), nav[tuiTabs]:not([vertical])',\n providers: [\n MutationObserverService,\n {\n provide: WA_MUTATION_OBSERVER_INIT,\n useValue: {\n childList: true,\n characterData: true,\n subtree: true,\n },\n },\n ],\n hostDirectives: [\n {\n directive: TuiTabsDirective,\n inputs: ['activeItemIndex', 'size'],\n outputs: ['activeItemIndexChange'],\n },\n ],\n host: {\n '[class._underline]': 'underline',\n '[style.--t-color]':\n \"underline === true ? 'var(--tui-background-accent-1)' : underline\",\n '(animationend)': 'refresh()',\n '(keydown.arrowRight.prevent)': 'onKeyDownArrow($event.target, 1)',\n '(keydown.arrowLeft.prevent)': 'onKeyDownArrow($event.target, -1)',\n },\n})\nexport class TuiTabsHorizontal implements AfterViewChecked {\n private readonly el = tuiInjectElement();\n private readonly options = inject(TUI_TABS_OPTIONS);\n private readonly tabs = inject(TuiTabsDirective);\n\n @ContentChildren(forwardRef(() => TuiTab))\n protected readonly children: QueryList<unknown> = EMPTY_QUERY;\n\n protected readonly sub = inject(MutationObserverService, {self: true})\n .pipe(tuiZonefree(), takeUntilDestroyed())\n .subscribe(() => this.refresh());\n\n @Input()\n public underline = this.options.underline;\n\n public ngAfterViewChecked(): void {\n this.scrollTo(this.tabs.activeItemIndex);\n this.refresh();\n }\n\n protected onKeyDownArrow(current: HTMLElement, step: number): void {\n this.tabs.moveFocus(current, step);\n }\n\n protected refresh(): void {\n const {activeElement} = this.tabs;\n\n if (activeElement && !activeElement.isConnected) {\n return;\n }\n\n const {offsetLeft = 0, offsetWidth = 0} = activeElement || {};\n\n this.el.style.setProperty('--t-left', tuiPx(offsetLeft));\n this.el.style.setProperty('--t-width', tuiPx(offsetWidth));\n }\n\n @tuiPure\n private scrollTo(index: number): void {\n const element = this.tabs.tabs[index];\n\n if (!element) {\n return;\n }\n\n const {offsetLeft, offsetWidth} = element;\n\n if (offsetLeft < this.el.scrollLeft) {\n this.el.scrollLeft = offsetLeft;\n }\n\n if (offsetLeft + offsetWidth > this.el.scrollLeft + this.el.offsetWidth) {\n this.el.scrollLeft = offsetLeft + offsetWidth - this.el.offsetWidth;\n }\n }\n}\n","import {Directive, inject, Input} from '@angular/core';\nimport {type TuiHorizontalDirection} from '@taiga-ui/core/types';\n\nimport {TuiTabsDirective} from './tabs.directive';\n\n@Directive({\n standalone: true,\n selector: 'tui-tabs[vertical], nav[tuiTabs][vertical]',\n hostDirectives: [\n {\n directive: TuiTabsDirective,\n inputs: ['activeItemIndex', 'size'],\n outputs: ['activeItemIndexChange'],\n },\n ],\n host: {\n '[attr.data-vertical]': 'vertical',\n '(keydown.arrowDown.prevent)': 'onKeyDownArrow($event.target, 1)',\n '(keydown.arrowUp.prevent)': 'onKeyDownArrow($event.target, -1)',\n },\n})\nexport class TuiTabsVertical {\n private readonly tabs = inject(TuiTabsDirective);\n\n @Input()\n public vertical: TuiHorizontalDirection = 'left';\n\n protected onKeyDownArrow(current: HTMLElement, step: number): void {\n this.tabs.moveFocus(current, step);\n }\n}\n","import {DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectorRef,\n ElementRef,\n InjectionToken,\n type Provider,\n} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {\n MutationObserverService,\n WA_MUTATION_OBSERVER_INIT,\n} from '@ng-web-apis/mutation-observer';\nimport {ResizeObserverService} from '@ng-web-apis/resize-observer';\nimport {tuiDropdownOptionsProvider} from '@taiga-ui/core/directives/dropdown';\nimport {debounceTime, filter, merge, type Observable, startWith, tap} from 'rxjs';\n\nexport const TUI_TABS_REFRESH = new InjectionToken<Observable<unknown>>(\n ngDevMode ? 'TUI_TABS_REFRESH' : '',\n);\n\nexport const TUI_TABS_PROVIDERS: Provider[] = [\n ResizeObserverService,\n MutationObserverService,\n tuiDropdownOptionsProvider({align: 'right'}),\n {\n provide: WA_MUTATION_OBSERVER_INIT,\n useValue: {\n childList: true,\n subtree: true,\n characterData: true,\n },\n },\n {\n provide: TUI_TABS_REFRESH,\n deps: [\n ResizeObserverService,\n MutationObserverService,\n DOCUMENT,\n ElementRef,\n ChangeDetectorRef,\n ],\n useFactory: (\n resize$: Observable<unknown>,\n mutations$: Observable<unknown>,\n {body}: Document,\n {nativeElement}: ElementRef<Node>,\n cdr: ChangeDetectorRef,\n ): Observable<unknown> =>\n merge(resize$, mutations$.pipe(tap(() => cdr.detectChanges()))).pipe(\n // Ignoring cases when host is detached from DOM\n filter(() => body.contains(nativeElement)),\n debounceTime(0),\n startWith(null),\n takeUntilDestroyed(),\n ),\n },\n];\n","import {AsyncPipe, NgFor, NgIf, NgTemplateOutlet} from '@angular/common';\nimport {\n type AfterViewChecked,\n type AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n inject,\n Input,\n Output,\n type QueryList,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport {EMPTY_QUERY} from '@taiga-ui/cdk/constants';\nimport {type TuiActiveZone} from '@taiga-ui/cdk/directives/active-zone';\nimport {TuiItem} from '@taiga-ui/cdk/directives/item';\nimport {type TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiInjectElement, tuiIsElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiGetClosestFocusable, tuiIsNativeFocused} from '@taiga-ui/cdk/utils/focus';\nimport {tuiClamp, tuiToInt} from '@taiga-ui/cdk/utils/math';\nimport {tuiPx} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiDropdown} from '@taiga-ui/core/directives/dropdown';\nimport {type TuiSizeL} from '@taiga-ui/core/types';\nimport {TuiChevron} from '@taiga-ui/kit/directives/chevron';\nimport {TUI_MORE_WORD} from '@taiga-ui/kit/tokens';\nimport {type PolymorpheusContent, PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\nimport {filter, map, tap} from 'rxjs';\n\nimport {TuiTab} from './tab.directive';\nimport {TUI_TABS_OPTIONS} from './tabs.options';\nimport {TUI_TABS_PROVIDERS, TUI_TABS_REFRESH} from './tabs.providers';\nimport {TuiTabsHorizontal} from './tabs-horizontal.directive';\n\n@Component({\n standalone: true,\n selector: 'tui-tabs-with-more, nav[tuiTabsWithMore]',\n imports: [\n AsyncPipe,\n NgFor,\n NgIf,\n NgTemplateOutlet,\n PolymorpheusOutlet,\n TuiChevron,\n TuiDropdown,\n TuiTab,\n TuiTabsHorizontal,\n ],\n templateUrl: './tabs-with-more.template.html',\n styleUrls: ['./tabs-with-more.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: TUI_TABS_PROVIDERS,\n host: {\n '[attr.data-size]': 'size',\n },\n})\nexport class TuiTabsWithMore implements AfterViewChecked, AfterViewInit {\n @ViewChild(TuiTab, {read: ElementRef})\n private readonly moreButton?: ElementRef<HTMLButtonElement>;\n\n @ViewChild(TuiTabsHorizontal, {read: ElementRef})\n private readonly dir?: ElementRef<HTMLButtonElement>;\n\n private readonly options = inject(TUI_TABS_OPTIONS);\n private readonly refresh$ = inject(TUI_TABS_REFRESH);\n private readonly el = tuiInjectElement();\n private readonly cdr = inject(ChangeDetectorRef);\n private maxIndex = Infinity;\n\n @ContentChildren(TuiItem, {read: TemplateRef})\n protected readonly items: QueryList<TemplateRef<Record<string, unknown>>> =\n EMPTY_QUERY;\n\n protected readonly moreWord$ = inject(TUI_MORE_WORD);\n protected open = false;\n\n @Input()\n public size: TuiSizeL = this.options.size;\n\n @Input()\n public moreContent: PolymorpheusContent;\n\n @Input()\n public dropdownContent: PolymorpheusContent<TuiContext<TuiActiveZone>>;\n\n @Input()\n public underline = this.options.underline;\n\n @Input()\n public itemsLimit = this.options.itemsLimit;\n\n @Output()\n public readonly activeItemIndexChange = new EventEmitter<number>();\n\n public activeItemIndex = 0;\n\n @Input('activeItemIndex')\n public set itemIndex(activeItemIndex: number) {\n this.activeItemIndex = activeItemIndex;\n this.maxIndex = this.getMaxIndex();\n }\n\n public get lastVisibleIndex(): number {\n if (this.itemsLimit + 1 >= this.items.length) {\n return this.maxIndex;\n }\n\n const offset =\n this.itemsLimit - 1 > this.activeItemIndex || !this.options.exposeActive\n ? 1\n : 2;\n\n return Math.min(this.itemsLimit - offset, this.maxIndex);\n }\n\n public ngAfterViewInit(): void {\n this.refresh$\n .pipe(\n map(() => this.getMaxIndex()),\n tap(() => this.refresh()),\n filter((maxIndex) => this.maxIndex !== maxIndex),\n )\n .subscribe((maxIndex) => {\n this.maxIndex = maxIndex;\n this.cdr.detectChanges();\n });\n }\n\n public ngAfterViewChecked(): void {\n this.refresh();\n }\n\n // TODO: Improve performance\n protected get tabs(): readonly HTMLElement[] {\n return Array.from<HTMLElement>(this.el.querySelectorAll('[tuiTab]'));\n }\n\n protected get activeElement(): HTMLElement | null {\n const {tabs} = this;\n const safeActiveIndex = tuiClamp(this.activeItemIndex || 0, 0, tabs.length - 2);\n\n return this.options.exposeActive || this.lastVisibleIndex >= safeActiveIndex\n ? tabs[safeActiveIndex] || null\n : this.moreButton?.nativeElement || null;\n }\n\n protected get isMoreAlone(): boolean {\n return this.lastVisibleIndex < 0 && !this.options.exposeActive;\n }\n\n protected get isMoreVisible(): boolean {\n return this.lastVisibleIndex < this.items.length - 1;\n }\n\n protected get isMoreFocusable(): boolean {\n return !!this.moreButton && tuiIsNativeFocused(this.moreButton.nativeElement);\n }\n\n protected get isMoreActive(): boolean {\n return (\n this.open ||\n (!this.options.exposeActive && this.lastVisibleIndex < this.activeItemIndex)\n );\n }\n\n protected onActiveItemIndexChange(activeItemIndex: number): void {\n this.updateActiveItemIndex(activeItemIndex);\n }\n\n protected onClick(index: number): void {\n this.open = false;\n this.focusMore();\n this.updateActiveItemIndex(index);\n }\n\n protected onArrowRight(event: Event): void {\n if (tuiIsElement(event.target) && tuiIsNativeFocused(event.target)) {\n this.focusMore();\n }\n }\n\n protected onArrowLeft(): void {\n const {tabs} = this;\n let index = tabs.length - 2;\n\n while (index >= 0) {\n tabs[index]?.focus();\n\n if (tuiIsNativeFocused(tabs[index])) {\n return;\n }\n\n index--;\n }\n }\n\n protected onWrapperArrow(\n event: Event,\n wrapper: HTMLElement,\n previous: boolean,\n ): void {\n const button: HTMLButtonElement = event.target as HTMLButtonElement;\n const target = tuiGetClosestFocusable({initial: button, root: wrapper, previous});\n\n if (target) {\n target.focus();\n }\n }\n\n protected isOverflown(index: number): boolean {\n return index !== this.activeItemIndex || !this.options.exposeActive;\n }\n\n protected shouldShow(index: number): boolean {\n return index > this.lastVisibleIndex && this.isOverflown(index);\n }\n\n private get margin(): number {\n return this.size === 'l' ? 24 : 16;\n }\n\n private focusMore(): void {\n if (this.moreButton) {\n this.moreButton.nativeElement.focus();\n }\n }\n\n private getMaxIndex(): number {\n const {tabs, activeItemIndex, margin} = this;\n\n if (tabs.length < 2) {\n return 0;\n }\n\n const {exposeActive, minMoreWidth} = this.options;\n const {clientWidth} = this.el;\n const active = tabs[activeItemIndex];\n const activeWidth = active?.scrollWidth ?? 0;\n const moreWidth = Math.max(tabs[tabs.length - 1]?.scrollWidth ?? 0, minMoreWidth);\n let maxIndex = tabs.length - 2;\n let total =\n tabs.reduce((acc, {scrollWidth}) => acc + scrollWidth, 0) +\n maxIndex * margin -\n (tabs[tabs.length - 1]?.scrollWidth ?? 0);\n\n if (Number.isNaN(total) || total <= clientWidth) {\n return Infinity;\n }\n\n while (maxIndex) {\n total -= (tabs[maxIndex]?.scrollWidth ?? 0) + margin;\n maxIndex--;\n\n const activeDisplaced = exposeActive && activeItemIndex > maxIndex;\n const activeOffset = activeDisplaced ? activeWidth + margin : 0;\n const currentWidth = total + activeOffset + moreWidth + margin;\n // Needed for different rounding of visible and hidden elements scrollWidth\n const safetyOffset = tuiToInt(this.maxIndex === maxIndex - 1);\n\n if (currentWidth + safetyOffset < clientWidth) {\n return maxIndex;\n }\n }\n\n return -1;\n }\n\n private updateActiveItemIndex(activeItemIndex: number): void {\n this.itemIndex = activeItemIndex;\n this.activeItemIndexChange.emit(activeItemIndex);\n }\n\n private refresh(): void {\n const {offsetLeft = 0, offsetWidth = 0} = this.activeElement || {};\n\n this.dir?.nativeElement.style.setProperty('--t-left', tuiPx(offsetLeft));\n this.dir?.nativeElement.style.setProperty('--t-width', tuiPx(offsetWidth));\n }\n}\n","<ng-container *ngIf=\"items.changes | async\" />\n<tui-tabs\n class=\"t-tabs\"\n [activeItemIndex]=\"activeItemIndex\"\n [size]=\"size\"\n [underline]=\"underline\"\n (activeItemIndexChange)=\"onActiveItemIndexChange($event)\"\n (keydown.arrowRight)=\"onArrowRight($event)\"\n>\n <ng-container *ngFor=\"let item of items; let index = index\">\n <ng-container\n *ngIf=\"index <= lastVisibleIndex; else hidden\"\n [ngTemplateOutlet]=\"item\"\n />\n <ng-template #hidden>\n <div\n class=\"t-flex\"\n [class.t-overflown]=\"isOverflown(index)\"\n >\n <ng-container [ngTemplateOutlet]=\"item\" />\n </div>\n </ng-template>\n </ng-container>\n</tui-tabs>\n\n<button\n *ngIf=\"moreContent; else chevron\"\n tuiTab\n type=\"button\"\n class=\"t-more\"\n [class._active]=\"isMoreActive\"\n [class.t-no-margin]=\"isMoreAlone\"\n [class.t-overflown]=\"!isMoreVisible\"\n [tabIndex]=\"isMoreFocusable ? 0 : -1\"\n [tuiDropdown]=\"dropdownContent || dropdown\"\n [(tuiDropdownOpen)]=\"open\"\n (keydown.arrowLeft.prevent)=\"onArrowLeft()\"\n>\n <ng-container *polymorpheusOutlet=\"moreContent as text\">\n {{ text }}\n </ng-container>\n</button>\n<ng-template #chevron>\n <button\n tuiChevron\n tuiTab\n type=\"button\"\n class=\"t-more\"\n [class._active]=\"isMoreActive\"\n [class.t-no-margin]=\"isMoreAlone\"\n [class.t-overflown]=\"!isMoreVisible\"\n [tabIndex]=\"isMoreFocusable ? 0 : -1\"\n [tuiDropdown]=\"dropdownContent || dropdown\"\n [(tuiDropdownOpen)]=\"open\"\n (keydown.arrowLeft.prevent)=\"onArrowLeft()\"\n >\n {{ moreWord$ | async }}\n </button>\n</ng-template>\n<ng-template #dropdown>\n <div\n #element\n class=\"t-dropdown\"\n [attr.data-size]=\"size\"\n (keydown.arrowDown.prevent)=\"onWrapperArrow($event, element, false)\"\n (keydown.arrowUp.prevent)=\"onWrapperArrow($event, element, true)\"\n >\n <div\n *ngFor=\"let item of items; let index = index\"\n class=\"t-dropdown-item\"\n (tui-tab-activate)=\"onClick(index)\"\n >\n <ng-container *ngIf=\"shouldShow(index)\">\n <ng-container *polymorpheusOutlet=\"item\" />\n </ng-container>\n </div>\n </div>\n</ng-template>\n","import {TuiItem} from '@taiga-ui/cdk/directives/item';\n\nimport {TuiTab} from './tab.directive';\nimport {TuiTabsDirective} from './tabs.directive';\nimport {TuiTabsHorizontal} from './tabs-horizontal.directive';\nimport {TuiTabsVertical} from './tabs-vertical.directive';\nimport {TuiTabsWithMore} from './tabs-with-more.component';\n\nexport const TuiTabs = [\n TuiItem,\n TuiTab,\n TuiTabsDirective,\n TuiTabsHorizontal,\n TuiTabsVertical,\n TuiTabsWithMore,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.TuiTabsDirective","i1"],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-kit-components-tabs.mjs","sources":["../../../projects/kit/components/tabs/tab.directive.ts","../../../projects/kit/components/tabs/tabs.options.ts","../../../projects/kit/components/tabs/tabs.directive.ts","../../../projects/kit/components/tabs/tabs-horizontal.directive.ts","../../../projects/kit/components/tabs/tabs-vertical.directive.ts","../../../projects/kit/components/tabs/tabs.providers.ts","../../../projects/kit/components/tabs/tabs-with-more.component.ts","../../../projects/kit/components/tabs/tabs-with-more.template.html","../../../projects/kit/components/tabs/tabs.ts","../../../projects/kit/components/tabs/taiga-ui-kit-components-tabs.ts"],"sourcesContent":["import {Directive, inject, type OnDestroy} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {RouterLinkActive} from '@angular/router';\nimport {MutationObserverService} from '@ng-web-apis/mutation-observer';\nimport {tuiTypedFromEvent} from '@taiga-ui/cdk/observables';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiIsNativeFocused} from '@taiga-ui/cdk/utils/focus';\nimport {TuiWithIcons} from '@taiga-ui/core/directives/icons';\nimport {EMPTY, filter, merge, switchMap, take} from 'rxjs';\n\nexport const TUI_TAB_ACTIVATE = 'tui-tab-activate';\n\n@Directive({\n standalone: true,\n selector:\n 'a[tuiTab]:not([routerLink]), a[tuiTab][routerLink][routerLinkActive], button[tuiTab]',\n hostDirectives: [TuiWithIcons],\n host: {\n type: 'button',\n },\n})\nexport class TuiTab implements OnDestroy {\n private readonly el = tuiInjectElement();\n private readonly rla = inject(RouterLinkActive, {optional: true});\n private readonly observer =\n this.rla &&\n inject(MutationObserverService, {optional: true})?.pipe(\n filter(() => !!this.rla?.isActive),\n );\n\n protected readonly sub = merge(\n this.observer || EMPTY,\n this.rla?.isActiveChange.pipe(filter(Boolean)) || EMPTY,\n this.el.matches('button')\n ? tuiTypedFromEvent(this.el, 'click').pipe(\n // Delaying execution until after all other click callbacks\n switchMap(() =>\n tuiTypedFromEvent(this.el.parentElement!, 'click').pipe(take(1)),\n ),\n )\n : EMPTY,\n )\n .pipe(takeUntilDestroyed())\n .subscribe(() =>\n this.el.dispatchEvent(new CustomEvent(TUI_TAB_ACTIVATE, {bubbles: true})),\n );\n\n public ngOnDestroy(): void {\n if (tuiIsNativeFocused(this.el)) {\n this.el.blur();\n }\n }\n}\n","import {InjectionToken, type Provider} from '@angular/core';\nimport {tuiProvideOptions} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {type TuiSizeL} from '@taiga-ui/core/types';\n\nexport interface TuiTabsOptions {\n readonly exposeActive: boolean;\n readonly itemsLimit: number;\n readonly minMoreWidth: number;\n readonly underline: boolean | string;\n readonly size: TuiSizeL;\n}\n\nexport const TUI_TABS_DEFAULT_OPTIONS: TuiTabsOptions = {\n underline: true,\n exposeActive: true,\n itemsLimit: Infinity,\n minMoreWidth: 0,\n size: 'l',\n};\n\n/**\n * Default parameters for Tabs component\n */\nexport const TUI_TABS_OPTIONS = new InjectionToken(ngDevMode ? 'TUI_TABS_OPTIONS' : '', {\n factory: () => TUI_TABS_DEFAULT_OPTIONS,\n});\n\nexport function tuiTabsOptionsProvider(options: Partial<TuiTabsOptions>): Provider {\n return tuiProvideOptions(TUI_TABS_OPTIONS, options, TUI_TABS_DEFAULT_OPTIONS);\n}\n","import {\n afterNextRender,\n type AfterViewChecked,\n ChangeDetectionStrategy,\n Component,\n Directive,\n EventEmitter,\n inject,\n INJECTOR,\n Input,\n Output,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiMoveFocus} from '@taiga-ui/cdk/utils/focus';\nimport {tuiWithStyles} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {type TuiSizeL} from '@taiga-ui/core/types';\n\nimport {TUI_TAB_ACTIVATE} from './tab.directive';\nimport {TUI_TABS_OPTIONS} from './tabs.options';\n\n@Component({\n standalone: true,\n template: '',\n styleUrls: ['./tabs.style.less'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'tui-tabs',\n },\n})\nclass TuiTabsStyles {}\n\n@Directive({\n standalone: true,\n host: {\n '[attr.data-size]': 'size',\n [`(${TUI_TAB_ACTIVATE})`]: 'onActivate($event, $event.target)',\n },\n})\nexport class TuiTabsDirective implements AfterViewChecked {\n private readonly el = tuiInjectElement();\n private readonly injector = inject(INJECTOR);\n\n protected readonly nothing = tuiWithStyles(TuiTabsStyles);\n\n @Input()\n public size: TuiSizeL = inject(TUI_TABS_OPTIONS).size;\n\n @Input()\n public activeItemIndex = 0;\n\n @Output()\n public readonly activeItemIndexChange = new EventEmitter<number>();\n\n public get tabs(): readonly HTMLElement[] {\n return Array.from(this.el.querySelectorAll<HTMLElement>('[tuiTab]'));\n }\n\n public get activeElement(): HTMLElement | null {\n return this.tabs[this.activeItemIndex] || null;\n }\n\n public moveFocus(current: HTMLElement, step: number): void {\n const {tabs} = this;\n\n tuiMoveFocus(tabs.indexOf(current), tabs, step);\n }\n\n public ngAfterViewChecked(): void {\n afterNextRender(\n () => {\n this.markTabAsActive();\n },\n {injector: this.injector},\n );\n }\n\n protected onActivate(event: Event, element: HTMLElement): void {\n const index = this.tabs.findIndex((tab) => tab === element);\n\n event.stopPropagation();\n\n if (index === this.activeItemIndex) {\n return;\n }\n\n this.activeItemIndexChange.emit(index);\n this.activeItemIndex = index;\n }\n\n protected markTabAsActive(): void {\n const {tabs, activeElement} = this;\n\n tabs.forEach((nativeElement) => {\n const active = nativeElement === activeElement;\n\n nativeElement.classList.toggle('_active', active);\n nativeElement.setAttribute('tabIndex', active ? '0' : '-1');\n });\n }\n}\n","import {\n type AfterViewChecked,\n ContentChildren,\n Directive,\n forwardRef,\n inject,\n Input,\n type QueryList,\n} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {\n MutationObserverService,\n WA_MUTATION_OBSERVER_INIT,\n} from '@ng-web-apis/mutation-observer';\nimport {EMPTY_QUERY} from '@taiga-ui/cdk/constants';\nimport {tuiZonefree} from '@taiga-ui/cdk/observables';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiPure, tuiPx} from '@taiga-ui/cdk/utils/miscellaneous';\n\nimport {TuiTab} from './tab.directive';\nimport {TuiTabsDirective} from './tabs.directive';\nimport {TUI_TABS_OPTIONS} from './tabs.options';\n\n@Directive({\n standalone: true,\n selector: 'tui-tabs:not([vertical]), nav[tuiTabs]:not([vertical])',\n providers: [\n MutationObserverService,\n {\n provide: WA_MUTATION_OBSERVER_INIT,\n useValue: {\n childList: true,\n characterData: true,\n subtree: true,\n },\n },\n ],\n hostDirectives: [\n {\n directive: TuiTabsDirective,\n inputs: ['activeItemIndex', 'size'],\n outputs: ['activeItemIndexChange'],\n },\n ],\n host: {\n '[class._underline]': 'underline',\n '[style.--t-color]':\n \"underline === true ? 'var(--tui-background-accent-1)' : underline\",\n '(animationend)': 'refresh()',\n '(keydown.arrowRight.prevent)': 'onKeyDownArrow($event.target, 1)',\n '(keydown.arrowLeft.prevent)': 'onKeyDownArrow($event.target, -1)',\n },\n})\nexport class TuiTabsHorizontal implements AfterViewChecked {\n private readonly el = tuiInjectElement();\n private readonly options = inject(TUI_TABS_OPTIONS);\n private readonly tabs = inject(TuiTabsDirective);\n\n @ContentChildren(forwardRef(() => TuiTab))\n protected readonly children: QueryList<unknown> = EMPTY_QUERY;\n\n protected readonly sub = inject(MutationObserverService, {self: true})\n .pipe(tuiZonefree(), takeUntilDestroyed())\n .subscribe(() => this.refresh());\n\n @Input()\n public underline = this.options.underline;\n\n public ngAfterViewChecked(): void {\n this.scrollTo(this.tabs.activeItemIndex);\n this.refresh();\n }\n\n protected onKeyDownArrow(current: HTMLElement, step: number): void {\n this.tabs.moveFocus(current, step);\n }\n\n protected refresh(): void {\n const {activeElement} = this.tabs;\n\n if (activeElement && !activeElement.isConnected) {\n return;\n }\n\n const {offsetLeft = 0, offsetWidth = 0} = activeElement || {};\n\n this.el.style.setProperty('--t-left', tuiPx(offsetLeft));\n this.el.style.setProperty('--t-width', tuiPx(offsetWidth));\n }\n\n @tuiPure\n private scrollTo(index: number): void {\n const element = this.tabs.tabs[index];\n\n if (!element) {\n return;\n }\n\n const {offsetLeft, offsetWidth} = element;\n\n if (offsetLeft < this.el.scrollLeft) {\n this.el.scrollLeft = offsetLeft;\n }\n\n if (offsetLeft + offsetWidth > this.el.scrollLeft + this.el.offsetWidth) {\n this.el.scrollLeft = offsetLeft + offsetWidth - this.el.offsetWidth;\n }\n }\n}\n","import {Directive, inject, Input} from '@angular/core';\nimport {type TuiHorizontalDirection} from '@taiga-ui/core/types';\n\nimport {TuiTabsDirective} from './tabs.directive';\n\n@Directive({\n standalone: true,\n selector: 'tui-tabs[vertical], nav[tuiTabs][vertical]',\n hostDirectives: [\n {\n directive: TuiTabsDirective,\n inputs: ['activeItemIndex', 'size'],\n outputs: ['activeItemIndexChange'],\n },\n ],\n host: {\n '[attr.data-vertical]': 'vertical',\n '(keydown.arrowDown.prevent)': 'onKeyDownArrow($event.target, 1)',\n '(keydown.arrowUp.prevent)': 'onKeyDownArrow($event.target, -1)',\n },\n})\nexport class TuiTabsVertical {\n private readonly tabs = inject(TuiTabsDirective);\n\n @Input()\n public vertical: TuiHorizontalDirection = 'left';\n\n protected onKeyDownArrow(current: HTMLElement, step: number): void {\n this.tabs.moveFocus(current, step);\n }\n}\n","import {DOCUMENT} from '@angular/common';\nimport {\n ChangeDetectorRef,\n ElementRef,\n InjectionToken,\n type Provider,\n} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {\n MutationObserverService,\n WA_MUTATION_OBSERVER_INIT,\n} from '@ng-web-apis/mutation-observer';\nimport {ResizeObserverService} from '@ng-web-apis/resize-observer';\nimport {tuiDropdownOptionsProvider} from '@taiga-ui/core/directives/dropdown';\nimport {debounceTime, filter, merge, type Observable, startWith, tap} from 'rxjs';\n\nexport const TUI_TABS_REFRESH = new InjectionToken<Observable<unknown>>(\n ngDevMode ? 'TUI_TABS_REFRESH' : '',\n);\n\nexport const TUI_TABS_PROVIDERS: Provider[] = [\n ResizeObserverService,\n MutationObserverService,\n tuiDropdownOptionsProvider({align: 'right'}),\n {\n provide: WA_MUTATION_OBSERVER_INIT,\n useValue: {\n childList: true,\n subtree: true,\n characterData: true,\n },\n },\n {\n provide: TUI_TABS_REFRESH,\n deps: [\n ResizeObserverService,\n MutationObserverService,\n DOCUMENT,\n ElementRef,\n ChangeDetectorRef,\n ],\n useFactory: (\n resize$: Observable<unknown>,\n mutations$: Observable<unknown>,\n {body}: Document,\n {nativeElement}: ElementRef<Node>,\n cdr: ChangeDetectorRef,\n ): Observable<unknown> =>\n merge(resize$, mutations$.pipe(tap(() => cdr.detectChanges()))).pipe(\n // Ignoring cases when host is detached from DOM\n filter(() => body.contains(nativeElement)),\n debounceTime(0),\n startWith(null),\n takeUntilDestroyed(),\n ),\n },\n];\n","import {AsyncPipe, NgFor, NgIf, NgTemplateOutlet} from '@angular/common';\nimport {\n type AfterViewChecked,\n type AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n inject,\n Input,\n Output,\n type QueryList,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport {EMPTY_QUERY} from '@taiga-ui/cdk/constants';\nimport {type TuiActiveZone} from '@taiga-ui/cdk/directives/active-zone';\nimport {TuiItem} from '@taiga-ui/cdk/directives/item';\nimport {type TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiInjectElement, tuiIsElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiGetClosestFocusable, tuiIsNativeFocused} from '@taiga-ui/cdk/utils/focus';\nimport {tuiClamp, tuiToInt} from '@taiga-ui/cdk/utils/math';\nimport {tuiPx} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiDropdown} from '@taiga-ui/core/directives/dropdown';\nimport {type TuiSizeL} from '@taiga-ui/core/types';\nimport {TuiChevron} from '@taiga-ui/kit/directives/chevron';\nimport {TUI_MORE_WORD} from '@taiga-ui/kit/tokens';\nimport {type PolymorpheusContent, PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\nimport {filter, map, tap} from 'rxjs';\n\nimport {TuiTab} from './tab.directive';\nimport {TUI_TABS_OPTIONS} from './tabs.options';\nimport {TUI_TABS_PROVIDERS, TUI_TABS_REFRESH} from './tabs.providers';\nimport {TuiTabsHorizontal} from './tabs-horizontal.directive';\n\n@Component({\n selector: 'tui-tabs-with-more, nav[tuiTabsWithMore]',\n imports: [\n AsyncPipe,\n NgFor,\n NgIf,\n NgTemplateOutlet,\n PolymorpheusOutlet,\n TuiChevron,\n TuiDropdown,\n TuiTab,\n TuiTabsHorizontal,\n ],\n templateUrl: './tabs-with-more.template.html',\n styleUrls: ['./tabs-with-more.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: TUI_TABS_PROVIDERS,\n host: {\n '[attr.data-size]': 'size',\n },\n})\nexport class TuiTabsWithMore implements AfterViewChecked, AfterViewInit {\n @ViewChild(TuiTab, {read: ElementRef})\n private readonly moreButton?: ElementRef<HTMLButtonElement>;\n\n @ViewChild(TuiTabsHorizontal, {read: ElementRef})\n private readonly dir?: ElementRef<HTMLButtonElement>;\n\n private readonly options = inject(TUI_TABS_OPTIONS);\n private readonly refresh$ = inject(TUI_TABS_REFRESH);\n private readonly el = tuiInjectElement();\n private readonly cdr = inject(ChangeDetectorRef);\n private maxIndex = Infinity;\n\n @ContentChildren(TuiItem, {read: TemplateRef})\n protected readonly items: QueryList<TemplateRef<Record<string, unknown>>> =\n EMPTY_QUERY;\n\n protected readonly moreWord$ = inject(TUI_MORE_WORD);\n protected open = false;\n\n @Input()\n public size: TuiSizeL = this.options.size;\n\n @Input()\n public moreContent: PolymorpheusContent;\n\n @Input()\n public dropdownContent: PolymorpheusContent<TuiContext<TuiActiveZone>>;\n\n @Input()\n public underline = this.options.underline;\n\n @Input()\n public itemsLimit = this.options.itemsLimit;\n\n @Output()\n public readonly activeItemIndexChange = new EventEmitter<number>();\n\n public activeItemIndex = 0;\n\n @Input('activeItemIndex')\n public set itemIndex(activeItemIndex: number) {\n this.activeItemIndex = activeItemIndex;\n this.maxIndex = this.getMaxIndex();\n }\n\n public get lastVisibleIndex(): number {\n if (this.itemsLimit + 1 >= this.items.length) {\n return this.maxIndex;\n }\n\n const offset =\n this.itemsLimit - 1 > this.activeItemIndex || !this.options.exposeActive\n ? 1\n : 2;\n\n return Math.min(this.itemsLimit - offset, this.maxIndex);\n }\n\n public ngAfterViewInit(): void {\n this.refresh$\n .pipe(\n map(() => this.getMaxIndex()),\n tap(() => this.refresh()),\n filter((maxIndex) => this.maxIndex !== maxIndex),\n )\n .subscribe((maxIndex) => {\n this.maxIndex = maxIndex;\n this.cdr.detectChanges();\n });\n }\n\n public ngAfterViewChecked(): void {\n this.refresh();\n }\n\n // TODO: Improve performance\n protected get tabs(): readonly HTMLElement[] {\n return Array.from<HTMLElement>(this.el.querySelectorAll('[tuiTab]'));\n }\n\n protected get activeElement(): HTMLElement | null {\n const {tabs} = this;\n const safeActiveIndex = tuiClamp(this.activeItemIndex || 0, 0, tabs.length - 2);\n\n return this.options.exposeActive || this.lastVisibleIndex >= safeActiveIndex\n ? tabs[safeActiveIndex] || null\n : this.moreButton?.nativeElement || null;\n }\n\n protected get isMoreAlone(): boolean {\n return this.lastVisibleIndex < 0 && !this.options.exposeActive;\n }\n\n protected get isMoreVisible(): boolean {\n return this.lastVisibleIndex < this.items.length - 1;\n }\n\n protected get isMoreFocusable(): boolean {\n return !!this.moreButton && tuiIsNativeFocused(this.moreButton.nativeElement);\n }\n\n protected get isMoreActive(): boolean {\n return (\n this.open ||\n (!this.options.exposeActive && this.lastVisibleIndex < this.activeItemIndex)\n );\n }\n\n protected onActiveItemIndexChange(activeItemIndex: number): void {\n this.updateActiveItemIndex(activeItemIndex);\n }\n\n protected onClick(index: number): void {\n this.open = false;\n this.focusMore();\n this.updateActiveItemIndex(index);\n }\n\n protected onArrowRight(event: Event): void {\n if (tuiIsElement(event.target) && tuiIsNativeFocused(event.target)) {\n this.focusMore();\n }\n }\n\n protected onArrowLeft(): void {\n const {tabs} = this;\n let index = tabs.length - 2;\n\n while (index >= 0) {\n tabs[index]?.focus();\n\n if (tuiIsNativeFocused(tabs[index])) {\n return;\n }\n\n index--;\n }\n }\n\n protected onWrapperArrow(\n event: Event,\n wrapper: HTMLElement,\n previous: boolean,\n ): void {\n const button: HTMLButtonElement = event.target as HTMLButtonElement;\n const target = tuiGetClosestFocusable({initial: button, root: wrapper, previous});\n\n if (target) {\n target.focus();\n }\n }\n\n protected isOverflown(index: number): boolean {\n return index !== this.activeItemIndex || !this.options.exposeActive;\n }\n\n protected shouldShow(index: number): boolean {\n return index > this.lastVisibleIndex && this.isOverflown(index);\n }\n\n private get margin(): number {\n return this.size === 'l' ? 24 : 16;\n }\n\n private focusMore(): void {\n if (this.moreButton) {\n this.moreButton.nativeElement.focus();\n }\n }\n\n private getMaxIndex(): number {\n const {tabs, activeItemIndex, margin} = this;\n\n if (tabs.length < 2) {\n return 0;\n }\n\n const {exposeActive, minMoreWidth} = this.options;\n const {clientWidth} = this.el;\n const active = tabs[activeItemIndex];\n const activeWidth = active?.scrollWidth ?? 0;\n const moreWidth = Math.max(tabs[tabs.length - 1]?.scrollWidth ?? 0, minMoreWidth);\n let maxIndex = tabs.length - 2;\n let total =\n tabs.reduce((acc, {scrollWidth}) => acc + scrollWidth, 0) +\n maxIndex * margin -\n (tabs[tabs.length - 1]?.scrollWidth ?? 0);\n\n if (Number.isNaN(total) || total <= clientWidth) {\n return Infinity;\n }\n\n while (maxIndex) {\n total -= (tabs[maxIndex]?.scrollWidth ?? 0) + margin;\n maxIndex--;\n\n const activeDisplaced = exposeActive && activeItemIndex > maxIndex;\n const activeOffset = activeDisplaced ? activeWidth + margin : 0;\n const currentWidth = total + activeOffset + moreWidth + margin;\n // Needed for different rounding of visible and hidden elements scrollWidth\n const safetyOffset = tuiToInt(this.maxIndex === maxIndex - 1);\n\n if (currentWidth + safetyOffset < clientWidth) {\n return maxIndex;\n }\n }\n\n return -1;\n }\n\n private updateActiveItemIndex(activeItemIndex: number): void {\n this.itemIndex = activeItemIndex;\n this.activeItemIndexChange.emit(activeItemIndex);\n }\n\n private refresh(): void {\n const {offsetLeft = 0, offsetWidth = 0} = this.activeElement || {};\n\n this.dir?.nativeElement.style.setProperty('--t-left', tuiPx(offsetLeft));\n this.dir?.nativeElement.style.setProperty('--t-width', tuiPx(offsetWidth));\n }\n}\n","<ng-container *ngIf=\"items.changes | async\" />\n<tui-tabs\n class=\"t-tabs\"\n [activeItemIndex]=\"activeItemIndex\"\n [size]=\"size\"\n [underline]=\"underline\"\n (activeItemIndexChange)=\"onActiveItemIndexChange($event)\"\n (keydown.arrowRight)=\"onArrowRight($event)\"\n>\n <ng-container *ngFor=\"let item of items; let index = index\">\n <ng-container\n *ngIf=\"index <= lastVisibleIndex; else hidden\"\n [ngTemplateOutlet]=\"item\"\n />\n <ng-template #hidden>\n <div\n class=\"t-flex\"\n [class.t-overflown]=\"isOverflown(index)\"\n >\n <ng-container [ngTemplateOutlet]=\"item\" />\n </div>\n </ng-template>\n </ng-container>\n</tui-tabs>\n\n<button\n *ngIf=\"moreContent; else chevron\"\n tuiTab\n type=\"button\"\n class=\"t-more\"\n [class._active]=\"isMoreActive\"\n [class.t-no-margin]=\"isMoreAlone\"\n [class.t-overflown]=\"!isMoreVisible\"\n [tabIndex]=\"isMoreFocusable ? 0 : -1\"\n [tuiDropdown]=\"dropdownContent || dropdown\"\n [(tuiDropdownOpen)]=\"open\"\n (keydown.arrowLeft.prevent)=\"onArrowLeft()\"\n>\n <ng-container *polymorpheusOutlet=\"moreContent as text\">\n {{ text }}\n </ng-container>\n</button>\n<ng-template #chevron>\n <button\n tuiChevron\n tuiTab\n type=\"button\"\n class=\"t-more\"\n [class._active]=\"isMoreActive\"\n [class.t-no-margin]=\"isMoreAlone\"\n [class.t-overflown]=\"!isMoreVisible\"\n [tabIndex]=\"isMoreFocusable ? 0 : -1\"\n [tuiDropdown]=\"dropdownContent || dropdown\"\n [(tuiDropdownOpen)]=\"open\"\n (keydown.arrowLeft.prevent)=\"onArrowLeft()\"\n >\n {{ moreWord$ | async }}\n </button>\n</ng-template>\n<ng-template #dropdown>\n <div\n #element\n class=\"t-dropdown\"\n [attr.data-size]=\"size\"\n (keydown.arrowDown.prevent)=\"onWrapperArrow($event, element, false)\"\n (keydown.arrowUp.prevent)=\"onWrapperArrow($event, element, true)\"\n >\n <div\n *ngFor=\"let item of items; let index = index\"\n class=\"t-dropdown-item\"\n (tui-tab-activate)=\"onClick(index)\"\n >\n <ng-container *ngIf=\"shouldShow(index)\">\n <ng-container *polymorpheusOutlet=\"item\" />\n </ng-container>\n </div>\n </div>\n</ng-template>\n","import {TuiItem} from '@taiga-ui/cdk/directives/item';\n\nimport {TuiTab} from './tab.directive';\nimport {TuiTabsDirective} from './tabs.directive';\nimport {TuiTabsHorizontal} from './tabs-horizontal.directive';\nimport {TuiTabsVertical} from './tabs-vertical.directive';\nimport {TuiTabsWithMore} from './tabs-with-more.component';\n\nexport const TuiTabs = [\n TuiItem,\n TuiTab,\n TuiTabsDirective,\n TuiTabsHorizontal,\n TuiTabsVertical,\n TuiTabsWithMore,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.TuiTabsDirective","i1"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { NgIf } from '@angular/common';
2
2
  import * as i0 from '@angular/core';
3
- import { inject, ViewContainerRef, ElementRef, TemplateRef, Component, ChangeDetectionStrategy, ViewChild, Input, signal, Directive } from '@angular/core';
3
+ import { inject, ViewContainerRef, TemplateRef, ElementRef, Input, ViewChild, ChangeDetectionStrategy, Component, signal, Directive } from '@angular/core';
4
4
  import { TUI_IS_MOBILE } from '@taiga-ui/cdk/tokens';
5
5
  import { tuiInjectElement } from '@taiga-ui/cdk/utils/dom';
6
6
  import { tuiProvide } from '@taiga-ui/cdk/utils/miscellaneous';
@@ -37,18 +37,18 @@ class TuiTextarea {
37
37
  onScroll() {
38
38
  this.text?.nativeElement.scrollTo({ top: this.el.scrollTop });
39
39
  }
40
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextarea, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
41
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiTextarea, isStandalone: true, selector: "textarea[tuiTextarea]", inputs: { min: "min", max: "max", content: "content" }, host: { attributes: { "ngSkipHydration": "true" }, listeners: { "scroll.zoneless": "onScroll()", "scroll.once": "onScroll()" }, properties: { "class._mobile": "isMobile" } }, providers: [tuiProvide(TUI_SCROLL_REF, ElementRef)], viewQueries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true }, { propertyName: "text", first: true, predicate: ["text"], descendants: true }], hostDirectives: [{ directive: i1.TuiWithTextfield }], ngImport: i0, template: "<ng-template #template>\n <tui-scroll-controls\n *ngIf=\"!isMobile\"\n class=\"t-scroll\"\n (click.prevent)=\"(0)\"\n />\n <span\n #text\n aria-hidden=\"true\"\n class=\"t-ghost\"\n [style.max-height.em]=\"1.25 * max\"\n [style.min-height.em]=\"1.25 * min\"\n >\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: el.value}\">{{ text }}</ng-container>\n </span>\n <span class=\"t-hack\"></span>\n</ng-template>\n", styles: [":host-context(tui-textfield._with-label[data-size=\"m\"]._with-label[data-size=\"m\"]){border-block-start-width:calc(.5rem + var(--t-height) / 3);padding-block-start:0}:host-context(tui-textfield._with-label[data-size=\"l\"]._with-label[data-size=\"l\"]){border-block-start-width:calc(.625rem + var(--t-height) / 3);padding-block-start:0}:host-context(tui-textfield[data-size=\"s\"]){padding-block-start:.5rem;padding-block-end:.25rem}:host-context(tui-textfield[data-size=\"m\"]){padding-block-start:.875rem;padding-block-end:.25rem}:host-context(tui-textfield[data-size=\"l\"]){padding-block-start:1.125rem;padding-block-end:.375rem}:host{word-break:break-word;border:0 solid transparent}:host[data-appearance=table]{border-block-start:1px solid transparent;border-block-end:none!important}:host:not(._mobile){scrollbar-width:none;-ms-overflow-style:none}:host:not(._mobile)::-webkit-scrollbar,:host:not(._mobile)::-webkit-scrollbar-thumb{display:none}.t-scroll{position:absolute;top:0;left:0;bottom:0;right:0;top:.25rem;bottom:.25rem;min-block-size:0}::ng-deep tui-textfield._with-label[data-size=m] .t-scroll{top:calc(.5rem + var(--t-height) / 3)}::ng-deep tui-textfield._with-label[data-size=l] .t-scroll{top:calc(.625rem + var(--t-height) / 3)}.t-ghost{position:relative;z-index:1;order:1;inline-size:-webkit-fill-available;inline-size:-moz-available;inline-size:stretch;white-space:pre-wrap;word-break:break-word;overflow-wrap:break-word;padding-inline-start:var(--t-start);padding-inline-end:calc(var(--t-end) + var(--t-side));pointer-events:none;box-sizing:content-box;overflow:hidden;color:transparent}.t-ghost:after{content:\" \"}::ng-deep tui-textfield._with-label[data-size=m] textarea~.t-ghost{margin-block-start:-1.375rem;padding-block-end:.3125rem}::ng-deep tui-textfield._with-label[data-size=l] textarea~.t-ghost{margin-block-start:-1.75rem;padding-block-end:.5rem}::ng-deep tui-textfield[data-size=s] textarea~.t-ghost{margin-block-start:-1.5rem;padding-block-end:.5rem}::ng-deep tui-textfield[data-size=m] textarea~.t-ghost{margin-block-start:-2rem;padding-block-end:.875rem}::ng-deep tui-textfield[data-size=l] textarea~.t-ghost{margin-block-start:-2.5rem;padding-block-end:1rem}.t-hack{transition-property:box-shadow;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;position:absolute;top:0;left:0;inline-size:100%;block-size:100%;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 0 1px transparent}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "component", type: TuiScrollControls, selector: "tui-scroll-controls" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
40
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiTextarea, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
41
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.9", type: TuiTextarea, isStandalone: true, selector: "textarea[tuiTextarea]", inputs: { min: "min", max: "max", content: "content" }, host: { attributes: { "ngSkipHydration": "true" }, listeners: { "scroll.zoneless": "onScroll()", "scroll.once": "onScroll()" }, properties: { "class._mobile": "isMobile" } }, providers: [tuiProvide(TUI_SCROLL_REF, ElementRef)], viewQueries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true }, { propertyName: "text", first: true, predicate: ["text"], descendants: true }], hostDirectives: [{ directive: i1.TuiWithTextfield }], ngImport: i0, template: "<ng-template #template>\n <tui-scroll-controls\n *ngIf=\"!isMobile\"\n class=\"t-scroll\"\n (click.prevent)=\"(0)\"\n />\n <span\n #text\n aria-hidden=\"true\"\n class=\"t-ghost\"\n [style.max-height.em]=\"1.25 * max\"\n [style.min-height.em]=\"1.25 * min\"\n >\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: el.value}\">{{ text }}</ng-container>\n </span>\n <span class=\"t-hack\"></span>\n</ng-template>\n", styles: [":host-context(tui-textfield._with-label[data-size=\"m\"]._with-label[data-size=\"m\"]){border-block-start-width:calc(.5rem + var(--t-height) / 3);padding-block-start:0}:host-context(tui-textfield._with-label[data-size=\"l\"]._with-label[data-size=\"l\"]){border-block-start-width:calc(.625rem + var(--t-height) / 3);padding-block-start:0}:host-context(tui-textfield[data-size=\"s\"]){padding-block-start:.5rem;padding-block-end:.25rem}:host-context(tui-textfield[data-size=\"m\"]){padding-block-start:.875rem;padding-block-end:.25rem}:host-context(tui-textfield[data-size=\"l\"]){padding-block-start:1.125rem;padding-block-end:.375rem}:host{word-break:break-word;border:0 solid transparent}:host[data-appearance=table]{border-block-start:1px solid transparent;border-block-end:none!important}:host:not(._mobile){scrollbar-width:none;-ms-overflow-style:none}:host:not(._mobile)::-webkit-scrollbar,:host:not(._mobile)::-webkit-scrollbar-thumb{display:none}.t-scroll{position:absolute;top:0;left:0;bottom:0;right:0;top:.25rem;bottom:.25rem;min-block-size:0}::ng-deep tui-textfield._with-label[data-size=m] .t-scroll{top:calc(.5rem + var(--t-height) / 3)}::ng-deep tui-textfield._with-label[data-size=l] .t-scroll{top:calc(.625rem + var(--t-height) / 3)}.t-ghost{position:relative;z-index:1;order:1;inline-size:stretch;white-space:pre-wrap;word-break:break-word;overflow-wrap:break-word;padding-inline-start:var(--t-start);padding-inline-end:calc(var(--t-end) + var(--t-side));pointer-events:none;box-sizing:content-box;overflow:hidden;color:transparent}.t-ghost:after{content:\" \"}::ng-deep tui-textfield._with-label[data-size=m] textarea~.t-ghost{margin-block-start:-1.375rem;padding-block-end:.3125rem}::ng-deep tui-textfield._with-label[data-size=l] textarea~.t-ghost{margin-block-start:-1.75rem;padding-block-end:.5rem}::ng-deep tui-textfield[data-size=s] textarea~.t-ghost{margin-block-start:-1.5rem;padding-block-end:.5rem}::ng-deep tui-textfield[data-size=m] textarea~.t-ghost{margin-block-start:-2rem;padding-block-end:.875rem}::ng-deep tui-textfield[data-size=l] textarea~.t-ghost{margin-block-start:-2.5rem;padding-block-end:1rem}.t-hack{transition-property:box-shadow;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;position:absolute;top:0;left:0;inline-size:100%;block-size:100%;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 0 1px transparent}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "component", type: TuiScrollControls, selector: "tui-scroll-controls" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
42
42
  }
43
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextarea, decorators: [{
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiTextarea, decorators: [{
44
44
  type: Component,
45
- args: [{ standalone: true, selector: 'textarea[tuiTextarea]', imports: [NgIf, PolymorpheusOutlet, TuiScrollControls], changeDetection: ChangeDetectionStrategy.OnPush, providers: [tuiProvide(TUI_SCROLL_REF, ElementRef)], hostDirectives: [TuiWithTextfield], host: {
45
+ args: [{ selector: 'textarea[tuiTextarea]', imports: [NgIf, PolymorpheusOutlet, TuiScrollControls], changeDetection: ChangeDetectionStrategy.OnPush, providers: [tuiProvide(TUI_SCROLL_REF, ElementRef)], hostDirectives: [TuiWithTextfield], host: {
46
46
  ngSkipHydration: 'true',
47
47
  '[class._mobile]': 'isMobile',
48
48
  '(scroll.zoneless)': 'onScroll()',
49
49
  // To trigger CD for #text
50
50
  '(scroll.once)': 'onScroll()',
51
- }, template: "<ng-template #template>\n <tui-scroll-controls\n *ngIf=\"!isMobile\"\n class=\"t-scroll\"\n (click.prevent)=\"(0)\"\n />\n <span\n #text\n aria-hidden=\"true\"\n class=\"t-ghost\"\n [style.max-height.em]=\"1.25 * max\"\n [style.min-height.em]=\"1.25 * min\"\n >\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: el.value}\">{{ text }}</ng-container>\n </span>\n <span class=\"t-hack\"></span>\n</ng-template>\n", styles: [":host-context(tui-textfield._with-label[data-size=\"m\"]._with-label[data-size=\"m\"]){border-block-start-width:calc(.5rem + var(--t-height) / 3);padding-block-start:0}:host-context(tui-textfield._with-label[data-size=\"l\"]._with-label[data-size=\"l\"]){border-block-start-width:calc(.625rem + var(--t-height) / 3);padding-block-start:0}:host-context(tui-textfield[data-size=\"s\"]){padding-block-start:.5rem;padding-block-end:.25rem}:host-context(tui-textfield[data-size=\"m\"]){padding-block-start:.875rem;padding-block-end:.25rem}:host-context(tui-textfield[data-size=\"l\"]){padding-block-start:1.125rem;padding-block-end:.375rem}:host{word-break:break-word;border:0 solid transparent}:host[data-appearance=table]{border-block-start:1px solid transparent;border-block-end:none!important}:host:not(._mobile){scrollbar-width:none;-ms-overflow-style:none}:host:not(._mobile)::-webkit-scrollbar,:host:not(._mobile)::-webkit-scrollbar-thumb{display:none}.t-scroll{position:absolute;top:0;left:0;bottom:0;right:0;top:.25rem;bottom:.25rem;min-block-size:0}::ng-deep tui-textfield._with-label[data-size=m] .t-scroll{top:calc(.5rem + var(--t-height) / 3)}::ng-deep tui-textfield._with-label[data-size=l] .t-scroll{top:calc(.625rem + var(--t-height) / 3)}.t-ghost{position:relative;z-index:1;order:1;inline-size:-webkit-fill-available;inline-size:-moz-available;inline-size:stretch;white-space:pre-wrap;word-break:break-word;overflow-wrap:break-word;padding-inline-start:var(--t-start);padding-inline-end:calc(var(--t-end) + var(--t-side));pointer-events:none;box-sizing:content-box;overflow:hidden;color:transparent}.t-ghost:after{content:\" \"}::ng-deep tui-textfield._with-label[data-size=m] textarea~.t-ghost{margin-block-start:-1.375rem;padding-block-end:.3125rem}::ng-deep tui-textfield._with-label[data-size=l] textarea~.t-ghost{margin-block-start:-1.75rem;padding-block-end:.5rem}::ng-deep tui-textfield[data-size=s] textarea~.t-ghost{margin-block-start:-1.5rem;padding-block-end:.5rem}::ng-deep tui-textfield[data-size=m] textarea~.t-ghost{margin-block-start:-2rem;padding-block-end:.875rem}::ng-deep tui-textfield[data-size=l] textarea~.t-ghost{margin-block-start:-2.5rem;padding-block-end:1rem}.t-hack{transition-property:box-shadow;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;position:absolute;top:0;left:0;inline-size:100%;block-size:100%;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 0 1px transparent}\n"] }]
51
+ }, template: "<ng-template #template>\n <tui-scroll-controls\n *ngIf=\"!isMobile\"\n class=\"t-scroll\"\n (click.prevent)=\"(0)\"\n />\n <span\n #text\n aria-hidden=\"true\"\n class=\"t-ghost\"\n [style.max-height.em]=\"1.25 * max\"\n [style.min-height.em]=\"1.25 * min\"\n >\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: el.value}\">{{ text }}</ng-container>\n </span>\n <span class=\"t-hack\"></span>\n</ng-template>\n", styles: [":host-context(tui-textfield._with-label[data-size=\"m\"]._with-label[data-size=\"m\"]){border-block-start-width:calc(.5rem + var(--t-height) / 3);padding-block-start:0}:host-context(tui-textfield._with-label[data-size=\"l\"]._with-label[data-size=\"l\"]){border-block-start-width:calc(.625rem + var(--t-height) / 3);padding-block-start:0}:host-context(tui-textfield[data-size=\"s\"]){padding-block-start:.5rem;padding-block-end:.25rem}:host-context(tui-textfield[data-size=\"m\"]){padding-block-start:.875rem;padding-block-end:.25rem}:host-context(tui-textfield[data-size=\"l\"]){padding-block-start:1.125rem;padding-block-end:.375rem}:host{word-break:break-word;border:0 solid transparent}:host[data-appearance=table]{border-block-start:1px solid transparent;border-block-end:none!important}:host:not(._mobile){scrollbar-width:none;-ms-overflow-style:none}:host:not(._mobile)::-webkit-scrollbar,:host:not(._mobile)::-webkit-scrollbar-thumb{display:none}.t-scroll{position:absolute;top:0;left:0;bottom:0;right:0;top:.25rem;bottom:.25rem;min-block-size:0}::ng-deep tui-textfield._with-label[data-size=m] .t-scroll{top:calc(.5rem + var(--t-height) / 3)}::ng-deep tui-textfield._with-label[data-size=l] .t-scroll{top:calc(.625rem + var(--t-height) / 3)}.t-ghost{position:relative;z-index:1;order:1;inline-size:stretch;white-space:pre-wrap;word-break:break-word;overflow-wrap:break-word;padding-inline-start:var(--t-start);padding-inline-end:calc(var(--t-end) + var(--t-side));pointer-events:none;box-sizing:content-box;overflow:hidden;color:transparent}.t-ghost:after{content:\" \"}::ng-deep tui-textfield._with-label[data-size=m] textarea~.t-ghost{margin-block-start:-1.375rem;padding-block-end:.3125rem}::ng-deep tui-textfield._with-label[data-size=l] textarea~.t-ghost{margin-block-start:-1.75rem;padding-block-end:.5rem}::ng-deep tui-textfield[data-size=s] textarea~.t-ghost{margin-block-start:-1.5rem;padding-block-end:.5rem}::ng-deep tui-textfield[data-size=m] textarea~.t-ghost{margin-block-start:-2rem;padding-block-end:.875rem}::ng-deep tui-textfield[data-size=l] textarea~.t-ghost{margin-block-start:-2.5rem;padding-block-end:1rem}.t-hack{transition-property:box-shadow;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;position:absolute;top:0;left:0;inline-size:100%;block-size:100%;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 0 1px transparent}\n"] }]
52
52
  }], propDecorators: { template: [{
53
53
  type: ViewChild,
54
54
  args: [TemplateRef]
@@ -68,8 +68,8 @@ class TuiTextareaLimitComponent {
68
68
  this.limit = inject(TuiTextareaLimit).limit;
69
69
  this.context = injectContext();
70
70
  }
71
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextareaLimitComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
72
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiTextareaLimitComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: `
71
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiTextareaLimitComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
72
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.9", type: TuiTextareaLimitComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: `
73
73
  <span [textContent]="context.$implicit.slice(0, limit())"></span>
74
74
  <span
75
75
  style="background: linear-gradient(transparent 0.25rem, var(--tui-status-negative-pale) 0.25rem, var(--tui-status-negative-pale) 100%)"
@@ -77,7 +77,7 @@ class TuiTextareaLimitComponent {
77
77
  ></span>
78
78
  `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
79
79
  }
80
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextareaLimitComponent, decorators: [{
80
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiTextareaLimitComponent, decorators: [{
81
81
  type: Component,
82
82
  args: [{
83
83
  standalone: true,
@@ -96,10 +96,10 @@ class TuiTextareaCounterComponent {
96
96
  this.limit = signal(0);
97
97
  this.length = signal(0);
98
98
  }
99
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextareaCounterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
100
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiTextareaCounterComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: '{{ length() }} / {{ limit() }}', isInline: true, styles: [":host{z-index:1;inline-size:100%;order:2;text-align:end;pointer-events:none;padding-block-end:.75rem;font:var(--tui-font-text-ui-xs);color:var(--tui-text-secondary)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
99
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiTextareaCounterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
100
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.9", type: TuiTextareaCounterComponent, isStandalone: true, selector: "ng-component", ngImport: i0, template: '{{ length() }} / {{ limit() }}', isInline: true, styles: [":host{z-index:1;inline-size:100%;order:2;text-align:end;pointer-events:none;padding-block-end:.75rem;font:var(--tui-font-text-ui-xs);color:var(--tui-text-secondary)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
101
101
  }
102
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextareaCounterComponent, decorators: [{
102
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiTextareaCounterComponent, decorators: [{
103
103
  type: Component,
104
104
  args: [{ standalone: true, template: '{{ length() }} / {{ limit() }}', changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{z-index:1;inline-size:100%;order:2;text-align:end;pointer-events:none;padding-block-end:.75rem;font:var(--tui-font-text-ui-xs);color:var(--tui-text-secondary)}\n"] }]
105
105
  }] });
@@ -122,13 +122,13 @@ class TuiTextareaLimit {
122
122
  validate(control) {
123
123
  return Validators.maxLength(this.limit())(control);
124
124
  }
125
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextareaLimit, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
126
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiTextareaLimit, isStandalone: true, selector: "[tuiTextarea][limit]", inputs: { limitSetter: ["limit", "limitSetter"] }, host: { properties: { "style.border-block-end-width.rem": "size() === \"l\" ? 1.875 : 1.75" } }, providers: [
125
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiTextareaLimit, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
126
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.9", type: TuiTextareaLimit, isStandalone: true, selector: "[tuiTextarea][limit]", inputs: { limitSetter: ["limit", "limitSetter"] }, host: { properties: { "style.border-block-end-width.rem": "size() === \"l\" ? 1.875 : 1.75" } }, providers: [
127
127
  tuiProvide(NG_VALIDATORS, TuiTextareaLimit, true),
128
128
  tuiTextareaOptionsProvider({ content: COMPONENT }),
129
129
  ], ngImport: i0 }); }
130
130
  }
131
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTextareaLimit, decorators: [{
131
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiTextareaLimit, decorators: [{
132
132
  type: Directive,
133
133
  args: [{
134
134
  standalone: true,
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-textarea.mjs","sources":["../../../projects/kit/components/textarea/textarea.options.ts","../../../projects/kit/components/textarea/textarea.component.ts","../../../projects/kit/components/textarea/textarea.template.html","../../../projects/kit/components/textarea/textarea-limit.directive.ts","../../../projects/kit/components/textarea/taiga-ui-kit-components-textarea.ts"],"sourcesContent":["import {type TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiCreateOptions} from '@taiga-ui/cdk/utils/di';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\nexport interface TuiTextareaOptions {\n min: number;\n max: number;\n content: PolymorpheusContent<TuiContext<string>>;\n}\n\nexport const [TUI_TEXTAREA_OPTIONS, tuiTextareaOptionsProvider] =\n tuiCreateOptions<TuiTextareaOptions>({\n min: 1,\n max: 3,\n content: ({$implicit}) => $implicit,\n });\n","import {NgIf} from '@angular/common';\nimport {\n type AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n inject,\n Input,\n TemplateRef,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport {TUI_IS_MOBILE} from '@taiga-ui/cdk/tokens';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiScrollControls} from '@taiga-ui/core/components/scrollbar';\nimport {\n TuiTextfieldComponent,\n TuiWithTextfield,\n} from '@taiga-ui/core/components/textfield';\nimport {TUI_SCROLL_REF} from '@taiga-ui/core/tokens';\nimport {PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\n\nimport {TUI_TEXTAREA_OPTIONS, type TuiTextareaOptions} from './textarea.options';\n\n@Component({\n standalone: true,\n selector: 'textarea[tuiTextarea]',\n imports: [NgIf, PolymorpheusOutlet, TuiScrollControls],\n templateUrl: './textarea.template.html',\n styleUrls: ['./textarea.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [tuiProvide(TUI_SCROLL_REF, ElementRef)],\n hostDirectives: [TuiWithTextfield],\n host: {\n ngSkipHydration: 'true',\n '[class._mobile]': 'isMobile',\n '(scroll.zoneless)': 'onScroll()',\n // To trigger CD for #text\n '(scroll.once)': 'onScroll()',\n },\n})\nexport class TuiTextarea implements AfterViewInit {\n @ViewChild(TemplateRef)\n private readonly template?: TemplateRef<any>;\n\n private readonly options = inject(TUI_TEXTAREA_OPTIONS);\n private readonly vcr = inject(ViewContainerRef);\n\n @ViewChild('text')\n protected readonly text?: ElementRef<HTMLElement>;\n\n protected readonly el = tuiInjectElement<HTMLTextAreaElement>();\n protected readonly textfield = inject(TuiTextfieldComponent<string>);\n protected readonly isMobile = inject(TUI_IS_MOBILE);\n\n @Input()\n public min = this.options.min;\n\n @Input()\n public max = this.options.max;\n\n @Input()\n public content: TuiTextareaOptions['content'] = this.options.content;\n\n public ngAfterViewInit(): void {\n if (this.template) {\n this.vcr.createEmbeddedView(this.template);\n }\n }\n\n protected onScroll(): void {\n this.text?.nativeElement.scrollTo({top: this.el.scrollTop});\n }\n}\n","<ng-template #template>\n <tui-scroll-controls\n *ngIf=\"!isMobile\"\n class=\"t-scroll\"\n (click.prevent)=\"(0)\"\n />\n <span\n #text\n aria-hidden=\"true\"\n class=\"t-ghost\"\n [style.max-height.em]=\"1.25 * max\"\n [style.min-height.em]=\"1.25 * min\"\n >\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: el.value}\">{{ text }}</ng-container>\n </span>\n <span class=\"t-hack\"></span>\n</ng-template>\n","import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n type DoCheck,\n inject,\n Input,\n signal,\n ViewContainerRef,\n} from '@angular/core';\nimport {\n type AbstractControl,\n NG_VALIDATORS,\n type ValidationErrors,\n type Validator,\n Validators,\n} from '@angular/forms';\nimport {type TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {\n TUI_TEXTFIELD_OPTIONS,\n TuiTextfieldComponent,\n} from '@taiga-ui/core/components/textfield';\nimport {injectContext, PolymorpheusComponent} from '@taiga-ui/polymorpheus';\n\nimport {tuiTextareaOptionsProvider} from './textarea.options';\n\n@Component({\n standalone: true,\n template: `\n <span [textContent]=\"context.$implicit.slice(0, limit())\"></span>\n <span\n style=\"background: linear-gradient(transparent 0.25rem, var(--tui-status-negative-pale) 0.25rem, var(--tui-status-negative-pale) 100%)\"\n [textContent]=\"context.$implicit.slice(limit())\"\n ></span>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiTextareaLimitComponent {\n protected readonly limit = inject(TuiTextareaLimit).limit;\n protected readonly context = injectContext<TuiContext<string>>();\n}\n\n@Component({\n standalone: true,\n template: '{{ length() }} / {{ limit() }}',\n styleUrls: ['./textarea-limit.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiTextareaCounterComponent {\n public readonly limit = signal(0);\n public readonly length = signal(0);\n}\n\nconst COMPONENT = new PolymorpheusComponent(TuiTextareaLimitComponent);\n\n@Directive({\n standalone: true,\n selector: '[tuiTextarea][limit]',\n providers: [\n tuiProvide(NG_VALIDATORS, TuiTextareaLimit, true),\n tuiTextareaOptionsProvider({content: COMPONENT}),\n ],\n host: {\n '[style.border-block-end-width.rem]': 'size() === \"l\" ? 1.875 : 1.75',\n },\n})\nexport class TuiTextareaLimit implements Validator, DoCheck {\n private readonly textfield = inject(TuiTextfieldComponent);\n private readonly ref = inject(ViewContainerRef).createComponent(\n TuiTextareaCounterComponent,\n );\n\n public readonly size = inject(TUI_TEXTFIELD_OPTIONS).size;\n public readonly limit = signal(0);\n\n // TODO: Use signal inputs in v5\n @Input('limit')\n public set limitSetter(limit: number) {\n this.limit.set(limit);\n }\n\n public ngDoCheck(): void {\n this.ref.instance.length.set(this.textfield.value().length);\n this.ref.instance.limit.set(this.limit());\n }\n\n public validate(control: AbstractControl): ValidationErrors | null {\n return Validators.maxLength(this.limit())(control);\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-components-textarea.mjs","sources":["../../../projects/kit/components/textarea/textarea.options.ts","../../../projects/kit/components/textarea/textarea.component.ts","../../../projects/kit/components/textarea/textarea.template.html","../../../projects/kit/components/textarea/textarea-limit.directive.ts","../../../projects/kit/components/textarea/taiga-ui-kit-components-textarea.ts"],"sourcesContent":["import {type TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiCreateOptions} from '@taiga-ui/cdk/utils/di';\nimport {type PolymorpheusContent} from '@taiga-ui/polymorpheus';\n\nexport interface TuiTextareaOptions {\n min: number;\n max: number;\n content: PolymorpheusContent<TuiContext<string>>;\n}\n\nexport const [TUI_TEXTAREA_OPTIONS, tuiTextareaOptionsProvider] =\n tuiCreateOptions<TuiTextareaOptions>({\n min: 1,\n max: 3,\n content: ({$implicit}) => $implicit,\n });\n","import {NgIf} from '@angular/common';\nimport {\n type AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n inject,\n Input,\n TemplateRef,\n ViewChild,\n ViewContainerRef,\n} from '@angular/core';\nimport {TUI_IS_MOBILE} from '@taiga-ui/cdk/tokens';\nimport {tuiInjectElement} from '@taiga-ui/cdk/utils/dom';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiScrollControls} from '@taiga-ui/core/components/scrollbar';\nimport {\n TuiTextfieldComponent,\n TuiWithTextfield,\n} from '@taiga-ui/core/components/textfield';\nimport {TUI_SCROLL_REF} from '@taiga-ui/core/tokens';\nimport {PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\n\nimport {TUI_TEXTAREA_OPTIONS, type TuiTextareaOptions} from './textarea.options';\n\n@Component({\n selector: 'textarea[tuiTextarea]',\n imports: [NgIf, PolymorpheusOutlet, TuiScrollControls],\n templateUrl: './textarea.template.html',\n styleUrls: ['./textarea.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [tuiProvide(TUI_SCROLL_REF, ElementRef)],\n hostDirectives: [TuiWithTextfield],\n host: {\n ngSkipHydration: 'true',\n '[class._mobile]': 'isMobile',\n '(scroll.zoneless)': 'onScroll()',\n // To trigger CD for #text\n '(scroll.once)': 'onScroll()',\n },\n})\nexport class TuiTextarea implements AfterViewInit {\n @ViewChild(TemplateRef)\n private readonly template?: TemplateRef<any>;\n\n private readonly options = inject(TUI_TEXTAREA_OPTIONS);\n private readonly vcr = inject(ViewContainerRef);\n\n @ViewChild('text')\n protected readonly text?: ElementRef<HTMLElement>;\n\n protected readonly el = tuiInjectElement<HTMLTextAreaElement>();\n protected readonly textfield = inject(TuiTextfieldComponent<string>);\n protected readonly isMobile = inject(TUI_IS_MOBILE);\n\n @Input()\n public min = this.options.min;\n\n @Input()\n public max = this.options.max;\n\n @Input()\n public content: TuiTextareaOptions['content'] = this.options.content;\n\n public ngAfterViewInit(): void {\n if (this.template) {\n this.vcr.createEmbeddedView(this.template);\n }\n }\n\n protected onScroll(): void {\n this.text?.nativeElement.scrollTo({top: this.el.scrollTop});\n }\n}\n","<ng-template #template>\n <tui-scroll-controls\n *ngIf=\"!isMobile\"\n class=\"t-scroll\"\n (click.prevent)=\"(0)\"\n />\n <span\n #text\n aria-hidden=\"true\"\n class=\"t-ghost\"\n [style.max-height.em]=\"1.25 * max\"\n [style.min-height.em]=\"1.25 * min\"\n >\n <ng-container *polymorpheusOutlet=\"content as text; context: {$implicit: el.value}\">{{ text }}</ng-container>\n </span>\n <span class=\"t-hack\"></span>\n</ng-template>\n","import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n type DoCheck,\n inject,\n Input,\n signal,\n ViewContainerRef,\n} from '@angular/core';\nimport {\n type AbstractControl,\n NG_VALIDATORS,\n type ValidationErrors,\n type Validator,\n Validators,\n} from '@angular/forms';\nimport {type TuiContext} from '@taiga-ui/cdk/types';\nimport {tuiProvide} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {\n TUI_TEXTFIELD_OPTIONS,\n TuiTextfieldComponent,\n} from '@taiga-ui/core/components/textfield';\nimport {injectContext, PolymorpheusComponent} from '@taiga-ui/polymorpheus';\n\nimport {tuiTextareaOptionsProvider} from './textarea.options';\n\n@Component({\n standalone: true,\n template: `\n <span [textContent]=\"context.$implicit.slice(0, limit())\"></span>\n <span\n style=\"background: linear-gradient(transparent 0.25rem, var(--tui-status-negative-pale) 0.25rem, var(--tui-status-negative-pale) 100%)\"\n [textContent]=\"context.$implicit.slice(limit())\"\n ></span>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiTextareaLimitComponent {\n protected readonly limit = inject(TuiTextareaLimit).limit;\n protected readonly context = injectContext<TuiContext<string>>();\n}\n\n@Component({\n standalone: true,\n template: '{{ length() }} / {{ limit() }}',\n styleUrls: ['./textarea-limit.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class TuiTextareaCounterComponent {\n public readonly limit = signal(0);\n public readonly length = signal(0);\n}\n\nconst COMPONENT = new PolymorpheusComponent(TuiTextareaLimitComponent);\n\n@Directive({\n standalone: true,\n selector: '[tuiTextarea][limit]',\n providers: [\n tuiProvide(NG_VALIDATORS, TuiTextareaLimit, true),\n tuiTextareaOptionsProvider({content: COMPONENT}),\n ],\n host: {\n '[style.border-block-end-width.rem]': 'size() === \"l\" ? 1.875 : 1.75',\n },\n})\nexport class TuiTextareaLimit implements Validator, DoCheck {\n private readonly textfield = inject(TuiTextfieldComponent);\n private readonly ref = inject(ViewContainerRef).createComponent(\n TuiTextareaCounterComponent,\n );\n\n public readonly size = inject(TUI_TEXTFIELD_OPTIONS).size;\n public readonly limit = signal(0);\n\n // TODO: Use signal inputs in v5\n @Input('limit')\n public set limitSetter(limit: number) {\n this.limit.set(limit);\n }\n\n public ngDoCheck(): void {\n this.ref.instance.length.set(this.textfield.value().length);\n this.ref.instance.limit.set(this.limit());\n }\n\n public validate(control: AbstractControl): ValidationErrors | null {\n return Validators.maxLength(this.limit())(control);\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,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { InjectionToken, inject, signal, Component, ViewEncapsulation, ChangeDetectionStrategy, Input, Output, PLATFORM_ID, Injectable, ViewChild, Directive } from '@angular/core';
2
+ import { InjectionToken, inject, signal, Input, Output, ChangeDetectionStrategy, ViewEncapsulation, Component, PLATFORM_ID, Injectable, ViewChild, Directive } from '@angular/core';
3
3
  import { tuiInjectElement, tuiGetActualTarget, tuiIsElement } from '@taiga-ui/cdk/utils/dom';
4
4
  import { isPlatformBrowser } from '@angular/common';
5
5
  import { MutationObserverService, WA_MUTATION_OBSERVER_INIT } from '@ng-web-apis/mutation-observer';
@@ -78,8 +78,8 @@ class TuiTilesComponent {
78
78
  this.order$.next(this.handler(order, currentIndex, newIndex));
79
79
  return this.order$.value;
80
80
  }
81
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTilesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
82
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiTilesComponent, isStandalone: true, selector: "tui-tiles", inputs: { debounce: "debounce", order: "order" }, outputs: { orderChange: "orderChange" }, host: { listeners: { "pointerleave.zoneless": "rearrange()" } }, providers: [
81
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiTilesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
82
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.9", type: TuiTilesComponent, isStandalone: true, selector: "tui-tiles", inputs: { debounce: "debounce", order: "order" }, outputs: { orderChange: "orderChange" }, host: { listeners: { "pointerleave.zoneless": "rearrange()" } }, providers: [
83
83
  ResizeObserverService,
84
84
  MutationObserverService,
85
85
  {
@@ -88,7 +88,7 @@ class TuiTilesComponent {
88
88
  },
89
89
  ], ngImport: i0, template: '<ng-content />', isInline: true, styles: ["tui-tiles{position:relative;z-index:0;display:grid;grid-auto-flow:dense;justify-items:stretch}tui-tiles._dragged tui-tile>.t-wrapper{pointer-events:none}tui-tiles._dragged tui-tile:not(._dragged)>.t-wrapper,tui-tiles:not(._dragged) tui-tile._dragged>.t-wrapper{transition-property:all;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;transition-delay:1ms}tui-tile>.t-wrapper{position:absolute;z-index:0;border-radius:inherit}tui-tile._dragged>.t-wrapper,tui-tile:has(tui-tile._dragged)>.t-wrapper{z-index:1}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
90
90
  }
91
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTilesComponent, decorators: [{
91
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiTilesComponent, decorators: [{
92
92
  type: Component,
93
93
  args: [{ standalone: true, selector: 'tui-tiles', template: '<ng-content />', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
94
94
  ResizeObserverService,
@@ -180,10 +180,10 @@ class TuiTileService {
180
180
  style.top = tuiPx(rect.top - host.top + this.el.offsetTop);
181
181
  style.left = tuiPx(rect.left - host.left + this.el.offsetLeft);
182
182
  }
183
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTileService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
184
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTileService }); }
183
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiTileService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
184
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiTileService }); }
185
185
  }
186
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTileService, decorators: [{
186
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiTileService, decorators: [{
187
187
  type: Injectable
188
188
  }] });
189
189
 
@@ -230,10 +230,10 @@ class TuiTile {
230
230
  onTransitionEnd() {
231
231
  this.dragged.set(false);
232
232
  }
233
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTile, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
234
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TuiTile, isStandalone: true, selector: "tui-tile", inputs: { width: "width", height: "height" }, host: { listeners: { "pointerenter": "onEnter()" }, properties: { "class._dragged": "dragged()", "style.gridColumn": "column", "style.gridRow": "row" } }, providers: [TuiTileService], viewQueries: [{ propertyName: "wrapper", first: true, predicate: ["wrapper"], descendants: true }], ngImport: i0, template: "<div\n #wrapper\n class=\"t-wrapper\"\n (transitionend.self)=\"onTransitionEnd()\"\n>\n <ng-content />\n</div>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
233
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiTile, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
234
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.9", type: TuiTile, isStandalone: true, selector: "tui-tile", inputs: { width: "width", height: "height" }, host: { listeners: { "pointerenter": "onEnter()" }, properties: { "class._dragged": "dragged()", "style.gridColumn": "column", "style.gridRow": "row" } }, providers: [TuiTileService], viewQueries: [{ propertyName: "wrapper", first: true, predicate: ["wrapper"], descendants: true }], ngImport: i0, template: "<div\n #wrapper\n class=\"t-wrapper\"\n (transitionend.self)=\"onTransitionEnd()\"\n>\n <ng-content />\n</div>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
235
235
  }
236
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTile, decorators: [{
236
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiTile, decorators: [{
237
237
  type: Component,
238
238
  args: [{ standalone: true, selector: 'tui-tile', changeDetection: ChangeDetectionStrategy.OnPush, providers: [TuiTileService], host: {
239
239
  '[class._dragged]': 'dragged()',
@@ -279,8 +279,8 @@ class TuiTileHandle {
279
279
  }
280
280
  this.onPointer(x, y);
281
281
  }
282
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTileHandle, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
283
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: TuiTileHandle, isStandalone: true, selector: "[tuiTileHandle]", host: { listeners: { "pointerdown.zoneless.prevent": "onStart($event)", "document:pointerup.zoneless": "onPointer()", "document:pointermove.zoneless": "onMove($event.x, $event.y)" }, properties: { "style.touchAction": "\"none\"", "style.userSelect": "\"none\"" } }, ngImport: i0 }); }
282
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiTileHandle, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
283
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.9", type: TuiTileHandle, isStandalone: true, selector: "[tuiTileHandle]", host: { listeners: { "pointerdown.zoneless.prevent": "onStart($event)", "document:pointerup.zoneless": "onPointer()", "document:pointermove.zoneless": "onMove($event.x, $event.y)" }, properties: { "style.touchAction": "\"none\"", "style.userSelect": "\"none\"" } }, ngImport: i0 }); }
284
284
  }
285
285
  __decorate([
286
286
  shouldCall(isInteracting)
@@ -288,7 +288,7 @@ __decorate([
288
288
  __decorate([
289
289
  shouldCall(isDragging)
290
290
  ], TuiTileHandle.prototype, "onMove", null);
291
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TuiTileHandle, decorators: [{
291
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiTileHandle, decorators: [{
292
292
  type: Directive,
293
293
  args: [{
294
294
  standalone: true,