@taiga-ui/kit 4.52.0-canary.a4e325d → 4.52.0-canary.a59c4d0

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 (334) hide show
  1. package/components/accordion/accordion.component.d.ts +13 -0
  2. package/components/accordion/accordion.d.ts +4 -4
  3. package/components/accordion/accordion.directive.d.ts +11 -10
  4. package/components/accordion/index.d.ts +1 -3
  5. package/components/action-bar/action-bar.component.d.ts +5 -7
  6. package/components/action-bar/index.d.ts +0 -2
  7. package/components/avatar/avatar-outline.directive.d.ts +3 -3
  8. package/components/avatar/avatar.directive.d.ts +15 -0
  9. package/components/avatar/avatar.options.d.ts +1 -4
  10. package/components/avatar/index.d.ts +1 -1
  11. package/components/badge/badge.directive.d.ts +2 -2
  12. package/components/block/block.directive.d.ts +4 -4
  13. package/components/block/block.options.d.ts +1 -1
  14. package/components/calendar-month/calendar-month.options.d.ts +1 -1
  15. package/components/checkbox/checkbox.component.d.ts +7 -18
  16. package/components/checkbox/checkbox.options.d.ts +5 -9
  17. package/components/chip/chip.directive.d.ts +2 -4
  18. package/components/comment/comment.directive.d.ts +2 -2
  19. package/components/confirm/confirm.component.d.ts +1 -0
  20. package/components/confirm/confirm.service.d.ts +2 -1
  21. package/{directives → components}/copy/copy.directive.d.ts +1 -2
  22. package/{directives → components}/copy/copy.options.d.ts +2 -2
  23. package/components/files/file/file.options.d.ts +1 -1
  24. package/components/floating-container/floating-container.directive.d.ts +2 -2
  25. package/components/fullscreen/fullscreen.component.d.ts +14 -0
  26. package/components/fullscreen/index.d.ts +1 -0
  27. package/components/index.d.ts +3 -2
  28. package/components/input-chip/input-chip.options.d.ts +1 -1
  29. package/components/input-color/input-color.component.d.ts +2 -2
  30. package/components/input-color/input-color.options.d.ts +1 -1
  31. package/components/input-date/input-date.options.d.ts +1 -1
  32. package/components/input-number/input-number.options.d.ts +1 -1
  33. package/components/input-number/quantum.directive.d.ts +1 -1
  34. package/components/input-phone/input-phone.options.d.ts +1 -1
  35. package/components/input-phone-international/input-phone-international.component.d.ts +23 -29
  36. package/components/input-range/input-range.component.d.ts +8 -11
  37. package/components/input-slider/input-slider.directive.d.ts +2 -4
  38. package/components/input-time/input-time.options.d.ts +1 -1
  39. package/components/like/like.component.d.ts +4 -11
  40. package/components/like/like.options.d.ts +3 -4
  41. package/components/line-clamp/line-clamp-box.component.d.ts +3 -4
  42. package/components/line-clamp/line-clamp.component.d.ts +6 -10
  43. package/components/multi-select/multi-select-group/multi-select-group.component.d.ts +2 -2
  44. package/components/pager/pager.component.d.ts +1 -1
  45. package/components/pin/pin.directive.d.ts +2 -2
  46. package/components/progress/progress-bar/fixed-gradient/progress-fixed-gradient.directive.d.ts +1 -2
  47. package/components/progress/progress-segmented/progress-segmented.directive.d.ts +2 -2
  48. package/components/push/push-alert.component.d.ts +3 -3
  49. package/components/push/push.component.d.ts +1 -1
  50. package/components/push/push.directive.d.ts +4 -6
  51. package/components/push/push.options.d.ts +2 -0
  52. package/components/push/push.service.d.ts +5 -2
  53. package/components/radio/radio.component.d.ts +7 -8
  54. package/components/radio/radio.directive.d.ts +2 -2
  55. package/components/radio/radio.options.d.ts +2 -5
  56. package/components/range/range-change.directive.d.ts +1 -1
  57. package/components/range/range.component.d.ts +0 -5
  58. package/components/rating/rating.component.d.ts +5 -5
  59. package/components/rating/rating.options.d.ts +5 -3
  60. package/components/segmented/segmented.component.d.ts +1 -3
  61. package/components/slider/helpers/key-steps.d.ts +1 -2
  62. package/components/slider/helpers/slider-key-steps.directive.d.ts +12 -21
  63. package/components/slides/slides.directive.d.ts +4 -4
  64. package/components/status/status.directive.d.ts +2 -2
  65. package/components/switch/switch.component.d.ts +7 -19
  66. package/components/switch/switch.options.d.ts +4 -8
  67. package/components/textarea/textarea.options.d.ts +1 -1
  68. package/components/toast/index.d.ts +5 -0
  69. package/components/toast/toast.component.d.ts +17 -0
  70. package/components/toast/toast.d.ts +3 -0
  71. package/components/toast/toast.directive.d.ts +7 -0
  72. package/components/toast/toast.options.d.ts +8 -0
  73. package/components/toast/toast.service.d.ts +16 -0
  74. package/directives/button-select/button-select.directive.d.ts +1 -2
  75. package/directives/chevron/chevron.directive.d.ts +2 -3
  76. package/directives/fade/fade.directive.d.ts +1 -0
  77. package/directives/highlight/highlight.directive.d.ts +1 -3
  78. package/directives/index.d.ts +0 -2
  79. package/directives/password/password.options.d.ts +1 -1
  80. package/directives/sensitive/sensitive.directive.d.ts +2 -2
  81. package/directives/shimmer/shimmer.directive.d.ts +3 -3
  82. package/directives/skeleton/skeleton.directive.d.ts +3 -3
  83. package/directives/tooltip/tooltip.directive.d.ts +2 -2
  84. package/directives/tooltip/tooltip.options.d.ts +1 -4
  85. package/fesm2022/taiga-ui-kit-components-accordion.mjs +69 -145
  86. package/fesm2022/taiga-ui-kit-components-accordion.mjs.map +1 -1
  87. package/fesm2022/taiga-ui-kit-components-action-bar.mjs +22 -38
  88. package/fesm2022/taiga-ui-kit-components-action-bar.mjs.map +1 -1
  89. package/fesm2022/taiga-ui-kit-components-avatar.mjs +81 -100
  90. package/fesm2022/taiga-ui-kit-components-avatar.mjs.map +1 -1
  91. package/fesm2022/taiga-ui-kit-components-badge-notification.mjs +3 -3
  92. package/fesm2022/taiga-ui-kit-components-badge-notification.mjs.map +1 -1
  93. package/fesm2022/taiga-ui-kit-components-badge.mjs +15 -21
  94. package/fesm2022/taiga-ui-kit-components-badge.mjs.map +1 -1
  95. package/fesm2022/taiga-ui-kit-components-badged-content.mjs +6 -6
  96. package/fesm2022/taiga-ui-kit-components-badged-content.mjs.map +1 -1
  97. package/fesm2022/taiga-ui-kit-components-block.mjs +17 -24
  98. package/fesm2022/taiga-ui-kit-components-block.mjs.map +1 -1
  99. package/fesm2022/taiga-ui-kit-components-breadcrumbs.mjs +6 -8
  100. package/fesm2022/taiga-ui-kit-components-breadcrumbs.mjs.map +1 -1
  101. package/fesm2022/taiga-ui-kit-components-button-loading.mjs +3 -3
  102. package/fesm2022/taiga-ui-kit-components-button-loading.mjs.map +1 -1
  103. package/fesm2022/taiga-ui-kit-components-calendar-month.mjs +4 -6
  104. package/fesm2022/taiga-ui-kit-components-calendar-month.mjs.map +1 -1
  105. package/fesm2022/taiga-ui-kit-components-calendar-range.mjs +7 -7
  106. package/fesm2022/taiga-ui-kit-components-calendar-range.mjs.map +1 -1
  107. package/fesm2022/taiga-ui-kit-components-carousel.mjs +17 -19
  108. package/fesm2022/taiga-ui-kit-components-carousel.mjs.map +1 -1
  109. package/fesm2022/taiga-ui-kit-components-checkbox.mjs +19 -76
  110. package/fesm2022/taiga-ui-kit-components-checkbox.mjs.map +1 -1
  111. package/fesm2022/taiga-ui-kit-components-chip.mjs +22 -27
  112. package/fesm2022/taiga-ui-kit-components-chip.mjs.map +1 -1
  113. package/fesm2022/taiga-ui-kit-components-combo-box.mjs +3 -3
  114. package/fesm2022/taiga-ui-kit-components-combo-box.mjs.map +1 -1
  115. package/fesm2022/taiga-ui-kit-components-comment.mjs +13 -20
  116. package/fesm2022/taiga-ui-kit-components-comment.mjs.map +1 -1
  117. package/fesm2022/taiga-ui-kit-components-compass.mjs +3 -3
  118. package/fesm2022/taiga-ui-kit-components-compass.mjs.map +1 -1
  119. package/fesm2022/taiga-ui-kit-components-confirm.mjs +13 -13
  120. package/fesm2022/taiga-ui-kit-components-confirm.mjs.map +1 -1
  121. package/fesm2022/{taiga-ui-kit-directives-copy.mjs → taiga-ui-kit-components-copy.mjs} +11 -12
  122. package/fesm2022/taiga-ui-kit-components-copy.mjs.map +1 -0
  123. package/fesm2022/taiga-ui-kit-components-data-list-wrapper.mjs +10 -11
  124. package/fesm2022/taiga-ui-kit-components-data-list-wrapper.mjs.map +1 -1
  125. package/fesm2022/taiga-ui-kit-components-drawer.mjs +5 -5
  126. package/fesm2022/taiga-ui-kit-components-drawer.mjs.map +1 -1
  127. package/fesm2022/taiga-ui-kit-components-elastic-container.mjs +6 -6
  128. package/fesm2022/taiga-ui-kit-components-elastic-container.mjs.map +1 -1
  129. package/fesm2022/taiga-ui-kit-components-files.mjs +27 -36
  130. package/fesm2022/taiga-ui-kit-components-files.mjs.map +1 -1
  131. package/fesm2022/taiga-ui-kit-components-filter.mjs +6 -15
  132. package/fesm2022/taiga-ui-kit-components-filter.mjs.map +1 -1
  133. package/fesm2022/taiga-ui-kit-components-floating-container.mjs +13 -19
  134. package/fesm2022/taiga-ui-kit-components-floating-container.mjs.map +1 -1
  135. package/fesm2022/taiga-ui-kit-components-fullscreen.mjs +63 -0
  136. package/fesm2022/taiga-ui-kit-components-fullscreen.mjs.map +1 -0
  137. package/fesm2022/taiga-ui-kit-components-input-chip.mjs +20 -17
  138. package/fesm2022/taiga-ui-kit-components-input-chip.mjs.map +1 -1
  139. package/fesm2022/taiga-ui-kit-components-input-color.mjs +9 -12
  140. package/fesm2022/taiga-ui-kit-components-input-color.mjs.map +1 -1
  141. package/fesm2022/taiga-ui-kit-components-input-date-multi.mjs +5 -5
  142. package/fesm2022/taiga-ui-kit-components-input-date-multi.mjs.map +1 -1
  143. package/fesm2022/taiga-ui-kit-components-input-date-range.mjs +3 -3
  144. package/fesm2022/taiga-ui-kit-components-input-date-range.mjs.map +1 -1
  145. package/fesm2022/taiga-ui-kit-components-input-date-time.mjs +7 -8
  146. package/fesm2022/taiga-ui-kit-components-input-date-time.mjs.map +1 -1
  147. package/fesm2022/taiga-ui-kit-components-input-date.mjs +13 -14
  148. package/fesm2022/taiga-ui-kit-components-input-date.mjs.map +1 -1
  149. package/fesm2022/taiga-ui-kit-components-input-inline.mjs +5 -5
  150. package/fesm2022/taiga-ui-kit-components-input-inline.mjs.map +1 -1
  151. package/fesm2022/taiga-ui-kit-components-input-month-range.mjs +5 -5
  152. package/fesm2022/taiga-ui-kit-components-input-month-range.mjs.map +1 -1
  153. package/fesm2022/taiga-ui-kit-components-input-month.mjs +10 -11
  154. package/fesm2022/taiga-ui-kit-components-input-month.mjs.map +1 -1
  155. package/fesm2022/taiga-ui-kit-components-input-number.mjs +25 -24
  156. package/fesm2022/taiga-ui-kit-components-input-number.mjs.map +1 -1
  157. package/fesm2022/taiga-ui-kit-components-input-phone-international.mjs +104 -130
  158. package/fesm2022/taiga-ui-kit-components-input-phone-international.mjs.map +1 -1
  159. package/fesm2022/taiga-ui-kit-components-input-phone.mjs +3 -3
  160. package/fesm2022/taiga-ui-kit-components-input-phone.mjs.map +1 -1
  161. package/fesm2022/taiga-ui-kit-components-input-pin.mjs +5 -5
  162. package/fesm2022/taiga-ui-kit-components-input-pin.mjs.map +1 -1
  163. package/fesm2022/taiga-ui-kit-components-input-range.mjs +34 -38
  164. package/fesm2022/taiga-ui-kit-components-input-range.mjs.map +1 -1
  165. package/fesm2022/taiga-ui-kit-components-input-slider.mjs +27 -40
  166. package/fesm2022/taiga-ui-kit-components-input-slider.mjs.map +1 -1
  167. package/fesm2022/taiga-ui-kit-components-input-time.mjs +12 -13
  168. package/fesm2022/taiga-ui-kit-components-input-time.mjs.map +1 -1
  169. package/fesm2022/taiga-ui-kit-components-input-year.mjs +5 -5
  170. package/fesm2022/taiga-ui-kit-components-input-year.mjs.map +1 -1
  171. package/fesm2022/taiga-ui-kit-components-items-with-more.mjs +16 -16
  172. package/fesm2022/taiga-ui-kit-components-items-with-more.mjs.map +1 -1
  173. package/fesm2022/taiga-ui-kit-components-like.mjs +40 -33
  174. package/fesm2022/taiga-ui-kit-components-like.mjs.map +1 -1
  175. package/fesm2022/taiga-ui-kit-components-line-clamp.mjs +32 -40
  176. package/fesm2022/taiga-ui-kit-components-line-clamp.mjs.map +1 -1
  177. package/fesm2022/taiga-ui-kit-components-message.mjs +9 -11
  178. package/fesm2022/taiga-ui-kit-components-message.mjs.map +1 -1
  179. package/fesm2022/taiga-ui-kit-components-multi-select.mjs +42 -38
  180. package/fesm2022/taiga-ui-kit-components-multi-select.mjs.map +1 -1
  181. package/fesm2022/taiga-ui-kit-components-notification-middle.mjs +12 -19
  182. package/fesm2022/taiga-ui-kit-components-notification-middle.mjs.map +1 -1
  183. package/fesm2022/taiga-ui-kit-components-pager.mjs +6 -6
  184. package/fesm2022/taiga-ui-kit-components-pager.mjs.map +1 -1
  185. package/fesm2022/taiga-ui-kit-components-pagination.mjs +7 -7
  186. package/fesm2022/taiga-ui-kit-components-pagination.mjs.map +1 -1
  187. package/fesm2022/taiga-ui-kit-components-pin.mjs +15 -19
  188. package/fesm2022/taiga-ui-kit-components-pin.mjs.map +1 -1
  189. package/fesm2022/taiga-ui-kit-components-preview-dialog.mjs +11 -11
  190. package/fesm2022/taiga-ui-kit-components-preview-dialog.mjs.map +1 -1
  191. package/fesm2022/taiga-ui-kit-components-preview.mjs +31 -33
  192. package/fesm2022/taiga-ui-kit-components-preview.mjs.map +1 -1
  193. package/fesm2022/taiga-ui-kit-components-progress.mjs +37 -50
  194. package/fesm2022/taiga-ui-kit-components-progress.mjs.map +1 -1
  195. package/fesm2022/taiga-ui-kit-components-pulse.mjs +3 -3
  196. package/fesm2022/taiga-ui-kit-components-pulse.mjs.map +1 -1
  197. package/fesm2022/taiga-ui-kit-components-push.mjs +46 -41
  198. package/fesm2022/taiga-ui-kit-components-push.mjs.map +1 -1
  199. package/fesm2022/taiga-ui-kit-components-radio-list.mjs +5 -6
  200. package/fesm2022/taiga-ui-kit-components-radio-list.mjs.map +1 -1
  201. package/fesm2022/taiga-ui-kit-components-radio.mjs +34 -39
  202. package/fesm2022/taiga-ui-kit-components-radio.mjs.map +1 -1
  203. package/fesm2022/taiga-ui-kit-components-range.mjs +9 -18
  204. package/fesm2022/taiga-ui-kit-components-range.mjs.map +1 -1
  205. package/fesm2022/taiga-ui-kit-components-rating.mjs +17 -21
  206. package/fesm2022/taiga-ui-kit-components-rating.mjs.map +1 -1
  207. package/fesm2022/taiga-ui-kit-components-routable-dialog.mjs +3 -3
  208. package/fesm2022/taiga-ui-kit-components-routable-dialog.mjs.map +1 -1
  209. package/fesm2022/taiga-ui-kit-components-segmented.mjs +6 -6
  210. package/fesm2022/taiga-ui-kit-components-segmented.mjs.map +1 -1
  211. package/fesm2022/taiga-ui-kit-components-select.mjs +14 -14
  212. package/fesm2022/taiga-ui-kit-components-select.mjs.map +1 -1
  213. package/fesm2022/taiga-ui-kit-components-slider.mjs +69 -67
  214. package/fesm2022/taiga-ui-kit-components-slider.mjs.map +1 -1
  215. package/fesm2022/taiga-ui-kit-components-slides.mjs +14 -22
  216. package/fesm2022/taiga-ui-kit-components-slides.mjs.map +1 -1
  217. package/fesm2022/taiga-ui-kit-components-status.mjs +12 -16
  218. package/fesm2022/taiga-ui-kit-components-status.mjs.map +1 -1
  219. package/fesm2022/taiga-ui-kit-components-stepper.mjs +11 -11
  220. package/fesm2022/taiga-ui-kit-components-stepper.mjs.map +1 -1
  221. package/fesm2022/taiga-ui-kit-components-switch.mjs +19 -65
  222. package/fesm2022/taiga-ui-kit-components-switch.mjs.map +1 -1
  223. package/fesm2022/taiga-ui-kit-components-tabs.mjs +28 -33
  224. package/fesm2022/taiga-ui-kit-components-tabs.mjs.map +1 -1
  225. package/fesm2022/taiga-ui-kit-components-textarea.mjs +14 -15
  226. package/fesm2022/taiga-ui-kit-components-textarea.mjs.map +1 -1
  227. package/fesm2022/taiga-ui-kit-components-tiles.mjs +12 -12
  228. package/fesm2022/taiga-ui-kit-components-tiles.mjs.map +1 -1
  229. package/fesm2022/taiga-ui-kit-components-toast.mjs +166 -0
  230. package/fesm2022/taiga-ui-kit-components-toast.mjs.map +1 -0
  231. package/fesm2022/taiga-ui-kit-components-tree.mjs +32 -40
  232. package/fesm2022/taiga-ui-kit-components-tree.mjs.map +1 -1
  233. package/fesm2022/taiga-ui-kit-components.mjs +3 -2
  234. package/fesm2022/taiga-ui-kit-components.mjs.map +1 -1
  235. package/fesm2022/taiga-ui-kit-directives-button-close.mjs +3 -3
  236. package/fesm2022/taiga-ui-kit-directives-button-close.mjs.map +1 -1
  237. package/fesm2022/taiga-ui-kit-directives-button-group.mjs +9 -12
  238. package/fesm2022/taiga-ui-kit-directives-button-group.mjs.map +1 -1
  239. package/fesm2022/taiga-ui-kit-directives-button-select.mjs +5 -12
  240. package/fesm2022/taiga-ui-kit-directives-button-select.mjs.map +1 -1
  241. package/fesm2022/taiga-ui-kit-directives-chevron.mjs +13 -20
  242. package/fesm2022/taiga-ui-kit-directives-chevron.mjs.map +1 -1
  243. package/fesm2022/taiga-ui-kit-directives-connected.mjs +9 -14
  244. package/fesm2022/taiga-ui-kit-directives-connected.mjs.map +1 -1
  245. package/fesm2022/taiga-ui-kit-directives-data-list-dropdown-manager.mjs +3 -3
  246. package/fesm2022/taiga-ui-kit-directives-data-list-dropdown-manager.mjs.map +1 -1
  247. package/fesm2022/taiga-ui-kit-directives-fade.mjs +9 -12
  248. package/fesm2022/taiga-ui-kit-directives-fade.mjs.map +1 -1
  249. package/fesm2022/taiga-ui-kit-directives-fluid-typography.mjs +3 -3
  250. package/fesm2022/taiga-ui-kit-directives-fluid-typography.mjs.map +1 -1
  251. package/fesm2022/taiga-ui-kit-directives-highlight.mjs +3 -3
  252. package/fesm2022/taiga-ui-kit-directives-highlight.mjs.map +1 -1
  253. package/fesm2022/taiga-ui-kit-directives-lazy-loading.mjs +6 -7
  254. package/fesm2022/taiga-ui-kit-directives-lazy-loading.mjs.map +1 -1
  255. package/fesm2022/taiga-ui-kit-directives-password.mjs +6 -6
  256. package/fesm2022/taiga-ui-kit-directives-password.mjs.map +1 -1
  257. package/fesm2022/taiga-ui-kit-directives-present.mjs +3 -3
  258. package/fesm2022/taiga-ui-kit-directives-present.mjs.map +1 -1
  259. package/fesm2022/taiga-ui-kit-directives-sensitive.mjs +13 -18
  260. package/fesm2022/taiga-ui-kit-directives-sensitive.mjs.map +1 -1
  261. package/fesm2022/taiga-ui-kit-directives-shimmer.mjs +24 -34
  262. package/fesm2022/taiga-ui-kit-directives-shimmer.mjs.map +1 -1
  263. package/fesm2022/taiga-ui-kit-directives-skeleton.mjs +27 -38
  264. package/fesm2022/taiga-ui-kit-directives-skeleton.mjs.map +1 -1
  265. package/fesm2022/taiga-ui-kit-directives-tooltip.mjs +13 -18
  266. package/fesm2022/taiga-ui-kit-directives-tooltip.mjs.map +1 -1
  267. package/fesm2022/taiga-ui-kit-directives-unfinished-validator.mjs +4 -5
  268. package/fesm2022/taiga-ui-kit-directives-unfinished-validator.mjs.map +1 -1
  269. package/fesm2022/taiga-ui-kit-directives-unmask-handler.mjs +3 -3
  270. package/fesm2022/taiga-ui-kit-directives-unmask-handler.mjs.map +1 -1
  271. package/fesm2022/taiga-ui-kit-directives.mjs +0 -2
  272. package/fesm2022/taiga-ui-kit-directives.mjs.map +1 -1
  273. package/fesm2022/taiga-ui-kit-pipes-emails.mjs +3 -3
  274. package/fesm2022/taiga-ui-kit-pipes-emails.mjs.map +1 -1
  275. package/fesm2022/taiga-ui-kit-pipes-filter-by-input.mjs +3 -3
  276. package/fesm2022/taiga-ui-kit-pipes-filter-by-input.mjs.map +1 -1
  277. package/fesm2022/taiga-ui-kit-pipes-hide-selected.mjs +3 -3
  278. package/fesm2022/taiga-ui-kit-pipes-hide-selected.mjs.map +1 -1
  279. package/fesm2022/taiga-ui-kit-pipes-sort-countries.mjs +3 -3
  280. package/fesm2022/taiga-ui-kit-pipes-sort-countries.mjs.map +1 -1
  281. package/fesm2022/taiga-ui-kit-pipes-stringify-content.mjs +3 -3
  282. package/fesm2022/taiga-ui-kit-pipes-stringify-content.mjs.map +1 -1
  283. package/fesm2022/taiga-ui-kit-pipes-stringify.mjs +3 -3
  284. package/fesm2022/taiga-ui-kit-pipes-stringify.mjs.map +1 -1
  285. package/fesm2022/taiga-ui-kit-pipes.mjs +0 -1
  286. package/fesm2022/taiga-ui-kit-pipes.mjs.map +1 -1
  287. package/fesm2022/taiga-ui-kit-tokens.mjs +1 -6
  288. package/fesm2022/taiga-ui-kit-tokens.mjs.map +1 -1
  289. package/fesm2022/taiga-ui-kit-utils.mjs.map +1 -1
  290. package/package.json +26 -33
  291. package/pipes/index.d.ts +0 -1
  292. package/styles/components/avatar.less +188 -0
  293. package/styles/components/block.less +1 -1
  294. package/styles/components/checkbox.less +14 -12
  295. package/styles/components/chip.less +2 -3
  296. package/styles/components/like.less +4 -9
  297. package/styles/components/pin.less +3 -7
  298. package/styles/components/radio.less +1 -1
  299. package/styles/components/switch.less +9 -9
  300. package/styles/components/toast.less +44 -0
  301. package/tokens/index.d.ts +0 -1
  302. package/tokens/input-date-options.d.ts +1 -1
  303. package/components/accordion/accordion-item-content.directive.d.ts +0 -6
  304. package/components/accordion/accordion-item-eager-content.directive.d.ts +0 -5
  305. package/components/accordion/accordion-item.component.d.ts +0 -25
  306. package/components/action-bar/action-bar.d.ts +0 -3
  307. package/components/action-bar/action-bar.directive.d.ts +0 -6
  308. package/components/avatar/avatar.component.d.ts +0 -15
  309. package/components/input-password/index.d.ts +0 -2
  310. package/components/input-password/input-password.component.d.ts +0 -16
  311. package/components/input-password/input-password.options.d.ts +0 -24
  312. package/components/pdf-viewer/index.d.ts +0 -4
  313. package/components/pdf-viewer/pdf-viewer.component.d.ts +0 -12
  314. package/components/pdf-viewer/pdf-viewer.directive.d.ts +0 -7
  315. package/components/pdf-viewer/pdf-viewer.options.d.ts +0 -13
  316. package/components/pdf-viewer/pdf-viewer.service.d.ts +0 -13
  317. package/directives/icon-badge/icon-badge.directive.d.ts +0 -9
  318. package/directives/icon-badge/index.d.ts +0 -1
  319. package/fesm2022/taiga-ui-kit-components-input-password.mjs +0 -95
  320. package/fesm2022/taiga-ui-kit-components-input-password.mjs.map +0 -1
  321. package/fesm2022/taiga-ui-kit-components-pdf-viewer.mjs +0 -83
  322. package/fesm2022/taiga-ui-kit-components-pdf-viewer.mjs.map +0 -1
  323. package/fesm2022/taiga-ui-kit-directives-copy.mjs.map +0 -1
  324. package/fesm2022/taiga-ui-kit-directives-icon-badge.mjs +0 -47
  325. package/fesm2022/taiga-ui-kit-directives-icon-badge.mjs.map +0 -1
  326. package/fesm2022/taiga-ui-kit-pipes-field-error.mjs +0 -147
  327. package/fesm2022/taiga-ui-kit-pipes-field-error.mjs.map +0 -1
  328. package/pipes/field-error/field-error-content-pipe.d.ts +0 -14
  329. package/pipes/field-error/field-error-pipe.d.ts +0 -29
  330. package/pipes/field-error/index.d.ts +0 -2
  331. package/tokens/validation-errors.d.ts +0 -5
  332. /package/{directives → components}/copy/copy.component.d.ts +0 -0
  333. /package/{directives → components}/copy/copy.d.ts +0 -0
  334. /package/{directives → components}/copy/index.d.ts +0 -0
