@tanstack/table-core 8.11.8 → 8.13.0

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 (86) hide show
  1. package/build/lib/core/cell.js +1 -4
  2. package/build/lib/core/cell.js.map +1 -1
  3. package/build/lib/core/column.js +2 -14
  4. package/build/lib/core/column.js.map +1 -1
  5. package/build/lib/core/headers.js +17 -112
  6. package/build/lib/core/headers.js.map +1 -1
  7. package/build/lib/core/row.js +2 -14
  8. package/build/lib/core/row.js.map +1 -1
  9. package/build/lib/core/table.d.ts +6 -0
  10. package/build/lib/core/table.js +5 -35
  11. package/build/lib/core/table.js.map +1 -1
  12. package/build/lib/features/ColumnSizing.d.ts +6 -2
  13. package/build/lib/features/ColumnSizing.js +3 -9
  14. package/build/lib/features/ColumnSizing.js.map +1 -1
  15. package/build/lib/features/Ordering.d.ts +21 -0
  16. package/build/lib/features/Ordering.js +15 -4
  17. package/build/lib/features/Ordering.js.map +1 -1
  18. package/build/lib/features/Pagination.d.ts +26 -4
  19. package/build/lib/features/Pagination.js +13 -8
  20. package/build/lib/features/Pagination.js.map +1 -1
  21. package/build/lib/features/Pinning.js +10 -58
  22. package/build/lib/features/Pinning.js.map +1 -1
  23. package/build/lib/features/RowSelection.js +3 -21
  24. package/build/lib/features/RowSelection.js.map +1 -1
  25. package/build/lib/features/Visibility.d.ts +8 -1
  26. package/build/lib/features/Visibility.js +7 -21
  27. package/build/lib/features/Visibility.js.map +1 -1
  28. package/build/lib/index.esm.js +102 -384
  29. package/build/lib/index.esm.js.map +1 -1
  30. package/build/lib/index.js +2 -0
  31. package/build/lib/index.js.map +1 -1
  32. package/build/lib/index.mjs +102 -384
  33. package/build/lib/index.mjs.map +1 -1
  34. package/build/lib/types.d.ts +2 -2
  35. package/build/lib/utils/filterRowsUtils.d.ts +0 -2
  36. package/build/lib/utils/filterRowsUtils.js +0 -2
  37. package/build/lib/utils/filterRowsUtils.js.map +1 -1
  38. package/build/lib/utils/getCoreRowModel.js +1 -10
  39. package/build/lib/utils/getCoreRowModel.js.map +1 -1
  40. package/build/lib/utils/getExpandedRowModel.js +1 -7
  41. package/build/lib/utils/getExpandedRowModel.js.map +1 -1
  42. package/build/lib/utils/getFacetedMinMaxValues.js +1 -8
  43. package/build/lib/utils/getFacetedMinMaxValues.js.map +1 -1
  44. package/build/lib/utils/getFacetedRowModel.js +1 -8
  45. package/build/lib/utils/getFacetedRowModel.js.map +1 -1
  46. package/build/lib/utils/getFacetedUniqueValues.js +1 -8
  47. package/build/lib/utils/getFacetedUniqueValues.js.map +1 -1
  48. package/build/lib/utils/getFilteredRowModel.js +1 -10
  49. package/build/lib/utils/getFilteredRowModel.js.map +1 -1
  50. package/build/lib/utils/getGroupedRowModel.js +6 -13
  51. package/build/lib/utils/getGroupedRowModel.js.map +1 -1
  52. package/build/lib/utils/getPaginationRowModel.js +1 -7
  53. package/build/lib/utils/getPaginationRowModel.js.map +1 -1
  54. package/build/lib/utils/getSortedRowModel.js +1 -10
  55. package/build/lib/utils/getSortedRowModel.js.map +1 -1
  56. package/build/lib/utils.d.ts +8 -3
  57. package/build/lib/utils.js +13 -2
  58. package/build/lib/utils.js.map +1 -1
  59. package/build/umd/index.development.js +103 -383
  60. package/build/umd/index.development.js.map +1 -1
  61. package/build/umd/index.production.js +1 -1
  62. package/build/umd/index.production.js.map +1 -1
  63. package/package.json +1 -1
  64. package/src/core/cell.ts +2 -5
  65. package/src/core/column.ts +3 -9
  66. package/src/core/headers.ts +19 -65
  67. package/src/core/row.ts +3 -10
  68. package/src/core/table.ts +12 -21
  69. package/src/features/ColumnSizing.ts +33 -20
  70. package/src/features/Ordering.ts +74 -35
  71. package/src/features/Pagination.ts +49 -13
  72. package/src/features/Pinning.ts +35 -61
  73. package/src/features/RowSelection.ts +4 -16
  74. package/src/features/Visibility.ts +23 -13
  75. package/src/types.ts +3 -1
  76. package/src/utils/filterRowsUtils.ts +2 -2
  77. package/src/utils/getCoreRowModel.ts +4 -8
  78. package/src/utils/getExpandedRowModel.ts +2 -5
  79. package/src/utils/getFacetedMinMaxValues.ts +2 -8
  80. package/src/utils/getFacetedRowModel.ts +2 -8
  81. package/src/utils/getFacetedUniqueValues.ts +6 -8
  82. package/src/utils/getFilteredRowModel.ts +4 -8
  83. package/src/utils/getGroupedRowModel.ts +7 -11
  84. package/src/utils/getPaginationRowModel.ts +2 -5
  85. package/src/utils/getSortedRowModel.ts +4 -8
  86. package/src/utils.ts +25 -6
@@ -1,6 +1,6 @@
1
1
  import { CoreOptions, CoreTableState, CoreInstance } from './core/table';
2
2
  import { VisibilityInstance, VisibilityTableState, VisibilityColumn as ColumnVisibilityColumn, VisibilityOptions, VisibilityColumnDef, VisibilityRow } from './features/Visibility';
3
- import { ColumnOrderInstance, ColumnOrderOptions, ColumnOrderTableState } from './features/Ordering';
3
+ import { ColumnOrderColumn, ColumnOrderInstance, ColumnOrderOptions, ColumnOrderTableState } from './features/Ordering';
4
4
  import { ColumnPinningColumn, ColumnPinningColumnDef, ColumnPinningInstance, ColumnPinningOptions, ColumnPinningRow, ColumnPinningTableState, RowPinningInstance, RowPinningOptions, RowPinningRow, RowPinningTableState } from './features/Pinning';
5
5
  import { CoreHeader, CoreHeaderGroup, HeaderContext, HeadersInstance } from './core/headers';
6
6
  import { FiltersColumn, FiltersColumnDef, FiltersInstance, FiltersOptions, FiltersRow, FiltersTableState } from './features/Filters';
@@ -93,7 +93,7 @@ export type ColumnDef<TData extends RowData, TValue = unknown> = DisplayColumnDe
93
93
  export type ColumnDefResolved<TData extends RowData, TValue = unknown> = Partial<UnionToIntersection<ColumnDef<TData, TValue>>> & {
94
94
  accessorKey?: string;
95
95
  };
96
- export interface Column<TData extends RowData, TValue = unknown> extends CoreColumn<TData, TValue>, ColumnVisibilityColumn, ColumnPinningColumn, FiltersColumn<TData>, SortingColumn<TData>, GroupingColumn<TData>, ColumnSizingColumn {
96
+ export interface Column<TData extends RowData, TValue = unknown> extends CoreColumn<TData, TValue>, ColumnVisibilityColumn, ColumnPinningColumn, FiltersColumn<TData>, SortingColumn<TData>, GroupingColumn<TData>, ColumnSizingColumn, ColumnOrderColumn {
97
97
  }
98
98
  export interface Cell<TData extends RowData, TValue> extends CoreCell<TData, TValue>, GroupingCell {
99
99
  }
@@ -1,4 +1,2 @@
1
1
  import { Row, RowModel, Table, RowData } from '../types';
2
2
  export declare function filterRows<TData extends RowData>(rows: Row<TData>[], filterRowImpl: (row: Row<TData>) => any, table: Table<TData>): RowModel<TData>;
3
- export declare function filterRowModelFromLeafs<TData extends RowData>(rowsToFilter: Row<TData>[], filterRow: (row: Row<TData>) => Row<TData>[], table: Table<TData>): RowModel<TData>;
4
- export declare function filterRowModelFromRoot<TData extends RowData>(rowsToFilter: Row<TData>[], filterRow: (row: Row<TData>) => any, table: Table<TData>): RowModel<TData>;
@@ -107,7 +107,5 @@ function filterRowModelFromRoot(rowsToFilter, filterRow, table) {
107
107
  };
108
108
  }
109
109
 
110
- exports.filterRowModelFromLeafs = filterRowModelFromLeafs;
111
- exports.filterRowModelFromRoot = filterRowModelFromRoot;
112
110
  exports.filterRows = filterRows;
113
111
  //# sourceMappingURL=filterRowsUtils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"filterRowsUtils.js","sources":["../../../src/utils/filterRowsUtils.ts"],"sourcesContent":["import { createRow } from '../core/row'\nimport { Row, RowModel, Table, RowData } from '../types'\n\nexport function filterRows<TData extends RowData>(\n rows: Row<TData>[],\n filterRowImpl: (row: Row<TData>) => any,\n table: Table<TData>\n) {\n if (table.options.filterFromLeafRows) {\n return filterRowModelFromLeafs(rows, filterRowImpl, table)\n }\n\n return filterRowModelFromRoot(rows, filterRowImpl, table)\n}\n\nexport function filterRowModelFromLeafs<TData extends RowData>(\n rowsToFilter: Row<TData>[],\n filterRow: (row: Row<TData>) => Row<TData>[],\n table: Table<TData>\n): RowModel<TData> {\n const newFilteredFlatRows: Row<TData>[] = []\n const newFilteredRowsById: Record<string, Row<TData>> = {}\n const maxDepth = table.options.maxLeafRowFilterDepth ?? 100\n\n const recurseFilterRows = (rowsToFilter: Row<TData>[], depth = 0) => {\n const rows: Row<TData>[] = []\n\n // Filter from children up first\n for (let i = 0; i < rowsToFilter.length; i++) {\n let row = rowsToFilter[i]!\n\n const newRow = createRow(\n table,\n row.id,\n row.original,\n row.index,\n row.depth,\n undefined,\n row.parentId\n )\n newRow.columnFilters = row.columnFilters\n\n if (row.subRows?.length && depth < maxDepth) {\n newRow.subRows = recurseFilterRows(row.subRows, depth + 1)\n row = newRow\n\n if (filterRow(row) && !newRow.subRows.length) {\n rows.push(row)\n newFilteredRowsById[row.id] = row\n newFilteredFlatRows.push(row)\n continue\n }\n\n if (filterRow(row) || newRow.subRows.length) {\n rows.push(row)\n newFilteredRowsById[row.id] = row\n newFilteredFlatRows.push(row)\n continue\n }\n } else {\n row = newRow\n if (filterRow(row)) {\n rows.push(row)\n newFilteredRowsById[row.id] = row\n newFilteredFlatRows.push(row)\n }\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<TData extends RowData>(\n rowsToFilter: Row<TData>[],\n filterRow: (row: Row<TData>) => any,\n table: Table<TData>\n): RowModel<TData> {\n const newFilteredFlatRows: Row<TData>[] = []\n const newFilteredRowsById: Record<string, Row<TData>> = {}\n const maxDepth = table.options.maxLeafRowFilterDepth ?? 100\n\n // Filters top level and nested rows\n const recurseFilterRows = (rowsToFilter: Row<TData>[], depth = 0) => {\n // Filter from parents downward first\n\n const rows: Row<TData>[] = []\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 && depth < maxDepth) {\n const newRow = createRow(\n table,\n row.id,\n row.original,\n row.index,\n row.depth,\n undefined,\n row.parentId\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","table","options","filterFromLeafRows","filterRowModelFromLeafs","filterRowModelFromRoot","rowsToFilter","filterRow","_table$options$maxLea","newFilteredFlatRows","newFilteredRowsById","maxDepth","maxLeafRowFilterDepth","recurseFilterRows","depth","i","length","_row$subRows","row","newRow","createRow","id","original","index","undefined","parentId","columnFilters","subRows","push","flatRows","rowsById","_table$options$maxLea2","pass","_row$subRows2"],"mappings":"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"}
1
+ {"version":3,"file":"filterRowsUtils.js","sources":["../../../src/utils/filterRowsUtils.ts"],"sourcesContent":["import { createRow } from '../core/row'\nimport { Row, RowModel, Table, RowData } from '../types'\n\nexport function filterRows<TData extends RowData>(\n rows: Row<TData>[],\n filterRowImpl: (row: Row<TData>) => any,\n table: Table<TData>\n) {\n if (table.options.filterFromLeafRows) {\n return filterRowModelFromLeafs(rows, filterRowImpl, table)\n }\n\n return filterRowModelFromRoot(rows, filterRowImpl, table)\n}\n\nfunction filterRowModelFromLeafs<TData extends RowData>(\n rowsToFilter: Row<TData>[],\n filterRow: (row: Row<TData>) => Row<TData>[],\n table: Table<TData>\n): RowModel<TData> {\n const newFilteredFlatRows: Row<TData>[] = []\n const newFilteredRowsById: Record<string, Row<TData>> = {}\n const maxDepth = table.options.maxLeafRowFilterDepth ?? 100\n\n const recurseFilterRows = (rowsToFilter: Row<TData>[], depth = 0) => {\n const rows: Row<TData>[] = []\n\n // Filter from children up first\n for (let i = 0; i < rowsToFilter.length; i++) {\n let row = rowsToFilter[i]!\n\n const newRow = createRow(\n table,\n row.id,\n row.original,\n row.index,\n row.depth,\n undefined,\n row.parentId\n )\n newRow.columnFilters = row.columnFilters\n\n if (row.subRows?.length && depth < maxDepth) {\n newRow.subRows = recurseFilterRows(row.subRows, depth + 1)\n row = newRow\n\n if (filterRow(row) && !newRow.subRows.length) {\n rows.push(row)\n newFilteredRowsById[row.id] = row\n newFilteredFlatRows.push(row)\n continue\n }\n\n if (filterRow(row) || newRow.subRows.length) {\n rows.push(row)\n newFilteredRowsById[row.id] = row\n newFilteredFlatRows.push(row)\n continue\n }\n } else {\n row = newRow\n if (filterRow(row)) {\n rows.push(row)\n newFilteredRowsById[row.id] = row\n newFilteredFlatRows.push(row)\n }\n }\n }\n\n return rows\n }\n\n return {\n rows: recurseFilterRows(rowsToFilter),\n flatRows: newFilteredFlatRows,\n rowsById: newFilteredRowsById,\n }\n}\n\nfunction filterRowModelFromRoot<TData extends RowData>(\n rowsToFilter: Row<TData>[],\n filterRow: (row: Row<TData>) => any,\n table: Table<TData>\n): RowModel<TData> {\n const newFilteredFlatRows: Row<TData>[] = []\n const newFilteredRowsById: Record<string, Row<TData>> = {}\n const maxDepth = table.options.maxLeafRowFilterDepth ?? 100\n\n // Filters top level and nested rows\n const recurseFilterRows = (rowsToFilter: Row<TData>[], depth = 0) => {\n // Filter from parents downward first\n\n const rows: Row<TData>[] = []\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 && depth < maxDepth) {\n const newRow = createRow(\n table,\n row.id,\n row.original,\n row.index,\n row.depth,\n undefined,\n row.parentId\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","table","options","filterFromLeafRows","filterRowModelFromLeafs","filterRowModelFromRoot","rowsToFilter","filterRow","_table$options$maxLea","newFilteredFlatRows","newFilteredRowsById","maxDepth","maxLeafRowFilterDepth","recurseFilterRows","depth","i","length","_row$subRows","row","newRow","createRow","id","original","index","undefined","parentId","columnFilters","subRows","push","flatRows","rowsById","_table$options$maxLea2","pass","_row$subRows2"],"mappings":"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"}
@@ -58,16 +58,7 @@ function getCoreRowModel() {
58
58
  };
