@accelint/design-toolkit 9.9.2 → 9.10.0

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 (436) hide show
  1. package/catalog-info.yaml +2 -2
  2. package/dist/components/accordion/group.d.ts +2 -2
  3. package/dist/components/accordion/header.d.ts +2 -2
  4. package/dist/components/accordion/index.d.ts +2 -2
  5. package/dist/components/accordion/styles.module.css +19 -3
  6. package/dist/components/accordion/trigger.d.ts +2 -2
  7. package/dist/components/action-bar/index.d.ts +2 -2
  8. package/dist/components/audio/index.d.ts +2 -2
  9. package/dist/components/avatar/context.d.ts +4 -4
  10. package/dist/components/avatar/index.d.ts +2 -2
  11. package/dist/components/badge/context.d.ts +4 -4
  12. package/dist/components/badge/index.d.ts +2 -2
  13. package/dist/components/breadcrumbs/index.d.ts +2 -2
  14. package/dist/components/breadcrumbs/item.d.ts +2 -2
  15. package/dist/components/button/context.d.ts +8 -8
  16. package/dist/components/button/index.d.ts +2 -2
  17. package/dist/components/button/link.d.ts +2 -2
  18. package/dist/components/button/styles.module.css +16 -0
  19. package/dist/components/button/toggle.d.ts +2 -2
  20. package/dist/components/carousel/context.d.ts +40 -0
  21. package/dist/components/carousel/context.js +55 -0
  22. package/dist/components/carousel/context.js.map +1 -0
  23. package/dist/components/carousel/gallery.d.ts +38 -0
  24. package/dist/components/carousel/gallery.js +84 -0
  25. package/dist/components/carousel/gallery.js.map +1 -0
  26. package/dist/components/carousel/index.d.ts +56 -0
  27. package/dist/components/carousel/index.js +66 -0
  28. package/dist/components/carousel/index.js.map +1 -0
  29. package/dist/components/carousel/navigation.d.ts +51 -0
  30. package/dist/components/carousel/navigation.js +82 -0
  31. package/dist/components/carousel/navigation.js.map +1 -0
  32. package/dist/components/carousel/position.d.ts +33 -0
  33. package/dist/components/carousel/position.js +48 -0
  34. package/dist/components/carousel/position.js.map +1 -0
  35. package/dist/components/carousel/select.d.ts +38 -0
  36. package/dist/components/carousel/select.js +69 -0
  37. package/dist/components/carousel/select.js.map +1 -0
  38. package/dist/components/carousel/style.module.css +62 -0
  39. package/dist/components/carousel/types.d.ts +87 -0
  40. package/dist/components/carousel/types.js +12 -0
  41. package/dist/components/carousel/viewer.d.ts +40 -0
  42. package/dist/components/carousel/viewer.js +75 -0
  43. package/dist/components/carousel/viewer.js.map +1 -0
  44. package/dist/components/checkbox/context.d.ts +3 -3
  45. package/dist/components/checkbox/group.d.ts +2 -2
  46. package/dist/components/checkbox/group.js +1 -1
  47. package/dist/components/checkbox/index.d.ts +2 -2
  48. package/dist/components/chip/context.d.ts +4 -4
  49. package/dist/components/chip/deletable.d.ts +2 -2
  50. package/dist/components/chip/index.d.ts +2 -2
  51. package/dist/components/chip/list.d.ts +4 -4
  52. package/dist/components/chip/selectable.d.ts +2 -2
  53. package/dist/components/classification-badge/context.d.ts +4 -4
  54. package/dist/components/classification-badge/index.d.ts +2 -2
  55. package/dist/components/classification-banner/context.d.ts +4 -4
  56. package/dist/components/classification-banner/index.d.ts +2 -2
  57. package/dist/components/clock/index.d.ts +2 -2
  58. package/dist/components/color-picker/index.d.ts +2 -2
  59. package/dist/components/combobox-field/context.d.ts +4 -4
  60. package/dist/components/combobox-field/index.d.ts +2 -2
  61. package/dist/components/combobox-field/index.js +1 -1
  62. package/dist/components/combobox-field/styles.module.css +12 -0
  63. package/dist/components/coordinate-field/context.d.ts +6 -6
  64. package/dist/components/coordinate-field/index.d.ts +2 -2
  65. package/dist/components/coordinate-field/segment.d.ts +2 -2
  66. package/dist/components/date-field/index.d.ts +2 -2
  67. package/dist/components/deferred-collection/index.d.ts +2 -2
  68. package/dist/components/details-list/context.d.ts +4 -4
  69. package/dist/components/details-list/index.d.ts +2 -2
  70. package/dist/components/details-list/label.d.ts +2 -2
  71. package/dist/components/details-list/value.d.ts +2 -2
  72. package/dist/components/dialog/content.d.ts +2 -2
  73. package/dist/components/dialog/context.d.ts +2 -2
  74. package/dist/components/dialog/footer.d.ts +2 -2
  75. package/dist/components/dialog/index.d.ts +2 -2
  76. package/dist/components/dialog/styles.module.css +23 -0
  77. package/dist/components/dialog/title.d.ts +2 -2
  78. package/dist/components/divider/context.d.ts +4 -4
  79. package/dist/components/divider/index.d.ts +2 -2
  80. package/dist/components/drawer/back.d.ts +2 -2
  81. package/dist/components/drawer/close.d.ts +2 -2
  82. package/dist/components/drawer/content.d.ts +2 -2
  83. package/dist/components/drawer/context.d.ts +2 -2
  84. package/dist/components/drawer/footer.d.ts +2 -2
  85. package/dist/components/drawer/header-title.d.ts +2 -2
  86. package/dist/components/drawer/header.d.ts +2 -2
  87. package/dist/components/drawer/index.d.ts +2 -2
  88. package/dist/components/drawer/layout-main.d.ts +2 -2
  89. package/dist/components/drawer/layout.d.ts +2 -2
  90. package/dist/components/drawer/menu-item.d.ts +2 -2
  91. package/dist/components/drawer/menu.d.ts +2 -2
  92. package/dist/components/drawer/panel.d.ts +2 -2
  93. package/dist/components/drawer/styles.module.css +54 -2
  94. package/dist/components/drawer/trigger.d.ts +2 -2
  95. package/dist/components/drawer/view.d.ts +2 -2
  96. package/dist/components/flashcard/index.d.ts +9 -9
  97. package/dist/components/floating-card/context.d.ts +37 -5
  98. package/dist/components/floating-card/context.js +18 -3
  99. package/dist/components/floating-card/context.js.map +1 -1
  100. package/dist/components/floating-card/index.d.ts +51 -1
  101. package/dist/components/floating-card/index.js +41 -11
  102. package/dist/components/floating-card/index.js.map +1 -1
  103. package/dist/components/floating-card/provider.d.ts +94 -17
  104. package/dist/components/floating-card/provider.js +116 -20
  105. package/dist/components/floating-card/provider.js.map +1 -1
  106. package/dist/components/floating-card/styles.module.css +5 -0
  107. package/dist/components/gantt/components/base-elements/point.d.ts +28 -0
  108. package/dist/components/gantt/components/base-elements/point.js +44 -0
  109. package/dist/components/gantt/components/base-elements/point.js.map +1 -0
  110. package/dist/components/gantt/components/base-elements/range.d.ts +30 -0
  111. package/dist/components/gantt/components/base-elements/range.js +51 -0
  112. package/dist/components/gantt/components/base-elements/range.js.map +1 -0
  113. package/dist/components/gantt/components/base-elements/use-point-element-layout/index.d.ts +12 -0
  114. package/dist/components/gantt/components/base-elements/use-point-element-layout/index.js +42 -0
  115. package/dist/components/gantt/components/base-elements/use-point-element-layout/index.js.map +1 -0
  116. package/dist/components/gantt/components/base-elements/use-range-element-layout/index.d.ts +23 -0
  117. package/dist/components/gantt/components/base-elements/use-range-element-layout/index.js +50 -0
  118. package/dist/components/gantt/components/base-elements/use-range-element-layout/index.js.map +1 -0
  119. package/dist/components/gantt/components/containers/external/gantt-content-container/index.d.ts +23 -0
  120. package/dist/components/gantt/components/containers/external/gantt-content-container/index.js +40 -0
  121. package/dist/components/gantt/components/containers/external/gantt-content-container/index.js.map +1 -0
  122. package/dist/components/gantt/components/containers/external/gantt-panel-container/index.d.ts +23 -0
  123. package/dist/components/gantt/components/containers/external/gantt-panel-container/index.js +33 -0
  124. package/dist/components/gantt/components/containers/external/gantt-panel-container/index.js.map +1 -0
  125. package/dist/components/gantt/components/containers/external/styles.module.css +32 -0
  126. package/dist/components/gantt/components/containers/internal/index.d.ts +22 -0
  127. package/dist/components/gantt/components/containers/internal/index.js +35 -0
  128. package/dist/components/gantt/components/containers/internal/index.js.map +1 -0
  129. package/dist/components/gantt/components/containers/internal/layout-container/index.d.ts +22 -0
  130. package/dist/components/gantt/components/containers/internal/layout-container/index.js +27 -0
  131. package/dist/components/gantt/components/containers/internal/layout-container/index.js.map +1 -0
  132. package/dist/components/gantt/components/containers/internal/styles.module.css +35 -0
  133. package/dist/components/gantt/components/containers/internal/virtualized-content-height-container/index.d.ts +22 -0
  134. package/dist/components/gantt/components/containers/internal/virtualized-content-height-container/index.js +38 -0
  135. package/dist/components/gantt/components/containers/internal/virtualized-content-height-container/index.js.map +1 -0
  136. package/dist/components/gantt/components/content-row/block.d.ts +27 -0
  137. package/dist/components/gantt/components/content-row/block.js +39 -0
  138. package/dist/components/gantt/components/content-row/block.js.map +1 -0
  139. package/dist/components/gantt/components/content-row/bracket.d.ts +23 -0
  140. package/dist/components/gantt/components/content-row/bracket.js +48 -0
  141. package/dist/components/gantt/components/content-row/bracket.js.map +1 -0
  142. package/dist/components/gantt/components/content-row/icon-marker.d.ts +27 -0
  143. package/dist/components/gantt/components/content-row/icon-marker.js +41 -0
  144. package/dist/components/gantt/components/content-row/icon-marker.js.map +1 -0
  145. package/dist/components/gantt/components/content-row/index.d.ts +24 -0
  146. package/dist/components/gantt/components/content-row/index.js +32 -0
  147. package/dist/components/gantt/components/content-row/index.js.map +1 -0
  148. package/dist/components/gantt/components/content-row/marker.d.ts +21 -0
  149. package/dist/components/gantt/components/content-row/marker.js +35 -0
  150. package/dist/components/gantt/components/content-row/marker.js.map +1 -0
  151. package/dist/components/gantt/components/content-row/spacer.d.ts +23 -0
  152. package/dist/components/gantt/components/content-row/spacer.js +35 -0
  153. package/dist/components/gantt/components/content-row/spacer.js.map +1 -0
  154. package/dist/components/gantt/components/content-row/styles.module.css +198 -0
  155. package/dist/components/gantt/components/content-row/use-elapsed-percentage/index.d.ts +19 -0
  156. package/dist/components/gantt/components/content-row/use-elapsed-percentage/index.js +27 -0
  157. package/dist/components/gantt/components/content-row/use-elapsed-percentage/index.js.map +1 -0
  158. package/dist/components/gantt/components/content-row/use-is-elapsed/index.d.ts +10 -0
  159. package/dist/components/gantt/components/content-row/use-is-elapsed/index.js +24 -0
  160. package/dist/components/gantt/components/content-row/use-is-elapsed/index.js.map +1 -0
  161. package/dist/components/gantt/components/current-time/index.d.ts +28 -0
  162. package/dist/components/gantt/components/current-time/index.js +63 -0
  163. package/dist/components/gantt/components/current-time/index.js.map +1 -0
  164. package/dist/components/gantt/components/current-time/styles.module.css +42 -0
  165. package/dist/components/gantt/components/current-time/use-current-time-layout/index.d.ts +31 -0
  166. package/dist/components/gantt/components/current-time/use-current-time-layout/index.js +58 -0
  167. package/dist/components/gantt/components/current-time/use-current-time-layout/index.js.map +1 -0
  168. package/dist/components/gantt/components/header/index.d.ts +25 -0
  169. package/dist/components/gantt/components/header/index.js +41 -0
  170. package/dist/components/gantt/components/header/index.js.map +1 -0
  171. package/dist/components/gantt/components/header/styles.module.css +23 -0
  172. package/dist/components/gantt/components/panel-row/index.d.ts +24 -0
  173. package/dist/components/gantt/components/panel-row/index.js +33 -0
  174. package/dist/components/gantt/components/panel-row/index.js.map +1 -0
  175. package/dist/components/gantt/components/panel-row/styles.module.css +24 -0
  176. package/dist/components/gantt/components/rows-virtualizer/index.d.ts +25 -0
  177. package/dist/components/gantt/components/rows-virtualizer/index.js +67 -0
  178. package/dist/components/gantt/components/rows-virtualizer/index.js.map +1 -0
  179. package/dist/components/gantt/components/rows-virtualizer/styles.module.css +30 -0
  180. package/dist/components/gantt/components/rows-virtualizer/use-rendered-rows/index.d.ts +29 -0
  181. package/dist/components/gantt/components/rows-virtualizer/use-rendered-rows/index.js +57 -0
  182. package/dist/components/gantt/components/rows-virtualizer/use-rendered-rows/index.js.map +1 -0
  183. package/dist/components/gantt/components/rows-virtualizer/use-scroll-sync/index.d.ts +10 -0
  184. package/dist/components/gantt/components/rows-virtualizer/use-scroll-sync/index.js +58 -0
  185. package/dist/components/gantt/components/rows-virtualizer/use-scroll-sync/index.js.map +1 -0
  186. package/dist/components/gantt/components/styles.module.css +46 -0
  187. package/dist/components/gantt/components/timeline/index.d.ts +19 -0
  188. package/dist/components/gantt/components/timeline/index.js +45 -0
  189. package/dist/components/gantt/components/timeline/index.js.map +1 -0
  190. package/dist/components/gantt/components/timeline/use-timeline-transform/index.d.ts +29 -0
  191. package/dist/components/gantt/components/timeline/use-timeline-transform/index.js +33 -0
  192. package/dist/components/gantt/components/timeline/use-timeline-transform/index.js.map +1 -0
  193. package/dist/components/gantt/components/timeline-chunk/index.d.ts +25 -0
  194. package/dist/components/gantt/components/timeline-chunk/index.js +43 -0
  195. package/dist/components/gantt/components/timeline-chunk/index.js.map +1 -0
  196. package/dist/components/gantt/constants.d.ts +31 -0
  197. package/dist/components/gantt/constants.js +57 -0
  198. package/dist/components/gantt/constants.js.map +1 -0
  199. package/dist/components/gantt/context/index.d.ts +60 -0
  200. package/dist/components/gantt/context/index.js +78 -0
  201. package/dist/components/gantt/context/index.js.map +1 -0
  202. package/dist/components/gantt/context/store/index.d.ts +45 -0
  203. package/dist/components/gantt/context/store/index.js +42 -0
  204. package/dist/components/gantt/context/store/index.js.map +1 -0
  205. package/dist/components/gantt/context/temporal-data/index.d.ts +48 -0
  206. package/dist/components/gantt/context/temporal-data/index.js +80 -0
  207. package/dist/components/gantt/context/temporal-data/index.js.map +1 -0
  208. package/dist/components/gantt/gantt.d.ts +50 -0
  209. package/dist/components/gantt/gantt.js +51 -0
  210. package/dist/components/gantt/gantt.js.map +1 -0
  211. package/dist/components/gantt/hooks/use-horizontal-scroll-update/index.d.ts +22 -0
  212. package/dist/components/gantt/hooks/use-horizontal-scroll-update/index.js +36 -0
  213. package/dist/components/gantt/hooks/use-horizontal-scroll-update/index.js.map +1 -0
  214. package/dist/components/gantt/hooks/use-layout-subscription/index.d.ts +26 -0
  215. package/dist/components/gantt/hooks/use-layout-subscription/index.js +45 -0
  216. package/dist/components/gantt/hooks/use-layout-subscription/index.js.map +1 -0
  217. package/dist/components/gantt/hooks/use-resize-intersection-effect/index.d.ts +26 -0
  218. package/dist/components/gantt/hooks/use-resize-intersection-effect/index.js +50 -0
  219. package/dist/components/gantt/hooks/use-resize-intersection-effect/index.js.map +1 -0
  220. package/dist/components/gantt/hooks/use-root-element-height/index.d.ts +5 -0
  221. package/dist/components/gantt/hooks/use-root-element-height/index.js +24 -0
  222. package/dist/components/gantt/hooks/use-root-element-height/index.js.map +1 -0
  223. package/dist/components/gantt/hooks/use-scrollbar-height/index.d.ts +5 -0
  224. package/dist/components/gantt/hooks/use-scrollbar-height/index.js +40 -0
  225. package/dist/components/gantt/hooks/use-scrollbar-height/index.js.map +1 -0
  226. package/dist/components/gantt/hooks/use-total-data-region-thresholds/index.d.ts +19 -0
  227. package/dist/components/gantt/hooks/use-total-data-region-thresholds/index.js +87 -0
  228. package/dist/components/gantt/hooks/use-total-data-region-thresholds/index.js.map +1 -0
  229. package/dist/components/gantt/hooks/use-vertical-scroll-update/index.d.ts +22 -0
  230. package/dist/components/gantt/hooks/use-vertical-scroll-update/index.js +38 -0
  231. package/dist/components/gantt/hooks/use-vertical-scroll-update/index.js.map +1 -0
  232. package/dist/components/gantt/public-types.d.ts +31 -0
  233. package/dist/components/gantt/public-types.js +12 -0
  234. package/dist/components/gantt/store.d.ts +51 -0
  235. package/dist/components/gantt/store.js +46 -0
  236. package/dist/components/gantt/store.js.map +1 -0
  237. package/dist/components/gantt/styles.module.css +30 -0
  238. package/dist/components/gantt/types.d.ts +67 -0
  239. package/dist/components/gantt/types.js +12 -0
  240. package/dist/components/gantt/utils/conversions.d.ts +23 -0
  241. package/dist/components/gantt/utils/conversions.js +34 -0
  242. package/dist/components/gantt/utils/conversions.js.map +1 -0
  243. package/dist/components/gantt/utils/dates.d.ts +11 -0
  244. package/dist/components/gantt/utils/dates.js +41 -0
  245. package/dist/components/gantt/utils/dates.js.map +1 -0
  246. package/dist/components/gantt/utils/formatting.d.ts +5 -0
  247. package/dist/components/gantt/utils/formatting.js +54 -0
  248. package/dist/components/gantt/utils/formatting.js.map +1 -0
  249. package/dist/components/gantt/utils/generation.d.ts +19 -0
  250. package/dist/components/gantt/utils/generation.js +37 -0
  251. package/dist/components/gantt/utils/generation.js.map +1 -0
  252. package/dist/components/gantt/utils/helpers.d.ts +26 -0
  253. package/dist/components/gantt/utils/helpers.js +55 -0
  254. package/dist/components/gantt/utils/helpers.js.map +1 -0
  255. package/dist/components/gantt/utils/layout.d.ts +32 -0
  256. package/dist/components/gantt/utils/layout.js +55 -0
  257. package/dist/components/gantt/utils/layout.js.map +1 -0
  258. package/dist/components/gantt/utils/thresholds.d.ts +52 -0
  259. package/dist/components/gantt/utils/thresholds.js +116 -0
  260. package/dist/components/gantt/utils/thresholds.js.map +1 -0
  261. package/dist/components/hero/context.d.ts +2 -2
  262. package/dist/components/hero/index.d.ts +2 -2
  263. package/dist/components/hero/subtitle.d.ts +2 -2
  264. package/dist/components/hero/title.d.ts +2 -2
  265. package/dist/components/hotkey/context.d.ts +4 -4
  266. package/dist/components/hotkey/index.d.ts +2 -2
  267. package/dist/components/hotkey/set.d.ts +2 -2
  268. package/dist/components/icon/context.d.ts +4 -4
  269. package/dist/components/icon/index.d.ts +2 -2
  270. package/dist/components/input/context.d.ts +2 -2
  271. package/dist/components/input/index.d.ts +2 -2
  272. package/dist/components/kanban/card-body.d.ts +2 -2
  273. package/dist/components/kanban/card-header-actions.d.ts +2 -2
  274. package/dist/components/kanban/card-header-title.d.ts +2 -2
  275. package/dist/components/kanban/card-header.d.ts +2 -2
  276. package/dist/components/kanban/card.d.ts +2 -2
  277. package/dist/components/kanban/column-actions.d.ts +2 -2
  278. package/dist/components/kanban/column-container.d.ts +2 -2
  279. package/dist/components/kanban/column-content.d.ts +2 -2
  280. package/dist/components/kanban/column-header-actions.d.ts +2 -2
  281. package/dist/components/kanban/column-header-drag-handle.d.ts +2 -2
  282. package/dist/components/kanban/column-header-title.d.ts +2 -2
  283. package/dist/components/kanban/column-header.d.ts +2 -2
  284. package/dist/components/kanban/column.d.ts +2 -2
  285. package/dist/components/kanban/context.d.ts +2 -2
  286. package/dist/components/kanban/header-actions.d.ts +2 -2
  287. package/dist/components/kanban/header-search.d.ts +2 -2
  288. package/dist/components/kanban/header-title.d.ts +2 -2
  289. package/dist/components/kanban/header.d.ts +2 -2
  290. package/dist/components/kanban/kanban.d.ts +4 -4
  291. package/dist/components/label/context.d.ts +4 -4
  292. package/dist/components/label/index.d.ts +2 -2
  293. package/dist/components/lines/index.d.ts +2 -2
  294. package/dist/components/link/context.d.ts +2 -2
  295. package/dist/components/link/index.d.ts +2 -2
  296. package/dist/components/list/context.d.ts +2 -2
  297. package/dist/components/list/index.d.ts +2 -2
  298. package/dist/components/list/item-content.d.ts +2 -2
  299. package/dist/components/list/item-description.d.ts +2 -2
  300. package/dist/components/list/item-title.d.ts +2 -2
  301. package/dist/components/list/item.d.ts +2 -2
  302. package/dist/components/media-controls/context.d.ts +4 -4
  303. package/dist/components/media-controls/fullscreen-button.d.ts +2 -2
  304. package/dist/components/media-controls/index.d.ts +2 -2
  305. package/dist/components/media-controls/mute-button.d.ts +2 -2
  306. package/dist/components/media-controls/play-button.d.ts +2 -2
  307. package/dist/components/media-controls/playback-rate.d.ts +2 -2
  308. package/dist/components/media-controls/seek-button.d.ts +2 -2
  309. package/dist/components/media-controls/time-display.d.ts +2 -2
  310. package/dist/components/media-controls/time-range.d.ts +2 -2
  311. package/dist/components/media-controls/volume-slider.d.ts +2 -2
  312. package/dist/components/menu/context.d.ts +2 -2
  313. package/dist/components/menu/index.d.ts +2 -2
  314. package/dist/components/menu/item-description.d.ts +2 -2
  315. package/dist/components/menu/item-label.d.ts +2 -2
  316. package/dist/components/menu/item.d.ts +2 -2
  317. package/dist/components/menu/section.d.ts +2 -2
  318. package/dist/components/menu/separator.d.ts +2 -2
  319. package/dist/components/menu/styles.module.css +12 -0
  320. package/dist/components/menu/submenu.d.ts +2 -2
  321. package/dist/components/notice/index.d.ts +2 -2
  322. package/dist/components/notice/index.js +1 -0
  323. package/dist/components/notice/index.js.map +1 -1
  324. package/dist/components/notice/list.d.ts +2 -2
  325. package/dist/components/notice/list.js +10 -1
  326. package/dist/components/notice/list.js.map +1 -1
  327. package/dist/components/notice/notice-icon.d.ts +2 -2
  328. package/dist/components/notice/styles.module.css +27 -0
  329. package/dist/components/options/context.d.ts +2 -2
  330. package/dist/components/options/index.d.ts +2 -2
  331. package/dist/components/options/item-content.d.ts +2 -2
  332. package/dist/components/options/item-description.d.ts +2 -2
  333. package/dist/components/options/item-label.d.ts +2 -2
  334. package/dist/components/options/item.d.ts +2 -2
  335. package/dist/components/options/section.d.ts +2 -2
  336. package/dist/components/pagination/context.d.ts +2 -2
  337. package/dist/components/pagination/index.d.ts +2 -2
  338. package/dist/components/pagination/next.d.ts +2 -2
  339. package/dist/components/pagination/pages.d.ts +2 -2
  340. package/dist/components/pagination/prev.d.ts +2 -2
  341. package/dist/components/popover/content.d.ts +2 -2
  342. package/dist/components/popover/footer.d.ts +2 -2
  343. package/dist/components/popover/index.d.ts +2 -2
  344. package/dist/components/popover/styles.module.css +34 -0
  345. package/dist/components/popover/title.d.ts +2 -2
  346. package/dist/components/popover/trigger.d.ts +2 -2
  347. package/dist/components/query-builder/action-element.d.ts +2 -2
  348. package/dist/components/query-builder/actions.d.ts +4 -4
  349. package/dist/components/query-builder/combinator-selector.d.ts +2 -2
  350. package/dist/components/query-builder/index.d.ts +2 -2
  351. package/dist/components/query-builder/rule-group.d.ts +4 -4
  352. package/dist/components/query-builder/rule.d.ts +2 -2
  353. package/dist/components/query-builder/value-editor.d.ts +2 -2
  354. package/dist/components/query-builder/value-selector.d.ts +2 -2
  355. package/dist/components/query-builder/value-selector.js +1 -1
  356. package/dist/components/radio/context.d.ts +3 -3
  357. package/dist/components/radio/group.d.ts +2 -2
  358. package/dist/components/radio/index.d.ts +2 -2
  359. package/dist/components/search-field/context.d.ts +4 -4
  360. package/dist/components/search-field/index.d.ts +2 -2
  361. package/dist/components/select-field/context.d.ts +4 -4
  362. package/dist/components/select-field/index.d.ts +2 -2
  363. package/dist/components/sidenav/avatar.d.ts +2 -2
  364. package/dist/components/sidenav/content.d.ts +2 -2
  365. package/dist/components/sidenav/context.d.ts +2 -2
  366. package/dist/components/sidenav/footer.d.ts +2 -2
  367. package/dist/components/sidenav/header.d.ts +2 -2
  368. package/dist/components/sidenav/index.d.ts +2 -2
  369. package/dist/components/sidenav/item.d.ts +2 -2
  370. package/dist/components/sidenav/link.d.ts +2 -2
  371. package/dist/components/sidenav/menu-item.d.ts +2 -2
  372. package/dist/components/sidenav/menu.d.ts +2 -2
  373. package/dist/components/sidenav/styles.module.css +10 -2
  374. package/dist/components/sidenav/trigger.d.ts +2 -2
  375. package/dist/components/skeleton/index.d.ts +2 -2
  376. package/dist/components/slider/index.d.ts +2 -2
  377. package/dist/components/status-indicator/index.d.ts +2 -2
  378. package/dist/components/switch/context.d.ts +4 -4
  379. package/dist/components/switch/index.d.ts +2 -2
  380. package/dist/components/switch/styles.module.css +8 -0
  381. package/dist/components/table/body.d.ts +2 -2
  382. package/dist/components/table/cell.d.ts +2 -2
  383. package/dist/components/table/context.d.ts +2 -2
  384. package/dist/components/table/header-cell.d.ts +2 -2
  385. package/dist/components/table/header.d.ts +2 -2
  386. package/dist/components/table/index.d.ts +2 -2
  387. package/dist/components/table/index.js +2 -2
  388. package/dist/components/table/index.js.map +1 -1
  389. package/dist/components/table/row.d.ts +2 -2
  390. package/dist/components/tabs/context.d.ts +6 -6
  391. package/dist/components/tabs/index.d.ts +2 -2
  392. package/dist/components/tabs/list.d.ts +2 -2
  393. package/dist/components/tabs/panel.d.ts +2 -2
  394. package/dist/components/tabs/tab.d.ts +2 -2
  395. package/dist/components/text-area-field/context.d.ts +4 -4
  396. package/dist/components/text-area-field/index.d.ts +2 -2
  397. package/dist/components/text-field/context.d.ts +4 -4
  398. package/dist/components/text-field/index.d.ts +2 -2
  399. package/dist/components/time-field/index.d.ts +2 -2
  400. package/dist/components/tooltip/context.d.ts +2 -2
  401. package/dist/components/tooltip/index.d.ts +2 -2
  402. package/dist/components/tooltip/styles.module.css +35 -0
  403. package/dist/components/tooltip/trigger.d.ts +2 -2
  404. package/dist/components/tree/context.d.ts +3 -3
  405. package/dist/components/tree/index.d.ts +2 -2
  406. package/dist/components/tree/index.js +20 -10
  407. package/dist/components/tree/index.js.map +1 -1
  408. package/dist/components/tree/item-actions.d.ts +2 -2
  409. package/dist/components/tree/item-content.d.ts +2 -2
  410. package/dist/components/tree/item-content.js +3 -2
  411. package/dist/components/tree/item-content.js.map +1 -1
  412. package/dist/components/tree/item-description.d.ts +2 -2
  413. package/dist/components/tree/item-label.d.ts +2 -2
  414. package/dist/components/tree/item-prefix-icon.d.ts +2 -2
  415. package/dist/components/tree/item.d.ts +2 -2
  416. package/dist/components/tree/lines.d.ts +2 -2
  417. package/dist/components/tree/types.d.ts +1 -0
  418. package/dist/components/video/index.d.ts +2 -2
  419. package/dist/components/view-stack/index.d.ts +2 -2
  420. package/dist/components/view-stack/trigger.d.ts +2 -2
  421. package/dist/components/view-stack/view.d.ts +2 -2
  422. package/dist/hooks/use-tree/actions/cache.d.ts +20 -3
  423. package/dist/hooks/use-tree/actions/cache.js +110 -2
  424. package/dist/hooks/use-tree/actions/cache.js.map +1 -1
  425. package/dist/hooks/use-tree/actions/index.d.ts +2 -1
  426. package/dist/hooks/use-tree/actions/index.js +70 -11
  427. package/dist/hooks/use-tree/actions/index.js.map +1 -1
  428. package/dist/hooks/use-tree/state/index.d.ts +20 -1
  429. package/dist/hooks/use-tree/state/index.js +22 -2
  430. package/dist/hooks/use-tree/state/index.js.map +1 -1
  431. package/dist/hooks/use-tree/types.d.ts +14 -0
  432. package/dist/index.d.ts +24 -5
  433. package/dist/index.js +27 -10
  434. package/dist/providers/portal.d.ts +2 -2
  435. package/dist/providers/theme-provider.d.ts +2 -2
  436. package/package.json +64 -6
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { TabProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime97 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime229 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/tabs/tab.d.ts
18
18
 
@@ -38,7 +38,7 @@ import * as react_jsx_runtime97 from "react/jsx-runtime";
38
38
  declare function Tab({
39
39
  ref,
40
40
  ...props
41
- }: TabProps): react_jsx_runtime97.JSX.Element;
41
+ }: TabProps): react_jsx_runtime229.JSX.Element;
42
42
  //#endregion
