@uploadista/react 0.0.17-beta.4 → 0.0.17-beta.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 (37) hide show
  1. package/dist/components/index.d.mts +3 -3
  2. package/dist/components/index.mjs +1 -1
  3. package/dist/hooks/index.d.mts +3 -3
  4. package/dist/hooks/index.mjs +1 -1
  5. package/dist/index.d.mts +6 -6
  6. package/dist/index.d.mts.map +1 -1
  7. package/dist/index.mjs +1 -1
  8. package/dist/upload-zone-BPIAbcsx.mjs +6 -0
  9. package/dist/upload-zone-BPIAbcsx.mjs.map +1 -0
  10. package/dist/{uploadista-provider-DIMEpwsu.d.mts → uploadista-provider-bZlGf-uJ.d.mts} +62 -15
  11. package/dist/uploadista-provider-bZlGf-uJ.d.mts.map +1 -0
  12. package/dist/use-upload-BpnD7FA-.mjs +2 -0
  13. package/dist/use-upload-BpnD7FA-.mjs.map +1 -0
  14. package/dist/use-upload-metrics-BoGtFTrl.mjs +2 -0
  15. package/dist/use-upload-metrics-BoGtFTrl.mjs.map +1 -0
  16. package/dist/{use-upload-metrics-R1xNz6Aa.d.mts → use-upload-metrics-DhzS4lhG.d.mts} +207 -5
  17. package/dist/use-upload-metrics-DhzS4lhG.d.mts.map +1 -0
  18. package/dist/{use-uploadista-client-ty1ffKD7.d.mts → use-uploadista-client-CfpEI3Us.d.mts} +228 -3
  19. package/dist/use-uploadista-client-CfpEI3Us.d.mts.map +1 -0
  20. package/package.json +5 -5
  21. package/src/components/flow-input.tsx +298 -0
  22. package/src/components/index.tsx +3 -0
  23. package/src/contexts/flow-manager-context.tsx +1 -0
  24. package/src/hooks/index.ts +20 -6
  25. package/src/hooks/use-flow-execution.ts +505 -0
  26. package/src/hooks/use-flow-upload.ts +23 -0
  27. package/src/hooks/use-flow.ts +439 -0
  28. package/src/index.ts +15 -0
  29. package/dist/upload-zone-DN7Gem65.mjs +0 -2
  30. package/dist/upload-zone-DN7Gem65.mjs.map +0 -1
  31. package/dist/uploadista-provider-DIMEpwsu.d.mts.map +0 -1
  32. package/dist/use-upload-C7QZSt1M.mjs +0 -2
  33. package/dist/use-upload-C7QZSt1M.mjs.map +0 -1
  34. package/dist/use-upload-metrics-DEaujDeM.mjs +0 -2
  35. package/dist/use-upload-metrics-DEaujDeM.mjs.map +0 -1
  36. package/dist/use-upload-metrics-R1xNz6Aa.d.mts.map +0 -1
  37. package/dist/use-uploadista-client-ty1ffKD7.d.mts.map +0 -1
@@ -1,7 +1,7 @@
1
- import { FlowEvent, FlowEventFlowCancel, FlowEventFlowEnd, FlowEventFlowError, FlowEventFlowPause, FlowEventFlowStart, FlowEventJobEnd, FlowEventJobStart, FlowEventNodeEnd, FlowEventNodeError, FlowEventNodePause, FlowEventNodeResume, FlowEventNodeStart } from "@uploadista/core/flow";
1
+ import { FlowEvent, FlowEventFlowCancel, FlowEventFlowEnd, FlowEventFlowError, FlowEventFlowPause, FlowEventFlowStart, FlowEventJobEnd, FlowEventJobStart, FlowEventNodeEnd, FlowEventNodeError, FlowEventNodePause, FlowEventNodeResume, FlowEventNodeStart, TypedOutput } from "@uploadista/core/flow";
2
2
  import { UploadEvent } from "@uploadista/core/types";
