compote-ui 0.65.1 → 0.67.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.
Files changed (32) hide show
  1. package/dist/components/app-shell/app-shell-aside.svelte +16 -0
  2. package/dist/components/app-shell/app-shell-aside.svelte.d.ts +4 -0
  3. package/dist/components/app-shell/app-shell-footer.svelte +16 -0
  4. package/dist/components/app-shell/app-shell-footer.svelte.d.ts +4 -0
  5. package/dist/components/app-shell/app-shell-header.svelte +16 -0
  6. package/dist/components/app-shell/app-shell-header.svelte.d.ts +4 -0
  7. package/dist/components/app-shell/app-shell-main.svelte +10 -0
  8. package/dist/components/app-shell/app-shell-main.svelte.d.ts +4 -0
  9. package/dist/components/app-shell/app-shell-navbar.svelte +16 -0
  10. package/dist/components/app-shell/app-shell-navbar.svelte.d.ts +4 -0
  11. package/dist/components/app-shell/app-shell-section.svelte +17 -0
  12. package/dist/components/app-shell/app-shell-section.svelte.d.ts +7 -0
  13. package/dist/components/app-shell/app-shell.svelte +16 -0
  14. package/dist/components/app-shell/app-shell.svelte.d.ts +4 -0
  15. package/dist/components/app-shell/index.d.ts +7 -0
  16. package/dist/components/app-shell/index.js +7 -0
  17. package/dist/components/data-table-v9/create-table.svelte.d.ts +24 -46
  18. package/dist/components/data-table-v9/create-table.svelte.js +19 -2
  19. package/dist/components/data-table-v9/data-table-utils.d.ts +24 -46
  20. package/dist/components/data-table-v9/data-table-utils.js +11 -11
  21. package/dist/components/data-table-v9/features.d.ts +24 -46
  22. package/dist/components/data-table-v9/table-view-state.svelte.d.ts +96 -184
  23. package/dist/components/data-table-v9/table-view-state.svelte.js +5 -5
  24. package/dist/components/nav-rail/index.d.ts +2 -0
  25. package/dist/components/nav-rail/index.js +2 -0
  26. package/dist/components/nav-rail/nav-rail-item.svelte +54 -0
  27. package/dist/components/nav-rail/nav-rail-item.svelte.d.ts +12 -0
  28. package/dist/components/nav-rail/nav-rail.svelte +23 -0
  29. package/dist/components/nav-rail/nav-rail.svelte.d.ts +7 -0
  30. package/dist/index.d.ts +2 -0
  31. package/dist/index.js +2 -0
  32. package/package.json +13 -13
