@transloadit/convex 0.0.3 → 0.0.5

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 (85) hide show
  1. package/README.md +154 -122
  2. package/dist/client/index.d.ts +54 -13
  3. package/dist/client/index.d.ts.map +1 -1
  4. package/dist/client/index.js +48 -5
  5. package/dist/client/index.js.map +1 -1
  6. package/dist/component/_generated/api.d.ts +2 -2
  7. package/dist/component/_generated/component.d.ts +11 -0
  8. package/dist/component/_generated/component.d.ts.map +1 -1
  9. package/dist/component/_generated/dataModel.d.ts +1 -1
  10. package/dist/component/_generated/server.d.ts +1 -1
  11. package/dist/component/apiUtils.d.ts +26 -6
  12. package/dist/component/apiUtils.d.ts.map +1 -1
  13. package/dist/component/apiUtils.js +48 -38
  14. package/dist/component/apiUtils.js.map +1 -1
  15. package/dist/component/lib.d.ts +37 -8
  16. package/dist/component/lib.d.ts.map +1 -1
  17. package/dist/component/lib.js +145 -18
  18. package/dist/component/lib.js.map +1 -1
  19. package/dist/component/schema.d.ts +9 -6
  20. package/dist/component/schema.d.ts.map +1 -1
  21. package/dist/component/schema.js +4 -8
  22. package/dist/component/schema.js.map +1 -1
  23. package/dist/debug/index.d.ts +19 -0
  24. package/dist/debug/index.d.ts.map +1 -0
  25. package/dist/debug/index.js +49 -0
  26. package/dist/debug/index.js.map +1 -0
  27. package/dist/react/index.d.ts +201 -3
  28. package/dist/react/index.d.ts.map +1 -1
  29. package/dist/react/index.js +674 -94
  30. package/dist/react/index.js.map +1 -1
  31. package/dist/shared/assemblyUrls.d.ts +10 -0
  32. package/dist/shared/assemblyUrls.d.ts.map +1 -0
  33. package/dist/shared/assemblyUrls.js +26 -0
  34. package/dist/shared/assemblyUrls.js.map +1 -0
  35. package/dist/shared/errors.d.ts +7 -0
  36. package/dist/shared/errors.d.ts.map +1 -0
  37. package/dist/shared/errors.js +10 -0
  38. package/dist/shared/errors.js.map +1 -0
  39. package/dist/shared/pollAssembly.d.ts +12 -0
  40. package/dist/shared/pollAssembly.d.ts.map +1 -0
  41. package/dist/shared/pollAssembly.js +50 -0
  42. package/dist/shared/pollAssembly.js.map +1 -0
  43. package/dist/shared/resultTypes.d.ts +37 -0
  44. package/dist/shared/resultTypes.d.ts.map +1 -0
  45. package/dist/shared/resultTypes.js +2 -0
  46. package/dist/shared/resultTypes.js.map +1 -0
  47. package/dist/shared/resultUtils.d.ts +4 -0
  48. package/dist/shared/resultUtils.d.ts.map +1 -0
  49. package/dist/shared/resultUtils.js +69 -0
  50. package/dist/shared/resultUtils.js.map +1 -0
  51. package/dist/shared/tusUpload.d.ts +13 -0
  52. package/dist/shared/tusUpload.d.ts.map +1 -0
  53. package/dist/shared/tusUpload.js +32 -0
  54. package/dist/shared/tusUpload.js.map +1 -0
  55. package/dist/test/index.d.ts +9 -4
  56. package/dist/test/index.d.ts.map +1 -1
  57. package/dist/test/nodeModules.d.ts +2 -0
  58. package/dist/test/nodeModules.d.ts.map +1 -0
  59. package/dist/test/nodeModules.js +19 -0
  60. package/dist/test/nodeModules.js.map +1 -0
  61. package/package.json +40 -7
  62. package/src/client/index.ts +111 -9
  63. package/src/component/_generated/api.ts +2 -2
  64. package/src/component/_generated/component.ts +14 -0
  65. package/src/component/_generated/dataModel.ts +1 -1
  66. package/src/component/_generated/server.ts +1 -1
  67. package/src/component/apiUtils.test.ts +166 -2
  68. package/src/component/apiUtils.ts +96 -64
  69. package/src/component/lib.test.ts +213 -4
  70. package/src/component/lib.ts +192 -25
  71. package/src/component/schema.ts +4 -11
  72. package/src/debug/index.ts +84 -0
  73. package/src/react/index.test.tsx +340 -0
  74. package/src/react/index.tsx +1089 -179
  75. package/src/react/uploadWithTus.test.tsx +192 -0
  76. package/src/shared/assemblyUrls.test.ts +71 -0
  77. package/src/shared/assemblyUrls.ts +59 -0
  78. package/src/shared/errors.ts +23 -0
  79. package/src/shared/pollAssembly.ts +65 -0
  80. package/src/shared/resultTypes.ts +44 -0
  81. package/src/shared/resultUtils.test.ts +29 -0
  82. package/src/shared/resultUtils.ts +71 -0
  83. package/src/shared/tusUpload.ts +59 -0
  84. package/src/test/index.ts +1 -1
  85. package/src/test/nodeModules.ts +19 -0