59
59
  rowModel.rows = accessRows(data);
60
60
  return rowModel;
61
- }, {
62
- key: process.env.NODE_ENV === 'development' && 'getRowModel',
63
- debug: () => {
64
- var _table$options$debugA;
65
- return (_table$options$debugA = table.options.debugAll) != null ? _table$options$debugA : table.options.debugTable;
66
- },
67
- onChange: () => {
68
- table._autoResetPageIndex();
69
- }
70
- });
61
+ }, utils.getMemoOptions(table.options, 'debugTable', 'getRowModel', () => table._autoResetPageIndex()));
71
62
  }
72
63
 
73
64
  exports.getCoreRowModel = getCoreRowModel;
@@ -1 +1 @@
1
- {"version":3,"file":"getCoreRowModel.js","sources":["../../../src/utils/getCoreRowModel.ts"],"sourcesContent":["import { createRow } from '../core/row'\nimport { Table, Row, RowModel, RowData } from '../types'\nimport { memo } from '../utils'\n\nexport function getCoreRowModel<TData extends RowData>(): (\n table: Table<TData>\n) => () => RowModel<TData> {\n return table =>\n memo(\n () => [table.options.data],\n (\n data\n ): {\n rows: Row<TData>[]\n flatRows: Row<TData>[]\n rowsById: Record<string, Row<TData>>\n } => {\n const rowModel: RowModel<TData> = {\n rows: [],\n flatRows: [],\n rowsById: {},\n }\n\n const accessRows = (\n originalRows: TData[],\n depth = 0,\n parentRow?: Row<TData>\n ): Row<TData>[] => {\n const rows = [] as Row<TData>[]\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 table,\n table._getRowId(originalRows[i]!, i, parentRow),\n originalRows[i]!,\n i,\n depth,\n undefined,\n parentRow?.id\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 table row into parent\n rows.push(row)\n\n // Get the original subrows\n if (table.options.getSubRows) {\n row.originalSubRows = table.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: () => table.options.debugAll ?? table.options.debugTable,\n onChange: () => {\n table._autoResetPageIndex()\n },\n }\n )\n}\n"],"names":["getCoreRowModel","table","memo","options","data","rowModel","rows","flatRows","rowsById","accessRows","originalRows","depth","parentRow","i","length","row","createRow","_getRowId","undefined","id","push","getSubRows","_row$originalSubRows","originalSubRows","subRows","key","process","env","NODE_ENV","debug","_table$options$debugA","debugAll","debugTable","onChange","_autoResetPageIndex"],"mappings":";;;;;;;;;;;;;;;AAIO,SAASA,eAAeA,GAEJ;AACzB,EAAA,OAAOC,KAAK,IACVC,UAAI,CACF,MAAM,CAACD,KAAK,CAACE,OAAO,CAACC,IAAI,CAAC,EAExBA,IAAI,IAKD;AACH,IAAA,MAAMC,QAAyB,GAAG;AAChCC,MAAAA,IAAI,EAAE,EAAE;AACRC,MAAAA,QAAQ,EAAE,EAAE;AACZC,MAAAA,QAAQ,EAAE,EAAC;KACZ,CAAA;IAED,MAAMC,UAAU,GAAG,UACjBC,YAAqB,EACrBC,KAAK,EACLC,SAAsB,EACL;AAAA,MAAA,IAFjBD,KAAK,KAAA,KAAA,CAAA,EAAA;AAALA,QAAAA,KAAK,GAAG,CAAC,CAAA;AAAA,OAAA;MAGT,MAAML,IAAI,GAAG,EAAkB,CAAA;AAE/B,MAAA,KAAK,IAAIO,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGH,YAAY,CAACI,MAAM,EAAED,CAAC,EAAE,EAAE;AAC5C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,QAAA,MAAME,KAAG,GAAGC,aAAS,CACnBf,KAAK,EACLA,KAAK,CAACgB,SAAS,CAACP,YAAY,CAACG,CAAC,CAAC,EAAGA,CAAC,EAAED,SAAS,CAAC,EAC/CF,YAAY,CAACG,CAAC,CAAC,EACfA,CAAC,EACDF,KAAK,EACLO,SAAS,EACTN,SAAS,IAAA,IAAA,GAAA,KAAA,CAAA,GAATA,SAAS,CAAEO,EACb,CAAC,CAAA;;AAED;AACAd,QAAAA,QAAQ,CAACE,QAAQ,CAACa,IAAI,CAACL,KAAG,CAAC,CAAA;AAC3B;QACAV,QAAQ,CAACG,QAAQ,CAACO,KAAG,CAACI,EAAE,CAAC,GAAGJ,KAAG,CAAA;AAC/B;AACAT,QAAAA,IAAI,CAACc,IAAI,CAACL,KAAG,CAAC,CAAA;;AAEd;AACA,QAAA,IAAId,KAAK,CAACE,OAAO,CAACkB,UAAU,EAAE;AAAA,UAAA,IAAAC,oBAAA,CAAA;AAC5BP,UAAAA,KAAG,CAACQ,eAAe,GAAGtB,KAAK,CAACE,OAAO,CAACkB,UAAU,CAC5CX,YAAY,CAACG,CAAC,CAAC,EACfA,CACF,CAAC,CAAA;;AAED;UACA,IAAAS,CAAAA,oBAAA,GAAIP,KAAG,CAACQ,eAAe,KAAnBD,IAAAA,IAAAA,oBAAA,CAAqBR,MAAM,EAAE;AAC/BC,YAAAA,KAAG,CAACS,OAAO,GAAGf,UAAU,CAACM,KAAG,CAACQ,eAAe,EAAEZ,KAAK,GAAG,CAAC,EAAEI,KAAG,CAAC,CAAA;AAC/D,WAAA;AACF,SAAA;AACF,OAAA;AAEA,MAAA,OAAOT,IAAI,CAAA;KACZ,CAAA;AAEDD,IAAAA,QAAQ,CAACC,IAAI,GAAGG,UAAU,CAACL,IAAI,CAAC,CAAA;AAEhC,IAAA,OAAOC,QAAQ,CAAA;AACjB,GAAC,EACD;IACEoB,GAAG,EAAEC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,aAAa,IAAI,aAAa;AAC5DC,IAAAA,KAAK,EAAEA,MAAA;AAAA,MAAA,IAAAC,qBAAA,CAAA;AAAA,MAAA,OAAA,CAAAA,qBAAA,GAAM7B,KAAK,CAACE,OAAO,CAAC4B,QAAQ,KAAAD,IAAAA,GAAAA,qBAAA,GAAI7B,KAAK,CAACE,OAAO,CAAC6B,UAAU,CAAA;AAAA,KAAA;IAC/DC,QAAQ,EAAEA,MAAM;MACdhC,KAAK,CAACiC,mBAAmB,EAAE,CAAA;AAC7B,KAAA;AACF,GACF,CAAC,CAAA;AACL;;;;"}
1
+ {"version":3,"file":"getCoreRowModel.js","sources":["../../../src/utils/getCoreRowModel.ts"],"sourcesContent":["import { createRow } from '../core/row'\nimport { Table, Row, RowModel, RowData } from '../types'\nimport { getMemoOptions, memo } from '../utils'\n\nexport function getCoreRowModel<TData extends RowData>(): (\n table: Table<TData>\n) => () => RowModel<TData> {\n return table =>\n memo(\n () => [table.options.data],\n (\n data\n ): {\n rows: Row<TData>[]\n flatRows: Row<TData>[]\n rowsById: Record<string, Row<TData>>\n } => {\n const rowModel: RowModel<TData> = {\n rows: [],\n flatRows: [],\n rowsById: {},\n }\n\n const accessRows = (\n originalRows: TData[],\n depth = 0,\n parentRow?: Row<TData>\n ): Row<TData>[] => {\n const rows = [] as Row<TData>[]\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 table,\n table._getRowId(originalRows[i]!, i, parentRow),\n originalRows[i]!,\n i,\n depth,\n undefined,\n parentRow?.id\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 table row into parent\n rows.push(row)\n\n // Get the original subrows\n if (table.options.getSubRows) {\n row.originalSubRows = table.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 getMemoOptions(table.options, 'debugTable', 'getRowModel', () =>\n table._autoResetPageIndex()\n )\n )\n}\n"],"names":["getCoreRowModel","table","memo","options","data","rowModel","rows","flatRows","rowsById","accessRows","originalRows","depth","parentRow","i","length","row","createRow","_getRowId","undefined","id","push","getSubRows","_row$originalSubRows","originalSubRows","subRows","getMemoOptions","_autoResetPageIndex"],"mappings":";;;;;;;;;;;;;;;AAIO,SAASA,eAAeA,GAEJ;AACzB,EAAA,OAAOC,KAAK,IACVC,UAAI,CACF,MAAM,CAACD,KAAK,CAACE,OAAO,CAACC,IAAI,CAAC,EAExBA,IAAI,IAKD;AACH,IAAA,MAAMC,QAAyB,GAAG;AAChCC,MAAAA,IAAI,EAAE,EAAE;AACRC,MAAAA,QAAQ,EAAE,EAAE;AACZC,MAAAA,QAAQ,EAAE,EAAC;KACZ,CAAA;IAED,MAAMC,UAAU,GAAG,UACjBC,YAAqB,EACrBC,KAAK,EACLC,SAAsB,EACL;AAAA,MAAA,IAFjBD,KAAK,KAAA,KAAA,CAAA,EAAA;AAALA,QAAAA,KAAK,GAAG,CAAC,CAAA;AAAA,OAAA;MAGT,MAAML,IAAI,GAAG,EAAkB,CAAA;AAE/B,MAAA,KAAK,IAAIO,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGH,YAAY,CAACI,MAAM,EAAED,CAAC,EAAE,EAAE;AAC5C;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,QAAA,MAAME,KAAG,GAAGC,aAAS,CACnBf,KAAK,EACLA,KAAK,CAACgB,SAAS,CAACP,YAAY,CAACG,CAAC,CAAC,EAAGA,CAAC,EAAED,SAAS,CAAC,EAC/CF,YAAY,CAACG,CAAC,CAAC,EACfA,CAAC,EACDF,KAAK,EACLO,SAAS,EACTN,SAAS,IAAA,IAAA,GAAA,KAAA,CAAA,GAATA,SAAS,CAAEO,EACb,CAAC,CAAA;;AAED;AACAd,QAAAA,QAAQ,CAACE,QAAQ,CAACa,IAAI,CAACL,KAAG,CAAC,CAAA;AAC3B;QACAV,QAAQ,CAACG,QAAQ,CAACO,KAAG,CAACI,EAAE,CAAC,GAAGJ,KAAG,CAAA;AAC/B;AACAT,QAAAA,IAAI,CAACc,IAAI,CAACL,KAAG,CAAC,CAAA;;AAEd;AACA,QAAA,IAAId,KAAK,CAACE,OAAO,CAACkB,UAAU,EAAE;AAAA,UAAA,IAAAC,oBAAA,CAAA;AAC5BP,UAAAA,KAAG,CAACQ,eAAe,GAAGtB,KAAK,CAACE,OAAO,CAACkB,UAAU,CAC5CX,YAAY,CAACG,CAAC,CAAC,EACfA,CACF,CAAC,CAAA;;AAED;UACA,IAAAS,CAAAA,oBAAA,GAAIP,KAAG,CAACQ,eAAe,KAAnBD,IAAAA,IAAAA,oBAAA,CAAqBR,MAAM,EAAE;AAC/BC,YAAAA,KAAG,CAACS,OAAO,GAAGf,UAAU,CAACM,KAAG,CAACQ,eAAe,EAAEZ,KAAK,GAAG,CAAC,EAAEI,KAAG,CAAC,CAAA;AAC/D,WAAA;AACF,SAAA;AACF,OAAA;AAEA,MAAA,OAAOT,IAAI,CAAA;KACZ,CAAA;AAEDD,IAAAA,QAAQ,CAACC,IAAI,GAAGG,UAAU,CAACL,IAAI,CAAC,CAAA;AAEhC,IAAA,OAAOC,QAAQ,CAAA;AACjB,GAAC,EACDoB,oBAAc,CAACxB,KAAK,CAACE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MACzDF,KAAK,CAACyB,mBAAmB,EAC3B,CACF,CAAC,CAAA;AACL;;;;"}
@@ -22,13 +22,7 @@ function getExpandedRowModel() {
22
22
  return rowModel;
23
23
  }
24
24
  return expandRows(rowModel);
25
- }, {
26
- key: process.env.NODE_ENV === 'development' && 'getExpandedRowModel',
27
- debug: () => {
28
- var _table$options$debugA;
29
- return (_table$options$debugA = table.options.debugAll) != null ? _table$options$debugA : table.options.debugTable;
30
- }
31
- });
25
+ }, utils.getMemoOptions(table.options, 'debugTable', 'getExpandedRowModel'));
32
26
  }