@@ -0,0 +1,16 @@
1
+ <script lang="ts">
2
+ import type { HTMLAttributes } from 'svelte/elements';
3
+ import { cn } from 'tailwind-variants';
4
+
5
+ let { class: className, children, ...rest }: HTMLAttributes<HTMLElement> = $props();
6
+ </script>
7
+
8
+ <aside
9
+ class={cn(
10
+ 'col-start-3 row-start-2 flex w-72 flex-col overflow-hidden border-l border-border bg-surface-1',
11
+ className
12
+ )}
13
+ {...rest}
14
+ >
15
+ {@render children?.()}
16
+ </aside>
@@ -0,0 +1,4 @@
1
+ import type { HTMLAttributes } from 'svelte/elements';
2
+ declare const AppShellAside: import("svelte").Component<HTMLAttributes<HTMLElement>, {}, "">;
3
+ type AppShellAside = ReturnType<typeof AppShellAside>;
4
+ export default AppShellAside;
@@ -0,0 +1,16 @@
1
+ <script lang="ts">
2
+ import type { HTMLAttributes } from 'svelte/elements';
3
+ import { cn } from 'tailwind-variants';
4
+
5
+ let { class: className, children, ...rest }: HTMLAttributes<HTMLElement> = $props();
6
+ </script>
7
+
8
+ <footer
9
+ class={cn(
10
+ 'col-span-full row-start-3 flex items-center border-t border-border bg-surface-1 px-4',
11
+ className
12
+ )}
13
+ {...rest}
14
+ >
15
+ {@render children?.()}
16
+ </footer>
@@ -0,0 +1,4 @@
1
+ import type { HTMLAttributes } from 'svelte/elements';
2
+ declare const AppShellFooter: import("svelte").Component<HTMLAttributes<HTMLElement>, {}, "">;
3
+ type AppShellFooter = ReturnType<typeof AppShellFooter>;
4
+ export default AppShellFooter;
@@ -0,0 +1,16 @@
1
+ <script lang="ts">
2
+ import type { HTMLAttributes } from 'svelte/elements';
3
+ import { cn } from 'tailwind-variants';
4
+
5
+ let { class: className, children, ...rest }: HTMLAttributes<HTMLElement> = $props();
6
+ </script>
7
+
8
+ <header
9
+ class={cn(
10
+ 'col-span-full row-start-1 flex items-center border-b border-border bg-surface-1 px-4',
11
+ className
12
+ )}
13
+ {...rest}
14
+ >
15
+ {@render children?.()}
16
+ </header>
@@ -0,0 +1,4 @@
1
+ import type { HTMLAttributes } from 'svelte/elements';
2
+ declare const AppShellHeader: import("svelte").Component<HTMLAttributes<HTMLElement>, {}, "">;
3
+ type AppShellHeader = ReturnType<typeof AppShellHeader>;
4
+ export default AppShellHeader;
@@ -0,0 +1,10 @@
1
+ <script lang="ts">
2
+ import type { HTMLAttributes } from 'svelte/elements';
3
+ import { cn } from 'tailwind-variants';
4
+
5
+ let { class: className, children, ...rest }: HTMLAttributes<HTMLElement> = $props();
6
+ </script>
7
+
8
+ <main class={cn('col-start-2 row-start-2 min-w-0 overflow-y-auto p-6', className)} {...rest}>
9
+ {@render children?.()}
10
+ </main>
@@ -0,0 +1,4 @@
1
+ import type { HTMLAttributes } from 'svelte/elements';
2
+ declare const AppShellMain: import("svelte").Component<HTMLAttributes<HTMLElement>, {}, "">;
3
+ type AppShellMain = ReturnType<typeof AppShellMain>;
4
+ export default AppShellMain;
@@ -0,0 +1,16 @@
1
+ <script lang="ts">
2
+ import type { HTMLAttributes } from 'svelte/elements';
3
+ import { cn } from 'tailwind-variants';
4
+
5
+ let { class: className, children, ...rest }: HTMLAttributes<HTMLElement> = $props();
6
+ </script>
7
+
8
+ <nav
9
+ class={cn(
10
+ 'col-start-1 row-start-2 flex w-60 flex-col overflow-hidden border-r border-border bg-surface-1',
11
+ className
12
+ )}
13
+ {...rest}
14
+ >
15
+ {@render children?.()}
16
+ </nav>
@@ -0,0 +1,4 @@
1
+ import type { HTMLAttributes } from 'svelte/elements';
2
+ declare const AppShellNavbar: import("svelte").Component<HTMLAttributes<HTMLElement>, {}, "">;
3
+ type AppShellNavbar = ReturnType<typeof AppShellNavbar>;
4
+ export default AppShellNavbar;
@@ -0,0 +1,17 @@
1
+ <script lang="ts">
2
+ import type { HTMLAttributes } from 'svelte/elements';
3
+ import { cn } from 'tailwind-variants';
4
+
5
+ type Props = HTMLAttributes<HTMLDivElement> & {
6
+ grow?: boolean;
7
+ };
8
+
9
+ let { grow = false, class: className, children, ...rest }: Props = $props();
10
+ </script>
11
+
12
+ <div
13
+ class={cn(grow ? 'min-h-0 flex-1 overflow-x-hidden overflow-y-auto' : 'shrink-0', className)}
14
+ {...rest}
15
+ >
16
+ {@render children?.()}
17
+ </div>
@@ -0,0 +1,7 @@
1
+ import type { HTMLAttributes } from 'svelte/elements';
2
+ type Props = HTMLAttributes<HTMLDivElement> & {
3
+ grow?: boolean;
4
+ };
5
+ declare const AppShellSection: import("svelte").Component<Props, {}, "">;
6
+ type AppShellSection = ReturnType<typeof AppShellSection>;
7
+ export default AppShellSection;
@@ -0,0 +1,16 @@
1
+ <script lang="ts">
2
+ import type { HTMLAttributes } from 'svelte/elements';
3
+ import { cn } from 'tailwind-variants';
4
+
5
+ let { class: className, children, ...rest }: HTMLAttributes<HTMLDivElement> = $props();
6
+ </script>
7
+
8
+ <div
9
+ class={cn(
10
+ 'relative grid h-dvh grid-cols-[auto_1fr_auto] grid-rows-[auto_1fr_auto] bg-surface-document text-ink',
11
+ className
12
+ )}
13
+ {...rest}
14
+ >
15
+ {@render children?.()}
16
+ </div>
@@ -0,0 +1,4 @@
1
+ import type { HTMLAttributes } from 'svelte/elements';
2
+ declare const AppShell: import("svelte").Component<HTMLAttributes<HTMLDivElement>, {}, "">;
3
+ type AppShell = ReturnType<typeof AppShell>;
4
+ export default AppShell;
@@ -0,0 +1,7 @@
1
+ export { default as Root } from './app-shell.svelte';
2
+ export { default as Header } from './app-shell-header.svelte';
3
+ export { default as Navbar } from './app-shell-navbar.svelte';
4
+ export { default as Main } from './app-shell-main.svelte';
5
+ export { default as Aside } from './app-shell-aside.svelte';
6
+ export { default as Footer } from './app-shell-footer.svelte';
7
+ export { default as Section } from './app-shell-section.svelte';
@@ -0,0 +1,7 @@
1
+ export { default as Root } from './app-shell.svelte';
2
+ export { default as Header } from './app-shell-header.svelte';
3
+ export { default as Navbar } from './app-shell-navbar.svelte';
4
+ export { default as Main } from './app-shell-main.svelte';
5
+ export { default as Aside } from './app-shell-aside.svelte';
6
+ export { default as Footer } from './app-shell-footer.svelte';
7
+ export { default as Section } from './app-shell-section.svelte';
@@ -44,54 +44,32 @@ export declare function createTable<T extends RowData>(options: CreateDataTableO
44
44
  facetedUniqueValues: (table: import("@tanstack/table-core").Table<import("@tanstack/table-core").TableFeatures, any>, columnId: string) => () => Map<any, number>;
45
45
  facetedMinMaxValues: (table: import("@tanstack/table-core").Table<import("@tanstack/table-core").TableFeatures, any>, columnId: string) => () => undefined | [number, number];
46
46
  sortFns: {
47
- alphanumeric: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => number;
48
- alphanumericCaseSensitive: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => number;
49
- basic: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
50
- datetime: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
51
- text: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
52
- textCaseSensitive: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
47
+ alphanumeric: import("@tanstack/table-core").CreatedSortFn<any, any>;
48
+ alphanumericCaseSensitive: import("@tanstack/table-core").CreatedSortFn<any, any>;
49
+ basic: import("@tanstack/table-core").CreatedSortFn<any, any>;
50
+ datetime: import("@tanstack/table-core").CreatedSortFn<any, any>;
51
+ text: import("@tanstack/table-core").CreatedSortFn<any, any>;
52
+ textCaseSensitive: import("@tanstack/table-core").CreatedSortFn<any, any>;
53
53
  };
54
54
  filterFns: {
55
- arrIncludes: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
56
- autoRemove: (val: any) => boolean;
57
- };
58
- arrIncludesAll: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
59
- autoRemove: (val: any) => boolean;
60
- };
61
- arrHas: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
62
- autoRemove: (val: any) => boolean;
63
- };
64
- arrIncludesSome: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
65
- autoRemove: (val: any) => boolean;
66
- };
67
- between: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string, filterValues: [unknown, unknown]) => boolean) & {
68
- autoRemove: (val: any) => boolean;
69
- };
70
- betweenInclusive: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string, filterValues: [unknown, unknown]) => boolean) & {
71
- autoRemove: (val: any) => boolean;
72
- };
73
- equals: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
74
- autoRemove: (val: any) => boolean;
75
- };
76
- equalsString: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
77
- autoRemove: (val: any) => boolean;
78
- resolveFilterValue: (val: any) => string;
79
- };
80
- inNumberRange: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string, filterValue: [number, number]) => boolean) & {
81
- resolveFilterValue: (val: [any, any]) => readonly [number, number];
82
- autoRemove: (val: any) => boolean;
83
- };
84
- includesString: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
85
- autoRemove: (val: any) => boolean;
86
- resolveFilterValue: (val: any) => string;
87
- };
88
- includesStringSensitive: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
89
- autoRemove: (val: any) => boolean;
90
- resolveFilterValue: (val: any) => string;
91
- };
92
- weakEquals: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
93
- autoRemove: (val: any) => boolean;
94
- };
55
+ arrIncludes: import("@tanstack/table-core").CreatedFilterFn<any, any>;
56
+ arrIncludesAll: import("@tanstack/table-core").CreatedFilterFn<any, any>;
57
+ arrHas: import("@tanstack/table-core").CreatedFilterFn<any, any>;
58
+ arrIncludesSome: import("@tanstack/table-core").CreatedFilterFn<any, any>;
59
+ between: import("@tanstack/table-core").CreatedFilterFn<any, any>;
60
+ betweenInclusive: import("@tanstack/table-core").CreatedFilterFn<any, any>;
61
+ empty: import("@tanstack/table-core").CreatedFilterFn<any, any>;
62
+ endsWith: import("@tanstack/table-core").CreatedFilterFn<any, any>;
63
+ equals: import("@tanstack/table-core").CreatedFilterFn<any, any>;
64
+ equalsString: import("@tanstack/table-core").CreatedFilterFn<any, any>;
65
+ equalsStringSensitive: import("@tanstack/table-core").CreatedFilterFn<any, any>;
66
+ inDateRange: import("@tanstack/table-core").CreatedFilterFn<any, any>;
67
+ inNumberRange: import("@tanstack/table-core").CreatedFilterFn<any, any>;
68
+ includesString: import("@tanstack/table-core").CreatedFilterFn<any, any>;
69
+ includesStringSensitive: import("@tanstack/table-core").CreatedFilterFn<any, any>;
70
+ notEmpty: import("@tanstack/table-core").CreatedFilterFn<any, any>;
71
+ startsWith: import("@tanstack/table-core").CreatedFilterFn<any, any>;
72
+ weakEquals: import("@tanstack/table-core").CreatedFilterFn<any, any>;
95
73
  };
96
74
  columnMeta: DataTableColumnMeta;
97
75
  }, T, import("@tanstack/table-core").TableState_ColumnFiltering & import("@tanstack/table-core").TableState_ColumnPinning & import("@tanstack/table-core").TableState_ColumnResizing & import("@tanstack/table-core").TableState_ColumnSizing & import("@tanstack/table-core").TableState_ColumnVisibility & import("@tanstack/table-core").TableState_GlobalFiltering & import("@tanstack/table-core").TableState_RowSelection & import("@tanstack/table-core").TableState_RowSorting>;
