@dynamic-labs-wallet/browser 0.0.253 → 0.0.255-beta
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/index.cjs.js +172 -16
- package/index.esm.js +173 -18
- package/package.json +2 -2
- package/src/client.d.ts +26 -1
- package/src/client.d.ts.map +1 -1
- package/src/types.d.ts +7 -1
- package/src/types.d.ts.map +1 -1
- package/src/walletState.d.ts +28 -0
- package/src/walletState.d.ts.map +1 -0
package/index.cjs.js
CHANGED
|
@@ -1208,6 +1208,14 @@ const localStorageWriteTest = {
|
|
|
1208
1208
|
}
|
|
1209
1209
|
});
|
|
1210
1210
|
|
|
1211
|
+
class WalletNotReadyError extends Error {
|
|
1212
|
+
constructor(accountAddress, walletReadyState){
|
|
1213
|
+
super(`Wallet ${accountAddress} is not ready and requires password to be unlocked`);
|
|
1214
|
+
this.name = 'WalletNotReadyError';
|
|
1215
|
+
this.accountAddress = accountAddress;
|
|
1216
|
+
this.walletReadyState = walletReadyState;
|
|
1217
|
+
}
|
|
1218
|
+
}
|
|
1211
1219
|
class WalletBusyError extends Error {
|
|
1212
1220
|
constructor(accountAddress, operation){
|
|
1213
1221
|
super(`Wallet ${accountAddress} is currently performing a ${operation} operation`);
|
|
@@ -1293,6 +1301,39 @@ const hasDelegatedBackup = (backupInfo)=>{
|
|
|
1293
1301
|
return ((_backupInfo_backups_BackupLocation_DELEGATED_length = backupInfo == null ? void 0 : (_backupInfo_backups = backupInfo.backups) == null ? void 0 : (_backupInfo_backups_BackupLocation_DELEGATED = _backupInfo_backups[core.BackupLocation.DELEGATED]) == null ? void 0 : _backupInfo_backups_BackupLocation_DELEGATED.length) != null ? _backupInfo_backups_BackupLocation_DELEGATED_length : 0) > 0;
|
|
1294
1302
|
};
|
|
1295
1303
|
|
|
1304
|
+
/**
|
|
1305
|
+
* Determines the recovery state of a wallet based on backup info and local shares.
|
|
1306
|
+
*
|
|
1307
|
+
* @param clientKeySharesBackupInfo - The backup information for the wallet
|
|
1308
|
+
* @param hasLocalShares - Whether the wallet has local shares available
|
|
1309
|
+
* @returns WalletRecoveryState indicating the wallet's lock state and share availability
|
|
1310
|
+
*/ function determineWalletRecoveryState({ clientKeySharesBackupInfo, hasLocalShares }) {
|
|
1311
|
+
var _clientKeySharesBackupInfo_passwordEncrypted;
|
|
1312
|
+
const isPasswordEncrypted = (_clientKeySharesBackupInfo_passwordEncrypted = clientKeySharesBackupInfo == null ? void 0 : clientKeySharesBackupInfo.passwordEncrypted) != null ? _clientKeySharesBackupInfo_passwordEncrypted : false;
|
|
1313
|
+
const walletReadyState = hasLocalShares ? core.WalletReadyState.READY : core.WalletReadyState.ENCRYPTED;
|
|
1314
|
+
return {
|
|
1315
|
+
walletReadyState,
|
|
1316
|
+
isPasswordEncrypted
|
|
1317
|
+
};
|
|
1318
|
+
}
|
|
1319
|
+
/**
|
|
1320
|
+
* Checks if a wallet is encrypted and needs to be unlocked before use.
|
|
1321
|
+
* Throws WalletNotReadyError if the wallet is password-encrypted, has no local shares,
|
|
1322
|
+
* and no password is provided.
|
|
1323
|
+
*
|
|
1324
|
+
* @param walletRecoveryState - The recovery state from getWalletRecoveryState
|
|
1325
|
+
* @param accountAddress - The wallet account address
|
|
1326
|
+
* @param password - Optional password for decryption
|
|
1327
|
+
* @throws WalletNotReadyError if wallet is in ENCRYPTED state without password
|
|
1328
|
+
*/ function ensureWalletReady({ walletRecoveryState, accountAddress, password }) {
|
|
1329
|
+
const { walletReadyState, isPasswordEncrypted } = walletRecoveryState;
|
|
1330
|
+
// If wallet is in ENCRYPTED state (no local shares), is password-encrypted,
|
|
1331
|
+
// and no password is provided, it needs to be unlocked before proceeding
|
|
1332
|
+
if (walletReadyState === core.WalletReadyState.ENCRYPTED && isPasswordEncrypted && !password) {
|
|
1333
|
+
throw new WalletNotReadyError(accountAddress, walletReadyState);
|
|
1334
|
+
}
|
|
1335
|
+
}
|
|
1336
|
+
|
|
1296
1337
|
// eslint-disable-next-line @nx/enforce-module-boundaries
|
|
1297
1338
|
class DynamicWalletClient {
|
|
1298
1339
|
async initializeForwardMPCClient() {
|
|
@@ -3371,18 +3412,24 @@ class DynamicWalletClient {
|
|
|
3371
3412
|
* If successful, the key share is encrypted with the new password. This method solely performs the recovery
|
|
3372
3413
|
* and decryption without storing the restored key shares. If unsuccessful, it throws an error.
|
|
3373
3414
|
*/ async verifyPassword({ accountAddress, password = undefined, walletOperation = core.WalletOperation.NO_OPERATION, signedSessionId }) {
|
|
3374
|
-
|
|
3375
|
-
|
|
3376
|
-
|
|
3377
|
-
|
|
3378
|
-
|
|
3415
|
+
// Only load wallet if it's not already loaded (to avoid double eager loading)
|
|
3416
|
+
if (!this.walletMap[accountAddress]) {
|
|
3417
|
+
await this.getWallet({
|
|
3418
|
+
accountAddress,
|
|
3419
|
+
password,
|
|
3420
|
+
walletOperation,
|
|
3421
|
+
signedSessionId
|
|
3422
|
+
});
|
|
3423
|
+
}
|
|
3424
|
+
// Check if wallet is ready for operation (throws WalletNotReadyError if encrypted without password)
|
|
3425
|
+
const walletRecoveryState = await this.getWalletRecoveryState({
|
|
3426
|
+
accountAddress
|
|
3379
3427
|
});
|
|
3380
|
-
|
|
3428
|
+
ensureWalletReady({
|
|
3429
|
+
walletRecoveryState,
|
|
3381
3430
|
accountAddress,
|
|
3382
|
-
|
|
3383
|
-
})
|
|
3384
|
-
throw new Error('Password is required for operation but not provided');
|
|
3385
|
-
}
|
|
3431
|
+
password
|
|
3432
|
+
});
|
|
3386
3433
|
// silent return if no password is provided and operation does not require a password
|
|
3387
3434
|
if (!password) {
|
|
3388
3435
|
return;
|
|
@@ -3396,12 +3443,11 @@ class DynamicWalletClient {
|
|
|
3396
3443
|
}
|
|
3397
3444
|
try {
|
|
3398
3445
|
// TODO(zfaizal2): throw error if signedSessionId is not provided after service deploy
|
|
3446
|
+
// Recover and store shares to unlock the wallet (storeRecoveredShares defaults to true)
|
|
3399
3447
|
await this.recoverEncryptedBackupByWallet({
|
|
3400
3448
|
accountAddress,
|
|
3401
3449
|
password,
|
|
3402
3450
|
walletOperation,
|
|
3403
|
-
shareCount: 1,
|
|
3404
|
-
storeRecoveredShares: false,
|
|
3405
3451
|
signedSessionId
|
|
3406
3452
|
});
|
|
3407
3453
|
} catch (error) {
|
|
@@ -3444,9 +3490,6 @@ class DynamicWalletClient {
|
|
|
3444
3490
|
const clientKeyShares = await this.getClientKeySharesFromStorage({
|
|
3445
3491
|
accountAddress
|
|
3446
3492
|
});
|
|
3447
|
-
if (walletOperation === core.WalletOperation.REACH_ALL_PARTIES || walletOperation === core.WalletOperation.REFRESH || walletOperation === core.WalletOperation.RESHARE) {
|
|
3448
|
-
return true;
|
|
3449
|
-
}
|
|
3450
3493
|
const { requiredShareCount } = this.recoverStrategy({
|
|
3451
3494
|
clientKeyShareBackupInfo: clientKeySharesBackupInfo,
|
|
3452
3495
|
thresholdSignatureScheme: this.walletMap[accountAddress].thresholdSignatureScheme,
|
|
@@ -3516,6 +3559,34 @@ class DynamicWalletClient {
|
|
|
3516
3559
|
accountAddress,
|
|
3517
3560
|
walletOperation
|
|
3518
3561
|
})) {
|
|
3562
|
+
var _walletData_clientKeySharesBackupInfo;
|
|
3563
|
+
const walletData = this.walletMap[accountAddress];
|
|
3564
|
+
var _walletData_clientKeySharesBackupInfo_passwordEncrypted;
|
|
3565
|
+
const isPasswordEncrypted = (_walletData_clientKeySharesBackupInfo_passwordEncrypted = (_walletData_clientKeySharesBackupInfo = walletData.clientKeySharesBackupInfo) == null ? void 0 : _walletData_clientKeySharesBackupInfo.passwordEncrypted) != null ? _walletData_clientKeySharesBackupInfo_passwordEncrypted : false;
|
|
3566
|
+
// Password-encrypted wallet without password - fetch and cache for eager loading
|
|
3567
|
+
if (walletOperation === core.WalletOperation.RECOVER && isPasswordEncrypted && !password) {
|
|
3568
|
+
const { shares } = this.recoverStrategy({
|
|
3569
|
+
clientKeyShareBackupInfo: walletData.clientKeySharesBackupInfo,
|
|
3570
|
+
thresholdSignatureScheme: walletData.thresholdSignatureScheme,
|
|
3571
|
+
walletOperation: core.WalletOperation.RECOVER
|
|
3572
|
+
});
|
|
3573
|
+
const { dynamic: dynamicKeyShareIds } = shares;
|
|
3574
|
+
const data = await this.apiClient.recoverEncryptedBackupByWallet({
|
|
3575
|
+
walletId: walletData.walletId,
|
|
3576
|
+
keyShareIds: dynamicKeyShareIds,
|
|
3577
|
+
signedSessionId,
|
|
3578
|
+
requiresSignedSessionId: this.requiresSignedSessionId()
|
|
3579
|
+
});
|
|
3580
|
+
// Cache encrypted shares for later decryption by unlockWallet
|
|
3581
|
+
const encryptedStorageKey = `${accountAddress}${core.ENCRYPTED_SHARES_STORAGE_SUFFIX}`;
|
|
3582
|
+
await this.storage.setItem(encryptedStorageKey, JSON.stringify(data));
|
|
3583
|
+
// Update wallet state to locked
|
|
3584
|
+
this.walletMap[accountAddress] = _extends({}, walletData, {
|
|
3585
|
+
walletReadyState: core.WalletReadyState.ENCRYPTED
|
|
3586
|
+
});
|
|
3587
|
+
// Return wallet in locked state (no error for eager loading)
|
|
3588
|
+
return this.walletMap[accountAddress];
|
|
3589
|
+
}
|
|
3519
3590
|
// TODO(zfaizal2): throw error if signedSessionId is not provided after service deploy
|
|
3520
3591
|
const decryptedKeyShares = await this.recoverEncryptedBackupByWallet({
|
|
3521
3592
|
accountAddress,
|
|
@@ -3556,6 +3627,89 @@ class DynamicWalletClient {
|
|
|
3556
3627
|
throw error;
|
|
3557
3628
|
}
|
|
3558
3629
|
}
|
|
3630
|
+
/**
|
|
3631
|
+
* Gets the recovery state of a wallet without attempting to decrypt shares.
|
|
3632
|
+
* This method is useful for detecting if a wallet is password-encrypted
|
|
3633
|
+
* and needs unlocking before use.
|
|
3634
|
+
*
|
|
3635
|
+
* @param accountAddress - The account address of the wallet
|
|
3636
|
+
* @returns WalletRecoveryState indicating the wallet's lock state and share availability
|
|
3637
|
+
*/ async getWalletRecoveryState({ accountAddress }) {
|
|
3638
|
+
const walletData = this.walletMap[accountAddress];
|
|
3639
|
+
if (!walletData) {
|
|
3640
|
+
throw new Error(`Wallet not found for address: ${accountAddress}`);
|
|
3641
|
+
}
|
|
3642
|
+
const clientKeyShares = await this.getClientKeySharesFromStorage({
|
|
3643
|
+
accountAddress
|
|
3644
|
+
});
|
|
3645
|
+
return determineWalletRecoveryState({
|
|
3646
|
+
clientKeySharesBackupInfo: walletData.clientKeySharesBackupInfo,
|
|
3647
|
+
hasLocalShares: clientKeyShares.length > 0
|
|
3648
|
+
});
|
|
3649
|
+
}
|
|
3650
|
+
/**
|
|
3651
|
+
* Unlocks a password-encrypted wallet by decrypting cached encrypted shares.
|
|
3652
|
+
* This method should be called after getWalletRecoveryState returns LOCKED state.
|
|
3653
|
+
*
|
|
3654
|
+
* @param accountAddress - The account address of the wallet
|
|
3655
|
+
* @param password - The password to decrypt the shares
|
|
3656
|
+
* @param signedSessionId - The signed session ID for authentication
|
|
3657
|
+
* @returns The unlocked wallet properties
|
|
3658
|
+
*/ async unlockWallet({ accountAddress, password, signedSessionId }) {
|
|
3659
|
+
const dynamicRequestId = uuid.v4();
|
|
3660
|
+
try {
|
|
3661
|
+
if (!this.walletMap[accountAddress]) {
|
|
3662
|
+
await this.getWallet({
|
|
3663
|
+
accountAddress,
|
|
3664
|
+
walletOperation: core.WalletOperation.NO_OPERATION,
|
|
3665
|
+
signedSessionId
|
|
3666
|
+
});
|
|
3667
|
+
}
|
|
3668
|
+
const wallet = this.walletMap[accountAddress];
|
|
3669
|
+
const encryptedStorageKey = `${accountAddress}${core.ENCRYPTED_SHARES_STORAGE_SUFFIX}`;
|
|
3670
|
+
let encryptedData = await this.storage.getItem(encryptedStorageKey);
|
|
3671
|
+
// If no cached encrypted shares, fetch via getWallet with RECOVER
|
|
3672
|
+
if (!encryptedData) {
|
|
3673
|
+
await this.getWallet({
|
|
3674
|
+
accountAddress,
|
|
3675
|
+
walletOperation: core.WalletOperation.RECOVER,
|
|
3676
|
+
signedSessionId
|
|
3677
|
+
});
|
|
3678
|
+
encryptedData = await this.storage.getItem(encryptedStorageKey);
|
|
3679
|
+
}
|
|
3680
|
+
if (!encryptedData) {
|
|
3681
|
+
throw new Error('No encrypted shares found for wallet');
|
|
3682
|
+
}
|
|
3683
|
+
const data = JSON.parse(encryptedData);
|
|
3684
|
+
// Decrypt the key shares
|
|
3685
|
+
const decryptedKeyShares = await Promise.all(data.keyShares.map((keyShare)=>this.decryptKeyShare({
|
|
3686
|
+
keyShare: keyShare.encryptedAccountCredential,
|
|
3687
|
+
password
|
|
3688
|
+
})));
|
|
3689
|
+
await this.setClientKeySharesToStorage({
|
|
3690
|
+
accountAddress,
|
|
3691
|
+
clientKeyShares: decryptedKeyShares
|
|
3692
|
+
});
|
|
3693
|
+
this.walletMap[accountAddress] = _extends({}, wallet, {
|
|
3694
|
+
walletReadyState: core.WalletReadyState.READY
|
|
3695
|
+
});
|
|
3696
|
+
await this.storage.setItem(this.storageKey, JSON.stringify(this.walletMap));
|
|
3697
|
+
this.logger.debug('[DynamicWaasWalletClient] Wallet unlocked successfully', {
|
|
3698
|
+
accountAddress
|
|
3699
|
+
});
|
|
3700
|
+
return this.walletMap[accountAddress];
|
|
3701
|
+
} catch (error) {
|
|
3702
|
+
logError({
|
|
3703
|
+
message: 'Error in unlockWallet',
|
|
3704
|
+
error: error,
|
|
3705
|
+
context: {
|
|
3706
|
+
accountAddress,
|
|
3707
|
+
dynamicRequestId
|
|
3708
|
+
}
|
|
3709
|
+
});
|
|
3710
|
+
throw error;
|
|
3711
|
+
}
|
|
3712
|
+
}
|
|
3559
3713
|
async getWallets() {
|
|
3560
3714
|
const dynamicRequestId = uuid.v4();
|
|
3561
3715
|
try {
|
|
@@ -3588,7 +3742,8 @@ class DynamicWalletClient {
|
|
|
3588
3742
|
clientKeySharesBackupInfo: wallet.clientKeySharesBackupInfo,
|
|
3589
3743
|
derivationPath: ((_acc_accountAddress = acc[accountAddress]) == null ? void 0 : _acc_accountAddress.derivationPath) || undefined,
|
|
3590
3744
|
thresholdSignatureScheme: wallet.thresholdSignatureScheme,
|
|
3591
|
-
addressType: wallet.addressType
|
|
3745
|
+
addressType: wallet.addressType,
|
|
3746
|
+
walletReadyState: core.WalletReadyState.READY
|
|
3592
3747
|
};
|
|
3593
3748
|
return acc;
|
|
3594
3749
|
}, {});
|
|
@@ -3858,6 +4013,7 @@ exports.ERROR_SIGN_TYPED_DATA = ERROR_SIGN_TYPED_DATA;
|
|
|
3858
4013
|
exports.ERROR_VERIFY_MESSAGE_SIGNATURE = ERROR_VERIFY_MESSAGE_SIGNATURE;
|
|
3859
4014
|
exports.ERROR_VERIFY_TRANSACTION_SIGNATURE = ERROR_VERIFY_TRANSACTION_SIGNATURE;
|
|
3860
4015
|
exports.WalletBusyError = WalletBusyError;
|
|
4016
|
+
exports.WalletNotReadyError = WalletNotReadyError;
|
|
3861
4017
|
exports.cancelICloudAuth = cancelICloudAuth;
|
|
3862
4018
|
exports.createAddCloudProviderToExistingDelegationDistribution = createAddCloudProviderToExistingDelegationDistribution;
|
|
3863
4019
|
exports.createBackupData = createBackupData;
|
package/index.esm.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { SigningAlgorithm, MPC_RELAY_PROD_API_URL, getMPCChainConfig, AuthMode, BackupLocation, parseNamespacedVersion, FEATURE_FLAGS, ThresholdSignatureScheme, getClientThreshold, MPC_CONFIG, getTSSConfig, serializeMessageForForwardMPC, WalletOperation, getReshareConfig, verifiedCredentialNameToChainEnum, DynamicApiClient, getEnvironmentFromUrl, IFRAME_DOMAIN_MAP } from '@dynamic-labs-wallet/core';
|
|
1
|
+
import { SigningAlgorithm, MPC_RELAY_PROD_API_URL, getMPCChainConfig, AuthMode, BackupLocation, WalletReadyState, parseNamespacedVersion, FEATURE_FLAGS, ThresholdSignatureScheme, getClientThreshold, MPC_CONFIG, getTSSConfig, serializeMessageForForwardMPC, WalletOperation, getReshareConfig, verifiedCredentialNameToChainEnum, ENCRYPTED_SHARES_STORAGE_SUFFIX, DynamicApiClient, getEnvironmentFromUrl, IFRAME_DOMAIN_MAP } from '@dynamic-labs-wallet/core';
|
|
2
2
|
export * from '@dynamic-labs-wallet/core';
|
|
3
3
|
import { BIP340, ExportableEd25519, Ecdsa, MessageHash, EcdsaSignature, EcdsaKeygenResult, ExportableEd25519KeygenResult, BIP340KeygenResult } from '#internal/web';
|
|
4
4
|
export { BIP340, BIP340InitKeygenResult, BIP340KeygenResult, Ecdsa, EcdsaInitKeygenResult, EcdsaKeygenResult, EcdsaPublicKey, EcdsaSignature, Ed25519, Ed25519InitKeygenResult, Ed25519KeygenResult, MessageHash } from '#internal/web';
|
|
@@ -1209,6 +1209,14 @@ const localStorageWriteTest = {
|
|
|
1209
1209
|
}
|
|
1210
1210
|
});
|
|
1211
1211
|
|
|
1212
|
+
class WalletNotReadyError extends Error {
|
|
1213
|
+
constructor(accountAddress, walletReadyState){
|
|
1214
|
+
super(`Wallet ${accountAddress} is not ready and requires password to be unlocked`);
|
|
1215
|
+
this.name = 'WalletNotReadyError';
|
|
1216
|
+
this.accountAddress = accountAddress;
|
|
1217
|
+
this.walletReadyState = walletReadyState;
|
|
1218
|
+
}
|
|
1219
|
+
}
|
|
1212
1220
|
class WalletBusyError extends Error {
|
|
1213
1221
|
constructor(accountAddress, operation){
|
|
1214
1222
|
super(`Wallet ${accountAddress} is currently performing a ${operation} operation`);
|
|
@@ -1294,6 +1302,39 @@ const hasDelegatedBackup = (backupInfo)=>{
|
|
|
1294
1302
|
return ((_backupInfo_backups_BackupLocation_DELEGATED_length = backupInfo == null ? void 0 : (_backupInfo_backups = backupInfo.backups) == null ? void 0 : (_backupInfo_backups_BackupLocation_DELEGATED = _backupInfo_backups[BackupLocation.DELEGATED]) == null ? void 0 : _backupInfo_backups_BackupLocation_DELEGATED.length) != null ? _backupInfo_backups_BackupLocation_DELEGATED_length : 0) > 0;
|
|
1295
1303
|
};
|
|
1296
1304
|
|
|
1305
|
+
/**
|
|
1306
|
+
* Determines the recovery state of a wallet based on backup info and local shares.
|
|
1307
|
+
*
|
|
1308
|
+
* @param clientKeySharesBackupInfo - The backup information for the wallet
|
|
1309
|
+
* @param hasLocalShares - Whether the wallet has local shares available
|
|
1310
|
+
* @returns WalletRecoveryState indicating the wallet's lock state and share availability
|
|
1311
|
+
*/ function determineWalletRecoveryState({ clientKeySharesBackupInfo, hasLocalShares }) {
|
|
1312
|
+
var _clientKeySharesBackupInfo_passwordEncrypted;
|
|
1313
|
+
const isPasswordEncrypted = (_clientKeySharesBackupInfo_passwordEncrypted = clientKeySharesBackupInfo == null ? void 0 : clientKeySharesBackupInfo.passwordEncrypted) != null ? _clientKeySharesBackupInfo_passwordEncrypted : false;
|
|
1314
|
+
const walletReadyState = hasLocalShares ? WalletReadyState.READY : WalletReadyState.ENCRYPTED;
|
|
1315
|
+
return {
|
|
1316
|
+
walletReadyState,
|
|
1317
|
+
isPasswordEncrypted
|
|
1318
|
+
};
|
|
1319
|
+
}
|
|
1320
|
+
/**
|
|
1321
|
+
* Checks if a wallet is encrypted and needs to be unlocked before use.
|
|
1322
|
+
* Throws WalletNotReadyError if the wallet is password-encrypted, has no local shares,
|
|
1323
|
+
* and no password is provided.
|
|
1324
|
+
*
|
|
1325
|
+
* @param walletRecoveryState - The recovery state from getWalletRecoveryState
|
|
1326
|
+
* @param accountAddress - The wallet account address
|
|
1327
|
+
* @param password - Optional password for decryption
|
|
1328
|
+
* @throws WalletNotReadyError if wallet is in ENCRYPTED state without password
|
|
1329
|
+
*/ function ensureWalletReady({ walletRecoveryState, accountAddress, password }) {
|
|
1330
|
+
const { walletReadyState, isPasswordEncrypted } = walletRecoveryState;
|
|
1331
|
+
// If wallet is in ENCRYPTED state (no local shares), is password-encrypted,
|
|
1332
|
+
// and no password is provided, it needs to be unlocked before proceeding
|
|
1333
|
+
if (walletReadyState === WalletReadyState.ENCRYPTED && isPasswordEncrypted && !password) {
|
|
1334
|
+
throw new WalletNotReadyError(accountAddress, walletReadyState);
|
|
1335
|
+
}
|
|
1336
|
+
}
|
|
1337
|
+
|
|
1297
1338
|
// eslint-disable-next-line @nx/enforce-module-boundaries
|
|
1298
1339
|
class DynamicWalletClient {
|
|
1299
1340
|
async initializeForwardMPCClient() {
|
|
@@ -3372,18 +3413,24 @@ class DynamicWalletClient {
|
|
|
3372
3413
|
* If successful, the key share is encrypted with the new password. This method solely performs the recovery
|
|
3373
3414
|
* and decryption without storing the restored key shares. If unsuccessful, it throws an error.
|
|
3374
3415
|
*/ async verifyPassword({ accountAddress, password = undefined, walletOperation = WalletOperation.NO_OPERATION, signedSessionId }) {
|
|
3375
|
-
|
|
3376
|
-
|
|
3377
|
-
|
|
3378
|
-
|
|
3379
|
-
|
|
3416
|
+
// Only load wallet if it's not already loaded (to avoid double eager loading)
|
|
3417
|
+
if (!this.walletMap[accountAddress]) {
|
|
3418
|
+
await this.getWallet({
|
|
3419
|
+
accountAddress,
|
|
3420
|
+
password,
|
|
3421
|
+
walletOperation,
|
|
3422
|
+
signedSessionId
|
|
3423
|
+
});
|
|
3424
|
+
}
|
|
3425
|
+
// Check if wallet is ready for operation (throws WalletNotReadyError if encrypted without password)
|
|
3426
|
+
const walletRecoveryState = await this.getWalletRecoveryState({
|
|
3427
|
+
accountAddress
|
|
3380
3428
|
});
|
|
3381
|
-
|
|
3429
|
+
ensureWalletReady({
|
|
3430
|
+
walletRecoveryState,
|
|
3382
3431
|
accountAddress,
|
|
3383
|
-
|
|
3384
|
-
})
|
|
3385
|
-
throw new Error('Password is required for operation but not provided');
|
|
3386
|
-
}
|
|
3432
|
+
password
|
|
3433
|
+
});
|
|
3387
3434
|
// silent return if no password is provided and operation does not require a password
|
|
3388
3435
|
if (!password) {
|
|
3389
3436
|
return;
|
|
@@ -3397,12 +3444,11 @@ class DynamicWalletClient {
|
|
|
3397
3444
|
}
|
|
3398
3445
|
try {
|
|
3399
3446
|
// TODO(zfaizal2): throw error if signedSessionId is not provided after service deploy
|
|
3447
|
+
// Recover and store shares to unlock the wallet (storeRecoveredShares defaults to true)
|
|
3400
3448
|
await this.recoverEncryptedBackupByWallet({
|
|
3401
3449
|
accountAddress,
|
|
3402
3450
|
password,
|
|
3403
3451
|
walletOperation,
|
|
3404
|
-
shareCount: 1,
|
|
3405
|
-
storeRecoveredShares: false,
|
|
3406
3452
|
signedSessionId
|
|
3407
3453
|
});
|
|
3408
3454
|
} catch (error) {
|
|
@@ -3445,9 +3491,6 @@ class DynamicWalletClient {
|
|
|
3445
3491
|
const clientKeyShares = await this.getClientKeySharesFromStorage({
|
|
3446
3492
|
accountAddress
|
|
3447
3493
|
});
|
|
3448
|
-
if (walletOperation === WalletOperation.REACH_ALL_PARTIES || walletOperation === WalletOperation.REFRESH || walletOperation === WalletOperation.RESHARE) {
|
|
3449
|
-
return true;
|
|
3450
|
-
}
|
|
3451
3494
|
const { requiredShareCount } = this.recoverStrategy({
|
|
3452
3495
|
clientKeyShareBackupInfo: clientKeySharesBackupInfo,
|
|
3453
3496
|
thresholdSignatureScheme: this.walletMap[accountAddress].thresholdSignatureScheme,
|
|
@@ -3517,6 +3560,34 @@ class DynamicWalletClient {
|
|
|
3517
3560
|
accountAddress,
|
|
3518
3561
|
walletOperation
|
|
3519
3562
|
})) {
|
|
3563
|
+
var _walletData_clientKeySharesBackupInfo;
|
|
3564
|
+
const walletData = this.walletMap[accountAddress];
|
|
3565
|
+
var _walletData_clientKeySharesBackupInfo_passwordEncrypted;
|
|
3566
|
+
const isPasswordEncrypted = (_walletData_clientKeySharesBackupInfo_passwordEncrypted = (_walletData_clientKeySharesBackupInfo = walletData.clientKeySharesBackupInfo) == null ? void 0 : _walletData_clientKeySharesBackupInfo.passwordEncrypted) != null ? _walletData_clientKeySharesBackupInfo_passwordEncrypted : false;
|
|
3567
|
+
// Password-encrypted wallet without password - fetch and cache for eager loading
|
|
3568
|
+
if (walletOperation === WalletOperation.RECOVER && isPasswordEncrypted && !password) {
|
|
3569
|
+
const { shares } = this.recoverStrategy({
|
|
3570
|
+
clientKeyShareBackupInfo: walletData.clientKeySharesBackupInfo,
|
|
3571
|
+
thresholdSignatureScheme: walletData.thresholdSignatureScheme,
|
|
3572
|
+
walletOperation: WalletOperation.RECOVER
|
|
3573
|
+
});
|
|
3574
|
+
const { dynamic: dynamicKeyShareIds } = shares;
|
|
3575
|
+
const data = await this.apiClient.recoverEncryptedBackupByWallet({
|
|
3576
|
+
walletId: walletData.walletId,
|
|
3577
|
+
keyShareIds: dynamicKeyShareIds,
|
|
3578
|
+
signedSessionId,
|
|
3579
|
+
requiresSignedSessionId: this.requiresSignedSessionId()
|
|
3580
|
+
});
|
|
3581
|
+
// Cache encrypted shares for later decryption by unlockWallet
|
|
3582
|
+
const encryptedStorageKey = `${accountAddress}${ENCRYPTED_SHARES_STORAGE_SUFFIX}`;
|
|
3583
|
+
await this.storage.setItem(encryptedStorageKey, JSON.stringify(data));
|
|
3584
|
+
// Update wallet state to locked
|
|
3585
|
+
this.walletMap[accountAddress] = _extends({}, walletData, {
|
|
3586
|
+
walletReadyState: WalletReadyState.ENCRYPTED
|
|
3587
|
+
});
|
|
3588
|
+
// Return wallet in locked state (no error for eager loading)
|
|
3589
|
+
return this.walletMap[accountAddress];
|
|
3590
|
+
}
|
|
3520
3591
|
// TODO(zfaizal2): throw error if signedSessionId is not provided after service deploy
|
|
3521
3592
|
const decryptedKeyShares = await this.recoverEncryptedBackupByWallet({
|
|
3522
3593
|
accountAddress,
|
|
@@ -3557,6 +3628,89 @@ class DynamicWalletClient {
|
|
|
3557
3628
|
throw error;
|
|
3558
3629
|
}
|
|
3559
3630
|
}
|
|
3631
|
+
/**
|
|
3632
|
+
* Gets the recovery state of a wallet without attempting to decrypt shares.
|
|
3633
|
+
* This method is useful for detecting if a wallet is password-encrypted
|
|
3634
|
+
* and needs unlocking before use.
|
|
3635
|
+
*
|
|
3636
|
+
* @param accountAddress - The account address of the wallet
|
|
3637
|
+
* @returns WalletRecoveryState indicating the wallet's lock state and share availability
|
|
3638
|
+
*/ async getWalletRecoveryState({ accountAddress }) {
|
|
3639
|
+
const walletData = this.walletMap[accountAddress];
|
|
3640
|
+
if (!walletData) {
|
|
3641
|
+
throw new Error(`Wallet not found for address: ${accountAddress}`);
|
|
3642
|
+
}
|
|
3643
|
+
const clientKeyShares = await this.getClientKeySharesFromStorage({
|
|
3644
|
+
accountAddress
|
|
3645
|
+
});
|
|
3646
|
+
return determineWalletRecoveryState({
|
|
3647
|
+
clientKeySharesBackupInfo: walletData.clientKeySharesBackupInfo,
|
|
3648
|
+
hasLocalShares: clientKeyShares.length > 0
|
|
3649
|
+
});
|
|
3650
|
+
}
|
|
3651
|
+
/**
|
|
3652
|
+
* Unlocks a password-encrypted wallet by decrypting cached encrypted shares.
|
|
3653
|
+
* This method should be called after getWalletRecoveryState returns LOCKED state.
|
|
3654
|
+
*
|
|
3655
|
+
* @param accountAddress - The account address of the wallet
|
|
3656
|
+
* @param password - The password to decrypt the shares
|
|
3657
|
+
* @param signedSessionId - The signed session ID for authentication
|
|
3658
|
+
* @returns The unlocked wallet properties
|
|
3659
|
+
*/ async unlockWallet({ accountAddress, password, signedSessionId }) {
|
|
3660
|
+
const dynamicRequestId = v4();
|
|
3661
|
+
try {
|
|
3662
|
+
if (!this.walletMap[accountAddress]) {
|
|
3663
|
+
await this.getWallet({
|
|
3664
|
+
accountAddress,
|
|
3665
|
+
walletOperation: WalletOperation.NO_OPERATION,
|
|
3666
|
+
signedSessionId
|
|
3667
|
+
});
|
|
3668
|
+
}
|
|
3669
|
+
const wallet = this.walletMap[accountAddress];
|
|
3670
|
+
const encryptedStorageKey = `${accountAddress}${ENCRYPTED_SHARES_STORAGE_SUFFIX}`;
|
|
3671
|
+
let encryptedData = await this.storage.getItem(encryptedStorageKey);
|
|
3672
|
+
// If no cached encrypted shares, fetch via getWallet with RECOVER
|
|
3673
|
+
if (!encryptedData) {
|
|
3674
|
+
await this.getWallet({
|
|
3675
|
+
accountAddress,
|
|
3676
|
+
walletOperation: WalletOperation.RECOVER,
|
|
3677
|
+
signedSessionId
|
|
3678
|
+
});
|
|
3679
|
+
encryptedData = await this.storage.getItem(encryptedStorageKey);
|
|
3680
|
+
}
|
|
3681
|
+
if (!encryptedData) {
|
|
3682
|
+
throw new Error('No encrypted shares found for wallet');
|
|
3683
|
+
}
|
|
3684
|
+
const data = JSON.parse(encryptedData);
|
|
3685
|
+
// Decrypt the key shares
|
|
3686
|
+
const decryptedKeyShares = await Promise.all(data.keyShares.map((keyShare)=>this.decryptKeyShare({
|
|
3687
|
+
keyShare: keyShare.encryptedAccountCredential,
|
|
3688
|
+
password
|
|
3689
|
+
})));
|
|
3690
|
+
await this.setClientKeySharesToStorage({
|
|
3691
|
+
accountAddress,
|
|
3692
|
+
clientKeyShares: decryptedKeyShares
|
|
3693
|
+
});
|
|
3694
|
+
this.walletMap[accountAddress] = _extends({}, wallet, {
|
|
3695
|
+
walletReadyState: WalletReadyState.READY
|
|
3696
|
+
});
|
|
3697
|
+
await this.storage.setItem(this.storageKey, JSON.stringify(this.walletMap));
|
|
3698
|
+
this.logger.debug('[DynamicWaasWalletClient] Wallet unlocked successfully', {
|
|
3699
|
+
accountAddress
|
|
3700
|
+
});
|
|
3701
|
+
return this.walletMap[accountAddress];
|
|
3702
|
+
} catch (error) {
|
|
3703
|
+
logError({
|
|
3704
|
+
message: 'Error in unlockWallet',
|
|
3705
|
+
error: error,
|
|
3706
|
+
context: {
|
|
3707
|
+
accountAddress,
|
|
3708
|
+
dynamicRequestId
|
|
3709
|
+
}
|
|
3710
|
+
});
|
|
3711
|
+
throw error;
|
|
3712
|
+
}
|
|
3713
|
+
}
|
|
3560
3714
|
async getWallets() {
|
|
3561
3715
|
const dynamicRequestId = v4();
|
|
3562
3716
|
try {
|
|
@@ -3589,7 +3743,8 @@ class DynamicWalletClient {
|
|
|
3589
3743
|
clientKeySharesBackupInfo: wallet.clientKeySharesBackupInfo,
|
|
3590
3744
|
derivationPath: ((_acc_accountAddress = acc[accountAddress]) == null ? void 0 : _acc_accountAddress.derivationPath) || undefined,
|
|
3591
3745
|
thresholdSignatureScheme: wallet.thresholdSignatureScheme,
|
|
3592
|
-
addressType: wallet.addressType
|
|
3746
|
+
addressType: wallet.addressType,
|
|
3747
|
+
walletReadyState: WalletReadyState.READY
|
|
3593
3748
|
};
|
|
3594
3749
|
return acc;
|
|
3595
3750
|
}, {});
|
|
@@ -3796,4 +3951,4 @@ const ERROR_VERIFY_TRANSACTION_SIGNATURE = '[DynamicWaasWalletClient]: Error ver
|
|
|
3796
3951
|
const ERROR_EXPORT_PRIVATE_KEY = '[DynamicWaasWalletClient]: Error exporting private key';
|
|
3797
3952
|
const ERROR_IMPORT_PRIVATE_KEY = '[DynamicWaasWalletClient]: Error importing private key';
|
|
3798
3953
|
|
|
3799
|
-
export { DynamicWalletClient, ERROR_ACCOUNT_ADDRESS_REQUIRED, ERROR_CREATE_WALLET_ACCOUNT, ERROR_EXPORT_PRIVATE_KEY, ERROR_IMPORT_PRIVATE_KEY, ERROR_KEYGEN_FAILED, ERROR_SIGN_MESSAGE, ERROR_SIGN_TYPED_DATA, ERROR_VERIFY_MESSAGE_SIGNATURE, ERROR_VERIFY_TRANSACTION_SIGNATURE, WalletBusyError, cancelICloudAuth, createAddCloudProviderToExistingDelegationDistribution, createBackupData, createCloudProviderDistribution, createDelegationOnlyDistribution, createDelegationWithCloudProviderDistribution, createDynamicOnlyDistribution, deleteICloudBackup, downloadStringAsFile, extractPubkey, formatEvmMessage, formatMessage, getActiveCloudProviders, getClientKeyShareBackupInfo, getClientKeyShareExportFileName, getGoogleOAuthAccountId, getICloudBackup, getMPCSignatureScheme, getMPCSigner, hasCloudProviderBackup, hasDelegatedBackup, initializeCloudKit, isBrowser, isHexString, isICloudAuthenticated, listICloudBackups, mergeUniqueKeyShares, retryPromise, timeoutPromise };
|
|
3954
|
+
export { DynamicWalletClient, ERROR_ACCOUNT_ADDRESS_REQUIRED, ERROR_CREATE_WALLET_ACCOUNT, ERROR_EXPORT_PRIVATE_KEY, ERROR_IMPORT_PRIVATE_KEY, ERROR_KEYGEN_FAILED, ERROR_SIGN_MESSAGE, ERROR_SIGN_TYPED_DATA, ERROR_VERIFY_MESSAGE_SIGNATURE, ERROR_VERIFY_TRANSACTION_SIGNATURE, WalletBusyError, WalletNotReadyError, cancelICloudAuth, createAddCloudProviderToExistingDelegationDistribution, createBackupData, createCloudProviderDistribution, createDelegationOnlyDistribution, createDelegationWithCloudProviderDistribution, createDynamicOnlyDistribution, deleteICloudBackup, downloadStringAsFile, extractPubkey, formatEvmMessage, formatMessage, getActiveCloudProviders, getClientKeyShareBackupInfo, getClientKeyShareExportFileName, getGoogleOAuthAccountId, getICloudBackup, getMPCSignatureScheme, getMPCSigner, hasCloudProviderBackup, hasDelegatedBackup, initializeCloudKit, isBrowser, isHexString, isICloudAuthenticated, listICloudBackups, mergeUniqueKeyShares, retryPromise, timeoutPromise };
|
package/package.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs-wallet/browser",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.255-beta",
|
|
4
4
|
"license": "Licensed under the Dynamic Labs, Inc. Terms Of Service (https://www.dynamic.xyz/terms-conditions)",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"dependencies": {
|
|
7
|
-
"@dynamic-labs-wallet/core": "0.0.
|
|
7
|
+
"@dynamic-labs-wallet/core": "0.0.255-beta",
|
|
8
8
|
"@dynamic-labs/logger": "^4.25.3",
|
|
9
9
|
"@dynamic-labs/sdk-api-core": "^0.0.828",
|
|
10
10
|
"argon2id": "1.0.1",
|
package/src/client.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { EcdsaSignature, MessageHash, type EcdsaPublicKey } from '#internal/web';
|
|
2
|
-
import { AuthMode, BackupLocation, DynamicApiClient, ThresholdSignatureScheme, WalletOperation, type BackupLocationWithExternalKeyShareId, type BitcoinConfig, type DynamicWalletClientProps, type FeatureFlags, type InitializeResult, type KeyShareBackupInfo, type SecureStorageAdapter, type TraceContext } from '@dynamic-labs-wallet/core';
|
|
2
|
+
import { AuthMode, BackupLocation, DynamicApiClient, ThresholdSignatureScheme, WalletOperation, type BackupLocationWithExternalKeyShareId, type BitcoinConfig, type DynamicWalletClientProps, type FeatureFlags, type InitializeResult, type KeyShareBackupInfo, type SecureStorageAdapter, type TraceContext, type WalletRecoveryState } from '@dynamic-labs-wallet/core';
|
|
3
3
|
import { type InstrumentOptions } from '@dynamic-labs/logger';
|
|
4
4
|
import { RoomTypeEnum, type SignMessageContext } from '@dynamic-labs/sdk-api-core';
|
|
5
5
|
import type { ClientInitKeygenResult, ClientKeyShare } from './mpc/types.js';
|
|
@@ -569,6 +569,31 @@ export declare class DynamicWalletClient {
|
|
|
569
569
|
password?: string;
|
|
570
570
|
signedSessionId: string;
|
|
571
571
|
}): Promise<WalletProperties>;
|
|
572
|
+
/**
|
|
573
|
+
* Gets the recovery state of a wallet without attempting to decrypt shares.
|
|
574
|
+
* This method is useful for detecting if a wallet is password-encrypted
|
|
575
|
+
* and needs unlocking before use.
|
|
576
|
+
*
|
|
577
|
+
* @param accountAddress - The account address of the wallet
|
|
578
|
+
* @returns WalletRecoveryState indicating the wallet's lock state and share availability
|
|
579
|
+
*/
|
|
580
|
+
getWalletRecoveryState({ accountAddress, }: {
|
|
581
|
+
accountAddress: string;
|
|
582
|
+
}): Promise<WalletRecoveryState>;
|
|
583
|
+
/**
|
|
584
|
+
* Unlocks a password-encrypted wallet by decrypting cached encrypted shares.
|
|
585
|
+
* This method should be called after getWalletRecoveryState returns LOCKED state.
|
|
586
|
+
*
|
|
587
|
+
* @param accountAddress - The account address of the wallet
|
|
588
|
+
* @param password - The password to decrypt the shares
|
|
589
|
+
* @param signedSessionId - The signed session ID for authentication
|
|
590
|
+
* @returns The unlocked wallet properties
|
|
591
|
+
*/
|
|
592
|
+
unlockWallet({ accountAddress, password, signedSessionId, }: {
|
|
593
|
+
accountAddress: string;
|
|
594
|
+
password: string;
|
|
595
|
+
signedSessionId: string;
|
|
596
|
+
}): Promise<WalletProperties>;
|
|
572
597
|
getWallets(): Promise<any>;
|
|
573
598
|
/**
|
|
574
599
|
* sync auth token with api client
|
package/src/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../packages/src/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../packages/src/client.ts"],"names":[],"mappings":"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"}
|
package/src/types.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BackupLocation, type KeyShareBackupInfo, type ThresholdSignatureScheme, type WalletOperation } from '@dynamic-labs-wallet/core';
|
|
1
|
+
import { BackupLocation, type KeyShareBackupInfo, type ThresholdSignatureScheme, type WalletOperation, type WalletReadyState } from '@dynamic-labs-wallet/core';
|
|
2
2
|
import type { ClientKeyShare } from './mpc/types.js';
|
|
3
3
|
export interface WalletProperties {
|
|
4
4
|
chainName: string;
|
|
@@ -8,6 +8,12 @@ export interface WalletProperties {
|
|
|
8
8
|
thresholdSignatureScheme: ThresholdSignatureScheme;
|
|
9
9
|
derivationPath?: string;
|
|
10
10
|
addressType?: string;
|
|
11
|
+
walletReadyState: WalletReadyState;
|
|
12
|
+
}
|
|
13
|
+
export declare class WalletNotReadyError extends Error {
|
|
14
|
+
readonly accountAddress: string;
|
|
15
|
+
readonly walletReadyState: WalletReadyState;
|
|
16
|
+
constructor(accountAddress: string, walletReadyState: WalletReadyState);
|
|
11
17
|
}
|
|
12
18
|
export type WalletBusyOperation = WalletOperation.REFRESH | WalletOperation.RESHARE;
|
|
13
19
|
export declare class WalletBusyError extends Error {
|
package/src/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../packages/src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,eAAe,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../packages/src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACtB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAErD,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,yBAAyB,EAAE,kBAAkB,CAAC;IAC9C,wBAAwB,EAAE,wBAAwB,CAAC;IACnD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,gBAAgB,CAAC;CACpC;AAED,qBAAa,mBAAoB,SAAQ,KAAK;IAC5C,SAAgB,cAAc,EAAE,MAAM,CAAC;IACvC,SAAgB,gBAAgB,EAAE,gBAAgB,CAAC;gBAEvC,cAAc,EAAE,MAAM,EAAE,gBAAgB,EAAE,gBAAgB;CAQvE;AAED,MAAM,MAAM,mBAAmB,GAC3B,eAAe,CAAC,OAAO,GACvB,eAAe,CAAC,OAAO,CAAC;AAE5B,qBAAa,eAAgB,SAAQ,KAAK;IACxC,SAAgB,SAAS,EAAE,mBAAmB,CAAC;IAC/C,SAAgB,cAAc,EAAE,MAAM,CAAC;gBAE3B,cAAc,EAAE,MAAM,EAAE,SAAS,EAAE,mBAAmB;CAQnE;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,YAAY,EAAE,cAAc,EAAE,CAAC;IAE/B,mBAAmB,EAAE,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC;IACvE,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,+BAA+B,8BAGzC;IACD,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,SAAS,EAAE,cAAc,EAAE,CAAC;CAC7B,KAAG,iBAcH,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,6CAA6C,mDAIvD;IACD,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,cAAc,EAAE,cAAc,EAAE,CAAC;IACjC,cAAc,EAAE,cAAc,CAAC;CAChC,KAAG,iBAaH,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,sDAAsD,iCAGhE;IACD,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,YAAY,EAAE,cAAc,EAAE,CAAC;CAChC,KAAG,iBAYH,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB,eACrB,kBAAkB,GAAG,SAAS,aAC/B,cAAc,EAAE,KAC1B,OAKF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,uBAAuB,gBACrB,kBAAkB,KAC9B,cAAc,EAWhB,CAAC;AAEF,eAAO,MAAM,gCAAgC,wCAG1C;IACD,cAAc,EAAE,cAAc,EAAE,CAAC;IACjC,cAAc,EAAE,cAAc,CAAC;CAChC,KAAG,iBAIF,CAAC;AAEH,eAAO,MAAM,6BAA6B,mBAEvC;IACD,SAAS,EAAE,cAAc,EAAE,CAAC;CAC7B,KAAG,iBAGF,CAAC;AAEH,eAAO,MAAM,kBAAkB,gBAAiB,kBAAkB,KAAG,OACD,CAAC;AAErE,MAAM,MAAM,IAAI,GAAG;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { type KeyShareBackupInfo, type WalletRecoveryState } from '@dynamic-labs-wallet/core';
|
|
2
|
+
/**
|
|
3
|
+
* Determines the recovery state of a wallet based on backup info and local shares.
|
|
4
|
+
*
|
|
5
|
+
* @param clientKeySharesBackupInfo - The backup information for the wallet
|
|
6
|
+
* @param hasLocalShares - Whether the wallet has local shares available
|
|
7
|
+
* @returns WalletRecoveryState indicating the wallet's lock state and share availability
|
|
8
|
+
*/
|
|
9
|
+
export declare function determineWalletRecoveryState({ clientKeySharesBackupInfo, hasLocalShares, }: {
|
|
10
|
+
clientKeySharesBackupInfo: KeyShareBackupInfo;
|
|
11
|
+
hasLocalShares: boolean;
|
|
12
|
+
}): WalletRecoveryState;
|
|
13
|
+
/**
|
|
14
|
+
* Checks if a wallet is encrypted and needs to be unlocked before use.
|
|
15
|
+
* Throws WalletNotReadyError if the wallet is password-encrypted, has no local shares,
|
|
16
|
+
* and no password is provided.
|
|
17
|
+
*
|
|
18
|
+
* @param walletRecoveryState - The recovery state from getWalletRecoveryState
|
|
19
|
+
* @param accountAddress - The wallet account address
|
|
20
|
+
* @param password - Optional password for decryption
|
|
21
|
+
* @throws WalletNotReadyError if wallet is in ENCRYPTED state without password
|
|
22
|
+
*/
|
|
23
|
+
export declare function ensureWalletReady({ walletRecoveryState, accountAddress, password, }: {
|
|
24
|
+
walletRecoveryState: WalletRecoveryState;
|
|
25
|
+
accountAddress: string;
|
|
26
|
+
password?: string;
|
|
27
|
+
}): void;
|
|
28
|
+
//# sourceMappingURL=walletState.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"walletState.d.ts","sourceRoot":"","sources":["../../packages/src/walletState.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACzB,MAAM,2BAA2B,CAAC;AAGnC;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAAC,EAC3C,yBAAyB,EACzB,cAAc,GACf,EAAE;IACD,yBAAyB,EAAE,kBAAkB,CAAC;IAC9C,cAAc,EAAE,OAAO,CAAC;CACzB,GAAG,mBAAmB,CAWtB;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,mBAAmB,EACnB,cAAc,EACd,QAAQ,GACT,EAAE;IACD,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,IAAI,CAYP"}
|