3
- import { ChunkMetrics, PerformanceInsights, UploadSessionMetrics, UploadistaEvent } from "@uploadista/client-core";
4
- import { BrowserUploadInput, MultiFlowUploadOptions, MultiFlowUploadState, UploadistaEvent as UploadistaEvent$1 } from "@uploadista/client-browser";
3
+ import { ChunkMetrics, FlowInputs, FlowUploadState, PerformanceInsights, UploadSessionMetrics, UploadistaEvent } from "@uploadista/client-core";
4
+ import { BrowserUploadInput, FlowUploadOptions, MultiFlowUploadOptions, MultiFlowUploadState, UploadistaEvent as UploadistaEvent$1 } from "@uploadista/client-browser";
5
5
 
6
6
  //#region src/hooks/event-utils.d.ts
7
7
  /**
@@ -248,6 +248,208 @@ interface UseUploadEventsOptions {
248
248
  */
249
249
  declare function useUploadEvents(options: UseUploadEventsOptions): void;
250
250
  //#endregion
251
+ //#region src/hooks/use-flow-execution.d.ts
252
+ /**
253
+ * Input builder function that transforms trigger data into flow inputs.
254
+ *
255
+ * The builder receives the trigger data passed to execute() and returns
256
+ * a FlowInputs object mapping node IDs to their input data.
257
+ *
258
+ * @template TTrigger - The type of data passed to execute()
259
+ * @param trigger - The trigger data (e.g., File, URL string, structured data)
260
+ * @returns Promise resolving to FlowInputs mapping or the mapping directly
261
+ *
262
+ * @example
263
+ * ```typescript
264
+ * // File upload builder
265
+ * const fileBuilder: InputBuilder<File> = async (file) => ({
266
+ * "input-node": {
267
+ * operation: "init",
268
+ * storageId: "s3",
269
+ * metadata: { originalName: file.name, size: file.size }
270
+ * }
271
+ * });
272
+ *
273
+ * // URL fetch builder
274
+ * const urlBuilder: InputBuilder<string> = (url) => ({
275
+ * "input-node": {
276
+ * operation: "url",
277
+ * url,
278
+ * metadata: { source: "external" }
279
+ * }
280
+ * });
281
+ * ```
282
+ */
283
+ type InputBuilder<TTrigger = unknown> = (trigger: TTrigger) => Promise<FlowInputs> | FlowInputs;
284
+ /**
285
+ * Options for the useFlowExecution hook.
286
+ *
287
+ * @template TTrigger - The type of trigger data passed to execute()
288
+ * @template TOutput - The expected output type from the flow
289
+ *
290
+ * @property flowConfig - Flow configuration (flowId, storageId, etc.)
291
+ * @property inputBuilder - Function to build flow inputs from trigger data
292
+ * @property onJobStart - Called when flow job is created
293
+ * @property onProgress - Called during upload progress (if applicable)
294
+ * @property onChunkComplete - Called when upload chunk completes (if applicable)
295
+ * @property onSuccess - Called with typed outputs when flow succeeds
296
+ * @property onFlowComplete - Called with all outputs when flow completes
297
+ * @property onError - Called when execution fails
298
+ * @property onAbort - Called when execution is aborted
299
+ * @property onShouldRetry - Custom retry logic (if applicable)
300
+ */
301
+ interface UseFlowExecutionOptions<TTrigger = unknown, TOutput = TypedOutput[]> {
302
+ /**
303
+ * Flow configuration
304
+ */
305
+ flowConfig: FlowUploadOptions["flowConfig"];
306
+ /**
307
+ * Function to build flow inputs from trigger data.
308
+ * Can be async to perform validation, API calls, etc.
309
+ */
310
+ inputBuilder: InputBuilder<TTrigger>;
311
+ /**
312
+ * Called when the flow job starts
313
+ */
314
+ onJobStart?: (jobId: string) => void;
315
+ /**
316
+ * Called during upload progress (for file uploads)
317
+ */
318
+ onProgress?: (uploadId: string, bytesUploaded: number, totalBytes: number | null) => void;
319
+ /**
320
+ * Called when an upload chunk completes (for file uploads)
321
+ */
322
+ onChunkComplete?: (chunkSize: number, bytesAccepted: number, bytesTotal: number | null) => void;
323
+ /**
324
+ * Called when flow execution succeeds with final outputs
325
+ */
326
+ onSuccess?: (outputs: TOutput) => void;
327
+ /**
328
+ * Called when flow completes (alternative to onSuccess)
329
+ */
330
+ onFlowComplete?: (outputs: TypedOutput[]) => void;
331
+ /**
332
+ * Called when execution fails
333
+ */
334
+ onError?: (error: Error) => void;
335
+ /**
336
+ * Called when execution is aborted
337
+ */
338
+ onAbort?: () => void;
339
+ /**
340
+ * Custom retry logic (for file uploads)
341
+ */
342
+ onShouldRetry?: (error: Error, retryAttempt: number) => boolean;
343
+ }
344
+ /**
345
+ * Return value from useFlowExecution hook.
346
+ *
347
+ * @template TTrigger - The type of trigger data passed to execute()
348
+ *
349
+ * @property state - Current execution state with progress and outputs
350
+ * @property execute - Function to trigger flow execution
351
+ * @property abort - Cancel the current execution
352
+ * @property pause - Pause the current execution (for file uploads)
353
+ * @property reset - Reset state to idle
354
+ * @property isExecuting - True when execution is active
355
+ * @property isUploadingFile - True during file upload phase
356
+ * @property isProcessing - True during flow processing phase
357
+ */
358
+ interface UseFlowExecutionReturn<TTrigger = unknown> {
359
+ /**
360
+ * Current execution state
361
+ */
362
+ state: FlowUploadState;
363
+ /**
364
+ * Execute the flow with trigger data
365
+ */
366
+ execute: (trigger: TTrigger) => Promise<void>;
367
+ /**
368
+ * Abort the current execution
369
+ */
370
+ abort: () => void;
371
+ /**
372
+ * Pause the current execution (if supported by input type)
373
+ */
374
+ pause: () => void;
375
+ /**
376
+ * Reset the execution state
377
+ */
378
+ reset: () => void;
379
+ /**
380
+ * Whether execution is active (uploading OR processing)
381
+ */
382
+ isExecuting: boolean;
383
+ /**
384
+ * Whether file upload is in progress
385
+ */
386
+ isUploadingFile: boolean;
387
+ /**
388
+ * Whether flow processing is in progress
389
+ */
390
+ isProcessing: boolean;
391
+ }
392
+ /**
393
+ * Generic React hook for flexible flow execution.
394
+ *
395
+ * Provides a flexible interface for executing flows with arbitrary input types
396
+ * through an inputBuilder pattern. The builder transforms trigger data into
397
+ * flow inputs, enabling support for files, URLs, structured data, and more.
398
+ *
399
+ * Must be used within FlowManagerProvider (which must be within UploadistaProvider).
400
+ *
401
+ * @template TTrigger - The type of trigger data passed to execute()
402
+ * @template TOutput - The expected output type from the flow
403
+ *
404
+ * @param options - Flow execution configuration with inputBuilder
405
+ * @returns Execution state and control methods
406
+ *
407
+ * @example
408
+ * ```tsx
409
+ * // URL-based image processing
410
+ * const urlExecution = useFlowExecution<string>({
411
+ * flowConfig: { flowId: "optimize", storageId: "s3" },
412
+ * inputBuilder: async (url) => {
413
+ * const { inputNodes } = await client.findInputNode("optimize");
414
+ * return {
415
+ * [inputNodes[0].id]: {
416
+ * operation: "url",
417
+ * url,
418
+ * metadata: { source: "external" }
419
+ * }
420
+ * };
421
+ * },
422
+ * onSuccess: (outputs) => console.log("Processed:", outputs)
423
+ * });
424
+ *
425
+ * // Execute with URL
426
+ * await urlExecution.execute("https://example.com/image.jpg");
427
+ *
428
+ * // File upload (traditional pattern)
429
+ * const fileExecution = useFlowExecution<File>({
430
+ * flowConfig: { flowId: "optimize", storageId: "s3" },
431
+ * inputBuilder: async (file) => {
432
+ * const { inputNodes } = await client.findInputNode("optimize");
433
+ * return {
434
+ * [inputNodes[0].id]: {
435
+ * operation: "init",
436
+ * storageId: "s3",
437
+ * metadata: {
438
+ * originalName: file.name,
439
+ * mimeType: file.type,
440
+ * size: file.size
441
+ * }
442
+ * }
443
+ * };
444
+ * }
445
+ * });
446
+ *
447
+ * // Execute with file
448
+ * await fileExecution.execute(myFile);
449
+ * ```
450
+ */
451
+ declare function useFlowExecution<TTrigger = unknown, TOutput = TypedOutput[]>(options: UseFlowExecutionOptions<TTrigger, TOutput>): UseFlowExecutionReturn<TTrigger>;
452
+ //#endregion
251
453
  //#region src/hooks/use-multi-flow-upload.d.ts
