@tanstack/table-core 8.0.0-beta.8 → 8.0.3

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 (80) hide show
  1. package/build/cjs/aggregationFns.js +4 -1
  2. package/build/cjs/aggregationFns.js.map +1 -1
  3. package/build/cjs/core/cell.js.map +1 -1
  4. package/build/cjs/core/column.js.map +1 -1
  5. package/build/cjs/core/headers.js.map +1 -1
  6. package/build/cjs/core/instance.js.map +1 -1
  7. package/build/cjs/core/row.js.map +1 -1
  8. package/build/cjs/createTable.js.map +1 -1
  9. package/build/cjs/features/ColumnSizing.js.map +1 -1
  10. package/build/cjs/features/Expanding.js.map +1 -1
  11. package/build/cjs/features/Filters.js.map +1 -1
  12. package/build/cjs/features/Grouping.js.map +1 -1
  13. package/build/cjs/features/Ordering.js.map +1 -1
  14. package/build/cjs/features/Pagination.js +1 -1
  15. package/build/cjs/features/Pagination.js.map +1 -1
  16. package/build/cjs/features/Pinning.js.map +1 -1
  17. package/build/cjs/features/RowSelection.js +1 -4
  18. package/build/cjs/features/RowSelection.js.map +1 -1
  19. package/build/cjs/features/Sorting.js.map +1 -1
  20. package/build/cjs/features/Visibility.js.map +1 -1
  21. package/build/cjs/filterFns.js +22 -6
  22. package/build/cjs/filterFns.js.map +1 -1
  23. package/build/cjs/sortingFns.js.map +1 -1
  24. package/build/cjs/utils/filterRowsUtils.js +8 -19
  25. package/build/cjs/utils/filterRowsUtils.js.map +1 -1
  26. package/build/cjs/utils/getCoreRowModel.js.map +1 -1
  27. package/build/cjs/utils/getExpandedRowModel.js.map +1 -1
  28. package/build/cjs/utils/getFacetedMinMaxValues.js.map +1 -1
  29. package/build/cjs/utils/getFacetedRowModel.js.map +1 -1
  30. package/build/cjs/utils/getFacetedUniqueValues.js.map +1 -1
  31. package/build/cjs/utils/getFilteredRowModel.js.map +1 -1
  32. package/build/cjs/utils/getGroupedRowModel.js.map +1 -1
  33. package/build/cjs/utils/getPaginationRowModel.js.map +1 -1
  34. package/build/cjs/utils/getSortedRowModel.js.map +1 -1
  35. package/build/cjs/utils.js.map +1 -1
  36. package/build/esm/index.js +36 -31
  37. package/build/esm/index.js.map +1 -1
  38. package/build/stats-html.html +1 -1
  39. package/build/umd/index.development.js +36 -31
  40. package/build/umd/index.development.js.map +1 -1
  41. package/build/umd/index.production.js +1 -1
  42. package/build/umd/index.production.js.map +1 -1
  43. package/package.json +1 -1
  44. package/src/aggregationFns.ts +4 -1
  45. package/src/features/Pagination.ts +4 -4
  46. package/src/filterFns.ts +6 -6
  47. package/src/utils/filterRowsUtils.ts +5 -11
  48. package/build/stats-react.json +0 -1117
  49. package/build/types/aggregationFns.d.ts +0 -13
  50. package/build/types/core/cell.d.ts +0 -9
  51. package/build/types/core/column.d.ts +0 -40
  52. package/build/types/core/headers.d.ts +0 -46
  53. package/build/types/core/instance.d.ts +0 -58
  54. package/build/types/core/row.d.ts +0 -15
  55. package/build/types/createTable.d.ts +0 -63
  56. package/build/types/features/ColumnSizing.d.ts +0 -63
  57. package/build/types/features/Expanding.d.ts +0 -39
  58. package/build/types/features/Filters.d.ts +0 -90
  59. package/build/types/features/Grouping.d.ts +0 -68
  60. package/build/types/features/Ordering.d.ts +0 -18
  61. package/build/types/features/Pagination.d.ts +0 -42
  62. package/build/types/features/Pinning.d.ts +0 -40
  63. package/build/types/features/RowSelection.d.ts +0 -40
  64. package/build/types/features/Sorting.d.ts +0 -63
  65. package/build/types/features/Visibility.d.ts +0 -40
  66. package/build/types/filterFns.d.ts +0 -13
  67. package/build/types/index.d.ts +0 -29
  68. package/build/types/sortingFns.d.ts +0 -11
  69. package/build/types/types.d.ts +0 -53
  70. package/build/types/utils/filterRowsUtils.d.ts +0 -4
  71. package/build/types/utils/getCoreRowModel.d.ts +0 -2
  72. package/build/types/utils/getExpandedRowModel.d.ts +0 -7
  73. package/build/types/utils/getFacetedMinMaxValues.d.ts +0 -2
  74. package/build/types/utils/getFacetedRowModel.d.ts +0 -2
  75. package/build/types/utils/getFacetedUniqueValues.d.ts +0 -2
  76. package/build/types/utils/getFilteredRowModel.d.ts +0 -2
  77. package/build/types/utils/getGroupedRowModel.d.ts +0 -2
  78. package/build/types/utils/getPaginationRowModel.d.ts +0 -4
  79. package/build/types/utils/getSortedRowModel.d.ts +0 -2
  80. package/build/types/utils.d.ts +0 -19