@@ -32,6 +32,21 @@ export function createTable(options) {
32
32
  enableRowSelection: options.enableRowSelection ?? false,
33
33
  enableMultiRowSelection: options.enableMultiRowSelection,
34
34
  enableSorting: options.enableSorting,
35
+ // TanStack's default only inspects the FIRST row's value to decide whether a
36
+ // column participates in global search. If that value is null/undefined the
37
+ // column is excluded for the whole table, even when later rows have text.
38
+ // Treat null/undefined as unknown → allow; still exclude non-text values
39
+ // (booleans, objects, arrays) exactly as the default does.
40
+ // Explicit param/return types keep this callback's signature independent of
41
+ // `table` (which it closes over), avoiding a circular type inference. `as
42
+ // never` sidesteps the option's generic-function contextual type — matching
43
+ // the `filterFn as never` pattern above — so it doesn't perturb inference.
44
+ getColumnCanGlobalFilter: ((column) => {
45
+ const value = table
46
+ .getCoreRowModel()
47
+ .flatRows[0]?.getAllCellsByColumnId()[column.id]?.getValue();
48
+ return value == null || typeof value === 'string' || typeof value === 'number';
49
+ }),
35
50
  debugTable: options.debugTable,
36
51
  initialState: {
37
52
  columnVisibility: initialColumnVisibility,
@@ -101,9 +116,11 @@ function createColumnSizing(columns) {
101
116
  }
102
117
  function createColumnPinning(columns) {
103
118
  const leafCols = getLeafColumns(columns);
119
+ // Compote exposes `pinned: 'left' | 'right'` publicly; v9 uses logical
120
+ // start/end pinning state, so translate at this boundary.
104
121
  return {
105
- left: leafCols.filter((c) => c.pinned === 'left').map(getColumnId),
106
- right: leafCols.filter((c) => c.pinned === 'right').map(getColumnId)
122
+ start: leafCols.filter((c) => c.pinned === 'left').map(getColumnId),
123
+ end: leafCols.filter((c) => c.pinned === 'right').map(getColumnId)
107
124
  };
108
125
  }
109
126
  function createColumns(columns, localeCtx) {
@@ -38,54 +38,32 @@ export declare function getRowCells<T extends RowData>(row: Row<DataTableFeature
38
38
  facetedUniqueValues: (table: import("@tanstack/table-core").Table<import("@tanstack/table-core").TableFeatures, any>, columnId: string) => () => Map<any, number>;
39
39
  facetedMinMaxValues: (table: import("@tanstack/table-core").Table<import("@tanstack/table-core").TableFeatures, any>, columnId: string) => () => undefined | [number, number];
40
40
  sortFns: {
41
- alphanumeric: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => number;
42
- alphanumericCaseSensitive: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => number;
43
- basic: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
44
- datetime: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
45
- text: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
46
- textCaseSensitive: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: Row<TFeatures, TData>, rowB: Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
41
+ alphanumeric: import("@tanstack/table-core").CreatedSortFn<any, any>;
42
+ alphanumericCaseSensitive: import("@tanstack/table-core").CreatedSortFn<any, any>;
43
+ basic: import("@tanstack/table-core").CreatedSortFn<any, any>;
44
+ datetime: import("@tanstack/table-core").CreatedSortFn<any, any>;
45
+ text: import("@tanstack/table-core").CreatedSortFn<any, any>;
46
+ textCaseSensitive: import("@tanstack/table-core").CreatedSortFn<any, any>;
47
47
  };
48
48
  filterFns: {
49
- arrIncludes: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
50
- autoRemove: (val: any) => boolean;
51
- };
52
- arrIncludesAll: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
53
- autoRemove: (val: any) => boolean;
54
- };
55
- arrHas: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
56
- autoRemove: (val: any) => boolean;
57
- };
58
- arrIncludesSome: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
59
- autoRemove: (val: any) => boolean;
60
- };
61
- between: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string, filterValues: [unknown, unknown]) => boolean) & {
62
- autoRemove: (val: any) => boolean;
63
- };
64
- betweenInclusive: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string, filterValues: [unknown, unknown]) => boolean) & {
65
- autoRemove: (val: any) => boolean;
66
- };
67
- equals: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
68
- autoRemove: (val: any) => boolean;
69
- };
70
- equalsString: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
71
- autoRemove: (val: any) => boolean;
72
- resolveFilterValue: (val: any) => string;
73
- };
74
- inNumberRange: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string, filterValue: [number, number]) => boolean) & {
75
- resolveFilterValue: (val: [any, any]) => readonly [number, number];
76
- autoRemove: (val: any) => boolean;
77
- };
78
- includesString: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
79
- autoRemove: (val: any) => boolean;
80
- resolveFilterValue: (val: any) => string;
81
- };
82
- includesStringSensitive: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
83
- autoRemove: (val: any) => boolean;
84
- resolveFilterValue: (val: any) => string;
85
- };
86
- weakEquals: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
87
- autoRemove: (val: any) => boolean;
88
- };
49
+ arrIncludes: import("@tanstack/table-core").CreatedFilterFn<any, any>;
50
+ arrIncludesAll: import("@tanstack/table-core").CreatedFilterFn<any, any>;
51
+ arrHas: import("@tanstack/table-core").CreatedFilterFn<any, any>;
52
+ arrIncludesSome: import("@tanstack/table-core").CreatedFilterFn<any, any>;
53
+ between: import("@tanstack/table-core").CreatedFilterFn<any, any>;
54
+ betweenInclusive: import("@tanstack/table-core").CreatedFilterFn<any, any>;
55
+ empty: import("@tanstack/table-core").CreatedFilterFn<any, any>;
56
+ endsWith: import("@tanstack/table-core").CreatedFilterFn<any, any>;
57
+ equals: import("@tanstack/table-core").CreatedFilterFn<any, any>;
58
+ equalsString: import("@tanstack/table-core").CreatedFilterFn<any, any>;
59
+ equalsStringSensitive: import("@tanstack/table-core").CreatedFilterFn<any, any>;
60
+ inDateRange: import("@tanstack/table-core").CreatedFilterFn<any, any>;
61
+ inNumberRange: import("@tanstack/table-core").CreatedFilterFn<any, any>;
62
+ includesString: import("@tanstack/table-core").CreatedFilterFn<any, any>;
63
+ includesStringSensitive: import("@tanstack/table-core").CreatedFilterFn<any, any>;
64
+ notEmpty: import("@tanstack/table-core").CreatedFilterFn<any, any>;
65
+ startsWith: import("@tanstack/table-core").CreatedFilterFn<any, any>;
66
+ weakEquals: import("@tanstack/table-core").CreatedFilterFn<any, any>;
89
67
  };
90
68
  columnMeta: DataTableColumnMeta;
91
69
  }, T, unknown>[];
@@ -65,9 +65,9 @@ export function getRowCells(row, state) {
65
65
  void state.columnPinning;
66
66
  void state.columnSizing;
67
67
  return [
68
- ...row.getLeftVisibleCells(),
68
+ ...row.getStartVisibleCells(),
69
69
  ...row.getCenterVisibleCells(),
70
- ...row.getRightVisibleCells()
70
+ ...row.getEndVisibleCells()
71
71
  ];
72
72
  }
