@dynamic-labs-sdk/client 0.1.0-alpha.1 → 0.1.0-alpha.10

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 (159) hide show
  1. package/CHANGELOG.md +63 -0
  2. package/InvalidParamError.cjs.js +2 -2
  3. package/InvalidParamError.esm.js +1 -1
  4. package/NotWaasWalletAccountError.cjs.js +38 -0
  5. package/NotWaasWalletAccountError.esm.js +35 -0
  6. package/core.cjs.js +43 -36
  7. package/core.esm.js +9 -7
  8. package/getNetworkProviderFromNetworkId.cjs.js +137 -18
  9. package/getNetworkProviderFromNetworkId.esm.js +121 -6
  10. package/getSignedSessionId.cjs.js +7 -7
  11. package/getSignedSessionId.esm.js +2 -2
  12. package/getWalletProviderByKey.cjs.js +43 -212
  13. package/getWalletProviderByKey.esm.js +40 -202
  14. package/index.cjs.js +396 -588
  15. package/index.esm.js +173 -374
  16. package/isMfaRequiredForAction.cjs.js +8 -15
  17. package/isMfaRequiredForAction.esm.js +2 -8
  18. package/logout.cjs.js +1086 -0
  19. package/logout.esm.js +1020 -0
  20. package/package.json +6 -6
  21. package/src/client/core/createCore/createCore.d.ts.map +1 -1
  22. package/src/client/core/createCore/getInitialState.d.ts.map +1 -1
  23. package/src/client/core/types/DynamicCoreConfig.d.ts +4 -1
  24. package/src/client/core/types/DynamicCoreConfig.d.ts.map +1 -1
  25. package/src/client/createDynamicClient/createDynamicClient.d.ts.map +1 -1
  26. package/src/client/types/DynamicClient.d.ts +4 -0
  27. package/src/client/types/DynamicClient.d.ts.map +1 -1
  28. package/src/exports/core.d.ts +4 -0
  29. package/src/exports/core.d.ts.map +1 -1
  30. package/src/exports/index.d.ts +9 -2
  31. package/src/exports/index.d.ts.map +1 -1
  32. package/src/modules/apiClient/createApiClient.d.ts.map +1 -1
  33. package/src/modules/apiClient/utils/logoutOnUnauthorizedRequestMiddleware/index.d.ts +2 -0
  34. package/src/modules/apiClient/utils/logoutOnUnauthorizedRequestMiddleware/index.d.ts.map +1 -0
  35. package/src/modules/apiClient/utils/logoutOnUnauthorizedRequestMiddleware/logoutOnUnauthorizedRequestMiddleware.d.ts +4 -0
  36. package/src/modules/apiClient/utils/logoutOnUnauthorizedRequestMiddleware/logoutOnUnauthorizedRequestMiddleware.d.ts.map +1 -0
  37. package/src/modules/auth/consts.d.ts +2 -0
  38. package/src/modules/auth/consts.d.ts.map +1 -0
  39. package/src/modules/auth/events.d.ts +1 -7
  40. package/src/modules/auth/events.d.ts.map +1 -1
  41. package/src/modules/auth/logout/logout.d.ts.map +1 -1
  42. package/src/modules/auth/social/oauth/completeSocialRedirectSignIn/completeSocialRedirectSignIn.d.ts.map +1 -1
  43. package/src/modules/auth/state.d.ts +11 -0
  44. package/src/modules/auth/state.d.ts.map +1 -1
  45. package/src/modules/auth/updateAuthFromVerifyResponse/updateAuthFromVerifyResponse.d.ts.map +1 -1
  46. package/src/modules/captcha/consumeCaptchaToken/consumeCaptchaToken.d.ts +6 -0
  47. package/src/modules/captcha/consumeCaptchaToken/consumeCaptchaToken.d.ts.map +1 -0
  48. package/src/modules/captcha/consumeCaptchaToken/index.d.ts +2 -0
  49. package/src/modules/captcha/consumeCaptchaToken/index.d.ts.map +1 -0
  50. package/src/modules/captcha/isCaptchaRequired/index.d.ts +2 -0
  51. package/src/modules/captcha/isCaptchaRequired/index.d.ts.map +1 -0
  52. package/src/modules/captcha/isCaptchaRequired/isCaptchaRequired.d.ts +2 -0
  53. package/src/modules/captcha/isCaptchaRequired/isCaptchaRequired.d.ts.map +1 -0
  54. package/src/modules/captcha/setCaptchaToken/index.d.ts +2 -0
  55. package/src/modules/captcha/setCaptchaToken/index.d.ts.map +1 -0
  56. package/src/modules/captcha/setCaptchaToken/setCaptchaToken.d.ts +12 -0
  57. package/src/modules/captcha/setCaptchaToken/setCaptchaToken.d.ts.map +1 -0
  58. package/src/modules/captcha/state.d.ts +10 -0
  59. package/src/modules/captcha/state.d.ts.map +1 -0
  60. package/src/modules/initializeClient/initializeClient.d.ts.map +1 -1
  61. package/src/modules/initializeClient/waitForClientInitialized/index.d.ts +2 -0
  62. package/src/modules/initializeClient/waitForClientInitialized/index.d.ts.map +1 -0
  63. package/src/modules/initializeClient/waitForClientInitialized/waitForClientInitialized.d.ts +8 -0
  64. package/src/modules/initializeClient/waitForClientInitialized/waitForClientInitialized.d.ts.map +1 -0
  65. package/src/modules/mfa/{authMfaRecoveryCode/authMfaRecoveryCode.d.ts → authenticateMfaRecoveryCode/authenticateMfaRecoveryCode.d.ts} +5 -3
  66. package/src/modules/mfa/authenticateMfaRecoveryCode/authenticateMfaRecoveryCode.d.ts.map +1 -0
  67. package/src/modules/mfa/authenticateMfaRecoveryCode/index.d.ts +2 -0
  68. package/src/modules/mfa/authenticateMfaRecoveryCode/index.d.ts.map +1 -0
  69. package/src/modules/mfa/{authTotpMfaDevice/authTotpMfaDevice.d.ts → authenticateTotpMfaDevice/authenticateTotpMfaDevice.d.ts} +3 -3
  70. package/src/modules/mfa/authenticateTotpMfaDevice/authenticateTotpMfaDevice.d.ts.map +1 -0
  71. package/src/modules/mfa/authenticateTotpMfaDevice/index.d.ts +2 -0
  72. package/src/modules/mfa/authenticateTotpMfaDevice/index.d.ts.map +1 -0
  73. package/src/modules/otp/sendEmailOTP/sendEmailOTP.d.ts +2 -0
  74. package/src/modules/otp/sendEmailOTP/sendEmailOTP.d.ts.map +1 -1
  75. package/src/modules/otp/sendSmsOTP/sendSmsOTP.d.ts.map +1 -1
  76. package/src/modules/projectSettings/fetchProjectSettings/fetchProjectSettings.d.ts.map +1 -1
  77. package/src/modules/sessionKeys/generateSessionKeys/generateSessionKeys.d.ts.map +1 -1
  78. package/src/modules/state/raiseStateEvents/events.d.ts +4 -0
  79. package/src/modules/state/raiseStateEvents/events.d.ts.map +1 -1
  80. package/src/modules/storageSync/hydrateStateWithStorage/hydrateStateWithStorage.d.ts.map +1 -1
  81. package/src/modules/storageSync/schema.d.ts +2 -0
  82. package/src/modules/storageSync/schema.d.ts.map +1 -1
  83. package/src/modules/storageSync/syncStateWithStorage/syncStateWithStorage.d.ts.map +1 -1
  84. package/src/modules/waas/createWaasClient/createWaasClient.d.ts.map +1 -1
  85. package/src/modules/wallets/primaryWalletAccount/selectPrimaryWalletAccount/selectPrimaryWalletAccount.d.ts.map +1 -1
  86. package/src/modules/wallets/unverifiedWalletAccounts/setUnverifiedWalletAccounts/index.d.ts +2 -0
  87. package/src/modules/wallets/unverifiedWalletAccounts/{setUnverifiedWalletAccount → setUnverifiedWalletAccounts}/index.d.ts.map +1 -1
  88. package/src/modules/wallets/unverifiedWalletAccounts/setUnverifiedWalletAccounts/setUnverifiedWalletAccounts.d.ts +11 -0
  89. package/src/modules/wallets/unverifiedWalletAccounts/setUnverifiedWalletAccounts/setUnverifiedWalletAccounts.d.ts.map +1 -0
  90. package/src/modules/wallets/verifyWalletAccount/verifyWalletAccount.d.ts.map +1 -1
  91. package/src/modules/wallets/walletProvider/events/createWalletProviderEventEmitter/createWalletProviderEventEmitter.d.ts +7 -5
  92. package/src/modules/wallets/walletProvider/events/createWalletProviderEventEmitter/createWalletProviderEventEmitter.d.ts.map +1 -1
  93. package/src/modules/wallets/walletProvider/walletProvider.types.d.ts +10 -4
  94. package/src/modules/wallets/walletProvider/walletProvider.types.d.ts.map +1 -1
  95. package/src/modules/wallets/walletProviderRegistry/createWalletProviderRegistry/createWalletProviderRegistry.d.ts.map +1 -1
  96. package/src/modules/wallets/walletProviderRegistry/events.d.ts +6 -0
  97. package/src/modules/wallets/walletProviderRegistry/events.d.ts.map +1 -1
  98. package/src/modules/wallets/walletProviderRegistry/walletProviderRegistry.types.d.ts +18 -0
  99. package/src/modules/wallets/walletProviderRegistry/walletProviderRegistry.types.d.ts.map +1 -1
  100. package/src/services/storage/createLocalStorageAdapter/createLocalStorageAdapter.d.ts +6 -0
  101. package/src/services/storage/createLocalStorageAdapter/createLocalStorageAdapter.d.ts.map +1 -0
  102. package/src/services/storage/createLocalStorageAdapter/index.d.ts +2 -0
  103. package/src/services/storage/createLocalStorageAdapter/index.d.ts.map +1 -0
  104. package/src/services/storage/createStorage/createStorage.d.ts +11 -0
  105. package/src/services/storage/createStorage/createStorage.d.ts.map +1 -0
  106. package/src/services/storage/{createWebStorage → createStorage}/formatForStorage/index.d.ts.map +1 -1
  107. package/src/services/storage/{createWebStorage → createStorage}/formatForStorage/isValidDateISOString/index.d.ts.map +1 -1
  108. package/src/services/storage/createStorage/formatForStorage/isValidDateISOString/isValidDateISOString.d.ts.map +1 -0
  109. package/src/services/storage/createStorage/formatForStorage/storageFormat.d.ts.map +1 -0
  110. package/src/services/storage/createStorage/index.d.ts +2 -0
  111. package/src/services/storage/createStorage/index.d.ts.map +1 -0
  112. package/src/services/storage/index.d.ts +3 -1
  113. package/src/services/storage/index.d.ts.map +1 -1
  114. package/src/services/storage/storage.types.d.ts +11 -1
  115. package/src/services/storage/storage.types.d.ts.map +1 -1
  116. package/src/utils/isMobile/index.d.ts +2 -0
  117. package/src/utils/isMobile/index.d.ts.map +1 -0
  118. package/src/utils/isMobile/isMobile.d.ts +20 -0
  119. package/src/utils/isMobile/isMobile.d.ts.map +1 -0
  120. package/src/utils/retryOnFail/retryOnFail.d.ts.map +1 -1
  121. package/src/utils/setCookie/index.d.ts +2 -0
  122. package/src/utils/setCookie/index.d.ts.map +1 -0
  123. package/src/utils/setCookie/setCookie.d.ts +5 -0
  124. package/src/utils/setCookie/setCookie.d.ts.map +1 -0
  125. package/waas.cjs.js +28 -27
  126. package/waas.esm.js +4 -3
  127. package/waasCore.cjs.js +10 -8
  128. package/waasCore.esm.js +4 -2
  129. package/getChainFromVerifiedCredentialChain.cjs.js +0 -472
  130. package/getChainFromVerifiedCredentialChain.esm.js +0 -447
  131. package/refreshUser.cjs.js +0 -183
  132. package/refreshUser.esm.js +0 -175
  133. package/src/modules/auth/updateAuthFromVerifyResponse/checkAndRaiseAuthenticatedEvent/checkAndRaiseAuthenticatedEvent.d.ts +0 -10
  134. package/src/modules/auth/updateAuthFromVerifyResponse/checkAndRaiseAuthenticatedEvent/checkAndRaiseAuthenticatedEvent.d.ts.map +0 -1
  135. package/src/modules/auth/updateAuthFromVerifyResponse/checkAndRaiseAuthenticatedEvent/index.d.ts +0 -2
  136. package/src/modules/auth/updateAuthFromVerifyResponse/checkAndRaiseAuthenticatedEvent/index.d.ts.map +0 -1
  137. package/src/modules/mfa/authMfaRecoveryCode/authMfaRecoveryCode.d.ts.map +0 -1
  138. package/src/modules/mfa/authMfaRecoveryCode/index.d.ts +0 -2
  139. package/src/modules/mfa/authMfaRecoveryCode/index.d.ts.map +0 -1
  140. package/src/modules/mfa/authTotpMfaDevice/authTotpMfaDevice.d.ts.map +0 -1
  141. package/src/modules/mfa/authTotpMfaDevice/index.d.ts +0 -2
  142. package/src/modules/mfa/authTotpMfaDevice/index.d.ts.map +0 -1
  143. package/src/modules/wallets/unverifiedWalletAccounts/addUnverifiedWalletAccounts/addUnverifiedWalletAccounts.d.ts +0 -11
  144. package/src/modules/wallets/unverifiedWalletAccounts/addUnverifiedWalletAccounts/addUnverifiedWalletAccounts.d.ts.map +0 -1
  145. package/src/modules/wallets/unverifiedWalletAccounts/addUnverifiedWalletAccounts/index.d.ts +0 -2
  146. package/src/modules/wallets/unverifiedWalletAccounts/addUnverifiedWalletAccounts/index.d.ts.map +0 -1
  147. package/src/modules/wallets/unverifiedWalletAccounts/setUnverifiedWalletAccount/index.d.ts +0 -2
  148. package/src/modules/wallets/unverifiedWalletAccounts/setUnverifiedWalletAccount/setUnverifiedWalletAccount.d.ts +0 -11
  149. package/src/modules/wallets/unverifiedWalletAccounts/setUnverifiedWalletAccount/setUnverifiedWalletAccount.d.ts.map +0 -1
  150. package/src/services/storage/createWebStorage/createWebStorage.d.ts +0 -10
  151. package/src/services/storage/createWebStorage/createWebStorage.d.ts.map +0 -1
  152. package/src/services/storage/createWebStorage/formatForStorage/isValidDateISOString/isValidDateISOString.d.ts.map +0 -1
  153. package/src/services/storage/createWebStorage/formatForStorage/storageFormat.d.ts.map +0 -1
  154. package/src/services/storage/createWebStorage/index.d.ts +0 -3
  155. package/src/services/storage/createWebStorage/index.d.ts.map +0 -1
  156. /package/src/services/storage/{createWebStorage → createStorage}/formatForStorage/index.d.ts +0 -0
  157. /package/src/services/storage/{createWebStorage → createStorage}/formatForStorage/isValidDateISOString/index.d.ts +0 -0
  158. /package/src/services/storage/{createWebStorage → createStorage}/formatForStorage/isValidDateISOString/isValidDateISOString.d.ts +0 -0
  159. /package/src/services/storage/{createWebStorage → createStorage}/formatForStorage/storageFormat.d.ts +0 -0
