@dynamic-labs-sdk/client 1.19.1 → 1.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (190) hide show
  1. package/dist/{updateAuthFromVerifyResponse-D4au3jUv.native.esm.js → NativeModuleNotLinkedError-Ds_t3AZQ.native.esm.js} +158 -27
  2. package/dist/NativeModuleNotLinkedError-Ds_t3AZQ.native.esm.js.map +1 -0
  3. package/dist/client/core/createCore/getInitialState.d.ts.map +1 -1
  4. package/dist/client/createDynamicClient/assertClientProps/assertClientProps.d.ts +16 -0
  5. package/dist/client/createDynamicClient/assertClientProps/assertClientProps.d.ts.map +1 -0
  6. package/dist/client/createDynamicClient/assertClientProps/index.d.ts +2 -0
  7. package/dist/client/createDynamicClient/assertClientProps/index.d.ts.map +1 -0
  8. package/dist/client/createDynamicClient/createDynamicClient.d.ts.map +1 -1
  9. package/dist/client/types/DynamicClientConfig.d.ts +88 -6
  10. package/dist/client/types/DynamicClientConfig.d.ts.map +1 -1
  11. package/dist/consumeMfaTokenIfRequiredForAction-CWVbmQ2A.cjs +17 -0
  12. package/dist/consumeMfaTokenIfRequiredForAction-CWVbmQ2A.cjs.map +1 -0
  13. package/dist/consumeMfaTokenIfRequiredForAction-C_IvLTH6.esm.js +12 -0
  14. package/dist/consumeMfaTokenIfRequiredForAction-C_IvLTH6.esm.js.map +1 -0
  15. package/dist/core.cjs +13 -12
  16. package/dist/core.cjs.map +1 -1
  17. package/dist/core.esm.js +6 -5
  18. package/dist/core.esm.js.map +1 -1
  19. package/dist/core.native.esm.js +5 -5
  20. package/dist/errors/WaasLoadFailedError.d.ts +45 -0
  21. package/dist/errors/WaasLoadFailedError.d.ts.map +1 -0
  22. package/dist/exports/index.d.ts +1 -0
  23. package/dist/exports/index.d.ts.map +1 -1
  24. package/dist/exports/waas.d.ts +10 -0
  25. package/dist/exports/waas.d.ts.map +1 -1
  26. package/dist/{getNetworkProviderFromNetworkId-DmH039jx.cjs → getNetworkProviderFromNetworkId-5V4Cf8A_.cjs} +150 -70
  27. package/dist/getNetworkProviderFromNetworkId-5V4Cf8A_.cjs.map +1 -0
  28. package/dist/{getNetworkProviderFromNetworkId-Ct6nH2tC.esm.js → getNetworkProviderFromNetworkId-DhS1snCk.esm.js} +149 -68
  29. package/dist/getNetworkProviderFromNetworkId-DhS1snCk.esm.js.map +1 -0
  30. package/dist/{getNetworkProviderFromNetworkId-DL6OXPUn.native.esm.js → getNetworkProviderFromNetworkId-DudGvTmd.native.esm.js} +151 -146
  31. package/dist/getNetworkProviderFromNetworkId-DudGvTmd.native.esm.js.map +1 -0
  32. package/dist/{getSignedSessionId-Dz4U61DG.cjs → getSignedSessionId-E6FIx5aj.cjs} +2 -17
  33. package/dist/getSignedSessionId-E6FIx5aj.cjs.map +1 -0
  34. package/dist/{getSignedSessionId-CPautem1.native.esm.js → getSignedSessionId-ekp3lswQ.esm.js} +3 -12
  35. package/dist/getSignedSessionId-ekp3lswQ.esm.js.map +1 -0
  36. package/dist/{getSignedSessionId-CAQwZYYk.esm.js → getSignedSessionId-xZGFa4nS.native.esm.js} +3 -3
  37. package/dist/{getSignedSessionId-CPautem1.native.esm.js.map → getSignedSessionId-xZGFa4nS.native.esm.js.map} +1 -1
  38. package/dist/{getWalletProviderByKey-CSVSMios.cjs → getWalletProviderByKey-BwivhTYu.cjs} +2 -2
  39. package/dist/{getWalletProviderByKey-CSVSMios.cjs.map → getWalletProviderByKey-BwivhTYu.cjs.map} +1 -1
  40. package/dist/{getWalletProviderByKey-DTBGx_qd.esm.js → getWalletProviderByKey-CS299i1V.esm.js} +2 -2
  41. package/dist/{getWalletProviderByKey-DTBGx_qd.esm.js.map → getWalletProviderByKey-CS299i1V.esm.js.map} +1 -1
  42. package/dist/{getWalletProviderByKey-BKveb5Rh.native.esm.js → getWalletProviderByKey-CYGDw6-5.native.esm.js} +2 -2
  43. package/dist/{getWalletProviderByKey-BKveb5Rh.native.esm.js.map → getWalletProviderByKey-CYGDw6-5.native.esm.js.map} +1 -1
  44. package/dist/index.cjs +58 -39
  45. package/dist/index.cjs.map +1 -1
  46. package/dist/index.esm.js +36 -18
  47. package/dist/index.esm.js.map +1 -1
  48. package/dist/index.native.esm.js +36 -18
  49. package/dist/index.native.esm.js.map +1 -1
  50. package/dist/{isDynamicWaasEnabled-Dmbdiybh.cjs → isDynamicWaasEnabled-BEVAshnS.cjs} +2 -3
  51. package/dist/{isDynamicWaasEnabled-Dmbdiybh.cjs.map → isDynamicWaasEnabled-BEVAshnS.cjs.map} +1 -1
  52. package/dist/{isDynamicWaasEnabled-gu-9QF8-.native.esm.js → isDynamicWaasEnabled-C8Fb1xHn.native.esm.js} +2 -2
  53. package/dist/{isDynamicWaasEnabled-gu-9QF8-.native.esm.js.map → isDynamicWaasEnabled-C8Fb1xHn.native.esm.js.map} +1 -1
  54. package/dist/{isDynamicWaasEnabled-Bb9e8w3u.esm.js → isDynamicWaasEnabled-D5e2K02u.esm.js} +2 -2
  55. package/dist/{isDynamicWaasEnabled-Bb9e8w3u.esm.js.map → isDynamicWaasEnabled-D5e2K02u.esm.js.map} +1 -1
  56. package/dist/{isMfaRequiredForAction-BkrwKqo1.native.esm.js → isMfaRequiredForAction-A02NFVt8.esm.js} +3 -32
  57. package/dist/isMfaRequiredForAction-A02NFVt8.esm.js.map +1 -0
  58. package/dist/isMfaRequiredForAction-D4TSMQ4m.native.esm.js +77 -0
  59. package/dist/isMfaRequiredForAction-D4TSMQ4m.native.esm.js.map +1 -0
  60. package/dist/isMfaRequiredForAction-odpvykkm.cjs +94 -0
  61. package/dist/isMfaRequiredForAction-odpvykkm.cjs.map +1 -0
  62. package/dist/{isUserOnboardingComplete-CruwjMvs.cjs → isUserOnboardingComplete-CEVSIxJC.cjs} +49 -4
  63. package/dist/isUserOnboardingComplete-CEVSIxJC.cjs.map +1 -0
  64. package/dist/{isUserOnboardingComplete-DAesufca.esm.js → isUserOnboardingComplete-Cgkw21XZ.esm.js} +44 -4
  65. package/dist/isUserOnboardingComplete-Cgkw21XZ.esm.js.map +1 -0
  66. package/dist/{isUserOnboardingComplete-BLm0JQ_z.native.esm.js → isUserOnboardingComplete-CvQShE05.native.esm.js} +44 -4
  67. package/dist/{isUserOnboardingComplete-CruwjMvs.cjs.map → isUserOnboardingComplete-CvQShE05.native.esm.js.map} +1 -1
  68. package/dist/migrateFromFireblocks-BMtelH1a.native.esm.js +321 -0
  69. package/dist/migrateFromFireblocks-BMtelH1a.native.esm.js.map +1 -0
  70. package/dist/{migrateFromFireblocks-DrHwloUB.cjs → migrateFromFireblocks-CLUkVcFT.cjs} +54 -3
  71. package/dist/migrateFromFireblocks-CLUkVcFT.cjs.map +1 -0
  72. package/dist/{migrateFromFireblocks-Do4mQTl7.native.esm.js → migrateFromFireblocks-DcKrquTE.esm.js} +43 -4
  73. package/dist/migrateFromFireblocks-DcKrquTE.esm.js.map +1 -0
  74. package/dist/modules/storageSync/hydrateStateWithStorage/hydrateStateWithStorage.d.ts.map +1 -1
  75. package/dist/modules/storageSync/schema.d.ts +0 -2
  76. package/dist/modules/storageSync/schema.d.ts.map +1 -1
  77. package/dist/modules/storageSync/syncStateWithStorage/syncStateWithStorage.d.ts.map +1 -1
  78. package/dist/modules/waas/businessAccounts/addBusinessAccountMember/addBusinessAccountMember.d.ts +25 -0
  79. package/dist/modules/waas/businessAccounts/addBusinessAccountMember/addBusinessAccountMember.d.ts.map +1 -0
  80. package/dist/modules/waas/businessAccounts/addBusinessAccountMember/index.d.ts +2 -0
  81. package/dist/modules/waas/businessAccounts/addBusinessAccountMember/index.d.ts.map +1 -0
  82. package/dist/modules/waas/businessAccounts/addBusinessAccountSigner/addBusinessAccountSigner.d.ts +35 -0
  83. package/dist/modules/waas/businessAccounts/addBusinessAccountSigner/addBusinessAccountSigner.d.ts.map +1 -0
  84. package/dist/modules/waas/businessAccounts/addBusinessAccountSigner/index.d.ts +2 -0
  85. package/dist/modules/waas/businessAccounts/addBusinessAccountSigner/index.d.ts.map +1 -0
  86. package/dist/modules/waas/businessAccounts/addWalletToBusinessAccount/addWalletToBusinessAccount.d.ts +19 -0
  87. package/dist/modules/waas/businessAccounts/addWalletToBusinessAccount/addWalletToBusinessAccount.d.ts.map +1 -0
  88. package/dist/modules/waas/businessAccounts/addWalletToBusinessAccount/index.d.ts +2 -0
  89. package/dist/modules/waas/businessAccounts/addWalletToBusinessAccount/index.d.ts.map +1 -0
  90. package/dist/modules/waas/businessAccounts/businessAccounts.types.d.ts +184 -0
  91. package/dist/modules/waas/businessAccounts/businessAccounts.types.d.ts.map +1 -0
  92. package/dist/modules/waas/businessAccounts/createBusinessAccount/createBusinessAccount.d.ts +16 -0
  93. package/dist/modules/waas/businessAccounts/createBusinessAccount/createBusinessAccount.d.ts.map +1 -0
  94. package/dist/modules/waas/businessAccounts/createBusinessAccount/index.d.ts +2 -0
  95. package/dist/modules/waas/businessAccounts/createBusinessAccount/index.d.ts.map +1 -0
  96. package/dist/modules/waas/businessAccounts/createWalletForBusinessAccount/createWalletForBusinessAccount.d.ts +36 -0
  97. package/dist/modules/waas/businessAccounts/createWalletForBusinessAccount/createWalletForBusinessAccount.d.ts.map +1 -0
  98. package/dist/modules/waas/businessAccounts/createWalletForBusinessAccount/index.d.ts +2 -0
  99. package/dist/modules/waas/businessAccounts/createWalletForBusinessAccount/index.d.ts.map +1 -0
  100. package/dist/modules/waas/businessAccounts/getBusinessAccount/getBusinessAccount.d.ts +15 -0
  101. package/dist/modules/waas/businessAccounts/getBusinessAccount/getBusinessAccount.d.ts.map +1 -0
  102. package/dist/modules/waas/businessAccounts/getBusinessAccount/index.d.ts +2 -0
  103. package/dist/modules/waas/businessAccounts/getBusinessAccount/index.d.ts.map +1 -0
  104. package/dist/modules/waas/businessAccounts/getBusinessAccountsClient/getBusinessAccountsClient.d.ts +12 -0
  105. package/dist/modules/waas/businessAccounts/getBusinessAccountsClient/getBusinessAccountsClient.d.ts.map +1 -0
  106. package/dist/modules/waas/businessAccounts/getBusinessAccountsClient/index.d.ts +2 -0
  107. package/dist/modules/waas/businessAccounts/getBusinessAccountsClient/index.d.ts.map +1 -0
  108. package/dist/modules/waas/businessAccounts/listBusinessAccounts/index.d.ts +2 -0
  109. package/dist/modules/waas/businessAccounts/listBusinessAccounts/index.d.ts.map +1 -0
  110. package/dist/modules/waas/businessAccounts/listBusinessAccounts/listBusinessAccounts.d.ts +10 -0
  111. package/dist/modules/waas/businessAccounts/listBusinessAccounts/listBusinessAccounts.d.ts.map +1 -0
  112. package/dist/modules/waas/businessAccounts/removeBusinessAccountMember/index.d.ts +2 -0
  113. package/dist/modules/waas/businessAccounts/removeBusinessAccountMember/index.d.ts.map +1 -0
  114. package/dist/modules/waas/businessAccounts/removeBusinessAccountMember/removeBusinessAccountMember.d.ts +33 -0
  115. package/dist/modules/waas/businessAccounts/removeBusinessAccountMember/removeBusinessAccountMember.d.ts.map +1 -0
  116. package/dist/modules/waas/businessAccounts/removeBusinessAccountSigner/index.d.ts +2 -0
  117. package/dist/modules/waas/businessAccounts/removeBusinessAccountSigner/index.d.ts.map +1 -0
  118. package/dist/modules/waas/businessAccounts/removeBusinessAccountSigner/removeBusinessAccountSigner.d.ts +37 -0
  119. package/dist/modules/waas/businessAccounts/removeBusinessAccountSigner/removeBusinessAccountSigner.d.ts.map +1 -0
  120. package/dist/modules/waas/createWaasClient/createWaasClient.d.ts.map +1 -1
  121. package/dist/modules/waas/createWaasProvider/createWaasProvider.d.ts.map +1 -1
  122. package/dist/modules/waas/createWaasProvider/isWaasLoadExhaustionError.d.ts +11 -0
  123. package/dist/modules/waas/createWaasProvider/isWaasLoadExhaustionError.d.ts.map +1 -0
  124. package/dist/modules/waas/waas.types.d.ts +11 -0
  125. package/dist/modules/waas/waas.types.d.ts.map +1 -1
  126. package/dist/modules/wallets/networks/getNetworksData/getNetworksData.d.ts +4 -0
  127. package/dist/modules/wallets/networks/getNetworksData/getNetworksData.d.ts.map +1 -1
  128. package/dist/modules/wallets/networks/networkDataSchema/index.d.ts +2 -0
  129. package/dist/modules/wallets/networks/networkDataSchema/index.d.ts.map +1 -0
  130. package/dist/modules/wallets/networks/networkDataSchema/networkDataSchema.d.ts +23 -0
  131. package/dist/modules/wallets/networks/networkDataSchema/networkDataSchema.d.ts.map +1 -0
  132. package/dist/modules/wallets/walletAccount/walletAccount.types.d.ts +2 -0
  133. package/dist/modules/wallets/walletAccount/walletAccount.types.d.ts.map +1 -1
  134. package/dist/services/keychain/createKeychainService/utils/openDatabase.d.ts +9 -1
  135. package/dist/services/keychain/createKeychainService/utils/openDatabase.d.ts.map +1 -1
  136. package/dist/services/keychain/createKeychainService/utils/withDatabase/withDatabase.d.ts +2 -1
  137. package/dist/services/keychain/createKeychainService/utils/withDatabase/withDatabase.d.ts.map +1 -1
  138. package/dist/tsconfig.lib.tsbuildinfo +1 -1
  139. package/dist/{updateAuthFromVerifyResponse-CY0xTIXF.cjs → updateAuthFromVerifyResponse-CSqnGlh3.cjs} +427 -43
  140. package/dist/updateAuthFromVerifyResponse-CSqnGlh3.cjs.map +1 -0
  141. package/dist/{updateAuthFromVerifyResponse-inxvMWJB.esm.js → updateAuthFromVerifyResponse-C_YKKAIX.esm.js} +354 -27
  142. package/dist/updateAuthFromVerifyResponse-C_YKKAIX.esm.js.map +1 -0
  143. package/dist/utils/createTranslateRejection/createTranslateRejection.d.ts +29 -0
  144. package/dist/utils/createTranslateRejection/createTranslateRejection.d.ts.map +1 -0
  145. package/dist/utils/createTranslateRejection/index.d.ts +3 -0
  146. package/dist/utils/createTranslateRejection/index.d.ts.map +1 -0
  147. package/dist/utils/getNonce/fetchAndStoreNonces/fetchAndStoreNonces.d.ts +7 -5
  148. package/dist/utils/getNonce/fetchAndStoreNonces/fetchAndStoreNonces.d.ts.map +1 -1
  149. package/dist/utils/getNonce/getNonce.d.ts +10 -4
  150. package/dist/utils/getNonce/getNonce.d.ts.map +1 -1
  151. package/dist/utils/getNonce/noncePoolStorage/schema.d.ts +19 -0
  152. package/dist/utils/getNonce/noncePoolStorage/schema.d.ts.map +1 -0
  153. package/dist/utils/getNonce/noncePoolStorage/updateNoncePoolStorage/updateNoncePoolStorage.d.ts +18 -0
  154. package/dist/utils/getNonce/noncePoolStorage/updateNoncePoolStorage/updateNoncePoolStorage.d.ts.map +1 -0
  155. package/dist/utils/getNonce/prefetchNoncesIfNeeded/prefetchNoncesIfNeeded.d.ts.map +1 -1
  156. package/dist/utils/getNonce/state.d.ts +5 -9
  157. package/dist/utils/getNonce/state.d.ts.map +1 -1
  158. package/dist/waas.cjs +281 -18
  159. package/dist/waas.cjs.map +1 -1
  160. package/dist/waas.esm.js +273 -18
  161. package/dist/waas.esm.js.map +1 -1
  162. package/dist/waas.native.esm.js +272 -18
  163. package/dist/waas.native.esm.js.map +1 -1
  164. package/dist/waasCore.cjs +291 -170
  165. package/dist/waasCore.cjs.map +1 -1
  166. package/dist/waasCore.esm.js +285 -164
  167. package/dist/waasCore.esm.js.map +1 -1
  168. package/dist/waasCore.native.esm.js +273 -371
  169. package/dist/waasCore.native.esm.js.map +1 -1
  170. package/ios/DynamicClientScreenshotProtection.mm +70 -32
  171. package/package.json +5 -5
  172. package/dist/getNetworkProviderFromNetworkId-Ct6nH2tC.esm.js.map +0 -1
  173. package/dist/getNetworkProviderFromNetworkId-DL6OXPUn.native.esm.js.map +0 -1
  174. package/dist/getNetworkProviderFromNetworkId-DmH039jx.cjs.map +0 -1
  175. package/dist/getSignedSessionId-CAQwZYYk.esm.js.map +0 -1
  176. package/dist/getSignedSessionId-Dz4U61DG.cjs.map +0 -1
  177. package/dist/isMfaRequiredForAction-BkrwKqo1.native.esm.js.map +0 -1
  178. package/dist/isMfaRequiredForAction-CHeYEkjj.cjs +0 -430
  179. package/dist/isMfaRequiredForAction-CHeYEkjj.cjs.map +0 -1
  180. package/dist/isMfaRequiredForAction-DxJQm48x.esm.js +0 -343
  181. package/dist/isMfaRequiredForAction-DxJQm48x.esm.js.map +0 -1
  182. package/dist/isUserOnboardingComplete-BLm0JQ_z.native.esm.js.map +0 -1
  183. package/dist/isUserOnboardingComplete-DAesufca.esm.js.map +0 -1
  184. package/dist/migrateFromFireblocks-C-lXWvvo.esm.js +0 -65
  185. package/dist/migrateFromFireblocks-C-lXWvvo.esm.js.map +0 -1
  186. package/dist/migrateFromFireblocks-Do4mQTl7.native.esm.js.map +0 -1
  187. package/dist/migrateFromFireblocks-DrHwloUB.cjs.map +0 -1
  188. package/dist/updateAuthFromVerifyResponse-CY0xTIXF.cjs.map +0 -1
  189. package/dist/updateAuthFromVerifyResponse-D4au3jUv.native.esm.js.map +0 -1
  190. package/dist/updateAuthFromVerifyResponse-inxvMWJB.esm.js.map +0 -1
