@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.
- package/AnalyticsAnalysisOverlay.d.ts +1 -0
- package/AnalyticsAnalysisOverlay.js +5 -0
- package/AnalyticsAnalysisOverlay.js.map +1 -0
- package/DayPicker.js +6 -2
- package/DayPicker.js.map +1 -1
- package/DayPickerCalendar.d.ts +2 -0
- package/DayPickerCalendar.js +5 -0
- package/DayPickerCalendar.js.map +1 -0
- package/DayPickerPrototype.d.ts +2 -0
- package/DayPickerPrototype.js +5 -0
- package/DayPickerPrototype.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/TableNext.d.ts +2 -0
- package/TableNext.js +23 -0
- package/TableNext.js.map +1 -0
- package/TableSettingsDialog.d.ts +2 -2
- package/TableSettingsDialog.js +1 -1
- package/TableToolbar.js +4 -2
- package/TableToolbar.js.map +1 -1
- 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/Tree.js +13 -13
- 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/charts/Area.d.ts +5 -3
- package/components/charts/Area.js +4 -3
- package/components/charts/Area.js.map +1 -1
- package/components/charts/AreaChart.js.map +1 -1
- package/components/charts/ComposedChart.js.map +1 -1
- package/components/checkbox/Checkbox.js +18 -17
- package/components/checkbox/Checkbox.js.map +1 -1
- package/components/clearableInput/ClearableInput.d.ts +30 -0
- package/components/clearableInput/ClearableInput.js +81 -78
- package/components/clearableInput/ClearableInput.js.map +1 -1
- package/components/datepicker/DateRangePicker.js +0 -2
- package/components/datepicker/DateRangePicker.js.map +1 -1
- package/components/datepicker/DayPicker.d.ts +4 -51
- package/components/datepicker/DayPicker.js +264 -256
- package/components/datepicker/DayPicker.js.map +1 -1
- package/components/datepicker/DayPickerCalendar.d.ts +4 -0
- package/components/datepicker/DayPickerCalendar.js +129 -0
- package/components/datepicker/DayPickerCalendar.js.map +1 -0
- package/components/datepicker/DayPickerDropdown.d.ts +18 -0
- package/components/datepicker/DayPickerDropdown.js +75 -0
- package/components/datepicker/DayPickerDropdown.js.map +1 -0
- package/components/datepicker/DayPickerDropdownFooter.d.ts +7 -0
- package/components/datepicker/DayPickerDropdownFooter.js +7 -0
- package/components/datepicker/DayPickerDropdownFooter.js.map +1 -0
- package/components/datepicker/DayPickerDropdownSidebar.d.ts +8 -0
- package/components/datepicker/DayPickerDropdownSidebar.js +7 -0
- package/components/datepicker/DayPickerDropdownSidebar.js.map +1 -0
- package/components/datepicker/DayPickerInput.d.ts +28 -0
- package/components/datepicker/DayPickerInput.js +65 -0
- package/components/datepicker/DayPickerInput.js.map +1 -0
- package/components/datepicker/DayPickerPrototype.d.ts +53 -0
- package/components/datepicker/DayPickerPrototype.js +285 -0
- package/components/datepicker/DayPickerPrototype.js.map +1 -0
- package/components/datepicker/dayPickerRangeSelectionUtils.d.ts +15 -0
- package/components/datepicker/dayPickerRangeSelectionUtils.js +31 -0
- package/components/datepicker/dayPickerRangeSelectionUtils.js.map +1 -0
- package/components/datepicker/dayPickerTypes.d.ts +517 -0
- package/components/datepicker/dayPickerTypes.js +7 -0
- package/components/datepicker/dayPickerTypes.js.map +1 -0
- package/components/datepicker/dayPickerUtils.d.ts +10 -0
- package/components/datepicker/dayPickerUtils.js +92 -0
- package/components/datepicker/dayPickerUtils.js.map +1 -0
- package/components/datepicker/useDayPickerInputState.d.ts +32 -0
- package/components/datepicker/useDayPickerInputState.js +85 -0
- package/components/datepicker/useDayPickerInputState.js.map +1 -0
- package/components/datepicker/useStackedDayPickerCalendars.d.ts +5 -0
- package/components/datepicker/useStackedDayPickerCalendars.js +39 -0
- package/components/datepicker/useStackedDayPickerCalendars.js.map +1 -0
- 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/divider/Divider.js +6 -6
- package/components/dropdown/ButtonDropdown.d.ts +4 -0
- package/components/dropdown/ButtonDropdown.js +70 -68
- package/components/dropdown/ButtonDropdown.js.map +1 -1
- package/components/dropdown/DropdownToggleButton.d.ts +1 -0
- package/components/dropdown/DropdownToggleButton.js +17 -15
- package/components/dropdown/DropdownToggleButton.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 +17 -20
- 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/loadMore/LoadMoreProgress.js +6 -7
- package/components/map/components/Map.js +3 -3
- 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/map/utils/rendering.js +5 -5
- 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 +3 -3
- package/components/popover/Popover.js.map +1 -1
- package/components/radiobutton/RadioCardGroup.js +3 -3
- package/components/resizer/Resizer.js +6 -3
- package/components/resizer/Resizer.js.map +1 -1
- package/components/rioglyph/RioglyphIconType.d.ts +1 -1
- package/components/selects/BaseSelectDropdown.js +34 -32
- package/components/selects/BaseSelectDropdown.js.map +1 -1
- package/components/selects/Multiselect.d.ts +6 -0
- package/components/selects/Multiselect.js +164 -150
- package/components/selects/Multiselect.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/selects/Select.js +39 -37
- package/components/selects/Select.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 +46 -0
- package/components/table/Table.js +256 -0
- package/components/table/Table.js.map +1 -0
- package/components/table/Table.types.d.ts +379 -0
- package/components/table/TableBody.d.ts +70 -0
- package/components/table/TableBody.js +135 -0
- package/components/table/TableBody.js.map +1 -0
- package/components/table/TableCardsSorting.js +25 -32
- package/components/table/TableCardsSorting.js.map +1 -1
- package/components/table/TableColumn.d.ts +55 -0
- package/components/table/TableColumn.js +115 -0
- package/components/table/TableColumn.js.map +1 -0
- package/components/table/TableExpandedContentRow.d.ts +22 -0
- package/components/table/TableExpandedContentRow.js +110 -0
- package/components/table/TableExpandedContentRow.js.map +1 -0
- package/components/table/TableExpandedRow.d.ts +22 -0
- package/components/table/TableExpandedRow.js +150 -0
- package/components/table/TableExpandedRow.js.map +1 -0
- package/components/table/TableExpanderButton.d.ts +25 -0
- package/components/table/TableExpanderButton.js +24 -0
- package/components/table/TableExpanderButton.js.map +1 -0
- package/components/table/TableFooter.d.ts +17 -0
- package/components/table/TableFooter.js +52 -0
- package/components/table/TableFooter.js.map +1 -0
- package/components/table/TableGroupFooterRow.d.ts +18 -0
- package/components/table/TableGroupFooterRow.js +30 -0
- package/components/table/TableGroupFooterRow.js.map +1 -0
- package/components/table/TableGroupRow.d.ts +24 -0
- package/components/table/TableGroupRow.js +36 -0
- package/components/table/TableGroupRow.js.map +1 -0
- package/components/table/TableHeader.d.ts +14 -0
- package/components/table/TableHeader.js +107 -0
- package/components/table/TableHeader.js.map +1 -0
- package/components/table/TableHeaderColumn.d.ts +76 -0
- package/components/table/TableHeaderColumn.js +81 -0
- package/components/table/TableHeaderColumn.js.map +1 -0
- package/components/table/TableHeaderRow.d.ts +9 -0
- package/components/table/TableHeaderRow.js +14 -0
- package/components/table/TableHeaderRow.js.map +1 -0
- package/components/table/TableRow.d.ts +24 -0
- package/components/table/TableRow.js +111 -0
- package/components/table/TableRow.js.map +1 -0
- package/components/table/TableSpacerRow.d.ts +13 -0
- package/components/table/TableSpacerRow.js +29 -0
- package/components/table/TableSpacerRow.js.map +1 -0
- package/components/table/TableToolbar.d.ts +3 -0
- package/components/table/TableToolbar.js +49 -4
- package/components/table/TableToolbar.js.map +1 -1
- package/components/table/TableToolbarColumn.d.ts +31 -0
- package/components/table/TableToolbarColumn.js +33 -0
- package/components/table/TableToolbarColumn.js.map +1 -0
- package/components/table/TableViewToggles.d.ts +21 -3
- package/components/table/TableViewToggles.js +59 -87
- package/components/table/TableViewToggles.js.map +1 -1
- package/components/table/context/TableInteractionContext.d.ts +26 -0
- package/components/table/context/TableInteractionContext.js +7 -0
- package/components/table/context/TableInteractionContext.js.map +1 -0
- package/components/table/context/TableLayoutContext.d.ts +25 -0
- package/components/table/context/TableLayoutContext.js +7 -0
- package/components/table/context/TableLayoutContext.js.map +1 -0
- package/components/table/context/TableRenderConfigContext.d.ts +27 -0
- package/components/table/context/TableRenderConfigContext.js +7 -0
- package/components/table/context/TableRenderConfigContext.js.map +1 -0
- package/components/table/context/TableRenderContext.d.ts +85 -0
- package/components/table/context/TableRenderContext.js +7 -0
- package/components/table/context/TableRenderContext.js.map +1 -0
- package/components/table/context/TableStructureContext.d.ts +31 -0
- package/components/table/context/TableStructureContext.js +17 -0
- package/components/table/context/TableStructureContext.js.map +1 -0
- 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 +13 -0
- package/components/table/layout/useHorizontalSectionSync.js +43 -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 +15 -0
- package/components/table/layout/useResizableColumns.js +132 -0
- package/components/table/layout/useResizableColumns.js.map +1 -0
- package/components/table/layout/useTableBodyScrollBottom.d.ts +12 -0
- package/components/table/layout/useTableBodyScrollBottom.js +37 -0
- package/components/table/layout/useTableBodyScrollBottom.js.map +1 -0
- package/components/table/layout/useTableLayout.d.ts +36 -0
- package/components/table/layout/useTableLayout.js +59 -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/resolveRowMeta.d.ts +3 -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 +47 -0
- package/components/table/model/resolveTableClassConfig.js +64 -0
- package/components/table/model/resolveTableClassConfig.js.map +1 -0
- package/components/table/model/tableView.types.d.ts +41 -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/render/body/TableBodyContent.d.ts +21 -0
- package/components/table/render/body/TableBodyContent.js +52 -0
- package/components/table/render/body/TableBodyContent.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/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/header/TableBatchDropdown.d.ts +13 -0
- package/components/table/render/header/TableBatchDropdown.js +30 -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 +72 -0
- package/components/table/render/header/TableColumnFilter.js.map +1 -0
- package/components/table/render/header/TableDraggableHeaderCell.d.ts +4 -0
- package/components/table/render/header/TableDraggableHeaderCell.js +64 -0
- package/components/table/render/header/TableDraggableHeaderCell.js.map +1 -0
- package/components/table/render/header/TableHeader.types.d.ts +37 -0
- package/components/table/render/header/TableHeaderCellContent.d.ts +4 -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 +4 -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 +14 -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/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 +4 -0
- package/components/table/render/header/TableStaticHeaderCell.js +48 -0
- package/components/table/render/header/TableStaticHeaderCell.js.map +1 -0
- package/components/table/render/header/resolveAriaSort.d.ts +3 -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 +12 -0
- package/components/table/render/header/resolveHeaderCellClassName.js +23 -0
- package/components/table/render/header/resolveHeaderCellClassName.js.map +1 -0
- package/components/table/render/header/resolveHeaderCellStyle.d.ts +830 -0
- package/components/table/render/header/resolveHeaderCellStyle.js +9 -0
- package/components/table/render/header/resolveHeaderCellStyle.js.map +1 -0
- package/components/table/runtime/shouldAnimateBodyRows.d.ts +17 -0
- package/components/table/runtime/shouldAnimateBodyRows.js +5 -0
- package/components/table/runtime/shouldAnimateBodyRows.js.map +1 -0
- package/components/table/runtime/useRenderDraftState.d.ts +14 -0
- package/components/table/runtime/useRenderDraftState.js +80 -0
- package/components/table/runtime/useRenderDraftState.js.map +1 -0
- package/components/table/runtime/useResolvedRenderColumns.d.ts +43 -0
- package/components/table/runtime/useResolvedRenderColumns.js +113 -0
- package/components/table/runtime/useResolvedRenderColumns.js.map +1 -0
- package/components/table/runtime/useResolvedRenderHeader.d.ts +27 -0
- package/components/table/runtime/useResolvedRenderHeader.js +67 -0
- package/components/table/runtime/useResolvedRenderHeader.js.map +1 -0
- package/components/table/selection/useInternalTableSelectionState.d.ts +17 -0
- package/components/table/selection/useInternalTableSelectionState.js +28 -0
- package/components/table/selection/useInternalTableSelectionState.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/getCellContentOverflowClassName.d.ts +3 -0
- package/components/table/shared/getCellContentOverflowClassName.js +18 -0
- package/components/table/shared/getCellContentOverflowClassName.js.map +1 -0
- package/components/table/shared/getInteractiveRowProps.d.ts +15 -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/hooks/useUrlState.js +3 -3
- package/package.json +17 -18
- 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 +37 -3
- package/utils/routeUtils.js +88 -70
- 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,70 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { TableHtmlAttributes } from './Table.types';
|
|
3
|
+
export type TableBodyProps = TableHtmlAttributes & {
|
|
4
|
+
/**
|
|
5
|
+
* Body sections are expected to render row components such as `TableRow`,
|
|
6
|
+
* `TableExpandedRow`, `TableExpandedContentRow`, `TableGroupRow`,
|
|
7
|
+
* `TableGroupFooterRow`, or `TableSpacerRow`.
|
|
8
|
+
*
|
|
9
|
+
* Rows may be wrapped by custom React components, but direct `TableColumn`
|
|
10
|
+
* children of `TableBody` are not supported.
|
|
11
|
+
*/
|
|
12
|
+
children?: ReactNode;
|
|
13
|
+
/**
|
|
14
|
+
* Optional max height of rendered table body.
|
|
15
|
+
* Enables vertical scrolling inside the body.
|
|
16
|
+
*/
|
|
17
|
+
maxHeight?: number | string;
|
|
18
|
+
/**
|
|
19
|
+
* Called when the scrollable table body reaches the bottom threshold.
|
|
20
|
+
*
|
|
21
|
+
* This is useful for progressive loading patterns such as appending the next
|
|
22
|
+
* chunk of rows when the user scrolls to the end of the body.
|
|
23
|
+
*/
|
|
24
|
+
onScrollBottom?: () => void;
|
|
25
|
+
/**
|
|
26
|
+
* Distance in pixels from the bottom at which `onScrollBottom` should fire.
|
|
27
|
+
*
|
|
28
|
+
* Set this to `0` to only trigger when the body is scrolled fully to the end.
|
|
29
|
+
*
|
|
30
|
+
* @default 0
|
|
31
|
+
*/
|
|
32
|
+
scrollBottomOffset?: number;
|
|
33
|
+
};
|
|
34
|
+
export type TableBodyHandle = {
|
|
35
|
+
scrollToTop: () => void;
|
|
36
|
+
scrollTo: (options: ScrollToOptions) => void;
|
|
37
|
+
getScrollElement: () => HTMLDivElement | null;
|
|
38
|
+
};
|
|
39
|
+
declare const _default: import('react').ForwardRefExoticComponent<TableHtmlAttributes & {
|
|
40
|
+
/**
|
|
41
|
+
* Body sections are expected to render row components such as `TableRow`,
|
|
42
|
+
* `TableExpandedRow`, `TableExpandedContentRow`, `TableGroupRow`,
|
|
43
|
+
* `TableGroupFooterRow`, or `TableSpacerRow`.
|
|
44
|
+
*
|
|
45
|
+
* Rows may be wrapped by custom React components, but direct `TableColumn`
|
|
46
|
+
* children of `TableBody` are not supported.
|
|
47
|
+
*/
|
|
48
|
+
children?: ReactNode;
|
|
49
|
+
/**
|
|
50
|
+
* Optional max height of rendered table body.
|
|
51
|
+
* Enables vertical scrolling inside the body.
|
|
52
|
+
*/
|
|
53
|
+
maxHeight?: number | string;
|
|
54
|
+
/**
|
|
55
|
+
* Called when the scrollable table body reaches the bottom threshold.
|
|
56
|
+
*
|
|
57
|
+
* This is useful for progressive loading patterns such as appending the next
|
|
58
|
+
* chunk of rows when the user scrolls to the end of the body.
|
|
59
|
+
*/
|
|
60
|
+
onScrollBottom?: () => void;
|
|
61
|
+
/**
|
|
62
|
+
* Distance in pixels from the bottom at which `onScrollBottom` should fire.
|
|
63
|
+
*
|
|
64
|
+
* Set this to `0` to only trigger when the body is scrolled fully to the end.
|
|
65
|
+
*
|
|
66
|
+
* @default 0
|
|
67
|
+
*/
|
|
68
|
+
scrollBottomOffset?: number;
|
|
69
|
+
} & import('react').RefAttributes<TableBodyHandle>>;
|
|
70
|
+
export default _default;
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
import { jsx as l, jsxs as j } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as D, Children as L, useRef as h, useState as q, useCallback as z, useImperativeHandle as $ } from "react";
|
|
3
|
+
import G from "../smoothScrollbars/SmoothScrollbars.js";
|
|
4
|
+
import J from "../virtualList/useVirtualListResizeObserver.js";
|
|
5
|
+
import { toCssSize as K } from "./layout/columnSizing.js";
|
|
6
|
+
import Q from "./layout/useTableBodyScrollBottom.js";
|
|
7
|
+
import U from "./layout/useTableVirtualization.js";
|
|
8
|
+
import { shouldAnimateBodyRows as W } from "./runtime/shouldAnimateBodyRows.js";
|
|
9
|
+
import H from "./render/body/TableBodyContent.js";
|
|
10
|
+
import { useOptionalTableInteractionContext as X } from "./context/TableInteractionContext.js";
|
|
11
|
+
import { useOptionalTableLayoutContext as Y } from "./context/TableLayoutContext.js";
|
|
12
|
+
import { useOptionalTableRenderConfigContext as Z } from "./context/TableRenderConfigContext.js";
|
|
13
|
+
import { TableSectionContext as _, TableBodyContext as oo } from "./context/TableStructureContext.js";
|
|
14
|
+
import { useOptionalTableRenderContext as eo, TableRenderContext as to } from "./context/TableRenderContext.js";
|
|
15
|
+
const ro = (s) => {
|
|
16
|
+
if (!s)
|
|
17
|
+
return;
|
|
18
|
+
const i = Number.parseFloat(s);
|
|
19
|
+
return Number.isNaN(i) ? void 0 : i;
|
|
20
|
+
}, no = (s, i) => {
|
|
21
|
+
const { children: b, maxHeight: O, onScrollBottom: d, scrollBottomOffset: P = 0, ...w } = s, t = Z(), o = eo(), R = X(), f = Y(), x = !!o && o.columns.length > 0, C = L.toArray(b).length > 0, c = h(0), m = h(null), y = h(null), [a, V] = q(null);
|
|
22
|
+
c.current = 0;
|
|
23
|
+
const r = K(O), k = ro(r), g = x && t?.virtualizedRows === !0 && !!r, E = (o?.bodyRows.length ?? 0) > 0, n = z(
|
|
24
|
+
() => a?.view ?? y.current?.view ?? null,
|
|
25
|
+
[a?.view]
|
|
26
|
+
), I = z((e) => {
|
|
27
|
+
y.current = e, V(
|
|
28
|
+
(A) => A?.view === e?.view ? A : e
|
|
29
|
+
);
|
|
30
|
+
}, []);
|
|
31
|
+
$(
|
|
32
|
+
i,
|
|
33
|
+
() => ({
|
|
34
|
+
scrollToTop: () => {
|
|
35
|
+
n()?.scrollTo({ top: 0 }), requestAnimationFrame(() => {
|
|
36
|
+
n()?.scrollTo({ top: 0 });
|
|
37
|
+
});
|
|
38
|
+
},
|
|
39
|
+
scrollTo: (e) => {
|
|
40
|
+
n()?.scrollTo(e);
|
|
41
|
+
},
|
|
42
|
+
getScrollElement: n
|
|
43
|
+
}),
|
|
44
|
+
[n]
|
|
45
|
+
);
|
|
46
|
+
const { isVirtualized: u, measureRow: N, paddingBottom: v, paddingTop: T, virtualRows: p } = U({
|
|
47
|
+
enabled: g && E,
|
|
48
|
+
overscan: t?.virtualizationOverscan ?? 0,
|
|
49
|
+
rows: o?.bodyRows ?? [],
|
|
50
|
+
scrollContainer: a,
|
|
51
|
+
viewportHeightFallback: k
|
|
52
|
+
});
|
|
53
|
+
J(m, N, [u, p]);
|
|
54
|
+
const { handleScrollBottom: F } = Q({
|
|
55
|
+
enabled: !!r && !!d,
|
|
56
|
+
itemCount: o?.bodyRows.length ?? 0,
|
|
57
|
+
onScrollBottom: d,
|
|
58
|
+
scrollBottomOffset: P,
|
|
59
|
+
scrollElement: a?.view
|
|
60
|
+
});
|
|
61
|
+
if (!t || !o || !R || !f || !x)
|
|
62
|
+
return null;
|
|
63
|
+
const B = o.columns.length + (R.showSelectionColumn ? 1 : 0), S = W({
|
|
64
|
+
rowAnimationProps: t.rowAnimationProps,
|
|
65
|
+
expandedRowAnimation: t.expandedRowAnimation,
|
|
66
|
+
hasExpandableRows: o.hasExpandableRows,
|
|
67
|
+
hasExpandedRows: o.bodyRows.some(
|
|
68
|
+
(e) => e.kind === "expanded" || e.kind === "expanded-full-width"
|
|
69
|
+
)
|
|
70
|
+
});
|
|
71
|
+
o.renderDraft.bodyMaxHeight = r;
|
|
72
|
+
const M = /* @__PURE__ */ l(to.Provider, { value: { ...o, isRegisteringBodyRows: !0 }, children: b });
|
|
73
|
+
return /* @__PURE__ */ l(_.Provider, { value: "body", children: /* @__PURE__ */ j(
|
|
74
|
+
oo.Provider,
|
|
75
|
+
{
|
|
76
|
+
value: {
|
|
77
|
+
nextRowIndex: () => {
|
|
78
|
+
const e = c.current;
|
|
79
|
+
return c.current += 1, e;
|
|
80
|
+
}
|
|
81
|
+
},
|
|
82
|
+
children: [
|
|
83
|
+
M,
|
|
84
|
+
r ? /* @__PURE__ */ l(
|
|
85
|
+
G,
|
|
86
|
+
{
|
|
87
|
+
className: "table-body-scroll-wrapper",
|
|
88
|
+
autoHeight: !0,
|
|
89
|
+
autoHeightMax: r,
|
|
90
|
+
onScroll: (e) => {
|
|
91
|
+
f.handleBodyScroll?.(e), F(e?.currentTarget);
|
|
92
|
+
},
|
|
93
|
+
role: "presentation",
|
|
94
|
+
ref: g || d ? I : void 0,
|
|
95
|
+
children: /* @__PURE__ */ l(
|
|
96
|
+
H,
|
|
97
|
+
{
|
|
98
|
+
columnCount: B,
|
|
99
|
+
hasDeclaredChildren: C,
|
|
100
|
+
htmlAttributes: w,
|
|
101
|
+
shouldAnimateBodyRows: S,
|
|
102
|
+
isVirtualized: u,
|
|
103
|
+
itemsRef: m,
|
|
104
|
+
paddingBottom: v,
|
|
105
|
+
paddingTop: T,
|
|
106
|
+
renderConfigContext: t,
|
|
107
|
+
renderContext: o,
|
|
108
|
+
virtualRows: p
|
|
109
|
+
}
|
|
110
|
+
)
|
|
111
|
+
}
|
|
112
|
+
) : /* @__PURE__ */ l(
|
|
113
|
+
H,
|
|
114
|
+
{
|
|
115
|
+
columnCount: B,
|
|
116
|
+
hasDeclaredChildren: C,
|
|
117
|
+
htmlAttributes: w,
|
|
118
|
+
shouldAnimateBodyRows: S,
|
|
119
|
+
isVirtualized: u,
|
|
120
|
+
itemsRef: m,
|
|
121
|
+
paddingBottom: v,
|
|
122
|
+
paddingTop: T,
|
|
123
|
+
renderConfigContext: t,
|
|
124
|
+
renderContext: o,
|
|
125
|
+
virtualRows: p
|
|
126
|
+
}
|
|
127
|
+
)
|
|
128
|
+
]
|
|
129
|
+
}
|
|
130
|
+
) });
|
|
131
|
+
}, Co = D(no);
|
|
132
|
+
export {
|
|
133
|
+
Co as default
|
|
134
|
+
};
|
|
135
|
+
//# sourceMappingURL=TableBody.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableBody.js","sources":["../../../src/components/table/TableBody.tsx"],"sourcesContent":["import {\n Children,\n forwardRef,\n useCallback,\n useImperativeHandle,\n useRef,\n useState,\n type ForwardedRef,\n type ReactNode,\n} from 'react';\n\nimport SmoothScrollbars from '../smoothScrollbars/SmoothScrollbars';\nimport useVirtualListResizeObserver from '../virtualList/useVirtualListResizeObserver';\nimport type { TableHtmlAttributes } from './Table.types';\nimport { toCssSize } from './layout/columnSizing';\nimport useTableBodyScrollBottom from './layout/useTableBodyScrollBottom';\nimport useTableVirtualization from './layout/useTableVirtualization';\nimport { shouldAnimateBodyRows as resolveShouldAnimateBodyRows } from './runtime/shouldAnimateBodyRows';\nimport TableBodyContent from './render/body/TableBodyContent';\nimport { useOptionalTableInteractionContext } from './context/TableInteractionContext';\nimport { useOptionalTableLayoutContext } from './context/TableLayoutContext';\nimport { useOptionalTableRenderConfigContext } from './context/TableRenderConfigContext';\nimport { TableBodyContext, TableSectionContext } from './context/TableStructureContext';\nimport { TableRenderContext, useOptionalTableRenderContext } from './context/TableRenderContext';\n\ntype TableVirtualScrollContainer = {\n view?: HTMLDivElement | null;\n};\n\nconst parsePixelSize = (value?: string): number | undefined => {\n if (!value) {\n return;\n }\n\n const parsedValue = Number.parseFloat(value);\n return Number.isNaN(parsedValue) ? undefined : parsedValue;\n};\n\nexport type TableBodyProps = TableHtmlAttributes & {\n /**\n * Body sections are expected to render row components such as `TableRow`,\n * `TableExpandedRow`, `TableExpandedContentRow`, `TableGroupRow`,\n * `TableGroupFooterRow`, or `TableSpacerRow`.\n *\n * Rows may be wrapped by custom React components, but direct `TableColumn`\n * children of `TableBody` are not supported.\n */\n children?: ReactNode;\n\n /**\n * Optional max height of rendered table body.\n * Enables vertical scrolling inside the body.\n */\n maxHeight?: number | string;\n\n /**\n * Called when the scrollable table body reaches the bottom threshold.\n *\n * This is useful for progressive loading patterns such as appending the next\n * chunk of rows when the user scrolls to the end of the body.\n */\n onScrollBottom?: () => void;\n\n /**\n * Distance in pixels from the bottom at which `onScrollBottom` should fire.\n *\n * Set this to `0` to only trigger when the body is scrolled fully to the end.\n *\n * @default 0\n */\n scrollBottomOffset?: number;\n};\n\nexport type TableBodyHandle = {\n scrollToTop: () => void;\n scrollTo: (options: ScrollToOptions) => void;\n getScrollElement: () => HTMLDivElement | null;\n};\n\nconst TableBody = (props: TableBodyProps, ref: ForwardedRef<TableBodyHandle>) => {\n const { children, maxHeight, onScrollBottom, scrollBottomOffset = 0, ...remainingProps } = props;\n\n const renderConfigContext = useOptionalTableRenderConfigContext();\n const renderContext = useOptionalTableRenderContext();\n const interactionContext = useOptionalTableInteractionContext();\n const layoutContext = useOptionalTableLayoutContext();\n\n const hasRenderColumns = !!renderContext && renderContext.columns.length > 0;\n\n const hasDeclaredChildren = Children.toArray(children).length > 0;\n\n const rowIndexRef = useRef(0);\n const itemsRef = useRef<HTMLDivElement>(null);\n const scrollbarsRef = useRef<TableVirtualScrollContainer | null>(null);\n\n const [scrollContainer, setScrollContainer] = useState<TableVirtualScrollContainer | null>(null);\n rowIndexRef.current = 0;\n\n const resolvedMaxHeight = toCssSize(maxHeight);\n\n const virtualViewportHeightFallback = parsePixelSize(resolvedMaxHeight);\n\n const shouldVirtualize = hasRenderColumns && renderConfigContext?.virtualizedRows === true && !!resolvedMaxHeight;\n const hasRenderBodyRows = (renderContext?.bodyRows.length ?? 0) > 0;\n\n const getScrollElement = useCallback(\n () => scrollContainer?.view ?? scrollbarsRef.current?.view ?? null,\n [scrollContainer?.view]\n );\n\n const handleScrollbarsRef = useCallback((instance: TableVirtualScrollContainer | null) => {\n scrollbarsRef.current = instance;\n setScrollContainer(previousContainer =>\n previousContainer?.view === instance?.view ? previousContainer : instance\n );\n }, []);\n\n useImperativeHandle(\n ref,\n () => ({\n scrollToTop: () => {\n getScrollElement()?.scrollTo({ top: 0 });\n\n requestAnimationFrame(() => {\n getScrollElement()?.scrollTo({ top: 0 });\n });\n },\n scrollTo: options => {\n getScrollElement()?.scrollTo(options);\n },\n getScrollElement,\n }),\n [getScrollElement]\n );\n\n const { isVirtualized, measureRow, paddingBottom, paddingTop, virtualRows } = useTableVirtualization({\n enabled: shouldVirtualize && hasRenderBodyRows,\n overscan: renderConfigContext?.virtualizationOverscan ?? 0,\n rows: renderContext?.bodyRows ?? [],\n scrollContainer,\n viewportHeightFallback: virtualViewportHeightFallback,\n });\n\n useVirtualListResizeObserver(itemsRef, measureRow, [isVirtualized, virtualRows]);\n\n const { handleScrollBottom } = useTableBodyScrollBottom({\n enabled: !!resolvedMaxHeight && !!onScrollBottom,\n itemCount: renderContext?.bodyRows.length ?? 0,\n onScrollBottom,\n scrollBottomOffset,\n scrollElement: scrollContainer?.view,\n });\n\n if (!renderConfigContext || !renderContext || !interactionContext || !layoutContext || !hasRenderColumns) {\n return null;\n }\n\n const columnCount = renderContext.columns.length + (interactionContext.showSelectionColumn ? 1 : 0);\n\n const shouldAnimateBodyRows = resolveShouldAnimateBodyRows({\n rowAnimationProps: renderConfigContext.rowAnimationProps,\n expandedRowAnimation: renderConfigContext.expandedRowAnimation,\n hasExpandableRows: renderContext.hasExpandableRows,\n hasExpandedRows: renderContext.bodyRows.some(\n row => row.kind === 'expanded' || row.kind === 'expanded-full-width'\n ),\n });\n\n renderContext.renderDraft.bodyMaxHeight = resolvedMaxHeight;\n\n // First pass: execute the body children in \"register only\" mode so wrapped rows can\n // contribute normalized row metadata without rendering their DOM twice.\n const renderCollectionContent = (\n <TableRenderContext.Provider value={{ ...renderContext, isRegisteringBodyRows: true }}>\n {children}\n </TableRenderContext.Provider>\n );\n\n return (\n <TableSectionContext.Provider value='body'>\n <TableBodyContext.Provider\n value={{\n nextRowIndex: () => {\n const nextRowIndex = rowIndexRef.current;\n rowIndexRef.current += 1;\n return nextRowIndex;\n },\n }}\n >\n {renderCollectionContent}\n {/* Second pass: render the collected row draft state in one controlled place. */}\n {resolvedMaxHeight ? (\n <SmoothScrollbars\n className='table-body-scroll-wrapper'\n autoHeight\n autoHeightMax={resolvedMaxHeight}\n onScroll={event => {\n layoutContext.handleBodyScroll?.(event);\n handleScrollBottom(event?.currentTarget as HTMLDivElement | null);\n }}\n role='presentation'\n ref={shouldVirtualize || !!onScrollBottom ? handleScrollbarsRef : undefined}\n >\n <TableBodyContent\n columnCount={columnCount}\n hasDeclaredChildren={hasDeclaredChildren}\n htmlAttributes={remainingProps}\n shouldAnimateBodyRows={shouldAnimateBodyRows}\n isVirtualized={isVirtualized}\n itemsRef={itemsRef}\n paddingBottom={paddingBottom}\n paddingTop={paddingTop}\n renderConfigContext={renderConfigContext}\n renderContext={renderContext}\n virtualRows={virtualRows}\n />\n </SmoothScrollbars>\n ) : (\n <TableBodyContent\n columnCount={columnCount}\n hasDeclaredChildren={hasDeclaredChildren}\n htmlAttributes={remainingProps}\n shouldAnimateBodyRows={shouldAnimateBodyRows}\n isVirtualized={isVirtualized}\n itemsRef={itemsRef}\n paddingBottom={paddingBottom}\n paddingTop={paddingTop}\n renderConfigContext={renderConfigContext}\n renderContext={renderContext}\n virtualRows={virtualRows}\n />\n )}\n </TableBodyContext.Provider>\n </TableSectionContext.Provider>\n );\n};\n\nexport default forwardRef(TableBody);\n"],"names":["parsePixelSize","value","parsedValue","TableBody","props","ref","children","maxHeight","onScrollBottom","scrollBottomOffset","remainingProps","renderConfigContext","useOptionalTableRenderConfigContext","renderContext","useOptionalTableRenderContext","interactionContext","useOptionalTableInteractionContext","layoutContext","useOptionalTableLayoutContext","hasRenderColumns","hasDeclaredChildren","Children","rowIndexRef","useRef","itemsRef","scrollbarsRef","scrollContainer","setScrollContainer","useState","resolvedMaxHeight","toCssSize","virtualViewportHeightFallback","shouldVirtualize","hasRenderBodyRows","getScrollElement","useCallback","handleScrollbarsRef","instance","previousContainer","useImperativeHandle","options","isVirtualized","measureRow","paddingBottom","paddingTop","virtualRows","useTableVirtualization","useVirtualListResizeObserver","handleScrollBottom","useTableBodyScrollBottom","columnCount","shouldAnimateBodyRows","resolveShouldAnimateBodyRows","row","renderCollectionContent","jsx","TableRenderContext","TableSectionContext","jsxs","TableBodyContext","nextRowIndex","SmoothScrollbars","event","TableBodyContent","TableBodyComponent","forwardRef"],"mappings":";;;;;;;;;;;;;;AA6BA,MAAMA,KAAiB,CAACC,MAAuC;AAC3D,MAAI,CAACA;AACD;AAGJ,QAAMC,IAAc,OAAO,WAAWD,CAAK;AAC3C,SAAO,OAAO,MAAMC,CAAW,IAAI,SAAYA;AACnD,GA2CMC,KAAY,CAACC,GAAuBC,MAAuC;AAC7E,QAAM,EAAE,UAAAC,GAAU,WAAAC,GAAW,gBAAAC,GAAgB,oBAAAC,IAAqB,GAAG,GAAGC,MAAmBN,GAErFO,IAAsBC,EAAA,GACtBC,IAAgBC,GAAA,GAChBC,IAAqBC,EAAA,GACrBC,IAAgBC,EAAA,GAEhBC,IAAmB,CAAC,CAACN,KAAiBA,EAAc,QAAQ,SAAS,GAErEO,IAAsBC,EAAS,QAAQf,CAAQ,EAAE,SAAS,GAE1DgB,IAAcC,EAAO,CAAC,GACtBC,IAAWD,EAAuB,IAAI,GACtCE,IAAgBF,EAA2C,IAAI,GAE/D,CAACG,GAAiBC,CAAkB,IAAIC,EAA6C,IAAI;AAC/F,EAAAN,EAAY,UAAU;AAEtB,QAAMO,IAAoBC,EAAUvB,CAAS,GAEvCwB,IAAgC/B,GAAe6B,CAAiB,GAEhEG,IAAmBb,KAAoBR,GAAqB,oBAAoB,MAAQ,CAAC,CAACkB,GAC1FI,KAAqBpB,GAAe,SAAS,UAAU,KAAK,GAE5DqB,IAAmBC;AAAA,IACrB,MAAMT,GAAiB,QAAQD,EAAc,SAAS,QAAQ;AAAA,IAC9D,CAACC,GAAiB,IAAI;AAAA,EAAA,GAGpBU,IAAsBD,EAAY,CAACE,MAAiD;AACtF,IAAAZ,EAAc,UAAUY,GACxBV;AAAA,MAAmB,CAAAW,MACfA,GAAmB,SAASD,GAAU,OAAOC,IAAoBD;AAAA,IAAA;AAAA,EAEzE,GAAG,CAAA,CAAE;AAEL,EAAAE;AAAA,IACIlC;AAAA,IACA,OAAO;AAAA,MACH,aAAa,MAAM;AACf,QAAA6B,EAAA,GAAoB,SAAS,EAAE,KAAK,GAAG,GAEvC,sBAAsB,MAAM;AACxB,UAAAA,EAAA,GAAoB,SAAS,EAAE,KAAK,GAAG;AAAA,QAC3C,CAAC;AAAA,MACL;AAAA,MACA,UAAU,CAAAM,MAAW;AACjB,QAAAN,EAAA,GAAoB,SAASM,CAAO;AAAA,MACxC;AAAA,MACA,kBAAAN;AAAA,IAAA;AAAA,IAEJ,CAACA,CAAgB;AAAA,EAAA;AAGrB,QAAM,EAAE,eAAAO,GAAe,YAAAC,GAAY,eAAAC,GAAe,YAAAC,GAAY,aAAAC,EAAA,IAAgBC,EAAuB;AAAA,IACjG,SAASd,KAAoBC;AAAA,IAC7B,UAAUtB,GAAqB,0BAA0B;AAAA,IACzD,MAAME,GAAe,YAAY,CAAA;AAAA,IACjC,iBAAAa;AAAA,IACA,wBAAwBK;AAAA,EAAA,CAC3B;AAED,EAAAgB,EAA6BvB,GAAUkB,GAAY,CAACD,GAAeI,CAAW,CAAC;AAE/E,QAAM,EAAE,oBAAAG,EAAA,IAAuBC,EAAyB;AAAA,IACpD,SAAS,CAAC,CAACpB,KAAqB,CAAC,CAACrB;AAAA,IAClC,WAAWK,GAAe,SAAS,UAAU;AAAA,IAC7C,gBAAAL;AAAA,IACA,oBAAAC;AAAA,IACA,eAAeiB,GAAiB;AAAA,EAAA,CACnC;AAED,MAAI,CAACf,KAAuB,CAACE,KAAiB,CAACE,KAAsB,CAACE,KAAiB,CAACE;AACpF,WAAO;AAGX,QAAM+B,IAAcrC,EAAc,QAAQ,UAAUE,EAAmB,sBAAsB,IAAI,IAE3FoC,IAAwBC,EAA6B;AAAA,IACvD,mBAAmBzC,EAAoB;AAAA,IACvC,sBAAsBA,EAAoB;AAAA,IAC1C,mBAAmBE,EAAc;AAAA,IACjC,iBAAiBA,EAAc,SAAS;AAAA,MACpC,CAAAwC,MAAOA,EAAI,SAAS,cAAcA,EAAI,SAAS;AAAA,IAAA;AAAA,EACnD,CACH;AAED,EAAAxC,EAAc,YAAY,gBAAgBgB;AAI1C,QAAMyB,IACF,gBAAAC,EAACC,GAAmB,UAAnB,EAA4B,OAAO,EAAE,GAAG3C,GAAe,uBAAuB,GAAA,GAC1E,UAAAP,EAAA,CACL;AAGJ,SACI,gBAAAiD,EAACE,EAAoB,UAApB,EAA6B,OAAM,QAChC,UAAA,gBAAAC;AAAA,IAACC,GAAiB;AAAA,IAAjB;AAAA,MACG,OAAO;AAAA,QACH,cAAc,MAAM;AAChB,gBAAMC,IAAetC,EAAY;AACjC,iBAAAA,EAAY,WAAW,GAChBsC;AAAA,QACX;AAAA,MAAA;AAAA,MAGH,UAAA;AAAA,QAAAN;AAAA,QAEAzB,IACG,gBAAA0B;AAAA,UAACM;AAAA,UAAA;AAAA,YACG,WAAU;AAAA,YACV,YAAU;AAAA,YACV,eAAehC;AAAA,YACf,UAAU,CAAAiC,MAAS;AACf,cAAA7C,EAAc,mBAAmB6C,CAAK,GACtCd,EAAmBc,GAAO,aAAsC;AAAA,YACpE;AAAA,YACA,MAAK;AAAA,YACL,KAAK9B,KAAsBxB,IAAiB4B,IAAsB;AAAA,YAElE,UAAA,gBAAAmB;AAAA,cAACQ;AAAA,cAAA;AAAA,gBACG,aAAAb;AAAA,gBACA,qBAAA9B;AAAA,gBACA,gBAAgBV;AAAA,gBAAA,uBAChByC;AAAAA,gBACA,eAAAV;AAAA,gBACA,UAAAjB;AAAA,gBACA,eAAAmB;AAAA,gBACA,YAAAC;AAAA,gBACA,qBAAAjC;AAAA,gBACA,eAAAE;AAAA,gBACA,aAAAgC;AAAA,cAAA;AAAA,YAAA;AAAA,UACJ;AAAA,QAAA,IAGJ,gBAAAU;AAAA,UAACQ;AAAA,UAAA;AAAA,YACG,aAAAb;AAAA,YACA,qBAAA9B;AAAA,YACA,gBAAgBV;AAAA,YAAA,uBAChByC;AAAAA,YACA,eAAAV;AAAA,YACA,UAAAjB;AAAA,YACA,eAAAmB;AAAA,YACA,YAAAC;AAAA,YACA,qBAAAjC;AAAA,YACA,eAAAE;AAAA,YACA,aAAAgC;AAAA,UAAA;AAAA,QAAA;AAAA,MACJ;AAAA,IAAA;AAAA,EAAA,GAGZ;AAER,GAEAmB,KAAeC,EAAW9D,EAAS;"}
|
|
@@ -1,46 +1,39 @@
|
|
|
1
|
-
import { jsxs as
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
className:
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
}, h = (o) => {
|
|
17
|
-
N(o), a(o, r);
|
|
18
|
-
}, u = y("table-toolbar-cards-sorting", "btn-toolbar", e && e);
|
|
19
|
-
return /* @__PURE__ */ n("div", { className: u, children: [
|
|
20
|
-
/* @__PURE__ */ n("div", { className: "btn-group margin-left-0", children: [
|
|
21
|
-
/* @__PURE__ */ t(
|
|
22
|
-
i,
|
|
1
|
+
import { jsxs as l, jsx as s } from "react/jsx-runtime";
|
|
2
|
+
import { noop as g } from "es-toolkit/compat";
|
|
3
|
+
import b from "../../utils/classNames.js";
|
|
4
|
+
import h from "../selects/Select.js";
|
|
5
|
+
import c from "../button/ToggleButton.js";
|
|
6
|
+
const v = (i) => {
|
|
7
|
+
const { sortName: m, sortOrder: t = "asc", selectOptions: a, onSortChange: r = g, className: e } = i, n = (o) => {
|
|
8
|
+
r(m, o);
|
|
9
|
+
}, p = (o) => {
|
|
10
|
+
r(o, t);
|
|
11
|
+
}, d = b("table-toolbar-cards-sorting", "btn-toolbar", e && e);
|
|
12
|
+
return /* @__PURE__ */ l("div", { className: d, children: [
|
|
13
|
+
/* @__PURE__ */ l("div", { className: "btn-group margin-left-0", children: [
|
|
14
|
+
/* @__PURE__ */ s(
|
|
15
|
+
c,
|
|
23
16
|
{
|
|
24
17
|
className: "btn-icon-only",
|
|
25
|
-
active:
|
|
26
|
-
onClick: () =>
|
|
27
|
-
children: /* @__PURE__ */
|
|
18
|
+
active: t === "asc",
|
|
19
|
+
onClick: () => n("asc"),
|
|
20
|
+
children: /* @__PURE__ */ s("span", { className: "rioglyph rioglyph-sort-by-attributes-alt" })
|
|
28
21
|
}
|
|
29
22
|
),
|
|
30
|
-
/* @__PURE__ */
|
|
31
|
-
|
|
23
|
+
/* @__PURE__ */ s(
|
|
24
|
+
c,
|
|
32
25
|
{
|
|
33
26
|
className: "btn-icon-only",
|
|
34
|
-
active:
|
|
35
|
-
onClick: () =>
|
|
36
|
-
children: /* @__PURE__ */
|
|
27
|
+
active: t === "desc",
|
|
28
|
+
onClick: () => n("desc"),
|
|
29
|
+
children: /* @__PURE__ */ s("span", { className: "rioglyph rioglyph-sort-by-attributes" })
|
|
37
30
|
}
|
|
38
31
|
)
|
|
39
32
|
] }),
|
|
40
|
-
|
|
33
|
+
a.length && /* @__PURE__ */ s("div", { className: "btn-group", children: /* @__PURE__ */ s(h, { options: a, onChange: (o) => o && p(o.id) }) })
|
|
41
34
|
] });
|
|
42
35
|
};
|
|
43
36
|
export {
|
|
44
|
-
|
|
37
|
+
v as default
|
|
45
38
|
};
|
|
46
39
|
//# sourceMappingURL=TableCardsSorting.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TableCardsSorting.js","sources":["../../../src/components/table/TableCardsSorting.tsx"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"TableCardsSorting.js","sources":["../../../src/components/table/TableCardsSorting.tsx"],"sourcesContent":["import { noop } from 'es-toolkit/compat';\n\nimport classNames from '../../utils/classNames';\nimport Select from '../selects/Select';\nimport ToggleButton from '../button/ToggleButton';\n\ntype TableCardsSortingOption = {\n /**\n * ID to use for the select option.\n */\n id: string;\n\n /**\n * Translated column label to be shown in the select.\n */\n label: string | React.ReactNode;\n\n /**\n * Defines the column which is currently sorted by.\n */\n selected?: boolean;\n\n /**\n * Defines if the column can be sorted.\n *\n * Hence, it will be disabled in the select.\n */\n disabled?: boolean;\n};\n\nexport type TableCardsSortingProps = {\n /**\n * \"Name\", \"Key\", or \"Id\" of the current sorted column.\n */\n sortName: string;\n\n /**\n * Defines the sort direction.\n *\n * @default 'asc'\n */\n sortOrder: 'asc' | 'desc';\n\n /**\n * List of objects for the column name select component.\n */\n selectOptions: TableCardsSortingOption[];\n\n /**\n * Function that is called when the sort key or direction changes.\n *\n * @default noop\n */\n onSortChange?: (name: string, order: 'asc' | 'desc') => void;\n\n /**\n * Optional class names for the wrapper element.\n */\n className?: string;\n};\n\nconst TableCardsSorting = (props: TableCardsSortingProps) => {\n const { sortName, sortOrder = 'asc', selectOptions, onSortChange = noop, className } = props;\n\n const updateSortOrder = (newSortOrder: 'asc' | 'desc') => {\n onSortChange(sortName, newSortOrder);\n };\n\n const updateSortName = (newSortName: string) => {\n onSortChange(newSortName, sortOrder);\n };\n\n const wrapperClassNames = classNames('table-toolbar-cards-sorting', 'btn-toolbar', className && className);\n\n return (\n <div className={wrapperClassNames}>\n <div className='btn-group margin-left-0'>\n <ToggleButton\n className='btn-icon-only'\n active={sortOrder === 'asc'}\n onClick={() => updateSortOrder('asc')}\n >\n <span className='rioglyph rioglyph-sort-by-attributes-alt' />\n </ToggleButton>\n\n <ToggleButton\n className='btn-icon-only'\n active={sortOrder === 'desc'}\n onClick={() => updateSortOrder('desc')}\n >\n <span className='rioglyph rioglyph-sort-by-attributes' />\n </ToggleButton>\n </div>\n\n {selectOptions.length && (\n <div className='btn-group'>\n <Select options={selectOptions} onChange={item => item && updateSortName(item.id)} />\n </div>\n )}\n </div>\n );\n};\n\nexport default TableCardsSorting;\n"],"names":["TableCardsSorting","props","sortName","sortOrder","selectOptions","onSortChange","noop","className","updateSortOrder","newSortOrder","updateSortName","newSortName","wrapperClassNames","classNames","jsxs","jsx","ToggleButton","Select","item"],"mappings":";;;;;AA6DA,MAAMA,IAAoB,CAACC,MAAkC;AACzD,QAAM,EAAE,UAAAC,GAAU,WAAAC,IAAY,OAAO,eAAAC,GAAe,cAAAC,IAAeC,GAAM,WAAAC,MAAcN,GAEjFO,IAAkB,CAACC,MAAiC;AACtD,IAAAJ,EAAaH,GAAUO,CAAY;AAAA,EACvC,GAEMC,IAAiB,CAACC,MAAwB;AAC5C,IAAAN,EAAaM,GAAaR,CAAS;AAAA,EACvC,GAEMS,IAAoBC,EAAW,+BAA+B,eAAeN,KAAaA,CAAS;AAEzG,SACI,gBAAAO,EAAC,OAAA,EAAI,WAAWF,GACZ,UAAA;AAAA,IAAA,gBAAAE,EAAC,OAAA,EAAI,WAAU,2BACX,UAAA;AAAA,MAAA,gBAAAC;AAAA,QAACC;AAAA,QAAA;AAAA,UACG,WAAU;AAAA,UACV,QAAQb,MAAc;AAAA,UACtB,SAAS,MAAMK,EAAgB,KAAK;AAAA,UAEpC,UAAA,gBAAAO,EAAC,QAAA,EAAK,WAAU,2CAAA,CAA2C;AAAA,QAAA;AAAA,MAAA;AAAA,MAG/D,gBAAAA;AAAA,QAACC;AAAA,QAAA;AAAA,UACG,WAAU;AAAA,UACV,QAAQb,MAAc;AAAA,UACtB,SAAS,MAAMK,EAAgB,MAAM;AAAA,UAErC,UAAA,gBAAAO,EAAC,QAAA,EAAK,WAAU,uCAAA,CAAuC;AAAA,QAAA;AAAA,MAAA;AAAA,IAC3D,GACJ;AAAA,IAECX,EAAc,UACX,gBAAAW,EAAC,OAAA,EAAI,WAAU,aACX,UAAA,gBAAAA,EAACE,GAAA,EAAO,SAASb,GAAe,UAAU,CAAAc,MAAQA,KAAQR,EAAeQ,EAAK,EAAE,GAAG,EAAA,CACvF;AAAA,EAAA,GAER;AAER;"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { TableCellOverflow, TableHorizontalAlign, TableHtmlAttributes, TableVerticalAlign } from './Table.types';
|
|
3
|
+
export type TableColumnProps = TableHtmlAttributes & {
|
|
4
|
+
/**
|
|
5
|
+
* `TableColumn` may be rendered directly inside `TableFooter`.
|
|
6
|
+
*
|
|
7
|
+
* In `TableBody`, columns must be rendered inside a row component such as
|
|
8
|
+
* `TableRow` or `TableExpandedRow`. Direct `TableColumn` children of
|
|
9
|
+
* `TableBody` are ignored.
|
|
10
|
+
*/
|
|
11
|
+
children?: ReactNode;
|
|
12
|
+
/**
|
|
13
|
+
* Optional explicit column key.
|
|
14
|
+
* If omitted, the cell is matched by its position inside `<TableRow>`.
|
|
15
|
+
*/
|
|
16
|
+
columnKey?: string;
|
|
17
|
+
/**
|
|
18
|
+
* Optional explicit value.
|
|
19
|
+
*/
|
|
20
|
+
value?: ReactNode;
|
|
21
|
+
/**
|
|
22
|
+
* Additional classes for this cell only.
|
|
23
|
+
*/
|
|
24
|
+
className?: string;
|
|
25
|
+
/**
|
|
26
|
+
* Horizontal alignment override for this cell.
|
|
27
|
+
*/
|
|
28
|
+
horizontalAlign?: TableHorizontalAlign;
|
|
29
|
+
/**
|
|
30
|
+
* Vertical alignment override for this cell.
|
|
31
|
+
*/
|
|
32
|
+
verticalAlign?: TableVerticalAlign;
|
|
33
|
+
/**
|
|
34
|
+
* Overflow behavior for the cell content wrapper.
|
|
35
|
+
*
|
|
36
|
+
* @default 'hidden'
|
|
37
|
+
*/
|
|
38
|
+
overflow?: TableCellOverflow;
|
|
39
|
+
/**
|
|
40
|
+
* Number of columns this cell should span.
|
|
41
|
+
*
|
|
42
|
+
* Currently used by header and footer-style declarative table sections.
|
|
43
|
+
*/
|
|
44
|
+
colSpan?: number;
|
|
45
|
+
/**
|
|
46
|
+
* Prevents clicks and keyboard interactions inside this cell from triggering the parent row click handler.
|
|
47
|
+
*
|
|
48
|
+
* Useful for interactive cell content such as dropdowns, inputs, or buttons.
|
|
49
|
+
*
|
|
50
|
+
* @default false
|
|
51
|
+
*/
|
|
52
|
+
preventRowClick?: boolean;
|
|
53
|
+
};
|
|
54
|
+
declare const TableColumn: (props: TableColumnProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
55
|
+
export default TableColumn;
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { jsx as u, jsxs as F } from "react/jsx-runtime";
|
|
2
|
+
import a from "../../utils/classNames.js";
|
|
3
|
+
import { getVerticalAlignClassName as K, getHorizontalAlignClassName as I } from "./shared/getAlignClassName.js";
|
|
4
|
+
import L from "./shared/getCellContentOverflowClassName.js";
|
|
5
|
+
import { resolveAriaSpan as V, resolveAriaColIndex as R } from "./shared/resolveTableAria.js";
|
|
6
|
+
import { useOptionalTableInteractionContext as j } from "./context/TableInteractionContext.js";
|
|
7
|
+
import { useOptionalTableLayoutContext as H } from "./context/TableLayoutContext.js";
|
|
8
|
+
import { useOptionalTableRenderConfigContext as P } from "./context/TableRenderConfigContext.js";
|
|
9
|
+
import { useOptionalTableSection as $, useTableRowContext as q } from "./context/TableStructureContext.js";
|
|
10
|
+
import { useOptionalTableRenderContext as E } from "./context/TableRenderContext.js";
|
|
11
|
+
const oe = (T) => {
|
|
12
|
+
const {
|
|
13
|
+
children: h,
|
|
14
|
+
className: g,
|
|
15
|
+
colSpan: b = 1,
|
|
16
|
+
columnKey: o,
|
|
17
|
+
horizontalAlign: D,
|
|
18
|
+
overflow: p = "hidden",
|
|
19
|
+
preventRowClick: s = !1,
|
|
20
|
+
value: x,
|
|
21
|
+
verticalAlign: M,
|
|
22
|
+
...v
|
|
23
|
+
} = T, n = P(), t = E(), r = j(), f = H(), y = $(), i = q(), c = y === "body", m = y === "footer";
|
|
24
|
+
if (!t || !n || !r || !f || t.columns.length === 0 || !c && !m || c && !i)
|
|
25
|
+
return null;
|
|
26
|
+
const N = o !== void 0 ? t.columnIndexByKey.get(o) : void 0, d = i?.nextColumnIndex(N, b) ?? N ?? -1;
|
|
27
|
+
if (d < 0)
|
|
28
|
+
return null;
|
|
29
|
+
const e = t.columns[d], l = d + 1, W = l + (r.showSelectionColumn ? 1 : 0), w = D ?? e?.horizontalAlign, z = M ?? e?.verticalAlign, A = c && i?.rowData && n.cellClassName?.(
|
|
30
|
+
i.rowData,
|
|
31
|
+
t.columnDefinitionsByKey.get(e?.columnKey ?? o ?? "") ?? {
|
|
32
|
+
key: e?.columnKey ?? o ?? String(l),
|
|
33
|
+
label: e?.label ?? "",
|
|
34
|
+
icon: e?.icon,
|
|
35
|
+
filter: e?.filter,
|
|
36
|
+
hideLabel: e?.hideLabel,
|
|
37
|
+
width: e?.width,
|
|
38
|
+
minResizeWidth: e?.minResizeWidth,
|
|
39
|
+
maxResizeWidth: e?.maxResizeWidth,
|
|
40
|
+
draggable: e?.draggable,
|
|
41
|
+
resizeable: e?.resizeable,
|
|
42
|
+
horizontalAlign: e?.horizontalAlign,
|
|
43
|
+
className: void 0,
|
|
44
|
+
headerClassName: e?.headerClassName,
|
|
45
|
+
hideOnMobile: e?.hideOnMobile,
|
|
46
|
+
sortable: e?.sortable
|
|
47
|
+
},
|
|
48
|
+
i.rowIndex,
|
|
49
|
+
d
|
|
50
|
+
), S = f.stickyLeftColumnCount ?? 0, k = S > 0 && l <= S, O = e?.mobileLabel ?? (typeof e?.label == "string" ? e.label : ""), C = (B) => {
|
|
51
|
+
B.stopPropagation();
|
|
52
|
+
};
|
|
53
|
+
return m && (t.renderDraft.hasFooterCells = !0), n.isTableView ? /* @__PURE__ */ u(
|
|
54
|
+
"div",
|
|
55
|
+
{
|
|
56
|
+
...v,
|
|
57
|
+
className: a(
|
|
58
|
+
"table-cell",
|
|
59
|
+
m && "table-footer-cell",
|
|
60
|
+
c && k && "table-cell-sticky-left-column",
|
|
61
|
+
m && f.stickyFooter && k && "table-footer-cell-sticky-left-column",
|
|
62
|
+
I(w),
|
|
63
|
+
K(z),
|
|
64
|
+
e?.hideOnMobile && "table-hide-mobile",
|
|
65
|
+
A,
|
|
66
|
+
g
|
|
67
|
+
),
|
|
68
|
+
"data-column": e?.columnKey ?? o ?? l,
|
|
69
|
+
role: "cell",
|
|
70
|
+
"aria-colindex": R(l, r.showSelectionColumn),
|
|
71
|
+
"aria-colspan": V(b),
|
|
72
|
+
onClick: s ? C : void 0,
|
|
73
|
+
onKeyDown: s ? C : void 0,
|
|
74
|
+
style: { gridColumn: `${W} / span ${b}` },
|
|
75
|
+
children: /* @__PURE__ */ u("div", { className: a("table-cell-content", L(p)), children: x ?? h ?? "" })
|
|
76
|
+
}
|
|
77
|
+
) : /* @__PURE__ */ F(
|
|
78
|
+
"div",
|
|
79
|
+
{
|
|
80
|
+
...v,
|
|
81
|
+
className: a(
|
|
82
|
+
"table-cell",
|
|
83
|
+
n.cardClasses.cellClassName,
|
|
84
|
+
I(w),
|
|
85
|
+
K(z),
|
|
86
|
+
e?.hideOnMobile && "table-hide-mobile",
|
|
87
|
+
A,
|
|
88
|
+
g
|
|
89
|
+
),
|
|
90
|
+
"data-column": e?.columnKey ?? o ?? l,
|
|
91
|
+
role: "cell",
|
|
92
|
+
"aria-colindex": R(l, r.showSelectionColumn),
|
|
93
|
+
onClick: s ? C : void 0,
|
|
94
|
+
onKeyDown: s ? C : void 0,
|
|
95
|
+
children: [
|
|
96
|
+
O && /* @__PURE__ */ u("div", { className: a("table-cell-label", n.cardClasses.labelClassName), children: O }),
|
|
97
|
+
/* @__PURE__ */ u(
|
|
98
|
+
"div",
|
|
99
|
+
{
|
|
100
|
+
className: a(
|
|
101
|
+
"table-cell-content",
|
|
102
|
+
n.cardClasses.contentClassName,
|
|
103
|
+
L(p)
|
|
104
|
+
),
|
|
105
|
+
children: x ?? h ?? ""
|
|
106
|
+
}
|
|
107
|
+
)
|
|
108
|
+
]
|
|
109
|
+
}
|
|
110
|
+
);
|
|
111
|
+
};
|
|
112
|
+
export {
|
|
113
|
+
oe as default
|
|
114
|
+
};
|
|
115
|
+
//# sourceMappingURL=TableColumn.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableColumn.js","sources":["../../../src/components/table/TableColumn.tsx"],"sourcesContent":["import type { KeyboardEvent, MouseEvent, ReactNode } from 'react';\n\nimport classNames from '../../utils/classNames';\nimport { getHorizontalAlignClassName, getVerticalAlignClassName } from './shared/getAlignClassName';\nimport getCellContentOverflowClassName from './shared/getCellContentOverflowClassName';\nimport { resolveAriaColIndex, resolveAriaSpan } from './shared/resolveTableAria';\nimport type { TableCellOverflow, TableHorizontalAlign, TableHtmlAttributes, TableVerticalAlign } from './Table.types';\nimport { useOptionalTableInteractionContext } from './context/TableInteractionContext';\nimport { useOptionalTableLayoutContext } from './context/TableLayoutContext';\nimport { useOptionalTableRenderConfigContext } from './context/TableRenderConfigContext';\nimport { useOptionalTableSection, useTableRowContext } from './context/TableStructureContext';\nimport { useOptionalTableRenderContext } from './context/TableRenderContext';\n\nexport type TableColumnProps = TableHtmlAttributes & {\n /**\n * `TableColumn` may be rendered directly inside `TableFooter`.\n *\n * In `TableBody`, columns must be rendered inside a row component such as\n * `TableRow` or `TableExpandedRow`. Direct `TableColumn` children of\n * `TableBody` are ignored.\n */\n children?: ReactNode;\n\n /**\n * Optional explicit column key.\n * If omitted, the cell is matched by its position inside `<TableRow>`.\n */\n columnKey?: string;\n\n /**\n * Optional explicit value.\n */\n value?: ReactNode;\n\n /**\n * Additional classes for this cell only.\n */\n className?: string;\n\n /**\n * Horizontal alignment override for this cell.\n */\n horizontalAlign?: TableHorizontalAlign;\n\n /**\n * Vertical alignment override for this cell.\n */\n verticalAlign?: TableVerticalAlign;\n\n /**\n * Overflow behavior for the cell content wrapper.\n *\n * @default 'hidden'\n */\n overflow?: TableCellOverflow;\n\n /**\n * Number of columns this cell should span.\n *\n * Currently used by header and footer-style declarative table sections.\n */\n colSpan?: number;\n\n /**\n * Prevents clicks and keyboard interactions inside this cell from triggering the parent row click handler.\n *\n * Useful for interactive cell content such as dropdowns, inputs, or buttons.\n *\n * @default false\n */\n preventRowClick?: boolean;\n};\n\nconst TableColumn = (props: TableColumnProps) => {\n const {\n children,\n className,\n colSpan = 1,\n columnKey,\n horizontalAlign,\n overflow = 'hidden',\n preventRowClick = false,\n value,\n verticalAlign,\n ...remainingProps\n } = props;\n\n const renderConfigContext = useOptionalTableRenderConfigContext();\n const renderContext = useOptionalTableRenderContext();\n const interactionContext = useOptionalTableInteractionContext();\n const layoutContext = useOptionalTableLayoutContext();\n const section = useOptionalTableSection();\n const rowContext = useTableRowContext();\n\n const isBodySection = section === 'body';\n const isFooterSection = section === 'footer';\n\n if (\n !renderContext ||\n !renderConfigContext ||\n !interactionContext ||\n !layoutContext ||\n renderContext.columns.length === 0 ||\n (!isBodySection && !isFooterSection)\n ) {\n return null;\n }\n\n if (isBodySection && !rowContext) {\n return null;\n }\n\n const explicitColumnIndex = columnKey !== undefined ? renderContext.columnIndexByKey.get(columnKey) : undefined;\n const columnIndex = rowContext?.nextColumnIndex(explicitColumnIndex, colSpan) ?? explicitColumnIndex ?? -1;\n\n if (columnIndex < 0) {\n return null;\n }\n\n const renderColumn = renderContext.columns[columnIndex];\n const baseColumnStart = columnIndex + 1;\n const resolvedColumnStart = baseColumnStart + (interactionContext.showSelectionColumn ? 1 : 0);\n const resolvedHorizontalAlign = horizontalAlign ?? renderColumn?.horizontalAlign;\n const resolvedVerticalAlign = verticalAlign ?? renderColumn?.verticalAlign;\n\n const resolvedCellClassName =\n isBodySection &&\n rowContext?.rowData &&\n renderConfigContext.cellClassName?.(\n rowContext.rowData,\n renderContext.columnDefinitionsByKey.get(renderColumn?.columnKey ?? columnKey ?? '') ?? {\n key: renderColumn?.columnKey ?? columnKey ?? String(baseColumnStart),\n label: renderColumn?.label ?? '',\n icon: renderColumn?.icon,\n filter: renderColumn?.filter,\n hideLabel: renderColumn?.hideLabel,\n width: renderColumn?.width,\n minResizeWidth: renderColumn?.minResizeWidth,\n maxResizeWidth: renderColumn?.maxResizeWidth,\n draggable: renderColumn?.draggable,\n resizeable: renderColumn?.resizeable,\n horizontalAlign: renderColumn?.horizontalAlign,\n className: undefined,\n headerClassName: renderColumn?.headerClassName,\n hideOnMobile: renderColumn?.hideOnMobile,\n sortable: renderColumn?.sortable,\n },\n rowContext.rowIndex,\n columnIndex\n );\n\n const stickyLeftColumns = layoutContext.stickyLeftColumnCount ?? 0;\n const isStickyLeftColumn = stickyLeftColumns > 0 && baseColumnStart <= stickyLeftColumns;\n\n const mobileLabel =\n renderColumn?.mobileLabel ?? (typeof renderColumn?.label === 'string' ? renderColumn.label : '');\n\n const handleCellInteraction = (event: KeyboardEvent<HTMLDivElement> | MouseEvent<HTMLDivElement>) => {\n event.stopPropagation();\n };\n\n if (isFooterSection) {\n renderContext.renderDraft.hasFooterCells = true;\n }\n\n if (renderConfigContext.isTableView) {\n return (\n <div\n {...remainingProps}\n className={classNames(\n 'table-cell',\n isFooterSection && 'table-footer-cell',\n isBodySection && isStickyLeftColumn && 'table-cell-sticky-left-column',\n isFooterSection &&\n layoutContext.stickyFooter &&\n isStickyLeftColumn &&\n 'table-footer-cell-sticky-left-column',\n getHorizontalAlignClassName(resolvedHorizontalAlign),\n getVerticalAlignClassName(resolvedVerticalAlign),\n renderColumn?.hideOnMobile && 'table-hide-mobile',\n resolvedCellClassName,\n className\n )}\n data-column={renderColumn?.columnKey ?? columnKey ?? baseColumnStart}\n role='cell'\n aria-colindex={resolveAriaColIndex(baseColumnStart, interactionContext.showSelectionColumn)}\n aria-colspan={resolveAriaSpan(colSpan)}\n onClick={preventRowClick ? handleCellInteraction : undefined}\n onKeyDown={preventRowClick ? handleCellInteraction : undefined}\n style={{ gridColumn: `${resolvedColumnStart} / span ${colSpan}` }}\n >\n <div className={classNames('table-cell-content', getCellContentOverflowClassName(overflow))}>\n {value ?? children ?? ''}\n </div>\n </div>\n );\n }\n\n return (\n <div\n {...remainingProps}\n className={classNames(\n 'table-cell',\n renderConfigContext.cardClasses.cellClassName,\n getHorizontalAlignClassName(resolvedHorizontalAlign),\n getVerticalAlignClassName(resolvedVerticalAlign),\n renderColumn?.hideOnMobile && 'table-hide-mobile',\n resolvedCellClassName,\n className\n )}\n data-column={renderColumn?.columnKey ?? columnKey ?? baseColumnStart}\n role='cell'\n aria-colindex={resolveAriaColIndex(baseColumnStart, interactionContext.showSelectionColumn)}\n onClick={preventRowClick ? handleCellInteraction : undefined}\n onKeyDown={preventRowClick ? handleCellInteraction : undefined}\n >\n {mobileLabel && (\n <div className={classNames('table-cell-label', renderConfigContext.cardClasses.labelClassName)}>\n {mobileLabel}\n </div>\n )}\n <div\n className={classNames(\n 'table-cell-content',\n renderConfigContext.cardClasses.contentClassName,\n getCellContentOverflowClassName(overflow)\n )}\n >\n {value ?? children ?? ''}\n </div>\n </div>\n );\n};\n\nexport default TableColumn;\n"],"names":["TableColumn","props","children","className","colSpan","columnKey","horizontalAlign","overflow","preventRowClick","value","verticalAlign","remainingProps","renderConfigContext","useOptionalTableRenderConfigContext","renderContext","useOptionalTableRenderContext","interactionContext","useOptionalTableInteractionContext","layoutContext","useOptionalTableLayoutContext","section","useOptionalTableSection","rowContext","useTableRowContext","isBodySection","isFooterSection","explicitColumnIndex","columnIndex","renderColumn","baseColumnStart","resolvedColumnStart","resolvedHorizontalAlign","resolvedVerticalAlign","resolvedCellClassName","stickyLeftColumns","isStickyLeftColumn","mobileLabel","handleCellInteraction","event","jsx","classNames","getHorizontalAlignClassName","getVerticalAlignClassName","resolveAriaColIndex","resolveAriaSpan","getCellContentOverflowClassName","jsxs"],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { TableHtmlAttributes } from './Table.types';
|
|
3
|
+
export type TableExpandedContentRowProps = TableHtmlAttributes & {
|
|
4
|
+
/**
|
|
5
|
+
* Parent row key used to associate this expanded content row with its parent.
|
|
6
|
+
*/
|
|
7
|
+
parentKey: string | number;
|
|
8
|
+
/**
|
|
9
|
+
* The content of the full-width expanded row.
|
|
10
|
+
*/
|
|
11
|
+
children?: ReactNode;
|
|
12
|
+
/**
|
|
13
|
+
* Optional class names only for this expanded content row.
|
|
14
|
+
*/
|
|
15
|
+
className?: string;
|
|
16
|
+
/**
|
|
17
|
+
* Disable table hover styling for this row.
|
|
18
|
+
*/
|
|
19
|
+
noHover?: boolean;
|
|
20
|
+
};
|
|
21
|
+
declare const TableExpandedContentRow: (props: TableExpandedContentRowProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
22
|
+
export default TableExpandedContentRow;
|