@dynamic-labs/sdk-react-core 2.1.0-alpha.25 → 2.1.0-alpha.27

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 (88) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/package.cjs +1 -1
  3. package/package.js +1 -1
  4. package/package.json +13 -13
  5. package/src/lib/context/DynamicContext/DynamicContext.cjs +3 -5
  6. package/src/lib/context/DynamicContext/DynamicContext.js +3 -5
  7. package/src/lib/context/DynamicContext/hooks/useHandleLogout/types.d.ts +0 -1
  8. package/src/lib/context/DynamicContext/hooks/useHandleLogout/useHandleLogout.cjs +0 -1
  9. package/src/lib/context/DynamicContext/hooks/useHandleLogout/useHandleLogout.js +0 -1
  10. package/src/lib/context/DynamicContext/hooks/useTieCallbacksToEvents/useTieCallbacksToEvents.cjs +2 -2
  11. package/src/lib/context/DynamicContext/hooks/useTieCallbacksToEvents/useTieCallbacksToEvents.js +2 -2
  12. package/src/lib/context/DynamicContext/validators/validators.d.ts +2 -2
  13. package/src/lib/data/api/embeddedWallets/embeddedWallets.cjs +30 -14
  14. package/src/lib/data/api/embeddedWallets/embeddedWallets.d.ts +3 -2
  15. package/src/lib/data/api/embeddedWallets/embeddedWallets.js +30 -14
  16. package/src/lib/data/api/mfa/mfa.cjs +10 -5
  17. package/src/lib/data/api/mfa/mfa.d.ts +1 -1
  18. package/src/lib/data/api/mfa/mfa.js +10 -5
  19. package/src/lib/data/api/wallets/wallets.cjs +6 -3
  20. package/src/lib/data/api/wallets/wallets.d.ts +1 -1
  21. package/src/lib/data/api/wallets/wallets.js +6 -3
  22. package/src/lib/events/embeddedWallet.d.ts +2 -1
  23. package/src/lib/locale/en/translation.cjs +2 -2
  24. package/src/lib/locale/en/translation.d.ts +1 -1
  25. package/src/lib/locale/en/translation.js +2 -2
  26. package/src/lib/shared/types/dynamicEventsCallbacks.d.ts +1 -1
  27. package/src/lib/shared/types/localStorage.d.ts +0 -13
  28. package/src/lib/store/actions/networkConfigurationsActions/index.d.ts +1 -0
  29. package/src/lib/store/actions/networkConfigurationsActions/networkConfigurationsActions.cjs +10 -0
  30. package/src/lib/store/actions/networkConfigurationsActions/networkConfigurationsActions.d.ts +7 -0
  31. package/src/lib/store/actions/networkConfigurationsActions/networkConfigurationsActions.js +6 -0
  32. package/src/lib/store/hooks/useNetworkConfigurations/index.d.ts +1 -0
  33. package/src/lib/store/hooks/useNetworkConfigurations/useNetworkConfigurations.cjs +139 -0
  34. package/src/lib/store/hooks/useNetworkConfigurations/useNetworkConfigurations.d.ts +12 -0
  35. package/src/lib/store/hooks/useNetworkConfigurations/useNetworkConfigurations.js +135 -0
  36. package/src/lib/store/index.d.ts +3 -1
  37. package/src/lib/store/store.cjs +1 -0
  38. package/src/lib/store/store.js +1 -0
  39. package/src/lib/store/types.d.ts +6 -1
  40. package/src/lib/store/utils/clearExpiredData/clearExpiredData.cjs +4 -1
  41. package/src/lib/store/utils/clearExpiredData/clearExpiredData.js +4 -1
  42. package/src/lib/utils/constants/localStorage.cjs +0 -2
  43. package/src/lib/utils/constants/localStorage.js +1 -2
  44. package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.cjs +12 -15
  45. package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.js +12 -15
  46. package/src/lib/utils/hooks/useEmbeddedReveal/useEmbeddedReveal.cjs +3 -3
  47. package/src/lib/utils/hooks/useEmbeddedReveal/useEmbeddedReveal.js +3 -3
  48. package/src/lib/utils/hooks/useEmbeddedWallet/useMPCEmbeddedWallet/useCoinbaseMPC/useCoinbaseMPC.cjs +11 -10
  49. package/src/lib/utils/hooks/useEmbeddedWallet/useMPCEmbeddedWallet/useCoinbaseMPC/useCoinbaseMPC.js +11 -10
  50. package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useSecureEnclaveEmbeddedWallet.cjs +5 -6
  51. package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useSecureEnclaveEmbeddedWallet.js +5 -6
  52. package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useTurnkey/useTurnkey.cjs +1 -1
  53. package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useTurnkey/useTurnkey.js +1 -1
  54. package/src/lib/utils/hooks/useInitEmbeddedWalletAuthMethod/useInitEmbeddedWalletAuthMethod.cjs +2 -6
  55. package/src/lib/utils/hooks/useInitEmbeddedWalletAuthMethod/useInitEmbeddedWalletAuthMethod.js +2 -6
  56. package/src/lib/utils/hooks/useMfa/useMfa.cjs +1 -4
  57. package/src/lib/utils/hooks/useMfa/useMfa.js +1 -4
  58. package/src/lib/utils/hooks/usePasskeyRecovery/usePasskeyRecovery.cjs +29 -21
  59. package/src/lib/utils/hooks/usePasskeyRecovery/usePasskeyRecovery.js +29 -21
  60. package/src/lib/utils/hooks/useSocialAccounts/useSocialAccounts.cjs +1 -1
  61. package/src/lib/utils/hooks/useSocialAccounts/useSocialAccounts.js +1 -1
  62. package/src/lib/utils/hooks/useSocialAuth/farcaster.cjs +13 -4
  63. package/src/lib/utils/hooks/useSocialAuth/farcaster.d.ts +2 -0
  64. package/src/lib/utils/hooks/useSocialAuth/farcaster.js +13 -4
  65. package/src/lib/utils/hooks/useSocialAuth/useSocialAuth.cjs +4 -4
  66. package/src/lib/utils/hooks/useSocialAuth/useSocialAuth.d.ts +7 -6
  67. package/src/lib/utils/hooks/useSocialAuth/useSocialAuth.js +5 -5
  68. package/src/lib/utils/hooks/useTransferWallet/useTransferWallet.cjs +3 -5
  69. package/src/lib/utils/hooks/useTransferWallet/useTransferWallet.js +3 -5
  70. package/src/lib/utils/hooks/useUserAuth/useUserAuth.cjs +4 -1
  71. package/src/lib/utils/hooks/useUserAuth/useUserAuth.js +5 -2
  72. package/src/lib/utils/hooks/useWalletsConnectionState/index.d.ts +0 -1
  73. package/src/lib/views/EmailVerification/EmailVerification.cjs +6 -6
  74. package/src/lib/views/EmailVerification/EmailVerification.js +6 -6
  75. package/src/lib/views/MfaSecureDeviceView/MfaSecureDeviceView.cjs +2 -2
  76. package/src/lib/views/MfaSecureDeviceView/MfaSecureDeviceView.js +2 -2
  77. package/src/lib/views/Passkey/PasskeyRecovery/CompleteRecovery/PasskeyCompleteRecovery.cjs +5 -4
  78. package/src/lib/views/Passkey/PasskeyRecovery/CompleteRecovery/PasskeyCompleteRecovery.js +5 -4
  79. package/src/lib/views/Passkey/utils/createEmbeddedWalletRequest/createEmbeddedWalletRequest.cjs +5 -6
  80. package/src/lib/views/Passkey/utils/createEmbeddedWalletRequest/createEmbeddedWalletRequest.d.ts +1 -2
  81. package/src/lib/views/Passkey/utils/createEmbeddedWalletRequest/createEmbeddedWalletRequest.js +5 -6
  82. package/src/lib/views/Passkey/utils/passkeyRecovery/passkeyRecovery.cjs +8 -18
  83. package/src/lib/views/Passkey/utils/passkeyRecovery/passkeyRecovery.d.ts +4 -12
  84. package/src/lib/views/Passkey/utils/passkeyRecovery/passkeyRecovery.js +8 -18
  85. package/src/lib/utils/hooks/useProcessNetworkConfigurations/index.d.ts +0 -1
  86. package/src/lib/utils/hooks/useProcessNetworkConfigurations/useProcessNetworkConfigurations.cjs +0 -117
  87. package/src/lib/utils/hooks/useProcessNetworkConfigurations/useProcessNetworkConfigurations.d.ts +0 -14
  88. package/src/lib/utils/hooks/useProcessNetworkConfigurations/useProcessNetworkConfigurations.js +0 -113