73
73
  export function getBooleanCellValue(value) {
@@ -85,9 +85,9 @@ export function getPinningStyle(column, table, state, isHeader = false, isRowSel
85
85
  return undefined;
86
86
  const zIndex = isHeader ? 15 : 1;
87
87
  const selectionOffset = isRowSelectionEnabled ? 40 : 0;
88
- if (isPinned === 'left') {
89
- const left = column.getStart('left') + selectionOffset;
90
- const leftCols = table.getLeftLeafColumns();
88
+ if (isPinned === 'start') {
89
+ const left = column.getStart('start') + selectionOffset;
90
+ const leftCols = table.getStartLeafColumns();
91
91
  const isLastLeft = leftCols[leftCols.length - 1]?.id === column.id;
92
92
  const shadow = !isHeader && isLastLeft
93
93
  ? 'box-shadow: -4px 0 4px -4px var(--compote-border) inset'
@@ -97,8 +97,8 @@ export function getPinningStyle(column, table, state, isHeader = false, isRowSel
97
97
  .join('; ');
98
98
  }
99
99
  else {
100
- const right = column.getAfter('right');
101
- const rightCols = table.getRightLeafColumns();
100
+ const right = column.getAfter('end');
101
+ const rightCols = table.getEndLeafColumns();
102
102
  const isFirstRight = rightCols[0]?.id === column.id;
103
103
  const shadow = !isHeader && isFirstRight
104
104
  ? 'box-shadow: 4px 0 4px -4px var(--compote-border) inset'
@@ -128,15 +128,15 @@ export function getGroupPinningStyle(header, section, state, isRowSelectionEnabl
128
128
  const leafHeaders = collectLeafHeaders(header);
129
129
  if (section === 'left') {
130
130
  const first = leafHeaders[0];
131
- if (first?.column.getIsPinned() !== 'left')
131
+ if (first?.column.getIsPinned() !== 'start')
132
132
  return undefined;
133
- const left = first.column.getStart('left') + (isRowSelectionEnabled ? 40 : 0);
133
+ const left = first.column.getStart('start') + (isRowSelectionEnabled ? 40 : 0);
134
134
  return `position: sticky; z-index: 15; left: ${left}px`;
135
135
  }
136
136
  const last = leafHeaders[leafHeaders.length - 1];
137
- if (last?.column.getIsPinned() !== 'right')
137
+ if (last?.column.getIsPinned() !== 'end')
138
138
  return undefined;
139
- return `position: sticky; z-index: 15; right: ${last.column.getAfter('right')}px`;
139
+ return `position: sticky; z-index: 15; right: ${last.column.getAfter('end')}px`;
140
140
  }
141
141
  export function getUrlCellValue(value) {
142
142
  if (typeof value !== 'string' || value.trim() === '')
@@ -15,54 +15,32 @@ export declare const dataTableFeatures: {
15
15
  facetedUniqueValues: (table: import("@tanstack/table-core").Table<import("@tanstack/table-core").TableFeatures, any>, columnId: string) => () => Map<any, number>;
16
16
  facetedMinMaxValues: (table: import("@tanstack/table-core").Table<import("@tanstack/table-core").TableFeatures, any>, columnId: string) => () => undefined | [number, number];
17
17
  sortFns: {
18
- alphanumeric: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends import("@tanstack/table-core").RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => number;
19
- alphanumericCaseSensitive: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends import("@tanstack/table-core").RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => number;
20
- basic: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends import("@tanstack/table-core").RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
21
- datetime: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends import("@tanstack/table-core").RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
22
- text: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends import("@tanstack/table-core").RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
23
- textCaseSensitive: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends import("@tanstack/table-core").RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
18
+ alphanumeric: import("@tanstack/table-core").CreatedSortFn<any, any>;
19
+ alphanumericCaseSensitive: import("@tanstack/table-core").CreatedSortFn<any, any>;
20
+ basic: import("@tanstack/table-core").CreatedSortFn<any, any>;
21
+ datetime: import("@tanstack/table-core").CreatedSortFn<any, any>;
22
+ text: import("@tanstack/table-core").CreatedSortFn<any, any>;
23
+ textCaseSensitive: import("@tanstack/table-core").CreatedSortFn<any, any>;
24
24
  };
25
25
  filterFns: {
26
- arrIncludes: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends import("@tanstack/table-core").RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
27
- autoRemove: (val: any) => boolean;
28
- };
29
- arrIncludesAll: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends import("@tanstack/table-core").RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
30
- autoRemove: (val: any) => boolean;
31
- };
32
- arrHas: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends import("@tanstack/table-core").RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
33
- autoRemove: (val: any) => boolean;
34
- };
35
- arrIncludesSome: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends import("@tanstack/table-core").RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
36
- autoRemove: (val: any) => boolean;
37
- };
38
- between: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends import("@tanstack/table-core").RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValues: [unknown, unknown]) => boolean) & {
39
- autoRemove: (val: any) => boolean;
40
- };
41
- betweenInclusive: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends import("@tanstack/table-core").RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValues: [unknown, unknown]) => boolean) & {
42
- autoRemove: (val: any) => boolean;
43
- };
44
- equals: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends import("@tanstack/table-core").RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
45
- autoRemove: (val: any) => boolean;
46
- };
47
- equalsString: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends import("@tanstack/table-core").RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
48
- autoRemove: (val: any) => boolean;
49
- resolveFilterValue: (val: any) => string;
50
- };
51
- inNumberRange: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends import("@tanstack/table-core").RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: [number, number]) => boolean) & {
52
- resolveFilterValue: (val: [any, any]) => readonly [number, number];
53
- autoRemove: (val: any) => boolean;
54
- };
55
- includesString: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends import("@tanstack/table-core").RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
56
- autoRemove: (val: any) => boolean;
57
- resolveFilterValue: (val: any) => string;
58
- };
59
- includesStringSensitive: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends import("@tanstack/table-core").RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
60
- autoRemove: (val: any) => boolean;
61
- resolveFilterValue: (val: any) => string;
62
- };
63
- weakEquals: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends import("@tanstack/table-core").RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
64
- autoRemove: (val: any) => boolean;
65
- };
26
+ arrIncludes: import("@tanstack/table-core").CreatedFilterFn<any, any>;
27
+ arrIncludesAll: import("@tanstack/table-core").CreatedFilterFn<any, any>;
28
+ arrHas: import("@tanstack/table-core").CreatedFilterFn<any, any>;
29
+ arrIncludesSome: import("@tanstack/table-core").CreatedFilterFn<any, any>;
30
+ between: import("@tanstack/table-core").CreatedFilterFn<any, any>;
31
+ betweenInclusive: import("@tanstack/table-core").CreatedFilterFn<any, any>;
32
+ empty: import("@tanstack/table-core").CreatedFilterFn<any, any>;
33
+ endsWith: import("@tanstack/table-core").CreatedFilterFn<any, any>;
34
+ equals: import("@tanstack/table-core").CreatedFilterFn<any, any>;
35
+ equalsString: import("@tanstack/table-core").CreatedFilterFn<any, any>;
36
+ equalsStringSensitive: import("@tanstack/table-core").CreatedFilterFn<any, any>;
37
+ inDateRange: import("@tanstack/table-core").CreatedFilterFn<any, any>;
38
+ inNumberRange: import("@tanstack/table-core").CreatedFilterFn<any, any>;
39
+ includesString: import("@tanstack/table-core").CreatedFilterFn<any, any>;
40
+ includesStringSensitive: import("@tanstack/table-core").CreatedFilterFn<any, any>;
41
+ notEmpty: import("@tanstack/table-core").CreatedFilterFn<any, any>;
42
+ startsWith: import("@tanstack/table-core").CreatedFilterFn<any, any>;
43
+ weakEquals: import("@tanstack/table-core").CreatedFilterFn<any, any>;
66
44
  };
