@simple-table/solid 3.0.0-beta.9 → 3.0.0
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/README.md +36 -0
- package/dist/cjs/index.js +1 -1
- package/dist/index.es.js +1 -1
- package/dist/styles.css +1 -0
- package/dist/{cjs → types}/core/src/core/SimpleTableVanilla.d.ts +2 -0
- package/dist/{core → types/core}/src/core/initialization/TableInitializer.d.ts +4 -1
- package/dist/{cjs → types}/core/src/core/rendering/RenderOrchestrator.d.ts +1 -0
- package/dist/{cjs → types}/core/src/core/rendering/TableRenderer.d.ts +1 -0
- package/dist/{core → types/core}/src/index.d.ts +3 -2
- package/dist/{core → types/core}/src/managers/DimensionManager.d.ts +3 -0
- package/dist/{core → types/core}/src/managers/SelectionManager/SelectionManager.d.ts +7 -0
- package/dist/{cjs → types}/core/src/managers/SelectionManager/mouseUtils.d.ts +2 -1
- package/dist/{core → types/core}/src/managers/SelectionManager/types.d.ts +6 -0
- package/dist/{cjs → types}/core/src/types/ColumnEditorConfig.d.ts +5 -2
- package/dist/types/core/src/types/ColumnEditorCustomRendererProps.d.ts +14 -0
- package/dist/{core → types/core}/src/types/CustomTheme.d.ts +2 -0
- package/dist/{cjs → types}/core/src/types/HeaderObject.d.ts +1 -1
- package/dist/{cjs → types}/core/src/types/SimpleTableConfig.d.ts +0 -2
- package/dist/{cjs → types}/core/src/types/SimpleTableProps.d.ts +0 -13
- package/dist/types/core/src/utils/asRows.d.ts +7 -0
- package/dist/types/core/src/utils/bodyCell/expansion.d.ts +12 -0
- package/dist/{cjs → types}/core/src/utils/columnEditor/createColumnEditor.d.ts +0 -1
- package/dist/{cjs → types}/core/src/utils/columnEditor/createColumnEditorPopout.d.ts +0 -1
- package/dist/{cjs → types}/core/src/utils/columnEditor/createColumnEditorRow.d.ts +8 -1
- package/dist/types/core/src/utils/filters/createDropdown.d.ts +33 -0
- package/dist/{cjs → types}/core/src/utils/filters/createFilterActions.d.ts +1 -0
- package/dist/{core → types/core}/src/utils/headerCell/collapsing.d.ts +1 -1
- package/dist/{core → types/core}/src/utils/headerCell/eventTracking.d.ts +3 -0
- package/dist/{core → types/core}/src/utils/headerCell/resizing.d.ts +1 -1
- package/dist/{cjs → types}/core/src/utils/headerCell/styling.d.ts +3 -3
- package/dist/{cjs → types}/core/src/utils/headerCell/types.d.ts +2 -0
- package/dist/{core → types/core}/src/utils/headerWidthUtils.d.ts +4 -2
- package/dist/{cjs → types}/core/src/utils/pinnedColumnUtils.d.ts +5 -1
- package/dist/types/core/src/utils/resizeUtils/index.d.ts +22 -0
- package/dist/{core → types/core}/src/utils/rowSeparatorRenderer.d.ts +4 -0
- package/dist/types/solid/src/defaultHeadersFromCore.d.ts +5 -0
- package/dist/types/solid/src/index.d.ts +5 -0
- package/dist/{cjs → types}/solid/src/types.d.ts +14 -5
- package/package.json +10 -7
- package/dist/cjs/core/src/core/initialization/TableInitializer.d.ts +0 -30
- package/dist/cjs/core/src/index.d.ts +0 -48
- package/dist/cjs/core/src/managers/DimensionManager.d.ts +0 -42
- package/dist/cjs/core/src/managers/SelectionManager/SelectionManager.d.ts +0 -246
- package/dist/cjs/core/src/managers/SelectionManager/types.d.ts +0 -22
- package/dist/cjs/core/src/types/CustomTheme.d.ts +0 -26
- package/dist/cjs/core/src/types/TableRefType.d.ts +0 -78
- package/dist/cjs/core/src/utils/bodyCell/expansion.d.ts +0 -4
- package/dist/cjs/core/src/utils/deprecatedPropsWarnings.d.ts +0 -10
- package/dist/cjs/core/src/utils/filters/createDropdown.d.ts +0 -16
- package/dist/cjs/core/src/utils/headerCell/collapsing.d.ts +0 -6
- package/dist/cjs/core/src/utils/headerCell/eventTracking.d.ts +0 -25
- package/dist/cjs/core/src/utils/headerCell/resizing.d.ts +0 -3
- package/dist/cjs/core/src/utils/headerWidthUtils.d.ts +0 -56
- package/dist/cjs/core/src/utils/resizeUtils/index.d.ts +0 -5
- package/dist/cjs/core/src/utils/rowSeparatorRenderer.d.ts +0 -12
- package/dist/cjs/solid/src/index.d.ts +0 -3
- package/dist/core/src/consts/column-constraints.d.ts +0 -58
- package/dist/core/src/consts/general-consts.d.ts +0 -13
- package/dist/core/src/core/SimpleTableVanilla.d.ts +0 -71
- package/dist/core/src/core/api/TableAPIImpl.d.ts +0 -44
- package/dist/core/src/core/dom/DOMManager.d.ts +0 -50
- package/dist/core/src/core/rendering/RenderOrchestrator.d.ts +0 -123
- package/dist/core/src/core/rendering/SectionRenderer.d.ts +0 -61
- package/dist/core/src/core/rendering/TableRenderer.d.ts +0 -89
- package/dist/core/src/hooks/ariaAnnouncements.d.ts +0 -37
- package/dist/core/src/hooks/contentHeight.d.ts +0 -23
- package/dist/core/src/hooks/expandedDepths.d.ts +0 -65
- package/dist/core/src/hooks/handleOutsideClick.d.ts +0 -50
- package/dist/core/src/hooks/previousValue.d.ts +0 -30
- package/dist/core/src/hooks/scrollbarVisibility.d.ts +0 -65
- package/dist/core/src/hooks/scrollbarWidth.d.ts +0 -52
- package/dist/core/src/hooks/useAggregatedRows.d.ts +0 -14
- package/dist/core/src/hooks/useQuickFilter.d.ts +0 -14
- package/dist/core/src/hooks/windowResize.d.ts +0 -31
- package/dist/core/src/icons/AngleDownIcon.d.ts +0 -1
- package/dist/core/src/icons/AngleLeftIcon.d.ts +0 -1
- package/dist/core/src/icons/AngleRightIcon.d.ts +0 -1
- package/dist/core/src/icons/AngleUpIcon.d.ts +0 -1
- package/dist/core/src/icons/AscIcon.d.ts +0 -1
- package/dist/core/src/icons/CheckIcon.d.ts +0 -1
- package/dist/core/src/icons/DescIcon.d.ts +0 -1
- package/dist/core/src/icons/DragIcon.d.ts +0 -1
- package/dist/core/src/icons/FilterIcon.d.ts +0 -1
- package/dist/core/src/icons/SelectIcon.d.ts +0 -1
- package/dist/core/src/icons/index.d.ts +0 -14
- package/dist/core/src/managers/AutoScaleManager.d.ts +0 -26
- package/dist/core/src/managers/DragHandlerManager.d.ts +0 -44
- package/dist/core/src/managers/FilterManager.d.ts +0 -36
- package/dist/core/src/managers/RowManager.d.ts +0 -56
- package/dist/core/src/managers/RowSelectionManager.d.ts +0 -36
- package/dist/core/src/managers/ScrollManager.d.ts +0 -35
- package/dist/core/src/managers/SectionScrollController.d.ts +0 -50
- package/dist/core/src/managers/SelectionManager/index.d.ts +0 -2
- package/dist/core/src/managers/SelectionManager/keyboardUtils.d.ts +0 -7
- package/dist/core/src/managers/SelectionManager/mouseUtils.d.ts +0 -15
- package/dist/core/src/managers/SelectionManager/selectionRangeUtils.d.ts +0 -7
- package/dist/core/src/managers/SortManager.d.ts +0 -42
- package/dist/core/src/types/AggregationTypes.d.ts +0 -8
- package/dist/core/src/types/BoundingBox.d.ts +0 -11
- package/dist/core/src/types/Cell.d.ts +0 -7
- package/dist/core/src/types/CellChangeProps.d.ts +0 -9
- package/dist/core/src/types/CellClickProps.d.ts +0 -11
- package/dist/core/src/types/CellRendererProps.d.ts +0 -32
- package/dist/core/src/types/CellValue.d.ts +0 -2
- package/dist/core/src/types/ColumnEditorConfig.d.ts +0 -32
- package/dist/core/src/types/ColumnEditorRowRendererProps.d.ts +0 -39
- package/dist/core/src/types/ColumnVisibilityTypes.d.ts +0 -4
- package/dist/core/src/types/DragHandlerProps.d.ts +0 -14
- package/dist/core/src/types/EnumOption.d.ts +0 -5
- package/dist/core/src/types/FilterTypes.d.ts +0 -22
- package/dist/core/src/types/FlattenedHeader.d.ts +0 -10
- package/dist/core/src/types/FooterRendererProps.d.ts +0 -17
- package/dist/core/src/types/GenerateRowIdParams.d.ts +0 -11
- package/dist/core/src/types/GetRowId.d.ts +0 -10
- package/dist/core/src/types/HandleResizeStartProps.d.ts +0 -21
- package/dist/core/src/types/HeaderDropdownProps.d.ts +0 -14
- package/dist/core/src/types/HeaderObject.d.ts +0 -98
- package/dist/core/src/types/HeaderRendererProps.d.ts +0 -17
- package/dist/core/src/types/IconsConfig.d.ts +0 -19
- package/dist/core/src/types/OnNextPage.d.ts +0 -2
- package/dist/core/src/types/OnRowGroupExpandProps.d.ts +0 -16
- package/dist/core/src/types/OnSortProps.d.ts +0 -3
- package/dist/core/src/types/PanelSection.d.ts +0 -1
- package/dist/core/src/types/Pinned.d.ts +0 -1
- package/dist/core/src/types/PinnedSectionsState.d.ts +0 -6
- package/dist/core/src/types/QuickFilterTypes.d.ts +0 -21
- package/dist/core/src/types/Row.d.ts +0 -3
- package/dist/core/src/types/RowButton.d.ts +0 -6
- package/dist/core/src/types/RowId.d.ts +0 -1
- package/dist/core/src/types/RowSelectionChangeProps.d.ts +0 -7
- package/dist/core/src/types/RowState.d.ts +0 -12
- package/dist/core/src/types/RowStateRendererProps.d.ts +0 -18
- package/dist/core/src/types/SharedTableProps.d.ts +0 -24
- package/dist/core/src/types/SimpleTableConfig.d.ts +0 -88
- package/dist/core/src/types/SimpleTableProps.d.ts +0 -99
- package/dist/core/src/types/SortColumn.d.ts +0 -8
- package/dist/core/src/types/TableAPI.d.ts +0 -57
- package/dist/core/src/types/TableHeaderProps.d.ts +0 -17
- package/dist/core/src/types/TableRefType.d.ts +0 -78
- package/dist/core/src/types/TableRow.d.ts +0 -29
- package/dist/core/src/types/TableRowProps.d.ts +0 -29
- package/dist/core/src/types/Theme.d.ts +0 -2
- package/dist/core/src/types/UpdateCellProps.d.ts +0 -8
- package/dist/core/src/utils/bodyCell/content.d.ts +0 -5
- package/dist/core/src/utils/bodyCell/editing.d.ts +0 -4
- package/dist/core/src/utils/bodyCell/editors/booleanDropdown.d.ts +0 -2
- package/dist/core/src/utils/bodyCell/editors/datePicker.d.ts +0 -2
- package/dist/core/src/utils/bodyCell/editors/dropdown.d.ts +0 -18
- package/dist/core/src/utils/bodyCell/editors/enumDropdown.d.ts +0 -2
- package/dist/core/src/utils/bodyCell/eventTracking.d.ts +0 -3
- package/dist/core/src/utils/bodyCell/expansion.d.ts +0 -4
- package/dist/core/src/utils/bodyCell/selection.d.ts +0 -7
- package/dist/core/src/utils/bodyCell/styling.d.ts +0 -5
- package/dist/core/src/utils/bodyCell/types.d.ts +0 -103
- package/dist/core/src/utils/bodyCellRenderer.d.ts +0 -5
- package/dist/core/src/utils/cellClipboardUtils.d.ts +0 -25
- package/dist/core/src/utils/cellScrollUtils.d.ts +0 -10
- package/dist/core/src/utils/cellUtils.d.ts +0 -18
- package/dist/core/src/utils/charts/createBarChart.d.ts +0 -15
- package/dist/core/src/utils/charts/createLineAreaChart.d.ts +0 -17
- package/dist/core/src/utils/collapseUtils.d.ts +0 -24
- package/dist/core/src/utils/columnEditor/columnEditorUtils.d.ts +0 -14
- package/dist/core/src/utils/columnEditor/createCheckbox.d.ts +0 -21
- package/dist/core/src/utils/columnEditor/createColumnEditor.d.ts +0 -25
- package/dist/core/src/utils/columnEditor/createColumnEditorPopout.d.ts +0 -22
- package/dist/core/src/utils/columnEditor/createColumnEditorRow.d.ts +0 -31
- package/dist/core/src/utils/csvExportUtils.d.ts +0 -14
- package/dist/core/src/utils/dateUtils.d.ts +0 -18
- package/dist/core/src/utils/deprecatedPropsWarnings.d.ts +0 -10
- package/dist/core/src/utils/filterUtils.d.ts +0 -5
- package/dist/core/src/utils/filters/createBooleanFilter.d.ts +0 -15
- package/dist/core/src/utils/filters/createCustomSelect.d.ts +0 -20
- package/dist/core/src/utils/filters/createDateFilter.d.ts +0 -15
- package/dist/core/src/utils/filters/createDatePicker.d.ts +0 -10
- package/dist/core/src/utils/filters/createDropdown.d.ts +0 -16
- package/dist/core/src/utils/filters/createEnumFilter.d.ts +0 -15
- package/dist/core/src/utils/filters/createFilterActions.d.ts +0 -11
- package/dist/core/src/utils/filters/createFilterDropdown.d.ts +0 -15
- package/dist/core/src/utils/filters/createFilterInput.d.ts +0 -16
- package/dist/core/src/utils/filters/createNumberFilter.d.ts +0 -15
- package/dist/core/src/utils/filters/createStringFilter.d.ts +0 -15
- package/dist/core/src/utils/footer/createTableFooter.d.ts +0 -21
- package/dist/core/src/utils/formatters.d.ts +0 -3
- package/dist/core/src/utils/generalUtils.d.ts +0 -4
- package/dist/core/src/utils/headerCell/dragging.d.ts +0 -5
- package/dist/core/src/utils/headerCell/editing.d.ts +0 -4
- package/dist/core/src/utils/headerCell/filtering.d.ts +0 -3
- package/dist/core/src/utils/headerCell/selection.d.ts +0 -10
- package/dist/core/src/utils/headerCell/sorting.d.ts +0 -3
- package/dist/core/src/utils/headerCell/styling.d.ts +0 -5
- package/dist/core/src/utils/headerCell/types.d.ts +0 -75
- package/dist/core/src/utils/headerCellRenderer.d.ts +0 -4
- package/dist/core/src/utils/headerUtils.d.ts +0 -41
- package/dist/core/src/utils/horizontalScrollbarRenderer.d.ts +0 -14
- package/dist/core/src/utils/infiniteScrollUtils.d.ts +0 -145
- package/dist/core/src/utils/nestedGridRowRenderer.d.ts +0 -34
- package/dist/core/src/utils/pinnedColumnUtils.d.ts +0 -25
- package/dist/core/src/utils/quickFilterUtils.d.ts +0 -14
- package/dist/core/src/utils/resizeUtils/autoExpandResize.d.ts +0 -21
- package/dist/core/src/utils/resizeUtils/compensation.d.ts +0 -11
- package/dist/core/src/utils/resizeUtils/domUpdates.d.ts +0 -15
- package/dist/core/src/utils/resizeUtils/index.d.ts +0 -5
- package/dist/core/src/utils/resizeUtils/maxWidth.d.ts +0 -9
- package/dist/core/src/utils/resizeUtils/parentHeaderResize.d.ts +0 -11
- package/dist/core/src/utils/resizeUtils/sectionWidths.d.ts +0 -16
- package/dist/core/src/utils/rowFlattening.d.ts +0 -30
- package/dist/core/src/utils/rowProcessing.d.ts +0 -36
- package/dist/core/src/utils/rowSelectionUtils.d.ts +0 -39
- package/dist/core/src/utils/rowUtils.d.ts +0 -136
- package/dist/core/src/utils/sortUtils.d.ts +0 -8
- package/dist/core/src/utils/stateRowRenderer.d.ts +0 -15
- package/dist/core/src/utils/stickyParentsRenderer.d.ts +0 -30
- package/dist/solid/src/SimpleTable.d.ts +0 -19
- package/dist/solid/src/buildVanillaConfig.d.ts +0 -3
- package/dist/solid/src/index.d.ts +0 -3
- package/dist/solid/src/types.d.ts +0 -53
- package/dist/solid/src/utils/wrapSolidRenderer.d.ts +0 -20
- /package/dist/{cjs → types}/core/src/consts/column-constraints.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/consts/general-consts.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/core/api/TableAPIImpl.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/core/dom/DOMManager.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/core/rendering/SectionRenderer.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/hooks/ariaAnnouncements.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/hooks/contentHeight.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/hooks/expandedDepths.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/hooks/handleOutsideClick.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/hooks/previousValue.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/hooks/scrollbarVisibility.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/hooks/scrollbarWidth.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/hooks/useAggregatedRows.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/hooks/useQuickFilter.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/hooks/windowResize.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/icons/AngleDownIcon.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/icons/AngleLeftIcon.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/icons/AngleRightIcon.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/icons/AngleUpIcon.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/icons/AscIcon.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/icons/CheckIcon.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/icons/DescIcon.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/icons/DragIcon.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/icons/FilterIcon.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/icons/SelectIcon.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/icons/index.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/managers/AutoScaleManager.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/managers/DragHandlerManager.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/managers/FilterManager.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/managers/RowManager.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/managers/RowSelectionManager.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/managers/ScrollManager.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/managers/SectionScrollController.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/managers/SelectionManager/index.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/managers/SelectionManager/keyboardUtils.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/managers/SelectionManager/selectionRangeUtils.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/managers/SortManager.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/AggregationTypes.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/BoundingBox.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/Cell.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/CellChangeProps.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/CellClickProps.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/CellRendererProps.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/CellValue.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/ColumnEditorRowRendererProps.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/ColumnVisibilityTypes.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/DragHandlerProps.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/EnumOption.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/FilterTypes.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/FlattenedHeader.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/FooterRendererProps.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/GenerateRowIdParams.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/GetRowId.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/HandleResizeStartProps.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/HeaderDropdownProps.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/HeaderRendererProps.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/IconsConfig.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/OnNextPage.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/OnRowGroupExpandProps.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/OnSortProps.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/PanelSection.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/Pinned.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/PinnedSectionsState.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/QuickFilterTypes.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/Row.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/RowButton.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/RowId.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/RowSelectionChangeProps.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/RowState.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/RowStateRendererProps.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/SharedTableProps.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/SortColumn.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/TableAPI.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/TableHeaderProps.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/TableRow.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/TableRowProps.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/Theme.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/types/UpdateCellProps.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/bodyCell/content.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/bodyCell/editing.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/bodyCell/editors/booleanDropdown.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/bodyCell/editors/datePicker.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/bodyCell/editors/dropdown.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/bodyCell/editors/enumDropdown.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/bodyCell/eventTracking.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/bodyCell/selection.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/bodyCell/styling.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/bodyCell/types.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/bodyCellRenderer.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/cellClipboardUtils.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/cellScrollUtils.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/cellUtils.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/charts/createBarChart.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/charts/createLineAreaChart.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/collapseUtils.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/columnEditor/columnEditorUtils.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/columnEditor/createCheckbox.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/csvExportUtils.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/dateUtils.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/filterUtils.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/filters/createBooleanFilter.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/filters/createCustomSelect.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/filters/createDateFilter.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/filters/createDatePicker.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/filters/createEnumFilter.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/filters/createFilterDropdown.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/filters/createFilterInput.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/filters/createNumberFilter.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/filters/createStringFilter.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/footer/createTableFooter.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/formatters.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/generalUtils.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/headerCell/dragging.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/headerCell/editing.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/headerCell/filtering.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/headerCell/selection.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/headerCell/sorting.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/headerCellRenderer.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/headerUtils.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/horizontalScrollbarRenderer.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/infiniteScrollUtils.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/nestedGridRowRenderer.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/quickFilterUtils.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/resizeUtils/autoExpandResize.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/resizeUtils/compensation.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/resizeUtils/domUpdates.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/resizeUtils/maxWidth.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/resizeUtils/parentHeaderResize.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/resizeUtils/sectionWidths.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/rowFlattening.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/rowProcessing.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/rowSelectionUtils.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/rowUtils.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/sortUtils.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/stateRowRenderer.d.ts +0 -0
- /package/dist/{cjs → types}/core/src/utils/stickyParentsRenderer.d.ts +0 -0
- /package/dist/{cjs → types}/solid/src/SimpleTable.d.ts +0 -0
- /package/dist/{cjs → types}/solid/src/buildVanillaConfig.d.ts +0 -0
- /package/dist/{cjs → types}/solid/src/utils/wrapSolidRenderer.d.ts +0 -0
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Filter / filter-UI dropdown positioning (React-era parity):
|
|
3
|
+
* - Fixed: portaled under `.simple-table-root`, anchored to `anchorElement` (e.g. filter icon) so
|
|
4
|
+
* `overflow: hidden` on `.st-header-cell` does not clip the panel. Same top/left +4px and
|
|
5
|
+
* container-based flip as legacy React Dropdown.tsx.
|
|
6
|
+
* - Absolute: stays under caller’s parent (e.g. `.st-custom-select`); use `anchorElement` for the
|
|
7
|
+
* trigger rect vs `position: relative` parent (React CustomSelect pattern).
|
|
8
|
+
*/
|
|
9
|
+
export interface CreateDropdownOptions {
|
|
10
|
+
children: HTMLElement;
|
|
11
|
+
containerRef?: HTMLElement;
|
|
12
|
+
mainBodyRef?: HTMLElement;
|
|
13
|
+
/** Rect used for placement. Required for fixed portaling (e.g. filter icon); for absolute, pass the real trigger (button/input) when it differs from the dropdown parent. */
|
|
14
|
+
anchorElement?: HTMLElement;
|
|
15
|
+
onClose: () => void;
|
|
16
|
+
open: boolean;
|
|
17
|
+
overflow?: "auto" | "visible" | "hidden";
|
|
18
|
+
width?: number;
|
|
19
|
+
maxWidth?: number;
|
|
20
|
+
positioning?: "fixed" | "absolute";
|
|
21
|
+
/**
|
|
22
|
+
* When true, this panel does not clip overflowing descendants (e.g. nested operator menus inside
|
|
23
|
+
* the filter popover). Uses overflow: visible and drops max-height on the shell — see
|
|
24
|
+
* `.st-dropdown-content--allow-descendant-overflow` in base.css.
|
|
25
|
+
*/
|
|
26
|
+
allowDescendantOverflow?: boolean;
|
|
27
|
+
}
|
|
28
|
+
export declare const createDropdown: (options: CreateDropdownOptions) => {
|
|
29
|
+
element: HTMLDivElement;
|
|
30
|
+
update: (newOptions: Partial<CreateDropdownOptions>) => void;
|
|
31
|
+
destroy: () => void;
|
|
32
|
+
setOpen: (newOpen: boolean) => void;
|
|
33
|
+
};
|
|
@@ -4,6 +4,7 @@ export interface CreateFilterActionsOptions {
|
|
|
4
4
|
canApply: boolean;
|
|
5
5
|
showClear: boolean;
|
|
6
6
|
}
|
|
7
|
+
/** Matches React FilterActions: `st-filter-button-apply`, `st-filter-button-clear`, `st-filter-button-disabled`. */
|
|
7
8
|
export declare const createFilterActions: (options: CreateFilterActionsOptions) => {
|
|
8
9
|
element: HTMLDivElement;
|
|
9
10
|
update: (newOptions: Partial<CreateFilterActionsOptions>) => void;
|
|
@@ -2,5 +2,5 @@ import HeaderObject from "../../types/HeaderObject";
|
|
|
2
2
|
import { HeaderRenderContext } from "./types";
|
|
3
3
|
/** Use same icon and animation as body row expand/collapse (icons.expand + st-expand-icon-container). */
|
|
4
4
|
export declare const createCollapseIcon: (header: HeaderObject, context: HeaderRenderContext) => HTMLElement | null;
|
|
5
|
-
/** Update header collapse icon direction on an existing cell (
|
|
5
|
+
/** Update header collapse icon direction on an existing cell (delegates to body updateExpandIconState). */
|
|
6
6
|
export declare const updateHeaderCollapseIconState: (cellElement: HTMLElement, isCollapsed: boolean, label?: string) => void;
|
|
@@ -22,4 +22,7 @@ export declare const getHeaderPositionCache: (container: HTMLElement) => Map<str
|
|
|
22
22
|
export declare const REVERT_TO_PREVIOUS_HEADERS_DELAY = 1500;
|
|
23
23
|
export declare const throttle: (callback: () => void, limit: number) => void;
|
|
24
24
|
export declare const addTrackedEventListener: (element: HTMLElement, event: string, handler: EventListener, options?: AddEventListenerOptions) => void;
|
|
25
|
+
/** Header tooltips are portaled under .simple-table-root; remove them when header DOM is torn down
|
|
26
|
+
* without pointer leave (e.g. sort/filter invalidates context cache and removes header cells). */
|
|
27
|
+
export declare const removeFloatingHeaderTooltips: (fromElement: HTMLElement) => void;
|
|
25
28
|
export declare const cleanupHeaderCellRendering: (container?: HTMLElement) => void;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import HeaderObject from "../../types/HeaderObject";
|
|
2
2
|
import { HeaderRenderContext } from "./types";
|
|
3
|
-
export declare const createResizeHandle: (header: HeaderObject, context: HeaderRenderContext,
|
|
3
|
+
export declare const createResizeHandle: (header: HeaderObject, context: HeaderRenderContext, isLastMainAutoExpandColumn: boolean) => HTMLElement | null;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AbsoluteCell, HeaderRenderContext } from "./types";
|
|
2
|
-
export declare const calculateHeaderCellClasses: (cell: AbsoluteCell, context: HeaderRenderContext,
|
|
3
|
-
export declare const createHeaderCellElement: (cell: AbsoluteCell, context: HeaderRenderContext,
|
|
2
|
+
export declare const calculateHeaderCellClasses: (cell: AbsoluteCell, context: HeaderRenderContext, isLastMainAutoExpandColumn: boolean) => string;
|
|
3
|
+
export declare const createHeaderCellElement: (cell: AbsoluteCell, context: HeaderRenderContext, isLastMainAutoExpandColumn: boolean) => HTMLElement;
|
|
4
4
|
export declare const getLastHeaderIndex: (absoluteCells: AbsoluteCell[]) => number;
|
|
5
|
-
export declare const updateHeaderCellElement: (cellElement: HTMLElement, cell: AbsoluteCell, context: HeaderRenderContext,
|
|
5
|
+
export declare const updateHeaderCellElement: (cellElement: HTMLElement, cell: AbsoluteCell, context: HeaderRenderContext, isLastMainAutoExpandColumn: boolean) => void;
|
|
@@ -39,6 +39,8 @@ export interface HeaderRenderContext {
|
|
|
39
39
|
handleApplyFilter: (filter: FilterCondition) => void;
|
|
40
40
|
handleClearFilter: (accessor: Accessor) => void;
|
|
41
41
|
handleSelectAll?: (checked: boolean) => void;
|
|
42
|
+
/** Live header tree from table state (avoids stale `headers` snapshot in long-lived handlers). */
|
|
43
|
+
getHeaders: () => HeaderObject[];
|
|
42
44
|
headerHeight: number;
|
|
43
45
|
headerRegistry?: Map<string, {
|
|
44
46
|
setEditing: (editing: boolean) => void;
|
|
@@ -13,8 +13,8 @@ export declare const DEFAULT_TABLE_WIDTH = 800;
|
|
|
13
13
|
* Normalize header widths so that fr and % are converted to pixels.
|
|
14
14
|
* Call this as soon as headers are received so the rest of the code can assume numeric widths.
|
|
15
15
|
* If totalWidth is not provided, a reasonable total is computed from fixed widths + default for fr columns.
|
|
16
|
-
* If options.containerWidth is provided,
|
|
17
|
-
*
|
|
16
|
+
* If options.containerWidth is provided, all fr/% columns are resolved against the full container width,
|
|
17
|
+
* so pinned and non-pinned fr columns share the same proportional pool.
|
|
18
18
|
*/
|
|
19
19
|
export declare function normalizeHeaderWidths(headers: HeaderObject[], totalWidthOrOptions?: number | {
|
|
20
20
|
containerWidth: number;
|
|
@@ -53,4 +53,6 @@ export declare const calculateHeaderContentWidth: (accessor: Accessor, options?:
|
|
|
53
53
|
header?: HeaderObject;
|
|
54
54
|
maxWidth?: number;
|
|
55
55
|
sampleSize?: number;
|
|
56
|
+
/** Scope `.st-cell-content` font/padding sampling to this table instance */
|
|
57
|
+
styleRoot?: ParentNode | null;
|
|
56
58
|
}) => number;
|
|
@@ -21,5 +21,9 @@ export declare function getPinnedSectionsState(headers: HeaderObject[]): PinnedS
|
|
|
21
21
|
* Clamps essential columns to the left within each section. Returns null if accessors don't match roots.
|
|
22
22
|
*/
|
|
23
23
|
export declare function rebuildHeadersFromPinnedState(headers: HeaderObject[], state: PinnedSectionsState, essentialAccessors: ReadonlySet<string>): HeaderObject[] | null;
|
|
24
|
-
/**
|
|
24
|
+
/**
|
|
25
|
+
* Move a root column to another pin section.
|
|
26
|
+
* Appends within left/right targets. For `main`, left-pinned columns are inserted at the
|
|
27
|
+
* start of main; right-pinned (and other) columns are inserted at the end of main.
|
|
28
|
+
*/
|
|
25
29
|
export declare function moveRootColumnPinSide(headers: HeaderObject[], accessor: Accessor, target: Exclude<PanelSection, "main"> | "main", essentialAccessors: ReadonlySet<string>): HeaderObject[] | null;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type HeaderObject from "../../types/HeaderObject";
|
|
2
|
+
import type { Accessor } from "../../types/HeaderObject";
|
|
3
|
+
import type { HandleResizeStartProps } from "../../types/HandleResizeStartProps";
|
|
4
|
+
/**
|
|
5
|
+
* Handler for when resize dragging starts
|
|
6
|
+
*/
|
|
7
|
+
export declare const handleResizeStart: ({ autoExpandColumns, collapsedHeaders, containerWidth, event, header, headers, mainBodyRef, onColumnWidthChange, reverse, setHeaders, setIsResizing, startWidth, }: HandleResizeStartProps) => void;
|
|
8
|
+
export type ApplyColumnAutoFitWithAutoExpandParams = {
|
|
9
|
+
collapsedHeaders: Set<Accessor>;
|
|
10
|
+
containerWidth: number;
|
|
11
|
+
getTargetLeafWidth: (leafHeader: HeaderObject) => number;
|
|
12
|
+
header: HeaderObject;
|
|
13
|
+
headerCellElement: HTMLElement | null;
|
|
14
|
+
headers: HeaderObject[];
|
|
15
|
+
mainBodyRef: HandleResizeStartProps["mainBodyRef"];
|
|
16
|
+
reverse: boolean;
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Apply a one-shot "fit to content" width for a column while preserving autoExpand
|
|
20
|
+
* compensation (same redistribution rules as dragging the resize handle).
|
|
21
|
+
*/
|
|
22
|
+
export declare const applyColumnAutoFitWithAutoExpand: ({ header, headers, collapsedHeaders, containerWidth, mainBodyRef, reverse, headerCellElement, getTargetLeafWidth, }: ApplyColumnAutoFitWithAutoExpandParams) => void;
|
|
@@ -7,6 +7,10 @@ export interface CreateRowSeparatorOptions {
|
|
|
7
7
|
heightOffsets?: HeightOffsets;
|
|
8
8
|
customTheme?: CustomTheme;
|
|
9
9
|
isSticky?: boolean;
|
|
10
|
+
/** Same px width as the body/sticky section (`SectionRenderer` / sticky pane); omit to use 100%. */
|
|
11
|
+
sectionWidthPx?: number;
|
|
10
12
|
}
|
|
13
|
+
/** Keep separator width in sync with section layout (resize, pinned width changes). */
|
|
14
|
+
export declare const applyRowSeparatorSectionWidth: (separator: HTMLElement, sectionWidthPx?: number) => void;
|
|
11
15
|
export declare const createRowSeparator: (options: CreateRowSeparatorOptions) => HTMLElement;
|
|
12
16
|
export declare const createSpacerRow: (position: number, rowHeight: number, heightOffsets: HeightOffsets | undefined, customTheme: CustomTheme, className: string, height?: number) => HTMLElement;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { HeaderObject } from "simple-table-core";
|
|
2
|
+
import type { SolidHeaderObject } from "./types";
|
|
3
|
+
export declare function defaultHeaderFromCore(header: HeaderObject): SolidHeaderObject;
|
|
4
|
+
export declare function defaultHeadersFromCore(headers: readonly HeaderObject[]): SolidHeaderObject[];
|
|
5
|
+
export declare function mapToSolidHeaderObjects(columns: readonly object[]): SolidHeaderObject[];
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { SimpleTable } from "./SimpleTable";
|
|
2
|
+
export { asRows } from "simple-table-core";
|
|
3
|
+
export { defaultHeaderFromCore, defaultHeadersFromCore, mapToSolidHeaderObjects, } from "./defaultHeadersFromCore";
|
|
4
|
+
export type { SimpleTableSolidProps, TableInstance, SolidHeaderObject, SolidColumnEditorConfig, SolidIconsConfig, SolidIconElement, SolidCellRenderer, SolidHeaderRenderer, SolidFooterRenderer, SolidHeaderDropdown, SolidColumnEditorRowRenderer, SolidColumnEditorCustomRenderer, SolidLoadingStateRenderer, SolidErrorStateRenderer, SolidEmptyStateRenderer, } from "./types";
|
|
5
|
+
export type { Accessor, AggregationConfig, AggregationType, BoundingBox, Cell, CellChangeProps, CellClickProps, CellRenderer, CellRendererProps, CellValue, ChartOptions, ColumnEditorConfig, ColumnEditorRowRenderer, ColumnEditorRowRendererComponents, ColumnEditorCustomRenderer, ColumnEditorCustomRendererProps, ColumnEditorRowRendererProps, ColumnEditorSearchFunction, ColumnType, ColumnVisibilityState, Comparator, ComparatorProps, CustomTheme, CustomThemeProps, DragHandlerProps, EmptyStateRenderer, EmptyStateRendererProps, EnumOption, ErrorStateRenderer, ErrorStateRendererProps, ExportToCSVProps, ExportValueGetter, ExportValueProps, FilterCondition, FooterRendererProps, GetRowId, GetRowIdParams, HeaderDropdown, HeaderDropdownProps, HeaderObject, HeaderRenderer, HeaderRendererComponents, HeaderRendererProps, IconsConfig, LoadingStateRenderer, LoadingStateRendererProps, OnRowGroupExpandProps, OnSortProps, QuickFilterConfig, QuickFilterGetter, QuickFilterGetterProps, QuickFilterMode, Row, RowButtonProps, RowId, RowSelectionChangeProps, RowState, SetHeaderRenameProps, SharedTableProps, ShowWhen, SimpleTableConfig, SimpleTableProps, SortColumn, TableAPI, TableFilterState, TableHeaderProps, TableRowProps, Theme, UpdateDataProps, ValueFormatter, ValueFormatterProps, ValueGetter, ValueGetterProps, } from "simple-table-core";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Component, JSX } from "solid-js";
|
|
2
|
-
import type { SimpleTableProps, SimpleTableConfig, HeaderObject, TableAPI, CellRendererProps, HeaderRendererProps, FooterRendererProps, LoadingStateRendererProps, ErrorStateRendererProps, EmptyStateRendererProps, HeaderDropdownProps, ColumnEditorRowRendererProps, ColumnEditorConfig } from "simple-table-core";
|
|
2
|
+
import type { SimpleTableProps, SimpleTableConfig, HeaderObject, Row, TableAPI, CellRendererProps, HeaderRendererProps, FooterRendererProps, LoadingStateRendererProps, ErrorStateRendererProps, EmptyStateRendererProps, HeaderDropdownProps, ColumnEditorRowRendererProps, ColumnEditorCustomRendererProps, ColumnEditorConfig } from "simple-table-core";
|
|
3
3
|
export interface TableInstance {
|
|
4
4
|
mount(): void;
|
|
5
5
|
update(config: Partial<SimpleTableConfig>): void;
|
|
@@ -25,20 +25,29 @@ export type SolidHeaderRenderer = Component<HeaderRendererProps>;
|
|
|
25
25
|
export type SolidFooterRenderer = Component<FooterRendererProps>;
|
|
26
26
|
export type SolidHeaderDropdown = Component<HeaderDropdownProps>;
|
|
27
27
|
export type SolidColumnEditorRowRenderer = Component<ColumnEditorRowRendererProps>;
|
|
28
|
+
export type SolidColumnEditorCustomRenderer = Component<ColumnEditorCustomRendererProps>;
|
|
28
29
|
export type SolidLoadingStateRenderer = Component<LoadingStateRendererProps> | JSX.Element;
|
|
29
30
|
export type SolidErrorStateRenderer = Component<ErrorStateRendererProps> | JSX.Element;
|
|
30
31
|
export type SolidEmptyStateRenderer = Component<EmptyStateRendererProps> | JSX.Element;
|
|
31
|
-
export interface SolidColumnEditorConfig extends Omit<ColumnEditorConfig, "rowRenderer"> {
|
|
32
|
+
export interface SolidColumnEditorConfig extends Omit<ColumnEditorConfig, "rowRenderer" | "customRenderer"> {
|
|
32
33
|
rowRenderer?: SolidColumnEditorRowRenderer;
|
|
34
|
+
customRenderer?: SolidColumnEditorCustomRenderer;
|
|
33
35
|
}
|
|
36
|
+
/**
|
|
37
|
+
* Column definition for `defaultHeaders`: core column metadata with Solid-only
|
|
38
|
+
* renderer fields. For trees from `simple-table-core`, use `defaultHeadersFromCore` /
|
|
39
|
+
* `mapToSolidHeaderObjects`.
|
|
40
|
+
*/
|
|
34
41
|
export interface SolidHeaderObject extends Omit<HeaderObject, "cellRenderer" | "headerRenderer" | "children" | "nestedTable"> {
|
|
35
42
|
cellRenderer?: SolidCellRenderer;
|
|
36
43
|
headerRenderer?: SolidHeaderRenderer;
|
|
37
44
|
children?: SolidHeaderObject[];
|
|
38
|
-
nestedTable?: Omit<SimpleTableSolidProps, "rows">;
|
|
45
|
+
nestedTable?: Omit<SimpleTableSolidProps, "rows" | "loadingStateRenderer" | "errorStateRenderer" | "emptyStateRenderer" | "tableEmptyStateRenderer">;
|
|
39
46
|
}
|
|
40
|
-
export interface SimpleTableSolidProps extends Omit<SimpleTableProps, "
|
|
47
|
+
export interface SimpleTableSolidProps extends Omit<SimpleTableProps, "rows" | "defaultHeaders" | "footerRenderer" | "emptyStateRenderer" | "errorStateRenderer" | "loadingStateRenderer" | "tableEmptyStateRenderer" | "headerDropdown" | "columnEditorConfig" | "icons"> {
|
|
41
48
|
defaultHeaders: SolidHeaderObject[];
|
|
49
|
+
/** Row data: domain objects or core `Row[]`; cast inside the adapter. */
|
|
50
|
+
rows: ReadonlyArray<Row> | ReadonlyArray<object>;
|
|
42
51
|
footerRenderer?: SolidFooterRenderer;
|
|
43
52
|
loadingStateRenderer?: SolidLoadingStateRenderer;
|
|
44
53
|
errorStateRenderer?: SolidErrorStateRenderer;
|
|
@@ -50,4 +59,4 @@ export interface SimpleTableSolidProps extends Omit<SimpleTableProps, "tableRef"
|
|
|
50
59
|
/** Callback ref — receives the TableAPI once the table is mounted. */
|
|
51
60
|
ref?: (api: TableAPI) => void;
|
|
52
61
|
}
|
|
53
|
-
export type { CellRendererProps, HeaderRendererProps, FooterRendererProps, LoadingStateRendererProps, ErrorStateRendererProps, EmptyStateRendererProps, HeaderDropdownProps, ColumnEditorRowRendererProps, };
|
|
62
|
+
export type { CellRendererProps, HeaderRendererProps, FooterRendererProps, LoadingStateRendererProps, ErrorStateRendererProps, EmptyStateRendererProps, HeaderDropdownProps, ColumnEditorRowRendererProps, ColumnEditorCustomRendererProps, };
|
package/package.json
CHANGED
|
@@ -1,17 +1,20 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@simple-table/solid",
|
|
3
|
-
"version": "3.0.0
|
|
4
|
-
"type": "module",
|
|
3
|
+
"version": "3.0.0",
|
|
5
4
|
"main": "dist/cjs/index.js",
|
|
6
5
|
"module": "dist/index.es.js",
|
|
7
|
-
"types": "dist/index.d.ts",
|
|
8
|
-
"sideEffects":
|
|
6
|
+
"types": "dist/types/solid/src/index.d.ts",
|
|
7
|
+
"sideEffects": [
|
|
8
|
+
"*.css",
|
|
9
|
+
"**/*.css"
|
|
10
|
+
],
|
|
9
11
|
"exports": {
|
|
10
12
|
".": {
|
|
11
13
|
"import": "./dist/index.es.js",
|
|
12
14
|
"require": "./dist/cjs/index.js",
|
|
13
|
-
"types": "./dist/index.d.ts"
|
|
14
|
-
}
|
|
15
|
+
"types": "./dist/types/solid/src/index.d.ts"
|
|
16
|
+
},
|
|
17
|
+
"./styles.css": "./dist/styles.css"
|
|
15
18
|
},
|
|
16
19
|
"license": "MIT",
|
|
17
20
|
"publishConfig": {
|
|
@@ -25,7 +28,7 @@
|
|
|
25
28
|
"solid-js": ">=1.0.0"
|
|
26
29
|
},
|
|
27
30
|
"dependencies": {
|
|
28
|
-
"simple-table-core": "3.0.0
|
|
31
|
+
"simple-table-core": "3.0.0"
|
|
29
32
|
},
|
|
30
33
|
"devDependencies": {
|
|
31
34
|
"@babel/preset-typescript": "^7.28.5",
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { SimpleTableConfig } from "../../types/SimpleTableConfig";
|
|
2
|
-
import { CustomTheme } from "../../types/CustomTheme";
|
|
3
|
-
import HeaderObject, { Accessor } from "../../types/HeaderObject";
|
|
4
|
-
export interface ResolvedIcons {
|
|
5
|
-
drag: string | HTMLElement | SVGSVGElement;
|
|
6
|
-
expand: string | HTMLElement | SVGSVGElement;
|
|
7
|
-
filter: string | HTMLElement | SVGSVGElement;
|
|
8
|
-
headerCollapse: string | HTMLElement | SVGSVGElement;
|
|
9
|
-
headerExpand: string | HTMLElement | SVGSVGElement;
|
|
10
|
-
next: string | HTMLElement | SVGSVGElement;
|
|
11
|
-
prev: string | HTMLElement | SVGSVGElement;
|
|
12
|
-
sortDown: string | HTMLElement | SVGSVGElement;
|
|
13
|
-
sortUp: string | HTMLElement | SVGSVGElement;
|
|
14
|
-
}
|
|
15
|
-
export interface MergedColumnEditorConfig {
|
|
16
|
-
text: string;
|
|
17
|
-
searchEnabled: boolean;
|
|
18
|
-
searchPlaceholder: string;
|
|
19
|
-
allowColumnPinning: boolean;
|
|
20
|
-
searchFunction?: (header: HeaderObject, searchText: string) => boolean;
|
|
21
|
-
rowRenderer?: any;
|
|
22
|
-
}
|
|
23
|
-
export declare class TableInitializer {
|
|
24
|
-
static resolveIcons(config: SimpleTableConfig): ResolvedIcons;
|
|
25
|
-
static mergeCustomTheme(config: SimpleTableConfig): CustomTheme;
|
|
26
|
-
static mergeColumnEditorConfig(config: SimpleTableConfig): MergedColumnEditorConfig;
|
|
27
|
-
static buildEssentialAccessors(headers: HeaderObject[]): Set<string>;
|
|
28
|
-
static getInitialCollapsedHeaders(headers: HeaderObject[]): Set<Accessor>;
|
|
29
|
-
static getInitialExpandedDepths(config: SimpleTableConfig): Set<number>;
|
|
30
|
-
}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { SimpleTableVanilla } from "./core/SimpleTableVanilla";
|
|
2
|
-
import type BoundingBox from "./types/BoundingBox";
|
|
3
|
-
import type Cell from "./types/Cell";
|
|
4
|
-
import type CellChangeProps from "./types/CellChangeProps";
|
|
5
|
-
import type CellValue from "./types/CellValue";
|
|
6
|
-
import type DragHandlerProps from "./types/DragHandlerProps";
|
|
7
|
-
import type EnumOption from "./types/EnumOption";
|
|
8
|
-
import type HeaderObject from "./types/HeaderObject";
|
|
9
|
-
import type { Accessor, ChartOptions, ColumnType, Comparator, ComparatorProps, ExportValueGetter, ExportValueProps, ShowWhen, ValueFormatter, ValueFormatterProps, ValueGetter, ValueGetterProps } from "./types/HeaderObject";
|
|
10
|
-
import type { AggregationConfig, AggregationType } from "./types/AggregationTypes";
|
|
11
|
-
import type OnSortProps from "./types/OnSortProps";
|
|
12
|
-
import type OnRowGroupExpandProps from "./types/OnRowGroupExpandProps";
|
|
13
|
-
import type Row from "./types/Row";
|
|
14
|
-
import type RowState from "./types/RowState";
|
|
15
|
-
import type SharedTableProps from "./types/SharedTableProps";
|
|
16
|
-
import type SortColumn from "./types/SortColumn";
|
|
17
|
-
import type TableHeaderProps from "./types/TableHeaderProps";
|
|
18
|
-
import type { TableAPI, SetHeaderRenameProps, ExportToCSVProps } from "./types/TableAPI";
|
|
19
|
-
import type TableRefType from "./types/TableRefType";
|
|
20
|
-
import type TableRowProps from "./types/TableRowProps";
|
|
21
|
-
import type Theme from "./types/Theme";
|
|
22
|
-
import type UpdateDataProps from "./types/UpdateCellProps";
|
|
23
|
-
import type { FilterCondition, TableFilterState } from "./types/FilterTypes";
|
|
24
|
-
import type { QuickFilterConfig, QuickFilterGetter, QuickFilterGetterProps, QuickFilterMode } from "./types/QuickFilterTypes";
|
|
25
|
-
import type { ColumnVisibilityState } from "./types/ColumnVisibilityTypes";
|
|
26
|
-
import type RowSelectionChangeProps from "./types/RowSelectionChangeProps";
|
|
27
|
-
import type CellClickProps from "./types/CellClickProps";
|
|
28
|
-
import type CellRendererProps from "./types/CellRendererProps";
|
|
29
|
-
import type { CellRenderer } from "./types/CellRendererProps";
|
|
30
|
-
import type HeaderRendererProps from "./types/HeaderRendererProps";
|
|
31
|
-
import type { HeaderRenderer, HeaderRendererComponents } from "./types/HeaderRendererProps";
|
|
32
|
-
import type ColumnEditorRowRendererProps from "./types/ColumnEditorRowRendererProps";
|
|
33
|
-
import type { ColumnEditorRowRenderer, ColumnEditorRowRendererComponents } from "./types/ColumnEditorRowRendererProps";
|
|
34
|
-
import type HeaderDropdownProps from "./types/HeaderDropdownProps";
|
|
35
|
-
import type { HeaderDropdown } from "./types/HeaderDropdownProps";
|
|
36
|
-
import type { RowButtonProps } from "./types/RowButton";
|
|
37
|
-
import type FooterRendererProps from "./types/FooterRendererProps";
|
|
38
|
-
import type { LoadingStateRenderer, ErrorStateRenderer, EmptyStateRenderer, LoadingStateRendererProps, ErrorStateRendererProps, EmptyStateRendererProps } from "./types/RowStateRendererProps";
|
|
39
|
-
import type { CustomTheme, CustomThemeProps } from "./types/CustomTheme";
|
|
40
|
-
import type { ColumnEditorConfig, ColumnEditorSearchFunction } from "./types/ColumnEditorConfig";
|
|
41
|
-
import type { IconsConfig } from "./types/IconsConfig";
|
|
42
|
-
import type { GetRowId, GetRowIdParams } from "./types/GetRowId";
|
|
43
|
-
import type { SimpleTableConfig } from "./types/SimpleTableConfig";
|
|
44
|
-
import type { SimpleTableProps } from "./types/SimpleTableProps";
|
|
45
|
-
import type { RowId } from "./types/RowId";
|
|
46
|
-
import type { PinnedSectionsState } from "./types/PinnedSectionsState";
|
|
47
|
-
export { SimpleTableVanilla };
|
|
48
|
-
export type { Accessor, AggregationConfig, AggregationType, BoundingBox, Cell, CellChangeProps, CellClickProps, CellRenderer, CellRendererProps, CellValue, ChartOptions, ColumnEditorConfig, ColumnEditorRowRenderer, ColumnEditorRowRendererComponents, ColumnEditorRowRendererProps, ColumnEditorSearchFunction, ColumnType, ColumnVisibilityState, Comparator, ComparatorProps, CustomTheme, CustomThemeProps, DragHandlerProps, EmptyStateRenderer, EmptyStateRendererProps, EnumOption, ErrorStateRenderer, ErrorStateRendererProps, ExportToCSVProps, ExportValueGetter, ExportValueProps, FilterCondition, FooterRendererProps, GetRowId, GetRowIdParams, IconsConfig, LoadingStateRenderer, LoadingStateRendererProps, HeaderDropdown, HeaderDropdownProps, HeaderObject, HeaderRenderer, HeaderRendererProps, HeaderRendererComponents, OnRowGroupExpandProps, OnSortProps, QuickFilterConfig, QuickFilterGetter, QuickFilterGetterProps, QuickFilterMode, Row, RowButtonProps, RowId, RowSelectionChangeProps, RowState, SetHeaderRenameProps, SharedTableProps, ShowWhen, SimpleTableConfig, SimpleTableProps, SortColumn, TableAPI, TableFilterState, TableHeaderProps, TableRefType, TableRowProps, Theme, PinnedSectionsState, UpdateDataProps, ValueFormatter, ValueFormatterProps, ValueGetter, ValueGetterProps, };
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import HeaderObject from "../types/HeaderObject";
|
|
2
|
-
export interface DimensionManagerConfig {
|
|
3
|
-
effectiveHeaders: HeaderObject[];
|
|
4
|
-
headerHeight?: number;
|
|
5
|
-
rowHeight: number;
|
|
6
|
-
height?: string | number;
|
|
7
|
-
maxHeight?: string | number;
|
|
8
|
-
totalRowCount: number;
|
|
9
|
-
footerHeight?: number;
|
|
10
|
-
containerElement?: HTMLElement;
|
|
11
|
-
}
|
|
12
|
-
export interface DimensionManagerState {
|
|
13
|
-
containerWidth: number;
|
|
14
|
-
calculatedHeaderHeight: number;
|
|
15
|
-
maxHeaderDepth: number;
|
|
16
|
-
contentHeight: number | undefined;
|
|
17
|
-
}
|
|
18
|
-
type StateChangeCallback = (state: DimensionManagerState) => void;
|
|
19
|
-
export declare class DimensionManager {
|
|
20
|
-
private config;
|
|
21
|
-
private state;
|
|
22
|
-
private subscribers;
|
|
23
|
-
private resizeObserver;
|
|
24
|
-
private rafId;
|
|
25
|
-
constructor(config: DimensionManagerConfig);
|
|
26
|
-
private getHeaderDepth;
|
|
27
|
-
private calculateMaxHeaderDepth;
|
|
28
|
-
private calculateHeaderHeight;
|
|
29
|
-
private convertHeightToPixels;
|
|
30
|
-
private calculateContentHeight;
|
|
31
|
-
private observeContainer;
|
|
32
|
-
updateConfig(config: Partial<DimensionManagerConfig>): void;
|
|
33
|
-
subscribe(callback: StateChangeCallback): () => void;
|
|
34
|
-
private notifySubscribers;
|
|
35
|
-
getState(): DimensionManagerState;
|
|
36
|
-
getContainerWidth(): number;
|
|
37
|
-
getCalculatedHeaderHeight(): number;
|
|
38
|
-
getMaxHeaderDepth(): number;
|
|
39
|
-
getContentHeight(): number | undefined;
|
|
40
|
-
destroy(): void;
|
|
41
|
-
}
|
|
42
|
-
export {};
|
|
@@ -1,246 +0,0 @@
|
|
|
1
|
-
import type Cell from "../../types/Cell";
|
|
2
|
-
import { type SelectionManagerConfig } from "./types";
|
|
3
|
-
export type { SelectionManagerConfig } from "./types";
|
|
4
|
-
export { createSetString } from "./types";
|
|
5
|
-
export declare class SelectionManager {
|
|
6
|
-
private config;
|
|
7
|
-
private selectedCells;
|
|
8
|
-
private selectedColumns;
|
|
9
|
-
private lastSelectedColumnIndex;
|
|
10
|
-
private initialFocusedCell;
|
|
11
|
-
private copyFlashCells;
|
|
12
|
-
private warningFlashCells;
|
|
13
|
-
private isSelecting;
|
|
14
|
-
private startCell;
|
|
15
|
-
private keydownHandler;
|
|
16
|
-
private currentMouseX;
|
|
17
|
-
private currentMouseY;
|
|
18
|
-
private scrollAnimationFrame;
|
|
19
|
-
private lastSelectionUpdate;
|
|
20
|
-
private selectionThrottleMs;
|
|
21
|
-
private globalMouseMoveHandler;
|
|
22
|
-
private globalMouseUpHandler;
|
|
23
|
-
private columnsWithSelectedCells;
|
|
24
|
-
private rowsWithSelectedCells;
|
|
25
|
-
private leafHeaders;
|
|
26
|
-
/** rowId -> table row index; avoids O(tableRows) findIndex per cell in getBorderClass */
|
|
27
|
-
private rowIdToTableIndex;
|
|
28
|
-
/** Set of "rowId\tcolIndex" for O(1) selected membership in syncAllCellClasses */
|
|
29
|
-
private selectedByRowIdColIndex;
|
|
30
|
-
/** When true, all cells are selected without storing R×C cell IDs (fast path for Cmd+A). */
|
|
31
|
-
private fullTableSelected;
|
|
32
|
-
constructor(config: SelectionManagerConfig);
|
|
33
|
-
/**
|
|
34
|
-
* Update configuration when props change.
|
|
35
|
-
* When options.positionOnlyBody is true (e.g. scroll-only render), only updates rowIdToTableIndex and
|
|
36
|
-
* selectedByRowIdColIndex so lookups work for new cells; skips columnsWithSelectedCells/rowsWithSelectedCells.
|
|
37
|
-
*/
|
|
38
|
-
updateConfig(config: Partial<SelectionManagerConfig>, options?: {
|
|
39
|
-
positionOnlyBody?: boolean;
|
|
40
|
-
}): void;
|
|
41
|
-
/**
|
|
42
|
-
* Update derived state based on current selections.
|
|
43
|
-
* When fullTableSelected, derives columns/rows from table shape (O(R+C)) instead of iterating selectedCells (O(R×C)).
|
|
44
|
-
* Otherwise, single pass over selectedCells to build selectedByRowIdColIndex, columnsWithSelectedCells, rowsWithSelectedCells.
|
|
45
|
-
*/
|
|
46
|
-
private updateDerivedState;
|
|
47
|
-
/**
|
|
48
|
-
* Minimal update for scroll-only renders: only rowIdToTableIndex and selectedByRowIdColIndex
|
|
49
|
-
* so isSelected/getBorderClass work for new cells; skips columnsWithSelectedCells and rowsWithSelectedCells.
|
|
50
|
-
* When fullTableSelected, selectedByRowIdColIndex is left empty (isSelected uses the flag).
|
|
51
|
-
*/
|
|
52
|
-
private updateRowIdAndSelectionLookupOnly;
|
|
53
|
-
/**
|
|
54
|
-
* Setup keyboard navigation event listener
|
|
55
|
-
*/
|
|
56
|
-
private setupKeyboardNavigation;
|
|
57
|
-
/**
|
|
58
|
-
* Clean up event listeners and resources
|
|
59
|
-
*/
|
|
60
|
-
destroy(): void;
|
|
61
|
-
/**
|
|
62
|
-
* Handle keyboard events for navigation and clipboard operations
|
|
63
|
-
*/
|
|
64
|
-
private handleKeyDown;
|
|
65
|
-
/**
|
|
66
|
-
* Handle navigation keys (arrows, home, end, page up/down)
|
|
67
|
-
*/
|
|
68
|
-
private handleNavigationKeys;
|
|
69
|
-
/**
|
|
70
|
-
* Helper function to find the edge of data in a direction
|
|
71
|
-
*/
|
|
72
|
-
private findEdgeInDirection;
|
|
73
|
-
/**
|
|
74
|
-
* Handle arrow up key
|
|
75
|
-
*/
|
|
76
|
-
private handleArrowUp;
|
|
77
|
-
/**
|
|
78
|
-
* Handle arrow down key
|
|
79
|
-
*/
|
|
80
|
-
private handleArrowDown;
|
|
81
|
-
/**
|
|
82
|
-
* Handle arrow left key
|
|
83
|
-
*/
|
|
84
|
-
private handleArrowLeft;
|
|
85
|
-
/**
|
|
86
|
-
* Handle arrow right key
|
|
87
|
-
*/
|
|
88
|
-
private handleArrowRight;
|
|
89
|
-
/**
|
|
90
|
-
* Handle home key
|
|
91
|
-
*/
|
|
92
|
-
private handleHome;
|
|
93
|
-
/**
|
|
94
|
-
* Handle end key
|
|
95
|
-
*/
|
|
96
|
-
private handleEnd;
|
|
97
|
-
/**
|
|
98
|
-
* Handle page up key
|
|
99
|
-
*/
|
|
100
|
-
private handlePageUp;
|
|
101
|
-
/**
|
|
102
|
-
* Handle page down key
|
|
103
|
-
*/
|
|
104
|
-
private handlePageDown;
|
|
105
|
-
/**
|
|
106
|
-
* Copy selected cells to clipboard
|
|
107
|
-
*/
|
|
108
|
-
private copyToClipboard;
|
|
109
|
-
/**
|
|
110
|
-
* Paste from clipboard to cells
|
|
111
|
-
*/
|
|
112
|
-
private pasteFromClipboard;
|
|
113
|
-
/**
|
|
114
|
-
* Delete content from selected cells
|
|
115
|
-
*/
|
|
116
|
-
private deleteSelectedCells;
|
|
117
|
-
/**
|
|
118
|
-
* Select all cells in the table. Uses fullTableSelected flag instead of storing R×C cell IDs for O(1) update.
|
|
119
|
-
*/
|
|
120
|
-
private selectAll;
|
|
121
|
-
/**
|
|
122
|
-
* Build the full set of cell IDs when fullTableSelected. Used for copy/delete/getSelectedCells.
|
|
123
|
-
*/
|
|
124
|
-
private buildFullTableSelectedSet;
|
|
125
|
-
/**
|
|
126
|
-
* Clear all selections
|
|
127
|
-
*/
|
|
128
|
-
clearSelection(): void;
|
|
129
|
-
/**
|
|
130
|
-
* Set selected cells (for external control)
|
|
131
|
-
*/
|
|
132
|
-
setSelectedCells(cells: Set<string>): void;
|
|
133
|
-
/**
|
|
134
|
-
* Set selected columns (for external control)
|
|
135
|
-
*/
|
|
136
|
-
setSelectedColumns(columns: Set<number>): void;
|
|
137
|
-
/**
|
|
138
|
-
* Update flash classes on cells (copy/warning animations)
|
|
139
|
-
*/
|
|
140
|
-
private updateCellFlashClasses;
|
|
141
|
-
private static readonly SELECTION_CLASSES;
|
|
142
|
-
/**
|
|
143
|
-
* Apply selection classes to all currently rendered cells. Used after drag ends
|
|
144
|
-
* so that the DOM (which may have been replaced during scroll) reflects selection.
|
|
145
|
-
* Only adds/removes classes that changed to reduce DOM writes.
|
|
146
|
-
* Fast path when there is no selection: one pass to clear all selection classes.
|
|
147
|
-
*/
|
|
148
|
-
private syncAllCellClasses;
|
|
149
|
-
/**
|
|
150
|
-
* Update all cell classes based on current selection state
|
|
151
|
-
* Directly manipulates the DOM without triggering React re-renders.
|
|
152
|
-
* When isSelecting (drag) or fullTableSelected (Cmd+A), run synchronously so classes are applied
|
|
153
|
-
* before any scroll-triggered render or next frame.
|
|
154
|
-
*/
|
|
155
|
-
private updateAllCellClasses;
|
|
156
|
-
/**
|
|
157
|
-
* Check if a cell is selected. Uses selectedByRowIdColIndex for O(1) membership.
|
|
158
|
-
* When fullTableSelected, returns true for any cell without lookup.
|
|
159
|
-
*/
|
|
160
|
-
isSelected({ colIndex, rowIndex, rowId }: Cell): boolean;
|
|
161
|
-
/**
|
|
162
|
-
* Get border class for a cell based on its selection state. Uses rowIdToTableIndex for O(1) lookups.
|
|
163
|
-
* When fullTableSelected, short-circuits with border classes for the full grid (no neighbor lookups).
|
|
164
|
-
*/
|
|
165
|
-
getBorderClass({ colIndex, rowIndex, rowId }: Cell): string;
|
|
166
|
-
/**
|
|
167
|
-
* Check if a cell is the initial focused cell
|
|
168
|
-
*/
|
|
169
|
-
isInitialFocusedCell({ rowIndex, colIndex, rowId }: Cell): boolean;
|
|
170
|
-
/**
|
|
171
|
-
* Check if a cell is currently showing copy flash animation
|
|
172
|
-
*/
|
|
173
|
-
isCopyFlashing({ colIndex, rowIndex, rowId }: Cell): boolean;
|
|
174
|
-
/**
|
|
175
|
-
* Check if a cell is currently showing warning flash animation
|
|
176
|
-
*/
|
|
177
|
-
isWarningFlashing({ colIndex, rowIndex, rowId }: Cell): boolean;
|
|
178
|
-
/**
|
|
179
|
-
* Get columns that have selected cells
|
|
180
|
-
*/
|
|
181
|
-
getColumnsWithSelectedCells(): Set<number>;
|
|
182
|
-
/**
|
|
183
|
-
* Get rows that have selected cells
|
|
184
|
-
*/
|
|
185
|
-
getRowsWithSelectedCells(): Set<string>;
|
|
186
|
-
/**
|
|
187
|
-
* Get selected cells. When fullTableSelected, builds and returns the full set on demand.
|
|
188
|
-
*/
|
|
189
|
-
getSelectedCells(): Set<string>;
|
|
190
|
-
/**
|
|
191
|
-
* Get selected columns
|
|
192
|
-
*/
|
|
193
|
-
getSelectedColumns(): Set<number>;
|
|
194
|
-
/**
|
|
195
|
-
* Get last selected column index
|
|
196
|
-
*/
|
|
197
|
-
getLastSelectedColumnIndex(): number | null;
|
|
198
|
-
/**
|
|
199
|
-
* Get start cell for range selection
|
|
200
|
-
*/
|
|
201
|
-
getStartCell(): Cell | null;
|
|
202
|
-
/**
|
|
203
|
-
* Set the initial focused cell (e.g. when clearing selection from header drag).
|
|
204
|
-
*/
|
|
205
|
-
setInitialFocusedCell(cell: Cell | null): void;
|
|
206
|
-
/**
|
|
207
|
-
* Select a single cell
|
|
208
|
-
*/
|
|
209
|
-
selectSingleCell(cell: Cell): void;
|
|
210
|
-
/**
|
|
211
|
-
* Select a range of cells from startCell to endCell
|
|
212
|
-
*/
|
|
213
|
-
selectCellRange(startCell: Cell, endCell: Cell): void;
|
|
214
|
-
/**
|
|
215
|
-
* Select one or more columns
|
|
216
|
-
*/
|
|
217
|
-
selectColumns(columnIndices: number[], isShiftKey?: boolean): void;
|
|
218
|
-
/**
|
|
219
|
-
* Update selection range during mouse drag. Skips derived state and class sync when selection unchanged.
|
|
220
|
-
*/
|
|
221
|
-
private updateSelectionRange;
|
|
222
|
-
/**
|
|
223
|
-
* Calculate the nearest cell to a given mouse position
|
|
224
|
-
*/
|
|
225
|
-
private calculateNearestCell;
|
|
226
|
-
/**
|
|
227
|
-
* Get cell from mouse position
|
|
228
|
-
*/
|
|
229
|
-
private getCellFromMousePosition;
|
|
230
|
-
/**
|
|
231
|
-
* Handle auto-scrolling when dragging near edges
|
|
232
|
-
*/
|
|
233
|
-
private handleAutoScroll;
|
|
234
|
-
/**
|
|
235
|
-
* Continuous scroll loop during mouse drag
|
|
236
|
-
*/
|
|
237
|
-
private continuousScroll;
|
|
238
|
-
/**
|
|
239
|
-
* Handle mouse down on a cell to start selection
|
|
240
|
-
*/
|
|
241
|
-
handleMouseDown({ colIndex, rowIndex, rowId }: Cell): void;
|
|
242
|
-
/**
|
|
243
|
-
* Handle mouse over a cell during selection drag
|
|
244
|
-
*/
|
|
245
|
-
handleMouseOver({ colIndex, rowIndex, rowId }: Cell): void;
|
|
246
|
-
}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import type HeaderObject from "../../types/HeaderObject";
|
|
2
|
-
import type { Accessor } from "../../types/HeaderObject";
|
|
3
|
-
import type TableRowType from "../../types/TableRow";
|
|
4
|
-
import type Cell from "../../types/Cell";
|
|
5
|
-
import type { CustomTheme } from "../../types/CustomTheme";
|
|
6
|
-
export declare const createSetString: ({ rowIndex, colIndex, rowId }: Cell) => string;
|
|
7
|
-
export interface SelectionManagerConfig {
|
|
8
|
-
selectableCells: boolean;
|
|
9
|
-
headers: HeaderObject[];
|
|
10
|
-
tableRows: TableRowType[];
|
|
11
|
-
onCellEdit?: (props: any) => void;
|
|
12
|
-
cellRegistry?: Map<string, any>;
|
|
13
|
-
collapsedHeaders?: Set<Accessor>;
|
|
14
|
-
rowHeight: number;
|
|
15
|
-
enableRowSelection?: boolean;
|
|
16
|
-
copyHeadersToClipboard?: boolean;
|
|
17
|
-
customTheme: CustomTheme;
|
|
18
|
-
/** Called when a selection drag ends so the table can re-render and apply selection classes. */
|
|
19
|
-
onSelectionDragEnd?: () => void;
|
|
20
|
-
/** Root element of the table; sync scopes cell queries to this so only this table's cells are updated. */
|
|
21
|
-
tableRoot?: HTMLElement;
|
|
22
|
-
}
|