@tanstack/table-core 8.0.0-alpha.22 → 8.0.0-alpha.25

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 (85) hide show
  1. package/build/cjs/aggregationTypes.js +21 -19
  2. package/build/cjs/aggregationTypes.js.map +1 -1
  3. package/build/cjs/core.js +17 -29
  4. package/build/cjs/core.js.map +1 -1
  5. package/build/cjs/createTable.js +2 -2
  6. package/build/cjs/createTable.js.map +1 -1
  7. package/build/cjs/features/ColumnSizing.js +23 -8
  8. package/build/cjs/features/ColumnSizing.js.map +1 -1
  9. package/build/cjs/features/Expanding.js +1 -8
  10. package/build/cjs/features/Expanding.js.map +1 -1
  11. package/build/cjs/features/Filters.js +1 -1
  12. package/build/cjs/features/Filters.js.map +1 -1
  13. package/build/cjs/features/Grouping.js +1 -1
  14. package/build/cjs/features/Grouping.js.map +1 -1
  15. package/build/cjs/features/Headers.js.map +1 -1
  16. package/build/cjs/features/Ordering.js.map +1 -1
  17. package/build/cjs/features/Pagination.js.map +1 -1
  18. package/build/cjs/features/Pinning.js.map +1 -1
  19. package/build/cjs/features/RowSelection.js +3 -3
  20. package/build/cjs/features/RowSelection.js.map +1 -1
  21. package/build/cjs/features/Sorting.js.map +1 -1
  22. package/build/cjs/features/Visibility.js.map +1 -1
  23. package/build/cjs/filterTypes.js.map +1 -1
  24. package/build/cjs/sortTypes.js.map +1 -1
  25. package/build/cjs/utils/columnFilterRowsFn.js +20 -78
  26. package/build/cjs/utils/columnFilterRowsFn.js.map +1 -1
  27. package/build/cjs/utils/filterRowsUtils.js +100 -0
  28. package/build/cjs/utils/filterRowsUtils.js.map +1 -0
  29. package/build/cjs/utils/globalFilterRowsFn.js +10 -62
  30. package/build/cjs/utils/globalFilterRowsFn.js.map +1 -1
  31. package/build/cjs/utils/groupRowsFn.js +15 -15
  32. package/build/cjs/utils/groupRowsFn.js.map +1 -1
  33. package/build/cjs/utils/sortRowsFn.js +1 -1
  34. package/build/cjs/utils/sortRowsFn.js.map +1 -1
  35. package/build/esm/index.js +2587 -2620
  36. package/build/esm/index.js.map +1 -1
  37. package/build/stats-html.html +1 -1
  38. package/build/stats-react.json +368 -335
  39. package/build/types/aggregationTypes.d.ts +9 -9
  40. package/build/types/core.d.ts +8 -13
  41. package/build/types/createTable.d.ts +4 -4
  42. package/build/types/features/ColumnSizing.d.ts +13 -8
  43. package/build/types/features/Expanding.d.ts +6 -6
  44. package/build/types/features/Filters.d.ts +15 -15
  45. package/build/types/features/Grouping.d.ts +16 -16
  46. package/build/types/features/Headers.d.ts +6 -6
  47. package/build/types/features/Ordering.d.ts +4 -4
  48. package/build/types/features/Pagination.d.ts +5 -5
  49. package/build/types/features/Pinning.d.ts +5 -5
  50. package/build/types/features/RowSelection.d.ts +8 -8
  51. package/build/types/features/Sorting.d.ts +12 -12
  52. package/build/types/features/Visibility.d.ts +6 -6
  53. package/build/types/filterTypes.d.ts +10 -10
  54. package/build/types/sortTypes.d.ts +7 -7
  55. package/build/types/types.d.ts +22 -13
  56. package/build/types/utils/filterRowsUtils.d.ts +3 -0
  57. package/build/types/utils/sortRowsQuicksortFn.d.ts +11 -0
  58. package/build/umd/index.development.js +2587 -2620
  59. package/build/umd/index.development.js.map +1 -1
  60. package/build/umd/index.production.js +1 -1
  61. package/build/umd/index.production.js.map +1 -1
  62. package/package.json +1 -1
  63. package/src/aggregationTypes.ts +23 -19
  64. package/src/core.tsx +29 -55
  65. package/src/createTable.tsx +17 -11
  66. package/src/features/ColumnSizing.ts +31 -7
  67. package/src/features/Expanding.ts +7 -15
  68. package/src/features/Filters.ts +15 -15
  69. package/src/features/Grouping.ts +19 -19
  70. package/src/features/Headers.ts +5 -5
  71. package/src/features/Ordering.ts +3 -3
  72. package/src/features/Pagination.ts +4 -4
  73. package/src/features/Pinning.ts +4 -4
  74. package/src/features/RowSelection.ts +9 -11
  75. package/src/features/Sorting.ts +11 -11
  76. package/src/features/Visibility.ts +5 -5
  77. package/src/filterTypes.ts +9 -9
  78. package/src/sortTypes.ts +6 -6
  79. package/src/types.ts +34 -25
  80. package/src/utils/columnFilterRowsFn.ts +12 -73
  81. package/src/utils/filterRowsUtils.ts +107 -0
  82. package/src/utils/globalFilterRowsFn.ts +10 -66
  83. package/src/utils/groupRowsFn.ts +15 -17
  84. package/src/utils/sortRowsFn.ts +6 -8
  85. package/src/utils/sortRowsQuicksortFn.ts +174 -0
@@ -26,18 +26,18 @@ var aggregationTypes = {
26
26
  count: count
27
27
  };
28
28
 