67
45
  columnMeta: DataTableColumnMeta;
68
46
  };
@@ -35,54 +35,32 @@ export declare function createTableViewState<T extends RowData>(getTable: () =>
35
35
  facetedUniqueValues: (table: import("@tanstack/table-core").Table<import("@tanstack/table-core").TableFeatures, any>, columnId: string) => () => Map<any, number>;
36
36
  facetedMinMaxValues: (table: import("@tanstack/table-core").Table<import("@tanstack/table-core").TableFeatures, any>, columnId: string) => () => undefined | [number, number];
37
37
  sortFns: {
38
- alphanumeric: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => number;
39
- alphanumericCaseSensitive: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => number;
40
- basic: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
41
- datetime: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
42
- text: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
43
- textCaseSensitive: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
38
+ alphanumeric: import("@tanstack/table-core").CreatedSortFn<any, any>;
39
+ alphanumericCaseSensitive: import("@tanstack/table-core").CreatedSortFn<any, any>;
40
+ basic: import("@tanstack/table-core").CreatedSortFn<any, any>;
41
+ datetime: import("@tanstack/table-core").CreatedSortFn<any, any>;
42
+ text: import("@tanstack/table-core").CreatedSortFn<any, any>;
43
+ textCaseSensitive: import("@tanstack/table-core").CreatedSortFn<any, any>;
44
44
  };
45
45
  filterFns: {
46
- arrIncludes: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
47
- autoRemove: (val: any) => boolean;
48
- };
49
- arrIncludesAll: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
50
- autoRemove: (val: any) => boolean;
51
- };
52
- arrHas: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
53
- autoRemove: (val: any) => boolean;
54
- };
55
- arrIncludesSome: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
56
- autoRemove: (val: any) => boolean;
57
- };
58
- between: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValues: [unknown, unknown]) => boolean) & {
59
- autoRemove: (val: any) => boolean;
60
- };
61
- betweenInclusive: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValues: [unknown, unknown]) => boolean) & {
62
- autoRemove: (val: any) => boolean;
63
- };
64
- equals: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
65
- autoRemove: (val: any) => boolean;
66
- };
67
- equalsString: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
68
- autoRemove: (val: any) => boolean;
69
- resolveFilterValue: (val: any) => string;
70
- };
71
- inNumberRange: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: [number, number]) => boolean) & {
72
- resolveFilterValue: (val: [any, any]) => readonly [number, number];
73
- autoRemove: (val: any) => boolean;
74
- };
75
- includesString: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
76
- autoRemove: (val: any) => boolean;
77
- resolveFilterValue: (val: any) => string;
78
- };
79
- includesStringSensitive: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
80
- autoRemove: (val: any) => boolean;
81
- resolveFilterValue: (val: any) => string;
82
- };
83
- weakEquals: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
84
- autoRemove: (val: any) => boolean;
85
- };
46
+ arrIncludes: import("@tanstack/table-core").CreatedFilterFn<any, any>;
47
+ arrIncludesAll: import("@tanstack/table-core").CreatedFilterFn<any, any>;
48
+ arrHas: import("@tanstack/table-core").CreatedFilterFn<any, any>;
49
+ arrIncludesSome: import("@tanstack/table-core").CreatedFilterFn<any, any>;
50
+ between: import("@tanstack/table-core").CreatedFilterFn<any, any>;
51
+ betweenInclusive: import("@tanstack/table-core").CreatedFilterFn<any, any>;
52
+ empty: import("@tanstack/table-core").CreatedFilterFn<any, any>;
53
+ endsWith: import("@tanstack/table-core").CreatedFilterFn<any, any>;
54
+ equals: import("@tanstack/table-core").CreatedFilterFn<any, any>;
55
+ equalsString: import("@tanstack/table-core").CreatedFilterFn<any, any>;
56
+ equalsStringSensitive: import("@tanstack/table-core").CreatedFilterFn<any, any>;
57
+ inDateRange: import("@tanstack/table-core").CreatedFilterFn<any, any>;
58
+ inNumberRange: import("@tanstack/table-core").CreatedFilterFn<any, any>;
59
+ includesString: import("@tanstack/table-core").CreatedFilterFn<any, any>;
60
+ includesStringSensitive: import("@tanstack/table-core").CreatedFilterFn<any, any>;
61
+ notEmpty: import("@tanstack/table-core").CreatedFilterFn<any, any>;
62
+ startsWith: import("@tanstack/table-core").CreatedFilterFn<any, any>;
63
+ weakEquals: import("@tanstack/table-core").CreatedFilterFn<any, any>;
86
64
  };
87
65
  columnMeta: import("./types").DataTableColumnMeta;
88
66
  }, T>;
@@ -102,54 +80,32 @@ export declare function createTableViewState<T extends RowData>(getTable: () =>
102
80
  facetedUniqueValues: (table: import("@tanstack/table-core").Table<import("@tanstack/table-core").TableFeatures, any>, columnId: string) => () => Map<any, number>;
103
81
  facetedMinMaxValues: (table: import("@tanstack/table-core").Table<import("@tanstack/table-core").TableFeatures, any>, columnId: string) => () => undefined | [number, number];
104
82
  sortFns: {
105
- alphanumeric: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => number;
106
- alphanumericCaseSensitive: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => number;
107
- basic: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
108
- datetime: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
109
- text: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
110
- textCaseSensitive: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
83
+ alphanumeric: import("@tanstack/table-core").CreatedSortFn<any, any>;
84
+ alphanumericCaseSensitive: import("@tanstack/table-core").CreatedSortFn<any, any>;
85
+ basic: import("@tanstack/table-core").CreatedSortFn<any, any>;
86
+ datetime: import("@tanstack/table-core").CreatedSortFn<any, any>;
87
+ text: import("@tanstack/table-core").CreatedSortFn<any, any>;
88
+ textCaseSensitive: import("@tanstack/table-core").CreatedSortFn<any, any>;
111
89
  };
112
90
  filterFns: {
113
- arrIncludes: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
114
- autoRemove: (val: any) => boolean;
115
- };
116
- arrIncludesAll: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
117
- autoRemove: (val: any) => boolean;
118
- };
119
- arrHas: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
120
- autoRemove: (val: any) => boolean;
121
- };
122
- arrIncludesSome: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
123
- autoRemove: (val: any) => boolean;
124
- };
125
- between: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValues: [unknown, unknown]) => boolean) & {
126
- autoRemove: (val: any) => boolean;
127
- };
128
- betweenInclusive: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValues: [unknown, unknown]) => boolean) & {
129
- autoRemove: (val: any) => boolean;
130
- };
131
- equals: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
132
- autoRemove: (val: any) => boolean;
133
- };
134
- equalsString: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
135
- autoRemove: (val: any) => boolean;
136
- resolveFilterValue: (val: any) => string;
137
- };
138
- inNumberRange: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: [number, number]) => boolean) & {
139
- resolveFilterValue: (val: [any, any]) => readonly [number, number];
140
- autoRemove: (val: any) => boolean;
141
- };
142
- includesString: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
143
- autoRemove: (val: any) => boolean;
144
- resolveFilterValue: (val: any) => string;
145
- };
146
- includesStringSensitive: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
147
- autoRemove: (val: any) => boolean;
148
- resolveFilterValue: (val: any) => string;
149
- };
150
- weakEquals: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
151
- autoRemove: (val: any) => boolean;
152
- };
91
+ arrIncludes: import("@tanstack/table-core").CreatedFilterFn<any, any>;
92
+ arrIncludesAll: import("@tanstack/table-core").CreatedFilterFn<any, any>;
93
+ arrHas: import("@tanstack/table-core").CreatedFilterFn<any, any>;
94
+ arrIncludesSome: import("@tanstack/table-core").CreatedFilterFn<any, any>;
95
+ between: import("@tanstack/table-core").CreatedFilterFn<any, any>;
96
+ betweenInclusive: import("@tanstack/table-core").CreatedFilterFn<any, any>;
97
+ empty: import("@tanstack/table-core").CreatedFilterFn<any, any>;
98
+ endsWith: import("@tanstack/table-core").CreatedFilterFn<any, any>;
99
+ equals: import("@tanstack/table-core").CreatedFilterFn<any, any>;
100
+ equalsString: import("@tanstack/table-core").CreatedFilterFn<any, any>;
101
+ equalsStringSensitive: import("@tanstack/table-core").CreatedFilterFn<any, any>;
102
+ inDateRange: import("@tanstack/table-core").CreatedFilterFn<any, any>;
103
+ inNumberRange: import("@tanstack/table-core").CreatedFilterFn<any, any>;
104
+ includesString: import("@tanstack/table-core").CreatedFilterFn<any, any>;
105
+ includesStringSensitive: import("@tanstack/table-core").CreatedFilterFn<any, any>;
106
+ notEmpty: import("@tanstack/table-core").CreatedFilterFn<any, any>;
107
+ startsWith: import("@tanstack/table-core").CreatedFilterFn<any, any>;
108
+ weakEquals: import("@tanstack/table-core").CreatedFilterFn<any, any>;
153
109
  };