@@ -1,13 +1,41 @@
1
- const require_isMfaRequiredForAction = require('./isMfaRequiredForAction-CHeYEkjj.cjs');
1
+ //#region rolldown:runtime
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __copyProps = (to, from, except, desc) => {
9
+ if (from && typeof from === "object" || typeof from === "function") {
10
+ for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
11
+ key = keys[i];
12
+ if (!__hasOwnProp.call(to, key) && key !== except) {
13
+ __defProp(to, key, {
14
+ get: ((k) => from[k]).bind(null, key),
15
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
16
+ });
17
+ }
18
+ }
19
+ }
20
+ return to;
21
+ };
22
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
23
+ value: mod,
24
+ enumerable: true
25
+ }) : target, mod));
26
+
27
+ //#endregion
2
28
  let _dynamic_labs_sdk_api_core = require("@dynamic-labs/sdk-api-core");
29
+ let zod_mini = require("zod/mini");
30
+ zod_mini = __toESM(zod_mini);
3
31
 
4
32
  //#region package.json
5
33
  var name = "@dynamic-labs-sdk/client";
6
- var version = "1.19.1";
34
+ var version = "1.21.0";
7
35
  var dependencies = {
8
36
  "@dynamic-labs-sdk/assert-package-version": "workspace:*",
9
- "@dynamic-labs-wallet/browser-wallet-client": "1.0.46",
10
- "@dynamic-labs-wallet/forward-mpc-client": "0.12.0",
37
+ "@dynamic-labs-wallet/browser-wallet-client": "1.0.73",
38
+ "@dynamic-labs-wallet/forward-mpc-client": "1.0.1",
11
39
  "@dynamic-labs/sdk-api-core": "catalog:",
12
40
  "@simplewebauthn/browser": "13.1.0",
13
41
  "ably": "2.17.1",
@@ -455,27 +483,91 @@ const createConvertToApiErrorMiddleware = ({ errorMappers = [] }) => ({ post: as
455
483
  return context.response;
456
484
  } });
