@sprawlify/solid 0.0.15 → 0.0.16
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.
- package/dist/{collapsible-Cg7zPadX.js → collapsible-CX2tnXKq.js} +8 -6
- package/dist/{collapsible-CjuC6xYl.jsx → collapsible-sG-Rzvf2.jsx} +8 -6
- package/dist/{collection-BlnS2UQy.jsx → collection-BRr4O2_i.jsx} +2 -1
- package/dist/{collection-BiyRTWsX.js → collection-zj3lxnwW.js} +2 -1
- package/dist/components/accordion/index.d.ts +11 -11
- package/dist/components/accordion/index.js +9 -7
- package/dist/components/accordion/index.jsx +9 -7
- package/dist/components/angle-slider/index.d.ts +13 -13
- package/dist/components/angle-slider/index.js +7 -5
- package/dist/components/angle-slider/index.jsx +7 -5
- package/dist/components/avatar/index.d.ts +8 -8
- package/dist/components/avatar/index.js +7 -5
- package/dist/components/avatar/index.jsx +7 -5
- package/dist/components/bottom-sheet/index.d.ts +13 -13
- package/dist/components/bottom-sheet/index.js +10 -8
- package/dist/components/bottom-sheet/index.jsx +10 -8
- package/dist/components/carousel/index.d.ts +17 -17
- package/dist/components/carousel/index.js +7 -5
- package/dist/components/carousel/index.jsx +7 -5
- package/dist/components/checkbox/index.d.ts +14 -14
- package/dist/components/checkbox/index.js +10 -8
- package/dist/components/checkbox/index.jsx +10 -8
- package/dist/components/clipboard/index.d.ts +11 -11
- package/dist/components/clipboard/index.js +7 -5
- package/dist/components/clipboard/index.jsx +7 -5
- package/dist/components/collapsible/index.d.ts +10 -10
- package/dist/components/collapsible/index.js +7 -6
- package/dist/components/collapsible/index.jsx +7 -6
- package/dist/components/collection/index.d.ts +2 -2
- package/dist/components/collection/index.js +2 -2
- package/dist/components/collection/index.jsx +2 -2
- package/dist/components/color-picker/index.d.ts +183 -0
- package/dist/components/color-picker/index.js +500 -0
- package/dist/components/color-picker/index.jsx +436 -0
- package/dist/components/combobox/index.d.ts +134 -0
- package/dist/components/combobox/index.js +357 -0
- package/dist/components/combobox/index.jsx +315 -0
- package/dist/components/date-picker/index.d.ts +165 -0
- package/dist/components/date-picker/index.js +476 -0
- package/dist/components/date-picker/index.jsx +415 -0
- package/dist/components/dialog/index.d.ts +80 -0
- package/dist/components/dialog/index.js +219 -0
- package/dist/components/dialog/index.jsx +173 -0
- package/dist/components/download-trigger/index.d.ts +25 -0
- package/dist/components/download-trigger/index.js +42 -0
- package/dist/components/download-trigger/index.jsx +38 -0
- package/dist/components/editable/index.d.ts +79 -0
- package/dist/components/editable/index.js +190 -0
- package/dist/components/editable/index.jsx +181 -0
- package/dist/components/field/index.d.ts +14 -14
- package/dist/components/field/index.js +8 -7
- package/dist/components/field/index.jsx +8 -7
- package/dist/components/fieldset/index.d.ts +12 -12
- package/dist/components/fieldset/index.js +7 -6
- package/dist/components/fieldset/index.jsx +7 -6
- package/dist/components/highlight/index.d.ts +15 -0
- package/dist/components/highlight/index.js +47 -0
- package/dist/components/highlight/index.jsx +31 -0
- package/dist/components/presence/index.d.ts +4 -4
- package/dist/components/presence/index.js +7 -6
- package/dist/components/presence/index.jsx +7 -6
- package/dist/components/select/index.d.ts +22 -22
- package/dist/components/select/index.js +13 -11
- package/dist/components/select/index.jsx +13 -11
- package/dist/{run-if-fn-eYlaegHy.js → core-DbInRfhI.jsx} +1 -6
- package/dist/{run-if-fn-DRWB51JE.jsx → core-oNB2jGcl.js} +1 -6
- package/dist/create-split-props-B8A7_AF7.jsx +7 -0
- package/dist/create-split-props-pQu7jijw.js +7 -0
- package/dist/{factory-B6RK6SH4.d.ts → factory-4A25bngy.d.ts} +1 -1
- package/dist/{create-split-props-CQVsvhvg.jsx → factory-Ch5jgk20.jsx} +2 -6
- package/dist/{factory-CEdj72aS.js → factory-PGDAvOKb.js} +2 -6
- package/dist/{field-CphvciGc.jsx → field-BRr9Zdes.jsx} +8 -7
- package/dist/{field-C_WuoXOj.js → field-CoYiA2ek.js} +8 -7
- package/dist/{fieldset-BG-0ZqWT.jsx → fieldset-B_LyllEa.jsx} +8 -6
- package/dist/{fieldset-D1BO0LmU.js → fieldset-BrJqMLEd.js} +8 -6
- package/dist/{index-DXheKbqg.d.ts → index-GEfvAmRc.d.ts} +1 -1
- package/dist/{index-NWiNyxpL.d.ts → index-j2avJy7D.d.ts} +8 -8
- package/dist/{index-vSwYtc2L.d.ts → index-oc8gLl07.d.ts} +4 -4
- package/dist/index.d.ts +5 -5
- package/dist/index.js +4 -4
- package/dist/index.jsx +4 -4
- package/dist/{presence-arWh1hVd.jsx → presence-Bmn43U_q.jsx} +7 -5
- package/dist/{presence-Bfjusgm3.js → presence-BpwBRlZW.js} +7 -5
- package/dist/{providers-CQkAUunr.js → providers-Bo0OFe08.js} +2 -2
- package/dist/{providers-CHqGPEsc.jsx → providers-DFaRRd80.jsx} +2 -2
- package/dist/{render-strategy-CZDG_yDi.jsx → render-strategy-CdJhRv3I.jsx} +2 -2
- package/dist/{render-strategy-COrlrUuR.js → render-strategy-DFlz7Uc4.js} +2 -2
- package/dist/run-if-fn-A3VwXy-o.jsx +6 -0
- package/dist/run-if-fn-D5794CxE.js +6 -0
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/index.js +2 -2
- package/dist/utils/index.jsx +2 -2
- package/package.json +42 -2
- /package/dist/{chunk-C4aQI7lE.jsx → chunk-B5so6B0y.jsx} +0 -0
- /package/dist/{chunk-CKcAJnC7.js → chunk-B93cd-Dz.js} +0 -0
- /package/dist/{compose-refs-CzyOb8yH.jsx → compose-refs-BVVIB7xn.js} +0 -0
- /package/dist/{compose-refs-vsrTrt13.js → compose-refs-icUeuyHm.jsx} +0 -0
- /package/dist/{create-context-PS2j4mEo.js → create-context-C3rvZvkc.jsx} +0 -0
- /package/dist/{create-context-h3cXiEld.jsx → create-context-GfQ_MylE.js} +0 -0
- /package/dist/{index-B0YoIRC4.d.ts → index-B6dBCfnB.d.ts} +0 -0
- /package/dist/{index-C3ATynHc.d.ts → index-C7N791Fc.d.ts} +0 -0
- /package/dist/{render-strategy-CtRkdWei.d.ts → render-strategy-BNECKEQk.d.ts} +0 -0
- /package/dist/{types-bQRbEioA.d.ts → types-Dbw4va3W.d.ts} +0 -0
- /package/dist/{utils-DYer-9SY.js → utils-DQi-Cen5.js} +0 -0
- /package/dist/{utils-DrvO4Hk3.jsx → utils-vSjszv0W.jsx} +0 -0
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
import { t as __export } from "../../chunk-B93cd-Dz.js";
|
|
2
|
+
import { i as useMachine, n as normalizeProps, r as mergeProps$2 } from "../../core-oNB2jGcl.js";
|
|
3
|
+
import { t as runIfFn } from "../../run-if-fn-D5794CxE.js";
|
|
4
|
+
import { t as createContext$1 } from "../../create-context-GfQ_MylE.js";
|
|
5
|
+
import { i as useLocaleContext, o as useEnvironmentContext } from "../../providers-Bo0OFe08.js";
|
|
6
|
+
import { t as createSplitProps } from "../../create-split-props-pQu7jijw.js";
|
|
7
|
+
import { n as splitRenderStrategyProps, r as useRenderStrategyContext, t as RenderStrategyProvider } from "../../render-strategy-DFlz7Uc4.js";
|
|
8
|
+
import { t as sprawlify } from "../../factory-PGDAvOKb.js";
|
|
9
|
+
import { t as composeRefs } from "../../compose-refs-BVVIB7xn.js";
|
|
10
|
+
import { a as splitPresenceProps, i as usePresence, n as usePresenceContext, t as PresenceProvider } from "../../presence-BpwBRlZW.js";
|
|
11
|
+
import { Show, createMemo, createUniqueId } from "solid-js";
|
|
12
|
+
import { createComponent, mergeProps as mergeProps$1 } from "solid-js/web";
|
|
13
|
+
import * as dialog from "@sprawlify/primitives/machines/dialog";
|
|
14
|
+
import { anatomy as dialogAnatomy } from "@sprawlify/primitives/machines/dialog";
|
|
15
|
+
|
|
16
|
+
//#region src/components/dialog/use-dialog-context.ts
|
|
17
|
+
const [DialogProvider, useDialogContext] = createContext$1({
|
|
18
|
+
hookName: "useDialogContext",
|
|
19
|
+
providerName: "<DialogProvider />"
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
//#endregion
|
|
23
|
+
//#region src/components/dialog/dialog-backdrop.tsx
|
|
24
|
+
const DialogBackdrop = (props) => {
|
|
25
|
+
const api = useDialogContext();
|
|
26
|
+
const presenceApi = usePresence(mergeProps$2(useRenderStrategyContext(), () => ({ present: api().open })));
|
|
27
|
+
const mergedProps = mergeProps$2(() => api().getBackdropProps(), () => presenceApi().presenceProps, props);
|
|
28
|
+
return createComponent(Show, {
|
|
29
|
+
get when() {
|
|
30
|
+
return !presenceApi().unmounted;
|
|
31
|
+
},
|
|
32
|
+
get children() {
|
|
33
|
+
return createComponent(sprawlify.div, mergeProps$1(mergedProps, { ref(r$) {
|
|
34
|
+
var _ref$ = composeRefs(presenceApi().ref, props.ref);
|
|
35
|
+
typeof _ref$ === "function" && _ref$(r$);
|
|
36
|
+
} }));
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
//#endregion
|
|
42
|
+
//#region src/components/dialog/dialog-close-trigger.tsx
|
|
43
|
+
const DialogCloseTrigger = (props) => {
|
|
44
|
+
const dialog$1 = useDialogContext();
|
|
45
|
+
const mergedProps = mergeProps$2(() => dialog$1().getCloseTriggerProps(), props);
|
|
46
|
+
return createComponent(sprawlify.button, mergedProps);
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
//#endregion
|
|
50
|
+
//#region src/components/dialog/dialog-content.tsx
|
|
51
|
+
const DialogContent = (props) => {
|
|
52
|
+
const api = useDialogContext();
|
|
53
|
+
const presenceApi = usePresenceContext();
|
|
54
|
+
const mergedProps = mergeProps$2(() => api().getContentProps(), () => presenceApi().presenceProps, props);
|
|
55
|
+
return createComponent(Show, {
|
|
56
|
+
get when() {
|
|
57
|
+
return !presenceApi().unmounted;
|
|
58
|
+
},
|
|
59
|
+
get children() {
|
|
60
|
+
return createComponent(sprawlify.div, mergeProps$1(mergedProps, { ref(r$) {
|
|
61
|
+
var _ref$ = composeRefs(presenceApi().ref, props.ref);
|
|
62
|
+
typeof _ref$ === "function" && _ref$(r$);
|
|
63
|
+
} }));
|
|
64
|
+
}
|
|
65
|
+
});
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
//#endregion
|
|
69
|
+
//#region src/components/dialog/dialog-context.tsx
|
|
70
|
+
const DialogContext = (props) => props.children(useDialogContext());
|
|
71
|
+
|
|
72
|
+
//#endregion
|
|
73
|
+
//#region src/components/dialog/dialog-description.tsx
|
|
74
|
+
const DialogDescription = (props) => {
|
|
75
|
+
const dialog$1 = useDialogContext();
|
|
76
|
+
const mergedProps = mergeProps$2(() => dialog$1().getDescriptionProps(), props);
|
|
77
|
+
return createComponent(sprawlify.div, mergedProps);
|
|
78
|
+
};
|
|
79
|
+
|
|
80
|
+
//#endregion
|
|
81
|
+
//#region src/components/dialog/dialog-positioner.tsx
|
|
82
|
+
const DialogPositioner = (props) => {
|
|
83
|
+
const api = useDialogContext();
|
|
84
|
+
const presenceApi = usePresenceContext();
|
|
85
|
+
const mergedProps = mergeProps$2(() => api().getPositionerProps(), props);
|
|
86
|
+
return createComponent(Show, {
|
|
87
|
+
get when() {
|
|
88
|
+
return !presenceApi().unmounted;
|
|
89
|
+
},
|
|
90
|
+
get children() {
|
|
91
|
+
return createComponent(sprawlify.div, mergedProps);
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
};
|
|
95
|
+
|
|
96
|
+
//#endregion
|
|
97
|
+
//#region src/components/dialog/use-dialog.ts
|
|
98
|
+
const useDialog = (props) => {
|
|
99
|
+
const id = createUniqueId();
|
|
100
|
+
const locale = useLocaleContext();
|
|
101
|
+
const environment = useEnvironmentContext();
|
|
102
|
+
const machineProps = createMemo(() => ({
|
|
103
|
+
id,
|
|
104
|
+
dir: locale().dir,
|
|
105
|
+
getRootNode: environment().getRootNode,
|
|
106
|
+
...runIfFn(props)
|
|
107
|
+
}));
|
|
108
|
+
const service = useMachine(dialog.machine, machineProps);
|
|
109
|
+
return createMemo(() => dialog.connect(service, normalizeProps));
|
|
110
|
+
};
|
|
111
|
+
|
|
112
|
+
//#endregion
|
|
113
|
+
//#region src/components/dialog/dialog-root.tsx
|
|
114
|
+
const DialogRoot = (props) => {
|
|
115
|
+
const [presenceProps, dialogProps] = splitPresenceProps(props);
|
|
116
|
+
const [renderStrategyProps] = splitRenderStrategyProps(presenceProps);
|
|
117
|
+
const [useDialogProps, localProps] = createSplitProps()(dialogProps, [
|
|
118
|
+
"aria-label",
|
|
119
|
+
"closeOnEscape",
|
|
120
|
+
"closeOnInteractOutside",
|
|
121
|
+
"defaultOpen",
|
|
122
|
+
"finalFocusEl",
|
|
123
|
+
"id",
|
|
124
|
+
"ids",
|
|
125
|
+
"initialFocusEl",
|
|
126
|
+
"modal",
|
|
127
|
+
"onEscapeKeyDown",
|
|
128
|
+
"onFocusOutside",
|
|
129
|
+
"onInteractOutside",
|
|
130
|
+
"onOpenChange",
|
|
131
|
+
"onPointerDownOutside",
|
|
132
|
+
"onRequestDismiss",
|
|
133
|
+
"open",
|
|
134
|
+
"persistentElements",
|
|
135
|
+
"preventScroll",
|
|
136
|
+
"restoreFocus",
|
|
137
|
+
"role",
|
|
138
|
+
"trapFocus"
|
|
139
|
+
]);
|
|
140
|
+
const api = useDialog(useDialogProps);
|
|
141
|
+
const apiPresence = usePresence(mergeProps$2(presenceProps, () => ({ present: api().open })));
|
|
142
|
+
return createComponent(DialogProvider, {
|
|
143
|
+
value: api,
|
|
144
|
+
get children() {
|
|
145
|
+
return createComponent(RenderStrategyProvider, {
|
|
146
|
+
value: renderStrategyProps,
|
|
147
|
+
get children() {
|
|
148
|
+
return createComponent(PresenceProvider, {
|
|
149
|
+
value: apiPresence,
|
|
150
|
+
get children() {
|
|
151
|
+
return localProps.children;
|
|
152
|
+
}
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
});
|
|
158
|
+
};
|
|
159
|
+
|
|
160
|
+
//#endregion
|
|
161
|
+
//#region src/components/dialog/dialog-root-provider.tsx
|
|
162
|
+
const DialogRootProvider = (props) => {
|
|
163
|
+
const [presenceProps, dialogProps] = splitPresenceProps(props);
|
|
164
|
+
const [renderStrategyProps] = splitRenderStrategyProps(presenceProps);
|
|
165
|
+
const apiPresence = usePresence(mergeProps$2(presenceProps, () => ({ present: dialogProps.value().open })));
|
|
166
|
+
return createComponent(DialogProvider, {
|
|
167
|
+
get value() {
|
|
168
|
+
return dialogProps.value;
|
|
169
|
+
},
|
|
170
|
+
get children() {
|
|
171
|
+
return createComponent(RenderStrategyProvider, {
|
|
172
|
+
value: renderStrategyProps,
|
|
173
|
+
get children() {
|
|
174
|
+
return createComponent(PresenceProvider, {
|
|
175
|
+
value: apiPresence,
|
|
176
|
+
get children() {
|
|
177
|
+
return dialogProps.children;
|
|
178
|
+
}
|
|
179
|
+
});
|
|
180
|
+
}
|
|
181
|
+
});
|
|
182
|
+
}
|
|
183
|
+
});
|
|
184
|
+
};
|
|
185
|
+
|
|
186
|
+
//#endregion
|
|
187
|
+
//#region src/components/dialog/dialog-title.tsx
|
|
188
|
+
const DialogTitle = (props) => {
|
|
189
|
+
const dialog$1 = useDialogContext();
|
|
190
|
+
const mergedProps = mergeProps$2(() => dialog$1().getTitleProps(), props);
|
|
191
|
+
return createComponent(sprawlify.h2, mergedProps);
|
|
192
|
+
};
|
|
193
|
+
|
|
194
|
+
//#endregion
|
|
195
|
+
//#region src/components/dialog/dialog-trigger.tsx
|
|
196
|
+
const DialogTrigger = (props) => {
|
|
197
|
+
const api = useDialogContext();
|
|
198
|
+
const presenceApi = usePresenceContext();
|
|
199
|
+
const mergedProps = mergeProps$2(() => api().getTriggerProps(), () => ({ "aria-controls": presenceApi().unmounted && null }), props);
|
|
200
|
+
return createComponent(sprawlify.button, mergedProps);
|
|
201
|
+
};
|
|
202
|
+
|
|
203
|
+
//#endregion
|
|
204
|
+
//#region src/components/dialog/dialog.ts
|
|
205
|
+
var dialog_exports = /* @__PURE__ */ __export({
|
|
206
|
+
Backdrop: () => DialogBackdrop,
|
|
207
|
+
CloseTrigger: () => DialogCloseTrigger,
|
|
208
|
+
Content: () => DialogContent,
|
|
209
|
+
Context: () => DialogContext,
|
|
210
|
+
Description: () => DialogDescription,
|
|
211
|
+
Positioner: () => DialogPositioner,
|
|
212
|
+
Root: () => DialogRoot,
|
|
213
|
+
RootProvider: () => DialogRootProvider,
|
|
214
|
+
Title: () => DialogTitle,
|
|
215
|
+
Trigger: () => DialogTrigger
|
|
216
|
+
});
|
|
217
|
+
|
|
218
|
+
//#endregion
|
|
219
|
+
export { dialog_exports as Dialog, DialogBackdrop, DialogCloseTrigger, DialogContent, DialogContext, DialogDescription, DialogPositioner, DialogRoot, DialogRootProvider, DialogTitle, DialogTrigger, dialogAnatomy, useDialog, useDialogContext };
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
import { t as __export } from "../../chunk-B5so6B0y.jsx";
|
|
2
|
+
import { i as useMachine, n as normalizeProps, r as mergeProps$1 } from "../../core-DbInRfhI.jsx";
|
|
3
|
+
import { t as runIfFn } from "../../run-if-fn-A3VwXy-o.jsx";
|
|
4
|
+
import { t as createContext$1 } from "../../create-context-C3rvZvkc.jsx";
|
|
5
|
+
import { i as useLocaleContext, o as useEnvironmentContext } from "../../providers-DFaRRd80.jsx";
|
|
6
|
+
import { t as createSplitProps } from "../../create-split-props-B8A7_AF7.jsx";
|
|
7
|
+
import { n as splitRenderStrategyProps, r as useRenderStrategyContext, t as RenderStrategyProvider } from "../../render-strategy-CdJhRv3I.jsx";
|
|
8
|
+
import { t as sprawlify } from "../../factory-Ch5jgk20.jsx";
|
|
9
|
+
import { t as composeRefs } from "../../compose-refs-icUeuyHm.jsx";
|
|
10
|
+
import { a as splitPresenceProps, i as usePresence, n as usePresenceContext, t as PresenceProvider } from "../../presence-Bmn43U_q.jsx";
|
|
11
|
+
import { Show, createMemo, createUniqueId } from "solid-js";
|
|
12
|
+
import * as dialog from "@sprawlify/primitives/machines/dialog";
|
|
13
|
+
import { anatomy as dialogAnatomy } from "@sprawlify/primitives/machines/dialog";
|
|
14
|
+
|
|
15
|
+
//#region src/components/dialog/use-dialog-context.ts
|
|
16
|
+
const [DialogProvider, useDialogContext] = createContext$1({
|
|
17
|
+
hookName: "useDialogContext",
|
|
18
|
+
providerName: "<DialogProvider />"
|
|
19
|
+
});
|
|
20
|
+
|
|
21
|
+
//#endregion
|
|
22
|
+
//#region src/components/dialog/dialog-backdrop.tsx
|
|
23
|
+
const DialogBackdrop = (props) => {
|
|
24
|
+
const api = useDialogContext();
|
|
25
|
+
const presenceApi = usePresence(mergeProps$1(useRenderStrategyContext(), () => ({ present: api().open })));
|
|
26
|
+
const mergedProps = mergeProps$1(() => api().getBackdropProps(), () => presenceApi().presenceProps, props);
|
|
27
|
+
return <Show when={!presenceApi().unmounted}>
|
|
28
|
+
<sprawlify.div {...mergedProps} ref={composeRefs(presenceApi().ref, props.ref)} />
|
|
29
|
+
</Show>;
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
//#endregion
|
|
33
|
+
//#region src/components/dialog/dialog-close-trigger.tsx
|
|
34
|
+
const DialogCloseTrigger = (props) => {
|
|
35
|
+
const dialog$1 = useDialogContext();
|
|
36
|
+
const mergedProps = mergeProps$1(() => dialog$1().getCloseTriggerProps(), props);
|
|
37
|
+
return <sprawlify.button {...mergedProps} />;
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
//#endregion
|
|
41
|
+
//#region src/components/dialog/dialog-content.tsx
|
|
42
|
+
const DialogContent = (props) => {
|
|
43
|
+
const api = useDialogContext();
|
|
44
|
+
const presenceApi = usePresenceContext();
|
|
45
|
+
const mergedProps = mergeProps$1(() => api().getContentProps(), () => presenceApi().presenceProps, props);
|
|
46
|
+
return <Show when={!presenceApi().unmounted}>
|
|
47
|
+
<sprawlify.div {...mergedProps} ref={composeRefs(presenceApi().ref, props.ref)} />
|
|
48
|
+
</Show>;
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
//#endregion
|
|
52
|
+
//#region src/components/dialog/dialog-context.tsx
|
|
53
|
+
const DialogContext = (props) => props.children(useDialogContext());
|
|
54
|
+
|
|
55
|
+
//#endregion
|
|
56
|
+
//#region src/components/dialog/dialog-description.tsx
|
|
57
|
+
const DialogDescription = (props) => {
|
|
58
|
+
const dialog$1 = useDialogContext();
|
|
59
|
+
const mergedProps = mergeProps$1(() => dialog$1().getDescriptionProps(), props);
|
|
60
|
+
return <sprawlify.div {...mergedProps} />;
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
//#endregion
|
|
64
|
+
//#region src/components/dialog/dialog-positioner.tsx
|
|
65
|
+
const DialogPositioner = (props) => {
|
|
66
|
+
const api = useDialogContext();
|
|
67
|
+
const presenceApi = usePresenceContext();
|
|
68
|
+
const mergedProps = mergeProps$1(() => api().getPositionerProps(), props);
|
|
69
|
+
return <Show when={!presenceApi().unmounted}>
|
|
70
|
+
<sprawlify.div {...mergedProps} />
|
|
71
|
+
</Show>;
|
|
72
|
+
};
|
|
73
|
+
|
|
74
|
+
//#endregion
|
|
75
|
+
//#region src/components/dialog/use-dialog.ts
|
|
76
|
+
const useDialog = (props) => {
|
|
77
|
+
const id = createUniqueId();
|
|
78
|
+
const locale = useLocaleContext();
|
|
79
|
+
const environment = useEnvironmentContext();
|
|
80
|
+
const machineProps = createMemo(() => ({
|
|
81
|
+
id,
|
|
82
|
+
dir: locale().dir,
|
|
83
|
+
getRootNode: environment().getRootNode,
|
|
84
|
+
...runIfFn(props)
|
|
85
|
+
}));
|
|
86
|
+
const service = useMachine(dialog.machine, machineProps);
|
|
87
|
+
return createMemo(() => dialog.connect(service, normalizeProps));
|
|
88
|
+
};
|
|
89
|
+
|
|
90
|
+
//#endregion
|
|
91
|
+
//#region src/components/dialog/dialog-root.tsx
|
|
92
|
+
const DialogRoot = (props) => {
|
|
93
|
+
const [presenceProps, dialogProps] = splitPresenceProps(props);
|
|
94
|
+
const [renderStrategyProps] = splitRenderStrategyProps(presenceProps);
|
|
95
|
+
const [useDialogProps, localProps] = createSplitProps()(dialogProps, [
|
|
96
|
+
"aria-label",
|
|
97
|
+
"closeOnEscape",
|
|
98
|
+
"closeOnInteractOutside",
|
|
99
|
+
"defaultOpen",
|
|
100
|
+
"finalFocusEl",
|
|
101
|
+
"id",
|
|
102
|
+
"ids",
|
|
103
|
+
"initialFocusEl",
|
|
104
|
+
"modal",
|
|
105
|
+
"onEscapeKeyDown",
|
|
106
|
+
"onFocusOutside",
|
|
107
|
+
"onInteractOutside",
|
|
108
|
+
"onOpenChange",
|
|
109
|
+
"onPointerDownOutside",
|
|
110
|
+
"onRequestDismiss",
|
|
111
|
+
"open",
|
|
112
|
+
"persistentElements",
|
|
113
|
+
"preventScroll",
|
|
114
|
+
"restoreFocus",
|
|
115
|
+
"role",
|
|
116
|
+
"trapFocus"
|
|
117
|
+
]);
|
|
118
|
+
const api = useDialog(useDialogProps);
|
|
119
|
+
const apiPresence = usePresence(mergeProps$1(presenceProps, () => ({ present: api().open })));
|
|
120
|
+
return <DialogProvider value={api}>
|
|
121
|
+
<RenderStrategyProvider value={renderStrategyProps}>
|
|
122
|
+
<PresenceProvider value={apiPresence}>{localProps.children}</PresenceProvider>
|
|
123
|
+
</RenderStrategyProvider>
|
|
124
|
+
</DialogProvider>;
|
|
125
|
+
};
|
|
126
|
+
|
|
127
|
+
//#endregion
|
|
128
|
+
//#region src/components/dialog/dialog-root-provider.tsx
|
|
129
|
+
const DialogRootProvider = (props) => {
|
|
130
|
+
const [presenceProps, dialogProps] = splitPresenceProps(props);
|
|
131
|
+
const [renderStrategyProps] = splitRenderStrategyProps(presenceProps);
|
|
132
|
+
const apiPresence = usePresence(mergeProps$1(presenceProps, () => ({ present: dialogProps.value().open })));
|
|
133
|
+
return <DialogProvider value={dialogProps.value}>
|
|
134
|
+
<RenderStrategyProvider value={renderStrategyProps}>
|
|
135
|
+
<PresenceProvider value={apiPresence}>{dialogProps.children}</PresenceProvider>
|
|
136
|
+
</RenderStrategyProvider>
|
|
137
|
+
</DialogProvider>;
|
|
138
|
+
};
|
|
139
|
+
|
|
140
|
+
//#endregion
|
|
141
|
+
//#region src/components/dialog/dialog-title.tsx
|
|
142
|
+
const DialogTitle = (props) => {
|
|
143
|
+
const dialog$1 = useDialogContext();
|
|
144
|
+
const mergedProps = mergeProps$1(() => dialog$1().getTitleProps(), props);
|
|
145
|
+
return <sprawlify.h2 {...mergedProps} />;
|
|
146
|
+
};
|
|
147
|
+
|
|
148
|
+
//#endregion
|
|
149
|
+
//#region src/components/dialog/dialog-trigger.tsx
|
|
150
|
+
const DialogTrigger = (props) => {
|
|
151
|
+
const api = useDialogContext();
|
|
152
|
+
const presenceApi = usePresenceContext();
|
|
153
|
+
const mergedProps = mergeProps$1(() => api().getTriggerProps(), () => ({ "aria-controls": presenceApi().unmounted && null }), props);
|
|
154
|
+
return <sprawlify.button {...mergedProps} />;
|
|
155
|
+
};
|
|
156
|
+
|
|
157
|
+
//#endregion
|
|
158
|
+
//#region src/components/dialog/dialog.ts
|
|
159
|
+
var dialog_exports = /* @__PURE__ */ __export({
|
|
160
|
+
Backdrop: () => DialogBackdrop,
|
|
161
|
+
CloseTrigger: () => DialogCloseTrigger,
|
|
162
|
+
Content: () => DialogContent,
|
|
163
|
+
Context: () => DialogContext,
|
|
164
|
+
Description: () => DialogDescription,
|
|
165
|
+
Positioner: () => DialogPositioner,
|
|
166
|
+
Root: () => DialogRoot,
|
|
167
|
+
RootProvider: () => DialogRootProvider,
|
|
168
|
+
Title: () => DialogTitle,
|
|
169
|
+
Trigger: () => DialogTrigger
|
|
170
|
+
});
|
|
171
|
+
|
|
172
|
+
//#endregion
|
|
173
|
+
export { dialog_exports as Dialog, DialogBackdrop, DialogCloseTrigger, DialogContent, DialogContext, DialogDescription, DialogPositioner, DialogRoot, DialogRootProvider, DialogTitle, DialogTrigger, dialogAnatomy, useDialog, useDialogContext };
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { r as MaybePromise } from "../../types-Dbw4va3W.js";
|
|
2
|
+
import { n as PolymorphicProps, t as HTMLProps } from "../../factory-4A25bngy.js";
|
|
3
|
+
import { JSX } from "solid-js";
|
|
4
|
+
import { FileMimeType } from "@zag-js/file-utils";
|
|
5
|
+
|
|
6
|
+
//#region src/components/download-trigger/download-trigger.d.ts
|
|
7
|
+
type DownloadableData = string | Blob | File;
|
|
8
|
+
interface DownloadTriggerBaseProps extends PolymorphicProps<'button'> {
|
|
9
|
+
/**
|
|
10
|
+
* The name of the file to download
|
|
11
|
+
*/
|
|
12
|
+
fileName: string;
|
|
13
|
+
/**
|
|
14
|
+
* The data to download
|
|
15
|
+
*/
|
|
16
|
+
data: DownloadableData | (() => MaybePromise<DownloadableData>);
|
|
17
|
+
/**
|
|
18
|
+
* The MIME type of the data to download
|
|
19
|
+
*/
|
|
20
|
+
mimeType: FileMimeType;
|
|
21
|
+
}
|
|
22
|
+
interface DownloadTriggerProps extends HTMLProps<'button'>, DownloadTriggerBaseProps {}
|
|
23
|
+
declare function DownloadTrigger(props: DownloadTriggerProps): JSX.Element;
|
|
24
|
+
//#endregion
|
|
25
|
+
export { DownloadTrigger, type DownloadTriggerBaseProps, type DownloadTriggerProps };
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import "../../core-oNB2jGcl.js";
|
|
2
|
+
import "../../create-context-GfQ_MylE.js";
|
|
3
|
+
import { o as useEnvironmentContext } from "../../providers-Bo0OFe08.js";
|
|
4
|
+
import { t as sprawlify } from "../../factory-PGDAvOKb.js";
|
|
5
|
+
import { splitProps } from "solid-js";
|
|
6
|
+
import { createComponent, mergeProps as mergeProps$1 } from "solid-js/web";
|
|
7
|
+
import { downloadFile } from "@zag-js/file-utils";
|
|
8
|
+
|
|
9
|
+
//#region src/components/download-trigger/download-trigger.tsx
|
|
10
|
+
function DownloadTrigger(props) {
|
|
11
|
+
const [downloadProps, restProps] = splitProps(props, [
|
|
12
|
+
"fileName",
|
|
13
|
+
"data",
|
|
14
|
+
"mimeType",
|
|
15
|
+
"onClick"
|
|
16
|
+
]);
|
|
17
|
+
const env = useEnvironmentContext();
|
|
18
|
+
const download = (data) => {
|
|
19
|
+
downloadFile({
|
|
20
|
+
file: data,
|
|
21
|
+
name: downloadProps.fileName,
|
|
22
|
+
type: downloadProps.mimeType,
|
|
23
|
+
win: env().getWindow()
|
|
24
|
+
});
|
|
25
|
+
};
|
|
26
|
+
const handleClick = (e) => {
|
|
27
|
+
if (typeof downloadProps.onClick === "function") downloadProps.onClick(e);
|
|
28
|
+
if (e.defaultPrevented) return;
|
|
29
|
+
if (typeof downloadProps.data === "function") {
|
|
30
|
+
const maybePromise = downloadProps.data();
|
|
31
|
+
if (maybePromise instanceof Promise) maybePromise.then((data) => download(data));
|
|
32
|
+
else download(maybePromise);
|
|
33
|
+
} else download(downloadProps.data);
|
|
34
|
+
};
|
|
35
|
+
return createComponent(sprawlify.button, mergeProps$1(restProps, {
|
|
36
|
+
type: "button",
|
|
37
|
+
onClick: handleClick
|
|
38
|
+
}));
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
//#endregion
|
|
42
|
+
export { DownloadTrigger };
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import "../../core-DbInRfhI.jsx";
|
|
2
|
+
import "../../create-context-C3rvZvkc.jsx";
|
|
3
|
+
import { o as useEnvironmentContext } from "../../providers-DFaRRd80.jsx";
|
|
4
|
+
import { t as sprawlify } from "../../factory-Ch5jgk20.jsx";
|
|
5
|
+
import { splitProps } from "solid-js";
|
|
6
|
+
import { downloadFile } from "@zag-js/file-utils";
|
|
7
|
+
|
|
8
|
+
//#region src/components/download-trigger/download-trigger.tsx
|
|
9
|
+
function DownloadTrigger(props) {
|
|
10
|
+
const [downloadProps, restProps] = splitProps(props, [
|
|
11
|
+
"fileName",
|
|
12
|
+
"data",
|
|
13
|
+
"mimeType",
|
|
14
|
+
"onClick"
|
|
15
|
+
]);
|
|
16
|
+
const env = useEnvironmentContext();
|
|
17
|
+
const download = (data) => {
|
|
18
|
+
downloadFile({
|
|
19
|
+
file: data,
|
|
20
|
+
name: downloadProps.fileName,
|
|
21
|
+
type: downloadProps.mimeType,
|
|
22
|
+
win: env().getWindow()
|
|
23
|
+
});
|
|
24
|
+
};
|
|
25
|
+
const handleClick = (e) => {
|
|
26
|
+
if (typeof downloadProps.onClick === "function") downloadProps.onClick(e);
|
|
27
|
+
if (e.defaultPrevented) return;
|
|
28
|
+
if (typeof downloadProps.data === "function") {
|
|
29
|
+
const maybePromise = downloadProps.data();
|
|
30
|
+
if (maybePromise instanceof Promise) maybePromise.then((data) => download(data));
|
|
31
|
+
else download(maybePromise);
|
|
32
|
+
} else download(downloadProps.data);
|
|
33
|
+
};
|
|
34
|
+
return <sprawlify.button {...restProps} type="button" onClick={handleClick} />;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
//#endregion
|
|
38
|
+
export { DownloadTrigger };
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { n as PropTypes } from "../../index-C7N791Fc.js";
|
|
2
|
+
import { i as Optional, n as MaybeAccessor } from "../../types-Dbw4va3W.js";
|
|
3
|
+
import { n as PolymorphicProps, t as HTMLProps } from "../../factory-4A25bngy.js";
|
|
4
|
+
import * as solid_js116 from "solid-js";
|
|
5
|
+
import { Accessor, JSX } from "solid-js";
|
|
6
|
+
import * as editable from "@sprawlify/primitives/machines/editable";
|
|
7
|
+
import { EditChangeDetails as EditableEditChangeDetails, FocusOutsideEvent, FocusOutsideEvent as EditableFocusOutsideEvent, InteractOutsideEvent, InteractOutsideEvent as EditableInteractOutsideEvent, PointerDownOutsideEvent, PointerDownOutsideEvent as EditablePointerDownOutsideEvent, ValueChangeDetails, ValueChangeDetails as EditableValueChangeDetails, anatomy as editableAnatomy } from "@sprawlify/primitives/machines/editable";
|
|
8
|
+
|
|
9
|
+
//#region src/components/editable/editable-area.d.ts
|
|
10
|
+
interface EditableAreaBaseProps extends PolymorphicProps<'div'> {}
|
|
11
|
+
interface EditableAreaProps extends HTMLProps<'div'>, EditableAreaBaseProps {}
|
|
12
|
+
declare const EditableArea: (props: EditableAreaProps) => solid_js116.JSX.Element;
|
|
13
|
+
//#endregion
|
|
14
|
+
//#region src/components/editable/editable-cancel-trigger.d.ts
|
|
15
|
+
interface EditableCancelTriggerBaseProps extends PolymorphicProps<'button'> {}
|
|
16
|
+
interface EditableCancelTriggerProps extends HTMLProps<'button'>, EditableCancelTriggerBaseProps {}
|
|
17
|
+
declare const EditableCancelTrigger: (props: EditableCancelTriggerProps) => solid_js116.JSX.Element;
|
|
18
|
+
//#endregion
|
|
19
|
+
//#region src/components/editable/use-editable.d.ts
|
|
20
|
+
interface UseEditableProps extends Optional<Omit<editable.Props, 'dir' | 'getRootNode'>, 'id'> {}
|
|
21
|
+
interface UseEditableReturn extends Accessor<editable.Api<PropTypes>> {}
|
|
22
|
+
declare const useEditable: (props?: MaybeAccessor<UseEditableProps>) => Accessor<editable.Api<PropTypes>>;
|
|
23
|
+
//#endregion
|
|
24
|
+
//#region src/components/editable/use-editable-context.d.ts
|
|
25
|
+
interface UseEditableContext extends UseEditableReturn {}
|
|
26
|
+
//#endregion
|
|
27
|
+
//#region src/components/editable/editable-context.d.ts
|
|
28
|
+
interface EditableContextProps {
|
|
29
|
+
children: (context: UseEditableContext) => JSX.Element;
|
|
30
|
+
}
|
|
31
|
+
declare const EditableContext: (props: EditableContextProps) => JSX.Element;
|
|
32
|
+
//#endregion
|
|
33
|
+
//#region src/components/editable/editable-control.d.ts
|
|
34
|
+
interface EditableControlBaseProps extends PolymorphicProps<'div'> {}
|
|
35
|
+
interface EditableControlProps extends HTMLProps<'div'>, EditableControlBaseProps {}
|
|
36
|
+
declare const EditableControl: (props: EditableControlProps) => solid_js116.JSX.Element;
|
|
37
|
+
//#endregion
|
|
38
|
+
//#region src/components/editable/editable-edit-trigger.d.ts
|
|
39
|
+
interface EditableEditTriggerBaseProps extends PolymorphicProps<'button'> {}
|
|
40
|
+
interface EditableEditTriggerProps extends HTMLProps<'button'>, EditableEditTriggerBaseProps {}
|
|
41
|
+
declare const EditableEditTrigger: (props: EditableEditTriggerProps) => solid_js116.JSX.Element;
|
|
42
|
+
//#endregion
|
|
43
|
+
//#region src/components/editable/editable-input.d.ts
|
|
44
|
+
interface EditableInputBaseProps extends PolymorphicProps<'input'> {}
|
|
45
|
+
interface EditableInputProps extends HTMLProps<'input'>, EditableInputBaseProps {}
|
|
46
|
+
declare const EditableInput: (props: EditableInputProps) => solid_js116.JSX.Element;
|
|
47
|
+
//#endregion
|
|
48
|
+
//#region src/components/editable/editable-label.d.ts
|
|
49
|
+
interface EditableLabelBaseProps extends PolymorphicProps<'label'> {}
|
|
50
|
+
interface EditableLabelProps extends HTMLProps<'label'>, EditableLabelBaseProps {}
|
|
51
|
+
declare const EditableLabel: (props: EditableLabelProps) => solid_js116.JSX.Element;
|
|
52
|
+
//#endregion
|
|
53
|
+
//#region src/components/editable/editable-preview.d.ts
|
|
54
|
+
interface EditablePreviewBaseProps extends PolymorphicProps<'span'> {}
|
|
55
|
+
interface EditablePreviewProps extends HTMLProps<'span'>, EditablePreviewBaseProps {}
|
|
56
|
+
declare const EditablePreview: (props: EditablePreviewProps) => solid_js116.JSX.Element;
|
|
57
|
+
//#endregion
|
|
58
|
+
//#region src/components/editable/editable-root.d.ts
|
|
59
|
+
interface EditableRootBaseProps extends UseEditableProps, PolymorphicProps<'div'> {}
|
|
60
|
+
interface EditableRootProps extends HTMLProps<'div'>, EditableRootBaseProps {}
|
|
61
|
+
declare const EditableRoot: (props: EditableRootProps) => solid_js116.JSX.Element;
|
|
62
|
+
//#endregion
|
|
63
|
+
//#region src/components/editable/editable-root-provider.d.ts
|
|
64
|
+
interface RootProviderProps {
|
|
65
|
+
value: UseEditableReturn;
|
|
66
|
+
}
|
|
67
|
+
interface EditableRootProviderBaseProps extends PolymorphicProps<'div'> {}
|
|
68
|
+
interface EditableRootProviderProps extends HTMLProps<'div'>, RootProviderProps, EditableRootProviderBaseProps {}
|
|
69
|
+
declare const EditableRootProvider: (props: EditableRootProviderProps) => solid_js116.JSX.Element;
|
|
70
|
+
//#endregion
|
|
71
|
+
//#region src/components/editable/editable-submit-trigger.d.ts
|
|
72
|
+
interface EditableSubmitTriggerBaseProps extends PolymorphicProps<'button'> {}
|
|
73
|
+
interface EditableSubmitTriggerProps extends HTMLProps<'button'>, EditableSubmitTriggerBaseProps {}
|
|
74
|
+
declare const EditableSubmitTrigger: (props: EditableSubmitTriggerProps) => solid_js116.JSX.Element;
|
|
75
|
+
declare namespace editable_d_exports {
|
|
76
|
+
export { EditableArea as Area, EditableAreaBaseProps as AreaBaseProps, EditableAreaProps as AreaProps, EditableCancelTrigger as CancelTrigger, EditableCancelTriggerBaseProps as CancelTriggerBaseProps, EditableCancelTriggerProps as CancelTriggerProps, EditableContext as Context, EditableContextProps as ContextProps, EditableControl as Control, EditableControlBaseProps as ControlBaseProps, EditableControlProps as ControlProps, EditableEditTrigger as EditTrigger, EditableEditTriggerBaseProps as EditTriggerBaseProps, EditableEditTriggerProps as EditTriggerProps, FocusOutsideEvent, EditableInput as Input, EditableInputBaseProps as InputBaseProps, EditableInputProps as InputProps, InteractOutsideEvent, EditableLabel as Label, EditableLabelBaseProps as LabelBaseProps, EditableLabelProps as LabelProps, PointerDownOutsideEvent, EditablePreview as Preview, EditablePreviewBaseProps as PreviewBaseProps, EditablePreviewProps as PreviewProps, EditableRoot as Root, EditableRootBaseProps as RootBaseProps, EditableRootProps as RootProps, EditableRootProvider as RootProvider, EditableRootProviderBaseProps as RootProviderBaseProps, EditableRootProviderProps as RootProviderProps, EditableSubmitTrigger as SubmitTrigger, EditableSubmitTriggerBaseProps as SubmitTriggerBaseProps, EditableSubmitTriggerProps as SubmitTriggerProps, ValueChangeDetails };
|
|
77
|
+
}
|
|
78
|
+
//#endregion
|
|
79
|
+
export { editable_d_exports as Editable, EditableArea, type EditableAreaBaseProps, type EditableAreaProps, EditableCancelTrigger, type EditableCancelTriggerBaseProps, type EditableCancelTriggerProps, EditableContext, type EditableContextProps, EditableControl, type EditableControlBaseProps, type EditableControlProps, type EditableEditChangeDetails, EditableEditTrigger, type EditableEditTriggerBaseProps, type EditableEditTriggerProps, type EditableFocusOutsideEvent, EditableInput, type EditableInputBaseProps, type EditableInputProps, type EditableInteractOutsideEvent, EditableLabel, type EditableLabelBaseProps, type EditableLabelProps, type EditablePointerDownOutsideEvent, EditablePreview, type EditablePreviewBaseProps, type EditablePreviewProps, EditableRoot, type EditableRootBaseProps, type EditableRootProps, EditableRootProvider, type EditableRootProviderBaseProps, type EditableRootProviderProps, EditableSubmitTrigger, type EditableSubmitTriggerBaseProps, type EditableSubmitTriggerProps, type EditableValueChangeDetails, type UseEditableContext, type UseEditableProps, type UseEditableReturn, editableAnatomy, useEditable, useEditableContext };
|