154
110
  columnMeta: import("./types").DataTableColumnMeta;
155
111
  }, T>[];
@@ -170,54 +126,32 @@ export declare function createTableViewState<T extends RowData>(getTable: () =>
170
126
  facetedUniqueValues: (table: import("@tanstack/table-core").Table<import("@tanstack/table-core").TableFeatures, any>, columnId: string) => () => Map<any, number>;
171
127
  facetedMinMaxValues: (table: import("@tanstack/table-core").Table<import("@tanstack/table-core").TableFeatures, any>, columnId: string) => () => undefined | [number, number];
172
128
  sortFns: {
173
- alphanumeric: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => number;
174
- alphanumericCaseSensitive: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => number;
175
- basic: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
176
- datetime: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
177
- text: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
178
- textCaseSensitive: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
129
+ alphanumeric: import("@tanstack/table-core").CreatedSortFn<any, any>;
130
+ alphanumericCaseSensitive: import("@tanstack/table-core").CreatedSortFn<any, any>;
131
+ basic: import("@tanstack/table-core").CreatedSortFn<any, any>;
132
+ datetime: import("@tanstack/table-core").CreatedSortFn<any, any>;
133
+ text: import("@tanstack/table-core").CreatedSortFn<any, any>;
134
+ textCaseSensitive: import("@tanstack/table-core").CreatedSortFn<any, any>;
179
135
  };
180
136
  filterFns: {
181
- arrIncludes: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
182
- autoRemove: (val: any) => boolean;
183
- };
184
- arrIncludesAll: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
185
- autoRemove: (val: any) => boolean;
186
- };
187
- arrHas: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
188
- autoRemove: (val: any) => boolean;
189
- };
190
- arrIncludesSome: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
191
- autoRemove: (val: any) => boolean;
192
- };
193
- between: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValues: [unknown, unknown]) => boolean) & {
194
- autoRemove: (val: any) => boolean;
195
- };
196
- betweenInclusive: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValues: [unknown, unknown]) => boolean) & {
197
- autoRemove: (val: any) => boolean;
198
- };
199
- equals: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
200
- autoRemove: (val: any) => boolean;
201
- };
202
- equalsString: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
203
- autoRemove: (val: any) => boolean;
204
- resolveFilterValue: (val: any) => string;
205
- };
206
- inNumberRange: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: [number, number]) => boolean) & {
207
- resolveFilterValue: (val: [any, any]) => readonly [number, number];
208
- autoRemove: (val: any) => boolean;
209
- };
210
- includesString: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
211
- autoRemove: (val: any) => boolean;
212
- resolveFilterValue: (val: any) => string;
213
- };
214
- includesStringSensitive: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
215
- autoRemove: (val: any) => boolean;
216
- resolveFilterValue: (val: any) => string;
217
- };
218
- weakEquals: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
219
- autoRemove: (val: any) => boolean;
220
- };
137
+ arrIncludes: import("@tanstack/table-core").CreatedFilterFn<any, any>;
138
+ arrIncludesAll: import("@tanstack/table-core").CreatedFilterFn<any, any>;
139
+ arrHas: import("@tanstack/table-core").CreatedFilterFn<any, any>;
140
+ arrIncludesSome: import("@tanstack/table-core").CreatedFilterFn<any, any>;
141
+ between: import("@tanstack/table-core").CreatedFilterFn<any, any>;
142
+ betweenInclusive: import("@tanstack/table-core").CreatedFilterFn<any, any>;
143
+ empty: import("@tanstack/table-core").CreatedFilterFn<any, any>;
144
+ endsWith: import("@tanstack/table-core").CreatedFilterFn<any, any>;
145
+ equals: import("@tanstack/table-core").CreatedFilterFn<any, any>;
146
+ equalsString: import("@tanstack/table-core").CreatedFilterFn<any, any>;
147
+ equalsStringSensitive: import("@tanstack/table-core").CreatedFilterFn<any, any>;
148
+ inDateRange: import("@tanstack/table-core").CreatedFilterFn<any, any>;
149
+ inNumberRange: import("@tanstack/table-core").CreatedFilterFn<any, any>;
150
+ includesString: import("@tanstack/table-core").CreatedFilterFn<any, any>;
151
+ includesStringSensitive: import("@tanstack/table-core").CreatedFilterFn<any, any>;
152
+ notEmpty: import("@tanstack/table-core").CreatedFilterFn<any, any>;
153
+ startsWith: import("@tanstack/table-core").CreatedFilterFn<any, any>;
154
+ weakEquals: import("@tanstack/table-core").CreatedFilterFn<any, any>;
221
155
  };
222
156
  columnMeta: import("./types").DataTableColumnMeta;
223
157
  }, T, unknown>[];
