@tanstack/react-table 8.0.0-alpha.2 → 8.0.0-alpha.22

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 (99) hide show
  1. package/build/cjs/_virtual/_rollupPluginBabelHelpers.js +0 -78
  2. package/build/cjs/_virtual/_rollupPluginBabelHelpers.js.map +1 -1
  3. package/build/cjs/index.js +96 -12
  4. package/build/cjs/index.js.map +1 -1
  5. package/build/esm/index.js +40 -3663
  6. package/build/esm/index.js.map +1 -1
  7. package/build/stats-html.html +1 -1
  8. package/build/stats-react.json +28 -676
  9. package/build/types/index.d.ts +13 -7
  10. package/build/umd/index.development.js +50 -3665
  11. package/build/umd/index.development.js.map +1 -1
  12. package/build/umd/index.production.js +1 -1
  13. package/build/umd/index.production.js.map +1 -1
  14. package/package.json +4 -1
  15. package/src/index.tsx +104 -7
  16. package/build/cjs/aggregationTypes.js +0 -130
  17. package/build/cjs/aggregationTypes.js.map +0 -1
  18. package/build/cjs/core.js +0 -519
  19. package/build/cjs/core.js.map +0 -1
  20. package/build/cjs/createTable.js +0 -103
  21. package/build/cjs/createTable.js.map +0 -1
  22. package/build/cjs/features/ColumnSizing.js +0 -331
  23. package/build/cjs/features/ColumnSizing.js.map +0 -1
  24. package/build/cjs/features/Expanding.js +0 -234
  25. package/build/cjs/features/Expanding.js.map +0 -1
  26. package/build/cjs/features/Filters.js +0 -396
  27. package/build/cjs/features/Filters.js.map +0 -1
  28. package/build/cjs/features/Grouping.js +0 -228
  29. package/build/cjs/features/Grouping.js.map +0 -1
  30. package/build/cjs/features/Headers.js +0 -486
  31. package/build/cjs/features/Headers.js.map +0 -1
  32. package/build/cjs/features/Ordering.js +0 -83
  33. package/build/cjs/features/Ordering.js.map +0 -1
  34. package/build/cjs/features/Pinning.js +0 -163
  35. package/build/cjs/features/Pinning.js.map +0 -1
  36. package/build/cjs/features/Sorting.js +0 -269
  37. package/build/cjs/features/Sorting.js.map +0 -1
  38. package/build/cjs/features/Visibility.js +0 -160
  39. package/build/cjs/features/Visibility.js.map +0 -1
  40. package/build/cjs/filterTypes.js +0 -172
  41. package/build/cjs/filterTypes.js.map +0 -1
  42. package/build/cjs/sortTypes.js +0 -121
  43. package/build/cjs/sortTypes.js.map +0 -1
  44. package/build/cjs/utils/columnFilterRowsFn.js +0 -130
  45. package/build/cjs/utils/columnFilterRowsFn.js.map +0 -1
  46. package/build/cjs/utils/expandRowsFn.js +0 -38
  47. package/build/cjs/utils/expandRowsFn.js.map +0 -1
  48. package/build/cjs/utils/globalFilterRowsFn.js +0 -100
  49. package/build/cjs/utils/globalFilterRowsFn.js.map +0 -1
  50. package/build/cjs/utils/groupRowsFn.js +0 -154
  51. package/build/cjs/utils/groupRowsFn.js.map +0 -1
  52. package/build/cjs/utils/sortRowsFn.js +0 -93
  53. package/build/cjs/utils/sortRowsFn.js.map +0 -1
  54. package/build/cjs/utils.js +0 -143
  55. package/build/cjs/utils.js.map +0 -1
  56. package/build/types/aggregationTypes.d.ts +0 -22
  57. package/build/types/core.d.ts +0 -126
  58. package/build/types/createTable.d.ts +0 -35
  59. package/build/types/features/ColumnSizing.d.ts +0 -73
  60. package/build/types/features/Expanding.d.ts +0 -52
  61. package/build/types/features/Filters.d.ts +0 -93
  62. package/build/types/features/Grouping.d.ts +0 -82
  63. package/build/types/features/Headers.d.ts +0 -41
  64. package/build/types/features/Ordering.d.ts +0 -19
  65. package/build/types/features/Pinning.d.ts +0 -39
  66. package/build/types/features/Sorting.d.ts +0 -75
  67. package/build/types/features/Visibility.d.ts +0 -47
  68. package/build/types/filterTypes.d.ts +0 -50
  69. package/build/types/sortTypes.d.ts +0 -17
  70. package/build/types/types.d.ts +0 -124
  71. package/build/types/utils/columnFilterRowsFn.d.ts +0 -2
  72. package/build/types/utils/expandRowsFn.d.ts +0 -2
  73. package/build/types/utils/globalFilterRowsFn.d.ts +0 -2
  74. package/build/types/utils/groupRowsFn.d.ts +0 -2
  75. package/build/types/utils/sortRowsFn.d.ts +0 -2
  76. package/build/types/utils.d.ts +0 -24
  77. package/src/aggregationTypes.ts +0 -115
  78. package/src/core.tsx +0 -1232
  79. package/src/createTable.tsx +0 -181
  80. package/src/features/ColumnSizing.ts +0 -482
  81. package/src/features/Expanding.ts +0 -388
  82. package/src/features/Filters.ts +0 -707
  83. package/src/features/Grouping.ts +0 -451
  84. package/src/features/Headers.ts +0 -944
  85. package/src/features/Ordering.ts +0 -134
  86. package/src/features/Pinning.ts +0 -213
  87. package/src/features/Sorting.ts +0 -487
  88. package/src/features/Visibility.ts +0 -281
  89. package/src/features/withPagination.oldts +0 -208
  90. package/src/features/withRowSelection.oldts +0 -467
  91. package/src/filterTypes.ts +0 -251
  92. package/src/sortTypes.ts +0 -159
  93. package/src/types.ts +0 -314
  94. package/src/utils/columnFilterRowsFn.ts +0 -162
  95. package/src/utils/expandRowsFn.ts +0 -53
  96. package/src/utils/globalFilterRowsFn.ts +0 -129
  97. package/src/utils/groupRowsFn.ts +0 -196
  98. package/src/utils/sortRowsFn.ts +0 -115
  99. package/src/utils.tsx +0 -249
