@uploadista/react-native-core 0.1.1 → 0.1.3-beta.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -416,7 +416,7 @@ interface UseFlowReturn {
416
416
  /**
417
417
  * Abort the current upload
418
418
  */
419
- abort: () => void;
419
+ abort: () => Promise<void>;
420
420
  /**
421
421
  * Reset the upload state and clear all inputs
422
422
  */
@@ -445,6 +445,18 @@ interface UseFlowReturn {
445
445
  * Whether a retry is possible (after error or abort with stored inputs)
446
446
  */
447
447
  canRetry: boolean;
448
+ /**
449
+ * Pause the current upload
450
+ */
451
+ pause: () => void;
452
+ /**
453
+ * Resume a paused upload
454
+ */
455
+ resume: () => void;
456
+ /**
457
+ * Whether the flow is currently paused
458
+ */
459
+ isPaused: boolean;
448
460
  }
449
461
  /**
450
462
  * React Native hook for executing flows with single or multiple inputs.
@@ -551,6 +563,8 @@ interface FlowContextValue {
551
563
  upload: (file: FilePickResult) => Promise<void>;
552
564
  /** Abort the current upload */
553
565
  abort: () => void;
566
+ /** Pause the current upload */
567
+ pause: () => void;
554
568
  /** Reset the upload state and clear all inputs */
555
569
  reset: () => void;
556
570
  /** Whether an upload or flow execution is in progress */
@@ -561,6 +575,8 @@ interface FlowContextValue {
561
575
  isProcessing: boolean;
562
576
  /** Whether the hook is discovering flow inputs */
563
577
  isDiscoveringInputs: boolean;
578
+ /** Whether the flow is currently paused */
579
+ isPaused: boolean;
564
580
  /** Pick a file and set it for a specific input node */
565
581
  pickFileForInput: (nodeId: string) => Promise<void>;
566
582
  /** Pick a file and start upload immediately (single-file flows) */
@@ -951,6 +967,30 @@ interface FlowResetProps {
951
967
  declare function FlowReset({
952
968
  children
953
969
  }: FlowResetProps): react_jsx_runtime13.JSX.Element;
970
+ /**
971
+ * Render props for Flow.Pause component.
972
+ */
973
+ interface FlowPauseRenderProps {
974
+ /** Pause the flow */
975
+ pause: () => void;
976
+ /** Whether the button should be disabled */
977
+ isDisabled: boolean;
978
+ /** Whether currently paused */
979
+ isPaused: boolean;
980
+ }
981
+ /**
982
+ * Props for Flow.Pause component.
983
+ */
984
+ interface FlowPauseProps {
985
+ /** Render function receiving pause state */
986
+ children: ReactNode | ((props: FlowPauseRenderProps) => ReactNode);
987
+ }
988
+ /**
989
+ * Pause primitive that pauses the current upload.
990
+ */
991
+ declare function FlowPause({
992
+ children
993
+ }: FlowPauseProps): react_jsx_runtime13.JSX.Element;
954
994
  /**
955
995
  * Render props for Flow.QuickUpload component.
956
996
  */
@@ -1050,6 +1090,7 @@ declare const Flow: typeof FlowRoot & {
1050
1090
  Error: typeof FlowError;
1051
1091
  Submit: typeof FlowSubmit;
1052
1092
  Cancel: typeof FlowCancel;
1093
+ Pause: typeof FlowPause;
1053
1094
  Reset: typeof FlowReset;
1054
1095
  QuickUpload: typeof FlowQuickUpload;
1055
1096
  };
@@ -1908,10 +1949,14 @@ declare function createUploadistaClient(options: UploadistaClientOptions$1, serv
1908
1949
  onSuccess,
1909
1950
  onShouldRetry,
1910
1951
  onJobStart,
1911
- onError
1912
- }?: Omit<_uploadista_client_core3.UploadistaUploadOptions, "uploadLengthDeferred" | "uploadSize" | "metadata">) => Promise<{
1952
+ onError,
1953
+ onAbort
1954
+ }?: Omit<_uploadista_client_core3.UploadistaUploadOptions, "uploadLengthDeferred" | "uploadSize" | "metadata"> & {
1955
+ onAbort?: () => void;
1956
+ }) => Promise<{
1913
1957
  abort: () => Promise<void>;
1914
1958
  pause: () => Promise<void>;
1959
+ resume: () => Promise<void>;
1915
1960
  jobId: string;
1916
1961
  }>;
1917
1962
  multiInputFlowUpload: (inputs: Record<string, unknown>, flowConfig: _uploadista_client_core3.FlowUploadConfig, {
@@ -1930,6 +1975,7 @@ declare function createUploadistaClient(options: UploadistaClientOptions$1, serv
1930
1975
  }) => Promise<{
1931
1976
  abort: () => Promise<void>;
1932
1977
  pause: () => Promise<void>;
1978
+ resume: () => Promise<void>;
1933
1979
  jobId: string;
1934
1980
  }>;
1935
1981
  abort: (params: Parameters<({
@@ -2223,7 +2269,7 @@ declare enum PermissionType {
2223
2269
  CAMERA = "CAMERA",
2224
2270
  PHOTO_LIBRARY = "PHOTO_LIBRARY",
2225
2271
  WRITE_STORAGE = "WRITE_STORAGE",
2226
- READ_STORAGE = "READ_STORAGE",
2272
+ READ_STORAGE = "READ_STORAGE"
2227
2273
  }
2228
2274
  /**
2229
2275
  * Permission status
@@ -2232,7 +2278,7 @@ declare enum PermissionStatus {
2232
2278
  GRANTED = "granted",
2233
2279
  DENIED = "denied",
2234
2280
  NOT_DETERMINED = "not_determined",
2235
- RESTRICTED = "restricted",
2281
+ RESTRICTED = "restricted"
2236
2282
  }
2237
2283
  /**
2238
2284
  * Request camera permission
@@ -2334,5 +2380,5 @@ declare function normalizeUri(uri: string): string;
2334
2380
  */
2335
2381
  declare function getMimeTypeFromUri(uri: string): string;
2336
2382
  //#endregion
2337
- export { type Base64Service, type CameraOptions, CameraUploadButton, type CameraUploadButtonProps, type ConnectionMetrics, type ConnectionPoolConfig, type DetailedConnectionMetrics, type FileInfo, type FilePickResult, type FileReaderService, type FileSystemProvider, type FileSystemProviderConfig, FileUploadButton, type FileUploadButtonProps, Flow, type FlowCancelProps, type FlowCancelRenderProps, type FlowContextValue, type FlowErrorProps, type FlowErrorRenderProps, type FlowInputContextValue, type FlowInputFilePickerProps, type FlowInputFilePickerRenderProps, type FlowInputMetadata, type FlowInputPreviewProps, type FlowInputPreviewRenderProps, type FlowInputProps, type FlowInputsProps, type FlowInputsRenderProps, FlowManagerProvider, type FlowProgressProps, type FlowProgressRenderProps, type FlowProps, type FlowQuickUploadProps, type FlowQuickUploadRenderProps, type FlowRenderProps, type FlowResetProps, type FlowResetRenderProps, type FlowStatusProps, type FlowStatusRenderProps, type FlowSubmitProps, type FlowSubmitRenderProps, type FlowUploadState, type FlowUploadStatus, GalleryUploadButton, type GalleryUploadButtonProps, type HttpClient, type IdGenerationService, type InputExecutionState, type MultiUploadState, PermissionStatus, PermissionType, type PickerOptions, type ReactNativeUploadInput, type ServiceContainer, type StorageService, Upload, type UploadCameraPickerProps, type UploadCameraPickerRenderProps, type UploadCancelProps, type UploadCancelRenderProps, type UploadProgressProps as UploadCompoundProgressProps, type UploadProgressRenderProps as UploadCompoundProgressRenderProps, type UploadContextValue, type UploadErrorProps, type UploadErrorRenderProps, type UploadFilePickerProps, type UploadFilePickerRenderProps, type UploadGalleryPickerProps, type UploadGalleryPickerRenderProps, type UploadItemContextValue, type UploadItemProps, type UploadItemState, type UploadItemsProps, type UploadItemsRenderProps, UploadList, type UploadListProps, type UploadMetrics, UploadProgress, type UploadProgressProps$1 as UploadProgressProps, type UploadProps, type UploadRenderProps, type UploadResetProps, type UploadResetRenderProps, type UploadRetryProps, type UploadRetryRenderProps, type UploadStartAllProps, type UploadStartAllRenderProps, type UploadState, type UploadStatus, type UploadStatusProps, type UploadStatusRenderProps, UploadistaContext, type UploadistaContextType, type UseCameraUploadOptions, type UseFileUploadOptions, type UseFlowOptions, type UseFlowReturn, type UseGalleryUploadOptions, type UseMultiUploadOptions, formatFileSize, getDirectoryFromUri, getFileExtension, getFileNameFromUri, getFileNameWithoutExtension, getMimeTypeFromFileName, getMimeTypeFromUri, getPermissionStatus, hasPermissions, isContentUri, isDocumentFile, isFileSizeValid, isFileTypeAllowed, isFileUri, isImageFile, isVideoFile, normalizeUri, openAppSettings, pathToUri, requestCameraPermission, requestPermissions, requestPhotoLibraryPermission, requestStorageReadPermission, requestStorageWritePermission, uriToPath, useCameraUpload, useFileUpload, useFlow, useFlowContext, useFlowInputContext, useFlowManagerContext, useGalleryUpload, useMultiUpload, useUploadContext, useUploadItemContext, useUploadMetrics, useUploadistaContext };
2383
+ export { type Base64Service, type CameraOptions, CameraUploadButton, type CameraUploadButtonProps, type ConnectionMetrics, type ConnectionPoolConfig, type DetailedConnectionMetrics, type FileInfo, type FilePickResult, type FileReaderService, type FileSystemProvider, type FileSystemProviderConfig, FileUploadButton, type FileUploadButtonProps, Flow, type FlowCancelProps, type FlowCancelRenderProps, type FlowContextValue, type FlowErrorProps, type FlowErrorRenderProps, type FlowInputContextValue, type FlowInputFilePickerProps, type FlowInputFilePickerRenderProps, type FlowInputMetadata, type FlowInputPreviewProps, type FlowInputPreviewRenderProps, type FlowInputProps, type FlowInputsProps, type FlowInputsRenderProps, FlowManagerProvider, type FlowPauseProps, type FlowPauseRenderProps, type FlowProgressProps, type FlowProgressRenderProps, type FlowProps, type FlowQuickUploadProps, type FlowQuickUploadRenderProps, type FlowRenderProps, type FlowResetProps, type FlowResetRenderProps, type FlowStatusProps, type FlowStatusRenderProps, type FlowSubmitProps, type FlowSubmitRenderProps, type FlowUploadState, type FlowUploadStatus, GalleryUploadButton, type GalleryUploadButtonProps, type HttpClient, type IdGenerationService, type InputExecutionState, type MultiUploadState, PermissionStatus, PermissionType, type PickerOptions, type ReactNativeUploadInput, type ServiceContainer, type StorageService, Upload, type UploadCameraPickerProps, type UploadCameraPickerRenderProps, type UploadCancelProps, type UploadCancelRenderProps, type UploadProgressProps as UploadCompoundProgressProps, type UploadProgressRenderProps as UploadCompoundProgressRenderProps, type UploadContextValue, type UploadErrorProps, type UploadErrorRenderProps, type UploadFilePickerProps, type UploadFilePickerRenderProps, type UploadGalleryPickerProps, type UploadGalleryPickerRenderProps, type UploadItemContextValue, type UploadItemProps, type UploadItemState, type UploadItemsProps, type UploadItemsRenderProps, UploadList, type UploadListProps, type UploadMetrics, UploadProgress, type UploadProgressProps$1 as UploadProgressProps, type UploadProps, type UploadRenderProps, type UploadResetProps, type UploadResetRenderProps, type UploadRetryProps, type UploadRetryRenderProps, type UploadStartAllProps, type UploadStartAllRenderProps, type UploadState, type UploadStatus, type UploadStatusProps, type UploadStatusRenderProps, UploadistaContext, type UploadistaContextType, type UseCameraUploadOptions, type UseFileUploadOptions, type UseFlowOptions, type UseFlowReturn, type UseGalleryUploadOptions, type UseMultiUploadOptions, formatFileSize, getDirectoryFromUri, getFileExtension, getFileNameFromUri, getFileNameWithoutExtension, getMimeTypeFromFileName, getMimeTypeFromUri, getPermissionStatus, hasPermissions, isContentUri, isDocumentFile, isFileSizeValid, isFileTypeAllowed, isFileUri, isImageFile, isVideoFile, normalizeUri, openAppSettings, pathToUri, requestCameraPermission, requestPermissions, requestPhotoLibraryPermission, requestStorageReadPermission, requestStorageWritePermission, uriToPath, useCameraUpload, useFileUpload, useFlow, useFlowContext, useFlowInputContext, useFlowManagerContext, useGalleryUpload, useMultiUpload, useUploadContext, useUploadItemContext, useUploadMetrics, useUploadistaContext };
2338
2384
  //# sourceMappingURL=index.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../src/types/types.ts","../src/types/upload-input.ts","../src/components/CameraUploadButton.tsx","../src/components/FileUploadButton.tsx","../src/hooks/use-flow.ts","../src/components/flow-primitives.tsx","../src/components/GalleryUploadButton.tsx","../src/components/UploadList.tsx","../src/components/UploadProgress.tsx","../src/hooks/use-multi-upload.ts","../src/components/upload-primitives.tsx","../src/contexts/flow-manager-context.tsx","../src/client/create-uploadista-client.ts","../src/hooks/use-uploadista-client.ts","../src/hooks/uploadista-context.ts","../src/hooks/use-camera-upload.ts","../src/hooks/use-file-upload.ts","../src/hooks/use-gallery-upload.ts","../src/hooks/use-upload-metrics.ts","../src/hooks/use-uploadista-context.ts","../src/utils/fileHelpers.ts","../src/utils/permissions.ts","../src/utils/uriHelpers.ts"],"sourcesContent":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/types/types.ts","../src/types/upload-input.ts","../src/components/CameraUploadButton.tsx","../src/components/FileUploadButton.tsx","../src/hooks/use-flow.ts","../src/components/flow-primitives.tsx","../src/components/GalleryUploadButton.tsx","../src/components/UploadList.tsx","../src/components/UploadProgress.tsx","../src/hooks/use-multi-upload.ts","../src/components/upload-primitives.tsx","../src/contexts/flow-manager-context.tsx","../src/client/create-uploadista-client.ts","../src/hooks/use-uploadista-client.ts","../src/hooks/uploadista-context.ts","../src/hooks/use-camera-upload.ts","../src/hooks/use-file-upload.ts","../src/hooks/use-gallery-upload.ts","../src/hooks/use-upload-metrics.ts","../src/hooks/use-uploadista-context.ts","../src/utils/fileHelpers.ts","../src/utils/permissions.ts","../src/utils/uriHelpers.ts"],"mappings":"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"}
package/dist/index.mjs CHANGED
@@ -1,2 +1,2 @@
1
- import e,{createContext as t,useCallback as n,useContext as r,useEffect as i,useRef as a,useState as o}from"react";import{ActivityIndicator as s,FlatList as c,Pressable as l,StyleSheet as u,Text as d,View as f}from"react-native";import{FlowManager as p,UploadManager as m}from"@uploadista/client-core";import{EventType as h}from"@uploadista/core/flow";import{UploadEventType as g}from"@uploadista/core/types";import{Fragment as _,jsx as v,jsxs as y}from"react/jsx-runtime";const b=t(void 0);function x(e,t){let n=e instanceof ArrayBuffer?new Uint8Array(e):e;return new Blob([n],t)}function S(){let e=r(b);if(!e)throw Error(`useUploadistaClient must be used within an UploadistaProvider`);return e}const C={status:`idle`,progress:0,bytesUploaded:0,totalBytes:null,error:null,result:null};function w(e={}){let{client:t,fileSystemProvider:r}=S(),[s,c]=o(C),l=a(null),u=a(null);return i(()=>(l.current=new m(async(e,n)=>{let i=e;if(i.status===`success`){let e=x(await r.readFile(i.data.uri),{type:i.data.mimeType||`application/octet-stream`});return t.upload(e,n)}return Promise.resolve({abort:()=>{}})},{onStateChange:c,onProgress:e.onProgress,onChunkComplete:e.onChunkComplete,onSuccess:e.onSuccess,onError:e.onError,onAbort:e.onAbort},{metadata:e.metadata,uploadLengthDeferred:e.uploadLengthDeferred,uploadSize:e.uploadSize,onShouldRetry:e.onShouldRetry}),()=>{l.current?.cleanup()}),[t,r,e]),{state:s,upload:n(async e=>{u.current=e,await l.current?.upload(e)},[]),abort:n(()=>{l.current?.abort()},[]),reset:n(()=>{l.current?.reset(),u.current=null},[]),retry:n(()=>{u.current&&l.current?.canRetry()&&l.current.retry()},[]),isUploading:s.status===`uploading`,canRetry:l.current?.canRetry()??!1,metrics:{getInsights:()=>t.getChunkingInsights(),exportMetrics:()=>t.exportMetrics(),getNetworkMetrics:()=>t.getNetworkMetrics(),getNetworkCondition:()=>t.getNetworkCondition(),resetMetrics:()=>t.resetMetrics()}}}function T(e){let{fileSystemProvider:t}=S(),r=w({metadata:e?.metadata,onSuccess:e?.onSuccess,onError:e?.onError,onProgress:e?.onProgress}),i=n(async()=>{try{let n=await t.pickCamera(e?.cameraOptions);await r.upload(n)}catch(e){console.error(`Camera capture error:`,e)}},[t,e?.cameraOptions,r]);return{...r,captureAndUpload:i}}function E(e){let{fileSystemProvider:t}=S(),r=w({metadata:e?.metadata,onSuccess:e?.onSuccess,onError:e?.onError,onProgress:e?.onProgress}),i=n(async()=>{try{let n=await t.pickDocument({allowedTypes:e?.allowedTypes});await r.upload(n)}catch(e){throw console.error(`File selection error:`,e),e}},[t,e?.allowedTypes,r]);return{...r,pickAndUpload:i}}function ee(e){let t=e;return t.eventType===h.FlowStart||t.eventType===h.FlowEnd||t.eventType===h.FlowError||t.eventType===h.NodeStart||t.eventType===h.NodeEnd||t.eventType===h.NodePause||t.eventType===h.NodeResume||t.eventType===h.NodeError}const D=t(void 0);function te({children:e}){let{client:t,subscribeToEvents:r}=S(),o=a(new Map);i(()=>r(e=>{if(ee(e)){for(let t of o.current.values())t.manager.handleFlowEvent(e);return}if(`type`in e&&e.type===g.UPLOAD_PROGRESS&&`data`in e)for(let t of o.current.values())t.manager.handleUploadProgress(e.data.id,e.data.progress,e.data.total)}),[r]);let s=n((e,n,r)=>{let i=o.current.get(e);if(i)return i.refCount++,i.manager;let a=new p(t.uploadWithFlow,n,r,t.multiInputFlowUpload);return o.current.set(e,{manager:a,refCount:1,flowId:e}),a},[t]),c=n(e=>{let t=o.current.get(e);t&&(t.refCount--,t.refCount<=0&&(t.manager.cleanup(),o.current.delete(e)))},[]);return v(D.Provider,{value:{getManager:s,releaseManager:c},children:e})}function O(){let e=r(D);if(e===void 0)throw Error(`useFlowManagerContext must be used within a FlowManagerProvider. Make sure to wrap your component tree with <FlowManagerProvider>.`);return e}const ne={status:`idle`,progress:0,bytesUploaded:0,totalBytes:null,error:null,jobId:null,flowStarted:!1,currentNodeName:null,currentNodeType:null,flowOutputs:null};function k(e){let{client:t,fileSystemProvider:r}=S(),{getManager:s,releaseManager:c}=O(),[l,u]=o(ne),[d,f]=o(null),[p,m]=o(!1),[h,g]=o({}),[_,v]=o(new Map),y=a(null),b=a(null),C=a(e);i(()=>{C.current=e}),i(()=>{(async()=>{m(!0);try{let{flow:n}=await t.getFlow(e.flowId);f(n.nodes.filter(e=>e.type===`input`).map(e=>({nodeId:e.id,nodeName:e.name,nodeDescription:e.description,inputTypeId:e.inputTypeId,required:!0})))}catch(e){console.error(`Failed to discover flow inputs:`,e)}finally{m(!1)}})()},[t,e.flowId]),i(()=>{let t=e.flowId;y.current=s(t,{onStateChange:e=>{u(e)},onProgress:(e,t,n)=>{if(C.current.onProgress){let e=n?Math.round(t/n*100):0;C.current.onProgress(e,t,n)}},onChunkComplete:(e,t,n)=>{C.current.onChunkComplete?.(e,t,n)},onFlowComplete:e=>{C.current.onFlowComplete?.(e)},onSuccess:e=>{C.current.onSuccess?.(e)},onError:e=>{C.current.onError?.(e)},onAbort:()=>{}},{flowConfig:{flowId:e.flowId,storageId:e.storageId,outputNodeId:e.outputNodeId,metadata:e.metadata},onChunkComplete:e.onChunkComplete,onSuccess:e.onSuccess,onError:e.onError});let n=setInterval(()=>{if(y.current){let e=y.current.getInputStates();e.size>0&&v(new Map(e))}},100);return()=>{clearInterval(n),c(t),y.current=null}},[e.flowId,e.storageId,e.outputNodeId,s,c]);let w=n((e,t)=>{g(n=>({...n,[e]:t}))},[]),T=n(async e=>{if(e.status===`cancelled`)return null;if(e.status===`error`)throw e.error;return x(await r.readFile(e.data.uri),{type:e.data.mimeType||`application/octet-stream`})},[r]),E=n(async()=>{if(!y.current)throw Error(`FlowManager not initialized`);if(Object.keys(h).length===0)throw Error(`No inputs provided. Use setInput() to provide inputs before calling execute()`);b.current={...h};let e={};for(let[t,n]of Object.entries(h))if(n&&typeof n==`object`&&`status`in n&&(n.status===`success`||n.status===`cancelled`||n.status===`error`)){let r=await T(n);r&&(e[t]=r)}else e[t]=n;if(Object.keys(e).length===0)throw Error(`No valid inputs after processing. All files may have been cancelled.`);await y.current.executeFlow(e)},[h,T]);return{state:l,inputMetadata:d,inputStates:_,inputs:h,setInput:w,execute:E,upload:n(async t=>{if(t.status!==`cancelled`){if(t.status===`error`){e.onError?.(t.error);return}if(!y.current)throw Error(`FlowManager not initialized`);if(d&&d.length>0){let e=d[0];e&&(b.current={[e.nodeId]:t})}try{let e=x(await r.readFile(t.data.uri),{type:t.data.mimeType||`application/octet-stream`});if(d&&d.length>0){let n=d[0];if(!n)throw Error(`No input nodes found`);g({[n.nodeId]:t}),await y.current.executeFlow({[n.nodeId]:e})}else await y.current.upload(e)}catch(t){e.onError?.(t)}}},[d,r,e]),abort:n(()=>{y.current?.abort()},[]),reset:n(()=>{y.current?.reset(),g({}),v(new Map),b.current=null},[]),retry:n(()=>{b.current&&(l.status===`error`||l.status===`aborted`)&&(g(b.current),E())},[E,l.status]),isActive:l.status===`uploading`||l.status===`processing`,isUploadingFile:l.status===`uploading`,isProcessing:l.status===`processing`,isDiscoveringInputs:p,canRetry:(l.status===`error`||l.status===`aborted`)&&b.current!==null}}const A={items:[],totalProgress:0,totalUploaded:0,totalBytes:0,activeCount:0,completedCount:0,failedCount:0};function j(e={}){let{client:t}=S(),[r,i]=o(A),s=a(new Map),c=a(0),l=a([]),u=n(()=>`upload-${Date.now()}-${c.current++}`,[]),d=n(e=>{let t=e.reduce((e,t)=>e+t.totalBytes,0),n=e.reduce((e,t)=>e+t.bytesUploaded,0),r=t>0?Math.round(n/t*100):0,a=e.filter(e=>e.status===`uploading`).length,o=e.filter(e=>e.status===`success`).length,s=e.filter(e=>e.status===`error`).length;l.current=e,i(i=>({...i,items:e,totalProgress:r,totalUploaded:n,totalBytes:t,activeCount:a,completedCount:o,failedCount:s}))},[]),f=n(e=>{let t=e.filter(e=>e.status===`success`).map(e=>({id:u(),file:e,status:`idle`,progress:0,bytesUploaded:0,totalBytes:e.data.size,error:null,result:null})),n=[...l.current,...t];return l.current=n,i(e=>{let t=n.reduce((e,t)=>e+t.totalBytes,0);return{...e,items:n,totalBytes:t}}),t.map(e=>e.id)},[u]),p=n(async n=>{try{console.log(`Uploading item:`,n.file.data.name),d(l.current.map(e=>e.id===n.id?{...e,status:`uploading`}:e));let r=await(await fetch(n.file.data.uri)).blob(),i=r;if(n.file.data.mimeType){let e={type:n.file.data.mimeType,lastModified:Date.now()};i=new Blob([r],e)}console.log(`Uploading input:`,i);let a=await t.upload(i,{metadata:e.metadata,onProgress:(e,t,r)=>{let i=r?Math.round(t/r*100):0;d(l.current.map(e=>e.id===n.id?{...e,progress:i,bytesUploaded:t,totalBytes:r||e.totalBytes}:e))},onSuccess:t=>{d(l.current.map(e=>e.id===n.id?{...e,status:`success`,progress:100,result:t,bytesUploaded:t.size||e.totalBytes}:e)),e.onSuccess?.(t),s.current.delete(n.id)},onError:t=>{d(l.current.map(e=>e.id===n.id?{...e,status:`error`,error:t}:e)),e.onError?.(t),s.current.delete(n.id)}});s.current.set(n.id,a)}catch(t){console.error(`Error uploading item:`,t),d(l.current.map(e=>e.id===n.id?{...e,status:`error`,error:t}:e)),e.onError?.(t),s.current.delete(n.id)}},[t,e,d]),m=n(async t=>{let n=e.maxConcurrent||3,r=t?l.current.filter(e=>t.includes(e.id)&&e.status===`idle`):l.current.filter(e=>e.status===`idle`);console.log(`Items to upload:`,r.length,r);for(let e=0;e<r.length;e+=n){let t=r.slice(e,e+n);await Promise.all(t.map(e=>p(e)))}},[e.maxConcurrent,p]),h=n(e=>{let t=s.current.get(e);t&&(t.abort(),s.current.delete(e)),d(l.current.filter(t=>t.id!==e))},[d]),g=n(e=>{let t=s.current.get(e);t&&(t.abort(),s.current.delete(e)),d(l.current.map(t=>t.id===e?{...t,status:`aborted`}:t))},[d]),_=n(()=>{s.current.forEach(e=>{e.abort()}),s.current.clear(),l.current=[],i(A)},[]);return{state:r,addFiles:f,startUploads:m,removeItem:h,abortItem:g,retryItem:n(async e=>{let t=l.current.find(t=>t.id===e);if(t&&(t.status===`error`||t.status===`aborted`)){d(l.current.map(t=>t.id===e?{...t,status:`idle`,progress:0,bytesUploaded:0,error:null}:t));let t=l.current.find(t=>t.id===e);t&&await p(t)}},[p,d]),clear:_}}function M(e){let{fileSystemProvider:t}=S(),r=j({maxConcurrent:3,metadata:e?.metadata,onSuccess:e?.onSuccess,onError:e?.onError}),i=n(async()=>{let n;if(n=e?.mediaType===`video`?await t.pickVideo({allowMultiple:e?.allowMultiple??!0}):(e?.mediaType,await t.pickImage({allowMultiple:e?.allowMultiple??!0})),n.status===`cancelled`)return[];if(n.status===`error`)return console.error(`Gallery selection error:`,n.error),e?.onError?.(n.error),[];let i=r.addFiles([n]);return await r.startUploads(i),i},[t,e?.allowMultiple,e?.mediaType,e?.onError,r]);return{...r,selectAndUpload:i}}function re(){let e=a(null),t=a(0),r=a(0),[i,s]=o({totalBytes:0,durationMs:0,avgSpeed:0,peakSpeed:0,retries:0});return{metrics:i,start:n(()=>{e.current=Date.now(),t.current=0,r.current=0},[]),update:n((t,n,i=0)=>{if(!e.current)return;let a=Date.now()-e.current,o=a>0?t/a*1e3:0;o>r.current&&(r.current=o),s({totalBytes:t,durationMs:a,avgSpeed:a>0?t/a*1e3:0,peakSpeed:r.current,retries:i})},[]),end:n(()=>{let t=i;return e.current=null,t},[i]),reset:n(()=>{e.current=null,t.current=0,r.current=0,s({totalBytes:0,durationMs:0,avgSpeed:0,peakSpeed:0,retries:0})},[])}}function N(e){if(e===0)return`0 Bytes`;let t=1024,n=[`Bytes`,`KB`,`MB`,`GB`],r=Math.floor(Math.log(e)/Math.log(t));return`${Math.round(e/t**r*100)/100} ${n[r]}`}function P(e){return{".jpg":`image/jpeg`,".jpeg":`image/jpeg`,".png":`image/png`,".gif":`image/gif`,".bmp":`image/bmp`,".webp":`image/webp`,".svg":`image/svg+xml`,".mp4":`video/mp4`,".avi":`video/x-msvideo`,".mov":`video/quicktime`,".wmv":`video/x-ms-wmv`,".flv":`video/x-flv`,".mkv":`video/x-matroska`,".webm":`video/webm`,".mp3":`audio/mpeg`,".wav":`audio/wav`,".aac":`audio/aac`,".flac":`audio/flac`,".m4a":`audio/mp4`,".pdf":`application/pdf`,".doc":`application/msword`,".docx":`application/vnd.openxmlformats-officedocument.wordprocessingml.document`,".xls":`application/vnd.ms-excel`,".xlsx":`application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`,".ppt":`application/vnd.ms-powerpoint`,".pptx":`application/vnd.openxmlformats-officedocument.presentationml.presentation`,".txt":`text/plain`,".csv":`text/csv`,".json":`application/json`,".xml":`application/xml`,".zip":`application/zip`}[e.toLowerCase().slice(e.lastIndexOf(`.`))]||`application/octet-stream`}function ie(e,t){if(!t||t.length===0)return!0;let n=P(e);return t.some(e=>{if(e.endsWith(`/*`)){let[t]=e.split(`/`);return n.startsWith(`${t}/`)}return e===n})}function ae(e,t,n){return!(t!==void 0&&e>t||n!==void 0&&e<n)}function oe(e){let t=e.lastIndexOf(`.`);return t===-1?``:e.slice(t+1).toLowerCase()}function se(e){let t=e.lastIndexOf(`.`);return t===-1?e:e.slice(0,t)}function ce(e){let t=[`.jpg`,`.jpeg`,`.png`,`.gif`,`.bmp`,`.webp`,`.svg`],n=e.toLowerCase().slice(e.lastIndexOf(`.`));return t.includes(n)}function le(e){let t=[`.mp4`,`.avi`,`.mov`,`.wmv`,`.flv`,`.mkv`,`.webm`],n=e.toLowerCase().slice(e.lastIndexOf(`.`));return t.includes(n)}function ue(e){let t=[`.pdf`,`.doc`,`.docx`,`.xls`,`.xlsx`,`.ppt`,`.pptx`,`.txt`,`.csv`],n=e.toLowerCase().slice(e.lastIndexOf(`.`));return t.includes(n)}let F=function(e){return e.CAMERA=`CAMERA`,e.PHOTO_LIBRARY=`PHOTO_LIBRARY`,e.WRITE_STORAGE=`WRITE_STORAGE`,e.READ_STORAGE=`READ_STORAGE`,e}({}),I=function(e){return e.GRANTED=`granted`,e.DENIED=`denied`,e.NOT_DETERMINED=`not_determined`,e.RESTRICTED=`restricted`,e}({});async function L(){try{return console.log(`Camera permission requested (handled by file system provider)`),!0}catch(e){return console.error(`Failed to request camera permission:`,e),!1}}async function R(){try{return console.log(`Photo library permission requested (handled by file system provider)`),!0}catch(e){return console.error(`Failed to request photo library permission:`,e),!1}}async function z(){try{return console.log(`Storage read permission requested (handled by file system provider)`),!0}catch(e){return console.error(`Failed to request storage read permission:`,e),!1}}async function B(){try{return console.log(`Storage write permission requested (handled by file system provider)`),!0}catch(e){return console.error(`Failed to request storage write permission:`,e),!1}}async function de(e){try{return(await Promise.all(e.map(async e=>{switch(e){case F.CAMERA:return L();case F.PHOTO_LIBRARY:return R();case F.READ_STORAGE:return z();case F.WRITE_STORAGE:return B();default:return!1}}))).every(e=>e)}catch(e){return console.error(`Failed to request permissions:`,e),!1}}async function fe(e){try{return!0}catch(e){return console.error(`Failed to check permissions:`,e),!1}}async function pe(e){try{return I.GRANTED}catch(e){return console.error(`Failed to get permission status:`,e),I.DENIED}}function me(){try{console.log(`Opening app settings (requires react-native-app-settings or platform implementation)`)}catch(e){console.error(`Failed to open app settings:`,e)}}function V(e){try{if(e.startsWith(`file://`))return e.replace(`file://`,``).split(`/`).pop()||`file`;if(e.startsWith(`content://`)){let t=e.split(`/`);return t[t.length-1]||`file`}let t=e.split(`/`);return t[t.length-1]||`file`}catch{return`file`}}function he(e){return e.startsWith(`file://`)||e.startsWith(`content://`)?e:`file://${e}`}function H(e){return e.startsWith(`file://`)?e.replace(`file://`,``):(e.startsWith(`content://`),e)}function ge(e){try{let t=H(e).split(`/`);return t.pop(),t.join(`/`)}catch{return``}}function _e(e){return e.startsWith(`content://`)}function ve(e){return e.startsWith(`file://`)}function ye(e){return e.replace(/([^:]\/)\/+/g,`$1`)}function be(e){let t=V(e);return{".jpg":`image/jpeg`,".jpeg":`image/jpeg`,".png":`image/png`,".gif":`image/gif`,".bmp":`image/bmp`,".webp":`image/webp`,".mp4":`video/mp4`,".mov":`video/quicktime`,".avi":`video/x-msvideo`,".mp3":`audio/mpeg`,".wav":`audio/wav`,".aac":`audio/aac`,".pdf":`application/pdf`,".txt":`text/plain`,".json":`application/json`}[t.toLowerCase().slice(t.lastIndexOf(`.`))]||`application/octet-stream`}function U({state:e,label:t}){let n=()=>{switch(e.status){case`uploading`:return`#007AFF`;case`success`:return`#34C759`;case`error`:case`aborted`:return`#FF3B30`;default:return`#999999`}};return y(f,{style:[W.wrapper,{borderLeftColor:n()}],children:[e.status===`uploading`&&v(s,{size:`small`,color:n(),style:W.spinner}),(()=>{switch(e.status){case`idle`:return v(f,{style:W.container,children:v(d,{style:W.label,children:t||`Ready to upload`})});case`uploading`:return y(f,{style:W.container,children:[y(f,{style:W.headerRow,children:[v(d,{style:W.label,children:t||`Uploading`}),y(d,{style:W.percentage,children:[e.progress,`%`]})]}),v(f,{style:W.progressBarContainer,children:v(f,{style:[W.progressBar,{width:`${e.progress}%`,backgroundColor:n()}]})}),v(f,{style:W.detailsRow,children:y(d,{style:W.detail,children:[N(e.bytesUploaded),` /`,` `,N(e.totalBytes||0)]})})]});case`success`:return y(f,{style:W.container,children:[y(f,{style:W.headerRow,children:[v(d,{style:[W.label,{color:n()}],children:t||`Upload complete`}),v(d,{style:[W.percentage,{color:n()}],children:`✓`})]}),v(d,{style:[W.detail,{color:n()}],children:N(e.totalBytes||0)})]});case`error`:return y(f,{style:W.container,children:[y(f,{style:W.headerRow,children:[v(d,{style:[W.label,{color:n()}],children:t||`Upload failed`}),v(d,{style:[W.percentage,{color:n()}],children:`✕`})]}),e.error&&v(d,{style:[W.detail,{color:n()}],children:e.error.message})]});case`aborted`:return v(f,{style:W.container,children:v(d,{style:[W.label,{color:n()}],children:t||`Upload cancelled`})});default:return null}})()]})}const W=u.create({wrapper:{flexDirection:`row`,alignItems:`flex-start`,paddingVertical:8,paddingHorizontal:12,borderLeftWidth:4,backgroundColor:`#f5f5f5`,borderRadius:4,gap:8},spinner:{marginTop:4},container:{flex:1,gap:4},headerRow:{flexDirection:`row`,justifyContent:`space-between`,alignItems:`center`},label:{fontSize:14,fontWeight:`600`,color:`#333333`,flex:1},percentage:{fontSize:14,fontWeight:`600`,color:`#007AFF`,minWidth:36,textAlign:`right`},progressBarContainer:{height:4,backgroundColor:`#e0e0e0`,borderRadius:2,overflow:`hidden`},progressBar:{height:`100%`,borderRadius:2},detailsRow:{flexDirection:`row`,justifyContent:`space-between`,alignItems:`center`},detail:{fontSize:12,color:`#666666`}});function xe({options:e,label:t=`Take Photo`,children:n,onSuccess:r,onError:a,onCancel:o,showProgress:c=!0}){let{state:u,captureAndUpload:p}=T(e),m=async()=>{try{await p()}catch(e){e instanceof Error&&(e.message.includes(`cancelled`)||e.message.includes(`aborted`)?o?.():a?.(e))}},h=u.status===`uploading`,g=h||u.status===`aborted`;return i(()=>{u.status===`success`&&u.result&&r?.(u.result)},[u.status,u.result,r]),i(()=>{u.status===`error`&&u.error&&a?.(u.error)},[u.status,u.error,a]),y(f,{style:G.container,children:[y(l,{style:[G.button,g&&G.buttonDisabled],onPress:m,disabled:g,children:[h&&v(s,{size:`small`,color:`#FFFFFF`,style:G.spinner}),v(d,{style:G.buttonText,children:n||t})]}),c&&u.status!==`idle`&&v(f,{style:G.progressContainer,children:v(U,{state:u,label:`Camera upload`})})]})}const G=u.create({container:{gap:8},button:{flexDirection:`row`,alignItems:`center`,justifyContent:`center`,paddingVertical:12,paddingHorizontal:16,backgroundColor:`#007AFF`,borderRadius:8,gap:8},buttonDisabled:{opacity:.6},buttonText:{fontSize:16,fontWeight:`600`,color:`#FFFFFF`},spinner:{marginRight:4},progressContainer:{marginTop:4}});function Se({options:e,label:t=`Choose File`,children:n,onSuccess:r,onError:a,onCancel:o,showProgress:c=!0}){let{state:u,pickAndUpload:p}=E(e),m=async()=>{try{await p()}catch(e){e instanceof Error&&(e.message.includes(`cancelled`)||e.message.includes(`aborted`)?o?.():a?.(e))}},h=u.status===`uploading`,g=h||u.status===`aborted`;return i(()=>{u.status===`success`&&u.result&&r?.(u.result)},[u.status,u.result,r]),i(()=>{u.status===`error`&&u.error&&a?.(u.error)},[u.status,u.error,a]),y(f,{style:K.container,children:[y(l,{style:[K.button,g&&K.buttonDisabled],onPress:m,disabled:g,children:[h&&v(s,{size:`small`,color:`#FFFFFF`,style:K.spinner}),v(d,{style:K.buttonText,children:n||t})]}),c&&u.status!==`idle`&&v(f,{style:K.progressContainer,children:v(U,{state:u,label:`File upload`})})]})}const K=u.create({container:{gap:8},button:{flexDirection:`row`,alignItems:`center`,justifyContent:`center`,paddingVertical:12,paddingHorizontal:16,backgroundColor:`#FF9500`,borderRadius:8,gap:8},buttonDisabled:{opacity:.6},buttonText:{fontSize:16,fontWeight:`600`,color:`#FFFFFF`},spinner:{marginRight:4},progressContainer:{marginTop:4}}),q=t(null);function J(){let e=r(q);if(!e)throw Error(`useFlowContext must be used within a <Flow> component. Wrap your component tree with <Flow flowId="..." storageId="...">`);return e}const Y=t(null);function X(){let e=r(Y);if(!e)throw Error(`useFlowInputContext must be used within a <Flow.Input> component. Wrap your component with <Flow.Input nodeId="...">`);return e}function Ce({flowId:e,storageId:t,outputNodeId:r,metadata:i,onSuccess:a,onError:o,onProgress:s,onFlowComplete:c,children:l}){let{fileSystemProvider:u}=S(),d=k({flowId:e,storageId:t,outputNodeId:r,metadata:i,onSuccess:a,onError:o,onProgress:s,onFlowComplete:c}),f=n(async e=>{if(!u?.pickDocument)throw Error(`File picker not available`);let t=await u.pickDocument();t.status===`success`&&d.setInput(e,t)},[u,d]),p=n(async()=>{if(!u?.pickDocument)throw Error(`File picker not available`);let e=await u.pickDocument();e.status===`success`&&await d.upload(e)},[u,d]),m={state:d.state,inputMetadata:d.inputMetadata,inputs:d.inputs,inputStates:d.inputStates,setInput:d.setInput,execute:d.execute,upload:d.upload,abort:d.abort,reset:d.reset,isActive:d.isActive,isUploadingFile:d.isUploadingFile,isProcessing:d.isProcessing,isDiscoveringInputs:d.isDiscoveringInputs,pickFileForInput:f,pickAndUpload:p},h={...m,submit:d.execute,cancel:d.abort};return v(q.Provider,{value:m,children:typeof l==`function`?l(h):l})}function we({children:e}){let t=J();return v(_,{children:e({inputs:t.inputMetadata??[],isLoading:t.isDiscoveringInputs})})}function Te({nodeId:e,children:t}){let n=J(),r=n.inputMetadata?.find(t=>t.nodeId===e);if(!r)return null;let i={nodeId:e,metadata:r,value:n.inputs[e],setValue:t=>n.setInput(e,t),state:n.inputStates.get(e),pickFile:async()=>{await n.pickFileForInput(e)}};return v(Y.Provider,{value:i,children:typeof t==`function`?t(i):t})}function Ee({children:e}){let t=X(),n=t.value,r=n?.status===`success`,i=r?n?.data?.name??null:null,a=r?n?.data?.size??null:null;return v(_,{children:e({value:t.value,hasFile:r,fileName:i,fileSize:a,progress:t.state?.progress??0,status:t.state?.status??`idle`,pickFile:t.pickFile,clear:()=>t.setValue(void 0)})})}function De({children:e}){let t=X(),n=t.value,r=n?.status===`success`,i=typeof t.value==`string`&&t.value.length>0;return v(_,{children:e({value:t.value,hasFile:r,isUrl:i,fileName:r?n?.data?.name??null:null,fileSize:r?n?.data?.size??null:null,fileUri:r?n?.data?.uri??null:null,clear:()=>t.setValue(void 0)})})}function Oe({children:e}){let t=J();return v(_,{children:e({progress:t.state.progress,bytesUploaded:t.state.bytesUploaded,totalBytes:t.state.totalBytes,status:t.state.status})})}function ke({children:e}){let t=J();return v(_,{children:e({status:t.state.status,currentNodeName:t.state.currentNodeName,currentNodeType:t.state.currentNodeType,error:t.state.error,jobId:t.state.jobId,flowStarted:t.state.flowStarted,flowOutputs:t.state.flowOutputs})})}function Ae({children:e}){let t=J();return v(_,{children:e({error:t.state.error,hasError:t.state.status===`error`,message:t.state.error?.message??null,reset:t.reset})})}function je({children:e,disabled:t}){let n=J(),r={submit:n.execute,isDisabled:t||n.isActive||Object.keys(n.inputs).length===0,isSubmitting:n.isActive};return v(_,{children:typeof e==`function`?e(r):e})}function Me({children:e}){let t=J(),n={cancel:t.abort,isDisabled:!t.isActive};return v(_,{children:typeof e==`function`?e(n):e})}function Ne({children:e}){let t=J(),n={reset:t.reset,isDisabled:t.isActive};return v(_,{children:typeof e==`function`?e(n):e})}function Pe({children:e}){let t=J();return v(_,{children:e({isUploading:t.isActive,progress:t.state.progress,status:t.state.status,pickAndUpload:t.pickAndUpload,abort:t.abort})})}const Fe=Object.assign(Ce,{Inputs:we,Input:Object.assign(Te,{FilePicker:Ee,Preview:De}),Progress:Oe,Status:ke,Error:Ae,Submit:je,Cancel:Me,Reset:Ne,QuickUpload:Pe});function Ie({options:t,label:n=`Select from Gallery`,children:r,onSuccess:i,onError:a,onCancel:o,showProgress:u=!0}){let{state:p,selectAndUpload:m}=M(t),h=async()=>{try{await m()}catch(e){e instanceof Error&&(e.message.includes(`cancelled`)||e.message.includes(`aborted`)?o?.():a?.(e))}},g=p.items.some(e=>e.status===`uploading`),_=p.items.length>0,b=_&&p.items.every(e=>e.status!==`uploading`&&e.status!==`idle`);return e.useEffect(()=>{if(b){let e=p.items.filter(e=>e.status===`success`).map(e=>e.result);e.length>0&&i?.(e)}},[b,p.items,i]),e.useEffect(()=>{let e=p.items.filter(e=>e.status===`error`)[0]?.error;e&&a?.(e)},[p.items,a]),y(f,{style:Z.container,children:[y(l,{style:[Z.button,g&&Z.buttonDisabled],onPress:h,disabled:g,children:[g&&v(s,{size:`small`,color:`#FFFFFF`,style:Z.spinner}),y(d,{style:Z.buttonText,children:[r||n,_&&` (${p.items.length})`]})]}),_&&y(f,{style:Z.statsContainer,children:[y(d,{style:Z.statsText,children:[`Progress: `,p.items.filter(e=>e.status===`success`).length,`/`,p.items.length,` uploaded`]}),y(d,{style:Z.statsText,children:[`Overall: `,p.totalProgress,`%`]})]}),u&&_&&v(c,{scrollEnabled:!1,data:p.items,renderItem:({item:e})=>v(f,{style:Z.itemContainer,children:v(U,{state:{status:e.status,progress:e.progress,bytesUploaded:e.bytesUploaded,totalBytes:e.totalBytes,error:e.error,result:e.result},label:e.file.data.name})},e.id),keyExtractor:e=>e.id,style:Z.listContainer,contentContainerStyle:Z.listContent,ItemSeparatorComponent:()=>v(f,{style:Z.separator})})]})}const Z=u.create({container:{gap:8},button:{flexDirection:`row`,alignItems:`center`,justifyContent:`center`,paddingVertical:12,paddingHorizontal:16,backgroundColor:`#34C759`,borderRadius:8,gap:8},buttonDisabled:{opacity:.6},buttonText:{fontSize:16,fontWeight:`600`,color:`#FFFFFF`},spinner:{marginRight:4},statsContainer:{paddingVertical:8,paddingHorizontal:12,backgroundColor:`#f5f5f5`,borderRadius:4,gap:4},statsText:{fontSize:12,color:`#666666`},listContainer:{maxHeight:400},listContent:{gap:8},itemContainer:{paddingHorizontal:0},separator:{height:4}});function Le({items:e,onRemove:t,onItemPress:n,showRemoveButton:r=!0}){return e.length===0?v(f,{style:Q.emptyContainer,children:v(d,{style:Q.emptyText,children:`No uploads`})}):y(f,{style:Q.container,children:[y(f,{style:Q.headerRow,children:[y(d,{style:Q.headerText,children:[`Uploads (`,e.length,`)`]}),y(d,{style:Q.headerSubtext,children:[e.filter(e=>e.progress.state===`success`).length,` complete`]})]}),v(c,{scrollEnabled:!1,data:e,renderItem:({item:e})=>y(l,{style:[Q.itemContainer,{borderLeftColor:Re(e.progress.state)}],onPress:()=>n?.(e),children:[y(f,{style:Q.itemContent,children:[e.file.status===`success`&&y(f,{style:Q.itemHeader,children:[v(d,{style:Q.fileName,numberOfLines:1,children:e.file.data.name}),v(d,{style:Q.fileSize,children:ze(e.file.data.size)})]}),e.file.status===`error`&&v(d,{style:Q.errorText,children:e.progress.error?.message}),v(f,{style:Q.progressWrapper,children:v(U,{state:{status:e.progress.state===`pending`?`idle`:e.progress.state===`cancelled`?`aborted`:e.progress.state,progress:e.progress.progress,bytesUploaded:e.progress.uploadedBytes,totalBytes:e.progress.totalBytes,error:e.progress.error||null,result:e.result??null}})})]}),r&&e.progress.state!==`uploading`&&e.progress.state!==`pending`&&v(l,{style:Q.removeButton,onPress:()=>t?.(e.id),hitSlop:{top:8,right:8,bottom:8,left:8},children:v(d,{style:Q.removeButtonText,children:`✕`})})]}),keyExtractor:e=>e.id,ItemSeparatorComponent:()=>v(f,{style:Q.separator}),contentContainerStyle:Q.listContent})]})}function Re(e){switch(e){case`success`:return`#34C759`;case`error`:case`cancelled`:return`#FF3B30`;case`uploading`:case`pending`:return`#007AFF`;default:return`#999999`}}function ze(e){if(e===0)return`0 B`;let t=1024,n=[`B`,`KB`,`MB`,`GB`],r=Math.floor(Math.log(e)/Math.log(t));return`${Math.round(e/t**r*10)/10} ${n[r]}`}const Q=u.create({container:{gap:8},headerRow:{flexDirection:`row`,justifyContent:`space-between`,alignItems:`center`,paddingHorizontal:12,paddingVertical:8,backgroundColor:`#f9f9f9`,borderRadius:4},headerText:{fontSize:16,fontWeight:`600`,color:`#333333`},errorText:{fontSize:14,color:`#FF3B30`},headerSubtext:{fontSize:14,color:`#666666`},listContent:{gap:8},itemContainer:{flexDirection:`row`,alignItems:`center`,paddingVertical:8,paddingHorizontal:12,borderLeftWidth:4,backgroundColor:`#f5f5f5`,borderRadius:4,gap:8},itemContent:{flex:1,gap:6},itemHeader:{flexDirection:`row`,justifyContent:`space-between`,alignItems:`center`},fileName:{fontSize:14,fontWeight:`500`,color:`#333333`,flex:1},fileSize:{fontSize:12,color:`#999999`,marginLeft:8},progressWrapper:{marginTop:2},removeButton:{width:32,height:32,justifyContent:`center`,alignItems:`center`,borderRadius:16,backgroundColor:`#FFE5E5`},removeButtonText:{fontSize:16,fontWeight:`600`,color:`#FF3B30`},separator:{height:4},emptyContainer:{paddingVertical:24,paddingHorizontal:12,backgroundColor:`#f5f5f5`,borderRadius:4,alignItems:`center`,justifyContent:`center`},emptyText:{fontSize:14,color:`#999999`,fontStyle:`italic`}}),Be=t(null);function $(){let e=r(Be);if(!e)throw Error(`useUploadContext must be used within an <Upload> component. Wrap your component tree with <Upload>`);return e}const Ve=t(null);function He(){let e=r(Ve);if(!e)throw Error(`useUploadItemContext must be used within an <Upload.Item> component. Wrap your component with <Upload.Item id="...">`);return e}function Ue({multiple:e=!1,maxConcurrent:t=3,autoStart:r=!0,metadata:i,onSuccess:a,onError:o,onComplete:s,children:c}){let{fileSystemProvider:l}=S(),u=j({maxConcurrent:t,metadata:i,onSuccess:a,onError:o}),d=n(()=>{let{items:e}=u.state;if(e.length>0&&e.every(e=>e.status===`success`||e.status===`error`||e.status===`aborted`)&&s){let t=e.filter(e=>e.status===`success`).length,n=e.filter(e=>e.status===`error`||e.status===`aborted`).length;s({successful:t,failed:n,total:e.length})}},[u.state,s]),f=n(t=>{e||u.clear();let n=u.addFiles(t);r&&n.length>0&&u.startUploads(n).then(d)},[e,r,u,d]),p=n(async()=>{if(!l?.pickDocument)throw Error(`File picker not available`);let e=await l.pickDocument();return e.status===`success`?(f([e]),e):null},[l,f]),m=n(async()=>{if(!l?.pickImage)throw Error(`Image picker not available`);let t=await l.pickImage({allowMultiple:e});return t.status===`success`?(f([t]),t):null},[l,f,e]),h=n(async()=>{if(!l?.pickCamera)throw Error(`Camera not available`);let e=await l.pickCamera();return e.status===`success`?(f([e]),e):null},[l,f]),g={mode:e?`multi`:`single`,state:u.state,autoStart:r,addFiles:u.addFiles,removeItem:u.removeItem,startAll:async e=>{await u.startUploads(e),d()},abortItem:u.abortItem,retryItem:u.retryItem,clear:u.clear,handleFilesReceived:f,pickFile:p,pickImage:m,takePhoto:h};return v(Be.Provider,{value:g,children:typeof c==`function`?c(g):c})}function We({children:e}){let t=$();return v(_,{children:e({pick:n(async()=>{await t.pickFile()},[t]),isLoading:t.state.activeCount>0})})}function Ge({children:e}){let t=$();return v(_,{children:e({pick:n(async()=>{await t.pickImage()},[t]),isLoading:t.state.activeCount>0})})}function Ke({children:e}){let t=$();return v(_,{children:e({take:n(async()=>{await t.takePhoto()},[t]),isLoading:t.state.activeCount>0})})}function qe({children:e}){let t=$();return v(_,{children:e({items:t.state.items,hasItems:t.state.items.length>0,isEmpty:t.state.items.length===0})})}function Je({id:e,children:t}){let n=$(),r=n.state.items.find(t=>t.id===e);if(!r)return null;let i={id:e,file:r.file,state:{status:r.status,progress:r.progress,bytesUploaded:r.bytesUploaded,totalBytes:r.totalBytes,error:r.error,result:r.result},abort:()=>n.abortItem(e),retry:()=>n.retryItem(e),remove:()=>n.removeItem(e)};return v(Ve.Provider,{value:i,children:typeof t==`function`?t(i):t})}function Ye({children:e}){let t=$();return v(_,{children:e({progress:t.state.totalProgress,bytesUploaded:t.state.totalUploaded,totalBytes:t.state.totalBytes,isUploading:t.state.activeCount>0})})}function Xe({children:e}){let{state:t}=$(),n=`idle`;return t.activeCount>0?n=`uploading`:t.items.length>0&&t.items.every(e=>e.status===`success`||e.status===`error`||e.status===`aborted`)&&(n=t.failedCount>0?`error`:`success`),v(_,{children:e({status:n,isIdle:n===`idle`,isUploading:t.activeCount>0,isSuccess:t.completedCount>0&&t.failedCount===0&&t.activeCount===0,isError:t.failedCount>0,total:t.items.length,successful:t.completedCount,failed:t.failedCount,active:t.activeCount})})}function Ze({children:e}){let t=$(),n=t.state.items.filter(e=>e.status===`error`||e.status===`aborted`);return v(_,{children:e({hasError:n.length>0,failedCount:n.length,failedItems:n,clear:t.clear})})}function Qe({children:e}){let t=$();return v(_,{children:e({cancel:n(()=>{for(let e of t.state.items.filter(e=>e.status===`uploading`))t.abortItem(e.id)},[t]),disabled:t.state.activeCount===0})})}function $e({children:e}){let t=$();return v(_,{children:e({retry:n(async()=>{let e=t.state.items.filter(e=>e.status===`error`||e.status===`aborted`);for(let n of e)await t.retryItem(n.id)},[t]),disabled:t.state.failedCount===0})})}function et({children:e}){return v(_,{children:e({reset:$().clear})})}function tt({children:e}){let t=$(),r=t.state.items.filter(e=>e.status===`idle`).length;return v(_,{children:e({start:n(async()=>{await t.startAll()},[t]),disabled:t.state.activeCount>0||r===0})})}const nt=Object.assign(Ue,{FilePicker:We,GalleryPicker:Ge,CameraPicker:Ke,Items:qe,Item:Je,Progress:Ye,Status:Xe,Error:Ze,Cancel:Qe,Retry:$e,Reset:et,StartAll:tt});export{xe as CameraUploadButton,Se as FileUploadButton,Fe as Flow,te as FlowManagerProvider,Ie as GalleryUploadButton,I as PermissionStatus,F as PermissionType,nt as Upload,Le as UploadList,U as UploadProgress,b as UploadistaContext,N as formatFileSize,ge as getDirectoryFromUri,oe as getFileExtension,V as getFileNameFromUri,se as getFileNameWithoutExtension,P as getMimeTypeFromFileName,be as getMimeTypeFromUri,pe as getPermissionStatus,fe as hasPermissions,_e as isContentUri,ue as isDocumentFile,ae as isFileSizeValid,ie as isFileTypeAllowed,ve as isFileUri,ce as isImageFile,le as isVideoFile,ye as normalizeUri,me as openAppSettings,he as pathToUri,L as requestCameraPermission,de as requestPermissions,R as requestPhotoLibraryPermission,z as requestStorageReadPermission,B as requestStorageWritePermission,H as uriToPath,T as useCameraUpload,E as useFileUpload,k as useFlow,J as useFlowContext,X as useFlowInputContext,O as useFlowManagerContext,M as useGalleryUpload,j as useMultiUpload,$ as useUploadContext,He as useUploadItemContext,re as useUploadMetrics,S as useUploadistaContext};
1
+ import e,{createContext as t,useCallback as n,useContext as r,useEffect as i,useRef as a,useState as o}from"react";import{ActivityIndicator as s,FlatList as c,Pressable as l,StyleSheet as u,Text as d,View as f}from"react-native";import{FlowManager as p,UploadManager as m}from"@uploadista/client-core";import{EventType as h}from"@uploadista/core/flow";import{UploadEventType as g}from"@uploadista/core/types";import{Fragment as _,jsx as v,jsxs as y}from"react/jsx-runtime";const b=t(void 0);function x(e,t){let n=e instanceof ArrayBuffer?new Uint8Array(e):e;return new Blob([n],t)}function S(){let e=r(b);if(!e)throw Error(`useUploadistaClient must be used within an UploadistaProvider`);return e}const C={status:`idle`,progress:0,bytesUploaded:0,totalBytes:null,error:null,result:null};function w(e={}){let{client:t,fileSystemProvider:r}=S(),[s,c]=o(C),l=a(null),u=a(null);return i(()=>(l.current=new m(async(e,n)=>{let i=e;if(i.status===`success`){let e=x(await r.readFile(i.data.uri),{type:i.data.mimeType||`application/octet-stream`});return t.upload(e,n)}return Promise.resolve({abort:()=>{}})},{onStateChange:c,onProgress:e.onProgress,onChunkComplete:e.onChunkComplete,onSuccess:e.onSuccess,onError:e.onError,onAbort:e.onAbort},{metadata:e.metadata,uploadLengthDeferred:e.uploadLengthDeferred,uploadSize:e.uploadSize,onShouldRetry:e.onShouldRetry}),()=>{l.current?.cleanup()}),[t,r,e]),{state:s,upload:n(async e=>{u.current=e,await l.current?.upload(e)},[]),abort:n(()=>{l.current?.abort()},[]),reset:n(()=>{l.current?.reset(),u.current=null},[]),retry:n(()=>{u.current&&l.current?.canRetry()&&l.current.retry()},[]),isUploading:s.status===`uploading`,canRetry:l.current?.canRetry()??!1,metrics:{getInsights:()=>t.getChunkingInsights(),exportMetrics:()=>t.exportMetrics(),getNetworkMetrics:()=>t.getNetworkMetrics(),getNetworkCondition:()=>t.getNetworkCondition(),resetMetrics:()=>t.resetMetrics()}}}function T(e){let{fileSystemProvider:t}=S(),r=w({metadata:e?.metadata,onSuccess:e?.onSuccess,onError:e?.onError,onProgress:e?.onProgress}),i=n(async()=>{try{let n=await t.pickCamera(e?.cameraOptions);await r.upload(n)}catch(e){console.error(`Camera capture error:`,e)}},[t,e?.cameraOptions,r]);return{...r,captureAndUpload:i}}function E(e){let{fileSystemProvider:t}=S(),r=w({metadata:e?.metadata,onSuccess:e?.onSuccess,onError:e?.onError,onProgress:e?.onProgress}),i=n(async()=>{try{let n=await t.pickDocument({allowedTypes:e?.allowedTypes});await r.upload(n)}catch(e){throw console.error(`File selection error:`,e),e}},[t,e?.allowedTypes,r]);return{...r,pickAndUpload:i}}function D(e){let t=e;return t.eventType===h.FlowStart||t.eventType===h.FlowEnd||t.eventType===h.FlowError||t.eventType===h.NodeStart||t.eventType===h.NodeEnd||t.eventType===h.NodePause||t.eventType===h.NodeResume||t.eventType===h.NodeError}const O=t(void 0);function ee({children:e}){let{client:t,subscribeToEvents:r}=S(),o=a(new Map);i(()=>r(e=>{if(D(e)){for(let t of o.current.values())t.manager.handleFlowEvent(e);return}if(`type`in e&&e.type===g.UPLOAD_PROGRESS&&`data`in e)for(let t of o.current.values())t.manager.handleUploadProgress(e.data.id,e.data.progress,e.data.total)}),[r]);let s=n((e,n,r)=>{let i=o.current.get(e);if(i)return i.refCount++,i.manager;let a=new p(t.uploadWithFlow,n,r,t.multiInputFlowUpload);return o.current.set(e,{manager:a,refCount:1,flowId:e}),a},[t]),c=n(e=>{let t=o.current.get(e);t&&(t.refCount--,t.refCount<=0&&(t.manager.cleanup(),o.current.delete(e)))},[]);return v(O.Provider,{value:{getManager:s,releaseManager:c},children:e})}function k(){let e=r(O);if(e===void 0)throw Error(`useFlowManagerContext must be used within a FlowManagerProvider. Make sure to wrap your component tree with <FlowManagerProvider>.`);return e}const te={status:`idle`,progress:0,bytesUploaded:0,totalBytes:null,error:null,jobId:null,flowStarted:!1,currentNodeName:null,currentNodeType:null,flowOutputs:null,pausedAtNodeId:null};function A(e){let{client:t,fileSystemProvider:r}=S(),{getManager:s,releaseManager:c}=k(),[l,u]=o(te),[d,f]=o(null),[p,m]=o(!1),[h,g]=o({}),[_,v]=o(new Map),y=a(null),b=a(null),C=a(e);i(()=>{C.current=e}),i(()=>{(async()=>{m(!0);try{let{flow:n}=await t.getFlow(e.flowId);f(n.nodes.filter(e=>e.type===`input`).map(e=>({nodeId:e.id,nodeName:e.name,nodeDescription:e.description,inputTypeId:e.inputTypeId,required:!0})))}catch(e){console.error(`Failed to discover flow inputs:`,e)}finally{m(!1)}})()},[t,e.flowId]),i(()=>{let t=e.flowId;y.current=s(t,{onStateChange:e=>{u(e)},onProgress:(e,t,n)=>{if(C.current.onProgress){let e=n?Math.round(t/n*100):0;C.current.onProgress(e,t,n)}},onChunkComplete:(e,t,n)=>{C.current.onChunkComplete?.(e,t,n)},onFlowComplete:e=>{C.current.onFlowComplete?.(e)},onSuccess:e=>{C.current.onSuccess?.(e)},onError:e=>{C.current.onError?.(e)},onAbort:()=>{}},{flowConfig:{flowId:e.flowId,storageId:e.storageId,outputNodeId:e.outputNodeId,metadata:e.metadata},onChunkComplete:e.onChunkComplete,onSuccess:e.onSuccess,onError:e.onError});let n=setInterval(()=>{if(y.current){let e=y.current.getInputStates();e.size>0&&v(new Map(e))}},100);return()=>{clearInterval(n),c(t),y.current=null}},[e.flowId,e.storageId,e.outputNodeId,s,c]);let w=n((e,t)=>{g(n=>({...n,[e]:t}))},[]),T=n(async e=>{if(e.status===`cancelled`)return null;if(e.status===`error`)throw e.error;return x(await r.readFile(e.data.uri),{type:e.data.mimeType||`application/octet-stream`})},[r]),E=n(async()=>{if(!y.current)throw Error(`FlowManager not initialized`);if(Object.keys(h).length===0)throw Error(`No inputs provided. Use setInput() to provide inputs before calling execute()`);b.current={...h};let e={};for(let[t,n]of Object.entries(h))if(n&&typeof n==`object`&&`status`in n&&(n.status===`success`||n.status===`cancelled`||n.status===`error`)){let r=await T(n);r&&(e[t]=r)}else e[t]=n;if(Object.keys(e).length===0)throw Error(`No valid inputs after processing. All files may have been cancelled.`);await y.current.executeFlow(e)},[h,T]),D=n(async t=>{if(t.status!==`cancelled`){if(t.status===`error`){e.onError?.(t.error);return}if(!y.current)throw Error(`FlowManager not initialized`);if(d&&d.length>0){let e=d[0];e&&(b.current={[e.nodeId]:t})}try{let e=x(await r.readFile(t.data.uri),{type:t.data.mimeType||`application/octet-stream`});if(d&&d.length>0){let n=d[0];if(!n)throw Error(`No input nodes found`);g({[n.nodeId]:t}),await y.current.executeFlow({[n.nodeId]:e})}else await y.current.upload(e)}catch(t){e.onError?.(t)}}},[d,r,e]),O=n(async()=>{await y.current?.abort()},[]),ee=n(async()=>{await y.current?.pause()},[]),A=n(async()=>{await y.current?.resume()},[]),j=n(()=>{y.current?.reset(),g({}),v(new Map),b.current=null},[]),M=n(()=>{b.current&&(l.status===`error`||l.status===`aborted`)&&(g(b.current),E())},[E,l.status]),N=l.status===`uploading`||l.status===`processing`,P=l.status===`uploading`,F=l.status===`processing`,I=l.status===`paused`;return{state:l,inputMetadata:d,inputStates:_,inputs:h,setInput:w,execute:E,upload:D,abort:O,pause:ee,resume:A,reset:j,retry:M,isActive:N,isUploadingFile:P,isProcessing:F,isDiscoveringInputs:p,canRetry:(l.status===`error`||l.status===`aborted`)&&b.current!==null,isPaused:I}}const j={items:[],totalProgress:0,totalUploaded:0,totalBytes:0,activeCount:0,completedCount:0,failedCount:0};function M(e={}){let{client:t}=S(),[r,i]=o(j),s=a(new Map),c=a(0),l=a([]),u=n(()=>`upload-${Date.now()}-${c.current++}`,[]),d=n(e=>{let t=e.reduce((e,t)=>e+t.totalBytes,0),n=e.reduce((e,t)=>e+t.bytesUploaded,0),r=t>0?Math.round(n/t*100):0,a=e.filter(e=>e.status===`uploading`).length,o=e.filter(e=>e.status===`success`).length,s=e.filter(e=>e.status===`error`).length;l.current=e,i(i=>({...i,items:e,totalProgress:r,totalUploaded:n,totalBytes:t,activeCount:a,completedCount:o,failedCount:s}))},[]),f=n(e=>{let t=e.filter(e=>e.status===`success`).map(e=>({id:u(),file:e,status:`idle`,progress:0,bytesUploaded:0,totalBytes:e.data.size,error:null,result:null})),n=[...l.current,...t];return l.current=n,i(e=>{let t=n.reduce((e,t)=>e+t.totalBytes,0);return{...e,items:n,totalBytes:t}}),t.map(e=>e.id)},[u]),p=n(async n=>{try{console.log(`Uploading item:`,n.file.data.name),d(l.current.map(e=>e.id===n.id?{...e,status:`uploading`}:e));let r=await(await fetch(n.file.data.uri)).blob(),i=r;if(n.file.data.mimeType){let e={type:n.file.data.mimeType,lastModified:Date.now()};i=new Blob([r],e)}console.log(`Uploading input:`,i);let a=await t.upload(i,{metadata:e.metadata,onProgress:(e,t,r)=>{let i=r?Math.round(t/r*100):0;d(l.current.map(e=>e.id===n.id?{...e,progress:i,bytesUploaded:t,totalBytes:r||e.totalBytes}:e))},onSuccess:t=>{d(l.current.map(e=>e.id===n.id?{...e,status:`success`,progress:100,result:t,bytesUploaded:t.size||e.totalBytes}:e)),e.onSuccess?.(t),s.current.delete(n.id)},onError:t=>{d(l.current.map(e=>e.id===n.id?{...e,status:`error`,error:t}:e)),e.onError?.(t),s.current.delete(n.id)}});s.current.set(n.id,a)}catch(t){console.error(`Error uploading item:`,t),d(l.current.map(e=>e.id===n.id?{...e,status:`error`,error:t}:e)),e.onError?.(t),s.current.delete(n.id)}},[t,e,d]),m=n(async t=>{let n=e.maxConcurrent||3,r=t?l.current.filter(e=>t.includes(e.id)&&e.status===`idle`):l.current.filter(e=>e.status===`idle`);console.log(`Items to upload:`,r.length,r);for(let e=0;e<r.length;e+=n){let t=r.slice(e,e+n);await Promise.all(t.map(e=>p(e)))}},[e.maxConcurrent,p]),h=n(e=>{let t=s.current.get(e);t&&(t.abort(),s.current.delete(e)),d(l.current.filter(t=>t.id!==e))},[d]),g=n(e=>{let t=s.current.get(e);t&&(t.abort(),s.current.delete(e)),d(l.current.map(t=>t.id===e?{...t,status:`aborted`}:t))},[d]),_=n(()=>{s.current.forEach(e=>{e.abort()}),s.current.clear(),l.current=[],i(j)},[]);return{state:r,addFiles:f,startUploads:m,removeItem:h,abortItem:g,retryItem:n(async e=>{let t=l.current.find(t=>t.id===e);if(t&&(t.status===`error`||t.status===`aborted`)){d(l.current.map(t=>t.id===e?{...t,status:`idle`,progress:0,bytesUploaded:0,error:null}:t));let t=l.current.find(t=>t.id===e);t&&await p(t)}},[p,d]),clear:_}}function N(e){let{fileSystemProvider:t}=S(),r=M({maxConcurrent:3,metadata:e?.metadata,onSuccess:e?.onSuccess,onError:e?.onError}),i=n(async()=>{let n;if(n=e?.mediaType===`video`?await t.pickVideo({allowMultiple:e?.allowMultiple??!0}):(e?.mediaType,await t.pickImage({allowMultiple:e?.allowMultiple??!0})),n.status===`cancelled`)return[];if(n.status===`error`)return console.error(`Gallery selection error:`,n.error),e?.onError?.(n.error),[];let i=r.addFiles([n]);return await r.startUploads(i),i},[t,e?.allowMultiple,e?.mediaType,e?.onError,r]);return{...r,selectAndUpload:i}}function P(){let e=a(null),t=a(0),r=a(0),[i,s]=o({totalBytes:0,durationMs:0,avgSpeed:0,peakSpeed:0,retries:0});return{metrics:i,start:n(()=>{e.current=Date.now(),t.current=0,r.current=0},[]),update:n((t,n,i=0)=>{if(!e.current)return;let a=Date.now()-e.current,o=a>0?t/a*1e3:0;o>r.current&&(r.current=o),s({totalBytes:t,durationMs:a,avgSpeed:a>0?t/a*1e3:0,peakSpeed:r.current,retries:i})},[]),end:n(()=>{let t=i;return e.current=null,t},[i]),reset:n(()=>{e.current=null,t.current=0,r.current=0,s({totalBytes:0,durationMs:0,avgSpeed:0,peakSpeed:0,retries:0})},[])}}function F(e){if(e===0)return`0 Bytes`;let t=1024,n=[`Bytes`,`KB`,`MB`,`GB`],r=Math.floor(Math.log(e)/Math.log(t));return`${Math.round(e/t**r*100)/100} ${n[r]}`}function I(e){return{".jpg":`image/jpeg`,".jpeg":`image/jpeg`,".png":`image/png`,".gif":`image/gif`,".bmp":`image/bmp`,".webp":`image/webp`,".svg":`image/svg+xml`,".mp4":`video/mp4`,".avi":`video/x-msvideo`,".mov":`video/quicktime`,".wmv":`video/x-ms-wmv`,".flv":`video/x-flv`,".mkv":`video/x-matroska`,".webm":`video/webm`,".mp3":`audio/mpeg`,".wav":`audio/wav`,".aac":`audio/aac`,".flac":`audio/flac`,".m4a":`audio/mp4`,".pdf":`application/pdf`,".doc":`application/msword`,".docx":`application/vnd.openxmlformats-officedocument.wordprocessingml.document`,".xls":`application/vnd.ms-excel`,".xlsx":`application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`,".ppt":`application/vnd.ms-powerpoint`,".pptx":`application/vnd.openxmlformats-officedocument.presentationml.presentation`,".txt":`text/plain`,".csv":`text/csv`,".json":`application/json`,".xml":`application/xml`,".zip":`application/zip`}[e.toLowerCase().slice(e.lastIndexOf(`.`))]||`application/octet-stream`}function ne(e,t){if(!t||t.length===0)return!0;let n=I(e);return t.some(e=>{if(e.endsWith(`/*`)){let[t]=e.split(`/`);return n.startsWith(`${t}/`)}return e===n})}function re(e,t,n){return!(t!==void 0&&e>t||n!==void 0&&e<n)}function ie(e){let t=e.lastIndexOf(`.`);return t===-1?``:e.slice(t+1).toLowerCase()}function ae(e){let t=e.lastIndexOf(`.`);return t===-1?e:e.slice(0,t)}function oe(e){let t=[`.jpg`,`.jpeg`,`.png`,`.gif`,`.bmp`,`.webp`,`.svg`],n=e.toLowerCase().slice(e.lastIndexOf(`.`));return t.includes(n)}function se(e){let t=[`.mp4`,`.avi`,`.mov`,`.wmv`,`.flv`,`.mkv`,`.webm`],n=e.toLowerCase().slice(e.lastIndexOf(`.`));return t.includes(n)}function ce(e){let t=[`.pdf`,`.doc`,`.docx`,`.xls`,`.xlsx`,`.ppt`,`.pptx`,`.txt`,`.csv`],n=e.toLowerCase().slice(e.lastIndexOf(`.`));return t.includes(n)}let L=function(e){return e.CAMERA=`CAMERA`,e.PHOTO_LIBRARY=`PHOTO_LIBRARY`,e.WRITE_STORAGE=`WRITE_STORAGE`,e.READ_STORAGE=`READ_STORAGE`,e}({}),R=function(e){return e.GRANTED=`granted`,e.DENIED=`denied`,e.NOT_DETERMINED=`not_determined`,e.RESTRICTED=`restricted`,e}({});async function z(){try{return console.log(`Camera permission requested (handled by file system provider)`),!0}catch(e){return console.error(`Failed to request camera permission:`,e),!1}}async function B(){try{return console.log(`Photo library permission requested (handled by file system provider)`),!0}catch(e){return console.error(`Failed to request photo library permission:`,e),!1}}async function V(){try{return console.log(`Storage read permission requested (handled by file system provider)`),!0}catch(e){return console.error(`Failed to request storage read permission:`,e),!1}}async function H(){try{return console.log(`Storage write permission requested (handled by file system provider)`),!0}catch(e){return console.error(`Failed to request storage write permission:`,e),!1}}async function le(e){try{return(await Promise.all(e.map(async e=>{switch(e){case L.CAMERA:return z();case L.PHOTO_LIBRARY:return B();case L.READ_STORAGE:return V();case L.WRITE_STORAGE:return H();default:return!1}}))).every(e=>e)}catch(e){return console.error(`Failed to request permissions:`,e),!1}}async function ue(e){try{return!0}catch(e){return console.error(`Failed to check permissions:`,e),!1}}async function de(e){try{return R.GRANTED}catch(e){return console.error(`Failed to get permission status:`,e),R.DENIED}}function fe(){try{console.log(`Opening app settings (requires react-native-app-settings or platform implementation)`)}catch(e){console.error(`Failed to open app settings:`,e)}}function pe(e){try{if(e.startsWith(`file://`))return e.replace(`file://`,``).split(`/`).pop()||`file`;if(e.startsWith(`content://`)){let t=e.split(`/`);return t[t.length-1]||`file`}let t=e.split(`/`);return t[t.length-1]||`file`}catch{return`file`}}function me(e){return e.startsWith(`file://`)||e.startsWith(`content://`)?e:`file://${e}`}function he(e){return e.startsWith(`file://`)?e.replace(`file://`,``):(e.startsWith(`content://`),e)}function ge(e){try{let t=he(e).split(`/`);return t.pop(),t.join(`/`)}catch{return``}}function _e(e){return e.startsWith(`content://`)}function ve(e){return e.startsWith(`file://`)}function ye(e){return e.replace(/([^:]\/)\/+/g,`$1`)}function be(e){let t=pe(e);return{".jpg":`image/jpeg`,".jpeg":`image/jpeg`,".png":`image/png`,".gif":`image/gif`,".bmp":`image/bmp`,".webp":`image/webp`,".mp4":`video/mp4`,".mov":`video/quicktime`,".avi":`video/x-msvideo`,".mp3":`audio/mpeg`,".wav":`audio/wav`,".aac":`audio/aac`,".pdf":`application/pdf`,".txt":`text/plain`,".json":`application/json`}[t.toLowerCase().slice(t.lastIndexOf(`.`))]||`application/octet-stream`}function U({state:e,label:t}){let n=()=>{switch(e.status){case`uploading`:return`#007AFF`;case`success`:return`#34C759`;case`error`:case`aborted`:return`#FF3B30`;default:return`#999999`}};return y(f,{style:[W.wrapper,{borderLeftColor:n()}],children:[e.status===`uploading`&&v(s,{size:`small`,color:n(),style:W.spinner}),(()=>{switch(e.status){case`idle`:return v(f,{style:W.container,children:v(d,{style:W.label,children:t||`Ready to upload`})});case`uploading`:return y(f,{style:W.container,children:[y(f,{style:W.headerRow,children:[v(d,{style:W.label,children:t||`Uploading`}),y(d,{style:W.percentage,children:[e.progress,`%`]})]}),v(f,{style:W.progressBarContainer,children:v(f,{style:[W.progressBar,{width:`${e.progress}%`,backgroundColor:n()}]})}),v(f,{style:W.detailsRow,children:y(d,{style:W.detail,children:[F(e.bytesUploaded),` /`,` `,F(e.totalBytes||0)]})})]});case`success`:return y(f,{style:W.container,children:[y(f,{style:W.headerRow,children:[v(d,{style:[W.label,{color:n()}],children:t||`Upload complete`}),v(d,{style:[W.percentage,{color:n()}],children:`✓`})]}),v(d,{style:[W.detail,{color:n()}],children:F(e.totalBytes||0)})]});case`error`:return y(f,{style:W.container,children:[y(f,{style:W.headerRow,children:[v(d,{style:[W.label,{color:n()}],children:t||`Upload failed`}),v(d,{style:[W.percentage,{color:n()}],children:`✕`})]}),e.error&&v(d,{style:[W.detail,{color:n()}],children:e.error.message})]});case`aborted`:return v(f,{style:W.container,children:v(d,{style:[W.label,{color:n()}],children:t||`Upload cancelled`})});default:return null}})()]})}const W=u.create({wrapper:{flexDirection:`row`,alignItems:`flex-start`,paddingVertical:8,paddingHorizontal:12,borderLeftWidth:4,backgroundColor:`#f5f5f5`,borderRadius:4,gap:8},spinner:{marginTop:4},container:{flex:1,gap:4},headerRow:{flexDirection:`row`,justifyContent:`space-between`,alignItems:`center`},label:{fontSize:14,fontWeight:`600`,color:`#333333`,flex:1},percentage:{fontSize:14,fontWeight:`600`,color:`#007AFF`,minWidth:36,textAlign:`right`},progressBarContainer:{height:4,backgroundColor:`#e0e0e0`,borderRadius:2,overflow:`hidden`},progressBar:{height:`100%`,borderRadius:2},detailsRow:{flexDirection:`row`,justifyContent:`space-between`,alignItems:`center`},detail:{fontSize:12,color:`#666666`}});function xe({options:e,label:t=`Take Photo`,children:n,onSuccess:r,onError:a,onCancel:o,showProgress:c=!0}){let{state:u,captureAndUpload:p}=T(e),m=async()=>{try{await p()}catch(e){e instanceof Error&&(e.message.includes(`cancelled`)||e.message.includes(`aborted`)?o?.():a?.(e))}},h=u.status===`uploading`,g=h||u.status===`aborted`;return i(()=>{u.status===`success`&&u.result&&r?.(u.result)},[u.status,u.result,r]),i(()=>{u.status===`error`&&u.error&&a?.(u.error)},[u.status,u.error,a]),y(f,{style:G.container,children:[y(l,{style:[G.button,g&&G.buttonDisabled],onPress:m,disabled:g,children:[h&&v(s,{size:`small`,color:`#FFFFFF`,style:G.spinner}),v(d,{style:G.buttonText,children:n||t})]}),c&&u.status!==`idle`&&v(f,{style:G.progressContainer,children:v(U,{state:u,label:`Camera upload`})})]})}const G=u.create({container:{gap:8},button:{flexDirection:`row`,alignItems:`center`,justifyContent:`center`,paddingVertical:12,paddingHorizontal:16,backgroundColor:`#007AFF`,borderRadius:8,gap:8},buttonDisabled:{opacity:.6},buttonText:{fontSize:16,fontWeight:`600`,color:`#FFFFFF`},spinner:{marginRight:4},progressContainer:{marginTop:4}});function Se({options:e,label:t=`Choose File`,children:n,onSuccess:r,onError:a,onCancel:o,showProgress:c=!0}){let{state:u,pickAndUpload:p}=E(e),m=async()=>{try{await p()}catch(e){e instanceof Error&&(e.message.includes(`cancelled`)||e.message.includes(`aborted`)?o?.():a?.(e))}},h=u.status===`uploading`,g=h||u.status===`aborted`;return i(()=>{u.status===`success`&&u.result&&r?.(u.result)},[u.status,u.result,r]),i(()=>{u.status===`error`&&u.error&&a?.(u.error)},[u.status,u.error,a]),y(f,{style:K.container,children:[y(l,{style:[K.button,g&&K.buttonDisabled],onPress:m,disabled:g,children:[h&&v(s,{size:`small`,color:`#FFFFFF`,style:K.spinner}),v(d,{style:K.buttonText,children:n||t})]}),c&&u.status!==`idle`&&v(f,{style:K.progressContainer,children:v(U,{state:u,label:`File upload`})})]})}const K=u.create({container:{gap:8},button:{flexDirection:`row`,alignItems:`center`,justifyContent:`center`,paddingVertical:12,paddingHorizontal:16,backgroundColor:`#FF9500`,borderRadius:8,gap:8},buttonDisabled:{opacity:.6},buttonText:{fontSize:16,fontWeight:`600`,color:`#FFFFFF`},spinner:{marginRight:4},progressContainer:{marginTop:4}}),q=t(null);function J(){let e=r(q);if(!e)throw Error(`useFlowContext must be used within a <Flow> component. Wrap your component tree with <Flow flowId="..." storageId="...">`);return e}const Y=t(null);function X(){let e=r(Y);if(!e)throw Error(`useFlowInputContext must be used within a <Flow.Input> component. Wrap your component with <Flow.Input nodeId="...">`);return e}function Ce({flowId:e,storageId:t,outputNodeId:r,metadata:i,onSuccess:a,onError:o,onProgress:s,onFlowComplete:c,children:l}){let{fileSystemProvider:u}=S(),d=A({flowId:e,storageId:t,outputNodeId:r,metadata:i,onSuccess:a,onError:o,onProgress:s,onFlowComplete:c}),f=n(async e=>{if(!u?.pickDocument)throw Error(`File picker not available`);let t=await u.pickDocument();t.status===`success`&&d.setInput(e,t)},[u,d]),p=n(async()=>{if(!u?.pickDocument)throw Error(`File picker not available`);let e=await u.pickDocument();e.status===`success`&&await d.upload(e)},[u,d]),m={state:d.state,inputMetadata:d.inputMetadata,inputs:d.inputs,inputStates:d.inputStates,setInput:d.setInput,execute:d.execute,upload:d.upload,abort:d.abort,pause:d.pause,reset:d.reset,isActive:d.isActive,isUploadingFile:d.isUploadingFile,isProcessing:d.isProcessing,isDiscoveringInputs:d.isDiscoveringInputs,isPaused:d.isPaused,pickFileForInput:f,pickAndUpload:p},h={...m,submit:d.execute,cancel:d.abort};return v(q.Provider,{value:m,children:typeof l==`function`?l(h):l})}function we({children:e}){let t=J();return v(_,{children:e({inputs:t.inputMetadata??[],isLoading:t.isDiscoveringInputs})})}function Te({nodeId:e,children:t}){let n=J(),r=n.inputMetadata?.find(t=>t.nodeId===e);if(!r)return null;let i={nodeId:e,metadata:r,value:n.inputs[e],setValue:t=>n.setInput(e,t),state:n.inputStates.get(e),pickFile:async()=>{await n.pickFileForInput(e)}};return v(Y.Provider,{value:i,children:typeof t==`function`?t(i):t})}function Ee({children:e}){let t=X(),n=t.value,r=n?.status===`success`,i=r?n?.data?.name??null:null,a=r?n?.data?.size??null:null;return v(_,{children:e({value:t.value,hasFile:r,fileName:i,fileSize:a,progress:t.state?.progress??0,status:t.state?.status??`idle`,pickFile:t.pickFile,clear:()=>t.setValue(void 0)})})}function De({children:e}){let t=X(),n=t.value,r=n?.status===`success`,i=typeof t.value==`string`&&t.value.length>0;return v(_,{children:e({value:t.value,hasFile:r,isUrl:i,fileName:r?n?.data?.name??null:null,fileSize:r?n?.data?.size??null:null,fileUri:r?n?.data?.uri??null:null,clear:()=>t.setValue(void 0)})})}function Oe({children:e}){let t=J();return v(_,{children:e({progress:t.state.progress,bytesUploaded:t.state.bytesUploaded,totalBytes:t.state.totalBytes,status:t.state.status})})}function ke({children:e}){let t=J();return v(_,{children:e({status:t.state.status,currentNodeName:t.state.currentNodeName,currentNodeType:t.state.currentNodeType,error:t.state.error,jobId:t.state.jobId,flowStarted:t.state.flowStarted,flowOutputs:t.state.flowOutputs})})}function Ae({children:e}){let t=J();return v(_,{children:e({error:t.state.error,hasError:t.state.status===`error`,message:t.state.error?.message??null,reset:t.reset})})}function je({children:e,disabled:t}){let n=J(),r={submit:n.execute,isDisabled:t||n.isActive||Object.keys(n.inputs).length===0,isSubmitting:n.isActive};return v(_,{children:typeof e==`function`?e(r):e})}function Me({children:e}){let t=J(),n={cancel:t.abort,isDisabled:!t.isActive};return v(_,{children:typeof e==`function`?e(n):e})}function Ne({children:e}){let t=J(),n={reset:t.reset,isDisabled:t.isActive};return v(_,{children:typeof e==`function`?e(n):e})}function Pe({children:e}){let t=J(),n={pause:t.pause,isDisabled:!t.isActive||t.isPaused,isPaused:t.isPaused};return v(_,{children:typeof e==`function`?e(n):e})}function Fe({children:e}){let t=J();return v(_,{children:e({isUploading:t.isActive,progress:t.state.progress,status:t.state.status,pickAndUpload:t.pickAndUpload,abort:t.abort})})}const Ie=Object.assign(Ce,{Inputs:we,Input:Object.assign(Te,{FilePicker:Ee,Preview:De}),Progress:Oe,Status:ke,Error:Ae,Submit:je,Cancel:Me,Pause:Pe,Reset:Ne,QuickUpload:Fe});function Le({options:t,label:n=`Select from Gallery`,children:r,onSuccess:i,onError:a,onCancel:o,showProgress:u=!0}){let{state:p,selectAndUpload:m}=N(t),h=async()=>{try{await m()}catch(e){e instanceof Error&&(e.message.includes(`cancelled`)||e.message.includes(`aborted`)?o?.():a?.(e))}},g=p.items.some(e=>e.status===`uploading`),_=p.items.length>0,b=_&&p.items.every(e=>e.status!==`uploading`&&e.status!==`idle`);return e.useEffect(()=>{if(b){let e=p.items.filter(e=>e.status===`success`).map(e=>e.result);e.length>0&&i?.(e)}},[b,p.items,i]),e.useEffect(()=>{let e=p.items.filter(e=>e.status===`error`)[0]?.error;e&&a?.(e)},[p.items,a]),y(f,{style:Z.container,children:[y(l,{style:[Z.button,g&&Z.buttonDisabled],onPress:h,disabled:g,children:[g&&v(s,{size:`small`,color:`#FFFFFF`,style:Z.spinner}),y(d,{style:Z.buttonText,children:[r||n,_&&` (${p.items.length})`]})]}),_&&y(f,{style:Z.statsContainer,children:[y(d,{style:Z.statsText,children:[`Progress: `,p.items.filter(e=>e.status===`success`).length,`/`,p.items.length,` uploaded`]}),y(d,{style:Z.statsText,children:[`Overall: `,p.totalProgress,`%`]})]}),u&&_&&v(c,{scrollEnabled:!1,data:p.items,renderItem:({item:e})=>v(f,{style:Z.itemContainer,children:v(U,{state:{status:e.status,progress:e.progress,bytesUploaded:e.bytesUploaded,totalBytes:e.totalBytes,error:e.error,result:e.result},label:e.file.data.name})},e.id),keyExtractor:e=>e.id,style:Z.listContainer,contentContainerStyle:Z.listContent,ItemSeparatorComponent:()=>v(f,{style:Z.separator})})]})}const Z=u.create({container:{gap:8},button:{flexDirection:`row`,alignItems:`center`,justifyContent:`center`,paddingVertical:12,paddingHorizontal:16,backgroundColor:`#34C759`,borderRadius:8,gap:8},buttonDisabled:{opacity:.6},buttonText:{fontSize:16,fontWeight:`600`,color:`#FFFFFF`},spinner:{marginRight:4},statsContainer:{paddingVertical:8,paddingHorizontal:12,backgroundColor:`#f5f5f5`,borderRadius:4,gap:4},statsText:{fontSize:12,color:`#666666`},listContainer:{maxHeight:400},listContent:{gap:8},itemContainer:{paddingHorizontal:0},separator:{height:4}});function Re({items:e,onRemove:t,onItemPress:n,showRemoveButton:r=!0}){return e.length===0?v(f,{style:Q.emptyContainer,children:v(d,{style:Q.emptyText,children:`No uploads`})}):y(f,{style:Q.container,children:[y(f,{style:Q.headerRow,children:[y(d,{style:Q.headerText,children:[`Uploads (`,e.length,`)`]}),y(d,{style:Q.headerSubtext,children:[e.filter(e=>e.progress.state===`success`).length,` complete`]})]}),v(c,{scrollEnabled:!1,data:e,renderItem:({item:e})=>y(l,{style:[Q.itemContainer,{borderLeftColor:ze(e.progress.state)}],onPress:()=>n?.(e),children:[y(f,{style:Q.itemContent,children:[e.file.status===`success`&&y(f,{style:Q.itemHeader,children:[v(d,{style:Q.fileName,numberOfLines:1,children:e.file.data.name}),v(d,{style:Q.fileSize,children:Be(e.file.data.size)})]}),e.file.status===`error`&&v(d,{style:Q.errorText,children:e.progress.error?.message}),v(f,{style:Q.progressWrapper,children:v(U,{state:{status:e.progress.state===`pending`?`idle`:e.progress.state===`cancelled`?`aborted`:e.progress.state,progress:e.progress.progress,bytesUploaded:e.progress.uploadedBytes,totalBytes:e.progress.totalBytes,error:e.progress.error||null,result:e.result??null}})})]}),r&&e.progress.state!==`uploading`&&e.progress.state!==`pending`&&v(l,{style:Q.removeButton,onPress:()=>t?.(e.id),hitSlop:{top:8,right:8,bottom:8,left:8},children:v(d,{style:Q.removeButtonText,children:`✕`})})]}),keyExtractor:e=>e.id,ItemSeparatorComponent:()=>v(f,{style:Q.separator}),contentContainerStyle:Q.listContent})]})}function ze(e){switch(e){case`success`:return`#34C759`;case`error`:case`cancelled`:return`#FF3B30`;case`uploading`:case`pending`:return`#007AFF`;default:return`#999999`}}function Be(e){if(e===0)return`0 B`;let t=1024,n=[`B`,`KB`,`MB`,`GB`],r=Math.floor(Math.log(e)/Math.log(t));return`${Math.round(e/t**r*10)/10} ${n[r]}`}const Q=u.create({container:{gap:8},headerRow:{flexDirection:`row`,justifyContent:`space-between`,alignItems:`center`,paddingHorizontal:12,paddingVertical:8,backgroundColor:`#f9f9f9`,borderRadius:4},headerText:{fontSize:16,fontWeight:`600`,color:`#333333`},errorText:{fontSize:14,color:`#FF3B30`},headerSubtext:{fontSize:14,color:`#666666`},listContent:{gap:8},itemContainer:{flexDirection:`row`,alignItems:`center`,paddingVertical:8,paddingHorizontal:12,borderLeftWidth:4,backgroundColor:`#f5f5f5`,borderRadius:4,gap:8},itemContent:{flex:1,gap:6},itemHeader:{flexDirection:`row`,justifyContent:`space-between`,alignItems:`center`},fileName:{fontSize:14,fontWeight:`500`,color:`#333333`,flex:1},fileSize:{fontSize:12,color:`#999999`,marginLeft:8},progressWrapper:{marginTop:2},removeButton:{width:32,height:32,justifyContent:`center`,alignItems:`center`,borderRadius:16,backgroundColor:`#FFE5E5`},removeButtonText:{fontSize:16,fontWeight:`600`,color:`#FF3B30`},separator:{height:4},emptyContainer:{paddingVertical:24,paddingHorizontal:12,backgroundColor:`#f5f5f5`,borderRadius:4,alignItems:`center`,justifyContent:`center`},emptyText:{fontSize:14,color:`#999999`,fontStyle:`italic`}}),Ve=t(null);function $(){let e=r(Ve);if(!e)throw Error(`useUploadContext must be used within an <Upload> component. Wrap your component tree with <Upload>`);return e}const He=t(null);function Ue(){let e=r(He);if(!e)throw Error(`useUploadItemContext must be used within an <Upload.Item> component. Wrap your component with <Upload.Item id="...">`);return e}function We({multiple:e=!1,maxConcurrent:t=3,autoStart:r=!0,metadata:i,onSuccess:a,onError:o,onComplete:s,children:c}){let{fileSystemProvider:l}=S(),u=M({maxConcurrent:t,metadata:i,onSuccess:a,onError:o}),d=n(()=>{let{items:e}=u.state;if(e.length>0&&e.every(e=>e.status===`success`||e.status===`error`||e.status===`aborted`)&&s){let t=e.filter(e=>e.status===`success`).length,n=e.filter(e=>e.status===`error`||e.status===`aborted`).length;s({successful:t,failed:n,total:e.length})}},[u.state,s]),f=n(t=>{e||u.clear();let n=u.addFiles(t);r&&n.length>0&&u.startUploads(n).then(d)},[e,r,u,d]),p=n(async()=>{if(!l?.pickDocument)throw Error(`File picker not available`);let e=await l.pickDocument();return e.status===`success`?(f([e]),e):null},[l,f]),m=n(async()=>{if(!l?.pickImage)throw Error(`Image picker not available`);let t=await l.pickImage({allowMultiple:e});return t.status===`success`?(f([t]),t):null},[l,f,e]),h=n(async()=>{if(!l?.pickCamera)throw Error(`Camera not available`);let e=await l.pickCamera();return e.status===`success`?(f([e]),e):null},[l,f]),g={mode:e?`multi`:`single`,state:u.state,autoStart:r,addFiles:u.addFiles,removeItem:u.removeItem,startAll:async e=>{await u.startUploads(e),d()},abortItem:u.abortItem,retryItem:u.retryItem,clear:u.clear,handleFilesReceived:f,pickFile:p,pickImage:m,takePhoto:h};return v(Ve.Provider,{value:g,children:typeof c==`function`?c(g):c})}function Ge({children:e}){let t=$();return v(_,{children:e({pick:n(async()=>{await t.pickFile()},[t]),isLoading:t.state.activeCount>0})})}function Ke({children:e}){let t=$();return v(_,{children:e({pick:n(async()=>{await t.pickImage()},[t]),isLoading:t.state.activeCount>0})})}function qe({children:e}){let t=$();return v(_,{children:e({take:n(async()=>{await t.takePhoto()},[t]),isLoading:t.state.activeCount>0})})}function Je({children:e}){let t=$();return v(_,{children:e({items:t.state.items,hasItems:t.state.items.length>0,isEmpty:t.state.items.length===0})})}function Ye({id:e,children:t}){let n=$(),r=n.state.items.find(t=>t.id===e);if(!r)return null;let i={id:e,file:r.file,state:{status:r.status,progress:r.progress,bytesUploaded:r.bytesUploaded,totalBytes:r.totalBytes,error:r.error,result:r.result},abort:()=>n.abortItem(e),retry:()=>n.retryItem(e),remove:()=>n.removeItem(e)};return v(He.Provider,{value:i,children:typeof t==`function`?t(i):t})}function Xe({children:e}){let t=$();return v(_,{children:e({progress:t.state.totalProgress,bytesUploaded:t.state.totalUploaded,totalBytes:t.state.totalBytes,isUploading:t.state.activeCount>0})})}function Ze({children:e}){let{state:t}=$(),n=`idle`;return t.activeCount>0?n=`uploading`:t.items.length>0&&t.items.every(e=>e.status===`success`||e.status===`error`||e.status===`aborted`)&&(n=t.failedCount>0?`error`:`success`),v(_,{children:e({status:n,isIdle:n===`idle`,isUploading:t.activeCount>0,isSuccess:t.completedCount>0&&t.failedCount===0&&t.activeCount===0,isError:t.failedCount>0,total:t.items.length,successful:t.completedCount,failed:t.failedCount,active:t.activeCount})})}function Qe({children:e}){let t=$(),n=t.state.items.filter(e=>e.status===`error`||e.status===`aborted`);return v(_,{children:e({hasError:n.length>0,failedCount:n.length,failedItems:n,clear:t.clear})})}function $e({children:e}){let t=$();return v(_,{children:e({cancel:n(()=>{for(let e of t.state.items.filter(e=>e.status===`uploading`))t.abortItem(e.id)},[t]),disabled:t.state.activeCount===0})})}function et({children:e}){let t=$();return v(_,{children:e({retry:n(async()=>{let e=t.state.items.filter(e=>e.status===`error`||e.status===`aborted`);for(let n of e)await t.retryItem(n.id)},[t]),disabled:t.state.failedCount===0})})}function tt({children:e}){return v(_,{children:e({reset:$().clear})})}function nt({children:e}){let t=$(),r=t.state.items.filter(e=>e.status===`idle`).length;return v(_,{children:e({start:n(async()=>{await t.startAll()},[t]),disabled:t.state.activeCount>0||r===0})})}const rt=Object.assign(We,{FilePicker:Ge,GalleryPicker:Ke,CameraPicker:qe,Items:Je,Item:Ye,Progress:Xe,Status:Ze,Error:Qe,Cancel:$e,Retry:et,Reset:tt,StartAll:nt});export{xe as CameraUploadButton,Se as FileUploadButton,Ie as Flow,ee as FlowManagerProvider,Le as GalleryUploadButton,R as PermissionStatus,L as PermissionType,rt as Upload,Re as UploadList,U as UploadProgress,b as UploadistaContext,F as formatFileSize,ge as getDirectoryFromUri,ie as getFileExtension,pe as getFileNameFromUri,ae as getFileNameWithoutExtension,I as getMimeTypeFromFileName,be as getMimeTypeFromUri,de as getPermissionStatus,ue as hasPermissions,_e as isContentUri,ce as isDocumentFile,re as isFileSizeValid,ne as isFileTypeAllowed,ve as isFileUri,oe as isImageFile,se as isVideoFile,ye as normalizeUri,fe as openAppSettings,me as pathToUri,z as requestCameraPermission,le as requestPermissions,B as requestPhotoLibraryPermission,V as requestStorageReadPermission,H as requestStorageWritePermission,he as uriToPath,T as useCameraUpload,E as useFileUpload,A as useFlow,J as useFlowContext,X as useFlowInputContext,k as useFlowManagerContext,N as useGalleryUpload,M as useMultiUpload,$ as useUploadContext,Ue as useUploadItemContext,P as useUploadMetrics,S as useUploadistaContext};
2
2
  //# sourceMappingURL=index.mjs.map