@sprawlify/solid 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 (106) hide show
  1. package/dist/alert-dialog-anatomy-Jo9BJdI4.d.ts +6 -0
  2. package/dist/carousel-anatomy-Dfum8Ea8.d.ts +6 -0
  3. package/dist/checkbox-anatomy-C5bFwMFN.d.ts +6 -0
  4. package/dist/color-picker-anatomy-C-6oaqkJ.d.ts +6 -0
  5. package/dist/combobox-anatomy-D_3XqC9b.d.ts +6 -0
  6. package/dist/components/accordion/index.d.ts +12 -13
  7. package/dist/components/accordion/index.js +0 -1
  8. package/dist/components/alert-dialog/index.d.ts +17 -14
  9. package/dist/components/anatomy.d.ts +14 -14
  10. package/dist/components/anatomy.js +2 -2
  11. package/dist/components/angle-slider/index.d.ts +14 -15
  12. package/dist/components/aspect-ratio/index.d.ts +7 -7
  13. package/dist/components/avatar/index.d.ts +9 -10
  14. package/dist/components/bottom-sheet/index.d.ts +14 -15
  15. package/dist/components/carousel/index.d.ts +19 -16
  16. package/dist/components/checkbox/index.d.ts +16 -13
  17. package/dist/components/clipboard/index.d.ts +12 -13
  18. package/dist/components/collapsible/index.d.ts +11 -12
  19. package/dist/components/collection/index.d.ts +2 -2
  20. package/dist/components/color-picker/index.d.ts +38 -35
  21. package/dist/components/combobox/index.d.ts +25 -22
  22. package/dist/components/date-picker/index.d.ts +35 -32
  23. package/dist/components/dialog/index.d.ts +14 -15
  24. package/dist/components/download-trigger/index.d.ts +2 -2
  25. package/dist/components/dropdown-menu/index.d.ts +155 -0
  26. package/dist/components/dropdown-menu/index.js +462 -0
  27. package/dist/components/dropdown-menu/index.jsx +383 -0
  28. package/dist/components/editable/index.d.ts +15 -16
  29. package/dist/components/field/index.d.ts +17 -14
  30. package/dist/components/fieldset/index.d.ts +14 -11
  31. package/dist/components/file-upload/index.d.ts +19 -20
  32. package/dist/components/floating-panel/index.d.ts +18 -19
  33. package/dist/components/focus-trap/index.d.ts +4 -4
  34. package/dist/components/format/index.d.ts +4 -4
  35. package/dist/components/frame/index.d.ts +1 -1
  36. package/dist/components/highlight/index.d.ts +3 -3
  37. package/dist/components/hover-card/index.d.ts +12 -13
  38. package/dist/components/image-cropper/index.d.ts +12 -13
  39. package/dist/components/json-tree-view/index.d.ts +6 -7
  40. package/dist/components/json-tree-view/index.js +0 -2
  41. package/dist/components/listbox/index.d.ts +20 -17
  42. package/dist/components/marquee/index.d.ts +10 -11
  43. package/dist/components/navigation-menu/index.d.ts +18 -19
  44. package/dist/components/number-input/index.d.ts +14 -15
  45. package/dist/components/pagination/index.d.ts +13 -14
  46. package/dist/components/password-input/index.d.ts +10 -11
  47. package/dist/components/pin-input/index.d.ts +11 -12
  48. package/dist/components/popover/index.d.ts +17 -18
  49. package/dist/components/presence/index.d.ts +4 -4
  50. package/dist/components/progress/index.d.ts +15 -16
  51. package/dist/components/qr-code/index.d.ts +11 -12
  52. package/dist/components/radio-group/index.d.ts +13 -14
  53. package/dist/components/rating-group/index.d.ts +11 -12
  54. package/dist/components/scroll-area/index.d.ts +12 -13
  55. package/dist/components/segment-group/index.d.ts +16 -13
  56. package/dist/components/select/index.d.ts +23 -24
  57. package/dist/components/separator/index.d.ts +7 -7
  58. package/dist/components/signature-pad/index.d.ts +13 -14
  59. package/dist/components/slider/index.d.ts +17 -18
  60. package/dist/components/splitter/index.d.ts +10 -11
  61. package/dist/components/steps/index.d.ts +17 -18
  62. package/dist/components/switch/index.d.ts +11 -12
  63. package/dist/components/tabs/index.d.ts +12 -13
  64. package/dist/components/tags-input/index.d.ts +17 -18
  65. package/dist/components/timer/index.d.ts +12 -13
  66. package/dist/components/toast/index.d.ts +10 -11
  67. package/dist/components/toggle/index.d.ts +9 -6
  68. package/dist/components/toggle-group/index.d.ts +8 -9
  69. package/dist/components/tooltip/index.d.ts +12 -13
  70. package/dist/components/tour/index.d.ts +22 -19
  71. package/dist/components/tree-view/index.d.ts +6 -7
  72. package/dist/components/tree-view/index.js +0 -1
  73. package/dist/date-picker-anatomy-CUUidv7q.d.ts +6 -0
  74. package/dist/dropdown-menu-anatomy-C1luUwqi.js +3 -0
  75. package/dist/dropdown-menu-anatomy-DNkJn2h1.d.ts +2 -0
  76. package/dist/field-anatomy-jvFsGDgH.d.ts +6 -0
  77. package/dist/fieldset-anatomy-C7ePpZeD.d.ts +6 -0
  78. package/dist/{index-DPe8zz2B.d.ts → index-BU6xbmsl.d.ts} +15 -15
  79. package/dist/{index-8CXBLIRc.d.ts → index-BWV14Y6g.d.ts} +5 -5
  80. package/dist/{index-BU_77yW9.d.ts → index-BYODxIAQ.d.ts} +2 -2
  81. package/dist/{index-UN7y8LYs.d.ts → index-ByocTRP8.d.ts} +15 -15
  82. package/dist/{index-rPJ-Qy6u.d.ts → index-LmmX9_3C.d.ts} +4 -4
  83. package/dist/{index-DRytduu4.d.ts → index-V0DK6BT4.d.ts} +2 -2
  84. package/dist/index.d.ts +4 -4
  85. package/dist/listbox-anatomy-CJCXdrH-.d.ts +6 -0
  86. package/dist/segment-group-anatomy-CjydGbEb.d.ts +6 -0
  87. package/dist/toggle-anatomy-sTqXB2jx.d.ts +6 -0
  88. package/dist/tour-anatomy-BTFCOAKA.d.ts +6 -0
  89. package/package.json +7 -7
  90. package/dist/alert-dialog-anatomy-CGQT5YEk.d.ts +0 -6
  91. package/dist/carousel-anatomy-DxrRp1N9.d.ts +0 -6
  92. package/dist/checkbox-anatomy-D2p4rPjP.d.ts +0 -6
  93. package/dist/color-picker-anatomy-D9pHaHfL.d.ts +0 -6
  94. package/dist/combobox-anatomy-DcBqOdSs.d.ts +0 -6
  95. package/dist/components/menu/index.d.ts +0 -161
  96. package/dist/components/menu/index.js +0 -471
  97. package/dist/components/menu/index.jsx +0 -392
  98. package/dist/date-picker-anatomy-DKQizmJU.d.ts +0 -6
  99. package/dist/field-anatomy-Ci5P-ScP.d.ts +0 -6
  100. package/dist/fieldset-anatomy-CdaPY73z.d.ts +0 -6
  101. package/dist/listbox-anatomy-CocmCaiW.d.ts +0 -6
  102. package/dist/menu-anatomy-Cn8kTodN.js +0 -3
  103. package/dist/menu-anatomy-D3xIdcp1.d.ts +0 -2
  104. package/dist/segment-group-anatomy-CtE033Yj.d.ts +0 -6
  105. package/dist/toggle-anatomy-DANJO07f.d.ts +0 -6
  106. package/dist/tour-anatomy-oKmAvXN2.d.ts +0 -6