package/CHANGELOG.md CHANGED
@@ -1,3 +1,66 @@
1
+ ## 0.1.0-alpha.10 (2025-09-22)
2
+
3
+ ### 🩹 Fixes
4
+
5
+ - ensure server side rendering will not trigger any api call ([#445](https://github.com/dynamic-labs/dynamic-sdk/pull/445))
6
+ - handle 401 when initializing the SDK ([#446](https://github.com/dynamic-labs/dynamic-sdk/pull/446))
7
+
8
+ ## 0.1.0-alpha.9 (2025-09-19)
9
+
10
+ ### 🚀 Features
11
+
12
+ - refresh user when cookies are enabled ([#430](https://github.com/dynamic-labs/dynamic-sdk/pull/430))
13
+ - introduce waitForClientInitialized ([#436](https://github.com/dynamic-labs/dynamic-sdk/pull/436))
14
+ - introduce isMobile helper utility ([#441](https://github.com/dynamic-labs/dynamic-sdk/pull/441))
15
+
16
+ ### 🩹 Fixes
17
+
18
+ - logout user when any api call fails with 401 ([#432](https://github.com/dynamic-labs/dynamic-sdk/pull/432))
19
+ - logout for connected only wallets ([#437](https://github.com/dynamic-labs/dynamic-sdk/pull/437))
20
+
21
+ ### 🔧 Refactors
22
+
23
+ - linter rule for addExtension functions ([#433](https://github.com/dynamic-labs/dynamic-sdk/pull/433))
24
+ - improve demo ui and organization ([#434](https://github.com/dynamic-labs/dynamic-sdk/pull/434))
25
+ - misc improvements ([#438](https://github.com/dynamic-labs/dynamic-sdk/pull/438))
26
+ - add linter rule for unpinned dependencies ([#439](https://github.com/dynamic-labs/dynamic-sdk/pull/439))
27
+
28
+ ## 0.1.0-alpha.8 (2025-09-15)
29
+
30
+ This was a version bump only, there were no code changes.
31
+
32
+ ## 0.1.0-alpha.7 (2025-09-12)
33
+
34
+ ### 🩹 Fixes
35
+
36
+ - logout with wallet standard sol wallets ([#423](https://github.com/dynamic-labs/dynamic-sdk/pull/423))
37
+
38
+ ## 0.1.0-alpha.6 (2025-09-11)
39
+
40
+ ### 🚀 Features
41
+
42
+ - add captcha support
43
+
44
+ ## 0.1.0-alpha.5 (2025-09-11)
45
+
46
+ ### 🚀 Features
47
+
48
+ - expose the session expires at date ([#420](https://github.com/dynamic-labs/dynamic-sdk/pull/420))
49
+
50
+ ## 0.1.0-alpha.4 (2025-09-10)
51
+
52
+ ### 🩹 Fixes
53
+
54
+ - set client version to project settings api call ([#414](https://github.com/dynamic-labs/dynamic-sdk/pull/414))
55
+
56
+ ## 0.1.0-alpha.3 (2025-09-09)
57
+
58
+ This was a version bump only, there were no code changes.
59
+
60
+ ## 0.1.0-alpha.2 (2025-09-08)
61
+
62
+ This was a version bump only, there were no code changes.
63
+
1
64
  ## 0.1.0-alpha.1 (2025-09-02)
2
65
 
3
66
  This was a version bump only, there were no code changes.
@@ -1,8 +1,8 @@
1
1
  'use strict';
2
2
 
3
- var getChainFromVerifiedCredentialChain = require('./getChainFromVerifiedCredentialChain.cjs.js');
3
+ var logout = require('./logout.cjs.js');
4
4
 
5
- class InvalidParamError extends getChainFromVerifiedCredentialChain.BaseError {
5
+ class InvalidParamError extends logout.BaseError {
6
6
  constructor(message){
7
7
  super({
8
8
  cause: null,
@@ -1,4 +1,4 @@
1
- import { B as BaseError } from './getChainFromVerifiedCredentialChain.esm.js';
1
+ import { B as BaseError } from './logout.esm.js';
2
2
 
3
3
  class InvalidParamError extends BaseError {
4
4
  constructor(message){
@@ -0,0 +1,38 @@
1
+ 'use strict';
2
+
3
+ var logout = require('./logout.cjs.js');
4
+ var getWalletProviderByKey = require('./getWalletProviderByKey.cjs.js');
5
+
6
+ /**
7
+ * Refreshes the current user's data from the server.
8
+ *
9
+ * This function fetches the latest user information from the backend,
10
+ * updating the local user state with any changes.
11
+ *
12
+ * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
13
+ * @returns A promise that resolves when the user data is refreshed.
14
+ */ const refreshUser = async (client = logout.getDefaultClient())=>{
15
+ const core = logout.getCore(client);
16
+ const apiClient = logout.createApiClient({}, client);
17
+ const response = await apiClient.refreshAuth({
18
+ environmentId: core.environmentId
19
+ });
20
+ getWalletProviderByKey.updateAuthFromVerifyResponse({
21
+ response
22
+ }, client);
23
+ };
24
+
25
+ class NotWaasWalletAccountError extends logout.BaseError {
26
+ constructor({ walletAddress }){
27
+ super({
28
+ cause: null,
29
+ code: 'not_waas_wallet_account_error',
30
+ docsUrl: null,
31
+ name: 'NotWaasWalletAccountError',
32
+ shortMessage: `Wallet account ${walletAddress} is not a Dynamic WaaS wallet account`
33
+ });
34
+ }
35
+ }
36
+
37
+ exports.NotWaasWalletAccountError = NotWaasWalletAccountError;
38
+ exports.refreshUser = refreshUser;
@@ -0,0 +1,35 @@
1
+ import { a as getDefaultClient, g as getCore, h as createApiClient, B as BaseError } from './logout.esm.js';
2
+ import { u as updateAuthFromVerifyResponse } from './getWalletProviderByKey.esm.js';
3
+
4
+ /**
5
+ * Refreshes the current user's data from the server.
6
+ *
7
+ * This function fetches the latest user information from the backend,
8
+ * updating the local user state with any changes.
9
+ *
10
+ * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
11
+ * @returns A promise that resolves when the user data is refreshed.
12
+ */ const refreshUser = async (client = getDefaultClient())=>{
13
+ const core = getCore(client);
14
+ const apiClient = createApiClient({}, client);
15
+ const response = await apiClient.refreshAuth({
16
+ environmentId: core.environmentId
17
+ });
18
+ updateAuthFromVerifyResponse({
19
+ response
20
+ }, client);
21
+ };
22
+
23
+ class NotWaasWalletAccountError extends BaseError {
24
+ constructor({ walletAddress }){
25
+ super({
26
+ cause: null,
27
+ code: 'not_waas_wallet_account_error',
28
+ docsUrl: null,
29
+ name: 'NotWaasWalletAccountError',
30
+ shortMessage: `Wallet account ${walletAddress} is not a Dynamic WaaS wallet account`
31
+ });
32
+ }
33
+ }
34
+
35
+ export { NotWaasWalletAccountError as N, refreshUser as r };
package/core.cjs.js CHANGED
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var assertPackageVersion = require('@dynamic-labs-sdk/assert-package-version');
4
- var getChainFromVerifiedCredentialChain = require('./getChainFromVerifiedCredentialChain.cjs.js');
4
+ var logout = require('./logout.cjs.js');
5
5
  var getNetworkProviderFromNetworkId = require('./getNetworkProviderFromNetworkId.cjs.js');
6
6
  var getWalletProviderByKey = require('./getWalletProviderByKey.cjs.js');
7
7
  var getSignedSessionId = require('./getSignedSessionId.cjs.js');
@@ -30,7 +30,7 @@ function _interopNamespaceDefault(e) {
30
30
 
31
31
  var z__namespace = /*#__PURE__*/_interopNamespaceDefault(z);
32
32
 
33
- class ClientsDoNotMatchError extends getChainFromVerifiedCredentialChain.BaseError {
33
+ class ClientsDoNotMatchError extends logout.BaseError {
34
34
  constructor(){
35
35
  super({
36
36
  cause: null,
@@ -42,7 +42,7 @@ class ClientsDoNotMatchError extends getChainFromVerifiedCredentialChain.BaseErr
42
42
  }
43
43
  }
44
44
 
45
- class MethodNotImplementedError extends getChainFromVerifiedCredentialChain.BaseError {
45
+ class MethodNotImplementedError extends logout.BaseError {
46
46
  constructor(methodName){
47
47
  super({
48
48
  cause: null,
@@ -54,7 +54,7 @@ class MethodNotImplementedError extends getChainFromVerifiedCredentialChain.Base
54
54
  }
55
55
  }
56
56
 
57
- class MultipleClientsFoundError extends getChainFromVerifiedCredentialChain.BaseError {
57
+ class MultipleClientsFoundError extends logout.BaseError {
58
58
  constructor(){
59
59
  super({
60
60
  cause: null,
@@ -76,7 +76,7 @@ class MultipleClientsFoundError extends getChainFromVerifiedCredentialChain.Base
76
76
  * @param extensionKey - The key of the extension to register.
77
77
  * @returns The client instance.
78
78
  */ const registerExtension = ({ extensionKey }, client)=>{
79
- const core = getChainFromVerifiedCredentialChain.getCore(client);
79
+ const core = logout.getCore(client);
80
80
  core.extensions.add(extensionKey);
81
81
  };
82
82
 
@@ -92,7 +92,7 @@ const createBaseNetworkProvider = (chain, networkData)=>({
92
92
  testnet: networkData.testnet
93
93
  });
94
94
 
95
- const networkRegistrySchema = getNetworkProviderFromNetworkId.createStorageKeySchema({
95
+ const networkRegistrySchema = logout.createStorageKeySchema({
96
96
  key: 'lastKnownNetworkRegistry',
97
97
  schema: z__namespace.record(z__namespace.string(), z__namespace.string())
98
98
  });
@@ -104,7 +104,7 @@ const networkRegistrySchema = getNetworkProviderFromNetworkId.createStorageKeySc
104
104
  * Reminder that this will not be used for chains that have an internal way to
105
105
  * switch networks (ex EVM).
106
106
  */ const createLastKnownNetworkRegistry = (client)=>{
107
- const core = getChainFromVerifiedCredentialChain.getCore(client);
107
+ const core = logout.getCore(client);
108
108
  const walletProviderKeyToNetworkId = new Map();
109
109
  const getNetworkId = async ({ walletProviderKey })=>{
110
110
  // Priorities:
@@ -132,7 +132,7 @@ const networkRegistrySchema = getNetworkProviderFromNetworkId.createStorageKeySc
132
132
  throw new getNetworkProviderFromNetworkId.NoNetworkProvidersError();
133
133
  }
134
134
  const defaultNetworkProvider = networkProviders.find((networkProvider)=>networkProvider.chain === walletProvider.chain);
135
- getChainFromVerifiedCredentialChain.assertDefined(defaultNetworkProvider, `No networks found for chain ${walletProvider.chain}`);
135
+ logout.assertDefined(defaultNetworkProvider, `No networks found for chain ${walletProvider.chain}`);
136
136
  walletProviderKeyToNetworkId.set(walletProviderKey, defaultNetworkProvider.networkId);
137
137
  // No need to set in storage, as we're just falling back to the default
138
138
  return {
@@ -149,7 +149,7 @@ const networkRegistrySchema = getNetworkProviderFromNetworkId.createStorageKeySc
149
149
  };
150
150
  };
151
151
 
152
- const getLastKnownNetworkRegistry = getWalletProviderByKey.createRuntimeServiceAccessKey('last-known-network-registry', (client)=>createLastKnownNetworkRegistry(client));
152
+ const getLastKnownNetworkRegistry = logout.createRuntimeServiceAccessKey('last-known-network-registry', (client)=>createLastKnownNetworkRegistry(client));
153
153
 
154
154
  const formatWalletProviderGroupKey = (walletName)=>walletName.replace(/[^a-zA-Z0-9]/g, '').toLowerCase();
155
155
 
@@ -180,25 +180,27 @@ const switchActiveNetworkInLastKnownRegistry = async ({ client, networkId, walle
180
180
  let eventEmitter;
181
181
  /** Value returned by setupEventListeners */ let setupReturnValue;
182
182
  const handleAccountsChanged = (params)=>{
183
- getChainFromVerifiedCredentialChain.assertDefined(eventEmitter, 'Event emitter not defined');
183
+ logout.assertDefined(eventEmitter, 'Event emitter not defined');
184
184
  eventEmitter.emit('accountsChanged', params);
185
185
  };
186
186
  const handleDisconnected = ()=>{
187
- getChainFromVerifiedCredentialChain.assertDefined(eventEmitter, 'Event emitter not defined');
187
+ logout.assertDefined(eventEmitter, 'Event emitter not defined');
188
188
  eventEmitter.emit('disconnected');
189
189
  };
190
190
  const handleNetworkChanged = (params)=>{
191
- getChainFromVerifiedCredentialChain.assertDefined(eventEmitter, 'Event emitter not defined');
191
+ logout.assertDefined(eventEmitter, 'Event emitter not defined');
192
192
  eventEmitter.emit('networkChanged', params);
193
193
  };
194
194
  const cleanupEventEmitter = ()=>{
195
+ if (!eventEmitter) {
196
+ return;
197
+ }
195
198
  removeEventListeners({
196
199
  handleAccountsChanged,
197
200
  handleDisconnected,
198
201
  handleNetworkChanged,
199
202
  setupReturnValue
200
203
  });
201
- setupReturnValue = undefined;
202
204
  eventEmitter = undefined;
203
205
  };
204
206
  const getEventEmitter = ()=>{
@@ -222,42 +224,47 @@ const switchActiveNetworkInLastKnownRegistry = async ({ client, networkId, walle
222
224
 
223
225
  const bufferToBase64 = (buf)=>{
224
226
  const binstr = Array.prototype.map.call(buf, (ch)=>String.fromCharCode(ch)).join('');
225
- return getChainFromVerifiedCredentialChain.getBuffer().from(binstr, 'binary').toString('base64');
227
+ return logout.getBuffer().from(binstr, 'binary').toString('base64');
226
228
  };
227
229
 
228
- assertPackageVersion.assertPackageVersion(getChainFromVerifiedCredentialChain.name, getChainFromVerifiedCredentialChain.version);
230
+ assertPackageVersion.assertPackageVersion(logout.name, logout.version);
229
231
 
230
- exports.APIError = getChainFromVerifiedCredentialChain.APIError;
231
- exports.ClientNotFoundError = getChainFromVerifiedCredentialChain.ClientNotFoundError;
232
- exports.DYNAMIC_SDK_API_VERSION = getChainFromVerifiedCredentialChain.DYNAMIC_SDK_API_VERSION;
233
- exports.ValueMustBeDefinedError = getChainFromVerifiedCredentialChain.ValueMustBeDefinedError;
234
- exports.assertDefined = getChainFromVerifiedCredentialChain.assertDefined;
235
- exports.createApiClient = getChainFromVerifiedCredentialChain.createApiClient;
236
- exports.getBuffer = getChainFromVerifiedCredentialChain.getBuffer;
237
- exports.getChainFromVerifiedCredentialChain = getChainFromVerifiedCredentialChain.getChainFromVerifiedCredentialChain;
238
- exports.getCore = getChainFromVerifiedCredentialChain.getCore;
239
- exports.getDefaultClient = getChainFromVerifiedCredentialChain.getDefaultClient;
240
- exports.isCookieEnabled = getChainFromVerifiedCredentialChain.isCookieEnabled;
232
+ exports.APIError = logout.APIError;
233
+ exports.ClientNotFoundError = logout.ClientNotFoundError;
234
+ exports.DYNAMIC_SDK_API_VERSION = logout.DYNAMIC_SDK_API_VERSION;
235
+ exports.NoWalletProviderFoundError = logout.NoWalletProviderFoundError;
236
+ exports.ValueMustBeDefinedError = logout.ValueMustBeDefinedError;
237
+ Object.defineProperty(exports, "WalletProviderPriority", {
238
+ enumerable: true,
239
+ get: function () { return logout.WalletProviderPriority; }
240
+ });
241
+ exports.assertDefined = logout.assertDefined;
242
+ exports.createApiClient = logout.createApiClient;
243
+ exports.createRuntimeServiceAccessKey = logout.createRuntimeServiceAccessKey;
244
+ exports.emitEvent = logout.emitEvent;
245
+ exports.formatWalletProviderKey = logout.formatWalletProviderKey;
246
+ exports.getBuffer = logout.getBuffer;
247
+ exports.getChainFromVerifiedCredentialChain = logout.getChainFromVerifiedCredentialChain;
248
+ exports.getCore = logout.getCore;
249
+ exports.getDefaultClient = logout.getDefaultClient;
250
+ exports.getWalletProviderFromWalletAccount = logout.getWalletProviderFromWalletAccount;
251
+ exports.getWalletProviderRegistry = logout.getWalletProviderRegistry;
252
+ exports.isCookieEnabled = logout.isCookieEnabled;
241
253
  exports.CannotTrackError = getNetworkProviderFromNetworkId.CannotTrackError;
242
254
  exports.InvalidStorageSet = getNetworkProviderFromNetworkId.InvalidStorageSet;
255
+ exports.consumeCaptchaToken = getNetworkProviderFromNetworkId.consumeCaptchaToken;
256
+ exports.createLocalStorageAdapter = getNetworkProviderFromNetworkId.createLocalStorageAdapter;
243
257
  exports.createLogger = getNetworkProviderFromNetworkId.createLogger;
258
+ exports.createStorage = getNetworkProviderFromNetworkId.createStorage;
244
259
  exports.formatSignInMessage = getNetworkProviderFromNetworkId.formatSignInMessage;
245
260
  exports.getNetworkProviderBuilderRegistry = getNetworkProviderFromNetworkId.getNetworkProviderBuilderRegistry;
246
261
  exports.getNetworkProviderFromNetworkId = getNetworkProviderFromNetworkId.getNetworkProviderFromNetworkId;
247
262
  exports.getNetworkProviders = getNetworkProviderFromNetworkId.getNetworkProviders;
248
263
  exports.hasExtension = getNetworkProviderFromNetworkId.hasExtension;
264
+ exports.setCaptchaToken = getNetworkProviderFromNetworkId.setCaptchaToken;
249
265
  exports.subscribeWithSelector = getNetworkProviderFromNetworkId.subscribeWithSelector;
250
- exports.NoWalletProviderFoundError = getWalletProviderByKey.NoWalletProviderFoundError;
251
- Object.defineProperty(exports, "WalletProviderPriority", {
252
- enumerable: true,
253
- get: function () { return getWalletProviderByKey.WalletProviderPriority; }
254
- });
255
- exports.createRuntimeServiceAccessKey = getWalletProviderByKey.createRuntimeServiceAccessKey;
256
- exports.emitEvent = getWalletProviderByKey.emitEvent;
257
- exports.formatWalletProviderKey = getWalletProviderByKey.formatWalletProviderKey;
258
- exports.getWalletProviderFromWalletAccount = getWalletProviderByKey.getWalletProviderFromWalletAccount;
259
- exports.getWalletProviderRegistry = getWalletProviderByKey.getWalletProviderRegistry;
260
266
  exports.getWalletProviders = getWalletProviderByKey.getWalletProviders;
267
+ exports.updateAuthFromVerifyResponse = getWalletProviderByKey.updateAuthFromVerifyResponse;
261
268
  exports.consumeMfaTokenIfRequiredForAction = getSignedSessionId.consumeMfaTokenIfRequiredForAction;
262
269
  exports.getSignedSessionId = getSignedSessionId.getSignedSessionId;
263
270
  exports.ClientsDoNotMatchError = ClientsDoNotMatchError;
package/core.esm.js CHANGED
@@ -1,10 +1,10 @@
1
1
  import { assertPackageVersion } from '@dynamic-labs-sdk/assert-package-version';
2
- import { B as BaseError, a as getCore, e as assertDefined, b as getBuffer, n as name, v as version } from './getChainFromVerifiedCredentialChain.esm.js';
3
- export { A as APIError, h as ClientNotFoundError, D as DYNAMIC_SDK_API_VERSION, V as ValueMustBeDefinedError, c as createApiClient, j as getChainFromVerifiedCredentialChain, g as getDefaultClient, i as isCookieEnabled } from './getChainFromVerifiedCredentialChain.esm.js';
4
- import { c as createStorageKeySchema, d as getNetworkProviders, N as NoNetworkProvidersError } from './getNetworkProviderFromNetworkId.esm.js';
5
- export { C as CannotTrackError, I as InvalidStorageSet, a as createLogger, f as formatSignInMessage, e as getNetworkProviderBuilderRegistry, b as getNetworkProviderFromNetworkId, h as hasExtension, s as subscribeWithSelector } from './getNetworkProviderFromNetworkId.esm.js';
6
- import { a as getWalletProviderByKey, f as createRuntimeServiceAccessKey } from './getWalletProviderByKey.esm.js';
7
- export { N as NoWalletProviderFoundError, W as WalletProviderPriority, e as emitEvent, h as formatWalletProviderKey, g as getWalletProviderFromWalletAccount, i as getWalletProviderRegistry, b as getWalletProviders } from './getWalletProviderByKey.esm.js';
2
+ import { B as BaseError, g as getCore, c as createStorageKeySchema, j as assertDefined, y as createRuntimeServiceAccessKey, z as getBuffer, p as name, v as version } from './logout.esm.js';
3
+ export { A as APIError, D as ClientNotFoundError, E as DYNAMIC_SDK_API_VERSION, N as NoWalletProviderFoundError, V as ValueMustBeDefinedError, W as WalletProviderPriority, h as createApiClient, e as emitEvent, F as formatWalletProviderKey, H as getChainFromVerifiedCredentialChain, a as getDefaultClient, k as getWalletProviderFromWalletAccount, G as getWalletProviderRegistry, i as isCookieEnabled } from './logout.esm.js';
4
+ import { l as getNetworkProviders, N as NoNetworkProvidersError } from './getNetworkProviderFromNetworkId.esm.js';
5
+ export { C as CannotTrackError, I as InvalidStorageSet, d as consumeCaptchaToken, b as createLocalStorageAdapter, c as createLogger, a as createStorage, f as formatSignInMessage, m as getNetworkProviderBuilderRegistry, e as getNetworkProviderFromNetworkId, k as hasExtension, j as setCaptchaToken, s as subscribeWithSelector } from './getNetworkProviderFromNetworkId.esm.js';
6
+ import { g as getWalletProviderByKey } from './getWalletProviderByKey.esm.js';
7
+ export { a as getWalletProviders, u as updateAuthFromVerifyResponse } from './getWalletProviderByKey.esm.js';
8
8
  export { c as consumeMfaTokenIfRequiredForAction, g as getSignedSessionId } from './getSignedSessionId.esm.js';
9
9
  import * as z from 'zod/mini';
10
10
  import EventEmitter from 'eventemitter3';
@@ -174,13 +174,15 @@ const switchActiveNetworkInLastKnownRegistry = async ({ client, networkId, walle
174
174
  eventEmitter.emit('networkChanged', params);
175
175
  };
176
176
  const cleanupEventEmitter = ()=>{
177
+ if (!eventEmitter) {
178
+ return;
179
+ }
177
180
  removeEventListeners({
178
181
  handleAccountsChanged,
179
182
  handleDisconnected,
180
183
  handleNetworkChanged,
181
184
  setupReturnValue
182
185
  });
183
- setupReturnValue = undefined;
184
186
  eventEmitter = undefined;
185
187
  };
186
188
  const getEventEmitter = ()=>{
@@ -1,8 +1,7 @@
1
1
  'use strict';
2
2
 
3
- var getChainFromVerifiedCredentialChain = require('./getChainFromVerifiedCredentialChain.cjs.js');
3
+ var logout = require('./logout.cjs.js');
4
4
  var EventEmitter = require('eventemitter3');
5
- var getWalletProviderByKey = require('./getWalletProviderByKey.cjs.js');
6
5
 
7
6
  /**
8
7
  * Shallow compare two objects.
@@ -56,11 +55,15 @@ var getWalletProviderByKey = require('./getWalletProviderByKey.cjs.js');
56
55
  });
57
56
  };
58
57
 
59
- const createStorageKeySchema = (params)=>{
60
- return params;
61
- };
58
+ /* eslint-disable no-restricted-globals -- this is the abstraction for localStorage */ /**
59
+ * Creates a localStorage adapter
60
+ */ const createLocalStorageAdapter = ()=>({
61
+ getItem: async (key)=>localStorage.getItem(key),
62
+ removeItem: async (key)=>localStorage.removeItem(key),
63
+ setItem: async (key, value)=>localStorage.setItem(key, value)
64
+ });
62
65
 
63
- class InvalidStorageSet extends getChainFromVerifiedCredentialChain.BaseError {
66
+ class InvalidStorageSet extends logout.BaseError {
64
67
  constructor({ key, value }){
65
68
  super({
66
69
  cause: null,
@@ -76,7 +79,85 @@ class InvalidStorageSet extends getChainFromVerifiedCredentialChain.BaseError {
76
79
  }
77
80
  }
78
81
 
79
- class CannotTrackError extends getChainFromVerifiedCredentialChain.BaseError {
82
+ /**
83
+ * Returns whether the given string is a valid ISO date string.
84
+ *
85
+ * Does not support timezone offsets.
86
+ */ const isValidDateISOString = (value)=>{
87
+ const date = new Date(value);
88
+ return !isNaN(date.getTime()) && date.toISOString() === value;
89
+ };
90
+
91
+ const DATE_PREFIX = '__DATE__';
92
+ const formatForStorage = (value)=>{
93
+ const item = {
94
+ value
95
+ };
96
+ return JSON.stringify(item, (_, entry)=>{
97
+ // You might think that entry here would be a Date and one could simply do "entry instanceof Date",
98
+ // but actually it will be a string already (no idea why JSON.stringify does this)
99
+ if (isValidDateISOString(entry)) {
100
+ return `${DATE_PREFIX}${entry}`;
101
+ }
102
+ return entry;
103
+ });
104
+ };
105
+ const parseFromStorage = (value)=>{
106
+ try {
107
+ const parsed = JSON.parse(value, (_, entry)=>{
108
+ if (typeof entry === 'string' && entry.startsWith(DATE_PREFIX)) {
109
+ return new Date(entry.slice(DATE_PREFIX.length));
110
+ }
111
+ return entry;
112
+ });
113
+ return parsed;
114
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
115
+ } catch (error) {
116
+ return null;
117
+ }
118
+ };
119
+
120
+ /**
121
+ * Creates a Storage service to interact with storage adapter
122
+ */ const createStorage = ({ prefix = '', storageAdapter })=>{
123
+ const getPrefixedKey = (key)=>prefix ? `${prefix}_${key}` : key;
124
+ return {
125
+ getItem: async (storageKeySchema)=>{
126
+ const rawItem = await storageAdapter.getItem(getPrefixedKey(storageKeySchema.key));
127
+ const parsedItem = rawItem ? parseFromStorage(rawItem) : null;
128
+ /**
129
+ * The item saved to localStorage may be malformed.
130
+ * In this case, we remove it and return null.
131
+ */ if (parsedItem !== null) {
132
+ const parsed = storageKeySchema.schema.safeParse(parsedItem.value);
133
+ if (parsed.success) {
134
+ return parsed.data;
135
+ }
136
+ }
137
+ /**
138
+ * The item saved to localStorage may be malformed.
139
+ * In this case, we remove it and return null.
140
+ */ await storageAdapter.removeItem(getPrefixedKey(storageKeySchema.key));
141
+ return null;
142
+ },
143
+ removeItem: async (storageKeySchema)=>{
144
+ await storageAdapter.removeItem(getPrefixedKey(storageKeySchema.key));
145
+ },
146
+ setItem: async (storageKeySchema, value)=>{
147
+ const parsed = storageKeySchema.schema.safeParse(value);
148
+ if (!parsed.success) {
149
+ throw new InvalidStorageSet({
150
+ key: storageKeySchema.key,
151
+ value: JSON.stringify(value)
152
+ });
153
+ }
154
+ const item = formatForStorage(parsed.data);
155
+ await storageAdapter.setItem(getPrefixedKey(storageKeySchema.key), item);
156
+ }
157
+ };
158
+ };
159
+
160
+ class CannotTrackError extends logout.BaseError {
80
161
  constructor(){
81
162
  super({
82
163
  cause: null,
@@ -131,7 +212,7 @@ const defaultConsole = console;
131
212
  };
132
213
  };
133
214
 
134
- class NoNetworkProvidersError extends getChainFromVerifiedCredentialChain.BaseError {
215
+ class NoNetworkProvidersError extends logout.BaseError {
135
216
  constructor(){
136
217
  super({
137
218
  cause: null,
@@ -143,6 +224,40 @@ class NoNetworkProvidersError extends getChainFromVerifiedCredentialChain.BaseEr
143
224
  }
144
225
  }
145
226
 
227
+ const isCaptchaRequired = (client = logout.getDefaultClient())=>{
228
+ var _projectSettings_security_hCaptcha;
229
+ const projectSettings = client.projectSettings;
230
+ logout.assertDefined(projectSettings, 'Project settings are not available');
231
+ var _projectSettings_security_hCaptcha_enabled;
232
+ return (_projectSettings_security_hCaptcha_enabled = (_projectSettings_security_hCaptcha = projectSettings.security.hCaptcha) == null ? void 0 : _projectSettings_security_hCaptcha.enabled) != null ? _projectSettings_security_hCaptcha_enabled : false;
233
+ };
234
+
235
+ /**
236
+ * Retrieves the current captcha token from the client state and sets it to null.
237
+ */ const consumeCaptchaToken = (client)=>{
238
+ const core = logout.getCore(client);
239
+ const captchaToken = core.state.get().captchaToken;
240
+ if (isCaptchaRequired(client)) {
241
+ logout.assertDefined(captchaToken, 'Captcha token is required');
242
+ }
243
+ core.state.set({
244
+ captchaToken: null
245
+ });
246
+ return captchaToken != null ? captchaToken : undefined;
247
+ };
248
+
249
+ /**
250
+ * Sets the given captcha token in the client state.
251
+ *
252
+ * @param params.captchaToken - The captcha token to set.
253
+ * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
254
+ */ const setCaptchaToken = ({ captchaToken }, client = logout.getDefaultClient())=>{
255
+ const core = logout.getCore(client);
256
+ core.state.set({
257
+ captchaToken
258
+ });
259
+ };
260
+
146
261
  /**
147
262
  * Checks if a specific extension has been applied to the Dynamic client.
148
263
  *
@@ -152,8 +267,8 @@ class NoNetworkProvidersError extends getChainFromVerifiedCredentialChain.BaseEr
152
267
  * @param params.extensionKey - The unique key identifying the extension to check for.
153
268
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
154
269
  * @returns True if the extension is applied, false otherwise.
155
- */ const hasExtension = ({ extensionKey }, client = getChainFromVerifiedCredentialChain.getDefaultClient())=>{
156
- const core = getChainFromVerifiedCredentialChain.getCore(client);
270
+ */ const hasExtension = ({ extensionKey }, client = logout.getDefaultClient())=>{
271
+ const core = logout.getCore(client);
157
272
  return core.extensions.has(extensionKey);
158
273
  };
159
274
 
@@ -200,8 +315,8 @@ class NoNetworkProvidersError extends getChainFromVerifiedCredentialChain.BaseEr
200
315
  /**
201
316
  * Maps the chain name from the API to the SDK chain name
202
317
  */ const getSdkChainFromApiChainName = (chainName)=>{
203
- const chains = Object.keys(getChainFromVerifiedCredentialChain.CHAINS_INFO_MAP);
204
- const chain = chains.find((chain)=>getChainFromVerifiedCredentialChain.CHAINS_INFO_MAP[chain].apiChainName === chainName);
318
+ const chains = Object.keys(logout.CHAINS_INFO_MAP);
319
+ const chain = chains.find((chain)=>logout.CHAINS_INFO_MAP[chain].apiChainName === chainName);
205
320
  return chain || null;
206
321
  };
207
322
 
@@ -213,10 +328,10 @@ class NoNetworkProvidersError extends getChainFromVerifiedCredentialChain.BaseEr
213
328
  *
214
329
  * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
215
330
  * @returns An array of network configuration data for all enabled networks.
216
- */ const getNetworksData = (client = getChainFromVerifiedCredentialChain.getDefaultClient())=>{
217
- const { state } = getChainFromVerifiedCredentialChain.getCore(client);
331
+ */ const getNetworksData = (client = logout.getDefaultClient())=>{
332
+ const { state } = logout.getCore(client);
218
333
  const { projectSettings } = state.get();
219
- getChainFromVerifiedCredentialChain.assertDefined(projectSettings, 'projectSettings not found');
334
+ logout.assertDefined(projectSettings, 'projectSettings not found');
220
335
  const networks = projectSettings.networks;
221
336
  if (!networks) {
222
337
  return [];
@@ -265,7 +380,7 @@ const createNetworkProviderBuilderRegistry = ()=>{
265
380
  };
266
381
  };
267
382
 
268
- const getNetworkProviderBuilderRegistry = getWalletProviderByKey.createRuntimeServiceAccessKey('networkProviderBuilderRegistry', createNetworkProviderBuilderRegistry);
383
+ const getNetworkProviderBuilderRegistry = logout.createRuntimeServiceAccessKey('networkProviderBuilderRegistry', createNetworkProviderBuilderRegistry);
269
384
 
270
385
  /**
271
386
  * Retrieves all registered network providers for enabled chains.
@@ -286,20 +401,24 @@ const getNetworkProviderFromNetworkId = ({ networkId, chain }, client)=>{
286
401
  throw new NoNetworkProvidersError();
287
402
  }
288
403
  const networkProvider = networkProviders.find((networkProvider)=>networkProvider.networkId === networkId && networkProvider.chain === chain);
289
- getChainFromVerifiedCredentialChain.assertDefined(networkProvider, `No network provider found for chain ${chain} with network id ${networkId}`);
404
+ logout.assertDefined(networkProvider, `No network provider found for chain ${chain} with network id ${networkId}`);
290
405
  return networkProvider;
291
406
  };
292
407
 
293
408
  exports.CannotTrackError = CannotTrackError;
294
409
  exports.InvalidStorageSet = InvalidStorageSet;
295
410
  exports.NoNetworkProvidersError = NoNetworkProvidersError;
411
+ exports.consumeCaptchaToken = consumeCaptchaToken;
412
+ exports.createLocalStorageAdapter = createLocalStorageAdapter;
296
413
  exports.createLogger = createLogger;
297
- exports.createStorageKeySchema = createStorageKeySchema;
414
+ exports.createStorage = createStorage;
298
415
  exports.formatSignInMessage = formatSignInMessage;
299
416
  exports.getNetworkProviderBuilderRegistry = getNetworkProviderBuilderRegistry;
300
417
  exports.getNetworkProviderFromNetworkId = getNetworkProviderFromNetworkId;
301
418
  exports.getNetworkProviders = getNetworkProviders;
302
419
  exports.getNetworksData = getNetworksData;
303
420
  exports.hasExtension = hasExtension;
421
+ exports.isCaptchaRequired = isCaptchaRequired;
304
422
  exports.isEqualShallow = isEqualShallow;
423
+ exports.setCaptchaToken = setCaptchaToken;
305
424
  exports.subscribeWithSelector = subscribeWithSelector;