@sprawlify/solid 0.0.16 → 0.0.18

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 (164) hide show
  1. package/dist/{collapsible-sG-Rzvf2.jsx → collapsible-14K1NkX_.jsx} +8 -8
  2. package/dist/{collapsible-CX2tnXKq.js → collapsible-BT7AHLQr.js} +8 -8
  3. package/dist/{collection-zj3lxnwW.js → collection-BVSLJ8Vb.js} +2 -2
  4. package/dist/{collection-BRr4O2_i.jsx → collection-CIXQG-Ne.jsx} +2 -2
  5. package/dist/components/accordion/index.d.ts +11 -11
  6. package/dist/components/accordion/index.js +9 -9
  7. package/dist/components/accordion/index.jsx +9 -9
  8. package/dist/components/angle-slider/index.d.ts +13 -13
  9. package/dist/components/angle-slider/index.js +7 -7
  10. package/dist/components/angle-slider/index.jsx +7 -7
  11. package/dist/components/avatar/index.d.ts +8 -8
  12. package/dist/components/avatar/index.js +7 -7
  13. package/dist/components/avatar/index.jsx +7 -7
  14. package/dist/components/bottom-sheet/index.d.ts +13 -13
  15. package/dist/components/bottom-sheet/index.js +10 -10
  16. package/dist/components/bottom-sheet/index.jsx +10 -10
  17. package/dist/components/carousel/index.d.ts +17 -17
  18. package/dist/components/carousel/index.js +7 -7
  19. package/dist/components/carousel/index.jsx +7 -7
  20. package/dist/components/checkbox/index.d.ts +13 -13
  21. package/dist/components/checkbox/index.js +10 -10
  22. package/dist/components/checkbox/index.jsx +10 -10
  23. package/dist/components/clipboard/index.d.ts +11 -11
  24. package/dist/components/clipboard/index.js +7 -7
  25. package/dist/components/clipboard/index.jsx +7 -7
  26. package/dist/components/collapsible/index.d.ts +10 -10
  27. package/dist/components/collapsible/index.js +7 -7
  28. package/dist/components/collapsible/index.jsx +7 -7
  29. package/dist/components/collection/index.d.ts +2 -2
  30. package/dist/components/collection/index.js +2 -2
  31. package/dist/components/collection/index.jsx +2 -2
  32. package/dist/components/color-picker/index.d.ts +35 -35
  33. package/dist/components/color-picker/index.js +12 -12
  34. package/dist/components/color-picker/index.jsx +12 -12
  35. package/dist/components/combobox/index.d.ts +22 -22
  36. package/dist/components/combobox/index.js +13 -13
  37. package/dist/components/combobox/index.jsx +13 -13
  38. package/dist/components/date-picker/index.d.ts +33 -33
  39. package/dist/components/date-picker/index.js +10 -10
  40. package/dist/components/date-picker/index.jsx +10 -10
  41. package/dist/components/dialog/index.d.ts +13 -13
  42. package/dist/components/dialog/index.js +10 -10
  43. package/dist/components/dialog/index.jsx +10 -10
  44. package/dist/components/download-trigger/index.d.ts +3 -3
  45. package/dist/components/download-trigger/index.js +5 -5
  46. package/dist/components/download-trigger/index.jsx +5 -5
  47. package/dist/components/editable/index.d.ts +14 -14
  48. package/dist/components/editable/index.js +10 -10
  49. package/dist/components/editable/index.jsx +10 -10
  50. package/dist/components/field/index.d.ts +14 -14
  51. package/dist/components/field/index.js +8 -8
  52. package/dist/components/field/index.jsx +8 -8
  53. package/dist/components/fieldset/index.d.ts +12 -12
  54. package/dist/components/fieldset/index.js +7 -7
  55. package/dist/components/fieldset/index.jsx +7 -7
  56. package/dist/components/file-upload/index.d.ts +102 -0
  57. package/dist/components/file-upload/index.js +284 -0
  58. package/dist/components/file-upload/index.jsx +255 -0
  59. package/dist/components/floating-panel/index.d.ts +100 -0
  60. package/dist/components/floating-panel/index.js +246 -0
  61. package/dist/components/floating-panel/index.jsx +217 -0
  62. package/dist/components/focus-trap/index.d.ts +17 -0
  63. package/dist/components/focus-trap/index.js +34 -0
  64. package/dist/components/focus-trap/index.jsx +30 -0
  65. package/dist/components/format/index.d.ts +27 -0
  66. package/dist/components/format/index.js +46 -0
  67. package/dist/components/format/index.jsx +48 -0
  68. package/dist/components/frame/index.d.ts +13 -0
  69. package/dist/components/frame/index.js +121 -0
  70. package/dist/components/frame/index.jsx +86 -0
  71. package/dist/components/highlight/index.d.ts +3 -3
  72. package/dist/components/highlight/index.js +3 -3
  73. package/dist/components/highlight/index.jsx +3 -3
  74. package/dist/components/hover-card/index.d.ts +70 -0
  75. package/dist/components/hover-card/index.js +168 -0
  76. package/dist/components/hover-card/index.jsx +136 -0
  77. package/dist/components/image-cropper/index.d.ts +64 -0
  78. package/dist/components/image-cropper/index.js +151 -0
  79. package/dist/components/image-cropper/index.jsx +144 -0
  80. package/dist/components/json-tree-view/index.d.ts +56 -0
  81. package/dist/components/json-tree-view/index.js +330 -0
  82. package/dist/components/json-tree-view/index.jsx +204 -0
  83. package/dist/components/listbox/index.d.ts +114 -0
  84. package/dist/components/listbox/index.js +261 -0
  85. package/dist/components/listbox/index.jsx +236 -0
  86. package/dist/components/marquee/index.d.ts +59 -0
  87. package/dist/components/marquee/index.js +138 -0
  88. package/dist/components/marquee/index.jsx +126 -0
  89. package/dist/components/menu/index.d.ts +161 -0
  90. package/dist/components/menu/index.js +471 -0
  91. package/dist/components/menu/index.jsx +392 -0
  92. package/dist/components/navigation-menu/index.d.ts +90 -0
  93. package/dist/components/navigation-menu/index.js +304 -0
  94. package/dist/components/navigation-menu/index.jsx +237 -0
  95. package/dist/components/number-input/index.d.ts +74 -0
  96. package/dist/components/number-input/index.js +182 -0
  97. package/dist/components/number-input/index.jsx +173 -0
  98. package/dist/components/pagination/index.d.ts +69 -0
  99. package/dist/components/pagination/index.js +146 -0
  100. package/dist/components/pagination/index.jsx +139 -0
  101. package/dist/components/password-input/index.d.ts +66 -0
  102. package/dist/components/password-input/index.js +159 -0
  103. package/dist/components/password-input/index.jsx +140 -0
  104. package/dist/components/pin-input/index.d.ts +59 -0
  105. package/dist/components/pin-input/index.js +151 -0
  106. package/dist/components/pin-input/index.jsx +142 -0
  107. package/dist/components/popover/index.d.ts +95 -0
  108. package/dist/components/popover/index.js +220 -0
  109. package/dist/components/popover/index.jsx +188 -0
  110. package/dist/components/presence/index.d.ts +4 -4
  111. package/dist/components/presence/index.js +7 -7
  112. package/dist/components/presence/index.jsx +7 -7
  113. package/dist/components/select/index.d.ts +22 -22
  114. package/dist/components/select/index.js +13 -13
  115. package/dist/components/select/index.jsx +13 -13
  116. package/dist/components/tree-view/index.d.ts +7 -0
  117. package/dist/components/tree-view/index.js +11 -0
  118. package/dist/components/tree-view/index.jsx +11 -0
  119. package/dist/{factory-Ch5jgk20.jsx → factory-BIJk1mK6.jsx} +1 -1
  120. package/dist/{factory-PGDAvOKb.js → factory-k8EbNZ7r.js} +1 -1
  121. package/dist/{factory-4A25bngy.d.ts → factory-srnAQg4A.d.ts} +6 -1
  122. package/dist/{field-CoYiA2ek.js → field-CZv3v7K-.js} +8 -8
  123. package/dist/{field-BRr9Zdes.jsx → field-CtkmPUb0.jsx} +8 -8
  124. package/dist/{fieldset-BrJqMLEd.js → fieldset-B2nK8dL5.js} +8 -8
  125. package/dist/{fieldset-B_LyllEa.jsx → fieldset-aYQsMWX2.jsx} +8 -8
  126. package/dist/{index-GEfvAmRc.d.ts → index-BwthXhaG.d.ts} +1 -1
  127. package/dist/index-Dl22eiVf.d.ts +143 -0
  128. package/dist/index-Dqmtlqpz.d.ts +143 -0
  129. package/dist/{index-j2avJy7D.d.ts → index-DylIyeqd.d.ts} +8 -8
  130. package/dist/index-utxtRaDW.d.ts +41 -0
  131. package/dist/{index-oc8gLl07.d.ts → index-w0NPbRP3.d.ts} +8 -8
  132. package/dist/index.d.ts +6 -44
  133. package/dist/index.js +6 -5
  134. package/dist/index.jsx +6 -5
  135. package/dist/{presence-BpwBRlZW.js → presence-Clrs1hmS.js} +7 -7
  136. package/dist/{presence-Bmn43U_q.jsx → presence-H4-8_5_s.jsx} +7 -7
  137. package/dist/{providers-DFaRRd80.jsx → providers-C6VPiSrB.jsx} +2 -2
  138. package/dist/{providers-Bo0OFe08.js → providers-DgUckEdb.js} +2 -2
  139. package/dist/{render-strategy-DFlz7Uc4.js → render-strategy-BlHCR8sl.js} +2 -2
  140. package/dist/{render-strategy-CdJhRv3I.jsx → render-strategy-KJFIjVVG.jsx} +2 -2
  141. package/dist/tree-view-CyvT0V14.js +318 -0
  142. package/dist/tree-view-DJgvku6y.jsx +291 -0
  143. package/dist/utils/index.d.ts +1 -1
  144. package/dist/utils/index.js +2 -2
  145. package/dist/utils/index.jsx +2 -2
  146. package/package.json +97 -2
  147. /package/dist/{chunk-B5so6B0y.jsx → chunk-BJ7z6UrO.jsx} +0 -0
  148. /package/dist/{chunk-B93cd-Dz.js → chunk-Bn8mXcTA.js} +0 -0
  149. /package/dist/{compose-refs-BVVIB7xn.js → compose-refs-Cp4AShsY.jsx} +0 -0
  150. /package/dist/{compose-refs-icUeuyHm.jsx → compose-refs-tCBI7PRJ.js} +0 -0
  151. /package/dist/{core-DbInRfhI.jsx → core-CRjuRw95.js} +0 -0
  152. /package/dist/{core-oNB2jGcl.js → core-C_FYj4uc.jsx} +0 -0
  153. /package/dist/{create-context-C3rvZvkc.jsx → create-context-BwqlrMqL.jsx} +0 -0
  154. /package/dist/{create-context-GfQ_MylE.js → create-context-DlXBVMoq.js} +0 -0
  155. /package/dist/{create-split-props-B8A7_AF7.jsx → create-split-props-BHmgTHSf.js} +0 -0
  156. /package/dist/{create-split-props-pQu7jijw.js → create-split-props-CKwjjjkD.jsx} +0 -0
  157. /package/dist/{index-C7N791Fc.d.ts → index-BLALA3BS.d.ts} +0 -0
  158. /package/dist/{index-B6dBCfnB.d.ts → index-DiANe65S.d.ts} +0 -0
  159. /package/dist/{render-strategy-BNECKEQk.d.ts → render-strategy-BmTDUy3U.d.ts} +0 -0
  160. /package/dist/{run-if-fn-A3VwXy-o.jsx → run-if-fn-C80kt4dU.js} +0 -0
  161. /package/dist/{run-if-fn-D5794CxE.js → run-if-fn-CrJzzDIM.jsx} +0 -0
  162. /package/dist/{types-Dbw4va3W.d.ts → types-mGUbKy2h.d.ts} +0 -0
  163. /package/dist/{utils-DQi-Cen5.js → utils-DSmVDqW7.js} +0 -0
  164. /package/dist/{utils-vSjszv0W.jsx → utils-DhhcJyG-.jsx} +0 -0
