@simple-table/vue 3.7.0 → 3.7.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.
|
@@ -3,12 +3,6 @@ export type SectionPaneRole = "sticky" | "scrollbar" | "header" | "body";
|
|
|
3
3
|
export interface SectionScrollControllerConfig {
|
|
4
4
|
/** Heavy body virtualization. Throttled to every {@link VIRTUALIZATION_THRESHOLD_PX}px. */
|
|
5
5
|
onMainSectionScrollLeft?: (scrollLeft: number) => void;
|
|
6
|
-
/**
|
|
7
|
-
* Lightweight header re-render, run on every main-section scroll frame (not throttled) so the
|
|
8
|
-
* header tracks the body fluidly during momentum. Re-rendering only the (few) header cells each
|
|
9
|
-
* frame avoids the stepwise "stagger" that throttled header virtualization produces.
|
|
10
|
-
*/
|
|
11
|
-
onMainSectionHeaderFrame?: (scrollLeft: number) => void;
|
|
12
6
|
}
|
|
13
7
|
/**
|
|
14
8
|
* Single controller for horizontal scroll sync across all four panes per section:
|
|
@@ -20,6 +14,8 @@ export declare class SectionScrollController {
|
|
|
20
14
|
private scrollLeftBySection;
|
|
21
15
|
private panesBySection;
|
|
22
16
|
private scrollHandlers;
|
|
17
|
+
/** Non-passive touchmove handlers on header panes that cancel iOS touch scrolling. */
|
|
18
|
+
private headerTouchMoveHandlers;
|
|
23
19
|
private config;
|
|
24
20
|
/** Guard to avoid re-entrancy when we programmatically set scrollLeft on other panes */
|
|
25
21
|
private isSyncing;
|
|
@@ -71,6 +71,12 @@ export interface CellRenderContext {
|
|
|
71
71
|
useOddEvenRowBackground?: boolean;
|
|
72
72
|
rowGrouping?: string[];
|
|
73
73
|
headers: HeaderObject[];
|
|
74
|
+
/**
|
|
75
|
+
* Accessor of the column whose body cells identify the row and should carry
|
|
76
|
+
* `role="rowheader"` (the first non-selection leaf column). Other data cells
|
|
77
|
+
* remain `role="gridcell"`.
|
|
78
|
+
*/
|
|
79
|
+
rowHeaderAccessor?: Accessor;
|
|
74
80
|
rowHeight: number;
|
|
75
81
|
/** Number of header rows (for aria-rowindex: position + maxHeaderDepth + 1) */
|
|
76
82
|
maxHeaderDepth?: number;
|
|
@@ -17,6 +17,13 @@ export declare const getAllChildHeaders: (header: HeaderObject) => HeaderObject[
|
|
|
17
17
|
* Check if a header has collapsible children
|
|
18
18
|
*/
|
|
19
19
|
export declare const hasCollapsibleChildren: (header: HeaderObject) => boolean;
|
|
20
|
+
/**
|
|
21
|
+
* Number of visible leaf (bottom-level) columns a header spans, for
|
|
22
|
+
* `aria-colspan` on grouped/nested header cells. Leaf headers that are hidden
|
|
23
|
+
* (`hide`) or suppressed by their parent's collapsed state are excluded so the
|
|
24
|
+
* announced span matches the columns actually rendered. Leaf headers return 1.
|
|
25
|
+
*/
|
|
26
|
+
export declare const getHeaderColspan: (header: HeaderObject, rootHeaders: HeaderObject[], collapsedHeaders: Set<Accessor>) => number;
|
|
20
27
|
/**
|
|
21
28
|
* Get all leaf (bottom-level) headers that should be visible when a parent is collapsed
|
|
22
29
|
* Uses flattenHeaders for consistent leaf detection
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@simple-table/vue",
|
|
3
|
-
"version": "3.7.
|
|
3
|
+
"version": "3.7.2",
|
|
4
4
|
"main": "dist/cjs/index.js",
|
|
5
5
|
"module": "dist/index.es.js",
|
|
6
6
|
"types": "dist/types/vue/src/index.d.ts",
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"vue": ">=3.0.0"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"simple-table-core": "3.7.
|
|
31
|
+
"simple-table-core": "3.7.2"
|
|
32
32
|
},
|
|
33
33
|
"devDependencies": {
|
|
34
34
|
"@rollup/plugin-alias": "4.0.0",
|