43
43
  export { Tab };
44
44
  //# sourceMappingURL=tab.d.ts.map
@@ -13,13 +13,13 @@
13
13
  import { ProviderProps } from "../../lib/types.js";
14
14
  import { TextAreaFieldProps } from "./types.js";
15
15
  import "client-only";
16
- import * as react39 from "react";
16
+ import * as react54 from "react";
17
17
  import { ContextValue } from "react-aria-components";
18
- import * as react_jsx_runtime114 from "react/jsx-runtime";
18
+ import * as react_jsx_runtime230 from "react/jsx-runtime";
19
19
 
20
20
  //#region src/components/text-area-field/context.d.ts
21
21
  /** Context for sharing props across TextAreaField components */
22
- declare const TextAreaFieldContext: react39.Context<ContextValue<TextAreaFieldProps, HTMLDivElement>>;
22
+ declare const TextAreaFieldContext: react54.Context<ContextValue<TextAreaFieldProps, HTMLDivElement>>;
23
23
  /**
24
24
  * Sets default props for all TextAreaField components within.
25
25
  *
@@ -42,7 +42,7 @@ declare const TextAreaFieldContext: react39.Context<ContextValue<TextAreaFieldPr
42
42
  declare function TextAreaFieldProvider({
43
43
  children,
44
44
  ...props
45
- }: ProviderProps<TextAreaFieldProps>): react_jsx_runtime114.JSX.Element;
45
+ }: ProviderProps<TextAreaFieldProps>): react_jsx_runtime230.JSX.Element;
46
46
  //#endregion
47
47
  export { TextAreaFieldContext, TextAreaFieldProvider };
48
48
  //# sourceMappingURL=context.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { TextAreaFieldProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime98 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime231 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/text-area-field/index.d.ts
18
18
 
@@ -44,7 +44,7 @@ import * as react_jsx_runtime98 from "react/jsx-runtime";
44
44
  declare function TextAreaField({
45
45
  ref,
46
46
  ...props
47
- }: TextAreaFieldProps): react_jsx_runtime98.JSX.Element;
47
+ }: TextAreaFieldProps): react_jsx_runtime231.JSX.Element;
48
48
  //#endregion
49
49
  export { TextAreaField };
50
50
  //# sourceMappingURL=index.d.ts.map
@@ -13,13 +13,13 @@
13
13
  import { ProviderProps } from "../../lib/types.js";
14
14
  import { TextFieldProps as TextFieldProps$1 } from "./types.js";
15
15
  import "client-only";
16
- import * as react40 from "react";
16
+ import * as react56 from "react";
17
17
  import { ContextValue } from "react-aria-components";
18
- import * as react_jsx_runtime116 from "react/jsx-runtime";
18
+ import * as react_jsx_runtime237 from "react/jsx-runtime";
19
19
 
20
20
  //#region src/components/text-field/context.d.ts
21
21
  /** Context for sharing props across TextField components */
