@wirekyt/solid 0.0.1 → 0.0.2

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 (207) hide show
  1. package/dist/accordion.d.ts +68 -0
  2. package/dist/accordion.js +168 -0
  3. package/dist/accordion.jsx +143 -0
  4. package/dist/angle-slider.d.ts +72 -0
  5. package/dist/angle-slider.js +141 -0
  6. package/dist/angle-slider.jsx +130 -0
  7. package/dist/avatar.d.ts +47 -0
  8. package/dist/avatar.js +86 -0
  9. package/dist/avatar.jsx +79 -0
  10. package/dist/carousel.d.ts +92 -0
  11. package/dist/carousel.js +189 -0
  12. package/dist/carousel.jsx +174 -0
  13. package/dist/checkbox.d.ts +140 -0
  14. package/dist/checkbox.js +252 -0
  15. package/dist/checkbox.jsx +234 -0
  16. package/dist/client-only.d.ts +9 -0
  17. package/dist/client-only.js +22 -0
  18. package/dist/client-only.jsx +13 -0
  19. package/dist/clipboard.d.ts +70 -0
  20. package/dist/clipboard.js +137 -0
  21. package/dist/clipboard.jsx +120 -0
  22. package/dist/collapsible-BwNoH1At.jsx +106 -0
  23. package/dist/collapsible-Dp8aqjtN.js +118 -0
  24. package/dist/collapsible.d.ts +58 -0
  25. package/dist/collapsible.js +2 -0
  26. package/dist/collapsible.jsx +2 -0
  27. package/dist/collection-By8qgqkx.js +213 -0
  28. package/dist/collection-Mkvw6TyT.jsx +213 -0
  29. package/dist/collection.d.ts +2 -0
  30. package/dist/collection.js +2 -0
  31. package/dist/collection.jsx +2 -0
  32. package/dist/color-picker.d.ts +179 -0
  33. package/dist/color-picker.js +457 -0
  34. package/dist/color-picker.jsx +395 -0
  35. package/dist/combobox.d.ts +128 -0
  36. package/dist/combobox.js +326 -0
  37. package/dist/combobox.jsx +284 -0
  38. package/dist/core-7QKBNp9p.js +485 -0
  39. package/dist/core-7QKBNp9p.jsx +485 -0
  40. package/dist/date-input.d.ts +68 -0
  41. package/dist/date-input.js +178 -0
  42. package/dist/date-input.jsx +163 -0
  43. package/dist/date-picker.d.ts +191 -0
  44. package/dist/date-picker.js +506 -0
  45. package/dist/date-picker.jsx +430 -0
  46. package/dist/dialog.d.ts +77 -0
  47. package/dist/dialog.js +205 -0
  48. package/dist/dialog.jsx +159 -0
  49. package/dist/download-trigger.d.ts +22 -0
  50. package/dist/download-trigger.js +55 -0
  51. package/dist/download-trigger.jsx +51 -0
  52. package/dist/drawer.d.ts +114 -0
  53. package/dist/drawer.js +291 -0
  54. package/dist/drawer.jsx +237 -0
  55. package/dist/editable.d.ts +77 -0
  56. package/dist/editable.js +171 -0
  57. package/dist/editable.jsx +162 -0
  58. package/dist/factory-D2A7xdtl.js +34 -0
  59. package/dist/factory-DRw_slzE.jsx +34 -0
  60. package/dist/factory-wuwfJqbU.d.ts +15 -0
  61. package/dist/field-CQr_Dibp.js +317 -0
  62. package/dist/field-R5jVNdtK.jsx +282 -0
  63. package/dist/field.d.ts +194 -0
  64. package/dist/field.js +2 -0
  65. package/dist/field.jsx +2 -0
  66. package/dist/fieldset-5shfE0Z5.jsx +155 -0
  67. package/dist/fieldset-D5teGLZ9.js +170 -0
  68. package/dist/fieldset.d.ts +98 -0
  69. package/dist/fieldset.js +2 -0
  70. package/dist/fieldset.jsx +2 -0
  71. package/dist/file-upload.d.ts +100 -0
  72. package/dist/file-upload.js +254 -0
  73. package/dist/file-upload.jsx +232 -0
  74. package/dist/floating-panel.d.ts +97 -0
  75. package/dist/floating-panel.js +231 -0
  76. package/dist/floating-panel.jsx +199 -0
  77. package/dist/focus-trap.d.ts +12 -0
  78. package/dist/focus-trap.js +30 -0
  79. package/dist/focus-trap.jsx +26 -0
  80. package/dist/format.d.ts +32 -0
  81. package/dist/format.js +50 -0
  82. package/dist/format.jsx +53 -0
  83. package/dist/frame.d.ts +12 -0
  84. package/dist/frame.js +119 -0
  85. package/dist/frame.jsx +83 -0
  86. package/dist/image-cropper.d.ts +62 -0
  87. package/dist/image-cropper.js +137 -0
  88. package/dist/image-cropper.jsx +130 -0
  89. package/dist/index-B17eqq14.d.ts +32 -0
  90. package/dist/index-BZHmHI7d.d.ts +142 -0
  91. package/dist/index-CANuc1X0.d.ts +81 -0
  92. package/dist/index-CJwZCGOS.d.ts +75 -0
  93. package/dist/index-ClU-Lb8Z.d.ts +23 -0
  94. package/dist/index-J9N2CBHP.d.ts +21 -0
  95. package/dist/index.d.ts +5 -0
  96. package/dist/index.js +5 -0
  97. package/dist/index.jsx +5 -0
  98. package/dist/json-tree-view.d.ts +50 -0
  99. package/dist/json-tree-view.js +330 -0
  100. package/dist/json-tree-view.jsx +201 -0
  101. package/dist/listbox.d.ts +109 -0
  102. package/dist/listbox.js +237 -0
  103. package/dist/listbox.jsx +212 -0
  104. package/dist/marquee.d.ts +57 -0
  105. package/dist/marquee.js +125 -0
  106. package/dist/marquee.jsx +113 -0
  107. package/dist/menu.d.ts +158 -0
  108. package/dist/menu.js +441 -0
  109. package/dist/menu.jsx +362 -0
  110. package/dist/navigation-menu.d.ts +88 -0
  111. package/dist/navigation-menu.js +289 -0
  112. package/dist/navigation-menu.jsx +228 -0
  113. package/dist/number-input.d.ts +72 -0
  114. package/dist/number-input.js +166 -0
  115. package/dist/number-input.jsx +157 -0
  116. package/dist/pagination.d.ts +67 -0
  117. package/dist/pagination.js +131 -0
  118. package/dist/pagination.jsx +124 -0
  119. package/dist/password-input.d.ts +64 -0
  120. package/dist/password-input.js +144 -0
  121. package/dist/password-input.jsx +125 -0
  122. package/dist/pin-input.d.ts +57 -0
  123. package/dist/pin-input.js +138 -0
  124. package/dist/pin-input.jsx +129 -0
  125. package/dist/popover.d.ts +92 -0
  126. package/dist/popover.js +206 -0
  127. package/dist/popover.jsx +174 -0
  128. package/dist/presence-9UGkuyfn.jsx +59 -0
  129. package/dist/presence-CE6lXCu5.js +72 -0
  130. package/dist/presence.d.ts +2 -0
  131. package/dist/presence.js +2 -0
  132. package/dist/presence.jsx +2 -0
  133. package/dist/progress.d.ts +77 -0
  134. package/dist/progress.js +146 -0
  135. package/dist/progress.jsx +137 -0
  136. package/dist/providers-B-Vi5wQ7.js +124 -0
  137. package/dist/providers-CqNHqLpB.jsx +110 -0
  138. package/dist/qr-code.d.ts +57 -0
  139. package/dist/qr-code.js +111 -0
  140. package/dist/qr-code.jsx +104 -0
  141. package/dist/radio-group.d.ts +77 -0
  142. package/dist/radio-group.js +170 -0
  143. package/dist/radio-group.jsx +157 -0
  144. package/dist/rating-group.d.ts +67 -0
  145. package/dist/rating-group.js +142 -0
  146. package/dist/rating-group.jsx +131 -0
  147. package/dist/rolldown-runtime-D7D4PA-g.js +13 -0
  148. package/dist/rolldown-runtime-D7D4PA-g.jsx +13 -0
  149. package/dist/run-if-fn-CjvD7VzQ.js +5 -0
  150. package/dist/run-if-fn-CjvD7VzQ.jsx +5 -0
  151. package/dist/scroll-area.d.ts +61 -0
  152. package/dist/scroll-area.js +119 -0
  153. package/dist/scroll-area.jsx +109 -0
  154. package/dist/segment-group.d.ts +80 -0
  155. package/dist/segment-group.js +166 -0
  156. package/dist/segment-group.jsx +153 -0
  157. package/dist/select.d.ts +132 -0
  158. package/dist/select.js +337 -0
  159. package/dist/select.jsx +283 -0
  160. package/dist/signature-pad.d.ts +67 -0
  161. package/dist/signature-pad.js +159 -0
  162. package/dist/signature-pad.jsx +141 -0
  163. package/dist/slider.d.ts +87 -0
  164. package/dist/slider.js +191 -0
  165. package/dist/slider.jsx +179 -0
  166. package/dist/splitter.d.ts +57 -0
  167. package/dist/splitter.js +126 -0
  168. package/dist/splitter.jsx +116 -0
  169. package/dist/steps.d.ts +100 -0
  170. package/dist/steps.js +199 -0
  171. package/dist/steps.jsx +184 -0
  172. package/dist/swap.d.ts +51 -0
  173. package/dist/swap.js +123 -0
  174. package/dist/swap.jsx +106 -0
  175. package/dist/switch.d.ts +57 -0
  176. package/dist/switch.js +125 -0
  177. package/dist/switch.jsx +116 -0
  178. package/dist/tabs.d.ts +58 -0
  179. package/dist/tabs.js +146 -0
  180. package/dist/tabs.jsx +122 -0
  181. package/dist/tags-input.d.ts +97 -0
  182. package/dist/tags-input.js +228 -0
  183. package/dist/tags-input.jsx +213 -0
  184. package/dist/timer.d.ts +62 -0
  185. package/dist/timer.js +119 -0
  186. package/dist/timer.jsx +110 -0
  187. package/dist/toast.d.ts +60 -0
  188. package/dist/toast.js +120 -0
  189. package/dist/toast.jsx +106 -0
  190. package/dist/toggle-group.d.ts +42 -0
  191. package/dist/toggle-group.js +87 -0
  192. package/dist/toggle-group.jsx +80 -0
  193. package/dist/toggle.d.ts +38 -0
  194. package/dist/toggle.js +73 -0
  195. package/dist/toggle.jsx +61 -0
  196. package/dist/tooltip.d.ts +67 -0
  197. package/dist/tooltip.js +159 -0
  198. package/dist/tooltip.jsx +127 -0
  199. package/dist/tour.d.ts +112 -0
  200. package/dist/tour.js +256 -0
  201. package/dist/tour.jsx +192 -0
  202. package/dist/tree-view-ATyeBPXq.js +290 -0
  203. package/dist/tree-view-CoWx7osT.jsx +265 -0
  204. package/dist/tree-view.d.ts +3 -0
  205. package/dist/tree-view.js +3 -0
  206. package/dist/tree-view.jsx +3 -0
  207. package/package.json +324 -6