@@ -0,0 +1,17 @@
1
+ import { type AfterViewInit } from '@angular/core';
2
+ import { type TuiPopover } from '@taiga-ui/cdk/services';
3
+ import { type TuiToastOptions } from './toast.options';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@taiga-ui/cdk/directives/animated";
6
+ export declare class TuiToastComponent<O, I> implements AfterViewInit {
7
+ private readonly close;
8
+ private readonly el;
9
+ protected readonly isMobile: boolean;
10
+ protected readonly context: TuiPopover<TuiToastOptions<I>, O>;
11
+ protected readonly icons: import("@taiga-ui/core/tokens").TuiCommonIcons;
12
+ protected readonly $: import("rxjs").Subscription;
13
+ ngAfterViewInit(): void;
14
+ protected onSwipe(): void;
15
+ static ɵfac: i0.ɵɵFactoryDeclaration<TuiToastComponent<any, any>, never>;
16
+ static ɵcmp: i0.ɵɵComponentDeclaration<TuiToastComponent<any, any>, "tui-toast", never, {}, {}, never, never, true, [{ directive: typeof i1.TuiAnimated; inputs: {}; outputs: {}; }]>;
17
+ }
@@ -0,0 +1,3 @@
1
+ import { TuiToastDirective } from './toast.directive';
2
+ import { TuiToastTemplate } from './toast.service';
3
+ export declare const TuiToast: readonly [typeof TuiToastDirective, typeof TuiToastTemplate];
@@ -0,0 +1,7 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "@taiga-ui/core/directives/icons";
3
+ export declare class TuiToastDirective {
4
+ protected readonly nothing: undefined;
5
+ static ɵfac: i0.ɵɵFactoryDeclaration<TuiToastDirective, never>;
6
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiToastDirective, "[tuiToast]:not(ng-template)", never, {}, {}, never, never, true, [{ directive: typeof i1.TuiWithIcons; inputs: {}; outputs: {}; }]>;
7
+ }
@@ -0,0 +1,8 @@
1
+ export interface TuiToastOptions<I> {
2
+ autoClose: number;
3
+ closable: boolean;
4
+ appearance: string;
5
+ data?: I;
6
+ }
7
+ export declare const TUI_TOAST_DEFAULT_OPTIONS: TuiToastOptions<void>;
8
+ export declare const TUI_TOAST_OPTIONS: import("@angular/core").InjectionToken<TuiToastOptions<void>>, tuiToastOptionsProvider: (item: Partial<TuiToastOptions<void>> | (() => Partial<TuiToastOptions<void>>)) => import("@angular/core").FactoryProvider;
@@ -0,0 +1,16 @@
1
+ import { TuiPopoverDirective } from '@taiga-ui/cdk/directives/popover';
2
+ import { TuiPopoverService } from '@taiga-ui/cdk/services';
3
+ import { type TuiToastOptions } from './toast.options';
4
+ import * as i0 from "@angular/core";
5
+ export declare const TUI_TOASTS_CONCURRENCY: import("@angular/core").InjectionToken<number>;
6
+ export declare class TuiToastService extends TuiPopoverService<TuiToastOptions<any>> {
7
+ private readonly concurrency;
8
+ private readonly alerts;
9
+ protected readonly sub: import("rxjs").Subscription;
10
+ static ɵfac: i0.ɵɵFactoryDeclaration<TuiToastService, never>;
11
+ static ɵprov: i0.ɵɵInjectableDeclaration<TuiToastService>;
12
+ }
13
+ export declare class TuiToastTemplate<T> extends TuiPopoverDirective<TuiToastOptions<T>> {
14
+ static ɵfac: i0.ɵɵFactoryDeclaration<TuiToastTemplate<any>, never>;
15
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiToastTemplate<any>, "ng-template[tuiToast]", never, { "options": { "alias": "tuiToastOptions"; "required": false; }; "open": { "alias": "tuiToast"; "required": false; }; }, { "openChange": "tuiToastChange"; }, never, never, true, never>;
16
+ }
@@ -3,11 +3,10 @@ import { type TuiDataListHost } from '@taiga-ui/core/components/data-list';
3
3
  import * as i0 from "@angular/core";
