@tanstack/table-core 9.0.0-beta.26 → 9.0.0-beta.28

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 (70) hide show
  1. package/dist/features/column-faceting/columnFacetingFeature.types.d.cts +6 -3
  2. package/dist/features/column-faceting/columnFacetingFeature.types.d.ts +6 -3
  3. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs +41 -12
  4. package/dist/features/column-faceting/columnFacetingFeature.utils.cjs.map +1 -1
  5. package/dist/features/column-faceting/columnFacetingFeature.utils.js +42 -12
  6. package/dist/features/column-faceting/columnFacetingFeature.utils.js.map +1 -1
  7. package/dist/features/column-faceting/createFacetedRowModel.cjs +1 -0
  8. package/dist/features/column-faceting/createFacetedRowModel.cjs.map +1 -1
  9. package/dist/features/column-faceting/createFacetedRowModel.js +1 -0
  10. package/dist/features/column-faceting/createFacetedRowModel.js.map +1 -1
  11. package/dist/features/column-faceting/createFacetedUniqueValues.cjs +2 -2
  12. package/dist/features/column-faceting/createFacetedUniqueValues.cjs.map +1 -1
  13. package/dist/features/column-faceting/createFacetedUniqueValues.js +2 -2
  14. package/dist/features/column-faceting/createFacetedUniqueValues.js.map +1 -1
  15. package/dist/features/column-ordering/columnOrderingFeature.cjs +2 -1
  16. package/dist/features/column-ordering/columnOrderingFeature.cjs.map +1 -1
  17. package/dist/features/column-ordering/columnOrderingFeature.js +2 -1
  18. package/dist/features/column-ordering/columnOrderingFeature.js.map +1 -1
  19. package/dist/features/column-pinning/columnPinningFeature.cjs +24 -12
  20. package/dist/features/column-pinning/columnPinningFeature.cjs.map +1 -1
  21. package/dist/features/column-pinning/columnPinningFeature.js +24 -12
  22. package/dist/features/column-pinning/columnPinningFeature.js.map +1 -1
  23. package/dist/features/column-resizing/columnResizingFeature.utils.cjs +62 -24
  24. package/dist/features/column-resizing/columnResizingFeature.utils.cjs.map +1 -1
  25. package/dist/features/column-resizing/columnResizingFeature.utils.js +62 -24
  26. package/dist/features/column-resizing/columnResizingFeature.utils.js.map +1 -1
  27. package/dist/features/column-sizing/columnSizingFeature.cjs +35 -45
  28. package/dist/features/column-sizing/columnSizingFeature.cjs.map +1 -1
  29. package/dist/features/column-sizing/columnSizingFeature.js +36 -46
  30. package/dist/features/column-sizing/columnSizingFeature.js.map +1 -1
  31. package/dist/features/column-sizing/columnSizingFeature.types.d.cts +38 -1
  32. package/dist/features/column-sizing/columnSizingFeature.types.d.ts +38 -1
  33. package/dist/features/column-sizing/columnSizingFeature.utils.cjs +49 -10
  34. package/dist/features/column-sizing/columnSizingFeature.utils.cjs.map +1 -1
  35. package/dist/features/column-sizing/columnSizingFeature.utils.d.cts +18 -4
  36. package/dist/features/column-sizing/columnSizingFeature.utils.d.ts +18 -4
  37. package/dist/features/column-sizing/columnSizingFeature.utils.js +49 -11
  38. package/dist/features/column-sizing/columnSizingFeature.utils.js.map +1 -1
  39. package/dist/features/column-visibility/columnVisibilityFeature.cjs +8 -4
  40. package/dist/features/column-visibility/columnVisibilityFeature.cjs.map +1 -1
  41. package/dist/features/column-visibility/columnVisibilityFeature.js +8 -4
  42. package/dist/features/column-visibility/columnVisibilityFeature.js.map +1 -1
  43. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs +3 -2
  44. package/dist/features/column-visibility/columnVisibilityFeature.utils.cjs.map +1 -1
  45. package/dist/features/column-visibility/columnVisibilityFeature.utils.js +3 -2
  46. package/dist/features/column-visibility/columnVisibilityFeature.utils.js.map +1 -1
  47. package/dist/features/row-selection/rowSelectionFeature.utils.cjs +1 -1
  48. package/dist/features/row-selection/rowSelectionFeature.utils.cjs.map +1 -1
  49. package/dist/features/row-selection/rowSelectionFeature.utils.js +1 -1
  50. package/dist/features/row-selection/rowSelectionFeature.utils.js.map +1 -1
  51. package/dist/index.d.cts +2 -2
  52. package/dist/index.d.ts +2 -2
  53. package/dist/static-functions.cjs +1 -0
  54. package/dist/static-functions.d.cts +2 -2
  55. package/dist/static-functions.d.ts +2 -2
  56. package/dist/static-functions.js +2 -2
  57. package/package.json +1 -1
  58. package/src/features/column-faceting/columnFacetingFeature.types.ts +6 -3
  59. package/src/features/column-faceting/columnFacetingFeature.utils.ts +53 -18
  60. package/src/features/column-faceting/createFacetedRowModel.ts +4 -0
  61. package/src/features/column-faceting/createFacetedUniqueValues.ts +5 -8
  62. package/src/features/column-ordering/columnOrderingFeature.ts +1 -0
  63. package/src/features/column-pinning/columnPinningFeature.ts +12 -0
  64. package/src/features/column-resizing/columnResizingFeature.utils.ts +96 -44
  65. package/src/features/column-sizing/columnSizingFeature.ts +18 -18
  66. package/src/features/column-sizing/columnSizingFeature.types.ts +39 -0
  67. package/src/features/column-sizing/columnSizingFeature.utils.ts +94 -39
  68. package/src/features/column-visibility/columnVisibilityFeature.ts +4 -0
  69. package/src/features/column-visibility/columnVisibilityFeature.utils.ts +4 -2
  70. package/src/features/row-selection/rowSelectionFeature.utils.ts +5 -1
@@ -41,9 +41,12 @@ interface Table_RowModels_Faceted<in out TFeatures extends TableFeatures, in out
41
41
  getFacetedUniqueValues: () => Map<any, number>;
42
42
  }
43
43
  interface CachedRowModel_Faceted<in out TFeatures extends TableFeatures, in out TData extends RowData> {
44
- facetedRowModel?: (columnId: string) => () => RowModel<TFeatures, TData>;
45
- facetedMinMaxValues?: (columnId: string) => [number, number];
46
- facetedUniqueValues?: (columnId: string) => Map<any, number>;
44
+ facetedRowModels?: Record<string, () => RowModel<TFeatures, TData>>;
45
+ facetedMinMaxValues?: Record<string, () => undefined | [number, number]>;
46
+ facetedUniqueValues?: Record<string, () => Map<any, number>>;
47
+ globalFacetedRowModel?: () => RowModel<TFeatures, TData>;
48
+ globalFacetedMinMaxValues?: () => undefined | [number, number];
49
+ globalFacetedUniqueValues?: () => Map<any, number>;
47
50
  }
