ui-ingredients 0.0.6 → 0.0.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (163) hide show
  1. package/README.md +75 -75
  2. package/dist/accordion/item-content.svelte +22 -13
  3. package/dist/accordion/item-indicator.svelte +22 -13
  4. package/dist/accordion/item-trigger.svelte +22 -13
  5. package/dist/accordion/item.svelte +35 -24
  6. package/dist/accordion/root.svelte +61 -40
  7. package/dist/avatar/fallback.svelte +21 -12
  8. package/dist/avatar/image.svelte +19 -10
  9. package/dist/avatar/root.svelte +46 -29
  10. package/dist/carousel/indicator-group.svelte +21 -12
  11. package/dist/carousel/indicator.svelte +31 -20
  12. package/dist/carousel/item-group.svelte +21 -12
  13. package/dist/carousel/item.svelte +22 -12
  14. package/dist/carousel/next-trigger.svelte +21 -12
  15. package/dist/carousel/prev-trigger.svelte +21 -12
  16. package/dist/carousel/root.svelte +58 -40
  17. package/dist/carousel/viewport.svelte +21 -12
  18. package/dist/checkbox/control.svelte +21 -12
  19. package/dist/checkbox/hidden-input.svelte +19 -10
  20. package/dist/checkbox/indicator.svelte +21 -12
  21. package/dist/checkbox/label.svelte +21 -12
  22. package/dist/checkbox/root.svelte +62 -44
  23. package/dist/clipboard/control.svelte +21 -12
  24. package/dist/clipboard/indicator.svelte +23 -12
  25. package/dist/clipboard/input.svelte +19 -10
  26. package/dist/clipboard/label.svelte +21 -12
  27. package/dist/clipboard/root.svelte +51 -30
  28. package/dist/clipboard/trigger.svelte +21 -12
  29. package/dist/collapsible/content.svelte +21 -12
  30. package/dist/collapsible/root.svelte +57 -36
  31. package/dist/collapsible/trigger.svelte +19 -12
  32. package/dist/combobox/clear-trigger.svelte +21 -12
  33. package/dist/combobox/content.svelte +21 -12
  34. package/dist/combobox/control.svelte +21 -12
  35. package/dist/combobox/input.svelte +19 -10
  36. package/dist/combobox/item-group-label.svelte +29 -20
  37. package/dist/combobox/item-group.svelte +26 -14
  38. package/dist/combobox/item-indicator.svelte +22 -13
  39. package/dist/combobox/item-text.svelte +26 -17
  40. package/dist/combobox/item.svelte +35 -24
  41. package/dist/combobox/label.svelte +21 -12
  42. package/dist/combobox/list.svelte +21 -12
  43. package/dist/combobox/positioner.svelte +21 -12
  44. package/dist/combobox/root.svelte +122 -104
  45. package/dist/combobox/trigger.svelte +21 -12
  46. package/dist/dialog/backdrop.svelte +21 -12
  47. package/dist/dialog/close-trigger.svelte +21 -12
  48. package/dist/dialog/content.svelte +21 -12
  49. package/dist/dialog/description.svelte +21 -12
  50. package/dist/dialog/positioner.svelte +21 -12
  51. package/dist/dialog/root.svelte +22 -10
  52. package/dist/dialog/title.svelte +21 -12
  53. package/dist/dialog/trigger.svelte +21 -12
  54. package/dist/hover-card/arrow-tip.svelte +21 -12
  55. package/dist/hover-card/arrow.svelte +21 -12
  56. package/dist/hover-card/content.svelte +21 -12
  57. package/dist/hover-card/positioner.svelte +21 -12
  58. package/dist/hover-card/root.svelte +25 -10
  59. package/dist/hover-card/trigger.svelte +21 -12
  60. package/dist/number-input/control.svelte +21 -12
  61. package/dist/number-input/decrement-trigger.svelte +22 -12
  62. package/dist/number-input/increment-trigger.svelte +22 -12
  63. package/dist/number-input/input.svelte +19 -10
  64. package/dist/number-input/label.svelte +21 -12
  65. package/dist/number-input/root.svelte +93 -72
  66. package/dist/number-input/scrubber.svelte +21 -12
  67. package/dist/pagination/ellipsis.svelte +23 -12
  68. package/dist/pagination/item.svelte +31 -20
  69. package/dist/pagination/next-trigger.svelte +21 -12
  70. package/dist/pagination/prev-trigger.svelte +21 -12
  71. package/dist/pagination/root.svelte +63 -42
  72. package/dist/pin-input/clear-trigger.svelte +25 -17
  73. package/dist/pin-input/hidden-input.svelte +19 -10
  74. package/dist/pin-input/input.svelte +20 -10
  75. package/dist/pin-input/label.svelte +21 -12
  76. package/dist/pin-input/root.svelte +82 -64
  77. package/dist/popover/arrow-tip.svelte +21 -12
  78. package/dist/popover/arrow.svelte +21 -12
  79. package/dist/popover/close-trigger.svelte +21 -12
  80. package/dist/popover/content.svelte +21 -12
  81. package/dist/popover/description.svelte +21 -12
  82. package/dist/popover/positioner.svelte +21 -12
  83. package/dist/popover/root.svelte +22 -10
  84. package/dist/popover/title.svelte +21 -12
  85. package/dist/popover/trigger.svelte +21 -12
  86. package/dist/portal/root.svelte +20 -10
  87. package/dist/presence/root.svelte +39 -27
  88. package/dist/progress/circle-range.svelte +21 -12
  89. package/dist/progress/circle-track.svelte +21 -12
  90. package/dist/progress/circle.svelte +21 -12
  91. package/dist/progress/label.svelte +21 -12
  92. package/dist/progress/range.svelte +21 -12
  93. package/dist/progress/root.svelte +54 -36
  94. package/dist/progress/track.svelte +21 -12
  95. package/dist/progress/value-text.svelte +25 -16
  96. package/dist/radio-group/indicator.svelte +21 -12
  97. package/dist/radio-group/item-control.svelte +22 -13
  98. package/dist/radio-group/item-hidden-input.svelte +20 -11
  99. package/dist/radio-group/item-text.svelte +22 -13
  100. package/dist/radio-group/item.svelte +37 -26
  101. package/dist/radio-group/label.svelte +21 -12
  102. package/dist/radio-group/root.svelte +61 -40
  103. package/dist/select/clear-trigger.svelte +21 -12
  104. package/dist/select/content.svelte +21 -12
  105. package/dist/select/control.svelte +21 -12
  106. package/dist/select/hidden-select.svelte +21 -12
  107. package/dist/select/indicator.svelte +21 -12
  108. package/dist/select/item-group-label.svelte +24 -15
  109. package/dist/select/item-group.svelte +26 -14
  110. package/dist/select/item-indicator.svelte +22 -13
  111. package/dist/select/item-text.svelte +26 -17
  112. package/dist/select/item.svelte +35 -24
  113. package/dist/select/label.svelte +21 -12
  114. package/dist/select/list.svelte +21 -12
  115. package/dist/select/positioner.svelte +21 -12
  116. package/dist/select/root.svelte +96 -78
  117. package/dist/select/trigger.svelte +21 -12
  118. package/dist/select/value-text.svelte +27 -18
  119. package/dist/slider/control.svelte +21 -12
  120. package/dist/slider/hidden-input.svelte +20 -11
  121. package/dist/slider/label.svelte +21 -12
  122. package/dist/slider/marker-group.svelte +21 -12
  123. package/dist/slider/marker.svelte +29 -19
  124. package/dist/slider/range.svelte +21 -12
  125. package/dist/slider/root.svelte +84 -66
  126. package/dist/slider/thumb.svelte +35 -24
  127. package/dist/slider/track.svelte +21 -12
  128. package/dist/slider/value-text.svelte +25 -16
  129. package/dist/steps/content.svelte +22 -12
  130. package/dist/steps/indicator.svelte +22 -13
  131. package/dist/steps/item.svelte +24 -13
  132. package/dist/steps/list.svelte +21 -12
  133. package/dist/steps/next-trigger.svelte +21 -12
  134. package/dist/steps/prev-trigger.svelte +21 -12
  135. package/dist/steps/progress.svelte +21 -12
  136. package/dist/steps/root.svelte +56 -38
  137. package/dist/steps/separator.svelte +22 -13
  138. package/dist/steps/trigger.svelte +22 -13
  139. package/dist/switch/control.svelte +21 -12
  140. package/dist/switch/hidden-input.svelte +19 -10
  141. package/dist/switch/label.svelte +21 -12
  142. package/dist/switch/root.svelte +64 -46
  143. package/dist/switch/thumb.svelte +21 -12
  144. package/dist/tabs/content.svelte +22 -12
  145. package/dist/tabs/list.svelte +21 -12
  146. package/dist/tabs/root.svelte +57 -42
  147. package/dist/tabs/trigger.svelte +22 -12
  148. package/dist/toast/action-trigger.svelte +21 -12
  149. package/dist/toast/actor.svelte +22 -11
  150. package/dist/toast/close-trigger.svelte +21 -12
  151. package/dist/toast/description.svelte +25 -16
  152. package/dist/toast/root.svelte +25 -16
  153. package/dist/toast/title.svelte +25 -16
  154. package/dist/toast/toaster.svelte +40 -25
  155. package/dist/toggle-group/item.svelte +22 -12
  156. package/dist/toggle-group/root.svelte +61 -40
  157. package/dist/tooltip/arrow-tip.svelte +21 -12
  158. package/dist/tooltip/arrow.svelte +21 -12
  159. package/dist/tooltip/content.svelte +21 -12
  160. package/dist/tooltip/positioner.svelte +21 -12
  161. package/dist/tooltip/root.svelte +22 -10
  162. package/dist/tooltip/trigger.svelte +21 -12
  163. package/package.json +6 -14