@@ -0,0 +1,304 @@
1
+ import { t as __export } from "../../chunk-Bn8mXcTA.js";
2
+ import { i as useMachine, n as normalizeProps, r as mergeProps$2 } from "../../core-CRjuRw95.js";
3
+ import { t as runIfFn } from "../../run-if-fn-C80kt4dU.js";
4
+ import { t as createContext$1 } from "../../create-context-DlXBVMoq.js";
5
+ import { i as useLocaleContext, o as useEnvironmentContext } from "../../providers-DgUckEdb.js";
6
+ import { t as sprawlify } from "../../factory-k8EbNZ7r.js";
7
+ import { t as createSplitProps } from "../../create-split-props-BHmgTHSf.js";
8
+ import { n as splitRenderStrategyProps, r as useRenderStrategyContext, t as RenderStrategyProvider } from "../../render-strategy-BlHCR8sl.js";
9
+ import { t as composeRefs } from "../../compose-refs-tCBI7PRJ.js";
10
+ import { i as usePresence, t as PresenceProvider } from "../../presence-Clrs1hmS.js";
11
+ import { Show, createMemo, createUniqueId } from "solid-js";
12
+ import { Portal, createComponent, memo, mergeProps as mergeProps$1, spread, template } from "solid-js/web";
13
+ import * as navigationMenu from "@sprawlify/primitives/machines/navigation-menu";
14
+ import { anatomy as navigationMenuAnatomy } from "@sprawlify/primitives/machines/navigation-menu";
15
+
16
+ //#region src/components/navigation-menu/use-navigation-menu-context.ts
17
+ const [NavigationMenuProvider, useNavigationMenuContext] = createContext$1({
18
+ hookName: "useNavigationMenuContext",
19
+ providerName: "<NavigationMenuProvider />"
20
+ });
21
+
22
+ //#endregion
23
+ //#region src/components/navigation-menu/navigation-menu-arrow.tsx
24
+ const NavigationMenuArrow = (props) => {
25
+ const api = useNavigationMenuContext();
26
+ const mergedProps = mergeProps$2(() => api().getArrowProps(), props);
27
+ return createComponent(sprawlify.div, mergedProps);
28
+ };
29
+
30
+ //#endregion
31
+ //#region src/components/navigation-menu/use-navigation-menu-item-props-context.ts
32
+ const [NavigationMenuItemPropsProvider, useNavigationMenuItemPropsContext] = createContext$1({
33
+ hookName: "useNavigationMenuItemPropsContext",
34
+ providerName: "<NavigationMenuItemPropsProvider />",
35
+ strict: false
36
+ });
37
+
38
+ //#endregion
39
+ //#region src/components/navigation-menu/navigation-menu-content.tsx
40
+ var _tmpl$ = /* @__PURE__ */ template(`<div>`);
41
+ const splitContentProps = createSplitProps();
42
+ const NavigationMenuContent = (props) => {
43
+ const api = useNavigationMenuContext();
44
+ const itemContext = useNavigationMenuItemPropsContext();
45
+ const value = createMemo(() => props.value ?? itemContext?.value);
46
+ const [contentProps, localProps] = splitContentProps(mergeProps$2(props, () => ({ value: value() })), ["value"]);
47
+ const presenceApi = usePresence(mergeProps$2(useRenderStrategyContext(), () => ({ present: api().value === contentProps.value })));
48
+ const mergedProps = mergeProps$2(() => api().getContentProps(contentProps), () => presenceApi().presenceProps, localProps);
49
+ const viewportNode = createMemo(() => api().getViewportNode());
50
+ const isViewportRendered = createMemo(() => api().isViewportRendered);
51
+ const content = createComponent(PresenceProvider, {
52
+ value: presenceApi,
53
+ get children() {
54
+ return createComponent(Show, {
55
+ get when() {
56
+ return !presenceApi().unmounted;
57
+ },
58
+ get children() {
59
+ return createComponent(sprawlify.div, mergeProps$1(mergedProps, { ref(r$) {
60
+ var _ref$ = composeRefs(presenceApi().ref, props.ref);
61
+ typeof _ref$ === "function" && _ref$(r$);
62
+ } }));
63
+ }
64
+ });
65
+ }
66
+ });
67
+ return createComponent(Show, {
68
+ get when() {
69
+ return memo(() => !!isViewportRendered())() && viewportNode();
70
+ },
71
+ fallback: content,
72
+ get children() {
73
+ return [
74
+ (() => {
75
+ var _el$ = _tmpl$();
76
+ spread(_el$, mergeProps$1(() => api().getViewportProxyProps(contentProps)), false, false);
77
+ return _el$;
78
+ })(),
79
+ (() => {
80
+ var _el$2 = _tmpl$();
81
+ spread(_el$2, mergeProps$1(() => api().getTriggerProxyProps(contentProps)), false, false);
82
+ return _el$2;
83
+ })(),
84
+ createComponent(Portal, {
85
+ get mount() {
86
+ return viewportNode();
87
+ },
88
+ children: content
89
+ })
90
+ ];
91
+ }
92
+ });
93
+ };
94
+
95
+ //#endregion
96
+ //#region src/components/navigation-menu/navigation-menu-context.tsx
97
+ const NavigationMenuContext = (props) => props.children(useNavigationMenuContext());
98
+
99
+ //#endregion
100
+ //#region src/components/navigation-menu/navigation-menu-indicator.tsx
101
+ const NavigationMenuIndicator = (props) => {
102
+ const api = useNavigationMenuContext();
103
+ const presenceApi = usePresence(mergeProps$2(useRenderStrategyContext(), () => ({ present: api().open })));
104
+ const mergedProps = mergeProps$2(() => api().getIndicatorProps(), () => presenceApi().presenceProps, props);
105
+ return createComponent(PresenceProvider, {
106
+ value: presenceApi,
107
+ get children() {
108
+ return createComponent(Show, {
109
+ get when() {
110
+ return !presenceApi().unmounted;
111
+ },
112
+ get children() {
113
+ return createComponent(sprawlify.div, mergeProps$1(mergedProps, { ref(r$) {
114
+ var _ref$ = composeRefs(presenceApi().ref, props.ref);
115
+ typeof _ref$ === "function" && _ref$(r$);
116
+ } }));
117
+ }
118
+ });
119
+ }
120
+ });
121
+ };
122
+
123
+ //#endregion
124
+ //#region src/components/navigation-menu/navigation-menu-item.tsx
125
+ const splitItemProps$1 = createSplitProps();
126
+ const NavigationMenuItem = (props) => {
127
+ const [itemProps, localProps] = splitItemProps$1(props, ["disabled", "value"]);
128
+ const api = useNavigationMenuContext();
129
+ const mergedProps = mergeProps$2(() => api().getItemProps(itemProps), localProps);
130
+ return createComponent(NavigationMenuItemPropsProvider, {
131
+ value: itemProps,
132
+ get children() {
133
+ return createComponent(sprawlify.div, mergedProps);
134
+ }
135
+ });
136
+ };
137
+
138
+ //#endregion
139
+ //#region src/components/navigation-menu/navigation-menu-item-indicator.tsx
140
+ const NavigationMenuItemIndicator = (props) => {
141
+ const api = useNavigationMenuContext();
142
+ const itemProps = useNavigationMenuItemPropsContext();
143
+ const mergedProps = mergeProps$2(() => api().getItemIndicatorProps(itemProps), props);
144
+ return createComponent(sprawlify.div, mergedProps);
145
+ };
146
+
147
+ //#endregion
148
+ //#region src/components/navigation-menu/navigation-menu-link.tsx
149
+ const splitLinkProps = createSplitProps();
150
+ const NavigationMenuLink = (props) => {
151
+ const itemContext = useNavigationMenuItemPropsContext();
152
+ const value = createMemo(() => props.value ?? itemContext?.value);
153
+ const [linkProps, localProps] = splitLinkProps(mergeProps$2(props, () => ({ value: value() })), [
154
+ "current",
155
+ "onSelect",
156
+ "value",
157
+ "closeOnClick"
158
+ ]);
159
+ const api = useNavigationMenuContext();
160
+ const mergedProps = mergeProps$2(() => api().getLinkProps(linkProps), localProps);
161
+ return createComponent(sprawlify.a, mergedProps);
162
+ };
163
+
164
+ //#endregion
165
+ //#region src/components/navigation-menu/navigation-menu-list.tsx
166
+ const NavigationMenuList = (props) => {
167
+ const api = useNavigationMenuContext();
168
+ const mergedProps = mergeProps$2(() => api().getListProps(), props);
169
+ return createComponent(sprawlify.div, mergedProps);
170
+ };
171
+
172
+ //#endregion
173
+ //#region src/components/navigation-menu/use-navigation-menu.ts
174
+ const useNavigationMenu = (props) => {
175
+ const id = createUniqueId();
176
+ const locale = useLocaleContext();
177
+ const environment = useEnvironmentContext();
178
+ const machineProps = createMemo(() => ({
179
+ id,
180
+ dir: locale().dir,
181
+ getRootNode: environment().getRootNode,
182
+ ...runIfFn(props)
183
+ }));
184
+ const service = useMachine(navigationMenu.machine, machineProps);
185
+ return createMemo(() => navigationMenu.connect(service, normalizeProps));
186
+ };
187
+
188
+ //#endregion
189
+ //#region src/components/navigation-menu/navigation-menu-root.tsx
190
+ const NavigationMenuRoot = (props) => {
191
+ const [renderStrategyProps, navigationMenuProps] = splitRenderStrategyProps(props);
192
+ const [useNavigationMenuProps, localProps] = createSplitProps()(navigationMenuProps, [
193
+ "closeDelay",
194
+ "defaultValue",
195
+ "disableClickTrigger",
196
+ "disableHoverTrigger",
197
+ "disablePointerLeaveClose",
198
+ "id",
199
+ "ids",
200
+ "onValueChange",
201
+ "openDelay",
202
+ "orientation",
203
+ "value"
204
+ ]);
205
+ const api = useNavigationMenu(useNavigationMenuProps);
206
+ const mergedProps = mergeProps$2(() => api().getRootProps(), localProps);
207
+ return createComponent(NavigationMenuProvider, {
208
+ value: api,
209
+ get children() {
210
+ return createComponent(RenderStrategyProvider, {
211
+ value: renderStrategyProps,
212
+ get children() {
213
+ return createComponent(sprawlify.nav, mergedProps);
214
+ }
215
+ });
216
+ }
217
+ });
218
+ };
219
+
220
+ //#endregion
221
+ //#region src/components/navigation-menu/navigation-menu-root-provider.tsx
222
+ const NavigationMenuRootProvider = (props) => {
223
+ const [renderStrategyProps, navigationMenuProps] = splitRenderStrategyProps(props);
224
+ const [{ value: navigationMenu$1 }, localProps] = createSplitProps()(navigationMenuProps, ["value"]);
225
+ const mergedProps = mergeProps$2(() => navigationMenu$1().getRootProps(), localProps);
226
+ return createComponent(NavigationMenuProvider, {
227
+ value: navigationMenu$1,
228
+ get children() {
229
+ return createComponent(RenderStrategyProvider, {
230
+ value: renderStrategyProps,
231
+ get children() {
232
+ return createComponent(sprawlify.nav, mergedProps);
233
+ }
234
+ });
235
+ }
236
+ });
237
+ };
238
+
239
+ //#endregion
240
+ //#region src/components/navigation-menu/navigation-menu-trigger.tsx
241
+ const splitItemProps = createSplitProps();
242
+ const NavigationMenuTrigger = (props) => {
243
+ const itemContext = useNavigationMenuItemPropsContext();
244
+ if (!itemContext) throw new Error("NavigationMenu.Trigger must be used within NavigationMenu.Item");
245
+ const value = createMemo(() => itemContext.value);
246
+ const disabled = createMemo(() => props.disabled ?? itemContext.disabled);
247
+ const [triggerProps, localProps] = splitItemProps(mergeProps$2(props, () => ({
248
+ value: value(),
249
+ disabled: disabled()
250
+ })), ["value", "disabled"]);
251
+ const api = useNavigationMenuContext();
252
+ const mergedProps = mergeProps$2(() => api().getTriggerProps(triggerProps), localProps);
253
+ return createComponent(sprawlify.button, mergedProps);
254
+ };
255
+
256
+ //#endregion
257
+ //#region src/components/navigation-menu/navigation-menu-viewport.tsx
258
+ const NavigationMenuViewport = (props) => {
259
+ const [viewportProps, localProps] = createSplitProps()(props, ["align"]);
260
+ const api = useNavigationMenuContext();
261
+ const presenceApi = usePresence(mergeProps$2(useRenderStrategyContext(), () => ({ present: api().open })));
262
+ const mergedProps = mergeProps$2(() => api().getViewportProps(viewportProps), () => presenceApi().presenceProps, localProps);
263
+ return createComponent(Show, {
264
+ get when() {
265
+ return !presenceApi().unmounted;
266
+ },
267
+ get children() {
268
+ return createComponent(sprawlify.div, mergeProps$1(mergedProps, { ref(r$) {
269
+ var _ref$ = composeRefs(presenceApi().ref, props.ref);
270
+ typeof _ref$ === "function" && _ref$(r$);
271
+ } }));
272
+ }
273
+ });
274
+ };
275
+
276
+ //#endregion
277
+ //#region src/components/navigation-menu/navigation-menu-viewport-positioner.tsx
278
+ const NavigationMenuViewportPositioner = (props) => {
279
+ const [positionerProps, localProps] = createSplitProps()(props, ["align"]);
280
+ const api = useNavigationMenuContext();
281
+ const mergedProps = mergeProps$2(() => api().getViewportPositionerProps(positionerProps), localProps);
282
+ return createComponent(sprawlify.div, mergedProps);
283
+ };
284
+
285
+ //#endregion
286
+ //#region src/components/navigation-menu/navigation-menu.ts
287
+ var navigation_menu_exports = /* @__PURE__ */ __export({
288
+ Arrow: () => NavigationMenuArrow,
289
+ Content: () => NavigationMenuContent,
290
+ Context: () => NavigationMenuContext,
291
+ Indicator: () => NavigationMenuIndicator,
292
+ Item: () => NavigationMenuItem,
293
+ ItemIndicator: () => NavigationMenuItemIndicator,
294
+ Link: () => NavigationMenuLink,
295
+ List: () => NavigationMenuList,
296
+ Root: () => NavigationMenuRoot,
297
+ RootProvider: () => NavigationMenuRootProvider,
298
+ Trigger: () => NavigationMenuTrigger,
299
+ Viewport: () => NavigationMenuViewport,
300
+ ViewportPositioner: () => NavigationMenuViewportPositioner
301
+ });
302
+
303
+ //#endregion
304
+ export { navigation_menu_exports as NavigationMenu, NavigationMenuArrow, NavigationMenuContent, NavigationMenuContext, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuItemIndicator, NavigationMenuLink, NavigationMenuList, NavigationMenuRoot, NavigationMenuRootProvider, NavigationMenuTrigger, NavigationMenuViewport, NavigationMenuViewportPositioner, navigationMenuAnatomy, useNavigationMenu, useNavigationMenuContext };
@@ -0,0 +1,237 @@
1
+ import { t as __export } from "../../chunk-BJ7z6UrO.jsx";
2
+ import { i as useMachine, n as normalizeProps, r as mergeProps$1 } from "../../core-C_FYj4uc.jsx";
3
+ import { t as runIfFn } from "../../run-if-fn-CrJzzDIM.jsx";
4
+ import { t as createContext$1 } from "../../create-context-BwqlrMqL.jsx";
5
+ import { i as useLocaleContext, o as useEnvironmentContext } from "../../providers-C6VPiSrB.jsx";
6
+ import { t as sprawlify } from "../../factory-BIJk1mK6.jsx";
7
+ import { t as createSplitProps } from "../../create-split-props-CKwjjjkD.jsx";
8
+ import { n as splitRenderStrategyProps, r as useRenderStrategyContext, t as RenderStrategyProvider } from "../../render-strategy-KJFIjVVG.jsx";
9
+ import { t as composeRefs } from "../../compose-refs-Cp4AShsY.jsx";
10
+ import { i as usePresence, t as PresenceProvider } from "../../presence-H4-8_5_s.jsx";
11
+ import { Show, createMemo, createUniqueId } from "solid-js";
12
+ import { Portal } from "solid-js/web";
13
+ import * as navigationMenu from "@sprawlify/primitives/machines/navigation-menu";
14
+ import { anatomy as navigationMenuAnatomy } from "@sprawlify/primitives/machines/navigation-menu";
15
+
16
+ //#region src/components/navigation-menu/use-navigation-menu-context.ts
17
+ const [NavigationMenuProvider, useNavigationMenuContext] = createContext$1({
18
+ hookName: "useNavigationMenuContext",
19
+ providerName: "<NavigationMenuProvider />"
20
+ });
21
+
22
+ //#endregion
23
+ //#region src/components/navigation-menu/navigation-menu-arrow.tsx
24
+ const NavigationMenuArrow = (props) => {
25
+ const api = useNavigationMenuContext();
26
+ const mergedProps = mergeProps$1(() => api().getArrowProps(), props);
27
+ return <sprawlify.div {...mergedProps} />;
28
+ };
29
+
30
+ //#endregion
31
+ //#region src/components/navigation-menu/use-navigation-menu-item-props-context.ts
32
+ const [NavigationMenuItemPropsProvider, useNavigationMenuItemPropsContext] = createContext$1({
33
+ hookName: "useNavigationMenuItemPropsContext",
34
+ providerName: "<NavigationMenuItemPropsProvider />",
35
+ strict: false
36
+ });
37
+
38
+ //#endregion
39
+ //#region src/components/navigation-menu/navigation-menu-content.tsx
40
+ const splitContentProps = createSplitProps();
41
+ const NavigationMenuContent = (props) => {
42
+ const api = useNavigationMenuContext();
43
+ const itemContext = useNavigationMenuItemPropsContext();
44
+ const value = createMemo(() => props.value ?? itemContext?.value);
45
+ const [contentProps, localProps] = splitContentProps(mergeProps$1(props, () => ({ value: value() })), ["value"]);
46
+ const presenceApi = usePresence(mergeProps$1(useRenderStrategyContext(), () => ({ present: api().value === contentProps.value })));
47
+ const mergedProps = mergeProps$1(() => api().getContentProps(contentProps), () => presenceApi().presenceProps, localProps);
48
+ const viewportNode = createMemo(() => api().getViewportNode());
49
+ const isViewportRendered = createMemo(() => api().isViewportRendered);
50
+ const content = <PresenceProvider value={presenceApi}>
51
+ <Show when={!presenceApi().unmounted}>
52
+ <sprawlify.div {...mergedProps} ref={composeRefs(presenceApi().ref, props.ref)} />
53
+ </Show>
54
+ </PresenceProvider>;
55
+ return <Show when={isViewportRendered() && viewportNode()} fallback={content}>
56
+ <div {...api().getViewportProxyProps(contentProps)} />
57
+ <div {...api().getTriggerProxyProps(contentProps)} />
58
+ <Portal mount={viewportNode()}>{content}</Portal>
59
+ </Show>;
60
+ };
61
+
62
+ //#endregion
63
+ //#region src/components/navigation-menu/navigation-menu-context.tsx
64
+ const NavigationMenuContext = (props) => props.children(useNavigationMenuContext());
65
+
66
+ //#endregion
67
+ //#region src/components/navigation-menu/navigation-menu-indicator.tsx
68
+ const NavigationMenuIndicator = (props) => {
69
+ const api = useNavigationMenuContext();
70
+ const presenceApi = usePresence(mergeProps$1(useRenderStrategyContext(), () => ({ present: api().open })));
71
+ const mergedProps = mergeProps$1(() => api().getIndicatorProps(), () => presenceApi().presenceProps, props);
72
+ return <PresenceProvider value={presenceApi}>
73
+ <Show when={!presenceApi().unmounted}>
74
+ <sprawlify.div {...mergedProps} ref={composeRefs(presenceApi().ref, props.ref)} />
75
+ </Show>
76
+ </PresenceProvider>;
77
+ };
78
+
79
+ //#endregion
80
+ //#region src/components/navigation-menu/navigation-menu-item.tsx
81
+ const splitItemProps$1 = createSplitProps();
82
+ const NavigationMenuItem = (props) => {
83
+ const [itemProps, localProps] = splitItemProps$1(props, ["disabled", "value"]);
84
+ const api = useNavigationMenuContext();
85
+ const mergedProps = mergeProps$1(() => api().getItemProps(itemProps), localProps);
86
+ return <NavigationMenuItemPropsProvider value={itemProps}>
87
+ <sprawlify.div {...mergedProps} />
88
+ </NavigationMenuItemPropsProvider>;
89
+ };
90
+
91
+ //#endregion
92
+ //#region src/components/navigation-menu/navigation-menu-item-indicator.tsx
93
+ const NavigationMenuItemIndicator = (props) => {
94
+ const api = useNavigationMenuContext();
95
+ const itemProps = useNavigationMenuItemPropsContext();
96
+ const mergedProps = mergeProps$1(() => api().getItemIndicatorProps(itemProps), props);
97
+ return <sprawlify.div {...mergedProps} />;
98
+ };
99
+
100
+ //#endregion
101
+ //#region src/components/navigation-menu/navigation-menu-link.tsx
102
+ const splitLinkProps = createSplitProps();
103
+ const NavigationMenuLink = (props) => {
104
+ const itemContext = useNavigationMenuItemPropsContext();
105
+ const value = createMemo(() => props.value ?? itemContext?.value);
106
+ const [linkProps, localProps] = splitLinkProps(mergeProps$1(props, () => ({ value: value() })), [
107
+ "current",
108
+ "onSelect",
109
+ "value",
110
+ "closeOnClick"
111
+ ]);
112
+ const api = useNavigationMenuContext();
113
+ const mergedProps = mergeProps$1(() => api().getLinkProps(linkProps), localProps);
114
+ return <sprawlify.a {...mergedProps} />;
115
+ };
116
+
117
+ //#endregion
118
+ //#region src/components/navigation-menu/navigation-menu-list.tsx
119
+ const NavigationMenuList = (props) => {
120
+ const api = useNavigationMenuContext();
121
+ const mergedProps = mergeProps$1(() => api().getListProps(), props);
122
+ return <sprawlify.div {...mergedProps} />;
123
+ };
124
+
125
+ //#endregion
126
+ //#region src/components/navigation-menu/use-navigation-menu.ts
127
+ const useNavigationMenu = (props) => {
128
+ const id = createUniqueId();
129
+ const locale = useLocaleContext();
130
+ const environment = useEnvironmentContext();
131
+ const machineProps = createMemo(() => ({
132
+ id,
133
+ dir: locale().dir,
134
+ getRootNode: environment().getRootNode,
135
+ ...runIfFn(props)
136
+ }));
137
+ const service = useMachine(navigationMenu.machine, machineProps);
138
+ return createMemo(() => navigationMenu.connect(service, normalizeProps));
139
+ };
140
+
141
+ //#endregion
142
+ //#region src/components/navigation-menu/navigation-menu-root.tsx
143
+ const NavigationMenuRoot = (props) => {
144
+ const [renderStrategyProps, navigationMenuProps] = splitRenderStrategyProps(props);
145
+ const [useNavigationMenuProps, localProps] = createSplitProps()(navigationMenuProps, [
146
+ "closeDelay",
147
+ "defaultValue",
148
+ "disableClickTrigger",
149
+ "disableHoverTrigger",
150
+ "disablePointerLeaveClose",
151
+ "id",
152
+ "ids",
153
+ "onValueChange",
154
+ "openDelay",
155
+ "orientation",
156
+ "value"
157
+ ]);
158
+ const api = useNavigationMenu(useNavigationMenuProps);
159
+ const mergedProps = mergeProps$1(() => api().getRootProps(), localProps);
160
+ return <NavigationMenuProvider value={api}>
161
+ <RenderStrategyProvider value={renderStrategyProps}>
162
+ <sprawlify.nav {...mergedProps} />
163
+ </RenderStrategyProvider>
164
+ </NavigationMenuProvider>;
165
+ };
166
+
167
+ //#endregion
168
+ //#region src/components/navigation-menu/navigation-menu-root-provider.tsx
169
+ const NavigationMenuRootProvider = (props) => {
170
+ const [renderStrategyProps, navigationMenuProps] = splitRenderStrategyProps(props);
171
+ const [{ value: navigationMenu$1 }, localProps] = createSplitProps()(navigationMenuProps, ["value"]);
172
+ const mergedProps = mergeProps$1(() => navigationMenu$1().getRootProps(), localProps);
173
+ return <NavigationMenuProvider value={navigationMenu$1}>
174
+ <RenderStrategyProvider value={renderStrategyProps}>
175
+ <sprawlify.nav {...mergedProps} />
176
+ </RenderStrategyProvider>
177
+ </NavigationMenuProvider>;
178
+ };
179
+
180
+ //#endregion
181
+ //#region src/components/navigation-menu/navigation-menu-trigger.tsx
182
+ const splitItemProps = createSplitProps();
183
+ const NavigationMenuTrigger = (props) => {
184
+ const itemContext = useNavigationMenuItemPropsContext();
185
+ if (!itemContext) throw new Error("NavigationMenu.Trigger must be used within NavigationMenu.Item");
186
+ const value = createMemo(() => itemContext.value);
187
+ const disabled = createMemo(() => props.disabled ?? itemContext.disabled);
188
+ const [triggerProps, localProps] = splitItemProps(mergeProps$1(props, () => ({
189
+ value: value(),
190
+ disabled: disabled()
191
+ })), ["value", "disabled"]);
192
+ const api = useNavigationMenuContext();
193
+ const mergedProps = mergeProps$1(() => api().getTriggerProps(triggerProps), localProps);
194
+ return <sprawlify.button {...mergedProps} />;
195
+ };
196
+
197
+ //#endregion
198
+ //#region src/components/navigation-menu/navigation-menu-viewport.tsx
199
+ const NavigationMenuViewport = (props) => {
200
+ const [viewportProps, localProps] = createSplitProps()(props, ["align"]);
201
+ const api = useNavigationMenuContext();
202
+ const presenceApi = usePresence(mergeProps$1(useRenderStrategyContext(), () => ({ present: api().open })));
203
+ const mergedProps = mergeProps$1(() => api().getViewportProps(viewportProps), () => presenceApi().presenceProps, localProps);
204
+ return <Show when={!presenceApi().unmounted}>
205
+ <sprawlify.div {...mergedProps} ref={composeRefs(presenceApi().ref, props.ref)} />
206
+ </Show>;
207
+ };
208
+
209
+ //#endregion
210
+ //#region src/components/navigation-menu/navigation-menu-viewport-positioner.tsx
211
+ const NavigationMenuViewportPositioner = (props) => {
212
+ const [positionerProps, localProps] = createSplitProps()(props, ["align"]);
213
+ const api = useNavigationMenuContext();
214
+ const mergedProps = mergeProps$1(() => api().getViewportPositionerProps(positionerProps), localProps);
215
+ return <sprawlify.div {...mergedProps} />;
216
+ };
217
+
218
+ //#endregion
219
+ //#region src/components/navigation-menu/navigation-menu.ts
220
+ var navigation_menu_exports = /* @__PURE__ */ __export({
221
+ Arrow: () => NavigationMenuArrow,
222
+ Content: () => NavigationMenuContent,
223
+ Context: () => NavigationMenuContext,
224
+ Indicator: () => NavigationMenuIndicator,
225
+ Item: () => NavigationMenuItem,
226
+ ItemIndicator: () => NavigationMenuItemIndicator,
227
+ Link: () => NavigationMenuLink,
228
+ List: () => NavigationMenuList,
229
+ Root: () => NavigationMenuRoot,
230
+ RootProvider: () => NavigationMenuRootProvider,
231
+ Trigger: () => NavigationMenuTrigger,
232
+ Viewport: () => NavigationMenuViewport,
233
+ ViewportPositioner: () => NavigationMenuViewportPositioner
234
+ });
235
+
236
+ //#endregion
237
+ export { navigation_menu_exports as NavigationMenu, NavigationMenuArrow, NavigationMenuContent, NavigationMenuContext, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuItemIndicator, NavigationMenuLink, NavigationMenuList, NavigationMenuRoot, NavigationMenuRootProvider, NavigationMenuTrigger, NavigationMenuViewport, NavigationMenuViewportPositioner, navigationMenuAnatomy, useNavigationMenu, useNavigationMenuContext };
@@ -0,0 +1,74 @@
1
+ import { n as PropTypes } from "../../index-BLALA3BS.js";
2
+ import { i as Optional, n as MaybeAccessor, t as Assign } from "../../types-mGUbKy2h.js";
3
+ import { r as PolymorphicProps, t as HTMLProps } from "../../factory-srnAQg4A.js";
4
+ import * as solid_js0 from "solid-js";
5
+ import { Accessor, JSX } from "solid-js";
6
+ import * as numberInput from "@sprawlify/primitives/machines/number-input";
7
+ import { FocusChangeDetails, FocusChangeDetails as NumberInputFocusChangeDetails, ValueChangeDetails, ValueChangeDetails as NumberInputValueChangeDetails, ValueInvalidDetails, ValueInvalidDetails as NumberInputValueInvalidDetails, anatomy as numberInputAnatomy } from "@sprawlify/primitives/machines/number-input";
8
+
9
+ //#region src/components/number-input/use-number-input.d.ts
10
+ interface UseNumberInputProps extends Optional<Omit<numberInput.Props, 'dir' | 'getRootNode'>, 'id'> {}
11
+ interface UseNumberInputReturn extends Accessor<numberInput.Api<PropTypes>> {}
12
+ declare const useNumberInput: (props?: MaybeAccessor<UseNumberInputProps>) => UseNumberInputReturn;
13
+ //#endregion
14
+ //#region src/components/number-input/use-number-input-context.d.ts
15
+ interface UseNumberInputContext extends UseNumberInputReturn {}
16
+ //#endregion
17
+ //#region src/components/number-input/number-input-context.d.ts
18
+ interface NumberInputContextProps {
19
+ children: (context: UseNumberInputContext) => JSX.Element;
20
+ }
21
+ declare const NumberInputContext: (props: NumberInputContextProps) => JSX.Element;
22
+ //#endregion
23
+ //#region src/components/number-input/number-input-control.d.ts
24
+ interface NumberInputControlBaseProps extends PolymorphicProps<'div'> {}
25
+ interface NumberInputControlProps extends HTMLProps<'div'>, NumberInputControlBaseProps {}
26
+ declare const NumberInputControl: (props: NumberInputControlProps) => solid_js0.JSX.Element;
27
+ //#endregion
28
+ //#region src/components/number-input/number-input-decrement-trigger.d.ts
29
+ interface NumberInputDecrementTriggerBaseProps extends PolymorphicProps<'button'> {}
30
+ interface NumberInputDecrementTriggerProps extends HTMLProps<'button'>, NumberInputDecrementTriggerBaseProps {}
31
+ declare const NumberInputDecrementTrigger: (props: NumberInputDecrementTriggerProps) => solid_js0.JSX.Element;
32
+ //#endregion
33
+ //#region src/components/number-input/number-input-increment-trigger.d.ts
34
+ interface NumberInputIncrementTriggerBaseProps extends PolymorphicProps<'button'> {}
35
+ interface NumberInputIncrementTriggerProps extends HTMLProps<'button'>, NumberInputIncrementTriggerBaseProps {}
36
+ declare const NumberInputIncrementTrigger: (props: NumberInputIncrementTriggerProps) => solid_js0.JSX.Element;
37
+ //#endregion
38
+ //#region src/components/number-input/number-input-input.d.ts
39
+ interface NumberInputInputBaseProps extends PolymorphicProps<'input'> {}
40
+ interface NumberInputInputProps extends HTMLProps<'input'>, NumberInputInputBaseProps {}
41
+ declare const NumberInputInput: (props: NumberInputInputProps) => solid_js0.JSX.Element;
42
+ //#endregion
43
+ //#region src/components/number-input/number-input-label.d.ts
44
+ interface NumberInputLabelBaseProps extends PolymorphicProps<'label'> {}
45
+ interface NumberInputLabelProps extends HTMLProps<'label'>, NumberInputLabelBaseProps {}
46
+ declare const NumberInputLabel: (props: NumberInputLabelProps) => solid_js0.JSX.Element;
47
+ //#endregion
48
+ //#region src/components/number-input/number-input-root.d.ts
49
+ interface NumberInputRootBaseProps extends UseNumberInputProps, PolymorphicProps<'div'> {}
50
+ interface NumberInputRootProps extends Assign<HTMLProps<'div'>, NumberInputRootBaseProps> {}
51
+ declare const NumberInputRoot: (props: NumberInputRootProps) => solid_js0.JSX.Element;
52
+ //#endregion
53
+ //#region src/components/number-input/number-input-root-provider.d.ts
54
+ interface RootProviderProps {
55
+ value: UseNumberInputReturn;
56
+ }
57
+ interface NumberInputRootProviderBaseProps extends PolymorphicProps<'div'> {}
58
+ interface NumberInputRootProviderProps extends HTMLProps<'div'>, RootProviderProps, NumberInputRootProviderBaseProps {}
59
+ declare const NumberInputRootProvider: (props: NumberInputRootProviderProps) => solid_js0.JSX.Element;
60
+ //#endregion
61
+ //#region src/components/number-input/number-input-scrubber.d.ts
62
+ interface NumberInputScrubberBaseProps extends PolymorphicProps<'div'> {}
63
+ interface NumberInputScrubberProps extends HTMLProps<'div'>, NumberInputScrubberBaseProps {}
64
+ declare const NumberInputScrubber: (props: NumberInputScrubberProps) => solid_js0.JSX.Element;
65
+ //#endregion
66
+ //#region src/components/number-input/number-input-value-text.d.ts
67
+ interface NumberInputValueTextBaseProps extends PolymorphicProps<'span'> {}
68
+ interface NumberInputValueTextProps extends HTMLProps<'span'>, NumberInputValueTextBaseProps {}
69
+ declare const NumberInputValueText: (props: NumberInputValueTextProps) => solid_js0.JSX.Element;
70
+ declare namespace number_input_d_exports {
71
+ export { NumberInputContext as Context, NumberInputContextProps as ContextProps, NumberInputControl as Control, NumberInputControlBaseProps as ControlBaseProps, NumberInputControlProps as ControlProps, NumberInputDecrementTrigger as DecrementTrigger, NumberInputDecrementTriggerBaseProps as DecrementTriggerBaseProps, NumberInputDecrementTriggerProps as DecrementTriggerProps, FocusChangeDetails, NumberInputIncrementTrigger as IncrementTrigger, NumberInputIncrementTriggerBaseProps as IncrementTriggerBaseProps, NumberInputIncrementTriggerProps as IncrementTriggerProps, NumberInputInput as Input, NumberInputInputBaseProps as InputBaseProps, NumberInputInputProps as InputProps, NumberInputLabel as Label, NumberInputLabelBaseProps as LabelBaseProps, NumberInputLabelProps as LabelProps, NumberInputRoot as Root, NumberInputRootBaseProps as RootBaseProps, NumberInputRootProps as RootProps, NumberInputRootProvider as RootProvider, NumberInputRootProviderBaseProps as RootProviderBaseProps, NumberInputRootProviderProps as RootProviderProps, NumberInputScrubber as Scrubber, NumberInputScrubberBaseProps as ScrubberBaseProps, NumberInputScrubberProps as ScrubberProps, ValueChangeDetails, ValueInvalidDetails, NumberInputValueText as ValueText, NumberInputValueTextBaseProps as ValueTextBaseProps, NumberInputValueTextProps as ValueTextProps };
72
+ }
73
+ //#endregion
74
+ export { number_input_d_exports as NumberInput, NumberInputContext, type NumberInputContextProps, NumberInputControl, type NumberInputControlBaseProps, type NumberInputControlProps, NumberInputDecrementTrigger, type NumberInputDecrementTriggerBaseProps, type NumberInputDecrementTriggerProps, type NumberInputFocusChangeDetails, NumberInputIncrementTrigger, type NumberInputIncrementTriggerBaseProps, type NumberInputIncrementTriggerProps, NumberInputInput, type NumberInputInputBaseProps, type NumberInputInputProps, NumberInputLabel, type NumberInputLabelBaseProps, type NumberInputLabelProps, NumberInputRoot, type NumberInputRootBaseProps, type NumberInputRootProps, NumberInputRootProvider, type NumberInputRootProviderBaseProps, type NumberInputRootProviderProps, NumberInputScrubber, type NumberInputScrubberBaseProps, type NumberInputScrubberProps, type NumberInputValueChangeDetails, type NumberInputValueInvalidDetails, NumberInputValueText, type NumberInputValueTextBaseProps, type NumberInputValueTextProps, type UseNumberInputContext, type UseNumberInputProps, type UseNumberInputReturn, numberInputAnatomy, useNumberInput, useNumberInputContext };