@contember/react-client 2.0.0-alpha.4 → 2.0.0-alpha.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/dist/development/index.cjs +0 -2
  2. package/dist/development/index.cjs.map +1 -1
  3. package/dist/development/index.js +0 -2
  4. package/dist/development/index.js.map +1 -1
  5. package/dist/production/index.cjs +0 -2
  6. package/dist/production/index.cjs.map +1 -1
  7. package/dist/production/index.js +0 -2
  8. package/dist/production/index.js.map +1 -1
  9. package/dist/types/index.d.ts +0 -1
  10. package/dist/types/index.d.ts.map +1 -1
  11. package/dist/types/tsconfig.tsbuildinfo +1 -1
  12. package/package.json +3 -4
  13. package/src/index.ts +0 -1
  14. package/src/tsconfig.json +1 -2
  15. package/dist/development/upload/fileUploadReducer.cjs +0 -149
  16. package/dist/development/upload/fileUploadReducer.cjs.map +0 -1
  17. package/dist/development/upload/fileUploadReducer.js +0 -149
  18. package/dist/development/upload/fileUploadReducer.js.map +0 -1
  19. package/dist/development/upload/toFileId.cjs +0 -10
  20. package/dist/development/upload/toFileId.cjs.map +0 -1
  21. package/dist/development/upload/toFileId.js +0 -10
  22. package/dist/development/upload/toFileId.js.map +0 -1
  23. package/dist/development/upload/useFileUpload.cjs +0 -166
  24. package/dist/development/upload/useFileUpload.cjs.map +0 -1
  25. package/dist/development/upload/useFileUpload.js +0 -166
  26. package/dist/development/upload/useFileUpload.js.map +0 -1
  27. package/dist/production/upload/fileUploadReducer.cjs +0 -149
  28. package/dist/production/upload/fileUploadReducer.cjs.map +0 -1
  29. package/dist/production/upload/fileUploadReducer.js +0 -149
  30. package/dist/production/upload/fileUploadReducer.js.map +0 -1
  31. package/dist/production/upload/toFileId.cjs +0 -10
  32. package/dist/production/upload/toFileId.cjs.map +0 -1
  33. package/dist/production/upload/toFileId.js +0 -10
  34. package/dist/production/upload/toFileId.js.map +0 -1
  35. package/dist/production/upload/useFileUpload.cjs +0 -166
  36. package/dist/production/upload/useFileUpload.cjs.map +0 -1
  37. package/dist/production/upload/useFileUpload.js +0 -166
  38. package/dist/production/upload/useFileUpload.js.map +0 -1
  39. package/dist/types/upload/FileId.d.ts +0 -2
  40. package/dist/types/upload/FileId.d.ts.map +0 -1
  41. package/dist/types/upload/FileUploadAction.d.ts +0 -24
  42. package/dist/types/upload/FileUploadAction.d.ts.map +0 -1
  43. package/dist/types/upload/FileUploadCompoundState.d.ts +0 -4
  44. package/dist/types/upload/FileUploadCompoundState.d.ts.map +0 -1
  45. package/dist/types/upload/FileUploadMetadata.d.ts +0 -6
  46. package/dist/types/upload/FileUploadMetadata.d.ts.map +0 -1
  47. package/dist/types/upload/FileUploadMultiTemporalState.d.ts +0 -7
  48. package/dist/types/upload/FileUploadMultiTemporalState.d.ts.map +0 -1
  49. package/dist/types/upload/FileUploadOperations.d.ts +0 -18
  50. package/dist/types/upload/FileUploadOperations.d.ts.map +0 -1
  51. package/dist/types/upload/FileWithMetadata.d.ts +0 -8
  52. package/dist/types/upload/FileWithMetadata.d.ts.map +0 -1
  53. package/dist/types/upload/SingleFileUploadState.d.ts +0 -35
  54. package/dist/types/upload/SingleFileUploadState.d.ts.map +0 -1
  55. package/dist/types/upload/fileUploadReducer.d.ts +0 -5
  56. package/dist/types/upload/fileUploadReducer.d.ts.map +0 -1
  57. package/dist/types/upload/index.d.ts +0 -8
  58. package/dist/types/upload/index.d.ts.map +0 -1
  59. package/dist/types/upload/toFileId.d.ts +0 -4
  60. package/dist/types/upload/toFileId.d.ts.map +0 -1
  61. package/dist/types/upload/useFileUpload.d.ts +0 -10
  62. package/dist/types/upload/useFileUpload.d.ts.map +0 -1
  63. package/src/upload/FileId.ts +0 -1
  64. package/src/upload/FileUploadAction.ts +0 -30
  65. package/src/upload/FileUploadCompoundState.ts +0 -7
  66. package/src/upload/FileUploadMetadata.ts +0 -6
  67. package/src/upload/FileUploadMultiTemporalState.ts +0 -7
  68. package/src/upload/FileUploadOperations.ts +0 -22
  69. package/src/upload/FileWithMetadata.ts +0 -8
  70. package/src/upload/SingleFileUploadState.ts +0 -43
  71. package/src/upload/fileUploadReducer.ts +0 -166
  72. package/src/upload/index.ts +0 -15
  73. package/src/upload/toFileId.ts +0 -12
  74. package/src/upload/useFileUpload.ts +0 -218