4
4
  import * as i1 from "@taiga-ui/core/directives/dropdown";
5
5
  import * as i2 from "@taiga-ui/cdk/directives/native-validator";
6
- import * as i3 from "@taiga-ui/core/components/textfield";
7
6
  export declare class TuiButtonSelect<T> extends TuiControl<T> implements TuiDataListHost<T> {
8
7
  private readonly open;
9
8
  readonly size = "s";
10
9
  handleOption(option: T): void;
11
10
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiButtonSelect<any>, never>;
12
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiButtonSelect<any>, "button[tuiButtonSelect]", never, {}, {}, never, never, true, [{ directive: typeof i1.TuiDropdownDirective; inputs: {}; outputs: {}; }, { directive: typeof i2.TuiNativeValidator; inputs: {}; outputs: {}; }, { directive: typeof i1.TuiWithDropdownOpen; inputs: {}; outputs: {}; }, { directive: typeof i3.TuiWithTextfieldDropdown; inputs: {}; outputs: {}; }]>;
11
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiButtonSelect<any>, "button[tuiButtonSelect]", never, {}, {}, never, never, true, [{ directive: typeof i1.TuiDropdownDirective; inputs: {}; outputs: {}; }, { directive: typeof i2.TuiNativeValidator; inputs: {}; outputs: {}; }, { directive: typeof i1.TuiWithDropdownOpen; inputs: {}; outputs: {}; }]>;
13
12
  }