457
485
 
486
+ //#endregion
487
+ //#region src/services/storage/createStorageKeySchema/createStorageKeySchema.ts
488
+ /** @notInstrumented */
489
+ const createStorageKeySchema = (params) => {
490
+ return params;
491
+ };
492
+
493
+ //#endregion
494
+ //#region src/utils/getNonce/noncePoolStorage/schema.ts
495
+ /**
496
+ * Dedicated storage key for the prefetched nonce pool.
497
+ *
498
+ * The pool must NOT live in the synced state blob: that blob is rewritten on
499
+ * every state change from a possibly-stale in-memory copy, which resurrects
500
+ * already-consumed single-use nonces. This key is only ever written through
501
+ * `updateNoncePoolStorage`'s serialized read-modify-write.
502
+ */
503
+ const noncePoolStorageKeySchema = createStorageKeySchema({
504
+ key: "nonce-pool",
505
+ schema: zod_mini.object({
506
+ expiration: zod_mini.number(),
507
+ nonces: zod_mini.array(zod_mini.string())
508
+ })
509
+ });
510
+
511
+ //#endregion
512
+ //#region src/utils/getNonce/noncePoolStorage/updateNoncePoolStorage/updateNoncePoolStorage.ts
513
+ const pendingUpdates = /* @__PURE__ */ new WeakMap();
514
+ /**
515
+ * Updates the persisted nonce pool with a serialized read-modify-write.
516
+ *
517
+ * The write is awaited before resolving, so once this returns the storage
518
+ * ledger reflects the update. Returns the pool as it was read (pre-update).
519
+ * @notInstrumented
520
+ */
521
+ const updateNoncePoolStorage = async ({ update }, client) => {
522
+ const core = getCore(client);
523
+ let storedBeforeUpdate = null;
524
+ const run = async () => {
525
+ const stored = await core.storage.getItem(noncePoolStorageKeySchema);
526
+ storedBeforeUpdate = stored;
527
+ const updated = update(stored);
528
+ if (updated !== null) await core.storage.setItem(noncePoolStorageKeySchema, updated);
529
+ };
530
+ const chained = (pendingUpdates.get(core) ?? Promise.resolve()).then(run, run);
531
+ pendingUpdates.set(core, chained);
532
+ await chained;
533
+ return storedBeforeUpdate;
534
+ };
535
+
458
536
  //#endregion
