@tanstack/table-core 8.0.0-alpha.63 → 8.0.0-alpha.67

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (114) hide show
  1. package/build/cjs/core.js +7 -4
  2. package/build/cjs/core.js.map +1 -1
  3. package/build/cjs/features/Cells.js +2 -2
  4. package/build/cjs/features/Cells.js.map +1 -1
  5. package/build/cjs/features/ColumnSizing.js +68 -143
  6. package/build/cjs/features/ColumnSizing.js.map +1 -1
  7. package/build/cjs/features/Columns.js +7 -7
  8. package/build/cjs/features/Columns.js.map +1 -1
  9. package/build/cjs/features/Expanding.js +52 -90
  10. package/build/cjs/features/Expanding.js.map +1 -1
  11. package/build/cjs/features/Filters.js +213 -191
  12. package/build/cjs/features/Filters.js.map +1 -1
  13. package/build/cjs/features/Grouping.js +54 -80
  14. package/build/cjs/features/Grouping.js.map +1 -1
  15. package/build/cjs/features/Headers.js +16 -40
  16. package/build/cjs/features/Headers.js.map +1 -1
  17. package/build/cjs/features/Ordering.js +6 -5
  18. package/build/cjs/features/Ordering.js.map +1 -1
  19. package/build/cjs/features/Pagination.js +5 -5
  20. package/build/cjs/features/Pagination.js.map +1 -1
  21. package/build/cjs/features/Pinning.js +82 -168
  22. package/build/cjs/features/Pinning.js.map +1 -1
  23. package/build/cjs/features/RowSelection.js +67 -119
  24. package/build/cjs/features/RowSelection.js.map +1 -1
  25. package/build/cjs/features/Sorting.js +41 -91
  26. package/build/cjs/features/Sorting.js.map +1 -1
  27. package/build/cjs/features/Visibility.js +20 -43
  28. package/build/cjs/features/Visibility.js.map +1 -1
  29. package/build/cjs/filterFns.js +51 -108
  30. package/build/cjs/filterFns.js.map +1 -1
  31. package/build/cjs/index.js +5 -4
  32. package/build/cjs/index.js.map +1 -1
  33. package/build/cjs/utils/filterRowsUtils.js +21 -0
  34. package/build/cjs/utils/filterRowsUtils.js.map +1 -1
  35. package/build/cjs/utils/getCoreRowModelAsync.js +1 -1
  36. package/build/cjs/utils/getCoreRowModelAsync.js.map +1 -1
  37. package/build/cjs/utils/getCoreRowModelSync.js +1 -1
  38. package/build/cjs/utils/getCoreRowModelSync.js.map +1 -1
  39. package/build/cjs/utils/getExpandedRowModel.js +2 -2
  40. package/build/cjs/utils/getExpandedRowModel.js.map +1 -1
  41. package/build/cjs/utils/getFilteredRowModelSync.js +125 -0
  42. package/build/cjs/utils/getFilteredRowModelSync.js.map +1 -0
  43. package/build/cjs/utils/getGroupedRowModel.js +1 -1
  44. package/build/cjs/utils/getGroupedRowModel.js.map +1 -1
  45. package/build/cjs/utils/getPaginationRowModel.js +1 -1
  46. package/build/cjs/utils/getPaginationRowModel.js.map +1 -1
  47. package/build/cjs/utils/getSortedRowModelSync.js +3 -3
  48. package/build/cjs/utils/getSortedRowModelSync.js.map +1 -1
  49. package/build/cjs/utils.js +2 -6
  50. package/build/cjs/utils.js.map +1 -1
  51. package/build/esm/index.js +899 -1357
  52. package/build/esm/index.js.map +1 -1
  53. package/build/stats-html.html +1 -1
  54. package/build/stats-react.json +404 -418
  55. package/build/types/features/ColumnSizing.d.ts +2 -13
  56. package/build/types/features/Expanding.d.ts +3 -13
  57. package/build/types/features/Filters.d.ts +38 -42
  58. package/build/types/features/Grouping.d.ts +3 -18
  59. package/build/types/features/Ordering.d.ts +2 -6
  60. package/build/types/features/Pinning.d.ts +2 -19
  61. package/build/types/features/RowSelection.d.ts +4 -15
  62. package/build/types/features/Sorting.d.ts +5 -22
  63. package/build/types/features/Visibility.d.ts +2 -15
  64. package/build/types/filterFns.d.ts +10 -52
  65. package/build/types/index.d.ts +1 -2
  66. package/build/types/types.d.ts +2 -4
  67. package/build/types/utils/filterRowsUtils.d.ts +1 -0
  68. package/build/types/utils/{getColumnFilteredRowModelAsync.d.ts → getFilteredRowModelAsync.d.ts} +1 -1
  69. package/build/types/utils/getFilteredRowModelSync.d.ts +2 -0
  70. package/build/types/utils.d.ts +2 -2
  71. package/build/umd/index.development.js +867 -1323
  72. package/build/umd/index.development.js.map +1 -1
  73. package/build/umd/index.production.js +1 -1
  74. package/build/umd/index.production.js.map +1 -1
  75. package/package.json +2 -1
  76. package/src/core.ts +5 -5
  77. package/src/features/Cells.ts +4 -2
  78. package/src/features/ColumnSizing.ts +69 -126
  79. package/src/features/Columns.ts +12 -7
  80. package/src/features/Expanding.ts +62 -107
  81. package/src/features/Filters.ts +293 -243
  82. package/src/features/Grouping.ts +59 -81
  83. package/src/features/Headers.ts +18 -40
  84. package/src/features/Ordering.ts +7 -9
  85. package/src/features/Pagination.ts +4 -3
  86. package/src/features/Pinning.ts +77 -164
  87. package/src/features/RowSelection.ts +76 -123
  88. package/src/features/Sorting.ts +48 -106
  89. package/src/features/Visibility.ts +25 -52
  90. package/src/filterFns.ts +74 -147
  91. package/src/index.ts +1 -2
  92. package/src/types.ts +2 -2
  93. package/src/utils/filterRowsUtils.ts +24 -0
  94. package/src/utils/getCoreRowModelAsync.ts +1 -1
  95. package/src/utils/getCoreRowModelSync.ts +1 -1
  96. package/src/utils/getExpandedRowModel.ts +2 -2
  97. package/src/utils/getFilteredRowModelAsync.ts +157 -0
  98. package/src/utils/getFilteredRowModelSync.ts +141 -0
  99. package/src/utils/getGroupedRowModel.ts +1 -1
  100. package/src/utils/getPaginationRowModel.ts +1 -1
  101. package/src/utils/getSortedRowModelAsync.ts +1 -1
  102. package/src/utils/getSortedRowModelSync.ts +4 -4
  103. package/src/utils.ts +2 -4
  104. package/build/cjs/utils/getColumnFilteredRowModelSync.js +0 -115
  105. package/build/cjs/utils/getColumnFilteredRowModelSync.js.map +0 -1
  106. package/build/cjs/utils/getGlobalFilteredRowModelSync.js +0 -91
  107. package/build/cjs/utils/getGlobalFilteredRowModelSync.js.map +0 -1
  108. package/build/types/utils/getColumnFilteredRowModelSync.d.ts +0 -2
  109. package/build/types/utils/getGlobalFilteredRowModelAsync.d.ts +0 -4
  110. package/build/types/utils/getGlobalFilteredRowModelSync.d.ts +0 -2
  111. package/src/utils/getColumnFilteredRowModelAsync.ts +0 -118
  112. package/src/utils/getColumnFilteredRowModelSync.ts +0 -102
  113. package/src/utils/getGlobalFilteredRowModelAsync.ts +0 -96
  114. package/src/utils/getGlobalFilteredRowModelSync.ts +0 -79
