storyloco 1.3.8 → 1.4.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 (70) hide show
  1. package/README.md +1 -0
  2. package/package.json +9 -9
  3. package/packages/heading/src/app.svelte +1 -2
  4. package/packages/shared/dist/components/ui/accordion/accordion-content.svelte +22 -0
  5. package/packages/shared/dist/components/ui/accordion/accordion-content.svelte.d.ts +4 -0
  6. package/packages/shared/dist/components/ui/accordion/accordion-item.svelte +17 -0
  7. package/packages/shared/dist/components/ui/accordion/accordion-item.svelte.d.ts +4 -0
  8. package/packages/shared/dist/components/ui/accordion/accordion-trigger.svelte +32 -0
  9. package/packages/shared/dist/components/ui/accordion/accordion-trigger.svelte.d.ts +8 -0
  10. package/packages/shared/dist/components/ui/accordion/accordion.svelte +16 -0
  11. package/packages/shared/dist/components/ui/accordion/accordion.svelte.d.ts +4 -0
  12. package/packages/shared/dist/components/ui/accordion/index.d.ts +5 -0
  13. package/packages/shared/dist/components/ui/accordion/index.js +7 -0
  14. package/packages/shared/dist/components/ui/button/button.svelte +80 -0
  15. package/packages/shared/dist/components/ui/button/button.svelte.d.ts +58 -0
  16. package/packages/shared/dist/components/ui/button/index.d.ts +2 -0
  17. package/packages/shared/dist/components/ui/button/index.js +4 -0
  18. package/packages/shared/dist/components/ui/card/card-action.svelte +20 -0
  19. package/packages/shared/dist/components/ui/card/card-action.svelte.d.ts +5 -0
  20. package/packages/shared/dist/components/ui/card/card-content.svelte +15 -0
  21. package/packages/shared/dist/components/ui/card/card-content.svelte.d.ts +5 -0
  22. package/packages/shared/dist/components/ui/card/card-description.svelte +20 -0
  23. package/packages/shared/dist/components/ui/card/card-description.svelte.d.ts +5 -0
  24. package/packages/shared/dist/components/ui/card/card-footer.svelte +20 -0
  25. package/packages/shared/dist/components/ui/card/card-footer.svelte.d.ts +5 -0
  26. package/packages/shared/dist/components/ui/card/card-header.svelte +23 -0
  27. package/packages/shared/dist/components/ui/card/card-header.svelte.d.ts +5 -0
  28. package/packages/shared/dist/components/ui/card/card-title.svelte +20 -0
  29. package/packages/shared/dist/components/ui/card/card-title.svelte.d.ts +5 -0
  30. package/packages/shared/dist/components/ui/card/card.svelte +23 -0
  31. package/packages/shared/dist/components/ui/card/card.svelte.d.ts +5 -0
  32. package/packages/shared/dist/components/ui/card/index.d.ts +8 -0
  33. package/packages/shared/dist/components/ui/card/index.js +10 -0
  34. package/packages/shared/dist/components/ui/input/input.svelte.d.ts +1 -1
  35. package/packages/shared/dist/components/ui/select/index.d.ts +9 -9
  36. package/packages/shared/dist/components/ui/select/index.js +10 -10
  37. package/packages/shared/dist/components/ui/select/select-content.svelte +8 -8
  38. package/packages/shared/dist/components/ui/select/select-content.svelte.d.ts +2 -2
  39. package/packages/shared/dist/components/ui/select/select-group-heading.svelte +5 -5
  40. package/packages/shared/dist/components/ui/select/select-group.svelte +2 -2
  41. package/packages/shared/dist/components/ui/select/select-group.svelte.d.ts +1 -1
  42. package/packages/shared/dist/components/ui/select/select-item.svelte +4 -4
  43. package/packages/shared/dist/components/ui/select/select-item.svelte.d.ts +1 -1
  44. package/packages/shared/dist/components/ui/select/select-label.svelte +4 -4
  45. package/packages/shared/dist/components/ui/select/select-label.svelte.d.ts +2 -2
  46. package/packages/shared/dist/components/ui/select/select-scroll-down-button.svelte +5 -5
  47. package/packages/shared/dist/components/ui/select/select-scroll-down-button.svelte.d.ts +1 -1
  48. package/packages/shared/dist/components/ui/select/select-scroll-up-button.svelte +5 -5
  49. package/packages/shared/dist/components/ui/select/select-scroll-up-button.svelte.d.ts +1 -1
  50. package/packages/shared/dist/components/ui/separator/index.d.ts +1 -1
  51. package/packages/shared/dist/components/ui/separator/index.js +1 -1
  52. package/packages/shared/dist/components/ui/switch/switch.svelte.d.ts +1 -1
  53. package/packages/shared/dist/components/ui/tabs/index.d.ts +5 -0
  54. package/packages/shared/dist/components/ui/tabs/index.js +7 -0
  55. package/packages/shared/dist/components/ui/tabs/tabs-content.svelte +17 -0
  56. package/packages/shared/dist/components/ui/tabs/tabs-content.svelte.d.ts +4 -0
  57. package/packages/shared/dist/components/ui/tabs/tabs-list.svelte +20 -0
  58. package/packages/shared/dist/components/ui/tabs/tabs-list.svelte.d.ts +4 -0
  59. package/packages/shared/dist/components/ui/tabs/tabs-trigger.svelte +20 -0
  60. package/packages/shared/dist/components/ui/tabs/tabs-trigger.svelte.d.ts +4 -0
  61. package/packages/shared/dist/components/ui/tabs/tabs.svelte +19 -0
  62. package/packages/shared/dist/components/ui/tabs/tabs.svelte.d.ts +4 -0
  63. package/packages/shared/dist/global.css +13 -0
  64. package/packages/shared/dist/index.d.ts +4 -0
  65. package/packages/shared/dist/index.js +4 -0
  66. package/packages/heading/README.md +0 -68
  67. package/packages/mux/README.md +0 -68
  68. package/packages/shared/README.md +0 -58
  69. package/packages/theme/README.md +0 -68
  70. package/packages/vite/README.md +0 -58
