@tanstack/table-core 9.0.0-beta.10 → 9.0.0-beta.11

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 (105) hide show
  1. package/dist/core/cells/coreCellsFeature.types.d.cts +3 -3
  2. package/dist/core/cells/coreCellsFeature.types.d.ts +3 -3
  3. package/dist/core/columns/coreColumnsFeature.types.d.cts +4 -4
  4. package/dist/core/columns/coreColumnsFeature.types.d.ts +4 -4
  5. package/dist/core/headers/coreHeadersFeature.types.d.cts +5 -5
  6. package/dist/core/headers/coreHeadersFeature.types.d.ts +5 -5
  7. package/dist/core/row-models/coreRowModelsFeature.types.d.cts +3 -3
  8. package/dist/core/row-models/coreRowModelsFeature.types.d.ts +3 -3
  9. package/dist/core/row-models/createCoreRowModel.cjs +1 -2
  10. package/dist/core/row-models/createCoreRowModel.cjs.map +1 -1
  11. package/dist/core/row-models/createCoreRowModel.d.cts +2 -2
  12. package/dist/core/row-models/createCoreRowModel.d.ts +2 -2
  13. package/dist/core/row-models/createCoreRowModel.js +1 -2
  14. package/dist/core/row-models/createCoreRowModel.js.map +1 -1
  15. package/dist/core/rows/coreRowsFeature.types.d.cts +4 -4
  16. package/dist/core/rows/coreRowsFeature.types.d.ts +4 -4
  17. package/dist/core/table/constructTable.cjs.map +1 -1
  18. package/dist/core/table/constructTable.js.map +1 -1
  19. package/dist/core/table/coreTablesFeature.types.d.cts +4 -4
  20. package/dist/core/table/coreTablesFeature.types.d.ts +4 -4
  21. package/dist/core/table/coreTablesFeature.utils.cjs.map +1 -1
  22. package/dist/core/table/coreTablesFeature.utils.js.map +1 -1
  23. package/dist/features/column-faceting/columnFacetingFeature.types.d.cts +4 -4
  24. package/dist/features/column-faceting/columnFacetingFeature.types.d.ts +4 -4
  25. package/dist/features/column-filtering/columnFilteringFeature.types.d.cts +9 -9
  26. package/dist/features/column-filtering/columnFilteringFeature.types.d.ts +9 -9
  27. package/dist/features/column-grouping/columnGroupingFeature.types.d.cts +6 -6
  28. package/dist/features/column-grouping/columnGroupingFeature.types.d.ts +6 -6
  29. package/dist/features/column-ordering/columnOrderingFeature.types.d.cts +1 -1
  30. package/dist/features/column-ordering/columnOrderingFeature.types.d.ts +1 -1
  31. package/dist/features/column-pinning/columnPinningFeature.types.d.cts +2 -2
  32. package/dist/features/column-pinning/columnPinningFeature.types.d.ts +2 -2
  33. package/dist/features/column-visibility/columnVisibilityFeature.types.d.cts +2 -2
  34. package/dist/features/column-visibility/columnVisibilityFeature.types.d.ts +2 -2
  35. package/dist/features/global-filtering/globalFilteringFeature.types.d.cts +2 -2
  36. package/dist/features/global-filtering/globalFilteringFeature.types.d.ts +2 -2
  37. package/dist/features/row-expanding/rowExpandingFeature.types.d.cts +4 -4
  38. package/dist/features/row-expanding/rowExpandingFeature.types.d.ts +4 -4
  39. package/dist/features/row-pagination/rowPaginationFeature.types.d.cts +3 -3
  40. package/dist/features/row-pagination/rowPaginationFeature.types.d.ts +3 -3
  41. package/dist/features/row-pinning/rowPinningFeature.types.d.cts +2 -2
  42. package/dist/features/row-pinning/rowPinningFeature.types.d.ts +2 -2
  43. package/dist/features/row-selection/rowSelectionFeature.types.d.cts +2 -2
  44. package/dist/features/row-selection/rowSelectionFeature.types.d.ts +2 -2
  45. package/dist/features/row-sorting/rowSortingFeature.types.d.cts +7 -7
  46. package/dist/features/row-sorting/rowSortingFeature.types.d.ts +7 -7
  47. package/dist/index.d.cts +2 -2
  48. package/dist/index.d.ts +2 -2
  49. package/dist/types/Cell.d.cts +1 -1
  50. package/dist/types/Cell.d.ts +1 -1
  51. package/dist/types/Column.d.cts +2 -2
  52. package/dist/types/Column.d.ts +2 -2
  53. package/dist/types/ColumnDef.d.cts +3 -3
  54. package/dist/types/ColumnDef.d.ts +3 -3
  55. package/dist/types/Header.d.cts +1 -1
  56. package/dist/types/Header.d.ts +1 -1
  57. package/dist/types/HeaderGroup.d.cts +1 -1
  58. package/dist/types/HeaderGroup.d.ts +1 -1
  59. package/dist/types/Row.d.cts +2 -2
  60. package/dist/types/Row.d.ts +2 -2
  61. package/dist/types/RowModel.d.cts +1 -1
  62. package/dist/types/RowModel.d.ts +1 -1
  63. package/dist/types/RowModelFns.d.cts +1 -1
  64. package/dist/types/RowModelFns.d.ts +1 -1
  65. package/dist/types/Table.d.cts +29 -11
  66. package/dist/types/Table.d.ts +29 -11
  67. package/dist/types/TableOptions.d.cts +11 -5
  68. package/dist/types/TableOptions.d.ts +11 -5
  69. package/dist/utils.cjs.map +1 -1
  70. package/dist/utils.d.cts +7 -2
  71. package/dist/utils.d.ts +7 -2
  72. package/dist/utils.js.map +1 -1
  73. package/package.json +1 -1
  74. package/src/core/cells/coreCellsFeature.types.ts +6 -6
  75. package/src/core/columns/coreColumnsFeature.types.ts +8 -8
  76. package/src/core/headers/coreHeadersFeature.types.ts +10 -10
  77. package/src/core/row-models/coreRowModelsFeature.types.ts +6 -6
  78. package/src/core/row-models/createCoreRowModel.ts +5 -4
  79. package/src/core/rows/coreRowsFeature.types.ts +8 -8
  80. package/src/core/table/constructTable.ts +1 -1
  81. package/src/core/table/coreTablesFeature.types.ts +8 -8
  82. package/src/core/table/coreTablesFeature.utils.ts +8 -2
  83. package/src/features/column-faceting/columnFacetingFeature.types.ts +8 -8
  84. package/src/features/column-filtering/columnFilteringFeature.types.ts +18 -18
  85. package/src/features/column-grouping/columnGroupingFeature.types.ts +12 -12
  86. package/src/features/column-ordering/columnOrderingFeature.types.ts +2 -2
  87. package/src/features/column-pinning/columnPinningFeature.types.ts +4 -4
  88. package/src/features/column-visibility/columnVisibilityFeature.types.ts +4 -4
  89. package/src/features/global-filtering/globalFilteringFeature.types.ts +4 -4
  90. package/src/features/row-expanding/rowExpandingFeature.types.ts +8 -8
  91. package/src/features/row-pagination/rowPaginationFeature.types.ts +6 -6
  92. package/src/features/row-pinning/rowPinningFeature.types.ts +4 -4
  93. package/src/features/row-selection/rowSelectionFeature.types.ts +4 -4
  94. package/src/features/row-sorting/rowSortingFeature.types.ts +14 -14
  95. package/src/types/Cell.ts +2 -2
  96. package/src/types/Column.ts +4 -4
  97. package/src/types/ColumnDef.ts +6 -6
  98. package/src/types/Header.ts +2 -2
  99. package/src/types/HeaderGroup.ts +2 -2
  100. package/src/types/Row.ts +4 -4
  101. package/src/types/RowModel.ts +2 -2
  102. package/src/types/RowModelFns.ts +2 -2
  103. package/src/types/Table.ts +64 -17
  104. package/src/types/TableOptions.ts +54 -12
  105. package/src/utils.ts +11 -2
