@rio-cloud/rio-uikit 2.2.1 → 2.3.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AnalyticsAnalysisOverlay.d.ts +1 -0
- package/AnalyticsAnalysisOverlay.js +5 -0
- package/AnalyticsAnalysisOverlay.js.map +1 -0
- package/Table.d.ts +2 -0
- package/Table.js +23 -0
- package/Table.js.map +1 -0
- package/TableCol.d.ts +2 -2
- package/TableCol.js +1 -1
- package/TableHead.d.ts +2 -2
- package/TableHead.js +1 -1
- package/TableSettingsDialog.d.ts +2 -2
- package/TableSettingsDialog.js +1 -1
- package/TableToolbar.js +3 -2
- package/analyticsAnalysisUtils.d.ts +1 -0
- package/analyticsAnalysisUtils.js +13 -0
- package/analyticsAnalysisUtils.js.map +1 -0
- package/components/analyticsAnalysisOverlay/AnalyticsAnalysisBanner.d.ts +18 -0
- package/components/analyticsAnalysisOverlay/AnalyticsAnalysisBanner.js +128 -0
- package/components/analyticsAnalysisOverlay/AnalyticsAnalysisBanner.js.map +1 -0
- package/components/analyticsAnalysisOverlay/AnalyticsAnalysisOverlay.d.ts +9 -0
- package/components/analyticsAnalysisOverlay/AnalyticsAnalysisOverlay.js +73 -0
- package/components/analyticsAnalysisOverlay/AnalyticsAnalysisOverlay.js.map +1 -0
- package/components/applicationHeader/AppMenuContent.js.map +1 -1
- package/components/applicationHeader/ApplicationActionBar.js +4 -4
- package/components/applicationHeader/ApplicationActionBar.js.map +1 -1
- package/components/applicationHeader/CollapsedNavItem.js +5 -14
- package/components/applicationHeader/CollapsedNavItem.js.map +1 -1
- package/components/applicationHeader/NavItems.js +10 -10
- package/components/applicationHeader/NavItems.js.map +1 -1
- package/components/assetTree/AssetTree.js +23 -23
- package/components/assetTree/AssetTree.js.map +1 -1
- package/components/assetTree/TreeNothingFound.js +2 -2
- package/components/assetTree/TreeNothingFound.js.map +1 -1
- package/components/assetTree/treeUtils.js.map +1 -1
- package/components/autosuggest/AutoSuggest.js +31 -31
- package/components/autosuggest/AutoSuggest.js.map +1 -1
- package/components/autosuggest/AutoSuggestAddons.js +9 -9
- package/components/autosuggest/AutoSuggestAddons.js.map +1 -1
- package/components/banner/BannerActions.js +2 -2
- package/components/banner/BannerActions.js.map +1 -1
- package/components/banner/BannerIcon.js +3 -3
- package/components/banner/BannerIcon.js.map +1 -1
- package/components/banner/BannerPage.js +4 -4
- package/components/banner/BannerPage.js.map +1 -1
- package/components/button/Button.d.ts +7 -0
- package/components/button/Button.js +73 -65
- package/components/button/Button.js.map +1 -1
- package/components/checkbox/Checkbox.js +18 -17
- package/components/checkbox/Checkbox.js.map +1 -1
- package/components/datepicker/DateRangePicker.js +0 -2
- package/components/datepicker/DateRangePicker.js.map +1 -1
- package/components/datepicker/DayPicker.js +16 -16
- package/components/datepicker/DayPicker.js.map +1 -1
- package/components/dialog/Dialog.js.map +1 -1
- package/components/dialog/DialogHeader.js +23 -20
- package/components/dialog/DialogHeader.js.map +1 -1
- package/components/dialog/MediaDialog.js +1 -1
- package/components/dialog/MediaDialog.js.map +1 -1
- package/components/editableContent/EditableContent.js +7 -7
- package/components/editableContent/EditableContent.js.map +1 -1
- package/components/expander/ExpanderList.d.ts +5 -0
- package/components/expander/ExpanderList.js +25 -16
- package/components/expander/ExpanderList.js.map +1 -1
- package/components/expander/ExpanderPanel.d.ts +5 -0
- package/components/expander/ExpanderPanel.js +29 -28
- package/components/expander/ExpanderPanel.js.map +1 -1
- package/components/fade/FadeExpander.js +1 -1
- package/components/fade/FadeExpander.js.map +1 -1
- package/components/filepicker/FilePicker.js.map +1 -1
- package/components/loadMore/LoadMoreButton.d.ts +5 -0
- package/components/loadMore/LoadMoreButton.js +33 -29
- package/components/loadMore/LoadMoreButton.js.map +1 -1
- package/components/map/components/features/ContextMenu.js +13 -13
- package/components/map/components/features/ContextMenu.js.map +1 -1
- package/components/map/components/features/basics/InfoBubble.js.map +1 -1
- package/components/map/components/features/settings/MapSettingsTile.js.map +1 -1
- package/components/map/components/features/settings/builtinSettings/MapTypeSettings.js +6 -6
- package/components/map/components/features/settings/builtinSettings/MapTypeSettings.js.map +1 -1
- package/components/map/utils/eventHandling.js +18 -18
- package/components/map/utils/eventHandling.js.map +1 -1
- package/components/map/utils/positions.d.ts +1 -1
- package/components/map/utils/positions.js +15 -12
- package/components/map/utils/positions.js.map +1 -1
- package/components/map/utils/rendering.d.ts +1 -1
- package/components/menuItems/MenuItems.js +6 -6
- package/components/menuItems/MenuItems.js.map +1 -1
- package/components/notification/NotificationsContainer.js.map +1 -1
- package/components/numberInput/NumberInput.js +57 -56
- package/components/numberInput/NumberInput.js.map +1 -1
- package/components/popover/Popover.js +4 -4
- package/components/popover/Popover.js.map +1 -1
- package/components/resizer/Resizer.js +6 -3
- package/components/resizer/Resizer.js.map +1 -1
- package/components/selects/BaseSelectDropdown.js +34 -32
- package/components/selects/BaseSelectDropdown.js.map +1 -1
- package/components/selects/MultiselectTogglePlaceholder.js.map +1 -1
- package/components/selects/MultiselectToggleSelection.js +11 -11
- package/components/selects/MultiselectToggleSelection.js.map +1 -1
- package/components/sidebars/Sidebar.js +12 -12
- package/components/sidebars/Sidebar.js.map +1 -1
- package/components/sidebars/SidebarCloseButton.js +2 -2
- package/components/sidebars/SidebarCloseButton.js.map +1 -1
- package/components/smoothScrollbars/SmoothScrollbars.d.ts +4 -3
- package/components/smoothScrollbars/SmoothScrollbars.js +11 -11
- package/components/smoothScrollbars/SmoothScrollbars.js.map +1 -1
- package/components/states/CustomState.js.map +1 -1
- package/components/svgImage/svgConverter.js.map +1 -1
- package/components/table/Table.d.ts +267 -0
- package/components/table/Table.js +233 -0
- package/components/table/Table.js.map +1 -0
- package/components/table/Table.types.d.ts +207 -0
- package/components/table/TableBody.d.ts +10 -0
- package/components/table/TableBody.js +5 -0
- package/components/table/TableBody.js.map +1 -0
- package/components/table/TableCard.d.ts +63 -0
- package/components/table/TableCard.js +150 -0
- package/components/table/TableCard.js.map +1 -0
- package/components/table/TableColumn.d.ts +47 -0
- package/components/table/TableColumn.js +5 -0
- package/components/table/TableColumn.js.map +1 -0
- package/components/table/TableExpandedContentRow.d.ts +22 -0
- package/components/table/TableExpandedContentRow.js +5 -0
- package/components/table/TableExpandedContentRow.js.map +1 -0
- package/components/table/TableExpandedRow.d.ts +17 -0
- package/components/table/TableExpandedRow.js +5 -0
- package/components/table/TableExpandedRow.js.map +1 -0
- package/components/table/TableExpanderButton.d.ts +25 -0
- package/components/table/TableExpanderButton.js +22 -0
- package/components/table/TableExpanderButton.js.map +1 -0
- package/components/table/TableFooter.d.ts +13 -0
- package/components/table/TableFooter.js +5 -0
- package/components/table/TableFooter.js.map +1 -0
- package/components/table/TableGroupFooterRow.d.ts +18 -0
- package/components/table/TableGroupFooterRow.js +5 -0
- package/components/table/TableGroupFooterRow.js.map +1 -0
- package/components/table/TableGroupRow.d.ts +24 -0
- package/components/table/TableGroupRow.js +5 -0
- package/components/table/TableGroupRow.js.map +1 -0
- package/components/table/TableHeader.d.ts +9 -0
- package/components/table/TableHeader.js +5 -0
- package/components/table/TableHeader.js.map +1 -0
- package/components/table/TableHeaderColumn.d.ts +70 -0
- package/components/table/TableHeaderColumn.js +5 -0
- package/components/table/TableHeaderColumn.js.map +1 -0
- package/components/table/TableHeaderRow.d.ts +9 -0
- package/components/table/TableHeaderRow.js +5 -0
- package/components/table/TableHeaderRow.js.map +1 -0
- package/components/table/TableRow.d.ts +19 -0
- package/components/table/TableRow.js +5 -0
- package/components/table/TableRow.js.map +1 -0
- package/components/table/TableSpacerRow.d.ts +12 -0
- package/components/table/TableSpacerRow.js +5 -0
- package/components/table/TableSpacerRow.js.map +1 -0
- package/components/table/TableToolbar.d.ts +23 -1
- package/components/table/TableToolbar.js +38 -4
- package/components/table/TableToolbar.js.map +1 -1
- package/components/table/TableViewToggles.d.ts +18 -0
- package/components/table/TableViewToggles.js +59 -87
- package/components/table/TableViewToggles.js.map +1 -1
- package/components/table/layout/columnSizing.d.ts +3 -0
- package/components/table/layout/columnSizing.js +23 -0
- package/components/table/layout/columnSizing.js.map +1 -0
- package/components/table/layout/useDraggableColumns.d.ts +14 -0
- package/components/table/layout/useDraggableColumns.js +47 -0
- package/components/table/layout/useDraggableColumns.js.map +1 -0
- package/components/table/layout/useHorizontalSectionSync.d.ts +11 -0
- package/components/table/layout/useHorizontalSectionSync.js +39 -0
- package/components/table/layout/useHorizontalSectionSync.js.map +1 -0
- package/components/table/layout/useMeasuredColumnMaxWidths.d.ts +12 -0
- package/components/table/layout/useMeasuredColumnMaxWidths.js +85 -0
- package/components/table/layout/useMeasuredColumnMaxWidths.js.map +1 -0
- package/components/table/layout/useResizableColumns.d.ts +14 -0
- package/components/table/layout/useResizableColumns.js +91 -0
- package/components/table/layout/useResizableColumns.js.map +1 -0
- package/components/table/layout/useTableLayout.d.ts +25 -0
- package/components/table/layout/useTableLayout.js +56 -0
- package/components/table/layout/useTableLayout.js.map +1 -0
- package/components/table/layout/useTableVirtualization.d.ts +22 -0
- package/components/table/layout/useTableVirtualization.js +125 -0
- package/components/table/layout/useTableVirtualization.js.map +1 -0
- package/components/table/model/buildTableViewModel.d.ts +28 -0
- package/components/table/model/buildTableViewModel.js +221 -0
- package/components/table/model/buildTableViewModel.js.map +1 -0
- package/components/table/model/resolveCellContent.d.ts +2 -0
- package/components/table/model/resolveCellContent.js +5 -0
- package/components/table/model/resolveCellContent.js.map +1 -0
- package/components/table/model/resolveRowMeta.d.ts +2 -0
- package/components/table/model/resolveRowMeta.js +15 -0
- package/components/table/model/resolveRowMeta.js.map +1 -0
- package/components/table/model/resolveTableClassConfig.d.ts +48 -0
- package/components/table/model/resolveTableClassConfig.js +64 -0
- package/components/table/model/resolveTableClassConfig.js.map +1 -0
- package/components/table/model/tableViewModel.types.d.ts +153 -0
- package/components/table/native/TableCol.js.map +1 -0
- package/components/table/{TableHead.js → native/TableHead.js} +2 -2
- package/components/table/native/TableHead.js.map +1 -0
- package/components/table/native/TableSettingsColumnButtons.js +59 -0
- package/components/table/native/TableSettingsColumnButtons.js.map +1 -0
- package/components/table/{TableSettingsColumnDetails.js → native/TableSettingsColumnDetails.js} +2 -2
- package/components/table/native/TableSettingsColumnDetails.js.map +1 -0
- package/components/table/{TableSettingsDialog.d.ts → native/TableSettingsDialog.d.ts} +2 -3
- package/components/table/native/TableSettingsDialog.js +216 -0
- package/components/table/native/TableSettingsDialog.js.map +1 -0
- package/components/table/{TableSettingsDialogFooter.js → native/TableSettingsDialogFooter.js} +2 -2
- package/components/table/native/TableSettingsDialogFooter.js.map +1 -0
- package/components/table/native/TableSettingsListContainer.js.map +1 -0
- package/components/table/native/TableSettingsListItem.js +100 -0
- package/components/table/native/TableSettingsListItem.js.map +1 -0
- package/components/table/parse/parseBody.d.ts +3 -0
- package/components/table/parse/parseBody.js +13 -0
- package/components/table/parse/parseBody.js.map +1 -0
- package/components/table/parse/parseColumns.d.ts +3 -0
- package/components/table/parse/parseColumns.js +81 -0
- package/components/table/parse/parseColumns.js.map +1 -0
- package/components/table/parse/parseFooter.d.ts +3 -0
- package/components/table/parse/parseFooter.js +39 -0
- package/components/table/parse/parseFooter.js.map +1 -0
- package/components/table/parse/parseHeaders.d.ts +4 -0
- package/components/table/parse/parseHeaders.js +89 -0
- package/components/table/parse/parseHeaders.js.map +1 -0
- package/components/table/parse/parseRows.d.ts +3 -0
- package/components/table/parse/parseRows.js +93 -0
- package/components/table/parse/parseRows.js.map +1 -0
- package/components/table/parse/tableChildGuards.d.ts +25 -0
- package/components/table/parse/tableChildGuards.js +29 -0
- package/components/table/parse/tableChildGuards.js.map +1 -0
- package/components/table/render/body/TableBodyRow.d.ts +16 -0
- package/components/table/render/body/TableBodyRow.js +84 -0
- package/components/table/render/body/TableBodyRow.js.map +1 -0
- package/components/table/render/body/TableBodySection.d.ts +20 -0
- package/components/table/render/body/TableBodySection.js +68 -0
- package/components/table/render/body/TableBodySection.js.map +1 -0
- package/components/table/render/body/TableDataRow.d.ts +15 -0
- package/components/table/render/body/TableDataRow.js +143 -0
- package/components/table/render/body/TableDataRow.js.map +1 -0
- package/components/table/render/body/TableEmptyRow.d.ts +7 -0
- package/components/table/render/body/TableEmptyRow.js +6 -0
- package/components/table/render/body/TableEmptyRow.js.map +1 -0
- package/components/table/render/body/TableExpandedRow.d.ts +8 -0
- package/components/table/render/body/TableExpandedRow.js +84 -0
- package/components/table/render/body/TableExpandedRow.js.map +1 -0
- package/components/table/render/body/TableGroupRow.d.ts +8 -0
- package/components/table/render/body/TableGroupRow.js +21 -0
- package/components/table/render/body/TableGroupRow.js.map +1 -0
- package/components/table/render/body/TableSpacerRow.d.ts +7 -0
- package/components/table/render/body/TableSpacerRow.js +15 -0
- package/components/table/render/body/TableSpacerRow.js.map +1 -0
- package/components/table/render/footer/TableFooterCell.d.ts +8 -0
- package/components/table/render/footer/TableFooterCell.js +31 -0
- package/components/table/render/footer/TableFooterCell.js.map +1 -0
- package/components/table/render/footer/TableFooterContent.d.ts +6 -0
- package/components/table/render/footer/TableFooterContent.js +6 -0
- package/components/table/render/footer/TableFooterContent.js.map +1 -0
- package/components/table/render/footer/TableFooterSection.d.ts +10 -0
- package/components/table/render/footer/TableFooterSection.js +28 -0
- package/components/table/render/footer/TableFooterSection.js.map +1 -0
- package/components/table/render/header/TableBatchDropdown.d.ts +9 -0
- package/components/table/render/header/TableBatchDropdown.js +28 -0
- package/components/table/render/header/TableBatchDropdown.js.map +1 -0
- package/components/table/render/header/TableColumnFilter.d.ts +66 -0
- package/components/table/render/header/TableColumnFilter.js +70 -0
- package/components/table/render/header/TableColumnFilter.js.map +1 -0
- package/components/table/render/header/TableDraggableHeaderCell.d.ts +3 -0
- package/components/table/render/header/TableDraggableHeaderCell.js +54 -0
- package/components/table/render/header/TableDraggableHeaderCell.js.map +1 -0
- package/components/table/render/header/TableHeader.types.d.ts +35 -0
- package/components/table/render/header/TableHeaderCellContent.d.ts +3 -0
- package/components/table/render/header/TableHeaderCellContent.js +57 -0
- package/components/table/render/header/TableHeaderCellContent.js.map +1 -0
- package/components/table/render/header/TableHeaderCellResizeHandle.d.ts +3 -0
- package/components/table/render/header/TableHeaderCellResizeHandle.js +22 -0
- package/components/table/render/header/TableHeaderCellResizeHandle.js.map +1 -0
- package/components/table/render/header/TableHeaderDragOverlay.d.ts +13 -0
- package/components/table/render/header/TableHeaderDragOverlay.js +35 -0
- package/components/table/render/header/TableHeaderDragOverlay.js.map +1 -0
- package/components/table/render/header/TableHeaderSection.d.ts +3 -0
- package/components/table/render/header/TableHeaderSection.js +104 -0
- package/components/table/render/header/TableHeaderSection.js.map +1 -0
- package/components/table/render/header/TableHeaderSelectionCell.d.ts +9 -0
- package/components/table/render/header/TableHeaderSelectionCell.js +41 -0
- package/components/table/render/header/TableHeaderSelectionCell.js.map +1 -0
- package/components/table/render/header/TableStaticHeaderCell.d.ts +3 -0
- package/components/table/render/header/TableStaticHeaderCell.js +36 -0
- package/components/table/render/header/TableStaticHeaderCell.js.map +1 -0
- package/components/table/render/header/resolveAriaSort.d.ts +2 -0
- package/components/table/render/header/resolveAriaSort.js +8 -0
- package/components/table/render/header/resolveAriaSort.js.map +1 -0
- package/components/table/render/header/resolveColumnCollisionDetection.d.ts +2 -0
- package/components/table/render/header/resolveColumnCollisionDetection.js +9 -0
- package/components/table/render/header/resolveColumnCollisionDetection.js.map +1 -0
- package/components/table/render/header/resolveHeaderCellClassName.d.ts +10 -0
- package/components/table/render/header/resolveHeaderCellClassName.js +22 -0
- package/components/table/render/header/resolveHeaderCellClassName.js.map +1 -0
- package/components/table/render/header/resolveHeaderCellStyle.d.ts +829 -0
- package/components/table/render/header/resolveHeaderCellStyle.js +9 -0
- package/components/table/render/header/resolveHeaderCellStyle.js.map +1 -0
- package/components/table/selection/useTableSelection.d.ts +82 -0
- package/components/table/selection/useTableSelection.js +35 -0
- package/components/table/selection/useTableSelection.js.map +1 -0
- package/components/table/settings/TableColumnsDropdown.d.ts +90 -0
- package/components/table/settings/TableColumnsDropdown.js +137 -0
- package/components/table/settings/TableColumnsDropdown.js.map +1 -0
- package/components/table/settings/TableColumnsDropdownItem.d.ts +8 -0
- package/components/table/settings/TableColumnsDropdownItem.js +66 -0
- package/components/table/settings/TableColumnsDropdownItem.js.map +1 -0
- package/components/table/shared/getAlignClassName.d.ts +3 -0
- package/components/table/shared/getAlignClassName.js +6 -0
- package/components/table/shared/getAlignClassName.js.map +1 -0
- package/components/table/shared/getInteractiveRowProps.d.ts +14 -0
- package/components/table/shared/getInteractiveRowProps.js +15 -0
- package/components/table/shared/getInteractiveRowProps.js.map +1 -0
- package/components/table/shared/resolveTableAria.d.ts +2 -0
- package/components/table/shared/resolveTableAria.js +6 -0
- package/components/table/shared/resolveTableAria.js.map +1 -0
- package/components/table/tableSizing.constants.d.ts +4 -0
- package/components/table/tableSizing.constants.js +8 -0
- package/components/table/tableSizing.constants.js.map +1 -0
- package/components/teaser/TeaserContainer.js +3 -3
- package/components/teaser/TeaserContainer.js.map +1 -1
- package/components/virtualList/VirtualList.js +16 -13
- package/components/virtualList/VirtualList.js.map +1 -1
- package/googleAnalyticsUtils.d.ts +1 -0
- package/googleAnalyticsUtils.js +9 -0
- package/googleAnalyticsUtils.js.map +1 -0
- package/hooks/useCookies.js +17 -17
- package/hooks/useCookies.js.map +1 -1
- package/hooks/useDraggableElement.d.ts +35 -0
- package/hooks/useDraggableElement.js +49 -0
- package/hooks/useDraggableElement.js.map +1 -0
- package/hooks/useElapsedTime.js +4 -4
- package/hooks/useElapsedTime.js.map +1 -1
- package/hooks/useLocationSuggestions.js +13 -10
- package/hooks/useLocationSuggestions.js.map +1 -1
- package/hooks/useMergeRefs.js +12 -12
- package/hooks/useMergeRefs.js.map +1 -1
- package/hooks/usePrevious.d.ts +1 -1
- package/hooks/usePrevious.js.map +1 -1
- package/hooks/useResizeObserver.js +25 -10
- package/hooks/useResizeObserver.js.map +1 -1
- package/hooks/useRioCookieConsent.js +7 -4
- package/hooks/useRioCookieConsent.js.map +1 -1
- package/hooks/useSorting.js +10 -10
- package/hooks/useSorting.js.map +1 -1
- package/hooks/useStorage.js +12 -12
- package/hooks/useStorage.js.map +1 -1
- package/hooks/useSum.js +10 -7
- package/hooks/useSum.js.map +1 -1
- package/hooks/useTableSelection.js.map +1 -1
- package/hooks/useTimeout.js +6 -3
- package/hooks/useTimeout.js.map +1 -1
- package/package.json +3 -3
- package/routeUtils.js +12 -10
- package/utils/analytics/analyticsAnalysisUtils.d.ts +27 -0
- package/utils/analytics/analyticsAnalysisUtils.js +161 -0
- package/utils/analytics/analyticsAnalysisUtils.js.map +1 -0
- package/utils/analytics/autoTracking.d.ts +14 -0
- package/utils/analytics/autoTracking.js +19 -0
- package/utils/analytics/autoTracking.js.map +1 -0
- package/utils/analytics/createAnalyticsOverlayTooltip.d.ts +36 -0
- package/utils/analytics/createAnalyticsOverlayTooltip.js +203 -0
- package/utils/analytics/createAnalyticsOverlayTooltip.js.map +1 -0
- package/utils/analytics/googleAnalyticsUtils.d.ts +37 -0
- package/utils/analytics/googleAnalyticsUtils.js +37 -0
- package/utils/analytics/googleAnalyticsUtils.js.map +1 -0
- package/utils/analytics/logAnalyticsOverlayUnmatchedEntries.d.ts +8 -0
- package/utils/analytics/logAnalyticsOverlayUnmatchedEntries.js +61 -0
- package/utils/analytics/logAnalyticsOverlayUnmatchedEntries.js.map +1 -0
- package/utils/analytics/useAnalyticsOverlayDom.d.ts +11 -0
- package/utils/analytics/useAnalyticsOverlayDom.js +120 -0
- package/utils/analytics/useAnalyticsOverlayDom.js.map +1 -0
- package/utils/arrayMove.js +11 -0
- package/utils/arrayMove.js.map +1 -0
- package/utils/cssuseragent.js +2 -2
- package/utils/cssuseragent.js.map +1 -1
- package/utils/deviceUtils.js.map +1 -1
- package/utils/formatUtils.js.map +1 -1
- package/utils/hasUtilityClass.js +3 -3
- package/utils/hasUtilityClass.js.map +1 -1
- package/utils/hidePiiData.js.map +1 -1
- package/utils/init/checkForReleaseVersion.js +4 -4
- package/utils/init/checkForReleaseVersion.js.map +1 -1
- package/utils/init/styledLogs.js.map +1 -1
- package/utils/mergeRefs.js +3 -3
- package/utils/mergeRefs.js.map +1 -1
- package/utils/routeUtils.d.ts +32 -1
- package/utils/routeUtils.js +85 -67
- package/utils/routeUtils.js.map +1 -1
- package/utils/storageUtils.js +9 -9
- package/utils/storageUtils.js.map +1 -1
- package/version.d.ts +1 -1
- package/version.js +2 -2
- package/version.js.map +1 -1
- package/components/table/TableCol.js.map +0 -1
- package/components/table/TableHead.js.map +0 -1
- package/components/table/TableSettingsColumnButtons.js +0 -45
- package/components/table/TableSettingsColumnButtons.js.map +0 -1
- package/components/table/TableSettingsColumnDetails.js.map +0 -1
- package/components/table/TableSettingsDialog.js +0 -208
- package/components/table/TableSettingsDialog.js.map +0 -1
- package/components/table/TableSettingsDialogFooter.js.map +0 -1
- package/components/table/TableSettingsListContainer.js.map +0 -1
- package/components/table/TableSettingsListItem.js +0 -96
- package/components/table/TableSettingsListItem.js.map +0 -1
- /package/components/table/{TableCol.d.ts → native/TableCol.d.ts} +0 -0
- /package/components/table/{TableCol.js → native/TableCol.js} +0 -0
- /package/components/table/{TableHead.d.ts → native/TableHead.d.ts} +0 -0
- /package/components/table/{TableSettingsColumnButtons.d.ts → native/TableSettingsColumnButtons.d.ts} +0 -0
- /package/components/table/{TableSettingsColumnDetails.d.ts → native/TableSettingsColumnDetails.d.ts} +0 -0
- /package/components/table/{TableSettingsDialogFooter.d.ts → native/TableSettingsDialogFooter.d.ts} +0 -0
- /package/components/table/{TableSettingsListContainer.d.ts → native/TableSettingsListContainer.d.ts} +0 -0
- /package/components/table/{TableSettingsListContainer.js → native/TableSettingsListContainer.js} +0 -0
- /package/components/table/{TableSettingsListItem.d.ts → native/TableSettingsListItem.d.ts} +0 -0
|
@@ -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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"}
|
package/components/table/{TableSettingsDialogFooter.js → native/TableSettingsDialogFooter.js}
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsxs as t, jsx as n } from "react/jsx-runtime";
|
|
2
|
-
import y from "
|
|
3
|
-
import e from "
|
|
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,13 @@
|
|
|
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
|
|
@@ -0,0 +1 @@
|
|
|
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;"}
|
|
@@ -0,0 +1,81 @@
|
|
|
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
|
|
@@ -0,0 +1 @@
|
|
|
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;"}
|
|
@@ -0,0 +1,3 @@
|
|
|
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;
|
|
@@ -0,0 +1,39 @@
|
|
|
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
|
|
@@ -0,0 +1 @@
|
|
|
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;"}
|
|
@@ -0,0 +1,4 @@
|
|
|
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;
|
|
@@ -0,0 +1,89 @@
|
|
|
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
|
|
@@ -0,0 +1 @@
|
|
|
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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"}
|
|
@@ -0,0 +1,3 @@
|
|
|
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>[];
|