@taiga-ui/kit 4.52.0-canary.e444d19 → 4.52.0-canary.e53e79e

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 (447) hide show
  1. package/README.md +1 -1
  2. package/components/accordion/accordion.component.d.ts +13 -0
  3. package/components/accordion/accordion.d.ts +4 -4
  4. package/components/accordion/accordion.directive.d.ts +11 -10
  5. package/components/accordion/index.d.ts +1 -3
  6. package/components/action-bar/action-bar.component.d.ts +5 -7
  7. package/components/action-bar/index.d.ts +0 -2
  8. package/components/avatar/avatar-outline.directive.d.ts +3 -3
  9. package/components/avatar/avatar.directive.d.ts +15 -0
  10. package/components/avatar/avatar.options.d.ts +1 -4
  11. package/components/avatar/index.d.ts +1 -1
  12. package/components/badge/badge.directive.d.ts +2 -2
  13. package/components/badge/badge.options.d.ts +1 -3
  14. package/components/badge-notification/badge-notification.options.d.ts +1 -3
  15. package/components/block/block.directive.d.ts +4 -4
  16. package/components/block/block.options.d.ts +2 -4
  17. package/components/breadcrumbs/breadcrumbs.options.d.ts +1 -3
  18. package/components/calendar-month/calendar-month.component.d.ts +1 -1
  19. package/components/calendar-month/calendar-month.options.d.ts +1 -1
  20. package/components/calendar-range/calendar-range.component.d.ts +1 -2
  21. package/components/checkbox/checkbox.component.d.ts +7 -18
  22. package/components/checkbox/checkbox.options.d.ts +5 -9
  23. package/components/chip/chip.directive.d.ts +2 -4
  24. package/components/chip/chip.options.d.ts +1 -3
  25. package/components/combo-box/combo-box.d.ts +5 -0
  26. package/components/combo-box/combo-box.directive.d.ts +5 -5
  27. package/components/combo-box/index.d.ts +1 -0
  28. package/components/comment/comment.directive.d.ts +2 -2
  29. package/components/confirm/confirm.component.d.ts +5 -3
  30. package/components/confirm/confirm.service.d.ts +3 -2
  31. package/{directives → components}/copy/copy.component.d.ts +2 -2
  32. package/{directives → components}/copy/copy.directive.d.ts +4 -6
  33. package/{directives → components}/copy/copy.options.d.ts +2 -2
  34. package/components/data-list-wrapper/data-list-group-wrapper.component.d.ts +4 -2
  35. package/components/data-list-wrapper/data-list-wrapper.component.d.ts +14 -22
  36. package/components/data-list-wrapper/{data-list-wrapper.module.d.ts → data-list-wrapper.d.ts} +1 -2
  37. package/components/data-list-wrapper/index.d.ts +1 -1
  38. package/components/elastic-container/elastic-container.component.d.ts +1 -1
  39. package/components/files/file/file.options.d.ts +2 -2
  40. package/components/files/files/files.component.d.ts +2 -2
  41. package/components/files/input-files/input-files.options.d.ts +1 -3
  42. package/components/floating-container/floating-container.directive.d.ts +3 -2
  43. package/components/fullscreen/fullscreen.component.d.ts +14 -0
  44. package/components/fullscreen/index.d.ts +1 -0
  45. package/components/index.d.ts +3 -2
  46. package/components/input-chip/input-chip.component.d.ts +9 -8
  47. package/components/input-chip/input-chip.d.ts +5 -1
  48. package/components/input-chip/input-chip.directive.d.ts +7 -12
  49. package/components/input-chip/input-chip.options.d.ts +1 -1
  50. package/components/input-color/index.d.ts +1 -0
  51. package/components/input-color/input-color.component.d.ts +6 -6
  52. package/components/input-color/input-color.d.ts +5 -0
  53. package/components/input-color/input-color.options.d.ts +1 -1
  54. package/components/input-date/input-date.d.ts +4 -1
  55. package/components/input-date/input-date.directive.d.ts +10 -12
  56. package/components/input-date/input-date.options.d.ts +1 -1
  57. package/components/input-date-multi/input-date-multi.d.ts +1 -2
  58. package/components/input-date-multi/input-date-multi.directive.d.ts +10 -14
  59. package/components/input-date-range/input-date-range.d.ts +4 -1
  60. package/components/input-date-range/input-date-range.directive.d.ts +5 -8
  61. package/components/input-date-time/input-date-time.d.ts +4 -1
  62. package/components/input-date-time/input-date-time.directive.d.ts +6 -6
  63. package/components/input-month/input-month.d.ts +4 -1
  64. package/components/input-month/input-month.directive.d.ts +5 -4
  65. package/components/input-month-range/input-month-range.d.ts +4 -1
  66. package/components/input-month-range/input-month-range.directive.d.ts +5 -4
  67. package/components/input-number/input-number.d.ts +4 -1
  68. package/components/input-number/input-number.directive.d.ts +7 -11
  69. package/components/input-number/input-number.options.d.ts +1 -1
  70. package/components/input-number/quantum.directive.d.ts +1 -1
  71. package/components/input-number/step/input-number-step.component.d.ts +1 -1
  72. package/components/input-phone/index.d.ts +1 -0
  73. package/components/input-phone/input-phone.d.ts +5 -0
  74. package/components/input-phone/input-phone.directive.d.ts +7 -7
  75. package/components/input-phone/input-phone.options.d.ts +1 -1
  76. package/components/input-phone-international/index.d.ts +1 -0
  77. package/components/input-phone-international/input-phone-international.component.d.ts +26 -32
  78. package/components/input-phone-international/input-phone-international.d.ts +5 -0
  79. package/components/input-phone-international/input-phone-international.options.d.ts +1 -3
  80. package/components/input-pin/index.d.ts +1 -0
  81. package/components/input-pin/input-pin.component.d.ts +4 -4
  82. package/components/input-pin/input-pin.d.ts +5 -0
  83. package/components/input-range/input-range.component.d.ts +9 -12
  84. package/components/input-slider/input-slider.d.ts +4 -1
  85. package/components/input-slider/input-slider.directive.d.ts +3 -5
  86. package/components/input-time/input-time.component.d.ts +1 -3
  87. package/components/input-time/input-time.d.ts +4 -1
  88. package/components/input-time/input-time.directive.d.ts +8 -10
  89. package/components/input-time/input-time.options.d.ts +1 -1
  90. package/components/input-year/input-year.d.ts +4 -1
  91. package/components/input-year/input-year.directive.d.ts +5 -5
  92. package/components/like/like.component.d.ts +4 -11
  93. package/components/like/like.options.d.ts +4 -5
  94. package/components/line-clamp/line-clamp-box.component.d.ts +3 -4
  95. package/components/line-clamp/line-clamp.component.d.ts +8 -10
  96. package/components/line-clamp/line-clamp.options.d.ts +1 -3
  97. package/components/multi-select/multi-select-group/multi-select-group.component.d.ts +6 -8
  98. package/components/multi-select/multi-select-option/multi-select-option.component.d.ts +1 -1
  99. package/components/notification-middle/notification-middle.component.d.ts +2 -2
  100. package/components/notification-middle/notification-middle.directive.d.ts +4 -3
  101. package/components/notification-middle/notification-middle.service.d.ts +7 -3
  102. package/components/pager/pager.component.d.ts +1 -1
  103. package/components/pagination/index.d.ts +1 -0
  104. package/components/pagination/pagination.component.d.ts +25 -54
  105. package/components/pagination/pagination.options.d.ts +7 -0
  106. package/components/pin/pin.directive.d.ts +2 -2
  107. package/components/preview/dialog/preview-dialog.component.d.ts +2 -2
  108. package/components/preview/dialog/preview-dialog.directive.d.ts +3 -3
  109. package/components/preview/dialog/preview-dialog.service.d.ts +5 -2
  110. package/components/preview/pagination/preview-pagination.component.d.ts +1 -1
  111. package/components/preview/preview.component.d.ts +1 -1
  112. package/components/preview/preview.d.ts +2 -1
  113. package/components/preview/zoom/preview-zoom.component.d.ts +2 -1
  114. package/components/progress/progress-bar/fixed-gradient/progress-fixed-gradient.directive.d.ts +1 -2
  115. package/components/progress/progress-bar/progress-color-segments.directive.d.ts +4 -4
  116. package/components/progress/progress-segmented/progress-segmented.directive.d.ts +2 -2
  117. package/components/progress/progress.options.d.ts +1 -3
  118. package/components/push/push-alert.component.d.ts +4 -3
  119. package/components/push/push.component.d.ts +2 -2
  120. package/components/push/push.directive.d.ts +4 -6
  121. package/components/push/push.options.d.ts +5 -8
  122. package/components/push/push.service.d.ts +6 -2
  123. package/components/radio/radio.component.d.ts +8 -9
  124. package/components/radio/radio.directive.d.ts +2 -2
  125. package/components/radio/radio.options.d.ts +2 -5
  126. package/components/radio-list/radio-list.component.d.ts +5 -3
  127. package/components/range/range-change.directive.d.ts +1 -2
  128. package/components/range/range.component.d.ts +16 -24
  129. package/components/rating/rating.component.d.ts +5 -5
  130. package/components/rating/rating.options.d.ts +6 -6
  131. package/components/routable-dialog/generate-dialogable-route.d.ts +1 -1
  132. package/components/segmented/segmented.component.d.ts +5 -9
  133. package/components/segmented/segmented.directive.d.ts +6 -7
  134. package/components/select/native-select/native-select.component.d.ts +7 -8
  135. package/components/select/select.d.ts +4 -1
  136. package/components/select/select.directive.d.ts +4 -3
  137. package/components/slider/helpers/key-steps.d.ts +1 -2
  138. package/components/slider/helpers/slider-key-steps.directive.d.ts +12 -21
  139. package/components/slider/slider.options.d.ts +1 -6
  140. package/components/slides/slides.directive.d.ts +4 -4
  141. package/components/status/status.directive.d.ts +2 -2
  142. package/components/stepper/step.component.d.ts +6 -8
  143. package/components/stepper/stepper.component.d.ts +6 -11
  144. package/components/switch/switch.component.d.ts +8 -19
  145. package/components/switch/switch.options.d.ts +4 -8
  146. package/components/tabs/tabs-with-more.component.d.ts +1 -1
  147. package/components/tabs/tabs.options.d.ts +1 -6
  148. package/components/textarea/index.d.ts +2 -1
  149. package/components/textarea/textarea.component.d.ts +4 -4
  150. package/components/textarea/textarea.d.ts +6 -0
  151. package/components/textarea/textarea.directive.d.ts +13 -0
  152. package/components/textarea/textarea.options.d.ts +1 -1
  153. package/components/toast/index.d.ts +5 -0
  154. package/components/toast/toast.component.d.ts +18 -0
  155. package/components/toast/toast.d.ts +3 -0
  156. package/components/toast/toast.directive.d.ts +7 -0
  157. package/components/toast/toast.options.d.ts +10 -0
  158. package/components/toast/toast.service.d.ts +17 -0
  159. package/components/tree/components/tree-item-content/tree-item-content.component.d.ts +8 -1
  160. package/components/tree/misc/tree.constants.d.ts +0 -3
  161. package/components/tree/misc/tree.tokens.d.ts +1 -6
  162. package/directives/button-close/button-close.directive.d.ts +2 -1
  163. package/directives/button-select/button-select.directive.d.ts +4 -4
  164. package/directives/chevron/chevron.directive.d.ts +2 -3
  165. package/directives/data-list-dropdown-manager/data-list-dropdown-manager.directive.d.ts +5 -5
  166. package/directives/fade/fade.directive.d.ts +2 -2
  167. package/directives/fluid-typography/fluid-typography.directive.d.ts +3 -6
  168. package/directives/fluid-typography/fluid-typography.options.d.ts +1 -3
  169. package/directives/highlight/highlight.directive.d.ts +1 -3
  170. package/directives/index.d.ts +0 -2
  171. package/directives/password/password.directive.d.ts +1 -1
  172. package/directives/password/password.options.d.ts +1 -1
  173. package/directives/sensitive/sensitive.directive.d.ts +2 -2
  174. package/directives/shimmer/shimmer.directive.d.ts +3 -3
  175. package/directives/skeleton/skeleton.directive.d.ts +3 -3
  176. package/directives/tooltip/tooltip.directive.d.ts +3 -3
  177. package/directives/tooltip/tooltip.options.d.ts +1 -4
  178. package/fesm2022/taiga-ui-kit-components-accordion.mjs +69 -145
  179. package/fesm2022/taiga-ui-kit-components-accordion.mjs.map +1 -1
  180. package/fesm2022/taiga-ui-kit-components-action-bar.mjs +24 -40
  181. package/fesm2022/taiga-ui-kit-components-action-bar.mjs.map +1 -1
  182. package/fesm2022/taiga-ui-kit-components-avatar.mjs +62 -80
  183. package/fesm2022/taiga-ui-kit-components-avatar.mjs.map +1 -1
  184. package/fesm2022/taiga-ui-kit-components-badge-notification.mjs +7 -12
  185. package/fesm2022/taiga-ui-kit-components-badge-notification.mjs.map +1 -1
  186. package/fesm2022/taiga-ui-kit-components-badge.mjs +16 -27
  187. package/fesm2022/taiga-ui-kit-components-badge.mjs.map +1 -1
  188. package/fesm2022/taiga-ui-kit-components-badged-content.mjs +6 -7
  189. package/fesm2022/taiga-ui-kit-components-badged-content.mjs.map +1 -1
  190. package/fesm2022/taiga-ui-kit-components-block.mjs +20 -31
  191. package/fesm2022/taiga-ui-kit-components-block.mjs.map +1 -1
  192. package/fesm2022/taiga-ui-kit-components-breadcrumbs.mjs +12 -18
  193. package/fesm2022/taiga-ui-kit-components-breadcrumbs.mjs.map +1 -1
  194. package/fesm2022/taiga-ui-kit-components-button-loading.mjs +6 -6
  195. package/fesm2022/taiga-ui-kit-components-button-loading.mjs.map +1 -1
  196. package/fesm2022/taiga-ui-kit-components-calendar-month.mjs +6 -17
  197. package/fesm2022/taiga-ui-kit-components-calendar-month.mjs.map +1 -1
  198. package/fesm2022/taiga-ui-kit-components-calendar-range.mjs +7 -8
  199. package/fesm2022/taiga-ui-kit-components-calendar-range.mjs.map +1 -1
  200. package/fesm2022/taiga-ui-kit-components-carousel.mjs +17 -23
  201. package/fesm2022/taiga-ui-kit-components-carousel.mjs.map +1 -1
  202. package/fesm2022/taiga-ui-kit-components-checkbox.mjs +18 -76
  203. package/fesm2022/taiga-ui-kit-components-checkbox.mjs.map +1 -1
  204. package/fesm2022/taiga-ui-kit-components-chip.mjs +25 -34
  205. package/fesm2022/taiga-ui-kit-components-chip.mjs.map +1 -1
  206. package/fesm2022/taiga-ui-kit-components-combo-box.mjs +42 -32
  207. package/fesm2022/taiga-ui-kit-components-combo-box.mjs.map +1 -1
  208. package/fesm2022/taiga-ui-kit-components-comment.mjs +13 -20
  209. package/fesm2022/taiga-ui-kit-components-comment.mjs.map +1 -1
  210. package/fesm2022/taiga-ui-kit-components-compass.mjs +5 -5
  211. package/fesm2022/taiga-ui-kit-components-compass.mjs.map +1 -1
  212. package/fesm2022/taiga-ui-kit-components-confirm.mjs +14 -17
  213. package/fesm2022/taiga-ui-kit-components-confirm.mjs.map +1 -1
  214. package/fesm2022/taiga-ui-kit-components-copy.mjs +113 -0
  215. package/fesm2022/taiga-ui-kit-components-copy.mjs.map +1 -0
  216. package/fesm2022/taiga-ui-kit-components-data-list-wrapper.mjs +25 -78
  217. package/fesm2022/taiga-ui-kit-components-data-list-wrapper.mjs.map +1 -1
  218. package/fesm2022/taiga-ui-kit-components-drawer.mjs +5 -5
  219. package/fesm2022/taiga-ui-kit-components-drawer.mjs.map +1 -1
  220. package/fesm2022/taiga-ui-kit-components-elastic-container.mjs +8 -12
  221. package/fesm2022/taiga-ui-kit-components-elastic-container.mjs.map +1 -1
  222. package/fesm2022/taiga-ui-kit-components-files.mjs +43 -50
  223. package/fesm2022/taiga-ui-kit-components-files.mjs.map +1 -1
  224. package/fesm2022/taiga-ui-kit-components-filter.mjs +5 -5
  225. package/fesm2022/taiga-ui-kit-components-filter.mjs.map +1 -1
  226. package/fesm2022/taiga-ui-kit-components-floating-container.mjs +16 -19
  227. package/fesm2022/taiga-ui-kit-components-floating-container.mjs.map +1 -1
  228. package/fesm2022/taiga-ui-kit-components-fullscreen.mjs +63 -0
  229. package/fesm2022/taiga-ui-kit-components-fullscreen.mjs.map +1 -0
  230. package/fesm2022/taiga-ui-kit-components-input-chip.mjs +79 -79
  231. package/fesm2022/taiga-ui-kit-components-input-chip.mjs.map +1 -1
  232. package/fesm2022/taiga-ui-kit-components-input-color.mjs +28 -19
  233. package/fesm2022/taiga-ui-kit-components-input-color.mjs.map +1 -1
  234. package/fesm2022/taiga-ui-kit-components-input-date-multi.mjs +35 -52
  235. package/fesm2022/taiga-ui-kit-components-input-date-multi.mjs.map +1 -1
  236. package/fesm2022/taiga-ui-kit-components-input-date-range.mjs +27 -32
  237. package/fesm2022/taiga-ui-kit-components-input-date-range.mjs.map +1 -1
  238. package/fesm2022/taiga-ui-kit-components-input-date-time.mjs +32 -29
  239. package/fesm2022/taiga-ui-kit-components-input-date-time.mjs.map +1 -1
  240. package/fesm2022/taiga-ui-kit-components-input-date.mjs +45 -48
  241. package/fesm2022/taiga-ui-kit-components-input-date.mjs.map +1 -1
  242. package/fesm2022/taiga-ui-kit-components-input-inline.mjs +4 -5
  243. package/fesm2022/taiga-ui-kit-components-input-inline.mjs.map +1 -1
  244. package/fesm2022/taiga-ui-kit-components-input-month-range.mjs +25 -19
  245. package/fesm2022/taiga-ui-kit-components-input-month-range.mjs.map +1 -1
  246. package/fesm2022/taiga-ui-kit-components-input-month.mjs +28 -22
  247. package/fesm2022/taiga-ui-kit-components-input-month.mjs.map +1 -1
  248. package/fesm2022/taiga-ui-kit-components-input-number.mjs +60 -77
  249. package/fesm2022/taiga-ui-kit-components-input-number.mjs.map +1 -1
  250. package/fesm2022/taiga-ui-kit-components-input-phone-international.mjs +122 -138
  251. package/fesm2022/taiga-ui-kit-components-input-phone-international.mjs.map +1 -1
  252. package/fesm2022/taiga-ui-kit-components-input-phone.mjs +32 -23
  253. package/fesm2022/taiga-ui-kit-components-input-phone.mjs.map +1 -1
  254. package/fesm2022/taiga-ui-kit-components-input-pin.mjs +20 -11
  255. package/fesm2022/taiga-ui-kit-components-input-pin.mjs.map +1 -1
  256. package/fesm2022/taiga-ui-kit-components-input-range.mjs +33 -29
  257. package/fesm2022/taiga-ui-kit-components-input-range.mjs.map +1 -1
  258. package/fesm2022/taiga-ui-kit-components-input-slider.mjs +36 -45
  259. package/fesm2022/taiga-ui-kit-components-input-slider.mjs.map +1 -1
  260. package/fesm2022/taiga-ui-kit-components-input-time.mjs +65 -71
  261. package/fesm2022/taiga-ui-kit-components-input-time.mjs.map +1 -1
  262. package/fesm2022/taiga-ui-kit-components-input-year.mjs +27 -19
  263. package/fesm2022/taiga-ui-kit-components-input-year.mjs.map +1 -1
  264. package/fesm2022/taiga-ui-kit-components-items-with-more.mjs +14 -16
  265. package/fesm2022/taiga-ui-kit-components-items-with-more.mjs.map +1 -1
  266. package/fesm2022/taiga-ui-kit-components-like.mjs +40 -33
  267. package/fesm2022/taiga-ui-kit-components-like.mjs.map +1 -1
  268. package/fesm2022/taiga-ui-kit-components-line-clamp.mjs +38 -82
  269. package/fesm2022/taiga-ui-kit-components-line-clamp.mjs.map +1 -1
  270. package/fesm2022/taiga-ui-kit-components-message.mjs +9 -12
  271. package/fesm2022/taiga-ui-kit-components-message.mjs.map +1 -1
  272. package/fesm2022/taiga-ui-kit-components-multi-select.mjs +37 -48
  273. package/fesm2022/taiga-ui-kit-components-multi-select.mjs.map +1 -1
  274. package/fesm2022/taiga-ui-kit-components-notification-middle.mjs +37 -33
  275. package/fesm2022/taiga-ui-kit-components-notification-middle.mjs.map +1 -1
  276. package/fesm2022/taiga-ui-kit-components-pager.mjs +7 -9
  277. package/fesm2022/taiga-ui-kit-components-pager.mjs.map +1 -1
  278. package/fesm2022/taiga-ui-kit-components-pagination.mjs +69 -140
  279. package/fesm2022/taiga-ui-kit-components-pagination.mjs.map +1 -1
  280. package/fesm2022/taiga-ui-kit-components-pin.mjs +15 -19
  281. package/fesm2022/taiga-ui-kit-components-pin.mjs.map +1 -1
  282. package/fesm2022/taiga-ui-kit-components-preview.mjs +59 -50
  283. package/fesm2022/taiga-ui-kit-components-preview.mjs.map +1 -1
  284. package/fesm2022/taiga-ui-kit-components-progress.mjs +76 -81
  285. package/fesm2022/taiga-ui-kit-components-progress.mjs.map +1 -1
  286. package/fesm2022/taiga-ui-kit-components-pulse.mjs +4 -4
  287. package/fesm2022/taiga-ui-kit-components-pulse.mjs.map +1 -1
  288. package/fesm2022/taiga-ui-kit-components-push.mjs +49 -57
  289. package/fesm2022/taiga-ui-kit-components-push.mjs.map +1 -1
  290. package/fesm2022/taiga-ui-kit-components-radio-list.mjs +8 -8
  291. package/fesm2022/taiga-ui-kit-components-radio-list.mjs.map +1 -1
  292. package/fesm2022/taiga-ui-kit-components-radio.mjs +35 -41
  293. package/fesm2022/taiga-ui-kit-components-radio.mjs.map +1 -1
  294. package/fesm2022/taiga-ui-kit-components-range.mjs +41 -85
  295. package/fesm2022/taiga-ui-kit-components-range.mjs.map +1 -1
  296. package/fesm2022/taiga-ui-kit-components-rating.mjs +19 -28
  297. package/fesm2022/taiga-ui-kit-components-rating.mjs.map +1 -1
  298. package/fesm2022/taiga-ui-kit-components-routable-dialog.mjs +11 -7
  299. package/fesm2022/taiga-ui-kit-components-routable-dialog.mjs.map +1 -1
  300. package/fesm2022/taiga-ui-kit-components-segmented.mjs +32 -59
  301. package/fesm2022/taiga-ui-kit-components-segmented.mjs.map +1 -1
  302. package/fesm2022/taiga-ui-kit-components-select.mjs +82 -62
  303. package/fesm2022/taiga-ui-kit-components-select.mjs.map +1 -1
  304. package/fesm2022/taiga-ui-kit-components-slider.mjs +74 -82
  305. package/fesm2022/taiga-ui-kit-components-slider.mjs.map +1 -1
  306. package/fesm2022/taiga-ui-kit-components-slides.mjs +16 -24
  307. package/fesm2022/taiga-ui-kit-components-slides.mjs.map +1 -1
  308. package/fesm2022/taiga-ui-kit-components-status.mjs +12 -16
  309. package/fesm2022/taiga-ui-kit-components-status.mjs.map +1 -1
  310. package/fesm2022/taiga-ui-kit-components-stepper.mjs +45 -79
  311. package/fesm2022/taiga-ui-kit-components-stepper.mjs.map +1 -1
  312. package/fesm2022/taiga-ui-kit-components-switch.mjs +22 -64
  313. package/fesm2022/taiga-ui-kit-components-switch.mjs.map +1 -1
  314. package/fesm2022/taiga-ui-kit-components-tabs.mjs +36 -47
  315. package/fesm2022/taiga-ui-kit-components-tabs.mjs.map +1 -1
  316. package/fesm2022/taiga-ui-kit-components-textarea.mjs +54 -62
  317. package/fesm2022/taiga-ui-kit-components-textarea.mjs.map +1 -1
  318. package/fesm2022/taiga-ui-kit-components-tiles.mjs +14 -15
  319. package/fesm2022/taiga-ui-kit-components-tiles.mjs.map +1 -1
  320. package/fesm2022/taiga-ui-kit-components-toast.mjs +164 -0
  321. package/fesm2022/taiga-ui-kit-components-toast.mjs.map +1 -0
  322. package/fesm2022/taiga-ui-kit-components-tree.mjs +59 -63
  323. package/fesm2022/taiga-ui-kit-components-tree.mjs.map +1 -1
  324. package/fesm2022/taiga-ui-kit-components.mjs +3 -2
  325. package/fesm2022/taiga-ui-kit-components.mjs.map +1 -1
  326. package/fesm2022/taiga-ui-kit-directives-button-close.mjs +15 -7
  327. package/fesm2022/taiga-ui-kit-directives-button-close.mjs.map +1 -1
  328. package/fesm2022/taiga-ui-kit-directives-button-group.mjs +9 -12
  329. package/fesm2022/taiga-ui-kit-directives-button-group.mjs.map +1 -1
  330. package/fesm2022/taiga-ui-kit-directives-button-select.mjs +20 -19
  331. package/fesm2022/taiga-ui-kit-directives-button-select.mjs.map +1 -1
  332. package/fesm2022/taiga-ui-kit-directives-chevron.mjs +16 -22
  333. package/fesm2022/taiga-ui-kit-directives-chevron.mjs.map +1 -1
  334. package/fesm2022/taiga-ui-kit-directives-connected.mjs +9 -15
  335. package/fesm2022/taiga-ui-kit-directives-connected.mjs.map +1 -1
  336. package/fesm2022/taiga-ui-kit-directives-data-list-dropdown-manager.mjs +25 -53
  337. package/fesm2022/taiga-ui-kit-directives-data-list-dropdown-manager.mjs.map +1 -1
  338. package/fesm2022/taiga-ui-kit-directives-fade.mjs +15 -17
  339. package/fesm2022/taiga-ui-kit-directives-fade.mjs.map +1 -1
  340. package/fesm2022/taiga-ui-kit-directives-fluid-typography.mjs +14 -27
  341. package/fesm2022/taiga-ui-kit-directives-fluid-typography.mjs.map +1 -1
  342. package/fesm2022/taiga-ui-kit-directives-highlight.mjs +3 -4
  343. package/fesm2022/taiga-ui-kit-directives-highlight.mjs.map +1 -1
  344. package/fesm2022/taiga-ui-kit-directives-password.mjs +14 -16
  345. package/fesm2022/taiga-ui-kit-directives-password.mjs.map +1 -1
  346. package/fesm2022/taiga-ui-kit-directives-present.mjs +3 -4
  347. package/fesm2022/taiga-ui-kit-directives-present.mjs.map +1 -1
  348. package/fesm2022/taiga-ui-kit-directives-sensitive.mjs +13 -18
  349. package/fesm2022/taiga-ui-kit-directives-sensitive.mjs.map +1 -1
  350. package/fesm2022/taiga-ui-kit-directives-shimmer.mjs +24 -34
  351. package/fesm2022/taiga-ui-kit-directives-shimmer.mjs.map +1 -1
  352. package/fesm2022/taiga-ui-kit-directives-skeleton.mjs +28 -38
  353. package/fesm2022/taiga-ui-kit-directives-skeleton.mjs.map +1 -1
  354. package/fesm2022/taiga-ui-kit-directives-tooltip.mjs +17 -22
  355. package/fesm2022/taiga-ui-kit-directives-tooltip.mjs.map +1 -1
  356. package/fesm2022/taiga-ui-kit-directives-unfinished-validator.mjs +6 -8
  357. package/fesm2022/taiga-ui-kit-directives-unfinished-validator.mjs.map +1 -1
  358. package/fesm2022/taiga-ui-kit-directives-unmask-handler.mjs +4 -5
  359. package/fesm2022/taiga-ui-kit-directives-unmask-handler.mjs.map +1 -1
  360. package/fesm2022/taiga-ui-kit-directives.mjs +0 -2
  361. package/fesm2022/taiga-ui-kit-directives.mjs.map +1 -1
  362. package/fesm2022/taiga-ui-kit-pipes-auto-color.mjs +43 -0
  363. package/fesm2022/taiga-ui-kit-pipes-auto-color.mjs.map +1 -0
  364. package/fesm2022/taiga-ui-kit-pipes-emails.mjs +3 -4
  365. package/fesm2022/taiga-ui-kit-pipes-emails.mjs.map +1 -1
  366. package/fesm2022/taiga-ui-kit-pipes-filter-by-input.mjs +12 -25
  367. package/fesm2022/taiga-ui-kit-pipes-filter-by-input.mjs.map +1 -1
  368. package/fesm2022/taiga-ui-kit-pipes-flag.mjs +31 -0
  369. package/fesm2022/taiga-ui-kit-pipes-flag.mjs.map +1 -0
  370. package/fesm2022/taiga-ui-kit-pipes-hide-selected.mjs +4 -5
  371. package/fesm2022/taiga-ui-kit-pipes-hide-selected.mjs.map +1 -1
  372. package/fesm2022/taiga-ui-kit-pipes-initials.mjs +28 -0
  373. package/fesm2022/taiga-ui-kit-pipes-initials.mjs.map +1 -0
  374. package/fesm2022/taiga-ui-kit-pipes-sort-countries.mjs +5 -5
  375. package/fesm2022/taiga-ui-kit-pipes-sort-countries.mjs.map +1 -1
  376. package/fesm2022/taiga-ui-kit-pipes-stringify-content.mjs +3 -4
  377. package/fesm2022/taiga-ui-kit-pipes-stringify-content.mjs.map +1 -1
  378. package/fesm2022/taiga-ui-kit-pipes-stringify.mjs +3 -4
  379. package/fesm2022/taiga-ui-kit-pipes-stringify.mjs.map +1 -1
  380. package/fesm2022/taiga-ui-kit-pipes.mjs +3 -1
  381. package/fesm2022/taiga-ui-kit-pipes.mjs.map +1 -1
  382. package/fesm2022/taiga-ui-kit-tokens.mjs +7 -25
  383. package/fesm2022/taiga-ui-kit-tokens.mjs.map +1 -1
  384. package/fesm2022/taiga-ui-kit-utils.mjs +2 -8
  385. package/fesm2022/taiga-ui-kit-utils.mjs.map +1 -1
  386. package/package.json +53 -49
  387. package/pipes/auto-color/auto-color.pipe.d.ts +13 -0
  388. package/pipes/auto-color/index.d.ts +1 -0
  389. package/pipes/filter-by-input/filter-by-input.pipe.d.ts +2 -2
  390. package/pipes/flag/flag.pipe.d.ts +14 -0
  391. package/pipes/flag/index.d.ts +1 -0
  392. package/pipes/index.d.ts +3 -1
  393. package/pipes/initials/index.d.ts +1 -0
  394. package/pipes/initials/initials.pipe.d.ts +7 -0
  395. package/pipes/stringify-content/stringify-content.pipe.d.ts +2 -3
  396. package/styles/components/avatar.less +188 -0
  397. package/styles/components/badge.less +1 -0
  398. package/styles/components/checkbox.less +14 -12
  399. package/styles/components/chip.less +12 -3
  400. package/styles/components/like.less +4 -9
  401. package/styles/components/pin.less +3 -7
  402. package/styles/components/radio.less +1 -1
  403. package/styles/components/switch.less +9 -9
  404. package/styles/components/toast.less +44 -0
  405. package/tokens/i18n.d.ts +25 -26
  406. package/tokens/index.d.ts +0 -1
  407. package/tokens/input-date-options.d.ts +1 -1
  408. package/tokens/items-handlers.d.ts +1 -7
  409. package/tokens/preview-icons.d.ts +1 -3
  410. package/utils/index.d.ts +0 -1
  411. package/components/accordion/accordion-item-content.directive.d.ts +0 -6
  412. package/components/accordion/accordion-item-eager-content.directive.d.ts +0 -5
  413. package/components/accordion/accordion-item.component.d.ts +0 -25
  414. package/components/action-bar/action-bar.d.ts +0 -3
  415. package/components/action-bar/action-bar.directive.d.ts +0 -6
  416. package/components/avatar/avatar.component.d.ts +0 -15
  417. package/components/input-password/index.d.ts +0 -2
  418. package/components/input-password/input-password.component.d.ts +0 -16
  419. package/components/input-password/input-password.options.d.ts +0 -24
  420. package/components/pdf-viewer/index.d.ts +0 -4
  421. package/components/pdf-viewer/pdf-viewer.component.d.ts +0 -12
  422. package/components/pdf-viewer/pdf-viewer.directive.d.ts +0 -7
  423. package/components/pdf-viewer/pdf-viewer.options.d.ts +0 -13
  424. package/components/pdf-viewer/pdf-viewer.service.d.ts +0 -13
  425. package/components/textarea/textarea-limit.directive.d.ts +0 -27
  426. package/directives/lazy-loading/index.d.ts +0 -2
  427. package/directives/lazy-loading/lazy-loading.directive.d.ts +0 -18
  428. package/directives/lazy-loading/lazy-loading.service.d.ts +0 -12
  429. package/fesm2022/taiga-ui-kit-components-input-password.mjs +0 -95
  430. package/fesm2022/taiga-ui-kit-components-input-password.mjs.map +0 -1
  431. package/fesm2022/taiga-ui-kit-components-pdf-viewer.mjs +0 -83
  432. package/fesm2022/taiga-ui-kit-components-pdf-viewer.mjs.map +0 -1
  433. package/fesm2022/taiga-ui-kit-components-preview-dialog.mjs +0 -64
  434. package/fesm2022/taiga-ui-kit-components-preview-dialog.mjs.map +0 -1
  435. package/fesm2022/taiga-ui-kit-directives-copy.mjs +0 -121
  436. package/fesm2022/taiga-ui-kit-directives-copy.mjs.map +0 -1
  437. package/fesm2022/taiga-ui-kit-directives-lazy-loading.mjs +0 -81
  438. package/fesm2022/taiga-ui-kit-directives-lazy-loading.mjs.map +0 -1
  439. package/fesm2022/taiga-ui-kit-pipes-field-error.mjs +0 -147
  440. package/fesm2022/taiga-ui-kit-pipes-field-error.mjs.map +0 -1
  441. package/pipes/field-error/field-error-content-pipe.d.ts +0 -14
  442. package/pipes/field-error/field-error-pipe.d.ts +0 -29
  443. package/pipes/field-error/index.d.ts +0 -2
  444. package/tokens/validation-errors.d.ts +0 -5
  445. package/utils/phone.d.ts +0 -3
  446. /package/{directives → components}/copy/copy.d.ts +0 -0
  447. /package/{directives → components}/copy/index.d.ts +0 -0
