@tanstack/table-core 9.0.0-alpha.23 → 9.0.0-alpha.27

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.
package/README.md ADDED
@@ -0,0 +1,117 @@
1
+ <div align="center">
2
+ <img src="./media/header_table.png" alt="TanStack Table">
3
+ </div>
4
+
5
+ <br />
6
+
7
+ <div align="center">
8
+ <a href="https://npmjs.com/package/@tanstack/react-table" target="\_parent">
9
+ <img alt="npm downloads" src="https://img.shields.io/npm/dm/@tanstack/react-table.svg" />
10
+ </a>
11
+ <a href="https://github.com/tanstack/table" target="\_parent">
12
+ <img alt="github stars" src="https://img.shields.io/github/stars/tanstack/react-table.svg?style=social&label=Star" />
13
+ </a>
14
+ <a href="https://bundlephobia.com/result?p=@tanstack/react-table@latest" target="\_parent">
15
+ <img alt="bundle size" src="https://badgen.net/bundlephobia/minzip/@tanstack/react-table@latest" />
16
+ </a>
17
+ </div>
18
+
19
+ <div align="center">
20
+ <a href="#badge">
21
+ <img alt="semantic-release" src="https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg">
22
+ </a>
23
+ <a href="https://bestofjs.org/projects/tanstack-table"><img alt="Best of JS" src="https://img.shields.io/endpoint?url=https://bestofjs-serverless.now.sh/api/project-badge?fullName=TanStack%2Ftable%26since=daily" /></a>
24
+ <a href="https://twitter.com/tan_stack"><img src="https://img.shields.io/twitter/follow/tan_stack.svg?style=social" alt="Follow @TanStack"/></a>
25
+ </div>
26
+
27
+ ### [Become a Sponsor!](https://github.com/sponsors/tannerlinsley/)
28
+
29
+ </div>
30
+
31
+ # TanStack Table
32
+
33
+ > [!NOTE]
34
+ > You may know TanStack Table by the adapter names:
35
+ >
36
+ > - [Angular Table](https://tanstack.com/table/alpha/docs/framework/angular/angular-table)
37
+ > - [Lit Table](https://tanstack.com/table/alpha/docs/framework/lit/lit-table)
38
+ > - [React Table](https://tanstack.com/table/alpha/docs/framework/react/react-table)
39
+ > - [Solid Table](https://tanstack.com/table/alpha/docs/framework/solid/solid-table)
40
+ > - [Svelte Table](https://tanstack.com/table/alpha/docs/framework/svelte/svelte-table)
41
+ > - [Vue Table](https://tanstack.com/table/alpha/docs/framework/vue/vue-table)
42
+
43
+ A headless table library for building powerful datagrids with full control over markup, styles, and behavior.
44
+
45
+ - Framework‑agnostic core with bindings for React, Vue & Solid
46
+ - 100% customizable — bring your own UI, components, and styles
47
+ - Sorting, filtering, grouping, aggregation & row selection
48
+ - Lightweight, virtualizable & server‑side friendly
49
+
50
+ ### <a href="https://tanstack.com/table">Read the Docs →</a>
51
+
52
+ ## Get Involved
53
+
54
+ - We welcome issues and pull requests!
55
+ - Participate in [GitHub discussions](https://github.com/TanStack/table/discussions)
56
+ - Chat with the community on [Discord](https://discord.com/invite/WrRKjPJ)
57
+ - See [CONTRIBUTING.md](./CONTRIBUTING.md) for setup instructions
58
+
59
+ ## Partners
60
+
61
+ <table align="center">
62
+ <tr>
63
+ <td>
64
+ <a href="https://www.coderabbit.ai/?via=tanstack&dub_id=aCcEEdAOqqutX6OS">
65
+ <picture>
66
+ <source media="(prefers-color-scheme: dark)" srcset="https://tanstack.com/assets/coderabbit-dark-CMcuvjEy.svg" height="40" />
67
+ <source media="(prefers-color-scheme: light)" srcset="https://tanstack.com/assets/coderabbit-light-DVMJ2jHi.svg" height="40" />
68
+ <img src="https://tanstack.com/assets/coderabbit-light-DVMJ2jHi.svg" height="40" alt="CodeRabbit" />
69
+ </picture>
70
+ </a>
71
+ </td>
72
+ <td padding="20">
73
+ <a href="https://www.cloudflare.com?utm_source=tanstack">
74
+ <picture>
75
+ <source media="(prefers-color-scheme: dark)" srcset="https://tanstack.com/assets/cloudflare-white-DQDB7UaL.svg" height="60" />
76
+ <source media="(prefers-color-scheme: light)" srcset="https://tanstack.com/assets/cloudflare-black-CPufaW0B.svg" height="60" />
77
+ <img src="https://tanstack.com/assets/cloudflare-black-CPufaW0B.svg" height="60" alt="Cloudflare" />
78
+ </picture>
79
+ </a>
80
+ </td>
81
+ <td>
82
+ <a href="https://ag-grid.com/react-data-grid/?utm_source=reacttable&utm_campaign=githubreacttable" style="display: flex; align-items: center; border: none;">
83
+ <picture>
84
+ <source media="(prefers-color-scheme: dark)" srcset="./media/ag-grid-dark.svg" height="40" />
85
+ <source media="(prefers-color-scheme: light)" srcset="./media/ag-grid-light.svg" height="40" />
86
+ <img src="https://raw.githubusercontent.com/tannerlinsley/files/master/partners/ag-grid.svg" height="60" alt="AG Grid" />
87
+ </picture>
88
+ </a>
89
+ </td>
90
+ </tr>
91
+ </table>
92
+
93
+ <div align="center">
94
+ <img src="./media/partner_logo.svg" alt="Table & you?" height="65">
95
+ <p>
96
+ We're looking for TanStack Table Partners to join our mission! Partner with us to push the boundaries of TanStack Table and build amazing things together.
97
+ </p>
98
+ <a href="mailto:partners@tanstack.com?subject=TanStack Table Partnership"><b>LET'S CHAT</b></a>
99
+ </div>
100
+
101
+ ## Explore the TanStack Ecosystem
102
+
103
+ - <a href="https://github.com/tanstack/config"><b>TanStack Config</b></a> – Tooling for JS/TS packages
104
+ - <a href="https://github.com/tanstack/db"><b>TanStack DB</b></a> – Reactive sync client store
105
+ - <a href="https://github.com/tanstack/devtools"><b>TanStack DevTools</b></a> – Unified devtools panel
106
+ - <a href="https://github.com/tanstack/form"><b>TanStack Form</b></a> – Type‑safe form state
107
+ - <a href="https://github.com/tanstack/pacer"><b>TanStack Pacer</b></a> – Debouncing, throttling, batching <br/>
108
+ - <a href="https://github.com/tanstack/query"><b>TanStack Query</b></a> – Async state & caching
109
+ - <a href="https://github.com/tanstack/ranger"><b>TanStack Ranger</b></a> – Range & slider primitives
110
+ - <a href="https://github.com/tanstack/router"><b>TanStack Router</b></a> – Type‑safe routing, caching & URL state
111
+ - <a href="https://github.com/tanstack/router"><b>TanStack Start</b></a> – Full‑stack SSR & streaming
112
+ - <a href="https://github.com/tanstack/store"><b>TanStack Store</b></a> – Reactive data store
113
+ - <a href="https://github.com/tanstack/virtual"><b>TanStack Virtual</b></a> – Virtualized rendering
114
+
115
+ … and more at <a href="https://tanstack.com"><b>TanStack.com »</b></a>
116
+
117
+ <!-- USE THE FORCE LUKE -->
@@ -68,7 +68,8 @@ function constructColumnPinningFeature() {
68
68
  return [
69
69
  table.getAllColumns(),
70
70
  require_utils.callMemoOrStaticFn(table, "getVisibleLeafColumns", require_columnVisibilityFeature_utils.table_getVisibleLeafColumns),
71
- (_table$store$state$co = table.store.state.columnPinning) === null || _table$store$state$co === void 0 ? void 0 : _table$store$state$co.left
71
+ (_table$store$state$co = table.store.state.columnPinning) === null || _table$store$state$co === void 0 ? void 0 : _table$store$state$co.left,
72
+ table.store.state.columnOrder
72
73
  ];
73
74
  }
74
75
  },
@@ -77,7 +78,8 @@ function constructColumnPinningFeature() {
77
78
  memoDeps: () => [
78
79
  table.getAllColumns(),
79
80
  require_utils.callMemoOrStaticFn(table, "getVisibleLeafColumns", require_columnVisibilityFeature_utils.table_getVisibleLeafColumns),
80
- table.store.state.columnPinning
81
+ table.store.state.columnPinning,
82
+ table.store.state.columnOrder
81
83
  ]
82
84
  },
83
85
  table_getRightHeaderGroups: {
@@ -87,7 +89,8 @@ function constructColumnPinningFeature() {
87
89
  return [
88
90
  table.getAllColumns(),
89
91
  require_utils.callMemoOrStaticFn(table, "getVisibleLeafColumns", require_columnVisibilityFeature_utils.table_getVisibleLeafColumns),
90
- (_table$store$state$co2 = table.store.state.columnPinning) === null || _table$store$state$co2 === void 0 ? void 0 : _table$store$state$co2.right
92
+ (_table$store$state$co2 = table.store.state.columnPinning) === null || _table$store$state$co2 === void 0 ? void 0 : _table$store$state$co2.right,
93
+ table.store.state.columnOrder
91
94
  ];
92
95
  }
93
96
  },
@@ -1 +1 @@
1
- {"version":3,"file":"columnPinningFeature.cjs","names":["getDefaultColumnPinningState","makeStateUpdater","column_pin","column_getCanPin","column_getPinnedIndex","column_getIsPinned","row_getCenterVisibleCells","row_getLeftVisibleCells","row_getRightVisibleCells","table_setColumnPinning","table_resetColumnPinning","table_getIsSomeColumnsPinned","table_getLeftHeaderGroups","callMemoOrStaticFn","table_getVisibleLeafColumns","table_getCenterHeaderGroups","table_getRightHeaderGroups","table_getLeftFooterGroups","table_getCenterFooterGroups","table_getRightFooterGroups","table_getLeftFlatHeaders","table_getRightFlatHeaders","table_getCenterFlatHeaders","table_getLeftLeafHeaders","table_getRightLeafHeaders","table_getCenterLeafHeaders","table_getLeftLeafColumns","table_getRightLeafColumns","table_getCenterLeafColumns","table_getLeftVisibleLeafColumns","table_getCenterVisibleLeafColumns","table_getRightVisibleLeafColumns"],"sources":["../../../src/features/column-pinning/columnPinningFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n callMemoOrStaticFn,\n makeStateUpdater,\n} from '../../utils'\nimport { table_getVisibleLeafColumns } from '../column-visibility/columnVisibilityFeature.utils'\nimport {\n column_getCanPin,\n column_getIsPinned,\n column_getPinnedIndex,\n column_pin,\n getDefaultColumnPinningState,\n row_getCenterVisibleCells,\n row_getLeftVisibleCells,\n row_getRightVisibleCells,\n table_getCenterFlatHeaders,\n table_getCenterFooterGroups,\n table_getCenterHeaderGroups,\n table_getCenterLeafColumns,\n table_getCenterLeafHeaders,\n table_getCenterVisibleLeafColumns,\n table_getIsSomeColumnsPinned,\n table_getLeftFlatHeaders,\n table_getLeftFooterGroups,\n table_getLeftHeaderGroups,\n table_getLeftLeafColumns,\n table_getLeftLeafHeaders,\n table_getLeftVisibleLeafColumns,\n table_getRightFlatHeaders,\n table_getRightFooterGroups,\n table_getRightHeaderGroups,\n table_getRightLeafColumns,\n table_getRightLeafHeaders,\n table_getRightVisibleLeafColumns,\n table_resetColumnPinning,\n table_setColumnPinning,\n} from './columnPinningFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\n// import type {\n// ColumnDef_ColumnPinning,\n// Column_ColumnPinning,\n// Row_ColumnPinning,\n// TableOptions_ColumnPinning,\n// TableState_ColumnPinning,\n// Table_ColumnPinning,\n// } from './columnPinningFeature.types'\n\ninterface ColumnPinningFeatureConstructors<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> {\n // Column: Column_ColumnPinning\n // ColumnDef: ColumnDef_ColumnPinning\n // Row: Row_ColumnPinning<TFeatures, TData>\n // Table: Table_ColumnPinning<TFeatures, TData>\n // TableOptions: TableOptions_ColumnPinning\n // TableState: TableState_ColumnPinning\n}\n\nexport function constructColumnPinningFeature<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): TableFeature<ColumnPinningFeatureConstructors<TFeatures, TData>> {\n return {\n getInitialState: (initialState) => {\n return {\n columnPinning: {\n ...getDefaultColumnPinningState(),\n ...initialState.columnPinning,\n },\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnPinningChange: makeStateUpdater('columnPinning', table),\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnPinningFeature', prototype, table, {\n column_pin: {\n fn: (column, position) => column_pin(column, position),\n },\n column_getCanPin: {\n fn: (column) => column_getCanPin(column),\n },\n column_getPinnedIndex: {\n fn: (column) => column_getPinnedIndex(column),\n },\n column_getIsPinned: {\n fn: (column) => column_getIsPinned(column),\n },\n })\n },\n\n assignRowPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnPinningFeature', prototype, table, {\n row_getCenterVisibleCells: {\n fn: (row) => row_getCenterVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.store.state.columnPinning,\n row.table.store.state.columnVisibility,\n ],\n },\n row_getLeftVisibleCells: {\n fn: (row) => row_getLeftVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.store.state.columnPinning?.left,\n row.table.store.state.columnVisibility,\n ],\n },\n row_getRightVisibleCells: {\n fn: (row) => row_getRightVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.store.state.columnPinning?.right,\n row.table.store.state.columnVisibility,\n ],\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnPinningFeature', table, {\n table_setColumnPinning: {\n fn: (updater) => table_setColumnPinning(table, updater),\n },\n table_resetColumnPinning: {\n fn: (defaultState) => table_resetColumnPinning(table, defaultState),\n },\n table_getIsSomeColumnsPinned: {\n fn: (position) => table_getIsSomeColumnsPinned(table, position),\n },\n // header groups\n table_getLeftHeaderGroups: {\n fn: () => table_getLeftHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.store.state.columnPinning?.left,\n ],\n },\n table_getCenterHeaderGroups: {\n fn: () => table_getCenterHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.store.state.columnPinning,\n ],\n },\n table_getRightHeaderGroups: {\n fn: () => table_getRightHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.store.state.columnPinning?.right,\n ],\n },\n // footer groups\n table_getLeftFooterGroups: {\n fn: () => table_getLeftFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getCenterFooterGroups: {\n fn: () => table_getCenterFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n table_getRightFooterGroups: {\n fn: () => table_getRightFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n // flat headers\n table_getLeftFlatHeaders: {\n fn: () => table_getLeftFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getRightFlatHeaders: {\n fn: () => table_getRightFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n table_getCenterFlatHeaders: {\n fn: () => table_getCenterFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n // leaf headers\n table_getLeftLeafHeaders: {\n fn: () => table_getLeftLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getRightLeafHeaders: {\n fn: () => table_getRightLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n table_getCenterLeafHeaders: {\n fn: () => table_getCenterLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n // leaf columns\n table_getLeftLeafColumns: {\n fn: () => table_getLeftLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n ],\n },\n table_getRightLeafColumns: {\n fn: () => table_getRightLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n ],\n },\n table_getCenterLeafColumns: {\n fn: () => table_getCenterLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n ],\n },\n // visible leaf columns\n table_getLeftVisibleLeafColumns: {\n fn: () => table_getLeftVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n table.store.state.columnVisibility,\n ],\n },\n table_getCenterVisibleLeafColumns: {\n fn: () => table_getCenterVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n table.store.state.columnVisibility,\n ],\n },\n table_getRightVisibleLeafColumns: {\n fn: () => table_getRightVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n table.store.state.columnVisibility,\n ],\n },\n })\n },\n }\n}\n\n/**\n * The Column Pinning feature adds column pinning state and APIs to the table, row, and column objects.\n */\nexport const columnPinningFeature = constructColumnPinningFeature()\n"],"mappings":"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"}
1
+ {"version":3,"file":"columnPinningFeature.cjs","names":["getDefaultColumnPinningState","makeStateUpdater","column_pin","column_getCanPin","column_getPinnedIndex","column_getIsPinned","row_getCenterVisibleCells","row_getLeftVisibleCells","row_getRightVisibleCells","table_setColumnPinning","table_resetColumnPinning","table_getIsSomeColumnsPinned","table_getLeftHeaderGroups","callMemoOrStaticFn","table_getVisibleLeafColumns","table_getCenterHeaderGroups","table_getRightHeaderGroups","table_getLeftFooterGroups","table_getCenterFooterGroups","table_getRightFooterGroups","table_getLeftFlatHeaders","table_getRightFlatHeaders","table_getCenterFlatHeaders","table_getLeftLeafHeaders","table_getRightLeafHeaders","table_getCenterLeafHeaders","table_getLeftLeafColumns","table_getRightLeafColumns","table_getCenterLeafColumns","table_getLeftVisibleLeafColumns","table_getCenterVisibleLeafColumns","table_getRightVisibleLeafColumns"],"sources":["../../../src/features/column-pinning/columnPinningFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n callMemoOrStaticFn,\n makeStateUpdater,\n} from '../../utils'\nimport { table_getVisibleLeafColumns } from '../column-visibility/columnVisibilityFeature.utils'\nimport {\n column_getCanPin,\n column_getIsPinned,\n column_getPinnedIndex,\n column_pin,\n getDefaultColumnPinningState,\n row_getCenterVisibleCells,\n row_getLeftVisibleCells,\n row_getRightVisibleCells,\n table_getCenterFlatHeaders,\n table_getCenterFooterGroups,\n table_getCenterHeaderGroups,\n table_getCenterLeafColumns,\n table_getCenterLeafHeaders,\n table_getCenterVisibleLeafColumns,\n table_getIsSomeColumnsPinned,\n table_getLeftFlatHeaders,\n table_getLeftFooterGroups,\n table_getLeftHeaderGroups,\n table_getLeftLeafColumns,\n table_getLeftLeafHeaders,\n table_getLeftVisibleLeafColumns,\n table_getRightFlatHeaders,\n table_getRightFooterGroups,\n table_getRightHeaderGroups,\n table_getRightLeafColumns,\n table_getRightLeafHeaders,\n table_getRightVisibleLeafColumns,\n table_resetColumnPinning,\n table_setColumnPinning,\n} from './columnPinningFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\n// import type {\n// ColumnDef_ColumnPinning,\n// Column_ColumnPinning,\n// Row_ColumnPinning,\n// TableOptions_ColumnPinning,\n// TableState_ColumnPinning,\n// Table_ColumnPinning,\n// } from './columnPinningFeature.types'\n\ninterface ColumnPinningFeatureConstructors<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> {\n // Column: Column_ColumnPinning\n // ColumnDef: ColumnDef_ColumnPinning\n // Row: Row_ColumnPinning<TFeatures, TData>\n // Table: Table_ColumnPinning<TFeatures, TData>\n // TableOptions: TableOptions_ColumnPinning\n // TableState: TableState_ColumnPinning\n}\n\nexport function constructColumnPinningFeature<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): TableFeature<ColumnPinningFeatureConstructors<TFeatures, TData>> {\n return {\n getInitialState: (initialState) => {\n return {\n columnPinning: {\n ...getDefaultColumnPinningState(),\n ...initialState.columnPinning,\n },\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnPinningChange: makeStateUpdater('columnPinning', table),\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnPinningFeature', prototype, table, {\n column_pin: {\n fn: (column, position) => column_pin(column, position),\n },\n column_getCanPin: {\n fn: (column) => column_getCanPin(column),\n },\n column_getPinnedIndex: {\n fn: (column) => column_getPinnedIndex(column),\n },\n column_getIsPinned: {\n fn: (column) => column_getIsPinned(column),\n },\n })\n },\n\n assignRowPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnPinningFeature', prototype, table, {\n row_getCenterVisibleCells: {\n fn: (row) => row_getCenterVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.store.state.columnPinning,\n row.table.store.state.columnVisibility,\n ],\n },\n row_getLeftVisibleCells: {\n fn: (row) => row_getLeftVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.store.state.columnPinning?.left,\n row.table.store.state.columnVisibility,\n ],\n },\n row_getRightVisibleCells: {\n fn: (row) => row_getRightVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.store.state.columnPinning?.right,\n row.table.store.state.columnVisibility,\n ],\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnPinningFeature', table, {\n table_setColumnPinning: {\n fn: (updater) => table_setColumnPinning(table, updater),\n },\n table_resetColumnPinning: {\n fn: (defaultState) => table_resetColumnPinning(table, defaultState),\n },\n table_getIsSomeColumnsPinned: {\n fn: (position) => table_getIsSomeColumnsPinned(table, position),\n },\n // header groups\n table_getLeftHeaderGroups: {\n fn: () => table_getLeftHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.store.state.columnPinning?.left,\n table.store.state.columnOrder,\n ],\n },\n table_getCenterHeaderGroups: {\n fn: () => table_getCenterHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.store.state.columnPinning,\n table.store.state.columnOrder,\n ],\n },\n table_getRightHeaderGroups: {\n fn: () => table_getRightHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.store.state.columnPinning?.right,\n table.store.state.columnOrder,\n ],\n },\n // footer groups\n table_getLeftFooterGroups: {\n fn: () => table_getLeftFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getCenterFooterGroups: {\n fn: () => table_getCenterFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n table_getRightFooterGroups: {\n fn: () => table_getRightFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n // flat headers\n table_getLeftFlatHeaders: {\n fn: () => table_getLeftFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getRightFlatHeaders: {\n fn: () => table_getRightFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n table_getCenterFlatHeaders: {\n fn: () => table_getCenterFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n // leaf headers\n table_getLeftLeafHeaders: {\n fn: () => table_getLeftLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getRightLeafHeaders: {\n fn: () => table_getRightLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n table_getCenterLeafHeaders: {\n fn: () => table_getCenterLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n // leaf columns\n table_getLeftLeafColumns: {\n fn: () => table_getLeftLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n ],\n },\n table_getRightLeafColumns: {\n fn: () => table_getRightLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n ],\n },\n table_getCenterLeafColumns: {\n fn: () => table_getCenterLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n ],\n },\n // visible leaf columns\n table_getLeftVisibleLeafColumns: {\n fn: () => table_getLeftVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n table.store.state.columnVisibility,\n ],\n },\n table_getCenterVisibleLeafColumns: {\n fn: () => table_getCenterVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n table.store.state.columnVisibility,\n ],\n },\n table_getRightVisibleLeafColumns: {\n fn: () => table_getRightVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n table.store.state.columnVisibility,\n ],\n },\n })\n },\n }\n}\n\n/**\n * The Column Pinning feature adds column pinning state and APIs to the table, row, and column objects.\n */\nexport const columnPinningFeature = constructColumnPinningFeature()\n"],"mappings":"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"}
@@ -68,7 +68,8 @@ function constructColumnPinningFeature() {
68
68
  return [
69
69
  table.getAllColumns(),
70
70
  callMemoOrStaticFn(table, "getVisibleLeafColumns", table_getVisibleLeafColumns),
71
- (_table$store$state$co = table.store.state.columnPinning) === null || _table$store$state$co === void 0 ? void 0 : _table$store$state$co.left
71
+ (_table$store$state$co = table.store.state.columnPinning) === null || _table$store$state$co === void 0 ? void 0 : _table$store$state$co.left,
72
+ table.store.state.columnOrder
72
73
  ];
73
74
  }
74
75
  },
@@ -77,7 +78,8 @@ function constructColumnPinningFeature() {
77
78
  memoDeps: () => [
78
79
  table.getAllColumns(),
79
80
  callMemoOrStaticFn(table, "getVisibleLeafColumns", table_getVisibleLeafColumns),
80
- table.store.state.columnPinning
81
+ table.store.state.columnPinning,
82
+ table.store.state.columnOrder
81
83
  ]
82
84
  },
83
85
  table_getRightHeaderGroups: {
@@ -87,7 +89,8 @@ function constructColumnPinningFeature() {
87
89
  return [
88
90
  table.getAllColumns(),
89
91
  callMemoOrStaticFn(table, "getVisibleLeafColumns", table_getVisibleLeafColumns),
90
- (_table$store$state$co2 = table.store.state.columnPinning) === null || _table$store$state$co2 === void 0 ? void 0 : _table$store$state$co2.right
92
+ (_table$store$state$co2 = table.store.state.columnPinning) === null || _table$store$state$co2 === void 0 ? void 0 : _table$store$state$co2.right,
93
+ table.store.state.columnOrder
91
94
  ];
92
95
  }
93
96
  },
@@ -1 +1 @@
1
- {"version":3,"file":"columnPinningFeature.js","names":[],"sources":["../../../src/features/column-pinning/columnPinningFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n callMemoOrStaticFn,\n makeStateUpdater,\n} from '../../utils'\nimport { table_getVisibleLeafColumns } from '../column-visibility/columnVisibilityFeature.utils'\nimport {\n column_getCanPin,\n column_getIsPinned,\n column_getPinnedIndex,\n column_pin,\n getDefaultColumnPinningState,\n row_getCenterVisibleCells,\n row_getLeftVisibleCells,\n row_getRightVisibleCells,\n table_getCenterFlatHeaders,\n table_getCenterFooterGroups,\n table_getCenterHeaderGroups,\n table_getCenterLeafColumns,\n table_getCenterLeafHeaders,\n table_getCenterVisibleLeafColumns,\n table_getIsSomeColumnsPinned,\n table_getLeftFlatHeaders,\n table_getLeftFooterGroups,\n table_getLeftHeaderGroups,\n table_getLeftLeafColumns,\n table_getLeftLeafHeaders,\n table_getLeftVisibleLeafColumns,\n table_getRightFlatHeaders,\n table_getRightFooterGroups,\n table_getRightHeaderGroups,\n table_getRightLeafColumns,\n table_getRightLeafHeaders,\n table_getRightVisibleLeafColumns,\n table_resetColumnPinning,\n table_setColumnPinning,\n} from './columnPinningFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\n// import type {\n// ColumnDef_ColumnPinning,\n// Column_ColumnPinning,\n// Row_ColumnPinning,\n// TableOptions_ColumnPinning,\n// TableState_ColumnPinning,\n// Table_ColumnPinning,\n// } from './columnPinningFeature.types'\n\ninterface ColumnPinningFeatureConstructors<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> {\n // Column: Column_ColumnPinning\n // ColumnDef: ColumnDef_ColumnPinning\n // Row: Row_ColumnPinning<TFeatures, TData>\n // Table: Table_ColumnPinning<TFeatures, TData>\n // TableOptions: TableOptions_ColumnPinning\n // TableState: TableState_ColumnPinning\n}\n\nexport function constructColumnPinningFeature<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): TableFeature<ColumnPinningFeatureConstructors<TFeatures, TData>> {\n return {\n getInitialState: (initialState) => {\n return {\n columnPinning: {\n ...getDefaultColumnPinningState(),\n ...initialState.columnPinning,\n },\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnPinningChange: makeStateUpdater('columnPinning', table),\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnPinningFeature', prototype, table, {\n column_pin: {\n fn: (column, position) => column_pin(column, position),\n },\n column_getCanPin: {\n fn: (column) => column_getCanPin(column),\n },\n column_getPinnedIndex: {\n fn: (column) => column_getPinnedIndex(column),\n },\n column_getIsPinned: {\n fn: (column) => column_getIsPinned(column),\n },\n })\n },\n\n assignRowPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnPinningFeature', prototype, table, {\n row_getCenterVisibleCells: {\n fn: (row) => row_getCenterVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.store.state.columnPinning,\n row.table.store.state.columnVisibility,\n ],\n },\n row_getLeftVisibleCells: {\n fn: (row) => row_getLeftVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.store.state.columnPinning?.left,\n row.table.store.state.columnVisibility,\n ],\n },\n row_getRightVisibleCells: {\n fn: (row) => row_getRightVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.store.state.columnPinning?.right,\n row.table.store.state.columnVisibility,\n ],\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnPinningFeature', table, {\n table_setColumnPinning: {\n fn: (updater) => table_setColumnPinning(table, updater),\n },\n table_resetColumnPinning: {\n fn: (defaultState) => table_resetColumnPinning(table, defaultState),\n },\n table_getIsSomeColumnsPinned: {\n fn: (position) => table_getIsSomeColumnsPinned(table, position),\n },\n // header groups\n table_getLeftHeaderGroups: {\n fn: () => table_getLeftHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.store.state.columnPinning?.left,\n ],\n },\n table_getCenterHeaderGroups: {\n fn: () => table_getCenterHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.store.state.columnPinning,\n ],\n },\n table_getRightHeaderGroups: {\n fn: () => table_getRightHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.store.state.columnPinning?.right,\n ],\n },\n // footer groups\n table_getLeftFooterGroups: {\n fn: () => table_getLeftFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getCenterFooterGroups: {\n fn: () => table_getCenterFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n table_getRightFooterGroups: {\n fn: () => table_getRightFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n // flat headers\n table_getLeftFlatHeaders: {\n fn: () => table_getLeftFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getRightFlatHeaders: {\n fn: () => table_getRightFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n table_getCenterFlatHeaders: {\n fn: () => table_getCenterFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n // leaf headers\n table_getLeftLeafHeaders: {\n fn: () => table_getLeftLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getRightLeafHeaders: {\n fn: () => table_getRightLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n table_getCenterLeafHeaders: {\n fn: () => table_getCenterLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n // leaf columns\n table_getLeftLeafColumns: {\n fn: () => table_getLeftLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n ],\n },\n table_getRightLeafColumns: {\n fn: () => table_getRightLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n ],\n },\n table_getCenterLeafColumns: {\n fn: () => table_getCenterLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n ],\n },\n // visible leaf columns\n table_getLeftVisibleLeafColumns: {\n fn: () => table_getLeftVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n table.store.state.columnVisibility,\n ],\n },\n table_getCenterVisibleLeafColumns: {\n fn: () => table_getCenterVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n table.store.state.columnVisibility,\n ],\n },\n table_getRightVisibleLeafColumns: {\n fn: () => table_getRightVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n table.store.state.columnVisibility,\n ],\n },\n })\n },\n }\n}\n\n/**\n * The Column Pinning feature adds column pinning state and APIs to the table, row, and column objects.\n */\nexport const columnPinningFeature = constructColumnPinningFeature()\n"],"mappings":"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"}
1
+ {"version":3,"file":"columnPinningFeature.js","names":[],"sources":["../../../src/features/column-pinning/columnPinningFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n callMemoOrStaticFn,\n makeStateUpdater,\n} from '../../utils'\nimport { table_getVisibleLeafColumns } from '../column-visibility/columnVisibilityFeature.utils'\nimport {\n column_getCanPin,\n column_getIsPinned,\n column_getPinnedIndex,\n column_pin,\n getDefaultColumnPinningState,\n row_getCenterVisibleCells,\n row_getLeftVisibleCells,\n row_getRightVisibleCells,\n table_getCenterFlatHeaders,\n table_getCenterFooterGroups,\n table_getCenterHeaderGroups,\n table_getCenterLeafColumns,\n table_getCenterLeafHeaders,\n table_getCenterVisibleLeafColumns,\n table_getIsSomeColumnsPinned,\n table_getLeftFlatHeaders,\n table_getLeftFooterGroups,\n table_getLeftHeaderGroups,\n table_getLeftLeafColumns,\n table_getLeftLeafHeaders,\n table_getLeftVisibleLeafColumns,\n table_getRightFlatHeaders,\n table_getRightFooterGroups,\n table_getRightHeaderGroups,\n table_getRightLeafColumns,\n table_getRightLeafHeaders,\n table_getRightVisibleLeafColumns,\n table_resetColumnPinning,\n table_setColumnPinning,\n} from './columnPinningFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\n// import type {\n// ColumnDef_ColumnPinning,\n// Column_ColumnPinning,\n// Row_ColumnPinning,\n// TableOptions_ColumnPinning,\n// TableState_ColumnPinning,\n// Table_ColumnPinning,\n// } from './columnPinningFeature.types'\n\ninterface ColumnPinningFeatureConstructors<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> {\n // Column: Column_ColumnPinning\n // ColumnDef: ColumnDef_ColumnPinning\n // Row: Row_ColumnPinning<TFeatures, TData>\n // Table: Table_ColumnPinning<TFeatures, TData>\n // TableOptions: TableOptions_ColumnPinning\n // TableState: TableState_ColumnPinning\n}\n\nexport function constructColumnPinningFeature<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): TableFeature<ColumnPinningFeatureConstructors<TFeatures, TData>> {\n return {\n getInitialState: (initialState) => {\n return {\n columnPinning: {\n ...getDefaultColumnPinningState(),\n ...initialState.columnPinning,\n },\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnPinningChange: makeStateUpdater('columnPinning', table),\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnPinningFeature', prototype, table, {\n column_pin: {\n fn: (column, position) => column_pin(column, position),\n },\n column_getCanPin: {\n fn: (column) => column_getCanPin(column),\n },\n column_getPinnedIndex: {\n fn: (column) => column_getPinnedIndex(column),\n },\n column_getIsPinned: {\n fn: (column) => column_getIsPinned(column),\n },\n })\n },\n\n assignRowPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnPinningFeature', prototype, table, {\n row_getCenterVisibleCells: {\n fn: (row) => row_getCenterVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.store.state.columnPinning,\n row.table.store.state.columnVisibility,\n ],\n },\n row_getLeftVisibleCells: {\n fn: (row) => row_getLeftVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.store.state.columnPinning?.left,\n row.table.store.state.columnVisibility,\n ],\n },\n row_getRightVisibleCells: {\n fn: (row) => row_getRightVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.store.state.columnPinning?.right,\n row.table.store.state.columnVisibility,\n ],\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnPinningFeature', table, {\n table_setColumnPinning: {\n fn: (updater) => table_setColumnPinning(table, updater),\n },\n table_resetColumnPinning: {\n fn: (defaultState) => table_resetColumnPinning(table, defaultState),\n },\n table_getIsSomeColumnsPinned: {\n fn: (position) => table_getIsSomeColumnsPinned(table, position),\n },\n // header groups\n table_getLeftHeaderGroups: {\n fn: () => table_getLeftHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.store.state.columnPinning?.left,\n table.store.state.columnOrder,\n ],\n },\n table_getCenterHeaderGroups: {\n fn: () => table_getCenterHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.store.state.columnPinning,\n table.store.state.columnOrder,\n ],\n },\n table_getRightHeaderGroups: {\n fn: () => table_getRightHeaderGroups(table),\n memoDeps: () => [\n table.getAllColumns(),\n callMemoOrStaticFn(\n table,\n 'getVisibleLeafColumns',\n table_getVisibleLeafColumns,\n ),\n table.store.state.columnPinning?.right,\n table.store.state.columnOrder,\n ],\n },\n // footer groups\n table_getLeftFooterGroups: {\n fn: () => table_getLeftFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getCenterFooterGroups: {\n fn: () => table_getCenterFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n table_getRightFooterGroups: {\n fn: () => table_getRightFooterGroups(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n // flat headers\n table_getLeftFlatHeaders: {\n fn: () => table_getLeftFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getRightFlatHeaders: {\n fn: () => table_getRightFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n table_getCenterFlatHeaders: {\n fn: () => table_getCenterFlatHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n // leaf headers\n table_getLeftLeafHeaders: {\n fn: () => table_getLeftLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getLeftHeaderGroups',\n table_getLeftHeaderGroups,\n ),\n ],\n },\n table_getRightLeafHeaders: {\n fn: () => table_getRightLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getRightHeaderGroups',\n table_getRightHeaderGroups,\n ),\n ],\n },\n table_getCenterLeafHeaders: {\n fn: () => table_getCenterLeafHeaders(table),\n memoDeps: () => [\n callMemoOrStaticFn(\n table,\n 'getCenterHeaderGroups',\n table_getCenterHeaderGroups,\n ),\n ],\n },\n // leaf columns\n table_getLeftLeafColumns: {\n fn: () => table_getLeftLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n ],\n },\n table_getRightLeafColumns: {\n fn: () => table_getRightLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n ],\n },\n table_getCenterLeafColumns: {\n fn: () => table_getCenterLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n ],\n },\n // visible leaf columns\n table_getLeftVisibleLeafColumns: {\n fn: () => table_getLeftVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n table.store.state.columnVisibility,\n ],\n },\n table_getCenterVisibleLeafColumns: {\n fn: () => table_getCenterVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n table.store.state.columnVisibility,\n ],\n },\n table_getRightVisibleLeafColumns: {\n fn: () => table_getRightVisibleLeafColumns(table),\n memoDeps: () => [\n table.options.columns,\n table.store.state.columnPinning,\n table.store.state.columnVisibility,\n ],\n },\n })\n },\n }\n}\n\n/**\n * The Column Pinning feature adds column pinning state and APIs to the table, row, and column objects.\n */\nexport const columnPinningFeature = constructColumnPinningFeature()\n"],"mappings":";;;;;AA6DA,SAAgB,gCAGsD;AACpE,QAAO;EACL,kBAAkB,iBAAiB;AACjC,UAAO,EACL,eAAe;IACb,GAAG,8BAA8B;IACjC,GAAG,aAAa;IACjB,EACF;;EAGH,yBAAyB,UAAU;AACjC,UAAO,EACL,uBAAuB,iBAAiB,iBAAiB,MAAM,EAChE;;EAGH,wBAAwB,WAAW,UAAU;AAC3C,uBAAoB,wBAAwB,WAAW,OAAO;IAC5D,YAAY,EACV,KAAK,QAAQ,aAAa,WAAW,QAAQ,SAAS,EACvD;IACD,kBAAkB,EAChB,KAAK,WAAW,iBAAiB,OAAO,EACzC;IACD,uBAAuB,EACrB,KAAK,WAAW,sBAAsB,OAAO,EAC9C;IACD,oBAAoB,EAClB,KAAK,WAAW,mBAAmB,OAAO,EAC3C;IACF,CAAC;;EAGJ,qBAAqB,WAAW,UAAU;AACxC,uBAAoB,wBAAwB,WAAW,OAAO;IAC5D,2BAA2B;KACzB,KAAK,QAAQ,0BAA0B,IAAI;KAC3C,WAAW,QAAQ;MACjB,IAAI,aAAa;MACjB,IAAI,MAAM,MAAM,MAAM;MACtB,IAAI,MAAM,MAAM,MAAM;MACvB;KACF;IACD,yBAAyB;KACvB,KAAK,QAAQ,wBAAwB,IAAI;KACzC,WAAW,QAAQ;;;OACjB,IAAI,aAAa;gCACjB,IAAI,MAAM,MAAM,MAAM,6FAAe;OACrC,IAAI,MAAM,MAAM,MAAM;OACvB;;KACF;IACD,0BAA0B;KACxB,KAAK,QAAQ,yBAAyB,IAAI;KAC1C,WAAW,QAAQ;;;OACjB,IAAI,aAAa;iCACjB,IAAI,MAAM,MAAM,MAAM,+FAAe;OACrC,IAAI,MAAM,MAAM,MAAM;OACvB;;KACF;IACF,CAAC;;EAGJ,qBAAqB,UAAU;AAC7B,mBAAgB,wBAAwB,OAAO;IAC7C,wBAAwB,EACtB,KAAK,YAAY,uBAAuB,OAAO,QAAQ,EACxD;IACD,0BAA0B,EACxB,KAAK,iBAAiB,yBAAyB,OAAO,aAAa,EACpE;IACD,8BAA8B,EAC5B,KAAK,aAAa,6BAA6B,OAAO,SAAS,EAChE;IAED,2BAA2B;KACzB,UAAU,0BAA0B,MAAM;KAC1C,gBAAgB;;;OACd,MAAM,eAAe;OACrB,mBACE,OACA,yBACA,4BACD;gCACD,MAAM,MAAM,MAAM,6FAAe;OACjC,MAAM,MAAM,MAAM;OACnB;;KACF;IACD,6BAA6B;KAC3B,UAAU,4BAA4B,MAAM;KAC5C,gBAAgB;MACd,MAAM,eAAe;MACrB,mBACE,OACA,yBACA,4BACD;MACD,MAAM,MAAM,MAAM;MAClB,MAAM,MAAM,MAAM;MACnB;KACF;IACD,4BAA4B;KAC1B,UAAU,2BAA2B,MAAM;KAC3C,gBAAgB;;;OACd,MAAM,eAAe;OACrB,mBACE,OACA,yBACA,4BACD;iCACD,MAAM,MAAM,MAAM,+FAAe;OACjC,MAAM,MAAM,MAAM;OACnB;;KACF;IAED,2BAA2B;KACzB,UAAU,0BAA0B,MAAM;KAC1C,gBAAgB,CACd,mBACE,OACA,uBACA,0BACD,CACF;KACF;IACD,6BAA6B;KAC3B,UAAU,4BAA4B,MAAM;KAC5C,gBAAgB,CACd,mBACE,OACA,yBACA,4BACD,CACF;KACF;IACD,4BAA4B;KAC1B,UAAU,2BAA2B,MAAM;KAC3C,gBAAgB,CACd,mBACE,OACA,wBACA,2BACD,CACF;KACF;IAED,0BAA0B;KACxB,UAAU,yBAAyB,MAAM;KACzC,gBAAgB,CACd,mBACE,OACA,uBACA,0BACD,CACF;KACF;IACD,2BAA2B;KACzB,UAAU,0BAA0B,MAAM;KAC1C,gBAAgB,CACd,mBACE,OACA,wBACA,2BACD,CACF;KACF;IACD,4BAA4B;KAC1B,UAAU,2BAA2B,MAAM;KAC3C,gBAAgB,CACd,mBACE,OACA,yBACA,4BACD,CACF;KACF;IAED,0BAA0B;KACxB,UAAU,yBAAyB,MAAM;KACzC,gBAAgB,CACd,mBACE,OACA,uBACA,0BACD,CACF;KACF;IACD,2BAA2B;KACzB,UAAU,0BAA0B,MAAM;KAC1C,gBAAgB,CACd,mBACE,OACA,wBACA,2BACD,CACF;KACF;IACD,4BAA4B;KAC1B,UAAU,2BAA2B,MAAM;KAC3C,gBAAgB,CACd,mBACE,OACA,yBACA,4BACD,CACF;KACF;IAED,0BAA0B;KACxB,UAAU,yBAAyB,MAAM;KACzC,gBAAgB,CACd,MAAM,QAAQ,SACd,MAAM,MAAM,MAAM,cACnB;KACF;IACD,2BAA2B;KACzB,UAAU,0BAA0B,MAAM;KAC1C,gBAAgB,CACd,MAAM,QAAQ,SACd,MAAM,MAAM,MAAM,cACnB;KACF;IACD,4BAA4B;KAC1B,UAAU,2BAA2B,MAAM;KAC3C,gBAAgB,CACd,MAAM,QAAQ,SACd,MAAM,MAAM,MAAM,cACnB;KACF;IAED,iCAAiC;KAC/B,UAAU,gCAAgC,MAAM;KAChD,gBAAgB;MACd,MAAM,QAAQ;MACd,MAAM,MAAM,MAAM;MAClB,MAAM,MAAM,MAAM;MACnB;KACF;IACD,mCAAmC;KACjC,UAAU,kCAAkC,MAAM;KAClD,gBAAgB;MACd,MAAM,QAAQ;MACd,MAAM,MAAM,MAAM;MAClB,MAAM,MAAM,MAAM;MACnB;KACF;IACD,kCAAkC;KAChC,UAAU,iCAAiC,MAAM;KACjD,gBAAgB;MACd,MAAM,QAAQ;MACd,MAAM,MAAM,MAAM;MAClB,MAAM,MAAM,MAAM;MACnB;KACF;IACF,CAAC;;EAEL;;;;;AAMH,MAAa,uBAAuB,+BAA+B"}
@@ -49,11 +49,19 @@ function constructColumnVisibilityFeature() {
49
49
  require_utils.assignTableAPIs("columnVisibilityFeature", table, {
50
50
  table_getVisibleFlatColumns: {
51
51
  fn: () => require_columnVisibilityFeature_utils.table_getVisibleFlatColumns(table),
52
- memoDeps: () => [table.store.state.columnVisibility, table.options.columns]
52
+ memoDeps: () => [
53
+ table.store.state.columnVisibility,
54
+ table.store.state.columnOrder,
55
+ table.options.columns
56
+ ]
53
57
  },
54
58
  table_getVisibleLeafColumns: {
55
59
  fn: () => require_columnVisibilityFeature_utils.table_getVisibleLeafColumns(table),
56
- memoDeps: () => [table.store.state.columnVisibility, table.options.columns]
60
+ memoDeps: () => [
61
+ table.store.state.columnVisibility,
62
+ table.store.state.columnOrder,
63
+ table.options.columns
64
+ ]
57
65
  },
58
66
  table_setColumnVisibility: { fn: (updater) => require_columnVisibilityFeature_utils.table_setColumnVisibility(table, updater) },
59
67
  table_resetColumnVisibility: { fn: (defaultState) => require_columnVisibilityFeature_utils.table_resetColumnVisibility(table, defaultState) },
@@ -1 +1 @@
1
- {"version":3,"file":"columnVisibilityFeature.cjs","names":["getDefaultColumnVisibilityState","makeStateUpdater","column_getIsVisible","column_getCanHide","column_getToggleVisibilityHandler","column_toggleVisibility","row_getAllVisibleCells","row_getVisibleCells","row_getLeftVisibleCells","row_getCenterVisibleCells","row_getRightVisibleCells","table_getVisibleFlatColumns","table_getVisibleLeafColumns","table_setColumnVisibility","table_resetColumnVisibility","table_toggleAllColumnsVisible","table_getIsAllColumnsVisible","table_getIsSomeColumnsVisible","table_getToggleAllColumnsVisibilityHandler"],"sources":["../../../src/features/column-visibility/columnVisibilityFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n makeStateUpdater,\n} from '../../utils'\nimport {\n row_getCenterVisibleCells,\n row_getLeftVisibleCells,\n row_getRightVisibleCells,\n} from '../column-pinning/columnPinningFeature.utils'\nimport {\n column_getCanHide,\n column_getIsVisible,\n column_getToggleVisibilityHandler,\n column_toggleVisibility,\n getDefaultColumnVisibilityState,\n row_getAllVisibleCells,\n row_getVisibleCells,\n table_getIsAllColumnsVisible,\n table_getIsSomeColumnsVisible,\n table_getToggleAllColumnsVisibilityHandler,\n table_getVisibleFlatColumns,\n table_getVisibleLeafColumns,\n table_resetColumnVisibility,\n table_setColumnVisibility,\n table_toggleAllColumnsVisible,\n} from './columnVisibilityFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\n// import type {\n// ColumnDef_ColumnVisibility,\n// Column_ColumnVisibility,\n// Row_ColumnVisibility,\n// TableOptions_ColumnVisibility,\n// TableState_ColumnVisibility,\n// Table_ColumnVisibility,\n// } from './columnVisibilityFeature.types'\n\ninterface ColumnVisibilityFeatureConstructors<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> {\n // ColumnDef: ColumnDef_ColumnVisibility\n // Column: Column_ColumnVisibility\n // Row: Row_ColumnVisibility<TFeatures, TData>\n // Table: Table_ColumnVisibility<TFeatures, TData>\n // TableOptions: TableOptions_ColumnVisibility\n // TableState: TableState_ColumnVisibility\n}\n\nexport function constructColumnVisibilityFeature<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): TableFeature<ColumnVisibilityFeatureConstructors<TFeatures, TData>> {\n return {\n getInitialState: (initialState) => {\n return {\n columnVisibility: getDefaultColumnVisibilityState(),\n ...initialState,\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnVisibilityChange: makeStateUpdater('columnVisibility', table),\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnVisibilityFeature', prototype, table, {\n column_getIsVisible: {\n fn: (column) => column_getIsVisible(column),\n memoDeps: (column) => [\n column.table.options.columns,\n column.table.store.state.columnVisibility,\n column.columns,\n ],\n },\n column_getCanHide: {\n fn: (column) => column_getCanHide(column),\n },\n column_getToggleVisibilityHandler: {\n fn: (column) => column_getToggleVisibilityHandler(column),\n },\n column_toggleVisibility: {\n fn: (column, visible) => column_toggleVisibility(column, visible),\n },\n })\n },\n\n assignRowPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnVisibilityFeature', prototype, table, {\n row_getAllVisibleCells: {\n fn: (row) => row_getAllVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.store.state.columnVisibility,\n ],\n },\n row_getVisibleCells: {\n fn: (row, left, center, right) =>\n row_getVisibleCells(left, center, right),\n memoDeps: (row) => [\n row_getLeftVisibleCells(row),\n row_getCenterVisibleCells(row),\n row_getRightVisibleCells(row),\n ],\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnVisibilityFeature', table, {\n table_getVisibleFlatColumns: {\n fn: () => table_getVisibleFlatColumns(table),\n memoDeps: () => [\n table.store.state.columnVisibility,\n table.options.columns,\n ],\n },\n table_getVisibleLeafColumns: {\n fn: () => table_getVisibleLeafColumns(table),\n memoDeps: () => [\n table.store.state.columnVisibility,\n table.options.columns,\n ],\n },\n table_setColumnVisibility: {\n fn: (updater) => table_setColumnVisibility(table, updater),\n },\n table_resetColumnVisibility: {\n fn: (defaultState) =>\n table_resetColumnVisibility(table, defaultState),\n },\n table_toggleAllColumnsVisible: {\n fn: (value) => table_toggleAllColumnsVisible(table, value),\n },\n table_getIsAllColumnsVisible: {\n fn: () => table_getIsAllColumnsVisible(table),\n },\n table_getIsSomeColumnsVisible: {\n fn: () => table_getIsSomeColumnsVisible(table),\n },\n table_getToggleAllColumnsVisibilityHandler: {\n fn: () => table_getToggleAllColumnsVisibilityHandler(table),\n },\n })\n },\n }\n}\n\n/**\n * The Column Visibility feature adds column visibility state and APIs to the table, row, and column objects.\n */\nexport const columnVisibilityFeature = constructColumnVisibilityFeature()\n"],"mappings":";;;;;AAkDA,SAAgB,mCAGyD;AACvE,QAAO;EACL,kBAAkB,iBAAiB;AACjC,UAAO;IACL,kBAAkBA,uEAAiC;IACnD,GAAG;IACJ;;EAGH,yBAAyB,UAAU;AACjC,UAAO,EACL,0BAA0BC,+BAAiB,oBAAoB,MAAM,EACtE;;EAGH,wBAAwB,WAAW,UAAU;AAC3C,qCAAoB,2BAA2B,WAAW,OAAO;IAC/D,qBAAqB;KACnB,KAAK,WAAWC,0DAAoB,OAAO;KAC3C,WAAW,WAAW;MACpB,OAAO,MAAM,QAAQ;MACrB,OAAO,MAAM,MAAM,MAAM;MACzB,OAAO;MACR;KACF;IACD,mBAAmB,EACjB,KAAK,WAAWC,wDAAkB,OAAO,EAC1C;IACD,mCAAmC,EACjC,KAAK,WAAWC,wEAAkC,OAAO,EAC1D;IACD,yBAAyB,EACvB,KAAK,QAAQ,YAAYC,8DAAwB,QAAQ,QAAQ,EAClE;IACF,CAAC;;EAGJ,qBAAqB,WAAW,UAAU;AACxC,qCAAoB,2BAA2B,WAAW,OAAO;IAC/D,wBAAwB;KACtB,KAAK,QAAQC,6DAAuB,IAAI;KACxC,WAAW,QAAQ,CACjB,IAAI,aAAa,EACjB,IAAI,MAAM,MAAM,MAAM,iBACvB;KACF;IACD,qBAAqB;KACnB,KAAK,KAAK,MAAM,QAAQ,UACtBC,0DAAoB,MAAM,QAAQ,MAAM;KAC1C,WAAW,QAAQ;MACjBC,2DAAwB,IAAI;MAC5BC,6DAA0B,IAAI;MAC9BC,4DAAyB,IAAI;MAC9B;KACF;IACF,CAAC;;EAGJ,qBAAqB,UAAU;AAC7B,iCAAgB,2BAA2B,OAAO;IAChD,6BAA6B;KAC3B,UAAUC,kEAA4B,MAAM;KAC5C,gBAAgB,CACd,MAAM,MAAM,MAAM,kBAClB,MAAM,QAAQ,QACf;KACF;IACD,6BAA6B;KAC3B,UAAUC,kEAA4B,MAAM;KAC5C,gBAAgB,CACd,MAAM,MAAM,MAAM,kBAClB,MAAM,QAAQ,QACf;KACF;IACD,2BAA2B,EACzB,KAAK,YAAYC,gEAA0B,OAAO,QAAQ,EAC3D;IACD,6BAA6B,EAC3B,KAAK,iBACHC,kEAA4B,OAAO,aAAa,EACnD;IACD,+BAA+B,EAC7B,KAAK,UAAUC,oEAA8B,OAAO,MAAM,EAC3D;IACD,8BAA8B,EAC5B,UAAUC,mEAA6B,MAAM,EAC9C;IACD,+BAA+B,EAC7B,UAAUC,oEAA8B,MAAM,EAC/C;IACD,4CAA4C,EAC1C,UAAUC,iFAA2C,MAAM,EAC5D;IACF,CAAC;;EAEL;;;;;AAMH,MAAa,0BAA0B,kCAAkC"}
1
+ {"version":3,"file":"columnVisibilityFeature.cjs","names":["getDefaultColumnVisibilityState","makeStateUpdater","column_getIsVisible","column_getCanHide","column_getToggleVisibilityHandler","column_toggleVisibility","row_getAllVisibleCells","row_getVisibleCells","row_getLeftVisibleCells","row_getCenterVisibleCells","row_getRightVisibleCells","table_getVisibleFlatColumns","table_getVisibleLeafColumns","table_setColumnVisibility","table_resetColumnVisibility","table_toggleAllColumnsVisible","table_getIsAllColumnsVisible","table_getIsSomeColumnsVisible","table_getToggleAllColumnsVisibilityHandler"],"sources":["../../../src/features/column-visibility/columnVisibilityFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n makeStateUpdater,\n} from '../../utils'\nimport {\n row_getCenterVisibleCells,\n row_getLeftVisibleCells,\n row_getRightVisibleCells,\n} from '../column-pinning/columnPinningFeature.utils'\nimport {\n column_getCanHide,\n column_getIsVisible,\n column_getToggleVisibilityHandler,\n column_toggleVisibility,\n getDefaultColumnVisibilityState,\n row_getAllVisibleCells,\n row_getVisibleCells,\n table_getIsAllColumnsVisible,\n table_getIsSomeColumnsVisible,\n table_getToggleAllColumnsVisibilityHandler,\n table_getVisibleFlatColumns,\n table_getVisibleLeafColumns,\n table_resetColumnVisibility,\n table_setColumnVisibility,\n table_toggleAllColumnsVisible,\n} from './columnVisibilityFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\n// import type {\n// ColumnDef_ColumnVisibility,\n// Column_ColumnVisibility,\n// Row_ColumnVisibility,\n// TableOptions_ColumnVisibility,\n// TableState_ColumnVisibility,\n// Table_ColumnVisibility,\n// } from './columnVisibilityFeature.types'\n\ninterface ColumnVisibilityFeatureConstructors<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> {\n // ColumnDef: ColumnDef_ColumnVisibility\n // Column: Column_ColumnVisibility\n // Row: Row_ColumnVisibility<TFeatures, TData>\n // Table: Table_ColumnVisibility<TFeatures, TData>\n // TableOptions: TableOptions_ColumnVisibility\n // TableState: TableState_ColumnVisibility\n}\n\nexport function constructColumnVisibilityFeature<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): TableFeature<ColumnVisibilityFeatureConstructors<TFeatures, TData>> {\n return {\n getInitialState: (initialState) => {\n return {\n columnVisibility: getDefaultColumnVisibilityState(),\n ...initialState,\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnVisibilityChange: makeStateUpdater('columnVisibility', table),\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnVisibilityFeature', prototype, table, {\n column_getIsVisible: {\n fn: (column) => column_getIsVisible(column),\n memoDeps: (column) => [\n column.table.options.columns,\n column.table.store.state.columnVisibility,\n column.columns,\n ],\n },\n column_getCanHide: {\n fn: (column) => column_getCanHide(column),\n },\n column_getToggleVisibilityHandler: {\n fn: (column) => column_getToggleVisibilityHandler(column),\n },\n column_toggleVisibility: {\n fn: (column, visible) => column_toggleVisibility(column, visible),\n },\n })\n },\n\n assignRowPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnVisibilityFeature', prototype, table, {\n row_getAllVisibleCells: {\n fn: (row) => row_getAllVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.store.state.columnVisibility,\n ],\n },\n row_getVisibleCells: {\n fn: (row, left, center, right) =>\n row_getVisibleCells(left, center, right),\n memoDeps: (row) => [\n row_getLeftVisibleCells(row),\n row_getCenterVisibleCells(row),\n row_getRightVisibleCells(row),\n ],\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnVisibilityFeature', table, {\n table_getVisibleFlatColumns: {\n fn: () => table_getVisibleFlatColumns(table),\n memoDeps: () => [\n table.store.state.columnVisibility,\n table.store.state.columnOrder,\n table.options.columns,\n ],\n },\n table_getVisibleLeafColumns: {\n fn: () => table_getVisibleLeafColumns(table),\n memoDeps: () => [\n table.store.state.columnVisibility,\n table.store.state.columnOrder,\n table.options.columns,\n ],\n },\n table_setColumnVisibility: {\n fn: (updater) => table_setColumnVisibility(table, updater),\n },\n table_resetColumnVisibility: {\n fn: (defaultState) =>\n table_resetColumnVisibility(table, defaultState),\n },\n table_toggleAllColumnsVisible: {\n fn: (value) => table_toggleAllColumnsVisible(table, value),\n },\n table_getIsAllColumnsVisible: {\n fn: () => table_getIsAllColumnsVisible(table),\n },\n table_getIsSomeColumnsVisible: {\n fn: () => table_getIsSomeColumnsVisible(table),\n },\n table_getToggleAllColumnsVisibilityHandler: {\n fn: () => table_getToggleAllColumnsVisibilityHandler(table),\n },\n })\n },\n }\n}\n\n/**\n * The Column Visibility feature adds column visibility state and APIs to the table, row, and column objects.\n */\nexport const columnVisibilityFeature = constructColumnVisibilityFeature()\n"],"mappings":";;;;;AAkDA,SAAgB,mCAGyD;AACvE,QAAO;EACL,kBAAkB,iBAAiB;AACjC,UAAO;IACL,kBAAkBA,uEAAiC;IACnD,GAAG;IACJ;;EAGH,yBAAyB,UAAU;AACjC,UAAO,EACL,0BAA0BC,+BAAiB,oBAAoB,MAAM,EACtE;;EAGH,wBAAwB,WAAW,UAAU;AAC3C,qCAAoB,2BAA2B,WAAW,OAAO;IAC/D,qBAAqB;KACnB,KAAK,WAAWC,0DAAoB,OAAO;KAC3C,WAAW,WAAW;MACpB,OAAO,MAAM,QAAQ;MACrB,OAAO,MAAM,MAAM,MAAM;MACzB,OAAO;MACR;KACF;IACD,mBAAmB,EACjB,KAAK,WAAWC,wDAAkB,OAAO,EAC1C;IACD,mCAAmC,EACjC,KAAK,WAAWC,wEAAkC,OAAO,EAC1D;IACD,yBAAyB,EACvB,KAAK,QAAQ,YAAYC,8DAAwB,QAAQ,QAAQ,EAClE;IACF,CAAC;;EAGJ,qBAAqB,WAAW,UAAU;AACxC,qCAAoB,2BAA2B,WAAW,OAAO;IAC/D,wBAAwB;KACtB,KAAK,QAAQC,6DAAuB,IAAI;KACxC,WAAW,QAAQ,CACjB,IAAI,aAAa,EACjB,IAAI,MAAM,MAAM,MAAM,iBACvB;KACF;IACD,qBAAqB;KACnB,KAAK,KAAK,MAAM,QAAQ,UACtBC,0DAAoB,MAAM,QAAQ,MAAM;KAC1C,WAAW,QAAQ;MACjBC,2DAAwB,IAAI;MAC5BC,6DAA0B,IAAI;MAC9BC,4DAAyB,IAAI;MAC9B;KACF;IACF,CAAC;;EAGJ,qBAAqB,UAAU;AAC7B,iCAAgB,2BAA2B,OAAO;IAChD,6BAA6B;KAC3B,UAAUC,kEAA4B,MAAM;KAC5C,gBAAgB;MACd,MAAM,MAAM,MAAM;MAClB,MAAM,MAAM,MAAM;MAClB,MAAM,QAAQ;MACf;KACF;IACD,6BAA6B;KAC3B,UAAUC,kEAA4B,MAAM;KAC5C,gBAAgB;MACd,MAAM,MAAM,MAAM;MAClB,MAAM,MAAM,MAAM;MAClB,MAAM,QAAQ;MACf;KACF;IACD,2BAA2B,EACzB,KAAK,YAAYC,gEAA0B,OAAO,QAAQ,EAC3D;IACD,6BAA6B,EAC3B,KAAK,iBACHC,kEAA4B,OAAO,aAAa,EACnD;IACD,+BAA+B,EAC7B,KAAK,UAAUC,oEAA8B,OAAO,MAAM,EAC3D;IACD,8BAA8B,EAC5B,UAAUC,mEAA6B,MAAM,EAC9C;IACD,+BAA+B,EAC7B,UAAUC,oEAA8B,MAAM,EAC/C;IACD,4CAA4C,EAC1C,UAAUC,iFAA2C,MAAM,EAC5D;IACF,CAAC;;EAEL;;;;;AAMH,MAAa,0BAA0B,kCAAkC"}
@@ -49,11 +49,19 @@ function constructColumnVisibilityFeature() {
49
49
  assignTableAPIs("columnVisibilityFeature", table, {
50
50
  table_getVisibleFlatColumns: {
51
51
  fn: () => table_getVisibleFlatColumns(table),
52
- memoDeps: () => [table.store.state.columnVisibility, table.options.columns]
52
+ memoDeps: () => [
53
+ table.store.state.columnVisibility,
54
+ table.store.state.columnOrder,
55
+ table.options.columns
56
+ ]
53
57
  },
54
58
  table_getVisibleLeafColumns: {
55
59
  fn: () => table_getVisibleLeafColumns(table),
56
- memoDeps: () => [table.store.state.columnVisibility, table.options.columns]
60
+ memoDeps: () => [
61
+ table.store.state.columnVisibility,
62
+ table.store.state.columnOrder,
63
+ table.options.columns
64
+ ]
57
65
  },
58
66
  table_setColumnVisibility: { fn: (updater) => table_setColumnVisibility(table, updater) },
59
67
  table_resetColumnVisibility: { fn: (defaultState) => table_resetColumnVisibility(table, defaultState) },
@@ -1 +1 @@
1
- {"version":3,"file":"columnVisibilityFeature.js","names":[],"sources":["../../../src/features/column-visibility/columnVisibilityFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n makeStateUpdater,\n} from '../../utils'\nimport {\n row_getCenterVisibleCells,\n row_getLeftVisibleCells,\n row_getRightVisibleCells,\n} from '../column-pinning/columnPinningFeature.utils'\nimport {\n column_getCanHide,\n column_getIsVisible,\n column_getToggleVisibilityHandler,\n column_toggleVisibility,\n getDefaultColumnVisibilityState,\n row_getAllVisibleCells,\n row_getVisibleCells,\n table_getIsAllColumnsVisible,\n table_getIsSomeColumnsVisible,\n table_getToggleAllColumnsVisibilityHandler,\n table_getVisibleFlatColumns,\n table_getVisibleLeafColumns,\n table_resetColumnVisibility,\n table_setColumnVisibility,\n table_toggleAllColumnsVisible,\n} from './columnVisibilityFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\n// import type {\n// ColumnDef_ColumnVisibility,\n// Column_ColumnVisibility,\n// Row_ColumnVisibility,\n// TableOptions_ColumnVisibility,\n// TableState_ColumnVisibility,\n// Table_ColumnVisibility,\n// } from './columnVisibilityFeature.types'\n\ninterface ColumnVisibilityFeatureConstructors<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> {\n // ColumnDef: ColumnDef_ColumnVisibility\n // Column: Column_ColumnVisibility\n // Row: Row_ColumnVisibility<TFeatures, TData>\n // Table: Table_ColumnVisibility<TFeatures, TData>\n // TableOptions: TableOptions_ColumnVisibility\n // TableState: TableState_ColumnVisibility\n}\n\nexport function constructColumnVisibilityFeature<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): TableFeature<ColumnVisibilityFeatureConstructors<TFeatures, TData>> {\n return {\n getInitialState: (initialState) => {\n return {\n columnVisibility: getDefaultColumnVisibilityState(),\n ...initialState,\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnVisibilityChange: makeStateUpdater('columnVisibility', table),\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnVisibilityFeature', prototype, table, {\n column_getIsVisible: {\n fn: (column) => column_getIsVisible(column),\n memoDeps: (column) => [\n column.table.options.columns,\n column.table.store.state.columnVisibility,\n column.columns,\n ],\n },\n column_getCanHide: {\n fn: (column) => column_getCanHide(column),\n },\n column_getToggleVisibilityHandler: {\n fn: (column) => column_getToggleVisibilityHandler(column),\n },\n column_toggleVisibility: {\n fn: (column, visible) => column_toggleVisibility(column, visible),\n },\n })\n },\n\n assignRowPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnVisibilityFeature', prototype, table, {\n row_getAllVisibleCells: {\n fn: (row) => row_getAllVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.store.state.columnVisibility,\n ],\n },\n row_getVisibleCells: {\n fn: (row, left, center, right) =>\n row_getVisibleCells(left, center, right),\n memoDeps: (row) => [\n row_getLeftVisibleCells(row),\n row_getCenterVisibleCells(row),\n row_getRightVisibleCells(row),\n ],\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnVisibilityFeature', table, {\n table_getVisibleFlatColumns: {\n fn: () => table_getVisibleFlatColumns(table),\n memoDeps: () => [\n table.store.state.columnVisibility,\n table.options.columns,\n ],\n },\n table_getVisibleLeafColumns: {\n fn: () => table_getVisibleLeafColumns(table),\n memoDeps: () => [\n table.store.state.columnVisibility,\n table.options.columns,\n ],\n },\n table_setColumnVisibility: {\n fn: (updater) => table_setColumnVisibility(table, updater),\n },\n table_resetColumnVisibility: {\n fn: (defaultState) =>\n table_resetColumnVisibility(table, defaultState),\n },\n table_toggleAllColumnsVisible: {\n fn: (value) => table_toggleAllColumnsVisible(table, value),\n },\n table_getIsAllColumnsVisible: {\n fn: () => table_getIsAllColumnsVisible(table),\n },\n table_getIsSomeColumnsVisible: {\n fn: () => table_getIsSomeColumnsVisible(table),\n },\n table_getToggleAllColumnsVisibilityHandler: {\n fn: () => table_getToggleAllColumnsVisibilityHandler(table),\n },\n })\n },\n }\n}\n\n/**\n * The Column Visibility feature adds column visibility state and APIs to the table, row, and column objects.\n */\nexport const columnVisibilityFeature = constructColumnVisibilityFeature()\n"],"mappings":";;;;;AAkDA,SAAgB,mCAGyD;AACvE,QAAO;EACL,kBAAkB,iBAAiB;AACjC,UAAO;IACL,kBAAkB,iCAAiC;IACnD,GAAG;IACJ;;EAGH,yBAAyB,UAAU;AACjC,UAAO,EACL,0BAA0B,iBAAiB,oBAAoB,MAAM,EACtE;;EAGH,wBAAwB,WAAW,UAAU;AAC3C,uBAAoB,2BAA2B,WAAW,OAAO;IAC/D,qBAAqB;KACnB,KAAK,WAAW,oBAAoB,OAAO;KAC3C,WAAW,WAAW;MACpB,OAAO,MAAM,QAAQ;MACrB,OAAO,MAAM,MAAM,MAAM;MACzB,OAAO;MACR;KACF;IACD,mBAAmB,EACjB,KAAK,WAAW,kBAAkB,OAAO,EAC1C;IACD,mCAAmC,EACjC,KAAK,WAAW,kCAAkC,OAAO,EAC1D;IACD,yBAAyB,EACvB,KAAK,QAAQ,YAAY,wBAAwB,QAAQ,QAAQ,EAClE;IACF,CAAC;;EAGJ,qBAAqB,WAAW,UAAU;AACxC,uBAAoB,2BAA2B,WAAW,OAAO;IAC/D,wBAAwB;KACtB,KAAK,QAAQ,uBAAuB,IAAI;KACxC,WAAW,QAAQ,CACjB,IAAI,aAAa,EACjB,IAAI,MAAM,MAAM,MAAM,iBACvB;KACF;IACD,qBAAqB;KACnB,KAAK,KAAK,MAAM,QAAQ,UACtB,oBAAoB,MAAM,QAAQ,MAAM;KAC1C,WAAW,QAAQ;MACjB,wBAAwB,IAAI;MAC5B,0BAA0B,IAAI;MAC9B,yBAAyB,IAAI;MAC9B;KACF;IACF,CAAC;;EAGJ,qBAAqB,UAAU;AAC7B,mBAAgB,2BAA2B,OAAO;IAChD,6BAA6B;KAC3B,UAAU,4BAA4B,MAAM;KAC5C,gBAAgB,CACd,MAAM,MAAM,MAAM,kBAClB,MAAM,QAAQ,QACf;KACF;IACD,6BAA6B;KAC3B,UAAU,4BAA4B,MAAM;KAC5C,gBAAgB,CACd,MAAM,MAAM,MAAM,kBAClB,MAAM,QAAQ,QACf;KACF;IACD,2BAA2B,EACzB,KAAK,YAAY,0BAA0B,OAAO,QAAQ,EAC3D;IACD,6BAA6B,EAC3B,KAAK,iBACH,4BAA4B,OAAO,aAAa,EACnD;IACD,+BAA+B,EAC7B,KAAK,UAAU,8BAA8B,OAAO,MAAM,EAC3D;IACD,8BAA8B,EAC5B,UAAU,6BAA6B,MAAM,EAC9C;IACD,+BAA+B,EAC7B,UAAU,8BAA8B,MAAM,EAC/C;IACD,4CAA4C,EAC1C,UAAU,2CAA2C,MAAM,EAC5D;IACF,CAAC;;EAEL;;;;;AAMH,MAAa,0BAA0B,kCAAkC"}
1
+ {"version":3,"file":"columnVisibilityFeature.js","names":[],"sources":["../../../src/features/column-visibility/columnVisibilityFeature.ts"],"sourcesContent":["import {\n assignPrototypeAPIs,\n assignTableAPIs,\n makeStateUpdater,\n} from '../../utils'\nimport {\n row_getCenterVisibleCells,\n row_getLeftVisibleCells,\n row_getRightVisibleCells,\n} from '../column-pinning/columnPinningFeature.utils'\nimport {\n column_getCanHide,\n column_getIsVisible,\n column_getToggleVisibilityHandler,\n column_toggleVisibility,\n getDefaultColumnVisibilityState,\n row_getAllVisibleCells,\n row_getVisibleCells,\n table_getIsAllColumnsVisible,\n table_getIsSomeColumnsVisible,\n table_getToggleAllColumnsVisibilityHandler,\n table_getVisibleFlatColumns,\n table_getVisibleLeafColumns,\n table_resetColumnVisibility,\n table_setColumnVisibility,\n table_toggleAllColumnsVisible,\n} from './columnVisibilityFeature.utils'\nimport type { RowData } from '../../types/type-utils'\nimport type { TableFeature, TableFeatures } from '../../types/TableFeatures'\n// import type {\n// ColumnDef_ColumnVisibility,\n// Column_ColumnVisibility,\n// Row_ColumnVisibility,\n// TableOptions_ColumnVisibility,\n// TableState_ColumnVisibility,\n// Table_ColumnVisibility,\n// } from './columnVisibilityFeature.types'\n\ninterface ColumnVisibilityFeatureConstructors<\n TFeatures extends TableFeatures,\n TData extends RowData,\n> {\n // ColumnDef: ColumnDef_ColumnVisibility\n // Column: Column_ColumnVisibility\n // Row: Row_ColumnVisibility<TFeatures, TData>\n // Table: Table_ColumnVisibility<TFeatures, TData>\n // TableOptions: TableOptions_ColumnVisibility\n // TableState: TableState_ColumnVisibility\n}\n\nexport function constructColumnVisibilityFeature<\n TFeatures extends TableFeatures,\n TData extends RowData,\n>(): TableFeature<ColumnVisibilityFeatureConstructors<TFeatures, TData>> {\n return {\n getInitialState: (initialState) => {\n return {\n columnVisibility: getDefaultColumnVisibilityState(),\n ...initialState,\n }\n },\n\n getDefaultTableOptions: (table) => {\n return {\n onColumnVisibilityChange: makeStateUpdater('columnVisibility', table),\n }\n },\n\n assignColumnPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnVisibilityFeature', prototype, table, {\n column_getIsVisible: {\n fn: (column) => column_getIsVisible(column),\n memoDeps: (column) => [\n column.table.options.columns,\n column.table.store.state.columnVisibility,\n column.columns,\n ],\n },\n column_getCanHide: {\n fn: (column) => column_getCanHide(column),\n },\n column_getToggleVisibilityHandler: {\n fn: (column) => column_getToggleVisibilityHandler(column),\n },\n column_toggleVisibility: {\n fn: (column, visible) => column_toggleVisibility(column, visible),\n },\n })\n },\n\n assignRowPrototype: (prototype, table) => {\n assignPrototypeAPIs('columnVisibilityFeature', prototype, table, {\n row_getAllVisibleCells: {\n fn: (row) => row_getAllVisibleCells(row),\n memoDeps: (row) => [\n row.getAllCells(),\n row.table.store.state.columnVisibility,\n ],\n },\n row_getVisibleCells: {\n fn: (row, left, center, right) =>\n row_getVisibleCells(left, center, right),\n memoDeps: (row) => [\n row_getLeftVisibleCells(row),\n row_getCenterVisibleCells(row),\n row_getRightVisibleCells(row),\n ],\n },\n })\n },\n\n constructTableAPIs: (table) => {\n assignTableAPIs('columnVisibilityFeature', table, {\n table_getVisibleFlatColumns: {\n fn: () => table_getVisibleFlatColumns(table),\n memoDeps: () => [\n table.store.state.columnVisibility,\n table.store.state.columnOrder,\n table.options.columns,\n ],\n },\n table_getVisibleLeafColumns: {\n fn: () => table_getVisibleLeafColumns(table),\n memoDeps: () => [\n table.store.state.columnVisibility,\n table.store.state.columnOrder,\n table.options.columns,\n ],\n },\n table_setColumnVisibility: {\n fn: (updater) => table_setColumnVisibility(table, updater),\n },\n table_resetColumnVisibility: {\n fn: (defaultState) =>\n table_resetColumnVisibility(table, defaultState),\n },\n table_toggleAllColumnsVisible: {\n fn: (value) => table_toggleAllColumnsVisible(table, value),\n },\n table_getIsAllColumnsVisible: {\n fn: () => table_getIsAllColumnsVisible(table),\n },\n table_getIsSomeColumnsVisible: {\n fn: () => table_getIsSomeColumnsVisible(table),\n },\n table_getToggleAllColumnsVisibilityHandler: {\n fn: () => table_getToggleAllColumnsVisibilityHandler(table),\n },\n })\n },\n }\n}\n\n/**\n * The Column Visibility feature adds column visibility state and APIs to the table, row, and column objects.\n */\nexport const columnVisibilityFeature = constructColumnVisibilityFeature()\n"],"mappings":";;;;;AAkDA,SAAgB,mCAGyD;AACvE,QAAO;EACL,kBAAkB,iBAAiB;AACjC,UAAO;IACL,kBAAkB,iCAAiC;IACnD,GAAG;IACJ;;EAGH,yBAAyB,UAAU;AACjC,UAAO,EACL,0BAA0B,iBAAiB,oBAAoB,MAAM,EACtE;;EAGH,wBAAwB,WAAW,UAAU;AAC3C,uBAAoB,2BAA2B,WAAW,OAAO;IAC/D,qBAAqB;KACnB,KAAK,WAAW,oBAAoB,OAAO;KAC3C,WAAW,WAAW;MACpB,OAAO,MAAM,QAAQ;MACrB,OAAO,MAAM,MAAM,MAAM;MACzB,OAAO;MACR;KACF;IACD,mBAAmB,EACjB,KAAK,WAAW,kBAAkB,OAAO,EAC1C;IACD,mCAAmC,EACjC,KAAK,WAAW,kCAAkC,OAAO,EAC1D;IACD,yBAAyB,EACvB,KAAK,QAAQ,YAAY,wBAAwB,QAAQ,QAAQ,EAClE;IACF,CAAC;;EAGJ,qBAAqB,WAAW,UAAU;AACxC,uBAAoB,2BAA2B,WAAW,OAAO;IAC/D,wBAAwB;KACtB,KAAK,QAAQ,uBAAuB,IAAI;KACxC,WAAW,QAAQ,CACjB,IAAI,aAAa,EACjB,IAAI,MAAM,MAAM,MAAM,iBACvB;KACF;IACD,qBAAqB;KACnB,KAAK,KAAK,MAAM,QAAQ,UACtB,oBAAoB,MAAM,QAAQ,MAAM;KAC1C,WAAW,QAAQ;MACjB,wBAAwB,IAAI;MAC5B,0BAA0B,IAAI;MAC9B,yBAAyB,IAAI;MAC9B;KACF;IACF,CAAC;;EAGJ,qBAAqB,UAAU;AAC7B,mBAAgB,2BAA2B,OAAO;IAChD,6BAA6B;KAC3B,UAAU,4BAA4B,MAAM;KAC5C,gBAAgB;MACd,MAAM,MAAM,MAAM;MAClB,MAAM,MAAM,MAAM;MAClB,MAAM,QAAQ;MACf;KACF;IACD,6BAA6B;KAC3B,UAAU,4BAA4B,MAAM;KAC5C,gBAAgB;MACd,MAAM,MAAM,MAAM;MAClB,MAAM,MAAM,MAAM;MAClB,MAAM,QAAQ;MACf;KACF;IACD,2BAA2B,EACzB,KAAK,YAAY,0BAA0B,OAAO,QAAQ,EAC3D;IACD,6BAA6B,EAC3B,KAAK,iBACH,4BAA4B,OAAO,aAAa,EACnD;IACD,+BAA+B,EAC7B,KAAK,UAAU,8BAA8B,OAAO,MAAM,EAC3D;IACD,8BAA8B,EAC5B,UAAU,6BAA6B,MAAM,EAC9C;IACD,+BAA+B,EAC7B,UAAU,8BAA8B,MAAM,EAC/C;IACD,4CAA4C,EAC1C,UAAU,2CAA2C,MAAM,EAC5D;IACF,CAAC;;EAEL;;;;;AAMH,MAAa,0BAA0B,kCAAkC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tanstack/table-core",
3
- "version": "9.0.0-alpha.23",
3
+ "version": "9.0.0-alpha.27",
4
4
  "description": "Headless UI for building powerful tables & datagrids for TS/JS.",
5
5
  "author": "Tanner Linsley",
6
6
  "license": "MIT",
@@ -147,6 +147,7 @@ export function constructColumnPinningFeature<
147
147
  table_getVisibleLeafColumns,
148
148
  ),
149
149
  table.store.state.columnPinning?.left,
150
+ table.store.state.columnOrder,
150
151
  ],
151
152
  },
152
153
  table_getCenterHeaderGroups: {
@@ -159,6 +160,7 @@ export function constructColumnPinningFeature<
159
160
  table_getVisibleLeafColumns,
160
161
  ),
161
162
  table.store.state.columnPinning,
163
+ table.store.state.columnOrder,
162
164
  ],
163
165
  },
164
166
  table_getRightHeaderGroups: {
@@ -171,6 +173,7 @@ export function constructColumnPinningFeature<
171
173
  table_getVisibleLeafColumns,
172
174
  ),
173
175
  table.store.state.columnPinning?.right,
176
+ table.store.state.columnOrder,
174
177
  ],
175
178
  },
176
179
  // footer groups
@@ -115,6 +115,7 @@ export function constructColumnVisibilityFeature<
115
115
  fn: () => table_getVisibleFlatColumns(table),
116
116
  memoDeps: () => [
117
117
  table.store.state.columnVisibility,
118
+ table.store.state.columnOrder,
118
119
  table.options.columns,
119
120
  ],
120
121
  },
@@ -122,6 +123,7 @@ export function constructColumnVisibilityFeature<
122
123
  fn: () => table_getVisibleLeafColumns(table),
123
124
  memoDeps: () => [
124
125
  table.store.state.columnVisibility,
126
+ table.store.state.columnOrder,
125
127
  table.options.columns,
126
128
  ],
127
129
  },