@protontech/drive-sdk 0.2.1 → 0.3.1
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/crypto/interface.d.ts +5 -0
- package/dist/diagnostic/httpClient.d.ts +3 -3
- package/dist/diagnostic/interface.d.ts +26 -29
- package/dist/diagnostic/sdkDiagnostic.js +50 -24
- package/dist/diagnostic/sdkDiagnostic.js.map +1 -1
- package/dist/errors.d.ts +3 -3
- package/dist/errors.js +7 -7
- package/dist/errors.js.map +1 -1
- package/dist/interface/author.d.ts +1 -1
- package/dist/interface/events.d.ts +1 -1
- package/dist/interface/events.js.map +1 -1
- package/dist/interface/httpClient.d.ts +5 -5
- package/dist/interface/index.d.ts +15 -5
- package/dist/internal/apiService/apiService.js +12 -4
- package/dist/internal/apiService/apiService.js.map +1 -1
- package/dist/internal/apiService/errorCodes.d.ts +1 -0
- package/dist/internal/apiService/errorCodes.js.map +1 -1
- package/dist/internal/apiService/errors.d.ts +4 -3
- package/dist/internal/apiService/errors.js +7 -4
- package/dist/internal/apiService/errors.js.map +1 -1
- package/dist/internal/apiService/errors.test.js +2 -1
- package/dist/internal/apiService/errors.test.js.map +1 -1
- package/dist/internal/events/index.d.ts +1 -1
- package/dist/internal/nodes/apiService.js +3 -0
- package/dist/internal/nodes/apiService.js.map +1 -1
- package/dist/internal/nodes/apiService.test.js +18 -0
- package/dist/internal/nodes/apiService.test.js.map +1 -1
- package/dist/internal/nodes/cryptoCache.js +6 -7
- package/dist/internal/nodes/cryptoCache.js.map +1 -1
- package/dist/internal/nodes/cryptoCache.test.js +4 -7
- package/dist/internal/nodes/cryptoCache.test.js.map +1 -1
- package/dist/internal/nodes/cryptoService.js +44 -20
- package/dist/internal/nodes/cryptoService.js.map +1 -1
- package/dist/internal/nodes/nodesAccess.js +2 -2
- package/dist/internal/nodes/nodesAccess.js.map +1 -1
- package/dist/internal/nodes/nodesManagement.js +0 -2
- package/dist/internal/nodes/nodesManagement.js.map +1 -1
- package/dist/internal/shares/cryptoCache.d.ts +4 -3
- package/dist/internal/shares/cryptoCache.js +23 -6
- package/dist/internal/shares/cryptoCache.js.map +1 -1
- package/dist/internal/shares/cryptoCache.test.js +3 -2
- package/dist/internal/shares/cryptoCache.test.js.map +1 -1
- package/dist/internal/shares/index.js +1 -1
- package/dist/internal/shares/index.js.map +1 -1
- package/dist/internal/sharing/cryptoService.js +8 -6
- package/dist/internal/sharing/cryptoService.js.map +1 -1
- package/dist/internal/sharing/cryptoService.test.js +13 -0
- package/dist/internal/sharing/cryptoService.test.js.map +1 -1
- package/dist/internal/sharing/index.js +1 -1
- package/dist/internal/sharing/index.js.map +1 -1
- package/dist/internal/sharing/interface.d.ts +0 -4
- package/dist/internal/sharing/sharingAccess.d.ts +1 -0
- package/dist/internal/sharing/sharingAccess.js +6 -1
- package/dist/internal/sharing/sharingAccess.js.map +1 -1
- package/dist/internal/sharing/sharingAccess.test.js +3 -3
- package/dist/internal/sharing/sharingAccess.test.js.map +1 -1
- package/dist/internal/sharing/sharingManagement.d.ts +3 -1
- package/dist/internal/sharing/sharingManagement.js +37 -17
- package/dist/internal/sharing/sharingManagement.js.map +1 -1
- package/dist/internal/sharing/sharingManagement.test.js +61 -14
- package/dist/internal/sharing/sharingManagement.test.js.map +1 -1
- package/dist/internal/sharingPublic/apiService.d.ts +19 -0
- package/dist/internal/sharingPublic/apiService.js +134 -0
- package/dist/internal/sharingPublic/apiService.js.map +1 -0
- package/dist/internal/sharingPublic/cryptoCache.d.ts +19 -0
- package/dist/internal/sharingPublic/cryptoCache.js +72 -0
- package/dist/internal/sharingPublic/cryptoCache.js.map +1 -0
- package/dist/internal/sharingPublic/cryptoService.d.ts +23 -0
- package/dist/internal/sharingPublic/cryptoService.js +120 -0
- package/dist/internal/sharingPublic/cryptoService.js.map +1 -0
- package/dist/internal/sharingPublic/index.d.ts +15 -0
- package/dist/internal/sharingPublic/index.js +27 -0
- package/dist/internal/sharingPublic/index.js.map +1 -0
- package/dist/internal/sharingPublic/interface.d.ts +48 -0
- package/dist/internal/sharingPublic/interface.js +3 -0
- package/dist/internal/sharingPublic/interface.js.map +1 -0
- package/dist/internal/sharingPublic/manager.d.ts +19 -0
- package/dist/internal/sharingPublic/manager.js +79 -0
- package/dist/internal/sharingPublic/manager.js.map +1 -0
- package/dist/internal/sharingPublic/session/apiService.d.ts +28 -0
- package/dist/internal/sharingPublic/session/apiService.js +55 -0
- package/dist/internal/sharingPublic/session/apiService.js.map +1 -0
- package/dist/internal/sharingPublic/session/httpClient.d.ts +16 -0
- package/dist/internal/sharingPublic/session/httpClient.js +41 -0
- package/dist/internal/sharingPublic/session/httpClient.js.map +1 -0
- package/dist/internal/sharingPublic/session/index.d.ts +1 -0
- package/dist/internal/sharingPublic/session/index.js +6 -0
- package/dist/internal/sharingPublic/session/index.js.map +1 -0
- package/dist/internal/sharingPublic/session/interface.d.ts +18 -0
- package/dist/internal/sharingPublic/session/interface.js +3 -0
- package/dist/internal/sharingPublic/session/interface.js.map +1 -0
- package/dist/internal/sharingPublic/session/manager.d.ts +49 -0
- package/dist/internal/sharingPublic/session/manager.js +75 -0
- package/dist/internal/sharingPublic/session/manager.js.map +1 -0
- package/dist/internal/sharingPublic/session/session.d.ts +34 -0
- package/dist/internal/sharingPublic/session/session.js +67 -0
- package/dist/internal/sharingPublic/session/session.js.map +1 -0
- package/dist/internal/sharingPublic/session/url.d.ts +12 -0
- package/dist/internal/sharingPublic/session/url.js +23 -0
- package/dist/internal/sharingPublic/session/url.js.map +1 -0
- package/dist/internal/sharingPublic/session/url.test.d.ts +1 -0
- package/dist/internal/sharingPublic/session/url.test.js +59 -0
- package/dist/internal/sharingPublic/session/url.test.js.map +1 -0
- package/dist/internal/upload/manager.js +1 -3
- package/dist/internal/upload/manager.js.map +1 -1
- package/dist/internal/upload/manager.test.js +2 -2
- package/dist/internal/upload/manager.test.js.map +1 -1
- package/dist/protonDriveClient.d.ts +25 -10
- package/dist/protonDriveClient.js +44 -22
- package/dist/protonDriveClient.js.map +1 -1
- package/dist/protonDrivePublicLinkClient.d.ts +48 -0
- package/dist/protonDrivePublicLinkClient.js +71 -0
- package/dist/protonDrivePublicLinkClient.js.map +1 -0
- package/package.json +1 -1
- package/src/crypto/interface.ts +11 -0
- package/src/diagnostic/httpClient.ts +4 -4
- package/src/diagnostic/interface.ts +27 -29
- package/src/diagnostic/sdkDiagnostic.ts +58 -30
- package/src/errors.ts +5 -5
- package/src/interface/author.ts +1 -1
- package/src/interface/events.ts +1 -7
- package/src/interface/httpClient.ts +5 -5
- package/src/interface/index.ts +18 -6
- package/src/internal/apiService/apiService.ts +13 -4
- package/src/internal/apiService/errorCodes.ts +1 -0
- package/src/internal/apiService/errors.test.ts +2 -1
- package/src/internal/apiService/errors.ts +15 -4
- package/src/internal/events/index.ts +1 -1
- package/src/internal/nodes/apiService.test.ts +28 -0
- package/src/internal/nodes/apiService.ts +3 -0
- package/src/internal/nodes/cryptoCache.test.ts +4 -7
- package/src/internal/nodes/cryptoCache.ts +6 -7
- package/src/internal/nodes/cryptoService.ts +68 -34
- package/src/internal/nodes/interface.ts +2 -0
- package/src/internal/nodes/nodesAccess.ts +2 -2
- package/src/internal/nodes/nodesManagement.ts +0 -3
- package/src/internal/shares/cryptoCache.test.ts +3 -2
- package/src/internal/shares/cryptoCache.ts +26 -7
- package/src/internal/shares/index.ts +1 -1
- package/src/internal/sharing/cryptoService.test.ts +22 -1
- package/src/internal/sharing/cryptoService.ts +8 -6
- package/src/internal/sharing/index.ts +1 -0
- package/src/internal/sharing/interface.ts +0 -4
- package/src/internal/sharing/sharingAccess.test.ts +4 -4
- package/src/internal/sharing/sharingAccess.ts +6 -0
- package/src/internal/sharing/sharingManagement.test.ts +87 -24
- package/src/internal/sharing/sharingManagement.ts +56 -16
- package/src/internal/sharingPublic/apiService.ts +164 -0
- package/src/internal/sharingPublic/cryptoCache.ts +79 -0
- package/src/internal/sharingPublic/cryptoService.ts +162 -0
- package/src/internal/sharingPublic/index.ts +40 -0
- package/src/internal/sharingPublic/interface.ts +59 -0
- package/src/internal/sharingPublic/manager.ts +85 -0
- package/src/internal/sharingPublic/session/apiService.ts +74 -0
- package/src/internal/sharingPublic/session/httpClient.ts +48 -0
- package/src/internal/sharingPublic/session/index.ts +1 -0
- package/src/internal/sharingPublic/session/interface.ts +20 -0
- package/src/internal/sharingPublic/session/manager.ts +97 -0
- package/src/internal/sharingPublic/session/session.ts +78 -0
- package/src/internal/sharingPublic/session/url.test.ts +72 -0
- package/src/internal/sharingPublic/session/url.ts +23 -0
- package/src/internal/upload/manager.test.ts +2 -2
- package/src/internal/upload/manager.ts +2 -4
- package/src/protonDriveClient.ts +64 -27
- package/src/protonDrivePublicLinkClient.ts +121 -0
|
@@ -34,6 +34,11 @@ export declare enum VERIFICATION_STATUS {
|
|
|
34
34
|
SIGNED_AND_INVALID = 2
|
|
35
35
|
}
|
|
36
36
|
export interface SRPModule {
|
|
37
|
+
getSrp: (version: number, modulus: string, serverEphemeral: string, salt: string, password: string) => Promise<{
|
|
38
|
+
expectedServerProof: string;
|
|
39
|
+
clientProof: string;
|
|
40
|
+
clientEphemeral: string;
|
|
41
|
+
}>;
|
|
37
42
|
getSrpVerifier: (password: string) => Promise<SRPVerifier>;
|
|
38
43
|
computeKeyPassword: (password: string, salt: string) => Promise<string>;
|
|
39
44
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ProtonDriveHTTPClient,
|
|
1
|
+
import { ProtonDriveHTTPClient, ProtonDriveHTTPClientBlobRequest, ProtonDriveHTTPClientJsonRequest } from '../interface';
|
|
2
2
|
import { EventsGenerator } from './eventsGenerator';
|
|
3
3
|
/**
|
|
4
4
|
* Special HTTP client that is compatible with the SDK.
|
|
@@ -11,6 +11,6 @@ import { EventsGenerator } from './eventsGenerator';
|
|
|
11
11
|
export declare class DiagnosticHTTPClient extends EventsGenerator implements ProtonDriveHTTPClient {
|
|
12
12
|
private httpClient;
|
|
13
13
|
constructor(httpClient: ProtonDriveHTTPClient);
|
|
14
|
-
fetchJson(options:
|
|
15
|
-
fetchBlob(options:
|
|
14
|
+
fetchJson(options: ProtonDriveHTTPClientJsonRequest): Promise<Response>;
|
|
15
|
+
fetchBlob(options: ProtonDriveHTTPClientBlobRequest): Promise<Response>;
|
|
16
16
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Author, MaybeNode, MetricEvent, NodeType, AnonymousUser } from '../interface';
|
|
2
2
|
import { LogRecord } from '../telemetry';
|
|
3
3
|
export interface Diagnostic {
|
|
4
4
|
verifyMyFiles(options?: DiagnosticOptions): AsyncGenerator<DiagnosticResult>;
|
|
@@ -36,58 +36,40 @@ export type HttpErrorResult = {
|
|
|
36
36
|
};
|
|
37
37
|
export type DegradedNodeResult = {
|
|
38
38
|
type: 'degraded_node';
|
|
39
|
-
|
|
40
|
-
node: DegradedNode;
|
|
41
|
-
};
|
|
39
|
+
} & NodeDetails;
|
|
42
40
|
export type UnverifiedAuthorResult = {
|
|
43
41
|
type: 'unverified_author';
|
|
44
|
-
nodeUid: string;
|
|
45
|
-
revisionUid?: string;
|
|
46
42
|
authorType: string;
|
|
47
|
-
claimedAuthor?: string;
|
|
43
|
+
claimedAuthor?: string | AnonymousUser;
|
|
48
44
|
error: string;
|
|
49
|
-
|
|
50
|
-
};
|
|
45
|
+
} & NodeDetails;
|
|
51
46
|
export type ExtendedAttributesErrorResult = {
|
|
52
47
|
type: 'extended_attributes_error';
|
|
53
|
-
nodeUid: string;
|
|
54
|
-
revisionUid?: string;
|
|
55
48
|
field: 'sha1';
|
|
56
49
|
value: string;
|
|
57
|
-
};
|
|
50
|
+
} & NodeDetails;
|
|
58
51
|
export type ExtendedAttributesMissingFieldResult = {
|
|
59
52
|
type: 'extended_attributes_missing_field';
|
|
60
|
-
nodeUid: string;
|
|
61
|
-
revisionUid?: string;
|
|
62
53
|
missingField: 'sha1';
|
|
63
|
-
};
|
|
54
|
+
} & NodeDetails;
|
|
64
55
|
export type ContentFileMissingRevisionResult = {
|
|
65
56
|
type: 'content_file_missing_revision';
|
|
66
|
-
|
|
67
|
-
revisionUid?: string;
|
|
68
|
-
};
|
|
57
|
+
} & NodeDetails;
|
|
69
58
|
export type ContentIntegrityErrorResult = {
|
|
70
59
|
type: 'content_integrity_error';
|
|
71
|
-
nodeUid: string;
|
|
72
|
-
revisionUid?: string;
|
|
73
60
|
claimedSha1?: string;
|
|
74
61
|
computedSha1?: string;
|
|
75
62
|
claimedSizeInBytes?: number;
|
|
76
63
|
computedSizeInBytes?: number;
|
|
77
|
-
};
|
|
64
|
+
} & NodeDetails;
|
|
78
65
|
export type ContentDownloadErrorResult = {
|
|
79
66
|
type: 'content_download_error';
|
|
80
|
-
nodeUid: string;
|
|
81
|
-
revisionUid?: string;
|
|
82
67
|
error: unknown;
|
|
83
|
-
};
|
|
68
|
+
} & NodeDetails;
|
|
84
69
|
export type ThumbnailsErrorResult = {
|
|
85
70
|
type: 'thumbnails_error';
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
message?: string;
|
|
89
|
-
error?: unknown;
|
|
90
|
-
};
|
|
71
|
+
error: unknown;
|
|
72
|
+
} & NodeDetails;
|
|
91
73
|
export type LogErrorResult = {
|
|
92
74
|
type: 'log_error';
|
|
93
75
|
log: LogRecord;
|
|
@@ -100,3 +82,18 @@ export type MetricResult = {
|
|
|
100
82
|
type: 'metric';
|
|
101
83
|
event: MetricEvent;
|
|
102
84
|
};
|
|
85
|
+
export type NodeDetails = {
|
|
86
|
+
safeNodeDetails: {
|
|
87
|
+
nodeUid: string;
|
|
88
|
+
revisionUid?: string;
|
|
89
|
+
nodeType: NodeType;
|
|
90
|
+
nodeCreationTime: Date;
|
|
91
|
+
keyAuthor: Author;
|
|
92
|
+
nameAuthor: Author;
|
|
93
|
+
errors: {
|
|
94
|
+
field: string;
|
|
95
|
+
error: unknown;
|
|
96
|
+
}[];
|
|
97
|
+
};
|
|
98
|
+
sensitiveNodeDetails: MaybeNode;
|
|
99
|
+
};
|
|
@@ -39,29 +39,17 @@ class SDKDiagnostic {
|
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
41
|
async *verifyNode(node, options) {
|
|
42
|
-
const nodeUid = node.ok ? node.value.uid : node.error.uid;
|
|
43
42
|
if (!node.ok) {
|
|
44
43
|
yield {
|
|
45
44
|
type: 'degraded_node',
|
|
46
|
-
|
|
47
|
-
node: node.error,
|
|
45
|
+
...getNodeDetails(node),
|
|
48
46
|
};
|
|
49
47
|
}
|
|
48
|
+
yield* this.verifyAuthor(node.ok ? node.value.keyAuthor : node.error.keyAuthor, 'key', node);
|
|
49
|
+
yield* this.verifyAuthor(node.ok ? node.value.nameAuthor : node.error.nameAuthor, 'name', node);
|
|
50
50
|
const activeRevision = getActiveRevision(node);
|
|
51
|
-
const nodeInfo = {
|
|
52
|
-
...getNodeUids(node),
|
|
53
|
-
node,
|
|
54
|
-
};
|
|
55
|
-
yield* this.verifyAuthor(node.ok ? node.value.keyAuthor : node.error.keyAuthor, {
|
|
56
|
-
...nodeInfo,
|
|
57
|
-
authorType: 'key',
|
|
58
|
-
});
|
|
59
|
-
yield* this.verifyAuthor(node.ok ? node.value.nameAuthor : node.error.nameAuthor, {
|
|
60
|
-
...nodeInfo,
|
|
61
|
-
authorType: 'name',
|
|
62
|
-
});
|
|
63
51
|
if (activeRevision) {
|
|
64
|
-
yield* this.verifyAuthor(activeRevision.contentAuthor,
|
|
52
|
+
yield* this.verifyAuthor(activeRevision.contentAuthor, 'content', node);
|
|
65
53
|
}
|
|
66
54
|
yield* this.verifyFileExtendedAttributes(node);
|
|
67
55
|
if (options?.verifyContent) {
|
|
@@ -71,13 +59,14 @@ class SDKDiagnostic {
|
|
|
71
59
|
yield* this.verifyThumbnails(node);
|
|
72
60
|
}
|
|
73
61
|
}
|
|
74
|
-
async *verifyAuthor(author,
|
|
62
|
+
async *verifyAuthor(author, authorType, node) {
|
|
75
63
|
if (!author.ok) {
|
|
76
64
|
yield {
|
|
77
65
|
type: 'unverified_author',
|
|
66
|
+
authorType,
|
|
78
67
|
claimedAuthor: author.error.claimedAuthor,
|
|
79
68
|
error: author.error.error,
|
|
80
|
-
...
|
|
69
|
+
...getNodeDetails(node),
|
|
81
70
|
};
|
|
82
71
|
}
|
|
83
72
|
}
|
|
@@ -88,16 +77,16 @@ class SDKDiagnostic {
|
|
|
88
77
|
if (claimedSha1 && !/^[0-9a-f]{40}$/i.test(claimedSha1)) {
|
|
89
78
|
yield {
|
|
90
79
|
type: 'extended_attributes_error',
|
|
91
|
-
...getNodeUids(node),
|
|
92
80
|
field: 'sha1',
|
|
93
81
|
value: claimedSha1,
|
|
82
|
+
...getNodeDetails(node),
|
|
94
83
|
};
|
|
95
84
|
}
|
|
96
85
|
if (expectedAttributes && !claimedSha1) {
|
|
97
86
|
yield {
|
|
98
87
|
type: 'extended_attributes_missing_field',
|
|
99
|
-
...getNodeUids(node),
|
|
100
88
|
missingField: 'sha1',
|
|
89
|
+
...getNodeDetails(node),
|
|
101
90
|
};
|
|
102
91
|
}
|
|
103
92
|
}
|
|
@@ -109,7 +98,7 @@ class SDKDiagnostic {
|
|
|
109
98
|
if (!activeRevision) {
|
|
110
99
|
yield {
|
|
111
100
|
type: 'content_file_missing_revision',
|
|
112
|
-
|
|
101
|
+
...getNodeDetails(node),
|
|
113
102
|
};
|
|
114
103
|
return;
|
|
115
104
|
}
|
|
@@ -136,19 +125,19 @@ class SDKDiagnostic {
|
|
|
136
125
|
if (claimedSha1 !== computedSha1 || claimedSizeInBytes !== computedSizeInBytes) {
|
|
137
126
|
yield {
|
|
138
127
|
type: 'content_integrity_error',
|
|
139
|
-
...getNodeUids(node),
|
|
140
128
|
claimedSha1,
|
|
141
129
|
computedSha1,
|
|
142
130
|
claimedSizeInBytes,
|
|
143
131
|
computedSizeInBytes,
|
|
132
|
+
...getNodeDetails(node),
|
|
144
133
|
};
|
|
145
134
|
}
|
|
146
135
|
}
|
|
147
136
|
catch (error) {
|
|
148
137
|
yield {
|
|
149
138
|
type: 'content_download_error',
|
|
150
|
-
...getNodeUids(node),
|
|
151
139
|
error,
|
|
140
|
+
...getNodeDetails(node),
|
|
152
141
|
};
|
|
153
142
|
}
|
|
154
143
|
}
|
|
@@ -170,8 +159,8 @@ class SDKDiagnostic {
|
|
|
170
159
|
if (!result[0].ok && result[0].error !== 'Node has no thumbnail') {
|
|
171
160
|
yield {
|
|
172
161
|
type: 'thumbnails_error',
|
|
173
|
-
nodeUid,
|
|
174
162
|
error: result[0].error,
|
|
163
|
+
...getNodeDetails(node),
|
|
175
164
|
};
|
|
176
165
|
}
|
|
177
166
|
}
|
|
@@ -200,6 +189,43 @@ class SDKDiagnostic {
|
|
|
200
189
|
}
|
|
201
190
|
}
|
|
202
191
|
exports.SDKDiagnostic = SDKDiagnostic;
|
|
192
|
+
function getNodeDetails(node) {
|
|
193
|
+
const errors = [];
|
|
194
|
+
if (!node.ok) {
|
|
195
|
+
const degradedNode = node.error;
|
|
196
|
+
if (!degradedNode.name.ok) {
|
|
197
|
+
errors.push({
|
|
198
|
+
field: 'name',
|
|
199
|
+
error: degradedNode.name.error,
|
|
200
|
+
});
|
|
201
|
+
}
|
|
202
|
+
if (degradedNode.activeRevision?.ok === false) {
|
|
203
|
+
errors.push({
|
|
204
|
+
field: 'activeRevision',
|
|
205
|
+
error: degradedNode.activeRevision.error,
|
|
206
|
+
});
|
|
207
|
+
}
|
|
208
|
+
for (const error of degradedNode.errors ?? []) {
|
|
209
|
+
if (error instanceof Error) {
|
|
210
|
+
errors.push({
|
|
211
|
+
field: 'error',
|
|
212
|
+
error,
|
|
213
|
+
});
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
}
|
|
217
|
+
return {
|
|
218
|
+
safeNodeDetails: {
|
|
219
|
+
...getNodeUids(node),
|
|
220
|
+
nodeType: getNodeType(node),
|
|
221
|
+
nodeCreationTime: node.ok ? node.value.creationTime : node.error.creationTime,
|
|
222
|
+
keyAuthor: node.ok ? node.value.keyAuthor : node.error.keyAuthor,
|
|
223
|
+
nameAuthor: node.ok ? node.value.nameAuthor : node.error.nameAuthor,
|
|
224
|
+
errors,
|
|
225
|
+
},
|
|
226
|
+
sensitiveNodeDetails: node,
|
|
227
|
+
};
|
|
228
|
+
}
|
|
203
229
|
function getNodeUids(node) {
|
|
204
230
|
const activeRevision = getActiveRevision(node);
|
|
205
231
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdkDiagnostic.js","sourceRoot":"","sources":["../../src/diagnostic/sdkDiagnostic.ts"],"names":[],"mappings":";;;AAAA,4CAAoG;AAGpG,+EAA4E;AAE5E;;;;;;GAMG;AACH,MAAa,aAAa;IACF;IAApB,YAAoB,iBAAoC;QAApC,sBAAiB,GAAjB,iBAAiB,CAAmB;QACpD,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,CAAC,aAAa,CAAC,OAA2B;QAC5C,IAAI,iBAA4B,CAAC;QAEjC,IAAI,CAAC;YACD,iBAAiB,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,oBAAoB,EAAE,CAAC;QAC5E,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACtB,MAAM;gBACF,IAAI,EAAE,aAAa;gBACnB,OAAO,EAAE,oCAAoC;gBAC7C,KAAK;aACR,CAAC;YACF,OAAO;QACX,CAAC;QAED,KAAK,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;IAC3D,CAAC;IAED,KAAK,CAAC,CAAC,cAAc,CAAC,IAAe,EAAE,OAA2B;QAC9D,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,oBAAQ,CAAC,MAAM,CAAC;QAEvD,KAAK,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAEtC,IAAI,QAAQ,EAAE,CAAC;YACX,KAAK,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAClD,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,CAAC,UAAU,CAAC,IAAe,EAAE,OAA2B;QAClE,
|
|
1
|
+
{"version":3,"file":"sdkDiagnostic.js","sourceRoot":"","sources":["../../src/diagnostic/sdkDiagnostic.ts"],"names":[],"mappings":"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"}
|
package/dist/errors.d.ts
CHANGED
|
@@ -55,11 +55,11 @@ export declare class ValidationError extends ProtonDriveError {
|
|
|
55
55
|
* or choose another name. The available name is provided in the `availableName`
|
|
56
56
|
* property (that will contain original name with the index that can be used).
|
|
57
57
|
*/
|
|
58
|
-
export declare class
|
|
58
|
+
export declare class NodeWithSameNameExistsValidationError extends ValidationError {
|
|
59
59
|
name: string;
|
|
60
60
|
readonly existingNodeUid?: string;
|
|
61
|
-
readonly
|
|
62
|
-
constructor(message: string, code: number, existingNodeUid?: string,
|
|
61
|
+
readonly isUnfinishedUpload: boolean;
|
|
62
|
+
constructor(message: string, code: number, existingNodeUid?: string, isUnfinishedUpload?: boolean);
|
|
63
63
|
}
|
|
64
64
|
/**
|
|
65
65
|
* Error thrown when the API call fails.
|
package/dist/errors.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.IntegrityError = exports.DecryptionError = exports.ConnectionError = exports.RateLimitedError = exports.ServerError = exports.
|
|
3
|
+
exports.IntegrityError = exports.DecryptionError = exports.ConnectionError = exports.RateLimitedError = exports.ServerError = exports.NodeWithSameNameExistsValidationError = exports.ValidationError = exports.AbortError = exports.ProtonDriveError = void 0;
|
|
4
4
|
const ttag_1 = require("ttag");
|
|
5
5
|
/**
|
|
6
6
|
* Base class for all SDK errors.
|
|
@@ -68,17 +68,17 @@ exports.ValidationError = ValidationError;
|
|
|
68
68
|
* or choose another name. The available name is provided in the `availableName`
|
|
69
69
|
* property (that will contain original name with the index that can be used).
|
|
70
70
|
*/
|
|
71
|
-
class
|
|
72
|
-
name = '
|
|
71
|
+
class NodeWithSameNameExistsValidationError extends ValidationError {
|
|
72
|
+
name = 'NodeWithSameNameExistsValidationError';
|
|
73
73
|
existingNodeUid;
|
|
74
|
-
|
|
75
|
-
constructor(message, code, existingNodeUid,
|
|
74
|
+
isUnfinishedUpload;
|
|
75
|
+
constructor(message, code, existingNodeUid, isUnfinishedUpload = false) {
|
|
76
76
|
super(message, code);
|
|
77
77
|
this.existingNodeUid = existingNodeUid;
|
|
78
|
-
this.
|
|
78
|
+
this.isUnfinishedUpload = isUnfinishedUpload;
|
|
79
79
|
}
|
|
80
80
|
}
|
|
81
|
-
exports.
|
|
81
|
+
exports.NodeWithSameNameExistsValidationError = NodeWithSameNameExistsValidationError;
|
|
82
82
|
/**
|
|
83
83
|
* Error thrown when the API call fails.
|
|
84
84
|
*
|
package/dist/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":";;;AAAA,+BAAyB;AAEzB;;;;;;;;;;;GAWG;AACH,MAAa,gBAAiB,SAAQ,KAAK;IACvC,IAAI,GAAG,kBAAkB,CAAC;CAC7B;AAFD,4CAEC;AAED;;;;;GAKG;AACH,MAAa,UAAW,SAAQ,gBAAgB;IAC5C,IAAI,GAAG,YAAY,CAAC;IAEpB,YAAY,OAAgB;QACxB,KAAK,CAAC,OAAO,IAAI,IAAA,QAAC,EAAC,OAAO,CAAC,CAAC,CAAC,CAAA,mBAAmB,CAAC,CAAC;IACtD,CAAC;CACJ;AAND,gCAMC;AAED;;;;;;;;;GASG;AACH,MAAa,eAAgB,SAAQ,gBAAgB;IACjD,IAAI,GAAG,iBAAiB,CAAC;IAEzB;;;;OAIG;IACa,IAAI,CAAU;IAE9B;;OAEG;IACa,OAAO,CAAU;IAEjC,YAAY,OAAe,EAAE,IAAa,EAAE,OAAgB;QACxD,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;CACJ;AApBD,0CAoBC;AAED;;;;;;;GAOG;AACH,MAAa,
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":";;;AAAA,+BAAyB;AAEzB;;;;;;;;;;;GAWG;AACH,MAAa,gBAAiB,SAAQ,KAAK;IACvC,IAAI,GAAG,kBAAkB,CAAC;CAC7B;AAFD,4CAEC;AAED;;;;;GAKG;AACH,MAAa,UAAW,SAAQ,gBAAgB;IAC5C,IAAI,GAAG,YAAY,CAAC;IAEpB,YAAY,OAAgB;QACxB,KAAK,CAAC,OAAO,IAAI,IAAA,QAAC,EAAC,OAAO,CAAC,CAAC,CAAC,CAAA,mBAAmB,CAAC,CAAC;IACtD,CAAC;CACJ;AAND,gCAMC;AAED;;;;;;;;;GASG;AACH,MAAa,eAAgB,SAAQ,gBAAgB;IACjD,IAAI,GAAG,iBAAiB,CAAC;IAEzB;;;;OAIG;IACa,IAAI,CAAU;IAE9B;;OAEG;IACa,OAAO,CAAU;IAEjC,YAAY,OAAe,EAAE,IAAa,EAAE,OAAgB;QACxD,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;CACJ;AApBD,0CAoBC;AAED;;;;;;;GAOG;AACH,MAAa,qCAAsC,SAAQ,eAAe;IACtE,IAAI,GAAG,uCAAuC,CAAC;IAE/B,eAAe,CAAU;IAEzB,kBAAkB,CAAU;IAE5C,YAAY,OAAe,EAAE,IAAY,EAAE,eAAwB,EAAE,kBAAkB,GAAG,KAAK;QAC3F,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACrB,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;IACjD,CAAC;CACJ;AAZD,sFAYC;AAED;;;;;;;;GAQG;AACH,MAAa,WAAY,SAAQ,gBAAgB;IAC7C,IAAI,GAAG,aAAa,CAAC;IAErB;;;;OAIG;IACa,UAAU,CAAU;IACpC;;;;OAIG;IACa,IAAI,CAAU;CACjC;AAfD,kCAeC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAa,gBAAiB,SAAQ,WAAW;IAC7C,IAAI,GAAG,kBAAkB,CAAC;IAE1B,IAAI,GAAG,GAAG,CAAC;CACd;AAJD,4CAIC;AAED;;;;;;;GAOG;AACH,MAAa,eAAgB,SAAQ,gBAAgB;IACjD,IAAI,GAAG,iBAAiB,CAAC;CAC5B;AAFD,0CAEC;AAED;;;;;;;;;GASG;AACH,MAAa,eAAgB,SAAQ,gBAAgB;IACjD,IAAI,GAAG,iBAAiB,CAAC;CAC5B;AAFD,0CAEC;AAED;;;;;;;GAOG;AACH,MAAa,cAAe,SAAQ,gBAAgB;IAChD,IAAI,GAAG,gBAAgB,CAAC;IAER,KAAK,CAAU;IAE/B,YAAY,OAAe,EAAE,KAAc;QACvC,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;CACJ;AATD,wCASC"}
|
|
@@ -17,7 +17,7 @@ export interface LatestEventIdProvider {
|
|
|
17
17
|
* @param fullRefreshVolumeId - ID of the volume that should be fully refreshed.
|
|
18
18
|
*/
|
|
19
19
|
export type DriveListener = (event: DriveEvent) => Promise<void>;
|
|
20
|
-
export type DriveEvent = NodeEvent | FastForwardEvent | TreeRefreshEvent | TreeRemovalEvent |
|
|
20
|
+
export type DriveEvent = NodeEvent | FastForwardEvent | TreeRefreshEvent | TreeRemovalEvent | SharedWithMeUpdated;
|
|
21
21
|
export type NodeEvent = {
|
|
22
22
|
type: DriveEventType.NodeCreated | DriveEventType.NodeUpdated;
|
|
23
23
|
nodeUid: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/interface/events.ts"],"names":[],"mappings":";;;AAAA,IAAY,QAKX;AALD,WAAY,QAAQ;IAChB,+CAAmC,CAAA;IACnC,iDAAqC,CAAA;IACrC,mDAAuC,CAAA;IACvC,uDAA2C,CAAA;AAC/C,CAAC,EALW,QAAQ,wBAAR,QAAQ,QAKnB;
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/interface/events.ts"],"names":[],"mappings":";;;AAAA,IAAY,QAKX;AALD,WAAY,QAAQ;IAChB,+CAAmC,CAAA;IACnC,iDAAqC,CAAA;IACrC,mDAAuC,CAAA;IACvC,uDAA2C,CAAA;AAC/C,CAAC,EALW,QAAQ,wBAAR,QAAQ,QAKnB;AA6DD,IAAY,cAQX;AARD,WAAY,cAAc;IACtB,8CAA4B,CAAA;IAC5B,8CAA4B,CAAA;IAC5B,8CAA4B,CAAA;IAC5B,gEAA8C,CAAA;IAC9C,8CAA4B,CAAA;IAC5B,4CAA0B,CAAA;IAC1B,8CAA4B,CAAA;AAChC,CAAC,EARW,cAAc,8BAAd,cAAc,QAQzB"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
export interface ProtonDriveHTTPClient {
|
|
2
|
-
fetchJson(
|
|
3
|
-
fetchBlob(
|
|
2
|
+
fetchJson(request: ProtonDriveHTTPClientJsonRequest): Promise<Response>;
|
|
3
|
+
fetchBlob(request: ProtonDriveHTTPClientBlobRequest): Promise<Response>;
|
|
4
4
|
}
|
|
5
|
-
export type
|
|
5
|
+
export type ProtonDriveHTTPClientJsonRequest = ProtonDriveHTTPClientBaseRequest & {
|
|
6
6
|
json?: object;
|
|
7
7
|
};
|
|
8
|
-
export type
|
|
8
|
+
export type ProtonDriveHTTPClientBlobRequest = ProtonDriveHTTPClientBaseRequest & {
|
|
9
9
|
body?: XMLHttpRequestBodyInit;
|
|
10
10
|
onProgress?: (progress: number) => void;
|
|
11
11
|
};
|
|
12
|
-
type
|
|
12
|
+
type ProtonDriveHTTPClientBaseRequest = {
|
|
13
13
|
url: string;
|
|
14
14
|
method: string;
|
|
15
15
|
headers: Headers;
|
|
@@ -15,7 +15,7 @@ export { DeviceType } from './devices';
|
|
|
15
15
|
export type { FileDownloader, DownloadController, SeekableReadableStream } from './download';
|
|
16
16
|
export type { DriveListener, LatestEventIdProvider, DriveEvent, NodeEvent, FastForwardEvent, TreeRefreshEvent, TreeRemovalEvent, SharedWithMeUpdated, } from './events';
|
|
17
17
|
export { DriveEventType, SDKEvent } from './events';
|
|
18
|
-
export type { ProtonDriveHTTPClient,
|
|
18
|
+
export type { ProtonDriveHTTPClient, ProtonDriveHTTPClientJsonRequest, ProtonDriveHTTPClientBlobRequest, } from './httpClient';
|
|
19
19
|
export type { MaybeNode, NodeEntity, DegradedNode, MaybeMissingNode, MissingNode, InvalidNameError, Revision, NodeOrUid, RevisionOrUid, NodeResult, Membership, } from './nodes';
|
|
20
20
|
export { NodeType, MemberRole, RevisionState } from './nodes';
|
|
21
21
|
export type { ProtonInvitation, ProtonInvitationWithNode, NonProtonInvitation, Member, PublicLink, MaybeBookmark, Bookmark, DegradedBookmark, ProtonInvitationOrUid, NonProtonInvitationOrUid, BookmarkOrUid, ShareNodeSettings, UnshareNodeSettings, ShareMembersSettings, SharePublicLinkSettings, SharePublicLinkSettingsObject, ShareResult, } from './sharing';
|
|
@@ -29,10 +29,20 @@ export type ProtonDriveTelemetry = Telemetry<MetricEvent>;
|
|
|
29
29
|
export type ProtonDriveEntitiesCache = ProtonDriveCache<string>;
|
|
30
30
|
export type ProtonDriveCryptoCache = ProtonDriveCache<CachedCryptoMaterial>;
|
|
31
31
|
export type CachedCryptoMaterial = {
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
32
|
+
nodeKeys?: {
|
|
33
|
+
passphrase: string;
|
|
34
|
+
key: PrivateKey;
|
|
35
|
+
passphraseSessionKey: SessionKey;
|
|
36
|
+
contentKeyPacketSessionKey?: SessionKey;
|
|
37
|
+
hashKey?: Uint8Array;
|
|
38
|
+
};
|
|
39
|
+
shareKey?: {
|
|
40
|
+
key: PrivateKey;
|
|
41
|
+
passphraseSessionKey: SessionKey;
|
|
42
|
+
};
|
|
43
|
+
publicShareKey?: {
|
|
44
|
+
key: PrivateKey;
|
|
45
|
+
};
|
|
36
46
|
};
|
|
37
47
|
export interface ProtonDriveClientContructorParameters {
|
|
38
48
|
httpClient: ProtonDriveHTTPClient;
|
|
@@ -135,7 +135,7 @@ class DriveAPIService {
|
|
|
135
135
|
if (error instanceof errors_1.ProtonDriveError) {
|
|
136
136
|
throw error;
|
|
137
137
|
}
|
|
138
|
-
throw (0, errors_2.apiErrorFactory)({ response });
|
|
138
|
+
throw (0, errors_2.apiErrorFactory)({ response, error });
|
|
139
139
|
}
|
|
140
140
|
}
|
|
141
141
|
async getBlockStream(baseUrl, token, signal) {
|
|
@@ -186,7 +186,12 @@ class DriveAPIService {
|
|
|
186
186
|
if (request.signal?.aborted) {
|
|
187
187
|
throw new errors_1.AbortError((0, ttag_1.c)('Error').t `Request aborted`);
|
|
188
188
|
}
|
|
189
|
-
|
|
189
|
+
if (attempt > 0) {
|
|
190
|
+
this.logger.debug(`${request.method} ${request.url}: retry ${attempt}`);
|
|
191
|
+
}
|
|
192
|
+
else {
|
|
193
|
+
this.logger.debug(`${request.method} ${request.url}`);
|
|
194
|
+
}
|
|
190
195
|
if (this.hasReachedServerErrorLimit) {
|
|
191
196
|
this.logger.warn('Server errors limit reached');
|
|
192
197
|
throw new errors_1.ServerError((0, ttag_1.c)('Error').t `Too many server errors, please try again later`);
|
|
@@ -195,6 +200,7 @@ class DriveAPIService {
|
|
|
195
200
|
this.logger.warn('Too many requests limit reached');
|
|
196
201
|
throw new errors_1.RateLimitedError((0, ttag_1.c)('Error').t `Too many server requests, please try again later`);
|
|
197
202
|
}
|
|
203
|
+
const start = Date.now();
|
|
198
204
|
let response;
|
|
199
205
|
try {
|
|
200
206
|
response = await callback();
|
|
@@ -220,11 +226,13 @@ class DriveAPIService {
|
|
|
220
226
|
this.logger.error(`${request.method} ${request.url}: failed`, error);
|
|
221
227
|
throw error;
|
|
222
228
|
}
|
|
229
|
+
const end = Date.now();
|
|
230
|
+
const duration = end - start;
|
|
223
231
|
if (response.ok) {
|
|
224
|
-
this.logger.info(`${request.method} ${request.url}: ${response.status}`);
|
|
232
|
+
this.logger.info(`${request.method} ${request.url}: ${response.status} (${duration}ms)`);
|
|
225
233
|
}
|
|
226
234
|
else {
|
|
227
|
-
this.logger.warn(`${request.method} ${request.url}: ${response.status}`);
|
|
235
|
+
this.logger.warn(`${request.method} ${request.url}: ${response.status} (${duration}ms)`);
|
|
228
236
|
}
|
|
229
237
|
if (response.status === 429 /* HTTPErrorCode.TOO_MANY_REQUESTS */) {
|
|
230
238
|
this.tooManyRequestsErrorHappened();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apiService.js","sourceRoot":"","sources":["../../../src/internal/apiService/apiService.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"apiService.js","sourceRoot":"","sources":["../../../src/internal/apiService/apiService.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errorCodes.js","sourceRoot":"","sources":["../../../src/internal/apiService/errorCodes.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"errorCodes.js","sourceRoot":"","sources":["../../../src/internal/apiService/errorCodes.ts"],"names":[],"mappings":";;AAQA,4BAEC;AAED,sCAEC;AAND,SAAgB,QAAQ,CAAC,IAAY;IACjC,OAAO,IAAI,4BAAiB,IAAI,IAAI,iCAAsB,IAAI,IAAI,kCAAuB,CAAC;AAC9F,CAAC;AAED,SAAgB,aAAa,CAAC,IAAY;IACtC,OAAO,IAAI,kCAAuB,CAAC;AACvC,CAAC"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { ServerError } from '../../errors';
|
|
2
|
-
export declare function apiErrorFactory({ response, result }: {
|
|
1
|
+
import { ServerError, ValidationError } from '../../errors';
|
|
2
|
+
export declare function apiErrorFactory({ response, result, error, }: {
|
|
3
3
|
response: Response;
|
|
4
4
|
result?: unknown;
|
|
5
|
+
error?: unknown;
|
|
5
6
|
}): ServerError;
|
|
6
7
|
export declare class APIHTTPError extends ServerError {
|
|
7
8
|
name: string;
|
|
@@ -14,6 +15,6 @@ export declare class APICodeError extends ServerError {
|
|
|
14
15
|
readonly debug?: object;
|
|
15
16
|
constructor(message: string, code: number, debug?: object);
|
|
16
17
|
}
|
|
17
|
-
export declare class NotFoundAPIError extends
|
|
18
|
+
export declare class NotFoundAPIError extends ValidationError {
|
|
18
19
|
name: string;
|
|
19
20
|
}
|
|
@@ -4,12 +4,15 @@ exports.NotFoundAPIError = exports.APICodeError = exports.APIHTTPError = void 0;
|
|
|
4
4
|
exports.apiErrorFactory = apiErrorFactory;
|
|
5
5
|
const ttag_1 = require("ttag");
|
|
6
6
|
const errors_1 = require("../../errors");
|
|
7
|
-
function apiErrorFactory({ response, result }) {
|
|
7
|
+
function apiErrorFactory({ response, result, error, }) {
|
|
8
8
|
// Backend responses with 404 both in the response and body code.
|
|
9
9
|
// In such a case we want to stick to APIHTTPError to be very clear
|
|
10
10
|
// it is not NotFoundAPIError.
|
|
11
11
|
if (response.status === 404 /* HTTPErrorCode.NOT_FOUND */ || !result) {
|
|
12
|
-
|
|
12
|
+
const fallbackMessage = error instanceof Error ? error.message : (0, ttag_1.c)('Error').t `Unknown error`;
|
|
13
|
+
const apiHttpError = new APIHTTPError(response.statusText || fallbackMessage, response.status);
|
|
14
|
+
apiHttpError.cause = error;
|
|
15
|
+
return apiHttpError;
|
|
13
16
|
}
|
|
14
17
|
const typedResult = result;
|
|
15
18
|
const [code, message, details] = [
|
|
@@ -28,7 +31,7 @@ function apiErrorFactory({ response, result }) {
|
|
|
28
31
|
: undefined;
|
|
29
32
|
switch (code) {
|
|
30
33
|
case 2501 /* ErrorCode.NOT_EXISTS */:
|
|
31
|
-
return new NotFoundAPIError(message, code);
|
|
34
|
+
return new NotFoundAPIError(message, code, details);
|
|
32
35
|
// ValidationError should be only when it is clearly user input error,
|
|
33
36
|
// otherwise it should be ServerError.
|
|
34
37
|
// Here we convert only general enough codes. Specific cases that are
|
|
@@ -76,7 +79,7 @@ class APICodeError extends errors_1.ServerError {
|
|
|
76
79
|
}
|
|
77
80
|
}
|
|
78
81
|
exports.APICodeError = APICodeError;
|
|
79
|
-
class NotFoundAPIError extends
|
|
82
|
+
class NotFoundAPIError extends errors_1.ValidationError {
|
|
80
83
|
name = 'NotFoundAPIError';
|
|
81
84
|
}
|
|
82
85
|
exports.NotFoundAPIError = NotFoundAPIError;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/internal/apiService/errors.ts"],"names":[],"mappings":";;;AAKA,
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/internal/apiService/errors.ts"],"names":[],"mappings":";;;AAKA,0CA2EC;AAhFD,+BAAyB;AAEzB,yCAA4D;AAG5D,SAAgB,eAAe,CAAC,EAC5B,QAAQ,EACR,MAAM,EACN,KAAK,GAKR;IACG,iEAAiE;IACjE,mEAAmE;IACnE,8BAA8B;IAC9B,IAAI,QAAQ,CAAC,MAAM,sCAA4B,IAAI,CAAC,MAAM,EAAE,CAAC;QACzD,MAAM,eAAe,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAA,QAAC,EAAC,OAAO,CAAC,CAAC,CAAC,CAAA,eAAe,CAAC;QAC7F,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,QAAQ,CAAC,UAAU,IAAI,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC/F,YAAY,CAAC,KAAK,GAAG,KAAK,CAAC;QAC3B,OAAO,YAAY,CAAC;IACxB,CAAC;IAED,MAAM,WAAW,GAAG,MASnB,CAAC;IAEF,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG;QAC7B,WAAW,CAAC,IAAI,IAAI,CAAC;QACrB,WAAW,CAAC,KAAK,IAAI,IAAA,QAAC,EAAC,OAAO,CAAC,CAAC,CAAC,CAAA,eAAe;QAChD,WAAW,CAAC,OAAO;KACtB,CAAC;IAEF,MAAM,KAAK,GAAG,WAAW,CAAC,SAAS;QAC/B,CAAC,CAAC;YACI,SAAS,EAAE,WAAW,CAAC,SAAS;YAChC,OAAO,EAAE,WAAW,CAAC,OAAO;YAC5B,IAAI,EAAE,WAAW,CAAC,IAAI;YACtB,IAAI,EAAE,WAAW,CAAC,IAAI;YACtB,KAAK,EAAE,WAAW,CAAC,KAAK;SAC3B;QACH,CAAC,CAAC,SAAS,CAAC;IAEhB,QAAQ,IAAI,EAAE,CAAC;QACX;YACI,OAAO,IAAI,gBAAgB,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QACxD,sEAAsE;QACtE,sCAAsC;QACtC,qEAAqE;QACrE,gEAAgE;QAChE,cAAc;QACd,wCAA6B;QAC7B,iDAAsC;QACtC,sEAA2D;QAC3D,yCAA8B;QAC9B,+CAAkC;QAClC,+CAAkC;QAClC,wDAA2C;QAC3C,+DAAkD;QAClD,sDAAyC;QACzC,sDAAyC;QACzC,mFAAsE;QACtE,8CAAiC;QACjC,6CAAgC;QAChC,0DAA6C;QAC7C,qDAAwC;QACxC,4DAA+C;QAC/C;YACI,OAAO,IAAI,wBAAe,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QACvD;YACI,OAAO,IAAI,YAAY,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IACtD,CAAC;AACL,CAAC;AAED,MAAa,YAAa,SAAQ,oBAAW;IACzC,IAAI,GAAG,cAAc,CAAC;IAEN,UAAU,CAAS;IAEnC,YAAY,OAAe,EAAE,UAAkB;QAC3C,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;CACJ;AATD,oCASC;AAED,MAAa,YAAa,SAAQ,oBAAW;IACzC,IAAI,GAAG,cAAc,CAAC;IAEN,IAAI,CAAS;IAEb,KAAK,CAAU;IAE/B,YAAY,OAAe,EAAE,IAAY,EAAE,KAAc;QACrD,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;CACJ;AAZD,oCAYC;AAED,MAAa,gBAAiB,SAAQ,wBAAe;IACjD,IAAI,GAAG,kBAAkB,CAAC;CAC7B;AAFD,4CAEC"}
|
|
@@ -70,7 +70,8 @@ describe('apiErrorFactory should return', () => {
|
|
|
70
70
|
it('NotFoundAPIError when code is ErrorCode.NOT_EXISTS', () => {
|
|
71
71
|
const error = (0, errors_1.apiErrorFactory)(mockAPIResponseAndResult({ code: 2501 /* ErrorCode.NOT_EXISTS */, message: 'Not found' }));
|
|
72
72
|
expect(error).toBeInstanceOf(errors.NotFoundAPIError);
|
|
73
|
-
|
|
73
|
+
expect(error.message).toBe('Not found');
|
|
74
|
+
expect(error.code).toBe(2501 /* ErrorCode.NOT_EXISTS */);
|
|
74
75
|
});
|
|
75
76
|
});
|
|
76
77
|
function expectAPICodeError(error, code, message) {
|