@@ -1,13 +1,22 @@
1
- <script lang="ts" context="module"></script>
2
-
3
- <script lang="ts">import { mergeProps } from "@zag-js/svelte";
4
- import { useStepsContext, useStepsItemContext } from "./context.svelte.js";
5
- let { children, ...props } = $props();
6
- let context = useStepsContext();
7
- let itemContext = useStepsItemContext();
8
- let attrs = $derived(mergeProps(props, context.getSeparatorProps(itemContext)));
9
- </script>
10
-
11
- <div {...attrs}>
12
- {@render children?.()}
13
- </div>
1
+ <script lang="ts" context="module">
2
+ import type {Assign} from '../types.js';
3
+ import type {SvelteHTMLElements} from 'svelte/elements';
4
+
5
+ export interface StepsSeparatorProps extends Assign<SvelteHTMLElements['div'], {}> {}
6
+ </script>
7
+
8
+ <script lang="ts">
9
+ import {mergeProps} from '@zag-js/svelte';
10
+ import {useStepsContext, useStepsItemContext} from './context.svelte.js';
11
+
12
+ let {children, ...props}: StepsSeparatorProps = $props();
13
+
14
+ let context = useStepsContext();
15
+ let itemContext = useStepsItemContext();
16
+
17
+ let attrs = $derived(mergeProps(props, context.getSeparatorProps(itemContext)));
18
+ </script>
19
+
20
+ <div {...attrs}>
21
+ {@render children?.()}
22
+ </div>
@@ -1,13 +1,22 @@
1
- <script lang="ts" context="module"></script>
2
-
3
- <script lang="ts">import { mergeProps } from "@zag-js/svelte";
4
- import { useStepsContext, useStepsItemContext } from "./context.svelte.js";
5
- let { children, ...props } = $props();
6
- let context = useStepsContext();
7
- let itemContext = useStepsItemContext();
8
- let attrs = $derived(mergeProps(props, context.getTriggerProps(itemContext)));
9
- </script>
10
-
11
- <button type="button" {...attrs}>
12
- {@render children?.()}
13
- </button>
1
+ <script lang="ts" context="module">
2
+ import type {Assign} from '../types.js';
3
+ import type {SvelteHTMLElements} from 'svelte/elements';
4
+
5
+ export interface StepsTriggerProps extends Assign<SvelteHTMLElements['button'], {}> {}
6
+ </script>
7
+
8
+ <script lang="ts">
9
+ import {mergeProps} from '@zag-js/svelte';
10
+ import {useStepsContext, useStepsItemContext} from './context.svelte.js';
11
+
12
+ let {children, ...props}: StepsTriggerProps = $props();
13
+
14
+ let context = useStepsContext();
15
+ let itemContext = useStepsItemContext();
16
+
17
+ let attrs = $derived(mergeProps(props, context.getTriggerProps(itemContext)));
18
+ </script>
19
+
20
+ <button type="button" {...attrs}>
21
+ {@render children?.()}
22
+ </button>
@@ -1,12 +1,21 @@
1
- <script lang="ts" context="module"></script>
2
-
3
- <script lang="ts">import { mergeProps } from "@zag-js/svelte";
4
- import { useSwitchContext } from "./context.svelte.js";
5
- let { children, ...props } = $props();
6
- let context = useSwitchContext();
7
- let attrs = $derived(mergeProps(props, context.getControlProps()));
8
- </script>
9
-
10
- <div {...attrs}>
11
- {@render children?.()}
12
- </div>
1
+ <script lang="ts" context="module">
2
+ import type {Assign} from '../types.js';
3
+ import type {SvelteHTMLElements} from 'svelte/elements';
4
+
5
+ export interface SwitchControlProps extends Assign<SvelteHTMLElements['div'], {}> {}
6
+ </script>
7
+
8
+ <script lang="ts">
9
+ import {mergeProps} from '@zag-js/svelte';
10
+ import {useSwitchContext} from './context.svelte.js';
11
+
12
+ let {children, ...props}: SwitchControlProps = $props();
13
+
14
+ let context = useSwitchContext();
15
+
16
+ let attrs = $derived(mergeProps(props, context.getControlProps()));
17
+ </script>
18
+
19
+ <div {...attrs}>
20
+ {@render children?.()}
21
+ </div>
@@ -1,10 +1,19 @@
1
- <script lang="ts" context="module"></script>
2
-
3
- <script lang="ts">import { mergeProps } from "@zag-js/svelte";
4
- import { useSwitchContext } from "./context.svelte.js";
5
- let { ...props } = $props();
6
- let context = useSwitchContext();
7
- let attrs = $derived(mergeProps(props, context.getHiddenInputProps()));
8
- </script>
9
-
10
- <input {...attrs} />
1
+ <script lang="ts" context="module">
2
+ import type {Assign} from '../types.js';
3
+ import type {SvelteHTMLElements} from 'svelte/elements';
4
+
5
+ export interface SwitchHiddenInputProps extends Assign<SvelteHTMLElements['input'], {}> {}
6
+ </script>
7
+
8
+ <script lang="ts">
9
+ import {mergeProps} from '@zag-js/svelte';
10
+ import {useSwitchContext} from './context.svelte.js';
11
+
12
+ let {...props}: SwitchHiddenInputProps = $props();
13
+
14
+ let context = useSwitchContext();
15
+
16
+ let attrs = $derived(mergeProps(props, context.getHiddenInputProps()));
17
+ </script>
18
+
19
+ <input {...attrs} />
@@ -1,12 +1,21 @@
1
- <script lang="ts" context="module"></script>
2
-
3
- <script lang="ts">import { mergeProps } from "@zag-js/svelte";
4
- import { useSwitchContext } from "./context.svelte.js";
5
- let { children, ...props } = $props();
6
- let context = useSwitchContext();
7
- let attrs = $derived(mergeProps(props, context.getLabelProps()));
8
- </script>
9
-
10
- <span {...attrs}>
11
- {@render children?.()}
12
- </span>
1
+ <script lang="ts" context="module">
2
+ import type {Assign} from '../types.js';
3
+ import type {SvelteHTMLElements} from 'svelte/elements';
4
+
5
+ export interface SwitchLabelProps extends Assign<SvelteHTMLElements['span'], {}> {}
6
+ </script>
7
+
8
+ <script lang="ts">
9
+ import {mergeProps} from '@zag-js/svelte';
10
+ import {useSwitchContext} from './context.svelte.js';
11
+
12
+ let {children, ...props}: SwitchLabelProps = $props();
13
+
14
+ let context = useSwitchContext();
15
+
16
+ let attrs = $derived(mergeProps(props, context.getLabelProps()));
17
+ </script>
18
+
19
+ <span {...attrs}>
20
+ {@render children?.()}
21
+ </span>
@@ -1,46 +1,64 @@
1
- <script lang="ts" context="module"></script>
2
-
3
- <script lang="ts">import { uuid } from "../utils.svelte.js";
4
- import { mergeProps } from "@zag-js/svelte";
5
- import { createSwitchContext, setSwitchContext } from "./context.svelte.js";
6
- let {
7
- id = uuid(),
8
- ids,
9
- dir,
10
- form,
11
- name,
12
- label,
13
- value,
14
- checked,
15
- invalid,
16
- disabled,
17
- readOnly,
18
- required,
19
- onCheckedChange,
20
- getRootNode,
21
- children,
22
- ...props
23
- } = $props();
24
- let context = createSwitchContext({
25
- id,
26
- ids,
27
- dir,
28
- form,
29
- name,
30
- label,
31
- value: $state.snapshot(value),
32
- checked,
33
- invalid,
34
- disabled,
35
- readOnly,
36
- required,
37
- onCheckedChange,
38
- getRootNode
39
- });
40
- let attrs = $derived(mergeProps(props, context.getRootProps()));
41
- setSwitchContext(context);
42
- </script>
43
-
44
- <label {...attrs}>
45
- {@render children?.(context)}
46
- </label>
1
+ <script lang="ts" context="module">
2
+ import type {Assign, OptionalId, WithoutChildren} from '../types.js';
3
+ import type {Snippet} from 'svelte';
4
+ import type {SvelteHTMLElements} from 'svelte/elements';
5
+ import type {CreateSwitchContextProps, CreateSwitchContextReturn} from './context.svelte.js';
6
+
7
+ export interface SwitchProps
8
+ extends Assign<
9
+ WithoutChildren<SvelteHTMLElements['label']>,
10
+ OptionalId<CreateSwitchContextProps>
11
+ > {
12
+ children?: Snippet<[CreateSwitchContextReturn]>;
13
+ }
14
+ </script>
15
+
16
+ <script lang="ts">
17
+ import {uuid} from '../utils.svelte.js';
18
+ import {mergeProps} from '@zag-js/svelte';
19
+ import {createSwitchContext, setSwitchContext} from './context.svelte.js';
20
+
21
+ let {
22
+ id = uuid(),
23
+ ids,
24
+ dir,
25
+ form,
26
+ name,
27
+ label,
28
+ value,
29
+ checked,
30
+ invalid,
31
+ disabled,
32
+ readOnly,
33
+ required,
34
+ onCheckedChange,
35
+ getRootNode,
36
+ children,
37
+ ...props
38
+ }: SwitchProps = $props();
39
+
40
+ let context = createSwitchContext({
41
+ id,
42
+ ids,
43
+ dir,
44
+ form,
45
+ name,
46
+ label,
47
+ value: $state.snapshot(value),
48
+ checked,
49
+ invalid,
50
+ disabled,
51
+ readOnly,
52
+ required,
53
+ onCheckedChange,
54
+ getRootNode,
55
+ });
56
+
57
+ let attrs = $derived(mergeProps(props, context.getRootProps()));
58
+
59
+ setSwitchContext(context);
60
+ </script>
61
+
62
+ <label {...attrs}>
63
+ {@render children?.(context)}
64
+ </label>
@@ -1,12 +1,21 @@
1
- <script lang="ts" context="module"></script>
2
-
3
- <script lang="ts">import { mergeProps } from "@zag-js/svelte";
4
- import { useSwitchContext } from "./context.svelte.js";
5
- let { children, ...props } = $props();
6
- let context = useSwitchContext();
7
- let attrs = $derived(mergeProps(props, context.getThumbProps()));
8
- </script>
9
-
10
- <div {...attrs}>
11
- {@render children?.()}
12
- </div>
1
+ <script lang="ts" context="module">
2
+ import type {Assign} from '../types.js';
3
+ import type {SvelteHTMLElements} from 'svelte/elements';
4
+
5
+ export interface SwitchThumbProps extends Assign<SvelteHTMLElements['div'], {}> {}
6
+ </script>
7
+
8
+ <script lang="ts">
9
+ import {mergeProps} from '@zag-js/svelte';
10
+ import {useSwitchContext} from './context.svelte.js';
11
+
12
+ let {children, ...props}: SwitchThumbProps = $props();
13
+
14
+ let context = useSwitchContext();
15
+
16
+ let attrs = $derived(mergeProps(props, context.getThumbProps()));
17
+ </script>
18
+
19
+ <div {...attrs}>
20
+ {@render children?.()}
21
+ </div>
@@ -1,12 +1,22 @@
1
- <script lang="ts" context="module"></script>
2
-
3
- <script lang="ts">import { mergeProps } from "@zag-js/svelte";
4
- import { useTabsContext } from "./context.svelte.js";
5
- let { value, children, ...props } = $props();
6
- let context = useTabsContext();
7
- let attrs = $derived(mergeProps(props, context.getContentProps({ value })));
8
- </script>
9
-
10
- <div {...attrs}>
11
- {@render children?.()}
12
- </div>
1
+ <script lang="ts" context="module">
2
+ import type {Assign} from '../types.js';
3
+ import type {ContentProps} from '@zag-js/tabs';
4
+ import type {SvelteHTMLElements} from 'svelte/elements';
5
+
6
+ export interface TabsContentProps extends Assign<SvelteHTMLElements['div'], ContentProps> {}
7
+ </script>
8
+
9
+ <script lang="ts">
10
+ import {mergeProps} from '@zag-js/svelte';
11
+ import {useTabsContext} from './context.svelte.js';
12
+
13
+ let {value, children, ...props}: TabsContentProps = $props();
14
+
15
+ let context = useTabsContext();
16
+
17
+ let attrs = $derived(mergeProps(props, context.getContentProps({value})));
18
+ </script>
19
+
20
+ <div {...attrs}>
21
+ {@render children?.()}
22
+ </div>
@@ -1,12 +1,21 @@
1
- <script lang="ts" context="module"></script>
2
-
3
- <script lang="ts">import { mergeProps } from "@zag-js/svelte";
4
- import { useTabsContext } from "./context.svelte.js";
5
- let { children, ...props } = $props();
6
- let context = useTabsContext();
7
- let attrs = $derived(mergeProps(props, context.getListProps()));
8
- </script>
9
-
10
- <div {...attrs}>
11
- {@render children?.()}
12
- </div>
1
+ <script lang="ts" context="module">
2
+ import type {Assign} from '../types.js';
3
+ import type {SvelteHTMLElements} from 'svelte/elements';
4
+
5
+ export interface TabsListProps extends Assign<SvelteHTMLElements['div'], {}> {}
6
+ </script>
7
+
8
+ <script lang="ts">
9
+ import {mergeProps} from '@zag-js/svelte';
10
+ import {useTabsContext} from './context.svelte.js';
11
+
12
+ let {children, ...props}: TabsListProps = $props();
13
+
14
+ let context = useTabsContext();
15
+
16
+ let attrs = $derived(mergeProps(props, context.getListProps()));
17
+ </script>
18
+
19
+ <div {...attrs}>
20
+ {@render children?.()}
21
+ </div>
@@ -1,42 +1,57 @@
1
- <script lang="ts" context="module"></script>
2
-
3
- <script lang="ts">import { uuid } from "../utils.svelte.js";
4
- import { mergeProps } from "@zag-js/svelte";
5
- import { createTabsContext, setTabsContext } from "./context.svelte.js";
6
- let {
7
- id = uuid(),
8
- ids,
9
- dir,
10
- value,
11
- loopFocus,
12
- composite,
13
- orientation,
14
- translations,
15
- activationMode,
16
- onFocusChange,
17
- onValueChange,
18
- getRootNode,
19
- children,
20
- ...props
21
- } = $props();
22
- let context = createTabsContext({
23
- id,
24
- ids,
25
- dir,
26
- value: $state.snapshot(value),
27
- loopFocus,
28
- composite,
29
- orientation,
30
- translations,
31
- activationMode,
32
- onFocusChange,
33
- onValueChange,
34
- getRootNode
35
- });
36
- let attrs = $derived(mergeProps(props, context.getRootProps()));
37
- setTabsContext(context);
38
- </script>
39
-
40
- <div {...attrs}>
41
- {@render children?.(context)}
42
- </div>
1
+ <script lang="ts" context="module">
2
+ import type {Assign, OptionalId, WithoutChildren} from '../types.js';
3
+ import type {Snippet} from 'svelte';
4
+ import type {SvelteHTMLElements} from 'svelte/elements';
5
+ import type {CreateTabsContextProps, CreateTabsContextReturn} from './context.svelte.js';
6
+
7
+ export interface TabsProps
8
+ extends Assign<WithoutChildren<SvelteHTMLElements['div']>, OptionalId<CreateTabsContextProps>> {
9
+ children?: Snippet<[CreateTabsContextReturn]>;
10
+ }
11
+ </script>
12
+
13
+ <script lang="ts">
14
+ import {uuid} from '../utils.svelte.js';
15
+ import {mergeProps} from '@zag-js/svelte';
16
+ import {createTabsContext, setTabsContext} from './context.svelte.js';
17
+
18
+ let {
19
+ id = uuid(),
20
+ ids,
21
+ dir,
22
+ value,
23
+ loopFocus,
24
+ composite,
25
+ orientation,
26
+ translations,
27
+ activationMode,
28
+ onFocusChange,
29
+ onValueChange,
30
+ getRootNode,
31
+ children,
32
+ ...props
33
+ }: TabsProps = $props();
34
+
35
+ let context = createTabsContext({
36
+ id,
37
+ ids,
38
+ dir,
39
+ value: $state.snapshot(value),
40
+ loopFocus,
41
+ composite,
42
+ orientation,
43
+ translations,
44
+ activationMode,
45
+ onFocusChange,
46
+ onValueChange,
47
+ getRootNode,
48
+ });
49
+
50
+ let attrs = $derived(mergeProps(props, context.getRootProps()));
51
+
52
+ setTabsContext(context);
53
+ </script>
54
+
55
+ <div {...attrs}>
56
+ {@render children?.(context)}
57
+ </div>
@@ -1,12 +1,22 @@
1
- <script lang="ts" context="module"></script>
2
-
3
- <script lang="ts">import { mergeProps } from "@zag-js/svelte";
4
- import { useTabsContext } from "./context.svelte.js";
5
- let { value, disabled, children, ...props } = $props();
6
- let context = useTabsContext();
7
- let attrs = $derived(mergeProps(props, context.getTriggerProps({ value, disabled })));
8
- </script>
9
-
10
- <button type="button" {...attrs}>
11
- {@render children?.()}
12
- </button>
1
+ <script lang="ts" context="module">
2
+ import type {Assign} from '../types.js';
3
+ import type {TriggerProps} from '@zag-js/tabs';
4
+ import type {SvelteHTMLElements} from 'svelte/elements';
5
+
6
+ export interface TabsTriggerProps extends Assign<SvelteHTMLElements['button'], TriggerProps> {}
7
+ </script>
8
+
9
+ <script lang="ts">
10
+ import {mergeProps} from '@zag-js/svelte';
11
+ import {useTabsContext} from './context.svelte.js';
12
+
13
+ let {value, disabled, children, ...props}: TabsTriggerProps = $props();
14
+
15
+ let context = useTabsContext();
16
+
17
+ let attrs = $derived(mergeProps(props, context.getTriggerProps({value, disabled})));
18
+ </script>
19
+
20
+ <button type="button" {...attrs}>
21
+ {@render children?.()}
22
+ </button>
@@ -1,12 +1,21 @@
1
- <script lang="ts" context="module"></script>
2
-
3
- <script lang="ts">import { mergeProps } from "@zag-js/svelte";
4
- import { useToastContext } from "./context.svelte.js";
5
- let { children, ...props } = $props();
6
- let context = useToastContext();
7
- let attrs = $derived(mergeProps(props, context.getActionTriggerProps()));
8
- </script>
9
-
10
- <button type="button" {...attrs}>
11
- {@render children?.()}
12
- </button>
1
+ <script lang="ts" context="module">
2
+ import type {Assign} from '../types.js';
3
+
4
+ export interface ToastActionTriggerProps extends Assign<SvelteHTMLElements['button'], {}> {}
5
+ </script>
6
+
7
+ <script lang="ts">
8
+ import {mergeProps} from '@zag-js/svelte';
9
+ import type {SvelteHTMLElements} from 'svelte/elements';
10
+ import {useToastContext} from './context.svelte.js';
11
+
12
+ let {children, ...props}: ToastActionTriggerProps = $props();
13
+
14
+ let context = useToastContext();
15
+
16
+ let attrs = $derived(mergeProps(props, context.getActionTriggerProps()));
17
+ </script>
18
+
19
+ <button type="button" {...attrs}>
20
+ {@render children?.()}
21
+ </button>
@@ -1,11 +1,22 @@
1
- <script lang="ts">import * as toast from "@zag-js/toast";
2
- import {
3
- createToastContext,
4
- setToastContext
5
- } from "./context.svelte.js";
6
- let { actor, children$ } = $props();
7
- let context = createToastContext(actor);
8
- setToastContext(context);
9
- </script>
10
-
11
- {@render children$(context)}
1
+ <script lang="ts">
2
+ import * as toast from '@zag-js/toast';
3
+ import type {Snippet} from 'svelte';
4
+ import {
5
+ createToastContext,
6
+ setToastContext,
7
+ type CreateToastContextReturn,
8
+ } from './context.svelte.js';
9
+
10
+ interface Props {
11
+ actor: toast.Service;
12
+ children$: Snippet<[CreateToastContextReturn]>;
13
+ }
14
+
15
+ let {actor, children$}: Props = $props();
16
+
17
+ let context = createToastContext(actor);
18
+
19
+ setToastContext(context);
20
+ </script>
21
+
22
+ {@render children$(context)}
@@ -1,12 +1,21 @@
1
- <script lang="ts" context="module"></script>
2
-
3
- <script lang="ts">import { mergeProps } from "@zag-js/svelte";
4
- import { useToastContext } from "./context.svelte.js";
5
- let { children, ...props } = $props();
6
- let context = useToastContext();
7
- let attrs = $derived(mergeProps(props, context.getCloseTriggerProps()));
8
- </script>
9
-
10
- <button type="button" {...attrs}>
11
- {@render children?.()}
12
- </button>
1
+ <script lang="ts" context="module">
2
+ import type {Assign} from '../types.js';
3
+
4
+ export interface ToastCloseTriggerProps extends Assign<SvelteHTMLElements['button'], {}> {}
5
+ </script>
6
+
7
+ <script lang="ts">
8
+ import {mergeProps} from '@zag-js/svelte';
9
+ import type {SvelteHTMLElements} from 'svelte/elements';
10
+ import {useToastContext} from './context.svelte.js';
11
+
12
+ let {children, ...props}: ToastCloseTriggerProps = $props();
13
+
14
+ let context = useToastContext();
15
+
16
+ let attrs = $derived(mergeProps(props, context.getCloseTriggerProps()));
17
+ </script>
18
+
19
+ <button type="button" {...attrs}>
20
+ {@render children?.()}
21
+ </button>