@tanstack/table-core 9.0.0-alpha.33 → 9.0.0-alpha.36
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/core/columns/coreColumnsFeature.cjs +18 -12
- package/dist/core/columns/coreColumnsFeature.cjs.map +1 -1
- package/dist/core/columns/coreColumnsFeature.js +18 -12
- package/dist/core/columns/coreColumnsFeature.js.map +1 -1
- package/dist/core/headers/coreHeadersFeature.cjs +11 -8
- package/dist/core/headers/coreHeadersFeature.cjs.map +1 -1
- package/dist/core/headers/coreHeadersFeature.js +11 -8
- package/dist/core/headers/coreHeadersFeature.js.map +1 -1
- package/dist/core/headers/coreHeadersFeature.utils.cjs +2 -1
- package/dist/core/headers/coreHeadersFeature.utils.cjs.map +1 -1
- package/dist/core/headers/coreHeadersFeature.utils.js +2 -1
- package/dist/core/headers/coreHeadersFeature.utils.js.map +1 -1
- package/dist/core/table/constructTable.cjs +21 -11
- package/dist/core/table/constructTable.cjs.map +1 -1
- package/dist/core/table/constructTable.d.cts +1 -3
- package/dist/core/table/constructTable.d.ts +1 -3
- package/dist/core/table/constructTable.js +23 -12
- package/dist/core/table/constructTable.js.map +1 -1
- package/dist/core/table/coreTablesFeature.types.d.cts +54 -10
- package/dist/core/table/coreTablesFeature.types.d.ts +54 -10
- package/dist/core/table/coreTablesFeature.utils.cjs +5 -1
- package/dist/core/table/coreTablesFeature.utils.cjs.map +1 -1
- package/dist/core/table/coreTablesFeature.utils.js +6 -2
- package/dist/core/table/coreTablesFeature.utils.js.map +1 -1
- package/dist/features/column-faceting/columnFacetingFeature.cjs +18 -12
- package/dist/features/column-faceting/columnFacetingFeature.cjs.map +1 -1
- package/dist/features/column-faceting/columnFacetingFeature.js +18 -12
- package/dist/features/column-faceting/columnFacetingFeature.js.map +1 -1
- package/dist/features/column-faceting/createFacetedRowModel.cjs +9 -6
- package/dist/features/column-faceting/createFacetedRowModel.cjs.map +1 -1
- package/dist/features/column-faceting/createFacetedRowModel.js +9 -6
- package/dist/features/column-faceting/createFacetedRowModel.js.map +1 -1
- package/dist/features/column-filtering/columnFilteringFeature.utils.cjs +6 -6
- package/dist/features/column-filtering/columnFilteringFeature.utils.cjs.map +1 -1
- package/dist/features/column-filtering/columnFilteringFeature.utils.js +7 -7
- package/dist/features/column-filtering/columnFilteringFeature.utils.js.map +1 -1
- package/dist/features/column-filtering/createFilteredRowModel.cjs +11 -6
- package/dist/features/column-filtering/createFilteredRowModel.cjs.map +1 -1
- package/dist/features/column-filtering/createFilteredRowModel.js +11 -6
- package/dist/features/column-filtering/createFilteredRowModel.js.map +1 -1
- package/dist/features/column-grouping/columnGroupingFeature.utils.cjs +6 -6
- package/dist/features/column-grouping/columnGroupingFeature.utils.cjs.map +1 -1
- package/dist/features/column-grouping/columnGroupingFeature.utils.js +7 -7
- package/dist/features/column-grouping/columnGroupingFeature.utils.js.map +1 -1
- package/dist/features/column-grouping/createGroupedRowModel.cjs +6 -2
- package/dist/features/column-grouping/createGroupedRowModel.cjs.map +1 -1
- package/dist/features/column-grouping/createGroupedRowModel.js +6 -2
- package/dist/features/column-grouping/createGroupedRowModel.js.map +1 -1
- package/dist/features/column-ordering/columnOrderingFeature.cjs +17 -11
- package/dist/features/column-ordering/columnOrderingFeature.cjs.map +1 -1
- package/dist/features/column-ordering/columnOrderingFeature.js +17 -11
- package/dist/features/column-ordering/columnOrderingFeature.js.map +1 -1
- package/dist/features/column-ordering/columnOrderingFeature.utils.cjs +8 -5
- package/dist/features/column-ordering/columnOrderingFeature.utils.cjs.map +1 -1
- package/dist/features/column-ordering/columnOrderingFeature.utils.js +8 -5
- package/dist/features/column-ordering/columnOrderingFeature.utils.js.map +1 -1
- package/dist/features/column-pinning/columnPinningFeature.cjs +72 -45
- package/dist/features/column-pinning/columnPinningFeature.cjs.map +1 -1
- package/dist/features/column-pinning/columnPinningFeature.js +72 -45
- package/dist/features/column-pinning/columnPinningFeature.js.map +1 -1
- package/dist/features/column-pinning/columnPinningFeature.utils.cjs +27 -16
- package/dist/features/column-pinning/columnPinningFeature.utils.cjs.map +1 -1
- package/dist/features/column-pinning/columnPinningFeature.utils.js +28 -17
- package/dist/features/column-pinning/columnPinningFeature.utils.js.map +1 -1
- package/dist/features/column-resizing/columnResizingFeature.utils.cjs +6 -5
- package/dist/features/column-resizing/columnResizingFeature.utils.cjs.map +1 -1
- package/dist/features/column-resizing/columnResizingFeature.utils.js +6 -5
- package/dist/features/column-resizing/columnResizingFeature.utils.js.map +1 -1
- package/dist/features/column-sizing/columnSizingFeature.cjs +16 -10
- package/dist/features/column-sizing/columnSizingFeature.cjs.map +1 -1
- package/dist/features/column-sizing/columnSizingFeature.js +16 -10
- package/dist/features/column-sizing/columnSizingFeature.js.map +1 -1
- package/dist/features/column-sizing/columnSizingFeature.utils.cjs +6 -6
- package/dist/features/column-sizing/columnSizingFeature.utils.cjs.map +1 -1
- package/dist/features/column-sizing/columnSizingFeature.utils.js +7 -7
- package/dist/features/column-sizing/columnSizingFeature.utils.js.map +1 -1
- package/dist/features/column-visibility/columnVisibilityFeature.cjs +28 -16
- package/dist/features/column-visibility/columnVisibilityFeature.cjs.map +1 -1
- package/dist/features/column-visibility/columnVisibilityFeature.js +28 -16
- package/dist/features/column-visibility/columnVisibilityFeature.js.map +1 -1
- package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs +4 -4
- package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs.map +1 -1
- package/dist/features/column-visibility/columnVisibilityFeature.utils.js +5 -5
- package/dist/features/column-visibility/columnVisibilityFeature.utils.js.map +1 -1
- package/dist/features/global-filtering/globalFilteringFeature.utils.cjs +1 -1
- package/dist/features/global-filtering/globalFilteringFeature.utils.cjs.map +1 -1
- package/dist/features/global-filtering/globalFilteringFeature.utils.js +2 -2
- package/dist/features/global-filtering/globalFilteringFeature.utils.js.map +1 -1
- package/dist/features/row-expanding/createExpandedRowModel.cjs +10 -6
- package/dist/features/row-expanding/createExpandedRowModel.cjs.map +1 -1
- package/dist/features/row-expanding/createExpandedRowModel.js +10 -6
- package/dist/features/row-expanding/createExpandedRowModel.js.map +1 -1
- package/dist/features/row-expanding/rowExpandingFeature.utils.cjs +11 -7
- package/dist/features/row-expanding/rowExpandingFeature.utils.cjs.map +1 -1
- package/dist/features/row-expanding/rowExpandingFeature.utils.js +12 -7
- package/dist/features/row-expanding/rowExpandingFeature.utils.js.map +1 -1
- package/dist/features/row-pagination/createPaginatedRowModel.cjs +10 -6
- package/dist/features/row-pagination/createPaginatedRowModel.cjs.map +1 -1
- package/dist/features/row-pagination/createPaginatedRowModel.js +10 -6
- package/dist/features/row-pagination/createPaginatedRowModel.js.map +1 -1
- package/dist/features/row-pagination/rowPaginationFeature.utils.cjs +19 -13
- package/dist/features/row-pagination/rowPaginationFeature.utils.cjs.map +1 -1
- package/dist/features/row-pagination/rowPaginationFeature.utils.js +20 -14
- package/dist/features/row-pagination/rowPaginationFeature.utils.js.map +1 -1
- package/dist/features/row-pinning/rowPinningFeature.cjs +12 -6
- package/dist/features/row-pinning/rowPinningFeature.cjs.map +1 -1
- package/dist/features/row-pinning/rowPinningFeature.js +12 -6
- package/dist/features/row-pinning/rowPinningFeature.js.map +1 -1
- package/dist/features/row-pinning/rowPinningFeature.utils.cjs +11 -8
- package/dist/features/row-pinning/rowPinningFeature.utils.cjs.map +1 -1
- package/dist/features/row-pinning/rowPinningFeature.utils.js +12 -9
- package/dist/features/row-pinning/rowPinningFeature.utils.js.map +1 -1
- package/dist/features/row-selection/rowSelectionFeature.cjs +12 -3
- package/dist/features/row-selection/rowSelectionFeature.cjs.map +1 -1
- package/dist/features/row-selection/rowSelectionFeature.js +12 -3
- package/dist/features/row-selection/rowSelectionFeature.js.map +1 -1
- package/dist/features/row-selection/rowSelectionFeature.types.d.cts +1 -1
- package/dist/features/row-selection/rowSelectionFeature.types.d.ts +1 -1
- package/dist/features/row-selection/rowSelectionFeature.utils.cjs +17 -9
- package/dist/features/row-selection/rowSelectionFeature.utils.cjs.map +1 -1
- package/dist/features/row-selection/rowSelectionFeature.utils.js +18 -9
- package/dist/features/row-selection/rowSelectionFeature.utils.js.map +1 -1
- package/dist/features/row-sorting/createSortedRowModel.cjs +6 -2
- package/dist/features/row-sorting/createSortedRowModel.cjs.map +1 -1
- package/dist/features/row-sorting/createSortedRowModel.js +6 -2
- package/dist/features/row-sorting/createSortedRowModel.js.map +1 -1
- package/dist/features/row-sorting/rowSortingFeature.utils.cjs +6 -6
- package/dist/features/row-sorting/rowSortingFeature.utils.cjs.map +1 -1
- package/dist/features/row-sorting/rowSortingFeature.utils.js +7 -7
- package/dist/features/row-sorting/rowSortingFeature.utils.js.map +1 -1
- package/dist/features/table-reactivity/tableReactivityFeature.cjs +23 -1
- package/dist/features/table-reactivity/tableReactivityFeature.cjs.map +1 -1
- package/dist/features/table-reactivity/tableReactivityFeature.js +23 -1
- package/dist/features/table-reactivity/tableReactivityFeature.js.map +1 -1
- package/dist/flex-render.cjs +19 -0
- package/dist/flex-render.cjs.map +1 -0
- package/dist/flex-render.d.cts +24 -0
- package/dist/flex-render.d.ts +24 -0
- package/dist/flex-render.js +16 -0
- package/dist/flex-render.js.map +1 -0
- package/dist/index.cjs +2 -263
- package/dist/index.d.cts +4 -25
- package/dist/index.d.ts +4 -25
- package/dist/index.js +3 -24
- package/dist/static-functions.cjs +261 -0
- package/dist/static-functions.d.cts +21 -0
- package/dist/static-functions.d.ts +21 -0
- package/dist/static-functions.js +22 -0
- package/dist/types/Table.d.cts +5 -3
- package/dist/types/Table.d.ts +5 -3
- package/dist/utils.cjs +14 -6
- package/dist/utils.cjs.map +1 -1
- package/dist/utils.d.cts +2 -1
- package/dist/utils.d.ts +2 -1
- package/dist/utils.js +14 -7
- package/dist/utils.js.map +1 -1
- package/package.json +9 -1
- package/src/core/columns/coreColumnsFeature.ts +4 -4
- package/src/core/headers/coreHeadersFeature.ts +4 -4
- package/src/core/headers/coreHeadersFeature.utils.ts +1 -1
- package/src/core/table/constructTable.ts +33 -16
- package/src/core/table/coreTablesFeature.types.ts +69 -9
- package/src/core/table/coreTablesFeature.utils.ts +8 -2
- package/src/features/column-faceting/columnFacetingFeature.ts +4 -4
- package/src/features/column-faceting/createFacetedRowModel.ts +2 -2
- package/src/features/column-filtering/columnFilteringFeature.utils.ts +9 -8
- package/src/features/column-filtering/createFilteredRowModel.ts +4 -3
- package/src/features/column-grouping/columnGroupingFeature.utils.ts +5 -5
- package/src/features/column-grouping/createGroupedRowModel.ts +2 -2
- package/src/features/column-ordering/columnOrderingFeature.ts +5 -5
- package/src/features/column-ordering/columnOrderingFeature.utils.ts +6 -5
- package/src/features/column-pinning/columnPinningFeature.ts +22 -21
- package/src/features/column-pinning/columnPinningFeature.utils.ts +18 -16
- package/src/features/column-resizing/columnResizingFeature.utils.ts +9 -4
- package/src/features/column-sizing/columnSizingFeature.ts +2 -2
- package/src/features/column-sizing/columnSizingFeature.utils.ts +6 -6
- package/src/features/column-visibility/columnVisibilityFeature.ts +6 -6
- package/src/features/column-visibility/columnVisibilityFeature.utils.ts +4 -4
- package/src/features/global-filtering/globalFilteringFeature.utils.ts +2 -2
- package/src/features/row-expanding/createExpandedRowModel.ts +2 -2
- package/src/features/row-expanding/rowExpandingFeature.utils.ts +8 -7
- package/src/features/row-pagination/createPaginatedRowModel.ts +3 -3
- package/src/features/row-pagination/rowPaginationFeature.utils.ts +23 -19
- package/src/features/row-pinning/rowPinningFeature.ts +4 -4
- package/src/features/row-pinning/rowPinningFeature.utils.ts +10 -8
- package/src/features/row-selection/rowSelectionFeature.ts +3 -3
- package/src/features/row-selection/rowSelectionFeature.types.ts +1 -1
- package/src/features/row-selection/rowSelectionFeature.utils.ts +13 -10
- package/src/features/row-sorting/createSortedRowModel.ts +5 -2
- package/src/features/row-sorting/rowSortingFeature.utils.ts +8 -7
- package/src/features/table-reactivity/tableReactivityFeature.ts +46 -1
- package/src/flex-render.ts +60 -0
- package/src/index.ts +0 -21
- package/src/static-functions.ts +31 -0
- package/src/types/Table.ts +10 -3
- package/src/utils.ts +27 -8
- package/dist/helpers/tableHelper.cjs +0 -21
- package/dist/helpers/tableHelper.cjs.map +0 -1
- package/dist/helpers/tableHelper.d.cts +0 -30
- package/dist/helpers/tableHelper.d.ts +0 -30
- package/dist/helpers/tableHelper.js +0 -21
- package/dist/helpers/tableHelper.js.map +0 -1
- package/src/helpers/tableHelper.ts +0 -61
|
@@ -6,10 +6,13 @@ import { column_getCanPin, column_getIsPinned, column_getPinnedIndex, column_pin
|
|
|
6
6
|
function constructColumnPinningFeature() {
|
|
7
7
|
return {
|
|
8
8
|
getInitialState: (initialState) => {
|
|
9
|
-
return {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
9
|
+
return {
|
|
10
|
+
columnPinning: {
|
|
11
|
+
...getDefaultColumnPinningState(),
|
|
12
|
+
...initialState.columnPinning
|
|
13
|
+
},
|
|
14
|
+
...initialState
|
|
15
|
+
};
|
|
13
16
|
},
|
|
14
17
|
getDefaultTableOptions: (table) => {
|
|
15
18
|
return { onColumnPinningChange: makeStateUpdater("columnPinning", table) };
|
|
@@ -26,31 +29,34 @@ function constructColumnPinningFeature() {
|
|
|
26
29
|
assignPrototypeAPIs("columnPinningFeature", prototype, table, {
|
|
27
30
|
row_getCenterVisibleCells: {
|
|
28
31
|
fn: (row) => row_getCenterVisibleCells(row),
|
|
29
|
-
memoDeps: (row) =>
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
32
|
+
memoDeps: (row) => {
|
|
33
|
+
var _row$table$atoms$colu, _row$table$atoms$colu2;
|
|
34
|
+
return [
|
|
35
|
+
row.getAllCells(),
|
|
36
|
+
(_row$table$atoms$colu = row.table.atoms.columnPinning) === null || _row$table$atoms$colu === void 0 ? void 0 : _row$table$atoms$colu.get(),
|
|
37
|
+
(_row$table$atoms$colu2 = row.table.atoms.columnVisibility) === null || _row$table$atoms$colu2 === void 0 ? void 0 : _row$table$atoms$colu2.get()
|
|
38
|
+
];
|
|
39
|
+
}
|
|
34
40
|
},
|
|
35
41
|
row_getLeftVisibleCells: {
|
|
36
42
|
fn: (row) => row_getLeftVisibleCells(row),
|
|
37
43
|
memoDeps: (row) => {
|
|
38
|
-
var _row$table$
|
|
44
|
+
var _row$table$atoms$colu3, _row$table$atoms$colu4;
|
|
39
45
|
return [
|
|
40
46
|
row.getAllCells(),
|
|
41
|
-
(_row$table$
|
|
42
|
-
row.table.
|
|
47
|
+
(_row$table$atoms$colu3 = row.table.atoms.columnPinning) === null || _row$table$atoms$colu3 === void 0 || (_row$table$atoms$colu3 = _row$table$atoms$colu3.get()) === null || _row$table$atoms$colu3 === void 0 ? void 0 : _row$table$atoms$colu3.left,
|
|
48
|
+
(_row$table$atoms$colu4 = row.table.atoms.columnVisibility) === null || _row$table$atoms$colu4 === void 0 ? void 0 : _row$table$atoms$colu4.get()
|
|
43
49
|
];
|
|
44
50
|
}
|
|
45
51
|
},
|
|
46
52
|
row_getRightVisibleCells: {
|
|
47
53
|
fn: (row) => row_getRightVisibleCells(row),
|
|
48
54
|
memoDeps: (row) => {
|
|
49
|
-
var _row$table$
|
|
55
|
+
var _row$table$atoms$colu5, _row$table$atoms$colu6;
|
|
50
56
|
return [
|
|
51
57
|
row.getAllCells(),
|
|
52
|
-
(_row$table$
|
|
53
|
-
row.table.
|
|
58
|
+
(_row$table$atoms$colu5 = row.table.atoms.columnPinning) === null || _row$table$atoms$colu5 === void 0 || (_row$table$atoms$colu5 = _row$table$atoms$colu5.get()) === null || _row$table$atoms$colu5 === void 0 ? void 0 : _row$table$atoms$colu5.right,
|
|
59
|
+
(_row$table$atoms$colu6 = row.table.atoms.columnVisibility) === null || _row$table$atoms$colu6 === void 0 ? void 0 : _row$table$atoms$colu6.get()
|
|
54
60
|
];
|
|
55
61
|
}
|
|
56
62
|
}
|
|
@@ -64,33 +70,36 @@ function constructColumnPinningFeature() {
|
|
|
64
70
|
table_getLeftHeaderGroups: {
|
|
65
71
|
fn: () => table_getLeftHeaderGroups(table),
|
|
66
72
|
memoDeps: () => {
|
|
67
|
-
var _table$
|
|
73
|
+
var _table$atoms$columnPi, _table$atoms$columnOr;
|
|
68
74
|
return [
|
|
69
75
|
table.getAllColumns(),
|
|
70
76
|
callMemoOrStaticFn(table, "getVisibleLeafColumns", table_getVisibleLeafColumns),
|
|
71
|
-
(_table$
|
|
72
|
-
table.
|
|
77
|
+
(_table$atoms$columnPi = table.atoms.columnPinning) === null || _table$atoms$columnPi === void 0 || (_table$atoms$columnPi = _table$atoms$columnPi.get()) === null || _table$atoms$columnPi === void 0 ? void 0 : _table$atoms$columnPi.left,
|
|
78
|
+
(_table$atoms$columnOr = table.atoms.columnOrder) === null || _table$atoms$columnOr === void 0 ? void 0 : _table$atoms$columnOr.get()
|
|
73
79
|
];
|
|
74
80
|
}
|
|
75
81
|
},
|
|
76
82
|
table_getCenterHeaderGroups: {
|
|
77
83
|
fn: () => table_getCenterHeaderGroups(table),
|
|
78
|
-
memoDeps: () =>
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
+
memoDeps: () => {
|
|
85
|
+
var _table$atoms$columnPi2, _table$atoms$columnOr2;
|
|
86
|
+
return [
|
|
87
|
+
table.getAllColumns(),
|
|
88
|
+
callMemoOrStaticFn(table, "getVisibleLeafColumns", table_getVisibleLeafColumns),
|
|
89
|
+
(_table$atoms$columnPi2 = table.atoms.columnPinning) === null || _table$atoms$columnPi2 === void 0 ? void 0 : _table$atoms$columnPi2.get(),
|
|
90
|
+
(_table$atoms$columnOr2 = table.atoms.columnOrder) === null || _table$atoms$columnOr2 === void 0 ? void 0 : _table$atoms$columnOr2.get()
|
|
91
|
+
];
|
|
92
|
+
}
|
|
84
93
|
},
|
|
85
94
|
table_getRightHeaderGroups: {
|
|
86
95
|
fn: () => table_getRightHeaderGroups(table),
|
|
87
96
|
memoDeps: () => {
|
|
88
|
-
var _table$
|
|
97
|
+
var _table$atoms$columnPi3, _table$atoms$columnOr3;
|
|
89
98
|
return [
|
|
90
99
|
table.getAllColumns(),
|
|
91
100
|
callMemoOrStaticFn(table, "getVisibleLeafColumns", table_getVisibleLeafColumns),
|
|
92
|
-
(_table$
|
|
93
|
-
table.
|
|
101
|
+
(_table$atoms$columnPi3 = table.atoms.columnPinning) === null || _table$atoms$columnPi3 === void 0 || (_table$atoms$columnPi3 = _table$atoms$columnPi3.get()) === null || _table$atoms$columnPi3 === void 0 ? void 0 : _table$atoms$columnPi3.right,
|
|
102
|
+
(_table$atoms$columnOr3 = table.atoms.columnOrder) === null || _table$atoms$columnOr3 === void 0 ? void 0 : _table$atoms$columnOr3.get()
|
|
94
103
|
];
|
|
95
104
|
}
|
|
96
105
|
},
|
|
@@ -132,39 +141,57 @@ function constructColumnPinningFeature() {
|
|
|
132
141
|
},
|
|
133
142
|
table_getLeftLeafColumns: {
|
|
134
143
|
fn: () => table_getLeftLeafColumns(table),
|
|
135
|
-
memoDeps: () =>
|
|
144
|
+
memoDeps: () => {
|
|
145
|
+
var _table$atoms$columnPi4;
|
|
146
|
+
return [table.options.columns, (_table$atoms$columnPi4 = table.atoms.columnPinning) === null || _table$atoms$columnPi4 === void 0 ? void 0 : _table$atoms$columnPi4.get()];
|
|
147
|
+
}
|
|
136
148
|
},
|
|
137
149
|
table_getRightLeafColumns: {
|
|
138
150
|
fn: () => table_getRightLeafColumns(table),
|
|
139
|
-
memoDeps: () =>
|
|
151
|
+
memoDeps: () => {
|
|
152
|
+
var _table$atoms$columnPi5;
|
|
153
|
+
return [table.options.columns, (_table$atoms$columnPi5 = table.atoms.columnPinning) === null || _table$atoms$columnPi5 === void 0 ? void 0 : _table$atoms$columnPi5.get()];
|
|
154
|
+
}
|
|
140
155
|
},
|
|
141
156
|
table_getCenterLeafColumns: {
|
|
142
157
|
fn: () => table_getCenterLeafColumns(table),
|
|
143
|
-
memoDeps: () =>
|
|
158
|
+
memoDeps: () => {
|
|
159
|
+
var _table$atoms$columnPi6;
|
|
160
|
+
return [table.options.columns, (_table$atoms$columnPi6 = table.atoms.columnPinning) === null || _table$atoms$columnPi6 === void 0 ? void 0 : _table$atoms$columnPi6.get()];
|
|
161
|
+
}
|
|
144
162
|
},
|
|
145
163
|
table_getLeftVisibleLeafColumns: {
|
|
146
164
|
fn: () => table_getLeftVisibleLeafColumns(table),
|
|
147
|
-
memoDeps: () =>
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
165
|
+
memoDeps: () => {
|
|
166
|
+
var _table$atoms$columnPi7, _table$atoms$columnVi;
|
|
167
|
+
return [
|
|
168
|
+
table.options.columns,
|
|
169
|
+
(_table$atoms$columnPi7 = table.atoms.columnPinning) === null || _table$atoms$columnPi7 === void 0 ? void 0 : _table$atoms$columnPi7.get(),
|
|
170
|
+
(_table$atoms$columnVi = table.atoms.columnVisibility) === null || _table$atoms$columnVi === void 0 ? void 0 : _table$atoms$columnVi.get()
|
|
171
|
+
];
|
|
172
|
+
}
|
|
152
173
|
},
|
|
153
174
|
table_getCenterVisibleLeafColumns: {
|
|
154
175
|
fn: () => table_getCenterVisibleLeafColumns(table),
|
|
155
|
-
memoDeps: () =>
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
176
|
+
memoDeps: () => {
|
|
177
|
+
var _table$atoms$columnPi8, _table$atoms$columnVi2;
|
|
178
|
+
return [
|
|
179
|
+
table.options.columns,
|
|
180
|
+
(_table$atoms$columnPi8 = table.atoms.columnPinning) === null || _table$atoms$columnPi8 === void 0 ? void 0 : _table$atoms$columnPi8.get(),
|
|
181
|
+
(_table$atoms$columnVi2 = table.atoms.columnVisibility) === null || _table$atoms$columnVi2 === void 0 ? void 0 : _table$atoms$columnVi2.get()
|
|
182
|
+
];
|
|
183
|
+
}
|
|
160
184
|
},
|
|
161
185
|
table_getRightVisibleLeafColumns: {
|
|
162
186
|
fn: () => table_getRightVisibleLeafColumns(table),
|
|
163
|
-
memoDeps: () =>
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
187
|
+
memoDeps: () => {
|
|
188
|
+
var _table$atoms$columnPi9, _table$atoms$columnVi3;
|
|
189
|
+
return [
|
|
190
|
+
table.options.columns,
|
|
191
|
+
(_table$atoms$columnPi9 = table.atoms.columnPinning) === null || _table$atoms$columnPi9 === void 0 ? void 0 : _table$atoms$columnPi9.get(),
|
|
192
|
+
(_table$atoms$columnVi3 = table.atoms.columnVisibility) === null || _table$atoms$columnVi3 === void 0 ? void 0 : _table$atoms$columnVi3.get()
|
|
193
|
+
];
|
|
194
|
+
}
|
|
168
195
|
}
|
|
169
196
|
});
|
|
170
197
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"columnPinningFeature.js","names":[],"sources":["../../../src/features/column-pinning/columnPinningFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n callMemoOrStaticFn,\n makeStateUpdater,\n} from '../../utils'\nimport { table_getVisibleLeafColumns } from '../column-visibility/columnVisibilityFeature.utils'\nimport {\n column_getCanPin,\n column_getIsPinned,\n column_getPinnedIndex,\n column_pin,\n getDefaultColumnPinningState,\n row_getCenterVisibleCells,\n row_getLeftVisibleCells,\n row_getRightVisibleCells,\n table_getCenterFlatHeaders,\n table_getCenterFooterGroups,\n table_getCenterHeaderGroups,\n table_getCenterLeafColumns,\n table_getCenterLeafHeaders,\n table_getCenterVisibleLeafColumns,\n table_getIsSomeColumnsPinned,\n table_getLeftFlatHeaders,\n table_getLeftFooterGroups,\n table_getLeftHeaderGroups,\n table_getLeftLeafColumns,\n table_getLeftLeafHeaders,\n table_getLeftVisibleLeafColumns,\n table_getRightFlatHeaders,\n table_getRightFooterGroups,\n table_getRightHeaderGroups,\n table_getRightLeafColumns,\n table_getRightLeafHeaders,\n table_getRightVisibleLeafColumns,\n table_resetColumnPinning,\n table_setColumnPinning,\n} from './columnPinningFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\n// import type {\n// ColumnDef_ColumnPinning,\n// Column_ColumnPinning,\n// Row_ColumnPinning,\n// TableOptions_ColumnPinning,\n// TableState_ColumnPinning,\n// Table_ColumnPinning,\n// } from './columnPinningFeature.types'\n\ninterface ColumnPinningFeatureConstructors<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> {\n // Column: Column_ColumnPinning\n // ColumnDef: ColumnDef_ColumnPinning\n // Row: Row_ColumnPinning<TFeatures, TData>\n // Table: Table_ColumnPinning<TFeatures, TData>\n // TableOptions: TableOptions_ColumnPinning\n // TableState: TableState_ColumnPinning\n}\n\nexport function constructColumnPinningFeature<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): TableFeature<ColumnPinningFeatureConstructors<TFeatures, TData>> {\n return {\n getInitialState: (initialState) => {\n return {\n columnPinning: {\n ...getDefaultColumnPinningState(),\n ...initialState.columnPinning,\n },\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnPinningChange: makeStateUpdater('columnPinning', table),\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnPinningFeature', prototype, table, {\n column_pin: {\n fn: (column, position) => column_pin(column, position),\n },\n column_getCanPin: {\n fn: (column) => column_getCanPin(column),\n },\n column_getPinnedIndex: {\n fn: (column) => column_getPinnedIndex(column),\n },\n column_getIsPinned: {\n fn: (column) => column_getIsPinned(column),\n },\n })\n },\n\n assignRowPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnPinningFeature', prototype, table, {\n row_getCenterVisibleCells: {\n fn: (row) => row_getCenterVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.store.state.columnPinning,\n row.table.store.state.columnVisibility,\n ],\n },\n row_getLeftVisibleCells: {\n fn: (row) => row_getLeftVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.store.state.columnPinning?.left,\n row.table.store.state.columnVisibility,\n ],\n },\n row_getRightVisibleCells: {\n fn: (row) => row_getRightVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.store.state.columnPinning?.right,\n row.table.store.state.columnVisibility,\n ],\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnPinningFeature', table, {\n table_setColumnPinning: {\n fn: (updater) => table_setColumnPinning(table, updater),\n },\n table_resetColumnPinning: {\n fn: (defaultState) => table_resetColumnPinning(table, defaultState),\n },\n table_getIsSomeColumnsPinned: {\n fn: (position) => table_getIsSomeColumnsPinned(table, position),\n },\n // header groups\n table_getLeftHeaderGroups: {\n fn: () => table_getLeftHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.store.state.columnPinning?.left,\n table.store.state.columnOrder,\n ],\n },\n table_getCenterHeaderGroups: {\n fn: () => table_getCenterHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.store.state.columnPinning,\n table.store.state.columnOrder,\n ],\n },\n table_getRightHeaderGroups: {\n fn: () => table_getRightHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.store.state.columnPinning?.right,\n table.store.state.columnOrder,\n ],\n },\n // footer groups\n table_getLeftFooterGroups: {\n fn: () => table_getLeftFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getCenterFooterGroups: {\n fn: () => table_getCenterFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n table_getRightFooterGroups: {\n fn: () => table_getRightFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n // flat headers\n table_getLeftFlatHeaders: {\n fn: () => table_getLeftFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getRightFlatHeaders: {\n fn: () => table_getRightFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n table_getCenterFlatHeaders: {\n fn: () => table_getCenterFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n // leaf headers\n table_getLeftLeafHeaders: {\n fn: () => table_getLeftLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getRightLeafHeaders: {\n fn: () => table_getRightLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n table_getCenterLeafHeaders: {\n fn: () => table_getCenterLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n // leaf columns\n table_getLeftLeafColumns: {\n fn: () => table_getLeftLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n ],\n },\n table_getRightLeafColumns: {\n fn: () => table_getRightLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n ],\n },\n table_getCenterLeafColumns: {\n fn: () => table_getCenterLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n ],\n },\n // visible leaf columns\n table_getLeftVisibleLeafColumns: {\n fn: () => table_getLeftVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n table.store.state.columnVisibility,\n ],\n },\n table_getCenterVisibleLeafColumns: {\n fn: () => table_getCenterVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n table.store.state.columnVisibility,\n ],\n },\n table_getRightVisibleLeafColumns: {\n fn: () => table_getRightVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n table.store.state.columnVisibility,\n ],\n },\n })\n },\n }\n}\n\n/**\n * The Column Pinning feature adds column pinning state and APIs to the table, row, and column objects.\n */\nexport const columnPinningFeature = constructColumnPinningFeature()\n"],"mappings":";;;;;AA6DA,SAAgB,gCAGsD;AACpE,QAAO;EACL,kBAAkB,iBAAiB;AACjC,UAAO,EACL,eAAe;IACb,GAAG,8BAA8B;IACjC,GAAG,aAAa;IACjB,EACF;;EAGH,yBAAyB,UAAU;AACjC,UAAO,EACL,uBAAuB,iBAAiB,iBAAiB,MAAM,EAChE;;EAGH,wBAAwB,WAAW,UAAU;AAC3C,uBAAoB,wBAAwB,WAAW,OAAO;IAC5D,YAAY,EACV,KAAK,QAAQ,aAAa,WAAW,QAAQ,SAAS,EACvD;IACD,kBAAkB,EAChB,KAAK,WAAW,iBAAiB,OAAO,EACzC;IACD,uBAAuB,EACrB,KAAK,WAAW,sBAAsB,OAAO,EAC9C;IACD,oBAAoB,EAClB,KAAK,WAAW,mBAAmB,OAAO,EAC3C;IACF,CAAC;;EAGJ,qBAAqB,WAAW,UAAU;AACxC,uBAAoB,wBAAwB,WAAW,OAAO;IAC5D,2BAA2B;KACzB,KAAK,QAAQ,0BAA0B,IAAI;KAC3C,WAAW,QAAQ;MACjB,IAAI,aAAa;MACjB,IAAI,MAAM,MAAM,MAAM;MACtB,IAAI,MAAM,MAAM,MAAM;MACvB;KACF;IACD,yBAAyB;KACvB,KAAK,QAAQ,wBAAwB,IAAI;KACzC,WAAW,QAAQ;;;OACjB,IAAI,aAAa;gCACjB,IAAI,MAAM,MAAM,MAAM,6FAAe;OACrC,IAAI,MAAM,MAAM,MAAM;OACvB;;KACF;IACD,0BAA0B;KACxB,KAAK,QAAQ,yBAAyB,IAAI;KAC1C,WAAW,QAAQ;;;OACjB,IAAI,aAAa;iCACjB,IAAI,MAAM,MAAM,MAAM,+FAAe;OACrC,IAAI,MAAM,MAAM,MAAM;OACvB;;KACF;IACF,CAAC;;EAGJ,qBAAqB,UAAU;AAC7B,mBAAgB,wBAAwB,OAAO;IAC7C,wBAAwB,EACtB,KAAK,YAAY,uBAAuB,OAAO,QAAQ,EACxD;IACD,0BAA0B,EACxB,KAAK,iBAAiB,yBAAyB,OAAO,aAAa,EACpE;IACD,8BAA8B,EAC5B,KAAK,aAAa,6BAA6B,OAAO,SAAS,EAChE;IAED,2BAA2B;KACzB,UAAU,0BAA0B,MAAM;KAC1C,gBAAgB;;;OACd,MAAM,eAAe;OACrB,mBACE,OACA,yBACA,4BACD;gCACD,MAAM,MAAM,MAAM,6FAAe;OACjC,MAAM,MAAM,MAAM;OACnB;;KACF;IACD,6BAA6B;KAC3B,UAAU,4BAA4B,MAAM;KAC5C,gBAAgB;MACd,MAAM,eAAe;MACrB,mBACE,OACA,yBACA,4BACD;MACD,MAAM,MAAM,MAAM;MAClB,MAAM,MAAM,MAAM;MACnB;KACF;IACD,4BAA4B;KAC1B,UAAU,2BAA2B,MAAM;KAC3C,gBAAgB;;;OACd,MAAM,eAAe;OACrB,mBACE,OACA,yBACA,4BACD;iCACD,MAAM,MAAM,MAAM,+FAAe;OACjC,MAAM,MAAM,MAAM;OACnB;;KACF;IAED,2BAA2B;KACzB,UAAU,0BAA0B,MAAM;KAC1C,gBAAgB,CACd,mBACE,OACA,uBACA,0BACD,CACF;KACF;IACD,6BAA6B;KAC3B,UAAU,4BAA4B,MAAM;KAC5C,gBAAgB,CACd,mBACE,OACA,yBACA,4BACD,CACF;KACF;IACD,4BAA4B;KAC1B,UAAU,2BAA2B,MAAM;KAC3C,gBAAgB,CACd,mBACE,OACA,wBACA,2BACD,CACF;KACF;IAED,0BAA0B;KACxB,UAAU,yBAAyB,MAAM;KACzC,gBAAgB,CACd,mBACE,OACA,uBACA,0BACD,CACF;KACF;IACD,2BAA2B;KACzB,UAAU,0BAA0B,MAAM;KAC1C,gBAAgB,CACd,mBACE,OACA,wBACA,2BACD,CACF;KACF;IACD,4BAA4B;KAC1B,UAAU,2BAA2B,MAAM;KAC3C,gBAAgB,CACd,mBACE,OACA,yBACA,4BACD,CACF;KACF;IAED,0BAA0B;KACxB,UAAU,yBAAyB,MAAM;KACzC,gBAAgB,CACd,mBACE,OACA,uBACA,0BACD,CACF;KACF;IACD,2BAA2B;KACzB,UAAU,0BAA0B,MAAM;KAC1C,gBAAgB,CACd,mBACE,OACA,wBACA,2BACD,CACF;KACF;IACD,4BAA4B;KAC1B,UAAU,2BAA2B,MAAM;KAC3C,gBAAgB,CACd,mBACE,OACA,yBACA,4BACD,CACF;KACF;IAED,0BAA0B;KACxB,UAAU,yBAAyB,MAAM;KACzC,gBAAgB,CACd,MAAM,QAAQ,SACd,MAAM,MAAM,MAAM,cACnB;KACF;IACD,2BAA2B;KACzB,UAAU,0BAA0B,MAAM;KAC1C,gBAAgB,CACd,MAAM,QAAQ,SACd,MAAM,MAAM,MAAM,cACnB;KACF;IACD,4BAA4B;KAC1B,UAAU,2BAA2B,MAAM;KAC3C,gBAAgB,CACd,MAAM,QAAQ,SACd,MAAM,MAAM,MAAM,cACnB;KACF;IAED,iCAAiC;KAC/B,UAAU,gCAAgC,MAAM;KAChD,gBAAgB;MACd,MAAM,QAAQ;MACd,MAAM,MAAM,MAAM;MAClB,MAAM,MAAM,MAAM;MACnB;KACF;IACD,mCAAmC;KACjC,UAAU,kCAAkC,MAAM;KAClD,gBAAgB;MACd,MAAM,QAAQ;MACd,MAAM,MAAM,MAAM;MAClB,MAAM,MAAM,MAAM;MACnB;KACF;IACD,kCAAkC;KAChC,UAAU,iCAAiC,MAAM;KACjD,gBAAgB;MACd,MAAM,QAAQ;MACd,MAAM,MAAM,MAAM;MAClB,MAAM,MAAM,MAAM;MACnB;KACF;IACF,CAAC;;EAEL;;;;;AAMH,MAAa,uBAAuB,+BAA+B"}
|
|
1
|
+
{"version":3,"file":"columnPinningFeature.js","names":[],"sources":["../../../src/features/column-pinning/columnPinningFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n callMemoOrStaticFn,\n makeStateUpdater,\n} from '../../utils'\nimport { table_getVisibleLeafColumns } from '../column-visibility/columnVisibilityFeature.utils'\nimport {\n column_getCanPin,\n column_getIsPinned,\n column_getPinnedIndex,\n column_pin,\n getDefaultColumnPinningState,\n row_getCenterVisibleCells,\n row_getLeftVisibleCells,\n row_getRightVisibleCells,\n table_getCenterFlatHeaders,\n table_getCenterFooterGroups,\n table_getCenterHeaderGroups,\n table_getCenterLeafColumns,\n table_getCenterLeafHeaders,\n table_getCenterVisibleLeafColumns,\n table_getIsSomeColumnsPinned,\n table_getLeftFlatHeaders,\n table_getLeftFooterGroups,\n table_getLeftHeaderGroups,\n table_getLeftLeafColumns,\n table_getLeftLeafHeaders,\n table_getLeftVisibleLeafColumns,\n table_getRightFlatHeaders,\n table_getRightFooterGroups,\n table_getRightHeaderGroups,\n table_getRightLeafColumns,\n table_getRightLeafHeaders,\n table_getRightVisibleLeafColumns,\n table_resetColumnPinning,\n table_setColumnPinning,\n} from './columnPinningFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\n// import type {\n// ColumnDef_ColumnPinning,\n// Column_ColumnPinning,\n// Row_ColumnPinning,\n// TableOptions_ColumnPinning,\n// TableState_ColumnPinning,\n// Table_ColumnPinning,\n// } from './columnPinningFeature.types'\n\ninterface ColumnPinningFeatureConstructors<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> {\n // Column: Column_ColumnPinning\n // ColumnDef: ColumnDef_ColumnPinning\n // Row: Row_ColumnPinning<TFeatures, TData>\n // Table: Table_ColumnPinning<TFeatures, TData>\n // TableOptions: TableOptions_ColumnPinning\n // TableState: TableState_ColumnPinning\n}\n\nexport function constructColumnPinningFeature<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): TableFeature<ColumnPinningFeatureConstructors<TFeatures, TData>> {\n return {\n getInitialState: (initialState) => {\n return {\n columnPinning: {\n ...getDefaultColumnPinningState(),\n ...initialState.columnPinning,\n },\n ...initialState,\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnPinningChange: makeStateUpdater('columnPinning', table),\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnPinningFeature', prototype, table, {\n column_pin: {\n fn: (column, position) => column_pin(column, position),\n },\n column_getCanPin: {\n fn: (column) => column_getCanPin(column),\n },\n column_getPinnedIndex: {\n fn: (column) => column_getPinnedIndex(column),\n },\n column_getIsPinned: {\n fn: (column) => column_getIsPinned(column),\n },\n })\n },\n\n assignRowPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnPinningFeature', prototype, table, {\n row_getCenterVisibleCells: {\n fn: (row) => row_getCenterVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.atoms.columnPinning?.get(),\n row.table.atoms.columnVisibility?.get(),\n ],\n },\n row_getLeftVisibleCells: {\n fn: (row) => row_getLeftVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.atoms.columnPinning?.get()?.left,\n row.table.atoms.columnVisibility?.get(),\n ],\n },\n row_getRightVisibleCells: {\n fn: (row) => row_getRightVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.atoms.columnPinning?.get()?.right,\n row.table.atoms.columnVisibility?.get(),\n ],\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnPinningFeature', table, {\n table_setColumnPinning: {\n fn: (updater) => table_setColumnPinning(table, updater),\n },\n table_resetColumnPinning: {\n fn: (defaultState) => table_resetColumnPinning(table, defaultState),\n },\n table_getIsSomeColumnsPinned: {\n fn: (position) => table_getIsSomeColumnsPinned(table, position),\n },\n // header groups\n table_getLeftHeaderGroups: {\n fn: () => table_getLeftHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.atoms.columnPinning?.get()?.left,\n table.atoms.columnOrder?.get(),\n ],\n },\n table_getCenterHeaderGroups: {\n fn: () => table_getCenterHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.atoms.columnPinning?.get(),\n table.atoms.columnOrder?.get(),\n ],\n },\n table_getRightHeaderGroups: {\n fn: () => table_getRightHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.atoms.columnPinning?.get()?.right,\n table.atoms.columnOrder?.get(),\n ],\n },\n // footer groups\n table_getLeftFooterGroups: {\n fn: () => table_getLeftFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getCenterFooterGroups: {\n fn: () => table_getCenterFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n table_getRightFooterGroups: {\n fn: () => table_getRightFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n // flat headers\n table_getLeftFlatHeaders: {\n fn: () => table_getLeftFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getRightFlatHeaders: {\n fn: () => table_getRightFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n table_getCenterFlatHeaders: {\n fn: () => table_getCenterFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n // leaf headers\n table_getLeftLeafHeaders: {\n fn: () => table_getLeftLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getRightLeafHeaders: {\n fn: () => table_getRightLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n table_getCenterLeafHeaders: {\n fn: () => table_getCenterLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n // leaf columns\n table_getLeftLeafColumns: {\n fn: () => table_getLeftLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n ],\n },\n table_getRightLeafColumns: {\n fn: () => table_getRightLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n ],\n },\n table_getCenterLeafColumns: {\n fn: () => table_getCenterLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n ],\n },\n // visible leaf columns\n table_getLeftVisibleLeafColumns: {\n fn: () => table_getLeftVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnVisibility?.get(),\n ],\n },\n table_getCenterVisibleLeafColumns: {\n fn: () => table_getCenterVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnVisibility?.get(),\n ],\n },\n table_getRightVisibleLeafColumns: {\n fn: () => table_getRightVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.atoms.columnPinning?.get(),\n table.atoms.columnVisibility?.get(),\n ],\n },\n })\n },\n }\n}\n\n/**\n * The Column Pinning feature adds column pinning state and APIs to the table, row, and column objects.\n */\nexport const columnPinningFeature = constructColumnPinningFeature()\n"],"mappings":"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"}
|
|
@@ -4,10 +4,10 @@ const require_buildHeaderGroups = require('../../core/headers/buildHeaderGroups.
|
|
|
4
4
|
|
|
5
5
|
//#region src/features/column-pinning/columnPinningFeature.utils.ts
|
|
6
6
|
function getDefaultColumnPinningState() {
|
|
7
|
-
return
|
|
7
|
+
return {
|
|
8
8
|
left: [],
|
|
9
9
|
right: []
|
|
10
|
-
}
|
|
10
|
+
};
|
|
11
11
|
}
|
|
12
12
|
function column_pin(column, position) {
|
|
13
13
|
const columnIds = column.getLeafColumns().map((d) => d.id).filter(Boolean);
|
|
@@ -30,26 +30,29 @@ function column_getCanPin(column) {
|
|
|
30
30
|
return column.getLeafColumns().some((leafColumn) => (leafColumn.columnDef.enablePinning ?? true) && (column.table.options.enableColumnPinning ?? true));
|
|
31
31
|
}
|
|
32
32
|
function column_getIsPinned(column) {
|
|
33
|
+
var _column$table$atoms$c;
|
|
33
34
|
const leafColumnIds = column.getLeafColumns().map((d) => d.id);
|
|
34
|
-
const { left, right } = column.table.
|
|
35
|
+
const { left, right } = ((_column$table$atoms$c = column.table.atoms.columnPinning) === null || _column$table$atoms$c === void 0 ? void 0 : _column$table$atoms$c.get()) ?? getDefaultColumnPinningState();
|
|
35
36
|
const isLeft = leafColumnIds.some((d) => left.includes(d));
|
|
36
37
|
const isRight = leafColumnIds.some((d) => right.includes(d));
|
|
37
38
|
return isLeft ? "left" : isRight ? "right" : false;
|
|
38
39
|
}
|
|
39
40
|
function column_getPinnedIndex(column) {
|
|
40
|
-
var _column$table$
|
|
41
|
+
var _column$table$atoms$c2;
|
|
41
42
|
const position = column_getIsPinned(column);
|
|
42
|
-
return position ? ((_column$table$
|
|
43
|
+
return position ? ((_column$table$atoms$c2 = column.table.atoms.columnPinning) === null || _column$table$atoms$c2 === void 0 || (_column$table$atoms$c2 = _column$table$atoms$c2.get()) === null || _column$table$atoms$c2 === void 0 ? void 0 : _column$table$atoms$c2[position].indexOf(column.id)) ?? -1 : 0;
|
|
43
44
|
}
|
|
44
45
|
function row_getCenterVisibleCells(row) {
|
|
46
|
+
var _row$table$atoms$colu;
|
|
45
47
|
const allCells = require_utils.callMemoOrStaticFn(row, "getAllVisibleCells", require_columnVisibilityFeature_utils.row_getAllVisibleCells);
|
|
46
|
-
const { left, right } = row.table.
|
|
48
|
+
const { left, right } = ((_row$table$atoms$colu = row.table.atoms.columnPinning) === null || _row$table$atoms$colu === void 0 ? void 0 : _row$table$atoms$colu.get()) ?? getDefaultColumnPinningState();
|
|
47
49
|
const leftAndRight = [...left, ...right];
|
|
48
50
|
return allCells.filter((d) => !leftAndRight.includes(d.column.id));
|
|
49
51
|
}
|
|
50
52
|
function row_getLeftVisibleCells(row) {
|
|
53
|
+
var _row$table$atoms$colu2;
|
|
51
54
|
const allCells = require_utils.callMemoOrStaticFn(row, "getAllVisibleCells", require_columnVisibilityFeature_utils.row_getAllVisibleCells);
|
|
52
|
-
const { left } = row.table.
|
|
55
|
+
const { left } = ((_row$table$atoms$colu2 = row.table.atoms.columnPinning) === null || _row$table$atoms$colu2 === void 0 ? void 0 : _row$table$atoms$colu2.get()) ?? getDefaultColumnPinningState();
|
|
53
56
|
const cells = left.map((columnId) => allCells.find((cell) => cell.column.id === columnId)).filter(Boolean);
|
|
54
57
|
cells.forEach((cell) => {
|
|
55
58
|
cell.position = "left";
|
|
@@ -57,8 +60,9 @@ function row_getLeftVisibleCells(row) {
|
|
|
57
60
|
return cells;
|
|
58
61
|
}
|
|
59
62
|
function row_getRightVisibleCells(row) {
|
|
63
|
+
var _row$table$atoms$colu3;
|
|
60
64
|
const allCells = require_utils.callMemoOrStaticFn(row, "getAllVisibleCells", require_columnVisibilityFeature_utils.row_getAllVisibleCells);
|
|
61
|
-
const { right } = row.table.
|
|
65
|
+
const { right } = ((_row$table$atoms$colu3 = row.table.atoms.columnPinning) === null || _row$table$atoms$colu3 === void 0 ? void 0 : _row$table$atoms$colu3.get()) ?? getDefaultColumnPinningState();
|
|
62
66
|
const cells = right.map((columnId) => allCells.find((cell) => cell.column.id === columnId)).filter(Boolean);
|
|
63
67
|
cells.forEach((cell) => {
|
|
64
68
|
cell.position = "right";
|
|
@@ -70,29 +74,33 @@ function table_setColumnPinning(table, updater) {
|
|
|
70
74
|
(_table$options$onColu = (_table$options = table.options).onColumnPinningChange) === null || _table$options$onColu === void 0 || _table$options$onColu.call(_table$options, updater);
|
|
71
75
|
}
|
|
72
76
|
function table_resetColumnPinning(table, defaultState) {
|
|
73
|
-
table_setColumnPinning(table, defaultState ? getDefaultColumnPinningState() : table.initialState.columnPinning ?? getDefaultColumnPinningState());
|
|
77
|
+
table_setColumnPinning(table, defaultState ? getDefaultColumnPinningState() : require_utils.cloneState(table.initialState.columnPinning ?? getDefaultColumnPinningState()));
|
|
74
78
|
}
|
|
75
79
|
function table_getIsSomeColumnsPinned(table, position) {
|
|
76
|
-
|
|
80
|
+
var _table$atoms$columnPi;
|
|
81
|
+
const pinningState = (_table$atoms$columnPi = table.atoms.columnPinning) === null || _table$atoms$columnPi === void 0 ? void 0 : _table$atoms$columnPi.get();
|
|
77
82
|
if (!position) return Boolean((pinningState === null || pinningState === void 0 ? void 0 : pinningState.left.length) || (pinningState === null || pinningState === void 0 ? void 0 : pinningState.right.length));
|
|
78
83
|
return Boolean(pinningState === null || pinningState === void 0 ? void 0 : pinningState[position].length);
|
|
79
84
|
}
|
|
80
85
|
function table_getLeftHeaderGroups(table) {
|
|
86
|
+
var _table$atoms$columnPi2;
|
|
81
87
|
const allColumns = table.getAllColumns();
|
|
82
88
|
const leafColumns = require_utils.callMemoOrStaticFn(table, "getVisibleLeafColumns", require_columnVisibilityFeature_utils.table_getVisibleLeafColumns);
|
|
83
|
-
const { left } = table.
|
|
89
|
+
const { left } = ((_table$atoms$columnPi2 = table.atoms.columnPinning) === null || _table$atoms$columnPi2 === void 0 ? void 0 : _table$atoms$columnPi2.get()) ?? getDefaultColumnPinningState();
|
|
84
90
|
return require_buildHeaderGroups.buildHeaderGroups(allColumns, left.map((columnId) => leafColumns.find((d) => d.id === columnId)).filter(Boolean), table, "left");
|
|
85
91
|
}
|
|
86
92
|
function table_getRightHeaderGroups(table) {
|
|
93
|
+
var _table$atoms$columnPi3;
|
|
87
94
|
const allColumns = table.getAllColumns();
|
|
88
95
|
const leafColumns = require_utils.callMemoOrStaticFn(table, "getVisibleLeafColumns", require_columnVisibilityFeature_utils.table_getVisibleLeafColumns);
|
|
89
|
-
const { right } = table.
|
|
96
|
+
const { right } = ((_table$atoms$columnPi3 = table.atoms.columnPinning) === null || _table$atoms$columnPi3 === void 0 ? void 0 : _table$atoms$columnPi3.get()) ?? getDefaultColumnPinningState();
|
|
90
97
|
return require_buildHeaderGroups.buildHeaderGroups(allColumns, right.map((columnId) => leafColumns.find((d) => d.id === columnId)).filter(Boolean), table, "right");
|
|
91
98
|
}
|
|
92
99
|
function table_getCenterHeaderGroups(table) {
|
|
100
|
+
var _table$atoms$columnPi4;
|
|
93
101
|
const allColumns = table.getAllColumns();
|
|
94
102
|
let leafColumns = require_utils.callMemoOrStaticFn(table, "getVisibleLeafColumns", require_columnVisibilityFeature_utils.table_getVisibleLeafColumns);
|
|
95
|
-
const { left, right } = table.
|
|
103
|
+
const { left, right } = ((_table$atoms$columnPi4 = table.atoms.columnPinning) === null || _table$atoms$columnPi4 === void 0 ? void 0 : _table$atoms$columnPi4.get()) ?? getDefaultColumnPinningState();
|
|
96
104
|
const leftAndRight = [...left, ...right];
|
|
97
105
|
leafColumns = leafColumns.filter((column) => !leftAndRight.includes(column.id));
|
|
98
106
|
return require_buildHeaderGroups.buildHeaderGroups(allColumns, leafColumns, table, "center");
|
|
@@ -131,15 +139,18 @@ function table_getCenterLeafHeaders(table) {
|
|
|
131
139
|
return require_utils.callMemoOrStaticFn(table, "getCenterFlatHeaders", table_getCenterFlatHeaders).filter((header) => !header.subHeaders.length);
|
|
132
140
|
}
|
|
133
141
|
function table_getLeftLeafColumns(table) {
|
|
134
|
-
|
|
142
|
+
var _table$atoms$columnPi5;
|
|
143
|
+
const { left } = ((_table$atoms$columnPi5 = table.atoms.columnPinning) === null || _table$atoms$columnPi5 === void 0 ? void 0 : _table$atoms$columnPi5.get()) ?? getDefaultColumnPinningState();
|
|
135
144
|
return left.map((columnId) => table.getAllLeafColumns().find((column) => column.id === columnId)).filter(Boolean);
|
|
136
145
|
}
|
|
137
146
|
function table_getRightLeafColumns(table) {
|
|
138
|
-
|
|
147
|
+
var _table$atoms$columnPi6;
|
|
148
|
+
const { right } = ((_table$atoms$columnPi6 = table.atoms.columnPinning) === null || _table$atoms$columnPi6 === void 0 ? void 0 : _table$atoms$columnPi6.get()) ?? getDefaultColumnPinningState();
|
|
139
149
|
return right.map((columnId) => table.getAllLeafColumns().find((column) => column.id === columnId)).filter(Boolean);
|
|
140
150
|
}
|
|
141
151
|
function table_getCenterLeafColumns(table) {
|
|
142
|
-
|
|
152
|
+
var _table$atoms$columnPi7;
|
|
153
|
+
const { left, right } = ((_table$atoms$columnPi7 = table.atoms.columnPinning) === null || _table$atoms$columnPi7 === void 0 ? void 0 : _table$atoms$columnPi7.get()) ?? getDefaultColumnPinningState();
|
|
143
154
|
const leftAndRight = [...left, ...right];
|
|
144
155
|
return table.getAllLeafColumns().filter((d) => !leftAndRight.includes(d.id));
|
|
145
156
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"columnPinningFeature.utils.cjs","names":["callMemoOrStaticFn","row_getAllVisibleCells","table_getVisibleLeafColumns","buildHeaderGroups","column_getIsVisible"],"sources":["../../../src/features/column-pinning/columnPinningFeature.utils.ts"],"sourcesContent":["import {\n column_getIsVisible,\n row_getAllVisibleCells,\n table_getVisibleLeafColumns,\n} from '../column-visibility/columnVisibilityFeature.utils'\nimport { buildHeaderGroups } from '../../core/headers/buildHeaderGroups'\nimport { callMemoOrStaticFn } from '../../utils'\nimport type { HeaderGroup } from '../../types/HeaderGroup'\nimport type { Cell } from '../../types/Cell'\nimport type { Row } from '../../types/Row'\nimport type { CellData, RowData, Updater } from '../../types/type-utils'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { Table_Internal } from '../../types/Table'\nimport type { Column_Internal } from '../../types/Column'\nimport type {\n ColumnPinningPosition,\n ColumnPinningState,\n} from './columnPinningFeature.types'\n\n// State\n\nexport function getDefaultColumnPinningState(): ColumnPinningState {\n return structuredClone({\n left: [],\n right: [],\n })\n}\n\n// Column APIs\n\nexport function column_pin<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(\n column: Column_Internal<TFeatures, TData, TValue>,\n position: ColumnPinningPosition,\n) {\n const columnIds = column\n .getLeafColumns()\n .map((d) => d.id)\n .filter(Boolean)\n\n table_setColumnPinning(column.table, (old) => {\n if (position === 'right') {\n return {\n left: old.left.filter((d) => !columnIds.includes(d)),\n right: [\n ...old.right.filter((d) => !columnIds.includes(d)),\n ...columnIds,\n ],\n }\n }\n\n if (position === 'left') {\n return {\n left: [...old.left.filter((d) => !columnIds.includes(d)), ...columnIds],\n right: old.right.filter((d) => !columnIds.includes(d)),\n }\n }\n\n return {\n left: old.left.filter((d) => !columnIds.includes(d)),\n right: old.right.filter((d) => !columnIds.includes(d)),\n }\n })\n}\n\nexport function column_getCanPin<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(column: Column_Internal<TFeatures, TData, TValue>) {\n const leafColumns = column.getLeafColumns() as Array<\n Column_Internal<TFeatures, TData, TValue>\n >\n\n return leafColumns.some(\n (leafColumn) =>\n (leafColumn.columnDef.enablePinning ?? true) &&\n (column.table.options.enableColumnPinning ?? true),\n )\n}\n\nexport function column_getIsPinned<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(\n column: Column_Internal<TFeatures, TData, TValue>,\n): ColumnPinningPosition | false {\n const leafColumnIds = column.getLeafColumns().map((d) => d.id)\n\n const { left, right } =\n column.table.store.state.columnPinning ?? getDefaultColumnPinningState()\n\n const isLeft = leafColumnIds.some((d) => left.includes(d))\n const isRight = leafColumnIds.some((d) => right.includes(d))\n\n return isLeft ? 'left' : isRight ? 'right' : false\n}\n\nexport function column_getPinnedIndex<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(column: Column_Internal<TFeatures, TData, TValue>) {\n const position = column_getIsPinned(column)\n\n return position\n ? (column.table.store.state.columnPinning?.[position].indexOf(column.id) ??\n -1)\n : 0\n}\n\n// Row APIs\n\nexport function row_getCenterVisibleCells<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(row: Row<TFeatures, TData>) {\n const allCells = callMemoOrStaticFn(\n row,\n 'getAllVisibleCells',\n row_getAllVisibleCells,\n )\n const { left, right } =\n row.table.store.state.columnPinning ?? getDefaultColumnPinningState()\n const leftAndRight: Array<string> = [...left, ...right]\n return allCells.filter((d) => !leftAndRight.includes(d.column.id))\n}\n\nexport function row_getLeftVisibleCells<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(row: Row<TFeatures, TData>): Array<Cell<TFeatures, TData, unknown>> {\n const allCells = callMemoOrStaticFn(\n row,\n 'getAllVisibleCells',\n row_getAllVisibleCells,\n )\n const { left } =\n row.table.store.state.columnPinning ?? getDefaultColumnPinningState()\n const cells = left\n .map((columnId) => allCells.find((cell) => cell.column.id === columnId)!)\n .filter(Boolean)\n // Assign position property directly to preserve prototype chain\n cells.forEach((cell) => {\n cell.position = 'left'\n })\n return cells as any\n}\n\nexport function row_getRightVisibleCells<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(row: Row<TFeatures, TData>) {\n const allCells = callMemoOrStaticFn(\n row,\n 'getAllVisibleCells',\n row_getAllVisibleCells,\n )\n const { right } =\n row.table.store.state.columnPinning ?? getDefaultColumnPinningState()\n const cells = right\n .map((columnId) => allCells.find((cell) => cell.column.id === columnId)!)\n .filter(Boolean)\n // Assign position property directly to preserve prototype chain\n cells.forEach((cell) => {\n cell.position = 'right'\n })\n return cells as any\n}\n\n// Table APIs\n\nexport function table_setColumnPinning<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n updater: Updater<ColumnPinningState>,\n) {\n table.options.onColumnPinningChange?.(updater)\n}\n\nexport function table_resetColumnPinning<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>, defaultState?: boolean) {\n table_setColumnPinning(\n table,\n defaultState\n ? getDefaultColumnPinningState()\n : (table.initialState.columnPinning ?? getDefaultColumnPinningState()),\n )\n}\n\nexport function table_getIsSomeColumnsPinned<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>, position?: ColumnPinningPosition) {\n const pinningState = table.store.state.columnPinning\n\n if (!position) {\n return Boolean(pinningState?.left.length || pinningState?.right.length)\n }\n return Boolean(pinningState?.[position].length)\n}\n\n// header groups\n\nexport function table_getLeftHeaderGroups<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n const allColumns = table.getAllColumns()\n const leafColumns = callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ) as Array<Column_Internal<TFeatures, TData, unknown>>\n const { left } =\n table.store.state.columnPinning ?? getDefaultColumnPinningState()\n\n const orderedLeafColumns = left\n .map((columnId) => leafColumns.find((d) => d.id === columnId)!)\n .filter(Boolean)\n\n return buildHeaderGroups(allColumns, orderedLeafColumns, table, 'left')\n}\n\nexport function table_getRightHeaderGroups<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n const allColumns = table.getAllColumns()\n const leafColumns = callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ) as unknown as Array<Column_Internal<TFeatures, TData, unknown>>\n const { right } =\n table.store.state.columnPinning ?? getDefaultColumnPinningState()\n\n const orderedLeafColumns = right\n .map((columnId) => leafColumns.find((d) => d.id === columnId)!)\n .filter(Boolean)\n\n return buildHeaderGroups(allColumns, orderedLeafColumns, table, 'right')\n}\n\nexport function table_getCenterHeaderGroups<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n): Array<HeaderGroup<TFeatures, TData>> {\n const allColumns = table.getAllColumns()\n let leafColumns = callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ) as unknown as Array<Column_Internal<TFeatures, TData, unknown>>\n const { left, right } =\n table.store.state.columnPinning ?? getDefaultColumnPinningState()\n const leftAndRight: Array<string> = [...left, ...right]\n\n leafColumns = leafColumns.filter(\n (column) => !leftAndRight.includes(column.id),\n )\n return buildHeaderGroups(allColumns, leafColumns, table, 'center')\n}\n\n// footer groups\n\nexport function table_getLeftFooterGroups<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n const headerGroups = callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n )\n return [...headerGroups].reverse()\n}\n\nexport function table_getRightFooterGroups<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n const headerGroups = callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n )\n return [...headerGroups].reverse()\n}\n\nexport function table_getCenterFooterGroups<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n const headerGroups = callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n )\n return [...headerGroups].reverse()\n}\n\n// flat headers\n\nexport function table_getLeftFlatHeaders<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n const leftHeaderGroups = callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n )\n return leftHeaderGroups\n .map((headerGroup) => {\n return headerGroup.headers\n })\n .flat()\n}\n\nexport function table_getRightFlatHeaders<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n const rightHeaderGroups = callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n )\n return rightHeaderGroups\n .map((headerGroup) => {\n return headerGroup.headers\n })\n .flat()\n}\n\nexport function table_getCenterFlatHeaders<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n const centerHeaderGroups = callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n )\n return centerHeaderGroups\n .map((headerGroup) => {\n return headerGroup.headers\n })\n .flat()\n}\n\n// leaf headers\n\nexport function table_getLeftLeafHeaders<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n return callMemoOrStaticFn(\n table,\n 'getLeftFlatHeaders',\n table_getLeftFlatHeaders,\n ).filter((header) => !header.subHeaders.length)\n}\n\nexport function table_getRightLeafHeaders<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n return callMemoOrStaticFn(\n table,\n 'getRightFlatHeaders',\n table_getRightFlatHeaders,\n ).filter((header) => !header.subHeaders.length)\n}\n\nexport function table_getCenterLeafHeaders<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n return callMemoOrStaticFn(\n table,\n 'getCenterFlatHeaders',\n table_getCenterFlatHeaders,\n ).filter((header) => !header.subHeaders.length)\n}\n\n// leaf columns\n\nexport function table_getLeftLeafColumns<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n const { left } =\n table.store.state.columnPinning ?? getDefaultColumnPinningState()\n return left\n .map(\n (columnId) =>\n table.getAllLeafColumns().find((column) => column.id === columnId)!,\n )\n .filter(Boolean)\n}\n\nexport function table_getRightLeafColumns<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n const { right } =\n table.store.state.columnPinning ?? getDefaultColumnPinningState()\n return right\n .map(\n (columnId) =>\n table.getAllLeafColumns().find((column) => column.id === columnId)!,\n )\n .filter(Boolean)\n}\n\nexport function table_getCenterLeafColumns<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n const { left, right } =\n table.store.state.columnPinning ?? getDefaultColumnPinningState()\n const leftAndRight: Array<string> = [...left, ...right]\n return table.getAllLeafColumns().filter((d) => !leftAndRight.includes(d.id))\n}\n\nexport function table_getPinnedLeafColumns<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n position: ColumnPinningPosition | 'center',\n) {\n return !position\n ? table.getAllLeafColumns()\n : position === 'left'\n ? callMemoOrStaticFn(\n table,\n 'getLeftLeafColumns',\n table_getLeftLeafColumns,\n )\n : position === 'right'\n ? callMemoOrStaticFn(\n table,\n 'getRightLeafColumns',\n table_getRightLeafColumns,\n )\n : callMemoOrStaticFn(\n table,\n 'getCenterLeafColumns',\n table_getCenterLeafColumns,\n )\n}\n\n// visible leaf columns\n\nexport function table_getLeftVisibleLeafColumns<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n return callMemoOrStaticFn(\n table,\n 'getLeftLeafColumns',\n table_getLeftLeafColumns,\n ).filter((column) =>\n callMemoOrStaticFn(column, 'getIsVisible', column_getIsVisible),\n )\n}\n\nexport function table_getRightVisibleLeafColumns<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n return callMemoOrStaticFn(\n table,\n 'getRightLeafColumns',\n table_getRightLeafColumns,\n ).filter((column) =>\n callMemoOrStaticFn(column, 'getIsVisible', column_getIsVisible),\n )\n}\n\nexport function table_getCenterVisibleLeafColumns<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n return callMemoOrStaticFn(\n table,\n 'getCenterLeafColumns',\n table_getCenterLeafColumns,\n ).filter((column) =>\n callMemoOrStaticFn(column, 'getIsVisible', column_getIsVisible),\n )\n}\n\nexport function table_getPinnedVisibleLeafColumns<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n position?: ColumnPinningPosition | 'center',\n) {\n return !position\n ? callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n )\n : position === 'left'\n ? callMemoOrStaticFn(\n table,\n 'getLeftVisibleLeafColumns',\n table_getLeftVisibleLeafColumns,\n )\n : position === 'right'\n ? callMemoOrStaticFn(\n table,\n 'getRightVisibleLeafColumns',\n table_getRightVisibleLeafColumns,\n )\n : callMemoOrStaticFn(\n table,\n 'getCenterVisibleLeafColumns',\n table_getCenterVisibleLeafColumns,\n )\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"columnPinningFeature.utils.cjs","names":["callMemoOrStaticFn","row_getAllVisibleCells","cloneState","table_getVisibleLeafColumns","buildHeaderGroups","column_getIsVisible"],"sources":["../../../src/features/column-pinning/columnPinningFeature.utils.ts"],"sourcesContent":["import {\n column_getIsVisible,\n row_getAllVisibleCells,\n table_getVisibleLeafColumns,\n} from '../column-visibility/columnVisibilityFeature.utils'\nimport { buildHeaderGroups } from '../../core/headers/buildHeaderGroups'\nimport { callMemoOrStaticFn, cloneState } from '../../utils'\nimport type { HeaderGroup } from '../../types/HeaderGroup'\nimport type { Cell } from '../../types/Cell'\nimport type { Row } from '../../types/Row'\nimport type { CellData, RowData, Updater } from '../../types/type-utils'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { Table_Internal } from '../../types/Table'\nimport type { Column_Internal } from '../../types/Column'\nimport type {\n ColumnPinningPosition,\n ColumnPinningState,\n} from './columnPinningFeature.types'\n\n// State\n\nexport function getDefaultColumnPinningState(): ColumnPinningState {\n return {\n left: [],\n right: [],\n }\n}\n\n// Column APIs\n\nexport function column_pin<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(\n column: Column_Internal<TFeatures, TData, TValue>,\n position: ColumnPinningPosition,\n) {\n const columnIds = column\n .getLeafColumns()\n .map((d) => d.id)\n .filter(Boolean)\n\n table_setColumnPinning(column.table, (old) => {\n if (position === 'right') {\n return {\n left: old.left.filter((d) => !columnIds.includes(d)),\n right: [\n ...old.right.filter((d) => !columnIds.includes(d)),\n ...columnIds,\n ],\n }\n }\n\n if (position === 'left') {\n return {\n left: [...old.left.filter((d) => !columnIds.includes(d)), ...columnIds],\n right: old.right.filter((d) => !columnIds.includes(d)),\n }\n }\n\n return {\n left: old.left.filter((d) => !columnIds.includes(d)),\n right: old.right.filter((d) => !columnIds.includes(d)),\n }\n })\n}\n\nexport function column_getCanPin<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(column: Column_Internal<TFeatures, TData, TValue>) {\n const leafColumns = column.getLeafColumns() as Array<\n Column_Internal<TFeatures, TData, TValue>\n >\n\n return leafColumns.some(\n (leafColumn) =>\n (leafColumn.columnDef.enablePinning ?? true) &&\n (column.table.options.enableColumnPinning ?? true),\n )\n}\n\nexport function column_getIsPinned<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(\n column: Column_Internal<TFeatures, TData, TValue>,\n): ColumnPinningPosition | false {\n const leafColumnIds = column.getLeafColumns().map((d) => d.id)\n\n const { left, right } =\n column.table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()\n\n const isLeft = leafColumnIds.some((d) => left.includes(d))\n const isRight = leafColumnIds.some((d) => right.includes(d))\n\n return isLeft ? 'left' : isRight ? 'right' : false\n}\n\nexport function column_getPinnedIndex<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(column: Column_Internal<TFeatures, TData, TValue>) {\n const position = column_getIsPinned(column)\n\n return position\n ? (column.table.atoms.columnPinning?.get()?.[position].indexOf(column.id) ??\n -1)\n : 0\n}\n\n// Row APIs\n\nexport function row_getCenterVisibleCells<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(row: Row<TFeatures, TData>) {\n const allCells = callMemoOrStaticFn(\n row,\n 'getAllVisibleCells',\n row_getAllVisibleCells,\n )\n const { left, right } =\n row.table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()\n const leftAndRight: Array<string> = [...left, ...right]\n return allCells.filter((d) => !leftAndRight.includes(d.column.id))\n}\n\nexport function row_getLeftVisibleCells<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(row: Row<TFeatures, TData>): Array<Cell<TFeatures, TData, unknown>> {\n const allCells = callMemoOrStaticFn(\n row,\n 'getAllVisibleCells',\n row_getAllVisibleCells,\n )\n const { left } =\n row.table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()\n const cells = left\n .map((columnId) => allCells.find((cell) => cell.column.id === columnId)!)\n .filter(Boolean)\n // Assign position property directly to preserve prototype chain\n cells.forEach((cell) => {\n cell.position = 'left'\n })\n return cells as any\n}\n\nexport function row_getRightVisibleCells<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(row: Row<TFeatures, TData>) {\n const allCells = callMemoOrStaticFn(\n row,\n 'getAllVisibleCells',\n row_getAllVisibleCells,\n )\n const { right } =\n row.table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()\n const cells = right\n .map((columnId) => allCells.find((cell) => cell.column.id === columnId)!)\n .filter(Boolean)\n // Assign position property directly to preserve prototype chain\n cells.forEach((cell) => {\n cell.position = 'right'\n })\n return cells as any\n}\n\n// Table APIs\n\nexport function table_setColumnPinning<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n updater: Updater<ColumnPinningState>,\n) {\n table.options.onColumnPinningChange?.(updater)\n}\n\nexport function table_resetColumnPinning<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>, defaultState?: boolean) {\n table_setColumnPinning(\n table,\n defaultState\n ? getDefaultColumnPinningState()\n : cloneState(\n table.initialState.columnPinning ?? getDefaultColumnPinningState(),\n ),\n )\n}\n\nexport function table_getIsSomeColumnsPinned<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>, position?: ColumnPinningPosition) {\n const pinningState = table.atoms.columnPinning?.get()\n\n if (!position) {\n return Boolean(pinningState?.left.length || pinningState?.right.length)\n }\n return Boolean(pinningState?.[position].length)\n}\n\n// header groups\n\nexport function table_getLeftHeaderGroups<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n const allColumns = table.getAllColumns()\n const leafColumns = callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ) as Array<Column_Internal<TFeatures, TData, unknown>>\n const { left } =\n table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()\n\n const orderedLeafColumns = left\n .map((columnId) => leafColumns.find((d) => d.id === columnId)!)\n .filter(Boolean)\n\n return buildHeaderGroups(allColumns, orderedLeafColumns, table, 'left')\n}\n\nexport function table_getRightHeaderGroups<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n const allColumns = table.getAllColumns()\n const leafColumns = callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ) as unknown as Array<Column_Internal<TFeatures, TData, unknown>>\n const { right } =\n table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()\n\n const orderedLeafColumns = right\n .map((columnId) => leafColumns.find((d) => d.id === columnId)!)\n .filter(Boolean)\n\n return buildHeaderGroups(allColumns, orderedLeafColumns, table, 'right')\n}\n\nexport function table_getCenterHeaderGroups<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n): Array<HeaderGroup<TFeatures, TData>> {\n const allColumns = table.getAllColumns()\n let leafColumns = callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ) as unknown as Array<Column_Internal<TFeatures, TData, unknown>>\n const { left, right } =\n table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()\n const leftAndRight: Array<string> = [...left, ...right]\n\n leafColumns = leafColumns.filter(\n (column) => !leftAndRight.includes(column.id),\n )\n return buildHeaderGroups(allColumns, leafColumns, table, 'center')\n}\n\n// footer groups\n\nexport function table_getLeftFooterGroups<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n const headerGroups = callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n )\n return [...headerGroups].reverse()\n}\n\nexport function table_getRightFooterGroups<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n const headerGroups = callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n )\n return [...headerGroups].reverse()\n}\n\nexport function table_getCenterFooterGroups<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n const headerGroups = callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n )\n return [...headerGroups].reverse()\n}\n\n// flat headers\n\nexport function table_getLeftFlatHeaders<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n const leftHeaderGroups = callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n )\n return leftHeaderGroups\n .map((headerGroup) => {\n return headerGroup.headers\n })\n .flat()\n}\n\nexport function table_getRightFlatHeaders<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n const rightHeaderGroups = callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n )\n return rightHeaderGroups\n .map((headerGroup) => {\n return headerGroup.headers\n })\n .flat()\n}\n\nexport function table_getCenterFlatHeaders<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n const centerHeaderGroups = callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n )\n return centerHeaderGroups\n .map((headerGroup) => {\n return headerGroup.headers\n })\n .flat()\n}\n\n// leaf headers\n\nexport function table_getLeftLeafHeaders<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n return callMemoOrStaticFn(\n table,\n 'getLeftFlatHeaders',\n table_getLeftFlatHeaders,\n ).filter((header) => !header.subHeaders.length)\n}\n\nexport function table_getRightLeafHeaders<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n return callMemoOrStaticFn(\n table,\n 'getRightFlatHeaders',\n table_getRightFlatHeaders,\n ).filter((header) => !header.subHeaders.length)\n}\n\nexport function table_getCenterLeafHeaders<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n return callMemoOrStaticFn(\n table,\n 'getCenterFlatHeaders',\n table_getCenterFlatHeaders,\n ).filter((header) => !header.subHeaders.length)\n}\n\n// leaf columns\n\nexport function table_getLeftLeafColumns<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n const { left } =\n table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()\n return left\n .map(\n (columnId) =>\n table.getAllLeafColumns().find((column) => column.id === columnId)!,\n )\n .filter(Boolean)\n}\n\nexport function table_getRightLeafColumns<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n const { right } =\n table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()\n return right\n .map(\n (columnId) =>\n table.getAllLeafColumns().find((column) => column.id === columnId)!,\n )\n .filter(Boolean)\n}\n\nexport function table_getCenterLeafColumns<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n const { left, right } =\n table.atoms.columnPinning?.get() ?? getDefaultColumnPinningState()\n const leftAndRight: Array<string> = [...left, ...right]\n return table.getAllLeafColumns().filter((d) => !leftAndRight.includes(d.id))\n}\n\nexport function table_getPinnedLeafColumns<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n position: ColumnPinningPosition | 'center',\n) {\n return !position\n ? table.getAllLeafColumns()\n : position === 'left'\n ? callMemoOrStaticFn(\n table,\n 'getLeftLeafColumns',\n table_getLeftLeafColumns,\n )\n : position === 'right'\n ? callMemoOrStaticFn(\n table,\n 'getRightLeafColumns',\n table_getRightLeafColumns,\n )\n : callMemoOrStaticFn(\n table,\n 'getCenterLeafColumns',\n table_getCenterLeafColumns,\n )\n}\n\n// visible leaf columns\n\nexport function table_getLeftVisibleLeafColumns<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n return callMemoOrStaticFn(\n table,\n 'getLeftLeafColumns',\n table_getLeftLeafColumns,\n ).filter((column) =>\n callMemoOrStaticFn(column, 'getIsVisible', column_getIsVisible),\n )\n}\n\nexport function table_getRightVisibleLeafColumns<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n return callMemoOrStaticFn(\n table,\n 'getRightLeafColumns',\n table_getRightLeafColumns,\n ).filter((column) =>\n callMemoOrStaticFn(column, 'getIsVisible', column_getIsVisible),\n )\n}\n\nexport function table_getCenterVisibleLeafColumns<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>) {\n return callMemoOrStaticFn(\n table,\n 'getCenterLeafColumns',\n table_getCenterLeafColumns,\n ).filter((column) =>\n callMemoOrStaticFn(column, 'getIsVisible', column_getIsVisible),\n )\n}\n\nexport function table_getPinnedVisibleLeafColumns<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n position?: ColumnPinningPosition | 'center',\n) {\n return !position\n ? callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n )\n : position === 'left'\n ? callMemoOrStaticFn(\n table,\n 'getLeftVisibleLeafColumns',\n table_getLeftVisibleLeafColumns,\n )\n : position === 'right'\n ? callMemoOrStaticFn(\n table,\n 'getRightVisibleLeafColumns',\n table_getRightVisibleLeafColumns,\n )\n : callMemoOrStaticFn(\n table,\n 'getCenterVisibleLeafColumns',\n table_getCenterVisibleLeafColumns,\n )\n}\n"],"mappings":"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"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { callMemoOrStaticFn } from "../../utils.js";
|
|
1
|
+
import { callMemoOrStaticFn, cloneState } from "../../utils.js";
|
|
2
2
|
import { column_getIsVisible, row_getAllVisibleCells, table_getVisibleLeafColumns } from "../column-visibility/columnVisibilityFeature.utils.js";
|
|
3
3
|
import { buildHeaderGroups } from "../../core/headers/buildHeaderGroups.js";
|
|
4
4
|
|
|
5
5
|
//#region src/features/column-pinning/columnPinningFeature.utils.ts
|
|
6
6
|
function getDefaultColumnPinningState() {
|
|
7
|
-
return
|
|
7
|
+
return {
|
|
8
8
|
left: [],
|
|
9
9
|
right: []
|
|
10
|
-
}
|
|
10
|
+
};
|
|
11
11
|
}
|
|
12
12
|
function column_pin(column, position) {
|
|
13
13
|
const columnIds = column.getLeafColumns().map((d) => d.id).filter(Boolean);
|
|
@@ -30,26 +30,29 @@ function column_getCanPin(column) {
|
|
|
30
30
|
return column.getLeafColumns().some((leafColumn) => (leafColumn.columnDef.enablePinning ?? true) && (column.table.options.enableColumnPinning ?? true));
|
|
31
31
|
}
|
|
32
32
|
function column_getIsPinned(column) {
|
|
33
|
+
var _column$table$atoms$c;
|
|
33
34
|
const leafColumnIds = column.getLeafColumns().map((d) => d.id);
|
|
34
|
-
const { left, right } = column.table.
|
|
35
|
+
const { left, right } = ((_column$table$atoms$c = column.table.atoms.columnPinning) === null || _column$table$atoms$c === void 0 ? void 0 : _column$table$atoms$c.get()) ?? getDefaultColumnPinningState();
|
|
35
36
|
const isLeft = leafColumnIds.some((d) => left.includes(d));
|
|
36
37
|
const isRight = leafColumnIds.some((d) => right.includes(d));
|
|
37
38
|
return isLeft ? "left" : isRight ? "right" : false;
|
|
38
39
|
}
|
|
39
40
|
function column_getPinnedIndex(column) {
|
|
40
|
-
var _column$table$
|
|
41
|
+
var _column$table$atoms$c2;
|
|
41
42
|
const position = column_getIsPinned(column);
|
|
42
|
-
return position ? ((_column$table$
|
|
43
|
+
return position ? ((_column$table$atoms$c2 = column.table.atoms.columnPinning) === null || _column$table$atoms$c2 === void 0 || (_column$table$atoms$c2 = _column$table$atoms$c2.get()) === null || _column$table$atoms$c2 === void 0 ? void 0 : _column$table$atoms$c2[position].indexOf(column.id)) ?? -1 : 0;
|
|
43
44
|
}
|
|
44
45
|
function row_getCenterVisibleCells(row) {
|
|
46
|
+
var _row$table$atoms$colu;
|
|
45
47
|
const allCells = callMemoOrStaticFn(row, "getAllVisibleCells", row_getAllVisibleCells);
|
|
46
|
-
const { left, right } = row.table.
|
|
48
|
+
const { left, right } = ((_row$table$atoms$colu = row.table.atoms.columnPinning) === null || _row$table$atoms$colu === void 0 ? void 0 : _row$table$atoms$colu.get()) ?? getDefaultColumnPinningState();
|
|
47
49
|
const leftAndRight = [...left, ...right];
|
|
48
50
|
return allCells.filter((d) => !leftAndRight.includes(d.column.id));
|
|
49
51
|
}
|
|
50
52
|
function row_getLeftVisibleCells(row) {
|
|
53
|
+
var _row$table$atoms$colu2;
|
|
51
54
|
const allCells = callMemoOrStaticFn(row, "getAllVisibleCells", row_getAllVisibleCells);
|
|
52
|
-
const { left } = row.table.
|
|
55
|
+
const { left } = ((_row$table$atoms$colu2 = row.table.atoms.columnPinning) === null || _row$table$atoms$colu2 === void 0 ? void 0 : _row$table$atoms$colu2.get()) ?? getDefaultColumnPinningState();
|
|
53
56
|
const cells = left.map((columnId) => allCells.find((cell) => cell.column.id === columnId)).filter(Boolean);
|
|
54
57
|
cells.forEach((cell) => {
|
|
55
58
|
cell.position = "left";
|
|
@@ -57,8 +60,9 @@ function row_getLeftVisibleCells(row) {
|
|
|
57
60
|
return cells;
|
|
58
61
|
}
|
|
59
62
|
function row_getRightVisibleCells(row) {
|
|
63
|
+
var _row$table$atoms$colu3;
|
|
60
64
|
const allCells = callMemoOrStaticFn(row, "getAllVisibleCells", row_getAllVisibleCells);
|
|
61
|
-
const { right } = row.table.
|
|
65
|
+
const { right } = ((_row$table$atoms$colu3 = row.table.atoms.columnPinning) === null || _row$table$atoms$colu3 === void 0 ? void 0 : _row$table$atoms$colu3.get()) ?? getDefaultColumnPinningState();
|
|
62
66
|
const cells = right.map((columnId) => allCells.find((cell) => cell.column.id === columnId)).filter(Boolean);
|
|
63
67
|
cells.forEach((cell) => {
|
|
64
68
|
cell.position = "right";
|
|
@@ -70,29 +74,33 @@ function table_setColumnPinning(table, updater) {
|
|
|
70
74
|
(_table$options$onColu = (_table$options = table.options).onColumnPinningChange) === null || _table$options$onColu === void 0 || _table$options$onColu.call(_table$options, updater);
|
|
71
75
|
}
|
|
72
76
|
function table_resetColumnPinning(table, defaultState) {
|
|
73
|
-
table_setColumnPinning(table, defaultState ? getDefaultColumnPinningState() : table.initialState.columnPinning ?? getDefaultColumnPinningState());
|
|
77
|
+
table_setColumnPinning(table, defaultState ? getDefaultColumnPinningState() : cloneState(table.initialState.columnPinning ?? getDefaultColumnPinningState()));
|
|
74
78
|
}
|
|
75
79
|
function table_getIsSomeColumnsPinned(table, position) {
|
|
76
|
-
|
|
80
|
+
var _table$atoms$columnPi;
|
|
81
|
+
const pinningState = (_table$atoms$columnPi = table.atoms.columnPinning) === null || _table$atoms$columnPi === void 0 ? void 0 : _table$atoms$columnPi.get();
|
|
77
82
|
if (!position) return Boolean((pinningState === null || pinningState === void 0 ? void 0 : pinningState.left.length) || (pinningState === null || pinningState === void 0 ? void 0 : pinningState.right.length));
|
|
78
83
|
return Boolean(pinningState === null || pinningState === void 0 ? void 0 : pinningState[position].length);
|
|
79
84
|
}
|
|
80
85
|
function table_getLeftHeaderGroups(table) {
|
|
86
|
+
var _table$atoms$columnPi2;
|
|
81
87
|
const allColumns = table.getAllColumns();
|
|
82
88
|
const leafColumns = callMemoOrStaticFn(table, "getVisibleLeafColumns", table_getVisibleLeafColumns);
|
|
83
|
-
const { left } = table.
|
|
89
|
+
const { left } = ((_table$atoms$columnPi2 = table.atoms.columnPinning) === null || _table$atoms$columnPi2 === void 0 ? void 0 : _table$atoms$columnPi2.get()) ?? getDefaultColumnPinningState();
|
|
84
90
|
return buildHeaderGroups(allColumns, left.map((columnId) => leafColumns.find((d) => d.id === columnId)).filter(Boolean), table, "left");
|
|
85
91
|
}
|
|
86
92
|
function table_getRightHeaderGroups(table) {
|
|
93
|
+
var _table$atoms$columnPi3;
|
|
87
94
|
const allColumns = table.getAllColumns();
|
|
88
95
|
const leafColumns = callMemoOrStaticFn(table, "getVisibleLeafColumns", table_getVisibleLeafColumns);
|
|
89
|
-
const { right } = table.
|
|
96
|
+
const { right } = ((_table$atoms$columnPi3 = table.atoms.columnPinning) === null || _table$atoms$columnPi3 === void 0 ? void 0 : _table$atoms$columnPi3.get()) ?? getDefaultColumnPinningState();
|
|
90
97
|
return buildHeaderGroups(allColumns, right.map((columnId) => leafColumns.find((d) => d.id === columnId)).filter(Boolean), table, "right");
|
|
91
98
|
}
|
|
92
99
|
function table_getCenterHeaderGroups(table) {
|
|
100
|
+
var _table$atoms$columnPi4;
|
|
93
101
|
const allColumns = table.getAllColumns();
|
|
94
102
|
let leafColumns = callMemoOrStaticFn(table, "getVisibleLeafColumns", table_getVisibleLeafColumns);
|
|
95
|
-
const { left, right } = table.
|
|
103
|
+
const { left, right } = ((_table$atoms$columnPi4 = table.atoms.columnPinning) === null || _table$atoms$columnPi4 === void 0 ? void 0 : _table$atoms$columnPi4.get()) ?? getDefaultColumnPinningState();
|
|
96
104
|
const leftAndRight = [...left, ...right];
|
|
97
105
|
leafColumns = leafColumns.filter((column) => !leftAndRight.includes(column.id));
|
|
98
106
|
return buildHeaderGroups(allColumns, leafColumns, table, "center");
|
|
@@ -131,15 +139,18 @@ function table_getCenterLeafHeaders(table) {
|
|
|
131
139
|
return callMemoOrStaticFn(table, "getCenterFlatHeaders", table_getCenterFlatHeaders).filter((header) => !header.subHeaders.length);
|
|
132
140
|
}
|
|
133
141
|
function table_getLeftLeafColumns(table) {
|
|
134
|
-
|
|
142
|
+
var _table$atoms$columnPi5;
|
|
143
|
+
const { left } = ((_table$atoms$columnPi5 = table.atoms.columnPinning) === null || _table$atoms$columnPi5 === void 0 ? void 0 : _table$atoms$columnPi5.get()) ?? getDefaultColumnPinningState();
|
|
135
144
|
return left.map((columnId) => table.getAllLeafColumns().find((column) => column.id === columnId)).filter(Boolean);
|
|
136
145
|
}
|
|
137
146
|
function table_getRightLeafColumns(table) {
|
|
138
|
-
|
|
147
|
+
var _table$atoms$columnPi6;
|
|
148
|
+
const { right } = ((_table$atoms$columnPi6 = table.atoms.columnPinning) === null || _table$atoms$columnPi6 === void 0 ? void 0 : _table$atoms$columnPi6.get()) ?? getDefaultColumnPinningState();
|
|
139
149
|
return right.map((columnId) => table.getAllLeafColumns().find((column) => column.id === columnId)).filter(Boolean);
|
|
140
150
|
}
|
|
141
151
|
function table_getCenterLeafColumns(table) {
|
|
142
|
-
|
|
152
|
+
var _table$atoms$columnPi7;
|
|
153
|
+
const { left, right } = ((_table$atoms$columnPi7 = table.atoms.columnPinning) === null || _table$atoms$columnPi7 === void 0 ? void 0 : _table$atoms$columnPi7.get()) ?? getDefaultColumnPinningState();
|
|
143
154
|
const leftAndRight = [...left, ...right];
|
|
144
155
|
return table.getAllLeafColumns().filter((d) => !leftAndRight.includes(d.id));
|
|
145
156
|
}
|