@@ -237,54 +171,32 @@ export declare function createTableViewState<T extends RowData>(getTable: () =>
237
171
  facetedUniqueValues: (table: import("@tanstack/table-core").Table<import("@tanstack/table-core").TableFeatures, any>, columnId: string) => () => Map<any, number>;
238
172
  facetedMinMaxValues: (table: import("@tanstack/table-core").Table<import("@tanstack/table-core").TableFeatures, any>, columnId: string) => () => undefined | [number, number];
239
173
  sortFns: {
240
- alphanumeric: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => number;
241
- alphanumericCaseSensitive: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => number;
242
- basic: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
243
- datetime: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
244
- text: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
245
- textCaseSensitive: <TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(rowA: import("@tanstack/table-core").Row<TFeatures, TData>, rowB: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string) => 0 | 1 | -1;
174
+ alphanumeric: import("@tanstack/table-core").CreatedSortFn<any, any>;
175
+ alphanumericCaseSensitive: import("@tanstack/table-core").CreatedSortFn<any, any>;
176
+ basic: import("@tanstack/table-core").CreatedSortFn<any, any>;
177
+ datetime: import("@tanstack/table-core").CreatedSortFn<any, any>;
178
+ text: import("@tanstack/table-core").CreatedSortFn<any, any>;
179
+ textCaseSensitive: import("@tanstack/table-core").CreatedSortFn<any, any>;
246
180
  };
247
181
  filterFns: {
248
- arrIncludes: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
249
- autoRemove: (val: any) => boolean;
250
- };
251
- arrIncludesAll: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
252
- autoRemove: (val: any) => boolean;
253
- };
254
- arrHas: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
255
- autoRemove: (val: any) => boolean;
256
- };
257
- arrIncludesSome: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: Array<unknown>) => boolean) & {
258
- autoRemove: (val: any) => boolean;
259
- };
260
- between: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValues: [unknown, unknown]) => boolean) & {
261
- autoRemove: (val: any) => boolean;
262
- };
263
- betweenInclusive: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValues: [unknown, unknown]) => boolean) & {
264
- autoRemove: (val: any) => boolean;
265
- };
266
- equals: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
267
- autoRemove: (val: any) => boolean;
268
- };
269
- equalsString: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
270
- autoRemove: (val: any) => boolean;
271
- resolveFilterValue: (val: any) => string;
272
- };
273
- inNumberRange: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: [number, number]) => boolean) & {
274
- resolveFilterValue: (val: [any, any]) => readonly [number, number];
275
- autoRemove: (val: any) => boolean;
276
- };
277
- includesString: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
278
- autoRemove: (val: any) => boolean;
279
- resolveFilterValue: (val: any) => string;
280
- };
281
- includesStringSensitive: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
282
- autoRemove: (val: any) => boolean;
283
- resolveFilterValue: (val: any) => string;
284
- };
285
- weakEquals: (<TFeatures extends import("@tanstack/table-core").TableFeatures, TData extends RowData>(row: import("@tanstack/table-core").Row<TFeatures, TData>, columnId: string, filterValue: unknown) => boolean) & {
286
- autoRemove: (val: any) => boolean;
287
- };
182
+ arrIncludes: import("@tanstack/table-core").CreatedFilterFn<any, any>;
183
+ arrIncludesAll: import("@tanstack/table-core").CreatedFilterFn<any, any>;
184
+ arrHas: import("@tanstack/table-core").CreatedFilterFn<any, any>;
185
+ arrIncludesSome: import("@tanstack/table-core").CreatedFilterFn<any, any>;
186
+ between: import("@tanstack/table-core").CreatedFilterFn<any, any>;
187
+ betweenInclusive: import("@tanstack/table-core").CreatedFilterFn<any, any>;
188
+ empty: import("@tanstack/table-core").CreatedFilterFn<any, any>;
189
+ endsWith: import("@tanstack/table-core").CreatedFilterFn<any, any>;
190
+ equals: import("@tanstack/table-core").CreatedFilterFn<any, any>;
191
+ equalsString: import("@tanstack/table-core").CreatedFilterFn<any, any>;
192
+ equalsStringSensitive: import("@tanstack/table-core").CreatedFilterFn<any, any>;
193
+ inDateRange: import("@tanstack/table-core").CreatedFilterFn<any, any>;
194
+ inNumberRange: import("@tanstack/table-core").CreatedFilterFn<any, any>;
195
+ includesString: import("@tanstack/table-core").CreatedFilterFn<any, any>;
196
+ includesStringSensitive: import("@tanstack/table-core").CreatedFilterFn<any, any>;
197
+ notEmpty: import("@tanstack/table-core").CreatedFilterFn<any, any>;
198
+ startsWith: import("@tanstack/table-core").CreatedFilterFn<any, any>;
199
+ weakEquals: import("@tanstack/table-core").CreatedFilterFn<any, any>;
288
200
  };
289
201
  columnMeta: import("./types").DataTableColumnMeta;
290
202
  }, T, unknown> | undefined;