@@ -1 +1 @@
1
- {"version":3,"file":"coreTablesFeature.utils.cjs","names":["cloneState","functionalUpdate"],"sources":["../../../src/core/table/coreTablesFeature.utils.ts"],"sourcesContent":["import { cloneState, functionalUpdate } from '../../utils'\nimport type { RowData, Updater } from '../../types/type-utils'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { Table_Internal } from '../../types/Table'\nimport type { TableOptions } from '../../types/TableOptions'\n\n/**\n * Synchronizes externally controlled state slices into the table's base atoms.\n *\n * This keeps legacy `options.state` values reflected in the atom graph so\n * derived atoms, stores, and table APIs read a consistent snapshot.\n *\n * @example\n * ```ts\n * table_syncExternalStateToBaseAtoms(table)\n * ```\n */\nexport function table_syncExternalStateToBaseAtoms<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>): void {\n const state = table.options.state\n if (!state) {\n return\n }\n\n table._reactivity.batch(() => {\n for (const key in state) {\n const baseAtom = (table.baseAtoms as Record<string, any>)[key]\n if (!baseAtom) {\n continue\n }\n\n const externalState = state[key as keyof typeof state]\n if (externalState !== baseAtom.get()) {\n baseAtom.set(() => externalState)\n }\n }\n })\n}\n\n/**\n * Resets all internal table base atoms to `table.initialState`.\n *\n * This resets internally owned state slices in a single reactivity batch. Use\n * feature-specific reset APIs when a slice may be externally owned.\n *\n * @example\n * ```ts\n * table_reset(table)\n * ```\n */\nexport function table_reset<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>): void {\n const snap = cloneState(table.initialState)\n table._reactivity.batch(() => {\n const keys = Object.keys(snap) as Array<keyof typeof snap>\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i]!\n ;(table.baseAtoms as any)[key].set(snap[key])\n }\n })\n}\n\n/**\n * Merges new table options with the current resolved options.\n *\n * If `options.mergeOptions` is provided, it owns the merge behavior; otherwise\n * options are shallow-merged.\n *\n * @example\n * ```ts\n * const options = table_mergeOptions(table, nextOptions)\n * ```\n */\nexport function table_mergeOptions<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n newOptions: TableOptions<TFeatures, TData>,\n) {\n if (table.options.mergeOptions) {\n return table.options.mergeOptions(table.options, newOptions)\n }\n\n return {\n ...table.options,\n ...newOptions,\n }\n}\n\n/**\n * Updates the table options object.\n *\n * The updater receives the current resolved options and the merged result is\n * immediately assigned to the table instance.\n *\n * @example\n * ```ts\n * table_setOptions(table, (old) => old)\n * ```\n */\nexport function table_setOptions<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n updater: Updater<TableOptions<TFeatures, TData>>,\n): void {\n const newOptions = functionalUpdate(updater, table.options)\n // table static options that should never change after initialization\n const { features, atoms, initialState } = table.options\n const mergedOptions = Object.assign(table_mergeOptions(table, newOptions), {\n // Once the table instance is created those properties should never change after initialization,\n // so we assign them back preserving the `table_mergeOptions` object reference\n features,\n atoms,\n initialState,\n })\n\n if (table.optionsStore) {\n table.optionsStore.set(() => mergedOptions)\n } else {\n table.options = mergedOptions\n }\n table_syncExternalStateToBaseAtoms(table)\n}\n"],"mappings":";;;;;;;;;;;;;;AAiBA,SAAgB,mCAGd,OAA+C;CAC/C,MAAM,QAAQ,MAAM,QAAQ;CAC5B,IAAI,CAAC,OACH;CAGF,MAAM,YAAY,YAAY;EAC5B,KAAK,MAAM,OAAO,OAAO;GACvB,MAAM,WAAY,MAAM,UAAkC;GAC1D,IAAI,CAAC,UACH;GAGF,MAAM,gBAAgB,MAAM;GAC5B,IAAI,kBAAkB,SAAS,IAAI,GACjC,SAAS,UAAU,aAAa;EAEpC;CACF,CAAC;AACH;;;;;;;;;;;;AAaA,SAAgB,YAGd,OAA+C;CAC/C,MAAM,OAAOA,yBAAW,MAAM,YAAY;CAC1C,MAAM,YAAY,YAAY;EAC5B,MAAM,OAAO,OAAO,KAAK,IAAI;EAC7B,KAAK,IAAI,IAAI,GAAG,IAAI,KAAK,QAAQ,KAAK;GACpC,MAAM,MAAM,KAAK;GAChB,AAAC,MAAM,UAAkB,IAAI,CAAC,IAAI,KAAK,IAAI;EAC9C;CACF,CAAC;AACH;;;;;;;;;;;;AAaA,SAAgB,mBAId,OACA,YACA;CACA,IAAI,MAAM,QAAQ,cAChB,OAAO,MAAM,QAAQ,aAAa,MAAM,SAAS,UAAU;CAG7D,OAAO;EACL,GAAG,MAAM;EACT,GAAG;CACL;AACF;;;;;;;;;;;;AAaA,SAAgB,iBAId,OACA,SACM;CACN,MAAM,aAAaC,+BAAiB,SAAS,MAAM,OAAO;CAE1D,MAAM,EAAE,UAAU,OAAO,iBAAiB,MAAM;CAChD,MAAM,gBAAgB,OAAO,OAAO,mBAAmB,OAAO,UAAU,GAAG;EAGzE;EACA;EACA;CACF,CAAC;CAED,IAAI,MAAM,cACR,MAAM,aAAa,UAAU,aAAa;MAE1C,MAAM,UAAU;CAElB,mCAAmC,KAAK;AAC1C"}
1
+ {"version":3,"file":"coreTablesFeature.utils.cjs","names":["cloneState","functionalUpdate"],"sources":["../../../src/core/table/coreTablesFeature.utils.ts"],"sourcesContent":["import { cloneState, functionalUpdate } from '../../utils'\nimport type { RowData, Updater } from '../../types/type-utils'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { Table_Internal } from '../../types/Table'\nimport type { TableOptions } from '../../types/TableOptions'\n\n/**\n * Synchronizes externally controlled state slices into the table's base atoms.\n *\n * This keeps legacy `options.state` values reflected in the atom graph so\n * derived atoms, stores, and table APIs read a consistent snapshot.\n *\n * @example\n * ```ts\n * table_syncExternalStateToBaseAtoms(table)\n * ```\n */\nexport function table_syncExternalStateToBaseAtoms<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>): void {\n const state = table.options.state\n if (!state) {\n return\n }\n\n table._reactivity.batch(() => {\n for (const key in state) {\n const baseAtom = (table.baseAtoms as Record<string, any>)[key]\n if (!baseAtom) {\n continue\n }\n\n const externalState = state[key as keyof typeof state]\n if (externalState !== baseAtom.get()) {\n baseAtom.set(() => externalState)\n }\n }\n })\n}\n\n/**\n * Resets all internal table base atoms to `table.initialState`.\n *\n * This resets internally owned state slices in a single reactivity batch. Use\n * feature-specific reset APIs when a slice may be externally owned.\n *\n * @example\n * ```ts\n * table_reset(table)\n * ```\n */\nexport function table_reset<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>): void {\n const snap = cloneState(table.initialState)\n table._reactivity.batch(() => {\n const keys = Object.keys(snap) as Array<keyof typeof snap>\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i]!\n ;(table.baseAtoms as any)[key].set(snap[key])\n }\n })\n}\n\n/**\n * Merges new table options with the current resolved options.\n *\n * If `options.mergeOptions` is provided, it owns the merge behavior; otherwise\n * options are shallow-merged.\n *\n * @example\n * ```ts\n * const options = table_mergeOptions(table, nextOptions)\n * ```\n */\nexport function table_mergeOptions<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n newOptions: TableOptions<TFeatures, TData>,\n) {\n if (table.options.mergeOptions) {\n return table.options.mergeOptions(\n table.options as TableOptions<TFeatures, TData>,\n newOptions,\n )\n }\n\n return {\n ...table.options,\n ...newOptions,\n }\n}\n\n/**\n * Updates the table options object.\n *\n * The updater receives the current resolved options and the merged result is\n * immediately assigned to the table instance.\n *\n * @example\n * ```ts\n * table_setOptions(table, (old) => old)\n * ```\n */\nexport function table_setOptions<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n updater: Updater<TableOptions<TFeatures, TData>>,\n): void {\n const newOptions = functionalUpdate(\n updater,\n table.options as TableOptions<TFeatures, TData>,\n )\n // table static options that should never change after initialization\n const { features, atoms, initialState } = table.options\n const mergedOptions = Object.assign(table_mergeOptions(table, newOptions), {\n // Once the table instance is created those properties should never change after initialization,\n // so we assign them back preserving the `table_mergeOptions` object reference\n features,\n atoms,\n initialState,\n })\n\n if (table.optionsStore) {\n table.optionsStore.set(() => mergedOptions)\n } else {\n table.options = mergedOptions\n }\n table_syncExternalStateToBaseAtoms(table)\n}\n"],"mappings":";;;;;;;;;;;;;;AAiBA,SAAgB,mCAGd,OAA+C;CAC/C,MAAM,QAAQ,MAAM,QAAQ;CAC5B,IAAI,CAAC,OACH;CAGF,MAAM,YAAY,YAAY;EAC5B,KAAK,MAAM,OAAO,OAAO;GACvB,MAAM,WAAY,MAAM,UAAkC;GAC1D,IAAI,CAAC,UACH;GAGF,MAAM,gBAAgB,MAAM;GAC5B,IAAI,kBAAkB,SAAS,IAAI,GACjC,SAAS,UAAU,aAAa;EAEpC;CACF,CAAC;AACH;;;;;;;;;;;;AAaA,SAAgB,YAGd,OAA+C;CAC/C,MAAM,OAAOA,yBAAW,MAAM,YAAY;CAC1C,MAAM,YAAY,YAAY;EAC5B,MAAM,OAAO,OAAO,KAAK,IAAI;EAC7B,KAAK,IAAI,IAAI,GAAG,IAAI,KAAK,QAAQ,KAAK;GACpC,MAAM,MAAM,KAAK;GAChB,AAAC,MAAM,UAAkB,IAAI,CAAC,IAAI,KAAK,IAAI;EAC9C;CACF,CAAC;AACH;;;;;;;;;;;;AAaA,SAAgB,mBAId,OACA,YACA;CACA,IAAI,MAAM,QAAQ,cAChB,OAAO,MAAM,QAAQ,aACnB,MAAM,SACN,UACF;CAGF,OAAO;EACL,GAAG,MAAM;EACT,GAAG;CACL;AACF;;;;;;;;;;;;AAaA,SAAgB,iBAId,OACA,SACM;CACN,MAAM,aAAaC,+BACjB,SACA,MAAM,OACR;CAEA,MAAM,EAAE,UAAU,OAAO,iBAAiB,MAAM;CAChD,MAAM,gBAAgB,OAAO,OAAO,mBAAmB,OAAO,UAAU,GAAG;EAGzE;EACA;EACA;CACF,CAAC;CAED,IAAI,MAAM,cACR,MAAM,aAAa,UAAU,aAAa;MAE1C,MAAM,UAAU;CAElB,mCAAmC,KAAK;AAC1C"}
@@ -1 +1 @@
1
- {"version":3,"file":"coreTablesFeature.utils.js","names":[],"sources":["../../../src/core/table/coreTablesFeature.utils.ts"],"sourcesContent":["import { cloneState, functionalUpdate } from '../../utils'\nimport type { RowData, Updater } from '../../types/type-utils'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { Table_Internal } from '../../types/Table'\nimport type { TableOptions } from '../../types/TableOptions'\n\n/**\n * Synchronizes externally controlled state slices into the table's base atoms.\n *\n * This keeps legacy `options.state` values reflected in the atom graph so\n * derived atoms, stores, and table APIs read a consistent snapshot.\n *\n * @example\n * ```ts\n * table_syncExternalStateToBaseAtoms(table)\n * ```\n */\nexport function table_syncExternalStateToBaseAtoms<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>): void {\n const state = table.options.state\n if (!state) {\n return\n }\n\n table._reactivity.batch(() => {\n for (const key in state) {\n const baseAtom = (table.baseAtoms as Record<string, any>)[key]\n if (!baseAtom) {\n continue\n }\n\n const externalState = state[key as keyof typeof state]\n if (externalState !== baseAtom.get()) {\n baseAtom.set(() => externalState)\n }\n }\n })\n}\n\n/**\n * Resets all internal table base atoms to `table.initialState`.\n *\n * This resets internally owned state slices in a single reactivity batch. Use\n * feature-specific reset APIs when a slice may be externally owned.\n *\n * @example\n * ```ts\n * table_reset(table)\n * ```\n */\nexport function table_reset<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>): void {\n const snap = cloneState(table.initialState)\n table._reactivity.batch(() => {\n const keys = Object.keys(snap) as Array<keyof typeof snap>\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i]!\n ;(table.baseAtoms as any)[key].set(snap[key])\n }\n })\n}\n\n/**\n * Merges new table options with the current resolved options.\n *\n * If `options.mergeOptions` is provided, it owns the merge behavior; otherwise\n * options are shallow-merged.\n *\n * @example\n * ```ts\n * const options = table_mergeOptions(table, nextOptions)\n * ```\n */\nexport function table_mergeOptions<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n newOptions: TableOptions<TFeatures, TData>,\n) {\n if (table.options.mergeOptions) {\n return table.options.mergeOptions(table.options, newOptions)\n }\n\n return {\n ...table.options,\n ...newOptions,\n }\n}\n\n/**\n * Updates the table options object.\n *\n * The updater receives the current resolved options and the merged result is\n * immediately assigned to the table instance.\n *\n * @example\n * ```ts\n * table_setOptions(table, (old) => old)\n * ```\n */\nexport function table_setOptions<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n updater: Updater<TableOptions<TFeatures, TData>>,\n): void {\n const newOptions = functionalUpdate(updater, table.options)\n // table static options that should never change after initialization\n const { features, atoms, initialState } = table.options\n const mergedOptions = Object.assign(table_mergeOptions(table, newOptions), {\n // Once the table instance is created those properties should never change after initialization,\n // so we assign them back preserving the `table_mergeOptions` object reference\n features,\n atoms,\n initialState,\n })\n\n if (table.optionsStore) {\n table.optionsStore.set(() => mergedOptions)\n } else {\n table.options = mergedOptions\n }\n table_syncExternalStateToBaseAtoms(table)\n}\n"],"mappings":";;;;;;;;;;;;;;AAiBA,SAAgB,mCAGd,OAA+C;CAC/C,MAAM,QAAQ,MAAM,QAAQ;CAC5B,IAAI,CAAC,OACH;CAGF,MAAM,YAAY,YAAY;EAC5B,KAAK,MAAM,OAAO,OAAO;GACvB,MAAM,WAAY,MAAM,UAAkC;GAC1D,IAAI,CAAC,UACH;GAGF,MAAM,gBAAgB,MAAM;GAC5B,IAAI,kBAAkB,SAAS,IAAI,GACjC,SAAS,UAAU,aAAa;EAEpC;CACF,CAAC;AACH;;;;;;;;;;;;AAaA,SAAgB,YAGd,OAA+C;CAC/C,MAAM,OAAO,WAAW,MAAM,YAAY;CAC1C,MAAM,YAAY,YAAY;EAC5B,MAAM,OAAO,OAAO,KAAK,IAAI;EAC7B,KAAK,IAAI,IAAI,GAAG,IAAI,KAAK,QAAQ,KAAK;GACpC,MAAM,MAAM,KAAK;GAChB,AAAC,MAAM,UAAkB,IAAI,CAAC,IAAI,KAAK,IAAI;EAC9C;CACF,CAAC;AACH;;;;;;;;;;;;AAaA,SAAgB,mBAId,OACA,YACA;CACA,IAAI,MAAM,QAAQ,cAChB,OAAO,MAAM,QAAQ,aAAa,MAAM,SAAS,UAAU;CAG7D,OAAO;EACL,GAAG,MAAM;EACT,GAAG;CACL;AACF;;;;;;;;;;;;AAaA,SAAgB,iBAId,OACA,SACM;CACN,MAAM,aAAa,iBAAiB,SAAS,MAAM,OAAO;CAE1D,MAAM,EAAE,UAAU,OAAO,iBAAiB,MAAM;CAChD,MAAM,gBAAgB,OAAO,OAAO,mBAAmB,OAAO,UAAU,GAAG;EAGzE;EACA;EACA;CACF,CAAC;CAED,IAAI,MAAM,cACR,MAAM,aAAa,UAAU,aAAa;MAE1C,MAAM,UAAU;CAElB,mCAAmC,KAAK;AAC1C"}
1
+ {"version":3,"file":"coreTablesFeature.utils.js","names":[],"sources":["../../../src/core/table/coreTablesFeature.utils.ts"],"sourcesContent":["import { cloneState, functionalUpdate } from '../../utils'\nimport type { RowData, Updater } from '../../types/type-utils'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { Table_Internal } from '../../types/Table'\nimport type { TableOptions } from '../../types/TableOptions'\n\n/**\n * Synchronizes externally controlled state slices into the table's base atoms.\n *\n * This keeps legacy `options.state` values reflected in the atom graph so\n * derived atoms, stores, and table APIs read a consistent snapshot.\n *\n * @example\n * ```ts\n * table_syncExternalStateToBaseAtoms(table)\n * ```\n */\nexport function table_syncExternalStateToBaseAtoms<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>): void {\n const state = table.options.state\n if (!state) {\n return\n }\n\n table._reactivity.batch(() => {\n for (const key in state) {\n const baseAtom = (table.baseAtoms as Record<string, any>)[key]\n if (!baseAtom) {\n continue\n }\n\n const externalState = state[key as keyof typeof state]\n if (externalState !== baseAtom.get()) {\n baseAtom.set(() => externalState)\n }\n }\n })\n}\n\n/**\n * Resets all internal table base atoms to `table.initialState`.\n *\n * This resets internally owned state slices in a single reactivity batch. Use\n * feature-specific reset APIs when a slice may be externally owned.\n *\n * @example\n * ```ts\n * table_reset(table)\n * ```\n */\nexport function table_reset<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>): void {\n const snap = cloneState(table.initialState)\n table._reactivity.batch(() => {\n const keys = Object.keys(snap) as Array<keyof typeof snap>\n for (let i = 0; i < keys.length; i++) {\n const key = keys[i]!\n ;(table.baseAtoms as any)[key].set(snap[key])\n }\n })\n}\n\n/**\n * Merges new table options with the current resolved options.\n *\n * If `options.mergeOptions` is provided, it owns the merge behavior; otherwise\n * options are shallow-merged.\n *\n * @example\n * ```ts\n * const options = table_mergeOptions(table, nextOptions)\n * ```\n */\nexport function table_mergeOptions<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n newOptions: TableOptions<TFeatures, TData>,\n) {\n if (table.options.mergeOptions) {\n return table.options.mergeOptions(\n table.options as TableOptions<TFeatures, TData>,\n newOptions,\n )\n }\n\n return {\n ...table.options,\n ...newOptions,\n }\n}\n\n/**\n * Updates the table options object.\n *\n * The updater receives the current resolved options and the merged result is\n * immediately assigned to the table instance.\n *\n * @example\n * ```ts\n * table_setOptions(table, (old) => old)\n * ```\n */\nexport function table_setOptions<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(\n table: Table_Internal<TFeatures, TData>,\n updater: Updater<TableOptions<TFeatures, TData>>,\n): void {\n const newOptions = functionalUpdate(\n updater,\n table.options as TableOptions<TFeatures, TData>,\n )\n // table static options that should never change after initialization\n const { features, atoms, initialState } = table.options\n const mergedOptions = Object.assign(table_mergeOptions(table, newOptions), {\n // Once the table instance is created those properties should never change after initialization,\n // so we assign them back preserving the `table_mergeOptions` object reference\n features,\n atoms,\n initialState,\n })\n\n if (table.optionsStore) {\n table.optionsStore.set(() => mergedOptions)\n } else {\n table.options = mergedOptions\n }\n table_syncExternalStateToBaseAtoms(table)\n}\n"],"mappings":";;;;;;;;;;;;;;AAiBA,SAAgB,mCAGd,OAA+C;CAC/C,MAAM,QAAQ,MAAM,QAAQ;CAC5B,IAAI,CAAC,OACH;CAGF,MAAM,YAAY,YAAY;EAC5B,KAAK,MAAM,OAAO,OAAO;GACvB,MAAM,WAAY,MAAM,UAAkC;GAC1D,IAAI,CAAC,UACH;GAGF,MAAM,gBAAgB,MAAM;GAC5B,IAAI,kBAAkB,SAAS,IAAI,GACjC,SAAS,UAAU,aAAa;EAEpC;CACF,CAAC;AACH;;;;;;;;;;;;AAaA,SAAgB,YAGd,OAA+C;CAC/C,MAAM,OAAO,WAAW,MAAM,YAAY;CAC1C,MAAM,YAAY,YAAY;EAC5B,MAAM,OAAO,OAAO,KAAK,IAAI;EAC7B,KAAK,IAAI,IAAI,GAAG,IAAI,KAAK,QAAQ,KAAK;GACpC,MAAM,MAAM,KAAK;GAChB,AAAC,MAAM,UAAkB,IAAI,CAAC,IAAI,KAAK,IAAI;EAC9C;CACF,CAAC;AACH;;;;;;;;;;;;AAaA,SAAgB,mBAId,OACA,YACA;CACA,IAAI,MAAM,QAAQ,cAChB,OAAO,MAAM,QAAQ,aACnB,MAAM,SACN,UACF;CAGF,OAAO;EACL,GAAG,MAAM;EACT,GAAG;CACL;AACF;;;;;;;;;;;;AAaA,SAAgB,iBAId,OACA,SACM;CACN,MAAM,aAAa,iBACjB,SACA,MAAM,OACR;CAEA,MAAM,EAAE,UAAU,OAAO,iBAAiB,MAAM;CAChD,MAAM,gBAAgB,OAAO,OAAO,mBAAmB,OAAO,UAAU,GAAG;EAGzE;EACA;EACA;CACF,CAAC;CAED,IAAI,MAAM,cACR,MAAM,aAAa,UAAU,aAAa;MAE1C,MAAM,UAAU;CAElB,mCAAmC,KAAK;AAC1C"}
@@ -3,7 +3,7 @@ import { TableFeatures } from "../../types/TableFeatures.cjs";
3
3
  import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.cjs";