252
454
  /**
253
455
  * Return value from the useMultiFlowUpload hook with batch upload control methods.
@@ -624,5 +826,5 @@ interface UseUploadMetricsReturn {
624
826
  */
625
827
  declare function useUploadMetrics(options?: UseUploadMetricsOptions): UseUploadMetricsReturn;
626
828
  //#endregion
627
- export { useFlowEvents as _, useUploadMetrics as a, isUploadEvent as b, UploadFailedEventData as c, UploadValidationFailedEventData as d, UploadValidationSuccessEventData as f, UseFlowEventsOptions as g, useUploadEvents as h, UseUploadMetricsReturn as i, UploadFileEventData as l, UseUploadEventsOptions as m, UploadMetrics$1 as n, UseMultiFlowUploadReturn as o, UploadValidationWarningEventData as p, UseUploadMetricsOptions as r, useMultiFlowUpload as s, FileUploadMetrics as t, UploadProgressEventData as u, useUploadistaEvents as v, isFlowEvent as y };
628
- //# sourceMappingURL=use-upload-metrics-R1xNz6Aa.d.mts.map
829
+ export { isFlowEvent as C, useUploadistaEvents as S, UploadValidationWarningEventData as _, useUploadMetrics as a, UseFlowEventsOptions as b, InputBuilder as c, useFlowExecution as d, UploadFailedEventData as f, UploadValidationSuccessEventData as g, UploadValidationFailedEventData as h, UseUploadMetricsReturn as i, UseFlowExecutionOptions as l, UploadProgressEventData as m, UploadMetrics$1 as n, UseMultiFlowUploadReturn as o, UploadFileEventData as p, UseUploadMetricsOptions as r, useMultiFlowUpload as s, FileUploadMetrics as t, UseFlowExecutionReturn as u, UseUploadEventsOptions as v, isUploadEvent as w, useFlowEvents as x, useUploadEvents as y };
830
+ //# sourceMappingURL=use-upload-metrics-DhzS4lhG.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-upload-metrics-DhzS4lhG.d.mts","names":[],"sources":["../src/hooks/event-utils.ts","../src/hooks/use-uploadista-events.ts","../src/hooks/use-flow-events.ts","../src/hooks/use-upload-events.ts","../src/hooks/use-flow-execution.ts","../src/hooks/use-multi-flow-upload.ts","../src/hooks/use-upload-metrics.ts"],"sourcesContent":[],"mappings":"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"}
@@ -1,7 +1,209 @@
1
1
  import { UploadFile } from "@uploadista/core/types";