@@ -1,14 +1,14 @@
1
1
  import { type AfterViewInit } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class TuiDataListDropdownManager implements AfterViewInit {
4
+ private readonly destroyRef;
4
5
  private readonly dropdowns;
5
6
  private readonly els;
6
- private readonly destroyRef;
7
+ private readonly elements$;
8
+ private readonly right$;
9
+ private readonly immediate$;
10
+ private readonly debounce$;
7
11
  ngAfterViewInit(): void;
8
- private get elements$();
9
- private get right$();
10
- private get immediate$();
11
- private get debounce$();
12
12
  private notInDropdown;
13
13
  private tryToFocus;
14
14
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiDataListDropdownManager, never>;
@@ -1,7 +1,7 @@
1
1
  import { type TuiOrientation } from '@taiga-ui/core/types';
2
2
  import * as i0 from "@angular/core";
3
- import * as i1 from "@taiga-ui/cdk/directives/transitioned";
4
3
  export declare class TuiFade {
4
+ protected readonly nothing: undefined;
5
5
  lineHeight: string | null;
6
6
  size: string;
7
7
  offset: string;
@@ -9,5 +9,5 @@ export declare class TuiFade {
9
9
  constructor();
10
10
  private isEnd;
11
11
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiFade, never>;
12
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiFade, "[tuiFade]", never, { "lineHeight": { "alias": "tuiFadeHeight"; "required": false; }; "size": { "alias": "tuiFadeSize"; "required": false; }; "offset": { "alias": "tuiFadeOffset"; "required": false; }; "orientation": { "alias": "tuiFade"; "required": false; }; }, {}, never, never, true, [{ directive: typeof i1.TuiTransitioned; inputs: {}; outputs: {}; }]>;
12
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiFade, "[tuiFade]", never, { "lineHeight": { "alias": "tuiFadeHeight"; "required": false; }; "size": { "alias": "tuiFadeSize"; "required": false; }; "offset": { "alias": "tuiFadeOffset"; "required": false; }; "orientation": { "alias": "tuiFade"; "required": false; }; }, {}, never, never, true, never>;
13
13
  }
@@ -1,12 +1,9 @@
1
- import { type OnChanges } from '@angular/core';
2
1
  import * as i0 from "@angular/core";
3
- export declare class TuiFluidTypography implements OnChanges {
4
- private readonly changes$;
2
+ export declare class TuiFluidTypography {
5
3
  private readonly el;
6
4
  private readonly options;
5
+ readonly tuiFluidTypography: import("@angular/core").InputSignal<"" | readonly [min: number, max: number]>;
7
6
  protected readonly sub: import("rxjs").Subscription;
8
- tuiFluidTypography: readonly [min: number, max: number] | '';
9
- ngOnChanges(): void;
10
7
  static ɵfac: i0.ɵɵFactoryDeclaration<TuiFluidTypography, never>;
11
- static ɵdir: i0.ɵɵDirectiveDeclaration<TuiFluidTypography, "[tuiFluidTypography]", never, { "tuiFluidTypography": { "alias": "tuiFluidTypography"; "required": false; }; }, {}, never, never, true, never>;
8
+ static ɵdir: i0.ɵɵDirectiveDeclaration<TuiFluidTypography, "[tuiFluidTypography]", never, { "tuiFluidTypography": { "alias": "tuiFluidTypography"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
12
9
  }
@@ -1,8 +1,6 @@
1
- import { InjectionToken, type Provider } from '@angular/core';
2
1
  export interface TuiFluidTypographyOptions {
3
2
  readonly min: number;
4
3
  readonly max: number;
5
4
  }
6
5
  export declare const TUI_FLUID_TYPOGRAPHY_DEFAULT_OPTIONS: TuiFluidTypographyOptions;
7
- export declare const TUI_FLUID_TYPOGRAPHY_OPTIONS: InjectionToken<TuiFluidTypographyOptions>;
8
- export declare function tuiFluidTypographyOptionsProvider(options: Partial<TuiFluidTypographyOptions>): Provider;
6
+ export declare const TUI_FLUID_TYPOGRAPHY_OPTIONS: import("@angular/core").InjectionToken<TuiFluidTypographyOptions>, tuiFluidTypographyOptionsProvider: (item: Partial<TuiFluidTypographyOptions> | (() => Partial<TuiFluidTypographyOptions>)) => import("@angular/core").FactoryProvider;
@@ -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/lazy-loading';
12
10
  export * from '@taiga-ui/kit/directives/password';
13
11
  export * from '@taiga-ui/kit/directives/present';
14
12
  export * from '@taiga-ui/kit/directives/sensitive';
@@ -1,7 +1,7 @@
1
1
  import { TuiTextfieldComponent } from '@taiga-ui/core/components/textfield';
2
2
  import * as i0 from "@angular/core";
3
3
  import * as i1 from "@taiga-ui/core/directives/appearance";
4
- import * as i2 from "@taiga-ui/core/directives/hint";
4
+ import * as i2 from "@taiga-ui/core/portals/hint";
5
5
  export declare class TuiPassword {
6
6
  private readonly options;
7
7
  private readonly texts;
@@ -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
  }
@@ -2,7 +2,7 @@ import { type DoCheck, type Signal } from '@angular/core';
2
2
  import { type TuiSizeS } from '@taiga-ui/core/types';
3
3
  import * as i0 from "@angular/core";
4
4
  import * as i1 from "@taiga-ui/core/directives/appearance";
5
- import * as i2 from "@taiga-ui/core/directives/hint";
5
+ import * as i2 from "@taiga-ui/core/portals/hint";
6
6
  export declare class TuiTooltip implements DoCheck {
7
7
  private readonly textfield;
8
8
  private readonly isMobile;
@@ -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,171 +1,95 @@
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 * as i1 from '@taiga-ui/core/components/expand';
11
- import { TuiExpand } from '@taiga-ui/core/components/expand';
12
- import { TuiIcon } from '@taiga-ui/core/components/icon';
13
- import { TuiChevron } from '@taiga-ui/kit/directives';
14
- import { PolymorpheusTemplate, PolymorpheusOutlet } from '@taiga-ui/polymorpheus';
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';
15
14
 
16
- class TuiAccordionItemContent extends PolymorpheusTemplate {
17
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAccordionItemContent, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
18
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", type: TuiAccordionItemContent, isStandalone: true, selector: "ng-template[tuiAccordionItemContent]", usesInheritance: true, ngImport: i0 }); }
19
- }
20
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAccordionItemContent, decorators: [{
21
- type: Directive,
22
- args: [{
23
- standalone: true,
24
- selector: 'ng-template[tuiAccordionItemContent]',
25
- }]
26
- }] });
27
-
28
- class TuiAccordionItemEagerContent {
29
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAccordionItemEagerContent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
30
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", 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.16", ngImport: i0, type: TuiAccordionDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
30
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.16", 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 }); }
31
34
  }
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAccordionItemEagerContent, decorators: [{
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.16", ngImport: i0, type: TuiAccordionDirective, decorators: [{
33
36
  type: Directive,
34
37
  args: [{
35
- standalone: true,
36
- selector: '[tuiAccordionItemContent]:not(ng-template)',
38
+ selector: 'button[tuiAccordion]',
39
+ providers: [
40
+ tuiAvatarOptionsProvider({ size: 's' }),
41
+ tuiButtonOptionsProvider({ appearance: 'outline-grayscale' }),
42
+ ],
43
+ hostDirectives: [TuiButton, TuiChevron],
44
+ host: {
45
+ tuiButton: '',
46
+ tuiAccordion: '',
47
+ type: 'button',
48
+ '[class._open]': 'open()',
49
+ '(click)': 'toggle()',
50
+ },
37
51
  }]
38
52
  }] });
39
53
 
40
- class TuiAccordionItem {
54
+ class TuiAccordionComponent {
41
55
  constructor() {
42
- this.cdr = inject(ChangeDetectorRef);
43
- this.noPadding = false;
44
- this.showArrow = true;
45
- this.borders = 'all';
46
- this.size = 'm';
47
- this.disabled = false;
48
- this.disableHover = false;
49
- this.open = false;
50
- this.async = false;
51
- this.openChange = new EventEmitter();
52
- }
53
- close() {
54
- this.updateOpen(false);
55
- this.cdr.markForCheck();
56
- }
57
- onRowToggle() {
58
- if (!this.disabled) {
59
- this.updateOpen(!this.open);
60
- }
56
+ this.expands = contentChildren(TuiExpand);
57
+ this.directives = contentChildren(TuiAccordionDirective);
58
+ this.closeOthers = input(true);
59
+ this.size = input('l');
61
60
  }
62
- onItemKeyDownEsc(event) {
63
- if (!this.open) {
64
- return;
61
+ toggle(directive) {
62
+ if (this.closeOthers() && directive.open()) {
63
+ this.expands().forEach((expand) => tuiSetSignal(expand.expanded, false));
64
+ this.directives().forEach((dir) => {
65
+ if (dir !== directive) {
66
+ dir.open.set(false);
67
+ }
68
+ });
65
69
  }
66
- event.stopPropagation();
67
- this.updateOpen(false);
68
- }
69
- updateOpen(open) {
70
- if (this.open === open) {
71
- return;
70
+ const expand = this.expands()[this.directives().indexOf(directive)];
71
+ if (expand) {
72
+ tuiSetSignal(expand.expanded, !!directive.open());
72
73
  }
73
- this.open = open;
74
- this.openChange.emit(open);
75
74
  }
76
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAccordionItem, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
77
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.15", 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 @if (showArrow) {\n <tui-icon\n class=\"t-icon\"\n [tuiChevron]=\"open\"\n />\n }\n </button>\n <tui-expand\n [async]=\"async\"\n [expanded]=\"open\"\n >\n <ng-template tuiExpandContent>\n @if (lazyContent) {\n <div\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 }\n </ng-template>\n @if (eagerContent) {\n <div class=\"t-content\">\n <ng-content select=\"[tuiAccordionItemContent]:not(ng-template)\" />\n </div>\n }\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:after{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: 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:not([tuiBadge])", inputs: ["background"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
75
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.16", ngImport: i0, type: TuiAccordionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
76
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.2.16", 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 }); }
78
77
  }
79
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAccordionItem, decorators: [{
78
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.16", ngImport: i0, type: TuiAccordionComponent, decorators: [{
80
79
  type: Component,
81
- args: [{ selector: 'tui-accordion-item', imports: [PolymorpheusOutlet, TuiChevron, TuiExpand, TuiIcon], changeDetection: ChangeDetectionStrategy.OnPush, host: {
82
- '[class._no-padding]': 'noPadding',
83
- '[class._has-arrow]': 'showArrow',
84
- '[attr.data-borders]': 'borders',
85
- '[attr.data-size]': 'size',
86
- '[class._disabled]': 'disabled',
87
- }, 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 @if (showArrow) {\n <tui-icon\n class=\"t-icon\"\n [tuiChevron]=\"open\"\n />\n }\n </button>\n <tui-expand\n [async]=\"async\"\n [expanded]=\"open\"\n >\n <ng-template tuiExpandContent>\n @if (lazyContent) {\n <div\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 }\n </ng-template>\n @if (eagerContent) {\n <div class=\"t-content\">\n <ng-content select=\"[tuiAccordionItemContent]:not(ng-template)\" />\n </div>\n }\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:after{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"] }]
88
- }], propDecorators: { eagerContent: [{
89
- type: ContentChild,
90
- args: [TuiAccordionItemEagerContent]
91
- }], lazyContent: [{
92
- type: ContentChild,
93
- args: [TuiAccordionItemContent]
94
- }], noPadding: [{
95
- type: Input
96
- }], showArrow: [{
97
- type: Input
98
- }], borders: [{
99
- type: Input
100
- }], size: [{
101
- type: Input
102
- }], disabled: [{
103
- type: Input
104
- }], disableHover: [{
105
- type: Input
106
- }], open: [{
107
- type: Input
108
- }], async: [{
109
- type: Input
110
- }], openChange: [{
111
- type: Output
112
- }] } });
113
-
114
- class TuiAccordionDirective {
115
- constructor() {
116
- this.destroyRef = inject(DestroyRef);
117
- this.accordionItems = EMPTY_QUERY;
118
- this.closeOthers = true;
119
- // Not using DI options to avoid changed defaults spilling to content
120
- const group = inject(TuiGroup);
121
- group.orientation = 'vertical';
122
- group.collapsed = true;
123
- }
124
- ngAfterContentInit() {
125
- const { accordionItems } = this;
126
- const rows$ = tuiQueryListChanges(accordionItems);
127
- const newOpenRow$ = rows$.pipe(pairwise(), map(([previous, current]) => current.find((item) => !previous.includes(item) && item.open)), filter(tuiIsPresent));
128
- 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));
129
- rowsOpen$.subscribe((currentRow) => {
130
- accordionItems.forEach((row) => {
131
- if (currentRow !== row) {
132
- row.close();
133
- }
134
- });
135
- });
136
- }
137
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAccordionDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
138
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.15", 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 }); }
139
- }
140
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.15", ngImport: i0, type: TuiAccordionDirective, decorators: [{
141
- type: Directive,
142
- args: [{
143
- standalone: true,
144
- selector: 'tui-accordion',
145
- hostDirectives: [
146
- {
147
- directive: TuiGroup,
148
- inputs: ['rounded'],
149
- },
150
- ],
151
- }]
152
- }], ctorParameters: () => [], propDecorators: { accordionItems: [{
153
- type: ContentChildren,
154
- args: [TuiAccordionItem]
155
- }], closeOthers: [{
156
- type: Input
157
- }] } });
80
+ args: [{ 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"] }]
81
+ }] });
158
82
 