33
27
  function expandRows(rowModel) {
34
28
  const expandedRows = [];
@@ -1 +1 @@
1
- {"version":3,"file":"getExpandedRowModel.js","sources":["../../../src/utils/getExpandedRowModel.ts"],"sourcesContent":["import { Table, Row, RowModel, RowData } from '../types'\nimport { memo } from '../utils'\n\nexport function getExpandedRowModel<TData extends RowData>(): (\n table: Table<TData>\n) => () => RowModel<TData> {\n return table =>\n memo(\n () => [\n table.getState().expanded,\n table.getPreExpandedRowModel(),\n table.options.paginateExpandedRows,\n ],\n (expanded, rowModel, paginateExpandedRows) => {\n if (\n !rowModel.rows.length ||\n (expanded !== true && !Object.keys(expanded ?? {}).length)\n ) {\n return rowModel\n }\n\n if (!paginateExpandedRows) {\n // Only expand rows at this point if they are being paginated\n return rowModel\n }\n\n return expandRows(rowModel)\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getExpandedRowModel',\n debug: () => table.options.debugAll ?? table.options.debugTable,\n }\n )\n}\n\nexport function expandRows<TData extends RowData>(rowModel: RowModel<TData>) {\n const expandedRows: Row<TData>[] = []\n\n const handleRow = (row: Row<TData>) => {\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","table","memo","getState","expanded","getPreExpandedRowModel","options","paginateExpandedRows","rowModel","rows","length","Object","keys","expandRows","key","process","env","NODE_ENV","debug","_table$options$debugA","debugAll","debugTable","expandedRows","handleRow","row","_row$subRows","push","subRows","getIsExpanded","forEach","flatRows","rowsById"],"mappings":";;;;;;;;;;;;;;AAGO,SAASA,mBAAmBA,GAER;AACzB,EAAA,OAAOC,KAAK,IACVC,UAAI,CACF,MAAM,CACJD,KAAK,CAACE,QAAQ,EAAE,CAACC,QAAQ,EACzBH,KAAK,CAACI,sBAAsB,EAAE,EAC9BJ,KAAK,CAACK,OAAO,CAACC,oBAAoB,CACnC,EACD,CAACH,QAAQ,EAAEI,QAAQ,EAAED,oBAAoB,KAAK;IAC5C,IACE,CAACC,QAAQ,CAACC,IAAI,CAACC,MAAM,IACpBN,QAAQ,KAAK,IAAI,IAAI,CAACO,MAAM,CAACC,IAAI,CAACR,QAAQ,IAARA,IAAAA,GAAAA,QAAQ,GAAI,EAAE,CAAC,CAACM,MAAO,EAC1D;AACA,MAAA,OAAOF,QAAQ,CAAA;AACjB,KAAA;IAEA,IAAI,CAACD,oBAAoB,EAAE;AACzB;AACA,MAAA,OAAOC,QAAQ,CAAA;AACjB,KAAA;IAEA,OAAOK,UAAU,CAACL,QAAQ,CAAC,CAAA;AAC7B,GAAC,EACD;IACEM,GAAG,EAAEC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,aAAa,IAAI,qBAAqB;AACpEC,IAAAA,KAAK,EAAEA,MAAA;AAAA,MAAA,IAAAC,qBAAA,CAAA;AAAA,MAAA,OAAA,CAAAA,qBAAA,GAAMlB,KAAK,CAACK,OAAO,CAACc,QAAQ,KAAAD,IAAAA,GAAAA,qBAAA,GAAIlB,KAAK,CAACK,OAAO,CAACe,UAAU,CAAA;AAAA,KAAA;AACjE,GACF,CAAC,CAAA;AACL,CAAA;AAEO,SAASR,UAAUA,CAAwBL,QAAyB,EAAE;EAC3E,MAAMc,YAA0B,GAAG,EAAE,CAAA;EAErC,MAAMC,SAAS,GAAIC,GAAe,IAAK;AAAA,IAAA,IAAAC,YAAA,CAAA;AACrCH,IAAAA,YAAY,CAACI,IAAI,CAACF,GAAG,CAAC,CAAA;AAEtB,IAAA,IAAI,CAAAC,YAAA,GAAAD,GAAG,CAACG,OAAO,KAAXF,IAAAA,IAAAA,YAAA,CAAaf,MAAM,IAAIc,GAAG,CAACI,aAAa,EAAE,EAAE;AAC9CJ,MAAAA,GAAG,CAACG,OAAO,CAACE,OAAO,CAACN,SAAS,CAAC,CAAA;AAChC,KAAA;GACD,CAAA;AAEDf,EAAAA,QAAQ,CAACC,IAAI,CAACoB,OAAO,CAACN,SAAS,CAAC,CAAA;EAEhC,OAAO;AACLd,IAAAA,IAAI,EAAEa,YAAY;IAClBQ,QAAQ,EAAEtB,QAAQ,CAACsB,QAAQ;IAC3BC,QAAQ,EAAEvB,QAAQ,CAACuB,QAAAA;GACpB,CAAA;AACH;;;;;"}
1
+ {"version":3,"file":"getExpandedRowModel.js","sources":["../../../src/utils/getExpandedRowModel.ts"],"sourcesContent":["import { Table, Row, RowModel, RowData } from '../types'\nimport { getMemoOptions, memo } from '../utils'\n\nexport function getExpandedRowModel<TData extends RowData>(): (\n table: Table<TData>\n) => () => RowModel<TData> {\n return table =>\n memo(\n () => [\n table.getState().expanded,\n table.getPreExpandedRowModel(),\n table.options.paginateExpandedRows,\n ],\n (expanded, rowModel, paginateExpandedRows) => {\n if (\n !rowModel.rows.length ||\n (expanded !== true && !Object.keys(expanded ?? {}).length)\n ) {\n return rowModel\n }\n\n if (!paginateExpandedRows) {\n // Only expand rows at this point if they are being paginated\n return rowModel\n }\n\n return expandRows(rowModel)\n },\n getMemoOptions(table.options, 'debugTable', 'getExpandedRowModel')\n )\n}\n\nexport function expandRows<TData extends RowData>(rowModel: RowModel<TData>) {\n const expandedRows: Row<TData>[] = []\n\n const handleRow = (row: Row<TData>) => {\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","table","memo","getState","expanded","getPreExpandedRowModel","options","paginateExpandedRows","rowModel","rows","length","Object","keys","expandRows","getMemoOptions","expandedRows","handleRow","row","_row$subRows","push","subRows","getIsExpanded","forEach","flatRows","rowsById"],"mappings":";;;;;;;;;;;;;;AAGO,SAASA,mBAAmBA,GAER;AACzB,EAAA,OAAOC,KAAK,IACVC,UAAI,CACF,MAAM,CACJD,KAAK,CAACE,QAAQ,EAAE,CAACC,QAAQ,EACzBH,KAAK,CAACI,sBAAsB,EAAE,EAC9BJ,KAAK,CAACK,OAAO,CAACC,oBAAoB,CACnC,EACD,CAACH,QAAQ,EAAEI,QAAQ,EAAED,oBAAoB,KAAK;IAC5C,IACE,CAACC,QAAQ,CAACC,IAAI,CAACC,MAAM,IACpBN,QAAQ,KAAK,IAAI,IAAI,CAACO,MAAM,CAACC,IAAI,CAACR,QAAQ,IAARA,IAAAA,GAAAA,QAAQ,GAAI,EAAE,CAAC,CAACM,MAAO,EAC1D;AACA,MAAA,OAAOF,QAAQ,CAAA;AACjB,KAAA;IAEA,IAAI,CAACD,oBAAoB,EAAE;AACzB;AACA,MAAA,OAAOC,QAAQ,CAAA;AACjB,KAAA;IAEA,OAAOK,UAAU,CAACL,QAAQ,CAAC,CAAA;GAC5B,EACDM,oBAAc,CAACb,KAAK,CAACK,OAAO,EAAE,YAAY,EAAE,qBAAqB,CACnE,CAAC,CAAA;AACL,CAAA;AAEO,SAASO,UAAUA,CAAwBL,QAAyB,EAAE;EAC3E,MAAMO,YAA0B,GAAG,EAAE,CAAA;EAErC,MAAMC,SAAS,GAAIC,GAAe,IAAK;AAAA,IAAA,IAAAC,YAAA,CAAA;AACrCH,IAAAA,YAAY,CAACI,IAAI,CAACF,GAAG,CAAC,CAAA;AAEtB,IAAA,IAAI,CAAAC,YAAA,GAAAD,GAAG,CAACG,OAAO,KAAXF,IAAAA,IAAAA,YAAA,CAAaR,MAAM,IAAIO,GAAG,CAACI,aAAa,EAAE,EAAE;AAC9CJ,MAAAA,GAAG,CAACG,OAAO,CAACE,OAAO,CAACN,SAAS,CAAC,CAAA;AAChC,KAAA;GACD,CAAA;AAEDR,EAAAA,QAAQ,CAACC,IAAI,CAACa,OAAO,CAACN,SAAS,CAAC,CAAA;EAEhC,OAAO;AACLP,IAAAA,IAAI,EAAEM,YAAY;IAClBQ,QAAQ,EAAEf,QAAQ,CAACe,QAAQ;IAC3BC,QAAQ,EAAEhB,QAAQ,CAACgB,QAAAA;GACpB,CAAA;AACH;;;;;"}
@@ -36,14 +36,7 @@ function getFacetedMinMaxValues() {
36
36
  }
37
37
  }
38
38
  return facetedMinMaxValues;
39
- }, {
40
- key: process.env.NODE_ENV === 'development' && 'getFacetedMinMaxValues_' + columnId,
41
- debug: () => {
42
- var _table$options$debugA;
43
- return (_table$options$debugA = table.options.debugAll) != null ? _table$options$debugA : table.options.debugTable;
44
- },
45
- onChange: () => {}
46
- });
39
+ }, utils.getMemoOptions(table.options, 'debugTable', 'getFacetedMinMaxValues'));
47
40
  }
48
41
 
49
42
  exports.getFacetedMinMaxValues = getFacetedMinMaxValues;
@@ -1 +1 @@
1
- {"version":3,"file":"getFacetedMinMaxValues.js","sources":["../../../src/utils/getFacetedMinMaxValues.ts"],"sourcesContent":["import { Table, RowData } from '../types'\nimport { memo } from '../utils'\n\nexport function getFacetedMinMaxValues<TData extends RowData>(): (\n table: Table<TData>,\n columnId: string\n) => () => undefined | [number, number] {\n return (table, columnId) =>\n memo(\n () => [table.getColumn(columnId)?.getFacetedRowModel()],\n facetedRowModel => {\n if (!facetedRowModel) return undefined\n\n const firstValue =\n facetedRowModel.flatRows[0]?.getUniqueValues(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 values =\n facetedRowModel.flatRows[i]!.getUniqueValues<number>(columnId)\n\n for (let j = 0; j < values.length; j++) {\n const value = values[j]!\n\n if (value < facetedMinMaxValues[0]) {\n facetedMinMaxValues[0] = value\n } else if (value > facetedMinMaxValues[1]) {\n facetedMinMaxValues[1] = value\n }\n }\n }\n\n return facetedMinMaxValues\n },\n {\n key:\n process.env.NODE_ENV === 'development' &&\n 'getFacetedMinMaxValues_' + columnId,\n debug: () => table.options.debugAll ?? table.options.debugTable,\n onChange: () => {},\n }\n )\n}\n"],"names":["getFacetedMinMaxValues","table","columnId","memo","_table$getColumn","getColumn","getFacetedRowModel","facetedRowModel","_facetedRowModel$flat","undefined","firstValue","flatRows","getUniqueValues","facetedMinMaxValues","i","length","values","j","value","key","process","env","NODE_ENV","debug","_table$options$debugA","options","debugAll","debugTable","onChange"],"mappings":";;;;;;;;;;;;;;AAGO,SAASA,sBAAsBA,GAGE;AACtC,EAAA,OAAO,CAACC,KAAK,EAAEC,QAAQ,KACrBC,UAAI,CACF,MAAA;AAAA,IAAA,IAAAC,gBAAA,CAAA;AAAA,IAAA,OAAM,CAAAA,CAAAA,gBAAA,GAACH,KAAK,CAACI,SAAS,CAACH,QAAQ,CAAC,qBAAzBE,gBAAA,CAA2BE,kBAAkB,EAAE,CAAC,CAAA;AAAA,GAAA,EACvDC,eAAe,IAAI;AAAA,IAAA,IAAAC,qBAAA,CAAA;AACjB,IAAA,IAAI,CAACD,eAAe,EAAE,OAAOE,SAAS,CAAA;AAEtC,IAAA,MAAMC,UAAU,GAAAF,CAAAA,qBAAA,GACdD,eAAe,CAACI,QAAQ,CAAC,CAAC,CAAC,qBAA3BH,qBAAA,CAA6BI,eAAe,CAACV,QAAQ,CAAC,CAAA;AAExD,IAAA,IAAI,OAAOQ,UAAU,KAAK,WAAW,EAAE;AACrC,MAAA,OAAOD,SAAS,CAAA;AAClB,KAAA;AAEA,IAAA,IAAII,mBAA+B,GAAG,CAACH,UAAU,EAAEA,UAAU,CAAC,CAAA;AAE9D,IAAA,KAAK,IAAII,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGP,eAAe,CAACI,QAAQ,CAACI,MAAM,EAAED,CAAC,EAAE,EAAE;AACxD,MAAA,MAAME,MAAM,GACVT,eAAe,CAACI,QAAQ,CAACG,CAAC,CAAC,CAAEF,eAAe,CAASV,QAAQ,CAAC,CAAA;AAEhE,MAAA,KAAK,IAAIe,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGD,MAAM,CAACD,MAAM,EAAEE,CAAC,EAAE,EAAE;AACtC,QAAA,MAAMC,KAAK,GAAGF,MAAM,CAACC,CAAC,CAAE,CAAA;AAExB,QAAA,IAAIC,KAAK,GAAGL,mBAAmB,CAAC,CAAC,CAAC,EAAE;AAClCA,UAAAA,mBAAmB,CAAC,CAAC,CAAC,GAAGK,KAAK,CAAA;SAC/B,MAAM,IAAIA,KAAK,GAAGL,mBAAmB,CAAC,CAAC,CAAC,EAAE;AACzCA,UAAAA,mBAAmB,CAAC,CAAC,CAAC,GAAGK,KAAK,CAAA;AAChC,SAAA;AACF,OAAA;AACF,KAAA;AAEA,IAAA,OAAOL,mBAAmB,CAAA;AAC5B,GAAC,EACD;IACEM,GAAG,EACDC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,aAAa,IACtC,yBAAyB,GAAGpB,QAAQ;AACtCqB,IAAAA,KAAK,EAAEA,MAAA;AAAA,MAAA,IAAAC,qBAAA,CAAA;AAAA,MAAA,OAAA,CAAAA,qBAAA,GAAMvB,KAAK,CAACwB,OAAO,CAACC,QAAQ,KAAAF,IAAAA,GAAAA,qBAAA,GAAIvB,KAAK,CAACwB,OAAO,CAACE,UAAU,CAAA;AAAA,KAAA;IAC/DC,QAAQ,EAAEA,MAAM,EAAC;AACnB,GACF,CAAC,CAAA;AACL;;;;"}
1
+ {"version":3,"file":"getFacetedMinMaxValues.js","sources":["../../../src/utils/getFacetedMinMaxValues.ts"],"sourcesContent":["import { Table, RowData } from '../types'\nimport { getMemoOptions, memo } from '../utils'\n\nexport function getFacetedMinMaxValues<TData extends RowData>(): (\n table: Table<TData>,\n columnId: string\n) => () => undefined | [number, number] {\n return (table, columnId) =>\n memo(\n () => [table.getColumn(columnId)?.getFacetedRowModel()],\n facetedRowModel => {\n if (!facetedRowModel) return undefined\n\n const firstValue =\n facetedRowModel.flatRows[0]?.getUniqueValues(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 values =\n facetedRowModel.flatRows[i]!.getUniqueValues<number>(columnId)\n\n for (let j = 0; j < values.length; j++) {\n const value = values[j]!\n\n if (value < facetedMinMaxValues[0]) {\n facetedMinMaxValues[0] = value\n } else if (value > facetedMinMaxValues[1]) {\n facetedMinMaxValues[1] = value\n }\n }\n }\n\n return facetedMinMaxValues\n },\n getMemoOptions(table.options, 'debugTable', 'getFacetedMinMaxValues')\n )\n}\n"],"names":["getFacetedMinMaxValues","table","columnId","memo","_table$getColumn","getColumn","getFacetedRowModel","facetedRowModel","_facetedRowModel$flat","undefined","firstValue","flatRows","getUniqueValues","facetedMinMaxValues","i","length","values","j","value","getMemoOptions","options"],"mappings":";;;;;;;;;;;;;;AAGO,SAASA,sBAAsBA,GAGE;AACtC,EAAA,OAAO,CAACC,KAAK,EAAEC,QAAQ,KACrBC,UAAI,CACF,MAAA;AAAA,IAAA,IAAAC,gBAAA,CAAA;AAAA,IAAA,OAAM,CAAAA,CAAAA,gBAAA,GAACH,KAAK,CAACI,SAAS,CAACH,QAAQ,CAAC,qBAAzBE,gBAAA,CAA2BE,kBAAkB,EAAE,CAAC,CAAA;AAAA,GAAA,EACvDC,eAAe,IAAI;AAAA,IAAA,IAAAC,qBAAA,CAAA;AACjB,IAAA,IAAI,CAACD,eAAe,EAAE,OAAOE,SAAS,CAAA;AAEtC,IAAA,MAAMC,UAAU,GAAAF,CAAAA,qBAAA,GACdD,eAAe,CAACI,QAAQ,CAAC,CAAC,CAAC,qBAA3BH,qBAAA,CAA6BI,eAAe,CAACV,QAAQ,CAAC,CAAA;AAExD,IAAA,IAAI,OAAOQ,UAAU,KAAK,WAAW,EAAE;AACrC,MAAA,OAAOD,SAAS,CAAA;AAClB,KAAA;AAEA,IAAA,IAAII,mBAA+B,GAAG,CAACH,UAAU,EAAEA,UAAU,CAAC,CAAA;AAE9D,IAAA,KAAK,IAAII,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGP,eAAe,CAACI,QAAQ,CAACI,MAAM,EAAED,CAAC,EAAE,EAAE;AACxD,MAAA,MAAME,MAAM,GACVT,eAAe,CAACI,QAAQ,CAACG,CAAC,CAAC,CAAEF,eAAe,CAASV,QAAQ,CAAC,CAAA;AAEhE,MAAA,KAAK,IAAIe,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGD,MAAM,CAACD,MAAM,EAAEE,CAAC,EAAE,EAAE;AACtC,QAAA,MAAMC,KAAK,GAAGF,MAAM,CAACC,CAAC,CAAE,CAAA;AAExB,QAAA,IAAIC,KAAK,GAAGL,mBAAmB,CAAC,CAAC,CAAC,EAAE;AAClCA,UAAAA,mBAAmB,CAAC,CAAC,CAAC,GAAGK,KAAK,CAAA;SAC/B,MAAM,IAAIA,KAAK,GAAGL,mBAAmB,CAAC,CAAC,CAAC,EAAE;AACzCA,UAAAA,mBAAmB,CAAC,CAAC,CAAC,GAAGK,KAAK,CAAA;AAChC,SAAA;AACF,OAAA;AACF,KAAA;AAEA,IAAA,OAAOL,mBAAmB,CAAA;GAC3B,EACDM,oBAAc,CAAClB,KAAK,CAACmB,OAAO,EAAE,YAAY,EAAE,wBAAwB,CACtE,CAAC,CAAA;AACL;;;;"}
@@ -29,14 +29,7 @@ function getFacetedRowModel() {
29
29
  return true;
30
30
  };