@@ -6,8 +6,7 @@ export declare class TuiChevron {
6
6
  private readonly dropdown;
7
7
  protected readonly nothing: undefined;
8
8
  protected readonly toggle: import("@angular/core").EffectRef;
9
- readonly chevron: import("@angular/core").WritableSignal<boolean | "">;
10
- set tuiChevron(chevron: boolean | '');
9
+ readonly rotated: import("@angular/core").InputSignal<boolean | "">;
11
10
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiChevron, never>;
12
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiChevron, "[tuiChevron]", never, { "tuiChevron": { "alias": "tuiChevron"; "required": false; }; }, {}, never, never, true, never>;
11
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiChevron, "[tuiChevron]", never, { "rotated": { "alias": "tuiChevron"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
13
12
  }
@@ -2,6 +2,7 @@ import { type TuiOrientation } from '@taiga-ui/core/types';
2
2
  import * as i0 from "@angular/core";
3
3
  import * as i1 from "@taiga-ui/cdk/directives/transitioned";
4
4
  export declare class TuiFade {
5
+ protected readonly nothing: undefined;
5
6
  lineHeight: string | null;
6
7
  size: string;
7
8
  offset: string;
@@ -4,9 +4,7 @@ export declare const TUI_HIGHLIGHT_OPTIONS: import("@angular/core").InjectionTok
4
4
  highlightColor: string;
5
5
  }>, tuiHighlightOptionsProvider: (item: Partial<{
6
6
  highlightColor: string;
7
- }> | import("@angular/core").ProviderToken<Partial<{
8
- highlightColor: string;
9
- }>> | (() => Partial<{
7
+ }> | (() => Partial<{
10
8
  highlightColor: string;
11
9
  }>)) => import("@angular/core").FactoryProvider;
12
10
  export declare class TuiHighlight implements OnChanges {
@@ -3,12 +3,10 @@ export * from '@taiga-ui/kit/directives/button-group';
3
3
  export * from '@taiga-ui/kit/directives/button-select';
4
4
  export * from '@taiga-ui/kit/directives/chevron';
5
5
  export * from '@taiga-ui/kit/directives/connected';
6
- export * from '@taiga-ui/kit/directives/copy';
7
6
  export * from '@taiga-ui/kit/directives/data-list-dropdown-manager';
8
7
  export * from '@taiga-ui/kit/directives/fade';
9
8
  export * from '@taiga-ui/kit/directives/fluid-typography';
10
9
  export * from '@taiga-ui/kit/directives/highlight';
11
- export * from '@taiga-ui/kit/directives/icon-badge';
12
10
  export * from '@taiga-ui/kit/directives/lazy-loading';
13
11
  export * from '@taiga-ui/kit/directives/password';
14
12
  export * from '@taiga-ui/kit/directives/present';
@@ -6,4 +6,4 @@ export interface TuiPasswordOptions {
6
6
  show: TuiStringHandler<TuiSizeL | TuiSizeS> | string;
7
7
  }>;
8
8
  }
9
- export declare const TUI_PASSWORD_OPTIONS: import("@angular/core").InjectionToken<TuiPasswordOptions>, tuiPasswordOptionsProvider: (item: Partial<TuiPasswordOptions> | import("@angular/core").ProviderToken<Partial<TuiPasswordOptions>> | (() => Partial<TuiPasswordOptions>)) => import("@angular/core").FactoryProvider;
9
+ export declare const TUI_PASSWORD_OPTIONS: import("@angular/core").InjectionToken<TuiPasswordOptions>, tuiPasswordOptionsProvider: (item: Partial<TuiPasswordOptions> | (() => Partial<TuiPasswordOptions>)) => import("@angular/core").FactoryProvider;
@@ -3,7 +3,7 @@ export declare class TuiSensitive {
3
3
  protected readonly nothing: undefined;
4
4
  protected readonly offset: number;
5
5
  protected readonly height: import("@angular/core").Signal<number | undefined>;
6
- tuiSensitive: boolean | null;
6
+ readonly tuiSensitive: import("@angular/core").InputSignal<boolean | null>;
7
7
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiSensitive, never>;
8
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiSensitive, "[tuiSensitive]", never, { "tuiSensitive": { "alias": "tuiSensitive"; "required": false; }; }, {}, never, never, true, never>;
8
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiSensitive, "[tuiSensitive]", never, { "tuiSensitive": { "alias": "tuiSensitive"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
9
9
  }
@@ -4,10 +4,10 @@ export declare class TuiShimmer implements OnChanges {
4
4
  private readonly isBrowser;
5
5
  private readonly el;
6
6
  private animation?;
7
- protected disabled: boolean;
8
7
  protected readonly nothing: undefined;
9
- shimmer: boolean;
8
+ protected disabled: boolean;
9
+ readonly tuiShimmer: import("@angular/core").InputSignal<boolean>;
10
10
  ngOnChanges(): void;
11
11
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiShimmer, never>;
12
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiShimmer, "[tuiShimmer]", never, { "shimmer": { "alias": "tuiShimmer"; "required": false; }; }, {}, never, never, true, never>;
12
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiShimmer, "[tuiShimmer]", never, { "tuiShimmer": { "alias": "tuiShimmer"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
13
13
  }
@@ -5,9 +5,9 @@ export declare class TuiSkeleton implements OnChanges {
5
5
  private readonly el;
6
6
  private readonly duration;
7
7
  protected readonly nothing: undefined;
8
- tuiSkeleton: boolean | number | string;
8
+ protected readonly placeholder: import("@angular/core").Signal<string | null>;
9
+ readonly tuiSkeleton: import("@angular/core").InputSignal<string | number | boolean>;
9
10
  ngOnChanges({ tuiSkeleton }: SimpleChanges): void;
10
- protected getPlaceholder(value: boolean | number | string): string | null;
11
11
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiSkeleton, never>;
12
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiSkeleton, "[tuiSkeleton]", never, { "tuiSkeleton": { "alias": "tuiSkeleton"; "required": false; }; }, {}, never, never, true, never>;
12
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiSkeleton, "[tuiSkeleton]", never, { "tuiSkeleton": { "alias": "tuiSkeleton"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
13
13
  }
@@ -10,9 +10,9 @@ export declare class TuiTooltip implements DoCheck {
10
10
  private readonly driver;
11
11
  protected readonly nothing: undefined;
12
12
  protected readonly state: Signal<unknown>;
13
- size: TuiSizeS;
13
+ readonly size: import("@angular/core").InputSignal<TuiSizeS>;
14
14
  ngDoCheck(): void;
15
15
  protected onClick(event: MouseEvent): void;
16
16
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiTooltip, never>;
17
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiTooltip, "tui-icon[tuiTooltip]", never, { "size": { "alias": "size"; "required": false; }; }, {}, never, never, true, [{ directive: typeof i1.TuiWithAppearance; inputs: {}; outputs: {}; }, { directive: typeof i2.TuiHintDescribe; inputs: { "tuiHintDescribe": "tuiTooltipDescribe"; }; outputs: {}; }, { directive: typeof i2.TuiHintDirective; inputs: { "tuiHint": "tuiTooltip"; "tuiHintAppearance": "tuiHintAppearance"; "tuiHintContext": "tuiHintContext"; }; outputs: {}; }]>;
17
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiTooltip, "tui-icon[tuiTooltip]", never, { "size": { "alias": "size"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.TuiWithAppearance; inputs: {}; outputs: {}; }, { directive: typeof i2.TuiHintDescribe; inputs: { "tuiHintDescribe": "tuiTooltipDescribe"; }; outputs: {}; }, { directive: typeof i2.TuiHintDirective; inputs: { "tuiHint": "tuiTooltip"; "tuiHintAppearance": "tuiHintAppearance"; "tuiHintContext": "tuiHintContext"; }; outputs: {}; }]>;
18
18
  }
@@ -4,10 +4,7 @@ export declare const TUI_TOOLTIP_OPTIONS: import("@angular/core").InjectionToken
4
4
  }>, tuiTooltipOptionsProvider: (item: Partial<{
5
5
  icon: string;
6
6
  appearance: string;
7
- }> | import("@angular/core").ProviderToken<Partial<{
8
- icon: string;
9
- appearance: string;
10
- }>> | (() => Partial<{
7
+ }> | (() => Partial<{
11
8
  icon: string;
12
9
  appearance: string;
13
10
  }>)) => import("@angular/core").FactoryProvider;
@@ -1,172 +1,96 @@
1
+ import { TuiItem } from '@taiga-ui/cdk/directives/item';
2
+ import { TuiExpand } from '@taiga-ui/core/components/expand';
1
3
  import * as i0 from '@angular/core';
2
- import { Directive, inject, ChangeDetectorRef, EventEmitter, Output, Input, ContentChild, ChangeDetectionStrategy, Component, DestroyRef, ContentChildren } from '@angular/core';
3
- import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
4
- import { EMPTY_QUERY } from '@taiga-ui/cdk/constants';
5
- import { tuiQueryListChanges } from '@taiga-ui/cdk/observables';
6
- import { tuiIsPresent } from '@taiga-ui/cdk/utils/miscellaneous';
4
+ import { inject, model, Directive, contentChildren, input, ChangeDetectionStrategy, ViewEncapsulation, Component } from '@angular/core';
5
+ import { tuiSetSignal } from '@taiga-ui/cdk/utils/miscellaneous';
7
6
  import * as i1$1 from '@taiga-ui/core/directives/group';
8
- import { TuiGroup } from '@taiga-ui/core/directives/group';
9
- import { pairwise, map, filter, merge, switchMap, identity } from 'rxjs';
10
- import { NgIf } from '@angular/common';
11
- import * as i1 from '@taiga-ui/core/components/expand';
12
- import { TuiExpand } from '@taiga-ui/core/components/expand';
13
- import { TuiIcon } from '@taiga-ui/core/components/icon';
14
- import { TuiChevron } from '@taiga-ui/kit/directives';
15
- import { PolymorpheusTemplate, PolymorpheusOutlet } from '@taiga-ui/polymorpheus';
16
-
17
- class TuiAccordionItemContent extends PolymorpheusTemplate {
18
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiAccordionItemContent, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
19
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.9", type: TuiAccordionItemContent, isStandalone: true, selector: "ng-template[tuiAccordionItemContent]", usesInheritance: true, ngImport: i0 }); }
20
- }
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiAccordionItemContent, decorators: [{
22
- type: Directive,
23
- args: [{
24
- standalone: true,
25
- selector: 'ng-template[tuiAccordionItemContent]',
26
- }]
27
- }] });
7
+ import { tuiGroupOptionsProvider, TuiGroup } from '@taiga-ui/core/directives/group';
8
+ import { tuiDirectiveBinding } from '@taiga-ui/cdk/utils';
9
+ import * as i1 from '@taiga-ui/core/components/button';
10
+ import { TuiButton, tuiButtonOptionsProvider } from '@taiga-ui/core/components/button';
11
+ import { tuiAvatarOptionsProvider } from '@taiga-ui/kit/components/avatar';
12
+ import * as i2 from '@taiga-ui/kit/directives/chevron';
13
+ import { TuiChevron } from '@taiga-ui/kit/directives/chevron';
28
14
 
29
- class TuiAccordionItemEagerContent {
30
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiAccordionItemEagerContent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
31
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.9", type: TuiAccordionItemEagerContent, isStandalone: true, selector: "[tuiAccordionItemContent]:not(ng-template)", ngImport: i0 }); }
15
+ class TuiAccordionDirective {
16
+ constructor() {
17
+ this.accordion = inject(TuiAccordionComponent);
18
+ this.open = model(false, { alias: 'tuiAccordion' });
19
+ this.size = tuiDirectiveBinding(TuiButton, 'size', this.accordion.size);
20
+ this.chevron = tuiDirectiveBinding(TuiChevron, 'rotated', this.open);
21
+ }
22
+ ngOnChanges() {
23
+ this.accordion.toggle(this);
24
+ }
25
+ toggle() {
26
+ this.open.set(!this.open());
27
+ this.accordion.toggle(this);
28
+ }
29
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAccordionDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
30
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.15", type: TuiAccordionDirective, isStandalone: true, selector: "button[tuiAccordion]", inputs: { open: { classPropertyName: "open", publicName: "tuiAccordion", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { open: "tuiAccordionChange" }, host: { attributes: { "tuiButton": "", "tuiAccordion": "", "type": "button" }, listeners: { "click": "toggle()" }, properties: { "class._open": "open()" } }, providers: [
31
+ tuiAvatarOptionsProvider({ size: 's' }),
32
+ tuiButtonOptionsProvider({ appearance: 'outline-grayscale' }),
33
+ ], usesOnChanges: true, hostDirectives: [{ directive: i1.TuiButton }, { directive: i2.TuiChevron }], ngImport: i0 }); }
32
34
  }
33
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiAccordionItemEagerContent, decorators: [{
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAccordionDirective, decorators: [{
34
36
  type: Directive,
35
37
  args: [{
36
38
  standalone: true,
37
- selector: '[tuiAccordionItemContent]:not(ng-template)',
39
+ selector: 'button[tuiAccordion]',
40
+ providers: [
41
+ tuiAvatarOptionsProvider({ size: 's' }),
42
+ tuiButtonOptionsProvider({ appearance: 'outline-grayscale' }),
43
+ ],
44
+ hostDirectives: [TuiButton, TuiChevron],
45
+ host: {
46
+ tuiButton: '',
47
+ tuiAccordion: '',
48
+ type: 'button',
49
+ '[class._open]': 'open()',
50
+ '(click)': 'toggle()',
51
+ },
38
52
  }]
39
53
  }] });
40
54
 
41
- class TuiAccordionItem {
55
+ class TuiAccordionComponent {
42
56
  constructor() {
43
- this.cdr = inject(ChangeDetectorRef);
44
- this.noPadding = false;
45
- this.showArrow = true;
46
- this.borders = 'all';
47
- this.size = 'm';
48
- this.disabled = false;
49
- this.disableHover = false;
50
- this.open = false;
51
- this.async = false;
52
- this.openChange = new EventEmitter();
53
- }
54
- close() {
55
- this.updateOpen(false);
56
- this.cdr.markForCheck();
57
- }
58
- onRowToggle() {
59
- if (!this.disabled) {
60
- this.updateOpen(!this.open);
61
- }
57
+ this.expands = contentChildren(TuiExpand);
58
+ this.directives = contentChildren(TuiAccordionDirective);
59
+ this.closeOthers = input(true);
60
+ this.size = input('l');
62
61
  }
63
- onItemKeyDownEsc(event) {
64
- if (!this.open) {
65
- return;
62
+ toggle(directive) {
63
+ if (this.closeOthers() && directive.open()) {
64
+ this.expands().forEach((expand) => tuiSetSignal(expand.expanded, false));
65
+ this.directives().forEach((dir) => {
66
+ if (dir !== directive) {
67
+ dir.open.set(false);
68
+ }
69
+ });
66
70
  }
67
- event.stopPropagation();
68
- this.updateOpen(false);
69
- }
70
- updateOpen(open) {
71
- if (this.open === open) {
72
- return;
71
+ const expand = this.expands()[this.directives().indexOf(directive)];
72
+ if (expand) {
73
+ tuiSetSignal(expand.expanded, !!directive.open());
73
74
  }
74
- this.open = open;
75
- this.openChange.emit(open);
76
75
  }
77
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiAccordionItem, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
78
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.9", type: TuiAccordionItem, isStandalone: true, selector: "tui-accordion-item", inputs: { noPadding: "noPadding", showArrow: "showArrow", borders: "borders", size: "size", disabled: "disabled", disableHover: "disableHover", open: "open", async: "async" }, outputs: { openChange: "openChange" }, host: { properties: { "class._no-padding": "noPadding", "class._has-arrow": "showArrow", "attr.data-borders": "borders", "attr.data-size": "size", "class._disabled": "disabled" } }, queries: [{ propertyName: "eagerContent", first: true, predicate: TuiAccordionItemEagerContent, descendants: true }, { propertyName: "lazyContent", first: true, predicate: TuiAccordionItemContent, descendants: true }], ngImport: i0, template: "<div\n automation-id=\"tui-accordion__item-wrapper\"\n class=\"t-wrapper\"\n>\n <button\n automation-id=\"tui-accordion__item-header\"\n type=\"button\"\n class=\"t-header\"\n [class.t-header_hoverable]=\"!disableHover\"\n [class.t-header_open]=\"open\"\n [disabled]=\"disabled\"\n (click)=\"onRowToggle()\"\n (keydown.esc)=\"onItemKeyDownEsc($event)\"\n >\n <span\n automation-id=\"tui-accordion__item-title\"\n class=\"t-title\"\n >\n <ng-content />\n </span>\n <ng-container *ngIf=\"showArrow\">\n <tui-icon\n class=\"t-icon\"\n [tuiChevron]=\"open\"\n />\n </ng-container>\n </button>\n <tui-expand\n [async]=\"async\"\n [expanded]=\"open\"\n >\n <ng-template tuiExpandContent>\n <div\n *ngIf=\"lazyContent\"\n automation-id=\"tui-accordion__item-content\"\n class=\"t-content\"\n >\n <ng-container *polymorpheusOutlet=\"lazyContent as text\">\n {{ text }}\n </ng-container>\n </div>\n </ng-template>\n <div\n *ngIf=\"eagerContent\"\n class=\"t-content\"\n >\n <ng-content select=\"[tuiAccordionItemContent]:not(ng-template)\" />\n </div>\n </tui-expand>\n</div>\n", styles: [":host{position:relative;display:block;overflow:hidden;border-radius:var(--tui-radius-l)}:host[data-borders=top-bottom]{border-radius:0!important}::ng-deep tui-accordion{inline-size:100%}.t-wrapper{position:relative;border-radius:inherit}.t-wrapper:after{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;content:\"\";box-sizing:border-box;border-radius:inherit;border:1px solid var(--tui-border-normal);pointer-events:none}:host:not([data-borders]) .t-wrapper:after{border-width:0}:host[data-borders=all] .t-wrapper:after{border-width:1px}:host[data-borders=top-bottom] .t-wrapper:after{border-inline-start-width:0;border-inline-end-width:0}:host[data-borders=top] .t-wrapper:after{border-inline-start-width:0;border-inline-end-width:0;border-block-end-width:0}:host[data-borders=bottom] .t-wrapper:after{border-inline-start-width:0;border-inline-end-width:0;border-block-start-width:0}.t-header{-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font:inherit;line-height:inherit;text-decoration:none;transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;inline-size:100%;font:var(--tui-font-text-l);align-items:center;box-sizing:border-box;border-block-end:1px solid var(--tui-border-normal);min-block-size:var(--tui-height-l);padding:.75rem 1.25rem;color:var(--tui-text-primary);cursor:pointer;text-align:start;outline:none}.t-header:focus-visible{box-shadow:inset 0 0 0 2px var(--tui-border-focus)}:host:not([data-borders]) .t-header{border-block-end-width:0}:host._has-arrow .t-header{padding-inline-end:.75rem}:host-context([tuiTheme=\"dark\"]) .t-header_open{background:var(--tui-background-neutral-1)}:host[data-size=s] .t-header{font:var(--tui-font-text-m);min-block-size:var(--tui-height-m);padding:.625rem .75rem .625rem 1rem}:host._no-padding .t-header{padding-inline-start:0;padding-inline-end:0}:host._disabled .t-header{cursor:default}.t-wrapper:hover>.t-header_hoverable{background:var(--tui-background-base-alt)}.t-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-inline-end:0;flex-grow:1}:host._has-arrow .t-title{margin-inline-end:.5rem}.t-icon{transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;margin-inline-start:auto;color:var(--tui-text-tertiary)}.t-icon:before{font-size:1rem}:host:hover .t-icon{color:var(--tui-text-secondary)}.t-content{font:var(--tui-font-text-m);padding:1.25rem;overflow-wrap:break-word}:host[data-size=s] .t-content{font:var(--tui-font-text-s);padding:1rem}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: PolymorpheusOutlet, selector: "[polymorpheusOutlet]", inputs: ["polymorpheusOutlet", "polymorpheusOutletContext"] }, { kind: "directive", type: TuiChevron, selector: "[tuiChevron]", inputs: ["tuiChevron"] }, { kind: "component", type: i1.TuiExpandComponent, selector: "tui-expand", inputs: ["async", "expanded"] }, { kind: "directive", type: i1.TuiExpandContent, selector: "[tuiExpandContent]" }, { kind: "component", type: TuiIcon, selector: "tui-icon", inputs: ["icon", "background"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
76
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAccordionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
77
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.2.15", type: TuiAccordionComponent, isStandalone: true, selector: "tui-accordion", inputs: { closeOthers: { classPropertyName: "closeOthers", publicName: "closeOthers", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.data-size": "size()" } }, providers: [tuiGroupOptionsProvider({ orientation: 'vertical', collapsed: true })], queries: [{ propertyName: "expands", predicate: TuiExpand, isSignal: true }, { propertyName: "directives", predicate: TuiAccordionDirective, isSignal: true }], hostDirectives: [{ directive: i1$1.TuiGroup }], ngImport: i0, template: '<ng-content />', isInline: true, styles: ["tui-accordion{inline-size:stretch;border-radius:var(--t-group-radius);font:var(--tui-font-text-m);overflow:hidden}tui-accordion>[tuiAccordion]{text-align:start;justify-content:flex-start}tui-accordion>[tuiAccordion]:last-of-type:not(._open){-webkit-mask-image:var(--t-group-mask-end);mask-image:var(--t-group-mask-end);border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}tui-accordion>[tuiAccordion]:first-child{border-top-left-radius:inherit!important;border-top-right-radius:inherit!important}tui-accordion>[tuiAccordion]:first-child:last-of-type:not(._open){mask:none}tui-accordion>[tuiAccordion]:after{margin-inline-start:auto!important}tui-accordion>[tuiAccordion]._open+tui-expand{visibility:visible}tui-accordion>[tuiAccordion]>[tuiAvatar]{margin:0}tui-accordion>tui-expand{visibility:hidden;min-block-size:1px!important;padding:1.25rem;transition-property:grid-template-rows,padding,visibility!important;box-shadow:inset 0 0 0 1px var(--tui-border-normal)}tui-accordion>tui-expand:last-child{border-bottom-left-radius:inherit!important;border-bottom-right-radius:inherit!important}tui-accordion>[tuiAccordion][data-appearance=\"\"]+tui-expand{box-shadow:none}tui-accordion[data-size=m]{font:var(--tui-font-text-s)}tui-accordion[data-size=m]>tui-expand{padding:1rem}tui-accordion[data-size=s]{font:var(--tui-font-text-s)}tui-accordion[data-size=s]>tui-expand{padding:.625rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
79
78
  }
80
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiAccordionItem, decorators: [{
79
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAccordionComponent, decorators: [{
81
80
  type: Component,
82
- args: [{ selector: 'tui-accordion-item', imports: [NgIf, PolymorpheusOutlet, TuiChevron, TuiExpand, TuiIcon], changeDetection: ChangeDetectionStrategy.OnPush, host: {
83
- '[class._no-padding]': 'noPadding',
84
- '[class._has-arrow]': 'showArrow',
85
- '[attr.data-borders]': 'borders',
86
- '[attr.data-size]': 'size',
87
- '[class._disabled]': 'disabled',
88
- }, template: "<div\n automation-id=\"tui-accordion__item-wrapper\"\n class=\"t-wrapper\"\n>\n <button\n automation-id=\"tui-accordion__item-header\"\n type=\"button\"\n class=\"t-header\"\n [class.t-header_hoverable]=\"!disableHover\"\n [class.t-header_open]=\"open\"\n [disabled]=\"disabled\"\n (click)=\"onRowToggle()\"\n (keydown.esc)=\"onItemKeyDownEsc($event)\"\n >\n <span\n automation-id=\"tui-accordion__item-title\"\n class=\"t-title\"\n >\n <ng-content />\n </span>\n <ng-container *ngIf=\"showArrow\">\n <tui-icon\n class=\"t-icon\"\n [tuiChevron]=\"open\"\n />\n </ng-container>\n </button>\n <tui-expand\n [async]=\"async\"\n [expanded]=\"open\"\n >\n <ng-template tuiExpandContent>\n <div\n *ngIf=\"lazyContent\"\n automation-id=\"tui-accordion__item-content\"\n class=\"t-content\"\n >\n <ng-container *polymorpheusOutlet=\"lazyContent as text\">\n {{ text }}\n </ng-container>\n </div>\n </ng-template>\n <div\n *ngIf=\"eagerContent\"\n class=\"t-content\"\n >\n <ng-content select=\"[tuiAccordionItemContent]:not(ng-template)\" />\n </div>\n </tui-expand>\n</div>\n", styles: [":host{position:relative;display:block;overflow:hidden;border-radius:var(--tui-radius-l)}:host[data-borders=top-bottom]{border-radius:0!important}::ng-deep tui-accordion{inline-size:100%}.t-wrapper{position:relative;border-radius:inherit}.t-wrapper:after{position:absolute;top:0;left:0;inline-size:100%;block-size:100%;content:\"\";box-sizing:border-box;border-radius:inherit;border:1px solid var(--tui-border-normal);pointer-events:none}:host:not([data-borders]) .t-wrapper:after{border-width:0}:host[data-borders=all] .t-wrapper:after{border-width:1px}:host[data-borders=top-bottom] .t-wrapper:after{border-inline-start-width:0;border-inline-end-width:0}:host[data-borders=top] .t-wrapper:after{border-inline-start-width:0;border-inline-end-width:0;border-block-end-width:0}:host[data-borders=bottom] .t-wrapper:after{border-inline-start-width:0;border-inline-end-width:0;border-block-start-width:0}.t-header{-webkit-appearance:none;appearance:none;padding:0;border:0;background:none;font:inherit;line-height:inherit;text-decoration:none;transition-property:background;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;display:flex;inline-size:100%;font:var(--tui-font-text-l);align-items:center;box-sizing:border-box;border-block-end:1px solid var(--tui-border-normal);min-block-size:var(--tui-height-l);padding:.75rem 1.25rem;color:var(--tui-text-primary);cursor:pointer;text-align:start;outline:none}.t-header:focus-visible{box-shadow:inset 0 0 0 2px var(--tui-border-focus)}:host:not([data-borders]) .t-header{border-block-end-width:0}:host._has-arrow .t-header{padding-inline-end:.75rem}:host-context([tuiTheme=\"dark\"]) .t-header_open{background:var(--tui-background-neutral-1)}:host[data-size=s] .t-header{font:var(--tui-font-text-m);min-block-size:var(--tui-height-m);padding:.625rem .75rem .625rem 1rem}:host._no-padding .t-header{padding-inline-start:0;padding-inline-end:0}:host._disabled .t-header{cursor:default}.t-wrapper:hover>.t-header_hoverable{background:var(--tui-background-base-alt)}.t-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-inline-end:0;flex-grow:1}:host._has-arrow .t-title{margin-inline-end:.5rem}.t-icon{transition-property:color;transition-duration:var(--tui-duration, .3s);transition-timing-function:ease-in-out;margin-inline-start:auto;color:var(--tui-text-tertiary)}.t-icon:before{font-size:1rem}:host:hover .t-icon{color:var(--tui-text-secondary)}.t-content{font:var(--tui-font-text-m);padding:1.25rem;overflow-wrap:break-word}:host[data-size=s] .t-content{font:var(--tui-font-text-s);padding:1rem}\n"] }]
89
- }], propDecorators: { eagerContent: [{
90
- type: ContentChild,
91
- args: [TuiAccordionItemEagerContent]
92
- }], lazyContent: [{
93
- type: ContentChild,
94
- args: [TuiAccordionItemContent]
95
- }], noPadding: [{
96
- type: Input
97
- }], showArrow: [{
98
- type: Input
99
- }], borders: [{
100
- type: Input
101
- }], size: [{
102
- type: Input
103
- }], disabled: [{
104
- type: Input
105
- }], disableHover: [{
106
- type: Input
107
- }], open: [{
108
- type: Input
109
- }], async: [{
110
- type: Input
111
- }], openChange: [{
112
- type: Output
113
- }] } });
114
-
115
- class TuiAccordionDirective {
116
- constructor() {
117
- this.destroyRef = inject(DestroyRef);
118
- this.accordionItems = EMPTY_QUERY;
119
- this.closeOthers = true;
120
- // Not using DI options to avoid changed defaults spilling to content
121
- const group = inject(TuiGroup);
122
- group.orientation = 'vertical';
123
- group.collapsed = true;
124
- }
125
- ngAfterContentInit() {
126
- const { accordionItems } = this;
127
- const rows$ = tuiQueryListChanges(accordionItems);
128
- const newOpenRow$ = rows$.pipe(pairwise(), map(([previous, current]) => current.find((item) => !previous.includes(item) && item.open)), filter(tuiIsPresent));
129
- const rowsOpen$ = merge(rows$.pipe(switchMap((rows) => merge(...rows.map((row) => row.openChange.pipe(filter(identity), map(() => row)))))), newOpenRow$).pipe(filter(() => this.closeOthers), takeUntilDestroyed(this.destroyRef));
130
- rowsOpen$.subscribe((currentRow) => {
131
- accordionItems.forEach((row) => {
132
- if (currentRow !== row) {
133
- row.close();
134
- }
135
- });
136
- });
137
- }
138
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiAccordionDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
139
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.9", type: TuiAccordionDirective, isStandalone: true, selector: "tui-accordion", inputs: { closeOthers: "closeOthers" }, queries: [{ propertyName: "accordionItems", predicate: TuiAccordionItem }], hostDirectives: [{ directive: i1$1.TuiGroup, inputs: ["rounded", "rounded"] }], ngImport: i0 }); }
140
- }
141
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.9", ngImport: i0, type: TuiAccordionDirective, decorators: [{
142
- type: Directive,
143
- args: [{
144
- standalone: true,
145
- selector: 'tui-accordion',
146
- hostDirectives: [
147
- {
148
- directive: TuiGroup,
149
- inputs: ['rounded'],
150
- },
151
- ],
152
- }]
153
- }], ctorParameters: () => [], propDecorators: { accordionItems: [{
154
- type: ContentChildren,
155
- args: [TuiAccordionItem]
156
- }], closeOthers: [{
157
- type: Input
158
- }] } });
81
+ args: [{ standalone: true, selector: 'tui-accordion', template: '<ng-content />', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [tuiGroupOptionsProvider({ orientation: 'vertical', collapsed: true })], hostDirectives: [TuiGroup], host: { '[attr.data-size]': 'size()' }, styles: ["tui-accordion{inline-size:stretch;border-radius:var(--t-group-radius);font:var(--tui-font-text-m);overflow:hidden}tui-accordion>[tuiAccordion]{text-align:start;justify-content:flex-start}tui-accordion>[tuiAccordion]:last-of-type:not(._open){-webkit-mask-image:var(--t-group-mask-end);mask-image:var(--t-group-mask-end);border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}tui-accordion>[tuiAccordion]:first-child{border-top-left-radius:inherit!important;border-top-right-radius:inherit!important}tui-accordion>[tuiAccordion]:first-child:last-of-type:not(._open){mask:none}tui-accordion>[tuiAccordion]:after{margin-inline-start:auto!important}tui-accordion>[tuiAccordion]._open+tui-expand{visibility:visible}tui-accordion>[tuiAccordion]>[tuiAvatar]{margin:0}tui-accordion>tui-expand{visibility:hidden;min-block-size:1px!important;padding:1.25rem;transition-property:grid-template-rows,padding,visibility!important;box-shadow:inset 0 0 0 1px var(--tui-border-normal)}tui-accordion>tui-expand:last-child{border-bottom-left-radius:inherit!important;border-bottom-right-radius:inherit!important}tui-accordion>[tuiAccordion][data-appearance=\"\"]+tui-expand{box-shadow:none}tui-accordion[data-size=m]{font:var(--tui-font-text-s)}tui-accordion[data-size=m]>tui-expand{padding:1rem}tui-accordion[data-size=s]{font:var(--tui-font-text-s)}tui-accordion[data-size=s]>tui-expand{padding:.625rem}\n"] }]
82
+ }] });
159
83
 
