@sprawlify/svelte 0.0.78 → 0.0.79

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 (129) hide show
  1. package/dist/components/alert-dialog/alert-dialog-anatomy.d.ts +2 -2
  2. package/dist/components/anatomy.d.ts +1 -1
  3. package/dist/components/anatomy.js +1 -1
  4. package/dist/components/carousel/carousel-anatomy.d.ts +1 -1
  5. package/dist/components/color-picker/color-picker-anatomy.d.ts +1 -1
  6. package/dist/components/combobox/combobox-anatomy.d.ts +1 -1
  7. package/dist/components/date-picker/date-picker-anatomy.d.ts +1 -1
  8. package/dist/components/dropdown-menu/dropdown-menu-anatomy.d.ts +1 -0
  9. package/dist/components/dropdown-menu/dropdown-menu-anatomy.js +1 -0
  10. package/dist/components/dropdown-menu/dropdown-menu-arrow-tip.svelte +19 -0
  11. package/dist/components/dropdown-menu/dropdown-menu-arrow-tip.svelte.d.ts +8 -0
  12. package/dist/components/dropdown-menu/dropdown-menu-arrow.svelte +19 -0
  13. package/dist/components/dropdown-menu/dropdown-menu-arrow.svelte.d.ts +8 -0
  14. package/dist/components/{menu/menu-checkbox-item.svelte → dropdown-menu/dropdown-menu-checkbox-item.svelte} +12 -12
  15. package/dist/components/dropdown-menu/dropdown-menu-checkbox-item.svelte.d.ts +10 -0
  16. package/dist/components/dropdown-menu/dropdown-menu-content.svelte +27 -0
  17. package/dist/components/dropdown-menu/dropdown-menu-content.svelte.d.ts +8 -0
  18. package/dist/components/dropdown-menu/dropdown-menu-context.svelte +17 -0
  19. package/dist/components/dropdown-menu/dropdown-menu-context.svelte.d.ts +8 -0
  20. package/dist/components/dropdown-menu/dropdown-menu-indicator.svelte +19 -0
  21. package/dist/components/dropdown-menu/dropdown-menu-indicator.svelte.d.ts +8 -0
  22. package/dist/components/dropdown-menu/dropdown-menu-item-context.svelte +14 -0
  23. package/dist/components/dropdown-menu/dropdown-menu-item-context.svelte.d.ts +8 -0
  24. package/dist/components/dropdown-menu/dropdown-menu-item-group-label.svelte +21 -0
  25. package/dist/components/dropdown-menu/dropdown-menu-item-group-label.svelte.d.ts +8 -0
  26. package/dist/components/dropdown-menu/dropdown-menu-item-group.svelte +27 -0
  27. package/dist/components/dropdown-menu/dropdown-menu-item-group.svelte.d.ts +10 -0
  28. package/dist/components/dropdown-menu/dropdown-menu-item-indicator.svelte +21 -0
  29. package/dist/components/dropdown-menu/dropdown-menu-item-indicator.svelte.d.ts +8 -0
  30. package/dist/components/dropdown-menu/dropdown-menu-item-text.svelte +21 -0
  31. package/dist/components/dropdown-menu/dropdown-menu-item-text.svelte.d.ts +8 -0
  32. package/dist/components/dropdown-menu/dropdown-menu-item.svelte +42 -0
  33. package/dist/components/dropdown-menu/dropdown-menu-item.svelte.d.ts +12 -0
  34. package/dist/components/dropdown-menu/dropdown-menu-positioner.svelte +23 -0
  35. package/dist/components/dropdown-menu/dropdown-menu-positioner.svelte.d.ts +8 -0
  36. package/dist/components/dropdown-menu/dropdown-menu-radio-item-group.svelte +44 -0
  37. package/dist/components/dropdown-menu/dropdown-menu-radio-item-group.svelte.d.ts +10 -0
  38. package/dist/components/dropdown-menu/dropdown-menu-radio-item.svelte +43 -0
  39. package/dist/components/dropdown-menu/dropdown-menu-radio-item.svelte.d.ts +10 -0
  40. package/dist/components/{menu/menu-root-provider.svelte → dropdown-menu/dropdown-menu-root-provider.svelte} +13 -13
  41. package/dist/components/dropdown-menu/dropdown-menu-root-provider.svelte.d.ts +14 -0
  42. package/dist/components/{menu/menu-root.svelte → dropdown-menu/dropdown-menu-root.svelte} +22 -22
  43. package/dist/components/dropdown-menu/dropdown-menu-root.svelte.d.ts +11 -0
  44. package/dist/components/dropdown-menu/dropdown-menu-separator.svelte +19 -0
  45. package/dist/components/dropdown-menu/dropdown-menu-separator.svelte.d.ts +8 -0
  46. package/dist/components/dropdown-menu/dropdown-menu-trigger-item.svelte +22 -0
  47. package/dist/components/dropdown-menu/dropdown-menu-trigger-item.svelte.d.ts +8 -0
  48. package/dist/components/dropdown-menu/dropdown-menu-trigger.svelte +22 -0
  49. package/dist/components/dropdown-menu/dropdown-menu-trigger.svelte.d.ts +8 -0
  50. package/dist/components/dropdown-menu/dropdown-menu.d.ts +21 -0
  51. package/dist/components/dropdown-menu/dropdown-menu.js +20 -0
  52. package/dist/components/dropdown-menu/index.d.ts +27 -0
  53. package/dist/components/dropdown-menu/index.js +25 -0
  54. package/dist/components/dropdown-menu/use-dropdown-menu-context.d.ts +4 -0
  55. package/dist/components/dropdown-menu/use-dropdown-menu-context.js +7 -0
  56. package/dist/components/dropdown-menu/use-dropdown-menu-item-context.d.ts +5 -0
  57. package/dist/components/dropdown-menu/use-dropdown-menu-item-context.js +6 -0
  58. package/dist/components/dropdown-menu/use-dropdown-menu-item-group-context.d.ts +11 -0
  59. package/dist/components/dropdown-menu/use-dropdown-menu-item-group-context.js +6 -0
  60. package/dist/components/dropdown-menu/use-dropdown-menu-machine-context.d.ts +4 -0
  61. package/dist/components/dropdown-menu/use-dropdown-menu-machine-context.js +7 -0
  62. package/dist/components/dropdown-menu/use-dropdown-menu-option-item-props-context.d.ts +3 -0
  63. package/dist/components/dropdown-menu/use-dropdown-menu-option-item-props-context.js +6 -0
  64. package/dist/components/dropdown-menu/use-dropdown-menu-trigger-item-context.d.ts +4 -0
  65. package/dist/components/dropdown-menu/use-dropdown-menu-trigger-item-context.js +7 -0
  66. package/dist/components/dropdown-menu/use-dropdown-menu.svelte.d.ts +12 -0
  67. package/dist/components/{menu/use-menu.svelte.js → dropdown-menu/use-dropdown-menu.svelte.js} +4 -4
  68. package/dist/components/listbox/listbox-anatomy.d.ts +1 -1
  69. package/dist/components/tour/tour-anatomy.d.ts +1 -1
  70. package/dist/components/tree-view/tree-view-split-props.d.ts +1 -1
  71. package/package.json +7 -7
  72. package/dist/components/menu/index.d.ts +0 -28
  73. package/dist/components/menu/index.js +0 -26
  74. package/dist/components/menu/menu-anatomy.d.ts +0 -1
  75. package/dist/components/menu/menu-anatomy.js +0 -1
  76. package/dist/components/menu/menu-arrow-tip.svelte +0 -19
  77. package/dist/components/menu/menu-arrow-tip.svelte.d.ts +0 -8
  78. package/dist/components/menu/menu-arrow.svelte +0 -19
  79. package/dist/components/menu/menu-arrow.svelte.d.ts +0 -8
  80. package/dist/components/menu/menu-checkbox-item.svelte.d.ts +0 -10
  81. package/dist/components/menu/menu-content.svelte +0 -27
  82. package/dist/components/menu/menu-content.svelte.d.ts +0 -8
  83. package/dist/components/menu/menu-context-trigger.svelte +0 -19
  84. package/dist/components/menu/menu-context-trigger.svelte.d.ts +0 -8
  85. package/dist/components/menu/menu-context.svelte +0 -17
  86. package/dist/components/menu/menu-context.svelte.d.ts +0 -8
  87. package/dist/components/menu/menu-indicator.svelte +0 -19
  88. package/dist/components/menu/menu-indicator.svelte.d.ts +0 -8
  89. package/dist/components/menu/menu-item-context.svelte +0 -14
  90. package/dist/components/menu/menu-item-context.svelte.d.ts +0 -8
  91. package/dist/components/menu/menu-item-group-label.svelte +0 -21
  92. package/dist/components/menu/menu-item-group-label.svelte.d.ts +0 -8
  93. package/dist/components/menu/menu-item-group.svelte +0 -27
  94. package/dist/components/menu/menu-item-group.svelte.d.ts +0 -10
  95. package/dist/components/menu/menu-item-indicator.svelte +0 -21
  96. package/dist/components/menu/menu-item-indicator.svelte.d.ts +0 -8
  97. package/dist/components/menu/menu-item-text.svelte +0 -21
  98. package/dist/components/menu/menu-item-text.svelte.d.ts +0 -8
  99. package/dist/components/menu/menu-item.svelte +0 -42
  100. package/dist/components/menu/menu-item.svelte.d.ts +0 -12
  101. package/dist/components/menu/menu-positioner.svelte +0 -23
  102. package/dist/components/menu/menu-positioner.svelte.d.ts +0 -8
  103. package/dist/components/menu/menu-radio-item-group.svelte +0 -44
  104. package/dist/components/menu/menu-radio-item-group.svelte.d.ts +0 -10
  105. package/dist/components/menu/menu-radio-item.svelte +0 -43
  106. package/dist/components/menu/menu-radio-item.svelte.d.ts +0 -10
  107. package/dist/components/menu/menu-root-provider.svelte.d.ts +0 -14
  108. package/dist/components/menu/menu-root.svelte.d.ts +0 -11
  109. package/dist/components/menu/menu-separator.svelte +0 -19
  110. package/dist/components/menu/menu-separator.svelte.d.ts +0 -8
  111. package/dist/components/menu/menu-trigger-item.svelte +0 -22
  112. package/dist/components/menu/menu-trigger-item.svelte.d.ts +0 -8
  113. package/dist/components/menu/menu-trigger.svelte +0 -22
  114. package/dist/components/menu/menu-trigger.svelte.d.ts +0 -8
  115. package/dist/components/menu/menu.d.ts +0 -22
  116. package/dist/components/menu/menu.js +0 -21
  117. package/dist/components/menu/use-menu-context.d.ts +0 -4
  118. package/dist/components/menu/use-menu-context.js +0 -7
  119. package/dist/components/menu/use-menu-item-context.d.ts +0 -5
  120. package/dist/components/menu/use-menu-item-context.js +0 -6
  121. package/dist/components/menu/use-menu-item-group-context.d.ts +0 -11
  122. package/dist/components/menu/use-menu-item-group-context.js +0 -6
  123. package/dist/components/menu/use-menu-machine-context.d.ts +0 -4
  124. package/dist/components/menu/use-menu-machine-context.js +0 -7
  125. package/dist/components/menu/use-menu-option-item-props-context.d.ts +0 -3
  126. package/dist/components/menu/use-menu-option-item-props-context.js +0 -6
  127. package/dist/components/menu/use-menu-trigger-item-context.d.ts +0 -4
  128. package/dist/components/menu/use-menu-trigger-item-context.js +0 -7
  129. package/dist/components/menu/use-menu.svelte.d.ts +0 -12
