@tanstack/vue-table 8.0.11 → 8.1.0

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.
@@ -16,7 +16,7 @@ var index = require('../../table-core/build/esm/index.js');
16
16
  var vue = require('vue');
17
17
  var mergeProxy = require('./merge-proxy.js');
18
18
 
19
- function render(Comp, props) {
19
+ function flexRender(Comp, props) {
20
20
  if (!Comp) return null;
21
21
 
22
22
  if (typeof Comp === 'function') {
@@ -25,17 +25,12 @@ function render(Comp, props) {
25
25
 
26
26
  return Comp;
27
27
  }
28
-
29
- const createTable = index.createTableFactory({
30
- render
31
- });
32
- function useTableInstance(table, options) {
33
- const resolvedOptions = mergeProxy.mergeProxy({ ...table.options,
28
+ function useVueTable(options) {
29
+ const resolvedOptions = mergeProxy.mergeProxy({
34
30
  state: {},
35
31
  // Dummy state
36
32
  onStateChange: () => {},
37
33
  // noop
38
- render,
39
34
  renderFallbackValue: null,
40
35
 
41
36
  mergeOptions(defaultOptions, options) {
@@ -43,11 +38,11 @@ function useTableInstance(table, options) {
43
38
  }
44
39
 
45
40
  }, options);
46
- const instance = index.createTableInstance(resolvedOptions); // can't use `reactive` because update needs to be immutable
41
+ const table = index.createTable(resolvedOptions); // can't use `reactive` because update needs to be immutable
47
42
 
48
- const state = vue.ref(instance.initialState);
43
+ const state = vue.ref(table.initialState);
49
44
  vue.watchEffect(() => {
50
- instance.setOptions(prev => {
45
+ table.setOptions(prev => {
51
46
  var _options$state;
52
47
 
53
48
  const stateProxy = new Proxy({}, {
@@ -72,10 +67,10 @@ function useTableInstance(table, options) {
72
67
  });
73
68
  });
74
69
  }); // onBeforeUpdate(() => {
75
- // instance.willUpdate()
70
+ // table.willUpdate()
76
71
  // })
77
72
 
78
- return instance;
73
+ return table;
79
74
  }
80
75
 
81
76
  exports.ColumnSizing = index.ColumnSizing;
@@ -93,8 +88,7 @@ exports.aggregationFns = index.aggregationFns;
93
88
  exports.buildHeaderGroups = index.buildHeaderGroups;
94
89
  exports.createColumn = index.createColumn;
95
90
  exports.createRow = index.createRow;
96
- exports.createTableFactory = index.createTableFactory;
97
- exports.createTableInstance = index.createTableInstance;
91
+ exports.createTable = index.createTable;
98
92
  exports.defaultColumnSizing = index.defaultColumnSizing;
99
93
  exports.expandRows = index.expandRows;
100
94
  exports.filterFns = index.filterFns;
@@ -111,6 +105,7 @@ exports.getPaginationRowModel = index.getPaginationRowModel;
111
105
  exports.getSortedRowModel = index.getSortedRowModel;
112
106
  exports.isFunction = index.isFunction;
113
107
  exports.isRowSelected = index.isRowSelected;
108
+ exports.isSubRowSelected = index.isSubRowSelected;
114
109
  exports.makeStateUpdater = index.makeStateUpdater;
115
110
  exports.memo = index.memo;
116
111
  exports.noop = index.noop;
@@ -120,6 +115,6 @@ exports.reSplitAlphaNumeric = index.reSplitAlphaNumeric;
120
115
  exports.selectRowsFn = index.selectRowsFn;
121
116
  exports.shouldAutoRemoveFilter = index.shouldAutoRemoveFilter;
122
117
  exports.sortingFns = index.sortingFns;
123
- exports.createTable = createTable;
124
- exports.useTableInstance = useTableInstance;
118
+ exports.flexRender = flexRender;
119
+ exports.useVueTable = useVueTable;
125
120
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/index.ts"],"sourcesContent":["import {\n TableGenerics,\n TableOptions,\n PartialKeys,\n Table,\n createTableInstance,\n createTableFactory,\n TableOptionsResolved,\n} from '@tanstack/table-core'\nimport { h, watchEffect, ref, VNode } from 'vue'\nimport { mergeProxy } from './merge-proxy'\n\nexport * from '@tanstack/table-core'\n\nfunction render<TProps extends {}>(\n Comp: any,\n props: TProps\n): VNode | string | number | boolean | null {\n if (!Comp) return null\n\n if (typeof Comp === 'function') {\n return h(Comp, props)\n }\n\n return Comp\n}\n\nexport const createTable = createTableFactory({ render })\n\nexport function useTableInstance<TGenerics extends TableGenerics>(\n table: Table<TGenerics>,\n options: TableOptions<TGenerics>\n) {\n const resolvedOptions: TableOptionsResolved<TGenerics> = mergeProxy(\n {\n ...table.options,\n state: {}, // Dummy state\n onStateChange: () => {}, // noop\n render,\n renderFallbackValue: null,\n mergeOptions(\n defaultOptions: TableOptions<TGenerics>,\n options: TableOptions<TGenerics>\n ) {\n return mergeProxy(defaultOptions, options)\n },\n },\n options\n )\n\n const instance = createTableInstance<TGenerics>(resolvedOptions)\n // can't use `reactive` because update needs to be immutable\n const state = ref(instance.initialState)\n\n watchEffect(() => {\n instance.setOptions(prev => {\n const stateProxy = new Proxy({} as typeof state.value, {\n get: (_, prop) => state.value[prop as keyof typeof state.value],\n })\n\n return mergeProxy(prev, options, {\n // merge the initialState and `options.state`\n // create a new proxy on each `setOptions` call\n // and get the value from state on each property access\n state: mergeProxy(stateProxy, options.state ?? {}),\n // Similarly, we'll maintain both our internal state and any user-provided\n // state.\n onStateChange: (updater: any) => {\n if (updater instanceof Function) {\n state.value = updater(state.value)\n } else {\n state.value = updater\n }\n\n options.onStateChange?.(updater)\n },\n })\n })\n })\n\n // onBeforeUpdate(() => {\n // instance.willUpdate()\n // })\n\n return instance\n}\n"],"names":["render","Comp","props","h","createTable","createTableFactory","useTableInstance","table","options","resolvedOptions","mergeProxy","state","onStateChange","renderFallbackValue","mergeOptions","defaultOptions","instance","createTableInstance","ref","initialState","watchEffect","setOptions","prev","stateProxy","Proxy","get","_","prop","value","updater","Function"],"mappings":";;;;;;;;;;;;;;;;;;AAcA,SAASA,MAAT,CACEC,IADF,EAEEC,KAFF,EAG4C;AAC1C,EAAA,IAAI,CAACD,IAAL,EAAW,OAAO,IAAP,CAAA;;AAEX,EAAA,IAAI,OAAOA,IAAP,KAAgB,UAApB,EAAgC;AAC9B,IAAA,OAAOE,KAAC,CAACF,IAAD,EAAOC,KAAP,CAAR,CAAA;AACD,GAAA;;AAED,EAAA,OAAOD,IAAP,CAAA;AACD,CAAA;;AAEYG,MAAAA,WAAW,GAAGC,wBAAkB,CAAC;AAAEL,EAAAA,MAAAA;AAAF,CAAD,EAAtC;AAEA,SAASM,gBAAT,CACLC,KADK,EAELC,OAFK,EAGL;EACA,MAAMC,eAAgD,GAAGC,qBAAU,CACjE,EACE,GAAGH,KAAK,CAACC,OADX;AAEEG,IAAAA,KAAK,EAAE,EAFT;AAEa;IACXC,aAAa,EAAE,MAAM,EAHvB;AAG2B;IACzBZ,MAJF;AAKEa,IAAAA,mBAAmB,EAAE,IALvB;;AAMEC,IAAAA,YAAY,CACVC,cADU,EAEVP,OAFU,EAGV;AACA,MAAA,OAAOE,qBAAU,CAACK,cAAD,EAAiBP,OAAjB,CAAjB,CAAA;AACD,KAAA;;GAZ8D,EAcjEA,OAdiE,CAAnE,CAAA;AAiBA,EAAA,MAAMQ,QAAQ,GAAGC,yBAAmB,CAAYR,eAAZ,CAApC,CAlBA;;AAoBA,EAAA,MAAME,KAAK,GAAGO,OAAG,CAACF,QAAQ,CAACG,YAAV,CAAjB,CAAA;AAEAC,EAAAA,eAAW,CAAC,MAAM;AAChBJ,IAAAA,QAAQ,CAACK,UAAT,CAAoBC,IAAI,IAAI;AAAA,MAAA,IAAA,cAAA,CAAA;;AAC1B,MAAA,MAAMC,UAAU,GAAG,IAAIC,KAAJ,CAAU,EAAV,EAAoC;QACrDC,GAAG,EAAE,CAACC,CAAD,EAAIC,IAAJ,KAAahB,KAAK,CAACiB,KAAN,CAAYD,IAAZ,CAAA;AADmC,OAApC,CAAnB,CAAA;AAIA,MAAA,OAAOjB,qBAAU,CAACY,IAAD,EAAOd,OAAP,EAAgB;AAC/B;AACA;AACA;QACAG,KAAK,EAAED,qBAAU,CAACa,UAAD,EAAA,CAAA,cAAA,GAAaf,OAAO,CAACG,KAArB,KAA8B,IAAA,GAAA,cAAA,GAAA,EAA9B,CAJc;AAK/B;AACA;QACAC,aAAa,EAAGiB,OAAD,IAAkB;UAC/B,IAAIA,OAAO,YAAYC,QAAvB,EAAiC;YAC/BnB,KAAK,CAACiB,KAAN,GAAcC,OAAO,CAAClB,KAAK,CAACiB,KAAP,CAArB,CAAA;AACD,WAFD,MAEO;YACLjB,KAAK,CAACiB,KAAN,GAAcC,OAAd,CAAA;AACD,WAAA;;AAEDrB,UAAAA,OAAO,CAACI,aAAR,IAAA,IAAA,GAAA,KAAA,CAAA,GAAAJ,OAAO,CAACI,aAAR,CAAwBiB,OAAxB,CAAA,CAAA;AACD,SAAA;AAf8B,OAAhB,CAAjB,CAAA;KALF,CAAA,CAAA;GADS,CAAX,CAtBA;AAiDA;AACA;;AAEA,EAAA,OAAOb,QAAP,CAAA;AACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/index.ts"],"sourcesContent":["import {\n TableOptions,\n createTable,\n TableOptionsResolved,\n RowData,\n} from '@tanstack/table-core'\nimport { h, watchEffect, ref, VNode } from 'vue'\nimport { mergeProxy } from './merge-proxy'\n\nexport * from '@tanstack/table-core'\n\nexport function flexRender<TProps extends {}>(\n Comp: any,\n props: TProps\n): VNode | string | number | boolean | null {\n if (!Comp) return null\n\n if (typeof Comp === 'function') {\n return h(Comp, props)\n }\n\n return Comp\n}\n\nexport function useVueTable<TData extends RowData>(\n options: TableOptions<TData>\n) {\n const resolvedOptions: TableOptionsResolved<TData> = mergeProxy(\n {\n state: {}, // Dummy state\n onStateChange: () => {}, // noop\n renderFallbackValue: null,\n mergeOptions(\n defaultOptions: TableOptions<TData>,\n options: TableOptions<TData>\n ) {\n return mergeProxy(defaultOptions, options)\n },\n },\n options\n )\n\n const table = createTable<TData>(resolvedOptions)\n // can't use `reactive` because update needs to be immutable\n const state = ref(table.initialState)\n\n watchEffect(() => {\n table.setOptions(prev => {\n const stateProxy = new Proxy({} as typeof state.value, {\n get: (_, prop) => state.value[prop as keyof typeof state.value],\n })\n\n return mergeProxy(prev, options, {\n // merge the initialState and `options.state`\n // create a new proxy on each `setOptions` call\n // and get the value from state on each property access\n state: mergeProxy(stateProxy, options.state ?? {}),\n // Similarly, we'll maintain both our internal state and any user-provided\n // state.\n onStateChange: (updater: any) => {\n if (updater instanceof Function) {\n state.value = updater(state.value)\n } else {\n state.value = updater\n }\n\n options.onStateChange?.(updater)\n },\n })\n })\n })\n\n // onBeforeUpdate(() => {\n // table.willUpdate()\n // })\n\n return table\n}\n"],"names":["flexRender","Comp","props","h","useVueTable","options","resolvedOptions","mergeProxy","state","onStateChange","renderFallbackValue","mergeOptions","defaultOptions","table","createTable","ref","initialState","watchEffect","setOptions","prev","stateProxy","Proxy","get","_","prop","value","updater","Function"],"mappings":";;;;;;;;;;;;;;;;;;AAWO,SAASA,UAAT,CACLC,IADK,EAELC,KAFK,EAGqC;AAC1C,EAAA,IAAI,CAACD,IAAL,EAAW,OAAO,IAAP,CAAA;;AAEX,EAAA,IAAI,OAAOA,IAAP,KAAgB,UAApB,EAAgC;AAC9B,IAAA,OAAOE,KAAC,CAACF,IAAD,EAAOC,KAAP,CAAR,CAAA;AACD,GAAA;;AAED,EAAA,OAAOD,IAAP,CAAA;AACD,CAAA;AAEM,SAASG,WAAT,CACLC,OADK,EAEL;EACA,MAAMC,eAA4C,GAAGC,qBAAU,CAC7D;AACEC,IAAAA,KAAK,EAAE,EADT;AACa;IACXC,aAAa,EAAE,MAAM,EAFvB;AAE2B;AACzBC,IAAAA,mBAAmB,EAAE,IAHvB;;AAIEC,IAAAA,YAAY,CACVC,cADU,EAEVP,OAFU,EAGV;AACA,MAAA,OAAOE,qBAAU,CAACK,cAAD,EAAiBP,OAAjB,CAAjB,CAAA;AACD,KAAA;;GAV0D,EAY7DA,OAZ6D,CAA/D,CAAA;AAeA,EAAA,MAAMQ,KAAK,GAAGC,iBAAW,CAAQR,eAAR,CAAzB,CAhBA;;AAkBA,EAAA,MAAME,KAAK,GAAGO,OAAG,CAACF,KAAK,CAACG,YAAP,CAAjB,CAAA;AAEAC,EAAAA,eAAW,CAAC,MAAM;AAChBJ,IAAAA,KAAK,CAACK,UAAN,CAAiBC,IAAI,IAAI;AAAA,MAAA,IAAA,cAAA,CAAA;;AACvB,MAAA,MAAMC,UAAU,GAAG,IAAIC,KAAJ,CAAU,EAAV,EAAoC;QACrDC,GAAG,EAAE,CAACC,CAAD,EAAIC,IAAJ,KAAahB,KAAK,CAACiB,KAAN,CAAYD,IAAZ,CAAA;AADmC,OAApC,CAAnB,CAAA;AAIA,MAAA,OAAOjB,qBAAU,CAACY,IAAD,EAAOd,OAAP,EAAgB;AAC/B;AACA;AACA;QACAG,KAAK,EAAED,qBAAU,CAACa,UAAD,EAAA,CAAA,cAAA,GAAaf,OAAO,CAACG,KAArB,KAA8B,IAAA,GAAA,cAAA,GAAA,EAA9B,CAJc;AAK/B;AACA;QACAC,aAAa,EAAGiB,OAAD,IAAkB;UAC/B,IAAIA,OAAO,YAAYC,QAAvB,EAAiC;YAC/BnB,KAAK,CAACiB,KAAN,GAAcC,OAAO,CAAClB,KAAK,CAACiB,KAAP,CAArB,CAAA;AACD,WAFD,MAEO;YACLjB,KAAK,CAACiB,KAAN,GAAcC,OAAd,CAAA;AACD,WAAA;;AAEDrB,UAAAA,OAAO,CAACI,aAAR,IAAA,IAAA,GAAA,KAAA,CAAA,GAAAJ,OAAO,CAACI,aAAR,CAAwBiB,OAAxB,CAAA,CAAA;AACD,SAAA;AAf8B,OAAhB,CAAjB,CAAA;KALF,CAAA,CAAA;GADS,CAAX,CApBA;AA+CA;AACA;;AAEA,EAAA,OAAOb,KAAP,CAAA;AACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}