2
- import { FlowUploadState, FlowUploadStatus, UploadMetrics, UploadState, UploadStatus } from "@uploadista/client-core";
2
+ import { FlowUploadState, FlowUploadState as FlowUploadState$1, FlowUploadStatus, InputExecutionState, UploadMetrics, UploadState, UploadStatus } from "@uploadista/client-core";
3
3
  import { BrowserUploadInput, FlowUploadOptions, UploadistaClientOptions, createUploadistaClient } from "@uploadista/client-browser";
4
4
 
5
+ //#region src/hooks/use-flow.d.ts
6
+
7
+ /**
8
+ * Input metadata discovered from the flow
9
+ */
10
+ interface FlowInputMetadata {
11
+ /** Input node ID */
12
+ nodeId: string;
13
+ /** Human-readable node name */
14
+ nodeName: string;
15
+ /** Node description explaining what input is needed */
16
+ nodeDescription: string;
17
+ /** Input node type */
18
+ nodeType: string;
19
+ /** Whether this input is required */
20
+ required: boolean;
21
+ }
22
+ /**
23
+ * Return value from the useFlow hook with upload control methods and state.
24
+ *
25
+ * @property state - Complete flow upload state with progress and outputs
26
+ * @property inputMetadata - Metadata about discovered input nodes (null until discovered)
27
+ * @property inputStates - Per-input execution state for multi-input flows
28
+ * @property inputs - Current input values set via setInput()
29
+ * @property setInput - Set an input value for a specific node (for progressive provision)
30
+ * @property execute - Execute the flow with current inputs (auto-detects types)
31
+ * @property upload - Convenience method for single-file upload (same as execute with one file input)
32
+ * @property abort - Cancel the current upload and flow execution
33
+ * @property pause - Pause the current upload
34
+ * @property reset - Reset state to idle (clears all data)
35
+ * @property isUploading - True when upload or processing is active
36
+ * @property isUploadingFile - True only during file upload phase
37
+ * @property isProcessing - True only during flow processing phase
38
+ * @property isDiscoveringInputs - True while discovering flow inputs
39
+ */
40
+ interface UseFlowReturn {
41
+ /**
42
+ * Current upload state
43
+ */
44
+ state: FlowUploadState$1;
45
+ /**
46
+ * Discovered input nodes metadata (null until discovery completes)
47
+ */
48
+ inputMetadata: FlowInputMetadata[] | null;
49
+ /**
50
+ * Per-input execution state for multi-input flows
51
+ */
52
+ inputStates: ReadonlyMap<string, InputExecutionState>;
53
+ /**
54
+ * Current inputs set via setInput()
55
+ */
56
+ inputs: Record<string, unknown>;
57
+ /**
58
+ * Set an input value for a specific node.
59
+ * For progressive input provision before calling execute().
60
+ *
61
+ * @param nodeId - The input node ID
62
+ * @param value - The input value (File, URL string, or structured data)
63
+ */
64
+ setInput: (nodeId: string, value: unknown) => void;
65
+ /**
66
+ * Execute the flow with current inputs.
67
+ * Automatically detects input types and routes appropriately.
68
+ * For single input, uses standard upload path.
69
+ * For multiple inputs, requires multiInputUploadFn.
70
+ */
71
+ execute: () => Promise<void>;
72
+ /**
73
+ * Upload a single file through the flow (convenience method).
74
+ * Equivalent to setInput(firstNodeId, file) + execute().
75
+ *
76
+ * @param file - File or Blob to upload
77
+ */
78
+ upload: (file: File | Blob) => Promise<void>;
79
+ /**
80
+ * Abort the current upload
81
+ */
82
+ abort: () => void;
83
+ /**
84
+ * Pause the current upload
85
+ */
86
+ pause: () => void;
87
+ /**
88
+ * Reset the upload state and clear all inputs
89
+ */
90
+ reset: () => void;
91
+ /**
92
+ * Whether an upload or flow execution is in progress (uploading OR processing)
93
+ */
94
+ isUploading: boolean;
95
+ /**
96
+ * Whether the file is currently being uploaded (chunks being sent)
97
+ */
98
+ isUploadingFile: boolean;
99
+ /**
100
+ * Whether the flow is currently processing (after upload completes)
101
+ */
102
+ isProcessing: boolean;
103
+ /**
104
+ * Whether the hook is discovering flow inputs
105
+ */
106
+ isDiscoveringInputs: boolean;
107
+ }
108
+ /**
109
+ * React hook for executing flows with single or multiple inputs.
110
+ * Automatically discovers input nodes and detects input types (File, URL, structured data).
111
+ * Supports progressive input provision via setInput() and execute().
112
+ *
113
+ * This is the unified flow hook that replaces useFlowUpload for advanced use cases.
114
+ * It provides:
115
+ * - Auto-discovery of flow input nodes
116
+ * - Automatic input type detection (file → upload, string → URL, object → data)
117
+ * - Progressive input provision via setInput()
118
+ * - Multi-input support with parallel coordination
119
+ * - Per-input state tracking
120
+ *
121
+ * Must be used within FlowManagerProvider (which must be within UploadistaProvider).
122
+ * Flow events are automatically routed by the provider to the appropriate manager.
123
+ *
124
+ * @param options - Flow upload configuration including flow ID and event handlers
125
+ * @returns Flow upload state and control methods
126
+ *
127
+ * @example
128
+ * ```tsx
129
+ * // Single file upload (simple case)
130
+ * function SingleFileUploader() {
131
+ * const flow = useFlow({
132
+ * flowConfig: {
133
+ * flowId: "image-optimization",
134
+ * storageId: "s3-images",
135
+ * },
136
+ * onSuccess: (outputs) => {
137
+ * console.log("Flow outputs:", outputs);
138
+ * },
139
+ * });
140
+ *
141
+ * return (
142
+ * <div>
143
+ * <input
144
+ * type="file"
145
+ * onChange={(e) => {
146
+ * const file = e.target.files?.[0];
147
+ * if (file) flow.upload(file);
148
+ * }}
149
+ * />
150
+ * {flow.isUploading && <div>Progress: {flow.state.progress}%</div>}
151
+ * </div>
152
+ * );
153
+ * }
154
+ *
155
+ * // Multi-input with progressive provision
156
+ * function MultiInputFlow() {
157
+ * const flow = useFlow({
158
+ * flowConfig: {
159
+ * flowId: "multi-source-processing",
160
+ * storageId: "default",
161
+ * },
162
+ * });
163
+ *
164
+ * return (
165
+ * <div>
166
+ * {flow.inputMetadata?.map((input) => (
167
+ * <div key={input.nodeId}>
168
+ * <label>{input.nodeId}</label>
169
+ * {input.nodeType === "streaming-input-v1" ? (
170
+ * <input
171
+ * type="file"
172
+ * onChange={(e) => {
173
+ * const file = e.target.files?.[0];
174
+ * if (file) flow.setInput(input.nodeId, file);
175
+ * }}
176
+ * />
177
+ * ) : (
178
+ * <input
179
+ * type="url"
180
+ * onChange={(e) => flow.setInput(input.nodeId, e.target.value)}
181
+ * />
182
+ * )}
183
+ * </div>
184
+ * ))}
185
+ * <button onClick={flow.execute} disabled={flow.isUploading}>
186
+ * Execute Flow
187
+ * </button>
188
+ *
189
+ * {flow.isUploading && (
190
+ * <div>
191
+ * {Array.from(flow.inputStates.values()).map((inputState) => (
192
+ * <div key={inputState.nodeId}>
193
+ * {inputState.nodeId}: {inputState.status} ({inputState.progress}%)
194
+ * </div>
195
+ * ))}
196
+ * </div>
197
+ * )}
198
+ * </div>
199
+ * );
200
+ * }
201
+ * ```
202
+ *
203
+ * @see {@link useFlowUpload} for a simpler file-only upload hook
204
+ */
205
+ declare function useFlow(options: FlowUploadOptions): UseFlowReturn;
206
+ //#endregion
5
207
  //#region src/hooks/use-drag-drop.d.ts