459
537
  //#region src/utils/getNonce/getNonce.ts
460
538
  /**
461
539
  * Returns a nonce for wallet ownership verification.
462
540
  *
463
- * Pops the first nonce from the prefetched pool. When the pool is running low
464
- * (≤1 remaining after pop) a background refetch is triggered. If the pool is
465
- * empty, nonces are fetched on-demand before returning.
541
+ * The pool lives exclusively in storage: every call pops the first nonce
542
+ * through `updateNoncePoolStorage`'s serialized read-modify-write, so the
543
+ * nonce is removed from storage before it is handed out and no in-memory
544
+ * copy can go stale. Nonces are single-use server-side — a stale copy handed
545
+ * out twice fails the second consume.
546
+ *
547
+ * When the pool is running low (≤1 remaining after pop) a background refetch
548
+ * is triggered. If the pool is empty or expired, nonces are fetched on-demand
549
+ * before returning.
466
550
  * @notInstrumented
467
551
  */
468
552
  const getNonce = async (client) => {
469
- const core = getCore(client);
470
- const pool = core.state.get().prefetchedNonces;
471
- if (pool.length > 0) {
472
- const [nonce, ...remaining] = pool;
473
- core.state.set({ prefetchedNonces: remaining });
474
- if (remaining.length <= 1) fetchAndStoreNonces(client);
475
- return nonce;
553
+ let nonce;
554
+ let remainingCount = 0;
555
+ await updateNoncePoolStorage({ update: (stored) => {
556
+ if (!stored || stored.nonces.length === 0 || stored.expiration <= Date.now()) return null;
557
+ const [first, ...remaining] = stored.nonces;
558
+ nonce = first;
559
+ remainingCount = remaining.length;
560
+ return {
561
+ expiration: stored.expiration,
562
+ nonces: remaining
563
+ };
564
+ } }, client);
565
+ if (nonce === void 0) {
566
+ await fetchAndStoreNonces(client);
567
+ return getNonce(client);
476
568
  }
477
- await fetchAndStoreNonces(client);
478
- return getNonce(client);
569
+ if (remainingCount <= 1) fetchAndStoreNonces(client);
570
+ return nonce;
479
571
  };
480
572
 
481
573
  //#endregion
@@ -621,17 +713,19 @@ const createApiClient = (options = {}, client) => {
621
713
  //#endregion
622
714
  //#region src/utils/getNonce/fetchAndStoreNonces/fetchAndStoreNonces.ts
623
715
  /**
624
- * Fetches a batch of nonces from the API.
716
+ * Fetches a batch of nonces from the API and appends them to the pool in
717
+ * storage.
625
718
  *
626
719
  * Prefetching is critical for iOS deep link wallet providers (e.g. Phantom
627
720
  * redirect). On iOS, a network request (like fetching a nonce) between a user
628
721
  * action and a deeplink call will break the gesture chain, causing iOS to
629
722
  * silently ignore the deeplink. By prefetching nonces ahead of time,
630
- * `getNonce` can return synchronously from cache and the deeplink fires
631
- * without an interrupting network round-trip.
723
+ * `getNonce` can return from the stored pool without an interrupting network
724
+ * round-trip.
632
725
  *
633
- * New nonces are **appended** to the existing pool so that unconsumed entries
634
- * are not discarded by a background refetch.
726
+ * New nonces are **appended** to the stored pool so that unconsumed entries
727
+ * are not discarded by a background refetch; an expired stored pool is
728
+ * replaced instead, since its nonces have already been evicted server-side.
635
729
  *
636
730
  * Concurrent refills are coalesced behind a single in-flight promise so that
637
731
  * simultaneous callers share one `GET /nonces` round-trip instead of each
@@ -649,11 +743,13 @@ const fetchAndStoreNonces = async (client) => {
649
743
  count: NONCE_POOL_SIZE,
650
744
  environmentId
651
745
  });
652
- const existing = core.state.get().prefetchedNonces;
653
- core.state.set({
654
- prefetchedNonces: [...existing, ...nonces],
655
- prefetchedNoncesExpiration: Date.now() + NONCE_POOL_EXPIRATION_TIME
656
- });
746
+ const expiration = Date.now() + NONCE_POOL_EXPIRATION_TIME;
747
+ await updateNoncePoolStorage({ update: (stored) => {
748
+ return {
749
+ expiration,
750
+ nonces: [...stored && stored.expiration > Date.now() ? stored.nonces : [], ...nonces]
751
+ };
752
+ } }, client);
657
753
  })().finally(() => {
658
754
  core.state.set({ nonceFetchInFlight: null });
659
755
  });
@@ -800,6 +896,41 @@ const emitEvent = ({ event, args }, client) => {
800
896
  eventEmitter.emit(event, args);
801
897
  };
802
898
 
899
+ //#endregion
900
+ //#region src/utils/retryOnFail/InvalidRetryOnFailCallError.ts
901
+ /**
902
+ * This error is thrown when the `retryOnFail` function is called with an invalid
903
+ * number of retries (i.e. less than 0).
904
+ */
905
+ var InvalidRetryOnFailCallError = class extends BaseError {
906
+ constructor(maxRetries) {
907
+ super({
908
+ cause: null,
909
+ code: "invalid_retry_on_fail_call_error",
910
+ docsUrl: null,
911
+ name: "InvalidRetryOnFailCallError",
912
+ shortMessage: `Invalid retries parameter for retryOnFail call: ${maxRetries}`
913
+ });
914
+ }
915
+ };
916
+
917
+ //#endregion
918
+ //#region src/utils/retryOnFail/retryOnFail.ts
919
+ /** @notInstrumented */
920
+ const retryOnFail = async ({ delay = 0, fn, maxRetries }) => {
921
+ for (let retry = 0; retry <= maxRetries; retry++) try {
922
+ return await fn();
923
+ } catch (error) {
924
+ if (retry >= maxRetries) throw error;
925
+ if (delay > 0) await new Promise((resolve) => setTimeout(resolve, delay));
926
+ }
927
+ /**
928
+ * Reaching this point should never happen and this
929
+ * error is thrown to help us debug the issue.
930
+ */
931
+ throw new InvalidRetryOnFailCallError(maxRetries);
932
+ };
933
+
803
934
  //#endregion
804
935
  //#region src/errors/InvalidWalletProviderKeyError.ts
805
936
  var InvalidWalletProviderKeyError = class extends BaseError {
@@ -1118,6 +1249,115 @@ const getWalletAccounts = (client = getDefaultClient()) => {
1118
1249
  }, client);
1119
1250
  };
1120
1251
 
1252
+ //#endregion
1253
+ //#region src/modules/auth/isSignedIn/isSignedIn.ts
1254
+ /**
1255
+ * Checks if the user is currently signed in to the Dynamic client.
1256
+ *
1257
+ * The client is considered to be in a signed in state if a user has
1258
+ * authenticated or if the client has at least one wallet connected.
1259
+ *
1260
+ * @deprecated What counts as "signed in" is your app's business logic, not the
1261
+ * SDK's. This helper bakes in one opinion (a user OR any connected wallet),
1262
+ * which rarely matches every app and forces a dependency on us for every
1263
+ * variation. Compose your own check from the underlying primitives instead —
1264
+ * e.g. `Boolean(client.user) || isAnyWalletAccountConnected(client)` — and
1265
+ * layer in whatever your app requires (device registration, completed
1266
+ * onboarding, satisfied MFA, a required embedded wallet, …). See the
1267
+ * "Check if signed in" guide:
1268
+ * https://www.dynamic.xyz/docs/javascript/user-session-management
1269
+ *
1270
+ * @example
1271
+ * ```ts
1272
+ * if (isSignedIn()) {
1273
+ * console.log('User is authenticated or has a wallet connected');
1274
+ * }
1275
+ * ```
1276
+ *
1277
+ * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
1278
+ * @returns True if the user is signed in, false otherwise.
1279
+ * @see logout
1280
+ * @see isAnyWalletAccountConnected
1281
+ * @notInstrumented
1282
+ */
1283
+ const isSignedIn = (client = getDefaultClient()) => Boolean(client.user || getWalletAccounts(client).length > 0);
1284
+
1285
+ //#endregion
1286
+ //#region src/modules/projectSettings/fetchProjectSettings/projectSettingsExpirationScheme.ts
1287
+ /**
1288
+ * The schema to track the expiration time of the project settings.
1289
+ */
1290
+ const projectSettingsExpirationStorageKeySchema = createStorageKeySchema({
1291
+ key: "projectSettingsExpiration",
1292
+ schema: zod_mini.number()
1293
+ });
1294
+
1295
+ //#endregion
1296
+ //#region src/modules/projectSettings/fetchProjectSettings/fetchProjectSettings.ts
1297
+ /**
1298
+ * Expiration time of the project settings in milliseconds.
1299
+ */
1300
+ const PROJECT_SETTINGS_EXPIRATION_TIME = 1e3 * 60 * 5;
1301
+ /**
1302
+ * Fetches and updates the project settings from the API.
1303
+ *
1304
+ * This function retrieves the latest project configuration settings
1305
+ * from Dynamic's servers, including authentication options, enabled chains,
1306
+ * and security configurations. The settings are cached for performance.
1307
+ *
1308
+ * @example
1309
+ * ```ts
1310
+ * const settings = await fetchProjectSettings();
1311
+ * console.log('Enabled chains:', settings.chains);
1312
+ * ```
1313
+ *
1314
+ * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
1315
+ * @returns A promise that resolves to the updated project settings.
1316
+ * @see createDynamicClient
1317
+ * @see initializeClient
1318
+ * @notInstrumented
1319
+ * @noHook Internal settings fetch that is not part of the public hook surface.
1320
+ */
1321
+ const fetchProjectSettings = async (client = getDefaultClient()) => {
1322
+ const core = getCore(client);
1323
+ const currentExpiration = await core.storage.getItem(projectSettingsExpirationStorageKeySchema);
1324
+ if (Boolean(client.projectSettings) && !(currentExpiration && currentExpiration < Date.now()) && isSignedIn(client)) return client.projectSettings;
1325
+ const apiClient = createApiClient({}, client);
1326
+ core.logger.debug("[fetchProjectSettings] Fetching project settings...");
1327
+ const doFetch = async () => apiClient.getEnvironmentSettings({
1328
+ environmentId: core.environmentId,
1329
+ sdkVersion: `${CLIENT_SDK_NAME}/${core.version}`
1330
+ }, { credentials: "omit" });
1331
+ const projectSettings = await retryOnFail({
1332
+ fn: doFetch,
1333
+ maxRetries: 2
1334
+ });
1335
+ core.state.set({ projectSettings: projectSettings ?? null });
1336
+ await core.storage.setItem(projectSettingsExpirationStorageKeySchema, Date.now() + PROJECT_SETTINGS_EXPIRATION_TIME);
1337
+ return projectSettings;
1338
+ };
1339
+
1340
+ //#endregion
1341
+ //#region src/modules/sessionKeys/generateSessionKeys/generateSessionKeys.ts
1342
+ /** @notInstrumented */
1343
+ const generateSessionKeys = async (client) => {
1344
+ const core = getCore(client);
1345
+ const currentState = core.state.get();
1346
+ const isRotation = Boolean(currentState.sessionKeys);
1347
+ const logContext = {
1348
+ environmentId: core.environmentId,
1349
+ operation: isRotation ? "rotate" : "create",
1350
+ userId: currentState.user?.id ?? null
1351
+ };
1352
+ core.logger.info(isRotation ? "[generateSessionKeys] Rotating session key..." : "[generateSessionKeys] Creating session key...", logContext);
1353
+ await core.keychain.removeKey("session");
1354
+ const publicKey = await core.keychain.generateKey("session");
1355
+ assertDefined(publicKey, "Public key not found");
1356
+ core.state.set({ sessionKeys: publicKey });
1357
+ core.logger.info(isRotation ? "[generateSessionKeys] Session key rotated" : "[generateSessionKeys] Session key created", logContext);
1358
+ return { publicKey };
1359
+ };
1360
+
1121
1361
  //#endregion
1122
1362
  //#region src/errors/NoWalletProviderFoundError.ts
1123
1363
  var NoWalletProviderFoundError = class extends BaseError {
@@ -1273,6 +1513,51 @@ const getWalletProviderFromWalletAccount = ({ walletAccount }, client) => {
1273
1513
  return walletProvider;
1274
1514
  };
1275
1515
 
1516
+ //#endregion
1517
+ //#region src/modules/wallets/utils/getAvailableWalletProvidersFromWalletAccounts/getAvailableWalletProvidersFromWalletAccounts.ts
1518
+ /** @notInstrumented */
1519
+ const getAvailableWalletProvidersFromWalletAccounts = (client) => {
1520
+ const core = getCore(client);
1521
+ const walletProvidersMap = /* @__PURE__ */ new Map();
1522
+ getWalletAccounts(client).forEach((walletAccount) => {
1523
+ if (walletProvidersMap.has(walletAccount.walletProviderKey)) return;
1524
+ try {
1525
+ const walletProvider = getWalletProviderFromWalletAccount({ walletAccount }, client);
1526
+ walletProvidersMap.set(walletAccount.walletProviderKey, walletProvider);
1527
+ } catch (error) {
1528
+ core.logger.debug("Wallet provider not found for wallet account", {
1529
+ error,
1530
+ walletAccount: walletAccount.address
1531
+ });
1532
+ }
1533
+ });
1534
+ return Array.from(walletProvidersMap.values());
1535
+ };
1536
+
1537
+ //#endregion
1538
+ //#region src/modules/wallets/destroyWalletProviders/destroyWalletProviders.ts
1539
+ /**
1540
+ * Tear down every wallet provider on the client.
1541
+ *
1542
+ * Each provider's `destroy` is responsible for its own local + remote
1543
+ * cleanup. We swallow errors so a failing destroy on one provider does not
1544
+ * block teardown of the others (e.g. during logout).
1545
+ *
1546
+ * @notInstrumented
1547
+ */
1548
+ const destroyWalletProviders = async ({ reason }, client) => {
1549
+ const core = getCore(client);
1550
+ const walletProviders = getAvailableWalletProvidersFromWalletAccounts(client);
1551
+ await Promise.all(walletProviders.map(async (walletProvider) => {
1552
+ if (!walletProvider.destroy) return;
1553
+ try {
1554
+ await walletProvider.destroy({ reason });
1555
+ } catch (err) {
1556
+ core.logger.error(`Error destroying wallet provider ${walletProvider.key}`, err);
1557
+ }
1558
+ }));
1559
+ };
1560
+
1276
1561
  //#endregion
1277
1562
  //#region src/modules/auth/consts.ts
1278
1563
  const DYNAMIC_AUTH_COOKIE_NAME = "DYNAMIC_JWT_TOKEN";
@@ -1685,6 +1970,75 @@ const instrumentFunction = ({ fn, functionName, getCore: getCore$1, selectors })
1685
1970
  return wrapped;
1686
1971
  };
1687
1972
 
1973
+ //#endregion
1974
+ //#region src/modules/auth/logoutWithReason/logoutWithReason.ts
1975
+ /**
1976
+ * Logs the user out with an explicit reason.
1977
+ *
1978
+ * Revokes the session, clears auth state, terminates wallet providers, and
1979
+ * emits the `logout` client event with the given reason. The reason is also
1980
+ * captured as an argument on the function-instrumentation event, which is
1981
+ * how Datadog distinguishes between different logout causes.
1982
+ *
1983
+ * Use this instead of the public `logout` when triggering a logout from
1984
+ * internal or extension code — the caller owns the reason string, so the
1985
+ * telemetry correctly attributes *why* the logout happened.
1986
+ *
1987
+ * @param params - The logout params.
1988
+ * @param params.reason - Why the logout is being triggered. Extension authors
1989
+ * needing a reason outside the SDK catalog can cast with `as LogoutReason`.
1990
+ * @param client - The Dynamic client instance.
1991
+ * @instrumented
1992
+ */
1993
+ const logoutWithReason = async ({ reason }, client) => {
1994
+ const core = getCore(client);
1995
+ core.logger.debug("[logoutWithReason] Logging out...", { reason });
1996
+ await destroyWalletProviders({ reason }, client);
1997
+ if (client.user !== null) {
1998
+ const apiClient = createApiClient({}, client);
1999
+ try {
2000
+ await apiClient.revokeSession({ environmentId: core.environmentId });
2001
+ } catch (error) {
2002
+ core.logger.error("Failed to revoke session", error);
2003
+ }
2004
+ /**
2005
+ * This deletes the auth cookie if it exists.
2006
+ * If the cookie doesn't exist, this sets a new cookie that expires immediately.
2007
+ */
2008
+ if (isCookieEnabled(client)) setCookie(`${DYNAMIC_AUTH_COOKIE_NAME}=; Max-Age=-99999999; path=/; SameSite=Lax${getSecureCookieAttribute()}`);
2009
+ }
2010
+ await core.keychain.removeKey("session");
2011
+ core.state.set({
2012
+ captchaToken: null,
2013
+ elevatedAccessTokens: [],
2014
+ legacyToken: null,
2015
+ mfaToken: null,
2016
+ sessionExpiresAt: null,
2017
+ sessionKeys: null,
2018
+ token: null,
2019
+ unverifiedWalletAccounts: [],
2020
+ user: null
2021
+ });
2022
+ emitEvent({
2023
+ args: { reason },
2024
+ event: "logout"
2025
+ }, client);
2026
+ fetchProjectSettings(client);
2027
+ generateSessionKeys(client);
2028
+ };
2029
+ const __logoutWithReason_impl = logoutWithReason;
2030
+ const __logoutWithReason_wrapped = instrumentFunction({
2031
+ fn: __logoutWithReason_impl,
2032
+ functionName: "logoutWithReason",
2033
+ getCore: () => {
2034
+ try {
2035
+ return getCore(getDefaultClient());
2036
+ } catch {
2037
+ return;
2038
+ }
2039
+ }
2040
+ });
2041
+
1688
2042
  //#endregion
1689
2043
  //#region src/constants.ts
1690
2044
  const SDK_API_CORE_VERSION = dependencies["@dynamic-labs/sdk-api-core"];
@@ -2023,12 +2377,6 @@ Object.defineProperty(exports, 'DEFAULT_WAAS_BASE_MPC_RELAY_API_URL', {
2023
2377
  return DEFAULT_WAAS_BASE_MPC_RELAY_API_URL;
2024
2378
  }
2025
2379
  });