@@ -0,0 +1,326 @@
1
+ import { t as __exportAll } from "./rolldown-runtime-D7D4PA-g.js";
2
+ import { a as mergeProps$2, d as createContext$1, i as useMachine, l as createSplitProps, r as normalizeProps, u as composeRefs } from "./core-7QKBNp9p.js";
3
+ import { t as runIfFn } from "./run-if-fn-CjvD7VzQ.js";
4
+ import { t as wire } from "./factory-D2A7xdtl.js";
5
+ import { a as useLocaleContext, l as useEnvironmentContext } from "./providers-B-Vi5wQ7.js";
6
+ import { h as useFieldContext } from "./field-CQr_Dibp.js";
7
+ import { n as useListCollection, o as createListCollection } from "./collection-By8qgqkx.js";
8
+ import { a as splitPresenceProps, i as usePresence, n as usePresenceContext, t as PresenceProvider } from "./presence-CE6lXCu5.js";
9
+ import { Show, createMemo, createUniqueId } from "solid-js";
10
+ import { createComponent, mergeProps as mergeProps$1 } from "solid-js/web";
11
+ import * as combobox from "@wirekyt/dom/machines/combobox";
12
+ import { anatomy } from "@wirekyt/dom/machines/combobox";
13
+ //#region src/components/combobox/use-context.ts
14
+ const [ComboboxProvider, useComboboxContext] = createContext$1({
15
+ hookName: "useComboboxContext",
16
+ providerName: "<ComboboxProvider />"
17
+ });
18
+ //#endregion
19
+ //#region src/components/combobox/clear-trigger.tsx
20
+ const ComboboxClearTrigger = (props) => {
21
+ const combobox = useComboboxContext();
22
+ const mergedProps = mergeProps$2(() => combobox().getClearTriggerProps(), props);
23
+ return createComponent(wire.button, mergedProps);
24
+ };
25
+ //#endregion
26
+ //#region src/components/combobox/content.tsx
27
+ const ComboboxContent = (props) => {
28
+ const api = useComboboxContext();
29
+ const presenceApi = usePresenceContext();
30
+ const mergedProps = mergeProps$2(() => api().getContentProps(), () => presenceApi().presenceProps, props);
31
+ return createComponent(Show, {
32
+ get when() {
33
+ return !presenceApi().unmounted;
34
+ },
35
+ get children() {
36
+ return createComponent(wire.div, mergeProps$1(mergedProps, { ref(r$) {
37
+ var _ref$ = composeRefs(presenceApi().ref, props.ref);
38
+ typeof _ref$ === "function" && _ref$(r$);
39
+ } }));
40
+ }
41
+ });
42
+ };
43
+ //#endregion
44
+ //#region src/components/combobox/anatomy.ts
45
+ const comboboxAnatomy = anatomy.extendWith("empty");
46
+ //#endregion
47
+ //#region src/components/combobox/empty.tsx
48
+ const parts = comboboxAnatomy.build();
49
+ const ComboboxEmpty = (props) => {
50
+ const combobox = useComboboxContext();
51
+ const size = createMemo(() => combobox().collection.size);
52
+ return createComponent(Show, {
53
+ get when() {
54
+ return size() === 0;
55
+ },
56
+ get children() {
57
+ return createComponent(wire.div, mergeProps$1(() => parts.empty.attrs, props, { role: "presentation" }));
58
+ }
59
+ });
60
+ };
61
+ //#endregion
62
+ //#region src/components/combobox/context.tsx
63
+ const ComboboxContext = (props) => props.children(useComboboxContext());
64
+ //#endregion
65
+ //#region src/components/combobox/control.tsx
66
+ const ComboboxControl = (props) => {
67
+ const combobox = useComboboxContext();
68
+ const mergedProps = mergeProps$2(() => combobox().getControlProps(), props);
69
+ return createComponent(wire.div, mergedProps);
70
+ };
71
+ //#endregion
72
+ //#region src/components/combobox/input.tsx
73
+ const ComboboxInput = (props) => {
74
+ const combobox = useComboboxContext();
75
+ const mergedProps = mergeProps$2(() => combobox().getInputProps(), props);
76
+ const field = useFieldContext();
77
+ return createComponent(wire.input, mergeProps$1({ get ["aria-describedby"]() {
78
+ return field?.().ariaDescribedby;
79
+ } }, mergedProps));
80
+ };
81
+ //#endregion
82
+ //#region src/components/combobox/use-combobox-item-props-context.ts
83
+ const [ComboboxItemPropsProvider, useComboboxItemPropsContext] = createContext$1({
84
+ hookName: "useComboboxItemPropsContext",
85
+ providerName: "<ComboboxItemPropsProvider />"
86
+ });
87
+ //#endregion
88
+ //#region src/components/combobox/use-item-context.ts
89
+ const [ComboboxItemProvider, useComboboxItemContext] = createContext$1({
90
+ hookName: "useComboboxItemContext",
91
+ providerName: "<ComboboxItemProvider />"
92
+ });
93
+ //#endregion
94
+ //#region src/components/combobox/item.tsx
95
+ const ComboboxItem = (props) => {
96
+ const [itemProps, localProps] = createSplitProps()(props, ["item", "persistFocus"]);
97
+ const api = useComboboxContext();
98
+ const mergedProps = mergeProps$2(() => api().getItemProps(itemProps), localProps);
99
+ const itemState = createMemo(() => api().getItemState(itemProps));
100
+ return createComponent(ComboboxItemPropsProvider, {
101
+ value: itemProps,
102
+ get children() {
103
+ return createComponent(ComboboxItemProvider, {
104
+ value: itemState,
105
+ get children() {
106
+ return createComponent(wire.div, mergedProps);
107
+ }
108
+ });
109
+ }
110
+ });
111
+ };
112
+ //#endregion
113
+ //#region src/components/combobox/item-context.tsx
114
+ const ComboboxItemContext = (props) => props.children(useComboboxItemContext());
115
+ //#endregion
116
+ //#region src/components/combobox/use-item-group-props-context.ts
117
+ const [ComboboxItemGroupPropsProvider, useComboboxItemGroupPropsContext] = createContext$1({
118
+ hookName: "useComboboxItemGroupPropsContext",
119
+ providerName: "<ComboboxItemGroupPropsProvider />"
120
+ });
121
+ //#endregion
122
+ //#region src/components/combobox/item-group.tsx
123
+ const ComboboxItemGroup = (props) => {
124
+ const [_itemGroupProps, localProps] = createSplitProps()(props, ["id"]);
125
+ const combobox = useComboboxContext();
126
+ const itemGroupProps = mergeProps$2({ id: createUniqueId() }, _itemGroupProps);
127
+ const mergedProps = mergeProps$2(() => combobox().getItemGroupProps(itemGroupProps), localProps);
128
+ return createComponent(ComboboxItemGroupPropsProvider, {
129
+ value: itemGroupProps,
130
+ get children() {
131
+ return createComponent(wire.div, mergedProps);
132
+ }
133
+ });
134
+ };
135
+ //#endregion
136
+ //#region src/components/combobox/item-group-label.tsx
137
+ const ComboboxItemGroupLabel = (props) => {
138
+ const combobox = useComboboxContext();
139
+ const itemGroupProps = useComboboxItemGroupPropsContext();
140
+ const mergedProps = mergeProps$2(() => combobox().getItemGroupLabelProps({ htmlFor: itemGroupProps.id }), props);
141
+ return createComponent(wire.div, mergedProps);
142
+ };
143
+ //#endregion
144
+ //#region src/components/combobox/item-indicator.tsx
145
+ const ComboboxItemIndicator = (props) => {
146
+ const combobox = useComboboxContext();
147
+ const itemProps = useComboboxItemPropsContext();
148
+ const mergedProps = mergeProps$2(() => combobox().getItemIndicatorProps(itemProps), props);
149
+ return createComponent(wire.div, mergedProps);
150
+ };
151
+ //#endregion
152
+ //#region src/components/combobox/item-text.tsx
153
+ const ComboboxItemText = (props) => {
154
+ const api = useComboboxContext();
155
+ const itemProps = useComboboxItemPropsContext();
156
+ const mergedProps = mergeProps$2(() => api().getItemTextProps(itemProps), props);
157
+ return createComponent(wire.span, mergedProps);
158
+ };
159
+ //#endregion
160
+ //#region src/components/combobox/label.tsx
161
+ const ComboboxLabel = (props) => {
162
+ const combobox = useComboboxContext();
163
+ const mergedProps = mergeProps$2(() => combobox().getLabelProps(), props);
164
+ return createComponent(wire.label, mergedProps);
165
+ };
166
+ //#endregion
167
+ //#region src/components/combobox/list.tsx
168
+ const ComboboxList = (props) => {
169
+ const combobox = useComboboxContext();
170
+ const mergedProps = mergeProps$2(() => combobox().getListProps(), props);
171
+ return createComponent(wire.div, mergedProps);
172
+ };
173
+ //#endregion
174
+ //#region src/components/combobox/positioner.tsx
175
+ const ComboboxPositioner = (props) => {
176
+ const api = useComboboxContext();
177
+ const presenceApi = usePresenceContext();
178
+ const mergedProps = mergeProps$2(() => api().getPositionerProps(), props);
179
+ return createComponent(Show, {
180
+ get when() {
181
+ return !presenceApi().unmounted;
182
+ },
183
+ get children() {
184
+ return createComponent(wire.div, mergedProps);
185
+ }
186
+ });
187
+ };
188
+ //#endregion
189
+ //#region src/components/combobox/use.ts
190
+ const useCombobox = (props) => {
191
+ const locale = useLocaleContext();
192
+ const environment = useEnvironmentContext();
193
+ const id = createUniqueId();
194
+ const field = useFieldContext();
195
+ const machineProps = createMemo(() => ({
196
+ id,
197
+ ids: {
198
+ label: field?.().ids.label,
199
+ input: field?.().ids.control
200
+ },
201
+ disabled: field?.().disabled,
202
+ readOnly: field?.().readOnly,
203
+ required: field?.().required,
204
+ invalid: field?.().invalid,
205
+ dir: locale().dir,
206
+ getRootNode: environment().getRootNode,
207
+ ...runIfFn(props)
208
+ }));
209
+ const service = useMachine(combobox.machine, machineProps);
210
+ return createMemo(() => combobox.connect(service, normalizeProps));
211
+ };
212
+ //#endregion
213
+ //#region src/components/combobox/root.tsx
214
+ const ComboboxRoot = (props) => {
215
+ const [presenceProps, comboboxProps] = splitPresenceProps(props);
216
+ const [useComboboxProps, localProps] = createSplitProps()(comboboxProps, [
217
+ "allowCustomValue",
218
+ "alwaysSubmitOnEnter",
219
+ "autoFocus",
220
+ "closeOnSelect",
221
+ "collection",
222
+ "composite",
223
+ "defaultHighlightedValue",
224
+ "defaultInputValue",
225
+ "defaultOpen",
226
+ "defaultValue",
227
+ "disabled",
228
+ "disableLayer",
229
+ "form",
230
+ "highlightedValue",
231
+ "id",
232
+ "ids",
233
+ "inputBehavior",
234
+ "inputValue",
235
+ "invalid",
236
+ "loopFocus",
237
+ "multiple",
238
+ "name",
239
+ "navigate",
240
+ "onFocusOutside",
241
+ "onHighlightChange",
242
+ "onInputValueChange",
243
+ "onInteractOutside",
244
+ "onOpenChange",
245
+ "onPointerDownOutside",
246
+ "onValueChange",
247
+ "onSelect",
248
+ "open",
249
+ "openOnChange",
250
+ "openOnClick",
251
+ "openOnKeyPress",
252
+ "placeholder",
253
+ "positioning",
254
+ "readOnly",
255
+ "required",
256
+ "scrollToIndexFn",
257
+ "selectionBehavior",
258
+ "translations",
259
+ "value"
260
+ ]);
261
+ const api = useCombobox(useComboboxProps);
262
+ const apiPresence = usePresence(mergeProps$2(presenceProps, () => ({ present: api().open })));
263
+ const mergedProps = mergeProps$2(() => api().getRootProps(), localProps);
264
+ return createComponent(ComboboxProvider, {
265
+ value: api,
266
+ get children() {
267
+ return createComponent(PresenceProvider, {
268
+ value: apiPresence,
269
+ get children() {
270
+ return createComponent(wire.div, mergedProps);
271
+ }
272
+ });
273
+ }
274
+ });
275
+ };
276
+ //#endregion
277
+ //#region src/components/combobox/root-provider.tsx
278
+ const ComboboxRootProvider = (props) => {
279
+ const [presenceProps, comboboxProps] = splitPresenceProps(props);
280
+ const [{ value: combobox }, localProps] = createSplitProps()(comboboxProps, ["value"]);
281
+ const apiPresence = usePresence(mergeProps$2(presenceProps, () => ({ present: combobox().open })));
282
+ const mergedProps = mergeProps$2(() => combobox().getRootProps(), localProps);
283
+ return createComponent(ComboboxProvider, {
284
+ value: combobox,
285
+ get children() {
286
+ return createComponent(PresenceProvider, {
287
+ value: apiPresence,
288
+ get children() {
289
+ return createComponent(wire.div, mergedProps);
290
+ }
291
+ });
292
+ }
293
+ });
294
+ };
295
+ //#endregion
296
+ //#region src/components/combobox/trigger.tsx
297
+ const ComboboxTrigger = (props) => {
298
+ const [triggerProps, localProps] = createSplitProps()(props, ["focusable"]);
299
+ const combobox = useComboboxContext();
300
+ const mergedProps = mergeProps$2(() => combobox().getTriggerProps(triggerProps), localProps);
301
+ return createComponent(wire.button, mergedProps);
302
+ };
303
+ //#endregion
304
+ //#region src/components/combobox/combobox.ts
305
+ var combobox_exports = /* @__PURE__ */ __exportAll({
306
+ ClearTrigger: () => ComboboxClearTrigger,
307
+ Content: () => ComboboxContent,
308
+ Context: () => ComboboxContext,
309
+ Control: () => ComboboxControl,
310
+ Empty: () => ComboboxEmpty,
311
+ Input: () => ComboboxInput,
312
+ Item: () => ComboboxItem,
313
+ ItemContext: () => ComboboxItemContext,
314
+ ItemGroup: () => ComboboxItemGroup,
315
+ ItemGroupLabel: () => ComboboxItemGroupLabel,
316
+ ItemIndicator: () => ComboboxItemIndicator,
317
+ ItemText: () => ComboboxItemText,
318
+ Label: () => ComboboxLabel,
319
+ List: () => ComboboxList,
320
+ Positioner: () => ComboboxPositioner,
321
+ Root: () => ComboboxRoot,
322
+ RootProvider: () => ComboboxRootProvider,
323
+ Trigger: () => ComboboxTrigger
324
+ });
325
+ //#endregion
326
+ export { combobox_exports as Combobox, ComboboxClearTrigger, ComboboxContent, ComboboxContext, ComboboxControl, ComboboxEmpty, ComboboxInput, ComboboxItem, ComboboxItemContext, ComboboxItemGroup, ComboboxItemGroupLabel, ComboboxItemIndicator, ComboboxItemText, ComboboxLabel, ComboboxList, ComboboxPositioner, ComboboxRoot, ComboboxRootProvider, ComboboxTrigger, comboboxAnatomy, createListCollection, useCombobox, useComboboxContext, useComboboxItemContext, useListCollection };
@@ -0,0 +1,284 @@
1
+ import { t as __exportAll } from "./rolldown-runtime-D7D4PA-g.jsx";
2
+ import { a as mergeProps$1, d as createContext$1, i as useMachine, l as createSplitProps, r as normalizeProps, u as composeRefs } from "./core-7QKBNp9p.jsx";
3
+ import { t as runIfFn } from "./run-if-fn-CjvD7VzQ.jsx";
4
+ import { t as wire } from "./factory-DRw_slzE.jsx";
5
+ import { a as useLocaleContext, l as useEnvironmentContext } from "./providers-CqNHqLpB.jsx";
6
+ import { h as useFieldContext } from "./field-R5jVNdtK.jsx";
7
+ import { n as useListCollection, o as createListCollection } from "./collection-Mkvw6TyT.jsx";
8
+ import { a as splitPresenceProps, i as usePresence, n as usePresenceContext, t as PresenceProvider } from "./presence-9UGkuyfn.jsx";
9
+ import { Show, createMemo, createUniqueId } from "solid-js";
10
+ import * as combobox from "@wirekyt/dom/machines/combobox";
11
+ import { anatomy } from "@wirekyt/dom/machines/combobox";
12
+ //#region src/components/combobox/use-context.ts
13
+ const [ComboboxProvider, useComboboxContext] = createContext$1({
14
+ hookName: "useComboboxContext",
15
+ providerName: "<ComboboxProvider />"
16
+ });
17
+ //#endregion
18
+ //#region src/components/combobox/clear-trigger.tsx
19
+ const ComboboxClearTrigger = (props) => {
20
+ const combobox = useComboboxContext();
21
+ const mergedProps = mergeProps$1(() => combobox().getClearTriggerProps(), props);
22
+ return <wire.button {...mergedProps} />;
23
+ };
24
+ //#endregion
25
+ //#region src/components/combobox/content.tsx
26
+ const ComboboxContent = (props) => {
27
+ const api = useComboboxContext();
28
+ const presenceApi = usePresenceContext();
29
+ const mergedProps = mergeProps$1(() => api().getContentProps(), () => presenceApi().presenceProps, props);
30
+ return <Show when={!presenceApi().unmounted}>
31
+ <wire.div {...mergedProps} ref={composeRefs(presenceApi().ref, props.ref)} />
32
+ </Show>;
33
+ };
34
+ //#endregion
35
+ //#region src/components/combobox/anatomy.ts
36
+ const comboboxAnatomy = anatomy.extendWith("empty");
37
+ //#endregion
38
+ //#region src/components/combobox/empty.tsx
39
+ const parts = comboboxAnatomy.build();
40
+ const ComboboxEmpty = (props) => {
41
+ const combobox = useComboboxContext();
42
+ const size = createMemo(() => combobox().collection.size);
43
+ return <Show when={size() === 0}>
44
+ <wire.div {...parts.empty.attrs} {...props} role="presentation" />
45
+ </Show>;
46
+ };
47
+ //#endregion
48
+ //#region src/components/combobox/context.tsx
49
+ const ComboboxContext = (props) => props.children(useComboboxContext());
50
+ //#endregion
51
+ //#region src/components/combobox/control.tsx
52
+ const ComboboxControl = (props) => {
53
+ const combobox = useComboboxContext();
54
+ const mergedProps = mergeProps$1(() => combobox().getControlProps(), props);
55
+ return <wire.div {...mergedProps} />;
56
+ };
57
+ //#endregion
58
+ //#region src/components/combobox/input.tsx
59
+ const ComboboxInput = (props) => {
60
+ const combobox = useComboboxContext();
61
+ const mergedProps = mergeProps$1(() => combobox().getInputProps(), props);
62
+ const field = useFieldContext();
63
+ return <wire.input aria-describedby={field?.().ariaDescribedby} {...mergedProps} />;
64
+ };
65
+ //#endregion
66
+ //#region src/components/combobox/use-combobox-item-props-context.ts
67
+ const [ComboboxItemPropsProvider, useComboboxItemPropsContext] = createContext$1({
68
+ hookName: "useComboboxItemPropsContext",
69
+ providerName: "<ComboboxItemPropsProvider />"
70
+ });
71
+ //#endregion
72
+ //#region src/components/combobox/use-item-context.ts
73
+ const [ComboboxItemProvider, useComboboxItemContext] = createContext$1({
74
+ hookName: "useComboboxItemContext",
75
+ providerName: "<ComboboxItemProvider />"
76
+ });
77
+ //#endregion
78
+ //#region src/components/combobox/item.tsx
79
+ const ComboboxItem = (props) => {
80
+ const [itemProps, localProps] = createSplitProps()(props, ["item", "persistFocus"]);
81
+ const api = useComboboxContext();
82
+ const mergedProps = mergeProps$1(() => api().getItemProps(itemProps), localProps);
83
+ const itemState = createMemo(() => api().getItemState(itemProps));
84
+ return <ComboboxItemPropsProvider value={itemProps}>
85
+ <ComboboxItemProvider value={itemState}>
86
+ <wire.div {...mergedProps} />
87
+ </ComboboxItemProvider>
88
+ </ComboboxItemPropsProvider>;
89
+ };
90
+ //#endregion
91
+ //#region src/components/combobox/item-context.tsx
92
+ const ComboboxItemContext = (props) => props.children(useComboboxItemContext());
93
+ //#endregion
94
+ //#region src/components/combobox/use-item-group-props-context.ts
95
+ const [ComboboxItemGroupPropsProvider, useComboboxItemGroupPropsContext] = createContext$1({
96
+ hookName: "useComboboxItemGroupPropsContext",
97
+ providerName: "<ComboboxItemGroupPropsProvider />"
98
+ });
99
+ //#endregion
100
+ //#region src/components/combobox/item-group.tsx
101
+ const ComboboxItemGroup = (props) => {
102
+ const [_itemGroupProps, localProps] = createSplitProps()(props, ["id"]);
103
+ const combobox = useComboboxContext();
104
+ const itemGroupProps = mergeProps$1({ id: createUniqueId() }, _itemGroupProps);
105
+ const mergedProps = mergeProps$1(() => combobox().getItemGroupProps(itemGroupProps), localProps);
106
+ return <ComboboxItemGroupPropsProvider value={itemGroupProps}>
107
+ <wire.div {...mergedProps} />
108
+ </ComboboxItemGroupPropsProvider>;
109
+ };
110
+ //#endregion
111
+ //#region src/components/combobox/item-group-label.tsx
112
+ const ComboboxItemGroupLabel = (props) => {
113
+ const combobox = useComboboxContext();
114
+ const itemGroupProps = useComboboxItemGroupPropsContext();
115
+ const mergedProps = mergeProps$1(() => combobox().getItemGroupLabelProps({ htmlFor: itemGroupProps.id }), props);
116
+ return <wire.div {...mergedProps} />;
117
+ };
118
+ //#endregion
119
+ //#region src/components/combobox/item-indicator.tsx
120
+ const ComboboxItemIndicator = (props) => {
121
+ const combobox = useComboboxContext();
122
+ const itemProps = useComboboxItemPropsContext();
123
+ const mergedProps = mergeProps$1(() => combobox().getItemIndicatorProps(itemProps), props);
124
+ return <wire.div {...mergedProps} />;
125
+ };
126
+ //#endregion
127
+ //#region src/components/combobox/item-text.tsx
128
+ const ComboboxItemText = (props) => {
129
+ const api = useComboboxContext();
130
+ const itemProps = useComboboxItemPropsContext();
131
+ const mergedProps = mergeProps$1(() => api().getItemTextProps(itemProps), props);
132
+ return <wire.span {...mergedProps} />;
133
+ };
134
+ //#endregion
135
+ //#region src/components/combobox/label.tsx
136
+ const ComboboxLabel = (props) => {
137
+ const combobox = useComboboxContext();
138
+ const mergedProps = mergeProps$1(() => combobox().getLabelProps(), props);
139
+ return <wire.label {...mergedProps} />;
140
+ };
141
+ //#endregion
142
+ //#region src/components/combobox/list.tsx
143
+ const ComboboxList = (props) => {
144
+ const combobox = useComboboxContext();
145
+ const mergedProps = mergeProps$1(() => combobox().getListProps(), props);
146
+ return <wire.div {...mergedProps} />;
147
+ };
148
+ //#endregion
149
+ //#region src/components/combobox/positioner.tsx
150
+ const ComboboxPositioner = (props) => {
151
+ const api = useComboboxContext();
152
+ const presenceApi = usePresenceContext();
153
+ const mergedProps = mergeProps$1(() => api().getPositionerProps(), props);
154
+ return <Show when={!presenceApi().unmounted}>
155
+ <wire.div {...mergedProps} />
156
+ </Show>;
157
+ };
158
+ //#endregion
159
+ //#region src/components/combobox/use.ts
160
+ const useCombobox = (props) => {
161
+ const locale = useLocaleContext();
162
+ const environment = useEnvironmentContext();
163
+ const id = createUniqueId();
164
+ const field = useFieldContext();
165
+ const machineProps = createMemo(() => ({
166
+ id,
167
+ ids: {
168
+ label: field?.().ids.label,
169
+ input: field?.().ids.control
170
+ },
171
+ disabled: field?.().disabled,
172
+ readOnly: field?.().readOnly,
173
+ required: field?.().required,
174
+ invalid: field?.().invalid,
175
+ dir: locale().dir,
176
+ getRootNode: environment().getRootNode,
177
+ ...runIfFn(props)
178
+ }));
179
+ const service = useMachine(combobox.machine, machineProps);
180
+ return createMemo(() => combobox.connect(service, normalizeProps));
181
+ };
182
+ //#endregion
183
+ //#region src/components/combobox/root.tsx
184
+ const ComboboxRoot = (props) => {
185
+ const [presenceProps, comboboxProps] = splitPresenceProps(props);
186
+ const [useComboboxProps, localProps] = createSplitProps()(comboboxProps, [
187
+ "allowCustomValue",
188
+ "alwaysSubmitOnEnter",
189
+ "autoFocus",
190
+ "closeOnSelect",
191
+ "collection",
192
+ "composite",
193
+ "defaultHighlightedValue",
194
+ "defaultInputValue",
195
+ "defaultOpen",
196
+ "defaultValue",
197
+ "disabled",
198
+ "disableLayer",
199
+ "form",
200
+ "highlightedValue",
201
+ "id",
202
+ "ids",
203
+ "inputBehavior",
204
+ "inputValue",
205
+ "invalid",
206
+ "loopFocus",
207
+ "multiple",
208
+ "name",
209
+ "navigate",
210
+ "onFocusOutside",
211
+ "onHighlightChange",
212
+ "onInputValueChange",
213
+ "onInteractOutside",
214
+ "onOpenChange",
215
+ "onPointerDownOutside",
216
+ "onValueChange",
217
+ "onSelect",
218
+ "open",
219
+ "openOnChange",
220
+ "openOnClick",
221
+ "openOnKeyPress",
222
+ "placeholder",
223
+ "positioning",
224
+ "readOnly",
225
+ "required",
226
+ "scrollToIndexFn",
227
+ "selectionBehavior",
228
+ "translations",
229
+ "value"
230
+ ]);
231
+ const api = useCombobox(useComboboxProps);
232
+ const apiPresence = usePresence(mergeProps$1(presenceProps, () => ({ present: api().open })));
233
+ const mergedProps = mergeProps$1(() => api().getRootProps(), localProps);
234
+ return <ComboboxProvider value={api}>
235
+ <PresenceProvider value={apiPresence}>
236
+ <wire.div {...mergedProps} />
237
+ </PresenceProvider>
238
+ </ComboboxProvider>;
239
+ };
240
+ //#endregion
241
+ //#region src/components/combobox/root-provider.tsx
242
+ const ComboboxRootProvider = (props) => {
243
+ const [presenceProps, comboboxProps] = splitPresenceProps(props);
244
+ const [{ value: combobox }, localProps] = createSplitProps()(comboboxProps, ["value"]);
245
+ const apiPresence = usePresence(mergeProps$1(presenceProps, () => ({ present: combobox().open })));
246
+ const mergedProps = mergeProps$1(() => combobox().getRootProps(), localProps);
247
+ return <ComboboxProvider value={combobox}>
248
+ <PresenceProvider value={apiPresence}>
249
+ <wire.div {...mergedProps} />
250
+ </PresenceProvider>
251
+ </ComboboxProvider>;
252
+ };
253
+ //#endregion
254
+ //#region src/components/combobox/trigger.tsx
255
+ const ComboboxTrigger = (props) => {
256
+ const [triggerProps, localProps] = createSplitProps()(props, ["focusable"]);
257
+ const combobox = useComboboxContext();
258
+ const mergedProps = mergeProps$1(() => combobox().getTriggerProps(triggerProps), localProps);
259
+ return <wire.button {...mergedProps} />;
260
+ };
261
+ //#endregion
262
+ //#region src/components/combobox/combobox.ts
263
+ var combobox_exports = /* @__PURE__ */ __exportAll({
264
+ ClearTrigger: () => ComboboxClearTrigger,
265
+ Content: () => ComboboxContent,
266
+ Context: () => ComboboxContext,
267
+ Control: () => ComboboxControl,
268
+ Empty: () => ComboboxEmpty,
269
+ Input: () => ComboboxInput,
270
+ Item: () => ComboboxItem,
271
+ ItemContext: () => ComboboxItemContext,
272
+ ItemGroup: () => ComboboxItemGroup,
273
+ ItemGroupLabel: () => ComboboxItemGroupLabel,
274
+ ItemIndicator: () => ComboboxItemIndicator,
275
+ ItemText: () => ComboboxItemText,
276
+ Label: () => ComboboxLabel,
277
+ List: () => ComboboxList,
278
+ Positioner: () => ComboboxPositioner,
279
+ Root: () => ComboboxRoot,
280
+ RootProvider: () => ComboboxRootProvider,
281
+ Trigger: () => ComboboxTrigger
282
+ });
283
+ //#endregion
284
+ export { combobox_exports as Combobox, ComboboxClearTrigger, ComboboxContent, ComboboxContext, ComboboxControl, ComboboxEmpty, ComboboxInput, ComboboxItem, ComboboxItemContext, ComboboxItemGroup, ComboboxItemGroupLabel, ComboboxItemIndicator, ComboboxItemText, ComboboxLabel, ComboboxList, ComboboxPositioner, ComboboxRoot, ComboboxRootProvider, ComboboxTrigger, comboboxAnatomy, createListCollection, useCombobox, useComboboxContext, useComboboxItemContext, useListCollection };