22
- declare const TextFieldContext: react40.Context<ContextValue<TextFieldProps$1, HTMLDivElement>>;
22
+ declare const TextFieldContext: react56.Context<ContextValue<TextFieldProps$1, HTMLDivElement>>;
23
23
  /**
24
24
  * Sets default props for all TextField components within.
25
25
  *
@@ -42,7 +42,7 @@ declare const TextFieldContext: react40.Context<ContextValue<TextFieldProps$1, H
42
42
  declare function TextFieldProvider({
43
43
  children,
44
44
  ...props
45
- }: ProviderProps<TextFieldProps$1>): react_jsx_runtime116.JSX.Element;
45
+ }: ProviderProps<TextFieldProps$1>): react_jsx_runtime237.JSX.Element;
46
46
  //#endregion
47
47
  export { TextFieldContext, TextFieldProvider };
48
48
  //# sourceMappingURL=context.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { TextFieldProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime99 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime233 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/text-field/index.d.ts
18
18
 
@@ -40,7 +40,7 @@ import * as react_jsx_runtime99 from "react/jsx-runtime";
40
40
  declare function TextField({
41
41
  ref,
42
42
  ...props
43
- }: TextFieldProps): react_jsx_runtime99.JSX.Element;
43
+ }: TextFieldProps): react_jsx_runtime233.JSX.Element;
44
44
  //#endregion
45
45
  export { TextField };
46
46
  //# sourceMappingURL=index.d.ts.map
@@ -13,7 +13,7 @@
13
13
  import { TimeFieldProps as TimeFieldProps$1 } from "./types.js";
14
14
  import "client-only";
15
15
  import { TimeValue } from "react-aria-components";
16
- import * as react_jsx_runtime100 from "react/jsx-runtime";
16
+ import * as react_jsx_runtime236 from "react/jsx-runtime";
17
17
 
18
18
  //#region src/components/time-field/index.d.ts
19
19
 
@@ -58,7 +58,7 @@ declare function TimeField<T extends TimeValue>({
58
58
  isRequired,
59
59
  isReadOnly,
60
60
  ...rest
61
- }: TimeFieldProps$1<T>): react_jsx_runtime100.JSX.Element;
61
+ }: TimeFieldProps$1<T>): react_jsx_runtime236.JSX.Element;
62
62
  //#endregion
63
63
  export { TimeField };
64
64
  //# sourceMappingURL=index.d.ts.map
@@ -12,12 +12,12 @@
12
12
 
13
13
  import { TooltipTriggerProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react32 from "react";
15
+ import * as react55 from "react";
16
16
  import { ContextValue } from "react-aria-components";
17
17
 
18
18
  //#region src/components/tooltip/context.d.ts
19
19
  /** Context for sharing props across TooltipTrigger components */
