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

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 (344) hide show
  1. package/DayPicker.js +6 -2
  2. package/DayPicker.js.map +1 -1
  3. package/DayPickerCalendar.d.ts +2 -0
  4. package/DayPickerCalendar.js +5 -0
  5. package/DayPickerCalendar.js.map +1 -0
  6. package/DayPickerPrototype.d.ts +2 -0
  7. package/DayPickerPrototype.js +5 -0
  8. package/DayPickerPrototype.js.map +1 -0
  9. package/Marker.js +9 -5
  10. package/TableNext.d.ts +2 -0
  11. package/TableNext.js +23 -0
  12. package/TableNext.js.map +1 -0
  13. package/TableToolbar.js +3 -2
  14. package/TableToolbar.js.map +1 -1
  15. package/components/analyticsAnalysisOverlay/AnalyticsAnalysisBanner.d.ts +38 -3
  16. package/components/analyticsAnalysisOverlay/AnalyticsAnalysisBanner.js +104 -109
  17. package/components/analyticsAnalysisOverlay/AnalyticsAnalysisBanner.js.map +1 -1
  18. package/components/analyticsAnalysisOverlay/AnalyticsAnalysisOverlay.d.ts +24 -5
  19. package/components/analyticsAnalysisOverlay/AnalyticsAnalysisOverlay.js +60 -56
  20. package/components/analyticsAnalysisOverlay/AnalyticsAnalysisOverlay.js.map +1 -1
  21. package/components/assetTree/Tree.js +13 -13
  22. package/components/charts/Area.d.ts +5 -3
  23. package/components/charts/Area.js +4 -3
  24. package/components/charts/Area.js.map +1 -1
  25. package/components/charts/AreaChart.js.map +1 -1
  26. package/components/charts/ComposedChart.js.map +1 -1
  27. package/components/clearableInput/ClearableInput.d.ts +30 -0
  28. package/components/clearableInput/ClearableInput.js +81 -78
  29. package/components/clearableInput/ClearableInput.js.map +1 -1
  30. package/components/datepicker/DayPicker.d.ts +4 -51
  31. package/components/datepicker/DayPicker.js +267 -257
  32. package/components/datepicker/DayPicker.js.map +1 -1
  33. package/components/datepicker/DayPickerCalendar.d.ts +4 -0
  34. package/components/datepicker/DayPickerCalendar.js +129 -0
  35. package/components/datepicker/DayPickerCalendar.js.map +1 -0
  36. package/components/datepicker/DayPickerDropdown.d.ts +19 -0
  37. package/components/datepicker/DayPickerDropdown.js +88 -0
  38. package/components/datepicker/DayPickerDropdown.js.map +1 -0
  39. package/components/datepicker/DayPickerDropdownFooter.d.ts +7 -0
  40. package/components/datepicker/DayPickerDropdownFooter.js +7 -0
  41. package/components/datepicker/DayPickerDropdownFooter.js.map +1 -0
  42. package/components/datepicker/DayPickerDropdownSidebar.d.ts +8 -0
  43. package/components/datepicker/DayPickerDropdownSidebar.js +7 -0
  44. package/components/datepicker/DayPickerDropdownSidebar.js.map +1 -0
  45. package/components/datepicker/DayPickerInput.d.ts +28 -0
  46. package/components/datepicker/DayPickerInput.js +65 -0
  47. package/components/datepicker/DayPickerInput.js.map +1 -0
  48. package/components/datepicker/DayPickerPrototype.d.ts +53 -0
  49. package/components/datepicker/DayPickerPrototype.js +285 -0
  50. package/components/datepicker/DayPickerPrototype.js.map +1 -0
  51. package/components/datepicker/dayPickerRangeSelectionUtils.d.ts +15 -0
  52. package/components/datepicker/dayPickerRangeSelectionUtils.js +31 -0
  53. package/components/datepicker/dayPickerRangeSelectionUtils.js.map +1 -0
  54. package/components/datepicker/dayPickerTypes.d.ts +517 -0
  55. package/components/datepicker/dayPickerTypes.js +7 -0
  56. package/components/datepicker/dayPickerTypes.js.map +1 -0
  57. package/components/datepicker/dayPickerUtils.d.ts +10 -0
  58. package/components/datepicker/dayPickerUtils.js +92 -0
  59. package/components/datepicker/dayPickerUtils.js.map +1 -0
  60. package/components/datepicker/useDayPickerInputState.d.ts +32 -0
  61. package/components/datepicker/useDayPickerInputState.js +85 -0
  62. package/components/datepicker/useDayPickerInputState.js.map +1 -0
  63. package/components/datepicker/useStackedDayPickerCalendars.d.ts +5 -0
  64. package/components/datepicker/useStackedDayPickerCalendars.js +39 -0
  65. package/components/datepicker/useStackedDayPickerCalendars.js.map +1 -0
  66. package/components/divider/Divider.js +6 -6
  67. package/components/dropdown/ButtonDropdown.d.ts +4 -0
  68. package/components/dropdown/ButtonDropdown.js +70 -68
  69. package/components/dropdown/ButtonDropdown.js.map +1 -1
  70. package/components/dropdown/DropdownToggleButton.d.ts +1 -0
  71. package/components/dropdown/DropdownToggleButton.js +17 -15
  72. package/components/dropdown/DropdownToggleButton.js.map +1 -1
  73. package/components/fade/FadeExpander.js +17 -20
  74. package/components/fade/FadeExpander.js.map +1 -1
  75. package/components/listMenu/ListMenu.d.ts +8 -0
  76. package/components/listMenu/ListMenu.js +74 -66
  77. package/components/listMenu/ListMenu.js.map +1 -1
  78. package/components/loadMore/LoadMoreProgress.js +6 -7
  79. package/components/map/components/Map.js +189 -157
  80. package/components/map/components/Map.js.map +1 -1
  81. package/components/map/components/MapContext.d.ts +1 -0
  82. package/components/map/components/MapContext.js +8 -7
  83. package/components/map/components/MapContext.js.map +1 -1
  84. package/components/map/components/features/Route.d.ts +65 -1
  85. package/components/map/components/features/Route.js +184 -98
  86. package/components/map/components/features/Route.js.map +1 -1
  87. package/components/map/components/features/basics/Marker.d.ts +21 -1
  88. package/components/map/components/features/basics/Marker.js +99 -40
  89. package/components/map/components/features/basics/Marker.js.map +1 -1
  90. package/components/map/components/features/basics/Polygon.d.ts +24 -1
  91. package/components/map/components/features/basics/Polygon.js +72 -19
  92. package/components/map/components/features/basics/Polygon.js.map +1 -1
  93. package/components/map/components/features/basics/Polyline.d.ts +29 -0
  94. package/components/map/components/features/basics/Polyline.js +69 -39
  95. package/components/map/components/features/basics/Polyline.js.map +1 -1
  96. package/components/map/components/features/layers/MarkerLayer.js +8 -8
  97. package/components/map/components/features/layers/MarkerLayer.js.map +1 -1
  98. package/components/map/components/features/layers/clustering/SimpleClusterLayer.js +13 -6
  99. package/components/map/components/features/layers/clustering/SimpleClusterLayer.js.map +1 -1
  100. package/components/map/utils/clustering.d.ts +1 -1
  101. package/components/map/utils/clustering.js +30 -30
  102. package/components/map/utils/clustering.js.map +1 -1
  103. package/components/map/utils/mapTypes.d.ts +135 -0
  104. package/components/map/utils/mapTypes.js.map +1 -1
  105. package/components/map/utils/rendering.js +5 -5
  106. package/components/mapMarker/ClusterMapMarker.d.ts +2 -0
  107. package/components/mapMarker/ClusterMapMarker.js.map +1 -1
  108. package/components/mapMarker/SingleMapMarker.d.ts +2 -0
  109. package/components/mapMarker/SingleMapMarker.js.map +1 -1
  110. package/components/popover/Popover.js +4 -4
  111. package/components/radiobutton/RadioCardGroup.js +3 -3
  112. package/components/rioglyph/RioglyphIconType.d.ts +1 -1
  113. package/components/selects/ClearButton.js +9 -7
  114. package/components/selects/ClearButton.js.map +1 -1
  115. package/components/selects/Multiselect.d.ts +6 -0
  116. package/components/selects/Multiselect.js +164 -150
  117. package/components/selects/Multiselect.js.map +1 -1
  118. package/components/selects/Select.js +39 -37
  119. package/components/selects/Select.js.map +1 -1
  120. package/components/table/Table.d.ts +27 -248
  121. package/components/table/Table.js +240 -214
  122. package/components/table/Table.js.map +1 -1
  123. package/components/table/Table.types.d.ts +302 -121
  124. package/components/table/TableBody.d.ts +65 -5
  125. package/components/table/TableBody.js +132 -2
  126. package/components/table/TableBody.js.map +1 -1
  127. package/components/table/TableCardsSorting.js +25 -32
  128. package/components/table/TableCardsSorting.js.map +1 -1
  129. package/components/table/TableColumn.d.ts +21 -6
  130. package/components/table/TableColumn.js +114 -2
  131. package/components/table/TableColumn.js.map +1 -1
  132. package/components/table/TableExpandedContentRow.d.ts +7 -7
  133. package/components/table/TableExpandedContentRow.js +107 -2
  134. package/components/table/TableExpandedContentRow.js.map +1 -1
  135. package/components/table/TableExpandedRow.d.ts +9 -4
  136. package/components/table/TableExpandedRow.js +147 -2
  137. package/components/table/TableExpandedRow.js.map +1 -1
  138. package/components/table/TableExpanderButton.js +13 -11
  139. package/components/table/TableExpanderButton.js.map +1 -1
  140. package/components/table/TableFooter.d.ts +10 -6
  141. package/components/table/TableFooter.js +49 -2
  142. package/components/table/TableFooter.js.map +1 -1
  143. package/components/table/TableGroupFooterRow.d.ts +7 -7
  144. package/components/table/TableGroupFooterRow.js +27 -2
  145. package/components/table/TableGroupFooterRow.js.map +1 -1
  146. package/components/table/TableGroupRow.d.ts +7 -7
  147. package/components/table/TableGroupRow.js +33 -2
  148. package/components/table/TableGroupRow.js.map +1 -1
  149. package/components/table/TableHeader.d.ts +26 -4
  150. package/components/table/TableHeader.js +117 -2
  151. package/components/table/TableHeader.js.map +1 -1
  152. package/components/table/TableHeaderColumn.d.ts +25 -9
  153. package/components/table/TableHeaderColumn.js +83 -2
  154. package/components/table/TableHeaderColumn.js.map +1 -1
  155. package/components/table/TableHeaderRow.d.ts +1 -1
  156. package/components/table/TableHeaderRow.js +11 -2
  157. package/components/table/TableHeaderRow.js.map +1 -1
  158. package/components/table/TableRow.d.ts +15 -4
  159. package/components/table/TableRow.js +109 -2
  160. package/components/table/TableRow.js.map +1 -1
  161. package/components/table/TableSpacerRow.d.ts +3 -2
  162. package/components/table/TableSpacerRow.js +26 -2
  163. package/components/table/TableSpacerRow.js.map +1 -1
  164. package/components/table/TableToolbar.d.ts +4 -23
  165. package/components/table/TableToolbar.js +39 -28
  166. package/components/table/TableToolbar.js.map +1 -1
  167. package/components/table/TableToolbarColumn.d.ts +31 -0
  168. package/components/table/TableToolbarColumn.js +33 -0
  169. package/components/table/TableToolbarColumn.js.map +1 -0
  170. package/components/table/TableViewToggles.d.ts +3 -3
  171. package/components/table/TableViewToggles.js.map +1 -1
  172. package/components/table/context/TableInteractionContext.d.ts +26 -0
  173. package/components/table/context/TableInteractionContext.js +7 -0
  174. package/components/table/context/TableInteractionContext.js.map +1 -0
  175. package/components/table/context/TableLayoutContext.d.ts +26 -0
  176. package/components/table/context/TableLayoutContext.js +7 -0
  177. package/components/table/context/TableLayoutContext.js.map +1 -0
  178. package/components/table/context/TableRenderConfigContext.d.ts +27 -0
  179. package/components/table/context/TableRenderConfigContext.js +7 -0
  180. package/components/table/context/TableRenderConfigContext.js.map +1 -0
  181. package/components/table/context/TableRenderContext.d.ts +85 -0
  182. package/components/table/context/TableRenderContext.js +7 -0
  183. package/components/table/context/TableRenderContext.js.map +1 -0
  184. package/components/table/context/TableStructureContext.d.ts +31 -0
  185. package/components/table/context/TableStructureContext.js +17 -0
  186. package/components/table/context/TableStructureContext.js.map +1 -0
  187. package/components/table/layout/columnSizing.d.ts +2 -2
  188. package/components/table/layout/columnSizing.js.map +1 -1
  189. package/components/table/layout/useDraggableColumns.d.ts +3 -3
  190. package/components/table/layout/useDraggableColumns.js +17 -17
  191. package/components/table/layout/useDraggableColumns.js.map +1 -1
  192. package/components/table/layout/useHorizontalSectionSync.d.ts +4 -1
  193. package/components/table/layout/useHorizontalSectionSync.js +36 -31
  194. package/components/table/layout/useHorizontalSectionSync.js.map +1 -1
  195. package/components/table/layout/useMeasuredColumnMaxWidths.d.ts +3 -3
  196. package/components/table/layout/useMeasuredColumnMaxWidths.js.map +1 -1
  197. package/components/table/layout/useResizableColumns.d.ts +5 -4
  198. package/components/table/layout/useResizableColumns.js +108 -67
  199. package/components/table/layout/useResizableColumns.js.map +1 -1
  200. package/components/table/layout/useTableBodyScrollBottom.d.ts +12 -0
  201. package/components/table/layout/useTableBodyScrollBottom.js +37 -0
  202. package/components/table/layout/useTableBodyScrollBottom.js.map +1 -0
  203. package/components/table/layout/useTableLayout.d.ts +18 -6
  204. package/components/table/layout/useTableLayout.js +51 -41
  205. package/components/table/layout/useTableLayout.js.map +1 -1
  206. package/components/table/layout/useTableVirtualization.d.ts +6 -6
  207. package/components/table/layout/useTableVirtualization.js +22 -22
  208. package/components/table/layout/useTableVirtualization.js.map +1 -1
  209. package/components/table/model/resolveRowMeta.d.ts +3 -2
  210. package/components/table/model/resolveRowMeta.js.map +1 -1
  211. package/components/table/model/resolveTableClassConfig.d.ts +2 -3
  212. package/components/table/model/resolveTableClassConfig.js.map +1 -1
  213. package/components/table/model/tableView.types.d.ts +41 -0
  214. package/components/table/native/TableSettingsListItem.js +1 -1
  215. package/components/table/native/TableSettingsListItem.js.map +1 -1
  216. package/components/table/render/body/TableBodyContent.d.ts +21 -0
  217. package/components/table/render/body/TableBodyContent.js +52 -0
  218. package/components/table/render/body/TableBodyContent.js.map +1 -0
  219. package/components/table/render/body/TableEmptyRow.js +2 -2
  220. package/components/table/render/body/TableEmptyRow.js.map +1 -1
  221. package/components/table/render/header/TableBatchDropdown.d.ts +5 -1
  222. package/components/table/render/header/TableBatchDropdown.js +17 -15
  223. package/components/table/render/header/TableBatchDropdown.js.map +1 -1
  224. package/components/table/render/header/TableColumnFilter.d.ts +2 -2
  225. package/components/table/render/header/TableColumnFilter.js +16 -14
  226. package/components/table/render/header/TableColumnFilter.js.map +1 -1
  227. package/components/table/render/header/TableDraggableHeaderCell.d.ts +2 -1
  228. package/components/table/render/header/TableDraggableHeaderCell.js +45 -33
  229. package/components/table/render/header/TableDraggableHeaderCell.js.map +1 -1
  230. package/components/table/render/header/TableHeader.types.d.ts +13 -9
  231. package/components/table/render/header/TableHeaderCellContent.d.ts +2 -1
  232. package/components/table/render/header/TableHeaderCellContent.js +16 -16
  233. package/components/table/render/header/TableHeaderCellContent.js.map +1 -1
  234. package/components/table/render/header/TableHeaderCellResizeHandle.d.ts +2 -1
  235. package/components/table/render/header/TableHeaderCellResizeHandle.js +8 -8
  236. package/components/table/render/header/TableHeaderCellResizeHandle.js.map +1 -1
  237. package/components/table/render/header/TableHeaderDragOverlay.d.ts +5 -4
  238. package/components/table/render/header/TableHeaderDragOverlay.js.map +1 -1
  239. package/components/table/render/header/TableStaticHeaderCell.d.ts +2 -1
  240. package/components/table/render/header/TableStaticHeaderCell.js +34 -20
  241. package/components/table/render/header/TableStaticHeaderCell.js.map +1 -1
  242. package/components/table/render/header/resolveAriaSort.d.ts +2 -1
  243. package/components/table/render/header/resolveAriaSort.js.map +1 -1
  244. package/components/table/render/header/resolveHeaderCellClassName.d.ts +5 -2
  245. package/components/table/render/header/resolveHeaderCellClassName.js +14 -12
  246. package/components/table/render/header/resolveHeaderCellClassName.js.map +1 -1
  247. package/components/table/render/header/resolveHeaderCellStyle.d.ts +2 -1
  248. package/components/table/render/header/resolveHeaderCellStyle.js.map +1 -1
  249. package/components/table/runtime/shouldAnimateBodyRows.d.ts +17 -0
  250. package/components/table/runtime/shouldAnimateBodyRows.js +5 -0
  251. package/components/table/runtime/shouldAnimateBodyRows.js.map +1 -0
  252. package/components/table/runtime/useRenderDraftState.d.ts +14 -0
  253. package/components/table/runtime/useRenderDraftState.js +80 -0
  254. package/components/table/runtime/useRenderDraftState.js.map +1 -0
  255. package/components/table/runtime/useResolvedRenderColumns.d.ts +43 -0
  256. package/components/table/runtime/useResolvedRenderColumns.js +113 -0
  257. package/components/table/runtime/useResolvedRenderColumns.js.map +1 -0
  258. package/components/table/runtime/useResolvedRenderHeader.d.ts +27 -0
  259. package/components/table/runtime/useResolvedRenderHeader.js +67 -0
  260. package/components/table/runtime/useResolvedRenderHeader.js.map +1 -0
  261. package/components/table/selection/useInternalTableSelectionState.d.ts +17 -0
  262. package/components/table/selection/useInternalTableSelectionState.js +28 -0
  263. package/components/table/selection/useInternalTableSelectionState.js.map +1 -0
  264. package/components/table/selection/useTableSelection.d.ts +3 -3
  265. package/components/table/selection/useTableSelection.js.map +1 -1
  266. package/components/table/shared/getCellContentOverflowClassName.d.ts +3 -0
  267. package/components/table/shared/getCellContentOverflowClassName.js +18 -0
  268. package/components/table/shared/getCellContentOverflowClassName.js.map +1 -0
  269. package/components/table/shared/getInteractiveRowProps.d.ts +3 -2
  270. package/components/table/shared/getInteractiveRowProps.js.map +1 -1
  271. package/hooks/useDraggableElement.d.ts +27 -5
  272. package/hooks/useDraggableElement.js +100 -23
  273. package/hooks/useDraggableElement.js.map +1 -1
  274. package/hooks/usePopperDropdown.d.ts +1 -0
  275. package/hooks/usePopperDropdown.js +15 -12
  276. package/hooks/usePopperDropdown.js.map +1 -1
  277. package/hooks/useUrlState.js +3 -3
  278. package/package.json +16 -17
  279. package/utils/analytics/createAnalyticsOverlayTooltip.js +57 -57
  280. package/utils/analytics/createAnalyticsOverlayTooltip.js.map +1 -1
  281. package/utils/analytics/useAnalyticsOverlayDom.js +3 -3
  282. package/utils/init/initConfig.js +5 -5
  283. package/utils/init/initConfig.js.map +1 -1
  284. package/utils/routeUtils.d.ts +5 -2
  285. package/utils/routeUtils.js +17 -17
  286. package/utils/routeUtils.js.map +1 -1
  287. package/version.d.ts +1 -1
  288. package/version.js +1 -1
  289. package/version.js.map +1 -1
  290. package/components/table/TableCard.d.ts +0 -63
  291. package/components/table/TableCard.js +0 -150
  292. package/components/table/TableCard.js.map +0 -1
  293. package/components/table/model/buildTableViewModel.d.ts +0 -28
  294. package/components/table/model/buildTableViewModel.js +0 -221
  295. package/components/table/model/buildTableViewModel.js.map +0 -1
  296. package/components/table/model/resolveCellContent.d.ts +0 -2
  297. package/components/table/model/resolveCellContent.js +0 -5
  298. package/components/table/model/resolveCellContent.js.map +0 -1
  299. package/components/table/model/tableViewModel.types.d.ts +0 -153
  300. package/components/table/parse/parseBody.d.ts +0 -3
  301. package/components/table/parse/parseBody.js +0 -13
  302. package/components/table/parse/parseBody.js.map +0 -1
  303. package/components/table/parse/parseColumns.d.ts +0 -3
  304. package/components/table/parse/parseColumns.js +0 -81
  305. package/components/table/parse/parseColumns.js.map +0 -1
  306. package/components/table/parse/parseFooter.d.ts +0 -3
  307. package/components/table/parse/parseFooter.js +0 -39
  308. package/components/table/parse/parseFooter.js.map +0 -1
  309. package/components/table/parse/parseHeaders.d.ts +0 -4
  310. package/components/table/parse/parseHeaders.js +0 -89
  311. package/components/table/parse/parseHeaders.js.map +0 -1
  312. package/components/table/parse/parseRows.d.ts +0 -3
  313. package/components/table/parse/parseRows.js +0 -93
  314. package/components/table/parse/parseRows.js.map +0 -1
  315. package/components/table/parse/tableChildGuards.d.ts +0 -25
  316. package/components/table/parse/tableChildGuards.js +0 -29
  317. package/components/table/parse/tableChildGuards.js.map +0 -1
  318. package/components/table/render/body/TableBodyRow.d.ts +0 -16
  319. package/components/table/render/body/TableBodyRow.js +0 -84
  320. package/components/table/render/body/TableBodyRow.js.map +0 -1
  321. package/components/table/render/body/TableBodySection.d.ts +0 -20
  322. package/components/table/render/body/TableBodySection.js +0 -68
  323. package/components/table/render/body/TableBodySection.js.map +0 -1
  324. package/components/table/render/body/TableDataRow.d.ts +0 -15
  325. package/components/table/render/body/TableDataRow.js +0 -143
  326. package/components/table/render/body/TableDataRow.js.map +0 -1
  327. package/components/table/render/body/TableExpandedRow.d.ts +0 -8
  328. package/components/table/render/body/TableExpandedRow.js +0 -84
  329. package/components/table/render/body/TableExpandedRow.js.map +0 -1
  330. package/components/table/render/body/TableGroupRow.d.ts +0 -8
  331. package/components/table/render/body/TableGroupRow.js +0 -21
  332. package/components/table/render/body/TableGroupRow.js.map +0 -1
  333. package/components/table/render/body/TableSpacerRow.d.ts +0 -7
  334. package/components/table/render/body/TableSpacerRow.js +0 -15
  335. package/components/table/render/body/TableSpacerRow.js.map +0 -1
  336. package/components/table/render/footer/TableFooterCell.d.ts +0 -8
  337. package/components/table/render/footer/TableFooterCell.js +0 -31
  338. package/components/table/render/footer/TableFooterCell.js.map +0 -1
  339. package/components/table/render/footer/TableFooterSection.d.ts +0 -10
  340. package/components/table/render/footer/TableFooterSection.js +0 -28
  341. package/components/table/render/footer/TableFooterSection.js.map +0 -1
  342. package/components/table/render/header/TableHeaderSection.d.ts +0 -3
  343. package/components/table/render/header/TableHeaderSection.js +0 -104
  344. package/components/table/render/header/TableHeaderSection.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"buildTableViewModel.js","sources":["../../../../src/components/table/model/buildTableViewModel.ts"],"sourcesContent":["import type { ReactNode } from 'react';\n\nimport classNames from '../../../utils/classNames';\nimport type { TableColumnWithArea } from '../layout/useTableLayout';\nimport { getMobileLabel } from './resolveCellContent';\nimport { resolveRowClassName, resolveRowKey } from './resolveRowMeta';\nimport type {\n TableCellClassName,\n TableParsedDataRow,\n TableParsedExpandedDataRow,\n TableParsedCells,\n TableParsedFooter,\n TableParsedHeaderColumn,\n TableRowId,\n TableParsedRow,\n TableRowClassName,\n TableSortDirection,\n} from '../Table.types';\nimport type {\n TableDataViewRow,\n TableExpandedContentViewRow,\n TableExpandedDataViewRow,\n TableGroupFooterViewRow,\n TableGroupViewRow,\n TableViewHeader,\n TableViewHeaderColumn,\n TableViewCell,\n TableViewFooter,\n TableViewFooterCell,\n TableViewModel,\n TableViewRow,\n} from './tableViewModel.types';\n\nconst resolveDeclarativeCell = (resolvedCells: TableParsedCells, columnKey: string) =>\n resolvedCells.cellsByKey?.[columnKey];\n\ntype BuildTableViewModelProps<RowType extends Record<string, unknown>> = {\n columnsWithAreas: TableColumnWithArea<RowType>[];\n resolvedHeaderColumns: TableParsedHeaderColumn<RowType>[];\n resolvedRows: TableParsedRow<RowType>[];\n resolvedFooter?: TableParsedFooter;\n rowKey?: keyof RowType | ((row: RowType, rowIndex: number) => string | number);\n rowClassName?: TableRowClassName<RowType>;\n cellClassName?: TableCellClassName<RowType>;\n activeRowId?: TableRowId;\n noRowsState: ReactNode;\n isClickable: boolean;\n isTableView: boolean;\n selectedRowIds?: TableRowId[];\n sortBy?: string | string[];\n sortDirection?: TableSortDirection;\n cardClasses: {\n rowClassName?: string;\n cellClassName?: string;\n labelClassName?: string;\n contentClassName?: string;\n };\n};\n\nexport const buildTableViewModel = <RowType extends Record<string, unknown>>(\n props: BuildTableViewModelProps<RowType>\n): TableViewModel<RowType> => {\n const {\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 } = props;\n\n const selectedRowIdSet = new Set(selectedRowIds);\n const sortedColumnKeys = new Set(Array.isArray(sortBy) ? sortBy : sortBy ? [sortBy] : []);\n\n const columns = columnsWithAreas.map(({ column, areaName }) => ({\n key: column.key,\n label: column.label,\n mobileLabel: getMobileLabel(column),\n horizontalAlign: column.horizontalAlign,\n className: column.className,\n headerClassName: column.headerClassName,\n hideOnMobile: column.hideOnMobile,\n sortable: column.sortable,\n sortDirection: sortedColumnKeys.has(column.key) ? sortDirection : undefined,\n areaName,\n source: column,\n }));\n\n const columnStartByKey = new Map(columnsWithAreas.map(({ column }, index) => [column.key, index + 1]));\n\n const header = (() => {\n if (resolvedHeaderColumns.length === 0) {\n return;\n }\n\n const rowCount = Math.max(...resolvedHeaderColumns.map(column => column.row + column.rowSpan - 1));\n const occupied = Array.from({ length: rowCount }, () => Array(columnsWithAreas.length).fill(false));\n\n const findColumnStart = (rowStart: number, colSpan: number) => {\n for (let candidate = 1; candidate <= columnsWithAreas.length - colSpan + 1; candidate += 1) {\n const hasFreeSlot = occupied[rowStart - 1]\n .slice(candidate - 1, candidate - 1 + colSpan)\n .every(isUsed => !isUsed);\n\n if (hasFreeSlot) {\n return candidate;\n }\n }\n\n return 1;\n };\n\n const columns = resolvedHeaderColumns.map<TableViewHeaderColumn<RowType>>(column => {\n const columnStart = column.columnKey\n ? (columnStartByKey.get(column.columnKey) ?? 1)\n : findColumnStart(column.row, column.colSpan);\n\n for (let rowIndex = column.row - 1; rowIndex < column.row - 1 + column.rowSpan; rowIndex += 1) {\n for (\n let columnIndex = columnStart - 1;\n columnIndex < columnStart - 1 + column.colSpan;\n columnIndex += 1\n ) {\n if (occupied[rowIndex]?.[columnIndex] !== undefined) {\n occupied[rowIndex][columnIndex] = true;\n }\n }\n }\n\n return {\n key: column.key,\n columnKey: column.columnKey,\n label: column.label,\n icon: column.icon,\n filter: column.filter,\n hideLabel: column.hideLabel,\n horizontalAlign: column.horizontalAlign,\n verticalAlign: column.verticalAlign,\n className: column.className,\n headerClassName: column.headerClassName,\n hideOnMobile: column.hideOnMobile,\n draggable: column.draggable,\n resizeable: column.resizeable,\n sortable: column.sortable,\n sortDirection: column.columnKey && sortedColumnKeys.has(column.columnKey) ? sortDirection : undefined,\n rowStart: column.row,\n rowSpan: column.rowSpan,\n columnStart,\n colSpan: column.colSpan,\n source: column.columnKey\n ? columnsWithAreas.find(({ column: sourceColumn }) => sourceColumn.key === column.columnKey)?.column\n : undefined,\n };\n });\n\n return {\n rowCount,\n totalColumnCount: columnsWithAreas.length,\n columns,\n } satisfies TableViewHeader<RowType>;\n })();\n\n const headerAlignmentByColumnKey = new Map(\n header?.columns\n .filter((column): column is TableViewHeaderColumn<RowType> & { columnKey: string } => !!column.columnKey)\n .map(column => [\n column.columnKey,\n {\n horizontalAlign: column.horizontalAlign,\n verticalAlign: column.verticalAlign,\n },\n ]) ?? []\n );\n\n const resolveHeaderAlignment = (columnKey?: string) =>\n columnKey ? headerAlignmentByColumnKey.get(columnKey) : undefined;\n\n const createDataRow = (\n row: TableParsedDataRow<RowType> | TableParsedExpandedDataRow<RowType>,\n rowIndex: number\n ): TableDataViewRow<RowType> | TableExpandedDataViewRow<RowType> => {\n const resolvedRowId = resolveRowKey(row.data, rowIndex, rowKey);\n const declarativeCells =\n row.cellsByKey &&\n (() => {\n const nextCells: TableViewCell[] = [];\n let coveredUntilColumnIndex = -1;\n\n columnsWithAreas.forEach(({ column, columnIndex }) => {\n if (columnIndex <= coveredUntilColumnIndex) {\n return;\n }\n\n const declarativeCell = resolveDeclarativeCell(row, column.key);\n const headerAlignment = resolveHeaderAlignment(column.key);\n const colSpan = declarativeCell?.colSpan ?? 1;\n\n if (declarativeCell) {\n coveredUntilColumnIndex = columnIndex + colSpan - 1;\n }\n\n nextCells.push({\n key: String(declarativeCell?.key ?? column.key),\n mobileLabel: getMobileLabel(column),\n content: declarativeCell?.content ?? '',\n horizontalAlign:\n declarativeCell?.horizontalAlign ??\n headerAlignment?.horizontalAlign ??\n column.horizontalAlign,\n verticalAlign: declarativeCell?.verticalAlign ?? headerAlignment?.verticalAlign,\n className: classNames(column.className, declarativeCell?.className),\n contentClassName: declarativeCell?.contentClassName,\n resolvedClassName: cellClassName?.(row.data, column, rowIndex, columnIndex),\n hideOnMobile: column.hideOnMobile,\n columnStart: columnIndex + 1,\n colSpan,\n preventRowClick: declarativeCell?.preventRowClick,\n });\n });\n\n return nextCells;\n })();\n\n return {\n kind: row.kind,\n key: resolvedRowId,\n parentKey: row.kind === 'expanded' ? row.parentKey : undefined,\n rowIndex,\n data: row.data,\n active: resolvedRowId === activeRowId,\n disabled: row.disabled,\n className: row.className,\n noHover: row.noHover,\n resolvedClassName: resolveRowClassName(rowClassName, row.data, rowIndex),\n selected: selectedRowIdSet.has(resolvedRowId),\n cells:\n declarativeCells && declarativeCells.length > 0\n ? declarativeCells\n : columnsWithAreas.map(({ column, columnIndex }) => {\n const headerAlignment = resolveHeaderAlignment(column.key);\n\n return {\n key: column.key,\n mobileLabel: getMobileLabel(column),\n content: '',\n horizontalAlign: headerAlignment?.horizontalAlign ?? column.horizontalAlign,\n verticalAlign: headerAlignment?.verticalAlign,\n className: column.className,\n contentClassName: undefined,\n resolvedClassName: cellClassName?.(row.data, column, rowIndex, columnIndex),\n hideOnMobile: column.hideOnMobile,\n columnStart: columnIndex + 1,\n colSpan: 1,\n preventRowClick: false,\n };\n }),\n };\n };\n\n const rows: TableViewRow<RowType>[] =\n resolvedRows.length > 0\n ? resolvedRows.map((row, rowIndex) => {\n switch (row.kind) {\n case 'spacer':\n return row;\n case 'group':\n return {\n kind: 'group',\n key: row.key,\n content: row.content,\n sticky: row.sticky,\n className: row.className,\n noHover: row.noHover,\n } satisfies TableGroupViewRow;\n case 'group-footer':\n return {\n kind: 'group-footer',\n key: row.key,\n content: row.content,\n className: row.className,\n noHover: row.noHover,\n } satisfies TableGroupFooterViewRow;\n case 'expanded-full-width':\n return {\n kind: 'expanded-full-width',\n key: row.key,\n parentKey: row.parentKey,\n content: row.content,\n className: row.className,\n noHover: row.noHover,\n } satisfies TableExpandedContentViewRow<RowType>;\n default:\n return createDataRow(row, rowIndex);\n }\n })\n : [\n {\n kind: 'empty',\n key: 'empty',\n content: noRowsState,\n },\n ];\n\n const footer: TableViewFooter | undefined = resolvedFooter\n ? {\n className: resolvedFooter.className,\n content: resolvedFooter.content,\n cells: resolvedFooter.cells\n ? resolvedFooter.cells.map((footerCell, footerCellIndex) => {\n const baseColumnIndex = footerCell.columnKey\n ? (columnStartByKey.get(footerCell.columnKey) ?? footerCellIndex + 1) - 1\n : footerCellIndex;\n const sourceColumn = columnsWithAreas[baseColumnIndex]?.column;\n const headerAlignment = resolveHeaderAlignment(footerCell.columnKey ?? sourceColumn?.key);\n\n return {\n key: String(footerCell.key ?? sourceColumn?.key ?? footerCellIndex),\n content: footerCell.content,\n horizontalAlign:\n footerCell.horizontalAlign ??\n headerAlignment?.horizontalAlign ??\n sourceColumn?.horizontalAlign,\n verticalAlign: footerCell.verticalAlign ?? headerAlignment?.verticalAlign,\n className: classNames(sourceColumn?.className, footerCell.className),\n hideOnMobile: sourceColumn?.hideOnMobile,\n columnStart: footerCell.columnKey\n ? (columnStartByKey.get(footerCell.columnKey) ?? footerCellIndex + 1)\n : footerCellIndex + 1,\n colSpan: footerCell.colSpan,\n } satisfies TableViewFooterCell;\n })\n : resolvedFooter.cellsByIndex || resolvedFooter.cellsByKey\n ? columnsWithAreas.map(({ column, columnIndex }) => {\n const footerCell = resolveDeclarativeCell(resolvedFooter, column.key);\n const headerAlignment = resolveHeaderAlignment(column.key);\n\n return {\n key: column.key,\n content: footerCell?.content ?? '',\n horizontalAlign:\n footerCell?.horizontalAlign ??\n headerAlignment?.horizontalAlign ??\n column.horizontalAlign,\n verticalAlign: footerCell?.verticalAlign ?? headerAlignment?.verticalAlign,\n className: classNames(column.className, footerCell?.className),\n hideOnMobile: column.hideOnMobile,\n columnStart: columnIndex + 1,\n colSpan: 1,\n } satisfies TableViewFooterCell;\n })\n : undefined,\n }\n : undefined;\n\n return {\n columns,\n header,\n rows,\n footer,\n flags: {\n hasHeader: !!header,\n hasFooter: !!footer,\n isClickable,\n isTableView,\n },\n cardClasses,\n };\n};\n"],"names":["resolveDeclarativeCell","resolvedCells","columnKey","buildTableViewModel","props","columnsWithAreas","resolvedHeaderColumns","resolvedRows","resolvedFooter","rowKey","rowClassName","cellClassName","activeRowId","noRowsState","isClickable","isTableView","selectedRowIds","sortBy","sortDirection","cardClasses","selectedRowIdSet","sortedColumnKeys","columns","column","areaName","getMobileLabel","columnStartByKey","index","header","rowCount","occupied","findColumnStart","rowStart","colSpan","candidate","isUsed","columnStart","rowIndex","columnIndex","sourceColumn","headerAlignmentByColumnKey","resolveHeaderAlignment","createDataRow","row","resolvedRowId","resolveRowKey","declarativeCells","nextCells","coveredUntilColumnIndex","declarativeCell","headerAlignment","classNames","resolveRowClassName","rows","footer","footerCell","footerCellIndex","baseColumnIndex"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import { TableColumnDefinition } from '../Table.types';
2
- export declare const getMobileLabel: <RowType extends Record<string, unknown>>(column: TableColumnDefinition<RowType>) => string;
@@ -1,5 +0,0 @@
1
- const b = (e) => e.mobileLabel !== void 0 ? e.mobileLabel : typeof e.label == "string" ? e.label : "";
2
- export {
3
- b as getMobileLabel
4
- };
5
- //# sourceMappingURL=resolveCellContent.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resolveCellContent.js","sources":["../../../../src/components/table/model/resolveCellContent.ts"],"sourcesContent":["import type { TableColumnDefinition } from '../Table.types';\n\nexport const getMobileLabel = <RowType extends Record<string, unknown>>(column: TableColumnDefinition<RowType>) => {\n if (column.mobileLabel !== undefined) {\n return column.mobileLabel;\n }\n\n return typeof column.label === 'string' ? column.label : '';\n};\n"],"names":["getMobileLabel","column"],"mappings":"AAEO,MAAMA,IAAiB,CAA0CC,MAChEA,EAAO,gBAAgB,SAChBA,EAAO,cAGX,OAAOA,EAAO,SAAU,WAAWA,EAAO,QAAQ;"}
@@ -1,153 +0,0 @@
1
- import { ReactNode } from 'react';
2
- import { TableColumnDefinition, TableHorizontalAlign, TableSortDirection, TableVerticalAlign } from '../Table.types';
3
- export type TableViewColumn<RowType extends Record<string, unknown>> = {
4
- key: string;
5
- label: ReactNode;
6
- mobileLabel: string;
7
- horizontalAlign?: TableHorizontalAlign;
8
- className?: string;
9
- headerClassName?: string;
10
- hideOnMobile?: boolean;
11
- sortable?: boolean;
12
- sortDirection?: TableSortDirection;
13
- areaName: string;
14
- source: TableColumnDefinition<RowType>;
15
- };
16
- export type TableViewHeaderColumn<RowType extends Record<string, unknown>> = {
17
- key: string | number;
18
- columnKey?: string;
19
- label: ReactNode;
20
- icon?: string;
21
- filter?: ReactNode;
22
- hideLabel?: boolean;
23
- horizontalAlign?: TableHorizontalAlign;
24
- verticalAlign?: TableVerticalAlign;
25
- className?: string;
26
- headerClassName?: string;
27
- hideOnMobile?: boolean;
28
- draggable?: boolean;
29
- resizeable?: boolean;
30
- sortable?: boolean;
31
- sortDirection?: TableSortDirection;
32
- rowStart: number;
33
- rowSpan: number;
34
- columnStart: number;
35
- colSpan: number;
36
- source?: TableColumnDefinition<RowType>;
37
- };
38
- export type TableViewHeader<RowType extends Record<string, unknown>> = {
39
- rowCount: number;
40
- totalColumnCount: number;
41
- columns: TableViewHeaderColumn<RowType>[];
42
- };
43
- export type TableViewCell = {
44
- key: string;
45
- content: ReactNode;
46
- mobileLabel: string;
47
- horizontalAlign?: TableHorizontalAlign;
48
- verticalAlign?: TableVerticalAlign;
49
- className?: string;
50
- contentClassName?: string;
51
- resolvedClassName?: string;
52
- hideOnMobile?: boolean;
53
- columnStart: number;
54
- colSpan: number;
55
- preventRowClick?: boolean;
56
- };
57
- export type TableViewFooterCell = {
58
- key: string;
59
- content: ReactNode;
60
- horizontalAlign?: TableHorizontalAlign;
61
- verticalAlign?: TableVerticalAlign;
62
- className?: string;
63
- hideOnMobile?: boolean;
64
- columnStart: number;
65
- colSpan: number;
66
- };
67
- export type TableDataViewRow<RowType extends Record<string, unknown>> = {
68
- kind: 'data';
69
- key: string | number;
70
- rowIndex: number;
71
- data: RowType;
72
- active?: boolean;
73
- disabled?: boolean;
74
- className?: string;
75
- noHover?: boolean;
76
- resolvedClassName?: string;
77
- selected?: boolean;
78
- cells: TableViewCell[];
79
- };
80
- export type TableExpandedDataViewRow<RowType extends Record<string, unknown>> = {
81
- kind: 'expanded';
82
- key: string | number;
83
- parentKey?: string | number;
84
- rowIndex: number;
85
- data: RowType;
86
- active?: boolean;
87
- disabled?: boolean;
88
- className?: string;
89
- noHover?: boolean;
90
- resolvedClassName?: string;
91
- selected?: boolean;
92
- cells: TableViewCell[];
93
- };
94
- export type TableSpacerViewRow = {
95
- kind: 'spacer';
96
- key: string | number;
97
- className?: string;
98
- noHover?: boolean;
99
- };
100
- export type TableExpandedContentViewRow<RowType extends Record<string, unknown>> = {
101
- kind: 'expanded-full-width';
102
- key: string | number;
103
- parentKey?: string | number;
104
- content: ReactNode;
105
- className?: string;
106
- noHover?: boolean;
107
- };
108
- export type TableGroupViewRow = {
109
- kind: 'group';
110
- key: string | number;
111
- content: ReactNode;
112
- sticky?: boolean;
113
- className?: string;
114
- noHover?: boolean;
115
- };
116
- export type TableGroupFooterViewRow = {
117
- kind: 'group-footer';
118
- key: string | number;
119
- content: ReactNode;
120
- className?: string;
121
- noHover?: boolean;
122
- };
123
- export type TableEmptyViewRow = {
124
- kind: 'empty';
125
- key: 'empty';
126
- content: ReactNode;
127
- };
128
- export type TableViewRow<RowType extends Record<string, unknown>> = TableDataViewRow<RowType> | TableExpandedDataViewRow<RowType> | TableSpacerViewRow | TableExpandedContentViewRow<RowType> | TableGroupViewRow | TableGroupFooterViewRow | TableEmptyViewRow;
129
- export type TableViewFooter = {
130
- className?: string;
131
- content?: ReactNode;
132
- cells?: TableViewFooterCell[];
133
- };
134
- export type TableViewCardClasses = {
135
- rowClassName?: string;
136
- cellClassName?: string;
137
- labelClassName?: string;
138
- contentClassName?: string;
139
- };
140
- export type TableViewFlags = {
141
- hasHeader: boolean;
142
- hasFooter: boolean;
143
- isClickable: boolean;
144
- isTableView: boolean;
145
- };
146
- export type TableViewModel<RowType extends Record<string, unknown>> = {
147
- columns: TableViewColumn<RowType>[];
148
- header?: TableViewHeader<RowType>;
149
- rows: TableViewRow<RowType>[];
150
- footer?: TableViewFooter;
151
- flags: TableViewFlags;
152
- cardClasses: TableViewCardClasses;
153
- };
@@ -1,3 +0,0 @@
1
- import { ReactNode } from 'react';
2
- export declare const resolveHasBody: <RowType extends Record<string, unknown>>(children: ReactNode) => boolean;
3
- export declare const resolveBodyMaxHeight: (children: ReactNode) => string | undefined;
@@ -1,13 +0,0 @@
1
- import { Children as r, isValidElement as s, Fragment as a } from "react";
2
- import { toCssSize as i } from "../layout/columnSizing.js";
3
- import { isTableBodyChild as t, isTableRowChild as n, isTableSpacerRowChild as p, isTableExpandedRowChild as l, isTableExpandedContentRowChild as d, isTableGroupRowChild as m, isTableGroupFooterRowChild as C } from "./tableChildGuards.js";
4
- const b = (o) => r.toArray(o).some((e) => t(e) || n(e) || p(e) || l(e) || d(e) || m(e) || C(e) ? !0 : s(e) && e.type === a ? b(e.props.children) : !1), T = (o) => {
5
- const e = r.toArray(o).find(t);
6
- if (e)
7
- return i(e.props.maxHeight);
8
- };
9
- export {
10
- T as resolveBodyMaxHeight,
11
- b as resolveHasBody
12
- };
13
- //# sourceMappingURL=parseBody.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parseBody.js","sources":["../../../../src/components/table/parse/parseBody.ts"],"sourcesContent":["import { Children, Fragment, isValidElement, type ReactNode } from 'react';\n\nimport { toCssSize } from '../layout/columnSizing';\nimport {\n isTableBodyChild,\n isTableExpandedContentRowChild,\n isTableExpandedRowChild,\n isTableGroupFooterRowChild,\n isTableGroupRowChild,\n isTableRowChild,\n isTableSpacerRowChild,\n} from './tableChildGuards';\n\nexport const resolveHasBody = <RowType extends Record<string, unknown>>(children: ReactNode): boolean =>\n Children.toArray(children).some(child => {\n if (\n isTableBodyChild(child) ||\n isTableRowChild<RowType>(child) ||\n isTableSpacerRowChild(child) ||\n isTableExpandedRowChild<RowType>(child) ||\n isTableExpandedContentRowChild(child) ||\n isTableGroupRowChild(child) ||\n isTableGroupFooterRowChild(child)\n ) {\n return true;\n }\n\n if (isValidElement(child) && child.type === Fragment) {\n return resolveHasBody<RowType>(child.props.children);\n }\n\n return false;\n });\n\nexport const resolveBodyMaxHeight = (children: ReactNode) => {\n const tableBody = Children.toArray(children).find(isTableBodyChild);\n\n if (!tableBody) {\n return;\n }\n\n return toCssSize(tableBody.props.maxHeight);\n};\n"],"names":["resolveHasBody","children","Children","child","isTableBodyChild","isTableRowChild","isTableSpacerRowChild","isTableExpandedRowChild","isTableExpandedContentRowChild","isTableGroupRowChild","isTableGroupFooterRowChild","isValidElement","Fragment","resolveBodyMaxHeight","tableBody","toCssSize"],"mappings":";;;AAaO,MAAMA,IAAiB,CAA0CC,MACpEC,EAAS,QAAQD,CAAQ,EAAE,KAAK,CAAAE,MAExBC,EAAiBD,CAAK,KACtBE,EAAyBF,CAAK,KAC9BG,EAAsBH,CAAK,KAC3BI,EAAiCJ,CAAK,KACtCK,EAA+BL,CAAK,KACpCM,EAAqBN,CAAK,KAC1BO,EAA2BP,CAAK,IAEzB,KAGPQ,EAAeR,CAAK,KAAKA,EAAM,SAASS,IACjCZ,EAAwBG,EAAM,MAAM,QAAQ,IAGhD,EACV,GAEQU,IAAuB,CAACZ,MAAwB;AACzD,QAAMa,IAAYZ,EAAS,QAAQD,CAAQ,EAAE,KAAKG,CAAgB;AAElE,MAAKU;AAIL,WAAOC,EAAUD,EAAU,MAAM,SAAS;AAC9C;"}
@@ -1,3 +0,0 @@
1
- import { ReactNode } from 'react';
2
- import { TableColumnDefinition } from '../Table.types';
3
- export declare const resolveColumns: <RowType extends Record<string, unknown>>(children: ReactNode) => TableColumnDefinition<RowType>[];
@@ -1,81 +0,0 @@
1
- import { Children as l } from "react";
2
- import N from "../../../utils/classNames.js";
3
- import { isTableHeaderChild as R, isTableHeaderRowChild as z, isTableHeaderColumnChild as w } from "./tableChildGuards.js";
4
- const T = (A) => l.toArray(A).filter(R).flatMap((M) => {
5
- const { children: y } = M.props, g = l.toArray(y).filter(z);
6
- return g.length > 0 ? g.flatMap(
7
- (r) => l.toArray(r.props.children).filter(w).flatMap((i) => {
8
- const {
9
- columnKey: e,
10
- label: a,
11
- icon: t,
12
- filter: n,
13
- width: d,
14
- minWidth: s,
15
- children: o,
16
- horizontalAlign: h,
17
- className: m,
18
- headerClassName: c,
19
- hideOnMobile: p,
20
- hideLabel: b,
21
- draggable: f,
22
- sortable: C,
23
- ...u
24
- } = i.props;
25
- return e ? [
26
- {
27
- ...u,
28
- headerClassName: N(m, c),
29
- hideOnMobile: p,
30
- horizontalAlign: h,
31
- draggable: f,
32
- key: e,
33
- label: a ?? o ?? "",
34
- icon: t,
35
- filter: n,
36
- hideLabel: b,
37
- sortable: C,
38
- width: d ?? s
39
- }
40
- ] : [];
41
- })
42
- ) : l.toArray(y).filter(w).map((r, i) => {
43
- const {
44
- columnKey: e,
45
- label: a,
46
- icon: t,
47
- filter: n,
48
- width: d,
49
- minWidth: s,
50
- minResizeWidth: o,
51
- maxResizeWidth: h,
52
- draggable: m,
53
- horizontalAlign: c,
54
- className: p,
55
- headerClassName: b,
56
- hideOnMobile: f,
57
- hideLabel: C,
58
- sortable: u,
59
- children: W
60
- } = r.props;
61
- return {
62
- key: e ?? `column-${i + 1}`,
63
- label: a ?? W ?? "",
64
- icon: t,
65
- filter: n,
66
- width: d ?? s,
67
- minResizeWidth: o,
68
- maxResizeWidth: h,
69
- draggable: m,
70
- horizontalAlign: c,
71
- headerClassName: N(p, b),
72
- hideOnMobile: f,
73
- hideLabel: C,
74
- sortable: u
75
- };
76
- });
77
- });
78
- export {
79
- T as resolveColumns
80
- };
81
- //# sourceMappingURL=parseColumns.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parseColumns.js","sources":["../../../../src/components/table/parse/parseColumns.ts"],"sourcesContent":["import { Children, type ReactNode } from 'react';\n\nimport classNames from '../../../utils/classNames';\nimport type { TableColumnDefinition } from '../Table.types';\nimport { isTableHeaderChild, isTableHeaderColumnChild, isTableHeaderRowChild } from './tableChildGuards';\n\nexport const resolveColumns = <RowType extends Record<string, unknown>>(children: ReactNode) =>\n Children.toArray(children)\n .filter(isTableHeaderChild<RowType>)\n .flatMap(child => {\n const { children: headerChildren } = child.props;\n const headerRows = Children.toArray(headerChildren).filter(isTableHeaderRowChild);\n\n if (headerRows.length > 0) {\n return headerRows.flatMap(headerRow =>\n Children.toArray(headerRow.props.children)\n .filter(isTableHeaderColumnChild<RowType>)\n .flatMap(headerColumn => {\n const {\n columnKey: nestedColumnKey,\n label: nestedLabel,\n icon: nestedIcon,\n filter: nestedFilter,\n width: nestedWidth,\n minWidth: nestedMinWidth,\n children: nestedChildren,\n horizontalAlign,\n className,\n headerClassName,\n hideOnMobile,\n hideLabel,\n draggable,\n sortable,\n ...nestedRemainingProps\n } = headerColumn.props as typeof headerColumn.props & {\n minWidth?: number | string;\n };\n\n if (!nestedColumnKey) {\n return [];\n }\n\n return [\n {\n ...nestedRemainingProps,\n headerClassName: classNames(className, headerClassName),\n hideOnMobile,\n horizontalAlign,\n draggable,\n key: nestedColumnKey,\n label: nestedLabel ?? nestedChildren ?? '',\n icon: nestedIcon,\n filter: nestedFilter,\n hideLabel,\n sortable,\n width: nestedWidth ?? nestedMinWidth,\n } as TableColumnDefinition<RowType>,\n ];\n })\n );\n }\n\n return Children.toArray(headerChildren)\n .filter(isTableHeaderColumnChild<RowType>)\n .map((headerCell, columnIndex) => {\n const {\n columnKey,\n label,\n icon,\n filter,\n width,\n minWidth,\n minResizeWidth,\n maxResizeWidth,\n draggable,\n horizontalAlign,\n className,\n headerClassName,\n hideOnMobile,\n hideLabel,\n sortable,\n children: cellChildren,\n } = headerCell.props as typeof headerCell.props & {\n minWidth?: number | string;\n };\n\n return {\n key: columnKey ?? `column-${columnIndex + 1}`,\n label: label ?? cellChildren ?? '',\n icon,\n filter,\n width: width ?? minWidth,\n minResizeWidth,\n maxResizeWidth,\n draggable,\n horizontalAlign,\n headerClassName: classNames(className, headerClassName),\n hideOnMobile,\n hideLabel,\n sortable,\n } as TableColumnDefinition<RowType>;\n });\n });\n"],"names":["resolveColumns","children","Children","isTableHeaderChild","child","headerChildren","headerRows","isTableHeaderRowChild","headerRow","isTableHeaderColumnChild","headerColumn","nestedColumnKey","nestedLabel","nestedIcon","nestedFilter","nestedWidth","nestedMinWidth","nestedChildren","horizontalAlign","className","headerClassName","hideOnMobile","hideLabel","draggable","sortable","nestedRemainingProps","classNames","headerCell","columnIndex","columnKey","label","icon","filter","width","minWidth","minResizeWidth","maxResizeWidth","cellChildren"],"mappings":";;;AAMO,MAAMA,IAAiB,CAA0CC,MACpEC,EAAS,QAAQD,CAAQ,EACpB,OAAOE,CAA2B,EAClC,QAAQ,CAAAC,MAAS;AACd,QAAM,EAAE,UAAUC,EAAA,IAAmBD,EAAM,OACrCE,IAAaJ,EAAS,QAAQG,CAAc,EAAE,OAAOE,CAAqB;AAEhF,SAAID,EAAW,SAAS,IACbA,EAAW;AAAA,IAAQ,CAAAE,MACtBN,EAAS,QAAQM,EAAU,MAAM,QAAQ,EACpC,OAAOC,CAAiC,EACxC,QAAQ,CAAAC,MAAgB;AACrB,YAAM;AAAA,QACF,WAAWC;AAAA,QACX,OAAOC;AAAA,QACP,MAAMC;AAAA,QACN,QAAQC;AAAA,QACR,OAAOC;AAAA,QACP,UAAUC;AAAA,QACV,UAAUC;AAAA,QACV,iBAAAC;AAAA,QACA,WAAAC;AAAA,QACA,iBAAAC;AAAA,QACA,cAAAC;AAAA,QACA,WAAAC;AAAA,QACA,WAAAC;AAAA,QACA,UAAAC;AAAA,QACA,GAAGC;AAAA,MAAA,IACHf,EAAa;AAIjB,aAAKC,IAIE;AAAA,QACH;AAAA,UACI,GAAGc;AAAA,UACH,iBAAiBC,EAAWP,GAAWC,CAAe;AAAA,UACtD,cAAAC;AAAA,UACA,iBAAAH;AAAA,UACA,WAAAK;AAAA,UACA,KAAKZ;AAAA,UACL,OAAOC,KAAeK,KAAkB;AAAA,UACxC,MAAMJ;AAAA,UACN,QAAQC;AAAA,UACR,WAAAQ;AAAA,UACA,UAAAE;AAAA,UACA,OAAOT,KAAeC;AAAA,QAAA;AAAA,MAC1B,IAjBO,CAAA;AAAA,IAmBf,CAAC;AAAA,EAAA,IAINd,EAAS,QAAQG,CAAc,EACjC,OAAOI,CAAiC,EACxC,IAAI,CAACkB,GAAYC,MAAgB;AAC9B,UAAM;AAAA,MACF,WAAAC;AAAA,MACA,OAAAC;AAAA,MACA,MAAAC;AAAA,MACA,QAAAC;AAAA,MACA,OAAAC;AAAA,MACA,UAAAC;AAAA,MACA,gBAAAC;AAAA,MACA,gBAAAC;AAAA,MACA,WAAAb;AAAA,MACA,iBAAAL;AAAA,MACA,WAAAC;AAAA,MACA,iBAAAC;AAAA,MACA,cAAAC;AAAA,MACA,WAAAC;AAAA,MACA,UAAAE;AAAA,MACA,UAAUa;AAAA,IAAA,IACVV,EAAW;AAIf,WAAO;AAAA,MACH,KAAKE,KAAa,UAAUD,IAAc,CAAC;AAAA,MAC3C,OAAOE,KAASO,KAAgB;AAAA,MAChC,MAAAN;AAAA,MACA,QAAAC;AAAA,MACA,OAAOC,KAASC;AAAA,MAChB,gBAAAC;AAAA,MACA,gBAAAC;AAAA,MACA,WAAAb;AAAA,MACA,iBAAAL;AAAA,MACA,iBAAiBQ,EAAWP,GAAWC,CAAe;AAAA,MACtD,cAAAC;AAAA,MACA,WAAAC;AAAA,MACA,UAAAE;AAAA,IAAA;AAAA,EAER,CAAC;AACT,CAAC;"}
@@ -1,3 +0,0 @@
1
- import { ReactNode } from 'react';
2
- import { TableColumnDefinition, TableParsedFooter } from '../Table.types';
3
- export declare const resolveFooter: <RowType extends Record<string, unknown>>(children: ReactNode, columns: TableColumnDefinition<RowType>[]) => TableParsedFooter | undefined;
@@ -1,39 +0,0 @@
1
- import { Children as y } from "react";
2
- import { isTableFooterChild as N, isTableCellChild as b } from "./tableChildGuards.js";
3
- const I = (h, u) => {
4
- const r = y.toArray(h).find(N);
5
- if (!r)
6
- return;
7
- const { content: C, className: f, children: t } = r.props, s = y.toArray(t).filter(b), e = s.length > 0, c = {}, i = [], a = [];
8
- let l = 0;
9
- return s.forEach((d, p) => {
10
- const {
11
- columnKey: v,
12
- value: K,
13
- horizontalAlign: g,
14
- verticalAlign: A,
15
- className: B,
16
- colSpan: m = 1,
17
- children: F
18
- } = d.props, o = v ?? u[l]?.key, n = {
19
- key: String(d.key ?? o ?? `footer-${p}`),
20
- columnKey: o,
21
- content: K ?? F ?? "",
22
- horizontalAlign: g,
23
- verticalAlign: A,
24
- className: B,
25
- colSpan: m
26
- };
27
- i[l] = n, o && (c[o] = n), a.push(n), l += m;
28
- }), {
29
- className: f,
30
- content: e ? void 0 : C ?? t,
31
- cells: e ? a : void 0,
32
- cellsByKey: e ? c : void 0,
33
- cellsByIndex: e ? i : void 0
34
- };
35
- };
36
- export {
37
- I as resolveFooter
38
- };
39
- //# sourceMappingURL=parseFooter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parseFooter.js","sources":["../../../../src/components/table/parse/parseFooter.ts"],"sourcesContent":["import { Children, type ReactNode } from 'react';\n\nimport type { TableColumnDefinition, TableParsedCell, TableParsedFooter, TableParsedFooterCell } from '../Table.types';\nimport { isTableCellChild, isTableFooterChild } from './tableChildGuards';\n\nexport const resolveFooter = <RowType extends Record<string, unknown>>(\n children: ReactNode,\n columns: TableColumnDefinition<RowType>[]\n) => {\n const tableFooter = Children.toArray(children).find(isTableFooterChild);\n\n if (!tableFooter) {\n return;\n }\n\n const { content, className, children: footerChildren } = tableFooter.props;\n const footerColumnChildren = Children.toArray(footerChildren).filter(isTableCellChild);\n const hasColumnCells = footerColumnChildren.length > 0;\n const cellsByKey: Record<string, TableParsedCell> = {};\n const cellsByIndex: TableParsedCell[] = [];\n const resolvedFooterCells: TableParsedFooterCell[] = [];\n let columnCursor = 0;\n\n footerColumnChildren.forEach((footerColumnChild, columnIndex) => {\n const {\n columnKey,\n value,\n horizontalAlign,\n verticalAlign,\n className: columnClassName,\n colSpan = 1,\n children: columnChildren,\n } = footerColumnChild.props;\n const resolvedColumnKey = columnKey ?? columns[columnCursor]?.key;\n const cell = {\n key: String(footerColumnChild.key ?? resolvedColumnKey ?? `footer-${columnIndex}`),\n columnKey: resolvedColumnKey,\n content: value ?? columnChildren ?? '',\n horizontalAlign,\n verticalAlign,\n className: columnClassName,\n colSpan,\n };\n\n cellsByIndex[columnCursor] = cell;\n if (resolvedColumnKey) {\n cellsByKey[resolvedColumnKey] = cell;\n }\n\n resolvedFooterCells.push(cell);\n columnCursor += colSpan;\n });\n\n return {\n className,\n content: hasColumnCells ? undefined : (content ?? footerChildren),\n cells: hasColumnCells ? resolvedFooterCells : undefined,\n cellsByKey: hasColumnCells ? cellsByKey : undefined,\n cellsByIndex: hasColumnCells ? cellsByIndex : undefined,\n } as TableParsedFooter;\n};\n"],"names":["resolveFooter","children","columns","tableFooter","Children","isTableFooterChild","content","className","footerChildren","footerColumnChildren","isTableCellChild","hasColumnCells","cellsByKey","cellsByIndex","resolvedFooterCells","columnCursor","footerColumnChild","columnIndex","columnKey","value","horizontalAlign","verticalAlign","columnClassName","colSpan","columnChildren","resolvedColumnKey","cell"],"mappings":";;AAKO,MAAMA,IAAgB,CACzBC,GACAC,MACC;AACD,QAAMC,IAAcC,EAAS,QAAQH,CAAQ,EAAE,KAAKI,CAAkB;AAEtE,MAAI,CAACF;AACD;AAGJ,QAAM,EAAE,SAAAG,GAAS,WAAAC,GAAW,UAAUC,EAAA,IAAmBL,EAAY,OAC/DM,IAAuBL,EAAS,QAAQI,CAAc,EAAE,OAAOE,CAAgB,GAC/EC,IAAiBF,EAAqB,SAAS,GAC/CG,IAA8C,CAAA,GAC9CC,IAAkC,CAAA,GAClCC,IAA+C,CAAA;AACrD,MAAIC,IAAe;AAEnB,SAAAN,EAAqB,QAAQ,CAACO,GAAmBC,MAAgB;AAC7D,UAAM;AAAA,MACF,WAAAC;AAAA,MACA,OAAAC;AAAA,MACA,iBAAAC;AAAA,MACA,eAAAC;AAAA,MACA,WAAWC;AAAA,MACX,SAAAC,IAAU;AAAA,MACV,UAAUC;AAAA,IAAA,IACVR,EAAkB,OAChBS,IAAoBP,KAAahB,EAAQa,CAAY,GAAG,KACxDW,IAAO;AAAA,MACT,KAAK,OAAOV,EAAkB,OAAOS,KAAqB,UAAUR,CAAW,EAAE;AAAA,MACjF,WAAWQ;AAAA,MACX,SAASN,KAASK,KAAkB;AAAA,MACpC,iBAAAJ;AAAA,MACA,eAAAC;AAAA,MACA,WAAWC;AAAA,MACX,SAAAC;AAAA,IAAA;AAGJ,IAAAV,EAAaE,CAAY,IAAIW,GACzBD,MACAb,EAAWa,CAAiB,IAAIC,IAGpCZ,EAAoB,KAAKY,CAAI,GAC7BX,KAAgBQ;AAAA,EACpB,CAAC,GAEM;AAAA,IACH,WAAAhB;AAAA,IACA,SAASI,IAAiB,SAAaL,KAAWE;AAAA,IAClD,OAAOG,IAAiBG,IAAsB;AAAA,IAC9C,YAAYH,IAAiBC,IAAa;AAAA,IAC1C,cAAcD,IAAiBE,IAAe;AAAA,EAAA;AAEtD;"}
@@ -1,4 +0,0 @@
1
- import { ReactNode } from 'react';
2
- import { TableParsedHeaderColumn } from '../Table.types';
3
- export declare const resolveHeaderColumns: <RowType extends Record<string, unknown>>(children: ReactNode) => TableParsedHeaderColumn<RowType>[];
4
- export declare const resolveHeaderClassName: <RowType extends Record<string, unknown>>(children: ReactNode) => string | undefined;
@@ -1,89 +0,0 @@
1
- import { Children as l } from "react";
2
- import A from "../../../utils/classNames.js";
3
- import { isTableHeaderChild as $, isTableHeaderRowChild as w, isTableHeaderColumnChild as S } from "./tableChildGuards.js";
4
- const H = (a) => {
5
- const { parentKey: e, headerIndex: n, rowIndex: o, columnKey: s, columnIndex: r } = a;
6
- return `${String(e ?? `header-${n}`)}-${o}-${String(s ?? r)}`;
7
- }, x = (a) => l.toArray(a).filter($).flatMap((e, n) => {
8
- const { children: o } = e.props, s = l.toArray(o).filter(w);
9
- return s.length > 0 ? s.flatMap(
10
- (r, t) => l.toArray(r.props.children).filter(S).map((i, d) => {
11
- const {
12
- columnKey: c,
13
- label: m,
14
- icon: p,
15
- filter: h,
16
- colSpan: y = 1,
17
- rowSpan: b = 1,
18
- children: f,
19
- className: u,
20
- headerClassName: C,
21
- hideLabel: g,
22
- draggable: N,
23
- resizeable: K,
24
- ...k
25
- } = i.props;
26
- return {
27
- ...k,
28
- key: H({
29
- parentKey: e.key,
30
- headerIndex: n,
31
- rowIndex: t,
32
- columnKey: i.key,
33
- columnIndex: d
34
- }),
35
- columnKey: c,
36
- label: m ?? f ?? "",
37
- icon: p,
38
- filter: h,
39
- hideLabel: g,
40
- row: t + 1,
41
- colSpan: y,
42
- rowSpan: b,
43
- headerClassName: A(u, C),
44
- draggable: N,
45
- resizeable: K
46
- };
47
- })
48
- ) : l.toArray(o).filter(S).map((r, t) => {
49
- const {
50
- columnKey: i,
51
- label: d,
52
- icon: c,
53
- filter: m,
54
- horizontalAlign: p,
55
- verticalAlign: h,
56
- className: y,
57
- headerClassName: b,
58
- hideOnMobile: f,
59
- hideLabel: u,
60
- draggable: C,
61
- resizeable: g,
62
- sortable: N,
63
- children: K
64
- } = r.props;
65
- return {
66
- key: r.key ?? `${String(e.key ?? `header-${n}`)}-${t}`,
67
- columnKey: i,
68
- label: d ?? K ?? "",
69
- icon: c,
70
- filter: m,
71
- hideLabel: u,
72
- row: 1,
73
- colSpan: 1,
74
- rowSpan: 1,
75
- horizontalAlign: p,
76
- verticalAlign: h,
77
- headerClassName: A(y, b),
78
- hideOnMobile: f,
79
- draggable: C,
80
- resizeable: g,
81
- sortable: N
82
- };
83
- });
84
- }), z = (a) => l.toArray(a).filter($).flatMap((e) => [e.props.className]).find(Boolean);
85
- export {
86
- z as resolveHeaderClassName,
87
- x as resolveHeaderColumns
88
- };
89
- //# sourceMappingURL=parseHeaders.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parseHeaders.js","sources":["../../../../src/components/table/parse/parseHeaders.ts"],"sourcesContent":["import { Children, type ReactNode } from 'react';\n\nimport classNames from '../../../utils/classNames';\nimport type { TableParsedHeaderColumn } from '../Table.types';\nimport { isTableHeaderChild, isTableHeaderColumnChild, isTableHeaderRowChild } from './tableChildGuards';\n\nconst resolveNestedHeaderKey = (args: {\n parentKey: string | number | null;\n headerIndex: number;\n rowIndex: number;\n columnKey: string | number | null;\n columnIndex: number;\n}) => {\n const { parentKey, headerIndex, rowIndex, columnKey, columnIndex } = args;\n\n return `${String(parentKey ?? `header-${headerIndex}`)}-${rowIndex}-${String(columnKey ?? columnIndex)}`;\n};\n\nexport const resolveHeaderColumns = <RowType extends Record<string, unknown>>(\n children: ReactNode\n): TableParsedHeaderColumn<RowType>[] =>\n Children.toArray(children)\n .filter(isTableHeaderChild<RowType>)\n .flatMap((child, index) => {\n const { children: headerChildren } = child.props;\n const headerRows = Children.toArray(headerChildren).filter(isTableHeaderRowChild);\n\n if (headerRows.length > 0) {\n return headerRows.flatMap((headerRow, rowIndex) =>\n Children.toArray(headerRow.props.children)\n .filter(isTableHeaderColumnChild<RowType>)\n .map((headerColumn, columnIndex) => {\n const {\n columnKey: nestedColumnKey,\n label: nestedLabel,\n icon: nestedIcon,\n filter: nestedFilter,\n colSpan = 1,\n rowSpan = 1,\n children: nestedChildren,\n className,\n headerClassName,\n hideLabel,\n draggable,\n resizeable,\n ...nestedRemainingProps\n } = headerColumn.props;\n\n return {\n ...nestedRemainingProps,\n key: resolveNestedHeaderKey({\n parentKey: child.key,\n headerIndex: index,\n rowIndex,\n columnKey: headerColumn.key,\n columnIndex,\n }),\n columnKey: nestedColumnKey,\n label: nestedLabel ?? nestedChildren ?? '',\n icon: nestedIcon,\n filter: nestedFilter,\n hideLabel,\n row: rowIndex + 1,\n colSpan,\n rowSpan,\n headerClassName: classNames(className, headerClassName),\n draggable,\n resizeable,\n } as TableParsedHeaderColumn<RowType>;\n })\n );\n }\n\n return Children.toArray(headerChildren)\n .filter(isTableHeaderColumnChild<RowType>)\n .map((headerCell, columnIndex) => {\n const {\n columnKey,\n label,\n icon,\n filter,\n horizontalAlign,\n verticalAlign,\n className,\n headerClassName,\n hideOnMobile,\n hideLabel,\n draggable,\n resizeable,\n sortable,\n children: cellChildren,\n } = headerCell.props;\n\n return {\n key: headerCell.key ?? `${String(child.key ?? `header-${index}`)}-${columnIndex}`,\n columnKey,\n label: label ?? cellChildren ?? '',\n icon,\n filter,\n hideLabel,\n row: 1,\n colSpan: 1,\n rowSpan: 1,\n horizontalAlign,\n verticalAlign,\n headerClassName: classNames(className, headerClassName),\n hideOnMobile,\n draggable,\n resizeable,\n sortable,\n } as TableParsedHeaderColumn<RowType>;\n });\n });\n\nexport const resolveHeaderClassName = <RowType extends Record<string, unknown>>(children: ReactNode) =>\n Children.toArray(children)\n .filter(isTableHeaderChild<RowType>)\n .flatMap(child => [child.props.className])\n .find(Boolean);\n"],"names":["resolveNestedHeaderKey","args","parentKey","headerIndex","rowIndex","columnKey","columnIndex","resolveHeaderColumns","children","Children","isTableHeaderChild","child","index","headerChildren","headerRows","isTableHeaderRowChild","headerRow","isTableHeaderColumnChild","headerColumn","nestedColumnKey","nestedLabel","nestedIcon","nestedFilter","colSpan","rowSpan","nestedChildren","className","headerClassName","hideLabel","draggable","resizeable","nestedRemainingProps","classNames","headerCell","label","icon","filter","horizontalAlign","verticalAlign","hideOnMobile","sortable","cellChildren","resolveHeaderClassName"],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import { ReactNode } from 'react';
2
- import { TableColumnDefinition, TableParsedRow } from '../Table.types';
3
- export declare const resolveRows: <RowType extends Record<string, unknown>>(children: ReactNode, columns: TableColumnDefinition<RowType>[]) => TableParsedRow<RowType>[];
@@ -1,93 +0,0 @@
1
- import { Children as g, isValidElement as M, Fragment as O } from "react";
2
- import { isTableGroupRowChild as H, isTableGroupFooterRowChild as b, isTableSpacerRowChild as R, isTableExpandedContentRowChild as $, isTableExpandedRowChild as T, isTableCellChild as P, isTableRowChild as V, isTableBodyChild as j } from "./tableChildGuards.js";
3
- const q = (r = "hidden") => {
4
- switch (r) {
5
- case "visible":
6
- return "overflow-visible";
7
- case "ellipsis":
8
- return "ellipsis-1";
9
- default:
10
- return "overflow-hidden";
11
- }
12
- }, d = (r) => g.toArray(r).flatMap((e) => V(e) || R(e) || T(e) || $(e) || H(e) || b(e) ? [e] : j(e) || M(e) && e.type === O ? d(e.props.children) : []), c = (r, e, m, o) => o !== void 0 ? e ? `${r}-${String(o)}-${e}` : `${r}-${String(o)}` : e || `${r}-${m}`, Q = (r, e) => d(r).map((o, l) => {
13
- if (H(o)) {
14
- const { className: n, content: s, noHover: a, sticky: t = !1, children: i } = o.props;
15
- return {
16
- kind: "group",
17
- key: c("group", o.key, l),
18
- content: s ?? i ?? "",
19
- sticky: t,
20
- className: n,
21
- noHover: a
22
- };
23
- }
24
- if (b(o)) {
25
- const { className: n, content: s, noHover: a, children: t } = o.props;
26
- return {
27
- kind: "group-footer",
28
- key: c("group-footer", o.key, l),
29
- content: s ?? t ?? "",
30
- className: n,
31
- noHover: a
32
- };
33
- }
34
- if (R(o)) {
35
- const { className: n, noHover: s } = o.props;
36
- return {
37
- kind: "spacer",
38
- key: c("spacer", o.key, l),
39
- className: n,
40
- noHover: s
41
- };
42
- }
43
- if ($(o)) {
44
- const { className: n, content: s, noHover: a, parentKey: t, children: i } = o.props;
45
- return {
46
- kind: "expanded-full-width",
47
- key: c("expanded-full-width", o.key, l, t),
48
- parentKey: t,
49
- content: s ?? i ?? "",
50
- className: n,
51
- noHover: a
52
- };
53
- }
54
- const v = T(o), { className: h, disabled: x, noHover: K, parentKey: S, children: B, ...E } = o.props, C = g.toArray(B).filter(P), f = C.length > 0, y = {}, w = [];
55
- let u = 0;
56
- return C.forEach((n, s) => {
57
- const {
58
- columnKey: a,
59
- value: t,
60
- horizontalAlign: i,
61
- verticalAlign: A,
62
- overflow: F = "hidden",
63
- className: G,
64
- colSpan: N = 1,
65
- preventRowClick: z = !1,
66
- children: D
67
- } = n.props, p = a ?? e[u]?.key, k = {
68
- key: String(n.key ?? p ?? `row-${l}-col-${s}`),
69
- columnKey: p,
70
- content: t ?? D ?? "",
71
- horizontalAlign: i,
72
- verticalAlign: A,
73
- className: G,
74
- contentClassName: q(F),
75
- colSpan: N,
76
- preventRowClick: z
77
- };
78
- w[u] = k, p && (y[p] = k), u += N;
79
- }), {
80
- kind: v ? "expanded" : "data",
81
- data: E,
82
- disabled: x,
83
- parentKey: v ? S : void 0,
84
- className: h,
85
- noHover: K,
86
- cellsByKey: f ? y : void 0,
87
- cellsByIndex: f ? w : void 0
88
- };
89
- });
90
- export {
91
- Q as resolveRows
92
- };
93
- //# sourceMappingURL=parseRows.js.map