@rio-cloud/rio-uikit 2.2.1 → 2.3.0-beta.1

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 (412) hide show
  1. package/AnalyticsAnalysisOverlay.d.ts +1 -0
  2. package/AnalyticsAnalysisOverlay.js +5 -0
  3. package/AnalyticsAnalysisOverlay.js.map +1 -0
  4. package/Table.d.ts +2 -0
  5. package/Table.js +23 -0
  6. package/Table.js.map +1 -0
  7. package/TableCol.d.ts +2 -2
  8. package/TableCol.js +1 -1
  9. package/TableHead.d.ts +2 -2
  10. package/TableHead.js +1 -1
  11. package/TableSettingsDialog.d.ts +2 -2
  12. package/TableSettingsDialog.js +1 -1
  13. package/TableToolbar.js +3 -2
  14. package/analyticsAnalysisUtils.d.ts +1 -0
  15. package/analyticsAnalysisUtils.js +13 -0
  16. package/analyticsAnalysisUtils.js.map +1 -0
  17. package/components/analyticsAnalysisOverlay/AnalyticsAnalysisBanner.d.ts +18 -0
  18. package/components/analyticsAnalysisOverlay/AnalyticsAnalysisBanner.js +128 -0
  19. package/components/analyticsAnalysisOverlay/AnalyticsAnalysisBanner.js.map +1 -0
  20. package/components/analyticsAnalysisOverlay/AnalyticsAnalysisOverlay.d.ts +9 -0
  21. package/components/analyticsAnalysisOverlay/AnalyticsAnalysisOverlay.js +73 -0
  22. package/components/analyticsAnalysisOverlay/AnalyticsAnalysisOverlay.js.map +1 -0
  23. package/components/applicationHeader/AppMenuContent.js.map +1 -1
  24. package/components/applicationHeader/ApplicationActionBar.js +4 -4
  25. package/components/applicationHeader/ApplicationActionBar.js.map +1 -1
  26. package/components/applicationHeader/CollapsedNavItem.js +5 -14
  27. package/components/applicationHeader/CollapsedNavItem.js.map +1 -1
  28. package/components/applicationHeader/NavItems.js +10 -10
  29. package/components/applicationHeader/NavItems.js.map +1 -1
  30. package/components/assetTree/AssetTree.js +23 -23
  31. package/components/assetTree/AssetTree.js.map +1 -1
  32. package/components/assetTree/TreeNothingFound.js +2 -2
  33. package/components/assetTree/TreeNothingFound.js.map +1 -1
  34. package/components/assetTree/treeUtils.js.map +1 -1
  35. package/components/autosuggest/AutoSuggest.js +31 -31
  36. package/components/autosuggest/AutoSuggest.js.map +1 -1
  37. package/components/autosuggest/AutoSuggestAddons.js +9 -9
  38. package/components/autosuggest/AutoSuggestAddons.js.map +1 -1
  39. package/components/banner/BannerActions.js +2 -2
  40. package/components/banner/BannerActions.js.map +1 -1
  41. package/components/banner/BannerIcon.js +3 -3
  42. package/components/banner/BannerIcon.js.map +1 -1
  43. package/components/banner/BannerPage.js +4 -4
  44. package/components/banner/BannerPage.js.map +1 -1
  45. package/components/button/Button.d.ts +7 -0
  46. package/components/button/Button.js +73 -65
  47. package/components/button/Button.js.map +1 -1
  48. package/components/checkbox/Checkbox.js +18 -17
  49. package/components/checkbox/Checkbox.js.map +1 -1
  50. package/components/datepicker/DateRangePicker.js +0 -2
  51. package/components/datepicker/DateRangePicker.js.map +1 -1
  52. package/components/datepicker/DayPicker.js +16 -16
  53. package/components/datepicker/DayPicker.js.map +1 -1
  54. package/components/dialog/Dialog.js.map +1 -1
  55. package/components/dialog/DialogHeader.js +23 -20
  56. package/components/dialog/DialogHeader.js.map +1 -1
  57. package/components/dialog/MediaDialog.js +1 -1
  58. package/components/dialog/MediaDialog.js.map +1 -1
  59. package/components/editableContent/EditableContent.js +7 -7
  60. package/components/editableContent/EditableContent.js.map +1 -1
  61. package/components/expander/ExpanderList.d.ts +5 -0
  62. package/components/expander/ExpanderList.js +25 -16
  63. package/components/expander/ExpanderList.js.map +1 -1
  64. package/components/expander/ExpanderPanel.d.ts +5 -0
  65. package/components/expander/ExpanderPanel.js +29 -28
  66. package/components/expander/ExpanderPanel.js.map +1 -1
  67. package/components/fade/FadeExpander.js +1 -1
  68. package/components/fade/FadeExpander.js.map +1 -1
  69. package/components/filepicker/FilePicker.js.map +1 -1
  70. package/components/loadMore/LoadMoreButton.d.ts +5 -0
  71. package/components/loadMore/LoadMoreButton.js +33 -29
  72. package/components/loadMore/LoadMoreButton.js.map +1 -1
  73. package/components/map/components/features/ContextMenu.js +13 -13
  74. package/components/map/components/features/ContextMenu.js.map +1 -1
  75. package/components/map/components/features/basics/InfoBubble.js.map +1 -1
  76. package/components/map/components/features/settings/MapSettingsTile.js.map +1 -1
  77. package/components/map/components/features/settings/builtinSettings/MapTypeSettings.js +6 -6
  78. package/components/map/components/features/settings/builtinSettings/MapTypeSettings.js.map +1 -1
  79. package/components/map/utils/eventHandling.js +18 -18
  80. package/components/map/utils/eventHandling.js.map +1 -1
  81. package/components/map/utils/positions.d.ts +1 -1
  82. package/components/map/utils/positions.js +15 -12
  83. package/components/map/utils/positions.js.map +1 -1
  84. package/components/map/utils/rendering.d.ts +1 -1
  85. package/components/menuItems/MenuItems.js +6 -6
  86. package/components/menuItems/MenuItems.js.map +1 -1
  87. package/components/notification/NotificationsContainer.js.map +1 -1
  88. package/components/numberInput/NumberInput.js +57 -56
  89. package/components/numberInput/NumberInput.js.map +1 -1
  90. package/components/popover/Popover.js +4 -4
  91. package/components/popover/Popover.js.map +1 -1
  92. package/components/resizer/Resizer.js +6 -3
  93. package/components/resizer/Resizer.js.map +1 -1
  94. package/components/selects/BaseSelectDropdown.js +34 -32
  95. package/components/selects/BaseSelectDropdown.js.map +1 -1
  96. package/components/selects/MultiselectTogglePlaceholder.js.map +1 -1
  97. package/components/selects/MultiselectToggleSelection.js +11 -11
  98. package/components/selects/MultiselectToggleSelection.js.map +1 -1
  99. package/components/sidebars/Sidebar.js +12 -12
  100. package/components/sidebars/Sidebar.js.map +1 -1
  101. package/components/sidebars/SidebarCloseButton.js +2 -2
  102. package/components/sidebars/SidebarCloseButton.js.map +1 -1
  103. package/components/smoothScrollbars/SmoothScrollbars.d.ts +4 -3
  104. package/components/smoothScrollbars/SmoothScrollbars.js +11 -11
  105. package/components/smoothScrollbars/SmoothScrollbars.js.map +1 -1
  106. package/components/states/CustomState.js.map +1 -1
  107. package/components/svgImage/svgConverter.js.map +1 -1
  108. package/components/table/Table.d.ts +267 -0
  109. package/components/table/Table.js +233 -0
  110. package/components/table/Table.js.map +1 -0
  111. package/components/table/Table.types.d.ts +207 -0
  112. package/components/table/TableBody.d.ts +10 -0
  113. package/components/table/TableBody.js +5 -0
  114. package/components/table/TableBody.js.map +1 -0
  115. package/components/table/TableCard.d.ts +63 -0
  116. package/components/table/TableCard.js +150 -0
  117. package/components/table/TableCard.js.map +1 -0
  118. package/components/table/TableColumn.d.ts +47 -0
  119. package/components/table/TableColumn.js +5 -0
  120. package/components/table/TableColumn.js.map +1 -0
  121. package/components/table/TableExpandedContentRow.d.ts +22 -0
  122. package/components/table/TableExpandedContentRow.js +5 -0
  123. package/components/table/TableExpandedContentRow.js.map +1 -0
  124. package/components/table/TableExpandedRow.d.ts +17 -0
  125. package/components/table/TableExpandedRow.js +5 -0
  126. package/components/table/TableExpandedRow.js.map +1 -0
  127. package/components/table/TableExpanderButton.d.ts +25 -0
  128. package/components/table/TableExpanderButton.js +22 -0
  129. package/components/table/TableExpanderButton.js.map +1 -0
  130. package/components/table/TableFooter.d.ts +13 -0
  131. package/components/table/TableFooter.js +5 -0
  132. package/components/table/TableFooter.js.map +1 -0
  133. package/components/table/TableGroupFooterRow.d.ts +18 -0
  134. package/components/table/TableGroupFooterRow.js +5 -0
  135. package/components/table/TableGroupFooterRow.js.map +1 -0
  136. package/components/table/TableGroupRow.d.ts +24 -0
  137. package/components/table/TableGroupRow.js +5 -0
  138. package/components/table/TableGroupRow.js.map +1 -0
  139. package/components/table/TableHeader.d.ts +9 -0
  140. package/components/table/TableHeader.js +5 -0
  141. package/components/table/TableHeader.js.map +1 -0
  142. package/components/table/TableHeaderColumn.d.ts +70 -0
  143. package/components/table/TableHeaderColumn.js +5 -0
  144. package/components/table/TableHeaderColumn.js.map +1 -0
  145. package/components/table/TableHeaderRow.d.ts +9 -0
  146. package/components/table/TableHeaderRow.js +5 -0
  147. package/components/table/TableHeaderRow.js.map +1 -0
  148. package/components/table/TableRow.d.ts +19 -0
  149. package/components/table/TableRow.js +5 -0
  150. package/components/table/TableRow.js.map +1 -0
  151. package/components/table/TableSpacerRow.d.ts +12 -0
  152. package/components/table/TableSpacerRow.js +5 -0
  153. package/components/table/TableSpacerRow.js.map +1 -0
  154. package/components/table/TableToolbar.d.ts +23 -1
  155. package/components/table/TableToolbar.js +38 -4
  156. package/components/table/TableToolbar.js.map +1 -1
  157. package/components/table/TableViewToggles.d.ts +18 -0
  158. package/components/table/TableViewToggles.js +59 -87
  159. package/components/table/TableViewToggles.js.map +1 -1
  160. package/components/table/layout/columnSizing.d.ts +3 -0
  161. package/components/table/layout/columnSizing.js +23 -0
  162. package/components/table/layout/columnSizing.js.map +1 -0
  163. package/components/table/layout/useDraggableColumns.d.ts +14 -0
  164. package/components/table/layout/useDraggableColumns.js +47 -0
  165. package/components/table/layout/useDraggableColumns.js.map +1 -0
  166. package/components/table/layout/useHorizontalSectionSync.d.ts +11 -0
  167. package/components/table/layout/useHorizontalSectionSync.js +39 -0
  168. package/components/table/layout/useHorizontalSectionSync.js.map +1 -0
  169. package/components/table/layout/useMeasuredColumnMaxWidths.d.ts +12 -0
  170. package/components/table/layout/useMeasuredColumnMaxWidths.js +85 -0
  171. package/components/table/layout/useMeasuredColumnMaxWidths.js.map +1 -0
  172. package/components/table/layout/useResizableColumns.d.ts +14 -0
  173. package/components/table/layout/useResizableColumns.js +91 -0
  174. package/components/table/layout/useResizableColumns.js.map +1 -0
  175. package/components/table/layout/useTableLayout.d.ts +25 -0
  176. package/components/table/layout/useTableLayout.js +56 -0
  177. package/components/table/layout/useTableLayout.js.map +1 -0
  178. package/components/table/layout/useTableVirtualization.d.ts +22 -0
  179. package/components/table/layout/useTableVirtualization.js +125 -0
  180. package/components/table/layout/useTableVirtualization.js.map +1 -0
  181. package/components/table/model/buildTableViewModel.d.ts +28 -0
  182. package/components/table/model/buildTableViewModel.js +221 -0
  183. package/components/table/model/buildTableViewModel.js.map +1 -0
  184. package/components/table/model/resolveCellContent.d.ts +2 -0
  185. package/components/table/model/resolveCellContent.js +5 -0
  186. package/components/table/model/resolveCellContent.js.map +1 -0
  187. package/components/table/model/resolveRowMeta.d.ts +2 -0
  188. package/components/table/model/resolveRowMeta.js +15 -0
  189. package/components/table/model/resolveRowMeta.js.map +1 -0
  190. package/components/table/model/resolveTableClassConfig.d.ts +48 -0
  191. package/components/table/model/resolveTableClassConfig.js +64 -0
  192. package/components/table/model/resolveTableClassConfig.js.map +1 -0
  193. package/components/table/model/tableViewModel.types.d.ts +153 -0
  194. package/components/table/native/TableCol.js.map +1 -0
  195. package/components/table/{TableHead.js → native/TableHead.js} +2 -2
  196. package/components/table/native/TableHead.js.map +1 -0
  197. package/components/table/native/TableSettingsColumnButtons.js +59 -0
  198. package/components/table/native/TableSettingsColumnButtons.js.map +1 -0
  199. package/components/table/{TableSettingsColumnDetails.js → native/TableSettingsColumnDetails.js} +2 -2
  200. package/components/table/native/TableSettingsColumnDetails.js.map +1 -0
  201. package/components/table/{TableSettingsDialog.d.ts → native/TableSettingsDialog.d.ts} +2 -3
  202. package/components/table/native/TableSettingsDialog.js +216 -0
  203. package/components/table/native/TableSettingsDialog.js.map +1 -0
  204. package/components/table/{TableSettingsDialogFooter.js → native/TableSettingsDialogFooter.js} +2 -2
  205. package/components/table/native/TableSettingsDialogFooter.js.map +1 -0
  206. package/components/table/native/TableSettingsListContainer.js.map +1 -0
  207. package/components/table/native/TableSettingsListItem.js +100 -0
  208. package/components/table/native/TableSettingsListItem.js.map +1 -0
  209. package/components/table/parse/parseBody.d.ts +3 -0
  210. package/components/table/parse/parseBody.js +13 -0
  211. package/components/table/parse/parseBody.js.map +1 -0
  212. package/components/table/parse/parseColumns.d.ts +3 -0
  213. package/components/table/parse/parseColumns.js +81 -0
  214. package/components/table/parse/parseColumns.js.map +1 -0
  215. package/components/table/parse/parseFooter.d.ts +3 -0
  216. package/components/table/parse/parseFooter.js +39 -0
  217. package/components/table/parse/parseFooter.js.map +1 -0
  218. package/components/table/parse/parseHeaders.d.ts +4 -0
  219. package/components/table/parse/parseHeaders.js +89 -0
  220. package/components/table/parse/parseHeaders.js.map +1 -0
  221. package/components/table/parse/parseRows.d.ts +3 -0
  222. package/components/table/parse/parseRows.js +93 -0
  223. package/components/table/parse/parseRows.js.map +1 -0
  224. package/components/table/parse/tableChildGuards.d.ts +25 -0
  225. package/components/table/parse/tableChildGuards.js +29 -0
  226. package/components/table/parse/tableChildGuards.js.map +1 -0
  227. package/components/table/render/body/TableBodyRow.d.ts +16 -0
  228. package/components/table/render/body/TableBodyRow.js +84 -0
  229. package/components/table/render/body/TableBodyRow.js.map +1 -0
  230. package/components/table/render/body/TableBodySection.d.ts +20 -0
  231. package/components/table/render/body/TableBodySection.js +68 -0
  232. package/components/table/render/body/TableBodySection.js.map +1 -0
  233. package/components/table/render/body/TableDataRow.d.ts +15 -0
  234. package/components/table/render/body/TableDataRow.js +143 -0
  235. package/components/table/render/body/TableDataRow.js.map +1 -0
  236. package/components/table/render/body/TableEmptyRow.d.ts +7 -0
  237. package/components/table/render/body/TableEmptyRow.js +6 -0
  238. package/components/table/render/body/TableEmptyRow.js.map +1 -0
  239. package/components/table/render/body/TableExpandedRow.d.ts +8 -0
  240. package/components/table/render/body/TableExpandedRow.js +84 -0
  241. package/components/table/render/body/TableExpandedRow.js.map +1 -0
  242. package/components/table/render/body/TableGroupRow.d.ts +8 -0
  243. package/components/table/render/body/TableGroupRow.js +21 -0
  244. package/components/table/render/body/TableGroupRow.js.map +1 -0
  245. package/components/table/render/body/TableSpacerRow.d.ts +7 -0
  246. package/components/table/render/body/TableSpacerRow.js +15 -0
  247. package/components/table/render/body/TableSpacerRow.js.map +1 -0
  248. package/components/table/render/footer/TableFooterCell.d.ts +8 -0
  249. package/components/table/render/footer/TableFooterCell.js +31 -0
  250. package/components/table/render/footer/TableFooterCell.js.map +1 -0
  251. package/components/table/render/footer/TableFooterContent.d.ts +6 -0
  252. package/components/table/render/footer/TableFooterContent.js +6 -0
  253. package/components/table/render/footer/TableFooterContent.js.map +1 -0
  254. package/components/table/render/footer/TableFooterSection.d.ts +10 -0
  255. package/components/table/render/footer/TableFooterSection.js +28 -0
  256. package/components/table/render/footer/TableFooterSection.js.map +1 -0
  257. package/components/table/render/header/TableBatchDropdown.d.ts +9 -0
  258. package/components/table/render/header/TableBatchDropdown.js +28 -0
  259. package/components/table/render/header/TableBatchDropdown.js.map +1 -0
  260. package/components/table/render/header/TableColumnFilter.d.ts +66 -0
  261. package/components/table/render/header/TableColumnFilter.js +70 -0
  262. package/components/table/render/header/TableColumnFilter.js.map +1 -0
  263. package/components/table/render/header/TableDraggableHeaderCell.d.ts +3 -0
  264. package/components/table/render/header/TableDraggableHeaderCell.js +54 -0
  265. package/components/table/render/header/TableDraggableHeaderCell.js.map +1 -0
  266. package/components/table/render/header/TableHeader.types.d.ts +35 -0
  267. package/components/table/render/header/TableHeaderCellContent.d.ts +3 -0
  268. package/components/table/render/header/TableHeaderCellContent.js +57 -0
  269. package/components/table/render/header/TableHeaderCellContent.js.map +1 -0
  270. package/components/table/render/header/TableHeaderCellResizeHandle.d.ts +3 -0
  271. package/components/table/render/header/TableHeaderCellResizeHandle.js +22 -0
  272. package/components/table/render/header/TableHeaderCellResizeHandle.js.map +1 -0
  273. package/components/table/render/header/TableHeaderDragOverlay.d.ts +13 -0
  274. package/components/table/render/header/TableHeaderDragOverlay.js +35 -0
  275. package/components/table/render/header/TableHeaderDragOverlay.js.map +1 -0
  276. package/components/table/render/header/TableHeaderSection.d.ts +3 -0
  277. package/components/table/render/header/TableHeaderSection.js +104 -0
  278. package/components/table/render/header/TableHeaderSection.js.map +1 -0
  279. package/components/table/render/header/TableHeaderSelectionCell.d.ts +9 -0
  280. package/components/table/render/header/TableHeaderSelectionCell.js +41 -0
  281. package/components/table/render/header/TableHeaderSelectionCell.js.map +1 -0
  282. package/components/table/render/header/TableStaticHeaderCell.d.ts +3 -0
  283. package/components/table/render/header/TableStaticHeaderCell.js +36 -0
  284. package/components/table/render/header/TableStaticHeaderCell.js.map +1 -0
  285. package/components/table/render/header/resolveAriaSort.d.ts +2 -0
  286. package/components/table/render/header/resolveAriaSort.js +8 -0
  287. package/components/table/render/header/resolveAriaSort.js.map +1 -0
  288. package/components/table/render/header/resolveColumnCollisionDetection.d.ts +2 -0
  289. package/components/table/render/header/resolveColumnCollisionDetection.js +9 -0
  290. package/components/table/render/header/resolveColumnCollisionDetection.js.map +1 -0
  291. package/components/table/render/header/resolveHeaderCellClassName.d.ts +10 -0
  292. package/components/table/render/header/resolveHeaderCellClassName.js +22 -0
  293. package/components/table/render/header/resolveHeaderCellClassName.js.map +1 -0
  294. package/components/table/render/header/resolveHeaderCellStyle.d.ts +829 -0
  295. package/components/table/render/header/resolveHeaderCellStyle.js +9 -0
  296. package/components/table/render/header/resolveHeaderCellStyle.js.map +1 -0
  297. package/components/table/selection/useTableSelection.d.ts +82 -0
  298. package/components/table/selection/useTableSelection.js +35 -0
  299. package/components/table/selection/useTableSelection.js.map +1 -0
  300. package/components/table/settings/TableColumnsDropdown.d.ts +90 -0
  301. package/components/table/settings/TableColumnsDropdown.js +137 -0
  302. package/components/table/settings/TableColumnsDropdown.js.map +1 -0
  303. package/components/table/settings/TableColumnsDropdownItem.d.ts +8 -0
  304. package/components/table/settings/TableColumnsDropdownItem.js +66 -0
  305. package/components/table/settings/TableColumnsDropdownItem.js.map +1 -0
  306. package/components/table/shared/getAlignClassName.d.ts +3 -0
  307. package/components/table/shared/getAlignClassName.js +6 -0
  308. package/components/table/shared/getAlignClassName.js.map +1 -0
  309. package/components/table/shared/getInteractiveRowProps.d.ts +14 -0
  310. package/components/table/shared/getInteractiveRowProps.js +15 -0
  311. package/components/table/shared/getInteractiveRowProps.js.map +1 -0
  312. package/components/table/shared/resolveTableAria.d.ts +2 -0
  313. package/components/table/shared/resolveTableAria.js +6 -0
  314. package/components/table/shared/resolveTableAria.js.map +1 -0
  315. package/components/table/tableSizing.constants.d.ts +4 -0
  316. package/components/table/tableSizing.constants.js +8 -0
  317. package/components/table/tableSizing.constants.js.map +1 -0
  318. package/components/teaser/TeaserContainer.js +3 -3
  319. package/components/teaser/TeaserContainer.js.map +1 -1
  320. package/components/virtualList/VirtualList.js +16 -13
  321. package/components/virtualList/VirtualList.js.map +1 -1
  322. package/googleAnalyticsUtils.d.ts +1 -0
  323. package/googleAnalyticsUtils.js +9 -0
  324. package/googleAnalyticsUtils.js.map +1 -0
  325. package/hooks/useCookies.js +17 -17
  326. package/hooks/useCookies.js.map +1 -1
  327. package/hooks/useDraggableElement.d.ts +35 -0
  328. package/hooks/useDraggableElement.js +49 -0
  329. package/hooks/useDraggableElement.js.map +1 -0
  330. package/hooks/useElapsedTime.js +4 -4
  331. package/hooks/useElapsedTime.js.map +1 -1
  332. package/hooks/useLocationSuggestions.js +13 -10
  333. package/hooks/useLocationSuggestions.js.map +1 -1
  334. package/hooks/useMergeRefs.js +12 -12
  335. package/hooks/useMergeRefs.js.map +1 -1
  336. package/hooks/usePrevious.d.ts +1 -1
  337. package/hooks/usePrevious.js.map +1 -1
  338. package/hooks/useResizeObserver.js +25 -10
  339. package/hooks/useResizeObserver.js.map +1 -1
  340. package/hooks/useRioCookieConsent.js +7 -4
  341. package/hooks/useRioCookieConsent.js.map +1 -1
  342. package/hooks/useSorting.js +10 -10
  343. package/hooks/useSorting.js.map +1 -1
  344. package/hooks/useStorage.js +12 -12
  345. package/hooks/useStorage.js.map +1 -1
  346. package/hooks/useSum.js +10 -7
  347. package/hooks/useSum.js.map +1 -1
  348. package/hooks/useTableSelection.js.map +1 -1
  349. package/hooks/useTimeout.js +6 -3
  350. package/hooks/useTimeout.js.map +1 -1
  351. package/package.json +3 -3
  352. package/routeUtils.js +12 -10
  353. package/utils/analytics/analyticsAnalysisUtils.d.ts +27 -0
  354. package/utils/analytics/analyticsAnalysisUtils.js +161 -0
  355. package/utils/analytics/analyticsAnalysisUtils.js.map +1 -0
  356. package/utils/analytics/autoTracking.d.ts +14 -0
  357. package/utils/analytics/autoTracking.js +19 -0
  358. package/utils/analytics/autoTracking.js.map +1 -0
  359. package/utils/analytics/createAnalyticsOverlayTooltip.d.ts +36 -0
  360. package/utils/analytics/createAnalyticsOverlayTooltip.js +203 -0
  361. package/utils/analytics/createAnalyticsOverlayTooltip.js.map +1 -0
  362. package/utils/analytics/googleAnalyticsUtils.d.ts +37 -0
  363. package/utils/analytics/googleAnalyticsUtils.js +37 -0
  364. package/utils/analytics/googleAnalyticsUtils.js.map +1 -0
  365. package/utils/analytics/logAnalyticsOverlayUnmatchedEntries.d.ts +8 -0
  366. package/utils/analytics/logAnalyticsOverlayUnmatchedEntries.js +61 -0
  367. package/utils/analytics/logAnalyticsOverlayUnmatchedEntries.js.map +1 -0
  368. package/utils/analytics/useAnalyticsOverlayDom.d.ts +11 -0
  369. package/utils/analytics/useAnalyticsOverlayDom.js +120 -0
  370. package/utils/analytics/useAnalyticsOverlayDom.js.map +1 -0
  371. package/utils/arrayMove.js +11 -0
  372. package/utils/arrayMove.js.map +1 -0
  373. package/utils/cssuseragent.js +2 -2
  374. package/utils/cssuseragent.js.map +1 -1
  375. package/utils/deviceUtils.js.map +1 -1
  376. package/utils/formatUtils.js.map +1 -1
  377. package/utils/hasUtilityClass.js +3 -3
  378. package/utils/hasUtilityClass.js.map +1 -1
  379. package/utils/hidePiiData.js.map +1 -1
  380. package/utils/init/checkForReleaseVersion.js +4 -4
  381. package/utils/init/checkForReleaseVersion.js.map +1 -1
  382. package/utils/init/styledLogs.js.map +1 -1
  383. package/utils/mergeRefs.js +3 -3
  384. package/utils/mergeRefs.js.map +1 -1
  385. package/utils/routeUtils.d.ts +32 -1
  386. package/utils/routeUtils.js +85 -67
  387. package/utils/routeUtils.js.map +1 -1
  388. package/utils/storageUtils.js +9 -9
  389. package/utils/storageUtils.js.map +1 -1
  390. package/version.d.ts +1 -1
  391. package/version.js +2 -2
  392. package/version.js.map +1 -1
  393. package/components/table/TableCol.js.map +0 -1
  394. package/components/table/TableHead.js.map +0 -1
  395. package/components/table/TableSettingsColumnButtons.js +0 -45
  396. package/components/table/TableSettingsColumnButtons.js.map +0 -1
  397. package/components/table/TableSettingsColumnDetails.js.map +0 -1
  398. package/components/table/TableSettingsDialog.js +0 -208
  399. package/components/table/TableSettingsDialog.js.map +0 -1
  400. package/components/table/TableSettingsDialogFooter.js.map +0 -1
  401. package/components/table/TableSettingsListContainer.js.map +0 -1
  402. package/components/table/TableSettingsListItem.js +0 -96
  403. package/components/table/TableSettingsListItem.js.map +0 -1
  404. /package/components/table/{TableCol.d.ts → native/TableCol.d.ts} +0 -0
  405. /package/components/table/{TableCol.js → native/TableCol.js} +0 -0
  406. /package/components/table/{TableHead.d.ts → native/TableHead.d.ts} +0 -0
  407. /package/components/table/{TableSettingsColumnButtons.d.ts → native/TableSettingsColumnButtons.d.ts} +0 -0
  408. /package/components/table/{TableSettingsColumnDetails.d.ts → native/TableSettingsColumnDetails.d.ts} +0 -0
  409. /package/components/table/{TableSettingsDialogFooter.d.ts → native/TableSettingsDialogFooter.d.ts} +0 -0
  410. /package/components/table/{TableSettingsListContainer.d.ts → native/TableSettingsListContainer.d.ts} +0 -0
  411. /package/components/table/{TableSettingsListContainer.js → native/TableSettingsListContainer.js} +0 -0
  412. /package/components/table/{TableSettingsListItem.d.ts → native/TableSettingsListItem.d.ts} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Table.js","sources":["../../../src/components/table/Table.tsx"],"sourcesContent":["import {\n forwardRef,\n useCallback,\n useState,\n type ForwardedRef,\n type HTMLAttributes,\n type MouseEvent as ReactMouseEvent,\n type ReactElement,\n type ReactNode,\n type RefAttributes,\n} from 'react';\nimport type { MotionProps } from 'motion/react';\n\nimport SmoothScrollbars from '../smoothScrollbars/SmoothScrollbars';\nimport TableBodyComponent from './TableBody';\nimport type { TableCardsStyleSettings } from './TableCard';\nimport TableColumnComponent from './TableColumn';\nimport TableExpanderButtonComponent from './TableExpanderButton';\nimport TableExpandedContentRowComponent from './TableExpandedContentRow';\nimport TableExpandedRowComponent from './TableExpandedRow';\nimport TableFooterComponent from './TableFooter';\nimport TableGroupFooterRowComponent from './TableGroupFooterRow';\nimport TableGroupRowComponent from './TableGroupRow';\nimport TableHeaderComponent from './TableHeader';\nimport TableHeaderColumnComponent from './TableHeaderColumn';\nimport TableHeaderRowComponent from './TableHeaderRow';\nimport TableRowComponent from './TableRow';\nimport TableSpacerRowComponent from './TableSpacerRow';\nimport { useDraggableColumns } from './layout/useDraggableColumns';\nimport { useTableLayout } from './layout/useTableLayout';\nimport { buildTableViewModel } from './model/buildTableViewModel';\nimport { resolveTableBaseClassName, resolveTableClassConfig } from './model/resolveTableClassConfig';\nimport { useResizableColumns } from './layout/useResizableColumns';\nimport { resolveBodyMaxHeight, resolveHasBody } from './parse/parseBody';\nimport { resolveColumns } from './parse/parseColumns';\nimport { resolveFooter } from './parse/parseFooter';\nimport { resolveHeaderClassName, resolveHeaderColumns } from './parse/parseHeaders';\nimport { resolveRows } from './parse/parseRows';\nimport TableBodySection from './render/body/TableBodySection';\nimport TableFooterSection from './render/footer/TableFooterSection';\nimport TableBatchDropdownComponent from './render/header/TableBatchDropdown';\nimport TableColumnFilterComponent from './render/header/TableColumnFilter';\nimport TableHeaderSection from './render/header/TableHeaderSection';\nimport TableColumnsDropdownComponent from './settings/TableColumnsDropdown';\nimport type {\n TableCellClassName,\n TableColumnDefinition,\n TableRowId,\n TableRowClassName,\n TableSortDirection,\n TableViewType,\n} from './Table.types';\nimport useMergeRefs from '../../hooks/useMergeRefs';\n\nexport type {\n TableCellOverflow,\n TableCellClassName,\n TableColumnDefinition,\n TableHorizontalAlign,\n TableParsedCell,\n TableParsedCells,\n TableParsedFooter,\n TableParsedHeaderColumn,\n TableParsedRow,\n TableRowId,\n TableRowClassName,\n TableSortDirection,\n TableStyle,\n TableVerticalAlign,\n TableViewType,\n} from './Table.types';\n\nexport type { TableCardsStyleSettings } from './TableCard';\n\nexport { default as useTableSelection } from './selection/useTableSelection';\n\nexport type { UseTableSelectionOptions, UseTableSelectionReturn } from './selection/useTableSelection';\n\nexport type {\n TableDataViewRow,\n TableExpandedContentViewRow,\n TableExpandedDataViewRow,\n TableGroupFooterViewRow,\n TableGroupViewRow,\n TableViewHeader,\n TableViewHeaderColumn,\n TableSpacerViewRow,\n TableViewCell,\n TableViewColumn,\n TableViewFooter,\n TableViewModel,\n TableViewRow,\n} from './model/tableViewModel.types';\n\nexport type TableColumn<RowType extends Record<string, unknown>> = TableColumnDefinition<RowType>;\n\nexport type TableRowAnimationProps<RowType extends Record<string, unknown>> =\n | MotionProps\n | ((row: RowType, rowIndex: number) => MotionProps);\n\nexport type TableProps<RowType extends Record<string, unknown>> = Omit<\n HTMLAttributes<HTMLDivElement>,\n 'draggable' | 'onClick'\n> & {\n /**\n * Row key accessor for resolving a stable unique row id.\n *\n * This is recommended whenever rows have their own identifier such as `id`, `vehicleId`, or `uuid`, especially\n * when using selection, active rows, expanded rows, or virtualization.\n *\n * If omitted, the row index is used as a fallback.\n *\n * @default row index\n */\n rowKey?: keyof RowType | ((row: RowType, rowIndex: number) => string | number);\n\n /**\n * Controls table or card rendering modes.\n *\n * @default 'TABLE'\n */\n viewType?: TableViewType;\n\n /**\n * Card width configuration for `MULTI_CARDS` view.\n */\n cardsStyle?: TableCardsStyleSettings;\n\n /**\n * Compact row/cell spacing like old `table-condensed`.\n *\n * @default false\n */\n condensed?: boolean;\n\n /**\n * Zebra rows like old `table-striped`.\n *\n * @default false\n */\n striped?: boolean;\n\n /**\n * Hover effect like old `table-hover`.\n *\n * @default false\n */\n hover?: boolean;\n\n /**\n * Apply table shadow.\n *\n * @default false\n */\n shadow?: boolean;\n\n /**\n * Simple outer border on table wrapper and card variants.\n *\n * @default true\n */\n border?: boolean;\n\n /**\n * Rounded table corners and card variants.\n * Top corners are applied to header or body (if no header),\n * bottom corners are applied to footer or body (if no footer).\n *\n * @default true\n */\n rounded?: boolean;\n\n /**\n * Show vertical and header row grid lines.\n *\n * @default false\n */\n gridLines?: boolean;\n\n /**\n * Optional classes for rows.\n */\n rowClassName?: TableRowClassName<RowType>;\n\n /**\n * Current active row key for detail context or external side panels.\n */\n activeRowId?: TableRowId;\n\n /**\n * Called when a row is activated or deactivated by row click.\n */\n onActiveRowChange?: (rowId: TableRowId | undefined, row: RowType, rowIndex: number) => void;\n\n /**\n * Optional motion props applied to data rows for enter, exit, and layout animations.\n *\n * Can be defined once for all rows or resolved per row.\n * A stable `rowKey` is recommended so animations keep working predictably across inserts, removals, and reordering.\n * Ignored when `virtualizedRows` is enabled.\n */\n rowAnimationProps?: TableRowAnimationProps<RowType>;\n\n /**\n * Currently selected row keys for multi-selection use cases.\n */\n selectedRowIds?: TableRowId[];\n\n /**\n * Called when checkbox selection changes.\n */\n onSelectionChange?: (rowIds: TableRowId[]) => void;\n\n /**\n * Render a selection checkbox column as the first column.\n */\n showSelectionColumn?: boolean;\n\n /**\n * Enables horizontal resizing on header columns except the last column.\n *\n * @default false\n */\n resizeableColumns?: boolean;\n\n /**\n * Enables horizontal drag-reordering for simple leaf header columns.\n *\n * @default false\n */\n draggableColumns?: boolean;\n\n /**\n * Controlled column order for drag-reordering.\n * Keys not present in the current table columns are ignored.\n */\n columnOrder?: string[];\n\n /**\n * Called while a column is resized via the header handle.\n *\n * Pass `undefined` to clear a previously configured width.\n */\n onColumnResize?: (columnKey: string, width?: number) => void;\n\n /**\n * Called when drag-reordering produces a new column order.\n */\n onColumnOrderChange?: (columnOrder: string[]) => void;\n\n /**\n * Optional custom header content for the selection column.\n * If omitted, the header renders the default select-all checkbox.\n */\n selectionHeaderContent?: ReactNode;\n\n /**\n * Current sorted column key.\n */\n sortBy?: string | string[];\n\n /**\n * Current sort direction for `sortBy`.\n */\n sortDirection?: TableSortDirection;\n\n /**\n * Called when a sortable header is clicked.\n *\n * Sorting itself remains controlled outside the table.\n * The click event is passed through as an optional third argument for modifier-key scenarios such as shift-click.\n */\n onSortChange?: (\n columnKey: string,\n direction: TableSortDirection,\n event: ReactMouseEvent<HTMLButtonElement>\n ) => void;\n\n /**\n * Optional classes for each cell.\n */\n cellClassName?: TableCellClassName<RowType>;\n\n /**\n * Row click callback. Adds keyboard support and pointer cursor.\n */\n onRowClick?: (row: RowType, rowIndex: number) => void;\n\n /**\n * Fallback content when there are no rows.\n *\n * @default 'No data available'\n */\n noRowsState?: ReactNode;\n\n /**\n * Enables table-specific row virtualization for vertically scrolling table bodies.\n *\n * Virtualization is currently only active in `TABLE` view with `bodyMaxHeight`.\n *\n * @default false\n */\n virtualizedRows?: boolean;\n\n /**\n * Extra row count rendered above and below the visible area when virtualization is enabled.\n *\n * @default 5\n */\n virtualizationOverscan?: number;\n};\n\n/**\n * Declarative body wrapper for use as child of `<Table>`.\n */\nexport const TableBody = TableBodyComponent;\nexport type { TableBodyProps } from './TableBody';\n\n/**\n * Declarative header definition for use as child of `<Table>`.\n */\nexport const TableHeader = TableHeaderComponent;\nexport type { TableHeaderProps } from './TableHeader';\n\n/**\n * Declarative header row for multi-row table headers.\n */\nexport const TableHeaderRow = TableHeaderRowComponent;\nexport type { TableHeaderRowProps } from './TableHeaderRow';\n\n/**\n * Declarative header column for multi-row table headers.\n */\nexport const TableHeaderColumn = TableHeaderColumnComponent;\nexport type { TableHeaderColumnProps } from './TableHeaderColumn';\n\n/**\n * Declarative footer for use as child of `<Table>`.\n */\nexport const TableFooter = TableFooterComponent;\nexport type { TableFooterProps } from './TableFooter';\n\n/**\n * Declarative cell definition for use inside `<TableRow>`.\n */\nexport const TableColumn = TableColumnComponent;\nexport type { TableColumnProps } from './TableColumn';\n\n/**\n * Table-specific button for toggling expandable row state.\n */\nexport const TableExpanderButton = TableExpanderButtonComponent;\nexport type { TableExpanderButtonProps } from './TableExpanderButton';\n\n/**\n * Declarative row definition for use as child of `<Table>`.\n */\nexport const TableRow = TableRowComponent;\nexport type { TableRowProps } from './TableRow';\n\n/**\n * Declarative spacer row for separating table sections.\n */\nexport const TableSpacerRow = TableSpacerRowComponent;\nexport type { TableSpacerRowProps } from './TableSpacerRow';\n\n/**\n * Declarative expanded data row associated with a parent row.\n */\nexport const TableExpandedRow = TableExpandedRowComponent;\nexport type { TableExpandedRowProps } from './TableExpandedRow';\n\n/**\n * Declarative full-width expanded content row associated with a parent row.\n */\nexport const TableExpandedContentRow = TableExpandedContentRowComponent;\nexport type { TableExpandedContentRowProps } from './TableExpandedContentRow';\n\n/**\n * Declarative sticky-capable group row for grouped table sections.\n */\nexport const TableGroupRow = TableGroupRowComponent;\nexport type { TableGroupRowProps } from './TableGroupRow';\n\n/**\n * Declarative non-sticky group footer row for grouped table sections.\n */\nexport const TableGroupFooterRow = TableGroupFooterRowComponent;\nexport type { TableGroupFooterRowProps } from './TableGroupFooterRow';\n\n/**\n * Table-specific batch action dropdown for selection headers.\n */\nexport const TableBatchDropdown = TableBatchDropdownComponent;\nexport type { TableBatchDropdownProps } from './render/header/TableBatchDropdown';\n\n/**\n * Table-specific wrapper for custom column filter dropdowns.\n */\nexport const TableColumnFilter = TableColumnFilterComponent;\nexport type { TableColumnFilterProps } from './render/header/TableColumnFilter';\n\n/**\n * Table-specific dropdown for column visibility and ordering.\n */\nexport const TableColumnsDropdown = TableColumnsDropdownComponent;\nexport type { TableColumnsDropdownItem, TableColumnsDropdownProps } from './settings/TableColumnsDropdown';\n\nconst Table = forwardRef(\n <RowType extends Record<string, unknown>>(props: TableProps<RowType>, ref: ForwardedRef<HTMLDivElement>) => {\n const {\n children,\n rowKey,\n viewType = 'TABLE',\n cardsStyle,\n condensed = false,\n striped = false,\n hover = false,\n shadow = false,\n border = true,\n rounded = true,\n gridLines = false,\n rowClassName,\n activeRowId,\n onActiveRowChange,\n rowAnimationProps,\n sortBy,\n sortDirection,\n onSortChange,\n cellClassName,\n onRowClick,\n onSelectionChange,\n selectedRowIds,\n selectionHeaderContent,\n resizeableColumns = false,\n draggableColumns = false,\n columnOrder,\n onColumnResize,\n onColumnOrderChange,\n showSelectionColumn = false,\n noRowsState = 'No data available',\n virtualizedRows = false,\n virtualizationOverscan = 5,\n className,\n style,\n ...remainingProps\n } = props;\n\n const [bodyScrollContainer, setBodyScrollContainer] = useState<{ view?: HTMLDivElement | null } | null>(null);\n\n const handleBodyScrollbarsRef = useCallback((instance: { view?: HTMLDivElement | null } | null) => {\n setBodyScrollContainer(previousInstance =>\n previousInstance?.view === instance?.view ? previousInstance : instance\n );\n }, []);\n\n const { hasHover, isTableView, styleClassSwitches, cardClasses } = resolveTableClassConfig({\n viewType,\n hover,\n shadow,\n border,\n rounded,\n className,\n cardsStyle,\n });\n\n const resolvedColumns = resolveColumns<RowType>(children);\n const resolvedHeaderColumns = resolveHeaderColumns<RowType>(children);\n const resolvedHeaderClassName = resolveHeaderClassName<RowType>(children);\n\n const supportsDraggableColumns =\n resolvedHeaderColumns.length > 0 &&\n resolvedHeaderColumns.every(column => column.row === 1 && column.rowSpan === 1 && column.colSpan === 1);\n\n const draggableColumnsEnabled = draggableColumns && viewType === 'TABLE' && supportsDraggableColumns;\n\n const { draggableColumnKeys, handleColumnDragEnd, orderedColumns } = useDraggableColumns({\n columns: resolvedColumns,\n columnOrder,\n enabled: draggableColumnsEnabled,\n onColumnOrderChange,\n });\n const resizeColumnsEnabled =\n viewType === 'TABLE' &&\n (resizeableColumns || resolvedHeaderColumns.some(column => column.resizeable === true));\n\n const { handleColumnResizeReset, handleColumnResizeStart, lastResizableColumnKey, resizedColumns } =\n useResizableColumns({\n columns: orderedColumns,\n enabled: resizeColumnsEnabled,\n onColumnResize,\n });\n\n const resolvedRows = resolveRows<RowType>(children, resolvedColumns);\n const resolvedFooter = resolveFooter<RowType>(children, resolvedColumns);\n const bodyMaxHeight = resolveBodyMaxHeight(children);\n const hasBody = resolveHasBody<RowType>(children);\n\n const {\n columnsWithAreas,\n handleBodyScroll,\n tableUseOverflow,\n tableWrapperRef,\n tableFooterRowRef,\n tableHeadRowRef,\n wrapperStyle,\n } = useTableLayout({\n bodyMaxHeight,\n cardsStyle,\n columns: resizedColumns,\n showSelectionColumn,\n style,\n });\n const mergedWrapperRefs = useMergeRefs(tableWrapperRef, ref);\n\n const isClickable = typeof onRowClick === 'function' || typeof onActiveRowChange === 'function';\n\n const viewModel = buildTableViewModel({\n columnsWithAreas,\n resolvedHeaderColumns,\n resolvedRows,\n resolvedFooter,\n rowKey,\n rowClassName,\n cellClassName,\n activeRowId,\n noRowsState,\n isClickable,\n isTableView,\n selectedRowIds,\n sortBy,\n sortDirection,\n cardClasses,\n });\n\n const selectableRowIds = viewModel.rows.flatMap(row => (row.kind === 'data' && !row.disabled ? [row.key] : []));\n const selectableRowIdSet = new Set(selectableRowIds);\n const normalizedSelectedRowIds = (selectedRowIds ?? []).filter(rowId => selectableRowIdSet.has(rowId));\n\n const isAllRowsSelected =\n selectableRowIds.length > 0 && selectableRowIds.every(rowId => normalizedSelectedRowIds.includes(rowId));\n\n const isSomeRowsSelected = normalizedSelectedRowIds.length > 0 && !isAllRowsSelected;\n\n const totalColumnCount = viewModel.columns.length + (showSelectionColumn ? 1 : 0);\n\n const headerSection =\n viewModel.flags.hasHeader && viewModel.header ? (\n <TableHeaderSection\n header={viewModel.header}\n headerClassName={resolvedHeaderClassName}\n lastResizableColumnKey={resizeColumnsEnabled ? lastResizableColumnKey : undefined}\n isAllSelected={isAllRowsSelected}\n isSomeRowsSelected={isSomeRowsSelected}\n onColumnResizeReset={resizeColumnsEnabled ? handleColumnResizeReset : undefined}\n onColumnResizeStart={resizeColumnsEnabled ? handleColumnResizeStart : undefined}\n onToggleAllSelection={() => onSelectionChange?.(isAllRowsSelected ? [] : selectableRowIds)}\n selectionHeaderContent={selectionHeaderContent}\n showSelectionColumn={showSelectionColumn}\n tableHeadRowRef={tableHeadRowRef}\n draggableColumnKeys={draggableColumnsEnabled ? draggableColumnKeys : undefined}\n draggableColumns={draggableColumnsEnabled}\n onColumnDragEnd={draggableColumnsEnabled ? handleColumnDragEnd : undefined}\n onSortChange={onSortChange}\n resizeableColumns={resizeableColumns}\n />\n ) : null;\n\n const bodySection = hasBody ? (\n <TableBodySection\n onActiveRowChange={onActiveRowChange}\n onSelectionChange={onSelectionChange}\n columnCount={totalColumnCount}\n scrollContainer={virtualizedRows ? bodyScrollContainer : undefined}\n rowAnimationProps={virtualizedRows ? undefined : rowAnimationProps}\n selectedRowIds={normalizedSelectedRowIds}\n showSelectionColumn={showSelectionColumn}\n virtualizedRows={virtualizedRows && !!bodyMaxHeight && viewType === 'TABLE'}\n virtualizationOverscan={virtualizationOverscan}\n viewModel={viewModel}\n onRowClick={onRowClick}\n />\n ) : null;\n\n const footerSection =\n viewModel.flags.isTableView && viewModel.flags.hasFooter && viewModel.footer ? (\n <TableFooterSection\n columnCount={totalColumnCount}\n footer={viewModel.footer}\n showSelectionColumn={showSelectionColumn}\n tableFooterRowRef={tableFooterRowRef}\n />\n ) : null;\n\n return (\n <div\n {...remainingProps}\n className={resolveTableBaseClassName({\n viewType,\n condensed,\n striped,\n gridLines,\n className,\n tableUseOverflow,\n flags: viewModel.flags,\n hasHover,\n styleClassSwitches,\n })}\n ref={mergedWrapperRefs}\n role='table'\n aria-colcount={totalColumnCount > 0 ? totalColumnCount : undefined}\n style={wrapperStyle}\n >\n {bodyMaxHeight && viewType === 'TABLE' ? (\n <>\n {headerSection}\n <SmoothScrollbars\n className='table-body-scroll-wrapper'\n autoHeight\n autoHeightMax={bodyMaxHeight}\n onScroll={handleBodyScroll}\n ref={virtualizedRows ? handleBodyScrollbarsRef : undefined}\n role='presentation'\n >\n {bodySection}\n </SmoothScrollbars>\n {footerSection}\n </>\n ) : tableUseOverflow && viewType === 'TABLE' ? (\n <div className='overflow-x-auto' onScroll={handleBodyScroll} role='presentation'>\n <div className='table-scroll-content' role='presentation'>\n {headerSection}\n {bodySection}\n {footerSection}\n </div>\n </div>\n ) : (\n <>\n {headerSection}\n {bodySection}\n {footerSection}\n </>\n )}\n </div>\n );\n }\n) as <RowType extends Record<string, unknown>>(\n props: TableProps<RowType> & RefAttributes<HTMLDivElement>\n) => ReactElement;\n\nexport default Table;\n"],"names":["TableBody","TableBodyComponent","TableHeader","TableHeaderComponent","TableHeaderRow","TableHeaderRowComponent","TableHeaderColumn","TableHeaderColumnComponent","TableFooter","TableFooterComponent","TableColumn","TableColumnComponent","TableExpanderButton","TableExpanderButtonComponent","TableRow","TableRowComponent","TableSpacerRow","TableSpacerRowComponent","TableExpandedRow","TableExpandedRowComponent","TableExpandedContentRow","TableExpandedContentRowComponent","TableGroupRow","TableGroupRowComponent","TableGroupFooterRow","TableGroupFooterRowComponent","TableBatchDropdown","TableBatchDropdownComponent","TableColumnFilter","TableColumnFilterComponent","TableColumnsDropdown","TableColumnsDropdownComponent","Table","forwardRef","props","ref","children","rowKey","viewType","cardsStyle","condensed","striped","hover","shadow","border","rounded","gridLines","rowClassName","activeRowId","onActiveRowChange","rowAnimationProps","sortBy","sortDirection","onSortChange","cellClassName","onRowClick","onSelectionChange","selectedRowIds","selectionHeaderContent","resizeableColumns","draggableColumns","columnOrder","onColumnResize","onColumnOrderChange","showSelectionColumn","noRowsState","virtualizedRows","virtualizationOverscan","className","style","remainingProps","bodyScrollContainer","setBodyScrollContainer","useState","handleBodyScrollbarsRef","useCallback","instance","previousInstance","hasHover","isTableView","styleClassSwitches","cardClasses","resolveTableClassConfig","resolvedColumns","resolveColumns","resolvedHeaderColumns","resolveHeaderColumns","resolvedHeaderClassName","resolveHeaderClassName","supportsDraggableColumns","column","draggableColumnsEnabled","draggableColumnKeys","handleColumnDragEnd","orderedColumns","useDraggableColumns","resizeColumnsEnabled","handleColumnResizeReset","handleColumnResizeStart","lastResizableColumnKey","resizedColumns","useResizableColumns","resolvedRows","resolveRows","resolvedFooter","resolveFooter","bodyMaxHeight","resolveBodyMaxHeight","hasBody","resolveHasBody","columnsWithAreas","handleBodyScroll","tableUseOverflow","tableWrapperRef","tableFooterRowRef","tableHeadRowRef","wrapperStyle","useTableLayout","mergedWrapperRefs","useMergeRefs","viewModel","buildTableViewModel","selectableRowIds","row","selectableRowIdSet","normalizedSelectedRowIds","rowId","isAllRowsSelected","isSomeRowsSelected","totalColumnCount","headerSection","jsx","TableHeaderSection","bodySection","TableBodySection","footerSection","TableFooterSection","resolveTableBaseClassName","jsxs","Fragment","SmoothScrollbars"],"mappings":"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"}
