@sparkvault/sdk-mobile 5.3.0 → 6.0.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 +4 -35
- package/dist/errors.d.ts +11 -3
- package/dist/errors.js +7 -3
- package/dist/errors.js.map +1 -1
- package/dist/identity-dialog.d.ts +2 -7
- package/dist/identity-dialog.js +62 -133
- package/dist/identity-dialog.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/ingots.d.ts +6 -0
- package/dist/ingots.js +8 -3
- package/dist/ingots.js.map +1 -1
- package/dist/tus.d.ts +21 -10
- package/dist/tus.js +97 -100
- package/dist/tus.js.map +1 -1
- package/dist/types.d.ts +17 -6
- package/package.json +1 -1
- package/src/errors.ts +11 -6
- package/src/identity-dialog.tsx +89 -181
- package/src/index.ts +1 -0
- package/src/ingots.ts +9 -4
- package/src/tus.ts +176 -126
- package/src/types.ts +17 -6
package/dist/tus.js
CHANGED
|
@@ -45,22 +45,6 @@ function getErrorName(err) {
|
|
|
45
45
|
function getErrorMessage(err) {
|
|
46
46
|
return err instanceof Error ? err.message : String(err);
|
|
47
47
|
}
|
|
48
|
-
function inferTusPhase(error) {
|
|
49
|
-
const message = error.message;
|
|
50
|
-
if (message.includes('cancelled') || message.includes('aborted'))
|
|
51
|
-
return 'cancelled';
|
|
52
|
-
if (message.includes('timeout') || message.includes('timed out'))
|
|
53
|
-
return 'timeout';
|
|
54
|
-
if (message.includes('stall'))
|
|
55
|
-
return 'stalled';
|
|
56
|
-
if (message.includes('network'))
|
|
57
|
-
return 'network';
|
|
58
|
-
if (message.includes('create') || message.includes('POST'))
|
|
59
|
-
return 'create';
|
|
60
|
-
if (message.includes('upload') || message.includes('PATCH') || message.includes('Chunk'))
|
|
61
|
-
return 'upload';
|
|
62
|
-
return 'unknown';
|
|
63
|
-
}
|
|
64
48
|
function ensureNotAborted(signal) {
|
|
65
49
|
if (signal?.aborted) {
|
|
66
50
|
throw new TusUploadError('Upload cancelled', { phase: 'cancelled' });
|
|
@@ -77,6 +61,61 @@ function parseIntegerHeader(raw, minimum) {
|
|
|
77
61
|
const value = Number(raw);
|
|
78
62
|
return Number.isSafeInteger(value) && value >= minimum ? value : null;
|
|
79
63
|
}
|
|
64
|
+
/**
|
|
65
|
+
* Forge's answers that mean the tus session no longer exists: it expired,
|
|
66
|
+
* or a DELETE terminated it. One list, so every request that can meet a
|
|
67
|
+
* dead session (HEAD, the finalization PATCH, the OS engine's PATCHes,
|
|
68
|
+
* DELETE) and the app's own session bookkeeping agree on what "gone" is.
|
|
69
|
+
*/
|
|
70
|
+
const SESSION_GONE_STATUSES = new Set([404, 410]);
|
|
71
|
+
/**
|
|
72
|
+
* True when a Forge status says the tus session is gone (expired or
|
|
73
|
+
* terminated): the persisted session is worthless, and a caller starts a
|
|
74
|
+
* fresh upload instead of retrying it.
|
|
75
|
+
*/
|
|
76
|
+
export function isSessionGone(status) {
|
|
77
|
+
return SESSION_GONE_STATUSES.has(status);
|
|
78
|
+
}
|
|
79
|
+
function sessionLostError(status, context, phase, cause = null) {
|
|
80
|
+
return new TusUploadError(`TUS session no longer exists on the server (${status})`, {
|
|
81
|
+
cause,
|
|
82
|
+
httpStatus: status,
|
|
83
|
+
...context,
|
|
84
|
+
phase,
|
|
85
|
+
sessionLost: true,
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* The one seam every tus request sent through `config.fetch` (the create
|
|
90
|
+
* POST, HEAD, the finalization PATCH, DELETE) passes its rejection through,
|
|
91
|
+
* so a request that never got an HTTP answer is classified once and the
|
|
92
|
+
* same way everywhere. The caller's own abort is `cancelled` and the request
|
|
93
|
+
* timeout is `timeout`: both arrive as an `AbortError` and the signal tells
|
|
94
|
+
* them apart, and an XHR adapter's `TimeoutError` is a timeout too (the
|
|
95
|
+
* same contract http.ts honours). An SDK error passes through untouched.
|
|
96
|
+
* Everything else is `network` (an offline device, a DNS failure, a reset
|
|
97
|
+
* connection), so `isNetworkError` holds and the caller retries instead of
|
|
98
|
+
* charging the failure to the file. Chunk PATCHes ride XHR directly and
|
|
99
|
+
* classify their own events (see uploadChunk).
|
|
100
|
+
*/
|
|
101
|
+
async function tusRequest(config, url, init, label, context = {}) {
|
|
102
|
+
try {
|
|
103
|
+
return await config.fetch(url, init);
|
|
104
|
+
}
|
|
105
|
+
catch (err) {
|
|
106
|
+
if (err instanceof SparkVaultMobileError)
|
|
107
|
+
throw err;
|
|
108
|
+
const cause = err instanceof Error ? err : null;
|
|
109
|
+
const name = getErrorName(err);
|
|
110
|
+
if (name === 'AbortError' && init.signal?.aborted) {
|
|
111
|
+
throw new TusUploadError('Upload cancelled', { cause, ...context, phase: 'cancelled' });
|
|
112
|
+
}
|
|
113
|
+
if (name === 'AbortError' || name === 'TimeoutError') {
|
|
114
|
+
throw new TusUploadError(`${label} timed out`, { cause, ...context, phase: 'timeout' });
|
|
115
|
+
}
|
|
116
|
+
throw new TusUploadError(`${label} failed: ${getErrorMessage(err)}`, { cause, ...context, phase: 'network' });
|
|
117
|
+
}
|
|
118
|
+
}
|
|
80
119
|
/**
|
|
81
120
|
* Case-insensitive header lookup for adapter results. Native HTTP stacks
|
|
82
121
|
* hand headers back in whatever case they please (iOS lower-cases them),
|
|
@@ -108,7 +147,7 @@ function resolveSessionSource(options) {
|
|
|
108
147
|
async function createTusUpload(config, parsed, fileSize, filename, contentType, signal) {
|
|
109
148
|
ensureNotAborted(signal);
|
|
110
149
|
const metadata = `filename ${base64EncodeUtf8(filename)},filetype ${base64EncodeUtf8(contentType || 'application/octet-stream')}`;
|
|
111
|
-
const response = await config
|
|
150
|
+
const response = await tusRequest(config, parsed.tusEndpoint, {
|
|
112
151
|
method: 'POST',
|
|
113
152
|
headers: {
|
|
114
153
|
'Tus-Resumable': TUS_VERSION,
|
|
@@ -118,17 +157,7 @@ async function createTusUpload(config, parsed, fileSize, filename, contentType,
|
|
|
118
157
|
},
|
|
119
158
|
signal,
|
|
120
159
|
timeoutMs: config.tusPostTimeoutMs,
|
|
121
|
-
}
|
|
122
|
-
if (getErrorName(err) === 'AbortError') {
|
|
123
|
-
throw new TusUploadError('TUS POST request timed out', {
|
|
124
|
-
cause: err instanceof Error ? err : null,
|
|
125
|
-
filename,
|
|
126
|
-
fileSize,
|
|
127
|
-
phase: 'timeout',
|
|
128
|
-
});
|
|
129
|
-
}
|
|
130
|
-
throw err;
|
|
131
|
-
});
|
|
160
|
+
}, 'TUS POST request', { filename, fileSize });
|
|
132
161
|
if (!response.ok) {
|
|
133
162
|
const errorText = await response.text().catch(() => '');
|
|
134
163
|
// A 402 here is a billable gate hit mid-create (e.g. storage/bandwidth pool
|
|
@@ -173,16 +202,17 @@ async function createTusUpload(config, parsed, fileSize, filename, contentType,
|
|
|
173
202
|
* Ask Forge where a session stands (tus HEAD). This is the only way to learn
|
|
174
203
|
* what a background URLSession delivered after the process was killed, and
|
|
175
204
|
* what a failed attempt left behind — so resume never re-sends bytes the
|
|
176
|
-
* server holds. A
|
|
177
|
-
* error carries `sessionLost` so the caller
|
|
178
|
-
* creates a fresh one rather than retrying
|
|
179
|
-
* (a 5xx, an auth rejection, a timeout)
|
|
205
|
+
* server holds. A status `isSessionGone` recognises means the session
|
|
206
|
+
* expired or was terminated: the error carries `sessionLost` so the caller
|
|
207
|
+
* drops its persisted session and creates a fresh one rather than retrying
|
|
208
|
+
* a dead URL. Any other failure (a 5xx, an auth rejection, a timeout)
|
|
209
|
+
* leaves `sessionLost` false: the
|
|
180
210
|
* session may well be intact, and treating it as dead would re-upload a
|
|
181
211
|
* whole file over a blip.
|
|
182
212
|
*/
|
|
183
213
|
async function headTusSession(config, uploadUrl, istk, signal, context = {}) {
|
|
184
214
|
ensureNotAborted(signal);
|
|
185
|
-
const response = await config
|
|
215
|
+
const response = await tusRequest(config, uploadUrl, {
|
|
186
216
|
method: 'HEAD',
|
|
187
217
|
headers: {
|
|
188
218
|
'Tus-Resumable': TUS_VERSION,
|
|
@@ -190,25 +220,9 @@ async function headTusSession(config, uploadUrl, istk, signal, context = {}) {
|
|
|
190
220
|
},
|
|
191
221
|
signal,
|
|
192
222
|
timeoutMs: config.tusPostTimeoutMs,
|
|
193
|
-
}
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
// caller's signal tells them apart.
|
|
197
|
-
throw new TusUploadError(signal?.aborted ? 'Upload cancelled' : 'TUS HEAD request timed out', {
|
|
198
|
-
cause: err instanceof Error ? err : null,
|
|
199
|
-
...context,
|
|
200
|
-
phase: signal?.aborted ? 'cancelled' : 'timeout',
|
|
201
|
-
});
|
|
202
|
-
}
|
|
203
|
-
throw err;
|
|
204
|
-
});
|
|
205
|
-
if (response.status === 404 || response.status === 410) {
|
|
206
|
-
throw new TusUploadError(`TUS session no longer exists on the server (${response.status})`, {
|
|
207
|
-
httpStatus: response.status,
|
|
208
|
-
...context,
|
|
209
|
-
phase: 'create',
|
|
210
|
-
sessionLost: true,
|
|
211
|
-
});
|
|
223
|
+
}, 'TUS HEAD request', context);
|
|
224
|
+
if (isSessionGone(response.status)) {
|
|
225
|
+
throw sessionLostError(response.status, context, 'create');
|
|
212
226
|
}
|
|
213
227
|
if (!response.ok) {
|
|
214
228
|
const errorText = await response.text().catch(() => '');
|
|
@@ -240,11 +254,12 @@ async function headTusSession(config, uploadUrl, istk, signal, context = {}) {
|
|
|
240
254
|
* to the status poll and could report a never-activated ingot as done.
|
|
241
255
|
*
|
|
242
256
|
* 409 means another finalizer holds the lease right now: retry later, the
|
|
243
|
-
* session is intact.
|
|
257
|
+
* session is intact. A status `isSessionGone` recognises means the session
|
|
258
|
+
* is gone (`sessionLost`).
|
|
244
259
|
*/
|
|
245
260
|
async function confirmTusFinalization(config, uploadUrl, istk, fileSize, signal, context = {}) {
|
|
246
261
|
ensureNotAborted(signal);
|
|
247
|
-
const response = await config
|
|
262
|
+
const response = await tusRequest(config, uploadUrl, {
|
|
248
263
|
method: 'PATCH',
|
|
249
264
|
headers: {
|
|
250
265
|
'Tus-Resumable': TUS_VERSION,
|
|
@@ -254,23 +269,9 @@ async function confirmTusFinalization(config, uploadUrl, istk, fileSize, signal,
|
|
|
254
269
|
},
|
|
255
270
|
signal,
|
|
256
271
|
timeoutMs: config.tusChunkTimeoutMs,
|
|
257
|
-
}
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
cause: err instanceof Error ? err : null,
|
|
261
|
-
...context,
|
|
262
|
-
phase: signal?.aborted ? 'cancelled' : 'timeout',
|
|
263
|
-
});
|
|
264
|
-
}
|
|
265
|
-
throw err;
|
|
266
|
-
});
|
|
267
|
-
if (response.status === 404 || response.status === 410) {
|
|
268
|
-
throw new TusUploadError(`TUS session no longer exists on the server (${response.status})`, {
|
|
269
|
-
httpStatus: response.status,
|
|
270
|
-
...context,
|
|
271
|
-
phase: 'create',
|
|
272
|
-
sessionLost: true,
|
|
273
|
-
});
|
|
272
|
+
}, 'TUS finalization request', context);
|
|
273
|
+
if (isSessionGone(response.status)) {
|
|
274
|
+
throw sessionLostError(response.status, context, 'create');
|
|
274
275
|
}
|
|
275
276
|
if (response.status === 409) {
|
|
276
277
|
throw new TusUploadError('TUS finalization is already in progress on the server; retry shortly', {
|
|
@@ -426,12 +427,12 @@ async function uploadWholeFileInBackground(uploader, uploadUrl, istk, fileUri, o
|
|
|
426
427
|
}
|
|
427
428
|
const body = typeof result.body === 'string' ? result.body : '';
|
|
428
429
|
if (result.status >= 200 && result.status < 300) {
|
|
429
|
-
|
|
430
|
-
//
|
|
431
|
-
//
|
|
432
|
-
//
|
|
433
|
-
//
|
|
434
|
-
return
|
|
430
|
+
// Forge always answers a PATCH with a readable Upload-Offset. A 2xx
|
|
431
|
+
// without one is not Forge (a captive portal's 200 page is the classic
|
|
432
|
+
// case), so report no advance: the stall guard fails the attempt and the
|
|
433
|
+
// next one asks Forge (HEAD) instead of marking bytes uploaded that may
|
|
434
|
+
// never have arrived. Same strict parse as the XHR path (uploadChunk).
|
|
435
|
+
return parseIntegerHeader(getHeaderIgnoreCase(result.headers, 'Upload-Offset'), 0) ?? offset;
|
|
435
436
|
}
|
|
436
437
|
const gateError = gateErrorFromBody(result.status, parseErrorBody(body));
|
|
437
438
|
if (gateError) {
|
|
@@ -447,9 +448,10 @@ async function uploadWholeFileInBackground(uploader, uploadUrl, istk, fileUri, o
|
|
|
447
448
|
* taxonomy, so a caller sees the same `TusUploadError` phases and typed gate
|
|
448
449
|
* errors whichever engine carried the bytes. Forge's status and body ride
|
|
449
450
|
* through untouched: a 402 becomes the gate error the XHR path throws, a
|
|
450
|
-
*
|
|
451
|
-
* keeps its number for the caller's own policy
|
|
452
|
-
* retry-later, not a lost session). The
|
|
451
|
+
* status `isSessionGone` recognises marks the session lost exactly as HEAD
|
|
452
|
+
* would, and any other status keeps its number for the caller's own policy
|
|
453
|
+
* (a 409 during finalize is a retry-later, not a lost session). The
|
|
454
|
+
* remaining kinds are transport
|
|
453
455
|
* outcomes: the caller's own abort is `cancelled`; an OS-ended task
|
|
454
456
|
* (`interrupted`) is a network failure, because the right response is the
|
|
455
457
|
* same as for a dropped connection: resume from the server offset. Anything
|
|
@@ -472,11 +474,10 @@ export function mapBackgroundTransferError(err, context = {}) {
|
|
|
472
474
|
const gateError = gateErrorFromBody(status, parseErrorBody(body));
|
|
473
475
|
if (gateError)
|
|
474
476
|
return gateError;
|
|
477
|
+
if (isSessionGone(status))
|
|
478
|
+
return sessionLostError(status, context, 'upload', err);
|
|
475
479
|
}
|
|
476
|
-
|
|
477
|
-
return new TusUploadError(sessionLost
|
|
478
|
-
? `TUS session no longer exists on the server (${status})`
|
|
479
|
-
: `Background chunk upload failed: ${status ?? 'unknown status'} - ${body.substring(0, 200)}`, { cause: err, httpStatus: status ?? null, ...context, phase: 'upload', sessionLost });
|
|
480
|
+
return new TusUploadError(`Background chunk upload failed: ${status ?? 'unknown status'} - ${body.substring(0, 200)}`, { cause: err, httpStatus: status ?? null, ...context, phase: 'upload' });
|
|
480
481
|
}
|
|
481
482
|
case 'cancelled':
|
|
482
483
|
return new TusUploadError('Upload cancelled', { cause: err, ...context, phase: 'cancelled' });
|
|
@@ -679,10 +680,13 @@ export class MobileTusUploader {
|
|
|
679
680
|
// in a generic TusUploadError.
|
|
680
681
|
if (err instanceof SparkVaultMobileError)
|
|
681
682
|
throw err;
|
|
683
|
+
// Only a fileReader read or an onSessionCreated hook can throw anything
|
|
684
|
+
// else here: every request classifies its own failure (tusRequest,
|
|
685
|
+
// uploadChunk, the adapters). Those are the caller's errors, wrapped
|
|
686
|
+
// with the file context and nothing inferred about them.
|
|
682
687
|
throw TusUploadError.fromError(error, {
|
|
683
688
|
filename: options.filename,
|
|
684
689
|
fileSize: options.fileSize,
|
|
685
|
-
phase: inferTusPhase(error),
|
|
686
690
|
});
|
|
687
691
|
}
|
|
688
692
|
}
|
|
@@ -722,9 +726,10 @@ export class MobileTusUploader {
|
|
|
722
726
|
* and will not resume after all: the tus DELETE lets Forge drop the chunk
|
|
723
727
|
* objects it holds (nothing else cleans them up before expiry) and settle
|
|
724
728
|
* the partial transfer's billing. Resolves once the session is gone,
|
|
725
|
-
* which includes Forge answering
|
|
726
|
-
* any other failure rejects with a
|
|
727
|
-
*
|
|
729
|
+
* which includes Forge answering a status `isSessionGone` recognises
|
|
730
|
+
* (already expired or terminated); any other failure rejects with a
|
|
731
|
+
* `TusUploadError` (a timeout, a connectivity failure, or the status
|
|
732
|
+
* Forge sent) so the caller can retry later. Not bound to any
|
|
728
733
|
* abort signal: a terminate is the last thing a caller does with a
|
|
729
734
|
* session, never something to cancel.
|
|
730
735
|
*/
|
|
@@ -736,16 +741,8 @@ export class MobileTusUploader {
|
|
|
736
741
|
if (backgroundTransfer) {
|
|
737
742
|
await this.cancelBackgroundTransfer(backgroundTransfer, session.uploadUrl);
|
|
738
743
|
}
|
|
739
|
-
const response = await this.requestTerminate(session.uploadUrl, session.istk)
|
|
740
|
-
|
|
741
|
-
throw new TusUploadError('TUS DELETE request timed out', {
|
|
742
|
-
cause: err instanceof Error ? err : null,
|
|
743
|
-
phase: 'timeout',
|
|
744
|
-
});
|
|
745
|
-
}
|
|
746
|
-
throw err;
|
|
747
|
-
});
|
|
748
|
-
if (response.ok || response.status === 404 || response.status === 410)
|
|
744
|
+
const response = await this.requestTerminate(session.uploadUrl, session.istk);
|
|
745
|
+
if (response.ok || isSessionGone(response.status))
|
|
749
746
|
return;
|
|
750
747
|
const errorText = await response.text().catch(() => '');
|
|
751
748
|
throw new TusUploadError(`TUS terminate failed: ${response.status} - ${errorText.substring(0, 200)}`, {
|
|
@@ -796,14 +793,14 @@ export class MobileTusUploader {
|
|
|
796
793
|
* callers for why neither may carry one).
|
|
797
794
|
*/
|
|
798
795
|
requestTerminate(uploadUrl, istk) {
|
|
799
|
-
return this.config
|
|
796
|
+
return tusRequest(this.config, uploadUrl, {
|
|
800
797
|
method: 'DELETE',
|
|
801
798
|
headers: {
|
|
802
799
|
'Tus-Resumable': TUS_VERSION,
|
|
803
800
|
'X-ISTK': istk,
|
|
804
801
|
},
|
|
805
802
|
timeoutMs: this.config.tusPostTimeoutMs,
|
|
806
|
-
});
|
|
803
|
+
}, 'TUS DELETE request');
|
|
807
804
|
}
|
|
808
805
|
async readChunk(fileReader, fileUri, position, length) {
|
|
809
806
|
// Keep the chunk in the base64 form the native read produced (see
|
package/dist/tus.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tus.js","sourceRoot":"","sources":["../src/tus.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tus.js","sourceRoot":"","sources":["../src/tus.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -520,7 +520,7 @@ export interface UploadResult {
|
|
|
520
520
|
* moments later, but a caller recording "backed up" must not take that on
|
|
521
521
|
* faith (resume the session later; Forge re-confirms finalization).
|
|
522
522
|
*/
|
|
523
|
-
status?:
|
|
523
|
+
status?: Ingot['status'];
|
|
524
524
|
}
|
|
525
525
|
export interface IngotSharingConfig {
|
|
526
526
|
shared: boolean;
|
|
@@ -668,11 +668,13 @@ export interface BackgroundTransferJob {
|
|
|
668
668
|
allowsConstrainedNetworkAccess: boolean;
|
|
669
669
|
}
|
|
670
670
|
/**
|
|
671
|
-
* Why an OS transfer ended without reaching the final offset
|
|
672
|
-
*
|
|
673
|
-
*
|
|
674
|
-
*
|
|
675
|
-
*
|
|
671
|
+
* Why an OS transfer ended without reaching the final offset: the engine's
|
|
672
|
+
* own failure kinds plus `cancelled`, which only the app adapter produces
|
|
673
|
+
* for the caller's own abort (the engine never reports a cancel it was asked
|
|
674
|
+
* for). `http` carries Forge's status and body (the SDK maps gates and lost
|
|
675
|
+
* sessions from them); `interrupted` is the OS ending the task without being
|
|
676
|
+
* asked (a relaunch, a system cancel); `stalled` is a 2xx whose offset did
|
|
677
|
+
* not advance; `file` is a source the engine could not read.
|
|
676
678
|
*/
|
|
677
679
|
export type BackgroundTransferFailureKind = 'network' | 'http' | 'file' | 'cancelled' | 'stalled' | 'interrupted';
|
|
678
680
|
/** App adapter over an OS-driven background transfer engine (iOS background URLSession with native chunk chaining). */
|
|
@@ -738,6 +740,15 @@ export interface MobileFileInfo {
|
|
|
738
740
|
exists: boolean;
|
|
739
741
|
sizeBytes?: number;
|
|
740
742
|
}
|
|
743
|
+
/**
|
|
744
|
+
* App-provided file download adapter. The rejection contract is typed, not
|
|
745
|
+
* textual: a download the caller's `abortSignal` cut short rejects with an
|
|
746
|
+
* Error whose `name` is `'AbortError'` (the SDK reports it as cancelled and
|
|
747
|
+
* never retries it); a download that ran past `timeoutMs` rejects with a
|
|
748
|
+
* `SparkVaultTimeoutError` (retried like any connectivity failure). Any
|
|
749
|
+
* other rejection is a transport failure the SDK retries with a fresh
|
|
750
|
+
* signed URL.
|
|
751
|
+
*/
|
|
741
752
|
export interface MobileFileDownloader {
|
|
742
753
|
download(url: string, fileUri: string, options?: {
|
|
743
754
|
timeoutMs?: number;
|
package/package.json
CHANGED
package/src/errors.ts
CHANGED
|
@@ -146,9 +146,10 @@ export class TusUploadError extends SparkVaultMobileError {
|
|
|
146
146
|
readonly fileSize: number | null;
|
|
147
147
|
readonly phase: 'create' | 'upload' | 'network' | 'timeout' | 'cancelled' | 'stalled' | 'unknown';
|
|
148
148
|
/**
|
|
149
|
-
* True when Forge no longer has the session
|
|
150
|
-
*
|
|
151
|
-
*
|
|
149
|
+
* True when Forge no longer has the session (it answered a status
|
|
150
|
+
* `isSessionGone` recognises: expired or terminated), or the session
|
|
151
|
+
* cannot carry this file. The persisted session is worthless, so the
|
|
152
|
+
* caller starts a fresh upload instead of retrying it.
|
|
152
153
|
*/
|
|
153
154
|
readonly sessionLost: boolean;
|
|
154
155
|
|
|
@@ -176,15 +177,19 @@ export class TusUploadError extends SparkVaultMobileError {
|
|
|
176
177
|
Object.setPrototypeOf(this, TusUploadError.prototype);
|
|
177
178
|
}
|
|
178
179
|
|
|
180
|
+
/**
|
|
181
|
+
* Wrap an error the SDK did not produce (a `fileReader` read, an
|
|
182
|
+
* `onSessionCreated` hook) so every upload failure is a `TusUploadError`.
|
|
183
|
+
* Carries no HTTP status: none was received, and a status is something
|
|
184
|
+
* callers act on (a lost session, a rejected key), so it is only ever set
|
|
185
|
+
* by the request that actually saw it.
|
|
186
|
+
*/
|
|
179
187
|
static fromError(
|
|
180
188
|
error: Error,
|
|
181
189
|
context: { filename?: string; fileSize?: number; phase?: TusUploadError['phase'] }
|
|
182
190
|
): TusUploadError {
|
|
183
|
-
const statusMatch = error.message.match(/(\d{3})/);
|
|
184
|
-
const httpStatus = statusMatch ? parseInt(statusMatch[1], 10) : null;
|
|
185
191
|
return new TusUploadError(error.message, {
|
|
186
192
|
cause: error,
|
|
187
|
-
httpStatus,
|
|
188
193
|
filename: context.filename,
|
|
189
194
|
fileSize: context.fileSize,
|
|
190
195
|
phase: context.phase ?? 'unknown',
|