@dynamic-labs-wallet/browser 0.0.171 → 0.0.173

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 CHANGED
@@ -800,6 +800,20 @@ const ALG_LABEL_RSA = 'HYBRID-RSA-AES-256';
800
800
  };
801
801
 
802
802
  class DynamicWalletClient {
803
+ async initializeForwardMPCClient() {
804
+ try {
805
+ await this.apiClient.forwardMPCClient.connect();
806
+ logger.info('Connected to ForwardMPC enclave websocket. Instance: ' + this.instanceId);
807
+ try {
808
+ await this.apiClient.forwardMPCClient.handshake();
809
+ logger.info('Handshaked with ForwardMPC enclave websocket. Instance: ' + this.instanceId);
810
+ } catch (error) {
811
+ logger.error('Error handshaking with ForwardMPC enclave websocket. Instance: ' + this.instanceId, error);
812
+ }
813
+ } catch (error) {
814
+ logger.error('Error connecting to ForwardMPC enclave websocket. Instance: ' + this.instanceId, error);
815
+ }
816
+ }
803
817
  getAuthMode() {
804
818
  return this.authMode;
805
819
  }
@@ -1142,6 +1156,29 @@ class DynamicWalletClient {
1142
1156
  derivationPath,
1143
1157
  isFormatted
1144
1158
  });
1159
+ if (this.forwardMPCEnabled) {
1160
+ logger.info('Forward MPC enabled, signing message with forward MPC');
1161
+ const signature = await this.apiClient.forwardMPCClient.signMessage({
1162
+ keyshare: keyShare,
1163
+ message,
1164
+ relayDomain: this.baseMPCRelayApiUrl || '',
1165
+ signingAlgo: chainName === 'EVM' ? 'ECDSA' : 'ED25519',
1166
+ hashAlgo: chainName === 'EVM' ? 'keccak256' : undefined,
1167
+ derivationPath: derivationPath,
1168
+ roomUuid: roomId
1169
+ });
1170
+ const signatureBytes = signature.data.signature;
1171
+ if (!(signatureBytes instanceof Uint8Array)) {
1172
+ throw new TypeError(`Invalid signature format: expected Uint8Array, got ${typeof signatureBytes}`);
1173
+ }
1174
+ // Convert to EcdsaSignature
1175
+ if (chainName === 'EVM') {
1176
+ const ecdsaSignature = web.EcdsaSignature.fromBuffer(signatureBytes);
1177
+ return ecdsaSignature;
1178
+ } else {
1179
+ return signatureBytes;
1180
+ }
1181
+ }
1145
1182
  const signature = await mpcSigner.sign(roomId, keyShare, formattedMessage, derivationPath);
1146
1183
  return signature;
