@sprawlify/solid 0.0.17 → 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-oWvTRylz.jsx → collapsible-14K1NkX_.jsx} +8 -8
  2. package/dist/{collapsible-Dp3pmOz6.js → collapsible-BT7AHLQr.js} +8 -8
  3. package/dist/{collection-DOjgejiS.js → collection-BVSLJ8Vb.js} +2 -2
  4. package/dist/{collection-gIC58P6c.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 +14 -14
  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 +36 -36
  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 +23 -23
  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 +2 -2
  45. package/dist/components/download-trigger/index.js +4 -4
  46. package/dist/components/download-trigger/index.jsx +4 -4
  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 +13 -13
  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 +18 -18
  57. package/dist/components/file-upload/index.js +10 -10
  58. package/dist/components/file-upload/index.jsx +10 -10
  59. package/dist/components/floating-panel/index.d.ts +17 -17
  60. package/dist/components/floating-panel/index.js +10 -10
  61. package/dist/components/floating-panel/index.jsx +10 -10
  62. package/dist/components/focus-trap/index.d.ts +4 -4
  63. package/dist/components/focus-trap/index.js +4 -4
  64. package/dist/components/focus-trap/index.jsx +4 -4
  65. package/dist/components/format/index.d.ts +4 -4
  66. package/dist/components/format/index.js +3 -3
  67. package/dist/components/format/index.jsx +3 -3
  68. package/dist/components/frame/index.d.ts +1 -1
  69. package/dist/components/frame/index.js +3 -3
  70. package/dist/components/frame/index.jsx +3 -3
  71. package/dist/components/highlight/index.d.ts +3 -3
  72. package/dist/components/highlight/index.js +2 -2
  73. package/dist/components/highlight/index.jsx +2 -2
  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-OCDy1fEv.jsx → factory-BIJk1mK6.jsx} +1 -1
  120. package/dist/{factory-Ci1LUSWg.js → factory-k8EbNZ7r.js} +1 -1
  121. package/dist/{factory-C7CCEqYp.d.ts → factory-srnAQg4A.d.ts} +6 -1
  122. package/dist/{field-D5bG5XXV.js → field-CZv3v7K-.js} +8 -8
  123. package/dist/{field-DQLYAOgJ.jsx → field-CtkmPUb0.jsx} +8 -8
  124. package/dist/{fieldset-Def05D5r.js → fieldset-B2nK8dL5.js} +8 -8
  125. package/dist/{fieldset-DT2nCjE0.jsx → fieldset-aYQsMWX2.jsx} +8 -8
  126. package/dist/{index-4WaIBGi6.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-CsB3A61w.d.ts → index-DylIyeqd.d.ts} +8 -8
  130. package/dist/index-utxtRaDW.d.ts +41 -0
  131. package/dist/{index-Bf3vaCUa.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-CAkwk5S4.js → presence-Clrs1hmS.js} +7 -7
  136. package/dist/{presence-vlL8hWT8.jsx → presence-H4-8_5_s.jsx} +7 -7
  137. package/dist/{providers-BRmk_hzA.jsx → providers-C6VPiSrB.jsx} +2 -2
  138. package/dist/{providers-D1hKjv0s.js → providers-DgUckEdb.js} +2 -2
  139. package/dist/{render-strategy-CqWA1-xU.js → render-strategy-BlHCR8sl.js} +2 -2
  140. package/dist/{render-strategy-BA_kLuwR.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 +67 -2
  147. /package/dist/{chunk-Wl6TQfsu.js → chunk-BJ7z6UrO.jsx} +0 -0
  148. /package/dist/{chunk-dNcSV51B.jsx → chunk-Bn8mXcTA.js} +0 -0
  149. /package/dist/{compose-refs-CDTdkuP1.jsx → compose-refs-Cp4AShsY.jsx} +0 -0
  150. /package/dist/{compose-refs-DbJoODKO.js → compose-refs-tCBI7PRJ.js} +0 -0
  151. /package/dist/{core-CWSDVCoi.jsx → core-CRjuRw95.js} +0 -0
  152. /package/dist/{core-Cl2xcDm5.js → core-C_FYj4uc.jsx} +0 -0
  153. /package/dist/{create-context-BBDU3kF1.js → create-context-BwqlrMqL.jsx} +0 -0
  154. /package/dist/{create-context-CpcL7CiV.jsx → create-context-DlXBVMoq.js} +0 -0
  155. /package/dist/{create-split-props-CHlLW_X_.js → create-split-props-BHmgTHSf.js} +0 -0
  156. /package/dist/{create-split-props-DrfYep1t.jsx → create-split-props-CKwjjjkD.jsx} +0 -0
  157. /package/dist/{index-BLKwiHM7.d.ts → index-BLALA3BS.d.ts} +0 -0
  158. /package/dist/{index-5DzQGTeT.d.ts → index-DiANe65S.d.ts} +0 -0
  159. /package/dist/{render-strategy-DfQ78EfE.d.ts → render-strategy-BmTDUy3U.d.ts} +0 -0
  160. /package/dist/{run-if-fn-Ct4sSuFV.js → run-if-fn-C80kt4dU.js} +0 -0
  161. /package/dist/{run-if-fn-iVu0r8rO.jsx → run-if-fn-CrJzzDIM.jsx} +0 -0
  162. /package/dist/{types-M3kll1K0.d.ts → types-mGUbKy2h.d.ts} +0 -0
  163. /package/dist/{utils-DK-8VxTv.jsx → utils-DSmVDqW7.js} +0 -0
  164. /package/dist/{utils-xOi5tXWN.js → utils-DhhcJyG-.jsx} +0 -0
@@ -0,0 +1,151 @@
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 { createMemo, createUniqueId } from "solid-js";
9
+ import { createComponent } from "solid-js/web";
10
+ import * as imageCropper from "@sprawlify/primitives/machines/image-cropper";
11
+ import { anatomy as imageCropperAnatomy, handles } from "@sprawlify/primitives/machines/image-cropper";
12
+
13
+ //#region src/components/image-cropper/use-image-cropper-context.ts
14
+ const [ImageCropperProvider, useImageCropperContext] = createContext$1({
15
+ hookName: "useImageCropperContext",
16
+ providerName: "<ImageCropperProvider />"
17
+ });
18
+
19
+ //#endregion
20
+ //#region src/components/image-cropper/image-cropper-context.tsx
21
+ const ImageCropperContext = (props) => props.children(useImageCropperContext());
22
+
23
+ //#endregion
24
+ //#region src/components/image-cropper/image-cropper-grid.tsx
25
+ const ImageCropperGrid = (props) => {
26
+ const api = useImageCropperContext();
27
+ const mergedProps = mergeProps$2(() => api().getGridProps({ axis: props.axis }), props);
28
+ return createComponent(sprawlify.div, mergedProps);
29
+ };
30
+
31
+ //#endregion
32
+ //#region src/components/image-cropper/image-cropper-handle.tsx
33
+ const ImageCropperHandle = (props) => {
34
+ const api = useImageCropperContext();
35
+ const mergedProps = mergeProps$2(() => api().getHandleProps({ position: props.position }), props);
36
+ return createComponent(sprawlify.div, mergedProps);
37
+ };
38
+
39
+ //#endregion
40
+ //#region src/components/image-cropper/image-cropper-image.tsx
41
+ const ImageCropperImage = (props) => {
42
+ const api = useImageCropperContext();
43
+ const mergedProps = mergeProps$2(() => api().getImageProps(), props);
44
+ return createComponent(sprawlify.img, mergedProps);
45
+ };
46
+
47
+ //#endregion
48
+ //#region src/components/image-cropper/use-image-cropper.ts
49
+ const useImageCropper = (props = {}) => {
50
+ const id = createUniqueId();
51
+ const locale = useLocaleContext();
52
+ const environment = useEnvironmentContext();
53
+ const imageCropperProps = runIfFn(props);
54
+ const machineProps = createMemo(() => ({
55
+ id,
56
+ dir: locale().dir,
57
+ getRootNode: environment().getRootNode,
58
+ ...imageCropperProps
59
+ }));
60
+ const service = useMachine(imageCropper.machine, machineProps);
61
+ return createMemo(() => imageCropper.connect(service, normalizeProps));
62
+ };
63
+
64
+ //#endregion
65
+ //#region src/components/image-cropper/image-cropper-root.tsx
66
+ const ImageCropperRoot = (props) => {
67
+ const [useImageCropperProps, localProps] = createSplitProps()(props, [
68
+ "aspectRatio",
69
+ "cropShape",
70
+ "defaultFlip",
71
+ "defaultRotation",
72
+ "defaultZoom",
73
+ "fixedCropArea",
74
+ "flip",
75
+ "id",
76
+ "ids",
77
+ "initialCrop",
78
+ "maxHeight",
79
+ "maxWidth",
80
+ "maxZoom",
81
+ "minHeight",
82
+ "minWidth",
83
+ "minZoom",
84
+ "nudgeStep",
85
+ "nudgeStepCtrl",
86
+ "nudgeStepShift",
87
+ "onCropChange",
88
+ "onFlipChange",
89
+ "onRotationChange",
90
+ "onZoomChange",
91
+ "rotation",
92
+ "translations",
93
+ "zoom",
94
+ "zoomSensitivity",
95
+ "zoomStep"
96
+ ]);
97
+ const api = useImageCropper(useImageCropperProps);
98
+ const mergedProps = mergeProps$2(() => api().getRootProps(), localProps);
99
+ return createComponent(ImageCropperProvider, {
100
+ value: api,
101
+ get children() {
102
+ return createComponent(sprawlify.div, mergedProps);
103
+ }
104
+ });
105
+ };
106
+
107
+ //#endregion
108
+ //#region src/components/image-cropper/image-cropper-root-provider.tsx
109
+ const ImageCropperRootProvider = (props) => {
110
+ const [{ value: imageCropper$1 }, localProps] = createSplitProps()(props, ["value"]);
111
+ const mergedProps = mergeProps$2(() => imageCropper$1().getRootProps(), localProps);
112
+ return createComponent(ImageCropperProvider, {
113
+ value: imageCropper$1,
114
+ get children() {
115
+ return createComponent(sprawlify.div, mergedProps);
116
+ }
117
+ });
118
+ };
119
+
120
+ //#endregion
121
+ //#region src/components/image-cropper/image-cropper-selection.tsx
122
+ const ImageCropperSelection = (props) => {
123
+ const api = useImageCropperContext();
124
+ const mergedProps = mergeProps$2(() => api().getSelectionProps(), props);
125
+ return createComponent(sprawlify.div, mergedProps);
126
+ };
127
+
128
+ //#endregion
129
+ //#region src/components/image-cropper/image-cropper-viewport.tsx
130
+ const ImageCropperViewport = (props) => {
131
+ const api = useImageCropperContext();
132
+ const mergedProps = mergeProps$2(() => api().getViewportProps(), props);
133
+ return createComponent(sprawlify.div, mergedProps);
134
+ };
135
+
136
+ //#endregion
137
+ //#region src/components/image-cropper/image-cropper.ts
138
+ var image_cropper_exports = /* @__PURE__ */ __export({
139
+ Context: () => ImageCropperContext,
140
+ Grid: () => ImageCropperGrid,
141
+ Handle: () => ImageCropperHandle,
142
+ Image: () => ImageCropperImage,
143
+ Root: () => ImageCropperRoot,
144
+ RootProvider: () => ImageCropperRootProvider,
145
+ Selection: () => ImageCropperSelection,
146
+ Viewport: () => ImageCropperViewport,
147
+ handles: () => handles
148
+ });
149
+
150
+ //#endregion
151
+ export { image_cropper_exports as ImageCropper, ImageCropperContext, ImageCropperGrid, ImageCropperHandle, ImageCropperImage, ImageCropperRoot, ImageCropperRootProvider, ImageCropperSelection, ImageCropperViewport, imageCropperAnatomy, useImageCropper, useImageCropperContext };
@@ -0,0 +1,144 @@
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 { createMemo, createUniqueId } from "solid-js";
9
+ import * as imageCropper from "@sprawlify/primitives/machines/image-cropper";
10
+ import { anatomy as imageCropperAnatomy, handles } from "@sprawlify/primitives/machines/image-cropper";
11
+
12
+ //#region src/components/image-cropper/use-image-cropper-context.ts
13
+ const [ImageCropperProvider, useImageCropperContext] = createContext$1({
14
+ hookName: "useImageCropperContext",
15
+ providerName: "<ImageCropperProvider />"
16
+ });
17
+
18
+ //#endregion
19
+ //#region src/components/image-cropper/image-cropper-context.tsx
20
+ const ImageCropperContext = (props) => props.children(useImageCropperContext());
21
+
22
+ //#endregion
23
+ //#region src/components/image-cropper/image-cropper-grid.tsx
24
+ const ImageCropperGrid = (props) => {
25
+ const api = useImageCropperContext();
26
+ const mergedProps = mergeProps$1(() => api().getGridProps({ axis: props.axis }), props);
27
+ return <sprawlify.div {...mergedProps} />;
28
+ };
29
+
30
+ //#endregion
31
+ //#region src/components/image-cropper/image-cropper-handle.tsx
32
+ const ImageCropperHandle = (props) => {
33
+ const api = useImageCropperContext();
34
+ const mergedProps = mergeProps$1(() => api().getHandleProps({ position: props.position }), props);
35
+ return <sprawlify.div {...mergedProps} />;
36
+ };
37
+
38
+ //#endregion
39
+ //#region src/components/image-cropper/image-cropper-image.tsx
40
+ const ImageCropperImage = (props) => {
41
+ const api = useImageCropperContext();
42
+ const mergedProps = mergeProps$1(() => api().getImageProps(), props);
43
+ return <sprawlify.img {...mergedProps} />;
44
+ };
45
+
46
+ //#endregion
47
+ //#region src/components/image-cropper/use-image-cropper.ts
48
+ const useImageCropper = (props = {}) => {
49
+ const id = createUniqueId();
50
+ const locale = useLocaleContext();
51
+ const environment = useEnvironmentContext();
52
+ const imageCropperProps = runIfFn(props);
53
+ const machineProps = createMemo(() => ({
54
+ id,
55
+ dir: locale().dir,
56
+ getRootNode: environment().getRootNode,
57
+ ...imageCropperProps
58
+ }));
59
+ const service = useMachine(imageCropper.machine, machineProps);
60
+ return createMemo(() => imageCropper.connect(service, normalizeProps));
61
+ };
62
+
63
+ //#endregion
64
+ //#region src/components/image-cropper/image-cropper-root.tsx
65
+ const ImageCropperRoot = (props) => {
66
+ const [useImageCropperProps, localProps] = createSplitProps()(props, [
67
+ "aspectRatio",
68
+ "cropShape",
69
+ "defaultFlip",
70
+ "defaultRotation",
71
+ "defaultZoom",
72
+ "fixedCropArea",
73
+ "flip",
74
+ "id",
75
+ "ids",
76
+ "initialCrop",
77
+ "maxHeight",
78
+ "maxWidth",
79
+ "maxZoom",
80
+ "minHeight",
81
+ "minWidth",
82
+ "minZoom",
83
+ "nudgeStep",
84
+ "nudgeStepCtrl",
85
+ "nudgeStepShift",
86
+ "onCropChange",
87
+ "onFlipChange",
88
+ "onRotationChange",
89
+ "onZoomChange",
90
+ "rotation",
91
+ "translations",
92
+ "zoom",
93
+ "zoomSensitivity",
94
+ "zoomStep"
95
+ ]);
96
+ const api = useImageCropper(useImageCropperProps);
97
+ const mergedProps = mergeProps$1(() => api().getRootProps(), localProps);
98
+ return <ImageCropperProvider value={api}>
99
+ <sprawlify.div {...mergedProps} />
100
+ </ImageCropperProvider>;
101
+ };
102
+
103
+ //#endregion
104
+ //#region src/components/image-cropper/image-cropper-root-provider.tsx
105
+ const ImageCropperRootProvider = (props) => {
106
+ const [{ value: imageCropper$1 }, localProps] = createSplitProps()(props, ["value"]);
107
+ const mergedProps = mergeProps$1(() => imageCropper$1().getRootProps(), localProps);
108
+ return <ImageCropperProvider value={imageCropper$1}>
109
+ <sprawlify.div {...mergedProps} />
110
+ </ImageCropperProvider>;
111
+ };
112
+
113
+ //#endregion
114
+ //#region src/components/image-cropper/image-cropper-selection.tsx
115
+ const ImageCropperSelection = (props) => {
116
+ const api = useImageCropperContext();
117
+ const mergedProps = mergeProps$1(() => api().getSelectionProps(), props);
118
+ return <sprawlify.div {...mergedProps} />;
119
+ };
120
+
121
+ //#endregion
122
+ //#region src/components/image-cropper/image-cropper-viewport.tsx
123
+ const ImageCropperViewport = (props) => {
124
+ const api = useImageCropperContext();
125
+ const mergedProps = mergeProps$1(() => api().getViewportProps(), props);
126
+ return <sprawlify.div {...mergedProps} />;
127
+ };
128
+
129
+ //#endregion
130
+ //#region src/components/image-cropper/image-cropper.ts
131
+ var image_cropper_exports = /* @__PURE__ */ __export({
132
+ Context: () => ImageCropperContext,
133
+ Grid: () => ImageCropperGrid,
134
+ Handle: () => ImageCropperHandle,
135
+ Image: () => ImageCropperImage,
136
+ Root: () => ImageCropperRoot,
137
+ RootProvider: () => ImageCropperRootProvider,
138
+ Selection: () => ImageCropperSelection,
139
+ Viewport: () => ImageCropperViewport,
140
+ handles: () => handles
141
+ });
142
+
143
+ //#endregion
144
+ export { image_cropper_exports as ImageCropper, ImageCropperContext, ImageCropperGrid, ImageCropperHandle, ImageCropperImage, ImageCropperRoot, ImageCropperRootProvider, ImageCropperSelection, ImageCropperViewport, imageCropperAnatomy, useImageCropper, useImageCropperContext };
@@ -0,0 +1,56 @@
1
+ import "../../index-BLALA3BS.js";
2
+ import "../../types-mGUbKy2h.js";
3
+ import "../../factory-srnAQg4A.js";
4
+ import "../../render-strategy-BmTDUy3U.js";
5
+ import "../../index-BwthXhaG.js";
6
+ import { T as TreeViewRootProps, at as UseTreeViewReturn, b as TreeViewRootProviderProps, g as TreeViewTreeProps, it as UseTreeViewProps } from "../../index-Dqmtlqpz.js";
7
+ import { JSX } from "solid-js";
8
+ import { JsonNode, JsonNodeHastElement, JsonNodePreviewOptions } from "@sprawlify/primitives/json-tree-utils";
9
+
10
+ //#region src/components/json-tree-view/json-tree-view-props-context.d.ts
11
+ interface JsonTreeViewOptions extends Partial<JsonNodePreviewOptions> {
12
+ quotesOnKeys?: boolean;
13
+ }
14
+ //#endregion
15
+ //#region src/components/json-tree-view/json-tree-view-root.d.ts
16
+ interface JsonTreeViewRootBaseProps extends JsonTreeViewOptions {
17
+ /**
18
+ * The data to display in the tree.
19
+ */
20
+ data: unknown;
21
+ /**
22
+ * The default expand level.
23
+ */
24
+ defaultExpandedDepth?: number;
25
+ }
26
+ interface JsonTreeViewRootProps extends Omit<TreeViewRootProps<JsonNode>, 'collection'>, JsonTreeViewRootBaseProps {}
27
+ declare const JsonTreeViewRoot: (props: JsonTreeViewRootProps) => JSX.Element;
28
+ //#endregion
29
+ //#region src/components/json-tree-view/json-tree-view-root-provider.d.ts
30
+ interface JsonTreeViewRootProviderProps extends TreeViewRootProviderProps<JsonNode> {}
31
+ declare const JsonTreeViewRootProvider: (props: JsonTreeViewRootProviderProps) => JSX.Element;
32
+ //#endregion
33
+ //#region src/components/json-tree-view/json-tree-view-node.d.ts
34
+ interface JsonTreeViewNodeBaseProps {
35
+ arrow?: JSX.Element;
36
+ indentGuide?: boolean | JSX.Element;
37
+ renderValue?: (node: JsonNodeHastElement) => JSX.Element;
38
+ }
39
+ //#endregion
40
+ //#region src/components/json-tree-view/json-tree-view-tree.d.ts
41
+ interface JsonTreeViewTreeBaseProps extends JsonTreeViewNodeBaseProps {}
42
+ interface JsonTreeViewTreeProps extends TreeViewTreeProps, JsonTreeViewTreeBaseProps {}
43
+ declare const JsonTreeViewTree: (props: JsonTreeViewTreeProps) => JSX.Element;
44
+ //#endregion
45
+ //#region src/components/json-tree-view/use-json-tree-view.d.ts
46
+ interface UseJsonTreeViewProps extends Omit<UseTreeViewProps<JsonNode>, 'collection'> {
47
+ data: unknown;
48
+ defaultExpandedDepth?: number;
49
+ }
50
+ interface UseJsonTreeViewReturn extends UseTreeViewReturn<JsonNode> {}
51
+ declare const useJsonTreeView: (props: UseJsonTreeViewProps) => UseJsonTreeViewReturn;
52
+ declare namespace json_tree_view_d_exports {
53
+ export { JsonTreeViewRoot as Root, JsonTreeViewRootProps as RootProps, JsonTreeViewRootProvider as RootProvider, JsonTreeViewRootProviderProps as RootProviderProps, JsonTreeViewTree as Tree, JsonTreeViewTreeProps as TreeProps };
54
+ }
55
+ //#endregion
56
+ export { json_tree_view_d_exports as JsonTreeView, JsonTreeViewRoot, type JsonTreeViewRootProps, JsonTreeViewRootProvider, type JsonTreeViewRootProviderProps, JsonTreeViewTree, type JsonTreeViewTreeProps, type UseJsonTreeViewProps, type UseJsonTreeViewReturn, useJsonTreeView };
@@ -0,0 +1,330 @@
1
+ import { t as __export } from "../../chunk-Bn8mXcTA.js";
2
+ import "../../core-CRjuRw95.js";
3
+ import { t as createContext$1 } from "../../create-context-DlXBVMoq.js";
4
+ import "../../providers-DgUckEdb.js";
5
+ import "../../factory-k8EbNZ7r.js";
6
+ import { t as createSplitProps } from "../../create-split-props-BHmgTHSf.js";
7
+ import "../../render-strategy-BlHCR8sl.js";
8
+ import "../../collapsible-BT7AHLQr.js";
9
+ import { a as createTreeCollection } from "../../collection-BVSLJ8Vb.js";
10
+ import { C as TreeViewBranch, S as TreeViewBranchContent, T as useTreeViewContext, a as TreeViewRoot, b as TreeViewBranchIndentGuide, h as TreeViewItem, i as TreeViewRootProvider, o as useTreeView, p as TreeViewItemText, r as TreeViewTree, s as TreeViewNodeProvider, v as TreeViewBranchText, x as TreeViewBranchControl, y as TreeViewBranchIndicator } from "../../tree-view-CyvT0V14.js";
11
+ import { For, Index, Show, createMemo, splitProps } from "solid-js";
12
+ import { Dynamic, createComponent, effect, insert, memo, mergeProps as mergeProps$1, setAttribute, template, untrack as untrack$1 } from "solid-js/web";
13
+ import { getAccessibleDescription, getRootNode, jsonNodeToElement, keyPathToKey, nodeToString, nodeToValue } from "@sprawlify/primitives/json-tree-utils";
14
+
15
+ //#region src/components/json-tree-view/get-branch-value.ts
16
+ function getBranchValues(tree, depth) {
17
+ let values = [];
18
+ tree.visit({ onEnter: (node, indexPath) => {
19
+ if (indexPath.length === 0) return;
20
+ if (tree.isBranchNode(node) && indexPath.length <= depth) values.push(tree.getNodeValue(node));
21
+ } });
22
+ return values;
23
+ }
24
+
25
+ //#endregion
26
+ //#region src/components/json-tree-view/json-tree-view-props-context.ts
27
+ const [JsonTreeViewPropsProvider, useJsonTreeViewPropsContext] = createContext$1({
28
+ hookName: "useJsonTreeViewPropsContext",
29
+ providerName: "<JsonTreeViewPropsProvider />"
30
+ });
31
+
32
+ //#endregion
33
+ //#region src/components/json-tree-view/json-tree-view-root.tsx
34
+ const splitJsonTreeViewProps = createSplitProps();
35
+ const JsonTreeViewRoot = (props) => {
36
+ const [jsonTreeProps, localProps] = splitJsonTreeViewProps(props, [
37
+ "maxPreviewItems",
38
+ "collapseStringsAfterLength",
39
+ "quotesOnKeys",
40
+ "groupArraysAfterLength",
41
+ "showNonenumerable"
42
+ ]);
43
+ const [jsonProps, restProps] = splitProps(localProps, ["data", "defaultExpandedDepth"]);
44
+ const collection = createMemo(() => {
45
+ return createTreeCollection({
46
+ nodeToValue,
47
+ nodeToString,
48
+ rootNode: getRootNode(jsonProps.data)
49
+ });
50
+ });
51
+ const defaultExpandedValue = createMemo(() => {
52
+ return jsonProps.defaultExpandedDepth != null ? getBranchValues(collection(), jsonProps.defaultExpandedDepth) : void 0;
53
+ });
54
+ return createComponent(JsonTreeViewPropsProvider, {
55
+ value: jsonTreeProps,
56
+ get children() {
57
+ return createComponent(TreeViewRoot, mergeProps$1({
58
+ "data-scope": "json-tree-view",
59
+ get collection() {
60
+ return collection();
61
+ },
62
+ get defaultExpandedValue() {
63
+ return defaultExpandedValue();
64
+ }
65
+ }, restProps, { get children() {
66
+ return props.children;
67
+ } }));
68
+ }
69
+ });
70
+ };
71
+
72
+ //#endregion
73
+ //#region src/components/json-tree-view/json-tree-view-root-provider.tsx
74
+ const JsonTreeViewRootProvider = (props) => {
75
+ return createComponent(TreeViewRootProvider, mergeProps$1({ "data-scope": "json-tree-view" }, props));
76
+ };
77
+
78
+ //#endregion
79
+ //#region src/components/json-tree-view/json-tree-view-key-node.tsx
80
+ var _tmpl$ = /* @__PURE__ */ template(`<span data-kind=key>`), _tmpl$2 = /* @__PURE__ */ template(`<span data-kind=colon>: `);
81
+ const JsonTreeViewKeyNode = (props) => {
82
+ const key = createMemo(() => keyPathToKey(props.node.keyPath));
83
+ return [(() => {
84
+ var _el$ = _tmpl$();
85
+ insert(_el$, (() => {
86
+ var _c$ = memo(() => !!props.showQuotes);
87
+ return () => _c$() ? `"${key()}"` : key();
88
+ })());
89
+ effect(() => setAttribute(_el$, "data-non-enumerable", props.node.isNonEnumerable ? "" : void 0));
90
+ return _el$;
91
+ })(), _tmpl$2()];
92
+ };
93
+
94
+ //#endregion
95
+ //#region src/components/json-tree-view/json-tree-view-value-node.tsx
96
+ const JsonTreeViewValueNode = (props) => {
97
+ return [createComponent(Show, {
98
+ get when() {
99
+ return props.node.type === "text";
100
+ },
101
+ get children() {
102
+ return props.renderValue?.(props.node) ?? props.node.value;
103
+ }
104
+ }), createComponent(Show, {
105
+ get when() {
106
+ return props.node.type !== "text";
107
+ },
108
+ get children() {
109
+ return createComponent(Dynamic, {
110
+ get component() {
111
+ return props.node.tagName;
112
+ },
113
+ get ["data-root"]() {
114
+ return props.node.properties.root ? "" : void 0;
115
+ },
116
+ get ["data-type"]() {
117
+ return props.node.properties.nodeType;
118
+ },
119
+ get ["data-kind"]() {
120
+ return props.node.properties.kind;
121
+ },
122
+ get children() {
123
+ return createComponent(For, {
124
+ get each() {
125
+ return props.node.children;
126
+ },
127
+ children: (child) => createComponent(JsonTreeViewValueNode, {
128
+ node: child,
129
+ get renderValue() {
130
+ return props.renderValue;
131
+ }
132
+ })
133
+ });
134
+ }
135
+ });
136
+ }
137
+ })];
138
+ };
139
+
140
+ //#endregion
141
+ //#region src/components/json-tree-view/json-tree-view-node.tsx
142
+ const scopeProps = { "data-scope": "json-tree-view" };
143
+ function JsonTreeViewNode(props) {
144
+ const tree = useTreeViewContext();
145
+ const nodeState = createMemo(() => tree().getNodeState({
146
+ node: props.node,
147
+ indexPath: props.indexPath
148
+ }));
149
+ const options = useJsonTreeViewPropsContext();
150
+ const key = createMemo(() => keyPathToKey(props.node.keyPath, { excludeRoot: true }));
151
+ const valueNode = createMemo(() => jsonNodeToElement(props.node, options));
152
+ const nodeProps = createMemo(() => {
153
+ const desc = getAccessibleDescription(props.node);
154
+ const line = props.indexPath.reduce((acc, curr) => acc + curr, 1);
155
+ const lineLength = props.indexPath.length - 1;
156
+ return {
157
+ ...scopeProps,
158
+ "aria-label": desc,
159
+ "data-line": line,
160
+ style: { ["--line-length"]: lineLength }
161
+ };
162
+ });
163
+ return createComponent(TreeViewNodeProvider, {
164
+ get node() {
165
+ return props.node;
166
+ },
167
+ get indexPath() {
168
+ return props.indexPath;
169
+ },
170
+ get children() {
171
+ return createComponent(Show, {
172
+ get when() {
173
+ return nodeState().isBranch;
174
+ },
175
+ get fallback() {
176
+ return createComponent(TreeViewItem, mergeProps$1(nodeProps, { get children() {
177
+ return createComponent(TreeViewItemText, mergeProps$1(scopeProps, { get children() {
178
+ return [createComponent(Show, {
179
+ get when() {
180
+ return key();
181
+ },
182
+ get children() {
183
+ return createComponent(JsonTreeViewKeyNode, {
184
+ get node() {
185
+ return props.node;
186
+ },
187
+ get showQuotes() {
188
+ return options.quotesOnKeys;
189
+ }
190
+ });
191
+ }
192
+ }), createComponent(JsonTreeViewValueNode, {
193
+ get node() {
194
+ return valueNode();
195
+ },
196
+ get renderValue() {
197
+ return props.renderValue;
198
+ }
199
+ })];
200
+ } }));
201
+ } }));
202
+ },
203
+ get children() {
204
+ return createComponent(TreeViewBranch, mergeProps$1(scopeProps, { get children() {
205
+ return [createComponent(TreeViewBranchControl, mergeProps$1(nodeProps, { get children() {
206
+ return [createComponent(Show, {
207
+ get when() {
208
+ return props.arrow;
209
+ },
210
+ get children() {
211
+ return createComponent(TreeViewBranchIndicator, mergeProps$1(scopeProps, { get children() {
212
+ return props.arrow;
213
+ } }));
214
+ }
215
+ }), createComponent(TreeViewBranchText, mergeProps$1(scopeProps, { get children() {
216
+ return [createComponent(Show, {
217
+ get when() {
218
+ return key();
219
+ },
220
+ get children() {
221
+ return createComponent(JsonTreeViewKeyNode, {
222
+ get node() {
223
+ return props.node;
224
+ },
225
+ get showQuotes() {
226
+ return options.quotesOnKeys;
227
+ }
228
+ });
229
+ }
230
+ }), createComponent(JsonTreeViewValueNode, {
231
+ get node() {
232
+ return valueNode();
233
+ },
234
+ get renderValue() {
235
+ return props.renderValue;
236
+ }
237
+ })];
238
+ } }))];
239
+ } })), createComponent(TreeViewBranchContent, mergeProps$1(scopeProps, { get children() {
240
+ return [createComponent(Show, {
241
+ get when() {
242
+ return typeof props.indentGuide === "boolean";
243
+ },
244
+ get fallback() {
245
+ return props.indentGuide;
246
+ },
247
+ get children() {
248
+ return createComponent(TreeViewBranchIndentGuide, {});
249
+ }
250
+ }), createComponent(Index, {
251
+ get each() {
252
+ return props.node.children;
253
+ },
254
+ children: (child, index) => createComponent(JsonTreeViewNode, mergeProps$1(props, {
255
+ get node() {
256
+ return child();
257
+ },
258
+ get indexPath() {
259
+ return [...props.indexPath, index];
260
+ }
261
+ }))
262
+ })];
263
+ } }))];
264
+ } }));
265
+ }
266
+ });
267
+ }
268
+ });
269
+ }
270
+
271
+ //#endregion
272
+ //#region src/components/json-tree-view/json-tree-view-tree.tsx
273
+ const splitTreeNodeProps = createSplitProps();
274
+ const JsonTreeViewTree = (props) => {
275
+ const [nodeProps, treeProps] = splitTreeNodeProps(props, [
276
+ "arrow",
277
+ "indentGuide",
278
+ "renderValue"
279
+ ]);
280
+ const tree = useTreeViewContext();
281
+ const children$1 = () => tree().collection.getNodeChildren(tree().collection.rootNode);
282
+ return createComponent(TreeViewTree, mergeProps$1({ "data-scope": "json-tree-view" }, treeProps, { get children() {
283
+ return createComponent(Index, {
284
+ get each() {
285
+ return children$1();
286
+ },
287
+ children: (child, index) => createComponent(JsonTreeViewNode, mergeProps$1({
288
+ get node() {
289
+ return child();
290
+ },
291
+ indexPath: [index]
292
+ }, nodeProps))
293
+ });
294
+ } }));
295
+ };
296
+
297
+ //#endregion
298
+ //#region src/components/json-tree-view/use-json-tree-view.ts
299
+ const useJsonTreeView = (props) => {
300
+ const [jsonProps, restProps] = splitProps(props, ["data", "defaultExpandedDepth"]);
301
+ const collection = createMemo(() => {
302
+ return createTreeCollection({
303
+ nodeToValue,
304
+ nodeToString,
305
+ rootNode: getRootNode(jsonProps.data)
306
+ });
307
+ });
308
+ const defaultExpandedValue = createMemo(() => {
309
+ return jsonProps.defaultExpandedDepth != null ? getBranchValues(collection(), jsonProps.defaultExpandedDepth) : void 0;
310
+ });
311
+ return useTreeView(createMemo(() => {
312
+ return {
313
+ defaultExpandedValue: untrack$1(defaultExpandedValue),
314
+ ...restProps,
315
+ collection: collection(),
316
+ typeahead: false
317
+ };
318
+ }));
319
+ };
320
+
321
+ //#endregion
322
+ //#region src/components/json-tree-view/json-tree-view.tsx
323
+ var json_tree_view_exports = /* @__PURE__ */ __export({
324
+ Root: () => JsonTreeViewRoot,
325
+ RootProvider: () => JsonTreeViewRootProvider,
326
+ Tree: () => JsonTreeViewTree
327
+ });
328
+
329
+ //#endregion
330
+ export { json_tree_view_exports as JsonTreeView, JsonTreeViewRoot, JsonTreeViewRootProvider, JsonTreeViewTree, useJsonTreeView };