31
31
  return filterRowsUtils.filterRows(preRowModel.rows, filterRowsImpl, table);
32
- }, {
33
- key: process.env.NODE_ENV === 'development' && 'getFacetedRowModel_' + columnId,
34
- debug: () => {
35
- var _table$options$debugA;
36
- return (_table$options$debugA = table.options.debugAll) != null ? _table$options$debugA : table.options.debugTable;
37
- },
38
- onChange: () => {}
39
- });
32
+ }, utils.getMemoOptions(table.options, 'debugTable', 'getFacetedRowModel'));
40
33
  }
41
34
 
42
35
  exports.getFacetedRowModel = getFacetedRowModel;
@@ -1 +1 @@
1
- {"version":3,"file":"getFacetedRowModel.js","sources":["../../../src/utils/getFacetedRowModel.ts"],"sourcesContent":["import { Table, RowModel, Row, RowData } from '../types'\nimport { memo } from '../utils'\nimport { filterRows } from './filterRowsUtils'\n\nexport function getFacetedRowModel<TData extends RowData>(): (\n table: Table<TData>,\n columnId: string\n) => () => RowModel<TData> {\n return (table, columnId) =>\n memo(\n () => [\n table.getPreFilteredRowModel(),\n table.getState().columnFilters,\n table.getState().globalFilter,\n table.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<TData>) => {\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, table)\n },\n {\n key:\n process.env.NODE_ENV === 'development' &&\n 'getFacetedRowModel_' + columnId,\n debug: () => table.options.debugAll ?? table.options.debugTable,\n onChange: () => {},\n }\n )\n}\n"],"names":["getFacetedRowModel","table","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","_table$options$debugA","options","debugAll","debugTable","onChange"],"mappings":";;;;;;;;;;;;;;;AAIO,SAASA,kBAAkBA,GAGP;EACzB,OAAO,CAACC,KAAK,EAAEC,QAAQ,KACrBC,UAAI,CACF,MAAM,CACJF,KAAK,CAACG,sBAAsB,EAAE,EAC9BH,KAAK,CAACI,QAAQ,EAAE,CAACC,aAAa,EAC9BL,KAAK,CAACI,QAAQ,EAAE,CAACE,YAAY,EAC7BN,KAAK,CAACO,mBAAmB,EAAE,CAC5B,EACD,CAACC,WAAW,EAAEH,aAAa,EAAEC,YAAY,KAAK;AAC5C,IAAA,IACE,CAACE,WAAW,CAACC,IAAI,CAACC,MAAM,IACvB,EAACL,aAAa,IAAA,IAAA,IAAbA,aAAa,CAAEK,MAAM,CAAI,IAAA,CAACJ,YAAa,EACzC;AACA,MAAA,OAAOE,WAAW,CAAA;AACpB,KAAA;AAEA,IAAA,MAAMG,aAAa,GAAG,CACpB,GAAGN,aAAa,CAACO,GAAG,CAACC,CAAC,IAAIA,CAAC,CAACC,EAAE,CAAC,CAACC,MAAM,CAACF,CAAC,IAAIA,CAAC,KAAKZ,QAAQ,CAAC,EAC3DK,YAAY,GAAG,YAAY,GAAGU,SAAS,CACxC,CAACD,MAAM,CAACE,OAAO,CAAa,CAAA;IAE7B,MAAMC,cAAc,GAAIC,GAAe,IAAK;AAC1C;AACA,MAAA,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGT,aAAa,CAACD,MAAM,EAAEU,CAAC,EAAE,EAAE;QAC7C,IAAID,GAAG,CAACd,aAAa,CAACM,aAAa,CAACS,CAAC,CAAC,CAAE,KAAK,KAAK,EAAE;AAClD,UAAA,OAAO,KAAK,CAAA;AACd,SAAA;AACF,OAAA;AACA,MAAA,OAAO,IAAI,CAAA;KACZ,CAAA;IAED,OAAOC,0BAAU,CAACb,WAAW,CAACC,IAAI,EAAES,cAAc,EAAElB,KAAK,CAAC,CAAA;AAC5D,GAAC,EACD;IACEsB,GAAG,EACDC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,aAAa,IACtC,qBAAqB,GAAGxB,QAAQ;AAClCyB,IAAAA,KAAK,EAAEA,MAAA;AAAA,MAAA,IAAAC,qBAAA,CAAA;AAAA,MAAA,OAAA,CAAAA,qBAAA,GAAM3B,KAAK,CAAC4B,OAAO,CAACC,QAAQ,KAAAF,IAAAA,GAAAA,qBAAA,GAAI3B,KAAK,CAAC4B,OAAO,CAACE,UAAU,CAAA;AAAA,KAAA;IAC/DC,QAAQ,EAAEA,MAAM,EAAC;AACnB,GACF,CAAC,CAAA;AACL;;;;"}
1
+ {"version":3,"file":"getFacetedRowModel.js","sources":["../../../src/utils/getFacetedRowModel.ts"],"sourcesContent":["import { Table, RowModel, Row, RowData } from '../types'\nimport { getMemoOptions, memo } from '../utils'\nimport { filterRows } from './filterRowsUtils'\n\nexport function getFacetedRowModel<TData extends RowData>(): (\n table: Table<TData>,\n columnId: string\n) => () => RowModel<TData> {\n return (table, columnId) =>\n memo(\n () => [\n table.getPreFilteredRowModel(),\n table.getState().columnFilters,\n table.getState().globalFilter,\n table.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<TData>) => {\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, table)\n },\n getMemoOptions(table.options, 'debugTable', 'getFacetedRowModel')\n )\n}\n"],"names":["getFacetedRowModel","table","columnId","memo","getPreFilteredRowModel","getState","columnFilters","globalFilter","getFilteredRowModel","preRowModel","rows","length","filterableIds","map","d","id","filter","undefined","Boolean","filterRowsImpl","row","i","filterRows","getMemoOptions","options"],"mappings":";;;;;;;;;;;;;;;AAIO,SAASA,kBAAkBA,GAGP;EACzB,OAAO,CAACC,KAAK,EAAEC,QAAQ,KACrBC,UAAI,CACF,MAAM,CACJF,KAAK,CAACG,sBAAsB,EAAE,EAC9BH,KAAK,CAACI,QAAQ,EAAE,CAACC,aAAa,EAC9BL,KAAK,CAACI,QAAQ,EAAE,CAACE,YAAY,EAC7BN,KAAK,CAACO,mBAAmB,EAAE,CAC5B,EACD,CAACC,WAAW,EAAEH,aAAa,EAAEC,YAAY,KAAK;AAC5C,IAAA,IACE,CAACE,WAAW,CAACC,IAAI,CAACC,MAAM,IACvB,EAACL,aAAa,IAAA,IAAA,IAAbA,aAAa,CAAEK,MAAM,CAAI,IAAA,CAACJ,YAAa,EACzC;AACA,MAAA,OAAOE,WAAW,CAAA;AACpB,KAAA;AAEA,IAAA,MAAMG,aAAa,GAAG,CACpB,GAAGN,aAAa,CAACO,GAAG,CAACC,CAAC,IAAIA,CAAC,CAACC,EAAE,CAAC,CAACC,MAAM,CAACF,CAAC,IAAIA,CAAC,KAAKZ,QAAQ,CAAC,EAC3DK,YAAY,GAAG,YAAY,GAAGU,SAAS,CACxC,CAACD,MAAM,CAACE,OAAO,CAAa,CAAA;IAE7B,MAAMC,cAAc,GAAIC,GAAe,IAAK;AAC1C;AACA,MAAA,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGT,aAAa,CAACD,MAAM,EAAEU,CAAC,EAAE,EAAE;QAC7C,IAAID,GAAG,CAACd,aAAa,CAACM,aAAa,CAACS,CAAC,CAAC,CAAE,KAAK,KAAK,EAAE;AAClD,UAAA,OAAO,KAAK,CAAA;AACd,SAAA;AACF,OAAA;AACA,MAAA,OAAO,IAAI,CAAA;KACZ,CAAA;IAED,OAAOC,0BAAU,CAACb,WAAW,CAACC,IAAI,EAAES,cAAc,EAAElB,KAAK,CAAC,CAAA;GAC3D,EACDsB,oBAAc,CAACtB,KAAK,CAACuB,OAAO,EAAE,YAAY,EAAE,oBAAoB,CAClE,CAAC,CAAA;AACL;;;;"}
@@ -32,14 +32,7 @@ function getFacetedUniqueValues() {
32
32
  }
33
33
  }
34
34
  return facetedUniqueValues;
35
- }, {
36
- key: process.env.NODE_ENV === 'development' && 'getFacetedUniqueValues_' + columnId,
37
- debug: () => {
38
- var _table$options$debugA;
39
- return (_table$options$debugA = table.options.debugAll) != null ? _table$options$debugA : table.options.debugTable;
40
- },
41
- onChange: () => {}
42
- });
35
+ }, utils.getMemoOptions(table.options, 'debugTable', `getFacetedUniqueValues_${columnId}`));
43
36
  }
44
37
 
45
38
  exports.getFacetedUniqueValues = getFacetedUniqueValues;
