@tanstack/svelte-table 8.2.6 → 8.3.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.
- package/build/cjs/svelte-table/src/index.js +1 -0
- package/build/cjs/svelte-table/src/index.js.map +1 -1
- package/build/cjs/table-core/build/esm/index.js +67 -3
- package/build/cjs/table-core/build/esm/index.js.map +1 -1
- package/build/esm/index.js +68 -5
- package/build/esm/index.js.map +1 -1
- package/build/stats-html.html +1451 -106
- package/build/stats-react.json +48 -48
- package/build/umd/index.development.js +67 -3
- package/build/umd/index.development.js.map +1 -1
- package/build/umd/index.production.js +1 -1
- package/build/umd/index.production.js.map +1 -1
- package/package.json +2 -2
|
@@ -131,6 +131,7 @@ exports.Visibility = index.Visibility;
|
|
|
131
131
|
exports.aggregationFns = index.aggregationFns;
|
|
132
132
|
exports.buildHeaderGroups = index.buildHeaderGroups;
|
|
133
133
|
exports.createColumn = index.createColumn;
|
|
134
|
+
exports.createColumnHelper = index.createColumnHelper;
|
|
134
135
|
exports.createRow = index.createRow;
|
|
135
136
|
exports.createTable = index.createTable;
|
|
136
137
|
exports.defaultColumnSizing = index.defaultColumnSizing;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/index.ts"],"sourcesContent":["import {\n RowData,\n PartialKeys,\n TableGenerics,\n createTable,\n TableOptions,\n TableOptionsResolved,\n} from '@tanstack/table-core'\nimport Placeholder from './placeholder'\nimport { SvelteComponent } from 'svelte/internal'\nimport { readable, writable, derived, Readable, get } from 'svelte/store'\nimport { renderComponent } from './render-component'\n\nexport { renderComponent } from './render-component'\n\nexport * from '@tanstack/table-core'\n\nfunction isSvelteServerComponent(component: any) {\n return (\n typeof component === 'object' &&\n typeof component.$$render === 'function' &&\n typeof component.render === 'function'\n )\n}\n\nfunction isSvelteClientComponent(component: any) {\n let isHMR = '__SVELTE_HMR' in window\n\n return (\n component.prototype instanceof SvelteComponent ||\n (isHMR &&\n component.name?.startsWith('Proxy<') &&\n component.name?.endsWith('>'))\n )\n}\n\nfunction isSvelteComponent(component: any) {\n if (typeof document === 'undefined') {\n return isSvelteServerComponent(component)\n } else {\n return isSvelteClientComponent(component)\n }\n}\n\nfunction wrapInPlaceholder(content: any) {\n return renderComponent(Placeholder, { content })\n}\n\nexport function flexRender(component: any, props: any) {\n if (!component) return null\n\n if (isSvelteComponent(component)) {\n return renderComponent(component, props)\n }\n\n if (typeof component === 'function') {\n const result = component(props)\n\n if (isSvelteComponent(result)) {\n return result\n }\n\n return wrapInPlaceholder(result)\n }\n\n return wrapInPlaceholder(component)\n}\n\ntype ReadableOrVal<T> = T | Readable<T>\n\nexport function createSvelteTable<TData extends RowData>(\n options: ReadableOrVal<TableOptions<TData>>\n) {\n let optionsStore: Readable<TableOptions<TData>>\n\n if ('subscribe' in options) {\n optionsStore = options\n } else {\n optionsStore = readable(options)\n }\n\n let resolvedOptions: TableOptionsResolved<TData> = {\n state: {}, // Dummy state\n onStateChange: () => {}, // noop\n renderFallbackValue: null,\n ...get(optionsStore),\n }\n\n let table = createTable(resolvedOptions)\n\n let stateStore = writable(/** @type {number} */ table.initialState)\n // combine stores\n let stateOptionsStore = derived([stateStore, optionsStore], s => s)\n const tableReadable = readable(table, function start(set) {\n const unsubscribe = stateOptionsStore.subscribe(([state, options]) => {\n table.setOptions(prev => {\n return {\n ...prev,\n ...options,\n state: { ...state, ...options.state },\n // Similarly, we'll maintain both our internal state and any user-provided\n // state.\n onStateChange: updater => {\n if (updater instanceof Function) {\n stateStore.update(updater)\n } else {\n stateStore.set(updater)\n }\n\n resolvedOptions.onStateChange?.(updater)\n },\n }\n })\n\n // it didn't seem to rerender without setting the table\n set(table)\n })\n\n return function stop() {\n unsubscribe()\n }\n })\n\n return tableReadable\n}\n"],"names":["isSvelteServerComponent","component","$$render","render","isSvelteClientComponent","isHMR","window","prototype","SvelteComponent","name","startsWith","endsWith","isSvelteComponent","document","wrapInPlaceholder","content","renderComponent","Placeholder","flexRender","props","result","createSvelteTable","options","optionsStore","readable","resolvedOptions","state","onStateChange","renderFallbackValue","get","table","createTable","stateStore","writable","initialState","stateOptionsStore","derived","s","tableReadable","start","set","unsubscribe","subscribe","setOptions","prev","updater","Function","update","stop"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/index.ts"],"sourcesContent":["import {\n RowData,\n PartialKeys,\n TableGenerics,\n createTable,\n TableOptions,\n TableOptionsResolved,\n} from '@tanstack/table-core'\nimport Placeholder from './placeholder'\nimport { SvelteComponent } from 'svelte/internal'\nimport { readable, writable, derived, Readable, get } from 'svelte/store'\nimport { renderComponent } from './render-component'\n\nexport { renderComponent } from './render-component'\n\nexport * from '@tanstack/table-core'\n\nfunction isSvelteServerComponent(component: any) {\n return (\n typeof component === 'object' &&\n typeof component.$$render === 'function' &&\n typeof component.render === 'function'\n )\n}\n\nfunction isSvelteClientComponent(component: any) {\n let isHMR = '__SVELTE_HMR' in window\n\n return (\n component.prototype instanceof SvelteComponent ||\n (isHMR &&\n component.name?.startsWith('Proxy<') &&\n component.name?.endsWith('>'))\n )\n}\n\nfunction isSvelteComponent(component: any) {\n if (typeof document === 'undefined') {\n return isSvelteServerComponent(component)\n } else {\n return isSvelteClientComponent(component)\n }\n}\n\nfunction wrapInPlaceholder(content: any) {\n return renderComponent(Placeholder, { content })\n}\n\nexport function flexRender(component: any, props: any) {\n if (!component) return null\n\n if (isSvelteComponent(component)) {\n return renderComponent(component, props)\n }\n\n if (typeof component === 'function') {\n const result = component(props)\n\n if (isSvelteComponent(result)) {\n return result\n }\n\n return wrapInPlaceholder(result)\n }\n\n return wrapInPlaceholder(component)\n}\n\ntype ReadableOrVal<T> = T | Readable<T>\n\nexport function createSvelteTable<TData extends RowData>(\n options: ReadableOrVal<TableOptions<TData>>\n) {\n let optionsStore: Readable<TableOptions<TData>>\n\n if ('subscribe' in options) {\n optionsStore = options\n } else {\n optionsStore = readable(options)\n }\n\n let resolvedOptions: TableOptionsResolved<TData> = {\n state: {}, // Dummy state\n onStateChange: () => {}, // noop\n renderFallbackValue: null,\n ...get(optionsStore),\n }\n\n let table = createTable(resolvedOptions)\n\n let stateStore = writable(/** @type {number} */ table.initialState)\n // combine stores\n let stateOptionsStore = derived([stateStore, optionsStore], s => s)\n const tableReadable = readable(table, function start(set) {\n const unsubscribe = stateOptionsStore.subscribe(([state, options]) => {\n table.setOptions(prev => {\n return {\n ...prev,\n ...options,\n state: { ...state, ...options.state },\n // Similarly, we'll maintain both our internal state and any user-provided\n // state.\n onStateChange: updater => {\n if (updater instanceof Function) {\n stateStore.update(updater)\n } else {\n stateStore.set(updater)\n }\n\n resolvedOptions.onStateChange?.(updater)\n },\n }\n })\n\n // it didn't seem to rerender without setting the table\n set(table)\n })\n\n return function stop() {\n unsubscribe()\n }\n })\n\n return tableReadable\n}\n"],"names":["isSvelteServerComponent","component","$$render","render","isSvelteClientComponent","isHMR","window","prototype","SvelteComponent","name","startsWith","endsWith","isSvelteComponent","document","wrapInPlaceholder","content","renderComponent","Placeholder","flexRender","props","result","createSvelteTable","options","optionsStore","readable","resolvedOptions","state","onStateChange","renderFallbackValue","get","table","createTable","stateStore","writable","initialState","stateOptionsStore","derived","s","tableReadable","start","set","unsubscribe","subscribe","setOptions","prev","updater","Function","update","stop"],"mappings":"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"}
|
|
@@ -22,6 +22,9 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
22
22
|
*
|
|
23
23
|
* @license MIT
|
|
24
24
|
*/
|
|
25
|
+
// Is this type a tuple?
|
|
26
|
+
// If this type is a tuple, what indices are allowed?
|
|
27
|
+
///
|
|
25
28
|
function functionalUpdate(updater, input) {
|
|
26
29
|
return typeof updater === 'function' ? updater(input) : updater;
|
|
27
30
|
}
|
|
@@ -107,13 +110,27 @@ function createColumn(table, columnDef, depth, parent) {
|
|
|
107
110
|
const resolvedColumnDef = { ...defaultColumn,
|
|
108
111
|
...columnDef
|
|
109
112
|
};
|
|
110
|
-
|
|
113
|
+
const accessorKey = resolvedColumnDef.accessorKey;
|
|
114
|
+
let id = (_ref = (_resolvedColumnDef$id = resolvedColumnDef.id) != null ? _resolvedColumnDef$id : accessorKey ? accessorKey.replace('.', '_') : undefined) != null ? _ref : typeof resolvedColumnDef.header === 'string' ? resolvedColumnDef.header : undefined;
|
|
111
115
|
let accessorFn;
|
|
112
116
|
|
|
113
117
|
if (resolvedColumnDef.accessorFn) {
|
|
114
118
|
accessorFn = resolvedColumnDef.accessorFn;
|
|
115
|
-
} else if (
|
|
116
|
-
|
|
119
|
+
} else if (accessorKey) {
|
|
120
|
+
// Support deep accessor keys
|
|
121
|
+
if (accessorKey.includes('.')) {
|
|
122
|
+
accessorFn = originalRow => {
|
|
123
|
+
let result = originalRow;
|
|
124
|
+
|
|
125
|
+
for (const key of accessorKey.split('.')) {
|
|
126
|
+
result = result[key];
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
return result;
|
|
130
|
+
};
|
|
131
|
+
} else {
|
|
132
|
+
accessorFn = originalRow => originalRow[resolvedColumnDef.accessorKey];
|
|
133
|
+
}
|
|
117
134
|
}
|
|
118
135
|
|
|
119
136
|
if (!id) {
|
|
@@ -3103,6 +3120,52 @@ const createRow = (table, id, original, rowIndex, depth, subRows) => {
|
|
|
3103
3120
|
return row;
|
|
3104
3121
|
};
|
|
3105
3122
|
|
|
3123
|
+
// type Person = {
|
|
3124
|
+
// firstName: string
|
|
3125
|
+
// lastName: string
|
|
3126
|
+
// age: number
|
|
3127
|
+
// visits: number
|
|
3128
|
+
// status: string
|
|
3129
|
+
// progress: number
|
|
3130
|
+
// nested: {
|
|
3131
|
+
// foo: [
|
|
3132
|
+
// {
|
|
3133
|
+
// bar: 'bar'
|
|
3134
|
+
// }
|
|
3135
|
+
// ]
|
|
3136
|
+
// bar: { subBar: boolean }[]
|
|
3137
|
+
// baz: {
|
|
3138
|
+
// foo: 'foo'
|
|
3139
|
+
// bar: {
|
|
3140
|
+
// baz: 'baz'
|
|
3141
|
+
// }
|
|
3142
|
+
// }
|
|
3143
|
+
// }
|
|
3144
|
+
// }
|
|
3145
|
+
// const test: DeepKeys<Person> = 'nested.foo.0.bar'
|
|
3146
|
+
// const test2: DeepKeys<Person> = 'nested.bar'
|
|
3147
|
+
// const helper = createColumnHelper<Person>()
|
|
3148
|
+
// helper.accessor('nested.foo', {
|
|
3149
|
+
// cell: info => info.getValue(),
|
|
3150
|
+
// })
|
|
3151
|
+
// helper.accessor('nested.foo.0.bar', {
|
|
3152
|
+
// cell: info => info.getValue(),
|
|
3153
|
+
// })
|
|
3154
|
+
// helper.accessor('nested.bar', {
|
|
3155
|
+
// cell: info => info.getValue(),
|
|
3156
|
+
// })
|
|
3157
|
+
function createColumnHelper() {
|
|
3158
|
+
return {
|
|
3159
|
+
accessor: (accessor, column) => {
|
|
3160
|
+
return typeof accessor === 'function' ? { ...column,
|
|
3161
|
+
accessorFn: accessor
|
|
3162
|
+
} : { ...column,
|
|
3163
|
+
accessorKey: accessor
|
|
3164
|
+
};
|
|
3165
|
+
}
|
|
3166
|
+
};
|
|
3167
|
+
}
|
|
3168
|
+
|
|
3106
3169
|
function getCoreRowModel() {
|
|
3107
3170
|
return table => memo(() => [table.options.data], data => {
|
|
3108
3171
|
const rowModel = {
|
|
@@ -3812,6 +3875,7 @@ exports.Visibility = Visibility;
|
|
|
3812
3875
|
exports.aggregationFns = aggregationFns;
|
|
3813
3876
|
exports.buildHeaderGroups = buildHeaderGroups;
|
|
3814
3877
|
exports.createColumn = createColumn;
|
|
3878
|
+
exports.createColumnHelper = createColumnHelper;
|
|
3815
3879
|
exports.createRow = createRow;
|
|
3816
3880
|
exports.createTable = createTable;
|
|
3817
3881
|
exports.defaultColumnSizing = defaultColumnSizing;
|