@tanstack/table-core 8.0.0-alpha.64 → 8.0.0-alpha.68
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/build/cjs/aggregationFns.js +25 -37
- package/build/cjs/aggregationFns.js.map +1 -1
- package/build/cjs/core.js +167 -47
- package/build/cjs/core.js.map +1 -1
- package/build/cjs/createTable.js +24 -40
- package/build/cjs/createTable.js.map +1 -1
- package/build/cjs/features/Cells.js +29 -35
- package/build/cjs/features/Cells.js.map +1 -1
- package/build/cjs/features/ColumnSizing.js +126 -218
- package/build/cjs/features/ColumnSizing.js.map +1 -1
- package/build/cjs/features/Columns.js +59 -86
- package/build/cjs/features/Columns.js.map +1 -1
- package/build/cjs/features/Expanding.js +78 -125
- package/build/cjs/features/Expanding.js.map +1 -1
- package/build/cjs/features/Filters.js +143 -218
- package/build/cjs/features/Filters.js.map +1 -1
- package/build/cjs/features/Grouping.js +70 -116
- package/build/cjs/features/Grouping.js.map +1 -1
- package/build/cjs/features/Headers.js +125 -205
- package/build/cjs/features/Headers.js.map +1 -1
- package/build/cjs/features/Ordering.js +31 -43
- package/build/cjs/features/Ordering.js.map +1 -1
- package/build/cjs/features/Pagination.js +64 -72
- package/build/cjs/features/Pagination.js.map +1 -1
- package/build/cjs/features/Pinning.js +96 -177
- package/build/cjs/features/Pinning.js.map +1 -1
- package/build/cjs/features/RowSelection.js +134 -205
- package/build/cjs/features/RowSelection.js.map +1 -1
- package/build/cjs/features/Rows.js +32 -22
- package/build/cjs/features/Rows.js.map +1 -1
- package/build/cjs/features/Sorting.js +62 -131
- package/build/cjs/features/Sorting.js.map +1 -1
- package/build/cjs/features/Visibility.js +53 -120
- package/build/cjs/features/Visibility.js.map +1 -1
- package/build/cjs/filterFns.js +52 -133
- package/build/cjs/filterFns.js.map +1 -1
- package/build/cjs/index.js +13 -13
- package/build/cjs/sortingFns.js +21 -21
- package/build/cjs/sortingFns.js.map +1 -1
- package/build/cjs/utils/filterRowsUtils.js +56 -41
- package/build/cjs/utils/filterRowsUtils.js.map +1 -1
- package/build/cjs/utils/getCoreRowModel.js +98 -0
- package/build/cjs/utils/getCoreRowModel.js.map +1 -0
- package/build/cjs/utils/getExpandedRowModel.js +18 -22
- package/build/cjs/utils/getExpandedRowModel.js.map +1 -1
- package/build/cjs/utils/getFacetedMinMaxValues.js +48 -0
- package/build/cjs/utils/getFacetedMinMaxValues.js.map +1 -0
- package/build/cjs/utils/getFacetedRowModel.js +50 -0
- package/build/cjs/utils/getFacetedRowModel.js.map +1 -0
- package/build/cjs/utils/getFacetedUniqueValues.js +48 -0
- package/build/cjs/utils/getFacetedUniqueValues.js.map +1 -0
- package/build/cjs/utils/getFilteredRowModel.js +130 -0
- package/build/cjs/utils/getFilteredRowModel.js.map +1 -0
- package/build/cjs/utils/getGroupedRowModel.js +126 -136
- package/build/cjs/utils/getGroupedRowModel.js.map +1 -1
- package/build/cjs/utils/getPaginationRowModel.js +39 -39
- package/build/cjs/utils/getPaginationRowModel.js.map +1 -1
- package/build/cjs/utils/getSortedRowModel.js +112 -0
- package/build/cjs/utils/getSortedRowModel.js.map +1 -0
- package/build/cjs/utils.js +36 -211
- package/build/cjs/utils.js.map +1 -1
- package/build/esm/index.js +1970 -2956
- package/build/esm/index.js.map +1 -1
- package/build/stats-html.html +1 -1
- package/build/stats-react.json +390 -482
- package/build/types/core.d.ts +3 -5
- package/build/types/features/Cells.d.ts +1 -1
- package/build/types/features/ColumnSizing.d.ts +2 -13
- package/build/types/features/Columns.d.ts +1 -1
- package/build/types/features/Expanding.d.ts +1 -6
- package/build/types/features/Filters.d.ts +42 -30
- package/build/types/features/Grouping.d.ts +4 -10
- package/build/types/features/Pinning.d.ts +0 -4
- package/build/types/features/RowSelection.d.ts +1 -7
- package/build/types/features/Rows.d.ts +4 -3
- package/build/types/features/Sorting.d.ts +3 -14
- package/build/types/features/Visibility.d.ts +0 -4
- package/build/types/filterFns.d.ts +10 -52
- package/build/types/index.d.ts +6 -5
- package/build/types/types.d.ts +5 -17
- package/build/types/utils/filterRowsUtils.d.ts +3 -2
- package/build/types/utils/getCoreRowModel.d.ts +2 -0
- package/build/types/utils/getFacetedMinMaxValues.d.ts +2 -0
- package/build/types/utils/getFacetedRowModel.d.ts +2 -0
- package/build/types/utils/getFacetedUniqueValues.d.ts +2 -0
- package/build/types/utils/{getCoreRowModelSync.d.ts → getFilteredRowModel.d.ts} +1 -1
- package/build/types/utils/getGroupedRowModel.d.ts +1 -1
- package/build/types/utils/getSortedRowModel.d.ts +2 -0
- package/build/types/utils.d.ts +2 -18
- package/build/umd/index.development.js +1948 -2935
- package/build/umd/index.development.js.map +1 -1
- package/build/umd/index.production.js +1 -1
- package/build/umd/index.production.js.map +1 -1
- package/package.json +2 -1
- package/src/core.ts +197 -46
- package/src/features/Cells.ts +10 -12
- package/src/features/ColumnSizing.ts +72 -129
- package/src/features/Columns.ts +16 -15
- package/src/features/Expanding.ts +58 -105
- package/src/features/Filters.ts +223 -226
- package/src/features/Grouping.ts +51 -79
- package/src/features/Headers.ts +18 -40
- package/src/features/Ordering.ts +1 -1
- package/src/features/Pagination.ts +1 -1
- package/src/features/Pinning.ts +73 -92
- package/src/features/RowSelection.ts +71 -120
- package/src/features/Rows.ts +21 -6
- package/src/features/Sorting.ts +39 -99
- package/src/features/Visibility.ts +21 -50
- package/src/filterFns.ts +74 -147
- package/src/index.ts +12 -5
- package/src/sortingFns.ts +11 -11
- package/src/types.ts +5 -18
- package/src/utils/filterRowsUtils.ts +59 -56
- package/src/utils/{getCoreRowModelSync.ts → getCoreRowModel.ts} +3 -9
- package/src/utils/getExpandedRowModel.ts +2 -2
- package/src/utils/getFacetedMinMaxValues.ts +37 -0
- package/src/utils/getFacetedRowModel.ts +50 -0
- package/src/utils/getFacetedUniqueValues.ts +37 -0
- package/src/utils/getFilteredRowModel.ts +150 -0
- package/src/utils/getGroupedRowModel.ts +53 -62
- package/src/utils/getPaginationRowModel.ts +1 -1
- package/src/utils/{getSortedRowModelSync.ts → getSortedRowModel.ts} +7 -7
- package/src/utils.ts +29 -239
- package/build/cjs/_virtual/_rollupPluginBabelHelpers.js +0 -112
- package/build/cjs/_virtual/_rollupPluginBabelHelpers.js.map +0 -1
- package/build/cjs/utils/getColumnFilteredRowModelSync.js +0 -115
- package/build/cjs/utils/getColumnFilteredRowModelSync.js.map +0 -1
- package/build/cjs/utils/getCoreRowModelAsync.js +0 -125
- package/build/cjs/utils/getCoreRowModelAsync.js.map +0 -1
- package/build/cjs/utils/getCoreRowModelSync.js +0 -102
- package/build/cjs/utils/getCoreRowModelSync.js.map +0 -1
- package/build/cjs/utils/getGlobalFilteredRowModelSync.js +0 -91
- package/build/cjs/utils/getGlobalFilteredRowModelSync.js.map +0 -1
- package/build/cjs/utils/getSortedRowModelSync.js +0 -118
- package/build/cjs/utils/getSortedRowModelSync.js.map +0 -1
- package/build/types/utils/getColumnFilteredRowModelAsync.d.ts +0 -4
- package/build/types/utils/getColumnFilteredRowModelSync.d.ts +0 -2
- package/build/types/utils/getCoreRowModelAsync.d.ts +0 -4
- package/build/types/utils/getGlobalFilteredRowModelAsync.d.ts +0 -4
- package/build/types/utils/getGlobalFilteredRowModelSync.d.ts +0 -2
- package/build/types/utils/getSortedRowModelAsync.d.ts +0 -13
- package/build/types/utils/getSortedRowModelSync.d.ts +0 -2
- package/src/utils/getColumnFilteredRowModelAsync.ts +0 -118
- package/src/utils/getColumnFilteredRowModelSync.ts +0 -102
- package/src/utils/getCoreRowModelAsync.ts +0 -104
- package/src/utils/getGlobalFilteredRowModelAsync.ts +0 -96
- package/src/utils/getGlobalFilteredRowModelSync.ts +0 -79
- package/src/utils/getSortedRowModelAsync.ts +0 -200
|
@@ -15,16 +15,16 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
15
15
|
var utils = require('../utils.js');
|
|
16
16
|
|
|
17
17
|
//
|
|
18
|
-
|
|
19
|
-
createInstance:
|
|
18
|
+
const Headers = {
|
|
19
|
+
createInstance: instance => {
|
|
20
20
|
return {
|
|
21
|
-
createHeader:
|
|
21
|
+
createHeader: (column, options) => {
|
|
22
22
|
var _options$id;
|
|
23
23
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
id
|
|
27
|
-
column
|
|
24
|
+
const id = (_options$id = options.id) != null ? _options$id : column.id;
|
|
25
|
+
let header = {
|
|
26
|
+
id,
|
|
27
|
+
column,
|
|
28
28
|
index: options.index,
|
|
29
29
|
isPlaceholder: options.isPlaceholder,
|
|
30
30
|
placeholderId: options.placeholderId,
|
|
@@ -33,34 +33,10 @@ var Headers = {
|
|
|
33
33
|
colSpan: 0,
|
|
34
34
|
rowSpan: 0,
|
|
35
35
|
headerGroup: null,
|
|
36
|
-
|
|
37
|
-
|
|
36
|
+
getLeafHeaders: () => {
|
|
37
|
+
const leafHeaders = [];
|
|
38
38
|
|
|
39
|
-
|
|
40
|
-
if (header.subHeaders.length) {
|
|
41
|
-
header.subHeaders.forEach(recurse);
|
|
42
|
-
} else {
|
|
43
|
-
var _header$column$getSiz;
|
|
44
|
-
|
|
45
|
-
sum += (_header$column$getSiz = header.column.getSize()) != null ? _header$column$getSiz : 0;
|
|
46
|
-
}
|
|
47
|
-
};
|
|
48
|
-
|
|
49
|
-
recurse(header);
|
|
50
|
-
return sum;
|
|
51
|
-
},
|
|
52
|
-
getStart: function getStart() {
|
|
53
|
-
if (header.index > 0) {
|
|
54
|
-
var prevSiblingHeader = header.headerGroup.headers[header.index - 1];
|
|
55
|
-
return prevSiblingHeader.getStart() + prevSiblingHeader.getSize();
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
return 0;
|
|
59
|
-
},
|
|
60
|
-
getLeafHeaders: function getLeafHeaders() {
|
|
61
|
-
var leafHeaders = [];
|
|
62
|
-
|
|
63
|
-
var recurseHeader = function recurseHeader(h) {
|
|
39
|
+
const recurseHeader = h => {
|
|
64
40
|
if (h.subHeaders && h.subHeaders.length) {
|
|
65
41
|
h.subHeaders.map(recurseHeader);
|
|
66
42
|
}
|
|
@@ -71,271 +47,221 @@ var Headers = {
|
|
|
71
47
|
recurseHeader(header);
|
|
72
48
|
return leafHeaders;
|
|
73
49
|
},
|
|
74
|
-
renderHeader:
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
header: header,
|
|
85
|
-
column: column
|
|
86
|
-
}) : null;
|
|
87
|
-
}
|
|
50
|
+
renderHeader: () => column.header ? instance.render(column.header, {
|
|
51
|
+
instance,
|
|
52
|
+
header: header,
|
|
53
|
+
column
|
|
54
|
+
}) : null,
|
|
55
|
+
renderFooter: () => column.footer ? instance.render(column.footer, {
|
|
56
|
+
instance,
|
|
57
|
+
header: header,
|
|
58
|
+
column
|
|
59
|
+
}) : null
|
|
88
60
|
};
|
|
89
61
|
|
|
90
|
-
instance._features.forEach(
|
|
62
|
+
instance._features.forEach(feature => {
|
|
91
63
|
Object.assign(header, feature.createHeader == null ? void 0 : feature.createHeader(header, instance));
|
|
92
64
|
});
|
|
93
65
|
|
|
94
66
|
return header;
|
|
95
67
|
},
|
|
96
68
|
// Header Groups
|
|
97
|
-
getHeaderGroups: utils.memo(
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
});
|
|
103
|
-
var rightColumns = leafColumns.filter(function (column) {
|
|
104
|
-
return right == null ? void 0 : right.includes(column.id);
|
|
105
|
-
});
|
|
106
|
-
var centerColumns = leafColumns.filter(function (column) {
|
|
107
|
-
return !(left != null && left.includes(column.id)) && !(right != null && right.includes(column.id));
|
|
108
|
-
});
|
|
109
|
-
var headerGroups = buildHeaderGroups(allColumns, [].concat(leftColumns, centerColumns, rightColumns), instance);
|
|
69
|
+
getHeaderGroups: utils.memo(() => [instance.getAllColumns(), instance.getVisibleLeafColumns(), instance.getState().columnPinning.left, instance.getState().columnPinning.right], (allColumns, leafColumns, left, right) => {
|
|
70
|
+
const leftColumns = leafColumns.filter(column => left == null ? void 0 : left.includes(column.id));
|
|
71
|
+
const rightColumns = leafColumns.filter(column => right == null ? void 0 : right.includes(column.id));
|
|
72
|
+
const centerColumns = leafColumns.filter(column => !(left != null && left.includes(column.id)) && !(right != null && right.includes(column.id)));
|
|
73
|
+
const headerGroups = buildHeaderGroups(allColumns, [...leftColumns, ...centerColumns, ...rightColumns], instance);
|
|
110
74
|
return headerGroups;
|
|
111
75
|
}, {
|
|
112
|
-
key: 'getHeaderGroups',
|
|
113
|
-
debug:
|
|
76
|
+
key: process.env.NODE_ENV === 'development' && 'getHeaderGroups',
|
|
77
|
+
debug: () => {
|
|
114
78
|
var _instance$options$deb;
|
|
115
79
|
|
|
116
80
|
return (_instance$options$deb = instance.options.debugAll) != null ? _instance$options$deb : instance.options.debugHeaders;
|
|
117
81
|
}
|
|
118
82
|
}),
|
|
119
|
-
getCenterHeaderGroups: utils.memo(
|
|
120
|
-
|
|
121
|
-
}, function (allColumns, leafColumns, left, right) {
|
|
122
|
-
leafColumns = leafColumns.filter(function (column) {
|
|
123
|
-
return !(left != null && left.includes(column.id)) && !(right != null && right.includes(column.id));
|
|
124
|
-
});
|
|
83
|
+
getCenterHeaderGroups: utils.memo(() => [instance.getAllColumns(), instance.getVisibleLeafColumns(), instance.getState().columnPinning.left, instance.getState().columnPinning.right], (allColumns, leafColumns, left, right) => {
|
|
84
|
+
leafColumns = leafColumns.filter(column => !(left != null && left.includes(column.id)) && !(right != null && right.includes(column.id)));
|
|
125
85
|
return buildHeaderGroups(allColumns, leafColumns, instance, 'center');
|
|
126
86
|
}, {
|
|
127
|
-
key: 'getCenterHeaderGroups',
|
|
128
|
-
debug:
|
|
87
|
+
key: process.env.NODE_ENV === 'development' && 'getCenterHeaderGroups',
|
|
88
|
+
debug: () => {
|
|
129
89
|
var _instance$options$deb2;
|
|
130
90
|
|
|
131
91
|
return (_instance$options$deb2 = instance.options.debugAll) != null ? _instance$options$deb2 : instance.options.debugHeaders;
|
|
132
92
|
}
|
|
133
93
|
}),
|
|
134
|
-
getLeftHeaderGroups: utils.memo(
|
|
135
|
-
|
|
136
|
-
}, function (allColumns, leafColumns, left) {
|
|
137
|
-
leafColumns = leafColumns.filter(function (column) {
|
|
138
|
-
return left == null ? void 0 : left.includes(column.id);
|
|
139
|
-
});
|
|
94
|
+
getLeftHeaderGroups: utils.memo(() => [instance.getAllColumns(), instance.getVisibleLeafColumns(), instance.getState().columnPinning.left], (allColumns, leafColumns, left) => {
|
|
95
|
+
leafColumns = leafColumns.filter(column => left == null ? void 0 : left.includes(column.id));
|
|
140
96
|
return buildHeaderGroups(allColumns, leafColumns, instance, 'left');
|
|
141
97
|
}, {
|
|
142
|
-
key: 'getLeftHeaderGroups',
|
|
143
|
-
debug:
|
|
98
|
+
key: process.env.NODE_ENV === 'development' && 'getLeftHeaderGroups',
|
|
99
|
+
debug: () => {
|
|
144
100
|
var _instance$options$deb3;
|
|
145
101
|
|
|
146
102
|
return (_instance$options$deb3 = instance.options.debugAll) != null ? _instance$options$deb3 : instance.options.debugHeaders;
|
|
147
103
|
}
|
|
148
104
|
}),
|
|
149
|
-
getRightHeaderGroups: utils.memo(
|
|
150
|
-
|
|
151
|
-
}, function (allColumns, leafColumns, right) {
|
|
152
|
-
leafColumns = leafColumns.filter(function (column) {
|
|
153
|
-
return right == null ? void 0 : right.includes(column.id);
|
|
154
|
-
});
|
|
105
|
+
getRightHeaderGroups: utils.memo(() => [instance.getAllColumns(), instance.getVisibleLeafColumns(), instance.getState().columnPinning.right], (allColumns, leafColumns, right) => {
|
|
106
|
+
leafColumns = leafColumns.filter(column => right == null ? void 0 : right.includes(column.id));
|
|
155
107
|
return buildHeaderGroups(allColumns, leafColumns, instance, 'right');
|
|
156
108
|
}, {
|
|
157
|
-
key: 'getRightHeaderGroups',
|
|
158
|
-
debug:
|
|
109
|
+
key: process.env.NODE_ENV === 'development' && 'getRightHeaderGroups',
|
|
110
|
+
debug: () => {
|
|
159
111
|
var _instance$options$deb4;
|
|
160
112
|
|
|
161
113
|
return (_instance$options$deb4 = instance.options.debugAll) != null ? _instance$options$deb4 : instance.options.debugHeaders;
|
|
162
114
|
}
|
|
163
115
|
}),
|
|
164
116
|
// Footer Groups
|
|
165
|
-
getFooterGroups: utils.memo(
|
|
166
|
-
return [
|
|
167
|
-
}, function (headerGroups) {
|
|
168
|
-
return [].concat(headerGroups).reverse();
|
|
117
|
+
getFooterGroups: utils.memo(() => [instance.getHeaderGroups()], headerGroups => {
|
|
118
|
+
return [...headerGroups].reverse();
|
|
169
119
|
}, {
|
|
170
|
-
key: 'getFooterGroups',
|
|
171
|
-
debug:
|
|
120
|
+
key: process.env.NODE_ENV === 'development' && 'getFooterGroups',
|
|
121
|
+
debug: () => {
|
|
172
122
|
var _instance$options$deb5;
|
|
173
123
|
|
|
174
124
|
return (_instance$options$deb5 = instance.options.debugAll) != null ? _instance$options$deb5 : instance.options.debugHeaders;
|
|
175
125
|
}
|
|
176
126
|
}),
|
|
177
|
-
getLeftFooterGroups: utils.memo(
|
|
178
|
-
return [
|
|
179
|
-
}, function (headerGroups) {
|
|
180
|
-
return [].concat(headerGroups).reverse();
|
|
127
|
+
getLeftFooterGroups: utils.memo(() => [instance.getLeftHeaderGroups()], headerGroups => {
|
|
128
|
+
return [...headerGroups].reverse();
|
|
181
129
|
}, {
|
|
182
|
-
key: 'getLeftFooterGroups',
|
|
183
|
-
debug:
|
|
130
|
+
key: process.env.NODE_ENV === 'development' && 'getLeftFooterGroups',
|
|
131
|
+
debug: () => {
|
|
184
132
|
var _instance$options$deb6;
|
|
185
133
|
|
|
186
134
|
return (_instance$options$deb6 = instance.options.debugAll) != null ? _instance$options$deb6 : instance.options.debugHeaders;
|
|
187
135
|
}
|
|
188
136
|
}),
|
|
189
|
-
getCenterFooterGroups: utils.memo(
|
|
190
|
-
return [
|
|
191
|
-
}, function (headerGroups) {
|
|
192
|
-
return [].concat(headerGroups).reverse();
|
|
137
|
+
getCenterFooterGroups: utils.memo(() => [instance.getCenterHeaderGroups()], headerGroups => {
|
|
138
|
+
return [...headerGroups].reverse();
|
|
193
139
|
}, {
|
|
194
|
-
key: 'getCenterFooterGroups',
|
|
195
|
-
debug:
|
|
140
|
+
key: process.env.NODE_ENV === 'development' && 'getCenterFooterGroups',
|
|
141
|
+
debug: () => {
|
|
196
142
|
var _instance$options$deb7;
|
|
197
143
|
|
|
198
144
|
return (_instance$options$deb7 = instance.options.debugAll) != null ? _instance$options$deb7 : instance.options.debugHeaders;
|
|
199
145
|
}
|
|
200
146
|
}),
|
|
201
|
-
getRightFooterGroups: utils.memo(
|
|
202
|
-
return [
|
|
203
|
-
}, function (headerGroups) {
|
|
204
|
-
return [].concat(headerGroups).reverse();
|
|
147
|
+
getRightFooterGroups: utils.memo(() => [instance.getRightHeaderGroups()], headerGroups => {
|
|
148
|
+
return [...headerGroups].reverse();
|
|
205
149
|
}, {
|
|
206
|
-
key: 'getRightFooterGroups',
|
|
207
|
-
debug:
|
|
150
|
+
key: process.env.NODE_ENV === 'development' && 'getRightFooterGroups',
|
|
151
|
+
debug: () => {
|
|
208
152
|
var _instance$options$deb8;
|
|
209
153
|
|
|
210
154
|
return (_instance$options$deb8 = instance.options.debugAll) != null ? _instance$options$deb8 : instance.options.debugHeaders;
|
|
211
155
|
}
|
|
212
156
|
}),
|
|
213
157
|
// Flat Headers
|
|
214
|
-
getFlatHeaders: utils.memo(
|
|
215
|
-
return
|
|
216
|
-
}, function (headerGroups) {
|
|
217
|
-
return headerGroups.map(function (headerGroup) {
|
|
158
|
+
getFlatHeaders: utils.memo(() => [instance.getHeaderGroups()], headerGroups => {
|
|
159
|
+
return headerGroups.map(headerGroup => {
|
|
218
160
|
return headerGroup.headers;
|
|
219
161
|
}).flat();
|
|
220
162
|
}, {
|
|
221
|
-
key: 'getFlatHeaders',
|
|
222
|
-
debug:
|
|
163
|
+
key: process.env.NODE_ENV === 'development' && 'getFlatHeaders',
|
|
164
|
+
debug: () => {
|
|
223
165
|
var _instance$options$deb9;
|
|
224
166
|
|
|
225
167
|
return (_instance$options$deb9 = instance.options.debugAll) != null ? _instance$options$deb9 : instance.options.debugHeaders;
|
|
226
168
|
}
|
|
227
169
|
}),
|
|
228
|
-
getLeftFlatHeaders: utils.memo(
|
|
229
|
-
return
|
|
230
|
-
}, function (left) {
|
|
231
|
-
return left.map(function (headerGroup) {
|
|
170
|
+
getLeftFlatHeaders: utils.memo(() => [instance.getLeftHeaderGroups()], left => {
|
|
171
|
+
return left.map(headerGroup => {
|
|
232
172
|
return headerGroup.headers;
|
|
233
173
|
}).flat();
|
|
234
174
|
}, {
|
|
235
|
-
key: 'getLeftFlatHeaders',
|
|
236
|
-
debug:
|
|
175
|
+
key: process.env.NODE_ENV === 'development' && 'getLeftFlatHeaders',
|
|
176
|
+
debug: () => {
|
|
237
177
|
var _instance$options$deb10;
|
|
238
178
|
|
|
239
179
|
return (_instance$options$deb10 = instance.options.debugAll) != null ? _instance$options$deb10 : instance.options.debugHeaders;
|
|
240
180
|
}
|
|
241
181
|
}),
|
|
242
|
-
getCenterFlatHeaders: utils.memo(
|
|
243
|
-
return
|
|
244
|
-
}, function (left) {
|
|
245
|
-
return left.map(function (headerGroup) {
|
|
182
|
+
getCenterFlatHeaders: utils.memo(() => [instance.getCenterHeaderGroups()], left => {
|
|
183
|
+
return left.map(headerGroup => {
|
|
246
184
|
return headerGroup.headers;
|
|
247
185
|
}).flat();
|
|
248
186
|
}, {
|
|
249
|
-
key: 'getCenterFlatHeaders',
|
|
250
|
-
debug:
|
|
187
|
+
key: process.env.NODE_ENV === 'development' && 'getCenterFlatHeaders',
|
|
188
|
+
debug: () => {
|
|
251
189
|
var _instance$options$deb11;
|
|
252
190
|
|
|
253
191
|
return (_instance$options$deb11 = instance.options.debugAll) != null ? _instance$options$deb11 : instance.options.debugHeaders;
|
|
254
192
|
}
|
|
255
193
|
}),
|
|
256
|
-
getRightFlatHeaders: utils.memo(
|
|
257
|
-
return
|
|
258
|
-
}, function (left) {
|
|
259
|
-
return left.map(function (headerGroup) {
|
|
194
|
+
getRightFlatHeaders: utils.memo(() => [instance.getRightHeaderGroups()], left => {
|
|
195
|
+
return left.map(headerGroup => {
|
|
260
196
|
return headerGroup.headers;
|
|
261
197
|
}).flat();
|
|
262
198
|
}, {
|
|
263
|
-
key: 'getRightFlatHeaders',
|
|
264
|
-
debug:
|
|
199
|
+
key: process.env.NODE_ENV === 'development' && 'getRightFlatHeaders',
|
|
200
|
+
debug: () => {
|
|
265
201
|
var _instance$options$deb12;
|
|
266
202
|
|
|
267
203
|
return (_instance$options$deb12 = instance.options.debugAll) != null ? _instance$options$deb12 : instance.options.debugHeaders;
|
|
268
204
|
}
|
|
269
205
|
}),
|
|
270
206
|
// Leaf Headers
|
|
271
|
-
getCenterLeafHeaders: utils.memo(
|
|
272
|
-
return
|
|
273
|
-
}, function (flatHeaders) {
|
|
274
|
-
return flatHeaders.filter(function (header) {
|
|
207
|
+
getCenterLeafHeaders: utils.memo(() => [instance.getCenterFlatHeaders()], flatHeaders => {
|
|
208
|
+
return flatHeaders.filter(header => {
|
|
275
209
|
var _header$subHeaders;
|
|
276
210
|
|
|
277
211
|
return !((_header$subHeaders = header.subHeaders) != null && _header$subHeaders.length);
|
|
278
212
|
});
|
|
279
213
|
}, {
|
|
280
|
-
key: 'getCenterLeafHeaders',
|
|
281
|
-
debug:
|
|
214
|
+
key: process.env.NODE_ENV === 'development' && 'getCenterLeafHeaders',
|
|
215
|
+
debug: () => {
|
|
282
216
|
var _instance$options$deb13;
|
|
283
217
|
|
|
284
218
|
return (_instance$options$deb13 = instance.options.debugAll) != null ? _instance$options$deb13 : instance.options.debugHeaders;
|
|
285
219
|
}
|
|
286
220
|
}),
|
|
287
|
-
getLeftLeafHeaders: utils.memo(
|
|
288
|
-
return
|
|
289
|
-
}, function (flatHeaders) {
|
|
290
|
-
return flatHeaders.filter(function (header) {
|
|
221
|
+
getLeftLeafHeaders: utils.memo(() => [instance.getLeftFlatHeaders()], flatHeaders => {
|
|
222
|
+
return flatHeaders.filter(header => {
|
|
291
223
|
var _header$subHeaders2;
|
|
292
224
|
|
|
293
225
|
return !((_header$subHeaders2 = header.subHeaders) != null && _header$subHeaders2.length);
|
|
294
226
|
});
|
|
295
227
|
}, {
|
|
296
|
-
key: 'getLeftLeafHeaders',
|
|
297
|
-
debug:
|
|
228
|
+
key: process.env.NODE_ENV === 'development' && 'getLeftLeafHeaders',
|
|
229
|
+
debug: () => {
|
|
298
230
|
var _instance$options$deb14;
|
|
299
231
|
|
|
300
232
|
return (_instance$options$deb14 = instance.options.debugAll) != null ? _instance$options$deb14 : instance.options.debugHeaders;
|
|
301
233
|
}
|
|
302
234
|
}),
|
|
303
|
-
getRightLeafHeaders: utils.memo(
|
|
304
|
-
return
|
|
305
|
-
}, function (flatHeaders) {
|
|
306
|
-
return flatHeaders.filter(function (header) {
|
|
235
|
+
getRightLeafHeaders: utils.memo(() => [instance.getRightFlatHeaders()], flatHeaders => {
|
|
236
|
+
return flatHeaders.filter(header => {
|
|
307
237
|
var _header$subHeaders3;
|
|
308
238
|
|
|
309
239
|
return !((_header$subHeaders3 = header.subHeaders) != null && _header$subHeaders3.length);
|
|
310
240
|
});
|
|
311
241
|
}, {
|
|
312
|
-
key: 'getRightLeafHeaders',
|
|
313
|
-
debug:
|
|
242
|
+
key: process.env.NODE_ENV === 'development' && 'getRightLeafHeaders',
|
|
243
|
+
debug: () => {
|
|
314
244
|
var _instance$options$deb15;
|
|
315
245
|
|
|
316
246
|
return (_instance$options$deb15 = instance.options.debugAll) != null ? _instance$options$deb15 : instance.options.debugHeaders;
|
|
317
247
|
}
|
|
318
248
|
}),
|
|
319
|
-
getLeafHeaders: utils.memo(
|
|
320
|
-
return [instance.getLeftHeaderGroups(), instance.getCenterHeaderGroups(), instance.getRightHeaderGroups()];
|
|
321
|
-
}, function (left, center, right) {
|
|
249
|
+
getLeafHeaders: utils.memo(() => [instance.getLeftHeaderGroups(), instance.getCenterHeaderGroups(), instance.getRightHeaderGroups()], (left, center, right) => {
|
|
322
250
|
var _left$0$headers, _left$, _center$0$headers, _center$, _right$0$headers, _right$;
|
|
323
251
|
|
|
324
|
-
return [
|
|
252
|
+
return [...((_left$0$headers = (_left$ = left[0]) == null ? void 0 : _left$.headers) != null ? _left$0$headers : []), ...((_center$0$headers = (_center$ = center[0]) == null ? void 0 : _center$.headers) != null ? _center$0$headers : []), ...((_right$0$headers = (_right$ = right[0]) == null ? void 0 : _right$.headers) != null ? _right$0$headers : [])].map(header => {
|
|
325
253
|
return header.getLeafHeaders();
|
|
326
254
|
}).flat();
|
|
327
255
|
}, {
|
|
328
|
-
key: 'getLeafHeaders',
|
|
329
|
-
debug:
|
|
256
|
+
key: process.env.NODE_ENV === 'development' && 'getLeafHeaders',
|
|
257
|
+
debug: () => {
|
|
330
258
|
var _instance$options$deb16;
|
|
331
259
|
|
|
332
260
|
return (_instance$options$deb16 = instance.options.debugAll) != null ? _instance$options$deb16 : instance.options.debugHeaders;
|
|
333
261
|
}
|
|
334
262
|
}),
|
|
335
|
-
getHeader:
|
|
336
|
-
|
|
337
|
-
return d.id === id;
|
|
338
|
-
});
|
|
263
|
+
getHeader: id => {
|
|
264
|
+
const header = [...instance.getFlatHeaders(), ...instance.getCenterFlatHeaders(), ...instance.getLeftFlatHeaders(), ...instance.getRightFlatHeaders()].find(d => d.id === id);
|
|
339
265
|
|
|
340
266
|
if (!header) {
|
|
341
267
|
if (process.env.NODE_ENV !== 'production') {
|
|
@@ -358,17 +284,15 @@ function buildHeaderGroups(allColumns, columnsToGroup, instance, headerFamily) {
|
|
|
358
284
|
// build each buffer row going up
|
|
359
285
|
// placeholder for non-existent level
|
|
360
286
|
// real column for existing level
|
|
361
|
-
|
|
287
|
+
let maxDepth = 0;
|
|
362
288
|
|
|
363
|
-
|
|
289
|
+
const findMaxDepth = function (columns, depth) {
|
|
364
290
|
if (depth === void 0) {
|
|
365
291
|
depth = 1;
|
|
366
292
|
}
|
|
367
293
|
|
|
368
294
|
maxDepth = Math.max(maxDepth, depth);
|
|
369
|
-
columns.filter(
|
|
370
|
-
return column.getIsVisible();
|
|
371
|
-
}).forEach(function (column) {
|
|
295
|
+
columns.filter(column => column.getIsVisible()).forEach(column => {
|
|
372
296
|
var _column$columns;
|
|
373
297
|
|
|
374
298
|
if ((_column$columns = column.columns) != null && _column$columns.length) {
|
|
@@ -378,24 +302,24 @@ function buildHeaderGroups(allColumns, columnsToGroup, instance, headerFamily) {
|
|
|
378
302
|
};
|
|
379
303
|
|
|
380
304
|
findMaxDepth(allColumns);
|
|
381
|
-
|
|
305
|
+
let headerGroups = [];
|
|
382
306
|
|
|
383
|
-
|
|
307
|
+
const createHeaderGroup = (headersToGroup, depth) => {
|
|
384
308
|
// The header group we are creating
|
|
385
|
-
|
|
386
|
-
depth
|
|
309
|
+
const headerGroup = {
|
|
310
|
+
depth,
|
|
387
311
|
id: [headerFamily, "" + depth].filter(Boolean).join('_'),
|
|
388
312
|
headers: []
|
|
389
313
|
}; // The parent columns we're going to scan next
|
|
390
314
|
|
|
391
|
-
|
|
315
|
+
const pendingParentHeaders = []; // Scan each column for parents
|
|
392
316
|
|
|
393
|
-
headersToGroup.forEach(
|
|
317
|
+
headersToGroup.forEach(headerToGroup => {
|
|
394
318
|
// What is the latest (last) parent column?
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
319
|
+
const latestPendingParentHeader = [...pendingParentHeaders].reverse()[0];
|
|
320
|
+
const isLeafHeader = headerToGroup.column.depth === headerGroup.depth;
|
|
321
|
+
let column;
|
|
322
|
+
let isPlaceholder = false;
|
|
399
323
|
|
|
400
324
|
if (isLeafHeader && headerToGroup.column.parent) {
|
|
401
325
|
// The parent header is new
|
|
@@ -411,13 +335,11 @@ function buildHeaderGroups(allColumns, columnsToGroup, instance, headerFamily) {
|
|
|
411
335
|
latestPendingParentHeader.subHeaders.push(headerToGroup);
|
|
412
336
|
} else {
|
|
413
337
|
// This is a new header. Let's create it
|
|
414
|
-
|
|
338
|
+
const header = instance.createHeader(column, {
|
|
415
339
|
id: [headerFamily, depth, column.id, headerToGroup == null ? void 0 : headerToGroup.id].filter(Boolean).join('_'),
|
|
416
|
-
isPlaceholder
|
|
417
|
-
placeholderId: isPlaceholder ? "" + pendingParentHeaders.filter(
|
|
418
|
-
|
|
419
|
-
}).length : undefined,
|
|
420
|
-
depth: depth,
|
|
340
|
+
isPlaceholder,
|
|
341
|
+
placeholderId: isPlaceholder ? "" + pendingParentHeaders.filter(d => d.column === column).length : undefined,
|
|
342
|
+
depth,
|
|
421
343
|
index: pendingParentHeaders.length
|
|
422
344
|
}); // Add the headerToGroup as a subHeader of the new header
|
|
423
345
|
|
|
@@ -437,31 +359,29 @@ function buildHeaderGroups(allColumns, columnsToGroup, instance, headerFamily) {
|
|
|
437
359
|
}
|
|
438
360
|
};
|
|
439
361
|
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
});
|
|
445
|
-
});
|
|
362
|
+
const bottomHeaders = columnsToGroup.map((column, index) => instance.createHeader(column, {
|
|
363
|
+
depth: maxDepth,
|
|
364
|
+
index
|
|
365
|
+
}));
|
|
446
366
|
createHeaderGroup(bottomHeaders, maxDepth - 1);
|
|
447
367
|
headerGroups.reverse(); // headerGroups = headerGroups.filter(headerGroup => {
|
|
448
368
|
// return !headerGroup.headers.every(header => header.isPlaceholder)
|
|
449
369
|
// })
|
|
450
370
|
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
var rowSpan = 0;
|
|
458
|
-
var childRowSpans = [0];
|
|
371
|
+
const recurseHeadersForSpans = headers => {
|
|
372
|
+
const filteredHeaders = headers.filter(header => header.column.getIsVisible());
|
|
373
|
+
return filteredHeaders.map(header => {
|
|
374
|
+
let colSpan = 0;
|
|
375
|
+
let rowSpan = 0;
|
|
376
|
+
let childRowSpans = [0];
|
|
459
377
|
|
|
460
378
|
if (header.subHeaders && header.subHeaders.length) {
|
|
461
379
|
childRowSpans = [];
|
|
462
|
-
recurseHeadersForSpans(header.subHeaders).forEach(
|
|
463
|
-
|
|
464
|
-
|
|
380
|
+
recurseHeadersForSpans(header.subHeaders).forEach(_ref => {
|
|
381
|
+
let {
|
|
382
|
+
colSpan: childColSpan,
|
|
383
|
+
rowSpan: childRowSpan
|
|
384
|
+
} = _ref;
|
|
465
385
|
colSpan += childColSpan;
|
|
466
386
|
childRowSpans.push(childRowSpan);
|
|
467
387
|
});
|
|
@@ -469,13 +389,13 @@ function buildHeaderGroups(allColumns, columnsToGroup, instance, headerFamily) {
|
|
|
469
389
|
colSpan = 1;
|
|
470
390
|
}
|
|
471
391
|
|
|
472
|
-
|
|
392
|
+
const minChildRowSpan = Math.min(...childRowSpans);
|
|
473
393
|
rowSpan = rowSpan + minChildRowSpan;
|
|
474
394
|
header.colSpan = colSpan > 0 ? colSpan : undefined;
|
|
475
395
|
header.rowSpan = rowSpan > 0 ? rowSpan : undefined;
|
|
476
396
|
return {
|
|
477
|
-
colSpan
|
|
478
|
-
rowSpan
|
|
397
|
+
colSpan,
|
|
398
|
+
rowSpan
|
|
479
399
|
};
|
|
480
400
|
});
|
|
481
401
|
};
|