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

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 (475) hide show
  1. package/AnalyticsAnalysisOverlay.d.ts +1 -0
  2. package/AnalyticsAnalysisOverlay.js +5 -0
  3. package/AnalyticsAnalysisOverlay.js.map +1 -0
  4. package/DayPicker.js +6 -2
  5. package/DayPicker.js.map +1 -1
  6. package/DayPickerCalendar.d.ts +2 -0
  7. package/DayPickerCalendar.js +5 -0
  8. package/DayPickerCalendar.js.map +1 -0
  9. package/DayPickerPrototype.d.ts +2 -0
  10. package/DayPickerPrototype.js +5 -0
  11. package/DayPickerPrototype.js.map +1 -0
  12. package/Table.d.ts +2 -0
  13. package/Table.js +23 -0
  14. package/Table.js.map +1 -0
  15. package/TableCol.d.ts +2 -2
  16. package/TableCol.js +1 -1
  17. package/TableHead.d.ts +2 -2
  18. package/TableHead.js +1 -1
  19. package/TableNext.d.ts +2 -0
  20. package/TableNext.js +23 -0
  21. package/TableNext.js.map +1 -0
  22. package/TableSettingsDialog.d.ts +2 -2
  23. package/TableSettingsDialog.js +1 -1
  24. package/TableToolbar.js +4 -2
  25. package/TableToolbar.js.map +1 -1
  26. package/analyticsAnalysisUtils.d.ts +1 -0
  27. package/analyticsAnalysisUtils.js +13 -0
  28. package/analyticsAnalysisUtils.js.map +1 -0
  29. package/components/analyticsAnalysisOverlay/AnalyticsAnalysisBanner.d.ts +18 -0
  30. package/components/analyticsAnalysisOverlay/AnalyticsAnalysisBanner.js +128 -0
  31. package/components/analyticsAnalysisOverlay/AnalyticsAnalysisBanner.js.map +1 -0
  32. package/components/analyticsAnalysisOverlay/AnalyticsAnalysisOverlay.d.ts +9 -0
  33. package/components/analyticsAnalysisOverlay/AnalyticsAnalysisOverlay.js +73 -0
  34. package/components/analyticsAnalysisOverlay/AnalyticsAnalysisOverlay.js.map +1 -0
  35. package/components/applicationHeader/AppMenuContent.js.map +1 -1
  36. package/components/applicationHeader/ApplicationActionBar.js +4 -4
  37. package/components/applicationHeader/ApplicationActionBar.js.map +1 -1
  38. package/components/applicationHeader/CollapsedNavItem.js +5 -14
  39. package/components/applicationHeader/CollapsedNavItem.js.map +1 -1
  40. package/components/applicationHeader/NavItems.js +10 -10
  41. package/components/applicationHeader/NavItems.js.map +1 -1
  42. package/components/assetTree/AssetTree.js +23 -23
  43. package/components/assetTree/AssetTree.js.map +1 -1
  44. package/components/assetTree/Tree.js +13 -13
  45. package/components/assetTree/TreeNothingFound.js +2 -2
  46. package/components/assetTree/TreeNothingFound.js.map +1 -1
  47. package/components/assetTree/treeUtils.js.map +1 -1
  48. package/components/autosuggest/AutoSuggest.js +31 -31
  49. package/components/autosuggest/AutoSuggest.js.map +1 -1
  50. package/components/autosuggest/AutoSuggestAddons.js +9 -9
  51. package/components/autosuggest/AutoSuggestAddons.js.map +1 -1
  52. package/components/banner/BannerActions.js +2 -2
  53. package/components/banner/BannerActions.js.map +1 -1
  54. package/components/banner/BannerIcon.js +3 -3
  55. package/components/banner/BannerIcon.js.map +1 -1
  56. package/components/banner/BannerPage.js +4 -4
  57. package/components/banner/BannerPage.js.map +1 -1
  58. package/components/button/Button.d.ts +7 -0
  59. package/components/button/Button.js +73 -65
  60. package/components/button/Button.js.map +1 -1
  61. package/components/charts/Area.d.ts +5 -3
  62. package/components/charts/Area.js +4 -3
  63. package/components/charts/Area.js.map +1 -1
  64. package/components/charts/AreaChart.js.map +1 -1
  65. package/components/charts/ComposedChart.js.map +1 -1
  66. package/components/checkbox/Checkbox.js +18 -17
  67. package/components/checkbox/Checkbox.js.map +1 -1
  68. package/components/clearableInput/ClearableInput.d.ts +30 -0
  69. package/components/clearableInput/ClearableInput.js +81 -78
  70. package/components/clearableInput/ClearableInput.js.map +1 -1
  71. package/components/datepicker/DateRangePicker.js +0 -2
  72. package/components/datepicker/DateRangePicker.js.map +1 -1
  73. package/components/datepicker/DayPicker.d.ts +4 -51
  74. package/components/datepicker/DayPicker.js +264 -256
  75. package/components/datepicker/DayPicker.js.map +1 -1
  76. package/components/datepicker/DayPickerCalendar.d.ts +4 -0
  77. package/components/datepicker/DayPickerCalendar.js +129 -0
  78. package/components/datepicker/DayPickerCalendar.js.map +1 -0
  79. package/components/datepicker/DayPickerDropdown.d.ts +18 -0
  80. package/components/datepicker/DayPickerDropdown.js +75 -0
  81. package/components/datepicker/DayPickerDropdown.js.map +1 -0
  82. package/components/datepicker/DayPickerDropdownFooter.d.ts +7 -0
  83. package/components/datepicker/DayPickerDropdownFooter.js +7 -0
  84. package/components/datepicker/DayPickerDropdownFooter.js.map +1 -0
  85. package/components/datepicker/DayPickerDropdownSidebar.d.ts +8 -0
  86. package/components/datepicker/DayPickerDropdownSidebar.js +7 -0
  87. package/components/datepicker/DayPickerDropdownSidebar.js.map +1 -0
  88. package/components/datepicker/DayPickerInput.d.ts +28 -0
  89. package/components/datepicker/DayPickerInput.js +65 -0
  90. package/components/datepicker/DayPickerInput.js.map +1 -0
  91. package/components/datepicker/DayPickerPrototype.d.ts +53 -0
  92. package/components/datepicker/DayPickerPrototype.js +285 -0
  93. package/components/datepicker/DayPickerPrototype.js.map +1 -0
  94. package/components/datepicker/dayPickerRangeSelectionUtils.d.ts +15 -0
  95. package/components/datepicker/dayPickerRangeSelectionUtils.js +31 -0
  96. package/components/datepicker/dayPickerRangeSelectionUtils.js.map +1 -0
  97. package/components/datepicker/dayPickerTypes.d.ts +517 -0
  98. package/components/datepicker/dayPickerTypes.js +7 -0
  99. package/components/datepicker/dayPickerTypes.js.map +1 -0
  100. package/components/datepicker/dayPickerUtils.d.ts +10 -0
  101. package/components/datepicker/dayPickerUtils.js +92 -0
  102. package/components/datepicker/dayPickerUtils.js.map +1 -0
  103. package/components/datepicker/useDayPickerInputState.d.ts +32 -0
  104. package/components/datepicker/useDayPickerInputState.js +85 -0
  105. package/components/datepicker/useDayPickerInputState.js.map +1 -0
  106. package/components/datepicker/useStackedDayPickerCalendars.d.ts +5 -0
  107. package/components/datepicker/useStackedDayPickerCalendars.js +39 -0
  108. package/components/datepicker/useStackedDayPickerCalendars.js.map +1 -0
  109. package/components/dialog/Dialog.js.map +1 -1
  110. package/components/dialog/DialogHeader.js +23 -20
  111. package/components/dialog/DialogHeader.js.map +1 -1
  112. package/components/dialog/MediaDialog.js +1 -1
  113. package/components/dialog/MediaDialog.js.map +1 -1
  114. package/components/divider/Divider.js +6 -6
  115. package/components/dropdown/ButtonDropdown.d.ts +4 -0
  116. package/components/dropdown/ButtonDropdown.js +70 -68
  117. package/components/dropdown/ButtonDropdown.js.map +1 -1
  118. package/components/dropdown/DropdownToggleButton.d.ts +1 -0
  119. package/components/dropdown/DropdownToggleButton.js +17 -15
  120. package/components/dropdown/DropdownToggleButton.js.map +1 -1
  121. package/components/editableContent/EditableContent.js +7 -7
  122. package/components/editableContent/EditableContent.js.map +1 -1
  123. package/components/expander/ExpanderList.d.ts +5 -0
  124. package/components/expander/ExpanderList.js +25 -16
  125. package/components/expander/ExpanderList.js.map +1 -1
  126. package/components/expander/ExpanderPanel.d.ts +5 -0
  127. package/components/expander/ExpanderPanel.js +29 -28
  128. package/components/expander/ExpanderPanel.js.map +1 -1
  129. package/components/fade/FadeExpander.js +17 -20
  130. package/components/fade/FadeExpander.js.map +1 -1
  131. package/components/filepicker/FilePicker.js.map +1 -1
  132. package/components/loadMore/LoadMoreButton.d.ts +5 -0
  133. package/components/loadMore/LoadMoreButton.js +33 -29
  134. package/components/loadMore/LoadMoreButton.js.map +1 -1
  135. package/components/loadMore/LoadMoreProgress.js +6 -7
  136. package/components/map/components/Map.js +3 -3
  137. package/components/map/components/features/ContextMenu.js +13 -13
  138. package/components/map/components/features/ContextMenu.js.map +1 -1
  139. package/components/map/components/features/basics/InfoBubble.js.map +1 -1
  140. package/components/map/components/features/settings/MapSettingsTile.js.map +1 -1
  141. package/components/map/components/features/settings/builtinSettings/MapTypeSettings.js +6 -6
  142. package/components/map/components/features/settings/builtinSettings/MapTypeSettings.js.map +1 -1
  143. package/components/map/utils/eventHandling.js +18 -18
  144. package/components/map/utils/eventHandling.js.map +1 -1
  145. package/components/map/utils/positions.d.ts +1 -1
  146. package/components/map/utils/positions.js +15 -12
  147. package/components/map/utils/positions.js.map +1 -1
  148. package/components/map/utils/rendering.d.ts +1 -1
  149. package/components/map/utils/rendering.js +5 -5
  150. package/components/menuItems/MenuItems.js +6 -6
  151. package/components/menuItems/MenuItems.js.map +1 -1
  152. package/components/notification/NotificationsContainer.js.map +1 -1
  153. package/components/numberInput/NumberInput.js +57 -56
  154. package/components/numberInput/NumberInput.js.map +1 -1
  155. package/components/popover/Popover.js +3 -3
  156. package/components/popover/Popover.js.map +1 -1
  157. package/components/radiobutton/RadioCardGroup.js +3 -3
  158. package/components/resizer/Resizer.js +6 -3
  159. package/components/resizer/Resizer.js.map +1 -1
  160. package/components/rioglyph/RioglyphIconType.d.ts +1 -1
  161. package/components/selects/BaseSelectDropdown.js +34 -32
  162. package/components/selects/BaseSelectDropdown.js.map +1 -1
  163. package/components/selects/Multiselect.d.ts +6 -0
  164. package/components/selects/Multiselect.js +164 -150
  165. package/components/selects/Multiselect.js.map +1 -1
  166. package/components/selects/MultiselectTogglePlaceholder.js.map +1 -1
  167. package/components/selects/MultiselectToggleSelection.js +11 -11
  168. package/components/selects/MultiselectToggleSelection.js.map +1 -1
  169. package/components/selects/Select.js +39 -37
  170. package/components/selects/Select.js.map +1 -1
  171. package/components/sidebars/Sidebar.js +12 -12
  172. package/components/sidebars/Sidebar.js.map +1 -1
  173. package/components/sidebars/SidebarCloseButton.js +2 -2
  174. package/components/sidebars/SidebarCloseButton.js.map +1 -1
  175. package/components/smoothScrollbars/SmoothScrollbars.d.ts +4 -3
  176. package/components/smoothScrollbars/SmoothScrollbars.js +11 -11
  177. package/components/smoothScrollbars/SmoothScrollbars.js.map +1 -1
  178. package/components/states/CustomState.js.map +1 -1
  179. package/components/svgImage/svgConverter.js.map +1 -1
  180. package/components/table/Table.d.ts +46 -0
  181. package/components/table/Table.js +256 -0
  182. package/components/table/Table.js.map +1 -0
  183. package/components/table/Table.types.d.ts +379 -0
  184. package/components/table/TableBody.d.ts +70 -0
  185. package/components/table/TableBody.js +135 -0
  186. package/components/table/TableBody.js.map +1 -0
  187. package/components/table/TableCardsSorting.js +25 -32
  188. package/components/table/TableCardsSorting.js.map +1 -1
  189. package/components/table/TableColumn.d.ts +55 -0
  190. package/components/table/TableColumn.js +115 -0
  191. package/components/table/TableColumn.js.map +1 -0
  192. package/components/table/TableExpandedContentRow.d.ts +22 -0
  193. package/components/table/TableExpandedContentRow.js +110 -0
  194. package/components/table/TableExpandedContentRow.js.map +1 -0
  195. package/components/table/TableExpandedRow.d.ts +22 -0
  196. package/components/table/TableExpandedRow.js +150 -0
  197. package/components/table/TableExpandedRow.js.map +1 -0
  198. package/components/table/TableExpanderButton.d.ts +25 -0
  199. package/components/table/TableExpanderButton.js +24 -0
  200. package/components/table/TableExpanderButton.js.map +1 -0
  201. package/components/table/TableFooter.d.ts +17 -0
  202. package/components/table/TableFooter.js +52 -0
  203. package/components/table/TableFooter.js.map +1 -0
  204. package/components/table/TableGroupFooterRow.d.ts +18 -0
  205. package/components/table/TableGroupFooterRow.js +30 -0
  206. package/components/table/TableGroupFooterRow.js.map +1 -0
  207. package/components/table/TableGroupRow.d.ts +24 -0
  208. package/components/table/TableGroupRow.js +36 -0
  209. package/components/table/TableGroupRow.js.map +1 -0
  210. package/components/table/TableHeader.d.ts +14 -0
  211. package/components/table/TableHeader.js +107 -0
  212. package/components/table/TableHeader.js.map +1 -0
  213. package/components/table/TableHeaderColumn.d.ts +76 -0
  214. package/components/table/TableHeaderColumn.js +81 -0
  215. package/components/table/TableHeaderColumn.js.map +1 -0
  216. package/components/table/TableHeaderRow.d.ts +9 -0
  217. package/components/table/TableHeaderRow.js +14 -0
  218. package/components/table/TableHeaderRow.js.map +1 -0
  219. package/components/table/TableRow.d.ts +24 -0
  220. package/components/table/TableRow.js +111 -0
  221. package/components/table/TableRow.js.map +1 -0
  222. package/components/table/TableSpacerRow.d.ts +13 -0
  223. package/components/table/TableSpacerRow.js +29 -0
  224. package/components/table/TableSpacerRow.js.map +1 -0
  225. package/components/table/TableToolbar.d.ts +3 -0
  226. package/components/table/TableToolbar.js +49 -4
  227. package/components/table/TableToolbar.js.map +1 -1
  228. package/components/table/TableToolbarColumn.d.ts +31 -0
  229. package/components/table/TableToolbarColumn.js +33 -0
  230. package/components/table/TableToolbarColumn.js.map +1 -0
  231. package/components/table/TableViewToggles.d.ts +21 -3
  232. package/components/table/TableViewToggles.js +59 -87
  233. package/components/table/TableViewToggles.js.map +1 -1
  234. package/components/table/context/TableInteractionContext.d.ts +26 -0
  235. package/components/table/context/TableInteractionContext.js +7 -0
  236. package/components/table/context/TableInteractionContext.js.map +1 -0
  237. package/components/table/context/TableLayoutContext.d.ts +25 -0
  238. package/components/table/context/TableLayoutContext.js +7 -0
  239. package/components/table/context/TableLayoutContext.js.map +1 -0
  240. package/components/table/context/TableRenderConfigContext.d.ts +27 -0
  241. package/components/table/context/TableRenderConfigContext.js +7 -0
  242. package/components/table/context/TableRenderConfigContext.js.map +1 -0
  243. package/components/table/context/TableRenderContext.d.ts +85 -0
  244. package/components/table/context/TableRenderContext.js +7 -0
  245. package/components/table/context/TableRenderContext.js.map +1 -0
  246. package/components/table/context/TableStructureContext.d.ts +31 -0
  247. package/components/table/context/TableStructureContext.js +17 -0
  248. package/components/table/context/TableStructureContext.js.map +1 -0
  249. package/components/table/layout/columnSizing.d.ts +3 -0
  250. package/components/table/layout/columnSizing.js +23 -0
  251. package/components/table/layout/columnSizing.js.map +1 -0
  252. package/components/table/layout/useDraggableColumns.d.ts +14 -0
  253. package/components/table/layout/useDraggableColumns.js +47 -0
  254. package/components/table/layout/useDraggableColumns.js.map +1 -0
  255. package/components/table/layout/useHorizontalSectionSync.d.ts +13 -0
  256. package/components/table/layout/useHorizontalSectionSync.js +43 -0
  257. package/components/table/layout/useHorizontalSectionSync.js.map +1 -0
  258. package/components/table/layout/useMeasuredColumnMaxWidths.d.ts +12 -0
  259. package/components/table/layout/useMeasuredColumnMaxWidths.js +85 -0
  260. package/components/table/layout/useMeasuredColumnMaxWidths.js.map +1 -0
  261. package/components/table/layout/useResizableColumns.d.ts +15 -0
  262. package/components/table/layout/useResizableColumns.js +132 -0
  263. package/components/table/layout/useResizableColumns.js.map +1 -0
  264. package/components/table/layout/useTableBodyScrollBottom.d.ts +12 -0
  265. package/components/table/layout/useTableBodyScrollBottom.js +37 -0
  266. package/components/table/layout/useTableBodyScrollBottom.js.map +1 -0
  267. package/components/table/layout/useTableLayout.d.ts +36 -0
  268. package/components/table/layout/useTableLayout.js +59 -0
  269. package/components/table/layout/useTableLayout.js.map +1 -0
  270. package/components/table/layout/useTableVirtualization.d.ts +22 -0
  271. package/components/table/layout/useTableVirtualization.js +125 -0
  272. package/components/table/layout/useTableVirtualization.js.map +1 -0
  273. package/components/table/model/resolveRowMeta.d.ts +3 -0
  274. package/components/table/model/resolveRowMeta.js +15 -0
  275. package/components/table/model/resolveRowMeta.js.map +1 -0
  276. package/components/table/model/resolveTableClassConfig.d.ts +47 -0
  277. package/components/table/model/resolveTableClassConfig.js +64 -0
  278. package/components/table/model/resolveTableClassConfig.js.map +1 -0
  279. package/components/table/model/tableView.types.d.ts +41 -0
  280. package/components/table/native/TableCol.js.map +1 -0
  281. package/components/table/{TableHead.js → native/TableHead.js} +2 -2
  282. package/components/table/native/TableHead.js.map +1 -0
  283. package/components/table/native/TableSettingsColumnButtons.js +59 -0
  284. package/components/table/native/TableSettingsColumnButtons.js.map +1 -0
  285. package/components/table/{TableSettingsColumnDetails.js → native/TableSettingsColumnDetails.js} +2 -2
  286. package/components/table/native/TableSettingsColumnDetails.js.map +1 -0
  287. package/components/table/{TableSettingsDialog.d.ts → native/TableSettingsDialog.d.ts} +2 -3
  288. package/components/table/native/TableSettingsDialog.js +216 -0
  289. package/components/table/native/TableSettingsDialog.js.map +1 -0
  290. package/components/table/{TableSettingsDialogFooter.js → native/TableSettingsDialogFooter.js} +2 -2
  291. package/components/table/native/TableSettingsDialogFooter.js.map +1 -0
  292. package/components/table/native/TableSettingsListContainer.js.map +1 -0
  293. package/components/table/native/TableSettingsListItem.js +100 -0
  294. package/components/table/native/TableSettingsListItem.js.map +1 -0
  295. package/components/table/render/body/TableBodyContent.d.ts +21 -0
  296. package/components/table/render/body/TableBodyContent.js +52 -0
  297. package/components/table/render/body/TableBodyContent.js.map +1 -0
  298. package/components/table/render/body/TableEmptyRow.d.ts +7 -0
  299. package/components/table/render/body/TableEmptyRow.js +6 -0
  300. package/components/table/render/body/TableEmptyRow.js.map +1 -0
  301. package/components/table/render/footer/TableFooterContent.d.ts +6 -0
  302. package/components/table/render/footer/TableFooterContent.js +6 -0
  303. package/components/table/render/footer/TableFooterContent.js.map +1 -0
  304. package/components/table/render/header/TableBatchDropdown.d.ts +13 -0
  305. package/components/table/render/header/TableBatchDropdown.js +30 -0
  306. package/components/table/render/header/TableBatchDropdown.js.map +1 -0
  307. package/components/table/render/header/TableColumnFilter.d.ts +66 -0
  308. package/components/table/render/header/TableColumnFilter.js +72 -0
  309. package/components/table/render/header/TableColumnFilter.js.map +1 -0
  310. package/components/table/render/header/TableDraggableHeaderCell.d.ts +4 -0
  311. package/components/table/render/header/TableDraggableHeaderCell.js +64 -0
  312. package/components/table/render/header/TableDraggableHeaderCell.js.map +1 -0
  313. package/components/table/render/header/TableHeader.types.d.ts +37 -0
  314. package/components/table/render/header/TableHeaderCellContent.d.ts +4 -0
  315. package/components/table/render/header/TableHeaderCellContent.js +57 -0
  316. package/components/table/render/header/TableHeaderCellContent.js.map +1 -0
  317. package/components/table/render/header/TableHeaderCellResizeHandle.d.ts +4 -0
  318. package/components/table/render/header/TableHeaderCellResizeHandle.js +22 -0
  319. package/components/table/render/header/TableHeaderCellResizeHandle.js.map +1 -0
  320. package/components/table/render/header/TableHeaderDragOverlay.d.ts +14 -0
  321. package/components/table/render/header/TableHeaderDragOverlay.js +35 -0
  322. package/components/table/render/header/TableHeaderDragOverlay.js.map +1 -0
  323. package/components/table/render/header/TableHeaderSelectionCell.d.ts +9 -0
  324. package/components/table/render/header/TableHeaderSelectionCell.js +41 -0
  325. package/components/table/render/header/TableHeaderSelectionCell.js.map +1 -0
  326. package/components/table/render/header/TableStaticHeaderCell.d.ts +4 -0
  327. package/components/table/render/header/TableStaticHeaderCell.js +48 -0
  328. package/components/table/render/header/TableStaticHeaderCell.js.map +1 -0
  329. package/components/table/render/header/resolveAriaSort.d.ts +3 -0
  330. package/components/table/render/header/resolveAriaSort.js +8 -0
  331. package/components/table/render/header/resolveAriaSort.js.map +1 -0
  332. package/components/table/render/header/resolveColumnCollisionDetection.d.ts +2 -0
  333. package/components/table/render/header/resolveColumnCollisionDetection.js +9 -0
  334. package/components/table/render/header/resolveColumnCollisionDetection.js.map +1 -0
  335. package/components/table/render/header/resolveHeaderCellClassName.d.ts +12 -0
  336. package/components/table/render/header/resolveHeaderCellClassName.js +23 -0
  337. package/components/table/render/header/resolveHeaderCellClassName.js.map +1 -0
  338. package/components/table/render/header/resolveHeaderCellStyle.d.ts +830 -0
  339. package/components/table/render/header/resolveHeaderCellStyle.js +9 -0
  340. package/components/table/render/header/resolveHeaderCellStyle.js.map +1 -0
  341. package/components/table/runtime/shouldAnimateBodyRows.d.ts +17 -0
  342. package/components/table/runtime/shouldAnimateBodyRows.js +5 -0
  343. package/components/table/runtime/shouldAnimateBodyRows.js.map +1 -0
  344. package/components/table/runtime/useRenderDraftState.d.ts +14 -0
  345. package/components/table/runtime/useRenderDraftState.js +80 -0
  346. package/components/table/runtime/useRenderDraftState.js.map +1 -0
  347. package/components/table/runtime/useResolvedRenderColumns.d.ts +43 -0
  348. package/components/table/runtime/useResolvedRenderColumns.js +113 -0
  349. package/components/table/runtime/useResolvedRenderColumns.js.map +1 -0
  350. package/components/table/runtime/useResolvedRenderHeader.d.ts +27 -0
  351. package/components/table/runtime/useResolvedRenderHeader.js +67 -0
  352. package/components/table/runtime/useResolvedRenderHeader.js.map +1 -0
  353. package/components/table/selection/useInternalTableSelectionState.d.ts +17 -0
  354. package/components/table/selection/useInternalTableSelectionState.js +28 -0
  355. package/components/table/selection/useInternalTableSelectionState.js.map +1 -0
  356. package/components/table/selection/useTableSelection.d.ts +82 -0
  357. package/components/table/selection/useTableSelection.js +35 -0
  358. package/components/table/selection/useTableSelection.js.map +1 -0
  359. package/components/table/settings/TableColumnsDropdown.d.ts +90 -0
  360. package/components/table/settings/TableColumnsDropdown.js +137 -0
  361. package/components/table/settings/TableColumnsDropdown.js.map +1 -0
  362. package/components/table/settings/TableColumnsDropdownItem.d.ts +8 -0
  363. package/components/table/settings/TableColumnsDropdownItem.js +66 -0
  364. package/components/table/settings/TableColumnsDropdownItem.js.map +1 -0
  365. package/components/table/shared/getAlignClassName.d.ts +3 -0
  366. package/components/table/shared/getAlignClassName.js +6 -0
  367. package/components/table/shared/getAlignClassName.js.map +1 -0
  368. package/components/table/shared/getCellContentOverflowClassName.d.ts +3 -0
  369. package/components/table/shared/getCellContentOverflowClassName.js +18 -0
  370. package/components/table/shared/getCellContentOverflowClassName.js.map +1 -0
  371. package/components/table/shared/getInteractiveRowProps.d.ts +15 -0
  372. package/components/table/shared/getInteractiveRowProps.js +15 -0
  373. package/components/table/shared/getInteractiveRowProps.js.map +1 -0
  374. package/components/table/shared/resolveTableAria.d.ts +2 -0
  375. package/components/table/shared/resolveTableAria.js +6 -0
  376. package/components/table/shared/resolveTableAria.js.map +1 -0
  377. package/components/table/tableSizing.constants.d.ts +4 -0
  378. package/components/table/tableSizing.constants.js +8 -0
  379. package/components/table/tableSizing.constants.js.map +1 -0
  380. package/components/teaser/TeaserContainer.js +3 -3
  381. package/components/teaser/TeaserContainer.js.map +1 -1
  382. package/components/virtualList/VirtualList.js +16 -13
  383. package/components/virtualList/VirtualList.js.map +1 -1
  384. package/googleAnalyticsUtils.d.ts +1 -0
  385. package/googleAnalyticsUtils.js +9 -0
  386. package/googleAnalyticsUtils.js.map +1 -0
  387. package/hooks/useCookies.js +17 -17
  388. package/hooks/useCookies.js.map +1 -1
  389. package/hooks/useDraggableElement.d.ts +35 -0
  390. package/hooks/useDraggableElement.js +49 -0
  391. package/hooks/useDraggableElement.js.map +1 -0
  392. package/hooks/useElapsedTime.js +4 -4
  393. package/hooks/useElapsedTime.js.map +1 -1
  394. package/hooks/useLocationSuggestions.js +13 -10
  395. package/hooks/useLocationSuggestions.js.map +1 -1
  396. package/hooks/useMergeRefs.js +12 -12
  397. package/hooks/useMergeRefs.js.map +1 -1
  398. package/hooks/usePrevious.d.ts +1 -1
  399. package/hooks/usePrevious.js.map +1 -1
  400. package/hooks/useResizeObserver.js +25 -10
  401. package/hooks/useResizeObserver.js.map +1 -1
  402. package/hooks/useRioCookieConsent.js +7 -4
  403. package/hooks/useRioCookieConsent.js.map +1 -1
  404. package/hooks/useSorting.js +10 -10
  405. package/hooks/useSorting.js.map +1 -1
  406. package/hooks/useStorage.js +12 -12
  407. package/hooks/useStorage.js.map +1 -1
  408. package/hooks/useSum.js +10 -7
  409. package/hooks/useSum.js.map +1 -1
  410. package/hooks/useTableSelection.js.map +1 -1
  411. package/hooks/useTimeout.js +6 -3
  412. package/hooks/useTimeout.js.map +1 -1
  413. package/hooks/useUrlState.js +3 -3
  414. package/package.json +17 -18
  415. package/routeUtils.js +12 -10
  416. package/utils/analytics/analyticsAnalysisUtils.d.ts +27 -0
  417. package/utils/analytics/analyticsAnalysisUtils.js +161 -0
  418. package/utils/analytics/analyticsAnalysisUtils.js.map +1 -0
  419. package/utils/analytics/autoTracking.d.ts +14 -0
  420. package/utils/analytics/autoTracking.js +19 -0
  421. package/utils/analytics/autoTracking.js.map +1 -0
  422. package/utils/analytics/createAnalyticsOverlayTooltip.d.ts +36 -0
  423. package/utils/analytics/createAnalyticsOverlayTooltip.js +203 -0
  424. package/utils/analytics/createAnalyticsOverlayTooltip.js.map +1 -0
  425. package/utils/analytics/googleAnalyticsUtils.d.ts +37 -0
  426. package/utils/analytics/googleAnalyticsUtils.js +37 -0
  427. package/utils/analytics/googleAnalyticsUtils.js.map +1 -0
  428. package/utils/analytics/logAnalyticsOverlayUnmatchedEntries.d.ts +8 -0
  429. package/utils/analytics/logAnalyticsOverlayUnmatchedEntries.js +61 -0
  430. package/utils/analytics/logAnalyticsOverlayUnmatchedEntries.js.map +1 -0
  431. package/utils/analytics/useAnalyticsOverlayDom.d.ts +11 -0
  432. package/utils/analytics/useAnalyticsOverlayDom.js +120 -0
  433. package/utils/analytics/useAnalyticsOverlayDom.js.map +1 -0
  434. package/utils/arrayMove.js +11 -0
  435. package/utils/arrayMove.js.map +1 -0
  436. package/utils/cssuseragent.js +2 -2
  437. package/utils/cssuseragent.js.map +1 -1
  438. package/utils/deviceUtils.js.map +1 -1
  439. package/utils/formatUtils.js.map +1 -1
  440. package/utils/hasUtilityClass.js +3 -3
  441. package/utils/hasUtilityClass.js.map +1 -1
  442. package/utils/hidePiiData.js.map +1 -1
  443. package/utils/init/checkForReleaseVersion.js +4 -4
  444. package/utils/init/checkForReleaseVersion.js.map +1 -1
  445. package/utils/init/styledLogs.js.map +1 -1
  446. package/utils/mergeRefs.js +3 -3
  447. package/utils/mergeRefs.js.map +1 -1
  448. package/utils/routeUtils.d.ts +37 -3
  449. package/utils/routeUtils.js +88 -70
  450. package/utils/routeUtils.js.map +1 -1
  451. package/utils/storageUtils.js +9 -9
  452. package/utils/storageUtils.js.map +1 -1
  453. package/version.d.ts +1 -1
  454. package/version.js +2 -2
  455. package/version.js.map +1 -1
  456. package/components/table/TableCol.js.map +0 -1
  457. package/components/table/TableHead.js.map +0 -1
  458. package/components/table/TableSettingsColumnButtons.js +0 -45
  459. package/components/table/TableSettingsColumnButtons.js.map +0 -1
  460. package/components/table/TableSettingsColumnDetails.js.map +0 -1
  461. package/components/table/TableSettingsDialog.js +0 -208
  462. package/components/table/TableSettingsDialog.js.map +0 -1
  463. package/components/table/TableSettingsDialogFooter.js.map +0 -1
  464. package/components/table/TableSettingsListContainer.js.map +0 -1
  465. package/components/table/TableSettingsListItem.js +0 -96
  466. package/components/table/TableSettingsListItem.js.map +0 -1
  467. /package/components/table/{TableCol.d.ts → native/TableCol.d.ts} +0 -0
  468. /package/components/table/{TableCol.js → native/TableCol.js} +0 -0
  469. /package/components/table/{TableHead.d.ts → native/TableHead.d.ts} +0 -0
  470. /package/components/table/{TableSettingsColumnButtons.d.ts → native/TableSettingsColumnButtons.d.ts} +0 -0
  471. /package/components/table/{TableSettingsColumnDetails.d.ts → native/TableSettingsColumnDetails.d.ts} +0 -0
  472. /package/components/table/{TableSettingsDialogFooter.d.ts → native/TableSettingsDialogFooter.d.ts} +0 -0
  473. /package/components/table/{TableSettingsListContainer.d.ts → native/TableSettingsListContainer.d.ts} +0 -0
  474. /package/components/table/{TableSettingsListContainer.js → native/TableSettingsListContainer.js} +0 -0
  475. /package/components/table/{TableSettingsListItem.d.ts → native/TableSettingsListItem.d.ts} +0 -0