1147
1184
  } catch (error) {
@@ -1335,7 +1372,6 @@ class DynamicWalletClient {
1335
1372
  async reshare({ chainName, accountAddress, oldThresholdSignatureScheme, newThresholdSignatureScheme, password = undefined, signedSessionId, backupToGoogleDrive = false, delegateToProjectEnvironment = false, mfaToken }) {
1336
1373
  const dynamicRequestId = uuid.v4();
1337
1374
  try {
1338
- var _publicKey_key, _publicKey_key1, _publicKey_key2;
1339
1375
  await this.verifyPassword({
1340
1376
  accountAddress,
1341
1377
  password,
@@ -1394,7 +1430,7 @@ class DynamicWalletClient {
1394
1430
  Promise.all(existingResharePromises),
1395
1431
  Promise.all(newResharePromises)
1396
1432
  ]);
1397
- const clientKeyshares = delegateToProjectEnvironment ? [
1433
+ const clientKeysharesToLocalStorage = delegateToProjectEnvironment ? [
1398
1434
  ...existingReshareResults
1399
1435
  ] : [
1400
1436
  ...existingReshareResults,
@@ -1403,35 +1439,20 @@ class DynamicWalletClient {
1403
1439
  this.walletMap[accountAddress] = _extends({}, this.walletMap[accountAddress], {
1404
1440
  thresholdSignatureScheme: newThresholdSignatureScheme
1405
1441
  });
1442
+ // store client key shares to localStorage
1406
1443
  await this.setClientKeySharesToLocalStorage({
1407
1444
  accountAddress,
1408
- clientKeyShares: clientKeyshares,
1445
+ clientKeyShares: clientKeysharesToLocalStorage,
1409
1446
  overwriteOrMerge: 'overwrite'
1410
1447
  });
1448
+ // if delegateToProjectEnvironment is true, we need to update location for the delegated share
1449
+ const delegatedKeyshare = delegateToProjectEnvironment ? newReshareResults[0] : undefined;
1411
1450
  await this.storeEncryptedBackupByWallet({
1412
1451
  accountAddress,
1413
1452
  password,
1414
1453
  signedSessionId,
1415
1454
  backupToGoogleDrive,
1416
- delegatedLocations: newReshareResults.map(()=>({
1417
- location: core.BackupLocation.DELEGATED
1418
- }))
1419
- });
1420
- const publicKey = await this.apiClient.getDelegatedEncryptionKey({
1421
- environmentId: this.environmentId
1422
- });
1423
- if (!(publicKey == null ? void 0 : (_publicKey_key = publicKey.key) == null ? void 0 : _publicKey_key.publicKeyPemB64)) {
1424
- throw new Error('Public key not found');
1425
- }
1426
- var _publicKey_key_keyId;
1427
- const encryptedDelegatedKeyShareEnvelope = await encryptDelegatedKeyShare(JSON.stringify(clientKeyshares[0]), publicKey == null ? void 0 : (_publicKey_key1 = publicKey.key) == null ? void 0 : _publicKey_key1.publicKeyPemB64, (_publicKey_key_keyId = // Pass through a key id if present from API response
1428
- publicKey == null ? void 0 : (_publicKey_key2 = publicKey.key) == null ? void 0 : _publicKey_key2.keyId) != null ? _publicKey_key_keyId : publicKey == null ? void 0 : publicKey.keyId);
1429
- await this.apiClient.publishDelegatedKeyShare({
1430
- walletId: this.walletMap[accountAddress].walletId,
1431
- encryptedKeyShare: encryptedDelegatedKeyShareEnvelope,
1432
- signedSessionId,
1433
- requiresSignedSessionId: this.requiresSignedSessionId(),
1434
- dynamicRequestId
1455
+ delegatedKeyshare
1435
1456
  });
1436
1457
  } catch (error) {
1437
1458
  logError({
@@ -1682,6 +1703,10 @@ class DynamicWalletClient {
1682
1703
  * 4. Updates backup metadata and synchronizes wallet state
1683
1704
  * 5. Persists the updated wallet map to local storage
1684
1705
  *
1706
+ * **Delegated Key Shares:**
1707
+ * - When delegatedKeyshare is provided, the method will not store the delegated key share but it will mark the delegated share as backed up on Dynamic's backend
1708
+ * - and encrypt the delegated key share to publish it to the webhook
1709
+ *
1685
1710
  * @param params - The backup operation parameters
1686
1711
  * @param params.accountAddress - The account address of the wallet to backup
1687
1712
  * @param params.clientKeyShares - Optional specific key shares to backup (uses localStorage if not provided)
@@ -1689,7 +1714,7 @@ class DynamicWalletClient {
1689
1714
  * @param params.signedSessionId - Optional signed session ID for authentication
1690
1715
  * @param params.backupToGoogleDrive - Whether to backup to Google Drive (defaults to false)
1691
1716
  * @returns Promise with backup metadata including share locations and IDs
1692
- */ async storeEncryptedBackupByWallet({ accountAddress, clientKeyShares = undefined, password = undefined, signedSessionId, backupToGoogleDrive = false, delegatedLocations = [] }) {
1717
+ */ async storeEncryptedBackupByWallet({ accountAddress, clientKeyShares = undefined, password = undefined, signedSessionId, backupToGoogleDrive = false, delegatedKeyshare = undefined }) {
1693
1718
  const dynamicRequestId = uuid.v4();
1694
1719
  try {
1695
1720
  var _this_walletMap_accountAddress, _this_walletMap_accountAddress_clientKeySharesBackupInfo_backups_BackupLocation_GOOGLE_DRIVE, _this_walletMap_accountAddress_clientKeySharesBackupInfo_backups, _this_walletMap_accountAddress_clientKeySharesBackupInfo, _this_walletMap_accountAddress1;
@@ -1757,8 +1782,31 @@ class DynamicWalletClient {
1757
1782
  location: core.BackupLocation.GOOGLE_DRIVE
1758
1783
  });
1759
1784
  }
1760
- if ((delegatedLocations == null ? void 0 : delegatedLocations.length) > 0) {
1761
- locations.push(...delegatedLocations);
1785
+ // if delegatedKeyshare is provided, we encrypt the delegated key share and publish it to the webhook
1786
+ // after publish confirmed, we mark the delegated share as backed up on Dynamic's backend
1787
+ if (delegatedKeyshare) {
1788
+ var _publicKey_key, _publicKey_key1, _publicKey_key2;
1789
+ const publicKey = await this.apiClient.getDelegatedEncryptionKey({
1790
+ environmentId: this.environmentId
1791
+ });
1792
+ if (!(publicKey == null ? void 0 : (_publicKey_key = publicKey.key) == null ? void 0 : _publicKey_key.publicKeyPemB64)) {
1793
+ throw new Error('Public key not found');
1794
+ }
1795
+ var _publicKey_key_keyId;
1796
+ const encryptedDelegatedKeyShareEnvelope = await encryptDelegatedKeyShare(JSON.stringify(delegatedKeyshare), publicKey == null ? void 0 : (_publicKey_key1 = publicKey.key) == null ? void 0 : _publicKey_key1.publicKeyPemB64, (_publicKey_key_keyId = publicKey == null ? void 0 : (_publicKey_key2 = publicKey.key) == null ? void 0 : _publicKey_key2.keyId) != null ? _publicKey_key_keyId : publicKey == null ? void 0 : publicKey.keyId);
1797
+ const { status } = await this.apiClient.publishDelegatedKeyShare({
1798
+ walletId: this.walletMap[accountAddress].walletId,
1799
+ encryptedKeyShare: encryptedDelegatedKeyShareEnvelope,
1800
+ signedSessionId,
1801
+ requiresSignedSessionId: this.requiresSignedSessionId(),
1802
+ dynamicRequestId
1803
+ });
1804
+ if (status !== 200) {
1805
+ throw new Error('Failed to publish delegated key share');
1806
+ }
1807
+ locations.push({
1808
+ location: core.BackupLocation.DELEGATED
1809
+ });
1762
1810
  }
1763
1811
  const backupData = await this.apiClient.markKeySharesAsBackedUp({
1764
1812
  walletId: this.walletMap[accountAddress].walletId,
@@ -2458,7 +2506,7 @@ class DynamicWalletClient {
2458
2506
  this.apiClient.syncAuthToken(authToken);
2459
2507
  }
2460
2508
  constructor({ environmentId, baseApiUrl, baseMPCRelayApiUrl, storageKey, debug, featureFlags, authMode = core.AuthMode.HEADER, authToken = undefined, // Represents the version of the client SDK used by developer
2461
- sdkVersion }){
2509
+ sdkVersion, forwardMPCClient }){
2462
2510
  this.userId = undefined;
2463
2511
  this.sessionId = undefined;
2464
2512
  this.initializePromise = null;
@@ -2467,6 +2515,7 @@ class DynamicWalletClient {
2467
2515
  ;
2468
2516
  this.memoryStorage = null;
2469
2517
  this.iframe = null;
2518
+ this.forwardMPCEnabled = false;
2470
2519
  this.featureFlags = {};
2471
2520
  this.environmentId = environmentId;
2472
2521
  this.storageKey = `${STORAGE_KEY}-${storageKey != null ? storageKey : environmentId}`;
@@ -2478,7 +2527,8 @@ class DynamicWalletClient {
2478
2527
  authToken,
2479
2528
  baseApiUrl,
2480
2529
  authMode,
2481
- sdkVersion
2530
+ sdkVersion,
2531
+ forwardMPCClient
2482
2532
  });
2483
2533
  this.debug = Boolean(debug);
2484
2534
  this.logger.setLogLevel(this.debug ? logger$1.LogLevel.DEBUG : DEFAULT_LOG_LEVEL);
@@ -2498,6 +2548,11 @@ class DynamicWalletClient {
2498
2548
  if (authMode === core.AuthMode.HEADER && authToken) {
2499
2549
  this.initLoggerContext(authToken);
2500
2550
  }
2551
+ this.forwardMPCEnabled = this.featureFlags && this.featureFlags[core.FEATURE_FLAGS.ENABLE_FORWARD_MPC_CLIENT_FLAG] === true;
2552
+ // if forwardMPCEnabled is true and forwardMPCClient is not provided, initialize the forwardMPCClient
2553
+ if (this.forwardMPCEnabled && !forwardMPCClient) {
2554
+ this.initializeForwardMPCClient();
2555
+ }
2501
2556
  }
2502
2557
  }
2503
2558
 
package/index.esm.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { SigningAlgorithm, MPC_RELAY_PROD_API_URL, getMPCChainConfig, AuthMode, BackupLocation, parseNamespacedVersion, getClientThreshold, MPC_CONFIG, getTSSConfig, WalletOperation, getReshareConfig, FEATURE_FLAGS, ThresholdSignatureScheme, verifiedCredentialNameToChainEnum, DynamicApiClient, getEnvironmentFromUrl, IFRAME_DOMAIN_MAP } from '@dynamic-labs-wallet/core';
2
2
  export * from '@dynamic-labs-wallet/core';
3
- import { BIP340, ExportableEd25519, Ecdsa, MessageHash, EcdsaKeygenResult, ExportableEd25519KeygenResult, BIP340KeygenResult } from '#internal/web';
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';
5
5
  import { gte } from 'semver';
6
6
  import { v4 } from 'uuid';
@@ -801,6 +801,20 @@ const ALG_LABEL_RSA = 'HYBRID-RSA-AES-256';
801
801
  };
802
802
 
803
803
  class DynamicWalletClient {
804
+ async initializeForwardMPCClient() {
805
+ try {
806
+ await this.apiClient.forwardMPCClient.connect();
807
+ logger.info('Connected to ForwardMPC enclave websocket. Instance: ' + this.instanceId);
808
+ try {
809
+ await this.apiClient.forwardMPCClient.handshake();
810
+ logger.info('Handshaked with ForwardMPC enclave websocket. Instance: ' + this.instanceId);
811
+ } catch (error) {
812
+ logger.error('Error handshaking with ForwardMPC enclave websocket. Instance: ' + this.instanceId, error);
813
+ }
814
+ } catch (error) {
815
+ logger.error('Error connecting to ForwardMPC enclave websocket. Instance: ' + this.instanceId, error);
816
+ }
817
+ }
804
818
  getAuthMode() {
805
819
  return this.authMode;
806
820
  }
@@ -1143,6 +1157,29 @@ class DynamicWalletClient {
1143
1157
  derivationPath,
1144
1158
  isFormatted
1145
1159
  });
1160
+ if (this.forwardMPCEnabled) {
1161
+ logger.info('Forward MPC enabled, signing message with forward MPC');
1162
+ const signature = await this.apiClient.forwardMPCClient.signMessage({
1163
+ keyshare: keyShare,
1164
+ message,
1165
+ relayDomain: this.baseMPCRelayApiUrl || '',
1166
+ signingAlgo: chainName === 'EVM' ? 'ECDSA' : 'ED25519',
1167
+ hashAlgo: chainName === 'EVM' ? 'keccak256' : undefined,
1168
+ derivationPath: derivationPath,
1169
+ roomUuid: roomId
1170
+ });
1171
+ const signatureBytes = signature.data.signature;
1172
+ if (!(signatureBytes instanceof Uint8Array)) {
1173
+ throw new TypeError(`Invalid signature format: expected Uint8Array, got ${typeof signatureBytes}`);
1174
+ }
1175
+ // Convert to EcdsaSignature
1176
+ if (chainName === 'EVM') {
1177
+ const ecdsaSignature = EcdsaSignature.fromBuffer(signatureBytes);
1178
+ return ecdsaSignature;
1179
+ } else {
1180
+ return signatureBytes;
1181
+ }
1182
+ }
1146
1183
  const signature = await mpcSigner.sign(roomId, keyShare, formattedMessage, derivationPath);
1147
1184
  return signature;
1148
1185
  } catch (error) {
@@ -1336,7 +1373,6 @@ class DynamicWalletClient {
1336
1373
  async reshare({ chainName, accountAddress, oldThresholdSignatureScheme, newThresholdSignatureScheme, password = undefined, signedSessionId, backupToGoogleDrive = false, delegateToProjectEnvironment = false, mfaToken }) {
1337
1374
  const dynamicRequestId = v4();
1338
1375
  try {
1339
- var _publicKey_key, _publicKey_key1, _publicKey_key2;
1340
1376
  await this.verifyPassword({
1341
1377
  accountAddress,
1342
1378
  password,
@@ -1395,7 +1431,7 @@ class DynamicWalletClient {
1395
1431
  Promise.all(existingResharePromises),
1396
1432
  Promise.all(newResharePromises)
1397
1433
  ]);
1398
- const clientKeyshares = delegateToProjectEnvironment ? [
1434
+ const clientKeysharesToLocalStorage = delegateToProjectEnvironment ? [
1399
1435
  ...existingReshareResults
1400
1436
  ] : [
1401
1437
  ...existingReshareResults,
@@ -1404,35 +1440,20 @@ class DynamicWalletClient {
1404
1440
  this.walletMap[accountAddress] = _extends({}, this.walletMap[accountAddress], {
1405
1441
  thresholdSignatureScheme: newThresholdSignatureScheme
1406
1442
  });
1443
+ // store client key shares to localStorage
1407
1444
  await this.setClientKeySharesToLocalStorage({
1408
1445
  accountAddress,
1409
- clientKeyShares: clientKeyshares,
1446
+ clientKeyShares: clientKeysharesToLocalStorage,
1410
1447
  overwriteOrMerge: 'overwrite'
1411
1448
  });
1449
+ // if delegateToProjectEnvironment is true, we need to update location for the delegated share
1450
+ const delegatedKeyshare = delegateToProjectEnvironment ? newReshareResults[0] : undefined;
1412
1451
  await this.storeEncryptedBackupByWallet({
1413
1452
  accountAddress,
1414
1453
  password,
1415
1454
  signedSessionId,
1416
1455
  backupToGoogleDrive,
1417
- delegatedLocations: newReshareResults.map(()=>({
1418
- location: BackupLocation.DELEGATED
1419
- }))
1420
- });
1421
- const publicKey = await this.apiClient.getDelegatedEncryptionKey({
1422
- environmentId: this.environmentId
1423
- });
1424
- if (!(publicKey == null ? void 0 : (_publicKey_key = publicKey.key) == null ? void 0 : _publicKey_key.publicKeyPemB64)) {
1425
- throw new Error('Public key not found');
1426
- }
1427
- var _publicKey_key_keyId;
1428
- const encryptedDelegatedKeyShareEnvelope = await encryptDelegatedKeyShare(JSON.stringify(clientKeyshares[0]), publicKey == null ? void 0 : (_publicKey_key1 = publicKey.key) == null ? void 0 : _publicKey_key1.publicKeyPemB64, (_publicKey_key_keyId = // Pass through a key id if present from API response
1429
- publicKey == null ? void 0 : (_publicKey_key2 = publicKey.key) == null ? void 0 : _publicKey_key2.keyId) != null ? _publicKey_key_keyId : publicKey == null ? void 0 : publicKey.keyId);
1430
- await this.apiClient.publishDelegatedKeyShare({
1431
- walletId: this.walletMap[accountAddress].walletId,
1432
- encryptedKeyShare: encryptedDelegatedKeyShareEnvelope,
1433
- signedSessionId,
1434
- requiresSignedSessionId: this.requiresSignedSessionId(),
1435
- dynamicRequestId
1456
+ delegatedKeyshare
1436
1457
  });
1437
1458
  } catch (error) {
1438
1459
  logError({
@@ -1683,6 +1704,10 @@ class DynamicWalletClient {
1683
1704
  * 4. Updates backup metadata and synchronizes wallet state
1684
1705
  * 5. Persists the updated wallet map to local storage
1685
1706
  *
1707
+ * **Delegated Key Shares:**
1708
+ * - When delegatedKeyshare is provided, the method will not store the delegated key share but it will mark the delegated share as backed up on Dynamic's backend
1709
+ * - and encrypt the delegated key share to publish it to the webhook
1710
+ *
1686
1711
  * @param params - The backup operation parameters
1687
1712
  * @param params.accountAddress - The account address of the wallet to backup
1688
1713
  * @param params.clientKeyShares - Optional specific key shares to backup (uses localStorage if not provided)
@@ -1690,7 +1715,7 @@ class DynamicWalletClient {
1690
1715
  * @param params.signedSessionId - Optional signed session ID for authentication
1691
1716
  * @param params.backupToGoogleDrive - Whether to backup to Google Drive (defaults to false)
1692
1717
  * @returns Promise with backup metadata including share locations and IDs
1693
- */ async storeEncryptedBackupByWallet({ accountAddress, clientKeyShares = undefined, password = undefined, signedSessionId, backupToGoogleDrive = false, delegatedLocations = [] }) {
1718
+ */ async storeEncryptedBackupByWallet({ accountAddress, clientKeyShares = undefined, password = undefined, signedSessionId, backupToGoogleDrive = false, delegatedKeyshare = undefined }) {
1694
1719
  const dynamicRequestId = v4();
1695
1720
  try {
1696
1721
  var _this_walletMap_accountAddress, _this_walletMap_accountAddress_clientKeySharesBackupInfo_backups_BackupLocation_GOOGLE_DRIVE, _this_walletMap_accountAddress_clientKeySharesBackupInfo_backups, _this_walletMap_accountAddress_clientKeySharesBackupInfo, _this_walletMap_accountAddress1;
@@ -1758,8 +1783,31 @@ class DynamicWalletClient {
1758
1783
  location: BackupLocation.GOOGLE_DRIVE
1759
1784
  });
1760
1785
  }
1761
- if ((delegatedLocations == null ? void 0 : delegatedLocations.length) > 0) {
1762
- locations.push(...delegatedLocations);
1786
+ // if delegatedKeyshare is provided, we encrypt the delegated key share and publish it to the webhook
1787
+ // after publish confirmed, we mark the delegated share as backed up on Dynamic's backend
1788
+ if (delegatedKeyshare) {
1789
+ var _publicKey_key, _publicKey_key1, _publicKey_key2;
1790
+ const publicKey = await this.apiClient.getDelegatedEncryptionKey({
1791
+ environmentId: this.environmentId
1792
+ });
1793
+ if (!(publicKey == null ? void 0 : (_publicKey_key = publicKey.key) == null ? void 0 : _publicKey_key.publicKeyPemB64)) {
1794
+ throw new Error('Public key not found');
1795
+ }
1796
+ var _publicKey_key_keyId;
1797
+ const encryptedDelegatedKeyShareEnvelope = await encryptDelegatedKeyShare(JSON.stringify(delegatedKeyshare), publicKey == null ? void 0 : (_publicKey_key1 = publicKey.key) == null ? void 0 : _publicKey_key1.publicKeyPemB64, (_publicKey_key_keyId = publicKey == null ? void 0 : (_publicKey_key2 = publicKey.key) == null ? void 0 : _publicKey_key2.keyId) != null ? _publicKey_key_keyId : publicKey == null ? void 0 : publicKey.keyId);
1798
+ const { status } = await this.apiClient.publishDelegatedKeyShare({
1799
+ walletId: this.walletMap[accountAddress].walletId,
1800
+ encryptedKeyShare: encryptedDelegatedKeyShareEnvelope,
1801
+ signedSessionId,
1802
+ requiresSignedSessionId: this.requiresSignedSessionId(),
1803
+ dynamicRequestId
1804
+ });
1805
+ if (status !== 200) {
1806
+ throw new Error('Failed to publish delegated key share');
1807
+ }
1808
+ locations.push({
1809
+ location: BackupLocation.DELEGATED
1810
+ });
1763
1811
  }
1764
1812
  const backupData = await this.apiClient.markKeySharesAsBackedUp({
1765
1813
  walletId: this.walletMap[accountAddress].walletId,
@@ -2459,7 +2507,7 @@ class DynamicWalletClient {
2459
2507
  this.apiClient.syncAuthToken(authToken);
2460
2508
  }
2461
2509
  constructor({ environmentId, baseApiUrl, baseMPCRelayApiUrl, storageKey, debug, featureFlags, authMode = AuthMode.HEADER, authToken = undefined, // Represents the version of the client SDK used by developer
2462
- sdkVersion }){
2510
+ sdkVersion, forwardMPCClient }){
2463
2511
  this.userId = undefined;
2464
2512
  this.sessionId = undefined;
2465
2513
  this.initializePromise = null;
@@ -2468,6 +2516,7 @@ class DynamicWalletClient {
2468
2516
  ;
2469
2517
  this.memoryStorage = null;
2470
2518
  this.iframe = null;
2519
+ this.forwardMPCEnabled = false;
2471
2520
  this.featureFlags = {};
2472
2521
  this.environmentId = environmentId;
2473
2522
  this.storageKey = `${STORAGE_KEY}-${storageKey != null ? storageKey : environmentId}`;
@@ -2479,7 +2528,8 @@ class DynamicWalletClient {
2479
2528
  authToken,
2480
2529
  baseApiUrl,
2481
2530
  authMode,
2482
- sdkVersion
2531
+ sdkVersion,
2532
+ forwardMPCClient
2483
2533
  });
2484
2534
  this.debug = Boolean(debug);
2485
2535
  this.logger.setLogLevel(this.debug ? LogLevel.DEBUG : DEFAULT_LOG_LEVEL);
@@ -2499,6 +2549,11 @@ class DynamicWalletClient {
2499
2549
  if (authMode === AuthMode.HEADER && authToken) {
2500
2550
  this.initLoggerContext(authToken);
2501
2551
  }
2552
+ this.forwardMPCEnabled = this.featureFlags && this.featureFlags[FEATURE_FLAGS.ENABLE_FORWARD_MPC_CLIENT_FLAG] === true;
2553
+ // if forwardMPCEnabled is true and forwardMPCClient is not provided, initialize the forwardMPCClient
2554
+ if (this.forwardMPCEnabled && !forwardMPCClient) {
2555
+ this.initializeForwardMPCClient();
2556
+ }
2502
2557
  }
2503
2558
  }
2504
2559
 
package/package.json CHANGED
@@ -1,14 +1,14 @@
1
1
  {
2
2
  "name": "@dynamic-labs-wallet/browser",
3
- "version": "0.0.171",
3
+ "version": "0.0.173",
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.171",
7
+ "@dynamic-labs-wallet/core": "0.0.173",
8
8
  "@dynamic-labs/logger": "^4.25.3",
9
9
  "@dynamic-labs/sdk-api-core": "^0.0.764",
10
10
  "argon2id": "1.0.1",
11
- "axios": "1.9.0",
11
+ "axios": "1.12.2",
12
12
  "http-errors": "2.0.0",
13
13
  "semver": "^7.6.3",
14
14
  "uuid": "11.1.0",
package/src/client.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { AuthMode, BackupLocation, type BackupLocationWithExternalKeyShareId, DynamicApiClient, type DynamicWalletClientProps, type FeatureFlags, type InitializeResult, type KeyShareBackupInfo, ThresholdSignatureScheme, WalletOperation } from '@dynamic-labs-wallet/core';
2
- import { BIP340KeygenResult, EcdsaKeygenResult, type EcdsaPublicKey, type EcdsaSignature, ExportableEd25519KeygenResult } from '#internal/web';
2
+ import { BIP340KeygenResult, EcdsaKeygenResult, type EcdsaPublicKey, EcdsaSignature, ExportableEd25519KeygenResult } from '#internal/web';
3
3
  import type { SignMessageContext } from '@dynamic-labs/sdk-api-core';
4
4
  import type { ClientInitKeygenResult, ClientKeyShare } from './mpc/types.js';
5
5
  import { type SupportedStorage } from './services/localStorage.js';
@@ -20,12 +20,14 @@ export declare class DynamicWalletClient {
20
20
  } | null;
21
21
  protected baseMPCRelayApiUrl?: string;
22
22
  protected iframe: HTMLIFrameElement | null;
23
+ protected forwardMPCEnabled: boolean;
23
24
  readonly instanceId: string;
24
25
  readonly iframeDomain: string;
25
26
  readonly featureFlags: FeatureFlags;
26
27
  protected authMode: AuthMode;
27
28
  protected sdkVersion?: string;
28
- constructor({ environmentId, baseApiUrl, baseMPCRelayApiUrl, storageKey, debug, featureFlags, authMode, authToken, sdkVersion, }: DynamicWalletClientProps);
29
+ constructor({ environmentId, baseApiUrl, baseMPCRelayApiUrl, storageKey, debug, featureFlags, authMode, authToken, sdkVersion, forwardMPCClient, }: DynamicWalletClientProps);
30
+ private initializeForwardMPCClient;
29
31
  getAuthMode(): AuthMode;
30
32
  /**
31
33
  * Check if the SDK version meets the requirement for signed session ID
@@ -222,6 +224,10 @@ export declare class DynamicWalletClient {
222
224
  * 4. Updates backup metadata and synchronizes wallet state
223
225
  * 5. Persists the updated wallet map to local storage
224
226
  *
227
+ * **Delegated Key Shares:**
228
+ * - When delegatedKeyshare is provided, the method will not store the delegated key share but it will mark the delegated share as backed up on Dynamic's backend
229
+ * - and encrypt the delegated key share to publish it to the webhook
230
+ *
225
231
  * @param params - The backup operation parameters
226
232
  * @param params.accountAddress - The account address of the wallet to backup
227
233
  * @param params.clientKeyShares - Optional specific key shares to backup (uses localStorage if not provided)
@@ -230,13 +236,13 @@ export declare class DynamicWalletClient {
230
236
  * @param params.backupToGoogleDrive - Whether to backup to Google Drive (defaults to false)
231
237
  * @returns Promise with backup metadata including share locations and IDs
232
238
  */
233
- storeEncryptedBackupByWallet({ accountAddress, clientKeyShares, password, signedSessionId, backupToGoogleDrive, delegatedLocations, }: {
239
+ storeEncryptedBackupByWallet({ accountAddress, clientKeyShares, password, signedSessionId, backupToGoogleDrive, delegatedKeyshare, }: {
234
240
  accountAddress: string;
235
241
  clientKeyShares?: ClientKeyShare[];
236
242
  password?: string;
237
243
  signedSessionId: string;
238
244
  backupToGoogleDrive?: boolean;
239
- delegatedLocations?: any[];
245
+ delegatedKeyshare?: any;
240
246
  }): Promise<any>;
241
247
  storeEncryptedBackupByWalletWithRetry({ accountAddress, clientKeyShares, password, signedSessionId, }: {
242
248
  accountAddress: string;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../packages/src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAER,cAAc,EACd,KAAK,oCAAoC,EACzC,gBAAgB,EAChB,KAAK,wBAAwB,EAE7B,KAAK,YAAY,EAOjB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EAGvB,wBAAwB,EAExB,eAAe,EAChB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAEL,kBAAkB,EAElB,iBAAiB,EACjB,KAAK,cAAc,EACnB,KAAK,cAAc,EAEnB,6BAA6B,EAE9B,MAAM,eAAe,CAAC;AAMvB,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAYrE,OAAO,KAAK,EAAE,sBAAsB,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAC7E,OAAO,EAGL,KAAK,gBAAgB,EAEtB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAYnD,qBAAa,mBAAmB;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;IAEtB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAa;IACjD,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAa;IAEpD,SAAS,CAAC,iBAAiB,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,IAAI,CAAQ;IACrE,SAAS,CAAC,MAAM,wCAAU;IAC1B,SAAS,CAAC,SAAS,EAAE,gBAAgB,CAAC;IACtC,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAM;IAC3D,SAAS,CAAC,OAAO,EAAE,gBAAgB,CAAC;IACpC,SAAS,CAAC,aAAa,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,GAAG,IAAI,CAAQ;IACjE,SAAS,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IACtC,SAAS,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI,CAAQ;IAClD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAM;IACzC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC7B,SAAS,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;gBAElB,EACV,aAAa,EACb,UAAU,EACV,kBAAkB,EAClB,UAAU,EACV,KAAK,EACL,YAAY,EACZ,QAA0B,EAC1B,SAAqB,EAErB,UAAU,GACX,EAAE,wBAAwB;IAsCpB,WAAW,IAAI,QAAQ;IAI9B;;;;OAIG;IACH,OAAO,CAAC,uBAAuB;IA+BzB,iBAAiB,CAAC,SAAS,EAAE,MAAM;IAuDnC,UAAU,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAgB7C;;OAEG;cACa,WAAW,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAWlD,sBAAsB,CAAC,EAC3B,SAAS,EACT,eAAe,EACf,gBAAgB,EAChB,wBAAwB,EACxB,OAAO,EACP,kBAAkB,GACnB,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,eAAe,EAAE,MAAM,EAAE,CAAC;QAC1B,gBAAgB,EAAE,MAAM,CAAC;QACzB,wBAAwB,EAAE,wBAAwB,CAAC;QACnD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;QACjC,kBAAkB,CAAC,EAAE,CAAC,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;KACzE;IAoBK,sBAAsB,CAAC,EAC3B,SAAS,EACT,wBAAwB,GACzB,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,wBAAwB,EAAE,wBAAwB,CAAC;KACpD,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAkB/B,eAAe,CAAC,EACpB,SAAS,EACT,QAAQ,EACR,cAAc,GACf,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,cAAc,CAAC;QACzB,cAAc,EAAE,WAAW,GAAG,SAAS,CAAC;KACzC,GAAG,OAAO,CAAC,cAAc,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,CAAC;IAcvD,YAAY,CAAC,EACjB,SAAS,EACT,MAAM,EACN,eAAe,EACf,uBAAuB,EACvB,wBAAwB,GACzB,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,eAAe,EAAE,MAAM,EAAE,CAAC;QAC1B,uBAAuB,EAAE,sBAAsB,EAAE,CAAC;QAClD,wBAAwB,EAAE,wBAAwB,CAAC;KACpD,GAAG,OAAO,CAAC;QACV,YAAY,EAAE,cAAc,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,CAAC;QAC/D,mBAAmB,EAAE,cAAc,EAAE,CAAC;KACvC,CAAC;IA4DI,MAAM,CAAC,EACX,SAAS,EACT,wBAAwB,EACxB,OAAO,EACP,kBAAkB,GACnB,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,wBAAwB,EAAE,wBAAwB,CAAC;QACnD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;QACjC,kBAAkB,CAAC,EAAE,CAAC,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;KACzE,GAAG,OAAO,CAAC;QACV,YAAY,EAAE,cAAc,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,CAAC;QAC/D,eAAe,EAAE,cAAc,EAAE,CAAC;KACnC,CAAC;IA2EI,mBAAmB,CAAC,EACxB,SAAS,EACT,UAAU,EACV,wBAAwB,EACxB,OAAO,EACP,kBAAkB,GACnB,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;QACnB,wBAAwB,EAAE,wBAAwB,CAAC;QACnD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;QACjC,kBAAkB,CAAC,EAAE,CAAC,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;KACzE,GAAG,OAAO,CAAC;QACV,YAAY,EAAE,cAAc,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,CAAC;QAC/D,eAAe,EAAE,cAAc,EAAE,CAAC;KACnC,CAAC;IAuHI,UAAU,CAAC,EACf,QAAQ,EACR,OAAO,EACP,WAAW,EACX,QAAQ,EACR,OAAO,EACP,OAAO,EACP,gBAAgB,GACjB,EAAE;QACD,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,EAAE,MAAM,GAAG,UAAU,CAAC;QAC7B,gBAAgB,EAAE,MAAM,CAAC;QACzB,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,kBAAkB,CAAC;QAC7B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;KAClC;IAyBK,UAAU,CAAC,EACf,SAAS,EACT,OAAO,EACP,MAAM,EACN,QAAQ,EACR,cAAc,EACd,WAAW,EACX,gBAAgB,GACjB,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,GAAG,UAAU,CAAC;QAC7B,MAAM,EAAE,MAAM,CAAC;QACf,gBAAgB,EAAE,MAAM,CAAC;QACzB,QAAQ,EAAE,cAAc,CAAC;QACzB,cAAc,EAAE,WAAW,GAAG,SAAS,CAAC;QACxC,WAAW,CAAC,EAAE,OAAO,CAAC;KACvB,GAAG,OAAO,CAAC,UAAU,GAAG,cAAc,CAAC;IA4ClC,IAAI,CAAC,EACT,cAAc,EACd,OAAO,EACP,SAAS,EACT,QAAoB,EACpB,WAAmB,EACnB,eAAe,EACf,QAAQ,EACR,OAAO,EACP,OAAO,GACR,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;QACvB,OAAO,EAAE,MAAM,GAAG,UAAU,CAAC;QAC7B,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,eAAe,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,OAAO,CAAC,EAAE,kBAAkB,CAAC;QAC7B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;KAClC,GAAG,OAAO,CAAC,UAAU,GAAG,cAAc,CAAC;IA+ElC,0BAA0B,CAAC,EAC/B,cAAc,EACd,SAAS,EACT,QAAoB,EACpB,eAAe,EACf,QAAQ,GACT,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,eAAe,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB;IAiEK,WAAW,CAAC,EAChB,SAAS,EACT,cAAc,GACf,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,cAAc,EACV,iBAAiB,GACjB,6BAA6B,GAC7B,kBAAkB,CAAC;KACxB;IASD;;;;;;;;;;;;;OAaG;IACG,eAAe,CAAC,EACpB,SAAS,EACT,MAAM,EACN,cAAc,EACd,2BAA2B,EAC3B,2BAA2B,GAC5B,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,gBAAgB,CAAC;QACzB,cAAc,EAAE,MAAM,CAAC;QACvB,2BAA2B,EAAE,wBAAwB,CAAC;QACtD,2BAA2B,EAAE,wBAAwB,CAAC;KACvD,GAAG,OAAO,CAAC;QACV,0BAA0B,EAAE,sBAAsB,EAAE,CAAC;QACrD,kBAAkB,EAAE,MAAM,EAAE,CAAC;QAC7B,uBAAuB,EAAE,MAAM,EAAE,CAAC;QAClC,uBAAuB,EAAE,cAAc,EAAE,CAAC;KAC3C,CAAC;IA6CI,OAAO,CAAC,EACZ,SAAS,EACT,cAAc,EACd,2BAA2B,EAC3B,2BAA2B,EAC3B,QAAoB,EACpB,eAAe,EACf,mBAA2B,EAC3B,4BAAoC,EACpC,QAAQ,GACT,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,cAAc,EAAE,MAAM,CAAC;QACvB,2BAA2B,EAAE,wBAAwB,CAAC;QACtD,2BAA2B,EAAE,wBAAwB,CAAC;QACtD,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,eAAe,EAAE,MAAM,CAAC;QACxB,mBAAmB,CAAC,EAAE,OAAO,CAAC;QAC9B,4BAA4B,CAAC,EAAE,OAAO,CAAC;QACvC,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB;IA0KK,iBAAiB,CAAC,EACtB,cAAc,EACd,QAAoB,EACpB,eAAe,EACf,QAAQ,GACT,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,eAAe,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB;IAuDK,SAAS,CAAC,EACd,cAAc,EACd,SAAS,EACT,QAAoB,EACpB,eAAe,EACf,QAAQ,GACT,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,eAAe,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB;;;IAgGK,gBAAgB,CAAC,EACrB,SAAS,EACT,SAAS,EACT,cAAc,GACf,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,cAAc,EAAE,CAAC;QAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,GAAG,OAAO,CAAC;QACV,iBAAiB,EAAE,MAAM,GAAG,SAAS,CAAC;QACtC,YAAY,EAAE,cAAc,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,CAAC;KAChE,CAAC;IA2EI,eAAe,CAAC,EACpB,QAAQ,EACR,QAAQ,GACT,EAAE;QACD,QAAQ,EAAE,cAAc,CAAC;QACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB;IAaD;;OAEG;IACG,kCAAkC,CAAC,EACvC,cAAc,GACf,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;KACxB,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAiC7B;;OAEG;IACG,gCAAgC,CAAC,EACrC,cAAc,EACd,eAAe,EACf,gBAA0B,GAC3B,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;QACvB,eAAe,EAAE,cAAc,EAAE,CAAC;QAClC,gBAAgB,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC;KAC1C,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBjB;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACG,4BAA4B,CAAC,EACjC,cAAc,EACd,eAA2B,EAC3B,QAAoB,EACpB,eAAe,EACf,mBAA2B,EAC3B,kBAAuB,GACxB,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;QACvB,eAAe,CAAC,EAAE,cAAc,EAAE,CAAC;QACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,eAAe,EAAE,MAAM,CAAC;QACxB,mBAAmB,CAAC,EAAE,OAAO,CAAC;QAC9B,kBAAkB,CAAC,EAAE,GAAG,EAAE,CAAC;KAC5B;IA4IK,qCAAqC,CAAC,EAC1C,cAAc,EACd,eAAe,EACf,QAAQ,EACR,eAAe,GAChB,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;QACvB,eAAe,CAAC,EAAE,cAAc,EAAE,CAAC;QACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,eAAe,EAAE,MAAM,CAAC;KACzB;IAkBK,cAAc,CAAC,EACnB,cAAc,EACd,gBAAgB,EAChB,WAAW,EACX,eAAe,GAChB,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;QACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,eAAe,EAAE,MAAM,CAAC;KACzB;IAeK,eAAe,CAAC,EACpB,QAAQ,EACR,QAAQ,GACT,EAAE;QACD,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,GAAG,OAAO,CAAC,cAAc,CAAC;IAa3B;;;;;OAKG;YACW,8BAA8B;IAmC5C;;;;;;;;;;;OAWG;IACH,eAAe,CAAC,EACd,wBAAwB,EACxB,wBAAwB,EACxB,eAAe,EACf,UAAsB,GACvB,EAAE;QACD,wBAAwB,EAAE,kBAAkB,CAAC;QAC7C,wBAAwB,EAAE,wBAAwB,CAAC;QACnD,eAAe,EAAE,eAAe,CAAC;QACjC,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,GAAG;QACF,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;QAClD,kBAAkB,EAAE,MAAM,CAAC;KAC5B;IA+BK,8BAA8B,CAAC,EACnC,cAAc,EACd,QAAQ,EACR,eAAe,EACf,eAAe,EACf,UAAsB,EACtB,oBAA2B,EAC3B,QAAQ,GACT,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,eAAe,EAAE,eAAe,CAAC;QACjC,eAAe,EAAE,MAAM,CAAC;QACxB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,oBAAoB,CAAC,EAAE,OAAO,CAAC;QAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB;IAsEK,cAAc;IAQpB;;;;;;;;;;OAUG;IACG,4BAA4B,CAAC,EACjC,cAAc,EACd,QAAQ,EACR,eAAe,GAChB,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,eAAe,EAAE,MAAM,CAAC;KACzB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAsDrB;;;;;;;;;;;OAWG;YACW,4BAA4B;IAoDpC,4BAA4B,CAAC,EACjC,cAAc,EACd,QAAQ,EACR,eAAe,GAChB,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,eAAe,EAAE,MAAM,CAAC;KACzB,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAkGvB,qBAAqB,CAAC,EAC1B,cAAc,EACd,QAAQ,EACR,eAAe,GAChB,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,eAAe,EAAE,MAAM,CAAC;KACzB;IA6BK,kBAAkB,CAAC,EACvB,cAAc,EACd,QAAQ,EACR,eAAe,GAChB,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,eAAe,EAAE,MAAM,CAAC;KACzB;IAYD;;;;;OAKG;YACW,iBAAiB;IA8D/B;;;;OAIG;IACG,cAAc,CAAC,EACnB,cAAc,EACd,QAAoB,EACpB,eAA8C,EAC9C,eAAe,GAChB,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,eAAe,CAAC,EAAE,eAAe,CAAC;QAClC,eAAe,EAAE,MAAM,CAAC;KACzB;IAsDK,mBAAmB,CAAC,EACxB,cAAc,GACf,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;KACxB,GAAG,OAAO,CAAC,OAAO,CAAC;IAMpB;;OAEG;IACG,4BAA4B,CAAC,EACjC,cAAc,EACd,eAAiD,GAClD,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;QACvB,eAAe,CAAC,EAAE,eAAe,CAAC;KACnC,GAAG,OAAO,CAAC,OAAO,CAAC;IAYpB;;OAEG;IACG,uCAAuC,CAAC,EAC5C,cAAc,EACd,eAAiD,GAClD,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;QACvB,eAAe,CAAC,EAAE,eAAe,CAAC;KACnC,GAAG,OAAO,CAAC,OAAO,CAAC;IAgCd,iCAAiC,CAAC,EACtC,cAAc,GACf,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;KACxB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAiCzB,SAAS,CAAC,EACd,cAAc,EACd,eAA8C,EAC9C,UAAsB,EACtB,QAAoB,EACpB,eAAe,GAChB,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;QACvB,eAAe,CAAC,EAAE,eAAe,CAAC;QAClC,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,eAAe,EAAE,MAAM,CAAC;KACzB;IAmGK,UAAU;IAgDhB;;;OAGG;IACH,aAAa,CAAC,SAAS,EAAE,MAAM;CAOhC"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../packages/src/client.ts"],"names":[],"mappings":"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"}