@@ -133,17 +133,17 @@ export function createTableViewState(getTable) {
133
133
  */
134
134
  function buildHeaderGroups(table) {
135
135
  const sections = new WeakMap();
136
- const leftHeaderGroups = table.getLeftHeaderGroups();
136
+ const startHeaderGroups = table.getStartHeaderGroups();
137
137
  const centerHeaderGroups = table.getCenterHeaderGroups();
138
- const rightHeaderGroups = table.getRightHeaderGroups();
138
+ const endHeaderGroups = table.getEndHeaderGroups();
139
139
  const groups = centerHeaderGroups.map((headerGroup, index) => {
140
140
  const parts = [
141
- ...(leftHeaderGroups[index]?.headers ?? []).map((header) => ({
141
+ ...(startHeaderGroups[index]?.headers ?? []).map((header) => ({
142
142
  header,
143
143
  section: 'left'
144
144
  })),
145
145
  ...headerGroup.headers.map((header) => ({ header, section: 'center' })),
146
- ...(rightHeaderGroups[index]?.headers ?? []).map((header) => ({
146
+ ...(endHeaderGroups[index]?.headers ?? []).map((header) => ({
147
147
  header,
148
148
  section: 'right'
149
149
  }))
@@ -174,7 +174,7 @@ function buildHeaderGroups(table) {
174
174
  }
175
175
  return {
176
176
  ...headerGroup,
177
- id: `${leftHeaderGroups[index]?.id ?? ''}|${headerGroup.id}|${rightHeaderGroups[index]?.id ?? ''}`,
177
+ id: `${startHeaderGroups[index]?.id ?? ''}|${headerGroup.id}|${endHeaderGroups[index]?.id ?? ''}`,
178
178
  headers
179
179
  };
180
180
  });
@@ -0,0 +1,2 @@
1
+ export { default as Root } from './nav-rail.svelte';
2
+ export { default as Item } from './nav-rail-item.svelte';
@@ -0,0 +1,2 @@
1
+ export { default as Root } from './nav-rail.svelte';
2
+ export { default as Item } from './nav-rail-item.svelte';
@@ -0,0 +1,54 @@
1
+ <script lang="ts">
2
+ import type { Snippet } from 'svelte';
3
+ import type { HTMLAnchorAttributes, HTMLButtonAttributes } from 'svelte/elements';
4
+ import { cn, type ClassValue } from 'tailwind-variants';
5
+
6
+ type Props = Omit<HTMLAnchorAttributes, 'class'> &
7
+ Omit<HTMLButtonAttributes, 'class'> & {
8
+ icon?: Snippet;
9
+ label: string;
10
+ active?: boolean;
11
+ class?: ClassValue;
12
+ };
13
+
14
+ let { icon, label, active = false, class: className, ...rest }: Props = $props();
15
+
16
+ const base = $derived(
17
+ cn(
18
+ 'flex items-center gap-3 w-full rounded-md p-2 text-left text-ink-dim transition-colors',
19
+ 'hover:bg-surface-2 hover:text-ink data-active:bg-surface-2 data-active:text-primary',
20
+ className
21
+ )
22
+ );
23
+
24
+ const iconBox = 'grid size-8 shrink-0 place-items-center [&>svg]:size-5';
25
+ const labelClass = cn(
26
+ 'min-w-0 truncate whitespace-nowrap opacity-0 transition-opacity',
27
+ 'group-hover:opacity-100 group-focus-within:opacity-100 group-data-expanded:opacity-100'
28
+ );
29
+ </script>
30
+
31
+ {#if rest.href}
32
+ <a
33
+ title={label}
34
+ aria-current={active ? 'page' : undefined}
35
+ data-active={active || undefined}
36
+ class={base}
37
+ {...rest}
38
+ >
39
+ <span class={iconBox}>{@render icon?.()}</span>
40
+ <span class={labelClass}>{label}</span>
41
+ </a>
42
+ {:else}
43
+ <button
44
+ type="button"
45
+ title={label}
46
+ aria-current={active ? 'page' : undefined}
47
+ data-active={active || undefined}
48
+ class={base}
49
+ {...rest}
50
+ >
51
+ <span class={iconBox}>{@render icon?.()}</span>
52
+ <span class={labelClass}>{label}</span>
53
+ </button>
54
+ {/if}
@@ -0,0 +1,12 @@
1
+ import type { Snippet } from 'svelte';
2
+ import type { HTMLAnchorAttributes, HTMLButtonAttributes } from 'svelte/elements';
3
+ import { type ClassValue } from 'tailwind-variants';
4
+ type Props = Omit<HTMLAnchorAttributes, 'class'> & Omit<HTMLButtonAttributes, 'class'> & {
5
+ icon?: Snippet;
6
+ label: string;
7
+ active?: boolean;
8
+ class?: ClassValue;
9
+ };
10
+ declare const NavRailItem: import("svelte").Component<Props, {}, "">;
11
+ type NavRailItem = ReturnType<typeof NavRailItem>;
12
+ export default NavRailItem;
@@ -0,0 +1,23 @@
1
+ <script lang="ts">
2
+ import type { HTMLAttributes } from 'svelte/elements';
3
+ import { cn } from 'tailwind-variants';
4
+
5
+ type Props = HTMLAttributes<HTMLElement> & {
6
+ expanded?: boolean;
7
+ };
8
+
9
+ let { expanded = $bindable(false), class: className, children, ...rest }: Props = $props();
10
+ </script>
11
+
12
+ <nav
13
+ data-expanded={expanded || undefined}
14
+ class={cn(
15
+ 'group absolute inset-y-0 left-0 z-20 flex w-16 flex-col overflow-hidden',
16
+ 'border-r border-border bg-surface-1 transition-[width] duration-200',
17
+ 'hover:w-60 focus-within:w-60 data-expanded:w-60',
18
+ className
19
+ )}
20
+ {...rest}
21
+ >
22
+ {@render children?.()}
23
+ </nav>
@@ -0,0 +1,7 @@
1
+ import type { HTMLAttributes } from 'svelte/elements';
2
+ type Props = HTMLAttributes<HTMLElement> & {
3
+ expanded?: boolean;
4
+ };
5
+ declare const NavRail: import("svelte").Component<Props, {}, "expanded">;
6
+ type NavRail = ReturnType<typeof NavRail>;
7
+ export default NavRail;
package/dist/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ export * as AppShell from './components/app-shell';
1
2
  export { default as Avatar } from './components/avatar/avatar.svelte';
2
3
  export type { AvatarProps, AvatarSize } from './components/avatar/avatar.types';
3
4
  export { default as Button } from './components/button/button.svelte';
@@ -65,6 +66,7 @@ export { default as Toggle } from './components/toggle/toggle.svelte';
65
66
  export type { ToggleProps, ToggleSize } from './components/toggle/types';
66
67
  export * as ToggleGroup from './components/toggle-group';
67
68
  export * as Menu from './components/menu';
69
+ export * as NavRail from './components/nav-rail';
68
70
  export * as Tooltip from './components/tooltip';
69
71
  export * as Field from './components/field';
70
72
  export * as Fieldset from './components/fieldset';
package/dist/index.js CHANGED
@@ -1,4 +1,5 @@
1
1
  // Reexport your entry components here
2
+ export * as AppShell from './components/app-shell';
2
3
  export { default as Avatar } from './components/avatar/avatar.svelte';
3
4
  export { default as Button } from './components/button/button.svelte';
4
5
  export { default as LinkButton } from './components/button/link-button.svelte';
@@ -46,6 +47,7 @@ export { createToaster } from '@ark-ui/svelte/toast';
46
47
  export { default as Toggle } from './components/toggle/toggle.svelte';
47
48
  export * as ToggleGroup from './components/toggle-group';
48
49
  export * as Menu from './components/menu';
50
+ export * as NavRail from './components/nav-rail';
49
51
  export * as Tooltip from './components/tooltip';
50
52
  export * as Field from './components/field';
51
53
  export * as Fieldset from './components/fieldset';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "compote-ui",
3
- "version": "0.65.1",
3
+ "version": "0.67.0",
4
4
  "license": "MIT",
5
5
  "scripts": {
6
6
  "dev": "vite dev --open",
@@ -45,7 +45,7 @@
45
45
  "./theme.css": "./dist/theme.css"
46
46
  },
47
47
  "peerDependencies": {
48
- "@tanstack/svelte-table": ">=9.0.0-beta.12 <10",
48
+ "@tanstack/svelte-table": ">=9.0.0-beta.38 <10",
49
49
  "@tanstack/svelte-virtual": ">=3.0.0",
50
50
  "svelte": "^5.0.0"
51
51
  },
@@ -60,30 +60,30 @@
60
60
  "@iconify-json/ph": "^1.2.2",
61
61
  "@sveltejs/adapter-auto": "^7.0.0",
62
62
  "@sveltejs/adapter-cloudflare": "^7.2.9",
63
- "@sveltejs/kit": "^2.69.2",
63
+ "@sveltejs/kit": "^2.69.3",
64
64
  "@sveltejs/package": "^2.5.8",
65
- "@sveltejs/vite-plugin-svelte": "7.2.0",
65
+ "@sveltejs/vite-plugin-svelte": "^7.2.0",
66
66
  "@tailwindcss/vite": "^4.3.2",
67
- "@tanstack/intent": "^0.3.5",
68
- "@tanstack/svelte-table": "^9.0.0-beta.36",
69
- "@tanstack/svelte-virtual": "^3.13.31",
67
+ "@tanstack/intent": "^0.3.6",
68
+ "@tanstack/svelte-table": "9.0.0-beta.47",
69
+ "@tanstack/svelte-virtual": "^3.13.32",
70
70
  "@types/node": "^22.20.0",
71
- "eslint": "^10.5.0",
71
+ "eslint": "^10.7.0",
72
72
  "eslint-config-prettier": "^10.1.8",
73
73
  "eslint-plugin-svelte": "^3.19.0",
74
74
  "globals": "^17.5.0",
75
- "prettier": "^3.8.4",
75
+ "prettier": "^3.9.5",
76
76
  "prettier-plugin-svelte": "^4.1.1",
77
77
  "prettier-plugin-tailwindcss": "^0.8.0",
78
78
  "publint": "^0.3.21",
79
- "svelte": "^5.56.4",
79
+ "svelte": "^5.56.5",
80
80
  "svelte-check": "^4.7.2",
81
81
  "tailwindcss": "^4.3.2",
82
82
  "tw-animate-css": "^1.4.0",
83
83
  "typescript": "^6.0.3",
84
- "typescript-eslint": "^8.63.0",
84
+ "typescript-eslint": "^8.64.0",
85
85
  "unplugin-icons": "^23.0.1",
86
- "vite": "^8.1.3"
86
+ "vite": "^8.1.4"
87
87
  },
88
88
  "keywords": [
89
89
  "svelte",
@@ -94,7 +94,7 @@
94
94
  "@fontsource-variable/nunito-sans": "^5.2.7",
95
95
  "@internationalized/date": "^3.12.2",
96
96
  "runed": "^0.37.1",
97
- "svelte-tel-input": "^4.2.0",
97
+ "svelte-tel-input": "^4.3.2",
98
98
  "tailwind-merge": "^3.6.0",
99
99
  "tailwind-variants": "^3.2.2"
100
100
  },