@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
@@ -0,0 +1,48 @@
1
+ /*
2
+ * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.
3
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
4
+ * you may not use this file except in compliance with the License. You may obtain a copy
5
+ * of the License at https://www.apache.org/licenses/LICENSE-2.0
6
+ *
7
+ * Unless required by applicable law or agreed to in writing, software distributed under
8
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
9
+ * OF ANY KIND, either express or implied. See the License for the specific language
10
+ * governing permissions and limitations under the License.
11
+ */
12
+
13
+ import { GanttMetThresholdData, GanttThreshold, GanttTimeBounds, GanttTimelineChunkObject, GanttTimescale } from "../../types.js";
14
+ import * as react49 from "react";
15
+ import { PropsWithChildren } from "react";
16
+ import * as react_jsx_runtime195 from "react/jsx-runtime";
17
+
18
+ //#region src/components/gantt/context/temporal-data/index.d.ts
19
+ type TemporalDataContextValue = {
20
+ msPerPx: number;
21
+ renderedRegionBounds: GanttTimeBounds;
22
+ timescale: GanttTimescale;
23
+ totalBounds: GanttTimeBounds;
24
+ timelineChunks: GanttTimelineChunkObject[];
25
+ threshold?: GanttThreshold;
26
+ currentTimeMs: number;
27
+ onThresholdMet?: (metThresholds: GanttMetThresholdData[]) => void;
28
+ };
29
+ declare const TemporalDataContext: react49.Context<TemporalDataContextValue | undefined>;
30
+ type TemporalDataProviderProps = {
31
+ timescale: GanttTimescale;
32
+ totalBounds: GanttTimeBounds;
33
+ threshold?: GanttThreshold;
34
+ currentTimeMs: number;
35
+ onThresholdMet?: (metThresholds: GanttMetThresholdData[]) => void;
36
+ };
37
+ declare function TemporalDataProvider({
38
+ children,
39
+ timescale,
40
+ totalBounds,
41
+ threshold,
42
+ currentTimeMs,
43
+ onThresholdMet
44
+ }: PropsWithChildren<TemporalDataProviderProps>): react_jsx_runtime195.JSX.Element;
45
+ declare function useTemporalDataContext(): TemporalDataContextValue;
46
+ //#endregion
47
+ export { TemporalDataContext, TemporalDataContextValue, TemporalDataProvider, TemporalDataProviderProps, useTemporalDataContext };
48
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,80 @@
1
+ /*
2
+ * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.
3
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
4
+ * you may not use this file except in compliance with the License. You may obtain a copy
5
+ * of the License at https://www.apache.org/licenses/LICENSE-2.0
6
+ *
7
+ * Unless required by applicable law or agreed to in writing, software distributed under
8
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
9
+ * OF ANY KIND, either express or implied. See the License for the specific language
10
+ * governing permissions and limitations under the License.
11
+ */
12
+
13
+
14
+ import { TIMESCALE_MAPPING } from "../../constants.js";
15
+ import { selectors } from "../../store.js";
16
+ import { useGanttStore } from "../store/index.js";
17
+ import { getRenderedRegionBoundsMs, getViewableRegionWidth } from "../../utils/helpers.js";
18
+ import { useGanttContext } from "../index.js";
19
+ import { useResizeIntersectionEffect } from "../../hooks/use-resize-intersection-effect/index.js";
20
+ import { getMsPerPx } from "../../utils/conversions.js";
21
+ import { generateTimelineChunks } from "../../utils/generation.js";
22
+ import { createContext, useContext, useMemo, useRef } from "react";
23
+ import { jsx } from "react/jsx-runtime";
24
+
25
+ //#region src/components/gantt/context/temporal-data/index.tsx
26
+ const TemporalDataContext = createContext(void 0);
27
+ function TemporalDataProvider({ children, timescale, totalBounds, threshold, currentTimeMs, onThresholdMet }) {
28
+ const { headerElement } = useGanttContext();
29
+ const msPerPx = getMsPerPx(timescale);
30
+ const selectedTimeIntervalMs = TIMESCALE_MAPPING[timescale];
31
+ const onThresholdMetRef = useRef(onThresholdMet);
32
+ onThresholdMetRef.current = onThresholdMet;
33
+ const roundedTimestampMs = useGanttStore(useMemo(() => selectors.roundedCurrentPositionMs(selectedTimeIntervalMs), [selectedTimeIntervalMs]));
34
+ const viewableRegionWidth = getViewableRegionWidth(headerElement);
35
+ const timelineChunks = useMemo(() => generateTimelineChunks(roundedTimestampMs, viewableRegionWidth, selectedTimeIntervalMs, msPerPx), [
36
+ roundedTimestampMs,
37
+ viewableRegionWidth,
38
+ selectedTimeIntervalMs,
39
+ msPerPx
40
+ ]);
41
+ const renderedRegionBounds = useMemo(() => getRenderedRegionBoundsMs(timelineChunks, msPerPx), [timelineChunks, msPerPx]);
42
+ useResizeIntersectionEffect({
43
+ timelineContainerElement: headerElement,
44
+ timelineChunks
45
+ });
46
+ const stableOnThresholdMet = useMemo(() => (...args) => onThresholdMetRef.current?.(...args), []);
47
+ const value = useMemo(() => ({
48
+ msPerPx,
49
+ renderedRegionBounds,
50
+ timescale,
51
+ timelineChunks,
52
+ totalBounds,
53
+ threshold,
54
+ currentTimeMs,
55
+ onThresholdMet: onThresholdMet ? stableOnThresholdMet : void 0
56
+ }), [
57
+ msPerPx,
58
+ renderedRegionBounds,
59
+ timescale,
60
+ timelineChunks,
61
+ totalBounds,
62
+ threshold,
63
+ currentTimeMs,
64
+ onThresholdMet,
65
+ stableOnThresholdMet
66
+ ]);
67
+ return /* @__PURE__ */ jsx(TemporalDataContext.Provider, {
68
+ value,
69
+ children
70
+ });
71
+ }
72
+ function useTemporalDataContext() {
73
+ const ctx = useContext(TemporalDataContext);
74
+ if (!ctx) throw new Error("useTemporalDataContext must be used within a TemporalDataProvider");
75
+ return ctx;
76
+ }
77
+
78
+ //#endregion
79
+ export { TemporalDataContext, TemporalDataProvider, useTemporalDataContext };
80
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../../src/components/gantt/context/temporal-data/index.tsx"],"sourcesContent":["// __private-exports\n/*\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 {\n createContext,\n type PropsWithChildren,\n useContext,\n useMemo,\n useRef,\n} from 'react';\nimport { TIMESCALE_MAPPING } from '@/components/gantt/constants';\nimport { useGanttContext } from '@/components/gantt/context';\nimport { useGanttStore } from '@/components/gantt/context/store';\nimport { useResizeIntersectionEffect } from '@/components/gantt/hooks/use-resize-intersection-effect';\nimport { selectors } from '@/components/gantt/store';\nimport { getMsPerPx } from '@/components/gantt/utils/conversions';\nimport { generateTimelineChunks } from '@/components/gantt/utils/generation';\nimport {\n getRenderedRegionBoundsMs,\n getViewableRegionWidth,\n} from '@/components/gantt/utils/helpers';\nimport type {\n GanttMetThresholdData,\n GanttThreshold,\n GanttTimeBounds,\n GanttTimelineChunkObject,\n GanttTimescale,\n} from '@/components/gantt/types';\n\nexport type TemporalDataContextValue = {\n msPerPx: number;\n renderedRegionBounds: GanttTimeBounds;\n timescale: GanttTimescale;\n totalBounds: GanttTimeBounds;\n timelineChunks: GanttTimelineChunkObject[];\n threshold?: GanttThreshold;\n currentTimeMs: number;\n onThresholdMet?: (metThresholds: GanttMetThresholdData[]) => void;\n};\n\nexport const TemporalDataContext = createContext<\n TemporalDataContextValue | undefined\n>(undefined);\n\nexport type TemporalDataProviderProps = {\n timescale: GanttTimescale;\n totalBounds: GanttTimeBounds;\n threshold?: GanttThreshold;\n currentTimeMs: number;\n onThresholdMet?: (metThresholds: GanttMetThresholdData[]) => void;\n};\n\nexport function TemporalDataProvider({\n children,\n timescale,\n totalBounds,\n threshold,\n currentTimeMs,\n onThresholdMet,\n}: PropsWithChildren<TemporalDataProviderProps>) {\n const { headerElement } = useGanttContext();\n const msPerPx = getMsPerPx(timescale);\n const selectedTimeIntervalMs = TIMESCALE_MAPPING[timescale];\n\n const onThresholdMetRef = useRef(onThresholdMet);\n onThresholdMetRef.current = onThresholdMet;\n\n const selector = useMemo(\n () => selectors.roundedCurrentPositionMs(selectedTimeIntervalMs),\n [selectedTimeIntervalMs],\n );\n\n const roundedTimestampMs = useGanttStore(selector);\n\n const viewableRegionWidth = getViewableRegionWidth(headerElement);\n\n const timelineChunks = useMemo(\n () =>\n generateTimelineChunks(\n roundedTimestampMs,\n viewableRegionWidth,\n selectedTimeIntervalMs,\n msPerPx,\n ),\n [roundedTimestampMs, viewableRegionWidth, selectedTimeIntervalMs, msPerPx],\n );\n\n const renderedRegionBounds = useMemo(\n () => getRenderedRegionBoundsMs(timelineChunks, msPerPx),\n [timelineChunks, msPerPx],\n );\n\n useResizeIntersectionEffect({\n timelineContainerElement: headerElement,\n timelineChunks,\n });\n\n const stableOnThresholdMet = useMemo(\n () =>\n (...args: Parameters<NonNullable<typeof onThresholdMet>>) =>\n onThresholdMetRef.current?.(...args),\n [],\n );\n\n const value = useMemo(\n () => ({\n msPerPx,\n renderedRegionBounds,\n timescale,\n timelineChunks,\n totalBounds,\n threshold,\n currentTimeMs,\n onThresholdMet: onThresholdMet ? stableOnThresholdMet : undefined,\n }),\n [\n msPerPx,\n renderedRegionBounds,\n timescale,\n timelineChunks,\n totalBounds,\n threshold,\n currentTimeMs,\n onThresholdMet,\n stableOnThresholdMet,\n ],\n );\n\n return (\n <TemporalDataContext.Provider value={value}>\n {children}\n </TemporalDataContext.Provider>\n );\n}\n\nexport function useTemporalDataContext() {\n const ctx = useContext(TemporalDataContext);\n\n if (!ctx) {\n throw new Error(\n 'useTemporalDataContext must be used within a TemporalDataProvider',\n );\n }\n\n return ctx;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAkDA,MAAa,sBAAsB,cAEjC,OAAU;AAUZ,SAAgB,qBAAqB,EACnC,UACA,WACA,aACA,WACA,eACA,kBAC+C;CAC/C,MAAM,EAAE,kBAAkB,iBAAiB;CAC3C,MAAM,UAAU,WAAW,UAAU;CACrC,MAAM,yBAAyB,kBAAkB;CAEjD,MAAM,oBAAoB,OAAO,eAAe;AAChD,mBAAkB,UAAU;CAO5B,MAAM,qBAAqB,cALV,cACT,UAAU,yBAAyB,uBAAuB,EAChE,CAAC,uBAAuB,CACzB,CAEiD;CAElD,MAAM,sBAAsB,uBAAuB,cAAc;CAEjE,MAAM,iBAAiB,cAEnB,uBACE,oBACA,qBACA,wBACA,QACD,EACH;EAAC;EAAoB;EAAqB;EAAwB;EAAQ,CAC3E;CAED,MAAM,uBAAuB,cACrB,0BAA0B,gBAAgB,QAAQ,EACxD,CAAC,gBAAgB,QAAQ,CAC1B;AAED,6BAA4B;EAC1B,0BAA0B;EAC1B;EACD,CAAC;CAEF,MAAM,uBAAuB,eAExB,GAAG,SACF,kBAAkB,UAAU,GAAG,KAAK,EACxC,EAAE,CACH;CAED,MAAM,QAAQ,eACL;EACL;EACA;EACA;EACA;EACA;EACA;EACA;EACA,gBAAgB,iBAAiB,uBAAuB;EACzD,GACD;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD,CACF;AAED,QACE,oBAAC,oBAAoB;EAAgB;EAClC;GAC4B;;AAInC,SAAgB,yBAAyB;CACvC,MAAM,MAAM,WAAW,oBAAoB;AAE3C,KAAI,CAAC,IACH,OAAM,IAAI,MACR,oEACD;AAGH,QAAO"}
@@ -0,0 +1,50 @@
1
+ /*
2
+ * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.
3
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
4
+ * you may not use this file except in compliance with the License. You may obtain a copy
5
+ * of the License at https://www.apache.org/licenses/LICENSE-2.0
6
+ *
7
+ * Unless required by applicable law or agreed to in writing, software distributed under
8
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
9
+ * OF ANY KIND, either express or implied. See the License for the specific language
10
+ * governing permissions and limitations under the License.
11
+ */
12
+
13
+ import { GanttProvider } from "./context/index.js";
14
+
15
+ //#region src/components/gantt/gantt.d.ts
16
+
17
+ /**
18
+ * Main Gantt component for timeline visualization.
19
+ *
20
+ * Uses a composition pattern where `Gantt` wraps a panel container
21
+ * (fixed-width row labels) alongside a content container (scrollable
22
+ * timeline with virtualized rows).
23
+ *
24
+ * @example
25
+ * ```tsx
26
+ * <Gantt
27
+ * startTimeMs={startMs}
28
+ * endTimeMs={endMs}
29
+ * timescale="1h"
30
+ * currentTimeMs={Date.now()}
31
+ * >
32
+ * <GanttPanelContainer>
33
+ * {rows.map((row) => (
34
+ * <GanttPanelRow key={row.id}>{row.name}</GanttPanelRow>
35
+ * ))}
36
+ * </GanttPanelContainer>
37
+ * <GanttContentContainer>
38
+ * {rows.map((row) => (
39
+ * <GanttContentRow key={row.id}>
40
+ * <GanttBlock startTimeMs={row.startMs} endTimeMs={row.endMs} />
41
+ * </GanttContentRow>
42
+ * ))}
43
+ * </GanttContentContainer>
44
+ * </Gantt>
45
+ * ```
46
+ */
47
+ declare const Gantt: typeof GanttProvider;
48
+ //#endregion
49
+ export { Gantt };
50
+ //# sourceMappingURL=gantt.d.ts.map
@@ -0,0 +1,51 @@
1
+ /*
2
+ * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.
3
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
4
+ * you may not use this file except in compliance with the License. You may obtain a copy
5
+ * of the License at https://www.apache.org/licenses/LICENSE-2.0
6
+ *
7
+ * Unless required by applicable law or agreed to in writing, software distributed under
8
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
9
+ * OF ANY KIND, either express or implied. See the License for the specific language
10
+ * governing permissions and limitations under the License.
11
+ */
12
+
13
+
14
+ import { GanttProvider } from "./context/index.js";
15
+
16
+ //#region src/components/gantt/gantt.tsx
17
+ /**
18
+ * Main Gantt component for timeline visualization.
19
+ *
20
+ * Uses a composition pattern where `Gantt` wraps a panel container
21
+ * (fixed-width row labels) alongside a content container (scrollable
22
+ * timeline with virtualized rows).
23
+ *
24
+ * @example
25
+ * ```tsx
26
+ * <Gantt
27
+ * startTimeMs={startMs}
28
+ * endTimeMs={endMs}
29
+ * timescale="1h"
30
+ * currentTimeMs={Date.now()}
31
+ * >
32
+ * <GanttPanelContainer>
33
+ * {rows.map((row) => (
34
+ * <GanttPanelRow key={row.id}>{row.name}</GanttPanelRow>
35
+ * ))}
36
+ * </GanttPanelContainer>
37
+ * <GanttContentContainer>
38
+ * {rows.map((row) => (
39
+ * <GanttContentRow key={row.id}>
40
+ * <GanttBlock startTimeMs={row.startMs} endTimeMs={row.endMs} />
41
+ * </GanttContentRow>
42
+ * ))}
43
+ * </GanttContentContainer>
44
+ * </Gantt>
45
+ * ```
46
+ */
47
+ const Gantt = GanttProvider;
48
+
49
+ //#endregion
50
+ export { Gantt };
51
+ //# sourceMappingURL=gantt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gantt.js","names":[],"sources":["../../../src/components/gantt/gantt.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 { GanttProvider } from './context';\n\n/**\n * Main Gantt component for timeline visualization.\n *\n * Uses a composition pattern where `Gantt` wraps a panel container\n * (fixed-width row labels) alongside a content container (scrollable\n * timeline with virtualized rows).\n *\n * @example\n * ```tsx\n * <Gantt\n * startTimeMs={startMs}\n * endTimeMs={endMs}\n * timescale=\"1h\"\n * currentTimeMs={Date.now()}\n * >\n * <GanttPanelContainer>\n * {rows.map((row) => (\n * <GanttPanelRow key={row.id}>{row.name}</GanttPanelRow>\n * ))}\n * </GanttPanelContainer>\n * <GanttContentContainer>\n * {rows.map((row) => (\n * <GanttContentRow key={row.id}>\n * <GanttBlock startTimeMs={row.startMs} endTimeMs={row.endMs} />\n * </GanttContentRow>\n * ))}\n * </GanttContentContainer>\n * </Gantt>\n * ```\n */\nexport const Gantt = GanttProvider;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4CA,MAAa,QAAQ"}
@@ -0,0 +1,22 @@
1
+ /*
2
+ * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.
3
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
4
+ * you may not use this file except in compliance with the License. You may obtain a copy
5
+ * of the License at https://www.apache.org/licenses/LICENSE-2.0
6
+ *
7
+ * Unless required by applicable law or agreed to in writing, software distributed under
8
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
9
+ * OF ANY KIND, either express or implied. See the License for the specific language
10
+ * governing permissions and limitations under the License.
11
+ */
12
+
13
+ import { UIEvent } from "react";
14
+
15
+ //#region src/components/gantt/hooks/use-horizontal-scroll-update/index.d.ts
16
+ type UseHorizontalScrollUpdateValue = {
17
+ onScroll: (event: UIEvent<HTMLDivElement>) => void;
18
+ };
19
+ declare function useHorizontalScrollUpdate(): UseHorizontalScrollUpdateValue;
20
+ //#endregion
21
+ export { useHorizontalScrollUpdate };
22
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,36 @@
1
+ /*
2
+ * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.
3
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
4
+ * you may not use this file except in compliance with the License. You may obtain a copy
5
+ * of the License at https://www.apache.org/licenses/LICENSE-2.0
6
+ *
7
+ * Unless required by applicable law or agreed to in writing, software distributed under
8
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
9
+ * OF ANY KIND, either express or implied. See the License for the specific language
10
+ * governing permissions and limitations under the License.
11
+ */
12
+
13
+
14
+ import { selectors } from "../../store.js";
15
+ import { useGanttStore } from "../../context/store/index.js";
16
+ import { getHorizontalScrolledPixels } from "../../utils/helpers.js";
17
+ import { useTemporalDataContext } from "../../context/temporal-data/index.js";
18
+ import { useCallback } from "react";
19
+
20
+ //#region src/components/gantt/hooks/use-horizontal-scroll-update/index.ts
21
+ function useHorizontalScrollUpdate() {
22
+ const { totalBounds, msPerPx } = useTemporalDataContext();
23
+ const setCurrentPositionMs = useGanttStore(selectors.setCurrentPositionMs);
24
+ return { onScroll: useCallback((event) => {
25
+ const scrolledPixels = getHorizontalScrolledPixels(event);
26
+ setCurrentPositionMs(totalBounds.startMs + scrolledPixels * msPerPx);
27
+ }, [
28
+ totalBounds.startMs,
29
+ msPerPx,
30
+ setCurrentPositionMs
31
+ ]) };
32
+ }
33
+
34
+ //#endregion
35
+ export { useHorizontalScrollUpdate };
36
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../../src/components/gantt/hooks/use-horizontal-scroll-update/index.ts"],"sourcesContent":["// __private-exports\n/*\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 { useCallback, type UIEvent } from 'react';\nimport { useGanttStore } from '../../context/store';\nimport { useTemporalDataContext } from '../../context/temporal-data';\nimport { selectors } from '../../store';\nimport { getHorizontalScrolledPixels } from '../../utils/helpers';\n\ntype UseHorizontalScrollUpdateValue = {\n onScroll: (event: UIEvent<HTMLDivElement>) => void;\n};\n\nexport function useHorizontalScrollUpdate(): UseHorizontalScrollUpdateValue {\n const { totalBounds, msPerPx } = useTemporalDataContext();\n const setCurrentPositionMs = useGanttStore(selectors.setCurrentPositionMs);\n\n const onScroll = useCallback(\n (event: UIEvent<HTMLDivElement>) => {\n const scrolledPixels = getHorizontalScrolledPixels(event);\n\n setCurrentPositionMs(totalBounds.startMs + scrolledPixels * msPerPx);\n },\n [totalBounds.startMs, msPerPx, setCurrentPositionMs],\n );\n\n return { onScroll };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAuBA,SAAgB,4BAA4D;CAC1E,MAAM,EAAE,aAAa,YAAY,wBAAwB;CACzD,MAAM,uBAAuB,cAAc,UAAU,qBAAqB;AAW1E,QAAO,EAAE,UATQ,aACd,UAAmC;EAClC,MAAM,iBAAiB,4BAA4B,MAAM;AAEzD,uBAAqB,YAAY,UAAU,iBAAiB,QAAQ;IAEtE;EAAC,YAAY;EAAS;EAAS;EAAqB,CACrD,EAEkB"}
@@ -0,0 +1,26 @@
1
+ /*
2
+ * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.
3
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
4
+ * you may not use this file except in compliance with the License. You may obtain a copy
5
+ * of the License at https://www.apache.org/licenses/LICENSE-2.0
6
+ *
7
+ * Unless required by applicable law or agreed to in writing, software distributed under
8
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
9
+ * OF ANY KIND, either express or implied. See the License for the specific language
10
+ * governing permissions and limitations under the License.
11
+ */
12
+
13
+ import { GanttState } from "../../store.js";
14
+
15
+ //#region src/components/gantt/hooks/use-layout-subscription/index.d.ts
16
+ type UseLayoutSubscriptionProps<T> = {
17
+ callback: (value: T) => void;
18
+ selector: (state: GanttState) => T;
19
+ };
20
+ declare function useLayoutSubscription<T>({
21
+ callback,
22
+ selector
23
+ }: UseLayoutSubscriptionProps<T>): void;
24
+ //#endregion
25
+ export { useLayoutSubscription };
26
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,45 @@
1
+ /*
2
+ * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.
3
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
4
+ * you may not use this file except in compliance with the License. You may obtain a copy
5
+ * of the License at https://www.apache.org/licenses/LICENSE-2.0
6
+ *
7
+ * Unless required by applicable law or agreed to in writing, software distributed under
8
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
9
+ * OF ANY KIND, either express or implied. See the License for the specific language
10
+ * governing permissions and limitations under the License.
11
+ */
12
+
13
+
14
+ import { useGanttStoreApi } from "../../context/store/index.js";
15
+ import { useEffect, useRef } from "react";
16
+ import { shallow } from "zustand/shallow";
17
+
18
+ //#region src/components/gantt/hooks/use-layout-subscription/index.ts
19
+ function useLayoutSubscription({ callback, selector }) {
20
+ const store = useGanttStoreApi();
21
+ const callbackRef = useRef(callback);
22
+ callbackRef.current = callback;
23
+ const selectorRef = useRef(selector);
24
+ selectorRef.current = selector;
25
+ useEffect(() => {
26
+ let animationFrameId;
27
+ const unsubscribe = store.subscribe((state) => selectorRef.current(state), (value) => {
28
+ cancelAnimationFrame(animationFrameId);
29
+ animationFrameId = requestAnimationFrame(() => {
30
+ callbackRef.current(value);
31
+ });
32
+ }, {
33
+ fireImmediately: true,
34
+ equalityFn: shallow
35
+ });
36
+ return () => {
37
+ cancelAnimationFrame(animationFrameId);
38
+ unsubscribe();
39
+ };
40
+ }, [store]);
41
+ }
42
+
43
+ //#endregion
44
+ export { useLayoutSubscription };
45
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["animationFrameId: number"],"sources":["../../../../../src/components/gantt/hooks/use-layout-subscription/index.ts"],"sourcesContent":["// __private-exports\n/*\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 { useEffect, useRef } from 'react';\nimport { shallow } from 'zustand/shallow';\nimport { useGanttStoreApi } from '../../context/store';\nimport type { GanttState } from '../../store';\n\ntype UseLayoutSubscriptionProps<T> = {\n callback: (value: T) => void;\n selector: (state: GanttState) => T;\n};\n\nexport function useLayoutSubscription<T>({\n callback,\n selector,\n}: UseLayoutSubscriptionProps<T>) {\n const store = useGanttStoreApi();\n const callbackRef = useRef(callback);\n callbackRef.current = callback;\n const selectorRef = useRef(selector);\n selectorRef.current = selector;\n\n useEffect(() => {\n let animationFrameId: number;\n\n const unsubscribe = store.subscribe(\n (state) => selectorRef.current(state),\n (value) => {\n cancelAnimationFrame(animationFrameId);\n animationFrameId = requestAnimationFrame(() => {\n callbackRef.current(value);\n });\n },\n {\n // Invoke immediately on initial subscription. If a subscribed value\n // change causes a re-render to occur, we want to perform layout\n // calculations using the latest value in the store after a browser\n // paint occurs (when this effect runs). Prevents potential layout\n // flickers because of calculations against a stale rendered UI\n // (since the subscription in this effect runs outside of the React\n // render cycle).\n fireImmediately: true,\n equalityFn: shallow,\n },\n );\n\n return () => {\n cancelAnimationFrame(animationFrameId);\n unsubscribe();\n };\n }, [store]);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAuBA,SAAgB,sBAAyB,EACvC,UACA,YACgC;CAChC,MAAM,QAAQ,kBAAkB;CAChC,MAAM,cAAc,OAAO,SAAS;AACpC,aAAY,UAAU;CACtB,MAAM,cAAc,OAAO,SAAS;AACpC,aAAY,UAAU;AAEtB,iBAAgB;EACd,IAAIA;EAEJ,MAAM,cAAc,MAAM,WACvB,UAAU,YAAY,QAAQ,MAAM,GACpC,UAAU;AACT,wBAAqB,iBAAiB;AACtC,sBAAmB,4BAA4B;AAC7C,gBAAY,QAAQ,MAAM;KAC1B;KAEJ;GAQE,iBAAiB;GACjB,YAAY;GACb,CACF;AAED,eAAa;AACX,wBAAqB,iBAAiB;AACtC,gBAAa;;IAEd,CAAC,MAAM,CAAC"}
@@ -0,0 +1,26 @@
1
+ /*
2
+ * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.
3
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
4
+ * you may not use this file except in compliance with the License. You may obtain a copy
5
+ * of the License at https://www.apache.org/licenses/LICENSE-2.0
6
+ *
7
+ * Unless required by applicable law or agreed to in writing, software distributed under
8
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
9
+ * OF ANY KIND, either express or implied. See the License for the specific language
10
+ * governing permissions and limitations under the License.
11
+ */
12
+
13
+ import { GanttTimelineChunkObject } from "../../types.js";
14
+
15
+ //#region src/components/gantt/hooks/use-resize-intersection-effect/index.d.ts
16
+ type UseResizeEffectProps = {
17
+ timelineContainerElement: HTMLDivElement | null;
18
+ timelineChunks: GanttTimelineChunkObject[];
19
+ };
20
+ declare function useResizeIntersectionEffect({
21
+ timelineContainerElement,
22
+ timelineChunks
23
+ }: UseResizeEffectProps): void;
24
+ //#endregion
25
+ export { useResizeIntersectionEffect };
26
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,50 @@
1
+ /*
2
+ * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.
3
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
4
+ * you may not use this file except in compliance with the License. You may obtain a copy
5
+ * of the License at https://www.apache.org/licenses/LICENSE-2.0
6
+ *
7
+ * Unless required by applicable law or agreed to in writing, software distributed under
8
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
9
+ * OF ANY KIND, either express or implied. See the License for the specific language
10
+ * governing permissions and limitations under the License.
11
+ */
12
+
13
+
14
+ import { useEffect, useReducer } from "react";
15
+
16
+ //#region src/components/gantt/hooks/use-resize-intersection-effect/index.ts
17
+ function getResizeElementsToObserve(timelineChunks, timelineContainerElement) {
18
+ if (timelineChunks.length < 3) return [null, null];
19
+ const expansionThresholdChunk = timelineChunks[timelineChunks.length - 1];
20
+ const contractionThresholdChunk = timelineChunks[timelineChunks.length - 3];
21
+ return [timelineContainerElement.querySelector(`[data-timestamp="${expansionThresholdChunk?.timestampMs}"]`), timelineContainerElement.querySelector(`[data-timestamp="${contractionThresholdChunk?.timestampMs}"]`)];
22
+ }
23
+ function useResizeIntersectionEffect({ timelineContainerElement, timelineChunks }) {
24
+ const [, bumpLayoutTick] = useReducer((prev) => prev + 1, 0);
25
+ useEffect(() => {
26
+ if (!timelineContainerElement) return;
27
+ const [expansionElement, contractionElement] = getResizeElementsToObserve(timelineChunks, timelineContainerElement);
28
+ if (!(expansionElement && contractionElement)) return;
29
+ const intersectionObserverOptions = {
30
+ root: timelineContainerElement,
31
+ threshold: 0
32
+ };
33
+ const intersectionObserver = new IntersectionObserver((entries) => {
34
+ for (const entry of entries) {
35
+ const isExpansionElement = entry.target === expansionElement;
36
+ const isContractionElement = entry.target === contractionElement;
37
+ if (isExpansionElement && entry.isIntersecting || isContractionElement && !entry.isIntersecting) bumpLayoutTick();
38
+ }
39
+ }, intersectionObserverOptions);
40
+ intersectionObserver.observe(expansionElement);
41
+ intersectionObserver.observe(contractionElement);
42
+ return () => {
43
+ intersectionObserver.disconnect();
44
+ };
45
+ }, [timelineContainerElement, timelineChunks]);
46
+ }
47
+
48
+ //#endregion
49
+ export { useResizeIntersectionEffect };
50
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["intersectionObserverOptions: IntersectionObserverInit"],"sources":["../../../../../src/components/gantt/hooks/use-resize-intersection-effect/index.ts"],"sourcesContent":["// __private-exports\n/*\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 { useEffect, useReducer } from 'react';\nimport type { GanttTimelineChunkObject } from '../../types';\n\ntype UseResizeEffectProps = {\n timelineContainerElement: HTMLDivElement | null;\n timelineChunks: GanttTimelineChunkObject[];\n};\n\nfunction getResizeElementsToObserve(\n timelineChunks: GanttTimelineChunkObject[],\n timelineContainerElement: HTMLDivElement,\n): [Element | null, Element | null] {\n if (timelineChunks.length < 3) {\n return [null, null];\n }\n\n const expansionThresholdChunk = timelineChunks[timelineChunks.length - 1];\n const contractionThresholdChunk = timelineChunks[timelineChunks.length - 3];\n\n const expansionThresholdElement = timelineContainerElement.querySelector(\n `[data-timestamp=\"${expansionThresholdChunk?.timestampMs}\"]`,\n );\n const contractionThresholdElement = timelineContainerElement.querySelector(\n `[data-timestamp=\"${contractionThresholdChunk?.timestampMs}\"]`,\n );\n\n return [expansionThresholdElement, contractionThresholdElement];\n}\n\nexport function useResizeIntersectionEffect({\n timelineContainerElement,\n timelineChunks,\n}: UseResizeEffectProps) {\n const [, bumpLayoutTick] = useReducer((prev) => prev + 1, 0);\n\n useEffect(() => {\n if (!timelineContainerElement) {\n return;\n }\n\n const [expansionElement, contractionElement] = getResizeElementsToObserve(\n timelineChunks,\n timelineContainerElement,\n );\n\n const bothElementsDefined = expansionElement && contractionElement;\n\n if (!bothElementsDefined) {\n return;\n }\n\n const intersectionObserverOptions: IntersectionObserverInit = {\n root: timelineContainerElement,\n threshold: 0,\n };\n\n // IntersectionObserver fires an initial callback on observe(). This does not\n // cause a loop because a bump re-renders with the new container width,\n // producing new chunks whose expansion element is offscreen (not intersecting)\n // and whose contraction element is onscreen (intersecting) — neither condition\n // triggers another bump.\n const intersectionObserver = new IntersectionObserver((entries) => {\n for (const entry of entries) {\n const isExpansionElement = entry.target === expansionElement;\n const isContractionElement = entry.target === contractionElement;\n\n const shouldBumpLayoutTick =\n (isExpansionElement && entry.isIntersecting) ||\n (isContractionElement && !entry.isIntersecting);\n\n if (shouldBumpLayoutTick) {\n bumpLayoutTick();\n }\n }\n }, intersectionObserverOptions);\n\n intersectionObserver.observe(expansionElement);\n intersectionObserver.observe(contractionElement);\n\n return () => {\n intersectionObserver.disconnect();\n };\n }, [timelineContainerElement, timelineChunks]);\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAqBA,SAAS,2BACP,gBACA,0BACkC;AAClC,KAAI,eAAe,SAAS,EAC1B,QAAO,CAAC,MAAM,KAAK;CAGrB,MAAM,0BAA0B,eAAe,eAAe,SAAS;CACvE,MAAM,4BAA4B,eAAe,eAAe,SAAS;AASzE,QAAO,CAP2B,yBAAyB,cACzD,oBAAoB,yBAAyB,YAAY,IAC1D,EACmC,yBAAyB,cAC3D,oBAAoB,2BAA2B,YAAY,IAC5D,CAE8D;;AAGjE,SAAgB,4BAA4B,EAC1C,0BACA,kBACuB;CACvB,MAAM,GAAG,kBAAkB,YAAY,SAAS,OAAO,GAAG,EAAE;AAE5D,iBAAgB;AACd,MAAI,CAAC,yBACH;EAGF,MAAM,CAAC,kBAAkB,sBAAsB,2BAC7C,gBACA,yBACD;AAID,MAAI,EAFwB,oBAAoB,oBAG9C;EAGF,MAAMA,8BAAwD;GAC5D,MAAM;GACN,WAAW;GACZ;EAOD,MAAM,uBAAuB,IAAI,sBAAsB,YAAY;AACjE,QAAK,MAAM,SAAS,SAAS;IAC3B,MAAM,qBAAqB,MAAM,WAAW;IAC5C,MAAM,uBAAuB,MAAM,WAAW;AAM9C,QAHG,sBAAsB,MAAM,kBAC5B,wBAAwB,CAAC,MAAM,eAGhC,iBAAgB;;KAGnB,4BAA4B;AAE/B,uBAAqB,QAAQ,iBAAiB;AAC9C,uBAAqB,QAAQ,mBAAmB;AAEhD,eAAa;AACX,wBAAqB,YAAY;;IAElC,CAAC,0BAA0B,eAAe,CAAC"}
@@ -0,0 +1,5 @@
1
+ //#region src/components/gantt/hooks/use-root-element-height/index.d.ts
2
+ declare function useRootElementHeight(): number;
3
+ //#endregion
4
+ export { useRootElementHeight };
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,24 @@
1
+ /*
2
+ * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.
3
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
4
+ * you may not use this file except in compliance with the License. You may obtain a copy
5
+ * of the License at https://www.apache.org/licenses/LICENSE-2.0
6
+ *
7
+ * Unless required by applicable law or agreed to in writing, software distributed under
8
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
9
+ * OF ANY KIND, either express or implied. See the License for the specific language
10
+ * governing permissions and limitations under the License.
11
+ */
12
+
13
+
14
+ import { useGanttContext } from "../../context/index.js";
15
+
16
+ //#region src/components/gantt/hooks/use-root-element-height/index.ts
17
+ function useRootElementHeight() {
18
+ const { rootElement } = useGanttContext();
19
+ return rootElement?.clientHeight ?? 0;
20
+ }
21
+
22
+ //#endregion
23
+ export { useRootElementHeight };
24
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../../src/components/gantt/hooks/use-root-element-height/index.ts"],"sourcesContent":["// __private-exports\n/*\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 { useGanttContext } from '@/components/gantt/context';\n\nexport function useRootElementHeight() {\n const { rootElement } = useGanttContext();\n\n const rootElementHeight = rootElement?.clientHeight ?? 0;\n\n return rootElementHeight;\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAeA,SAAgB,uBAAuB;CACrC,MAAM,EAAE,gBAAgB,iBAAiB;AAIzC,QAF0B,aAAa,gBAAgB"}
@@ -0,0 +1,5 @@
1
+ //#region src/components/gantt/hooks/use-scrollbar-height/index.d.ts
2
+ declare function useScrollbarHeight(): number;
3
+ //#endregion
4
+ export { useScrollbarHeight };
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,40 @@
1
+ /*
2
+ * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.
3
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
4
+ * you may not use this file except in compliance with the License. You may obtain a copy
5
+ * of the License at https://www.apache.org/licenses/LICENSE-2.0
6
+ *
7
+ * Unless required by applicable law or agreed to in writing, software distributed under
8
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
9
+ * OF ANY KIND, either express or implied. See the License for the specific language
10
+ * governing permissions and limitations under the License.
11
+ */
12
+
13
+
14
+ import { useGanttContext } from "../../context/index.js";
15
+ import { useEffect, useState } from "react";
16
+
17
+ //#region src/components/gantt/hooks/use-scrollbar-height/index.ts
18
+ function useScrollbarHeight() {
19
+ const { ganttContentElement } = useGanttContext();
20
+ const [scrollbarHeight, setScrollbarHeight] = useState(0);
21
+ useEffect(() => {
22
+ if (!ganttContentElement) return;
23
+ const calculateScrollbarHeight = () => {
24
+ setScrollbarHeight(ganttContentElement.offsetHeight - ganttContentElement.clientHeight);
25
+ };
26
+ calculateScrollbarHeight();
27
+ const resizeObserver = new ResizeObserver(() => {
28
+ calculateScrollbarHeight();
29
+ });
30
+ resizeObserver.observe(ganttContentElement);
31
+ return () => {
32
+ resizeObserver.disconnect();
33
+ };
34
+ }, [ganttContentElement]);
35
+ return scrollbarHeight;
36
+ }
37
+
38
+ //#endregion
39
+ export { useScrollbarHeight };
40
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../../src/components/gantt/hooks/use-scrollbar-height/index.ts"],"sourcesContent":["// __private-exports\n/*\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 { useEffect, useState } from 'react';\nimport { useGanttContext } from '../../context';\n\nexport function useScrollbarHeight() {\n const { ganttContentElement } = useGanttContext();\n const [scrollbarHeight, setScrollbarHeight] = useState<number>(0);\n\n useEffect(() => {\n if (!ganttContentElement) {\n return;\n }\n\n const calculateScrollbarHeight = () => {\n const height =\n ganttContentElement.offsetHeight - ganttContentElement.clientHeight;\n setScrollbarHeight(height);\n };\n\n // Calculate on mount\n calculateScrollbarHeight();\n\n // Set up ResizeObserver to recalculate when dimensions change. This is\n // needed because the height of ganttContentElement can change following\n // a re-render. This hook does not access any of the values from\n // TemporalDataProvider which would affect the height of ganttContentElement,\n // so a ResizeObserver is used to detect changes.\n const resizeObserver = new ResizeObserver(() => {\n calculateScrollbarHeight();\n });\n\n resizeObserver.observe(ganttContentElement);\n\n // Clean up observer on unmount\n return () => {\n resizeObserver.disconnect();\n };\n }, [ganttContentElement]);\n\n return scrollbarHeight;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAgBA,SAAgB,qBAAqB;CACnC,MAAM,EAAE,wBAAwB,iBAAiB;CACjD,MAAM,CAAC,iBAAiB,sBAAsB,SAAiB,EAAE;AAEjE,iBAAgB;AACd,MAAI,CAAC,oBACH;EAGF,MAAM,iCAAiC;AAGrC,sBADE,oBAAoB,eAAe,oBAAoB,aAC/B;;AAI5B,4BAA0B;EAO1B,MAAM,iBAAiB,IAAI,qBAAqB;AAC9C,6BAA0B;IAC1B;AAEF,iBAAe,QAAQ,oBAAoB;AAG3C,eAAa;AACX,kBAAe,YAAY;;IAE5B,CAAC,oBAAoB,CAAC;AAEzB,QAAO"}
@@ -0,0 +1,19 @@
1
+ //#region src/components/gantt/hooks/use-total-data-region-thresholds/index.d.ts
2
+ type UseTotalDataRegionThresholdsProps = {
3
+ totalRowsCount: number;
4
+ verticalScrollElement: HTMLDivElement | null;
5
+ };
6
+ /**
7
+ * A hook that notifies the Gantt component consumer when certain thresholds are
8
+ * reached in the total data region currently being virtualized.
9
+ *
10
+ * This allows the consumer to perform actions when the rendered region reaches
11
+ * certain thresholds (like fetching additional data to provide to the Gantt component).
12
+ */
13
+ declare function useTotalDataRegionThresholds({
14
+ totalRowsCount,
15
+ verticalScrollElement
16
+ }: UseTotalDataRegionThresholdsProps): void;
17
+ //#endregion
18
+ export { useTotalDataRegionThresholds };
19
+ //# sourceMappingURL=index.d.ts.map