48
51
  interface Table_ColumnFaceting<in out TFeatures extends TableFeatures, in out TData extends RowData> {
49
52
  /**
@@ -41,9 +41,12 @@ interface Table_RowModels_Faceted<in out TFeatures extends TableFeatures, in out
41
41
  getFacetedUniqueValues: () => Map<any, number>;
42
42
  }
43
43
  interface CachedRowModel_Faceted<in out TFeatures extends TableFeatures, in out TData extends RowData> {
44
- facetedRowModel?: (columnId: string) => () => RowModel<TFeatures, TData>;
45
- facetedMinMaxValues?: (columnId: string) => [number, number];
46
- facetedUniqueValues?: (columnId: string) => Map<any, number>;
44
+ facetedRowModels?: Record<string, () => RowModel<TFeatures, TData>>;
45
+ facetedMinMaxValues?: Record<string, () => undefined | [number, number]>;
46
+ facetedUniqueValues?: Record<string, () => Map<any, number>>;
47
+ globalFacetedRowModel?: () => RowModel<TFeatures, TData>;
48
+ globalFacetedMinMaxValues?: () => undefined | [number, number];
49
+ globalFacetedUniqueValues?: () => Map<any, number>;
47
50
  }
48
51
  interface Table_ColumnFaceting<in out TFeatures extends TableFeatures, in out TData extends RowData> {
49
52
  /**
@@ -1,3 +1,4 @@
1
+ const require_utils = require('../../utils.cjs');
1
2
 
2
3
  //#region src/features/column-faceting/columnFacetingFeature.utils.ts
3
4
  /**
@@ -12,8 +13,13 @@
12
13
  * ```
13
14
  */
14
15
  function column_getFacetedMinMaxValues(column, table) {
15
- var _table$options$featur, _table$options$featur2;
16
- return (((_table$options$featur = (_table$options$featur2 = table.options.features).facetedMinMaxValues) === null || _table$options$featur === void 0 ? void 0 : _table$options$featur.call(_table$options$featur2, table, column.id)) ?? (() => void 0))();
16
+ const facetedMinMaxValues = table._rowModels.facetedMinMaxValues ??= require_utils.makeObjectMap();
17
+ let facetedMinMaxValuesFn = facetedMinMaxValues[column.id];
18
+ if (!facetedMinMaxValuesFn) {
19
+ var _table$options$featur, _table$options$featur2;
20
+ facetedMinMaxValuesFn = facetedMinMaxValues[column.id] = ((_table$options$featur = (_table$options$featur2 = table.options.features).facetedMinMaxValues) === null || _table$options$featur === void 0 ? void 0 : _table$options$featur.call(_table$options$featur2, table, column.id)) ?? (() => void 0);
21
+ }
22
+ return facetedMinMaxValuesFn();
17
23
  }
18
24
  /**
19
25
  * Computes the row model used to derive one column's facet values.
@@ -28,8 +34,14 @@ function column_getFacetedMinMaxValues(column, table) {
28
34
  * ```
29
35
  */
30
36
  function column_getFacetedRowModel(column, table) {
31
- var _table$options$featur3, _table$options$featur4;
32
- return (((_table$options$featur3 = (_table$options$featur4 = table.options.features).facetedRowModel) === null || _table$options$featur3 === void 0 ? void 0 : _table$options$featur3.call(_table$options$featur4, table, (column === null || column === void 0 ? void 0 : column.id) ?? "")) ?? (() => table.getPreFilteredRowModel()))();
37
+ const columnId = (column === null || column === void 0 ? void 0 : column.id) ?? "";
38
+ const facetedRowModels = table._rowModels.facetedRowModels ??= require_utils.makeObjectMap();
39
+ let facetedRowModelFn = facetedRowModels[columnId];
40
+ if (!facetedRowModelFn) {
41
+ var _table$options$featur3, _table$options$featur4;
42
+ facetedRowModelFn = facetedRowModels[columnId] = ((_table$options$featur3 = (_table$options$featur4 = table.options.features).facetedRowModel) === null || _table$options$featur3 === void 0 ? void 0 : _table$options$featur3.call(_table$options$featur4, table, columnId)) ?? (() => table.getPreFilteredRowModel());
43
+ }
44
+ return facetedRowModelFn();
33
45
  }
34
46
  /**
35
47
  * Computes unique facet values and their occurrence counts for one column.
@@ -43,8 +55,13 @@ function column_getFacetedRowModel(column, table) {
43
55
  * ```
44
56
  */
45
57
  function column_getFacetedUniqueValues(column, table) {
46
- var _table$options$featur5, _table$options$featur6;
47
- return (((_table$options$featur5 = (_table$options$featur6 = table.options.features).facetedUniqueValues) === null || _table$options$featur5 === void 0 ? void 0 : _table$options$featur5.call(_table$options$featur6, table, column.id)) ?? (() => /* @__PURE__ */ new Map()))();
58
+ const facetedUniqueValues = table._rowModels.facetedUniqueValues ??= require_utils.makeObjectMap();
59
+ let facetedUniqueValuesFn = facetedUniqueValues[column.id];
60
+ if (!facetedUniqueValuesFn) {
61
+ var _table$options$featur5, _table$options$featur6;
62
+ facetedUniqueValuesFn = facetedUniqueValues[column.id] = ((_table$options$featur5 = (_table$options$featur6 = table.options.features).facetedUniqueValues) === null || _table$options$featur5 === void 0 ? void 0 : _table$options$featur5.call(_table$options$featur6, table, column.id)) ?? (() => /* @__PURE__ */ new Map());
63
+ }
64
+ return facetedUniqueValuesFn();
48
65
  }
49
66
  /**
50
67
  * Computes min and max numeric facet values for the global filter context.
@@ -58,8 +75,12 @@ function column_getFacetedUniqueValues(column, table) {
58
75
  * ```
59
76
  */
60
77
  function table_getGlobalFacetedMinMaxValues(table) {
61
- var _table$options$featur7, _table$options$featur8;
62
- return (((_table$options$featur7 = (_table$options$featur8 = table.options.features).facetedMinMaxValues) === null || _table$options$featur7 === void 0 ? void 0 : _table$options$featur7.call(_table$options$featur8, table, "__global__")) ?? (() => void 0))();
78
+ if (!table._rowModels.globalFacetedMinMaxValues) {
79
+ var _table$options$featur7, _table$options$featur8;
80
+ table._rowModels.globalFacetedMinMaxValues = ((_table$options$featur7 = (_table$options$featur8 = table.options.features).facetedMinMaxValues) === null || _table$options$featur7 === void 0 ? void 0 : _table$options$featur7.call(_table$options$featur8, table, "__global__")) ?? (() => void 0);
81
+ }
82
+ const facetedMinMaxValuesFn = table._rowModels.globalFacetedMinMaxValues;
83
+ return facetedMinMaxValuesFn();
63
84
  }
64
85
  /**
65
86
  * Computes the row model used to derive global facet values.
@@ -74,8 +95,12 @@ function table_getGlobalFacetedMinMaxValues(table) {
74
95
  * ```
75
96
  */
76
97
  function table_getGlobalFacetedRowModel(table) {
77
- var _table$options$featur9, _table$options$featur10;
78
- return (((_table$options$featur9 = (_table$options$featur10 = table.options.features).facetedRowModel) === null || _table$options$featur9 === void 0 ? void 0 : _table$options$featur9.call(_table$options$featur10, table, "__global__")) ?? (() => table.getPreFilteredRowModel()))();
98
+ if (!table._rowModels.globalFacetedRowModel) {
99
+ var _table$options$featur9, _table$options$featur10;
100
+ table._rowModels.globalFacetedRowModel = ((_table$options$featur9 = (_table$options$featur10 = table.options.features).facetedRowModel) === null || _table$options$featur9 === void 0 ? void 0 : _table$options$featur9.call(_table$options$featur10, table, "__global__")) ?? (() => table.getPreFilteredRowModel());
101
+ }
102
+ const facetedRowModelFn = table._rowModels.globalFacetedRowModel;
103
+ return facetedRowModelFn();
79
104
  }
80
105
  /**
81
106
  * Computes unique values and occurrence counts for the global filter context.
@@ -89,8 +114,12 @@ function table_getGlobalFacetedRowModel(table) {
89
114
  * ```
90
115
  */
91
116
  function table_getGlobalFacetedUniqueValues(table) {
92
- var _table$options$featur11, _table$options$featur12;
93
- return (((_table$options$featur11 = (_table$options$featur12 = table.options.features).facetedUniqueValues) === null || _table$options$featur11 === void 0 ? void 0 : _table$options$featur11.call(_table$options$featur12, table, "__global__")) ?? (() => /* @__PURE__ */ new Map()))();
117
+ if (!table._rowModels.globalFacetedUniqueValues) {
118
+ var _table$options$featur11, _table$options$featur12;
119
+ table._rowModels.globalFacetedUniqueValues = ((_table$options$featur11 = (_table$options$featur12 = table.options.features).facetedUniqueValues) === null || _table$options$featur11 === void 0 ? void 0 : _table$options$featur11.call(_table$options$featur12, table, "__global__")) ?? (() => /* @__PURE__ */ new Map());
120
+ }
121
+ const facetedUniqueValuesFn = table._rowModels.globalFacetedUniqueValues;
122
+ return facetedUniqueValuesFn();
94
123
  }
95
124
 
96
125
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"columnFacetingFeature.utils.cjs","names":[],"sources":["../../../src/features/column-faceting/columnFacetingFeature.utils.ts"],"sourcesContent":["import type { CellData, RowData } from '../../types/type-utils'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { RowModel } from '../../core/row-models/coreRowModelsFeature.types'\nimport type { Table_Internal } from '../../types/Table'\nimport type { Column_Internal } from '../../types/Column'\n\n/**\n * Computes min and max numeric facet values for one column.\n *\n * The configured `facetedMinMaxValues` row-model factory owns the calculation.\n * If no factory is registered, the result is `undefined`.\n *\n * @example\n * ```ts\n * const range = column_getFacetedMinMaxValues(column, table)\n * ```\n */\nexport function column_getFacetedMinMaxValues<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(\n column: Column_Internal<TFeatures, TData, TValue>,\n table: Table_Internal<TFeatures, TData>,\n): [number, number] | undefined {\n const facetedMinMaxValuesFn =\n table.options.features.facetedMinMaxValues?.(table, column.id) ??\n (() => undefined)\n return facetedMinMaxValuesFn()\n}\n\n/**\n * Computes the row model used to derive one column's facet values.\n *\n * The faceted row model normally applies every other active filter while\n * excluding this column's own filter. If no factory is registered, the\n * pre-filtered row model is returned.\n *\n * @example\n * ```ts\n * const rows = column_getFacetedRowModel(column, table)\n * ```\n */\nexport function column_getFacetedRowModel<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(\n column: Column_Internal<TFeatures, TData, TValue> | undefined,\n table: Table_Internal<TFeatures, TData>,\n): RowModel<TFeatures, TData> {\n const facetedRowModelFn =\n table.options.features.facetedRowModel?.(table, column?.id ?? '') ??\n (() => table.getPreFilteredRowModel())\n return facetedRowModelFn()\n}\n\n/**\n * Computes unique facet values and their occurrence counts for one column.\n *\n * The configured `facetedUniqueValues` row-model factory owns the calculation.\n * If no factory is registered, an empty `Map` is returned.\n *\n * @example\n * ```ts\n * const values = column_getFacetedUniqueValues(column, table)\n * ```\n */\nexport function column_getFacetedUniqueValues<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(\n column: Column_Internal<TFeatures, TData, TValue>,\n table: Table_Internal<TFeatures, TData>,\n): Map<any, number> {\n const facetedUniqueValuesFn =\n table.options.features.facetedUniqueValues?.(table, column.id) ??\n (() => new Map<any, number>())\n return facetedUniqueValuesFn()\n}\n\n/**\n * Computes min and max numeric facet values for the global filter context.\n *\n * The global context is requested with the internal `__global__` column id. If\n * no factory is registered, the result is `undefined`.\n *\n * @example\n * ```ts\n * const range = table_getGlobalFacetedMinMaxValues(table)\n * ```\n */\nexport function table_getGlobalFacetedMinMaxValues<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>): undefined | [number, number] {\n const facetedMinMaxValuesFn =\n table.options.features.facetedMinMaxValues?.(table, '__global__') ??\n (() => undefined)\n return facetedMinMaxValuesFn()\n}\n\n/**\n * Computes the row model used to derive global facet values.\n *\n * The global context is requested with the internal `__global__` column id. If\n * no faceted row-model factory is registered, the pre-filtered row model is\n * returned.\n *\n * @example\n * ```ts\n * const rows = table_getGlobalFacetedRowModel(table)\n * ```\n */\nexport function table_getGlobalFacetedRowModel<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>): RowModel<TFeatures, TData> {\n const facetedRowModelFn =\n table.options.features.facetedRowModel?.(table, '__global__') ??\n (() => table.getPreFilteredRowModel())\n return facetedRowModelFn()\n}\n\n/**\n * Computes unique values and occurrence counts for the global filter context.\n *\n * The global context is requested with the internal `__global__` column id. If\n * no factory is registered, an empty `Map` is returned.\n *\n * @example\n * ```ts\n * const values = table_getGlobalFacetedUniqueValues(table)\n * ```\n */\nexport function table_getGlobalFacetedUniqueValues<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>): Map<any, number> {\n const facetedUniqueValuesFn =\n table.options.features.facetedUniqueValues?.(table, '__global__') ??\n (() => new Map())\n return facetedUniqueValuesFn()\n}\n"],"mappings":";;;;;;;;;;;;;AAiBA,SAAgB,8BAKd,QACA,OAC8B;;CAI9B,4DAFE,MAAM,QAAQ,UAAS,gIAAsB,OAAO,OAAO,EAAE,aACtD,QACmB,CAAC;AAC/B;;;;;;;;;;;;;AAcA,SAAgB,0BAKd,QACA,OAC4B;;CAI5B,6DAFE,MAAM,QAAQ,UAAS,8HAAkB,wDAAO,OAAQ,OAAM,EAAE,aACzD,MAAM,uBAAuB,GACd,CAAC;AAC3B;;;;;;;;;;;;AAaA,SAAgB,8BAKd,QACA,OACkB;;CAIlB,6DAFE,MAAM,QAAQ,UAAS,kIAAsB,OAAO,OAAO,EAAE,6BACtD,IAAI,IAAiB,GACF,CAAC;AAC/B;;;;;;;;;;;;AAaA,SAAgB,mCAGd,OAAuE;;CAIvE,6DAFE,MAAM,QAAQ,UAAS,kIAAsB,OAAO,YAAY,aACzD,QACmB,CAAC;AAC/B;;;;;;;;;;;;;AAcA,SAAgB,+BAGd,OAAqE;;CAIrE,8DAFE,MAAM,QAAQ,UAAS,+HAAkB,OAAO,YAAY,aACrD,MAAM,uBAAuB,GACd,CAAC;AAC3B;;;;;;;;;;;;AAaA,SAAgB,mCAGd,OAA2D;;CAI3D,+DAFE,MAAM,QAAQ,UAAS,qIAAsB,OAAO,YAAY,6BACzD,IAAI,IAAI,GACW,CAAC;AAC/B"}
1
+ {"version":3,"file":"columnFacetingFeature.utils.cjs","names":["makeObjectMap"],"sources":["../../../src/features/column-faceting/columnFacetingFeature.utils.ts"],"sourcesContent":["import { makeObjectMap } from '../../utils'\nimport type { CellData, RowData } from '../../types/type-utils'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { RowModel } from '../../core/row-models/coreRowModelsFeature.types'\nimport type { Table_Internal } from '../../types/Table'\nimport type { Column_Internal } from '../../types/Column'\n\n/**\n * Computes min and max numeric facet values for one column.\n *\n * The configured `facetedMinMaxValues` row-model factory owns the calculation.\n * If no factory is registered, the result is `undefined`.\n *\n * @example\n * ```ts\n * const range = column_getFacetedMinMaxValues(column, table)\n * ```\n */\nexport function column_getFacetedMinMaxValues<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(\n column: Column_Internal<TFeatures, TData, TValue>,\n table: Table_Internal<TFeatures, TData>,\n): [number, number] | undefined {\n const facetedMinMaxValues = (table._rowModels.facetedMinMaxValues ??=\n makeObjectMap())\n let facetedMinMaxValuesFn = facetedMinMaxValues[column.id]\n\n if (!facetedMinMaxValuesFn) {\n facetedMinMaxValuesFn = facetedMinMaxValues[column.id] =\n table.options.features.facetedMinMaxValues?.(table, column.id) ??\n (() => undefined)\n }\n\n return facetedMinMaxValuesFn()\n}\n\n/**\n * Computes the row model used to derive one column's facet values.\n *\n * The faceted row model normally applies every other active filter while\n * excluding this column's own filter. If no factory is registered, the\n * pre-filtered row model is returned.\n *\n * @example\n * ```ts\n * const rows = column_getFacetedRowModel(column, table)\n * ```\n */\nexport function column_getFacetedRowModel<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(\n column: Column_Internal<TFeatures, TData, TValue> | undefined,\n table: Table_Internal<TFeatures, TData>,\n): RowModel<TFeatures, TData> {\n const columnId = column?.id ?? ''\n const facetedRowModels = (table._rowModels.facetedRowModels ??=\n makeObjectMap())\n let facetedRowModelFn = facetedRowModels[columnId]\n\n if (!facetedRowModelFn) {\n facetedRowModelFn = facetedRowModels[columnId] =\n table.options.features.facetedRowModel?.(table, columnId) ??\n (() => table.getPreFilteredRowModel())\n }\n\n return facetedRowModelFn()\n}\n\n/**\n * Computes unique facet values and their occurrence counts for one column.\n *\n * The configured `facetedUniqueValues` row-model factory owns the calculation.\n * If no factory is registered, an empty `Map` is returned.\n *\n * @example\n * ```ts\n * const values = column_getFacetedUniqueValues(column, table)\n * ```\n */\nexport function column_getFacetedUniqueValues<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(\n column: Column_Internal<TFeatures, TData, TValue>,\n table: Table_Internal<TFeatures, TData>,\n): Map<any, number> {\n const facetedUniqueValues = (table._rowModels.facetedUniqueValues ??=\n makeObjectMap())\n let facetedUniqueValuesFn = facetedUniqueValues[column.id]\n\n if (!facetedUniqueValuesFn) {\n facetedUniqueValuesFn = facetedUniqueValues[column.id] =\n table.options.features.facetedUniqueValues?.(table, column.id) ??\n (() => new Map<any, number>())\n }\n\n return facetedUniqueValuesFn()\n}\n\n/**\n * Computes min and max numeric facet values for the global filter context.\n *\n * The global context is requested with the internal `__global__` column id. If\n * no factory is registered, the result is `undefined`.\n *\n * @example\n * ```ts\n * const range = table_getGlobalFacetedMinMaxValues(table)\n * ```\n */\nexport function table_getGlobalFacetedMinMaxValues<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>): undefined | [number, number] {\n if (!table._rowModels.globalFacetedMinMaxValues) {\n table._rowModels.globalFacetedMinMaxValues =\n table.options.features.facetedMinMaxValues?.(table, '__global__') ??\n (() => undefined)\n }\n\n const facetedMinMaxValuesFn = table._rowModels.globalFacetedMinMaxValues\n return facetedMinMaxValuesFn()\n}\n\n/**\n * Computes the row model used to derive global facet values.\n *\n * The global context is requested with the internal `__global__` column id. If\n * no faceted row-model factory is registered, the pre-filtered row model is\n * returned.\n *\n * @example\n * ```ts\n * const rows = table_getGlobalFacetedRowModel(table)\n * ```\n */\nexport function table_getGlobalFacetedRowModel<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>): RowModel<TFeatures, TData> {\n if (!table._rowModels.globalFacetedRowModel) {\n table._rowModels.globalFacetedRowModel =\n table.options.features.facetedRowModel?.(table, '__global__') ??\n (() => table.getPreFilteredRowModel())\n }\n\n const facetedRowModelFn = table._rowModels.globalFacetedRowModel\n return facetedRowModelFn()\n}\n\n/**\n * Computes unique values and occurrence counts for the global filter context.\n *\n * The global context is requested with the internal `__global__` column id. If\n * no factory is registered, an empty `Map` is returned.\n *\n * @example\n * ```ts\n * const values = table_getGlobalFacetedUniqueValues(table)\n * ```\n */\nexport function table_getGlobalFacetedUniqueValues<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>): Map<any, number> {\n if (!table._rowModels.globalFacetedUniqueValues) {\n table._rowModels.globalFacetedUniqueValues =\n table.options.features.facetedUniqueValues?.(table, '__global__') ??\n (() => new Map())\n }\n\n const facetedUniqueValuesFn = table._rowModels.globalFacetedUniqueValues\n return facetedUniqueValuesFn()\n}\n"],"mappings":";;;;;;;;;;;;;;AAkBA,SAAgB,8BAKd,QACA,OAC8B;CAC9B,MAAM,sBAAuB,MAAM,WAAW,wBAC5CA,4BAAc;CAChB,IAAI,wBAAwB,oBAAoB,OAAO;CAEvD,IAAI,CAAC,uBAAuB;;EAC1B,wBAAwB,oBAAoB,OAAO,0DACjD,MAAM,QAAQ,UAAS,gIAAsB,OAAO,OAAO,EAAE,aACtD;CACX;CAEA,OAAO,sBAAsB;AAC/B;;;;;;;;;;;;;AAcA,SAAgB,0BAKd,QACA,OAC4B;CAC5B,MAAM,4DAAW,OAAQ,OAAM;CAC/B,MAAM,mBAAoB,MAAM,WAAW,qBACzCA,4BAAc;CAChB,IAAI,oBAAoB,iBAAiB;CAEzC,IAAI,CAAC,mBAAmB;;EACtB,oBAAoB,iBAAiB,iEACnC,MAAM,QAAQ,UAAS,8HAAkB,OAAO,QAAQ,aACjD,MAAM,uBAAuB;CACxC;CAEA,OAAO,kBAAkB;AAC3B;;;;;;;;;;;;AAaA,SAAgB,8BAKd,QACA,OACkB;CAClB,MAAM,sBAAuB,MAAM,WAAW,wBAC5CA,4BAAc;CAChB,IAAI,wBAAwB,oBAAoB,OAAO;CAEvD,IAAI,CAAC,uBAAuB;;EAC1B,wBAAwB,oBAAoB,OAAO,2DACjD,MAAM,QAAQ,UAAS,kIAAsB,OAAO,OAAO,EAAE,6BACtD,IAAI,IAAiB;CAChC;CAEA,OAAO,sBAAsB;AAC/B;;;;;;;;;;;;AAaA,SAAgB,mCAGd,OAAuE;CACvE,IAAI,CAAC,MAAM,WAAW,2BAA2B;;EAC/C,MAAM,WAAW,iFACf,MAAM,QAAQ,UAAS,kIAAsB,OAAO,YAAY,aACzD;CACX;CAEA,MAAM,wBAAwB,MAAM,WAAW;CAC/C,OAAO,sBAAsB;AAC/B;;;;;;;;;;;;;AAcA,SAAgB,+BAGd,OAAqE;CACrE,IAAI,CAAC,MAAM,WAAW,uBAAuB;;EAC3C,MAAM,WAAW,8EACf,MAAM,QAAQ,UAAS,+HAAkB,OAAO,YAAY,aACrD,MAAM,uBAAuB;CACxC;CAEA,MAAM,oBAAoB,MAAM,WAAW;CAC3C,OAAO,kBAAkB;AAC3B;;;;;;;;;;;;AAaA,SAAgB,mCAGd,OAA2D;CAC3D,IAAI,CAAC,MAAM,WAAW,2BAA2B;;EAC/C,MAAM,WAAW,mFACf,MAAM,QAAQ,UAAS,qIAAsB,OAAO,YAAY,6BACzD,IAAI,IAAI;CACnB;CAEA,MAAM,wBAAwB,MAAM,WAAW;CAC/C,OAAO,sBAAsB;AAC/B"}
@@ -1,3 +1,5 @@
1
+ import { makeObjectMap } from "../../utils.js";
2
+
1
3
  //#region src/features/column-faceting/columnFacetingFeature.utils.ts
