@simple-table/react 4.0.1 → 4.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.js +1 -1
- package/dist/index.es.js +1 -1
- package/dist/types/{react/src/PortalBridge.d.ts → PortalBridge.d.ts} +96 -96
- package/dist/types/{react/src/SimpleTable.d.ts → SimpleTable.d.ts} +27 -27
- package/dist/types/buildVanillaConfig.d.ts +6 -0
- package/dist/types/index.d.ts +5 -0
- package/dist/types/{react/src/types.d.ts → types.d.ts} +111 -103
- package/dist/types/{react/src/utils → utils}/ImperativeDomSlot.d.ts +46 -46
- package/dist/types/{react/src/utils → utils}/headersEqual.d.ts +6 -6
- package/dist/types/{react/src/utils → utils}/rowsEqual.d.ts +6 -6
- package/dist/types/{react/src/utils → utils}/wrapReactRenderer.d.ts +95 -95
- package/package.json +12 -7
- package/styles.css.d.ts +1 -0
- package/dist/types/core/src/consts/column-constraints.d.ts +0 -58
- package/dist/types/core/src/consts/general-consts.d.ts +0 -32
- package/dist/types/core/src/core/SimpleTableVanilla.d.ts +0 -369
- package/dist/types/core/src/core/api/TableAPIImpl.d.ts +0 -78
- package/dist/types/core/src/core/dom/DOMManager.d.ts +0 -52
- package/dist/types/core/src/core/initialization/TableInitializer.d.ts +0 -34
- package/dist/types/core/src/core/rendering/RenderOrchestrator.d.ts +0 -172
- package/dist/types/core/src/core/rendering/SectionRenderer.d.ts +0 -119
- package/dist/types/core/src/core/rendering/TableRenderer.d.ts +0 -120
- package/dist/types/core/src/hooks/ariaAnnouncements.d.ts +0 -37
- package/dist/types/core/src/hooks/contentHeight.d.ts +0 -29
- package/dist/types/core/src/hooks/expandedDepths.d.ts +0 -69
- package/dist/types/core/src/hooks/handleOutsideClick.d.ts +0 -50
- package/dist/types/core/src/hooks/previousValue.d.ts +0 -30
- package/dist/types/core/src/hooks/scrollbarVisibility.d.ts +0 -65
- package/dist/types/core/src/hooks/scrollbarWidth.d.ts +0 -52
- package/dist/types/core/src/hooks/useAggregatedRows.d.ts +0 -14
- package/dist/types/core/src/hooks/useQuickFilter.d.ts +0 -14
- package/dist/types/core/src/hooks/windowResize.d.ts +0 -31
- package/dist/types/core/src/icons/AngleDownIcon.d.ts +0 -1
- package/dist/types/core/src/icons/AngleLeftIcon.d.ts +0 -1
- package/dist/types/core/src/icons/AngleRightIcon.d.ts +0 -1
- package/dist/types/core/src/icons/AngleUpIcon.d.ts +0 -1
- package/dist/types/core/src/icons/AscIcon.d.ts +0 -1
- package/dist/types/core/src/icons/CheckIcon.d.ts +0 -1
- package/dist/types/core/src/icons/DescIcon.d.ts +0 -1
- package/dist/types/core/src/icons/DragIcon.d.ts +0 -1
- package/dist/types/core/src/icons/FilterIcon.d.ts +0 -1
- package/dist/types/core/src/icons/SelectIcon.d.ts +0 -1
- package/dist/types/core/src/icons/index.d.ts +0 -14
- package/dist/types/core/src/index.d.ts +0 -58
- package/dist/types/core/src/managers/AnimationCoordinator.d.ts +0 -356
- package/dist/types/core/src/managers/AutoScaleManager.d.ts +0 -33
- package/dist/types/core/src/managers/DimensionManager.d.ts +0 -84
- package/dist/types/core/src/managers/DragHandlerManager.d.ts +0 -44
- package/dist/types/core/src/managers/FilterManager.d.ts +0 -36
- package/dist/types/core/src/managers/PivotManager.d.ts +0 -35
- package/dist/types/core/src/managers/RowManager.d.ts +0 -56
- package/dist/types/core/src/managers/RowSelectionManager.d.ts +0 -72
- package/dist/types/core/src/managers/ScrollManager.d.ts +0 -38
- package/dist/types/core/src/managers/SectionScrollController.d.ts +0 -74
- package/dist/types/core/src/managers/SelectionManager/SelectionManager.d.ts +0 -251
- package/dist/types/core/src/managers/SelectionManager/index.d.ts +0 -2
- package/dist/types/core/src/managers/SelectionManager/keyboardUtils.d.ts +0 -7
- package/dist/types/core/src/managers/SelectionManager/mouseUtils.d.ts +0 -16
- package/dist/types/core/src/managers/SelectionManager/selectionRangeUtils.d.ts +0 -7
- package/dist/types/core/src/managers/SelectionManager/types.d.ts +0 -28
- package/dist/types/core/src/managers/SortManager.d.ts +0 -42
- package/dist/types/core/src/types/AggregationTypes.d.ts +0 -8
- package/dist/types/core/src/types/AnimationsConfig.d.ts +0 -16
- package/dist/types/core/src/types/BoundingBox.d.ts +0 -11
- package/dist/types/core/src/types/Cell.d.ts +0 -7
- package/dist/types/core/src/types/CellChangeProps.d.ts +0 -9
- package/dist/types/core/src/types/CellClickProps.d.ts +0 -11
- package/dist/types/core/src/types/CellRendererProps.d.ts +0 -32
- package/dist/types/core/src/types/CellValue.d.ts +0 -2
- package/dist/types/core/src/types/ColumnEditorConfig.d.ts +0 -42
- package/dist/types/core/src/types/ColumnEditorCustomRendererProps.d.ts +0 -14
- package/dist/types/core/src/types/ColumnEditorRowRendererProps.d.ts +0 -39
- package/dist/types/core/src/types/ColumnVisibilityTypes.d.ts +0 -4
- package/dist/types/core/src/types/CustomTheme.d.ts +0 -28
- package/dist/types/core/src/types/DragHandlerProps.d.ts +0 -14
- package/dist/types/core/src/types/EnumOption.d.ts +0 -5
- package/dist/types/core/src/types/FilterTypes.d.ts +0 -31
- package/dist/types/core/src/types/FlattenedHeader.d.ts +0 -10
- package/dist/types/core/src/types/FooterPosition.d.ts +0 -3
- package/dist/types/core/src/types/FooterRendererProps.d.ts +0 -17
- package/dist/types/core/src/types/GenerateRowIdParams.d.ts +0 -11
- package/dist/types/core/src/types/GetRowId.d.ts +0 -16
- package/dist/types/core/src/types/HandleResizeStartProps.d.ts +0 -25
- package/dist/types/core/src/types/HeaderDropdownProps.d.ts +0 -14
- package/dist/types/core/src/types/HeaderObject.d.ts +0 -133
- package/dist/types/core/src/types/HeaderRendererProps.d.ts +0 -17
- package/dist/types/core/src/types/IconsConfig.d.ts +0 -19
- package/dist/types/core/src/types/OnNextPage.d.ts +0 -2
- package/dist/types/core/src/types/OnRowGroupExpandProps.d.ts +0 -16
- package/dist/types/core/src/types/OnSortProps.d.ts +0 -3
- package/dist/types/core/src/types/PanelSection.d.ts +0 -1
- package/dist/types/core/src/types/Pinned.d.ts +0 -1
- package/dist/types/core/src/types/PinnedSectionsState.d.ts +0 -6
- package/dist/types/core/src/types/PivotTypes.d.ts +0 -37
- package/dist/types/core/src/types/QuickFilterTypes.d.ts +0 -21
- package/dist/types/core/src/types/Row.d.ts +0 -3
- package/dist/types/core/src/types/RowButton.d.ts +0 -6
- package/dist/types/core/src/types/RowId.d.ts +0 -1
- package/dist/types/core/src/types/RowSelectionChangeProps.d.ts +0 -7
- package/dist/types/core/src/types/RowSelectionMode.d.ts +0 -8
- package/dist/types/core/src/types/RowState.d.ts +0 -12
- package/dist/types/core/src/types/RowStateRendererProps.d.ts +0 -18
- package/dist/types/core/src/types/SharedTableProps.d.ts +0 -24
- package/dist/types/core/src/types/SimpleTableConfig.d.ts +0 -124
- package/dist/types/core/src/types/SimpleTableProps.d.ts +0 -125
- package/dist/types/core/src/types/SortColumn.d.ts +0 -8
- package/dist/types/core/src/types/TableAPI.d.ts +0 -82
- package/dist/types/core/src/types/TableHeaderProps.d.ts +0 -17
- package/dist/types/core/src/types/TableRow.d.ts +0 -39
- package/dist/types/core/src/types/TableRowProps.d.ts +0 -29
- package/dist/types/core/src/types/Theme.d.ts +0 -2
- package/dist/types/core/src/types/UpdateCellProps.d.ts +0 -8
- package/dist/types/core/src/utils/accordionAnimation.d.ts +0 -25
- package/dist/types/core/src/utils/aggregationUtils.d.ts +0 -7
- package/dist/types/core/src/utils/ariaRowOwnership.d.ts +0 -37
- package/dist/types/core/src/utils/asRows.d.ts +0 -7
- package/dist/types/core/src/utils/bodyCell/cellLiveRef.d.ts +0 -9
- package/dist/types/core/src/utils/bodyCell/content.d.ts +0 -5
- package/dist/types/core/src/utils/bodyCell/editing.d.ts +0 -4
- package/dist/types/core/src/utils/bodyCell/editors/booleanDropdown.d.ts +0 -2
- package/dist/types/core/src/utils/bodyCell/editors/datePicker.d.ts +0 -2
- package/dist/types/core/src/utils/bodyCell/editors/dropdown.d.ts +0 -18
- package/dist/types/core/src/utils/bodyCell/editors/enumDropdown.d.ts +0 -2
- package/dist/types/core/src/utils/bodyCell/eventTracking.d.ts +0 -3
- package/dist/types/core/src/utils/bodyCell/expansion.d.ts +0 -12
- package/dist/types/core/src/utils/bodyCell/selection.d.ts +0 -7
- package/dist/types/core/src/utils/bodyCell/styling.d.ts +0 -11
- package/dist/types/core/src/utils/bodyCell/types.d.ts +0 -170
- package/dist/types/core/src/utils/bodyCellRenderer.d.ts +0 -6
- package/dist/types/core/src/utils/cellClipboardUtils.d.ts +0 -25
- package/dist/types/core/src/utils/cellScrollUtils.d.ts +0 -10
- package/dist/types/core/src/utils/cellUtils.d.ts +0 -18
- package/dist/types/core/src/utils/charts/createBarChart.d.ts +0 -20
- package/dist/types/core/src/utils/charts/createLineAreaChart.d.ts +0 -25
- package/dist/types/core/src/utils/collapseUtils.d.ts +0 -31
- package/dist/types/core/src/utils/columnEditor/columnEditorUtils.d.ts +0 -27
- package/dist/types/core/src/utils/columnEditor/createCheckbox.d.ts +0 -21
- package/dist/types/core/src/utils/columnEditor/createColumnEditor.d.ts +0 -26
- package/dist/types/core/src/utils/columnEditor/createColumnEditorPopout.d.ts +0 -23
- package/dist/types/core/src/utils/columnEditor/createColumnEditorRow.d.ts +0 -41
- package/dist/types/core/src/utils/csvExportUtils.d.ts +0 -14
- package/dist/types/core/src/utils/dateUtils.d.ts +0 -18
- package/dist/types/core/src/utils/externalScroll.d.ts +0 -58
- package/dist/types/core/src/utils/filterUtils.d.ts +0 -5
- package/dist/types/core/src/utils/filters/createBooleanFilter.d.ts +0 -15
- package/dist/types/core/src/utils/filters/createCustomSelect.d.ts +0 -20
- package/dist/types/core/src/utils/filters/createDateFilter.d.ts +0 -15
- package/dist/types/core/src/utils/filters/createDatePicker.d.ts +0 -10
- package/dist/types/core/src/utils/filters/createDropdown.d.ts +0 -33
- package/dist/types/core/src/utils/filters/createEnumFilter.d.ts +0 -15
- package/dist/types/core/src/utils/filters/createFilterActions.d.ts +0 -12
- package/dist/types/core/src/utils/filters/createFilterDropdown.d.ts +0 -15
- package/dist/types/core/src/utils/filters/createFilterInput.d.ts +0 -16
- package/dist/types/core/src/utils/filters/createNumberFilter.d.ts +0 -15
- package/dist/types/core/src/utils/filters/createStringFilter.d.ts +0 -15
- package/dist/types/core/src/utils/footer/createTableFooter.d.ts +0 -21
- package/dist/types/core/src/utils/formatters.d.ts +0 -3
- package/dist/types/core/src/utils/generalUtils.d.ts +0 -4
- package/dist/types/core/src/utils/headerCell/collapsing.d.ts +0 -6
- package/dist/types/core/src/utils/headerCell/dragging.d.ts +0 -5
- package/dist/types/core/src/utils/headerCell/editing.d.ts +0 -4
- package/dist/types/core/src/utils/headerCell/eventTracking.d.ts +0 -28
- package/dist/types/core/src/utils/headerCell/filtering.d.ts +0 -3
- package/dist/types/core/src/utils/headerCell/resizing.d.ts +0 -3
- package/dist/types/core/src/utils/headerCell/selection.d.ts +0 -10
- package/dist/types/core/src/utils/headerCell/sorting.d.ts +0 -3
- package/dist/types/core/src/utils/headerCell/styling.d.ts +0 -7
- package/dist/types/core/src/utils/headerCell/types.d.ts +0 -110
- package/dist/types/core/src/utils/headerCellRenderer.d.ts +0 -4
- package/dist/types/core/src/utils/headerUtils.d.ts +0 -41
- package/dist/types/core/src/utils/headerWidthUtils.d.ts +0 -121
- package/dist/types/core/src/utils/horizontalScrollbarRenderer.d.ts +0 -27
- package/dist/types/core/src/utils/infiniteScrollUtils.d.ts +0 -145
- package/dist/types/core/src/utils/loadingPlaceholderUtils.d.ts +0 -11
- package/dist/types/core/src/utils/nestedGridRowRenderer.d.ts +0 -50
- package/dist/types/core/src/utils/pinnedColumnUtils.d.ts +0 -29
- package/dist/types/core/src/utils/pivot/pivotRows.d.ts +0 -16
- package/dist/types/core/src/utils/propSyncEqual.d.ts +0 -60
- package/dist/types/core/src/utils/quickFilterUtils.d.ts +0 -14
- package/dist/types/core/src/utils/resizeUtils/autoExpandResize.d.ts +0 -32
- package/dist/types/core/src/utils/resizeUtils/compensation.d.ts +0 -17
- package/dist/types/core/src/utils/resizeUtils/domUpdates.d.ts +0 -15
- package/dist/types/core/src/utils/resizeUtils/index.d.ts +0 -26
- package/dist/types/core/src/utils/resizeUtils/maxWidth.d.ts +0 -9
- package/dist/types/core/src/utils/resizeUtils/parentHeaderResize.d.ts +0 -11
- package/dist/types/core/src/utils/resizeUtils/sectionWidths.d.ts +0 -36
- package/dist/types/core/src/utils/rowFlattening.d.ts +0 -30
- package/dist/types/core/src/utils/rowProcessing.d.ts +0 -65
- package/dist/types/core/src/utils/rowSelectionUtils.d.ts +0 -62
- package/dist/types/core/src/utils/rowSeparatorRenderer.d.ts +0 -16
- package/dist/types/core/src/utils/rowUtils.d.ts +0 -187
- package/dist/types/core/src/utils/sortUtils.d.ts +0 -8
- package/dist/types/core/src/utils/stateRowRenderer.d.ts +0 -15
- package/dist/types/core/src/utils/stickyParentsRenderer.d.ts +0 -53
- package/dist/types/react/src/buildVanillaConfig.d.ts +0 -4
- package/dist/types/react/src/index.d.ts +0 -5
|
@@ -1,125 +0,0 @@
|
|
|
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 type { RowSelectionMode } from "./RowSelectionMode";
|
|
15
|
-
import { RowButton } from "./RowButton";
|
|
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
|
-
import { AnimationsConfig } from "./AnimationsConfig";
|
|
23
|
-
import type { FooterPosition } from "./FooterPosition";
|
|
24
|
-
import type { PivotConfig } from "./PivotTypes";
|
|
25
|
-
export interface SimpleTableProps {
|
|
26
|
-
animations?: AnimationsConfig;
|
|
27
|
-
autoExpandColumns?: boolean;
|
|
28
|
-
canExpandRowGroup?: (row: Row) => boolean;
|
|
29
|
-
cellUpdateFlash?: boolean;
|
|
30
|
-
className?: string;
|
|
31
|
-
columnBorders?: boolean;
|
|
32
|
-
columnEditorConfig?: ColumnEditorConfig;
|
|
33
|
-
columnReordering?: boolean;
|
|
34
|
-
columnResizing?: boolean;
|
|
35
|
-
copyHeadersToClipboard?: boolean;
|
|
36
|
-
customTheme?: CustomThemeProps;
|
|
37
|
-
defaultHeaders: HeaderObject[];
|
|
38
|
-
editColumns?: boolean;
|
|
39
|
-
editColumnsInitOpen?: boolean;
|
|
40
|
-
emptyStateRenderer?: EmptyStateRenderer;
|
|
41
|
-
enableHeaderEditing?: boolean;
|
|
42
|
-
enableRowSelection?: boolean;
|
|
43
|
-
/**
|
|
44
|
-
* Row selection mode when `enableRowSelection` is true.
|
|
45
|
-
* - `"multiple"` (default): select any number of rows
|
|
46
|
-
* - `"single"`: selecting a row replaces the previous selection
|
|
47
|
-
*/
|
|
48
|
-
rowSelectionMode?: RowSelectionMode;
|
|
49
|
-
/**
|
|
50
|
-
* When true, clicking a data cell selects the row (toggles in multiple mode,
|
|
51
|
-
* replaces selection in single mode). Default false.
|
|
52
|
-
*/
|
|
53
|
-
selectRowOnClick?: boolean;
|
|
54
|
-
/**
|
|
55
|
-
* When false, the checkbox selection column is not shown; selection still works
|
|
56
|
-
* via click, keyboard, or TableAPI. Default true. The column is still shown when
|
|
57
|
-
* `rowButtons` is set (buttons need a home).
|
|
58
|
-
*/
|
|
59
|
-
showRowSelectionColumn?: boolean;
|
|
60
|
-
enableStickyParents?: boolean;
|
|
61
|
-
/**
|
|
62
|
-
* When false, disables both row and column virtualization so every row and
|
|
63
|
-
* column is rendered in the DOM. Useful for print, a11y tooling, or small
|
|
64
|
-
* datasets that still need a fixed `height` / `maxHeight` for layout.
|
|
65
|
-
* Default true.
|
|
66
|
-
*/
|
|
67
|
-
enableVirtualization?: boolean;
|
|
68
|
-
errorStateRenderer?: ErrorStateRenderer;
|
|
69
|
-
expandAll?: boolean;
|
|
70
|
-
externalFilterHandling?: boolean;
|
|
71
|
-
externalSortHandling?: boolean;
|
|
72
|
-
footerRenderer?: (props: FooterRendererProps) => HTMLElement | string | null;
|
|
73
|
-
footerPosition?: FooterPosition;
|
|
74
|
-
headerDropdown?: HeaderDropdown;
|
|
75
|
-
height?: string | number;
|
|
76
|
-
hideFooter?: boolean;
|
|
77
|
-
hideHeader?: boolean;
|
|
78
|
-
icons?: IconsConfig;
|
|
79
|
-
includeHeadersInCSVExport?: boolean;
|
|
80
|
-
initialSortColumn?: string;
|
|
81
|
-
initialSortDirection?: SortDirection;
|
|
82
|
-
isLoading?: boolean;
|
|
83
|
-
loadingStateRenderer?: LoadingStateRenderer;
|
|
84
|
-
maxHeight?: string | number;
|
|
85
|
-
onCellClick?: (props: CellClickProps) => void;
|
|
86
|
-
onCellEdit?: (props: CellChangeProps) => void;
|
|
87
|
-
onColumnOrderChange?: (newHeaders: HeaderObject[]) => void;
|
|
88
|
-
onColumnSelect?: (header: HeaderObject) => void;
|
|
89
|
-
onColumnVisibilityChange?: (visibilityState: ColumnVisibilityState) => void;
|
|
90
|
-
onColumnWidthChange?: (headers: HeaderObject[]) => void;
|
|
91
|
-
onFilterChange?: (filters: TableFilterState) => void;
|
|
92
|
-
onGridReady?: () => void;
|
|
93
|
-
onHeaderEdit?: (header: HeaderObject, newLabel: string) => void;
|
|
94
|
-
infiniteScrollThreshold?: number;
|
|
95
|
-
onLoadMore?: () => void;
|
|
96
|
-
onNextPage?: OnNextPage;
|
|
97
|
-
onPageChange?: (page: number) => void | Promise<void>;
|
|
98
|
-
onRowGroupExpand?: (props: OnRowGroupExpandProps) => void | Promise<void>;
|
|
99
|
-
onRowSelectionChange?: (props: RowSelectionChangeProps) => void;
|
|
100
|
-
onSortChange?: (sort: SortColumn | null) => void;
|
|
101
|
-
/**
|
|
102
|
-
* Declarative matrix pivot. When set, flat `rows` are reshaped into a
|
|
103
|
-
* pivoted grid with dynamic columns. Ignores consumer `rowGrouping` while active.
|
|
104
|
-
*/
|
|
105
|
-
pivot?: PivotConfig | null;
|
|
106
|
-
/** Fired when pivot config changes via TableAPI.setPivot. */
|
|
107
|
-
onPivotChange?: (pivot: PivotConfig | null) => void;
|
|
108
|
-
quickFilter?: QuickFilterConfig;
|
|
109
|
-
rowButtons?: RowButton[];
|
|
110
|
-
rowGrouping?: Accessor[];
|
|
111
|
-
getRowId?: GetRowId;
|
|
112
|
-
rows: Row[];
|
|
113
|
-
rowsPerPage?: number;
|
|
114
|
-
scrollParent?: HTMLElement | "window" | (() => HTMLElement | null);
|
|
115
|
-
selectableCells?: boolean;
|
|
116
|
-
selectableColumns?: boolean;
|
|
117
|
-
serverSidePagination?: boolean;
|
|
118
|
-
shouldPaginate?: boolean;
|
|
119
|
-
tableEmptyStateRenderer?: HTMLElement | string | null;
|
|
120
|
-
theme?: Theme;
|
|
121
|
-
totalRowCount?: number;
|
|
122
|
-
useHoverRowBackground?: boolean;
|
|
123
|
-
useOddColumnBackground?: boolean;
|
|
124
|
-
useOddEvenRowBackground?: boolean;
|
|
125
|
-
}
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
import UpdateDataProps from "./UpdateCellProps";
|
|
2
|
-
import HeaderObject, { Accessor } from "./HeaderObject";
|
|
3
|
-
import TableRow from "./TableRow";
|
|
4
|
-
import Row from "./Row";
|
|
5
|
-
import SortColumn, { SortDirection } from "./SortColumn";
|
|
6
|
-
import { TableFilterState, FilterCondition } from "./FilterTypes";
|
|
7
|
-
import Cell from "./Cell";
|
|
8
|
-
import type { PinnedSectionsState } from "./PinnedSectionsState";
|
|
9
|
-
import type { PivotConfig } from "./PivotTypes";
|
|
10
|
-
export interface SetHeaderRenameProps {
|
|
11
|
-
accessor: Accessor;
|
|
12
|
-
}
|
|
13
|
-
export interface ExportToCSVProps {
|
|
14
|
-
filename?: string;
|
|
15
|
-
}
|
|
16
|
-
export type TableAPI = {
|
|
17
|
-
updateData: (props: UpdateDataProps) => void;
|
|
18
|
-
setHeaderRename: (props: SetHeaderRenameProps) => void;
|
|
19
|
-
getVisibleRows: () => TableRow[];
|
|
20
|
-
getAllRows: () => TableRow[];
|
|
21
|
-
getHeaders: () => HeaderObject[];
|
|
22
|
-
exportToCSV: (props?: ExportToCSVProps) => void;
|
|
23
|
-
getSortState: () => SortColumn | null;
|
|
24
|
-
applySortState: (props?: {
|
|
25
|
-
accessor: Accessor;
|
|
26
|
-
direction?: SortDirection;
|
|
27
|
-
}) => Promise<void>;
|
|
28
|
-
/** Ordered root accessors per pin section (left, main/unpinned, right) */
|
|
29
|
-
getPinnedState: () => PinnedSectionsState;
|
|
30
|
-
/** Reorder root columns and set pinned flags; lists must include every root accessor exactly once. Essential order is clamped per section. */
|
|
31
|
-
applyPinnedState: (state: PinnedSectionsState) => Promise<void>;
|
|
32
|
-
getFilterState: () => TableFilterState;
|
|
33
|
-
applyFilter: (filter: FilterCondition) => Promise<void>;
|
|
34
|
-
clearFilter: (accessor: Accessor) => Promise<void>;
|
|
35
|
-
clearAllFilters: () => Promise<void>;
|
|
36
|
-
getCurrentPage: () => number;
|
|
37
|
-
getTotalPages: () => number;
|
|
38
|
-
setPage: (page: number) => Promise<void>;
|
|
39
|
-
expandAll: () => void;
|
|
40
|
-
collapseAll: () => void;
|
|
41
|
-
expandDepth: (depth: number) => void;
|
|
42
|
-
collapseDepth: (depth: number) => void;
|
|
43
|
-
toggleDepth: (depth: number) => void;
|
|
44
|
-
setExpandedDepths: (depths: Set<number>) => void;
|
|
45
|
-
getExpandedDepths: () => Set<number>;
|
|
46
|
-
getGroupingProperty: (depth: number) => Accessor | undefined;
|
|
47
|
-
getGroupingDepth: (property: Accessor) => number;
|
|
48
|
-
toggleColumnEditor: (open?: boolean) => void;
|
|
49
|
-
applyColumnVisibility: (visibility: {
|
|
50
|
-
[accessor: string]: boolean;
|
|
51
|
-
}) => Promise<void>;
|
|
52
|
-
/**
|
|
53
|
-
* Reset columns to the configured definitions: default order, widths, and
|
|
54
|
-
* visibility. All columns become visible again except those explicitly
|
|
55
|
-
* defined with `hide: true` in `defaultHeaders`, regardless of any runtime
|
|
56
|
-
* visibility changes made since mount.
|
|
57
|
-
*/
|
|
58
|
-
resetColumns: () => void;
|
|
59
|
-
setQuickFilter: (text: string) => void;
|
|
60
|
-
getSelectedCells: () => Set<string>;
|
|
61
|
-
clearSelection: () => void;
|
|
62
|
-
selectCell: (cell: Cell) => void;
|
|
63
|
-
selectCellRange: (startCell: Cell, endCell: Cell) => void;
|
|
64
|
-
/** Selected row IDs when row selection is enabled. */
|
|
65
|
-
getSelectedRows: () => Set<string>;
|
|
66
|
-
/** Row data objects for currently selected rows (resolved from visible/current table rows). */
|
|
67
|
-
getSelectedRowsData: () => Row[];
|
|
68
|
-
/** Look up a row by its string row id in the current table rows. */
|
|
69
|
-
getRow: (rowId: string) => Row | undefined;
|
|
70
|
-
selectRow: (rowId: string) => void;
|
|
71
|
-
deselectRow: (rowId: string) => void;
|
|
72
|
-
toggleRowSelection: (rowId: string) => void;
|
|
73
|
-
/** Clears row selection only (does not clear cell selection). */
|
|
74
|
-
clearRowSelection: () => void;
|
|
75
|
-
/** Enable, update, or clear matrix pivot (`null` disables). */
|
|
76
|
-
setPivot: (config: PivotConfig | null) => void;
|
|
77
|
-
getPivot: () => PivotConfig | null;
|
|
78
|
-
/** Generated headers while pivot is active; otherwise current headers. */
|
|
79
|
-
getPivotHeaders: () => HeaderObject[];
|
|
80
|
-
/** Post-pivot rows (pre-flatten) while pivot is active; otherwise source rows. */
|
|
81
|
-
getPivotedRows: () => Row[];
|
|
82
|
-
};
|
|
@@ -1,17 +0,0 @@
|
|
|
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;
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import Row from "./Row";
|
|
2
|
-
import RowState from "./RowState";
|
|
3
|
-
import HeaderObject, { Accessor } from "./HeaderObject";
|
|
4
|
-
type TableRow = {
|
|
5
|
-
depth: number;
|
|
6
|
-
displayPosition: number;
|
|
7
|
-
groupingKey?: string;
|
|
8
|
-
isLastGroupRow: boolean;
|
|
9
|
-
position: number;
|
|
10
|
-
row: Row;
|
|
11
|
-
rowId: (string | number)[];
|
|
12
|
-
/**
|
|
13
|
-
* Position-independent identity for the row, used as the basis for the
|
|
14
|
-
* cell DOM `id`, the animation coordinator's snapshot key, and **expand /
|
|
15
|
-
* collapse / row-loading state maps** ({@link expandStateKey}).
|
|
16
|
-
*
|
|
17
|
-
* Sort/filter reorder leaves this unchanged while positional `rowId` changes,
|
|
18
|
-
* so nested rows stay expanded after sort when this is supplied (via `getRowId`
|
|
19
|
-
* or WeakMap-backed fallback identities).
|
|
20
|
-
*/
|
|
21
|
-
stableRowKey?: string;
|
|
22
|
-
rowPath?: (string | number)[];
|
|
23
|
-
rowIndexPath?: number[];
|
|
24
|
-
stateIndicator?: {
|
|
25
|
-
parentRowId: string | number;
|
|
26
|
-
parentRow: Row;
|
|
27
|
-
state: RowState;
|
|
28
|
-
};
|
|
29
|
-
isLoadingSkeleton?: boolean;
|
|
30
|
-
nestedTable?: {
|
|
31
|
-
parentRow: Row;
|
|
32
|
-
expandableHeader: HeaderObject;
|
|
33
|
-
childAccessor: Accessor;
|
|
34
|
-
calculatedHeight: number;
|
|
35
|
-
};
|
|
36
|
-
absoluteRowIndex: number;
|
|
37
|
-
parentIndices?: number[];
|
|
38
|
-
};
|
|
39
|
-
export default TableRow;
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import CellChangeProps from "./CellChangeProps";
|
|
2
|
-
import HeaderObject from "./HeaderObject";
|
|
3
|
-
import Row from "./Row";
|
|
4
|
-
import Cell from "./Cell";
|
|
5
|
-
type TableRowProps = {
|
|
6
|
-
currentRows: Row[];
|
|
7
|
-
draggedHeaderRef: {
|
|
8
|
-
current: HeaderObject | null;
|
|
9
|
-
};
|
|
10
|
-
getBorderClass: (rowIndex: number, columnIndex: number) => string;
|
|
11
|
-
handleMouseDown: (props: Cell) => void;
|
|
12
|
-
handleMouseOver: (rowIndex: number, columnIndex: number) => void;
|
|
13
|
-
headers: HeaderObject[];
|
|
14
|
-
hoveredHeaderRef: {
|
|
15
|
-
current: HeaderObject | null;
|
|
16
|
-
};
|
|
17
|
-
isSelected: (rowIndex: number, columnIndex: number) => boolean;
|
|
18
|
-
isInitialFocusedCell: (rowIndex: number, columnIndex: number) => boolean;
|
|
19
|
-
onCellEdit?: (props: CellChangeProps) => void;
|
|
20
|
-
onTableHeaderDragEnd: (newHeaders: HeaderObject[]) => void;
|
|
21
|
-
onToggleGroup: (rowId: number) => void;
|
|
22
|
-
row: Row;
|
|
23
|
-
rowIndex: number;
|
|
24
|
-
shouldPaginate: boolean;
|
|
25
|
-
tableRef: {
|
|
26
|
-
current: HTMLDivElement | null;
|
|
27
|
-
};
|
|
28
|
-
};
|
|
29
|
-
export default TableRowProps;
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Active axis for the in-flight accordion animation. Set on the render
|
|
3
|
-
* context for one render after a collapse/expand toggle so cell renderers
|
|
4
|
-
* know which dimension to fold/unfold.
|
|
5
|
-
*
|
|
6
|
-
* - `"vertical"` — row group expand/collapse: incoming cells start at
|
|
7
|
-
* `height: 0` and CSS-transition to `rowHeight`.
|
|
8
|
-
* - `"horizontal"` — nested column expand/collapse: incoming cells start at
|
|
9
|
-
* `width: 0` and CSS-transition to their final width.
|
|
10
|
-
* - `null` — no accordion animation in progress (sort, reorder,
|
|
11
|
-
* scroll, etc.).
|
|
12
|
-
*/
|
|
13
|
-
export type AccordionAxis = "vertical" | "horizontal" | null;
|
|
14
|
-
/** CSS class applied to the table root during the animation window. */
|
|
15
|
-
export declare const ACCORDION_ANIMATION_CLASS = "st-accordion-animating";
|
|
16
|
-
/** Custom property names consumed by the accordion CSS transitions. */
|
|
17
|
-
export declare const ACCORDION_DURATION_VAR = "--st-accordion-duration";
|
|
18
|
-
export declare const ACCORDION_EASING_VAR = "--st-accordion-easing";
|
|
19
|
-
/** Window after which the accordion CSS class is removed (ms past duration). */
|
|
20
|
-
export declare const ACCORDION_CLEANUP_BUFFER_MS = 80;
|
|
21
|
-
/**
|
|
22
|
-
* Detect `prefers-reduced-motion: reduce`. Returns `false` outside the
|
|
23
|
-
* browser (SSR) so the call site doesn't have to guard.
|
|
24
|
-
*/
|
|
25
|
-
export declare const accordionPrefersReducedMotion: () => boolean;
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type CellValue from "../types/CellValue";
|
|
2
|
-
import type { AggregationConfig } from "../types/AggregationTypes";
|
|
3
|
-
/**
|
|
4
|
-
* Aggregate a flat list of cell values using the given AggregationConfig.
|
|
5
|
-
* Shared by row-grouping rollups and matrix pivot.
|
|
6
|
-
*/
|
|
7
|
-
export declare const aggregateValues: (allValues: CellValue[], config: AggregationConfig) => number | string | undefined;
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* ARIA row layer.
|
|
3
|
-
*
|
|
4
|
-
* The table renders cells as absolutely-positioned, virtualized, FLIP-animated
|
|
5
|
-
* elements. The ARIA `grid` pattern, however, requires the hierarchy
|
|
6
|
-
* `grid → rowgroup → row → gridcell/columnheader`; a flat list of cells under
|
|
7
|
-
* the section (rowgroup) makes validators (axe) report the cells as disallowed
|
|
8
|
-
* children of the rowgroup and as missing their required `row` parent.
|
|
9
|
-
*
|
|
10
|
-
* `aria-owns` does NOT solve this: axe (and the ARIA tree) still treat a cell
|
|
11
|
-
* as a child of its DOM parent, so the cell remains an invalid rowgroup child.
|
|
12
|
-
* The cells must therefore be real DOM descendants of a `role="row"` element.
|
|
13
|
-
*
|
|
14
|
-
* To get that hierarchy without disturbing the carefully-tuned positioning and
|
|
15
|
-
* animation machinery, the row element uses `display: contents`: it generates
|
|
16
|
-
* no box, establishes no containing block, and takes part in no layout, so its
|
|
17
|
-
* absolutely-positioned cell children are laid out exactly as if they were
|
|
18
|
-
* still direct children of the section. It is still present in the
|
|
19
|
-
* accessibility tree (axe's screen-reader visibility check only looks at
|
|
20
|
-
* `display:none` / `visibility` / `content-visibility` / `aria-hidden`, never
|
|
21
|
-
* at box size), so it provides the required `row` layer for free.
|
|
22
|
-
*/
|
|
23
|
-
/**
|
|
24
|
-
* Return the `role="row"` element for `rowKey` inside `container`, creating it
|
|
25
|
-
* (as a zero-box `display: contents` element) on first use. Refreshes
|
|
26
|
-
* `aria-rowindex` when it changes. New cells should be appended to the returned
|
|
27
|
-
* element so they become DOM descendants of a row.
|
|
28
|
-
*/
|
|
29
|
-
export declare const getOrCreateRowElement: (container: HTMLElement, rowKey: string, ariaRowIndex: number) => HTMLElement;
|
|
30
|
-
/**
|
|
31
|
-
* Remove row elements that no longer contain any cells. Retained animation
|
|
32
|
-
* "ghost" cells keep their row alive until they finish and remove themselves,
|
|
33
|
-
* so we prune purely on emptiness rather than on a live-row set.
|
|
34
|
-
*/
|
|
35
|
-
export declare const reconcileRowElements: (container: HTMLElement) => void;
|
|
36
|
-
/** Remove every row element tracked for `container`. */
|
|
37
|
-
export declare const cleanupAriaRows: (container: HTMLElement) => void;
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type Row from "../types/Row";
|
|
2
|
-
/**
|
|
3
|
-
* Structural typing bridge: domain row interfaces often do not assign to {@link Row}[]
|
|
4
|
-
* because `Row` uses an index signature. Use when passing typed data to `rows` and
|
|
5
|
-
* similar APIs.
|
|
6
|
-
*/
|
|
7
|
-
export declare function asRows<T>(rows: readonly T[]): Row[];
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import type Row from "../../types/Row";
|
|
2
|
-
import type TableRow from "../../types/TableRow";
|
|
3
|
-
import { CellRenderContext } from "./types";
|
|
4
|
-
export interface CellLiveRef {
|
|
5
|
-
row: Row;
|
|
6
|
-
tableRow: TableRow;
|
|
7
|
-
context: CellRenderContext;
|
|
8
|
-
}
|
|
9
|
-
export declare const cellLiveRefMap: WeakMap<HTMLElement, CellLiveRef>;
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import HeaderObject from "../../types/HeaderObject";
|
|
2
|
-
import CellValue from "../../types/CellValue";
|
|
3
|
-
import { AbsoluteBodyCell, CellRenderContext } from "./types";
|
|
4
|
-
export declare const formatCellContent: (content: CellValue, header: HeaderObject, colIndex: number, row: any, rowIndex: number) => string | null;
|
|
5
|
-
export declare const createCellContent: (cell: AbsoluteBodyCell, context: CellRenderContext, contentSpan: HTMLElement) => void;
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import CellValue from "../../types/CellValue";
|
|
2
|
-
import { AbsoluteBodyCell, CellRenderContext } from "./types";
|
|
3
|
-
export declare const createEditableInput: (cell: AbsoluteBodyCell, context: CellRenderContext, currentValue: CellValue, onComplete: () => void) => HTMLElement;
|
|
4
|
-
export declare const createEditor: (cell: AbsoluteBodyCell, context: CellRenderContext, onComplete: () => void) => HTMLElement | null;
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
export interface DropdownOptions {
|
|
2
|
-
width?: number;
|
|
3
|
-
maxHeight?: number;
|
|
4
|
-
overflow?: "auto" | "hidden" | "visible";
|
|
5
|
-
positioning?: "fixed" | "absolute";
|
|
6
|
-
onClose: () => void;
|
|
7
|
-
}
|
|
8
|
-
export interface DropdownPosition {
|
|
9
|
-
top?: number;
|
|
10
|
-
bottom?: number;
|
|
11
|
-
left?: number;
|
|
12
|
-
right?: number;
|
|
13
|
-
}
|
|
14
|
-
export declare const calculateDropdownPosition: (triggerElement: HTMLElement, dropdownElement: HTMLElement, options: DropdownOptions) => {
|
|
15
|
-
position: DropdownPosition;
|
|
16
|
-
placement: string;
|
|
17
|
-
};
|
|
18
|
-
export declare const createDropdown: (triggerElement: HTMLElement, content: HTMLElement | DocumentFragment, options: DropdownOptions) => HTMLElement;
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export declare const addTrackedEventListener: (element: HTMLElement, event: string, handler: EventListener, options?: AddEventListenerOptions) => void;
|
|
2
|
-
export declare const getRenderedCells: (container: HTMLElement) => Map<string, HTMLElement>;
|
|
3
|
-
export declare const cleanupBodyCellRendering: (container?: HTMLElement, onHostDiscard?: ((host: HTMLElement) => void) | undefined) => void;
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { AbsoluteBodyCell, CellRenderContext } from "./types";
|
|
2
|
-
export declare const createExpandIcon: (cell: AbsoluteBodyCell, context: CellRenderContext, isExpanded: boolean) => HTMLElement;
|
|
3
|
-
export type UpdateExpandIconStateOptions = {
|
|
4
|
-
/** aria-label when the group is expanded (chevron shows collapse action). */
|
|
5
|
-
ariaLabelWhenExpanded?: string;
|
|
6
|
-
/** aria-label when the group is collapsed (chevron shows expand action). */
|
|
7
|
-
ariaLabelWhenCollapsed?: string;
|
|
8
|
-
/** When true, sets aria-expanded to match isExpanded after the toggle. */
|
|
9
|
-
syncAriaExpanded?: boolean;
|
|
10
|
-
};
|
|
11
|
-
/** Update expand/collapse icon direction on an existing cell (e.g. after expand state changes for nested grids). */
|
|
12
|
-
export declare const updateExpandIconState: (cellElement: HTMLElement, isExpanded: boolean, options?: UpdateExpandIconStateOptions) => void;
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { AbsoluteBodyCell, CellRenderContext } from "./types";
|
|
2
|
-
/**
|
|
3
|
-
* Creates the row selection checkbox using the shared createCheckbox (same as popout and header).
|
|
4
|
-
*/
|
|
5
|
-
export declare const createSelectionCheckbox: (cell: AbsoluteBodyCell, context: CellRenderContext, isChecked: boolean) => HTMLElement;
|
|
6
|
-
export declare const createRowNumber: (displayRowNumber: number) => HTMLElement;
|
|
7
|
-
export declare const createRowButtons: (cell: AbsoluteBodyCell, context: CellRenderContext) => HTMLElement | null;
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { AbsoluteBodyCell, CellRegistryEntry, CellRenderContext } from "./types";
|
|
2
|
-
import { CellLiveRef, cellLiveRefMap } from "./cellLiveRef";
|
|
3
|
-
export { cellLiveRefMap };
|
|
4
|
-
export type { CellLiveRef };
|
|
5
|
-
/** Drop the content memo so the next `updateBodyCellElement` rebuilds. */
|
|
6
|
-
export declare const invalidateBodyCellContentMemo: (cellElement: HTMLElement) => void;
|
|
7
|
-
export declare const untrackCellByRow: (rowId: string, cellElement: HTMLElement) => void;
|
|
8
|
-
export declare const unregisterCellFromRegistry: (cellElement: HTMLElement, cellRegistry?: Map<string, CellRegistryEntry>) => void;
|
|
9
|
-
export declare const createBodyCellElement: (cell: AbsoluteBodyCell, context: CellRenderContext) => HTMLElement;
|
|
10
|
-
export declare const updateBodyCellPosition: (cellElement: HTMLElement, cell: AbsoluteBodyCell) => void;
|
|
11
|
-
export declare const updateBodyCellElement: (cellElement: HTMLElement, cell: AbsoluteBodyCell, context: CellRenderContext) => void;
|