@internxt/sdk 1.6.5 → 1.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/auth/index.d.ts +0 -5
- package/dist/auth/index.js +4 -68
- package/dist/auth/types.d.ts +1 -12
- package/dist/drive/payments/index.js +2 -2
- package/dist/drive/payments/types.js +6 -6
- package/dist/drive/referrals/types.js +2 -2
- package/dist/drive/share/index.js +2 -2
- package/dist/drive/share/types.d.ts +2 -1
- package/dist/drive/storage/index.js +2 -2
- package/dist/drive/storage/types.js +2 -2
- package/dist/drive/trash/index.js +2 -2
- package/dist/drive/users/types.d.ts +0 -2
- package/dist/network/download.js +4 -4
- package/dist/network/errors/context.js +2 -2
- package/dist/network/index.js +2 -2
- package/dist/network/types.js +2 -2
- package/dist/network/upload.js +8 -7
- package/dist/photos/types.js +3 -3
- package/dist/shared/headers/index.js +8 -7
- package/dist/shared/types/appsumo.js +1 -1
- package/dist/shared/types/userSettings.d.ts +0 -14
- package/dist/utils.js +3 -2
- package/dist/workspaces/index.d.ts +1 -1
- package/dist/workspaces/index.js +2 -2
- package/dist/workspaces/index.test.js +3 -8
- package/dist/workspaces/types.d.ts +0 -3
- package/package.json +12 -12
package/dist/auth/index.d.ts
CHANGED
|
@@ -101,11 +101,6 @@ export declare class Auth {
|
|
|
101
101
|
* @param email
|
|
102
102
|
*/
|
|
103
103
|
sendChangePasswordEmail(email: string): Promise<void>;
|
|
104
|
-
/**
|
|
105
|
-
* Upgrade hash in the database
|
|
106
|
-
* @param newHash
|
|
107
|
-
*/
|
|
108
|
-
upgradeHash(newHash: string): Promise<void>;
|
|
109
104
|
/**
|
|
110
105
|
* Restore password with email link
|
|
111
106
|
* @param token
|
package/dist/auth/index.js
CHANGED
|
@@ -23,8 +23,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
23
23
|
});
|
|
24
24
|
};
|
|
25
25
|
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
26
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g
|
|
27
|
-
return g
|
|
26
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
27
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
28
28
|
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
29
29
|
function step(op) {
|
|
30
30
|
if (f) throw new TypeError("Generator is already executing.");
|
|
@@ -77,22 +77,9 @@ var Auth = /** @class */ (function () {
|
|
|
77
77
|
password: registerDetails.password,
|
|
78
78
|
mnemonic: registerDetails.mnemonic,
|
|
79
79
|
salt: registerDetails.salt,
|
|
80
|
-
/**
|
|
81
|
-
/ @deprecated The individual fields for keys should not be used
|
|
82
|
-
*/
|
|
83
80
|
privateKey: registerDetails.keys.privateKeyEncrypted,
|
|
84
81
|
publicKey: registerDetails.keys.publicKey,
|
|
85
82
|
revocationKey: registerDetails.keys.revocationCertificate,
|
|
86
|
-
keys: {
|
|
87
|
-
ecc: {
|
|
88
|
-
privateKey: registerDetails.keys.ecc.privateKeyEncrypted,
|
|
89
|
-
publicKey: registerDetails.keys.ecc.publicKey,
|
|
90
|
-
},
|
|
91
|
-
kyber: {
|
|
92
|
-
privateKey: registerDetails.keys.kyber.privateKeyEncrypted,
|
|
93
|
-
publicKey: registerDetails.keys.kyber.publicKey,
|
|
94
|
-
}
|
|
95
|
-
},
|
|
96
83
|
referral: registerDetails.referral,
|
|
97
84
|
referrer: registerDetails.referrer,
|
|
98
85
|
}, this.basicHeaders());
|
|
@@ -111,22 +98,9 @@ var Auth = /** @class */ (function () {
|
|
|
111
98
|
password: registerDetails.password,
|
|
112
99
|
mnemonic: registerDetails.mnemonic,
|
|
113
100
|
salt: registerDetails.salt,
|
|
114
|
-
/**
|
|
115
|
-
/ @deprecated The individual fields for keys should not be used
|
|
116
|
-
*/
|
|
117
101
|
privateKey: registerDetails.keys.privateKeyEncrypted,
|
|
118
102
|
publicKey: registerDetails.keys.publicKey,
|
|
119
103
|
revocationKey: registerDetails.keys.revocationCertificate,
|
|
120
|
-
keys: {
|
|
121
|
-
ecc: {
|
|
122
|
-
privateKey: registerDetails.keys.ecc.privateKeyEncrypted,
|
|
123
|
-
publicKey: registerDetails.keys.ecc.publicKey,
|
|
124
|
-
},
|
|
125
|
-
kyber: {
|
|
126
|
-
privateKey: registerDetails.keys.kyber.privateKeyEncrypted,
|
|
127
|
-
publicKey: registerDetails.keys.kyber.publicKey,
|
|
128
|
-
},
|
|
129
|
-
},
|
|
130
104
|
referral: registerDetails.referral,
|
|
131
105
|
referrer: registerDetails.referrer,
|
|
132
106
|
invitationId: registerDetails.invitationId,
|
|
@@ -166,33 +140,18 @@ var Auth = /** @class */ (function () {
|
|
|
166
140
|
case 1:
|
|
167
141
|
securityDetails = _a.sent();
|
|
168
142
|
encryptedSalt = securityDetails.encryptedSalt;
|
|
169
|
-
|
|
170
|
-
case 2:
|
|
171
|
-
encryptedPasswordHash = _a.sent();
|
|
143
|
+
encryptedPasswordHash = cryptoProvider.encryptPasswordHash(details.password, encryptedSalt);
|
|
172
144
|
return [4 /*yield*/, cryptoProvider.generateKeys(details.password)];
|
|
173
|
-
case
|
|
145
|
+
case 2:
|
|
174
146
|
keys = _a.sent();
|
|
175
147
|
return [2 /*return*/, this.client
|
|
176
148
|
.post('/access', {
|
|
177
149
|
email: details.email,
|
|
178
150
|
password: encryptedPasswordHash,
|
|
179
151
|
tfa: details.tfaCode,
|
|
180
|
-
/**
|
|
181
|
-
/ @deprecated The individual fields for keys should not be used
|
|
182
|
-
*/
|
|
183
152
|
privateKey: keys.privateKeyEncrypted,
|
|
184
153
|
publicKey: keys.publicKey,
|
|
185
154
|
revocateKey: keys.revocationCertificate,
|
|
186
|
-
keys: {
|
|
187
|
-
ecc: {
|
|
188
|
-
privateKey: keys.ecc.privateKeyEncrypted,
|
|
189
|
-
publicKey: keys.ecc.publicKey,
|
|
190
|
-
},
|
|
191
|
-
kyber: {
|
|
192
|
-
privateKey: keys.kyber.privateKeyEncrypted,
|
|
193
|
-
publicKey: keys.kyber.publicKey,
|
|
194
|
-
}
|
|
195
|
-
},
|
|
196
155
|
}, this.basicHeaders())
|
|
197
156
|
.then(function (data) {
|
|
198
157
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
@@ -211,22 +170,9 @@ var Auth = /** @class */ (function () {
|
|
|
211
170
|
*/
|
|
212
171
|
Auth.prototype.updateKeys = function (keys, token) {
|
|
213
172
|
return this.client.patch('/user/keys', {
|
|
214
|
-
/**
|
|
215
|
-
/ @deprecated The individual fields for keys should not be used
|
|
216
|
-
*/
|
|
217
173
|
publicKey: keys.publicKey,
|
|
218
174
|
privateKey: keys.privateKeyEncrypted,
|
|
219
175
|
revocationKey: keys.revocationCertificate,
|
|
220
|
-
keys: {
|
|
221
|
-
ecc: {
|
|
222
|
-
privateKey: keys.ecc.privateKeyEncrypted,
|
|
223
|
-
publicKey: keys.ecc.publicKey,
|
|
224
|
-
},
|
|
225
|
-
kyber: {
|
|
226
|
-
privateKey: keys.kyber.privateKeyEncrypted,
|
|
227
|
-
publicKey: keys.kyber.publicKey,
|
|
228
|
-
}
|
|
229
|
-
},
|
|
230
176
|
}, this.headersWithToken(token));
|
|
231
177
|
};
|
|
232
178
|
/**
|
|
@@ -329,16 +275,6 @@ var Auth = /** @class */ (function () {
|
|
|
329
275
|
email: email,
|
|
330
276
|
}, this.basicHeaders());
|
|
331
277
|
};
|
|
332
|
-
/**
|
|
333
|
-
* Upgrade hash in the database
|
|
334
|
-
* @param newHash
|
|
335
|
-
*/
|
|
336
|
-
Auth.prototype.upgradeHash = function (newHash) {
|
|
337
|
-
return this.client.patch('/users/:id', {
|
|
338
|
-
newPassword: newHash,
|
|
339
|
-
newSalt: '',
|
|
340
|
-
}, this.basicHeaders());
|
|
341
|
-
};
|
|
342
278
|
/**
|
|
343
279
|
* Restore password with email link
|
|
344
280
|
* @param token
|
package/dist/auth/types.d.ts
CHANGED
|
@@ -30,23 +30,12 @@ export interface RegisterPreCreatedUserResponse {
|
|
|
30
30
|
uuid: UUID;
|
|
31
31
|
}
|
|
32
32
|
export interface Keys {
|
|
33
|
-
/**
|
|
34
|
-
/ @deprecated The individual fields for keys should not be used
|
|
35
|
-
*/
|
|
36
33
|
privateKeyEncrypted: string;
|
|
37
34
|
publicKey: string;
|
|
38
35
|
revocationCertificate: string;
|
|
39
|
-
ecc: {
|
|
40
|
-
privateKeyEncrypted: string;
|
|
41
|
-
publicKey: string;
|
|
42
|
-
};
|
|
43
|
-
kyber: {
|
|
44
|
-
publicKey: string | null;
|
|
45
|
-
privateKeyEncrypted: string | null;
|
|
46
|
-
};
|
|
47
36
|
}
|
|
48
37
|
export interface CryptoProvider {
|
|
49
|
-
encryptPasswordHash: (password: Password, encryptedSalt: string) =>
|
|
38
|
+
encryptPasswordHash: (password: Password, encryptedSalt: string) => string;
|
|
50
39
|
generateKeys: (password: Password) => Promise<Keys>;
|
|
51
40
|
}
|
|
52
41
|
export declare class UserAccessError extends Error {
|
|
@@ -20,8 +20,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
20
20
|
});
|
|
21
21
|
};
|
|
22
22
|
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
23
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g
|
|
24
|
-
return g
|
|
23
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
24
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
25
25
|
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
26
26
|
function step(op) {
|
|
27
27
|
if (f) throw new TypeError("Generator is already executing.");
|
|
@@ -6,32 +6,32 @@ var RenewalPeriod;
|
|
|
6
6
|
RenewalPeriod["Monthly"] = "monthly";
|
|
7
7
|
RenewalPeriod["Annually"] = "annually";
|
|
8
8
|
RenewalPeriod["Lifetime"] = "lifetime";
|
|
9
|
-
})(RenewalPeriod
|
|
9
|
+
})(RenewalPeriod = exports.RenewalPeriod || (exports.RenewalPeriod = {}));
|
|
10
10
|
var LifetimeTier;
|
|
11
11
|
(function (LifetimeTier) {
|
|
12
12
|
LifetimeTier["Lifetime"] = "lifetime";
|
|
13
13
|
LifetimeTier["Exclusive"] = "exclusive-lifetime";
|
|
14
14
|
LifetimeTier["Infinite"] = "infinite";
|
|
15
|
-
})(LifetimeTier
|
|
15
|
+
})(LifetimeTier = exports.LifetimeTier || (exports.LifetimeTier = {}));
|
|
16
16
|
var StripeSessionMode;
|
|
17
17
|
(function (StripeSessionMode) {
|
|
18
18
|
StripeSessionMode["Payment"] = "payment";
|
|
19
19
|
StripeSessionMode["Setup"] = "setup";
|
|
20
20
|
StripeSessionMode["Subscription"] = "subscription";
|
|
21
|
-
})(StripeSessionMode
|
|
21
|
+
})(StripeSessionMode = exports.StripeSessionMode || (exports.StripeSessionMode = {}));
|
|
22
22
|
var StripeMemberTiers;
|
|
23
23
|
(function (StripeMemberTiers) {
|
|
24
24
|
StripeMemberTiers[StripeMemberTiers["infinite"] = 0] = "infinite";
|
|
25
25
|
StripeMemberTiers[StripeMemberTiers["lifetime"] = 1] = "lifetime";
|
|
26
26
|
StripeMemberTiers[StripeMemberTiers["premium"] = 2] = "premium";
|
|
27
|
-
})(StripeMemberTiers
|
|
27
|
+
})(StripeMemberTiers = exports.StripeMemberTiers || (exports.StripeMemberTiers = {}));
|
|
28
28
|
var ProductPriceType;
|
|
29
29
|
(function (ProductPriceType) {
|
|
30
30
|
ProductPriceType["Recurring"] = "recurring";
|
|
31
31
|
ProductPriceType["OneTime"] = "one_time";
|
|
32
|
-
})(ProductPriceType
|
|
32
|
+
})(ProductPriceType = exports.ProductPriceType || (exports.ProductPriceType = {}));
|
|
33
33
|
var UserType;
|
|
34
34
|
(function (UserType) {
|
|
35
35
|
UserType["Individual"] = "individual";
|
|
36
36
|
UserType["Business"] = "business";
|
|
37
|
-
})(UserType
|
|
37
|
+
})(UserType = exports.UserType || (exports.UserType = {}));
|
|
@@ -4,7 +4,7 @@ exports.ReferralKey = exports.ReferralType = void 0;
|
|
|
4
4
|
var ReferralType;
|
|
5
5
|
(function (ReferralType) {
|
|
6
6
|
ReferralType["Storage"] = "storage";
|
|
7
|
-
})(ReferralType
|
|
7
|
+
})(ReferralType = exports.ReferralType || (exports.ReferralType = {}));
|
|
8
8
|
var ReferralKey;
|
|
9
9
|
(function (ReferralKey) {
|
|
10
10
|
ReferralKey["CreateAccount"] = "create-account";
|
|
@@ -15,4 +15,4 @@ var ReferralKey;
|
|
|
15
15
|
ReferralKey["InviteFriends"] = "invite-friends";
|
|
16
16
|
ReferralKey["Invite2Friends"] = "invite-2-friends";
|
|
17
17
|
ReferralKey["CompleteSurvey"] = "complete-survey";
|
|
18
|
-
})(ReferralKey
|
|
18
|
+
})(ReferralKey = exports.ReferralKey || (exports.ReferralKey = {}));
|
|
@@ -43,8 +43,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
43
43
|
});
|
|
44
44
|
};
|
|
45
45
|
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
46
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g
|
|
47
|
-
return g
|
|
46
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
47
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
48
48
|
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
49
49
|
function step(op) {
|
|
50
50
|
if (f) throw new TypeError("Generator is already executing.");
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
/// <reference types="node" />
|
|
1
3
|
import { FolderChild } from '../storage/types';
|
|
2
4
|
export interface GenerateShareLinkPayload {
|
|
3
5
|
itemId: string;
|
|
@@ -171,7 +173,6 @@ export type ShareFolderWithUserPayload = {
|
|
|
171
173
|
encryptionAlgorithm?: string;
|
|
172
174
|
roleId: string;
|
|
173
175
|
persistPreviousSharing?: boolean;
|
|
174
|
-
hybridModeEnabled: boolean;
|
|
175
176
|
};
|
|
176
177
|
export type CreateSharingPayload = {
|
|
177
178
|
itemId: string;
|
|
@@ -43,8 +43,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
43
43
|
});
|
|
44
44
|
};
|
|
45
45
|
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
46
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g
|
|
47
|
-
return g
|
|
46
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
47
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
48
48
|
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
49
49
|
function step(op) {
|
|
50
50
|
if (f) throw new TypeError("Generator is already executing.");
|
|
@@ -6,8 +6,8 @@ var FileStatus;
|
|
|
6
6
|
FileStatus["EXISTS"] = "EXISTS";
|
|
7
7
|
FileStatus["TRASHED"] = "TRASHED";
|
|
8
8
|
FileStatus["DELETED"] = "DELETED";
|
|
9
|
-
})(FileStatus
|
|
9
|
+
})(FileStatus = exports.FileStatus || (exports.FileStatus = {}));
|
|
10
10
|
var EncryptionVersion;
|
|
11
11
|
(function (EncryptionVersion) {
|
|
12
12
|
EncryptionVersion["Aes03"] = "03-aes";
|
|
13
|
-
})(EncryptionVersion
|
|
13
|
+
})(EncryptionVersion = exports.EncryptionVersion || (exports.EncryptionVersion = {}));
|
|
@@ -32,8 +32,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
32
32
|
});
|
|
33
33
|
};
|
|
34
34
|
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
35
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g
|
|
36
|
-
return g
|
|
35
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
36
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
37
37
|
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
38
38
|
function step(op) {
|
|
39
39
|
if (f) throw new TypeError("Generator is already executing.");
|
|
@@ -23,7 +23,6 @@ export interface ChangePasswordPayloadNew {
|
|
|
23
23
|
export type UpdateProfilePayload = Partial<Pick<UserSettings, 'name' | 'lastname'>>;
|
|
24
24
|
export type PreCreateUserResponse = {
|
|
25
25
|
publicKey: string;
|
|
26
|
-
publicKyberKey: string;
|
|
27
26
|
user: {
|
|
28
27
|
uuid: UUID;
|
|
29
28
|
email: string;
|
|
@@ -37,7 +36,6 @@ export type FriendInvite = {
|
|
|
37
36
|
};
|
|
38
37
|
export type UserPublicKeyResponse = {
|
|
39
38
|
publicKey: string;
|
|
40
|
-
publicKyberKey: string;
|
|
41
39
|
};
|
|
42
40
|
export type VerifyEmailChangeResponse = {
|
|
43
41
|
oldEmail: string;
|
package/dist/network/download.js
CHANGED
|
@@ -24,8 +24,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
24
24
|
});
|
|
25
25
|
};
|
|
26
26
|
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
27
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g
|
|
28
|
-
return g
|
|
27
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
28
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
29
29
|
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
30
30
|
function step(op) {
|
|
31
31
|
if (f) throw new TypeError("Generator is already executing.");
|
|
@@ -51,8 +51,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
51
51
|
}
|
|
52
52
|
};
|
|
53
53
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
54
|
-
exports.FileVersionOneError = void 0;
|
|
55
|
-
exports.downloadFile = downloadFile;
|
|
54
|
+
exports.downloadFile = exports.FileVersionOneError = void 0;
|
|
56
55
|
var errors_1 = require("./errors");
|
|
57
56
|
var types_1 = require("./types");
|
|
58
57
|
var FileVersionOneError = /** @class */ (function (_super) {
|
|
@@ -121,3 +120,4 @@ function downloadFile(fileId, bucketId, mnemonic, network, crypto, toBinaryData,
|
|
|
121
120
|
});
|
|
122
121
|
});
|
|
123
122
|
}
|
|
123
|
+
exports.downloadFile = downloadFile;
|
|
@@ -15,8 +15,7 @@ var __extends = (this && this.__extends) || (function () {
|
|
|
15
15
|
};
|
|
16
16
|
})();
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports.ErrorWithContext = void 0;
|
|
19
|
-
exports.getNetworkErrorContext = getNetworkErrorContext;
|
|
18
|
+
exports.getNetworkErrorContext = exports.ErrorWithContext = void 0;
|
|
20
19
|
var download_1 = require("./download");
|
|
21
20
|
var upload_1 = require("./upload");
|
|
22
21
|
var ErrorWithContext = /** @class */ (function (_super) {
|
|
@@ -37,3 +36,4 @@ function getNetworkErrorContext(input, err) {
|
|
|
37
36
|
}
|
|
38
37
|
return output;
|
|
39
38
|
}
|
|
39
|
+
exports.getNetworkErrorContext = getNetworkErrorContext;
|
package/dist/network/index.js
CHANGED
|
@@ -49,8 +49,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
49
49
|
});
|
|
50
50
|
};
|
|
51
51
|
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
52
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g
|
|
53
|
-
return g
|
|
52
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
53
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
54
54
|
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
55
55
|
function step(op) {
|
|
56
56
|
if (f) throw new TypeError("Generator is already executing.");
|
package/dist/network/types.js
CHANGED
|
@@ -5,11 +5,11 @@ exports.ALGORITHMS = exports.SymmetricCryptoAlgorithm = exports.BinaryDataEncodi
|
|
|
5
5
|
var BinaryDataEncoding;
|
|
6
6
|
(function (BinaryDataEncoding) {
|
|
7
7
|
BinaryDataEncoding["HEX"] = "hex";
|
|
8
|
-
})(BinaryDataEncoding
|
|
8
|
+
})(BinaryDataEncoding = exports.BinaryDataEncoding || (exports.BinaryDataEncoding = {}));
|
|
9
9
|
var SymmetricCryptoAlgorithm;
|
|
10
10
|
(function (SymmetricCryptoAlgorithm) {
|
|
11
11
|
SymmetricCryptoAlgorithm["AES256CTR"] = "AES256CTR";
|
|
12
|
-
})(SymmetricCryptoAlgorithm
|
|
12
|
+
})(SymmetricCryptoAlgorithm = exports.SymmetricCryptoAlgorithm || (exports.SymmetricCryptoAlgorithm = {}));
|
|
13
13
|
exports.ALGORITHMS = (_a = {},
|
|
14
14
|
_a[SymmetricCryptoAlgorithm.AES256CTR] = {
|
|
15
15
|
type: SymmetricCryptoAlgorithm.AES256CTR,
|
package/dist/network/upload.js
CHANGED
|
@@ -9,8 +9,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
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
|
|
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 = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
14
|
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
15
|
function step(op) {
|
|
16
16
|
if (f) throw new TypeError("Generator is already executing.");
|
|
@@ -36,8 +36,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
36
36
|
}
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.uploadFile =
|
|
40
|
-
exports.uploadMultipartFile = uploadMultipartFile;
|
|
39
|
+
exports.uploadMultipartFile = exports.uploadFile = void 0;
|
|
41
40
|
var errors_1 = require("./errors");
|
|
42
41
|
function uploadFile(network, crypto, bucketId, mnemonic, fileSize, encryptFile, uploadFile) {
|
|
43
42
|
return __awaiter(this, void 0, void 0, function () {
|
|
@@ -105,10 +104,11 @@ function uploadFile(network, crypto, bucketId, mnemonic, fileSize, encryptFile,
|
|
|
105
104
|
});
|
|
106
105
|
});
|
|
107
106
|
}
|
|
108
|
-
|
|
109
|
-
|
|
107
|
+
exports.uploadFile = uploadFile;
|
|
108
|
+
function uploadMultipartFile(network, crypto, bucketId, mnemonic, fileSize, encryptFile, uploadMultiparts, parts) {
|
|
109
|
+
if (parts === void 0) { parts = 1; }
|
|
110
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
110
111
|
var mnemonicIsValid, index, iv, key, uploads, _a, urls, uuid, UploadId, _b, hash, uploadedPartsReference, finishUploadPayload, finishUploadResponse;
|
|
111
|
-
if (parts === void 0) { parts = 1; }
|
|
112
112
|
return __generator(this, function (_c) {
|
|
113
113
|
switch (_c.label) {
|
|
114
114
|
case 0:
|
|
@@ -156,3 +156,4 @@ function uploadMultipartFile(network_1, crypto_1, bucketId_1, mnemonic_1, fileSi
|
|
|
156
156
|
});
|
|
157
157
|
});
|
|
158
158
|
}
|
|
159
|
+
exports.uploadMultipartFile = uploadMultipartFile;
|
package/dist/photos/types.js
CHANGED
|
@@ -6,14 +6,14 @@ var PhotoStatus;
|
|
|
6
6
|
PhotoStatus["Exists"] = "EXISTS";
|
|
7
7
|
PhotoStatus["Trashed"] = "TRASHED";
|
|
8
8
|
PhotoStatus["Deleted"] = "DELETED";
|
|
9
|
-
})(PhotoStatus
|
|
9
|
+
})(PhotoStatus = exports.PhotoStatus || (exports.PhotoStatus = {}));
|
|
10
10
|
var PhotosSortBy;
|
|
11
11
|
(function (PhotosSortBy) {
|
|
12
12
|
PhotosSortBy["UpdatedAt"] = "updatedAt";
|
|
13
13
|
PhotosSortBy["TakenAt"] = "takenAt";
|
|
14
|
-
})(PhotosSortBy
|
|
14
|
+
})(PhotosSortBy = exports.PhotosSortBy || (exports.PhotosSortBy = {}));
|
|
15
15
|
var PhotosItemType;
|
|
16
16
|
(function (PhotosItemType) {
|
|
17
17
|
PhotosItemType["PHOTO"] = "PHOTO";
|
|
18
18
|
PhotosItemType["VIDEO"] = "VIDEO";
|
|
19
|
-
})(PhotosItemType
|
|
19
|
+
})(PhotosItemType = exports.PhotosItemType || (exports.PhotosItemType = {}));
|
|
@@ -11,13 +11,7 @@ var __assign = (this && this.__assign) || function () {
|
|
|
11
11
|
return __assign.apply(this, arguments);
|
|
12
12
|
};
|
|
13
13
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
-
exports.basicHeaders =
|
|
15
|
-
exports.basicHeadersWithPassword = basicHeadersWithPassword;
|
|
16
|
-
exports.headersWithToken = headersWithToken;
|
|
17
|
-
exports.headersWithTokenAndPassword = headersWithTokenAndPassword;
|
|
18
|
-
exports.headersWithBasicAuth = headersWithBasicAuth;
|
|
19
|
-
exports.headersWithAuthToken = headersWithAuthToken;
|
|
20
|
-
exports.addResourcesTokenToHeaders = addResourcesTokenToHeaders;
|
|
14
|
+
exports.addResourcesTokenToHeaders = exports.headersWithAuthToken = exports.headersWithBasicAuth = exports.headersWithTokenAndPassword = exports.headersWithToken = exports.basicHeadersWithPassword = exports.basicHeaders = void 0;
|
|
21
15
|
function basicHeaders(clientName, clientVersion) {
|
|
22
16
|
return {
|
|
23
17
|
'content-type': 'application/json; charset=utf-8',
|
|
@@ -25,6 +19,7 @@ function basicHeaders(clientName, clientVersion) {
|
|
|
25
19
|
'internxt-client': clientName,
|
|
26
20
|
};
|
|
27
21
|
}
|
|
22
|
+
exports.basicHeaders = basicHeaders;
|
|
28
23
|
function basicHeadersWithPassword(clientName, clientVersion, password) {
|
|
29
24
|
return {
|
|
30
25
|
'content-type': 'application/json; charset=utf-8',
|
|
@@ -33,6 +28,7 @@ function basicHeadersWithPassword(clientName, clientVersion, password) {
|
|
|
33
28
|
'x-share-password': password,
|
|
34
29
|
};
|
|
35
30
|
}
|
|
31
|
+
exports.basicHeadersWithPassword = basicHeadersWithPassword;
|
|
36
32
|
function headersWithToken(clientName, clientVersion, token, workspaceToken, customHeaders) {
|
|
37
33
|
var headers = basicHeaders(clientName, clientVersion);
|
|
38
34
|
var extra = {
|
|
@@ -43,6 +39,7 @@ function headersWithToken(clientName, clientVersion, token, workspaceToken, cust
|
|
|
43
39
|
}
|
|
44
40
|
return __assign(__assign(__assign({}, headers), extra), customHeaders);
|
|
45
41
|
}
|
|
42
|
+
exports.headersWithToken = headersWithToken;
|
|
46
43
|
function headersWithTokenAndPassword(clientName, clientVersion, token, workspaceToken, password) {
|
|
47
44
|
var headers = headersWithToken(clientName, clientVersion, token, workspaceToken);
|
|
48
45
|
var extra = {
|
|
@@ -50,6 +47,7 @@ function headersWithTokenAndPassword(clientName, clientVersion, token, workspace
|
|
|
50
47
|
};
|
|
51
48
|
return __assign(__assign({}, headers), extra);
|
|
52
49
|
}
|
|
50
|
+
exports.headersWithTokenAndPassword = headersWithTokenAndPassword;
|
|
53
51
|
function headersWithBasicAuth(clientName, clientVersion, auth, workspaceToken) {
|
|
54
52
|
var headers = basicHeaders(clientName, clientVersion);
|
|
55
53
|
var token = "".concat(auth.username, ":").concat(auth.password);
|
|
@@ -62,6 +60,7 @@ function headersWithBasicAuth(clientName, clientVersion, auth, workspaceToken) {
|
|
|
62
60
|
}
|
|
63
61
|
return __assign(__assign({}, headers), extra);
|
|
64
62
|
}
|
|
63
|
+
exports.headersWithBasicAuth = headersWithBasicAuth;
|
|
65
64
|
function headersWithAuthToken(clientName, clientVersion, token, workspaceToken) {
|
|
66
65
|
var headers = basicHeaders(clientName, clientVersion);
|
|
67
66
|
var extra = {};
|
|
@@ -70,9 +69,11 @@ function headersWithAuthToken(clientName, clientVersion, token, workspaceToken)
|
|
|
70
69
|
}
|
|
71
70
|
return __assign(__assign(__assign({}, headers), { 'x-token': token }), extra);
|
|
72
71
|
}
|
|
72
|
+
exports.headersWithAuthToken = headersWithAuthToken;
|
|
73
73
|
function addResourcesTokenToHeaders(headers, resourcesToken) {
|
|
74
74
|
if (resourcesToken && resourcesToken.length > 0) {
|
|
75
75
|
return __assign(__assign({}, headers), { 'internxt-resources-token': resourcesToken });
|
|
76
76
|
}
|
|
77
77
|
return headers;
|
|
78
78
|
}
|
|
79
|
+
exports.addResourcesTokenToHeaders = addResourcesTokenToHeaders;
|
|
@@ -9,4 +9,4 @@ var AppSumoTier;
|
|
|
9
9
|
AppSumoTier["Tier3"] = "internxt_tier3";
|
|
10
10
|
AppSumoTier["Tier4"] = "internxt_tier4";
|
|
11
11
|
AppSumoTier["Tier5"] = "internxt_tier5";
|
|
12
|
-
})(AppSumoTier
|
|
12
|
+
})(AppSumoTier = exports.AppSumoTier || (exports.AppSumoTier = {}));
|
|
@@ -16,23 +16,9 @@ export interface UserSettings {
|
|
|
16
16
|
sharedWorkspace: boolean;
|
|
17
17
|
credit: number;
|
|
18
18
|
mnemonic: string;
|
|
19
|
-
/**
|
|
20
|
-
/ @deprecated The individual fields for keys should not be used
|
|
21
|
-
*/
|
|
22
19
|
privateKey: string;
|
|
23
20
|
publicKey: string;
|
|
24
21
|
revocationKey: string;
|
|
25
|
-
keys: {
|
|
26
|
-
ecc: {
|
|
27
|
-
privateKey: string;
|
|
28
|
-
publicKey: string;
|
|
29
|
-
revocationKey: string;
|
|
30
|
-
};
|
|
31
|
-
kyber: {
|
|
32
|
-
privateKyberKey: string;
|
|
33
|
-
publicKyberKey: string;
|
|
34
|
-
};
|
|
35
|
-
};
|
|
36
22
|
teams?: boolean;
|
|
37
23
|
appSumoDetails: AppSumoDetails | null;
|
|
38
24
|
registerCompleted: boolean;
|
package/dist/utils.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.extractAxiosErrorMessage =
|
|
4
|
-
exports.isHexString = isHexString;
|
|
3
|
+
exports.isHexString = exports.extractAxiosErrorMessage = void 0;
|
|
5
4
|
function extractAxiosErrorMessage(err) {
|
|
6
5
|
var errMsg;
|
|
7
6
|
var error = err;
|
|
@@ -18,7 +17,9 @@ function extractAxiosErrorMessage(err) {
|
|
|
18
17
|
}
|
|
19
18
|
return errMsg;
|
|
20
19
|
}
|
|
20
|
+
exports.extractAxiosErrorMessage = extractAxiosErrorMessage;
|
|
21
21
|
function isHexString(string) {
|
|
22
22
|
// TODO: replace with proper library
|
|
23
23
|
return /^([0-9a-fA-F]{2})+$/.test(string);
|
|
24
24
|
}
|
|
25
|
+
exports.isHexString = isHexString;
|
|
@@ -28,7 +28,7 @@ export declare class Workspaces {
|
|
|
28
28
|
*/
|
|
29
29
|
uploadWorkspaceAvatar(workspaceId: string, avatar: Blob): Promise<void>;
|
|
30
30
|
deleteWorkspaceAvatar(workspaceId: string): Promise<void>;
|
|
31
|
-
setupWorkspace({ workspaceId, name, address, description, encryptedMnemonic,
|
|
31
|
+
setupWorkspace({ workspaceId, name, address, description, encryptedMnemonic, }: WorkspaceSetupInfo): Promise<void>;
|
|
32
32
|
getWorkspaceUsage(workspaceId: string): Promise<WorkspaceUsage>;
|
|
33
33
|
editWorkspace(workspaceId: string, details: {
|
|
34
34
|
name?: string;
|
package/dist/workspaces/index.js
CHANGED
|
@@ -92,8 +92,8 @@ var Workspaces = /** @class */ (function () {
|
|
|
92
92
|
return this.client.delete("workspaces/".concat(workspaceId, "/avatar"), this.headers());
|
|
93
93
|
};
|
|
94
94
|
Workspaces.prototype.setupWorkspace = function (_a) {
|
|
95
|
-
var workspaceId = _a.workspaceId, name = _a.name, address = _a.address, description = _a.description, encryptedMnemonic = _a.encryptedMnemonic
|
|
96
|
-
return this.client.patch("workspaces/".concat(workspaceId, "/setup"), { name: name, address: address, description: description, encryptedMnemonic: encryptedMnemonic
|
|
95
|
+
var workspaceId = _a.workspaceId, name = _a.name, address = _a.address, description = _a.description, encryptedMnemonic = _a.encryptedMnemonic;
|
|
96
|
+
return this.client.patch("workspaces/".concat(workspaceId, "/setup"), { name: name, address: address, description: description, encryptedMnemonic: encryptedMnemonic }, this.headers());
|
|
97
97
|
};
|
|
98
98
|
Workspaces.prototype.getWorkspaceUsage = function (workspaceId) {
|
|
99
99
|
return this.client.get("workspaces/".concat(workspaceId, "/usage"), this.headers());
|
|
@@ -20,8 +20,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
20
20
|
});
|
|
21
21
|
};
|
|
22
22
|
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
23
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g
|
|
24
|
-
return g
|
|
23
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
24
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
25
25
|
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
26
26
|
function step(op) {
|
|
27
27
|
if (f) throw new TypeError("Generator is already executing.");
|
|
@@ -70,7 +70,6 @@ describe('Workspaces service tests', function () {
|
|
|
70
70
|
id: '1',
|
|
71
71
|
memberId: 'member1',
|
|
72
72
|
key: 'user_key_1',
|
|
73
|
-
hybridModeEnabled: false,
|
|
74
73
|
workspaceId: 'workspace1',
|
|
75
74
|
spaceLimit: '10GB',
|
|
76
75
|
driveUsage: '2GB',
|
|
@@ -129,7 +128,6 @@ describe('Workspaces service tests', function () {
|
|
|
129
128
|
id: '2',
|
|
130
129
|
memberId: 'member2',
|
|
131
130
|
key: 'user_key_2',
|
|
132
|
-
hybridModeEnabled: false,
|
|
133
131
|
workspaceId: 'workspace2',
|
|
134
132
|
spaceLimit: '15GB',
|
|
135
133
|
driveUsage: '5GB',
|
|
@@ -231,7 +229,6 @@ describe('Workspaces service tests', function () {
|
|
|
231
229
|
address: 'Workspace Address',
|
|
232
230
|
description: 'Workspace Description',
|
|
233
231
|
encryptedMnemonic: 'encryptedMnemonic',
|
|
234
|
-
hybridModeEnabled: false,
|
|
235
232
|
};
|
|
236
233
|
workspaceSetupInfo = __assign({ workspaceId: 'workspaceId' }, workspaceData);
|
|
237
234
|
_a = clientAndHeaders(), client = _a.client, headers = _a.headers;
|
|
@@ -490,7 +487,7 @@ describe('Workspaces service tests', function () {
|
|
|
490
487
|
});
|
|
491
488
|
describe('inviteMemberToWorkspace', function () {
|
|
492
489
|
it('should invite a member to the workspace successfully', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
493
|
-
var workspaceId, invitedUserEmail, spaceLimitBytes, encryptedMnemonicInBase64, encryptionAlgorithm, _a, client, headers, postCall, message
|
|
490
|
+
var workspaceId, invitedUserEmail, spaceLimitBytes, encryptedMnemonicInBase64, encryptionAlgorithm, _a, client, headers, postCall, message;
|
|
494
491
|
return __generator(this, function (_b) {
|
|
495
492
|
switch (_b.label) {
|
|
496
493
|
case 0:
|
|
@@ -502,7 +499,6 @@ describe('Workspaces service tests', function () {
|
|
|
502
499
|
_a = clientAndHeaders(), client = _a.client, headers = _a.headers;
|
|
503
500
|
postCall = sinon_1.default.stub(httpClient, 'post').resolves();
|
|
504
501
|
message = 'Test message';
|
|
505
|
-
hybridModeEnabled = false;
|
|
506
502
|
return [4 /*yield*/, client.inviteMemberToWorkspace({
|
|
507
503
|
workspaceId: workspaceId,
|
|
508
504
|
invitedUserEmail: invitedUserEmail,
|
|
@@ -510,7 +506,6 @@ describe('Workspaces service tests', function () {
|
|
|
510
506
|
encryptedMnemonicInBase64: encryptedMnemonicInBase64,
|
|
511
507
|
encryptionAlgorithm: encryptionAlgorithm,
|
|
512
508
|
message: message,
|
|
513
|
-
hybridModeEnabled: hybridModeEnabled,
|
|
514
509
|
})];
|
|
515
510
|
case 1:
|
|
516
511
|
_b.sent();
|
|
@@ -9,7 +9,6 @@ export interface WorkspaceUser {
|
|
|
9
9
|
isManager: boolean;
|
|
10
10
|
isOwner: boolean;
|
|
11
11
|
key: string;
|
|
12
|
-
hybridModeEnabled: boolean;
|
|
13
12
|
member: Member;
|
|
14
13
|
memberId: string;
|
|
15
14
|
rootFolderId: string;
|
|
@@ -48,7 +47,6 @@ export type WorkspaceSetupInfo = {
|
|
|
48
47
|
address: string;
|
|
49
48
|
description: string;
|
|
50
49
|
encryptedMnemonic: string;
|
|
51
|
-
hybridModeEnabled: boolean;
|
|
52
50
|
};
|
|
53
51
|
export type PendingWorkspace = {
|
|
54
52
|
address: string | null;
|
|
@@ -145,7 +143,6 @@ export type InviteMemberBody = {
|
|
|
145
143
|
encryptedMnemonicInBase64: string;
|
|
146
144
|
encryptionAlgorithm: string;
|
|
147
145
|
message: string;
|
|
148
|
-
hybridModeEnabled: boolean;
|
|
149
146
|
};
|
|
150
147
|
interface Invite {
|
|
151
148
|
id: string;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@internxt/sdk",
|
|
3
3
|
"author": "Internxt <hello@internxt.com>",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.8.0",
|
|
5
5
|
"description": "An sdk for interacting with Internxt's services",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
@@ -28,20 +28,20 @@
|
|
|
28
28
|
"devDependencies": {
|
|
29
29
|
"@internxt/eslint-config-internxt": "^1.0.3",
|
|
30
30
|
"@internxt/prettier-config": "^1.0.1",
|
|
31
|
-
"@types/jest": "^
|
|
32
|
-
"@types/sinon": "^
|
|
33
|
-
"@types/uuid": "^
|
|
31
|
+
"@types/jest": "^27.0.1",
|
|
32
|
+
"@types/sinon": "^10.0.6",
|
|
33
|
+
"@types/uuid": "^8.3.4",
|
|
34
34
|
"eslint": "^7.32.0",
|
|
35
|
-
"husky": "^
|
|
36
|
-
"jest": "^
|
|
37
|
-
"prettier": "^
|
|
38
|
-
"sinon": "^
|
|
39
|
-
"ts-jest": "^
|
|
40
|
-
"typescript": "^
|
|
35
|
+
"husky": "^7.0.1",
|
|
36
|
+
"jest": "^27.0.6",
|
|
37
|
+
"prettier": "^2.3.2",
|
|
38
|
+
"sinon": "^12.0.1",
|
|
39
|
+
"ts-jest": "^27.0.5",
|
|
40
|
+
"typescript": "^4.3.5"
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
|
-
"axios": "^0.
|
|
43
|
+
"axios": "^0.24.0",
|
|
44
44
|
"query-string": "^7.1.0",
|
|
45
|
-
"uuid": "^
|
|
45
|
+
"uuid": "^8.3.2"
|
|
46
46
|
}
|
|
47
47
|
}
|