@simple-table/angular 4.0.1 → 4.0.3

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.
Files changed (194) hide show
  1. package/dist/cjs/index.js +1 -1
  2. package/dist/index.es.js +1 -1
  3. package/dist/types/buildVanillaConfig.d.ts +7 -0
  4. package/dist/types/index.d.ts +8 -0
  5. package/dist/types/{angular/src/lib → lib}/SimpleTableComponent.d.ts +13 -1
  6. package/dist/types/{angular/src/types.d.ts → types.d.ts} +17 -7
  7. package/package.json +12 -7
  8. package/styles.css.d.ts +1 -0
  9. package/dist/types/angular/src/buildVanillaConfig.d.ts +0 -5
  10. package/dist/types/angular/src/index.d.ts +0 -8
  11. package/dist/types/core/src/consts/column-constraints.d.ts +0 -58
  12. package/dist/types/core/src/consts/general-consts.d.ts +0 -32
  13. package/dist/types/core/src/core/SimpleTableVanilla.d.ts +0 -369
  14. package/dist/types/core/src/core/api/TableAPIImpl.d.ts +0 -78
  15. package/dist/types/core/src/core/dom/DOMManager.d.ts +0 -52
  16. package/dist/types/core/src/core/initialization/TableInitializer.d.ts +0 -34
  17. package/dist/types/core/src/core/rendering/RenderOrchestrator.d.ts +0 -172
  18. package/dist/types/core/src/core/rendering/SectionRenderer.d.ts +0 -119
  19. package/dist/types/core/src/core/rendering/TableRenderer.d.ts +0 -120
  20. package/dist/types/core/src/hooks/ariaAnnouncements.d.ts +0 -37
  21. package/dist/types/core/src/hooks/contentHeight.d.ts +0 -29
  22. package/dist/types/core/src/hooks/expandedDepths.d.ts +0 -69
  23. package/dist/types/core/src/hooks/handleOutsideClick.d.ts +0 -50
  24. package/dist/types/core/src/hooks/previousValue.d.ts +0 -30
  25. package/dist/types/core/src/hooks/scrollbarVisibility.d.ts +0 -65
  26. package/dist/types/core/src/hooks/scrollbarWidth.d.ts +0 -52
  27. package/dist/types/core/src/hooks/useAggregatedRows.d.ts +0 -14
  28. package/dist/types/core/src/hooks/useQuickFilter.d.ts +0 -14
  29. package/dist/types/core/src/hooks/windowResize.d.ts +0 -31
  30. package/dist/types/core/src/icons/AngleDownIcon.d.ts +0 -1
  31. package/dist/types/core/src/icons/AngleLeftIcon.d.ts +0 -1
  32. package/dist/types/core/src/icons/AngleRightIcon.d.ts +0 -1
  33. package/dist/types/core/src/icons/AngleUpIcon.d.ts +0 -1
  34. package/dist/types/core/src/icons/AscIcon.d.ts +0 -1
  35. package/dist/types/core/src/icons/CheckIcon.d.ts +0 -1
  36. package/dist/types/core/src/icons/DescIcon.d.ts +0 -1
  37. package/dist/types/core/src/icons/DragIcon.d.ts +0 -1
  38. package/dist/types/core/src/icons/FilterIcon.d.ts +0 -1
  39. package/dist/types/core/src/icons/SelectIcon.d.ts +0 -1
  40. package/dist/types/core/src/icons/index.d.ts +0 -14
  41. package/dist/types/core/src/index.d.ts +0 -58
  42. package/dist/types/core/src/managers/AnimationCoordinator.d.ts +0 -356
  43. package/dist/types/core/src/managers/AutoScaleManager.d.ts +0 -33
  44. package/dist/types/core/src/managers/DimensionManager.d.ts +0 -84
  45. package/dist/types/core/src/managers/DragHandlerManager.d.ts +0 -44
  46. package/dist/types/core/src/managers/FilterManager.d.ts +0 -36
  47. package/dist/types/core/src/managers/PivotManager.d.ts +0 -35
  48. package/dist/types/core/src/managers/RowManager.d.ts +0 -56
  49. package/dist/types/core/src/managers/RowSelectionManager.d.ts +0 -72
  50. package/dist/types/core/src/managers/ScrollManager.d.ts +0 -38
  51. package/dist/types/core/src/managers/SectionScrollController.d.ts +0 -74
  52. package/dist/types/core/src/managers/SelectionManager/SelectionManager.d.ts +0 -251
  53. package/dist/types/core/src/managers/SelectionManager/index.d.ts +0 -2
  54. package/dist/types/core/src/managers/SelectionManager/keyboardUtils.d.ts +0 -7
  55. package/dist/types/core/src/managers/SelectionManager/mouseUtils.d.ts +0 -16
  56. package/dist/types/core/src/managers/SelectionManager/selectionRangeUtils.d.ts +0 -7
  57. package/dist/types/core/src/managers/SelectionManager/types.d.ts +0 -28
  58. package/dist/types/core/src/managers/SortManager.d.ts +0 -42
  59. package/dist/types/core/src/types/AggregationTypes.d.ts +0 -8
  60. package/dist/types/core/src/types/AnimationsConfig.d.ts +0 -16
  61. package/dist/types/core/src/types/BoundingBox.d.ts +0 -11
  62. package/dist/types/core/src/types/Cell.d.ts +0 -7
  63. package/dist/types/core/src/types/CellChangeProps.d.ts +0 -9
  64. package/dist/types/core/src/types/CellClickProps.d.ts +0 -11
  65. package/dist/types/core/src/types/CellRendererProps.d.ts +0 -32
  66. package/dist/types/core/src/types/CellValue.d.ts +0 -2
  67. package/dist/types/core/src/types/ColumnEditorConfig.d.ts +0 -42
  68. package/dist/types/core/src/types/ColumnEditorCustomRendererProps.d.ts +0 -14
  69. package/dist/types/core/src/types/ColumnEditorRowRendererProps.d.ts +0 -39
  70. package/dist/types/core/src/types/ColumnVisibilityTypes.d.ts +0 -4
  71. package/dist/types/core/src/types/CustomTheme.d.ts +0 -28
  72. package/dist/types/core/src/types/DragHandlerProps.d.ts +0 -14
  73. package/dist/types/core/src/types/EnumOption.d.ts +0 -5
  74. package/dist/types/core/src/types/FilterTypes.d.ts +0 -31
  75. package/dist/types/core/src/types/FlattenedHeader.d.ts +0 -10
  76. package/dist/types/core/src/types/FooterPosition.d.ts +0 -3
  77. package/dist/types/core/src/types/FooterRendererProps.d.ts +0 -17
  78. package/dist/types/core/src/types/GenerateRowIdParams.d.ts +0 -11
  79. package/dist/types/core/src/types/GetRowId.d.ts +0 -16
  80. package/dist/types/core/src/types/HandleResizeStartProps.d.ts +0 -25
  81. package/dist/types/core/src/types/HeaderDropdownProps.d.ts +0 -14
  82. package/dist/types/core/src/types/HeaderObject.d.ts +0 -133
  83. package/dist/types/core/src/types/HeaderRendererProps.d.ts +0 -17
  84. package/dist/types/core/src/types/IconsConfig.d.ts +0 -19
  85. package/dist/types/core/src/types/OnNextPage.d.ts +0 -2
  86. package/dist/types/core/src/types/OnRowGroupExpandProps.d.ts +0 -16
  87. package/dist/types/core/src/types/OnSortProps.d.ts +0 -3
  88. package/dist/types/core/src/types/PanelSection.d.ts +0 -1
  89. package/dist/types/core/src/types/Pinned.d.ts +0 -1
  90. package/dist/types/core/src/types/PinnedSectionsState.d.ts +0 -6
  91. package/dist/types/core/src/types/PivotTypes.d.ts +0 -37
  92. package/dist/types/core/src/types/QuickFilterTypes.d.ts +0 -21
  93. package/dist/types/core/src/types/Row.d.ts +0 -3
  94. package/dist/types/core/src/types/RowButton.d.ts +0 -6
  95. package/dist/types/core/src/types/RowId.d.ts +0 -1
  96. package/dist/types/core/src/types/RowSelectionChangeProps.d.ts +0 -7
  97. package/dist/types/core/src/types/RowSelectionMode.d.ts +0 -8
  98. package/dist/types/core/src/types/RowState.d.ts +0 -12
  99. package/dist/types/core/src/types/RowStateRendererProps.d.ts +0 -18
  100. package/dist/types/core/src/types/SharedTableProps.d.ts +0 -24
  101. package/dist/types/core/src/types/SimpleTableConfig.d.ts +0 -124
  102. package/dist/types/core/src/types/SimpleTableProps.d.ts +0 -125
  103. package/dist/types/core/src/types/SortColumn.d.ts +0 -8
  104. package/dist/types/core/src/types/TableAPI.d.ts +0 -82
  105. package/dist/types/core/src/types/TableHeaderProps.d.ts +0 -17
  106. package/dist/types/core/src/types/TableRow.d.ts +0 -39
  107. package/dist/types/core/src/types/TableRowProps.d.ts +0 -29
  108. package/dist/types/core/src/types/Theme.d.ts +0 -2
  109. package/dist/types/core/src/types/UpdateCellProps.d.ts +0 -8
  110. package/dist/types/core/src/utils/accordionAnimation.d.ts +0 -25
  111. package/dist/types/core/src/utils/aggregationUtils.d.ts +0 -7
  112. package/dist/types/core/src/utils/ariaRowOwnership.d.ts +0 -37
  113. package/dist/types/core/src/utils/asRows.d.ts +0 -7
  114. package/dist/types/core/src/utils/bodyCell/cellLiveRef.d.ts +0 -9
  115. package/dist/types/core/src/utils/bodyCell/content.d.ts +0 -5
  116. package/dist/types/core/src/utils/bodyCell/editing.d.ts +0 -4
  117. package/dist/types/core/src/utils/bodyCell/editors/booleanDropdown.d.ts +0 -2
  118. package/dist/types/core/src/utils/bodyCell/editors/datePicker.d.ts +0 -2
  119. package/dist/types/core/src/utils/bodyCell/editors/dropdown.d.ts +0 -18
  120. package/dist/types/core/src/utils/bodyCell/editors/enumDropdown.d.ts +0 -2
  121. package/dist/types/core/src/utils/bodyCell/eventTracking.d.ts +0 -3
  122. package/dist/types/core/src/utils/bodyCell/expansion.d.ts +0 -12
  123. package/dist/types/core/src/utils/bodyCell/selection.d.ts +0 -7
  124. package/dist/types/core/src/utils/bodyCell/styling.d.ts +0 -11
  125. package/dist/types/core/src/utils/bodyCell/types.d.ts +0 -170
  126. package/dist/types/core/src/utils/bodyCellRenderer.d.ts +0 -6
  127. package/dist/types/core/src/utils/cellClipboardUtils.d.ts +0 -25
  128. package/dist/types/core/src/utils/cellScrollUtils.d.ts +0 -10
  129. package/dist/types/core/src/utils/cellUtils.d.ts +0 -18
  130. package/dist/types/core/src/utils/charts/createBarChart.d.ts +0 -20
  131. package/dist/types/core/src/utils/charts/createLineAreaChart.d.ts +0 -25
  132. package/dist/types/core/src/utils/collapseUtils.d.ts +0 -31
  133. package/dist/types/core/src/utils/columnEditor/columnEditorUtils.d.ts +0 -27
  134. package/dist/types/core/src/utils/columnEditor/createCheckbox.d.ts +0 -21
  135. package/dist/types/core/src/utils/columnEditor/createColumnEditor.d.ts +0 -26
  136. package/dist/types/core/src/utils/columnEditor/createColumnEditorPopout.d.ts +0 -23
  137. package/dist/types/core/src/utils/columnEditor/createColumnEditorRow.d.ts +0 -41
  138. package/dist/types/core/src/utils/csvExportUtils.d.ts +0 -14
  139. package/dist/types/core/src/utils/dateUtils.d.ts +0 -18
  140. package/dist/types/core/src/utils/externalScroll.d.ts +0 -58
  141. package/dist/types/core/src/utils/filterUtils.d.ts +0 -5
  142. package/dist/types/core/src/utils/filters/createBooleanFilter.d.ts +0 -15
  143. package/dist/types/core/src/utils/filters/createCustomSelect.d.ts +0 -20
  144. package/dist/types/core/src/utils/filters/createDateFilter.d.ts +0 -15
  145. package/dist/types/core/src/utils/filters/createDatePicker.d.ts +0 -10
  146. package/dist/types/core/src/utils/filters/createDropdown.d.ts +0 -33
  147. package/dist/types/core/src/utils/filters/createEnumFilter.d.ts +0 -15
  148. package/dist/types/core/src/utils/filters/createFilterActions.d.ts +0 -12
  149. package/dist/types/core/src/utils/filters/createFilterDropdown.d.ts +0 -15
  150. package/dist/types/core/src/utils/filters/createFilterInput.d.ts +0 -16
  151. package/dist/types/core/src/utils/filters/createNumberFilter.d.ts +0 -15
  152. package/dist/types/core/src/utils/filters/createStringFilter.d.ts +0 -15
  153. package/dist/types/core/src/utils/footer/createTableFooter.d.ts +0 -21
  154. package/dist/types/core/src/utils/formatters.d.ts +0 -3
  155. package/dist/types/core/src/utils/generalUtils.d.ts +0 -4
  156. package/dist/types/core/src/utils/headerCell/collapsing.d.ts +0 -6
  157. package/dist/types/core/src/utils/headerCell/dragging.d.ts +0 -5
  158. package/dist/types/core/src/utils/headerCell/editing.d.ts +0 -4
  159. package/dist/types/core/src/utils/headerCell/eventTracking.d.ts +0 -28
  160. package/dist/types/core/src/utils/headerCell/filtering.d.ts +0 -3
  161. package/dist/types/core/src/utils/headerCell/resizing.d.ts +0 -3
  162. package/dist/types/core/src/utils/headerCell/selection.d.ts +0 -10
  163. package/dist/types/core/src/utils/headerCell/sorting.d.ts +0 -3
  164. package/dist/types/core/src/utils/headerCell/styling.d.ts +0 -7
  165. package/dist/types/core/src/utils/headerCell/types.d.ts +0 -110
  166. package/dist/types/core/src/utils/headerCellRenderer.d.ts +0 -4
  167. package/dist/types/core/src/utils/headerUtils.d.ts +0 -41
  168. package/dist/types/core/src/utils/headerWidthUtils.d.ts +0 -121
  169. package/dist/types/core/src/utils/horizontalScrollbarRenderer.d.ts +0 -27
  170. package/dist/types/core/src/utils/infiniteScrollUtils.d.ts +0 -145
  171. package/dist/types/core/src/utils/loadingPlaceholderUtils.d.ts +0 -11
  172. package/dist/types/core/src/utils/nestedGridRowRenderer.d.ts +0 -50
  173. package/dist/types/core/src/utils/pinnedColumnUtils.d.ts +0 -29
  174. package/dist/types/core/src/utils/pivot/pivotRows.d.ts +0 -16
  175. package/dist/types/core/src/utils/propSyncEqual.d.ts +0 -60
  176. package/dist/types/core/src/utils/quickFilterUtils.d.ts +0 -14
  177. package/dist/types/core/src/utils/resizeUtils/autoExpandResize.d.ts +0 -32
  178. package/dist/types/core/src/utils/resizeUtils/compensation.d.ts +0 -17
  179. package/dist/types/core/src/utils/resizeUtils/domUpdates.d.ts +0 -15
  180. package/dist/types/core/src/utils/resizeUtils/index.d.ts +0 -26
  181. package/dist/types/core/src/utils/resizeUtils/maxWidth.d.ts +0 -9
  182. package/dist/types/core/src/utils/resizeUtils/parentHeaderResize.d.ts +0 -11
  183. package/dist/types/core/src/utils/resizeUtils/sectionWidths.d.ts +0 -36
  184. package/dist/types/core/src/utils/rowFlattening.d.ts +0 -30
  185. package/dist/types/core/src/utils/rowProcessing.d.ts +0 -65
  186. package/dist/types/core/src/utils/rowSelectionUtils.d.ts +0 -62
  187. package/dist/types/core/src/utils/rowSeparatorRenderer.d.ts +0 -16
  188. package/dist/types/core/src/utils/rowUtils.d.ts +0 -187
  189. package/dist/types/core/src/utils/sortUtils.d.ts +0 -8
  190. package/dist/types/core/src/utils/stateRowRenderer.d.ts +0 -15
  191. package/dist/types/core/src/utils/stickyParentsRenderer.d.ts +0 -53
  192. /package/dist/types/{angular/src/MountRegistry.d.ts → MountRegistry.d.ts} +0 -0
  193. /package/dist/types/{angular/src/lib → lib}/provideSimpleTable.d.ts +0 -0
  194. /package/dist/types/{angular/src/utils → utils}/wrapAngularRenderer.d.ts +0 -0