159
83
  const TuiAccordion = [
160
- TuiAccordionItem,
84
+ TuiAccordionComponent,
161
85
  TuiAccordionDirective,
162
- TuiAccordionItemContent,
163
- TuiAccordionItemEagerContent,
86
+ TuiExpand,
87
+ TuiItem,
164
88
  ];
165
89
 
166
90
  /**
167
91
  * Generated bundle index. Do not edit.
168
92
  */
169
93
 
170
- export { TuiAccordion, TuiAccordionDirective, TuiAccordionItem, TuiAccordionItemContent, TuiAccordionItemEagerContent };
94
+ export { TuiAccordion, TuiAccordionComponent, TuiAccordionDirective };
171
95
  //# 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 {\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: [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 @if (showArrow) {\n <tui-icon\n class=\"t-icon\"\n [tuiChevron]=\"open\"\n />\n }\n </button>\n <tui-expand\n [async]=\"async\"\n [expanded]=\"open\"\n >\n <ng-template tuiExpandContent>\n @if (lazyContent) {\n <div\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 }\n </ng-template>\n @if (eagerContent) {\n <div class=\"t-content\">\n <ng-content select=\"[tuiAccordionItemContent]:not(ng-template)\" />\n </div>\n }\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":";;;;;;;;;;;;;;;AAOM,MAAO,uBAAwB,SAAQ,oBAE5C,CAAA;+GAFY,uBAAuB,EAAA,IAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAvB,uBAAuB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sCAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAvB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAJnC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,sCAAsC;AACnD,iBAAA;;;MCAY,4BAA4B,CAAA;+GAA5B,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAA5B,4BAA4B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,4CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAA5B,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBAJxC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,4CAA4C;AACzD,iBAAA;;;MC4BY,gBAAgB,CAAA;AAd7B,IAAA,WAAA,GAAA;AAeqB,QAAA,IAAA,CAAA,GAAG,GAAG,MAAM,CAAC,iBAAiB,CAAC;QASzC,IAAS,CAAA,SAAA,GAAG,KAAK;QAGjB,IAAS,CAAA,SAAA,GAAG,IAAI;QAGhB,IAAO,CAAA,OAAA,GAAgC,KAAK;QAG5C,IAAI,CAAA,IAAA,GAAa,GAAG;QAGpB,IAAQ,CAAA,QAAA,GAAG,KAAK;QAGhB,IAAY,CAAA,YAAA,GAAG,KAAK;QAGpB,IAAI,CAAA,IAAA,GAAG,KAAK;QAGZ,IAAK,CAAA,KAAA,GAAG,KAAK;AAGJ,QAAA,IAAA,CAAA,UAAU,GAAG,IAAI,YAAY,EAAW;AA8B3D;IA5BU,KAAK,GAAA;AACR,QAAA,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;AACtB,QAAA,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE;;IAGjB,WAAW,GAAA;AACjB,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAChB,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;AAIzB,IAAA,gBAAgB,CAAC,KAAY,EAAA;AACnC,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACZ;;QAGJ,KAAK,CAAC,eAAe,EAAE;AACvB,QAAA,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;;AAGlB,IAAA,UAAU,CAAC,IAAa,EAAA;AAC5B,QAAA,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE;YACpB;;AAGJ,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI;AAChB,QAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC;;+GA9DrB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,WAAA,EAAA,SAAA,EAAA,WAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,MAAA,EAAA,QAAA,EAAA,UAAA,EAAA,YAAA,EAAA,cAAA,EAAA,IAAA,EAAA,MAAA,EAAA,KAAA,EAAA,OAAA,EAAA,EAAA,OAAA,EAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,mBAAA,EAAA,WAAA,EAAA,kBAAA,EAAA,WAAA,EAAA,mBAAA,EAAA,SAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,cAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAGX,4BAA4B,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,aAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAG5B,uBAAuB,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECvCzC,28CAkDA,EAAA,MAAA,EAAA,CAAA,uiFAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,ED7Bc,kBAAkB,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,EAAA,2BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,UAAU,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAa,OAAO,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,CAAA,YAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAYnD,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAd5B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,oBAAoB,EACrB,OAAA,EAAA,CAAC,kBAAkB,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,CAAC,EAAA,eAAA,EAG5C,uBAAuB,CAAC,MAAM,EACzC,IAAA,EAAA;AACF,wBAAA,qBAAqB,EAAE,WAAW;AAClC,wBAAA,oBAAoB,EAAE,WAAW;AACjC,wBAAA,qBAAqB,EAAE,SAAS;AAChC,wBAAA,kBAAkB,EAAE,MAAM;AAC1B,wBAAA,mBAAmB,EAAE,UAAU;AAClC,qBAAA,EAAA,QAAA,EAAA,28CAAA,EAAA,MAAA,EAAA,CAAA,uiFAAA,CAAA,EAAA;8BAMkB,YAAY,EAAA,CAAA;sBAD9B,YAAY;uBAAC,4BAA4B;gBAIvB,WAAW,EAAA,CAAA;sBAD7B,YAAY;uBAAC,uBAAuB;gBAI9B,SAAS,EAAA,CAAA;sBADf;gBAIM,SAAS,EAAA,CAAA;sBADf;gBAIM,OAAO,EAAA,CAAA;sBADb;gBAIM,IAAI,EAAA,CAAA;sBADV;gBAIM,QAAQ,EAAA,CAAA;sBADd;gBAIM,YAAY,EAAA,CAAA;sBADlB;gBAIM,IAAI,EAAA,CAAA;sBADV;gBAIM,KAAK,EAAA,CAAA;sBADX;gBAIe,UAAU,EAAA,CAAA;sBADzB;;;MEtCQ,qBAAqB,CAAA;AAS9B,IAAA,WAAA,GAAA;AARiB,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;QAG7B,IAAc,CAAA,cAAA,GAAgC,WAAW;QAGrE,IAAW,CAAA,WAAA,GAAG,IAAI;;AAIrB,QAAA,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC;AAE9B,QAAA,KAAK,CAAC,WAAW,GAAG,UAAU;AAC9B,QAAA,KAAK,CAAC,SAAS,GAAG,IAAI;;IAGnB,kBAAkB,GAAA;AACrB,QAAA,MAAM,EAAC,cAAc,EAAC,GAAG,IAAI;AAC7B,QAAA,MAAM,KAAK,GAAG,mBAAmB,CAAC,cAAc,CAAC;QACjD,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAC1B,QAAQ,EAAE,EACV,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC,KACpB,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAChE,EACD,MAAM,CAAC,YAAY,CAAC,CACvB;AACD,QAAA,MAAM,SAAS,GAAG,KAAK,CACnB,KAAK,CAAC,IAAI,CACN,SAAS,CAAC,CAAC,IAAI,KACX,KAAK,CACD,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,KACZ,GAAG,CAAC,UAAU,CAAC,IAAI,CACf,MAAM,CAAC,QAAQ,CAAC,EAChB,GAAG,CAAC,MAAM,GAAG,CAAC,CACjB,CACJ,CACJ,CACJ,CACJ,EACD,WAAW,CACd,CAAC,IAAI,CACF,MAAM,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,EAC9B,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,CACtC;AAED,QAAA,SAAS,CAAC,SAAS,CAAC,CAAC,UAAU,KAAI;AAC/B,YAAA,cAAc,CAAC,OAAO,CAAC,CAAC,GAAG,KAAI;AAC3B,gBAAA,IAAI,UAAU,KAAK,GAAG,EAAE;oBACpB,GAAG,CAAC,KAAK,EAAE;;AAEnB,aAAC,CAAC;AACN,SAAC,CAAC;;+GApDG,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,gJAGb,gBAAgB,EAAA,CAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAAA,IAAA,CAAA,QAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,SAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAHxB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBAVjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,eAAe;AACzB,oBAAA,cAAc,EAAE;AACZ,wBAAA;AACI,4BAAA,SAAS,EAAE,QAAQ;4BACnB,MAAM,EAAE,CAAC,SAAS,CAAC;AACtB,yBAAA;AACJ,qBAAA;AACJ,iBAAA;wDAKsB,cAAc,EAAA,CAAA;sBADhC,eAAe;uBAAC,gBAAgB;gBAI1B,WAAW,EAAA,CAAA;sBADjB;;;AC7BQ,MAAA,YAAY,GAAG;IACxB,gBAAgB;IAChB,qBAAqB;IACrB,uBAAuB;IACvB,4BAA4B;;;ACThC;;AAEG;;;;"}
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 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 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":";;;;;;;;;;;;;;MAuBa,qBAAqB,CAAA;AAflC,IAAA,WAAA,GAAA;AAgBqB,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;kBAfjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,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;AAVlC,IAAA,WAAA,GAAA;AAWuB,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;kBAVjC,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,eAAe,EACf,QAAA,EAAA,gBAAgB,EAEX,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,eAAA,EACpB,uBAAuB,CAAC,MAAM,EACpC,SAAA,EAAA,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;;;AChB3B,MAAA,YAAY,GAAG;IACxB,qBAAqB;IACrB,qBAAqB;IACrB,SAAS;IACT,OAAO;;;ACVX;;AAEG;;;;"}