@tanstack/table-core 8.11.2 → 8.11.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/LICENSE +21 -0
  2. package/build/lib/aggregationFns.js +9 -11
  3. package/build/lib/aggregationFns.js.map +1 -1
  4. package/build/lib/columnHelper.js +9 -11
  5. package/build/lib/columnHelper.js.map +1 -1
  6. package/build/lib/core/cell.js +9 -11
  7. package/build/lib/core/cell.js.map +1 -1
  8. package/build/lib/core/column.js +9 -11
  9. package/build/lib/core/column.js.map +1 -1
  10. package/build/lib/core/headers.js +9 -11
  11. package/build/lib/core/headers.js.map +1 -1
  12. package/build/lib/core/row.js +9 -11
  13. package/build/lib/core/row.js.map +1 -1
  14. package/build/lib/core/table.js +17 -15
  15. package/build/lib/core/table.js.map +1 -1
  16. package/build/lib/features/ColumnSizing.d.ts +2 -2
  17. package/build/lib/features/ColumnSizing.js +21 -20
  18. package/build/lib/features/ColumnSizing.js.map +1 -1
  19. package/build/lib/features/Expanding.js +9 -11
  20. package/build/lib/features/Expanding.js.map +1 -1
  21. package/build/lib/features/Filters.js +9 -11
  22. package/build/lib/features/Filters.js.map +1 -1
  23. package/build/lib/features/Grouping.js +9 -11
  24. package/build/lib/features/Grouping.js.map +1 -1
  25. package/build/lib/features/Ordering.js +9 -11
  26. package/build/lib/features/Ordering.js.map +1 -1
  27. package/build/lib/features/Pagination.js +9 -11
  28. package/build/lib/features/Pagination.js.map +1 -1
  29. package/build/lib/features/Pinning.js +9 -11
  30. package/build/lib/features/Pinning.js.map +1 -1
  31. package/build/lib/features/RowSelection.js +9 -11
  32. package/build/lib/features/RowSelection.js.map +1 -1
  33. package/build/lib/features/Sorting.js +9 -11
  34. package/build/lib/features/Sorting.js.map +1 -1
  35. package/build/lib/features/Visibility.js +9 -11
  36. package/build/lib/features/Visibility.js.map +1 -1
  37. package/build/lib/filterFns.js +9 -11
  38. package/build/lib/filterFns.js.map +1 -1
  39. package/build/lib/index.esm.js +29 -22
  40. package/build/lib/index.esm.js.map +1 -1
  41. package/build/lib/index.js +9 -11
  42. package/build/lib/index.js.map +1 -1
  43. package/build/lib/index.mjs +29 -22
  44. package/build/lib/index.mjs.map +1 -1
  45. package/build/lib/sortingFns.js +9 -11
  46. package/build/lib/sortingFns.js.map +1 -1
  47. package/build/lib/utils/filterRowsUtils.js +9 -11
  48. package/build/lib/utils/filterRowsUtils.js.map +1 -1
  49. package/build/lib/utils/getCoreRowModel.js +9 -11
  50. package/build/lib/utils/getCoreRowModel.js.map +1 -1
  51. package/build/lib/utils/getExpandedRowModel.js +9 -11
  52. package/build/lib/utils/getExpandedRowModel.js.map +1 -1
  53. package/build/lib/utils/getFacetedMinMaxValues.js +9 -11
  54. package/build/lib/utils/getFacetedMinMaxValues.js.map +1 -1
  55. package/build/lib/utils/getFacetedRowModel.js +9 -11
  56. package/build/lib/utils/getFacetedRowModel.js.map +1 -1
  57. package/build/lib/utils/getFacetedUniqueValues.js +9 -11
  58. package/build/lib/utils/getFacetedUniqueValues.js.map +1 -1
  59. package/build/lib/utils/getFilteredRowModel.js +9 -11
  60. package/build/lib/utils/getFilteredRowModel.js.map +1 -1
  61. package/build/lib/utils/getGroupedRowModel.js +9 -11
  62. package/build/lib/utils/getGroupedRowModel.js.map +1 -1
  63. package/build/lib/utils/getPaginationRowModel.js +9 -11
  64. package/build/lib/utils/getPaginationRowModel.js.map +1 -1
  65. package/build/lib/utils/getSortedRowModel.js +9 -11
  66. package/build/lib/utils/getSortedRowModel.js.map +1 -1
  67. package/build/lib/utils.js +9 -11
  68. package/build/lib/utils.js.map +1 -1
  69. package/build/umd/index.development.js +28 -23
  70. package/build/umd/index.development.js.map +1 -1
  71. package/build/umd/index.production.js +10 -10
  72. package/build/umd/index.production.js.map +1 -1
  73. package/package.json +13 -3
  74. package/src/aggregationFns.ts +0 -0
  75. package/src/columnHelper.ts +2 -2
  76. package/src/core/row.ts +2 -1
  77. package/src/core/table.ts +10 -5
  78. package/src/features/ColumnSizing.ts +33 -16
  79. package/src/features/Filters.ts +9 -9
  80. package/src/features/Grouping.ts +7 -5
  81. package/src/features/Sorting.ts +3 -3
  82. package/src/index.ts +0 -0
  83. package/src/types.ts +4 -2
  84. package/src/utils/getSortedRowModel.ts +5 -5
  85. package/src/utils.ts +14 -14