160
84
  const TuiAccordion = [
161
- TuiAccordionItem,
85
+ TuiAccordionComponent,
162
86
  TuiAccordionDirective,
163
- TuiAccordionItemContent,
164
- TuiAccordionItemEagerContent,
87
+ TuiExpand,
88
+ TuiItem,
165
89
  ];
166
90
 
167
91
  /**
168
92
  * Generated bundle index. Do not edit.
169
93
  */
170
94
 
171
- export { TuiAccordion, TuiAccordionDirective, TuiAccordionItem, TuiAccordionItemContent, TuiAccordionItemEagerContent };
95
+ export { TuiAccordion, TuiAccordionComponent, TuiAccordionDirective };
172
96
  //# sourceMappingURL=taiga-ui-kit-components-accordion.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"taiga-ui-kit-components-accordion.mjs","sources":["../../../projects/kit/components/accordion/accordion-item-content.directive.ts","../../../projects/kit/components/accordion/accordion-item-eager-content.directive.ts","../../../projects/kit/components/accordion/accordion-item.component.ts","../../../projects/kit/components/accordion/accordion-item.template.html","../../../projects/kit/components/accordion/accordion.directive.ts","../../../projects/kit/components/accordion/accordion.ts","../../../projects/kit/components/accordion/taiga-ui-kit-components-accordion.ts"],"sourcesContent":["import {Directive} from '@angular/core';\nimport {PolymorpheusTemplate} from '@taiga-ui/polymorpheus';\n\n@Directive({\n standalone: true,\n selector: 'ng-template[tuiAccordionItemContent]',\n})\nexport class TuiAccordionItemContent extends PolymorpheusTemplate<\n Record<string, unknown>\n> {}\n","import {Directive} from '@angular/core';\n\n@Directive({\n standalone: true,\n selector: '[tuiAccordionItemContent]:not(ng-template)',\n})\nexport class TuiAccordionItemEagerContent {}\n","import {NgIf} from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n EventEmitter,\n inject,\n Input,\n Output,\n} from '@angular/core';\nimport {TuiExpand} from '@taiga-ui/core/components/expand';\nimport {TuiIcon} from '@taiga-ui/core/components/icon';\nimport {type TuiSizeS} from '@taiga-ui/core/types';\nimport {TuiChevron} from '@taiga-ui/kit/directives';\nimport {PolymorpheusOutlet} from '@taiga-ui/polymorpheus';\n\nimport {TuiAccordionItemContent} from './accordion-item-content.directive';\nimport {TuiAccordionItemEagerContent} from './accordion-item-eager-content.directive';\n\n@Component({\n selector: 'tui-accordion-item',\n imports: [NgIf, PolymorpheusOutlet, TuiChevron, TuiExpand, TuiIcon],\n templateUrl: './accordion-item.template.html',\n styleUrls: ['./accordion-item.style.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n '[class._no-padding]': 'noPadding',\n '[class._has-arrow]': 'showArrow',\n '[attr.data-borders]': 'borders',\n '[attr.data-size]': 'size',\n '[class._disabled]': 'disabled',\n },\n})\nexport class TuiAccordionItem {\n private readonly cdr = inject(ChangeDetectorRef);\n\n @ContentChild(TuiAccordionItemEagerContent)\n protected readonly eagerContent?: TuiAccordionItemEagerContent;\n\n @ContentChild(TuiAccordionItemContent)\n protected readonly lazyContent?: TuiAccordionItemContent;\n\n @Input()\n public noPadding = false;\n\n @Input()\n public showArrow = true;\n\n @Input()\n public borders: 'all' | 'top-bottom' | null = 'all';\n\n @Input()\n public size: TuiSizeS = 'm';\n\n @Input()\n public disabled = false;\n\n @Input()\n public disableHover = false;\n\n @Input()\n public open = false;\n\n @Input()\n public async = false;\n\n @Output()\n public readonly openChange = new EventEmitter<boolean>();\n\n public close(): void {\n this.updateOpen(false);\n this.cdr.markForCheck();\n }\n\n protected onRowToggle(): void {\n if (!this.disabled) {\n this.updateOpen(!this.open);\n }\n }\n\n protected onItemKeyDownEsc(event: Event): void {\n if (!this.open) {\n return;\n }\n\n event.stopPropagation();\n this.updateOpen(false);\n }\n\n private updateOpen(open: boolean): void {\n if (this.open === open) {\n return;\n }\n\n this.open = open;\n this.openChange.emit(open);\n }\n}\n","<div\n automation-id=\"tui-accordion__item-wrapper\"\n class=\"t-wrapper\"\n>\n <button\n automation-id=\"tui-accordion__item-header\"\n type=\"button\"\n class=\"t-header\"\n [class.t-header_hoverable]=\"!disableHover\"\n [class.t-header_open]=\"open\"\n [disabled]=\"disabled\"\n (click)=\"onRowToggle()\"\n (keydown.esc)=\"onItemKeyDownEsc($event)\"\n >\n <span\n automation-id=\"tui-accordion__item-title\"\n class=\"t-title\"\n >\n <ng-content />\n </span>\n <ng-container *ngIf=\"showArrow\">\n <tui-icon\n class=\"t-icon\"\n [tuiChevron]=\"open\"\n />\n </ng-container>\n </button>\n <tui-expand\n [async]=\"async\"\n [expanded]=\"open\"\n >\n <ng-template tuiExpandContent>\n <div\n *ngIf=\"lazyContent\"\n automation-id=\"tui-accordion__item-content\"\n class=\"t-content\"\n >\n <ng-container *polymorpheusOutlet=\"lazyContent as text\">\n {{ text }}\n </ng-container>\n </div>\n </ng-template>\n <div\n *ngIf=\"eagerContent\"\n class=\"t-content\"\n >\n <ng-content select=\"[tuiAccordionItemContent]:not(ng-template)\" />\n </div>\n </tui-expand>\n</div>\n","import {\n type AfterContentInit,\n ContentChildren,\n DestroyRef,\n Directive,\n inject,\n Input,\n type QueryList,\n} from '@angular/core';\nimport {takeUntilDestroyed} from '@angular/core/rxjs-interop';\nimport {EMPTY_QUERY} from '@taiga-ui/cdk/constants';\nimport {tuiQueryListChanges} from '@taiga-ui/cdk/observables';\nimport {tuiIsPresent} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiGroup} from '@taiga-ui/core/directives/group';\nimport {filter, identity, map, merge, pairwise, switchMap} from 'rxjs';\n\nimport {TuiAccordionItem} from './accordion-item.component';\n\n@Directive({\n standalone: true,\n selector: 'tui-accordion',\n hostDirectives: [\n {\n directive: TuiGroup,\n inputs: ['rounded'],\n },\n ],\n})\nexport class TuiAccordionDirective implements AfterContentInit {\n private readonly destroyRef = inject(DestroyRef);\n\n @ContentChildren(TuiAccordionItem)\n protected readonly accordionItems: QueryList<TuiAccordionItem> = EMPTY_QUERY;\n\n @Input()\n public closeOthers = true;\n\n constructor() {\n // Not using DI options to avoid changed defaults spilling to content\n const group = inject(TuiGroup);\n\n group.orientation = 'vertical';\n group.collapsed = true;\n }\n\n public ngAfterContentInit(): void {\n const {accordionItems} = this;\n const rows$ = tuiQueryListChanges(accordionItems);\n const newOpenRow$ = rows$.pipe(\n pairwise(),\n map(([previous, current]) =>\n current.find((item) => !previous.includes(item) && item.open),\n ),\n filter(tuiIsPresent),\n );\n const rowsOpen$ = merge(\n rows$.pipe(\n switchMap((rows) =>\n merge(\n ...rows.map((row) =>\n row.openChange.pipe(\n filter(identity),\n map(() => row),\n ),\n ),\n ),\n ),\n ),\n newOpenRow$,\n ).pipe(\n filter(() => this.closeOthers),\n takeUntilDestroyed(this.destroyRef),\n );\n\n rowsOpen$.subscribe((currentRow) => {\n accordionItems.forEach((row) => {\n if (currentRow !== row) {\n row.close();\n }\n });\n });\n }\n}\n","import {TuiAccordionDirective} from './accordion.directive';\nimport {TuiAccordionItem} from './accordion-item.component';\nimport {TuiAccordionItemContent} from './accordion-item-content.directive';\nimport {TuiAccordionItemEagerContent} from './accordion-item-eager-content.directive';\n\nexport const TuiAccordion = [\n TuiAccordionItem,\n TuiAccordionDirective,\n TuiAccordionItemContent,\n TuiAccordionItemEagerContent,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1"],"mappings":"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"}
