@sprawlify/react 0.0.7 → 0.0.9

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 (227) hide show
  1. package/dist/chunk-BYnRvbsk.cjs +53 -0
  2. package/dist/{collapsible-D5kle6Bc.cjs → collapsible-aFKYmVbP.cjs} +10 -9
  3. package/dist/{collapsible-B06GGGE7.mjs → collapsible-vqmKK3px.mjs} +7 -7
  4. package/dist/{collection-DEsp9z6X.mjs → collection-BYYMj_V8.mjs} +2 -2
  5. package/dist/{collection-BKabYqpE.cjs → collection-DGEUORi5.cjs} +4 -3
  6. package/dist/components/accordion/index.cjs +13 -11
  7. package/dist/components/accordion/index.d.cts +11 -11
  8. package/dist/components/accordion/index.d.mts +11 -11
  9. package/dist/components/accordion/index.mjs +10 -9
  10. package/dist/components/angle-slider/index.cjs +11 -9
  11. package/dist/components/angle-slider/index.d.cts +13 -13
  12. package/dist/components/angle-slider/index.d.mts +13 -13
  13. package/dist/components/angle-slider/index.mjs +8 -7
  14. package/dist/components/avatar/index.cjs +11 -9
  15. package/dist/components/avatar/index.d.cts +8 -8
  16. package/dist/components/avatar/index.d.mts +8 -8
  17. package/dist/components/avatar/index.mjs +8 -7
  18. package/dist/components/bottom-sheet/index.cjs +17 -14
  19. package/dist/components/bottom-sheet/index.d.cts +15 -15
  20. package/dist/components/bottom-sheet/index.d.mts +13 -13
  21. package/dist/components/bottom-sheet/index.mjs +12 -10
  22. package/dist/components/carousel/index.cjs +11 -9
  23. package/dist/components/carousel/index.d.cts +18 -18
  24. package/dist/components/carousel/index.d.mts +18 -18
  25. package/dist/components/carousel/index.mjs +8 -7
  26. package/dist/components/checkbox/index.cjs +17 -14
  27. package/dist/components/checkbox/index.d.cts +14 -14
  28. package/dist/components/checkbox/index.d.mts +14 -14
  29. package/dist/components/checkbox/index.mjs +13 -11
  30. package/dist/components/client-only/index.cjs +1 -1
  31. package/dist/components/clipboard/index.cjs +8 -7
  32. package/dist/components/clipboard/index.d.cts +12 -12
  33. package/dist/components/clipboard/index.d.mts +12 -12
  34. package/dist/components/clipboard/index.mjs +6 -6
  35. package/dist/components/collapsible/index.cjs +8 -6
  36. package/dist/components/collapsible/index.d.cts +10 -10
  37. package/dist/components/collapsible/index.d.mts +10 -10
  38. package/dist/components/collapsible/index.mjs +7 -6
  39. package/dist/components/collection/index.cjs +3 -3
  40. package/dist/components/collection/index.d.cts +1 -1
  41. package/dist/components/collection/index.d.mts +1 -1
  42. package/dist/components/collection/index.mjs +3 -3
  43. package/dist/components/color-picker/index.cjs +19 -15
  44. package/dist/components/color-picker/index.d.cts +35 -35
  45. package/dist/components/color-picker/index.d.mts +36 -36
  46. package/dist/components/color-picker/index.mjs +14 -11
  47. package/dist/components/combobox/index.cjs +19 -15
  48. package/dist/components/combobox/index.d.cts +22 -22
  49. package/dist/components/combobox/index.d.mts +23 -23
  50. package/dist/components/combobox/index.mjs +15 -12
  51. package/dist/components/date-picker/index.cjs +567 -0
  52. package/dist/components/date-picker/index.d.cts +164 -0
  53. package/dist/components/date-picker/index.d.mts +165 -0
  54. package/dist/components/date-picker/index.mjs +526 -0
  55. package/dist/components/dialog/index.cjs +211 -0
  56. package/dist/components/dialog/index.d.cts +80 -0
  57. package/dist/components/dialog/index.d.mts +81 -0
  58. package/dist/components/dialog/index.mjs +187 -0
  59. package/dist/components/download-trigger/index.cjs +43 -0
  60. package/dist/components/download-trigger/index.d.cts +16 -0
  61. package/dist/components/download-trigger/index.d.mts +16 -0
  62. package/dist/components/download-trigger/index.mjs +42 -0
  63. package/dist/components/editable/index.cjs +246 -0
  64. package/dist/components/editable/index.d.cts +79 -0
  65. package/dist/components/editable/index.d.mts +79 -0
  66. package/dist/components/editable/index.mjs +221 -0
  67. package/dist/components/field/index.cjs +9 -7
  68. package/dist/components/field/index.d.cts +12 -12
  69. package/dist/components/field/index.d.mts +14 -14
  70. package/dist/components/field/index.mjs +9 -7
  71. package/dist/components/fieldset/index.cjs +10 -8
  72. package/dist/components/fieldset/index.d.cts +10 -10
  73. package/dist/components/fieldset/index.d.mts +10 -10
  74. package/dist/components/fieldset/index.mjs +9 -7
  75. package/dist/components/file-upload/index.cjs +351 -0
  76. package/dist/components/file-upload/index.d.cts +102 -0
  77. package/dist/components/file-upload/index.d.mts +102 -0
  78. package/dist/components/file-upload/index.mjs +322 -0
  79. package/dist/components/floating-panel/index.cjs +287 -0
  80. package/dist/components/floating-panel/index.d.cts +100 -0
  81. package/dist/components/floating-panel/index.d.mts +101 -0
  82. package/dist/components/floating-panel/index.mjs +259 -0
  83. package/dist/components/focus-trap/index.cjs +36 -0
  84. package/dist/components/focus-trap/index.d.cts +14 -0
  85. package/dist/components/focus-trap/index.d.mts +14 -0
  86. package/dist/components/focus-trap/index.mjs +35 -0
  87. package/dist/components/format/index.cjs +57 -0
  88. package/dist/components/format/index.d.cts +36 -0
  89. package/dist/components/format/index.d.mts +36 -0
  90. package/dist/components/format/index.mjs +49 -0
  91. package/dist/components/frame/index.cjs +90 -0
  92. package/dist/components/frame/index.d.cts +13 -0
  93. package/dist/components/frame/index.d.mts +13 -0
  94. package/dist/components/frame/index.mjs +89 -0
  95. package/dist/components/highlight/index.cjs +2 -2
  96. package/dist/components/highlight/index.d.cts +3 -3
  97. package/dist/components/highlight/index.d.mts +3 -3
  98. package/dist/components/highlight/index.mjs +1 -1
  99. package/dist/components/hover-card/index.cjs +165 -0
  100. package/dist/components/hover-card/index.d.cts +70 -0
  101. package/dist/components/hover-card/index.d.mts +71 -0
  102. package/dist/components/hover-card/index.mjs +143 -0
  103. package/dist/components/image-cropper/index.cjs +197 -0
  104. package/dist/components/image-cropper/index.d.cts +64 -0
  105. package/dist/components/image-cropper/index.d.mts +64 -0
  106. package/dist/components/image-cropper/index.mjs +175 -0
  107. package/dist/components/json-tree-view/index.cjs +246 -0
  108. package/dist/components/json-tree-view/index.d.cts +43 -0
  109. package/dist/components/json-tree-view/index.d.mts +48 -0
  110. package/dist/components/json-tree-view/index.mjs +237 -0
  111. package/dist/components/listbox/index.cjs +314 -0
  112. package/dist/components/listbox/index.d.cts +110 -0
  113. package/dist/components/listbox/index.d.mts +110 -0
  114. package/dist/components/listbox/index.mjs +289 -0
  115. package/dist/components/marquee/index.cjs +176 -0
  116. package/dist/components/marquee/index.d.cts +61 -0
  117. package/dist/components/marquee/index.d.mts +61 -0
  118. package/dist/components/marquee/index.mjs +155 -0
  119. package/dist/components/menu/index.cjs +548 -0
  120. package/dist/components/menu/index.d.cts +159 -0
  121. package/dist/components/menu/index.d.mts +162 -0
  122. package/dist/components/menu/index.mjs +512 -0
  123. package/dist/components/navigation-menu/index.cjs +339 -0
  124. package/dist/components/navigation-menu/index.d.cts +90 -0
  125. package/dist/components/navigation-menu/index.d.mts +90 -0
  126. package/dist/components/navigation-menu/index.mjs +312 -0
  127. package/dist/components/number-input/index.cjs +237 -0
  128. package/dist/components/number-input/index.d.cts +74 -0
  129. package/dist/components/number-input/index.d.mts +74 -0
  130. package/dist/components/number-input/index.mjs +213 -0
  131. package/dist/components/pagination/index.cjs +197 -0
  132. package/dist/components/pagination/index.d.cts +69 -0
  133. package/dist/components/pagination/index.d.mts +69 -0
  134. package/dist/components/pagination/index.mjs +174 -0
  135. package/dist/components/password-input/index.cjs +193 -0
  136. package/dist/components/password-input/index.d.cts +66 -0
  137. package/dist/components/password-input/index.d.mts +66 -0
  138. package/dist/components/password-input/index.mjs +171 -0
  139. package/dist/components/pin-input/index.cjs +192 -0
  140. package/dist/components/pin-input/index.d.cts +59 -0
  141. package/dist/components/pin-input/index.d.mts +59 -0
  142. package/dist/components/pin-input/index.mjs +171 -0
  143. package/dist/components/popover/index.cjs +237 -0
  144. package/dist/components/popover/index.d.cts +95 -0
  145. package/dist/components/popover/index.d.mts +96 -0
  146. package/dist/components/popover/index.mjs +210 -0
  147. package/dist/components/portal/index.cjs +6 -31
  148. package/dist/components/portal/index.d.cts +2 -2
  149. package/dist/components/portal/index.d.mts +2 -2
  150. package/dist/components/portal/index.mjs +5 -29
  151. package/dist/components/presence/index.cjs +5 -5
  152. package/dist/components/presence/index.d.cts +1 -1
  153. package/dist/components/presence/index.d.mts +3 -3
  154. package/dist/components/presence/index.mjs +5 -5
  155. package/dist/components/select/index.cjs +19 -15
  156. package/dist/components/select/index.d.cts +21 -21
  157. package/dist/components/select/index.d.mts +22 -22
  158. package/dist/components/select/index.mjs +15 -12
  159. package/dist/components/tree-view/index.cjs +51 -0
  160. package/dist/components/tree-view/index.d.cts +3 -0
  161. package/dist/components/tree-view/index.d.mts +6 -0
  162. package/dist/components/tree-view/index.mjs +13 -0
  163. package/dist/compose-refs-C5QNDywq.cjs +22 -0
  164. package/dist/compose-refs-Cl5LpASY.mjs +16 -0
  165. package/dist/{core-CPLjF6nm.cjs → core-DCWyxy9D.cjs} +2 -53
  166. package/dist/{create-context-D6DyFRSf.cjs → create-context-CQ4U0lLj.cjs} +1 -1
  167. package/dist/{environment-BXkWNF2O.mjs → environment-Cc02I6aF.mjs} +1 -1
  168. package/dist/{environment-DLPiALpf.cjs → environment-CvilmfQt.cjs} +2 -2
  169. package/dist/{factory-DQlmCPH2.mjs → factory-7ydMApfi.mjs} +2 -16
  170. package/dist/{factory-CDX-oCN5.cjs → factory-C166evrS.cjs} +3 -23
  171. package/dist/{field-CGCTFCx2.mjs → field-BXY6su53.mjs} +9 -7
  172. package/dist/{field-CXhpW6zO.cjs → field-C-57Gj2E.cjs} +12 -10
  173. package/dist/{fieldset-CuSSYZxV.cjs → fieldset-B-MkM2Ms.cjs} +15 -13
  174. package/dist/{fieldset-poJ8RDvB.mjs → fieldset-BeHm9oxe.mjs} +8 -6
  175. package/dist/{index-DtdZfcpz.d.mts → index-BLd57Y0z.d.mts} +3 -3
  176. package/dist/index-BcXWsxRa.d.mts +40 -0
  177. package/dist/{index-BUN9wyVM.d.mts → index-Bkxp7VrU.d.mts} +7 -7
  178. package/dist/index-Cquz7y70.d.cts +52 -0
  179. package/dist/index-DTzLUoop.d.cts +150 -0
  180. package/dist/{index-DqRXPiW_.d.cts → index-aYGfRRLA.d.cts} +7 -7
  181. package/dist/index-wlpTZGhs.d.mts +150 -0
  182. package/dist/index.cjs +12 -10
  183. package/dist/index.d.cts +6 -56
  184. package/dist/index.d.mts +6 -44
  185. package/dist/index.mjs +7 -6
  186. package/dist/{providers-Bk3ALTxZ.cjs → locale-BcnWD1Hf.cjs} +2 -2
  187. package/dist/{providers-CyTYcOU1.mjs → locale-D4LX0eEq.mjs} +1 -1
  188. package/dist/{normalize-props-sqcs77GC.d.cts → normalize-props-Dw0EepzR.d.cts} +3 -3
  189. package/dist/portal-BOhFScBS.mjs +29 -0
  190. package/dist/portal-DRyJqgA1.cjs +35 -0
  191. package/dist/{presence-2A4loEJY.mjs → presence-C9BcvdTf.mjs} +6 -5
  192. package/dist/{presence-BX1tNsGA.cjs → presence-CPov8wyU.cjs} +9 -7
  193. package/dist/providers-BNAArubQ.cjs +0 -0
  194. package/dist/providers-CoJceYkV.mjs +1 -0
  195. package/dist/{render-strategy-D3w8btTD.mjs → render-strategy-BgIBKraZ.mjs} +2 -2
  196. package/dist/{render-strategy-k1JmEGnq.cjs → render-strategy-BywM_IvB.cjs} +2 -2
  197. package/dist/tree-view-CzJvwlYQ.mjs +365 -0
  198. package/dist/tree-view-DsOPEocd.cjs +509 -0
  199. package/dist/{types-FLvjyw__.d.mts → types-CrwpJrFp.d.mts} +2 -1
  200. package/dist/{types-DYWV3uAj.d.cts → types-DcUAwTQC.d.cts} +2 -1
  201. package/dist/{use-event-CGMgV6xB.cjs → use-event-CLH8zHoJ.cjs} +1 -1
  202. package/dist/use-fieldset-context-6GRSrrlt.mjs +12 -0
  203. package/dist/{use-safe-layout-effect-vuYaDIpT.cjs → use-fieldset-context-CCQLmNLL.cjs} +1 -13
  204. package/dist/use-safe-layout-effect-C2GgvNT3.cjs +13 -0
  205. package/dist/use-safe-layout-effect-DPn_9-dD.mjs +7 -0
  206. package/dist/utils/index.cjs +3 -3
  207. package/dist/utils/index.d.cts +1 -1
  208. package/dist/utils/index.d.mts +1 -1
  209. package/dist/utils/index.mjs +2 -2
  210. package/package.json +222 -2
  211. package/dist/use-safe-layout-effect-BlOhFUAp.mjs +0 -17
  212. /package/dist/{chunk-DLP0tNsH.mjs → chunk-BU8PiJgx.mjs} +0 -0
  213. /package/dist/{core-C0F-4KYH.mjs → core-79NSyZp-.mjs} +0 -0
  214. /package/dist/{create-context-CdjrBhu7.mjs → create-context-DbhrVE2B.mjs} +0 -0
  215. /package/dist/{create-split-props-BJQdOyld.mjs → create-split-props-BJdRM9I_.mjs} +0 -0
  216. /package/dist/{create-split-props-CSkzaUOy.cjs → create-split-props-Dp4TWOyM.cjs} +0 -0
  217. /package/dist/{factory-BbbIuDqa.d.mts → factory-DaVlp4Ba.d.mts} +0 -0
  218. /package/dist/{factory-DaNWFLLN.d.cts → factory-fcFI3pbG.d.cts} +0 -0
  219. /package/dist/{index-BwTxN5vG.d.mts → index-BoLg0FWF.d.mts} +0 -0
  220. /package/dist/{index-DsZldSch.d.cts → index-CReeoTjv.d.cts} +0 -0
  221. /package/dist/{index-Dhthtdz_.d.mts → index-DPoOdvOg.d.mts} +0 -0
  222. /package/dist/{index-zOmANnUL.d.cts → index-r8rv70-L.d.cts} +0 -0
  223. /package/dist/{render-strategy-GetMScNK.d.mts → render-strategy-CRwPcG33.d.mts} +0 -0
  224. /package/dist/{render-strategy-CdpAg9jb.d.cts → render-strategy-M8NkD01w.d.cts} +0 -0
  225. /package/dist/{use-event-BcyNH29h.mjs → use-event-B4e6iJDK.mjs} +0 -0
  226. /package/dist/{utils-DflO0-3U.mjs → utils-BQJFlkDE.mjs} +0 -0
  227. /package/dist/{utils-Cb5K29pi.cjs → utils-B_Ojepvp.cjs} +0 -0