@@ -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 { 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,17 +1,15 @@
1
1
  /**
2
- * table-core
3
- *
4
- * Copyright (c) TanStack
5
- *
6
- * This source code is licensed under the MIT license found in the
7
- * LICENSE.md file in the root directory of this source tree.
8
- *
9
- * @license MIT
10
- */
2
+ * table-core
3
+ *
4
+ * Copyright (c) TanStack
5
+ *
6
+ * This source code is licensed under the MIT license found in the
7
+ * LICENSE.md file in the root directory of this source tree.
8
+ *
9
+ * @license MIT
10
+ */
11
11
  'use strict';
12
12
 
13
- Object.defineProperty(exports, '__esModule', { value: true });
14
-
15
13
  var utils = require('../utils.js');
16
14
 
17
15
  function 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(sort =>\n 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":"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"}
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":"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"}
@@ -1,17 +1,15 @@
1
1
  /**
2
- * table-core
3
- *
4
- * Copyright (c) TanStack
5
- *
6
- * This source code is licensed under the MIT license found in the
7
- * LICENSE.md file in the root directory of this source tree.
8
- *
9
- * @license MIT
10
- */
2
+ * table-core
3
+ *
4
+ * Copyright (c) TanStack
5
+ *
6
+ * This source code is licensed under the MIT license found in the
7
+ * LICENSE.md file in the root directory of this source tree.
8
+ *
9
+ * @license MIT
10
+ */
11
11
  'use strict';
12
12
 
13
- Object.defineProperty(exports, '__esModule', { value: true });
14
-
15
13
  // Is this type a tuple?
16
14
 
17
15
  // If this type is a tuple, what indices are allowed?
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../src/utils.ts"],"sourcesContent":["import { TableState, Updater } from './types'\n\nexport type PartialKeys<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>\nexport type RequiredKeys<T, K extends keyof T> = Omit<T, K> &\n Required<Pick<T, K>>\nexport type Overwrite<T, U extends { [TKey in keyof T]?: any }> = Omit<\n T,\n keyof U\n> &\n U\n\nexport type UnionToIntersection<T> = (\n T extends any ? (x: T) => any : never\n) extends (x: infer R) => any\n ? R\n : never\n\nexport type IsAny<T, Y, N> = 1 extends 0 & T ? Y : N\nexport type IsKnown<T, Y, N> = unknown extends T ? N : Y\n\ntype ComputeRange<\n N extends number,\n Result extends Array<unknown> = [],\n> = Result['length'] extends N\n ? Result\n : ComputeRange<N, [...Result, Result['length']]>\ntype Index40 = ComputeRange<40>[number]\n\n// Is this type a tuple?\ntype IsTuple<T> = T extends readonly any[] & { length: infer Length }\n ? Length extends Index40\n ? T\n : never\n : never\n\n// If this type is a tuple, what indices are allowed?\ntype AllowedIndexes<\n Tuple extends ReadonlyArray<any>,\n Keys extends number = never,\n> = Tuple extends readonly []\n ? Keys\n : Tuple extends readonly [infer _, ...infer Tail]\n ? AllowedIndexes<Tail, Keys | Tail['length']>\n : Keys\n\nexport type DeepKeys<T, TDepth extends any[] = []> = TDepth['length'] extends 5\n ? never\n : unknown extends T\n ? string\n : object extends T\n ? string\n : T extends readonly any[] & IsTuple<T>\n ? AllowedIndexes<T> | DeepKeysPrefix<T, AllowedIndexes<T>, TDepth>\n : T extends any[]\n ? DeepKeys<T[number], [...TDepth, any]>\n : T extends Date\n ? never\n : T extends object\n ? (keyof T & string) | DeepKeysPrefix<T, keyof T, TDepth>\n : never\n\ntype DeepKeysPrefix<\n T,\n TPrefix,\n TDepth extends any[],\n> = TPrefix extends keyof T & (number | string)\n ? `${TPrefix}.${DeepKeys<T[TPrefix], [...TDepth, any]> & string}`\n : never\n\nexport type DeepValue<T, TProp> = T extends Record<string | number, any>\n ? TProp extends `${infer TBranch}.${infer TDeepProp}`\n ? DeepValue<T[TBranch], TDeepProp>\n : T[TProp & string]\n : never\n\nexport type NoInfer<T> = [T][T extends any ? 0 : never]\n\nexport type Getter<TValue> = <TTValue = TValue>() => NoInfer<TTValue>\n\n///\n\nexport function functionalUpdate<T>(updater: Updater<T>, input: T): T {\n return typeof updater === 'function'\n ? (updater as (input: T) => T)(input)\n : updater\n}\n\nexport function noop() {\n //\n}\n\nexport function makeStateUpdater<K extends keyof TableState>(\n key: K,\n instance: unknown\n) {\n return (updater: Updater<TableState[K]>) => {\n ;(instance as any).setState(<TTableState>(old: TTableState) => {\n return {\n ...old,\n [key]: functionalUpdate(updater, (old as any)[key]),\n }\n })\n }\n}\n\ntype AnyFunction = (...args: any) => any\n\nexport function isFunction<T extends AnyFunction>(d: any): d is T {\n return d instanceof Function\n}\n\nexport function isNumberArray(d: any): d is number[] {\n return Array.isArray(d) && d.every(val => typeof val === 'number')\n}\n\nexport function flattenBy<TNode>(\n arr: TNode[],\n getChildren: (item: TNode) => TNode[]\n) {\n const flat: TNode[] = []\n\n const recurse = (subArr: TNode[]) => {\n subArr.forEach(item => {\n flat.push(item)\n const children = getChildren(item)\n if (children?.length) {\n recurse(children)\n }\n })\n }\n\n recurse(arr)\n\n return flat\n}\n\nexport function memo<TDeps extends readonly any[], TResult>(\n getDeps: () => [...TDeps],\n fn: (...args: NoInfer<[...TDeps]>) => TResult,\n opts: {\n key: any\n debug?: () => any\n onChange?: (result: TResult) => void\n }\n): () => TResult {\n let deps: any[] = []\n let result: TResult | undefined\n\n return () => {\n let depTime: number\n if (opts.key && opts.debug) depTime = Date.now()\n\n const newDeps = getDeps()\n\n const depsChanged =\n newDeps.length !== deps.length ||\n newDeps.some((dep: any, index: number) => deps[index] !== dep)\n\n if (!depsChanged) {\n return result!\n }\n\n deps = newDeps\n\n let resultTime: number\n if (opts.key && opts.debug) resultTime = Date.now()\n\n result = fn(...newDeps)\n opts?.onChange?.(result)\n\n if (opts.key && opts.debug) {\n if (opts?.debug()) {\n const depEndTime = Math.round((Date.now() - depTime!) * 100) / 100\n const resultEndTime = Math.round((Date.now() - resultTime!) * 100) / 100\n const resultFpsPercentage = resultEndTime / 16\n\n const pad = (str: number | string, num: number) => {\n str = String(str)\n while (str.length < num) {\n str = ' ' + str\n }\n return str\n }\n\n console.info(\n `%c⏱ ${pad(resultEndTime, 5)} /${pad(depEndTime, 5)} ms`,\n `\n font-size: .6rem;\n font-weight: bold;\n color: hsl(${Math.max(\n 0,\n Math.min(120 - 120 * resultFpsPercentage, 120)\n )}deg 100% 31%);`,\n opts?.key\n )\n }\n }\n\n return result!\n }\n}\n"],"names":["functionalUpdate","updater","input","noop","makeStateUpdater","key","instance","setState","old","isFunction","d","Function","isNumberArray","Array","isArray","every","val","flattenBy","arr","getChildren","flat","recurse","subArr","forEach","item","push","children","length","memo","getDeps","fn","opts","deps","result","depTime","debug","Date","now","newDeps","depsChanged","some","dep","index","resultTime","onChange","depEndTime","Math","round","resultEndTime","resultFpsPercentage","pad","str","num","String","console","info","max","min"],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sources":["../../src/utils.ts"],"sourcesContent":["import { TableState, Updater } from './types'\n\nexport type PartialKeys<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>\nexport type RequiredKeys<T, K extends keyof T> = Omit<T, K> &\n Required<Pick<T, K>>\nexport type Overwrite<T, U extends { [TKey in keyof T]?: any }> = Omit<\n T,\n keyof U\n> &\n U\n\nexport type UnionToIntersection<T> = (\n T extends any ? (x: T) => any : never\n) extends (x: infer R) => any\n ? R\n : never\n\nexport type IsAny<T, Y, N> = 1 extends 0 & T ? Y : N\nexport type IsKnown<T, Y, N> = unknown extends T ? N : Y\n\ntype ComputeRange<\n N extends number,\n Result extends Array<unknown> = [],\n> = Result['length'] extends N\n ? Result\n : ComputeRange<N, [...Result, Result['length']]>\ntype Index40 = ComputeRange<40>[number]\n\n// Is this type a tuple?\ntype IsTuple<T> = T extends readonly any[] & { length: infer Length }\n ? Length extends Index40\n ? T\n : never\n : never\n\n// If this type is a tuple, what indices are allowed?\ntype AllowedIndexes<\n Tuple extends ReadonlyArray<any>,\n Keys extends number = never,\n> = Tuple extends readonly []\n ? Keys\n : Tuple extends readonly [infer _, ...infer Tail]\n ? AllowedIndexes<Tail, Keys | Tail['length']>\n : Keys\n\nexport type DeepKeys<T, TDepth extends any[] = []> = TDepth['length'] extends 5\n ? never\n : unknown extends T\n ? string\n : object extends T\n ? string\n : T extends readonly any[] & IsTuple<T>\n ? AllowedIndexes<T> | DeepKeysPrefix<T, AllowedIndexes<T>, TDepth>\n : T extends any[]\n ? DeepKeys<T[number], [...TDepth, any]>\n : T extends Date\n ? never\n : T extends object\n ? (keyof T & string) | DeepKeysPrefix<T, keyof T, TDepth>\n : never\n\ntype DeepKeysPrefix<\n T,\n TPrefix,\n TDepth extends any[],\n> = TPrefix extends keyof T & (number | string)\n ? `${TPrefix}.${DeepKeys<T[TPrefix], [...TDepth, any]> & string}`\n : never\n\nexport type DeepValue<T, TProp> = T extends Record<string | number, any>\n ? TProp extends `${infer TBranch}.${infer TDeepProp}`\n ? DeepValue<T[TBranch], TDeepProp>\n : T[TProp & string]\n : never\n\nexport type NoInfer<T> = [T][T extends any ? 0 : never]\n\nexport type Getter<TValue> = <TTValue = TValue>() => NoInfer<TTValue>\n\n///\n\nexport function functionalUpdate<T>(updater: Updater<T>, input: T): T {\n return typeof updater === 'function'\n ? (updater as (input: T) => T)(input)\n : updater\n}\n\nexport function noop() {\n //\n}\n\nexport function makeStateUpdater<K extends keyof TableState>(\n key: K,\n instance: unknown\n) {\n return (updater: Updater<TableState[K]>) => {\n ;(instance as any).setState(<TTableState>(old: TTableState) => {\n return {\n ...old,\n [key]: functionalUpdate(updater, (old as any)[key]),\n }\n })\n }\n}\n\ntype AnyFunction = (...args: any) => any\n\nexport function isFunction<T extends AnyFunction>(d: any): d is T {\n return d instanceof Function\n}\n\nexport function isNumberArray(d: any): d is number[] {\n return Array.isArray(d) && d.every(val => typeof val === 'number')\n}\n\nexport function flattenBy<TNode>(\n arr: TNode[],\n getChildren: (item: TNode) => TNode[]\n) {\n const flat: TNode[] = []\n\n const recurse = (subArr: TNode[]) => {\n subArr.forEach(item => {\n flat.push(item)\n const children = getChildren(item)\n if (children?.length) {\n recurse(children)\n }\n })\n }\n\n recurse(arr)\n\n return flat\n}\n\nexport function memo<TDeps extends readonly any[], TResult>(\n getDeps: () => [...TDeps],\n fn: (...args: NoInfer<[...TDeps]>) => TResult,\n opts: {\n key: any\n debug?: () => any\n onChange?: (result: TResult) => void\n }\n): () => TResult {\n let deps: any[] = []\n let result: TResult | undefined\n\n return () => {\n let depTime: number\n if (opts.key && opts.debug) depTime = Date.now()\n\n const newDeps = getDeps()\n\n const depsChanged =\n newDeps.length !== deps.length ||\n newDeps.some((dep: any, index: number) => deps[index] !== dep)\n\n if (!depsChanged) {\n return result!\n }\n\n deps = newDeps\n\n let resultTime: number\n if (opts.key && opts.debug) resultTime = Date.now()\n\n result = fn(...newDeps)\n opts?.onChange?.(result)\n\n if (opts.key && opts.debug) {\n if (opts?.debug()) {\n const depEndTime = Math.round((Date.now() - depTime!) * 100) / 100\n const resultEndTime = Math.round((Date.now() - resultTime!) * 100) / 100\n const resultFpsPercentage = resultEndTime / 16\n\n const pad = (str: number | string, num: number) => {\n str = String(str)\n while (str.length < num) {\n str = ' ' + str\n }\n return str\n }\n\n console.info(\n `%c⏱ ${pad(resultEndTime, 5)} /${pad(depEndTime, 5)} ms`,\n `\n font-size: .6rem;\n font-weight: bold;\n color: hsl(${Math.max(\n 0,\n Math.min(120 - 120 * resultFpsPercentage, 120)\n )}deg 100% 31%);`,\n opts?.key\n )\n }\n }\n\n return result!\n }\n}\n"],"names":["functionalUpdate","updater","input","noop","makeStateUpdater","key","instance","setState","old","isFunction","d","Function","isNumberArray","Array","isArray","every","val","flattenBy","arr","getChildren","flat","recurse","subArr","forEach","item","push","children","length","memo","getDeps","fn","opts","deps","result","depTime","debug","Date","now","newDeps","depsChanged","some","dep","index","resultTime","onChange","depEndTime","Math","round","resultEndTime","resultFpsPercentage","pad","str","num","String","console","info","max","min"],"mappings":"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"}
@@ -1,13 +1,13 @@
1
1
  /**
2
- * table-core
3
- *
4
- * Copyright (c) TanStack
5
- *
6
- * This source code is licensed under the MIT license found in the
7
- * LICENSE.md file in the root directory of this source tree.
8
- *
9
- * @license MIT
10
- */
2
+ * table-core
3
+ *
4
+ * Copyright (c) TanStack
5
+ *
6
+ * This source code is licensed under the MIT license found in the
7
+ * LICENSE.md file in the root directory of this source tree.
8
+ *
9
+ * @license MIT
10
+ */
11
11
  (function (global, factory) {
12
12
  typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
13
13
  typeof define === 'function' && define.amd ? define(['exports'], factory) :
@@ -606,7 +606,10 @@
606
606
  }
607
607
  return 0;
608
608
  };
609
- header.getResizeHandler = () => {
609
+ header.getResizeHandler = function (contextDocument) {
610
+ if (contextDocument === void 0) {
611
+ contextDocument = document;
612
+ }
610
613
  const column = table.getColumn(header.column.id);
611
614
  const canResize = column == null ? void 0 : column.getCanResize();
612
615
  return e => {
@@ -666,8 +669,8 @@
666
669
  const mouseEvents = {
667
670
  moveHandler: e => onMove(e.clientX),
668
671
  upHandler: e => {
669
- document.removeEventListener('mousemove', mouseEvents.moveHandler);
670
- document.removeEventListener('mouseup', mouseEvents.upHandler);
672
+ contextDocument.removeEventListener('mousemove', mouseEvents.moveHandler);
673
+ contextDocument.removeEventListener('mouseup', mouseEvents.upHandler);
671
674
  onEnd(e.clientX);
672
675
  }
673
676
  };
@@ -682,8 +685,8 @@
682
685
  },
683
686
  upHandler: e => {
684
687
  var _e$touches$;
685
- document.removeEventListener('touchmove', touchEvents.moveHandler);
686
- document.removeEventListener('touchend', touchEvents.upHandler);
688
+ contextDocument.removeEventListener('touchmove', touchEvents.moveHandler);
689
+ contextDocument.removeEventListener('touchend', touchEvents.upHandler);
687
690
  if (e.cancelable) {
688
691
  e.preventDefault();
689
692
  e.stopPropagation();
@@ -695,11 +698,11 @@
695
698
  passive: false
696
699
  } : false;
697
700
  if (isTouchStartEvent(e)) {
698
- document.addEventListener('touchmove', touchEvents.moveHandler, passiveIfSupported);
699
- document.addEventListener('touchend', touchEvents.upHandler, passiveIfSupported);
701
+ contextDocument.addEventListener('touchmove', touchEvents.moveHandler, passiveIfSupported);
702
+ contextDocument.addEventListener('touchend', touchEvents.upHandler, passiveIfSupported);
700
703
  } else {
701
- document.addEventListener('mousemove', mouseEvents.moveHandler, passiveIfSupported);
702
- document.addEventListener('mouseup', mouseEvents.upHandler, passiveIfSupported);
704
+ contextDocument.addEventListener('mousemove', mouseEvents.moveHandler, passiveIfSupported);
705
+ contextDocument.addEventListener('mouseup', mouseEvents.upHandler, passiveIfSupported);
703
706
  }
704
707
  table.setColumnSizingInfo(old => ({
705
708
  ...old,
@@ -2802,11 +2805,15 @@
2802
2805
  getRowModel: () => {
2803
2806
  return table.getPaginationRowModel();
2804
2807
  },
2808
+ //in next version, we should just pass in the row model as the optional 2nd arg
2805
2809
  getRow: (id, searchAll) => {
2806
- const row = (searchAll ? table.getCoreRowModel() : table.getRowModel()).rowsById[id];
2810
+ let row = (searchAll ? table.getPrePaginationRowModel() : table.getRowModel()).rowsById[id];
2807
2811
  if (!row) {
2808
- {
2809
- throw new Error(`getRow expected an ID, but got ${id}`);
2812
+ row = table.getCoreRowModel().rowsById[id];
2813
+ if (!row) {
2814
+ {
2815
+ throw new Error(`getRow could not find row with ID: ${id}`);
2816
+ }
2810
2817
  }
2811
2818
  }
2812
2819
  return row;
@@ -3789,7 +3796,5 @@
3789
3796
  exports.shouldAutoRemoveFilter = shouldAutoRemoveFilter;
3790
3797
  exports.sortingFns = sortingFns;
3791
3798
 
3792
- Object.defineProperty(exports, '__esModule', { value: true });
3793
-
3794
3799
  }));
3795
3800
  //# sourceMappingURL=index.development.js.map