1
+ {"version":3,"file":"taiga-ui-kit-components-accordion.mjs","sources":["../../../projects/kit/components/accordion/accordion.directive.ts","../../../projects/kit/components/accordion/accordion.component.ts","../../../projects/kit/components/accordion/accordion.ts","../../../projects/kit/components/accordion/taiga-ui-kit-components-accordion.ts"],"sourcesContent":["import {Directive, inject, model, type OnChanges} from '@angular/core';\nimport {tuiDirectiveBinding} from '@taiga-ui/cdk/utils';\nimport {TuiButton, tuiButtonOptionsProvider} from '@taiga-ui/core/components/button';\nimport {tuiAvatarOptionsProvider} from '@taiga-ui/kit/components/avatar';\nimport {TuiChevron} from '@taiga-ui/kit/directives/chevron';\n\nimport {TuiAccordionComponent} from './accordion.component';\n\n@Directive({\n standalone: true,\n selector: 'button[tuiAccordion]',\n providers: [\n tuiAvatarOptionsProvider({size: 's'}),\n tuiButtonOptionsProvider({appearance: 'outline-grayscale'}),\n ],\n hostDirectives: [TuiButton, TuiChevron],\n host: {\n tuiButton: '',\n tuiAccordion: '',\n type: 'button',\n '[class._open]': 'open()',\n '(click)': 'toggle()',\n },\n})\nexport class TuiAccordionDirective implements OnChanges {\n private readonly accordion = inject(TuiAccordionComponent);\n\n public readonly open = model<boolean | ''>(false, {alias: 'tuiAccordion'});\n\n public readonly size = tuiDirectiveBinding(TuiButton, 'size', this.accordion.size);\n public readonly chevron = tuiDirectiveBinding(TuiChevron, 'rotated', this.open);\n\n public ngOnChanges(): void {\n this.accordion.toggle(this);\n }\n\n public toggle(): void {\n this.open.set(!this.open());\n this.accordion.toggle(this);\n }\n}\n","import {\n ChangeDetectionStrategy,\n Component,\n contentChildren,\n input,\n ViewEncapsulation,\n} from '@angular/core';\nimport {tuiSetSignal} from '@taiga-ui/cdk/utils/miscellaneous';\nimport {TuiExpand} from '@taiga-ui/core/components/expand';\nimport {TuiGroup, tuiGroupOptionsProvider} from '@taiga-ui/core/directives/group';\nimport {type TuiSizeL, type TuiSizeS} from '@taiga-ui/core/types';\n\nimport {TuiAccordionDirective} from './accordion.directive';\n\n@Component({\n standalone: true,\n selector: 'tui-accordion',\n template: '<ng-content />',\n styleUrl: './accordion.style.less',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [tuiGroupOptionsProvider({orientation: 'vertical', collapsed: true})],\n hostDirectives: [TuiGroup],\n host: {'[attr.data-size]': 'size()'},\n})\nexport class TuiAccordionComponent {\n protected readonly expands = contentChildren(TuiExpand);\n protected readonly directives = contentChildren(TuiAccordionDirective);\n\n public readonly closeOthers = input(true);\n public readonly size = input<TuiSizeL | TuiSizeS>('l');\n\n public toggle(directive: TuiAccordionDirective): void {\n if (this.closeOthers() && directive.open()) {\n this.expands().forEach((expand) => tuiSetSignal(expand.expanded, false));\n this.directives().forEach((dir) => {\n if (dir !== directive) {\n dir.open.set(false);\n }\n });\n }\n\n const expand = this.expands()[this.directives().indexOf(directive)];\n\n if (expand) {\n tuiSetSignal(expand.expanded, !!directive.open());\n }\n }\n}\n","import {TuiItem} from '@taiga-ui/cdk/directives/item';\nimport {TuiExpand} from '@taiga-ui/core/components/expand';\n\nimport {TuiAccordionComponent} from './accordion.component';\nimport {TuiAccordionDirective} from './accordion.directive';\n\nexport const TuiAccordion = [\n TuiAccordionComponent,\n TuiAccordionDirective,\n TuiExpand,\n TuiItem,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;MAwBa,qBAAqB,CAAA;AAhBlC,IAAA,WAAA,GAAA;AAiBqB,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,qBAAqB,CAAC;QAE1C,IAAI,CAAA,IAAA,GAAG,KAAK,CAAe,KAAK,EAAE,EAAC,KAAK,EAAE,cAAc,EAAC,CAAC;AAE1D,QAAA,IAAA,CAAA,IAAI,GAAG,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;QAClE,IAAO,CAAA,OAAA,GAAG,mBAAmB,CAAC,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC;AAUlF;IARU,WAAW,GAAA;AACd,QAAA,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;;IAGxB,MAAM,GAAA;QACT,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;AAC3B,QAAA,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;;+GAdtB,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAArB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,qBAAqB,EAbnB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,IAAA,EAAA,oBAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,EAAA,EAAA,cAAA,EAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,UAAA,EAAA,EAAA,UAAA,EAAA,EAAA,aAAA,EAAA,QAAA,EAAA,EAAA,EAAA,SAAA,EAAA;AACP,YAAA,wBAAwB,CAAC,EAAC,IAAI,EAAE,GAAG,EAAC,CAAC;AACrC,YAAA,wBAAwB,CAAC,EAAC,UAAU,EAAE,mBAAmB,EAAC,CAAC;AAC9D,SAAA,EAAA,aAAA,EAAA,IAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,SAAA,EAAA,EAAA,CAAA,UAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAUQ,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAhBjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,sBAAsB;AAChC,oBAAA,SAAS,EAAE;AACP,wBAAA,wBAAwB,CAAC,EAAC,IAAI,EAAE,GAAG,EAAC,CAAC;AACrC,wBAAA,wBAAwB,CAAC,EAAC,UAAU,EAAE,mBAAmB,EAAC,CAAC;AAC9D,qBAAA;AACD,oBAAA,cAAc,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC;AACvC,oBAAA,IAAI,EAAE;AACF,wBAAA,SAAS,EAAE,EAAE;AACb,wBAAA,YAAY,EAAE,EAAE;AAChB,wBAAA,IAAI,EAAE,QAAQ;AACd,wBAAA,eAAe,EAAE,QAAQ;AACzB,wBAAA,SAAS,EAAE,UAAU;AACxB,qBAAA;AACJ,iBAAA;;;MCEY,qBAAqB,CAAA;AAXlC,IAAA,WAAA,GAAA;AAYuB,QAAA,IAAA,CAAA,OAAO,GAAG,eAAe,CAAC,SAAS,CAAC;AACpC,QAAA,IAAA,CAAA,UAAU,GAAG,eAAe,CAAC,qBAAqB,CAAC;AAEtD,QAAA,IAAA,CAAA,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC;AACzB,QAAA,IAAA,CAAA,IAAI,GAAG,KAAK,CAAsB,GAAG,CAAC;AAkBzD;AAhBU,IAAA,MAAM,CAAC,SAAgC,EAAA;QAC1C,IAAI,IAAI,CAAC,WAAW,EAAE,IAAI,SAAS,CAAC,IAAI,EAAE,EAAE;YACxC,IAAI,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,YAAY,CAAC,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACxE,IAAI,CAAC,UAAU,EAAE,CAAC,OAAO,CAAC,CAAC,GAAG,KAAI;AAC9B,gBAAA,IAAI,GAAG,KAAK,SAAS,EAAE;AACnB,oBAAA,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;;AAE3B,aAAC,CAAC;;AAGN,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAEnE,IAAI,MAAM,EAAE;AACR,YAAA,YAAY,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;;;+GApBhD,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAArB,qBAAqB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,SAAA,EAJnB,CAAC,uBAAuB,CAAC,EAAC,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAC,CAAC,CAAC,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,SAAA,EAAA,SAAA,EAKnC,SAAS,EACN,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,YAAA,EAAA,SAAA,EAAA,qBAAqB,6FAV3D,gBAAgB,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,23CAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FAQjB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAXjC,SAAS;AACM,YAAA,IAAA,EAAA,CAAA,EAAA,UAAA,EAAA,IAAI,YACN,eAAe,EAAA,QAAA,EACf,gBAAgB,EAAA,aAAA,EAEX,iBAAiB,CAAC,IAAI,EACpB,eAAA,EAAA,uBAAuB,CAAC,MAAM,EAAA,SAAA,EACpC,CAAC,uBAAuB,CAAC,EAAC,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAC,CAAC,CAAC,EAAA,cAAA,EAChE,CAAC,QAAQ,CAAC,EACpB,IAAA,EAAA,EAAC,kBAAkB,EAAE,QAAQ,EAAC,EAAA,MAAA,EAAA,CAAA,23CAAA,CAAA,EAAA;;;ACjB3B,MAAA,YAAY,GAAG;IACxB,qBAAqB;IACrB,qBAAqB;IACrB,SAAS;IACT,OAAO;;;ACVX;;AAEG;;;;"}