@dynamic-labs/sdk-react-core 3.4.0 → 3.4.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +16 -0
- package/package.cjs +2 -2
- package/package.js +2 -2
- package/package.json +12 -12
- package/src/lib/Main.cjs +1 -1
- package/src/lib/Main.js +1 -1
- package/src/lib/components/SendBalancePageLayout/SendBalancePageLayout.cjs +26 -6
- package/src/lib/components/SendBalancePageLayout/SendBalancePageLayout.js +27 -7
- package/src/lib/components/TransactionCard/TransactionCard.cjs +76 -5
- package/src/lib/components/TransactionCard/TransactionCard.js +77 -6
- package/src/lib/components/TransactionStatusLayout/TransactionStatusLayout.cjs +1 -1
- package/src/lib/components/TransactionStatusLayout/TransactionStatusLayout.js +1 -1
- package/src/lib/components/UserProfile/UserProfile.cjs +1 -1
- package/src/lib/components/UserProfile/UserProfile.js +1 -1
- package/src/lib/components/UserProfileForm/UserProfileForm.cjs +1 -1
- package/src/lib/components/UserProfileForm/UserProfileForm.js +1 -1
- package/src/lib/components/WalletConnectorEvents/WalletConnectorEvents.cjs +126 -0
- package/src/lib/components/WalletConnectorEvents/WalletConnectorEvents.d.ts +1 -0
- package/src/lib/components/WalletConnectorEvents/WalletConnectorEvents.js +122 -0
- package/src/lib/components/WalletConnectorEvents/index.d.ts +1 -0
- package/src/lib/components/index.d.ts +1 -0
- package/src/lib/context/DynamicContext/DynamicContext.cjs +26 -25
- package/src/lib/context/DynamicContext/DynamicContext.js +18 -17
- package/src/lib/context/MockContext/MockContext.cjs +1 -1
- package/src/lib/context/MockContext/MockContext.js +1 -1
- package/src/lib/layout/DynamicAuthLayout/Header/header.cjs +1 -1
- package/src/lib/layout/DynamicAuthLayout/Header/header.js +1 -1
- package/src/lib/layout/DynamicAuthLayout/HelpContent/HelpHeader/HelpHeader.cjs +1 -1
- package/src/lib/layout/DynamicAuthLayout/HelpContent/HelpHeader/HelpHeader.js +1 -1
- package/src/lib/layouts/BridgeNextWalletToConnectLayout/BridgeNextWalletToConnectLayout.cjs +1 -1
- package/src/lib/layouts/BridgeNextWalletToConnectLayout/BridgeNextWalletToConnectLayout.js +1 -1
- package/src/lib/layouts/BridgeWelcomeLayout/BridgeWelcomeLayout.cjs +1 -1
- package/src/lib/layouts/BridgeWelcomeLayout/BridgeWelcomeLayout.js +1 -1
- package/src/lib/layouts/ConnectedWalletsListLayout/ConnectedWalletsListLayout.cjs +1 -1
- package/src/lib/layouts/ConnectedWalletsListLayout/ConnectedWalletsListLayout.js +1 -1
- package/src/lib/modals/SendBalanceModal/SendBalanceModal.cjs +1 -1
- package/src/lib/modals/SendBalanceModal/SendBalanceModal.js +1 -1
- package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.cjs +1 -1
- package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.js +1 -1
- package/src/lib/store/internalImplementation/utils/clearExpiredData/clearExpiredData.cjs +1 -6
- package/src/lib/store/internalImplementation/utils/clearExpiredData/clearExpiredData.js +1 -6
- package/src/lib/store/stateConfig.cjs +0 -5
- package/src/lib/store/stateConfig.js +0 -5
- package/src/lib/store/types.d.ts +1 -6
- package/src/lib/utils/functions/networksAndChains/networksAndChains.cjs +19 -40
- package/src/lib/utils/functions/networksAndChains/networksAndChains.d.ts +11 -7
- package/src/lib/utils/functions/networksAndChains/networksAndChains.js +19 -38
- package/src/lib/utils/hooks/index.d.ts +1 -1
- package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.cjs +2 -2
- package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.js +2 -2
- package/src/lib/utils/hooks/useCreateWalletConnectorOptions/index.d.ts +1 -0
- package/src/lib/utils/hooks/{useWalletConnectorOptions/useWalletConnectorOptions.cjs → useCreateWalletConnectorOptions/useCreateWalletConnectorOptions.cjs} +2 -2
- package/src/lib/utils/hooks/{useWalletConnectorOptions/useWalletConnectorOptions.d.ts → useCreateWalletConnectorOptions/useCreateWalletConnectorOptions.d.ts} +1 -1
- package/src/lib/utils/hooks/{useWalletConnectorOptions/useWalletConnectorOptions.js → useCreateWalletConnectorOptions/useCreateWalletConnectorOptions.js} +2 -2
- package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useSecureEnclaveEmbeddedWallet.cjs +5 -2
- package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useSecureEnclaveEmbeddedWallet.js +5 -2
- package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useTurnkey/useTurnkey.cjs +23 -11
- package/src/lib/utils/hooks/useEmbeddedWallet/useSecureEnclaveEmbeddedWallet/useTurnkey/useTurnkey.js +23 -11
- package/src/lib/utils/hooks/useNetworkConfigurationsFromProjectSettings/index.d.ts +1 -0
- package/src/lib/utils/hooks/useNetworkConfigurationsFromProjectSettings/useNetworkConfigurationsFromProjectSettings.cjs +63 -0
- package/src/lib/utils/hooks/useNetworkConfigurationsFromProjectSettings/useNetworkConfigurationsFromProjectSettings.d.ts +9 -0
- package/src/lib/utils/hooks/useNetworkConfigurationsFromProjectSettings/useNetworkConfigurationsFromProjectSettings.js +59 -0
- package/src/lib/views/CoinbaseMPCClaimIntro/CoinbaseMPCClaimIntro.cjs +1 -1
- package/src/lib/views/CoinbaseMPCClaimIntro/CoinbaseMPCClaimIntro.js +1 -1
- package/src/lib/views/CollectUserDataView/OnboardingUserDataForm/OnboardingUserDataForm.cjs +1 -1
- package/src/lib/views/CollectUserDataView/OnboardingUserDataForm/OnboardingUserDataForm.js +1 -1
- package/src/lib/views/CreatePasswordView/CreatePasswordStep/CreatePasswordStep.cjs +1 -1
- package/src/lib/views/CreatePasswordView/CreatePasswordStep/CreatePasswordStep.js +1 -1
- package/src/lib/views/CreatePasswordView/SavePasswordStep/SavePasswordStep.cjs +1 -1
- package/src/lib/views/CreatePasswordView/SavePasswordStep/SavePasswordStep.js +1 -1
- package/src/lib/views/EmailVerification/EmailVerification.cjs +3 -1
- package/src/lib/views/EmailVerification/EmailVerification.js +3 -1
- package/src/lib/views/EnterPasswordView/EnterPasswordView.cjs +1 -1
- package/src/lib/views/EnterPasswordView/EnterPasswordView.js +1 -1
- package/src/lib/views/MfaChooseDeviceView/MfaChooseDeviceView.cjs +1 -1
- package/src/lib/views/MfaChooseDeviceView/MfaChooseDeviceView.js +1 -1
- package/src/lib/views/Passkey/PasskeyNewDomainDetectedView/PasskeyNewDomainDetectedView.cjs +1 -1
- package/src/lib/views/Passkey/PasskeyNewDomainDetectedView/PasskeyNewDomainDetectedView.js +1 -1
- package/src/lib/views/Passkey/PasskeyRecovery/InitRecovery/PasskeyInitRecovery.cjs +1 -1
- package/src/lib/views/Passkey/PasskeyRecovery/InitRecovery/PasskeyInitRecovery.js +1 -1
- package/src/lib/views/Passkey/RenamePasskeyView/RenamePasskeyView.cjs +1 -1
- package/src/lib/views/Passkey/RenamePasskeyView/RenamePasskeyView.js +1 -1
- package/src/lib/views/SendBalanceView/SendBalanceView.cjs +2 -3
- package/src/lib/views/SendBalanceView/SendBalanceView.js +3 -4
- package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.cjs +7 -4
- package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.js +7 -4
- package/src/lib/views/UserFieldEditorView/UserFieldEditorView.cjs +1 -1
- package/src/lib/views/UserFieldEditorView/UserFieldEditorView.js +1 -1
- package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWalletCardBody/DynamicBridgeWalletCardBody.cjs +1 -1
- package/src/lib/widgets/DynamicBridgeWidget/components/DynamicBridgeWalletCardBody/DynamicBridgeWalletCardBody.js +1 -1
- package/src/lib/widgets/DynamicEmbeddedWidget/DynamicEmbeddedUserProfile/DynamicEmbeddedUserProfile.cjs +1 -1
- package/src/lib/widgets/DynamicEmbeddedWidget/DynamicEmbeddedUserProfile/DynamicEmbeddedUserProfile.js +1 -1
- package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveBitcoinWalletAddresses/ActiveBitcoinWalletAddresses.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveBitcoinWalletAddresses/ActiveBitcoinWalletAddresses.js +1 -1
- package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletAddress/ActiveWalletAddress.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletAddress/ActiveWalletAddress.js +1 -1
- package/src/lib/widgets/DynamicWidget/components/DynamicUserProfile/DynamicUserProfile.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/components/DynamicUserProfile/DynamicUserProfile.js +1 -1
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetWallets/DynamicWidgetWallets.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetWallets/DynamicWidgetWallets.js +1 -1
- package/src/lib/widgets/DynamicWidget/components/UnknownWalletInformation/UnknownWalletInformation.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/components/UnknownWalletInformation/UnknownWalletInformation.js +1 -1
- package/src/lib/widgets/DynamicWidget/hooks/useFetchChain/index.d.ts +1 -0
- package/src/lib/widgets/DynamicWidget/hooks/useFetchChain/useFetchChain.cjs +3 -2
- package/src/lib/widgets/DynamicWidget/hooks/useFetchChain/useFetchChain.js +3 -2
- package/src/lib/widgets/DynamicWidget/views/EditProfileView/EditProfileView.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/views/EditProfileView/EditProfileView.js +1 -1
- package/src/lib/widgets/DynamicWidget/views/ManageMfaWidgetView/ManageMfaWidgetView.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/views/ManageMfaWidgetView/ManageMfaWidgetView.js +1 -1
- package/src/lib/widgets/DynamicWidget/views/ManagePasskeysWidgetView/ManagePasskeysWidgetView.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/views/ManagePasskeysWidgetView/ManagePasskeysWidgetView.js +1 -1
- package/src/lib/widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.js +1 -1
- package/src/lib/store/state/networkConfigurations/index.d.ts +0 -1
- package/src/lib/store/state/networkConfigurations/networkConfigurations.cjs +0 -159
- package/src/lib/store/state/networkConfigurations/networkConfigurations.d.ts +0 -10
- package/src/lib/store/state/networkConfigurations/networkConfigurations.js +0 -151
- package/src/lib/utils/hooks/useWalletConnectorOptions/index.d.ts +0 -1
- /package/src/lib/utils/hooks/{useWalletConnectorOptions → useCreateWalletConnectorOptions}/utils/errors/ConnectorSetupError.cjs +0 -0
- /package/src/lib/utils/hooks/{useWalletConnectorOptions → useCreateWalletConnectorOptions}/utils/errors/ConnectorSetupError.d.ts +0 -0
- /package/src/lib/utils/hooks/{useWalletConnectorOptions → useCreateWalletConnectorOptions}/utils/errors/ConnectorSetupError.js +0 -0
- /package/src/lib/utils/hooks/{useWalletConnectorOptions → useCreateWalletConnectorOptions}/utils/errors/index.d.ts +0 -0
- /package/src/lib/utils/hooks/{useWalletConnectorOptions → useCreateWalletConnectorOptions}/utils/index.d.ts +0 -0
- /package/src/lib/utils/hooks/{useWalletConnectorOptions → useCreateWalletConnectorOptions}/utils/verifyMagicIsSetup/index.d.ts +0 -0
- /package/src/lib/utils/hooks/{useWalletConnectorOptions → useCreateWalletConnectorOptions}/utils/verifyMagicIsSetup/verifyMagicIsSetup.cjs +0 -0
- /package/src/lib/utils/hooks/{useWalletConnectorOptions → useCreateWalletConnectorOptions}/utils/verifyMagicIsSetup/verifyMagicIsSetup.d.ts +0 -0
- /package/src/lib/utils/hooks/{useWalletConnectorOptions → useCreateWalletConnectorOptions}/utils/verifyMagicIsSetup/verifyMagicIsSetup.js +0 -0
- /package/src/lib/utils/hooks/{useWalletConnectorOptions → useCreateWalletConnectorOptions}/utils/verifyRequiredConnectorsAreSetup/index.d.ts +0 -0
- /package/src/lib/utils/hooks/{useWalletConnectorOptions → useCreateWalletConnectorOptions}/utils/verifyRequiredConnectorsAreSetup/verifyRequiredConnectorsAreSetup.cjs +0 -0
- /package/src/lib/utils/hooks/{useWalletConnectorOptions → useCreateWalletConnectorOptions}/utils/verifyRequiredConnectorsAreSetup/verifyRequiredConnectorsAreSetup.d.ts +0 -0
- /package/src/lib/utils/hooks/{useWalletConnectorOptions → useCreateWalletConnectorOptions}/utils/verifyRequiredConnectorsAreSetup/verifyRequiredConnectorsAreSetup.js +0 -0
- /package/src/lib/utils/hooks/{useWalletConnectorOptions → useCreateWalletConnectorOptions}/utils/verifyZeroDevIsSetup/index.d.ts +0 -0
- /package/src/lib/utils/hooks/{useWalletConnectorOptions → useCreateWalletConnectorOptions}/utils/verifyZeroDevIsSetup/verifyZeroDevIsSetup.cjs +0 -0
- /package/src/lib/utils/hooks/{useWalletConnectorOptions → useCreateWalletConnectorOptions}/utils/verifyZeroDevIsSetup/verifyZeroDevIsSetup.d.ts +0 -0
- /package/src/lib/utils/hooks/{useWalletConnectorOptions → useCreateWalletConnectorOptions}/utils/verifyZeroDevIsSetup/verifyZeroDevIsSetup.js +0 -0
|
@@ -94,17 +94,26 @@ const useTurnkey = () => {
|
|
|
94
94
|
const { createDynamicEmbeddedWalletMutation } = useCreateDynamicEmbeddedWalletMutation();
|
|
95
95
|
const { getEOAWallet } = useSmartWallets();
|
|
96
96
|
const startHeadlessEmbeddedWalletCreationFlow = useCallback((chains, options) => __awaiter(void 0, void 0, void 0, function* () {
|
|
97
|
-
yield createDynamicEmbeddedWalletMutation({
|
|
98
|
-
chains,
|
|
99
|
-
environmentId,
|
|
100
|
-
options,
|
|
101
|
-
walletConnectorOptions,
|
|
102
|
-
withAuthenticator: false,
|
|
103
|
-
});
|
|
104
|
-
setShowAuthFlow(false, { performMultiWalletChecks: false }); // close email otp pin modal
|
|
105
97
|
return new Promise((resolve, reject) => {
|
|
106
|
-
|
|
98
|
+
// register the event listeners before calling create embedded wallet
|
|
99
|
+
// as the event might fire before the listeners are registered.
|
|
100
|
+
dynamicEvents.once('embeddedWalletCreated', (wallet) => {
|
|
101
|
+
resolve(wallet);
|
|
102
|
+
});
|
|
107
103
|
dynamicEvents.once('embeddedWalletFailed', (error) => reject(error));
|
|
104
|
+
createDynamicEmbeddedWalletMutation({
|
|
105
|
+
chains,
|
|
106
|
+
environmentId,
|
|
107
|
+
options,
|
|
108
|
+
walletConnectorOptions,
|
|
109
|
+
withAuthenticator: false,
|
|
110
|
+
})
|
|
111
|
+
.then(() => {
|
|
112
|
+
setShowAuthFlow(false, { performMultiWalletChecks: false }); // close email otp pin modal
|
|
113
|
+
})
|
|
114
|
+
.catch((error) => {
|
|
115
|
+
reject(error);
|
|
116
|
+
});
|
|
108
117
|
});
|
|
109
118
|
}), [
|
|
110
119
|
createDynamicEmbeddedWalletMutation,
|
|
@@ -180,7 +189,10 @@ const useTurnkey = () => {
|
|
|
180
189
|
const isManualMode = ((_c = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _c === void 0 ? void 0 : _c.automaticEmbeddedWalletCreation) === false;
|
|
181
190
|
const shouldCreateV2WalletsByDefault = ((_d = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _d === void 0 ? void 0 : _d.defaultWalletVersion) ===
|
|
182
191
|
EmbeddedWalletVersionEnum.V2;
|
|
183
|
-
const
|
|
192
|
+
const primaryChain = findPrimaryEmbeddedChain(projectSettings);
|
|
193
|
+
// if embedded wallet already exists
|
|
194
|
+
// get the one with the primary chain if `chains` is undefined
|
|
195
|
+
const embeddedWalletVerifiedCredential = findEmbeddedWalletFromVerifiedCredentials(user, chains !== null && chains !== void 0 ? chains : [primaryChain]);
|
|
184
196
|
const userWalletsCredentials = getUserWalletsFromVerifiedCredentials(user);
|
|
185
197
|
// If the user doesn't have a wallet, or if the customer is in Manual
|
|
186
198
|
// Mode, we should attempt to create a new wallet. Note that if in manual
|
|
@@ -207,7 +219,7 @@ const useTurnkey = () => {
|
|
|
207
219
|
if (embeddedWalletVerifiedCredential &&
|
|
208
220
|
user.newUser &&
|
|
209
221
|
((_f = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _f === void 0 ? void 0 : _f.automaticEmbeddedWalletCreation)) {
|
|
210
|
-
const walletConnector = findPasskeyEmailWalletConnector(walletConnectorOptions,
|
|
222
|
+
const walletConnector = findPasskeyEmailWalletConnector(walletConnectorOptions, primaryChain);
|
|
211
223
|
if (!walletConnector) {
|
|
212
224
|
throw new Error('Could not find the embedded wallet connector');
|
|
213
225
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { useNetworkConfigurationsFromProjectSettings } from './useNetworkConfigurationsFromProjectSettings';
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
|
+
|
|
6
|
+
var React = require('react');
|
|
7
|
+
|
|
8
|
+
const useNetworkConfigurationsFromProjectSettings = ({ projectSettings, cosmosNetworkOverrides, evmNetworksOverrides, }) => React.useMemo(() => {
|
|
9
|
+
var _a, _b, _c, _d;
|
|
10
|
+
const networks = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.networks;
|
|
11
|
+
if (!networks)
|
|
12
|
+
return {};
|
|
13
|
+
const evm = networks.find((configurations) => configurations.chainName === 'evm');
|
|
14
|
+
const solana = networks.find((configurations) => configurations.chainName === 'solana');
|
|
15
|
+
const cosmos = networks.find((configurations) => configurations.chainName === 'cosmos');
|
|
16
|
+
const starknet = networks.find((configurations) => configurations.chainName === 'starknet');
|
|
17
|
+
let cosmosNetworks = (_a = cosmos === null || cosmos === void 0 ? void 0 : cosmos.networks) === null || _a === void 0 ? void 0 : _a.map((net) => createNetwork(net, parseInt));
|
|
18
|
+
cosmosNetworks = overrideNetworks(cosmosNetworkOverrides, cosmosNetworks);
|
|
19
|
+
let evmNetworks = (_b = evm === null || evm === void 0 ? void 0 : evm.networks) === null || _b === void 0 ? void 0 : _b.map((net) => createNetwork(net, parseInt));
|
|
20
|
+
evmNetworks = overrideNetworks(evmNetworksOverrides, evmNetworks);
|
|
21
|
+
const starknetNetworks = (_c = starknet === null || starknet === void 0 ? void 0 : starknet.networks) === null || _c === void 0 ? void 0 : _c.map((net) => createNetwork(net));
|
|
22
|
+
const solanaNetworks = (_d = solana === null || solana === void 0 ? void 0 : solana.networks) === null || _d === void 0 ? void 0 : _d.map((net) => createNetwork(net));
|
|
23
|
+
if (evmNetworksOverrides) {
|
|
24
|
+
if (Array.isArray(evmNetworksOverrides)) {
|
|
25
|
+
evmNetworks = evmNetworksOverrides;
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
evmNetworks = evmNetworksOverrides(evmNetworks !== null && evmNetworks !== void 0 ? evmNetworks : []);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
const networkConfigurations = {
|
|
32
|
+
cosmos: cosmosNetworks,
|
|
33
|
+
evm: evmNetworks,
|
|
34
|
+
solana: solanaNetworks,
|
|
35
|
+
starknet: starknetNetworks,
|
|
36
|
+
};
|
|
37
|
+
return networkConfigurations;
|
|
38
|
+
}, [projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.networks, cosmosNetworkOverrides, evmNetworksOverrides]);
|
|
39
|
+
const createNetwork = (network, parser = (input) => input) => ({
|
|
40
|
+
blockExplorerUrls: network.blockExplorerUrls,
|
|
41
|
+
chainId: parser(network.chainId),
|
|
42
|
+
iconUrls: network.iconUrls,
|
|
43
|
+
lcdUrl: network.lcdUrl,
|
|
44
|
+
name: network.name,
|
|
45
|
+
nativeCurrency: network.nativeCurrency,
|
|
46
|
+
networkId: parser(network.networkId),
|
|
47
|
+
privateCustomerRpcUrls: network.privateCustomerRpcUrls,
|
|
48
|
+
rpcUrls: network.rpcUrls,
|
|
49
|
+
vanityName: network.vanityName,
|
|
50
|
+
});
|
|
51
|
+
const overrideNetworks = (networkOverrides, networks) => {
|
|
52
|
+
if (!networkOverrides) {
|
|
53
|
+
return networks;
|
|
54
|
+
}
|
|
55
|
+
if (Array.isArray(networkOverrides)) {
|
|
56
|
+
return networkOverrides;
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
return networkOverrides(networks !== null && networks !== void 0 ? networks : []);
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
exports.useNetworkConfigurationsFromProjectSettings = useNetworkConfigurationsFromProjectSettings;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ProjectSettings } from '@dynamic-labs/sdk-api-core';
|
|
2
|
+
import { NetworksOverrides } from '../../../context/DynamicContext';
|
|
3
|
+
type UseNetworkConfigurationsFromProjectSettingsProps = {
|
|
4
|
+
projectSettings: ProjectSettings | undefined;
|
|
5
|
+
evmNetworksOverrides?: NetworksOverrides;
|
|
6
|
+
cosmosNetworkOverrides?: NetworksOverrides;
|
|
7
|
+
};
|
|
8
|
+
export declare const useNetworkConfigurationsFromProjectSettings: ({ projectSettings, cosmosNetworkOverrides, evmNetworksOverrides, }: UseNetworkConfigurationsFromProjectSettingsProps) => {};
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
import { useMemo } from 'react';
|
|
3
|
+
|
|
4
|
+
const useNetworkConfigurationsFromProjectSettings = ({ projectSettings, cosmosNetworkOverrides, evmNetworksOverrides, }) => useMemo(() => {
|
|
5
|
+
var _a, _b, _c, _d;
|
|
6
|
+
const networks = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.networks;
|
|
7
|
+
if (!networks)
|
|
8
|
+
return {};
|
|
9
|
+
const evm = networks.find((configurations) => configurations.chainName === 'evm');
|
|
10
|
+
const solana = networks.find((configurations) => configurations.chainName === 'solana');
|
|
11
|
+
const cosmos = networks.find((configurations) => configurations.chainName === 'cosmos');
|
|
12
|
+
const starknet = networks.find((configurations) => configurations.chainName === 'starknet');
|
|
13
|
+
let cosmosNetworks = (_a = cosmos === null || cosmos === void 0 ? void 0 : cosmos.networks) === null || _a === void 0 ? void 0 : _a.map((net) => createNetwork(net, parseInt));
|
|
14
|
+
cosmosNetworks = overrideNetworks(cosmosNetworkOverrides, cosmosNetworks);
|
|
15
|
+
let evmNetworks = (_b = evm === null || evm === void 0 ? void 0 : evm.networks) === null || _b === void 0 ? void 0 : _b.map((net) => createNetwork(net, parseInt));
|
|
16
|
+
evmNetworks = overrideNetworks(evmNetworksOverrides, evmNetworks);
|
|
17
|
+
const starknetNetworks = (_c = starknet === null || starknet === void 0 ? void 0 : starknet.networks) === null || _c === void 0 ? void 0 : _c.map((net) => createNetwork(net));
|
|
18
|
+
const solanaNetworks = (_d = solana === null || solana === void 0 ? void 0 : solana.networks) === null || _d === void 0 ? void 0 : _d.map((net) => createNetwork(net));
|
|
19
|
+
if (evmNetworksOverrides) {
|
|
20
|
+
if (Array.isArray(evmNetworksOverrides)) {
|
|
21
|
+
evmNetworks = evmNetworksOverrides;
|
|
22
|
+
}
|
|
23
|
+
else {
|
|
24
|
+
evmNetworks = evmNetworksOverrides(evmNetworks !== null && evmNetworks !== void 0 ? evmNetworks : []);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
const networkConfigurations = {
|
|
28
|
+
cosmos: cosmosNetworks,
|
|
29
|
+
evm: evmNetworks,
|
|
30
|
+
solana: solanaNetworks,
|
|
31
|
+
starknet: starknetNetworks,
|
|
32
|
+
};
|
|
33
|
+
return networkConfigurations;
|
|
34
|
+
}, [projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.networks, cosmosNetworkOverrides, evmNetworksOverrides]);
|
|
35
|
+
const createNetwork = (network, parser = (input) => input) => ({
|
|
36
|
+
blockExplorerUrls: network.blockExplorerUrls,
|
|
37
|
+
chainId: parser(network.chainId),
|
|
38
|
+
iconUrls: network.iconUrls,
|
|
39
|
+
lcdUrl: network.lcdUrl,
|
|
40
|
+
name: network.name,
|
|
41
|
+
nativeCurrency: network.nativeCurrency,
|
|
42
|
+
networkId: parser(network.networkId),
|
|
43
|
+
privateCustomerRpcUrls: network.privateCustomerRpcUrls,
|
|
44
|
+
rpcUrls: network.rpcUrls,
|
|
45
|
+
vanityName: network.vanityName,
|
|
46
|
+
});
|
|
47
|
+
const overrideNetworks = (networkOverrides, networks) => {
|
|
48
|
+
if (!networkOverrides) {
|
|
49
|
+
return networks;
|
|
50
|
+
}
|
|
51
|
+
if (Array.isArray(networkOverrides)) {
|
|
52
|
+
return networkOverrides;
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
return networkOverrides(networks !== null && networks !== void 0 ? networks : []);
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
export { useNetworkConfigurationsFromProjectSettings };
|
|
@@ -70,8 +70,8 @@ var IconButton = require('../../components/IconButton/IconButton.cjs');
|
|
|
70
70
|
require('../../components/MenuList/Dropdown/Dropdown.cjs');
|
|
71
71
|
var TypographyButton = require('../../components/TypographyButton/TypographyButton.cjs');
|
|
72
72
|
require('formik');
|
|
73
|
-
require('../../store/state/sendBalances.cjs');
|
|
74
73
|
var ModalHeader = require('../../components/ModalHeader/ModalHeader.cjs');
|
|
74
|
+
require('../../store/state/sendBalances.cjs');
|
|
75
75
|
require('../../components/Input/Input.cjs');
|
|
76
76
|
require('../TransactionConfirmationView/helpers/transactionErrorMessage.cjs');
|
|
77
77
|
require('../../context/PasskeyContext/PasskeyContext.cjs');
|
|
@@ -66,8 +66,8 @@ import { IconButton } from '../../components/IconButton/IconButton.js';
|
|
|
66
66
|
import '../../components/MenuList/Dropdown/Dropdown.js';
|
|
67
67
|
import { TypographyButton } from '../../components/TypographyButton/TypographyButton.js';
|
|
68
68
|
import 'formik';
|
|
69
|
-
import '../../store/state/sendBalances.js';
|
|
70
69
|
import { ModalHeader } from '../../components/ModalHeader/ModalHeader.js';
|
|
70
|
+
import '../../store/state/sendBalances.js';
|
|
71
71
|
import '../../components/Input/Input.js';
|
|
72
72
|
import '../TransactionConfirmationView/helpers/transactionErrorMessage.js';
|
|
73
73
|
import '../../context/PasskeyContext/PasskeyContext.js';
|
|
@@ -68,8 +68,8 @@ require('../../../components/MenuList/Dropdown/Dropdown.cjs');
|
|
|
68
68
|
require('../useFields.cjs');
|
|
69
69
|
var TypographyButton = require('../../../components/TypographyButton/TypographyButton.cjs');
|
|
70
70
|
var UserDataFields = require('../UserDataFields/UserDataFields.cjs');
|
|
71
|
-
require('../../../store/state/sendBalances.cjs');
|
|
72
71
|
require('yup');
|
|
72
|
+
require('../../../store/state/sendBalances.cjs');
|
|
73
73
|
require('../../../components/Input/Input.cjs');
|
|
74
74
|
require('../../TransactionConfirmationView/helpers/transactionErrorMessage.cjs');
|
|
75
75
|
require('../../../context/PasskeyContext/PasskeyContext.cjs');
|
|
@@ -64,8 +64,8 @@ import '../../../components/MenuList/Dropdown/Dropdown.js';
|
|
|
64
64
|
import '../useFields.js';
|
|
65
65
|
import { TypographyButton } from '../../../components/TypographyButton/TypographyButton.js';
|
|
66
66
|
import { UserDataFields } from '../UserDataFields/UserDataFields.js';
|
|
67
|
-
import '../../../store/state/sendBalances.js';
|
|
68
67
|
import 'yup';
|
|
68
|
+
import '../../../store/state/sendBalances.js';
|
|
69
69
|
import '../../../components/Input/Input.js';
|
|
70
70
|
import '../../TransactionConfirmationView/helpers/transactionErrorMessage.js';
|
|
71
71
|
import '../../../context/PasskeyContext/PasskeyContext.js';
|
|
@@ -72,8 +72,8 @@ require('../../../components/MenuList/Dropdown/Dropdown.cjs');
|
|
|
72
72
|
var ErrorContainer = require('../../../components/ErrorContainer/ErrorContainer.cjs');
|
|
73
73
|
var TypographyButton = require('../../../components/TypographyButton/TypographyButton.cjs');
|
|
74
74
|
require('formik');
|
|
75
|
-
require('../../../store/state/sendBalances.cjs');
|
|
76
75
|
var ModalHeader = require('../../../components/ModalHeader/ModalHeader.cjs');
|
|
76
|
+
require('../../../store/state/sendBalances.cjs');
|
|
77
77
|
var Input = require('../../../components/Input/Input.cjs');
|
|
78
78
|
require('../../TransactionConfirmationView/helpers/transactionErrorMessage.cjs');
|
|
79
79
|
require('../../../context/PasskeyContext/PasskeyContext.cjs');
|
|
@@ -68,8 +68,8 @@ import '../../../components/MenuList/Dropdown/Dropdown.js';
|
|
|
68
68
|
import { ErrorContainer } from '../../../components/ErrorContainer/ErrorContainer.js';
|
|
69
69
|
import { TypographyButton } from '../../../components/TypographyButton/TypographyButton.js';
|
|
70
70
|
import 'formik';
|
|
71
|
-
import '../../../store/state/sendBalances.js';
|
|
72
71
|
import { ModalHeader } from '../../../components/ModalHeader/ModalHeader.js';
|
|
72
|
+
import '../../../store/state/sendBalances.js';
|
|
73
73
|
import { Input } from '../../../components/Input/Input.js';
|
|
74
74
|
import '../../TransactionConfirmationView/helpers/transactionErrorMessage.js';
|
|
75
75
|
import '../../../context/PasskeyContext/PasskeyContext.js';
|
|
@@ -73,8 +73,8 @@ require('../../../components/MenuList/Dropdown/Dropdown.cjs');
|
|
|
73
73
|
var ErrorContainer = require('../../../components/ErrorContainer/ErrorContainer.cjs');
|
|
74
74
|
var TypographyButton = require('../../../components/TypographyButton/TypographyButton.cjs');
|
|
75
75
|
require('formik');
|
|
76
|
-
require('../../../store/state/sendBalances.cjs');
|
|
77
76
|
var ModalHeader = require('../../../components/ModalHeader/ModalHeader.cjs');
|
|
77
|
+
require('../../../store/state/sendBalances.cjs');
|
|
78
78
|
var Input = require('../../../components/Input/Input.cjs');
|
|
79
79
|
require('../../TransactionConfirmationView/helpers/transactionErrorMessage.cjs');
|
|
80
80
|
require('../../../context/PasskeyContext/PasskeyContext.cjs');
|
|
@@ -69,8 +69,8 @@ import '../../../components/MenuList/Dropdown/Dropdown.js';
|
|
|
69
69
|
import { ErrorContainer } from '../../../components/ErrorContainer/ErrorContainer.js';
|
|
70
70
|
import { TypographyButton } from '../../../components/TypographyButton/TypographyButton.js';
|
|
71
71
|
import 'formik';
|
|
72
|
-
import '../../../store/state/sendBalances.js';
|
|
73
72
|
import { ModalHeader } from '../../../components/ModalHeader/ModalHeader.js';
|
|
73
|
+
import '../../../store/state/sendBalances.js';
|
|
74
74
|
import { Input } from '../../../components/Input/Input.js';
|
|
75
75
|
import '../../TransactionConfirmationView/helpers/transactionErrorMessage.js';
|
|
76
76
|
import '../../../context/PasskeyContext/PasskeyContext.js';
|
|
@@ -45,6 +45,7 @@ require('../../context/AccountExistsContext/AccountExistsContext.cjs');
|
|
|
45
45
|
require('../../context/UserWalletsContext/UserWalletsContext.cjs');
|
|
46
46
|
var useOtpVerificationRequest = require('../../utils/hooks/authenticationHooks/useOtpVerificationRequest/useOtpVerificationRequest.cjs');
|
|
47
47
|
require('react-dom');
|
|
48
|
+
var findPrimaryEmbeddedChain = require('../Passkey/utils/findPrimaryEmbeddedChain/findPrimaryEmbeddedChain.cjs');
|
|
48
49
|
require('../../context/WalletContext/WalletContext.cjs');
|
|
49
50
|
var useIsTurnkeyWallet = require('../../utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.cjs');
|
|
50
51
|
var usePasskeyRecovery = require('../../utils/hooks/usePasskeyRecovery/usePasskeyRecovery.cjs');
|
|
@@ -181,11 +182,12 @@ const EmailVerification = ({ isEmailRecoveryFlow = false, showRetryButton: _show
|
|
|
181
182
|
(!((_j = (_h = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk) === null || _h === void 0 ? void 0 : _h.embeddedWallets) === null || _j === void 0 ? void 0 : _j.forceAuthenticatorAtSignup) ||
|
|
182
183
|
isSessionKeyCompatible));
|
|
183
184
|
if (isUsingPregeneratedWallets) {
|
|
185
|
+
const primaryChain = findPrimaryEmbeddedChain.findPrimaryEmbeddedChain(projectSettings);
|
|
184
186
|
// Pregenerated wallet was created during an
|
|
185
187
|
// additional email validation step as part of onboarding
|
|
186
188
|
// cannot rely on newUser JWT field here due to session being counted twice
|
|
187
189
|
// when authentication happens followed by a separate email kyc step
|
|
188
|
-
const embeddedWalletVerifiedCredential = findEmbeddedWalletFromVerifiedCredentials.findEmbeddedWalletFromVerifiedCredentials(createUserProfile.createUserProfileFromSdkUser(updateUserProfileResponse.user));
|
|
190
|
+
const embeddedWalletVerifiedCredential = findEmbeddedWalletFromVerifiedCredentials.findEmbeddedWalletFromVerifiedCredentials(createUserProfile.createUserProfileFromSdkUser(updateUserProfileResponse.user), [primaryChain]);
|
|
189
191
|
if (!embeddedWalletVerifiedCredential) {
|
|
190
192
|
throw new Error('Could not find an embedded wallet');
|
|
191
193
|
}
|
|
@@ -41,6 +41,7 @@ import '../../context/AccountExistsContext/AccountExistsContext.js';
|
|
|
41
41
|
import '../../context/UserWalletsContext/UserWalletsContext.js';
|
|
42
42
|
import { useOtpVerificationRequest } from '../../utils/hooks/authenticationHooks/useOtpVerificationRequest/useOtpVerificationRequest.js';
|
|
43
43
|
import 'react-dom';
|
|
44
|
+
import { findPrimaryEmbeddedChain } from '../Passkey/utils/findPrimaryEmbeddedChain/findPrimaryEmbeddedChain.js';
|
|
44
45
|
import '../../context/WalletContext/WalletContext.js';
|
|
45
46
|
import { useIsTurnkeyWallet } from '../../utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.js';
|
|
46
47
|
import { usePasskeyRecovery } from '../../utils/hooks/usePasskeyRecovery/usePasskeyRecovery.js';
|
|
@@ -177,11 +178,12 @@ const EmailVerification = ({ isEmailRecoveryFlow = false, showRetryButton: _show
|
|
|
177
178
|
(!((_j = (_h = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk) === null || _h === void 0 ? void 0 : _h.embeddedWallets) === null || _j === void 0 ? void 0 : _j.forceAuthenticatorAtSignup) ||
|
|
178
179
|
isSessionKeyCompatible));
|
|
179
180
|
if (isUsingPregeneratedWallets) {
|
|
181
|
+
const primaryChain = findPrimaryEmbeddedChain(projectSettings);
|
|
180
182
|
// Pregenerated wallet was created during an
|
|
181
183
|
// additional email validation step as part of onboarding
|
|
182
184
|
// cannot rely on newUser JWT field here due to session being counted twice
|
|
183
185
|
// when authentication happens followed by a separate email kyc step
|
|
184
|
-
const embeddedWalletVerifiedCredential = findEmbeddedWalletFromVerifiedCredentials(createUserProfileFromSdkUser(updateUserProfileResponse.user));
|
|
186
|
+
const embeddedWalletVerifiedCredential = findEmbeddedWalletFromVerifiedCredentials(createUserProfileFromSdkUser(updateUserProfileResponse.user), [primaryChain]);
|
|
185
187
|
if (!embeddedWalletVerifiedCredential) {
|
|
186
188
|
throw new Error('Could not find an embedded wallet');
|
|
187
189
|
}
|
|
@@ -70,8 +70,8 @@ require('../../components/MenuList/Dropdown/Dropdown.cjs');
|
|
|
70
70
|
var ErrorContainer = require('../../components/ErrorContainer/ErrorContainer.cjs');
|
|
71
71
|
var TypographyButton = require('../../components/TypographyButton/TypographyButton.cjs');
|
|
72
72
|
require('formik');
|
|
73
|
-
require('../../store/state/sendBalances.cjs');
|
|
74
73
|
var ModalHeader = require('../../components/ModalHeader/ModalHeader.cjs');
|
|
74
|
+
require('../../store/state/sendBalances.cjs');
|
|
75
75
|
var Input = require('../../components/Input/Input.cjs');
|
|
76
76
|
require('../TransactionConfirmationView/helpers/transactionErrorMessage.cjs');
|
|
77
77
|
require('../../context/PasskeyContext/PasskeyContext.cjs');
|
|
@@ -66,8 +66,8 @@ import '../../components/MenuList/Dropdown/Dropdown.js';
|
|
|
66
66
|
import { ErrorContainer } from '../../components/ErrorContainer/ErrorContainer.js';
|
|
67
67
|
import { TypographyButton } from '../../components/TypographyButton/TypographyButton.js';
|
|
68
68
|
import 'formik';
|
|
69
|
-
import '../../store/state/sendBalances.js';
|
|
70
69
|
import { ModalHeader } from '../../components/ModalHeader/ModalHeader.js';
|
|
70
|
+
import '../../store/state/sendBalances.js';
|
|
71
71
|
import { Input } from '../../components/Input/Input.js';
|
|
72
72
|
import '../TransactionConfirmationView/helpers/transactionErrorMessage.js';
|
|
73
73
|
import '../../context/PasskeyContext/PasskeyContext.js';
|
|
@@ -68,8 +68,8 @@ require('../../components/IconButton/IconButton.cjs');
|
|
|
68
68
|
require('../../components/MenuList/Dropdown/Dropdown.cjs');
|
|
69
69
|
var Button = require('../../components/Button/Button.cjs');
|
|
70
70
|
require('formik');
|
|
71
|
-
require('../../store/state/sendBalances.cjs');
|
|
72
71
|
var ModalHeader = require('../../components/ModalHeader/ModalHeader.cjs');
|
|
72
|
+
require('../../store/state/sendBalances.cjs');
|
|
73
73
|
require('../../components/Input/Input.cjs');
|
|
74
74
|
require('../TransactionConfirmationView/helpers/transactionErrorMessage.cjs');
|
|
75
75
|
require('../../context/PasskeyContext/PasskeyContext.cjs');
|
|
@@ -64,8 +64,8 @@ import '../../components/IconButton/IconButton.js';
|
|
|
64
64
|
import '../../components/MenuList/Dropdown/Dropdown.js';
|
|
65
65
|
import { Button } from '../../components/Button/Button.js';
|
|
66
66
|
import 'formik';
|
|
67
|
-
import '../../store/state/sendBalances.js';
|
|
68
67
|
import { ModalHeader } from '../../components/ModalHeader/ModalHeader.js';
|
|
68
|
+
import '../../store/state/sendBalances.js';
|
|
69
69
|
import '../../components/Input/Input.js';
|
|
70
70
|
import '../TransactionConfirmationView/helpers/transactionErrorMessage.js';
|
|
71
71
|
import '../../context/PasskeyContext/PasskeyContext.js';
|
|
@@ -67,8 +67,8 @@ require('../../../widgets/DynamicWidget/context/DynamicWidgetContext.cjs');
|
|
|
67
67
|
require('../../../components/IconButton/IconButton.cjs');
|
|
68
68
|
require('../../../components/MenuList/Dropdown/Dropdown.cjs');
|
|
69
69
|
require('formik');
|
|
70
|
-
require('../../../store/state/sendBalances.cjs');
|
|
71
70
|
var ModalHeader = require('../../../components/ModalHeader/ModalHeader.cjs');
|
|
71
|
+
require('../../../store/state/sendBalances.cjs');
|
|
72
72
|
require('../../../components/Input/Input.cjs');
|
|
73
73
|
require('../../TransactionConfirmationView/helpers/transactionErrorMessage.cjs');
|
|
74
74
|
require('../../../context/PasskeyContext/PasskeyContext.cjs');
|
|
@@ -63,8 +63,8 @@ import '../../../widgets/DynamicWidget/context/DynamicWidgetContext.js';
|
|
|
63
63
|
import '../../../components/IconButton/IconButton.js';
|
|
64
64
|
import '../../../components/MenuList/Dropdown/Dropdown.js';
|
|
65
65
|
import 'formik';
|
|
66
|
-
import '../../../store/state/sendBalances.js';
|
|
67
66
|
import { ModalHeader } from '../../../components/ModalHeader/ModalHeader.js';
|
|
67
|
+
import '../../../store/state/sendBalances.js';
|
|
68
68
|
import '../../../components/Input/Input.js';
|
|
69
69
|
import '../../TransactionConfirmationView/helpers/transactionErrorMessage.js';
|
|
70
70
|
import '../../../context/PasskeyContext/PasskeyContext.js';
|
|
@@ -75,8 +75,8 @@ require('../../../../components/MenuList/Dropdown/Dropdown.cjs');
|
|
|
75
75
|
var ErrorContainer = require('../../../../components/ErrorContainer/ErrorContainer.cjs');
|
|
76
76
|
var TypographyButton = require('../../../../components/TypographyButton/TypographyButton.cjs');
|
|
77
77
|
require('formik');
|
|
78
|
-
require('../../../../store/state/sendBalances.cjs');
|
|
79
78
|
var ModalHeader = require('../../../../components/ModalHeader/ModalHeader.cjs');
|
|
79
|
+
require('../../../../store/state/sendBalances.cjs');
|
|
80
80
|
require('../../../../components/Input/Input.cjs');
|
|
81
81
|
require('../../../TransactionConfirmationView/helpers/transactionErrorMessage.cjs');
|
|
82
82
|
require('../../../../context/PasskeyContext/PasskeyContext.cjs');
|
|
@@ -71,8 +71,8 @@ import '../../../../components/MenuList/Dropdown/Dropdown.js';
|
|
|
71
71
|
import { ErrorContainer } from '../../../../components/ErrorContainer/ErrorContainer.js';
|
|
72
72
|
import { TypographyButton } from '../../../../components/TypographyButton/TypographyButton.js';
|
|
73
73
|
import 'formik';
|
|
74
|
-
import '../../../../store/state/sendBalances.js';
|
|
75
74
|
import { ModalHeader } from '../../../../components/ModalHeader/ModalHeader.js';
|
|
75
|
+
import '../../../../store/state/sendBalances.js';
|
|
76
76
|
import '../../../../components/Input/Input.js';
|
|
77
77
|
import '../../../TransactionConfirmationView/helpers/transactionErrorMessage.js';
|
|
78
78
|
import '../../../../context/PasskeyContext/PasskeyContext.js';
|
|
@@ -69,8 +69,8 @@ require('../../../widgets/DynamicWidget/context/DynamicWidgetContext.cjs');
|
|
|
69
69
|
var IconButton = require('../../../components/IconButton/IconButton.cjs');
|
|
70
70
|
require('../../../components/MenuList/Dropdown/Dropdown.cjs');
|
|
71
71
|
var TypographyButton = require('../../../components/TypographyButton/TypographyButton.cjs');
|
|
72
|
-
require('../../../store/state/sendBalances.cjs');
|
|
73
72
|
var ModalHeader = require('../../../components/ModalHeader/ModalHeader.cjs');
|
|
73
|
+
require('../../../store/state/sendBalances.cjs');
|
|
74
74
|
var Input = require('../../../components/Input/Input.cjs');
|
|
75
75
|
require('../../TransactionConfirmationView/helpers/transactionErrorMessage.cjs');
|
|
76
76
|
var PasskeyContext = require('../../../context/PasskeyContext/PasskeyContext.cjs');
|
|
@@ -65,8 +65,8 @@ import '../../../widgets/DynamicWidget/context/DynamicWidgetContext.js';
|
|
|
65
65
|
import { IconButton } from '../../../components/IconButton/IconButton.js';
|
|
66
66
|
import '../../../components/MenuList/Dropdown/Dropdown.js';
|
|
67
67
|
import { TypographyButton } from '../../../components/TypographyButton/TypographyButton.js';
|
|
68
|
-
import '../../../store/state/sendBalances.js';
|
|
69
68
|
import { ModalHeader } from '../../../components/ModalHeader/ModalHeader.js';
|
|
69
|
+
import '../../../store/state/sendBalances.js';
|
|
70
70
|
import { Input } from '../../../components/Input/Input.js';
|
|
71
71
|
import '../../TransactionConfirmationView/helpers/transactionErrorMessage.js';
|
|
72
72
|
import { usePasskeyContext } from '../../../context/PasskeyContext/PasskeyContext.js';
|
|
@@ -111,7 +111,6 @@ const SendBalanceView = ({ initialRecipientAddress = '', initialValue, onClickBa
|
|
|
111
111
|
const { showFiat } = useInternalDynamicContext.useInternalDynamicContext();
|
|
112
112
|
const walletConnector = primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector;
|
|
113
113
|
const { chain } = useFetchChain.useFetchChain(walletConnector);
|
|
114
|
-
const { chainName } = sendBalances.useSendBalanceState();
|
|
115
114
|
const { tokenBalances: unorderedTokenBalances, isLoading } = useTokenBalances.useTokenBalances({
|
|
116
115
|
chainName: (walletConnector === null || walletConnector === void 0 ? void 0 : walletConnector.connectedChain) === 'SOL'
|
|
117
116
|
? sdkApiCore.ChainEnum.Sol
|
|
@@ -192,7 +191,7 @@ const SendBalanceView = ({ initialRecipientAddress = '', initialValue, onClickBa
|
|
|
192
191
|
}
|
|
193
192
|
});
|
|
194
193
|
const networkCurrency = (currentToken === null || currentToken === void 0 ? void 0 : currentToken.symbol) || networkData.nativeCurrency.symbol;
|
|
195
|
-
const currencyIcon = chain && (jsxRuntime.jsx(ChainIcon.ChainIcon, { chain: chain, chainName:
|
|
194
|
+
const currencyIcon = (chain === null || chain === void 0 ? void 0 : chain.name) && (jsxRuntime.jsx(ChainIcon.ChainIcon, { chain: chain, chainName: chain.name }));
|
|
196
195
|
const buildFormStage = () => (jsxRuntime.jsx(SendBalancePageLayout.SendBalancePageLayout, { transaction: transaction, onClickBack: onClickBack, networkName: networkData.vanityName || networkData.name, networkIcon: currencyIcon, networkCurrencyDecimals: networkData.nativeCurrency.symbol === 'SOL'
|
|
197
196
|
? 9
|
|
198
197
|
: networkData.nativeCurrency.decimals, walletAddress: shortenWalletAddress.shortenWalletAddress(currentToken === null || currentToken === void 0 ? void 0 : currentToken.address, 3, 3), walletKey: primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector.key, onClickClose: onClickClose, displayPoweredByDynamicFooter: displayPoweredByDynamicFooter, onSubmit: () => setStage('confirmation'), tokenBalances: tokenBalances !== null && tokenBalances !== void 0 ? tokenBalances : (currentToken && [currentToken]), currentToken: currentToken, setCurrentToken: setCurrentToken, isLoading: isLoading, isNativeToken: isNativeToken }));
|
|
@@ -208,7 +207,7 @@ const SendBalanceView = ({ initialRecipientAddress = '', initialValue, onClickBa
|
|
|
208
207
|
}), currentToken: currentToken, isNativeToken: isNativeToken, transactionValue: getTransactionValue(transaction, isNativeToken) }));
|
|
209
208
|
const buildSuccessState = () => {
|
|
210
209
|
var _a;
|
|
211
|
-
return (jsxRuntime.jsx(TransactionStatusLayout.TransactionStatusLayout, { transactionValue: getTransactionValue(transaction, isNativeToken), destinationAddress: (_a = transaction.to) !== null && _a !== void 0 ? _a : '', networkCurrency: networkCurrency, networkName:
|
|
210
|
+
return (jsxRuntime.jsx(TransactionStatusLayout.TransactionStatusLayout, { transactionValue: getTransactionValue(transaction, isNativeToken), destinationAddress: (_a = transaction.to) !== null && _a !== void 0 ? _a : '', networkCurrency: networkCurrency, networkName: networkData.name || '', NetworkIcon: currencyIcon, onClickClose: onClickClose, onDone: () => onDone === null || onDone === void 0 ? void 0 : onDone(), displayPoweredByDynamicFooter: displayPoweredByDynamicFooter, transaction: transaction, currentToken: currentToken, isNativeToken: isNativeToken }));
|
|
212
211
|
};
|
|
213
212
|
const getCurrentView = () => {
|
|
214
213
|
switch (stage) {
|
|
@@ -76,7 +76,7 @@ import '@hcaptcha/react-hcaptcha';
|
|
|
76
76
|
import '../../widgets/DynamicWidget/context/DynamicWidgetContext.js';
|
|
77
77
|
import '../../context/IpConfigurationContext/IpConfigurationContext.js';
|
|
78
78
|
import '../../context/PasskeyContext/PasskeyContext.js';
|
|
79
|
-
import {
|
|
79
|
+
import { setSendBalanceVariable, resetSendBalanceState } from '../../store/state/sendBalances.js';
|
|
80
80
|
import '../../widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.js';
|
|
81
81
|
import { TransactionConfirmationView } from '../TransactionConfirmationView/TransactionConfirmationView.js';
|
|
82
82
|
import '../../widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.js';
|
|
@@ -107,7 +107,6 @@ const SendBalanceView = ({ initialRecipientAddress = '', initialValue, onClickBa
|
|
|
107
107
|
const { showFiat } = useInternalDynamicContext();
|
|
108
108
|
const walletConnector = primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector;
|
|
109
109
|
const { chain } = useFetchChain(walletConnector);
|
|
110
|
-
const { chainName } = useSendBalanceState();
|
|
111
110
|
const { tokenBalances: unorderedTokenBalances, isLoading } = useTokenBalances({
|
|
112
111
|
chainName: (walletConnector === null || walletConnector === void 0 ? void 0 : walletConnector.connectedChain) === 'SOL'
|
|
113
112
|
? ChainEnum.Sol
|
|
@@ -188,7 +187,7 @@ const SendBalanceView = ({ initialRecipientAddress = '', initialValue, onClickBa
|
|
|
188
187
|
}
|
|
189
188
|
});
|
|
190
189
|
const networkCurrency = (currentToken === null || currentToken === void 0 ? void 0 : currentToken.symbol) || networkData.nativeCurrency.symbol;
|
|
191
|
-
const currencyIcon = chain && (jsx(ChainIcon, { chain: chain, chainName:
|
|
190
|
+
const currencyIcon = (chain === null || chain === void 0 ? void 0 : chain.name) && (jsx(ChainIcon, { chain: chain, chainName: chain.name }));
|
|
192
191
|
const buildFormStage = () => (jsx(SendBalancePageLayout, { transaction: transaction, onClickBack: onClickBack, networkName: networkData.vanityName || networkData.name, networkIcon: currencyIcon, networkCurrencyDecimals: networkData.nativeCurrency.symbol === 'SOL'
|
|
193
192
|
? 9
|
|
194
193
|
: networkData.nativeCurrency.decimals, walletAddress: shortenWalletAddress(currentToken === null || currentToken === void 0 ? void 0 : currentToken.address, 3, 3), walletKey: primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector.key, onClickClose: onClickClose, displayPoweredByDynamicFooter: displayPoweredByDynamicFooter, onSubmit: () => setStage('confirmation'), tokenBalances: tokenBalances !== null && tokenBalances !== void 0 ? tokenBalances : (currentToken && [currentToken]), currentToken: currentToken, setCurrentToken: setCurrentToken, isLoading: isLoading, isNativeToken: isNativeToken }));
|
|
@@ -204,7 +203,7 @@ const SendBalanceView = ({ initialRecipientAddress = '', initialValue, onClickBa
|
|
|
204
203
|
}), currentToken: currentToken, isNativeToken: isNativeToken, transactionValue: getTransactionValue(transaction, isNativeToken) }));
|
|
205
204
|
const buildSuccessState = () => {
|
|
206
205
|
var _a;
|
|
207
|
-
return (jsx(TransactionStatusLayout, { transactionValue: getTransactionValue(transaction, isNativeToken), destinationAddress: (_a = transaction.to) !== null && _a !== void 0 ? _a : '', networkCurrency: networkCurrency, networkName:
|
|
206
|
+
return (jsx(TransactionStatusLayout, { transactionValue: getTransactionValue(transaction, isNativeToken), destinationAddress: (_a = transaction.to) !== null && _a !== void 0 ? _a : '', networkCurrency: networkCurrency, networkName: networkData.name || '', NetworkIcon: currencyIcon, onClickClose: onClickClose, onDone: () => onDone === null || onDone === void 0 ? void 0 : onDone(), displayPoweredByDynamicFooter: displayPoweredByDynamicFooter, transaction: transaction, currentToken: currentToken, isNativeToken: isNativeToken }));
|
|
208
207
|
};
|
|
209
208
|
const getCurrentView = () => {
|
|
210
209
|
switch (stage) {
|
|
@@ -72,6 +72,7 @@ require('../../components/Popper/Popper/Popper.cjs');
|
|
|
72
72
|
require('../../components/Popper/PopperContext/PopperContext.cjs');
|
|
73
73
|
require('react-focus-lock');
|
|
74
74
|
require('qrcode');
|
|
75
|
+
var useFetchChain = require('../../widgets/DynamicWidget/hooks/useFetchChain/useFetchChain.cjs');
|
|
75
76
|
var useFetchCurrency = require('../../widgets/DynamicWidget/hooks/useFetchCurrency/useFetchCurrency.cjs');
|
|
76
77
|
require('formik');
|
|
77
78
|
require('../../context/FooterAnimationContext/index.cjs');
|
|
@@ -82,13 +83,14 @@ require('@hcaptcha/react-hcaptcha');
|
|
|
82
83
|
require('../../widgets/DynamicWidget/context/DynamicWidgetContext.cjs');
|
|
83
84
|
require('../../context/IpConfigurationContext/IpConfigurationContext.cjs');
|
|
84
85
|
require('../../context/PasskeyContext/PasskeyContext.cjs');
|
|
85
|
-
|
|
86
|
+
require('../../store/state/sendBalances.cjs');
|
|
86
87
|
var TransactionConfirmationPageLayout = require('../../components/TransactionConfirmationPageLayout/TransactionConfirmationPageLayout.cjs');
|
|
87
88
|
require('../../widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.cjs');
|
|
88
89
|
var useTransactionTotal = require('./hooks/useTransactionTotal/useTransactionTotal.cjs');
|
|
89
90
|
var transactionErrorMessage = require('./helpers/transactionErrorMessage.cjs');
|
|
90
91
|
require('../../widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.cjs');
|
|
91
92
|
require('../../../index.cjs');
|
|
93
|
+
var useNetworkDataFromWallet = require('../../utils/hooks/useNetworkDataFromWallet/useNetworkDataFromWallet.cjs');
|
|
92
94
|
require('../../store/state/tokenBalances.cjs');
|
|
93
95
|
var useInternalDynamicContext = require('../../context/DynamicContext/useDynamicContext/useInternalDynamicContext.cjs');
|
|
94
96
|
|
|
@@ -100,14 +102,14 @@ const TransactionConfirmationView = ({ transaction, onError, onSuccess, mutation
|
|
|
100
102
|
const update = useForceUpdate.useForceUpdate();
|
|
101
103
|
const { t } = reactI18next.useTranslation();
|
|
102
104
|
const { currency } = useFetchCurrency.useFetchCurrency(walletConnector);
|
|
103
|
-
const {
|
|
105
|
+
const { chain } = useFetchChain.useFetchChain(walletConnector);
|
|
104
106
|
/**
|
|
105
107
|
* Update transaction fee and trigger a react update
|
|
106
108
|
* to reflect the new fee on the UI
|
|
107
109
|
*/
|
|
108
110
|
const fetchTransactionFee = () => {
|
|
109
111
|
// solana fee doesnt need to be refreshed
|
|
110
|
-
if (
|
|
112
|
+
if ((chain === null || chain === void 0 ? void 0 : chain.name) === 'Solana' && transaction.fee.gas !== undefined)
|
|
111
113
|
return;
|
|
112
114
|
transaction.fetchFee().finally(update);
|
|
113
115
|
};
|
|
@@ -205,9 +207,10 @@ const TransactionConfirmationView = ({ transaction, onError, onSuccess, mutation
|
|
|
205
207
|
isNativeToken,
|
|
206
208
|
isLoading,
|
|
207
209
|
]);
|
|
210
|
+
const networkData = useNetworkDataFromWallet.useNetworkDataFromWallet(primaryWallet);
|
|
208
211
|
return (jsxRuntime.jsxs(TransactionConfirmationPageLayout.TransactionConfirmationPageLayout, { onClickBack: onClickBack, onClickClose: onClickClose, copykey: copykey, title: title, appOrigin: appOrigin, appName: appName, appLogoUrl: appLogoUrl, hideModal: hideModal, isLoading: isLoading, onClickSend: () => send(), onSuccess: (tx) => onSuccess === null || onSuccess === void 0 ? void 0 : onSuccess(tx), displayPoweredByDynamicFooter: displayPoweredByDynamicFooter, disableSendButton: isBalanceLoading, error: errorMessage, alert: alert, walletConnector: walletConnector, transaction: transaction, total: total, currentToken: currentToken, transactionValue: transactionValue, isNativeToken: isNativeToken, isGasSponsored: isGasSponsored, isGasSponsoredLoading: isGasSponsoredLoading, walletKey: (primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.key) || '', children: [jsxRuntime.jsxs("div", { className: 'row flex', "data-testid": 'transaction-wallet_used', children: [jsxRuntime.jsx(Typography.Typography, { weight: 'regular', color: 'secondary', className: 'label', children: t('dyn_send_transaction.confirmation.data.wallet_used') }), jsxRuntime.jsxs(Typography.Typography, { weight: 'regular', color: 'primary', className: 'flex gap', children: [jsxRuntime.jsx(walletBook.WalletIcon, { walletKey: primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.key, width: 20, height: 20 }), ' ', shortenWalletAddress.shortenWalletAddress(transaction.from, 4, 4)] })] }), isModal && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsxs("div", { className: 'row flex', "data-testid": 'transaction-destination', children: [jsxRuntime.jsx(Typography.Typography, { weight: 'regular', color: 'secondary', className: 'label', children: t('dyn_send_transaction.confirmation.data.destination') }), jsxRuntime.jsxs(Typography.Typography, { weight: 'regular', color: 'primary', className: 'flex gap', children: [jsxRuntime.jsx(walletBook.WalletIcon, { walletKey: primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.key, width: 20, height: 20 }), ' ', shortenWalletAddress.shortenWalletAddress(transaction.to, 4, 4)] })] }), jsxRuntime.jsxs("div", { className: 'row flex', "data-testid": 'transaction-amount', children: [jsxRuntime.jsx(Typography.Typography, { weight: 'regular', color: 'secondary', className: 'label', children: t('dyn_send_transaction.confirmation.data.amount') }), jsxRuntime.jsx(Typography.Typography, { weight: 'regular', color: 'primary', className: 'flex gap', children: transaction.value
|
|
209
212
|
? transaction.format(transaction.value, { precision: 6 })
|
|
210
|
-
: '' })] })] })), jsxRuntime.jsxs("div", { className: 'row flex', "data-testid": 'transaction-network_used', children: [jsxRuntime.jsx(Typography.Typography, { weight: 'regular', color: 'secondary', className: 'label', children: t('dyn_send_transaction.confirmation.data.network_used') }), jsxRuntime.jsx(Typography.Typography, { weight: 'regular', color: 'primary', children:
|
|
213
|
+
: '' })] })] })), jsxRuntime.jsxs("div", { className: 'row flex', "data-testid": 'transaction-network_used', children: [jsxRuntime.jsx(Typography.Typography, { weight: 'regular', color: 'secondary', className: 'label', children: t('dyn_send_transaction.confirmation.data.network_used') }), jsxRuntime.jsx(Typography.Typography, { weight: 'regular', color: 'primary', children: networkData === null || networkData === void 0 ? void 0 : networkData.name })] })] }));
|
|
211
214
|
};
|
|
212
215
|
|
|
213
216
|
exports.FEE_REFRESH_INTERVAL = FEE_REFRESH_INTERVAL;
|