@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,42 @@
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
+ @reference '@accelint/design-foundation/styles';
14
+
15
+ @layer components.l1 {
16
+ .current-time-marker {
17
+ --top: attr(data-top px);
18
+
19
+ @apply font-display text-body-xs fg-primary-bold pointer-events-none absolute z-10 flex flex-col items-center justify-center;
20
+ top: var(--top);
21
+ transform: translateX(calc(var(--translate-x) - 50%));
22
+ }
23
+
24
+ .current-time-label {
25
+ @apply outline-accent-primary-bold p-xs text-body-xs border;
26
+ border-color: var(--outline-accent-primary-bold);
27
+ border-radius: 3px;
28
+ }
29
+
30
+ .current-time-indicator {
31
+ @apply fg-accent-primary-bold w-px;
32
+ --dash: 6px;
33
+ --gap: 6px;
34
+ --border: 3px;
35
+ background: repeating-linear-gradient(
36
+ to bottom,
37
+ currentColor 0 var(--dash),
38
+ transparent var(--dash) calc(var(--dash) + var(--gap))
39
+ )
40
+ left / var(--border) 100% no-repeat;
41
+ }
42
+ }
@@ -0,0 +1,31 @@
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 { RefObject } from "react";
14
+
15
+ //#region src/components/gantt/components/current-time/use-current-time-layout/index.d.ts
16
+ type UseCurrentTimeLayoutProps = {
17
+ currentTimeElement: HTMLDivElement | null;
18
+ currentTimeMs: number;
19
+ indicatorElement: HTMLDivElement | null;
20
+ };
21
+ type UseCurrentTimeLayoutValue = {
22
+ labelElementRef: RefObject<HTMLDivElement | null>;
23
+ };
24
+ declare function useCurrentTimeLayout({
25
+ currentTimeElement,
26
+ currentTimeMs,
27
+ indicatorElement
28
+ }: UseCurrentTimeLayoutProps): UseCurrentTimeLayoutValue;
29
+ //#endregion
30
+ export { useCurrentTimeLayout };
31
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,58 @@
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 { GANTT_CONTAINER_TOP_PX } from "../../../constants.js";
15
+ import { selectors } from "../../../store.js";
16
+ import { useGanttContext } from "../../../context/index.js";
17
+ import { useTemporalDataContext } from "../../../context/temporal-data/index.js";
18
+ import { useLayoutSubscription } from "../../../hooks/use-layout-subscription/index.js";
19
+ import { deriveCurrentTimeTranslateX } from "../../../utils/layout.js";
20
+ import { useCallback, useRef } from "react";
21
+
22
+ //#region src/components/gantt/components/current-time/use-current-time-layout/index.ts
23
+ function calculateIndicatorHeight(headerElement, labelElement, verticalScrollElement, horizontalScrollElement, translateX = 0) {
24
+ const ganttHeaderHeight = headerElement?.clientHeight ?? 0;
25
+ const scrollWidth = horizontalScrollElement?.clientWidth ?? 0;
26
+ const scrollHeight = verticalScrollElement?.clientHeight ?? 0;
27
+ const indicatorHeightOffset = ganttHeaderHeight - (GANTT_CONTAINER_TOP_PX + (labelElement?.offsetHeight ?? 0));
28
+ const totalIndicatorHeight = scrollHeight + indicatorHeightOffset;
29
+ return translateX >= scrollWidth ? indicatorHeightOffset : totalIndicatorHeight;
30
+ }
31
+ function useCurrentTimeLayout({ currentTimeElement, currentTimeMs, indicatorElement }) {
32
+ const { rootElement, ganttContentElement, headerElement } = useGanttContext();
33
+ const { msPerPx } = useTemporalDataContext();
34
+ const labelElementRef = useRef(null);
35
+ useLayoutSubscription({
36
+ callback: useCallback((currentPositionMs) => {
37
+ if (!currentTimeElement) return;
38
+ const translateX = deriveCurrentTimeTranslateX(currentTimeMs, msPerPx, currentPositionMs);
39
+ const indicatorHeight = calculateIndicatorHeight(headerElement, labelElementRef.current, rootElement, ganttContentElement, translateX);
40
+ currentTimeElement.style.setProperty("--translate-x", `${translateX}px`);
41
+ if (indicatorElement) indicatorElement.style.height = `${indicatorHeight}px`;
42
+ }, [
43
+ currentTimeElement,
44
+ msPerPx,
45
+ currentTimeMs,
46
+ indicatorElement,
47
+ headerElement,
48
+ rootElement,
49
+ ganttContentElement
50
+ ]),
51
+ selector: selectors.currentPositionMs
52
+ });
53
+ return { labelElementRef };
54
+ }
55
+
56
+ //#endregion
57
+ export { useCurrentTimeLayout };
58
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../../../src/components/gantt/components/current-time/use-current-time-layout/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 { type RefObject, useCallback, useRef } from 'react';\nimport { GANTT_CONTAINER_TOP_PX } from '@/components/gantt/constants';\nimport { useGanttContext } from '@/components/gantt/context';\nimport { useTemporalDataContext } from '@/components/gantt/context/temporal-data';\nimport { useLayoutSubscription } from '@/components/gantt/hooks/use-layout-subscription';\nimport { selectors } from '@/components/gantt/store';\nimport { deriveCurrentTimeTranslateX } from '@/components/gantt/utils/layout';\n\ntype UseCurrentTimeLayoutProps = {\n currentTimeElement: HTMLDivElement | null;\n currentTimeMs: number;\n indicatorElement: HTMLDivElement | null;\n};\n\ntype UseCurrentTimeLayoutValue = {\n labelElementRef: RefObject<HTMLDivElement | null>;\n};\n\nfunction calculateIndicatorHeight(\n headerElement: HTMLDivElement | null,\n labelElement: HTMLDivElement | null,\n verticalScrollElement: HTMLDivElement | null,\n horizontalScrollElement: HTMLDivElement | null,\n translateX = 0,\n) {\n const ganttHeaderHeight = headerElement?.clientHeight ?? 0;\n const scrollWidth = horizontalScrollElement?.clientWidth ?? 0;\n const scrollHeight = verticalScrollElement?.clientHeight ?? 0;\n const labelHeight = labelElement?.offsetHeight ?? 0;\n\n // Distance between vertical scrollbar and bottom of label element.\n // Used as the indicator height when the indicator is visually\n // located above the vertical scrollbar so that the indicator\n // dashes aren't overlaid on the scrollbar\n const indicatorHeightOffset =\n ganttHeaderHeight - (GANTT_CONTAINER_TOP_PX + labelHeight);\n\n // Default indicator height when the indicator is not\n // visually located above the vertical scrollbar.\n const totalIndicatorHeight = scrollHeight + indicatorHeightOffset;\n\n return translateX >= scrollWidth\n ? indicatorHeightOffset\n : totalIndicatorHeight;\n}\n\nexport function useCurrentTimeLayout({\n currentTimeElement,\n currentTimeMs,\n indicatorElement,\n}: UseCurrentTimeLayoutProps): UseCurrentTimeLayoutValue {\n const { rootElement, ganttContentElement, headerElement } = useGanttContext();\n const { msPerPx } = useTemporalDataContext();\n\n const labelElementRef = useRef<HTMLDivElement>(null);\n\n const updateElementLayout = useCallback(\n (currentPositionMs: number) => {\n if (!currentTimeElement) {\n return;\n }\n\n const translateX = deriveCurrentTimeTranslateX(\n currentTimeMs,\n msPerPx,\n currentPositionMs,\n );\n const indicatorHeight = calculateIndicatorHeight(\n headerElement,\n labelElementRef.current,\n rootElement,\n ganttContentElement,\n translateX,\n );\n\n currentTimeElement.style.setProperty('--translate-x', `${translateX}px`);\n\n if (indicatorElement) {\n indicatorElement.style.height = `${indicatorHeight}px`;\n }\n },\n [\n currentTimeElement,\n msPerPx,\n currentTimeMs,\n indicatorElement,\n headerElement,\n rootElement,\n ganttContentElement,\n ],\n );\n\n useLayoutSubscription({\n callback: updateElementLayout,\n selector: selectors.currentPositionMs,\n });\n\n return { labelElementRef };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AA+BA,SAAS,yBACP,eACA,cACA,uBACA,yBACA,aAAa,GACb;CACA,MAAM,oBAAoB,eAAe,gBAAgB;CACzD,MAAM,cAAc,yBAAyB,eAAe;CAC5D,MAAM,eAAe,uBAAuB,gBAAgB;CAO5D,MAAM,wBACJ,qBAAqB,0BAPH,cAAc,gBAAgB;CAWlD,MAAM,uBAAuB,eAAe;AAE5C,QAAO,cAAc,cACjB,wBACA;;AAGN,SAAgB,qBAAqB,EACnC,oBACA,eACA,oBACuD;CACvD,MAAM,EAAE,aAAa,qBAAqB,kBAAkB,iBAAiB;CAC7E,MAAM,EAAE,YAAY,wBAAwB;CAE5C,MAAM,kBAAkB,OAAuB,KAAK;AAsCpD,uBAAsB;EACpB,UArC0B,aACzB,sBAA8B;AAC7B,OAAI,CAAC,mBACH;GAGF,MAAM,aAAa,4BACjB,eACA,SACA,kBACD;GACD,MAAM,kBAAkB,yBACtB,eACA,gBAAgB,SAChB,aACA,qBACA,WACD;AAED,sBAAmB,MAAM,YAAY,iBAAiB,GAAG,WAAW,IAAI;AAExE,OAAI,iBACF,kBAAiB,MAAM,SAAS,GAAG,gBAAgB;KAGvD;GACE;GACA;GACA;GACA;GACA;GACA;GACA;GACD,CACF;EAIC,UAAU,UAAU;EACrB,CAAC;AAEF,QAAO,EAAE,iBAAiB"}
@@ -0,0 +1,25 @@
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 { PropsWithChildren } from "react";
14
+ import * as react_jsx_runtime211 from "react/jsx-runtime";
15
+
16
+ //#region src/components/gantt/components/header/index.d.ts
17
+ declare function ContentHeader({
18
+ children
19
+ }: PropsWithChildren): react_jsx_runtime211.JSX.Element;
20
+ declare function PanelHeader({
21
+ children
22
+ }: PropsWithChildren): react_jsx_runtime211.JSX.Element;
23
+ //#endregion
24
+ export { ContentHeader, PanelHeader };
25
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,41 @@
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 { GANTT_HEADER_HEIGHT_PX } from "../../constants.js";
15
+ import { useGanttContext } from "../../context/index.js";
16
+ import { jsx } from "react/jsx-runtime";
17
+ import styles from "./styles.module.css";
18
+
19
+ //#region src/components/gantt/components/header/index.tsx
20
+ function Header({ children, ref }) {
21
+ return /* @__PURE__ */ jsx("div", {
22
+ ref,
23
+ className: styles.header,
24
+ "data-height": GANTT_HEADER_HEIGHT_PX,
25
+ children
26
+ });
27
+ }
28
+ function ContentHeader({ children }) {
29
+ const { assignHeaderElementRef } = useGanttContext();
30
+ return /* @__PURE__ */ jsx(Header, {
31
+ ref: assignHeaderElementRef,
32
+ children
33
+ });
34
+ }
35
+ function PanelHeader({ children }) {
36
+ return /* @__PURE__ */ jsx(Header, { children });
37
+ }
38
+
39
+ //#endregion
40
+ export { ContentHeader, PanelHeader };
41
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../../src/components/gantt/components/header/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 { GANTT_HEADER_HEIGHT_PX } from '../../constants';\nimport { useGanttContext } from '../../context';\nimport styles from './styles.module.css';\nimport type { PropsWithChildren, Ref } from 'react';\n\ntype HeaderProps = {\n ref?: Ref<HTMLDivElement | null>;\n};\n\nfunction Header({ children, ref }: PropsWithChildren<HeaderProps>) {\n return (\n <div\n ref={ref}\n className={styles.header}\n data-height={GANTT_HEADER_HEIGHT_PX}\n >\n {children}\n </div>\n );\n}\n\nexport function ContentHeader({ children }: PropsWithChildren) {\n const { assignHeaderElementRef } = useGanttContext();\n\n return <Header ref={assignHeaderElementRef}>{children}</Header>;\n}\n\nexport function PanelHeader({ children }: PropsWithChildren) {\n return <Header>{children}</Header>;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAsBA,SAAS,OAAO,EAAE,UAAU,OAAuC;AACjE,QACE,oBAAC;EACM;EACL,WAAW,OAAO;EAClB,eAAa;EAEZ;GACG;;AAIV,SAAgB,cAAc,EAAE,YAA+B;CAC7D,MAAM,EAAE,2BAA2B,iBAAiB;AAEpD,QAAO,oBAAC;EAAO,KAAK;EAAyB;GAAkB;;AAGjE,SAAgB,YAAY,EAAE,YAA+B;AAC3D,QAAO,oBAAC,UAAQ,WAAkB"}
@@ -0,0 +1,23 @@
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
+ @reference '@accelint/design-foundation/styles';
14
+
15
+ @layer components.l1 {
16
+ .header {
17
+ @apply sticky top-0 left-0 z-10 flex shrink-0 grow-0 items-end border-b bg-inherit;
18
+
19
+ --height: attr(data-height px);
20
+ height: var(--height);
21
+ border-color: var(--outline-static);
22
+ }
23
+ }
@@ -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
+ import { PropsWithChildren } from "react";
14
+ import * as react_jsx_runtime214 from "react/jsx-runtime";
15
+
16
+ //#region src/components/gantt/components/panel-row/index.d.ts
17
+ /** Row wrapper for the panel side, typically containing a row label. Paired 1:1 with `GanttContentRow`. */
18
+ declare function GanttPanelRow({
19
+ children,
20
+ ...rest
21
+ }: PropsWithChildren): react_jsx_runtime214.JSX.Element;
22
+ //#endregion
23
+ export { GanttPanelRow };
24
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,33 @@
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 { jsx } from "react/jsx-runtime";
16
+ import styles from "./styles.module.css";
17
+
18
+ //#region src/components/gantt/components/panel-row/index.tsx
19
+ /** Row wrapper for the panel side, typically containing a row label. Paired 1:1 with `GanttContentRow`. */
20
+ function GanttPanelRow({ children, ...rest }) {
21
+ const { rowHeightPx } = useGanttContext();
22
+ return /* @__PURE__ */ jsx("div", {
23
+ className: styles.row,
24
+ role: "listitem",
25
+ "data-height": rowHeightPx,
26
+ ...rest,
27
+ children
28
+ });
29
+ }
30
+
31
+ //#endregion
32
+ export { GanttPanelRow };
33
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../../src/components/gantt/components/panel-row/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\nimport { useGanttContext } from '../../context';\nimport styles from './styles.module.css';\nimport type { PropsWithChildren } from 'react';\n\n/** Row wrapper for the panel side, typically containing a row label. Paired 1:1 with `GanttContentRow`. */\nexport function GanttPanelRow({ children, ...rest }: PropsWithChildren) {\n const { rowHeightPx } = useGanttContext();\n\n return (\n // biome-ignore lint/a11y/useSemanticElements: <parent div role list>\n <div\n className={styles.row}\n role='listitem'\n data-height={rowHeightPx}\n // spread props, including virtualizer-augmented style prop, if used\n {...rest}\n >\n {children}\n </div>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAiBA,SAAgB,cAAc,EAAE,UAAU,GAAG,QAA2B;CACtE,MAAM,EAAE,gBAAgB,iBAAiB;AAEzC,QAEE,oBAAC;EACC,WAAW,OAAO;EAClB,MAAK;EACL,eAAa;EAEb,GAAI;EAEH;GACG"}
@@ -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
+ @reference '@accelint/design-foundation/styles';
14
+
15
+ @layer components.l1 {
16
+ .row {
17
+ --height: attr(data-height px);
18
+
19
+ @apply py-xxs px-m relative flex items-center border-b;
20
+
21
+ height: var(--height);
22
+ border-color: var(--outline-static);
23
+ }
24
+ }
@@ -0,0 +1,25 @@
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 { PropsWithChildren } from "react";
14
+ import * as react_jsx_runtime218 from "react/jsx-runtime";
15
+
16
+ //#region src/components/gantt/components/rows-virtualizer/index.d.ts
17
+ declare function ContentRowsVirtualizer({
18
+ children
19
+ }: PropsWithChildren): react_jsx_runtime218.JSX.Element;
20
+ declare function PanelRowsVirtualizer({
21
+ children
22
+ }: PropsWithChildren): react_jsx_runtime218.JSX.Element;
23
+ //#endregion
24
+ export { ContentRowsVirtualizer, PanelRowsVirtualizer };
25
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,67 @@
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 { GANTT_HEADER_HEIGHT_PX } from "../../constants.js";
15
+ import { useRootElementHeight } from "../../hooks/use-root-element-height/index.js";
16
+ import { useGanttContext } from "../../context/index.js";
17
+ import { useTemporalDataContext } from "../../context/temporal-data/index.js";
18
+ import { useTotalDataRegionThresholds } from "../../hooks/use-total-data-region-thresholds/index.js";
19
+ import { useRenderedRows } from "./use-rendered-rows/index.js";
20
+ import { useScrollSync } from "./use-scroll-sync/index.js";
21
+ import { Children } from "react";
22
+ import { jsx } from "react/jsx-runtime";
23
+ import styles from "./styles.module.css";
24
+
25
+ //#region src/components/gantt/components/rows-virtualizer/index.tsx
26
+ function RowsVirtualizerRoot({ children, role, ...rest }) {
27
+ const rootElementHeight = useRootElementHeight();
28
+ const { height, renderedRows } = useRenderedRows({
29
+ children,
30
+ heightPx: rootElementHeight - GANTT_HEADER_HEIGHT_PX
31
+ });
32
+ return /* @__PURE__ */ jsx("div", {
33
+ className: styles.container,
34
+ "data-height": rootElementHeight - GANTT_HEADER_HEIGHT_PX,
35
+ ...rest,
36
+ children: /* @__PURE__ */ jsx("div", {
37
+ className: styles["inner-container"],
38
+ "data-height": height,
39
+ role,
40
+ children: renderedRows
41
+ })
42
+ });
43
+ }
44
+ function ContentRowsVirtualizer({ children }) {
45
+ const { ganttContentElement } = useGanttContext();
46
+ const { totalBounds, msPerPx } = useTemporalDataContext();
47
+ const width = (totalBounds.endMs - totalBounds.startMs) / msPerPx;
48
+ useTotalDataRegionThresholds({
49
+ totalRowsCount: Children.count(children),
50
+ verticalScrollElement: ganttContentElement
51
+ });
52
+ useScrollSync({ horizontalScrollElement: ganttContentElement });
53
+ return /* @__PURE__ */ jsx(RowsVirtualizerRoot, {
54
+ "data-width": width,
55
+ children
56
+ });
57
+ }
58
+ function PanelRowsVirtualizer({ children }) {
59
+ return /* @__PURE__ */ jsx(RowsVirtualizerRoot, {
60
+ role: "list",
61
+ children
62
+ });
63
+ }
64
+
65
+ //#endregion
66
+ export { ContentRowsVirtualizer, PanelRowsVirtualizer };
67
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../../src/components/gantt/components/rows-virtualizer/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 { Children, type ComponentProps, type PropsWithChildren } from 'react';\nimport { useGanttContext } from '@/components/gantt/context';\nimport { useRootElementHeight } from '@/components/gantt/hooks/use-root-element-height';\nimport { useTotalDataRegionThresholds } from '@/components/gantt/hooks/use-total-data-region-thresholds';\nimport { GANTT_HEADER_HEIGHT_PX } from '../../constants';\nimport { useTemporalDataContext } from '../../context/temporal-data';\nimport styles from './styles.module.css';\nimport { useRenderedRows } from './use-rendered-rows';\nimport { useScrollSync } from './use-scroll-sync';\n\ntype RowsVirtualizerRootProps = ComponentProps<'div'>;\n\nfunction RowsVirtualizerRoot({\n children,\n role,\n ...rest\n}: RowsVirtualizerRootProps) {\n const rootElementHeight = useRootElementHeight();\n\n const { height, renderedRows } = useRenderedRows({\n children,\n heightPx: rootElementHeight - GANTT_HEADER_HEIGHT_PX,\n });\n\n return (\n <div\n className={styles.container}\n data-height={rootElementHeight - GANTT_HEADER_HEIGHT_PX}\n {...rest}\n >\n <div\n className={styles['inner-container']}\n data-height={height}\n role={role}\n >\n {renderedRows}\n </div>\n </div>\n );\n}\n\nexport function ContentRowsVirtualizer({ children }: PropsWithChildren) {\n const { ganttContentElement } = useGanttContext();\n const { totalBounds, msPerPx } = useTemporalDataContext();\n\n const width = (totalBounds.endMs - totalBounds.startMs) / msPerPx;\n\n useTotalDataRegionThresholds({\n totalRowsCount: Children.count(children),\n verticalScrollElement: ganttContentElement,\n });\n\n useScrollSync({\n horizontalScrollElement: ganttContentElement,\n });\n\n return (\n <RowsVirtualizerRoot data-width={width}>{children}</RowsVirtualizerRoot>\n );\n}\n\nexport function PanelRowsVirtualizer({ children }: PropsWithChildren) {\n return <RowsVirtualizerRoot role='list'>{children}</RowsVirtualizerRoot>;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAyBA,SAAS,oBAAoB,EAC3B,UACA,MACA,GAAG,QACwB;CAC3B,MAAM,oBAAoB,sBAAsB;CAEhD,MAAM,EAAE,QAAQ,iBAAiB,gBAAgB;EAC/C;EACA,UAAU,oBAAoB;EAC/B,CAAC;AAEF,QACE,oBAAC;EACC,WAAW,OAAO;EAClB,eAAa,oBAAoB;EACjC,GAAI;YAEJ,oBAAC;GACC,WAAW,OAAO;GAClB,eAAa;GACP;aAEL;IACG;GACF;;AAIV,SAAgB,uBAAuB,EAAE,YAA+B;CACtE,MAAM,EAAE,wBAAwB,iBAAiB;CACjD,MAAM,EAAE,aAAa,YAAY,wBAAwB;CAEzD,MAAM,SAAS,YAAY,QAAQ,YAAY,WAAW;AAE1D,8BAA6B;EAC3B,gBAAgB,SAAS,MAAM,SAAS;EACxC,uBAAuB;EACxB,CAAC;AAEF,eAAc,EACZ,yBAAyB,qBAC1B,CAAC;AAEF,QACE,oBAAC;EAAoB,cAAY;EAAQ;GAA+B;;AAI5E,SAAgB,qBAAqB,EAAE,YAA+B;AACpE,QAAO,oBAAC;EAAoB,MAAK;EAAQ;GAA+B"}
@@ -0,0 +1,30 @@
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
+ @reference '@accelint/design-foundation/styles';
14
+
15
+ @layer components.l1 {
16
+ .container {
17
+ @apply relative min-w-full overflow-y-hidden;
18
+
19
+ --width: attr(data-width px);
20
+ width: var(--width);
21
+ }
22
+ .inner-container {
23
+ --height: attr(data-height px);
24
+ --width: attr(data-width px);
25
+
26
+ @apply relative w-full min-w-full overflow-hidden;
27
+ height: var(--height);
28
+ width: var(--width);
29
+ }
30
+ }
@@ -0,0 +1,29 @@
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 { JSX, PropsWithChildren, ReactElement } from "react";
14
+
15
+ //#region src/components/gantt/components/rows-virtualizer/use-rendered-rows/index.d.ts
16
+ type UseRenderedRowsValue = {
17
+ height: number;
18
+ renderedRows: ReactElement<JSX.IntrinsicElements['div']>[];
19
+ };
20
+ type UseRenderedRowsProps = {
21
+ heightPx: number;
22
+ };
23
+ declare function useRenderedRows({
24
+ children,
25
+ heightPx
26
+ }: PropsWithChildren<UseRenderedRowsProps>): UseRenderedRowsValue;
27
+ //#endregion
28
+ export { useRenderedRows };
29
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,57 @@
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, useGanttStoreApi } from "../../../context/store/index.js";
16
+ import { useGanttContext } from "../../../context/index.js";
17
+ import { deriveRenderedSlice } from "../../../utils/layout.js";
18
+ import { useScrollbarHeight } from "../../../hooks/use-scrollbar-height/index.js";
19
+ import { Children, cloneElement, useEffect, useMemo } from "react";
20
+
21
+ //#region src/components/gantt/components/rows-virtualizer/use-rendered-rows/index.ts
22
+ const applyVirtualizedRowStyles = (startIndex, rowHeightPx) => (element, index) => cloneElement(element, { style: {
23
+ ...element.props.style,
24
+ position: "absolute",
25
+ transform: `translateY(${rowHeightPx * (startIndex + index)}px)`,
26
+ width: "100%"
27
+ } });
28
+ function useRenderedRows({ children, heightPx }) {
29
+ const { rowHeightPx } = useGanttContext();
30
+ const store = useGanttStoreApi();
31
+ const roundedCurrentRowScrollPx = useGanttStore(selectors.roundedCurrentRowScrollPx);
32
+ const horizontalScrollbarHeight = useScrollbarHeight();
33
+ const { start, end } = deriveRenderedSlice(roundedCurrentRowScrollPx, rowHeightPx, heightPx);
34
+ const allRows = useMemo(() => Children.toArray(children), [children]);
35
+ const renderedRows = useMemo(() => Children.map(allRows.slice(start, end), applyVirtualizedRowStyles(start, rowHeightPx)) ?? [], [
36
+ allRows,
37
+ start,
38
+ end,
39
+ rowHeightPx
40
+ ]);
41
+ const virtualizedHeight = useMemo(() => Children.count(children) * rowHeightPx + horizontalScrollbarHeight, [
42
+ children,
43
+ rowHeightPx,
44
+ horizontalScrollbarHeight
45
+ ]);
46
+ useEffect(() => {
47
+ store.setState({ virtualizedHeightPx: virtualizedHeight });
48
+ }, [virtualizedHeight, store]);
49
+ return {
50
+ height: virtualizedHeight,
51
+ renderedRows
52
+ };
53
+ }
54
+
55
+ //#endregion
56
+ export { useRenderedRows };
57
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../../../src/components/gantt/components/rows-virtualizer/use-rendered-rows/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 {\n Children,\n cloneElement,\n type JSX,\n type PropsWithChildren,\n type ReactElement,\n useEffect,\n useMemo,\n} from 'react';\nimport { useGanttContext } from '@/components/gantt/context';\nimport {\n useGanttStore,\n useGanttStoreApi,\n} from '@/components/gantt/context/store';\nimport { useScrollbarHeight } from '@/components/gantt/hooks/use-scrollbar-height';\nimport { selectors } from '@/components/gantt/store';\nimport { deriveRenderedSlice } from '@/components/gantt/utils/layout';\n\ntype RowChild = ReactElement<JSX.IntrinsicElements['div']>;\n\nconst applyVirtualizedRowStyles =\n (startIndex: number, rowHeightPx: number) =>\n (element: RowChild, index: number) =>\n cloneElement(element, {\n style: {\n ...element.props.style,\n position: 'absolute',\n transform: `translateY(${rowHeightPx * (startIndex + index)}px)`,\n width: '100%',\n },\n });\n\ntype UseRenderedRowsValue = {\n height: number;\n renderedRows: ReactElement<JSX.IntrinsicElements['div']>[];\n};\n\ntype UseRenderedRowsProps = {\n heightPx: number;\n};\n\nexport function useRenderedRows({\n children,\n heightPx,\n}: PropsWithChildren<UseRenderedRowsProps>): UseRenderedRowsValue {\n const { rowHeightPx } = useGanttContext();\n const store = useGanttStoreApi();\n const roundedCurrentRowScrollPx = useGanttStore(\n selectors.roundedCurrentRowScrollPx,\n );\n const horizontalScrollbarHeight = useScrollbarHeight();\n\n const { start, end } = deriveRenderedSlice(\n roundedCurrentRowScrollPx,\n rowHeightPx,\n heightPx,\n );\n\n const allRows = useMemo(\n () => Children.toArray(children) as RowChild[],\n [children],\n );\n\n const renderedRows = useMemo(\n () =>\n Children.map(\n allRows.slice(start, end),\n applyVirtualizedRowStyles(start, rowHeightPx),\n ) ?? [],\n [allRows, start, end, rowHeightPx],\n );\n\n const virtualizedHeight = useMemo(\n () => Children.count(children) * rowHeightPx + horizontalScrollbarHeight,\n [children, rowHeightPx, horizontalScrollbarHeight],\n );\n\n // Sets the total virtualized height in store so that it can be used\n // for Gantt overflow management.\n useEffect(() => {\n store.setState({ virtualizedHeightPx: virtualizedHeight });\n }, [virtualizedHeight, store]);\n\n return {\n height: virtualizedHeight,\n renderedRows,\n };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAiCA,MAAM,6BACH,YAAoB,iBACpB,SAAmB,UAClB,aAAa,SAAS,EACpB,OAAO;CACL,GAAG,QAAQ,MAAM;CACjB,UAAU;CACV,WAAW,cAAc,eAAe,aAAa,OAAO;CAC5D,OAAO;CACR,EACF,CAAC;AAWN,SAAgB,gBAAgB,EAC9B,UACA,YACgE;CAChE,MAAM,EAAE,gBAAgB,iBAAiB;CACzC,MAAM,QAAQ,kBAAkB;CAChC,MAAM,4BAA4B,cAChC,UAAU,0BACX;CACD,MAAM,4BAA4B,oBAAoB;CAEtD,MAAM,EAAE,OAAO,QAAQ,oBACrB,2BACA,aACA,SACD;CAED,MAAM,UAAU,cACR,SAAS,QAAQ,SAAS,EAChC,CAAC,SAAS,CACX;CAED,MAAM,eAAe,cAEjB,SAAS,IACP,QAAQ,MAAM,OAAO,IAAI,EACzB,0BAA0B,OAAO,YAAY,CAC9C,IAAI,EAAE,EACT;EAAC;EAAS;EAAO;EAAK;EAAY,CACnC;CAED,MAAM,oBAAoB,cAClB,SAAS,MAAM,SAAS,GAAG,cAAc,2BAC/C;EAAC;EAAU;EAAa;EAA0B,CACnD;AAID,iBAAgB;AACd,QAAM,SAAS,EAAE,qBAAqB,mBAAmB,CAAC;IACzD,CAAC,mBAAmB,MAAM,CAAC;AAE9B,QAAO;EACL,QAAQ;EACR;EACD"}
@@ -0,0 +1,10 @@
1
+ //#region src/components/gantt/components/rows-virtualizer/use-scroll-sync/index.d.ts
2
+ type UseScrollSyncProps = {
3
+ horizontalScrollElement: HTMLDivElement | null;
4
+ };
5
+ declare function useScrollSync({
6
+ horizontalScrollElement
7
+ }: UseScrollSyncProps): void;
8
+ //#endregion
9
+ export { useScrollSync };
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,58 @@
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 { timestampWithinBounds } from "../../../utils/helpers.js";
16
+ import { useGanttContext } from "../../../context/index.js";
17
+ import { useTemporalDataContext } from "../../../context/temporal-data/index.js";
18
+ import { deriveHorizontalScrollPosition } from "../../../utils/layout.js";
19
+ import { useEffect } from "react";
20
+
21
+ //#region src/components/gantt/components/rows-virtualizer/use-scroll-sync/index.ts
22
+ function useScrollSync({ horizontalScrollElement }) {
23
+ const { ganttContentElement, ganttPanelElement, rootElement } = useGanttContext();
24
+ const { totalBounds, msPerPx } = useTemporalDataContext();
25
+ const { startMs: totalStartMs, endMs: totalEndMs } = totalBounds;
26
+ const store = useGanttStoreApi();
27
+ useEffect(() => {
28
+ if (!horizontalScrollElement) return;
29
+ const currentPositionMs = store.getState().currentPositionMs;
30
+ const bounds = {
31
+ startMs: totalStartMs,
32
+ endMs: totalEndMs
33
+ };
34
+ const resetScrollPosition = () => horizontalScrollElement.scrollTo({ left: 0 });
35
+ ganttContentElement?.scrollTo({ top: rootElement?.scrollTop ?? 0 });
36
+ ganttPanelElement?.scrollTo({ top: rootElement?.scrollTop ?? 0 });
37
+ if (!timestampWithinBounds(currentPositionMs, bounds)) {
38
+ resetScrollPosition();
39
+ store.setState({ currentPositionMs: totalStartMs });
40
+ return;
41
+ }
42
+ const scrollPosition = deriveHorizontalScrollPosition(currentPositionMs, msPerPx, bounds);
43
+ horizontalScrollElement.scrollTo({ left: scrollPosition });
44
+ }, [
45
+ totalStartMs,
46
+ totalEndMs,
47
+ msPerPx,
48
+ horizontalScrollElement,
49
+ store,
50
+ ganttContentElement,
51
+ ganttPanelElement,
52
+ rootElement
53
+ ]);
54
+ }
55
+
56
+ //#endregion
57
+ export { useScrollSync };
58
+ //# sourceMappingURL=index.js.map