@@ -1 +1 @@
1
- {"version":3,"file":"getFacetedUniqueValues.js","sources":["../../../src/utils/getFacetedUniqueValues.ts"],"sourcesContent":["import { Table, RowData } from '../types'\nimport { memo } from '../utils'\n\nexport function getFacetedUniqueValues<TData extends RowData>(): (\n table: Table<TData>,\n columnId: string\n) => () => Map<any, number> {\n return (table, columnId) =>\n memo(\n () => [table.getColumn(columnId)?.getFacetedRowModel()],\n facetedRowModel => {\n if (!facetedRowModel) return new Map()\n\n let facetedUniqueValues = new Map<any, number>()\n\n for (let i = 0; i < facetedRowModel.flatRows.length; i++) {\n const values =\n facetedRowModel.flatRows[i]!.getUniqueValues<number>(columnId)\n\n for (let j = 0; j < values.length; j++) {\n const value = values[j]!\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\n return facetedUniqueValues\n },\n {\n key:\n process.env.NODE_ENV === 'development' &&\n 'getFacetedUniqueValues_' + columnId,\n debug: () => table.options.debugAll ?? table.options.debugTable,\n onChange: () => {},\n }\n )\n}\n"],"names":["getFacetedUniqueValues","table","columnId","memo","_table$getColumn","getColumn","getFacetedRowModel","facetedRowModel","Map","facetedUniqueValues","i","flatRows","length","values","getUniqueValues","j","value","has","_facetedUniqueValues$","set","get","key","process","env","NODE_ENV","debug","_table$options$debugA","options","debugAll","debugTable","onChange"],"mappings":";;;;;;;;;;;;;;AAGO,SAASA,sBAAsBA,GAGV;AAC1B,EAAA,OAAO,CAACC,KAAK,EAAEC,QAAQ,KACrBC,UAAI,CACF,MAAA;AAAA,IAAA,IAAAC,gBAAA,CAAA;AAAA,IAAA,OAAM,CAAAA,CAAAA,gBAAA,GAACH,KAAK,CAACI,SAAS,CAACH,QAAQ,CAAC,qBAAzBE,gBAAA,CAA2BE,kBAAkB,EAAE,CAAC,CAAA;AAAA,GAAA,EACvDC,eAAe,IAAI;AACjB,IAAA,IAAI,CAACA,eAAe,EAAE,OAAO,IAAIC,GAAG,EAAE,CAAA;AAEtC,IAAA,IAAIC,mBAAmB,GAAG,IAAID,GAAG,EAAe,CAAA;AAEhD,IAAA,KAAK,IAAIE,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGH,eAAe,CAACI,QAAQ,CAACC,MAAM,EAAEF,CAAC,EAAE,EAAE;AACxD,MAAA,MAAMG,MAAM,GACVN,eAAe,CAACI,QAAQ,CAACD,CAAC,CAAC,CAAEI,eAAe,CAASZ,QAAQ,CAAC,CAAA;AAEhE,MAAA,KAAK,IAAIa,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGF,MAAM,CAACD,MAAM,EAAEG,CAAC,EAAE,EAAE;AACtC,QAAA,MAAMC,KAAK,GAAGH,MAAM,CAACE,CAAC,CAAE,CAAA;AAExB,QAAA,IAAIN,mBAAmB,CAACQ,GAAG,CAACD,KAAK,CAAC,EAAE;AAAA,UAAA,IAAAE,qBAAA,CAAA;UAClCT,mBAAmB,CAACU,GAAG,CACrBH,KAAK,EACL,CAAAE,CAAAA,qBAAA,GAACT,mBAAmB,CAACW,GAAG,CAACJ,KAAK,CAAC,KAAAE,IAAAA,GAAAA,qBAAA,GAAI,CAAC,IAAI,CAC1C,CAAC,CAAA;AACH,SAAC,MAAM;AACLT,UAAAA,mBAAmB,CAACU,GAAG,CAACH,KAAK,EAAE,CAAC,CAAC,CAAA;AACnC,SAAA;AACF,OAAA;AACF,KAAA;AAEA,IAAA,OAAOP,mBAAmB,CAAA;AAC5B,GAAC,EACD;IACEY,GAAG,EACDC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,aAAa,IACtC,yBAAyB,GAAGtB,QAAQ;AACtCuB,IAAAA,KAAK,EAAEA,MAAA;AAAA,MAAA,IAAAC,qBAAA,CAAA;AAAA,MAAA,OAAA,CAAAA,qBAAA,GAAMzB,KAAK,CAAC0B,OAAO,CAACC,QAAQ,KAAAF,IAAAA,GAAAA,qBAAA,GAAIzB,KAAK,CAAC0B,OAAO,CAACE,UAAU,CAAA;AAAA,KAAA;IAC/DC,QAAQ,EAAEA,MAAM,EAAC;AACnB,GACF,CAAC,CAAA;AACL;;;;"}
1
+ {"version":3,"file":"getFacetedUniqueValues.js","sources":["../../../src/utils/getFacetedUniqueValues.ts"],"sourcesContent":["import { Table, RowData } from '../types'\nimport { getMemoOptions, memo } from '../utils'\n\nexport function getFacetedUniqueValues<TData extends RowData>(): (\n table: Table<TData>,\n columnId: string\n) => () => Map<any, number> {\n return (table, columnId) =>\n memo(\n () => [table.getColumn(columnId)?.getFacetedRowModel()],\n facetedRowModel => {\n if (!facetedRowModel) return new Map()\n\n let facetedUniqueValues = new Map<any, number>()\n\n for (let i = 0; i < facetedRowModel.flatRows.length; i++) {\n const values =\n facetedRowModel.flatRows[i]!.getUniqueValues<number>(columnId)\n\n for (let j = 0; j < values.length; j++) {\n const value = values[j]!\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\n return facetedUniqueValues\n },\n getMemoOptions(\n table.options,\n 'debugTable',\n `getFacetedUniqueValues_${columnId}`\n )\n )\n}\n"],"names":["getFacetedUniqueValues","table","columnId","memo","_table$getColumn","getColumn","getFacetedRowModel","facetedRowModel","Map","facetedUniqueValues","i","flatRows","length","values","getUniqueValues","j","value","has","_facetedUniqueValues$","set","get","getMemoOptions","options"],"mappings":";;;;;;;;;;;;;;AAGO,SAASA,sBAAsBA,GAGV;AAC1B,EAAA,OAAO,CAACC,KAAK,EAAEC,QAAQ,KACrBC,UAAI,CACF,MAAA;AAAA,IAAA,IAAAC,gBAAA,CAAA;AAAA,IAAA,OAAM,CAAAA,CAAAA,gBAAA,GAACH,KAAK,CAACI,SAAS,CAACH,QAAQ,CAAC,qBAAzBE,gBAAA,CAA2BE,kBAAkB,EAAE,CAAC,CAAA;AAAA,GAAA,EACvDC,eAAe,IAAI;AACjB,IAAA,IAAI,CAACA,eAAe,EAAE,OAAO,IAAIC,GAAG,EAAE,CAAA;AAEtC,IAAA,IAAIC,mBAAmB,GAAG,IAAID,GAAG,EAAe,CAAA;AAEhD,IAAA,KAAK,IAAIE,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGH,eAAe,CAACI,QAAQ,CAACC,MAAM,EAAEF,CAAC,EAAE,EAAE;AACxD,MAAA,MAAMG,MAAM,GACVN,eAAe,CAACI,QAAQ,CAACD,CAAC,CAAC,CAAEI,eAAe,CAASZ,QAAQ,CAAC,CAAA;AAEhE,MAAA,KAAK,IAAIa,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGF,MAAM,CAACD,MAAM,EAAEG,CAAC,EAAE,EAAE;AACtC,QAAA,MAAMC,KAAK,GAAGH,MAAM,CAACE,CAAC,CAAE,CAAA;AAExB,QAAA,IAAIN,mBAAmB,CAACQ,GAAG,CAACD,KAAK,CAAC,EAAE;AAAA,UAAA,IAAAE,qBAAA,CAAA;UAClCT,mBAAmB,CAACU,GAAG,CACrBH,KAAK,EACL,CAAAE,CAAAA,qBAAA,GAACT,mBAAmB,CAACW,GAAG,CAACJ,KAAK,CAAC,KAAAE,IAAAA,GAAAA,qBAAA,GAAI,CAAC,IAAI,CAC1C,CAAC,CAAA;AACH,SAAC,MAAM;AACLT,UAAAA,mBAAmB,CAACU,GAAG,CAACH,KAAK,EAAE,CAAC,CAAC,CAAA;AACnC,SAAA;AACF,OAAA;AACF,KAAA;AAEA,IAAA,OAAOP,mBAAmB,CAAA;AAC5B,GAAC,EACDY,oBAAc,CACZpB,KAAK,CAACqB,OAAO,EACb,YAAY,EACX,CAAA,uBAAA,EAAyBpB,QAAS,CAAA,CACrC,CACF,CAAC,CAAA;AACL;;;;"}
@@ -104,16 +104,7 @@ function getFilteredRowModel() {
104
104
 
105
105
  // Filter final rows using all of the active filters
106
106
  return filterRowsUtils.filterRows(rowModel.rows, filterRowsImpl, table);
107
- }, {
108
- key: process.env.NODE_ENV === 'development' && 'getFilteredRowModel',
109
- debug: () => {
110
- var _table$options$debugA;
111
- return (_table$options$debugA = table.options.debugAll) != null ? _table$options$debugA : table.options.debugTable;
112
- },
113
- onChange: () => {
114
- table._autoResetPageIndex();
115
- }
116
- });
107
+ }, utils.getMemoOptions(table.options, 'debugTable', 'getFilteredRowModel', () => table._autoResetPageIndex()));
117
108
  }
118
109
 
119
110
  exports.getFilteredRowModel = getFilteredRowModel;
@@ -1 +1 @@
1
- {"version":3,"file":"getFilteredRowModel.js","sources":["../../../src/utils/getFilteredRowModel.ts"],"sourcesContent":["import { ResolvedColumnFilter } from '../features/Filters'\nimport { Table, RowModel, Row, RowData } from '../types'\nimport { memo } from '../utils'\nimport { filterRows } from './filterRowsUtils'\n\nexport function getFilteredRowModel<TData extends RowData>(): (\n table: Table<TData>\n) => () => RowModel<TData> {\n return table =>\n memo(\n () => [\n table.getPreFilteredRowModel(),\n table.getState().columnFilters,\n table.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<TData>[] = []\n const resolvedGlobalFilters: ResolvedColumnFilter<TData>[] = []\n\n ;(columnFilters ?? []).forEach(d => {\n const column = table.getColumn(d.id)\n\n if (!column) {\n return\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 = table.getGlobalFilterFn()\n\n const globallyFilterableColumns = table\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<TData>) => {\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, table)\n },\n {\n key: process.env.NODE_ENV === 'development' && 'getFilteredRowModel',\n debug: () => table.options.debugAll ?? table.options.debugTable,\n onChange: () => {\n table._autoResetPageIndex()\n },\n }\n )\n}\n"],"names":["getFilteredRowModel","table","memo","getPreFilteredRowModel","getState","columnFilters","globalFilter","rowModel","rows","length","i","flatRows","columnFiltersMeta","resolvedColumnFilters","resolvedGlobalFilters","forEach","d","_filterFn$resolveFilt","column","getColumn","id","filterFn","getFilterFn","process","env","NODE_ENV","console","warn","push","resolvedValue","resolveFilterValue","value","filterableIds","map","globalFilterFn","getGlobalFilterFn","globallyFilterableColumns","getAllLeafColumns","filter","getCanGlobalFilter","_globalFilterFn$resol","currentColumnFilter","currentGlobalFilter","j","row","filterMeta","__global__","filterRowsImpl","filterRows","key","debug","_table$options$debugA","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 { Table, RowModel, Row, RowData } from '../types'\nimport { getMemoOptions, memo } from '../utils'\nimport { filterRows } from './filterRowsUtils'\n\nexport function getFilteredRowModel<TData extends RowData>(): (\n table: Table<TData>\n) => () => RowModel<TData> {\n return table =>\n memo(\n () => [\n table.getPreFilteredRowModel(),\n table.getState().columnFilters,\n table.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<TData>[] = []\n const resolvedGlobalFilters: ResolvedColumnFilter<TData>[] = []\n\n ;(columnFilters ?? []).forEach(d => {\n const column = table.getColumn(d.id)\n\n if (!column) {\n return\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 = table.getGlobalFilterFn()\n\n const globallyFilterableColumns = table\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<TData>) => {\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, table)\n },\n getMemoOptions(table.options, 'debugTable', 'getFilteredRowModel', () =>\n table._autoResetPageIndex()\n )\n )\n}\n"],"names":["getFilteredRowModel","table","memo","getPreFilteredRowModel","getState","columnFilters","globalFilter","rowModel","rows","length","i","flatRows","columnFiltersMeta","resolvedColumnFilters","resolvedGlobalFilters","forEach","d","_filterFn$resolveFilt","column","getColumn","id","filterFn","getFilterFn","process","env","NODE_ENV","console","warn","push","resolvedValue","resolveFilterValue","value","filterableIds","map","globalFilterFn","getGlobalFilterFn","globallyFilterableColumns","getAllLeafColumns","filter","getCanGlobalFilter","_globalFilterFn$resol","currentColumnFilter","currentGlobalFilter","j","row","filterMeta","__global__","filterRowsImpl","filterRows","getMemoOptions","options","_autoResetPageIndex"],"mappings":"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"}
@@ -125,19 +125,12 @@ function getGroupedRowModel() {
125
125
  flatRows: groupedFlatRows,
126
126
  rowsById: groupedRowsById
127
127
  };
128
- }, {
129
- key: process.env.NODE_ENV === 'development' && 'getGroupedRowModel',
130
- debug: () => {
131
- var _table$options$debugA;
132
- return (_table$options$debugA = table.options.debugAll) != null ? _table$options$debugA : table.options.debugTable;
133
- },
134
- onChange: () => {
135
- table._queue(() => {
136
- table._autoResetExpanded();
137
- table._autoResetPageIndex();
138
- });
139
- }
140
- });
128
+ }, utils.getMemoOptions(table.options, 'debugTable', 'getGroupedRowModel', () => {
129
+ table._queue(() => {
130
+ table._autoResetExpanded();
131
+ table._autoResetPageIndex();
132
+ });
133
+ }));
141
134
  }