@@ -0,0 +1,207 @@
1
+ import { CSSProperties, ReactNode } from 'react';
2
+ export type TableHorizontalAlign = 'left' | 'center' | 'right';
3
+ export type TableVerticalAlign = 'top' | 'middle' | 'bottom';
4
+ export type TableCellOverflow = 'hidden' | 'visible' | 'ellipsis';
5
+ export type TableViewType = 'TABLE' | 'SINGLE_CARD' | 'MULTI_CARDS';
6
+ export type TableSortDirection = 'asc' | 'desc';
7
+ export type TableRowId = string | number;
8
+ export type TableColumnDefinition<RowType extends Record<string, unknown>> = {
9
+ /**
10
+ * Unique key of the column.
11
+ */
12
+ key: Extract<keyof RowType, string> | string;
13
+ /**
14
+ * Column label shown in the header.
15
+ */
16
+ label: ReactNode;
17
+ /**
18
+ * Optional rioglyph class rendered before the header label in table view.
19
+ */
20
+ icon?: string;
21
+ /**
22
+ * Optional column label shown on mobile cards.
23
+ */
24
+ mobileLabel?: string;
25
+ /**
26
+ * Optional custom filter control rendered next to the header label.
27
+ *
28
+ * Useful for column-specific filter dropdowns or other header actions.
29
+ */
30
+ filter?: ReactNode;
31
+ /**
32
+ * Hides the visible label in table header cells while keeping the label for
33
+ * cards, mobile labels, settings dialogs, and other metadata consumers.
34
+ *
35
+ * @default false
36
+ */
37
+ hideLabel?: boolean;
38
+ /**
39
+ * Minimum width of a flexible column.
40
+ *
41
+ * Adds a fixed width to the column.
42
+ */
43
+ width?: number | string;
44
+ /**
45
+ * Minimum resize width in px for the header drag handle.
46
+ *
47
+ * @default 50
48
+ */
49
+ minResizeWidth?: number;
50
+ /**
51
+ * Maximum resize width in px for the header drag handle.
52
+ *
53
+ * @default 1000
54
+ */
55
+ maxResizeWidth?: number;
56
+ /**
57
+ * Disables column drag-reordering for this column when `draggableColumns` is enabled on the table.
58
+ *
59
+ * @default true
60
+ */
61
+ draggable?: boolean;
62
+ /**
63
+ * Horizontal alignment of body cells in this column.
64
+ *
65
+ * @default 'left'
66
+ */
67
+ horizontalAlign?: TableHorizontalAlign;
68
+ /**
69
+ * Additional class names for body cells in this column.
70
+ */
71
+ className?: string;
72
+ /**
73
+ * Additional class names for header cells in this column.
74
+ */
75
+ headerClassName?: string;
76
+ /**
77
+ * Hide this column on mobile card layout.
78
+ *
79
+ * @default false
80
+ */
81
+ hideOnMobile?: boolean;
82
+ /**
83
+ * Allow sorting via clickable table header.
84
+ *
85
+ * Sorting itself stays controlled outside the table.
86
+ *
87
+ * @default false
88
+ */
89
+ sortable?: boolean;
90
+ };
91
+ export type TableColumn<RowType extends Record<string, unknown>> = TableColumnDefinition<RowType>;
92
+ export type TableRowClassName<RowType extends Record<string, unknown>> = string | ((row: RowType, rowIndex: number) => string);
93
+ export type TableCellClassName<RowType extends Record<string, unknown>> = (row: RowType, column: TableColumnDefinition<RowType>, rowIndex: number, columnIndex: number) => string;
94
+ export type TableStyle = CSSProperties & {
95
+ '--table-columns'?: string;
96
+ '--table-areas'?: string;
97
+ '--table-cards-min'?: string;
98
+ '--table-cards-max'?: string;
99
+ '--table-column-count'?: string;
100
+ '--table-width'?: string;
101
+ };
102
+ /**
103
+ * Internal parser-stage table types.
104
+ *
105
+ * These `TableParsed*` types represent the normalized intermediate structure
106
+ * that is produced after reading the declarative JSX API (`TableHeader`,
107
+ * `TableHeaderColumn`, `TableBody`, `TableRow`, `TableColumn`, etc.) but
108
+ * before building the final render/view model.
109
+ *
110
+ * Pipeline overview:
111
+ * 1. Public declarative components define the table structure as JSX children.
112
+ * 2. The parse layer (`parseHeaders`, `parseRows`, `parseFooter`, ...) turns
113
+ * these children into a predictable internal data shape.
114
+ * 3. `buildTableViewModel` enriches that parsed data with render-specific
115
+ * information such as column layout, selection state, active state, card
116
+ * metadata, and resolved class names.
117
+ *
118
+ * These types are intentionally separate from the public component props and
119
+ * from the final `TableView*` types:
120
+ * - public props describe authoring-time input
121
+ * - `TableParsed*` describes normalized parser output
122
+ * - `TableView*` describes render-ready output
123
+ *
124
+ * Keeping this intermediate layer explicit makes the parsing and rendering
125
+ * stages easier to reason about and allows the render model to evolve without
126
+ * coupling it directly to the external JSX API.
127
+ */
128
+ export type TableParsedHeaderColumn = {
129
+ key: string | number;
130
+ columnKey?: string;
131
+ label: ReactNode;
132
+ icon?: string;
133
+ filter?: ReactNode;
134
+ hideLabel?: boolean;
135
+ row: number;
136
+ colSpan: number;
137
+ rowSpan: number;
138
+ horizontalAlign?: TableHorizontalAlign;
139
+ verticalAlign?: TableVerticalAlign;
140
+ className?: string;
141
+ headerClassName?: string;
142
+ hideOnMobile?: boolean;
143
+ draggable?: boolean;
144
+ resizeable?: boolean;
145
+ sortable?: boolean;
146
+ };
147
+ export type TableParsedCell = {
148
+ key?: string | number;
149
+ columnKey?: string;
150
+ content: ReactNode;
151
+ horizontalAlign?: TableHorizontalAlign;
152
+ verticalAlign?: TableVerticalAlign;
153
+ className?: string;
154
+ contentClassName?: string;
155
+ colSpan?: number;
156
+ preventRowClick?: boolean;
157
+ };
158
+ export type TableParsedCells = {
159
+ cellsByKey?: Record<string, TableParsedCell>;
160
+ cellsByIndex?: TableParsedCell[];
161
+ };
162
+ export type TableParsedFooterCell = TableParsedCell & {
163
+ key: string | number;
164
+ colSpan: number;
165
+ };
166
+ type TableParsedBaseRow = {
167
+ className?: string;
168
+ noHover?: boolean;
169
+ };
170
+ type TableParsedKeyedRow = TableParsedBaseRow & {
171
+ key: string | number;
172
+ };
173
+ type TableParsedContentRowBase = TableParsedKeyedRow & {
174
+ content: ReactNode;
175
+ };
176
+ type TableParsedDataLikeRow<RowType extends Record<string, unknown>, Kind extends 'data' | 'expanded'> = TableParsedCells & TableParsedBaseRow & {
177
+ kind: Kind;
178
+ data: RowType;
179
+ parentKey?: string | number;
180
+ } & {
181
+ disabled?: boolean;
182
+ };
183
+ export type TableParsedDataRow<RowType extends Record<string, unknown>> = Omit<TableParsedDataLikeRow<RowType, 'data'>, 'parentKey'>;
184
+ export type TableParsedExpandedDataRow<RowType extends Record<string, unknown>> = TableParsedDataLikeRow<RowType, 'expanded'>;
185
+ export type TableParsedSpacerRow = TableParsedKeyedRow & {
186
+ kind: 'spacer';
187
+ };
188
+ export type TableParsedExpandedContentRow = TableParsedContentRowBase & {
189
+ kind: 'expanded-full-width';
190
+ parentKey?: string | number;
191
+ };
192
+ export type TableParsedGroupRow = TableParsedContentRowBase & {
193
+ kind: 'group';
194
+ sticky?: boolean;
195
+ };
196
+ export type TableParsedGroupFooterRow = TableParsedContentRowBase & {
197
+ kind: 'group-footer';
198
+ };
199
+ type TableParsedFooterBase = TableParsedCells & {
200
+ className?: string;
201
+ content?: ReactNode;
202
+ };
203
+ export type TableParsedRow<RowType extends Record<string, unknown>> = TableParsedDataRow<RowType> | TableParsedExpandedDataRow<RowType> | TableParsedSpacerRow | TableParsedExpandedContentRow | TableParsedGroupRow | TableParsedGroupFooterRow;
204
+ export type TableParsedFooter = TableParsedFooterBase & {
205
+ cells?: TableParsedFooterCell[];
206
+ };
207
+ export {};
@@ -0,0 +1,10 @@
1
+ import { PropsWithChildren } from 'react';
2
+ export type TableBodyProps = PropsWithChildren<{
3
+ /**
4
+ * Optional max height of rendered table body.
5
+ * Enables vertical scrolling inside the body.
6
+ */
7
+ maxHeight?: number | string;
8
+ }>;
9
+ declare const TableBody: (_props: TableBodyProps) => null;
10
+ export default TableBody;
@@ -0,0 +1,5 @@
1
+ const o = (l) => null;
2
+ export {
3
+ o as default
4
+ };
5
+ //# sourceMappingURL=TableBody.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableBody.js","sources":["../../../src/components/table/TableBody.tsx"],"sourcesContent":["import type { PropsWithChildren } from 'react';\n\nexport type TableBodyProps = PropsWithChildren<{\n /**\n * Optional max height of rendered table body.\n * Enables vertical scrolling inside the body.\n */\n maxHeight?: number | string;\n}>;\n\nconst TableBody = (_props: TableBodyProps) => null;\n\nexport default TableBody;\n"],"names":["TableBody","_props"],"mappings":"AAUA,MAAMA,IAAY,CAACC,MAA2B;"}
@@ -0,0 +1,63 @@
1
+ import { MotionProps } from 'motion/react';
2
+ import { ReactNode } from 'react';
3
+ import { TableHorizontalAlign, TableRowId, TableVerticalAlign } from './Table.types';
4
+ export type TableCardsStyleSettings = {
5
+ /**
6
+ * Minimum card width for `MULTI_CARDS` view.
7
+ */
8
+ minWidth?: number | string;
9
+ /**
10
+ * Maximum card width for `MULTI_CARDS` view.
11
+ */
12
+ maxWidth?: number | string;
13
+ /**
14
+ * Additional classes for each card row in card views.
15
+ */
16
+ className?: string;
17
+ /**
18
+ * Additional classes for each card cell in card views.
19
+ */
20
+ rowClassName?: string;
21
+ /**
22
+ * Additional classes for each card label in card views.
23
+ */
24
+ labelClassName?: string;
25
+ /**
26
+ * Additional classes for each card content in card views.
27
+ */
28
+ contentClassName?: string;
29
+ };
30
+ export type TableCardCell = {
31
+ key: string;
32
+ content: ReactNode;
33
+ mobileLabel?: string;
34
+ horizontalAlign?: TableHorizontalAlign;
35
+ verticalAlign?: TableVerticalAlign;
36
+ className?: string;
37
+ contentClassName?: string;
38
+ hideOnMobile?: boolean;
39
+ preventRowClick?: boolean;
40
+ };
41
+ export type TableCardProps<RowType extends Record<string, unknown>> = {
42
+ active?: boolean;
43
+ disabled?: boolean;
44
+ expanded?: boolean;
45
+ selected?: boolean;
46
+ row: RowType;
47
+ rowIndex: number;
48
+ rowKeyValue: string | number;
49
+ cells: TableCardCell[];
50
+ cardRowClassName?: string;
51
+ cardCellClassName?: string;
52
+ cardLabelClassName?: string;
53
+ cardContentClassName?: string;
54
+ rowClassName?: string;
55
+ rowAnimationProps?: MotionProps;
56
+ isClickable: boolean;
57
+ onActiveRowChange?: (rowId: TableRowId | undefined, row: RowType, rowIndex: number) => void;
58
+ onRowClick?: (row: RowType, rowIndex: number) => void;
59
+ onToggleRowSelection?: (rowId: TableRowId) => void;
60
+ showSelectionColumn?: boolean;
61
+ };
62
+ declare const TableCard: <RowType extends Record<string, unknown>>(props: TableCardProps<RowType>) => import("react/jsx-runtime").JSX.Element;
63
+ export default TableCard;
@@ -0,0 +1,150 @@
1
+ import { jsxs as N, Fragment as T, jsx as t } from "react/jsx-runtime";
2
+ import { useReducedMotion as V, motion as $ } from "motion/react";
3
+ import E from "../checkbox/Checkbox.js";
4
+ import { useState as F, useMemo as H } from "react";
5
+ import n from "../../utils/classNames.js";
6
+ import { getVerticalAlignClassName as q, getHorizontalAlignClassName as B } from "./shared/getAlignClassName.js";
7
+ import { getInteractiveRowProps as G } from "./shared/getInteractiveRowProps.js";
8
+ import { resolveAriaColIndex as J } from "./shared/resolveTableAria.js";
9
+ const x = 0.18, oe = (k) => {
10
+ const {
11
+ active: c,
12
+ disabled: s,
13
+ expanded: o,
14
+ selected: d,
15
+ row: f,
16
+ rowIndex: A,
17
+ rowKeyValue: i,
18
+ cells: I,
19
+ cardRowClassName: R,
20
+ cardCellClassName: m,
21
+ cardLabelClassName: P,
22
+ cardContentClassName: D,
23
+ rowClassName: K,
24
+ rowAnimationProps: C,
25
+ isClickable: S,
26
+ onActiveRowChange: O,
27
+ onRowClick: M,
28
+ onToggleRowSelection: L,
29
+ showSelectionColumn: p
30
+ } = k, [j, b] = F(o), w = V(), a = G({
31
+ isClickable: S && !s,
32
+ onRowClick: (e, l) => {
33
+ M?.(e, l), O?.(c ? void 0 : i, e, l);
34
+ },
35
+ row: f,
36
+ rowIndex: A
37
+ }), v = (e) => {
38
+ e.stopPropagation();
39
+ }, h = H(() => {
40
+ if (o)
41
+ return w ? {
42
+ initial: { opacity: 0 },
43
+ animate: { opacity: 1, transition: { duration: 0.12, ease: "easeInOut" } },
44
+ exit: { opacity: 0, transition: { duration: 0.12, ease: "easeInOut" } }
45
+ } : {
46
+ initial: { opacity: 0, height: 0, y: -8 },
47
+ animate: {
48
+ opacity: 1,
49
+ height: "auto",
50
+ y: 0,
51
+ transition: { duration: x, ease: "easeOut" }
52
+ },
53
+ exit: {
54
+ opacity: 0,
55
+ height: 0,
56
+ y: -8,
57
+ transition: { duration: x, ease: "easeInOut" }
58
+ }
59
+ };
60
+ }, [o, w]), r = h || C ? {
61
+ ...h,
62
+ ...C
63
+ } : void 0, u = r?.style, z = o ? {
64
+ ...u,
65
+ overflow: j ? "hidden" : "visible"
66
+ } : u, y = n(
67
+ "table-row",
68
+ "divider-y-1 divider-color-lighter divider-style-solid",
69
+ c && "table-row-active",
70
+ s && "table-row-disabled",
71
+ o && "table-row-expanded-data",
72
+ d && "table-row-selected",
73
+ R,
74
+ a.isClickableClassName,
75
+ K
76
+ ), g = /* @__PURE__ */ N(T, { children: [
77
+ p && /* @__PURE__ */ t(
78
+ "div",
79
+ {
80
+ className: n("table-cell table-selection-cell", m),
81
+ role: "cell",
82
+ "aria-colindex": 1,
83
+ onClick: (e) => e.stopPropagation(),
84
+ onKeyDown: (e) => e.stopPropagation(),
85
+ children: /* @__PURE__ */ t("div", { className: "table-selection-control", children: /* @__PURE__ */ t(
86
+ E,
87
+ {
88
+ checked: d,
89
+ disabled: s,
90
+ onChange: () => L?.(i)
91
+ }
92
+ ) })
93
+ }
94
+ ),
95
+ I.map((e, l) => /* @__PURE__ */ N(
96
+ "div",
97
+ {
98
+ className: n(
99
+ "table-cell",
100
+ m,
101
+ B(e.horizontalAlign),
102
+ q(e.verticalAlign),
103
+ e.hideOnMobile && "table-hide-mobile",
104
+ e.className
105
+ ),
106
+ "data-column": e.key,
107
+ role: "cell",
108
+ "aria-colindex": J(l + 1, p),
109
+ onClick: e.preventRowClick ? v : void 0,
110
+ onKeyDown: e.preventRowClick ? v : void 0,
111
+ children: [
112
+ e.mobileLabel && /* @__PURE__ */ t("div", { className: n("table-cell-label", P), children: e.mobileLabel }),
113
+ /* @__PURE__ */ t("div", { className: n("table-cell-content", D, e.contentClassName), children: e.content })
114
+ ]
115
+ },
116
+ `${String(i)}-${e.key}`
117
+ ))
118
+ ] });
119
+ return r ? /* @__PURE__ */ t(
120
+ $.div,
121
+ {
122
+ className: y,
123
+ onClick: a.onClick,
124
+ onKeyDown: a.onKeyDown,
125
+ role: "row",
126
+ tabIndex: a.tabIndex,
127
+ onAnimationStart: o ? () => b(!0) : void 0,
128
+ onAnimationComplete: o ? () => b(!1) : void 0,
129
+ ...r,
130
+ style: z,
131
+ children: g
132
+ },
133
+ i
134
+ ) : /* @__PURE__ */ t(
135
+ "div",
136
+ {
137
+ className: y,
138
+ onClick: a.onClick,
139
+ onKeyDown: a.onKeyDown,
140
+ role: "row",
141
+ tabIndex: a.tabIndex,
142
+ children: g
143
+ },
144
+ i
145
+ );
146
+ };
147
+ export {
148
+ oe as default
149
+ };
150
+ //# sourceMappingURL=TableCard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableCard.js","sources":["../../../src/components/table/TableCard.tsx"],"sourcesContent":["import { motion, type MotionProps, useReducedMotion } from 'motion/react';\nimport Checkbox from '../checkbox/Checkbox';\nimport { useMemo, useState, type CSSProperties, type KeyboardEvent, type MouseEvent, type ReactNode } from 'react';\n\nimport classNames from '../../utils/classNames';\nimport { getHorizontalAlignClassName, getVerticalAlignClassName } from './shared/getAlignClassName';\nimport { getInteractiveRowProps } from './shared/getInteractiveRowProps';\nimport { resolveAriaColIndex } from './shared/resolveTableAria';\nimport type { TableHorizontalAlign, TableRowId, TableVerticalAlign } from './Table.types';\n\nexport type TableCardsStyleSettings = {\n /**\n * Minimum card width for `MULTI_CARDS` view.\n */\n minWidth?: number | string;\n\n /**\n * Maximum card width for `MULTI_CARDS` view.\n */\n maxWidth?: number | string;\n\n /**\n * Additional classes for each card row in card views.\n */\n className?: string;\n\n /**\n * Additional classes for each card cell in card views.\n */\n rowClassName?: string;\n\n /**\n * Additional classes for each card label in card views.\n */\n labelClassName?: string;\n\n /**\n * Additional classes for each card content in card views.\n */\n contentClassName?: string;\n};\n\nexport type TableCardCell = {\n key: string;\n content: ReactNode;\n mobileLabel?: string;\n horizontalAlign?: TableHorizontalAlign;\n verticalAlign?: TableVerticalAlign;\n className?: string;\n contentClassName?: string;\n hideOnMobile?: boolean;\n preventRowClick?: boolean;\n};\n\nexport type TableCardProps<RowType extends Record<string, unknown>> = {\n active?: boolean;\n disabled?: boolean;\n expanded?: boolean;\n selected?: boolean;\n row: RowType;\n rowIndex: number;\n rowKeyValue: string | number;\n cells: TableCardCell[];\n cardRowClassName?: string;\n cardCellClassName?: string;\n cardLabelClassName?: string;\n cardContentClassName?: string;\n rowClassName?: string;\n rowAnimationProps?: MotionProps;\n isClickable: boolean;\n onActiveRowChange?: (rowId: TableRowId | undefined, row: RowType, rowIndex: number) => void;\n onRowClick?: (row: RowType, rowIndex: number) => void;\n onToggleRowSelection?: (rowId: TableRowId) => void;\n showSelectionColumn?: boolean;\n};\n\nconst expandedCardDuration = 0.18;\n\nconst TableCard = <RowType extends Record<string, unknown>>(props: TableCardProps<RowType>) => {\n const {\n active,\n disabled,\n expanded,\n selected,\n row,\n rowIndex,\n rowKeyValue,\n cells,\n cardRowClassName,\n cardCellClassName,\n cardLabelClassName,\n cardContentClassName,\n rowClassName,\n rowAnimationProps,\n isClickable,\n onActiveRowChange,\n onRowClick,\n onToggleRowSelection,\n showSelectionColumn,\n } = props;\n\n const [isAnimating, setIsAnimating] = useState(expanded);\n const shouldReduceMotion = useReducedMotion();\n\n const interactiveRowProps = getInteractiveRowProps({\n isClickable: isClickable && !disabled,\n onRowClick: (clickedRow, clickedRowIndex) => {\n onRowClick?.(clickedRow, clickedRowIndex);\n onActiveRowChange?.(active ? undefined : rowKeyValue, clickedRow, clickedRowIndex);\n },\n row,\n rowIndex,\n });\n\n const handleCellInteraction = (event: KeyboardEvent<HTMLDivElement> | MouseEvent<HTMLDivElement>) => {\n event.stopPropagation();\n };\n\n const defaultExpandedAnimationProps = useMemo<MotionProps | undefined>(() => {\n if (!expanded) {\n return;\n }\n\n if (shouldReduceMotion) {\n return {\n initial: { opacity: 0 },\n animate: { opacity: 1, transition: { duration: 0.12, ease: 'easeInOut' as const } },\n exit: { opacity: 0, transition: { duration: 0.12, ease: 'easeInOut' as const } },\n };\n }\n\n return {\n initial: { opacity: 0, height: 0, y: -8 },\n animate: {\n opacity: 1,\n height: 'auto',\n y: 0,\n transition: { duration: expandedCardDuration, ease: 'easeOut' as const },\n },\n exit: {\n opacity: 0,\n height: 0,\n y: -8,\n transition: { duration: expandedCardDuration, ease: 'easeInOut' as const },\n },\n };\n }, [expanded, shouldReduceMotion]);\n\n const resolvedRowAnimationProps =\n defaultExpandedAnimationProps || rowAnimationProps\n ? {\n ...defaultExpandedAnimationProps,\n ...rowAnimationProps,\n }\n : undefined;\n\n const motionStyle = resolvedRowAnimationProps?.style as CSSProperties | undefined;\n const resolvedRowStyle = expanded\n ? {\n ...motionStyle,\n overflow: isAnimating ? 'hidden' : 'visible',\n }\n : motionStyle;\n\n const rowClassNames = classNames(\n 'table-row',\n 'divider-y-1 divider-color-lighter divider-style-solid',\n active && 'table-row-active',\n disabled && 'table-row-disabled',\n expanded && 'table-row-expanded-data',\n selected && 'table-row-selected',\n cardRowClassName,\n interactiveRowProps.isClickableClassName,\n rowClassName\n );\n\n const rowContent = (\n <>\n {showSelectionColumn && (\n <div\n className={classNames('table-cell table-selection-cell', cardCellClassName)}\n role='cell'\n aria-colindex={1}\n onClick={event => event.stopPropagation()}\n onKeyDown={event => event.stopPropagation()}\n >\n <div className='table-selection-control'>\n <Checkbox\n checked={selected}\n disabled={disabled}\n onChange={() => onToggleRowSelection?.(rowKeyValue)}\n />\n </div>\n </div>\n )}\n {cells.map((cell, cellIndex) => (\n <div\n key={`${String(rowKeyValue)}-${cell.key}`}\n className={classNames(\n 'table-cell',\n cardCellClassName,\n getHorizontalAlignClassName(cell.horizontalAlign),\n getVerticalAlignClassName(cell.verticalAlign),\n cell.hideOnMobile && 'table-hide-mobile',\n cell.className\n )}\n data-column={cell.key}\n role='cell'\n aria-colindex={resolveAriaColIndex(cellIndex + 1, showSelectionColumn)}\n onClick={cell.preventRowClick ? handleCellInteraction : undefined}\n onKeyDown={cell.preventRowClick ? handleCellInteraction : undefined}\n >\n {cell.mobileLabel && (\n <div className={classNames('table-cell-label', cardLabelClassName)}>{cell.mobileLabel}</div>\n )}\n <div className={classNames('table-cell-content', cardContentClassName, cell.contentClassName)}>\n {cell.content}\n </div>\n </div>\n ))}\n </>\n );\n\n return resolvedRowAnimationProps ? (\n <motion.div\n key={rowKeyValue}\n className={rowClassNames}\n onClick={interactiveRowProps.onClick}\n onKeyDown={interactiveRowProps.onKeyDown}\n role='row'\n tabIndex={interactiveRowProps.tabIndex}\n onAnimationStart={expanded ? () => setIsAnimating(true) : undefined}\n onAnimationComplete={expanded ? () => setIsAnimating(false) : undefined}\n {...resolvedRowAnimationProps}\n style={resolvedRowStyle}\n >\n {rowContent}\n </motion.div>\n ) : (\n <div\n key={rowKeyValue}\n className={rowClassNames}\n onClick={interactiveRowProps.onClick}\n onKeyDown={interactiveRowProps.onKeyDown}\n role='row'\n tabIndex={interactiveRowProps.tabIndex}\n >\n {rowContent}\n </div>\n );\n};\n\nexport default TableCard;\n"],"names":["expandedCardDuration","TableCard","props","active","disabled","expanded","selected","row","rowIndex","rowKeyValue","cells","cardRowClassName","cardCellClassName","cardLabelClassName","cardContentClassName","rowClassName","rowAnimationProps","isClickable","onActiveRowChange","onRowClick","onToggleRowSelection","showSelectionColumn","isAnimating","setIsAnimating","useState","shouldReduceMotion","useReducedMotion","interactiveRowProps","getInteractiveRowProps","clickedRow","clickedRowIndex","handleCellInteraction","event","defaultExpandedAnimationProps","useMemo","resolvedRowAnimationProps","motionStyle","resolvedRowStyle","rowClassNames","classNames","rowContent","jsxs","Fragment","jsx","Checkbox","cell","cellIndex","getHorizontalAlignClassName","getVerticalAlignClassName","resolveAriaColIndex","motion"],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ import { PropsWithChildren, ReactNode } from 'react';
2
+ import { TableCellOverflow, TableHorizontalAlign, TableVerticalAlign } from './Table.types';
3
+ export type TableColumnProps = PropsWithChildren<{
4
+ /**
5
+ * Optional explicit column key.
6
+ * If omitted, the cell is matched by its position inside `<TableRow>`.
7
+ */
8
+ columnKey?: string;
9
+ /**
10
+ * Optional explicit value.
11
+ */
12
+ value?: ReactNode;
13
+ /**
14
+ * Additional classes for this cell only.
15
+ */
16
+ className?: string;
17
+ /**
18
+ * Horizontal alignment override for this cell.
19
+ */
20
+ horizontalAlign?: TableHorizontalAlign;
21
+ /**
22
+ * Vertical alignment override for this cell.
23
+ */
24
+ verticalAlign?: TableVerticalAlign;
25
+ /**
26
+ * Overflow behavior for the cell content wrapper.
27
+ *
28
+ * @default 'hidden'
29
+ */
30
+ overflow?: TableCellOverflow;
31
+ /**
32
+ * Number of columns this cell should span.
33
+ *
34
+ * Currently used by header and footer-style declarative table sections.
35
+ */
36
+ colSpan?: number;
37
+ /**
38
+ * Prevents clicks and keyboard interactions inside this cell from triggering the parent row click handler.
39
+ *
40
+ * Useful for interactive cell content such as dropdowns, inputs, or buttons.
41
+ *
42
+ * @default false
43
+ */
44
+ preventRowClick?: boolean;
45
+ }>;
46
+ declare const TableColumn: (_props: TableColumnProps) => null;
47
+ export default TableColumn;
@@ -0,0 +1,5 @@
1
+ const o = (l) => null;
2
+ export {
3
+ o as default
4
+ };
5
+ //# sourceMappingURL=TableColumn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableColumn.js","sources":["../../../src/components/table/TableColumn.tsx"],"sourcesContent":["import type { PropsWithChildren, ReactNode } from 'react';\n\nimport type { TableCellOverflow, TableHorizontalAlign, TableVerticalAlign } from './Table.types';\n\nexport type TableColumnProps = PropsWithChildren<{\n /**\n * Optional explicit column key.\n * If omitted, the cell is matched by its position inside `<TableRow>`.\n */\n columnKey?: string;\n\n /**\n * Optional explicit value.\n */\n value?: ReactNode;\n\n /**\n * Additional classes for this cell only.\n */\n className?: string;\n\n /**\n * Horizontal alignment override for this cell.\n */\n horizontalAlign?: TableHorizontalAlign;\n\n /**\n * Vertical alignment override for this cell.\n */\n verticalAlign?: TableVerticalAlign;\n\n /**\n * Overflow behavior for the cell content wrapper.\n *\n * @default 'hidden'\n */\n overflow?: TableCellOverflow;\n\n /**\n * Number of columns this cell should span.\n *\n * Currently used by header and footer-style declarative table sections.\n */\n colSpan?: number;\n\n /**\n * Prevents clicks and keyboard interactions inside this cell from triggering the parent row click handler.\n *\n * Useful for interactive cell content such as dropdowns, inputs, or buttons.\n *\n * @default false\n */\n preventRowClick?: boolean;\n}>;\n\nconst TableColumn = (_props: TableColumnProps) => null;\n\nexport default TableColumn;\n"],"names":["TableColumn","_props"],"mappings":"AAuDA,MAAMA,IAAc,CAACC,MAA6B;"}
@@ -0,0 +1,22 @@
1
+ import { PropsWithChildren, ReactNode } from 'react';
2
+ export type TableExpandedContentRowProps = PropsWithChildren<{
3
+ /**
4
+ * Parent row key used to associate this expanded content row with its parent.
5
+ */
6
+ parentKey: string | number;
7
+ /**
8
+ * Optional explicit content for the full-width expanded row.
9
+ * If omitted, `children` are used.
10
+ */
11
+ content?: ReactNode;
12
+ /**
13
+ * Optional class names only for this expanded content row.
14
+ */
15
+ className?: string;
16
+ /**
17
+ * Disable table hover styling for this row.
18
+ */
19
+ noHover?: boolean;
20
+ }>;
21
+ declare const TableExpandedContentRow: (_props: TableExpandedContentRowProps) => null;
22
+ export default TableExpandedContentRow;
@@ -0,0 +1,5 @@
1
+ const n = (e) => null;
2
+ export {
3
+ n as default
4
+ };
5
+ //# sourceMappingURL=TableExpandedContentRow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableExpandedContentRow.js","sources":["../../../src/components/table/TableExpandedContentRow.tsx"],"sourcesContent":["import type { PropsWithChildren, ReactNode } from 'react';\n\nexport type TableExpandedContentRowProps = PropsWithChildren<{\n /**\n * Parent row key used to associate this expanded content row with its parent.\n */\n parentKey: string | number;\n\n /**\n * Optional explicit content for the full-width expanded row.\n * If omitted, `children` are used.\n */\n content?: ReactNode;\n\n /**\n * Optional class names only for this expanded content row.\n */\n className?: string;\n\n /**\n * Disable table hover styling for this row.\n */\n noHover?: boolean;\n}>;\n\nconst TableExpandedContentRow = (_props: TableExpandedContentRowProps) => null;\n\nexport default TableExpandedContentRow;\n"],"names":["TableExpandedContentRow","_props"],"mappings":"AAyBA,MAAMA,IAA0B,CAACC,MAAyC;"}