@@ -17,13 +17,13 @@ var utils = require('../utils.js');
17
17
 
18
18
  //
19
19
  var Pinning = {
20
- getInitialState: function getInitialState() {
21
- return {
20
+ getInitialState: function getInitialState(state) {
21
+ return _rollupPluginBabelHelpers["extends"]({
22
22
  columnPinning: {
23
23
  left: [],
24
24
  right: []
25
25
  }
26
- };
26
+ }, state);
27
27
  },
28
28
  getDefaultOptions: function getDefaultOptions(instance) {
29
29
  return {
@@ -32,17 +32,77 @@ var Pinning = {
32
32
  },
33
33
  createColumn: function createColumn(column, instance) {
34
34
  return {
35
- getCanPin: function getCanPin() {
36
- return instance.getColumnCanPin(column.id);
35
+ pin: function pin(position) {
36
+ var columnIds = column.getLeafColumns().map(function (d) {
37
+ return d.id;
38
+ }).filter(Boolean);
39
+ instance.setColumnPinning(function (old) {
40
+ var _old$left3, _old$right3;
41
+
42
+ if (position === 'right') {
43
+ var _old$left, _old$right;
44
+
45
+ return {
46
+ left: ((_old$left = old == null ? void 0 : old.left) != null ? _old$left : []).filter(function (d) {
47
+ return !(columnIds != null && columnIds.includes(d));
48
+ }),
49
+ right: [].concat(((_old$right = old == null ? void 0 : old.right) != null ? _old$right : []).filter(function (d) {
50
+ return !(columnIds != null && columnIds.includes(d));
51
+ }), columnIds)
52
+ };
53
+ }
54
+
55
+ if (position === 'left') {
56
+ var _old$left2, _old$right2;
57
+
58
+ return {
59
+ left: [].concat(((_old$left2 = old == null ? void 0 : old.left) != null ? _old$left2 : []).filter(function (d) {
60
+ return !(columnIds != null && columnIds.includes(d));
61
+ }), columnIds),
62
+ right: ((_old$right2 = old == null ? void 0 : old.right) != null ? _old$right2 : []).filter(function (d) {
63
+ return !(columnIds != null && columnIds.includes(d));
64
+ })
65
+ };
66
+ }
67
+
68
+ return {
69
+ left: ((_old$left3 = old == null ? void 0 : old.left) != null ? _old$left3 : []).filter(function (d) {
70
+ return !(columnIds != null && columnIds.includes(d));
71
+ }),
72
+ right: ((_old$right3 = old == null ? void 0 : old.right) != null ? _old$right3 : []).filter(function (d) {
73
+ return !(columnIds != null && columnIds.includes(d));
74
+ })
75
+ };
76
+ });
37
77
  },
38
- getPinnedIndex: function getPinnedIndex() {
39
- return instance.getColumnPinnedIndex(column.id);
78
+ getCanPin: function getCanPin() {
79
+ var leafColumns = column.getLeafColumns();
80
+ return leafColumns.some(function (d) {
81
+ var _d$enablePinning, _instance$options$ena;
82
+
83
+ return ((_d$enablePinning = d.enablePinning) != null ? _d$enablePinning : true) && ((_instance$options$ena = instance.options.enablePinning) != null ? _instance$options$ena : true);
84
+ });
40
85
  },
41
86
  getIsPinned: function getIsPinned() {
42
- return instance.getColumnIsPinned(column.id);
87
+ var leafColumnIds = column.getLeafColumns().map(function (d) {
88
+ return d.id;
89
+ });
90
+ var _instance$getState$co = instance.getState().columnPinning,
91
+ left = _instance$getState$co.left,
92
+ right = _instance$getState$co.right;
93
+ var isLeft = leafColumnIds.some(function (d) {
94
+ return left == null ? void 0 : left.includes(d);
95
+ });
96
+ var isRight = leafColumnIds.some(function (d) {
97
+ return right == null ? void 0 : right.includes(d);
98
+ });
99
+ return isLeft ? 'left' : isRight ? 'right' : false;
43
100
  },
44
- pin: function pin(position) {
45
- return instance.pinColumn(column.id, position);
101
+ getPinnedIndex: function getPinnedIndex() {
102
+ var _instance$getState$co2, _instance$getState$co3, _instance$getState$co4;
103
+
104
+ var position = column.getIsPinned();
105
+ return position ? (_instance$getState$co2 = (_instance$getState$co3 = instance.getState().columnPinning) == null ? void 0 : (_instance$getState$co4 = _instance$getState$co3[position]) == null ? void 0 : _instance$getState$co4.indexOf(column.id)) != null ? _instance$getState$co2 : -1 : 0;
46
106
  }
47
107
  };
48
108
  },
@@ -56,7 +116,7 @@ var Pinning = {
56
116
  return !leftAndRight.includes(d.columnId);
57
117
  });
58
118
  }, {
59
- key: 'row.getCenterVisibleCells',
119
+ key: process.env.NODE_ENV === 'production' && 'row.getCenterVisibleCells',
60
120
  debug: function debug() {
61
121
  var _instance$options$deb;
62
122
 
@@ -77,7 +137,7 @@ var Pinning = {
77
137
  });
78
138
  return cells;
79
139
  }, {
80
- key: 'row.getLeftVisibleCells',
140
+ key: process.env.NODE_ENV === 'production' && 'row.getLeftVisibleCells',
81
141
  debug: function debug() {
82
142
  var _instance$options$deb2;
83
143
 
@@ -98,7 +158,7 @@ var Pinning = {
98
158
  });
99
159
  return cells;
100
160
  }, {
101
- key: 'row.getRightVisibleCells',
161
+ key: process.env.NODE_ENV === 'production' && 'row.getRightVisibleCells',
102
162
  debug: function debug() {
103
163
  var _instance$options$deb3;
104
164
 
@@ -107,67 +167,6 @@ var Pinning = {
107
167
  })
108
168
  };
109
169
  },
110
- createCell: function createCell(cell, instance) {
111
- return {
112
- getCenterVisibleCells: utils.memo(function () {
113
- return [cell.row._getAllVisibleCells(), instance.getState().columnPinning.left, instance.getState().columnPinning.right];
114
- }, function (allCells, left, right) {
115
- var leftAndRight = [].concat(left != null ? left : [], right != null ? right : []);
116
- return allCells.filter(function (d) {
117
- return !leftAndRight.includes(d.columnId);
118
- });
119
- }, {
120
- key: 'row.getCenterVisibleCells',
121
- debug: function debug() {
122
- var _instance$options$deb4;
123
-
124
- return (_instance$options$deb4 = instance.options.debugAll) != null ? _instance$options$deb4 : instance.options.debugRows;
125
- }
126
- }),
127
- getLeftVisibleCells: utils.memo(function () {
128
- return [cell.row._getAllVisibleCells(), instance.getState().columnPinning.left,,];
129
- }, function (allCells, left) {
130
- var cells = (left != null ? left : []).map(function (columnId) {
131
- return allCells.find(function (cell) {
132
- return cell.columnId === columnId;
133
- });
134
- }).filter(Boolean).map(function (d) {
135
- return _rollupPluginBabelHelpers["extends"]({}, d, {
136
- position: 'left'
137
- });
138
- });
139
- return cells;
140
- }, {
141
- key: 'row.getLeftVisibleCells',
142
- debug: function debug() {
143
- var _instance$options$deb5;
144
-
145
- return (_instance$options$deb5 = instance.options.debugAll) != null ? _instance$options$deb5 : instance.options.debugRows;
146
- }
147
- }),
148
- getRightVisibleCells: utils.memo(function () {
149
- return [cell.row._getAllVisibleCells(), instance.getState().columnPinning.right];
150
- }, function (allCells, right) {
151
- var cells = (right != null ? right : []).map(function (columnId) {
152
- return allCells.find(function (cell) {
153
- return cell.columnId === columnId;
154
- });
155
- }).filter(Boolean).map(function (d) {
156
- return _rollupPluginBabelHelpers["extends"]({}, d, {
157
- position: 'left'
158
- });
159
- });
160
- return cells;
161
- }, {
162
- key: 'row.getRightVisibleCells',
163
- debug: function debug() {
164
- var _instance$options$deb6;
165
-
166
- return (_instance$options$deb6 = instance.options.debugAll) != null ? _instance$options$deb6 : instance.options.debugRows;
167
- }
168
- })
169
- };
170
- },
171
170
  createInstance: function createInstance(instance) {
172
171
  return {
173
172
  setColumnPinning: function setColumnPinning(updater) {
@@ -178,91 +177,6 @@ var Pinning = {
178
177
 
179
178
  return instance.setColumnPinning((_instance$initialStat = (_instance$initialStat2 = instance.initialState) == null ? void 0 : _instance$initialStat2.columnPinning) != null ? _instance$initialStat : {});
180
179
  },
181
- pinColumn: function pinColumn(columnId, position) {
182
- var column = instance.getColumn(columnId);
183
- var columnIds = column == null ? void 0 : column.getLeafColumns().map(function (d) {
184
- return d.id;
185
- }).filter(Boolean);
186
- instance.setColumnPinning(function (old) {
187
- var _old$left3, _old$right3;
188
-
189
- if (position === 'right') {
190
- var _old$left, _old$right;
191
-
192
- return {
193
- left: ((_old$left = old == null ? void 0 : old.left) != null ? _old$left : []).filter(function (d) {
194
- return !(columnIds != null && columnIds.includes(d));
195
- }),
196
- right: [].concat(((_old$right = old == null ? void 0 : old.right) != null ? _old$right : []).filter(function (d) {
197
- return !(columnIds != null && columnIds.includes(d));
198
- }), columnIds)
199
- };
200
- }
201
-
202
- if (position === 'left') {
203
- var _old$left2, _old$right2;
204
-
205
- return {
206
- left: [].concat(((_old$left2 = old == null ? void 0 : old.left) != null ? _old$left2 : []).filter(function (d) {
207
- return !(columnIds != null && columnIds.includes(d));
208
- }), columnIds),
209
- right: ((_old$right2 = old == null ? void 0 : old.right) != null ? _old$right2 : []).filter(function (d) {
210
- return !(columnIds != null && columnIds.includes(d));
211
- })
212
- };
213
- }
214
-
215
- return {
216
- left: ((_old$left3 = old == null ? void 0 : old.left) != null ? _old$left3 : []).filter(function (d) {
217
- return !(columnIds != null && columnIds.includes(d));
218
- }),
219
- right: ((_old$right3 = old == null ? void 0 : old.right) != null ? _old$right3 : []).filter(function (d) {
220
- return !(columnIds != null && columnIds.includes(d));
221
- })
222
- };
223
- });
224
- },
225
- getColumnCanPin: function getColumnCanPin(columnId) {
226
- var column = instance.getColumn(columnId);
227
-
228
- if (!column) {
229
- throw new Error();
230
- }
231
-
232
- var leafColumns = column.getLeafColumns();
233
- return leafColumns.some(function (d) {
234
- var _ref, _ref2, _d$enablePinning;
235
-
236
- return (_ref = (_ref2 = (_d$enablePinning = d.enablePinning) != null ? _d$enablePinning : instance.options.enablePinning) != null ? _ref2 : d.defaultCanPin) != null ? _ref : !!d.accessorFn;
237
- });
238
- },
239
- getColumnIsPinned: function getColumnIsPinned(columnId) {
240
- var column = instance.getColumn(columnId);
241
-
242
- if (!column) {
243
- throw new Error();
244
- }
245
-
246
- var leafColumnIds = column.getLeafColumns().map(function (d) {
247
- return d.id;
248
- });
249
- var _instance$getState$co = instance.getState().columnPinning,
250
- left = _instance$getState$co.left,
251
- right = _instance$getState$co.right;
252
- var isLeft = leafColumnIds.some(function (d) {
253
- return left == null ? void 0 : left.includes(d);
254
- });
255
- var isRight = leafColumnIds.some(function (d) {
256
- return right == null ? void 0 : right.includes(d);
257
- });
258
- return isLeft ? 'left' : isRight ? 'right' : false;
259
- },
260
- getColumnPinnedIndex: function getColumnPinnedIndex(columnId) {
261
- var _instance$getState$co2, _instance$getState$co3, _instance$getState$co4;
262
-
263
- var position = instance.getColumnIsPinned(columnId);
264
- return position ? (_instance$getState$co2 = (_instance$getState$co3 = instance.getState().columnPinning) == null ? void 0 : (_instance$getState$co4 = _instance$getState$co3[position]) == null ? void 0 : _instance$getState$co4.indexOf(columnId)) != null ? _instance$getState$co2 : -1 : 0;
265
- },
266
180
  getIsSomeColumnsPinned: function getIsSomeColumnsPinned() {
267
181
  var _instance$getState$co5 = instance.getState().columnPinning,
268
182
  left = _instance$getState$co5.left,
@@ -278,11 +192,11 @@ var Pinning = {
278
192
  });
279
193
  }).filter(Boolean);
280
194
  }, {
281
- key: 'getLeftLeafColumns',
195
+ key: process.env.NODE_ENV === 'development' && 'getLeftLeafColumns',
282
196
  debug: function debug() {
283
- var _instance$options$deb7;
197
+ var _instance$options$deb4;
284
198
 
285
- return (_instance$options$deb7 = instance.options.debugAll) != null ? _instance$options$deb7 : instance.options.debugColumns;
199
+ return (_instance$options$deb4 = instance.options.debugAll) != null ? _instance$options$deb4 : instance.options.debugColumns;
286
200
  }
287
201
  }),
288
202
  getRightLeafColumns: utils.memo(function () {
@@ -294,11 +208,11 @@ var Pinning = {
294
208
  });
295
209
  }).filter(Boolean);
296
210
  }, {
297
- key: 'getRightLeafColumns',
211
+ key: process.env.NODE_ENV === 'development' && 'getRightLeafColumns',
298
212
  debug: function debug() {
299
- var _instance$options$deb8;
213
+ var _instance$options$deb5;
300
214
 
301
- return (_instance$options$deb8 = instance.options.debugAll) != null ? _instance$options$deb8 : instance.options.debugColumns;
215
+ return (_instance$options$deb5 = instance.options.debugAll) != null ? _instance$options$deb5 : instance.options.debugColumns;
302
216
  }
303
217
  }),