20
- declare const TooltipContext: react32.Context<ContextValue<TooltipTriggerProps, HTMLDivElement>>;
20
+ declare const TooltipContext: react55.Context<ContextValue<TooltipTriggerProps, HTMLDivElement>>;
21
21
  //#endregion
22
22
  export { TooltipContext };
23
23
  //# sourceMappingURL=context.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { TooltipProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime120 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime238 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/tooltip/index.d.ts
18
18
 
@@ -44,7 +44,7 @@ declare function Tooltip({
44
44
  offset,
45
45
  placement,
46
46
  ...props
47
- }: TooltipProps): react_jsx_runtime120.JSX.Element;
47
+ }: TooltipProps): react_jsx_runtime238.JSX.Element;
48
48
  //#endregion
49
49
  export { Tooltip };
50
50
  //# sourceMappingURL=index.d.ts.map
@@ -14,7 +14,42 @@
14
14
 
15
15
  @layer components.l1 {
16
16
  .tooltip {
17
+ --offset: var(--spacing-xxs);
18
+ --offset-neg: calc(var(--spacing-xxs) * -1);
19
+
17
20
  @apply fg-primary-bold rounded-small bg-surface-overlay px-s py-xs text-body-xs shadow-elevation-overlay flex items-center justify-center text-center wrap-break-word select-none;
18
21
  max-width: 160px;
22
+
23
+ @variant motion-safe {
24
+ transition:
25
+ transform var(--animation-duration-normal),
26
+ opacity var(--animation-duration-normal);
27
+
28
+ @variant placement-top {
29
+ --origin: translateY(var(--offset));
30
+ }
31
+
32
+ @variant placement-bottom {
33
+ --origin: translateY(var(--offset-neg));
34
+ }
35
+
36
+ @variant placement-left {
37
+ --origin: translateX(var(--offset));
38
+ }
39
+
40
+ @variant placement-right {
41
+ --origin: translateX(var(--offset-neg));
42
+ }
43
+
44
+ @variant entering {
45
+ transform: var(--origin);
46
+ opacity: 0;
47
+ }
48
+
49
+ @variant exiting {
50
+ transform: var(--origin);
51
+ opacity: 0;
52
+ }
53
+ }
19
54
  }
20
55
  }
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { TooltipTriggerProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime169 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime235 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/tooltip/trigger.d.ts
18
18
 
@@ -38,7 +38,7 @@ import * as react_jsx_runtime169 from "react/jsx-runtime";
38
38
  declare function TooltipTrigger({
39
39
  ref,
40
40
  ...props
41
- }: TooltipTriggerProps): react_jsx_runtime169.JSX.Element;
41
+ }: TooltipTriggerProps): react_jsx_runtime235.JSX.Element;
42
42
  //#endregion
43
43
  export { TooltipTrigger };
44
44
  //# sourceMappingURL=trigger.d.ts.map
@@ -12,13 +12,13 @@
12
12
 
13
13
  import { TreeContextValue, TreeItemContextValue } from "./types.js";
14
14
  import "client-only";
15
- import * as react33 from "react";
15
+ import * as react45 from "react";
16
16
 
17
17
  //#region src/components/tree/context.d.ts
18
18
  /** Context for sharing state across Tree components */
19
- declare const TreeContext: react33.Context<TreeContextValue>;
19
+ declare const TreeContext: react45.Context<TreeContextValue>;
20
20
  /** Context for sharing state within a TreeItem */
21
- declare const TreeItemContext: react33.Context<TreeItemContextValue>;
21
+ declare const TreeItemContext: react45.Context<TreeItemContextValue>;
22
22
  //#endregion
23
23
  export { TreeContext, TreeItemContext };
24
24
  //# sourceMappingURL=context.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { TreeProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime121 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime192 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/tree/index.d.ts
18
18
 
@@ -75,7 +75,7 @@ declare function Tree<T>({
75
75
  onVisibilityChange,
76
76
  onSelectionChange,
77
77
  ...rest
78
- }: TreeProps<T>): react_jsx_runtime121.JSX.Element;
78
+ }: TreeProps<T>): react_jsx_runtime192.JSX.Element;
79
79
  //#endregion
80
80
  export { Tree };
81
81
  //# sourceMappingURL=index.d.ts.map
@@ -30,6 +30,21 @@ const defaultRenderDropIndicator = (target) => {
30
30
  });
31
31
  };
32
32
  /**
33
+ * Helper to collect node state keys from cache tree nodes.
34
+ * Reduces cognitive complexity by extracting the iteration logic.
35
+ */
36
+ function collectNodeKeys(nodes, acc) {
37
+ for (const node of nodes) {
38
+ if (node.isDisabled) acc.disabledKeys?.add(node.key);
39
+ if (node.isExpanded) acc.expandedKeys?.add(node.key);
40
+ if (node.isSelected) acc.selectedKeys?.add(node.key);
41
+ if (node.isVisible) acc.visibleKeys?.add(node.key);
42
+ if (node.isVisibleComputed) acc.visibilityComputedKeys.add(node.key);
43
+ if (node.isIndeterminate) acc.indeterminateKeys.add(node.key);
44
+ }
45
+ return acc;
46
+ }
47
+ /**
33
48
  * Tree - Hierarchical tree view with selection, visibility, and drag-and-drop
34
49
  *
35
50
  * Supports static or dynamic collections with keyboard navigation and accessibility.
@@ -92,23 +107,17 @@ function Tree({ children, className, disabledKeys: disabledKeysProp, dragAndDrop
92
107
  });
93
108
  const cache = useMemo(() => items ? new Cache([...items]) : null, [items]);
94
109
  const nodes = useMemo(() => cache?.getAllNodes(), [cache]);
95
- const { disabledKeys, expandedKeys, selectedKeys, visibleKeys, visibilityComputedKeys } = useMemo(() => {
110
+ const { disabledKeys, expandedKeys, selectedKeys, visibleKeys, visibilityComputedKeys, indeterminateKeys } = useMemo(() => {
96
111
  const acc = {
97
112
  disabledKeys: nodes ? /* @__PURE__ */ new Set() : disabledKeysProp,
98
113
  expandedKeys: nodes ? /* @__PURE__ */ new Set() : expandedKeysProp,
99
114
  selectedKeys: nodes ? /* @__PURE__ */ new Set() : selectedKeysProp,
100
115
  visibleKeys: nodes ? /* @__PURE__ */ new Set() : visibleKeysProp,
101
- visibilityComputedKeys: /* @__PURE__ */ new Set()
116
+ visibilityComputedKeys: /* @__PURE__ */ new Set(),
117
+ indeterminateKeys: /* @__PURE__ */ new Set()
102
118
  };
103
119
  if (!nodes) return acc;