142
135
  function groupBy(rows, columnId) {
143
136
  const groupMap = new Map();
@@ -1 +1 @@
1
- {"version":3,"file":"getGroupedRowModel.js","sources":["../../../src/utils/getGroupedRowModel.ts"],"sourcesContent":["import { createRow } from '../core/row'\nimport { Table, Row, RowModel, RowData } from '../types'\nimport { flattenBy, memo } from '../utils'\n\nexport function getGroupedRowModel<TData extends RowData>(): (\n table: Table<TData>\n) => () => RowModel<TData> {\n return table =>\n memo(\n () => [table.getState().grouping, table.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 table.getColumn(columnId)\n )\n\n const groupedFlatRows: Row<TData>[] = []\n const groupedRowsById: Record<string, Row<TData>> = {}\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<TData>[],\n depth = 0,\n parentId?: string\n ) => {\n // Grouping depth has been been met\n // Stop grouping and simply rewrite thd depth and row relationships\n if (depth >= existingGrouping.length) {\n return rows.map(row => {\n row.depth = depth\n\n groupedFlatRows.push(row)\n groupedRowsById[row.id] = row\n\n if (row.subRows) {\n row.subRows = groupUpRecursively(row.subRows, depth + 1, row.id)\n }\n\n return row\n })\n }\n\n const columnId: string = 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(\n table,\n id,\n leafRows[0]!.original,\n index,\n depth,\n undefined,\n parentId\n )\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 = table.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: () => table.options.debugAll ?? table.options.debugTable,\n onChange: () => {\n table._queue(() => {\n table._autoResetExpanded()\n table._autoResetPageIndex()\n })\n },\n }\n )\n}\n\nfunction groupBy<TData extends RowData>(rows: Row<TData>[], columnId: string) {\n const groupMap = new Map<any, Row<TData>[]>()\n\n return rows.reduce((map, row) => {\n const resKey = `${row.getGroupingValue(columnId)}`\n const previous = map.get(resKey)\n if (!previous) {\n map.set(resKey, [row])\n } else {\n previous.push(row)\n }\n return map\n }, groupMap)\n}\n"],"names":["getGroupedRowModel","table","memo","getState","grouping","getPreGroupedRowModel","rowModel","rows","length","existingGrouping","filter","columnId","getColumn","groupedFlatRows","groupedRowsById","groupUpRecursively","depth","parentId","map","row","push","id","subRows","rowGroupsMap","groupBy","aggregatedGroupedRows","Array","from","entries","_ref","index","groupingValue","groupedRows","leafRows","flattenBy","createRow","original","undefined","Object","assign","groupingColumnId","getValue","includes","_valuesCache","hasOwnProperty","_groupedRows$0$getVal","_groupingValuesCache","column","aggregateFn","getAggregationFn","forEach","subRow","flatRows","rowsById","key","process","env","NODE_ENV","debug","_table$options$debugA","options","debugAll","debugTable","onChange","_queue","_autoResetExpanded","_autoResetPageIndex","groupMap","Map","reduce","resKey","getGroupingValue","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 { Table, Row, RowModel, RowData } from '../types'\nimport { flattenBy, getMemoOptions, memo } from '../utils'\n\nexport function getGroupedRowModel<TData extends RowData>(): (\n table: Table<TData>\n) => () => RowModel<TData> {\n return table =>\n memo(\n () => [table.getState().grouping, table.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 table.getColumn(columnId)\n )\n\n const groupedFlatRows: Row<TData>[] = []\n const groupedRowsById: Record<string, Row<TData>> = {}\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<TData>[],\n depth = 0,\n parentId?: string\n ) => {\n // Grouping depth has been been met\n // Stop grouping and simply rewrite thd depth and row relationships\n if (depth >= existingGrouping.length) {\n return rows.map(row => {\n row.depth = depth\n\n groupedFlatRows.push(row)\n groupedRowsById[row.id] = row\n\n if (row.subRows) {\n row.subRows = groupUpRecursively(row.subRows, depth + 1, row.id)\n }\n\n return row\n })\n }\n\n const columnId: string = 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(\n table,\n id,\n leafRows[0]!.original,\n index,\n depth,\n undefined,\n parentId\n )\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 = table.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 getMemoOptions(table.options, 'debugTable', 'getGroupedRowModel', () => {\n table._queue(() => {\n table._autoResetExpanded()\n table._autoResetPageIndex()\n })\n })\n )\n}\n\nfunction groupBy<TData extends RowData>(rows: Row<TData>[], columnId: string) {\n const groupMap = new Map<any, Row<TData>[]>()\n\n return rows.reduce((map, row) => {\n const resKey = `${row.getGroupingValue(columnId)}`\n const previous = map.get(resKey)\n if (!previous) {\n map.set(resKey, [row])\n } else {\n previous.push(row)\n }\n return map\n }, groupMap)\n}\n"],"names":["getGroupedRowModel","table","memo","getState","grouping","getPreGroupedRowModel","rowModel","rows","length","existingGrouping","filter","columnId","getColumn","groupedFlatRows","groupedRowsById","groupUpRecursively","depth","parentId","map","row","push","id","subRows","rowGroupsMap","groupBy","aggregatedGroupedRows","Array","from","entries","_ref","index","groupingValue","groupedRows","leafRows","flattenBy","createRow","original","undefined","Object","assign","groupingColumnId","getValue","includes","_valuesCache","hasOwnProperty","_groupedRows$0$getVal","_groupingValuesCache","column","aggregateFn","getAggregationFn","forEach","subRow","flatRows","rowsById","getMemoOptions","options","_queue","_autoResetExpanded","_autoResetPageIndex","groupMap","Map","reduce","resKey","getGroupingValue","previous","get","set"],"mappings":";;;;;;;;;;;;;;;AAIO,SAASA,kBAAkBA,GAEP;EACzB,OAAOC,KAAK,IACVC,UAAI,CACF,MAAM,CAACD,KAAK,CAACE,QAAQ,EAAE,CAACC,QAAQ,EAAEH,KAAK,CAACI,qBAAqB,EAAE,CAAC,EAChE,CAACD,QAAQ,EAAEE,QAAQ,KAAK;IACtB,IAAI,CAACA,QAAQ,CAACC,IAAI,CAACC,MAAM,IAAI,CAACJ,QAAQ,CAACI,MAAM,EAAE;AAC7C,MAAA,OAAOF,QAAQ,CAAA;AACjB,KAAA;;AAEA;AACA,IAAA,MAAMG,gBAAgB,GAAGL,QAAQ,CAACM,MAAM,CAACC,QAAQ,IAC/CV,KAAK,CAACW,SAAS,CAACD,QAAQ,CAC1B,CAAC,CAAA;IAED,MAAME,eAA6B,GAAG,EAAE,CAAA;IACxC,MAAMC,eAA2C,GAAG,EAAE,CAAA;AACtD;AACA;AACA;AACA;;AAEA;IACA,MAAMC,kBAAkB,GAAG,UACzBR,IAAkB,EAClBS,KAAK,EACLC,QAAiB,EACd;AAAA,MAAA,IAFHD,KAAK,KAAA,KAAA,CAAA,EAAA;AAALA,QAAAA,KAAK,GAAG,CAAC,CAAA;AAAA,OAAA;AAGT;AACA;AACA,MAAA,IAAIA,KAAK,IAAIP,gBAAgB,CAACD,MAAM,EAAE;AACpC,QAAA,OAAOD,IAAI,CAACW,GAAG,CAACC,GAAG,IAAI;UACrBA,GAAG,CAACH,KAAK,GAAGA,KAAK,CAAA;AAEjBH,UAAAA,eAAe,CAACO,IAAI,CAACD,GAAG,CAAC,CAAA;AACzBL,UAAAA,eAAe,CAACK,GAAG,CAACE,EAAE,CAAC,GAAGF,GAAG,CAAA;UAE7B,IAAIA,GAAG,CAACG,OAAO,EAAE;AACfH,YAAAA,GAAG,CAACG,OAAO,GAAGP,kBAAkB,CAACI,GAAG,CAACG,OAAO,EAAEN,KAAK,GAAG,CAAC,EAAEG,GAAG,CAACE,EAAE,CAAC,CAAA;AAClE,WAAA;AAEA,UAAA,OAAOF,GAAG,CAAA;AACZ,SAAC,CAAC,CAAA;AACJ,OAAA;AAEA,MAAA,MAAMR,QAAgB,GAAGF,gBAAgB,CAACO,KAAK,CAAE,CAAA;;AAEjD;AACA,MAAA,MAAMO,YAAY,GAAGC,OAAO,CAACjB,IAAI,EAAEI,QAAQ,CAAC,CAAA;;AAE5C;AACA,MAAA,MAAMc,qBAAqB,GAAGC,KAAK,CAACC,IAAI,CAACJ,YAAY,CAACK,OAAO,EAAE,CAAC,CAACV,GAAG,CAClE,CAAAW,IAAA,EAA+BC,KAAK,KAAK;AAAA,QAAA,IAAxC,CAACC,aAAa,EAAEC,WAAW,CAAC,GAAAH,IAAA,CAAA;AAC3B,QAAA,IAAIR,EAAE,GAAI,CAAA,EAAEV,QAAS,CAAA,CAAA,EAAGoB,aAAc,CAAC,CAAA,CAAA;QACvCV,EAAE,GAAGJ,QAAQ,GAAI,CAAA,EAAEA,QAAS,CAAGI,CAAAA,EAAAA,EAAG,CAAC,CAAA,GAAGA,EAAE,CAAA;;AAExC;QACA,MAAMC,OAAO,GAAGP,kBAAkB,CAACiB,WAAW,EAAEhB,KAAK,GAAG,CAAC,EAAEK,EAAE,CAAC,CAAA;;AAE9D;AACA,QAAA,MAAMY,QAAQ,GAAGjB,KAAK,GAClBkB,eAAS,CAACF,WAAW,EAAEb,GAAG,IAAIA,GAAG,CAACG,OAAO,CAAC,GAC1CU,WAAW,CAAA;QAEf,MAAMb,KAAG,GAAGgB,aAAS,CACnBlC,KAAK,EACLoB,EAAE,EACFY,QAAQ,CAAC,CAAC,CAAC,CAAEG,QAAQ,EACrBN,KAAK,EACLd,KAAK,EACLqB,SAAS,EACTpB,QACF,CAAC,CAAA;AAEDqB,QAAAA,MAAM,CAACC,MAAM,CAACpB,KAAG,EAAE;AACjBqB,UAAAA,gBAAgB,EAAE7B,QAAQ;UAC1BoB,aAAa;UACbT,OAAO;UACPW,QAAQ;UACRQ,QAAQ,EAAG9B,QAAgB,IAAK;AAC9B;AACA,YAAA,IAAIF,gBAAgB,CAACiC,QAAQ,CAAC/B,QAAQ,CAAC,EAAE;cACvC,IAAIQ,KAAG,CAACwB,YAAY,CAACC,cAAc,CAACjC,QAAQ,CAAC,EAAE;AAC7C,gBAAA,OAAOQ,KAAG,CAACwB,YAAY,CAAChC,QAAQ,CAAC,CAAA;AACnC,eAAA;AAEA,cAAA,IAAIqB,WAAW,CAAC,CAAC,CAAC,EAAE;AAAA,gBAAA,IAAAa,qBAAA,CAAA;gBAClB1B,KAAG,CAACwB,YAAY,CAAChC,QAAQ,CAAC,GAAAkC,CAAAA,qBAAA,GACxBb,WAAW,CAAC,CAAC,CAAC,CAACS,QAAQ,CAAC9B,QAAQ,CAAC,KAAAkC,IAAAA,GAAAA,qBAAA,GAAIR,SAAS,CAAA;AAClD,eAAA;AAEA,cAAA,OAAOlB,KAAG,CAACwB,YAAY,CAAChC,QAAQ,CAAC,CAAA;AACnC,aAAA;YAEA,IAAIQ,KAAG,CAAC2B,oBAAoB,CAACF,cAAc,CAACjC,QAAQ,CAAC,EAAE;AACrD,cAAA,OAAOQ,KAAG,CAAC2B,oBAAoB,CAACnC,QAAQ,CAAC,CAAA;AAC3C,aAAA;;AAEA;AACA,YAAA,MAAMoC,MAAM,GAAG9C,KAAK,CAACW,SAAS,CAACD,QAAQ,CAAC,CAAA;YACxC,MAAMqC,WAAW,GAAGD,MAAM,IAAA,IAAA,GAAA,KAAA,CAAA,GAANA,MAAM,CAAEE,gBAAgB,EAAE,CAAA;AAE9C,YAAA,IAAID,WAAW,EAAE;AACf7B,cAAAA,KAAG,CAAC2B,oBAAoB,CAACnC,QAAQ,CAAC,GAAGqC,WAAW,CAC9CrC,QAAQ,EACRsB,QAAQ,EACRD,WACF,CAAC,CAAA;AAED,cAAA,OAAOb,KAAG,CAAC2B,oBAAoB,CAACnC,QAAQ,CAAC,CAAA;AAC3C,aAAA;AACF,WAAA;AACF,SAAC,CAAC,CAAA;AAEFW,QAAAA,OAAO,CAAC4B,OAAO,CAACC,MAAM,IAAI;AACxBtC,UAAAA,eAAe,CAACO,IAAI,CAAC+B,MAAM,CAAC,CAAA;AAC5BrC,UAAAA,eAAe,CAACqC,MAAM,CAAC9B,EAAE,CAAC,GAAG8B,MAAM,CAAA;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACF,SAAC,CAAC,CAAA;AAEF,QAAA,OAAOhC,KAAG,CAAA;AACZ,OACF,CAAC,CAAA;AAED,MAAA,OAAOM,qBAAqB,CAAA;KAC7B,CAAA;IAED,MAAMO,WAAW,GAAGjB,kBAAkB,CAACT,QAAQ,CAACC,IAAI,EAAE,CAAC,CAAC,CAAA;AAExDyB,IAAAA,WAAW,CAACkB,OAAO,CAACC,MAAM,IAAI;AAC5BtC,MAAAA,eAAe,CAACO,IAAI,CAAC+B,MAAM,CAAC,CAAA;AAC5BrC,MAAAA,eAAe,CAACqC,MAAM,CAAC9B,EAAE,CAAC,GAAG8B,MAAM,CAAA;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACF,KAAC,CAAC,CAAA;IAEF,OAAO;AACL5C,MAAAA,IAAI,EAAEyB,WAAW;AACjBoB,MAAAA,QAAQ,EAAEvC,eAAe;AACzBwC,MAAAA,QAAQ,EAAEvC,eAAAA;KACX,CAAA;GACF,EACDwC,oBAAc,CAACrD,KAAK,CAACsD,OAAO,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM;IACtEtD,KAAK,CAACuD,MAAM,CAAC,MAAM;MACjBvD,KAAK,CAACwD,kBAAkB,EAAE,CAAA;MAC1BxD,KAAK,CAACyD,mBAAmB,EAAE,CAAA;AAC7B,KAAC,CAAC,CAAA;AACJ,GAAC,CACH,CAAC,CAAA;AACL,CAAA;AAEA,SAASlC,OAAOA,CAAwBjB,IAAkB,EAAEI,QAAgB,EAAE;AAC5E,EAAA,MAAMgD,QAAQ,GAAG,IAAIC,GAAG,EAAqB,CAAA;EAE7C,OAAOrD,IAAI,CAACsD,MAAM,CAAC,CAAC3C,GAAG,EAAEC,GAAG,KAAK;IAC/B,MAAM2C,MAAM,GAAI,CAAE3C,EAAAA,GAAG,CAAC4C,gBAAgB,CAACpD,QAAQ,CAAE,CAAC,CAAA,CAAA;AAClD,IAAA,MAAMqD,QAAQ,GAAG9C,GAAG,CAAC+C,GAAG,CAACH,MAAM,CAAC,CAAA;IAChC,IAAI,CAACE,QAAQ,EAAE;MACb9C,GAAG,CAACgD,GAAG,CAACJ,MAAM,EAAE,CAAC3C,GAAG,CAAC,CAAC,CAAA;AACxB,KAAC,MAAM;AACL6C,MAAAA,QAAQ,CAAC5C,IAAI,CAACD,GAAG,CAAC,CAAA;AACpB,KAAA;AACA,IAAA,OAAOD,GAAG,CAAA;GACX,EAAEyC,QAAQ,CAAC,CAAA;AACd;;;;"}
@@ -53,13 +53,7 @@ function getPaginationRowModel(opts) {
53
53
  };
54
54
  paginatedRowModel.rows.forEach(handleRow);
55
55
  return paginatedRowModel;
56
- }, {
57
- key: process.env.NODE_ENV === 'development' && 'getPaginationRowModel',
58
- debug: () => {
59
- var _table$options$debugA;
60
- return (_table$options$debugA = table.options.debugAll) != null ? _table$options$debugA : table.options.debugTable;
61
- }
62
- });
56
+ }, utils.getMemoOptions(table.options, 'debugTable', 'getPaginationRowModel'));
63
57
  }