29
- function sum(_leafValues, childValues) {
29
+ function sum(_getLeafValues, getChildValues) {
30
30
  // It's faster to just add the aggregations together instead of
31
31
  // process leaf nodes individually
32
- return childValues.reduce(function (sum, next) {
32
+ return getChildValues().reduce(function (sum, next) {
33
33
  return sum + (typeof next === 'number' ? next : 0);
34
34
  }, 0);
35
35
  }
36
36
 
37
- function min(_leafValues, childValues) {
37
+ function min(_getLeafValues, getChildValues) {
38
38
  var min;
39
39
 
40
- for (var _iterator = _rollupPluginBabelHelpers.createForOfIteratorHelperLoose(childValues), _step; !(_step = _iterator()).done;) {
40
+ for (var _iterator = _rollupPluginBabelHelpers.createForOfIteratorHelperLoose(getChildValues()), _step; !(_step = _iterator()).done;) {
41
41
  var value = _step.value;
42
42
 
43
43
  if (value != null && (min > value || min === undefined && value >= value)) {
@@ -48,10 +48,10 @@ function min(_leafValues, childValues) {
48
48
  return min;
49
49
  }
50
50
 
51
- function max(_leafValues, childValues) {
51
+ function max(_getLeafValues, getChildValues) {
52
52
  var max;
53
53
 
54
- for (var _iterator2 = _rollupPluginBabelHelpers.createForOfIteratorHelperLoose(childValues), _step2; !(_step2 = _iterator2()).done;) {
54
+ for (var _iterator2 = _rollupPluginBabelHelpers.createForOfIteratorHelperLoose(getChildValues()), _step2; !(_step2 = _iterator2()).done;) {
55
55
  var value = _step2.value;
56
56
 
57
57
  if (value != null && (max < value || max === undefined && value >= value)) {
@@ -62,11 +62,11 @@ function max(_leafValues, childValues) {
62
62
  return max;
63
63
  }
64
64
 
65
- function extent(_leafValues, childValues) {
65
+ function extent(_getLeafValues, getChildValues) {
66
66
  var min;
67
67
  var max;
68
68
 
69
- for (var _iterator3 = _rollupPluginBabelHelpers.createForOfIteratorHelperLoose(childValues), _step3; !(_step3 = _iterator3()).done;) {
69
+ for (var _iterator3 = _rollupPluginBabelHelpers.createForOfIteratorHelperLoose(getChildValues()), _step3; !(_step3 = _iterator3()).done;) {
70
70
  var value = _step3.value;
71
71
 
72
72
  if (value != null) {
@@ -82,11 +82,11 @@ function extent(_leafValues, childValues) {
82
82
  return [min, max];
83
83
  }
84
84
 
85
- function mean(leafValues) {
85
+ function mean(getLeafValues) {
86
86
  var count = 0;
87
87
  var sum = 0;
88
88
 
89
- for (var _iterator4 = _rollupPluginBabelHelpers.createForOfIteratorHelperLoose(leafValues), _step4; !(_step4 = _iterator4()).done;) {
89
+ for (var _iterator4 = _rollupPluginBabelHelpers.createForOfIteratorHelperLoose(getLeafValues()), _step4; !(_step4 = _iterator4()).done;) {
90
90
  var value = _step4.value;
91
91
 
92
92
  if (value != null && (value = +value) >= value) {
@@ -98,14 +98,16 @@ function mean(leafValues) {
98
98
  return;
99
99
  }
100
100
 
101
- function median(values) {
102
- if (!values.length) {
101
+ function median(getLeafValues) {
102
+ var leafValues = getLeafValues();
103
+
104
+ if (!leafValues.length) {
103
105
  return;
104
106
  }
105
107
 
106
108
  var min = 0;
107
109
  var max = 0;
108
- values.forEach(function (value) {
110
+ leafValues.forEach(function (value) {
109
111
  if (typeof value === 'number') {
110
112
  min = Math.min(min, value);
111
113
  max = Math.max(max, value);
@@ -114,16 +116,16 @@ function median(values) {
114
116
  return (min + max) / 2;
115
117
  }
116
118
 
117
- function unique(values) {
118
- return Array.from(new Set(values).values());
119
+ function unique(getLeafValues) {
120
+ return Array.from(new Set(getLeafValues()).values());
119
121
  }
120
122
 
121
- function uniqueCount(values) {
122
- return new Set(values).size;
123
+ function uniqueCount(getLeafValues) {
124
+ return new Set(getLeafValues()).size;
123
125
  }
124
126
 
125
- function count(values) {
126
- return values.length;
127
+ function count(getLeafValues) {
128
+ return getLeafValues().length;
127
129
  }
128
130
 
129
131
  exports.aggregationTypes = aggregationTypes;
@@ -1 +1 @@
1
- {"version":3,"file":"aggregationTypes.js","sources":["../../src/aggregationTypes.ts"],"sourcesContent":["export const aggregationTypes = {\n sum,\n min,\n max,\n extent,\n mean,\n median,\n unique,\n uniqueCount,\n count,\n}\n\nexport type BuiltInAggregationType = keyof typeof aggregationTypes\n\nfunction sum(_leafValues: unknown[], childValues: unknown[]) {\n // It's faster to just add the aggregations together instead of\n // process leaf nodes individually\n return childValues.reduce(\n (sum: number, next: unknown) => sum + (typeof next === 'number' ? next : 0),\n 0\n )\n}\n\nfunction min(_leafValues: unknown[], childValues: unknown[]) {\n let min: number | undefined\n\n for (const value of childValues as number[]) {\n if (\n value != null &&\n (min! > value || (min === undefined && value >= value))\n ) {\n min = value\n }\n }\n\n return min\n}\n\nfunction max(_leafValues: unknown[], childValues: unknown[]) {\n let max: number | undefined\n\n for (const value of childValues as number[]) {\n if (\n value != null &&\n (max! < value || (max === undefined && value >= value))\n ) {\n max = value\n }\n }\n\n return max\n}\n\nfunction extent(_leafValues: unknown[], childValues: unknown[]) {\n let min: number | undefined\n let max: number | undefined\n\n for (const value of childValues as number[]) {\n if (value != null) {\n if (min === undefined) {\n if (value >= value) min = max = value\n } else {\n if (min > value) min = value\n if (max! < value) max = value\n }\n }\n }\n\n return [min, max]\n}\n\nfunction mean(leafValues: unknown[]) {\n let count = 0\n let sum = 0\n\n for (let value of leafValues as number[]) {\n if (value != null && (value = +value) >= value) {\n ++count, (sum += value)\n }\n }\n\n if (count) return sum / count\n\n return\n}\n\nfunction median(values: unknown[]) {\n if (!values.length) {\n return\n }\n\n let min = 0\n let max = 0\n\n values.forEach(value => {\n if (typeof value === 'number') {\n min = Math.min(min, value)\n max = Math.max(max, value)\n }\n })\n\n return (min + max) / 2\n}\n\nfunction unique<T>(values: T[]) {\n return Array.from(new Set(values).values())\n}\n\nfunction uniqueCount(values: unknown[]) {\n return new Set(values).size\n}\n\nfunction count(values: unknown[]) {\n return values.length\n}\n"],"names":["aggregationTypes","sum","min","max","extent","mean","median","unique","uniqueCount","count","_leafValues","childValues","reduce","next","value","undefined","leafValues","values","length","forEach","Math","Array","from","Set","size"],"mappings":"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"}
1
+ {"version":3,"file":"aggregationTypes.js","sources":["../../src/aggregationTypes.ts"],"sourcesContent":["export const aggregationTypes = {\n sum,\n min,\n max,\n extent,\n mean,\n median,\n unique,\n uniqueCount,\n count,\n}\n\nexport type BuiltInAggregationType = keyof typeof aggregationTypes\n\nfunction sum(_getLeafValues: () => unknown[], getChildValues: () => unknown[]) {\n // It's faster to just add the aggregations together instead of\n // process leaf nodes individually\n return getChildValues().reduce(\n (sum: number, next: unknown) => sum + (typeof next === 'number' ? next : 0),\n 0\n )\n}\n\nfunction min(_getLeafValues: () => unknown[], getChildValues: () => unknown[]) {\n let min: number | undefined\n\n for (const value of getChildValues() as number[]) {\n if (\n value != null &&\n (min! > value || (min === undefined && value >= value))\n ) {\n min = value\n }\n }\n\n return min\n}\n\nfunction max(_getLeafValues: () => unknown[], getChildValues: () => unknown[]) {\n let max: number | undefined\n\n for (const value of getChildValues() as number[]) {\n if (\n value != null &&\n (max! < value || (max === undefined && value >= value))\n ) {\n max = value\n }\n }\n\n return max\n}\n\nfunction extent(\n _getLeafValues: () => unknown[],\n getChildValues: () => unknown[]\n) {\n let min: number | undefined\n let max: number | undefined\n\n for (const value of getChildValues() as number[]) {\n if (value != null) {\n if (min === undefined) {\n if (value >= value) min = max = value\n } else {\n if (min > value) min = value\n if (max! < value) max = value\n }\n }\n }\n\n return [min, max]\n}\n\nfunction mean(getLeafValues: () => unknown[]) {\n let count = 0\n let sum = 0\n\n for (let value of getLeafValues() as number[]) {\n if (value != null && (value = +value) >= value) {\n ++count, (sum += value)\n }\n }\n\n if (count) return sum / count\n\n return\n}\n\nfunction median(getLeafValues: () => unknown[]) {\n const leafValues = getLeafValues()\n if (!leafValues.length) {\n return\n }\n\n let min = 0\n let max = 0\n\n leafValues.forEach(value => {\n if (typeof value === 'number') {\n min = Math.min(min, value)\n max = Math.max(max, value)\n }\n })\n\n return (min + max) / 2\n}\n\nfunction unique<T>(getLeafValues: () => T[]) {\n return Array.from(new Set(getLeafValues()).values())\n}\n\nfunction uniqueCount(getLeafValues: () => unknown[]) {\n return new Set(getLeafValues()).size\n}\n\nfunction count(getLeafValues: () => unknown[]) {\n return getLeafValues().length\n}\n"],"names":["aggregationTypes","sum","min","max","extent","mean","median","unique","uniqueCount","count","_getLeafValues","getChildValues","reduce","next","value","undefined","getLeafValues","leafValues","length","forEach","Math","Array","from","Set","values","size"],"mappings":"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"}
package/build/cjs/core.js CHANGED
@@ -14,19 +14,19 @@ Object.defineProperty(exports, '__esModule', { value: true });
14
14
 
15
15
  var _rollupPluginBabelHelpers = require('./_virtual/_rollupPluginBabelHelpers.js');
16
16
  var utils = require('./utils.js');
17
- var Visibility = require('./features/Visibility.js');
18
- var Ordering = require('./features/Ordering.js');
19
- var Pinning = require('./features/Pinning.js');
20
- var Headers = require('./features/Headers.js');
17
+ var ColumnSizing = require('./features/ColumnSizing.js');
18
+ var Expanding = require('./features/Expanding.js');
21
19
  var Filters = require('./features/Filters.js');
22
- var Sorting = require('./features/Sorting.js');
23
20
  var Grouping = require('./features/Grouping.js');
24
- var Expanding = require('./features/Expanding.js');
25
- var ColumnSizing = require('./features/ColumnSizing.js');
21
+ var Ordering = require('./features/Ordering.js');
26
22
  var Pagination = require('./features/Pagination.js');
23
+ var Pinning = require('./features/Pinning.js');
27
24
  var RowSelection = require('./features/RowSelection.js');
25
+ var Sorting = require('./features/Sorting.js');
26
+ var Visibility = require('./features/Visibility.js');
27
+ var Headers = require('./features/Headers.js');
28
28
 
29
- var features = [Visibility.Visibility, Ordering.Ordering, Pinning.Pinning, Headers.Headers, Filters.Filters, Sorting.Sorting, Grouping.Grouping, Expanding.Expanding, ColumnSizing.ColumnSizing, Pagination.Pagination, RowSelection.RowSelection];
29
+ var features = [Headers.Headers, Visibility.Visibility, Ordering.Ordering, Pinning.Pinning, Filters.Filters, Sorting.Sorting, Grouping.Grouping, Expanding.Expanding, Pagination.Pagination, RowSelection.RowSelection, ColumnSizing.ColumnSizing];
30
30
  function createTableInstance(options) {
31
31
  var _options$initialState;
32
32
 
@@ -134,7 +134,7 @@ function createTableInstance(options) {
134
134
  throw new Error();
135
135
  }
136
136
 
137
- var column = _rollupPluginBabelHelpers["extends"]({}, ColumnSizing.defaultColumnSizing, defaultColumn, columnDef, {
137
+ var column = _rollupPluginBabelHelpers["extends"]({}, defaultColumn, columnDef, {
138
138
  id: "" + id,
139
139
  accessorFn: accessorFn,
140
140
  parent: parent,
@@ -270,18 +270,6 @@ function createTableInstance(options) {
270
270
 
271
271
  return column;
272
272
  },
273
- getColumnWidth: function getColumnWidth(columnId) {
274
- var _column$minWidth, _ref3, _column$maxWidth;
275
-
276
- var column = instance.getColumn(columnId);
277
-
278
- if (!column) {
279
- throw new Error();
280
- }
281
-
282
- var columnSize = instance.getState().columnSizing[column.id];
283
- return Math.min(Math.max((_column$minWidth = column.minWidth) != null ? _column$minWidth : ColumnSizing.defaultColumnSizing.minWidth, (_ref3 = columnSize != null ? columnSize : column.width) != null ? _ref3 : ColumnSizing.defaultColumnSizing.width), (_column$maxWidth = column.maxWidth) != null ? _column$maxWidth : ColumnSizing.defaultColumnSizing.maxWidth);
284
- },
285
273
  createCell: function createCell(row, column, value) {
286
274
  var cell = {
287
275
  id: row.id + "_" + column.id,
@@ -316,7 +304,11 @@ function createTableInstance(options) {
316
304
  depth: depth,
317
305
  values: values,
318
306
  subRows: [],
319
- leafRows: [],
307
+ getLeafRows: function getLeafRows() {
308
+ return utils.flattenBy(row.subRows, function (d) {
309
+ return d.subRows;
310
+ });
311
+ },
320
312
  getRowProps: function getRowProps(userProps) {
321
313
  return instance.getRowProps(row.id, userProps);
322
314
  },
@@ -410,13 +402,9 @@ function createTableInstance(options) {
410
402
 
411
403
  for (var _i = 0; _i < row.originalSubRows.length; _i++) {
412
404
  accessRow(row.originalSubRows[_i], _i, depth + 1, subRows, row);
413
- } // Keep the new subRows array on the row
414
-
405
+ }
415
406
 
416
407
  row.subRows = subRows;
417
- row.leafRows = utils.flattenBy(subRows, function (d) {
418
- return d.leafRows;
419
- });
420
408
  }
421
409
  }
422
410
  };
@@ -438,9 +426,9 @@ function createTableInstance(options) {
438
426
  return (_instance$options$deb10 = instance.options.debugAll) != null ? _instance$options$deb10 : instance.options.debugTable;
439
427
  },
440
428
  onChange: function onChange() {
441
- instance._notifyRowSelectionReset();
442
-
443
429
  instance._notifyFiltersReset();
430
+
431
+ instance._notifyRowSelectionReset();
444
432
  }
445
433
  }),
446
434
  // The final calls start at the bottom of the model,
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","sources":["../../src/core.tsx"],"sourcesContent":["import {\n flattenBy,\n functionalUpdate,\n propGetter,\n memo,\n RequiredKeys,\n} from './utils'\n\nimport {\n Updater,\n PropGetterValue,\n Options,\n TableState,\n ColumnDef,\n Row,\n Column,\n Cell,\n Header,\n AccessorFn,\n HeaderRenderProps,\n TableProps,\n TableBodyProps,\n PropGetter,\n Getter,\n RowProps,\n CellProps,\n TableInstance,\n RowValues,\n PartialGenerics,\n CoreCell,\n Renderable,\n UseRenderer,\n} from './types'\n\nimport { Visibility } from './features/Visibility'\nimport { Ordering } from './features/Ordering'\nimport { Pinning } from './features/Pinning'\nimport { Headers } from './features/Headers'\nimport { Filters } from './features/Filters'\nimport { Sorting } from './features/Sorting'\nimport { Grouping } from './features/Grouping'\nimport { Expanding } from './features/Expanding'\nimport { ColumnSizing, defaultColumnSizing } from './features/ColumnSizing'\nimport { Pagination } from './features/Pagination'\nimport { RowSelection } from './features/RowSelection'\nimport { RowModel } from '.'\n\nconst features = [\n Visibility,\n Ordering,\n Pinning,\n Headers,\n Filters,\n Sorting,\n Grouping,\n Expanding,\n ColumnSizing,\n Pagination,\n RowSelection,\n]\n\nexport type CoreOptions<TGenerics extends PartialGenerics> = {\n data: TGenerics['Row'][]\n columns: ColumnDef<TGenerics>[]\n state: Partial<TableState>\n onStateChange: (updater: Updater<TableState>) => void\n render: TGenerics['Render']\n debugAll?: boolean\n debugTable?: boolean\n debugHeaders?: boolean\n debugColumns?: boolean\n debugRows?: boolean\n defaultColumn?: Partial<ColumnDef<TGenerics>>\n initialState?: Partial<TableState>\n getSubRows?: (\n originalRow: TGenerics['Row'],\n index: number\n ) => TGenerics['Row'][]\n getRowId?: (\n originalRow: TGenerics['Row'],\n index: number,\n parent?: Row<TGenerics>\n ) => string\n autoResetAll?: boolean\n}\n\nexport type TableCore<TGenerics extends PartialGenerics> = {\n initialState: TableState\n reset: () => void\n options: RequiredKeys<Options<TGenerics>, 'state'>\n setOptions: (newOptions: Updater<Options<TGenerics>>) => void\n getRowId: (\n _: TGenerics['Row'],\n index: number,\n parent?: Row<TGenerics>\n ) => string\n getState: () => TableState\n setState: (updater: Updater<TableState>) => void\n getDefaultColumn: () => Partial<ColumnDef<TGenerics>>\n getColumnDefs: () => ColumnDef<TGenerics>[]\n createColumn: (\n columnDef: ColumnDef<TGenerics>,\n depth: number,\n parent?: Column<TGenerics>\n ) => Column<TGenerics>\n getAllColumns: () => Column<TGenerics>[]\n getAllFlatColumns: () => Column<TGenerics>[]\n getAllFlatColumnsById: () => Record<string, Column<TGenerics>>\n getAllLeafColumns: () => Column<TGenerics>[]\n getColumn: (columnId: string) => Column<TGenerics>\n getColumnWidth: (columnId: string) => number\n getTotalWidth: () => number\n createCell: (\n row: Row<TGenerics>,\n column: Column<TGenerics>,\n value: any\n ) => Cell<TGenerics>\n createRow: (\n id: string,\n original: TGenerics['Row'] | undefined,\n rowIndex: number,\n depth: number,\n values: Record<string, any>\n ) => Row<TGenerics>\n getCoreRowModel: () => RowModel<TGenerics>\n getRowModel: () => RowModel<TGenerics>\n getRow: (id: string) => Row<TGenerics>\n getCell: (rowId: string, columnId: string) => Cell<TGenerics>\n getTableProps: PropGetter<TableProps>\n getTableBodyProps: PropGetter<TableBodyProps>\n getRowProps: <TGetter extends Getter<RowProps>>(\n rowId: string,\n userProps?: TGetter\n ) => undefined | PropGetterValue<RowProps, TGetter>\n getCellProps: <TGetter extends Getter<CellProps>>(\n rowId: string,\n columnId: string,\n userProps?: TGetter\n ) => undefined | PropGetterValue<CellProps, TGetter>\n getTableWidth: () => number\n getLeftTableWidth: () => number\n getCenterTableWidth: () => number\n getRightTableWidth: () => number\n render: <TProps>(\n template: Renderable<TGenerics, TProps>,\n props: TProps\n ) => string | null | ReturnType<UseRenderer<TGenerics>>\n}\n\nexport type CoreRow<TGenerics extends PartialGenerics> = {\n id: string\n index: number\n original?: TGenerics['Row']\n depth: number\n values: RowValues\n leafRows: Row<TGenerics>[]\n subRows: Row<TGenerics>[]\n getRowProps: PropGetter<RowProps>\n originalSubRows?: TGenerics['Row'][]\n getAllCells: () => Cell<TGenerics>[]\n getAllCellsByColumnId: () => Record<string, Cell<TGenerics>>\n}\n\nexport type CoreColumnDef<TGenerics extends PartialGenerics> = {\n id: string\n accessorKey?: string & keyof TGenerics['Row']\n accessorFn?: AccessorFn<TGenerics['Row']>\n width?: number\n minWidth?: number\n maxWidth?: number\n columns?: ColumnDef<TGenerics>[]\n header?: Renderable<\n TGenerics,\n {\n instance: TableInstance<TGenerics>\n header: Header<TGenerics>\n column: Column<TGenerics>\n }\n >\n footer?: Renderable<\n TGenerics,\n {\n instance: TableInstance<TGenerics>\n header: Header<TGenerics>\n column: Column<TGenerics>\n }\n >\n cell?: Renderable<\n TGenerics,\n {\n instance: TableInstance<TGenerics>\n row: Row<TGenerics>\n column: Column<TGenerics>\n cell: Cell<TGenerics>\n value: TGenerics['Value']\n }\n >\n meta?: TGenerics['ColumnMeta']\n}\n// & GeneratedProperties<true>\n\nexport type CoreColumn<TGenerics extends PartialGenerics> = {\n id: string\n depth: number\n accessorFn?: AccessorFn<TGenerics['Row']>\n columnDef: ColumnDef<TGenerics>\n getWidth: () => number\n columns: Column<TGenerics>[]\n parent?: Column<TGenerics>\n getFlatColumns: () => Column<TGenerics>[]\n getLeafColumns: () => Column<TGenerics>[]\n}\n\nexport function createTableInstance<TGenerics extends PartialGenerics>(\n options: Options<TGenerics>\n): TableInstance<TGenerics> {\n if (options.debugAll || options.debugTable) {\n console.info('Creating Table Instance...')\n }\n\n let instance = {} as TableInstance<TGenerics>\n\n const defaultOptions = features.reduce((obj, feature) => {\n return Object.assign(obj, (feature as any).getDefaultOptions?.(instance))\n }, {})\n\n const buildOptions = (options: Options<TGenerics>) => ({\n ...defaultOptions,\n ...options,\n })\n\n instance.options = buildOptions(options)\n\n const initialState = {\n ...features.reduce((obj, feature) => {\n return Object.assign(obj, (feature as any).getInitialState?.())\n }, {}),\n ...(options.initialState ?? {}),\n } as TableState\n\n const finalInstance: TableInstance<TGenerics> = {\n ...instance,\n ...features.reduce((obj, feature) => {\n return Object.assign(obj, (feature as any).getInstance?.(instance))\n }, {}),\n initialState,\n reset: () => {\n instance.setState(instance.initialState)\n },\n setOptions: updater => {\n instance.options = buildOptions(\n functionalUpdate(updater, instance.options)\n )\n },\n render: (template, props) => {\n if (typeof instance.options.render === 'function') {\n return instance.options.render(template, props)\n }\n\n if (typeof template === 'function') {\n return (template as Function)(props)\n }\n\n return template\n },\n\n getRowId: (_: TGenerics['Row'], index: number, parent?: Row<TGenerics>) =>\n `${parent ? [parent.id, index].join('.') : index}`,\n\n getState: () => {\n return instance.options.state as TableState\n },\n\n setState: (updater: Updater<TableState>) => {\n instance.options.onStateChange?.(updater)\n },\n\n getDefaultColumn: memo(\n () => [instance.options.defaultColumn],\n defaultColumn => {\n defaultColumn = (defaultColumn ?? {}) as Partial<ColumnDef<TGenerics>>\n\n return {\n header: (props: HeaderRenderProps<Header<TGenerics>>) =>\n props.header.column.id,\n footer: (props: HeaderRenderProps<Header<TGenerics>>) =>\n props.header.column.id,\n cell: ({ value = '' }: { value: any }): JSX.Element =>\n typeof value === 'boolean' ? value.toString() : value,\n ...features.reduce((obj, feature) => {\n return Object.assign(obj, (feature as any).getDefaultColumn?.())\n }, {}),\n ...defaultColumn,\n } as Partial<ColumnDef<TGenerics>>\n },\n {\n debug: () => instance.options.debugAll ?? instance.options.debugColumns,\n key: 'getDefaultColumn',\n }\n ),\n\n getColumnDefs: () => instance.options.columns,\n\n createColumn: (columnDef, depth: number, parent) => {\n const defaultColumn = instance.getDefaultColumn()\n\n let id =\n columnDef.id ??\n columnDef.accessorKey ??\n (typeof columnDef.header === 'string' ? columnDef.header : undefined)\n\n let accessorFn: AccessorFn<TGenerics['Row']> | undefined\n\n if (columnDef.accessorFn) {\n accessorFn = columnDef.accessorFn\n } else if (columnDef.accessorKey) {\n accessorFn = (originalRow?: TGenerics['Row']) =>\n (originalRow as any)[columnDef.accessorKey]\n }\n\n if (!id) {\n if (process.env.NODE_ENV !== 'production') {\n throw new Error(\n columnDef.accessorFn\n ? `Columns require an id when using an accessorFn`\n : `Columns require an id when using a non-string header`\n )\n }\n throw new Error()\n }\n\n let column: CoreColumn<TGenerics> = {\n ...defaultColumnSizing,\n ...defaultColumn,\n ...columnDef,\n id: `${id}`,\n accessorFn,\n parent: parent as any,\n depth,\n columnDef,\n columns: [],\n getWidth: () => instance.getColumnWidth(column.id),\n getFlatColumns: memo(\n () => [true],\n () => {\n return [\n column as Column<TGenerics>,\n ...column.columns?.flatMap(d => d.getFlatColumns()),\n ]\n },\n {\n key: 'column.getFlatColumns',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n getLeafColumns: memo(\n () => [instance.getOrderColumnsFn()],\n orderColumns => {\n if (column.columns?.length) {\n let leafColumns = column.columns.flatMap(column =>\n column.getLeafColumns()\n )\n\n return orderColumns(leafColumns)\n }\n\n return [column as Column<TGenerics>]\n },\n {\n key: 'column.getLeafColumns',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n }\n\n column = features.reduce((obj, feature) => {\n return Object.assign(\n obj,\n (feature as any).createColumn?.(column, instance)\n )\n }, column)\n\n // Yes, we have to convert instance to uknown, because we know more than the compiler here.\n return column as Column<TGenerics>\n },\n\n getAllColumns: memo(\n () => [instance.getColumnDefs()],\n columnDefs => {\n const recurseColumns = (\n columnDefs: ColumnDef<TGenerics>[],\n parent?: Column<TGenerics>,\n depth = 0\n ): Column<TGenerics>[] => {\n return columnDefs.map(columnDef => {\n const column = instance.createColumn(columnDef, depth, parent)\n\n column.columns = columnDef.columns\n ? recurseColumns(columnDef.columns, column, depth + 1)\n : []\n\n return column\n })\n }\n\n return recurseColumns(columnDefs)\n },\n {\n key: 'getAllColumns',\n debug: () => instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n\n getAllFlatColumns: memo(\n () => [instance.getAllColumns()],\n allColumns => {\n return allColumns.flatMap(column => {\n return column.getFlatColumns()\n })\n },\n {\n key: 'getAllFlatColumns',\n debug: () => instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n\n getAllFlatColumnsById: memo(\n () => [instance.getAllFlatColumns()],\n flatColumns => {\n return flatColumns.reduce((acc, column) => {\n acc[column.id] = column\n return acc\n }, {} as Record<string, Column<TGenerics>>)\n },\n {\n key: 'getAllFlatColumnsById',\n debug: () => instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n\n getAllLeafColumns: memo(\n () => [instance.getAllColumns(), instance.getOrderColumnsFn()],\n (allColumns, orderColumns) => {\n let leafColumns = allColumns.flatMap(column => column.getLeafColumns())\n return orderColumns(leafColumns)\n },\n {\n key: 'getAllLeafColumns',\n debug: () => instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n\n getColumn: columnId => {\n const column = instance.getAllFlatColumnsById()[columnId]\n\n if (!column) {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(`[Table] Column with id ${columnId} does not exist.`)\n }\n throw new Error()\n }\n\n return column\n },\n\n getColumnWidth: (columnId: string) => {\n const column = instance.getColumn(columnId)\n\n if (!column) {\n throw new Error()\n }\n\n const columnSize = instance.getState().columnSizing[column.id]\n\n return Math.min(\n Math.max(\n column.minWidth ?? defaultColumnSizing.minWidth,\n columnSize ?? column.width ?? defaultColumnSizing.width\n ),\n column.maxWidth ?? defaultColumnSizing.maxWidth\n )\n },\n\n createCell: (row, column, value) => {\n const cell: CoreCell<TGenerics> = {\n id: `${row.id}_${column.id}`,\n rowId: row.id,\n columnId: column.id,\n row,\n column,\n value,\n getCellProps: userProps =>\n instance.getCellProps(row.id, column.id, userProps)!,\n renderCell: () =>\n column.cell\n ? instance.render(column.cell, {\n instance,\n column,\n row,\n cell: cell as Cell<TGenerics>,\n value,\n })\n : null,\n }\n\n features.forEach(feature => {\n Object.assign(\n cell,\n (feature as any).createCell?.(\n cell as Cell<TGenerics>,\n column,\n row as Row<TGenerics>,\n instance\n )\n )\n }, {})\n\n return cell as Cell<TGenerics>\n },\n\n createRow: (id, original, rowIndex, depth, values) => {\n let row: CoreRow<TGenerics> = {\n id,\n index: rowIndex,\n original,\n depth,\n values,\n subRows: [],\n leafRows: [],\n getRowProps: userProps => instance.getRowProps(row.id, userProps)!,\n getAllCells: undefined!,\n getAllCellsByColumnId: undefined!,\n }\n\n row.getAllCells = memo(\n () => [instance.getAllLeafColumns()],\n leafColumns => {\n return leafColumns.map(column => {\n return instance.createCell(\n row as Row<TGenerics>,\n column,\n row.values[column.id]\n )\n })\n },\n {\n key: process.env.NODE_ENV !== 'production' ? 'row.getAllCells' : '',\n debug: () => instance.options.debugAll ?? instance.options.debugRows,\n }\n )\n\n row.getAllCellsByColumnId = memo(\n () => [row.getAllCells()],\n allCells => {\n return allCells.reduce((acc, cell) => {\n acc[cell.columnId] = cell\n return acc\n }, {} as Record<string, Cell<TGenerics>>)\n },\n {\n key: 'row.getAllCellsByColumnId',\n debug: () => instance.options.debugAll ?? instance.options.debugRows,\n }\n )\n\n for (let i = 0; i < features.length; i++) {\n const feature = features[i]\n Object.assign(row, (feature as any).createRow?.(row, instance))\n }\n\n return row as Row<TGenerics>\n },\n\n getCoreRowModel: memo(\n () => [instance.options.data],\n (\n data\n ): {\n rows: Row<TGenerics>[]\n flatRows: Row<TGenerics>[]\n rowsById: Record<string, Row<TGenerics>>\n } => {\n // Access the row model using initial columns\n const rows: Row<TGenerics>[] = []\n const flatRows: Row<TGenerics>[] = []\n const rowsById: Record<string, Row<TGenerics>> = {}\n\n const leafColumns = instance.getAllLeafColumns()\n\n const accessRow = (\n originalRow: TGenerics['Row'],\n rowIndex: number,\n depth = 0,\n parentRows: Row<TGenerics>[],\n parent?: Row<TGenerics>\n ) => {\n const id = instance.getRowId(originalRow, rowIndex, parent)\n\n if (!id) {\n if (process.env.NODE_ENV !== 'production') {\n throw new Error(`getRowId expected an ID, but got ${id}`)\n }\n }\n\n const values: Record<string, any> = {}\n\n for (let i = 0; i < leafColumns.length; i++) {\n const column = leafColumns[i]\n if (column && column.accessorFn) {\n values[column.id] = column.accessorFn(originalRow, rowIndex)\n }\n }\n\n // Make the row\n const row = instance.createRow(\n id,\n originalRow,\n rowIndex,\n depth,\n values\n )\n\n // Push instance row into the parentRows array\n parentRows.push(row)\n // Keep track of every row in a flat array\n flatRows.push(row)\n // Also keep track of every row by its ID\n rowsById[id] = row\n\n // Get the original subrows\n if (instance.options.getSubRows) {\n const originalSubRows = instance.options.getSubRows(\n originalRow,\n rowIndex\n )\n\n // Then recursively access them\n if (originalSubRows?.length) {\n row.originalSubRows = originalSubRows\n const subRows: Row<TGenerics>[] = []\n\n for (let i = 0; i < row.originalSubRows.length; i++) {\n accessRow(\n row.originalSubRows[i] as TGenerics['Row'],\n i,\n depth + 1,\n subRows,\n row\n )\n }\n // Keep the new subRows array on the row\n row.subRows = subRows\n row.leafRows = flattenBy(subRows, d => d.leafRows)\n }\n }\n }\n\n for (let i = 0; i < data.length; i++) {\n accessRow(data[i] as TGenerics['Row'], i, 0, rows)\n }\n\n return { rows, flatRows, rowsById }\n },\n {\n key: 'getRowModel',\n debug: () => instance.options.debugAll ?? instance.options.debugTable,\n onChange: () => {\n instance._notifyRowSelectionReset()\n instance._notifyFiltersReset()\n },\n }\n ),\n\n // The final calls start at the bottom of the model,\n // expanded rows, which then work their way up\n\n getRowModel: () => {\n return instance.getPaginationRowModel()\n },\n\n getRow: (id: string) => {\n const row = instance.getRowModel().rowsById[id]\n\n if (!row) {\n if (process.env.NODE_ENV !== 'production') {\n throw new Error(`getRow expected an ID, but got ${id}`)\n }\n throw new Error()\n }\n\n return row\n },\n\n getCell: (rowId: string, columnId: string) => {\n const row = instance.getRow(rowId)\n\n if (!row) {\n if (process.env.NODE_ENV !== 'production') {\n throw new Error(`[Table] could not find row with id ${rowId}`)\n }\n throw new Error()\n }\n\n const cell = row.getAllCellsByColumnId()[columnId]\n\n if (!cell) {\n if (process.env.NODE_ENV !== 'production') {\n throw new Error(\n `[Table] could not find cell ${columnId} in row ${rowId}`\n )\n }\n throw new Error()\n }\n\n return cell\n },\n\n getTableProps: userProps => {\n return propGetter(\n {\n role: 'table',\n },\n userProps\n )\n },\n\n getTableBodyProps: userProps => {\n return propGetter(\n {\n role: 'rowgroup',\n },\n userProps\n )\n },\n\n getRowProps: (rowId, userProps) => {\n const row = instance.getRow(rowId)\n if (!row) {\n return\n }\n\n return propGetter(\n {\n key: row.id,\n role: 'row',\n },\n userProps\n )\n },\n\n getCellProps: (rowId, columnId, userProps) => {\n const cell = instance.getCell(rowId, columnId)\n\n if (!cell) {\n return\n }\n\n return propGetter(\n {\n key: cell.id,\n role: 'gridcell',\n },\n userProps\n )\n },\n\n getTableWidth: () =>\n instance.getHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.getWidth()\n }, 0) ?? 0,\n getLeftTableWidth: () =>\n instance.getLeftHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.getWidth()\n }, 0) ?? 0,\n getCenterTableWidth: () =>\n instance.getCenterHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.getWidth()\n }, 0) ?? 0,\n getRightTableWidth: () =>\n instance.getRightHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.getWidth()\n }, 0) ?? 0,\n }\n\n instance = Object.assign(instance, finalInstance)\n\n return instance\n}\n"],"names":["features","Visibility","Ordering","Pinning","Headers","Filters","Sorting","Grouping","Expanding","ColumnSizing","Pagination","RowSelection","createTableInstance","options","debugAll","debugTable","console","info","instance","defaultOptions","reduce","obj","feature","Object","assign","getDefaultOptions","buildOptions","initialState","getInitialState","finalInstance","getInstance","reset","setState","setOptions","updater","functionalUpdate","render","template","props","getRowId","_","index","parent","id","join","getState","state","onStateChange","getDefaultColumn","memo","defaultColumn","header","column","footer","cell","value","toString","debug","debugColumns","key","getColumnDefs","columns","createColumn","columnDef","depth","accessorKey","undefined","accessorFn","originalRow","process","env","NODE_ENV","Error","defaultColumnSizing","getWidth","getColumnWidth","getFlatColumns","flatMap","d","getLeafColumns","getOrderColumnsFn","orderColumns","length","leafColumns","getAllColumns","columnDefs","recurseColumns","map","getAllFlatColumns","allColumns","getAllFlatColumnsById","flatColumns","acc","getAllLeafColumns","getColumn","columnId","warn","columnSize","columnSizing","Math","min","max","minWidth","width","maxWidth","createCell","row","rowId","getCellProps","userProps","renderCell","forEach","createRow","original","rowIndex","values","subRows","leafRows","getRowProps","getAllCells","getAllCellsByColumnId","debugRows","allCells","i","getCoreRowModel","data","rows","flatRows","rowsById","accessRow","parentRows","push","getSubRows","originalSubRows","flattenBy","onChange","_notifyRowSelectionReset","_notifyFiltersReset","getRowModel","getPaginationRowModel","getRow","getCell","getTableProps","propGetter","role","getTableBodyProps","getTableWidth","getHeaderGroups","headers","sum","getLeftTableWidth","getLeftHeaderGroups","getCenterTableWidth","getCenterHeaderGroups","getRightTableWidth","getRightHeaderGroups"],"mappings":"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"}
1
+ {"version":3,"file":"core.js","sources":["../../src/core.tsx"],"sourcesContent":["import {\n flattenBy,\n functionalUpdate,\n propGetter,\n memo,\n RequiredKeys,\n} from './utils'\n\nimport {\n Updater,\n PropGetterValue,\n Options,\n TableState,\n ColumnDef,\n Row,\n Column,\n Cell,\n Header,\n AccessorFn,\n HeaderRenderProps,\n TableProps,\n TableBodyProps,\n PropGetter,\n Getter,\n RowProps,\n CellProps,\n TableInstance,\n RowValues,\n PartialGenerics,\n CoreCell,\n Renderable,\n UseRenderer,\n RowModel,\n TableFeature,\n AnyGenerics,\n} from './types'\n\nimport { ColumnSizing } from './features/ColumnSizing'\nimport { Expanding } from './features/Expanding'\nimport { Filters } from './features/Filters'\nimport { Grouping } from './features/Grouping'\nimport { Ordering } from './features/Ordering'\nimport { Pagination } from './features/Pagination'\nimport { Pinning } from './features/Pinning'\nimport { RowSelection } from './features/RowSelection'\nimport { Sorting } from './features/Sorting'\nimport { Visibility } from './features/Visibility'\nimport { Headers } from './features/Headers'\n\nconst features: TableFeature[] = [\n Headers,\n Visibility,\n Ordering,\n Pinning,\n Filters,\n Sorting,\n Grouping,\n Expanding,\n Pagination,\n RowSelection,\n ColumnSizing,\n]\n\nexport type CoreOptions<TGenerics extends AnyGenerics> = {\n data: TGenerics['Row'][]\n columns: ColumnDef<TGenerics>[]\n state: Partial<TableState>\n onStateChange: (updater: Updater<TableState>) => void\n render: TGenerics['Render']\n debugAll?: boolean\n debugTable?: boolean\n debugHeaders?: boolean\n debugColumns?: boolean\n debugRows?: boolean\n defaultColumn?: Partial<ColumnDef<TGenerics>>\n initialState?: Partial<TableState>\n getSubRows?: (\n originalRow: TGenerics['Row'],\n index: number\n ) => TGenerics['Row'][]\n getRowId?: (\n originalRow: TGenerics['Row'],\n index: number,\n parent?: Row<TGenerics>\n ) => string\n autoResetAll?: boolean\n}\n\nexport type TableCore<TGenerics extends AnyGenerics> = {\n initialState: TableState\n reset: () => void\n options: RequiredKeys<Options<TGenerics>, 'state'>\n setOptions: (newOptions: Updater<Options<TGenerics>>) => void\n getRowId: (\n _: TGenerics['Row'],\n index: number,\n parent?: Row<TGenerics>\n ) => string\n getState: () => TableState\n setState: (updater: Updater<TableState>) => void\n getDefaultColumn: () => Partial<ColumnDef<TGenerics>>\n getColumnDefs: () => ColumnDef<TGenerics>[]\n createColumn: (\n columnDef: ColumnDef<TGenerics>,\n depth: number,\n parent?: Column<TGenerics>\n ) => Column<TGenerics>\n getAllColumns: () => Column<TGenerics>[]\n getAllFlatColumns: () => Column<TGenerics>[]\n getAllFlatColumnsById: () => Record<string, Column<TGenerics>>\n getAllLeafColumns: () => Column<TGenerics>[]\n getColumn: (columnId: string) => Column<TGenerics>\n getTotalWidth: () => number\n createCell: (\n row: Row<TGenerics>,\n column: Column<TGenerics>,\n value: any\n ) => Cell<TGenerics>\n createRow: (\n id: string,\n original: TGenerics['Row'] | undefined,\n rowIndex: number,\n depth: number,\n values: Record<string, any>\n ) => Row<TGenerics>\n getCoreRowModel: () => RowModel<TGenerics>\n getRowModel: () => RowModel<TGenerics>\n getRow: (id: string) => Row<TGenerics>\n getCell: (rowId: string, columnId: string) => Cell<TGenerics>\n getTableProps: PropGetter<TableProps>\n getTableBodyProps: PropGetter<TableBodyProps>\n getRowProps: <TGetter extends Getter<RowProps>>(\n rowId: string,\n userProps?: TGetter\n ) => undefined | PropGetterValue<RowProps, TGetter>\n getCellProps: <TGetter extends Getter<CellProps>>(\n rowId: string,\n columnId: string,\n userProps?: TGetter\n ) => undefined | PropGetterValue<CellProps, TGetter>\n getTableWidth: () => number\n getLeftTableWidth: () => number\n getCenterTableWidth: () => number\n getRightTableWidth: () => number\n render: <TProps>(\n template: Renderable<TGenerics, TProps>,\n props: TProps\n ) => string | null | ReturnType<UseRenderer<TGenerics>>\n}\n\nexport type CoreRow<TGenerics extends AnyGenerics> = {\n id: string\n index: number\n original?: TGenerics['Row']\n depth: number\n values: RowValues\n subRows: Row<TGenerics>[]\n getLeafRows: () => Row<TGenerics>[]\n getRowProps: PropGetter<RowProps>\n originalSubRows?: TGenerics['Row'][]\n getAllCells: () => Cell<TGenerics>[]\n getAllCellsByColumnId: () => Record<string, Cell<TGenerics>>\n}\n\nexport type CoreColumnDef<TGenerics extends AnyGenerics> = {\n id: string\n accessorKey?: string & keyof TGenerics['Row']\n accessorFn?: AccessorFn<TGenerics['Row']>\n columns?: ColumnDef<TGenerics>[]\n header?: Renderable<\n TGenerics,\n {\n instance: TableInstance<TGenerics>\n header: Header<TGenerics>\n column: Column<TGenerics>\n }\n >\n footer?: Renderable<\n TGenerics,\n {\n instance: TableInstance<TGenerics>\n header: Header<TGenerics>\n column: Column<TGenerics>\n }\n >\n cell?: Renderable<\n TGenerics,\n {\n instance: TableInstance<TGenerics>\n row: Row<TGenerics>\n column: Column<TGenerics>\n cell: Cell<TGenerics>\n value: TGenerics['Value']\n }\n >\n meta?: TGenerics['ColumnMeta']\n}\n// & GeneratedProperties<true>\n\nexport type CoreColumn<TGenerics extends AnyGenerics> = {\n id: string\n depth: number\n accessorFn?: AccessorFn<TGenerics['Row']>\n columnDef: ColumnDef<TGenerics>\n getWidth: () => number\n columns: Column<TGenerics>[]\n parent?: Column<TGenerics>\n getFlatColumns: () => Column<TGenerics>[]\n getLeafColumns: () => Column<TGenerics>[]\n}\n\nexport function createTableInstance<TGenerics extends AnyGenerics>(\n options: Options<TGenerics>\n): TableInstance<TGenerics> {\n if (options.debugAll || options.debugTable) {\n console.info('Creating Table Instance...')\n }\n\n let instance = {} as TableInstance<TGenerics>\n\n const defaultOptions = features.reduce((obj, feature) => {\n return Object.assign(obj, feature.getDefaultOptions?.(instance))\n }, {})\n\n const buildOptions = (options: Options<TGenerics>) => ({\n ...defaultOptions,\n ...options,\n })\n\n instance.options = buildOptions(options)\n\n const initialState = {\n ...features.reduce((obj, feature) => {\n return Object.assign(obj, feature.getInitialState?.())\n }, {}),\n ...(options.initialState ?? {}),\n } as TableState\n\n const finalInstance: TableInstance<TGenerics> = {\n ...instance,\n ...features.reduce((obj, feature) => {\n return Object.assign(obj, feature.getInstance?.(instance))\n }, {}),\n initialState,\n reset: () => {\n instance.setState(instance.initialState)\n },\n setOptions: updater => {\n instance.options = buildOptions(\n functionalUpdate(updater, instance.options)\n )\n },\n render: (template, props) => {\n if (typeof instance.options.render === 'function') {\n return instance.options.render(template, props)\n }\n\n if (typeof template === 'function') {\n return (template as Function)(props)\n }\n\n return template\n },\n\n getRowId: (_: TGenerics['Row'], index: number, parent?: Row<TGenerics>) =>\n `${parent ? [parent.id, index].join('.') : index}`,\n\n getState: () => {\n return instance.options.state as TableState\n },\n\n setState: (updater: Updater<TableState>) => {\n instance.options.onStateChange?.(updater)\n },\n\n getDefaultColumn: memo(\n () => [instance.options.defaultColumn],\n defaultColumn => {\n defaultColumn = (defaultColumn ?? {}) as Partial<ColumnDef<TGenerics>>\n\n return {\n header: (props: HeaderRenderProps<Header<TGenerics>>) =>\n props.header.column.id,\n footer: (props: HeaderRenderProps<Header<TGenerics>>) =>\n props.header.column.id,\n cell: ({ value = '' }: { value: any }): JSX.Element =>\n typeof value === 'boolean' ? value.toString() : value,\n ...features.reduce((obj, feature) => {\n return Object.assign(obj, feature.getDefaultColumn?.())\n }, {}),\n ...defaultColumn,\n } as Partial<ColumnDef<TGenerics>>\n },\n {\n debug: () => instance.options.debugAll ?? instance.options.debugColumns,\n key: 'getDefaultColumn',\n }\n ),\n\n getColumnDefs: () => instance.options.columns,\n\n createColumn: (columnDef, depth: number, parent) => {\n const defaultColumn = instance.getDefaultColumn()\n\n let id =\n columnDef.id ??\n columnDef.accessorKey ??\n (typeof columnDef.header === 'string' ? columnDef.header : undefined)\n\n let accessorFn: AccessorFn<TGenerics['Row']> | undefined\n\n if (columnDef.accessorFn) {\n accessorFn = columnDef.accessorFn\n } else if (columnDef.accessorKey) {\n accessorFn = (originalRow?: TGenerics['Row']) =>\n (originalRow as any)[columnDef.accessorKey]\n }\n\n if (!id) {\n if (process.env.NODE_ENV !== 'production') {\n throw new Error(\n columnDef.accessorFn\n ? `Columns require an id when using an accessorFn`\n : `Columns require an id when using a non-string header`\n )\n }\n throw new Error()\n }\n\n let column: CoreColumn<TGenerics> = {\n ...defaultColumn,\n ...columnDef,\n id: `${id}`,\n accessorFn,\n parent: parent as any,\n depth,\n columnDef,\n columns: [],\n getWidth: () => instance.getColumnWidth(column.id),\n getFlatColumns: memo(\n () => [true],\n () => {\n return [\n column as Column<TGenerics>,\n ...column.columns?.flatMap(d => d.getFlatColumns()),\n ]\n },\n {\n key: 'column.getFlatColumns',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n getLeafColumns: memo(\n () => [instance.getOrderColumnsFn()],\n orderColumns => {\n if (column.columns?.length) {\n let leafColumns = column.columns.flatMap(column =>\n column.getLeafColumns()\n )\n\n return orderColumns(leafColumns)\n }\n\n return [column as Column<TGenerics>]\n },\n {\n key: 'column.getLeafColumns',\n debug: () =>\n instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n }\n\n column = features.reduce((obj, feature) => {\n return Object.assign(obj, feature.createColumn?.(column, instance))\n }, column)\n\n // Yes, we have to convert instance to uknown, because we know more than the compiler here.\n return column as Column<TGenerics>\n },\n\n getAllColumns: memo(\n () => [instance.getColumnDefs()],\n columnDefs => {\n const recurseColumns = (\n columnDefs: ColumnDef<TGenerics>[],\n parent?: Column<TGenerics>,\n depth = 0\n ): Column<TGenerics>[] => {\n return columnDefs.map(columnDef => {\n const column = instance.createColumn(columnDef, depth, parent)\n\n column.columns = columnDef.columns\n ? recurseColumns(columnDef.columns, column, depth + 1)\n : []\n\n return column\n })\n }\n\n return recurseColumns(columnDefs)\n },\n {\n key: 'getAllColumns',\n debug: () => instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n\n getAllFlatColumns: memo(\n () => [instance.getAllColumns()],\n allColumns => {\n return allColumns.flatMap(column => {\n return column.getFlatColumns()\n })\n },\n {\n key: 'getAllFlatColumns',\n debug: () => instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n\n getAllFlatColumnsById: memo(\n () => [instance.getAllFlatColumns()],\n flatColumns => {\n return flatColumns.reduce((acc, column) => {\n acc[column.id] = column\n return acc\n }, {} as Record<string, Column<TGenerics>>)\n },\n {\n key: 'getAllFlatColumnsById',\n debug: () => instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n\n getAllLeafColumns: memo(\n () => [instance.getAllColumns(), instance.getOrderColumnsFn()],\n (allColumns, orderColumns) => {\n let leafColumns = allColumns.flatMap(column => column.getLeafColumns())\n return orderColumns(leafColumns)\n },\n {\n key: 'getAllLeafColumns',\n debug: () => instance.options.debugAll ?? instance.options.debugColumns,\n }\n ),\n\n getColumn: columnId => {\n const column = instance.getAllFlatColumnsById()[columnId]\n\n if (!column) {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(`[Table] Column with id ${columnId} does not exist.`)\n }\n throw new Error()\n }\n\n return column\n },\n\n createCell: (row, column, value) => {\n const cell: CoreCell<TGenerics> = {\n id: `${row.id}_${column.id}`,\n rowId: row.id,\n columnId: column.id,\n row,\n column,\n value,\n getCellProps: userProps =>\n instance.getCellProps(row.id, column.id, userProps)!,\n renderCell: () =>\n column.cell\n ? instance.render(column.cell, {\n instance,\n column,\n row,\n cell: cell as Cell<TGenerics>,\n value,\n })\n : null,\n }\n\n features.forEach(feature => {\n Object.assign(\n cell,\n feature.createCell?.(\n cell as Cell<TGenerics>,\n column,\n row as Row<TGenerics>,\n instance\n )\n )\n }, {})\n\n return cell as Cell<TGenerics>\n },\n\n createRow: (id, original, rowIndex, depth, values) => {\n let row: CoreRow<TGenerics> = {\n id,\n index: rowIndex,\n original,\n depth,\n values,\n subRows: [],\n getLeafRows: () => flattenBy(row.subRows, d => d.subRows),\n getRowProps: userProps => instance.getRowProps(row.id, userProps)!,\n getAllCells: undefined!,\n getAllCellsByColumnId: undefined!,\n }\n\n row.getAllCells = memo(\n () => [instance.getAllLeafColumns()],\n leafColumns => {\n return leafColumns.map(column => {\n return instance.createCell(\n row as Row<TGenerics>,\n column,\n row.values[column.id]\n )\n })\n },\n {\n key: process.env.NODE_ENV !== 'production' ? 'row.getAllCells' : '',\n debug: () => instance.options.debugAll ?? instance.options.debugRows,\n }\n )\n\n row.getAllCellsByColumnId = memo(\n () => [row.getAllCells()],\n allCells => {\n return allCells.reduce((acc, cell) => {\n acc[cell.columnId] = cell\n return acc\n }, {} as Record<string, Cell<TGenerics>>)\n },\n {\n key: 'row.getAllCellsByColumnId',\n debug: () => instance.options.debugAll ?? instance.options.debugRows,\n }\n )\n\n for (let i = 0; i < features.length; i++) {\n const feature = features[i]\n Object.assign(row, feature.createRow?.(row, instance))\n }\n\n return row as Row<TGenerics>\n },\n\n getCoreRowModel: memo(\n () => [instance.options.data],\n (\n data\n ): {\n rows: Row<TGenerics>[]\n flatRows: Row<TGenerics>[]\n rowsById: Record<string, Row<TGenerics>>\n } => {\n // Access the row model using initial columns\n const rows: Row<TGenerics>[] = []\n const flatRows: Row<TGenerics>[] = []\n const rowsById: Record<string, Row<TGenerics>> = {}\n\n const leafColumns = instance.getAllLeafColumns()\n\n const accessRow = (\n originalRow: TGenerics['Row'],\n rowIndex: number,\n depth = 0,\n parentRows: Row<TGenerics>[],\n parent?: Row<TGenerics>\n ) => {\n const id = instance.getRowId(originalRow, rowIndex, parent)\n\n if (!id) {\n if (process.env.NODE_ENV !== 'production') {\n throw new Error(`getRowId expected an ID, but got ${id}`)\n }\n }\n\n const values: Record<string, any> = {}\n\n for (let i = 0; i < leafColumns.length; i++) {\n const column = leafColumns[i]\n if (column && column.accessorFn) {\n values[column.id] = column.accessorFn(originalRow, rowIndex)\n }\n }\n\n // Make the row\n const row = instance.createRow(\n id,\n originalRow,\n rowIndex,\n depth,\n values\n )\n\n // Push instance row into the parentRows array\n parentRows.push(row)\n // Keep track of every row in a flat array\n flatRows.push(row)\n // Also keep track of every row by its ID\n rowsById[id] = row\n\n // Get the original subrows\n if (instance.options.getSubRows) {\n const originalSubRows = instance.options.getSubRows(\n originalRow,\n rowIndex\n )\n\n // Then recursively access them\n if (originalSubRows?.length) {\n row.originalSubRows = originalSubRows\n const subRows: Row<TGenerics>[] = []\n\n for (let i = 0; i < row.originalSubRows.length; i++) {\n accessRow(\n row.originalSubRows[i] as TGenerics['Row'],\n i,\n depth + 1,\n subRows,\n row\n )\n }\n row.subRows = subRows\n }\n }\n }\n\n for (let i = 0; i < data.length; i++) {\n accessRow(data[i] as TGenerics['Row'], i, 0, rows)\n }\n\n return { rows, flatRows, rowsById }\n },\n {\n key: 'getRowModel',\n debug: () => instance.options.debugAll ?? instance.options.debugTable,\n onChange: () => {\n instance._notifyFiltersReset()\n instance._notifyRowSelectionReset()\n },\n }\n ),\n\n // The final calls start at the bottom of the model,\n // expanded rows, which then work their way up\n\n getRowModel: () => {\n return instance.getPaginationRowModel()\n },\n\n getRow: (id: string) => {\n const row = instance.getRowModel().rowsById[id]\n\n if (!row) {\n if (process.env.NODE_ENV !== 'production') {\n throw new Error(`getRow expected an ID, but got ${id}`)\n }\n throw new Error()\n }\n\n return row\n },\n\n getCell: (rowId: string, columnId: string) => {\n const row = instance.getRow(rowId)\n\n if (!row) {\n if (process.env.NODE_ENV !== 'production') {\n throw new Error(`[Table] could not find row with id ${rowId}`)\n }\n throw new Error()\n }\n\n const cell = row.getAllCellsByColumnId()[columnId]\n\n if (!cell) {\n if (process.env.NODE_ENV !== 'production') {\n throw new Error(\n `[Table] could not find cell ${columnId} in row ${rowId}`\n )\n }\n throw new Error()\n }\n\n return cell\n },\n\n getTableProps: userProps => {\n return propGetter(\n {\n role: 'table',\n },\n userProps\n )\n },\n\n getTableBodyProps: userProps => {\n return propGetter(\n {\n role: 'rowgroup',\n },\n userProps\n )\n },\n\n getRowProps: (rowId, userProps) => {\n const row = instance.getRow(rowId)\n if (!row) {\n return\n }\n\n return propGetter(\n {\n key: row.id,\n role: 'row',\n },\n userProps\n )\n },\n\n getCellProps: (rowId, columnId, userProps) => {\n const cell = instance.getCell(rowId, columnId)\n\n if (!cell) {\n return\n }\n\n return propGetter(\n {\n key: cell.id,\n role: 'gridcell',\n },\n userProps\n )\n },\n\n getTableWidth: () =>\n instance.getHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.getWidth()\n }, 0) ?? 0,\n getLeftTableWidth: () =>\n instance.getLeftHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.getWidth()\n }, 0) ?? 0,\n getCenterTableWidth: () =>\n instance.getCenterHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.getWidth()\n }, 0) ?? 0,\n getRightTableWidth: () =>\n instance.getRightHeaderGroups()[0]?.headers.reduce((sum, header) => {\n return sum + header.getWidth()\n }, 0) ?? 0,\n }\n\n instance = Object.assign(instance, finalInstance)\n\n return instance\n}\n"],"names":["features","Headers","Visibility","Ordering","Pinning","Filters","Sorting","Grouping","Expanding","Pagination","RowSelection","ColumnSizing","createTableInstance","options","debugAll","debugTable","console","info","instance","defaultOptions","reduce","obj","feature","Object","assign","getDefaultOptions","buildOptions","initialState","getInitialState","finalInstance","getInstance","reset","setState","setOptions","updater","functionalUpdate","render","template","props","getRowId","_","index","parent","id","join","getState","state","onStateChange","getDefaultColumn","memo","defaultColumn","header","column","footer","cell","value","toString","debug","debugColumns","key","getColumnDefs","columns","createColumn","columnDef","depth","accessorKey","undefined","accessorFn","originalRow","process","env","NODE_ENV","Error","getWidth","getColumnWidth","getFlatColumns","flatMap","d","getLeafColumns","getOrderColumnsFn","orderColumns","length","leafColumns","getAllColumns","columnDefs","recurseColumns","map","getAllFlatColumns","allColumns","getAllFlatColumnsById","flatColumns","acc","getAllLeafColumns","getColumn","columnId","warn","createCell","row","rowId","getCellProps","userProps","renderCell","forEach","createRow","original","rowIndex","values","subRows","getLeafRows","flattenBy","getRowProps","getAllCells","getAllCellsByColumnId","debugRows","allCells","i","getCoreRowModel","data","rows","flatRows","rowsById","accessRow","parentRows","push","getSubRows","originalSubRows","onChange","_notifyFiltersReset","_notifyRowSelectionReset","getRowModel","getPaginationRowModel","getRow","getCell","getTableProps","propGetter","role","getTableBodyProps","getTableWidth","getHeaderGroups","headers","sum","getLeftTableWidth","getLeftHeaderGroups","getCenterTableWidth","getCenterHeaderGroups","getRightTableWidth","getRightHeaderGroups"],"mappings":"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"}
@@ -17,9 +17,9 @@ var _rollupPluginBabelHelpers = require('./_virtual/_rollupPluginBabelHelpers.js
17
17
  //
18
18
  function init(opts) {
19
19
  return {
20
- createTableFactory: function createTableFactory(options) {
20
+ createTableFactory: function createTableFactory(factoryOptions) {
21
21
  return function () {
22
- return _createTable(undefined, undefined, _rollupPluginBabelHelpers["extends"]({}, options, opts));
22
+ return _createTable(undefined, undefined, _rollupPluginBabelHelpers["extends"]({}, factoryOptions, opts));
23
23
  };
24
24
  },
25
25
  createTable: function createTable() {
@@ -1 +1 @@
1
- {"version":3,"file":"createTable.js","sources":["../../src/createTable.tsx"],"sourcesContent":["import { CustomFilterTypes } from './features/Filters'\nimport { CustomAggregationTypes } from './features/Grouping'\nimport { CustomSortingTypes } from './features/Sorting'\nimport { ColumnDef, AccessorFn, PartialGenerics, AnyRender } from './types'\nimport { Overwrite, PartialKeys } from './utils'\n\nexport type CreateTableFactory<TGenerics extends PartialGenerics> = <\n TSubGenerics extends {\n Row: any\n ColumnMeta?: object\n }\n>() => Table<\n Overwrite<\n TGenerics,\n { Row: TSubGenerics['Row']; ColumnMeta: TSubGenerics['ColumnMeta'] }\n >\n>\n\nexport type CreateTableFactoryOptions<\n TRender extends AnyRender,\n TFilterFns extends CustomFilterTypes<any>,\n TSortingFns extends CustomSortingTypes<any>,\n TAggregationFns extends CustomAggregationTypes<any>\n> = {\n render: TRender\n filterFns?: TFilterFns\n sortingFns?: TSortingFns\n aggregationFns?: TAggregationFns\n}\n\nexport type Table<TGenerics extends PartialGenerics> = {\n generics: TGenerics\n __options: CreateTableFactoryOptions<any, any, any, any>\n createColumns: <TColumnDef extends ColumnDef<any>>(\n columns: TColumnDef[]\n ) => TColumnDef[]\n createGroup: (\n column: Overwrite<\n | Overwrite<\n ColumnDef<any>,\n {\n header: string\n id?: string\n }\n >\n | Overwrite<\n ColumnDef<any>,\n {\n id: string\n header?: string | ((...any: any) => any)\n }\n >,\n {\n accessorFn?: never\n accessorKey?: never\n columns?: ColumnDef<any>[]\n }\n >\n ) => ColumnDef<TGenerics>\n createDisplayColumn: (\n column: Overwrite<\n PartialKeys<ColumnDef<TGenerics>, 'accessorFn' | 'accessorKey'>,\n {\n columns?: ColumnDef<any>[]\n }\n >\n ) => ColumnDef<TGenerics>\n createDataColumn: <\n TAccessor extends AccessorFn<TGenerics['Row']> | keyof TGenerics['Row']\n >(\n accessor: TAccessor,\n column: Overwrite<\n TAccessor extends (...args: any[]) => any\n ? // Accessor Fn\n ColumnDef<Overwrite<TGenerics, { Value: ReturnType<TAccessor> }>>\n : TAccessor extends keyof TGenerics['Row']\n ? // Accessor Key\n Overwrite<\n ColumnDef<\n Overwrite<TGenerics, { Value: TGenerics['Row'][TAccessor] }>\n >,\n {\n id?: string\n }\n >\n : never,\n {\n accessorFn?: never\n accessorKey?: never\n columns?: ColumnDef<any>[]\n }\n >\n ) => ColumnDef<TGenerics>\n}\n\ntype InitTable<TRender extends AnyRender> = {\n createTableFactory: <TGenerics extends PartialGenerics>(\n options?: CreateTableFactoryOptions<TRender, any, any, any>\n ) => CreateTableFactory<Overwrite<TGenerics, { Render: TRender }>>\n createTable: CreateTableFactory<\n Overwrite<PartialGenerics, { Render: TRender }>\n >\n}\n\n//\n\nexport function init<TRender extends AnyRender>(opts: {\n render: TRender\n}): InitTable<TRender> {\n return {\n createTableFactory: options => () =>\n _createTable(undefined, undefined, { ...options, ...opts }),\n createTable: () => _createTable(undefined, undefined, opts),\n }\n}\n\nfunction _createTable<TGenerics extends PartialGenerics>(\n _?: undefined,\n __?: undefined,\n __options?: CreateTableFactoryOptions<any, any, any, any>\n): Table<TGenerics> {\n return {\n generics: undefined!,\n __options: __options ?? {\n render: () => {\n throw new Error()\n },\n },\n createColumns: columns => columns,\n createDisplayColumn: column => column as any,\n createGroup: column => column as any,\n createDataColumn: (accessor, column): any => {\n column = {\n ...column,\n id: column.id,\n }\n\n if (typeof accessor === 'string') {\n return {\n ...column,\n id: column.id ?? accessor,\n accessorKey: accessor,\n }\n }\n\n if (typeof accessor === 'function') {\n return {\n ...column,\n accessorFn: accessor,\n }\n }\n\n throw new Error('Invalid accessor')\n },\n }\n}\n"],"names":["init","opts","createTableFactory","options","_createTable","undefined","createTable","_","__","__options","generics","render","Error","createColumns","columns","createDisplayColumn","column","createGroup","createDataColumn","accessor","id","accessorKey","accessorFn"],"mappings":";;;;;;;;;;;;;;;;AAwGA;AAEO,SAASA,IAAT,CAAyCC,IAAzC,EAEgB;AACrB,SAAO;AACLC,IAAAA,kBAAkB,EAAE,4BAAAC,OAAO;AAAA,aAAI;AAAA,eAC7BC,YAAY,CAACC,SAAD,EAAYA,SAAZ,2CAA4BF,OAA5B,EAAwCF,IAAxC,EADiB;AAAA,OAAJ;AAAA,KADtB;AAGLK,IAAAA,WAAW,EAAE;AAAA,aAAMF,YAAY,CAACC,SAAD,EAAYA,SAAZ,EAAuBJ,IAAvB,CAAlB;AAAA;AAHR,GAAP;AAKD;;AAED,SAASG,YAAT,CACEG,CADF,EAEEC,EAFF,EAGEC,SAHF,EAIoB;AAClB,SAAO;AACLC,IAAAA,QAAQ,EAAEL,SADL;AAELI,IAAAA,SAAS,EAAEA,SAAF,WAAEA,SAAF,GAAe;AACtBE,MAAAA,MAAM,EAAE,kBAAM;AACZ,cAAM,IAAIC,KAAJ,EAAN;AACD;AAHqB,KAFnB;AAOLC,IAAAA,aAAa,EAAE,uBAAAC,OAAO;AAAA,aAAIA,OAAJ;AAAA,KAPjB;AAQLC,IAAAA,mBAAmB,EAAE,6BAAAC,MAAM;AAAA,aAAIA,MAAJ;AAAA,KARtB;AASLC,IAAAA,WAAW,EAAE,qBAAAD,MAAM;AAAA,aAAIA,MAAJ;AAAA,KATd;AAULE,IAAAA,gBAAgB,EAAE,0BAACC,QAAD,EAAWH,MAAX,EAA2B;AAC3CA,MAAAA,MAAM,4CACDA,MADC;AAEJI,QAAAA,EAAE,EAAEJ,MAAM,CAACI;AAFP,QAAN;;AAKA,UAAI,OAAOD,QAAP,KAAoB,QAAxB,EAAkC;AAAA;;AAChC,wDACKH,MADL;AAEEI,UAAAA,EAAE,gBAAEJ,MAAM,CAACI,EAAT,yBAAeD,QAFnB;AAGEE,UAAAA,WAAW,EAAEF;AAHf;AAKD;;AAED,UAAI,OAAOA,QAAP,KAAoB,UAAxB,EAAoC;AAClC,wDACKH,MADL;AAEEM,UAAAA,UAAU,EAAEH;AAFd;AAID;;AAED,YAAM,IAAIP,KAAJ,CAAU,kBAAV,CAAN;AACD;AAhCI,GAAP;AAkCD;;;;"}
1
+ {"version":3,"file":"createTable.js","sources":["../../src/createTable.tsx"],"sourcesContent":["import { CustomFilterTypes } from './features/Filters'\nimport { CustomAggregationTypes } from './features/Grouping'\nimport { CustomSortingTypes } from './features/Sorting'\nimport {\n ColumnDef,\n AccessorFn,\n PartialGenerics,\n AnyRender,\n AnyGenerics,\n} from './types'\nimport { Overwrite, PartialKeys } from './utils'\n\nexport type CreateTableFactory<TGenerics extends AnyGenerics> = <\n TSubGenerics extends {\n Row: any\n ColumnMeta?: object\n }\n>() => Table<\n Overwrite<\n TGenerics,\n { Row: TSubGenerics['Row']; ColumnMeta: TSubGenerics['ColumnMeta'] }\n >\n>\n\nexport type CreateTableFactoryOptions<\n TRender extends AnyRender,\n TFilterFns extends CustomFilterTypes<any>,\n TSortingFns extends CustomSortingTypes<any>,\n TAggregationFns extends CustomAggregationTypes<any>\n> = {\n render: TRender\n filterFns?: TFilterFns\n sortingFns?: TSortingFns\n aggregationFns?: TAggregationFns\n}\n\nexport type Table<TGenerics extends AnyGenerics> = {\n generics: TGenerics\n __options: CreateTableFactoryOptions<any, any, any, any>\n createColumns: <TColumnDef extends ColumnDef<any>>(\n columns: TColumnDef[]\n ) => TColumnDef[]\n createGroup: (\n column: Overwrite<\n | Overwrite<\n ColumnDef<any>,\n {\n header: string\n id?: string\n }\n >\n | Overwrite<\n ColumnDef<any>,\n {\n id: string\n header?: string | ((...any: any) => any)\n }\n >,\n {\n accessorFn?: never\n accessorKey?: never\n columns?: ColumnDef<any>[]\n }\n >\n ) => ColumnDef<TGenerics>\n createDisplayColumn: (\n column: Overwrite<\n PartialKeys<ColumnDef<TGenerics>, 'accessorFn' | 'accessorKey'>,\n {\n columns?: ColumnDef<any>[]\n }\n >\n ) => ColumnDef<TGenerics>\n createDataColumn: <\n TAccessor extends AccessorFn<TGenerics['Row']> | keyof TGenerics['Row']\n >(\n accessor: TAccessor,\n column: Overwrite<\n TAccessor extends (...args: any[]) => any\n ? // Accessor Fn\n ColumnDef<Overwrite<TGenerics, { Value: ReturnType<TAccessor> }>>\n : TAccessor extends keyof TGenerics['Row']\n ? // Accessor Key\n Overwrite<\n ColumnDef<\n Overwrite<TGenerics, { Value: TGenerics['Row'][TAccessor] }>\n >,\n {\n id?: string\n }\n >\n : never,\n {\n accessorFn?: never\n accessorKey?: never\n columns?: ColumnDef<any>[]\n }\n >\n ) => ColumnDef<TGenerics>\n}\n\ntype InitTable<TRender extends AnyRender> = {\n createTableFactory: <TGenerics extends AnyGenerics>(\n options: CreateTableFactoryOptions<TRender, any, any, any>\n ) => CreateTableFactory<Overwrite<TGenerics, { Render: TRender }>>\n createTable: CreateTableFactory<\n Overwrite<PartialGenerics, { Render: TRender }>\n >\n}\n\n//\n\nexport function init<TRender extends AnyRender>(opts: {\n render: TRender\n}): InitTable<TRender> {\n return {\n createTableFactory: factoryOptions => () =>\n _createTable(undefined, undefined, { ...factoryOptions, ...opts }),\n createTable: () => _createTable(undefined, undefined, opts),\n }\n}\n\nfunction _createTable<TGenerics extends AnyGenerics>(\n _: undefined,\n __: undefined,\n __options: CreateTableFactoryOptions<any, any, any, any>\n): Table<TGenerics> {\n return {\n generics: undefined!,\n __options: __options ?? {\n render: () => {\n throw new Error()\n },\n },\n createColumns: columns => columns,\n createDisplayColumn: column => column as any,\n createGroup: column => column as any,\n createDataColumn: (accessor, column): any => {\n column = {\n ...column,\n id: column.id,\n }\n\n if (typeof accessor === 'string') {\n return {\n ...column,\n id: column.id ?? accessor,\n accessorKey: accessor,\n }\n }\n\n if (typeof accessor === 'function') {\n return {\n ...column,\n accessorFn: accessor,\n }\n }\n\n throw new Error('Invalid accessor')\n },\n }\n}\n"],"names":["init","opts","createTableFactory","factoryOptions","_createTable","undefined","createTable","_","__","__options","generics","render","Error","createColumns","columns","createDisplayColumn","column","createGroup","createDataColumn","accessor","id","accessorKey","accessorFn"],"mappings":";;;;;;;;;;;;;;;;AA8GA;AAEO,SAASA,IAAT,CAAyCC,IAAzC,EAEgB;AACrB,SAAO;AACLC,IAAAA,kBAAkB,EAAE,4BAAAC,cAAc;AAAA,aAAI;AAAA,eACpCC,YAAY,CAACC,SAAD,EAAYA,SAAZ,2CAA4BF,cAA5B,EAA+CF,IAA/C,EADwB;AAAA,OAAJ;AAAA,KAD7B;AAGLK,IAAAA,WAAW,EAAE;AAAA,aAAMF,YAAY,CAACC,SAAD,EAAYA,SAAZ,EAAuBJ,IAAvB,CAAlB;AAAA;AAHR,GAAP;AAKD;;AAED,SAASG,YAAT,CACEG,CADF,EAEEC,EAFF,EAGEC,SAHF,EAIoB;AAClB,SAAO;AACLC,IAAAA,QAAQ,EAAEL,SADL;AAELI,IAAAA,SAAS,EAAEA,SAAF,WAAEA,SAAF,GAAe;AACtBE,MAAAA,MAAM,EAAE,kBAAM;AACZ,cAAM,IAAIC,KAAJ,EAAN;AACD;AAHqB,KAFnB;AAOLC,IAAAA,aAAa,EAAE,uBAAAC,OAAO;AAAA,aAAIA,OAAJ;AAAA,KAPjB;AAQLC,IAAAA,mBAAmB,EAAE,6BAAAC,MAAM;AAAA,aAAIA,MAAJ;AAAA,KARtB;AASLC,IAAAA,WAAW,EAAE,qBAAAD,MAAM;AAAA,aAAIA,MAAJ;AAAA,KATd;AAULE,IAAAA,gBAAgB,EAAE,0BAACC,QAAD,EAAWH,MAAX,EAA2B;AAC3CA,MAAAA,MAAM,4CACDA,MADC;AAEJI,QAAAA,EAAE,EAAEJ,MAAM,CAACI;AAFP,QAAN;;AAKA,UAAI,OAAOD,QAAP,KAAoB,QAAxB,EAAkC;AAAA;;AAChC,wDACKH,MADL;AAEEI,UAAAA,EAAE,gBAAEJ,MAAM,CAACI,EAAT,yBAAeD,QAFnB;AAGEE,UAAAA,WAAW,EAAEF;AAHf;AAKD;;AAED,UAAI,OAAOA,QAAP,KAAoB,UAAxB,EAAoC;AAClC,wDACKH,MADL;AAEEM,UAAAA,UAAU,EAAEH;AAFd;AAID;;AAED,YAAM,IAAIP,KAAJ,CAAU,kBAAV,CAAN;AACD;AAhCI,GAAP;AAkCD;;;;"}
@@ -22,6 +22,9 @@ var defaultColumnSizing = {
22
22
  maxWidth: Number.MAX_SAFE_INTEGER
23
23
  };
24
24
  var ColumnSizing = {
25
+ getDefaultColumn: function getDefaultColumn() {
26
+ return defaultColumnSizing;
27
+ },
25
28
  getInitialState: function getInitialState() {
26
29
  return {
27
30
  columnSizing: {},
@@ -44,6 +47,18 @@ var ColumnSizing = {
44
47
  },
45
48
  getInstance: function getInstance(instance) {
46
49
  return {
50
+ getColumnWidth: function getColumnWidth(columnId) {
51
+ var _column$minWidth, _ref, _column$maxWidth;
52
+
53
+ var column = instance.getColumn(columnId);
54
+
55
+ if (!column) {
56
+ throw new Error();
57
+ }
58
+
59
+ var columnSize = instance.getState().columnSizing[column.id];
60
+ return Math.min(Math.max((_column$minWidth = column.minWidth) != null ? _column$minWidth : defaultColumnSizing.minWidth, (_ref = columnSize != null ? columnSize : column.width) != null ? _ref : defaultColumnSizing.width), (_column$maxWidth = column.maxWidth) != null ? _column$maxWidth : defaultColumnSizing.maxWidth);
61
+ },
47
62
  setColumnSizing: function setColumnSizing(updater) {
48
63
  return instance.options.onColumnSizingChange == null ? void 0 : instance.options.onColumnSizingChange(updater, utils.functionalUpdate(updater, instance.getState().columnSizing));
49
64
  },
@@ -61,9 +76,9 @@ var ColumnSizing = {
61
76
  instance.setColumnSizingInfo((_instance$initialStat2 = instance.initialState.columnSizingInfo) != null ? _instance$initialStat2 : {});
62
77
  },
63
78
  resetColumnSize: function resetColumnSize(columnId) {
64
- instance.setColumnSizing(function (_ref) {
65
- _ref[columnId];
66
- var rest = _rollupPluginBabelHelpers.objectWithoutPropertiesLoose(_ref, [columnId].map(_rollupPluginBabelHelpers.toPropertyKey));
79
+ instance.setColumnSizing(function (_ref2) {
80
+ _ref2[columnId];
81
+ var rest = _rollupPluginBabelHelpers.objectWithoutPropertiesLoose(_ref2, [columnId].map(_rollupPluginBabelHelpers.toPropertyKey));
67
82
 
68
83
  return rest;
69
84
  });
@@ -82,7 +97,7 @@ var ColumnSizing = {
82
97
  return instance.getColumnCanResize(header.column.id);
83
98
  },
84
99
  getColumnCanResize: function getColumnCanResize(columnId) {
85
- var _ref2, _ref3, _column$enableResizin;
100
+ var _ref3, _ref4, _column$enableResizin;
86
101
 
87
102
  var column = instance.getColumn(columnId);
88
103
 
@@ -90,7 +105,7 @@ var ColumnSizing = {
90
105
  throw new Error();
91
106
  }
92
107
 
93
- return (_ref2 = (_ref3 = (_column$enableResizin = column.enableResizing) != null ? _column$enableResizin : instance.options.enableColumnResizing) != null ? _ref3 : column.defaultCanResize) != null ? _ref2 : true;
108
+ return (_ref3 = (_ref4 = (_column$enableResizin = column.enableResizing) != null ? _column$enableResizin : instance.options.enableColumnResizing) != null ? _ref4 : column.defaultCanResize) != null ? _ref3 : true;
94
109
  },
95
110
  getColumnIsResizing: function getColumnIsResizing(columnId) {
96
111
  var column = instance.getColumn(columnId);
@@ -141,9 +156,9 @@ var ColumnSizing = {
141
156
 
142
157
  var deltaOffset = clientXPos - ((_old$startOffset = old == null ? void 0 : old.startOffset) != null ? _old$startOffset : 0);
143
158
  var deltaPercentage = Math.max(deltaOffset / ((_old$startSize = old == null ? void 0 : old.startSize) != null ? _old$startSize : 0), -0.999999);
144
- old.columnSizingStart.forEach(function (_ref4) {
145
- var columnId = _ref4[0],
146
- headerWidth = _ref4[1];
159
+ old.columnSizingStart.forEach(function (_ref5) {
160
+ var columnId = _ref5[0],
161
+ headerWidth = _ref5[1];
147
162
  newColumnSizing[columnId] = Math.round(Math.max(headerWidth + headerWidth * deltaPercentage, 0) * 100) / 100;
148
163
  });
149
164
  return _rollupPluginBabelHelpers["extends"]({}, old, {