@@ -24,25 +24,20 @@ function filterRows(rows, filterRowImpl, instance) {
24
24
  function filterRowModelFromLeafs(rowsToFilter, filterRow, instance) {
25
25
  const newFilteredFlatRows = [];
26
26
  const newFilteredRowsById = {};
27
- let row$1;
28
- let newRow;
29
27
 
30
28
  const recurseFilterRows = function (rowsToFilter, depth) {
31
- if (depth === void 0) {
32
- depth = 0;
33
- }
34
29
 
35
30
  const rows = []; // Filter from children up first
36
31
 
37
32
  for (let i = 0; i < rowsToFilter.length; i++) {
38
33
  var _row$subRows;
39
34
 
40
- row$1 = rowsToFilter[i];
35
+ let row$1 = rowsToFilter[i];
41
36
 
42
37
  if ((_row$subRows = row$1.subRows) != null && _row$subRows.length) {
43
- newRow = row.createRow(instance, row$1.id, row$1.original, row$1.index, row$1.depth);
38
+ const newRow = row.createRow(instance, row$1.id, row$1.original, row$1.index, row$1.depth);
44
39
  newRow.columnFilters = row$1.columnFilters;
45
- newRow.subRows = recurseFilterRows(row$1.subRows, depth + 1);
40
+ newRow.subRows = recurseFilterRows(row$1.subRows);
46
41
 
47
42
  if (!newRow.subRows.length) {
48
43
  continue;
@@ -69,29 +64,23 @@ function filterRowModelFromLeafs(rowsToFilter, filterRow, instance) {
69
64
  }
70
65
  function filterRowModelFromRoot(rowsToFilter, filterRow, instance) {
71
66
  const newFilteredFlatRows = [];
72
- const newFilteredRowsById = {};
73
- let rows;
74
- let row$1;
75
- let newRow; // Filters top level and nested rows
67
+ const newFilteredRowsById = {}; // Filters top level and nested rows
76
68
 
77
69
  const recurseFilterRows = function (rowsToFilter, depth) {
78
- if (depth === void 0) {
79
- depth = 0;
80
- }
81
70
 
82
71
  // Filter from parents downward first
83
- rows = []; // Apply the filter to any subRows
72
+ const rows = []; // Apply the filter to any subRows
84
73
 
85
74
  for (let i = 0; i < rowsToFilter.length; i++) {
86
- row$1 = rowsToFilter[i];
75
+ let row$1 = rowsToFilter[i];
87
76
  const pass = filterRow(row$1);
88
77
 
89
78
  if (pass) {
90
79
  var _row$subRows2;
91
80
 
92
81
  if ((_row$subRows2 = row$1.subRows) != null && _row$subRows2.length) {
93
- newRow = row.createRow(instance, row$1.id, row$1.original, row$1.index, row$1.depth);
94
- newRow.subRows = recurseFilterRows(row$1.subRows, depth + 1);
82
+ const newRow = row.createRow(instance, row$1.id, row$1.original, row$1.index, row$1.depth);
83
+ newRow.subRows = recurseFilterRows(row$1.subRows);
95
84
  row$1 = newRow;
96
85
  }
97
86
 
@@ -1 +1 @@
1
- {"version":3,"file":"filterRowsUtils.js","sources":["../../../src/utils/filterRowsUtils.ts"],"sourcesContent":["import { createRow } from '../core/row'\nimport { TableGenerics, Row, RowModel, TableInstance } from '../types'\n\nexport function filterRows<TGenerics extends TableGenerics>(\n rows: Row<TGenerics>[],\n filterRowImpl: (row: Row<TGenerics>) => any,\n instance: TableInstance<TGenerics>\n) {\n if (instance.options.filterFromLeafRows) {\n return filterRowModelFromLeafs(rows, filterRowImpl, instance)\n }\n\n return filterRowModelFromRoot(rows, filterRowImpl, instance)\n}\n\nexport function filterRowModelFromLeafs<TGenerics extends TableGenerics>(\n rowsToFilter: Row<TGenerics>[],\n filterRow: (row: Row<TGenerics>) => Row<TGenerics>[],\n instance: TableInstance<TGenerics>\n): RowModel<TGenerics> {\n const newFilteredFlatRows: Row<TGenerics>[] = []\n const newFilteredRowsById: Record<string, Row<TGenerics>> = {}\n\n let row\n let newRow\n\n const recurseFilterRows = (rowsToFilter: Row<TGenerics>[], depth = 0) => {\n const rows: Row<TGenerics>[] = []\n\n // Filter from children up first\n for (let i = 0; i < rowsToFilter.length; i++) {\n row = rowsToFilter[i]!\n\n if (row.subRows?.length) {\n newRow = createRow(instance, row.id, row.original, row.index, row.depth)\n newRow.columnFilters = row.columnFilters\n newRow.subRows = recurseFilterRows(row.subRows, depth + 1)\n if (!newRow.subRows.length) {\n continue\n }\n row = newRow\n }\n\n if (filterRow(row)) {\n rows.push(row)\n newFilteredRowsById[row.id] = row\n newFilteredRowsById[i] = row\n }\n }\n\n return rows\n }\n\n return {\n rows: recurseFilterRows(rowsToFilter),\n flatRows: newFilteredFlatRows,\n rowsById: newFilteredRowsById,\n }\n}\n\nexport function filterRowModelFromRoot<TGenerics extends TableGenerics>(\n rowsToFilter: Row<TGenerics>[],\n filterRow: (row: Row<TGenerics>) => any,\n instance: TableInstance<TGenerics>\n): RowModel<TGenerics> {\n const newFilteredFlatRows: Row<TGenerics>[] = []\n const newFilteredRowsById: Record<string, Row<TGenerics>> = {}\n\n let rows\n let row\n let newRow\n\n // Filters top level and nested rows\n const recurseFilterRows = (rowsToFilter: Row<TGenerics>[], depth = 0) => {\n // Filter from parents downward first\n\n rows = []\n\n // Apply the filter to any subRows\n for (let i = 0; i < rowsToFilter.length; i++) {\n row = rowsToFilter[i]!\n\n const pass = filterRow(row)\n\n if (pass) {\n if (row.subRows?.length) {\n newRow = createRow(\n instance,\n row.id,\n row.original,\n row.index,\n row.depth\n )\n newRow.subRows = recurseFilterRows(row.subRows, depth + 1)\n row = newRow\n }\n\n rows.push(row)\n newFilteredFlatRows.push(row)\n newFilteredRowsById[row.id] = row\n }\n }\n\n return rows\n }\n\n return {\n rows: recurseFilterRows(rowsToFilter),\n flatRows: newFilteredFlatRows,\n rowsById: newFilteredRowsById,\n }\n}\n"],"names":["filterRows","rows","filterRowImpl","instance","options","filterFromLeafRows","filterRowModelFromLeafs","filterRowModelFromRoot","rowsToFilter","filterRow","newFilteredFlatRows","newFilteredRowsById","row","newRow","recurseFilterRows","depth","i","length","subRows","createRow","id","original","index","columnFilters","push","flatRows","rowsById","pass"],"mappings":"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"}
1
+ {"version":3,"file":"filterRowsUtils.js","sources":["../../../src/utils/filterRowsUtils.ts"],"sourcesContent":["import { createRow } from '../core/row'\nimport { TableGenerics, Row, RowModel, TableInstance } from '../types'\n\nexport function filterRows<TGenerics extends TableGenerics>(\n rows: Row<TGenerics>[],\n filterRowImpl: (row: Row<TGenerics>) => any,\n instance: TableInstance<TGenerics>\n) {\n if (instance.options.filterFromLeafRows) {\n return filterRowModelFromLeafs(rows, filterRowImpl, instance)\n }\n\n return filterRowModelFromRoot(rows, filterRowImpl, instance)\n}\n\nexport function filterRowModelFromLeafs<TGenerics extends TableGenerics>(\n rowsToFilter: Row<TGenerics>[],\n filterRow: (row: Row<TGenerics>) => Row<TGenerics>[],\n instance: TableInstance<TGenerics>\n): RowModel<TGenerics> {\n const newFilteredFlatRows: Row<TGenerics>[] = []\n const newFilteredRowsById: Record<string, Row<TGenerics>> = {}\n\n\n const recurseFilterRows = (rowsToFilter: Row<TGenerics>[], depth = 0) => {\n const rows: Row<TGenerics>[] = []\n\n // Filter from children up first\n for (let i = 0; i < rowsToFilter.length; i++) {\n let row = rowsToFilter[i]!\n\n if (row.subRows?.length) {\n const newRow = createRow(instance, row.id, row.original, row.index, row.depth)\n newRow.columnFilters = row.columnFilters\n newRow.subRows = recurseFilterRows(row.subRows, depth + 1)\n if (!newRow.subRows.length) {\n continue\n }\n row = newRow\n }\n\n if (filterRow(row)) {\n rows.push(row)\n newFilteredRowsById[row.id] = row\n newFilteredRowsById[i] = row\n }\n }\n\n return rows\n }\n\n return {\n rows: recurseFilterRows(rowsToFilter),\n flatRows: newFilteredFlatRows,\n rowsById: newFilteredRowsById,\n }\n}\n\nexport function filterRowModelFromRoot<TGenerics extends TableGenerics>(\n rowsToFilter: Row<TGenerics>[],\n filterRow: (row: Row<TGenerics>) => any,\n instance: TableInstance<TGenerics>\n): RowModel<TGenerics> {\n const newFilteredFlatRows: Row<TGenerics>[] = []\n const newFilteredRowsById: Record<string, Row<TGenerics>> = {}\n\n // Filters top level and nested rows\n const recurseFilterRows = (rowsToFilter: Row<TGenerics>[], depth = 0) => {\n // Filter from parents downward first\n\n const rows = []\n\n // Apply the filter to any subRows\n for (let i = 0; i < rowsToFilter.length; i++) {\n let row = rowsToFilter[i]!\n\n const pass = filterRow(row)\n\n if (pass) {\n if (row.subRows?.length) {\n const newRow = createRow(\n instance,\n row.id,\n row.original,\n row.index,\n row.depth\n )\n newRow.subRows = recurseFilterRows(row.subRows, depth + 1)\n row = newRow\n }\n\n rows.push(row)\n newFilteredFlatRows.push(row)\n newFilteredRowsById[row.id] = row\n }\n }\n\n return rows\n }\n\n return {\n rows: recurseFilterRows(rowsToFilter),\n flatRows: newFilteredFlatRows,\n rowsById: newFilteredRowsById,\n }\n}\n"],"names":["filterRows","rows","filterRowImpl","instance","options","filterFromLeafRows","filterRowModelFromLeafs","filterRowModelFromRoot","rowsToFilter","filterRow","newFilteredFlatRows","newFilteredRowsById","recurseFilterRows","depth","i","length","row","subRows","newRow","createRow","id","original","index","columnFilters","push","flatRows","rowsById","pass"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"getCoreRowModel.js","sources":["../../../src/utils/getCoreRowModel.ts"],"sourcesContent":["import { createRow } from '../core/row'\nimport { TableInstance, Row, RowModel, TableGenerics } from '../types'\nimport { memo } from '../utils'\n\nexport function getCoreRowModel<TGenerics extends TableGenerics>(): (\n instance: TableInstance<TGenerics>\n) => () => RowModel<TGenerics> {\n return instance =>\n 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 const rowModel: RowModel<TGenerics> = {\n rows: [],\n flatRows: [],\n rowsById: {},\n }\n\n const accessRows = (\n originalRows: TGenerics['Row'][],\n depth = 0,\n parent?: Row<TGenerics>\n ): Row<TGenerics>[] => {\n const rows = [] as Row<TGenerics>[]\n\n for (let i = 0; i < originalRows.length; i++) {\n // This could be an expensive check at scale, so we should move it somewhere else, but where?\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 // Make the row\n const row = createRow(\n instance,\n instance._getRowId(originalRows[i], i, parent),\n originalRows[i],\n i,\n depth\n )\n\n // Keep track of every row in a flat array\n rowModel.flatRows.push(row)\n // Also keep track of every row by its ID\n rowModel.rowsById[row.id] = row\n // Push instance row into parent\n rows.push(row)\n\n // Get the original subrows\n if (instance.options.getSubRows) {\n row.originalSubRows = instance.options.getSubRows(\n originalRows[i],\n i\n )\n\n // Then recursively access them\n if (row.originalSubRows?.length) {\n row.subRows = accessRows(row.originalSubRows, depth + 1, row)\n }\n }\n }\n\n return rows\n }\n\n rowModel.rows = accessRows(data)\n\n return rowModel\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getRowModel',\n debug: () => instance.options.debugAll ?? instance.options.debugTable,\n onChange: () => {\n instance._autoResetPageIndex()\n },\n }\n )\n}\n"],"names":["getCoreRowModel","instance","memo","options","data","rowModel","rows","flatRows","rowsById","accessRows","originalRows","depth","parent","i","length","row","createRow","_getRowId","push","id","getSubRows","originalSubRows","subRows","key","process","env","NODE_ENV","debug","debugAll","debugTable","onChange","_autoResetPageIndex"],"mappings":";;;;;;;;;;;;;;;;;AAIO,SAASA,eAAT,GAEwB;AAC7B,EAAA,OAAOC,QAAQ,IACbC,UAAI,CACF,MAAM,CAACD,QAAQ,CAACE,OAAT,CAAiBC,IAAlB,CADJ,EAGAA,IADF,IAMK;AACH,IAAA,MAAMC,QAA6B,GAAG;AACpCC,MAAAA,IAAI,EAAE,EAD8B;AAEpCC,MAAAA,QAAQ,EAAE,EAF0B;AAGpCC,MAAAA,QAAQ,EAAE,EAAA;AAH0B,KAAtC,CAAA;;AAMA,IAAMC,MAAAA,UAAU,GAAG,UACjBC,YADiB,EAEjBC,KAFiB,EAGjBC,MAHiB,EAII;AAAA,MAAA,IAFrBD,KAEqB,KAAA,KAAA,CAAA,EAAA;AAFrBA,QAAAA,KAEqB,GAFb,CAEa,CAAA;AAAA,OAAA;;AACrB,MAAML,MAAAA,IAAI,GAAG,EAAb,CAAA;;AAEA,MAAA,KAAK,IAAIO,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGH,YAAY,CAACI,MAAjC,EAAyCD,CAAC,EAA1C,EAA8C;AAC5C;AACA;AACA;AACA;AACA;AACA;AAEA;AACA,QAAA,MAAME,KAAG,GAAGC,aAAS,CACnBf,QADmB,EAEnBA,QAAQ,CAACgB,SAAT,CAAmBP,YAAY,CAACG,CAAD,CAA/B,EAAoCA,CAApC,EAAuCD,MAAvC,CAFmB,EAGnBF,YAAY,CAACG,CAAD,CAHO,EAInBA,CAJmB,EAKnBF,KALmB,CAArB,CAT4C;;AAkB5CN,QAAAA,QAAQ,CAACE,QAAT,CAAkBW,IAAlB,CAAuBH,KAAvB,EAlB4C;;AAoB5CV,QAAAA,QAAQ,CAACG,QAAT,CAAkBO,KAAG,CAACI,EAAtB,CAAA,GAA4BJ,KAA5B,CApB4C;;AAsB5CT,QAAAA,IAAI,CAACY,IAAL,CAAUH,KAAV,EAtB4C;;AAyB5C,QAAA,IAAId,QAAQ,CAACE,OAAT,CAAiBiB,UAArB,EAAiC;AAAA,UAAA,IAAA,oBAAA,CAAA;;AAC/BL,UAAAA,KAAG,CAACM,eAAJ,GAAsBpB,QAAQ,CAACE,OAAT,CAAiBiB,UAAjB,CACpBV,YAAY,CAACG,CAAD,CADQ,EAEpBA,CAFoB,CAAtB,CAD+B;;AAO/B,UAAA,IAAA,CAAA,oBAAA,GAAIE,KAAG,CAACM,eAAR,KAAI,IAAA,IAAA,oBAAA,CAAqBP,MAAzB,EAAiC;AAC/BC,YAAAA,KAAG,CAACO,OAAJ,GAAcb,UAAU,CAACM,KAAG,CAACM,eAAL,EAAsBV,KAAK,GAAG,CAA9B,EAAiCI,KAAjC,CAAxB,CAAA;AACD,WAAA;AACF,SAAA;AACF,OAAA;;AAED,MAAA,OAAOT,IAAP,CAAA;AACD,KA9CD,CAAA;;AAgDAD,IAAAA,QAAQ,CAACC,IAAT,GAAgBG,UAAU,CAACL,IAAD,CAA1B,CAAA;AAEA,IAAA,OAAOC,QAAP,CAAA;AACD,GAlEC,EAmEF;AACEkB,IAAAA,GAAG,EAAEC,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAAzB,IAA0C,aADjD;AAEEC,IAAAA,KAAK,EAAE,MAAA;AAAA,MAAA,IAAA,qBAAA,CAAA;;AAAA,MAAM1B,OAAAA,CAAAA,qBAAAA,GAAAA,QAAQ,CAACE,OAAT,CAAiByB,QAAvB,oCAAmC3B,QAAQ,CAACE,OAAT,CAAiB0B,UAApD,CAAA;AAAA,KAFT;AAGEC,IAAAA,QAAQ,EAAE,MAAM;AACd7B,MAAAA,QAAQ,CAAC8B,mBAAT,EAAA,CAAA;AACD,KAAA;AALH,GAnEE,CADN,CAAA;AA4ED;;;;"}
1
+ {"version":3,"file":"getCoreRowModel.js","sources":["../../../src/utils/getCoreRowModel.ts"],"sourcesContent":["import { createRow } from '../core/row'\nimport { TableInstance, Row, RowModel, TableGenerics } from '../types'\nimport { memo } from '../utils'\n\nexport function getCoreRowModel<TGenerics extends TableGenerics>(): (\n instance: TableInstance<TGenerics>\n) => () => RowModel<TGenerics> {\n return instance =>\n 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 const rowModel: RowModel<TGenerics> = {\n rows: [],\n flatRows: [],\n rowsById: {},\n }\n\n const accessRows = (\n originalRows: TGenerics['Row'][],\n depth = 0,\n parent?: Row<TGenerics>\n ): Row<TGenerics>[] => {\n const rows = [] as Row<TGenerics>[]\n\n for (let i = 0; i < originalRows.length; i++) {\n // This could be an expensive check at scale, so we should move it somewhere else, but where?\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 // Make the row\n const row = createRow(\n instance,\n instance._getRowId(originalRows[i], i, parent),\n originalRows[i],\n i,\n depth\n )\n\n // Keep track of every row in a flat array\n rowModel.flatRows.push(row)\n // Also keep track of every row by its ID\n rowModel.rowsById[row.id] = row\n // Push instance row into parent\n rows.push(row)\n\n // Get the original subrows\n if (instance.options.getSubRows) {\n row.originalSubRows = instance.options.getSubRows(\n originalRows[i],\n i\n )\n\n // Then recursively access them\n if (row.originalSubRows?.length) {\n row.subRows = accessRows(row.originalSubRows, depth + 1, row)\n }\n }\n }\n\n return rows\n }\n\n rowModel.rows = accessRows(data)\n\n return rowModel\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getRowModel',\n debug: () => instance.options.debugAll ?? instance.options.debugTable,\n onChange: () => {\n instance._autoResetPageIndex()\n },\n }\n )\n}\n"],"names":["getCoreRowModel","instance","memo","options","data","rowModel","rows","flatRows","rowsById","accessRows","originalRows","depth","parent","i","length","row","createRow","_getRowId","push","id","getSubRows","originalSubRows","subRows","key","process","env","NODE_ENV","debug","debugAll","debugTable","onChange","_autoResetPageIndex"],"mappings":";;;;;;;;;;;;;;;;;AAIO,SAASA,eAAT,GAEwB;AAC7B,EAAA,OAAOC,QAAQ,IACbC,UAAI,CACF,MAAM,CAACD,QAAQ,CAACE,OAAT,CAAiBC,IAAlB,CADJ,EAGAA,IADF,IAMK;AACH,IAAA,MAAMC,QAA6B,GAAG;AACpCC,MAAAA,IAAI,EAAE,EAD8B;AAEpCC,MAAAA,QAAQ,EAAE,EAF0B;AAGpCC,MAAAA,QAAQ,EAAE,EAAA;KAHZ,CAAA;;IAMA,MAAMC,UAAU,GAAG,UACjBC,YADiB,EAEjBC,KAFiB,EAGjBC,MAHiB,EAII;AAAA,MAAA,IAFrBD,KAEqB,KAAA,KAAA,CAAA,EAAA;AAFrBA,QAAAA,KAEqB,GAFb,CAEa,CAAA;AAAA,OAAA;;MACrB,MAAML,IAAI,GAAG,EAAb,CAAA;;AAEA,MAAA,KAAK,IAAIO,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGH,YAAY,CAACI,MAAjC,EAAyCD,CAAC,EAA1C,EAA8C;AAC5C;AACA;AACA;AACA;AACA;AACA;AAEA;AACA,QAAA,MAAME,KAAG,GAAGC,aAAS,CACnBf,QADmB,EAEnBA,QAAQ,CAACgB,SAAT,CAAmBP,YAAY,CAACG,CAAD,CAA/B,EAAoCA,CAApC,EAAuCD,MAAvC,CAFmB,EAGnBF,YAAY,CAACG,CAAD,CAHO,EAInBA,CAJmB,EAKnBF,KALmB,CAArB,CAT4C;;AAkB5CN,QAAAA,QAAQ,CAACE,QAAT,CAAkBW,IAAlB,CAAuBH,KAAvB,EAlB4C;;QAoB5CV,QAAQ,CAACG,QAAT,CAAkBO,KAAG,CAACI,EAAtB,CAAA,GAA4BJ,KAA5B,CApB4C;;AAsB5CT,QAAAA,IAAI,CAACY,IAAL,CAAUH,KAAV,EAtB4C;;AAyB5C,QAAA,IAAId,QAAQ,CAACE,OAAT,CAAiBiB,UAArB,EAAiC;AAAA,UAAA,IAAA,oBAAA,CAAA;;AAC/BL,UAAAA,KAAG,CAACM,eAAJ,GAAsBpB,QAAQ,CAACE,OAAT,CAAiBiB,UAAjB,CACpBV,YAAY,CAACG,CAAD,CADQ,EAEpBA,CAFoB,CAAtB,CAD+B;;AAO/B,UAAA,IAAA,CAAA,oBAAA,GAAIE,KAAG,CAACM,eAAR,KAAI,IAAA,IAAA,oBAAA,CAAqBP,MAAzB,EAAiC;AAC/BC,YAAAA,KAAG,CAACO,OAAJ,GAAcb,UAAU,CAACM,KAAG,CAACM,eAAL,EAAsBV,KAAK,GAAG,CAA9B,EAAiCI,KAAjC,CAAxB,CAAA;AACD,WAAA;AACF,SAAA;AACF,OAAA;;AAED,MAAA,OAAOT,IAAP,CAAA;KA7CF,CAAA;;AAgDAD,IAAAA,QAAQ,CAACC,IAAT,GAAgBG,UAAU,CAACL,IAAD,CAA1B,CAAA;AAEA,IAAA,OAAOC,QAAP,CAAA;AACD,GAlEC,EAmEF;IACEkB,GAAG,EAAEC,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAAzB,IAA0C,aADjD;AAEEC,IAAAA,KAAK,EAAE,MAAA;AAAA,MAAA,IAAA,qBAAA,CAAA;;MAAA,OAAM1B,CAAAA,qBAAAA,GAAAA,QAAQ,CAACE,OAAT,CAAiByB,QAAvB,oCAAmC3B,QAAQ,CAACE,OAAT,CAAiB0B,UAApD,CAAA;KAFT;AAGEC,IAAAA,QAAQ,EAAE,MAAM;AACd7B,MAAAA,QAAQ,CAAC8B,mBAAT,EAAA,CAAA;AACD,KAAA;AALH,GAnEE,CADN,CAAA;AA4ED;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"getExpandedRowModel.js","sources":["../../../src/utils/getExpandedRowModel.ts"],"sourcesContent":["import { TableInstance, Row, RowModel, TableGenerics } from '../types'\nimport { memo } from '../utils'\n\nexport function getExpandedRowModel<TGenerics extends TableGenerics>(): (\n instance: TableInstance<TGenerics>\n) => () => RowModel<TGenerics> {\n return instance =>\n memo(\n () => [\n instance.getState().expanded,\n instance.getPreExpandedRowModel(),\n instance.options.paginateExpandedRows,\n ],\n (expanded, rowModel, paginateExpandedRows) => {\n if (\n !rowModel.rows.length ||\n // Do not expand if rows are not included in pagination\n !paginateExpandedRows ||\n (expanded !== true && !Object.keys(expanded ?? {}).length)\n ) {\n return rowModel\n }\n\n return expandRows(rowModel, instance)\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getExpandedRowModel',\n debug: () => instance.options.debugAll ?? instance.options.debugTable,\n }\n )\n}\n\nexport function expandRows<TGenerics extends TableGenerics>(\n rowModel: RowModel<TGenerics>,\n instance: TableInstance<TGenerics>\n) {\n const expandedRows: Row<TGenerics>[] = []\n\n const handleRow = (row: Row<TGenerics>) => {\n expandedRows.push(row)\n\n if (row.subRows?.length && row.getIsExpanded()) {\n row.subRows.forEach(handleRow)\n }\n }\n\n rowModel.rows.forEach(handleRow)\n\n return {\n rows: expandedRows,\n flatRows: rowModel.flatRows,\n rowsById: rowModel.rowsById,\n }\n}\n"],"names":["getExpandedRowModel","instance","memo","getState","expanded","getPreExpandedRowModel","options","paginateExpandedRows","rowModel","rows","length","Object","keys","expandRows","key","process","env","NODE_ENV","debug","debugAll","debugTable","expandedRows","handleRow","row","push","subRows","getIsExpanded","forEach","flatRows","rowsById"],"mappings":";;;;;;;;;;;;;;;;AAGO,SAASA,mBAAT,GAEwB;AAC7B,EAAA,OAAOC,QAAQ,IACbC,UAAI,CACF,MAAM,CACJD,QAAQ,CAACE,QAAT,EAAA,CAAoBC,QADhB,EAEJH,QAAQ,CAACI,sBAAT,EAFI,EAGJJ,QAAQ,CAACK,OAAT,CAAiBC,oBAHb,CADJ,EAMF,CAACH,QAAD,EAAWI,QAAX,EAAqBD,oBAArB,KAA8C;AAC5C,IAAA,IACE,CAACC,QAAQ,CAACC,IAAT,CAAcC,MAAf;AAEA,IAAA,CAACH,oBAFD,IAGCH,QAAQ,KAAK,IAAb,IAAqB,CAACO,MAAM,CAACC,IAAP,CAAYR,QAAZ,IAAYA,IAAAA,GAAAA,QAAZ,GAAwB,EAAxB,CAAA,CAA4BM,MAJrD,EAKE;AACA,MAAA,OAAOF,QAAP,CAAA;AACD,KAAA;;AAED,IAAA,OAAOK,UAAU,CAACL,QAAD,CAAjB,CAAA;AACD,GAjBC,EAkBF;AACEM,IAAAA,GAAG,EAAEC,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAAzB,IAA0C,qBADjD;AAEEC,IAAAA,KAAK,EAAE,MAAA;AAAA,MAAA,IAAA,qBAAA,CAAA;;AAAA,MAAMjB,OAAAA,CAAAA,qBAAAA,GAAAA,QAAQ,CAACK,OAAT,CAAiBa,QAAvB,oCAAmClB,QAAQ,CAACK,OAAT,CAAiBc,UAApD,CAAA;AAAA,KAAA;AAFT,GAlBE,CADN,CAAA;AAwBD,CAAA;AAEM,SAASP,UAAT,CACLL,QADK,EAELP,QAFK,EAGL;AACA,EAAMoB,MAAAA,YAA8B,GAAG,EAAvC,CAAA;;AAEA,EAAMC,MAAAA,SAAS,GAAIC,GAAD,IAAyB;AAAA,IAAA,IAAA,YAAA,CAAA;;AACzCF,IAAAA,YAAY,CAACG,IAAb,CAAkBD,GAAlB,CAAA,CAAA;;AAEA,IAAI,IAAA,CAAA,YAAA,GAAAA,GAAG,CAACE,OAAJ,KAAA,IAAA,IAAA,YAAA,CAAaf,MAAb,IAAuBa,GAAG,CAACG,aAAJ,EAA3B,EAAgD;AAC9CH,MAAAA,GAAG,CAACE,OAAJ,CAAYE,OAAZ,CAAoBL,SAApB,CAAA,CAAA;AACD,KAAA;AACF,GAND,CAAA;;AAQAd,EAAAA,QAAQ,CAACC,IAAT,CAAckB,OAAd,CAAsBL,SAAtB,CAAA,CAAA;AAEA,EAAO,OAAA;AACLb,IAAAA,IAAI,EAAEY,YADD;AAELO,IAAAA,QAAQ,EAAEpB,QAAQ,CAACoB,QAFd;AAGLC,IAAAA,QAAQ,EAAErB,QAAQ,CAACqB,QAAAA;AAHd,GAAP,CAAA;AAKD;;;;;"}
1
+ {"version":3,"file":"getExpandedRowModel.js","sources":["../../../src/utils/getExpandedRowModel.ts"],"sourcesContent":["import { TableInstance, Row, RowModel, TableGenerics } from '../types'\nimport { memo } from '../utils'\n\nexport function getExpandedRowModel<TGenerics extends TableGenerics>(): (\n instance: TableInstance<TGenerics>\n) => () => RowModel<TGenerics> {\n return instance =>\n memo(\n () => [\n instance.getState().expanded,\n instance.getPreExpandedRowModel(),\n instance.options.paginateExpandedRows,\n ],\n (expanded, rowModel, paginateExpandedRows) => {\n if (\n !rowModel.rows.length ||\n // Do not expand if rows are not included in pagination\n !paginateExpandedRows ||\n (expanded !== true && !Object.keys(expanded ?? {}).length)\n ) {\n return rowModel\n }\n\n return expandRows(rowModel, instance)\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getExpandedRowModel',\n debug: () => instance.options.debugAll ?? instance.options.debugTable,\n }\n )\n}\n\nexport function expandRows<TGenerics extends TableGenerics>(\n rowModel: RowModel<TGenerics>,\n instance: TableInstance<TGenerics>\n) {\n const expandedRows: Row<TGenerics>[] = []\n\n const handleRow = (row: Row<TGenerics>) => {\n expandedRows.push(row)\n\n if (row.subRows?.length && row.getIsExpanded()) {\n row.subRows.forEach(handleRow)\n }\n }\n\n rowModel.rows.forEach(handleRow)\n\n return {\n rows: expandedRows,\n flatRows: rowModel.flatRows,\n rowsById: rowModel.rowsById,\n }\n}\n"],"names":["getExpandedRowModel","instance","memo","getState","expanded","getPreExpandedRowModel","options","paginateExpandedRows","rowModel","rows","length","Object","keys","expandRows","key","process","env","NODE_ENV","debug","debugAll","debugTable","expandedRows","handleRow","row","push","subRows","getIsExpanded","forEach","flatRows","rowsById"],"mappings":";;;;;;;;;;;;;;;;AAGO,SAASA,mBAAT,GAEwB;AAC7B,EAAA,OAAOC,QAAQ,IACbC,UAAI,CACF,MAAM,CACJD,QAAQ,CAACE,QAAT,EAAA,CAAoBC,QADhB,EAEJH,QAAQ,CAACI,sBAAT,EAFI,EAGJJ,QAAQ,CAACK,OAAT,CAAiBC,oBAHb,CADJ,EAMF,CAACH,QAAD,EAAWI,QAAX,EAAqBD,oBAArB,KAA8C;AAC5C,IAAA,IACE,CAACC,QAAQ,CAACC,IAAT,CAAcC,MAAf;AAEA,IAAA,CAACH,oBAFD,IAGCH,QAAQ,KAAK,IAAb,IAAqB,CAACO,MAAM,CAACC,IAAP,CAAYR,QAAZ,IAAYA,IAAAA,GAAAA,QAAZ,GAAwB,EAAxB,CAAA,CAA4BM,MAJrD,EAKE;AACA,MAAA,OAAOF,QAAP,CAAA;AACD,KAAA;;AAED,IAAA,OAAOK,UAAU,CAACL,QAAD,CAAjB,CAAA;AACD,GAjBC,EAkBF;IACEM,GAAG,EAAEC,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAAzB,IAA0C,qBADjD;AAEEC,IAAAA,KAAK,EAAE,MAAA;AAAA,MAAA,IAAA,qBAAA,CAAA;;MAAA,OAAMjB,CAAAA,qBAAAA,GAAAA,QAAQ,CAACK,OAAT,CAAiBa,QAAvB,oCAAmClB,QAAQ,CAACK,OAAT,CAAiBc,UAApD,CAAA;AAAA,KAAA;AAFT,GAlBE,CADN,CAAA;AAwBD,CAAA;AAEM,SAASP,UAAT,CACLL,QADK,EAELP,QAFK,EAGL;EACA,MAAMoB,YAA8B,GAAG,EAAvC,CAAA;;EAEA,MAAMC,SAAS,GAAIC,GAAD,IAAyB;AAAA,IAAA,IAAA,YAAA,CAAA;;IACzCF,YAAY,CAACG,IAAb,CAAkBD,GAAlB,CAAA,CAAA;;IAEA,IAAI,CAAA,YAAA,GAAAA,GAAG,CAACE,OAAJ,KAAA,IAAA,IAAA,YAAA,CAAaf,MAAb,IAAuBa,GAAG,CAACG,aAAJ,EAA3B,EAAgD;AAC9CH,MAAAA,GAAG,CAACE,OAAJ,CAAYE,OAAZ,CAAoBL,SAApB,CAAA,CAAA;AACD,KAAA;GALH,CAAA;;AAQAd,EAAAA,QAAQ,CAACC,IAAT,CAAckB,OAAd,CAAsBL,SAAtB,CAAA,CAAA;EAEA,OAAO;AACLb,IAAAA,IAAI,EAAEY,YADD;IAELO,QAAQ,EAAEpB,QAAQ,CAACoB,QAFd;IAGLC,QAAQ,EAAErB,QAAQ,CAACqB,QAAAA;GAHrB,CAAA;AAKD;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"getFacetedMinMaxValues.js","sources":["../../../src/utils/getFacetedMinMaxValues.ts"],"sourcesContent":["import { TableInstance, TableGenerics } from '../types'\nimport { memo } from '../utils'\n\nexport function getFacetedMinMaxValues<TGenerics extends TableGenerics>(): (\n instance: TableInstance<TGenerics>,\n columnId: string\n) => () => undefined | [number, number] {\n return (instance, columnId) =>\n memo(\n () => [instance.getColumn(columnId).getFacetedRowModel()],\n facetedRowModel => {\n const firstValue = facetedRowModel.flatRows[0]?.getValue(columnId)\n\n if (typeof firstValue === 'undefined') {\n return undefined\n }\n\n let facetedMinMaxValues: [any, any] = [firstValue, firstValue]\n\n for (let i = 0; i < facetedRowModel.flatRows.length; i++) {\n const value = facetedRowModel.flatRows[i]?.getValue(columnId)\n\n if (value < facetedMinMaxValues[0]) {\n facetedMinMaxValues[0] = value\n } else if (value > facetedMinMaxValues[1]) {\n facetedMinMaxValues[1] = value\n }\n }\n\n return facetedMinMaxValues\n },\n {\n key:\n process.env.NODE_ENV === 'development' &&\n 'getFacetedMinMaxValues_' + columnId,\n debug: () => instance.options.debugAll ?? instance.options.debugTable,\n onChange: () => {},\n }\n )\n}\n"],"names":["getFacetedMinMaxValues","instance","columnId","memo","getColumn","getFacetedRowModel","facetedRowModel","firstValue","flatRows","getValue","undefined","facetedMinMaxValues","i","length","value","key","process","env","NODE_ENV","debug","options","debugAll","debugTable","onChange"],"mappings":";;;;;;;;;;;;;;;;AAGO,SAASA,sBAAT,GAGiC;AACtC,EAAO,OAAA,CAACC,QAAD,EAAWC,QAAX,KACLC,UAAI,CACF,MAAM,CAACF,QAAQ,CAACG,SAAT,CAAmBF,QAAnB,CAA6BG,CAAAA,kBAA7B,EAAD,CADJ,EAEFC,eAAe,IAAI;AAAA,IAAA,IAAA,qBAAA,CAAA;;AACjB,IAAA,MAAMC,UAAU,GAAA,CAAA,qBAAA,GAAGD,eAAe,CAACE,QAAhB,CAAyB,CAAzB,CAAH,KAAG,IAAA,GAAA,KAAA,CAAA,GAAA,qBAAA,CAA6BC,QAA7B,CAAsCP,QAAtC,CAAnB,CAAA;;AAEA,IAAA,IAAI,OAAOK,UAAP,KAAsB,WAA1B,EAAuC;AACrC,MAAA,OAAOG,SAAP,CAAA;AACD,KAAA;;AAED,IAAA,IAAIC,mBAA+B,GAAG,CAACJ,UAAD,EAAaA,UAAb,CAAtC,CAAA;;AAEA,IAAA,KAAK,IAAIK,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGN,eAAe,CAACE,QAAhB,CAAyBK,MAA7C,EAAqDD,CAAC,EAAtD,EAA0D;AAAA,MAAA,IAAA,sBAAA,CAAA;;AACxD,MAAA,MAAME,KAAK,GAAA,CAAA,sBAAA,GAAGR,eAAe,CAACE,QAAhB,CAAyBI,CAAzB,CAAH,KAAG,IAAA,GAAA,KAAA,CAAA,GAAA,sBAAA,CAA6BH,QAA7B,CAAsCP,QAAtC,CAAd,CAAA;;AAEA,MAAA,IAAIY,KAAK,GAAGH,mBAAmB,CAAC,CAAD,CAA/B,EAAoC;AAClCA,QAAAA,mBAAmB,CAAC,CAAD,CAAnB,GAAyBG,KAAzB,CAAA;AACD,OAFD,MAEO,IAAIA,KAAK,GAAGH,mBAAmB,CAAC,CAAD,CAA/B,EAAoC;AACzCA,QAAAA,mBAAmB,CAAC,CAAD,CAAnB,GAAyBG,KAAzB,CAAA;AACD,OAAA;AACF,KAAA;;AAED,IAAA,OAAOH,mBAAP,CAAA;AACD,GAtBC,EAuBF;AACEI,IAAAA,GAAG,EACDC,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAAzB,IACA,yBAAA,GAA4BhB,QAHhC;AAIEiB,IAAAA,KAAK,EAAE,MAAA;AAAA,MAAA,IAAA,qBAAA,CAAA;;AAAA,MAAMlB,OAAAA,CAAAA,qBAAAA,GAAAA,QAAQ,CAACmB,OAAT,CAAiBC,QAAvB,oCAAmCpB,QAAQ,CAACmB,OAAT,CAAiBE,UAApD,CAAA;AAAA,KAJT;AAKEC,IAAAA,QAAQ,EAAE,MAAM,EAAE;AALpB,GAvBE,CADN,CAAA;AAgCD;;;;"}
1
+ {"version":3,"file":"getFacetedMinMaxValues.js","sources":["../../../src/utils/getFacetedMinMaxValues.ts"],"sourcesContent":["import { TableInstance, TableGenerics } from '../types'\nimport { memo } from '../utils'\n\nexport function getFacetedMinMaxValues<TGenerics extends TableGenerics>(): (\n instance: TableInstance<TGenerics>,\n columnId: string\n) => () => undefined | [number, number] {\n return (instance, columnId) =>\n memo(\n () => [instance.getColumn(columnId).getFacetedRowModel()],\n facetedRowModel => {\n const firstValue = facetedRowModel.flatRows[0]?.getValue(columnId)\n\n if (typeof firstValue === 'undefined') {\n return undefined\n }\n\n let facetedMinMaxValues: [any, any] = [firstValue, firstValue]\n\n for (let i = 0; i < facetedRowModel.flatRows.length; i++) {\n const value = facetedRowModel.flatRows[i]?.getValue(columnId)\n\n if (value < facetedMinMaxValues[0]) {\n facetedMinMaxValues[0] = value\n } else if (value > facetedMinMaxValues[1]) {\n facetedMinMaxValues[1] = value\n }\n }\n\n return facetedMinMaxValues\n },\n {\n key:\n process.env.NODE_ENV === 'development' &&\n 'getFacetedMinMaxValues_' + columnId,\n debug: () => instance.options.debugAll ?? instance.options.debugTable,\n onChange: () => {},\n }\n )\n}\n"],"names":["getFacetedMinMaxValues","instance","columnId","memo","getColumn","getFacetedRowModel","facetedRowModel","firstValue","flatRows","getValue","undefined","facetedMinMaxValues","i","length","value","key","process","env","NODE_ENV","debug","options","debugAll","debugTable","onChange"],"mappings":";;;;;;;;;;;;;;;;AAGO,SAASA,sBAAT,GAGiC;EACtC,OAAO,CAACC,QAAD,EAAWC,QAAX,KACLC,UAAI,CACF,MAAM,CAACF,QAAQ,CAACG,SAAT,CAAmBF,QAAnB,CAA6BG,CAAAA,kBAA7B,EAAD,CADJ,EAEFC,eAAe,IAAI;AAAA,IAAA,IAAA,qBAAA,CAAA;;AACjB,IAAA,MAAMC,UAAU,GAAA,CAAA,qBAAA,GAAGD,eAAe,CAACE,QAAhB,CAAyB,CAAzB,CAAH,KAAG,IAAA,GAAA,KAAA,CAAA,GAAA,qBAAA,CAA6BC,QAA7B,CAAsCP,QAAtC,CAAnB,CAAA;;AAEA,IAAA,IAAI,OAAOK,UAAP,KAAsB,WAA1B,EAAuC;AACrC,MAAA,OAAOG,SAAP,CAAA;AACD,KAAA;;AAED,IAAA,IAAIC,mBAA+B,GAAG,CAACJ,UAAD,EAAaA,UAAb,CAAtC,CAAA;;AAEA,IAAA,KAAK,IAAIK,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGN,eAAe,CAACE,QAAhB,CAAyBK,MAA7C,EAAqDD,CAAC,EAAtD,EAA0D;AAAA,MAAA,IAAA,sBAAA,CAAA;;AACxD,MAAA,MAAME,KAAK,GAAA,CAAA,sBAAA,GAAGR,eAAe,CAACE,QAAhB,CAAyBI,CAAzB,CAAH,KAAG,IAAA,GAAA,KAAA,CAAA,GAAA,sBAAA,CAA6BH,QAA7B,CAAsCP,QAAtC,CAAd,CAAA;;AAEA,MAAA,IAAIY,KAAK,GAAGH,mBAAmB,CAAC,CAAD,CAA/B,EAAoC;AAClCA,QAAAA,mBAAmB,CAAC,CAAD,CAAnB,GAAyBG,KAAzB,CAAA;OADF,MAEO,IAAIA,KAAK,GAAGH,mBAAmB,CAAC,CAAD,CAA/B,EAAoC;AACzCA,QAAAA,mBAAmB,CAAC,CAAD,CAAnB,GAAyBG,KAAzB,CAAA;AACD,OAAA;AACF,KAAA;;AAED,IAAA,OAAOH,mBAAP,CAAA;AACD,GAtBC,EAuBF;IACEI,GAAG,EACDC,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAAzB,IACA,yBAAA,GAA4BhB,QAHhC;AAIEiB,IAAAA,KAAK,EAAE,MAAA;AAAA,MAAA,IAAA,qBAAA,CAAA;;MAAA,OAAMlB,CAAAA,qBAAAA,GAAAA,QAAQ,CAACmB,OAAT,CAAiBC,QAAvB,oCAAmCpB,QAAQ,CAACmB,OAAT,CAAiBE,UAApD,CAAA;KAJT;IAKEC,QAAQ,EAAE,MAAM,EAAE;AALpB,GAvBE,CADN,CAAA;AAgCD;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"getFacetedRowModel.js","sources":["../../../src/utils/getFacetedRowModel.ts"],"sourcesContent":["import { TableInstance, RowModel, TableGenerics, Row } from '../types'\nimport { memo } from '../utils'\nimport { filterRows } from './filterRowsUtils'\n\nexport function getFacetedRowModel<TGenerics extends TableGenerics>(): (\n instance: TableInstance<TGenerics>,\n columnId: string\n) => () => RowModel<TGenerics> {\n return (instance, columnId) =>\n memo(\n () => [\n instance.getPreFilteredRowModel(),\n instance.getState().columnFilters,\n instance.getState().globalFilter,\n instance.getFilteredRowModel(),\n ],\n (preRowModel, columnFilters, globalFilter) => {\n if (\n !preRowModel.rows.length ||\n (!columnFilters?.length && !globalFilter)\n ) {\n return preRowModel\n }\n\n const filterableIds = [\n ...columnFilters.map(d => d.id).filter(d => d !== columnId),\n globalFilter ? '__global__' : undefined,\n ].filter(Boolean) as string[]\n\n const filterRowsImpl = (row: Row<TGenerics>) => {\n // Horizontally filter rows through each column\n for (let i = 0; i < filterableIds.length; i++) {\n if (row.columnFilters[filterableIds[i]!] === false) {\n return false\n }\n }\n return true\n }\n\n return filterRows(preRowModel.rows, filterRowsImpl, instance)\n },\n {\n key:\n process.env.NODE_ENV === 'development' &&\n 'getFacetedRowModel_' + columnId,\n debug: () => instance.options.debugAll ?? instance.options.debugTable,\n onChange: () => {},\n }\n )\n}\n"],"names":["getFacetedRowModel","instance","columnId","memo","getPreFilteredRowModel","getState","columnFilters","globalFilter","getFilteredRowModel","preRowModel","rows","length","filterableIds","map","d","id","filter","undefined","Boolean","filterRowsImpl","row","i","filterRows","key","process","env","NODE_ENV","debug","options","debugAll","debugTable","onChange"],"mappings":";;;;;;;;;;;;;;;;;AAIO,SAASA,kBAAT,GAGwB;AAC7B,EAAA,OAAO,CAACC,QAAD,EAAWC,QAAX,KACLC,UAAI,CACF,MAAM,CACJF,QAAQ,CAACG,sBAAT,EADI,EAEJH,QAAQ,CAACI,QAAT,EAAoBC,CAAAA,aAFhB,EAGJL,QAAQ,CAACI,QAAT,EAAA,CAAoBE,YAHhB,EAIJN,QAAQ,CAACO,mBAAT,EAJI,CADJ,EAOF,CAACC,WAAD,EAAcH,aAAd,EAA6BC,YAA7B,KAA8C;AAC5C,IAAA,IACE,CAACE,WAAW,CAACC,IAAZ,CAAiBC,MAAlB,IACC,EAACL,aAAD,IAAA,IAAA,IAACA,aAAa,CAAEK,MAAhB,CAA0B,IAAA,CAACJ,YAF9B,EAGE;AACA,MAAA,OAAOE,WAAP,CAAA;AACD,KAAA;;AAED,IAAA,MAAMG,aAAa,GAAG,CACpB,GAAGN,aAAa,CAACO,GAAd,CAAkBC,CAAC,IAAIA,CAAC,CAACC,EAAzB,EAA6BC,MAA7B,CAAoCF,CAAC,IAAIA,CAAC,KAAKZ,QAA/C,CADiB,EAEpBK,YAAY,GAAG,YAAH,GAAkBU,SAFV,CAAA,CAGpBD,MAHoB,CAGbE,OAHa,CAAtB,CAAA;;AAKA,IAAMC,MAAAA,cAAc,GAAIC,GAAD,IAAyB;AAC9C;AACA,MAAA,KAAK,IAAIC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGT,aAAa,CAACD,MAAlC,EAA0CU,CAAC,EAA3C,EAA+C;AAC7C,QAAID,IAAAA,GAAG,CAACd,aAAJ,CAAkBM,aAAa,CAACS,CAAD,CAA/B,CAAyC,KAAA,KAA7C,EAAoD;AAClD,UAAA,OAAO,KAAP,CAAA;AACD,SAAA;AACF,OAAA;;AACD,MAAA,OAAO,IAAP,CAAA;AACD,KARD,CAAA;;AAUA,IAAOC,OAAAA,0BAAU,CAACb,WAAW,CAACC,IAAb,EAAmBS,cAAnB,EAAmClB,QAAnC,CAAjB,CAAA;AACD,GA/BC,EAgCF;AACEsB,IAAAA,GAAG,EACDC,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAAzB,IACA,qBAAA,GAAwBxB,QAH5B;AAIEyB,IAAAA,KAAK,EAAE,MAAA;AAAA,MAAA,IAAA,qBAAA,CAAA;;AAAA,MAAM1B,OAAAA,CAAAA,qBAAAA,GAAAA,QAAQ,CAAC2B,OAAT,CAAiBC,QAAvB,oCAAmC5B,QAAQ,CAAC2B,OAAT,CAAiBE,UAApD,CAAA;AAAA,KAJT;AAKEC,IAAAA,QAAQ,EAAE,MAAM,EAAE;AALpB,GAhCE,CADN,CAAA;AAyCD;;;;"}
1
+ {"version":3,"file":"getFacetedRowModel.js","sources":["../../../src/utils/getFacetedRowModel.ts"],"sourcesContent":["import { TableInstance, RowModel, TableGenerics, Row } from '../types'\nimport { memo } from '../utils'\nimport { filterRows } from './filterRowsUtils'\n\nexport function getFacetedRowModel<TGenerics extends TableGenerics>(): (\n instance: TableInstance<TGenerics>,\n columnId: string\n) => () => RowModel<TGenerics> {\n return (instance, columnId) =>\n memo(\n () => [\n instance.getPreFilteredRowModel(),\n instance.getState().columnFilters,\n instance.getState().globalFilter,\n instance.getFilteredRowModel(),\n ],\n (preRowModel, columnFilters, globalFilter) => {\n if (\n !preRowModel.rows.length ||\n (!columnFilters?.length && !globalFilter)\n ) {\n return preRowModel\n }\n\n const filterableIds = [\n ...columnFilters.map(d => d.id).filter(d => d !== columnId),\n globalFilter ? '__global__' : undefined,\n ].filter(Boolean) as string[]\n\n const filterRowsImpl = (row: Row<TGenerics>) => {\n // Horizontally filter rows through each column\n for (let i = 0; i < filterableIds.length; i++) {\n if (row.columnFilters[filterableIds[i]!] === false) {\n return false\n }\n }\n return true\n }\n\n return filterRows(preRowModel.rows, filterRowsImpl, instance)\n },\n {\n key:\n process.env.NODE_ENV === 'development' &&\n 'getFacetedRowModel_' + columnId,\n debug: () => instance.options.debugAll ?? instance.options.debugTable,\n onChange: () => {},\n }\n )\n}\n"],"names":["getFacetedRowModel","instance","columnId","memo","getPreFilteredRowModel","getState","columnFilters","globalFilter","getFilteredRowModel","preRowModel","rows","length","filterableIds","map","d","id","filter","undefined","Boolean","filterRowsImpl","row","i","filterRows","key","process","env","NODE_ENV","debug","options","debugAll","debugTable","onChange"],"mappings":";;;;;;;;;;;;;;;;;AAIO,SAASA,kBAAT,GAGwB;AAC7B,EAAA,OAAO,CAACC,QAAD,EAAWC,QAAX,KACLC,UAAI,CACF,MAAM,CACJF,QAAQ,CAACG,sBAAT,EADI,EAEJH,QAAQ,CAACI,QAAT,EAAoBC,CAAAA,aAFhB,EAGJL,QAAQ,CAACI,QAAT,EAAA,CAAoBE,YAHhB,EAIJN,QAAQ,CAACO,mBAAT,EAJI,CADJ,EAOF,CAACC,WAAD,EAAcH,aAAd,EAA6BC,YAA7B,KAA8C;AAC5C,IAAA,IACE,CAACE,WAAW,CAACC,IAAZ,CAAiBC,MAAlB,IACC,EAACL,aAAD,IAAA,IAAA,IAACA,aAAa,CAAEK,MAAhB,CAA0B,IAAA,CAACJ,YAF9B,EAGE;AACA,MAAA,OAAOE,WAAP,CAAA;AACD,KAAA;;AAED,IAAA,MAAMG,aAAa,GAAG,CACpB,GAAGN,aAAa,CAACO,GAAd,CAAkBC,CAAC,IAAIA,CAAC,CAACC,EAAzB,EAA6BC,MAA7B,CAAoCF,CAAC,IAAIA,CAAC,KAAKZ,QAA/C,CADiB,EAEpBK,YAAY,GAAG,YAAH,GAAkBU,SAFV,CAAA,CAGpBD,MAHoB,CAGbE,OAHa,CAAtB,CAAA;;IAKA,MAAMC,cAAc,GAAIC,GAAD,IAAyB;AAC9C;AACA,MAAA,KAAK,IAAIC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGT,aAAa,CAACD,MAAlC,EAA0CU,CAAC,EAA3C,EAA+C;QAC7C,IAAID,GAAG,CAACd,aAAJ,CAAkBM,aAAa,CAACS,CAAD,CAA/B,CAAyC,KAAA,KAA7C,EAAoD;AAClD,UAAA,OAAO,KAAP,CAAA;AACD,SAAA;AACF,OAAA;;AACD,MAAA,OAAO,IAAP,CAAA;KAPF,CAAA;;IAUA,OAAOC,0BAAU,CAACb,WAAW,CAACC,IAAb,EAAmBS,cAAnB,EAAmClB,QAAnC,CAAjB,CAAA;AACD,GA/BC,EAgCF;IACEsB,GAAG,EACDC,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAAzB,IACA,qBAAA,GAAwBxB,QAH5B;AAIEyB,IAAAA,KAAK,EAAE,MAAA;AAAA,MAAA,IAAA,qBAAA,CAAA;;MAAA,OAAM1B,CAAAA,qBAAAA,GAAAA,QAAQ,CAAC2B,OAAT,CAAiBC,QAAvB,oCAAmC5B,QAAQ,CAAC2B,OAAT,CAAiBE,UAApD,CAAA;KAJT;IAKEC,QAAQ,EAAE,MAAM,EAAE;AALpB,GAhCE,CADN,CAAA;AAyCD;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"getFacetedUniqueValues.js","sources":["../../../src/utils/getFacetedUniqueValues.ts"],"sourcesContent":["import { TableInstance, TableGenerics } from '../types'\nimport { memo } from '../utils'\n\nexport function getFacetedUniqueValues<TGenerics extends TableGenerics>(): (\n instance: TableInstance<TGenerics>,\n columnId: string\n) => () => Map<any, number> {\n return (instance, columnId) =>\n memo(\n () => [instance.getColumn(columnId).getFacetedRowModel()],\n facetedRowModel => {\n let facetedUniqueValues = new Map<any, number>()\n\n for (let i = 0; i < facetedRowModel.flatRows.length; i++) {\n const value = facetedRowModel.flatRows[i]?.getValue(columnId)\n\n if (facetedUniqueValues.has(value)) {\n facetedUniqueValues.set(\n value,\n (facetedUniqueValues.get(value) ?? 0) + 1\n )\n } else {\n facetedUniqueValues.set(value, 1)\n }\n }\n\n return facetedUniqueValues\n },\n {\n key:\n process.env.NODE_ENV === 'development' &&\n 'getFacetedUniqueValues_' + columnId,\n debug: () => instance.options.debugAll ?? instance.options.debugTable,\n onChange: () => {},\n }\n )\n}\n"],"names":["getFacetedUniqueValues","instance","columnId","memo","getColumn","getFacetedRowModel","facetedRowModel","facetedUniqueValues","Map","i","flatRows","length","value","getValue","has","set","get","key","process","env","NODE_ENV","debug","options","debugAll","debugTable","onChange"],"mappings":";;;;;;;;;;;;;;;;AAGO,SAASA,sBAAT,GAGqB;AAC1B,EAAO,OAAA,CAACC,QAAD,EAAWC,QAAX,KACLC,UAAI,CACF,MAAM,CAACF,QAAQ,CAACG,SAAT,CAAmBF,QAAnB,CAA6BG,CAAAA,kBAA7B,EAAD,CADJ,EAEFC,eAAe,IAAI;AACjB,IAAA,IAAIC,mBAAmB,GAAG,IAAIC,GAAJ,EAA1B,CAAA;;AAEA,IAAA,KAAK,IAAIC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGH,eAAe,CAACI,QAAhB,CAAyBC,MAA7C,EAAqDF,CAAC,EAAtD,EAA0D;AAAA,MAAA,IAAA,qBAAA,CAAA;;AACxD,MAAA,MAAMG,KAAK,GAAA,CAAA,qBAAA,GAAGN,eAAe,CAACI,QAAhB,CAAyBD,CAAzB,CAAH,KAAG,IAAA,GAAA,KAAA,CAAA,GAAA,qBAAA,CAA6BI,QAA7B,CAAsCX,QAAtC,CAAd,CAAA;;AAEA,MAAA,IAAIK,mBAAmB,CAACO,GAApB,CAAwBF,KAAxB,CAAJ,EAAoC;AAAA,QAAA,IAAA,qBAAA,CAAA;;AAClCL,QAAAA,mBAAmB,CAACQ,GAApB,CACEH,KADF,EAEE,CAACL,CAAAA,qBAAAA,GAAAA,mBAAmB,CAACS,GAApB,CAAwBJ,KAAxB,CAAD,KAAmC,IAAA,GAAA,qBAAA,GAAA,CAAnC,IAAwC,CAF1C,CAAA,CAAA;AAID,OALD,MAKO;AACLL,QAAAA,mBAAmB,CAACQ,GAApB,CAAwBH,KAAxB,EAA+B,CAA/B,CAAA,CAAA;AACD,OAAA;AACF,KAAA;;AAED,IAAA,OAAOL,mBAAP,CAAA;AACD,GAnBC,EAoBF;AACEU,IAAAA,GAAG,EACDC,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAAzB,IACA,yBAAA,GAA4BlB,QAHhC;AAIEmB,IAAAA,KAAK,EAAE,MAAA;AAAA,MAAA,IAAA,qBAAA,CAAA;;AAAA,MAAMpB,OAAAA,CAAAA,qBAAAA,GAAAA,QAAQ,CAACqB,OAAT,CAAiBC,QAAvB,oCAAmCtB,QAAQ,CAACqB,OAAT,CAAiBE,UAApD,CAAA;AAAA,KAJT;AAKEC,IAAAA,QAAQ,EAAE,MAAM,EAAE;AALpB,GApBE,CADN,CAAA;AA6BD;;;;"}
1
+ {"version":3,"file":"getFacetedUniqueValues.js","sources":["../../../src/utils/getFacetedUniqueValues.ts"],"sourcesContent":["import { TableInstance, TableGenerics } from '../types'\nimport { memo } from '../utils'\n\nexport function getFacetedUniqueValues<TGenerics extends TableGenerics>(): (\n instance: TableInstance<TGenerics>,\n columnId: string\n) => () => Map<any, number> {\n return (instance, columnId) =>\n memo(\n () => [instance.getColumn(columnId).getFacetedRowModel()],\n facetedRowModel => {\n let facetedUniqueValues = new Map<any, number>()\n\n for (let i = 0; i < facetedRowModel.flatRows.length; i++) {\n const value = facetedRowModel.flatRows[i]?.getValue(columnId)\n\n if (facetedUniqueValues.has(value)) {\n facetedUniqueValues.set(\n value,\n (facetedUniqueValues.get(value) ?? 0) + 1\n )\n } else {\n facetedUniqueValues.set(value, 1)\n }\n }\n\n return facetedUniqueValues\n },\n {\n key:\n process.env.NODE_ENV === 'development' &&\n 'getFacetedUniqueValues_' + columnId,\n debug: () => instance.options.debugAll ?? instance.options.debugTable,\n onChange: () => {},\n }\n )\n}\n"],"names":["getFacetedUniqueValues","instance","columnId","memo","getColumn","getFacetedRowModel","facetedRowModel","facetedUniqueValues","Map","i","flatRows","length","value","getValue","has","set","get","key","process","env","NODE_ENV","debug","options","debugAll","debugTable","onChange"],"mappings":";;;;;;;;;;;;;;;;AAGO,SAASA,sBAAT,GAGqB;EAC1B,OAAO,CAACC,QAAD,EAAWC,QAAX,KACLC,UAAI,CACF,MAAM,CAACF,QAAQ,CAACG,SAAT,CAAmBF,QAAnB,CAA6BG,CAAAA,kBAA7B,EAAD,CADJ,EAEFC,eAAe,IAAI;AACjB,IAAA,IAAIC,mBAAmB,GAAG,IAAIC,GAAJ,EAA1B,CAAA;;AAEA,IAAA,KAAK,IAAIC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGH,eAAe,CAACI,QAAhB,CAAyBC,MAA7C,EAAqDF,CAAC,EAAtD,EAA0D;AAAA,MAAA,IAAA,qBAAA,CAAA;;AACxD,MAAA,MAAMG,KAAK,GAAA,CAAA,qBAAA,GAAGN,eAAe,CAACI,QAAhB,CAAyBD,CAAzB,CAAH,KAAG,IAAA,GAAA,KAAA,CAAA,GAAA,qBAAA,CAA6BI,QAA7B,CAAsCX,QAAtC,CAAd,CAAA;;AAEA,MAAA,IAAIK,mBAAmB,CAACO,GAApB,CAAwBF,KAAxB,CAAJ,EAAoC;AAAA,QAAA,IAAA,qBAAA,CAAA;;AAClCL,QAAAA,mBAAmB,CAACQ,GAApB,CACEH,KADF,EAEE,CAACL,CAAAA,qBAAAA,GAAAA,mBAAmB,CAACS,GAApB,CAAwBJ,KAAxB,CAAD,KAAmC,IAAA,GAAA,qBAAA,GAAA,CAAnC,IAAwC,CAF1C,CAAA,CAAA;AAID,OALD,MAKO;AACLL,QAAAA,mBAAmB,CAACQ,GAApB,CAAwBH,KAAxB,EAA+B,CAA/B,CAAA,CAAA;AACD,OAAA;AACF,KAAA;;AAED,IAAA,OAAOL,mBAAP,CAAA;AACD,GAnBC,EAoBF;IACEU,GAAG,EACDC,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAAzB,IACA,yBAAA,GAA4BlB,QAHhC;AAIEmB,IAAAA,KAAK,EAAE,MAAA;AAAA,MAAA,IAAA,qBAAA,CAAA;;MAAA,OAAMpB,CAAAA,qBAAAA,GAAAA,QAAQ,CAACqB,OAAT,CAAiBC,QAAvB,oCAAmCtB,QAAQ,CAACqB,OAAT,CAAiBE,UAApD,CAAA;KAJT;IAKEC,QAAQ,EAAE,MAAM,EAAE;AALpB,GApBE,CADN,CAAA;AA6BD;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"getFilteredRowModel.js","sources":["../../../src/utils/getFilteredRowModel.ts"],"sourcesContent":["import { ResolvedColumnFilter } from '../features/Filters'\nimport { TableInstance, RowModel, TableGenerics, Row } from '../types'\nimport { memo } from '../utils'\nimport { filterRows } from './filterRowsUtils'\n\nexport function getFilteredRowModel<TGenerics extends TableGenerics>(): (\n instance: TableInstance<TGenerics>\n) => () => RowModel<TGenerics> {\n return instance =>\n memo(\n () => [\n instance.getPreFilteredRowModel(),\n instance.getState().columnFilters,\n instance.getState().globalFilter,\n ],\n (rowModel, columnFilters, globalFilter) => {\n if (\n !rowModel.rows.length ||\n (!columnFilters?.length && !globalFilter)\n ) {\n for (let i = 0; i < rowModel.flatRows.length; i++) {\n rowModel.flatRows[i]!.columnFilters = {}\n rowModel.flatRows[i]!.columnFiltersMeta = {}\n }\n return rowModel\n }\n\n const resolvedColumnFilters: ResolvedColumnFilter<TGenerics>[] = []\n const resolvedGlobalFilters: ResolvedColumnFilter<TGenerics>[] = []\n\n ;(columnFilters ?? []).forEach(d => {\n const column = instance.getColumn(d.id)\n\n if (!column) {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(\n `Table: Could not find a column to filter with columnId: ${d.id}`\n )\n }\n }\n\n const filterFn = column.getFilterFn()\n\n if (!filterFn) {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(\n `Could not find a valid 'column.filterFn' for column with the ID: ${column.id}.`\n )\n }\n return\n }\n\n resolvedColumnFilters.push({\n id: d.id,\n filterFn,\n resolvedValue: filterFn.resolveFilterValue?.(d.value) ?? d.value,\n })\n })\n\n const filterableIds = columnFilters.map(d => d.id)\n\n const globalFilterFn = instance.getGlobalFilterFn()\n\n const globallyFilterableColumns = instance\n .getAllLeafColumns()\n .filter(column => column.getCanGlobalFilter())\n\n if (\n globalFilter &&\n globalFilterFn &&\n globallyFilterableColumns.length\n ) {\n filterableIds.push('__global__')\n\n globallyFilterableColumns.forEach(column => {\n resolvedGlobalFilters.push({\n id: column.id,\n filterFn: globalFilterFn,\n resolvedValue:\n globalFilterFn.resolveFilterValue?.(globalFilter) ??\n globalFilter,\n })\n })\n }\n\n let currentColumnFilter\n let currentGlobalFilter\n\n // Flag the prefiltered row model with each filter state\n for (let j = 0; j < rowModel.flatRows.length; j++) {\n const row = rowModel.flatRows[j]!\n\n row.columnFilters = {}\n\n if (resolvedColumnFilters.length) {\n for (let i = 0; i < resolvedColumnFilters.length; i++) {\n currentColumnFilter = resolvedColumnFilters[i]!\n const id = currentColumnFilter.id\n\n // Tag the row with the column filter state\n row.columnFilters[id] = currentColumnFilter.filterFn(\n row,\n id,\n currentColumnFilter.resolvedValue,\n filterMeta => {\n row.columnFiltersMeta[id] = filterMeta\n }\n )\n }\n }\n\n if (resolvedGlobalFilters.length) {\n for (let i = 0; i < resolvedGlobalFilters.length; i++) {\n currentGlobalFilter = resolvedGlobalFilters[i]!\n const id = currentGlobalFilter.id\n // Tag the row with the first truthy global filter state\n if (\n currentGlobalFilter.filterFn(\n row,\n id,\n currentGlobalFilter.resolvedValue,\n filterMeta => {\n row.columnFiltersMeta[id] = filterMeta\n }\n )\n ) {\n row.columnFilters.__global__ = true\n break\n }\n }\n\n if (row.columnFilters.__global__ !== true) {\n row.columnFilters.__global__ = false\n }\n }\n }\n\n const filterRowsImpl = (row: Row<TGenerics>) => {\n // Horizontally filter rows through each column\n for (let i = 0; i < filterableIds.length; i++) {\n if (row.columnFilters[filterableIds[i]!] === false) {\n return false\n }\n }\n return true\n }\n\n // Filter final rows using all of the active filters\n return filterRows(rowModel.rows, filterRowsImpl, instance)\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getFilteredRowModel',\n debug: () => instance.options.debugAll ?? instance.options.debugTable,\n onChange: () => {\n instance._autoResetPageIndex()\n },\n }\n )\n}\n"],"names":["getFilteredRowModel","instance","memo","getPreFilteredRowModel","getState","columnFilters","globalFilter","rowModel","rows","length","i","flatRows","columnFiltersMeta","resolvedColumnFilters","resolvedGlobalFilters","forEach","d","column","getColumn","id","process","env","NODE_ENV","console","warn","filterFn","getFilterFn","push","resolvedValue","resolveFilterValue","value","filterableIds","map","globalFilterFn","getGlobalFilterFn","globallyFilterableColumns","getAllLeafColumns","filter","getCanGlobalFilter","currentColumnFilter","currentGlobalFilter","j","row","filterMeta","__global__","filterRowsImpl","filterRows","key","debug","options","debugAll","debugTable","onChange","_autoResetPageIndex"],"mappings":"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"}
1
+ {"version":3,"file":"getFilteredRowModel.js","sources":["../../../src/utils/getFilteredRowModel.ts"],"sourcesContent":["import { ResolvedColumnFilter } from '../features/Filters'\nimport { TableInstance, RowModel, TableGenerics, Row } from '../types'\nimport { memo } from '../utils'\nimport { filterRows } from './filterRowsUtils'\n\nexport function getFilteredRowModel<TGenerics extends TableGenerics>(): (\n instance: TableInstance<TGenerics>\n) => () => RowModel<TGenerics> {\n return instance =>\n memo(\n () => [\n instance.getPreFilteredRowModel(),\n instance.getState().columnFilters,\n instance.getState().globalFilter,\n ],\n (rowModel, columnFilters, globalFilter) => {\n if (\n !rowModel.rows.length ||\n (!columnFilters?.length && !globalFilter)\n ) {\n for (let i = 0; i < rowModel.flatRows.length; i++) {\n rowModel.flatRows[i]!.columnFilters = {}\n rowModel.flatRows[i]!.columnFiltersMeta = {}\n }\n return rowModel\n }\n\n const resolvedColumnFilters: ResolvedColumnFilter<TGenerics>[] = []\n const resolvedGlobalFilters: ResolvedColumnFilter<TGenerics>[] = []\n\n ;(columnFilters ?? []).forEach(d => {\n const column = instance.getColumn(d.id)\n\n if (!column) {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(\n `Table: Could not find a column to filter with columnId: ${d.id}`\n )\n }\n }\n\n const filterFn = column.getFilterFn()\n\n if (!filterFn) {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(\n `Could not find a valid 'column.filterFn' for column with the ID: ${column.id}.`\n )\n }\n return\n }\n\n resolvedColumnFilters.push({\n id: d.id,\n filterFn,\n resolvedValue: filterFn.resolveFilterValue?.(d.value) ?? d.value,\n })\n })\n\n const filterableIds = columnFilters.map(d => d.id)\n\n const globalFilterFn = instance.getGlobalFilterFn()\n\n const globallyFilterableColumns = instance\n .getAllLeafColumns()\n .filter(column => column.getCanGlobalFilter())\n\n if (\n globalFilter &&\n globalFilterFn &&\n globallyFilterableColumns.length\n ) {\n filterableIds.push('__global__')\n\n globallyFilterableColumns.forEach(column => {\n resolvedGlobalFilters.push({\n id: column.id,\n filterFn: globalFilterFn,\n resolvedValue:\n globalFilterFn.resolveFilterValue?.(globalFilter) ??\n globalFilter,\n })\n })\n }\n\n let currentColumnFilter\n let currentGlobalFilter\n\n // Flag the prefiltered row model with each filter state\n for (let j = 0; j < rowModel.flatRows.length; j++) {\n const row = rowModel.flatRows[j]!\n\n row.columnFilters = {}\n\n if (resolvedColumnFilters.length) {\n for (let i = 0; i < resolvedColumnFilters.length; i++) {\n currentColumnFilter = resolvedColumnFilters[i]!\n const id = currentColumnFilter.id\n\n // Tag the row with the column filter state\n row.columnFilters[id] = currentColumnFilter.filterFn(\n row,\n id,\n currentColumnFilter.resolvedValue,\n filterMeta => {\n row.columnFiltersMeta[id] = filterMeta\n }\n )\n }\n }\n\n if (resolvedGlobalFilters.length) {\n for (let i = 0; i < resolvedGlobalFilters.length; i++) {\n currentGlobalFilter = resolvedGlobalFilters[i]!\n const id = currentGlobalFilter.id\n // Tag the row with the first truthy global filter state\n if (\n currentGlobalFilter.filterFn(\n row,\n id,\n currentGlobalFilter.resolvedValue,\n filterMeta => {\n row.columnFiltersMeta[id] = filterMeta\n }\n )\n ) {\n row.columnFilters.__global__ = true\n break\n }\n }\n\n if (row.columnFilters.__global__ !== true) {\n row.columnFilters.__global__ = false\n }\n }\n }\n\n const filterRowsImpl = (row: Row<TGenerics>) => {\n // Horizontally filter rows through each column\n for (let i = 0; i < filterableIds.length; i++) {\n if (row.columnFilters[filterableIds[i]!] === false) {\n return false\n }\n }\n return true\n }\n\n // Filter final rows using all of the active filters\n return filterRows(rowModel.rows, filterRowsImpl, instance)\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getFilteredRowModel',\n debug: () => instance.options.debugAll ?? instance.options.debugTable,\n onChange: () => {\n instance._autoResetPageIndex()\n },\n }\n )\n}\n"],"names":["getFilteredRowModel","instance","memo","getPreFilteredRowModel","getState","columnFilters","globalFilter","rowModel","rows","length","i","flatRows","columnFiltersMeta","resolvedColumnFilters","resolvedGlobalFilters","forEach","d","column","getColumn","id","process","env","NODE_ENV","console","warn","filterFn","getFilterFn","push","resolvedValue","resolveFilterValue","value","filterableIds","map","globalFilterFn","getGlobalFilterFn","globallyFilterableColumns","getAllLeafColumns","filter","getCanGlobalFilter","currentColumnFilter","currentGlobalFilter","j","row","filterMeta","__global__","filterRowsImpl","filterRows","key","debug","options","debugAll","debugTable","onChange","_autoResetPageIndex"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"getGroupedRowModel.js","sources":["../../../src/utils/getGroupedRowModel.ts"],"sourcesContent":["import { createRow } from '../core/row'\nimport { TableInstance, Row, RowModel, TableGenerics } from '../types'\nimport { flattenBy, memo } from '../utils'\n\nexport function getGroupedRowModel<TGenerics extends TableGenerics>(): (\n instance: TableInstance<TGenerics>\n) => () => RowModel<TGenerics> {\n return instance =>\n memo(\n () => [instance.getState().grouping, instance.getPreGroupedRowModel()],\n (grouping, rowModel) => {\n if (!rowModel.rows.length || !grouping.length) {\n return rowModel\n }\n\n // Filter the grouping list down to columns that exist\n const existingGrouping = grouping.filter(columnId =>\n instance.getColumn(columnId)\n )\n\n const groupedFlatRows: Row<TGenerics>[] = []\n const groupedRowsById: Record<string, Row<TGenerics>> = {}\n // const onlyGroupedFlatRows: Row[] = [];\n // const onlyGroupedRowsById: Record<RowId, Row> = {};\n // const nonGroupedFlatRows: Row[] = [];\n // const nonGroupedRowsById: Record<RowId, Row> = {};\n\n // Recursively group the data\n const groupUpRecursively = (\n rows: Row<TGenerics>[],\n depth = 0,\n parentId: string\n ) => {\n // This is the last level, just return the rows\n if (depth === existingGrouping.length) {\n return rows\n }\n\n const columnId = existingGrouping[depth]!\n\n // Group the rows together for this level\n const rowGroupsMap = groupBy(rows, columnId)\n\n // Peform aggregations for each group\n const aggregatedGroupedRows = Array.from(rowGroupsMap.entries()).map(\n ([groupingValue, groupedRows], index) => {\n let id = `${columnId}:${groupingValue}`\n id = parentId ? `${parentId}>${id}` : id\n\n // First, Recurse to group sub rows before aggregation\n const subRows = groupUpRecursively(groupedRows, depth + 1, id)\n\n // Flatten the leaf rows of the rows in this group\n const leafRows = depth\n ? flattenBy(groupedRows, row => row.subRows)\n : groupedRows\n\n const row = createRow(instance, id, undefined, index, depth)\n\n Object.assign(row, {\n groupingColumnId: columnId,\n groupingValue,\n subRows,\n leafRows,\n getValue: (columnId: string) => {\n // Don't aggregate columns that are in the grouping\n if (existingGrouping.includes(columnId)) {\n if (row._valuesCache.hasOwnProperty(columnId)) {\n return row._valuesCache[columnId]\n }\n\n if (groupedRows[0]) {\n row._valuesCache[columnId] =\n groupedRows[0].getValue(columnId) ?? undefined\n }\n\n return row._valuesCache[columnId]\n }\n\n if (row._groupingValuesCache.hasOwnProperty(columnId)) {\n return row._groupingValuesCache[columnId]\n }\n\n // Aggregate the values\n const column = instance.getColumn(columnId)\n const aggregateFn = column.getAggregationFn()\n\n if (aggregateFn) {\n row._groupingValuesCache[columnId] = aggregateFn(\n columnId,\n leafRows,\n groupedRows\n )\n\n return row._groupingValuesCache[columnId]\n }\n },\n })\n\n subRows.forEach(subRow => {\n groupedFlatRows.push(subRow)\n groupedRowsById[subRow.id] = subRow\n // if (subRow.getIsGrouped?.()) {\n // onlyGroupedFlatRows.push(subRow);\n // onlyGroupedRowsById[subRow.id] = subRow;\n // } else {\n // nonGroupedFlatRows.push(subRow);\n // nonGroupedRowsById[subRow.id] = subRow;\n // }\n })\n\n return row\n }\n )\n\n return aggregatedGroupedRows\n }\n\n const groupedRows = groupUpRecursively(rowModel.rows, 0, '')\n\n groupedRows.forEach(subRow => {\n groupedFlatRows.push(subRow)\n groupedRowsById[subRow.id] = subRow\n // if (subRow.getIsGrouped?.()) {\n // onlyGroupedFlatRows.push(subRow);\n // onlyGroupedRowsById[subRow.id] = subRow;\n // } else {\n // nonGroupedFlatRows.push(subRow);\n // nonGroupedRowsById[subRow.id] = subRow;\n // }\n })\n\n return {\n rows: groupedRows,\n flatRows: groupedFlatRows,\n rowsById: groupedRowsById,\n }\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getGroupedRowModel',\n debug: () => instance.options.debugAll ?? instance.options.debugTable,\n onChange: () => {\n instance._queue(() => {\n instance._autoResetExpanded()\n instance._autoResetPageIndex()\n })\n },\n }\n )\n}\n\nfunction groupBy<TGenerics extends TableGenerics>(\n rows: Row<TGenerics>[],\n columnId: string\n) {\n const groupMap = new Map<any, Row<TGenerics>[]>()\n\n return rows.reduce((map, row) => {\n const resKey = `${row.getValue(columnId)}`\n const previous = map.get(resKey)\n if (!previous) {\n map.set(resKey, [row])\n } else {\n map.set(resKey, [...previous, row])\n }\n return map\n }, groupMap)\n}\n"],"names":["getGroupedRowModel","instance","memo","getState","grouping","getPreGroupedRowModel","rowModel","rows","length","existingGrouping","filter","columnId","getColumn","groupedFlatRows","groupedRowsById","groupUpRecursively","depth","parentId","rowGroupsMap","groupBy","aggregatedGroupedRows","Array","from","entries","map","index","groupingValue","groupedRows","id","subRows","leafRows","flattenBy","row","createRow","undefined","Object","assign","groupingColumnId","getValue","includes","_valuesCache","hasOwnProperty","_groupingValuesCache","column","aggregateFn","getAggregationFn","forEach","subRow","push","flatRows","rowsById","key","process","env","NODE_ENV","debug","options","debugAll","debugTable","onChange","_queue","_autoResetExpanded","_autoResetPageIndex","groupMap","Map","reduce","resKey","previous","get","set"],"mappings":"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"}
1
+ {"version":3,"file":"getGroupedRowModel.js","sources":["../../../src/utils/getGroupedRowModel.ts"],"sourcesContent":["import { createRow } from '../core/row'\nimport { TableInstance, Row, RowModel, TableGenerics } from '../types'\nimport { flattenBy, memo } from '../utils'\n\nexport function getGroupedRowModel<TGenerics extends TableGenerics>(): (\n instance: TableInstance<TGenerics>\n) => () => RowModel<TGenerics> {\n return instance =>\n memo(\n () => [instance.getState().grouping, instance.getPreGroupedRowModel()],\n (grouping, rowModel) => {\n if (!rowModel.rows.length || !grouping.length) {\n return rowModel\n }\n\n // Filter the grouping list down to columns that exist\n const existingGrouping = grouping.filter(columnId =>\n instance.getColumn(columnId)\n )\n\n const groupedFlatRows: Row<TGenerics>[] = []\n const groupedRowsById: Record<string, Row<TGenerics>> = {}\n // const onlyGroupedFlatRows: Row[] = [];\n // const onlyGroupedRowsById: Record<RowId, Row> = {};\n // const nonGroupedFlatRows: Row[] = [];\n // const nonGroupedRowsById: Record<RowId, Row> = {};\n\n // Recursively group the data\n const groupUpRecursively = (\n rows: Row<TGenerics>[],\n depth = 0,\n parentId: string\n ) => {\n // This is the last level, just return the rows\n if (depth === existingGrouping.length) {\n return rows\n }\n\n const columnId = existingGrouping[depth]!\n\n // Group the rows together for this level\n const rowGroupsMap = groupBy(rows, columnId)\n\n // Peform aggregations for each group\n const aggregatedGroupedRows = Array.from(rowGroupsMap.entries()).map(\n ([groupingValue, groupedRows], index) => {\n let id = `${columnId}:${groupingValue}`\n id = parentId ? `${parentId}>${id}` : id\n\n // First, Recurse to group sub rows before aggregation\n const subRows = groupUpRecursively(groupedRows, depth + 1, id)\n\n // Flatten the leaf rows of the rows in this group\n const leafRows = depth\n ? flattenBy(groupedRows, row => row.subRows)\n : groupedRows\n\n const row = createRow(instance, id, undefined, index, depth)\n\n Object.assign(row, {\n groupingColumnId: columnId,\n groupingValue,\n subRows,\n leafRows,\n getValue: (columnId: string) => {\n // Don't aggregate columns that are in the grouping\n if (existingGrouping.includes(columnId)) {\n if (row._valuesCache.hasOwnProperty(columnId)) {\n return row._valuesCache[columnId]\n }\n\n if (groupedRows[0]) {\n row._valuesCache[columnId] =\n groupedRows[0].getValue(columnId) ?? undefined\n }\n\n return row._valuesCache[columnId]\n }\n\n if (row._groupingValuesCache.hasOwnProperty(columnId)) {\n return row._groupingValuesCache[columnId]\n }\n\n // Aggregate the values\n const column = instance.getColumn(columnId)\n const aggregateFn = column.getAggregationFn()\n\n if (aggregateFn) {\n row._groupingValuesCache[columnId] = aggregateFn(\n columnId,\n leafRows,\n groupedRows\n )\n\n return row._groupingValuesCache[columnId]\n }\n },\n })\n\n subRows.forEach(subRow => {\n groupedFlatRows.push(subRow)\n groupedRowsById[subRow.id] = subRow\n // if (subRow.getIsGrouped?.()) {\n // onlyGroupedFlatRows.push(subRow);\n // onlyGroupedRowsById[subRow.id] = subRow;\n // } else {\n // nonGroupedFlatRows.push(subRow);\n // nonGroupedRowsById[subRow.id] = subRow;\n // }\n })\n\n return row\n }\n )\n\n return aggregatedGroupedRows\n }\n\n const groupedRows = groupUpRecursively(rowModel.rows, 0, '')\n\n groupedRows.forEach(subRow => {\n groupedFlatRows.push(subRow)\n groupedRowsById[subRow.id] = subRow\n // if (subRow.getIsGrouped?.()) {\n // onlyGroupedFlatRows.push(subRow);\n // onlyGroupedRowsById[subRow.id] = subRow;\n // } else {\n // nonGroupedFlatRows.push(subRow);\n // nonGroupedRowsById[subRow.id] = subRow;\n // }\n })\n\n return {\n rows: groupedRows,\n flatRows: groupedFlatRows,\n rowsById: groupedRowsById,\n }\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getGroupedRowModel',\n debug: () => instance.options.debugAll ?? instance.options.debugTable,\n onChange: () => {\n instance._queue(() => {\n instance._autoResetExpanded()\n instance._autoResetPageIndex()\n })\n },\n }\n )\n}\n\nfunction groupBy<TGenerics extends TableGenerics>(\n rows: Row<TGenerics>[],\n columnId: string\n) {\n const groupMap = new Map<any, Row<TGenerics>[]>()\n\n return rows.reduce((map, row) => {\n const resKey = `${row.getValue(columnId)}`\n const previous = map.get(resKey)\n if (!previous) {\n map.set(resKey, [row])\n } else {\n map.set(resKey, [...previous, row])\n }\n return map\n }, groupMap)\n}\n"],"names":["getGroupedRowModel","instance","memo","getState","grouping","getPreGroupedRowModel","rowModel","rows","length","existingGrouping","filter","columnId","getColumn","groupedFlatRows","groupedRowsById","groupUpRecursively","depth","parentId","rowGroupsMap","groupBy","aggregatedGroupedRows","Array","from","entries","map","index","groupingValue","groupedRows","id","subRows","leafRows","flattenBy","row","createRow","undefined","Object","assign","groupingColumnId","getValue","includes","_valuesCache","hasOwnProperty","_groupingValuesCache","column","aggregateFn","getAggregationFn","forEach","subRow","push","flatRows","rowsById","key","process","env","NODE_ENV","debug","options","debugAll","debugTable","onChange","_queue","_autoResetExpanded","_autoResetPageIndex","groupMap","Map","reduce","resKey","previous","get","set"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"getPaginationRowModel.js","sources":["../../../src/utils/getPaginationRowModel.ts"],"sourcesContent":["import { TableInstance, RowModel, TableGenerics, Row } from '../types'\nimport { memo } from '../utils'\nimport { expandRows } from './getExpandedRowModel'\n\nexport function getPaginationRowModel<TGenerics extends TableGenerics>(opts?: {\n initialSync: boolean\n}): (instance: TableInstance<TGenerics>) => () => RowModel<TGenerics> {\n return instance =>\n memo(\n () => [\n instance.getState().pagination,\n instance.getPrePaginationRowModel(),\n ],\n (pagination, rowModel) => {\n if (!rowModel.rows.length) {\n return rowModel\n }\n\n const { pageSize, pageIndex } = pagination\n let { rows, flatRows, rowsById } = rowModel\n const pageStart = pageSize * pageIndex\n const pageEnd = pageStart + pageSize\n\n rows = rows.slice(pageStart, pageEnd)\n\n let paginatedRowModel: RowModel<TGenerics>\n\n if (!instance.options.paginateExpandedRows) {\n paginatedRowModel = expandRows(\n {\n rows,\n flatRows,\n rowsById,\n },\n instance\n )\n } else {\n paginatedRowModel = {\n rows,\n flatRows,\n rowsById,\n }\n }\n\n paginatedRowModel.flatRows = []\n\n const handleRow = (row: Row<TGenerics>) => {\n paginatedRowModel.flatRows.push(row)\n if (row.subRows.length) {\n row.subRows.forEach(handleRow)\n }\n }\n\n paginatedRowModel.rows.forEach(handleRow)\n\n return paginatedRowModel\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getPaginationRowModel',\n debug: () => instance.options.debugAll ?? instance.options.debugTable,\n }\n )\n}\n"],"names":["getPaginationRowModel","opts","instance","memo","getState","pagination","getPrePaginationRowModel","rowModel","rows","length","pageSize","pageIndex","flatRows","rowsById","pageStart","pageEnd","slice","paginatedRowModel","options","paginateExpandedRows","expandRows","handleRow","row","push","subRows","forEach","key","process","env","NODE_ENV","debug","debugAll","debugTable"],"mappings":";;;;;;;;;;;;;;;;;AAIO,SAASA,qBAAT,CAAgEC,IAAhE,EAE+D;AACpE,EAAOC,OAAAA,QAAQ,IACbC,UAAI,CACF,MAAM,CACJD,QAAQ,CAACE,QAAT,EAAoBC,CAAAA,UADhB,EAEJH,QAAQ,CAACI,wBAAT,EAFI,CADJ,EAKF,CAACD,UAAD,EAAaE,QAAb,KAA0B;AACxB,IAAA,IAAI,CAACA,QAAQ,CAACC,IAAT,CAAcC,MAAnB,EAA2B;AACzB,MAAA,OAAOF,QAAP,CAAA;AACD,KAAA;;AAED,IAAM,MAAA;AAAEG,MAAAA,QAAF;AAAYC,MAAAA,SAAAA;AAAZ,KAAA,GAA0BN,UAAhC,CAAA;AACA,IAAI,IAAA;AAAEG,MAAAA,IAAF;AAAQI,MAAAA,QAAR;AAAkBC,MAAAA,QAAAA;AAAlB,KAAA,GAA+BN,QAAnC,CAAA;AACA,IAAA,MAAMO,SAAS,GAAGJ,QAAQ,GAAGC,SAA7B,CAAA;AACA,IAAA,MAAMI,OAAO,GAAGD,SAAS,GAAGJ,QAA5B,CAAA;AAEAF,IAAAA,IAAI,GAAGA,IAAI,CAACQ,KAAL,CAAWF,SAAX,EAAsBC,OAAtB,CAAP,CAAA;AAEA,IAAA,IAAIE,iBAAJ,CAAA;;AAEA,IAAA,IAAI,CAACf,QAAQ,CAACgB,OAAT,CAAiBC,oBAAtB,EAA4C;AAC1CF,MAAAA,iBAAiB,GAAGG,8BAAU,CAC5B;AACEZ,QAAAA,IADF;AAEEI,QAAAA,QAFF;AAGEC,QAAAA,QAAAA;AAHF,OAD4B,CAA9B,CAAA;AAQD,KATD,MASO;AACLI,MAAAA,iBAAiB,GAAG;AAClBT,QAAAA,IADkB;AAElBI,QAAAA,QAFkB;AAGlBC,QAAAA,QAAAA;AAHkB,OAApB,CAAA;AAKD,KAAA;;AAEDI,IAAAA,iBAAiB,CAACL,QAAlB,GAA6B,EAA7B,CAAA;;AAEA,IAAMS,MAAAA,SAAS,GAAIC,GAAD,IAAyB;AACzCL,MAAAA,iBAAiB,CAACL,QAAlB,CAA2BW,IAA3B,CAAgCD,GAAhC,CAAA,CAAA;;AACA,MAAA,IAAIA,GAAG,CAACE,OAAJ,CAAYf,MAAhB,EAAwB;AACtBa,QAAAA,GAAG,CAACE,OAAJ,CAAYC,OAAZ,CAAoBJ,SAApB,CAAA,CAAA;AACD,OAAA;AACF,KALD,CAAA;;AAOAJ,IAAAA,iBAAiB,CAACT,IAAlB,CAAuBiB,OAAvB,CAA+BJ,SAA/B,CAAA,CAAA;AAEA,IAAA,OAAOJ,iBAAP,CAAA;AACD,GAhDC,EAiDF;AACES,IAAAA,GAAG,EAAEC,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAAzB,IAA0C,uBADjD;AAEEC,IAAAA,KAAK,EAAE,MAAA;AAAA,MAAA,IAAA,qBAAA,CAAA;;AAAA,MAAM5B,OAAAA,CAAAA,qBAAAA,GAAAA,QAAQ,CAACgB,OAAT,CAAiBa,QAAvB,oCAAmC7B,QAAQ,CAACgB,OAAT,CAAiBc,UAApD,CAAA;AAAA,KAAA;AAFT,GAjDE,CADN,CAAA;AAuDD;;;;"}
1
+ {"version":3,"file":"getPaginationRowModel.js","sources":["../../../src/utils/getPaginationRowModel.ts"],"sourcesContent":["import { TableInstance, RowModel, TableGenerics, Row } from '../types'\nimport { memo } from '../utils'\nimport { expandRows } from './getExpandedRowModel'\n\nexport function getPaginationRowModel<TGenerics extends TableGenerics>(opts?: {\n initialSync: boolean\n}): (instance: TableInstance<TGenerics>) => () => RowModel<TGenerics> {\n return instance =>\n memo(\n () => [\n instance.getState().pagination,\n instance.getPrePaginationRowModel(),\n ],\n (pagination, rowModel) => {\n if (!rowModel.rows.length) {\n return rowModel\n }\n\n const { pageSize, pageIndex } = pagination\n let { rows, flatRows, rowsById } = rowModel\n const pageStart = pageSize * pageIndex\n const pageEnd = pageStart + pageSize\n\n rows = rows.slice(pageStart, pageEnd)\n\n let paginatedRowModel: RowModel<TGenerics>\n\n if (!instance.options.paginateExpandedRows) {\n paginatedRowModel = expandRows(\n {\n rows,\n flatRows,\n rowsById,\n },\n instance\n )\n } else {\n paginatedRowModel = {\n rows,\n flatRows,\n rowsById,\n }\n }\n\n paginatedRowModel.flatRows = []\n\n const handleRow = (row: Row<TGenerics>) => {\n paginatedRowModel.flatRows.push(row)\n if (row.subRows.length) {\n row.subRows.forEach(handleRow)\n }\n }\n\n paginatedRowModel.rows.forEach(handleRow)\n\n return paginatedRowModel\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getPaginationRowModel',\n debug: () => instance.options.debugAll ?? instance.options.debugTable,\n }\n )\n}\n"],"names":["getPaginationRowModel","opts","instance","memo","getState","pagination","getPrePaginationRowModel","rowModel","rows","length","pageSize","pageIndex","flatRows","rowsById","pageStart","pageEnd","slice","paginatedRowModel","options","paginateExpandedRows","expandRows","handleRow","row","push","subRows","forEach","key","process","env","NODE_ENV","debug","debugAll","debugTable"],"mappings":";;;;;;;;;;;;;;;;;AAIO,SAASA,qBAAT,CAAgEC,IAAhE,EAE+D;EACpE,OAAOC,QAAQ,IACbC,UAAI,CACF,MAAM,CACJD,QAAQ,CAACE,QAAT,EAAoBC,CAAAA,UADhB,EAEJH,QAAQ,CAACI,wBAAT,EAFI,CADJ,EAKF,CAACD,UAAD,EAAaE,QAAb,KAA0B;AACxB,IAAA,IAAI,CAACA,QAAQ,CAACC,IAAT,CAAcC,MAAnB,EAA2B;AACzB,MAAA,OAAOF,QAAP,CAAA;AACD,KAAA;;IAED,MAAM;MAAEG,QAAF;AAAYC,MAAAA,SAAAA;AAAZ,KAAA,GAA0BN,UAAhC,CAAA;IACA,IAAI;MAAEG,IAAF;MAAQI,QAAR;AAAkBC,MAAAA,QAAAA;AAAlB,KAAA,GAA+BN,QAAnC,CAAA;AACA,IAAA,MAAMO,SAAS,GAAGJ,QAAQ,GAAGC,SAA7B,CAAA;AACA,IAAA,MAAMI,OAAO,GAAGD,SAAS,GAAGJ,QAA5B,CAAA;IAEAF,IAAI,GAAGA,IAAI,CAACQ,KAAL,CAAWF,SAAX,EAAsBC,OAAtB,CAAP,CAAA;AAEA,IAAA,IAAIE,iBAAJ,CAAA;;AAEA,IAAA,IAAI,CAACf,QAAQ,CAACgB,OAAT,CAAiBC,oBAAtB,EAA4C;MAC1CF,iBAAiB,GAAGG,8BAAU,CAC5B;QACEZ,IADF;QAEEI,QAFF;AAGEC,QAAAA,QAAAA;OAJ0B,CAA9B,CAAA;AAQD,KATD,MASO;AACLI,MAAAA,iBAAiB,GAAG;QAClBT,IADkB;QAElBI,QAFkB;AAGlBC,QAAAA,QAAAA;OAHF,CAAA;AAKD,KAAA;;IAEDI,iBAAiB,CAACL,QAAlB,GAA6B,EAA7B,CAAA;;IAEA,MAAMS,SAAS,GAAIC,GAAD,IAAyB;AACzCL,MAAAA,iBAAiB,CAACL,QAAlB,CAA2BW,IAA3B,CAAgCD,GAAhC,CAAA,CAAA;;AACA,MAAA,IAAIA,GAAG,CAACE,OAAJ,CAAYf,MAAhB,EAAwB;AACtBa,QAAAA,GAAG,CAACE,OAAJ,CAAYC,OAAZ,CAAoBJ,SAApB,CAAA,CAAA;AACD,OAAA;KAJH,CAAA;;AAOAJ,IAAAA,iBAAiB,CAACT,IAAlB,CAAuBiB,OAAvB,CAA+BJ,SAA/B,CAAA,CAAA;AAEA,IAAA,OAAOJ,iBAAP,CAAA;AACD,GAhDC,EAiDF;IACES,GAAG,EAAEC,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAAzB,IAA0C,uBADjD;AAEEC,IAAAA,KAAK,EAAE,MAAA;AAAA,MAAA,IAAA,qBAAA,CAAA;;MAAA,OAAM5B,CAAAA,qBAAAA,GAAAA,QAAQ,CAACgB,OAAT,CAAiBa,QAAvB,oCAAmC7B,QAAQ,CAACgB,OAAT,CAAiBc,UAApD,CAAA;AAAA,KAAA;AAFT,GAjDE,CADN,CAAA;AAuDD;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"getSortedRowModel.js","sources":["../../../src/utils/getSortedRowModel.ts"],"sourcesContent":["import { TableInstance, Row, RowModel, TableGenerics } from '../types'\nimport { SortingFn } from '../features/Sorting'\nimport { memo } from '../utils'\n\nexport function getSortedRowModel<TGenerics extends TableGenerics>(): (\n instance: TableInstance<TGenerics>\n) => () => RowModel<TGenerics> {\n return instance =>\n memo(\n () => [instance.getState().sorting, instance.getPreSortedRowModel()],\n (sorting, rowModel) => {\n if (!rowModel.rows.length || !sorting?.length) {\n return rowModel\n }\n\n const sortingState = instance.getState().sorting\n\n const sortedFlatRows: Row<TGenerics>[] = []\n\n // Filter out sortings that correspond to non existing columns\n const availableSorting = sortingState.filter(sort =>\n instance.getColumn(sort.id).getCanSort()\n )\n\n const columnInfoById: Record<\n string,\n {\n sortUndefined?: false | -1 | 1\n invertSorting?: boolean\n sortingFn: SortingFn<TGenerics>\n }\n > = {}\n\n availableSorting.forEach(sortEntry => {\n const column = instance.getColumn(sortEntry.id)\n\n columnInfoById[sortEntry.id] = {\n sortUndefined: column.columnDef.sortUndefined,\n invertSorting: column.columnDef.invertSorting,\n sortingFn: column.getSortingFn(),\n }\n })\n\n const sortData = (rows: Row<TGenerics>[]) => {\n // This will also perform a stable sorting using the row index\n // if needed.\n const sortedData = rows.slice()\n\n sortedData.sort((rowA, rowB) => {\n for (let i = 0; i < availableSorting.length; i += 1) {\n const sortEntry = availableSorting[i]!\n const columnInfo = columnInfoById[sortEntry.id]!\n const isDesc = sortEntry?.desc ?? false\n\n if (columnInfo.sortUndefined) {\n const aValue = rowA.getValue(sortEntry.id)\n const bValue = rowB.getValue(sortEntry.id)\n\n const aUndefined = typeof aValue === 'undefined'\n const bUndefined = typeof bValue === 'undefined'\n\n if (aUndefined || bUndefined) {\n return aUndefined && bUndefined\n ? 0\n : aUndefined\n ? columnInfo.sortUndefined\n : -columnInfo.sortUndefined\n }\n }\n\n // This function should always return in ascending order\n let sortInt = columnInfo.sortingFn(rowA, rowB, sortEntry.id)\n\n if (sortInt !== 0) {\n if (isDesc) {\n sortInt *= -1\n }\n\n if (columnInfo.invertSorting) {\n sortInt *= -1\n }\n\n return sortInt\n }\n }\n\n return rowA.index - rowB.index\n })\n\n // If there are sub-rows, sort them\n sortedData.forEach(row => {\n sortedFlatRows.push(row)\n if (!row.subRows || row.subRows.length <= 1) {\n return\n }\n row.subRows = sortData(row.subRows)\n })\n\n return sortedData\n }\n\n return {\n rows: sortData(rowModel.rows),\n flatRows: sortedFlatRows,\n rowsById: rowModel.rowsById,\n }\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getSortedRowModel',\n debug: () => instance.options.debugAll ?? instance.options.debugTable,\n onChange: () => {\n instance._autoResetPageIndex()\n },\n }\n )\n}\n"],"names":["getSortedRowModel","instance","memo","getState","sorting","getPreSortedRowModel","rowModel","rows","length","sortingState","sortedFlatRows","availableSorting","filter","sort","getColumn","id","getCanSort","columnInfoById","forEach","sortEntry","column","sortUndefined","columnDef","invertSorting","sortingFn","getSortingFn","sortData","sortedData","slice","rowA","rowB","i","columnInfo","isDesc","desc","aValue","getValue","bValue","aUndefined","bUndefined","sortInt","index","row","push","subRows","flatRows","rowsById","key","process","env","NODE_ENV","debug","options","debugAll","debugTable","onChange","_autoResetPageIndex"],"mappings":"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"}
1
+ {"version":3,"file":"getSortedRowModel.js","sources":["../../../src/utils/getSortedRowModel.ts"],"sourcesContent":["import { TableInstance, Row, RowModel, TableGenerics } from '../types'\nimport { SortingFn } from '../features/Sorting'\nimport { memo } from '../utils'\n\nexport function getSortedRowModel<TGenerics extends TableGenerics>(): (\n instance: TableInstance<TGenerics>\n) => () => RowModel<TGenerics> {\n return instance =>\n memo(\n () => [instance.getState().sorting, instance.getPreSortedRowModel()],\n (sorting, rowModel) => {\n if (!rowModel.rows.length || !sorting?.length) {\n return rowModel\n }\n\n const sortingState = instance.getState().sorting\n\n const sortedFlatRows: Row<TGenerics>[] = []\n\n // Filter out sortings that correspond to non existing columns\n const availableSorting = sortingState.filter(sort =>\n instance.getColumn(sort.id).getCanSort()\n )\n\n const columnInfoById: Record<\n string,\n {\n sortUndefined?: false | -1 | 1\n invertSorting?: boolean\n sortingFn: SortingFn<TGenerics>\n }\n > = {}\n\n availableSorting.forEach(sortEntry => {\n const column = instance.getColumn(sortEntry.id)\n\n columnInfoById[sortEntry.id] = {\n sortUndefined: column.columnDef.sortUndefined,\n invertSorting: column.columnDef.invertSorting,\n sortingFn: column.getSortingFn(),\n }\n })\n\n const sortData = (rows: Row<TGenerics>[]) => {\n // This will also perform a stable sorting using the row index\n // if needed.\n const sortedData = rows.slice()\n\n sortedData.sort((rowA, rowB) => {\n for (let i = 0; i < availableSorting.length; i += 1) {\n const sortEntry = availableSorting[i]!\n const columnInfo = columnInfoById[sortEntry.id]!\n const isDesc = sortEntry?.desc ?? false\n\n if (columnInfo.sortUndefined) {\n const aValue = rowA.getValue(sortEntry.id)\n const bValue = rowB.getValue(sortEntry.id)\n\n const aUndefined = typeof aValue === 'undefined'\n const bUndefined = typeof bValue === 'undefined'\n\n if (aUndefined || bUndefined) {\n return aUndefined && bUndefined\n ? 0\n : aUndefined\n ? columnInfo.sortUndefined\n : -columnInfo.sortUndefined\n }\n }\n\n // This function should always return in ascending order\n let sortInt = columnInfo.sortingFn(rowA, rowB, sortEntry.id)\n\n if (sortInt !== 0) {\n if (isDesc) {\n sortInt *= -1\n }\n\n if (columnInfo.invertSorting) {\n sortInt *= -1\n }\n\n return sortInt\n }\n }\n\n return rowA.index - rowB.index\n })\n\n // If there are sub-rows, sort them\n sortedData.forEach(row => {\n sortedFlatRows.push(row)\n if (!row.subRows || row.subRows.length <= 1) {\n return\n }\n row.subRows = sortData(row.subRows)\n })\n\n return sortedData\n }\n\n return {\n rows: sortData(rowModel.rows),\n flatRows: sortedFlatRows,\n rowsById: rowModel.rowsById,\n }\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getSortedRowModel',\n debug: () => instance.options.debugAll ?? instance.options.debugTable,\n onChange: () => {\n instance._autoResetPageIndex()\n },\n }\n )\n}\n"],"names":["getSortedRowModel","instance","memo","getState","sorting","getPreSortedRowModel","rowModel","rows","length","sortingState","sortedFlatRows","availableSorting","filter","sort","getColumn","id","getCanSort","columnInfoById","forEach","sortEntry","column","sortUndefined","columnDef","invertSorting","sortingFn","getSortingFn","sortData","sortedData","slice","rowA","rowB","i","columnInfo","isDesc","desc","aValue","getValue","bValue","aUndefined","bUndefined","sortInt","index","row","push","subRows","flatRows","rowsById","key","process","env","NODE_ENV","debug","options","debugAll","debugTable","onChange","_autoResetPageIndex"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../src/utils.ts"],"sourcesContent":["import { NoInfer, TableState, Updater } from './types'\n\nexport type PartialKeys<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>\nexport type RequiredKeys<T, K extends keyof T> = Omit<T, K> &\n Required<Pick<T, K>>\nexport type Overwrite<T, U extends { [TKey in keyof T]?: any }> = Omit<\n T,\n keyof U\n> &\n U\n\nexport type IfDefined<T, N> = 0 extends 1 & T ? N : T extends {} ? T : N\n\nexport function functionalUpdate<T>(updater: Updater<T>, input: T): T {\n return typeof updater === 'function'\n ? (updater as (input: T) => T)(input)\n : updater\n}\n\nexport function noop() {\n //\n}\n\nexport function makeStateUpdater(key: keyof TableState, instance: unknown) {\n return (updater: Updater<any>) => {\n ;(instance as any).setState(<TTableState>(old: TTableState) => {\n return {\n ...old,\n [key]: functionalUpdate(updater, (old as any)[key]),\n }\n })\n }\n}\n\ntype AnyFunction = (...args: any) => any\n\nexport function isFunction<T extends AnyFunction>(d: any): d is T {\n return d instanceof Function\n}\n\nexport function flattenBy<TNode>(\n arr: TNode[],\n getChildren: (item: TNode) => TNode[]\n) {\n const flat: TNode[] = []\n\n const recurse = (subArr: TNode[]) => {\n subArr.forEach(item => {\n flat.push(item)\n const children = getChildren(item)\n if (children?.length) {\n recurse(children)\n }\n })\n }\n\n recurse(arr)\n\n return flat\n}\n\nexport function memo<TDeps extends readonly any[], TResult>(\n getDeps: () => [...TDeps],\n fn: (...args: NoInfer<[...TDeps]>) => TResult,\n opts: {\n key: any\n debug?: () => any\n onChange?: (result: TResult) => void\n }\n): () => TResult {\n let deps: any[] = []\n let result: TResult | undefined\n\n return () => {\n let depTime: number\n if (opts.key && opts.debug) depTime = Date.now()\n\n const newDeps = getDeps()\n\n const depsChanged =\n newDeps.length !== deps.length ||\n newDeps.some((dep: any, index: number) => deps[index] !== dep)\n\n if (!depsChanged) {\n return result!\n }\n\n deps = newDeps\n\n let resultTime: number\n if (opts.key && opts.debug) resultTime = Date.now()\n\n result = fn(...newDeps)\n opts?.onChange?.(result)\n\n if (opts.key && opts.debug) {\n if (opts?.debug()) {\n const depEndTime = Math.round((Date.now() - depTime!) * 100) / 100\n const resultEndTime = Math.round((Date.now() - resultTime!) * 100) / 100\n const resultFpsPercentage = resultEndTime / 16\n\n const pad = (str: number | string, num: number) => {\n str = String(str)\n while (str.length < num) {\n str = ' ' + str\n }\n return str\n }\n\n console.info(\n `%c⏱ ${pad(resultEndTime, 5)} /${pad(depEndTime, 5)} ms`,\n `\n font-size: .6rem;\n font-weight: bold;\n color: hsl(${Math.max(\n 0,\n Math.min(120 - 120 * resultFpsPercentage, 120)\n )}deg 100% 31%);`,\n opts?.key\n )\n }\n }\n\n return result!\n }\n}\n"],"names":["functionalUpdate","updater","input","noop","makeStateUpdater","key","instance","setState","old","isFunction","d","Function","flattenBy","arr","getChildren","flat","recurse","subArr","forEach","item","push","children","length","memo","getDeps","fn","opts","deps","result","depTime","debug","Date","now","newDeps","depsChanged","some","dep","index","resultTime","onChange","depEndTime","Math","round","resultEndTime","resultFpsPercentage","pad","str","num","String","console","info","max","min"],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sources":["../../src/utils.ts"],"sourcesContent":["import { NoInfer, TableState, Updater } from './types'\n\nexport type PartialKeys<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>\nexport type RequiredKeys<T, K extends keyof T> = Omit<T, K> &\n Required<Pick<T, K>>\nexport type Overwrite<T, U extends { [TKey in keyof T]?: any }> = Omit<\n T,\n keyof U\n> &\n U\n\nexport type IfDefined<T, N> = 0 extends 1 & T ? N : T extends {} ? T : N\n\nexport function functionalUpdate<T>(updater: Updater<T>, input: T): T {\n return typeof updater === 'function'\n ? (updater as (input: T) => T)(input)\n : updater\n}\n\nexport function noop() {\n //\n}\n\nexport function makeStateUpdater(key: keyof TableState, instance: unknown) {\n return (updater: Updater<any>) => {\n ;(instance as any).setState(<TTableState>(old: TTableState) => {\n return {\n ...old,\n [key]: functionalUpdate(updater, (old as any)[key]),\n }\n })\n }\n}\n\ntype AnyFunction = (...args: any) => any\n\nexport function isFunction<T extends AnyFunction>(d: any): d is T {\n return d instanceof Function\n}\n\nexport function flattenBy<TNode>(\n arr: TNode[],\n getChildren: (item: TNode) => TNode[]\n) {\n const flat: TNode[] = []\n\n const recurse = (subArr: TNode[]) => {\n subArr.forEach(item => {\n flat.push(item)\n const children = getChildren(item)\n if (children?.length) {\n recurse(children)\n }\n })\n }\n\n recurse(arr)\n\n return flat\n}\n\nexport function memo<TDeps extends readonly any[], TResult>(\n getDeps: () => [...TDeps],\n fn: (...args: NoInfer<[...TDeps]>) => TResult,\n opts: {\n key: any\n debug?: () => any\n onChange?: (result: TResult) => void\n }\n): () => TResult {\n let deps: any[] = []\n let result: TResult | undefined\n\n return () => {\n let depTime: number\n if (opts.key && opts.debug) depTime = Date.now()\n\n const newDeps = getDeps()\n\n const depsChanged =\n newDeps.length !== deps.length ||\n newDeps.some((dep: any, index: number) => deps[index] !== dep)\n\n if (!depsChanged) {\n return result!\n }\n\n deps = newDeps\n\n let resultTime: number\n if (opts.key && opts.debug) resultTime = Date.now()\n\n result = fn(...newDeps)\n opts?.onChange?.(result)\n\n if (opts.key && opts.debug) {\n if (opts?.debug()) {\n const depEndTime = Math.round((Date.now() - depTime!) * 100) / 100\n const resultEndTime = Math.round((Date.now() - resultTime!) * 100) / 100\n const resultFpsPercentage = resultEndTime / 16\n\n const pad = (str: number | string, num: number) => {\n str = String(str)\n while (str.length < num) {\n str = ' ' + str\n }\n return str\n }\n\n console.info(\n `%c⏱ ${pad(resultEndTime, 5)} /${pad(depEndTime, 5)} ms`,\n `\n font-size: .6rem;\n font-weight: bold;\n color: hsl(${Math.max(\n 0,\n Math.min(120 - 120 * resultFpsPercentage, 120)\n )}deg 100% 31%);`,\n opts?.key\n )\n }\n }\n\n return result!\n }\n}\n"],"names":["functionalUpdate","updater","input","noop","makeStateUpdater","key","instance","setState","old","isFunction","d","Function","flattenBy","arr","getChildren","flat","recurse","subArr","forEach","item","push","children","length","memo","getDeps","fn","opts","deps","result","depTime","debug","Date","now","newDeps","depsChanged","some","dep","index","resultTime","onChange","depEndTime","Math","round","resultEndTime","resultFpsPercentage","pad","str","num","String","console","info","max","min"],"mappings":"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"}
@@ -969,38 +969,54 @@ const Expanding = {
969
969
  };
970
970
 
971
971
  const includesString = (row, columnId, filterValue) => {
972
+ var _row$getValue;
973
+
972
974
  const search = filterValue.toLowerCase();
973
- return row.getValue(columnId).toLowerCase().includes(search);
975
+ return (_row$getValue = row.getValue(columnId)) == null ? void 0 : _row$getValue.toLowerCase().includes(search);
974
976
  };
975
977
 
976
978
  includesString.autoRemove = val => testFalsey(val);
977
979
 
978
980
  const includesStringSensitive = (row, columnId, filterValue) => {
979
- return row.getValue(columnId).includes(filterValue);
981
+ var _row$getValue2;
982
+
983
+ return (_row$getValue2 = row.getValue(columnId)) == null ? void 0 : _row$getValue2.includes(filterValue);
980
984
  };
981
985
 
982
986
  includesStringSensitive.autoRemove = val => testFalsey(val);
983
987
 
984
988
  const equalsString = (row, columnId, filterValue) => {
985
- return row.getValue(columnId).toLowerCase() === filterValue.toLowerCase();
989
+ var _row$getValue3;
990
+
991
+ return ((_row$getValue3 = row.getValue(columnId)) == null ? void 0 : _row$getValue3.toLowerCase()) === filterValue.toLowerCase();
986
992
  };
987
993
 
988
994
  equalsString.autoRemove = val => testFalsey(val);
989
995
 
990
996
  const arrIncludes = (row, columnId, filterValue) => {
991
- return row.getValue(columnId).includes(filterValue);
997
+ var _row$getValue4;
998
+
999
+ return (_row$getValue4 = row.getValue(columnId)) == null ? void 0 : _row$getValue4.includes(filterValue);
992
1000
  };
993
1001
 
994
1002
  arrIncludes.autoRemove = val => testFalsey(val) || !(val != null && val.length);
995
1003
 
996
1004
  const arrIncludesAll = (row, columnId, filterValue) => {
997
- return !filterValue.some(val => !row.getValue(columnId).includes(val));
1005
+ return !filterValue.some(val => {
1006
+ var _row$getValue5;
1007
+
1008
+ return !((_row$getValue5 = row.getValue(columnId)) != null && _row$getValue5.includes(val));
1009
+ });
998
1010
  };
999
1011
 
1000
1012
  arrIncludesAll.autoRemove = val => testFalsey(val) || !(val != null && val.length);
1001
1013
 
1002
1014
  const arrIncludesSome = (row, columnId, filterValue) => {
1003
- return filterValue.some(val => row.getValue(columnId).includes(val));
1015
+ return filterValue.some(val => {
1016
+ var _row$getValue6;
1017
+
1018
+ return (_row$getValue6 = row.getValue(columnId)) == null ? void 0 : _row$getValue6.includes(val);
1019
+ });
1004
1020
  };
1005
1021
 
1006
1022
  arrIncludesSome.autoRemove = val => testFalsey(val) || !(val != null && val.length);
@@ -1305,7 +1321,10 @@ function shouldAutoRemoveFilter(filterFn, value, column) {
1305
1321
  const sum = (columnId, _leafRows, childRows) => {
1306
1322
  // It's faster to just add the aggregations together instead of
1307
1323
  // process leaf nodes individually
1308
- return childRows.reduce((sum, next) => sum + (typeof next === 'number' ? next : 0), 0);
1324
+ return childRows.reduce((sum, next) => {
1325
+ const nextValue = next.getValue(columnId);
1326
+ return sum + (typeof nextValue === 'number' ? nextValue : 0);
1327
+ }, 0);
1309
1328
  };
1310
1329
 
1311
1330
  const min = (columnId, _leafRows, childRows) => {
@@ -1685,7 +1704,7 @@ const Pagination = {
1685
1704
  setPageIndex: updater => {
1686
1705
  instance.setPagination(old => {
1687
1706
  let pageIndex = functionalUpdate(updater, old.pageIndex);
1688
- const maxPageIndex = typeof instance.options.pageCount !== 'undefined' ? instance.options.pageCount - 1 : Number.MAX_SAFE_INTEGER;
1707
+ const maxPageIndex = typeof instance.options.pageCount === 'undefined' || instance.options.pageCount === -1 ? Number.MAX_SAFE_INTEGER : instance.options.pageCount - 1;
1689
1708
  pageIndex = Math.min(Math.max(0, pageIndex), maxPageIndex);
1690
1709
  return { ...old,
1691
1710
  pageIndex
@@ -2278,9 +2297,6 @@ function selectRowsFn(instance, rowModel) {
2278
2297
  const newSelectedRowsById = {}; // Filters top level and nested rows
2279
2298
 
2280
2299
  const recurseRows = function (rows, depth) {
2281
- if (depth === void 0) {
2282
- depth = 0;
2283
- }
2284
2300
 
2285
2301
  return rows.map(row => {
2286
2302
  var _row$subRows2;
@@ -2294,7 +2310,7 @@ function selectRowsFn(instance, rowModel) {
2294
2310
 
2295
2311
  if ((_row$subRows2 = row.subRows) != null && _row$subRows2.length) {
2296
2312
  row = { ...row,
2297
- subRows: recurseRows(row.subRows, depth + 1)
2313
+ subRows: recurseRows(row.subRows)
2298
2314
  };
2299
2315
  }
2300
2316
 
@@ -3217,25 +3233,20 @@ function filterRows(rows, filterRowImpl, instance) {
3217
3233
  function filterRowModelFromLeafs(rowsToFilter, filterRow, instance) {
3218
3234
  const newFilteredFlatRows = [];
3219
3235
  const newFilteredRowsById = {};
3220
- let row;
3221
- let newRow;
3222
3236
 
3223
3237
  const recurseFilterRows = function (rowsToFilter, depth) {
3224
- if (depth === void 0) {
3225
- depth = 0;
3226
- }
3227
3238
 
3228
3239
  const rows = []; // Filter from children up first
3229
3240
 
3230
3241
  for (let i = 0; i < rowsToFilter.length; i++) {
3231
3242
  var _row$subRows;
3232
3243
 
3233
- row = rowsToFilter[i];
3244
+ let row = rowsToFilter[i];
3234
3245
 
3235
3246
  if ((_row$subRows = row.subRows) != null && _row$subRows.length) {
3236
- newRow = createRow(instance, row.id, row.original, row.index, row.depth);
3247
+ const newRow = createRow(instance, row.id, row.original, row.index, row.depth);
3237
3248
  newRow.columnFilters = row.columnFilters;
3238
- newRow.subRows = recurseFilterRows(row.subRows, depth + 1);
3249
+ newRow.subRows = recurseFilterRows(row.subRows);
3239
3250
 
3240
3251
  if (!newRow.subRows.length) {
3241
3252
  continue;
@@ -3262,29 +3273,23 @@ function filterRowModelFromLeafs(rowsToFilter, filterRow, instance) {
3262
3273
  }
3263
3274
  function filterRowModelFromRoot(rowsToFilter, filterRow, instance) {
3264
3275
  const newFilteredFlatRows = [];
3265
- const newFilteredRowsById = {};
3266
- let rows;
3267
- let row;
3268
- let newRow; // Filters top level and nested rows
3276
+ const newFilteredRowsById = {}; // Filters top level and nested rows
3269
3277
 
3270
3278
  const recurseFilterRows = function (rowsToFilter, depth) {
3271
- if (depth === void 0) {
3272
- depth = 0;
3273
- }
3274
3279
 
3275
3280
  // Filter from parents downward first
3276
- rows = []; // Apply the filter to any subRows
3281
+ const rows = []; // Apply the filter to any subRows
3277
3282
 
3278
3283
  for (let i = 0; i < rowsToFilter.length; i++) {
3279
- row = rowsToFilter[i];
3284
+ let row = rowsToFilter[i];
3280
3285
  const pass = filterRow(row);
3281
3286
 
3282
3287
  if (pass) {
3283
3288
  var _row$subRows2;
3284
3289
 
3285
3290
  if ((_row$subRows2 = row.subRows) != null && _row$subRows2.length) {
3286
- newRow = createRow(instance, row.id, row.original, row.index, row.depth);
3287
- newRow.subRows = recurseFilterRows(row.subRows, depth + 1);
3291
+ const newRow = createRow(instance, row.id, row.original, row.index, row.depth);
3292
+ newRow.subRows = recurseFilterRows(row.subRows);
3288
3293
  row = newRow;
3289
3294
  }
3290
3295