package/README.md CHANGED
@@ -10,6 +10,7 @@ A collection of slick Storyblok field plugins built with Svelte 5, TypeScript, a
10
10
  - **📝 Heading** - Simple heading editor with level selection (H1-H6)
11
11
  - **🎨 Theme** - Color theme selector with visual previews
12
12
  - **🔗 Link** - Link editor with support for internal, external, email, and asset links
13
+ - **🏗️ Plans** - Floor plan manager with drag-and-drop sorting for types, floors, plot dimensions, and rooms
13
14
 
14
15
  ### Vite Plugins
15
16
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "storyloco",
3
- "version": "1.3.8",
3
+ "version": "1.4.0",
4
4
  "description": "A collection of slick Storyblok field plugins built with Svelte 5, TypeScript, and Tailwind CSS",
5
5
  "keywords": [
6
6
  "storyblok",
@@ -59,15 +59,15 @@
59
59
  }
60
60
  },
61
61
  "devDependencies": {
62
- "@types/node": "24.0.0",
63
- "@typescript-eslint/eslint-plugin": "8.34.0",
64
- "@typescript-eslint/parser": "8.34.0",
65
- "eslint": "9.28.0",
66
- "eslint-plugin-prettier": "5.4.1",
62
+ "@types/node": "24.0.4",
63
+ "@typescript-eslint/eslint-plugin": "8.35.0",
64
+ "@typescript-eslint/parser": "8.35.0",
65
+ "eslint": "9.29.0",
66
+ "eslint-plugin-prettier": "5.5.1",
67
67
  "kitto": "1.0.0-rc.12",
68
- "prettier": "3.5.3",
68
+ "prettier": "3.6.1",
69
69
  "typescript": "5.8.3",
70
- "vite": "6.3.5"
70
+ "vite": "7.0.0"
71
71
  },
72
72
  "peerDependencies": {
73
73
  "@storyblok/svelte": "^5.0.0",
@@ -87,6 +87,6 @@
87
87
  "dependencies": {
88
88
  "chalk": "5.4.1",
89
89
  "ora": "8.2.0",
90
- "storyblok-generate-ts": "^1.0.0"
90
+ "storyblok-generate-ts": "^2.2.0"
91
91
  }
92
92
  }
@@ -11,7 +11,6 @@
11
11
 
