@uploadcare/upload-client 2.0.0-alpha.7 → 2.1.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/README.md +35 -10
- package/dist/index.browser.cjs +134 -73
- package/dist/index.browser.js +174 -119
- package/dist/index.cjs +147 -83
- package/dist/index.js +182 -127
- package/dist/types.d.ts +125 -40
- package/package.json +32 -26
- package/CHANGELOG.md +0 -243
package/dist/index.browser.cjs
CHANGED
|
@@ -52,10 +52,11 @@ function __spreadArrays() {
|
|
|
52
52
|
|
|
53
53
|
var UploadClientError = /** @class */ (function (_super) {
|
|
54
54
|
__extends(UploadClientError, _super);
|
|
55
|
-
function UploadClientError(message, request, response, headers) {
|
|
55
|
+
function UploadClientError(message, code, request, response, headers) {
|
|
56
56
|
var _this = _super.call(this) || this;
|
|
57
57
|
_this.name = 'UploadClientError';
|
|
58
58
|
_this.message = message;
|
|
59
|
+
_this.code = code;
|
|
59
60
|
_this.request = request;
|
|
60
61
|
_this.response = response;
|
|
61
62
|
_this.headers = headers;
|
|
@@ -163,20 +164,27 @@ var request = function (_a) {
|
|
|
163
164
|
});
|
|
164
165
|
};
|
|
165
166
|
|
|
167
|
+
function identity(obj) {
|
|
168
|
+
return obj;
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
var transformFile = identity;
|
|
166
172
|
var getFormData = (function () { return new FormData(); });
|
|
167
173
|
|
|
174
|
+
var isFileTuple = function (tuple) {
|
|
175
|
+
return tuple[0] === 'file';
|
|
176
|
+
};
|
|
168
177
|
function buildFormData(body) {
|
|
169
178
|
var formData = getFormData();
|
|
170
|
-
var isTriple = function (tuple) {
|
|
171
|
-
return tuple[0] === 'file';
|
|
172
|
-
};
|
|
173
179
|
var _loop_1 = function (tuple) {
|
|
174
180
|
if (Array.isArray(tuple[1])) {
|
|
175
181
|
// refactor this
|
|
176
182
|
tuple[1].forEach(function (val) { return val && formData.append(tuple[0] + '[]', "" + val); });
|
|
177
183
|
}
|
|
178
|
-
else if (
|
|
179
|
-
|
|
184
|
+
else if (isFileTuple(tuple)) {
|
|
185
|
+
var name_1 = tuple[2];
|
|
186
|
+
var file = transformFile(tuple[1]); // lgtm[js/superfluous-trailing-arguments]
|
|
187
|
+
formData.append(tuple[0], file, name_1);
|
|
180
188
|
}
|
|
181
189
|
else if (tuple[1] != null) {
|
|
182
190
|
formData.append(tuple[0], "" + tuple[1]);
|
|
@@ -234,16 +242,33 @@ var defaultSettings = {
|
|
|
234
242
|
var defaultContentType = 'application/octet-stream';
|
|
235
243
|
var defaultFilename = 'original';
|
|
236
244
|
|
|
237
|
-
var version = '
|
|
245
|
+
var version = '2.1.0';
|
|
238
246
|
|
|
239
247
|
/**
|
|
240
248
|
* Returns User Agent based on version and settings.
|
|
241
249
|
*/
|
|
242
250
|
function getUserAgent(_a) {
|
|
243
|
-
var _b = _a === void 0 ? {} : _a, _c = _b.publicKey, publicKey = _c === void 0 ? '' : _c, _d = _b.integration, integration = _d === void 0 ? '' : _d;
|
|
244
|
-
var
|
|
245
|
-
var
|
|
246
|
-
|
|
251
|
+
var _b = _a === void 0 ? {} : _a, userAgent = _b.userAgent, _c = _b.publicKey, publicKey = _c === void 0 ? '' : _c, _d = _b.integration, integration = _d === void 0 ? '' : _d;
|
|
252
|
+
var libraryName = 'UploadcareUploadClient';
|
|
253
|
+
var libraryVersion = version;
|
|
254
|
+
var languageName = 'JavaScript';
|
|
255
|
+
if (typeof userAgent === 'string') {
|
|
256
|
+
return userAgent;
|
|
257
|
+
}
|
|
258
|
+
if (typeof userAgent === 'function') {
|
|
259
|
+
return userAgent({
|
|
260
|
+
publicKey: publicKey,
|
|
261
|
+
libraryName: libraryName,
|
|
262
|
+
libraryVersion: libraryVersion,
|
|
263
|
+
languageName: languageName,
|
|
264
|
+
integration: integration
|
|
265
|
+
});
|
|
266
|
+
}
|
|
267
|
+
var mainInfo = [libraryName, libraryVersion, publicKey]
|
|
268
|
+
.filter(Boolean)
|
|
269
|
+
.join('/');
|
|
270
|
+
var additionInfo = [languageName, integration].filter(Boolean).join('; ');
|
|
271
|
+
return mainInfo + " (" + additionInfo + ")";
|
|
247
272
|
}
|
|
248
273
|
|
|
249
274
|
var SEPARATOR = /\W|_/g;
|
|
@@ -306,7 +331,7 @@ function retrier(fn, options) {
|
|
|
306
331
|
return runAttempt(fn);
|
|
307
332
|
}
|
|
308
333
|
|
|
309
|
-
var REQUEST_WAS_THROTTLED_CODE =
|
|
334
|
+
var REQUEST_WAS_THROTTLED_CODE = 'RequestThrottledError';
|
|
310
335
|
var DEFAULT_RETRY_AFTER_TIMEOUT = 15000;
|
|
311
336
|
function getTimeoutFromThrottledRequest(error) {
|
|
312
337
|
var headers = (error || {}).headers;
|
|
@@ -318,9 +343,8 @@ function retryIfThrottled(fn, retryThrottledMaxTimes) {
|
|
|
318
343
|
return retrier(function (_a) {
|
|
319
344
|
var attempt = _a.attempt, retry = _a.retry;
|
|
320
345
|
return fn().catch(function (error) {
|
|
321
|
-
var _a;
|
|
322
346
|
if ('response' in error &&
|
|
323
|
-
(
|
|
347
|
+
(error === null || error === void 0 ? void 0 : error.code) === REQUEST_WAS_THROTTLED_CODE &&
|
|
324
348
|
attempt < retryThrottledMaxTimes) {
|
|
325
349
|
return retry(getTimeoutFromThrottledRequest(error));
|
|
326
350
|
}
|
|
@@ -334,7 +358,7 @@ function retryIfThrottled(fn, retryThrottledMaxTimes) {
|
|
|
334
358
|
* Can be canceled and has progress.
|
|
335
359
|
*/
|
|
336
360
|
function base(file, _a) {
|
|
337
|
-
var publicKey = _a.publicKey, fileName = _a.fileName, _b = _a.baseURL, baseURL = _b === void 0 ? defaultSettings.baseURL : _b, secureSignature = _a.secureSignature, secureExpire = _a.secureExpire, store = _a.store, signal = _a.signal, onProgress = _a.onProgress, _c = _a.source, source = _c === void 0 ? 'local' : _c, integration = _a.integration, _d = _a.retryThrottledRequestMaxTimes, retryThrottledRequestMaxTimes = _d === void 0 ? defaultSettings.retryThrottledRequestMaxTimes : _d;
|
|
361
|
+
var publicKey = _a.publicKey, fileName = _a.fileName, _b = _a.baseURL, baseURL = _b === void 0 ? defaultSettings.baseURL : _b, secureSignature = _a.secureSignature, secureExpire = _a.secureExpire, store = _a.store, signal = _a.signal, onProgress = _a.onProgress, _c = _a.source, source = _c === void 0 ? 'local' : _c, integration = _a.integration, userAgent = _a.userAgent, _d = _a.retryThrottledRequestMaxTimes, retryThrottledRequestMaxTimes = _d === void 0 ? defaultSettings.retryThrottledRequestMaxTimes : _d;
|
|
338
362
|
return retryIfThrottled(function () {
|
|
339
363
|
var _a;
|
|
340
364
|
return request({
|
|
@@ -343,7 +367,7 @@ function base(file, _a) {
|
|
|
343
367
|
jsonerrors: 1
|
|
344
368
|
}),
|
|
345
369
|
headers: {
|
|
346
|
-
'X-UC-User-Agent': getUserAgent({ publicKey: publicKey, integration: integration })
|
|
370
|
+
'X-UC-User-Agent': getUserAgent({ publicKey: publicKey, integration: integration, userAgent: userAgent })
|
|
347
371
|
},
|
|
348
372
|
data: buildFormData([
|
|
349
373
|
['file', file, (_a = fileName !== null && fileName !== void 0 ? fileName : file.name) !== null && _a !== void 0 ? _a : defaultFilename],
|
|
@@ -362,7 +386,7 @@ function base(file, _a) {
|
|
|
362
386
|
var data = _a.data, headers = _a.headers, request = _a.request;
|
|
363
387
|
var response = camelizeKeys(JSON.parse(data));
|
|
364
388
|
if ('error' in response) {
|
|
365
|
-
throw new UploadClientError(
|
|
389
|
+
throw new UploadClientError(response.error.content, response.error.errorCode, request, response, headers);
|
|
366
390
|
}
|
|
367
391
|
else {
|
|
368
392
|
return response;
|
|
@@ -379,14 +403,13 @@ var TypeEnum;
|
|
|
379
403
|
/**
|
|
380
404
|
* Uploading files from URL.
|
|
381
405
|
*/
|
|
382
|
-
/* eslint @typescript-eslint/camelcase: [2, {allow: ["pub_key", "source_url", "check_URL_duplicates", "save_URL_duplicates"]}] */
|
|
383
406
|
function fromUrl(sourceUrl, _a) {
|
|
384
|
-
var publicKey = _a.publicKey, _b = _a.baseURL, baseURL = _b === void 0 ? defaultSettings.baseURL : _b, store = _a.store, fileName = _a.fileName, checkForUrlDuplicates = _a.checkForUrlDuplicates, saveUrlForRecurrentUploads = _a.saveUrlForRecurrentUploads, secureSignature = _a.secureSignature, secureExpire = _a.secureExpire, _c = _a.source, source = _c === void 0 ? 'url' : _c, signal = _a.signal, integration = _a.integration, _d = _a.retryThrottledRequestMaxTimes, retryThrottledRequestMaxTimes = _d === void 0 ? defaultSettings.retryThrottledRequestMaxTimes : _d;
|
|
407
|
+
var publicKey = _a.publicKey, _b = _a.baseURL, baseURL = _b === void 0 ? defaultSettings.baseURL : _b, store = _a.store, fileName = _a.fileName, checkForUrlDuplicates = _a.checkForUrlDuplicates, saveUrlForRecurrentUploads = _a.saveUrlForRecurrentUploads, secureSignature = _a.secureSignature, secureExpire = _a.secureExpire, _c = _a.source, source = _c === void 0 ? 'url' : _c, signal = _a.signal, integration = _a.integration, userAgent = _a.userAgent, _d = _a.retryThrottledRequestMaxTimes, retryThrottledRequestMaxTimes = _d === void 0 ? defaultSettings.retryThrottledRequestMaxTimes : _d;
|
|
385
408
|
return retryIfThrottled(function () {
|
|
386
409
|
return request({
|
|
387
410
|
method: 'POST',
|
|
388
411
|
headers: {
|
|
389
|
-
'X-UC-User-Agent': getUserAgent({ publicKey: publicKey, integration: integration })
|
|
412
|
+
'X-UC-User-Agent': getUserAgent({ publicKey: publicKey, integration: integration, userAgent: userAgent })
|
|
390
413
|
},
|
|
391
414
|
url: getUrl(baseURL, '/from_url/', {
|
|
392
415
|
jsonerrors: 1,
|
|
@@ -405,7 +428,7 @@ function fromUrl(sourceUrl, _a) {
|
|
|
405
428
|
var data = _a.data, headers = _a.headers, request = _a.request;
|
|
406
429
|
var response = camelizeKeys(JSON.parse(data));
|
|
407
430
|
if ('error' in response) {
|
|
408
|
-
throw new UploadClientError(
|
|
431
|
+
throw new UploadClientError(response.error.content, response.error.errorCode, request, response, headers);
|
|
409
432
|
}
|
|
410
433
|
else {
|
|
411
434
|
return response;
|
|
@@ -429,12 +452,18 @@ var isErrorResponse = function (response) {
|
|
|
429
452
|
* Checking upload status and working with file tokens.
|
|
430
453
|
*/
|
|
431
454
|
function fromUrlStatus(token, _a) {
|
|
432
|
-
var _b = _a === void 0 ? {} : _a, publicKey = _b.publicKey, _c = _b.baseURL, baseURL = _c === void 0 ? defaultSettings.baseURL : _c, signal = _b.signal, integration = _b.integration, _d = _b.retryThrottledRequestMaxTimes, retryThrottledRequestMaxTimes = _d === void 0 ? defaultSettings.retryThrottledRequestMaxTimes : _d;
|
|
455
|
+
var _b = _a === void 0 ? {} : _a, publicKey = _b.publicKey, _c = _b.baseURL, baseURL = _c === void 0 ? defaultSettings.baseURL : _c, signal = _b.signal, integration = _b.integration, userAgent = _b.userAgent, _d = _b.retryThrottledRequestMaxTimes, retryThrottledRequestMaxTimes = _d === void 0 ? defaultSettings.retryThrottledRequestMaxTimes : _d;
|
|
433
456
|
return retryIfThrottled(function () {
|
|
434
457
|
return request({
|
|
435
458
|
method: 'GET',
|
|
436
459
|
headers: publicKey
|
|
437
|
-
? {
|
|
460
|
+
? {
|
|
461
|
+
'X-UC-User-Agent': getUserAgent({
|
|
462
|
+
publicKey: publicKey,
|
|
463
|
+
integration: integration,
|
|
464
|
+
userAgent: userAgent
|
|
465
|
+
})
|
|
466
|
+
}
|
|
438
467
|
: undefined,
|
|
439
468
|
url: getUrl(baseURL, '/from_url/status/', {
|
|
440
469
|
jsonerrors: 1,
|
|
@@ -445,7 +474,7 @@ function fromUrlStatus(token, _a) {
|
|
|
445
474
|
var data = _a.data, headers = _a.headers, request = _a.request;
|
|
446
475
|
var response = camelizeKeys(JSON.parse(data));
|
|
447
476
|
if ('error' in response && !isErrorResponse(response)) {
|
|
448
|
-
throw new UploadClientError(
|
|
477
|
+
throw new UploadClientError(response.error.content, undefined, request, response, headers);
|
|
449
478
|
}
|
|
450
479
|
else {
|
|
451
480
|
return response;
|
|
@@ -457,14 +486,13 @@ function fromUrlStatus(token, _a) {
|
|
|
457
486
|
/**
|
|
458
487
|
* Create files group.
|
|
459
488
|
*/
|
|
460
|
-
/* eslint @typescript-eslint/camelcase: [2, {allow: ["pub_key"]}] */
|
|
461
489
|
function group(uuids, _a) {
|
|
462
|
-
var publicKey = _a.publicKey, _b = _a.baseURL, baseURL = _b === void 0 ? defaultSettings.baseURL : _b, jsonpCallback = _a.jsonpCallback, secureSignature = _a.secureSignature, secureExpire = _a.secureExpire, signal = _a.signal, source = _a.source, integration = _a.integration, _c = _a.retryThrottledRequestMaxTimes, retryThrottledRequestMaxTimes = _c === void 0 ? defaultSettings.retryThrottledRequestMaxTimes : _c;
|
|
490
|
+
var publicKey = _a.publicKey, _b = _a.baseURL, baseURL = _b === void 0 ? defaultSettings.baseURL : _b, jsonpCallback = _a.jsonpCallback, secureSignature = _a.secureSignature, secureExpire = _a.secureExpire, signal = _a.signal, source = _a.source, integration = _a.integration, userAgent = _a.userAgent, _c = _a.retryThrottledRequestMaxTimes, retryThrottledRequestMaxTimes = _c === void 0 ? defaultSettings.retryThrottledRequestMaxTimes : _c;
|
|
463
491
|
return retryIfThrottled(function () {
|
|
464
492
|
return request({
|
|
465
493
|
method: 'POST',
|
|
466
494
|
headers: {
|
|
467
|
-
'X-UC-User-Agent': getUserAgent({ publicKey: publicKey, integration: integration })
|
|
495
|
+
'X-UC-User-Agent': getUserAgent({ publicKey: publicKey, integration: integration, userAgent: userAgent })
|
|
468
496
|
},
|
|
469
497
|
url: getUrl(baseURL, '/group/', {
|
|
470
498
|
jsonerrors: 1,
|
|
@@ -480,7 +508,7 @@ function group(uuids, _a) {
|
|
|
480
508
|
var data = _a.data, headers = _a.headers, request = _a.request;
|
|
481
509
|
var response = camelizeKeys(JSON.parse(data));
|
|
482
510
|
if ('error' in response) {
|
|
483
|
-
throw new UploadClientError(
|
|
511
|
+
throw new UploadClientError(response.error.content, response.error.errorCode, request, response, headers);
|
|
484
512
|
}
|
|
485
513
|
else {
|
|
486
514
|
return response;
|
|
@@ -492,14 +520,13 @@ function group(uuids, _a) {
|
|
|
492
520
|
/**
|
|
493
521
|
* Get info about group.
|
|
494
522
|
*/
|
|
495
|
-
/* eslint @typescript-eslint/camelcase: [2, {allow: ["pub_key", "group_id"]}] */
|
|
496
523
|
function groupInfo(id, _a) {
|
|
497
|
-
var publicKey = _a.publicKey, _b = _a.baseURL, baseURL = _b === void 0 ? defaultSettings.baseURL : _b, signal = _a.signal, source = _a.source, integration = _a.integration, _c = _a.retryThrottledRequestMaxTimes, retryThrottledRequestMaxTimes = _c === void 0 ? defaultSettings.retryThrottledRequestMaxTimes : _c;
|
|
524
|
+
var publicKey = _a.publicKey, _b = _a.baseURL, baseURL = _b === void 0 ? defaultSettings.baseURL : _b, signal = _a.signal, source = _a.source, integration = _a.integration, userAgent = _a.userAgent, _c = _a.retryThrottledRequestMaxTimes, retryThrottledRequestMaxTimes = _c === void 0 ? defaultSettings.retryThrottledRequestMaxTimes : _c;
|
|
498
525
|
return retryIfThrottled(function () {
|
|
499
526
|
return request({
|
|
500
527
|
method: 'GET',
|
|
501
528
|
headers: {
|
|
502
|
-
'X-UC-User-Agent': getUserAgent({ publicKey: publicKey, integration: integration })
|
|
529
|
+
'X-UC-User-Agent': getUserAgent({ publicKey: publicKey, integration: integration, userAgent: userAgent })
|
|
503
530
|
},
|
|
504
531
|
url: getUrl(baseURL, '/group/info/', {
|
|
505
532
|
jsonerrors: 1,
|
|
@@ -512,7 +539,7 @@ function groupInfo(id, _a) {
|
|
|
512
539
|
var data = _a.data, headers = _a.headers, request = _a.request;
|
|
513
540
|
var response = camelizeKeys(JSON.parse(data));
|
|
514
541
|
if ('error' in response) {
|
|
515
|
-
throw new UploadClientError(
|
|
542
|
+
throw new UploadClientError(response.error.content, response.error.errorCode, request, response, headers);
|
|
516
543
|
}
|
|
517
544
|
else {
|
|
518
545
|
return response;
|
|
@@ -524,14 +551,13 @@ function groupInfo(id, _a) {
|
|
|
524
551
|
/**
|
|
525
552
|
* Returns a JSON dictionary holding file info.
|
|
526
553
|
*/
|
|
527
|
-
/* eslint @typescript-eslint/camelcase: [2, {allow: ["pub_key", "file_id"]}] */
|
|
528
554
|
function info(uuid, _a) {
|
|
529
|
-
var publicKey = _a.publicKey, _b = _a.baseURL, baseURL = _b === void 0 ? defaultSettings.baseURL : _b, signal = _a.signal, source = _a.source, integration = _a.integration, _c = _a.retryThrottledRequestMaxTimes, retryThrottledRequestMaxTimes = _c === void 0 ? defaultSettings.retryThrottledRequestMaxTimes : _c;
|
|
555
|
+
var publicKey = _a.publicKey, _b = _a.baseURL, baseURL = _b === void 0 ? defaultSettings.baseURL : _b, signal = _a.signal, source = _a.source, integration = _a.integration, userAgent = _a.userAgent, _c = _a.retryThrottledRequestMaxTimes, retryThrottledRequestMaxTimes = _c === void 0 ? defaultSettings.retryThrottledRequestMaxTimes : _c;
|
|
530
556
|
return retryIfThrottled(function () {
|
|
531
557
|
return request({
|
|
532
558
|
method: 'GET',
|
|
533
559
|
headers: {
|
|
534
|
-
'X-UC-User-Agent': getUserAgent({ publicKey: publicKey, integration: integration })
|
|
560
|
+
'X-UC-User-Agent': getUserAgent({ publicKey: publicKey, integration: integration, userAgent: userAgent })
|
|
535
561
|
},
|
|
536
562
|
url: getUrl(baseURL, '/info/', {
|
|
537
563
|
jsonerrors: 1,
|
|
@@ -544,7 +570,7 @@ function info(uuid, _a) {
|
|
|
544
570
|
var data = _a.data, headers = _a.headers, request = _a.request;
|
|
545
571
|
var response = camelizeKeys(JSON.parse(data));
|
|
546
572
|
if ('error' in response) {
|
|
547
|
-
throw new UploadClientError(
|
|
573
|
+
throw new UploadClientError(response.error.content, response.error.errorCode, request, response, headers);
|
|
548
574
|
}
|
|
549
575
|
else {
|
|
550
576
|
return response;
|
|
@@ -557,13 +583,13 @@ function info(uuid, _a) {
|
|
|
557
583
|
* Start multipart uploading.
|
|
558
584
|
*/
|
|
559
585
|
function multipartStart(size, _a) {
|
|
560
|
-
var publicKey = _a.publicKey, contentType = _a.contentType, fileName = _a.fileName, _b = _a.multipartChunkSize, multipartChunkSize = _b === void 0 ? defaultSettings.multipartChunkSize : _b, _c = _a.baseURL, baseURL = _c === void 0 ? '' : _c, secureSignature = _a.secureSignature, secureExpire = _a.secureExpire, store = _a.store, signal = _a.signal, _d = _a.source, source = _d === void 0 ? 'local' : _d, integration = _a.integration, _e = _a.retryThrottledRequestMaxTimes, retryThrottledRequestMaxTimes = _e === void 0 ? defaultSettings.retryThrottledRequestMaxTimes : _e;
|
|
586
|
+
var publicKey = _a.publicKey, contentType = _a.contentType, fileName = _a.fileName, _b = _a.multipartChunkSize, multipartChunkSize = _b === void 0 ? defaultSettings.multipartChunkSize : _b, _c = _a.baseURL, baseURL = _c === void 0 ? '' : _c, secureSignature = _a.secureSignature, secureExpire = _a.secureExpire, store = _a.store, signal = _a.signal, _d = _a.source, source = _d === void 0 ? 'local' : _d, integration = _a.integration, userAgent = _a.userAgent, _e = _a.retryThrottledRequestMaxTimes, retryThrottledRequestMaxTimes = _e === void 0 ? defaultSettings.retryThrottledRequestMaxTimes : _e;
|
|
561
587
|
return retryIfThrottled(function () {
|
|
562
588
|
return request({
|
|
563
589
|
method: 'POST',
|
|
564
590
|
url: getUrl(baseURL, '/multipart/start/', { jsonerrors: 1 }),
|
|
565
591
|
headers: {
|
|
566
|
-
'X-UC-User-Agent': getUserAgent({ publicKey: publicKey, integration: integration })
|
|
592
|
+
'X-UC-User-Agent': getUserAgent({ publicKey: publicKey, integration: integration, userAgent: userAgent })
|
|
567
593
|
},
|
|
568
594
|
data: buildFormData([
|
|
569
595
|
['filename', fileName !== null && fileName !== void 0 ? fileName : defaultFilename],
|
|
@@ -581,7 +607,7 @@ function multipartStart(size, _a) {
|
|
|
581
607
|
var data = _a.data, headers = _a.headers, request = _a.request;
|
|
582
608
|
var response = camelizeKeys(JSON.parse(data));
|
|
583
609
|
if ('error' in response) {
|
|
584
|
-
throw new UploadClientError(
|
|
610
|
+
throw new UploadClientError(response.error.content, response.error.errorCode, request, response, headers);
|
|
585
611
|
}
|
|
586
612
|
else {
|
|
587
613
|
// convert to array
|
|
@@ -596,15 +622,10 @@ function multipartStart(size, _a) {
|
|
|
596
622
|
* Complete multipart uploading.
|
|
597
623
|
*/
|
|
598
624
|
function multipartUpload(part, url, _a) {
|
|
599
|
-
var
|
|
625
|
+
var signal = _a.signal, onProgress = _a.onProgress;
|
|
600
626
|
return request({
|
|
601
627
|
method: 'PUT',
|
|
602
628
|
url: url,
|
|
603
|
-
headers: {
|
|
604
|
-
'X-UC-User-Agent': publicKey
|
|
605
|
-
? getUserAgent({ publicKey: publicKey, integration: integration })
|
|
606
|
-
: undefined
|
|
607
|
-
},
|
|
608
629
|
data: part,
|
|
609
630
|
onProgress: onProgress,
|
|
610
631
|
signal: signal
|
|
@@ -625,13 +646,13 @@ function multipartUpload(part, url, _a) {
|
|
|
625
646
|
* Complete multipart uploading.
|
|
626
647
|
*/
|
|
627
648
|
function multipartComplete(uuid, _a) {
|
|
628
|
-
var publicKey = _a.publicKey, _b = _a.baseURL, baseURL = _b === void 0 ? defaultSettings.baseURL : _b, _c = _a.source, source = _c === void 0 ? 'local' : _c, signal = _a.signal, integration = _a.integration, _d = _a.retryThrottledRequestMaxTimes, retryThrottledRequestMaxTimes = _d === void 0 ? defaultSettings.retryThrottledRequestMaxTimes : _d;
|
|
649
|
+
var publicKey = _a.publicKey, _b = _a.baseURL, baseURL = _b === void 0 ? defaultSettings.baseURL : _b, _c = _a.source, source = _c === void 0 ? 'local' : _c, signal = _a.signal, integration = _a.integration, userAgent = _a.userAgent, _d = _a.retryThrottledRequestMaxTimes, retryThrottledRequestMaxTimes = _d === void 0 ? defaultSettings.retryThrottledRequestMaxTimes : _d;
|
|
629
650
|
return retryIfThrottled(function () {
|
|
630
651
|
return request({
|
|
631
652
|
method: 'POST',
|
|
632
653
|
url: getUrl(baseURL, '/multipart/complete/', { jsonerrors: 1 }),
|
|
633
654
|
headers: {
|
|
634
|
-
'X-UC-User-Agent': getUserAgent({ publicKey: publicKey, integration: integration })
|
|
655
|
+
'X-UC-User-Agent': getUserAgent({ publicKey: publicKey, integration: integration, userAgent: userAgent })
|
|
635
656
|
},
|
|
636
657
|
data: buildFormData([
|
|
637
658
|
['uuid', uuid],
|
|
@@ -643,7 +664,7 @@ function multipartComplete(uuid, _a) {
|
|
|
643
664
|
var data = _a.data, headers = _a.headers, request = _a.request;
|
|
644
665
|
var response = camelizeKeys(JSON.parse(data));
|
|
645
666
|
if ('error' in response) {
|
|
646
|
-
throw new UploadClientError(
|
|
667
|
+
throw new UploadClientError(response.error.content, response.error.errorCode, request, response, headers);
|
|
647
668
|
}
|
|
648
669
|
else {
|
|
649
670
|
return response;
|
|
@@ -659,6 +680,7 @@ var UploadcareFile = /** @class */ (function () {
|
|
|
659
680
|
this.size = null;
|
|
660
681
|
this.isStored = null;
|
|
661
682
|
this.isImage = null;
|
|
683
|
+
this.mimeType = null;
|
|
662
684
|
this.cdnUrl = null;
|
|
663
685
|
this.cdnUrlModifiers = null;
|
|
664
686
|
this.originalUrl = null;
|
|
@@ -677,6 +699,7 @@ var UploadcareFile = /** @class */ (function () {
|
|
|
677
699
|
this.size = fileInfo.size;
|
|
678
700
|
this.isStored = fileInfo.isStored;
|
|
679
701
|
this.isImage = fileInfo.isImage;
|
|
702
|
+
this.mimeType = fileInfo.mimeType;
|
|
680
703
|
this.cdnUrl = cdnUrl;
|
|
681
704
|
this.cdnUrlModifiers = cdnUrlModifiers;
|
|
682
705
|
this.originalUrl = originalUrl;
|
|
@@ -718,7 +741,7 @@ var poll = function (_a) {
|
|
|
718
741
|
};
|
|
719
742
|
|
|
720
743
|
function isReadyPoll(_a) {
|
|
721
|
-
var file = _a.file, publicKey = _a.publicKey, baseURL = _a.baseURL, source = _a.source, integration = _a.integration, retryThrottledRequestMaxTimes = _a.retryThrottledRequestMaxTimes, signal = _a.signal, onProgress = _a.onProgress;
|
|
744
|
+
var file = _a.file, publicKey = _a.publicKey, baseURL = _a.baseURL, source = _a.source, integration = _a.integration, userAgent = _a.userAgent, retryThrottledRequestMaxTimes = _a.retryThrottledRequestMaxTimes, signal = _a.signal, onProgress = _a.onProgress;
|
|
722
745
|
return poll({
|
|
723
746
|
check: function (signal) {
|
|
724
747
|
return info(file, {
|
|
@@ -727,6 +750,7 @@ function isReadyPoll(_a) {
|
|
|
727
750
|
signal: signal,
|
|
728
751
|
source: source,
|
|
729
752
|
integration: integration,
|
|
753
|
+
userAgent: userAgent,
|
|
730
754
|
retryThrottledRequestMaxTimes: retryThrottledRequestMaxTimes
|
|
731
755
|
}).then(function (response) {
|
|
732
756
|
if (response.isReady) {
|
|
@@ -741,7 +765,7 @@ function isReadyPoll(_a) {
|
|
|
741
765
|
}
|
|
742
766
|
|
|
743
767
|
var uploadFromObject = function (file, _a) {
|
|
744
|
-
var publicKey = _a.publicKey, fileName = _a.fileName, baseURL = _a.baseURL, secureSignature = _a.secureSignature, secureExpire = _a.secureExpire, store = _a.store, signal = _a.signal, onProgress = _a.onProgress, source = _a.source, integration = _a.integration, retryThrottledRequestMaxTimes = _a.retryThrottledRequestMaxTimes, baseCDN = _a.baseCDN;
|
|
768
|
+
var publicKey = _a.publicKey, fileName = _a.fileName, baseURL = _a.baseURL, secureSignature = _a.secureSignature, secureExpire = _a.secureExpire, store = _a.store, signal = _a.signal, onProgress = _a.onProgress, source = _a.source, integration = _a.integration, userAgent = _a.userAgent, retryThrottledRequestMaxTimes = _a.retryThrottledRequestMaxTimes, baseCDN = _a.baseCDN;
|
|
745
769
|
return base(file, {
|
|
746
770
|
publicKey: publicKey,
|
|
747
771
|
fileName: fileName,
|
|
@@ -753,6 +777,7 @@ var uploadFromObject = function (file, _a) {
|
|
|
753
777
|
onProgress: onProgress,
|
|
754
778
|
source: source,
|
|
755
779
|
integration: integration,
|
|
780
|
+
userAgent: userAgent,
|
|
756
781
|
retryThrottledRequestMaxTimes: retryThrottledRequestMaxTimes
|
|
757
782
|
})
|
|
758
783
|
.then(function (_a) {
|
|
@@ -763,6 +788,7 @@ var uploadFromObject = function (file, _a) {
|
|
|
763
788
|
baseURL: baseURL,
|
|
764
789
|
source: source,
|
|
765
790
|
integration: integration,
|
|
791
|
+
userAgent: userAgent,
|
|
766
792
|
retryThrottledRequestMaxTimes: retryThrottledRequestMaxTimes,
|
|
767
793
|
onProgress: onProgress,
|
|
768
794
|
signal: signal
|
|
@@ -874,7 +900,7 @@ var Pusher = /** @class */ (function () {
|
|
|
874
900
|
_this.queue = [];
|
|
875
901
|
});
|
|
876
902
|
this.ws.addEventListener('message', function (e) {
|
|
877
|
-
var data = JSON.parse(e.data);
|
|
903
|
+
var data = JSON.parse(e.data.toString());
|
|
878
904
|
switch (data.event) {
|
|
879
905
|
case 'pusher:connection_established': {
|
|
880
906
|
_this.emmitter.emit('connected', undefined);
|
|
@@ -970,19 +996,20 @@ var preconnect = function (key) {
|
|
|
970
996
|
};
|
|
971
997
|
|
|
972
998
|
function pollStrategy(_a) {
|
|
973
|
-
var token = _a.token, publicKey = _a.publicKey, baseURL = _a.baseURL, integration = _a.integration, retryThrottledRequestMaxTimes = _a.retryThrottledRequestMaxTimes, onProgress = _a.onProgress, signal = _a.signal;
|
|
999
|
+
var token = _a.token, publicKey = _a.publicKey, baseURL = _a.baseURL, integration = _a.integration, userAgent = _a.userAgent, retryThrottledRequestMaxTimes = _a.retryThrottledRequestMaxTimes, onProgress = _a.onProgress, signal = _a.signal;
|
|
974
1000
|
return poll({
|
|
975
1001
|
check: function (signal) {
|
|
976
1002
|
return fromUrlStatus(token, {
|
|
977
1003
|
publicKey: publicKey,
|
|
978
1004
|
baseURL: baseURL,
|
|
979
1005
|
integration: integration,
|
|
1006
|
+
userAgent: userAgent,
|
|
980
1007
|
retryThrottledRequestMaxTimes: retryThrottledRequestMaxTimes,
|
|
981
1008
|
signal: signal
|
|
982
1009
|
}).then(function (response) {
|
|
983
1010
|
switch (response.status) {
|
|
984
1011
|
case Status.Error: {
|
|
985
|
-
return new UploadClientError(response.error);
|
|
1012
|
+
return new UploadClientError(response.error, response.errorCode);
|
|
986
1013
|
}
|
|
987
1014
|
case Status.Waiting: {
|
|
988
1015
|
return false;
|
|
@@ -1010,7 +1037,7 @@ function pollStrategy(_a) {
|
|
|
1010
1037
|
});
|
|
1011
1038
|
}
|
|
1012
1039
|
var pushStrategy = function (_a) {
|
|
1013
|
-
var token = _a.token, pusherKey = _a.pusherKey, signal = _a.signal,
|
|
1040
|
+
var token = _a.token, pusherKey = _a.pusherKey, signal = _a.signal, onProgress = _a.onProgress;
|
|
1014
1041
|
return new Promise(function (resolve, reject) {
|
|
1015
1042
|
var pusher = getPusher(pusherKey);
|
|
1016
1043
|
var unsubErrorHandler = pusher.onError(reject);
|
|
@@ -1020,10 +1047,9 @@ var pushStrategy = function (_a) {
|
|
|
1020
1047
|
};
|
|
1021
1048
|
onCancel(signal, function () {
|
|
1022
1049
|
destroy();
|
|
1023
|
-
reject(cancelError('
|
|
1050
|
+
reject(cancelError('pusher cancelled'));
|
|
1024
1051
|
});
|
|
1025
1052
|
pusher.subscribe(token, function (result) {
|
|
1026
|
-
stopRace();
|
|
1027
1053
|
switch (result.status) {
|
|
1028
1054
|
case Status.Progress: {
|
|
1029
1055
|
if (onProgress) {
|
|
@@ -1040,14 +1066,14 @@ var pushStrategy = function (_a) {
|
|
|
1040
1066
|
}
|
|
1041
1067
|
case Status.Error: {
|
|
1042
1068
|
destroy();
|
|
1043
|
-
reject(new UploadClientError(result.msg));
|
|
1069
|
+
reject(new UploadClientError(result.msg, result.error_code));
|
|
1044
1070
|
}
|
|
1045
1071
|
}
|
|
1046
1072
|
});
|
|
1047
1073
|
});
|
|
1048
1074
|
};
|
|
1049
1075
|
var uploadFromUrl = function (sourceUrl, _a) {
|
|
1050
|
-
var publicKey = _a.publicKey, fileName = _a.fileName, baseURL = _a.baseURL, baseCDN = _a.baseCDN, checkForUrlDuplicates = _a.checkForUrlDuplicates, saveUrlForRecurrentUploads = _a.saveUrlForRecurrentUploads, secureSignature = _a.secureSignature, secureExpire = _a.secureExpire, store = _a.store, signal = _a.signal, onProgress = _a.onProgress, source = _a.source, integration = _a.integration, retryThrottledRequestMaxTimes = _a.retryThrottledRequestMaxTimes, _b = _a.pusherKey, pusherKey = _b === void 0 ? defaultSettings.pusherKey : _b;
|
|
1076
|
+
var publicKey = _a.publicKey, fileName = _a.fileName, baseURL = _a.baseURL, baseCDN = _a.baseCDN, checkForUrlDuplicates = _a.checkForUrlDuplicates, saveUrlForRecurrentUploads = _a.saveUrlForRecurrentUploads, secureSignature = _a.secureSignature, secureExpire = _a.secureExpire, store = _a.store, signal = _a.signal, onProgress = _a.onProgress, source = _a.source, integration = _a.integration, userAgent = _a.userAgent, retryThrottledRequestMaxTimes = _a.retryThrottledRequestMaxTimes, _b = _a.pusherKey, pusherKey = _b === void 0 ? defaultSettings.pusherKey : _b;
|
|
1051
1077
|
return Promise.resolve(preconnect(pusherKey))
|
|
1052
1078
|
.then(function () {
|
|
1053
1079
|
return fromUrl(sourceUrl, {
|
|
@@ -1062,8 +1088,14 @@ var uploadFromUrl = function (sourceUrl, _a) {
|
|
|
1062
1088
|
signal: signal,
|
|
1063
1089
|
source: source,
|
|
1064
1090
|
integration: integration,
|
|
1091
|
+
userAgent: userAgent,
|
|
1065
1092
|
retryThrottledRequestMaxTimes: retryThrottledRequestMaxTimes
|
|
1066
1093
|
});
|
|
1094
|
+
})
|
|
1095
|
+
.catch(function (error) {
|
|
1096
|
+
var pusher = getPusher(pusherKey);
|
|
1097
|
+
pusher === null || pusher === void 0 ? void 0 : pusher.disconnect();
|
|
1098
|
+
return Promise.reject(error);
|
|
1067
1099
|
})
|
|
1068
1100
|
.then(function (urlResponse) {
|
|
1069
1101
|
if (urlResponse.type === TypeEnum.FileInfo) {
|
|
@@ -1078,17 +1110,17 @@ var uploadFromUrl = function (sourceUrl, _a) {
|
|
|
1078
1110
|
publicKey: publicKey,
|
|
1079
1111
|
baseURL: baseURL,
|
|
1080
1112
|
integration: integration,
|
|
1113
|
+
userAgent: userAgent,
|
|
1081
1114
|
retryThrottledRequestMaxTimes: retryThrottledRequestMaxTimes,
|
|
1082
1115
|
onProgress: onProgress,
|
|
1083
1116
|
signal: signal
|
|
1084
1117
|
});
|
|
1085
1118
|
},
|
|
1086
1119
|
function (_a) {
|
|
1087
|
-
var
|
|
1120
|
+
var signal = _a.signal;
|
|
1088
1121
|
return pushStrategy({
|
|
1089
1122
|
token: urlResponse.token,
|
|
1090
1123
|
pusherKey: pusherKey,
|
|
1091
|
-
stopRace: stopRace,
|
|
1092
1124
|
signal: signal,
|
|
1093
1125
|
onProgress: onProgress
|
|
1094
1126
|
});
|
|
@@ -1107,6 +1139,7 @@ var uploadFromUrl = function (sourceUrl, _a) {
|
|
|
1107
1139
|
publicKey: publicKey,
|
|
1108
1140
|
baseURL: baseURL,
|
|
1109
1141
|
integration: integration,
|
|
1142
|
+
userAgent: userAgent,
|
|
1110
1143
|
retryThrottledRequestMaxTimes: retryThrottledRequestMaxTimes,
|
|
1111
1144
|
onProgress: onProgress,
|
|
1112
1145
|
signal: signal
|
|
@@ -1116,13 +1149,14 @@ var uploadFromUrl = function (sourceUrl, _a) {
|
|
|
1116
1149
|
};
|
|
1117
1150
|
|
|
1118
1151
|
var uploadFromUploaded = function (uuid, _a) {
|
|
1119
|
-
var publicKey = _a.publicKey, fileName = _a.fileName, baseURL = _a.baseURL, signal = _a.signal, onProgress = _a.onProgress, source = _a.source, integration = _a.integration, retryThrottledRequestMaxTimes = _a.retryThrottledRequestMaxTimes, baseCDN = _a.baseCDN;
|
|
1152
|
+
var publicKey = _a.publicKey, fileName = _a.fileName, baseURL = _a.baseURL, signal = _a.signal, onProgress = _a.onProgress, source = _a.source, integration = _a.integration, userAgent = _a.userAgent, retryThrottledRequestMaxTimes = _a.retryThrottledRequestMaxTimes, baseCDN = _a.baseCDN;
|
|
1120
1153
|
return info(uuid, {
|
|
1121
1154
|
publicKey: publicKey,
|
|
1122
1155
|
baseURL: baseURL,
|
|
1123
1156
|
signal: signal,
|
|
1124
1157
|
source: source,
|
|
1125
1158
|
integration: integration,
|
|
1159
|
+
userAgent: userAgent,
|
|
1126
1160
|
retryThrottledRequestMaxTimes: retryThrottledRequestMaxTimes
|
|
1127
1161
|
})
|
|
1128
1162
|
.then(function (fileInfo) { return new UploadcareFile(fileInfo, { baseCDN: baseCDN, fileName: fileName }); })
|
|
@@ -1176,6 +1210,18 @@ var isMultipart = function (fileSize, multipartMinFileSize) {
|
|
|
1176
1210
|
return fileSize >= multipartMinFileSize;
|
|
1177
1211
|
};
|
|
1178
1212
|
|
|
1213
|
+
var sliceChunk = function (file, index, fileSize, chunkSize) {
|
|
1214
|
+
var start = chunkSize * index;
|
|
1215
|
+
var end = Math.min(start + chunkSize, fileSize);
|
|
1216
|
+
return file.slice(start, end);
|
|
1217
|
+
};
|
|
1218
|
+
|
|
1219
|
+
function prepareChunks(file, fileSize, chunkSize) {
|
|
1220
|
+
return function (index) {
|
|
1221
|
+
return sliceChunk(file, index, fileSize, chunkSize);
|
|
1222
|
+
};
|
|
1223
|
+
}
|
|
1224
|
+
|
|
1179
1225
|
var runWithConcurrency = function (concurrency, tasks) {
|
|
1180
1226
|
return new Promise(function (resolve, reject) {
|
|
1181
1227
|
var results = [];
|
|
@@ -1211,11 +1257,6 @@ var runWithConcurrency = function (concurrency, tasks) {
|
|
|
1211
1257
|
});
|
|
1212
1258
|
};
|
|
1213
1259
|
|
|
1214
|
-
var getChunk = function (file, index, fileSize, chunkSize) {
|
|
1215
|
-
var start = chunkSize * index;
|
|
1216
|
-
var end = Math.min(start + chunkSize, fileSize);
|
|
1217
|
-
return file.slice(start, end);
|
|
1218
|
-
};
|
|
1219
1260
|
var uploadPartWithRetry = function (chunk, url, _a) {
|
|
1220
1261
|
var publicKey = _a.publicKey, onProgress = _a.onProgress, signal = _a.signal, integration = _a.integration, multipartMaxAttempts = _a.multipartMaxAttempts;
|
|
1221
1262
|
return retrier(function (_a) {
|
|
@@ -1234,7 +1275,7 @@ var uploadPartWithRetry = function (chunk, url, _a) {
|
|
|
1234
1275
|
});
|
|
1235
1276
|
};
|
|
1236
1277
|
var uploadMultipart = function (file, _a) {
|
|
1237
|
-
var publicKey = _a.publicKey, fileName = _a.fileName, fileSize = _a.fileSize, baseURL = _a.baseURL, secureSignature = _a.secureSignature, secureExpire = _a.secureExpire, store = _a.store, signal = _a.signal, onProgress = _a.onProgress, source = _a.source, integration = _a.integration, retryThrottledRequestMaxTimes = _a.retryThrottledRequestMaxTimes, contentType = _a.contentType, _b = _a.multipartChunkSize, multipartChunkSize = _b === void 0 ? defaultSettings.multipartChunkSize : _b, _c = _a.maxConcurrentRequests, maxConcurrentRequests = _c === void 0 ? defaultSettings.maxConcurrentRequests : _c, _d = _a.multipartMaxAttempts, multipartMaxAttempts = _d === void 0 ? defaultSettings.multipartMaxAttempts : _d, baseCDN = _a.baseCDN;
|
|
1278
|
+
var publicKey = _a.publicKey, fileName = _a.fileName, fileSize = _a.fileSize, baseURL = _a.baseURL, secureSignature = _a.secureSignature, secureExpire = _a.secureExpire, store = _a.store, signal = _a.signal, onProgress = _a.onProgress, source = _a.source, integration = _a.integration, userAgent = _a.userAgent, retryThrottledRequestMaxTimes = _a.retryThrottledRequestMaxTimes, contentType = _a.contentType, _b = _a.multipartChunkSize, multipartChunkSize = _b === void 0 ? defaultSettings.multipartChunkSize : _b, _c = _a.maxConcurrentRequests, maxConcurrentRequests = _c === void 0 ? defaultSettings.maxConcurrentRequests : _c, _d = _a.multipartMaxAttempts, multipartMaxAttempts = _d === void 0 ? defaultSettings.multipartMaxAttempts : _d, baseCDN = _a.baseCDN;
|
|
1238
1279
|
var size = fileSize || getFileSize(file);
|
|
1239
1280
|
var progressValues;
|
|
1240
1281
|
var createProgressHandler = function (size, index) {
|
|
@@ -1263,14 +1304,16 @@ var uploadMultipart = function (file, _a) {
|
|
|
1263
1304
|
signal: signal,
|
|
1264
1305
|
source: source,
|
|
1265
1306
|
integration: integration,
|
|
1307
|
+
userAgent: userAgent,
|
|
1266
1308
|
retryThrottledRequestMaxTimes: retryThrottledRequestMaxTimes
|
|
1267
1309
|
})
|
|
1268
1310
|
.then(function (_a) {
|
|
1269
1311
|
var uuid = _a.uuid, parts = _a.parts;
|
|
1312
|
+
var getChunk = prepareChunks(file, size, multipartChunkSize);
|
|
1270
1313
|
return Promise.all([
|
|
1271
1314
|
uuid,
|
|
1272
1315
|
runWithConcurrency(maxConcurrentRequests, parts.map(function (url, index) { return function () {
|
|
1273
|
-
return uploadPartWithRetry(getChunk(
|
|
1316
|
+
return uploadPartWithRetry(getChunk(index), url, {
|
|
1274
1317
|
publicKey: publicKey,
|
|
1275
1318
|
onProgress: createProgressHandler(parts.length, index),
|
|
1276
1319
|
signal: signal,
|
|
@@ -1287,6 +1330,7 @@ var uploadMultipart = function (file, _a) {
|
|
|
1287
1330
|
baseURL: baseURL,
|
|
1288
1331
|
source: source,
|
|
1289
1332
|
integration: integration,
|
|
1333
|
+
userAgent: userAgent,
|
|
1290
1334
|
retryThrottledRequestMaxTimes: retryThrottledRequestMaxTimes
|
|
1291
1335
|
});
|
|
1292
1336
|
})
|
|
@@ -1301,6 +1345,7 @@ var uploadMultipart = function (file, _a) {
|
|
|
1301
1345
|
baseURL: baseURL,
|
|
1302
1346
|
source: source,
|
|
1303
1347
|
integration: integration,
|
|
1348
|
+
userAgent: userAgent,
|
|
1304
1349
|
retryThrottledRequestMaxTimes: retryThrottledRequestMaxTimes,
|
|
1305
1350
|
onProgress: onProgress,
|
|
1306
1351
|
signal: signal
|
|
@@ -1314,7 +1359,7 @@ var uploadMultipart = function (file, _a) {
|
|
|
1314
1359
|
* Uploads file from provided data.
|
|
1315
1360
|
*/
|
|
1316
1361
|
function uploadFile(data, _a) {
|
|
1317
|
-
var publicKey = _a.publicKey, fileName = _a.fileName, _b = _a.baseURL, baseURL = _b === void 0 ? defaultSettings.baseURL : _b, secureSignature = _a.secureSignature, secureExpire = _a.secureExpire, store = _a.store, signal = _a.signal, onProgress = _a.onProgress, source = _a.source, integration = _a.integration, retryThrottledRequestMaxTimes = _a.retryThrottledRequestMaxTimes, contentType = _a.contentType,
|
|
1362
|
+
var publicKey = _a.publicKey, fileName = _a.fileName, _b = _a.baseURL, baseURL = _b === void 0 ? defaultSettings.baseURL : _b, secureSignature = _a.secureSignature, secureExpire = _a.secureExpire, store = _a.store, signal = _a.signal, onProgress = _a.onProgress, source = _a.source, integration = _a.integration, userAgent = _a.userAgent, retryThrottledRequestMaxTimes = _a.retryThrottledRequestMaxTimes, contentType = _a.contentType, multipartChunkSize = _a.multipartChunkSize, multipartMaxAttempts = _a.multipartMaxAttempts, maxConcurrentRequests = _a.maxConcurrentRequests, _c = _a.baseCDN, baseCDN = _c === void 0 ? defaultSettings.baseCDN : _c, checkForUrlDuplicates = _a.checkForUrlDuplicates, saveUrlForRecurrentUploads = _a.saveUrlForRecurrentUploads, pusherKey = _a.pusherKey;
|
|
1318
1363
|
if (isFileData(data)) {
|
|
1319
1364
|
var fileSize = getFileSize(data);
|
|
1320
1365
|
if (isMultipart(fileSize)) {
|
|
@@ -1322,6 +1367,7 @@ function uploadFile(data, _a) {
|
|
|
1322
1367
|
publicKey: publicKey,
|
|
1323
1368
|
contentType: contentType,
|
|
1324
1369
|
multipartChunkSize: multipartChunkSize,
|
|
1370
|
+
multipartMaxAttempts: multipartMaxAttempts,
|
|
1325
1371
|
fileName: fileName,
|
|
1326
1372
|
baseURL: baseURL,
|
|
1327
1373
|
secureSignature: secureSignature,
|
|
@@ -1331,6 +1377,8 @@ function uploadFile(data, _a) {
|
|
|
1331
1377
|
onProgress: onProgress,
|
|
1332
1378
|
source: source,
|
|
1333
1379
|
integration: integration,
|
|
1380
|
+
userAgent: userAgent,
|
|
1381
|
+
maxConcurrentRequests: maxConcurrentRequests,
|
|
1334
1382
|
retryThrottledRequestMaxTimes: retryThrottledRequestMaxTimes,
|
|
1335
1383
|
baseCDN: baseCDN
|
|
1336
1384
|
});
|
|
@@ -1346,6 +1394,7 @@ function uploadFile(data, _a) {
|
|
|
1346
1394
|
onProgress: onProgress,
|
|
1347
1395
|
source: source,
|
|
1348
1396
|
integration: integration,
|
|
1397
|
+
userAgent: userAgent,
|
|
1349
1398
|
retryThrottledRequestMaxTimes: retryThrottledRequestMaxTimes,
|
|
1350
1399
|
baseCDN: baseCDN
|
|
1351
1400
|
});
|
|
@@ -1355,6 +1404,9 @@ function uploadFile(data, _a) {
|
|
|
1355
1404
|
publicKey: publicKey,
|
|
1356
1405
|
fileName: fileName,
|
|
1357
1406
|
baseURL: baseURL,
|
|
1407
|
+
baseCDN: baseCDN,
|
|
1408
|
+
checkForUrlDuplicates: checkForUrlDuplicates,
|
|
1409
|
+
saveUrlForRecurrentUploads: saveUrlForRecurrentUploads,
|
|
1358
1410
|
secureSignature: secureSignature,
|
|
1359
1411
|
secureExpire: secureExpire,
|
|
1360
1412
|
store: store,
|
|
@@ -1362,8 +1414,9 @@ function uploadFile(data, _a) {
|
|
|
1362
1414
|
onProgress: onProgress,
|
|
1363
1415
|
source: source,
|
|
1364
1416
|
integration: integration,
|
|
1417
|
+
userAgent: userAgent,
|
|
1365
1418
|
retryThrottledRequestMaxTimes: retryThrottledRequestMaxTimes,
|
|
1366
|
-
|
|
1419
|
+
pusherKey: pusherKey
|
|
1367
1420
|
});
|
|
1368
1421
|
}
|
|
1369
1422
|
if (isUuid(data)) {
|
|
@@ -1375,6 +1428,7 @@ function uploadFile(data, _a) {
|
|
|
1375
1428
|
onProgress: onProgress,
|
|
1376
1429
|
source: source,
|
|
1377
1430
|
integration: integration,
|
|
1431
|
+
userAgent: userAgent,
|
|
1378
1432
|
retryThrottledRequestMaxTimes: retryThrottledRequestMaxTimes,
|
|
1379
1433
|
baseCDN: baseCDN
|
|
1380
1434
|
});
|
|
@@ -1389,8 +1443,7 @@ var UploadcareGroup = /** @class */ (function () {
|
|
|
1389
1443
|
this.filesCount = groupInfo.filesCount;
|
|
1390
1444
|
this.totalSize = Object.values(groupInfo.files).reduce(function (acc, file) { return acc + file.size; }, 0);
|
|
1391
1445
|
this.isStored = !!groupInfo.datetimeStored;
|
|
1392
|
-
this.isImage = !!Object.values(groupInfo.files).filter(function (file) { return file.isImage; })
|
|
1393
|
-
.length;
|
|
1446
|
+
this.isImage = !!Object.values(groupInfo.files).filter(function (file) { return file.isImage; }).length;
|
|
1394
1447
|
this.cdnUrl = groupInfo.cdnUrl;
|
|
1395
1448
|
this.files = files;
|
|
1396
1449
|
this.createdAt = groupInfo.datetimeCreated;
|
|
@@ -1437,7 +1490,7 @@ var isUrlArray = function (data) {
|
|
|
1437
1490
|
};
|
|
1438
1491
|
|
|
1439
1492
|
function uploadFileGroup(data, _a) {
|
|
1440
|
-
var publicKey = _a.publicKey, fileName = _a.fileName, _b = _a.baseURL, baseURL = _b === void 0 ? defaultSettings.baseURL : _b, secureSignature = _a.secureSignature, secureExpire = _a.secureExpire, store = _a.store, signal = _a.signal, onProgress = _a.onProgress, source = _a.source, integration = _a.integration, retryThrottledRequestMaxTimes = _a.retryThrottledRequestMaxTimes, contentType = _a.contentType, _c = _a.multipartChunkSize, multipartChunkSize = _c === void 0 ? defaultSettings.multipartChunkSize : _c, _d = _a.baseCDN, baseCDN = _d === void 0 ? defaultSettings.baseCDN : _d, jsonpCallback = _a.jsonpCallback, defaultEffects = _a.defaultEffects;
|
|
1493
|
+
var publicKey = _a.publicKey, fileName = _a.fileName, _b = _a.baseURL, baseURL = _b === void 0 ? defaultSettings.baseURL : _b, secureSignature = _a.secureSignature, secureExpire = _a.secureExpire, store = _a.store, signal = _a.signal, onProgress = _a.onProgress, source = _a.source, integration = _a.integration, userAgent = _a.userAgent, retryThrottledRequestMaxTimes = _a.retryThrottledRequestMaxTimes, contentType = _a.contentType, _c = _a.multipartChunkSize, multipartChunkSize = _c === void 0 ? defaultSettings.multipartChunkSize : _c, _d = _a.baseCDN, baseCDN = _d === void 0 ? defaultSettings.baseCDN : _d, jsonpCallback = _a.jsonpCallback, defaultEffects = _a.defaultEffects;
|
|
1441
1494
|
if (!isFileDataArray(data) && !isUrlArray(data) && !isUuidArray(data)) {
|
|
1442
1495
|
throw new TypeError("Group uploading from \"" + data + "\" is not supported");
|
|
1443
1496
|
}
|
|
@@ -1470,6 +1523,7 @@ function uploadFileGroup(data, _a) {
|
|
|
1470
1523
|
onProgress: createProgressHandler(filesCount, index),
|
|
1471
1524
|
source: source,
|
|
1472
1525
|
integration: integration,
|
|
1526
|
+
userAgent: userAgent,
|
|
1473
1527
|
retryThrottledRequestMaxTimes: retryThrottledRequestMaxTimes,
|
|
1474
1528
|
contentType: contentType,
|
|
1475
1529
|
multipartChunkSize: multipartChunkSize,
|
|
@@ -1493,6 +1547,7 @@ function uploadFileGroup(data, _a) {
|
|
|
1493
1547
|
signal: signal,
|
|
1494
1548
|
source: source,
|
|
1495
1549
|
integration: integration,
|
|
1550
|
+
userAgent: userAgent,
|
|
1496
1551
|
retryThrottledRequestMaxTimes: retryThrottledRequestMaxTimes
|
|
1497
1552
|
}).then(function (groupInfo) { return new UploadcareGroup(groupInfo, filesInGroup); });
|
|
1498
1553
|
});
|
|
@@ -1561,6 +1616,8 @@ var UploadClient = /** @class */ (function () {
|
|
|
1561
1616
|
|
|
1562
1617
|
exports.AbortController = AbortController;
|
|
1563
1618
|
exports.UploadClient = UploadClient;
|
|
1619
|
+
exports.UploadcareFile = UploadcareFile;
|
|
1620
|
+
exports.UploadcareGroup = UploadcareGroup;
|
|
1564
1621
|
exports.base = base;
|
|
1565
1622
|
exports.fromUrl = fromUrl;
|
|
1566
1623
|
exports.fromUrlStatus = fromUrlStatus;
|
|
@@ -1570,5 +1627,9 @@ exports.info = info;
|
|
|
1570
1627
|
exports.multipartComplete = multipartComplete;
|
|
1571
1628
|
exports.multipartStart = multipartStart;
|
|
1572
1629
|
exports.multipartUpload = multipartUpload;
|
|
1630
|
+
exports.uploadBase = uploadFromObject;
|
|
1573
1631
|
exports.uploadFile = uploadFile;
|
|
1574
1632
|
exports.uploadFileGroup = uploadFileGroup;
|
|
1633
|
+
exports.uploadFromUploaded = uploadFromUploaded;
|
|
1634
|
+
exports.uploadFromUrl = uploadFromUrl;
|
|
1635
|
+
exports.uploadMultipart = uploadMultipart;
|