@@ -0,0 +1,43 @@
1
+ <script module lang="ts">
2
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types'
3
+ import type { OptionItemProps } from '@sprawlify/primitives/machines/dropdown-menu'
4
+
5
+ type PartialOptionItemProps = Omit<OptionItemProps, 'type' | 'checked' | 'onCheckedChange'>
6
+
7
+ export interface DropdownMenuRadioItemBaseProps extends PartialOptionItemProps, PolymorphicProps<'div'>, RefAttribute {}
8
+ export interface DropdownMenuRadioItemProps extends Assign<HTMLProps<'div'>, DropdownMenuRadioItemBaseProps> {}
9
+ </script>
10
+
11
+ <script lang="ts">
12
+ import { mergeProps } from '../../core'
13
+ import { Sprawlify } from '../factory'
14
+ import { createSplitProps } from '../../utils/create-split-props'
15
+ import { useDropdownMenuContext } from './use-dropdown-menu-context'
16
+ import { DropdownMenuItemProvider } from './use-dropdown-menu-item-context'
17
+ import { useDropdownMenuItemGroupContext } from './use-dropdown-menu-item-group-context'
18
+ import { DropdownMenuItemPropsProvider } from './use-dropdown-menu-option-item-props-context'
19
+
20
+ let { ref = $bindable(null), ...props }: DropdownMenuRadioItemProps = $props()
21
+
22
+ const [partialItemProps, localProps] = $derived(
23
+ createSplitProps<PartialOptionItemProps>()(props, ['closeOnSelect', 'disabled', 'value', 'valueText']),
24
+ )
25
+
26
+ const dropdownMenu = useDropdownMenuContext()
27
+ const itemGroup = useDropdownMenuItemGroupContext()
28
+
29
+ const optionItemProps: OptionItemProps = $derived({
30
+ ...partialItemProps,
31
+ checked: itemGroup().value === partialItemProps.value,
32
+ type: 'radio',
33
+ onCheckedChange: () => itemGroup().onValueChange?.({ value: partialItemProps.value }),
34
+ })
35
+
36
+ const mergedProps = $derived(mergeProps(dropdownMenu().getOptionItemProps(optionItemProps), localProps))
37
+ const optionItemState = $derived(dropdownMenu().getOptionItemState(optionItemProps))
38
+
39
+ DropdownMenuItemPropsProvider(() => optionItemProps)
40
+ DropdownMenuItemProvider(() => optionItemState)
41
+ </script>
42
+
43
+ <Sprawlify as="div" bind:ref {...mergedProps} />
@@ -0,0 +1,10 @@
1
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types';
2
+ import type { OptionItemProps } from '@sprawlify/primitives/machines/dropdown-menu';
3
+ type PartialOptionItemProps = Omit<OptionItemProps, 'type' | 'checked' | 'onCheckedChange'>;
4
+ export interface DropdownMenuRadioItemBaseProps extends PartialOptionItemProps, PolymorphicProps<'div'>, RefAttribute {
5
+ }
6
+ export interface DropdownMenuRadioItemProps extends Assign<HTMLProps<'div'>, DropdownMenuRadioItemBaseProps> {
7
+ }
8
+ declare const DropdownMenuRadioItem: import("svelte").Component<DropdownMenuRadioItemProps, {}, "ref">;
9
+ type DropdownMenuRadioItem = ReturnType<typeof DropdownMenuRadioItem>;
10
+ export default DropdownMenuRadioItem;
@@ -1,28 +1,28 @@
1
1
  <script module lang="ts">