2026
- Object.defineProperty(exports, 'DYNAMIC_AUTH_COOKIE_NAME', {
2027
- enumerable: true,
2028
- get: function () {
2029
- return DYNAMIC_AUTH_COOKIE_NAME;
2030
- }
2031
- });
2032
2380
  Object.defineProperty(exports, 'DYNAMIC_ICONIC_SPRITE_URL', {
2033
2381
  enumerable: true,
2034
2382
  get: function () {
@@ -2125,6 +2473,18 @@ Object.defineProperty(exports, 'WalletProviderPriority', {
2125
2473
  return WalletProviderPriority;
2126
2474
  }
2127
2475
  });
2476
+ Object.defineProperty(exports, '__logoutWithReason_wrapped', {
2477
+ enumerable: true,
2478
+ get: function () {
2479
+ return __logoutWithReason_wrapped;
2480
+ }
2481
+ });
2482
+ Object.defineProperty(exports, '__toESM', {
2483
+ enumerable: true,
2484
+ get: function () {
2485
+ return __toESM;
2486
+ }
2487
+ });
2128
2488
  Object.defineProperty(exports, 'assertDefined', {
2129
2489
  enumerable: true,
2130
2490
  get: function () {
@@ -2155,6 +2515,12 @@ Object.defineProperty(exports, 'createRuntimeServiceAccessKey', {
2155
2515
  return createRuntimeServiceAccessKey;
2156
2516
  }
2157
2517
  });
2518
+ Object.defineProperty(exports, 'createStorageKeySchema', {
2519
+ enumerable: true,
2520
+ get: function () {
2521
+ return createStorageKeySchema;
2522
+ }
2523
+ });
2158
2524
  Object.defineProperty(exports, 'emitEvent', {
2159
2525
  enumerable: true,
2160
2526
  get: function () {
@@ -2179,6 +2545,12 @@ Object.defineProperty(exports, 'fetchAndStoreNonces', {
2179
2545
  return fetchAndStoreNonces;
2180
2546
  }
2181
2547
  });
2548
+ Object.defineProperty(exports, 'fetchProjectSettings', {
2549
+ enumerable: true,
2550
+ get: function () {
2551
+ return fetchProjectSettings;
2552
+ }
2553
+ });
2182
2554
  Object.defineProperty(exports, 'findWaasWalletProviderByChain', {
2183
2555
  enumerable: true,
2184
2556
  get: function () {
@@ -2197,6 +2569,12 @@ Object.defineProperty(exports, 'formatWalletProviderKey', {
2197
2569
  return formatWalletProviderKey;
2198
2570
  }
2199
2571
  });
2572
+ Object.defineProperty(exports, 'generateSessionKeys', {
2573
+ enumerable: true,
2574
+ get: function () {
2575
+ return generateSessionKeys;
2576
+ }
2577
+ });
2200
2578
  Object.defineProperty(exports, 'getChainFromVerifiedCredentialChain', {
2201
2579
  enumerable: true,
2202
2580
  get: function () {
@@ -2251,12 +2629,6 @@ Object.defineProperty(exports, 'getPlatform', {
2251
2629
  return getPlatform;
2252
2630
  }
2253
2631
  });
2254
- Object.defineProperty(exports, 'getSecureCookieAttribute', {
2255
- enumerable: true,
2256
- get: function () {
2257
- return getSecureCookieAttribute;
2258
- }
2259
- });
2260
2632
  Object.defineProperty(exports, 'getSessionKeys', {
2261
2633
  enumerable: true,
2262
2634
  get: function () {
@@ -2311,6 +2683,12 @@ Object.defineProperty(exports, 'isCookieEnabled', {
2311
2683
  return isCookieEnabled;
2312
2684
  }
2313
2685
  });
2686
+ Object.defineProperty(exports, 'isSignedIn', {
2687
+ enumerable: true,
2688
+ get: function () {
2689
+ return isSignedIn;
2690
+ }
2691
+ });
2314
2692
  Object.defineProperty(exports, 'isUserMissingMfaAuth', {
2315
2693
  enumerable: true,
2316
2694
  get: function () {
@@ -2377,16 +2755,16 @@ Object.defineProperty(exports, 'randomString', {
2377
2755
  return randomString;
2378
2756
  }
2379
2757
  });
2380
- Object.defineProperty(exports, 'scrubParameters', {
2758
+ Object.defineProperty(exports, 'retryOnFail', {
2381
2759
  enumerable: true,
2382
2760
  get: function () {
2383
- return scrubParameters;
2761
+ return retryOnFail;
2384
2762
  }
2385
2763
  });
2386
- Object.defineProperty(exports, 'setCookie', {
2764
+ Object.defineProperty(exports, 'scrubParameters', {
2387
2765
  enumerable: true,
2388
2766
  get: function () {
2389
- return setCookie;
2767
+ return scrubParameters;
2390
2768
  }
2391
2769
  });
2392
2770
  Object.defineProperty(exports, 'setDefaultClient', {
@@ -2407,6 +2785,12 @@ Object.defineProperty(exports, 'updateAuthFromVerifyResponse', {
2407
2785
  return updateAuthFromVerifyResponse;
2408
2786
  }
2409
2787
  });
2788
+ Object.defineProperty(exports, 'updateNoncePoolStorage', {
2789
+ enumerable: true,
2790
+ get: function () {
2791
+ return updateNoncePoolStorage;
2792
+ }
2793
+ });
2410
2794
  Object.defineProperty(exports, 'upsertElevatedAccessToken', {
2411
2795
  enumerable: true,
2412
2796
  get: function () {
@@ -2419,4 +2803,4 @@ Object.defineProperty(exports, 'version', {
2419
2803
  return version;
2420
2804
  }
2421
2805
  });
2422
- //# sourceMappingURL=updateAuthFromVerifyResponse-CY0xTIXF.cjs.map
2806
+ //# sourceMappingURL=updateAuthFromVerifyResponse-CSqnGlh3.cjs.map