@@ -0,0 +1,462 @@
1
+ import { t as __exportAll } from "../../chunk-BN_g-Awi.js";
2
+ import { i as useMachine, n as normalizeProps, r as mergeProps$2 } from "../../core-Crxbs6Ki.js";
3
+ import { t as runIfFn } from "../../run-if-fn-CTrSA35K.js";
4
+ import { t as createContext$1 } from "../../create-context-DPb5Yv_u.js";
5
+ import { i as useLocaleContext, o as useEnvironmentContext } from "../../providers-CdwYAas1.js";
6
+ import { t as sprawlify } from "../../factory-Ce76k0aC.js";
7
+ import { t as dropdownMenuAnatomy } from "../../dropdown-menu-anatomy-C1luUwqi.js";
8
+ import { t as createSplitProps } from "../../create-split-props-DgGDQfdT.js";
9
+ import "../../render-strategy-CNUvDuT1.js";
10
+ import { t as composeRefs } from "../../compose-refs-C-e3esqD.js";
11
+ import { a as splitPresenceProps, i as usePresence, n as usePresenceContext, t as PresenceProvider } from "../../presence-BBn_Rd1l.js";
12
+ import { Show, createEffect, createMemo, createUniqueId, onCleanup, onMount } from "solid-js";
13
+ import { createComponent, mergeProps as mergeProps$1 } from "solid-js/web";
14
+ import * as dropdownMenu from "@sprawlify/primitives/machines/dropdown-menu";
15
+
16
+ //#region src/components/dropdown-menu/use-dropdown-menu-context.ts
17
+ const [DropdownMenuProvider, useDropdownMenuContext] = createContext$1({
18
+ hookName: "useDropdownMenuContext",
19
+ providerName: "<DropdownMenuProvider />",
20
+ strict: false
21
+ });
22
+
23
+ //#endregion
24
+ //#region src/components/dropdown-menu/dropdown-menu-arrow.tsx
25
+ const DropdownMenuArrow = (props) => {
26
+ const context = useDropdownMenuContext();
27
+ const mergedProps = mergeProps$2(() => context().getArrowProps(), props);
28
+ return createComponent(sprawlify.div, mergedProps);
29
+ };
30
+
31
+ //#endregion
32
+ //#region src/components/dropdown-menu/dropdown-menu-arrow-tip.tsx
33
+ const DropdownMenuArrowTip = (props) => {
34
+ const context = useDropdownMenuContext();
35
+ const mergedProps = mergeProps$2(() => context().getArrowTipProps(), props);
36
+ return createComponent(sprawlify.div, mergedProps);
37
+ };
38
+
39
+ //#endregion
40
+ //#region src/components/dropdown-menu/use-dropdown-menu-item-context.ts
41
+ const [DropdownMenuItemProvider, useDropdownMenuItemContext] = createContext$1({
42
+ hookName: "useDropdownMenuItemContext",
43
+ providerName: "<DropdownMenuItemProvider />"
44
+ });
45
+
46
+ //#endregion
47
+ //#region src/components/dropdown-menu/use-dropdown-menu-option-item-props-context.ts
48
+ const [DropdownMenuItemPropsProvider, useDropdownMenuItemPropsContext] = createContext$1({
49
+ hookName: "useDropdownMenuItemPropsContext",
50
+ providerName: "<DropdownMenuItemPropsProvider />"
51
+ });
52
+
53
+ //#endregion
54
+ //#region src/components/dropdown-menu/dropdown-menu-checkbox-item.tsx
55
+ const DropdownMenuCheckboxItem = (props) => {
56
+ const [partialOptionItemProps, localProps] = createSplitProps()(props, [
57
+ "checked",
58
+ "closeOnSelect",
59
+ "disabled",
60
+ "onCheckedChange",
61
+ "value",
62
+ "valueText"
63
+ ]);
64
+ const optionItemProps = mergeProps$2(partialOptionItemProps, { type: "checkbox" });
65
+ const context = useDropdownMenuContext();
66
+ const mergedProps = mergeProps$2(() => context().getOptionItemProps(optionItemProps), localProps);
67
+ const optionItemState = createMemo(() => context().getItemState(optionItemProps));
68
+ return createComponent(DropdownMenuItemPropsProvider, {
69
+ value: optionItemProps,
70
+ get children() {
71
+ return createComponent(DropdownMenuItemProvider, {
72
+ value: optionItemState,
73
+ get children() {
74
+ return createComponent(sprawlify.div, mergedProps);
75
+ }
76
+ });
77
+ }
78
+ });
79
+ };
80
+
81
+ //#endregion
82
+ //#region src/components/dropdown-menu/dropdown-menu-content.tsx
83
+ const DropdownMenuContent = (props) => {
84
+ const context = useDropdownMenuContext();
85
+ const presenceContext = usePresenceContext();
86
+ const mergedProps = mergeProps$2(() => context().getContentProps(), () => presenceContext().presenceProps, props);
87
+ return createComponent(Show, {
88
+ get when() {
89
+ return !presenceContext().unmounted;
90
+ },
91
+ get children() {
92
+ return createComponent(sprawlify.div, mergeProps$1(mergedProps, { ref(r$) {
93
+ var _ref$ = composeRefs(presenceContext().ref, props.ref);
94
+ typeof _ref$ === "function" && _ref$(r$);
95
+ } }));
96
+ }
97
+ });
98
+ };
99
+
100
+ //#endregion
101
+ //#region src/components/dropdown-menu/dropdown-menu-context.tsx
102
+ const DropdownMenuContext = (props) => props.children(useDropdownMenuContext());
103
+
104
+ //#endregion
105
+ //#region src/components/dropdown-menu/dropdown-menu-indicator.tsx
106
+ const DropdownMenuIndicator = (props) => {
107
+ const context = useDropdownMenuContext();
108
+ const mergedProps = mergeProps$2(() => context().getIndicatorProps(), props);
109
+ return createComponent(sprawlify.div, mergedProps);
110
+ };
111
+
112
+ //#endregion
113
+ //#region src/components/dropdown-menu/dropdown-menu-item.tsx
114
+ const DropdownMenuItem = (props) => {
115
+ const [itemProps, localProps] = createSplitProps()(props, [
116
+ "closeOnSelect",
117
+ "disabled",
118
+ "value",
119
+ "valueText",
120
+ "onSelect"
121
+ ]);
122
+ const context = useDropdownMenuContext();
123
+ const mergedProps = mergeProps$2(() => context().getItemProps(itemProps), localProps);
124
+ const itemState = createMemo(() => context().getItemState(itemProps));
125
+ createEffect(() => {
126
+ const cleanup = context().addItemListener({
127
+ id: itemState().id,
128
+ onSelect: itemProps.onSelect
129
+ });
130
+ onCleanup(() => cleanup?.());
131
+ });
132
+ return createComponent(DropdownMenuItemPropsProvider, {
133
+ value: itemProps,
134
+ get children() {
135
+ return createComponent(DropdownMenuItemProvider, {
136
+ value: itemState,
137
+ get children() {
138
+ return createComponent(sprawlify.div, mergedProps);
139
+ }
140
+ });
141
+ }
142
+ });
143
+ };
144
+
145
+ //#endregion
146
+ //#region src/components/dropdown-menu/dropdown-menu-item-context.tsx
147
+ const DropdownMenuItemContext = (props) => props.children(useDropdownMenuItemContext());
148
+
149
+ //#endregion
150
+ //#region src/components/dropdown-menu/use-dropdown-menu-item-group-context.ts
151
+ const [DropdownMenuItemGroupProvider, useDropdownMenuItemGroupContext] = createContext$1({
152
+ hookName: "useDropdownMenuItemGroupContext",
153
+ providerName: "<DropdownMenuItemGroupProvider />"
154
+ });
155
+
156
+ //#endregion
157
+ //#region src/components/dropdown-menu/dropdown-menu-item-group.tsx
158
+ const DropdownMenuItemGroup = (props) => {
159
+ const [optionalItemGroupProps, localProps] = createSplitProps()(props, ["id"]);
160
+ const itemGroupProps = mergeProps$2({ id: createUniqueId() }, optionalItemGroupProps);
161
+ const dropdownMenu = useDropdownMenuContext();
162
+ const mergedProps = mergeProps$2(() => dropdownMenu().getItemGroupProps(itemGroupProps), localProps);
163
+ return createComponent(DropdownMenuItemGroupProvider, {
164
+ value: itemGroupProps,
165
+ get children() {
166
+ return createComponent(sprawlify.div, mergedProps);
167
+ }
168
+ });
169
+ };
170
+
171
+ //#endregion
172
+ //#region src/components/dropdown-menu/dropdown-menu-item-group-label.tsx
173
+ const DropdownMenuItemGroupLabel = (props) => {
174
+ const context = useDropdownMenuContext();
175
+ const itemGroupContext = useDropdownMenuItemGroupContext();
176
+ const mergedProps = mergeProps$2(context().getItemGroupLabelProps({ htmlFor: itemGroupContext.id }), props);
177
+ return createComponent(sprawlify.div, mergedProps);
178
+ };
179
+
180
+ //#endregion
181
+ //#region src/components/dropdown-menu/dropdown-menu-item-indicator.tsx
182
+ const DropdownMenuItemIndicator = (props) => {
183
+ const context = useDropdownMenuContext();
184
+ const itemProps = useDropdownMenuItemPropsContext();
185
+ const mergedProps = mergeProps$2(() => context().getItemIndicatorProps(itemProps), props);
186
+ return createComponent(sprawlify.div, mergedProps);
187
+ };
188
+
189
+ //#endregion
190
+ //#region src/components/dropdown-menu/dropdown-menu-item-text.tsx
191
+ const DropdownMenuItemText = (props) => {
192
+ const context = useDropdownMenuContext();
193
+ const itemProps = useDropdownMenuItemPropsContext();
194
+ const mergedProps = mergeProps$2(() => context().getItemTextProps(itemProps), props);
195
+ return createComponent(sprawlify.div, mergedProps);
196
+ };
197
+
198
+ //#endregion
199
+ //#region src/components/dropdown-menu/dropdown-menu-positioner.tsx
200
+ const DropdownMenuPositioner = (props) => {
201
+ const context = useDropdownMenuContext();
202
+ const presence = usePresenceContext();
203
+ const mergedProps = mergeProps$2(() => context().getPositionerProps(), props);
204
+ return createComponent(Show, {
205
+ get when() {
206
+ return !presence().unmounted;
207
+ },
208
+ get children() {
209
+ return createComponent(sprawlify.div, mergedProps);
210
+ }
211
+ });
212
+ };
213
+
214
+ //#endregion
215
+ //#region src/components/dropdown-menu/dropdown-menu-radio-item.tsx
216
+ const DropdownMenuRadioItem = (props) => {
217
+ const [partialItemProps, localProps] = createSplitProps()(props, [
218
+ "closeOnSelect",
219
+ "disabled",
220
+ "value",
221
+ "valueText"
222
+ ]);
223
+ const context = useDropdownMenuContext();
224
+ const itemGroup = useDropdownMenuItemGroupContext();
225
+ const optionItemProps = mergeProps$2(partialItemProps, () => ({
226
+ type: "radio",
227
+ checked: itemGroup.value === partialItemProps.value,
228
+ onCheckedChange: () => itemGroup.onValueChange?.({ value: partialItemProps.value })
229
+ }));
230
+ const mergedProps = mergeProps$2(() => context().getOptionItemProps(optionItemProps), localProps);
231
+ const optionItemState = createMemo(() => context().getOptionItemState(optionItemProps));
232
+ return createComponent(DropdownMenuItemPropsProvider, {
233
+ value: optionItemProps,
234
+ get children() {
235
+ return createComponent(DropdownMenuItemProvider, {
236
+ value: optionItemState,
237
+ get children() {
238
+ return createComponent(sprawlify.div, mergedProps);
239
+ }
240
+ });
241
+ }
242
+ });
243
+ };
244
+
245
+ //#endregion
246
+ //#region src/components/dropdown-menu/dropdown-menu-radio-item-group.tsx
247
+ const DropdownMenuRadioItemGroup = (props) => {
248
+ const [optionalItemGroupProps, localProps] = createSplitProps()(props, [
249
+ "id",
250
+ "onValueChange",
251
+ "value"
252
+ ]);
253
+ const context = useDropdownMenuContext();
254
+ const itemGroupProps = mergeProps$2({ id: createUniqueId() }, optionalItemGroupProps);
255
+ const mergedProps = mergeProps$2(() => context().getItemGroupProps(itemGroupProps), localProps);
256
+ return createComponent(DropdownMenuItemGroupProvider, {
257
+ value: itemGroupProps,
258
+ get children() {
259
+ return createComponent(sprawlify.div, mergedProps);
260
+ }
261
+ });
262
+ };
263
+
264
+ //#endregion
265
+ //#region src/components/dropdown-menu/use-dropdown-menu.ts
266
+ const useDropdownMenu = (props) => {
267
+ const id = createUniqueId();
268
+ const locale = useLocaleContext();
269
+ const environment = useEnvironmentContext();
270
+ const machineProps = createMemo(() => ({
271
+ id,
272
+ dir: locale().dir,
273
+ getRootNode: environment().getRootNode,
274
+ ...runIfFn(props)
275
+ }));
276
+ const service = useMachine(dropdownMenu.machine, machineProps);
277
+ return {
278
+ api: createMemo(() => dropdownMenu.connect(service, normalizeProps)),
279
+ service
280
+ };
281
+ };
282
+
283
+ //#endregion
284
+ //#region src/components/dropdown-menu/use-dropdown-menu-machine-context.ts
285
+ const [DropdownMenuMachineProvider, useDropdownMenuMachineContext] = createContext$1({
286
+ hookName: "useDropdownMenuMachineContext",
287
+ providerName: "<DropdownMenuMachineProvider />",
288
+ strict: false
289
+ });
290
+
291
+ //#endregion
292
+ //#region src/components/dropdown-menu/use-dropdown-menu-trigger-item-context.ts
293
+ const [DropdownMenuTriggerItemProvider, useDropdownMenuTriggerItemContext] = createContext$1({
294
+ hookName: "useDropdownMenuTriggerItemContext",
295
+ providerName: "<DropdownMenuTriggerItemProvider />",
296
+ strict: false
297
+ });
298
+
299
+ //#endregion
300
+ //#region src/components/dropdown-menu/dropdown-menu-root.tsx
301
+ const DropdownMenuRoot = (props) => {
302
+ const [presenceProps, dropdownMenuProps] = splitPresenceProps(props);
303
+ const [useDropdownMenuProps, localProps] = createSplitProps()(dropdownMenuProps, [
304
+ "anchorPoint",
305
+ "aria-label",
306
+ "closeOnSelect",
307
+ "composite",
308
+ "defaultHighlightedValue",
309
+ "defaultOpen",
310
+ "highlightedValue",
311
+ "id",
312
+ "ids",
313
+ "loopFocus",
314
+ "navigate",
315
+ "onEscapeKeyDown",
316
+ "onFocusOutside",
317
+ "onHighlightChange",
318
+ "onInteractOutside",
319
+ "onOpenChange",
320
+ "onPointerDownOutside",
321
+ "onRequestDismiss",
322
+ "onSelect",
323
+ "open",
324
+ "positioning",
325
+ "typeahead"
326
+ ]);
327
+ const parentApi = useDropdownMenuContext();
328
+ const parentMachine = useDropdownMenuMachineContext();
329
+ const dropdownMenu = useDropdownMenu(useDropdownMenuProps);
330
+ const presenceApi = usePresence(mergeProps$2(presenceProps, () => ({ present: dropdownMenu.api().open })));
331
+ onMount(() => {
332
+ if (!parentMachine) return;
333
+ parentApi?.().setChild(dropdownMenu.service);
334
+ dropdownMenu.api().setParent(parentMachine);
335
+ });
336
+ const triggerItemContext = () => parentApi?.().getTriggerItemProps(dropdownMenu.api());
337
+ return createComponent(DropdownMenuTriggerItemProvider, {
338
+ value: triggerItemContext,
339
+ get children() {
340
+ return createComponent(DropdownMenuMachineProvider, {
341
+ get value() {
342
+ return dropdownMenu.service;
343
+ },
344
+ get children() {
345
+ return createComponent(DropdownMenuProvider, {
346
+ get value() {
347
+ return dropdownMenu.api;
348
+ },
349
+ get children() {
350
+ return createComponent(PresenceProvider, {
351
+ value: presenceApi,
352
+ get children() {
353
+ return localProps.children;
354
+ }
355
+ });
356
+ }
357
+ });
358
+ }
359
+ });
360
+ }
361
+ });
362
+ };
363
+
364
+ //#endregion
365
+ //#region src/components/dropdown-menu/dropdown-menu-root-provider.tsx
366
+ const DropdownMenuRootProvider = (props) => {
367
+ const parentApi = useDropdownMenuContext();
368
+ const parentMachine = useDropdownMenuMachineContext();
369
+ const [presenceProps, dropdownMenuProps] = splitPresenceProps(props);
370
+ const presenceApi = usePresence(mergeProps$2(presenceProps, () => ({ present: dropdownMenuProps.value.api().open })));
371
+ createEffect(() => {
372
+ if (!parentMachine) return;
373
+ parentApi?.().setChild(dropdownMenuProps.value.service);
374
+ dropdownMenuProps.value.api().setParent(parentMachine);
375
+ });
376
+ const triggerItemContext = () => parentApi?.().getTriggerItemProps(dropdownMenuProps.value.api());
377
+ return createComponent(DropdownMenuTriggerItemProvider, {
378
+ value: triggerItemContext,
379
+ get children() {
380
+ return createComponent(DropdownMenuMachineProvider, {
381
+ get value() {
382
+ return dropdownMenuProps.value.service;
383
+ },
384
+ get children() {
385
+ return createComponent(DropdownMenuProvider, {
386
+ get value() {
387
+ return dropdownMenuProps.value.api;
388
+ },
389
+ get children() {
390
+ return createComponent(PresenceProvider, {
391
+ value: presenceApi,
392
+ get children() {
393
+ return dropdownMenuProps.children;
394
+ }
395
+ });
396
+ }
397
+ });
398
+ }
399
+ });
400
+ }
401
+ });
402
+ };
403
+
404
+ //#endregion
405
+ //#region src/components/dropdown-menu/dropdown-menu-separator.tsx
406
+ const DropdownMenuSeparator = (props) => {
407
+ const dropdownMenu = useDropdownMenuContext();
408
+ const mergedProps = mergeProps$2(() => dropdownMenu().getSeparatorProps(), props);
409
+ return createComponent(sprawlify.hr, mergedProps);
410
+ };
411
+
412
+ //#endregion
413
+ //#region src/components/dropdown-menu/dropdown-menu-trigger.tsx
414
+ const DropdownMenuTrigger = (props) => {
415
+ const api = useDropdownMenuContext();
416
+ const presenceApi = usePresenceContext();
417
+ const mergedProps = mergeProps$2(() => api().getTriggerProps(), () => ({ "aria-controls": presenceApi().unmounted && null }), props);
418
+ return createComponent(sprawlify.button, mergedProps);
419
+ };
420
+
421
+ //#endregion
422
+ //#region src/components/dropdown-menu/dropdown-menu-trigger-item.tsx
423
+ const DropdownMenuTriggerItem = (props) => {
424
+ const getTriggerItemProps = useDropdownMenuTriggerItemContext();
425
+ const mergedProps = mergeProps$2(() => getTriggerItemProps?.(), props);
426
+ return createComponent(DropdownMenuItemPropsProvider, {
427
+ get value() {
428
+ return { value: mergedProps["data-value"] };
429
+ },
430
+ get children() {
431
+ return createComponent(sprawlify.div, mergedProps);
432
+ }
433
+ });
434
+ };
435
+
436
+ //#endregion
437
+ //#region src/components/dropdown-menu/dropdown-menu.ts
438
+ var dropdown_menu_exports = /* @__PURE__ */ __exportAll({
439
+ Arrow: () => DropdownMenuArrow,
440
+ ArrowTip: () => DropdownMenuArrowTip,
441
+ CheckboxItem: () => DropdownMenuCheckboxItem,
442
+ Content: () => DropdownMenuContent,
443
+ Context: () => DropdownMenuContext,
444
+ Indicator: () => DropdownMenuIndicator,
445
+ Item: () => DropdownMenuItem,
446
+ ItemContext: () => DropdownMenuItemContext,
447
+ ItemGroup: () => DropdownMenuItemGroup,
448
+ ItemGroupLabel: () => DropdownMenuItemGroupLabel,
449
+ ItemIndicator: () => DropdownMenuItemIndicator,
450
+ ItemText: () => DropdownMenuItemText,
451
+ Positioner: () => DropdownMenuPositioner,
452
+ RadioItem: () => DropdownMenuRadioItem,
453
+ RadioItemGroup: () => DropdownMenuRadioItemGroup,
454
+ Root: () => DropdownMenuRoot,
455
+ RootProvider: () => DropdownMenuRootProvider,
456
+ Separator: () => DropdownMenuSeparator,
457
+ Trigger: () => DropdownMenuTrigger,
458
+ TriggerItem: () => DropdownMenuTriggerItem
459
+ });
460
+
461
+ //#endregion
462
+ export { dropdown_menu_exports as DropdownMenu, DropdownMenuArrow, DropdownMenuArrowTip, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuContext, DropdownMenuIndicator, DropdownMenuItem, DropdownMenuItemContext, DropdownMenuItemGroup, DropdownMenuItemGroupLabel, DropdownMenuItemIndicator, DropdownMenuItemText, DropdownMenuPositioner, DropdownMenuRadioItem, DropdownMenuRadioItemGroup, DropdownMenuRoot, DropdownMenuRootProvider, DropdownMenuSeparator, DropdownMenuTrigger, DropdownMenuTriggerItem, dropdownMenuAnatomy, useDropdownMenu, useDropdownMenuContext, useDropdownMenuItemContext };