104
- return nodes.reduce((acc$1, { key, isDisabled, isExpanded, isSelected, isVisible, isVisibleComputed }) => {
105
- if (isDisabled) acc$1.disabledKeys?.add(key);
106
- if (isExpanded) acc$1.expandedKeys?.add(key);
107
- if (isSelected) acc$1.selectedKeys?.add(key);
108
- if (isVisible) acc$1.visibleKeys?.add(key);
109
- if (isVisibleComputed) acc$1.visibilityComputedKeys.add(key);
110
- return acc$1;
111
- }, acc);
120
+ return collectNodeKeys(nodes, acc);
112
121
  }, [
113
122
  nodes,
114
123
  disabledKeysProp,
@@ -129,6 +138,7 @@ function Tree({ children, className, disabledKeys: disabledKeysProp, dragAndDrop
129
138
  variant,
130
139
  visibleKeys,
131
140
  visibilityComputedKeys,
141
+ indeterminateKeys,
132
142
  isStatic: typeof children !== "function",
133
143
  onVisibilityChange: onVisibilityChange ?? (() => void 0)
134
144
  },
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["acc","AriaTree","className"],"sources":["../../../src/components/tree/index.tsx"],"sourcesContent":["/*\n * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n'use client';\n\nimport { Cache } from '@/hooks/use-tree/actions/cache';\nimport type { Key, Selection } from '@react-types/shared';\nimport 'client-only';\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport { useMemo } from 'react';\nimport {\n Tree as AriaTree,\n composeRenderProps,\n DropIndicator,\n type DropTarget,\n useDragAndDrop,\n} from 'react-aria-components';\nimport { TreeContext } from './context';\nimport styles from './styles.module.css';\nimport type { TreeProps } from './types';\n\nconst defaultRenderDropIndicator = (target: DropTarget) => {\n const isBetweenItems =\n target.type === 'item' &&\n (target.dropPosition === 'before' || target.dropPosition === 'after');\n return (\n <DropIndicator\n target={target}\n className={\n isBetweenItems ? styles.dropIndicatorBetween : styles.dropIndicator\n }\n />\n );\n};\n\n/**\n * Tree - Hierarchical tree view with selection, visibility, and drag-and-drop\n *\n * Supports static or dynamic collections with keyboard navigation and accessibility.\n *\n * @param props - {@link TreeProps}\n * @param props.children - Tree items or render function for dynamic collections.\n * @param props.className - CSS class for the tree container.\n * @param props.disabledKeys - Set of disabled item keys.\n * @param props.dragAndDropConfig - Configuration for drag and drop behavior.\n * @param props.expandedKeys - Set of expanded item keys.\n * @param props.items - Data source for dynamic collections.\n * @param props.selectedKeys - Set of selected item keys.\n * @param props.showRuleLines - Whether to show connecting lines between items.\n * @param props.showVisibility - Whether to show visibility toggle buttons.\n * @param props.selectionMode - Selection mode for the tree.\n * @param props.variant - Visual density variant.\n * @param props.visibleKeys - Set of visible item keys.\n * @param props.onVisibilityChange - Callback when item visibility changes.\n * @param props.onSelectionChange - Callback when selection changes.\n * @returns The rendered Tree component.\n *\n * @example\n * // Dynamic collection\n * ```tsx\n * <Tree items={items} expandedKeys={expandedKeys}>\n * {(node) => <TreeItem key={node.key}>{node.label}</TreeItem>}\n * </Tree>\n * ```\n *\n * @example\n * ```tsx\n * // Static collection\n * <Tree>\n * <TreeItem id=\"one\" textValue=\"one\">\n * <TreeItemContent>One</TreeItemContent>\n * <TreeItem id=\"two\" textValue=\"two\">\n * <TreeItemContent>Two</TreeItemContent>\n * </TreeItem>\n * </TreeItem>\n * </Tree>\n * ```\n */\nexport function Tree<T>({\n children,\n className,\n disabledKeys: disabledKeysProp,\n dragAndDropConfig,\n expandedKeys: expandedKeysProp,\n items,\n selectedKeys: selectedKeysProp,\n showRuleLines = true,\n showVisibility = true,\n selectionMode = 'multiple',\n variant = 'cozy',\n visibleKeys: visibleKeysProp,\n onVisibilityChange,\n onSelectionChange,\n ...rest\n}: TreeProps<T>) {\n /**\n * A static collection is hard-coded. Dynamic is data-driven from an external source.\n * https://react-spectrum.adobe.com/react-aria/Tree.html#content\n *\n * Controlled state should only be used on a static tree.\n */\n if (\n items &&\n (disabledKeysProp ||\n expandedKeysProp ||\n selectedKeysProp ||\n visibleKeysProp)\n ) {\n throw new Error(\n 'Tree should only be controlled with state from either `items` or keys props, not both',\n );\n }\n\n /**\n * A static tree won't support the node iterator pattern.\n */\n if (!!items !== (typeof children === 'function')) {\n throw new Error(\n 'Tree `items` and node iterator `children` must be used together',\n );\n }\n\n const { dragAndDropHooks } = useDragAndDrop({\n renderDropIndicator: defaultRenderDropIndicator,\n getAllowedDropOperations: () => ['move'],\n getDropOperation: () => 'move',\n ...dragAndDropConfig,\n });\n const cache = useMemo(() => (items ? new Cache([...items]) : null), [items]);\n const nodes = useMemo(() => cache?.getAllNodes(), [cache]);\n const {\n disabledKeys,\n expandedKeys,\n selectedKeys,\n visibleKeys,\n visibilityComputedKeys,\n } = useMemo(() => {\n const acc = {\n disabledKeys: nodes ? new Set<Key>() : disabledKeysProp,\n expandedKeys: nodes ? new Set<Key>() : expandedKeysProp,\n selectedKeys: nodes ? new Set<Key>() : selectedKeysProp,\n visibleKeys: nodes ? new Set<Key>() : visibleKeysProp,\n visibilityComputedKeys: new Set<Key>(),\n };\n\n if (!nodes) {\n return acc;\n }\n\n return nodes.reduce(\n (\n acc,\n {\n key,\n isDisabled,\n isExpanded,\n isSelected,\n isVisible,\n isVisibleComputed,\n },\n ) => {\n if (isDisabled) {\n acc.disabledKeys?.add(key);\n }\n if (isExpanded) {\n acc.expandedKeys?.add(key);\n }\n if (isSelected) {\n acc.selectedKeys?.add(key);\n }\n if (isVisible) {\n acc.visibleKeys?.add(key);\n }\n if (isVisibleComputed) {\n acc.visibilityComputedKeys.add(key);\n }\n return acc;\n },\n acc,\n );\n }, [\n nodes,\n disabledKeysProp,\n expandedKeysProp,\n selectedKeysProp,\n visibleKeysProp,\n ]);\n\n const handleSelectionChange = selectedKeys\n ? (selection: Selection) => {\n if (selection !== 'all') {\n onSelectionChange?.(selection);\n }\n }\n : undefined;\n\n return (\n <TreeContext.Provider\n value={{\n disabledKeys,\n expandedKeys,\n selectedKeys,\n showRuleLines,\n showVisibility,\n variant,\n visibleKeys,\n visibilityComputedKeys,\n isStatic: typeof children !== 'function',\n onVisibilityChange: onVisibilityChange ?? (() => undefined), // TODO: improve\n }}\n >\n <AriaTree\n {...rest}\n className={composeRenderProps(className, (className) =>\n clsx(styles.tree, className),\n )}\n disabledKeys={disabledKeys}\n dragAndDropHooks={dragAndDropHooks}\n expandedKeys={expandedKeys}\n items={items}\n selectedKeys={selectedKeys}\n onSelectionChange={handleSelectionChange}\n selectionMode={selectionMode}\n >\n {children}\n </AriaTree>\n </TreeContext.Provider>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AA6BA,MAAM,8BAA8B,WAAuB;AAIzD,QACE,oBAAC;EACS;EACR,WALF,OAAO,SAAS,WACf,OAAO,iBAAiB,YAAY,OAAO,iBAAiB,WAKxC,OAAO,uBAAuB,OAAO;GAExD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+CN,SAAgB,KAAQ,EACtB,UACA,WACA,cAAc,kBACd,mBACA,cAAc,kBACd,OACA,cAAc,kBACd,gBAAgB,MAChB,iBAAiB,MACjB,gBAAgB,YAChB,UAAU,QACV,aAAa,iBACb,oBACA,mBACA,GAAG,QACY;;;;;;;AAOf,KACE,UACC,oBACC,oBACA,oBACA,iBAEF,OAAM,IAAI,MACR,wFACD;;;;AAMH,KAAI,CAAC,CAAC,WAAW,OAAO,aAAa,YACnC,OAAM,IAAI,MACR,kEACD;CAGH,MAAM,EAAE,qBAAqB,eAAe;EAC1C,qBAAqB;EACrB,gCAAgC,CAAC,OAAO;EACxC,wBAAwB;EACxB,GAAG;EACJ,CAAC;CACF,MAAM,QAAQ,cAAe,QAAQ,IAAI,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,MAAO,CAAC,MAAM,CAAC;CAC5E,MAAM,QAAQ,cAAc,OAAO,aAAa,EAAE,CAAC,MAAM,CAAC;CAC1D,MAAM,EACJ,cACA,cACA,cACA,aACA,2BACE,cAAc;EAChB,MAAM,MAAM;GACV,cAAc,wBAAQ,IAAI,KAAU,GAAG;GACvC,cAAc,wBAAQ,IAAI,KAAU,GAAG;GACvC,cAAc,wBAAQ,IAAI,KAAU,GAAG;GACvC,aAAa,wBAAQ,IAAI,KAAU,GAAG;GACtC,wCAAwB,IAAI,KAAU;GACvC;AAED,MAAI,CAAC,MACH,QAAO;AAGT,SAAO,MAAM,QAET,OACA,EACE,KACA,YACA,YACA,YACA,WACA,wBAEC;AACH,OAAI,WACF,OAAI,cAAc,IAAI,IAAI;AAE5B,OAAI,WACF,OAAI,cAAc,IAAI,IAAI;AAE5B,OAAI,WACF,OAAI,cAAc,IAAI,IAAI;AAE5B,OAAI,UACF,OAAI,aAAa,IAAI,IAAI;AAE3B,OAAI,kBACF,OAAI,uBAAuB,IAAI,IAAI;AAErC,UAAOA;KAET,IACD;IACA;EACD;EACA;EACA;EACA;EACA;EACD,CAAC;CAEF,MAAM,wBAAwB,gBACzB,cAAyB;AACxB,MAAI,cAAc,MAChB,qBAAoB,UAAU;KAGlC;AAEJ,QACE,oBAAC,YAAY;EACX,OAAO;GACL;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA,UAAU,OAAO,aAAa;GAC9B,oBAAoB,6BAA6B;GAClD;YAED,oBAACC;GACC,GAAI;GACJ,WAAW,mBAAmB,YAAY,gBACxC,KAAK,OAAO,MAAMC,YAAU,CAC7B;GACa;GACI;GACJ;GACP;GACO;GACd,mBAAmB;GACJ;GAEd;IACQ;GACU"}
1
+ {"version":3,"file":"index.js","names":["AriaTree","className"],"sources":["../../../src/components/tree/index.tsx"],"sourcesContent":["/*\n * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n'use client';\n\nimport { Cache, type CacheTreeNode } from '@/hooks/use-tree/actions/cache';\nimport type { Key, Selection } from '@react-types/shared';\nimport 'client-only';\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport { useMemo } from 'react';\nimport {\n Tree as AriaTree,\n composeRenderProps,\n DropIndicator,\n type DropTarget,\n useDragAndDrop,\n} from 'react-aria-components';\nimport { TreeContext } from './context';\nimport styles from './styles.module.css';\nimport type { TreeProps } from './types';\n\nconst defaultRenderDropIndicator = (target: DropTarget) => {\n const isBetweenItems =\n target.type === 'item' &&\n (target.dropPosition === 'before' || target.dropPosition === 'after');\n return (\n <DropIndicator\n target={target}\n className={\n isBetweenItems ? styles.dropIndicatorBetween : styles.dropIndicator\n }\n />\n );\n};\n\n/**\n * Helper to collect node state keys from cache tree nodes.\n * Reduces cognitive complexity by extracting the iteration logic.\n */\nfunction collectNodeKeys<T>(\n nodes: MapIterator<CacheTreeNode<T>>,\n acc: {\n disabledKeys?: Set<Key>;\n expandedKeys?: Set<Key>;\n selectedKeys?: Set<Key>;\n visibleKeys?: Set<Key>;\n visibilityComputedKeys: Set<Key>;\n indeterminateKeys: Set<Key>;\n },\n) {\n for (const node of nodes) {\n if (node.isDisabled) {\n acc.disabledKeys?.add(node.key);\n }\n if (node.isExpanded) {\n acc.expandedKeys?.add(node.key);\n }\n if (node.isSelected) {\n acc.selectedKeys?.add(node.key);\n }\n if (node.isVisible) {\n acc.visibleKeys?.add(node.key);\n }\n if (node.isVisibleComputed) {\n acc.visibilityComputedKeys.add(node.key);\n }\n if (node.isIndeterminate) {\n acc.indeterminateKeys.add(node.key);\n }\n }\n return acc;\n}\n\n/**\n * Tree - Hierarchical tree view with selection, visibility, and drag-and-drop\n *\n * Supports static or dynamic collections with keyboard navigation and accessibility.\n *\n * @param props - {@link TreeProps}\n * @param props.children - Tree items or render function for dynamic collections.\n * @param props.className - CSS class for the tree container.\n * @param props.disabledKeys - Set of disabled item keys.\n * @param props.dragAndDropConfig - Configuration for drag and drop behavior.\n * @param props.expandedKeys - Set of expanded item keys.\n * @param props.items - Data source for dynamic collections.\n * @param props.selectedKeys - Set of selected item keys.\n * @param props.showRuleLines - Whether to show connecting lines between items.\n * @param props.showVisibility - Whether to show visibility toggle buttons.\n * @param props.selectionMode - Selection mode for the tree.\n * @param props.variant - Visual density variant.\n * @param props.visibleKeys - Set of visible item keys.\n * @param props.onVisibilityChange - Callback when item visibility changes.\n * @param props.onSelectionChange - Callback when selection changes.\n * @returns The rendered Tree component.\n *\n * @example\n * // Dynamic collection\n * ```tsx\n * <Tree items={items} expandedKeys={expandedKeys}>\n * {(node) => <TreeItem key={node.key}>{node.label}</TreeItem>}\n * </Tree>\n * ```\n *\n * @example\n * ```tsx\n * // Static collection\n * <Tree>\n * <TreeItem id=\"one\" textValue=\"one\">\n * <TreeItemContent>One</TreeItemContent>\n * <TreeItem id=\"two\" textValue=\"two\">\n * <TreeItemContent>Two</TreeItemContent>\n * </TreeItem>\n * </TreeItem>\n * </Tree>\n * ```\n */\nexport function Tree<T>({\n children,\n className,\n disabledKeys: disabledKeysProp,\n dragAndDropConfig,\n expandedKeys: expandedKeysProp,\n items,\n selectedKeys: selectedKeysProp,\n showRuleLines = true,\n showVisibility = true,\n selectionMode = 'multiple',\n variant = 'cozy',\n visibleKeys: visibleKeysProp,\n onVisibilityChange,\n onSelectionChange,\n ...rest\n}: TreeProps<T>) {\n /**\n * A static collection is hard-coded. Dynamic is data-driven from an external source.\n * https://react-spectrum.adobe.com/react-aria/Tree.html#content\n *\n * Controlled state should only be used on a static tree.\n */\n if (\n items &&\n (disabledKeysProp ||\n expandedKeysProp ||\n selectedKeysProp ||\n visibleKeysProp)\n ) {\n throw new Error(\n 'Tree should only be controlled with state from either `items` or keys props, not both',\n );\n }\n\n /**\n * A static tree won't support the node iterator pattern.\n */\n if (!!items !== (typeof children === 'function')) {\n throw new Error(\n 'Tree `items` and node iterator `children` must be used together',\n );\n }\n\n const { dragAndDropHooks } = useDragAndDrop({\n renderDropIndicator: defaultRenderDropIndicator,\n getAllowedDropOperations: () => ['move'],\n getDropOperation: () => 'move',\n ...dragAndDropConfig,\n });\n const cache = useMemo(() => (items ? new Cache([...items]) : null), [items]);\n const nodes = useMemo(() => cache?.getAllNodes(), [cache]);\n const {\n disabledKeys,\n expandedKeys,\n selectedKeys,\n visibleKeys,\n visibilityComputedKeys,\n indeterminateKeys,\n } = useMemo(() => {\n const acc = {\n disabledKeys: nodes ? new Set<Key>() : disabledKeysProp,\n expandedKeys: nodes ? new Set<Key>() : expandedKeysProp,\n selectedKeys: nodes ? new Set<Key>() : selectedKeysProp,\n visibleKeys: nodes ? new Set<Key>() : visibleKeysProp,\n visibilityComputedKeys: new Set<Key>(),\n indeterminateKeys: new Set<Key>(),\n };\n\n if (!nodes) {\n return acc;\n }\n\n return collectNodeKeys<T>(nodes, acc);\n }, [\n nodes,\n disabledKeysProp,\n expandedKeysProp,\n selectedKeysProp,\n visibleKeysProp,\n ]);\n\n const handleSelectionChange = selectedKeys\n ? (selection: Selection) => {\n if (selection !== 'all') {\n onSelectionChange?.(selection);\n }\n }\n : undefined;\n\n return (\n <TreeContext.Provider\n value={{\n disabledKeys,\n expandedKeys,\n selectedKeys,\n showRuleLines,\n showVisibility,\n variant,\n visibleKeys,\n visibilityComputedKeys,\n indeterminateKeys,\n isStatic: typeof children !== 'function',\n onVisibilityChange: onVisibilityChange ?? (() => undefined), // TODO: improve\n }}\n >\n <AriaTree\n {...rest}\n className={composeRenderProps(className, (className) =>\n clsx(styles.tree, className),\n )}\n disabledKeys={disabledKeys}\n dragAndDropHooks={dragAndDropHooks}\n expandedKeys={expandedKeys}\n items={items}\n selectedKeys={selectedKeys}\n onSelectionChange={handleSelectionChange}\n selectionMode={selectionMode}\n >\n {children}\n </AriaTree>\n </TreeContext.Provider>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AA6BA,MAAM,8BAA8B,WAAuB;AAIzD,QACE,oBAAC;EACS;EACR,WALF,OAAO,SAAS,WACf,OAAO,iBAAiB,YAAY,OAAO,iBAAiB,WAKxC,OAAO,uBAAuB,OAAO;GAExD;;;;;;AAQN,SAAS,gBACP,OACA,KAQA;AACA,MAAK,MAAM,QAAQ,OAAO;AACxB,MAAI,KAAK,WACP,KAAI,cAAc,IAAI,KAAK,IAAI;AAEjC,MAAI,KAAK,WACP,KAAI,cAAc,IAAI,KAAK,IAAI;AAEjC,MAAI,KAAK,WACP,KAAI,cAAc,IAAI,KAAK,IAAI;AAEjC,MAAI,KAAK,UACP,KAAI,aAAa,IAAI,KAAK,IAAI;AAEhC,MAAI,KAAK,kBACP,KAAI,uBAAuB,IAAI,KAAK,IAAI;AAE1C,MAAI,KAAK,gBACP,KAAI,kBAAkB,IAAI,KAAK,IAAI;;AAGvC,QAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8CT,SAAgB,KAAQ,EACtB,UACA,WACA,cAAc,kBACd,mBACA,cAAc,kBACd,OACA,cAAc,kBACd,gBAAgB,MAChB,iBAAiB,MACjB,gBAAgB,YAChB,UAAU,QACV,aAAa,iBACb,oBACA,mBACA,GAAG,QACY;;;;;;;AAOf,KACE,UACC,oBACC,oBACA,oBACA,iBAEF,OAAM,IAAI,MACR,wFACD;;;;AAMH,KAAI,CAAC,CAAC,WAAW,OAAO,aAAa,YACnC,OAAM,IAAI,MACR,kEACD;CAGH,MAAM,EAAE,qBAAqB,eAAe;EAC1C,qBAAqB;EACrB,gCAAgC,CAAC,OAAO;EACxC,wBAAwB;EACxB,GAAG;EACJ,CAAC;CACF,MAAM,QAAQ,cAAe,QAAQ,IAAI,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,MAAO,CAAC,MAAM,CAAC;CAC5E,MAAM,QAAQ,cAAc,OAAO,aAAa,EAAE,CAAC,MAAM,CAAC;CAC1D,MAAM,EACJ,cACA,cACA,cACA,aACA,wBACA,sBACE,cAAc;EAChB,MAAM,MAAM;GACV,cAAc,wBAAQ,IAAI,KAAU,GAAG;GACvC,cAAc,wBAAQ,IAAI,KAAU,GAAG;GACvC,cAAc,wBAAQ,IAAI,KAAU,GAAG;GACvC,aAAa,wBAAQ,IAAI,KAAU,GAAG;GACtC,wCAAwB,IAAI,KAAU;GACtC,mCAAmB,IAAI,KAAU;GAClC;AAED,MAAI,CAAC,MACH,QAAO;AAGT,SAAO,gBAAmB,OAAO,IAAI;IACpC;EACD;EACA;EACA;EACA;EACA;EACD,CAAC;CAEF,MAAM,wBAAwB,gBACzB,cAAyB;AACxB,MAAI,cAAc,MAChB,qBAAoB,UAAU;KAGlC;AAEJ,QACE,oBAAC,YAAY;EACX,OAAO;GACL;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA;GACA,UAAU,OAAO,aAAa;GAC9B,oBAAoB,6BAA6B;GAClD;YAED,oBAACA;GACC,GAAI;GACJ,WAAW,mBAAmB,YAAY,gBACxC,KAAK,OAAO,MAAMC,YAAU,CAC7B;GACa;GACI;GACJ;GACP;GACO;GACd,mBAAmB;GACJ;GAEd;IACQ;GACU"}
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  import { PropsWithChildren } from "react";
14
- import * as react_jsx_runtime134 from "react/jsx-runtime";
14
+ import * as react_jsx_runtime185 from "react/jsx-runtime";
15
15
 
16
16
  //#region src/components/tree/item-actions.d.ts
17
17
 
@@ -39,7 +39,7 @@ declare function TreeItemActions({
39
39
  className
40
40
  }: PropsWithChildren & {
41
41
  className?: string;
42
- }): react_jsx_runtime134.JSX.Element;
42
+ }): react_jsx_runtime185.JSX.Element;
43
43
  //#endregion
44
44
  export { TreeItemActions };
45
45
  //# sourceMappingURL=item-actions.d.ts.map
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  import { TreeItemContentProps } from "./types.js";
14
- import * as react_jsx_runtime101 from "react/jsx-runtime";
14
+ import * as react_jsx_runtime186 from "react/jsx-runtime";
15
15
 
16
16
  //#region src/components/tree/item-content.d.ts
17
17
 
@@ -35,7 +35,7 @@ import * as react_jsx_runtime101 from "react/jsx-runtime";
35
35
  */
36
36
  declare function TreeItemContent({
37
37
  children
38
- }: TreeItemContentProps): react_jsx_runtime101.JSX.Element;
38
+ }: TreeItemContentProps): react_jsx_runtime186.JSX.Element;
39
39
  //#endregion
