@simple-table/vue 3.0.0-beta.10
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/dist/cjs/core/src/consts/column-constraints.d.ts +58 -0
- package/dist/cjs/core/src/consts/general-consts.d.ts +13 -0
- package/dist/cjs/core/src/core/SimpleTableVanilla.d.ts +71 -0
- package/dist/cjs/core/src/core/api/TableAPIImpl.d.ts +44 -0
- package/dist/cjs/core/src/core/dom/DOMManager.d.ts +50 -0
- package/dist/cjs/core/src/core/initialization/TableInitializer.d.ts +30 -0
- package/dist/cjs/core/src/core/rendering/RenderOrchestrator.d.ts +123 -0
- package/dist/cjs/core/src/core/rendering/SectionRenderer.d.ts +61 -0
- package/dist/cjs/core/src/core/rendering/TableRenderer.d.ts +89 -0
- package/dist/cjs/core/src/hooks/ariaAnnouncements.d.ts +37 -0
- package/dist/cjs/core/src/hooks/contentHeight.d.ts +23 -0
- package/dist/cjs/core/src/hooks/expandedDepths.d.ts +65 -0
- package/dist/cjs/core/src/hooks/handleOutsideClick.d.ts +50 -0
- package/dist/cjs/core/src/hooks/previousValue.d.ts +30 -0
- package/dist/cjs/core/src/hooks/scrollbarVisibility.d.ts +65 -0
- package/dist/cjs/core/src/hooks/scrollbarWidth.d.ts +52 -0
- package/dist/cjs/core/src/hooks/useAggregatedRows.d.ts +14 -0
- package/dist/cjs/core/src/hooks/useQuickFilter.d.ts +14 -0
- package/dist/cjs/core/src/hooks/windowResize.d.ts +31 -0
- package/dist/cjs/core/src/icons/AngleDownIcon.d.ts +1 -0
- package/dist/cjs/core/src/icons/AngleLeftIcon.d.ts +1 -0
- package/dist/cjs/core/src/icons/AngleRightIcon.d.ts +1 -0
- package/dist/cjs/core/src/icons/AngleUpIcon.d.ts +1 -0
- package/dist/cjs/core/src/icons/AscIcon.d.ts +1 -0
- package/dist/cjs/core/src/icons/CheckIcon.d.ts +1 -0
- package/dist/cjs/core/src/icons/DescIcon.d.ts +1 -0
- package/dist/cjs/core/src/icons/DragIcon.d.ts +1 -0
- package/dist/cjs/core/src/icons/FilterIcon.d.ts +1 -0
- package/dist/cjs/core/src/icons/SelectIcon.d.ts +1 -0
- package/dist/cjs/core/src/icons/index.d.ts +14 -0
- package/dist/cjs/core/src/index.d.ts +48 -0
- package/dist/cjs/core/src/managers/AutoScaleManager.d.ts +26 -0
- package/dist/cjs/core/src/managers/DimensionManager.d.ts +42 -0
- package/dist/cjs/core/src/managers/DragHandlerManager.d.ts +44 -0
- package/dist/cjs/core/src/managers/FilterManager.d.ts +36 -0
- package/dist/cjs/core/src/managers/RowManager.d.ts +56 -0
- package/dist/cjs/core/src/managers/RowSelectionManager.d.ts +36 -0
- package/dist/cjs/core/src/managers/ScrollManager.d.ts +35 -0
- package/dist/cjs/core/src/managers/SectionScrollController.d.ts +50 -0
- package/dist/cjs/core/src/managers/SelectionManager/SelectionManager.d.ts +246 -0
- package/dist/cjs/core/src/managers/SelectionManager/index.d.ts +2 -0
- package/dist/cjs/core/src/managers/SelectionManager/keyboardUtils.d.ts +7 -0
- package/dist/cjs/core/src/managers/SelectionManager/mouseUtils.d.ts +15 -0
- package/dist/cjs/core/src/managers/SelectionManager/selectionRangeUtils.d.ts +7 -0
- package/dist/cjs/core/src/managers/SelectionManager/types.d.ts +22 -0
- package/dist/cjs/core/src/managers/SortManager.d.ts +42 -0
- package/dist/cjs/core/src/types/AggregationTypes.d.ts +8 -0
- package/dist/cjs/core/src/types/BoundingBox.d.ts +11 -0
- package/dist/cjs/core/src/types/Cell.d.ts +7 -0
- package/dist/cjs/core/src/types/CellChangeProps.d.ts +9 -0
- package/dist/cjs/core/src/types/CellClickProps.d.ts +11 -0
- package/dist/cjs/core/src/types/CellRendererProps.d.ts +32 -0
- package/dist/cjs/core/src/types/CellValue.d.ts +2 -0
- package/dist/cjs/core/src/types/ColumnEditorConfig.d.ts +32 -0
- package/dist/cjs/core/src/types/ColumnEditorRowRendererProps.d.ts +39 -0
- package/dist/cjs/core/src/types/ColumnVisibilityTypes.d.ts +4 -0
- package/dist/cjs/core/src/types/CustomTheme.d.ts +26 -0
- package/dist/cjs/core/src/types/DragHandlerProps.d.ts +14 -0
- package/dist/cjs/core/src/types/EnumOption.d.ts +5 -0
- package/dist/cjs/core/src/types/FilterTypes.d.ts +22 -0
- package/dist/cjs/core/src/types/FlattenedHeader.d.ts +10 -0
- package/dist/cjs/core/src/types/FooterRendererProps.d.ts +17 -0
- package/dist/cjs/core/src/types/GenerateRowIdParams.d.ts +11 -0
- package/dist/cjs/core/src/types/GetRowId.d.ts +10 -0
- package/dist/cjs/core/src/types/HandleResizeStartProps.d.ts +21 -0
- package/dist/cjs/core/src/types/HeaderDropdownProps.d.ts +14 -0
- package/dist/cjs/core/src/types/HeaderObject.d.ts +98 -0
- package/dist/cjs/core/src/types/HeaderRendererProps.d.ts +17 -0
- package/dist/cjs/core/src/types/IconsConfig.d.ts +19 -0
- package/dist/cjs/core/src/types/OnNextPage.d.ts +2 -0
- package/dist/cjs/core/src/types/OnRowGroupExpandProps.d.ts +16 -0
- package/dist/cjs/core/src/types/OnSortProps.d.ts +3 -0
- package/dist/cjs/core/src/types/PanelSection.d.ts +1 -0
- package/dist/cjs/core/src/types/Pinned.d.ts +1 -0
- package/dist/cjs/core/src/types/PinnedSectionsState.d.ts +6 -0
- package/dist/cjs/core/src/types/QuickFilterTypes.d.ts +21 -0
- package/dist/cjs/core/src/types/Row.d.ts +3 -0
- package/dist/cjs/core/src/types/RowButton.d.ts +6 -0
- package/dist/cjs/core/src/types/RowId.d.ts +1 -0
- package/dist/cjs/core/src/types/RowSelectionChangeProps.d.ts +7 -0
- package/dist/cjs/core/src/types/RowState.d.ts +12 -0
- package/dist/cjs/core/src/types/RowStateRendererProps.d.ts +18 -0
- package/dist/cjs/core/src/types/SharedTableProps.d.ts +24 -0
- package/dist/cjs/core/src/types/SimpleTableConfig.d.ts +88 -0
- package/dist/cjs/core/src/types/SimpleTableProps.d.ts +99 -0
- package/dist/cjs/core/src/types/SortColumn.d.ts +8 -0
- package/dist/cjs/core/src/types/TableAPI.d.ts +57 -0
- package/dist/cjs/core/src/types/TableHeaderProps.d.ts +17 -0
- package/dist/cjs/core/src/types/TableRefType.d.ts +78 -0
- package/dist/cjs/core/src/types/TableRow.d.ts +29 -0
- package/dist/cjs/core/src/types/TableRowProps.d.ts +29 -0
- package/dist/cjs/core/src/types/Theme.d.ts +2 -0
- package/dist/cjs/core/src/types/UpdateCellProps.d.ts +8 -0
- package/dist/cjs/core/src/utils/bodyCell/content.d.ts +5 -0
- package/dist/cjs/core/src/utils/bodyCell/editing.d.ts +4 -0
- package/dist/cjs/core/src/utils/bodyCell/editors/booleanDropdown.d.ts +2 -0
- package/dist/cjs/core/src/utils/bodyCell/editors/datePicker.d.ts +2 -0
- package/dist/cjs/core/src/utils/bodyCell/editors/dropdown.d.ts +18 -0
- package/dist/cjs/core/src/utils/bodyCell/editors/enumDropdown.d.ts +2 -0
- package/dist/cjs/core/src/utils/bodyCell/eventTracking.d.ts +3 -0
- package/dist/cjs/core/src/utils/bodyCell/expansion.d.ts +4 -0
- package/dist/cjs/core/src/utils/bodyCell/selection.d.ts +7 -0
- package/dist/cjs/core/src/utils/bodyCell/styling.d.ts +5 -0
- package/dist/cjs/core/src/utils/bodyCell/types.d.ts +103 -0
- package/dist/cjs/core/src/utils/bodyCellRenderer.d.ts +5 -0
- package/dist/cjs/core/src/utils/cellClipboardUtils.d.ts +25 -0
- package/dist/cjs/core/src/utils/cellScrollUtils.d.ts +10 -0
- package/dist/cjs/core/src/utils/cellUtils.d.ts +18 -0
- package/dist/cjs/core/src/utils/charts/createBarChart.d.ts +15 -0
- package/dist/cjs/core/src/utils/charts/createLineAreaChart.d.ts +17 -0
- package/dist/cjs/core/src/utils/collapseUtils.d.ts +24 -0
- package/dist/cjs/core/src/utils/columnEditor/columnEditorUtils.d.ts +14 -0
- package/dist/cjs/core/src/utils/columnEditor/createCheckbox.d.ts +21 -0
- package/dist/cjs/core/src/utils/columnEditor/createColumnEditor.d.ts +25 -0
- package/dist/cjs/core/src/utils/columnEditor/createColumnEditorPopout.d.ts +22 -0
- package/dist/cjs/core/src/utils/columnEditor/createColumnEditorRow.d.ts +31 -0
- package/dist/cjs/core/src/utils/csvExportUtils.d.ts +14 -0
- package/dist/cjs/core/src/utils/dateUtils.d.ts +18 -0
- package/dist/cjs/core/src/utils/deprecatedPropsWarnings.d.ts +10 -0
- package/dist/cjs/core/src/utils/filterUtils.d.ts +5 -0
- package/dist/cjs/core/src/utils/filters/createBooleanFilter.d.ts +15 -0
- package/dist/cjs/core/src/utils/filters/createCustomSelect.d.ts +20 -0
- package/dist/cjs/core/src/utils/filters/createDateFilter.d.ts +15 -0
- package/dist/cjs/core/src/utils/filters/createDatePicker.d.ts +10 -0
- package/dist/cjs/core/src/utils/filters/createDropdown.d.ts +16 -0
- package/dist/cjs/core/src/utils/filters/createEnumFilter.d.ts +15 -0
- package/dist/cjs/core/src/utils/filters/createFilterActions.d.ts +11 -0
- package/dist/cjs/core/src/utils/filters/createFilterDropdown.d.ts +15 -0
- package/dist/cjs/core/src/utils/filters/createFilterInput.d.ts +16 -0
- package/dist/cjs/core/src/utils/filters/createNumberFilter.d.ts +15 -0
- package/dist/cjs/core/src/utils/filters/createStringFilter.d.ts +15 -0
- package/dist/cjs/core/src/utils/footer/createTableFooter.d.ts +21 -0
- package/dist/cjs/core/src/utils/formatters.d.ts +3 -0
- package/dist/cjs/core/src/utils/generalUtils.d.ts +4 -0
- package/dist/cjs/core/src/utils/headerCell/collapsing.d.ts +6 -0
- package/dist/cjs/core/src/utils/headerCell/dragging.d.ts +5 -0
- package/dist/cjs/core/src/utils/headerCell/editing.d.ts +4 -0
- package/dist/cjs/core/src/utils/headerCell/eventTracking.d.ts +25 -0
- package/dist/cjs/core/src/utils/headerCell/filtering.d.ts +3 -0
- package/dist/cjs/core/src/utils/headerCell/resizing.d.ts +3 -0
- package/dist/cjs/core/src/utils/headerCell/selection.d.ts +10 -0
- package/dist/cjs/core/src/utils/headerCell/sorting.d.ts +3 -0
- package/dist/cjs/core/src/utils/headerCell/styling.d.ts +5 -0
- package/dist/cjs/core/src/utils/headerCell/types.d.ts +75 -0
- package/dist/cjs/core/src/utils/headerCellRenderer.d.ts +4 -0
- package/dist/cjs/core/src/utils/headerUtils.d.ts +41 -0
- package/dist/cjs/core/src/utils/headerWidthUtils.d.ts +56 -0
- package/dist/cjs/core/src/utils/horizontalScrollbarRenderer.d.ts +14 -0
- package/dist/cjs/core/src/utils/infiniteScrollUtils.d.ts +145 -0
- package/dist/cjs/core/src/utils/nestedGridRowRenderer.d.ts +34 -0
- package/dist/cjs/core/src/utils/pinnedColumnUtils.d.ts +25 -0
- package/dist/cjs/core/src/utils/quickFilterUtils.d.ts +14 -0
- package/dist/cjs/core/src/utils/resizeUtils/autoExpandResize.d.ts +21 -0
- package/dist/cjs/core/src/utils/resizeUtils/compensation.d.ts +11 -0
- package/dist/cjs/core/src/utils/resizeUtils/domUpdates.d.ts +15 -0
- package/dist/cjs/core/src/utils/resizeUtils/index.d.ts +5 -0
- package/dist/cjs/core/src/utils/resizeUtils/maxWidth.d.ts +9 -0
- package/dist/cjs/core/src/utils/resizeUtils/parentHeaderResize.d.ts +11 -0
- package/dist/cjs/core/src/utils/resizeUtils/sectionWidths.d.ts +16 -0
- package/dist/cjs/core/src/utils/rowFlattening.d.ts +30 -0
- package/dist/cjs/core/src/utils/rowProcessing.d.ts +36 -0
- package/dist/cjs/core/src/utils/rowSelectionUtils.d.ts +39 -0
- package/dist/cjs/core/src/utils/rowSeparatorRenderer.d.ts +12 -0
- package/dist/cjs/core/src/utils/rowUtils.d.ts +136 -0
- package/dist/cjs/core/src/utils/sortUtils.d.ts +8 -0
- package/dist/cjs/core/src/utils/stateRowRenderer.d.ts +15 -0
- package/dist/cjs/core/src/utils/stickyParentsRenderer.d.ts +30 -0
- package/dist/cjs/index.js +2 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/vue/src/SimpleTable.d.ts +4 -0
- package/dist/cjs/vue/src/buildVanillaConfig.d.ts +3 -0
- package/dist/cjs/vue/src/index.d.ts +3 -0
- package/dist/cjs/vue/src/types.d.ts +51 -0
- package/dist/cjs/vue/src/utils/wrapVueRenderer.d.ts +21 -0
- package/dist/core/src/consts/column-constraints.d.ts +58 -0
- package/dist/core/src/consts/general-consts.d.ts +13 -0
- package/dist/core/src/core/SimpleTableVanilla.d.ts +71 -0
- package/dist/core/src/core/api/TableAPIImpl.d.ts +44 -0
- package/dist/core/src/core/dom/DOMManager.d.ts +50 -0
- package/dist/core/src/core/initialization/TableInitializer.d.ts +30 -0
- package/dist/core/src/core/rendering/RenderOrchestrator.d.ts +123 -0
- package/dist/core/src/core/rendering/SectionRenderer.d.ts +61 -0
- package/dist/core/src/core/rendering/TableRenderer.d.ts +89 -0
- package/dist/core/src/hooks/ariaAnnouncements.d.ts +37 -0
- package/dist/core/src/hooks/contentHeight.d.ts +23 -0
- package/dist/core/src/hooks/expandedDepths.d.ts +65 -0
- package/dist/core/src/hooks/handleOutsideClick.d.ts +50 -0
- package/dist/core/src/hooks/previousValue.d.ts +30 -0
- package/dist/core/src/hooks/scrollbarVisibility.d.ts +65 -0
- package/dist/core/src/hooks/scrollbarWidth.d.ts +52 -0
- package/dist/core/src/hooks/useAggregatedRows.d.ts +14 -0
- package/dist/core/src/hooks/useQuickFilter.d.ts +14 -0
- package/dist/core/src/hooks/windowResize.d.ts +31 -0
- package/dist/core/src/icons/AngleDownIcon.d.ts +1 -0
- package/dist/core/src/icons/AngleLeftIcon.d.ts +1 -0
- package/dist/core/src/icons/AngleRightIcon.d.ts +1 -0
- package/dist/core/src/icons/AngleUpIcon.d.ts +1 -0
- package/dist/core/src/icons/AscIcon.d.ts +1 -0
- package/dist/core/src/icons/CheckIcon.d.ts +1 -0
- package/dist/core/src/icons/DescIcon.d.ts +1 -0
- package/dist/core/src/icons/DragIcon.d.ts +1 -0
- package/dist/core/src/icons/FilterIcon.d.ts +1 -0
- package/dist/core/src/icons/SelectIcon.d.ts +1 -0
- package/dist/core/src/icons/index.d.ts +14 -0
- package/dist/core/src/index.d.ts +48 -0
- package/dist/core/src/managers/AutoScaleManager.d.ts +26 -0
- package/dist/core/src/managers/DimensionManager.d.ts +42 -0
- package/dist/core/src/managers/DragHandlerManager.d.ts +44 -0
- package/dist/core/src/managers/FilterManager.d.ts +36 -0
- package/dist/core/src/managers/RowManager.d.ts +56 -0
- package/dist/core/src/managers/RowSelectionManager.d.ts +36 -0
- package/dist/core/src/managers/ScrollManager.d.ts +35 -0
- package/dist/core/src/managers/SectionScrollController.d.ts +50 -0
- package/dist/core/src/managers/SelectionManager/SelectionManager.d.ts +246 -0
- package/dist/core/src/managers/SelectionManager/index.d.ts +2 -0
- package/dist/core/src/managers/SelectionManager/keyboardUtils.d.ts +7 -0
- package/dist/core/src/managers/SelectionManager/mouseUtils.d.ts +15 -0
- package/dist/core/src/managers/SelectionManager/selectionRangeUtils.d.ts +7 -0
- package/dist/core/src/managers/SelectionManager/types.d.ts +22 -0
- package/dist/core/src/managers/SortManager.d.ts +42 -0
- package/dist/core/src/types/AggregationTypes.d.ts +8 -0
- package/dist/core/src/types/BoundingBox.d.ts +11 -0
- package/dist/core/src/types/Cell.d.ts +7 -0
- package/dist/core/src/types/CellChangeProps.d.ts +9 -0
- package/dist/core/src/types/CellClickProps.d.ts +11 -0
- package/dist/core/src/types/CellRendererProps.d.ts +32 -0
- package/dist/core/src/types/CellValue.d.ts +2 -0
- package/dist/core/src/types/ColumnEditorConfig.d.ts +32 -0
- package/dist/core/src/types/ColumnEditorRowRendererProps.d.ts +39 -0
- package/dist/core/src/types/ColumnVisibilityTypes.d.ts +4 -0
- package/dist/core/src/types/CustomTheme.d.ts +26 -0
- package/dist/core/src/types/DragHandlerProps.d.ts +14 -0
- package/dist/core/src/types/EnumOption.d.ts +5 -0
- package/dist/core/src/types/FilterTypes.d.ts +22 -0
- package/dist/core/src/types/FlattenedHeader.d.ts +10 -0
- package/dist/core/src/types/FooterRendererProps.d.ts +17 -0
- package/dist/core/src/types/GenerateRowIdParams.d.ts +11 -0
- package/dist/core/src/types/GetRowId.d.ts +10 -0
- package/dist/core/src/types/HandleResizeStartProps.d.ts +21 -0
- package/dist/core/src/types/HeaderDropdownProps.d.ts +14 -0
- package/dist/core/src/types/HeaderObject.d.ts +98 -0
- package/dist/core/src/types/HeaderRendererProps.d.ts +17 -0
- package/dist/core/src/types/IconsConfig.d.ts +19 -0
- package/dist/core/src/types/OnNextPage.d.ts +2 -0
- package/dist/core/src/types/OnRowGroupExpandProps.d.ts +16 -0
- package/dist/core/src/types/OnSortProps.d.ts +3 -0
- package/dist/core/src/types/PanelSection.d.ts +1 -0
- package/dist/core/src/types/Pinned.d.ts +1 -0
- package/dist/core/src/types/PinnedSectionsState.d.ts +6 -0
- package/dist/core/src/types/QuickFilterTypes.d.ts +21 -0
- package/dist/core/src/types/Row.d.ts +3 -0
- package/dist/core/src/types/RowButton.d.ts +6 -0
- package/dist/core/src/types/RowId.d.ts +1 -0
- package/dist/core/src/types/RowSelectionChangeProps.d.ts +7 -0
- package/dist/core/src/types/RowState.d.ts +12 -0
- package/dist/core/src/types/RowStateRendererProps.d.ts +18 -0
- package/dist/core/src/types/SharedTableProps.d.ts +24 -0
- package/dist/core/src/types/SimpleTableConfig.d.ts +88 -0
- package/dist/core/src/types/SimpleTableProps.d.ts +99 -0
- package/dist/core/src/types/SortColumn.d.ts +8 -0
- package/dist/core/src/types/TableAPI.d.ts +57 -0
- package/dist/core/src/types/TableHeaderProps.d.ts +17 -0
- package/dist/core/src/types/TableRefType.d.ts +78 -0
- package/dist/core/src/types/TableRow.d.ts +29 -0
- package/dist/core/src/types/TableRowProps.d.ts +29 -0
- package/dist/core/src/types/Theme.d.ts +2 -0
- package/dist/core/src/types/UpdateCellProps.d.ts +8 -0
- package/dist/core/src/utils/bodyCell/content.d.ts +5 -0
- package/dist/core/src/utils/bodyCell/editing.d.ts +4 -0
- package/dist/core/src/utils/bodyCell/editors/booleanDropdown.d.ts +2 -0
- package/dist/core/src/utils/bodyCell/editors/datePicker.d.ts +2 -0
- package/dist/core/src/utils/bodyCell/editors/dropdown.d.ts +18 -0
- package/dist/core/src/utils/bodyCell/editors/enumDropdown.d.ts +2 -0
- package/dist/core/src/utils/bodyCell/eventTracking.d.ts +3 -0
- package/dist/core/src/utils/bodyCell/expansion.d.ts +4 -0
- package/dist/core/src/utils/bodyCell/selection.d.ts +7 -0
- package/dist/core/src/utils/bodyCell/styling.d.ts +5 -0
- package/dist/core/src/utils/bodyCell/types.d.ts +103 -0
- package/dist/core/src/utils/bodyCellRenderer.d.ts +5 -0
- package/dist/core/src/utils/cellClipboardUtils.d.ts +25 -0
- package/dist/core/src/utils/cellScrollUtils.d.ts +10 -0
- package/dist/core/src/utils/cellUtils.d.ts +18 -0
- package/dist/core/src/utils/charts/createBarChart.d.ts +15 -0
- package/dist/core/src/utils/charts/createLineAreaChart.d.ts +17 -0
- package/dist/core/src/utils/collapseUtils.d.ts +24 -0
- package/dist/core/src/utils/columnEditor/columnEditorUtils.d.ts +14 -0
- package/dist/core/src/utils/columnEditor/createCheckbox.d.ts +21 -0
- package/dist/core/src/utils/columnEditor/createColumnEditor.d.ts +25 -0
- package/dist/core/src/utils/columnEditor/createColumnEditorPopout.d.ts +22 -0
- package/dist/core/src/utils/columnEditor/createColumnEditorRow.d.ts +31 -0
- package/dist/core/src/utils/csvExportUtils.d.ts +14 -0
- package/dist/core/src/utils/dateUtils.d.ts +18 -0
- package/dist/core/src/utils/deprecatedPropsWarnings.d.ts +10 -0
- package/dist/core/src/utils/filterUtils.d.ts +5 -0
- package/dist/core/src/utils/filters/createBooleanFilter.d.ts +15 -0
- package/dist/core/src/utils/filters/createCustomSelect.d.ts +20 -0
- package/dist/core/src/utils/filters/createDateFilter.d.ts +15 -0
- package/dist/core/src/utils/filters/createDatePicker.d.ts +10 -0
- package/dist/core/src/utils/filters/createDropdown.d.ts +16 -0
- package/dist/core/src/utils/filters/createEnumFilter.d.ts +15 -0
- package/dist/core/src/utils/filters/createFilterActions.d.ts +11 -0
- package/dist/core/src/utils/filters/createFilterDropdown.d.ts +15 -0
- package/dist/core/src/utils/filters/createFilterInput.d.ts +16 -0
- package/dist/core/src/utils/filters/createNumberFilter.d.ts +15 -0
- package/dist/core/src/utils/filters/createStringFilter.d.ts +15 -0
- package/dist/core/src/utils/footer/createTableFooter.d.ts +21 -0
- package/dist/core/src/utils/formatters.d.ts +3 -0
- package/dist/core/src/utils/generalUtils.d.ts +4 -0
- package/dist/core/src/utils/headerCell/collapsing.d.ts +6 -0
- package/dist/core/src/utils/headerCell/dragging.d.ts +5 -0
- package/dist/core/src/utils/headerCell/editing.d.ts +4 -0
- package/dist/core/src/utils/headerCell/eventTracking.d.ts +25 -0
- package/dist/core/src/utils/headerCell/filtering.d.ts +3 -0
- package/dist/core/src/utils/headerCell/resizing.d.ts +3 -0
- package/dist/core/src/utils/headerCell/selection.d.ts +10 -0
- package/dist/core/src/utils/headerCell/sorting.d.ts +3 -0
- package/dist/core/src/utils/headerCell/styling.d.ts +5 -0
- package/dist/core/src/utils/headerCell/types.d.ts +75 -0
- package/dist/core/src/utils/headerCellRenderer.d.ts +4 -0
- package/dist/core/src/utils/headerUtils.d.ts +41 -0
- package/dist/core/src/utils/headerWidthUtils.d.ts +56 -0
- package/dist/core/src/utils/horizontalScrollbarRenderer.d.ts +14 -0
- package/dist/core/src/utils/infiniteScrollUtils.d.ts +145 -0
- package/dist/core/src/utils/nestedGridRowRenderer.d.ts +34 -0
- package/dist/core/src/utils/pinnedColumnUtils.d.ts +25 -0
- package/dist/core/src/utils/quickFilterUtils.d.ts +14 -0
- package/dist/core/src/utils/resizeUtils/autoExpandResize.d.ts +21 -0
- package/dist/core/src/utils/resizeUtils/compensation.d.ts +11 -0
- package/dist/core/src/utils/resizeUtils/domUpdates.d.ts +15 -0
- package/dist/core/src/utils/resizeUtils/index.d.ts +5 -0
- package/dist/core/src/utils/resizeUtils/maxWidth.d.ts +9 -0
- package/dist/core/src/utils/resizeUtils/parentHeaderResize.d.ts +11 -0
- package/dist/core/src/utils/resizeUtils/sectionWidths.d.ts +16 -0
- package/dist/core/src/utils/rowFlattening.d.ts +30 -0
- package/dist/core/src/utils/rowProcessing.d.ts +36 -0
- package/dist/core/src/utils/rowSelectionUtils.d.ts +39 -0
- package/dist/core/src/utils/rowSeparatorRenderer.d.ts +12 -0
- package/dist/core/src/utils/rowUtils.d.ts +136 -0
- package/dist/core/src/utils/sortUtils.d.ts +8 -0
- package/dist/core/src/utils/stateRowRenderer.d.ts +15 -0
- package/dist/core/src/utils/stickyParentsRenderer.d.ts +30 -0
- package/dist/index.es.js +2 -0
- package/dist/index.es.js.map +1 -0
- package/dist/vue/src/SimpleTable.d.ts +4 -0
- package/dist/vue/src/buildVanillaConfig.d.ts +3 -0
- package/dist/vue/src/index.d.ts +3 -0
- package/dist/vue/src/types.d.ts +51 -0
- package/dist/vue/src/utils/wrapVueRenderer.d.ts +21 -0
- package/package.json +67 -0
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { IconElement } from "./IconsConfig";
|
|
2
|
+
interface FooterRendererProps {
|
|
3
|
+
currentPage: number;
|
|
4
|
+
endRow: number;
|
|
5
|
+
hasNextPage: boolean;
|
|
6
|
+
hasPrevPage: boolean;
|
|
7
|
+
nextIcon?: IconElement;
|
|
8
|
+
onNextPage: () => Promise<void>;
|
|
9
|
+
onPageChange: (page: number) => void;
|
|
10
|
+
onPrevPage: () => void;
|
|
11
|
+
prevIcon?: IconElement;
|
|
12
|
+
rowsPerPage: number;
|
|
13
|
+
startRow: number;
|
|
14
|
+
totalPages: number;
|
|
15
|
+
totalRows: number;
|
|
16
|
+
}
|
|
17
|
+
export default FooterRendererProps;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import Row from "./Row";
|
|
2
|
+
import { GetRowId } from "./GetRowId";
|
|
3
|
+
export interface GenerateRowIdParams {
|
|
4
|
+
row: Row;
|
|
5
|
+
getRowId?: GetRowId;
|
|
6
|
+
depth: number;
|
|
7
|
+
index: number;
|
|
8
|
+
rowPath: (string | number)[];
|
|
9
|
+
rowIndexPath: number[];
|
|
10
|
+
groupingKey?: string;
|
|
11
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import Row from "./Row";
|
|
2
|
+
export interface GetRowIdParams {
|
|
3
|
+
row: Row;
|
|
4
|
+
depth: number;
|
|
5
|
+
index: number;
|
|
6
|
+
rowPath: (string | number)[];
|
|
7
|
+
rowIndexPath: number[];
|
|
8
|
+
groupingKey?: string;
|
|
9
|
+
}
|
|
10
|
+
export type GetRowId = (params: GetRowIdParams) => string | number;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { HeaderObject, Accessor } from "..";
|
|
2
|
+
export interface RefObject<T> {
|
|
3
|
+
current: T | null;
|
|
4
|
+
}
|
|
5
|
+
export type HandleResizeStartProps = {
|
|
6
|
+
autoExpandColumns: boolean;
|
|
7
|
+
collapsedHeaders: Set<Accessor>;
|
|
8
|
+
containerWidth: number;
|
|
9
|
+
event: MouseEvent | TouchEvent;
|
|
10
|
+
forceUpdate: () => void;
|
|
11
|
+
header: HeaderObject;
|
|
12
|
+
headers: HeaderObject[];
|
|
13
|
+
mainBodyRef: RefObject<HTMLDivElement>;
|
|
14
|
+
onColumnWidthChange?: (headers: HeaderObject[]) => void;
|
|
15
|
+
pinnedLeftRef: RefObject<HTMLDivElement>;
|
|
16
|
+
pinnedRightRef: RefObject<HTMLDivElement>;
|
|
17
|
+
reverse: boolean;
|
|
18
|
+
setHeaders: (headers: HeaderObject[] | ((prev: HeaderObject[]) => HeaderObject[])) => void;
|
|
19
|
+
setIsResizing: (isResizing: boolean | ((prev: boolean) => boolean)) => void;
|
|
20
|
+
startWidth: number;
|
|
21
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import HeaderRendererProps from "./HeaderRendererProps";
|
|
2
|
+
interface HeaderDropdownProps extends HeaderRendererProps {
|
|
3
|
+
isOpen: boolean;
|
|
4
|
+
onClose: () => void;
|
|
5
|
+
position: {
|
|
6
|
+
top?: number;
|
|
7
|
+
left?: number;
|
|
8
|
+
right?: number;
|
|
9
|
+
bottom?: number;
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
export type VanillaHeaderDropdown = (props: HeaderDropdownProps) => HTMLElement | string | null;
|
|
13
|
+
export type HeaderDropdown = (props: HeaderDropdownProps) => HTMLElement | string | null;
|
|
14
|
+
export default HeaderDropdownProps;
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import Row from "./Row";
|
|
2
|
+
import { Pinned } from "./Pinned";
|
|
3
|
+
import EnumOption from "./EnumOption";
|
|
4
|
+
import { AggregationConfig } from "./AggregationTypes";
|
|
5
|
+
import { CellRenderer } from "./CellRendererProps";
|
|
6
|
+
import { HeaderRenderer } from "./HeaderRendererProps";
|
|
7
|
+
import CellValue from "./CellValue";
|
|
8
|
+
import { SimpleTableProps } from "./SimpleTableProps";
|
|
9
|
+
import { QuickFilterGetter } from "./QuickFilterTypes";
|
|
10
|
+
export type Accessor = keyof Row | string;
|
|
11
|
+
export type ColumnType = "string" | "number" | "boolean" | "date" | "enum" | "lineAreaChart" | "barChart" | "other";
|
|
12
|
+
export type ShowWhen = "parentCollapsed" | "parentExpanded" | "always";
|
|
13
|
+
export interface ChartOptions {
|
|
14
|
+
min?: number;
|
|
15
|
+
max?: number;
|
|
16
|
+
width?: number;
|
|
17
|
+
height?: number;
|
|
18
|
+
color?: string;
|
|
19
|
+
fillColor?: string;
|
|
20
|
+
fillOpacity?: number;
|
|
21
|
+
strokeWidth?: number;
|
|
22
|
+
gap?: number;
|
|
23
|
+
}
|
|
24
|
+
export interface ValueFormatterProps {
|
|
25
|
+
accessor: Accessor;
|
|
26
|
+
colIndex: number;
|
|
27
|
+
row: Row;
|
|
28
|
+
rowIndex: number;
|
|
29
|
+
value: CellValue;
|
|
30
|
+
}
|
|
31
|
+
export type ValueFormatter = (props: ValueFormatterProps) => string | number | string[] | number[];
|
|
32
|
+
export interface ValueGetterProps {
|
|
33
|
+
accessor: Accessor;
|
|
34
|
+
row: Row;
|
|
35
|
+
rowIndex: number;
|
|
36
|
+
}
|
|
37
|
+
export type ValueGetter = (props: ValueGetterProps) => CellValue;
|
|
38
|
+
export interface ComparatorProps {
|
|
39
|
+
rowA: Row;
|
|
40
|
+
rowB: Row;
|
|
41
|
+
valueA: CellValue;
|
|
42
|
+
valueB: CellValue;
|
|
43
|
+
direction: "asc" | "desc";
|
|
44
|
+
}
|
|
45
|
+
export type Comparator = (props: ComparatorProps) => number;
|
|
46
|
+
export interface ExportValueProps {
|
|
47
|
+
accessor: Accessor;
|
|
48
|
+
colIndex: number;
|
|
49
|
+
row: Row;
|
|
50
|
+
rowIndex: number;
|
|
51
|
+
value: CellValue;
|
|
52
|
+
formattedValue?: string | number | string[] | number[];
|
|
53
|
+
}
|
|
54
|
+
export type ExportValueGetter = (props: ExportValueProps) => string | number;
|
|
55
|
+
export declare const DEFAULT_SHOW_WHEN: ShowWhen;
|
|
56
|
+
type HeaderObject = {
|
|
57
|
+
accessor: Accessor;
|
|
58
|
+
aggregation?: AggregationConfig;
|
|
59
|
+
align?: "left" | "center" | "right";
|
|
60
|
+
cellRenderer?: CellRenderer;
|
|
61
|
+
chartOptions?: ChartOptions;
|
|
62
|
+
children?: HeaderObject[];
|
|
63
|
+
collapsible?: boolean;
|
|
64
|
+
collapseDefault?: boolean;
|
|
65
|
+
comparator?: Comparator;
|
|
66
|
+
disableReorder?: boolean;
|
|
67
|
+
enumOptions?: EnumOption[];
|
|
68
|
+
expandable?: boolean;
|
|
69
|
+
exportValueGetter?: ExportValueGetter;
|
|
70
|
+
filterable?: boolean;
|
|
71
|
+
headerRenderer?: HeaderRenderer;
|
|
72
|
+
hide?: boolean;
|
|
73
|
+
isEditable?: boolean;
|
|
74
|
+
excludeFromRender?: boolean;
|
|
75
|
+
excludeFromCsv?: boolean;
|
|
76
|
+
isSelectionColumn?: boolean;
|
|
77
|
+
/** When true, column stays visible, cannot be unpinned from a pinned side, cannot reorder above non-essentials in its section */
|
|
78
|
+
isEssential?: boolean;
|
|
79
|
+
isSortable?: boolean;
|
|
80
|
+
label: string;
|
|
81
|
+
minWidth?: number | string;
|
|
82
|
+
sortingOrder?: ("asc" | "desc" | null)[];
|
|
83
|
+
nestedTable?: Omit<SimpleTableProps, "rows" | "loadingStateRenderer" | "errorStateRenderer" | "emptyStateRenderer" | "tableEmptyStateRenderer" | "expandIcon" | "filterIcon" | "sortUpIcon" | "sortDownIcon" | "nextIcon" | "prevIcon" | "headerCollapseIcon" | "headerExpandIcon">;
|
|
84
|
+
pinned?: Pinned;
|
|
85
|
+
quickFilterable?: boolean;
|
|
86
|
+
quickFilterGetter?: QuickFilterGetter;
|
|
87
|
+
singleRowChildren?: boolean;
|
|
88
|
+
tooltip?: string;
|
|
89
|
+
type?: ColumnType;
|
|
90
|
+
useFormattedValueForClipboard?: boolean;
|
|
91
|
+
useFormattedValueForCSV?: boolean;
|
|
92
|
+
valueFormatter?: ValueFormatter;
|
|
93
|
+
valueGetter?: ValueGetter;
|
|
94
|
+
showWhen?: ShowWhen;
|
|
95
|
+
width: number | string;
|
|
96
|
+
maxWidth?: number | string;
|
|
97
|
+
};
|
|
98
|
+
export default HeaderObject;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { Accessor } from "./HeaderObject";
|
|
2
|
+
import type HeaderObject from "./HeaderObject";
|
|
3
|
+
import type { IconElement } from "./IconsConfig";
|
|
4
|
+
export interface HeaderRendererComponents {
|
|
5
|
+
sortIcon?: IconElement;
|
|
6
|
+
filterIcon?: IconElement;
|
|
7
|
+
collapseIcon?: IconElement;
|
|
8
|
+
labelContent?: string | HTMLElement;
|
|
9
|
+
}
|
|
10
|
+
interface HeaderRendererProps {
|
|
11
|
+
accessor: Accessor;
|
|
12
|
+
colIndex: number;
|
|
13
|
+
header: HeaderObject;
|
|
14
|
+
components?: HeaderRendererComponents;
|
|
15
|
+
}
|
|
16
|
+
export type HeaderRenderer = (props: HeaderRendererProps) => HTMLElement | string | null;
|
|
17
|
+
export default HeaderRendererProps;
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/** Single icon value used across header, footer, and column editor props */
|
|
2
|
+
export type IconElement = SVGSVGElement | HTMLElement | string;
|
|
3
|
+
export interface VanillaIconsConfig {
|
|
4
|
+
drag?: IconElement;
|
|
5
|
+
expand?: IconElement;
|
|
6
|
+
filter?: IconElement;
|
|
7
|
+
headerCollapse?: IconElement;
|
|
8
|
+
headerExpand?: IconElement;
|
|
9
|
+
next?: IconElement;
|
|
10
|
+
prev?: IconElement;
|
|
11
|
+
sortDown?: IconElement;
|
|
12
|
+
sortUp?: IconElement;
|
|
13
|
+
/** Label for pin-to-left control in column editor (default: "L") */
|
|
14
|
+
pinnedLeftIcon?: IconElement;
|
|
15
|
+
/** Label for pin-to-right control in column editor (default: "R") */
|
|
16
|
+
pinnedRightIcon?: IconElement;
|
|
17
|
+
}
|
|
18
|
+
export interface IconsConfig extends VanillaIconsConfig {
|
|
19
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import Row from "./Row";
|
|
2
|
+
import { Accessor } from "./HeaderObject";
|
|
3
|
+
interface OnRowGroupExpandProps {
|
|
4
|
+
row: Row;
|
|
5
|
+
depth: number;
|
|
6
|
+
event: MouseEvent | KeyboardEvent;
|
|
7
|
+
groupingKey?: string;
|
|
8
|
+
isExpanded: boolean;
|
|
9
|
+
rowIndexPath: number[];
|
|
10
|
+
rowIdPath?: (string | number)[];
|
|
11
|
+
groupingKeys: Accessor[];
|
|
12
|
+
setLoading: (loading: boolean) => void;
|
|
13
|
+
setError: (error: string | null) => void;
|
|
14
|
+
setEmpty: (isEmpty: boolean, message?: string) => void;
|
|
15
|
+
}
|
|
16
|
+
export default OnRowGroupExpandProps;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type PanelSection = "left" | "main" | "right";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type Pinned = "left" | "right";
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Accessor } from "./HeaderObject";
|
|
2
|
+
import Row from "./Row";
|
|
3
|
+
export type QuickFilterMode = "simple" | "smart";
|
|
4
|
+
export interface QuickFilterConfig {
|
|
5
|
+
text: string;
|
|
6
|
+
columns?: Accessor[];
|
|
7
|
+
caseSensitive?: boolean;
|
|
8
|
+
mode?: QuickFilterMode;
|
|
9
|
+
useFormattedValue?: boolean;
|
|
10
|
+
onChange?: (text: string) => void;
|
|
11
|
+
}
|
|
12
|
+
export interface QuickFilterGetterProps {
|
|
13
|
+
row: Row;
|
|
14
|
+
accessor: Accessor;
|
|
15
|
+
}
|
|
16
|
+
export type QuickFilterGetter = (props: QuickFilterGetterProps) => string;
|
|
17
|
+
export interface SmartFilterToken {
|
|
18
|
+
type: "word" | "phrase" | "negation" | "columnSpecific";
|
|
19
|
+
value: string;
|
|
20
|
+
column?: Accessor;
|
|
21
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type RowId = string | number;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Pinned } from "./Pinned";
|
|
2
|
+
/**
|
|
3
|
+
* State for individual rows during expansion/loading
|
|
4
|
+
*/
|
|
5
|
+
interface RowState {
|
|
6
|
+
loading?: boolean;
|
|
7
|
+
error?: string | null;
|
|
8
|
+
isEmpty?: boolean;
|
|
9
|
+
emptyMessage?: string;
|
|
10
|
+
triggerSection?: Pinned;
|
|
11
|
+
}
|
|
12
|
+
export default RowState;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type Row from "./Row";
|
|
2
|
+
export interface LoadingStateRendererProps {
|
|
3
|
+
parentRow?: Row;
|
|
4
|
+
}
|
|
5
|
+
export interface ErrorStateRendererProps {
|
|
6
|
+
error: string;
|
|
7
|
+
parentRow?: Row;
|
|
8
|
+
}
|
|
9
|
+
export interface EmptyStateRendererProps {
|
|
10
|
+
message?: string;
|
|
11
|
+
parentRow?: Row;
|
|
12
|
+
}
|
|
13
|
+
export type VanillaLoadingStateRenderer = string | HTMLElement | ((props: LoadingStateRendererProps) => HTMLElement | string);
|
|
14
|
+
export type VanillaErrorStateRenderer = string | HTMLElement | ((props: ErrorStateRendererProps) => HTMLElement | string);
|
|
15
|
+
export type VanillaEmptyStateRenderer = string | HTMLElement | ((props: EmptyStateRendererProps) => HTMLElement | string);
|
|
16
|
+
export type LoadingStateRenderer = VanillaLoadingStateRenderer;
|
|
17
|
+
export type ErrorStateRenderer = VanillaErrorStateRenderer;
|
|
18
|
+
export type EmptyStateRenderer = VanillaEmptyStateRenderer;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import HeaderObject from "./HeaderObject";
|
|
2
|
+
export interface RefObject<T> {
|
|
3
|
+
current: T | null;
|
|
4
|
+
}
|
|
5
|
+
interface SharedTableProps {
|
|
6
|
+
centerHeaderRef: RefObject<HTMLDivElement | null>;
|
|
7
|
+
draggedHeaderRef: {
|
|
8
|
+
current: HeaderObject | null;
|
|
9
|
+
};
|
|
10
|
+
headerContainerRef: RefObject<HTMLDivElement | null>;
|
|
11
|
+
headers: HeaderObject[];
|
|
12
|
+
hoveredHeaderRef: {
|
|
13
|
+
current: HeaderObject | null;
|
|
14
|
+
};
|
|
15
|
+
mainBodyRef: RefObject<HTMLDivElement | null>;
|
|
16
|
+
onTableHeaderDragEnd: (newHeaders: HeaderObject[]) => void;
|
|
17
|
+
pinnedLeftColumns: HeaderObject[];
|
|
18
|
+
pinnedLeftHeaderRef: RefObject<HTMLDivElement | null>;
|
|
19
|
+
pinnedRightColumns: HeaderObject[];
|
|
20
|
+
pinnedRightHeaderRef: RefObject<HTMLDivElement | null>;
|
|
21
|
+
rowHeight: number;
|
|
22
|
+
tableBodyContainerRef: RefObject<HTMLDivElement | null>;
|
|
23
|
+
}
|
|
24
|
+
export default SharedTableProps;
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import HeaderObject, { Accessor } from "./HeaderObject";
|
|
2
|
+
import Row from "./Row";
|
|
3
|
+
import { VanillaEmptyStateRenderer, VanillaErrorStateRenderer, VanillaLoadingStateRenderer } from "./RowStateRendererProps";
|
|
4
|
+
import FooterRendererProps from "./FooterRendererProps";
|
|
5
|
+
import { VanillaHeaderDropdown } from "./HeaderDropdownProps";
|
|
6
|
+
import SortColumn, { SortDirection } from "./SortColumn";
|
|
7
|
+
import CellClickProps from "./CellClickProps";
|
|
8
|
+
import CellChangeProps from "./CellChangeProps";
|
|
9
|
+
import { ColumnVisibilityState } from "./ColumnVisibilityTypes";
|
|
10
|
+
import { TableFilterState } from "./FilterTypes";
|
|
11
|
+
import OnNextPage from "./OnNextPage";
|
|
12
|
+
import OnRowGroupExpandProps from "./OnRowGroupExpandProps";
|
|
13
|
+
import RowSelectionChangeProps from "./RowSelectionChangeProps";
|
|
14
|
+
import { RowButton } from "./RowButton";
|
|
15
|
+
import Theme from "./Theme";
|
|
16
|
+
import { CustomThemeProps } from "./CustomTheme";
|
|
17
|
+
import { GetRowId } from "./GetRowId";
|
|
18
|
+
import { ColumnEditorConfig } from "./ColumnEditorConfig";
|
|
19
|
+
import { VanillaIconsConfig } from "./IconsConfig";
|
|
20
|
+
import { QuickFilterConfig } from "./QuickFilterTypes";
|
|
21
|
+
export interface SimpleTableConfig {
|
|
22
|
+
allowAnimations?: boolean;
|
|
23
|
+
autoExpandColumns?: boolean;
|
|
24
|
+
canExpandRowGroup?: (row: Row) => boolean;
|
|
25
|
+
cellUpdateFlash?: boolean;
|
|
26
|
+
className?: string;
|
|
27
|
+
columnBorders?: boolean;
|
|
28
|
+
columnEditorConfig?: ColumnEditorConfig;
|
|
29
|
+
columnEditorText?: string;
|
|
30
|
+
columnReordering?: boolean;
|
|
31
|
+
columnResizing?: boolean;
|
|
32
|
+
copyHeadersToClipboard?: boolean;
|
|
33
|
+
customTheme?: CustomThemeProps;
|
|
34
|
+
defaultHeaders: HeaderObject[];
|
|
35
|
+
editColumns?: boolean;
|
|
36
|
+
editColumnsInitOpen?: boolean;
|
|
37
|
+
emptyStateRenderer?: VanillaEmptyStateRenderer;
|
|
38
|
+
enableHeaderEditing?: boolean;
|
|
39
|
+
enableRowSelection?: boolean;
|
|
40
|
+
enableStickyParents?: boolean;
|
|
41
|
+
errorStateRenderer?: VanillaErrorStateRenderer;
|
|
42
|
+
expandAll?: boolean;
|
|
43
|
+
externalFilterHandling?: boolean;
|
|
44
|
+
externalSortHandling?: boolean;
|
|
45
|
+
footerRenderer?: (props: FooterRendererProps) => HTMLElement | string | null;
|
|
46
|
+
headerDropdown?: VanillaHeaderDropdown;
|
|
47
|
+
height?: string | number;
|
|
48
|
+
hideFooter?: boolean;
|
|
49
|
+
hideHeader?: boolean;
|
|
50
|
+
icons?: VanillaIconsConfig;
|
|
51
|
+
includeHeadersInCSVExport?: boolean;
|
|
52
|
+
initialSortColumn?: string;
|
|
53
|
+
initialSortDirection?: SortDirection;
|
|
54
|
+
isLoading?: boolean;
|
|
55
|
+
loadingStateRenderer?: VanillaLoadingStateRenderer;
|
|
56
|
+
maxHeight?: string | number;
|
|
57
|
+
onCellClick?: (props: CellClickProps) => void;
|
|
58
|
+
onCellEdit?: (props: CellChangeProps) => void;
|
|
59
|
+
onColumnOrderChange?: (newHeaders: HeaderObject[]) => void;
|
|
60
|
+
onColumnSelect?: (header: HeaderObject) => void;
|
|
61
|
+
onColumnVisibilityChange?: (visibilityState: ColumnVisibilityState) => void;
|
|
62
|
+
onColumnWidthChange?: (headers: HeaderObject[]) => void;
|
|
63
|
+
onFilterChange?: (filters: TableFilterState) => void;
|
|
64
|
+
onGridReady?: () => void;
|
|
65
|
+
onHeaderEdit?: (header: HeaderObject, newLabel: string) => void;
|
|
66
|
+
onLoadMore?: () => void;
|
|
67
|
+
onNextPage?: OnNextPage;
|
|
68
|
+
onPageChange?: (page: number) => void | Promise<void>;
|
|
69
|
+
onRowGroupExpand?: (props: OnRowGroupExpandProps) => void | Promise<void>;
|
|
70
|
+
onRowSelectionChange?: (props: RowSelectionChangeProps) => void;
|
|
71
|
+
onSortChange?: (sort: SortColumn | null) => void;
|
|
72
|
+
quickFilter?: QuickFilterConfig;
|
|
73
|
+
rowButtons?: RowButton[];
|
|
74
|
+
rowGrouping?: Accessor[];
|
|
75
|
+
getRowId?: GetRowId;
|
|
76
|
+
rows: Row[];
|
|
77
|
+
rowsPerPage?: number;
|
|
78
|
+
selectableCells?: boolean;
|
|
79
|
+
selectableColumns?: boolean;
|
|
80
|
+
serverSidePagination?: boolean;
|
|
81
|
+
shouldPaginate?: boolean;
|
|
82
|
+
tableEmptyStateRenderer?: HTMLElement | string | null;
|
|
83
|
+
theme?: Theme;
|
|
84
|
+
totalRowCount?: number;
|
|
85
|
+
useHoverRowBackground?: boolean;
|
|
86
|
+
useOddColumnBackground?: boolean;
|
|
87
|
+
useOddEvenRowBackground?: boolean;
|
|
88
|
+
}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import HeaderObject, { Accessor } from "./HeaderObject";
|
|
2
|
+
import Row from "./Row";
|
|
3
|
+
import { EmptyStateRenderer, ErrorStateRenderer, LoadingStateRenderer } from "./RowStateRendererProps";
|
|
4
|
+
import FooterRendererProps from "./FooterRendererProps";
|
|
5
|
+
import { HeaderDropdown } from "./HeaderDropdownProps";
|
|
6
|
+
import SortColumn, { SortDirection } from "./SortColumn";
|
|
7
|
+
import CellClickProps from "./CellClickProps";
|
|
8
|
+
import CellChangeProps from "./CellChangeProps";
|
|
9
|
+
import { ColumnVisibilityState } from "./ColumnVisibilityTypes";
|
|
10
|
+
import { TableFilterState } from "./FilterTypes";
|
|
11
|
+
import OnNextPage from "./OnNextPage";
|
|
12
|
+
import OnRowGroupExpandProps from "./OnRowGroupExpandProps";
|
|
13
|
+
import RowSelectionChangeProps from "./RowSelectionChangeProps";
|
|
14
|
+
import { RowButton } from "./RowButton";
|
|
15
|
+
import TableRefType from "./TableRefType";
|
|
16
|
+
import Theme from "./Theme";
|
|
17
|
+
import { CustomThemeProps } from "./CustomTheme";
|
|
18
|
+
import { GetRowId } from "./GetRowId";
|
|
19
|
+
import { ColumnEditorConfig } from "./ColumnEditorConfig";
|
|
20
|
+
import { IconsConfig } from "./IconsConfig";
|
|
21
|
+
import { QuickFilterConfig } from "./QuickFilterTypes";
|
|
22
|
+
export interface SimpleTableProps {
|
|
23
|
+
autoExpandColumns?: boolean;
|
|
24
|
+
canExpandRowGroup?: (row: Row) => boolean;
|
|
25
|
+
cellUpdateFlash?: boolean;
|
|
26
|
+
className?: string;
|
|
27
|
+
columnBorders?: boolean;
|
|
28
|
+
columnEditorConfig?: ColumnEditorConfig;
|
|
29
|
+
columnEditorText?: string;
|
|
30
|
+
columnReordering?: boolean;
|
|
31
|
+
columnResizing?: boolean;
|
|
32
|
+
copyHeadersToClipboard?: boolean;
|
|
33
|
+
customTheme?: CustomThemeProps;
|
|
34
|
+
defaultHeaders: HeaderObject[];
|
|
35
|
+
editColumns?: boolean;
|
|
36
|
+
editColumnsInitOpen?: boolean;
|
|
37
|
+
emptyStateRenderer?: EmptyStateRenderer;
|
|
38
|
+
enableHeaderEditing?: boolean;
|
|
39
|
+
enableRowSelection?: boolean;
|
|
40
|
+
enableStickyParents?: boolean;
|
|
41
|
+
errorStateRenderer?: ErrorStateRenderer;
|
|
42
|
+
expandAll?: boolean;
|
|
43
|
+
expandIcon?: IconsConfig["expand"];
|
|
44
|
+
externalFilterHandling?: boolean;
|
|
45
|
+
externalSortHandling?: boolean;
|
|
46
|
+
filterIcon?: IconsConfig["filter"];
|
|
47
|
+
footerRenderer?: (props: FooterRendererProps) => HTMLElement | string | null;
|
|
48
|
+
headerCollapseIcon?: IconsConfig["headerCollapse"];
|
|
49
|
+
headerDropdown?: HeaderDropdown;
|
|
50
|
+
headerExpandIcon?: IconsConfig["headerExpand"];
|
|
51
|
+
height?: string | number;
|
|
52
|
+
hideFooter?: boolean;
|
|
53
|
+
hideHeader?: boolean;
|
|
54
|
+
icons?: IconsConfig;
|
|
55
|
+
includeHeadersInCSVExport?: boolean;
|
|
56
|
+
initialSortColumn?: string;
|
|
57
|
+
initialSortDirection?: SortDirection;
|
|
58
|
+
isLoading?: boolean;
|
|
59
|
+
loadingStateRenderer?: LoadingStateRenderer;
|
|
60
|
+
maxHeight?: string | number;
|
|
61
|
+
nextIcon?: IconsConfig["next"];
|
|
62
|
+
onCellClick?: (props: CellClickProps) => void;
|
|
63
|
+
onCellEdit?: (props: CellChangeProps) => void;
|
|
64
|
+
onColumnOrderChange?: (newHeaders: HeaderObject[]) => void;
|
|
65
|
+
onColumnSelect?: (header: HeaderObject) => void;
|
|
66
|
+
onColumnVisibilityChange?: (visibilityState: ColumnVisibilityState) => void;
|
|
67
|
+
onColumnWidthChange?: (headers: HeaderObject[]) => void;
|
|
68
|
+
onFilterChange?: (filters: TableFilterState) => void;
|
|
69
|
+
onGridReady?: () => void;
|
|
70
|
+
onHeaderEdit?: (header: HeaderObject, newLabel: string) => void;
|
|
71
|
+
onLoadMore?: () => void;
|
|
72
|
+
onNextPage?: OnNextPage;
|
|
73
|
+
onPageChange?: (page: number) => void | Promise<void>;
|
|
74
|
+
onRowGroupExpand?: (props: OnRowGroupExpandProps) => void | Promise<void>;
|
|
75
|
+
onRowSelectionChange?: (props: RowSelectionChangeProps) => void;
|
|
76
|
+
onSortChange?: (sort: SortColumn | null) => void;
|
|
77
|
+
prevIcon?: IconsConfig["prev"];
|
|
78
|
+
quickFilter?: QuickFilterConfig;
|
|
79
|
+
rowButtons?: RowButton[];
|
|
80
|
+
rowGrouping?: Accessor[];
|
|
81
|
+
getRowId?: GetRowId;
|
|
82
|
+
rows: Row[];
|
|
83
|
+
rowsPerPage?: number;
|
|
84
|
+
selectableCells?: boolean;
|
|
85
|
+
selectableColumns?: boolean;
|
|
86
|
+
serverSidePagination?: boolean;
|
|
87
|
+
shouldPaginate?: boolean;
|
|
88
|
+
sortDownIcon?: IconsConfig["sortDown"];
|
|
89
|
+
sortUpIcon?: IconsConfig["sortUp"];
|
|
90
|
+
tableEmptyStateRenderer?: HTMLElement | string | null;
|
|
91
|
+
tableRef?: {
|
|
92
|
+
current: TableRefType | null;
|
|
93
|
+
};
|
|
94
|
+
theme?: Theme;
|
|
95
|
+
totalRowCount?: number;
|
|
96
|
+
useHoverRowBackground?: boolean;
|
|
97
|
+
useOddColumnBackground?: boolean;
|
|
98
|
+
useOddEvenRowBackground?: boolean;
|
|
99
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import UpdateDataProps from "./UpdateCellProps";
|
|
2
|
+
import HeaderObject, { Accessor } from "./HeaderObject";
|
|
3
|
+
import TableRow from "./TableRow";
|
|
4
|
+
import SortColumn, { SortDirection } from "./SortColumn";
|
|
5
|
+
import { TableFilterState, FilterCondition } from "./FilterTypes";
|
|
6
|
+
import Cell from "./Cell";
|
|
7
|
+
import type { PinnedSectionsState } from "./PinnedSectionsState";
|
|
8
|
+
export interface SetHeaderRenameProps {
|
|
9
|
+
accessor: Accessor;
|
|
10
|
+
}
|
|
11
|
+
export interface ExportToCSVProps {
|
|
12
|
+
filename?: string;
|
|
13
|
+
}
|
|
14
|
+
export type TableAPI = {
|
|
15
|
+
updateData: (props: UpdateDataProps) => void;
|
|
16
|
+
setHeaderRename: (props: SetHeaderRenameProps) => void;
|
|
17
|
+
getVisibleRows: () => TableRow[];
|
|
18
|
+
getAllRows: () => TableRow[];
|
|
19
|
+
getHeaders: () => HeaderObject[];
|
|
20
|
+
exportToCSV: (props?: ExportToCSVProps) => void;
|
|
21
|
+
getSortState: () => SortColumn | null;
|
|
22
|
+
applySortState: (props?: {
|
|
23
|
+
accessor: Accessor;
|
|
24
|
+
direction?: SortDirection;
|
|
25
|
+
}) => Promise<void>;
|
|
26
|
+
/** Ordered root accessors per pin section (left, main/unpinned, right) */
|
|
27
|
+
getPinnedState: () => PinnedSectionsState;
|
|
28
|
+
/** Reorder root columns and set pinned flags; lists must include every root accessor exactly once. Essential order is clamped per section. */
|
|
29
|
+
applyPinnedState: (state: PinnedSectionsState) => Promise<void>;
|
|
30
|
+
getFilterState: () => TableFilterState;
|
|
31
|
+
applyFilter: (filter: FilterCondition) => Promise<void>;
|
|
32
|
+
clearFilter: (accessor: Accessor) => Promise<void>;
|
|
33
|
+
clearAllFilters: () => Promise<void>;
|
|
34
|
+
getCurrentPage: () => number;
|
|
35
|
+
getTotalPages: () => number;
|
|
36
|
+
setPage: (page: number) => Promise<void>;
|
|
37
|
+
expandAll: () => void;
|
|
38
|
+
collapseAll: () => void;
|
|
39
|
+
expandDepth: (depth: number) => void;
|
|
40
|
+
collapseDepth: (depth: number) => void;
|
|
41
|
+
toggleDepth: (depth: number) => void;
|
|
42
|
+
setExpandedDepths: (depths: Set<number>) => void;
|
|
43
|
+
getExpandedDepths: () => Set<number>;
|
|
44
|
+
getGroupingProperty: (depth: number) => Accessor | undefined;
|
|
45
|
+
getGroupingDepth: (property: Accessor) => number;
|
|
46
|
+
toggleColumnEditor: (open?: boolean) => void;
|
|
47
|
+
applyColumnVisibility: (visibility: {
|
|
48
|
+
[accessor: string]: boolean;
|
|
49
|
+
}) => Promise<void>;
|
|
50
|
+
/** Reset columns to default order and visibility (restores defaultHeaders state). */
|
|
51
|
+
resetColumns: () => void;
|
|
52
|
+
setQuickFilter: (text: string) => void;
|
|
53
|
+
getSelectedCells: () => Set<string>;
|
|
54
|
+
clearSelection: () => void;
|
|
55
|
+
selectCell: (cell: Cell) => void;
|
|
56
|
+
selectCellRange: (startCell: Cell, endCell: Cell) => void;
|
|
57
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import SortColumn from "./SortColumn";
|
|
2
|
+
import HeaderObject from "./HeaderObject";
|
|
3
|
+
export interface RefObject<T> {
|
|
4
|
+
current: T | null;
|
|
5
|
+
}
|
|
6
|
+
type TableHeaderProps = {
|
|
7
|
+
calculatedHeaderHeight: number;
|
|
8
|
+
centerHeaderRef: RefObject<HTMLDivElement | null>;
|
|
9
|
+
headers: HeaderObject[];
|
|
10
|
+
mainBodyWidth: number;
|
|
11
|
+
pinnedLeftColumns: HeaderObject[];
|
|
12
|
+
pinnedLeftWidth: number;
|
|
13
|
+
pinnedRightColumns: HeaderObject[];
|
|
14
|
+
pinnedRightWidth: number;
|
|
15
|
+
sort: SortColumn | null;
|
|
16
|
+
};
|
|
17
|
+
export default TableHeaderProps;
|