@@ -1,166 +0,0 @@
1
- import { S3FileUploader } from "@contember/client";
2
- import { useRef, useReducer, useMemo, useCallback, useEffect } from "react";
3
- import { fileUploadReducer, initializeFileUploadState } from "./fileUploadReducer.js";
4
- import { useCurrentContentGraphQlClient } from "../content/useCurrentContentGraphQlClient.js";
5
- const useFileUpload = ({} = {}) => {
6
- const contentApiClient = useCurrentContentGraphQlClient();
7
- const fileIdSeedRef = useRef(1);
8
- const [internalState, dispatch] = useReducer(fileUploadReducer, void 0, initializeFileUploadState);
9
- const defaultUploader = useMemo(() => new S3FileUploader(), []);
10
- const purgeUpload = useCallback((files) => {
11
- dispatch({
12
- type: "purge",
13
- files
14
- });
15
- }, []);
16
- const failUpload = useCallback((error) => {
17
- dispatch({
18
- type: "finishWithError",
19
- error
20
- });
21
- }, []);
22
- const previewUrls = useRef(/* @__PURE__ */ new Set());
23
- const fileIds = useRef(/* @__PURE__ */ new WeakMap());
24
- const filesWithMetadataById = useRef(/* @__PURE__ */ new Map());
25
- const initializeUpload = useCallback(
26
- (files) => {
27
- const newFileIds = /* @__PURE__ */ new Set();
28
- const fileWithMetadataByFileConfig = /* @__PURE__ */ new Map();
29
- for (const fileMaybeWithId of files) {
30
- const abortController = new AbortController();
31
- let fileId;
32
- let file;
33
- if (fileMaybeWithId instanceof File) {
34
- fileId = `__contember__file-${fileIdSeedRef.current++}`;
35
- file = fileMaybeWithId;
36
- } else {
37
- fileId = fileMaybeWithId[0];
38
- file = fileMaybeWithId[1];
39
- }
40
- abortController.signal.addEventListener("abort", () => {
41
- purgeUpload([fileId]);
42
- });
43
- const previewUrl = URL.createObjectURL(file);
44
- const fileWithMetadata = {
45
- previewUrl,
46
- abortController,
47
- file,
48
- fileId
49
- };
50
- fileWithMetadataByFileConfig.set(fileId, fileWithMetadata);
51
- newFileIds.add(fileId);
52
- previewUrls.current.add(previewUrl);
53
- fileIds.current.set(file, fileId);
54
- filesWithMetadataById.current.set(fileId, new WeakRef(fileWithMetadata));
55
- }
56
- if (fileWithMetadataByFileConfig.size === 0) {
57
- return fileWithMetadataByFileConfig;
58
- }
59
- if (newFileIds.size) {
60
- dispatch({
61
- type: "purge",
62
- files: newFileIds
63
- });
64
- }
65
- dispatch({
66
- type: "initialize",
67
- files: fileWithMetadataByFileConfig
68
- });
69
- return fileWithMetadataByFileConfig;
70
- },
71
- [purgeUpload]
72
- );
73
- const startUpload = useCallback(
74
- (files) => {
75
- const filesById = /* @__PURE__ */ new Map();
76
- const groupedByUploader = /* @__PURE__ */ new Map();
77
- for (const fileOrIdMaybeWithOptions of files) {
78
- let fileOrId;
79
- let options;
80
- if (Array.isArray(fileOrIdMaybeWithOptions)) {
81
- fileOrId = fileOrIdMaybeWithOptions[0];
82
- options = fileOrIdMaybeWithOptions[1];
83
- } else {
84
- fileOrId = fileOrIdMaybeWithOptions;
85
- options = {};
86
- }
87
- const { uploader = defaultUploader, metadata } = options;
88
- const fileId = fileOrId instanceof File ? fileIds.current.get(fileOrId) : fileOrId;
89
- const fileState = fileId ? filesWithMetadataById.current.get(fileId)?.deref() : void 0;
90
- if (fileId === void 0 || fileState === void 0) {
91
- throw new Error(
92
- `Trying to startUpload a file that hasn't been previously initialized. This will be possible in future, but isn't yet.`
93
- );
94
- }
95
- filesById.set(fileId, {
96
- uploader,
97
- metadata
98
- });
99
- let filesWithSameUploader = groupedByUploader.get(uploader);
100
- if (filesWithSameUploader === void 0) {
101
- groupedByUploader.set(uploader, filesWithSameUploader = /* @__PURE__ */ new Map());
102
- }
103
- filesWithSameUploader.set(fileState.file, {
104
- abortSignal: fileState.abortController.signal
105
- });
106
- }
107
- dispatch({
108
- type: "startUploading",
109
- files: filesById
110
- });
111
- for (const [uploader, filesForUpload] of groupedByUploader) {
112
- try {
113
- uploader.upload(filesForUpload, {
114
- onProgress: (progress) => {
115
- dispatch({
116
- type: "updateUploadProgress",
117
- progress
118
- });
119
- },
120
- onSuccess: (result) => {
121
- dispatch({
122
- type: "finishSuccessfully",
123
- result
124
- });
125
- },
126
- onError: (error) => {
127
- dispatch({
128
- type: "finishWithError",
129
- error
130
- });
131
- },
132
- contentApiClient
133
- });
134
- } catch (error) {
135
- dispatch({
136
- type: "finishWithError",
137
- error: Array.from(filesForUpload).map(([file]) => [file, error])
138
- });
139
- }
140
- }
141
- },
142
- [contentApiClient, defaultUploader]
143
- );
144
- const operations = useMemo(
145
- () => ({
146
- failUpload,
147
- initializeUpload,
148
- purgeUpload,
149
- startUpload
150
- }),
151
- [failUpload, initializeUpload, purgeUpload, startUpload]
152
- );
153
- useEffect(
154
- () => () => {
155
- for (const previewUrl of Array.from(previewUrls.current)) {
156
- URL.revokeObjectURL(previewUrl);
157
- }
158
- },
159
- []
160
- );
161
- return [internalState.state, operations];
162
- };
163
- export {
164
- useFileUpload
165
- };
166
- //# sourceMappingURL=useFileUpload.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useFileUpload.js","sources":["../../../src/upload/useFileUpload.ts"],"sourcesContent":["import { FileUploader, S3FileUploader, UploadedFileMetadata } from '@contember/client'\nimport { Reducer, useCallback, useEffect, useMemo, useReducer, useRef } from 'react'\nimport { useCurrentContentGraphQlClient } from '../content'\nimport type { FileId } from './FileId'\nimport type { FileUploadAction } from './FileUploadAction'\nimport type { FileUploadCompoundState } from './FileUploadCompoundState'\nimport type { FileUploadMetadata } from './FileUploadMetadata'\nimport type { FileUploadMultiTemporalState } from './FileUploadMultiTemporalState'\nimport type {\n\tPurgeUpload,\n\tFileUploadOperations,\n\tInitializeUpload,\n\tStartUpload,\n\tStartUploadFileOptions,\n\tFailUpload,\n} from './FileUploadOperations'\nimport { fileUploadReducer, initializeFileUploadState } from './fileUploadReducer'\nimport type { FileWithMetadata } from './FileWithMetadata'\n\nexport type FileUpload<Result = unknown, Metadata = undefined> = [\n\tFileUploadCompoundState<Result, Metadata>,\n\tFileUploadOperations<Metadata>,\n]\n\nexport interface FileUploadOptions {\n}\n\nexport const useFileUpload = <Result = unknown, Metadata = undefined>({}: FileUploadOptions = {}): FileUpload<Result, Metadata> => {\n\tconst contentApiClient = useCurrentContentGraphQlClient()\n\n\tconst fileIdSeedRef = useRef(1)\n\n\tconst [internalState, dispatch] = useReducer<\n\t\tReducer<FileUploadMultiTemporalState<Result, Metadata>, FileUploadAction<Result, Metadata>>,\n\t\tundefined\n\t>(fileUploadReducer, undefined, initializeFileUploadState)\n\n\tconst defaultUploader = useMemo(() => new S3FileUploader(), [])\n\n\tconst purgeUpload = useCallback<PurgeUpload>(files => {\n\t\tdispatch({\n\t\t\ttype: 'purge',\n\t\t\tfiles,\n\t\t})\n\t}, [])\n\tconst failUpload = useCallback<FailUpload>(error => {\n\t\tdispatch({\n\t\t\ttype: 'finishWithError',\n\t\t\terror,\n\t\t})\n\t}, [])\n\n\tconst previewUrls = useRef(new Set<string>())\n\tconst fileIds = useRef(new WeakMap<File, FileId>())\n\tconst filesWithMetadataById = useRef(new Map<FileId, WeakRef<FileWithMetadata>>)\n\n\tconst initializeUpload = useCallback<InitializeUpload>(\n\t\tfiles => {\n\t\t\tconst newFileIds = new Set<FileId>()\n\t\t\tconst fileWithMetadataByFileConfig = new Map<FileId, FileWithMetadata>()\n\n\t\t\tfor (const fileMaybeWithId of files) {\n\t\t\t\tconst abortController = new AbortController()\n\n\t\t\t\tlet fileId: FileId\n\t\t\t\tlet file: File\n\n\t\t\t\tif (fileMaybeWithId instanceof File) {\n\t\t\t\t\tfileId = `__contember__file-${fileIdSeedRef.current++}`\n\t\t\t\t\tfile = fileMaybeWithId\n\t\t\t\t} else {\n\t\t\t\t\tfileId = fileMaybeWithId[0]\n\t\t\t\t\tfile = fileMaybeWithId[1]\n\t\t\t\t}\n\n\t\t\t\tabortController.signal.addEventListener('abort', () => {\n\t\t\t\t\tpurgeUpload([fileId])\n\t\t\t\t})\n\n\t\t\t\tconst previewUrl = URL.createObjectURL(file)\n\t\t\t\tconst fileWithMetadata: FileWithMetadata = {\n\t\t\t\t\tpreviewUrl: previewUrl,\n\t\t\t\t\tabortController,\n\t\t\t\t\tfile,\n\t\t\t\t\tfileId,\n\t\t\t\t}\n\t\t\t\tfileWithMetadataByFileConfig.set(fileId, fileWithMetadata)\n\n\t\t\t\tnewFileIds.add(fileId)\n\n\t\t\t\tpreviewUrls.current.add(previewUrl)\n\t\t\t\tfileIds.current.set(file, fileId)\n\t\t\t\tfilesWithMetadataById.current.set(fileId, new WeakRef(fileWithMetadata))\n\t\t\t}\n\t\t\tif (fileWithMetadataByFileConfig.size === 0) {\n\t\t\t\treturn fileWithMetadataByFileConfig\n\t\t\t}\n\n\t\t\tif (newFileIds.size) {\n\t\t\t\tdispatch({\n\t\t\t\t\ttype: 'purge',\n\t\t\t\t\tfiles: newFileIds,\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tdispatch({\n\t\t\t\ttype: 'initialize',\n\t\t\t\tfiles: fileWithMetadataByFileConfig,\n\t\t\t})\n\n\t\t\treturn fileWithMetadataByFileConfig\n\t\t},\n\t\t[purgeUpload],\n\t)\n\tconst startUpload = useCallback<StartUpload<Metadata>>(\n\t\tfiles => {\n\t\t\tconst filesById = new Map<FileId, FileUploadMetadata<Metadata>>()\n\t\t\tconst groupedByUploader: Map<FileUploader, Map<File, UploadedFileMetadata>> = new Map()\n\n\t\t\tfor (const fileOrIdMaybeWithOptions of files) {\n\t\t\t\tlet fileOrId: File | FileId\n\t\t\t\tlet options: StartUploadFileOptions<Metadata>\n\n\t\t\t\tif (Array.isArray(fileOrIdMaybeWithOptions)) {\n\t\t\t\t\tfileOrId = fileOrIdMaybeWithOptions[0]\n\t\t\t\t\toptions = fileOrIdMaybeWithOptions[1]\n\t\t\t\t} else {\n\t\t\t\t\tfileOrId = fileOrIdMaybeWithOptions\n\t\t\t\t\toptions = {}\n\t\t\t\t}\n\t\t\t\tconst { uploader = defaultUploader, metadata } = options\n\n\t\t\t\tconst fileId = fileOrId instanceof File ? fileIds.current.get(fileOrId) : fileOrId\n\t\t\t\tconst fileState = fileId ? filesWithMetadataById.current.get(fileId)?.deref() : undefined\n\n\t\t\t\tif (fileId === undefined || fileState === undefined) {\n\t\t\t\t\tthrow new Error(\n\t\t\t\t\t\t`Trying to startUpload a file that hasn't been previously initialized. ` +\n\t\t\t\t\t\t\t`This will be possible in future, but isn't yet.`,\n\t\t\t\t\t)\n\t\t\t\t}\n\n\n\t\t\t\tfilesById.set(fileId, {\n\t\t\t\t\tuploader,\n\t\t\t\t\tmetadata,\n\t\t\t\t})\n\n\t\t\t\tlet filesWithSameUploader = groupedByUploader.get(uploader)\n\t\t\t\tif (filesWithSameUploader === undefined) {\n\t\t\t\t\tgroupedByUploader.set(uploader, (filesWithSameUploader = new Map()))\n\t\t\t\t}\n\t\t\t\tfilesWithSameUploader.set(fileState.file, {\n\t\t\t\t\tabortSignal: fileState.abortController.signal,\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tdispatch({\n\t\t\t\ttype: 'startUploading',\n\t\t\t\tfiles: filesById,\n\t\t\t})\n\n\t\t\tfor (const [uploader, filesForUpload] of groupedByUploader) {\n\t\t\t\ttry {\n\t\t\t\t\tuploader.upload(filesForUpload, {\n\t\t\t\t\t\tonProgress: progress => {\n\t\t\t\t\t\t\tdispatch({\n\t\t\t\t\t\t\t\ttype: 'updateUploadProgress',\n\t\t\t\t\t\t\t\tprogress,\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t},\n\t\t\t\t\t\tonSuccess: result => {\n\t\t\t\t\t\t\tdispatch({\n\t\t\t\t\t\t\t\ttype: 'finishSuccessfully',\n\t\t\t\t\t\t\t\tresult,\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t},\n\t\t\t\t\t\tonError: error => {\n\t\t\t\t\t\t\tdispatch({\n\t\t\t\t\t\t\t\ttype: 'finishWithError',\n\t\t\t\t\t\t\t\terror,\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t},\n\t\t\t\t\t\tcontentApiClient,\n\t\t\t\t\t})\n\t\t\t\t} catch (error) {\n\t\t\t\t\tdispatch({\n\t\t\t\t\t\ttype: 'finishWithError',\n\t\t\t\t\t\terror: Array.from(filesForUpload).map(([file]) => [file, error]),\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t[contentApiClient, defaultUploader],\n\t)\n\n\tconst operations = useMemo<FileUploadOperations<Metadata>>(\n\t\t() => ({\n\t\t\tfailUpload,\n\t\t\tinitializeUpload,\n\t\t\tpurgeUpload,\n\t\t\tstartUpload,\n\t\t}),\n\t\t[failUpload, initializeUpload, purgeUpload, startUpload],\n\t)\n\n\n\tuseEffect(\n\t\t() => () => {\n\t\t\tfor (const previewUrl of Array.from(previewUrls.current)) {\n\t\t\t\tURL.revokeObjectURL(previewUrl)\n\t\t\t}\n\t\t},\n\t\t[],\n\t)\n\n\treturn [internalState.state, operations]\n}\n"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export type FileId = string | number;
2
- //# sourceMappingURL=FileId.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FileId.d.ts","sourceRoot":"","sources":["../../../src/upload/FileId.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA"}
@@ -1,24 +0,0 @@
1
- import type { FileUploadProgress } from '@contember/client';
2
- import type { FileId } from './FileId';
3
- import type { FileUploadMetadata } from './FileUploadMetadata';
4
- import type { FileWithMetadata } from './FileWithMetadata';
5
- export type FileUploadAction<Result = unknown, Metadata = undefined> = {
6
- type: 'initialize';
7
- files: Iterable<[FileId, FileWithMetadata]>;
8
- } | {
9
- type: 'startUploading';
10
- files: Iterable<[File | FileId, FileUploadMetadata<Metadata>]>;
11
- } | {
12
- type: 'updateUploadProgress';
13
- progress: Iterable<[File | FileId, FileUploadProgress]>;
14
- } | {
15
- type: 'finishSuccessfully';
16
- result: Iterable<[File | FileId, Result]>;
17
- } | {
18
- type: 'finishWithError';
19
- error: Iterable<(File | FileId) | [File | FileId, any]>;
20
- } | {
21
- type: 'purge';
22
- files: Iterable<File | FileId>;
23
- };
24
- //# sourceMappingURL=FileUploadAction.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FileUploadAction.d.ts","sourceRoot":"","sources":["../../../src/upload/FileUploadAction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAC3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACtC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAC9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAE1D,MAAM,MAAM,gBAAgB,CAAC,MAAM,GAAG,OAAO,EAAE,QAAQ,GAAG,SAAS,IAChE;IACA,IAAI,EAAE,YAAY,CAAA;IAClB,KAAK,EAAE,QAAQ,CAAC,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAA;CAC1C,GACD;IACA,IAAI,EAAE,gBAAgB,CAAA;IACtB,KAAK,EAAE,QAAQ,CAAC,CAAC,IAAI,GAAG,MAAM,EAAE,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;CAC7D,GACD;IACA,IAAI,EAAE,sBAAsB,CAAA;IAC5B,QAAQ,EAAE,QAAQ,CAAC,CAAC,IAAI,GAAG,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAA;CACtD,GACD;IACA,IAAI,EAAE,oBAAoB,CAAA;IAC1B,MAAM,EAAE,QAAQ,CAAC,CAAC,IAAI,GAAG,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;CACxC,GACD;IACA,IAAI,EAAE,iBAAiB,CAAA;IACvB,KAAK,EAAE,QAAQ,CAAC,CAAC,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,GAAG,MAAM,EAAE,GAAG,CAAC,CAAC,CAAA;CACtD,GACD;IACA,IAAI,EAAE,OAAO,CAAA;IACb,KAAK,EAAE,QAAQ,CAAC,IAAI,GAAG,MAAM,CAAC,CAAA;CAC7B,CAAA"}
@@ -1,4 +0,0 @@
1
- import type { FileId } from './FileId';
2
- import type { SingleFileUploadState } from './SingleFileUploadState';
3
- export type FileUploadCompoundState<Result = unknown, Metadata = undefined> = Map<FileId, SingleFileUploadState<Result, Metadata>>;
4
- //# sourceMappingURL=FileUploadCompoundState.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FileUploadCompoundState.d.ts","sourceRoot":"","sources":["../../../src/upload/FileUploadCompoundState.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACtC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAEpE,MAAM,MAAM,uBAAuB,CAAC,MAAM,GAAG,OAAO,EAAE,QAAQ,GAAG,SAAS,IAAI,GAAG,CAChF,MAAM,EACN,qBAAqB,CAAC,MAAM,EAAE,QAAQ,CAAC,CACvC,CAAA"}
@@ -1,6 +0,0 @@
1
- import type { FileUploader } from '@contember/client';
2
- export interface FileUploadMetadata<Metadata = undefined> {
3
- uploader: FileUploader;
4
- metadata: Metadata | undefined;
5
- }
6
- //# sourceMappingURL=FileUploadMetadata.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FileUploadMetadata.d.ts","sourceRoot":"","sources":["../../../src/upload/FileUploadMetadata.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAErD,MAAM,WAAW,kBAAkB,CAAC,QAAQ,GAAG,SAAS;IACvD,QAAQ,EAAE,YAAY,CAAA;IACtB,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAA;CAC9B"}
@@ -1,7 +0,0 @@
1
- import type { FileId } from './FileId';
2
- import type { FileUploadCompoundState } from './FileUploadCompoundState';
3
- export interface FileUploadMultiTemporalState<Result = unknown, Metadata = undefined> {
4
- fileIdByFile: WeakMap<File, FileId>;
5
- state: FileUploadCompoundState<Result, Metadata>;
6
- }
7
- //# sourceMappingURL=FileUploadMultiTemporalState.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FileUploadMultiTemporalState.d.ts","sourceRoot":"","sources":["../../../src/upload/FileUploadMultiTemporalState.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACtC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;AAExE,MAAM,WAAW,4BAA4B,CAAC,MAAM,GAAG,OAAO,EAAE,QAAQ,GAAG,SAAS;IACnF,YAAY,EAAE,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IACnC,KAAK,EAAE,uBAAuB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;CAChD"}
@@ -1,18 +0,0 @@
1
- import type { FileUploader } from '@contember/client';
2
- import type { FileId } from './FileId';
3
- import type { FileWithMetadata } from './FileWithMetadata';
4
- export interface StartUploadFileOptions<Metadata = undefined> {
5
- metadata?: Metadata;
6
- uploader?: FileUploader;
7
- }
8
- export type InitializeUpload = (files: Iterable<[FileId, File] | File>) => Map<FileId, FileWithMetadata>;
9
- export type StartUpload<Metadata = undefined> = (files: Iterable<FileId | File | [FileId | File, StartUploadFileOptions<Metadata>]>) => void;
10
- export type PurgeUpload = (files: Iterable<FileId | File>) => void;
11
- export type FailUpload = (files: Iterable<FileId | File | [FileId | File, any]>) => void;
12
- export interface FileUploadOperations<Metadata = undefined> {
13
- initializeUpload: InitializeUpload;
14
- startUpload: StartUpload<Metadata>;
15
- purgeUpload: PurgeUpload;
16
- failUpload: FailUpload;
17
- }
18
- //# sourceMappingURL=FileUploadOperations.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FileUploadOperations.d.ts","sourceRoot":"","sources":["../../../src/upload/FileUploadOperations.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACtC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAE1D,MAAM,WAAW,sBAAsB,CAAC,QAAQ,GAAG,SAAS;IAC3D,QAAQ,CAAC,EAAE,QAAQ,CAAA;IACnB,QAAQ,CAAC,EAAE,YAAY,CAAA;CACvB;AAED,MAAM,MAAM,gBAAgB,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;AACxG,MAAM,MAAM,WAAW,CAAC,QAAQ,GAAG,SAAS,IAAI,CAC/C,KAAK,EAAE,QAAQ,CAAC,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,IAAI,EAAE,sBAAsB,CAAC,QAAQ,CAAC,CAAC,CAAC,KAC9E,IAAI,CAAA;AACT,MAAM,MAAM,WAAW,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,IAAI,CAAA;AAClE,MAAM,MAAM,UAAU,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,IAAI,EAAE,GAAG,CAAC,CAAC,KAAK,IAAI,CAAA;AAExF,MAAM,WAAW,oBAAoB,CAAC,QAAQ,GAAG,SAAS;IACzD,gBAAgB,EAAE,gBAAgB,CAAA;IAClC,WAAW,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAA;IAClC,WAAW,EAAE,WAAW,CAAA;IACxB,UAAU,EAAE,UAAU,CAAA;CACtB"}
@@ -1,8 +0,0 @@
1
- import type { FileId } from './FileId';
2
- export interface FileWithMetadata {
3
- file: File;
4
- fileId: FileId;
5
- abortController: AbortController;
6
- previewUrl: string;
7
- }
8
- //# sourceMappingURL=FileWithMetadata.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FileWithMetadata.d.ts","sourceRoot":"","sources":["../../../src/upload/FileWithMetadata.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAEtC,MAAM,WAAW,gBAAgB;IAChC,IAAI,EAAE,IAAI,CAAA;IACV,MAAM,EAAE,MAAM,CAAA;IACd,eAAe,EAAE,eAAe,CAAA;IAChC,UAAU,EAAE,MAAM,CAAA;CAClB"}
@@ -1,35 +0,0 @@
1
- import type { FileUploader, FileUploadError } from '@contember/client';
2
- export type SingleFileUploadInitializingState = {
3
- readyState: 'initializing';
4
- abortController: AbortController;
5
- file: File;
6
- previewUrl: string;
7
- };
8
- export type SingleFileUploadUploadingState<Metadata = undefined> = {
9
- readyState: 'uploading';
10
- abortController: AbortController;
11
- file: File;
12
- metadata: Metadata;
13
- previewUrl: string;
14
- progress: number | undefined;
15
- uploader: FileUploader;
16
- };
17
- export type SingleFileUploadSuccessState<Metadata = undefined, Result = unknown> = {
18
- readyState: 'success';
19
- file: File;
20
- metadata: Metadata;
21
- previewUrl: string;
22
- result: Result;
23
- uploader: FileUploader;
24
- };
25
- export type SingleFileUploadErrorState<Metadata = undefined> = {
26
- readyState: 'error';
27
- errors: FileUploadError[] | undefined;
28
- rawError: any;
29
- file: File;
30
- metadata: Metadata | undefined;
31
- previewUrl: string;
32
- uploader: FileUploader | undefined;
33
- };
34
- export type SingleFileUploadState<Result = unknown, Metadata = undefined> = SingleFileUploadInitializingState | SingleFileUploadUploadingState<Metadata> | SingleFileUploadSuccessState<Metadata, Result> | SingleFileUploadErrorState<Metadata>;
35
- //# sourceMappingURL=SingleFileUploadState.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SingleFileUploadState.d.ts","sourceRoot":"","sources":["../../../src/upload/SingleFileUploadState.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAEtE,MAAM,MAAM,iCAAiC,GAAG;IAC/C,UAAU,EAAE,cAAc,CAAA;IAC1B,eAAe,EAAE,eAAe,CAAA;IAChC,IAAI,EAAE,IAAI,CAAA;IACV,UAAU,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,8BAA8B,CAAC,QAAQ,GAAG,SAAS,IAAI;IAClE,UAAU,EAAE,WAAW,CAAA;IACvB,eAAe,EAAE,eAAe,CAAA;IAChC,IAAI,EAAE,IAAI,CAAA;IACV,QAAQ,EAAE,QAAQ,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,GAAG,SAAS,CAAA;IAC5B,QAAQ,EAAE,YAAY,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,4BAA4B,CAAC,QAAQ,GAAG,SAAS,EAAE,MAAM,GAAG,OAAO,IAAI;IAClF,UAAU,EAAE,SAAS,CAAA;IACrB,IAAI,EAAE,IAAI,CAAA;IACV,QAAQ,EAAE,QAAQ,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,YAAY,CAAA;CACtB,CAAA;AAED,MAAM,MAAM,0BAA0B,CAAC,QAAQ,GAAG,SAAS,IAAI;IAC9D,UAAU,EAAE,OAAO,CAAA;IACnB,MAAM,EAAE,eAAe,EAAE,GAAG,SAAS,CAAA;IACrC,QAAQ,EAAE,GAAG,CAAA;IACb,IAAI,EAAE,IAAI,CAAA;IACV,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAA;IAC9B,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,YAAY,GAAG,SAAS,CAAA;CAClC,CAAA;AAED,MAAM,MAAM,qBAAqB,CAAC,MAAM,GAAG,OAAO,EAAE,QAAQ,GAAG,SAAS,IACrE,iCAAiC,GACjC,8BAA8B,CAAC,QAAQ,CAAC,GACxC,4BAA4B,CAAC,QAAQ,EAAE,MAAM,CAAC,GAC9C,0BAA0B,CAAC,QAAQ,CAAC,CAAA"}
@@ -1,5 +0,0 @@
1
- import type { FileUploadAction } from './FileUploadAction';
2
- import type { FileUploadMultiTemporalState } from './FileUploadMultiTemporalState';
3
- export declare const initializeFileUploadState: <Result = unknown, Metadata = undefined>() => FileUploadMultiTemporalState<Result, Metadata>;
4
- export declare const fileUploadReducer: <Result = unknown, Metadata = undefined>(previousState: FileUploadMultiTemporalState<Result, Metadata>, action: FileUploadAction<Result, Metadata>) => FileUploadMultiTemporalState<Result, Metadata>;
5
- //# sourceMappingURL=fileUploadReducer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fileUploadReducer.d.ts","sourceRoot":"","sources":["../../../src/upload/fileUploadReducer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAA;AAGlF,eAAO,MAAM,yBAAyB,gDAA+C,6BAA6B,MAAM,EAAE,QAAQ,CAGhI,CAAA;AAEF,eAAO,MAAM,iBAAiB,0DACd,6BAA6B,MAAM,EAAE,QAAQ,CAAC,UACrD,iBAAiB,MAAM,EAAE,QAAQ,CAAC,KACxC,6BAA6B,MAAM,EAAE,QAAQ,CAsJ/C,CAAA"}
@@ -1,8 +0,0 @@
1
- export * from './useFileUpload';
2
- export type { FileId } from './FileId';
3
- export type { FileUploadCompoundState } from './FileUploadCompoundState';
4
- export type { FileUploadMetadata } from './FileUploadMetadata';
5
- export type { StartUploadFileOptions, StartUpload, FileUploadOperations, InitializeUpload, PurgeUpload, FailUpload, } from './FileUploadOperations';
6
- export type { FileWithMetadata } from './FileWithMetadata';
7
- export * from './SingleFileUploadState';
8
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/upload/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAE/B,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACtC,YAAY,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;AACxE,YAAY,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAA;AAC9D,YAAY,EACX,sBAAsB,EACtB,WAAW,EACX,oBAAoB,EACpB,gBAAgB,EAChB,WAAW,EACX,UAAU,GACV,MAAM,wBAAwB,CAAA;AAC/B,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,cAAc,yBAAyB,CAAA"}
@@ -1,4 +0,0 @@
1
- import type { FileId } from './FileId';
2
- import type { FileUploadMultiTemporalState } from './FileUploadMultiTemporalState';
3
- export declare const toFileId: <Result = unknown, Metadata = undefined>(state: FileUploadMultiTemporalState<Result, Metadata>, fileOrId: File | FileId) => FileId;
4
- //# sourceMappingURL=toFileId.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"toFileId.d.ts","sourceRoot":"","sources":["../../../src/upload/toFileId.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACtC,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAA;AAElF,eAAO,MAAM,QAAQ,kDACb,6BAA6B,MAAM,EAAE,QAAQ,CAAC,YAC3C,IAAI,GAAG,MAAM,KACrB,MAKF,CAAA"}
@@ -1,10 +0,0 @@
1
- import type { FileUploadCompoundState } from './FileUploadCompoundState';
2
- import type { FileUploadOperations } from './FileUploadOperations';
3
- export type FileUpload<Result = unknown, Metadata = undefined> = [
4
- FileUploadCompoundState<Result, Metadata>,
5
- FileUploadOperations<Metadata>
6
- ];
7
- export interface FileUploadOptions {
8
- }
9
- export declare const useFileUpload: <Result = unknown, Metadata = undefined>({}?: FileUploadOptions) => FileUpload<Result, Metadata>;
10
- //# sourceMappingURL=useFileUpload.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useFileUpload.d.ts","sourceRoot":"","sources":["../../../src/upload/useFileUpload.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAA;AAGxE,OAAO,KAAK,EAEX,oBAAoB,EAKpB,MAAM,wBAAwB,CAAA;AAI/B,MAAM,MAAM,UAAU,CAAC,MAAM,GAAG,OAAO,EAAE,QAAQ,GAAG,SAAS,IAAI;IAChE,uBAAuB,CAAC,MAAM,EAAE,QAAQ,CAAC;IACzC,oBAAoB,CAAC,QAAQ,CAAC;CAC9B,CAAA;AAED,MAAM,WAAW,iBAAiB;CACjC;AAED,eAAO,MAAM,aAAa,gDAAgD,iBAAiB,KAAQ,WAAW,MAAM,EAAE,QAAQ,CA8L7H,CAAA"}
@@ -1 +0,0 @@
1
- export type FileId = string | number
@@ -1,30 +0,0 @@
1
- import type { FileUploadProgress } from '@contember/client'
2
- import type { FileId } from './FileId'
3
- import type { FileUploadMetadata } from './FileUploadMetadata'
4
- import type { FileWithMetadata } from './FileWithMetadata'
5
-
6
- export type FileUploadAction<Result = unknown, Metadata = undefined> =
7
- | {
8
- type: 'initialize'
9
- files: Iterable<[FileId, FileWithMetadata]>
10
- }
11
- | {
12
- type: 'startUploading'
13
- files: Iterable<[File | FileId, FileUploadMetadata<Metadata>]>
14
- }
15
- | {
16
- type: 'updateUploadProgress'
17
- progress: Iterable<[File | FileId, FileUploadProgress]>
18
- }
19
- | {
20
- type: 'finishSuccessfully'
21
- result: Iterable<[File | FileId, Result]>
22
- }
23
- | {
24
- type: 'finishWithError'
25
- error: Iterable<(File | FileId) | [File | FileId, any]>
26
- }
27
- | {
28
- type: 'purge'
29
- files: Iterable<File | FileId>
30
- }
@@ -1,7 +0,0 @@
1
- import type { FileId } from './FileId'
2
- import type { SingleFileUploadState } from './SingleFileUploadState'
3
-
4
- export type FileUploadCompoundState<Result = unknown, Metadata = undefined> = Map<
5
- FileId,
6
- SingleFileUploadState<Result, Metadata>
7
- >
@@ -1,6 +0,0 @@
1
- import type { FileUploader } from '@contember/client'
2
-
3
- export interface FileUploadMetadata<Metadata = undefined> {
4
- uploader: FileUploader
5
- metadata: Metadata | undefined
6
- }
@@ -1,7 +0,0 @@
1
- import type { FileId } from './FileId'
2
- import type { FileUploadCompoundState } from './FileUploadCompoundState'
3
-
4
- export interface FileUploadMultiTemporalState<Result = unknown, Metadata = undefined> {
5
- fileIdByFile: WeakMap<File, FileId>
6
- state: FileUploadCompoundState<Result, Metadata>
7
- }
@@ -1,22 +0,0 @@
1
- import type { FileUploader } from '@contember/client'
2
- import type { FileId } from './FileId'
3
- import type { FileWithMetadata } from './FileWithMetadata'
4
-
5
- export interface StartUploadFileOptions<Metadata = undefined> {
6
- metadata?: Metadata
7
- uploader?: FileUploader
8
- }
9
-
10
- export type InitializeUpload = (files: Iterable<[FileId, File] | File>) => Map<FileId, FileWithMetadata>
11
- export type StartUpload<Metadata = undefined> = (
12
- files: Iterable<FileId | File | [FileId | File, StartUploadFileOptions<Metadata>]>,
13
- ) => void
14
- export type PurgeUpload = (files: Iterable<FileId | File>) => void
15
- export type FailUpload = (files: Iterable<FileId | File | [FileId | File, any]>) => void
16
-
17
- export interface FileUploadOperations<Metadata = undefined> {
18
- initializeUpload: InitializeUpload
19
- startUpload: StartUpload<Metadata>
20
- purgeUpload: PurgeUpload
21
- failUpload: FailUpload
22
- }
@@ -1,8 +0,0 @@
1
- import type { FileId } from './FileId'
2
-
3
- export interface FileWithMetadata {
4
- file: File
5
- fileId: FileId
6
- abortController: AbortController
7
- previewUrl: string
8
- }
@@ -1,43 +0,0 @@
1
- import type { FileUploader, FileUploadError } from '@contember/client'
2
-
3
- export type SingleFileUploadInitializingState = {
4
- readyState: 'initializing'
5
- abortController: AbortController
6
- file: File
7
- previewUrl: string
8
- }
9
-
10
- export type SingleFileUploadUploadingState<Metadata = undefined> = {
11
- readyState: 'uploading'
12
- abortController: AbortController
13
- file: File
14
- metadata: Metadata
15
- previewUrl: string
16
- progress: number | undefined
17
- uploader: FileUploader
18
- }
19
-
20
- export type SingleFileUploadSuccessState<Metadata = undefined, Result = unknown> = {
21
- readyState: 'success'
22
- file: File
23
- metadata: Metadata
24
- previewUrl: string
25
- result: Result
26
- uploader: FileUploader
27
- }
28
-
29
- export type SingleFileUploadErrorState<Metadata = undefined> = {
30
- readyState: 'error'
31
- errors: FileUploadError[] | undefined
32
- rawError: any
33
- file: File
34
- metadata: Metadata | undefined
35
- previewUrl: string
36
- uploader: FileUploader | undefined
37
- }
38
-
39
- export type SingleFileUploadState<Result = unknown, Metadata = undefined> =
40
- | SingleFileUploadInitializingState
41
- | SingleFileUploadUploadingState<Metadata>
42
- | SingleFileUploadSuccessState<Metadata, Result>
43
- | SingleFileUploadErrorState<Metadata>