ui-ingredients 0.0.44 → 0.0.45

Sign up to get free protection for your applications and to get access to all the features.
Files changed (121) hide show
  1. package/README.md +1 -0
  2. package/dist/accordion/create-accordion.svelte.js +3 -4
  3. package/dist/accordion/item-content.svelte +7 -11
  4. package/dist/accordion/item.svelte +2 -2
  5. package/dist/accordion/root.svelte +4 -6
  6. package/dist/avatar/create-avatar.svelte.js +3 -4
  7. package/dist/avatar/root.svelte +2 -2
  8. package/dist/carousel/create-carousel.svelte.js +3 -4
  9. package/dist/carousel/indicator.svelte +2 -2
  10. package/dist/carousel/item.svelte +2 -2
  11. package/dist/carousel/root.svelte +2 -2
  12. package/dist/checkbox/create-checkbox.svelte.js +4 -5
  13. package/dist/checkbox/root.svelte +2 -2
  14. package/dist/clipboard/create-clipboard.svelte.js +3 -4
  15. package/dist/clipboard/root.svelte +2 -2
  16. package/dist/collapsible/create-collapsible.svelte.js +3 -4
  17. package/dist/collapsible/root.svelte +2 -2
  18. package/dist/color-picker/create-color-picker.svelte.js +3 -4
  19. package/dist/color-picker/root.svelte +2 -2
  20. package/dist/combobox/create-combobox.svelte.js +4 -5
  21. package/dist/combobox/item.svelte +2 -2
  22. package/dist/combobox/root.svelte +10 -16
  23. package/dist/create-context.svelte.js +1 -9
  24. package/dist/date-picker/create-date-picker.svelte.js +2 -3
  25. package/dist/date-picker/day-table-cell.svelte +2 -2
  26. package/dist/date-picker/month-table-cell.svelte +2 -2
  27. package/dist/date-picker/root.svelte +10 -18
  28. package/dist/date-picker/year-table-cell.svelte +2 -2
  29. package/dist/dialog/backdrop.svelte +7 -12
  30. package/dist/dialog/create-dialog.svelte.js +3 -4
  31. package/dist/dialog/root.svelte +6 -12
  32. package/dist/editable/create-editable.svelte.js +4 -5
  33. package/dist/editable/root.svelte +2 -2
  34. package/dist/environment-provider/root.svelte +5 -8
  35. package/dist/field/create-field.svelte.d.ts +1 -22
  36. package/dist/field/create-field.svelte.js +9 -20
  37. package/dist/field/root.svelte +2 -2
  38. package/dist/file-upload/create-file-upload.svelte.js +4 -5
  39. package/dist/file-upload/item.svelte +2 -2
  40. package/dist/file-upload/root.svelte +2 -2
  41. package/dist/floating-panel/create-floating-panel.svelte.js +3 -4
  42. package/dist/floating-panel/resize-trigger.svelte +2 -2
  43. package/dist/floating-panel/root.svelte +6 -11
  44. package/dist/highlight/highlight.svelte +42 -0
  45. package/dist/highlight/highlight.svelte.d.ts +18 -0
  46. package/dist/highlight/index.d.ts +1 -0
  47. package/dist/highlight/index.js +1 -0
  48. package/dist/hover-card/create-hover-card.svelte.js +3 -4
  49. package/dist/hover-card/root.svelte +6 -11
  50. package/dist/index.d.ts +1 -0
  51. package/dist/index.js +1 -0
  52. package/dist/locale-provider/root.svelte +8 -6
  53. package/dist/menu/create-menu.svelte.js +3 -4
  54. package/dist/menu/item.svelte +2 -2
  55. package/dist/menu/option-item.svelte +2 -2
  56. package/dist/menu/root.svelte +6 -12
  57. package/dist/number-input/create-number-input.svelte.js +4 -5
  58. package/dist/number-input/root.svelte +2 -2
  59. package/dist/pagination/create-pagination.svelte.js +3 -4
  60. package/dist/pagination/root.svelte +2 -2
  61. package/dist/pin-input/create-pin-input.svelte.js +4 -5
  62. package/dist/pin-input/root.svelte +2 -2
  63. package/dist/popover/create-popover.svelte.js +3 -4
  64. package/dist/popover/root.svelte +6 -11
  65. package/dist/presence/root.svelte +2 -2
  66. package/dist/progress/create-progress.svelte.js +3 -4
  67. package/dist/progress/root.svelte +2 -2
  68. package/dist/qr-code/create-qr-code.svelte.js +3 -4
  69. package/dist/qr-code/root.svelte +2 -2
  70. package/dist/radio-group/create-radio-group.svelte.js +3 -4
  71. package/dist/radio-group/item.svelte +2 -2
  72. package/dist/radio-group/root.svelte +2 -2
  73. package/dist/rating-group/create-rating-group.svelte.js +4 -5
  74. package/dist/rating-group/root.svelte +2 -2
  75. package/dist/segment-group/create-segment-group.svelte.js +3 -4
  76. package/dist/segment-group/item.svelte +2 -2
  77. package/dist/segment-group/root.svelte +2 -2
  78. package/dist/select/create-select.svelte.js +2 -3
  79. package/dist/select/item.svelte +2 -2
  80. package/dist/select/root.svelte +11 -19
  81. package/dist/signature-pad/create-signature-pad.svelte.js +3 -4
  82. package/dist/signature-pad/root.svelte +2 -2
  83. package/dist/slider/create-slider.svelte.js +3 -4
  84. package/dist/slider/root.svelte +2 -2
  85. package/dist/slider/thumb.svelte +2 -2
  86. package/dist/splitter/create-splitter.svelte.js +3 -4
  87. package/dist/splitter/panel.svelte +2 -2
  88. package/dist/splitter/resize-trigger.svelte +2 -2
  89. package/dist/splitter/root.svelte +2 -2
  90. package/dist/steps/create-steps.svelte.js +3 -4
  91. package/dist/steps/item.svelte +2 -2
  92. package/dist/steps/root.svelte +2 -2
  93. package/dist/switch/create-switch.svelte.js +4 -5
  94. package/dist/switch/root.svelte +2 -2
  95. package/dist/tabs/content.svelte +2 -2
  96. package/dist/tabs/create-tabs.svelte.js +3 -4
  97. package/dist/tabs/root.svelte +2 -2
  98. package/dist/tabs/trigger.svelte +2 -2
  99. package/dist/tags-input/create-tags-input.svelte.js +4 -5
  100. package/dist/tags-input/item.svelte +2 -2
  101. package/dist/tags-input/root.svelte +2 -2
  102. package/dist/time-picker/create-time-picker.svelte.js +3 -4
  103. package/dist/time-picker/root.svelte +11 -21
  104. package/dist/timer/create-timer.svelte.js +3 -4
  105. package/dist/timer/item.svelte +2 -2
  106. package/dist/timer/root.svelte +2 -2
  107. package/dist/toast/create-toast.svelte.js +1 -2
  108. package/dist/toast/create-toaster.svelte.js +2 -3
  109. package/dist/toggle-group/create-toggle-group.svelte.js +3 -4
  110. package/dist/toggle-group/item.svelte +2 -2
  111. package/dist/toggle-group/root.svelte +2 -2
  112. package/dist/tooltip/create-tooltip.svelte.js +3 -4
  113. package/dist/tooltip/root.svelte +6 -12
  114. package/dist/tour/create-tour.svelte.js +3 -4
  115. package/dist/tour/overlay.svelte +7 -12
  116. package/dist/tour/root.svelte +6 -11
  117. package/dist/tree-view/branch.svelte +2 -2
  118. package/dist/tree-view/create-tree-view.svelte.js +3 -4
  119. package/dist/tree-view/item.svelte +2 -2
  120. package/dist/tree-view/root.svelte +2 -2
  121. package/package.json +2 -1
