@elliemae/ds-data-table 3.80.0-next.18 → 3.80.0-next.19
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/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js +3 -3
- package/dist/cjs/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js.map +2 -2
- package/dist/cjs/addons/Filters/Components/FreeTextSearchFilter/FreeTextSearchFilterV2.js +2 -4
- package/dist/cjs/addons/Filters/Components/FreeTextSearchFilter/FreeTextSearchFilterV2.js.map +2 -2
- package/dist/cjs/addons/Filters/Components/FreeTextSearchFilter/index.js +2 -4
- package/dist/cjs/addons/Filters/Components/FreeTextSearchFilter/index.js.map +2 -2
- package/dist/cjs/configs/useAutocalculated/index.js +9 -5
- package/dist/cjs/configs/useAutocalculated/index.js.map +2 -2
- package/dist/cjs/configs/useStore/useStore.js +4 -0
- package/dist/cjs/configs/useStore/useStore.js.map +2 -2
- package/dist/cjs/configs/useTableResizeCb.js.map +1 -1
- package/dist/cjs/parts/Row.js +3 -2
- package/dist/cjs/parts/Row.js.map +2 -2
- package/dist/cjs/parts/Rows.js +4 -5
- package/dist/cjs/parts/Rows.js.map +2 -2
- package/dist/cjs/parts/VirtualRowsList.js +2 -1
- package/dist/cjs/parts/VirtualRowsList.js.map +2 -2
- package/dist/cjs/react-desc-prop-types.js.map +2 -2
- package/dist/cjs/styled.js +1 -1
- package/dist/cjs/styled.js.map +1 -1
- package/dist/esm/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js +3 -3
- package/dist/esm/addons/Columns/ColumnSelectMultiple/ColumnSelectMultiple.js.map +2 -2
- package/dist/esm/addons/Filters/Components/FreeTextSearchFilter/FreeTextSearchFilterV2.js +2 -4
- package/dist/esm/addons/Filters/Components/FreeTextSearchFilter/FreeTextSearchFilterV2.js.map +2 -2
- package/dist/esm/addons/Filters/Components/FreeTextSearchFilter/index.js +2 -4
- package/dist/esm/addons/Filters/Components/FreeTextSearchFilter/index.js.map +2 -2
- package/dist/esm/configs/useAutocalculated/index.js +9 -5
- package/dist/esm/configs/useAutocalculated/index.js.map +2 -2
- package/dist/esm/configs/useStore/useStore.js +4 -0
- package/dist/esm/configs/useStore/useStore.js.map +2 -2
- package/dist/esm/configs/useTableResizeCb.js.map +1 -1
- package/dist/esm/parts/Row.js +3 -2
- package/dist/esm/parts/Row.js.map +2 -2
- package/dist/esm/parts/Rows.js +4 -5
- package/dist/esm/parts/Rows.js.map +2 -2
- package/dist/esm/parts/VirtualRowsList.js +2 -1
- package/dist/esm/parts/VirtualRowsList.js.map +2 -2
- package/dist/esm/react-desc-prop-types.js.map +2 -2
- package/dist/esm/styled.js +1 -1
- package/dist/esm/styled.js.map +1 -1
- package/dist/types/parts/Row.d.ts +4 -2
- package/dist/types/react-desc-prop-types.d.ts +27 -6
- package/package.json +31 -31
|
@@ -2,13 +2,15 @@ import React from 'react';
|
|
|
2
2
|
import type { DSDataTableT } from '../react-desc-prop-types.js';
|
|
3
3
|
export declare const Row: React.ComponentType<{
|
|
4
4
|
row: DSDataTableT.InternalRow;
|
|
5
|
-
|
|
5
|
+
measureElement?: DSDataTableT.DataTableVirtualizer['measureElement'];
|
|
6
|
+
itemIndex?: number;
|
|
6
7
|
itemWrapperStyle?: React.CSSProperties;
|
|
7
8
|
isDragOverlay: boolean;
|
|
8
9
|
}>;
|
|
9
10
|
declare const RowWithContext: (props: {
|
|
10
11
|
row: DSDataTableT.InternalRow;
|
|
11
|
-
|
|
12
|
+
measureElement?: DSDataTableT.DataTableVirtualizer["measureElement"];
|
|
13
|
+
itemIndex?: number;
|
|
12
14
|
itemWrapperStyle?: React.CSSProperties;
|
|
13
15
|
isDragOverlay: boolean;
|
|
14
16
|
}) => React.JSX.Element;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Range,
|
|
1
|
+
import type { Range, useVirtualizer, VirtualItem } from '@tanstack/react-virtual';
|
|
2
2
|
import type { ZustandT } from '@elliemae/ds-zustand-helpers';
|
|
3
3
|
import type { DSPaginationT } from '@elliemae/ds-pagination';
|
|
4
4
|
import { type TypescriptHelpersT } from '@elliemae/ds-typescript-helpers';
|
|
@@ -11,6 +11,17 @@ import { DSDataTableName, DSDataTableSlots } from './constants/index.js';
|
|
|
11
11
|
export declare namespace DSDataTableT {
|
|
12
12
|
type PropsT<D, R, O> = Partial<D> & R & O;
|
|
13
13
|
type InternalPropsT<D, R, O> = D & R & O;
|
|
14
|
+
/**
|
|
15
|
+
* Single source of truth for the virtualizer's element generics — reused across both
|
|
16
|
+
* UseAutoCalculatedT and Context so they can't drift out of sync with each other, and must
|
|
17
|
+
* match useAutocalculated/index.tsx's own useVirtualizer<HTMLDivElement, Element> call exactly
|
|
18
|
+
* (Virtualizer is invariant across methods like scrollToFn, so a mismatched generic here is a
|
|
19
|
+
* real dts build failure, not just a lint nit). Item element is deliberately left as the broad
|
|
20
|
+
* `Element` default (not narrowed to HTMLDivElement) — ds-system's mergeRefs/innerRef typing on
|
|
21
|
+
* styled components is HTMLElement-generic, and narrowing here breaks that assignability in
|
|
22
|
+
* Row.tsx.
|
|
23
|
+
*/
|
|
24
|
+
export type DataTableVirtualizer = ReturnType<typeof useVirtualizer<HTMLDivElement, Element>>;
|
|
14
25
|
export type InternalAtoms = {
|
|
15
26
|
drilldownRowId: string | null;
|
|
16
27
|
focusedRowId: string | null;
|
|
@@ -28,7 +39,7 @@ export declare namespace DSDataTableT {
|
|
|
28
39
|
visibleRangeRef: React.MutableRefObject<Range>;
|
|
29
40
|
columnHeaderRef: React.MutableRefObject<HTMLDivElement | null>;
|
|
30
41
|
columnHeaderCallbackRef: (node: HTMLDivElement | null) => void;
|
|
31
|
-
/** Sticky header height (px) — drives both
|
|
42
|
+
/** Sticky header height (px) — drives both the virtualizer's paddingStart and the scroll container's scroll-padding-top (PUI-18626). */
|
|
32
43
|
headerHeightPx: number;
|
|
33
44
|
virtualListRef: React.MutableRefObject<HTMLDivElement | null>;
|
|
34
45
|
flattenedData: InternalRow[];
|
|
@@ -36,7 +47,15 @@ export declare namespace DSDataTableT {
|
|
|
36
47
|
isEmptyContent: boolean;
|
|
37
48
|
firstFocuseableColumnHeaderId: string | undefined;
|
|
38
49
|
visibleColumns: InternalColumn[];
|
|
39
|
-
virtualListHelpers:
|
|
50
|
+
virtualListHelpers: DataTableVirtualizer;
|
|
51
|
+
/**
|
|
52
|
+
* Fresh pulls of virtualListHelpers.getVirtualItems()/.getTotalSize(), taken on every render of
|
|
53
|
+
* useAutoCalculated. virtualListHelpers itself is the same mutated-in-place instance across
|
|
54
|
+
* renders (v3), so store selectors reading it as a whole never see a reference change — these
|
|
55
|
+
* two fields are what Rows.tsx/VirtualRowsList.tsx actually select for fresh values.
|
|
56
|
+
*/
|
|
57
|
+
virtualItems: VirtualItem[];
|
|
58
|
+
totalSize: number;
|
|
40
59
|
layoutHelpers: {
|
|
41
60
|
totalColumnsWidth: number | string;
|
|
42
61
|
gridLayout: string[];
|
|
@@ -285,7 +304,9 @@ export declare namespace DSDataTableT {
|
|
|
285
304
|
isEmptyContent: boolean;
|
|
286
305
|
firstFocuseableColumnHeaderId: string | undefined;
|
|
287
306
|
visibleColumns: InternalColumn[];
|
|
288
|
-
virtualListHelpers:
|
|
307
|
+
virtualListHelpers: DataTableVirtualizer;
|
|
308
|
+
virtualItems: VirtualItem[];
|
|
309
|
+
totalSize: number;
|
|
289
310
|
layoutHelpers: {
|
|
290
311
|
totalColumnsWidth: number | string;
|
|
291
312
|
gridLayout: string[];
|
|
@@ -390,8 +411,8 @@ export declare namespace DSDataTableT {
|
|
|
390
411
|
}[];
|
|
391
412
|
};
|
|
392
413
|
actionRef?: React.MutableRefObject<{
|
|
393
|
-
scrollToIndex:
|
|
394
|
-
scrollToOffset:
|
|
414
|
+
scrollToIndex: DataTableVirtualizer['scrollToIndex'];
|
|
415
|
+
scrollToOffset: DataTableVirtualizer['scrollToOffset'];
|
|
395
416
|
}>;
|
|
396
417
|
noResultsSecondaryMessage?: string;
|
|
397
418
|
noResultsButtonLabel?: string;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@elliemae/ds-data-table",
|
|
3
|
-
"version": "3.80.0-next.
|
|
3
|
+
"version": "3.80.0-next.19",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "ICE MT - Dimsum - Data Table",
|
|
6
6
|
"files": [
|
|
@@ -37,41 +37,41 @@
|
|
|
37
37
|
"indent": 4
|
|
38
38
|
},
|
|
39
39
|
"dependencies": {
|
|
40
|
-
"@elliemae/ds-button-v2": "3.80.0-next.
|
|
41
|
-
"@elliemae/ds-circular-progress-indicator": "3.80.0-next.
|
|
42
|
-
"@elliemae/ds-dialog": "3.80.0-next.
|
|
43
|
-
"@elliemae/ds-drag-and-drop": "3.80.0-next.
|
|
44
|
-
"@elliemae/ds-dropdownmenu-v2": "3.80.0-next.
|
|
45
|
-
"@elliemae/ds-floating-context": "3.80.0-next.
|
|
46
|
-
"@elliemae/ds-form-checkbox": "3.80.0-next.
|
|
47
|
-
"@elliemae/ds-form-combobox": "3.80.0-next.
|
|
48
|
-
"@elliemae/ds-form-date-range-picker": "3.80.0-next.
|
|
49
|
-
"@elliemae/ds-form-date-time-picker": "3.80.0-next.
|
|
50
|
-
"@elliemae/ds-form-helpers-mask-hooks": "3.80.0-next.
|
|
51
|
-
"@elliemae/ds-form-input-text": "3.80.0-next.
|
|
52
|
-
"@elliemae/ds-form-layout-blocks": "3.80.0-next.
|
|
53
|
-
"@elliemae/ds-form-radio": "3.80.0-next.
|
|
54
|
-
"@elliemae/ds-grid": "3.80.0-next.
|
|
55
|
-
"@elliemae/ds-hooks-focus-trap": "3.80.0-next.
|
|
56
|
-
"@elliemae/ds-icons": "3.80.0-next.
|
|
40
|
+
"@elliemae/ds-button-v2": "3.80.0-next.19",
|
|
41
|
+
"@elliemae/ds-circular-progress-indicator": "3.80.0-next.19",
|
|
42
|
+
"@elliemae/ds-dialog": "3.80.0-next.19",
|
|
43
|
+
"@elliemae/ds-drag-and-drop": "3.80.0-next.19",
|
|
44
|
+
"@elliemae/ds-dropdownmenu-v2": "3.80.0-next.19",
|
|
45
|
+
"@elliemae/ds-floating-context": "3.80.0-next.19",
|
|
46
|
+
"@elliemae/ds-form-checkbox": "3.80.0-next.19",
|
|
47
|
+
"@elliemae/ds-form-combobox": "3.80.0-next.19",
|
|
48
|
+
"@elliemae/ds-form-date-range-picker": "3.80.0-next.19",
|
|
49
|
+
"@elliemae/ds-form-date-time-picker": "3.80.0-next.19",
|
|
50
|
+
"@elliemae/ds-form-helpers-mask-hooks": "3.80.0-next.19",
|
|
51
|
+
"@elliemae/ds-form-input-text": "3.80.0-next.19",
|
|
52
|
+
"@elliemae/ds-form-layout-blocks": "3.80.0-next.19",
|
|
53
|
+
"@elliemae/ds-form-radio": "3.80.0-next.19",
|
|
54
|
+
"@elliemae/ds-grid": "3.80.0-next.19",
|
|
55
|
+
"@elliemae/ds-hooks-focus-trap": "3.80.0-next.19",
|
|
56
|
+
"@elliemae/ds-icons": "3.80.0-next.19",
|
|
57
57
|
"@elliemae/ds-legacy-dropdownmenu": "1.0.16",
|
|
58
|
-
"@elliemae/ds-menu-button": "3.80.0-next.
|
|
59
|
-
"@elliemae/ds-pagination": "3.80.0-next.
|
|
60
|
-
"@elliemae/ds-pills-v2": "3.80.0-next.
|
|
61
|
-
"@elliemae/ds-props-helpers": "3.80.0-next.
|
|
62
|
-
"@elliemae/ds-skeleton": "3.80.0-next.
|
|
63
|
-
"@elliemae/ds-system": "3.80.0-next.
|
|
64
|
-
"@elliemae/ds-typescript-helpers": "3.80.0-next.
|
|
65
|
-
"@elliemae/ds-zustand-helpers": "3.80.0-next.
|
|
66
|
-
"react-virtual": "
|
|
58
|
+
"@elliemae/ds-menu-button": "3.80.0-next.19",
|
|
59
|
+
"@elliemae/ds-pagination": "3.80.0-next.19",
|
|
60
|
+
"@elliemae/ds-pills-v2": "3.80.0-next.19",
|
|
61
|
+
"@elliemae/ds-props-helpers": "3.80.0-next.19",
|
|
62
|
+
"@elliemae/ds-skeleton": "3.80.0-next.19",
|
|
63
|
+
"@elliemae/ds-system": "3.80.0-next.19",
|
|
64
|
+
"@elliemae/ds-typescript-helpers": "3.80.0-next.19",
|
|
65
|
+
"@elliemae/ds-zustand-helpers": "3.80.0-next.19",
|
|
66
|
+
"@tanstack/react-virtual": "3.13.18",
|
|
67
67
|
"uid": "^2.0.2",
|
|
68
68
|
"use-onclickoutside": "0.4.1"
|
|
69
69
|
},
|
|
70
70
|
"devDependencies": {
|
|
71
|
-
"@elliemae/ds-monorepo-devops": "3.80.0-next.
|
|
72
|
-
"@elliemae/ds-tabs": "3.80.0-next.
|
|
73
|
-
"@elliemae/ds-test-utils": "3.80.0-next.
|
|
74
|
-
"@elliemae/ds-toolbar-v2": "3.80.0-next.
|
|
71
|
+
"@elliemae/ds-monorepo-devops": "3.80.0-next.19",
|
|
72
|
+
"@elliemae/ds-tabs": "3.80.0-next.19",
|
|
73
|
+
"@elliemae/ds-test-utils": "3.80.0-next.19",
|
|
74
|
+
"@elliemae/ds-toolbar-v2": "3.80.0-next.19",
|
|
75
75
|
"jest": "^30.0.0",
|
|
76
76
|
"styled-components": "~5.3.11",
|
|
77
77
|
"styled-system": "^5.1.5"
|