@@ -1,4 +1,6 @@
1
+ import { type AssemblyStatus } from "@transloadit/zod/v3/assemblyStatus";
1
2
  import type { FunctionReference } from "convex/server";
3
+ import { type AssemblyStage } from "../shared/assemblyUrls.ts";
2
4
  export type CreateAssemblyFn = FunctionReference<"action", "public", {
3
5
  templateId?: string;
4
6
  steps?: unknown;
@@ -12,6 +14,21 @@ export type CreateAssemblyFn = FunctionReference<"action", "public", {
12
14
  assemblyId: string;
13
15
  data: Record<string, unknown>;
14
16
  }>;
17
+ export type CreateAssemblyArgs = {
18
+ templateId?: string;
19
+ steps?: unknown;
20
+ fields?: unknown;
21
+ notifyUrl?: string;
22
+ numExpectedUploadFiles?: number;
23
+ expires?: string;
24
+ additionalParams?: unknown;
25
+ userId?: string;
26
+ };
27
+ export type CreateAssemblyResponse = {
28
+ assemblyId: string;
29
+ data: Record<string, unknown>;
30
+ };
31
+ export type CreateAssemblyHandler = (args: CreateAssemblyArgs) => Promise<CreateAssemblyResponse>;
15
32
  export type GetAssemblyStatusFn = FunctionReference<"query", "public", {
16
33
  assemblyId: string;
17
34
  }, unknown>;
@@ -60,21 +77,202 @@ export interface TusUploadOptions extends UploadOptions {
60
77
  data: Record<string, unknown>;
61
78
  }) => void;
62
79
  }