@@ -14,7 +14,6 @@ import '../../../../utils/constants/values.js';
14
14
  import '../../../../shared/utils/classes/storage/localStorage.js';
15
15
  import '../../../../shared/consts/index.js';
16
16
  import '../../../../config/ApiEndpoint.js';
17
- import { createUserProfileFromSdkUser } from '../../../../utils/functions/createUserProfile/createUserProfile.js';
18
17
  import { findEmbeddedWalletFromVerifiedCredentials } from '../../../../utils/functions/findEmbeddedWalletFromVerifiedCredentials/findEmbeddedWalletFromVerifiedCredentials.js';
19
18
  import '@dynamic-labs/multi-wallet';
20
19
  import 'react-international-phone';
@@ -45,10 +44,11 @@ const createEmbeddedWalletRequest = (_a) => __awaiter(void 0, [_a], void 0, func
45
44
  passkeyAlias: displayName,
46
45
  };
47
46
  }
48
- const signersResponse = yield createTurnkeyEmbeddedWallet(Object.assign({ chains,
47
+ const updatedUser = yield createTurnkeyEmbeddedWallet(Object.assign({ chains,
49
48
  environmentId }, authenticatorBody));
50
- const { jwt, user: updatedSdkUser } = signersResponse;
51
- const updatedUser = createUserProfileFromSdkUser(updatedSdkUser);
49
+ if (!updatedUser) {
50
+ throw new DynamicError('Failed to create embedded wallet');
51
+ }
52
52
  const primaryChain = walletConnector.connectedChain;
53
53
  const embeddedWalletVerifiedCredential = findEmbeddedWalletFromVerifiedCredentials(updatedUser, [primaryChain]);
54
54
  if (!embeddedWalletVerifiedCredential) {
@@ -57,8 +57,7 @@ const createEmbeddedWalletRequest = (_a) => __awaiter(void 0, [_a], void 0, func
57
57
  walletConnector.setVerifiedCredentials(updatedUser.verifiedCredentials);
58
58
  return {
59
59
  embeddedWalletVerifiedCredential,
60
- jwt,
61
- signersResponse,
60
+ updatedUser,
62
61
  walletConnector,
63
62
  };
64
63
  });
@@ -19,7 +19,6 @@ require('../../../../utils/constants/values.cjs');
19
19
  var localStorage = require('../../../../shared/utils/classes/storage/localStorage.cjs');
20
20
  require('../../../../shared/consts/index.cjs');
21
21
  require('../../../../config/ApiEndpoint.cjs');
22
- var createUserProfile = require('../../../../utils/functions/createUserProfile/createUserProfile.cjs');
23
22
  var findEmbeddedWalletFromVerifiedCredentials = require('../../../../utils/functions/findEmbeddedWalletFromVerifiedCredentials/findEmbeddedWalletFromVerifiedCredentials.cjs');
24
23
  var errors = require('../../../../utils/constants/errors.cjs');
25
24
  require('@dynamic-labs/multi-wallet');
@@ -113,7 +112,7 @@ const resentRecoveryEmail = (_h) => _tslib.__awaiter(void 0, [_h], void 0, funct
113
112
  });
114
113
  });
