@dynamic-labs-wallet/browser 0.0.248 → 0.0.249

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
@@ -1888,8 +1888,10 @@ class DynamicWalletClient {
1888
1888
  operation: 'serverSign'
1889
1889
  }, this.getTraceContext(traceContext)));
1890
1890
  const derivationPath = wallet.derivationPath && wallet.derivationPath != '' ? new Uint32Array(Object.values(JSON.parse(wallet.derivationPath))) : undefined;
1891
- // Ensure client key shares exist before signing
1892
- const clientKeyShares = await this.ensureClientShare(accountAddress, chainName);
1891
+ // Perform the client sign and return the signature
1892
+ const clientKeyShares = await this.getClientKeySharesFromLocalStorage({
1893
+ accountAddress
1894
+ });
1893
1895
  const signature = await this.clientSign({
1894
1896
  chainName,
1895
1897
  message,
@@ -1974,14 +1976,14 @@ class DynamicWalletClient {
1974
1976
  mfaToken
1975
1977
  });
1976
1978
  const roomId = data.roomId;
1977
- // Ensure client key shares exist before refresh
1978
- const clientKeyShares = await this.ensureClientShare(accountAddress, chainName);
1979
+ const clientKeyShares = await this.getClientKeySharesFromLocalStorage({
1980
+ accountAddress
1981
+ });
1979
1982
  const refreshResults = await Promise.all(clientKeyShares.map((clientKeyShare)=>mpcSigner.refresh(roomId, clientKeyShare)));
1980
- await this.setClientKeySharesToStorage({
1983
+ await this.setClientKeySharesToLocalStorage({
1981
1984
  accountAddress,
1982
1985
  clientKeyShares: refreshResults,
1983
- overwriteOrMerge: 'overwrite',
1984
- chainName
1986
+ overwriteOrMerge: 'overwrite'
1985
1987
  });
1986
1988
  await this.storeEncryptedBackupByWallet({
1987
1989
  accountAddress,
@@ -2063,9 +2065,8 @@ class DynamicWalletClient {
2063
2065
  }, ()=>mpcSigner.initKeygen()));
2064
2066
  const newClientKeygenIds = newClientInitKeygenResults.map((result)=>result.keygenId);
2065
2067
  // Get existing client shares
2066
- const existingClientKeyShares = (await this.getClientKeySharesFromStorage({
2067
- accountAddress,
2068
- chainName
2068
+ const existingClientKeyShares = (await this.getClientKeySharesFromLocalStorage({
2069
+ accountAddress
2069
2070
  })).slice(0, existingClientShareCount);
2070
2071
  const existingClientKeygenIds = await Promise.all(existingClientKeyShares.map(async (keyShare)=>await this.getExportId({
2071
2072
  chainName,
@@ -2123,10 +2124,6 @@ class DynamicWalletClient {
2123
2124
  oldThresholdSignatureScheme,
2124
2125
  newThresholdSignatureScheme
2125
2126
  });
2126
- // Ensure existing client key shares exist before reshare
2127
- if (existingClientKeyShares.length === 0) {
2128
- throw new Error(`Client key shares are required for reshare operation but none were found for account address: ${accountAddress}`);
2129
- }
2130
2127
  const clientKeygenIds = [
2131
2128
  ...newClientKeygenIds,
2132
2129
  ...existingClientKeygenIds
@@ -2207,12 +2204,10 @@ class DynamicWalletClient {
2207
2204
  this.walletMap[accountAddress] = _extends({}, this.walletMap[accountAddress], {
2208
2205
  thresholdSignatureScheme: newThresholdSignatureScheme
2209
2206
  });
2210
- // store client key shares to storage (localStorage or secureStorage)
2211
- await this.setClientKeySharesToStorage({
2207
+ await this.setClientKeySharesToLocalStorage({
2212
2208
  accountAddress,
2213
2209
  clientKeyShares: distribution.clientShares,
2214
- overwriteOrMerge: 'overwrite',
2215
- chainName
2210
+ overwriteOrMerge: 'overwrite'
2216
2211
  });
2217
2212
  await this.backupSharesWithDistribution({
2218
2213
  accountAddress,
@@ -2237,11 +2232,10 @@ class DynamicWalletClient {
2237
2232
  this.walletMap[accountAddress] = _extends({}, this.walletMap[accountAddress], {
2238
2233
  thresholdSignatureScheme: oldThresholdSignatureScheme
2239
2234
  });
2240
- await this.setClientKeySharesToStorage({
2235
+ await this.setClientKeySharesToLocalStorage({
2241
2236
  accountAddress,
2242
2237
  clientKeyShares: [],
2243
- overwriteOrMerge: 'overwrite',
2244
- chainName
2238
+ overwriteOrMerge: 'overwrite'
2245
2239
  });
2246
2240
  throw error;
2247
2241
  }
@@ -2381,7 +2375,7 @@ class DynamicWalletClient {
2381
2375
  }
2382
2376
  }
2383
2377
  async getReconstructedKeyShare(accountAddress, mpcSigner) {
2384
- const clientKeyShares = await this.getClientKeySharesFromStorage({
2378
+ const clientKeyShares = await this.getClientKeySharesFromLocalStorage({
2385
2379
  accountAddress
2386
2380
  });
2387
2381
  if (!clientKeyShares || clientKeyShares.length === 0) {
@@ -2439,7 +2433,6 @@ class DynamicWalletClient {
2439
2433
  }
2440
2434
  async offlineExportKey({ chainName, keyShares, derivationPath }) {
2441
2435
  try {
2442
- // Enforce share presence
2443
2436
  if (!keyShares || keyShares.length < 2) {
2444
2437
  throw new Error(`Must provide at least min threshold of key shares`);
2445
2438
  }
@@ -2495,36 +2488,9 @@ class DynamicWalletClient {
2495
2488
  return serializedEncryptedKeyShare;
2496
2489
  }
2497
2490
  /**
2498
- * Helper function to get client key shares from storage.
2499
- * Uses secureStorage when available (mobile), otherwise falls back to localStorage (browser).
2500
- */ async getClientKeySharesFromStorage({ accountAddress, chainName }) {
2501
- var _this_walletMap_accountAddress, _this_storage;
2502
- // Get chainName from walletMap if not provided
2503
- const resolvedChainName = chainName || ((_this_walletMap_accountAddress = this.walletMap[accountAddress]) == null ? void 0 : _this_walletMap_accountAddress.chainName);
2504
- if (!resolvedChainName) {
2505
- this.logger.debug(`[DynamicWaasWalletClient] No chainName found for accountAddress: ${accountAddress}, falling back to localStorage lookup`);
2506
- }
2507
- // Use secure storage if available (mobile)
2508
- if (this.secureStorage) {
2509
- if (!resolvedChainName) {
2510
- this.logger.warn(`[DynamicWaasWalletClient] secureStorage requires chainName but it was not provided for accountAddress: ${accountAddress}`);
2511
- return [];
2512
- }
2513
- try {
2514
- return await this.secureStorage.getClientKeyShare(resolvedChainName, accountAddress);
2515
- } catch (error) {
2516
- logError({
2517
- message: `Error getting client key shares from secure storage for accountAddress: ${accountAddress}`,
2518
- error: error,
2519
- context: {
2520
- accountAddress,
2521
- chainName: resolvedChainName
2522
- }
2523
- });
2524
- return [];
2525
- }
2526
- }
2527
- // Fallback to localStorage (browser)
2491
+ * helper function to store encrypted backup by wallet from iframe local storage
2492
+ */ async getClientKeySharesFromLocalStorage({ accountAddress }) {
2493
+ var _this_storage;
2528
2494
  const walletObject = await ((_this_storage = this.storage) == null ? void 0 : _this_storage.getItem(accountAddress));
2529
2495
  if (!walletObject) {
2530
2496
  this.logger.debug(`[DynamicWaasWalletClient] No item found in iframe local storage for accountAddress: ${accountAddress}`);
@@ -2550,67 +2516,16 @@ class DynamicWalletClient {
2550
2516
  }
2551
2517
  }
2552
2518
  /**
2553
- * Helper function to store client key shares in storage.
2554
- * Uses secureStorage when available (mobile), otherwise falls back to localStorage (browser).
2555
- */ async setClientKeySharesToStorage({ accountAddress, clientKeyShares, overwriteOrMerge = 'merge', chainName }) {
2556
- var _this_walletMap_accountAddress, _this_storage;
2557
- // Get chainName from walletMap if not provided
2558
- const resolvedChainName = chainName || ((_this_walletMap_accountAddress = this.walletMap[accountAddress]) == null ? void 0 : _this_walletMap_accountAddress.chainName);
2559
- // Use secure storage if available (mobile)
2560
- if (this.secureStorage) {
2561
- if (!resolvedChainName) {
2562
- const error = new Error(`secureStorage requires chainName but it was not provided for accountAddress: ${accountAddress}`);
2563
- logError({
2564
- message: error.message,
2565
- error,
2566
- context: {
2567
- accountAddress
2568
- }
2569
- });
2570
- throw error;
2571
- }
2572
- try {
2573
- const sharesToStore = overwriteOrMerge === 'overwrite' ? clientKeyShares : mergeUniqueKeyShares(await this.getClientKeySharesFromStorage({
2574
- accountAddress,
2575
- chainName: resolvedChainName
2576
- }), clientKeyShares);
2577
- await this.secureStorage.setClientKeyShare(resolvedChainName, accountAddress, sharesToStore);
2578
- return;
2579
- } catch (error) {
2580
- logError({
2581
- message: `Error setting client key shares in secure storage for accountAddress: ${accountAddress}`,
2582
- error: error,
2583
- context: {
2584
- accountAddress,
2585
- chainName: resolvedChainName
2586
- }
2587
- });
2588
- throw error;
2589
- }
2590
- }
2591
- // Fallback to localStorage (browser)
2519
+ * helper function to store encrypted backup by wallet from iframe local storage
2520
+ */ async setClientKeySharesToLocalStorage({ accountAddress, clientKeyShares, overwriteOrMerge = 'merge' }) {
2521
+ var _this_storage;
2592
2522
  const stringifiedClientKeyShares = JSON.stringify({
2593
- clientKeyShares: overwriteOrMerge === 'overwrite' ? clientKeyShares : mergeUniqueKeyShares(await this.getClientKeySharesFromStorage({
2594
- accountAddress,
2595
- chainName: resolvedChainName
2523
+ clientKeyShares: overwriteOrMerge === 'overwrite' ? clientKeyShares : mergeUniqueKeyShares(await this.getClientKeySharesFromLocalStorage({
2524
+ accountAddress
2596
2525
  }), clientKeyShares)
2597
2526
  });
2598
2527
  await ((_this_storage = this.storage) == null ? void 0 : _this_storage.setItem(accountAddress, stringifiedClientKeyShares));
2599
2528
  }
2600
- /**
2601
- * Ensures that client key shares exist for the given account address.
2602
- * Throws an error if no shares are found.
2603
- * This method enforces share presence before sensitive operations.
2604
- */ async ensureClientShare(accountAddress, chainName) {
2605
- const shares = await this.getClientKeySharesFromStorage({
2606
- accountAddress,
2607
- chainName
2608
- });
2609
- if (!shares || shares.length === 0) {
2610
- throw new Error(`Client key share is missing for account address: ${accountAddress}`);
2611
- }
2612
- return shares;
2613
- }
2614
2529
  async backupSharesWithDistribution({ accountAddress, password, signedSessionId, distribution, preserveDelegatedLocation = false }) {
2615
2530
  const dynamicRequestId = uuid.v4();
2616
2531
  try {
@@ -2717,10 +2632,7 @@ class DynamicWalletClient {
2717
2632
  this.walletMap[accountAddress] = _extends({}, this.walletMap[accountAddress], {
2718
2633
  clientKeySharesBackupInfo: updatedBackupInfo
2719
2634
  });
2720
- // Store wallet map metadata in localStorage (browser only, not needed on mobile)
2721
- if (this.storage) {
2722
- await this.storage.setItem(this.storageKey, JSON.stringify(this.walletMap));
2723
- }
2635
+ await this.storage.setItem(this.storageKey, JSON.stringify(this.walletMap));
2724
2636
  return backupData;
2725
2637
  } catch (error) {
2726
2638
  logError({
@@ -2766,7 +2678,7 @@ class DynamicWalletClient {
2766
2678
  * @returns Promise with backup metadata including share locations and IDs
2767
2679
  */ async storeEncryptedBackupByWallet({ accountAddress, clientKeyShares = undefined, password = undefined, signedSessionId, cloudProviders = [], delegatedKeyshare = undefined }) {
2768
2680
  var _this_walletMap_accountAddress, _this_walletMap_accountAddress1;
2769
- const keySharesToBackup = clientKeyShares != null ? clientKeyShares : await this.getClientKeySharesFromStorage({
2681
+ const keySharesToBackup = clientKeyShares != null ? clientKeyShares : await this.getClientKeySharesFromLocalStorage({
2770
2682
  accountAddress
2771
2683
  });
2772
2684
  // Check if we should backup to cloud providers (either requested or already exists)
@@ -2949,15 +2861,12 @@ class DynamicWalletClient {
2949
2861
  password: password != null ? password : this.environmentId
2950
2862
  })));
2951
2863
  if (storeRecoveredShares) {
2952
- await this.setClientKeySharesToStorage({
2864
+ await this.setClientKeySharesToLocalStorage({
2953
2865
  accountAddress,
2954
2866
  clientKeyShares: decryptedKeyShares,
2955
2867
  overwriteOrMerge: 'merge'
2956
2868
  });
2957
- // Store wallet map metadata in localStorage (browser only, not needed on mobile)
2958
- if (this.storage) {
2959
- await this.storage.setItem(this.storageKey, JSON.stringify(this.walletMap));
2960
- }
2869
+ await this.storage.setItem(this.storageKey, JSON.stringify(this.walletMap));
2961
2870
  }
2962
2871
  return decryptedKeyShares;
2963
2872
  } catch (error) {
@@ -2974,12 +2883,6 @@ class DynamicWalletClient {
2974
2883
  }
2975
2884
  }
2976
2885
  async restoreWallets() {
2977
- // On mobile with secureStorage, walletMap metadata is not persisted in localStorage
2978
- // Key shares are stored in secureStorage instead
2979
- if (!this.storage) {
2980
- // Mobile mode: walletMap will be populated from server on first getWallet call
2981
- return;
2982
- }
2983
2886
  const wallets = await this.storage.getItem(this.storageKey);
2984
2887
  if (!wallets) {
2985
2888
  return;
@@ -3257,20 +3160,18 @@ class DynamicWalletClient {
3257
3160
  }
3258
3161
  }
3259
3162
  async exportClientKeyshares({ accountAddress, password, signedSessionId }) {
3260
- var _this_walletMap_accountAddress;
3261
3163
  await this.verifyPassword({
3262
3164
  accountAddress,
3263
3165
  password,
3264
3166
  walletOperation: core.WalletOperation.REACH_ALL_PARTIES,
3265
3167
  signedSessionId
3266
3168
  });
3169
+ const clientKeyShares = await this.getClientKeySharesFromLocalStorage({
3170
+ accountAddress
3171
+ });
3267
3172
  if (!accountAddress) {
3268
3173
  throw new Error('Must provide an account address');
3269
3174
  }
3270
- // Get chainName from walletMap
3271
- const chainName = (_this_walletMap_accountAddress = this.walletMap[accountAddress]) == null ? void 0 : _this_walletMap_accountAddress.chainName;
3272
- // Ensure client key shares exist before export
3273
- const clientKeyShares = await this.ensureClientShare(accountAddress, chainName);
3274
3175
  const derivationPath = this.walletMap[accountAddress].derivationPath;
3275
3176
  const text = JSON.stringify({
3276
3177
  keyShares: clientKeyShares,
@@ -3289,7 +3190,7 @@ class DynamicWalletClient {
3289
3190
  walletOperation: core.WalletOperation.REACH_THRESHOLD,
3290
3191
  signedSessionId
3291
3192
  });
3292
- return this.getClientKeySharesFromStorage({
3193
+ return this.getClientKeySharesFromLocalStorage({
3293
3194
  accountAddress
3294
3195
  });
3295
3196
  }
@@ -3327,7 +3228,7 @@ class DynamicWalletClient {
3327
3228
  shareCount
3328
3229
  });
3329
3230
  const { dynamic: requiredDynamicKeyShareIds = [] } = shares;
3330
- const clientKeyShares = await this.getClientKeySharesFromStorage({
3231
+ const clientKeyShares = await this.getClientKeySharesFromLocalStorage({
3331
3232
  accountAddress
3332
3233
  });
3333
3234
  if (requiredDynamicKeyShareIds.length <= ((clientKeyShares == null ? void 0 : clientKeyShares.length) || 0)) {
@@ -3411,7 +3312,7 @@ class DynamicWalletClient {
3411
3312
  const clientKeySharesBackupInfo = await this.getWalletClientKeyShareBackupInfo({
3412
3313
  accountAddress
3413
3314
  });
3414
- const clientKeyShares = await this.getClientKeySharesFromStorage({
3315
+ const clientKeyShares = await this.getClientKeySharesFromLocalStorage({
3415
3316
  accountAddress
3416
3317
  });
3417
3318
  if (walletOperation === core.WalletOperation.REACH_ALL_PARTIES || walletOperation === core.WalletOperation.REFRESH || walletOperation === core.WalletOperation.RESHARE) {
@@ -3494,10 +3395,10 @@ class DynamicWalletClient {
3494
3395
  signedSessionId,
3495
3396
  shareCount
3496
3397
  });
3497
- const existingKeyShares = await this.getClientKeySharesFromStorage({
3398
+ const existingKeyShares = await this.getClientKeySharesFromLocalStorage({
3498
3399
  accountAddress
3499
3400
  });
3500
- await this.setClientKeySharesToStorage({
3401
+ await this.setClientKeySharesToLocalStorage({
3501
3402
  accountAddress,
3502
3403
  clientKeyShares: mergeUniqueKeyShares(existingKeyShares, decryptedKeyShares)
3503
3404
  });
@@ -3620,8 +3521,7 @@ class DynamicWalletClient {
3620
3521
  }
3621
3522
  }
3622
3523
  async restoreRooms() {
3623
- var _this_storage;
3624
- const roomData = await ((_this_storage = this.storage) == null ? void 0 : _this_storage.getItem(`${this.storageKey}-rooms`));
3524
+ const roomData = await this.storage.getItem(`${this.storageKey}-rooms`);
3625
3525
  if (!roomData) {
3626
3526
  return {};
3627
3527
  }
@@ -3648,9 +3548,8 @@ class DynamicWalletClient {
3648
3548
  return DynamicWalletClient.rooms;
3649
3549
  }
3650
3550
  async setRooms(numberOfParties, rooms) {
3651
- var _this_storage;
3652
3551
  DynamicWalletClient.rooms[numberOfParties] = rooms;
3653
- await ((_this_storage = this.storage) == null ? void 0 : _this_storage.setItem(`${this.storageKey}-rooms`, JSON.stringify(DynamicWalletClient.rooms)));
3552
+ await this.storage.setItem(`${this.storageKey}-rooms`, JSON.stringify(DynamicWalletClient.rooms));
3654
3553
  }
3655
3554
  getNumberOfParties(roomType, thresholdSignatureScheme) {
3656
3555
  const MPC_SCHEME_CONFIG = core.MPC_CONFIG[thresholdSignatureScheme];
@@ -3696,7 +3595,7 @@ class DynamicWalletClient {
3696
3595
  }, traceContext);
3697
3596
  }
3698
3597
  constructor({ environmentId, baseApiUrl, baseMPCRelayApiUrl, storageKey, debug, featureFlags, authMode = core.AuthMode.HEADER, authToken = undefined, backupServiceAuthToken, // Represents the version of the client SDK used by developer
3699
- sdkVersion, forwardMPCClient, baseClientKeysharesRelayApiUrl, iCloudConfig }, internalOptions){
3598
+ sdkVersion, forwardMPCClient, baseClientKeysharesRelayApiUrl, iCloudConfig }){
3700
3599
  this.userId = undefined;
3701
3600
  this.sessionId = undefined;
3702
3601
  this.initializePromise = null;
@@ -3713,10 +3612,6 @@ class DynamicWalletClient {
3713
3612
  this.authMode = authMode;
3714
3613
  this.sdkVersion = sdkVersion;
3715
3614
  this.baseClientKeysharesRelayApiUrl = baseClientKeysharesRelayApiUrl;
3716
- // Set secure storage adapter if provided (internal use only)
3717
- if (internalOptions == null ? void 0 : internalOptions.secureStorage) {
3718
- this.secureStorage = internalOptions.secureStorage;
3719
- }
3720
3615
  this.apiClient = new core.DynamicApiClient({
3721
3616
  environmentId,
3722
3617
  authToken,
@@ -3730,14 +3625,12 @@ class DynamicWalletClient {
3730
3625
  this.debug = Boolean(debug);
3731
3626
  this.logger.setLogLevel(this.debug ? logger$1.LogLevel.DEBUG : DEFAULT_LOG_LEVEL);
3732
3627
  this.featureFlags = featureFlags || {};
3733
- // setup storage (only used when secureStorage is not set)
3734
- if (!this.secureStorage) {
3735
- if (supportsLocalStorage()) {
3736
- this.storage = localStorageAdapter;
3737
- } else {
3738
- this.memoryStorage = {};
3739
- this.storage = memoryLocalStorageAdapter(this.memoryStorage);
3740
- }
3628
+ // setup storage
3629
+ if (supportsLocalStorage()) {
3630
+ this.storage = localStorageAdapter;
3631
+ } else {
3632
+ this.memoryStorage = {};
3633
+ this.storage = memoryLocalStorageAdapter(this.memoryStorage);
3741
3634
  }
3742
3635
  const environment = core.getEnvironmentFromUrl(baseApiUrl);
3743
3636
  this.iframeDomain = core.IFRAME_DOMAIN_MAP[environment];
package/index.esm.js CHANGED
@@ -1889,8 +1889,10 @@ class DynamicWalletClient {
1889
1889
  operation: 'serverSign'
1890
1890
  }, this.getTraceContext(traceContext)));
1891
1891
  const derivationPath = wallet.derivationPath && wallet.derivationPath != '' ? new Uint32Array(Object.values(JSON.parse(wallet.derivationPath))) : undefined;
1892
- // Ensure client key shares exist before signing
1893
- const clientKeyShares = await this.ensureClientShare(accountAddress, chainName);
1892
+ // Perform the client sign and return the signature
1893
+ const clientKeyShares = await this.getClientKeySharesFromLocalStorage({
1894
+ accountAddress
1895
+ });
1894
1896
  const signature = await this.clientSign({
1895
1897
  chainName,
1896
1898
  message,
@@ -1975,14 +1977,14 @@ class DynamicWalletClient {
1975
1977
  mfaToken
1976
1978
  });
1977
1979
  const roomId = data.roomId;
1978
- // Ensure client key shares exist before refresh
1979
- const clientKeyShares = await this.ensureClientShare(accountAddress, chainName);
1980
+ const clientKeyShares = await this.getClientKeySharesFromLocalStorage({
1981
+ accountAddress
1982
+ });
1980
1983
  const refreshResults = await Promise.all(clientKeyShares.map((clientKeyShare)=>mpcSigner.refresh(roomId, clientKeyShare)));
1981
- await this.setClientKeySharesToStorage({
1984
+ await this.setClientKeySharesToLocalStorage({
1982
1985
  accountAddress,
1983
1986
  clientKeyShares: refreshResults,
1984
- overwriteOrMerge: 'overwrite',
1985
- chainName
1987
+ overwriteOrMerge: 'overwrite'
1986
1988
  });
1987
1989
  await this.storeEncryptedBackupByWallet({
1988
1990
  accountAddress,
@@ -2064,9 +2066,8 @@ class DynamicWalletClient {
2064
2066
  }, ()=>mpcSigner.initKeygen()));
2065
2067
  const newClientKeygenIds = newClientInitKeygenResults.map((result)=>result.keygenId);
2066
2068
  // Get existing client shares
2067
- const existingClientKeyShares = (await this.getClientKeySharesFromStorage({
2068
- accountAddress,
2069
- chainName
2069
+ const existingClientKeyShares = (await this.getClientKeySharesFromLocalStorage({
2070
+ accountAddress
2070
2071
  })).slice(0, existingClientShareCount);
2071
2072
  const existingClientKeygenIds = await Promise.all(existingClientKeyShares.map(async (keyShare)=>await this.getExportId({
2072
2073
  chainName,
@@ -2124,10 +2125,6 @@ class DynamicWalletClient {
2124
2125
  oldThresholdSignatureScheme,
2125
2126
  newThresholdSignatureScheme
2126
2127
  });
2127
- // Ensure existing client key shares exist before reshare
2128
- if (existingClientKeyShares.length === 0) {
2129
- throw new Error(`Client key shares are required for reshare operation but none were found for account address: ${accountAddress}`);
2130
- }
2131
2128
  const clientKeygenIds = [
2132
2129
  ...newClientKeygenIds,
2133
2130
  ...existingClientKeygenIds
@@ -2208,12 +2205,10 @@ class DynamicWalletClient {
2208
2205
  this.walletMap[accountAddress] = _extends({}, this.walletMap[accountAddress], {
2209
2206
  thresholdSignatureScheme: newThresholdSignatureScheme
2210
2207
  });
2211
- // store client key shares to storage (localStorage or secureStorage)
2212
- await this.setClientKeySharesToStorage({
2208
+ await this.setClientKeySharesToLocalStorage({
2213
2209
  accountAddress,
2214
2210
  clientKeyShares: distribution.clientShares,
2215
- overwriteOrMerge: 'overwrite',
2216
- chainName
2211
+ overwriteOrMerge: 'overwrite'
2217
2212
  });
2218
2213
  await this.backupSharesWithDistribution({
2219
2214
  accountAddress,
@@ -2238,11 +2233,10 @@ class DynamicWalletClient {
2238
2233
  this.walletMap[accountAddress] = _extends({}, this.walletMap[accountAddress], {
2239
2234
  thresholdSignatureScheme: oldThresholdSignatureScheme
2240
2235
  });
2241
- await this.setClientKeySharesToStorage({
2236
+ await this.setClientKeySharesToLocalStorage({
2242
2237
  accountAddress,
2243
2238
  clientKeyShares: [],
2244
- overwriteOrMerge: 'overwrite',
2245
- chainName
2239
+ overwriteOrMerge: 'overwrite'
2246
2240
  });
2247
2241
  throw error;
2248
2242
  }
@@ -2382,7 +2376,7 @@ class DynamicWalletClient {
2382
2376
  }
2383
2377
  }
2384
2378
  async getReconstructedKeyShare(accountAddress, mpcSigner) {
2385
- const clientKeyShares = await this.getClientKeySharesFromStorage({
2379
+ const clientKeyShares = await this.getClientKeySharesFromLocalStorage({
2386
2380
  accountAddress
2387
2381
  });
2388
2382
  if (!clientKeyShares || clientKeyShares.length === 0) {
@@ -2440,7 +2434,6 @@ class DynamicWalletClient {
2440
2434
  }
2441
2435
  async offlineExportKey({ chainName, keyShares, derivationPath }) {
2442
2436
  try {
2443
- // Enforce share presence
2444
2437
  if (!keyShares || keyShares.length < 2) {
2445
2438
  throw new Error(`Must provide at least min threshold of key shares`);
2446
2439
  }
@@ -2496,36 +2489,9 @@ class DynamicWalletClient {
2496
2489
  return serializedEncryptedKeyShare;
2497
2490
  }
2498
2491
  /**
2499
- * Helper function to get client key shares from storage.
2500
- * Uses secureStorage when available (mobile), otherwise falls back to localStorage (browser).
2501
- */ async getClientKeySharesFromStorage({ accountAddress, chainName }) {
2502
- var _this_walletMap_accountAddress, _this_storage;
2503
- // Get chainName from walletMap if not provided
2504
- const resolvedChainName = chainName || ((_this_walletMap_accountAddress = this.walletMap[accountAddress]) == null ? void 0 : _this_walletMap_accountAddress.chainName);
2505
- if (!resolvedChainName) {
2506
- this.logger.debug(`[DynamicWaasWalletClient] No chainName found for accountAddress: ${accountAddress}, falling back to localStorage lookup`);
2507
- }
2508
- // Use secure storage if available (mobile)
2509
- if (this.secureStorage) {
2510
- if (!resolvedChainName) {
2511
- this.logger.warn(`[DynamicWaasWalletClient] secureStorage requires chainName but it was not provided for accountAddress: ${accountAddress}`);
2512
- return [];
2513
- }
2514
- try {
2515
- return await this.secureStorage.getClientKeyShare(resolvedChainName, accountAddress);
2516
- } catch (error) {
2517
- logError({
2518
- message: `Error getting client key shares from secure storage for accountAddress: ${accountAddress}`,
2519
- error: error,
2520
- context: {
2521
- accountAddress,
2522
- chainName: resolvedChainName
2523
- }
2524
- });
2525
- return [];
2526
- }
2527
- }
2528
- // Fallback to localStorage (browser)
2492
+ * helper function to store encrypted backup by wallet from iframe local storage
2493
+ */ async getClientKeySharesFromLocalStorage({ accountAddress }) {
2494
+ var _this_storage;
2529
2495
  const walletObject = await ((_this_storage = this.storage) == null ? void 0 : _this_storage.getItem(accountAddress));
2530
2496
  if (!walletObject) {
2531
2497
  this.logger.debug(`[DynamicWaasWalletClient] No item found in iframe local storage for accountAddress: ${accountAddress}`);
@@ -2551,67 +2517,16 @@ class DynamicWalletClient {
2551
2517
  }
2552
2518
  }
2553
2519
  /**
2554
- * Helper function to store client key shares in storage.
2555
- * Uses secureStorage when available (mobile), otherwise falls back to localStorage (browser).
2556
- */ async setClientKeySharesToStorage({ accountAddress, clientKeyShares, overwriteOrMerge = 'merge', chainName }) {
2557
- var _this_walletMap_accountAddress, _this_storage;
2558
- // Get chainName from walletMap if not provided
2559
- const resolvedChainName = chainName || ((_this_walletMap_accountAddress = this.walletMap[accountAddress]) == null ? void 0 : _this_walletMap_accountAddress.chainName);
2560
- // Use secure storage if available (mobile)
2561
- if (this.secureStorage) {
2562
- if (!resolvedChainName) {
2563
- const error = new Error(`secureStorage requires chainName but it was not provided for accountAddress: ${accountAddress}`);
2564
- logError({
2565
- message: error.message,
2566
- error,
2567
- context: {
2568
- accountAddress
2569
- }
2570
- });
2571
- throw error;
2572
- }
2573
- try {
2574
- const sharesToStore = overwriteOrMerge === 'overwrite' ? clientKeyShares : mergeUniqueKeyShares(await this.getClientKeySharesFromStorage({
2575
- accountAddress,
2576
- chainName: resolvedChainName
2577
- }), clientKeyShares);
2578
- await this.secureStorage.setClientKeyShare(resolvedChainName, accountAddress, sharesToStore);
2579
- return;
2580
- } catch (error) {
2581
- logError({
2582
- message: `Error setting client key shares in secure storage for accountAddress: ${accountAddress}`,
2583
- error: error,
2584
- context: {
2585
- accountAddress,
2586
- chainName: resolvedChainName
2587
- }
2588
- });
2589
- throw error;
2590
- }
2591
- }
2592
- // Fallback to localStorage (browser)
2520
+ * helper function to store encrypted backup by wallet from iframe local storage
2521
+ */ async setClientKeySharesToLocalStorage({ accountAddress, clientKeyShares, overwriteOrMerge = 'merge' }) {
2522
+ var _this_storage;
2593
2523
  const stringifiedClientKeyShares = JSON.stringify({
2594
- clientKeyShares: overwriteOrMerge === 'overwrite' ? clientKeyShares : mergeUniqueKeyShares(await this.getClientKeySharesFromStorage({
2595
- accountAddress,
2596
- chainName: resolvedChainName
2524
+ clientKeyShares: overwriteOrMerge === 'overwrite' ? clientKeyShares : mergeUniqueKeyShares(await this.getClientKeySharesFromLocalStorage({
2525
+ accountAddress
2597
2526
  }), clientKeyShares)
2598
2527
  });
2599
2528
  await ((_this_storage = this.storage) == null ? void 0 : _this_storage.setItem(accountAddress, stringifiedClientKeyShares));
2600
2529
  }
2601
- /**
2602
- * Ensures that client key shares exist for the given account address.
2603
- * Throws an error if no shares are found.
2604
- * This method enforces share presence before sensitive operations.
2605
- */ async ensureClientShare(accountAddress, chainName) {
2606
- const shares = await this.getClientKeySharesFromStorage({
2607
- accountAddress,
2608
- chainName
2609
- });
2610
- if (!shares || shares.length === 0) {
2611
- throw new Error(`Client key share is missing for account address: ${accountAddress}`);
2612
- }
2613
- return shares;
2614
- }
2615
2530
  async backupSharesWithDistribution({ accountAddress, password, signedSessionId, distribution, preserveDelegatedLocation = false }) {
2616
2531
  const dynamicRequestId = v4();
2617
2532
  try {
@@ -2718,10 +2633,7 @@ class DynamicWalletClient {
2718
2633
  this.walletMap[accountAddress] = _extends({}, this.walletMap[accountAddress], {
2719
2634
  clientKeySharesBackupInfo: updatedBackupInfo
2720
2635
  });
2721
- // Store wallet map metadata in localStorage (browser only, not needed on mobile)
2722
- if (this.storage) {
2723
- await this.storage.setItem(this.storageKey, JSON.stringify(this.walletMap));
2724
- }
2636
+ await this.storage.setItem(this.storageKey, JSON.stringify(this.walletMap));
2725
2637
  return backupData;
2726
2638
  } catch (error) {
2727
2639
  logError({
@@ -2767,7 +2679,7 @@ class DynamicWalletClient {
2767
2679
  * @returns Promise with backup metadata including share locations and IDs
2768
2680
  */ async storeEncryptedBackupByWallet({ accountAddress, clientKeyShares = undefined, password = undefined, signedSessionId, cloudProviders = [], delegatedKeyshare = undefined }) {
2769
2681
  var _this_walletMap_accountAddress, _this_walletMap_accountAddress1;
2770
- const keySharesToBackup = clientKeyShares != null ? clientKeyShares : await this.getClientKeySharesFromStorage({
2682
+ const keySharesToBackup = clientKeyShares != null ? clientKeyShares : await this.getClientKeySharesFromLocalStorage({
2771
2683
  accountAddress
2772
2684
  });
2773
2685
  // Check if we should backup to cloud providers (either requested or already exists)
@@ -2950,15 +2862,12 @@ class DynamicWalletClient {
2950
2862
  password: password != null ? password : this.environmentId
2951
2863
  })));
2952
2864
  if (storeRecoveredShares) {
2953
- await this.setClientKeySharesToStorage({
2865
+ await this.setClientKeySharesToLocalStorage({
2954
2866
  accountAddress,
2955
2867
  clientKeyShares: decryptedKeyShares,
2956
2868
  overwriteOrMerge: 'merge'
2957
2869
  });
2958
- // Store wallet map metadata in localStorage (browser only, not needed on mobile)
2959
- if (this.storage) {
2960
- await this.storage.setItem(this.storageKey, JSON.stringify(this.walletMap));
2961
- }
2870
+ await this.storage.setItem(this.storageKey, JSON.stringify(this.walletMap));
2962
2871
  }
2963
2872
  return decryptedKeyShares;
2964
2873
  } catch (error) {
@@ -2975,12 +2884,6 @@ class DynamicWalletClient {
2975
2884
  }
2976
2885
  }
2977
2886
  async restoreWallets() {
2978
- // On mobile with secureStorage, walletMap metadata is not persisted in localStorage
2979
- // Key shares are stored in secureStorage instead
2980
- if (!this.storage) {
2981
- // Mobile mode: walletMap will be populated from server on first getWallet call
2982
- return;
2983
- }
2984
2887
  const wallets = await this.storage.getItem(this.storageKey);
2985
2888
  if (!wallets) {
2986
2889
  return;
@@ -3258,20 +3161,18 @@ class DynamicWalletClient {
3258
3161
  }
3259
3162
  }
3260
3163
  async exportClientKeyshares({ accountAddress, password, signedSessionId }) {
3261
- var _this_walletMap_accountAddress;
3262
3164
  await this.verifyPassword({
3263
3165
  accountAddress,
3264
3166
  password,
3265
3167
  walletOperation: WalletOperation.REACH_ALL_PARTIES,
3266
3168
  signedSessionId
3267
3169
  });
3170
+ const clientKeyShares = await this.getClientKeySharesFromLocalStorage({
3171
+ accountAddress
3172
+ });
3268
3173
  if (!accountAddress) {
3269
3174
  throw new Error('Must provide an account address');
3270
3175
  }
3271
- // Get chainName from walletMap
3272
- const chainName = (_this_walletMap_accountAddress = this.walletMap[accountAddress]) == null ? void 0 : _this_walletMap_accountAddress.chainName;
3273
- // Ensure client key shares exist before export
3274
- const clientKeyShares = await this.ensureClientShare(accountAddress, chainName);
3275
3176
  const derivationPath = this.walletMap[accountAddress].derivationPath;
3276
3177
  const text = JSON.stringify({
3277
3178
  keyShares: clientKeyShares,
@@ -3290,7 +3191,7 @@ class DynamicWalletClient {
3290
3191
  walletOperation: WalletOperation.REACH_THRESHOLD,
3291
3192
  signedSessionId
3292
3193
  });
3293
- return this.getClientKeySharesFromStorage({
3194
+ return this.getClientKeySharesFromLocalStorage({
3294
3195
  accountAddress
3295
3196
  });
3296
3197
  }
@@ -3328,7 +3229,7 @@ class DynamicWalletClient {
3328
3229
  shareCount
3329
3230
  });
3330
3231
  const { dynamic: requiredDynamicKeyShareIds = [] } = shares;
3331
- const clientKeyShares = await this.getClientKeySharesFromStorage({
3232
+ const clientKeyShares = await this.getClientKeySharesFromLocalStorage({
3332
3233
  accountAddress
3333
3234
  });
3334
3235
  if (requiredDynamicKeyShareIds.length <= ((clientKeyShares == null ? void 0 : clientKeyShares.length) || 0)) {
@@ -3412,7 +3313,7 @@ class DynamicWalletClient {
3412
3313
  const clientKeySharesBackupInfo = await this.getWalletClientKeyShareBackupInfo({
3413
3314
  accountAddress
3414
3315
  });
3415
- const clientKeyShares = await this.getClientKeySharesFromStorage({
3316
+ const clientKeyShares = await this.getClientKeySharesFromLocalStorage({
3416
3317
  accountAddress
3417
3318
  });
3418
3319
  if (walletOperation === WalletOperation.REACH_ALL_PARTIES || walletOperation === WalletOperation.REFRESH || walletOperation === WalletOperation.RESHARE) {
@@ -3495,10 +3396,10 @@ class DynamicWalletClient {
3495
3396
  signedSessionId,
3496
3397
  shareCount
3497
3398
  });
3498
- const existingKeyShares = await this.getClientKeySharesFromStorage({
3399
+ const existingKeyShares = await this.getClientKeySharesFromLocalStorage({
3499
3400
  accountAddress
3500
3401
  });
3501
- await this.setClientKeySharesToStorage({
3402
+ await this.setClientKeySharesToLocalStorage({
3502
3403
  accountAddress,
3503
3404
  clientKeyShares: mergeUniqueKeyShares(existingKeyShares, decryptedKeyShares)
3504
3405
  });
@@ -3621,8 +3522,7 @@ class DynamicWalletClient {
3621
3522
  }
3622
3523
  }
3623
3524
  async restoreRooms() {
3624
- var _this_storage;
3625
- const roomData = await ((_this_storage = this.storage) == null ? void 0 : _this_storage.getItem(`${this.storageKey}-rooms`));
3525
+ const roomData = await this.storage.getItem(`${this.storageKey}-rooms`);
3626
3526
  if (!roomData) {
3627
3527
  return {};
3628
3528
  }
@@ -3649,9 +3549,8 @@ class DynamicWalletClient {
3649
3549
  return DynamicWalletClient.rooms;
3650
3550
  }
3651
3551
  async setRooms(numberOfParties, rooms) {
3652
- var _this_storage;
3653
3552
  DynamicWalletClient.rooms[numberOfParties] = rooms;
3654
- await ((_this_storage = this.storage) == null ? void 0 : _this_storage.setItem(`${this.storageKey}-rooms`, JSON.stringify(DynamicWalletClient.rooms)));
3553
+ await this.storage.setItem(`${this.storageKey}-rooms`, JSON.stringify(DynamicWalletClient.rooms));
3655
3554
  }
3656
3555
  getNumberOfParties(roomType, thresholdSignatureScheme) {
3657
3556
  const MPC_SCHEME_CONFIG = MPC_CONFIG[thresholdSignatureScheme];
@@ -3697,7 +3596,7 @@ class DynamicWalletClient {
3697
3596
  }, traceContext);
3698
3597
  }
3699
3598
  constructor({ environmentId, baseApiUrl, baseMPCRelayApiUrl, storageKey, debug, featureFlags, authMode = AuthMode.HEADER, authToken = undefined, backupServiceAuthToken, // Represents the version of the client SDK used by developer
3700
- sdkVersion, forwardMPCClient, baseClientKeysharesRelayApiUrl, iCloudConfig }, internalOptions){
3599
+ sdkVersion, forwardMPCClient, baseClientKeysharesRelayApiUrl, iCloudConfig }){
3701
3600
  this.userId = undefined;
3702
3601
  this.sessionId = undefined;
3703
3602
  this.initializePromise = null;
@@ -3714,10 +3613,6 @@ class DynamicWalletClient {
3714
3613
  this.authMode = authMode;
3715
3614
  this.sdkVersion = sdkVersion;
3716
3615
  this.baseClientKeysharesRelayApiUrl = baseClientKeysharesRelayApiUrl;
3717
- // Set secure storage adapter if provided (internal use only)
3718
- if (internalOptions == null ? void 0 : internalOptions.secureStorage) {
3719
- this.secureStorage = internalOptions.secureStorage;
3720
- }
3721
3616
  this.apiClient = new DynamicApiClient({
3722
3617
  environmentId,
3723
3618
  authToken,
@@ -3731,14 +3626,12 @@ class DynamicWalletClient {
3731
3626
  this.debug = Boolean(debug);
3732
3627
  this.logger.setLogLevel(this.debug ? LogLevel.DEBUG : DEFAULT_LOG_LEVEL);
3733
3628
  this.featureFlags = featureFlags || {};
3734
- // setup storage (only used when secureStorage is not set)
3735
- if (!this.secureStorage) {
3736
- if (supportsLocalStorage()) {
3737
- this.storage = localStorageAdapter;
3738
- } else {
3739
- this.memoryStorage = {};
3740
- this.storage = memoryLocalStorageAdapter(this.memoryStorage);
3741
- }
3629
+ // setup storage
3630
+ if (supportsLocalStorage()) {
3631
+ this.storage = localStorageAdapter;
3632
+ } else {
3633
+ this.memoryStorage = {};
3634
+ this.storage = memoryLocalStorageAdapter(this.memoryStorage);
3742
3635
  }
3743
3636
  const environment = getEnvironmentFromUrl(baseApiUrl);
3744
3637
  this.iframeDomain = IFRAME_DOMAIN_MAP[environment];
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@dynamic-labs-wallet/browser",
3
- "version": "0.0.248",
3
+ "version": "0.0.249",
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.248",
7
+ "@dynamic-labs-wallet/core": "0.0.249",
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
@@ -5,24 +5,6 @@ import { RoomTypeEnum, type SignMessageContext } from '@dynamic-labs/sdk-api-cor
5
5
  import type { ClientInitKeygenResult, ClientKeyShare } from './mpc/types.js';
6
6
  import { type SupportedStorage } from './services/localStorage.js';
7
7
  import { type Room, type ShareDistribution, type WalletBusyOperation, type WalletProperties } from './types.js';
8
- /**
9
- * Internal secure storage adapter interface for mobile TEE-backed storage.
10
- * This is NOT part of the public API and should only be injected by internal React Native integration.
11
- *
12
- * Note: chainName is required to avoid storage collisions between different chains
13
- * that might use the same address format (e.g., EVM and SVM both use hex addresses).
14
- */
15
- export interface SecureStorageAdapter {
16
- getClientKeyShare(chainName: string, accountAddress: string): Promise<ClientKeyShare[]>;
17
- setClientKeyShare(chainName: string, accountAddress: string, shares: ClientKeyShare[]): Promise<void>;
18
- }
19
- /**
20
- * Internal options for DynamicWalletClient constructor.
21
- * This is NOT part of the public API.
22
- */
23
- export interface DynamicWalletClientInternalOptions {
24
- secureStorage?: SecureStorageAdapter;
25
- }
26
8
  export declare class DynamicWalletClient {
27
9
  environmentId: string;
28
10
  storageKey: string;
@@ -33,7 +15,7 @@ export declare class DynamicWalletClient {
33
15
  protected logger: import("@dynamic-labs/logger").Logger;
34
16
  protected apiClient: DynamicApiClient;
35
17
  protected walletMap: Record<string, WalletProperties>;
36
- protected storage: SupportedStorage | undefined;
18
+ protected storage: SupportedStorage;
37
19
  protected memoryStorage: {
38
20
  [key: string]: string;
39
21
  } | null;
@@ -50,13 +32,7 @@ export declare class DynamicWalletClient {
50
32
  protected static roomsInitializing: Record<number, boolean>;
51
33
  protected static walletBusyMap: Record<string, WalletBusyOperation | undefined>;
52
34
  protected static walletBusyPromiseMap: Record<string, Promise<void> | undefined>;
53
- /**
54
- * Internal secure storage adapter for mobile TEE-backed storage.
55
- * When set, all key share operations use this instead of localStorage.
56
- * This is NOT part of the public API.
57
- */
58
- private readonly secureStorage?;
59
- constructor({ environmentId, baseApiUrl, baseMPCRelayApiUrl, storageKey, debug, featureFlags, authMode, authToken, backupServiceAuthToken, sdkVersion, forwardMPCClient, baseClientKeysharesRelayApiUrl, iCloudConfig, }: DynamicWalletClientProps, internalOptions?: DynamicWalletClientInternalOptions);
35
+ constructor({ environmentId, baseApiUrl, baseMPCRelayApiUrl, storageKey, debug, featureFlags, authMode, authToken, backupServiceAuthToken, sdkVersion, forwardMPCClient, baseClientKeysharesRelayApiUrl, iCloudConfig, }: DynamicWalletClientProps);
60
36
  private initializeForwardMPCClient;
61
37
  getWalletBusyOperation(accountAddress: string): WalletBusyOperation | undefined;
62
38
  isWalletBusy(accountAddress: string): boolean;
@@ -278,29 +254,19 @@ export declare class DynamicWalletClient {
278
254
  password?: string;
279
255
  }): Promise<string>;
280
256
  /**
281
- * Helper function to get client key shares from storage.
282
- * Uses secureStorage when available (mobile), otherwise falls back to localStorage (browser).
257
+ * helper function to store encrypted backup by wallet from iframe local storage
283
258
  */
284
- getClientKeySharesFromStorage({ accountAddress, chainName, }: {
259
+ getClientKeySharesFromLocalStorage({ accountAddress, }: {
285
260
  accountAddress: string;
286
- chainName?: string;
287
261
  }): Promise<ClientKeyShare[]>;
288
262
  /**
289
- * Helper function to store client key shares in storage.
290
- * Uses secureStorage when available (mobile), otherwise falls back to localStorage (browser).
263
+ * helper function to store encrypted backup by wallet from iframe local storage
291
264
  */
292
- setClientKeySharesToStorage({ accountAddress, clientKeyShares, overwriteOrMerge, chainName, }: {
265
+ setClientKeySharesToLocalStorage({ accountAddress, clientKeyShares, overwriteOrMerge, }: {
293
266
  accountAddress: string;
294
267
  clientKeyShares: ClientKeyShare[];
295
268
  overwriteOrMerge?: 'overwrite' | 'merge';
296
- chainName?: string;
297
269
  }): Promise<void>;
298
- /**
299
- * Ensures that client key shares exist for the given account address.
300
- * Throws an error if no shares are found.
301
- * This method enforces share presence before sensitive operations.
302
- */
303
- private ensureClientShare;
304
270
  backupSharesWithDistribution({ accountAddress, password, signedSessionId, distribution, preserveDelegatedLocation, }: {
305
271
  accountAddress: string;
306
272
  password?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../packages/src/client.ts"],"names":[],"mappings":"AACA,OAAO,EAKL,cAAc,EAGd,WAAW,EACX,KAAK,cAAc,EACpB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,QAAQ,EACR,cAAc,EACd,gBAAgB,EAIhB,wBAAwB,EACxB,eAAe,EAUf,KAAK,oCAAoC,EACzC,KAAK,aAAa,EAClB,KAAK,wBAAwB,EAC7B,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,YAAY,EAClB,MAAM,2BAA2B,CAAC;AAKnC,OAAO,EAAY,KAAK,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EACL,YAAY,EACZ,KAAK,kBAAkB,EACxB,MAAM,4BAA4B,CAAC;AAgBpC,OAAO,KAAK,EACV,sBAAsB,EACtB,cAAc,EAEf,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAIL,KAAK,gBAAgB,EACtB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EASL,KAAK,IAAI,EACT,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACtB,MAAM,YAAY,CAAC;AAcpB;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACnC,iBAAiB,CACf,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IAC7B,iBAAiB,CACf,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,cAAc,EAAE,GACvB,OAAO,CAAC,IAAI,CAAC,CAAC;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,kCAAkC;IACjD,aAAa,CAAC,EAAE,oBAAoB,CAAC;CACtC;AAED,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,GAAG,SAAS,CAAC;IAChD,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,SAAS,CAAC,iBAAiB,UAAS;IACpC,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;IAC9B,SAAS,CAAC,8BAA8B,CAAC,EAAE,MAAM,CAAC;IAClD,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAM;IACpD,SAAS,CAAC,MAAM,CAAC,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAM;IACjE,SAAS,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,CACpC,MAAM,EACN,mBAAmB,GAAG,SAAS,CAChC,CAAM;IACP,SAAS,CAAC,MAAM,CAAC,oBAAoB,EAAE,MAAM,CAC3C,MAAM,EACN,OAAO,CAAC,IAAI,CAAC,GAAG,SAAS,CAC1B,CAAM;IACP;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAuB;gBAGpD,EACE,aAAa,EACb,UAAU,EACV,kBAAkB,EAClB,UAAU,EACV,KAAK,EACL,YAAY,EACZ,QAA0B,EAC1B,SAAqB,EACrB,sBAAsB,EAEtB,UAAU,EACV,gBAAgB,EAChB,8BAA8B,EAC9B,YAAY,GACb,EAAE,wBAAwB,EAC3B,eAAe,CAAC,EAAE,kCAAkC;YA2DxC,0BAA0B;IA8BjC,sBAAsB,CAC3B,cAAc,EAAE,MAAM,GACrB,mBAAmB,GAAG,SAAS;IAI3B,YAAY,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO;YAItC,oBAAoB;YAsBpB,kBAAkB;IA0CzB,WAAW,IAAI,QAAQ;IAI9B;;;OAGG;IACU,sBAAsB;IAInC;;;;OAIG;IACH,OAAO,CAAC,uBAAuB;IA+BzB,iBAAiB,CAAC,SAAS,EAAE,MAAM;IAuDnC,UAAU,CAAC,YAAY,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAgBxE;;OAEG;cACa,WAAW,CACzB,YAAY,CAAC,EAAE,YAAY,GAC1B,OAAO,CAAC,gBAAgB,CAAC;IAyBtB,sBAAsB,CAAC,EAC3B,SAAS,EACT,eAAe,EACf,gBAAgB,EAChB,wBAAwB,EACxB,aAAa,EACb,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,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,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;IAqBK,sBAAsB,CAAC,EAC3B,SAAS,EACT,wBAAwB,EACxB,aAAa,GACd,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,wBAAwB,EAAE,wBAAwB,CAAC;QACnD,aAAa,CAAC,EAAE,aAAa,CAAC;KAC/B,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAmB/B,eAAe,CAAC,EACpB,SAAS,EACT,QAAQ,EACR,cAAc,EACd,aAAa,GACd,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,cAAc,CAAC;QACzB,cAAc,EAAE,WAAW,GAAG,SAAS,CAAC;QACxC,aAAa,CAAC,EAAE,aAAa,CAAC;KAC/B,GAAG,OAAO,CAAC,cAAc,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,CAAC;IAoBvD,YAAY,CAAC,EACjB,SAAS,EACT,MAAM,EACN,eAAe,EACf,uBAAuB,EACvB,wBAAwB,EACxB,aAAa,GACd,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;QACnD,aAAa,CAAC,EAAE,aAAa,CAAC;KAC/B,GAAG,OAAO,CAAC;QACV,YAAY,EAAE,cAAc,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,CAAC;QAC/D,mBAAmB,EAAE,cAAc,EAAE,CAAC;KACvC,CAAC;IA8DI,MAAM,CAAC,EACX,SAAS,EACT,wBAAwB,EACxB,aAAa,EACb,OAAO,EACP,kBAAkB,EAClB,YAAY,GACb,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,wBAAwB,EAAE,wBAAwB,CAAC;QACnD,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,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;QACxE,YAAY,CAAC,EAAE,YAAY,CAAC;KAC7B,GAAG,OAAO,CAAC;QACV,YAAY,EAAE,cAAc,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,CAAC;QAC/D,eAAe,EAAE,cAAc,EAAE,CAAC;KACnC,CAAC;IAuFI,mBAAmB,CAAC,EACxB,SAAS,EACT,UAAU,EACV,wBAAwB,EACxB,aAAa,EACb,OAAO,EACP,kBAAkB,EAClB,YAAY,EACZ,cAAc,GACf,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;QACnB,wBAAwB,EAAE,wBAAwB,CAAC;QACnD,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,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;QACxE,YAAY,CAAC,EAAE,YAAY,CAAC;QAC5B,4DAA4D;QAC5D,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,GAAG,OAAO,CAAC;QACV,YAAY,EAAE,cAAc,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,CAAC;QAC/D,eAAe,EAAE,cAAc,EAAE,CAAC;KACnC,CAAC;IA0II,UAAU,CAAC,EACf,QAAQ,EACR,OAAO,EACP,WAAW,EACX,QAAQ,EACR,MAAM,EACN,OAAO,EACP,OAAO,EACP,gBAAgB,EAChB,YAAY,EACZ,aAAa,GACd,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,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,OAAO,CAAC,EAAE,kBAAkB,CAAC;QAC7B,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;QACjC,YAAY,CAAC,EAAE,YAAY,CAAC;QAC5B,aAAa,CAAC,EAAE,aAAa,CAAC;KAC/B;IA6BK,oBAAoB,CAAC,EACzB,SAAS,EACT,OAAO,EACP,MAAM,EACN,QAAQ,EACR,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,aAAa,GACd,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,GAAG,UAAU,CAAC;QAC7B,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,cAAc,CAAC;QACzB,cAAc,EAAE,WAAW,GAAG,SAAS,CAAC;QACxC,gBAAgB,EAAE,MAAM,GAAG,UAAU,GAAG,WAAW,CAAC;QACpD,gBAAgB,EAAE,MAAM,CAAC;QACzB,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,YAAY,CAAC,EAAE,YAAY,CAAC;QAC5B,aAAa,CAAC,EAAE,aAAa,CAAC;KAC/B,GAAG,OAAO,CAAC,UAAU,GAAG,cAAc,CAAC;IAgElC,UAAU,CAAC,EACf,SAAS,EACT,OAAO,EACP,MAAM,EACN,QAAQ,EACR,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,aAAa,GACd,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;QACtB,YAAY,CAAC,EAAE,YAAY,CAAC;QAC5B,aAAa,CAAC,EAAE,aAAa,CAAC;KAC/B,GAAG,OAAO,CAAC,UAAU,GAAG,cAAc,CAAC;IA0ElC,IAAI,CAAC,EACT,cAAc,EACd,OAAO,EACP,SAAS,EACT,QAAoB,EACpB,WAAmB,EACnB,eAAe,EACf,QAAQ,EACR,OAAO,EACP,OAAO,EACP,YAAY,EACZ,aAAa,GACd,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;QACjC,YAAY,CAAC,EAAE,YAAY,CAAC;QAC5B,aAAa,CAAC,EAAE,aAAa,CAAC;KAC/B,GAAG,OAAO,CAAC,UAAU,GAAG,cAAc,CAAC;IAsHlC,0BAA0B,CAAC,EAC/B,cAAc,EACd,SAAS,EACT,QAAoB,EACpB,eAAe,EACf,QAAQ,EACR,YAAY,GACb,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;QAClB,YAAY,CAAC,EAAE,YAAY,CAAC;KAC7B;YAgBa,kCAAkC;IA4F1C,WAAW,CAAC,EAChB,SAAS,EACT,cAAc,EACd,aAAa,GACd,EAAE;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,cAAc,EAAE,cAAc,CAAC;QAC/B,aAAa,CAAC,EAAE,aAAa,CAAC;KAC/B;IAsCD;;;;;;;;;;;;;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;IA8CI,OAAO,CAAC,EACZ,SAAS,EACT,cAAc,EACd,2BAA2B,EAC3B,2BAA2B,EAC3B,QAAoB,EACpB,eAAe,EACf,cAAmB,EACnB,4BAAoC,EACpC,QAAQ,EACR,gBAAwB,GACzB,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,cAAc,CAAC,EAAE,cAAc,EAAE,CAAC;QAClC,4BAA4B,CAAC,EAAE,OAAO,CAAC;QACvC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,gBAAgB,CAAC,EAAE,OAAO,CAAC;KAC5B;YAoBa,eAAe;YAwNf,0BAA0B;IAuElC,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;IAgBK,gBAAgB,CAAC,EACrB,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;IAYD,OAAO,CAAC,kBAAkB;IAsBpB,SAAS,CAAC,EACd,cAAc,EACd,SAAS,EACT,aAAa,EACb,QAAoB,EACpB,eAAe,EACf,QAAQ,EACR,YAAY,GACb,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,eAAe,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,YAAY,CAAC,EAAE,YAAY,CAAC;KAC7B;;;YAyFa,wBAAwB;YAyBxB,gBAAgB;YAgEhB,0BAA0B;IAoBlC,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;IAmEI,eAAe,CAAC,EACpB,QAAQ,EACR,QAAQ,GACT,EAAE;QACD,QAAQ,EAAE,cAAc,CAAC;QACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB;IAaD;;;OAGG;IACG,6BAA6B,CAAC,EAClC,cAAc,EACd,SAAS,GACV,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;QACvB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAsE7B;;;OAGG;IACG,2BAA2B,CAAC,EAChC,cAAc,EACd,eAAe,EACf,gBAA0B,EAC1B,SAAS,GACV,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;QACvB,eAAe,EAAE,cAAc,EAAE,CAAC;QAClC,gBAAgB,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC;QACzC,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,GAAG,OAAO,CAAC,IAAI,CAAC;IAmEjB;;;;OAIG;YACW,iBAAiB;IAkBzB,4BAA4B,CAAC,EACjC,cAAc,EACd,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,yBAAiC,GAClC,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,eAAe,EAAE,MAAM,CAAC;QACxB,YAAY,EAAE,iBAAiB,CAAC;QAChC,yBAAyB,CAAC,EAAE,OAAO,CAAC;KACrC;;;;;;8BApuEkB,CAAC;;;IAq4EpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;IACG,4BAA4B,CAAC,EACjC,cAAc,EACd,eAA2B,EAC3B,QAAoB,EACpB,eAAe,EACf,cAAmB,EACnB,iBAA6B,GAC9B,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,cAAc,CAAC,EAAE,cAAc,EAAE,CAAC;QAClC,iBAAiB,CAAC,EAAE,cAAc,CAAC;KACpC;;;;;;;8BAl7EkB,CAAC;;;IA+/Ed,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;IAyEK,cAAc;IAepB;;;;OAIG;YACW,8BAA8B;IAwD5C;;;;;;;;;OASG;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,IAAI,CAAC;IAYjB;;;;;;;;;OASG;IACG,uBAAuB,CAAC,EAC5B,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,IAAI,CAAC;IASjB;;;;;;OAMG;YACW,qBAAqB;IA2BnC;;;;;;;;;;;OAWG;YACW,4BAA4B;IAqD1C;;;;;;OAMG;YACW,uBAAuB;IAmC/B,oCAAoC,CAAC,EACzC,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,IAAI,CAAC;IAyGX,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;IAmCK,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;IAkGK,UAAU;IAkDhB;;;OAGG;IACH,aAAa,CAAC,SAAS,EAAE,MAAM;IAQzB,WAAW,CAAC,EAChB,QAAQ,EACR,wBAAwB,EACxB,SAAa,GACd,EAAE;QACD,QAAQ,EAAE,YAAY,CAAC;QACvB,wBAAwB,EAAE,wBAAwB,CAAC;QACnD,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB;IAuCK,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IAyB/C,QAAQ,CACZ,QAAQ,CAAC,EAAE,YAAY,EACvB,wBAAwB,CAAC,EAAE,wBAAwB,GAClD,OAAO,CAAC,IAAI,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IAWrC,QAAQ,CAAC,eAAe,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE;IAQrD,kBAAkB,CAChB,QAAQ,EAAE,YAAY,EACtB,wBAAwB,EAAE,wBAAwB,GACjD,MAAM;IAOH,OAAO,CACX,QAAQ,EAAE,YAAY,EACtB,wBAAwB,EAAE,wBAAwB,GACjD,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC;IA+B5B;;OAEG;IACI,UAAU,CACf,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,iBAAiB,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC/C,IAAI;IAcP,eAAe,CACb,YAAY,CAAC,EAAE,YAAY,GAC1B,YAAY,GAAG;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE;CAQhD"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../packages/src/client.ts"],"names":[],"mappings":"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"}