2
2
  import { onMount, type Snippet } from 'svelte'
3
3
  import type { UsePresenceProps } from '../presence'
4
- import type { UseMenuReturn } from './use-menu.svelte'
4
+ import type { UseDropdownMenuReturn } from './use-dropdown-menu.svelte'
5
5
 
6
6
  interface RootProviderProps {
7
- value: UseMenuReturn
7
+ value: UseDropdownMenuReturn
8
8
  }
9
9
 
10
- export interface MenuRootProviderBaseProps extends RootProviderProps, UsePresenceProps {
10
+ export interface DropdownMenuRootProviderBaseProps extends RootProviderProps, UsePresenceProps {
11
11
  children?: Snippet
12
12
  }
13
- export interface MenuRootProviderProps extends MenuRootProviderBaseProps {}
13
+ export interface DropdownMenuRootProviderProps extends DropdownMenuRootProviderBaseProps {}
14
14
  </script>
15
15
 
16
16
  <script lang="ts">
17
17
  import { PresenceProvider, splitPresenceProps, usePresence } from '../presence'
18
- import { MenuProvider, useMenuContext } from './use-menu-context'
19
- import { MenuMachineProvider, useMenuMachineContext } from './use-menu-machine-context'
20
- import { MenuTriggerItemProvider } from './use-menu-trigger-item-context'
18
+ import { DropdownMenuProvider, useDropdownMenuContext } from './use-dropdown-menu-context'
19
+ import { DropdownMenuMachineProvider, useDropdownMenuMachineContext } from './use-dropdown-menu-machine-context'
20
+ import { DropdownMenuTriggerItemProvider } from './use-dropdown-menu-trigger-item-context'
21
21
 
22
- const { value, ...props }: MenuRootProviderProps = $props()
22
+ const { value, ...props }: DropdownMenuRootProviderProps = $props()
23
23
 
24
- const parentApi = useMenuContext()
25
- const parentMachine = useMenuMachineContext()
24
+ const parentApi = useDropdownMenuContext()
25
+ const parentMachine = useDropdownMenuMachineContext()
26
26
 
27
27
  const [presenceProps, restProps] = $derived(splitPresenceProps(props))
28
28
 
@@ -47,9 +47,9 @@
47
47
 
48
48
  const triggerItemContext = $derived(parentApi?.().getTriggerItemProps(api))
49
49
 
50
- MenuTriggerItemProvider(() => triggerItemContext)
51
- MenuMachineProvider(() => service)
52
- MenuProvider(() => api)
50
+ DropdownMenuTriggerItemProvider(() => triggerItemContext)
51
+ DropdownMenuMachineProvider(() => service)
52
+ DropdownMenuProvider(() => api)
53
53
  PresenceProvider(presence)
54
54
  </script>
55
55
 
@@ -0,0 +1,14 @@
1
+ import { type Snippet } from 'svelte';
2
+ import type { UsePresenceProps } from '../presence';
3
+ import type { UseDropdownMenuReturn } from './use-dropdown-menu.svelte';
4
+ interface RootProviderProps {
5
+ value: UseDropdownMenuReturn;
6
+ }
7
+ export interface DropdownMenuRootProviderBaseProps extends RootProviderProps, UsePresenceProps {
8
+ children?: Snippet;
9
+ }
10
+ export interface DropdownMenuRootProviderProps extends DropdownMenuRootProviderBaseProps {
11
+ }
12
+ declare const DropdownMenuRootProvider: import("svelte").Component<DropdownMenuRootProviderProps, {}, "">;
13
+ type DropdownMenuRootProvider = ReturnType<typeof DropdownMenuRootProvider>;
14
+ export default DropdownMenuRootProvider;
@@ -1,28 +1,28 @@
1
1
  <script module lang="ts">
2
2
  import { onMount, type Snippet } from 'svelte'
3
3
  import type { UsePresenceProps } from '../presence'
4
- import type { UseMenuProps } from './use-menu.svelte'
4
+ import type { UseDropdownMenuProps } from './use-dropdown-menu.svelte'
5
5
 
6
- export interface MenuRootBaseProps extends UseMenuProps, UsePresenceProps {
6
+ export interface DropdownMenuRootBaseProps extends UseDropdownMenuProps, UsePresenceProps {
7
7
  children?: Snippet
8
8
  }
9
- export interface MenuRootProps extends MenuRootBaseProps {}
9
+ export interface DropdownMenuRootProps extends DropdownMenuRootBaseProps {}
10
10
  </script>
11
11
 
12
12
  <script lang="ts">
13
13
  import { createSplitProps } from '../../utils/create-split-props'
14
14
  import { PresenceProvider, splitPresenceProps, usePresence } from '../presence'
15
- import { MenuProvider, useMenuContext } from './use-menu-context'
16
- import { MenuMachineProvider, useMenuMachineContext } from './use-menu-machine-context'
17
- import { MenuTriggerItemProvider } from './use-menu-trigger-item-context'
18
- import { useMenu } from './use-menu.svelte'
15
+ import { DropdownMenuProvider, useDropdownMenuContext } from './use-dropdown-menu-context'
16
+ import { DropdownMenuMachineProvider, useDropdownMenuMachineContext } from './use-dropdown-menu-machine-context'
17
+ import { DropdownMenuTriggerItemProvider } from './use-dropdown-menu-trigger-item-context'
18
+ import { useDropdownMenu } from './use-dropdown-menu.svelte'
19
19
 
20
- let { open = $bindable<boolean>(), ...props }: MenuRootProps = $props()
20
+ let { open = $bindable<boolean>(), ...props }: DropdownMenuRootProps = $props()
21
21
  const providedId = $props.id()
22
22
 
23
23
  const [presenceProps, menuProps] = $derived(splitPresenceProps(props))
24
- const [useMenuProps, localProps] = $derived(
25
- createSplitProps<UseMenuProps>()(menuProps, [
24
+ const [useDropdownMenuProps, localProps] = $derived(
25
+ createSplitProps<UseDropdownMenuProps>()(menuProps, [
26
26
  'anchorPoint',
27
27
  'aria-label',
28
28
  'closeOnSelect',
@@ -48,22 +48,22 @@
48
48
  ]),
49
49
  )
50
50
 
51
- const parentApi = useMenuContext()
52
- const parentMachine = useMenuMachineContext()
51
+ const parentApi = useDropdownMenuContext()
52
+ const parentMachine = useDropdownMenuMachineContext()
53
53
 
54
- const resolvedProps = $derived<UseMenuProps>({
55
- ...useMenuProps,
56
- id: useMenuProps.id ?? providedId,
54
+ const resolvedProps = $derived<UseDropdownMenuProps>({
55
+ ...useDropdownMenuProps,
56
+ id: useDropdownMenuProps.id ?? providedId,
57
57
  open,
58
58
  onOpenChange(details) {
59
- useMenuProps.onOpenChange?.(details)
59
+ useDropdownMenuProps.onOpenChange?.(details)
60
60
  if (open !== undefined) open = details.open
61
61
  },
62
62
  })
63
63
 
64
- const menu = useMenu(() => resolvedProps)
65
- const api = $derived(menu().api)
66
- const service = $derived(menu().service)
64
+ const dropdownMenu = useDropdownMenu(() => resolvedProps)
65
+ const api = $derived(dropdownMenu().api)
66
+ const service = $derived(dropdownMenu().service)
67
67
 
68
68
  const presence = usePresence(() => ({
69
69
  present: api.open,
@@ -83,9 +83,9 @@
83
83
 
84
84
  const triggerItemContext = $derived(parentApi?.().getTriggerItemProps(api))
85
85
 
86
- MenuTriggerItemProvider(() => triggerItemContext)
87
- MenuMachineProvider(() => service)
88
- MenuProvider(() => api)
86
+ DropdownMenuTriggerItemProvider(() => triggerItemContext)
87
+ DropdownMenuMachineProvider(() => service)
88
+ DropdownMenuProvider(() => api)
89
89
  PresenceProvider(presence)
90
90
  </script>
91
91
 
@@ -0,0 +1,11 @@
1
+ import { type Snippet } from 'svelte';
2
+ import type { UsePresenceProps } from '../presence';
3
+ import type { UseDropdownMenuProps } from './use-dropdown-menu.svelte';
4
+ export interface DropdownMenuRootBaseProps extends UseDropdownMenuProps, UsePresenceProps {
5
+ children?: Snippet;
6
+ }
7
+ export interface DropdownMenuRootProps extends DropdownMenuRootBaseProps {
8
+ }
9
+ declare const DropdownMenuRoot: import("svelte").Component<DropdownMenuRootProps, {}, "open">;
10
+ type DropdownMenuRoot = ReturnType<typeof DropdownMenuRoot>;
11
+ export default DropdownMenuRoot;
@@ -0,0 +1,19 @@
1
+ <script module lang="ts">
2
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types'
3
+
4
+ export interface DropdownMenuSeparatorBaseProps extends PolymorphicProps<'div'>, RefAttribute {}
5
+ export interface DropdownMenuSeparatorProps extends Assign<HTMLProps<'div'>, DropdownMenuSeparatorBaseProps> {}
6
+ </script>
7
+
8
+ <script lang="ts">
9
+ import { mergeProps } from '../../core'
10
+ import { Sprawlify } from '../factory'
11
+ import { useDropdownMenuContext } from './use-dropdown-menu-context'
12
+
13
+ let { ref = $bindable(null), ...props }: DropdownMenuSeparatorProps = $props()
14
+
15
+ const dropdownMenu = useDropdownMenuContext()
16
+ const mergedProps = $derived(mergeProps(dropdownMenu().getSeparatorProps(), props))
17
+ </script>
18
+
19
+ <Sprawlify as="div" bind:ref data-scope="dropdown-menu" data-part="separator" {...mergedProps} />
@@ -0,0 +1,8 @@
1
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types';
2
+ export interface DropdownMenuSeparatorBaseProps extends PolymorphicProps<'div'>, RefAttribute {
3
+ }
4
+ export interface DropdownMenuSeparatorProps extends Assign<HTMLProps<'div'>, DropdownMenuSeparatorBaseProps> {
5
+ }
6
+ declare const DropdownMenuSeparator: import("svelte").Component<DropdownMenuSeparatorProps, {}, "ref">;
7
+ type DropdownMenuSeparator = ReturnType<typeof DropdownMenuSeparator>;
8
+ export default DropdownMenuSeparator;
@@ -0,0 +1,22 @@
1
+ <script module lang="ts">
2
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types'
3
+
4
+ export interface DropdownMenuTriggerItemBaseProps extends PolymorphicProps<'div'>, RefAttribute {}
5
+ export interface DropdownMenuTriggerItemProps extends Assign<HTMLProps<'div'>, DropdownMenuTriggerItemBaseProps> {}
6
+ </script>
7
+
8
+ <script lang="ts">
9
+ import { mergeProps } from '../../core'
10
+ import { Sprawlify } from '../factory'
11
+ import { useDropdownMenuTriggerItemContext } from './use-dropdown-menu-trigger-item-context'
12
+ import { DropdownMenuItemPropsProvider } from './use-dropdown-menu-option-item-props-context'
13
+
14
+ let { ref = $bindable(null), ...props }: DropdownMenuTriggerItemProps = $props()
15
+
16
+ const getTriggerItemProps = useDropdownMenuTriggerItemContext()
17
+ const mergedProps = $derived(mergeProps(getTriggerItemProps?.() ?? {}, props))
18
+
19
+ DropdownMenuItemPropsProvider(() => ({ value: mergedProps['data-value'] }))
20
+ </script>
21
+
22
+ <Sprawlify as="div" bind:ref {...mergedProps} />
@@ -0,0 +1,8 @@
1
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types';
2
+ export interface DropdownMenuTriggerItemBaseProps extends PolymorphicProps<'div'>, RefAttribute {
3
+ }
4
+ export interface DropdownMenuTriggerItemProps extends Assign<HTMLProps<'div'>, DropdownMenuTriggerItemBaseProps> {
5
+ }
6
+ declare const DropdownMenuTriggerItem: import("svelte").Component<DropdownMenuTriggerItemProps, {}, "ref">;
7
+ type DropdownMenuTriggerItem = ReturnType<typeof DropdownMenuTriggerItem>;
8
+ export default DropdownMenuTriggerItem;
@@ -0,0 +1,22 @@
1
+ <script module lang="ts">
2
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types'
3
+
4
+ export interface DropdownMenuTriggerBaseProps extends PolymorphicProps<'button'>, RefAttribute {}
5
+ export interface DropdownMenuTriggerProps extends Assign<HTMLProps<'button'>, DropdownMenuTriggerBaseProps> {}
6
+ </script>
7
+
8
+ <script lang="ts">
9
+ import { mergeProps } from '../../core'
10
+ import { Sprawlify } from '../factory'
11
+ import { useDropdownMenuContext } from './use-dropdown-menu-context'
12
+ import { useDropdownMenuTriggerItemContext } from './use-dropdown-menu-trigger-item-context'
13
+
14
+ let { ref = $bindable(null), ...props }: DropdownMenuTriggerProps = $props()
15
+
16
+ const dropdownMenu = useDropdownMenuContext()
17
+ const triggerItemProps = useDropdownMenuTriggerItemContext()
18
+
19
+ const mergedProps = $derived(mergeProps(dropdownMenu().getTriggerProps(), triggerItemProps?.() || {}, props))
20
+ </script>
21
+
22
+ <Sprawlify as="button" bind:ref data-scope="dropdown-menu" data-part="trigger" {...mergedProps} />
@@ -0,0 +1,8 @@
1
+ import type { Assign, HTMLProps, PolymorphicProps, RefAttribute } from '../../types';
2
+ export interface DropdownMenuTriggerBaseProps extends PolymorphicProps<'button'>, RefAttribute {
3
+ }
4
+ export interface DropdownMenuTriggerProps extends Assign<HTMLProps<'button'>, DropdownMenuTriggerBaseProps> {
5
+ }
6
+ declare const DropdownMenuTrigger: import("svelte").Component<DropdownMenuTriggerProps, {}, "ref">;
7
+ type DropdownMenuTrigger = ReturnType<typeof DropdownMenuTrigger>;
8
+ export default DropdownMenuTrigger;
@@ -0,0 +1,21 @@
1
+ export type { FocusOutsideEvent, HighlightChangeDetails, InteractOutsideEvent, OpenChangeDetails, PointerDownOutsideEvent, SelectionDetails, } from '@sprawlify/primitives/machines/dropdown-menu';
2
+ export { default as ArrowTip, type DropdownMenuArrowTipBaseProps as ArrowTipBaseProps, type DropdownMenuArrowTipProps as ArrowTipProps, } from './dropdown-menu-arrow-tip.svelte';
3
+ export { default as Arrow, type DropdownMenuArrowBaseProps as ArrowBaseProps, type DropdownMenuArrowProps as ArrowProps, } from './dropdown-menu-arrow.svelte';
4
+ export { default as CheckboxItem, type DropdownMenuCheckboxItemBaseProps as CheckboxItemBaseProps, type DropdownMenuCheckboxItemProps as CheckboxItemProps, } from './dropdown-menu-checkbox-item.svelte';
5
+ export { default as Content, type DropdownMenuContentBaseProps as ContentBaseProps, type DropdownMenuContentProps as ContentProps, } from './dropdown-menu-content.svelte';
6
+ export { default as Context, type DropdownMenuContextProps as ContextProps } from './dropdown-menu-context.svelte';
7
+ export { default as Indicator, type DropdownMenuIndicatorBaseProps as IndicatorBaseProps, type DropdownMenuIndicatorProps as IndicatorProps, } from './dropdown-menu-indicator.svelte';
8
+ export { default as ItemContext, type DropdownMenuItemContextProps as ItemContextProps } from './dropdown-menu-item-context.svelte';
9
+ export { default as ItemGroupLabel, type DropdownMenuItemGroupLabelBaseProps as ItemGroupLabelBaseProps, type DropdownMenuItemGroupLabelProps as ItemGroupLabelProps, } from './dropdown-menu-item-group-label.svelte';
10
+ export { default as ItemGroup, type DropdownMenuItemGroupBaseProps as ItemGroupBaseProps, type DropdownMenuItemGroupProps as ItemGroupProps, } from './dropdown-menu-item-group.svelte';
11
+ export { default as ItemIndicator, type DropdownMenuItemIndicatorBaseProps as ItemIndicatorBaseProps, type DropdownMenuItemIndicatorProps as ItemIndicatorProps, } from './dropdown-menu-item-indicator.svelte';
12
+ export { default as ItemText, type DropdownMenuItemTextBaseProps as ItemTextBaseProps, type DropdownMenuItemTextProps as ItemTextProps, } from './dropdown-menu-item-text.svelte';
13
+ export { default as Item, type DropdownMenuItemBaseProps as ItemBaseProps, type DropdownMenuItemProps as ItemProps, } from './dropdown-menu-item.svelte';
14
+ export { default as Positioner, type DropdownMenuPositionerBaseProps as PositionerBaseProps, type DropdownMenuPositionerProps as PositionerProps, } from './dropdown-menu-positioner.svelte';
15
+ export { default as RadioItemGroup, type DropdownMenuRadioItemGroupBaseProps as RadioItemGroupBaseProps, type DropdownMenuRadioItemGroupProps as RadioItemGroupProps, } from './dropdown-menu-radio-item-group.svelte';
16
+ export { default as RadioItem, type DropdownMenuRadioItemBaseProps as RadioItemBaseProps, type DropdownMenuRadioItemProps as RadioItemProps, } from './dropdown-menu-radio-item.svelte';
17
+ export { default as RootProvider, type DropdownMenuRootProviderBaseProps as RootProviderBaseProps, type DropdownMenuRootProviderProps as RootProviderProps, } from './dropdown-menu-root-provider.svelte';
18
+ export { default as Root, type DropdownMenuRootBaseProps as RootBaseProps, type DropdownMenuRootProps as RootProps, } from './dropdown-menu-root.svelte';
19
+ export { default as Separator, type DropdownMenuSeparatorBaseProps as SeparatorBaseProps, type DropdownMenuSeparatorProps as SeparatorProps, } from './dropdown-menu-separator.svelte';
20
+ export { default as TriggerItem, type DropdownMenuTriggerItemBaseProps as TriggerItemBaseProps, type DropdownMenuTriggerItemProps as TriggerItemProps, } from './dropdown-menu-trigger-item.svelte';
21
+ export { default as Trigger, type DropdownMenuTriggerBaseProps as TriggerBaseProps, type DropdownMenuTriggerProps as TriggerProps, } from './dropdown-menu-trigger.svelte';
@@ -0,0 +1,20 @@
1
+ export { default as ArrowTip, } from './dropdown-menu-arrow-tip.svelte';
2
+ export { default as Arrow, } from './dropdown-menu-arrow.svelte';
3
+ export { default as CheckboxItem, } from './dropdown-menu-checkbox-item.svelte';
4
+ export { default as Content, } from './dropdown-menu-content.svelte';
5
+ export { default as Context } from './dropdown-menu-context.svelte';
6
+ export { default as Indicator, } from './dropdown-menu-indicator.svelte';
7
+ export { default as ItemContext } from './dropdown-menu-item-context.svelte';
8
+ export { default as ItemGroupLabel, } from './dropdown-menu-item-group-label.svelte';
9
+ export { default as ItemGroup, } from './dropdown-menu-item-group.svelte';
10
+ export { default as ItemIndicator, } from './dropdown-menu-item-indicator.svelte';
11
+ export { default as ItemText, } from './dropdown-menu-item-text.svelte';
12
+ export { default as Item, } from './dropdown-menu-item.svelte';
13
+ export { default as Positioner, } from './dropdown-menu-positioner.svelte';
14
+ export { default as RadioItemGroup, } from './dropdown-menu-radio-item-group.svelte';
15
+ export { default as RadioItem, } from './dropdown-menu-radio-item.svelte';
16
+ export { default as RootProvider, } from './dropdown-menu-root-provider.svelte';
17
+ export { default as Root, } from './dropdown-menu-root.svelte';
18
+ export { default as Separator, } from './dropdown-menu-separator.svelte';
19
+ export { default as TriggerItem, } from './dropdown-menu-trigger-item.svelte';
20
+ export { default as Trigger, } from './dropdown-menu-trigger.svelte';
@@ -0,0 +1,27 @@
1
+ export type { FocusOutsideEvent as MenuFocusOutsideEvent, HighlightChangeDetails as MenuHighlightChangeDetails, InteractOutsideEvent as MenuInteractOutsideEvent, OpenChangeDetails as MenuOpenChangeDetails, PointerDownOutsideEvent as MenuPointerDownOutsideEvent, SelectionDetails as MenuSelectionDetails, } from '@sprawlify/primitives/machines/dropdown-menu';
2
+ export { default as MenuArrowTip, type DropdownMenuArrowTipBaseProps as MenuArrowTipBaseProps, type DropdownMenuArrowTipProps as MenuArrowTipProps } from './dropdown-menu-arrow-tip.svelte';
3
+ export { default as MenuArrow, type DropdownMenuArrowBaseProps as MenuArrowBaseProps, type DropdownMenuArrowProps as MenuArrowProps } from './dropdown-menu-arrow.svelte';
4
+ export { default as MenuCheckboxItem, type DropdownMenuCheckboxItemBaseProps as MenuCheckboxItemBaseProps, type DropdownMenuCheckboxItemProps as MenuCheckboxItemProps, } from './dropdown-menu-checkbox-item.svelte';
5
+ export { default as MenuContent, type DropdownMenuContentBaseProps as MenuContentBaseProps, type DropdownMenuContentProps as MenuContentProps } from './dropdown-menu-content.svelte';
6
+ export { default as MenuContext, type DropdownMenuContextProps as MenuContextProps } from './dropdown-menu-context.svelte';
7
+ export { default as MenuIndicator, type DropdownMenuIndicatorBaseProps as MenuIndicatorBaseProps, type DropdownMenuIndicatorProps as MenuIndicatorProps } from './dropdown-menu-indicator.svelte';
8
+ export { default as MenuItemContext, type DropdownMenuItemContextProps as MenuItemContextProps } from './dropdown-menu-item-context.svelte';
9
+ export { default as MenuItemGroupLabel, type DropdownMenuItemGroupLabelBaseProps as MenuItemGroupLabelBaseProps, type DropdownMenuItemGroupLabelProps as MenuItemGroupLabelProps, } from './dropdown-menu-item-group-label.svelte';
10
+ export { default as MenuItemGroup, type DropdownMenuItemGroupBaseProps as MenuItemGroupBaseProps, type DropdownMenuItemGroupProps as MenuItemGroupProps, } from './dropdown-menu-item-group.svelte';
11
+ export { default as MenuItemIndicator, type DropdownMenuItemIndicatorBaseProps as MenuItemIndicatorBaseProps, type DropdownMenuItemIndicatorProps as MenuItemIndicatorProps, } from './dropdown-menu-item-indicator.svelte';
12
+ export { default as MenuItemText, type DropdownMenuItemTextBaseProps as MenuItemTextBaseProps, type DropdownMenuItemTextProps as MenuItemTextProps } from './dropdown-menu-item-text.svelte';
13
+ export { default as MenuItem, type DropdownMenuItemBaseProps as MenuItemBaseProps, type DropdownMenuItemProps as MenuItemProps } from './dropdown-menu-item.svelte';
14
+ export { default as MenuPositioner, type DropdownMenuPositionerBaseProps as MenuPositionerBaseProps, type DropdownMenuPositionerProps as MenuPositionerProps, } from './dropdown-menu-positioner.svelte';
15
+ export { default as MenuRadioItemGroup, type DropdownMenuRadioItemGroupBaseProps as MenuRadioItemGroupBaseProps, type DropdownMenuRadioItemGroupProps as MenuRadioItemGroupProps, } from './dropdown-menu-radio-item-group.svelte';
16
+ export { default as MenuRadioItem, type DropdownMenuRadioItemBaseProps as MenuRadioItemBaseProps, type DropdownMenuRadioItemProps as MenuRadioItemProps, } from './dropdown-menu-radio-item.svelte';
17
+ export { default as MenuRootProvider, type DropdownMenuRootProviderBaseProps as MenuRootProviderBaseProps, type DropdownMenuRootProviderProps as MenuRootProviderProps, } from './dropdown-menu-root-provider.svelte';
18
+ export { default as MenuRoot, type DropdownMenuRootBaseProps as MenuRootBaseProps, type DropdownMenuRootProps as MenuRootProps } from './dropdown-menu-root.svelte';
19
+ export { default as MenuSeparator, type DropdownMenuSeparatorBaseProps as MenuSeparatorBaseProps, type DropdownMenuSeparatorProps as MenuSeparatorProps } from './dropdown-menu-separator.svelte';
20
+ export { default as MenuTriggerItem, type DropdownMenuTriggerItemBaseProps as MenuTriggerItemBaseProps, type DropdownMenuTriggerItemProps as MenuTriggerItemProps, } from './dropdown-menu-trigger-item.svelte';
21
+ export { default as MenuTrigger, type DropdownMenuTriggerBaseProps as MenuTriggerBaseProps, type DropdownMenuTriggerProps as MenuTriggerProps } from './dropdown-menu-trigger.svelte';
22
+ export { dropdownMenuAnatomy as menuAnatomy } from './dropdown-menu-anatomy';
23
+ export { useDropdownMenuContext as useMenuContext, type UseDropdownMenuContext as UseMenuContext } from './use-dropdown-menu-context';
24
+ export { useDropdownMenuItemContext as useMenuItemContext, type UseDropdownMenuItemContext as UseMenuItemContext } from './use-dropdown-menu-item-context';
25
+ export type { ValueChangeDetails as MenuValueChangeDetails } from './use-dropdown-menu-item-group-context';
26
+ export { useDropdownMenu as useMenu, type UseDropdownMenuProps as UseMenuProps, type UseDropdownMenuReturn as UseMenuReturn } from './use-dropdown-menu.svelte';
27
+ export * as Menu from './dropdown-menu';
@@ -0,0 +1,25 @@
1
+ export { default as MenuArrowTip } from './dropdown-menu-arrow-tip.svelte';
2
+ export { default as MenuArrow } from './dropdown-menu-arrow.svelte';
3
+ export { default as MenuCheckboxItem, } from './dropdown-menu-checkbox-item.svelte';
4
+ export { default as MenuContent } from './dropdown-menu-content.svelte';
5
+ export { default as MenuContext } from './dropdown-menu-context.svelte';
6
+ export { default as MenuIndicator } from './dropdown-menu-indicator.svelte';
7
+ export { default as MenuItemContext } from './dropdown-menu-item-context.svelte';
8
+ export { default as MenuItemGroupLabel, } from './dropdown-menu-item-group-label.svelte';
9
+ export { default as MenuItemGroup, } from './dropdown-menu-item-group.svelte';
10
+ export { default as MenuItemIndicator, } from './dropdown-menu-item-indicator.svelte';
11
+ export { default as MenuItemText } from './dropdown-menu-item-text.svelte';
12
+ export { default as MenuItem } from './dropdown-menu-item.svelte';
13
+ export { default as MenuPositioner, } from './dropdown-menu-positioner.svelte';
14
+ export { default as MenuRadioItemGroup, } from './dropdown-menu-radio-item-group.svelte';
15
+ export { default as MenuRadioItem, } from './dropdown-menu-radio-item.svelte';
16
+ export { default as MenuRootProvider, } from './dropdown-menu-root-provider.svelte';
17
+ export { default as MenuRoot } from './dropdown-menu-root.svelte';
18
+ export { default as MenuSeparator } from './dropdown-menu-separator.svelte';
19
+ export { default as MenuTriggerItem, } from './dropdown-menu-trigger-item.svelte';
20
+ export { default as MenuTrigger } from './dropdown-menu-trigger.svelte';
21
+ export { dropdownMenuAnatomy as menuAnatomy } from './dropdown-menu-anatomy';
22
+ export { useDropdownMenuContext as useMenuContext } from './use-dropdown-menu-context';
23
+ export { useDropdownMenuItemContext as useMenuItemContext } from './use-dropdown-menu-item-context';
24
+ export { useDropdownMenu as useMenu } from './use-dropdown-menu.svelte';
25
+ export * as Menu from './dropdown-menu';
@@ -0,0 +1,4 @@
1
+ import type { Accessor } from '../../types';
2
+ import type { UseDropdownMenuReturn } from './use-dropdown-menu.svelte';
3
+ export type UseDropdownMenuContext = Accessor<ReturnType<UseDropdownMenuReturn>['api']>;
4
+ export declare const DropdownMenuProvider: (opts: UseDropdownMenuContext) => void, useDropdownMenuContext: (fallback?: UseDropdownMenuContext | undefined) => UseDropdownMenuContext;
@@ -0,0 +1,7 @@
1
+ import { createContext } from '../../utils/create-context';
2
+ export const [DropdownMenuProvider, useDropdownMenuContext] = createContext({
3
+ name: 'DropdownMenuContext',
4
+ hookName: 'useDropdownMenuContext',
5
+ providerName: '<DropdownMenuProvider />',
6
+ strict: false,
7
+ });
@@ -0,0 +1,5 @@
1
+ import type { Accessor, Optional } from '../../types';
2
+ import type { OptionItemState } from '@sprawlify/primitives/machines/dropdown-menu';
3
+ export interface UseDropdownMenuItemContext extends Accessor<Optional<OptionItemState, 'checked'>> {
4
+ }
5
+ export declare const DropdownMenuItemProvider: (opts: UseDropdownMenuItemContext) => void, useDropdownMenuItemContext: (fallback?: UseDropdownMenuItemContext | undefined) => UseDropdownMenuItemContext;
@@ -0,0 +1,6 @@
1
+ import { createContext } from '../../utils/create-context';
2
+ export const [DropdownMenuItemProvider, useDropdownMenuItemContext] = createContext({
3
+ name: 'DropdownMenuItemContext',
4
+ hookName: 'useDropdownMenuItemContext',
5
+ providerName: '<DropdownMenuItemProvider />',
6
+ });
@@ -0,0 +1,11 @@
1
+ import type { Accessor } from '../../types';
2
+ export interface ValueChangeDetails {
3
+ value: string;
4
+ }
5
+ export interface UseDropdownMenuItemGroupContext extends Accessor<{
6
+ id: string;
7
+ value?: string;
8
+ onValueChange?: (e: ValueChangeDetails) => void;
9
+ }> {
10
+ }
11
+ export declare const DropdownMenuItemGroupProvider: (opts: UseDropdownMenuItemGroupContext) => void, useDropdownMenuItemGroupContext: (fallback?: UseDropdownMenuItemGroupContext | undefined) => UseDropdownMenuItemGroupContext;
@@ -0,0 +1,6 @@
1
+ import { createContext } from '../../utils/create-context';
2
+ export const [DropdownMenuItemGroupProvider, useDropdownMenuItemGroupContext] = createContext({
3
+ name: 'DropdownMenuItemGroupContext',
4
+ hookName: 'useDropdownMenuItemGroupContext',
5
+ providerName: '<DropdownMenuItemGroupProvider />',
6
+ });
@@ -0,0 +1,4 @@
1
+ import type { Accessor } from '../../types';
2
+ import type { Service } from '@sprawlify/primitives/machines/dropdown-menu';
3
+ export type UseDropdownMenuMachineContext = Accessor<Service | undefined>;
4
+ export declare const DropdownMenuMachineProvider: (opts: UseDropdownMenuMachineContext) => void, useDropdownMenuMachineContext: (fallback?: UseDropdownMenuMachineContext | undefined) => UseDropdownMenuMachineContext;
@@ -0,0 +1,7 @@
1
+ import { createContext } from '../../utils/create-context';
2
+ export const [DropdownMenuMachineProvider, useDropdownMenuMachineContext] = createContext({
3
+ name: 'DropdownMenuMachineContext',
4
+ hookName: 'useDropdownMenuMachineContext',
5
+ providerName: '<DropdownMenuMachineProvider />',
6
+ strict: false,
7
+ });
@@ -0,0 +1,3 @@
1
+ import type { Accessor } from '../../types';
2
+ import type { ItemBaseProps } from '@sprawlify/primitives/machines/dropdown-menu';
3
+ export declare const DropdownMenuItemPropsProvider: (opts: Accessor<ItemBaseProps>) => void, useDropdownMenuItemPropsContext: (fallback?: Accessor<ItemBaseProps> | undefined) => Accessor<ItemBaseProps>;
@@ -0,0 +1,6 @@
1
+ import { createContext } from '../../utils/create-context';
2
+ export const [DropdownMenuItemPropsProvider, useDropdownMenuItemPropsContext] = createContext({
3
+ name: 'DropdownMenuItemPropsContext',
4
+ hookName: 'useDropdownMenuItemPropsContext',
5
+ providerName: '<DropdownMenuItemPropsProvider />',
6
+ });
@@ -0,0 +1,4 @@
1
+ import type * as dropdownMenu from '@sprawlify/primitives/machines/dropdown-menu';
2
+ import type { PropTypes } from '../../core';
3
+ export type UseDropdownMenuTriggerItemContext = () => ReturnType<dropdownMenu.Api<PropTypes>['getTriggerItemProps']> | undefined;
4
+ export declare const DropdownMenuTriggerItemProvider: (opts: UseDropdownMenuTriggerItemContext) => void, useDropdownMenuTriggerItemContext: (fallback?: UseDropdownMenuTriggerItemContext | undefined) => UseDropdownMenuTriggerItemContext;
@@ -0,0 +1,7 @@
1
+ import { createContext } from '../../utils/create-context';
2
+ export const [DropdownMenuTriggerItemProvider, useDropdownMenuTriggerItemContext] = createContext({
3
+ name: 'DropdownMenuTriggerItemContext',
4
+ hookName: 'useDropdownMenuTriggerItemContext',
5
+ providerName: '<DropdownMenuTriggerItemProvider />',
6
+ strict: false,
7
+ });
@@ -0,0 +1,12 @@
1
+ import type { Accessor, Optional } from '../../types';
2
+ import * as dropdownMenu from '@sprawlify/primitives/machines/dropdown-menu';
3
+ import { type PropTypes } from '../../core';
4
+ import { type MaybeFunction } from '@sprawlify/primitives/utils';
5
+ export interface UseDropdownMenuProps extends Optional<Omit<dropdownMenu.Props, 'dir' | 'getRootNode'>, 'id'> {
6
+ }
7
+ export interface UseDropdownMenuReturn extends Accessor<{
8
+ api: dropdownMenu.Api<PropTypes>;
9
+ service: dropdownMenu.Service;
10
+ }> {
11
+ }
12
+ export declare const useDropdownMenu: (props?: MaybeFunction<UseDropdownMenuProps>) => UseDropdownMenuReturn;
@@ -1,9 +1,9 @@
1
1
  import { useEnvironmentContext } from '../../providers/environment';
2
2
  import { useLocaleContext } from '../../providers/locale';
3
- import * as menu from '@sprawlify/primitives/machines/menu';
3
+ import * as dropdownMenu from '@sprawlify/primitives/machines/dropdown-menu';
4
4
  import { normalizeProps, useMachine } from '../../core';
5
5
  import { runIfFn } from '@sprawlify/primitives/utils';
6
- export const useMenu = (props) => {
6
+ export const useDropdownMenu = (props) => {
7
7
  const env = useEnvironmentContext();
8
8
  const locale = useLocaleContext();
9
9
  const machineProps = $derived.by(() => {
@@ -14,7 +14,7 @@ export const useMenu = (props) => {
14
14
  ...resolvedProps,
15
15
  };
16
16
  });
17
- const service = useMachine(menu.machine, () => machineProps);
18
- const api = $derived(menu.connect(service, normalizeProps));
17
+ const service = useMachine(dropdownMenu.machine, () => machineProps);
18
+ const api = $derived(dropdownMenu.connect(service, normalizeProps));
19
19
  return () => ({ api, service });
20
20
  };
@@ -1 +1 @@
1
- export declare const listboxAnatomy: import("@sprawlify/primitives/anatomy").AnatomyInstance<"label" | "input" | "content" | "root" | "item" | "itemGroup" | "valueText" | "itemIndicator" | "itemGroupLabel" | "itemText" | "empty">;
1
+ export declare const listboxAnatomy: import("@sprawlify/primitives/anatomy").AnatomyInstance<"label" | "input" | "content" | "root" | "item" | "itemGroup" | "valueText" | "itemIndicator" | "itemText" | "itemGroupLabel" | "empty">;
@@ -1 +1 @@
1
- export declare const tourAnatomy: import("@sprawlify/primitives/anatomy").AnatomyInstance<"description" | "title" | "content" | "backdrop" | "closeTrigger" | "positioner" | "control" | "progressText" | "arrow" | "arrowTip" | "actionTrigger" | "spotlight">;
1
+ export declare const tourAnatomy: import("@sprawlify/primitives/anatomy").AnatomyInstance<"description" | "title" | "closeTrigger" | "content" | "positioner" | "backdrop" | "control" | "progressText" | "actionTrigger" | "arrow" | "arrowTip" | "spotlight">;
@@ -1,3 +1,3 @@
1
1
  import type { TreeNode } from '../collection';
2
2
  import type { UseTreeViewProps } from './use-tree-view.svelte';
3
- export declare function splitTreeViewProps<T extends UseTreeViewProps<TreeNode>>(props: T): [UseTreeViewProps<any>, Omit<T, "id" | "ids" | "onFocusChange" | "onCheckedChange" | "collection" | "selectionMode" | "scrollToIndexFn" | "focusedValue" | "defaultFocusedValue" | "expandedValue" | "defaultExpandedValue" | "selectedValue" | "defaultSelectedValue" | "defaultCheckedValue" | "checkedValue" | "onExpandedChange" | "onSelectionChange" | "canRename" | "onRenameStart" | "onBeforeRename" | "onRenameComplete" | "onLoadChildrenComplete" | "onLoadChildrenError" | "expandOnClick" | "typeahead" | "loadChildren">];
3
+ export declare function splitTreeViewProps<T extends UseTreeViewProps<TreeNode>>(props: T): [UseTreeViewProps<any>, Omit<T, "id" | "ids" | "onFocusChange" | "onCheckedChange" | "collection" | "selectionMode" | "scrollToIndexFn" | "focusedValue" | "defaultFocusedValue" | "typeahead" | "expandedValue" | "defaultExpandedValue" | "selectedValue" | "defaultSelectedValue" | "defaultCheckedValue" | "checkedValue" | "onExpandedChange" | "onSelectionChange" | "canRename" | "onRenameStart" | "onBeforeRename" | "onRenameComplete" | "onLoadChildrenComplete" | "onLoadChildrenError" | "expandOnClick" | "loadChildren">];