40
40
  export { TreeItemContent };
41
41
  //# sourceMappingURL=item-content.d.ts.map
@@ -48,7 +48,7 @@ import Show from "@accelint/icons/show";
48
48
  * @returns The rendered TreeItemContent component.
49
49
  */
50
50
  function TreeItemContent({ children }) {
51
- const { showVisibility, variant, visibleKeys, onVisibilityChange } = useContext(TreeContext);
51
+ const { showVisibility, variant, visibleKeys, indeterminateKeys, onVisibilityChange } = useContext(TreeContext);
52
52
  const { isVisible, isViewable, ancestors } = useContext(TreeItemContext);
53
53
  const size = variant === "cozy" ? "medium" : "small";
54
54
  return /* @__PURE__ */ jsx(TreeItemContent$1, { children: (renderProps) => {
@@ -103,7 +103,8 @@ function TreeItemContent({ children }) {
103
103
  shouldShowSelection && /* @__PURE__ */ jsx(Checkbox$1, {
104
104
  slot: "selection",
105
105
  isSelected,
106
- isDisabled
106
+ isDisabled,
107
+ isIndeterminate: indeterminateKeys?.has(id)
107
108
  }),
108
109
  allowsDragging && /* @__PURE__ */ jsx(Button$1, {
109
110
  slot: "drag",
@@ -1 +1 @@
1
- {"version":3,"file":"item-content.js","names":["AriaTreeItemContent","Button","Checkbox"],"sources":["../../../src/components/tree/item-content.tsx"],"sourcesContent":["/*\n * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport ChevronDown from '@accelint/icons/chevron-down';\nimport ChevronUp from '@accelint/icons/chevron-up';\nimport DragVert from '@accelint/icons/drag-vert';\nimport Hide from '@accelint/icons/hide';\nimport Show from '@accelint/icons/show';\nimport { useContext } from 'react';\nimport { TreeItemContent as AriaTreeItemContent } from 'react-aria-components';\nimport { Button } from '../button';\nimport { Checkbox } from '../checkbox';\nimport { Icon } from '../icon';\nimport { IconProvider } from '../icon/context';\nimport { TreeContext, TreeItemContext } from './context';\nimport { TreeLines } from './lines';\nimport styles from './styles.module.css';\nimport type { Key } from '@react-types/shared';\nimport type { TreeItemContentProps } from './types';\n\n/**\n * TreeItemContent - Renders the display content of a tree node\n *\n * @example\n * ```tsx\n * <TreeItem id=\"node\" textValue=\"Node\">\n * <TreeItemContent>\n * <TreeItemPrefixIcon><Folder /></TreeItemPrefixIcon>\n * <TreeItemLabel>Folder Name</TreeItemLabel>\n * <TreeItemDescription>Contains 5 items</TreeItemDescription>\n * </TreeItemContent>\n * </TreeItem>\n * ```\n *\n * @param props - {@link TreeItemContentProps}\n * @param props.children - Content to render, or a render function receiving TreeItemContentRenderProps.\n * @returns The rendered TreeItemContent component.\n */\nexport function TreeItemContent({ children }: TreeItemContentProps) {\n const { showVisibility, variant, visibleKeys, onVisibilityChange } =\n useContext(TreeContext);\n const { isVisible, isViewable, ancestors } = useContext(TreeItemContext);\n const size = variant === 'cozy' ? 'medium' : 'small';\n\n return (\n <AriaTreeItemContent>\n {(renderProps) => {\n const {\n id,\n allowsDragging,\n hasChildItems,\n level,\n selectionBehavior,\n selectionMode,\n state,\n isDisabled,\n isExpanded,\n isSelected,\n } = renderProps;\n\n const item = state.collection.getItem(id);\n const isLastOfSet = !item?.nextKey;\n\n // Determine if ancestors are last of set (excludes current item)\n const ancestorLastOfSet = ancestors.slice(0, -1).map((ancestorKey) => {\n const ancestorItem = state.collection.getItem(ancestorKey);\n return !ancestorItem?.nextKey;\n });\n\n const shouldShowSelection =\n selectionBehavior === 'toggle' && selectionMode !== 'none';\n\n const handlePress = () => {\n const keys = new Set<Key>(visibleKeys);\n visibleKeys?.has(id) ? keys.delete(id) : keys.add(id);\n onVisibilityChange?.(keys);\n };\n\n return (\n <IconProvider size={size}>\n <div\n className={clsx('group', styles.content, styles[variant])}\n data-last-of-set={isLastOfSet}\n >\n {showVisibility && (\n <Button\n variant='icon'\n color='mono-bold'\n size={size}\n onPress={handlePress}\n isDisabled={isDisabled}\n className={styles.visibility}\n >\n <Icon>{isVisible ? <Show /> : <Hide />}</Icon>\n </Button>\n )}\n {level > 1 && (\n <TreeLines\n level={level}\n isLastOfSet={isLastOfSet}\n ancestorLastOfSet={ancestorLastOfSet}\n />\n )}\n {hasChildItems && (\n <Button\n slot='chevron'\n variant='icon'\n size={size}\n className={styles.expansion}\n >\n <Icon>{isExpanded ? <ChevronDown /> : <ChevronUp />}</Icon>\n </Button>\n )}\n <div className={clsx(styles.display, styles[variant])}>\n {typeof children === 'function'\n ? children({\n ...renderProps,\n variant,\n isVisible,\n isViewable: isViewable,\n defaultChildren: null,\n })\n : children}\n </div>\n {shouldShowSelection && (\n <Checkbox\n slot='selection'\n isSelected={isSelected}\n isDisabled={isDisabled}\n />\n )}\n {allowsDragging && (\n <Button\n slot='drag'\n variant='icon'\n size={size}\n isDisabled={isDisabled}\n className={styles.drag}\n >\n <Icon>\n <DragVert />\n </Icon>\n </Button>\n )}\n </div>\n </IconProvider>\n );\n }}\n </AriaTreeItemContent>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgDA,SAAgB,gBAAgB,EAAE,YAAkC;CAClE,MAAM,EAAE,gBAAgB,SAAS,aAAa,uBAC5C,WAAW,YAAY;CACzB,MAAM,EAAE,WAAW,YAAY,cAAc,WAAW,gBAAgB;CACxE,MAAM,OAAO,YAAY,SAAS,WAAW;AAE7C,QACE,oBAACA,gCACG,gBAAgB;EAChB,MAAM,EACJ,IACA,gBACA,eACA,OACA,mBACA,eACA,OACA,YACA,YACA,eACE;EAGJ,MAAM,cAAc,CADP,MAAM,WAAW,QAAQ,GAAG,EACd;EAG3B,MAAM,oBAAoB,UAAU,MAAM,GAAG,GAAG,CAAC,KAAK,gBAAgB;AAEpE,UAAO,CADc,MAAM,WAAW,QAAQ,YAAY,EACpC;IACtB;EAEF,MAAM,sBACJ,sBAAsB,YAAY,kBAAkB;EAEtD,MAAM,oBAAoB;GACxB,MAAM,OAAO,IAAI,IAAS,YAAY;AACtC,gBAAa,IAAI,GAAG,GAAG,KAAK,OAAO,GAAG,GAAG,KAAK,IAAI,GAAG;AACrD,wBAAqB,KAAK;;AAG5B,SACE,oBAAC;GAAmB;aAClB,qBAAC;IACC,WAAW,KAAK,SAAS,OAAO,SAAS,OAAO,SAAS;IACzD,oBAAkB;;KAEjB,kBACC,oBAACC;MACC,SAAQ;MACR,OAAM;MACA;MACN,SAAS;MACG;MACZ,WAAW,OAAO;gBAElB,oBAAC,kBAAM,YAAY,oBAAC,SAAO,GAAG,oBAAC,SAAO,GAAQ;OACvC;KAEV,QAAQ,KACP,oBAAC;MACQ;MACM;MACM;OACnB;KAEH,iBACC,oBAACA;MACC,MAAK;MACL,SAAQ;MACF;MACN,WAAW,OAAO;gBAElB,oBAAC,kBAAM,aAAa,oBAAC,gBAAc,GAAG,oBAAC,cAAY,GAAQ;OACpD;KAEX,oBAAC;MAAI,WAAW,KAAK,OAAO,SAAS,OAAO,SAAS;gBAClD,OAAO,aAAa,aACjB,SAAS;OACP,GAAG;OACH;OACA;OACY;OACZ,iBAAiB;OAClB,CAAC,GACF;OACA;KACL,uBACC,oBAACC;MACC,MAAK;MACO;MACA;OACZ;KAEH,kBACC,oBAACD;MACC,MAAK;MACL,SAAQ;MACF;MACM;MACZ,WAAW,OAAO;gBAElB,oBAAC,kBACC,oBAAC,aAAW,GACP;OACA;;KAEP;IACO;KAGC"}
1
+ {"version":3,"file":"item-content.js","names":["AriaTreeItemContent","Button","Checkbox"],"sources":["../../../src/components/tree/item-content.tsx"],"sourcesContent":["/*\n * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport ChevronDown from '@accelint/icons/chevron-down';\nimport ChevronUp from '@accelint/icons/chevron-up';\nimport DragVert from '@accelint/icons/drag-vert';\nimport Hide from '@accelint/icons/hide';\nimport Show from '@accelint/icons/show';\nimport { useContext } from 'react';\nimport { TreeItemContent as AriaTreeItemContent } from 'react-aria-components';\nimport { Button } from '../button';\nimport { Checkbox } from '../checkbox';\nimport { Icon } from '../icon';\nimport { IconProvider } from '../icon/context';\nimport { TreeContext, TreeItemContext } from './context';\nimport { TreeLines } from './lines';\nimport styles from './styles.module.css';\nimport type { Key } from '@react-types/shared';\nimport type { TreeItemContentProps } from './types';\n\n/**\n * TreeItemContent - Renders the display content of a tree node\n *\n * @example\n * ```tsx\n * <TreeItem id=\"node\" textValue=\"Node\">\n * <TreeItemContent>\n * <TreeItemPrefixIcon><Folder /></TreeItemPrefixIcon>\n * <TreeItemLabel>Folder Name</TreeItemLabel>\n * <TreeItemDescription>Contains 5 items</TreeItemDescription>\n * </TreeItemContent>\n * </TreeItem>\n * ```\n *\n * @param props - {@link TreeItemContentProps}\n * @param props.children - Content to render, or a render function receiving TreeItemContentRenderProps.\n * @returns The rendered TreeItemContent component.\n */\nexport function TreeItemContent({ children }: TreeItemContentProps) {\n const {\n showVisibility,\n variant,\n visibleKeys,\n indeterminateKeys,\n onVisibilityChange,\n } = useContext(TreeContext);\n const { isVisible, isViewable, ancestors } = useContext(TreeItemContext);\n const size = variant === 'cozy' ? 'medium' : 'small';\n\n return (\n <AriaTreeItemContent>\n {(renderProps) => {\n const {\n id,\n allowsDragging,\n hasChildItems,\n level,\n selectionBehavior,\n selectionMode,\n state,\n isDisabled,\n isExpanded,\n isSelected,\n } = renderProps;\n\n const item = state.collection.getItem(id);\n const isLastOfSet = !item?.nextKey;\n\n // Determine if ancestors are last of set (excludes current item)\n const ancestorLastOfSet = ancestors.slice(0, -1).map((ancestorKey) => {\n const ancestorItem = state.collection.getItem(ancestorKey);\n return !ancestorItem?.nextKey;\n });\n\n const shouldShowSelection =\n selectionBehavior === 'toggle' && selectionMode !== 'none';\n\n const handlePress = () => {\n const keys = new Set<Key>(visibleKeys);\n visibleKeys?.has(id) ? keys.delete(id) : keys.add(id);\n onVisibilityChange?.(keys);\n };\n\n return (\n <IconProvider size={size}>\n <div\n className={clsx('group', styles.content, styles[variant])}\n data-last-of-set={isLastOfSet}\n >\n {showVisibility && (\n <Button\n variant='icon'\n color='mono-bold'\n size={size}\n onPress={handlePress}\n isDisabled={isDisabled}\n className={styles.visibility}\n >\n <Icon>{isVisible ? <Show /> : <Hide />}</Icon>\n </Button>\n )}\n {level > 1 && (\n <TreeLines\n level={level}\n isLastOfSet={isLastOfSet}\n ancestorLastOfSet={ancestorLastOfSet}\n />\n )}\n {hasChildItems && (\n <Button\n slot='chevron'\n variant='icon'\n size={size}\n className={styles.expansion}\n >\n <Icon>{isExpanded ? <ChevronDown /> : <ChevronUp />}</Icon>\n </Button>\n )}\n <div className={clsx(styles.display, styles[variant])}>\n {typeof children === 'function'\n ? children({\n ...renderProps,\n variant,\n isVisible,\n isViewable: isViewable,\n defaultChildren: null,\n })\n : children}\n </div>\n {shouldShowSelection && (\n <Checkbox\n slot='selection'\n isSelected={isSelected}\n isDisabled={isDisabled}\n isIndeterminate={indeterminateKeys?.has(id)}\n />\n )}\n {allowsDragging && (\n <Button\n slot='drag'\n variant='icon'\n size={size}\n isDisabled={isDisabled}\n className={styles.drag}\n >\n <Icon>\n <DragVert />\n </Icon>\n </Button>\n )}\n </div>\n </IconProvider>\n );\n }}\n </AriaTreeItemContent>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgDA,SAAgB,gBAAgB,EAAE,YAAkC;CAClE,MAAM,EACJ,gBACA,SACA,aACA,mBACA,uBACE,WAAW,YAAY;CAC3B,MAAM,EAAE,WAAW,YAAY,cAAc,WAAW,gBAAgB;CACxE,MAAM,OAAO,YAAY,SAAS,WAAW;AAE7C,QACE,oBAACA,gCACG,gBAAgB;EAChB,MAAM,EACJ,IACA,gBACA,eACA,OACA,mBACA,eACA,OACA,YACA,YACA,eACE;EAGJ,MAAM,cAAc,CADP,MAAM,WAAW,QAAQ,GAAG,EACd;EAG3B,MAAM,oBAAoB,UAAU,MAAM,GAAG,GAAG,CAAC,KAAK,gBAAgB;AAEpE,UAAO,CADc,MAAM,WAAW,QAAQ,YAAY,EACpC;IACtB;EAEF,MAAM,sBACJ,sBAAsB,YAAY,kBAAkB;EAEtD,MAAM,oBAAoB;GACxB,MAAM,OAAO,IAAI,IAAS,YAAY;AACtC,gBAAa,IAAI,GAAG,GAAG,KAAK,OAAO,GAAG,GAAG,KAAK,IAAI,GAAG;AACrD,wBAAqB,KAAK;;AAG5B,SACE,oBAAC;GAAmB;aAClB,qBAAC;IACC,WAAW,KAAK,SAAS,OAAO,SAAS,OAAO,SAAS;IACzD,oBAAkB;;KAEjB,kBACC,oBAACC;MACC,SAAQ;MACR,OAAM;MACA;MACN,SAAS;MACG;MACZ,WAAW,OAAO;gBAElB,oBAAC,kBAAM,YAAY,oBAAC,SAAO,GAAG,oBAAC,SAAO,GAAQ;OACvC;KAEV,QAAQ,KACP,oBAAC;MACQ;MACM;MACM;OACnB;KAEH,iBACC,oBAACA;MACC,MAAK;MACL,SAAQ;MACF;MACN,WAAW,OAAO;gBAElB,oBAAC,kBAAM,aAAa,oBAAC,gBAAc,GAAG,oBAAC,cAAY,GAAQ;OACpD;KAEX,oBAAC;MAAI,WAAW,KAAK,OAAO,SAAS,OAAO,SAAS;gBAClD,OAAO,aAAa,aACjB,SAAS;OACP,GAAG;OACH;OACA;OACY;OACZ,iBAAiB;OAClB,CAAC,GACF;OACA;KACL,uBACC,oBAACC;MACC,MAAK;MACO;MACA;MACZ,iBAAiB,mBAAmB,IAAI,GAAG;OAC3C;KAEH,kBACC,oBAACD;MACC,MAAK;MACL,SAAQ;MACF;MACM;MACZ,WAAW,OAAO;gBAElB,oBAAC,kBACC,oBAAC,aAAW,GACP;OACA;;KAEP;IACO;KAGC"}
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  import { TextProps } from "react-aria-components";
14
- import * as react_jsx_runtime108 from "react/jsx-runtime";
14
+ import * as react_jsx_runtime187 from "react/jsx-runtime";
15
15
 
16
16
  //#region src/components/tree/item-description.d.ts
17
17
  /**
@@ -33,7 +33,7 @@ import * as react_jsx_runtime108 from "react/jsx-runtime";
33
33
  declare function TreeItemDescription({
34
34
  children,
35
35
  className
36
- }: TextProps): react_jsx_runtime108.JSX.Element | null;
36
+ }: TextProps): react_jsx_runtime187.JSX.Element | null;
37
37
  //#endregion
38
38
  export { TreeItemDescription };
39
39
  //# sourceMappingURL=item-description.d.ts.map
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  import { TextProps } from "react-aria-components";
14
- import * as react_jsx_runtime104 from "react/jsx-runtime";
14
+ import * as react_jsx_runtime188 from "react/jsx-runtime";
15
15
 
16
16
  //#region src/components/tree/item-label.d.ts
17
17
  /**
@@ -33,7 +33,7 @@ import * as react_jsx_runtime104 from "react/jsx-runtime";
33
33
  declare function TreeItemLabel({
34
34
  children,
35
35
  className
36
- }: TextProps): react_jsx_runtime104.JSX.Element;
36
+ }: TextProps): react_jsx_runtime188.JSX.Element;
37
37
  //#endregion
38
38
  export { TreeItemLabel };
39
39
  //# sourceMappingURL=item-label.d.ts.map
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  import { IconProps } from "../icon/types.js";
14
- import * as react_jsx_runtime103 from "react/jsx-runtime";
14
+ import * as react_jsx_runtime189 from "react/jsx-runtime";
15
15
 
16
16
  //#region src/components/tree/item-prefix-icon.d.ts
17
17
  /**
@@ -33,7 +33,7 @@ import * as react_jsx_runtime103 from "react/jsx-runtime";
33
33
  declare function TreeItemPrefixIcon({
34
34
  children,
35
35
  className
36
- }: IconProps): react_jsx_runtime103.JSX.Element;
36
+ }: IconProps): react_jsx_runtime189.JSX.Element;
37
37
  //#endregion
38
38
  export { TreeItemPrefixIcon };
39
39
  //# sourceMappingURL=item-prefix-icon.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { TreeItemProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime145 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime190 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/tree/item.d.ts
18
18
 
@@ -44,7 +44,7 @@ declare function TreeItem({
44
44
  className,
45
45
  id,
46
46
  ...rest
47
- }: TreeItemProps): react_jsx_runtime145.JSX.Element;
47
+ }: TreeItemProps): react_jsx_runtime190.JSX.Element;
48
48
  //#endregion
49
49
  export { TreeItem };
50
50
  //# sourceMappingURL=item.d.ts.map
@@ -10,7 +10,7 @@
10
10
  * governing permissions and limitations under the License.
11
11
  */
12
12
 
13
- import * as react35 from "react";
13
+ import * as react44 from "react";
14
14
 
15
15
  //#region src/components/tree/lines.d.ts
16
16
  /**
@@ -22,7 +22,7 @@ import * as react35 from "react";
22
22
  * @param props.ancestorLastOfSet - Array tracking which ancestors are last of set at each level.
23
23
  * @returns An array of Line components representing the tree structure.
24
24
  */
25
- declare const TreeLines: react35.NamedExoticComponent<{
25
+ declare const TreeLines: react44.NamedExoticComponent<{
26
26
  level: number;
27
27
  isLastOfSet: boolean;
28
28
  ancestorLastOfSet: boolean[];
@@ -63,6 +63,7 @@ type TreeContextValue = Required<Pick<TreeProps<unknown>, 'showRuleLines' | 'sho
63
63
  selectedKeys?: Set<Key$1>;
64
64
  visibleKeys?: Set<Key$1>;
65
65
  visibilityComputedKeys?: Set<Key$1>;
66
+ indeterminateKeys?: Set<Key$1>;
66
67
  isStatic: boolean;
67
68
  };
68
69
  /**
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { VideoProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime105 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime193 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/video/index.d.ts
18
18
 
@@ -91,7 +91,7 @@ declare function Video({
91
91
  noMutedPref,
92
92
  lang,
93
93
  ...rest
94
- }: VideoProps): react_jsx_runtime105.JSX.Element;
94
+ }: VideoProps): react_jsx_runtime193.JSX.Element;
95
95
  //#endregion
96
96
  export { Video };
97
97
  //# sourceMappingURL=index.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { ViewStackProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime106 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime232 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/view-stack/index.d.ts
18
18
 
@@ -47,7 +47,7 @@ declare function ViewStack({
47
47
  children,
48
48
  defaultView,
49
49
  onChange
50
- }: ViewStackProps): react_jsx_runtime106.JSX.Element;
50
+ }: ViewStackProps): react_jsx_runtime232.JSX.Element;
51
51
  //#endregion
52
52
  export { ViewStack };
53
53
  //# sourceMappingURL=index.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { ViewStackTriggerProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime107 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime234 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/view-stack/trigger.d.ts
18
18
 
@@ -45,7 +45,7 @@ import * as react_jsx_runtime107 from "react/jsx-runtime";
45
45
  declare function ViewStackTrigger({
46
46
  children,
47
47
  for: types
48
- }: ViewStackTriggerProps): react_jsx_runtime107.JSX.Element;
48
+ }: ViewStackTriggerProps): react_jsx_runtime234.JSX.Element;
49
49
  //#endregion
50
50
  export { ViewStackTrigger };
51
51
  //# sourceMappingURL=trigger.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { ViewStackViewProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime147 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime191 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/view-stack/view.d.ts
18
18
 
@@ -43,7 +43,7 @@ import * as react_jsx_runtime147 from "react/jsx-runtime";
43
43
  declare function ViewStackView({
44
44
  id,
45
45
  children
46
- }: ViewStackViewProps): react_jsx_runtime147.JSX.Element | null;
46
+ }: ViewStackViewProps): react_jsx_runtime191.JSX.Element | null;
47
47
  //#endregion
48
48
  export { ViewStackView };
49
49
  //# sourceMappingURL=view.d.ts.map