@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,107 @@
|
|
|
1
|
+
import { jsxs as h, jsx as o } from "react/jsx-runtime";
|
|
2
|
+
import { useSensors as K, useSensor as O, PointerSensor as P, DndContext as E, DragOverlay as N } from "@dnd-kit/core";
|
|
3
|
+
import { restrictToHorizontalAxis as j } from "@dnd-kit/modifiers";
|
|
4
|
+
import { SortableContext as z, horizontalListSortingStrategy as L } from "@dnd-kit/sortable";
|
|
5
|
+
import { useRef as W, useState as v } from "react";
|
|
6
|
+
import k from "../../utils/classNames.js";
|
|
7
|
+
import V from "./render/header/TableHeaderDragOverlay.js";
|
|
8
|
+
import _ from "./render/header/TableHeaderSelectionCell.js";
|
|
9
|
+
import { resolveColumnCollisionDetection as $ } from "./render/header/resolveColumnCollisionDetection.js";
|
|
10
|
+
import { useOptionalTableInteractionContext as q } from "./context/TableInteractionContext.js";
|
|
11
|
+
import { useOptionalTableLayoutContext as B } from "./context/TableLayoutContext.js";
|
|
12
|
+
import { useOptionalTableRenderConfigContext as F } from "./context/TableRenderConfigContext.js";
|
|
13
|
+
import { TableSectionContext as f, TableHeaderContext as p } from "./context/TableStructureContext.js";
|
|
14
|
+
import { useOptionalTableRenderContext as G } from "./context/TableRenderContext.js";
|
|
15
|
+
const ie = (x) => {
|
|
16
|
+
const { children: s, className: S, ...w } = x, l = G(), d = F(), t = q(), n = B();
|
|
17
|
+
if (!l || !d || !t || !n)
|
|
18
|
+
return null;
|
|
19
|
+
const D = K(O(P, { activationConstraint: { distance: 6 } })), r = W(0);
|
|
20
|
+
r.current = 0;
|
|
21
|
+
const [c, m] = v(void 0), [b, u] = v(void 0), R = !!n.onColumnDragEnd && (n.draggableColumnKeys?.length ?? 0) > 1, i = l.header, a = i?.rowCount ?? 1, y = i ?? {
|
|
22
|
+
rowCount: a,
|
|
23
|
+
totalColumnCount: l.columns.length,
|
|
24
|
+
columns: []
|
|
25
|
+
}, H = c ? i?.columns.find((e) => (e.columnKey ?? String(e.key)) === c) : void 0, g = () => {
|
|
26
|
+
m(void 0), u(void 0);
|
|
27
|
+
}, T = (e) => {
|
|
28
|
+
m(String(e.active.id)), u(e.active.rect.current.initial?.width ?? void 0);
|
|
29
|
+
}, A = (e) => {
|
|
30
|
+
g();
|
|
31
|
+
}, I = (e) => {
|
|
32
|
+
g(), n.onColumnDragEnd?.(e);
|
|
33
|
+
}, C = R && n.draggableColumnKeys ? /* @__PURE__ */ h(
|
|
34
|
+
E,
|
|
35
|
+
{
|
|
36
|
+
sensors: D,
|
|
37
|
+
collisionDetection: $,
|
|
38
|
+
modifiers: [j],
|
|
39
|
+
onDragStart: T,
|
|
40
|
+
onDragCancel: A,
|
|
41
|
+
onDragEnd: I,
|
|
42
|
+
children: [
|
|
43
|
+
/* @__PURE__ */ o(z, { items: n.draggableColumnKeys, strategy: L, children: s }),
|
|
44
|
+
/* @__PURE__ */ o(N, { adjustScale: !1, dropAnimation: null, children: /* @__PURE__ */ o(
|
|
45
|
+
V,
|
|
46
|
+
{
|
|
47
|
+
column: H,
|
|
48
|
+
header: y,
|
|
49
|
+
showSelectionColumn: t.showSelectionColumn,
|
|
50
|
+
width: b
|
|
51
|
+
}
|
|
52
|
+
) })
|
|
53
|
+
]
|
|
54
|
+
}
|
|
55
|
+
) : s;
|
|
56
|
+
return d.isTableView ? /* @__PURE__ */ o("div", { ...w, className: "table-head", role: "rowgroup", ref: n.tableHeadRowRef, children: /* @__PURE__ */ o(f.Provider, { value: "header", children: /* @__PURE__ */ o(
|
|
57
|
+
p.Provider,
|
|
58
|
+
{
|
|
59
|
+
value: {
|
|
60
|
+
nextHeaderRowIndex: () => {
|
|
61
|
+
const e = r.current;
|
|
62
|
+
return r.current += 1, e;
|
|
63
|
+
}
|
|
64
|
+
},
|
|
65
|
+
children: /* @__PURE__ */ h(
|
|
66
|
+
"div",
|
|
67
|
+
{
|
|
68
|
+
className: k(
|
|
69
|
+
"table-head-grid",
|
|
70
|
+
t.selectionHeaderContent && "table-head-grid-custom-selection",
|
|
71
|
+
S
|
|
72
|
+
),
|
|
73
|
+
role: a === 1 ? "row" : "presentation",
|
|
74
|
+
style: { gridTemplateRows: `repeat(${a}, auto)` },
|
|
75
|
+
children: [
|
|
76
|
+
t.showSelectionColumn && /* @__PURE__ */ o(
|
|
77
|
+
_,
|
|
78
|
+
{
|
|
79
|
+
isAllSelected: t.isAllRowsSelected,
|
|
80
|
+
isSomeRowsSelected: t.isSomeRowsSelected,
|
|
81
|
+
onToggleAllSelection: t.onToggleAllSelection,
|
|
82
|
+
rowCount: a,
|
|
83
|
+
selectionHeaderContent: t.selectionHeaderContent
|
|
84
|
+
}
|
|
85
|
+
),
|
|
86
|
+
C
|
|
87
|
+
]
|
|
88
|
+
}
|
|
89
|
+
)
|
|
90
|
+
}
|
|
91
|
+
) }) }) : /* @__PURE__ */ o(f.Provider, { value: "header", children: /* @__PURE__ */ o(
|
|
92
|
+
p.Provider,
|
|
93
|
+
{
|
|
94
|
+
value: {
|
|
95
|
+
nextHeaderRowIndex: () => {
|
|
96
|
+
const e = r.current;
|
|
97
|
+
return r.current += 1, e;
|
|
98
|
+
}
|
|
99
|
+
},
|
|
100
|
+
children: C
|
|
101
|
+
}
|
|
102
|
+
) });
|
|
103
|
+
};
|
|
104
|
+
export {
|
|
105
|
+
ie as default
|
|
106
|
+
};
|
|
107
|
+
//# sourceMappingURL=TableHeader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableHeader.js","sources":["../../../src/components/table/TableHeader.tsx"],"sourcesContent":["import {\n DndContext,\n DragOverlay,\n PointerSensor,\n type DragCancelEvent,\n type DragEndEvent,\n type DragStartEvent,\n useSensor,\n useSensors,\n} from '@dnd-kit/core';\nimport { restrictToHorizontalAxis } from '@dnd-kit/modifiers';\nimport { horizontalListSortingStrategy, SortableContext } from '@dnd-kit/sortable';\nimport { type ReactNode, useRef, useState } from 'react';\n\nimport classNames from '../../utils/classNames';\nimport type { TableHtmlAttributes, TableRowData } from './Table.types';\nimport TableHeaderDragOverlay from './render/header/TableHeaderDragOverlay';\nimport TableHeaderSelectionCell from './render/header/TableHeaderSelectionCell';\nimport { resolveColumnCollisionDetection } from './render/header/resolveColumnCollisionDetection';\nimport { useOptionalTableInteractionContext } from './context/TableInteractionContext';\nimport { useOptionalTableLayoutContext } from './context/TableLayoutContext';\nimport { useOptionalTableRenderConfigContext } from './context/TableRenderConfigContext';\nimport { TableHeaderContext, TableSectionContext } from './context/TableStructureContext';\nimport { useOptionalTableRenderContext } from './context/TableRenderContext';\n\nexport type TableHeaderProps<RowType extends TableRowData> = TableHtmlAttributes & {\n /**\n * Additional class names for the header grid wrapper.\n */\n className?: string;\n\n /**\n * Table header content.\n */\n children?: ReactNode;\n};\n\nconst TableHeader = <RowType extends TableRowData = TableRowData>(props: TableHeaderProps<RowType>) => {\n const { children, className, ...remainingProps } = props;\n\n const renderContext = useOptionalTableRenderContext<RowType>();\n const renderConfigContext = useOptionalTableRenderConfigContext<RowType>();\n const interactionContext = useOptionalTableInteractionContext<RowType>();\n const layoutContext = useOptionalTableLayoutContext();\n\n if (!renderContext || !renderConfigContext || !interactionContext || !layoutContext) {\n return null;\n }\n\n const sensors = useSensors(useSensor(PointerSensor, { activationConstraint: { distance: 6 } }));\n\n const headerRowIndexRef = useRef(0);\n headerRowIndexRef.current = 0;\n\n const [activeDraggedColumnKey, setActiveDraggedColumnKey] = useState<string | undefined>(undefined);\n const [activeDraggedColumnWidth, setActiveDraggedColumnWidth] = useState<number | undefined>(undefined);\n\n const canDragColumns = !!layoutContext.onColumnDragEnd && (layoutContext.draggableColumnKeys?.length ?? 0) > 1;\n const header = renderContext.header;\n const headerRowCount = header?.rowCount ?? 1;\n const overlayHeader = header ?? {\n rowCount: headerRowCount,\n totalColumnCount: renderContext.columns.length,\n columns: [],\n };\n\n const activeDraggedColumn = activeDraggedColumnKey\n ? header?.columns.find(column => (column.columnKey ?? String(column.key)) === activeDraggedColumnKey)\n : undefined;\n\n const clearActiveDraggedColumn = () => {\n setActiveDraggedColumnKey(undefined);\n setActiveDraggedColumnWidth(undefined);\n };\n\n const handleDragStart = (event: DragStartEvent) => {\n setActiveDraggedColumnKey(String(event.active.id));\n setActiveDraggedColumnWidth(event.active.rect.current.initial?.width ?? undefined);\n };\n\n const handleDragCancel = (_event: DragCancelEvent) => {\n clearActiveDraggedColumn();\n };\n\n const handleDragEnd = (event: DragEndEvent) => {\n clearActiveDraggedColumn();\n layoutContext.onColumnDragEnd?.(event);\n };\n\n const content =\n canDragColumns && layoutContext.draggableColumnKeys ? (\n <DndContext\n sensors={sensors}\n collisionDetection={resolveColumnCollisionDetection}\n modifiers={[restrictToHorizontalAxis]}\n onDragStart={handleDragStart}\n onDragCancel={handleDragCancel}\n onDragEnd={handleDragEnd}\n >\n <SortableContext items={layoutContext.draggableColumnKeys} strategy={horizontalListSortingStrategy}>\n {children}\n </SortableContext>\n <DragOverlay adjustScale={false} dropAnimation={null}>\n <TableHeaderDragOverlay\n column={activeDraggedColumn}\n header={overlayHeader}\n showSelectionColumn={interactionContext.showSelectionColumn}\n width={activeDraggedColumnWidth}\n />\n </DragOverlay>\n </DndContext>\n ) : (\n children\n );\n\n if (!renderConfigContext.isTableView) {\n return (\n <TableSectionContext.Provider value='header'>\n <TableHeaderContext.Provider\n value={{\n nextHeaderRowIndex: () => {\n const nextHeaderRowIndex = headerRowIndexRef.current;\n headerRowIndexRef.current += 1;\n return nextHeaderRowIndex;\n },\n }}\n >\n {content}\n </TableHeaderContext.Provider>\n </TableSectionContext.Provider>\n );\n }\n\n return (\n <div {...remainingProps} className='table-head' role='rowgroup' ref={layoutContext.tableHeadRowRef}>\n <TableSectionContext.Provider value='header'>\n <TableHeaderContext.Provider\n value={{\n nextHeaderRowIndex: () => {\n const nextHeaderRowIndex = headerRowIndexRef.current;\n headerRowIndexRef.current += 1;\n return nextHeaderRowIndex;\n },\n }}\n >\n <div\n className={classNames(\n 'table-head-grid',\n interactionContext.selectionHeaderContent && 'table-head-grid-custom-selection',\n className\n )}\n role={headerRowCount === 1 ? 'row' : 'presentation'}\n style={{ gridTemplateRows: `repeat(${headerRowCount}, auto)` }}\n >\n {interactionContext.showSelectionColumn && (\n <TableHeaderSelectionCell\n isAllSelected={interactionContext.isAllRowsSelected}\n isSomeRowsSelected={interactionContext.isSomeRowsSelected}\n onToggleAllSelection={interactionContext.onToggleAllSelection}\n rowCount={headerRowCount}\n selectionHeaderContent={interactionContext.selectionHeaderContent}\n />\n )}\n {content}\n </div>\n </TableHeaderContext.Provider>\n </TableSectionContext.Provider>\n </div>\n );\n};\n\nexport default TableHeader;\n"],"names":["TableHeader","props","children","className","remainingProps","renderContext","useOptionalTableRenderContext","renderConfigContext","useOptionalTableRenderConfigContext","interactionContext","useOptionalTableInteractionContext","layoutContext","useOptionalTableLayoutContext","sensors","useSensors","useSensor","PointerSensor","headerRowIndexRef","useRef","activeDraggedColumnKey","setActiveDraggedColumnKey","useState","activeDraggedColumnWidth","setActiveDraggedColumnWidth","canDragColumns","header","headerRowCount","overlayHeader","activeDraggedColumn","column","clearActiveDraggedColumn","handleDragStart","event","handleDragCancel","_event","handleDragEnd","content","jsxs","DndContext","resolveColumnCollisionDetection","restrictToHorizontalAxis","jsx","SortableContext","horizontalListSortingStrategy","DragOverlay","TableHeaderDragOverlay","TableSectionContext","TableHeaderContext","nextHeaderRowIndex","classNames","TableHeaderSelectionCell"],"mappings":"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"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { PropsWithChildren, ReactNode } from 'react';
|
|
2
|
+
import { TableColumnDefinition, TableHtmlAttributes, TableRowData, TableVerticalAlign } from './Table.types';
|
|
3
|
+
export type TableHeaderColumnProps<RowType extends TableRowData> = Omit<TableColumnDefinition<RowType>, 'className' | 'draggable' | 'filter' | 'headerClassName' | 'icon' | 'key' | 'label' | 'resizeable'> & PropsWithChildren<{
|
|
4
|
+
/**
|
|
5
|
+
* Column key for leaf header columns.
|
|
6
|
+
*/
|
|
7
|
+
columnKey?: string;
|
|
8
|
+
/**
|
|
9
|
+
* Optional explicit header label.
|
|
10
|
+
* If omitted, `children` are used.
|
|
11
|
+
*/
|
|
12
|
+
label?: ReactNode;
|
|
13
|
+
/**
|
|
14
|
+
* Optional rioglyph class rendered before the header label in table view.
|
|
15
|
+
*/
|
|
16
|
+
icon?: string;
|
|
17
|
+
/**
|
|
18
|
+
* Optional custom filter control rendered next to the header label.
|
|
19
|
+
*
|
|
20
|
+
* Intended for table-specific filter dropdowns such as `TableColumnFilter`.
|
|
21
|
+
*/
|
|
22
|
+
filter?: ReactNode;
|
|
23
|
+
/**
|
|
24
|
+
* Hides the visible label in table view while preserving `label` for
|
|
25
|
+
* dropdowns, cards, and mobile metadata.
|
|
26
|
+
*
|
|
27
|
+
* @default false
|
|
28
|
+
*/
|
|
29
|
+
hideLabel?: boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Number of columns this header cell spans.
|
|
32
|
+
*
|
|
33
|
+
* @default 1
|
|
34
|
+
*/
|
|
35
|
+
colSpan?: number;
|
|
36
|
+
/**
|
|
37
|
+
* Number of header rows this cell spans.
|
|
38
|
+
*
|
|
39
|
+
* @default 1
|
|
40
|
+
*/
|
|
41
|
+
rowSpan?: number;
|
|
42
|
+
/**
|
|
43
|
+
* Additional class names for this header cell only.
|
|
44
|
+
*/
|
|
45
|
+
className?: string;
|
|
46
|
+
/**
|
|
47
|
+
* Additional class names for this header cell only.
|
|
48
|
+
*/
|
|
49
|
+
headerClassName?: string;
|
|
50
|
+
/**
|
|
51
|
+
* Enables drag-reordering for this header column in `TABLE` view.
|
|
52
|
+
*
|
|
53
|
+
* When `columnOrder` and `onColumnOrderChange` are provided, reordering is controlled from the outside.
|
|
54
|
+
* When they are omitted, the table keeps the reordered state internally.
|
|
55
|
+
*
|
|
56
|
+
* @default false
|
|
57
|
+
*/
|
|
58
|
+
draggable?: boolean;
|
|
59
|
+
/**
|
|
60
|
+
* Enables resizing for this header column in `TABLE` view.
|
|
61
|
+
*
|
|
62
|
+
* When `onColumnResize` is provided, resized widths are controlled from the outside.
|
|
63
|
+
* When it is omitted, the table keeps resized widths internally.
|
|
64
|
+
*
|
|
65
|
+
* @default false
|
|
66
|
+
*/
|
|
67
|
+
resizeable?: boolean;
|
|
68
|
+
/**
|
|
69
|
+
* Vertical alignment for this header cell.
|
|
70
|
+
*
|
|
71
|
+
* @default 'middle'
|
|
72
|
+
*/
|
|
73
|
+
verticalAlign?: TableVerticalAlign;
|
|
74
|
+
} & TableHtmlAttributes>;
|
|
75
|
+
declare const TableHeaderColumn: <RowType extends TableRowData = TableRowData>(props: TableHeaderColumnProps<RowType>) => import("react/jsx-runtime").JSX.Element | null;
|
|
76
|
+
export default TableHeaderColumn;
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { jsx as i } from "react/jsx-runtime";
|
|
2
|
+
import { useId as j } from "react";
|
|
3
|
+
import E from "../../utils/classNames.js";
|
|
4
|
+
import M from "./render/header/TableDraggableHeaderCell.js";
|
|
5
|
+
import V from "./render/header/TableStaticHeaderCell.js";
|
|
6
|
+
import { useOptionalTableInteractionContext as q } from "./context/TableInteractionContext.js";
|
|
7
|
+
import { useOptionalTableLayoutContext as B } from "./context/TableLayoutContext.js";
|
|
8
|
+
import { useOptionalTableRenderConfigContext as F } from "./context/TableRenderConfigContext.js";
|
|
9
|
+
import { useOptionalTableSection as G, useTableHeaderRowContext as J } from "./context/TableStructureContext.js";
|
|
10
|
+
import { useOptionalTableRenderContext as Q } from "./context/TableRenderContext.js";
|
|
11
|
+
const le = (m) => {
|
|
12
|
+
const {
|
|
13
|
+
children: u,
|
|
14
|
+
className: c,
|
|
15
|
+
colSpan: C = 1,
|
|
16
|
+
columnKey: d,
|
|
17
|
+
draggable: b,
|
|
18
|
+
filter: h,
|
|
19
|
+
headerClassName: p,
|
|
20
|
+
hideLabel: f,
|
|
21
|
+
hideOnMobile: g,
|
|
22
|
+
horizontalAlign: R,
|
|
23
|
+
icon: y,
|
|
24
|
+
label: S,
|
|
25
|
+
maxResizeWidth: x,
|
|
26
|
+
mobileLabel: z,
|
|
27
|
+
minResizeWidth: w,
|
|
28
|
+
resizeable: T,
|
|
29
|
+
rowSpan: K = 1,
|
|
30
|
+
sortable: O,
|
|
31
|
+
verticalAlign: L,
|
|
32
|
+
width: D,
|
|
33
|
+
...H
|
|
34
|
+
} = m, n = Q(), r = F(), t = q(), o = B(), N = G(), k = J(), a = j();
|
|
35
|
+
if (!n || !r || !t || !o || N !== "header")
|
|
36
|
+
return null;
|
|
37
|
+
const A = k?.row ?? 1;
|
|
38
|
+
if (n.renderDraft.headerColumns.push({
|
|
39
|
+
id: a,
|
|
40
|
+
columnKey: d,
|
|
41
|
+
label: S ?? u ?? "",
|
|
42
|
+
icon: y,
|
|
43
|
+
filter: h,
|
|
44
|
+
hideLabel: f,
|
|
45
|
+
width: D,
|
|
46
|
+
mobileLabel: z,
|
|
47
|
+
horizontalAlign: R,
|
|
48
|
+
verticalAlign: L,
|
|
49
|
+
headerClassName: E(c, p),
|
|
50
|
+
hideOnMobile: g,
|
|
51
|
+
sortable: O,
|
|
52
|
+
draggable: b,
|
|
53
|
+
resizeable: T,
|
|
54
|
+
minResizeWidth: w,
|
|
55
|
+
maxResizeWidth: x,
|
|
56
|
+
row: A,
|
|
57
|
+
colSpan: C,
|
|
58
|
+
rowSpan: K
|
|
59
|
+
}), !r.isTableView)
|
|
60
|
+
return null;
|
|
61
|
+
const l = n.header, e = l?.columns.find((P) => String(P.key) === a);
|
|
62
|
+
if (!l || !e)
|
|
63
|
+
return null;
|
|
64
|
+
const I = !!e.columnKey && e.colSpan === 1 && e.columnKey !== o.lastResizableColumnKey && e.resizeable === !0 && !!o.onColumnResizeStart, W = !!e.columnKey && e.colSpan === 1 && (o.draggableColumnKeys?.length ?? 0) > 1 && e.draggable === !0 && !!o.onColumnDragEnd, v = !!e.columnKey && o.resettableColumnKeys?.has(e.columnKey), s = {
|
|
65
|
+
column: e,
|
|
66
|
+
header: l,
|
|
67
|
+
htmlAttributes: H,
|
|
68
|
+
hasResettableWidth: v,
|
|
69
|
+
isResizable: I,
|
|
70
|
+
onColumnResizeReset: o.onColumnResizeReset,
|
|
71
|
+
onColumnResizeStart: o.onColumnResizeStart,
|
|
72
|
+
onSortChange: t.onSortChange,
|
|
73
|
+
showSelectionColumn: t.showSelectionColumn,
|
|
74
|
+
stickyLeftColumnCount: o.stickyLeftColumnCount
|
|
75
|
+
};
|
|
76
|
+
return W ? /* @__PURE__ */ i(M, { ...s }) : /* @__PURE__ */ i(V, { ...s });
|
|
77
|
+
};
|
|
78
|
+
export {
|
|
79
|
+
le as default
|
|
80
|
+
};
|
|
81
|
+
//# sourceMappingURL=TableHeaderColumn.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableHeaderColumn.js","sources":["../../../src/components/table/TableHeaderColumn.tsx"],"sourcesContent":["import { useId, type PropsWithChildren, type ReactNode } from 'react';\n\nimport classNames from '../../utils/classNames';\nimport type { TableColumnDefinition, TableHtmlAttributes, TableRowData, TableVerticalAlign } from './Table.types';\nimport DraggableTableHeaderCell from './render/header/TableDraggableHeaderCell';\nimport StaticTableHeaderCell from './render/header/TableStaticHeaderCell';\nimport { useOptionalTableInteractionContext } from './context/TableInteractionContext';\nimport { useOptionalTableLayoutContext } from './context/TableLayoutContext';\nimport { useOptionalTableRenderConfigContext } from './context/TableRenderConfigContext';\nimport { useOptionalTableSection, useTableHeaderRowContext } from './context/TableStructureContext';\nimport { useOptionalTableRenderContext } from './context/TableRenderContext';\n\nexport type TableHeaderColumnProps<RowType extends TableRowData> = Omit<\n TableColumnDefinition<RowType>,\n 'className' | 'draggable' | 'filter' | 'headerClassName' | 'icon' | 'key' | 'label' | 'resizeable'\n> &\n PropsWithChildren<\n {\n /**\n * Column key for leaf header columns.\n */\n columnKey?: string;\n\n /**\n * Optional explicit header label.\n * If omitted, `children` are used.\n */\n label?: ReactNode;\n\n /**\n * Optional rioglyph class rendered before the header label in table view.\n */\n icon?: string;\n\n /**\n * Optional custom filter control rendered next to the header label.\n *\n * Intended for table-specific filter dropdowns such as `TableColumnFilter`.\n */\n filter?: ReactNode;\n\n /**\n * Hides the visible label in table view while preserving `label` for\n * dropdowns, cards, and mobile metadata.\n *\n * @default false\n */\n hideLabel?: boolean;\n\n /**\n * Number of columns this header cell spans.\n *\n * @default 1\n */\n colSpan?: number;\n\n /**\n * Number of header rows this cell spans.\n *\n * @default 1\n */\n rowSpan?: number;\n\n /**\n * Additional class names for this header cell only.\n */\n className?: string;\n\n /**\n * Additional class names for this header cell only.\n */\n headerClassName?: string;\n\n /**\n * Enables drag-reordering for this header column in `TABLE` view.\n *\n * When `columnOrder` and `onColumnOrderChange` are provided, reordering is controlled from the outside.\n * When they are omitted, the table keeps the reordered state internally.\n *\n * @default false\n */\n draggable?: boolean;\n\n /**\n * Enables resizing for this header column in `TABLE` view.\n *\n * When `onColumnResize` is provided, resized widths are controlled from the outside.\n * When it is omitted, the table keeps resized widths internally.\n *\n * @default false\n */\n resizeable?: boolean;\n\n /**\n * Vertical alignment for this header cell.\n *\n * @default 'middle'\n */\n verticalAlign?: TableVerticalAlign;\n } & TableHtmlAttributes\n >;\n\nconst TableHeaderColumn = <RowType extends TableRowData = TableRowData>(props: TableHeaderColumnProps<RowType>) => {\n const {\n children,\n className,\n colSpan = 1,\n columnKey,\n draggable,\n filter,\n headerClassName,\n hideLabel,\n hideOnMobile,\n horizontalAlign,\n icon,\n label,\n maxResizeWidth,\n mobileLabel,\n minResizeWidth,\n resizeable,\n rowSpan = 1,\n sortable,\n verticalAlign,\n width,\n ...remainingProps\n } = props;\n\n const renderContext = useOptionalTableRenderContext<RowType>();\n const renderConfigContext = useOptionalTableRenderConfigContext<RowType>();\n const interactionContext = useOptionalTableInteractionContext<RowType>();\n const layoutContext = useOptionalTableLayoutContext();\n const section = useOptionalTableSection();\n const headerRowContext = useTableHeaderRowContext();\n const columnId = useId();\n\n if (!renderContext || !renderConfigContext || !interactionContext || !layoutContext || section !== 'header') {\n return null;\n }\n\n const resolvedRow = headerRowContext?.row ?? 1;\n\n renderContext.renderDraft.headerColumns.push({\n id: columnId,\n columnKey,\n label: label ?? children ?? '',\n icon,\n filter,\n hideLabel,\n width,\n mobileLabel,\n horizontalAlign,\n verticalAlign,\n headerClassName: classNames(className, headerClassName),\n hideOnMobile,\n sortable,\n draggable,\n resizeable,\n minResizeWidth,\n maxResizeWidth,\n row: resolvedRow,\n colSpan,\n rowSpan,\n });\n\n if (!renderConfigContext.isTableView) {\n return null;\n }\n\n const header = renderContext.header;\n const headerColumn = header?.columns.find(column => String(column.key) === columnId);\n\n if (!header || !headerColumn) {\n return null;\n }\n\n const isResizable =\n !!headerColumn.columnKey &&\n headerColumn.colSpan === 1 &&\n headerColumn.columnKey !== layoutContext.lastResizableColumnKey &&\n headerColumn.resizeable === true &&\n !!layoutContext.onColumnResizeStart;\n\n const isDraggable =\n !!headerColumn.columnKey &&\n headerColumn.colSpan === 1 &&\n (layoutContext.draggableColumnKeys?.length ?? 0) > 1 &&\n headerColumn.draggable === true &&\n !!layoutContext.onColumnDragEnd;\n\n const hasResettableWidth =\n !!headerColumn.columnKey && layoutContext.resettableColumnKeys?.has(headerColumn.columnKey);\n\n const sharedProps = {\n column: headerColumn,\n header,\n htmlAttributes: remainingProps,\n hasResettableWidth,\n isResizable,\n onColumnResizeReset: layoutContext.onColumnResizeReset,\n onColumnResizeStart: layoutContext.onColumnResizeStart,\n onSortChange: interactionContext.onSortChange,\n showSelectionColumn: interactionContext.showSelectionColumn,\n stickyLeftColumnCount: layoutContext.stickyLeftColumnCount,\n };\n\n return isDraggable ? <DraggableTableHeaderCell {...sharedProps} /> : <StaticTableHeaderCell {...sharedProps} />;\n};\n\nexport default TableHeaderColumn;\n"],"names":["TableHeaderColumn","props","children","className","colSpan","columnKey","draggable","filter","headerClassName","hideLabel","hideOnMobile","horizontalAlign","icon","label","maxResizeWidth","mobileLabel","minResizeWidth","resizeable","rowSpan","sortable","verticalAlign","width","remainingProps","renderContext","useOptionalTableRenderContext","renderConfigContext","useOptionalTableRenderConfigContext","interactionContext","useOptionalTableInteractionContext","layoutContext","useOptionalTableLayoutContext","section","useOptionalTableSection","headerRowContext","useTableHeaderRowContext","columnId","useId","resolvedRow","classNames","header","headerColumn","column","isResizable","isDraggable","hasResettableWidth","sharedProps","DraggableTableHeaderCell","jsx","StaticTableHeaderCell"],"mappings":";;;;;;;;;;AAsGA,MAAMA,KAAoB,CAA8CC,MAA2C;AAC/G,QAAM;AAAA,IACF,UAAAC;AAAA,IACA,WAAAC;AAAA,IACA,SAAAC,IAAU;AAAA,IACV,WAAAC;AAAA,IACA,WAAAC;AAAA,IACA,QAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,WAAAC;AAAA,IACA,cAAAC;AAAA,IACA,iBAAAC;AAAA,IACA,MAAAC;AAAA,IACA,OAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,aAAAC;AAAA,IACA,gBAAAC;AAAA,IACA,YAAAC;AAAA,IACA,SAAAC,IAAU;AAAA,IACV,UAAAC;AAAA,IACA,eAAAC;AAAA,IACA,OAAAC;AAAA,IACA,GAAGC;AAAA,EAAA,IACHrB,GAEEsB,IAAgBC,EAAA,GAChBC,IAAsBC,EAAA,GACtBC,IAAqBC,EAAA,GACrBC,IAAgBC,EAAA,GAChBC,IAAUC,EAAA,GACVC,IAAmBC,EAAA,GACnBC,IAAWC,EAAA;AAEjB,MAAI,CAACb,KAAiB,CAACE,KAAuB,CAACE,KAAsB,CAACE,KAAiBE,MAAY;AAC/F,WAAO;AAGX,QAAMM,IAAcJ,GAAkB,OAAO;AAyB7C,MAvBAV,EAAc,YAAY,cAAc,KAAK;AAAA,IACzC,IAAIY;AAAA,IACJ,WAAA9B;AAAA,IACA,OAAOQ,KAASX,KAAY;AAAA,IAC5B,MAAAU;AAAA,IACA,QAAAL;AAAA,IACA,WAAAE;AAAA,IACA,OAAAY;AAAA,IACA,aAAAN;AAAA,IACA,iBAAAJ;AAAA,IACA,eAAAS;AAAA,IACA,iBAAiBkB,EAAWnC,GAAWK,CAAe;AAAA,IACtD,cAAAE;AAAA,IACA,UAAAS;AAAA,IACA,WAAAb;AAAA,IACA,YAAAW;AAAA,IACA,gBAAAD;AAAA,IACA,gBAAAF;AAAA,IACA,KAAKuB;AAAA,IACL,SAAAjC;AAAA,IACA,SAAAc;AAAA,EAAA,CACH,GAEG,CAACO,EAAoB;AACrB,WAAO;AAGX,QAAMc,IAAShB,EAAc,QACvBiB,IAAeD,GAAQ,QAAQ,KAAK,OAAU,OAAOE,EAAO,GAAG,MAAMN,CAAQ;AAEnF,MAAI,CAACI,KAAU,CAACC;AACZ,WAAO;AAGX,QAAME,IACF,CAAC,CAACF,EAAa,aACfA,EAAa,YAAY,KACzBA,EAAa,cAAcX,EAAc,0BACzCW,EAAa,eAAe,MAC5B,CAAC,CAACX,EAAc,qBAEdc,IACF,CAAC,CAACH,EAAa,aACfA,EAAa,YAAY,MACxBX,EAAc,qBAAqB,UAAU,KAAK,KACnDW,EAAa,cAAc,MAC3B,CAAC,CAACX,EAAc,iBAEde,IACF,CAAC,CAACJ,EAAa,aAAaX,EAAc,sBAAsB,IAAIW,EAAa,SAAS,GAExFK,IAAc;AAAA,IAChB,QAAQL;AAAA,IACR,QAAAD;AAAA,IACA,gBAAgBjB;AAAA,IAChB,oBAAAsB;AAAA,IACA,aAAAF;AAAA,IACA,qBAAqBb,EAAc;AAAA,IACnC,qBAAqBA,EAAc;AAAA,IACnC,cAAcF,EAAmB;AAAA,IACjC,qBAAqBA,EAAmB;AAAA,IACxC,uBAAuBE,EAAc;AAAA,EAAA;AAGzC,SAAOc,sBAAeG,GAAA,EAA0B,GAAGD,GAAa,IAAK,gBAAAE,EAACC,GAAA,EAAuB,GAAGH,EAAA,CAAa;AACjH;"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
export type TableHeaderRowProps = {
|
|
3
|
+
/**
|
|
4
|
+
* Header columns rendered inside this header row.
|
|
5
|
+
*/
|
|
6
|
+
children?: ReactNode;
|
|
7
|
+
};
|
|
8
|
+
declare const TableHeaderRow: ({ children }: TableHeaderRowProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
9
|
+
export default TableHeaderRow;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { jsx as n } from "react/jsx-runtime";
|
|
2
|
+
import { useTableHeaderContext as a, TableHeaderRowContext as d } from "./context/TableStructureContext.js";
|
|
3
|
+
import { useOptionalTableRenderContext as l } from "./context/TableRenderContext.js";
|
|
4
|
+
const i = ({ children: e }) => {
|
|
5
|
+
const t = l(), o = a();
|
|
6
|
+
if (!t)
|
|
7
|
+
return null;
|
|
8
|
+
const r = (o?.nextHeaderRowIndex() ?? 0) + 1;
|
|
9
|
+
return /* @__PURE__ */ n(d.Provider, { value: { row: r }, children: e });
|
|
10
|
+
};
|
|
11
|
+
export {
|
|
12
|
+
i as default
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=TableHeaderRow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableHeaderRow.js","sources":["../../../src/components/table/TableHeaderRow.tsx"],"sourcesContent":["import type { ReactNode } from 'react';\n\nimport { TableHeaderRowContext, useTableHeaderContext } from './context/TableStructureContext';\nimport { useOptionalTableRenderContext } from './context/TableRenderContext';\n\nexport type TableHeaderRowProps = {\n /**\n * Header columns rendered inside this header row.\n */\n children?: ReactNode;\n};\n\nconst TableHeaderRow = ({ children }: TableHeaderRowProps) => {\n const renderContext = useOptionalTableRenderContext();\n const headerContext = useTableHeaderContext();\n\n if (!renderContext) {\n return null;\n }\n\n const row = (headerContext?.nextHeaderRowIndex() ?? 0) + 1;\n\n return <TableHeaderRowContext.Provider value={{ row }}>{children}</TableHeaderRowContext.Provider>;\n};\n\nexport default TableHeaderRow;\n"],"names":["TableHeaderRow","children","renderContext","useOptionalTableRenderContext","headerContext","useTableHeaderContext","row","jsx","TableHeaderRowContext"],"mappings":";;;AAYA,MAAMA,IAAiB,CAAC,EAAE,UAAAC,QAAoC;AAC1D,QAAMC,IAAgBC,EAAA,GAChBC,IAAgBC,EAAA;AAEtB,MAAI,CAACH;AACD,WAAO;AAGX,QAAMI,KAAOF,GAAe,mBAAA,KAAwB,KAAK;AAEzD,SAAO,gBAAAG,EAACC,EAAsB,UAAtB,EAA+B,OAAO,EAAE,KAAAF,EAAA,GAAQ,UAAAL,GAAS;AACrE;"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { TableHtmlAttributes, TableRowData } from './Table.types';
|
|
3
|
+
export type TableRowProps<RowType extends TableRowData> = TableHtmlAttributes & Partial<RowType> & {
|
|
4
|
+
/**
|
|
5
|
+
* Disables row interaction such as hover styles, clicks, and keyboard activation.
|
|
6
|
+
*
|
|
7
|
+
* @default false
|
|
8
|
+
*/
|
|
9
|
+
disabled?: boolean;
|
|
10
|
+
/**
|
|
11
|
+
* Optional class names only for this row.
|
|
12
|
+
*/
|
|
13
|
+
className?: string;
|
|
14
|
+
/**
|
|
15
|
+
* Disable table hover styling for this row.
|
|
16
|
+
*/
|
|
17
|
+
noHover?: boolean;
|
|
18
|
+
/**
|
|
19
|
+
* Table row content.
|
|
20
|
+
*/
|
|
21
|
+
children?: ReactNode;
|
|
22
|
+
};
|
|
23
|
+
declare const TableRow: <RowType extends TableRowData = TableRowData>(props: TableRowProps<RowType>) => import("react/jsx-runtime").JSX.Element | null;
|
|
24
|
+
export default TableRow;
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { jsx as a, jsxs as D, Fragment as K } from "react/jsx-runtime";
|
|
2
|
+
import { motion as A } from "motion/react";
|
|
3
|
+
import { useRef as V } from "react";
|
|
4
|
+
import O from "../checkbox/Checkbox.js";
|
|
5
|
+
import y from "../../utils/classNames.js";
|
|
6
|
+
import { resolveRowKey as j, resolveRowClassName as B } from "./model/resolveRowMeta.js";
|
|
7
|
+
import { getInteractiveRowProps as H } from "./shared/getInteractiveRowProps.js";
|
|
8
|
+
import { useOptionalTableInteractionContext as F } from "./context/TableInteractionContext.js";
|
|
9
|
+
import { useOptionalTableRenderConfigContext as q } from "./context/TableRenderConfigContext.js";
|
|
10
|
+
import { useOptionalTableSection as z, useTableBodyContext as E, extractTableHtmlAttributes as T, TableRowContext as G } from "./context/TableStructureContext.js";
|
|
11
|
+
import { useOptionalTableRenderContext as J } from "./context/TableRenderContext.js";
|
|
12
|
+
const L = (C) => {
|
|
13
|
+
const { isSelected: b, isTableView: n, onToggleSelection: p, cardCellClassName: u, disabled: i } = C;
|
|
14
|
+
return /* @__PURE__ */ a(
|
|
15
|
+
"div",
|
|
16
|
+
{
|
|
17
|
+
className: y("table-cell table-selection-cell", !n && u),
|
|
18
|
+
role: "cell",
|
|
19
|
+
"aria-colindex": 1,
|
|
20
|
+
style: n ? { gridColumn: "1 / span 1" } : void 0,
|
|
21
|
+
onClick: (e) => e.stopPropagation(),
|
|
22
|
+
onKeyDown: (e) => e.stopPropagation(),
|
|
23
|
+
children: /* @__PURE__ */ a("div", { className: "table-selection-control", children: /* @__PURE__ */ a(O, { checked: b, disabled: i, onChange: p }) })
|
|
24
|
+
}
|
|
25
|
+
);
|
|
26
|
+
}, te = (C) => {
|
|
27
|
+
const { children: b, disabled: n, className: p, noHover: u, ...i } = C, e = q(), w = J(), o = F(), N = z(), v = E(), m = V(0);
|
|
28
|
+
if (m.current = 0, !w || !e || !o || w.columns.length === 0 || N !== "body" || !v)
|
|
29
|
+
return null;
|
|
30
|
+
const c = i, r = v.nextRowIndex(), t = j(c, r, e.rowKey), R = typeof e.rowAnimationProps == "function" ? e.rowAnimationProps(c, r) : e.rowAnimationProps, l = H({
|
|
31
|
+
isClickable: o.isClickable && !n,
|
|
32
|
+
onRowClick: (s, d) => {
|
|
33
|
+
o.onRowClick?.(s, d), o.onActiveRowChange?.(
|
|
34
|
+
o.activeRowId === t ? void 0 : t,
|
|
35
|
+
s,
|
|
36
|
+
d
|
|
37
|
+
);
|
|
38
|
+
},
|
|
39
|
+
row: c,
|
|
40
|
+
rowIndex: r
|
|
41
|
+
}), g = o.selectedRowIdSet.has(t), P = o.showSelectionColumn && /* @__PURE__ */ a(
|
|
42
|
+
L,
|
|
43
|
+
{
|
|
44
|
+
isSelected: g,
|
|
45
|
+
isTableView: e.isTableView,
|
|
46
|
+
onToggleSelection: () => o.onToggleRowSelection?.(t),
|
|
47
|
+
cardCellClassName: e.cardClasses.cellClassName,
|
|
48
|
+
disabled: n
|
|
49
|
+
}
|
|
50
|
+
), x = y(
|
|
51
|
+
"table-row",
|
|
52
|
+
!e.isTableView && "divider-y-1 divider-color-lighter divider-style-solid",
|
|
53
|
+
o.activeRowId === t && "table-row-active",
|
|
54
|
+
n && "table-row-disabled",
|
|
55
|
+
g && "table-row-selected",
|
|
56
|
+
l.isClickableClassName,
|
|
57
|
+
(n || u) && "table-row-no-hover",
|
|
58
|
+
!e.isTableView && e.cardClasses.rowClassName,
|
|
59
|
+
p,
|
|
60
|
+
B(e.rowClassName, c, r)
|
|
61
|
+
), f = /* @__PURE__ */ D(K, { children: [
|
|
62
|
+
P,
|
|
63
|
+
b
|
|
64
|
+
] }), k = {
|
|
65
|
+
...T(i),
|
|
66
|
+
className: x,
|
|
67
|
+
"data-index": r,
|
|
68
|
+
"data-row-id": String(t),
|
|
69
|
+
onClick: l.onClick,
|
|
70
|
+
onKeyDown: l.onKeyDown,
|
|
71
|
+
role: "row",
|
|
72
|
+
tabIndex: l.tabIndex
|
|
73
|
+
}, I = {
|
|
74
|
+
...T(i),
|
|
75
|
+
className: x,
|
|
76
|
+
"data-index": r,
|
|
77
|
+
"data-row-id": String(t),
|
|
78
|
+
onClick: l.onClick,
|
|
79
|
+
onKeyDown: l.onKeyDown,
|
|
80
|
+
role: "row",
|
|
81
|
+
tabIndex: l.tabIndex,
|
|
82
|
+
...R
|
|
83
|
+
}, h = /* @__PURE__ */ a(
|
|
84
|
+
G.Provider,
|
|
85
|
+
{
|
|
86
|
+
value: {
|
|
87
|
+
nextColumnIndex: (s, d = 1) => {
|
|
88
|
+
if (s !== void 0 && s >= 0)
|
|
89
|
+
return m.current = s + d, s;
|
|
90
|
+
const S = m.current;
|
|
91
|
+
return m.current += d, S;
|
|
92
|
+
},
|
|
93
|
+
rowIndex: r,
|
|
94
|
+
rowId: t,
|
|
95
|
+
rowData: c
|
|
96
|
+
},
|
|
97
|
+
children: R ? /* @__PURE__ */ a(A.div, { ...I, children: f }) : /* @__PURE__ */ a("div", { ...k, children: f })
|
|
98
|
+
}
|
|
99
|
+
);
|
|
100
|
+
return w.renderDraft.bodyRows.push({
|
|
101
|
+
rowId: t,
|
|
102
|
+
rowIndex: r,
|
|
103
|
+
kind: "data",
|
|
104
|
+
disabled: n,
|
|
105
|
+
render: () => h
|
|
106
|
+
}), w.isRegisteringBodyRows ? null : h;
|
|
107
|
+
};
|
|
108
|
+
export {
|
|
109
|
+
te as default
|
|
110
|
+
};
|
|
111
|
+
//# sourceMappingURL=TableRow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableRow.js","sources":["../../../src/components/table/TableRow.tsx"],"sourcesContent":["import { motion, type HTMLMotionProps } from 'motion/react';\nimport { type ReactNode, useRef } from 'react';\n\nimport Checkbox from '../checkbox/Checkbox';\nimport classNames from '../../utils/classNames';\nimport { resolveRowClassName, resolveRowKey } from './model/resolveRowMeta';\nimport { getInteractiveRowProps } from './shared/getInteractiveRowProps';\nimport type { TableHtmlAttributes, TableRowData } from './Table.types';\nimport { useOptionalTableInteractionContext } from './context/TableInteractionContext';\nimport { useOptionalTableRenderConfigContext } from './context/TableRenderConfigContext';\nimport {\n extractTableHtmlAttributes,\n useTableBodyContext,\n TableRowContext,\n useOptionalTableSection,\n} from './context/TableStructureContext';\nimport { useOptionalTableRenderContext } from './context/TableRenderContext';\n\nexport type TableRowProps<RowType extends TableRowData> = TableHtmlAttributes &\n Partial<RowType> & {\n /**\n * Disables row interaction such as hover styles, clicks, and keyboard activation.\n *\n * @default false\n */\n disabled?: boolean;\n\n /**\n * Optional class names only for this row.\n */\n className?: string;\n\n /**\n * Disable table hover styling for this row.\n */\n noHover?: boolean;\n\n /**\n * Table row content.\n */\n children?: ReactNode;\n };\n\ntype TableRowSelectionCellProps = {\n isSelected: boolean;\n isTableView: boolean;\n onToggleSelection?: () => void;\n cardCellClassName?: string;\n disabled?: boolean;\n};\n\nconst TableRowSelectionCell = (props: TableRowSelectionCellProps) => {\n const { isSelected, isTableView, onToggleSelection, cardCellClassName, disabled } = props;\n\n return (\n <div\n className={classNames('table-cell table-selection-cell', !isTableView && cardCellClassName)}\n role='cell'\n aria-colindex={1}\n style={isTableView ? { gridColumn: '1 / span 1' } : undefined}\n onClick={event => event.stopPropagation()}\n onKeyDown={event => event.stopPropagation()}\n >\n <div className='table-selection-control'>\n <Checkbox checked={isSelected} disabled={disabled} onChange={onToggleSelection} />\n </div>\n </div>\n );\n};\n\nconst TableRow = <RowType extends TableRowData = TableRowData>(props: TableRowProps<RowType>) => {\n const { children, disabled, className, noHover, ...remainingProps } = props;\n\n const renderConfigContext = useOptionalTableRenderConfigContext<RowType>();\n const renderContext = useOptionalTableRenderContext<RowType>();\n const interactionContext = useOptionalTableInteractionContext<RowType>();\n const section = useOptionalTableSection();\n const bodyContext = useTableBodyContext();\n\n const cellIndexRef = useRef(0);\n cellIndexRef.current = 0;\n\n if (\n !renderContext ||\n !renderConfigContext ||\n !interactionContext ||\n renderContext.columns.length === 0 ||\n section !== 'body' ||\n !bodyContext\n ) {\n return null;\n }\n\n const rowData = remainingProps as RowType;\n const rowIndex = bodyContext.nextRowIndex();\n const rowId = resolveRowKey(rowData, rowIndex, renderConfigContext.rowKey);\n\n const resolvedRowAnimationProps =\n typeof renderConfigContext.rowAnimationProps === 'function'\n ? renderConfigContext.rowAnimationProps(rowData, rowIndex)\n : renderConfigContext.rowAnimationProps;\n\n const interactiveRowProps = getInteractiveRowProps({\n isClickable: interactionContext.isClickable && !disabled,\n onRowClick: (clickedRow, clickedRowIndex) => {\n interactionContext.onRowClick?.(clickedRow, clickedRowIndex);\n interactionContext.onActiveRowChange?.(\n interactionContext.activeRowId === rowId ? undefined : rowId,\n clickedRow,\n clickedRowIndex\n );\n },\n row: rowData,\n rowIndex,\n });\n\n const isSelected = interactionContext.selectedRowIdSet.has(rowId);\n const selectionCell = interactionContext.showSelectionColumn && (\n <TableRowSelectionCell\n isSelected={isSelected}\n isTableView={renderConfigContext.isTableView}\n onToggleSelection={() => interactionContext.onToggleRowSelection?.(rowId)}\n cardCellClassName={renderConfigContext.cardClasses.cellClassName}\n disabled={disabled}\n />\n );\n\n const rowClassName = classNames(\n 'table-row',\n !renderConfigContext.isTableView && 'divider-y-1 divider-color-lighter divider-style-solid',\n interactionContext.activeRowId === rowId && 'table-row-active',\n disabled && 'table-row-disabled',\n isSelected && 'table-row-selected',\n interactiveRowProps.isClickableClassName,\n (disabled || noHover) && 'table-row-no-hover',\n !renderConfigContext.isTableView && renderConfigContext.cardClasses.rowClassName,\n className,\n resolveRowClassName(renderConfigContext.rowClassName, rowData, rowIndex)\n );\n\n const rowContent = (\n <>\n {selectionCell}\n {children}\n </>\n );\n\n const staticRowProps = {\n ...extractTableHtmlAttributes(remainingProps),\n className: rowClassName,\n 'data-index': rowIndex,\n 'data-row-id': String(rowId),\n onClick: interactiveRowProps.onClick,\n onKeyDown: interactiveRowProps.onKeyDown,\n role: 'row' as const,\n tabIndex: interactiveRowProps.tabIndex,\n };\n\n const animatedRowProps = {\n ...(extractTableHtmlAttributes(remainingProps) as Omit<\n HTMLMotionProps<'div'>,\n 'children' | 'className' | 'data-index' | 'data-row-id' | 'onClick' | 'onKeyDown' | 'role' | 'tabIndex'\n >),\n className: rowClassName,\n 'data-index': rowIndex,\n 'data-row-id': String(rowId),\n onClick: interactiveRowProps.onClick,\n onKeyDown: interactiveRowProps.onKeyDown,\n role: 'row' as const,\n tabIndex: interactiveRowProps.tabIndex,\n ...resolvedRowAnimationProps,\n };\n\n const rowNode = (\n <TableRowContext.Provider\n value={{\n nextColumnIndex: (explicitColumnIndex, span = 1) => {\n if (explicitColumnIndex !== undefined && explicitColumnIndex >= 0) {\n cellIndexRef.current = explicitColumnIndex + span;\n return explicitColumnIndex;\n }\n\n const nextIndex = cellIndexRef.current;\n cellIndexRef.current += span;\n return nextIndex;\n },\n rowIndex,\n rowId,\n rowData,\n }}\n >\n {resolvedRowAnimationProps ? (\n <motion.div {...animatedRowProps}>{rowContent}</motion.div>\n ) : (\n <div {...staticRowProps}>{rowContent}</div>\n )}\n </TableRowContext.Provider>\n );\n\n renderContext.renderDraft.bodyRows.push({\n rowId,\n rowIndex,\n kind: 'data',\n disabled,\n render: () => rowNode,\n });\n\n return renderContext.isRegisteringBodyRows ? null : rowNode;\n};\n\nexport default TableRow;\n"],"names":["TableRowSelectionCell","props","isSelected","isTableView","onToggleSelection","cardCellClassName","disabled","jsx","classNames","event","Checkbox","TableRow","children","className","noHover","remainingProps","renderConfigContext","useOptionalTableRenderConfigContext","renderContext","useOptionalTableRenderContext","interactionContext","useOptionalTableInteractionContext","section","useOptionalTableSection","bodyContext","useTableBodyContext","cellIndexRef","useRef","rowData","rowIndex","rowId","resolveRowKey","resolvedRowAnimationProps","interactiveRowProps","getInteractiveRowProps","clickedRow","clickedRowIndex","selectionCell","rowClassName","resolveRowClassName","rowContent","jsxs","Fragment","staticRowProps","extractTableHtmlAttributes","animatedRowProps","rowNode","TableRowContext","explicitColumnIndex","span","nextIndex","motion"],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { TableHtmlAttributes } from './Table.types';
|
|
2
|
+
export type TableSpacerRowProps = TableHtmlAttributes & {
|
|
3
|
+
/**
|
|
4
|
+
* Optional class names only for this spacer row.
|
|
5
|
+
*/
|
|
6
|
+
className?: string;
|
|
7
|
+
/**
|
|
8
|
+
* Disable table hover styling for this row.
|
|
9
|
+
*/
|
|
10
|
+
noHover?: boolean;
|
|
11
|
+
};
|
|
12
|
+
declare const TableSpacerRow: (props: TableSpacerRowProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
13
|
+
export default TableSpacerRow;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { jsx as n } from "react/jsx-runtime";
|
|
2
|
+
import d from "../../utils/classNames.js";
|
|
3
|
+
import { useOptionalTableSection as p, useTableBodyContext as m } from "./context/TableStructureContext.js";
|
|
4
|
+
import { useOptionalTableRenderContext as b } from "./context/TableRenderContext.js";
|
|
5
|
+
const R = (s) => {
|
|
6
|
+
const { className: a, noHover: l, ...c } = s, e = b(), i = p(), r = m();
|
|
7
|
+
if (!e || e.columns.length === 0 || i !== "body" || !r)
|
|
8
|
+
return null;
|
|
9
|
+
const o = r.nextRowIndex(), t = /* @__PURE__ */ n(
|
|
10
|
+
"div",
|
|
11
|
+
{
|
|
12
|
+
...c,
|
|
13
|
+
className: d("table-row table-row-spacer", l && "table-row-no-hover", a),
|
|
14
|
+
"data-index": o,
|
|
15
|
+
role: "presentation",
|
|
16
|
+
children: /* @__PURE__ */ n("div", { className: "table-cell table-spacer-cell", role: "presentation" })
|
|
17
|
+
}
|
|
18
|
+
);
|
|
19
|
+
return e.renderDraft.bodyRows.push({
|
|
20
|
+
rowId: `spacer-${o}`,
|
|
21
|
+
rowIndex: o,
|
|
22
|
+
kind: "spacer",
|
|
23
|
+
render: () => t
|
|
24
|
+
}), e.isRegisteringBodyRows ? null : t;
|
|
25
|
+
};
|
|
26
|
+
export {
|
|
27
|
+
R as default
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=TableSpacerRow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableSpacerRow.js","sources":["../../../src/components/table/TableSpacerRow.tsx"],"sourcesContent":["import classNames from '../../utils/classNames';\nimport type { TableHtmlAttributes } from './Table.types';\nimport { useTableBodyContext, useOptionalTableSection } from './context/TableStructureContext';\nimport { useOptionalTableRenderContext } from './context/TableRenderContext';\n\nexport type TableSpacerRowProps = TableHtmlAttributes & {\n /**\n * Optional class names only for this spacer row.\n */\n className?: string;\n\n /**\n * Disable table hover styling for this row.\n */\n noHover?: boolean;\n};\n\nconst TableSpacerRow = (props: TableSpacerRowProps) => {\n const { className, noHover, ...remainingProps } = props;\n\n const renderContext = useOptionalTableRenderContext();\n const section = useOptionalTableSection();\n const bodyContext = useTableBodyContext();\n\n if (!renderContext || renderContext.columns.length === 0 || section !== 'body' || !bodyContext) {\n return null;\n }\n\n const rowIndex = bodyContext.nextRowIndex();\n\n const rowNode = (\n <div\n {...remainingProps}\n className={classNames('table-row table-row-spacer', noHover && 'table-row-no-hover', className)}\n data-index={rowIndex}\n role='presentation'\n >\n <div className='table-cell table-spacer-cell' role='presentation' />\n </div>\n );\n\n renderContext.renderDraft.bodyRows.push({\n rowId: `spacer-${rowIndex}`,\n rowIndex,\n kind: 'spacer',\n render: () => rowNode,\n });\n\n return renderContext.isRegisteringBodyRows ? null : rowNode;\n};\n\nexport default TableSpacerRow;\n"],"names":["TableSpacerRow","props","className","noHover","remainingProps","renderContext","useOptionalTableRenderContext","section","useOptionalTableSection","bodyContext","useTableBodyContext","rowIndex","rowNode","jsx","classNames"],"mappings":";;;;AAiBA,MAAMA,IAAiB,CAACC,MAA+B;AACnD,QAAM,EAAE,WAAAC,GAAW,SAAAC,GAAS,GAAGC,MAAmBH,GAE5CI,IAAgBC,EAAA,GAChBC,IAAUC,EAAA,GACVC,IAAcC,EAAA;AAEpB,MAAI,CAACL,KAAiBA,EAAc,QAAQ,WAAW,KAAKE,MAAY,UAAU,CAACE;AAC/E,WAAO;AAGX,QAAME,IAAWF,EAAY,aAAA,GAEvBG,IACF,gBAAAC;AAAA,IAAC;AAAA,IAAA;AAAA,MACI,GAAGT;AAAA,MACJ,WAAWU,EAAW,8BAA8BX,KAAW,sBAAsBD,CAAS;AAAA,MAC9F,cAAYS;AAAA,MACZ,MAAK;AAAA,MAEL,UAAA,gBAAAE,EAAC,OAAA,EAAI,WAAU,gCAA+B,MAAK,eAAA,CAAe;AAAA,IAAA;AAAA,EAAA;AAI1E,SAAAR,EAAc,YAAY,SAAS,KAAK;AAAA,IACpC,OAAO,UAAUM,CAAQ;AAAA,IACzB,UAAAA;AAAA,IACA,MAAM;AAAA,IACN,QAAQ,MAAMC;AAAA,EAAA,CACjB,GAEMP,EAAc,wBAAwB,OAAOO;AACxD;"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { PropsWithChildren } from 'react';
|
|
2
|
+
import { default as TableToolbarColumn } from './TableToolbarColumn';
|
|
2
3
|
export type TableToolbarProps = {
|
|
3
4
|
/**
|
|
4
5
|
* Optional class names for the wrapper element.
|
|
@@ -7,3 +8,5 @@ export type TableToolbarProps = {
|
|
|
7
8
|
};
|
|
8
9
|
declare const TableToolbar: ({ className, children }: PropsWithChildren<TableToolbarProps>) => import("react/jsx-runtime").JSX.Element;
|
|
9
10
|
export default TableToolbar;
|
|
11
|
+
export { TableToolbarColumn };
|
|
12
|
+
export type { TableToolbarColumnHorizontalAlign, TableToolbarColumnProps, TableToolbarColumnVerticalAlign, } from './TableToolbarColumn';
|
|
@@ -1,7 +1,52 @@
|
|
|
1
|
-
import { jsx as s } from "react/jsx-runtime";
|
|
2
|
-
import
|
|
3
|
-
|
|
1
|
+
import { jsx as s, jsxs as T } from "react/jsx-runtime";
|
|
2
|
+
import { useRef as f, useState as v, useLayoutEffect as x, Children as y, isValidElement as b, Fragment as z } from "react";
|
|
3
|
+
import N from "../../hooks/useResizeObserver.js";
|
|
4
|
+
import p from "../../utils/classNames.js";
|
|
5
|
+
import w from "./TableToolbarColumn.js";
|
|
6
|
+
const A = (o) => b(o) && o.type === w, h = (o) => {
|
|
7
|
+
const t = [];
|
|
8
|
+
for (const e of y.toArray(o)) {
|
|
9
|
+
if (b(e) && e.type === z) {
|
|
10
|
+
const r = h(e.props.children);
|
|
11
|
+
if (!r)
|
|
12
|
+
return null;
|
|
13
|
+
t.push(...r);
|
|
14
|
+
continue;
|
|
15
|
+
}
|
|
16
|
+
if (!A(e))
|
|
17
|
+
return null;
|
|
18
|
+
t.push(e);
|
|
19
|
+
}
|
|
20
|
+
return t;
|
|
21
|
+
}, u = (o) => {
|
|
22
|
+
if (!o)
|
|
23
|
+
return !1;
|
|
24
|
+
const t = Array.from(o.children);
|
|
25
|
+
if (t.length < 2)
|
|
26
|
+
return !1;
|
|
27
|
+
const e = (t[0]?.offsetTop ?? 0) + (t[0]?.offsetHeight ?? 0);
|
|
28
|
+
return t.some((r) => r.offsetTop + r.offsetHeight !== e);
|
|
29
|
+
}, j = ({ className: o, children: t }) => {
|
|
30
|
+
const e = f(null), r = f(null), c = f(null), [g, d] = v(!1), [m, , { inlineSize: C }] = N(), n = h(t), a = (n ?? []).filter((l) => l.props.horizontalAlign !== "right"), i = (n ?? []).filter((l) => l.props.horizontalAlign === "right");
|
|
31
|
+
return x(() => {
|
|
32
|
+
const l = e.current;
|
|
33
|
+
l?.classList.add("table-toolbar-measuring");
|
|
34
|
+
const R = u(m.current) || u(r.current) || u(c.current);
|
|
35
|
+
l?.classList.remove("table-toolbar-measuring"), d(R);
|
|
36
|
+
}, [t, a.length, i.length, C]), n?.length ? /* @__PURE__ */ s(
|
|
37
|
+
"div",
|
|
38
|
+
{
|
|
39
|
+
className: p("table-toolbar", g && "table-toolbar-has-wrap", o),
|
|
40
|
+
ref: e,
|
|
41
|
+
children: /* @__PURE__ */ T("div", { className: "table-toolbar-container", ref: m, children: [
|
|
42
|
+
a.length > 0 && /* @__PURE__ */ s("div", { className: "table-toolbar-group-left", ref: r, children: a }),
|
|
43
|
+
i.length > 0 && /* @__PURE__ */ s("div", { className: "table-toolbar-group-right", ref: c, children: i })
|
|
44
|
+
] })
|
|
45
|
+
}
|
|
46
|
+
) : /* @__PURE__ */ s("div", { className: p("table-toolbar", o), children: t });
|
|
47
|
+
};
|
|
4
48
|
export {
|
|
5
|
-
|
|
49
|
+
w as TableToolbarColumn,
|
|
50
|
+
j as default
|
|
6
51
|
};
|
|
7
52
|
//# sourceMappingURL=TableToolbar.js.map
|