2
4
  /**
3
5
  * Computes min and max numeric facet values for one column.
@@ -11,8 +13,13 @@
11
13
  * ```
12
14
  */
13
15
  function column_getFacetedMinMaxValues(column, table) {
14
- var _table$options$featur, _table$options$featur2;
15
- return (((_table$options$featur = (_table$options$featur2 = table.options.features).facetedMinMaxValues) === null || _table$options$featur === void 0 ? void 0 : _table$options$featur.call(_table$options$featur2, table, column.id)) ?? (() => void 0))();
16
+ const facetedMinMaxValues = table._rowModels.facetedMinMaxValues ??= makeObjectMap();
17
+ let facetedMinMaxValuesFn = facetedMinMaxValues[column.id];
18
+ if (!facetedMinMaxValuesFn) {
19
+ var _table$options$featur, _table$options$featur2;
20
+ facetedMinMaxValuesFn = facetedMinMaxValues[column.id] = ((_table$options$featur = (_table$options$featur2 = table.options.features).facetedMinMaxValues) === null || _table$options$featur === void 0 ? void 0 : _table$options$featur.call(_table$options$featur2, table, column.id)) ?? (() => void 0);
21
+ }
22
+ return facetedMinMaxValuesFn();
16
23
  }
17
24
  /**
18
25
  * Computes the row model used to derive one column's facet values.
@@ -27,8 +34,14 @@ function column_getFacetedMinMaxValues(column, table) {
27
34
  * ```
28
35
  */
29
36
  function column_getFacetedRowModel(column, table) {
30
- var _table$options$featur3, _table$options$featur4;
31
- return (((_table$options$featur3 = (_table$options$featur4 = table.options.features).facetedRowModel) === null || _table$options$featur3 === void 0 ? void 0 : _table$options$featur3.call(_table$options$featur4, table, (column === null || column === void 0 ? void 0 : column.id) ?? "")) ?? (() => table.getPreFilteredRowModel()))();
37
+ const columnId = (column === null || column === void 0 ? void 0 : column.id) ?? "";
38
+ const facetedRowModels = table._rowModels.facetedRowModels ??= makeObjectMap();
39
+ let facetedRowModelFn = facetedRowModels[columnId];
40
+ if (!facetedRowModelFn) {
41
+ var _table$options$featur3, _table$options$featur4;
42
+ facetedRowModelFn = facetedRowModels[columnId] = ((_table$options$featur3 = (_table$options$featur4 = table.options.features).facetedRowModel) === null || _table$options$featur3 === void 0 ? void 0 : _table$options$featur3.call(_table$options$featur4, table, columnId)) ?? (() => table.getPreFilteredRowModel());
43
+ }
44
+ return facetedRowModelFn();
32
45
  }
33
46
  /**
34
47
  * Computes unique facet values and their occurrence counts for one column.
@@ -42,8 +55,13 @@ function column_getFacetedRowModel(column, table) {
42
55
  * ```
43
56
  */
44
57
  function column_getFacetedUniqueValues(column, table) {
45
- var _table$options$featur5, _table$options$featur6;
46
- return (((_table$options$featur5 = (_table$options$featur6 = table.options.features).facetedUniqueValues) === null || _table$options$featur5 === void 0 ? void 0 : _table$options$featur5.call(_table$options$featur6, table, column.id)) ?? (() => /* @__PURE__ */ new Map()))();
58
+ const facetedUniqueValues = table._rowModels.facetedUniqueValues ??= makeObjectMap();
59
+ let facetedUniqueValuesFn = facetedUniqueValues[column.id];
60
+ if (!facetedUniqueValuesFn) {
61
+ var _table$options$featur5, _table$options$featur6;
62
+ facetedUniqueValuesFn = facetedUniqueValues[column.id] = ((_table$options$featur5 = (_table$options$featur6 = table.options.features).facetedUniqueValues) === null || _table$options$featur5 === void 0 ? void 0 : _table$options$featur5.call(_table$options$featur6, table, column.id)) ?? (() => /* @__PURE__ */ new Map());
63
+ }
64
+ return facetedUniqueValuesFn();
47
65
  }
48
66
  /**
49
67
  * Computes min and max numeric facet values for the global filter context.
@@ -57,8 +75,12 @@ function column_getFacetedUniqueValues(column, table) {
57
75
  * ```
58
76
  */
59
77
  function table_getGlobalFacetedMinMaxValues(table) {
60
- var _table$options$featur7, _table$options$featur8;
61
- return (((_table$options$featur7 = (_table$options$featur8 = table.options.features).facetedMinMaxValues) === null || _table$options$featur7 === void 0 ? void 0 : _table$options$featur7.call(_table$options$featur8, table, "__global__")) ?? (() => void 0))();
78
+ if (!table._rowModels.globalFacetedMinMaxValues) {
79
+ var _table$options$featur7, _table$options$featur8;
80
+ table._rowModels.globalFacetedMinMaxValues = ((_table$options$featur7 = (_table$options$featur8 = table.options.features).facetedMinMaxValues) === null || _table$options$featur7 === void 0 ? void 0 : _table$options$featur7.call(_table$options$featur8, table, "__global__")) ?? (() => void 0);
81
+ }
82
+ const facetedMinMaxValuesFn = table._rowModels.globalFacetedMinMaxValues;
83
+ return facetedMinMaxValuesFn();
62
84
  }
63
85
  /**
64
86
  * Computes the row model used to derive global facet values.
@@ -73,8 +95,12 @@ function table_getGlobalFacetedMinMaxValues(table) {
73
95
  * ```
74
96
  */
75
97
  function table_getGlobalFacetedRowModel(table) {
76
- var _table$options$featur9, _table$options$featur10;
77
- return (((_table$options$featur9 = (_table$options$featur10 = table.options.features).facetedRowModel) === null || _table$options$featur9 === void 0 ? void 0 : _table$options$featur9.call(_table$options$featur10, table, "__global__")) ?? (() => table.getPreFilteredRowModel()))();
98
+ if (!table._rowModels.globalFacetedRowModel) {
99
+ var _table$options$featur9, _table$options$featur10;
100
+ table._rowModels.globalFacetedRowModel = ((_table$options$featur9 = (_table$options$featur10 = table.options.features).facetedRowModel) === null || _table$options$featur9 === void 0 ? void 0 : _table$options$featur9.call(_table$options$featur10, table, "__global__")) ?? (() => table.getPreFilteredRowModel());
101
+ }
102
+ const facetedRowModelFn = table._rowModels.globalFacetedRowModel;
103
+ return facetedRowModelFn();
78
104
  }
79
105
  /**
80
106
  * Computes unique values and occurrence counts for the global filter context.
@@ -88,8 +114,12 @@ function table_getGlobalFacetedRowModel(table) {
88
114
  * ```
89
115
  */
90
116
  function table_getGlobalFacetedUniqueValues(table) {
91
- var _table$options$featur11, _table$options$featur12;
92
- return (((_table$options$featur11 = (_table$options$featur12 = table.options.features).facetedUniqueValues) === null || _table$options$featur11 === void 0 ? void 0 : _table$options$featur11.call(_table$options$featur12, table, "__global__")) ?? (() => /* @__PURE__ */ new Map()))();
117
+ if (!table._rowModels.globalFacetedUniqueValues) {
118
+ var _table$options$featur11, _table$options$featur12;
119
+ table._rowModels.globalFacetedUniqueValues = ((_table$options$featur11 = (_table$options$featur12 = table.options.features).facetedUniqueValues) === null || _table$options$featur11 === void 0 ? void 0 : _table$options$featur11.call(_table$options$featur12, table, "__global__")) ?? (() => /* @__PURE__ */ new Map());
120
+ }
121
+ const facetedUniqueValuesFn = table._rowModels.globalFacetedUniqueValues;
122
+ return facetedUniqueValuesFn();
93
123
  }
94
124
 