@@ -9,7 +9,7 @@ export function createSwitch(props) {
9
9
  const locale = getLocaleContext();
10
10
  const environment = getEnvironmentContext();
11
11
  const id = uid();
12
- const context = $derived(reflect(() => ({
12
+ const context = reflect(() => ({
13
13
  ids: {
14
14
  label: field?.ids.label,
15
15
  hiddenInput: field?.ids.control,
@@ -22,9 +22,9 @@ export function createSwitch(props) {
22
22
  id: props.id ?? id,
23
23
  dir: locale?.dir,
24
24
  getRootNode: environment?.getRootNode,
25
- })));
25
+ }));
26
26
  const [state, send] = useMachine(switch$.machine(context), { context });
27
- const api = $derived(reflect(() => {
27
+ return reflect(() => {
28
28
  const o = switch$.connect(state, send, normalizeProps);
29
29
  return {
30
30
  ...o,
@@ -35,6 +35,5 @@ export function createSwitch(props) {
35
35
  };
36
36
  },
37
37
  };
38
- }));
39
- return api;
38
+ });
40
39
  }
@@ -21,7 +21,7 @@
21
21
 
22
22
  let {asChild, children, ...props}: SwitchProps = $props();
23
23
 
24
- let [switchProps, otherProps] = $derived(
24
+ let [switchProps, localProps] = $derived(
25
25
  createSplitProps<CreateSwitchProps>([
26
26
  'id',
27
27
  'ids',
@@ -40,7 +40,7 @@
40
40
 
41
41
  let switch$ = createSwitch(reflect(() => switchProps));
42
42
 
43
- let mergedProps = $derived(mergeProps(otherProps, switch$.getRootProps()));
43
+ let mergedProps = $derived(mergeProps(localProps, switch$.getRootProps()));
44
44
 
45
45
  setSwitchContext(switch$);
46
46
  </script>
@@ -15,12 +15,12 @@
15
15
 
16
16
  let tabs = getTabsContext();
17
17
 
18
- let [contentProps, otherProps] = $derived(
18
+ let [contentProps, localProps] = $derived(
19
19
  createSplitProps<ContentProps>(['value'])(props),
20
20
  );
21
21
 
22
22
  let mergedProps = $derived(
23
- mergeProps(otherProps, tabs.getContentProps(contentProps)),
23
+ mergeProps(localProps, tabs.getContentProps(contentProps)),
24
24
  );
25
25
  </script>
26
26
 
@@ -7,13 +7,12 @@ export function createTabs(props) {
7
7
  const locale = getLocaleContext();
8
8
  const environment = getEnvironmentContext();
9
9
  const id = uid();
10
- const context = $derived(reflect(() => ({
10
+ const context = reflect(() => ({
11
11
  ...props,
12
12
  id: props.id ?? id,
13
13
  dir: locale?.dir,
14
14
  getRootNode: environment?.getRootNode,
15
- })));
15
+ }));
16
16
  const [state, send] = useMachine(tabs.machine(context), { context });
17
- const api = $derived(reflect(() => tabs.connect(state, send, normalizeProps)));
18
- return api;
17
+ return reflect(() => tabs.connect(state, send, normalizeProps));
19
18
  }
@@ -21,7 +21,7 @@
21
21
 
22
22
  let {asChild, children, ...props}: TabsProps = $props();
23
23
 
24
- let [tabsProps, otherProps] = $derived(
24
+ let [tabsProps, localProps] = $derived(
25
25
  createSplitProps<CreateTabsProps>([
26
26
  'id',
27
27
  'ids',
@@ -38,7 +38,7 @@
38
38
 
39
39
  let tabs = createTabs(reflect(() => tabsProps));
40
40
 
41
- let mergedProps = $derived(mergeProps(otherProps, tabs.getRootProps()));
41
+ let mergedProps = $derived(mergeProps(localProps, tabs.getRootProps()));
42
42
 
43
43
  setTabsContext(tabs);
44
44
  </script>
@@ -15,12 +15,12 @@
15
15
 
16
16
  let tabs = getTabsContext();
17
17
 
18
- let [triggerProps, otherProps] = $derived(
18
+ let [triggerProps, localProps] = $derived(
19
19
  createSplitProps<TriggerProps>(['value', 'disabled'])(props),
20
20
  );
21
21
 
22
22
  let mergedProps = $derived(
23
- mergeProps(otherProps, tabs.getTriggerProps(triggerProps)),
23
+ mergeProps(localProps, tabs.getTriggerProps(triggerProps)),
24
24
  );
25
25
  </script>
26
26
 
@@ -9,7 +9,7 @@ export function createTagsInput(props) {
9
9
  const locale = getLocaleContext();
10
10
  const environment = getEnvironmentContext();
11
11
  const id = uid();
12
- const context = $derived(reflect(() => ({
12
+ const context = reflect(() => ({
13
13
  ids: {
14
14
  label: field?.ids.label,
15
15
  hiddenInput: field?.ids.control,
@@ -22,9 +22,9 @@ export function createTagsInput(props) {
22
22
  id: props.id ?? id,
23
23
  dir: locale?.dir,
24
24
  getRootNode: environment?.getRootNode,
25
- })));
25
+ }));
26
26
  const [state, send] = useMachine(tagsInput.machine(context), { context });
27
- const api = $derived(reflect(() => {
27
+ return reflect(() => {
28
28
  const o = tagsInput.connect(state, send, normalizeProps);
29
29
  return {
30
30
  ...o,
@@ -35,6 +35,5 @@ export function createTagsInput(props) {
35
35
  };
36
36
  },
37
37
  };
38
- }));
39
- return api;
38
+ });
40
39
  }
@@ -18,14 +18,14 @@
18
18
 
19
19
  let tagsInput = getTagsInputContext();
20
20
 
21
- let [itemProps, otherProps] = $derived(
21
+ let [itemProps, localProps] = $derived(
22
22
  createSplitProps<ItemProps>(['index', 'value', 'disabled'])(props),
23
23
  );
24
24
 
25
25
  let itemState = $derived(tagsInput.getItemState(itemProps));
26
26
 
27
27
  let mergedProps = $derived(
28
- mergeProps(otherProps, tagsInput.getItemProps(itemProps)),
28
+ mergeProps(localProps, tagsInput.getItemProps(itemProps)),
29
29
  );
30
30
 
31
31
  setTagsInputItemPropsContext(() => itemProps);
@@ -21,7 +21,7 @@
21
21
 
22
22
  let {asChild, children, ...props}: TagsInputProps = $props();
23
23
 
24
- let [tagsInputProps, otherProps] = $derived(
24
+ let [tagsInputProps, localProps] = $derived(
25
25
  createSplitProps<CreateTagsInputProps>([
26
26
  'id',
27
27
  'ids',
@@ -55,7 +55,7 @@
55
55
 
56
56
  let tagsInput = createTagsInput(reflect(() => tagsInputProps));
57
57
 
58
- let mergedProps = $derived(mergeProps(otherProps, tagsInput.getRootProps()));
58
+ let mergedProps = $derived(mergeProps(localProps, tagsInput.getRootProps()));
59
59
 
60
60
  setTagsInputContext(tagsInput);
61
61
  </script>
@@ -7,7 +7,7 @@ export function createTimePicker(props) {
7
7
  const locale = getLocaleContext();
8
8
  const environment = getEnvironmentContext();
9
9
  const id = uid();
10
- const context = $derived(reflect(() => ({
10
+ const context = reflect(() => ({
11
11
  ...props,
12
12
  id: props.id ?? id,
13
13
  dir: locale?.dir,
@@ -15,8 +15,7 @@ export function createTimePicker(props) {
15
15
  locale: props.locale ?? locale?.locale,
16
16
  getRootNode: environment?.getRootNode,
17
17
  'open.controlled': props.defaultOpen != null,
18
- })));
18
+ }));
19
19
  const [state, send] = useMachine(timePicker.machine(context), { context });
20
- const api = $derived(reflect(() => timePicker.connect(state, send, normalizeProps)));
21
- return api;
20
+ return reflect(() => timePicker.connect(state, send, normalizeProps));
22
21
  }
@@ -25,7 +25,7 @@
25
25
 
26
26
  let {asChild, children, ...props}: TimePickerProps = $props();
27
27
 
28
- let [timePickerProps, otherProps] = $derived(
28
+ let [timePickerProps, rest] = $derived(
29
29
  createSplitProps<CreateTimePickerProps>([
30
30
  'id',
31
31
  'ids',
@@ -49,30 +49,20 @@
49
49
  ])(props),
50
50
  );
51
51
 
52
- let timePicker = createTimePicker(reflect(() => timePickerProps));
53
-
54
- let [presenceStrategyProps, elementProps] = $derived(
55
- createSplitProps<PresenceStrategyProps>(['lazyMount', 'keepMounted'])(
56
- otherProps,
57
- ),
52
+ let [presenceStrategyProps, localProps] = $derived(
53
+ createSplitProps<PresenceStrategyProps>(['lazyMount', 'keepMounted'])(rest),
58
54
  );
59
55
 
60
- let presence = createPresence({
61
- get present() {
62
- return timePicker.open;
63
- },
64
- get lazyMount() {
65
- return presenceStrategyProps.lazyMount;
66
- },
67
- get keepMounted() {
68
- return presenceStrategyProps.keepMounted;
69
- },
70
- });
71
-
72
- let mergedProps = $derived(
73
- mergeProps(elementProps, timePicker.getRootProps()),
56
+ let timePicker = createTimePicker(reflect(() => timePickerProps));
57
+ let presence = createPresence(
58
+ reflect(() => ({
59
+ ...presenceStrategyProps,
60
+ present: timePicker.open,
61
+ })),
74
62
  );
75
63
 
64
+ let mergedProps = $derived(mergeProps(localProps, timePicker.getRootProps()));
65
+
76
66
  setTimePickerContext(timePicker);
77
67
  setPresenceContext(presence);
78
68
  </script>
@@ -5,12 +5,11 @@ import { uid } from 'uid';
5
5
  export function createTimer(props) {
6
6
  const environment = getEnvironmentContext();
7
7
  const id = uid();
8
- const context = $derived(reflect(() => ({
8
+ const context = reflect(() => ({
9
9
  ...props,
10
10
  id: props.id ?? id,
11
11
  getRootNode: environment?.getRootNode,
12
- })));
12
+ }));
13
13
  const [state, send] = useMachine(timer.machine(context), { context });
14
- const api = $derived(reflect(() => timer.connect(state, send, normalizeProps)));
15
- return api;
14
+ return reflect(() => timer.connect(state, send, normalizeProps));
16
15
  }
@@ -15,12 +15,12 @@
15
15
 
16
16
  let timer = getTimerContext();
17
17
 
18
- let [itemProps, otherProps] = $derived(
18
+ let [itemProps, localProps] = $derived(
19
19
  createSplitProps<ItemProps>(['type'])(props),
20
20
  );
21
21
 
22
22
  let mergedProps = $derived(
23
- mergeProps(otherProps, timer.getItemProps(itemProps)),
23
+ mergeProps(localProps, timer.getItemProps(itemProps)),
24
24
  );
25
25
 
26
26
  setTimerItemPropsContext(() => itemProps);
@@ -21,7 +21,7 @@
21
21
 
22
22
  let {asChild, children, ...props}: TimerProps = $props();
23
23
 
24
- let [timerProps, otherProps] = $derived(
24
+ let [timerProps, localProps] = $derived(
25
25
  createSplitProps<CreateTimerProps>([
26
26
  'id',
27
27
  'startMs',
@@ -36,7 +36,7 @@
36
36
 
37
37
  let timer = createTimer(reflect(() => timerProps));
38
38
 
39
- let mergedProps = $derived(mergeProps(otherProps, timer.getRootProps()));
39
+ let mergedProps = $derived(mergeProps(localProps, timer.getRootProps()));
40
40
 
41
41
  setTimerContext(timer);
42
42
  </script>
@@ -2,6 +2,5 @@ import { normalizeProps, reflect, useActor } from '@zag-js/svelte';
2
2
  import * as toast from '@zag-js/toast';
3
3
  export function createToast(props) {
4
4
  const [state, send] = useActor(props);
5
- const api = $derived(reflect(() => toast.connect(state, send, normalizeProps)));
6
- return api;
5
+ return reflect(() => toast.connect(state, send, normalizeProps));
7
6
  }
@@ -13,9 +13,8 @@ export function createToaster(props) {
13
13
  dir: locale?.dir,
14
14
  getRootNode: environment?.getRootNode,
15
15
  }));
16
- const api = $derived(reflect(() => ({
16
+ return reflect(() => ({
17
17
  machine,
18
18
  ...toast.group.connect(machine, machine.send, normalizeProps),
19
- })));
20
- return api;
19
+ }));
21
20
  }
@@ -7,13 +7,12 @@ export function createToggleGroup(props) {
7
7
  const locale = getLocaleContext();
8
8
  const environment = getEnvironmentContext();
9
9
  const id = uid();
10
- const context = $derived(reflect(() => ({
10
+ const context = reflect(() => ({
11
11
  ...props,
12
12
  id: props.id ?? id,
13
13
  dir: locale?.dir,
14
14
  getRootNode: environment?.getRootNode,
15
- })));
15
+ }));
16
16
  const [state, send] = useMachine(toggleGroup.machine(context), { context });
17
- const api = $derived(reflect(() => toggleGroup.connect(state, send, normalizeProps)));
18
- return api;
17
+ return reflect(() => toggleGroup.connect(state, send, normalizeProps));
19
18
  }
@@ -15,14 +15,14 @@
15
15
 
16
16
  let toggleGroup = getToggleGroupContext();
17
17
 
18
- let [itemProps, otherProps] = $derived(
18
+ let [itemProps, localProps] = $derived(
19
19
  createSplitProps<ItemProps>(['value', 'disabled'])(props),
20
20
  );
21
21
 
22
22
  let itemState = $derived(toggleGroup.getItemState(itemProps));
23
23
 
24
24
  let mergedProps = $derived(
25
- mergeProps(otherProps, toggleGroup.getItemProps(itemProps)),
25
+ mergeProps(localProps, toggleGroup.getItemProps(itemProps)),
26
26
  );
27
27
  </script>
28
28
 
@@ -21,7 +21,7 @@
21
21
 
22
22
  let {asChild, children, ...props}: ToggleGroupProps = $props();
23
23
 
24
- let [toggleGroupProps, otherProps] = $derived(
24
+ let [toggleGroupProps, localProps] = $derived(
25
25
  createSplitProps<CreateToggleGroupProps>([
26
26
  'id',
27
27
  'ids',
@@ -38,7 +38,7 @@
38
38
  let toggleGroup = createToggleGroup(reflect(() => toggleGroupProps));
39
39
 
40
40
  let mergedProps = $derived(
41
- mergeProps(otherProps, toggleGroup.getRootProps()),
41
+ mergeProps(localProps, toggleGroup.getRootProps()),
42
42
  );
43
43
 
44
44
  setToggleGroupContext(toggleGroup);
@@ -7,15 +7,14 @@ export function createTooltip(props) {
7
7
  const locale = getLocaleContext();
8
8
  const environment = getEnvironmentContext();
9
9
  const id = uid();
10
- const context = $derived(reflect(() => ({
10
+ const context = reflect(() => ({
11
11
  ...props,
12
12
  id: props.id ?? id,
13
13
  dir: locale?.dir,
14
14
  open: props.defaultOpen ?? props.open,
15
15
  getRootNode: environment?.getRootNode,
16
16
  'open.controlled': props.open != null,
17
- })));
17
+ }));
18
18
  const [state, send] = useMachine(tooltip.machine(context), { context });
19
- const api = $derived(reflect(() => tooltip.connect(state, send, normalizeProps)));
20
- return api;
19
+ return reflect(() => tooltip.connect(state, send, normalizeProps));
21
20
  }
@@ -30,18 +30,12 @@
30
30
  );
31
31
 
32
32
  let tooltip = createTooltip(reflect(() => tooltipProps));
33
-
34
- let presence = createPresence({
35
- get present() {
36
- return tooltip.open;
37
- },
38
- get lazyMount() {
39
- return presenceStrategyProps.lazyMount;
40
- },
41
- get keepMounted() {
42
- return presenceStrategyProps.keepMounted;
43
- },
44
- });
33
+ let presence = createPresence(
34
+ reflect(() => ({
35
+ ...presenceStrategyProps,
36
+ present: tooltip.open,
37
+ })),
38
+ );
45
39
 
46
40
  setTooltipContext(tooltip);
47
41
  setPresenceContext(presence);
@@ -7,13 +7,12 @@ export function createTour(props) {
7
7
  const locale = getLocaleContext();
8
8
  const environment = getEnvironmentContext();
9
9
  const id = uid();
10
- const context = $derived(reflect(() => ({
10
+ const context = reflect(() => ({
11
11
  ...props,
12
12
  id: props.id ?? id,
13
13
  dir: locale?.dir,
14
14
  getRootNode: environment?.getRootNode,
15
- })));
15
+ }));
16
16
  const [state, send] = useMachine(tour.machine(context), { context });
17
- const api = $derived(reflect(() => tour.connect(state, send, normalizeProps)));
18
- return api;
17
+ return reflect(() => tour.connect(state, send, normalizeProps));
19
18
  }
@@ -8,24 +8,19 @@
8
8
  import {mergeProps} from '../merge-props.js';
9
9
  import {getPresenceStrategyPropsContext} from '../presence/context.svelte.js';
10
10
  import {createPresence} from '../presence/create-presence.svelte.js';
11
+ import {reflect} from '@zag-js/svelte';
11
12
  import {getTourContext} from './context.svelte.js';
12
13
 
13
14
  let {asChild, children, ...props}: TourOverlayProps = $props();
14
15
 
15
16
  let tour = getTourContext();
16
-
17
17
  let presenceStrategyProps = getPresenceStrategyPropsContext();
18
- let presence = createPresence({
19
- get present() {
20
- return tour.currentStep != null;
21
- },
22
- get lazyMount() {
23
- return presenceStrategyProps.lazyMount;
24
- },
25
- get keepMounted() {
26
- return presenceStrategyProps.keepMounted;
27
- },
28
- });
18
+ let presence = createPresence(
19
+ reflect(() => ({
20
+ ...presenceStrategyProps,
21
+ present: tour.currentStep != null,
22
+ })),
23
+ );
29
24
 
30
25
  let mergedProps = $derived(
31
26
  mergeProps(props, tour.getOverlayProps(), presence.getPresenceProps()),
@@ -32,17 +32,12 @@
32
32
 
33
33
  let tour = createTour(reflect(() => tourProps));
34
34
 
35
- let presence = createPresence({
36
- get present() {
37
- return tour.currentStep != null;
38
- },
39
- get lazyMount() {
40
- return presenceStrategyProps.lazyMount;
41
- },
42
- get keepMounted() {
43
- return presenceStrategyProps.keepMounted;
44
- },
45
- });
35
+ let presence = createPresence(
36
+ reflect(() => ({
37
+ ...presenceStrategyProps,
38
+ present: tour.currentStep != null,
39
+ })),
40
+ );
46
41
 
47
42
  setTourContext(tour);
48
43
  setPresenceContext(presence);
@@ -18,14 +18,14 @@
18
18
 
19
19
  let treeView = getTreeViewContext();
20
20
 
21
- let [branchProps, otherProps] = $derived(
21
+ let [branchProps, localProps] = $derived(
22
22
  createSplitProps<BranchProps>(['depth', 'value', 'disabled'])(props),
23
23
  );
24
24
 
25
25
  let branchState = $derived(treeView.getBranchState(branchProps));
26
26
 
27
27
  let mergedProps = $derived(
28
- mergeProps(otherProps, treeView.getBranchProps(branchProps)),
28
+ mergeProps(localProps, treeView.getBranchProps(branchProps)),
29
29
  );
30
30
 
31
31
  setTreeViewBranchPropsContext(() => branchProps);
@@ -7,13 +7,12 @@ export function createTreeView(props) {
7
7
  const locale = getLocaleContext();
8
8
  const environment = getEnvironmentContext();
9
9
  const id = uid();
10
- const context = $derived(reflect(() => ({
10
+ const context = reflect(() => ({
11
11
  ...props,
12
12
  id: props.id ?? id,
13
13
  dir: locale?.dir,
14
14
  getRootNode: environment?.getRootNode,
15
- })));
15
+ }));
16
16
  const [state, send] = useMachine(treeView.machine(context), { context });
17
- const api = $derived(reflect(() => treeView.connect(state, send, normalizeProps)));
18
- return api;
17
+ return reflect(() => treeView.connect(state, send, normalizeProps));
19
18
  }
@@ -18,14 +18,14 @@
18
18
 
19
19
  let treeView = getTreeViewContext();
20
20
 
21
- let [itemProps, otherProps] = $derived(
21
+ let [itemProps, localProps] = $derived(
22
22
  createSplitProps<ItemProps>(['depth', 'value', 'disabled'])(props),
23
23
  );
24
24
 
25
25
  let itemState = $derived(treeView.getItemState(itemProps));
26
26
 
27
27
  let mergedProps = $derived(
28
- mergeProps(otherProps, treeView.getItemProps(itemProps)),
28
+ mergeProps(localProps, treeView.getItemProps(itemProps)),
29
29
  );
30
30
 
31
31
  setTreeViewItemPropsContext(() => itemProps);
@@ -21,7 +21,7 @@
21
21
 
22
22
  let {asChild, children, ...props}: TreeViewProps = $props();
23
23
 
24
- let [treeViewProps, otherProps] = $derived(
24
+ let [treeViewProps, localProps] = $derived(
25
25
  createSplitProps<CreateTreeViewProps>([
26
26
  'id',
27
27
  'ids',
@@ -39,7 +39,7 @@
39
39
 
40
40
  let treeView = createTreeView(reflect(() => treeViewProps));
41
41
 
42
- let mergedProps = $derived(mergeProps(otherProps, treeView.getRootProps()));
42
+ let mergedProps = $derived(mergeProps(localProps, treeView.getRootProps()));
43
43
 
44
44
  setTreeViewContext(treeView);
45
45
  </script>
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "ui-ingredients",
3
3
  "type": "module",
4
- "version": "0.0.44",
4
+ "version": "0.0.45",
5
5
  "packageManager": "pnpm@9.7.0",
6
6
  "svelte": "./dist/index.js",
7
7
  "types": "./dist/index.d.ts",
@@ -100,6 +100,7 @@
100
100
  "@zag-js/editable": "0.67.0",
101
101
  "@zag-js/file-upload": "0.67.0",
102
102
  "@zag-js/floating-panel": "0.67.0",
103
+ "@zag-js/highlight-word": "0.67.0",
103
104
  "@zag-js/hover-card": "0.67.0",
104
105
  "@zag-js/i18n-utils": "0.67.0",
105
106
  "@zag-js/menu": "0.67.0",