@@ -0,0 +1,216 @@
1
+ import { jsxs as j, Fragment as Te, jsx as l } from "react/jsx-runtime";
2
+ import { useState as c, useRef as B, useEffect as z } from "react";
3
+ import { isEqual as H } from "es-toolkit/predicate";
4
+ import { isEmpty as V, mapValues as He } from "es-toolkit/compat";
5
+ import { noop as S } from "es-toolkit/function";
6
+ import { arrayMove as Le } from "@dnd-kit/sortable";
7
+ import Fe from "../../../utils/classNames.js";
8
+ import Ie from "../../dialog/Dialog.js";
9
+ import Ae from "../../clearableInput/ClearableInput.js";
10
+ import { TableSettingsDialogFooter as Me } from "./TableSettingsDialogFooter.js";
11
+ import { TableSettingsListContainer as Ee } from "./TableSettingsListContainer.js";
12
+ import { filterColumns as Je } from "./TableSettingsListItem.js";
13
+ const O = 0, _e = 1e3, $e = (L) => {
14
+ const {
15
+ show: i = !1,
16
+ title: D,
17
+ subtitle: m,
18
+ className: a,
19
+ defaultColumnOrder: h = [],
20
+ defaultHiddenColumns: d = [],
21
+ defaultColumnDetails: F = {},
22
+ columnOrder: x = [],
23
+ hiddenColumns: v = [],
24
+ columnLabels: P = {},
25
+ disabledColumns: G = [],
26
+ columnsDetails: y = {},
27
+ autoLabel: Q = "",
28
+ applyButtonText: Y,
29
+ cancelButtonText: Z,
30
+ closeButtonText: $,
31
+ resetButtonText: ee,
32
+ onColumnChange: b = S,
33
+ onColumnDetailsChange: U = S,
34
+ onDiscard: te = S,
35
+ onApply: ne = S,
36
+ onHide: W,
37
+ columnSearchValue: I = "",
38
+ onSearchChange: w = S,
39
+ searchPlaceholder: se,
40
+ notFoundMessage: oe = "",
41
+ immediateChange: g = !1
42
+ } = L, [A, N] = c(I), [C, R] = c(x), [f, M] = c(v || d), [u, T] = c(y), [k, le] = c({}), [q, re] = c({}), [ie, p] = c(!1), [ae, E] = c(!1), [Ve, J] = c(!1), _ = B(F), K = B(i);
43
+ z(() => {
44
+ (i && !K.current || !i) && N(I), R(x), M(v), T(y);
45
+ const s = x ?? h, n = v ?? d, o = y ?? {}, r = !H(s, h) || !H(n, d) || de(o);
46
+ p(r), K.current = i;
47
+ }, [
48
+ I,
49
+ JSON.stringify(x),
50
+ JSON.stringify(v),
51
+ JSON.stringify(y),
52
+ JSON.stringify(h),
53
+ JSON.stringify(d),
54
+ i
55
+ ]);
56
+ const de = (e) => {
57
+ const t = (n) => {
58
+ if (!n)
59
+ return O;
60
+ const { width: o, defaultWidth: r } = n;
61
+ return Number.isFinite(o) ? o : Number.isFinite(r) ? r : O;
62
+ }, s = (n) => Number.isFinite(n?.defaultWidth) ? n?.defaultWidth : O;
63
+ return V(_.current) ? Object.values(e).some(
64
+ (n) => t(n) !== s(n)
65
+ ) : Object.keys(_.current).some((n) => {
66
+ const o = _.current[n], r = e[n];
67
+ return t(r) !== t(o);
68
+ });
69
+ }, ue = () => {
70
+ J(!1);
71
+ }, ce = (e, t, s) => {
72
+ const n = C.filter((o) => o !== e);
73
+ n.splice(t, 0, e), R(n), J(s ? !!e : !1), p(!0), g && b(n, f), setTimeout(ue, 500);
74
+ }, me = () => E(!0), he = () => E(!1), Ce = (e) => V(F) ? He(e, (t) => {
75
+ if (Number.isFinite(t.defaultWidth)) {
76
+ const r = t.defaultWidth;
77
+ return { ...t, width: r };
78
+ }
79
+ const { width: s, defaultWidth: n, ...o } = t;
80
+ return o;
81
+ }) : F, fe = () => {
82
+ const e = Ce(u);
83
+ R(h), M(d), N(""), p(!1), E(!1), V(u) || T(e), g && (w(""), b(h, d, e));
84
+ }, ge = () => {
85
+ w(""), te(), W();
86
+ }, pe = () => {
87
+ N(""), w(""), b(C, f, u), ne(C, f, u), W();
88
+ }, De = (e) => {
89
+ const s = f.includes(e) ? f.filter((n) => n !== e) : [...f, e];
90
+ M(s), p(!0), g && b(C, s);
91
+ }, be = (e) => {
92
+ const t = e.toLowerCase();
93
+ N(() => (w(t), t));
94
+ }, Se = (e, t) => {
95
+ const s = u[e], n = s ? { ...s, width: t } : {
96
+ width: t,
97
+ defaultWidth: O,
98
+ maxWidth: _e
99
+ }, o = { ...u, [e]: n };
100
+ T(o), p(!0), g && U(e, n);
101
+ }, Oe = (e) => {
102
+ const t = u[e];
103
+ if (!t)
104
+ return;
105
+ const s = {
106
+ ...t,
107
+ width: t.defaultWidth ?? O
108
+ }, n = { ...u, [e]: s };
109
+ T(n), g && U(e, s);
110
+ }, xe = (e) => {
111
+ const t = { ...k };
112
+ t[e] ? delete t[e] : t[e] = e, le(t);
113
+ }, ve = (e, t) => {
114
+ const { active: s, over: n } = e, o = s.id, r = n?.id;
115
+ if (o === r)
116
+ return;
117
+ const Ne = t.indexOf(String(o)), Re = t.indexOf(String(r)), X = Le(t, Ne, Re);
118
+ R(X), J(!0), p(!0), g && b(X, f);
119
+ }, ye = () => {
120
+ const e = {
121
+ columnLabels: P,
122
+ autoLabel: Q,
123
+ disabledColumns: G,
124
+ columnOrder: C,
125
+ hiddenColumns: f,
126
+ columnSearchValue: A,
127
+ columnsDetails: u,
128
+ columnLabelStrings: q,
129
+ openColumnsDetails: k,
130
+ onMoveColumn: ce,
131
+ onOpenDetails: xe,
132
+ onColumnWidthChange: Se,
133
+ onResetColumnWidth: Oe,
134
+ onToggleHideColumn: De
135
+ }, t = C.filter(
136
+ (n) => Je(A, n, q)
137
+ ), s = !H(t, C);
138
+ return /* @__PURE__ */ j("div", { children: [
139
+ /* @__PURE__ */ l("div", { className: "table-settings-search", children: /* @__PURE__ */ j("div", { className: "input-group width-100pct", children: [
140
+ /* @__PURE__ */ l("span", { className: "input-group-addon", children: /* @__PURE__ */ l("span", { className: "rioglyph rioglyph-search" }) }),
141
+ /* @__PURE__ */ l(
142
+ Ae,
143
+ {
144
+ value: A,
145
+ onChange: be,
146
+ placeholder: se
147
+ }
148
+ )
149
+ ] }) }),
150
+ /* @__PURE__ */ l("div", { className: "table-settings-body", children: s ? /* @__PURE__ */ l(
151
+ Ee,
152
+ {
153
+ items: C,
154
+ onSortEnd: ve,
155
+ itemProps: { ...e }
156
+ }
157
+ ) : /* @__PURE__ */ l("div", { className: "text-center text-color-gray", children: oe }) })
158
+ ] });
159
+ }, We = () => /* @__PURE__ */ l(
160
+ Me,
161
+ {
162
+ hasChanged: ie,
163
+ isResetAll: ae,
164
+ immediateChange: g,
165
+ resetButtonText: ee,
166
+ closeButtonText: $,
167
+ cancelButtonText: Z,
168
+ applyButtonText: Y,
169
+ onHide: W,
170
+ onResetColumnChanges: me,
171
+ onDiscardChanges: ge,
172
+ onApplyChanges: pe,
173
+ onConfirmResetColumnChanges: fe,
174
+ onCancelResetColumnChanges: he
175
+ }
176
+ );
177
+ if (!i)
178
+ return null;
179
+ const we = Fe("TableSettingsDialog", a);
180
+ return /* @__PURE__ */ j(Te, { children: [
181
+ i && /* @__PURE__ */ l(je, { columnLabels: P, setRenderedLabels: re }),
182
+ /* @__PURE__ */ l(
183
+ Ie,
184
+ {
185
+ show: i,
186
+ title: D,
187
+ subtitle: m,
188
+ onClose: W,
189
+ body: ye(),
190
+ footer: We(),
191
+ className: we
192
+ }
193
+ )
194
+ ] });
195
+ }, je = ({
196
+ columnLabels: L,
197
+ setRenderedLabels: i
198
+ }) => {
199
+ const D = B(null);
200
+ return z(() => {
201
+ if (!D.current)
202
+ return;
203
+ const m = {};
204
+ [...D.current.children].forEach((a) => {
205
+ const h = a.getAttribute("data-key");
206
+ if (h) {
207
+ const d = a.textContent?.replace(/\r?\n|\r/g, "").toLowerCase();
208
+ d && (m[h] = d);
209
+ }
210
+ }), i((a) => H(a, m) ? a : m);
211
+ }), /* @__PURE__ */ l("div", { hidden: !0, ref: D, children: Object.entries(L).map(([m, a]) => /* @__PURE__ */ l("div", { "data-key": m, children: a }, m)) });
212
+ };
213
+ export {
214
+ $e as default
215
+ };
216
+ //# sourceMappingURL=TableSettingsDialog.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableSettingsDialog.js","sources":["../../../../src/components/table/native/TableSettingsDialog.tsx"],"sourcesContent":["import type React from 'react';\nimport { useState, useEffect, useRef } from 'react';\nimport { isEqual } from 'es-toolkit/predicate';\nimport { isEmpty, mapValues } from 'es-toolkit/compat';\nimport { noop } from 'es-toolkit/function';\nimport { arrayMove } from '@dnd-kit/sortable';\nimport type { DragEndEvent } from '@dnd-kit/core';\n\nimport classNames from '../../../utils/classNames';\nimport Dialog from '../../dialog/Dialog';\nimport ClearableInput from '../../clearableInput/ClearableInput';\nimport { TableSettingsDialogFooter } from './TableSettingsDialogFooter';\nimport { TableSettingsListContainer } from './TableSettingsListContainer';\nimport { filterColumns } from './TableSettingsListItem';\n\nconst DEFAULT_COLUMN_WIDTH = 0;\nconst MAX_COLUMN_WIDTH = 1000;\n\nexport type TableColumnDetails = {\n /**\n * Defined the current width of a column.\n *\n * @default 0\n */\n width?: number;\n\n /**\n * Defined the default width of a column which will be used when resetting to default.\n *\n * @default 0\n */\n defaultWidth?: number;\n\n /**\n * Defined the maximum width of a column.\n *\n * @default 1000\n */\n maxWidth?: number;\n};\n\nexport type TableColumnsSettings = {\n columnOrder: string[];\n hiddenColumns: string[];\n columnsDetails: TableColumnDetailsMap;\n};\n\nexport type TableColumnDetailsMap = Record<string, TableColumnDetails>;\nexport type ColumnLabelStrings = Record<string, string>;\n\nexport type TableSettingsItemProps = {\n columnLabels?: Record<string, React.ReactNode>;\n autoLabel?: string | React.ReactNode;\n disabledColumns?: string[];\n columnOrder: string[];\n hiddenColumns?: string[];\n columnSearchValue: string;\n columnsDetails: TableColumnDetailsMap;\n columnLabelStrings?: ColumnLabelStrings;\n openColumnsDetails?: Record<string, string>;\n onColumnWidthChange?: (column: keyof TableColumnDetailsMap, value: number) => void;\n onResetColumnWidth?: (column: keyof TableColumnDetailsMap) => void;\n onMoveColumn?: (columnName: string, newIndex: number, changeMovedColumn: boolean) => void;\n onOpenDetails?: (columnName: keyof TableColumnDetailsMap) => void;\n onToggleHideColumn?: (column: string) => void;\n};\n\nexport type TableSettingsDialogProps = {\n /**\n * Defined whether to show the dialog or not.\n *\n * @default false\n */\n show: boolean;\n\n /**\n * The title for the dialog header.\n */\n title: React.ReactNode;\n\n /**\n * The subtitle for the dialog header.\n */\n subtitle?: React.ReactNode;\n\n /**\n * List of column names in default order. This will be used for resetting changes.\n *\n * @default []\n */\n defaultColumnOrder: string[];\n\n /**\n * List of hidden columns that are hidden by default. This will be used for resetting changes.\n *\n * @default []\n */\n defaultHiddenColumns?: string[];\n\n /**\n * Initial default configuration for the each columns with regards to column width.\n * Used to reset to this state when the configuration differs.\n *\n * @default {}\n */\n defaultColumnDetails?: TableColumnDetailsMap;\n\n /**\n * List of column names in current order. The \"columnOrder\" will be returned when the order changes.\n *\n * @default []\n */\n columnOrder: string[];\n\n /**\n * List of column names which are currently hidden. The \"hiddenColumns\n * will be returned when the order changes.\n *\n * @default []\n */\n hiddenColumns?: string[];\n\n /**\n * List of column labels which will be shown in the table header. These labels are usually\n * translated labels that can be set as FormattedMessage components for instance.\n *\n * The object key is the column name and the object value is the translated message.\n *\n * @default {}\n * @example\n * { name: <FormattedMessage id='name' /> }\n */\n columnLabels: { [name: string]: React.ReactNode };\n\n /**\n * Hide a sorted column will result in an error, so disable at least one important fallback column\n * or the sorted column (fallback column recommended)\n */\n disabledColumns: string[];\n\n /**\n * Optional object of detail properties to be shown in the details section of the respective\n * column item. If the prop is not given, the width sections won't be rendered.\n * The keys of this object are the column names / keys you use to identify a column.\n */\n columnsDetails?: TableColumnDetailsMap;\n\n /**\n * The label shown when the column width is unset, which means \"auto\".\n *\n * @default ''\n */\n autoLabel?: string | React.ReactNode;\n\n /**\n * Text for the \"apply\" button. This button will not be shown when\n * `immediateChange` is enabled.\n */\n applyButtonText?: string | React.ReactNode;\n\n /**\n * Text for the \"cancel\" button. This button will not be shown when\n * `immediateChange` is enabled.\n */\n cancelButtonText?: string | React.ReactNode;\n\n /**\n * Text for the \"close\" button. This button will only be shown when\n * `immediateChange` is enabled.\n */\n closeButtonText?: string | React.ReactNode;\n\n /**\n * Text for the \"reset to default\" button.\n */\n resetButtonText: string | React.ReactNode;\n\n /**\n * Callback function for when the column order or visibility changes.\n *\n * @param columnOrder\n * @param hiddenColumns\n * @param columnsDetails\n * @returns\n */\n onColumnChange?: (columnOrder: string[], hiddenColumns: string[], columnsDetails?: TableColumnDetailsMap) => void;\n\n /**\n * Callback function for when a single column details like width changes.\n *\n * @param column\n * @param columnsDetails\n * @returns\n */\n onColumnDetailsChange?: (column: string, columnsDetails: TableColumnDetails) => void;\n\n /**\n * Callback function for when the changes are discarded and the dialog should close.\n * Will not be triggered when `immediateChange` is enabled.\n *\n * @returns\n */\n onDiscard?: () => void;\n\n /**\n * Callback function for when the final changes should be applied and the dialog should close.\n * Will not be triggered when `immediateChange `is enabled.\n *\n * @param columnOrder\n * @param hiddenColumns\n * @param columnsDetails\n * @returns\n */\n onApply?: (columnOrder: string[], hiddenColumns: string[], columnsDetails: TableColumnDetailsMap) => void;\n\n /**\n * Callback function for when dialog should close.\n *\n * @returns\n */\n onHide: () => void;\n\n /**\n * Search value which should be set for the search field when the dialog opens.\n */\n columnSearchValue?: string;\n\n /**\n * Callback function for when the search value changes.\n *\n * @param value\n * @returns\n */\n onSearchChange?: (value: string) => void;\n\n /**\n * Placeholder text for the search input.\n */\n searchPlaceholder: React.ReactNode;\n\n /**\n * Message that should be shown when column search result is empty.\n */\n notFoundMessage?: string;\n\n /**\n * Defines whether or not all changes apply immediately. If so, no cancel and apply buttons are shown.\n * Enable this if you want to update the table after each change. Be aware of having side effects when\n * toggling columns where data need to be fetched from the backend.\n *\n * @default false\n */\n immediateChange?: boolean;\n\n /**\n * Optional class names for the wrapper element.\n */\n className?: string;\n};\n\nconst TableSettingsDialog = (props: TableSettingsDialogProps) => {\n const {\n show = false,\n title,\n subtitle,\n className,\n defaultColumnOrder = [],\n defaultHiddenColumns = [],\n defaultColumnDetails = {},\n columnOrder: extColumnOrder = [],\n hiddenColumns: extHiddenColumns = [],\n columnLabels = {},\n disabledColumns = [],\n columnsDetails: extColumnsDetails = {},\n autoLabel = '',\n applyButtonText,\n cancelButtonText,\n closeButtonText,\n resetButtonText,\n onColumnChange = noop,\n onColumnDetailsChange = noop,\n onDiscard = noop,\n onApply = noop,\n onHide,\n columnSearchValue: extColumnSearchValue = '',\n onSearchChange = noop,\n searchPlaceholder,\n notFoundMessage = '',\n immediateChange = false,\n } = props;\n\n const [columnSearchValue, setColumnSearchValue] = useState(extColumnSearchValue);\n const [columnOrder, setColumnOrder] = useState(extColumnOrder);\n const [hiddenColumns, setHiddenColumns] = useState(extHiddenColumns || defaultHiddenColumns);\n\n const [columnsDetails, setColumnsDetails] = useState(extColumnsDetails);\n const [openColumnsDetails, setOpenColumnsDetails] = useState<Record<string, string>>({});\n\n const [columnLabelStrings, setColumnLabelStrings] = useState<ColumnLabelStrings>({});\n\n // Dirty flag for offering to reset changes or to discard them\n const [hasChanged, setHasChanged] = useState(false);\n const [isResetAll, setIsResetAll] = useState(false);\n\n const [movedColumn, setMovedColumn] = useState(false);\n\n const defaultColumnDetailsRef = useRef(defaultColumnDetails);\n const previousShowRef = useRef(show);\n\n // Update items from outside\n useEffect(() => {\n const hasJustOpened = show && !previousShowRef.current;\n const isClosed = !show;\n\n if (hasJustOpened || isClosed) {\n setColumnSearchValue(extColumnSearchValue);\n }\n\n setColumnOrder(extColumnOrder);\n setHiddenColumns(extHiddenColumns);\n setColumnsDetails(extColumnsDetails);\n\n const externalColumnOrder = extColumnOrder ?? defaultColumnOrder;\n const externalHiddenColumns = extHiddenColumns ?? defaultHiddenColumns;\n const externalColumnsDetails = extColumnsDetails ?? {};\n\n const hasChangesFromDefaults =\n !isEqual(externalColumnOrder, defaultColumnOrder) ||\n !isEqual(externalHiddenColumns, defaultHiddenColumns) ||\n hasColumnsDetailsChanged(externalColumnsDetails);\n setHasChanged(hasChangesFromDefaults);\n\n previousShowRef.current = show;\n }, [\n extColumnSearchValue,\n JSON.stringify(extColumnOrder),\n JSON.stringify(extHiddenColumns),\n JSON.stringify(extColumnsDetails),\n JSON.stringify(defaultColumnOrder),\n JSON.stringify(defaultHiddenColumns),\n show,\n ]);\n\n const hasColumnsDetailsChanged = (columnsDetailsToCheck: TableColumnDetailsMap) => {\n const getEffectiveWidth = (details: TableColumnDetails | undefined) => {\n if (!details) {\n return DEFAULT_COLUMN_WIDTH;\n }\n const { width, defaultWidth } = details;\n if (Number.isFinite(width)) {\n return width as number;\n }\n if (Number.isFinite(defaultWidth)) {\n return defaultWidth as number;\n }\n return DEFAULT_COLUMN_WIDTH;\n };\n\n const getFallbackDefaultWidth = (details: TableColumnDetails | undefined) => {\n if (Number.isFinite(details?.defaultWidth)) {\n return details?.defaultWidth as number;\n }\n\n return DEFAULT_COLUMN_WIDTH;\n };\n\n if (isEmpty(defaultColumnDetailsRef.current)) {\n return Object.values(columnsDetailsToCheck).some(\n details => getEffectiveWidth(details) !== getFallbackDefaultWidth(details)\n );\n }\n\n return Object.keys(defaultColumnDetailsRef.current).some(key => {\n const baseline = defaultColumnDetailsRef.current[key];\n const current = columnsDetailsToCheck[key];\n return getEffectiveWidth(current) !== getEffectiveWidth(baseline);\n });\n };\n\n const deleteMovedColumn = () => {\n setMovedColumn(false);\n };\n\n const moveColumnToIndex = (columnName: string, newIndex: number, changeMovedColumn: boolean) => {\n const newColumnOrder = columnOrder.filter(name => name !== columnName);\n newColumnOrder.splice(newIndex, 0, columnName);\n\n setColumnOrder(newColumnOrder);\n setMovedColumn(changeMovedColumn ? !!columnName : false);\n setHasChanged(true);\n\n if (immediateChange) {\n onColumnChange(newColumnOrder, hiddenColumns);\n }\n\n setTimeout(deleteMovedColumn, 500);\n };\n\n const handleResetColumnChanges = () => setIsResetAll(true);\n const handleCancelResetColumnChanges = () => setIsResetAll(false);\n\n const resetColumnsDetails = (details: TableColumnDetailsMap) => {\n // If explicit defaults were provided, return them to keep shape identical to the baseline.\n if (!isEmpty(defaultColumnDetails)) {\n return defaultColumnDetails;\n }\n\n // Fallback: derive sparse defaults like before\n return mapValues(details, (singleColumnDetails: TableColumnDetails) => {\n if (Number.isFinite(singleColumnDetails.defaultWidth)) {\n const defaultWidth = singleColumnDetails.defaultWidth as number;\n return { ...singleColumnDetails, width: defaultWidth };\n }\n\n const { width: _ignoredWidth, defaultWidth: _ignoredDefaultWidth, ...rest } = singleColumnDetails;\n return rest;\n });\n };\n\n const resetAllColumnChanges = () => {\n const defaultColumnsDetails = resetColumnsDetails(columnsDetails);\n\n setColumnOrder(defaultColumnOrder);\n setHiddenColumns(defaultHiddenColumns);\n setColumnSearchValue('');\n setHasChanged(false);\n setIsResetAll(false);\n\n if (!isEmpty(columnsDetails)) {\n setColumnsDetails(defaultColumnsDetails);\n }\n\n if (immediateChange) {\n onSearchChange('');\n onColumnChange(defaultColumnOrder, defaultHiddenColumns, defaultColumnsDetails);\n }\n };\n\n const discardColumnChanges = () => {\n onSearchChange('');\n // onCancel();\n onDiscard();\n onHide();\n };\n\n const handleManuallyApplyChanges = () => {\n setColumnSearchValue('');\n\n onSearchChange('');\n onColumnChange(columnOrder, hiddenColumns, columnsDetails);\n onApply(columnOrder, hiddenColumns, columnsDetails);\n onHide();\n };\n\n const toggleHideColumn = (column: string) => {\n const isHidden = hiddenColumns.includes(column);\n const newHiddenColumns = isHidden ? hiddenColumns.filter(name => name !== column) : [...hiddenColumns, column];\n\n setHiddenColumns(newHiddenColumns);\n setHasChanged(true);\n\n if (immediateChange) {\n onColumnChange(columnOrder, newHiddenColumns);\n }\n };\n\n const handleSearchChange = (searchValue: string) => {\n const newSearch = searchValue.toLowerCase();\n\n setColumnSearchValue(() => {\n onSearchChange(newSearch);\n return newSearch;\n });\n };\n\n const handleColumnWidthChange = (column: keyof TableColumnDetailsMap, value: number) => {\n const previousColumnDetails = columnsDetails[column];\n const updatedColumnDetails = previousColumnDetails\n ? { ...previousColumnDetails, width: value }\n : {\n width: value,\n defaultWidth: DEFAULT_COLUMN_WIDTH,\n maxWidth: MAX_COLUMN_WIDTH,\n };\n const updatedColumnsDetails = { ...columnsDetails, [column]: updatedColumnDetails };\n\n setColumnsDetails(updatedColumnsDetails);\n setHasChanged(true);\n\n if (immediateChange) {\n onColumnDetailsChange(column, updatedColumnDetails);\n }\n };\n\n const handleResetColumnWidth = (column: keyof TableColumnDetailsMap) => {\n const previousColumnDetails = columnsDetails[column];\n if (!previousColumnDetails) {\n return;\n }\n\n const updatedColumnDetails = {\n ...previousColumnDetails,\n width: previousColumnDetails.defaultWidth ?? DEFAULT_COLUMN_WIDTH,\n };\n const updatedColumnsDetails = { ...columnsDetails, [column]: updatedColumnDetails };\n\n setColumnsDetails(updatedColumnsDetails);\n\n if (immediateChange) {\n onColumnDetailsChange(column, updatedColumnDetails);\n }\n };\n\n const handleOpenColumnsDetails = (columnName: keyof TableColumnDetailsMap) => {\n const updatedOpenColumnDetails = { ...openColumnsDetails };\n\n if (updatedOpenColumnDetails[columnName]) {\n delete updatedOpenColumnDetails[columnName];\n } else {\n updatedOpenColumnDetails[columnName] = columnName;\n }\n\n setOpenColumnsDetails(updatedOpenColumnDetails);\n };\n\n const handleSortEnd = (event: DragEndEvent, previousOrder: string[]) => {\n const { active, over } = event;\n\n const activeId = active.id;\n const overId = over?.id;\n\n if (activeId === overId) {\n return;\n }\n\n const oldIndex = previousOrder.indexOf(String(activeId));\n const newIndex = previousOrder.indexOf(String(overId));\n\n const newColumnOrder = arrayMove(previousOrder, oldIndex, newIndex);\n\n setColumnOrder(newColumnOrder);\n setMovedColumn(true);\n setHasChanged(true);\n\n if (immediateChange) {\n onColumnChange(newColumnOrder, hiddenColumns);\n }\n };\n\n const renderTableSettingsDialogContent = () => {\n const itemProps = {\n columnLabels,\n autoLabel,\n disabledColumns,\n columnOrder,\n hiddenColumns,\n columnSearchValue,\n columnsDetails,\n columnLabelStrings,\n openColumnsDetails,\n onMoveColumn: moveColumnToIndex,\n onOpenDetails: handleOpenColumnsDetails,\n onColumnWidthChange: handleColumnWidthChange,\n onResetColumnWidth: handleResetColumnWidth,\n onToggleHideColumn: toggleHideColumn,\n };\n\n const filteredColumns = columnOrder.filter(column =>\n filterColumns(columnSearchValue, column, columnLabelStrings)\n );\n\n const hasItems = !isEqual(filteredColumns, columnOrder);\n\n return (\n <div>\n <div className='table-settings-search'>\n <div className='input-group width-100pct'>\n <span className='input-group-addon'>\n <span className='rioglyph rioglyph-search' />\n </span>\n <ClearableInput\n value={columnSearchValue}\n onChange={handleSearchChange}\n placeholder={searchPlaceholder}\n />\n </div>\n </div>\n <div className='table-settings-body'>\n {hasItems ? (\n <TableSettingsListContainer\n items={columnOrder}\n onSortEnd={handleSortEnd}\n itemProps={{ ...itemProps }}\n />\n ) : (\n <div className='text-center text-color-gray'>{notFoundMessage}</div>\n )}\n </div>\n </div>\n );\n };\n\n const renderTableSettingsDialogFooter = () => (\n <TableSettingsDialogFooter\n hasChanged={hasChanged}\n isResetAll={isResetAll}\n immediateChange={immediateChange}\n resetButtonText={resetButtonText}\n closeButtonText={closeButtonText}\n cancelButtonText={cancelButtonText}\n applyButtonText={applyButtonText}\n onHide={onHide}\n onResetColumnChanges={handleResetColumnChanges}\n onDiscardChanges={discardColumnChanges}\n onApplyChanges={handleManuallyApplyChanges}\n onConfirmResetColumnChanges={resetAllColumnChanges}\n onCancelResetColumnChanges={handleCancelResetColumnChanges}\n />\n );\n\n if (!show) {\n return null;\n }\n\n const dialogClassNames = classNames('TableSettingsDialog', className);\n\n return (\n <>\n {show && (\n <RenderedLabelStringsProvider columnLabels={columnLabels} setRenderedLabels={setColumnLabelStrings} />\n )}\n <Dialog\n show={show}\n title={title}\n subtitle={subtitle}\n onClose={onHide}\n body={renderTableSettingsDialogContent()}\n footer={renderTableSettingsDialogFooter()}\n className={dialogClassNames}\n />\n </>\n );\n};\n\n// For searching by name we need to get the label from the DOM as it may contain a\n// FormattedMessage. We need to unconditionally render all label elements to get their\n// text content from the DOM. Otherwise, the search won't work for an external provided\n// search term.\nconst RenderedLabelStringsProvider = ({\n columnLabels,\n setRenderedLabels,\n}: {\n columnLabels: Record<string, React.ReactNode>;\n setRenderedLabels: (getNewValue: (previous: Record<string, string>) => Record<string, string>) => void;\n}) => {\n const contentRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n if (!contentRef.current) {\n return;\n }\n\n const columnStrings: { [key: string]: string } = {};\n [...contentRef.current.children].forEach(label => {\n const dataKey = label.getAttribute('data-key');\n if (dataKey) {\n const updatedLabel = label.textContent?.replace(/\\r?\\n|\\r/g, '').toLowerCase();\n if (updatedLabel) {\n columnStrings[dataKey] = updatedLabel;\n }\n }\n });\n\n // We can not rely on the dependency array of the useEffect hook, because the inputs are ReactNode\n // instances which are objects without a stable reference. To avoid too many re-renders due to irrelevant\n // changes, the code below performs a deep equality check and keeps a stable object reference if there is\n // no difference in the output.\n setRenderedLabels(previous => (isEqual(previous, columnStrings) ? previous : columnStrings));\n });\n\n return (\n <div hidden ref={contentRef}>\n {Object.entries(columnLabels).map(([column, node]) => (\n <div key={column} data-key={column}>\n {node}\n </div>\n ))}\n </div>\n );\n};\n\nexport default TableSettingsDialog;\n"],"names":["DEFAULT_COLUMN_WIDTH","MAX_COLUMN_WIDTH","TableSettingsDialog","props","show","title","subtitle","className","defaultColumnOrder","defaultHiddenColumns","defaultColumnDetails","extColumnOrder","extHiddenColumns","columnLabels","disabledColumns","extColumnsDetails","autoLabel","applyButtonText","cancelButtonText","closeButtonText","resetButtonText","onColumnChange","noop","onColumnDetailsChange","onDiscard","onApply","onHide","extColumnSearchValue","onSearchChange","searchPlaceholder","notFoundMessage","immediateChange","columnSearchValue","setColumnSearchValue","useState","columnOrder","setColumnOrder","hiddenColumns","setHiddenColumns","columnsDetails","setColumnsDetails","openColumnsDetails","setOpenColumnsDetails","columnLabelStrings","setColumnLabelStrings","hasChanged","setHasChanged","isResetAll","setIsResetAll","movedColumn","setMovedColumn","defaultColumnDetailsRef","useRef","previousShowRef","useEffect","externalColumnOrder","externalHiddenColumns","externalColumnsDetails","hasChangesFromDefaults","isEqual","hasColumnsDetailsChanged","columnsDetailsToCheck","getEffectiveWidth","details","width","defaultWidth","getFallbackDefaultWidth","isEmpty","key","baseline","current","deleteMovedColumn","moveColumnToIndex","columnName","newIndex","changeMovedColumn","newColumnOrder","name","handleResetColumnChanges","handleCancelResetColumnChanges","resetColumnsDetails","mapValues","singleColumnDetails","_ignoredWidth","_ignoredDefaultWidth","rest","resetAllColumnChanges","defaultColumnsDetails","discardColumnChanges","handleManuallyApplyChanges","toggleHideColumn","column","newHiddenColumns","handleSearchChange","searchValue","newSearch","handleColumnWidthChange","value","previousColumnDetails","updatedColumnDetails","updatedColumnsDetails","handleResetColumnWidth","handleOpenColumnsDetails","updatedOpenColumnDetails","handleSortEnd","event","previousOrder","active","over","activeId","overId","oldIndex","arrayMove","renderTableSettingsDialogContent","itemProps","filteredColumns","filterColumns","hasItems","jsx","jsxs","ClearableInput","TableSettingsListContainer","renderTableSettingsDialogFooter","TableSettingsDialogFooter","dialogClassNames","classNames","Fragment","RenderedLabelStringsProvider","Dialog","setRenderedLabels","contentRef","columnStrings","label","dataKey","updatedLabel","previous","node"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { jsxs as t, jsx as n } from "react/jsx-runtime";
2
- import y from "../../utils/classNames.js";
3
- import e from "../button/Button.js";
2
+ import y from "../../../utils/classNames.js";
3
+ import e from "../../button/Button.js";
4
4
  const R = (l) => {
5
5
  const {
6
6
  hasChanged: i,
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableSettingsDialogFooter.js","sources":["../../../../src/components/table/native/TableSettingsDialogFooter.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\n\nimport classNames from '../../../utils/classNames';\nimport Button from '../../../Button';\n\nexport type TableSettingsDialogFooterProps = {\n hasChanged: boolean;\n isResetAll: boolean;\n immediateChange: boolean;\n resetButtonText: string | ReactNode;\n closeButtonText: string | ReactNode;\n cancelButtonText: string | ReactNode;\n applyButtonText: string | ReactNode;\n onHide: () => void;\n onResetColumnChanges: () => void;\n onDiscardChanges: () => void;\n onApplyChanges: () => void;\n onConfirmResetColumnChanges: () => void;\n onCancelResetColumnChanges: () => void;\n};\n\nexport const TableSettingsDialogFooter = (props: TableSettingsDialogFooterProps) => {\n const {\n hasChanged,\n isResetAll,\n immediateChange,\n resetButtonText,\n closeButtonText,\n cancelButtonText,\n applyButtonText,\n onHide,\n onResetColumnChanges,\n onDiscardChanges,\n onApplyChanges,\n onConfirmResetColumnChanges,\n onCancelResetColumnChanges,\n } = props;\n\n const restButtonClassNames = classNames('btn', 'btn-default btn-link', !hasChanged && 'disabled');\n\n return (\n <div className='display-flex justify-content-between'>\n <div>\n {!isResetAll && (\n <div className={restButtonClassNames} onClick={onResetColumnChanges}>\n <span className='rioglyph rioglyph-revert text-size-xs margin-right-10' />\n {resetButtonText}\n </div>\n )}\n {isResetAll && (\n <div className='btn-group'>\n <Button\n iconOnly\n iconName='rioglyph-remove'\n className='margin-right-5 btn-outline'\n onClick={onCancelResetColumnChanges}\n />\n <Button\n iconOnly\n bsStyle={Button.PRIMARY}\n iconName='rioglyph-ok'\n onClick={onConfirmResetColumnChanges}\n />\n </div>\n )}\n </div>\n {immediateChange ? (\n <Button onClick={onHide}>{closeButtonText}</Button>\n ) : (\n <div className='btn-toolbar'>\n <Button onClick={onDiscardChanges}>{cancelButtonText}</Button>\n <Button bsStyle={Button.PRIMARY} onClick={onApplyChanges}>\n {applyButtonText}\n </Button>\n </div>\n )}\n </div>\n );\n};\n"],"names":["TableSettingsDialogFooter","props","hasChanged","isResetAll","immediateChange","resetButtonText","closeButtonText","cancelButtonText","applyButtonText","onHide","onResetColumnChanges","onDiscardChanges","onApplyChanges","onConfirmResetColumnChanges","onCancelResetColumnChanges","restButtonClassNames","classNames","jsxs","jsx","Button"],"mappings":";;;AAqBO,MAAMA,IAA4B,CAACC,MAA0C;AAChF,QAAM;AAAA,IACF,YAAAC;AAAA,IACA,YAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,QAAAC;AAAA,IACA,sBAAAC;AAAA,IACA,kBAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,6BAAAC;AAAA,IACA,4BAAAC;AAAA,EAAA,IACAb,GAEEc,IAAuBC,EAAW,OAAO,wBAAwB,CAACd,KAAc,UAAU;AAEhG,SACI,gBAAAe,EAAC,OAAA,EAAI,WAAU,wCACX,UAAA;AAAA,IAAA,gBAAAA,EAAC,OAAA,EACI,UAAA;AAAA,MAAA,CAACd,KACE,gBAAAc,EAAC,OAAA,EAAI,WAAWF,GAAsB,SAASL,GAC3C,UAAA;AAAA,QAAA,gBAAAQ,EAAC,QAAA,EAAK,WAAU,wDAAA,CAAwD;AAAA,QACvEb;AAAA,MAAA,GACL;AAAA,MAEHF,KACG,gBAAAc,EAAC,OAAA,EAAI,WAAU,aACX,UAAA;AAAA,QAAA,gBAAAC;AAAA,UAACC;AAAA,UAAA;AAAA,YACG,UAAQ;AAAA,YACR,UAAS;AAAA,YACT,WAAU;AAAA,YACV,SAASL;AAAA,UAAA;AAAA,QAAA;AAAA,QAEb,gBAAAI;AAAA,UAACC;AAAA,UAAA;AAAA,YACG,UAAQ;AAAA,YACR,SAASA,EAAO;AAAA,YAChB,UAAS;AAAA,YACT,SAASN;AAAA,UAAA;AAAA,QAAA;AAAA,MACb,EAAA,CACJ;AAAA,IAAA,GAER;AAAA,IACCT,IACG,gBAAAc,EAACC,GAAA,EAAO,SAASV,GAAS,aAAgB,IAE1C,gBAAAQ,EAAC,OAAA,EAAI,WAAU,eACX,UAAA;AAAA,MAAA,gBAAAC,EAACC,GAAA,EAAO,SAASR,GAAmB,UAAAJ,GAAiB;AAAA,wBACpDY,GAAA,EAAO,SAASA,EAAO,SAAS,SAASP,GACrC,UAAAJ,EAAA,CACL;AAAA,IAAA,EAAA,CACJ;AAAA,EAAA,GAER;AAER;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableSettingsListContainer.js","sources":["../../../../src/components/table/native/TableSettingsListContainer.tsx"],"sourcesContent":["import { useCallback, useState } from 'react';\nimport {\n closestCenter,\n DndContext,\n type DragEndEvent,\n type DragStartEvent,\n KeyboardSensor,\n PointerSensor,\n useSensor,\n useSensors,\n} from '@dnd-kit/core';\nimport { SortableContext, sortableKeyboardCoordinates, verticalListSortingStrategy } from '@dnd-kit/sortable';\nimport { restrictToVerticalAxis } from '@dnd-kit/modifiers';\nimport type { UniqueIdentifier } from '@dnd-kit/core/dist/types';\n\nimport TableSettingsListItem from './TableSettingsListItem';\nimport type { TableSettingsItemProps } from './TableSettingsDialog';\n\nexport type TableSettingsListContainerProps = {\n items: string[];\n itemProps: TableSettingsItemProps;\n onSortEnd: (event: DragEndEvent, previousOrder: string[]) => void;\n};\n\nexport const TableSettingsListContainer = (props: TableSettingsListContainerProps) => {\n const { items, itemProps, onSortEnd } = props;\n\n const [activeDraggedColumn, setActiveDraggedColumn] = useState<UniqueIdentifier | null>(null);\n\n const sensors = useSensors(\n useSensor(PointerSensor),\n useSensor(KeyboardSensor, { coordinateGetter: sortableKeyboardCoordinates })\n );\n\n const handleDragStart = useCallback((event: DragStartEvent) => {\n setActiveDraggedColumn(event.active.id);\n }, []);\n\n const handleDragEnd = (event: DragEndEvent) => {\n setActiveDraggedColumn(null);\n onSortEnd(event, items);\n };\n\n const activeClass = 'table-settings-item shadow-smooth-to-bottom z-index-max';\n\n return (\n <ol className='table-settings-items-container padding-0 margin-0'>\n <DndContext\n sensors={sensors}\n collisionDetection={closestCenter}\n modifiers={[restrictToVerticalAxis]}\n onDragStart={handleDragStart}\n onDragEnd={handleDragEnd}\n >\n <SortableContext items={items} strategy={verticalListSortingStrategy}>\n {items.map((column, index) => (\n <TableSettingsListItem\n key={column}\n column={column}\n orderIndex={index}\n isActive={activeDraggedColumn === column}\n className={activeDraggedColumn === column ? activeClass : ''}\n {...itemProps}\n />\n ))}\n </SortableContext>\n </DndContext>\n </ol>\n );\n};\n"],"names":["TableSettingsListContainer","props","items","itemProps","onSortEnd","activeDraggedColumn","setActiveDraggedColumn","useState","sensors","useSensors","useSensor","PointerSensor","KeyboardSensor","sortableKeyboardCoordinates","handleDragStart","useCallback","event","handleDragEnd","activeClass","jsx","DndContext","closestCenter","restrictToVerticalAxis","SortableContext","verticalListSortingStrategy","column","index","TableSettingsListItem"],"mappings":";;;;;;AAwBO,MAAMA,IAA6B,CAACC,MAA2C;AAClF,QAAM,EAAE,OAAAC,GAAO,WAAAC,GAAW,WAAAC,EAAA,IAAcH,GAElC,CAACI,GAAqBC,CAAsB,IAAIC,EAAkC,IAAI,GAEtFC,IAAUC;AAAA,IACZC,EAAUC,CAAa;AAAA,IACvBD,EAAUE,GAAgB,EAAE,kBAAkBC,GAA6B;AAAA,EAAA,GAGzEC,IAAkBC,EAAY,CAACC,MAA0B;AAC3D,IAAAV,EAAuBU,EAAM,OAAO,EAAE;AAAA,EAC1C,GAAG,CAAA,CAAE,GAECC,IAAgB,CAACD,MAAwB;AAC3C,IAAAV,EAAuB,IAAI,GAC3BF,EAAUY,GAAOd,CAAK;AAAA,EAC1B,GAEMgB,IAAc;AAEpB,SACI,gBAAAC,EAAC,MAAA,EAAG,WAAU,qDACV,UAAA,gBAAAA;AAAA,IAACC;AAAA,IAAA;AAAA,MACG,SAAAZ;AAAA,MACA,oBAAoBa;AAAA,MACpB,WAAW,CAACC,CAAsB;AAAA,MAClC,aAAaR;AAAA,MACb,WAAWG;AAAA,MAEX,UAAA,gBAAAE,EAACI,KAAgB,OAAArB,GAAc,UAAUsB,GACpC,UAAAtB,EAAM,IAAI,CAACuB,GAAQC,MAChB,gBAAAP;AAAA,QAACQ;AAAA,QAAA;AAAA,UAEG,QAAAF;AAAA,UACA,YAAYC;AAAA,UACZ,UAAUrB,MAAwBoB;AAAA,UAClC,WAAWpB,MAAwBoB,IAASP,IAAc;AAAA,UACzD,GAAGf;AAAA,QAAA;AAAA,QALCsB;AAAA,MAAA,CAOZ,EAAA,CACL;AAAA,IAAA;AAAA,EAAA,GAER;AAER;"}
@@ -0,0 +1,100 @@
1
+ import { jsxs as m, jsx as t } from "react/jsx-runtime";
2
+ import { useSortable as O } from "@dnd-kit/sortable";
3
+ import { CSS as R } from "@dnd-kit/utilities";
4
+ import { noop as $, isEmpty as j } from "es-toolkit/compat";
5
+ import H from "../../../utils/classNames.js";
6
+ import _ from "../../checkbox/Checkbox.js";
7
+ import B from "../../collapse/Collapse.js";
8
+ import { TableSettingsColumnDetails as E } from "./TableSettingsColumnDetails.js";
9
+ import { TableSettingsColumnButtons as F } from "./TableSettingsColumnButtons.js";
10
+ const P = 1e3, U = (o, e, l) => o ? !(l[e] || "").toLowerCase().includes(o.toLowerCase()) : !1, Z = (o) => {
11
+ const {
12
+ column: e,
13
+ orderIndex: l,
14
+ columnLabels: i,
15
+ autoLabel: d,
16
+ disabledColumns: c = [],
17
+ columnOrder: u,
18
+ hiddenColumns: p = [],
19
+ columnSearchValue: a,
20
+ columnsDetails: b,
21
+ columnLabelStrings: f = {},
22
+ openColumnsDetails: r = {},
23
+ onColumnWidthChange: C,
24
+ onResetColumnWidth: h,
25
+ onMoveColumn: g,
26
+ onOpenDetails: N,
27
+ onToggleHideColumn: x = $,
28
+ isActive: S = !1,
29
+ className: v
30
+ } = o, n = !j(a), { attributes: D, listeners: L, setNodeRef: T, setActivatorNodeRef: k, transform: w, transition: W } = O({
31
+ id: e,
32
+ disabled: n
33
+ }), y = {
34
+ transform: R.Transform.toString(w),
35
+ transition: W
36
+ }, A = U(a, e, f), I = H("table-settings-item", v), s = b[e];
37
+ return /* @__PURE__ */ m(
38
+ "li",
39
+ {
40
+ hidden: A,
41
+ className: I,
42
+ ref: T,
43
+ style: y,
44
+ children: [
45
+ /* @__PURE__ */ m("div", { className: "table-settings-item-header user-select-none", ref: k, children: [
46
+ /* @__PURE__ */ t("div", { className: "CheckboxWrapper display-flex align-items-center padding-left-2 margin-top--3", children: /* @__PURE__ */ t(
47
+ _,
48
+ {
49
+ checked: !p.includes(e),
50
+ onClick: (M) => {
51
+ x(e), M.stopPropagation();
52
+ },
53
+ disabled: c.includes(e)
54
+ }
55
+ ) }),
56
+ /* @__PURE__ */ t(
57
+ "div",
58
+ {
59
+ className: `table-settings-item-label ${n ? "no-drag" : ""}`,
60
+ "data-key": e,
61
+ ...D,
62
+ ...L,
63
+ children: i?.[e]
64
+ }
65
+ ),
66
+ s && /* @__PURE__ */ t("div", { className: "column-width-label", children: s.width ? `${s.width}px` : d }),
67
+ /* @__PURE__ */ t(
68
+ F,
69
+ {
70
+ column: e,
71
+ index: l,
72
+ columnDetails: s,
73
+ columnOrder: u,
74
+ openColumnsDetails: r,
75
+ disabled: n,
76
+ onMoveColumn: g,
77
+ onOpenDetails: N
78
+ }
79
+ )
80
+ ] }),
81
+ s && !S && /* @__PURE__ */ t(B, { open: !!r[e], children: /* @__PURE__ */ t("div", { children: /* @__PURE__ */ t(
82
+ E,
83
+ {
84
+ ...s,
85
+ column: e,
86
+ maxColumnWidth: P,
87
+ onColumnWidthChange: C,
88
+ onResetColumnWidth: h
89
+ }
90
+ ) }) })
91
+ ]
92
+ },
93
+ `table-settings-item-${e}`
94
+ );
95
+ };
96
+ export {
97
+ Z as default,
98
+ U as filterColumns
99
+ };
100
+ //# sourceMappingURL=TableSettingsListItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableSettingsListItem.js","sources":["../../../../src/components/table/native/TableSettingsListItem.tsx"],"sourcesContent":["import { useSortable } from '@dnd-kit/sortable';\nimport { CSS } from '@dnd-kit/utilities';\nimport { isEmpty, noop } from 'es-toolkit/compat';\n\nimport classNames from '../../../utils/classNames';\nimport Checkbox from '../../checkbox/Checkbox';\nimport Collapse from '../../collapse/Collapse';\nimport { TableSettingsColumnDetails } from './TableSettingsColumnDetails';\nimport { TableSettingsColumnButtons } from './TableSettingsColumnButtons';\nimport type { TableSettingsItemProps } from './TableSettingsDialog';\n\nconst MAX_COLUMN_WIDTH = 1000;\n\nexport const filterColumns = (searchValue: string, column: string, columnLabelStrings: Record<string, string>) => {\n if (!searchValue) {\n return false;\n }\n const label = columnLabelStrings[column] || '';\n return !label.toLowerCase().includes(searchValue.toLowerCase());\n};\n\nexport type TableSettingsListItemProps = TableSettingsItemProps & {\n column: string;\n orderIndex: number;\n isActive: boolean;\n className?: string;\n};\n\nconst TableSettingsListItem = (props: TableSettingsListItemProps) => {\n const {\n column,\n orderIndex,\n columnLabels,\n autoLabel,\n disabledColumns = [],\n columnOrder,\n hiddenColumns = [],\n columnSearchValue,\n columnsDetails,\n columnLabelStrings = {},\n openColumnsDetails = {},\n onColumnWidthChange,\n onResetColumnWidth,\n onMoveColumn,\n onOpenDetails,\n onToggleHideColumn = noop,\n isActive = false,\n className,\n } = props;\n\n const isSortingDisabled = !isEmpty(columnSearchValue);\n\n const { attributes, listeners, setNodeRef, setActivatorNodeRef, transform, transition } = useSortable({\n id: column,\n disabled: isSortingDisabled,\n });\n\n const style = {\n transform: CSS.Transform.toString(transform),\n transition,\n };\n\n // Filter out items which don't match the search value.\n const isFiltered = filterColumns(columnSearchValue, column, columnLabelStrings);\n\n const itemClassNames = classNames('table-settings-item', className);\n\n const columnDetails = columnsDetails[column];\n\n return (\n <li\n hidden={isFiltered}\n className={itemClassNames}\n key={`table-settings-item-${column}`}\n ref={setNodeRef}\n style={style}\n >\n <div className='table-settings-item-header user-select-none' ref={setActivatorNodeRef}>\n <div className='CheckboxWrapper display-flex align-items-center padding-left-2 margin-top--3'>\n <Checkbox\n checked={!hiddenColumns.includes(column)}\n onClick={event => {\n onToggleHideColumn(column);\n event.stopPropagation();\n }}\n disabled={disabledColumns.includes(column)}\n />\n </div>\n <div\n className={`table-settings-item-label ${isSortingDisabled ? 'no-drag' : ''}`}\n data-key={column}\n {...attributes}\n {...listeners}\n >\n {columnLabels?.[column]}\n </div>\n {columnDetails && (\n <div className='column-width-label'>\n {columnDetails.width ? `${columnDetails.width}px` : autoLabel}\n </div>\n )}\n <TableSettingsColumnButtons\n column={column}\n index={orderIndex}\n columnDetails={columnDetails}\n columnOrder={columnOrder}\n openColumnsDetails={openColumnsDetails}\n disabled={isSortingDisabled}\n onMoveColumn={onMoveColumn}\n onOpenDetails={onOpenDetails}\n />\n </div>\n {columnDetails && !isActive && (\n <Collapse open={!!openColumnsDetails[column]}>\n <div>\n <TableSettingsColumnDetails\n {...columnDetails}\n column={column}\n maxColumnWidth={MAX_COLUMN_WIDTH}\n onColumnWidthChange={onColumnWidthChange}\n onResetColumnWidth={onResetColumnWidth}\n />\n </div>\n </Collapse>\n )}\n </li>\n );\n};\n\nexport default TableSettingsListItem;\n"],"names":["MAX_COLUMN_WIDTH","filterColumns","searchValue","column","columnLabelStrings","TableSettingsListItem","props","orderIndex","columnLabels","autoLabel","disabledColumns","columnOrder","hiddenColumns","columnSearchValue","columnsDetails","openColumnsDetails","onColumnWidthChange","onResetColumnWidth","onMoveColumn","onOpenDetails","onToggleHideColumn","noop","isActive","className","isSortingDisabled","isEmpty","attributes","listeners","setNodeRef","setActivatorNodeRef","transform","transition","useSortable","style","CSS","isFiltered","itemClassNames","classNames","columnDetails","jsxs","jsx","Checkbox","event","TableSettingsColumnButtons","Collapse","TableSettingsColumnDetails"],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { MutableRefObject } from 'react';
2
+ import { TableHtmlAttributes, TableRowData } from '../../Table.types';
3
+ import { RenderBodyRow, TableRenderContextValue } from '../../context/TableRenderContext';
4
+ import { TableRenderConfigContextValue } from '../../context/TableRenderConfigContext';
5
+ export type TableBodyContentProps = {
6
+ columnCount: number;
7
+ hasDeclaredChildren: boolean;
8
+ htmlAttributes: TableHtmlAttributes;
9
+ isVirtualized: boolean;
10
+ itemsRef: MutableRefObject<HTMLDivElement | null>;
11
+ paddingBottom: number;
12
+ paddingTop: number;
13
+ renderConfigContext: TableRenderConfigContextValue<TableRowData>;
14
+ renderContext: TableRenderContextValue<TableRowData>;
15
+ shouldAnimateBodyRows: boolean;
16
+ virtualRows: Array<{
17
+ row: RenderBodyRow<TableRowData>;
18
+ }>;
19
+ };
20
+ declare const TableBodyContent: (props: TableBodyContentProps) => import("react/jsx-runtime").JSX.Element;
21
+ export default TableBodyContent;
@@ -0,0 +1,52 @@
1
+ import { jsxs as w, Fragment as g, jsx as t } from "react/jsx-runtime";
2
+ import { AnimatePresence as v } from "motion/react";
3
+ import { isValidElement as B, cloneElement as C } from "react";
4
+ import x from "./TableEmptyRow.js";
5
+ const j = (m) => {
6
+ const {
7
+ columnCount: c,
8
+ hasDeclaredChildren: u,
9
+ htmlAttributes: p,
10
+ isVirtualized: d,
11
+ itemsRef: y,
12
+ paddingBottom: i,
13
+ paddingTop: l,
14
+ renderConfigContext: h,
15
+ renderContext: o,
16
+ shouldAnimateBodyRows: f,
17
+ virtualRows: R
18
+ } = m, a = (e) => {
19
+ const n = `${e.kind}-${String(e.rowId)}`, s = o.renderBodyRow?.(e);
20
+ return B(s) ? C(s, { key: n }) : null;
21
+ }, b = (e) => {
22
+ y.current = e;
23
+ }, r = (e) => /* @__PURE__ */ t(
24
+ "div",
25
+ {
26
+ ...p,
27
+ className: "table-body",
28
+ ref: d ? b : void 0,
29
+ role: "rowgroup",
30
+ children: e
31
+ }
32
+ );
33
+ if (d)
34
+ return r(
35
+ /* @__PURE__ */ w(g, { children: [
36
+ l > 0 ? /* @__PURE__ */ t("div", { "aria-hidden": !0, className: "table-body-virtual-spacer", style: { height: l } }) : null,
37
+ R.map(({ row: e }) => a(e)),
38
+ i > 0 ? /* @__PURE__ */ t("div", { "aria-hidden": !0, className: "table-body-virtual-spacer", style: { height: i } }) : null
39
+ ] })
40
+ );
41
+ if (o.bodyRows.length > 0) {
42
+ const e = o.bodyRows.map((n) => a(n));
43
+ return r(
44
+ f ? /* @__PURE__ */ t(v, { initial: !1, children: e }) : e
45
+ );
46
+ }
47
+ return r(u ? null : /* @__PURE__ */ t(x, { columnCount: c, content: h.noRowsState }));
48
+ };
49
+ export {
50
+ j as default
51
+ };
52
+ //# sourceMappingURL=TableBodyContent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableBodyContent.js","sources":["../../../../../src/components/table/render/body/TableBodyContent.tsx"],"sourcesContent":["import { AnimatePresence } from 'motion/react';\nimport { cloneElement, isValidElement, type MutableRefObject, type ReactElement, type ReactNode } from 'react';\n\nimport type { TableHtmlAttributes, TableRowData } from '../../Table.types';\nimport type { RenderBodyRow, TableRenderContextValue } from '../../context/TableRenderContext';\nimport type { TableRenderConfigContextValue } from '../../context/TableRenderConfigContext';\nimport TableEmptyRow from './TableEmptyRow';\n\nexport type TableBodyContentProps = {\n columnCount: number;\n hasDeclaredChildren: boolean;\n htmlAttributes: TableHtmlAttributes;\n isVirtualized: boolean;\n itemsRef: MutableRefObject<HTMLDivElement | null>;\n paddingBottom: number;\n paddingTop: number;\n renderConfigContext: TableRenderConfigContextValue<TableRowData>;\n renderContext: TableRenderContextValue<TableRowData>;\n shouldAnimateBodyRows: boolean;\n virtualRows: Array<{ row: RenderBodyRow<TableRowData> }>;\n};\n\nconst TableBodyContent = (props: TableBodyContentProps) => {\n const {\n columnCount,\n hasDeclaredChildren,\n htmlAttributes,\n isVirtualized,\n itemsRef,\n paddingBottom,\n paddingTop,\n renderConfigContext,\n renderContext,\n shouldAnimateBodyRows,\n virtualRows,\n } = props;\n\n const renderResolvedBodyRow = (row: RenderBodyRow<TableRowData>) => {\n const rowKey = `${row.kind}-${String(row.rowId)}`;\n const renderedRow = renderContext.renderBodyRow?.(row);\n\n return isValidElement(renderedRow) ? cloneElement(renderedRow as ReactElement, { key: rowKey }) : null;\n };\n\n const handleItemsRef = (element: HTMLDivElement | null) => {\n itemsRef.current = element;\n };\n\n const renderBodyWrapper = (content: ReactNode) => (\n <div\n {...htmlAttributes}\n className='table-body'\n ref={isVirtualized ? handleItemsRef : undefined}\n role='rowgroup'\n >\n {content}\n </div>\n );\n\n if (isVirtualized) {\n return renderBodyWrapper(\n <>\n {paddingTop > 0 ? (\n <div aria-hidden className='table-body-virtual-spacer' style={{ height: paddingTop }} />\n ) : null}\n {virtualRows.map(({ row }) => renderResolvedBodyRow(row))}\n {paddingBottom > 0 ? (\n <div aria-hidden className='table-body-virtual-spacer' style={{ height: paddingBottom }} />\n ) : null}\n </>\n );\n }\n\n if (renderContext.bodyRows.length > 0) {\n const renderedBodyRows = renderContext.bodyRows.map(row => renderResolvedBodyRow(row));\n\n return renderBodyWrapper(\n shouldAnimateBodyRows ? (\n <AnimatePresence initial={false}>{renderedBodyRows}</AnimatePresence>\n ) : (\n renderedBodyRows\n )\n );\n }\n\n if (!hasDeclaredChildren) {\n return renderBodyWrapper(<TableEmptyRow columnCount={columnCount} content={renderConfigContext.noRowsState} />);\n }\n\n return renderBodyWrapper(null);\n};\n\nexport default TableBodyContent;\n"],"names":["TableBodyContent","props","columnCount","hasDeclaredChildren","htmlAttributes","isVirtualized","itemsRef","paddingBottom","paddingTop","renderConfigContext","renderContext","shouldAnimateBodyRows","virtualRows","renderResolvedBodyRow","row","rowKey","renderedRow","isValidElement","cloneElement","handleItemsRef","element","renderBodyWrapper","content","jsx","jsxs","Fragment","renderedBodyRows","AnimatePresence","TableEmptyRow"],"mappings":";;;;AAsBA,MAAMA,IAAmB,CAACC,MAAiC;AACvD,QAAM;AAAA,IACF,aAAAC;AAAA,IACA,qBAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,eAAAC;AAAA,IACA,UAAAC;AAAA,IACA,eAAAC;AAAA,IACA,YAAAC;AAAA,IACA,qBAAAC;AAAA,IACA,eAAAC;AAAA,IACA,uBAAAC;AAAA,IACA,aAAAC;AAAA,EAAA,IACAX,GAEEY,IAAwB,CAACC,MAAqC;AAChE,UAAMC,IAAS,GAAGD,EAAI,IAAI,IAAI,OAAOA,EAAI,KAAK,CAAC,IACzCE,IAAcN,EAAc,gBAAgBI,CAAG;AAErD,WAAOG,EAAeD,CAAW,IAAIE,EAAaF,GAA6B,EAAE,KAAKD,EAAA,CAAQ,IAAI;AAAA,EACtG,GAEMI,IAAiB,CAACC,MAAmC;AACvD,IAAAd,EAAS,UAAUc;AAAA,EACvB,GAEMC,IAAoB,CAACC,MACvB,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACI,GAAGnB;AAAA,MACJ,WAAU;AAAA,MACV,KAAKC,IAAgBc,IAAiB;AAAA,MACtC,MAAK;AAAA,MAEJ,UAAAG;AAAA,IAAA;AAAA,EAAA;AAIT,MAAIjB;AACA,WAAOgB;AAAA,MACH,gBAAAG,EAAAC,GAAA,EACK,UAAA;AAAA,QAAAjB,IAAa,IACV,gBAAAe,EAAC,OAAA,EAAI,eAAW,IAAC,WAAU,6BAA4B,OAAO,EAAE,QAAQf,EAAA,EAAW,CAAG,IACtF;AAAA,QACHI,EAAY,IAAI,CAAC,EAAE,KAAAE,QAAUD,EAAsBC,CAAG,CAAC;AAAA,QACvDP,IAAgB,IACb,gBAAAgB,EAAC,OAAA,EAAI,eAAW,IAAC,WAAU,6BAA4B,OAAO,EAAE,QAAQhB,EAAA,GAAiB,IACzF;AAAA,MAAA,EAAA,CACR;AAAA,IAAA;AAIR,MAAIG,EAAc,SAAS,SAAS,GAAG;AACnC,UAAMgB,IAAmBhB,EAAc,SAAS,IAAI,CAAAI,MAAOD,EAAsBC,CAAG,CAAC;AAErF,WAAOO;AAAA,MACHV,IACI,gBAAAY,EAACI,GAAA,EAAgB,SAAS,IAAQ,aAAiB,IAEnDD;AAAA,IAAA;AAAA,EAGZ;AAEA,SAIOL,EAJFlB,IAIoB,OAHI,gBAAAoB,EAACK,GAAA,EAAc,aAAA1B,GAA0B,SAASO,EAAoB,aAAa,CAGnF;AACjC;"}
@@ -0,0 +1,7 @@
1
+ type TableEmptyRowProps = {
2
+ columnCount: number;
3
+ content: React.ReactNode;
4
+ dataIndex?: number;
5
+ };
6
+ declare const TableEmptyRow: ({ columnCount, content, dataIndex }: TableEmptyRowProps) => import("react/jsx-runtime").JSX.Element;
7
+ export default TableEmptyRow;
@@ -0,0 +1,6 @@
1
+ import { jsx as e } from "react/jsx-runtime";
2
+ const r = ({ columnCount: l, content: a, dataIndex: t }) => /* @__PURE__ */ e("div", { className: "table-row table-row-empty table-row-no-hover", "data-index": t, role: "row", children: /* @__PURE__ */ e("div", { className: "table-cell table-empty", role: "cell", "aria-colspan": l, children: /* @__PURE__ */ e("div", { className: "table-cell-content", children: a }) }) });
3
+ export {
4
+ r as default
5
+ };
6
+ //# sourceMappingURL=TableEmptyRow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableEmptyRow.js","sources":["../../../../../src/components/table/render/body/TableEmptyRow.tsx"],"sourcesContent":["type TableEmptyRowProps = {\n columnCount: number;\n content: React.ReactNode;\n dataIndex?: number;\n};\n\nconst TableEmptyRow = ({ columnCount, content, dataIndex }: TableEmptyRowProps) => (\n <div className='table-row table-row-empty table-row-no-hover' data-index={dataIndex} role='row'>\n <div className='table-cell table-empty' role='cell' aria-colspan={columnCount}>\n <div className='table-cell-content'>{content}</div>\n </div>\n </div>\n);\n\nexport default TableEmptyRow;\n"],"names":["TableEmptyRow","columnCount","content","dataIndex","jsx"],"mappings":";AAMA,MAAMA,IAAgB,CAAC,EAAE,aAAAC,GAAa,SAAAC,GAAS,WAAAC,EAAA,MAC3C,gBAAAC,EAAC,OAAA,EAAI,WAAU,gDAA+C,cAAYD,GAAW,MAAK,OACtF,UAAA,gBAAAC,EAAC,OAAA,EAAI,WAAU,0BAAyB,MAAK,QAAO,gBAAcH,GAC9D,UAAA,gBAAAG,EAAC,OAAA,EAAI,WAAU,sBAAsB,UAAAF,EAAA,CAAQ,GACjD,EAAA,CACJ;"}
@@ -0,0 +1,6 @@
1
+ type TableFooterContentProps = {
2
+ columnCount: number;
3
+ content: React.ReactNode;
4
+ };
5
+ declare const TableFooterContent: ({ columnCount, content }: TableFooterContentProps) => import("react/jsx-runtime").JSX.Element;
6
+ export default TableFooterContent;
@@ -0,0 +1,6 @@
1
+ import { jsx as e } from "react/jsx-runtime";
2
+ const o = ({ columnCount: l, content: t }) => /* @__PURE__ */ e("div", { className: "table-cell table-footer-content", role: "cell", "aria-colspan": l, children: /* @__PURE__ */ e("div", { className: "table-cell-content", children: t }) });
3
+ export {
4
+ o as default
5
+ };
6
+ //# sourceMappingURL=TableFooterContent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableFooterContent.js","sources":["../../../../../src/components/table/render/footer/TableFooterContent.tsx"],"sourcesContent":["type TableFooterContentProps = {\n columnCount: number;\n content: React.ReactNode;\n};\n\nconst TableFooterContent = ({ columnCount, content }: TableFooterContentProps) => (\n <div className='table-cell table-footer-content' role='cell' aria-colspan={columnCount}>\n <div className='table-cell-content'>{content}</div>\n </div>\n);\n\nexport default TableFooterContent;\n"],"names":["TableFooterContent","columnCount","content","jsx"],"mappings":";AAKA,MAAMA,IAAqB,CAAC,EAAE,aAAAC,GAAa,SAAAC,EAAA,wBACtC,OAAA,EAAI,WAAU,mCAAkC,MAAK,QAAO,gBAAcD,GACvE,UAAA,gBAAAE,EAAC,SAAI,WAAU,sBAAsB,aAAQ,EAAA,CACjD;"}
@@ -0,0 +1,13 @@
1
+ import { ButtonDropdownProps } from '../../../dropdown/ButtonDropdown';
2
+ export type TableBatchDropdownProps = {
3
+ /**
4
+ * Dropdown items rendered for batch actions in the selection header.
5
+ */
6
+ items: NonNullable<ButtonDropdownProps['items']>;
7
+ /**
8
+ * Optional class names for the dropdown menu.
9
+ */
10
+ dropdownClassName?: ButtonDropdownProps['dropdownClassName'];
11
+ };
12
+ declare const TableBatchDropdown: ({ items, dropdownClassName, ...remainingProps }: TableBatchDropdownProps) => import("react/jsx-runtime").JSX.Element;
13
+ export default TableBatchDropdown;
@@ -0,0 +1,30 @@
1
+ import { jsx as n } from "react/jsx-runtime";
2
+ import { useState as i, useEffect as m } from "react";
3
+ import p from "../../../dropdown/ButtonDropdown.js";
4
+ import { TABLE_HORIZONTAL_SCROLL_EVENT as r } from "../../layout/useHorizontalSectionSync.js";
5
+ const h = ({ items: a, dropdownClassName: o, ...s }) => {
6
+ const [l, e] = i(!1);
7
+ return m(() => {
8
+ const t = () => e(!1);
9
+ return window.addEventListener(r, t), () => window.removeEventListener(r, t);
10
+ }, []), /* @__PURE__ */ n(
11
+ p,
12
+ {
13
+ ...s,
14
+ title: /* @__PURE__ */ n("span", { className: "rioglyph rioglyph-checkboxes" }),
15
+ variant: "outline",
16
+ bsSize: "sm",
17
+ toggleClassName: "table-batch-dropdown-button no-hover-scale",
18
+ dropdownClassName: o ? `text-normal ${o}` : "text-normal",
19
+ iconOnly: !0,
20
+ items: a,
21
+ open: l,
22
+ onOpen: () => e(!0),
23
+ onClose: () => e(!1)
24
+ }
25
+ );
26
+ };
27
+ export {
28
+ h as default
29
+ };
30
+ //# sourceMappingURL=TableBatchDropdown.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableBatchDropdown.js","sources":["../../../../../src/components/table/render/header/TableBatchDropdown.tsx"],"sourcesContent":["import { useEffect, useState } from 'react';\n\nimport ButtonDropdown, { type ButtonDropdownProps } from '../../../dropdown/ButtonDropdown';\nimport { TABLE_HORIZONTAL_SCROLL_EVENT } from '../../layout/useHorizontalSectionSync';\n\nexport type TableBatchDropdownProps = {\n /**\n * Dropdown items rendered for batch actions in the selection header.\n */\n items: NonNullable<ButtonDropdownProps['items']>;\n\n /**\n * Optional class names for the dropdown menu.\n */\n dropdownClassName?: ButtonDropdownProps['dropdownClassName'];\n};\n\nconst TableBatchDropdown = ({ items, dropdownClassName, ...remainingProps }: TableBatchDropdownProps) => {\n const [open, setOpen] = useState(false);\n\n useEffect(() => {\n const handleHorizontalScroll = () => setOpen(false);\n\n window.addEventListener(TABLE_HORIZONTAL_SCROLL_EVENT, handleHorizontalScroll);\n\n return () => window.removeEventListener(TABLE_HORIZONTAL_SCROLL_EVENT, handleHorizontalScroll);\n }, []);\n\n return (\n <ButtonDropdown\n {...remainingProps}\n title={<span className='rioglyph rioglyph-checkboxes' />}\n variant='outline'\n bsSize='sm'\n toggleClassName='table-batch-dropdown-button no-hover-scale'\n dropdownClassName={dropdownClassName ? `text-normal ${dropdownClassName}` : 'text-normal'}\n iconOnly\n items={items}\n open={open}\n onOpen={() => setOpen(true)}\n onClose={() => setOpen(false)}\n />\n );\n};\n\nexport default TableBatchDropdown;\n"],"names":["TableBatchDropdown","items","dropdownClassName","remainingProps","open","setOpen","useState","useEffect","handleHorizontalScroll","TABLE_HORIZONTAL_SCROLL_EVENT","jsx","ButtonDropdown"],"mappings":";;;;AAiBA,MAAMA,IAAqB,CAAC,EAAE,OAAAC,GAAO,mBAAAC,GAAmB,GAAGC,QAA8C;AACrG,QAAM,CAACC,GAAMC,CAAO,IAAIC,EAAS,EAAK;AAEtC,SAAAC,EAAU,MAAM;AACZ,UAAMC,IAAyB,MAAMH,EAAQ,EAAK;AAElD,kBAAO,iBAAiBI,GAA+BD,CAAsB,GAEtE,MAAM,OAAO,oBAAoBC,GAA+BD,CAAsB;AAAA,EACjG,GAAG,CAAA,CAAE,GAGD,gBAAAE;AAAA,IAACC;AAAA,IAAA;AAAA,MACI,GAAGR;AAAA,MACJ,OAAO,gBAAAO,EAAC,QAAA,EAAK,WAAU,+BAAA,CAA+B;AAAA,MACtD,SAAQ;AAAA,MACR,QAAO;AAAA,MACP,iBAAgB;AAAA,MAChB,mBAAmBR,IAAoB,eAAeA,CAAiB,KAAK;AAAA,MAC5E,UAAQ;AAAA,MACR,OAAAD;AAAA,MACA,MAAAG;AAAA,MACA,QAAQ,MAAMC,EAAQ,EAAI;AAAA,MAC1B,SAAS,MAAMA,EAAQ,EAAK;AAAA,IAAA;AAAA,EAAA;AAGxC;"}