@internxt/sdk 1.5.25 → 1.6.4
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/auth/index.d.ts +127 -122
- package/dist/auth/index.js +378 -310
- package/dist/auth/types.d.ts +65 -54
- package/dist/auth/types.js +26 -26
- package/dist/drive/backups/index.d.ts +18 -18
- package/dist/drive/backups/index.js +40 -40
- package/dist/drive/backups/types.d.ts +27 -27
- package/dist/drive/backups/types.js +2 -2
- package/dist/drive/index.d.ts +7 -7
- package/dist/drive/index.js +23 -19
- package/dist/drive/payments/index.d.ts +66 -71
- package/dist/drive/payments/index.js +206 -208
- package/dist/drive/payments/types.d.ts +180 -176
- package/dist/drive/payments/types.js +37 -37
- package/dist/drive/referrals/index.d.ts +19 -19
- package/dist/drive/referrals/index.js +54 -50
- package/dist/drive/referrals/types.d.ts +21 -21
- package/dist/drive/referrals/types.js +18 -18
- package/dist/drive/share/index.d.ts +319 -319
- package/dist/drive/share/index.js +544 -540
- package/dist/drive/share/types.d.ts +360 -360
- package/dist/drive/share/types.js +2 -2
- package/dist/drive/storage/index.d.ts +315 -315
- package/dist/drive/storage/index.js +634 -630
- package/dist/drive/storage/types.d.ts +480 -473
- package/dist/drive/storage/types.js +13 -13
- package/dist/drive/trash/index.d.ts +75 -75
- package/dist/drive/trash/index.js +184 -180
- package/dist/drive/trash/types.d.ts +29 -29
- package/dist/drive/trash/types.js +2 -2
- package/dist/drive/users/index.d.ts +135 -135
- package/dist/drive/users/index.js +208 -204
- package/dist/drive/users/types.d.ts +53 -51
- package/dist/drive/users/types.js +2 -2
- package/dist/index.d.ts +6 -6
- package/dist/index.js +35 -31
- package/dist/network/download.d.ts +8 -8
- package/dist/network/download.js +123 -123
- package/dist/network/errors/codes.d.ts +24 -24
- package/dist/network/errors/codes.js +48 -48
- package/dist/network/errors/context.d.ts +35 -35
- package/dist/network/errors/context.js +39 -39
- package/dist/network/errors/download.d.ts +4 -4
- package/dist/network/errors/download.js +52 -48
- package/dist/network/errors/index.d.ts +3 -3
- package/dist/network/errors/index.js +19 -15
- package/dist/network/errors/upload.d.ts +13 -13
- package/dist/network/errors/upload.js +82 -78
- package/dist/network/index.d.ts +70 -70
- package/dist/network/index.js +315 -311
- package/dist/network/types.d.ts +102 -102
- package/dist/network/types.js +18 -18
- package/dist/network/upload.d.ts +4 -4
- package/dist/network/upload.js +158 -159
- package/dist/photos/devices/index.d.ts +10 -10
- package/dist/photos/devices/index.js +79 -79
- package/dist/photos/index.d.ts +17 -17
- package/dist/photos/index.js +56 -52
- package/dist/photos/photos/index.d.ts +60 -60
- package/dist/photos/photos/index.js +225 -225
- package/dist/photos/shares/index.d.ts +8 -8
- package/dist/photos/shares/index.js +34 -34
- package/dist/photos/types.d.ts +154 -154
- package/dist/photos/types.js +19 -19
- package/dist/photos/users/index.d.ts +7 -7
- package/dist/photos/users/index.js +46 -46
- package/dist/shared/headers/index.d.ts +21 -21
- package/dist/shared/headers/index.js +78 -79
- package/dist/shared/http/client.d.ts +85 -85
- package/dist/shared/http/client.js +172 -172
- package/dist/shared/http/types.d.ts +7 -7
- package/dist/shared/http/types.js +2 -2
- package/dist/shared/index.d.ts +1 -1
- package/dist/shared/index.js +17 -13
- package/dist/shared/types/apiConnection.d.ts +12 -12
- package/dist/shared/types/apiConnection.js +2 -2
- package/dist/shared/types/appsumo.d.ts +16 -16
- package/dist/shared/types/appsumo.js +12 -12
- package/dist/shared/types/errors.d.ts +5 -5
- package/dist/shared/types/errors.js +28 -28
- package/dist/shared/types/teams.d.ts +9 -9
- package/dist/shared/types/teams.js +2 -2
- package/dist/shared/types/userSettings.d.ts +43 -29
- package/dist/shared/types/userSettings.js +2 -2
- package/dist/utils.d.ts +3 -3
- package/dist/utils.js +24 -25
- package/dist/workspaces/index.d.ts +176 -176
- package/dist/workspaces/index.js +419 -415
- package/dist/workspaces/index.test.d.ts +1 -1
- package/dist/workspaces/index.test.js +908 -903
- package/dist/workspaces/types.d.ts +294 -291
- package/dist/workspaces/types.js +2 -2
- package/package.json +13 -13
package/dist/network/types.d.ts
CHANGED
|
@@ -1,102 +1,102 @@
|
|
|
1
|
-
import { AppDetails } from '../shared';
|
|
2
|
-
import { HttpClient } from '../shared/http/client';
|
|
3
|
-
import { BasicAuth } from '../auth/types';
|
|
4
|
-
|
|
5
|
-
export
|
|
6
|
-
export interface Shard {
|
|
7
|
-
uuid: string;
|
|
8
|
-
hash: Hash;
|
|
9
|
-
}
|
|
10
|
-
export interface ShardForMultipart extends Shard {
|
|
11
|
-
UploadId: string;
|
|
12
|
-
parts: {
|
|
13
|
-
PartNumber: number;
|
|
14
|
-
ETag: string;
|
|
15
|
-
}[];
|
|
16
|
-
}
|
|
17
|
-
export interface StartUploadResponse {
|
|
18
|
-
uploads: {
|
|
19
|
-
index: number;
|
|
20
|
-
uuid: Shard['uuid'];
|
|
21
|
-
url: string | null;
|
|
22
|
-
urls: string[] | null;
|
|
23
|
-
UploadId?: string;
|
|
24
|
-
}[];
|
|
25
|
-
}
|
|
26
|
-
export
|
|
27
|
-
export interface BucketEntry {
|
|
28
|
-
id: string;
|
|
29
|
-
index: string;
|
|
30
|
-
bucket: string;
|
|
31
|
-
name: string;
|
|
32
|
-
mimetype: string;
|
|
33
|
-
created: Date;
|
|
34
|
-
}
|
|
35
|
-
export interface DownloadableShard {
|
|
36
|
-
index: number;
|
|
37
|
-
size: number;
|
|
38
|
-
hash: Shard['hash'];
|
|
39
|
-
url: string;
|
|
40
|
-
}
|
|
41
|
-
export interface GetDownloadLinksResponse {
|
|
42
|
-
bucket: string;
|
|
43
|
-
index: string;
|
|
44
|
-
created: Date;
|
|
45
|
-
shards: DownloadableShard[];
|
|
46
|
-
version?: number;
|
|
47
|
-
size: number;
|
|
48
|
-
}
|
|
49
|
-
export interface NetworkRequestConfig {
|
|
50
|
-
client: HttpClient;
|
|
51
|
-
appDetails: AppDetails;
|
|
52
|
-
auth: BasicAuth;
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
index: number;
|
|
56
|
-
size: number;
|
|
57
|
-
};
|
|
58
|
-
export
|
|
59
|
-
uploads: UploadPayload[];
|
|
60
|
-
};
|
|
61
|
-
export
|
|
62
|
-
index: string;
|
|
63
|
-
shards: Shard[];
|
|
64
|
-
};
|
|
65
|
-
export
|
|
66
|
-
index: string;
|
|
67
|
-
shards: ShardForMultipart[];
|
|
68
|
-
};
|
|
69
|
-
export
|
|
70
|
-
export
|
|
71
|
-
hash: Hash;
|
|
72
|
-
parts: {
|
|
73
|
-
PartNumber: number;
|
|
74
|
-
ETag: string;
|
|
75
|
-
}[];
|
|
76
|
-
}>;
|
|
77
|
-
export
|
|
78
|
-
export
|
|
79
|
-
slice: (from: number, to: number) => BinaryData;
|
|
80
|
-
toString(encoding: 'hex'): string;
|
|
81
|
-
};
|
|
82
|
-
export declare enum BinaryDataEncoding {
|
|
83
|
-
HEX = "hex"
|
|
84
|
-
}
|
|
85
|
-
export
|
|
86
|
-
export declare enum SymmetricCryptoAlgorithm {
|
|
87
|
-
AES256CTR = "AES256CTR"
|
|
88
|
-
}
|
|
89
|
-
export
|
|
90
|
-
type: SymmetricCryptoAlgorithm;
|
|
91
|
-
ivSize: number;
|
|
92
|
-
};
|
|
93
|
-
export declare const ALGORITHMS: Record<SymmetricCryptoAlgorithm, Algorithm>;
|
|
94
|
-
export
|
|
95
|
-
algorithm: Algorithm;
|
|
96
|
-
validateMnemonic: (mnemonic: string) => boolean;
|
|
97
|
-
randomBytes: (bytesLength: number) => BinaryData;
|
|
98
|
-
generateFileKey: (mnemonic: string, bucketId: string, index: BinaryData | string) => Promise<BinaryData>;
|
|
99
|
-
};
|
|
100
|
-
export
|
|
101
|
-
export
|
|
102
|
-
export {};
|
|
1
|
+
import { AppDetails } from '../shared';
|
|
2
|
+
import { HttpClient } from '../shared/http/client';
|
|
3
|
+
import { BasicAuth } from '../auth/types';
|
|
4
|
+
type Hash = string;
|
|
5
|
+
export type BridgeUrl = string;
|
|
6
|
+
export interface Shard {
|
|
7
|
+
uuid: string;
|
|
8
|
+
hash: Hash;
|
|
9
|
+
}
|
|
10
|
+
export interface ShardForMultipart extends Shard {
|
|
11
|
+
UploadId: string;
|
|
12
|
+
parts: {
|
|
13
|
+
PartNumber: number;
|
|
14
|
+
ETag: string;
|
|
15
|
+
}[];
|
|
16
|
+
}
|
|
17
|
+
export interface StartUploadResponse {
|
|
18
|
+
uploads: {
|
|
19
|
+
index: number;
|
|
20
|
+
uuid: Shard['uuid'];
|
|
21
|
+
url: string | null;
|
|
22
|
+
urls: string[] | null;
|
|
23
|
+
UploadId?: string;
|
|
24
|
+
}[];
|
|
25
|
+
}
|
|
26
|
+
export type FinishUploadResponse = BucketEntry;
|
|
27
|
+
export interface BucketEntry {
|
|
28
|
+
id: string;
|
|
29
|
+
index: string;
|
|
30
|
+
bucket: string;
|
|
31
|
+
name: string;
|
|
32
|
+
mimetype: string;
|
|
33
|
+
created: Date;
|
|
34
|
+
}
|
|
35
|
+
export interface DownloadableShard {
|
|
36
|
+
index: number;
|
|
37
|
+
size: number;
|
|
38
|
+
hash: Shard['hash'];
|
|
39
|
+
url: string;
|
|
40
|
+
}
|
|
41
|
+
export interface GetDownloadLinksResponse {
|
|
42
|
+
bucket: string;
|
|
43
|
+
index: string;
|
|
44
|
+
created: Date;
|
|
45
|
+
shards: DownloadableShard[];
|
|
46
|
+
version?: number;
|
|
47
|
+
size: number;
|
|
48
|
+
}
|
|
49
|
+
export interface NetworkRequestConfig {
|
|
50
|
+
client: HttpClient;
|
|
51
|
+
appDetails: AppDetails;
|
|
52
|
+
auth: BasicAuth;
|
|
53
|
+
}
|
|
54
|
+
type UploadPayload = {
|
|
55
|
+
index: number;
|
|
56
|
+
size: number;
|
|
57
|
+
};
|
|
58
|
+
export type StartUploadPayload = {
|
|
59
|
+
uploads: UploadPayload[];
|
|
60
|
+
};
|
|
61
|
+
export type FinishUploadPayload = {
|
|
62
|
+
index: string;
|
|
63
|
+
shards: Shard[];
|
|
64
|
+
};
|
|
65
|
+
export type FinishMultipartUploadPayload = {
|
|
66
|
+
index: string;
|
|
67
|
+
shards: ShardForMultipart[];
|
|
68
|
+
};
|
|
69
|
+
export type UploadFileFunction = (url: string) => Promise<Hash>;
|
|
70
|
+
export type UploadFileMultipartFunction = (urls: string[]) => Promise<{
|
|
71
|
+
hash: Hash;
|
|
72
|
+
parts: {
|
|
73
|
+
PartNumber: number;
|
|
74
|
+
ETag: string;
|
|
75
|
+
}[];
|
|
76
|
+
}>;
|
|
77
|
+
export type DownloadFileFunction = (downloadables: DownloadableShard[], fileSize: number) => Promise<void>;
|
|
78
|
+
export type BinaryData = {
|
|
79
|
+
slice: (from: number, to: number) => BinaryData;
|
|
80
|
+
toString(encoding: 'hex'): string;
|
|
81
|
+
};
|
|
82
|
+
export declare enum BinaryDataEncoding {
|
|
83
|
+
HEX = "hex"
|
|
84
|
+
}
|
|
85
|
+
export type ToBinaryDataFunction = (input: string, encoding: BinaryDataEncoding) => BinaryData;
|
|
86
|
+
export declare enum SymmetricCryptoAlgorithm {
|
|
87
|
+
AES256CTR = "AES256CTR"
|
|
88
|
+
}
|
|
89
|
+
export type Algorithm = {
|
|
90
|
+
type: SymmetricCryptoAlgorithm;
|
|
91
|
+
ivSize: number;
|
|
92
|
+
};
|
|
93
|
+
export declare const ALGORITHMS: Record<SymmetricCryptoAlgorithm, Algorithm>;
|
|
94
|
+
export type Crypto = {
|
|
95
|
+
algorithm: Algorithm;
|
|
96
|
+
validateMnemonic: (mnemonic: string) => boolean;
|
|
97
|
+
randomBytes: (bytesLength: number) => BinaryData;
|
|
98
|
+
generateFileKey: (mnemonic: string, bucketId: string, index: BinaryData | string) => Promise<BinaryData>;
|
|
99
|
+
};
|
|
100
|
+
export type EncryptFileFunction = (algorithm: SymmetricCryptoAlgorithm, key: BinaryData, iv: BinaryData) => Promise<void>;
|
|
101
|
+
export type DecryptFileFunction = (algorithm: SymmetricCryptoAlgorithm, key: BinaryData, iv: BinaryData, fileSize: number) => Promise<void>;
|
|
102
|
+
export {};
|
package/dist/network/types.js
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var _a;
|
|
3
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.ALGORITHMS = exports.SymmetricCryptoAlgorithm = exports.BinaryDataEncoding = void 0;
|
|
5
|
-
var BinaryDataEncoding;
|
|
6
|
-
(function (BinaryDataEncoding) {
|
|
7
|
-
BinaryDataEncoding["HEX"] = "hex";
|
|
8
|
-
})(BinaryDataEncoding
|
|
9
|
-
var SymmetricCryptoAlgorithm;
|
|
10
|
-
(function (SymmetricCryptoAlgorithm) {
|
|
11
|
-
SymmetricCryptoAlgorithm["AES256CTR"] = "AES256CTR";
|
|
12
|
-
})(SymmetricCryptoAlgorithm
|
|
13
|
-
exports.ALGORITHMS = (_a = {},
|
|
14
|
-
_a[SymmetricCryptoAlgorithm.AES256CTR] = {
|
|
15
|
-
type: SymmetricCryptoAlgorithm.AES256CTR,
|
|
16
|
-
ivSize: 32
|
|
17
|
-
},
|
|
18
|
-
_a);
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.ALGORITHMS = exports.SymmetricCryptoAlgorithm = exports.BinaryDataEncoding = void 0;
|
|
5
|
+
var BinaryDataEncoding;
|
|
6
|
+
(function (BinaryDataEncoding) {
|
|
7
|
+
BinaryDataEncoding["HEX"] = "hex";
|
|
8
|
+
})(BinaryDataEncoding || (exports.BinaryDataEncoding = BinaryDataEncoding = {}));
|
|
9
|
+
var SymmetricCryptoAlgorithm;
|
|
10
|
+
(function (SymmetricCryptoAlgorithm) {
|
|
11
|
+
SymmetricCryptoAlgorithm["AES256CTR"] = "AES256CTR";
|
|
12
|
+
})(SymmetricCryptoAlgorithm || (exports.SymmetricCryptoAlgorithm = SymmetricCryptoAlgorithm = {}));
|
|
13
|
+
exports.ALGORITHMS = (_a = {},
|
|
14
|
+
_a[SymmetricCryptoAlgorithm.AES256CTR] = {
|
|
15
|
+
type: SymmetricCryptoAlgorithm.AES256CTR,
|
|
16
|
+
ivSize: 32
|
|
17
|
+
},
|
|
18
|
+
_a);
|
package/dist/network/upload.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Network } from '.';
|
|
2
|
-
import { Crypto, EncryptFileFunction, UploadFileFunction, UploadFileMultipartFunction } from './types';
|
|
3
|
-
export declare function uploadFile(network: Network, crypto: Crypto, bucketId: string, mnemonic: string, fileSize: number, encryptFile: EncryptFileFunction, uploadFile: UploadFileFunction): Promise<string>;
|
|
4
|
-
export declare function uploadMultipartFile(network: Network, crypto: Crypto, bucketId: string, mnemonic: string, fileSize: number, encryptFile: EncryptFileFunction, uploadMultiparts: UploadFileMultipartFunction, parts?: number): Promise<string>;
|
|
1
|
+
import { Network } from '.';
|
|
2
|
+
import { Crypto, EncryptFileFunction, UploadFileFunction, UploadFileMultipartFunction } from './types';
|
|
3
|
+
export declare function uploadFile(network: Network, crypto: Crypto, bucketId: string, mnemonic: string, fileSize: number, encryptFile: EncryptFileFunction, uploadFile: UploadFileFunction): Promise<string>;
|
|
4
|
+
export declare function uploadMultipartFile(network: Network, crypto: Crypto, bucketId: string, mnemonic: string, fileSize: number, encryptFile: EncryptFileFunction, uploadMultiparts: UploadFileMultipartFunction, parts?: number): Promise<string>;
|
package/dist/network/upload.js
CHANGED
|
@@ -1,159 +1,158 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
-
return g =
|
|
14
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
-
function step(op) {
|
|
16
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
-
while (_) try {
|
|
18
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
-
switch (op[0]) {
|
|
21
|
-
case 0: case 1: t = op; break;
|
|
22
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
-
default:
|
|
26
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
-
if (t[2]) _.ops.pop();
|
|
31
|
-
_.trys.pop(); continue;
|
|
32
|
-
}
|
|
33
|
-
op = body.call(thisArg, _);
|
|
34
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
err_1
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
function uploadMultipartFile(
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
return __generator(this, function (_c) {
|
|
113
|
-
switch (_c.label) {
|
|
114
|
-
case 0:
|
|
115
|
-
mnemonicIsValid = crypto.validateMnemonic(mnemonic);
|
|
116
|
-
if (!mnemonicIsValid) {
|
|
117
|
-
throw new errors_1.UploadInvalidMnemonicError();
|
|
118
|
-
}
|
|
119
|
-
index = crypto.randomBytes(crypto.algorithm.ivSize);
|
|
120
|
-
iv = index.slice(0, 16);
|
|
121
|
-
return [4 /*yield*/, crypto.generateFileKey(mnemonic, bucketId, index)];
|
|
122
|
-
case 1:
|
|
123
|
-
key = _c.sent();
|
|
124
|
-
return [4 /*yield*/, network.startUpload(bucketId, {
|
|
125
|
-
uploads: [
|
|
126
|
-
{
|
|
127
|
-
index: 0,
|
|
128
|
-
size: fileSize,
|
|
129
|
-
},
|
|
130
|
-
],
|
|
131
|
-
}, parts)];
|
|
132
|
-
case 2:
|
|
133
|
-
uploads = (_c.sent()).uploads;
|
|
134
|
-
_a = uploads[0], urls = _a.urls, uuid = _a.uuid, UploadId = _a.UploadId;
|
|
135
|
-
if (!urls) {
|
|
136
|
-
throw new errors_1.UrlsNotReceivedFromNetworkError();
|
|
137
|
-
}
|
|
138
|
-
if (!UploadId) {
|
|
139
|
-
throw new errors_1.UploadIdNotReceivedFromNetworkError();
|
|
140
|
-
}
|
|
141
|
-
return [4 /*yield*/, encryptFile(crypto.algorithm.type, key, iv)];
|
|
142
|
-
case 3:
|
|
143
|
-
_c.sent();
|
|
144
|
-
return [4 /*yield*/, uploadMultiparts(urls)];
|
|
145
|
-
case 4:
|
|
146
|
-
_b = _c.sent(), hash = _b.hash, uploadedPartsReference = _b.parts;
|
|
147
|
-
finishUploadPayload = {
|
|
148
|
-
index: index.toString('hex'),
|
|
149
|
-
shards: [{ hash: hash, uuid: uuid, UploadId: UploadId, parts: uploadedPartsReference }],
|
|
150
|
-
};
|
|
151
|
-
return [4 /*yield*/, network.finishUpload(bucketId, finishUploadPayload)];
|
|
152
|
-
case 5:
|
|
153
|
-
finishUploadResponse = _c.sent();
|
|
154
|
-
return [2 /*return*/, finishUploadResponse.id];
|
|
155
|
-
}
|
|
156
|
-
});
|
|
157
|
-
});
|
|
158
|
-
}
|
|
159
|
-
exports.uploadMultipartFile = uploadMultipartFile;
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
|
|
13
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.uploadFile = uploadFile;
|
|
40
|
+
exports.uploadMultipartFile = uploadMultipartFile;
|
|
41
|
+
var errors_1 = require("./errors");
|
|
42
|
+
function uploadFile(network, crypto, bucketId, mnemonic, fileSize, encryptFile, uploadFile) {
|
|
43
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
44
|
+
var index, iv, key, mnemonicIsValid, uploads, _a, url, uuid, hash, finishUploadPayload, finishUploadResponse, err_1, context;
|
|
45
|
+
return __generator(this, function (_b) {
|
|
46
|
+
switch (_b.label) {
|
|
47
|
+
case 0:
|
|
48
|
+
_b.trys.push([0, 6, , 7]);
|
|
49
|
+
mnemonicIsValid = crypto.validateMnemonic(mnemonic);
|
|
50
|
+
if (!mnemonicIsValid) {
|
|
51
|
+
throw new errors_1.UploadInvalidMnemonicError();
|
|
52
|
+
}
|
|
53
|
+
index = crypto.randomBytes(crypto.algorithm.ivSize);
|
|
54
|
+
iv = index.slice(0, 16);
|
|
55
|
+
return [4 /*yield*/, crypto.generateFileKey(mnemonic, bucketId, index)];
|
|
56
|
+
case 1:
|
|
57
|
+
key = _b.sent();
|
|
58
|
+
return [4 /*yield*/, network.startUpload(bucketId, {
|
|
59
|
+
uploads: [{
|
|
60
|
+
index: 0,
|
|
61
|
+
size: fileSize
|
|
62
|
+
}]
|
|
63
|
+
})];
|
|
64
|
+
case 2:
|
|
65
|
+
uploads = (_b.sent()).uploads;
|
|
66
|
+
_a = uploads[0], url = _a.url, uuid = _a.uuid;
|
|
67
|
+
if (!url) {
|
|
68
|
+
throw new errors_1.UrlNotReceivedFromNetworkError();
|
|
69
|
+
}
|
|
70
|
+
return [4 /*yield*/, encryptFile(crypto.algorithm.type, key, iv)];
|
|
71
|
+
case 3:
|
|
72
|
+
_b.sent();
|
|
73
|
+
return [4 /*yield*/, uploadFile(url)];
|
|
74
|
+
case 4:
|
|
75
|
+
hash = _b.sent();
|
|
76
|
+
finishUploadPayload = {
|
|
77
|
+
index: index.toString('hex'),
|
|
78
|
+
shards: [{ hash: hash, uuid: uuid }]
|
|
79
|
+
};
|
|
80
|
+
return [4 /*yield*/, network.finishUpload(bucketId, finishUploadPayload)];
|
|
81
|
+
case 5:
|
|
82
|
+
finishUploadResponse = _b.sent();
|
|
83
|
+
return [2 /*return*/, finishUploadResponse.id];
|
|
84
|
+
case 6:
|
|
85
|
+
err_1 = _b.sent();
|
|
86
|
+
context = (0, errors_1.getNetworkErrorContext)({
|
|
87
|
+
bucketId: bucketId,
|
|
88
|
+
fileSize: fileSize,
|
|
89
|
+
user: network.credentials.username,
|
|
90
|
+
pass: network.credentials.password,
|
|
91
|
+
crypto: {
|
|
92
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
93
|
+
index: index ? index.toString('hex') : 'none',
|
|
94
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
95
|
+
iv: iv ? iv.toString('hex') : 'none',
|
|
96
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
97
|
+
key: key ? key.toString('hex') : 'none',
|
|
98
|
+
mnemonic: mnemonic
|
|
99
|
+
}
|
|
100
|
+
}, err_1);
|
|
101
|
+
err_1.context = context;
|
|
102
|
+
throw err_1;
|
|
103
|
+
case 7: return [2 /*return*/];
|
|
104
|
+
}
|
|
105
|
+
});
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
function uploadMultipartFile(network_1, crypto_1, bucketId_1, mnemonic_1, fileSize_1, encryptFile_1, uploadMultiparts_1) {
|
|
109
|
+
return __awaiter(this, arguments, void 0, function (network, crypto, bucketId, mnemonic, fileSize, encryptFile, uploadMultiparts, parts) {
|
|
110
|
+
var mnemonicIsValid, index, iv, key, uploads, _a, urls, uuid, UploadId, _b, hash, uploadedPartsReference, finishUploadPayload, finishUploadResponse;
|
|
111
|
+
if (parts === void 0) { parts = 1; }
|
|
112
|
+
return __generator(this, function (_c) {
|
|
113
|
+
switch (_c.label) {
|
|
114
|
+
case 0:
|
|
115
|
+
mnemonicIsValid = crypto.validateMnemonic(mnemonic);
|
|
116
|
+
if (!mnemonicIsValid) {
|
|
117
|
+
throw new errors_1.UploadInvalidMnemonicError();
|
|
118
|
+
}
|
|
119
|
+
index = crypto.randomBytes(crypto.algorithm.ivSize);
|
|
120
|
+
iv = index.slice(0, 16);
|
|
121
|
+
return [4 /*yield*/, crypto.generateFileKey(mnemonic, bucketId, index)];
|
|
122
|
+
case 1:
|
|
123
|
+
key = _c.sent();
|
|
124
|
+
return [4 /*yield*/, network.startUpload(bucketId, {
|
|
125
|
+
uploads: [
|
|
126
|
+
{
|
|
127
|
+
index: 0,
|
|
128
|
+
size: fileSize,
|
|
129
|
+
},
|
|
130
|
+
],
|
|
131
|
+
}, parts)];
|
|
132
|
+
case 2:
|
|
133
|
+
uploads = (_c.sent()).uploads;
|
|
134
|
+
_a = uploads[0], urls = _a.urls, uuid = _a.uuid, UploadId = _a.UploadId;
|
|
135
|
+
if (!urls) {
|
|
136
|
+
throw new errors_1.UrlsNotReceivedFromNetworkError();
|
|
137
|
+
}
|
|
138
|
+
if (!UploadId) {
|
|
139
|
+
throw new errors_1.UploadIdNotReceivedFromNetworkError();
|
|
140
|
+
}
|
|
141
|
+
return [4 /*yield*/, encryptFile(crypto.algorithm.type, key, iv)];
|
|
142
|
+
case 3:
|
|
143
|
+
_c.sent();
|
|
144
|
+
return [4 /*yield*/, uploadMultiparts(urls)];
|
|
145
|
+
case 4:
|
|
146
|
+
_b = _c.sent(), hash = _b.hash, uploadedPartsReference = _b.parts;
|
|
147
|
+
finishUploadPayload = {
|
|
148
|
+
index: index.toString('hex'),
|
|
149
|
+
shards: [{ hash: hash, uuid: uuid, UploadId: UploadId, parts: uploadedPartsReference }],
|
|
150
|
+
};
|
|
151
|
+
return [4 /*yield*/, network.finishUpload(bucketId, finishUploadPayload)];
|
|
152
|
+
case 5:
|
|
153
|
+
finishUploadResponse = _c.sent();
|
|
154
|
+
return [2 /*return*/, finishUploadResponse.id];
|
|
155
|
+
}
|
|
156
|
+
});
|
|
157
|
+
});
|
|
158
|
+
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { CreateDeviceData, Device, DeviceId, PhotosSdkModel } from '..';
|
|
2
|
-
export default class DevicesSubmodule {
|
|
3
|
-
private model;
|
|
4
|
-
constructor(model: PhotosSdkModel);
|
|
5
|
-
getDeviceById(deviceId: DeviceId): Promise<Device>;
|
|
6
|
-
getDevices(): Promise<Device[]>;
|
|
7
|
-
createDevice(data: CreateDeviceData): Promise<Device>;
|
|
8
|
-
deleteDevice(deviceId: DeviceId): Promise<void>;
|
|
9
|
-
private parse;
|
|
10
|
-
}
|
|
1
|
+
import { CreateDeviceData, Device, DeviceId, PhotosSdkModel } from '..';
|
|
2
|
+
export default class DevicesSubmodule {
|
|
3
|
+
private model;
|
|
4
|
+
constructor(model: PhotosSdkModel);
|
|
5
|
+
getDeviceById(deviceId: DeviceId): Promise<Device>;
|
|
6
|
+
getDevices(): Promise<Device[]>;
|
|
7
|
+
createDevice(data: CreateDeviceData): Promise<Device>;
|
|
8
|
+
deleteDevice(deviceId: DeviceId): Promise<void>;
|
|
9
|
+
private parse;
|
|
10
|
+
}
|