115
114
  const completePasskeyRecovery = (_k) => _tslib.__awaiter(void 0, [_k], void 0, function* ({ user, environmentId, wallet, }) {
116
- const { passkeyRecoveryResponse, connector } = yield recoverTurnkeyWallet({
115
+ const { connector, user: updatedUser } = yield recoverTurnkeyWallet({
117
116
  addPasskeyAuthenticator: false,
118
117
  environmentId,
119
118
  user,
@@ -123,21 +122,16 @@ const completePasskeyRecovery = (_k) => _tslib.__awaiter(void 0, [_k], void 0, f
123
122
  connector.getAuthenticatorHandler().clear();
124
123
  // deletes iframe container after usage
125
124
  removeElementById.removeElementById(constants.iframeElementId);
126
- return {
127
- passkeyRecoveryResponse,
128
- };
125
+ return updatedUser;
129
126
  });
130
127
  const addNewPasskeyAuthenticator = (_l) => _tslib.__awaiter(void 0, [_l], void 0, function* ({ user, environmentId, wallet, }) {
131
- const { passkeyRecoveryResponse, updatedUserProfile } = yield recoverTurnkeyWallet({
128
+ const { user: updatedUser } = yield recoverTurnkeyWallet({
132
129
  addPasskeyAuthenticator: true,
133
130
  environmentId,
134
131
  user,
135
132
  wallet,
136
133
  });
137
- return {
138
- passkeyRecoveryResponse,
139
- user: updatedUserProfile,
140
- };
134
+ return updatedUser;
141
135
  });
142
136
  const recoverTurnkeyWallet = (_m) => _tslib.__awaiter(void 0, [_m], void 0, function* ({ wallet, user, environmentId, addPasskeyAuthenticator, }) {
143
137
  var _o, _p, _q;
@@ -172,28 +166,24 @@ const recoverTurnkeyWallet = (_m) => _tslib.__awaiter(void 0, [_m], void 0, func
172
166
  turnkeySubOrganizationId,
173
167
  });
174
168
  }
175
- // calls readcost recovery api
176
- const passkeyRecoveryResponse = yield embeddedWallets.completePasskeyRecovery({
169
+ const updatedUser = yield embeddedWallets.completePasskeyRecovery({
177
170
  attestation: attestation,
178
171
  challenge,
179
172
  environmentId,
180
173
  walletId: wallet.id,
181
174
  });
182
- const { user: updatedUser } = passkeyRecoveryResponse;
183
175
  if (!updatedUser) {
184
176
  throw new utils.DynamicError('No user returned from passkey recovery');
185
177
  }
186
- const updatedUserProfile = createUserProfile.createUserProfileFromSdkUser(updatedUser);
187
178
  const chain = connector.connectedChain;
188
- const embeddedWalletVerifiedCredential = findEmbeddedWalletFromVerifiedCredentials.findEmbeddedWalletFromVerifiedCredentials(updatedUserProfile, [chain]);
179
+ const embeddedWalletVerifiedCredential = findEmbeddedWalletFromVerifiedCredentials.findEmbeddedWalletFromVerifiedCredentials(updatedUser, [chain]);
189
180
  if (!embeddedWalletVerifiedCredential) {
190
181
  throw new utils.DynamicError('EmbeddedWalletVerifiedCredential not found');
191
182
  }
192
- connector.setVerifiedCredentials(updatedUserProfile.verifiedCredentials);
183
+ connector.setVerifiedCredentials(updatedUser.verifiedCredentials);
193
184
  return {
194
185
  connector,
195
- passkeyRecoveryResponse,
196
- updatedUserProfile,
186
+ user: updatedUser,
197
187
  };
198
188
  });
199
189
  const canRestoreEmbeddedWalletSession = (sessionExpirationTime) => {
@@ -1,5 +1,5 @@
1
1
  import { AuthenticatorType } from '@dynamic-labs/wallet-connector-core';
2
- import { Duration, InitEmailAuthResponse, InitPasskeyRecoveryResponse, VerifyResponse } from '@dynamic-labs/sdk-api-core';
2
+ import { Duration, InitEmailAuthResponse, InitPasskeyRecoveryResponse } from '@dynamic-labs/sdk-api-core';
3
3
  import { Wallet } from '../../../../shared';
4
4
  import { UserProfile } from '../../../../..';
5
5
  export declare const initEmbeddedWalletSession: ({ authenticatorType, iframeContainer, iframeElementId, environmentId, user, wallet, sessionExpiration, }: {
@@ -10,10 +10,7 @@ export declare const initEmbeddedWalletSession: ({ authenticatorType, iframeCont
10
10
  user: UserProfile | undefined;
11
11
  wallet: Wallet | null;
12
12
  sessionExpiration?: number;
13
- }) => Promise<{
14
- user: UserProfile;
15
- passkeyRecoveryResponse: VerifyResponse;
16
- } | undefined>;
13
+ }) => Promise<UserProfile | undefined>;
17
14
  export declare const passkeyRecoveryBundleValidation: ({ user, bundleInput, wallet, }: {
18
15
  user: UserProfile | undefined;
19
16
  bundleInput: string | undefined;
@@ -29,17 +26,12 @@ export declare const completePasskeyRecovery: ({ user, environmentId, wallet, }:
29
26
  environmentId: string;
30
27
  wallet: Wallet | null;
31
28
  user: UserProfile | undefined;
32
- }) => Promise<{
33
- passkeyRecoveryResponse: VerifyResponse;
34
- }>;
29
+ }) => Promise<UserProfile>;
35
30
  export declare const addNewPasskeyAuthenticator: ({ user, environmentId, wallet, }: {
36
31
  user: UserProfile | undefined;
37
32
  environmentId: string;
38
33
  wallet: Wallet | null;
39
- }) => Promise<{
40
- user: UserProfile;
41
- passkeyRecoveryResponse: VerifyResponse;
42
- }>;
34
+ }) => Promise<UserProfile>;
43
35
  export declare const canRestoreEmbeddedWalletSession: (sessionExpirationTime: Duration | undefined) => boolean;
44
36
  export declare const restoreEmbeddedWalletSession: ({ user, iframeContainer, iframeElementId, wallet, sessionExpiration, }: {
45
37
  user: UserProfile | undefined;
@@ -15,7 +15,6 @@ import '../../../../utils/constants/values.js';
15
15
  import { LocalStorage } from '../../../../shared/utils/classes/storage/localStorage.js';
16
16
  import '../../../../shared/consts/index.js';
17
17
  import '../../../../config/ApiEndpoint.js';
18
- import { createUserProfileFromSdkUser } from '../../../../utils/functions/createUserProfile/createUserProfile.js';
19
18
  import { findEmbeddedWalletFromVerifiedCredentials } from '../../../../utils/functions/findEmbeddedWalletFromVerifiedCredentials/findEmbeddedWalletFromVerifiedCredentials.js';
20
19
  import { USER_NOT_LOGGED_IN } from '../../../../utils/constants/errors.js';
21
20
  import '@dynamic-labs/multi-wallet';
@@ -109,7 +108,7 @@ const resentRecoveryEmail = (_h) => __awaiter(void 0, [_h], void 0, function* ({
109
108
  });
110
109
  });
111
110
  const completePasskeyRecovery = (_k) => __awaiter(void 0, [_k], void 0, function* ({ user, environmentId, wallet, }) {
112
- const { passkeyRecoveryResponse, connector } = yield recoverTurnkeyWallet({
111
+ const { connector, user: updatedUser } = yield recoverTurnkeyWallet({
113
112
  addPasskeyAuthenticator: false,
114
113
  environmentId,
115
114
  user,
@@ -119,21 +118,16 @@ const completePasskeyRecovery = (_k) => __awaiter(void 0, [_k], void 0, function
119
118
  connector.getAuthenticatorHandler().clear();
120
119
  // deletes iframe container after usage
121
120
  removeElementById(iframeElementId);
122
- return {
123
- passkeyRecoveryResponse,
124
- };
121
+ return updatedUser;
125
122
  });
126
123
  const addNewPasskeyAuthenticator = (_l) => __awaiter(void 0, [_l], void 0, function* ({ user, environmentId, wallet, }) {
127
- const { passkeyRecoveryResponse, updatedUserProfile } = yield recoverTurnkeyWallet({
124
+ const { user: updatedUser } = yield recoverTurnkeyWallet({
128
125
  addPasskeyAuthenticator: true,
129
126
  environmentId,
130
127
  user,
131
128
  wallet,
132
129
  });
133
- return {
134
- passkeyRecoveryResponse,
135
- user: updatedUserProfile,
136
- };
130
+ return updatedUser;
137
131
  });
138
132
  const recoverTurnkeyWallet = (_m) => __awaiter(void 0, [_m], void 0, function* ({ wallet, user, environmentId, addPasskeyAuthenticator, }) {
139
133
  var _o, _p, _q;
@@ -168,28 +162,24 @@ const recoverTurnkeyWallet = (_m) => __awaiter(void 0, [_m], void 0, function* (
168
162
  turnkeySubOrganizationId,
169
163
  });
170
164
  }
171
- // calls readcost recovery api
172
- const passkeyRecoveryResponse = yield completePasskeyRecovery$1({
165
+ const updatedUser = yield completePasskeyRecovery$1({
173
166
  attestation: attestation,
174
167
  challenge,
175
168
  environmentId,
176
169
  walletId: wallet.id,
177
170
  });
178
- const { user: updatedUser } = passkeyRecoveryResponse;
179
171
  if (!updatedUser) {
180
172
  throw new DynamicError('No user returned from passkey recovery');
181
173
  }
182
- const updatedUserProfile = createUserProfileFromSdkUser(updatedUser);
183
174
  const chain = connector.connectedChain;
184
- const embeddedWalletVerifiedCredential = findEmbeddedWalletFromVerifiedCredentials(updatedUserProfile, [chain]);
175
+ const embeddedWalletVerifiedCredential = findEmbeddedWalletFromVerifiedCredentials(updatedUser, [chain]);
185
176
  if (!embeddedWalletVerifiedCredential) {
186
177
  throw new DynamicError('EmbeddedWalletVerifiedCredential not found');
187
178
  }
188
- connector.setVerifiedCredentials(updatedUserProfile.verifiedCredentials);
179
+ connector.setVerifiedCredentials(updatedUser.verifiedCredentials);
189
180
  return {
190
181
  connector,
191
- passkeyRecoveryResponse,
192
- updatedUserProfile,
182
+ user: updatedUser,
193
183
  };
194
184
  });
195
185
  const canRestoreEmbeddedWalletSession = (sessionExpirationTime) => {
@@ -1 +0,0 @@
1
- export { useProcessNetworkConfigurations } from './useProcessNetworkConfigurations';
@@ -1,117 +0,0 @@
1
- 'use client'
2
- 'use strict';
3
-
4
- Object.defineProperty(exports, '__esModule', { value: true });
5
-
6
- var React = require('react');
7
- var validators = require('../../../context/DynamicContext/validators/validators.cjs');
8
- require('@dynamic-labs/sdk-api-core');
9
- require('../../../shared/logger.cjs');
10
- require('@dynamic-labs/iconic');
11
- require('@dynamic-labs/wallet-connector-core');
12
- require('react/jsx-runtime');
13
- require('../../../context/ViewContext/ViewContext.cjs');
14
- require('@dynamic-labs/wallet-book');
15
- var localStorage = require('../../constants/localStorage.cjs');
16
- require('../../constants/colors.cjs');
17
- require('../../constants/values.cjs');
18
- var localStorage$1 = require('../../../shared/utils/classes/storage/localStorage.cjs');
19
- var useLocalStorage = require('../../../shared/utils/hooks/useLocalStorage/useLocalStorage.cjs');
20
- require('@dynamic-labs/utils');
21
- require('../../../shared/consts/index.cjs');
22
-
23
- const useProcessNetworkConfigurations = ({ authToken, environmentId, evmNetworksOverrides, projectSettings, }) => {
24
- /**
25
- * This is the version of the local storage object. If the version changes, the local storage object will be removed.
26
- * This is used in case we need to change the structure of the local storage object.
27
- */
28
- const VERSION = 3;
29
- const [lsNetworks, setLsNetworks, removeLsNetworks] = useLocalStorage.useLocalStorage(localStorage.NETWORKS_STORAGE_KEY, undefined, validators.validateLocalStorageExpiry);
30
- const [loading, setLoading] = React.useState(false);
31
- const [lsNetworksExists, setlsNetworksExists] = React.useState(Boolean(lsNetworks === null || lsNetworks === void 0 ? void 0 : lsNetworks.networkConfigurations) &&
32
- (lsNetworks === null || lsNetworks === void 0 ? void 0 : lsNetworks.version) === VERSION);
33
- const handleRemoveLsNetworks = React.useCallback(() => {
34
- removeLsNetworks();
35
- setlsNetworksExists(false);
36
- }, [removeLsNetworks]);
37
- React.useEffect(() => {
38
- if (lsNetworks && (lsNetworks === null || lsNetworks === void 0 ? void 0 : lsNetworks.environmentId) !== environmentId) {
39
- handleRemoveLsNetworks();
40
- }
41
- if (lsNetworks && lsNetworks.version !== VERSION) {
42
- handleRemoveLsNetworks();
43
- }
44
- }, [environmentId, handleRemoveLsNetworks, lsNetworks]);
45
- // Erase network data if user is not logged in
46
- React.useEffect(() => {
47
- const connectedWalletData = localStorage$1.LocalStorage.getFromLS(localStorage.CONNECTED_WALLETS_INFO) || [];
48
- if (!authToken && !(connectedWalletData === null || connectedWalletData === void 0 ? void 0 : connectedWalletData.length)) {
49
- handleRemoveLsNetworks();
50
- }
51
- }, [authToken, handleRemoveLsNetworks]);
52
- // When customer networks change, we need to update ls networks
53
- React.useEffect(() => {
54
- setlsNetworksExists(false);
55
- }, [evmNetworksOverrides]);
56
- // Generate and store networks object
57
- React.useEffect(() => {
58
- var _a, _b, _c, _d;
59
- if (!lsNetworksExists && !loading && (projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.networks)) {
60
- setLoading(true);
61
- const { networks } = projectSettings;
62
- const expiry = new Date().getTime() + 60000 * 5;
63
- const evm = networks.find((configurations) => configurations.chainName === 'evm');
64
- const solana = networks.find((configurations) => configurations.chainName === 'solana');
65
- const cosmos = networks.find((configurations) => configurations.chainName === 'cosmos');
66
- const starknet = networks.find((configurations) => configurations.chainName === 'starknet');
67
- const createNetwork = (network, parser = (input) => input) => ({
68
- blockExplorerUrls: network.blockExplorerUrls,
69
- chainId: parser(network.chainId),
70
- iconUrls: network.iconUrls,
71
- lcdUrl: network.lcdUrl,
72
- name: network.name,
73
- nativeCurrency: network.nativeCurrency,
74
- networkId: parser(network.networkId),
75
- privateCustomerRpcUrls: network.privateCustomerRpcUrls,
76
- rpcUrls: network.rpcUrls,
77
- vanityName: network.vanityName,
78
- });
79
- const cosmosNetworks = (_a = cosmos === null || cosmos === void 0 ? void 0 : cosmos.networks) === null || _a === void 0 ? void 0 : _a.map((net) => createNetwork(net, parseInt));
80
- let evmNetworks = (_b = evm === null || evm === void 0 ? void 0 : evm.networks) === null || _b === void 0 ? void 0 : _b.map((net) => createNetwork(net, parseInt));
81
- const starknetNetworks = (_c = starknet === null || starknet === void 0 ? void 0 : starknet.networks) === null || _c === void 0 ? void 0 : _c.map((net) => createNetwork(net));
82
- const solanaNetworks = (_d = solana === null || solana === void 0 ? void 0 : solana.networks) === null || _d === void 0 ? void 0 : _d.map((net) => createNetwork(net));
83
- if (evmNetworksOverrides) {
84
- if (Array.isArray(evmNetworksOverrides))
85
- evmNetworks = evmNetworksOverrides;
86
- else
87
- evmNetworks = evmNetworksOverrides(evmNetworks !== null && evmNetworks !== void 0 ? evmNetworks : []);
88
- }
89
- setLsNetworks({
90
- environmentId,
91
- expiry,
92
- networkConfigurations: {
93
- cosmos: cosmosNetworks,
94
- evm: evmNetworks,
95
- solana: solanaNetworks,
96
- starknet: starknetNetworks,
97
- },
98
- version: VERSION,
99
- });
100
- setlsNetworksExists(true);
101
- setLoading(false);
102
- }
103
- }, [
104
- environmentId,
105
- loading,
106
- lsNetworksExists,
107
- setLsNetworks,
108
- projectSettings,
109
- evmNetworksOverrides,
110
- ]);
111
- return {
112
- handleRemoveLsNetworks,
113
- networkConfigurations: lsNetworks === null || lsNetworks === void 0 ? void 0 : lsNetworks.networkConfigurations,
114
- };
115
- };
116
-
117
- exports.useProcessNetworkConfigurations = useProcessNetworkConfigurations;
@@ -1,14 +0,0 @@
1
- import { ProjectSettings } from '@dynamic-labs/sdk-api-core';
2
- import { GenericNetwork } from '@dynamic-labs/types';
3
- import { EvmNetworksOverrides } from '../../../context/DynamicContext/types';
4
- export type FetchNetworkConfigurationsProps = {
5
- authToken: string | undefined;
6
- environmentId: string;
7
- evmNetworks?: GenericNetwork[];
8
- evmNetworksOverrides?: EvmNetworksOverrides;
9
- projectSettings?: ProjectSettings;
10
- };
11
- export declare const useProcessNetworkConfigurations: ({ authToken, environmentId, evmNetworksOverrides, projectSettings, }: FetchNetworkConfigurationsProps) => {
12
- handleRemoveLsNetworks: () => void;
13
- networkConfigurations: import("@dynamic-labs/types").NetworkConfigurationMap | undefined;
14
- };
@@ -1,113 +0,0 @@
1
- 'use client'
2
- import { useState, useCallback, useEffect } from 'react';
3
- import { validateLocalStorageExpiry } from '../../../context/DynamicContext/validators/validators.js';
4
- import '@dynamic-labs/sdk-api-core';
5
- import '../../../shared/logger.js';
6
- import '@dynamic-labs/iconic';
7
- import '@dynamic-labs/wallet-connector-core';
8
- import 'react/jsx-runtime';
9
- import '../../../context/ViewContext/ViewContext.js';
10
- import '@dynamic-labs/wallet-book';
11
- import { NETWORKS_STORAGE_KEY, CONNECTED_WALLETS_INFO } from '../../constants/localStorage.js';
12
- import '../../constants/colors.js';
13
- import '../../constants/values.js';
14
- import { LocalStorage } from '../../../shared/utils/classes/storage/localStorage.js';
15
- import { useLocalStorage } from '../../../shared/utils/hooks/useLocalStorage/useLocalStorage.js';
16
- import '@dynamic-labs/utils';
17
- import '../../../shared/consts/index.js';
18
-
19
- const useProcessNetworkConfigurations = ({ authToken, environmentId, evmNetworksOverrides, projectSettings, }) => {
20
- /**
21
- * This is the version of the local storage object. If the version changes, the local storage object will be removed.
22
- * This is used in case we need to change the structure of the local storage object.
23
- */
24
- const VERSION = 3;
25
- const [lsNetworks, setLsNetworks, removeLsNetworks] = useLocalStorage(NETWORKS_STORAGE_KEY, undefined, validateLocalStorageExpiry);
26
- const [loading, setLoading] = useState(false);
27
- const [lsNetworksExists, setlsNetworksExists] = useState(Boolean(lsNetworks === null || lsNetworks === void 0 ? void 0 : lsNetworks.networkConfigurations) &&
28
- (lsNetworks === null || lsNetworks === void 0 ? void 0 : lsNetworks.version) === VERSION);
29
- const handleRemoveLsNetworks = useCallback(() => {
30
- removeLsNetworks();
31
- setlsNetworksExists(false);
32
- }, [removeLsNetworks]);
33
- useEffect(() => {
34
- if (lsNetworks && (lsNetworks === null || lsNetworks === void 0 ? void 0 : lsNetworks.environmentId) !== environmentId) {
35
- handleRemoveLsNetworks();
36
- }
37
- if (lsNetworks && lsNetworks.version !== VERSION) {
38
- handleRemoveLsNetworks();
39
- }
40
- }, [environmentId, handleRemoveLsNetworks, lsNetworks]);
41
- // Erase network data if user is not logged in
42
- useEffect(() => {
43
- const connectedWalletData = LocalStorage.getFromLS(CONNECTED_WALLETS_INFO) || [];
44
- if (!authToken && !(connectedWalletData === null || connectedWalletData === void 0 ? void 0 : connectedWalletData.length)) {
45
- handleRemoveLsNetworks();
46
- }
47
- }, [authToken, handleRemoveLsNetworks]);
48
- // When customer networks change, we need to update ls networks
49
- useEffect(() => {
50
- setlsNetworksExists(false);
51
- }, [evmNetworksOverrides]);
52
- // Generate and store networks object
53
- useEffect(() => {
54
- var _a, _b, _c, _d;
55
- if (!lsNetworksExists && !loading && (projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.networks)) {
56
- setLoading(true);
57
- const { networks } = projectSettings;
58
- const expiry = new Date().getTime() + 60000 * 5;
59
- const evm = networks.find((configurations) => configurations.chainName === 'evm');
60
- const solana = networks.find((configurations) => configurations.chainName === 'solana');
61
- const cosmos = networks.find((configurations) => configurations.chainName === 'cosmos');
62
- const starknet = networks.find((configurations) => configurations.chainName === 'starknet');
63
- const createNetwork = (network, parser = (input) => input) => ({
64
- blockExplorerUrls: network.blockExplorerUrls,
65
- chainId: parser(network.chainId),
66
- iconUrls: network.iconUrls,
67
- lcdUrl: network.lcdUrl,
68
- name: network.name,
69
- nativeCurrency: network.nativeCurrency,
70
- networkId: parser(network.networkId),
71
- privateCustomerRpcUrls: network.privateCustomerRpcUrls,
72
- rpcUrls: network.rpcUrls,
73
- vanityName: network.vanityName,
74
- });
75
- const cosmosNetworks = (_a = cosmos === null || cosmos === void 0 ? void 0 : cosmos.networks) === null || _a === void 0 ? void 0 : _a.map((net) => createNetwork(net, parseInt));
76
- let evmNetworks = (_b = evm === null || evm === void 0 ? void 0 : evm.networks) === null || _b === void 0 ? void 0 : _b.map((net) => createNetwork(net, parseInt));
77
- const starknetNetworks = (_c = starknet === null || starknet === void 0 ? void 0 : starknet.networks) === null || _c === void 0 ? void 0 : _c.map((net) => createNetwork(net));
78
- const solanaNetworks = (_d = solana === null || solana === void 0 ? void 0 : solana.networks) === null || _d === void 0 ? void 0 : _d.map((net) => createNetwork(net));
79
- if (evmNetworksOverrides) {
80
- if (Array.isArray(evmNetworksOverrides))
81
- evmNetworks = evmNetworksOverrides;
82
- else
83
- evmNetworks = evmNetworksOverrides(evmNetworks !== null && evmNetworks !== void 0 ? evmNetworks : []);
84
- }
85
- setLsNetworks({
86
- environmentId,
87
- expiry,
88
- networkConfigurations: {
89
- cosmos: cosmosNetworks,
90
- evm: evmNetworks,
91
- solana: solanaNetworks,
92
- starknet: starknetNetworks,
93
- },
94
- version: VERSION,
95
- });
96
- setlsNetworksExists(true);
97
- setLoading(false);
98
- }
99
- }, [
100
- environmentId,
101
- loading,
102
- lsNetworksExists,
103
- setLsNetworks,
104
- projectSettings,
105
- evmNetworksOverrides,
106
- ]);
107
- return {
108
- handleRemoveLsNetworks,
109
- networkConfigurations: lsNetworks === null || lsNetworks === void 0 ? void 0 : lsNetworks.networkConfigurations,
110
- };
111
- };
112
-
113
- export { useProcessNetworkConfigurations };