@dynamic-labs/sdk-react-core 1.1.0-alpha.6 → 1.1.0-alpha.8
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 +29 -0
- package/package.cjs +2 -2
- package/package.js +2 -2
- package/package.json +12 -11
- package/src/index.cjs +2 -0
- package/src/index.js +1 -0
- package/src/lib/components/ChainCard/ChainCard.d.ts +2 -2
- package/src/lib/components/SelectWalletChainLayout/SelectWalletChainLayout.cjs +5 -1
- package/src/lib/components/SelectWalletChainLayout/SelectWalletChainLayout.js +5 -1
- package/src/lib/context/DynamicContext/DynamicContext.cjs +18 -3
- package/src/lib/context/DynamicContext/DynamicContext.js +18 -3
- package/src/lib/context/DynamicContext/hooks/useSetShowAuthFlowWithInit/useSetShowAuthFlowWithInit.cjs +29 -7
- package/src/lib/context/DynamicContext/hooks/useSetShowAuthFlowWithInit/useSetShowAuthFlowWithInit.d.ts +4 -4
- package/src/lib/context/DynamicContext/hooks/useSetShowAuthFlowWithInit/useSetShowAuthFlowWithInit.js +29 -7
- package/src/lib/context/DynamicContext/hooks/useSetShowLinkNewWalletModalWithInit/index.d.ts +1 -0
- package/src/lib/context/DynamicContext/hooks/useSetShowLinkNewWalletModalWithInit/useSetShowLinkNewWalletModalWithInit.cjs +54 -0
- package/src/lib/context/DynamicContext/hooks/useSetShowLinkNewWalletModalWithInit/useSetShowLinkNewWalletModalWithInit.d.ts +18 -0
- package/src/lib/context/DynamicContext/hooks/useSetShowLinkNewWalletModalWithInit/useSetShowLinkNewWalletModalWithInit.js +50 -0
- package/src/lib/context/DynamicContext/types/index.d.ts +1 -0
- package/src/lib/context/DynamicContext/useDynamicContext.cjs +2 -1
- package/src/lib/context/DynamicContext/useDynamicContext.d.ts +1 -1
- package/src/lib/context/DynamicContext/useDynamicContext.js +2 -1
- package/src/lib/context/FundingContext/FundingContext.cjs +4 -1
- package/src/lib/context/FundingContext/FundingContext.js +4 -1
- package/src/lib/context/ViewContext/ViewContext.d.ts +1 -1
- package/src/lib/locale/en/translation.cjs +20 -2
- package/src/lib/locale/en/translation.d.ts +19 -1
- package/src/lib/locale/en/translation.js +20 -2
- package/src/lib/shared/assets/alt-key.cjs +54 -0
- package/src/lib/shared/assets/alt-key.js +30 -0
- package/src/lib/shared/assets/index.d.ts +1 -0
- package/src/lib/styles/index.shadow.cjs +1 -1
- package/src/lib/styles/index.shadow.js +1 -1
- package/src/lib/utils/functions/walletListBuilder/utils/filterConnectedWallets/filterConnectedWallets.cjs +13 -2
- package/src/lib/utils/functions/walletListBuilder/utils/filterConnectedWallets/filterConnectedWallets.js +13 -2
- package/src/lib/utils/hooks/index.d.ts +1 -0
- package/src/lib/utils/hooks/multiWallet/useMultiWallet/useMultiWallet.cjs +3 -2
- package/src/lib/utils/hooks/multiWallet/useMultiWallet/useMultiWallet.d.ts +6 -1
- package/src/lib/utils/hooks/multiWallet/useMultiWallet/useMultiWallet.js +3 -2
- package/src/lib/utils/hooks/useAuthLayoutChecks/useAuthLayoutChecks.cjs +2 -1
- package/src/lib/utils/hooks/useAuthLayoutChecks/useAuthLayoutChecks.js +2 -1
- package/src/lib/utils/hooks/useEmbeddedReveal/useEmbeddedReveal.cjs +18 -11
- package/src/lib/utils/hooks/useEmbeddedReveal/useEmbeddedReveal.d.ts +1 -1
- package/src/lib/utils/hooks/useEmbeddedReveal/useEmbeddedReveal.js +18 -11
- package/src/lib/utils/hooks/useWalletConnectorNetwork/index.d.ts +1 -0
- package/src/lib/utils/hooks/useWalletConnectorNetwork/useWalletConnectorNetwork.cjs +42 -0
- package/src/lib/utils/hooks/useWalletConnectorNetwork/useWalletConnectorNetwork.d.ts +18 -0
- package/src/lib/utils/hooks/useWalletConnectorNetwork/useWalletConnectorNetwork.js +38 -0
- package/src/lib/views/EmbeddedReveal/EmbeddedRevealView/EmbeddedRevealView.cjs +19 -17
- package/src/lib/views/EmbeddedReveal/EmbeddedRevealView/EmbeddedRevealView.js +19 -17
- package/src/lib/views/EmbeddedReveal/utils/turnkeyExport/turnkeyExport.cjs +55 -30
- package/src/lib/views/EmbeddedReveal/utils/turnkeyExport/turnkeyExport.d.ts +7 -1
- package/src/lib/views/EmbeddedReveal/utils/turnkeyExport/turnkeyExport.js +55 -31
- package/src/lib/views/LoginView/LoginView.cjs +60 -7
- package/src/lib/views/LoginView/LoginView.js +60 -7
- package/src/lib/views/NetworkNotSupported/NetworkNotSupported.cjs +3 -4
- package/src/lib/views/NetworkNotSupported/NetworkNotSupported.js +3 -4
- package/src/lib/views/NetworkNotSupportedSwitchManual/NetworkNotSupportedSwitchManual.cjs +3 -6
- package/src/lib/views/NetworkNotSupportedSwitchManual/NetworkNotSupportedSwitchManual.js +3 -6
- package/src/lib/views/WalletGroupView/WalletGroupView.cjs +70 -1
- package/src/lib/views/WalletGroupView/WalletGroupView.js +71 -2
- package/src/lib/views/WalletGroupView/components/HardwareWalletToggle/HardwareWalletToggle.cjs +72 -0
- package/src/lib/views/WalletGroupView/components/HardwareWalletToggle/HardwareWalletToggle.d.ts +7 -0
- package/src/lib/views/WalletGroupView/components/HardwareWalletToggle/HardwareWalletToggle.js +68 -0
- package/src/lib/views/WalletGroupView/components/HardwareWalletToggle/index.d.ts +1 -0
- package/src/lib/views/WalletGroupView/components/WalletGroupItem/WalletGroupItem.cjs +2 -4
- package/src/lib/views/WalletGroupView/components/WalletGroupItem/WalletGroupItem.d.ts +2 -1
- package/src/lib/views/WalletGroupView/components/WalletGroupItem/WalletGroupItem.js +2 -4
- package/src/lib/views/viewToComponentMap.cjs +1 -0
- package/src/lib/views/viewToComponentMap.js +1 -0
- package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveBitcoinWalletAddresses/ActiveBitcoinWalletAddresses.cjs +76 -0
- package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveBitcoinWalletAddresses/ActiveBitcoinWalletAddresses.d.ts +9 -0
- package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveBitcoinWalletAddresses/ActiveBitcoinWalletAddresses.js +72 -0
- package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveBitcoinWalletAddresses/index.d.ts +1 -0
- package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletAddress/ActiveWalletAddress.cjs +67 -0
- package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletAddress/ActiveWalletAddress.d.ts +9 -0
- package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletAddress/ActiveWalletAddress.js +63 -0
- package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletAddress/index.d.ts +1 -0
- package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletInformation.cjs +7 -5
- package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletInformation.js +7 -5
- package/src/lib/widgets/DynamicWidget/views/WalletSettingsView/WalletSettingsView.cjs +8 -6
- package/src/lib/widgets/DynamicWidget/views/WalletSettingsView/WalletSettingsView.js +8 -6
- package/src/lib/widgets/DynamicWidget/views/WalletsView/WalletsView.cjs +2 -2
- package/src/lib/widgets/DynamicWidget/views/WalletsView/WalletsView.js +2 -2
package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletInformation.cjs
CHANGED
|
@@ -6,6 +6,7 @@ var jsxRuntime = require('react/jsx-runtime');
|
|
|
6
6
|
var React = require('react');
|
|
7
7
|
var reactI18next = require('react-i18next');
|
|
8
8
|
var walletConnectorCore = require('@dynamic-labs/wallet-connector-core');
|
|
9
|
+
var bitcoin = require('@dynamic-labs/bitcoin');
|
|
9
10
|
var classNames = require('../../../../utils/functions/classNames/classNames.cjs');
|
|
10
11
|
require('../../../../events/dynamicEvents.cjs');
|
|
11
12
|
require('@dynamic-labs/utils');
|
|
@@ -17,7 +18,6 @@ require('@dynamic-labs/sdk-api');
|
|
|
17
18
|
var logger = require('../../../../shared/logger.cjs');
|
|
18
19
|
require('@dynamic-labs/iconic');
|
|
19
20
|
require('@dynamic-labs/wallet-book');
|
|
20
|
-
var shortenWalletAddress = require('../../../../shared/utils/functions/shortenWalletAddress/shortenWalletAddress.cjs');
|
|
21
21
|
require('../../../../utils/constants/colors.cjs');
|
|
22
22
|
require('../../../../shared/utils/classes/storage/localStorage.cjs');
|
|
23
23
|
require('viem');
|
|
@@ -57,7 +57,6 @@ require('qrcode');
|
|
|
57
57
|
var AuthProviderIcon = require('../../../../components/AuthProviderIcon/AuthProviderIcon.cjs');
|
|
58
58
|
var helpers = require('../../helpers/helpers.cjs');
|
|
59
59
|
var DynamicWidgetContext = require('../../context/DynamicWidgetContext.cjs');
|
|
60
|
-
var DotsMenu = require('../DotsMenu/DotsMenu.cjs');
|
|
61
60
|
require('../../../../components/UserProfile/parts/UserProfileField/components/VerifiedEmailIcon/VerifiedEmailIcon.cjs');
|
|
62
61
|
require('formik');
|
|
63
62
|
require('../../../../components/IconButton/IconButton.cjs');
|
|
@@ -71,6 +70,8 @@ require('../../../../components/Popper/PopperContext/PopperContext.cjs');
|
|
|
71
70
|
var NetworkPicker = require('../../../../components/NetworkPicker/NetworkPicker.cjs');
|
|
72
71
|
var useFetchNameService = require('../../hooks/useFetchNameService/useFetchNameService.cjs');
|
|
73
72
|
var Balance = require('../Balance/Balance.cjs');
|
|
73
|
+
var ActiveBitcoinWalletAddresses = require('./ActiveBitcoinWalletAddresses/ActiveBitcoinWalletAddresses.cjs');
|
|
74
|
+
var ActiveWalletAddress = require('./ActiveWalletAddress/ActiveWalletAddress.cjs');
|
|
74
75
|
|
|
75
76
|
const ICON_SIZE = 28;
|
|
76
77
|
const ActiveWalletInformation = () => {
|
|
@@ -86,6 +87,7 @@ const ActiveWalletInformation = () => {
|
|
|
86
87
|
const wallet = isAccountAbstractionWallet.isAccountAbstractionWallet(primaryWallet)
|
|
87
88
|
? createOwnerWallet.createOwnerWallet(primaryWallet, (user === null || user === void 0 ? void 0 : user.verifiedCredentials) || [])
|
|
88
89
|
: primaryWallet;
|
|
90
|
+
const isBitcoin = primaryWallet && bitcoin.isBitcoinConnector(primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector);
|
|
89
91
|
const options = [
|
|
90
92
|
{
|
|
91
93
|
Icon: null,
|
|
@@ -123,9 +125,9 @@ const ActiveWalletInformation = () => {
|
|
|
123
125
|
(primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector).evmNetworks) ||
|
|
124
126
|
[];
|
|
125
127
|
const showTestnetAlert = testnet && !isTurnkeyWalletWithoutAuthenticator;
|
|
126
|
-
return (jsxRuntime.jsxs("div", { className: 'active-wallet-information-container', "data-testid": 'active-wallet-information', children: [jsxRuntime.jsxs("div", { className: 'active-wallet-information', children: [jsxRuntime.jsxs("div", { className: 'active-wallet-information__header', children: [jsxRuntime.jsx("div", { className: 'active-wallet-information__avatar
|
|
127
|
-
'active-wallet-
|
|
128
|
-
}), children:
|
|
128
|
+
return (jsxRuntime.jsxs("div", { className: 'active-wallet-information-container', "data-testid": 'active-wallet-information', children: [jsxRuntime.jsxs("div", { className: 'active-wallet-information', children: [jsxRuntime.jsxs("div", { className: 'active-wallet-information__header', children: [jsxRuntime.jsx("div", { className: 'active-wallet-information__avatar', children: (nameService === null || nameService === void 0 ? void 0 : nameService.avatar) ? (jsxRuntime.jsx("div", { className: 'active-wallet-information__avatar', children: jsxRuntime.jsx("img", { src: nameService === null || nameService === void 0 ? void 0 : nameService.avatar, alt: '' }) })) : (jsxRuntime.jsx("div", { className: 'active-wallet-information__wallet-img', children: jsxRuntime.jsx(AuthProviderIcon.AuthProviderIcon, { jwt: authToken, iconSize: ICON_SIZE, showStatus: true }) })) }), jsxRuntime.jsxs("div", { className: 'active-wallet-information__details', children: [jsxRuntime.jsx("div", { className: classNames.classNames('active-wallet-information__addresses-container', {
|
|
129
|
+
'active-wallet-information__addresses-container--centered': !(nameService === null || nameService === void 0 ? void 0 : nameService.name),
|
|
130
|
+
}), children: isBitcoin ? (jsxRuntime.jsx(ActiveBitcoinWalletAddresses.ActiveBitcoinWalletAddresses, { bitcoinConnector: primaryWallet.connector, menuOption: options })) : (jsxRuntime.jsx(ActiveWalletAddress.ActiveWalletAddreess, { address: address, nameServiceName: nameService === null || nameService === void 0 ? void 0 : nameService.name, menuOption: options })) }), jsxRuntime.jsx(NetworkPicker.NetworkPicker, { currentNetwork: network, connector: primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector, isNetworkPickerOpen: isNetworkPickerOpen, setIsNetworkPickerOpen: setIsNetworkPickerOpen, mainClassName: 'active-wallet-information__network-picker', buttonClassName: 'active-wallet-information__network-picker-button', evmNetworks: evmNetworks, showNetworkName: true })] })] }), showTestnetAlert && (jsxRuntime.jsx(Alert.Alert, { variant: 'warning', copykey: 'dyn_active_wallet_info.testnet_warning', children: t('dyn_active_wallet_info.testnet_warning') }))] }), jsxRuntime.jsxs("div", { className: 'balance-container', children: [jsxRuntime.jsx(Typography.Typography, { color: 'secondary', variant: 'body_small', children: "Balance" }), primaryWallet && (jsxRuntime.jsx(Balance.Balance, { className: 'balance-container__balance', connector: primaryWallet.connector, address: primaryWallet.address, network: network }))] })] }));
|
|
129
131
|
};
|
|
130
132
|
|
|
131
133
|
exports.ActiveWalletInformation = ActiveWalletInformation;
|
package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletInformation.js
CHANGED
|
@@ -2,6 +2,7 @@ import { jsxs, jsx } from 'react/jsx-runtime';
|
|
|
2
2
|
import { useState } from 'react';
|
|
3
3
|
import { useTranslation } from 'react-i18next';
|
|
4
4
|
import { normalizeWalletName } from '@dynamic-labs/wallet-connector-core';
|
|
5
|
+
import { isBitcoinConnector } from '@dynamic-labs/bitcoin';
|
|
5
6
|
import { classNames } from '../../../../utils/functions/classNames/classNames.js';
|
|
6
7
|
import '../../../../events/dynamicEvents.js';
|
|
7
8
|
import '@dynamic-labs/utils';
|
|
@@ -13,7 +14,6 @@ import '@dynamic-labs/sdk-api';
|
|
|
13
14
|
import { logger } from '../../../../shared/logger.js';
|
|
14
15
|
import '@dynamic-labs/iconic';
|
|
15
16
|
import '@dynamic-labs/wallet-book';
|
|
16
|
-
import { shortenWalletAddress } from '../../../../shared/utils/functions/shortenWalletAddress/shortenWalletAddress.js';
|
|
17
17
|
import '../../../../utils/constants/colors.js';
|
|
18
18
|
import '../../../../shared/utils/classes/storage/localStorage.js';
|
|
19
19
|
import 'viem';
|
|
@@ -53,7 +53,6 @@ import 'qrcode';
|
|
|
53
53
|
import { AuthProviderIcon } from '../../../../components/AuthProviderIcon/AuthProviderIcon.js';
|
|
54
54
|
import { getExportKeysOption } from '../../helpers/helpers.js';
|
|
55
55
|
import { useWidgetContext } from '../../context/DynamicWidgetContext.js';
|
|
56
|
-
import { DotsMenu } from '../DotsMenu/DotsMenu.js';
|
|
57
56
|
import '../../../../components/UserProfile/parts/UserProfileField/components/VerifiedEmailIcon/VerifiedEmailIcon.js';
|
|
58
57
|
import 'formik';
|
|
59
58
|
import '../../../../components/IconButton/IconButton.js';
|
|
@@ -67,6 +66,8 @@ import '../../../../components/Popper/PopperContext/PopperContext.js';
|
|
|
67
66
|
import { NetworkPicker } from '../../../../components/NetworkPicker/NetworkPicker.js';
|
|
68
67
|
import { useFetchNameService } from '../../hooks/useFetchNameService/useFetchNameService.js';
|
|
69
68
|
import { Balance } from '../Balance/Balance.js';
|
|
69
|
+
import { ActiveBitcoinWalletAddresses } from './ActiveBitcoinWalletAddresses/ActiveBitcoinWalletAddresses.js';
|
|
70
|
+
import { ActiveWalletAddreess } from './ActiveWalletAddress/ActiveWalletAddress.js';
|
|
70
71
|
|
|
71
72
|
const ICON_SIZE = 28;
|
|
72
73
|
const ActiveWalletInformation = () => {
|
|
@@ -82,6 +83,7 @@ const ActiveWalletInformation = () => {
|
|
|
82
83
|
const wallet = isAccountAbstractionWallet(primaryWallet)
|
|
83
84
|
? createOwnerWallet(primaryWallet, (user === null || user === void 0 ? void 0 : user.verifiedCredentials) || [])
|
|
84
85
|
: primaryWallet;
|
|
86
|
+
const isBitcoin = primaryWallet && isBitcoinConnector(primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector);
|
|
85
87
|
const options = [
|
|
86
88
|
{
|
|
87
89
|
Icon: null,
|
|
@@ -119,9 +121,9 @@ const ActiveWalletInformation = () => {
|
|
|
119
121
|
(primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector).evmNetworks) ||
|
|
120
122
|
[];
|
|
121
123
|
const showTestnetAlert = testnet && !isTurnkeyWalletWithoutAuthenticator;
|
|
122
|
-
return (jsxs("div", { className: 'active-wallet-information-container', "data-testid": 'active-wallet-information', children: [jsxs("div", { className: 'active-wallet-information', children: [jsxs("div", { className: 'active-wallet-information__header', children: [jsx("div", { className: 'active-wallet-information__avatar
|
|
123
|
-
'active-wallet-
|
|
124
|
-
}), children:
|
|
124
|
+
return (jsxs("div", { className: 'active-wallet-information-container', "data-testid": 'active-wallet-information', children: [jsxs("div", { className: 'active-wallet-information', children: [jsxs("div", { className: 'active-wallet-information__header', children: [jsx("div", { className: 'active-wallet-information__avatar', children: (nameService === null || nameService === void 0 ? void 0 : nameService.avatar) ? (jsx("div", { className: 'active-wallet-information__avatar', children: jsx("img", { src: nameService === null || nameService === void 0 ? void 0 : nameService.avatar, alt: '' }) })) : (jsx("div", { className: 'active-wallet-information__wallet-img', children: jsx(AuthProviderIcon, { jwt: authToken, iconSize: ICON_SIZE, showStatus: true }) })) }), jsxs("div", { className: 'active-wallet-information__details', children: [jsx("div", { className: classNames('active-wallet-information__addresses-container', {
|
|
125
|
+
'active-wallet-information__addresses-container--centered': !(nameService === null || nameService === void 0 ? void 0 : nameService.name),
|
|
126
|
+
}), children: isBitcoin ? (jsx(ActiveBitcoinWalletAddresses, { bitcoinConnector: primaryWallet.connector, menuOption: options })) : (jsx(ActiveWalletAddreess, { address: address, nameServiceName: nameService === null || nameService === void 0 ? void 0 : nameService.name, menuOption: options })) }), jsx(NetworkPicker, { currentNetwork: network, connector: primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector, isNetworkPickerOpen: isNetworkPickerOpen, setIsNetworkPickerOpen: setIsNetworkPickerOpen, mainClassName: 'active-wallet-information__network-picker', buttonClassName: 'active-wallet-information__network-picker-button', evmNetworks: evmNetworks, showNetworkName: true })] })] }), showTestnetAlert && (jsx(Alert, { variant: 'warning', copykey: 'dyn_active_wallet_info.testnet_warning', children: t('dyn_active_wallet_info.testnet_warning') }))] }), jsxs("div", { className: 'balance-container', children: [jsx(Typography, { color: 'secondary', variant: 'body_small', children: "Balance" }), primaryWallet && (jsx(Balance, { className: 'balance-container__balance', connector: primaryWallet.connector, address: primaryWallet.address, network: network }))] })] }));
|
|
125
127
|
};
|
|
126
128
|
|
|
127
129
|
export { ActiveWalletInformation };
|
|
@@ -19,6 +19,7 @@ var chevronLeft = require('../../../../shared/assets/chevron-left.cjs');
|
|
|
19
19
|
var lock = require('../../../../shared/assets/lock.cjs');
|
|
20
20
|
var altEmbeddedWallet = require('../../../../shared/assets/alt-embedded-wallet.cjs');
|
|
21
21
|
var faceId = require('../../../../shared/assets/face-id.cjs');
|
|
22
|
+
var altKey = require('../../../../shared/assets/alt-key.cjs');
|
|
22
23
|
require('../../../../shared/logger.cjs');
|
|
23
24
|
require('@dynamic-labs/wallet-book');
|
|
24
25
|
require('../../../../utils/constants/colors.cjs');
|
|
@@ -32,7 +33,7 @@ require('../../../../context/AccountExistsContext/AccountExistsContext.cjs');
|
|
|
32
33
|
require('../../../../config/ApiEndpoint.cjs');
|
|
33
34
|
require('../../../../context/EmailVerificationContext/EmailVerificationContext.cjs');
|
|
34
35
|
require('react-dom');
|
|
35
|
-
require('../../../../context/ThemeContext/ThemeContext.cjs');
|
|
36
|
+
var ThemeContext = require('../../../../context/ThemeContext/ThemeContext.cjs');
|
|
36
37
|
require('@dynamic-labs/types');
|
|
37
38
|
require('yup');
|
|
38
39
|
require('../../../../context/MockContext/MockContext.cjs');
|
|
@@ -76,18 +77,19 @@ const WalletSettingsView = () => {
|
|
|
76
77
|
const { authToken } = useInternalDynamicContext.useInternalDynamicContext();
|
|
77
78
|
const { initExportProcess } = useEmbeddedReveal.useEmbeddedReveal();
|
|
78
79
|
const { isTurnkeyWallet, isTurnkeyWalletWithoutAuthenticator } = useIsTurnkeyWallet.useIsTurnkeyWallet();
|
|
80
|
+
const { theme } = ThemeContext.useThemeContext();
|
|
79
81
|
const { t } = reactI18next.useTranslation();
|
|
80
82
|
const decodedJwt = decodeJwt.decodeJwt(authToken);
|
|
81
83
|
const walletProperties = (_b = (_a = decodedJwt === null || decodedJwt === void 0 ? void 0 : decodedJwt.verifiedCredentials) === null || _a === void 0 ? void 0 : _a.find(({ walletName }) => walletName === null || walletName === void 0 ? void 0 : walletName.startsWith('turnkey'))) === null || _b === void 0 ? void 0 : _b.walletProperties;
|
|
82
84
|
const isTurnkeyHDWallet = walletProperties === null || walletProperties === void 0 ? void 0 : walletProperties.turnkeyHDWalletId;
|
|
83
85
|
const backButton = (jsxRuntime.jsx(IconButton.IconButton, { type: 'button', onClick: goToInitialDynamicWidgetView, "data-testid": 'back-button', children: jsxRuntime.jsx(chevronLeft.ReactComponent, {}) }));
|
|
84
|
-
return (jsxRuntime.jsxs("div", { className: 'wallet-settings-view', children: [jsxRuntime.jsx(ModalHeader.ModalHeader, { leading: backButton, children: jsxRuntime.jsx("div", { className: 'wallet-settings-view__header', children: jsxRuntime.jsx(Typography.Typography, { variant: 'title', color: 'primary', children: t('dyn_wallet_settings.title') }) }) }), jsxRuntime.jsxs("div", { className: 'wallet-settings-view__body', children: [jsxRuntime.jsxs("div", { className: 'wallet-settings-view__body__section', children: [jsxRuntime.jsx("div", { className: 'wallet-settings-view__body__section__title', children: t('dyn_wallet_settings.signing_section.title') }), jsxRuntime.jsx(Button.Button, { dataTestId: 'manage-passkeys-button', onClick: () => setDynamicWidgetView('manage-passkeys'), buttonClassName: 'wallet-settings-view__body__section__button', startSlot:
|
|
86
|
+
return (jsxRuntime.jsxs("div", { className: 'wallet-settings-view', children: [jsxRuntime.jsx(ModalHeader.ModalHeader, { leading: backButton, children: jsxRuntime.jsx("div", { className: 'wallet-settings-view__header', children: jsxRuntime.jsx(Typography.Typography, { variant: 'title', color: 'primary', copykey: 'dyn_wallet_settings.title', children: t('dyn_wallet_settings.title') }) }) }), jsxRuntime.jsxs("div", { className: 'wallet-settings-view__body', children: [jsxRuntime.jsxs("div", { className: 'wallet-settings-view__body__section', children: [jsxRuntime.jsx("div", { className: 'wallet-settings-view__body__section__title', children: t('dyn_wallet_settings.signing_section.title') }), jsxRuntime.jsx(Button.Button, { dataTestId: 'manage-passkeys-button', onClick: () => setDynamicWidgetView('manage-passkeys'), buttonClassName: 'wallet-settings-view__body__section__button', startSlot:
|
|
85
87
|
// eslint-disable-next-line react/jsx-wrap-multilines
|
|
86
|
-
jsxRuntime.jsxs("div", { className: 'wallet-settings-view__body__section__button__start-slot', children: [jsxRuntime.jsx(faceId.ReactComponent, { className: 'wallet-settings-view__body__section__button__icon' }), jsxRuntime.jsx(Typography.Typography, { weight: 'medium', children: t('dyn_wallet_settings.signing_section.passkey_button') })] }), endSlot: isTurnkeyWallet && !isTurnkeyWalletWithoutAuthenticator ? (jsxRuntime.jsx(checkCircle.ReactComponent, { className: 'wallet-settings-view__body__section__button__icon-secondary--success' })) : undefined, showInternalLoading: false })] }), jsxRuntime.jsxs("div", { className: 'wallet-settings-view__body__section', children: [jsxRuntime.jsx("div", { className: 'wallet-settings-view__body__section__title', children: t('dyn_wallet_settings.export_section.title') }), jsxRuntime.jsx(Button.Button, { dataTestId: 'embedded-reveal-button', onClick: initExportProcess, buttonClassName: 'wallet-settings-view__body__section__button', disabled: !isTurnkeyWallet || isTurnkeyWalletWithoutAuthenticator, startSlot:
|
|
88
|
+
jsxRuntime.jsxs("div", { className: 'wallet-settings-view__body__section__button__start-slot', children: [jsxRuntime.jsx(faceId.ReactComponent, { className: 'wallet-settings-view__body__section__button__icon' }), jsxRuntime.jsx(Typography.Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_wallet_settings.signing_section.passkey_button', children: t('dyn_wallet_settings.signing_section.passkey_button') })] }), endSlot: isTurnkeyWallet && !isTurnkeyWalletWithoutAuthenticator ? (jsxRuntime.jsx(checkCircle.ReactComponent, { className: 'wallet-settings-view__body__section__button__icon-secondary--success' })) : undefined, showInternalLoading: false })] }), jsxRuntime.jsxs("div", { className: 'wallet-settings-view__body__section', children: [jsxRuntime.jsx("div", { className: 'wallet-settings-view__body__section__title', children: t('dyn_wallet_settings.export_section.title') }), jsxRuntime.jsx(Button.Button, { dataTestId: 'embedded-reveal-account-button', onClick: () => initExportProcess(), buttonClassName: 'wallet-settings-view__body__section__button', disabled: !isTurnkeyWallet || isTurnkeyWalletWithoutAuthenticator, startSlot:
|
|
87
89
|
// eslint-disable-next-line react/jsx-wrap-multilines
|
|
88
|
-
jsxRuntime.jsxs("div", { className: 'wallet-settings-view__body__section__button__start-slot', children: [jsxRuntime.jsx(
|
|
89
|
-
|
|
90
|
-
|
|
90
|
+
jsxRuntime.jsxs("div", { className: 'wallet-settings-view__body__section__button__start-slot', children: [jsxRuntime.jsx(altKey.ReactComponent, { className: `wallet-settings-view__body__section__button__icon${theme.theme.name === 'dark' ? '__stroke' : ''}` }), jsxRuntime.jsx(Typography.Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_wallet_settings.export_section.private_key_button', children: t('dyn_wallet_settings.export_section.private_key_button') })] }), endSlot: isTurnkeyWallet && !isTurnkeyWalletWithoutAuthenticator ? (jsxRuntime.jsx(chevronLeft.ReactComponent, { className: 'wallet-settings-view__body__section__button__icon-secondary--rotate' })) : (jsxRuntime.jsx(lock.ReactComponent, { className: 'wallet-settings-view__body__section__button__icon-secondary' })), showInternalLoading: false }), isTurnkeyHDWallet && (jsxRuntime.jsx(Button.Button, { dataTestId: 'embedded-reveal-button', onClick: () => initExportProcess(true), buttonClassName: 'wallet-settings-view__body__section__button', disabled: !isTurnkeyWallet || isTurnkeyWalletWithoutAuthenticator, startSlot:
|
|
91
|
+
// eslint-disable-next-line react/jsx-wrap-multilines
|
|
92
|
+
jsxRuntime.jsxs("div", { className: 'wallet-settings-view__body__section__button__start-slot', children: [jsxRuntime.jsx(altEmbeddedWallet.ReactComponent, { className: `wallet-settings-view__body__section__button__icon${theme.theme.name === 'dark' ? '__stroke' : ''}` }), jsxRuntime.jsx(Typography.Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_wallet_settings.export_section.srp_button', children: t('dyn_wallet_settings.export_section.srp_button') })] }), endSlot: !isTurnkeyWalletWithoutAuthenticator ? (jsxRuntime.jsx(chevronLeft.ReactComponent, { className: 'wallet-settings-view__body__section__button__icon-secondary--rotate' })) : (jsxRuntime.jsx(lock.ReactComponent, { className: 'wallet-settings-view__body__section__button__icon-secondary' })), showInternalLoading: false }))] })] })] }));
|
|
91
93
|
};
|
|
92
94
|
|
|
93
95
|
exports.WalletSettingsView = WalletSettingsView;
|
|
@@ -15,6 +15,7 @@ import { ReactComponent as SvgChevronLeft } from '../../../../shared/assets/chev
|
|
|
15
15
|
import { ReactComponent as SvgLock } from '../../../../shared/assets/lock.js';
|
|
16
16
|
import { ReactComponent as SvgAltEmbeddedWallet } from '../../../../shared/assets/alt-embedded-wallet.js';
|
|
17
17
|
import { ReactComponent as SvgFaceId } from '../../../../shared/assets/face-id.js';
|
|
18
|
+
import { ReactComponent as SvgAltKey } from '../../../../shared/assets/alt-key.js';
|
|
18
19
|
import '../../../../shared/logger.js';
|
|
19
20
|
import '@dynamic-labs/wallet-book';
|
|
20
21
|
import '../../../../utils/constants/colors.js';
|
|
@@ -28,7 +29,7 @@ import '../../../../context/AccountExistsContext/AccountExistsContext.js';
|
|
|
28
29
|
import '../../../../config/ApiEndpoint.js';
|
|
29
30
|
import '../../../../context/EmailVerificationContext/EmailVerificationContext.js';
|
|
30
31
|
import 'react-dom';
|
|
31
|
-
import '../../../../context/ThemeContext/ThemeContext.js';
|
|
32
|
+
import { useThemeContext } from '../../../../context/ThemeContext/ThemeContext.js';
|
|
32
33
|
import '@dynamic-labs/types';
|
|
33
34
|
import 'yup';
|
|
34
35
|
import '../../../../context/MockContext/MockContext.js';
|
|
@@ -72,18 +73,19 @@ const WalletSettingsView = () => {
|
|
|
72
73
|
const { authToken } = useInternalDynamicContext();
|
|
73
74
|
const { initExportProcess } = useEmbeddedReveal();
|
|
74
75
|
const { isTurnkeyWallet, isTurnkeyWalletWithoutAuthenticator } = useIsTurnkeyWallet();
|
|
76
|
+
const { theme } = useThemeContext();
|
|
75
77
|
const { t } = useTranslation();
|
|
76
78
|
const decodedJwt = decodeJwt(authToken);
|
|
77
79
|
const walletProperties = (_b = (_a = decodedJwt === null || decodedJwt === void 0 ? void 0 : decodedJwt.verifiedCredentials) === null || _a === void 0 ? void 0 : _a.find(({ walletName }) => walletName === null || walletName === void 0 ? void 0 : walletName.startsWith('turnkey'))) === null || _b === void 0 ? void 0 : _b.walletProperties;
|
|
78
80
|
const isTurnkeyHDWallet = walletProperties === null || walletProperties === void 0 ? void 0 : walletProperties.turnkeyHDWalletId;
|
|
79
81
|
const backButton = (jsx(IconButton, { type: 'button', onClick: goToInitialDynamicWidgetView, "data-testid": 'back-button', children: jsx(SvgChevronLeft, {}) }));
|
|
80
|
-
return (jsxs("div", { className: 'wallet-settings-view', children: [jsx(ModalHeader, { leading: backButton, children: jsx("div", { className: 'wallet-settings-view__header', children: jsx(Typography, { variant: 'title', color: 'primary', children: t('dyn_wallet_settings.title') }) }) }), jsxs("div", { className: 'wallet-settings-view__body', children: [jsxs("div", { className: 'wallet-settings-view__body__section', children: [jsx("div", { className: 'wallet-settings-view__body__section__title', children: t('dyn_wallet_settings.signing_section.title') }), jsx(Button, { dataTestId: 'manage-passkeys-button', onClick: () => setDynamicWidgetView('manage-passkeys'), buttonClassName: 'wallet-settings-view__body__section__button', startSlot:
|
|
82
|
+
return (jsxs("div", { className: 'wallet-settings-view', children: [jsx(ModalHeader, { leading: backButton, children: jsx("div", { className: 'wallet-settings-view__header', children: jsx(Typography, { variant: 'title', color: 'primary', copykey: 'dyn_wallet_settings.title', children: t('dyn_wallet_settings.title') }) }) }), jsxs("div", { className: 'wallet-settings-view__body', children: [jsxs("div", { className: 'wallet-settings-view__body__section', children: [jsx("div", { className: 'wallet-settings-view__body__section__title', children: t('dyn_wallet_settings.signing_section.title') }), jsx(Button, { dataTestId: 'manage-passkeys-button', onClick: () => setDynamicWidgetView('manage-passkeys'), buttonClassName: 'wallet-settings-view__body__section__button', startSlot:
|
|
81
83
|
// eslint-disable-next-line react/jsx-wrap-multilines
|
|
82
|
-
jsxs("div", { className: 'wallet-settings-view__body__section__button__start-slot', children: [jsx(SvgFaceId, { className: 'wallet-settings-view__body__section__button__icon' }), jsx(Typography, { weight: 'medium', children: t('dyn_wallet_settings.signing_section.passkey_button') })] }), endSlot: isTurnkeyWallet && !isTurnkeyWalletWithoutAuthenticator ? (jsx(SvgCheckCircle, { className: 'wallet-settings-view__body__section__button__icon-secondary--success' })) : undefined, showInternalLoading: false })] }), jsxs("div", { className: 'wallet-settings-view__body__section', children: [jsx("div", { className: 'wallet-settings-view__body__section__title', children: t('dyn_wallet_settings.export_section.title') }), jsx(Button, { dataTestId: 'embedded-reveal-button', onClick: initExportProcess, buttonClassName: 'wallet-settings-view__body__section__button', disabled: !isTurnkeyWallet || isTurnkeyWalletWithoutAuthenticator, startSlot:
|
|
84
|
+
jsxs("div", { className: 'wallet-settings-view__body__section__button__start-slot', children: [jsx(SvgFaceId, { className: 'wallet-settings-view__body__section__button__icon' }), jsx(Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_wallet_settings.signing_section.passkey_button', children: t('dyn_wallet_settings.signing_section.passkey_button') })] }), endSlot: isTurnkeyWallet && !isTurnkeyWalletWithoutAuthenticator ? (jsx(SvgCheckCircle, { className: 'wallet-settings-view__body__section__button__icon-secondary--success' })) : undefined, showInternalLoading: false })] }), jsxs("div", { className: 'wallet-settings-view__body__section', children: [jsx("div", { className: 'wallet-settings-view__body__section__title', children: t('dyn_wallet_settings.export_section.title') }), jsx(Button, { dataTestId: 'embedded-reveal-account-button', onClick: () => initExportProcess(), buttonClassName: 'wallet-settings-view__body__section__button', disabled: !isTurnkeyWallet || isTurnkeyWalletWithoutAuthenticator, startSlot:
|
|
83
85
|
// eslint-disable-next-line react/jsx-wrap-multilines
|
|
84
|
-
jsxs("div", { className: 'wallet-settings-view__body__section__button__start-slot', children: [jsx(
|
|
85
|
-
|
|
86
|
-
|
|
86
|
+
jsxs("div", { className: 'wallet-settings-view__body__section__button__start-slot', children: [jsx(SvgAltKey, { className: `wallet-settings-view__body__section__button__icon${theme.theme.name === 'dark' ? '__stroke' : ''}` }), jsx(Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_wallet_settings.export_section.private_key_button', children: t('dyn_wallet_settings.export_section.private_key_button') })] }), endSlot: isTurnkeyWallet && !isTurnkeyWalletWithoutAuthenticator ? (jsx(SvgChevronLeft, { className: 'wallet-settings-view__body__section__button__icon-secondary--rotate' })) : (jsx(SvgLock, { className: 'wallet-settings-view__body__section__button__icon-secondary' })), showInternalLoading: false }), isTurnkeyHDWallet && (jsx(Button, { dataTestId: 'embedded-reveal-button', onClick: () => initExportProcess(true), buttonClassName: 'wallet-settings-view__body__section__button', disabled: !isTurnkeyWallet || isTurnkeyWalletWithoutAuthenticator, startSlot:
|
|
87
|
+
// eslint-disable-next-line react/jsx-wrap-multilines
|
|
88
|
+
jsxs("div", { className: 'wallet-settings-view__body__section__button__start-slot', children: [jsx(SvgAltEmbeddedWallet, { className: `wallet-settings-view__body__section__button__icon${theme.theme.name === 'dark' ? '__stroke' : ''}` }), jsx(Typography, { color: 'primary', weight: 'medium', copykey: 'dyn_wallet_settings.export_section.srp_button', children: t('dyn_wallet_settings.export_section.srp_button') })] }), endSlot: !isTurnkeyWalletWithoutAuthenticator ? (jsx(SvgChevronLeft, { className: 'wallet-settings-view__body__section__button__icon-secondary--rotate' })) : (jsx(SvgLock, { className: 'wallet-settings-view__body__section__button__icon-secondary' })), showInternalLoading: false }))] })] })] }));
|
|
87
89
|
};
|
|
88
90
|
|
|
89
91
|
export { WalletSettingsView };
|
|
@@ -68,12 +68,12 @@ require('../../../../components/Popper/Popper/Popper.cjs');
|
|
|
68
68
|
require('../../../../components/Popper/PopperContext/PopperContext.cjs');
|
|
69
69
|
|
|
70
70
|
const WalletsView = () => {
|
|
71
|
-
const {
|
|
71
|
+
const { setShowLinkNewWalletModal, setSelectedWalletConnectorKey, user, authMode, multiWallet, } = useInternalDynamicContext.useInternalDynamicContext();
|
|
72
72
|
const isKYCEnabled = useKYCFlag.useKYCFlag();
|
|
73
73
|
const { setView } = ViewContext.useViewContext();
|
|
74
74
|
const addNewWallet = () => {
|
|
75
75
|
setView('multi-wallet-wallet-list');
|
|
76
|
-
|
|
76
|
+
setShowLinkNewWalletModal(true);
|
|
77
77
|
setSelectedWalletConnectorKey(null);
|
|
78
78
|
};
|
|
79
79
|
return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [!multiWallet && !isKYCEnabled && (jsxRuntime.jsxs("div", { className: 'dynamic-widget-index-view__email-container', children: [jsxRuntime.jsx(Typography.Typography, { children: user === null || user === void 0 ? void 0 : user.email }), jsxRuntime.jsx(SingleWalletButtons.SingleWalletButtons, {})] })), multiWallet && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(DynamicWidgetWallets.DynamicWidgetWallets, {}), jsxRuntime.jsx(DynamicWidgetFooter.DynamicWidgetFooter, { children: jsxRuntime.jsxs("div", { className: 'dynamic-widget-index-view__footer', children: [jsxRuntime.jsxs(Button.Button, { buttonClassName: 'dynamic-widget-footer__button', buttonVariant: 'tertiary', buttonPadding: 'none', onClick: addNewWallet, typographyProps: {
|
|
@@ -64,12 +64,12 @@ import '../../../../components/Popper/Popper/Popper.js';
|
|
|
64
64
|
import '../../../../components/Popper/PopperContext/PopperContext.js';
|
|
65
65
|
|
|
66
66
|
const WalletsView = () => {
|
|
67
|
-
const {
|
|
67
|
+
const { setShowLinkNewWalletModal, setSelectedWalletConnectorKey, user, authMode, multiWallet, } = useInternalDynamicContext();
|
|
68
68
|
const isKYCEnabled = useKYCFlag();
|
|
69
69
|
const { setView } = useViewContext();
|
|
70
70
|
const addNewWallet = () => {
|
|
71
71
|
setView('multi-wallet-wallet-list');
|
|
72
|
-
|
|
72
|
+
setShowLinkNewWalletModal(true);
|
|
73
73
|
setSelectedWalletConnectorKey(null);
|
|
74
74
|
};
|
|
75
75
|
return (jsxs(Fragment, { children: [!multiWallet && !isKYCEnabled && (jsxs("div", { className: 'dynamic-widget-index-view__email-container', children: [jsx(Typography, { children: user === null || user === void 0 ? void 0 : user.email }), jsx(SingleWalletButtons, {})] })), multiWallet && (jsxs(Fragment, { children: [jsx(DynamicWidgetWallets, {}), jsx(DynamicWidgetFooter, { children: jsxs("div", { className: 'dynamic-widget-index-view__footer', children: [jsxs(Button, { buttonClassName: 'dynamic-widget-footer__button', buttonVariant: 'tertiary', buttonPadding: 'none', onClick: addNewWallet, typographyProps: {
|