95
125
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"columnFacetingFeature.utils.js","names":[],"sources":["../../../src/features/column-faceting/columnFacetingFeature.utils.ts"],"sourcesContent":["import type { CellData, RowData } from '../../types/type-utils'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { RowModel } from '../../core/row-models/coreRowModelsFeature.types'\nimport type { Table_Internal } from '../../types/Table'\nimport type { Column_Internal } from '../../types/Column'\n\n/**\n * Computes min and max numeric facet values for one column.\n *\n * The configured `facetedMinMaxValues` row-model factory owns the calculation.\n * If no factory is registered, the result is `undefined`.\n *\n * @example\n * ```ts\n * const range = column_getFacetedMinMaxValues(column, table)\n * ```\n */\nexport function column_getFacetedMinMaxValues<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(\n column: Column_Internal<TFeatures, TData, TValue>,\n table: Table_Internal<TFeatures, TData>,\n): [number, number] | undefined {\n const facetedMinMaxValuesFn =\n table.options.features.facetedMinMaxValues?.(table, column.id) ??\n (() => undefined)\n return facetedMinMaxValuesFn()\n}\n\n/**\n * Computes the row model used to derive one column's facet values.\n *\n * The faceted row model normally applies every other active filter while\n * excluding this column's own filter. If no factory is registered, the\n * pre-filtered row model is returned.\n *\n * @example\n * ```ts\n * const rows = column_getFacetedRowModel(column, table)\n * ```\n */\nexport function column_getFacetedRowModel<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(\n column: Column_Internal<TFeatures, TData, TValue> | undefined,\n table: Table_Internal<TFeatures, TData>,\n): RowModel<TFeatures, TData> {\n const facetedRowModelFn =\n table.options.features.facetedRowModel?.(table, column?.id ?? '') ??\n (() => table.getPreFilteredRowModel())\n return facetedRowModelFn()\n}\n\n/**\n * Computes unique facet values and their occurrence counts for one column.\n *\n * The configured `facetedUniqueValues` row-model factory owns the calculation.\n * If no factory is registered, an empty `Map` is returned.\n *\n * @example\n * ```ts\n * const values = column_getFacetedUniqueValues(column, table)\n * ```\n */\nexport function column_getFacetedUniqueValues<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(\n column: Column_Internal<TFeatures, TData, TValue>,\n table: Table_Internal<TFeatures, TData>,\n): Map<any, number> {\n const facetedUniqueValuesFn =\n table.options.features.facetedUniqueValues?.(table, column.id) ??\n (() => new Map<any, number>())\n return facetedUniqueValuesFn()\n}\n\n/**\n * Computes min and max numeric facet values for the global filter context.\n *\n * The global context is requested with the internal `__global__` column id. If\n * no factory is registered, the result is `undefined`.\n *\n * @example\n * ```ts\n * const range = table_getGlobalFacetedMinMaxValues(table)\n * ```\n */\nexport function table_getGlobalFacetedMinMaxValues<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>): undefined | [number, number] {\n const facetedMinMaxValuesFn =\n table.options.features.facetedMinMaxValues?.(table, '__global__') ??\n (() => undefined)\n return facetedMinMaxValuesFn()\n}\n\n/**\n * Computes the row model used to derive global facet values.\n *\n * The global context is requested with the internal `__global__` column id. If\n * no faceted row-model factory is registered, the pre-filtered row model is\n * returned.\n *\n * @example\n * ```ts\n * const rows = table_getGlobalFacetedRowModel(table)\n * ```\n */\nexport function table_getGlobalFacetedRowModel<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>): RowModel<TFeatures, TData> {\n const facetedRowModelFn =\n table.options.features.facetedRowModel?.(table, '__global__') ??\n (() => table.getPreFilteredRowModel())\n return facetedRowModelFn()\n}\n\n/**\n * Computes unique values and occurrence counts for the global filter context.\n *\n * The global context is requested with the internal `__global__` column id. If\n * no factory is registered, an empty `Map` is returned.\n *\n * @example\n * ```ts\n * const values = table_getGlobalFacetedUniqueValues(table)\n * ```\n */\nexport function table_getGlobalFacetedUniqueValues<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>): Map<any, number> {\n const facetedUniqueValuesFn =\n table.options.features.facetedUniqueValues?.(table, '__global__') ??\n (() => new Map())\n return facetedUniqueValuesFn()\n}\n"],"mappings":";;;;;;;;;;;;AAiBA,SAAgB,8BAKd,QACA,OAC8B;;CAI9B,4DAFE,MAAM,QAAQ,UAAS,gIAAsB,OAAO,OAAO,EAAE,aACtD,QACmB,CAAC;AAC/B;;;;;;;;;;;;;AAcA,SAAgB,0BAKd,QACA,OAC4B;;CAI5B,6DAFE,MAAM,QAAQ,UAAS,8HAAkB,wDAAO,OAAQ,OAAM,EAAE,aACzD,MAAM,uBAAuB,GACd,CAAC;AAC3B;;;;;;;;;;;;AAaA,SAAgB,8BAKd,QACA,OACkB;;CAIlB,6DAFE,MAAM,QAAQ,UAAS,kIAAsB,OAAO,OAAO,EAAE,6BACtD,IAAI,IAAiB,GACF,CAAC;AAC/B;;;;;;;;;;;;AAaA,SAAgB,mCAGd,OAAuE;;CAIvE,6DAFE,MAAM,QAAQ,UAAS,kIAAsB,OAAO,YAAY,aACzD,QACmB,CAAC;AAC/B;;;;;;;;;;;;;AAcA,SAAgB,+BAGd,OAAqE;;CAIrE,8DAFE,MAAM,QAAQ,UAAS,+HAAkB,OAAO,YAAY,aACrD,MAAM,uBAAuB,GACd,CAAC;AAC3B;;;;;;;;;;;;AAaA,SAAgB,mCAGd,OAA2D;;CAI3D,+DAFE,MAAM,QAAQ,UAAS,qIAAsB,OAAO,YAAY,6BACzD,IAAI,IAAI,GACW,CAAC;AAC/B"}
1
+ {"version":3,"file":"columnFacetingFeature.utils.js","names":[],"sources":["../../../src/features/column-faceting/columnFacetingFeature.utils.ts"],"sourcesContent":["import { makeObjectMap } from '../../utils'\nimport type { CellData, RowData } from '../../types/type-utils'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { RowModel } from '../../core/row-models/coreRowModelsFeature.types'\nimport type { Table_Internal } from '../../types/Table'\nimport type { Column_Internal } from '../../types/Column'\n\n/**\n * Computes min and max numeric facet values for one column.\n *\n * The configured `facetedMinMaxValues` row-model factory owns the calculation.\n * If no factory is registered, the result is `undefined`.\n *\n * @example\n * ```ts\n * const range = column_getFacetedMinMaxValues(column, table)\n * ```\n */\nexport function column_getFacetedMinMaxValues<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(\n column: Column_Internal<TFeatures, TData, TValue>,\n table: Table_Internal<TFeatures, TData>,\n): [number, number] | undefined {\n const facetedMinMaxValues = (table._rowModels.facetedMinMaxValues ??=\n makeObjectMap())\n let facetedMinMaxValuesFn = facetedMinMaxValues[column.id]\n\n if (!facetedMinMaxValuesFn) {\n facetedMinMaxValuesFn = facetedMinMaxValues[column.id] =\n table.options.features.facetedMinMaxValues?.(table, column.id) ??\n (() => undefined)\n }\n\n return facetedMinMaxValuesFn()\n}\n\n/**\n * Computes the row model used to derive one column's facet values.\n *\n * The faceted row model normally applies every other active filter while\n * excluding this column's own filter. If no factory is registered, the\n * pre-filtered row model is returned.\n *\n * @example\n * ```ts\n * const rows = column_getFacetedRowModel(column, table)\n * ```\n */\nexport function column_getFacetedRowModel<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(\n column: Column_Internal<TFeatures, TData, TValue> | undefined,\n table: Table_Internal<TFeatures, TData>,\n): RowModel<TFeatures, TData> {\n const columnId = column?.id ?? ''\n const facetedRowModels = (table._rowModels.facetedRowModels ??=\n makeObjectMap())\n let facetedRowModelFn = facetedRowModels[columnId]\n\n if (!facetedRowModelFn) {\n facetedRowModelFn = facetedRowModels[columnId] =\n table.options.features.facetedRowModel?.(table, columnId) ??\n (() => table.getPreFilteredRowModel())\n }\n\n return facetedRowModelFn()\n}\n\n/**\n * Computes unique facet values and their occurrence counts for one column.\n *\n * The configured `facetedUniqueValues` row-model factory owns the calculation.\n * If no factory is registered, an empty `Map` is returned.\n *\n * @example\n * ```ts\n * const values = column_getFacetedUniqueValues(column, table)\n * ```\n */\nexport function column_getFacetedUniqueValues<\n TFeatures extends TableFeatures,\n TData extends RowData,\n TValue extends CellData = CellData,\n>(\n column: Column_Internal<TFeatures, TData, TValue>,\n table: Table_Internal<TFeatures, TData>,\n): Map<any, number> {\n const facetedUniqueValues = (table._rowModels.facetedUniqueValues ??=\n makeObjectMap())\n let facetedUniqueValuesFn = facetedUniqueValues[column.id]\n\n if (!facetedUniqueValuesFn) {\n facetedUniqueValuesFn = facetedUniqueValues[column.id] =\n table.options.features.facetedUniqueValues?.(table, column.id) ??\n (() => new Map<any, number>())\n }\n\n return facetedUniqueValuesFn()\n}\n\n/**\n * Computes min and max numeric facet values for the global filter context.\n *\n * The global context is requested with the internal `__global__` column id. If\n * no factory is registered, the result is `undefined`.\n *\n * @example\n * ```ts\n * const range = table_getGlobalFacetedMinMaxValues(table)\n * ```\n */\nexport function table_getGlobalFacetedMinMaxValues<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>): undefined | [number, number] {\n if (!table._rowModels.globalFacetedMinMaxValues) {\n table._rowModels.globalFacetedMinMaxValues =\n table.options.features.facetedMinMaxValues?.(table, '__global__') ??\n (() => undefined)\n }\n\n const facetedMinMaxValuesFn = table._rowModels.globalFacetedMinMaxValues\n return facetedMinMaxValuesFn()\n}\n\n/**\n * Computes the row model used to derive global facet values.\n *\n * The global context is requested with the internal `__global__` column id. If\n * no faceted row-model factory is registered, the pre-filtered row model is\n * returned.\n *\n * @example\n * ```ts\n * const rows = table_getGlobalFacetedRowModel(table)\n * ```\n */\nexport function table_getGlobalFacetedRowModel<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>): RowModel<TFeatures, TData> {\n if (!table._rowModels.globalFacetedRowModel) {\n table._rowModels.globalFacetedRowModel =\n table.options.features.facetedRowModel?.(table, '__global__') ??\n (() => table.getPreFilteredRowModel())\n }\n\n const facetedRowModelFn = table._rowModels.globalFacetedRowModel\n return facetedRowModelFn()\n}\n\n/**\n * Computes unique values and occurrence counts for the global filter context.\n *\n * The global context is requested with the internal `__global__` column id. If\n * no factory is registered, an empty `Map` is returned.\n *\n * @example\n * ```ts\n * const values = table_getGlobalFacetedUniqueValues(table)\n * ```\n */\nexport function table_getGlobalFacetedUniqueValues<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(table: Table_Internal<TFeatures, TData>): Map<any, number> {\n if (!table._rowModels.globalFacetedUniqueValues) {\n table._rowModels.globalFacetedUniqueValues =\n table.options.features.facetedUniqueValues?.(table, '__global__') ??\n (() => new Map())\n }\n\n const facetedUniqueValuesFn = table._rowModels.globalFacetedUniqueValues\n return facetedUniqueValuesFn()\n}\n"],"mappings":";;;;;;;;;;;;;;AAkBA,SAAgB,8BAKd,QACA,OAC8B;CAC9B,MAAM,sBAAuB,MAAM,WAAW,wBAC5C,cAAc;CAChB,IAAI,wBAAwB,oBAAoB,OAAO;CAEvD,IAAI,CAAC,uBAAuB;;EAC1B,wBAAwB,oBAAoB,OAAO,0DACjD,MAAM,QAAQ,UAAS,gIAAsB,OAAO,OAAO,EAAE,aACtD;CACX;CAEA,OAAO,sBAAsB;AAC/B;;;;;;;;;;;;;AAcA,SAAgB,0BAKd,QACA,OAC4B;CAC5B,MAAM,4DAAW,OAAQ,OAAM;CAC/B,MAAM,mBAAoB,MAAM,WAAW,qBACzC,cAAc;CAChB,IAAI,oBAAoB,iBAAiB;CAEzC,IAAI,CAAC,mBAAmB;;EACtB,oBAAoB,iBAAiB,iEACnC,MAAM,QAAQ,UAAS,8HAAkB,OAAO,QAAQ,aACjD,MAAM,uBAAuB;CACxC;CAEA,OAAO,kBAAkB;AAC3B;;;;;;;;;;;;AAaA,SAAgB,8BAKd,QACA,OACkB;CAClB,MAAM,sBAAuB,MAAM,WAAW,wBAC5C,cAAc;CAChB,IAAI,wBAAwB,oBAAoB,OAAO;CAEvD,IAAI,CAAC,uBAAuB;;EAC1B,wBAAwB,oBAAoB,OAAO,2DACjD,MAAM,QAAQ,UAAS,kIAAsB,OAAO,OAAO,EAAE,6BACtD,IAAI,IAAiB;CAChC;CAEA,OAAO,sBAAsB;AAC/B;;;;;;;;;;;;AAaA,SAAgB,mCAGd,OAAuE;CACvE,IAAI,CAAC,MAAM,WAAW,2BAA2B;;EAC/C,MAAM,WAAW,iFACf,MAAM,QAAQ,UAAS,kIAAsB,OAAO,YAAY,aACzD;CACX;CAEA,MAAM,wBAAwB,MAAM,WAAW;CAC/C,OAAO,sBAAsB;AAC/B;;;;;;;;;;;;;AAcA,SAAgB,+BAGd,OAAqE;CACrE,IAAI,CAAC,MAAM,WAAW,uBAAuB;;EAC3C,MAAM,WAAW,8EACf,MAAM,QAAQ,UAAS,+HAAkB,OAAO,YAAY,aACrD,MAAM,uBAAuB;CACxC;CAEA,MAAM,oBAAoB,MAAM,WAAW;CAC3C,OAAO,kBAAkB;AAC3B;;;;;;;;;;;;AAaA,SAAgB,mCAGd,OAA2D;CAC3D,IAAI,CAAC,MAAM,WAAW,2BAA2B;;EAC/C,MAAM,WAAW,mFACf,MAAM,QAAQ,UAAS,qIAAsB,OAAO,YAAY,6BACzD,IAAI,IAAI;CACnB;CAEA,MAAM,wBAAwB,MAAM,WAAW;CAC/C,OAAO,sBAAsB;AAC/B"}
@@ -35,6 +35,7 @@ function _createFacetedRowModel(table, columnId, preRowModel, columnFilters, glo
35
35
  if (id !== columnId) filterableIds.push(id);
36
36
  }
37
37
  if (globalFilter) filterableIds.push("__global__");