@@ -0,0 +1,322 @@
1
+ import { t as __export } from "../../chunk-BU8PiJgx.mjs";
2
+ import { i as useMachine, r as normalizeProps, t as mergeProps } from "../../core-79NSyZp-.mjs";
3
+ import { t as createContext$1 } from "../../create-context-DbhrVE2B.mjs";
4
+ import { n as useEnvironmentContext } from "../../environment-Cc02I6aF.mjs";
5
+ import { i as useLocaleContext } from "../../locale-D4LX0eEq.mjs";
6
+ import "../../providers-CoJceYkV.mjs";
7
+ import { n as sprawlify } from "../../factory-7ydMApfi.mjs";
8
+ import { t as createSplitProps } from "../../create-split-props-BJdRM9I_.mjs";
9
+ import "../../use-fieldset-context-6GRSrrlt.mjs";
10
+ import "../../use-safe-layout-effect-DPn_9-dD.mjs";
11
+ import { m as useFieldContext } from "../../field-BXY6su53.mjs";
12
+ import { forwardRef, useEffect, useId, useState } from "react";
13
+ import { jsx } from "react/jsx-runtime";
14
+ import * as fileUpload from "@sprawlify/primitives/machines/file-upload";
15
+ import { anatomy as fileUploadAnatomy } from "@sprawlify/primitives/machines/file-upload";
16
+
17
+ //#region src/components/file-upload/use-file-upload-context.ts
18
+ const [FileUploadProvider, useFileUploadContext] = createContext$1({
19
+ name: "FileUploadContext",
20
+ hookName: "useFileUploadContext",
21
+ providerName: "<FileUploadProvider />"
22
+ });
23
+
24
+ //#endregion
25
+ //#region src/components/file-upload/file-upload-clear-trigger.tsx
26
+ const FileUploadClearTrigger = forwardRef((props, ref) => {
27
+ const mergedProps = mergeProps(useFileUploadContext().getClearTriggerProps(), props);
28
+ return /* @__PURE__ */ jsx(sprawlify.button, {
29
+ ...mergedProps,
30
+ ref
31
+ });
32
+ });
33
+ FileUploadClearTrigger.displayName = "FileUploadClearTrigger";
34
+
35
+ //#endregion
36
+ //#region src/components/file-upload/file-upload-context.tsx
37
+ const FileUploadContext = (props) => props.children(useFileUploadContext());
38
+
39
+ //#endregion
40
+ //#region src/components/file-upload/file-upload-dropzone.tsx
41
+ const splitDropzoneProps = createSplitProps();
42
+ const FileUploadDropzone = forwardRef((props, ref) => {
43
+ const [dropzoneProps, localProps] = splitDropzoneProps(props, ["disableClick"]);
44
+ const mergedProps = mergeProps(useFileUploadContext().getDropzoneProps(dropzoneProps), localProps);
45
+ return /* @__PURE__ */ jsx(sprawlify.div, {
46
+ ...mergedProps,
47
+ ref
48
+ });
49
+ });
50
+ FileUploadDropzone.displayName = "FileUploadDropzone";
51
+
52
+ //#endregion
53
+ //#region src/components/file-upload/file-upload-hidden-input.tsx
54
+ const FileUploadHiddenInput = forwardRef((props, ref) => {
55
+ const mergedProps = mergeProps(useFileUploadContext().getHiddenInputProps(), props);
56
+ const field = useFieldContext();
57
+ return /* @__PURE__ */ jsx(sprawlify.input, {
58
+ "aria-describedby": field?.ariaDescribedby,
59
+ ...mergedProps,
60
+ ref
61
+ });
62
+ });
63
+ FileUploadHiddenInput.displayName = "FileUploadHiddenInput";
64
+
65
+ //#endregion
66
+ //#region src/components/file-upload/use-file-upload-item-group-props-context.ts
67
+ const [FileUploadItemGroupPropsProvider, useFileUploadItemGroupPropsContext] = createContext$1({
68
+ name: "FileUploadItemGroupPropsContext",
69
+ hookName: "useFileUploadItemGroupPropsContext",
70
+ providerName: "<FileUploadItemGroupPropsProvider />"
71
+ });
72
+
73
+ //#endregion
74
+ //#region src/components/file-upload/use-file-upload-item-props-context.ts
75
+ const [FileUploadItemPropsProvider, useFileUploadItemPropsContext] = createContext$1({
76
+ name: "FileUploadItemPropsContext",
77
+ hookName: "useFileUploadItemPropsContext",
78
+ providerName: "<FileUploadItemPropsProvider />"
79
+ });
80
+
81
+ //#endregion
82
+ //#region src/components/file-upload/file-upload-item.tsx
83
+ const splitItemBaseProps = createSplitProps();
84
+ const FileUploadItem = forwardRef((props, ref) => {
85
+ const [itemProps, localProps] = splitItemBaseProps(props, ["file"]);
86
+ const fileUpload$1 = useFileUploadContext();
87
+ const itemGroupProps = useFileUploadItemGroupPropsContext();
88
+ const itemPropsWithType = {
89
+ ...itemProps,
90
+ type: itemGroupProps.type
91
+ };
92
+ const mergedProps = mergeProps(fileUpload$1.getItemProps(itemPropsWithType), localProps);
93
+ return /* @__PURE__ */ jsx(FileUploadItemPropsProvider, {
94
+ value: itemPropsWithType,
95
+ children: /* @__PURE__ */ jsx(sprawlify.li, {
96
+ ...mergedProps,
97
+ ref
98
+ })
99
+ });
100
+ });
101
+ FileUploadItem.displayName = "FileUploadItem";
102
+
103
+ //#endregion
104
+ //#region src/components/file-upload/file-upload-item-delete-trigger.tsx
105
+ const FileUploadItemDeleteTrigger = forwardRef((props, ref) => {
106
+ const fileUpload$1 = useFileUploadContext();
107
+ const itemProps = useFileUploadItemPropsContext();
108
+ const mergedProps = mergeProps(fileUpload$1.getItemDeleteTriggerProps(itemProps), props);
109
+ return /* @__PURE__ */ jsx(sprawlify.button, {
110
+ ...mergedProps,
111
+ ref
112
+ });
113
+ });
114
+ FileUploadItemDeleteTrigger.displayName = "FileUploadItemDeleteTrigger";
115
+
116
+ //#endregion
117
+ //#region src/components/file-upload/file-upload-item-group.tsx
118
+ const splitItemGroupProps = createSplitProps();
119
+ const FileUploadItemGroup = forwardRef((props, ref) => {
120
+ const [itemGroupProps, localProps] = splitItemGroupProps(props, ["type"]);
121
+ const mergedProps = mergeProps(useFileUploadContext().getItemGroupProps(itemGroupProps), localProps);
122
+ return /* @__PURE__ */ jsx(FileUploadItemGroupPropsProvider, {
123
+ value: itemGroupProps,
124
+ children: /* @__PURE__ */ jsx(sprawlify.ul, {
125
+ ...mergedProps,
126
+ ref
127
+ })
128
+ });
129
+ });
130
+ FileUploadItemGroup.displayName = "FileUploadItemGroup";
131
+
132
+ //#endregion
133
+ //#region src/components/file-upload/file-upload-item-name.tsx
134
+ const FileUploadItemName = forwardRef((props, ref) => {
135
+ const { children, ...rest } = props;
136
+ const fileUpload$1 = useFileUploadContext();
137
+ const itemProps = useFileUploadItemPropsContext();
138
+ const mergedProps = mergeProps(fileUpload$1.getItemNameProps(itemProps), rest);
139
+ return /* @__PURE__ */ jsx(sprawlify.div, {
140
+ ...mergedProps,
141
+ ref,
142
+ children: children || itemProps.file.name
143
+ });
144
+ });
145
+ FileUploadItemName.displayName = "FileUploadItemName";
146
+
147
+ //#endregion
148
+ //#region src/components/file-upload/file-upload-item-preview.tsx
149
+ const FileUploadItemPreview = forwardRef((props, ref) => {
150
+ const fileUpload$1 = useFileUploadContext();
151
+ const itemProps = useFileUploadItemPropsContext();
152
+ const mergedProps = mergeProps(fileUpload$1.getItemPreviewProps(itemProps), props);
153
+ if (!itemProps.file.type.match(props.type ?? ".*")) return null;
154
+ return /* @__PURE__ */ jsx(sprawlify.div, {
155
+ ...mergedProps,
156
+ ref
157
+ });
158
+ });
159
+ FileUploadItemPreview.displayName = "FileUploadItemPreview";
160
+
161
+ //#endregion
162
+ //#region src/components/file-upload/file-upload-item-preview-image.tsx
163
+ const FileUploadItemPreviewImage = forwardRef((props, ref) => {
164
+ const [url, setUrl] = useState("");
165
+ const fileUpload$1 = useFileUploadContext();
166
+ const itemProps = useFileUploadItemPropsContext();
167
+ const mergedProps = mergeProps(fileUpload$1.getItemPreviewImageProps({
168
+ ...itemProps,
169
+ url
170
+ }), props);
171
+ useEffect(() => {
172
+ return fileUpload$1.createFileUrl(itemProps.file, (url$1) => setUrl(url$1));
173
+ }, [itemProps, fileUpload$1]);
174
+ if (!url) return null;
175
+ return /* @__PURE__ */ jsx(sprawlify.img, {
176
+ ...mergedProps,
177
+ ref
178
+ });
179
+ });
180
+ FileUploadItemPreviewImage.displayName = "FileUploadItemPreviewImage";
181
+
182
+ //#endregion
183
+ //#region src/components/file-upload/file-upload-item-size-text.tsx
184
+ const FileUploadItemSizeText = forwardRef((props, ref) => {
185
+ const { children, ...rest } = props;
186
+ const fileUpload$1 = useFileUploadContext();
187
+ const itemProps = useFileUploadItemPropsContext();
188
+ const mergedProps = mergeProps(fileUpload$1.getItemSizeTextProps(itemProps), rest);
189
+ return /* @__PURE__ */ jsx(sprawlify.div, {
190
+ ...mergedProps,
191
+ ref,
192
+ children: children || fileUpload$1.getFileSize(itemProps.file)
193
+ });
194
+ });
195
+ FileUploadItemSizeText.displayName = "FileUploadItemSizeText";
196
+
197
+ //#endregion
198
+ //#region src/components/file-upload/file-upload-label.tsx
199
+ const FileUploadLabel = forwardRef((props, ref) => {
200
+ const mergedProps = mergeProps(useFileUploadContext().getLabelProps(), props);
201
+ return /* @__PURE__ */ jsx(sprawlify.label, {
202
+ ...mergedProps,
203
+ ref
204
+ });
205
+ });
206
+ FileUploadLabel.displayName = "FileUploadLabel";
207
+
208
+ //#endregion
209
+ //#region src/components/file-upload/use-file-upload.ts
210
+ const useFileUpload = (props) => {
211
+ const id = useId();
212
+ const { getRootNode } = useEnvironmentContext();
213
+ const { dir, locale } = useLocaleContext();
214
+ const field = useFieldContext();
215
+ const machineProps = {
216
+ id,
217
+ ids: {
218
+ label: field?.ids.label,
219
+ hiddenInput: field?.ids.control
220
+ },
221
+ dir,
222
+ disabled: field?.disabled,
223
+ locale,
224
+ required: field?.required,
225
+ invalid: field?.invalid,
226
+ getRootNode,
227
+ ...props
228
+ };
229
+ const service = useMachine(fileUpload.machine, machineProps);
230
+ return fileUpload.connect(service, normalizeProps);
231
+ };
232
+
233
+ //#endregion
234
+ //#region src/components/file-upload/file-upload-root.tsx
235
+ const splitRootProps = createSplitProps();
236
+ const FileUploadRoot = forwardRef((props, ref) => {
237
+ const [useFileUploadProps, localProps] = splitRootProps(props, [
238
+ "accept",
239
+ "acceptedFiles",
240
+ "allowDrop",
241
+ "capture",
242
+ "defaultAcceptedFiles",
243
+ "directory",
244
+ "disabled",
245
+ "id",
246
+ "ids",
247
+ "invalid",
248
+ "locale",
249
+ "maxFiles",
250
+ "maxFileSize",
251
+ "minFileSize",
252
+ "name",
253
+ "onFileAccept",
254
+ "onFileChange",
255
+ "onFileReject",
256
+ "preventDocumentDrop",
257
+ "required",
258
+ "translations",
259
+ "transformFiles",
260
+ "validate"
261
+ ]);
262
+ const fileUpload$1 = useFileUpload(useFileUploadProps);
263
+ const mergedProps = mergeProps(fileUpload$1.getRootProps(), localProps);
264
+ return /* @__PURE__ */ jsx(FileUploadProvider, {
265
+ value: fileUpload$1,
266
+ children: /* @__PURE__ */ jsx(sprawlify.div, {
267
+ ...mergedProps,
268
+ ref
269
+ })
270
+ });
271
+ });
272
+ FileUploadRoot.displayName = "FileUploadRoot";
273
+
274
+ //#endregion
275
+ //#region src/components/file-upload/file-upload-root-provider.tsx
276
+ const splitRootProviderProps = createSplitProps();
277
+ const FileUploadRootProvider = forwardRef((props, ref) => {
278
+ const [{ value: fileUpload$1 }, localProps] = splitRootProviderProps(props, ["value"]);
279
+ const mergedProps = mergeProps(fileUpload$1.getRootProps(), localProps);
280
+ return /* @__PURE__ */ jsx(FileUploadProvider, {
281
+ value: fileUpload$1,
282
+ children: /* @__PURE__ */ jsx(sprawlify.div, {
283
+ ...mergedProps,
284
+ ref
285
+ })
286
+ });
287
+ });
288
+ FileUploadRootProvider.displayName = "FileUploadRootProvider";
289
+
290
+ //#endregion
291
+ //#region src/components/file-upload/file-upload-trigger.tsx
292
+ const FileUploadTrigger = forwardRef((props, ref) => {
293
+ const mergedProps = mergeProps(useFileUploadContext().getTriggerProps(), props);
294
+ return /* @__PURE__ */ jsx(sprawlify.button, {
295
+ ...mergedProps,
296
+ ref
297
+ });
298
+ });
299
+ FileUploadTrigger.displayName = "FileUploadTrigger";
300
+
301
+ //#endregion
302
+ //#region src/components/file-upload/file-upload.ts
303
+ var file_upload_exports = /* @__PURE__ */ __export({
304
+ ClearTrigger: () => FileUploadClearTrigger,
305
+ Context: () => FileUploadContext,
306
+ Dropzone: () => FileUploadDropzone,
307
+ HiddenInput: () => FileUploadHiddenInput,
308
+ Item: () => FileUploadItem,
309
+ ItemDeleteTrigger: () => FileUploadItemDeleteTrigger,
310
+ ItemGroup: () => FileUploadItemGroup,
311
+ ItemName: () => FileUploadItemName,
312
+ ItemPreview: () => FileUploadItemPreview,
313
+ ItemPreviewImage: () => FileUploadItemPreviewImage,
314
+ ItemSizeText: () => FileUploadItemSizeText,
315
+ Label: () => FileUploadLabel,
316
+ Root: () => FileUploadRoot,
317
+ RootProvider: () => FileUploadRootProvider,
318
+ Trigger: () => FileUploadTrigger
319
+ });
320
+
321
+ //#endregion
322
+ export { file_upload_exports as FileUpload, FileUploadClearTrigger, FileUploadContext, FileUploadDropzone, FileUploadHiddenInput, FileUploadItem, FileUploadItemDeleteTrigger, FileUploadItemGroup, FileUploadItemName, FileUploadItemPreview, FileUploadItemPreviewImage, FileUploadItemSizeText, FileUploadLabel, FileUploadRoot, FileUploadRootProvider, FileUploadTrigger, fileUploadAnatomy, useFileUpload, useFileUploadContext };
@@ -0,0 +1,287 @@
1
+ const require_chunk = require('../../chunk-BYnRvbsk.cjs');
2
+ const require_core = require('../../core-DCWyxy9D.cjs');
3
+ const require_create_context = require('../../create-context-CQ4U0lLj.cjs');
4
+ const require_environment = require('../../environment-CvilmfQt.cjs');
5
+ const require_locale = require('../../locale-BcnWD1Hf.cjs');
6
+ require('../../providers-BNAArubQ.cjs');
7
+ const require_compose_refs = require('../../compose-refs-C5QNDywq.cjs');
8
+ const require_factory = require('../../factory-C166evrS.cjs');
9
+ const require_create_split_props = require('../../create-split-props-Dp4TWOyM.cjs');
10
+ const require_presence = require('../../presence-CPov8wyU.cjs');
11
+ require('../../use-event-CLH8zHoJ.cjs');
12
+ let react = require("react");
13
+ let react_jsx_runtime = require("react/jsx-runtime");
14
+ let __sprawlify_primitives_machines_floating_panel = require("@sprawlify/primitives/machines/floating-panel");
15
+ __sprawlify_primitives_machines_floating_panel = require_chunk.__toESM(__sprawlify_primitives_machines_floating_panel);
16
+ let __sprawlify_primitives_core = require("@sprawlify/primitives/core");
17
+
18
+ //#region src/components/floating-panel/use-floating-panel-context.ts
19
+ const [FloatingPanelProvider, useFloatingPanelContext] = require_create_context.createContext({
20
+ name: "FloatingPanelContext",
21
+ hookName: "useFloatingPanelContext",
22
+ providerName: "<FloatingPanelProvider />"
23
+ });
24
+
25
+ //#endregion
26
+ //#region src/components/floating-panel/floating-panel-body.tsx
27
+ const FloatingPanelBody = (0, react.forwardRef)((props, ref) => {
28
+ const mergedProps = (0, __sprawlify_primitives_core.mergeProps)(useFloatingPanelContext().getBodyProps(), props);
29
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.sprawlify.div, {
30
+ ...mergedProps,
31
+ ref
32
+ });
33
+ });
34
+ FloatingPanelBody.displayName = "FloatingPanelBody";
35
+
36
+ //#endregion
37
+ //#region src/components/floating-panel/floating-panel-close-trigger.tsx
38
+ const FloatingPanelCloseTrigger = (0, react.forwardRef)((props, ref) => {
39
+ const mergedProps = (0, __sprawlify_primitives_core.mergeProps)(useFloatingPanelContext().getCloseTriggerProps(), props);
40
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.sprawlify.button, {
41
+ ...mergedProps,
42
+ ref
43
+ });
44
+ });
45
+ FloatingPanelCloseTrigger.displayName = "FloatingPanelCloseTrigger";
46
+
47
+ //#endregion
48
+ //#region src/components/floating-panel/floating-panel-content.tsx
49
+ const FloatingPanelContent = (0, react.forwardRef)((props, ref) => {
50
+ const floatingPanel = useFloatingPanelContext();
51
+ const presence = require_presence.usePresenceContext();
52
+ const mergedProps = (0, __sprawlify_primitives_core.mergeProps)(floatingPanel.getContentProps(), presence.getPresenceProps(), props);
53
+ if (presence.unmounted) return null;
54
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.sprawlify.div, {
55
+ ...mergedProps,
56
+ ref: require_compose_refs.composeRefs(presence.ref, ref)
57
+ });
58
+ });
59
+ FloatingPanelContent.displayName = "FloatingPanelContent";
60
+
61
+ //#endregion
62
+ //#region src/components/floating-panel/floating-panel-context.tsx
63
+ const FloatingPanelContext = (props) => props.children(useFloatingPanelContext());
64
+
65
+ //#endregion
66
+ //#region src/components/floating-panel/floating-panel-drag-trigger.tsx
67
+ const FloatingPanelDragTrigger = (0, react.forwardRef)((props, ref) => {
68
+ const mergedProps = (0, __sprawlify_primitives_core.mergeProps)(useFloatingPanelContext().getDragTriggerProps(), props);
69
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.sprawlify.div, {
70
+ ...mergedProps,
71
+ ref
72
+ });
73
+ });
74
+ FloatingPanelDragTrigger.displayName = "FloatingPanelDragTrigger";
75
+
76
+ //#endregion
77
+ //#region src/components/floating-panel/floating-panel-header.tsx
78
+ const FloatingPanelHeader = (0, react.forwardRef)((props, ref) => {
79
+ const mergedProps = (0, __sprawlify_primitives_core.mergeProps)(useFloatingPanelContext().getHeaderProps(), props);
80
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.sprawlify.div, {
81
+ ...mergedProps,
82
+ ref
83
+ });
84
+ });
85
+ FloatingPanelHeader.displayName = "FloatingPanelHeader";
86
+
87
+ //#endregion
88
+ //#region src/components/floating-panel/floating-panel-positioner.tsx
89
+ const FloatingPanelPositioner = (0, react.forwardRef)((props, ref) => {
90
+ const mergedProps = (0, __sprawlify_primitives_core.mergeProps)(useFloatingPanelContext().getPositionerProps(), props);
91
+ if (require_presence.usePresenceContext().unmounted) return null;
92
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.sprawlify.div, {
93
+ ...mergedProps,
94
+ ref
95
+ });
96
+ });
97
+ FloatingPanelPositioner.displayName = "FloatingPanelPositioner";
98
+
99
+ //#endregion
100
+ //#region src/components/floating-panel/floating-panel-resize-trigger.tsx
101
+ const splitResizeTriggerProps = require_create_split_props.createSplitProps();
102
+ const FloatingPanelResizeTrigger = (0, react.forwardRef)((props, ref) => {
103
+ const [resizeProps, localProps] = splitResizeTriggerProps(props, ["axis"]);
104
+ const mergedProps = (0, __sprawlify_primitives_core.mergeProps)(useFloatingPanelContext().getResizeTriggerProps(resizeProps), localProps);
105
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.sprawlify.div, {
106
+ ...mergedProps,
107
+ ref
108
+ });
109
+ });
110
+ FloatingPanelResizeTrigger.displayName = "FloatingPanelResizeTrigger";
111
+
112
+ //#endregion
113
+ //#region src/components/floating-panel/floating-panel-stage-trigger.tsx
114
+ const splitStageTriggerProps = require_create_split_props.createSplitProps();
115
+ const FloatingPanelStageTrigger = (0, react.forwardRef)((props, ref) => {
116
+ const [stage, localProps] = splitStageTriggerProps(props, ["stage"]);
117
+ const mergedProps = (0, __sprawlify_primitives_core.mergeProps)(useFloatingPanelContext().getStageTriggerProps(stage), localProps);
118
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.sprawlify.button, {
119
+ ...mergedProps,
120
+ ref
121
+ });
122
+ });
123
+ FloatingPanelStageTrigger.displayName = "FloatingPanelStageTrigger";
124
+
125
+ //#endregion
126
+ //#region src/components/floating-panel/use-floating-panel.ts
127
+ const useFloatingPanel = (props = {}) => {
128
+ const { getRootNode } = require_environment.useEnvironmentContext();
129
+ const { dir } = require_locale.useLocaleContext();
130
+ const context = {
131
+ id: (0, react.useId)(),
132
+ dir,
133
+ getRootNode,
134
+ ...props
135
+ };
136
+ const service = require_core.useMachine(__sprawlify_primitives_machines_floating_panel.machine, context);
137
+ return __sprawlify_primitives_machines_floating_panel.connect(service, require_core.normalizeProps);
138
+ };
139
+
140
+ //#endregion
141
+ //#region src/components/floating-panel/floating-panel-root.tsx
142
+ const splitRootProps = require_create_split_props.createSplitProps();
143
+ const FloatingPanelRoot = (props) => {
144
+ const [presenceProps, otherProps] = require_presence.splitPresenceProps(props);
145
+ const [useFloatingPanelProps, localProps] = splitRootProps(otherProps, [
146
+ "allowOverflow",
147
+ "closeOnEscape",
148
+ "defaultOpen",
149
+ "defaultPosition",
150
+ "defaultSize",
151
+ "dir",
152
+ "disabled",
153
+ "draggable",
154
+ "getAnchorPosition",
155
+ "getBoundaryEl",
156
+ "gridSize",
157
+ "id",
158
+ "ids",
159
+ "lockAspectRatio",
160
+ "maxSize",
161
+ "minSize",
162
+ "onOpenChange",
163
+ "onPositionChange",
164
+ "onPositionChangeEnd",
165
+ "onSizeChange",
166
+ "onSizeChangeEnd",
167
+ "onStageChange",
168
+ "open",
169
+ "persistRect",
170
+ "position",
171
+ "resizable",
172
+ "size",
173
+ "strategy",
174
+ "translations"
175
+ ]);
176
+ const floatingPanel = useFloatingPanel(useFloatingPanelProps);
177
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(FloatingPanelProvider, {
178
+ value: floatingPanel,
179
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_presence.PresenceProvider, {
180
+ value: require_presence.usePresence((0, __sprawlify_primitives_core.mergeProps)({ present: floatingPanel.open }, presenceProps)),
181
+ children: localProps.children
182
+ })
183
+ });
184
+ };
185
+
186
+ //#endregion
187
+ //#region src/components/floating-panel/floating-panel-root-provider.tsx
188
+ const splitRootProviderProps = require_create_split_props.createSplitProps();
189
+ const FloatingPanelRootProvider = (props) => {
190
+ const [presenceProps, baseProps] = require_presence.splitPresenceProps(props);
191
+ const [{ value: floatingPanel }, localProps] = splitRootProviderProps(baseProps, ["value"]);
192
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(FloatingPanelProvider, {
193
+ value: floatingPanel,
194
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_presence.PresenceProvider, {
195
+ value: require_presence.usePresence((0, __sprawlify_primitives_core.mergeProps)({ present: floatingPanel.open }, presenceProps)),
196
+ children: localProps.children
197
+ })
198
+ });
199
+ };
200
+
201
+ //#endregion
202
+ //#region src/components/floating-panel/floating-panel-title.tsx
203
+ const FloatingPanelTitle = (0, react.forwardRef)((props, ref) => {
204
+ const mergedProps = (0, __sprawlify_primitives_core.mergeProps)(useFloatingPanelContext().getTitleProps(), props);
205
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.sprawlify.h2, {
206
+ ...mergedProps,
207
+ ref
208
+ });
209
+ });
210
+ FloatingPanelTitle.displayName = "FloatingPanelTitle";
211
+
212
+ //#endregion
213
+ //#region src/components/floating-panel/floating-panel-trigger.tsx
214
+ const FloatingPanelTrigger = (0, react.forwardRef)((props, ref) => {
215
+ const floatingPanel = useFloatingPanelContext();
216
+ const presence = require_presence.usePresenceContext();
217
+ const triggerProps = floatingPanel.getTriggerProps();
218
+ const mergedProps = (0, __sprawlify_primitives_core.mergeProps)({
219
+ ...triggerProps,
220
+ "aria-controls": presence.unmounted ? void 0 : triggerProps["aria-controls"]
221
+ }, props);
222
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.sprawlify.button, {
223
+ ...mergedProps,
224
+ ref
225
+ });
226
+ });
227
+ FloatingPanelTrigger.displayName = "FloatingPanelTrigger";
228
+
229
+ //#endregion
230
+ //#region src/components/floating-panel/floating-panel-control.tsx
231
+ const FloatingPanelControl = (0, react.forwardRef)((props, ref) => {
232
+ const mergedProps = (0, __sprawlify_primitives_core.mergeProps)(useFloatingPanelContext().getControlProps(), props);
233
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_factory.sprawlify.div, {
234
+ ...mergedProps,
235
+ ref
236
+ });
237
+ });
238
+ FloatingPanelControl.displayName = "FloatingPanelControl";
239
+
240
+ //#endregion
241
+ //#region src/components/floating-panel/floating-panel.ts
242
+ var floating_panel_exports = /* @__PURE__ */ require_chunk.__export({
243
+ Body: () => FloatingPanelBody,
244
+ CloseTrigger: () => FloatingPanelCloseTrigger,
245
+ Content: () => FloatingPanelContent,
246
+ Context: () => FloatingPanelContext,
247
+ Control: () => FloatingPanelControl,
248
+ DragTrigger: () => FloatingPanelDragTrigger,
249
+ Header: () => FloatingPanelHeader,
250
+ Positioner: () => FloatingPanelPositioner,
251
+ ResizeTrigger: () => FloatingPanelResizeTrigger,
252
+ Root: () => FloatingPanelRoot,
253
+ RootProvider: () => FloatingPanelRootProvider,
254
+ StageTrigger: () => FloatingPanelStageTrigger,
255
+ Title: () => FloatingPanelTitle,
256
+ Trigger: () => FloatingPanelTrigger
257
+ });
258
+
259
+ //#endregion
260
+ Object.defineProperty(exports, 'FloatingPanel', {
261
+ enumerable: true,
262
+ get: function () {
263
+ return floating_panel_exports;
264
+ }
265
+ });
266
+ exports.FloatingPanelBody = FloatingPanelBody;
267
+ exports.FloatingPanelCloseTrigger = FloatingPanelCloseTrigger;
268
+ exports.FloatingPanelContent = FloatingPanelContent;
269
+ exports.FloatingPanelContext = FloatingPanelContext;
270
+ exports.FloatingPanelControl = FloatingPanelControl;
271
+ exports.FloatingPanelDragTrigger = FloatingPanelDragTrigger;
272
+ exports.FloatingPanelHeader = FloatingPanelHeader;
273
+ exports.FloatingPanelPositioner = FloatingPanelPositioner;
274
+ exports.FloatingPanelResizeTrigger = FloatingPanelResizeTrigger;
275
+ exports.FloatingPanelRoot = FloatingPanelRoot;
276
+ exports.FloatingPanelRootProvider = FloatingPanelRootProvider;
277
+ exports.FloatingPanelStageTrigger = FloatingPanelStageTrigger;
278
+ exports.FloatingPanelTitle = FloatingPanelTitle;
279
+ exports.FloatingPanelTrigger = FloatingPanelTrigger;
280
+ Object.defineProperty(exports, 'floatingPanelAnatomy', {
281
+ enumerable: true,
282
+ get: function () {
283
+ return __sprawlify_primitives_machines_floating_panel.anatomy;
284
+ }
285
+ });
286
+ exports.useFloatingPanel = useFloatingPanel;
287
+ exports.useFloatingPanelContext = useFloatingPanelContext;