64
58
 
65
59
  exports.getPaginationRowModel = getPaginationRowModel;
@@ -1 +1 @@
1
- {"version":3,"file":"getPaginationRowModel.js","sources":["../../../src/utils/getPaginationRowModel.ts"],"sourcesContent":["import { Table, RowModel, Row, RowData } from '../types'\nimport { memo } from '../utils'\nimport { expandRows } from './getExpandedRowModel'\n\nexport function getPaginationRowModel<TData extends RowData>(opts?: {\n initialSync: boolean\n}): (table: Table<TData>) => () => RowModel<TData> {\n return table =>\n memo(\n () => [\n table.getState().pagination,\n table.getPrePaginationRowModel(),\n table.options.paginateExpandedRows\n ? undefined\n : table.getState().expanded,\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<TData>\n\n if (!table.options.paginateExpandedRows) {\n paginatedRowModel = expandRows({\n rows,\n flatRows,\n rowsById,\n })\n } else {\n paginatedRowModel = {\n rows,\n flatRows,\n rowsById,\n }\n }\n\n paginatedRowModel.flatRows = []\n\n const handleRow = (row: Row<TData>) => {\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: () => table.options.debugAll ?? table.options.debugTable,\n }\n )\n}\n"],"names":["getPaginationRowModel","opts","table","memo","getState","pagination","getPrePaginationRowModel","options","paginateExpandedRows","undefined","expanded","rowModel","rows","length","pageSize","pageIndex","flatRows","rowsById","pageStart","pageEnd","slice","paginatedRowModel","expandRows","handleRow","row","push","subRows","forEach","key","process","env","NODE_ENV","debug","_table$options$debugA","debugAll","debugTable"],"mappings":";;;;;;;;;;;;;;;AAIO,SAASA,qBAAqBA,CAAwBC,IAE5D,EAAkD;AACjD,EAAA,OAAOC,KAAK,IACVC,UAAI,CACF,MAAM,CACJD,KAAK,CAACE,QAAQ,EAAE,CAACC,UAAU,EAC3BH,KAAK,CAACI,wBAAwB,EAAE,EAChCJ,KAAK,CAACK,OAAO,CAACC,oBAAoB,GAC9BC,SAAS,GACTP,KAAK,CAACE,QAAQ,EAAE,CAACM,QAAQ,CAC9B,EACD,CAACL,UAAU,EAAEM,QAAQ,KAAK;AACxB,IAAA,IAAI,CAACA,QAAQ,CAACC,IAAI,CAACC,MAAM,EAAE;AACzB,MAAA,OAAOF,QAAQ,CAAA;AACjB,KAAA;IAEA,MAAM;MAAEG,QAAQ;AAAEC,MAAAA,SAAAA;AAAU,KAAC,GAAGV,UAAU,CAAA;IAC1C,IAAI;MAAEO,IAAI;MAAEI,QAAQ;AAAEC,MAAAA,QAAAA;AAAS,KAAC,GAAGN,QAAQ,CAAA;AAC3C,IAAA,MAAMO,SAAS,GAAGJ,QAAQ,GAAGC,SAAS,CAAA;AACtC,IAAA,MAAMI,OAAO,GAAGD,SAAS,GAAGJ,QAAQ,CAAA;IAEpCF,IAAI,GAAGA,IAAI,CAACQ,KAAK,CAACF,SAAS,EAAEC,OAAO,CAAC,CAAA;AAErC,IAAA,IAAIE,iBAAkC,CAAA;AAEtC,IAAA,IAAI,CAACnB,KAAK,CAACK,OAAO,CAACC,oBAAoB,EAAE;MACvCa,iBAAiB,GAAGC,8BAAU,CAAC;QAC7BV,IAAI;QACJI,QAAQ;AACRC,QAAAA,QAAAA;AACF,OAAC,CAAC,CAAA;AACJ,KAAC,MAAM;AACLI,MAAAA,iBAAiB,GAAG;QAClBT,IAAI;QACJI,QAAQ;AACRC,QAAAA,QAAAA;OACD,CAAA;AACH,KAAA;IAEAI,iBAAiB,CAACL,QAAQ,GAAG,EAAE,CAAA;IAE/B,MAAMO,SAAS,GAAIC,GAAe,IAAK;AACrCH,MAAAA,iBAAiB,CAACL,QAAQ,CAACS,IAAI,CAACD,GAAG,CAAC,CAAA;AACpC,MAAA,IAAIA,GAAG,CAACE,OAAO,CAACb,MAAM,EAAE;AACtBW,QAAAA,GAAG,CAACE,OAAO,CAACC,OAAO,CAACJ,SAAS,CAAC,CAAA;AAChC,OAAA;KACD,CAAA;AAEDF,IAAAA,iBAAiB,CAACT,IAAI,CAACe,OAAO,CAACJ,SAAS,CAAC,CAAA;AAEzC,IAAA,OAAOF,iBAAiB,CAAA;AAC1B,GAAC,EACD;IACEO,GAAG,EAAEC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,aAAa,IAAI,uBAAuB;AACtEC,IAAAA,KAAK,EAAEA,MAAA;AAAA,MAAA,IAAAC,qBAAA,CAAA;AAAA,MAAA,OAAA,CAAAA,qBAAA,GAAM/B,KAAK,CAACK,OAAO,CAAC2B,QAAQ,KAAAD,IAAAA,GAAAA,qBAAA,GAAI/B,KAAK,CAACK,OAAO,CAAC4B,UAAU,CAAA;AAAA,KAAA;AACjE,GACF,CAAC,CAAA;AACL;;;;"}
1
+ {"version":3,"file":"getPaginationRowModel.js","sources":["../../../src/utils/getPaginationRowModel.ts"],"sourcesContent":["import { Table, RowModel, Row, RowData } from '../types'\nimport { getMemoOptions, memo } from '../utils'\nimport { expandRows } from './getExpandedRowModel'\n\nexport function getPaginationRowModel<TData extends RowData>(opts?: {\n initialSync: boolean\n}): (table: Table<TData>) => () => RowModel<TData> {\n return table =>\n memo(\n () => [\n table.getState().pagination,\n table.getPrePaginationRowModel(),\n table.options.paginateExpandedRows\n ? undefined\n : table.getState().expanded,\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<TData>\n\n if (!table.options.paginateExpandedRows) {\n paginatedRowModel = expandRows({\n rows,\n flatRows,\n rowsById,\n })\n } else {\n paginatedRowModel = {\n rows,\n flatRows,\n rowsById,\n }\n }\n\n paginatedRowModel.flatRows = []\n\n const handleRow = (row: Row<TData>) => {\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 getMemoOptions(table.options, 'debugTable', 'getPaginationRowModel')\n )\n}\n"],"names":["getPaginationRowModel","opts","table","memo","getState","pagination","getPrePaginationRowModel","options","paginateExpandedRows","undefined","expanded","rowModel","rows","length","pageSize","pageIndex","flatRows","rowsById","pageStart","pageEnd","slice","paginatedRowModel","expandRows","handleRow","row","push","subRows","forEach","getMemoOptions"],"mappings":";;;;;;;;;;;;;;;AAIO,SAASA,qBAAqBA,CAAwBC,IAE5D,EAAkD;AACjD,EAAA,OAAOC,KAAK,IACVC,UAAI,CACF,MAAM,CACJD,KAAK,CAACE,QAAQ,EAAE,CAACC,UAAU,EAC3BH,KAAK,CAACI,wBAAwB,EAAE,EAChCJ,KAAK,CAACK,OAAO,CAACC,oBAAoB,GAC9BC,SAAS,GACTP,KAAK,CAACE,QAAQ,EAAE,CAACM,QAAQ,CAC9B,EACD,CAACL,UAAU,EAAEM,QAAQ,KAAK;AACxB,IAAA,IAAI,CAACA,QAAQ,CAACC,IAAI,CAACC,MAAM,EAAE;AACzB,MAAA,OAAOF,QAAQ,CAAA;AACjB,KAAA;IAEA,MAAM;MAAEG,QAAQ;AAAEC,MAAAA,SAAAA;AAAU,KAAC,GAAGV,UAAU,CAAA;IAC1C,IAAI;MAAEO,IAAI;MAAEI,QAAQ;AAAEC,MAAAA,QAAAA;AAAS,KAAC,GAAGN,QAAQ,CAAA;AAC3C,IAAA,MAAMO,SAAS,GAAGJ,QAAQ,GAAGC,SAAS,CAAA;AACtC,IAAA,MAAMI,OAAO,GAAGD,SAAS,GAAGJ,QAAQ,CAAA;IAEpCF,IAAI,GAAGA,IAAI,CAACQ,KAAK,CAACF,SAAS,EAAEC,OAAO,CAAC,CAAA;AAErC,IAAA,IAAIE,iBAAkC,CAAA;AAEtC,IAAA,IAAI,CAACnB,KAAK,CAACK,OAAO,CAACC,oBAAoB,EAAE;MACvCa,iBAAiB,GAAGC,8BAAU,CAAC;QAC7BV,IAAI;QACJI,QAAQ;AACRC,QAAAA,QAAAA;AACF,OAAC,CAAC,CAAA;AACJ,KAAC,MAAM;AACLI,MAAAA,iBAAiB,GAAG;QAClBT,IAAI;QACJI,QAAQ;AACRC,QAAAA,QAAAA;OACD,CAAA;AACH,KAAA;IAEAI,iBAAiB,CAACL,QAAQ,GAAG,EAAE,CAAA;IAE/B,MAAMO,SAAS,GAAIC,GAAe,IAAK;AACrCH,MAAAA,iBAAiB,CAACL,QAAQ,CAACS,IAAI,CAACD,GAAG,CAAC,CAAA;AACpC,MAAA,IAAIA,GAAG,CAACE,OAAO,CAACb,MAAM,EAAE;AACtBW,QAAAA,GAAG,CAACE,OAAO,CAACC,OAAO,CAACJ,SAAS,CAAC,CAAA;AAChC,OAAA;KACD,CAAA;AAEDF,IAAAA,iBAAiB,CAACT,IAAI,CAACe,OAAO,CAACJ,SAAS,CAAC,CAAA;AAEzC,IAAA,OAAOF,iBAAiB,CAAA;GACzB,EACDO,oBAAc,CAAC1B,KAAK,CAACK,OAAO,EAAE,YAAY,EAAE,uBAAuB,CACrE,CAAC,CAAA;AACL;;;;"}
@@ -92,16 +92,7 @@ function getSortedRowModel() {
92
92
  flatRows: sortedFlatRows,
93
93
  rowsById: rowModel.rowsById
94
94
  };
95
- }, {
96
- key: process.env.NODE_ENV === 'development' && 'getSortedRowModel',
97
- debug: () => {
98
- var _table$options$debugA;
99
- return (_table$options$debugA = table.options.debugAll) != null ? _table$options$debugA : table.options.debugTable;
100
- },
101
- onChange: () => {
102
- table._autoResetPageIndex();
103
- }
104
- });
95
+ }, utils.getMemoOptions(table.options, 'debugTable', 'getSortedRowModel', () => table._autoResetPageIndex()));
105
96
  }
106
97
 
107
98
  exports.getSortedRowModel = getSortedRowModel;