12
12
  onMount(() => {
13
13
  createFieldPlugin<Heading>({
14
- enablePortalModal: true,
15
14
  validateContent: (content) => {
16
15
  if (typeof content !== 'object' || content === null) {
17
16
  return { content: { text: '', level: 1 } }
@@ -46,7 +45,7 @@
46
45
  <fieldset class="flex gap-2">
47
46
  <Input class="flex-1" bind:value={content.text} oninput={update} />
48
47
  <select
49
- class="rounded outline-none focus-visible:border-ring border-input bg-white border bg-input-background min-h-11.5"
48
+ class="rounded outline-none focus-visible:border-ring border-input border bg-input-background min-h-11.5"
50
49
  bind:value={() => content.level, (v) => (content.level = Number(v) as Heading['level'])}
51
50
  onchange={update}
52
51
  >
@@ -0,0 +1,22 @@
1
+ <script lang="ts">
2
+ import { Accordion as AccordionPrimitive } from "bits-ui";
3
+ import { cn, type WithoutChild } from "../../../utils.js";
4
+
5
+ let {
6
+ ref = $bindable(null),
7
+ class: className,
8
+ children,
9
+ ...restProps
10
+ }: WithoutChild<AccordionPrimitive.ContentProps> = $props();
11
+ </script>
12
+
13
+ <AccordionPrimitive.Content
14
+ bind:ref
15
+ data-slot="accordion-content"
16
+ class="data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down overflow-hidden text-sm"
17
+ {...restProps}
18
+ >
19
+ <div class={cn("pb-4 pt-0", className)}>
20
+ {@render children?.()}
21
+ </div>
22
+ </AccordionPrimitive.Content>
@@ -0,0 +1,4 @@
1
+ import { Accordion as AccordionPrimitive } from "bits-ui";
2
+ declare const AccordionContent: import("svelte").Component<Omit<AccordionPrimitive.ContentProps, "child">, {}, "ref">;
3
+ type AccordionContent = ReturnType<typeof AccordionContent>;
4
+ export default AccordionContent;
@@ -0,0 +1,17 @@
1
+ <script lang="ts">
2
+ import { Accordion as AccordionPrimitive } from "bits-ui";
3
+ import { cn } from "../../../utils.js";
4
+
5
+ let {
6
+ ref = $bindable(null),
7
+ class: className,
8
+ ...restProps
9
+ }: AccordionPrimitive.ItemProps = $props();
10
+ </script>
11
+
12
+ <AccordionPrimitive.Item
13
+ bind:ref
14
+ data-slot="accordion-item"
15
+ class={cn("border-b last:border-b-0", className)}
16
+ {...restProps}
17
+ />
@@ -0,0 +1,4 @@
1
+ import { Accordion as AccordionPrimitive } from "bits-ui";
2
+ declare const AccordionItem: import("svelte").Component<AccordionPrimitive.ItemProps, {}, "ref">;
3
+ type AccordionItem = ReturnType<typeof AccordionItem>;
4
+ export default AccordionItem;
@@ -0,0 +1,32 @@
1
+ <script lang="ts">
2
+ import { Accordion as AccordionPrimitive } from "bits-ui";
3
+ import ChevronDownIcon from "@lucide/svelte/icons/chevron-down";
4
+ import { cn, type WithoutChild } from "../../../utils.js";
5
+
6
+ let {
7
+ ref = $bindable(null),
8
+ class: className,
9
+ level = 3,
10
+ children,
11
+ ...restProps
12
+ }: WithoutChild<AccordionPrimitive.TriggerProps> & {
13
+ level?: AccordionPrimitive.HeaderProps["level"];
14
+ } = $props();
15
+ </script>
16
+
17
+ <AccordionPrimitive.Header {level} class="flex">
18
+ <AccordionPrimitive.Trigger
19
+ data-slot="accordion-trigger"
20
+ bind:ref
21
+ class={cn(
22
+ "focus-visible:border-ring focus-visible:ring-ring/50 flex flex-1 items-start justify-between gap-4 rounded-md py-4 text-left text-sm font-medium outline-none transition-all hover:underline focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 [&[data-state=open]>svg]:rotate-180",
23
+ className
24
+ )}
25
+ {...restProps}
26
+ >
27
+ {@render children?.()}
28
+ <ChevronDownIcon
29
+ class="text-muted-foreground pointer-events-none size-4 shrink-0 translate-y-0.5 transition-transform duration-200"
30
+ />
31
+ </AccordionPrimitive.Trigger>
32
+ </AccordionPrimitive.Header>
@@ -0,0 +1,8 @@
1
+ import { Accordion as AccordionPrimitive } from "bits-ui";
2
+ import { type WithoutChild } from "../../../utils.js";
3
+ type $$ComponentProps = WithoutChild<AccordionPrimitive.TriggerProps> & {
4
+ level?: AccordionPrimitive.HeaderProps["level"];
5
+ };
6
+ declare const AccordionTrigger: import("svelte").Component<$$ComponentProps, {}, "ref">;
7
+ type AccordionTrigger = ReturnType<typeof AccordionTrigger>;
8
+ export default AccordionTrigger;
@@ -0,0 +1,16 @@
1
+ <script lang="ts">
2
+ import { Accordion as AccordionPrimitive } from "bits-ui";
3
+
4
+ let {
5
+ ref = $bindable(null),
6
+ value = $bindable(),
7
+ ...restProps
8
+ }: AccordionPrimitive.RootProps = $props();
9
+ </script>
10
+
11
+ <AccordionPrimitive.Root
12
+ bind:ref
13
+ bind:value={value as never}
14
+ data-slot="accordion"
15
+ {...restProps}
16
+ />
@@ -0,0 +1,4 @@
1
+ import { Accordion as AccordionPrimitive } from "bits-ui";
2
+ declare const Accordion: import("svelte").Component<AccordionPrimitive.RootProps, {}, "value" | "ref">;
3
+ type Accordion = ReturnType<typeof Accordion>;
4
+ export default Accordion;
@@ -0,0 +1,5 @@
1
+ import Root from "./accordion.svelte";
2
+ import Content from "./accordion-content.svelte";
3
+ import Item from "./accordion-item.svelte";
4
+ import Trigger from "./accordion-trigger.svelte";
5
+ export { Root, Content, Item, Trigger, Root as Accordion, Content as AccordionContent, Item as AccordionItem, Trigger as AccordionTrigger, };
@@ -0,0 +1,7 @@
1
+ import Root from "./accordion.svelte";
2
+ import Content from "./accordion-content.svelte";
3
+ import Item from "./accordion-item.svelte";
4
+ import Trigger from "./accordion-trigger.svelte";
5
+ export { Root, Content, Item, Trigger,
6
+ //
7
+ Root as Accordion, Content as AccordionContent, Item as AccordionItem, Trigger as AccordionTrigger, };
@@ -0,0 +1,80 @@
1
+ <script lang="ts" module>
2
+ import { cn, type WithElementRef } from '../../../utils.js'
3
+ import type { HTMLAnchorAttributes, HTMLButtonAttributes } from 'svelte/elements'
4
+ import { type VariantProps, tv } from 'tailwind-variants'
5
+
6
+ export const variants = tv({
7
+ base: "focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive inline-flex shrink-0 items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium outline-none transition-all focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0",
8
+ variants: {
9
+ variant: {
10
+ default: 'bg-primary text-primary-foreground shadow-xs hover:bg-primary/90',
11
+ destructive:
12
+ 'bg-destructive shadow-xs hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60 text-white',
13
+ outline:
14
+ 'bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 border',
15
+ secondary: 'bg-secondary text-secondary-foreground shadow-xs hover:bg-secondary/80',
16
+ ghost: 'hover:bg-accent hover:text-accent-foreground dark:hover:bg-secondary-foreground/10',
17
+ link: 'text-primary underline-offset-4 hover:underline',
18
+ },
19
+ size: {
20
+ default: 'h-9 px-4 py-2 has-[>svg]:px-3',
21
+ sm: 'h-8 gap-1.5 rounded-md px-3 has-[>svg]:px-2.5',
22
+ lg: 'h-10 rounded-md px-6 has-[>svg]:px-4',
23
+ icon: 'size-9',
24
+ },
25
+ },
26
+ defaultVariants: {
27
+ variant: 'default',
28
+ size: 'default',
29
+ },
30
+ })
31
+
32
+ export type ButtonVariant = VariantProps<typeof variants>['variant']
33
+ export type ButtonSize = VariantProps<typeof variants>['size']
34
+
35
+ export type ButtonProps = WithElementRef<HTMLButtonAttributes> &
36
+ WithElementRef<HTMLAnchorAttributes> & {
37
+ variant?: ButtonVariant
38
+ size?: ButtonSize
39
+ }
40
+ </script>
41
+
42
+ <script lang="ts">
43
+ let {
44
+ class: className,
45
+ variant = 'default',
46
+ size = 'default',
47
+ ref = $bindable(null),
48
+ href = undefined,
49
+ type = 'button',
50
+ disabled,
51
+ children,
52
+ ...rest
53
+ }: ButtonProps = $props()
54
+ </script>
55
+
56
+ {#if href}
57
+ <a
58
+ bind:this={ref}
59
+ data-slot="button"
60
+ class={cn(variants({ variant, size }), className)}
61
+ href={disabled ? undefined : href}
62
+ aria-disabled={disabled}
63
+ role={disabled ? 'link' : undefined}
64
+ tabindex={disabled ? -1 : undefined}
65
+ {...rest}
66
+ >
67
+ {@render children?.()}
68
+ </a>
69
+ {:else}
70
+ <button
71
+ bind:this={ref}
72
+ data-slot="button"
73
+ class={cn(variants({ variant, size }), className)}
74
+ {type}
75
+ {disabled}
76
+ {...rest}
77
+ >
78
+ {@render children?.()}
79
+ </button>
80
+ {/if}
@@ -0,0 +1,58 @@
1
+ import { type WithElementRef } from '../../../utils.js';
2
+ import type { HTMLAnchorAttributes, HTMLButtonAttributes } from 'svelte/elements';
3
+ import { type VariantProps } from 'tailwind-variants';
4
+ export declare const variants: import("tailwind-variants").TVReturnType<{
5
+ variant: {
6
+ default: string;
7
+ destructive: string;
8
+ outline: string;
9
+ secondary: string;
10
+ ghost: string;
11
+ link: string;
12
+ };
13
+ size: {
14
+ default: string;
15
+ sm: string;
16
+ lg: string;
17
+ icon: string;
18
+ };
19
+ }, undefined, "focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive inline-flex shrink-0 items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium outline-none transition-all focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0", {
20
+ variant: {
21
+ default: string;
22
+ destructive: string;
23
+ outline: string;
24
+ secondary: string;
25
+ ghost: string;
26
+ link: string;
27
+ };
28
+ size: {
29
+ default: string;
30
+ sm: string;
31
+ lg: string;
32
+ icon: string;
33
+ };
34
+ }, undefined, import("tailwind-variants").TVReturnType<{
35
+ variant: {
36
+ default: string;
37
+ destructive: string;
38
+ outline: string;
39
+ secondary: string;
40
+ ghost: string;
41
+ link: string;
42
+ };
43
+ size: {
44
+ default: string;
45
+ sm: string;
46
+ lg: string;
47
+ icon: string;
48
+ };
49
+ }, undefined, "focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive inline-flex shrink-0 items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium outline-none transition-all focus-visible:ring-[3px] disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none [&_svg]:shrink-0", unknown, unknown, undefined>>;
50
+ export type ButtonVariant = VariantProps<typeof variants>['variant'];
51
+ export type ButtonSize = VariantProps<typeof variants>['size'];
52
+ export type ButtonProps = WithElementRef<HTMLButtonAttributes> & WithElementRef<HTMLAnchorAttributes> & {
53
+ variant?: ButtonVariant;
54
+ size?: ButtonSize;
55
+ };
56
+ declare const Button: import("svelte").Component<ButtonProps, {}, "ref">;
57
+ type Button = ReturnType<typeof Button>;
58
+ export default Button;
@@ -0,0 +1,2 @@
1
+ import Root, { type ButtonProps, type ButtonSize, type ButtonVariant, variants } from './button.svelte';
2
+ export { Root, type ButtonProps as Props, Root as Button, variants as buttonVariants, type ButtonProps, type ButtonSize, type ButtonVariant, };
@@ -0,0 +1,4 @@
1
+ import Root, { variants, } from './button.svelte';
2
+ export { Root,
3
+ //
4
+ Root as Button, variants as buttonVariants, };
@@ -0,0 +1,20 @@
1
+ <script lang="ts">
2
+ import { cn, type WithElementRef } from "../../../utils.js";
3
+ import type { HTMLAttributes } from "svelte/elements";
4
+
5
+ let {
6
+ ref = $bindable(null),
7
+ class: className,
8
+ children,
9
+ ...restProps
10
+ }: WithElementRef<HTMLAttributes<HTMLDivElement>> = $props();
11
+ </script>
12
+
13
+ <div
14
+ bind:this={ref}
15
+ data-slot="card-action"
16
+ class={cn("col-start-2 row-span-2 row-start-1 self-start justify-self-end", className)}
17
+ {...restProps}
18
+ >
19
+ {@render children?.()}
20
+ </div>
@@ -0,0 +1,5 @@
1
+ import { type WithElementRef } from "../../../utils.js";
2
+ import type { HTMLAttributes } from "svelte/elements";
3
+ declare const CardAction: import("svelte").Component<WithElementRef<HTMLAttributes<HTMLDivElement>>, {}, "ref">;
4
+ type CardAction = ReturnType<typeof CardAction>;
5
+ export default CardAction;
@@ -0,0 +1,15 @@
1
+ <script lang="ts">
2
+ import type { HTMLAttributes } from "svelte/elements";
3
+ import { cn, type WithElementRef } from "../../../utils.js";
4
+
5
+ let {
6
+ ref = $bindable(null),
7
+ class: className,
8
+ children,
9
+ ...restProps
10
+ }: WithElementRef<HTMLAttributes<HTMLDivElement>> = $props();
11
+ </script>
12
+
13
+ <div bind:this={ref} data-slot="card-content" class={cn("px-6", className)} {...restProps}>
14
+ {@render children?.()}
15
+ </div>
@@ -0,0 +1,5 @@
1
+ import type { HTMLAttributes } from "svelte/elements";
2
+ import { type WithElementRef } from "../../../utils.js";
3
+ declare const CardContent: import("svelte").Component<WithElementRef<HTMLAttributes<HTMLDivElement>>, {}, "ref">;
4
+ type CardContent = ReturnType<typeof CardContent>;
5
+ export default CardContent;
@@ -0,0 +1,20 @@
1
+ <script lang="ts">
2
+ import type { HTMLAttributes } from "svelte/elements";
3
+ import { cn, type WithElementRef } from "../../../utils.js";
4
+
5
+ let {
6
+ ref = $bindable(null),
7
+ class: className,
8
+ children,
9
+ ...restProps
10
+ }: WithElementRef<HTMLAttributes<HTMLParagraphElement>> = $props();
11
+ </script>
12
+
13
+ <p
14
+ bind:this={ref}
15
+ data-slot="card-description"
16
+ class={cn("text-muted-foreground text-sm", className)}
17
+ {...restProps}
18
+ >
19
+ {@render children?.()}
20
+ </p>
@@ -0,0 +1,5 @@
1
+ import type { HTMLAttributes } from "svelte/elements";
2
+ import { type WithElementRef } from "../../../utils.js";
3
+ declare const CardDescription: import("svelte").Component<WithElementRef<HTMLAttributes<HTMLParagraphElement>>, {}, "ref">;
4
+ type CardDescription = ReturnType<typeof CardDescription>;
5
+ export default CardDescription;
@@ -0,0 +1,20 @@
1
+ <script lang="ts">
2
+ import { cn, type WithElementRef } from "../../../utils.js";
3
+ import type { HTMLAttributes } from "svelte/elements";
4
+
5
+ let {
6
+ ref = $bindable(null),
7
+ class: className,
8
+ children,
9
+ ...restProps
10
+ }: WithElementRef<HTMLAttributes<HTMLDivElement>> = $props();
11
+ </script>
12
+
13
+ <div
14
+ bind:this={ref}
15
+ data-slot="card-footer"
16
+ class={cn("[.border-t]:pt-6 flex items-center px-6", className)}
17
+ {...restProps}
18
+ >
19
+ {@render children?.()}
20
+ </div>
@@ -0,0 +1,5 @@
1
+ import { type WithElementRef } from "../../../utils.js";
2
+ import type { HTMLAttributes } from "svelte/elements";
3
+ declare const CardFooter: import("svelte").Component<WithElementRef<HTMLAttributes<HTMLDivElement>>, {}, "ref">;
4
+ type CardFooter = ReturnType<typeof CardFooter>;
5
+ export default CardFooter;
@@ -0,0 +1,23 @@
1
+ <script lang="ts">
2
+ import { cn, type WithElementRef } from "../../../utils.js";
3
+ import type { HTMLAttributes } from "svelte/elements";
4
+
5
+ let {
6
+ ref = $bindable(null),
7
+ class: className,
8
+ children,
9
+ ...restProps
10
+ }: WithElementRef<HTMLAttributes<HTMLDivElement>> = $props();
11
+ </script>
12
+
13
+ <div
14
+ bind:this={ref}
15
+ data-slot="card-header"
16
+ class={cn(
17
+ "@container/card-header has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6 grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-6",
18
+ className
19
+ )}
20
+ {...restProps}
21
+ >
22
+ {@render children?.()}
23
+ </div>
@@ -0,0 +1,5 @@
1
+ import { type WithElementRef } from "../../../utils.js";
2
+ import type { HTMLAttributes } from "svelte/elements";
3
+ declare const CardHeader: import("svelte").Component<WithElementRef<HTMLAttributes<HTMLDivElement>>, {}, "ref">;
4
+ type CardHeader = ReturnType<typeof CardHeader>;
5
+ export default CardHeader;
@@ -0,0 +1,20 @@
1
+ <script lang="ts">
2
+ import type { HTMLAttributes } from "svelte/elements";
3
+ import { cn, type WithElementRef } from "../../../utils.js";
4
+
5
+ let {
6
+ ref = $bindable(null),
7
+ class: className,
8
+ children,
9
+ ...restProps
10
+ }: WithElementRef<HTMLAttributes<HTMLDivElement>> = $props();
11
+ </script>
12
+
13
+ <div
14
+ bind:this={ref}
15
+ data-slot="card-title"
16
+ class={cn("font-semibold leading-none", className)}
17
+ {...restProps}
18
+ >
19
+ {@render children?.()}
20
+ </div>
@@ -0,0 +1,5 @@
1
+ import type { HTMLAttributes } from "svelte/elements";
2
+ import { type WithElementRef } from "../../../utils.js";
3
+ declare const CardTitle: import("svelte").Component<WithElementRef<HTMLAttributes<HTMLDivElement>>, {}, "ref">;
4
+ type CardTitle = ReturnType<typeof CardTitle>;
5
+ export default CardTitle;
@@ -0,0 +1,23 @@
1
+ <script lang="ts">
2
+ import type { HTMLAttributes } from "svelte/elements";
3
+ import { cn, type WithElementRef } from "../../../utils.js";
4
+
5
+ let {
6
+ ref = $bindable(null),
7
+ class: className,
8
+ children,
9
+ ...restProps
10
+ }: WithElementRef<HTMLAttributes<HTMLDivElement>> = $props();
11
+ </script>
12
+
13
+ <div
14
+ bind:this={ref}
15
+ data-slot="card"
16
+ class={cn(
17
+ "bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",
18
+ className
19
+ )}
20
+ {...restProps}
21
+ >
22
+ {@render children?.()}
23
+ </div>
@@ -0,0 +1,5 @@
1
+ import type { HTMLAttributes } from "svelte/elements";
2
+ import { type WithElementRef } from "../../../utils.js";
3
+ declare const Card: import("svelte").Component<WithElementRef<HTMLAttributes<HTMLDivElement>>, {}, "ref">;
4
+ type Card = ReturnType<typeof Card>;
5
+ export default Card;
@@ -0,0 +1,8 @@
1
+ import Root from "./card.svelte";
2
+ import Content from "./card-content.svelte";
3
+ import Description from "./card-description.svelte";
4
+ import Footer from "./card-footer.svelte";
5
+ import Header from "./card-header.svelte";
6
+ import Title from "./card-title.svelte";
7
+ import Action from "./card-action.svelte";
8
+ export { Root, Content, Description, Footer, Header, Title, Action, Root as Card, Content as CardContent, Description as CardDescription, Footer as CardFooter, Header as CardHeader, Title as CardTitle, Action as CardAction, };
@@ -0,0 +1,10 @@
1
+ import Root from "./card.svelte";
2
+ import Content from "./card-content.svelte";
3
+ import Description from "./card-description.svelte";
4
+ import Footer from "./card-footer.svelte";
5
+ import Header from "./card-header.svelte";
6
+ import Title from "./card-title.svelte";
7
+ import Action from "./card-action.svelte";
8
+ export { Root, Content, Description, Footer, Header, Title, Action,
9
+ //
10
+ Root as Card, Content as CardContent, Description as CardDescription, Footer as CardFooter, Header as CardHeader, Title as CardTitle, Action as CardAction, };
@@ -8,6 +8,6 @@ type Props = WithElementRef<Omit<HTMLInputAttributes, 'type'> & ({
8
8
  type?: InputType;
9
9
  files?: undefined;
10
10
  })>;
11
- declare const Input: import("svelte").Component<Props, {}, "files" | "value" | "ref">;
11
+ declare const Input: import("svelte").Component<Props, {}, "value" | "ref" | "files">;
12
12
  type Input = ReturnType<typeof Input>;
13
13
  export default Input;
@@ -1,11 +1,11 @@
1
- import Group from "./select-group.svelte";
2
- import Label from "./select-label.svelte";
3
- import Item from "./select-item.svelte";
4
- import Content from "./select-content.svelte";
5
- import Trigger from "./select-trigger.svelte";
6
- import Separator from "./select-separator.svelte";
7
- import ScrollDownButton from "./select-scroll-down-button.svelte";
8
- import ScrollUpButton from "./select-scroll-up-button.svelte";
9
- import GroupHeading from "./select-group-heading.svelte";
1
+ import Group from './select-group.svelte';
2
+ import Label from './select-label.svelte';
3
+ import Item from './select-item.svelte';
4
+ import Content from './select-content.svelte';
5
+ import Trigger from './select-trigger.svelte';
6
+ import Separator from './select-separator.svelte';
7
+ import ScrollDownButton from './select-scroll-down-button.svelte';
8
+ import ScrollUpButton from './select-scroll-up-button.svelte';
9
+ import GroupHeading from './select-group-heading.svelte';
10
10
  declare const Root: import("svelte").Component<import("bits-ui").SelectRootPropsWithoutHTML, {}, "value" | "open">;
11
11
  export { Root, Group, Label, Item, Content, Trigger, Separator, ScrollDownButton, ScrollUpButton, GroupHeading, Root as Select, Group as SelectGroup, Label as SelectLabel, Item as SelectItem, Content as SelectContent, Trigger as SelectTrigger, Separator as SelectSeparator, ScrollDownButton as SelectScrollDownButton, ScrollUpButton as SelectScrollUpButton, GroupHeading as SelectGroupHeading, };
@@ -1,13 +1,13 @@
1
- import { Select as SelectPrimitive } from "bits-ui";
2
- import Group from "./select-group.svelte";
3
- import Label from "./select-label.svelte";
4
- import Item from "./select-item.svelte";
5
- import Content from "./select-content.svelte";
6
- import Trigger from "./select-trigger.svelte";
7
- import Separator from "./select-separator.svelte";
8
- import ScrollDownButton from "./select-scroll-down-button.svelte";
9
- import ScrollUpButton from "./select-scroll-up-button.svelte";
10
- import GroupHeading from "./select-group-heading.svelte";
1
+ import { Select as SelectPrimitive } from 'bits-ui';
2
+ import Group from './select-group.svelte';
3
+ import Label from './select-label.svelte';
4
+ import Item from './select-item.svelte';
5
+ import Content from './select-content.svelte';
6
+ import Trigger from './select-trigger.svelte';
7
+ import Separator from './select-separator.svelte';
8
+ import ScrollDownButton from './select-scroll-down-button.svelte';
9
+ import ScrollUpButton from './select-scroll-up-button.svelte';
10
+ import GroupHeading from './select-group-heading.svelte';
11
11
  const Root = SelectPrimitive.Root;
12
12
  export { Root, Group, Label, Item, Content, Trigger, Separator, ScrollDownButton, ScrollUpButton, GroupHeading,
13
13
  //