@@ -1,16 +0,0 @@
1
- import { HeightOffsets } from "./infiniteScrollUtils";
2
- import { CustomTheme } from "../types/CustomTheme";
3
- export interface CreateRowSeparatorOptions {
4
- position: number;
5
- rowHeight: number;
6
- displayStrongBorder: boolean;
7
- heightOffsets?: HeightOffsets;
8
- customTheme?: CustomTheme;
9
- isSticky?: boolean;
10
- /** Same px width as the body/sticky section (`SectionRenderer` / sticky pane); omit to use 100%. */
11
- sectionWidthPx?: number;
12
- }
13
- /** Keep separator width in sync with section layout (resize, pinned width changes). */
14
- export declare const applyRowSeparatorSectionWidth: (separator: HTMLElement, sectionWidthPx?: number) => void;
15
- export declare const createRowSeparator: (options: CreateRowSeparatorOptions) => HTMLElement;
16
- export declare const createSpacerRow: (position: number, rowHeight: number, heightOffsets: HeightOffsets | undefined, customTheme: CustomTheme, className: string, height?: number) => HTMLElement;
@@ -1,187 +0,0 @@
1
- import TableRow from "../types/TableRow";
2
- import Row from "../types/Row";
3
- import HeaderObject, { Accessor } from "../types/HeaderObject";
4
- import CellValue from "../types/CellValue";
5
- import RowState from "../types/RowState";
6
- import { CustomTheme } from "../types/CustomTheme";
7
- import { GetRowId } from "../types/GetRowId";
8
- import { GenerateRowIdParams } from "../types/GenerateRowIdParams";
9
- /**
10
- * Calculate the height of a nested grid based on the number of child rows
11
- * @param childRowCount - Number of rows in the nested grid
12
- * @param rowHeight - Height of each row
13
- * @param headerHeight - Height of the header
14
- * @param customTheme - Custom theme configuration
15
- * @returns Calculated height in pixels (includes padding, borders, row separators, and header border)
16
- */
17
- export declare const calculateNestedGridHeight: ({ childRowCount, rowHeight, headerHeight, customTheme, }: {
18
- childRowCount: number;
19
- rowHeight: number;
20
- headerHeight: number;
21
- customTheme: CustomTheme;
22
- }) => number;
23
- /**
24
- * Calculate the final wrapper height for a nested grid, accounting for custom heights
25
- *
26
- * @param calculatedHeight - The default calculated height based on child rows
27
- * @param customHeight - Optional custom height from nestedTable config (e.g., "200px" or 200)
28
- * @param customTheme - Custom theme configuration for padding
29
- * @returns Final height in pixels for the wrapper (includes padding)
30
- */
31
- export declare const calculateFinalNestedGridHeight: ({ calculatedHeight, customHeight, customTheme, }: {
32
- calculatedHeight: number;
33
- customHeight?: string | number;
34
- customTheme: CustomTheme;
35
- }) => number;
36
- /**
37
- * Calculate the inner height for a nested SimpleTable component
38
- * This accounts for the padding that's applied to the wrapper
39
- *
40
- * @param calculatedHeight - The total height of the nested grid row (from calculateNestedGridHeight)
41
- * @param customHeight - Optional custom height from nestedTable config (e.g., "200px")
42
- * @param customTheme - Custom theme configuration for padding
43
- * @returns Height value to pass to the nested SimpleTable (string with units)
44
- */
45
- export declare const calculateNestedTableHeight: ({ calculatedHeight, customHeight, customTheme, }: {
46
- calculatedHeight: number;
47
- customHeight?: string | number;
48
- customTheme: CustomTheme;
49
- }) => string;
50
- /**
51
- * Get a nested property value from an object using dot notation and array bracket notation
52
- * Examples:
53
- * getNestedValue(row, "latest.rank") returns row.latest.rank
54
- * getNestedValue(row, "albums[0].title") returns row.albums[0].title
55
- * getNestedValue(row, "releaseDate[0]") returns row.releaseDate[0]
56
- */
57
- export declare const getNestedValue: (obj: Row, path: Accessor) => CellValue;
58
- /**
59
- * True when both arrays have the same length and the same row object references
60
- * at each index. Used by FilterManager / SortManager so in-place live updates
61
- * that recompute filter/sort only notify subscribers when membership or order
62
- * actually changed (`.filter()` / `handleSort` always allocate new arrays).
63
- */
64
- export declare const rowsOrderEqual: (a: Row[], b: Row[]) => boolean;
65
- /**
66
- * Set a nested property value in an object using dot notation and array bracket notation
67
- * Examples:
68
- * setNestedValue(row, "latest.rank", 5) sets row.latest.rank = 5
69
- * setNestedValue(row, "albums[0].title", "New Album") sets row.albums[0].title = "New Album"
70
- * setNestedValue(row, "releaseDate[0]", "2024") sets row.releaseDate[0] = "2024"
71
- */
72
- export declare const setNestedValue: (obj: Row, path: Accessor, value: CellValue) => void;
73
- /**
74
- * Check if an array contains Row objects (vs primitive arrays like string[] or number[])
75
- */
76
- export declare const isRowArray: (data: any) => data is Row[];
77
- /**
78
- * Generate the row ID array from index path and optional custom identifier.
79
- *
80
- * The row ID is always an array that includes:
81
- * - The index at each level of nesting
82
- * - The grouping key between levels (for readability)
83
- * - An optional custom identifier from getRowId (appended at the end)
84
- *
85
- * Examples:
86
- * - Root row (index 1): [1]
87
- * - Nested store (parent index 1, store index 5): [1, "stores", 5]
88
- * - With custom ID: [1, "stores", 5, "STORE-101"]
89
- * - Deep nesting: [1, "stores", 5, "products", 2, "PROD-24"]
90
- *
91
- * @param params - Object containing row data, getRowId function, and metadata
92
- * @returns An array representing the unique row ID path
93
- */
94
- export declare const generateRowId: (params: GenerateRowIdParams) => (string | number)[];
95
- /**
96
- * Convert a row ID array to a string for use as Map keys, Set members, etc.
97
- *
98
- * @param rowId - Array of strings/numbers representing the row ID path
99
- * @returns A string representation of the row ID
100
- */
101
- export declare const rowIdToString: (rowId: (string | number)[]) => string;
102
- /**
103
- * Generate a position-independent stable row key.
104
- *
105
- * Unlike `generateRowId`, the stable key never includes positional indices, so
106
- * it survives sort/filter operations. It is used as the basis for the cell DOM
107
- * `id` and the animation coordinator's snapshot key, allowing the same DOM
108
- * element to be reused for the same logical row across re-orders (enabling
109
- * FLIP-based sort animations).
110
- *
111
- * When `getRowId` is provided, the key is derived from the user-supplied id.
112
- * When it is not, the key falls back to the row object's identity (via a
113
- * WeakMap) so animations still work for plain row arrays. For nested rows the
114
- * parent's stable key is included as a prefix so siblings of different parents
115
- * do not collide.
116
- */
117
- export declare const generateStableRowKey: (params: {
118
- getRowId?: GetRowId;
119
- row: Row;
120
- depth: number;
121
- index: number;
122
- rowPath: (string | number)[];
123
- rowIndexPath: number[];
124
- groupingKey?: string;
125
- parentStableKey?: string | null;
126
- }) => string;
127
- /**
128
- * Canonical string key for per-row expandable UI state: {@link expandedRows},
129
- * {@link collapsedRows}, and entries in {@link rowStateMap} (loading/error/empty).
130
- *
131
- * Mirrors {@link TableRow.stableRowKey} whenever it is defined so expand state survives
132
- * sort/filter reorder while positional `rowId` indices change.
133
- * Falls back to {@link rowIdToString}(rowId) for synthetic rows without a stable key.
134
- */
135
- export declare const expandStateKey: (tableRow: {
136
- stableRowKey?: string;
137
- rowId: (string | number)[];
138
- }) => string;
139
- /**
140
- * Stable identity for full-width chrome rows (nested grid, loading/error state)
141
- * under an expanded parent. Parent {@link expandStateKey} survives sort; path-based
142
- * `rowId` does not, so SectionRenderer must key DOM maps on this instead.
143
- */
144
- export declare const nestedChromeRowKey: (parentExpandStateKey: string | number, groupingKey: string | undefined) => string;
145
- /**
146
- * Get nested rows from a row based on the grouping path
147
- */
148
- export declare const getNestedRows: (row: Row, groupingKey: string) => Row[];
149
- /**
150
- * Check if a row has nested rows for a given grouping key
151
- */
152
- export declare const hasNestedRows: (row: Row, groupingKey?: string) => boolean;
153
- /**
154
- * Determine if a row is expanded based on expandedDepths and manual row overrides
155
- * @param expandStateRowId - Canonical key for expandable row state ({@link expandStateKey}).
156
- * Matches keys in expandedRows/collapsedRows (stable across sort/filter when stableRowKey is used).
157
- * @param depth - The depth level of the row (0-indexed)
158
- * @param expandedDepths - Set of depth levels that are expanded
159
- * @param expandedRows - Map of row IDs to their depths for rows that user wants expanded
160
- * @param collapsedRows - Map of row IDs to their depths for rows that user wants collapsed
161
- * @returns true if the row is expanded, false otherwise
162
- */
163
- export declare const isRowExpanded: (expandStateRowId: string | number, depth: number, expandedDepths: Set<number>, expandedRows: Map<string, number>, collapsedRows: Map<string, number>) => boolean;
164
- /**
165
- * Flatten rows recursively based on row grouping configuration
166
- * Now calculates ALL properties including position and isLastGroupRow
167
- * Also injects special state rows for loading/error/empty states (only if renderers are available)
168
- * Also injects nested grid rows when a header has nestedTable configuration
169
- */
170
- export declare const flattenRowsWithGrouping: ({ depth, expandedDepths, expandedRows, collapsedRows, rowGrouping, getRowId, rows, displayPositionOffset, rowStateMap, hasLoadingRenderer, hasErrorRenderer, hasEmptyRenderer, headers, rowHeight, headerHeight, customTheme, }: {
171
- depth?: number;
172
- expandedDepths: Set<number>;
173
- expandedRows: Map<string, number>;
174
- collapsedRows: Map<string, number>;
175
- rowGrouping?: Accessor[];
176
- getRowId?: GetRowId;
177
- rows: Row[];
178
- displayPositionOffset?: number;
179
- rowStateMap?: Map<string | number, RowState>;
180
- hasLoadingRenderer?: boolean;
181
- hasErrorRenderer?: boolean;
182
- hasEmptyRenderer?: boolean;
183
- headers?: HeaderObject[];
184
- rowHeight: number;
185
- headerHeight: number;
186
- customTheme: CustomTheme;
187
- }) => TableRow[];
@@ -1,8 +0,0 @@
1
- import HeaderObject from "../types/HeaderObject";
2
- import Row from "../types/Row";
3
- import SortColumn from "../types/SortColumn";
4
- export declare const handleSort: ({ headers, rows, sortColumn, }: {
5
- headers: HeaderObject[];
6
- rows: Row[];
7
- sortColumn: SortColumn;
8
- }) => Row[];
@@ -1,15 +0,0 @@
1
- import type TableRowType from "../types/TableRow";
2
- import { HeightOffsets } from "./infiniteScrollUtils";
3
- import { CustomTheme } from "../types/CustomTheme";
4
- import { LoadingStateRenderer, ErrorStateRenderer, EmptyStateRenderer } from "../types/RowStateRendererProps";
5
- export interface StateRowRenderContext {
6
- index: number;
7
- rowHeight: number;
8
- heightOffsets: HeightOffsets | undefined;
9
- customTheme: CustomTheme;
10
- loadingStateRenderer?: LoadingStateRenderer;
11
- errorStateRenderer?: ErrorStateRenderer;
12
- emptyStateRenderer?: EmptyStateRenderer;
13
- }
14
- export declare const createStateRow: (tableRow: TableRowType, context: StateRowRenderContext) => HTMLElement;
15
- export declare const cleanupStateRow: (rowElement: HTMLElement) => void;
@@ -1,53 +0,0 @@
1
- import TableRow from "../types/TableRow";
2
- import HeaderObject from "../types/HeaderObject";
3
- import { CumulativeHeightMap, HeightOffsets } from "./infiniteScrollUtils";
4
- import type { SectionScrollController } from "../managers/SectionScrollController";
5
- import { CustomTheme } from "../types/CustomTheme";
6
- import { CellRenderContext } from "./bodyCell/types";
7
- export interface StickyParentsContainerProps {
8
- calculatedHeaderHeight: number;
9
- heightMap?: CumulativeHeightMap;
10
- partiallyVisibleRows: TableRow[];
11
- pinnedLeftColumns: HeaderObject[];
12
- pinnedLeftWidth: number;
13
- pinnedRightColumns: HeaderObject[];
14
- pinnedRightWidth: number;
15
- scrollTop: number;
16
- scrollbarWidth: number;
17
- stickyParents: TableRow[];
18
- /**
19
- * Global `colIndex` of the first leaf column in each sticky strip section,
20
- * matching {@link SectionRenderer} body sections (pinned left, main, right).
21
- */
22
- stickySectionColStart: {
23
- left: number;
24
- main: number;
25
- right: number;
26
- };
27
- /**
28
- * Row key (`stableRowKey` ?? `rowIdToString(rowId)`) → body slice `rowIndex`
29
- * for the current `rowsToRender` band, so selection matches virtualized body cells.
30
- */
31
- stickyBodyRowIndexByRowKey: Map<string, number>;
32
- /**
33
- * When true, the table is in external-scroll mode (scrollParent in use, no
34
- * fixed height). The overlay uses native CSS `position: sticky` (handled by
35
- * a stylesheet rule) so the browser composites it on the same paint as the
36
- * parent scroll. The renderer only needs this flag to neutralize the
37
- * overlay's flex column flow contribution via a negative bottom margin.
38
- */
39
- externalScrollActive?: boolean;
40
- }
41
- export interface StickyParentsRenderContext {
42
- collapsedHeaders: Set<string>;
43
- customTheme: CustomTheme;
44
- /** True when the column-editor toggle strip is visible and reserves horizontal space. */
45
- editColumns: boolean;
46
- headers: HeaderObject[];
47
- rowHeight: number;
48
- heightOffsets: HeightOffsets | undefined;
49
- cellRenderContext: CellRenderContext;
50
- sectionScrollController?: SectionScrollController | null;
51
- }
52
- export declare const createStickyParentsContainer: (props: StickyParentsContainerProps, context: StickyParentsRenderContext) => HTMLElement | null;
53
- export declare const cleanupStickyParentsContainer: (container: HTMLElement, sectionScrollController?: SectionScrollController | null) => void;