@protontech/drive-sdk 0.3.0 → 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/interface/httpClient.d.ts +5 -5
- package/dist/interface/index.d.ts +15 -5
- package/dist/internal/apiService/apiService.js +1 -1
- 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/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/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/sharingManagement.d.ts +3 -1
- package/dist/internal/sharing/sharingManagement.js +10 -1
- package/dist/internal/sharing/sharingManagement.js.map +1 -1
- package/dist/internal/sharing/sharingManagement.test.js +32 -1
- 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/protonDriveClient.d.ts +18 -3
- package/dist/protonDriveClient.js +30 -8
- 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/interface/httpClient.ts +5 -5
- package/src/interface/index.ts +18 -6
- package/src/internal/apiService/apiService.ts +1 -1
- 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/cryptoCache.test.ts +4 -7
- package/src/internal/nodes/cryptoCache.ts +6 -7
- package/src/internal/nodes/interface.ts +2 -0
- 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/sharingManagement.test.ts +33 -0
- package/src/internal/sharing/sharingManagement.ts +9 -0
- 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/protonDriveClient.ts +47 -11
- package/src/protonDrivePublicLinkClient.ts +121 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protonDriveClient.js","sourceRoot":"","sources":["../src/protonDriveClient.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"protonDriveClient.js","sourceRoot":"","sources":["../src/protonDriveClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { OpenPGPCrypto, SRPModule, SessionKey } from './crypto';
|
|
2
|
+
import { ProtonDriveHTTPClient, ProtonDriveTelemetry, ProtonDriveConfig, ProtonDriveCryptoCache, NodeOrUid } from './interface';
|
|
3
|
+
/**
|
|
4
|
+
* ProtonDrivePublicLinkClient is the interface for the public link client.
|
|
5
|
+
*
|
|
6
|
+
* The client provides high-level operations for managing nodes, and
|
|
7
|
+
* downloading/uploading files.
|
|
8
|
+
*
|
|
9
|
+
* Do not use this client direclty, use ProtonDriveClient instead.
|
|
10
|
+
* The main client handles public link sessions and provides access to
|
|
11
|
+
* public links.
|
|
12
|
+
*
|
|
13
|
+
* See `experimental.getPublicLinkInfo` and `experimental.authPublicLink`
|
|
14
|
+
* for more information.
|
|
15
|
+
*/
|
|
16
|
+
export declare class ProtonDrivePublicLinkClient {
|
|
17
|
+
private logger;
|
|
18
|
+
private sdkEvents;
|
|
19
|
+
private sharingPublic;
|
|
20
|
+
experimental: {
|
|
21
|
+
/**
|
|
22
|
+
* Experimental feature to return the URL of the node.
|
|
23
|
+
*
|
|
24
|
+
* Use it when you want to open the node in the ProtonDrive web app.
|
|
25
|
+
*
|
|
26
|
+
* It has hardcoded URLs to open in production client only.
|
|
27
|
+
*/
|
|
28
|
+
getNodeUrl: (nodeUid: NodeOrUid) => Promise<string>;
|
|
29
|
+
/**
|
|
30
|
+
* Experimental feature to get the docs key for a node.
|
|
31
|
+
*
|
|
32
|
+
* This is used by Docs app to encrypt and decrypt document updates.
|
|
33
|
+
*/
|
|
34
|
+
getDocsKey: (nodeUid: NodeOrUid) => Promise<SessionKey>;
|
|
35
|
+
};
|
|
36
|
+
constructor({ httpClient, cryptoCache, openPGPCryptoModule, srpModule, config, telemetry, token, password, }: {
|
|
37
|
+
httpClient: ProtonDriveHTTPClient;
|
|
38
|
+
cryptoCache: ProtonDriveCryptoCache;
|
|
39
|
+
openPGPCryptoModule: OpenPGPCrypto;
|
|
40
|
+
srpModule: SRPModule;
|
|
41
|
+
config?: ProtonDriveConfig;
|
|
42
|
+
telemetry?: ProtonDriveTelemetry;
|
|
43
|
+
token: string;
|
|
44
|
+
password: string;
|
|
45
|
+
});
|
|
46
|
+
getRootNode(): Promise<import("./internal/sharingPublic/interface").DecryptedNode>;
|
|
47
|
+
iterateChildren(parentUid: NodeOrUid): AsyncGenerator<import("./internal/sharingPublic/interface").DecryptedNode, void, any>;
|
|
48
|
+
}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ProtonDrivePublicLinkClient = void 0;
|
|
4
|
+
const config_1 = require("./config");
|
|
5
|
+
const crypto_1 = require("./crypto");
|
|
6
|
+
const telemetry_1 = require("./telemetry");
|
|
7
|
+
const transformers_1 = require("./transformers");
|
|
8
|
+
const apiService_1 = require("./internal/apiService");
|
|
9
|
+
const sdkEvents_1 = require("./internal/sdkEvents");
|
|
10
|
+
const sharingPublic_1 = require("./internal/sharingPublic");
|
|
11
|
+
/**
|
|
12
|
+
* ProtonDrivePublicLinkClient is the interface for the public link client.
|
|
13
|
+
*
|
|
14
|
+
* The client provides high-level operations for managing nodes, and
|
|
15
|
+
* downloading/uploading files.
|
|
16
|
+
*
|
|
17
|
+
* Do not use this client direclty, use ProtonDriveClient instead.
|
|
18
|
+
* The main client handles public link sessions and provides access to
|
|
19
|
+
* public links.
|
|
20
|
+
*
|
|
21
|
+
* See `experimental.getPublicLinkInfo` and `experimental.authPublicLink`
|
|
22
|
+
* for more information.
|
|
23
|
+
*/
|
|
24
|
+
class ProtonDrivePublicLinkClient {
|
|
25
|
+
logger;
|
|
26
|
+
sdkEvents;
|
|
27
|
+
sharingPublic;
|
|
28
|
+
experimental;
|
|
29
|
+
constructor({ httpClient, cryptoCache, openPGPCryptoModule, srpModule, config, telemetry, token, password, }) {
|
|
30
|
+
if (!telemetry) {
|
|
31
|
+
telemetry = new telemetry_1.Telemetry();
|
|
32
|
+
}
|
|
33
|
+
this.logger = telemetry.getLogger('interface');
|
|
34
|
+
const fullConfig = (0, config_1.getConfig)(config);
|
|
35
|
+
this.sdkEvents = new sdkEvents_1.SDKEvents(telemetry);
|
|
36
|
+
const apiService = new apiService_1.DriveAPIService(telemetry, this.sdkEvents, httpClient, fullConfig.baseUrl, fullConfig.language);
|
|
37
|
+
const driveCrypto = new crypto_1.DriveCrypto(openPGPCryptoModule, srpModule);
|
|
38
|
+
this.sharingPublic = (0, sharingPublic_1.initSharingPublicModule)(telemetry, apiService, cryptoCache, driveCrypto, token, password);
|
|
39
|
+
this.experimental = {
|
|
40
|
+
getNodeUrl: async (nodeUid) => {
|
|
41
|
+
this.logger.debug(`Getting node URL for ${(0, transformers_1.getUid)(nodeUid)}`);
|
|
42
|
+
// TODO: public node has different URL
|
|
43
|
+
return '';
|
|
44
|
+
},
|
|
45
|
+
getDocsKey: async (nodeUid) => {
|
|
46
|
+
this.logger.debug(`Getting docs keys for ${(0, transformers_1.getUid)(nodeUid)}`);
|
|
47
|
+
const keys = await this.sharingPublic.getNodeKeys((0, transformers_1.getUid)(nodeUid));
|
|
48
|
+
if (!keys.contentKeyPacketSessionKey) {
|
|
49
|
+
throw new Error('Node does not have a content key packet session key');
|
|
50
|
+
}
|
|
51
|
+
return keys.contentKeyPacketSessionKey;
|
|
52
|
+
},
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
// TODO: comment
|
|
56
|
+
// TODO: add public node interface
|
|
57
|
+
async getRootNode() {
|
|
58
|
+
this.logger.info(`Getting root node`);
|
|
59
|
+
// TODO: conversion to public node
|
|
60
|
+
return this.sharingPublic.getRootNode();
|
|
61
|
+
}
|
|
62
|
+
// TODO: comment
|
|
63
|
+
// TODO: add public node interface
|
|
64
|
+
async *iterateChildren(parentUid) {
|
|
65
|
+
this.logger.info(`Iterating children of ${(0, transformers_1.getUid)(parentUid)}`);
|
|
66
|
+
// TODO: conversion to public node
|
|
67
|
+
yield* this.sharingPublic.iterateChildren((0, transformers_1.getUid)(parentUid));
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
exports.ProtonDrivePublicLinkClient = ProtonDrivePublicLinkClient;
|
|
71
|
+
//# sourceMappingURL=protonDrivePublicLinkClient.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"protonDrivePublicLinkClient.js","sourceRoot":"","sources":["../src/protonDrivePublicLinkClient.ts"],"names":[],"mappings":";;;AAAA,qCAAqC;AACrC,qCAA6E;AAS7E,2CAAwC;AACxC,iDAAwC;AACxC,sDAAwD;AACxD,oDAAiD;AACjD,4DAAmE;AAEnE;;;;;;;;;;;;GAYG;AACH,MAAa,2BAA2B;IAC5B,MAAM,CAAS;IACf,SAAS,CAAY;IACrB,aAAa,CAA6C;IAE3D,YAAY,CAejB;IAEF,YAAY,EACR,UAAU,EACV,WAAW,EACX,mBAAmB,EACnB,SAAS,EACT,MAAM,EACN,SAAS,EACT,KAAK,EACL,QAAQ,GAUX;QACG,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,SAAS,GAAG,IAAI,qBAAS,EAAE,CAAC;QAChC,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QAE/C,MAAM,UAAU,GAAG,IAAA,kBAAS,EAAC,MAAM,CAAC,CAAC;QACrC,IAAI,CAAC,SAAS,GAAG,IAAI,qBAAS,CAAC,SAAS,CAAC,CAAC;QAE1C,MAAM,UAAU,GAAG,IAAI,4BAAe,CAClC,SAAS,EACT,IAAI,CAAC,SAAS,EACd,UAAU,EACV,UAAU,CAAC,OAAO,EAClB,UAAU,CAAC,QAAQ,CACtB,CAAC;QACF,MAAM,WAAW,GAAG,IAAI,oBAAW,CAAC,mBAAmB,EAAE,SAAS,CAAC,CAAC;QACpE,IAAI,CAAC,aAAa,GAAG,IAAA,uCAAuB,EAAC,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;QAE/G,IAAI,CAAC,YAAY,GAAG;YAChB,UAAU,EAAE,KAAK,EAAE,OAAkB,EAAE,EAAE;gBACrC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,IAAA,qBAAM,EAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBAC7D,sCAAsC;gBACtC,OAAO,EAAE,CAAC;YACd,CAAC;YACD,UAAU,EAAE,KAAK,EAAE,OAAkB,EAAE,EAAE;gBACrC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,IAAA,qBAAM,EAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBAC9D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,IAAA,qBAAM,EAAC,OAAO,CAAC,CAAC,CAAC;gBACnE,IAAI,CAAC,IAAI,CAAC,0BAA0B,EAAE,CAAC;oBACnC,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;gBAC3E,CAAC;gBACD,OAAO,IAAI,CAAC,0BAA0B,CAAC;YAC3C,CAAC;SACJ,CAAC;IACN,CAAC;IAED,gBAAgB;IAChB,kCAAkC;IAClC,KAAK,CAAC,WAAW;QACb,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACtC,kCAAkC;QAClC,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;IAC5C,CAAC;IAED,gBAAgB;IAChB,kCAAkC;IAClC,KAAK,CAAC,CAAC,eAAe,CAAC,SAAoB;QACvC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,IAAA,qBAAM,EAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAC/D,kCAAkC;QAClC,KAAM,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,IAAA,qBAAM,EAAC,SAAS,CAAC,CAAC,CAAC;IAClE,CAAC;CACJ;AA3FD,kEA2FC"}
|
package/package.json
CHANGED
package/src/crypto/interface.ts
CHANGED
|
@@ -52,6 +52,17 @@ export enum VERIFICATION_STATUS {
|
|
|
52
52
|
}
|
|
53
53
|
|
|
54
54
|
export interface SRPModule {
|
|
55
|
+
getSrp: (
|
|
56
|
+
version: number,
|
|
57
|
+
modulus: string,
|
|
58
|
+
serverEphemeral: string,
|
|
59
|
+
salt: string,
|
|
60
|
+
password: string,
|
|
61
|
+
) => Promise<{
|
|
62
|
+
expectedServerProof: string;
|
|
63
|
+
clientProof: string;
|
|
64
|
+
clientEphemeral: string;
|
|
65
|
+
}>;
|
|
55
66
|
getSrpVerifier: (password: string) => Promise<SRPVerifier>;
|
|
56
67
|
computeKeyPassword: (password: string, salt: string) => Promise<string>;
|
|
57
68
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ProtonDriveHTTPClient,
|
|
3
|
-
|
|
4
|
-
|
|
3
|
+
ProtonDriveHTTPClientBlobRequest,
|
|
4
|
+
ProtonDriveHTTPClientJsonRequest,
|
|
5
5
|
} from '../interface';
|
|
6
6
|
import { EventsGenerator } from './eventsGenerator';
|
|
7
7
|
|
|
@@ -19,7 +19,7 @@ export class DiagnosticHTTPClient extends EventsGenerator implements ProtonDrive
|
|
|
19
19
|
this.httpClient = httpClient;
|
|
20
20
|
}
|
|
21
21
|
|
|
22
|
-
async fetchJson(options:
|
|
22
|
+
async fetchJson(options: ProtonDriveHTTPClientJsonRequest): Promise<Response> {
|
|
23
23
|
try {
|
|
24
24
|
const response = await this.httpClient.fetchJson(options);
|
|
25
25
|
|
|
@@ -78,7 +78,7 @@ export class DiagnosticHTTPClient extends EventsGenerator implements ProtonDrive
|
|
|
78
78
|
}
|
|
79
79
|
}
|
|
80
80
|
|
|
81
|
-
fetchBlob(options:
|
|
81
|
+
fetchBlob(options: ProtonDriveHTTPClientBlobRequest): Promise<Response> {
|
|
82
82
|
return this.httpClient.fetchBlob(options);
|
|
83
83
|
}
|
|
84
84
|
}
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
export interface ProtonDriveHTTPClient {
|
|
2
|
-
fetchJson(
|
|
3
|
-
fetchBlob(
|
|
2
|
+
fetchJson(request: ProtonDriveHTTPClientJsonRequest): Promise<Response>;
|
|
3
|
+
fetchBlob(request: ProtonDriveHTTPClientBlobRequest): Promise<Response>;
|
|
4
4
|
}
|
|
5
5
|
|
|
6
|
-
export type
|
|
6
|
+
export type ProtonDriveHTTPClientJsonRequest = ProtonDriveHTTPClientBaseRequest & {
|
|
7
7
|
json?: object;
|
|
8
8
|
};
|
|
9
9
|
|
|
10
|
-
export type
|
|
10
|
+
export type ProtonDriveHTTPClientBlobRequest = ProtonDriveHTTPClientBaseRequest & {
|
|
11
11
|
body?: XMLHttpRequestBodyInit;
|
|
12
12
|
onProgress?: (progress: number) => void;
|
|
13
13
|
};
|
|
14
14
|
|
|
15
|
-
type
|
|
15
|
+
type ProtonDriveHTTPClientBaseRequest = {
|
|
16
16
|
url: string;
|
|
17
17
|
method: string;
|
|
18
18
|
headers: Headers;
|
package/src/interface/index.ts
CHANGED
|
@@ -27,8 +27,8 @@ export type {
|
|
|
27
27
|
export { DriveEventType, SDKEvent } from './events';
|
|
28
28
|
export type {
|
|
29
29
|
ProtonDriveHTTPClient,
|
|
30
|
-
|
|
31
|
-
|
|
30
|
+
ProtonDriveHTTPClientJsonRequest,
|
|
31
|
+
ProtonDriveHTTPClientBlobRequest,
|
|
32
32
|
} from './httpClient';
|
|
33
33
|
export type {
|
|
34
34
|
MaybeNode,
|
|
@@ -89,10 +89,22 @@ export type ProtonDriveTelemetry = Telemetry<MetricEvent>;
|
|
|
89
89
|
export type ProtonDriveEntitiesCache = ProtonDriveCache<string>;
|
|
90
90
|
export type ProtonDriveCryptoCache = ProtonDriveCache<CachedCryptoMaterial>;
|
|
91
91
|
export type CachedCryptoMaterial = {
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
92
|
+
nodeKeys?: {
|
|
93
|
+
// Passphrase should not be needed to keep, sessionKey should be enough.
|
|
94
|
+
// We will improve this in the future.
|
|
95
|
+
passphrase: string;
|
|
96
|
+
key: PrivateKey;
|
|
97
|
+
passphraseSessionKey: SessionKey;
|
|
98
|
+
contentKeyPacketSessionKey?: SessionKey;
|
|
99
|
+
hashKey?: Uint8Array;
|
|
100
|
+
};
|
|
101
|
+
shareKey?: {
|
|
102
|
+
key: PrivateKey;
|
|
103
|
+
passphraseSessionKey: SessionKey;
|
|
104
|
+
};
|
|
105
|
+
publicShareKey?: {
|
|
106
|
+
key: PrivateKey;
|
|
107
|
+
};
|
|
96
108
|
};
|
|
97
109
|
|
|
98
110
|
export interface ProtonDriveClientContructorParameters {
|
|
@@ -62,7 +62,8 @@ describe('apiErrorFactory should return', () => {
|
|
|
62
62
|
it('NotFoundAPIError when code is ErrorCode.NOT_EXISTS', () => {
|
|
63
63
|
const error = apiErrorFactory(mockAPIResponseAndResult({ code: ErrorCode.NOT_EXISTS, message: 'Not found' }));
|
|
64
64
|
expect(error).toBeInstanceOf(errors.NotFoundAPIError);
|
|
65
|
-
|
|
65
|
+
expect(error.message).toBe('Not found');
|
|
66
|
+
expect((error as errors.NotFoundAPIError).code).toBe(ErrorCode.NOT_EXISTS);
|
|
66
67
|
});
|
|
67
68
|
});
|
|
68
69
|
|
|
@@ -3,12 +3,23 @@ import { c } from 'ttag';
|
|
|
3
3
|
import { ServerError, ValidationError } from '../../errors';
|
|
4
4
|
import { ErrorCode, HTTPErrorCode } from './errorCodes';
|
|
5
5
|
|
|
6
|
-
export function apiErrorFactory({
|
|
6
|
+
export function apiErrorFactory({
|
|
7
|
+
response,
|
|
8
|
+
result,
|
|
9
|
+
error,
|
|
10
|
+
}: {
|
|
11
|
+
response: Response;
|
|
12
|
+
result?: unknown;
|
|
13
|
+
error?: unknown;
|
|
14
|
+
}): ServerError {
|
|
7
15
|
// Backend responses with 404 both in the response and body code.
|
|
8
16
|
// In such a case we want to stick to APIHTTPError to be very clear
|
|
9
17
|
// it is not NotFoundAPIError.
|
|
10
18
|
if (response.status === HTTPErrorCode.NOT_FOUND || !result) {
|
|
11
|
-
|
|
19
|
+
const fallbackMessage = error instanceof Error ? error.message : c('Error').t`Unknown error`;
|
|
20
|
+
const apiHttpError = new APIHTTPError(response.statusText || fallbackMessage, response.status);
|
|
21
|
+
apiHttpError.cause = error;
|
|
22
|
+
return apiHttpError;
|
|
12
23
|
}
|
|
13
24
|
|
|
14
25
|
const typedResult = result as {
|
|
@@ -40,7 +51,7 @@ export function apiErrorFactory({ response, result }: { response: Response; resu
|
|
|
40
51
|
|
|
41
52
|
switch (code) {
|
|
42
53
|
case ErrorCode.NOT_EXISTS:
|
|
43
|
-
return new NotFoundAPIError(message, code);
|
|
54
|
+
return new NotFoundAPIError(message, code, details);
|
|
44
55
|
// ValidationError should be only when it is clearly user input error,
|
|
45
56
|
// otherwise it should be ServerError.
|
|
46
57
|
// Here we convert only general enough codes. Specific cases that are
|
|
@@ -94,6 +105,6 @@ export class APICodeError extends ServerError {
|
|
|
94
105
|
}
|
|
95
106
|
}
|
|
96
107
|
|
|
97
|
-
export class NotFoundAPIError extends
|
|
108
|
+
export class NotFoundAPIError extends ValidationError {
|
|
98
109
|
name = 'NotFoundAPIError';
|
|
99
110
|
}
|
|
@@ -7,7 +7,7 @@ import { VolumeEventManager } from './volumeEventManager';
|
|
|
7
7
|
import { EventManager } from './eventManager';
|
|
8
8
|
import { SharesManager } from '../shares/manager';
|
|
9
9
|
|
|
10
|
-
export type { DriveEvent, DriveListener } from './interface';
|
|
10
|
+
export type { DriveEvent, DriveListener, EventSubscription } from './interface';
|
|
11
11
|
export { DriveEventType } from './interface';
|
|
12
12
|
|
|
13
13
|
const OWN_VOLUME_POLLING_INTERVAL = 30;
|
|
@@ -18,10 +18,7 @@ describe('nodesCryptoCache', () => {
|
|
|
18
18
|
|
|
19
19
|
beforeEach(async () => {
|
|
20
20
|
memoryCache = new MemoryCache();
|
|
21
|
-
await memoryCache.setEntity('nodeKeys-
|
|
22
|
-
key: 'privateKey',
|
|
23
|
-
sessionKey: 'sessionKey',
|
|
24
|
-
} as any);
|
|
21
|
+
await memoryCache.setEntity('nodeKeys-missingProperties', {} as any);
|
|
25
22
|
|
|
26
23
|
cache = new NodesCryptoCache(getMockLogger(), memoryCache);
|
|
27
24
|
});
|
|
@@ -96,14 +93,14 @@ describe('nodesCryptoCache', () => {
|
|
|
96
93
|
|
|
97
94
|
it('should throw an error when retrieving a bad keys and remove the key', async () => {
|
|
98
95
|
try {
|
|
99
|
-
await cache.getNodeKeys('
|
|
96
|
+
await cache.getNodeKeys('missingProperties');
|
|
100
97
|
throw new Error('Should have thrown an error');
|
|
101
98
|
} catch (error) {
|
|
102
|
-
expect(`${error}`).toBe('Error: Failed to deserialize node keys
|
|
99
|
+
expect(`${error}`).toBe('Error: Failed to deserialize node keys');
|
|
103
100
|
}
|
|
104
101
|
|
|
105
102
|
try {
|
|
106
|
-
await memoryCache.getEntity('nodeKeys-
|
|
103
|
+
await memoryCache.getEntity('nodeKeys-missingProperties');
|
|
107
104
|
throw new Error('Should have thrown an error');
|
|
108
105
|
} catch (error) {
|
|
109
106
|
expect(`${error}`).toBe('Error: Entity not found');
|
|
@@ -18,12 +18,14 @@ export class NodesCryptoCache {
|
|
|
18
18
|
|
|
19
19
|
async setNodeKeys(nodeUid: string, keys: DecryptedNodeKeys): Promise<void> {
|
|
20
20
|
const cacheUid = getCacheKey(nodeUid);
|
|
21
|
-
await this.driveCache.setEntity(cacheUid,
|
|
21
|
+
await this.driveCache.setEntity(cacheUid, {
|
|
22
|
+
nodeKeys: keys,
|
|
23
|
+
});
|
|
22
24
|
}
|
|
23
25
|
|
|
24
26
|
async getNodeKeys(nodeUid: string): Promise<DecryptedNodeKeys> {
|
|
25
27
|
const nodeKeysData = await this.driveCache.getEntity(getCacheKey(nodeUid));
|
|
26
|
-
if (!nodeKeysData.
|
|
28
|
+
if (!nodeKeysData.nodeKeys) {
|
|
27
29
|
try {
|
|
28
30
|
await this.removeNodeKeys([nodeUid]);
|
|
29
31
|
} catch (removingError: unknown) {
|
|
@@ -33,12 +35,9 @@ export class NodesCryptoCache {
|
|
|
33
35
|
`Failed to remove corrupted node keys from the cache: ${removingError instanceof Error ? removingError.message : removingError}`,
|
|
34
36
|
);
|
|
35
37
|
}
|
|
36
|
-
throw new Error(`Failed to deserialize node keys
|
|
38
|
+
throw new Error(`Failed to deserialize node keys`);
|
|
37
39
|
}
|
|
38
|
-
return
|
|
39
|
-
...nodeKeysData,
|
|
40
|
-
passphrase: nodeKeysData.passphrase,
|
|
41
|
-
};
|
|
40
|
+
return nodeKeysData.nodeKeys;
|
|
42
41
|
}
|
|
43
42
|
|
|
44
43
|
async removeNodeKeys(nodeUids: string[]): Promise<void> {
|
|
@@ -18,6 +18,8 @@ import {
|
|
|
18
18
|
interface BaseNode {
|
|
19
19
|
// Internal metadata
|
|
20
20
|
hash?: string; // root node doesn't have any hash
|
|
21
|
+
// ecnryptedName should not be needed to keep, nameSessionKey should be enough.
|
|
22
|
+
// We will improve this in the future.
|
|
21
23
|
encryptedName: string;
|
|
22
24
|
|
|
23
25
|
// Basic node metadata
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { PrivateKey, SessionKey } from '../../crypto';
|
|
2
2
|
import { MemoryCache } from '../../cache';
|
|
3
3
|
import { CachedCryptoMaterial } from '../../interface';
|
|
4
|
+
import { getMockLogger } from '../../tests/logger';
|
|
4
5
|
import { SharesCryptoCache } from './cryptoCache';
|
|
5
6
|
|
|
6
7
|
describe('sharesCryptoCache', () => {
|
|
@@ -17,7 +18,7 @@ describe('sharesCryptoCache', () => {
|
|
|
17
18
|
|
|
18
19
|
beforeEach(() => {
|
|
19
20
|
memoryCache = new MemoryCache();
|
|
20
|
-
cache = new SharesCryptoCache(memoryCache);
|
|
21
|
+
cache = new SharesCryptoCache(getMockLogger(), memoryCache);
|
|
21
22
|
});
|
|
22
23
|
|
|
23
24
|
it('should store and retrieve keys', async () => {
|
|
@@ -53,7 +54,7 @@ describe('sharesCryptoCache', () => {
|
|
|
53
54
|
const keys = { key: generatePrivateKey('privateKey'), passphraseSessionKey: generateSessionKey('sessionKey') };
|
|
54
55
|
|
|
55
56
|
await cache.setShareKey(shareId, keys);
|
|
56
|
-
await cache.
|
|
57
|
+
await cache.removeShareKeys([shareId]);
|
|
57
58
|
|
|
58
59
|
try {
|
|
59
60
|
await cache.getShareKey(shareId);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ProtonDriveCryptoCache } from '../../interface';
|
|
1
|
+
import { Logger, ProtonDriveCryptoCache } from '../../interface';
|
|
2
2
|
import { DecryptedShareKey } from './interface';
|
|
3
3
|
|
|
4
4
|
/**
|
|
@@ -13,23 +13,42 @@ import { DecryptedShareKey } from './interface';
|
|
|
13
13
|
* only the root node, thus share cache is not needed.
|
|
14
14
|
*/
|
|
15
15
|
export class SharesCryptoCache {
|
|
16
|
-
constructor(
|
|
16
|
+
constructor(
|
|
17
|
+
private logger: Logger,
|
|
18
|
+
private driveCache: ProtonDriveCryptoCache,
|
|
19
|
+
) {
|
|
20
|
+
this.logger = logger;
|
|
17
21
|
this.driveCache = driveCache;
|
|
18
22
|
}
|
|
19
23
|
|
|
20
24
|
async setShareKey(shareId: string, key: DecryptedShareKey): Promise<void> {
|
|
21
|
-
await this.driveCache.setEntity(
|
|
25
|
+
await this.driveCache.setEntity(getCacheKey(shareId), {
|
|
26
|
+
shareKey: key,
|
|
27
|
+
});
|
|
22
28
|
}
|
|
23
29
|
|
|
24
30
|
async getShareKey(shareId: string): Promise<DecryptedShareKey> {
|
|
25
|
-
|
|
31
|
+
const nodeKeysData = await this.driveCache.getEntity(getCacheKey(shareId));
|
|
32
|
+
if (!nodeKeysData.shareKey) {
|
|
33
|
+
try {
|
|
34
|
+
await this.removeShareKeys([shareId]);
|
|
35
|
+
} catch (removingError: unknown) {
|
|
36
|
+
// The node keys will not be returned, thus SDK will re-fetch
|
|
37
|
+
// and re-cache it. Setting it again should then fix the problem.
|
|
38
|
+
this.logger.warn(
|
|
39
|
+
`Failed to remove corrupted node keys from the cache: ${removingError instanceof Error ? removingError.message : removingError}`,
|
|
40
|
+
);
|
|
41
|
+
}
|
|
42
|
+
throw new Error(`Failed to deserialize node keys`);
|
|
43
|
+
}
|
|
44
|
+
return nodeKeysData.shareKey;
|
|
26
45
|
}
|
|
27
46
|
|
|
28
|
-
async
|
|
29
|
-
await this.driveCache.removeEntities(shareIds.map(
|
|
47
|
+
async removeShareKeys(shareIds: string[]): Promise<void> {
|
|
48
|
+
await this.driveCache.removeEntities(shareIds.map(getCacheKey));
|
|
30
49
|
}
|
|
31
50
|
}
|
|
32
51
|
|
|
33
|
-
function
|
|
52
|
+
function getCacheKey(shareId: string) {
|
|
34
53
|
return `shareKey-${shareId}`;
|
|
35
54
|
}
|
|
@@ -33,7 +33,7 @@ export function initSharesModule(
|
|
|
33
33
|
) {
|
|
34
34
|
const api = new SharesAPIService(apiService);
|
|
35
35
|
const cache = new SharesCache(telemetry.getLogger('shares-cache'), driveEntitiesCache);
|
|
36
|
-
const cryptoCache = new SharesCryptoCache(driveCryptoCache);
|
|
36
|
+
const cryptoCache = new SharesCryptoCache(telemetry.getLogger('shares-cache'), driveCryptoCache);
|
|
37
37
|
const cryptoService = new SharesCryptoService(telemetry, crypto, account);
|
|
38
38
|
const sharesManager = new SharesManager(
|
|
39
39
|
telemetry.getLogger('shares'),
|
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
} from '../../interface';
|
|
10
10
|
import { getMockTelemetry } from '../../tests/telemetry';
|
|
11
11
|
import { SharesService } from './interface';
|
|
12
|
-
import { SharingCryptoService } from './cryptoService';
|
|
12
|
+
import { PUBLIC_LINK_GENERATED_PASSWORD_LENGTH, SharingCryptoService } from './cryptoService';
|
|
13
13
|
|
|
14
14
|
describe('SharingCryptoService', () => {
|
|
15
15
|
let telemetry: ProtonDriveTelemetry;
|
|
@@ -87,6 +87,27 @@ describe('SharingCryptoService', () => {
|
|
|
87
87
|
expect(telemetry.recordMetric).not.toHaveBeenCalled();
|
|
88
88
|
});
|
|
89
89
|
|
|
90
|
+
it('should decrypt bookmark with custom password', async () => {
|
|
91
|
+
// First 12 characters are the generated password. Anything beyond is the custom password.
|
|
92
|
+
driveCrypto.decryptShareUrlPassword = jest.fn().mockResolvedValue('urlPassword1WithCustomPassword');
|
|
93
|
+
|
|
94
|
+
const result = await cryptoService.decryptBookmark(encryptedBookmark);
|
|
95
|
+
|
|
96
|
+
expect(result).toMatchObject({
|
|
97
|
+
url: resultOk('https://drive.proton.me/urls/tokenId#urlPassword1'),
|
|
98
|
+
nodeName: resultOk('nodeName'),
|
|
99
|
+
});
|
|
100
|
+
expect(driveCrypto.decryptShareUrlPassword).toHaveBeenCalledWith('encryptedUrlPassword', ['addressKey']);
|
|
101
|
+
expect(driveCrypto.decryptKeyWithSrpPassword).toHaveBeenCalledWith(
|
|
102
|
+
'urlPassword1WithCustomPassword',
|
|
103
|
+
'base64SharePasswordSalt',
|
|
104
|
+
'armoredKey',
|
|
105
|
+
'armoredPassphrase',
|
|
106
|
+
);
|
|
107
|
+
expect(driveCrypto.decryptNodeName).toHaveBeenCalledWith('encryptedName', 'decryptedKey', []);
|
|
108
|
+
expect(telemetry.recordMetric).not.toHaveBeenCalled();
|
|
109
|
+
});
|
|
110
|
+
|
|
90
111
|
it('should handle undecryptable URL password', async () => {
|
|
91
112
|
const error = new Error('Failed to decrypt URL password');
|
|
92
113
|
driveCrypto.decryptShareUrlPassword = jest.fn().mockRejectedValue(error);
|