38
+ if (!filterableIds.length) return preRowModel;
38
39
  const filterRowsImpl = (row) => {
39
40
  for (let i = 0; i < filterableIds.length; i++) {
40
41
  var _row$columnFilters;
@@ -1 +1 @@
1
- {"version":3,"file":"createFacetedRowModel.cjs","names":["tableMemo","filterRows"],"sources":["../../../src/features/column-faceting/createFacetedRowModel.ts"],"sourcesContent":["import { tableMemo } from '../../utils'\nimport { filterRows } from '../column-filtering/filterRowsUtils'\nimport type { Table, Table_Internal } from '../../types/Table'\nimport type {\n ColumnFiltersState,\n Row_ColumnFiltering,\n} from '../column-filtering/columnFilteringFeature.types'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { RowModel } from '../../core/row-models/coreRowModelsFeature.types'\nimport type { Row } from '../../types/Row'\nimport type { RowData } from '../../types/type-utils'\n\n/**\n * Creates a memoized faceted row model factory.\n *\n * The factory reads the relevant table state atoms and options, then returns a row model function used by the table row-model pipeline.\n */\nexport function createFacetedRowModel<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(): (\n table: Table<TFeatures, TData>,\n columnId: string,\n) => () => RowModel<TFeatures, TData> {\n return (_table, columnId) => {\n const table = _table as unknown as Table_Internal<TFeatures, TData>\n return tableMemo({\n feature: 'columnFacetingFeature',\n table,\n fnName: 'createFacetedRowModel',\n memoDeps: () => [\n table.getPreFilteredRowModel(),\n table.atoms.columnFilters?.get(),\n table.atoms.globalFilter?.get(),\n table.getFilteredRowModel(),\n ],\n fn: (preRowModel, columnFilters, globalFilter) =>\n _createFacetedRowModel(\n table,\n columnId,\n preRowModel,\n columnFilters,\n globalFilter,\n ),\n })\n }\n}\n\nfunction _createFacetedRowModel<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(\n table: Table_Internal<TFeatures, TData>,\n columnId: string,\n preRowModel: RowModel<TFeatures, TData>,\n columnFilters?: ColumnFiltersState,\n globalFilter?: string,\n) {\n if (!preRowModel.rows.length || (!columnFilters?.length && !globalFilter)) {\n return preRowModel\n }\n\n const filterableIds: Array<string> = []\n if (columnFilters) {\n for (let i = 0; i < columnFilters.length; i++) {\n const id = columnFilters[i]!.id\n if (id !== columnId) filterableIds.push(id)\n }\n }\n if (globalFilter) filterableIds.push('__global__')\n\n const filterRowsImpl = (\n row: Row<TFeatures, TData> & Partial<Row_ColumnFiltering<TFeatures, TData>>,\n ) => {\n // Horizontally filter rows through each column\n for (let i = 0; i < filterableIds.length; i++) {\n if (row.columnFilters?.[filterableIds[i]!] === false) {\n return false\n }\n }\n return true\n }\n\n return filterRows(preRowModel.rows, filterRowsImpl, table)\n}\n"],"mappings":";;;;;;;;;AAiBA,SAAgB,wBAMsB;CACpC,QAAQ,QAAQ,aAAa;EAC3B,MAAM,QAAQ;EACd,OAAOA,wBAAU;GACf,SAAS;GACT;GACA,QAAQ;GACR,gBAAgB;;;KACd,MAAM,uBAAuB;8BAC7B,MAAM,MAAM,6FAAe,IAAI;8BAC/B,MAAM,MAAM,4FAAc,IAAI;KAC9B,MAAM,oBAAoB;IAC5B;;GACA,KAAK,aAAa,eAAe,iBAC/B,uBACE,OACA,UACA,aACA,eACA,YACF;EACJ,CAAC;CACH;AACF;AAEA,SAAS,uBAIP,OACA,UACA,aACA,eACA,cACA;CACA,IAAI,CAAC,YAAY,KAAK,UAAW,gEAAC,cAAe,WAAU,CAAC,cAC1D,OAAO;CAGT,MAAM,gBAA+B,CAAC;CACtC,IAAI,eACF,KAAK,IAAI,IAAI,GAAG,IAAI,cAAc,QAAQ,KAAK;EAC7C,MAAM,KAAK,cAAc,EAAE,CAAE;EAC7B,IAAI,OAAO,UAAU,cAAc,KAAK,EAAE;CAC5C;CAEF,IAAI,cAAc,cAAc,KAAK,YAAY;CAEjD,MAAM,kBACJ,QACG;EAEH,KAAK,IAAI,IAAI,GAAG,IAAI,cAAc,QAAQ,KAAK;;GAC7C,2BAAI,IAAI,uFAAgB,cAAc,SAAS,OAC7C,OAAO;EAEX;EACA,OAAO;CACT;CAEA,OAAOC,mCAAW,YAAY,MAAM,gBAAgB,KAAK;AAC3D"}
1
+ {"version":3,"file":"createFacetedRowModel.cjs","names":["tableMemo","filterRows"],"sources":["../../../src/features/column-faceting/createFacetedRowModel.ts"],"sourcesContent":["import { tableMemo } from '../../utils'\nimport { filterRows } from '../column-filtering/filterRowsUtils'\nimport type { Table, Table_Internal } from '../../types/Table'\nimport type {\n ColumnFiltersState,\n Row_ColumnFiltering,\n} from '../column-filtering/columnFilteringFeature.types'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { RowModel } from '../../core/row-models/coreRowModelsFeature.types'\nimport type { Row } from '../../types/Row'\nimport type { RowData } from '../../types/type-utils'\n\n/**\n * Creates a memoized faceted row model factory.\n *\n * The factory reads the relevant table state atoms and options, then returns a row model function used by the table row-model pipeline.\n */\nexport function createFacetedRowModel<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(): (\n table: Table<TFeatures, TData>,\n columnId: string,\n) => () => RowModel<TFeatures, TData> {\n return (_table, columnId) => {\n const table = _table as unknown as Table_Internal<TFeatures, TData>\n return tableMemo({\n feature: 'columnFacetingFeature',\n table,\n fnName: 'createFacetedRowModel',\n memoDeps: () => [\n table.getPreFilteredRowModel(),\n table.atoms.columnFilters?.get(),\n table.atoms.globalFilter?.get(),\n table.getFilteredRowModel(),\n ],\n fn: (preRowModel, columnFilters, globalFilter) =>\n _createFacetedRowModel(\n table,\n columnId,\n preRowModel,\n columnFilters,\n globalFilter,\n ),\n })\n }\n}\n\nfunction _createFacetedRowModel<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(\n table: Table_Internal<TFeatures, TData>,\n columnId: string,\n preRowModel: RowModel<TFeatures, TData>,\n columnFilters?: ColumnFiltersState,\n globalFilter?: string,\n) {\n if (!preRowModel.rows.length || (!columnFilters?.length && !globalFilter)) {\n return preRowModel\n }\n\n const filterableIds: Array<string> = []\n if (columnFilters) {\n for (let i = 0; i < columnFilters.length; i++) {\n const id = columnFilters[i]!.id\n if (id !== columnId) filterableIds.push(id)\n }\n }\n if (globalFilter) filterableIds.push('__global__')\n\n if (!filterableIds.length) {\n return preRowModel\n }\n\n const filterRowsImpl = (\n row: Row<TFeatures, TData> & Partial<Row_ColumnFiltering<TFeatures, TData>>,\n ) => {\n // Horizontally filter rows through each column\n for (let i = 0; i < filterableIds.length; i++) {\n if (row.columnFilters?.[filterableIds[i]!] === false) {\n return false\n }\n }\n return true\n }\n\n return filterRows(preRowModel.rows, filterRowsImpl, table)\n}\n"],"mappings":";;;;;;;;;AAiBA,SAAgB,wBAMsB;CACpC,QAAQ,QAAQ,aAAa;EAC3B,MAAM,QAAQ;EACd,OAAOA,wBAAU;GACf,SAAS;GACT;GACA,QAAQ;GACR,gBAAgB;;;KACd,MAAM,uBAAuB;8BAC7B,MAAM,MAAM,6FAAe,IAAI;8BAC/B,MAAM,MAAM,4FAAc,IAAI;KAC9B,MAAM,oBAAoB;IAC5B;;GACA,KAAK,aAAa,eAAe,iBAC/B,uBACE,OACA,UACA,aACA,eACA,YACF;EACJ,CAAC;CACH;AACF;AAEA,SAAS,uBAIP,OACA,UACA,aACA,eACA,cACA;CACA,IAAI,CAAC,YAAY,KAAK,UAAW,gEAAC,cAAe,WAAU,CAAC,cAC1D,OAAO;CAGT,MAAM,gBAA+B,CAAC;CACtC,IAAI,eACF,KAAK,IAAI,IAAI,GAAG,IAAI,cAAc,QAAQ,KAAK;EAC7C,MAAM,KAAK,cAAc,EAAE,CAAE;EAC7B,IAAI,OAAO,UAAU,cAAc,KAAK,EAAE;CAC5C;CAEF,IAAI,cAAc,cAAc,KAAK,YAAY;CAEjD,IAAI,CAAC,cAAc,QACjB,OAAO;CAGT,MAAM,kBACJ,QACG;EAEH,KAAK,IAAI,IAAI,GAAG,IAAI,cAAc,QAAQ,KAAK;;GAC7C,2BAAI,IAAI,uFAAgB,cAAc,SAAS,OAC7C,OAAO;EAEX;EACA,OAAO;CACT;CAEA,OAAOC,mCAAW,YAAY,MAAM,gBAAgB,KAAK;AAC3D"}
@@ -35,6 +35,7 @@ function _createFacetedRowModel(table, columnId, preRowModel, columnFilters, glo
35
35
  if (id !== columnId) filterableIds.push(id);
36
36
  }
37
37
  if (globalFilter) filterableIds.push("__global__");
38
+ if (!filterableIds.length) return preRowModel;
38
39
  const filterRowsImpl = (row) => {
39
40
  for (let i = 0; i < filterableIds.length; i++) {
40
41
  var _row$columnFilters;
@@ -1 +1 @@
1
- {"version":3,"file":"createFacetedRowModel.js","names":[],"sources":["../../../src/features/column-faceting/createFacetedRowModel.ts"],"sourcesContent":["import { tableMemo } from '../../utils'\nimport { filterRows } from '../column-filtering/filterRowsUtils'\nimport type { Table, Table_Internal } from '../../types/Table'\nimport type {\n ColumnFiltersState,\n Row_ColumnFiltering,\n} from '../column-filtering/columnFilteringFeature.types'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { RowModel } from '../../core/row-models/coreRowModelsFeature.types'\nimport type { Row } from '../../types/Row'\nimport type { RowData } from '../../types/type-utils'\n\n/**\n * Creates a memoized faceted row model factory.\n *\n * The factory reads the relevant table state atoms and options, then returns a row model function used by the table row-model pipeline.\n */\nexport function createFacetedRowModel<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(): (\n table: Table<TFeatures, TData>,\n columnId: string,\n) => () => RowModel<TFeatures, TData> {\n return (_table, columnId) => {\n const table = _table as unknown as Table_Internal<TFeatures, TData>\n return tableMemo({\n feature: 'columnFacetingFeature',\n table,\n fnName: 'createFacetedRowModel',\n memoDeps: () => [\n table.getPreFilteredRowModel(),\n table.atoms.columnFilters?.get(),\n table.atoms.globalFilter?.get(),\n table.getFilteredRowModel(),\n ],\n fn: (preRowModel, columnFilters, globalFilter) =>\n _createFacetedRowModel(\n table,\n columnId,\n preRowModel,\n columnFilters,\n globalFilter,\n ),\n })\n }\n}\n\nfunction _createFacetedRowModel<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(\n table: Table_Internal<TFeatures, TData>,\n columnId: string,\n preRowModel: RowModel<TFeatures, TData>,\n columnFilters?: ColumnFiltersState,\n globalFilter?: string,\n) {\n if (!preRowModel.rows.length || (!columnFilters?.length && !globalFilter)) {\n return preRowModel\n }\n\n const filterableIds: Array<string> = []\n if (columnFilters) {\n for (let i = 0; i < columnFilters.length; i++) {\n const id = columnFilters[i]!.id\n if (id !== columnId) filterableIds.push(id)\n }\n }\n if (globalFilter) filterableIds.push('__global__')\n\n const filterRowsImpl = (\n row: Row<TFeatures, TData> & Partial<Row_ColumnFiltering<TFeatures, TData>>,\n ) => {\n // Horizontally filter rows through each column\n for (let i = 0; i < filterableIds.length; i++) {\n if (row.columnFilters?.[filterableIds[i]!] === false) {\n return false\n }\n }\n return true\n }\n\n return filterRows(preRowModel.rows, filterRowsImpl, table)\n}\n"],"mappings":";;;;;;;;;AAiBA,SAAgB,wBAMsB;CACpC,QAAQ,QAAQ,aAAa;EAC3B,MAAM,QAAQ;EACd,OAAO,UAAU;GACf,SAAS;GACT;GACA,QAAQ;GACR,gBAAgB;;;KACd,MAAM,uBAAuB;8BAC7B,MAAM,MAAM,6FAAe,IAAI;8BAC/B,MAAM,MAAM,4FAAc,IAAI;KAC9B,MAAM,oBAAoB;IAC5B;;GACA,KAAK,aAAa,eAAe,iBAC/B,uBACE,OACA,UACA,aACA,eACA,YACF;EACJ,CAAC;CACH;AACF;AAEA,SAAS,uBAIP,OACA,UACA,aACA,eACA,cACA;CACA,IAAI,CAAC,YAAY,KAAK,UAAW,gEAAC,cAAe,WAAU,CAAC,cAC1D,OAAO;CAGT,MAAM,gBAA+B,CAAC;CACtC,IAAI,eACF,KAAK,IAAI,IAAI,GAAG,IAAI,cAAc,QAAQ,KAAK;EAC7C,MAAM,KAAK,cAAc,EAAE,CAAE;EAC7B,IAAI,OAAO,UAAU,cAAc,KAAK,EAAE;CAC5C;CAEF,IAAI,cAAc,cAAc,KAAK,YAAY;CAEjD,MAAM,kBACJ,QACG;EAEH,KAAK,IAAI,IAAI,GAAG,IAAI,cAAc,QAAQ,KAAK;;GAC7C,2BAAI,IAAI,uFAAgB,cAAc,SAAS,OAC7C,OAAO;EAEX;EACA,OAAO;CACT;CAEA,OAAO,WAAW,YAAY,MAAM,gBAAgB,KAAK;AAC3D"}
1
+ {"version":3,"file":"createFacetedRowModel.js","names":[],"sources":["../../../src/features/column-faceting/createFacetedRowModel.ts"],"sourcesContent":["import { tableMemo } from '../../utils'\nimport { filterRows } from '../column-filtering/filterRowsUtils'\nimport type { Table, Table_Internal } from '../../types/Table'\nimport type {\n ColumnFiltersState,\n Row_ColumnFiltering,\n} from '../column-filtering/columnFilteringFeature.types'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { RowModel } from '../../core/row-models/coreRowModelsFeature.types'\nimport type { Row } from '../../types/Row'\nimport type { RowData } from '../../types/type-utils'\n\n/**\n * Creates a memoized faceted row model factory.\n *\n * The factory reads the relevant table state atoms and options, then returns a row model function used by the table row-model pipeline.\n */\nexport function createFacetedRowModel<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(): (\n table: Table<TFeatures, TData>,\n columnId: string,\n) => () => RowModel<TFeatures, TData> {\n return (_table, columnId) => {\n const table = _table as unknown as Table_Internal<TFeatures, TData>\n return tableMemo({\n feature: 'columnFacetingFeature',\n table,\n fnName: 'createFacetedRowModel',\n memoDeps: () => [\n table.getPreFilteredRowModel(),\n table.atoms.columnFilters?.get(),\n table.atoms.globalFilter?.get(),\n table.getFilteredRowModel(),\n ],\n fn: (preRowModel, columnFilters, globalFilter) =>\n _createFacetedRowModel(\n table,\n columnId,\n preRowModel,\n columnFilters,\n globalFilter,\n ),\n })\n }\n}\n\nfunction _createFacetedRowModel<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(\n table: Table_Internal<TFeatures, TData>,\n columnId: string,\n preRowModel: RowModel<TFeatures, TData>,\n columnFilters?: ColumnFiltersState,\n globalFilter?: string,\n) {\n if (!preRowModel.rows.length || (!columnFilters?.length && !globalFilter)) {\n return preRowModel\n }\n\n const filterableIds: Array<string> = []\n if (columnFilters) {\n for (let i = 0; i < columnFilters.length; i++) {\n const id = columnFilters[i]!.id\n if (id !== columnId) filterableIds.push(id)\n }\n }\n if (globalFilter) filterableIds.push('__global__')\n\n if (!filterableIds.length) {\n return preRowModel\n }\n\n const filterRowsImpl = (\n row: Row<TFeatures, TData> & Partial<Row_ColumnFiltering<TFeatures, TData>>,\n ) => {\n // Horizontally filter rows through each column\n for (let i = 0; i < filterableIds.length; i++) {\n if (row.columnFilters?.[filterableIds[i]!] === false) {\n return false\n }\n }\n return true\n }\n\n return filterRows(preRowModel.rows, filterRowsImpl, table)\n}\n"],"mappings":";;;;;;;;;AAiBA,SAAgB,wBAMsB;CACpC,QAAQ,QAAQ,aAAa;EAC3B,MAAM,QAAQ;EACd,OAAO,UAAU;GACf,SAAS;GACT;GACA,QAAQ;GACR,gBAAgB;;;KACd,MAAM,uBAAuB;8BAC7B,MAAM,MAAM,6FAAe,IAAI;8BAC/B,MAAM,MAAM,4FAAc,IAAI;KAC9B,MAAM,oBAAoB;IAC5B;;GACA,KAAK,aAAa,eAAe,iBAC/B,uBACE,OACA,UACA,aACA,eACA,YACF;EACJ,CAAC;CACH;AACF;AAEA,SAAS,uBAIP,OACA,UACA,aACA,eACA,cACA;CACA,IAAI,CAAC,YAAY,KAAK,UAAW,gEAAC,cAAe,WAAU,CAAC,cAC1D,OAAO;CAGT,MAAM,gBAA+B,CAAC;CACtC,IAAI,eACF,KAAK,IAAI,IAAI,GAAG,IAAI,cAAc,QAAQ,KAAK;EAC7C,MAAM,KAAK,cAAc,EAAE,CAAE;EAC7B,IAAI,OAAO,UAAU,cAAc,KAAK,EAAE;CAC5C;CAEF,IAAI,cAAc,cAAc,KAAK,YAAY;CAEjD,IAAI,CAAC,cAAc,QACjB,OAAO;CAGT,MAAM,kBACJ,QACG;EAEH,KAAK,IAAI,IAAI,GAAG,IAAI,cAAc,QAAQ,KAAK;;GAC7C,2BAAI,IAAI,uFAAgB,cAAc,SAAS,OAC7C,OAAO;EAEX;EACA,OAAO;CACT;CAEA,OAAO,WAAW,YAAY,MAAM,gBAAgB,KAAK;AAC3D"}
@@ -29,8 +29,8 @@ function _createFacetedUniqueValues(columnId, flatRows) {
29
29
  const values = flatRows[i].getUniqueValues(columnId);
30
30
  for (let j = 0; j < values.length; j++) {
31
31
  const value = values[j];
32
- if (facetedUniqueValues.has(value)) facetedUniqueValues.set(value, (facetedUniqueValues.get(value) ?? 0) + 1);
33
- else facetedUniqueValues.set(value, 1);
32
+ const previousValue = facetedUniqueValues.get(value);
33
+ facetedUniqueValues.set(value, previousValue === void 0 ? 1 : previousValue + 1);
34
34
  }
35
35
  }
36
36
  return facetedUniqueValues;
@@ -1 +1 @@
1
- {"version":3,"file":"createFacetedUniqueValues.cjs","names":["tableMemo","callMemoOrStaticFn","column_getFacetedRowModel"],"sources":["../../../src/features/column-faceting/createFacetedUniqueValues.ts"],"sourcesContent":["import { callMemoOrStaticFn, tableMemo } from '../../utils'\nimport { column_getFacetedRowModel } from './columnFacetingFeature.utils'\nimport type { Row } from '../../types/Row'\nimport type { Table, Table_Internal } from '../../types/Table'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { RowData } from '../../types/type-utils'\n\n/**\n * Creates a memoized faceted unique values helper for faceted filtering.\n *\n * The returned function derives facet data from the table row model and relevant filter state so filter UIs can display available values.\n */\nexport function createFacetedUniqueValues<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(): (\n table: Table<TFeatures, TData>,\n columnId: string,\n) => () => Map<any, number> {\n return (_table, columnId) => {\n const table = _table as unknown as Table_Internal<TFeatures, TData>\n return tableMemo({\n feature: 'columnFacetingFeature',\n table,\n fnName: 'table.getFacetedUniqueValues',\n memoDeps: () => {\n const column = table.getColumn(columnId)\n if (!column) return [table.getPreFilteredRowModel().flatRows]\n return [\n callMemoOrStaticFn(\n column,\n 'getFacetedRowModel',\n column_getFacetedRowModel,\n table,\n ).flatRows,\n ]\n },\n fn: (flatRows) => _createFacetedUniqueValues(columnId, flatRows),\n })\n }\n}\n\nfunction _createFacetedUniqueValues<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(columnId: string, flatRows: Array<Row<TFeatures, TData>>): Map<any, number> {\n const facetedUniqueValues = new Map<any, number>()\n\n for (let i = 0; i < flatRows.length; i++) {\n const values = flatRows[i]!.getUniqueValues(columnId)\n\n for (let j = 0; j < values.length; j++) {\n const value = values[j]\n if (facetedUniqueValues.has(value)) {\n facetedUniqueValues.set(\n value,\n (facetedUniqueValues.get(value) ?? 0) + 1,\n )\n } else {\n facetedUniqueValues.set(value, 1)\n }\n }\n }\n\n return facetedUniqueValues\n}\n"],"mappings":";;;;;;;;;AAYA,SAAgB,4BAMY;CAC1B,QAAQ,QAAQ,aAAa;EAC3B,MAAM,QAAQ;EACd,OAAOA,wBAAU;GACf,SAAS;GACT;GACA,QAAQ;GACR,gBAAgB;IACd,MAAM,SAAS,MAAM,UAAU,QAAQ;IACvC,IAAI,CAAC,QAAQ,OAAO,CAAC,MAAM,uBAAuB,CAAC,CAAC,QAAQ;IAC5D,OAAO,CACLC,iCACE,QACA,sBACAC,+DACA,KACF,CAAC,CAAC,QACJ;GACF;GACA,KAAK,aAAa,2BAA2B,UAAU,QAAQ;EACjE,CAAC;CACH;AACF;AAEA,SAAS,2BAGP,UAAkB,UAA0D;CAC5E,MAAM,sCAAsB,IAAI,IAAiB;CAEjD,KAAK,IAAI,IAAI,GAAG,IAAI,SAAS,QAAQ,KAAK;EACxC,MAAM,SAAS,SAAS,EAAE,CAAE,gBAAgB,QAAQ;EAEpD,KAAK,IAAI,IAAI,GAAG,IAAI,OAAO,QAAQ,KAAK;GACtC,MAAM,QAAQ,OAAO;GACrB,IAAI,oBAAoB,IAAI,KAAK,GAC/B,oBAAoB,IAClB,QACC,oBAAoB,IAAI,KAAK,KAAK,KAAK,CAC1C;QAEA,oBAAoB,IAAI,OAAO,CAAC;EAEpC;CACF;CAEA,OAAO;AACT"}
1
+ {"version":3,"file":"createFacetedUniqueValues.cjs","names":["tableMemo","callMemoOrStaticFn","column_getFacetedRowModel"],"sources":["../../../src/features/column-faceting/createFacetedUniqueValues.ts"],"sourcesContent":["import { callMemoOrStaticFn, tableMemo } from '../../utils'\nimport { column_getFacetedRowModel } from './columnFacetingFeature.utils'\nimport type { Row } from '../../types/Row'\nimport type { Table, Table_Internal } from '../../types/Table'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { RowData } from '../../types/type-utils'\n\n/**\n * Creates a memoized faceted unique values helper for faceted filtering.\n *\n * The returned function derives facet data from the table row model and relevant filter state so filter UIs can display available values.\n */\nexport function createFacetedUniqueValues<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(): (\n table: Table<TFeatures, TData>,\n columnId: string,\n) => () => Map<any, number> {\n return (_table, columnId) => {\n const table = _table as unknown as Table_Internal<TFeatures, TData>\n return tableMemo({\n feature: 'columnFacetingFeature',\n table,\n fnName: 'table.getFacetedUniqueValues',\n memoDeps: () => {\n const column = table.getColumn(columnId)\n if (!column) return [table.getPreFilteredRowModel().flatRows]\n return [\n callMemoOrStaticFn(\n column,\n 'getFacetedRowModel',\n column_getFacetedRowModel,\n table,\n ).flatRows,\n ]\n },\n fn: (flatRows) => _createFacetedUniqueValues(columnId, flatRows),\n })\n }\n}\n\nfunction _createFacetedUniqueValues<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(columnId: string, flatRows: Array<Row<TFeatures, TData>>): Map<any, number> {\n const facetedUniqueValues = new Map<any, number>()\n\n for (let i = 0; i < flatRows.length; i++) {\n const values = flatRows[i]!.getUniqueValues(columnId)\n\n for (let j = 0; j < values.length; j++) {\n const value = values[j]\n const previousValue = facetedUniqueValues.get(value)\n facetedUniqueValues.set(\n value,\n previousValue === undefined ? 1 : previousValue + 1,\n )\n }\n }\n\n return facetedUniqueValues\n}\n"],"mappings":";;;;;;;;;AAYA,SAAgB,4BAMY;CAC1B,QAAQ,QAAQ,aAAa;EAC3B,MAAM,QAAQ;EACd,OAAOA,wBAAU;GACf,SAAS;GACT;GACA,QAAQ;GACR,gBAAgB;IACd,MAAM,SAAS,MAAM,UAAU,QAAQ;IACvC,IAAI,CAAC,QAAQ,OAAO,CAAC,MAAM,uBAAuB,CAAC,CAAC,QAAQ;IAC5D,OAAO,CACLC,iCACE,QACA,sBACAC,+DACA,KACF,CAAC,CAAC,QACJ;GACF;GACA,KAAK,aAAa,2BAA2B,UAAU,QAAQ;EACjE,CAAC;CACH;AACF;AAEA,SAAS,2BAGP,UAAkB,UAA0D;CAC5E,MAAM,sCAAsB,IAAI,IAAiB;CAEjD,KAAK,IAAI,IAAI,GAAG,IAAI,SAAS,QAAQ,KAAK;EACxC,MAAM,SAAS,SAAS,EAAE,CAAE,gBAAgB,QAAQ;EAEpD,KAAK,IAAI,IAAI,GAAG,IAAI,OAAO,QAAQ,KAAK;GACtC,MAAM,QAAQ,OAAO;GACrB,MAAM,gBAAgB,oBAAoB,IAAI,KAAK;GACnD,oBAAoB,IAClB,OACA,kBAAkB,SAAY,IAAI,gBAAgB,CACpD;EACF;CACF;CAEA,OAAO;AACT"}
@@ -29,8 +29,8 @@ function _createFacetedUniqueValues(columnId, flatRows) {
29
29
  const values = flatRows[i].getUniqueValues(columnId);
30
30
  for (let j = 0; j < values.length; j++) {
31
31
  const value = values[j];
32
- if (facetedUniqueValues.has(value)) facetedUniqueValues.set(value, (facetedUniqueValues.get(value) ?? 0) + 1);
33
- else facetedUniqueValues.set(value, 1);
32
+ const previousValue = facetedUniqueValues.get(value);
33
+ facetedUniqueValues.set(value, previousValue === void 0 ? 1 : previousValue + 1);
34
34
  }
35
35
  }
36
36
  return facetedUniqueValues;
@@ -1 +1 @@
1
- {"version":3,"file":"createFacetedUniqueValues.js","names":[],"sources":["../../../src/features/column-faceting/createFacetedUniqueValues.ts"],"sourcesContent":["import { callMemoOrStaticFn, tableMemo } from '../../utils'\nimport { column_getFacetedRowModel } from './columnFacetingFeature.utils'\nimport type { Row } from '../../types/Row'\nimport type { Table, Table_Internal } from '../../types/Table'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { RowData } from '../../types/type-utils'\n\n/**\n * Creates a memoized faceted unique values helper for faceted filtering.\n *\n * The returned function derives facet data from the table row model and relevant filter state so filter UIs can display available values.\n */\nexport function createFacetedUniqueValues<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(): (\n table: Table<TFeatures, TData>,\n columnId: string,\n) => () => Map<any, number> {\n return (_table, columnId) => {\n const table = _table as unknown as Table_Internal<TFeatures, TData>\n return tableMemo({\n feature: 'columnFacetingFeature',\n table,\n fnName: 'table.getFacetedUniqueValues',\n memoDeps: () => {\n const column = table.getColumn(columnId)\n if (!column) return [table.getPreFilteredRowModel().flatRows]\n return [\n callMemoOrStaticFn(\n column,\n 'getFacetedRowModel',\n column_getFacetedRowModel,\n table,\n ).flatRows,\n ]\n },\n fn: (flatRows) => _createFacetedUniqueValues(columnId, flatRows),\n })\n }\n}\n\nfunction _createFacetedUniqueValues<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(columnId: string, flatRows: Array<Row<TFeatures, TData>>): Map<any, number> {\n const facetedUniqueValues = new Map<any, number>()\n\n for (let i = 0; i < flatRows.length; i++) {\n const values = flatRows[i]!.getUniqueValues(columnId)\n\n for (let j = 0; j < values.length; j++) {\n const value = values[j]\n if (facetedUniqueValues.has(value)) {\n facetedUniqueValues.set(\n value,\n (facetedUniqueValues.get(value) ?? 0) + 1,\n )\n } else {\n facetedUniqueValues.set(value, 1)\n }\n }\n }\n\n return facetedUniqueValues\n}\n"],"mappings":";;;;;;;;;AAYA,SAAgB,4BAMY;CAC1B,QAAQ,QAAQ,aAAa;EAC3B,MAAM,QAAQ;EACd,OAAO,UAAU;GACf,SAAS;GACT;GACA,QAAQ;GACR,gBAAgB;IACd,MAAM,SAAS,MAAM,UAAU,QAAQ;IACvC,IAAI,CAAC,QAAQ,OAAO,CAAC,MAAM,uBAAuB,CAAC,CAAC,QAAQ;IAC5D,OAAO,CACL,mBACE,QACA,sBACA,2BACA,KACF,CAAC,CAAC,QACJ;GACF;GACA,KAAK,aAAa,2BAA2B,UAAU,QAAQ;EACjE,CAAC;CACH;AACF;AAEA,SAAS,2BAGP,UAAkB,UAA0D;CAC5E,MAAM,sCAAsB,IAAI,IAAiB;CAEjD,KAAK,IAAI,IAAI,GAAG,IAAI,SAAS,QAAQ,KAAK;EACxC,MAAM,SAAS,SAAS,EAAE,CAAE,gBAAgB,QAAQ;EAEpD,KAAK,IAAI,IAAI,GAAG,IAAI,OAAO,QAAQ,KAAK;GACtC,MAAM,QAAQ,OAAO;GACrB,IAAI,oBAAoB,IAAI,KAAK,GAC/B,oBAAoB,IAClB,QACC,oBAAoB,IAAI,KAAK,KAAK,KAAK,CAC1C;QAEA,oBAAoB,IAAI,OAAO,CAAC;EAEpC;CACF;CAEA,OAAO;AACT"}
1
+ {"version":3,"file":"createFacetedUniqueValues.js","names":[],"sources":["../../../src/features/column-faceting/createFacetedUniqueValues.ts"],"sourcesContent":["import { callMemoOrStaticFn, tableMemo } from '../../utils'\nimport { column_getFacetedRowModel } from './columnFacetingFeature.utils'\nimport type { Row } from '../../types/Row'\nimport type { Table, Table_Internal } from '../../types/Table'\nimport type { TableFeatures } from '../../types/TableFeatures'\nimport type { RowData } from '../../types/type-utils'\n\n/**\n * Creates a memoized faceted unique values helper for faceted filtering.\n *\n * The returned function derives facet data from the table row model and relevant filter state so filter UIs can display available values.\n */\nexport function createFacetedUniqueValues<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(): (\n table: Table<TFeatures, TData>,\n columnId: string,\n) => () => Map<any, number> {\n return (_table, columnId) => {\n const table = _table as unknown as Table_Internal<TFeatures, TData>\n return tableMemo({\n feature: 'columnFacetingFeature',\n table,\n fnName: 'table.getFacetedUniqueValues',\n memoDeps: () => {\n const column = table.getColumn(columnId)\n if (!column) return [table.getPreFilteredRowModel().flatRows]\n return [\n callMemoOrStaticFn(\n column,\n 'getFacetedRowModel',\n column_getFacetedRowModel,\n table,\n ).flatRows,\n ]\n },\n fn: (flatRows) => _createFacetedUniqueValues(columnId, flatRows),\n })\n }\n}\n\nfunction _createFacetedUniqueValues<\n TFeatures extends TableFeatures,\n TData extends RowData = any,\n>(columnId: string, flatRows: Array<Row<TFeatures, TData>>): Map<any, number> {\n const facetedUniqueValues = new Map<any, number>()\n\n for (let i = 0; i < flatRows.length; i++) {\n const values = flatRows[i]!.getUniqueValues(columnId)\n\n for (let j = 0; j < values.length; j++) {\n const value = values[j]\n const previousValue = facetedUniqueValues.get(value)\n facetedUniqueValues.set(\n value,\n previousValue === undefined ? 1 : previousValue + 1,\n )\n }\n }\n\n return facetedUniqueValues\n}\n"],"mappings":";;;;;;;;;AAYA,SAAgB,4BAMY;CAC1B,QAAQ,QAAQ,aAAa;EAC3B,MAAM,QAAQ;EACd,OAAO,UAAU;GACf,SAAS;GACT;GACA,QAAQ;GACR,gBAAgB;IACd,MAAM,SAAS,MAAM,UAAU,QAAQ;IACvC,IAAI,CAAC,QAAQ,OAAO,CAAC,MAAM,uBAAuB,CAAC,CAAC,QAAQ;IAC5D,OAAO,CACL,mBACE,QACA,sBACA,2BACA,KACF,CAAC,CAAC,QACJ;GACF;GACA,KAAK,aAAa,2BAA2B,UAAU,QAAQ;EACjE,CAAC;CACH;AACF;AAEA,SAAS,2BAGP,UAAkB,UAA0D;CAC5E,MAAM,sCAAsB,IAAI,IAAiB;CAEjD,KAAK,IAAI,IAAI,GAAG,IAAI,SAAS,QAAQ,KAAK;EACxC,MAAM,SAAS,SAAS,EAAE,CAAE,gBAAgB,QAAQ;EAEpD,KAAK,IAAI,IAAI,GAAG,IAAI,OAAO,QAAQ,KAAK;GACtC,MAAM,QAAQ,OAAO;GACrB,MAAM,gBAAgB,oBAAoB,IAAI,KAAK;GACnD,oBAAoB,IAClB,OACA,kBAAkB,SAAY,IAAI,gBAAgB,CACpD;EACF;CACF;CAEA,OAAO;AACT"}
@@ -26,7 +26,8 @@ const columnOrderingFeature = {
26
26
  (_column$table$atoms$c = column.table.atoms.columnOrder) === null || _column$table$atoms$c === void 0 ? void 0 : _column$table$atoms$c.get(),
27
27
  (_column$table$atoms$c2 = column.table.atoms.columnPinning) === null || _column$table$atoms$c2 === void 0 ? void 0 : _column$table$atoms$c2.get(),
28
28
  (_column$table$atoms$g = column.table.atoms.grouping) === null || _column$table$atoms$g === void 0 ? void 0 : _column$table$atoms$g.get(),
29
- (_column$table$atoms$c3 = column.table.atoms.columnVisibility) === null || _column$table$atoms$c3 === void 0 ? void 0 : _column$table$atoms$c3.get()
29
+ (_column$table$atoms$c3 = column.table.atoms.columnVisibility) === null || _column$table$atoms$c3 === void 0 ? void 0 : _column$table$atoms$c3.get(),
30
+ column.table.options.groupedColumnMode
30
31
  ];
31
32
  }
32
33
  },
@@ -1 +1 @@
1
- {"version":3,"file":"columnOrderingFeature.cjs","names":["getDefaultColumnOrderState","makeStateUpdater","column_getIndex","column_getIsFirstColumn","column_getIsLastColumn","table_setColumnOrder","table_resetColumnOrder","table_getOrderColumnsFn"],"sources":["../../../src/features/column-ordering/columnOrderingFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n makeStateUpdater,\n} from '../../utils'\nimport {\n column_getIndex,\n column_getIsFirstColumn,\n column_getIsLastColumn,\n getDefaultColumnOrderState,\n table_getOrderColumnsFn,\n table_resetColumnOrder,\n table_setColumnOrder,\n} from './columnOrderingFeature.utils'\nimport type { TableFeature } from '../../types/TableFeatures'\n\n/**\n * Feature that adds column ordering state and APIs for ordering leaf columns.\n */\nexport const columnOrderingFeature: TableFeature = {\n getInitialState: (initialState) => {\n return {\n columnOrder: getDefaultColumnOrderState(),\n ...initialState,\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnOrderChange: makeStateUpdater('columnOrder', table),\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnOrderingFeature', prototype, table, {\n column_getIndex: {\n fn: (column, position) => column_getIndex(column, position),\n memoDeps: (column, position) => [\n position,\n column.table.atoms.columnOrder?.get(),\n column.table.atoms.columnPinning?.get(),\n column.table.atoms.grouping?.get(),\n column.table.atoms.columnVisibility?.get(),\n ],\n },\n column_getIsFirstColumn: {\n fn: (column, position) => column_getIsFirstColumn(column, position),\n },\n column_getIsLastColumn: {\n fn: (column, position) => column_getIsLastColumn(column, position),\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnOrderingFeature', table, {\n table_setColumnOrder: {\n fn: (updater) => table_setColumnOrder(table, updater),\n },\n table_resetColumnOrder: {\n fn: (defaultState) => table_resetColumnOrder(table, defaultState),\n },\n table_getOrderColumnsFn: {\n fn: () => table_getOrderColumnsFn(table),\n memoDeps: () => [\n table.atoms.columnOrder?.get(),\n table.atoms.grouping?.get(),\n table.options.groupedColumnMode,\n ],\n },\n })\n },\n}\n"],"mappings":";;;;;;;AAmBA,MAAa,wBAAsC;CACjD,kBAAkB,iBAAiB;EACjC,OAAO;GACL,aAAaA,+DAA2B;GACxC,GAAG;EACL;CACF;CAEA,yBAAyB,UAAU;EACjC,OAAO,EACL,qBAAqBC,+BAAiB,eAAe,KAAK,EAC5D;CACF;CAEA,wBAAwB,WAAW,UAAU;EAC3C,kCAAoB,yBAAyB,WAAW,OAAO;GAC7D,iBAAiB;IACf,KAAK,QAAQ,aAAaC,oDAAgB,QAAQ,QAAQ;IAC1D,WAAW,QAAQ,aAAa;;;MAC9B;+BACA,OAAO,MAAM,MAAM,2FAAa,IAAI;gCACpC,OAAO,MAAM,MAAM,+FAAe,IAAI;+BACtC,OAAO,MAAM,MAAM,wFAAU,IAAI;gCACjC,OAAO,MAAM,MAAM,kGAAkB,IAAI;KAC3C;;GACF;GACA,yBAAyB,EACvB,KAAK,QAAQ,aAAaC,4DAAwB,QAAQ,QAAQ,EACpE;GACA,wBAAwB,EACtB,KAAK,QAAQ,aAAaC,2DAAuB,QAAQ,QAAQ,EACnE;EACF,CAAC;CACH;CAEA,qBAAqB,UAAU;EAC7B,8BAAgB,yBAAyB,OAAO;GAC9C,sBAAsB,EACpB,KAAK,YAAYC,yDAAqB,OAAO,OAAO,EACtD;GACA,wBAAwB,EACtB,KAAK,iBAAiBC,2DAAuB,OAAO,YAAY,EAClE;GACA,yBAAyB;IACvB,UAAUC,4DAAwB,KAAK;IACvC,gBAAgB;;;+BACd,MAAM,MAAM,2FAAa,IAAI;+BAC7B,MAAM,MAAM,wFAAU,IAAI;MAC1B,MAAM,QAAQ;KAChB;;GACF;EACF,CAAC;CACH;AACF"}
1
+ {"version":3,"file":"columnOrderingFeature.cjs","names":["getDefaultColumnOrderState","makeStateUpdater","column_getIndex","column_getIsFirstColumn","column_getIsLastColumn","table_setColumnOrder","table_resetColumnOrder","table_getOrderColumnsFn"],"sources":["../../../src/features/column-ordering/columnOrderingFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n makeStateUpdater,\n} from '../../utils'\nimport {\n column_getIndex,\n column_getIsFirstColumn,\n column_getIsLastColumn,\n getDefaultColumnOrderState,\n table_getOrderColumnsFn,\n table_resetColumnOrder,\n table_setColumnOrder,\n} from './columnOrderingFeature.utils'\nimport type { TableFeature } from '../../types/TableFeatures'\n\n/**\n * Feature that adds column ordering state and APIs for ordering leaf columns.\n */\nexport const columnOrderingFeature: TableFeature = {\n getInitialState: (initialState) => {\n return {\n columnOrder: getDefaultColumnOrderState(),\n ...initialState,\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnOrderChange: makeStateUpdater('columnOrder', table),\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnOrderingFeature', prototype, table, {\n column_getIndex: {\n fn: (column, position) => column_getIndex(column, position),\n memoDeps: (column, position) => [\n position,\n column.table.atoms.columnOrder?.get(),\n column.table.atoms.columnPinning?.get(),\n column.table.atoms.grouping?.get(),\n column.table.atoms.columnVisibility?.get(),\n column.table.options.groupedColumnMode,\n ],\n },\n column_getIsFirstColumn: {\n fn: (column, position) => column_getIsFirstColumn(column, position),\n },\n column_getIsLastColumn: {\n fn: (column, position) => column_getIsLastColumn(column, position),\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnOrderingFeature', table, {\n table_setColumnOrder: {\n fn: (updater) => table_setColumnOrder(table, updater),\n },\n table_resetColumnOrder: {\n fn: (defaultState) => table_resetColumnOrder(table, defaultState),\n },\n table_getOrderColumnsFn: {\n fn: () => table_getOrderColumnsFn(table),\n memoDeps: () => [\n table.atoms.columnOrder?.get(),\n table.atoms.grouping?.get(),\n table.options.groupedColumnMode,\n ],\n },\n })\n },\n}\n"],"mappings":";;;;;;;AAmBA,MAAa,wBAAsC;CACjD,kBAAkB,iBAAiB;EACjC,OAAO;GACL,aAAaA,+DAA2B;GACxC,GAAG;EACL;CACF;CAEA,yBAAyB,UAAU;EACjC,OAAO,EACL,qBAAqBC,+BAAiB,eAAe,KAAK,EAC5D;CACF;CAEA,wBAAwB,WAAW,UAAU;EAC3C,kCAAoB,yBAAyB,WAAW,OAAO;GAC7D,iBAAiB;IACf,KAAK,QAAQ,aAAaC,oDAAgB,QAAQ,QAAQ;IAC1D,WAAW,QAAQ,aAAa;;;MAC9B;+BACA,OAAO,MAAM,MAAM,2FAAa,IAAI;gCACpC,OAAO,MAAM,MAAM,+FAAe,IAAI;+BACtC,OAAO,MAAM,MAAM,wFAAU,IAAI;gCACjC,OAAO,MAAM,MAAM,kGAAkB,IAAI;MACzC,OAAO,MAAM,QAAQ;KACvB;;GACF;GACA,yBAAyB,EACvB,KAAK,QAAQ,aAAaC,4DAAwB,QAAQ,QAAQ,EACpE;GACA,wBAAwB,EACtB,KAAK,QAAQ,aAAaC,2DAAuB,QAAQ,QAAQ,EACnE;EACF,CAAC;CACH;CAEA,qBAAqB,UAAU;EAC7B,8BAAgB,yBAAyB,OAAO;GAC9C,sBAAsB,EACpB,KAAK,YAAYC,yDAAqB,OAAO,OAAO,EACtD;GACA,wBAAwB,EACtB,KAAK,iBAAiBC,2DAAuB,OAAO,YAAY,EAClE;GACA,yBAAyB;IACvB,UAAUC,4DAAwB,KAAK;IACvC,gBAAgB;;;+BACd,MAAM,MAAM,2FAAa,IAAI;+BAC7B,MAAM,MAAM,wFAAU,IAAI;MAC1B,MAAM,QAAQ;KAChB;;GACF;EACF,CAAC;CACH;AACF"}
@@ -26,7 +26,8 @@ const columnOrderingFeature = {
26
26
  (_column$table$atoms$c = column.table.atoms.columnOrder) === null || _column$table$atoms$c === void 0 ? void 0 : _column$table$atoms$c.get(),
27
27
  (_column$table$atoms$c2 = column.table.atoms.columnPinning) === null || _column$table$atoms$c2 === void 0 ? void 0 : _column$table$atoms$c2.get(),
28
28
  (_column$table$atoms$g = column.table.atoms.grouping) === null || _column$table$atoms$g === void 0 ? void 0 : _column$table$atoms$g.get(),
29
- (_column$table$atoms$c3 = column.table.atoms.columnVisibility) === null || _column$table$atoms$c3 === void 0 ? void 0 : _column$table$atoms$c3.get()
29
+ (_column$table$atoms$c3 = column.table.atoms.columnVisibility) === null || _column$table$atoms$c3 === void 0 ? void 0 : _column$table$atoms$c3.get(),
30
+ column.table.options.groupedColumnMode
30
31
  ];
31
32
  }
32
33
  },
