@uploadcare/upload-client 6.0.1-alpha.8 → 6.1.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -70,6 +70,43 @@ export declare type ContentInfo = {
70
70
  image?: ImageInfo;
71
71
  video?: VideoInfo;
72
72
  };
73
+ export declare type Metadata = Record<string, string>;
74
+ export interface DefaultSettings {
75
+ baseCDN: string;
76
+ baseURL: string;
77
+ maxContentLength: number;
78
+ retryThrottledRequestMaxTimes: number;
79
+ retryNetworkErrorMaxTimes: number;
80
+ multipartMinFileSize: number;
81
+ multipartChunkSize: number;
82
+ multipartMinLastPartSize: number;
83
+ maxConcurrentRequests: number;
84
+ pollingTimeoutMilliseconds: number;
85
+ pusherKey: string;
86
+ }
87
+ export interface Settings extends Partial<DefaultSettings> {
88
+ publicKey: string;
89
+ fileName?: string;
90
+ contentType?: string;
91
+ store?: boolean;
92
+ secureSignature?: string;
93
+ secureExpire?: string;
94
+ integration?: string;
95
+ userAgent?: CustomUserAgent;
96
+ checkForUrlDuplicates?: boolean;
97
+ saveUrlForRecurrentUploads?: boolean;
98
+ source?: string;
99
+ jsonpCallback?: string;
100
+ }
101
+ export declare type BrowserFile = Blob | File;
102
+ export declare type NodeFile = Buffer;
103
+ export declare type ReactNativeAsset = {
104
+ type: string;
105
+ uri: string;
106
+ name?: string;
107
+ };
108
+ export declare type SupportedFileInput = BrowserFile | NodeFile | ReactNativeAsset;
109
+ export declare type Sliceable = BrowserFile | NodeFile;
73
110
  export declare type FileInfo = {
74
111
  size: number;
75
112
  done: number;
@@ -109,21 +146,6 @@ export declare type UnknownProgressInfo = {
109
146
  isComputable: false;
110
147
  };
111
148
  export declare type ProgressCallback<T = ComputableProgressInfo | UnknownProgressInfo> = (arg: T) => void;
112
- export declare type Metadata = {
113
- [key: string]: string;
114
- };
115
- export declare type Headers = {
116
- [key: string]: string | string[] | undefined;
117
- };
118
- export declare type ErrorRequestInfo = {
119
- method?: string;
120
- url: string;
121
- query?: string;
122
- data?: NodeFormData | FormData | BrowserFile | NodeFile;
123
- headers?: Headers;
124
- };
125
- export declare type BrowserFile = Blob | File;
126
- export declare type NodeFile = Buffer;
127
149
  export declare type BaseResponse = {
128
150
  file: Uuid;
129
151
  };
@@ -148,8 +170,8 @@ export declare type BaseOptions = {
148
170
  * Performs file uploading request to Uploadcare Upload API.
149
171
  * Can be canceled and has progress.
150
172
  */
151
- export function base(file: NodeFile | BrowserFile, { publicKey, fileName, contentType, baseURL, secureSignature, secureExpire, store, signal, onProgress, source, integration, userAgent, retryThrottledRequestMaxTimes, retryNetworkErrorMaxTimes, metadata }: BaseOptions): Promise<BaseResponse>;
152
- declare enum TypeEnum {
173
+ export function base(file: SupportedFileInput, { publicKey, fileName, contentType, baseURL, secureSignature, secureExpire, store, signal, onProgress, source, integration, userAgent, retryThrottledRequestMaxTimes, retryNetworkErrorMaxTimes, metadata }: BaseOptions): Promise<BaseResponse>;
174
+ export declare enum TypeEnum {
153
175
  Token = "token",
154
176
  FileInfo = "file_info"
155
177
  }
@@ -183,7 +205,7 @@ export declare type FromUrlOptions = {
183
205
  * Uploading files from URL.
184
206
  */
185
207
  export function fromUrl(sourceUrl: Url, { publicKey, baseURL, store, fileName, checkForUrlDuplicates, saveUrlForRecurrentUploads, secureSignature, secureExpire, source, signal, integration, userAgent, retryThrottledRequestMaxTimes, retryNetworkErrorMaxTimes, metadata }: FromUrlOptions): Promise<FromUrlSuccessResponse>;
186
- declare enum Status {
208
+ export declare enum Status {
187
209
  Unknown = "unknown",
188
210
  Waiting = "waiting",
189
211
  Progress = "progress",
@@ -309,7 +331,7 @@ export declare type MultipartUploadResponse = {
309
331
  /**
310
332
  * Complete multipart uploading.
311
333
  */
312
- export function multipartUpload(part: NodeFile | BrowserFile, url: MultipartPart, { signal, onProgress, retryThrottledRequestMaxTimes, retryNetworkErrorMaxTimes }: MultipartUploadOptions): Promise<MultipartUploadResponse>;
334
+ export function multipartUpload(part: SupportedFileInput, url: MultipartPart, { signal, onProgress, retryThrottledRequestMaxTimes, retryNetworkErrorMaxTimes }: MultipartUploadOptions): Promise<MultipartUploadResponse>;
313
335
  export declare type MultipartCompleteOptions = {
314
336
  publicKey: string;
315
337
  baseURL?: string;
@@ -344,14 +366,13 @@ export declare class UploadcareFile {
344
366
  fileName?: string;
345
367
  });
346
368
  }
347
- export declare type DirectOptions = {
369
+ export declare type FileFromOptions = {
348
370
  publicKey: string;
349
371
  fileName?: string;
350
372
  baseURL?: string;
351
373
  secureSignature?: string;
352
374
  secureExpire?: string;
353
375
  store?: boolean;
354
- contentType?: string;
355
376
  signal?: AbortSignal;
356
377
  onProgress?: ProgressCallback;
357
378
  source?: string;
@@ -359,20 +380,28 @@ export declare type DirectOptions = {
359
380
  userAgent?: CustomUserAgent;
360
381
  retryThrottledRequestMaxTimes?: number;
361
382
  retryNetworkErrorMaxTimes?: number;
383
+ contentType?: string;
384
+ multipartMinFileSize?: number;
385
+ multipartChunkSize?: number;
386
+ maxConcurrentRequests?: number;
362
387
  baseCDN?: string;
388
+ checkForUrlDuplicates?: boolean;
389
+ saveUrlForRecurrentUploads?: boolean;
390
+ pusherKey?: string;
363
391
  metadata?: Metadata;
364
392
  };
365
- export declare const uploadDirect: (file: NodeFile | BrowserFile, { publicKey, fileName, baseURL, secureSignature, secureExpire, store, contentType, signal, onProgress, source, integration, userAgent, retryThrottledRequestMaxTimes, retryNetworkErrorMaxTimes, baseCDN, metadata }: DirectOptions) => Promise<UploadcareFile>;
366
- export declare type UploadFromUrlOptions = {
367
- baseCDN?: string;
368
- onProgress?: ProgressCallback;
369
- pusherKey?: string;
370
- } & FromUrlOptions;
371
- export declare const uploadFromUrl: (sourceUrl: string, { publicKey, fileName, baseURL, baseCDN, checkForUrlDuplicates, saveUrlForRecurrentUploads, secureSignature, secureExpire, store, signal, onProgress, source, integration, userAgent, retryThrottledRequestMaxTimes, pusherKey, metadata }: UploadFromUrlOptions) => Promise<UploadcareFile>;
372
- export declare type FromUploadedOptions = {
393
+ /**
394
+ * Uploads file from provided data.
395
+ */
396
+ export declare function uploadFile(data: SupportedFileInput | Url | Uuid, { publicKey, fileName, baseURL, secureSignature, secureExpire, store, signal, onProgress, source, integration, userAgent, retryThrottledRequestMaxTimes, retryNetworkErrorMaxTimes, contentType, multipartMinFileSize, multipartChunkSize, maxConcurrentRequests, baseCDN, checkForUrlDuplicates, saveUrlForRecurrentUploads, pusherKey, metadata }: FileFromOptions): Promise<UploadcareFile>;
397
+ export declare type DirectOptions = {
373
398
  publicKey: string;
374
399
  fileName?: string;
375
400
  baseURL?: string;
401
+ secureSignature?: string;
402
+ secureExpire?: string;
403
+ store?: boolean;
404
+ contentType?: string;
376
405
  signal?: AbortSignal;
377
406
  onProgress?: ProgressCallback;
378
407
  source?: string;
@@ -381,58 +410,51 @@ export declare type FromUploadedOptions = {
381
410
  retryThrottledRequestMaxTimes?: number;
382
411
  retryNetworkErrorMaxTimes?: number;
383
412
  baseCDN?: string;
413
+ metadata?: Metadata;
384
414
  };
385
- export declare const uploadFromUploaded: (uuid: Uuid, { publicKey, fileName, baseURL, signal, onProgress, source, integration, userAgent, retryThrottledRequestMaxTimes, retryNetworkErrorMaxTimes, baseCDN }: FromUploadedOptions) => Promise<UploadcareFile>;
386
- export declare type MultipartOptions = {
415
+ export declare const uploadDirect: (file: SupportedFileInput, { publicKey, fileName, baseURL, secureSignature, secureExpire, store, contentType, signal, onProgress, source, integration, userAgent, retryThrottledRequestMaxTimes, retryNetworkErrorMaxTimes, baseCDN, metadata }: DirectOptions) => Promise<UploadcareFile>;
416
+ export declare type FromUploadedOptions = {
387
417
  publicKey: string;
388
- contentType?: string;
389
- multipartChunkSize?: number;
390
418
  fileName?: string;
391
- fileSize?: number;
392
419
  baseURL?: string;
393
- secureSignature?: string;
394
- secureExpire?: string;
395
- store?: boolean;
396
420
  signal?: AbortSignal;
397
- onProgress?: ProgressCallback<ComputableProgressInfo>;
421
+ onProgress?: ProgressCallback;
398
422
  source?: string;
399
423
  integration?: string;
400
424
  userAgent?: CustomUserAgent;
401
425
  retryThrottledRequestMaxTimes?: number;
402
426
  retryNetworkErrorMaxTimes?: number;
403
- maxConcurrentRequests?: number;
404
427
  baseCDN?: string;
405
- metadata?: Metadata;
406
428
  };
407
- export declare const uploadMultipart: (file: NodeFile | BrowserFile, { publicKey, fileName, fileSize, baseURL, secureSignature, secureExpire, store, signal, onProgress, source, integration, userAgent, retryThrottledRequestMaxTimes, retryNetworkErrorMaxTimes, contentType, multipartChunkSize, maxConcurrentRequests, baseCDN, metadata }: MultipartOptions) => Promise<UploadcareFile>;
408
- export declare type FileFromOptions = {
429
+ export declare const uploadFromUploaded: (uuid: Uuid, { publicKey, fileName, baseURL, signal, onProgress, source, integration, userAgent, retryThrottledRequestMaxTimes, retryNetworkErrorMaxTimes, baseCDN }: FromUploadedOptions) => Promise<UploadcareFile>;
430
+ export declare type UploadFromUrlOptions = {
431
+ baseCDN?: string;
432
+ onProgress?: ProgressCallback;
433
+ pusherKey?: string;
434
+ } & FromUrlOptions;
435
+ export declare const uploadFromUrl: (sourceUrl: string, { publicKey, fileName, baseURL, baseCDN, checkForUrlDuplicates, saveUrlForRecurrentUploads, secureSignature, secureExpire, store, signal, onProgress, source, integration, userAgent, retryThrottledRequestMaxTimes, pusherKey, metadata }: UploadFromUrlOptions) => Promise<UploadcareFile>;
436
+ export declare type MultipartOptions = {
409
437
  publicKey: string;
438
+ contentType?: string;
439
+ multipartChunkSize?: number;
410
440
  fileName?: string;
441
+ fileSize?: number;
411
442
  baseURL?: string;
412
443
  secureSignature?: string;
413
444
  secureExpire?: string;
414
445
  store?: boolean;
415
446
  signal?: AbortSignal;
416
- onProgress?: ProgressCallback;
447
+ onProgress?: ProgressCallback<ComputableProgressInfo>;
417
448
  source?: string;
418
449
  integration?: string;
419
450
  userAgent?: CustomUserAgent;
420
451
  retryThrottledRequestMaxTimes?: number;
421
452
  retryNetworkErrorMaxTimes?: number;
422
- contentType?: string;
423
- multipartMinFileSize?: number;
424
- multipartChunkSize?: number;
425
453
  maxConcurrentRequests?: number;
426
454
  baseCDN?: string;
427
- checkForUrlDuplicates?: boolean;
428
- saveUrlForRecurrentUploads?: boolean;
429
- pusherKey?: string;
430
455
  metadata?: Metadata;
431
456
  };
432
- /**
433
- * Uploads file from provided data.
434
- */
435
- export declare function uploadFile(data: NodeFile | BrowserFile | Url | Uuid, { publicKey, fileName, baseURL, secureSignature, secureExpire, store, signal, onProgress, source, integration, userAgent, retryThrottledRequestMaxTimes, retryNetworkErrorMaxTimes, contentType, multipartMinFileSize, multipartChunkSize, maxConcurrentRequests, baseCDN, checkForUrlDuplicates, saveUrlForRecurrentUploads, pusherKey, metadata }: FileFromOptions): Promise<UploadcareFile>;
457
+ export declare const uploadMultipart: (file: SupportedFileInput, { publicKey, fileName, fileSize, baseURL, secureSignature, secureExpire, store, signal, onProgress, source, integration, userAgent, retryThrottledRequestMaxTimes, retryNetworkErrorMaxTimes, contentType, multipartChunkSize, maxConcurrentRequests, baseCDN, metadata }: MultipartOptions) => Promise<UploadcareFile>;
436
458
  export declare class UploadcareGroup {
437
459
  readonly uuid: GroupId;
438
460
  readonly filesCount: string;
@@ -448,51 +470,34 @@ export declare class UploadcareGroup {
448
470
  export declare type GroupFromOptions = {
449
471
  jsonpCallback?: string;
450
472
  };
451
- export function uploadFileGroup(data: (NodeFile | BrowserFile)[] | Url[] | Uuid[], { publicKey, fileName, baseURL, secureSignature, secureExpire, store, signal, onProgress, source, integration, userAgent, retryThrottledRequestMaxTimes, retryNetworkErrorMaxTimes, contentType, multipartChunkSize, baseCDN, jsonpCallback }: FileFromOptions & GroupFromOptions): Promise<UploadcareGroup>;
452
- export interface DefaultSettings {
453
- baseCDN: string;
454
- baseURL: string;
455
- maxContentLength: number;
456
- retryThrottledRequestMaxTimes: number;
457
- retryNetworkErrorMaxTimes: number;
458
- multipartMinFileSize: number;
459
- multipartChunkSize: number;
460
- multipartMinLastPartSize: number;
461
- maxConcurrentRequests: number;
462
- pollingTimeoutMilliseconds: number;
463
- pusherKey: string;
464
- }
465
- export interface Settings extends Partial<DefaultSettings> {
466
- publicKey: string;
467
- fileName?: string;
468
- contentType?: string;
469
- store?: boolean;
470
- secureSignature?: string;
471
- secureExpire?: string;
472
- integration?: string;
473
- userAgent?: CustomUserAgent;
474
- checkForUrlDuplicates?: boolean;
475
- saveUrlForRecurrentUploads?: boolean;
476
- source?: string;
477
- jsonpCallback?: string;
478
- }
473
+ export declare function uploadFileGroup(data: SupportedFileInput[] | Url[] | Uuid[], { publicKey, fileName, baseURL, secureSignature, secureExpire, store, signal, onProgress, source, integration, userAgent, retryThrottledRequestMaxTimes, retryNetworkErrorMaxTimes, contentType, multipartChunkSize, baseCDN, jsonpCallback }: FileFromOptions & GroupFromOptions): Promise<UploadcareGroup>;
479
474
  export declare class UploadClient {
480
475
  private settings;
481
476
  constructor(settings: Settings);
482
477
  updateSettings(newSettings: Settings): void;
483
478
  getSettings(): Settings;
484
- base(file: NodeFile | BrowserFile, options?: Partial<BaseOptions>): Promise<BaseResponse>;
479
+ base(file: SupportedFileInput, options?: Partial<BaseOptions>): Promise<BaseResponse>;
485
480
  info(uuid: Uuid, options?: Partial<InfoOptions>): Promise<FileInfo>;
486
481
  fromUrl(sourceUrl: Url, options?: Partial<FromUrlOptions>): Promise<FromUrlResponse>;
487
482
  fromUrlStatus(token: Token, options?: Partial<FromUrlStatusOptions>): Promise<FromUrlStatusResponse>;
488
483
  group(uuids: Uuid[], options?: Partial<GroupOptions>): Promise<GroupInfo>;
489
484
  groupInfo(id: GroupId, options?: Partial<GroupInfoOptions>): Promise<GroupInfo>;
490
485
  multipartStart(size: number, options?: Partial<MultipartStartOptions>): Promise<MultipartStartResponse>;
491
- multipartUpload(part: Buffer | Blob, url: MultipartPart, options?: Partial<MultipartUploadOptions>): Promise<MultipartUploadResponse>;
486
+ multipartUpload(part: Sliceable, url: MultipartPart, options?: Partial<MultipartUploadOptions>): Promise<MultipartUploadResponse>;
492
487
  multipartComplete(uuid: Uuid, options?: Partial<MultipartCompleteOptions>): Promise<FileInfo>;
493
- uploadFile(data: NodeFile | BrowserFile | Url | Uuid, options?: Partial<FileFromOptions>): Promise<UploadcareFile>;
494
- uploadFileGroup(data: (NodeFile | BrowserFile)[] | Url[] | Uuid[], options?: Partial<FileFromOptions & GroupFromOptions>): Promise<UploadcareGroup>;
488
+ uploadFile(data: SupportedFileInput | Url | Uuid, options?: Partial<FileFromOptions>): Promise<UploadcareFile>;
489
+ uploadFileGroup(data: SupportedFileInput[] | Url[] | Uuid[], options?: Partial<FileFromOptions & GroupFromOptions>): Promise<UploadcareGroup>;
495
490
  }
491
+ export declare type Headers = {
492
+ [key: string]: string | string[] | undefined;
493
+ };
494
+ export declare type ErrorRequestInfo = {
495
+ method?: string;
496
+ url: string;
497
+ query?: string;
498
+ data?: NodeFormData | FormData | SupportedFileInput;
499
+ headers?: Headers;
500
+ };
496
501
  export declare type ErrorResponseInfo = {
497
502
  error?: {
498
503
  statusCode: number;