@@ -1 +1 @@
1
- {"version":3,"file":"getSortedRowModel.js","sources":["../../../src/utils/getSortedRowModel.ts"],"sourcesContent":["import { Table, Row, RowModel, RowData } from '../types'\nimport { SortingFn } from '../features/Sorting'\nimport { memo } from '../utils'\n\nexport function getSortedRowModel<TData extends RowData>(): (\n table: Table<TData>\n) => () => RowModel<TData> {\n return table =>\n memo(\n () => [table.getState().sorting, table.getPreSortedRowModel()],\n (sorting, rowModel) => {\n if (!rowModel.rows.length || !sorting?.length) {\n return rowModel\n }\n\n const sortingState = table.getState().sorting\n\n const sortedFlatRows: Row<TData>[] = []\n\n // Filter out sortings that correspond to non existing columns\n const availableSorting = sortingState.filter(\n sort => table.getColumn(sort.id)?.getCanSort()\n )\n\n const columnInfoById: Record<\n string,\n {\n sortUndefined?: false | -1 | 1\n invertSorting?: boolean\n sortingFn: SortingFn<TData>\n }\n > = {}\n\n availableSorting.forEach(sortEntry => {\n const column = table.getColumn(sortEntry.id)\n if (!column) return\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<TData>[]) => {\n // This will also perform a stable sorting using the row index\n // if needed.\n const sortedData = rows.map(row => ({ ...row }))\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 let sortInt = 0\n\n // All sorting ints should always return in ascending order\n if (columnInfo.sortUndefined) {\n const aValue = rowA.getValue(sortEntry.id)\n const bValue = rowB.getValue(sortEntry.id)\n\n const aUndefined = aValue === undefined\n const bUndefined = bValue === undefined\n\n if (aUndefined || bUndefined) {\n sortInt =\n aUndefined && bUndefined\n ? 0\n : aUndefined\n ? columnInfo.sortUndefined\n : -columnInfo.sortUndefined\n }\n }\n\n if (sortInt === 0) {\n sortInt = columnInfo.sortingFn(rowA, rowB, sortEntry.id)\n }\n\n // If sorting is non-zero, take care of desc and inversion\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?.length) {\n row.subRows = sortData(row.subRows)\n }\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: () => table.options.debugAll ?? table.options.debugTable,\n onChange: () => {\n table._autoResetPageIndex()\n },\n }\n )\n}\n"],"names":["getSortedRowModel","table","memo","getState","sorting","getPreSortedRowModel","rowModel","rows","length","sortingState","sortedFlatRows","availableSorting","filter","sort","_table$getColumn","getColumn","id","getCanSort","columnInfoById","forEach","sortEntry","column","sortUndefined","columnDef","invertSorting","sortingFn","getSortingFn","sortData","sortedData","map","row","rowA","rowB","i","_sortEntry$desc","columnInfo","isDesc","desc","sortInt","aValue","getValue","bValue","aUndefined","undefined","bUndefined","index","_row$subRows","push","subRows","flatRows","rowsById","key","process","env","NODE_ENV","debug","_table$options$debugA","options","debugAll","debugTable","onChange","_autoResetPageIndex"],"mappings":";;;;;;;;;;;;;;AAIO,SAASA,iBAAiBA,GAEN;EACzB,OAAOC,KAAK,IACVC,UAAI,CACF,MAAM,CAACD,KAAK,CAACE,QAAQ,EAAE,CAACC,OAAO,EAAEH,KAAK,CAACI,oBAAoB,EAAE,CAAC,EAC9D,CAACD,OAAO,EAAEE,QAAQ,KAAK;AACrB,IAAA,IAAI,CAACA,QAAQ,CAACC,IAAI,CAACC,MAAM,IAAI,EAACJ,OAAO,IAAA,IAAA,IAAPA,OAAO,CAAEI,MAAM,CAAE,EAAA;AAC7C,MAAA,OAAOF,QAAQ,CAAA;AACjB,KAAA;IAEA,MAAMG,YAAY,GAAGR,KAAK,CAACE,QAAQ,EAAE,CAACC,OAAO,CAAA;IAE7C,MAAMM,cAA4B,GAAG,EAAE,CAAA;;AAEvC;AACA,IAAA,MAAMC,gBAAgB,GAAGF,YAAY,CAACG,MAAM,CAC1CC,IAAI,IAAA;AAAA,MAAA,IAAAC,gBAAA,CAAA;AAAA,MAAA,OAAA,CAAAA,gBAAA,GAAIb,KAAK,CAACc,SAAS,CAACF,IAAI,CAACG,EAAE,CAAC,KAAxBF,IAAAA,GAAAA,KAAAA,CAAAA,GAAAA,gBAAA,CAA0BG,UAAU,EAAE,CAAA;AAAA,KAChD,CAAC,CAAA;IAED,MAAMC,cAOL,GAAG,EAAE,CAAA;AAENP,IAAAA,gBAAgB,CAACQ,OAAO,CAACC,SAAS,IAAI;MACpC,MAAMC,MAAM,GAAGpB,KAAK,CAACc,SAAS,CAACK,SAAS,CAACJ,EAAE,CAAC,CAAA;MAC5C,IAAI,CAACK,MAAM,EAAE,OAAA;AAEbH,MAAAA,cAAc,CAACE,SAAS,CAACJ,EAAE,CAAC,GAAG;AAC7BM,QAAAA,aAAa,EAAED,MAAM,CAACE,SAAS,CAACD,aAAa;AAC7CE,QAAAA,aAAa,EAAEH,MAAM,CAACE,SAAS,CAACC,aAAa;AAC7CC,QAAAA,SAAS,EAAEJ,MAAM,CAACK,YAAY,EAAC;OAChC,CAAA;AACH,KAAC,CAAC,CAAA;IAEF,MAAMC,QAAQ,GAAIpB,IAAkB,IAAK;AACvC;AACA;AACA,MAAA,MAAMqB,UAAU,GAAGrB,IAAI,CAACsB,GAAG,CAACC,GAAG,KAAK;QAAE,GAAGA,GAAAA;AAAI,OAAC,CAAC,CAAC,CAAA;AAEhDF,MAAAA,UAAU,CAACf,IAAI,CAAC,CAACkB,IAAI,EAAEC,IAAI,KAAK;AAC9B,QAAA,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGtB,gBAAgB,CAACH,MAAM,EAAEyB,CAAC,IAAI,CAAC,EAAE;AAAA,UAAA,IAAAC,eAAA,CAAA;AACnD,UAAA,MAAMd,SAAS,GAAGT,gBAAgB,CAACsB,CAAC,CAAE,CAAA;AACtC,UAAA,MAAME,UAAU,GAAGjB,cAAc,CAACE,SAAS,CAACJ,EAAE,CAAE,CAAA;AAChD,UAAA,MAAMoB,MAAM,GAAA,CAAAF,eAAA,GAAGd,SAAS,IAAA,IAAA,GAAA,KAAA,CAAA,GAATA,SAAS,CAAEiB,IAAI,KAAA,IAAA,GAAAH,eAAA,GAAI,KAAK,CAAA;UAEvC,IAAII,OAAO,GAAG,CAAC,CAAA;;AAEf;UACA,IAAIH,UAAU,CAACb,aAAa,EAAE;YAC5B,MAAMiB,MAAM,GAAGR,IAAI,CAACS,QAAQ,CAACpB,SAAS,CAACJ,EAAE,CAAC,CAAA;YAC1C,MAAMyB,MAAM,GAAGT,IAAI,CAACQ,QAAQ,CAACpB,SAAS,CAACJ,EAAE,CAAC,CAAA;AAE1C,YAAA,MAAM0B,UAAU,GAAGH,MAAM,KAAKI,SAAS,CAAA;AACvC,YAAA,MAAMC,UAAU,GAAGH,MAAM,KAAKE,SAAS,CAAA;YAEvC,IAAID,UAAU,IAAIE,UAAU,EAAE;AAC5BN,cAAAA,OAAO,GACLI,UAAU,IAAIE,UAAU,GACpB,CAAC,GACDF,UAAU,GACRP,UAAU,CAACb,aAAa,GACxB,CAACa,UAAU,CAACb,aAAa,CAAA;AACnC,aAAA;AACF,WAAA;UAEA,IAAIgB,OAAO,KAAK,CAAC,EAAE;AACjBA,YAAAA,OAAO,GAAGH,UAAU,CAACV,SAAS,CAACM,IAAI,EAAEC,IAAI,EAAEZ,SAAS,CAACJ,EAAE,CAAC,CAAA;AAC1D,WAAA;;AAEA;UACA,IAAIsB,OAAO,KAAK,CAAC,EAAE;AACjB,YAAA,IAAIF,MAAM,EAAE;cACVE,OAAO,IAAI,CAAC,CAAC,CAAA;AACf,aAAA;YAEA,IAAIH,UAAU,CAACX,aAAa,EAAE;cAC5Bc,OAAO,IAAI,CAAC,CAAC,CAAA;AACf,aAAA;AAEA,YAAA,OAAOA,OAAO,CAAA;AAChB,WAAA;AACF,SAAA;AAEA,QAAA,OAAOP,IAAI,CAACc,KAAK,GAAGb,IAAI,CAACa,KAAK,CAAA;AAChC,OAAC,CAAC,CAAA;;AAEF;AACAjB,MAAAA,UAAU,CAACT,OAAO,CAACW,GAAG,IAAI;AAAA,QAAA,IAAAgB,YAAA,CAAA;AACxBpC,QAAAA,cAAc,CAACqC,IAAI,CAACjB,GAAG,CAAC,CAAA;QACxB,IAAAgB,CAAAA,YAAA,GAAIhB,GAAG,CAACkB,OAAO,KAAXF,IAAAA,IAAAA,YAAA,CAAatC,MAAM,EAAE;UACvBsB,GAAG,CAACkB,OAAO,GAAGrB,QAAQ,CAACG,GAAG,CAACkB,OAAO,CAAC,CAAA;AACrC,SAAA;AACF,OAAC,CAAC,CAAA;AAEF,MAAA,OAAOpB,UAAU,CAAA;KAClB,CAAA;IAED,OAAO;AACLrB,MAAAA,IAAI,EAAEoB,QAAQ,CAACrB,QAAQ,CAACC,IAAI,CAAC;AAC7B0C,MAAAA,QAAQ,EAAEvC,cAAc;MACxBwC,QAAQ,EAAE5C,QAAQ,CAAC4C,QAAAA;KACpB,CAAA;AACH,GAAC,EACD;IACEC,GAAG,EAAEC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,aAAa,IAAI,mBAAmB;AAClEC,IAAAA,KAAK,EAAEA,MAAA;AAAA,MAAA,IAAAC,qBAAA,CAAA;AAAA,MAAA,OAAA,CAAAA,qBAAA,GAAMvD,KAAK,CAACwD,OAAO,CAACC,QAAQ,KAAAF,IAAAA,GAAAA,qBAAA,GAAIvD,KAAK,CAACwD,OAAO,CAACE,UAAU,CAAA;AAAA,KAAA;IAC/DC,QAAQ,EAAEA,MAAM;MACd3D,KAAK,CAAC4D,mBAAmB,EAAE,CAAA;AAC7B,KAAA;AACF,GACF,CAAC,CAAA;AACL;;;;"}
1
+ {"version":3,"file":"getSortedRowModel.js","sources":["../../../src/utils/getSortedRowModel.ts"],"sourcesContent":["import { Table, Row, RowModel, RowData } from '../types'\nimport { SortingFn } from '../features/Sorting'\nimport { getMemoOptions, memo } from '../utils'\n\nexport function getSortedRowModel<TData extends RowData>(): (\n table: Table<TData>\n) => () => RowModel<TData> {\n return table =>\n memo(\n () => [table.getState().sorting, table.getPreSortedRowModel()],\n (sorting, rowModel) => {\n if (!rowModel.rows.length || !sorting?.length) {\n return rowModel\n }\n\n const sortingState = table.getState().sorting\n\n const sortedFlatRows: Row<TData>[] = []\n\n // Filter out sortings that correspond to non existing columns\n const availableSorting = sortingState.filter(\n sort => table.getColumn(sort.id)?.getCanSort()\n )\n\n const columnInfoById: Record<\n string,\n {\n sortUndefined?: false | -1 | 1\n invertSorting?: boolean\n sortingFn: SortingFn<TData>\n }\n > = {}\n\n availableSorting.forEach(sortEntry => {\n const column = table.getColumn(sortEntry.id)\n if (!column) return\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<TData>[]) => {\n // This will also perform a stable sorting using the row index\n // if needed.\n const sortedData = rows.map(row => ({ ...row }))\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 let sortInt = 0\n\n // All sorting ints should always return in ascending order\n if (columnInfo.sortUndefined) {\n const aValue = rowA.getValue(sortEntry.id)\n const bValue = rowB.getValue(sortEntry.id)\n\n const aUndefined = aValue === undefined\n const bUndefined = bValue === undefined\n\n if (aUndefined || bUndefined) {\n sortInt =\n aUndefined && bUndefined\n ? 0\n : aUndefined\n ? columnInfo.sortUndefined\n : -columnInfo.sortUndefined\n }\n }\n\n if (sortInt === 0) {\n sortInt = columnInfo.sortingFn(rowA, rowB, sortEntry.id)\n }\n\n // If sorting is non-zero, take care of desc and inversion\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?.length) {\n row.subRows = sortData(row.subRows)\n }\n })\n\n return sortedData\n }\n\n return {\n rows: sortData(rowModel.rows),\n flatRows: sortedFlatRows,\n rowsById: rowModel.rowsById,\n }\n },\n getMemoOptions(table.options, 'debugTable', 'getSortedRowModel', () =>\n table._autoResetPageIndex()\n )\n )\n}\n"],"names":["getSortedRowModel","table","memo","getState","sorting","getPreSortedRowModel","rowModel","rows","length","sortingState","sortedFlatRows","availableSorting","filter","sort","_table$getColumn","getColumn","id","getCanSort","columnInfoById","forEach","sortEntry","column","sortUndefined","columnDef","invertSorting","sortingFn","getSortingFn","sortData","sortedData","map","row","rowA","rowB","i","_sortEntry$desc","columnInfo","isDesc","desc","sortInt","aValue","getValue","bValue","aUndefined","undefined","bUndefined","index","_row$subRows","push","subRows","flatRows","rowsById","getMemoOptions","options","_autoResetPageIndex"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { TableState, Updater } from './types';
1
+ import { TableOptionsResolved, TableState, Updater } from './types';
2
2
  export type PartialKeys<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;
3
3
  export type RequiredKeys<T, K extends keyof T> = Omit<T, K> & Required<Pick<T, K>>;
4
4
  export type Overwrite<T, U extends {
@@ -25,9 +25,14 @@ type AnyFunction = (...args: any) => any;
25
25
  export declare function isFunction<T extends AnyFunction>(d: any): d is T;
26
26
  export declare function isNumberArray(d: any): d is number[];
27
27
  export declare function flattenBy<TNode>(arr: TNode[], getChildren: (item: TNode) => TNode[]): TNode[];
28
- export declare function memo<TDeps extends readonly any[], TResult>(getDeps: () => [...TDeps], fn: (...args: NoInfer<[...TDeps]>) => TResult, opts: {
28
+ export declare function memo<TDeps extends readonly any[], TDepArgs, TResult>(getDeps: (depArgs?: TDepArgs) => [...TDeps], fn: (...args: NoInfer<[...TDeps]>) => TResult, opts: {
29
29
  key: any;
30
30
  debug?: () => any;
31
31
  onChange?: (result: TResult) => void;
32
- }): () => TResult;
32
+ }): (depArgs?: TDepArgs) => TResult;
33
+ export declare function getMemoOptions(tableOptions: Partial<TableOptionsResolved<any>>, debugLevel: 'debugAll' | 'debugCells' | 'debugTable' | 'debugColumns' | 'debugRows' | 'debugHeaders', key: string, onChange?: (result: any) => void): {
34
+ debug: () => boolean | undefined;
35
+ key: string | false;
36
+ onChange: ((result: any) => void) | undefined;
37
+ };
33
38
  export {};
@@ -55,10 +55,10 @@ function flattenBy(arr, getChildren) {
55
55
  function memo(getDeps, fn, opts) {
56
56
  let deps = [];
57
57
  let result;
58
- return () => {
58
+ return depArgs => {
59
59
  let depTime;
60
60
  if (opts.key && opts.debug) depTime = Date.now();
61
- const newDeps = getDeps();
61
+ const newDeps = getDeps(depArgs);
62
62
  const depsChanged = newDeps.length !== deps.length || newDeps.some((dep, index) => deps[index] !== dep);
63
63
  if (!depsChanged) {
64
64
  return result;
@@ -89,9 +89,20 @@ function memo(getDeps, fn, opts) {
89
89
  return result;
90
90
  };
91
91
  }
92
+ function getMemoOptions(tableOptions, debugLevel, key, onChange) {
93
+ return {
94
+ debug: () => {
95
+ var _tableOptions$debugAl;
96
+ return (_tableOptions$debugAl = tableOptions == null ? void 0 : tableOptions.debugAll) != null ? _tableOptions$debugAl : tableOptions[debugLevel];
97
+ },
98
+ key: process.env.NODE_ENV === 'development' && key,
99
+ onChange
100
+ };
101
+ }
92
102
 
93
103
  exports.flattenBy = flattenBy;
94
104
  exports.functionalUpdate = functionalUpdate;
105
+ exports.getMemoOptions = getMemoOptions;
95
106
  exports.isFunction = isFunction;
96
107
  exports.isNumberArray = isNumberArray;
97
108
  exports.makeStateUpdater = makeStateUpdater;