@tanstack/table-core 8.5.7 → 8.5.10

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.
@@ -696,18 +696,13 @@ declare type UnionToIntersection<T> = (T extends any ? (x: T) => any : never) ex
696
696
  declare type IsAny<T, Y, N> = 1 extends 0 & T ? Y : N;
697
697
  declare type IsKnown<T, Y, N> = unknown extends T ? N : Y;
698
698
  declare type ComputeRange<N extends number, Result extends Array<unknown> = []> = Result['length'] extends N ? Result : ComputeRange<N, [...Result, Result['length']]>;
699
- declare type Index100 = ComputeRange<100>[number];
699
+ declare type Index40 = ComputeRange<40>[number];
700
700
  declare type IsTuple<T> = T extends readonly any[] & {
701
701
  length: infer Length;
702
- } ? Length extends Index100 ? T : never : never;
702
+ } ? Length extends Index40 ? T : never : never;
703
703
  declare type AllowedIndexes<Tuple extends ReadonlyArray<any>, Keys extends number = never> = Tuple extends readonly [] ? Keys : Tuple extends readonly [infer _, ...infer Tail] ? AllowedIndexes<Tail, Keys | Tail['length']> : Keys;
704
- declare type DeepKeys<T> = unknown extends T ? keyof T : object extends T ? string : T extends readonly any[] & IsTuple<T> ? AllowedIndexes<T> | DeepKeysPrefix<T> : T extends any[] ? never & 'Dynamic length array indexing is not supported' : T extends Date ? never : T extends object ? (keyof T & string) | DeepKeysPrefix<T> : never;
705
- declare type Key = string | number | symbol;
706
- declare type Join<L extends Key | undefined, R extends Key | undefined> = L extends string | number ? R extends string | number ? `${L}.${R}` : L : R extends string | number ? R : undefined;
707
- declare type Union<L extends unknown | undefined, R extends unknown | undefined> = L extends undefined ? R extends undefined ? undefined : R : R extends undefined ? L : L | R;
708
- declare type DeepKeysPrefix<T extends object, Prev extends Key | undefined = undefined, Path extends Key | undefined = undefined, PrevTypes extends object = T> = string & {
709
- [K in keyof T]: T[K] extends PrevTypes | T ? Union<Union<Prev, Path>, Join<Path, K>> : T[K] extends object ? DeepKeysPrefix<T[K], Union<Prev, Path>, Join<Path, K>, PrevTypes | T> : Union<Union<Prev, Path>, Join<Path, K>>;
710
- }[keyof T];
704
+ declare type DeepKeys<T> = unknown extends T ? keyof T : object extends T ? string : T extends readonly any[] & IsTuple<T> ? AllowedIndexes<T> | DeepKeysPrefix<T, AllowedIndexes<T>> : T extends any[] ? never & 'Dynamic length array indexing is not supported' : T extends Date ? never : T extends object ? (keyof T & string) | DeepKeysPrefix<T, keyof T> : never;
705
+ declare type DeepKeysPrefix<T, TPrefix> = TPrefix extends keyof T & (number | string) ? `${TPrefix}.${DeepKeys<T[TPrefix]> & string}` : never;
711
706
  declare type DeepValue<T, TProp> = T extends Record<string | number, any> ? TProp extends `${infer TBranch}.${infer TDeepProp}` ? DeepValue<T[TBranch], TDeepProp> : T[TProp & string] : never;
712
707
  declare type NoInfer<T> = [T][T extends any ? 0 : never];
713
708
  declare type Getter<TValue> = <TTValue = TValue>() => NoInfer<TTValue>;
@@ -800,7 +795,7 @@ declare function getSortedRowModel<TData extends RowData>(): (table: Table<TData
800
795
  declare function getGroupedRowModel<TData extends RowData>(): (table: Table<TData>) => () => RowModel<TData>;
801
796
 
802
797
  declare function getExpandedRowModel<TData extends RowData>(): (table: Table<TData>) => () => RowModel<TData>;
803
- declare function expandRows<TData extends RowData>(rowModel: RowModel<TData>, table: Table<TData>): {
798
+ declare function expandRows<TData extends RowData>(rowModel: RowModel<TData>): {
804
799
  rows: Row<TData>[];
805
800
  flatRows: Row<TData>[];
806
801
  rowsById: Record<string, Row<TData>>;
@@ -3785,8 +3785,12 @@
3785
3785
 
3786
3786
  function getExpandedRowModel() {
3787
3787
  return table => memo(() => [table.getState().expanded, table.getPreExpandedRowModel(), table.options.paginateExpandedRows], (expanded, rowModel, paginateExpandedRows) => {
3788
- if (!rowModel.rows.length || // Do not expand if rows are not included in pagination
3789
- !paginateExpandedRows || expanded !== true && !Object.keys(expanded != null ? expanded : {}).length) {
3788
+ if (!rowModel.rows.length || expanded !== true && !Object.keys(expanded != null ? expanded : {}).length) {
3789
+ return rowModel;
3790
+ }
3791
+
3792
+ if (!paginateExpandedRows) {
3793
+ // Only expand rows at this point if they are being paginated
3790
3794
  return rowModel;
3791
3795
  }
3792
3796
 
@@ -3800,7 +3804,7 @@
3800
3804
  }
3801
3805
  });
3802
3806
  }
3803
- function expandRows(rowModel, table) {
3807
+ function expandRows(rowModel) {
3804
3808
  const expandedRows = [];
3805
3809
 
3806
3810
  const handleRow = row => {
@@ -3822,7 +3826,7 @@
3822
3826
  }
3823
3827
 
3824
3828
  function getPaginationRowModel(opts) {
3825
- return table => memo(() => [table.getState().pagination, table.getPrePaginationRowModel()], (pagination, rowModel) => {
3829
+ return table => memo(() => [table.getState().pagination, table.getPrePaginationRowModel(), table.options.paginateExpandedRows ? undefined : table.getState().expanded], (pagination, rowModel) => {
3826
3830
  if (!rowModel.rows.length) {
3827
3831
  return rowModel;
3828
3832
  }