@@ -1,75 +0,0 @@
1
- import { MouseEvent, TouchEvent } from 'react';
2
- import { RowModel } from '..';
3
- import { BuiltInSortType } from '../sortTypes';
4
- import { Column, Getter, OnChangeFn, PropGetterValue, ReactTable, Row, Updater } from '../types';
5
- export declare type ColumnSort = {
6
- id: string;
7
- desc: boolean;
8
- };
9
- export declare type SortingState = ColumnSort[];
10
- export declare type SortingFn<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> = {
11
- (rowA: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>, rowB: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>, columnId: string): number;
12
- };
13
- export declare type SortingTableState = {
14
- sorting: SortingState;
15
- };
16
- export declare type SortType<TSortingFns> = 'auto' | BuiltInSortType | keyof TSortingFns | SortingFn<any, any, any, TSortingFns, any>;
17
- export declare type SortingColumnDef<TFilterFns> = {
18
- sortType?: SortType<TFilterFns>;
19
- sortDescFirst?: boolean;
20
- enableSorting?: boolean;
21
- enableMultiSort?: boolean;
22
- defaultCanSort?: boolean;
23
- invertSorting?: boolean;
24
- sortUndefined?: false | -1 | 1;
25
- };
26
- export declare type SortingColumn<_TData, _TValue, TFilterFns, _TSortingFns, _TAggregationFns> = {
27
- sortType: SortType<TFilterFns>;
28
- getCanSort: () => boolean;
29
- getCanMultiSort: () => boolean;
30
- getSortIndex: () => number;
31
- getIsSorted: () => false | 'asc' | 'desc';
32
- toggleSorting: (desc?: boolean, isMulti?: boolean) => void;
33
- getToggleSortingProps: <TGetter extends Getter<ToggleSortingProps>>(userProps?: TGetter) => undefined | PropGetterValue<ToggleSortingProps, TGetter>;
34
- };
35
- export declare type SortingOptions<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> = {
36
- sortTypes?: TSortingFns;
37
- onSortingChange?: OnChangeFn<SortingState>;
38
- autoResetSorting?: boolean;
39
- enableSorting?: boolean;
40
- enableSortingRemoval?: boolean;
41
- enableMultiRemove?: boolean;
42
- enableMultiSort?: boolean;
43
- sortDescFirst?: boolean;
44
- sortRowsFn?: (instance: ReactTable<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>, sortingState: SortingState, globalFilteredRowModel: RowModel<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>) => RowModel<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>;
45
- maxMultiSortColCount?: number;
46
- isMultiSortEvent?: (e: MouseEvent | TouchEvent) => boolean;
47
- };
48
- export declare type ToggleSortingProps = {
49
- title?: string;
50
- onClick?: (event: MouseEvent | TouchEvent) => void;
51
- };
52
- export declare type SortingInstance<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> = {
53
- getColumnAutoSortingFn: (columnId: string) => SortingFn<any, any, any, any, any> | undefined;
54
- getColumnSortingFn: (columnId: string) => SortingFn<any, any, any, any, any> | undefined;
55
- setSorting: (updater: Updater<SortingState>) => void;
56
- toggleColumnSorting: (columnId: string, desc?: boolean, multi?: boolean) => void;
57
- resetSorting: () => void;
58
- getColumnCanSort: (columnId: string) => boolean;
59
- getColumnCanMultiSort: (columnId: string) => boolean;
60
- getColumnIsSorted: (columnId: string) => false | 'asc' | 'desc';
61
- getColumnSortIndex: (columnId: string) => number;
62
- getToggleSortingProps: <TGetter extends Getter<ToggleSortingProps>>(columnId: string, userProps?: TGetter) => undefined | PropGetterValue<ToggleSortingProps, TGetter>;
63
- getSortedRowModel: () => RowModel<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>;
64
- getPreSortedRows: () => Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[];
65
- getPreSortedFlatRows: () => Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[];
66
- getPreSortedRowsById: () => Record<string, Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>>;
67
- getSortedRows: () => Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[];
68
- getSortedFlatRows: () => Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[];
69
- getSortedRowsById: () => Record<string, Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>>;
70
- };
71
- export declare function getDefaultColumn<TFilterFns>(): SortingColumnDef<TFilterFns>;
72
- export declare function getInitialState(): SortingTableState;
73
- export declare function getDefaultOptions<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>(instance: ReactTable<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>): SortingOptions<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>;
74
- export declare function createColumn<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>(column: Column<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>, instance: ReactTable<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>): SortingColumn<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>;
75
- export declare function getInstance<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>(instance: ReactTable<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>): SortingInstance<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>;
@@ -1,47 +0,0 @@
1
- import { Cell, Column, Getter, OnChangeFn, PropGetterValue, ReactTable, Updater } from '../types';
2
- export declare type VisibilityOptions = {
3
- onColumnVisibilityChange?: OnChangeFn<VisibilityState>;
4
- enableHiding?: boolean;
5
- };
6
- export declare type VisibilityDefaultOptions = {
7
- onColumnVisibilityChange: OnChangeFn<VisibilityState>;
8
- };
9
- export declare type VisibilityState = Record<string, boolean>;
10
- export declare type VisibilityTableState = {
11
- columnVisibility: VisibilityState;
12
- };
13
- export declare type VisibilityInstance<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> = {
14
- getVisibleFlatColumns: () => Column<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[];
15
- getVisibleLeafColumns: () => Column<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[];
16
- setColumnVisibility: (updater: Updater<VisibilityState>) => void;
17
- toggleColumnVisibility: (columnId: string, value?: boolean) => void;
18
- toggleAllColumnsVisible: (value?: boolean) => void;
19
- getColumnIsVisible: (columId: string) => boolean;
20
- getColumnCanHide: (columnId: string) => boolean;
21
- getIsAllColumnsVisible: () => boolean;
22
- getIsSomeColumnsVisible: () => boolean;
23
- getToggleAllColumnsVisibilityProps: <TGetter extends Getter<ToggleAllColumnsVisibilityProps>>(userProps?: TGetter) => undefined | PropGetterValue<ToggleAllColumnsVisibilityProps, TGetter>;
24
- };
25
- declare type ToggleVisibilityProps = {};
26
- declare type ToggleAllColumnsVisibilityProps = {};
27
- export declare type VisibilityColumnDef = {
28
- enableHiding?: boolean;
29
- defaultCanHide?: boolean;
30
- };
31
- export declare type VisibilityRow<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> = {
32
- getVisibleCells: () => Cell<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[];
33
- };
34
- export declare type VisibilityColumn = {
35
- getCanHide: () => boolean;
36
- getIsVisible: () => boolean;
37
- toggleVisibility: (value?: boolean) => void;
38
- getToggleVisibilityProps: <TGetter extends Getter<ToggleVisibilityProps>>(userProps?: TGetter) => PropGetterValue<ToggleVisibilityProps, TGetter>;
39
- };
40
- export declare function getInitialState(): VisibilityTableState;
41
- export declare function getDefaultOptions<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>(instance: ReactTable<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>): VisibilityDefaultOptions;
42
- export declare function getDefaultColumn(): {
43
- defaultIsVisible: boolean;
44
- };
45
- export declare function createColumn<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>(column: Column<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>, instance: ReactTable<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>): VisibilityColumn;
46
- export declare function getInstance<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>(instance: ReactTable<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>): VisibilityInstance<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>;
47
- export {};
@@ -1,50 +0,0 @@
1
- import { AccessorFn, Row } from './types';
2
- export declare const filterTypes: {
3
- includesString: typeof includesString;
4
- includesStringSensitive: typeof includesStringSensitive;
5
- equalsString: typeof equalsString;
6
- equalsStringSensitive: typeof equalsStringSensitive;
7
- arrIncludes: typeof arrIncludes;
8
- arrIncludesAll: typeof arrIncludesAll;
9
- equals: typeof equals;
10
- weakEquals: typeof weakEquals;
11
- betweenNumberRange: typeof betweenNumberRange;
12
- };
13
- export declare type BuiltInFilterType = keyof typeof filterTypes;
14
- declare function includesString<TData, TValue, TAccessor extends AccessorFn<TData>, TFilterFns, TSortingFns, TAggregationFns>(rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[], columnIds: string[], filterValue: unknown): Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[];
15
- declare namespace includesString {
16
- var autoRemove: (val: any) => boolean;
17
- }
18
- declare function includesStringSensitive<TData, TValue, TAccessor extends AccessorFn<TData>, TFilterFns, TSortingFns, TAggregationFns>(rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[], columnIds: string[], filterValue: unknown): Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[];
19
- declare namespace includesStringSensitive {
20
- var autoRemove: (val: any) => boolean;
21
- }
22
- declare function equalsString<TData, TValue, TAccessor extends AccessorFn<TData>, TFilterFns, TSortingFns, TAggregationFns>(rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[], columnIds: string[], filterValue: unknown): Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[];
23
- declare namespace equalsString {
24
- var autoRemove: (val: any) => boolean;
25
- }
26
- declare function equalsStringSensitive<TData, TValue, TAccessor extends AccessorFn<TData>, TFilterFns, TSortingFns, TAggregationFns>(rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[], columnIds: string[], filterValue: unknown): Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[];
27
- declare namespace equalsStringSensitive {
28
- var autoRemove: (val: any) => boolean;
29
- }
30
- declare function arrIncludes<TData, TValue, TAccessor extends AccessorFn<TData>, TFilterFns, TSortingFns, TAggregationFns>(rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[], columnIds: string[], filterValue: unknown): Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[];
31
- declare namespace arrIncludes {
32
- var autoRemove: (val: any) => boolean;
33
- }
34
- declare function arrIncludesAll<TData, TValue, TAccessor extends AccessorFn<TData>, TFilterFns, TSortingFns, TAggregationFns>(rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[], columnIds: string[], filterValue: unknown[]): Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[];
35
- declare namespace arrIncludesAll {
36
- var autoRemove: (val: any) => boolean;
37
- }
38
- declare function equals<TData, TValue, TAccessor extends AccessorFn<TData>, TFilterFns, TSortingFns, TAggregationFns>(rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[], columnIds: string[], filterValue: unknown): Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[];
39
- declare namespace equals {
40
- var autoRemove: (val: any) => boolean;
41
- }
42
- declare function weakEquals<TData, TValue, TAccessor extends AccessorFn<TData>, TFilterFns, TSortingFns, TAggregationFns>(rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[], columnIds: string[], filterValue: unknown): Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[];
43
- declare namespace weakEquals {
44
- var autoRemove: (val: any) => boolean;
45
- }
46
- declare function betweenNumberRange<TData, TValue, TAccessor extends AccessorFn<TData>, TFilterFns, TSortingFns, TAggregationFns>(rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[], columnIds: string[], filterValue: [unknown, unknown]): Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[];
47
- declare namespace betweenNumberRange {
48
- var autoRemove: (val: any) => boolean;
49
- }
50
- export {};
@@ -1,17 +0,0 @@
1
- import { Row } from './types';
2
- export declare const sortTypes: {
3
- alphanumeric: typeof alphanumeric;
4
- alphanumericCaseSensitive: typeof alphanumericCaseSensitive;
5
- text: typeof text;
6
- textCaseSensitive: typeof textCaseSensitive;
7
- datetime: typeof datetime;
8
- basic: typeof basic;
9
- };
10
- export declare type BuiltInSortType = keyof typeof sortTypes;
11
- declare function alphanumeric<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>(rowA: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>, rowB: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>, columnId: string): number;
12
- declare function alphanumericCaseSensitive<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>(rowA: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>, rowB: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>, columnId: string): number;
13
- declare function text<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>(rowA: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>, rowB: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>, columnId: string): 1 | 0 | -1;
14
- declare function textCaseSensitive<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>(rowA: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>, rowB: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>, columnId: string): 1 | 0 | -1;
15
- declare function datetime<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>(rowA: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>, rowB: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>, columnId: string): 1 | 0 | -1;
16
- declare function basic<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>(rowA: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>, rowB: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>, columnId: string): 1 | 0 | -1;
17
- export {};
@@ -1,124 +0,0 @@
1
- import React from 'react';
2
- import { CoreColumn, CoreColumnDef, CoreOptions, CoreRow, TableCore } from './core';
3
- import { VisibilityInstance, VisibilityTableState, VisibilityColumn as ColumnVisibilityColumn, VisibilityOptions, VisibilityColumnDef, VisibilityRow } from './features/Visibility';
4
- import { ColumnOrderInstance, ColumnOrderOptions, ColumnOrderTableState } from './features/Ordering';
5
- import { ColumnPinningColumn, ColumnPinningColumnDef, ColumnPinningInstance, ColumnPinningOptions, ColumnPinningTableState } from './features/Pinning';
6
- import { HeadersInstance, HeadersRow } from './features/Headers';
7
- import { FiltersColumn, FiltersColumnDef, FiltersInstance, FiltersOptions, FiltersTableState } from './features/Filters';
8
- import { SortingColumn, SortingColumnDef, SortingInstance, SortingOptions, SortingTableState } from './features/Sorting';
9
- import { GroupingColumn, GroupingColumnDef, GroupingInstance, GroupingOptions, GroupingRow, GroupingTableState } from './features/Grouping';
10
- import { ExpandedInstance, ExpandedOptions, ExpandedTableState } from './features/Expanding';
11
- import { Overwrite } from './utils';
12
- import { ColumnSizingColumn, ColumnSizingColumnDef, ColumnSizingHeader, ColumnSizingInstance, ColumnSizingOptions, ColumnSizingTableState } from './features/ColumnSizing';
13
- export declare type ReactTable<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> = TableCore<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> & VisibilityInstance<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> & ColumnOrderInstance<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> & ColumnPinningInstance<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> & HeadersInstance<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> & FiltersInstance<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> & SortingInstance<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> & GroupingInstance<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> & ColumnSizingInstance<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> & ExpandedInstance<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>;
14
- export declare type Renderable<TProps> = React.ReactNode | React.FunctionComponent<TProps> | React.Component<TProps>;
15
- export declare type Options<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> = CoreOptions<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> & VisibilityOptions & ColumnOrderOptions & ColumnPinningOptions & FiltersOptions<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> & SortingOptions<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> & GroupingOptions<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> & ExpandedOptions<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> & ColumnSizingOptions;
16
- export declare type Updater<T> = T | ((old: T) => T);
17
- export declare type OnChangeFn<T> = (updaterOrValue: Updater<T>, value: T) => void;
18
- export declare type TableState = VisibilityTableState & ColumnOrderTableState & ColumnPinningTableState & FiltersTableState & SortingTableState & ExpandedTableState & GroupingTableState & ColumnSizingTableState;
19
- export declare type Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> = CoreRow<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> & VisibilityRow<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> & HeadersRow<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> & GroupingRow;
20
- export declare type RowValues = {
21
- [key: string]: any;
22
- };
23
- export declare type RowModel<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> = {
24
- rows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[];
25
- flatRows: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[];
26
- rowsById: Record<string, Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>>;
27
- };
28
- export declare type AccessorFn<TData> = (originalRow: TData, index: number) => any;
29
- export declare type ColumnDef<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> = CoreColumnDef<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> & VisibilityColumnDef & ColumnPinningColumnDef & FiltersColumnDef<TFilterFns> & SortingColumnDef<TSortingFns> & GroupingColumnDef<TAggregationFns> & ColumnSizingColumnDef;
30
- export declare type Column<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> = ColumnDef<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> & CoreColumn<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> & ColumnVisibilityColumn & ColumnPinningColumn & FiltersColumn<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> & SortingColumn<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> & GroupingColumn<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> & ColumnSizingColumn<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>;
31
- export declare type Cell<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> = {
32
- id: string;
33
- rowId: string;
34
- columnId: string;
35
- value: TValue;
36
- row: Row<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>;
37
- column: Column<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>;
38
- getCellProps: PropGetter<CellProps>;
39
- renderCell: () => React.ReactNode;
40
- };
41
- export declare type Header<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> = CoreHeader<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> & ColumnSizingHeader<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>;
42
- export declare type CoreHeader<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> = {
43
- id: string;
44
- depth: number;
45
- column: Column<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>;
46
- getWidth: () => number;
47
- subHeaders: Header<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[];
48
- colSpan?: number;
49
- rowSpan?: number;
50
- getHeaderProps: PropGetter<HeaderProps>;
51
- getFooterProps: PropGetter<HeaderProps>;
52
- getLeafHeaders: () => Header<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[];
53
- isPlaceholder?: boolean;
54
- placeholderId?: string;
55
- renderHeader: (options?: {
56
- renderPlaceholder?: boolean;
57
- }) => React.ReactNode;
58
- renderFooter: (options?: {
59
- renderPlaceholder?: boolean;
60
- }) => React.ReactNode;
61
- };
62
- export declare type HeaderGroup<TData, TValue, TFilterFns, TSortingFns, TAggregationFns> = {
63
- id: string;
64
- depth: number;
65
- headers: Header<TData, TValue, TFilterFns, TSortingFns, TAggregationFns>[];
66
- getHeaderGroupProps: PropGetter<HeaderGroupProps>;
67
- getFooterGroupProps: PropGetter<FooterGroupProps>;
68
- };
69
- export declare type HeaderRenderProps<THeader> = {
70
- header: THeader;
71
- };
72
- export declare type FooterRenderProps<THeader> = {
73
- header: THeader;
74
- };
75
- export declare type CellRenderProps<TCell, TRow> = {
76
- cell: TCell;
77
- row: TRow;
78
- };
79
- export declare type TableProps = {
80
- role: string;
81
- };
82
- export declare type TableBodyProps = {
83
- role: string;
84
- };
85
- export declare type TableHeadProps = {
86
- key: string;
87
- role: string;
88
- };
89
- export declare type TableFooterProps = {
90
- key: string;
91
- role: string;
92
- };
93
- export declare type HeaderGroupProps = {
94
- key: string;
95
- role: string;
96
- };
97
- export declare type FooterGroupProps = {
98
- key: string;
99
- role: string;
100
- };
101
- export declare type HeaderProps = {
102
- key: string;
103
- role: string;
104
- colSpan?: number;
105
- rowSpan?: number;
106
- };
107
- export declare type FooterProps = {
108
- key: string;
109
- role: string;
110
- colSpan?: number;
111
- rowSpan?: number;
112
- };
113
- export declare type RowProps = {
114
- key: string;
115
- role: string;
116
- };
117
- export declare type CellProps = {
118
- key: string;
119
- role: string;
120
- };
121
- export declare type PropGetter<TBase> = <TGetter extends Getter<TBase>>(userProps?: TGetter) => PropGetterValue<TBase, TGetter>;
122
- export declare type Getter<TInitial> = ((initial: TInitial) => object) | object | undefined;
123
- export declare type PropGetterValue<TBase, TGetter> = TGetter extends undefined ? TBase : TGetter extends (...args: any[]) => infer TReturn ? Overwrite<TBase, TReturn> : TGetter extends object ? Overwrite<TBase, TGetter> : never;
124
- export declare type NoInfer<A extends any> = [A][A extends any ? 0 : never];
@@ -1,2 +0,0 @@
1
- import { Options } from '..';
2
- export declare const columnFilterRowsFn: Options<any, any, {}, {}, {}>['columnFilterRowsFn'];
@@ -1,2 +0,0 @@
1
- import { Options } from '../types';
2
- export declare const expandRowsFn: Options<any, any, {}, {}, {}>['expandRowsFn'];
@@ -1,2 +0,0 @@
1
- import { Options } from '..';
2
- export declare const globalFilterRowsFn: Options<any, any, {}, {}, {}>['globalFilterRowsFn'];
@@ -1,2 +0,0 @@
1
- import { Options } from '../types';
2
- export declare const groupRowsFn: Options<any, any, {}, {}, {}>['groupRowsFn'];
@@ -1,2 +0,0 @@
1
- import { Options } from '../types';
2
- export declare const sortRowsFn: Options<any, any, {}, {}, {}>['sortRowsFn'];
@@ -1,24 +0,0 @@
1
- import React from 'react';
2
- import { Getter, NoInfer, PropGetterValue, Renderable, TableState } from './types';
3
- export declare type IsAny<T> = 0 extends 1 & T ? true : false;
4
- export declare type PartialKeys<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;
5
- export declare type RequiredKeys<T, K extends keyof T> = Omit<T, K> & Required<Pick<T, K>>;
6
- export declare type Overwrite<T, U> = Omit<T, keyof U> & U;
7
- export declare type DataUpdateFunction<TInput, TOutput> = (input: TInput) => TOutput;
8
- export declare type Updater<TInput, TOutput> = TOutput | DataUpdateFunction<TInput, TOutput>;
9
- export declare function functionalUpdate<TInput, TOutput = TInput>(updater: Updater<TInput, TOutput>, input: TInput): TOutput;
10
- export declare function noop(): void;
11
- export declare function makeStateUpdater(key: keyof TableState, instance: unknown): (updater: Updater<any, any>) => void;
12
- export declare const safeUseLayoutEffect: typeof React.useLayoutEffect;
13
- export declare function useMountedLayoutEffect(fn: any, deps: any[]): void;
14
- export declare function useGetLatest<T>(obj: T): () => T;
15
- declare type AnyFunction = (...args: any) => any;
16
- export declare function isFunction<T extends AnyFunction>(d: any): d is T;
17
- export declare function flattenBy<TNode>(arr: TNode[], getChildren: (item: TNode) => TNode[]): TNode[];
18
- declare type PropGetterImpl = <TBaseProps, TGetter extends Getter<TBaseProps>>(initial: TBaseProps, userProps?: TGetter) => PropGetterValue<TBaseProps, TGetter>;
19
- export declare const propGetter: PropGetterImpl;
20
- export declare function memo<TDeps extends readonly any[], TResult>(getDeps: () => [...TDeps], fn: (...args: NoInfer<[...TDeps]>) => TResult, key?: string, debug?: boolean): () => TResult;
21
- export declare function isPlainObject(o: any): o is Object;
22
- export declare type Render = typeof flexRender;
23
- export declare function flexRender<TProps extends {}>(Comp: Renderable<TProps>, props: TProps): React.ReactNode;
24
- export {};
@@ -1,115 +0,0 @@
1
- export const aggregationTypes = {
2
- sum,
3
- min,
4
- max,
5
- extent,
6
- mean,
7
- median,
8
- unique,
9
- uniqueCount,
10
- count,
11
- }
12
-
13
- export type BuiltInAggregationType = keyof typeof aggregationTypes
14
-
15
- function sum(_leafValues: unknown[], childValues: unknown[]) {
16
- // It's faster to just add the aggregations together instead of
17
- // process leaf nodes individually
18
- return childValues.reduce(
19
- (sum: number, next: unknown) => sum + (typeof next === 'number' ? next : 0),
20
- 0
21
- )
22
- }
23
-
24
- function min(_leafValues: unknown[], childValues: unknown[]) {
25
- let min: number | undefined
26
-
27
- for (const value of childValues as number[]) {
28
- if (
29
- value != null &&
30
- (min! > value || (min === undefined && value >= value))
31
- ) {
32
- min = value
33
- }
34
- }
35
-
36
- return min
37
- }
38
-
39
- function max(_leafValues: unknown[], childValues: unknown[]) {
40
- let max: number | undefined
41
-
42
- for (const value of childValues as number[]) {
43
- if (
44
- value != null &&
45
- (max! < value || (max === undefined && value >= value))
46
- ) {
47
- max = value
48
- }
49
- }
50
-
51
- return max
52
- }
53
-
54
- function extent(_leafValues: unknown[], childValues: unknown[]) {
55
- let min: number | undefined
56
- let max: number | undefined
57
-
58
- for (const value of childValues as number[]) {
59
- if (value != null) {
60
- if (min === undefined) {
61
- if (value >= value) min = max = value
62
- } else {
63
- if (min > value) min = value
64
- if (max! < value) max = value
65
- }
66
- }
67
- }
68
-
69
- return [min, max]
70
- }
71
-
72
- function mean(leafValues: unknown[]) {
73
- let count = 0
74
- let sum = 0
75
-
76
- for (let value of leafValues as number[]) {
77
- if (value != null && (value = +value) >= value) {
78
- ++count, (sum += value)
79
- }
80
- }
81
-
82
- if (count) return sum / count
83
-
84
- return
85
- }
86
-
87
- function median(values: unknown[]) {
88
- if (!values.length) {
89
- return
90
- }
91
-
92
- let min = 0
93
- let max = 0
94
-
95
- values.forEach(value => {
96
- if (typeof value === 'number') {
97
- min = Math.min(min, value)
98
- max = Math.max(max, value)
99
- }
100
- })
101
-
102
- return (min + max) / 2
103
- }
104
-
105
- function unique<T>(values: T[]) {
106
- return Array.from(new Set(values).values())
107
- }
108
-
109
- function uniqueCount(values: unknown[]) {
110
- return new Set(values).size
111
- }
112
-
113
- function count(values: unknown[]) {
114
- return values.length
115
- }