@sprawlify/solid 0.0.15 → 0.0.17
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-Dp3pmOz6.js} +8 -6
- package/dist/{collapsible-CjuC6xYl.jsx → collapsible-oWvTRylz.jsx} +8 -6
- package/dist/{collection-BiyRTWsX.js → collection-DOjgejiS.js} +2 -1
- package/dist/{collection-BlnS2UQy.jsx → collection-gIC58P6c.jsx} +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 +12 -12
- 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 +13 -13
- 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/file-upload/index.d.ts +102 -0
- package/dist/components/file-upload/index.js +284 -0
- package/dist/components/file-upload/index.jsx +255 -0
- package/dist/components/floating-panel/index.d.ts +100 -0
- package/dist/components/floating-panel/index.js +246 -0
- package/dist/components/floating-panel/index.jsx +217 -0
- package/dist/components/focus-trap/index.d.ts +17 -0
- package/dist/components/focus-trap/index.js +34 -0
- package/dist/components/focus-trap/index.jsx +30 -0
- package/dist/components/format/index.d.ts +27 -0
- package/dist/components/format/index.js +46 -0
- package/dist/components/format/index.jsx +48 -0
- package/dist/components/frame/index.d.ts +13 -0
- package/dist/components/frame/index.js +121 -0
- package/dist/components/frame/index.jsx +86 -0
- 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-CWSDVCoi.jsx} +1 -6
- package/dist/{run-if-fn-DRWB51JE.jsx → core-Cl2xcDm5.js} +1 -6
- package/dist/create-split-props-CHlLW_X_.js +7 -0
- package/dist/create-split-props-DrfYep1t.jsx +7 -0
- package/dist/{factory-B6RK6SH4.d.ts → factory-C7CCEqYp.d.ts} +1 -1
- package/dist/{factory-CEdj72aS.js → factory-Ci1LUSWg.js} +2 -6
- package/dist/{create-split-props-CQVsvhvg.jsx → factory-OCDy1fEv.jsx} +2 -6
- package/dist/{field-C_WuoXOj.js → field-D5bG5XXV.js} +8 -7
- package/dist/{field-CphvciGc.jsx → field-DQLYAOgJ.jsx} +8 -7
- package/dist/{fieldset-BG-0ZqWT.jsx → fieldset-DT2nCjE0.jsx} +8 -6
- package/dist/{fieldset-D1BO0LmU.js → fieldset-Def05D5r.js} +8 -6
- package/dist/{index-DXheKbqg.d.ts → index-4WaIBGi6.d.ts} +1 -1
- package/dist/{index-vSwYtc2L.d.ts → index-Bf3vaCUa.d.ts} +8 -8
- package/dist/{index-NWiNyxpL.d.ts → index-CsB3A61w.d.ts} +8 -8
- package/dist/index.d.ts +5 -5
- package/dist/index.js +4 -4
- package/dist/index.jsx +4 -4
- package/dist/{presence-Bfjusgm3.js → presence-CAkwk5S4.js} +7 -5
- package/dist/{presence-arWh1hVd.jsx → presence-vlL8hWT8.jsx} +7 -5
- package/dist/{providers-CHqGPEsc.jsx → providers-BRmk_hzA.jsx} +2 -2
- package/dist/{providers-CQkAUunr.js → providers-D1hKjv0s.js} +2 -2
- package/dist/{render-strategy-CZDG_yDi.jsx → render-strategy-BA_kLuwR.jsx} +2 -2
- package/dist/{render-strategy-COrlrUuR.js → render-strategy-CqWA1-xU.js} +2 -2
- package/dist/run-if-fn-Ct4sSuFV.js +6 -0
- package/dist/run-if-fn-iVu0r8rO.jsx +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 +72 -2
- /package/dist/{chunk-C4aQI7lE.jsx → chunk-Wl6TQfsu.js} +0 -0
- /package/dist/{chunk-CKcAJnC7.js → chunk-dNcSV51B.jsx} +0 -0
- /package/dist/{compose-refs-CzyOb8yH.jsx → compose-refs-CDTdkuP1.jsx} +0 -0
- /package/dist/{compose-refs-vsrTrt13.js → compose-refs-DbJoODKO.js} +0 -0
- /package/dist/{create-context-PS2j4mEo.js → create-context-BBDU3kF1.js} +0 -0
- /package/dist/{create-context-h3cXiEld.jsx → create-context-CpcL7CiV.jsx} +0 -0
- /package/dist/{index-B0YoIRC4.d.ts → index-5DzQGTeT.d.ts} +0 -0
- /package/dist/{index-C3ATynHc.d.ts → index-BLKwiHM7.d.ts} +0 -0
- /package/dist/{render-strategy-CtRkdWei.d.ts → render-strategy-DfQ78EfE.d.ts} +0 -0
- /package/dist/{types-bQRbEioA.d.ts → types-M3kll1K0.d.ts} +0 -0
- /package/dist/{utils-DYer-9SY.js → utils-DK-8VxTv.jsx} +0 -0
- /package/dist/{utils-DrvO4Hk3.jsx → utils-xOi5tXWN.js} +0 -0
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { n as PropTypes } from "../../index-BLKwiHM7.js";
|
|
2
|
+
import { i as Optional, n as MaybeAccessor } from "../../types-M3kll1K0.js";
|
|
3
|
+
import { n as PolymorphicProps, t as HTMLProps } from "../../factory-C7CCEqYp.js";
|
|
4
|
+
import * as solid_js22 from "solid-js";
|
|
5
|
+
import { Accessor, JSX } from "solid-js";
|
|
6
|
+
import * as fileUpload from "@sprawlify/primitives/machines/file-upload";
|
|
7
|
+
import { DropzoneProps, FileAcceptDetails, FileAcceptDetails as FileUploadFileAcceptDetails, FileChangeDetails, FileChangeDetails as FileUploadFileChangeDetails, FileError, FileError as FileUploadFileError, FileMimeType, FileMimeType as FileUploadFileMimeType, FileRejectDetails, FileRejectDetails as FileUploadFileRejectDetails, FileRejection, FileRejection as FileUploadFileRejection, FileValidateDetails, FileValidateDetails as FileUploadFileValidateDetails, ItemGroupProps, ItemProps, anatomy as fileUploadAnatomy } from "@sprawlify/primitives/machines/file-upload";
|
|
8
|
+
|
|
9
|
+
//#region src/components/file-upload/file-upload-clear-trigger.d.ts
|
|
10
|
+
interface FileUploadClearTriggerBaseProps extends PolymorphicProps<'button'> {}
|
|
11
|
+
interface FileUploadClearTriggerProps extends HTMLProps<'button'>, FileUploadClearTriggerBaseProps {}
|
|
12
|
+
declare const FileUploadClearTrigger: (props: FileUploadClearTriggerProps) => solid_js22.JSX.Element;
|
|
13
|
+
//#endregion
|
|
14
|
+
//#region src/components/file-upload/use-file-upload.d.ts
|
|
15
|
+
interface UseFileUploadProps extends Optional<Omit<fileUpload.Props, 'dir' | 'getRootNode'>, 'id'> {}
|
|
16
|
+
interface UseFileUploadReturn extends Accessor<fileUpload.Api<PropTypes>> {}
|
|
17
|
+
declare const useFileUpload: (props?: MaybeAccessor<UseFileUploadProps>) => UseFileUploadReturn;
|
|
18
|
+
//#endregion
|
|
19
|
+
//#region src/components/file-upload/use-file-upload-context.d.ts
|
|
20
|
+
interface UseFileUploadContext extends UseFileUploadReturn {}
|
|
21
|
+
//#endregion
|
|
22
|
+
//#region src/components/file-upload/file-upload-context.d.ts
|
|
23
|
+
interface FileUploadContextProps {
|
|
24
|
+
children: (context: UseFileUploadContext) => JSX.Element;
|
|
25
|
+
}
|
|
26
|
+
declare const FileUploadContext: (props: FileUploadContextProps) => JSX.Element;
|
|
27
|
+
//#endregion
|
|
28
|
+
//#region src/components/file-upload/file-upload-dropzone.d.ts
|
|
29
|
+
interface FileUploadDropzoneBaseProps extends PolymorphicProps<'div'>, DropzoneProps {}
|
|
30
|
+
interface FileUploadDropzoneProps extends HTMLProps<'div'>, FileUploadDropzoneBaseProps {}
|
|
31
|
+
declare const FileUploadDropzone: (props: FileUploadDropzoneProps) => solid_js22.JSX.Element;
|
|
32
|
+
//#endregion
|
|
33
|
+
//#region src/components/file-upload/file-upload-hidden-input.d.ts
|
|
34
|
+
interface FileUploadHiddenInputBaseProps extends PolymorphicProps<'input'> {}
|
|
35
|
+
interface FileUploadHiddenInputProps extends HTMLProps<'input'>, FileUploadHiddenInputBaseProps {}
|
|
36
|
+
declare const FileUploadHiddenInput: (props: FileUploadHiddenInputProps) => solid_js22.JSX.Element;
|
|
37
|
+
//#endregion
|
|
38
|
+
//#region src/components/file-upload/file-upload-item.d.ts
|
|
39
|
+
type ItemBaseProps = Omit<ItemProps, 'type'>;
|
|
40
|
+
interface FileUploadItemBaseProps extends ItemBaseProps, PolymorphicProps<'li'> {}
|
|
41
|
+
interface FileUploadItemProps extends HTMLProps<'li'>, FileUploadItemBaseProps {}
|
|
42
|
+
declare const FileUploadItem: (props: FileUploadItemProps) => solid_js22.JSX.Element;
|
|
43
|
+
//#endregion
|
|
44
|
+
//#region src/components/file-upload/file-upload-item-delete-trigger.d.ts
|
|
45
|
+
interface FileUploadItemDeleteTriggerBaseProps extends PolymorphicProps<'button'> {}
|
|
46
|
+
interface FileUploadItemDeleteTriggerProps extends HTMLProps<'button'>, FileUploadItemDeleteTriggerBaseProps {}
|
|
47
|
+
declare const FileUploadItemDeleteTrigger: (props: FileUploadItemDeleteTriggerProps) => solid_js22.JSX.Element;
|
|
48
|
+
//#endregion
|
|
49
|
+
//#region src/components/file-upload/file-upload-item-group.d.ts
|
|
50
|
+
interface FileUploadItemGroupBaseProps extends PolymorphicProps<'ul'>, ItemGroupProps {}
|
|
51
|
+
interface FileUploadItemGroupProps extends HTMLProps<'ul'>, FileUploadItemGroupBaseProps {}
|
|
52
|
+
declare const FileUploadItemGroup: (props: FileUploadItemGroupProps) => solid_js22.JSX.Element;
|
|
53
|
+
//#endregion
|
|
54
|
+
//#region src/components/file-upload/file-upload-item-name.d.ts
|
|
55
|
+
interface FileUploadItemNameBaseProps extends PolymorphicProps<'div'> {}
|
|
56
|
+
interface FileUploadItemNameProps extends HTMLProps<'div'>, FileUploadItemNameBaseProps {}
|
|
57
|
+
declare const FileUploadItemName: (props: FileUploadItemNameProps) => solid_js22.JSX.Element;
|
|
58
|
+
//#endregion
|
|
59
|
+
//#region src/components/file-upload/file-upload-item-preview.d.ts
|
|
60
|
+
interface FileUploadItemPreviewBaseProps extends PolymorphicProps<'div'> {
|
|
61
|
+
type?: string;
|
|
62
|
+
}
|
|
63
|
+
interface FileUploadItemPreviewProps extends HTMLProps<'div'>, FileUploadItemPreviewBaseProps {}
|
|
64
|
+
declare const FileUploadItemPreview: (props: FileUploadItemPreviewProps) => solid_js22.JSX.Element;
|
|
65
|
+
//#endregion
|
|
66
|
+
//#region src/components/file-upload/file-upload-item-preview-image.d.ts
|
|
67
|
+
interface FileUploadItemPreviewImageBaseProps extends PolymorphicProps<'img'> {}
|
|
68
|
+
interface FileUploadItemPreviewImageProps extends HTMLProps<'img'>, FileUploadItemPreviewImageBaseProps {}
|
|
69
|
+
declare const FileUploadItemPreviewImage: (props: FileUploadItemPreviewImageProps) => solid_js22.JSX.Element;
|
|
70
|
+
//#endregion
|
|
71
|
+
//#region src/components/file-upload/file-upload-item-size-text.d.ts
|
|
72
|
+
interface FileUploadItemSizeTextBaseProps extends PolymorphicProps<'div'> {}
|
|
73
|
+
interface FileUploadItemSizeTextProps extends HTMLProps<'div'>, FileUploadItemSizeTextBaseProps {}
|
|
74
|
+
declare const FileUploadItemSizeText: (props: FileUploadItemSizeTextProps) => solid_js22.JSX.Element;
|
|
75
|
+
//#endregion
|
|
76
|
+
//#region src/components/file-upload/file-upload-label.d.ts
|
|
77
|
+
interface FileUploadLabelBaseProps extends PolymorphicProps<'label'> {}
|
|
78
|
+
interface FileUploadLabelProps extends HTMLProps<'label'>, FileUploadLabelBaseProps {}
|
|
79
|
+
declare const FileUploadLabel: (props: FileUploadLabelProps) => solid_js22.JSX.Element;
|
|
80
|
+
//#endregion
|
|
81
|
+
//#region src/components/file-upload/file-upload-root.d.ts
|
|
82
|
+
interface FileUploadRootBaseProps extends UseFileUploadProps, PolymorphicProps<'div'> {}
|
|
83
|
+
interface FileUploadRootProps extends HTMLProps<'div'>, FileUploadRootBaseProps {}
|
|
84
|
+
declare const FileUploadRoot: (props: FileUploadRootProps) => solid_js22.JSX.Element;
|
|
85
|
+
//#endregion
|
|
86
|
+
//#region src/components/file-upload/file-upload-root-provider.d.ts
|
|
87
|
+
interface RootProviderProps {
|
|
88
|
+
value: UseFileUploadReturn;
|
|
89
|
+
}
|
|
90
|
+
interface FileUploadRootProviderBaseProps extends PolymorphicProps<'div'> {}
|
|
91
|
+
interface FileUploadRootProviderProps extends HTMLProps<'div'>, RootProviderProps, FileUploadRootProviderBaseProps {}
|
|
92
|
+
declare const FileUploadRootProvider: (props: FileUploadRootProviderProps) => solid_js22.JSX.Element;
|
|
93
|
+
//#endregion
|
|
94
|
+
//#region src/components/file-upload/file-upload-trigger.d.ts
|
|
95
|
+
interface FileUploadTriggerBaseProps extends PolymorphicProps<'button'> {}
|
|
96
|
+
interface FileUploadTriggerProps extends HTMLProps<'button'>, FileUploadTriggerBaseProps {}
|
|
97
|
+
declare const FileUploadTrigger: (props: FileUploadTriggerProps) => solid_js22.JSX.Element;
|
|
98
|
+
declare namespace file_upload_d_exports {
|
|
99
|
+
export { FileUploadClearTrigger as ClearTrigger, FileUploadClearTriggerBaseProps as ClearTriggerBaseProps, FileUploadClearTriggerProps as ClearTriggerProps, FileUploadContext as Context, FileUploadContextProps as ContextProps, FileUploadDropzone as Dropzone, FileUploadDropzoneBaseProps as DropzoneBaseProps, FileUploadDropzoneProps as DropzoneProps, FileAcceptDetails, FileChangeDetails, FileError, FileMimeType, FileRejectDetails, FileRejection, FileValidateDetails, FileUploadHiddenInput as HiddenInput, FileUploadHiddenInputBaseProps as HiddenInputBaseProps, FileUploadHiddenInputProps as HiddenInputProps, FileUploadItem as Item, FileUploadItemBaseProps as ItemBaseProps, FileUploadItemDeleteTrigger as ItemDeleteTrigger, FileUploadItemDeleteTriggerBaseProps as ItemDeleteTriggerBaseProps, FileUploadItemDeleteTriggerProps as ItemDeleteTriggerProps, FileUploadItemGroup as ItemGroup, FileUploadItemGroupBaseProps as ItemGroupBaseProps, FileUploadItemGroupProps as ItemGroupProps, FileUploadItemName as ItemName, FileUploadItemNameBaseProps as ItemNameBaseProps, FileUploadItemNameProps as ItemNameProps, FileUploadItemPreview as ItemPreview, FileUploadItemPreviewBaseProps as ItemPreviewBaseProps, FileUploadItemPreviewImage as ItemPreviewImage, FileUploadItemPreviewImageBaseProps as ItemPreviewImageBaseProps, FileUploadItemPreviewImageProps as ItemPreviewImageProps, FileUploadItemPreviewProps as ItemPreviewProps, FileUploadItemProps as ItemProps, FileUploadItemSizeText as ItemSizeText, FileUploadItemSizeTextBaseProps as ItemSizeTextBaseProps, FileUploadItemSizeTextProps as ItemSizeTextProps, FileUploadLabel as Label, FileUploadLabelBaseProps as LabelBaseProps, FileUploadLabelProps as LabelProps, FileUploadRoot as Root, FileUploadRootBaseProps as RootBaseProps, FileUploadRootProps as RootProps, FileUploadRootProvider as RootProvider, FileUploadRootProviderBaseProps as RootProviderBaseProps, FileUploadRootProviderProps as RootProviderProps, FileUploadTrigger as Trigger, FileUploadTriggerBaseProps as TriggerBaseProps, FileUploadTriggerProps as TriggerProps };
|
|
100
|
+
}
|
|
101
|
+
//#endregion
|
|
102
|
+
export { file_upload_d_exports as FileUpload, FileUploadClearTrigger, type FileUploadClearTriggerBaseProps, type FileUploadClearTriggerProps, FileUploadContext, type FileUploadContextProps, FileUploadDropzone, type FileUploadDropzoneBaseProps, type FileUploadDropzoneProps, type FileUploadFileAcceptDetails, type FileUploadFileChangeDetails, type FileUploadFileError, type FileUploadFileMimeType, type FileUploadFileRejectDetails, type FileUploadFileRejection, type FileUploadFileValidateDetails, FileUploadHiddenInput, type FileUploadHiddenInputBaseProps, type FileUploadHiddenInputProps, FileUploadItem, type FileUploadItemBaseProps, FileUploadItemDeleteTrigger, type FileUploadItemDeleteTriggerBaseProps, type FileUploadItemDeleteTriggerProps, FileUploadItemGroup, type FileUploadItemGroupBaseProps, type FileUploadItemGroupProps, FileUploadItemName, type FileUploadItemNameBaseProps, type FileUploadItemNameProps, FileUploadItemPreview, type FileUploadItemPreviewBaseProps, FileUploadItemPreviewImage, type FileUploadItemPreviewImageBaseProps, type FileUploadItemPreviewImageProps, type FileUploadItemPreviewProps, type FileUploadItemProps, FileUploadItemSizeText, type FileUploadItemSizeTextBaseProps, type FileUploadItemSizeTextProps, FileUploadLabel, type FileUploadLabelBaseProps, type FileUploadLabelProps, FileUploadRoot, type FileUploadRootBaseProps, type FileUploadRootProps, FileUploadRootProvider, type FileUploadRootProviderBaseProps, type FileUploadRootProviderProps, FileUploadTrigger, type FileUploadTriggerBaseProps, type FileUploadTriggerProps, type UseFileUploadContext, type UseFileUploadProps, type UseFileUploadReturn, fileUploadAnatomy, useFileUpload, useFileUploadContext };
|
|
@@ -0,0 +1,284 @@
|
|
|
1
|
+
import { t as __export } from "../../chunk-Wl6TQfsu.js";
|
|
2
|
+
import { i as useMachine, n as normalizeProps, r as mergeProps$2 } from "../../core-Cl2xcDm5.js";
|
|
3
|
+
import { t as runIfFn } from "../../run-if-fn-Ct4sSuFV.js";
|
|
4
|
+
import { t as createContext$1 } from "../../create-context-BBDU3kF1.js";
|
|
5
|
+
import { i as useLocaleContext, o as useEnvironmentContext } from "../../providers-D1hKjv0s.js";
|
|
6
|
+
import { t as createSplitProps } from "../../create-split-props-CHlLW_X_.js";
|
|
7
|
+
import { t as sprawlify } from "../../factory-Ci1LUSWg.js";
|
|
8
|
+
import "../../compose-refs-DbJoODKO.js";
|
|
9
|
+
import "../../fieldset-Def05D5r.js";
|
|
10
|
+
import { m as useFieldContext } from "../../field-D5bG5XXV.js";
|
|
11
|
+
import { Show, createEffect, createMemo, createSignal, createUniqueId, onCleanup } from "solid-js";
|
|
12
|
+
import { createComponent, mergeProps as mergeProps$1 } from "solid-js/web";
|
|
13
|
+
import * as fileUpload from "@sprawlify/primitives/machines/file-upload";
|
|
14
|
+
import { anatomy as fileUploadAnatomy } from "@sprawlify/primitives/machines/file-upload";
|
|
15
|
+
|
|
16
|
+
//#region src/components/file-upload/use-file-upload-context.ts
|
|
17
|
+
const [FileUploadProvider, useFileUploadContext] = createContext$1({
|
|
18
|
+
hookName: "useFileUploadContext",
|
|
19
|
+
providerName: "<FileUploadProvider />"
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
//#endregion
|
|
23
|
+
//#region src/components/file-upload/file-upload-clear-trigger.tsx
|
|
24
|
+
const FileUploadClearTrigger = (props) => {
|
|
25
|
+
const fileUpload$1 = useFileUploadContext();
|
|
26
|
+
const mergedProps = mergeProps$2(() => fileUpload$1().getClearTriggerProps(), props);
|
|
27
|
+
return createComponent(sprawlify.button, mergedProps);
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
//#endregion
|
|
31
|
+
//#region src/components/file-upload/file-upload-context.tsx
|
|
32
|
+
const FileUploadContext = (props) => props.children(useFileUploadContext());
|
|
33
|
+
|
|
34
|
+
//#endregion
|
|
35
|
+
//#region src/components/file-upload/file-upload-dropzone.tsx
|
|
36
|
+
const FileUploadDropzone = (props) => {
|
|
37
|
+
const [dropzoneProps, localProps] = createSplitProps()(props, ["disableClick"]);
|
|
38
|
+
const fileUpload$1 = useFileUploadContext();
|
|
39
|
+
const mergedProps = mergeProps$2(() => fileUpload$1().getDropzoneProps(dropzoneProps), localProps);
|
|
40
|
+
return createComponent(sprawlify.div, mergedProps);
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
//#endregion
|
|
44
|
+
//#region src/components/file-upload/file-upload-hidden-input.tsx
|
|
45
|
+
const FileUploadHiddenInput = (props) => {
|
|
46
|
+
const fileUpload$1 = useFileUploadContext();
|
|
47
|
+
const mergedProps = mergeProps$2(() => fileUpload$1().getHiddenInputProps(), props);
|
|
48
|
+
const field = useFieldContext();
|
|
49
|
+
return createComponent(sprawlify.input, mergeProps$1({ get ["aria-describedby"]() {
|
|
50
|
+
return field?.().ariaDescribedby;
|
|
51
|
+
} }, mergedProps));
|
|
52
|
+
};
|
|
53
|
+
|
|
54
|
+
//#endregion
|
|
55
|
+
//#region src/components/file-upload/use-file-upload-item-group-props-context.ts
|
|
56
|
+
const [FileUploadItemGroupPropsProvider, useFileUploadItemGroupPropsContext] = createContext$1({
|
|
57
|
+
hookName: "useFileUploadItemGroupPropsContext",
|
|
58
|
+
providerName: "<FileUploadItemGroupPropsProvider />"
|
|
59
|
+
});
|
|
60
|
+
|
|
61
|
+
//#endregion
|
|
62
|
+
//#region src/components/file-upload/use-file-upload-item-props-context.ts
|
|
63
|
+
const [FileUploadItemPropsProvider, useFileUploadItemPropsContext] = createContext$1({
|
|
64
|
+
hookName: "useFileUploadItemPropsContext",
|
|
65
|
+
providerName: "<FileUploadItemPropsProvider />"
|
|
66
|
+
});
|
|
67
|
+
|
|
68
|
+
//#endregion
|
|
69
|
+
//#region src/components/file-upload/file-upload-item.tsx
|
|
70
|
+
const FileUploadItem = (props) => {
|
|
71
|
+
const [itemProps, localProps] = createSplitProps()(props, ["file"]);
|
|
72
|
+
const fileUpload$1 = useFileUploadContext();
|
|
73
|
+
const itemGroupProps = useFileUploadItemGroupPropsContext();
|
|
74
|
+
const itemPropsWithType = createMemo(() => ({
|
|
75
|
+
...itemProps,
|
|
76
|
+
type: itemGroupProps.type
|
|
77
|
+
}));
|
|
78
|
+
const mergedProps = mergeProps$2(() => fileUpload$1().getItemProps(itemPropsWithType()), localProps);
|
|
79
|
+
return createComponent(FileUploadItemPropsProvider, {
|
|
80
|
+
value: itemPropsWithType,
|
|
81
|
+
get children() {
|
|
82
|
+
return createComponent(sprawlify.li, mergedProps);
|
|
83
|
+
}
|
|
84
|
+
});
|
|
85
|
+
};
|
|
86
|
+
|
|
87
|
+
//#endregion
|
|
88
|
+
//#region src/components/file-upload/file-upload-item-delete-trigger.tsx
|
|
89
|
+
const FileUploadItemDeleteTrigger = (props) => {
|
|
90
|
+
const fileUpload$1 = useFileUploadContext();
|
|
91
|
+
const itemProps = useFileUploadItemPropsContext();
|
|
92
|
+
const mergedProps = mergeProps$2(() => fileUpload$1().getItemDeleteTriggerProps(itemProps()), props);
|
|
93
|
+
return createComponent(sprawlify.button, mergedProps);
|
|
94
|
+
};
|
|
95
|
+
|
|
96
|
+
//#endregion
|
|
97
|
+
//#region src/components/file-upload/file-upload-item-group.tsx
|
|
98
|
+
const FileUploadItemGroup = (props) => {
|
|
99
|
+
const [itemGroupProps, localProps] = createSplitProps()(props, ["type"]);
|
|
100
|
+
const fileUpload$1 = useFileUploadContext();
|
|
101
|
+
const mergedProps = mergeProps$2(() => fileUpload$1().getItemGroupProps(itemGroupProps), localProps);
|
|
102
|
+
return createComponent(FileUploadItemGroupPropsProvider, {
|
|
103
|
+
value: itemGroupProps,
|
|
104
|
+
get children() {
|
|
105
|
+
return createComponent(sprawlify.ul, mergedProps);
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
};
|
|
109
|
+
|
|
110
|
+
//#endregion
|
|
111
|
+
//#region src/components/file-upload/file-upload-item-name.tsx
|
|
112
|
+
const FileUploadItemName = (props) => {
|
|
113
|
+
const fileUpload$1 = useFileUploadContext();
|
|
114
|
+
const itemProps = useFileUploadItemPropsContext();
|
|
115
|
+
const mergedProps = mergeProps$2(() => fileUpload$1().getItemNameProps(itemProps()), props);
|
|
116
|
+
return createComponent(sprawlify.div, mergeProps$1(mergedProps, { get children() {
|
|
117
|
+
return props.children || itemProps().file.name;
|
|
118
|
+
} }));
|
|
119
|
+
};
|
|
120
|
+
|
|
121
|
+
//#endregion
|
|
122
|
+
//#region src/components/file-upload/file-upload-item-preview.tsx
|
|
123
|
+
const FileUploadItemPreview = (props) => {
|
|
124
|
+
const fileUpload$1 = useFileUploadContext();
|
|
125
|
+
const itemProps = useFileUploadItemPropsContext();
|
|
126
|
+
const mergedProps = mergeProps$2(() => fileUpload$1().getItemPreviewProps(itemProps()), props);
|
|
127
|
+
return createComponent(Show, {
|
|
128
|
+
get when() {
|
|
129
|
+
return itemProps().file.type.match(props.type ?? ".*");
|
|
130
|
+
},
|
|
131
|
+
get children() {
|
|
132
|
+
return createComponent(sprawlify.div, mergedProps);
|
|
133
|
+
}
|
|
134
|
+
});
|
|
135
|
+
};
|
|
136
|
+
|
|
137
|
+
//#endregion
|
|
138
|
+
//#region src/components/file-upload/file-upload-item-preview-image.tsx
|
|
139
|
+
const FileUploadItemPreviewImage = (props) => {
|
|
140
|
+
const fileUpload$1 = useFileUploadContext();
|
|
141
|
+
const itemProps = useFileUploadItemPropsContext();
|
|
142
|
+
const [url, setUrl] = createSignal("");
|
|
143
|
+
createEffect(() => {
|
|
144
|
+
onCleanup(fileUpload$1().createFileUrl(itemProps().file, (url$1) => setUrl(url$1)));
|
|
145
|
+
});
|
|
146
|
+
const mergedProps = mergeProps$2(() => fileUpload$1().getItemPreviewImageProps({
|
|
147
|
+
...itemProps(),
|
|
148
|
+
url: url()
|
|
149
|
+
}), props);
|
|
150
|
+
return createComponent(Show, {
|
|
151
|
+
get when() {
|
|
152
|
+
return url();
|
|
153
|
+
},
|
|
154
|
+
get children() {
|
|
155
|
+
return createComponent(sprawlify.img, mergedProps);
|
|
156
|
+
}
|
|
157
|
+
});
|
|
158
|
+
};
|
|
159
|
+
|
|
160
|
+
//#endregion
|
|
161
|
+
//#region src/components/file-upload/file-upload-item-size-text.tsx
|
|
162
|
+
const FileUploadItemSizeText = (props) => {
|
|
163
|
+
const fileUpload$1 = useFileUploadContext();
|
|
164
|
+
const itemProps = useFileUploadItemPropsContext();
|
|
165
|
+
const mergedProps = mergeProps$2(() => fileUpload$1().getItemSizeTextProps(itemProps()), props);
|
|
166
|
+
return createComponent(sprawlify.div, mergeProps$1(mergedProps, { get children() {
|
|
167
|
+
return props.children || fileUpload$1().getFileSize(itemProps().file);
|
|
168
|
+
} }));
|
|
169
|
+
};
|
|
170
|
+
|
|
171
|
+
//#endregion
|
|
172
|
+
//#region src/components/file-upload/file-upload-label.tsx
|
|
173
|
+
const FileUploadLabel = (props) => {
|
|
174
|
+
const fileUpload$1 = useFileUploadContext();
|
|
175
|
+
const mergedProps = mergeProps$2(() => fileUpload$1().getLabelProps(), props);
|
|
176
|
+
return createComponent(sprawlify.label, mergedProps);
|
|
177
|
+
};
|
|
178
|
+
|
|
179
|
+
//#endregion
|
|
180
|
+
//#region src/components/file-upload/use-file-upload.ts
|
|
181
|
+
const useFileUpload = (props) => {
|
|
182
|
+
const id = createUniqueId();
|
|
183
|
+
const locale = useLocaleContext();
|
|
184
|
+
const environment = useEnvironmentContext();
|
|
185
|
+
const field = useFieldContext();
|
|
186
|
+
const machineProps = createMemo(() => ({
|
|
187
|
+
id,
|
|
188
|
+
ids: {
|
|
189
|
+
label: field?.().ids.label,
|
|
190
|
+
hiddenInput: field?.().ids.control
|
|
191
|
+
},
|
|
192
|
+
dir: locale().dir,
|
|
193
|
+
disabled: field?.().disabled,
|
|
194
|
+
locale: locale().locale,
|
|
195
|
+
required: field?.().required,
|
|
196
|
+
invalid: field?.().invalid,
|
|
197
|
+
getRootNode: environment().getRootNode,
|
|
198
|
+
...runIfFn(props)
|
|
199
|
+
}));
|
|
200
|
+
const service = useMachine(fileUpload.machine, machineProps);
|
|
201
|
+
return createMemo(() => fileUpload.connect(service, normalizeProps));
|
|
202
|
+
};
|
|
203
|
+
|
|
204
|
+
//#endregion
|
|
205
|
+
//#region src/components/file-upload/file-upload-root.tsx
|
|
206
|
+
const FileUploadRoot = (props) => {
|
|
207
|
+
const [fileUploadProps, localProps] = createSplitProps()(props, [
|
|
208
|
+
"accept",
|
|
209
|
+
"acceptedFiles",
|
|
210
|
+
"allowDrop",
|
|
211
|
+
"capture",
|
|
212
|
+
"defaultAcceptedFiles",
|
|
213
|
+
"directory",
|
|
214
|
+
"disabled",
|
|
215
|
+
"id",
|
|
216
|
+
"ids",
|
|
217
|
+
"invalid",
|
|
218
|
+
"locale",
|
|
219
|
+
"maxFiles",
|
|
220
|
+
"maxFileSize",
|
|
221
|
+
"minFileSize",
|
|
222
|
+
"name",
|
|
223
|
+
"onFileAccept",
|
|
224
|
+
"onFileChange",
|
|
225
|
+
"onFileReject",
|
|
226
|
+
"preventDocumentDrop",
|
|
227
|
+
"required",
|
|
228
|
+
"translations",
|
|
229
|
+
"transformFiles",
|
|
230
|
+
"validate"
|
|
231
|
+
]);
|
|
232
|
+
const fileUpload$1 = useFileUpload(fileUploadProps);
|
|
233
|
+
const mergedProps = mergeProps$2(() => fileUpload$1().getRootProps(), localProps);
|
|
234
|
+
return createComponent(FileUploadProvider, {
|
|
235
|
+
value: fileUpload$1,
|
|
236
|
+
get children() {
|
|
237
|
+
return createComponent(sprawlify.div, mergedProps);
|
|
238
|
+
}
|
|
239
|
+
});
|
|
240
|
+
};
|
|
241
|
+
|
|
242
|
+
//#endregion
|
|
243
|
+
//#region src/components/file-upload/file-upload-root-provider.tsx
|
|
244
|
+
const FileUploadRootProvider = (props) => {
|
|
245
|
+
const [{ value: fileUpload$1 }, localProps] = createSplitProps()(props, ["value"]);
|
|
246
|
+
const mergedProps = mergeProps$2(() => fileUpload$1().getRootProps(), localProps);
|
|
247
|
+
return createComponent(FileUploadProvider, {
|
|
248
|
+
value: fileUpload$1,
|
|
249
|
+
get children() {
|
|
250
|
+
return createComponent(sprawlify.div, mergedProps);
|
|
251
|
+
}
|
|
252
|
+
});
|
|
253
|
+
};
|
|
254
|
+
|
|
255
|
+
//#endregion
|
|
256
|
+
//#region src/components/file-upload/file-upload-trigger.tsx
|
|
257
|
+
const FileUploadTrigger = (props) => {
|
|
258
|
+
const fileUpload$1 = useFileUploadContext();
|
|
259
|
+
const mergedProps = mergeProps$2(() => fileUpload$1().getTriggerProps(), props);
|
|
260
|
+
return createComponent(sprawlify.button, mergedProps);
|
|
261
|
+
};
|
|
262
|
+
|
|
263
|
+
//#endregion
|
|
264
|
+
//#region src/components/file-upload/file-upload.ts
|
|
265
|
+
var file_upload_exports = /* @__PURE__ */ __export({
|
|
266
|
+
ClearTrigger: () => FileUploadClearTrigger,
|
|
267
|
+
Context: () => FileUploadContext,
|
|
268
|
+
Dropzone: () => FileUploadDropzone,
|
|
269
|
+
HiddenInput: () => FileUploadHiddenInput,
|
|
270
|
+
Item: () => FileUploadItem,
|
|
271
|
+
ItemDeleteTrigger: () => FileUploadItemDeleteTrigger,
|
|
272
|
+
ItemGroup: () => FileUploadItemGroup,
|
|
273
|
+
ItemName: () => FileUploadItemName,
|
|
274
|
+
ItemPreview: () => FileUploadItemPreview,
|
|
275
|
+
ItemPreviewImage: () => FileUploadItemPreviewImage,
|
|
276
|
+
ItemSizeText: () => FileUploadItemSizeText,
|
|
277
|
+
Label: () => FileUploadLabel,
|
|
278
|
+
Root: () => FileUploadRoot,
|
|
279
|
+
RootProvider: () => FileUploadRootProvider,
|
|
280
|
+
Trigger: () => FileUploadTrigger
|
|
281
|
+
});
|
|
282
|
+
|
|
283
|
+
//#endregion
|
|
284
|
+
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,255 @@
|
|
|
1
|
+
import { t as __export } from "../../chunk-dNcSV51B.jsx";
|
|
2
|
+
import { i as useMachine, n as normalizeProps, r as mergeProps$1 } from "../../core-CWSDVCoi.jsx";
|
|
3
|
+
import { t as runIfFn } from "../../run-if-fn-iVu0r8rO.jsx";
|
|
4
|
+
import { t as createContext$1 } from "../../create-context-CpcL7CiV.jsx";
|
|
5
|
+
import { i as useLocaleContext, o as useEnvironmentContext } from "../../providers-BRmk_hzA.jsx";
|
|
6
|
+
import { t as createSplitProps } from "../../create-split-props-DrfYep1t.jsx";
|
|
7
|
+
import { t as sprawlify } from "../../factory-OCDy1fEv.jsx";
|
|
8
|
+
import "../../compose-refs-CDTdkuP1.jsx";
|
|
9
|
+
import "../../fieldset-DT2nCjE0.jsx";
|
|
10
|
+
import { m as useFieldContext } from "../../field-DQLYAOgJ.jsx";
|
|
11
|
+
import { Show, createEffect, createMemo, createSignal, createUniqueId, onCleanup } from "solid-js";
|
|
12
|
+
import * as fileUpload from "@sprawlify/primitives/machines/file-upload";
|
|
13
|
+
import { anatomy as fileUploadAnatomy } from "@sprawlify/primitives/machines/file-upload";
|
|
14
|
+
|
|
15
|
+
//#region src/components/file-upload/use-file-upload-context.ts
|
|
16
|
+
const [FileUploadProvider, useFileUploadContext] = createContext$1({
|
|
17
|
+
hookName: "useFileUploadContext",
|
|
18
|
+
providerName: "<FileUploadProvider />"
|
|
19
|
+
});
|
|
20
|
+
|
|
21
|
+
//#endregion
|
|
22
|
+
//#region src/components/file-upload/file-upload-clear-trigger.tsx
|
|
23
|
+
const FileUploadClearTrigger = (props) => {
|
|
24
|
+
const fileUpload$1 = useFileUploadContext();
|
|
25
|
+
const mergedProps = mergeProps$1(() => fileUpload$1().getClearTriggerProps(), props);
|
|
26
|
+
return <sprawlify.button {...mergedProps} />;
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
//#endregion
|
|
30
|
+
//#region src/components/file-upload/file-upload-context.tsx
|
|
31
|
+
const FileUploadContext = (props) => props.children(useFileUploadContext());
|
|
32
|
+
|
|
33
|
+
//#endregion
|
|
34
|
+
//#region src/components/file-upload/file-upload-dropzone.tsx
|
|
35
|
+
const FileUploadDropzone = (props) => {
|
|
36
|
+
const [dropzoneProps, localProps] = createSplitProps()(props, ["disableClick"]);
|
|
37
|
+
const fileUpload$1 = useFileUploadContext();
|
|
38
|
+
const mergedProps = mergeProps$1(() => fileUpload$1().getDropzoneProps(dropzoneProps), localProps);
|
|
39
|
+
return <sprawlify.div {...mergedProps} />;
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
//#endregion
|
|
43
|
+
//#region src/components/file-upload/file-upload-hidden-input.tsx
|
|
44
|
+
const FileUploadHiddenInput = (props) => {
|
|
45
|
+
const fileUpload$1 = useFileUploadContext();
|
|
46
|
+
const mergedProps = mergeProps$1(() => fileUpload$1().getHiddenInputProps(), props);
|
|
47
|
+
const field = useFieldContext();
|
|
48
|
+
return <sprawlify.input aria-describedby={field?.().ariaDescribedby} {...mergedProps} />;
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
//#endregion
|
|
52
|
+
//#region src/components/file-upload/use-file-upload-item-group-props-context.ts
|
|
53
|
+
const [FileUploadItemGroupPropsProvider, useFileUploadItemGroupPropsContext] = createContext$1({
|
|
54
|
+
hookName: "useFileUploadItemGroupPropsContext",
|
|
55
|
+
providerName: "<FileUploadItemGroupPropsProvider />"
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
//#endregion
|
|
59
|
+
//#region src/components/file-upload/use-file-upload-item-props-context.ts
|
|
60
|
+
const [FileUploadItemPropsProvider, useFileUploadItemPropsContext] = createContext$1({
|
|
61
|
+
hookName: "useFileUploadItemPropsContext",
|
|
62
|
+
providerName: "<FileUploadItemPropsProvider />"
|
|
63
|
+
});
|
|
64
|
+
|
|
65
|
+
//#endregion
|
|
66
|
+
//#region src/components/file-upload/file-upload-item.tsx
|
|
67
|
+
const FileUploadItem = (props) => {
|
|
68
|
+
const [itemProps, localProps] = createSplitProps()(props, ["file"]);
|
|
69
|
+
const fileUpload$1 = useFileUploadContext();
|
|
70
|
+
const itemGroupProps = useFileUploadItemGroupPropsContext();
|
|
71
|
+
const itemPropsWithType = createMemo(() => ({
|
|
72
|
+
...itemProps,
|
|
73
|
+
type: itemGroupProps.type
|
|
74
|
+
}));
|
|
75
|
+
const mergedProps = mergeProps$1(() => fileUpload$1().getItemProps(itemPropsWithType()), localProps);
|
|
76
|
+
return <FileUploadItemPropsProvider value={itemPropsWithType}>
|
|
77
|
+
<sprawlify.li {...mergedProps} />
|
|
78
|
+
</FileUploadItemPropsProvider>;
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
//#endregion
|
|
82
|
+
//#region src/components/file-upload/file-upload-item-delete-trigger.tsx
|
|
83
|
+
const FileUploadItemDeleteTrigger = (props) => {
|
|
84
|
+
const fileUpload$1 = useFileUploadContext();
|
|
85
|
+
const itemProps = useFileUploadItemPropsContext();
|
|
86
|
+
const mergedProps = mergeProps$1(() => fileUpload$1().getItemDeleteTriggerProps(itemProps()), props);
|
|
87
|
+
return <sprawlify.button {...mergedProps} />;
|
|
88
|
+
};
|
|
89
|
+
|
|
90
|
+
//#endregion
|
|
91
|
+
//#region src/components/file-upload/file-upload-item-group.tsx
|
|
92
|
+
const FileUploadItemGroup = (props) => {
|
|
93
|
+
const [itemGroupProps, localProps] = createSplitProps()(props, ["type"]);
|
|
94
|
+
const fileUpload$1 = useFileUploadContext();
|
|
95
|
+
const mergedProps = mergeProps$1(() => fileUpload$1().getItemGroupProps(itemGroupProps), localProps);
|
|
96
|
+
return <FileUploadItemGroupPropsProvider value={itemGroupProps}>
|
|
97
|
+
<sprawlify.ul {...mergedProps} />
|
|
98
|
+
</FileUploadItemGroupPropsProvider>;
|
|
99
|
+
};
|
|
100
|
+
|
|
101
|
+
//#endregion
|
|
102
|
+
//#region src/components/file-upload/file-upload-item-name.tsx
|
|
103
|
+
const FileUploadItemName = (props) => {
|
|
104
|
+
const fileUpload$1 = useFileUploadContext();
|
|
105
|
+
const itemProps = useFileUploadItemPropsContext();
|
|
106
|
+
const mergedProps = mergeProps$1(() => fileUpload$1().getItemNameProps(itemProps()), props);
|
|
107
|
+
return <sprawlify.div {...mergedProps}>{props.children || itemProps().file.name}</sprawlify.div>;
|
|
108
|
+
};
|
|
109
|
+
|
|
110
|
+
//#endregion
|
|
111
|
+
//#region src/components/file-upload/file-upload-item-preview.tsx
|
|
112
|
+
const FileUploadItemPreview = (props) => {
|
|
113
|
+
const fileUpload$1 = useFileUploadContext();
|
|
114
|
+
const itemProps = useFileUploadItemPropsContext();
|
|
115
|
+
const mergedProps = mergeProps$1(() => fileUpload$1().getItemPreviewProps(itemProps()), props);
|
|
116
|
+
return <Show when={itemProps().file.type.match(props.type ?? ".*")}>
|
|
117
|
+
<sprawlify.div {...mergedProps} />
|
|
118
|
+
</Show>;
|
|
119
|
+
};
|
|
120
|
+
|
|
121
|
+
//#endregion
|
|
122
|
+
//#region src/components/file-upload/file-upload-item-preview-image.tsx
|
|
123
|
+
const FileUploadItemPreviewImage = (props) => {
|
|
124
|
+
const fileUpload$1 = useFileUploadContext();
|
|
125
|
+
const itemProps = useFileUploadItemPropsContext();
|
|
126
|
+
const [url, setUrl] = createSignal("");
|
|
127
|
+
createEffect(() => {
|
|
128
|
+
onCleanup(fileUpload$1().createFileUrl(itemProps().file, (url$1) => setUrl(url$1)));
|
|
129
|
+
});
|
|
130
|
+
const mergedProps = mergeProps$1(() => fileUpload$1().getItemPreviewImageProps({
|
|
131
|
+
...itemProps(),
|
|
132
|
+
url: url()
|
|
133
|
+
}), props);
|
|
134
|
+
return <Show when={url()}>
|
|
135
|
+
<sprawlify.img {...mergedProps} />
|
|
136
|
+
</Show>;
|
|
137
|
+
};
|
|
138
|
+
|
|
139
|
+
//#endregion
|
|
140
|
+
//#region src/components/file-upload/file-upload-item-size-text.tsx
|
|
141
|
+
const FileUploadItemSizeText = (props) => {
|
|
142
|
+
const fileUpload$1 = useFileUploadContext();
|
|
143
|
+
const itemProps = useFileUploadItemPropsContext();
|
|
144
|
+
const mergedProps = mergeProps$1(() => fileUpload$1().getItemSizeTextProps(itemProps()), props);
|
|
145
|
+
return <sprawlify.div {...mergedProps}>{props.children || fileUpload$1().getFileSize(itemProps().file)}</sprawlify.div>;
|
|
146
|
+
};
|
|
147
|
+
|
|
148
|
+
//#endregion
|
|
149
|
+
//#region src/components/file-upload/file-upload-label.tsx
|
|
150
|
+
const FileUploadLabel = (props) => {
|
|
151
|
+
const fileUpload$1 = useFileUploadContext();
|
|
152
|
+
const mergedProps = mergeProps$1(() => fileUpload$1().getLabelProps(), props);
|
|
153
|
+
return <sprawlify.label {...mergedProps} />;
|
|
154
|
+
};
|
|
155
|
+
|
|
156
|
+
//#endregion
|
|
157
|
+
//#region src/components/file-upload/use-file-upload.ts
|
|
158
|
+
const useFileUpload = (props) => {
|
|
159
|
+
const id = createUniqueId();
|
|
160
|
+
const locale = useLocaleContext();
|
|
161
|
+
const environment = useEnvironmentContext();
|
|
162
|
+
const field = useFieldContext();
|
|
163
|
+
const machineProps = createMemo(() => ({
|
|
164
|
+
id,
|
|
165
|
+
ids: {
|
|
166
|
+
label: field?.().ids.label,
|
|
167
|
+
hiddenInput: field?.().ids.control
|
|
168
|
+
},
|
|
169
|
+
dir: locale().dir,
|
|
170
|
+
disabled: field?.().disabled,
|
|
171
|
+
locale: locale().locale,
|
|
172
|
+
required: field?.().required,
|
|
173
|
+
invalid: field?.().invalid,
|
|
174
|
+
getRootNode: environment().getRootNode,
|
|
175
|
+
...runIfFn(props)
|
|
176
|
+
}));
|
|
177
|
+
const service = useMachine(fileUpload.machine, machineProps);
|
|
178
|
+
return createMemo(() => fileUpload.connect(service, normalizeProps));
|
|
179
|
+
};
|
|
180
|
+
|
|
181
|
+
//#endregion
|
|
182
|
+
//#region src/components/file-upload/file-upload-root.tsx
|
|
183
|
+
const FileUploadRoot = (props) => {
|
|
184
|
+
const [fileUploadProps, localProps] = createSplitProps()(props, [
|
|
185
|
+
"accept",
|
|
186
|
+
"acceptedFiles",
|
|
187
|
+
"allowDrop",
|
|
188
|
+
"capture",
|
|
189
|
+
"defaultAcceptedFiles",
|
|
190
|
+
"directory",
|
|
191
|
+
"disabled",
|
|
192
|
+
"id",
|
|
193
|
+
"ids",
|
|
194
|
+
"invalid",
|
|
195
|
+
"locale",
|
|
196
|
+
"maxFiles",
|
|
197
|
+
"maxFileSize",
|
|
198
|
+
"minFileSize",
|
|
199
|
+
"name",
|
|
200
|
+
"onFileAccept",
|
|
201
|
+
"onFileChange",
|
|
202
|
+
"onFileReject",
|
|
203
|
+
"preventDocumentDrop",
|
|
204
|
+
"required",
|
|
205
|
+
"translations",
|
|
206
|
+
"transformFiles",
|
|
207
|
+
"validate"
|
|
208
|
+
]);
|
|
209
|
+
const fileUpload$1 = useFileUpload(fileUploadProps);
|
|
210
|
+
const mergedProps = mergeProps$1(() => fileUpload$1().getRootProps(), localProps);
|
|
211
|
+
return <FileUploadProvider value={fileUpload$1}>
|
|
212
|
+
<sprawlify.div {...mergedProps} />
|
|
213
|
+
</FileUploadProvider>;
|
|
214
|
+
};
|
|
215
|
+
|
|
216
|
+
//#endregion
|
|
217
|
+
//#region src/components/file-upload/file-upload-root-provider.tsx
|
|
218
|
+
const FileUploadRootProvider = (props) => {
|
|
219
|
+
const [{ value: fileUpload$1 }, localProps] = createSplitProps()(props, ["value"]);
|
|
220
|
+
const mergedProps = mergeProps$1(() => fileUpload$1().getRootProps(), localProps);
|
|
221
|
+
return <FileUploadProvider value={fileUpload$1}>
|
|
222
|
+
<sprawlify.div {...mergedProps} />
|
|
223
|
+
</FileUploadProvider>;
|
|
224
|
+
};
|
|
225
|
+
|
|
226
|
+
//#endregion
|
|
227
|
+
//#region src/components/file-upload/file-upload-trigger.tsx
|
|
228
|
+
const FileUploadTrigger = (props) => {
|
|
229
|
+
const fileUpload$1 = useFileUploadContext();
|
|
230
|
+
const mergedProps = mergeProps$1(() => fileUpload$1().getTriggerProps(), props);
|
|
231
|
+
return <sprawlify.button {...mergedProps} />;
|
|
232
|
+
};
|
|
233
|
+
|
|
234
|
+
//#endregion
|
|
235
|
+
//#region src/components/file-upload/file-upload.ts
|
|
236
|
+
var file_upload_exports = /* @__PURE__ */ __export({
|
|
237
|
+
ClearTrigger: () => FileUploadClearTrigger,
|
|
238
|
+
Context: () => FileUploadContext,
|
|
239
|
+
Dropzone: () => FileUploadDropzone,
|
|
240
|
+
HiddenInput: () => FileUploadHiddenInput,
|
|
241
|
+
Item: () => FileUploadItem,
|
|
242
|
+
ItemDeleteTrigger: () => FileUploadItemDeleteTrigger,
|
|
243
|
+
ItemGroup: () => FileUploadItemGroup,
|
|
244
|
+
ItemName: () => FileUploadItemName,
|
|
245
|
+
ItemPreview: () => FileUploadItemPreview,
|
|
246
|
+
ItemPreviewImage: () => FileUploadItemPreviewImage,
|
|
247
|
+
ItemSizeText: () => FileUploadItemSizeText,
|
|
248
|
+
Label: () => FileUploadLabel,
|
|
249
|
+
Root: () => FileUploadRoot,
|
|
250
|
+
RootProvider: () => FileUploadRootProvider,
|
|
251
|
+
Trigger: () => FileUploadTrigger
|
|
252
|
+
});
|
|
253
|
+
|
|
254
|
+
//#endregion
|
|
255
|
+
export { file_upload_exports as FileUpload, FileUploadClearTrigger, FileUploadContext, FileUploadDropzone, FileUploadHiddenInput, FileUploadItem, FileUploadItemDeleteTrigger, FileUploadItemGroup, FileUploadItemName, FileUploadItemPreview, FileUploadItemPreviewImage, FileUploadItemSizeText, FileUploadLabel, FileUploadRoot, FileUploadRootProvider, FileUploadTrigger, fileUploadAnatomy, useFileUpload, useFileUploadContext };
|