@@ -1 +1 @@
1
- {"version":3,"file":"columnOrderingFeature.js","names":[],"sources":["../../../src/features/column-ordering/columnOrderingFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n makeStateUpdater,\n} from '../../utils'\nimport {\n column_getIndex,\n column_getIsFirstColumn,\n column_getIsLastColumn,\n getDefaultColumnOrderState,\n table_getOrderColumnsFn,\n table_resetColumnOrder,\n table_setColumnOrder,\n} from './columnOrderingFeature.utils'\nimport type { TableFeature } from '../../types/TableFeatures'\n\n/**\n * Feature that adds column ordering state and APIs for ordering leaf columns.\n */\nexport const columnOrderingFeature: TableFeature = {\n getInitialState: (initialState) => {\n return {\n columnOrder: getDefaultColumnOrderState(),\n ...initialState,\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnOrderChange: makeStateUpdater('columnOrder', table),\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnOrderingFeature', prototype, table, {\n column_getIndex: {\n fn: (column, position) => column_getIndex(column, position),\n memoDeps: (column, position) => [\n position,\n column.table.atoms.columnOrder?.get(),\n column.table.atoms.columnPinning?.get(),\n column.table.atoms.grouping?.get(),\n column.table.atoms.columnVisibility?.get(),\n ],\n },\n column_getIsFirstColumn: {\n fn: (column, position) => column_getIsFirstColumn(column, position),\n },\n column_getIsLastColumn: {\n fn: (column, position) => column_getIsLastColumn(column, position),\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnOrderingFeature', table, {\n table_setColumnOrder: {\n fn: (updater) => table_setColumnOrder(table, updater),\n },\n table_resetColumnOrder: {\n fn: (defaultState) => table_resetColumnOrder(table, defaultState),\n },\n table_getOrderColumnsFn: {\n fn: () => table_getOrderColumnsFn(table),\n memoDeps: () => [\n table.atoms.columnOrder?.get(),\n table.atoms.grouping?.get(),\n table.options.groupedColumnMode,\n ],\n },\n })\n },\n}\n"],"mappings":";;;;;;;AAmBA,MAAa,wBAAsC;CACjD,kBAAkB,iBAAiB;EACjC,OAAO;GACL,aAAa,2BAA2B;GACxC,GAAG;EACL;CACF;CAEA,yBAAyB,UAAU;EACjC,OAAO,EACL,qBAAqB,iBAAiB,eAAe,KAAK,EAC5D;CACF;CAEA,wBAAwB,WAAW,UAAU;EAC3C,oBAAoB,yBAAyB,WAAW,OAAO;GAC7D,iBAAiB;IACf,KAAK,QAAQ,aAAa,gBAAgB,QAAQ,QAAQ;IAC1D,WAAW,QAAQ,aAAa;;;MAC9B;+BACA,OAAO,MAAM,MAAM,2FAAa,IAAI;gCACpC,OAAO,MAAM,MAAM,+FAAe,IAAI;+BACtC,OAAO,MAAM,MAAM,wFAAU,IAAI;gCACjC,OAAO,MAAM,MAAM,kGAAkB,IAAI;KAC3C;;GACF;GACA,yBAAyB,EACvB,KAAK,QAAQ,aAAa,wBAAwB,QAAQ,QAAQ,EACpE;GACA,wBAAwB,EACtB,KAAK,QAAQ,aAAa,uBAAuB,QAAQ,QAAQ,EACnE;EACF,CAAC;CACH;CAEA,qBAAqB,UAAU;EAC7B,gBAAgB,yBAAyB,OAAO;GAC9C,sBAAsB,EACpB,KAAK,YAAY,qBAAqB,OAAO,OAAO,EACtD;GACA,wBAAwB,EACtB,KAAK,iBAAiB,uBAAuB,OAAO,YAAY,EAClE;GACA,yBAAyB;IACvB,UAAU,wBAAwB,KAAK;IACvC,gBAAgB;;;+BACd,MAAM,MAAM,2FAAa,IAAI;+BAC7B,MAAM,MAAM,wFAAU,IAAI;MAC1B,MAAM,QAAQ;KAChB;;GACF;EACF,CAAC;CACH;AACF"}
1
+ {"version":3,"file":"columnOrderingFeature.js","names":[],"sources":["../../../src/features/column-ordering/columnOrderingFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n makeStateUpdater,\n} from '../../utils'\nimport {\n column_getIndex,\n column_getIsFirstColumn,\n column_getIsLastColumn,\n getDefaultColumnOrderState,\n table_getOrderColumnsFn,\n table_resetColumnOrder,\n table_setColumnOrder,\n} from './columnOrderingFeature.utils'\nimport type { TableFeature } from '../../types/TableFeatures'\n\n/**\n * Feature that adds column ordering state and APIs for ordering leaf columns.\n */\nexport const columnOrderingFeature: TableFeature = {\n getInitialState: (initialState) => {\n return {\n columnOrder: getDefaultColumnOrderState(),\n ...initialState,\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnOrderChange: makeStateUpdater('columnOrder', table),\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnOrderingFeature', prototype, table, {\n column_getIndex: {\n fn: (column, position) => column_getIndex(column, position),\n memoDeps: (column, position) => [\n position,\n column.table.atoms.columnOrder?.get(),\n column.table.atoms.columnPinning?.get(),\n column.table.atoms.grouping?.get(),\n column.table.atoms.columnVisibility?.get(),\n column.table.options.groupedColumnMode,\n ],\n },\n column_getIsFirstColumn: {\n fn: (column, position) => column_getIsFirstColumn(column, position),\n },\n column_getIsLastColumn: {\n fn: (column, position) => column_getIsLastColumn(column, position),\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnOrderingFeature', table, {\n table_setColumnOrder: {\n fn: (updater) => table_setColumnOrder(table, updater),\n },\n table_resetColumnOrder: {\n fn: (defaultState) => table_resetColumnOrder(table, defaultState),\n },\n table_getOrderColumnsFn: {\n fn: () => table_getOrderColumnsFn(table),\n memoDeps: () => [\n table.atoms.columnOrder?.get(),\n table.atoms.grouping?.get(),\n table.options.groupedColumnMode,\n ],\n },\n })\n },\n}\n"],"mappings":";;;;;;;AAmBA,MAAa,wBAAsC;CACjD,kBAAkB,iBAAiB;EACjC,OAAO;GACL,aAAa,2BAA2B;GACxC,GAAG;EACL;CACF;CAEA,yBAAyB,UAAU;EACjC,OAAO,EACL,qBAAqB,iBAAiB,eAAe,KAAK,EAC5D;CACF;CAEA,wBAAwB,WAAW,UAAU;EAC3C,oBAAoB,yBAAyB,WAAW,OAAO;GAC7D,iBAAiB;IACf,KAAK,QAAQ,aAAa,gBAAgB,QAAQ,QAAQ;IAC1D,WAAW,QAAQ,aAAa;;;MAC9B;+BACA,OAAO,MAAM,MAAM,2FAAa,IAAI;gCACpC,OAAO,MAAM,MAAM,+FAAe,IAAI;+BACtC,OAAO,MAAM,MAAM,wFAAU,IAAI;gCACjC,OAAO,MAAM,MAAM,kGAAkB,IAAI;MACzC,OAAO,MAAM,QAAQ;KACvB;;GACF;GACA,yBAAyB,EACvB,KAAK,QAAQ,aAAa,wBAAwB,QAAQ,QAAQ,EACpE;GACA,wBAAwB,EACtB,KAAK,QAAQ,aAAa,uBAAuB,QAAQ,QAAQ,EACnE;EACF,CAAC;CACH;CAEA,qBAAqB,UAAU;EAC7B,gBAAgB,yBAAyB,OAAO;GAC9C,sBAAsB,EACpB,KAAK,YAAY,qBAAqB,OAAO,OAAO,EACtD;GACA,wBAAwB,EACtB,KAAK,iBAAiB,uBAAuB,OAAO,YAAY,EAClE;GACA,yBAAyB;IACvB,UAAU,wBAAwB,KAAK;IACvC,gBAAgB;;;+BACd,MAAM,MAAM,2FAAa,IAAI;+BAC7B,MAAM,MAAM,wFAAU,IAAI;MAC1B,MAAM,QAAQ;KAChB;;GACF;EACF,CAAC;CACH;AACF"}
@@ -144,33 +144,39 @@ const columnPinningFeature = {
144
144
  table_getLeftLeafColumns: {
145
145
  fn: () => require_columnPinningFeature_utils.table_getLeftLeafColumns(table),
146
146
  memoDeps: () => {
147
- var _table$atoms$columnPi4, _table$atoms$columnOr4;
147
+ var _table$atoms$columnPi4, _table$atoms$columnOr4, _table$atoms$grouping;
148
148
  return [
149
149
  table.options.columns,
150
150
  (_table$atoms$columnPi4 = table.atoms.columnPinning) === null || _table$atoms$columnPi4 === void 0 ? void 0 : _table$atoms$columnPi4.get(),
151
- (_table$atoms$columnOr4 = table.atoms.columnOrder) === null || _table$atoms$columnOr4 === void 0 ? void 0 : _table$atoms$columnOr4.get()
151
+ (_table$atoms$columnOr4 = table.atoms.columnOrder) === null || _table$atoms$columnOr4 === void 0 ? void 0 : _table$atoms$columnOr4.get(),
152
+ (_table$atoms$grouping = table.atoms.grouping) === null || _table$atoms$grouping === void 0 ? void 0 : _table$atoms$grouping.get(),
153
+ table.options.groupedColumnMode
152
154
  ];
153
155
  }
154
156
  },
155
157
  table_getRightLeafColumns: {
156
158
  fn: () => require_columnPinningFeature_utils.table_getRightLeafColumns(table),
157
159
  memoDeps: () => {
158
- var _table$atoms$columnPi5, _table$atoms$columnOr5;
160
+ var _table$atoms$columnPi5, _table$atoms$columnOr5, _table$atoms$grouping2;
159
161
  return [
160
162
  table.options.columns,
161
163
  (_table$atoms$columnPi5 = table.atoms.columnPinning) === null || _table$atoms$columnPi5 === void 0 ? void 0 : _table$atoms$columnPi5.get(),
162
- (_table$atoms$columnOr5 = table.atoms.columnOrder) === null || _table$atoms$columnOr5 === void 0 ? void 0 : _table$atoms$columnOr5.get()
164
+ (_table$atoms$columnOr5 = table.atoms.columnOrder) === null || _table$atoms$columnOr5 === void 0 ? void 0 : _table$atoms$columnOr5.get(),
165
+ (_table$atoms$grouping2 = table.atoms.grouping) === null || _table$atoms$grouping2 === void 0 ? void 0 : _table$atoms$grouping2.get(),
166
+ table.options.groupedColumnMode
163
167
  ];
164
168
  }
165
169
  },
166
170
  table_getCenterLeafColumns: {
167
171
  fn: () => require_columnPinningFeature_utils.table_getCenterLeafColumns(table),
168
172
  memoDeps: () => {
169
- var _table$atoms$columnPi6, _table$atoms$columnOr6;
173
+ var _table$atoms$columnPi6, _table$atoms$columnOr6, _table$atoms$grouping3;
170
174
  return [
171
175
  table.options.columns,
172
176
  (_table$atoms$columnPi6 = table.atoms.columnPinning) === null || _table$atoms$columnPi6 === void 0 ? void 0 : _table$atoms$columnPi6.get(),
173
- (_table$atoms$columnOr6 = table.atoms.columnOrder) === null || _table$atoms$columnOr6 === void 0 ? void 0 : _table$atoms$columnOr6.get()
177
+ (_table$atoms$columnOr6 = table.atoms.columnOrder) === null || _table$atoms$columnOr6 === void 0 ? void 0 : _table$atoms$columnOr6.get(),
178
+ (_table$atoms$grouping3 = table.atoms.grouping) === null || _table$atoms$grouping3 === void 0 ? void 0 : _table$atoms$grouping3.get(),
179
+ table.options.groupedColumnMode
174
180
  ];
175
181
  }
176
182
  },
@@ -178,36 +184,42 @@ const columnPinningFeature = {
178
184
  table_getLeftVisibleLeafColumns: {
179
185
  fn: () => require_columnPinningFeature_utils.table_getLeftVisibleLeafColumns(table),
180
186
  memoDeps: () => {
181
- var _table$atoms$columnPi7, _table$atoms$columnVi, _table$atoms$columnOr7;
187
+ var _table$atoms$columnPi7, _table$atoms$columnVi, _table$atoms$columnOr7, _table$atoms$grouping4;
182
188
  return [
183
189
  table.options.columns,
184
190
  (_table$atoms$columnPi7 = table.atoms.columnPinning) === null || _table$atoms$columnPi7 === void 0 ? void 0 : _table$atoms$columnPi7.get(),
185
191
  (_table$atoms$columnVi = table.atoms.columnVisibility) === null || _table$atoms$columnVi === void 0 ? void 0 : _table$atoms$columnVi.get(),
186
- (_table$atoms$columnOr7 = table.atoms.columnOrder) === null || _table$atoms$columnOr7 === void 0 ? void 0 : _table$atoms$columnOr7.get()
192
+ (_table$atoms$columnOr7 = table.atoms.columnOrder) === null || _table$atoms$columnOr7 === void 0 ? void 0 : _table$atoms$columnOr7.get(),
193
+ (_table$atoms$grouping4 = table.atoms.grouping) === null || _table$atoms$grouping4 === void 0 ? void 0 : _table$atoms$grouping4.get(),
194
+ table.options.groupedColumnMode
187
195
  ];
188
196
  }
189
197
  },
190
198
  table_getCenterVisibleLeafColumns: {
191
199
  fn: () => require_columnPinningFeature_utils.table_getCenterVisibleLeafColumns(table),
192
200
  memoDeps: () => {
193
- var _table$atoms$columnPi8, _table$atoms$columnVi2, _table$atoms$columnOr8;
201
+ var _table$atoms$columnPi8, _table$atoms$columnVi2, _table$atoms$columnOr8, _table$atoms$grouping5;
194
202
  return [
195
203
  table.options.columns,
196
204
  (_table$atoms$columnPi8 = table.atoms.columnPinning) === null || _table$atoms$columnPi8 === void 0 ? void 0 : _table$atoms$columnPi8.get(),
197
205
  (_table$atoms$columnVi2 = table.atoms.columnVisibility) === null || _table$atoms$columnVi2 === void 0 ? void 0 : _table$atoms$columnVi2.get(),
198
- (_table$atoms$columnOr8 = table.atoms.columnOrder) === null || _table$atoms$columnOr8 === void 0 ? void 0 : _table$atoms$columnOr8.get()
206
+ (_table$atoms$columnOr8 = table.atoms.columnOrder) === null || _table$atoms$columnOr8 === void 0 ? void 0 : _table$atoms$columnOr8.get(),
207
+ (_table$atoms$grouping5 = table.atoms.grouping) === null || _table$atoms$grouping5 === void 0 ? void 0 : _table$atoms$grouping5.get(),
208
+ table.options.groupedColumnMode
199
209
  ];
200
210
  }
201
211
  },
202
212
  table_getRightVisibleLeafColumns: {
203
213
  fn: () => require_columnPinningFeature_utils.table_getRightVisibleLeafColumns(table),
204
214
  memoDeps: () => {
205
- var _table$atoms$columnPi9, _table$atoms$columnVi3, _table$atoms$columnOr9;
215
+ var _table$atoms$columnPi9, _table$atoms$columnVi3, _table$atoms$columnOr9, _table$atoms$grouping6;
206
216
  return [
207
217
  table.options.columns,
208
218
  (_table$atoms$columnPi9 = table.atoms.columnPinning) === null || _table$atoms$columnPi9 === void 0 ? void 0 : _table$atoms$columnPi9.get(),
209
219
  (_table$atoms$columnVi3 = table.atoms.columnVisibility) === null || _table$atoms$columnVi3 === void 0 ? void 0 : _table$atoms$columnVi3.get(),
210
- (_table$atoms$columnOr9 = table.atoms.columnOrder) === null || _table$atoms$columnOr9 === void 0 ? void 0 : _table$atoms$columnOr9.get()
220
+ (_table$atoms$columnOr9 = table.atoms.columnOrder) === null || _table$atoms$columnOr9 === void 0 ? void 0 : _table$atoms$columnOr9.get(),
221
+ (_table$atoms$grouping6 = table.atoms.grouping) === null || _table$atoms$grouping6 === void 0 ? void 0 : _table$atoms$grouping6.get(),
222
+ table.options.groupedColumnMode
211
223
  ];
212
224
  }
213
225
  },