@useupup/svelte 3.3.0
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/LICENSE +21 -0
- package/README.md +60 -0
- package/dist/UpupUploader.svelte +96 -0
- package/dist/UpupUploader.svelte.d.ts +5 -0
- package/dist/UpupUploader.svelte.d.ts.map +1 -0
- package/dist/assets/logos.d.ts +5 -0
- package/dist/assets/logos.d.ts.map +1 -0
- package/dist/assets/logos.js +4 -0
- package/dist/components/AudioUploader.svelte +220 -0
- package/dist/components/AudioUploader.svelte.d.ts +4 -0
- package/dist/components/AudioUploader.svelte.d.ts.map +1 -0
- package/dist/components/AudioWaveform.svelte +72 -0
- package/dist/components/AudioWaveform.svelte.d.ts +7 -0
- package/dist/components/AudioWaveform.svelte.d.ts.map +1 -0
- package/dist/components/BoxUploader.svelte +17 -0
- package/dist/components/BoxUploader.svelte.d.ts +19 -0
- package/dist/components/BoxUploader.svelte.d.ts.map +1 -0
- package/dist/components/CameraUploader.svelte +140 -0
- package/dist/components/CameraUploader.svelte.d.ts +4 -0
- package/dist/components/CameraUploader.svelte.d.ts.map +1 -0
- package/dist/components/ClientBoxUploader.svelte +60 -0
- package/dist/components/ClientBoxUploader.svelte.d.ts +19 -0
- package/dist/components/ClientBoxUploader.svelte.d.ts.map +1 -0
- package/dist/components/ClientDropboxUploader.svelte +60 -0
- package/dist/components/ClientDropboxUploader.svelte.d.ts +19 -0
- package/dist/components/ClientDropboxUploader.svelte.d.ts.map +1 -0
- package/dist/components/ClientGoogleDriveUploader.svelte +57 -0
- package/dist/components/ClientGoogleDriveUploader.svelte.d.ts +19 -0
- package/dist/components/ClientGoogleDriveUploader.svelte.d.ts.map +1 -0
- package/dist/components/ClientOneDriveUploader.svelte +60 -0
- package/dist/components/ClientOneDriveUploader.svelte.d.ts +19 -0
- package/dist/components/ClientOneDriveUploader.svelte.d.ts.map +1 -0
- package/dist/components/DefaultAddMoreIcon.svelte +11 -0
- package/dist/components/DefaultAddMoreIcon.svelte.d.ts +8 -0
- package/dist/components/DefaultAddMoreIcon.svelte.d.ts.map +1 -0
- package/dist/components/DefaultLoaderIcon.svelte +5 -0
- package/dist/components/DefaultLoaderIcon.svelte.d.ts +19 -0
- package/dist/components/DefaultLoaderIcon.svelte.d.ts.map +1 -0
- package/dist/components/DropboxUploader.svelte +17 -0
- package/dist/components/DropboxUploader.svelte.d.ts +19 -0
- package/dist/components/DropboxUploader.svelte.d.ts.map +1 -0
- package/dist/components/EmptyIcon.svelte +3 -0
- package/dist/components/EmptyIcon.svelte.d.ts +19 -0
- package/dist/components/EmptyIcon.svelte.d.ts.map +1 -0
- package/dist/components/FileHero.svelte +152 -0
- package/dist/components/FileHero.svelte.d.ts +8 -0
- package/dist/components/FileHero.svelte.d.ts.map +1 -0
- package/dist/components/FileIcon.svelte +23 -0
- package/dist/components/FileIcon.svelte.d.ts +8 -0
- package/dist/components/FileIcon.svelte.d.ts.map +1 -0
- package/dist/components/FileItem.svelte +95 -0
- package/dist/components/FileItem.svelte.d.ts +12 -0
- package/dist/components/FileItem.svelte.d.ts.map +1 -0
- package/dist/components/FileList.svelte +442 -0
- package/dist/components/FileList.svelte.d.ts +4 -0
- package/dist/components/FileList.svelte.d.ts.map +1 -0
- package/dist/components/FilePreview.svelte +218 -0
- package/dist/components/FilePreview.svelte.d.ts +17 -0
- package/dist/components/FilePreview.svelte.d.ts.map +1 -0
- package/dist/components/FilePreviewPortal.svelte +189 -0
- package/dist/components/FilePreviewPortal.svelte.d.ts +12 -0
- package/dist/components/FilePreviewPortal.svelte.d.ts.map +1 -0
- package/dist/components/FilePreviewThumbnail.svelte +87 -0
- package/dist/components/FilePreviewThumbnail.svelte.d.ts +17 -0
- package/dist/components/FilePreviewThumbnail.svelte.d.ts.map +1 -0
- package/dist/components/FileRow.svelte +192 -0
- package/dist/components/FileRow.svelte.d.ts +10 -0
- package/dist/components/FileRow.svelte.d.ts.map +1 -0
- package/dist/components/GoogleDriveUploader.svelte +17 -0
- package/dist/components/GoogleDriveUploader.svelte.d.ts +19 -0
- package/dist/components/GoogleDriveUploader.svelte.d.ts.map +1 -0
- package/dist/components/Icon.svelte +24 -0
- package/dist/components/Icon.svelte.d.ts +10 -0
- package/dist/components/Icon.svelte.d.ts.map +1 -0
- package/dist/components/Icons.d.ts +10 -0
- package/dist/components/Icons.d.ts.map +1 -0
- package/dist/components/Icons.js +9 -0
- package/dist/components/ImageEditorStub.svelte +3 -0
- package/dist/components/ImageEditorStub.svelte.d.ts +19 -0
- package/dist/components/ImageEditorStub.svelte.d.ts.map +1 -0
- package/dist/components/OneDriveUploader.svelte +17 -0
- package/dist/components/OneDriveUploader.svelte.d.ts +19 -0
- package/dist/components/OneDriveUploader.svelte.d.ts.map +1 -0
- package/dist/components/ScreenCaptureUploader.svelte +254 -0
- package/dist/components/ScreenCaptureUploader.svelte.d.ts +4 -0
- package/dist/components/ScreenCaptureUploader.svelte.d.ts.map +1 -0
- package/dist/components/ServerModeDriveUploader.svelte +250 -0
- package/dist/components/ServerModeDriveUploader.svelte.d.ts +10 -0
- package/dist/components/ServerModeDriveUploader.svelte.d.ts.map +1 -0
- package/dist/components/SourceSelector.svelte +292 -0
- package/dist/components/SourceSelector.svelte.d.ts +19 -0
- package/dist/components/SourceSelector.svelte.d.ts.map +1 -0
- package/dist/components/SourceView.svelte +100 -0
- package/dist/components/SourceView.svelte.d.ts +4 -0
- package/dist/components/SourceView.svelte.d.ts.map +1 -0
- package/dist/components/TrashIcon.svelte +11 -0
- package/dist/components/TrashIcon.svelte.d.ts +8 -0
- package/dist/components/TrashIcon.svelte.d.ts.map +1 -0
- package/dist/components/UploaderPanel.svelte +363 -0
- package/dist/components/UploaderPanel.svelte.d.ts +4 -0
- package/dist/components/UploaderPanel.svelte.d.ts.map +1 -0
- package/dist/components/UrlUploader.svelte +71 -0
- package/dist/components/UrlUploader.svelte.d.ts +4 -0
- package/dist/components/UrlUploader.svelte.d.ts.map +1 -0
- package/dist/components/icons/AudioIcon.svelte +5 -0
- package/dist/components/icons/AudioIcon.svelte.d.ts +7 -0
- package/dist/components/icons/AudioIcon.svelte.d.ts.map +1 -0
- package/dist/components/icons/BoxIcon.svelte +5 -0
- package/dist/components/icons/BoxIcon.svelte.d.ts +7 -0
- package/dist/components/icons/BoxIcon.svelte.d.ts.map +1 -0
- package/dist/components/icons/CameraIcon.svelte +5 -0
- package/dist/components/icons/CameraIcon.svelte.d.ts +7 -0
- package/dist/components/icons/CameraIcon.svelte.d.ts.map +1 -0
- package/dist/components/icons/DropboxIcon.svelte +5 -0
- package/dist/components/icons/DropboxIcon.svelte.d.ts +7 -0
- package/dist/components/icons/DropboxIcon.svelte.d.ts.map +1 -0
- package/dist/components/icons/GoogleDriveIcon.svelte +5 -0
- package/dist/components/icons/GoogleDriveIcon.svelte.d.ts +7 -0
- package/dist/components/icons/GoogleDriveIcon.svelte.d.ts.map +1 -0
- package/dist/components/icons/LinkIcon.svelte +5 -0
- package/dist/components/icons/LinkIcon.svelte.d.ts +7 -0
- package/dist/components/icons/LinkIcon.svelte.d.ts.map +1 -0
- package/dist/components/icons/MyDeviceIcon.svelte +5 -0
- package/dist/components/icons/MyDeviceIcon.svelte.d.ts +7 -0
- package/dist/components/icons/MyDeviceIcon.svelte.d.ts.map +1 -0
- package/dist/components/icons/OneDriveIcon.svelte +5 -0
- package/dist/components/icons/OneDriveIcon.svelte.d.ts +7 -0
- package/dist/components/icons/OneDriveIcon.svelte.d.ts.map +1 -0
- package/dist/components/icons/ScreenCaptureIcon.svelte +5 -0
- package/dist/components/icons/ScreenCaptureIcon.svelte.d.ts +7 -0
- package/dist/components/icons/ScreenCaptureIcon.svelte.d.ts.map +1 -0
- package/dist/components/shared/DriveAuthFallback.svelte +60 -0
- package/dist/components/shared/DriveAuthFallback.svelte.d.ts +12 -0
- package/dist/components/shared/DriveAuthFallback.svelte.d.ts.map +1 -0
- package/dist/components/shared/DriveBrowser.svelte +209 -0
- package/dist/components/shared/DriveBrowser.svelte.d.ts +25 -0
- package/dist/components/shared/DriveBrowser.svelte.d.ts.map +1 -0
- package/dist/components/shared/DriveBrowserHeader.svelte +191 -0
- package/dist/components/shared/DriveBrowserHeader.svelte.d.ts +14 -0
- package/dist/components/shared/DriveBrowserHeader.svelte.d.ts.map +1 -0
- package/dist/components/shared/DriveBrowserIcon.svelte +39 -0
- package/dist/components/shared/DriveBrowserIcon.svelte.d.ts +8 -0
- package/dist/components/shared/DriveBrowserIcon.svelte.d.ts.map +1 -0
- package/dist/components/shared/DriveBrowserItem.svelte +63 -0
- package/dist/components/shared/DriveBrowserItem.svelte.d.ts +10 -0
- package/dist/components/shared/DriveBrowserItem.svelte.d.ts.map +1 -0
- package/dist/components/shared/FileSuccessCheck.svelte +47 -0
- package/dist/components/shared/FileSuccessCheck.svelte.d.ts +10 -0
- package/dist/components/shared/FileSuccessCheck.svelte.d.ts.map +1 -0
- package/dist/components/shared/ProgressBar.svelte +81 -0
- package/dist/components/shared/ProgressBar.svelte.d.ts +10 -0
- package/dist/components/shared/ProgressBar.svelte.d.ts.map +1 -0
- package/dist/components/shared/SourceViewContainer.svelte +27 -0
- package/dist/components/shared/SourceViewContainer.svelte.d.ts +10 -0
- package/dist/components/shared/SourceViewContainer.svelte.d.ts.map +1 -0
- package/dist/components/shared/UploaderHeader.svelte +156 -0
- package/dist/components/shared/UploaderHeader.svelte.d.ts +13 -0
- package/dist/components/shared/UploaderHeader.svelte.d.ts.map +1 -0
- package/dist/composables/use-tiles-per-row.d.ts +19 -0
- package/dist/composables/use-tiles-per-row.d.ts.map +1 -0
- package/dist/composables/use-tiles-per-row.js +30 -0
- package/dist/composables/useBox.d.ts +28 -0
- package/dist/composables/useBox.d.ts.map +1 -0
- package/dist/composables/useBox.js +61 -0
- package/dist/composables/useCameraUploader.d.ts +23 -0
- package/dist/composables/useCameraUploader.d.ts.map +1 -0
- package/dist/composables/useCameraUploader.js +114 -0
- package/dist/composables/useDropbox.d.ts +28 -0
- package/dist/composables/useDropbox.d.ts.map +1 -0
- package/dist/composables/useDropbox.js +61 -0
- package/dist/composables/useFetchFileByUrl.d.ts +9 -0
- package/dist/composables/useFetchFileByUrl.d.ts.map +1 -0
- package/dist/composables/useFetchFileByUrl.js +33 -0
- package/dist/composables/useGoogleDrive.d.ts +28 -0
- package/dist/composables/useGoogleDrive.d.ts.map +1 -0
- package/dist/composables/useGoogleDrive.js +65 -0
- package/dist/composables/useOneDrive.d.ts +29 -0
- package/dist/composables/useOneDrive.d.ts.map +1 -0
- package/dist/composables/useOneDrive.js +64 -0
- package/dist/composables/useSSEProcessing.d.ts +20 -0
- package/dist/composables/useSSEProcessing.d.ts.map +1 -0
- package/dist/composables/useSSEProcessing.js +17 -0
- package/dist/composables/useServerModeDrive.d.ts +17 -0
- package/dist/composables/useServerModeDrive.d.ts.map +1 -0
- package/dist/composables/useServerModeDrive.js +33 -0
- package/dist/composables/useSourceSelector.d.ts +13 -0
- package/dist/composables/useSourceSelector.d.ts.map +1 -0
- package/dist/composables/useSourceSelector.js +36 -0
- package/dist/composables/useUploaderPanel.d.ts +12 -0
- package/dist/composables/useUploaderPanel.d.ts.map +1 -0
- package/dist/composables/useUploaderPanel.js +43 -0
- package/dist/context/create-uploader-context.d.ts +4 -0
- package/dist/context/create-uploader-context.d.ts.map +1 -0
- package/dist/context/create-uploader-context.js +324 -0
- package/dist/context/source-view-header-extra.d.ts +14 -0
- package/dist/context/source-view-header-extra.d.ts.map +1 -0
- package/dist/context/source-view-header-extra.js +41 -0
- package/dist/context/uploader-context.d.ts +109 -0
- package/dist/context/uploader-context.d.ts.map +1 -0
- package/dist/context/uploader-context.js +96 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +5 -0
- package/dist/lib/constants.d.ts +13 -0
- package/dist/lib/constants.d.ts.map +1 -0
- package/dist/lib/constants.js +67 -0
- package/dist/lib/to-readable.d.ts +14 -0
- package/dist/lib/to-readable.d.ts.map +1 -0
- package/dist/lib/to-readable.js +15 -0
- package/dist/lib/view-mode.d.ts +24 -0
- package/dist/lib/view-mode.d.ts.map +1 -0
- package/dist/lib/view-mode.js +31 -0
- package/dist/shared/types.d.ts +15 -0
- package/dist/shared/types.d.ts.map +1 -0
- package/dist/shared/types.js +1 -0
- package/dist/styles.d.ts +4 -0
- package/dist/tailwind-prefixed.css +2479 -0
- package/dist/tailwind.css +74 -0
- package/dist/use-upup-upload.d.ts +38 -0
- package/dist/use-upup-upload.d.ts.map +1 -0
- package/dist/use-upup-upload.js +81 -0
- package/package.json +101 -0
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
@tailwind base;
|
|
2
|
+
@tailwind components;
|
|
3
|
+
@tailwind utilities;
|
|
4
|
+
@layer components {
|
|
5
|
+
/* Top "lit-from-above" sheen for the gradient panel chrome. Drawn on a
|
|
6
|
+
::before so no per-framework DOM node is added. The dark tint is keyed on
|
|
7
|
+
an explicit modifier class (upup-panel-sheen-dark) applied in JS from the
|
|
8
|
+
resolved theme mode, because the product toggles theme via data-theme (not
|
|
9
|
+
a .dark ancestor) and the .upup-scope prefix would break an ancestor
|
|
10
|
+
selector anyway. */
|
|
11
|
+
.upup-panel-sheen {
|
|
12
|
+
position: relative;
|
|
13
|
+
}
|
|
14
|
+
.upup-panel-sheen::before {
|
|
15
|
+
content: '';
|
|
16
|
+
position: absolute;
|
|
17
|
+
inset-inline: 0;
|
|
18
|
+
top: 0;
|
|
19
|
+
height: 6rem;
|
|
20
|
+
pointer-events: none;
|
|
21
|
+
border-radius: inherit;
|
|
22
|
+
background: linear-gradient(
|
|
23
|
+
to bottom,
|
|
24
|
+
rgba(255, 255, 255, 0.5),
|
|
25
|
+
transparent
|
|
26
|
+
);
|
|
27
|
+
}
|
|
28
|
+
.upup-panel-sheen-dark::before {
|
|
29
|
+
background: linear-gradient(
|
|
30
|
+
to bottom,
|
|
31
|
+
rgba(255, 255, 255, 0.08),
|
|
32
|
+
transparent
|
|
33
|
+
);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
.upup-preview-scroll {
|
|
37
|
+
/* width */
|
|
38
|
+
&::-webkit-scrollbar {
|
|
39
|
+
width: 6px;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
/* Track */
|
|
43
|
+
&::-webkit-scrollbar-track {
|
|
44
|
+
background: #eaeaea;
|
|
45
|
+
border-radius: 10px;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
/* Handle */
|
|
49
|
+
&::-webkit-scrollbar-thumb {
|
|
50
|
+
background: #c5cafb;
|
|
51
|
+
border-radius: 10px;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
/* Handle on hover */
|
|
55
|
+
&::-webkit-scrollbar-thumb:hover {
|
|
56
|
+
background: #c5cafb;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
@layer utilities {
|
|
62
|
+
.upup-shadow-top {
|
|
63
|
+
box-shadow: 0 -1px 0 0 rgba(128, 128, 128, 0.35);
|
|
64
|
+
}
|
|
65
|
+
.upup-shadow-right {
|
|
66
|
+
box-shadow: 1px 0 0 0 rgba(128, 128, 128, 0.35);
|
|
67
|
+
}
|
|
68
|
+
.upup-shadow-bottom {
|
|
69
|
+
box-shadow: 0 1px 0 0 rgba(128, 128, 128, 0.35);
|
|
70
|
+
}
|
|
71
|
+
.upup-shadow-left {
|
|
72
|
+
box-shadow: -1px 0 0 0 rgba(128, 128, 128, 0.35);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { type Writable } from 'svelte/store';
|
|
2
|
+
import { UpupCore, UploadStatus } from '@useupup/core';
|
|
3
|
+
import type { CoreOptions, UploadFile, ExtensionMethods } from '@useupup/core';
|
|
4
|
+
export interface UseUpupUploadOptions extends CoreOptions {
|
|
5
|
+
onFileAdded?: (files: UploadFile[]) => void;
|
|
6
|
+
onFileRemoved?: (file: UploadFile) => void;
|
|
7
|
+
onUploadProgress?: (progress: {
|
|
8
|
+
fileId: string;
|
|
9
|
+
loaded: number;
|
|
10
|
+
total: number;
|
|
11
|
+
}) => void;
|
|
12
|
+
onUploadComplete?: (files: UploadFile[]) => void;
|
|
13
|
+
}
|
|
14
|
+
export interface UseUpupUploadReturn {
|
|
15
|
+
files: Writable<UploadFile[]>;
|
|
16
|
+
status: Writable<UploadStatus>;
|
|
17
|
+
progress: Writable<{
|
|
18
|
+
totalFiles: number;
|
|
19
|
+
completedFiles: number;
|
|
20
|
+
percentage: number;
|
|
21
|
+
}>;
|
|
22
|
+
error: Writable<Error | null>;
|
|
23
|
+
addFiles(files: File[]): Promise<void>;
|
|
24
|
+
removeFile(id: string): void;
|
|
25
|
+
removeAll(): void;
|
|
26
|
+
setFiles(files: File[]): Promise<void>;
|
|
27
|
+
reorderFiles(fileIds: string[]): void;
|
|
28
|
+
upload(): Promise<UploadFile[]>;
|
|
29
|
+
pause(): void;
|
|
30
|
+
resume(): void;
|
|
31
|
+
cancel(): void;
|
|
32
|
+
retry(fileId?: string): Promise<UploadFile[]>;
|
|
33
|
+
on(event: string, handler: (...args: unknown[]) => void): () => void;
|
|
34
|
+
ext: Record<string, ExtensionMethods>;
|
|
35
|
+
core: UpupCore;
|
|
36
|
+
}
|
|
37
|
+
export declare function useUpupUpload(options: UseUpupUploadOptions): UseUpupUploadReturn;
|
|
38
|
+
//# sourceMappingURL=use-upup-upload.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-upup-upload.d.ts","sourceRoot":"","sources":["../src/use-upup-upload.ts"],"names":[],"mappings":"AACA,OAAO,EAAY,KAAK,QAAQ,EAAE,MAAM,cAAc,CAAA;AACtD,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAE9E,MAAM,WAAW,oBAAqB,SAAQ,WAAW;IACrD,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,IAAI,CAAA;IAC3C,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,IAAI,CAAA;IAC1C,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE;QAC1B,MAAM,EAAE,MAAM,CAAA;QACd,MAAM,EAAE,MAAM,CAAA;QACd,KAAK,EAAE,MAAM,CAAA;KAChB,KAAK,IAAI,CAAA;IACV,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,IAAI,CAAA;CACnD;AAED,MAAM,WAAW,mBAAmB;IAChC,KAAK,EAAE,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAA;IAC7B,MAAM,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAA;IAC9B,QAAQ,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,MAAM,CAAA;QAClB,cAAc,EAAE,MAAM,CAAA;QACtB,UAAU,EAAE,MAAM,CAAA;KACrB,CAAC,CAAA;IACF,KAAK,EAAE,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,CAAA;IAC7B,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACtC,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,SAAS,IAAI,IAAI,CAAA;IACjB,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACtC,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,CAAA;IACrC,MAAM,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC,CAAA;IAC/B,KAAK,IAAI,IAAI,CAAA;IACb,MAAM,IAAI,IAAI,CAAA;IACd,MAAM,IAAI,IAAI,CAAA;IACd,KAAK,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAAA;IAC7C,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,GAAG,MAAM,IAAI,CAAA;IACpE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;IACrC,IAAI,EAAE,QAAQ,CAAA;CACjB;AAED,wBAAgB,aAAa,CACzB,OAAO,EAAE,oBAAoB,GAC9B,mBAAmB,CAqGrB"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { onMount, onDestroy } from 'svelte';
|
|
2
|
+
import { writable } from 'svelte/store';
|
|
3
|
+
import { UpupCore } from '@useupup/core';
|
|
4
|
+
export function useUpupUpload(options) {
|
|
5
|
+
const core = new UpupCore(options);
|
|
6
|
+
const files = writable([...core.files.values()]);
|
|
7
|
+
const status = writable(core.status);
|
|
8
|
+
const progress = writable({
|
|
9
|
+
totalFiles: 0,
|
|
10
|
+
completedFiles: 0,
|
|
11
|
+
percentage: 0,
|
|
12
|
+
});
|
|
13
|
+
const error = writable(null);
|
|
14
|
+
const unsubs = [];
|
|
15
|
+
onMount(() => {
|
|
16
|
+
unsubs.push(core.on('state-change', () => {
|
|
17
|
+
files.set([...core.files.values()]);
|
|
18
|
+
status.set(core.status);
|
|
19
|
+
progress.set(core.progress);
|
|
20
|
+
error.set(core.error);
|
|
21
|
+
}));
|
|
22
|
+
const { onFileAdded, onFileRemoved, onUploadProgress, onUploadComplete, } = options;
|
|
23
|
+
if (onFileAdded)
|
|
24
|
+
unsubs.push(core.on('files-added', (...a) => {
|
|
25
|
+
onFileAdded(...a);
|
|
26
|
+
}));
|
|
27
|
+
if (onFileRemoved)
|
|
28
|
+
unsubs.push(core.on('file-removed', (...a) => {
|
|
29
|
+
onFileRemoved(...a);
|
|
30
|
+
}));
|
|
31
|
+
if (onUploadProgress)
|
|
32
|
+
unsubs.push(core.on('upload-progress', (...a) => {
|
|
33
|
+
onUploadProgress(...a);
|
|
34
|
+
}));
|
|
35
|
+
if (onUploadComplete)
|
|
36
|
+
unsubs.push(core.on('upload-all-complete', (...a) => {
|
|
37
|
+
onUploadComplete(...a);
|
|
38
|
+
}));
|
|
39
|
+
});
|
|
40
|
+
onDestroy(() => {
|
|
41
|
+
unsubs.forEach(u => {
|
|
42
|
+
u();
|
|
43
|
+
});
|
|
44
|
+
core.destroy();
|
|
45
|
+
});
|
|
46
|
+
// Untyped passthrough for the port's string-typed public `on` — the typed
|
|
47
|
+
// CoreEvents surface lives on core itself (F-723). Dynamic string names
|
|
48
|
+
// route through the namespaced overload (same runtime dispatch).
|
|
49
|
+
const onUntyped = (ev, hh) => core.on(ev, hh);
|
|
50
|
+
return {
|
|
51
|
+
files,
|
|
52
|
+
status,
|
|
53
|
+
progress,
|
|
54
|
+
error,
|
|
55
|
+
addFiles: (f) => core.addFiles(f),
|
|
56
|
+
removeFile: (id) => {
|
|
57
|
+
core.removeFile(id);
|
|
58
|
+
},
|
|
59
|
+
removeAll: () => {
|
|
60
|
+
core.removeAll();
|
|
61
|
+
},
|
|
62
|
+
setFiles: (f) => core.setFiles(f),
|
|
63
|
+
reorderFiles: (ids) => {
|
|
64
|
+
core.reorderFiles(ids);
|
|
65
|
+
},
|
|
66
|
+
upload: () => core.upload(),
|
|
67
|
+
pause: () => {
|
|
68
|
+
core.pause();
|
|
69
|
+
},
|
|
70
|
+
resume: () => {
|
|
71
|
+
core.resume();
|
|
72
|
+
},
|
|
73
|
+
cancel: () => {
|
|
74
|
+
core.cancel();
|
|
75
|
+
},
|
|
76
|
+
retry: (id) => core.retry(id),
|
|
77
|
+
on: (e, h) => onUntyped(e, h),
|
|
78
|
+
ext: core.ext,
|
|
79
|
+
core,
|
|
80
|
+
};
|
|
81
|
+
}
|
package/package.json
ADDED
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@useupup/svelte",
|
|
3
|
+
"version": "3.3.0",
|
|
4
|
+
"description": "Svelte 5 file uploader with cloud-drive sources, resumable uploads, theming, and ICU i18n.",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"file-upload",
|
|
7
|
+
"file-uploader",
|
|
8
|
+
"upload",
|
|
9
|
+
"uploader",
|
|
10
|
+
"svelte",
|
|
11
|
+
"sveltekit",
|
|
12
|
+
"drag-and-drop",
|
|
13
|
+
"dropzone",
|
|
14
|
+
"s3",
|
|
15
|
+
"presigned-url",
|
|
16
|
+
"google-drive",
|
|
17
|
+
"one-drive",
|
|
18
|
+
"dropbox",
|
|
19
|
+
"camera",
|
|
20
|
+
"typescript"
|
|
21
|
+
],
|
|
22
|
+
"homepage": "https://useupup.com",
|
|
23
|
+
"bugs": {
|
|
24
|
+
"url": "https://github.com/DevinoSolutions/upup/issues"
|
|
25
|
+
},
|
|
26
|
+
"repository": {
|
|
27
|
+
"type": "git",
|
|
28
|
+
"url": "git+https://github.com/DevinoSolutions/upup.git",
|
|
29
|
+
"directory": "packages/svelte"
|
|
30
|
+
},
|
|
31
|
+
"license": "MIT",
|
|
32
|
+
"publishConfig": {
|
|
33
|
+
"access": "public"
|
|
34
|
+
},
|
|
35
|
+
"type": "module",
|
|
36
|
+
"sideEffects": [
|
|
37
|
+
"*.css"
|
|
38
|
+
],
|
|
39
|
+
"engines": {
|
|
40
|
+
"node": ">=20"
|
|
41
|
+
},
|
|
42
|
+
"svelte": "./dist/index.js",
|
|
43
|
+
"main": "./dist/index.js",
|
|
44
|
+
"module": "./dist/index.js",
|
|
45
|
+
"types": "./dist/index.d.ts",
|
|
46
|
+
"typesVersions": {
|
|
47
|
+
"*": {
|
|
48
|
+
"styles": [
|
|
49
|
+
"dist/styles.d.ts"
|
|
50
|
+
]
|
|
51
|
+
}
|
|
52
|
+
},
|
|
53
|
+
"exports": {
|
|
54
|
+
".": {
|
|
55
|
+
"types": "./dist/index.d.ts",
|
|
56
|
+
"svelte": "./dist/index.js",
|
|
57
|
+
"default": "./dist/index.js"
|
|
58
|
+
},
|
|
59
|
+
"./styles": {
|
|
60
|
+
"types": "./dist/styles.d.ts",
|
|
61
|
+
"default": "./dist/tailwind-prefixed.css"
|
|
62
|
+
}
|
|
63
|
+
},
|
|
64
|
+
"files": [
|
|
65
|
+
"dist"
|
|
66
|
+
],
|
|
67
|
+
"dependencies": {
|
|
68
|
+
"@tanstack/svelte-virtual": "^3.13.0",
|
|
69
|
+
"@useupup/core": "3.3.0"
|
|
70
|
+
},
|
|
71
|
+
"peerDependencies": {
|
|
72
|
+
"svelte": "^5.0.0"
|
|
73
|
+
},
|
|
74
|
+
"devDependencies": {
|
|
75
|
+
"@sveltejs/package": "^2.3.0",
|
|
76
|
+
"@sveltejs/vite-plugin-svelte": "^6.0.0",
|
|
77
|
+
"@testing-library/svelte": "^5.2.0",
|
|
78
|
+
"@vitest/coverage-v8": "^4.1.2",
|
|
79
|
+
"eslint": "^10.6.0",
|
|
80
|
+
"jsdom": "22.1.0",
|
|
81
|
+
"postcss": "^8.5.2",
|
|
82
|
+
"postcss-cli": "^11.0.1",
|
|
83
|
+
"svelte": "^5.0.0",
|
|
84
|
+
"svelte-check": "^4.1.0",
|
|
85
|
+
"typescript": "^5.3.2",
|
|
86
|
+
"vite": "^7",
|
|
87
|
+
"vitest": "^4.1.2",
|
|
88
|
+
"@useupup/eslint-config": "0.1.0",
|
|
89
|
+
"@useupup/tailwind-config": "0.1.0"
|
|
90
|
+
},
|
|
91
|
+
"scripts": {
|
|
92
|
+
"build": "svelte-package --input src --output dist && pnpm run build:css",
|
|
93
|
+
"build:css": "postcss src/tailwind.css -o ./dist/tailwind-prefixed.css && node ../../scripts/emit-styles-dts.mjs",
|
|
94
|
+
"dev": "svelte-package --input src --output dist --watch",
|
|
95
|
+
"lint": "eslint . --max-warnings 0",
|
|
96
|
+
"test": "vitest run",
|
|
97
|
+
"test:coverage": "vitest run --coverage",
|
|
98
|
+
"test:watch": "vitest",
|
|
99
|
+
"typecheck": "svelte-check --tsconfig ./tsconfig.json && svelte-check --tsconfig ./tsconfig.test.json"
|
|
100
|
+
}
|
|
101
|
+
}
|