6
208
  interface DragDropOptions {
7
209
  /**
@@ -204,6 +406,10 @@ interface UseFlowUploadReturn {
204
406
  * Handles both the file upload phase and the flow processing phase, providing
205
407
  * real-time progress updates and flow node execution tracking.
206
408
  *
409
+ * This is a convenience wrapper around the generic useFlowExecution hook,
410
+ * specialized for the common case of file uploads. For more flexible input types
411
+ * (URLs, structured data), use useFlowExecution directly with an inputBuilder.
412
+ *
207
413
  * The flow engine processes the uploaded file through a DAG of nodes, which can
208
414
  * perform operations like image optimization, storage saving, webhooks, etc.
209
415
  *
@@ -213,6 +419,25 @@ interface UseFlowUploadReturn {
213
419
  * @param options - Flow upload configuration including flow ID and event handlers
214
420
  * @returns Flow upload state and control methods
215
421
  *
422
+ * @remarks
423
+ * **Future refactoring**: This hook could be implemented as a thin wrapper around
424
+ * useFlowExecution with a file-specific inputBuilder:
425
+ * ```typescript
426
+ * return useFlowExecution<File | Blob>({
427
+ * ...options,
428
+ * inputBuilder: async (file) => {
429
+ * const { inputNodes } = await client.findInputNode(options.flowConfig.flowId);
430
+ * return {
431
+ * [inputNodes[0].id]: {
432
+ * operation: "init",
433
+ * storageId: options.flowConfig.storageId,
434
+ * metadata: { originalName: file.name, mimeType: file.type, size: file.size }
435
+ * }
436
+ * };
437
+ * }
438
+ * });
439
+ * ```
440
+ *
216
441
  * @example
217
442
  * ```tsx
218
443
  * // Basic flow upload with progress tracking
@@ -686,5 +911,5 @@ interface UseUploadistaClientReturn {
686
911
  */
687
912
  declare function useUploadistaClient(options: UseUploadistaClientOptions): UseUploadistaClientReturn;
688
913
  //#endregion
689
- export { useFlowUpload as _, MultiUploadState as a, UseDragDropReturn as b, useMultiUpload as c, UseUploadOptions as d, UseUploadReturn as f, UseFlowUploadReturn as g, FlowUploadStatus as h, MultiUploadOptions as i, UploadState as l, FlowUploadState as m, UseUploadistaClientReturn as n, UploadItem as o, useUpload as p, useUploadistaClient as r, UseMultiUploadReturn as s, UseUploadistaClientOptions as t, UploadStatus as u, DragDropOptions as v, useDragDrop as x, DragDropState as y };
690
- //# sourceMappingURL=use-uploadista-client-ty1ffKD7.d.mts.map
914
+ export { InputExecutionState as C, FlowInputMetadata as S, useFlow as T, useFlowUpload as _, MultiUploadState as a, UseDragDropReturn as b, useMultiUpload as c, UseUploadOptions as d, UseUploadReturn as f, UseFlowUploadReturn as g, FlowUploadStatus as h, MultiUploadOptions as i, UploadState as l, FlowUploadState as m, UseUploadistaClientReturn as n, UploadItem as o, useUpload as p, useUploadistaClient as r, UseMultiUploadReturn as s, UseUploadistaClientOptions as t, UploadStatus as u, DragDropOptions as v, UseFlowReturn as w, useDragDrop as x, DragDropState as y };
915
+ //# sourceMappingURL=use-uploadista-client-CfpEI3Us.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-uploadista-client-CfpEI3Us.d.mts","names":[],"sources":["../src/hooks/use-flow.ts","../src/hooks/use-drag-drop.ts","../src/hooks/use-flow-upload.ts","../src/hooks/use-upload.ts","../src/hooks/use-multi-upload.ts","../src/hooks/use-uploadista-client.ts"],"sourcesContent":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@uploadista/react",
3
3
  "type": "module",
4
- "version": "0.0.17-beta.4",
4
+ "version": "0.0.17-beta.6",
5
5
  "description": "React client for Uploadista",
6
6
  "license": "MIT",
7
7
  "author": "Uploadista",
@@ -22,16 +22,16 @@
22
22
  "dependencies": {
23
23
  "react": "19.2.0",
24
24
  "react-dom": "19.2.0",
25
- "@uploadista/core": "0.0.17-beta.4",
26
- "@uploadista/client-core": "0.0.17-beta.4",
27
- "@uploadista/client-browser": "0.0.17-beta.4"
25
+ "@uploadista/core": "0.0.17-beta.6",
26
+ "@uploadista/client-core": "0.0.17-beta.6",
27
+ "@uploadista/client-browser": "0.0.17-beta.6"
28
28
  },
29
29
  "devDependencies": {
30
30
  "@types/react": "19.2.6",
31
31
  "@types/react-dom": "19.2.3",
32
32
  "tsdown": "0.16.5",
33
33
  "vitest": "4.0.10",
34
- "@uploadista/typescript-config": "0.0.17-beta.4"
34
+ "@uploadista/typescript-config": "0.0.17-beta.6"
35
35
  },
36
36
  "scripts": {
37
37
  "build": "tsdown",