4
4
 
5
5
  //#region src/features/column-faceting/columnFacetingFeature.types.d.ts
6
- interface Column_ColumnFaceting<TFeatures extends TableFeatures, TData extends RowData> {
6
+ interface Column_ColumnFaceting<in out TFeatures extends TableFeatures, in out TData extends RowData> {
7
7
  /**
8
8
  * Computes min/max numeric facet values for this column.
9
9
  */
@@ -20,7 +20,7 @@ interface Column_ColumnFaceting<TFeatures extends TableFeatures, TData extends R
20
20
  */
21
21
  getFacetedUniqueValues: () => Map<any, number>;
22
22
  }
23
- interface Table_RowModels_Faceted<TFeatures extends TableFeatures, TData extends RowData> {
23
+ interface Table_RowModels_Faceted<in out TFeatures extends TableFeatures, in out TData extends RowData> {
24
24
  /**
25
25
  * Computes min/max numeric facet values for the active faceting context.
26
26
  *
@@ -40,12 +40,12 @@ interface Table_RowModels_Faceted<TFeatures extends TableFeatures, TData extends
40
40
  */
41
41
  getFacetedUniqueValues: () => Map<any, number>;
42
42
  }
43
- interface CachedRowModel_Faceted<TFeatures extends TableFeatures, TData extends RowData> {
43
+ interface CachedRowModel_Faceted<in out TFeatures extends TableFeatures, in out TData extends RowData> {
44
44
  facetedRowModel?: (columnId: string) => () => RowModel<TFeatures, TData>;
45
45
  facetedMinMaxValues?: (columnId: string) => [number, number];
46
46
  facetedUniqueValues?: (columnId: string) => Map<any, number>;
47
47
  }
48
- interface Table_ColumnFaceting<TFeatures extends TableFeatures, TData extends RowData> {
48
+ interface Table_ColumnFaceting<in out TFeatures extends TableFeatures, in out TData extends RowData> {
49
49
  /**
50
50
  * Returns the min and max values for the global filter.
51
51
  */
@@ -3,7 +3,7 @@ import { TableFeatures } from "../../types/TableFeatures.js";
3
3
  import { RowModel } from "../../core/row-models/coreRowModelsFeature.types.js";
4
4
 
5
5
  //#region src/features/column-faceting/columnFacetingFeature.types.d.ts
6
- interface Column_ColumnFaceting<TFeatures extends TableFeatures, TData extends RowData> {
6
+ interface Column_ColumnFaceting<in out TFeatures extends TableFeatures, in out TData extends RowData> {
7
7
  /**
8
8
  * Computes min/max numeric facet values for this column.
9
9
  */
@@ -20,7 +20,7 @@ interface Column_ColumnFaceting<TFeatures extends TableFeatures, TData extends R
20
20
  */
21
21
  getFacetedUniqueValues: () => Map<any, number>;
22
22
  }
23
- interface Table_RowModels_Faceted<TFeatures extends TableFeatures, TData extends RowData> {
23
+ interface Table_RowModels_Faceted<in out TFeatures extends TableFeatures, in out TData extends RowData> {
24
24
  /**
25
25
  * Computes min/max numeric facet values for the active faceting context.
26
26
  *
@@ -40,12 +40,12 @@ interface Table_RowModels_Faceted<TFeatures extends TableFeatures, TData extends
40
40
  */
41
41
  getFacetedUniqueValues: () => Map<any, number>;
42
42
  }
43
- interface CachedRowModel_Faceted<TFeatures extends TableFeatures, TData extends RowData> {
43
+ interface CachedRowModel_Faceted<in out TFeatures extends TableFeatures, in out TData extends RowData> {
44
44
  facetedRowModel?: (columnId: string) => () => RowModel<TFeatures, TData>;
45
45
  facetedMinMaxValues?: (columnId: string) => [number, number];
46
46
  facetedUniqueValues?: (columnId: string) => Map<any, number>;
47
47
  }
48
- interface Table_ColumnFaceting<TFeatures extends TableFeatures, TData extends RowData> {
48
+ interface Table_ColumnFaceting<in out TFeatures extends TableFeatures, in out TData extends RowData> {
49
49
  /**
50
50
  * Returns the min and max values for the global filter.
51
51
  */
@@ -27,15 +27,15 @@ interface ColumnFilter {
27
27
  id: string;
28
28
  value: unknown;
29
29
  }
30
- interface ResolvedColumnFilter<TFeatures extends TableFeatures, TData extends RowData> {
30
+ interface ResolvedColumnFilter<in out TFeatures extends TableFeatures, in out TData extends RowData> {
31
31
  filterFn: FilterFn<TFeatures, TData>;
32
32
  id: string;
33
33
  resolvedValue: unknown;
34
34
  }
35
- interface RowModelFns_ColumnFiltering<TFeatures extends TableFeatures, TData extends RowData> {
35
+ interface RowModelFns_ColumnFiltering<in out TFeatures extends TableFeatures, in out TData extends RowData> {
36
36
  filterFns: Record<string, FilterFn<TFeatures, TData>>;
37
37
  }
38
- interface FilterFn<TFeatures extends TableFeatures, TData extends RowData> {
38
+ interface FilterFn<in out TFeatures extends TableFeatures, in out TData extends RowData> {
39
39
  (row: Row<TFeatures, TData>, columnId: string, filterValue: any, addMeta?: (meta: ExtractFilterMeta<TFeatures>) => void): boolean;
40
40
  autoRemove?: ColumnFilterAutoRemoveTestFn<TFeatures, TData>;
41
41
  resolveFilterValue?: TransformFilterValueFn<TFeatures, TData>;
@@ -57,7 +57,7 @@ type ExtractFilterFnKeys<TFeatures extends TableFeatures> = IsAny<TFeatures> ext
57
57
  filterFns: infer TFilterFns extends object;
58
58
  } ? Extract<keyof TFilterFns, string> : keyof FilterFns;
59
59
  type FilterFnOption<TFeatures extends TableFeatures, TData extends RowData> = 'auto' | ExtractFilterFnKeys<TFeatures> | FilterFn<TFeatures, TData>;
60
- interface ColumnDef_ColumnFiltering<TFeatures extends TableFeatures, TData extends RowData> {
60
+ interface ColumnDef_ColumnFiltering<in out TFeatures extends TableFeatures, in out TData extends RowData> {
61
61
  /**
62
62
  * Enables this column to participate in column-specific filtering.
63
63
  *
@@ -70,7 +70,7 @@ interface ColumnDef_ColumnFiltering<TFeatures extends TableFeatures, TData exten
70
70
  */
71
71
  filterFn?: FilterFnOption<TFeatures, TData>;
72
72
  }
73
- interface Column_ColumnFiltering<TFeatures extends TableFeatures, TData extends RowData> {
73
+ interface Column_ColumnFiltering<in out TFeatures extends TableFeatures, in out TData extends RowData> {
74
74
  /**
75
75
  * Returns an automatically calculated filter function for the column based off of the columns first known value.
76
76
  */
@@ -103,7 +103,7 @@ interface Column_ColumnFiltering<TFeatures extends TableFeatures, TData extends
103
103
  */
104
104
  setFilterValue: (updater: Updater<any>) => void;
105
105
  }
106
- interface Row_ColumnFiltering<TFeatures extends TableFeatures, TData extends RowData> {
106
+ interface Row_ColumnFiltering<in out TFeatures extends TableFeatures, in out TData extends RowData> {
107
107
  /**
108
108
  * The column filters map for the row. This object tracks whether a row is passing/failing specific filters by their column ID.
109
109
  */
@@ -113,7 +113,7 @@ interface Row_ColumnFiltering<TFeatures extends TableFeatures, TData extends Row
113
113
  */
114
114
  columnFiltersMeta: Record<string, ExtractFilterMeta<TFeatures>>;
115
115
  }
116
- interface TableOptions_ColumnFiltering<TFeatures extends TableFeatures, TData extends RowData> {
116
+ interface TableOptions_ColumnFiltering<in out TFeatures extends TableFeatures, in out TData extends RowData> {
117
117
  /**
118
118
  * Enables column-specific filtering for all columns that also allow it.
119
119
  */
@@ -156,7 +156,7 @@ interface Table_ColumnFiltering {
156
156
  */
157
157
  setColumnFilters: (updater: Updater<ColumnFiltersState>) => void;
158
158
  }
159
- interface Table_RowModels_Filtered<TFeatures extends TableFeatures, TData extends RowData> {
159
+ interface Table_RowModels_Filtered<in out TFeatures extends TableFeatures, in out TData extends RowData> {
160
160
  /**
161
161
  * Resolves the row model after column and global filters have been applied.
162
162
  */
@@ -166,7 +166,7 @@ interface Table_RowModels_Filtered<TFeatures extends TableFeatures, TData extend
166
166
  */
167
167
  getPreFilteredRowModel: () => RowModel<TFeatures, TData>;
168
168
  }
169
- interface CachedRowModel_Filtered<TFeatures extends TableFeatures, TData extends RowData> {
169
+ interface CachedRowModel_Filtered<in out TFeatures extends TableFeatures, in out TData extends RowData> {
170
170
  filteredRowModel: () => RowModel<TFeatures, TData>;
171
171
  }
172
172
  //#endregion
@@ -27,15 +27,15 @@ interface ColumnFilter {
27
27
  id: string;
28
28
  value: unknown;
29
29
  }
30
- interface ResolvedColumnFilter<TFeatures extends TableFeatures, TData extends RowData> {
30
+ interface ResolvedColumnFilter<in out TFeatures extends TableFeatures, in out TData extends RowData> {
31
31
  filterFn: FilterFn<TFeatures, TData>;
32
32
  id: string;
33
33
  resolvedValue: unknown;
34
34
  }
35
- interface RowModelFns_ColumnFiltering<TFeatures extends TableFeatures, TData extends RowData> {
35
+ interface RowModelFns_ColumnFiltering<in out TFeatures extends TableFeatures, in out TData extends RowData> {
36
36
  filterFns: Record<string, FilterFn<TFeatures, TData>>;
37
37
  }
38
- interface FilterFn<TFeatures extends TableFeatures, TData extends RowData> {
38
+ interface FilterFn<in out TFeatures extends TableFeatures, in out TData extends RowData> {
39
39
  (row: Row<TFeatures, TData>, columnId: string, filterValue: any, addMeta?: (meta: ExtractFilterMeta<TFeatures>) => void): boolean;
40
40
  autoRemove?: ColumnFilterAutoRemoveTestFn<TFeatures, TData>;
41
41
  resolveFilterValue?: TransformFilterValueFn<TFeatures, TData>;
@@ -57,7 +57,7 @@ type ExtractFilterFnKeys<TFeatures extends TableFeatures> = IsAny<TFeatures> ext
57
57
  filterFns: infer TFilterFns extends object;
58
58
  } ? Extract<keyof TFilterFns, string> : keyof FilterFns;
59
59
  type FilterFnOption<TFeatures extends TableFeatures, TData extends RowData> = 'auto' | ExtractFilterFnKeys<TFeatures> | FilterFn<TFeatures, TData>;
60
- interface ColumnDef_ColumnFiltering<TFeatures extends TableFeatures, TData extends RowData> {
60
+ interface ColumnDef_ColumnFiltering<in out TFeatures extends TableFeatures, in out TData extends RowData> {
61
61
  /**
62
62
  * Enables this column to participate in column-specific filtering.
63
63
  *
@@ -70,7 +70,7 @@ interface ColumnDef_ColumnFiltering<TFeatures extends TableFeatures, TData exten
70
70
  */
71
71
  filterFn?: FilterFnOption<TFeatures, TData>;
72
72
  }
73
- interface Column_ColumnFiltering<TFeatures extends TableFeatures, TData extends RowData> {
73
+ interface Column_ColumnFiltering<in out TFeatures extends TableFeatures, in out TData extends RowData> {
74
74
  /**
75
75
  * Returns an automatically calculated filter function for the column based off of the columns first known value.
76
76
  */
@@ -103,7 +103,7 @@ interface Column_ColumnFiltering<TFeatures extends TableFeatures, TData extends
103
103
  */
104
104
  setFilterValue: (updater: Updater<any>) => void;
105
105
  }
106
- interface Row_ColumnFiltering<TFeatures extends TableFeatures, TData extends RowData> {
106
+ interface Row_ColumnFiltering<in out TFeatures extends TableFeatures, in out TData extends RowData> {
107
107
  /**
108
108
  * The column filters map for the row. This object tracks whether a row is passing/failing specific filters by their column ID.
109
109
  */
@@ -113,7 +113,7 @@ interface Row_ColumnFiltering<TFeatures extends TableFeatures, TData extends Row
113
113
  */
114
114
  columnFiltersMeta: Record<string, ExtractFilterMeta<TFeatures>>;
115
115
  }
116
- interface TableOptions_ColumnFiltering<TFeatures extends TableFeatures, TData extends RowData> {
116
+ interface TableOptions_ColumnFiltering<in out TFeatures extends TableFeatures, in out TData extends RowData> {
117
117
  /**
118
118
  * Enables column-specific filtering for all columns that also allow it.
119
119
  */
@@ -156,7 +156,7 @@ interface Table_ColumnFiltering {
156
156
  */
157
157
  setColumnFilters: (updater: Updater<ColumnFiltersState>) => void;
158
158
  }
159
- interface Table_RowModels_Filtered<TFeatures extends TableFeatures, TData extends RowData> {
159
+ interface Table_RowModels_Filtered<in out TFeatures extends TableFeatures, in out TData extends RowData> {
160
160
  /**
161
161
  * Resolves the row model after column and global filters have been applied.
162
162
  */
@@ -166,7 +166,7 @@ interface Table_RowModels_Filtered<TFeatures extends TableFeatures, TData extend
166
166
  */
167
167
  getPreFilteredRowModel: () => RowModel<TFeatures, TData>;
168
168
  }
169
- interface CachedRowModel_Filtered<TFeatures extends TableFeatures, TData extends RowData> {
169
+ interface CachedRowModel_Filtered<in out TFeatures extends TableFeatures, in out TData extends RowData> {
170
170
  filteredRowModel: () => RowModel<TFeatures, TData>;
171
171
  }
172
172
  //#endregion
@@ -11,7 +11,7 @@ type GroupingState = Array<string>;
11
11
  interface TableState_ColumnGrouping {
12
12
  grouping: GroupingState;
13
13
  }
14
- interface RowModelFns_ColumnGrouping<TFeatures extends TableFeatures, TData extends RowData> {
14
+ interface RowModelFns_ColumnGrouping<in out TFeatures extends TableFeatures, in out TData extends RowData> {
15
15
  aggregationFns: Record<string, AggregationFn<TFeatures, TData>>;
16
16
  }
17
17
  interface AggregationFns {}
@@ -31,7 +31,7 @@ type ExtractAggregationFnKeys<TFeatures extends TableFeatures> = IsAny<TFeatures
31
31
  aggregationFns: infer TAggregationFns extends object;
32
32
  } ? Extract<keyof TAggregationFns, string> : keyof AggregationFns;
33
33
  type AggregationFnOption<TFeatures extends TableFeatures, TData extends RowData> = 'auto' | ExtractAggregationFnKeys<TFeatures> | AggregationFn<TFeatures, TData>;
34
- interface ColumnDef_ColumnGrouping<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData> {
34
+ interface ColumnDef_ColumnGrouping<in out TFeatures extends TableFeatures, in out TData extends RowData, TValue extends CellData = CellData> {
35
35
  /**
36
36
  * The cell to display each row for the column if the cell is an aggregate. If a function is passed, it will be passed a props object with the context of the cell and should return the property type for your adapter (the exact type depends on the adapter being used).
37
37
  */
@@ -51,7 +51,7 @@ interface ColumnDef_ColumnGrouping<TFeatures extends TableFeatures, TData extend
51
51
  */
52
52
  getGroupingValue?: (row: TData) => any;
53
53
  }
54
- interface Column_ColumnGrouping<TFeatures extends TableFeatures, TData extends RowData> {
54
+ interface Column_ColumnGrouping<in out TFeatures extends TableFeatures, in out TData extends RowData> {
55
55
  /**
56
56
  * Returns the aggregation function for the column.
57
57
  */
@@ -139,7 +139,7 @@ interface TableOptions_ColumnGrouping {
139
139
  onGroupingChange?: OnChangeFn<GroupingState>;
140
140
  }
141
141
  type GroupingColumnMode = false | 'reorder' | 'remove';
142
- interface Table_ColumnGrouping<TFeatures extends TableFeatures, TData extends RowData> {
142
+ interface Table_ColumnGrouping<in out TFeatures extends TableFeatures, in out TData extends RowData> {
143
143
  /**
144
144
  * Resets `grouping` to `initialState.grouping`.
145
145
  *
@@ -151,7 +151,7 @@ interface Table_ColumnGrouping<TFeatures extends TableFeatures, TData extends Ro
151
151
  */
152
152
  setGrouping: (updater: Updater<GroupingState>) => void;
153
153
  }
154
- interface Table_RowModels_Grouped<TFeatures extends TableFeatures, TData extends RowData> {
154
+ interface Table_RowModels_Grouped<in out TFeatures extends TableFeatures, in out TData extends RowData> {
155
155
  /**
156
156
  * Resolves the row model after grouping and aggregation have been applied.
157
157
  */
@@ -161,7 +161,7 @@ interface Table_RowModels_Grouped<TFeatures extends TableFeatures, TData extends
161
161
  */
162
162
  getPreGroupedRowModel: () => RowModel<TFeatures, TData>;
163
163
  }
164
- interface CachedRowModel_Grouped<TFeatures extends TableFeatures, TData extends RowData> {
164
+ interface CachedRowModel_Grouped<in out TFeatures extends TableFeatures, in out TData extends RowData> {
165
165
  groupedRowModel: () => RowModel<TFeatures, TData>;
166
166
  }
167
167
  //#endregion
@@ -11,7 +11,7 @@ type GroupingState = Array<string>;
11
11
  interface TableState_ColumnGrouping {
12
12
  grouping: GroupingState;
13
13
  }
14
- interface RowModelFns_ColumnGrouping<TFeatures extends TableFeatures, TData extends RowData> {
14
+ interface RowModelFns_ColumnGrouping<in out TFeatures extends TableFeatures, in out TData extends RowData> {
15
15
  aggregationFns: Record<string, AggregationFn<TFeatures, TData>>;
16
16
  }
17
17
  interface AggregationFns {}
@@ -31,7 +31,7 @@ type ExtractAggregationFnKeys<TFeatures extends TableFeatures> = IsAny<TFeatures
31
31
  aggregationFns: infer TAggregationFns extends object;
32
32
  } ? Extract<keyof TAggregationFns, string> : keyof AggregationFns;
33
33
  type AggregationFnOption<TFeatures extends TableFeatures, TData extends RowData> = 'auto' | ExtractAggregationFnKeys<TFeatures> | AggregationFn<TFeatures, TData>;
34
- interface ColumnDef_ColumnGrouping<TFeatures extends TableFeatures, TData extends RowData, TValue extends CellData = CellData> {
34
+ interface ColumnDef_ColumnGrouping<in out TFeatures extends TableFeatures, in out TData extends RowData, TValue extends CellData = CellData> {
35
35
  /**
36
36
  * The cell to display each row for the column if the cell is an aggregate. If a function is passed, it will be passed a props object with the context of the cell and should return the property type for your adapter (the exact type depends on the adapter being used).
37
37
  */
@@ -51,7 +51,7 @@ interface ColumnDef_ColumnGrouping<TFeatures extends TableFeatures, TData extend
51
51
  */
52
52
  getGroupingValue?: (row: TData) => any;
53
53
  }
54
- interface Column_ColumnGrouping<TFeatures extends TableFeatures, TData extends RowData> {
54
+ interface Column_ColumnGrouping<in out TFeatures extends TableFeatures, in out TData extends RowData> {
55
55
  /**
56
56
  * Returns the aggregation function for the column.
57
57
  */
@@ -139,7 +139,7 @@ interface TableOptions_ColumnGrouping {
139
139
  onGroupingChange?: OnChangeFn<GroupingState>;
140
140
  }
141
141
  type GroupingColumnMode = false | 'reorder' | 'remove';
142
- interface Table_ColumnGrouping<TFeatures extends TableFeatures, TData extends RowData> {
142
+ interface Table_ColumnGrouping<in out TFeatures extends TableFeatures, in out TData extends RowData> {
143
143
  /**
144
144
  * Resets `grouping` to `initialState.grouping`.
145
145
  *
@@ -151,7 +151,7 @@ interface Table_ColumnGrouping<TFeatures extends TableFeatures, TData extends Ro
151
151
  */
152
152
  setGrouping: (updater: Updater<GroupingState>) => void;
153
153
  }
154
- interface Table_RowModels_Grouped<TFeatures extends TableFeatures, TData extends RowData> {
154
+ interface Table_RowModels_Grouped<in out TFeatures extends TableFeatures, in out TData extends RowData> {
155
155
  /**
156
156
  * Resolves the row model after grouping and aggregation have been applied.
157
157
  */
@@ -161,7 +161,7 @@ interface Table_RowModels_Grouped<TFeatures extends TableFeatures, TData extends
161
161
  */
162
162
  getPreGroupedRowModel: () => RowModel<TFeatures, TData>;
163
163
  }
164
- interface CachedRowModel_Grouped<TFeatures extends TableFeatures, TData extends RowData> {
164
+ interface CachedRowModel_Grouped<in out TFeatures extends TableFeatures, in out TData extends RowData> {
165
165
  groupedRowModel: () => RowModel<TFeatures, TData>;
166
166
  }
167
167
  //#endregion
@@ -39,7 +39,7 @@ interface Column_ColumnOrdering {
39
39
  interface ColumnOrderDefaultOptions {
40
40
  onColumnOrderChange: OnChangeFn<ColumnOrderState>;
41
41
  }
42
- interface Table_ColumnOrdering<TFeatures extends TableFeatures, TData extends RowData> {
42
+ interface Table_ColumnOrdering<in out TFeatures extends TableFeatures, in out TData extends RowData> {
43
43
  /**
44
44
  * Resets `columnOrder` to `initialState.columnOrder`.
45
45
  *
@@ -39,7 +39,7 @@ interface Column_ColumnOrdering {
39
39
  interface ColumnOrderDefaultOptions {
40
40
  onColumnOrderChange: OnChangeFn<ColumnOrderState>;
41
41
  }
42
- interface Table_ColumnOrdering<TFeatures extends TableFeatures, TData extends RowData> {
42
+ interface Table_ColumnOrdering<in out TFeatures extends TableFeatures, in out TData extends RowData> {
43
43
  /**
44
44
  * Resets `columnOrder` to `initialState.columnOrder`.
45
45
  *
@@ -60,7 +60,7 @@ interface Column_ColumnPinning {
60
60
  */
61
61
  pin: (position: ColumnPinningPosition) => void;
62
62
  }
63
- interface Row_ColumnPinning<TFeatures extends TableFeatures, TData extends RowData> {
63
+ interface Row_ColumnPinning<in out TFeatures extends TableFeatures, in out TData extends RowData> {
64
64
  /**
65
65
  * Gets visible row cells whose columns are not pinned left or right.
66
66
  */
@@ -74,7 +74,7 @@ interface Row_ColumnPinning<TFeatures extends TableFeatures, TData extends RowDa
74
74
  */
75
75
  getRightVisibleCells: () => Array<Cell<TFeatures, TData, unknown>>;
76
76
  }
77
- interface Table_ColumnPinning<TFeatures extends TableFeatures, TData extends RowData> {
77
+ interface Table_ColumnPinning<in out TFeatures extends TableFeatures, in out TData extends RowData> {
78
78
  /**
79
79
  * Builds flat center-region headers for columns that are not pinned,
80
80
  * including parent headers.
@@ -60,7 +60,7 @@ interface Column_ColumnPinning {
60
60
  */
61
61
  pin: (position: ColumnPinningPosition) => void;
62
62
  }
63
- interface Row_ColumnPinning<TFeatures extends TableFeatures, TData extends RowData> {
63
+ interface Row_ColumnPinning<in out TFeatures extends TableFeatures, in out TData extends RowData> {
64
64
  /**
65
65
  * Gets visible row cells whose columns are not pinned left or right.
66
66
  */
@@ -74,7 +74,7 @@ interface Row_ColumnPinning<TFeatures extends TableFeatures, TData extends RowDa
74
74
  */
75
75
  getRightVisibleCells: () => Array<Cell<TFeatures, TData, unknown>>;
76
76
  }
77
- interface Table_ColumnPinning<TFeatures extends TableFeatures, TData extends RowData> {
77
+ interface Table_ColumnPinning<in out TFeatures extends TableFeatures, in out TData extends RowData> {
78
78
  /**
79
79
  * Builds flat center-region headers for columns that are not pinned,
80
80
  * including parent headers.
@@ -21,7 +21,7 @@ interface TableOptions_ColumnVisibility {
21
21
  onColumnVisibilityChange?: OnChangeFn<ColumnVisibilityState>;
22
22
  }
23
23
  type VisibilityDefaultOptions = Pick<TableOptions_ColumnVisibility, 'onColumnVisibilityChange'>;
24
- interface Table_ColumnVisibility<TFeatures extends TableFeatures, TData extends RowData> {
24
+ interface Table_ColumnVisibility<in out TFeatures extends TableFeatures, in out TData extends RowData> {
25
25
  /**
26
26
  * Checks whether every leaf column is currently visible.
27
27
  */
@@ -64,7 +64,7 @@ interface ColumnDef_ColumnVisibility {
64
64
  */
65
65
  enableHiding?: boolean;
66
66
  }
67
- interface Row_ColumnVisibility<TFeatures extends TableFeatures, TData extends RowData> {
67
+ interface Row_ColumnVisibility<in out TFeatures extends TableFeatures, in out TData extends RowData> {
68
68
  /**
69
69
  * Gets this row's cells for currently visible columns.
70
70
  */
@@ -21,7 +21,7 @@ interface TableOptions_ColumnVisibility {
21
21
  onColumnVisibilityChange?: OnChangeFn<ColumnVisibilityState>;
22
22
  }
23
23
  type VisibilityDefaultOptions = Pick<TableOptions_ColumnVisibility, 'onColumnVisibilityChange'>;
24
- interface Table_ColumnVisibility<TFeatures extends TableFeatures, TData extends RowData> {
24
+ interface Table_ColumnVisibility<in out TFeatures extends TableFeatures, in out TData extends RowData> {
25
25
  /**
26
26
  * Checks whether every leaf column is currently visible.
27
27
  */
@@ -64,7 +64,7 @@ interface ColumnDef_ColumnVisibility {
64
64
  */
65
65
  enableHiding?: boolean;
66
66
  }
67
- interface Row_ColumnVisibility<TFeatures extends TableFeatures, TData extends RowData> {
67
+ interface Row_ColumnVisibility<in out TFeatures extends TableFeatures, in out TData extends RowData> {
68
68
  /**
69
69
  * Gets this row's cells for currently visible columns.
70
70
  */
@@ -22,7 +22,7 @@ interface Column_GlobalFiltering {
22
22
  */
23
23
  getCanGlobalFilter: () => boolean;
24
24
  }
25
- interface TableOptions_GlobalFiltering<TFeatures extends TableFeatures, TData extends RowData> {
25
+ interface TableOptions_GlobalFiltering<in out TFeatures extends TableFeatures, in out TData extends RowData> {
26
26
  /**
27
27
  * Enables global filtering across columns that allow it.
28
28
  */
@@ -46,7 +46,7 @@ interface TableOptions_GlobalFiltering<TFeatures extends TableFeatures, TData ex
46
46
  */
47
47
  onGlobalFilterChange?: OnChangeFn<any>;
48
48
  }
49
- interface Table_GlobalFiltering<TFeatures extends TableFeatures, TData extends RowData> {
49
+ interface Table_GlobalFiltering<in out TFeatures extends TableFeatures, in out TData extends RowData> {
50
50
  /**
51
51
  * Currently, this function returns the built-in `includesString` filter function. In future releases, it may return more dynamic filter functions based on the nature of the data provided.
52
52
  */
@@ -22,7 +22,7 @@ interface Column_GlobalFiltering {
22
22
  */
23
23
  getCanGlobalFilter: () => boolean;
24
24
  }
25
- interface TableOptions_GlobalFiltering<TFeatures extends TableFeatures, TData extends RowData> {
25
+ interface TableOptions_GlobalFiltering<in out TFeatures extends TableFeatures, in out TData extends RowData> {
26
26
  /**
27
27
  * Enables global filtering across columns that allow it.
28
28
  */
@@ -46,7 +46,7 @@ interface TableOptions_GlobalFiltering<TFeatures extends TableFeatures, TData ex
46
46
  */
47
47
  onGlobalFilterChange?: OnChangeFn<any>;
48
48
  }
49
- interface Table_GlobalFiltering<TFeatures extends TableFeatures, TData extends RowData> {
49
+ interface Table_GlobalFiltering<in out TFeatures extends TableFeatures, in out TData extends RowData> {
50
50
  /**
51
51
  * Currently, this function returns the built-in `includesString` filter function. In future releases, it may return more dynamic filter functions based on the nature of the data provided.
52
52
  */
@@ -31,7 +31,7 @@ interface Row_RowExpanding {
31
31
  */
32
32
  toggleExpanded: (expanded?: boolean) => void;
33
33
  }
34
- interface TableOptions_RowExpanding<TFeatures extends TableFeatures, TData extends RowData> {
34
+ interface TableOptions_RowExpanding<in out TFeatures extends TableFeatures, in out TData extends RowData> {
35
35
  /**
36
36
  * Enables automatic expanded-state resets when page-altering table state changes.
37
37
  */
@@ -63,7 +63,7 @@ interface TableOptions_RowExpanding<TFeatures extends TableFeatures, TData exten
63
63
  */
64
64
  paginateExpandedRows?: boolean;
65
65
  }
66
- interface Table_RowExpanding<TFeatures extends TableFeatures, TData extends RowData> {
66
+ interface Table_RowExpanding<in out TFeatures extends TableFeatures, in out TData extends RowData> {
67
67
  autoResetExpanded: () => void;
68
68
  /**
69
69
  * Checks whether at least one row can be expanded.
@@ -100,7 +100,7 @@ interface Table_RowExpanding<TFeatures extends TableFeatures, TData extends RowD
100
100
  */
101
101
  toggleAllRowsExpanded: (expanded?: boolean) => void;
102
102
  }
103
- interface Table_RowModels_Expanded<TFeatures extends TableFeatures, TData extends RowData> {
103
+ interface Table_RowModels_Expanded<in out TFeatures extends TableFeatures, in out TData extends RowData> {
104
104
  /**
105
105
  * Resolves the row model after expanded rows have been flattened into view.
106
106
  */
@@ -110,7 +110,7 @@ interface Table_RowModels_Expanded<TFeatures extends TableFeatures, TData extend
110
110
  */
111
111
  getPreExpandedRowModel: () => RowModel<TFeatures, TData>;
112
112
  }
113
- interface CachedRowModel_Expanded<TFeatures extends TableFeatures, TData extends RowData> {
113
+ interface CachedRowModel_Expanded<in out TFeatures extends TableFeatures, in out TData extends RowData> {
114
114
  expandedRowModel: () => RowModel<TFeatures, TData>;
115
115
  }
116
116
  //#endregion
@@ -31,7 +31,7 @@ interface Row_RowExpanding {
31
31
  */
32
32
  toggleExpanded: (expanded?: boolean) => void;
33
33
  }
34
- interface TableOptions_RowExpanding<TFeatures extends TableFeatures, TData extends RowData> {
34
+ interface TableOptions_RowExpanding<in out TFeatures extends TableFeatures, in out TData extends RowData> {
35
35
  /**
36
36
  * Enables automatic expanded-state resets when page-altering table state changes.
37
37
  */
@@ -63,7 +63,7 @@ interface TableOptions_RowExpanding<TFeatures extends TableFeatures, TData exten
63
63
  */
64
64
  paginateExpandedRows?: boolean;
65
65
  }
66
- interface Table_RowExpanding<TFeatures extends TableFeatures, TData extends RowData> {
66
+ interface Table_RowExpanding<in out TFeatures extends TableFeatures, in out TData extends RowData> {
67
67
  autoResetExpanded: () => void;
68
68
  /**
69
69
  * Checks whether at least one row can be expanded.
@@ -100,7 +100,7 @@ interface Table_RowExpanding<TFeatures extends TableFeatures, TData extends RowD
100
100
  */
101
101
  toggleAllRowsExpanded: (expanded?: boolean) => void;
102
102
  }
103
- interface Table_RowModels_Expanded<TFeatures extends TableFeatures, TData extends RowData> {
103
+ interface Table_RowModels_Expanded<in out TFeatures extends TableFeatures, in out TData extends RowData> {
104
104
  /**
105
105
  * Resolves the row model after expanded rows have been flattened into view.
106
106
  */
@@ -110,7 +110,7 @@ interface Table_RowModels_Expanded<TFeatures extends TableFeatures, TData extend
110
110
  */
111
111
  getPreExpandedRowModel: () => RowModel<TFeatures, TData>;
112
112
  }
113
- interface CachedRowModel_Expanded<TFeatures extends TableFeatures, TData extends RowData> {
113
+ interface CachedRowModel_Expanded<in out TFeatures extends TableFeatures, in out TData extends RowData> {
114
114
  expandedRowModel: () => RowModel<TFeatures, TData>;
115
115
  }
116
116
  //#endregion
@@ -37,7 +37,7 @@ interface TableOptions_RowPagination {
37
37
  interface PaginationDefaultOptions {
38
38
  onPaginationChange: OnChangeFn<PaginationState>;
39
39
  }
40
- interface Table_RowPagination<TFeatures extends TableFeatures, TData extends RowData> {
40
+ interface Table_RowPagination<in out TFeatures extends TableFeatures, in out TData extends RowData> {
41
41
  _autoResetPageIndex: () => void;
42
42
  /**
43
43
  * Checks whether the current page index can move forward.
@@ -108,7 +108,7 @@ interface Table_RowPagination<TFeatures extends TableFeatures, TData extends Row
108
108
  */
109
109
  setPagination: (updater: Updater<PaginationState>) => void;
110
110
  }
111
- interface Table_RowModels_Paginated<TFeatures extends TableFeatures, TData extends RowData> {
111
+ interface Table_RowModels_Paginated<in out TFeatures extends TableFeatures, in out TData extends RowData> {
112
112
  /**
113
113
  * Resolves the row model after pagination has sliced the current page.
114
114
  */
@@ -118,7 +118,7 @@ interface Table_RowModels_Paginated<TFeatures extends TableFeatures, TData exten
118
118
  */
119
119
  getPrePaginatedRowModel: () => RowModel<TFeatures, TData>;
120
120
  }
121
- interface CachedRowModel_Paginated<TFeatures extends TableFeatures, TData extends RowData> {
121
+ interface CachedRowModel_Paginated<in out TFeatures extends TableFeatures, in out TData extends RowData> {
122
122
  paginatedRowModel: () => RowModel<TFeatures, TData>;
123
123
  }
124
124
  //#endregion
@@ -37,7 +37,7 @@ interface TableOptions_RowPagination {
37
37
  interface PaginationDefaultOptions {
38
38
  onPaginationChange: OnChangeFn<PaginationState>;
39
39
  }
40
- interface Table_RowPagination<TFeatures extends TableFeatures, TData extends RowData> {
40
+ interface Table_RowPagination<in out TFeatures extends TableFeatures, in out TData extends RowData> {
41
41
  _autoResetPageIndex: () => void;
42
42
  /**
43
43
  * Checks whether the current page index can move forward.
@@ -108,7 +108,7 @@ interface Table_RowPagination<TFeatures extends TableFeatures, TData extends Row
108
108
  */
109
109
  setPagination: (updater: Updater<PaginationState>) => void;
110
110
  }
111
- interface Table_RowModels_Paginated<TFeatures extends TableFeatures, TData extends RowData> {
111
+ interface Table_RowModels_Paginated<in out TFeatures extends TableFeatures, in out TData extends RowData> {
112
112
  /**
113
113
  * Resolves the row model after pagination has sliced the current page.
114
114
  */
@@ -118,7 +118,7 @@ interface Table_RowModels_Paginated<TFeatures extends TableFeatures, TData exten
118
118
  */
119
119
  getPrePaginatedRowModel: () => RowModel<TFeatures, TData>;
120
120
  }
121
- interface CachedRowModel_Paginated<TFeatures extends TableFeatures, TData extends RowData> {
121
+ interface CachedRowModel_Paginated<in out TFeatures extends TableFeatures, in out TData extends RowData> {
122
122
  paginatedRowModel: () => RowModel<TFeatures, TData>;
123
123
  }
124
124
  //#endregion