@kayord/ui 0.9.21 → 0.9.22

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.
@@ -0,0 +1,176 @@
1
+ <script lang="ts" generics="T">
2
+ import { FlexRender, type ColumnDef, type Table as TypeType, renderComponent } from "@tanstack/svelte-table";
3
+ import { Skeleton, Table } from "../../ui";
4
+ import Pagination from "./Pagination.svelte";
5
+ import type { Snippet } from "svelte";
6
+ import { fade } from "svelte/transition";
7
+ import { ProgressLoading } from "../progress-loading";
8
+ import DataTableCheckbox from "./DataTableCheckbox.svelte";
9
+ import VisibilitySelect from "./VisibilitySelect.svelte";
10
+ import FullscreenModeToggle from "./FullscreenModeToggle.svelte";
11
+ import { cn } from "../../../utils";
12
+ import { tableStore } from "./table.svelte";
13
+
14
+ interface Props<T> {
15
+ table: TypeType<T>;
16
+ columns: ColumnDef<T>[];
17
+ isLoading?: boolean;
18
+ header?: Snippet;
19
+ subHeader?: Snippet;
20
+ footer?: Snippet;
21
+ leftToolbar?: Snippet;
22
+ rightToolbar?: Snippet;
23
+ noDataMessage?: string;
24
+ hideHeader?: boolean;
25
+ enableVisibility?: boolean;
26
+ enableFullscreen?: boolean;
27
+ }
28
+
29
+ let {
30
+ table,
31
+ columns,
32
+ isLoading = false,
33
+ header,
34
+ subHeader,
35
+ footer,
36
+ leftToolbar,
37
+ rightToolbar,
38
+ noDataMessage = "No data",
39
+ hideHeader = false,
40
+ enableVisibility = false,
41
+ enableFullscreen = false,
42
+ }: Props<T> = $props();
43
+
44
+ const isPaginationEnabled = table.options.getPaginationRowModel !== undefined;
45
+ const enableRowSelection = table.options.enableRowSelection;
46
+
47
+ if (enableRowSelection) {
48
+ const rowSelectionColumn: ColumnDef<T> = {
49
+ id: "select",
50
+ // cell: (info) => "[]",
51
+ header: () =>
52
+ renderComponent(DataTableCheckbox, {
53
+ checked: table.getIsAllPageRowsSelected(),
54
+ onCheckedChange: () => table.toggleAllPageRowsSelected(),
55
+ }),
56
+ cell: (r) =>
57
+ renderComponent(DataTableCheckbox, {
58
+ checked: r.row.getIsSelected(),
59
+ onCheckedChange: () => r.row.toggleSelected(),
60
+ }),
61
+ enableResizing: false,
62
+ };
63
+ columns.unshift(rowSelectionColumn);
64
+ }
65
+ </script>
66
+
67
+ <div
68
+ class={cn(
69
+ "w-full",
70
+ tableStore.isFullscreen ? "absolute left-0 top-0 z-10 h-screen bg-background transition-all" : "w-full"
71
+ )}
72
+ >
73
+ <div class="py-2">
74
+ {#if header}
75
+ {@render header()}
76
+ {:else}
77
+ <div class="flex items-center justify-between gap-2">
78
+ <div>
79
+ {#if leftToolbar}
80
+ {@render leftToolbar()}
81
+ {/if}
82
+ </div>
83
+ <div></div>
84
+ <div class="flex items-center justify-between gap-2">
85
+ {#if rightToolbar}
86
+ {@render rightToolbar()}
87
+ {/if}
88
+ {#if enableVisibility}
89
+ <div>
90
+ <VisibilitySelect {table} />
91
+ </div>
92
+ {/if}
93
+ {#if enableFullscreen}
94
+ <div>
95
+ <FullscreenModeToggle />
96
+ </div>
97
+ {/if}
98
+ </div>
99
+ </div>
100
+ {/if}
101
+ </div>
102
+
103
+ <div class="rounded-md border">
104
+ {#if isLoading}
105
+ <span in:fade={{ duration: 300 }}>
106
+ <ProgressLoading class="h-1" />
107
+ </span>
108
+ {/if}
109
+
110
+ {#if subHeader}
111
+ {@render subHeader()}
112
+ {/if}
113
+
114
+ <Table.Root class="table-auto">
115
+ {#if !hideHeader}
116
+ <Table.Header>
117
+ {#each table.getHeaderGroups() as headerGroup}
118
+ <Table.Row>
119
+ {#each headerGroup.headers as header}
120
+ <Table.Head colspan={header.colSpan}>
121
+ {#if !header.isPlaceholder}
122
+ <FlexRender content={header.column.columnDef.header} context={header.getContext()} />
123
+ {/if}
124
+ </Table.Head>
125
+ {/each}
126
+ </Table.Row>
127
+ {/each}
128
+ </Table.Header>
129
+ {/if}
130
+ <Table.Body>
131
+ {#if isLoading && table.getRowModel().rows.length == 0}
132
+ {#each { length: 5 } as _, i}
133
+ <Table.Row>
134
+ {#each columns as _cell}
135
+ <Table.Cell>
136
+ <Skeleton class="h-4" />
137
+ </Table.Cell>
138
+ {/each}
139
+ </Table.Row>
140
+ {/each}
141
+ {:else}
142
+ {#if table.getRowModel().rows.length == 0}
143
+ <Table.Row>
144
+ <Table.Cell colspan={table.getRowModel().rows.length}>
145
+ <div class="text-center">{noDataMessage}</div>
146
+ </Table.Cell>
147
+ </Table.Row>
148
+ {/if}
149
+ {#each table.getRowModel().rows as row}
150
+ <Table.Row data-state={row.getIsSelected() && "selected"}>
151
+ {#each row.getVisibleCells() as cell}
152
+ <Table.Cell style={`width: ${cell.getContext().column.getSize()}px;`}>
153
+ <FlexRender content={cell.column.columnDef.cell} context={cell.getContext()} />
154
+ </Table.Cell>
155
+ {/each}
156
+ </Table.Row>
157
+ {/each}
158
+ {/if}
159
+ </Table.Body>
160
+ </Table.Root>
161
+ {#if isLoading}
162
+ <span in:fade={{ duration: 300 }}>
163
+ <ProgressLoading class="h-1" />
164
+ </span>
165
+ {/if}
166
+ </div>
167
+ {#if isPaginationEnabled}
168
+ <Pagination {table} />
169
+ {/if}
170
+
171
+ {#if footer}
172
+ <div class="overflow-hidden rounded-b-md">
173
+ {@render footer()}
174
+ </div>
175
+ {/if}
176
+ </div>
@@ -0,0 +1,36 @@
1
+ import { type ColumnDef, type Table as TypeType } from "@tanstack/svelte-table";
2
+ import type { Snippet } from "svelte";
3
+ declare class __sveltets_Render<T> {
4
+ props(): {
5
+ table: TypeType<T>;
6
+ columns: ColumnDef<T>[];
7
+ isLoading?: boolean;
8
+ header?: Snippet;
9
+ subHeader?: Snippet;
10
+ footer?: Snippet;
11
+ leftToolbar?: Snippet;
12
+ rightToolbar?: Snippet;
13
+ noDataMessage?: string;
14
+ hideHeader?: boolean;
15
+ enableVisibility?: boolean;
16
+ enableFullscreen?: boolean;
17
+ };
18
+ events(): {} & {
19
+ [evt: string]: CustomEvent<any>;
20
+ };
21
+ slots(): {};
22
+ bindings(): "";
23
+ exports(): {};
24
+ }
25
+ interface $$IsomorphicComponent {
26
+ new <T>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<T>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<T>['props']>, ReturnType<__sveltets_Render<T>['events']>, ReturnType<__sveltets_Render<T>['slots']>> & {
27
+ $$bindings?: ReturnType<__sveltets_Render<T>['bindings']>;
28
+ } & ReturnType<__sveltets_Render<T>['exports']>;
29
+ <T>(internal: unknown, props: ReturnType<__sveltets_Render<T>['props']> & {
30
+ $$events?: ReturnType<__sveltets_Render<T>['events']>;
31
+ }): ReturnType<__sveltets_Render<T>['exports']>;
32
+ z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
33
+ }
34
+ declare const DataTable: $$IsomorphicComponent;
35
+ type DataTable<T> = InstanceType<typeof DataTable<T>>;
36
+ export default DataTable;
@@ -0,0 +1,14 @@
1
+ <script lang="ts">
2
+ import { Checkbox } from "../../ui/checkbox";
3
+ import { cn } from "../../../utils";
4
+ import type { ComponentProps } from "svelte";
5
+
6
+ interface Props extends Omit<ComponentProps<Checkbox>, "checked"> {
7
+ checked?: boolean | "indeterminate";
8
+ class?: string;
9
+ }
10
+
11
+ let { checked, class: className, ...rest }: Props = $props();
12
+ </script>
13
+
14
+ <Checkbox bind:checked class={cn(className)} {...rest} />
@@ -0,0 +1,21 @@
1
+ interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
2
+ new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
3
+ $$bindings?: Bindings;
4
+ } & Exports;
5
+ (internal: unknown, props: Props & {
6
+ $$events?: Events;
7
+ $$slots?: Slots;
8
+ }): Exports & {
9
+ $set?: any;
10
+ $on?: any;
11
+ };
12
+ z_$$bindings?: Bindings;
13
+ }
14
+ declare const DataTableCheckbox: $$__sveltets_2_IsomorphicComponent<Omit<import("bits-ui").CheckboxProps, "checked"> & {
15
+ checked?: boolean | "indeterminate";
16
+ class?: string;
17
+ }, {
18
+ [evt: string]: CustomEvent<any>;
19
+ }, {}, {}, "">;
20
+ type DataTableCheckbox = InstanceType<typeof DataTableCheckbox>;
21
+ export default DataTableCheckbox;
@@ -0,0 +1,25 @@
1
+ <script lang="ts">
2
+ import Button from "../../ui/button/button.svelte";
3
+ import { Maximize, Minimize } from "lucide-svelte";
4
+ import { tableStore } from "./table.svelte";
5
+ </script>
6
+
7
+ <Button
8
+ class="grow"
9
+ variant="outline"
10
+ size="sm"
11
+ on:click={() => {
12
+ tableStore.isFullscreen = !tableStore.isFullscreen;
13
+ // if ($target == "body") {
14
+ // $target = "#tableContent";
15
+ // } else {
16
+ // $target = "body";
17
+ // }
18
+ }}
19
+ >
20
+ {#if tableStore.isFullscreen}
21
+ <Minimize class="size-5" />
22
+ {:else}
23
+ <Maximize class="size-5" />
24
+ {/if}
25
+ </Button>
@@ -0,0 +1,18 @@
1
+ interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
2
+ new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
3
+ $$bindings?: Bindings;
4
+ } & Exports;
5
+ (internal: unknown, props: {
6
+ $$events?: Events;
7
+ $$slots?: Slots;
8
+ }): Exports & {
9
+ $set?: any;
10
+ $on?: any;
11
+ };
12
+ z_$$bindings?: Bindings;
13
+ }
14
+ declare const FullscreenModeToggle: $$__sveltets_2_IsomorphicComponent<Record<string, never>, {
15
+ [evt: string]: CustomEvent<any>;
16
+ }, {}, {}, string>;
17
+ type FullscreenModeToggle = InstanceType<typeof FullscreenModeToggle>;
18
+ export default FullscreenModeToggle;
@@ -0,0 +1,89 @@
1
+ <script lang="ts" generics="T">
2
+ import type { Table } from "@tanstack/svelte-table";
3
+ import ChevronLeft from "lucide-svelte/icons/chevron-left";
4
+ import ChevronRight from "lucide-svelte/icons/chevron-right";
5
+ import DoubleArrowLeft from "lucide-svelte/icons/arrow-left";
6
+ import DoubleArrowRight from "lucide-svelte/icons/arrow-right";
7
+ import * as Select from "../../ui/select/index.js";
8
+ import { Button } from "../../ui/button/index.js";
9
+
10
+ interface Props<T> {
11
+ table: Table<T>;
12
+ canChangePageSize?: boolean;
13
+ }
14
+
15
+ let { table, canChangePageSize = false }: Props<T> = $props();
16
+ </script>
17
+
18
+ <div class="flex items-center justify-between p-2">
19
+ <div class="flex-1 text-sm text-muted-foreground">
20
+ {#if table.options.enableRowSelection}
21
+ {table.getFilteredSelectedRowModel().rows.length} of
22
+ {table.getFilteredRowModel().rows.length} row(s) selected.
23
+ {/if}
24
+ </div>
25
+ <div class="flex items-center space-x-6 lg:space-x-8">
26
+ <div class="flex items-center space-x-2">
27
+ {#if canChangePageSize}
28
+ <p class="text-sm font-medium">Rows per page</p>
29
+ <Select.Root
30
+ selected={{
31
+ value: table.getState().pagination.pageSize,
32
+ label: `${table.getState().pagination.pageSize}`,
33
+ }}
34
+ onSelectedChange={(selected) => {
35
+ table.setPageSize(Number(selected?.value));
36
+ }}
37
+ >
38
+ <Select.Trigger class="h-8 w-[70px]">
39
+ <Select.Value placeholder="Select page size" />
40
+ </Select.Trigger>
41
+ <Select.Content side="top">
42
+ {#each [10, 20, 30, 40, 50] as pageSize}
43
+ <Select.Item value={pageSize}>
44
+ {pageSize}
45
+ </Select.Item>
46
+ {/each}
47
+ </Select.Content>
48
+ </Select.Root>
49
+ {/if}
50
+ </div>
51
+ <div class="flex w-[100px] items-center justify-center text-sm font-medium">
52
+ Page {table.getState().pagination.pageIndex + 1} of
53
+ {table.getPageCount()}
54
+ </div>
55
+ <div class="flex items-center space-x-2">
56
+ <Button
57
+ variant="outline"
58
+ class="hidden size-8 p-0 lg:flex"
59
+ on:click={() => table.setPageIndex(0)}
60
+ disabled={!table.getCanPreviousPage()}
61
+ >
62
+ <span class="sr-only">Go to first page</span>
63
+ <DoubleArrowLeft class="size-4" />
64
+ </Button>
65
+ <Button
66
+ variant="outline"
67
+ class="size-8 p-0"
68
+ on:click={() => table.previousPage()}
69
+ disabled={!table.getCanPreviousPage()}
70
+ >
71
+ <span class="sr-only">Go to previous page</span>
72
+ <ChevronLeft class="size-4" />
73
+ </Button>
74
+ <Button variant="outline" class="size-8 p-0" on:click={() => table.nextPage()} disabled={!table.getCanNextPage()}>
75
+ <span class="sr-only">Go to next page</span>
76
+ <ChevronRight class="size-4" />
77
+ </Button>
78
+ <Button
79
+ variant="outline"
80
+ class="hidden size-8 p-0 lg:flex"
81
+ on:click={() => table.setPageIndex(table.getPageCount() - 1)}
82
+ disabled={!table.getCanNextPage()}
83
+ >
84
+ <span class="sr-only">Go to last page</span>
85
+ <DoubleArrowRight class="size-4" />
86
+ </Button>
87
+ </div>
88
+ </div>
89
+ </div>
@@ -0,0 +1,25 @@
1
+ import type { Table } from "@tanstack/svelte-table";
2
+ declare class __sveltets_Render<T> {
3
+ props(): {
4
+ table: Table<T>;
5
+ canChangePageSize?: boolean;
6
+ };
7
+ events(): {} & {
8
+ [evt: string]: CustomEvent<any>;
9
+ };
10
+ slots(): {};
11
+ bindings(): "";
12
+ exports(): {};
13
+ }
14
+ interface $$IsomorphicComponent {
15
+ new <T>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<T>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<T>['props']>, ReturnType<__sveltets_Render<T>['events']>, ReturnType<__sveltets_Render<T>['slots']>> & {
16
+ $$bindings?: ReturnType<__sveltets_Render<T>['bindings']>;
17
+ } & ReturnType<__sveltets_Render<T>['exports']>;
18
+ <T>(internal: unknown, props: ReturnType<__sveltets_Render<T>['props']> & {
19
+ $$events?: ReturnType<__sveltets_Render<T>['events']>;
20
+ }): ReturnType<__sveltets_Render<T>['exports']>;
21
+ z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
22
+ }
23
+ declare const Pagination: $$IsomorphicComponent;
24
+ type Pagination<T> = InstanceType<typeof Pagination<T>>;
25
+ export default Pagination;
@@ -0,0 +1,29 @@
1
+ <script lang="ts" generics="T">
2
+ import * as DropdownMenu from "../../ui/dropdown-menu";
3
+ import { Button } from "../../ui/button";
4
+ import { Settings2Icon } from "lucide-svelte";
5
+ import type { Table } from "@tanstack/svelte-table";
6
+
7
+ interface Props<T> {
8
+ table: Table<T>;
9
+ }
10
+
11
+ let { table }: Props<T> = $props();
12
+ </script>
13
+
14
+ <DropdownMenu.Root closeOnItemClick={false}>
15
+ <DropdownMenu.Trigger asChild let:builder>
16
+ <Button variant="outline" builders={[builder]} size="sm">
17
+ <Settings2Icon class="mr-2 h-4 w-4" /> View
18
+ </Button>
19
+ </DropdownMenu.Trigger>
20
+ <DropdownMenu.Content>
21
+ <DropdownMenu.Label>Toggle columns</DropdownMenu.Label>
22
+ <DropdownMenu.Separator />
23
+ {#each table.getAllLeafColumns() as column}
24
+ <DropdownMenu.CheckboxItem checked={column.getIsVisible()} onCheckedChange={() => column.toggleVisibility()}>
25
+ {column.id}
26
+ </DropdownMenu.CheckboxItem>
27
+ {/each}
28
+ </DropdownMenu.Content>
29
+ </DropdownMenu.Root>
@@ -0,0 +1,24 @@
1
+ import type { Table } from "@tanstack/svelte-table";
2
+ declare class __sveltets_Render<T> {
3
+ props(): {
4
+ table: Table<T>;
5
+ };
6
+ events(): {} & {
7
+ [evt: string]: CustomEvent<any>;
8
+ };
9
+ slots(): {};
10
+ bindings(): "";
11
+ exports(): {};
12
+ }
13
+ interface $$IsomorphicComponent {
14
+ new <T>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<T>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<T>['props']>, ReturnType<__sveltets_Render<T>['events']>, ReturnType<__sveltets_Render<T>['slots']>> & {
15
+ $$bindings?: ReturnType<__sveltets_Render<T>['bindings']>;
16
+ } & ReturnType<__sveltets_Render<T>['exports']>;
17
+ <T>(internal: unknown, props: ReturnType<__sveltets_Render<T>['props']> & {
18
+ $$events?: ReturnType<__sveltets_Render<T>['events']>;
19
+ }): ReturnType<__sveltets_Render<T>['exports']>;
20
+ z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
21
+ }
22
+ declare const VisibilitySelect: $$IsomorphicComponent;
23
+ type VisibilitySelect<T> = InstanceType<typeof VisibilitySelect<T>>;
24
+ export default VisibilitySelect;
@@ -0,0 +1 @@
1
+ export { default as DataTableNew } from "./DataTable.svelte";
@@ -0,0 +1 @@
1
+ export { default as DataTableNew } from "./DataTable.svelte";
@@ -0,0 +1,5 @@
1
+ interface TableStoreProps {
2
+ isFullscreen: boolean;
3
+ }
4
+ export declare let tableStore: TableStoreProps;
5
+ export {};
@@ -0,0 +1,3 @@
1
+ export let tableStore = $state({
2
+ isFullscreen: false,
3
+ });
@@ -1,4 +1,5 @@
1
1
  export { Loader } from "./loader/index.js";
2
2
  export { ThemeSwitch } from "./theme-switch/index.js";
3
3
  export * from "./data-table/index.js";
4
+ export * from "./data-table-new/index.js";
4
5
  export { ProgressLoading } from "./progress-loading/index.js";
@@ -1,4 +1,5 @@
1
1
  export { Loader } from "./loader/index.js";
2
2
  export { ThemeSwitch } from "./theme-switch/index.js";
3
3
  export * from "./data-table/index.js";
4
+ export * from "./data-table-new/index.js";
4
5
  export { ProgressLoading } from "./progress-loading/index.js";
@@ -0,0 +1,49 @@
1
+ interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
2
+ new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
3
+ $$bindings?: Bindings;
4
+ } & Exports;
5
+ (internal: unknown, props: Props & {
6
+ $$events?: Events;
7
+ $$slots?: Slots;
8
+ }): Exports & {
9
+ $set?: any;
10
+ $on?: any;
11
+ };
12
+ z_$$bindings?: Bindings;
13
+ }
14
+ type $$__sveltets_2_PropsWithChildren<Props, Slots> = Props & (Slots extends {
15
+ default: any;
16
+ } ? Props extends Record<string, never> ? any : {
17
+ children?: any;
18
+ } : {});
19
+ declare const CommandDialog: $$__sveltets_2_IsomorphicComponent<$$__sveltets_2_PropsWithChildren<{
20
+ preventScroll?: boolean | undefined;
21
+ closeOnEscape?: boolean | undefined;
22
+ closeOnOutsideClick?: boolean | undefined;
23
+ onOutsideClick?: ((event: PointerEvent | MouseEvent | TouchEvent) => void) | undefined;
24
+ portal?: (HTMLElement | string | null) | undefined;
25
+ open?: ((boolean | undefined) & {}) | undefined;
26
+ onOpenChange?: import("bits-ui/dist/internal").OnChangeFn<boolean> | undefined;
27
+ openFocus?: import("bits-ui").FocusProp | undefined;
28
+ closeFocus?: import("bits-ui").FocusProp | undefined;
29
+ } & {
30
+ state?: import("svelte/store").Writable<import("cmdk-sv").State> | undefined;
31
+ label?: string | undefined;
32
+ shouldFilter?: boolean | undefined;
33
+ filter?: ((value: string, search: string) => number) | undefined;
34
+ value?: string | undefined;
35
+ onValueChange?: ((value: string) => void) | undefined;
36
+ loop?: boolean | undefined;
37
+ ids?: Partial<import("cmdk-sv").CommandIds> | undefined;
38
+ } & import("cmdk-sv/dist/internal").HTMLDivAttributes & {
39
+ onKeydown?: (e: KeyboardEvent) => void;
40
+ asChild?: boolean;
41
+ }, {
42
+ default: {};
43
+ }>, {
44
+ [evt: string]: CustomEvent<any>;
45
+ }, {
46
+ default: {};
47
+ }, {}, string>;
48
+ type CommandDialog = InstanceType<typeof CommandDialog>;
49
+ export default CommandDialog;
@@ -0,0 +1,32 @@
1
+ import type { Label as LabelPrimitive } from "bits-ui";
2
+ interface $$__sveltets_2_IsomorphicComponent<Props extends Record<string, any> = any, Events extends Record<string, any> = any, Slots extends Record<string, any> = any, Exports = {}, Bindings = string> {
3
+ new (options: import('svelte').ComponentConstructorOptions<Props>): import('svelte').SvelteComponent<Props, Events, Slots> & {
4
+ $$bindings?: Bindings;
5
+ } & Exports;
6
+ (internal: unknown, props: Props & {
7
+ $$events?: Events;
8
+ $$slots?: Slots;
9
+ }): Exports & {
10
+ $set?: any;
11
+ $on?: any;
12
+ };
13
+ z_$$bindings?: Bindings;
14
+ }
15
+ type $$__sveltets_2_PropsWithChildren<Props, Slots> = Props & (Slots extends {
16
+ default: any;
17
+ } ? Props extends Record<string, never> ? any : {
18
+ children?: any;
19
+ } : {});
20
+ declare const FormLabel: $$__sveltets_2_IsomorphicComponent<$$__sveltets_2_PropsWithChildren<LabelPrimitive.Props, {
21
+ default: {
22
+ labelAttrs: import("svelte/store").Writable<import("formsnap").LabelAttrs>;
23
+ };
24
+ }>, {
25
+ [evt: string]: CustomEvent<any>;
26
+ }, {
27
+ default: {
28
+ labelAttrs: import("svelte/store").Writable<import("formsnap").LabelAttrs>;
29
+ };
30
+ }, {}, string>;
31
+ type FormLabel = InstanceType<typeof FormLabel>;
32
+ export default FormLabel;
@@ -22,9 +22,9 @@ declare const PaginationLink: $$__sveltets_2_IsomorphicComponent<$$__sveltets_2_
22
22
  } & {
23
23
  asChild?: boolean | undefined;
24
24
  el?: HTMLButtonElement | undefined;
25
- } & (import("svelte/elements").HTMLButtonAttributes & Props & {
25
+ } & (import("svelte/elements").HTMLButtonAttributes & (Props & {
26
26
  isActive: boolean;
27
- }), {
27
+ })), {
28
28
  default: {};
29
29
  }>, {
30
30
  click: import("bits-ui").CustomEventHandler<MouseEvent, HTMLDivElement>;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@kayord/ui",
3
3
  "private": false,
4
- "version": "0.9.21",
4
+ "version": "0.9.22",
5
5
  "exports": {
6
6
  ".": {
7
7
  "types": "./dist/index.d.ts",
@@ -29,50 +29,52 @@
29
29
  "lucide-svelte": ">= 0.400.0 < 1.0.0",
30
30
  "svelte": "^4.0.0 || ^5.0.0-next.1",
31
31
  "sveltekit-superforms": "^2.15.1",
32
- "zod": "^3.23.8"
32
+ "zod": "^3.23.8",
33
+ "@tanstack/svelte-table": "^9.0.0-alpha.10"
33
34
  },
34
35
  "dependencies": {
35
36
  "@internationalized/date": "^3.5.5",
36
37
  "bits-ui": "^0.21.13",
37
38
  "clsx": "^2.1.1",
38
39
  "cmdk-sv": "^0.0.18",
39
- "embla-carousel-svelte": "8.2.1",
40
+ "embla-carousel-svelte": "8.3.0",
40
41
  "formsnap": "^1.0.1",
41
42
  "mode-watcher": "^0.4.1",
42
43
  "paneforge": "^0.0.5",
43
44
  "svelte-headless-table": "^0.18.2",
44
- "svelte-sonner": "^0.3.27",
45
+ "svelte-sonner": "^0.3.28",
45
46
  "tailwind-merge": "^2.5.2",
46
47
  "tailwind-variants": "^0.2.1",
47
48
  "vaul-svelte": "^0.3.2"
48
49
  },
49
50
  "devDependencies": {
50
- "@sveltejs/adapter-auto": "^3.2.4",
51
- "@sveltejs/kit": "^2.5.26",
52
- "@sveltejs/package": "^2.3.4",
51
+ "@sveltejs/adapter-auto": "^3.2.5",
52
+ "@sveltejs/kit": "^2.5.28",
53
+ "@sveltejs/package": "^2.3.5",
53
54
  "@sveltejs/vite-plugin-svelte": "^4.0.0-next.6",
55
+ "@tanstack/svelte-table": "9.0.0-alpha.10",
54
56
  "@testing-library/jest-dom": "^6.5.0",
55
57
  "@testing-library/svelte": "^5.2.1",
56
- "@typescript-eslint/eslint-plugin": "^8.4.0",
57
- "@typescript-eslint/parser": "^8.4.0",
58
+ "@typescript-eslint/eslint-plugin": "^8.6.0",
59
+ "@typescript-eslint/parser": "^8.6.0",
58
60
  "autoprefixer": "^10.4.20",
59
61
  "eslint": "^9.10.0",
60
62
  "eslint-config-prettier": "^9.1.0",
61
- "eslint-plugin-svelte": "^2.43.0",
62
- "happy-dom": "^15.7.3",
63
- "lucide-svelte": "^0.439.0",
64
- "postcss": "^8.4.45",
63
+ "eslint-plugin-svelte": "^2.44.0",
64
+ "happy-dom": "^15.7.4",
65
+ "lucide-svelte": "^0.441.0",
66
+ "postcss": "^8.4.47",
65
67
  "prettier": "^3.3.3",
66
68
  "prettier-plugin-svelte": "^3.2.6",
67
69
  "prettier-plugin-tailwindcss": "^0.6.6",
68
- "publint": "^0.2.10",
70
+ "publint": "^0.2.11",
69
71
  "svelte": "^5.0.0-next.238",
70
- "svelte-check": "^4.0.1",
71
- "tailwindcss": "^3.4.10",
72
+ "svelte-check": "^4.0.2",
73
+ "tailwindcss": "^3.4.12",
72
74
  "tslib": "^2.7.0",
73
- "typescript": "^5.5.4",
74
- "vite": "^5.4.3",
75
- "vitest": "^2.0.5"
75
+ "typescript": "^5.6.2",
76
+ "vite": "^5.4.6",
77
+ "vitest": "^2.1.1"
76
78
  },
77
79
  "svelte": "./dist/index.js",
78
80
  "types": "./dist/index.d.ts",