63
- export declare function useTransloaditTusUpload(createAssembly: CreateAssemblyFn): {
64
- upload: (file: File, options: TusUploadOptions) => Promise<{
80
+ export type TusUploadEvents = {
81
+ onStateChange?: (state: UploadState) => void;
82
+ };
83
+ export type MultiFileTusUploadOptions = Omit<TusUploadOptions, "metadata" | "fieldName" | "onProgress"> & {
84
+ concurrency?: number;
85
+ metadata?: Record<string, string> | ((file: File) => Record<string, string>);
86
+ fieldName?: string | ((file: File) => string);
87
+ onFileProgress?: (file: File, progress: number) => void;
88
+ onFileComplete?: (file: File) => void;
89
+ onFileError?: (file: File, error: Error) => void;
90
+ onOverallProgress?: (progress: number) => void;
91
+ onStateChange?: (state: UploadState) => void;
92
+ failFast?: boolean;
93
+ signal?: AbortSignal;
94
+ };
95
+ export type MultiFileTusUploadResult = {
96
+ assemblyId: string;
97
+ data: Record<string, unknown>;
98
+ files: Array<{
99
+ file: File;
100
+ status: "success" | "error" | "canceled";
101
+ error?: Error;
102
+ }>;
103
+ };
104
+ export type MultiFileTusUploadController = {
105
+ promise: Promise<MultiFileTusUploadResult>;
106
+ cancel: () => void;
107
+ };
108
+ export type UppyTusState = {
109
+ endpoint?: string;
110
+ addRequestId?: boolean;
111
+ };
112
+ export type UppyFile = {
113
+ id: string;
114
+ data?: unknown;
115
+ name?: string;
116
+ type?: string;
117
+ tus?: UppyTusState;
118
+ };
119
+ export type UppyUploadError = {
120
+ message?: string;
121
+ } | string | null | undefined;
122
+ export type UppyUploadResult = {
123
+ successful?: Array<{
124
+ id: string;
125
+ name?: string;
126
+ }>;
127
+ failed?: Array<{
128
+ id: string;
129
+ name?: string;
130
+ error?: UppyUploadError;
131
+ }>;
132
+ };
133
+ export type UppyLike = {
134
+ getFiles: () => UppyFile[];
135
+ setFileMeta: (fileId: string, metadata: Record<string, string>) => void;
136
+ setFileState: (fileId: string, state: {
137
+ tus?: UppyTusState;
138
+ }) => void;
139
+ getPlugin: (name: string) => {
140
+ setOptions?: (options: {
141
+ endpoint?: string;
142
+ addRequestId?: boolean;
143
+ }) => void;
144
+ } | undefined | null;
145
+ upload: () => Promise<UppyUploadResult | undefined>;
146
+ };
147
+ export type UploadWithAssemblyOptions<TArgs extends {
148
+ fileCount: number;
149
+ }> = {
150
+ fileCount?: number;
151
+ fieldName?: string;
152
+ metadata?: Record<string, string>;
153
+ addRequestId?: boolean;
154
+ createAssemblyArgs?: Partial<TArgs>;
155
+ onAssemblyCreated?: (assembly: {
65
156
  assemblyId: string;
66
157
  data: Record<string, unknown>;
67
- }>;
158
+ }) => void;
159
+ };
160
+ export type UploadWithAssemblyResult<TAssembly> = {
161
+ assembly: TAssembly;
162
+ uploadResult: UppyUploadResult;
163
+ };
164
+ export type UseTransloaditUploadOptions = {
165
+ createAssembly: CreateAssemblyFn;
166
+ getStatus: GetAssemblyStatusFn;
167
+ listResults: ListResultsFn;
168
+ refreshAssembly: RefreshAssemblyFn;
169
+ pollIntervalMs?: number;
170
+ stopOnTerminal?: boolean;
171
+ shouldContinue?: () => boolean;
172
+ onError?: (error: Error) => void;
173
+ };
174
+ export type UseTransloaditUploadResult = {
175
+ upload: (files: File | File[] | FileList, options: MultiFileTusUploadOptions) => Promise<MultiFileTusUploadResult>;
176
+ cancel: () => void;
177
+ reset: () => void;
178
+ isUploading: boolean;
179
+ progress: number;
180
+ error: Error | null;
181
+ assemblyId: string | null;
182
+ assemblyData: Record<string, unknown> | null;
183
+ assembly: unknown;
184
+ status: AssemblyStatus | null;
185
+ results: Array<unknown> | undefined;
186
+ };
187
+ export type UseTransloaditUppyOptions<TArgs extends {
188
+ fileCount: number;
189
+ }, TAssembly extends {
190
+ assemblyId: string;
191
+ data: Record<string, unknown>;
192
+ }> = {
193
+ uppy: UppyLike;
194
+ createAssembly: FunctionReference<"action", "public", TArgs, TAssembly>;
195
+ getStatus: GetAssemblyStatusFn;
196
+ listResults: ListResultsFn;
197
+ refreshAssembly: RefreshAssemblyFn;
198
+ pollIntervalMs?: number;
199
+ shouldContinue?: () => boolean;
200
+ onError?: (error: Error) => void;
201
+ createAssemblyArgs?: Partial<TArgs>;
202
+ fileCount?: number;
203
+ fieldName?: string;
204
+ metadata?: Record<string, string>;
205
+ addRequestId?: boolean;
206
+ onAssemblyCreated?: (assembly: TAssembly) => void;
207
+ onUploadResult?: (result: UppyUploadResult) => void;
208
+ };
209
+ export type UseTransloaditUppyResult<TArgs extends {
210
+ fileCount: number;
211
+ }, TAssembly> = {
212
+ startUpload: (overrides?: Partial<UploadWithAssemblyOptions<TArgs>>) => Promise<UploadWithAssemblyResult<TAssembly>>;
213
+ reset: () => void;
214
+ isUploading: boolean;
215
+ error: Error | null;
216
+ assemblyId: string | null;
217
+ assemblyData: Record<string, unknown> | null;
218
+ assembly: unknown;
219
+ status: AssemblyStatus | null;
220
+ results: Array<unknown> | undefined;
221
+ stage: AssemblyStage | "uploading" | "error" | null;
222
+ uploadResult: UppyUploadResult | null;
223
+ };
224
+ export declare function uploadWithAssembly<TArgs extends {
225
+ fileCount: number;
226
+ }, TAssembly extends {
227
+ assemblyId: string;
228
+ data: Record<string, unknown>;
229
+ }>(createAssembly: (args: TArgs) => Promise<TAssembly>, uppy: UppyLike, options: UploadWithAssemblyOptions<TArgs>): Promise<UploadWithAssemblyResult<TAssembly>>;
230
+ /**
231
+ * Low-level tus upload helper. Prefer `useTransloaditUpload` for new code.
232
+ */
233
+ /**
234
+ * Low-level tus upload helper. Prefer `useTransloaditUpload` for new code.
235
+ */
236
+ export declare function uploadWithTransloaditTus(createAssembly: CreateAssemblyHandler, file: File, options: TusUploadOptions, events?: TusUploadEvents): Promise<CreateAssemblyResponse>;
237
+ /**
238
+ * @deprecated Prefer `useTransloaditUpload` (single + multi-file) for new code.
239
+ */
240
+ export declare function useTransloaditTusUpload(createAssembly: CreateAssemblyFn): {
241
+ upload: (file: File, options: TusUploadOptions) => Promise<CreateAssemblyResponse>;
68
242
  reset: () => void;
69
243
  isUploading: boolean;
70
244
  progress: number;
71
245
  error: Error | null;
72
246
  };
247
+ /**
248
+ * Low-level multi-file tus uploader. Prefer `useTransloaditUpload` for new code.
249
+ */
250
+ export declare function uploadFilesWithTransloaditTus(createAssembly: CreateAssemblyHandler, files: File[], options: MultiFileTusUploadOptions): MultiFileTusUploadController;
251
+ export declare function useTransloaditUpload(options: UseTransloaditUploadOptions): UseTransloaditUploadResult;
252
+ export declare function useTransloaditUppy<TArgs extends {
253
+ fileCount: number;
254
+ }, TAssembly extends {
255
+ assemblyId: string;
256
+ data: Record<string, unknown>;
257
+ }>(options: UseTransloaditUppyOptions<TArgs, TAssembly>): UseTransloaditUppyResult<TArgs, TAssembly>;
73
258
  export declare function useAssemblyStatus(getStatus: GetAssemblyStatusFn, assemblyId: string): unknown;
74
259
  export declare function useAssemblyStatusWithPolling(getStatus: GetAssemblyStatusFn, refreshAssembly: RefreshAssemblyFn, assemblyId: string, options?: {
75
260
  pollIntervalMs?: number;
76
261
  stopOnTerminal?: boolean;
262
+ shouldContinue?: () => boolean;
263
+ onError?: (error: Error) => void;
77
264
  }): unknown;
265
+ /**
266
+ * @deprecated Prefer `useAssemblyStatusWithPolling` for public usage.
267
+ */
268
+ export declare function useAssemblyPoller(options: {
269
+ assemblyId: string | null;
270
+ status: AssemblyStatus | null | undefined;
271
+ refresh: () => Promise<void>;
272
+ intervalMs: number;
273
+ shouldContinue?: () => boolean;
274
+ onError?: (error: Error) => void;
275
+ }): void;
78
276
  export declare function useTransloaditFiles(listResults: ListResultsFn, args: {
79
277
  assemblyId: string;
80
278
  stepName?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/react/index.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/react/index.tsx"],"names":[],"mappings":"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"}