@metamask-previews/seedless-onboarding-controller 3.0.0-preview-e53ed971 → 3.0.0-preview-3f792d6
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/SeedlessOnboardingController.cjs +53 -87
- package/dist/SeedlessOnboardingController.cjs.map +1 -1
- package/dist/SeedlessOnboardingController.d.cts.map +1 -1
- package/dist/SeedlessOnboardingController.d.mts.map +1 -1
- package/dist/SeedlessOnboardingController.mjs +55 -89
- package/dist/SeedlessOnboardingController.mjs.map +1 -1
- package/dist/constants.cjs +0 -1
- package/dist/constants.cjs.map +1 -1
- package/dist/constants.d.cts +0 -1
- package/dist/constants.d.cts.map +1 -1
- package/dist/constants.d.mts +0 -1
- package/dist/constants.d.mts.map +1 -1
- package/dist/constants.mjs +0 -1
- package/dist/constants.mjs.map +1 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.mts +1 -1
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs.map +1 -1
- package/dist/types.cjs.map +1 -1
- package/dist/types.d.cts +9 -8
- package/dist/types.d.cts.map +1 -1
- package/dist/types.d.mts +9 -8
- package/dist/types.d.mts.map +1 -1
- package/dist/types.mjs.map +1 -1
- package/dist/utils.cjs +66 -1
- package/dist/utils.cjs.map +1 -1
- package/dist/utils.d.cts +30 -1
- package/dist/utils.d.cts.map +1 -1
- package/dist/utils.d.mts +30 -1
- package/dist/utils.d.mts.map +1 -1
- package/dist/utils.mjs +62 -1
- package/dist/utils.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -10,7 +10,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
10
10
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
11
11
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
12
12
|
};
|
|
13
|
-
var _SeedlessOnboardingController_instances, _SeedlessOnboardingController_vaultEncryptor, _SeedlessOnboardingController_controllerOperationMutex, _SeedlessOnboardingController_vaultOperationMutex, _SeedlessOnboardingController_refreshJWTToken, _SeedlessOnboardingController_revokeRefreshToken,
|
|
13
|
+
var _SeedlessOnboardingController_instances, _SeedlessOnboardingController_vaultEncryptor, _SeedlessOnboardingController_controllerOperationMutex, _SeedlessOnboardingController_vaultOperationMutex, _SeedlessOnboardingController_refreshJWTToken, _SeedlessOnboardingController_revokeRefreshToken, _SeedlessOnboardingController_passwordOutdatedCacheTTL, _SeedlessOnboardingController_isUnlocked, _SeedlessOnboardingController_submitGlobalPassword, _SeedlessOnboardingController_getAccessToken, _SeedlessOnboardingController_setUnlocked, _SeedlessOnboardingController_persistOprfKey, _SeedlessOnboardingController_persistAuthPubKey, _SeedlessOnboardingController_storeKeyringEncryptionKey, _SeedlessOnboardingController_loadKeyringEncryptionKey, _SeedlessOnboardingController_loadSeedlessEncryptionKey, _SeedlessOnboardingController_recoverAuthPubKey, _SeedlessOnboardingController_recoverEncKey, _SeedlessOnboardingController_fetchAllSecretDataFromMetadataStore, _SeedlessOnboardingController_changeEncryptionKey, _SeedlessOnboardingController_encryptAndStoreSecretData, _SeedlessOnboardingController_unlockVaultAndGetVaultData, _SeedlessOnboardingController_decryptAndParseVaultData, _SeedlessOnboardingController_withPersistedSecretMetadataBackupsState, _SeedlessOnboardingController_filterDupesAndUpdateSocialBackupsMetadata, _SeedlessOnboardingController_createNewVaultWithAuthData, _SeedlessOnboardingController_updateVault, _SeedlessOnboardingController_withControllerLock, _SeedlessOnboardingController_withVaultLock, _SeedlessOnboardingController_parseVaultData, _SeedlessOnboardingController_assertIsUnlocked, _SeedlessOnboardingController_assertIsAuthenticatedUser, _SeedlessOnboardingController_assertIsSRPBackedUpUser, _SeedlessOnboardingController_assertPasswordInSync, _SeedlessOnboardingController_resetPasswordOutdatedCache, _SeedlessOnboardingController_isTokenExpiredError, _SeedlessOnboardingController_isMaxKeyChainLengthError, _SeedlessOnboardingController_executeWithTokenRefresh;
|
|
14
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
15
|
exports.SeedlessOnboardingController = exports.getInitialSeedlessOnboardingControllerStateWithDefaults = void 0;
|
|
16
16
|
const auth_network_utils_1 = require("@metamask/auth-network-utils");
|
|
@@ -167,16 +167,16 @@ class SeedlessOnboardingController extends base_controller_1.BaseController {
|
|
|
167
167
|
_SeedlessOnboardingController_vaultOperationMutex.set(this, new async_mutex_1.Mutex());
|
|
168
168
|
_SeedlessOnboardingController_refreshJWTToken.set(this, void 0);
|
|
169
169
|
_SeedlessOnboardingController_revokeRefreshToken.set(this, void 0);
|
|
170
|
+
/**
|
|
171
|
+
* The TTL of the password outdated cache in milliseconds.
|
|
172
|
+
*/
|
|
173
|
+
_SeedlessOnboardingController_passwordOutdatedCacheTTL.set(this, void 0);
|
|
170
174
|
/**
|
|
171
175
|
* Controller lock state.
|
|
172
176
|
*
|
|
173
177
|
* The controller lock is synchronized with the keyring lock.
|
|
174
178
|
*/
|
|
175
179
|
_SeedlessOnboardingController_isUnlocked.set(this, false);
|
|
176
|
-
/**
|
|
177
|
-
* The TTL of the password outdated cache in milliseconds.
|
|
178
|
-
*/
|
|
179
|
-
_SeedlessOnboardingController_passwordOutdatedCacheTTL.set(this, void 0);
|
|
180
180
|
(0, assertions_1.assertIsPasswordOutdatedCacheValid)(passwordOutdatedCacheTTL);
|
|
181
181
|
__classPrivateFieldSet(this, _SeedlessOnboardingController_passwordOutdatedCacheTTL, passwordOutdatedCacheTTL, "f");
|
|
182
182
|
__classPrivateFieldSet(this, _SeedlessOnboardingController_vaultEncryptor, encryptor, "f");
|
|
@@ -506,7 +506,7 @@ class SeedlessOnboardingController extends base_controller_1.BaseController {
|
|
|
506
506
|
*/
|
|
507
507
|
async submitPassword(password) {
|
|
508
508
|
return await __classPrivateFieldGet(this, _SeedlessOnboardingController_instances, "m", _SeedlessOnboardingController_withControllerLock).call(this, async () => {
|
|
509
|
-
await __classPrivateFieldGet(this, _SeedlessOnboardingController_instances, "m", _SeedlessOnboardingController_unlockVaultAndGetVaultData).call(this, password);
|
|
509
|
+
await __classPrivateFieldGet(this, _SeedlessOnboardingController_instances, "m", _SeedlessOnboardingController_unlockVaultAndGetVaultData).call(this, { password });
|
|
510
510
|
__classPrivateFieldGet(this, _SeedlessOnboardingController_instances, "m", _SeedlessOnboardingController_setUnlocked).call(this);
|
|
511
511
|
});
|
|
512
512
|
}
|
|
@@ -700,7 +700,10 @@ class SeedlessOnboardingController extends base_controller_1.BaseController {
|
|
|
700
700
|
return await __classPrivateFieldGet(this, _SeedlessOnboardingController_instances, "m", _SeedlessOnboardingController_withControllerLock).call(this, async () => {
|
|
701
701
|
__classPrivateFieldGet(this, _SeedlessOnboardingController_instances, "m", _SeedlessOnboardingController_assertIsAuthenticatedUser).call(this, this.state);
|
|
702
702
|
const { vaultEncryptionKey } = this.state;
|
|
703
|
-
const { toprfEncryptionKey: rawToprfEncryptionKey, toprfPwEncryptionKey: rawToprfPwEncryptionKey, toprfAuthKeyPair: rawToprfAuthKeyPair, revokeToken, } = await __classPrivateFieldGet(this, _SeedlessOnboardingController_instances, "m", _SeedlessOnboardingController_unlockVaultAndGetVaultData).call(this,
|
|
703
|
+
const { toprfEncryptionKey: rawToprfEncryptionKey, toprfPwEncryptionKey: rawToprfPwEncryptionKey, toprfAuthKeyPair: rawToprfAuthKeyPair, revokeToken, } = await __classPrivateFieldGet(this, _SeedlessOnboardingController_instances, "m", _SeedlessOnboardingController_unlockVaultAndGetVaultData).call(this, {
|
|
704
|
+
password,
|
|
705
|
+
encryptionKey: vaultEncryptionKey,
|
|
706
|
+
});
|
|
704
707
|
if (!revokeToken) {
|
|
705
708
|
throw new Error(constants_1.SeedlessOnboardingControllerErrorMessage.InvalidRevokeToken);
|
|
706
709
|
}
|
|
@@ -778,7 +781,7 @@ class SeedlessOnboardingController extends base_controller_1.BaseController {
|
|
|
778
781
|
}
|
|
779
782
|
}
|
|
780
783
|
exports.SeedlessOnboardingController = SeedlessOnboardingController;
|
|
781
|
-
_SeedlessOnboardingController_vaultEncryptor = new WeakMap(), _SeedlessOnboardingController_controllerOperationMutex = new WeakMap(), _SeedlessOnboardingController_vaultOperationMutex = new WeakMap(), _SeedlessOnboardingController_refreshJWTToken = new WeakMap(), _SeedlessOnboardingController_revokeRefreshToken = new WeakMap(),
|
|
784
|
+
_SeedlessOnboardingController_vaultEncryptor = new WeakMap(), _SeedlessOnboardingController_controllerOperationMutex = new WeakMap(), _SeedlessOnboardingController_vaultOperationMutex = new WeakMap(), _SeedlessOnboardingController_refreshJWTToken = new WeakMap(), _SeedlessOnboardingController_revokeRefreshToken = new WeakMap(), _SeedlessOnboardingController_passwordOutdatedCacheTTL = new WeakMap(), _SeedlessOnboardingController_isUnlocked = new WeakMap(), _SeedlessOnboardingController_instances = new WeakSet(), _SeedlessOnboardingController_submitGlobalPassword =
|
|
782
785
|
/**
|
|
783
786
|
* @description Submit the global password to the controller, verify the
|
|
784
787
|
* password validity and unlock the controller.
|
|
@@ -804,7 +807,9 @@ async function _SeedlessOnboardingController_submitGlobalPassword({ targetAuthPu
|
|
|
804
807
|
const { pwEncKey } = res;
|
|
805
808
|
const vaultKey = await __classPrivateFieldGet(this, _SeedlessOnboardingController_instances, "m", _SeedlessOnboardingController_loadSeedlessEncryptionKey).call(this, pwEncKey);
|
|
806
809
|
// Unlock the controller
|
|
807
|
-
await __classPrivateFieldGet(this, _SeedlessOnboardingController_instances, "m", _SeedlessOnboardingController_unlockVaultAndGetVaultData).call(this,
|
|
810
|
+
await __classPrivateFieldGet(this, _SeedlessOnboardingController_instances, "m", _SeedlessOnboardingController_unlockVaultAndGetVaultData).call(this, {
|
|
811
|
+
encryptionKey: vaultKey,
|
|
812
|
+
});
|
|
808
813
|
__classPrivateFieldGet(this, _SeedlessOnboardingController_instances, "m", _SeedlessOnboardingController_setUnlocked).call(this);
|
|
809
814
|
}
|
|
810
815
|
catch (error) {
|
|
@@ -836,8 +841,10 @@ async function _SeedlessOnboardingController_getAccessToken(password) {
|
|
|
836
841
|
if (!vault) {
|
|
837
842
|
throw new Error(constants_1.SeedlessOnboardingControllerErrorMessage.InvalidAccessToken);
|
|
838
843
|
}
|
|
839
|
-
const {
|
|
840
|
-
|
|
844
|
+
const { vaultData } = await __classPrivateFieldGet(this, _SeedlessOnboardingController_instances, "m", _SeedlessOnboardingController_decryptAndParseVaultData).call(this, {
|
|
845
|
+
password,
|
|
846
|
+
});
|
|
847
|
+
return vaultData.accessToken;
|
|
841
848
|
}, _SeedlessOnboardingController_setUnlocked = function _SeedlessOnboardingController_setUnlocked() {
|
|
842
849
|
__classPrivateFieldSet(this, _SeedlessOnboardingController_isUnlocked, true, "f");
|
|
843
850
|
}, _SeedlessOnboardingController_persistOprfKey =
|
|
@@ -1002,7 +1009,7 @@ async function _SeedlessOnboardingController_changeEncryptionKey({ oldPassword,
|
|
|
1002
1009
|
toprfEncryptionKey: encKey,
|
|
1003
1010
|
toprfPwEncryptionKey: pwEncKey,
|
|
1004
1011
|
toprfAuthKeyPair: authKeyPair,
|
|
1005
|
-
} = await __classPrivateFieldGet(this, _SeedlessOnboardingController_instances, "m", _SeedlessOnboardingController_unlockVaultAndGetVaultData).call(this, oldPassword));
|
|
1012
|
+
} = await __classPrivateFieldGet(this, _SeedlessOnboardingController_instances, "m", _SeedlessOnboardingController_unlockVaultAndGetVaultData).call(this, { password: oldPassword }));
|
|
1006
1013
|
}
|
|
1007
1014
|
const result = await this.toprfClient.changeEncKey({
|
|
1008
1015
|
nodeAuthTokens: this.state.nodeAuthTokens,
|
|
@@ -1071,8 +1078,9 @@ async function _SeedlessOnboardingController_encryptAndStoreSecretData(params) {
|
|
|
1071
1078
|
* Unlocks the encrypted vault using the provided password and returns the decrypted vault data.
|
|
1072
1079
|
* This method ensures thread-safety by using a mutex lock when accessing the vault.
|
|
1073
1080
|
*
|
|
1074
|
-
* @param
|
|
1075
|
-
* @param
|
|
1081
|
+
* @param params - The parameters for unlocking the vault.
|
|
1082
|
+
* @param params.password - The optional password to unlock the vault.
|
|
1083
|
+
* @param params.encryptionKey - The optional encryption key to unlock the vault.
|
|
1076
1084
|
* @returns A promise that resolves to an object containing:
|
|
1077
1085
|
* - toprfEncryptionKey: The decrypted TOPRF encryption key
|
|
1078
1086
|
* - toprfAuthKeyPair: The decrypted TOPRF authentication key pair
|
|
@@ -1084,54 +1092,38 @@ async function _SeedlessOnboardingController_encryptAndStoreSecretData(params) {
|
|
|
1084
1092
|
* - The password is incorrect (from encryptor.decrypt)
|
|
1085
1093
|
* - The decrypted vault data is malformed
|
|
1086
1094
|
*/
|
|
1087
|
-
async function _SeedlessOnboardingController_unlockVaultAndGetVaultData(
|
|
1095
|
+
async function _SeedlessOnboardingController_unlockVaultAndGetVaultData(params) {
|
|
1088
1096
|
return __classPrivateFieldGet(this, _SeedlessOnboardingController_instances, "m", _SeedlessOnboardingController_withVaultLock).call(this, async () => {
|
|
1089
|
-
const {
|
|
1090
|
-
const { toprfEncryptionKey, toprfPwEncryptionKey, toprfAuthKeyPair, revokeToken, accessToken, } = parsedVaultData;
|
|
1097
|
+
const { vaultData, vaultEncryptionKey, vaultEncryptionSalt } = await __classPrivateFieldGet(this, _SeedlessOnboardingController_instances, "m", _SeedlessOnboardingController_decryptAndParseVaultData).call(this, params);
|
|
1091
1098
|
this.update((state) => {
|
|
1092
1099
|
state.vaultEncryptionKey = vaultEncryptionKey;
|
|
1093
1100
|
state.vaultEncryptionSalt = vaultEncryptionSalt;
|
|
1094
|
-
state.revokeToken = revokeToken;
|
|
1095
|
-
state.accessToken = accessToken;
|
|
1101
|
+
state.revokeToken = vaultData.revokeToken;
|
|
1102
|
+
state.accessToken = vaultData.accessToken;
|
|
1096
1103
|
});
|
|
1097
|
-
return
|
|
1098
|
-
toprfEncryptionKey,
|
|
1099
|
-
toprfPwEncryptionKey,
|
|
1100
|
-
toprfAuthKeyPair,
|
|
1101
|
-
revokeToken,
|
|
1102
|
-
accessToken,
|
|
1103
|
-
};
|
|
1104
|
+
return (0, utils_3.deserializeVaultData)(vaultData);
|
|
1104
1105
|
});
|
|
1105
1106
|
}, _SeedlessOnboardingController_decryptAndParseVaultData =
|
|
1106
1107
|
/**
|
|
1107
1108
|
* Decrypts the vault data and parses it into a usable format.
|
|
1108
1109
|
*
|
|
1109
|
-
* @param
|
|
1110
|
-
* @param
|
|
1110
|
+
* @param params - The parameters for decrypting the vault.
|
|
1111
|
+
* @param params.password - The optional password to decrypt the vault.
|
|
1112
|
+
* @param params.encryptionKey - The optional encryption key to decrypt the vault.
|
|
1111
1113
|
* @returns A promise that resolves to an object containing:
|
|
1112
1114
|
*/
|
|
1113
|
-
async function _SeedlessOnboardingController_decryptAndParseVaultData(
|
|
1115
|
+
async function _SeedlessOnboardingController_decryptAndParseVaultData(params) {
|
|
1114
1116
|
let { vaultEncryptionKey, vaultEncryptionSalt } = this.state;
|
|
1115
1117
|
const { vault: encryptedVault } = this.state;
|
|
1116
1118
|
if (!encryptedVault) {
|
|
1117
1119
|
throw new Error(constants_1.SeedlessOnboardingControllerErrorMessage.VaultError);
|
|
1118
1120
|
}
|
|
1119
|
-
if (encryptionKey) {
|
|
1120
|
-
vaultEncryptionKey = encryptionKey;
|
|
1121
|
+
if (params?.encryptionKey) {
|
|
1122
|
+
vaultEncryptionKey = params.encryptionKey;
|
|
1121
1123
|
}
|
|
1122
1124
|
let decryptedVaultData;
|
|
1123
|
-
if
|
|
1124
|
-
|
|
1125
|
-
// Note that vault decryption using the password is a very costly operation as it involves deriving the encryption key
|
|
1126
|
-
// from the password using an intentionally slow key derivation function.
|
|
1127
|
-
// We should make sure that we only call it very intentionally.
|
|
1128
|
-
const result = await __classPrivateFieldGet(this, _SeedlessOnboardingController_vaultEncryptor, "f").decryptWithDetail(password, encryptedVault);
|
|
1129
|
-
decryptedVaultData = result.vault;
|
|
1130
|
-
vaultEncryptionKey = result.exportedKeyString;
|
|
1131
|
-
vaultEncryptionSalt = result.salt;
|
|
1132
|
-
}
|
|
1133
|
-
else {
|
|
1134
|
-
assertIsVaultEncryptionKeyDefined(vaultEncryptionKey);
|
|
1125
|
+
// if the encryption key is available, we will use it to decrypt the vault
|
|
1126
|
+
if (vaultEncryptionKey) {
|
|
1135
1127
|
const parsedEncryptedVault = JSON.parse(encryptedVault);
|
|
1136
1128
|
if (vaultEncryptionSalt &&
|
|
1137
1129
|
vaultEncryptionSalt !== parsedEncryptedVault.salt) {
|
|
@@ -1140,9 +1132,20 @@ async function _SeedlessOnboardingController_decryptAndParseVaultData(password,
|
|
|
1140
1132
|
const key = await __classPrivateFieldGet(this, _SeedlessOnboardingController_vaultEncryptor, "f").importKey(vaultEncryptionKey);
|
|
1141
1133
|
decryptedVaultData = await __classPrivateFieldGet(this, _SeedlessOnboardingController_vaultEncryptor, "f").decryptWithKey(key, parsedEncryptedVault);
|
|
1142
1134
|
}
|
|
1143
|
-
|
|
1135
|
+
else {
|
|
1136
|
+
// if the encryption key is not available, we will use the password to decrypt the vault
|
|
1137
|
+
assertIsValidPassword(params?.password);
|
|
1138
|
+
// Note that vault decryption using the password is a very costly operation as it involves deriving the encryption key
|
|
1139
|
+
// from the password using an intentionally slow key derivation function.
|
|
1140
|
+
// We should make sure that we only call it very intentionally.
|
|
1141
|
+
const result = await __classPrivateFieldGet(this, _SeedlessOnboardingController_vaultEncryptor, "f").decryptWithDetail(params.password, encryptedVault);
|
|
1142
|
+
decryptedVaultData = result.vault;
|
|
1143
|
+
vaultEncryptionKey = result.exportedKeyString;
|
|
1144
|
+
vaultEncryptionSalt = result.salt;
|
|
1145
|
+
}
|
|
1146
|
+
const vaultData = __classPrivateFieldGet(this, _SeedlessOnboardingController_instances, "m", _SeedlessOnboardingController_parseVaultData).call(this, decryptedVaultData);
|
|
1144
1147
|
return {
|
|
1145
|
-
|
|
1148
|
+
vaultData,
|
|
1146
1149
|
vaultEncryptionKey,
|
|
1147
1150
|
vaultEncryptionSalt,
|
|
1148
1151
|
};
|
|
@@ -1218,11 +1221,10 @@ async function _SeedlessOnboardingController_createNewVaultWithAuthData({ passwo
|
|
|
1218
1221
|
__classPrivateFieldGet(this, _SeedlessOnboardingController_instances, "m", _SeedlessOnboardingController_assertIsAuthenticatedUser).call(this, this.state);
|
|
1219
1222
|
const { revokeToken } = this.state;
|
|
1220
1223
|
const accessToken = await __classPrivateFieldGet(this, _SeedlessOnboardingController_instances, "m", _SeedlessOnboardingController_getAccessToken).call(this, password);
|
|
1221
|
-
const
|
|
1222
|
-
|
|
1223
|
-
toprfEncryptionKey,
|
|
1224
|
-
toprfPwEncryptionKey,
|
|
1225
|
-
toprfAuthKeyPair,
|
|
1224
|
+
const serializedVaultData = (0, utils_3.serializeVaultData)({
|
|
1225
|
+
toprfAuthKeyPair: rawToprfAuthKeyPair,
|
|
1226
|
+
toprfEncryptionKey: rawToprfEncryptionKey,
|
|
1227
|
+
toprfPwEncryptionKey: rawToprfPwEncryptionKey,
|
|
1226
1228
|
revokeToken,
|
|
1227
1229
|
accessToken,
|
|
1228
1230
|
});
|
|
@@ -1292,18 +1294,6 @@ async function _SeedlessOnboardingController_withControllerLock(callback) {
|
|
|
1292
1294
|
*/
|
|
1293
1295
|
async function _SeedlessOnboardingController_withVaultLock(callback) {
|
|
1294
1296
|
return await withLock(__classPrivateFieldGet(this, _SeedlessOnboardingController_vaultOperationMutex, "f"), callback);
|
|
1295
|
-
}, _SeedlessOnboardingController_serializeKeyData = function _SeedlessOnboardingController_serializeKeyData(encKey, pwEncKey, authKeyPair) {
|
|
1296
|
-
const b64EncodedEncKey = (0, utils_1.bytesToBase64)(encKey);
|
|
1297
|
-
const b64EncodedPwEncKey = (0, utils_1.bytesToBase64)(pwEncKey);
|
|
1298
|
-
const b64EncodedAuthKeyPair = JSON.stringify({
|
|
1299
|
-
sk: (0, utils_1.bigIntToHex)(authKeyPair.sk),
|
|
1300
|
-
pk: (0, utils_1.bytesToBase64)(authKeyPair.pk),
|
|
1301
|
-
});
|
|
1302
|
-
return {
|
|
1303
|
-
toprfEncryptionKey: b64EncodedEncKey,
|
|
1304
|
-
toprfPwEncryptionKey: b64EncodedPwEncKey,
|
|
1305
|
-
toprfAuthKeyPair: b64EncodedAuthKeyPair,
|
|
1306
|
-
};
|
|
1307
1297
|
}, _SeedlessOnboardingController_parseVaultData = function _SeedlessOnboardingController_parseVaultData(data) {
|
|
1308
1298
|
if (typeof data !== 'string') {
|
|
1309
1299
|
throw new Error(constants_1.SeedlessOnboardingControllerErrorMessage.InvalidVaultData);
|
|
@@ -1316,20 +1306,7 @@ async function _SeedlessOnboardingController_withVaultLock(callback) {
|
|
|
1316
1306
|
throw new Error(constants_1.SeedlessOnboardingControllerErrorMessage.InvalidVaultData);
|
|
1317
1307
|
}
|
|
1318
1308
|
(0, assertions_1.assertIsValidVaultData)(parsedVaultData);
|
|
1319
|
-
|
|
1320
|
-
const rawToprfPwEncryptionKey = (0, utils_1.base64ToBytes)(parsedVaultData.toprfPwEncryptionKey);
|
|
1321
|
-
const parsedToprfAuthKeyPair = JSON.parse(parsedVaultData.toprfAuthKeyPair);
|
|
1322
|
-
const rawToprfAuthKeyPair = {
|
|
1323
|
-
sk: BigInt(parsedToprfAuthKeyPair.sk),
|
|
1324
|
-
pk: (0, utils_1.base64ToBytes)(parsedToprfAuthKeyPair.pk),
|
|
1325
|
-
};
|
|
1326
|
-
return {
|
|
1327
|
-
toprfEncryptionKey: rawToprfEncryptionKey,
|
|
1328
|
-
toprfPwEncryptionKey: rawToprfPwEncryptionKey,
|
|
1329
|
-
toprfAuthKeyPair: rawToprfAuthKeyPair,
|
|
1330
|
-
revokeToken: parsedVaultData.revokeToken,
|
|
1331
|
-
accessToken: parsedVaultData.accessToken,
|
|
1332
|
-
};
|
|
1309
|
+
return parsedVaultData;
|
|
1333
1310
|
}, _SeedlessOnboardingController_assertIsUnlocked = function _SeedlessOnboardingController_assertIsUnlocked() {
|
|
1334
1311
|
if (!__classPrivateFieldGet(this, _SeedlessOnboardingController_isUnlocked, "f")) {
|
|
1335
1312
|
throw new Error(constants_1.SeedlessOnboardingControllerErrorMessage.ControllerLocked);
|
|
@@ -1505,15 +1482,4 @@ function assertIsEncryptedSeedlessEncryptionKeySet(encryptedSeedlessEncryptionKe
|
|
|
1505
1482
|
throw new Error(constants_1.SeedlessOnboardingControllerErrorMessage.EncryptedSeedlessEncryptionKeyNotSet);
|
|
1506
1483
|
}
|
|
1507
1484
|
}
|
|
1508
|
-
/**
|
|
1509
|
-
* Assert that the provided vault encryption key is a valid non-empty string.
|
|
1510
|
-
*
|
|
1511
|
-
* @param vaultEncryptionKey - The vault encryption key to check.
|
|
1512
|
-
* @throws If the vault encryption key is not a valid string.
|
|
1513
|
-
*/
|
|
1514
|
-
function assertIsVaultEncryptionKeyDefined(vaultEncryptionKey) {
|
|
1515
|
-
if (!vaultEncryptionKey) {
|
|
1516
|
-
throw new Error(constants_1.SeedlessOnboardingControllerErrorMessage.VaultEncryptionKeyUndefined);
|
|
1517
|
-
}
|
|
1518
|
-
}
|
|
1519
1485
|
//# sourceMappingURL=SeedlessOnboardingController.cjs.map
|