304
218
  getCenterLeafColumns: utils.memo(function () {
@@ -309,11 +223,11 @@ var Pinning = {
309
223
  return !leftAndRight.includes(d.id);
310
224
  });
311
225
  }, {
312
- key: 'getCenterLeafColumns',
226
+ key: process.env.NODE_ENV === 'development' && 'getCenterLeafColumns',
313
227
  debug: function debug() {
314
- var _instance$options$deb9;
228
+ var _instance$options$deb6;
315
229
 
316
- return (_instance$options$deb9 = instance.options.debugAll) != null ? _instance$options$deb9 : instance.options.debugColumns;
230
+ return (_instance$options$deb6 = instance.options.debugAll) != null ? _instance$options$deb6 : instance.options.debugColumns;
317
231
  }
318
232
  })
319
233
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Pinning.js","sources":["../../../src/features/Pinning.ts"],"sourcesContent":["import {\n OnChangeFn,\n Updater,\n TableInstance,\n Column,\n TableGenerics,\n Row,\n Cell,\n} from '../types'\nimport { makeStateUpdater, memo } from '../utils'\n\nexport type ColumnPinningPosition = false | 'left' | 'right'\n\nexport type ColumnPinningState = {\n left?: string[]\n right?: string[]\n}\n\nexport type ColumnPinningTableState = {\n columnPinning: ColumnPinningState\n}\n\nexport type ColumnPinningOptions = {\n onColumnPinningChange?: OnChangeFn<ColumnPinningState>\n enablePinning?: boolean\n}\n\nexport type ColumnPinningDefaultOptions = {\n onColumnPinningChange: OnChangeFn<ColumnPinningState>\n}\n\nexport type ColumnPinningColumnDef = {\n enablePinning?: boolean\n defaultCanPin?: boolean\n}\n\nexport type ColumnPinningColumn = {\n getCanPin: () => boolean\n getPinnedIndex: () => number\n getIsPinned: () => ColumnPinningPosition\n pin: (position: ColumnPinningPosition) => void\n}\n\nexport type ColumnPinningRow<TGenerics extends TableGenerics> = {\n getLeftVisibleCells: () => Cell<TGenerics>[]\n getCenterVisibleCells: () => Cell<TGenerics>[]\n getRightVisibleCells: () => Cell<TGenerics>[]\n}\n\nexport type ColumnPinningCell<TGenerics extends TableGenerics> = {\n getLeftVisibleCells: () => Cell<TGenerics>[]\n getCenterVisibleCells: () => Cell<TGenerics>[]\n getRightVisibleCells: () => Cell<TGenerics>[]\n}\n\nexport type ColumnPinningInstance<TGenerics extends TableGenerics> = {\n setColumnPinning: (updater: Updater<ColumnPinningState>) => void\n resetColumnPinning: () => void\n pinColumn: (columnId: string, position: ColumnPinningPosition) => void\n getColumnCanPin: (columnId: string) => boolean\n getColumnIsPinned: (columnId: string) => ColumnPinningPosition\n getColumnPinnedIndex: (columnId: string) => number\n getIsSomeColumnsPinned: () => boolean\n getLeftLeafColumns: () => Column<TGenerics>[]\n getRightLeafColumns: () => Column<TGenerics>[]\n getCenterLeafColumns: () => Column<TGenerics>[]\n}\n\n//\n\nexport const Pinning = {\n getInitialState: (): ColumnPinningTableState => {\n return {\n columnPinning: {\n left: [],\n right: [],\n },\n }\n },\n\n getDefaultOptions: <TGenerics extends TableGenerics>(\n instance: TableInstance<TGenerics>\n ): ColumnPinningDefaultOptions => {\n return {\n onColumnPinningChange: makeStateUpdater('columnPinning', instance),\n }\n },\n\n createColumn: <TGenerics extends TableGenerics>(\n column: Column<TGenerics>,\n instance: TableInstance<TGenerics>\n ): ColumnPinningColumn => {\n return {\n getCanPin: () => instance.getColumnCanPin(column.id),\n getPinnedIndex: () => instance.getColumnPinnedIndex(column.id),\n getIsPinned: () => instance.getColumnIsPinned(column.id),\n pin: position => instance.pinColumn(column.id, position),\n }\n },\n\n createRow: <TGenerics extends TableGenerics>(\n row: Row<TGenerics>,\n instance: TableInstance<TGenerics>\n ): ColumnPinningRow<TGenerics> => {\n return {\n getCenterVisibleCells: memo(\n () => [\n row._getAllVisibleCells(),\n instance.getState().columnPinning.left,\n instance.getState().columnPinning.right,\n ],\n (allCells, left, right) => {\n const leftAndRight: string[] = [...(left ?? []), ...(right ?? [])]\n\n return allCells.filter(d => !leftAndRight.includes(d.columnId))\n },\n {\n key: 'row.getCenterVisibleCells',\n debug: () => instance.options.debugAll ?? instance.options.debugRows,\n }\n ),\n getLeftVisibleCells: memo(\n () => [\n row._getAllVisibleCells(),\n instance.getState().columnPinning.left,\n ,\n ],\n (allCells, left) => {\n const cells = (left ?? [])\n .map(columnId => allCells.find(cell => cell.columnId === columnId)!)\n .filter(Boolean)\n .map(d => ({ ...d, position: 'left' } as Cell<TGenerics>))\n\n return cells\n },\n {\n key: 'row.getLeftVisibleCells',\n debug: () => instance.options.debugAll ?? instance.options.debugRows,\n }\n ),\n getRightVisibleCells: memo(\n () => [\n row._getAllVisibleCells(),\n instance.getState().columnPinning.right,\n ],\n (allCells, right) => {\n const cells = (right ?? [])\n .map(columnId => allCells.find(cell => cell.columnId === columnId)!)\n .filter(Boolean)\n .map(d => ({ ...d, position: 'left' } as Cell<TGenerics>))\n\n return cells\n },\n {\n key: 'row.getRightVisibleCells',\n debug: () => instance.options.debugAll ?? instance.options.debugRows,\n }\n ),\n }\n },\n\n createCell: <TGenerics extends TableGenerics>(\n cell: Cell<TGenerics>,\n instance: TableInstance<TGenerics>\n ): ColumnPinningCell<TGenerics> => {\n return {\n getCenterVisibleCells: memo(\n () => [\n cell.row._getAllVisibleCells(),\n instance.getState().columnPinning.left,\n instance.getState().columnPinning.right,\n ],\n (allCells, left, right) => {\n const leftAndRight: string[] = [...(left ?? []), ...(right ?? [])]\n\n return allCells.filter(d => !leftAndRight.includes(d.columnId))\n },\n {\n key: 'row.getCenterVisibleCells',\n debug: () => instance.options.debugAll ?? instance.options.debugRows,\n }\n ),\n getLeftVisibleCells: memo(\n () => [\n cell.row._getAllVisibleCells(),\n instance.getState().columnPinning.left,\n ,\n ],\n (allCells, left) => {\n const cells = (left ?? [])\n .map(columnId => allCells.find(cell => cell.columnId === columnId)!)\n .filter(Boolean)\n .map(d => ({ ...d, position: 'left' } as Cell<TGenerics>))\n\n return cells\n },\n {\n key: 'row.getLeftVisibleCells',\n debug: () => instance.options.debugAll ?? instance.options.debugRows,\n }\n ),\n getRightVisibleCells: memo(\n () => [\n cell.row._getAllVisibleCells(),\n instance.getState().columnPinning.right,\n ],\n (allCells, right) => {\n const cells = (right ?? [])\n .map(columnId => allCells.find(cell => cell.columnId === columnId)!)\n .filter(Boolean)\n .map(d => ({ ...d, position: 'left' } as Cell<TGenerics>))\n\n return cells\n },\n {\n key: 'row.getRightVisibleCells',\n debug: () => instance.options.debugAll ?? instance.options.debugRows,\n }\n ),\n }\n },\n\n createInstance: <TGenerics extends TableGenerics>(\n instance: TableInstance<TGenerics>\n ): ColumnPinningInstance<TGenerics> => {\n return {\n setColumnPinning: updater =>\n instance.options.onColumnPinningChange?.(updater),\n\n resetColumnPinning: () =>\n instance.setColumnPinning(instance.initialState?.columnPinning ?? {}),\n\n pinColumn: (columnId, position) => {\n const column = instance.getColumn(columnId)\n\n const columnIds = column\n ?.getLeafColumns()\n .map(d => d.id)\n .filter(Boolean) as string[]\n\n instance.setColumnPinning(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: [\n ...(old?.left ?? []).filter(d => !columnIds?.includes(d)),\n ...columnIds,\n ],\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\n getColumnCanPin: columnId => {\n const column = instance.getColumn(columnId)\n\n if (!column) {\n throw new Error()\n }\n\n const leafColumns = column.getLeafColumns()\n\n return leafColumns.some(\n d =>\n d.enablePinning ??\n instance.options.enablePinning ??\n d.defaultCanPin ??\n !!d.accessorFn\n )\n },\n\n getColumnIsPinned: columnId => {\n const column = instance.getColumn(columnId)\n\n if (!column) {\n throw new Error()\n }\n\n const leafColumnIds = column.getLeafColumns().map(d => d.id)\n\n const { left, right } = instance.getState().columnPinning\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\n getColumnPinnedIndex: columnId => {\n const position = instance.getColumnIsPinned(columnId)\n\n return position\n ? instance.getState().columnPinning?.[position]?.indexOf(columnId) ??\n -1\n : 0\n },\n\n getIsSomeColumnsPinned: () => {\n const { left, right } = instance.getState().columnPinning\n\n return Boolean(left?.length || right?.length)\n },\n\n getLeftLeafColumns: memo(\n () => [\n instance.getAllLeafColumns(),\n instance.getState().columnPinning.left,\n ],\n (allColumns, left) => {\n return (left ?? [])\n .map(columnId => allColumns.find(column => column.id === columnId)!)\n .filter(Boolean)\n },\n {\n key: 'getLeftLeafColumns',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n\n getRightLeafColumns: memo(\n () => [\n instance.getAllLeafColumns(),\n instance.getState().columnPinning.right,\n ],\n (allColumns, right) => {\n return (right ?? [])\n .map(columnId => allColumns.find(column => column.id === columnId)!)\n .filter(Boolean)\n },\n {\n key: 'getRightLeafColumns',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n\n getCenterLeafColumns: memo(\n () => [\n instance.getAllLeafColumns(),\n instance.getState().columnPinning.left,\n instance.getState().columnPinning.right,\n ],\n (allColumns, left, right) => {\n const leftAndRight: string[] = [...(left ?? []), ...(right ?? [])]\n\n return allColumns.filter(d => !leftAndRight.includes(d.id))\n },\n {\n key: 'getCenterLeafColumns',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n }\n },\n}\n"],"names":["Pinning","getInitialState","columnPinning","left","right","getDefaultOptions","instance","onColumnPinningChange","makeStateUpdater","createColumn","column","getCanPin","getColumnCanPin","id","getPinnedIndex","getColumnPinnedIndex","getIsPinned","getColumnIsPinned","pin","position","pinColumn","createRow","row","getCenterVisibleCells","memo","_getAllVisibleCells","getState","allCells","leftAndRight","filter","d","includes","columnId","key","debug","options","debugAll","debugRows","getLeftVisibleCells","cells","map","find","cell","Boolean","_extends","getRightVisibleCells","createCell","createInstance","setColumnPinning","updater","resetColumnPinning","initialState","getColumn","columnIds","getLeafColumns","old","Error","leafColumns","some","enablePinning","defaultCanPin","accessorFn","leafColumnIds","isLeft","isRight","indexOf","getIsSomeColumnsPinned","length","getLeftLeafColumns","getAllLeafColumns","allColumns","debugColumns","getRightLeafColumns","getCenterLeafColumns"],"mappings":"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"}
1
+ {"version":3,"file":"Pinning.js","sources":["../../../src/features/Pinning.ts"],"sourcesContent":["import {\n OnChangeFn,\n Updater,\n TableInstance,\n Column,\n TableGenerics,\n Row,\n Cell,\n TableFeature,\n} from '../types'\nimport { makeStateUpdater, memo } from '../utils'\n\nexport type ColumnPinningPosition = false | 'left' | 'right'\n\nexport type ColumnPinningState = {\n left?: string[]\n right?: string[]\n}\n\nexport type ColumnPinningTableState = {\n columnPinning: ColumnPinningState\n}\n\nexport type ColumnPinningOptions = {\n onColumnPinningChange?: OnChangeFn<ColumnPinningState>\n enablePinning?: boolean\n}\n\nexport type ColumnPinningDefaultOptions = {\n onColumnPinningChange: OnChangeFn<ColumnPinningState>\n}\n\nexport type ColumnPinningColumnDef = {\n enablePinning?: boolean\n}\n\nexport type ColumnPinningColumn = {\n getCanPin: () => boolean\n getPinnedIndex: () => number\n getIsPinned: () => ColumnPinningPosition\n pin: (position: ColumnPinningPosition) => void\n}\n\nexport type ColumnPinningRow<TGenerics extends TableGenerics> = {\n getLeftVisibleCells: () => Cell<TGenerics>[]\n getCenterVisibleCells: () => Cell<TGenerics>[]\n getRightVisibleCells: () => Cell<TGenerics>[]\n}\n\nexport type ColumnPinningInstance<TGenerics extends TableGenerics> = {\n setColumnPinning: (updater: Updater<ColumnPinningState>) => void\n resetColumnPinning: () => void\n getIsSomeColumnsPinned: () => boolean\n getLeftLeafColumns: () => Column<TGenerics>[]\n getRightLeafColumns: () => Column<TGenerics>[]\n getCenterLeafColumns: () => Column<TGenerics>[]\n}\n\n//\n\nexport const Pinning: TableFeature = {\n getInitialState: (state): ColumnPinningTableState => {\n return {\n columnPinning: {\n left: [],\n right: [],\n },\n ...state,\n }\n },\n\n getDefaultOptions: <TGenerics extends TableGenerics>(\n instance: TableInstance<TGenerics>\n ): ColumnPinningDefaultOptions => {\n return {\n onColumnPinningChange: makeStateUpdater('columnPinning', instance),\n }\n },\n\n createColumn: <TGenerics extends TableGenerics>(\n column: Column<TGenerics>,\n instance: TableInstance<TGenerics>\n ): ColumnPinningColumn => {\n return {\n pin: position => {\n const columnIds = column\n .getLeafColumns()\n .map(d => d.id)\n .filter(Boolean) as string[]\n\n instance.setColumnPinning(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: [\n ...(old?.left ?? []).filter(d => !columnIds?.includes(d)),\n ...columnIds,\n ],\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\n getCanPin: () => {\n const leafColumns = column.getLeafColumns()\n\n return leafColumns.some(\n d =>\n (d.enablePinning ?? true) &&\n (instance.options.enablePinning ?? true)\n )\n },\n\n getIsPinned: () => {\n const leafColumnIds = column.getLeafColumns().map(d => d.id)\n\n const { left, right } = instance.getState().columnPinning\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\n getPinnedIndex: () => {\n const position = column.getIsPinned()\n\n return position\n ? instance.getState().columnPinning?.[position]?.indexOf(column.id) ??\n -1\n : 0\n },\n }\n },\n\n createRow: <TGenerics extends TableGenerics>(\n row: Row<TGenerics>,\n instance: TableInstance<TGenerics>\n ): ColumnPinningRow<TGenerics> => {\n return {\n getCenterVisibleCells: memo(\n () => [\n row._getAllVisibleCells(),\n instance.getState().columnPinning.left,\n instance.getState().columnPinning.right,\n ],\n (allCells, left, right) => {\n const leftAndRight: string[] = [...(left ?? []), ...(right ?? [])]\n\n return allCells.filter(d => !leftAndRight.includes(d.columnId))\n },\n {\n key:\n process.env.NODE_ENV === 'production' &&\n 'row.getCenterVisibleCells',\n debug: () => instance.options.debugAll ?? instance.options.debugRows,\n }\n ),\n getLeftVisibleCells: memo(\n () => [\n row._getAllVisibleCells(),\n instance.getState().columnPinning.left,\n ,\n ],\n (allCells, left) => {\n const cells = (left ?? [])\n .map(columnId => allCells.find(cell => cell.columnId === columnId)!)\n .filter(Boolean)\n .map(d => ({ ...d, position: 'left' } as Cell<TGenerics>))\n\n return cells\n },\n {\n key:\n process.env.NODE_ENV === 'production' && 'row.getLeftVisibleCells',\n debug: () => instance.options.debugAll ?? instance.options.debugRows,\n }\n ),\n getRightVisibleCells: memo(\n () => [\n row._getAllVisibleCells(),\n instance.getState().columnPinning.right,\n ],\n (allCells, right) => {\n const cells = (right ?? [])\n .map(columnId => allCells.find(cell => cell.columnId === columnId)!)\n .filter(Boolean)\n .map(d => ({ ...d, position: 'left' } as Cell<TGenerics>))\n\n return cells\n },\n {\n key:\n process.env.NODE_ENV === 'production' && 'row.getRightVisibleCells',\n debug: () => instance.options.debugAll ?? instance.options.debugRows,\n }\n ),\n }\n },\n\n createInstance: <TGenerics extends TableGenerics>(\n instance: TableInstance<TGenerics>\n ): ColumnPinningInstance<TGenerics> => {\n return {\n setColumnPinning: updater =>\n instance.options.onColumnPinningChange?.(updater),\n\n resetColumnPinning: () =>\n instance.setColumnPinning(instance.initialState?.columnPinning ?? {}),\n\n getIsSomeColumnsPinned: () => {\n const { left, right } = instance.getState().columnPinning\n\n return Boolean(left?.length || right?.length)\n },\n\n getLeftLeafColumns: memo(\n () => [\n instance.getAllLeafColumns(),\n instance.getState().columnPinning.left,\n ],\n (allColumns, left) => {\n return (left ?? [])\n .map(columnId => allColumns.find(column => column.id === columnId)!)\n .filter(Boolean)\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getLeftLeafColumns',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n\n getRightLeafColumns: memo(\n () => [\n instance.getAllLeafColumns(),\n instance.getState().columnPinning.right,\n ],\n (allColumns, right) => {\n return (right ?? [])\n .map(columnId => allColumns.find(column => column.id === columnId)!)\n .filter(Boolean)\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getRightLeafColumns',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n\n getCenterLeafColumns: memo(\n () => [\n instance.getAllLeafColumns(),\n instance.getState().columnPinning.left,\n instance.getState().columnPinning.right,\n ],\n (allColumns, left, right) => {\n const leftAndRight: string[] = [...(left ?? []), ...(right ?? [])]\n\n return allColumns.filter(d => !leftAndRight.includes(d.id))\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getCenterLeafColumns',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n }\n },\n}\n"],"names":["Pinning","getInitialState","state","_extends","columnPinning","left","right","getDefaultOptions","instance","onColumnPinningChange","makeStateUpdater","createColumn","column","pin","position","columnIds","getLeafColumns","map","d","id","filter","Boolean","setColumnPinning","old","includes","getCanPin","leafColumns","some","enablePinning","options","getIsPinned","leafColumnIds","getState","isLeft","isRight","getPinnedIndex","indexOf","createRow","row","getCenterVisibleCells","memo","_getAllVisibleCells","allCells","leftAndRight","columnId","key","process","env","NODE_ENV","debug","debugAll","debugRows","getLeftVisibleCells","cells","find","cell","getRightVisibleCells","createInstance","updater","resetColumnPinning","initialState","getIsSomeColumnsPinned","length","getLeftLeafColumns","getAllLeafColumns","allColumns","debugColumns","getRightLeafColumns","getCenterLeafColumns"],"mappings":"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"}