@dynamic-labs/sdk-react-core 1.2.0-alpha.0 → 1.2.0-alpha.1
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 +14 -0
- package/package.cjs +1 -1
- package/package.js +1 -1
- package/package.json +10 -10
- package/src/index.cjs +1 -0
- package/src/index.js +1 -1
- package/src/lib/components/Badge/Badge.cjs +1 -1
- package/src/lib/components/Badge/Badge.d.ts +1 -1
- package/src/lib/components/Badge/Badge.js +1 -1
- package/src/lib/components/Badge/Badge.types.d.ts +1 -0
- package/src/lib/components/IconWithSpinner/IconWithSpinner.cjs +2 -13
- package/src/lib/components/IconWithSpinner/IconWithSpinner.js +2 -13
- package/src/lib/context/DynamicContext/DynamicContext.cjs +4 -2
- package/src/lib/context/DynamicContext/DynamicContext.d.ts +2 -1
- package/src/lib/context/DynamicContext/DynamicContext.js +5 -3
- package/src/lib/context/DynamicContext/types/index.d.ts +3 -2
- package/src/lib/locale/en/translation.cjs +8 -0
- package/src/lib/locale/en/translation.d.ts +8 -0
- package/src/lib/locale/en/translation.js +8 -0
- package/src/lib/main.global.cjs +1 -1
- package/src/lib/main.global.js +1 -1
- package/src/lib/shared/types/index.d.ts +5 -1
- package/src/lib/shared/utils/functions/getWalletListItemLabel/getWalletListItemLabel.cjs +23 -10
- package/src/lib/shared/utils/functions/getWalletListItemLabel/getWalletListItemLabel.d.ts +7 -3
- package/src/lib/shared/utils/functions/getWalletListItemLabel/getWalletListItemLabel.js +23 -10
- package/src/lib/styles/index.shadow.cjs +1 -1
- package/src/lib/styles/index.shadow.js +1 -1
- package/src/lib/utils/functions/walletFilters/index.cjs +6 -0
- package/src/lib/utils/functions/walletFilters/index.d.ts +5 -0
- package/src/lib/utils/functions/walletFilters/index.js +6 -1
- package/src/lib/utils/functions/walletListBuilder/walletListBuilder.cjs +30 -8
- package/src/lib/utils/functions/walletListBuilder/walletListBuilder.d.ts +3 -2
- package/src/lib/utils/functions/walletListBuilder/walletListBuilder.js +30 -8
- package/src/lib/utils/hooks/useEmbeddedReveal/useEmbeddedReveal.cjs +1 -6
- package/src/lib/utils/hooks/useEmbeddedReveal/useEmbeddedReveal.js +1 -6
- package/src/lib/utils/hooks/usePasskeyRecovery/usePasskeyRecovery.cjs +9 -15
- package/src/lib/utils/hooks/usePasskeyRecovery/usePasskeyRecovery.js +10 -16
- package/src/lib/views/EmbeddedReveal/EmbeddedRevealView/EmbeddedRevealView.cjs +21 -19
- package/src/lib/views/EmbeddedReveal/EmbeddedRevealView/EmbeddedRevealView.d.ts +5 -1
- package/src/lib/views/EmbeddedReveal/EmbeddedRevealView/EmbeddedRevealView.js +22 -20
- package/src/lib/views/LoginView/sections/WalletSignInSection/ListItemButton/ListItemButton.cjs +1 -1
- package/src/lib/views/LoginView/sections/WalletSignInSection/ListItemButton/ListItemButton.js +1 -1
- package/src/lib/views/LoginView/sections/WalletSignInSection/WalletSimpleSignIn/WalletSimpleSignIn.cjs +2 -1
- package/src/lib/views/LoginView/sections/WalletSignInSection/WalletSimpleSignIn/WalletSimpleSignIn.js +2 -1
- package/src/lib/views/Passkey/EmbeddedAuthChoice/EmbeddedAuthChoice.cjs +21 -8
- package/src/lib/views/Passkey/EmbeddedAuthChoice/EmbeddedAuthChoice.js +21 -8
- package/src/lib/views/Passkey/EmbeddedAuthChoiceCards/ActionCard/ActionCard.cjs +1 -1
- package/src/lib/views/Passkey/EmbeddedAuthChoiceCards/ActionCard/ActionCard.js +1 -1
- package/src/lib/views/Passkey/EmbeddedAuthChoiceCards/EmbeddedAuthChoiceCards.cjs +3 -1
- package/src/lib/views/Passkey/EmbeddedAuthChoiceCards/EmbeddedAuthChoiceCards.js +3 -1
- package/src/lib/views/Passkey/PasskeyRecovery/BundleValidation/PasskeyBundleRecovery.cjs +3 -0
- package/src/lib/views/Passkey/PasskeyRecovery/BundleValidation/PasskeyBundleRecovery.js +3 -0
- package/src/lib/views/Passkey/utils/passkeyRecovery/passkeyRecovery.cjs +20 -1
- package/src/lib/views/Passkey/utils/passkeyRecovery/passkeyRecovery.d.ts +2 -1
- package/src/lib/views/Passkey/utils/passkeyRecovery/passkeyRecovery.js +20 -2
- package/src/lib/views/SelectWalletInWalletGroupView/components/WalletGroupItem/WalletGroupItem.cjs +6 -3
- package/src/lib/views/SelectWalletInWalletGroupView/components/WalletGroupItem/WalletGroupItem.js +6 -3
- package/src/lib/views/WalletGroupView/components/WalletGroupItem/WalletGroupItem.cjs +4 -4
- package/src/lib/views/WalletGroupView/components/WalletGroupItem/WalletGroupItem.js +4 -4
- package/src/lib/views/WalletList/WalletList.cjs +2 -2
- package/src/lib/views/WalletList/WalletList.js +2 -2
- package/src/lib/views/WalletList/WalletListItem/WalletListItem.cjs +6 -3
- package/src/lib/views/WalletList/WalletListItem/WalletListItem.js +6 -3
- package/src/lib/widgets/DynamicWidget/components/DotsMenuDropdown/DotsMenuDropdown.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/components/DotsMenuDropdown/DotsMenuDropdown.js +1 -1
- package/src/lib/widgets/DynamicWidget/views/WalletSettingsView/WalletSettingsView.cjs +10 -5
- package/src/lib/widgets/DynamicWidget/views/WalletSettingsView/WalletSettingsView.js +10 -5
|
@@ -24,12 +24,18 @@ const PRIORITY_WALLET_LIST = [
|
|
|
24
24
|
'lilico',
|
|
25
25
|
];
|
|
26
26
|
const SIGN_IN_WITH_EMAIL_WALLET_NAME = 'Sign In With Email';
|
|
27
|
-
const sortedInputList = (inputList) => {
|
|
27
|
+
const sortedInputList = (inputList, recommendedWalletKeys) => {
|
|
28
28
|
// Input is the unordered list of wallets we support
|
|
29
|
+
const unsortedRecommendedWallets = [];
|
|
29
30
|
const unsortedPriorityWallets = [];
|
|
30
31
|
const unsortedOtherWallets = [];
|
|
31
32
|
inputList.forEach((wallet) => {
|
|
32
|
-
|
|
33
|
+
const isRecommendedWallet = recommendedWalletKeys.includes(wallet.key);
|
|
34
|
+
if (isRecommendedWallet) {
|
|
35
|
+
unsortedRecommendedWallets.push(wallet);
|
|
36
|
+
}
|
|
37
|
+
else if (PRIORITY_WALLET_LIST.includes(wallet.key) &&
|
|
38
|
+
!isRecommendedWallet) {
|
|
33
39
|
unsortedPriorityWallets.push(wallet);
|
|
34
40
|
}
|
|
35
41
|
else {
|
|
@@ -40,9 +46,17 @@ const sortedInputList = (inputList) => {
|
|
|
40
46
|
.slice()
|
|
41
47
|
.sort((a, b) => PRIORITY_WALLET_LIST.indexOf(a.key) -
|
|
42
48
|
PRIORITY_WALLET_LIST.indexOf(b.key));
|
|
43
|
-
|
|
49
|
+
const sortedRecommendedWallets = unsortedRecommendedWallets
|
|
50
|
+
.slice()
|
|
51
|
+
.sort((a, b) => recommendedWalletKeys.indexOf(a.key) -
|
|
52
|
+
recommendedWalletKeys.indexOf(b.key));
|
|
53
|
+
return [
|
|
54
|
+
...sortedRecommendedWallets,
|
|
55
|
+
...sortedPriorityWallets,
|
|
56
|
+
...unsortedOtherWallets,
|
|
57
|
+
];
|
|
44
58
|
};
|
|
45
|
-
const walletListBuilder = ({ authMode, connectedWallets, multiWallet, numberOfWalletsToShow, inputList, isWalletConnectList, lastUsedWalletKey, signWithEmailWalletName, searchFilter, walletsFilter, loginWithEmail, groupWallets, walletBook, showMoreWalletsWithFilter, }) => {
|
|
59
|
+
const walletListBuilder = ({ authMode, connectedWallets, multiWallet, numberOfWalletsToShow, inputList, isWalletConnectList, lastUsedWalletKey, signWithEmailWalletName, searchFilter, walletsFilter, loginWithEmail, groupWallets, walletBook, showMoreWalletsWithFilter, recommendedWallets, }) => {
|
|
46
60
|
let walletList = inputList;
|
|
47
61
|
if (isWalletConnectList) {
|
|
48
62
|
walletList = inputList.filter((wallet) => wallet.walletConnector.isWalletConnect &&
|
|
@@ -57,13 +71,19 @@ const walletListBuilder = ({ authMode, connectedWallets, multiWallet, numberOfWa
|
|
|
57
71
|
let lastUsedWallet;
|
|
58
72
|
const hasWalletFilter = Boolean(walletsFilter);
|
|
59
73
|
const signWithEmailWallet = getSignWithEmailWallet(signWithEmailWalletName, walletList);
|
|
74
|
+
const recommendedWalletsList = [];
|
|
60
75
|
const installedWallets = [];
|
|
61
76
|
const otherWallets = [];
|
|
62
|
-
const
|
|
77
|
+
const recommendedWalletKeys = Array.from(new Set((recommendedWallets || []).map((w) => w.walletKey)));
|
|
78
|
+
const orderedInputList = orderAndFilterList(walletList, walletsFilter, isWalletConnectList, recommendedWalletKeys);
|
|
63
79
|
orderedInputList.forEach((wallet) => {
|
|
80
|
+
const isRecommendedWallet = recommendedWalletKeys === null || recommendedWalletKeys === void 0 ? void 0 : recommendedWalletKeys.includes(wallet.key);
|
|
64
81
|
if (walletConnectorCore.isEmbeddedConnector(wallet.walletConnector)) {
|
|
65
82
|
return;
|
|
66
83
|
}
|
|
84
|
+
else if (isRecommendedWallet) {
|
|
85
|
+
recommendedWalletsList.push(wallet);
|
|
86
|
+
}
|
|
67
87
|
else if (lastUsedWalletKey === wallet.key) {
|
|
68
88
|
lastUsedWallet = wallet;
|
|
69
89
|
}
|
|
@@ -79,6 +99,7 @@ const walletListBuilder = ({ authMode, connectedWallets, multiWallet, numberOfWa
|
|
|
79
99
|
...(lastUsedWallet ? [lastUsedWallet] : []),
|
|
80
100
|
];
|
|
81
101
|
const walletsList = [
|
|
102
|
+
...recommendedWalletsList,
|
|
82
103
|
...firstPriorityWallets,
|
|
83
104
|
...installedWallets,
|
|
84
105
|
...otherWallets,
|
|
@@ -96,12 +117,13 @@ const walletListBuilder = ({ authMode, connectedWallets, multiWallet, numberOfWa
|
|
|
96
117
|
};
|
|
97
118
|
// We want to show the full list of wallets when we render the wallet connect list even
|
|
98
119
|
// if a filter was applied to the main page
|
|
99
|
-
const orderAndFilterList = (walletList, walletsFilter, isWalletConnectList) => {
|
|
120
|
+
const orderAndFilterList = (walletList, walletsFilter, isWalletConnectList, recommendedWalletKeys) => {
|
|
121
|
+
const sortedWalletList = sortedInputList(walletList, recommendedWalletKeys);
|
|
100
122
|
if (!isWalletConnectList && walletsFilter) {
|
|
101
|
-
return walletsFilter(
|
|
123
|
+
return walletsFilter(sortedWalletList);
|
|
102
124
|
}
|
|
103
125
|
else {
|
|
104
|
-
return
|
|
126
|
+
return sortedWalletList;
|
|
105
127
|
}
|
|
106
128
|
};
|
|
107
129
|
const applySearchFilterToWalletOptionList = (rawSearchFilter, walletOptionList) => {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { WalletBookSchema } from '@dynamic-labs/wallet-book';
|
|
2
|
-
import { AuthModeType, Wallet, WalletOption } from '../../../shared/types';
|
|
2
|
+
import { AuthModeType, RecommendedWallet, Wallet, WalletOption } from '../../../shared/types';
|
|
3
3
|
type BuilderParams = {
|
|
4
4
|
authMode: AuthModeType;
|
|
5
5
|
connectedWallets: Wallet[];
|
|
@@ -15,6 +15,7 @@ type BuilderParams = {
|
|
|
15
15
|
groupWallets?: boolean;
|
|
16
16
|
walletBook: WalletBookSchema;
|
|
17
17
|
showMoreWalletsWithFilter?: boolean;
|
|
18
|
+
recommendedWallets?: RecommendedWallet[];
|
|
18
19
|
};
|
|
19
20
|
type BuilderResult = {
|
|
20
21
|
numberOfWallets: number;
|
|
@@ -22,5 +23,5 @@ type BuilderResult = {
|
|
|
22
23
|
};
|
|
23
24
|
export declare const PRIORITY_WALLET_LIST: string[];
|
|
24
25
|
export declare const SIGN_IN_WITH_EMAIL_WALLET_NAME = "Sign In With Email";
|
|
25
|
-
export declare const walletListBuilder: ({ authMode, connectedWallets, multiWallet, numberOfWalletsToShow, inputList, isWalletConnectList, lastUsedWalletKey, signWithEmailWalletName, searchFilter, walletsFilter, loginWithEmail, groupWallets, walletBook, showMoreWalletsWithFilter, }: BuilderParams) => BuilderResult;
|
|
26
|
+
export declare const walletListBuilder: ({ authMode, connectedWallets, multiWallet, numberOfWalletsToShow, inputList, isWalletConnectList, lastUsedWalletKey, signWithEmailWalletName, searchFilter, walletsFilter, loginWithEmail, groupWallets, walletBook, showMoreWalletsWithFilter, recommendedWallets, }: BuilderParams) => BuilderResult;
|
|
26
27
|
export {};
|
|
@@ -20,12 +20,18 @@ const PRIORITY_WALLET_LIST = [
|
|
|
20
20
|
'lilico',
|
|
21
21
|
];
|
|
22
22
|
const SIGN_IN_WITH_EMAIL_WALLET_NAME = 'Sign In With Email';
|
|
23
|
-
const sortedInputList = (inputList) => {
|
|
23
|
+
const sortedInputList = (inputList, recommendedWalletKeys) => {
|
|
24
24
|
// Input is the unordered list of wallets we support
|
|
25
|
+
const unsortedRecommendedWallets = [];
|
|
25
26
|
const unsortedPriorityWallets = [];
|
|
26
27
|
const unsortedOtherWallets = [];
|
|
27
28
|
inputList.forEach((wallet) => {
|
|
28
|
-
|
|
29
|
+
const isRecommendedWallet = recommendedWalletKeys.includes(wallet.key);
|
|
30
|
+
if (isRecommendedWallet) {
|
|
31
|
+
unsortedRecommendedWallets.push(wallet);
|
|
32
|
+
}
|
|
33
|
+
else if (PRIORITY_WALLET_LIST.includes(wallet.key) &&
|
|
34
|
+
!isRecommendedWallet) {
|
|
29
35
|
unsortedPriorityWallets.push(wallet);
|
|
30
36
|
}
|
|
31
37
|
else {
|
|
@@ -36,9 +42,17 @@ const sortedInputList = (inputList) => {
|
|
|
36
42
|
.slice()
|
|
37
43
|
.sort((a, b) => PRIORITY_WALLET_LIST.indexOf(a.key) -
|
|
38
44
|
PRIORITY_WALLET_LIST.indexOf(b.key));
|
|
39
|
-
|
|
45
|
+
const sortedRecommendedWallets = unsortedRecommendedWallets
|
|
46
|
+
.slice()
|
|
47
|
+
.sort((a, b) => recommendedWalletKeys.indexOf(a.key) -
|
|
48
|
+
recommendedWalletKeys.indexOf(b.key));
|
|
49
|
+
return [
|
|
50
|
+
...sortedRecommendedWallets,
|
|
51
|
+
...sortedPriorityWallets,
|
|
52
|
+
...unsortedOtherWallets,
|
|
53
|
+
];
|
|
40
54
|
};
|
|
41
|
-
const walletListBuilder = ({ authMode, connectedWallets, multiWallet, numberOfWalletsToShow, inputList, isWalletConnectList, lastUsedWalletKey, signWithEmailWalletName, searchFilter, walletsFilter, loginWithEmail, groupWallets, walletBook, showMoreWalletsWithFilter, }) => {
|
|
55
|
+
const walletListBuilder = ({ authMode, connectedWallets, multiWallet, numberOfWalletsToShow, inputList, isWalletConnectList, lastUsedWalletKey, signWithEmailWalletName, searchFilter, walletsFilter, loginWithEmail, groupWallets, walletBook, showMoreWalletsWithFilter, recommendedWallets, }) => {
|
|
42
56
|
let walletList = inputList;
|
|
43
57
|
if (isWalletConnectList) {
|
|
44
58
|
walletList = inputList.filter((wallet) => wallet.walletConnector.isWalletConnect &&
|
|
@@ -53,13 +67,19 @@ const walletListBuilder = ({ authMode, connectedWallets, multiWallet, numberOfWa
|
|
|
53
67
|
let lastUsedWallet;
|
|
54
68
|
const hasWalletFilter = Boolean(walletsFilter);
|
|
55
69
|
const signWithEmailWallet = getSignWithEmailWallet(signWithEmailWalletName, walletList);
|
|
70
|
+
const recommendedWalletsList = [];
|
|
56
71
|
const installedWallets = [];
|
|
57
72
|
const otherWallets = [];
|
|
58
|
-
const
|
|
73
|
+
const recommendedWalletKeys = Array.from(new Set((recommendedWallets || []).map((w) => w.walletKey)));
|
|
74
|
+
const orderedInputList = orderAndFilterList(walletList, walletsFilter, isWalletConnectList, recommendedWalletKeys);
|
|
59
75
|
orderedInputList.forEach((wallet) => {
|
|
76
|
+
const isRecommendedWallet = recommendedWalletKeys === null || recommendedWalletKeys === void 0 ? void 0 : recommendedWalletKeys.includes(wallet.key);
|
|
60
77
|
if (isEmbeddedConnector(wallet.walletConnector)) {
|
|
61
78
|
return;
|
|
62
79
|
}
|
|
80
|
+
else if (isRecommendedWallet) {
|
|
81
|
+
recommendedWalletsList.push(wallet);
|
|
82
|
+
}
|
|
63
83
|
else if (lastUsedWalletKey === wallet.key) {
|
|
64
84
|
lastUsedWallet = wallet;
|
|
65
85
|
}
|
|
@@ -75,6 +95,7 @@ const walletListBuilder = ({ authMode, connectedWallets, multiWallet, numberOfWa
|
|
|
75
95
|
...(lastUsedWallet ? [lastUsedWallet] : []),
|
|
76
96
|
];
|
|
77
97
|
const walletsList = [
|
|
98
|
+
...recommendedWalletsList,
|
|
78
99
|
...firstPriorityWallets,
|
|
79
100
|
...installedWallets,
|
|
80
101
|
...otherWallets,
|
|
@@ -92,12 +113,13 @@ const walletListBuilder = ({ authMode, connectedWallets, multiWallet, numberOfWa
|
|
|
92
113
|
};
|
|
93
114
|
// We want to show the full list of wallets when we render the wallet connect list even
|
|
94
115
|
// if a filter was applied to the main page
|
|
95
|
-
const orderAndFilterList = (walletList, walletsFilter, isWalletConnectList) => {
|
|
116
|
+
const orderAndFilterList = (walletList, walletsFilter, isWalletConnectList, recommendedWalletKeys) => {
|
|
117
|
+
const sortedWalletList = sortedInputList(walletList, recommendedWalletKeys);
|
|
96
118
|
if (!isWalletConnectList && walletsFilter) {
|
|
97
|
-
return walletsFilter(
|
|
119
|
+
return walletsFilter(sortedWalletList);
|
|
98
120
|
}
|
|
99
121
|
else {
|
|
100
|
-
return
|
|
122
|
+
return sortedWalletList;
|
|
101
123
|
}
|
|
102
124
|
};
|
|
103
125
|
const applySearchFilterToWalletOptionList = (rawSearchFilter, walletOptionList) => {
|
|
@@ -100,12 +100,7 @@ const useEmbeddedReveal = () => {
|
|
|
100
100
|
ignoreIfIsEmbeddedWidget: false,
|
|
101
101
|
performMultiWalletChecks: false,
|
|
102
102
|
});
|
|
103
|
-
|
|
104
|
-
setView('embedded-reveal-view');
|
|
105
|
-
}
|
|
106
|
-
else {
|
|
107
|
-
setView('embedded-reveal-account-view');
|
|
108
|
-
}
|
|
103
|
+
setView('embedded-reveal-view', { exportPrivateKey: !recoveryPhrase });
|
|
109
104
|
return new Promise((resolve, reject) => {
|
|
110
105
|
dynamicEvents.dynamicEvents.once('embeddedWalletRevealCompleted', (wallet) => resolve(wallet));
|
|
111
106
|
dynamicEvents.dynamicEvents.once('embeddedWalletRevealFailed', (error) => reject(error));
|
|
@@ -96,12 +96,7 @@ const useEmbeddedReveal = () => {
|
|
|
96
96
|
ignoreIfIsEmbeddedWidget: false,
|
|
97
97
|
performMultiWalletChecks: false,
|
|
98
98
|
});
|
|
99
|
-
|
|
100
|
-
setView('embedded-reveal-view');
|
|
101
|
-
}
|
|
102
|
-
else {
|
|
103
|
-
setView('embedded-reveal-account-view');
|
|
104
|
-
}
|
|
99
|
+
setView('embedded-reveal-view', { exportPrivateKey: !recoveryPhrase });
|
|
105
100
|
return new Promise((resolve, reject) => {
|
|
106
101
|
dynamicEvents.once('embeddedWalletRevealCompleted', (wallet) => resolve(wallet));
|
|
107
102
|
dynamicEvents.once('embeddedWalletRevealFailed', (error) => reject(error));
|
|
@@ -12,10 +12,9 @@ require('@dynamic-labs/iconic');
|
|
|
12
12
|
require('react/jsx-runtime');
|
|
13
13
|
var ViewContext = require('../../../context/ViewContext/ViewContext.cjs');
|
|
14
14
|
require('@dynamic-labs/wallet-book');
|
|
15
|
-
var localStorage$1 = require('../../constants/localStorage.cjs');
|
|
16
15
|
require('../../constants/colors.cjs');
|
|
17
16
|
require('../../constants/values.cjs');
|
|
18
|
-
|
|
17
|
+
require('../../../shared/utils/classes/storage/localStorage.cjs');
|
|
19
18
|
require('viem');
|
|
20
19
|
require('@dynamic-labs/utils');
|
|
21
20
|
require('../../../shared/consts/index.cjs');
|
|
@@ -173,21 +172,16 @@ const usePasskeyRecovery = () => {
|
|
|
173
172
|
}
|
|
174
173
|
};
|
|
175
174
|
const isSessionRestored = () => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
176
|
-
var _b, _c;
|
|
177
|
-
if (!((
|
|
178
|
-
|
|
179
|
-
}
|
|
180
|
-
const sessionSettings = localStorage.LocalStorage.getFromLS(localStorage$1.EMBEDDED_WALLET_SESSION_SETTINGS);
|
|
181
|
-
if (!sessionSettings) {
|
|
182
|
-
return false;
|
|
183
|
-
}
|
|
184
|
-
const sessionExpiration = projectSettings.sdk.embeddedWallets.sessionKeyDuration.amount * 60;
|
|
185
|
-
const recoveryExpirationSeconds = (sessionSettings === null || sessionSettings === void 0 ? void 0 : sessionSettings.createdAt) + sessionExpiration * 1000;
|
|
186
|
-
const expirationTime = new Date(recoveryExpirationSeconds);
|
|
187
|
-
if (new Date() >= expirationTime) {
|
|
188
|
-
localStorage.LocalStorage.removeFromLS(localStorage$1.EMBEDDED_WALLET_SESSION_SETTINGS);
|
|
175
|
+
var _b, _c, _d, _e;
|
|
176
|
+
if (!((_b = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _b === void 0 ? void 0 : _b.sessionKeyDuration) ||
|
|
177
|
+
!passkeyRecovery.canRestoreEmbeddedWalletSession((_c = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _c === void 0 ? void 0 : _c.sessionKeyDuration)) {
|
|
189
178
|
return false;
|
|
190
179
|
}
|
|
180
|
+
const sessionExpiration = ((_d = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _d === void 0 ? void 0 : _d.sessionKeyDuration.amount) *
|
|
181
|
+
(((_e = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _e === void 0 ? void 0 : _e.sessionKeyDuration.unit) ===
|
|
182
|
+
'minutes'
|
|
183
|
+
? 60
|
|
184
|
+
: 3600);
|
|
191
185
|
try {
|
|
192
186
|
return yield passkeyRecovery.restoreEmbeddedWalletSession({
|
|
193
187
|
authToken,
|
|
@@ -8,10 +8,9 @@ import '@dynamic-labs/iconic';
|
|
|
8
8
|
import 'react/jsx-runtime';
|
|
9
9
|
import { useViewContext } from '../../../context/ViewContext/ViewContext.js';
|
|
10
10
|
import '@dynamic-labs/wallet-book';
|
|
11
|
-
import { EMBEDDED_WALLET_SESSION_SETTINGS } from '../../constants/localStorage.js';
|
|
12
11
|
import '../../constants/colors.js';
|
|
13
12
|
import '../../constants/values.js';
|
|
14
|
-
import
|
|
13
|
+
import '../../../shared/utils/classes/storage/localStorage.js';
|
|
15
14
|
import 'viem';
|
|
16
15
|
import '@dynamic-labs/utils';
|
|
17
16
|
import '../../../shared/consts/index.js';
|
|
@@ -36,7 +35,7 @@ import { useElementById } from '../useElementById/useElementById.js';
|
|
|
36
35
|
import { useEmbeddedWallet } from '../useEmbeddedWallet/useEmbeddedWallet.js';
|
|
37
36
|
import '../../../context/ThemeContext/ThemeContext.js';
|
|
38
37
|
import { iframeContainerId, iframeElementId } from '../../../views/Passkey/PasskeyRecovery/constants.js';
|
|
39
|
-
import { addNewPasskeyAuthenticator, restoreEmbeddedWalletSession } from '../../../views/Passkey/utils/passkeyRecovery/passkeyRecovery.js';
|
|
38
|
+
import { addNewPasskeyAuthenticator, canRestoreEmbeddedWalletSession, restoreEmbeddedWalletSession } from '../../../views/Passkey/utils/passkeyRecovery/passkeyRecovery.js';
|
|
40
39
|
import { useIsTurnkeyWallet } from '../useIsTurnkeyWallet/useIsTurnkeyWallet.js';
|
|
41
40
|
import { useInitEmbeddedWalletAuthMethod } from '../useInitEmbeddedWalletAuthMethod/useInitEmbeddedWalletAuthMethod.js';
|
|
42
41
|
import '@dynamic-labs/types';
|
|
@@ -169,21 +168,16 @@ const usePasskeyRecovery = () => {
|
|
|
169
168
|
}
|
|
170
169
|
};
|
|
171
170
|
const isSessionRestored = () => __awaiter(void 0, void 0, void 0, function* () {
|
|
172
|
-
var _b, _c;
|
|
173
|
-
if (!((
|
|
174
|
-
|
|
175
|
-
}
|
|
176
|
-
const sessionSettings = LocalStorage.getFromLS(EMBEDDED_WALLET_SESSION_SETTINGS);
|
|
177
|
-
if (!sessionSettings) {
|
|
178
|
-
return false;
|
|
179
|
-
}
|
|
180
|
-
const sessionExpiration = projectSettings.sdk.embeddedWallets.sessionKeyDuration.amount * 60;
|
|
181
|
-
const recoveryExpirationSeconds = (sessionSettings === null || sessionSettings === void 0 ? void 0 : sessionSettings.createdAt) + sessionExpiration * 1000;
|
|
182
|
-
const expirationTime = new Date(recoveryExpirationSeconds);
|
|
183
|
-
if (new Date() >= expirationTime) {
|
|
184
|
-
LocalStorage.removeFromLS(EMBEDDED_WALLET_SESSION_SETTINGS);
|
|
171
|
+
var _b, _c, _d, _e;
|
|
172
|
+
if (!((_b = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _b === void 0 ? void 0 : _b.sessionKeyDuration) ||
|
|
173
|
+
!canRestoreEmbeddedWalletSession((_c = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _c === void 0 ? void 0 : _c.sessionKeyDuration)) {
|
|
185
174
|
return false;
|
|
186
175
|
}
|
|
176
|
+
const sessionExpiration = ((_d = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _d === void 0 ? void 0 : _d.sessionKeyDuration.amount) *
|
|
177
|
+
(((_e = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _e === void 0 ? void 0 : _e.sessionKeyDuration.unit) ===
|
|
178
|
+
'minutes'
|
|
179
|
+
? 60
|
|
180
|
+
: 3600);
|
|
187
181
|
try {
|
|
188
182
|
return yield restoreEmbeddedWalletSession({
|
|
189
183
|
authToken,
|
|
@@ -13,7 +13,7 @@ require('../../../context/DynamicContext/DynamicContext.cjs');
|
|
|
13
13
|
var decodeJwt = require('../../../shared/utils/functions/decodeJwt/decodeJwt.cjs');
|
|
14
14
|
require('@dynamic-labs/iconic');
|
|
15
15
|
require('@dynamic-labs/wallet-connector-core');
|
|
16
|
-
|
|
16
|
+
require('../../../context/ViewContext/ViewContext.cjs');
|
|
17
17
|
var close = require('../../../shared/assets/close.cjs');
|
|
18
18
|
var eyeOffIcon = require('../../../shared/assets/eye-off-icon.cjs');
|
|
19
19
|
var exportEmbeddedHero = require('../../../shared/assets/export-embedded-hero.cjs');
|
|
@@ -40,6 +40,7 @@ require('../../../context/EmailVerificationContext/EmailVerificationContext.cjs'
|
|
|
40
40
|
require('react-dom');
|
|
41
41
|
require('../../../context/ThemeContext/ThemeContext.cjs');
|
|
42
42
|
var useMutation = require('../../../utils/hooks/useMutation/useMutation.cjs');
|
|
43
|
+
var usePromise = require('../../../utils/hooks/usePromise/usePromise.cjs');
|
|
43
44
|
require('@dynamic-labs/types');
|
|
44
45
|
require('yup');
|
|
45
46
|
require('../../../context/MockContext/MockContext.cjs');
|
|
@@ -54,7 +55,6 @@ require('../../../components/ShadowDOM/ShadowDOM.cjs');
|
|
|
54
55
|
require('../../../components/OverlayCard/OverlayCard.context.cjs');
|
|
55
56
|
require('../../../context/FooterAnimationContext/index.cjs');
|
|
56
57
|
var Typography = require('../../../components/Typography/Typography.cjs');
|
|
57
|
-
var Badge = require('../../../components/Badge/Badge.cjs');
|
|
58
58
|
require('../../../context/WalletGroupContext/WalletGroupContext.cjs');
|
|
59
59
|
require('../../../widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.cjs');
|
|
60
60
|
require('react-focus-lock');
|
|
@@ -73,6 +73,7 @@ require('../../../components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBa
|
|
|
73
73
|
require('../../../context/PasskeyContext/PasskeyContext.cjs');
|
|
74
74
|
require('@dynamic-labs/viem-utils');
|
|
75
75
|
require('../../../widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.cjs');
|
|
76
|
+
var Badge = require('../../../components/Badge/Badge.cjs');
|
|
76
77
|
var Checkbox = require('../../../components/Checkbox/Checkbox.cjs');
|
|
77
78
|
require('../../../components/InlineWidget/InlineWidget.cjs');
|
|
78
79
|
require('../../../components/IsBrowser/IsBrowser.cjs');
|
|
@@ -86,39 +87,40 @@ require('../../../widgets/DynamicBridgeWidget/views/WalletsView/components/Secon
|
|
|
86
87
|
var turnkeyExport = require('../utils/turnkeyExport/turnkeyExport.cjs');
|
|
87
88
|
var constants = require('../constants.cjs');
|
|
88
89
|
|
|
89
|
-
const EmbeddedRevealView = () => {
|
|
90
|
-
var _a, _b
|
|
90
|
+
const EmbeddedRevealView = ({ exportPrivateKey, }) => {
|
|
91
|
+
var _a, _b;
|
|
91
92
|
const { authToken, primaryWallet, user, setShowAuthFlow, environmentId } = useInternalDynamicContext.useInternalDynamicContext();
|
|
92
|
-
const { view } = ViewContext.useViewContext();
|
|
93
93
|
const [acknowledgement1, setAcknowledgement1] = React.useState(false);
|
|
94
94
|
const iframeContainerRef = React.useRef(null);
|
|
95
95
|
const decodedJwt = decodeJwt.decodeJwt(authToken);
|
|
96
96
|
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;
|
|
97
97
|
const isTurnkeyHDWallet = walletProperties === null || walletProperties === void 0 ? void 0 : walletProperties.turnkeyHDWalletId;
|
|
98
|
-
const
|
|
98
|
+
const wallet = isAccountAbstractionWallet.isAccountAbstractionWallet(primaryWallet)
|
|
99
|
+
? createOwnerWallet.createOwnerWallet(primaryWallet, (user === null || user === void 0 ? void 0 : user.verifiedCredentials) || [])
|
|
100
|
+
: primaryWallet;
|
|
101
|
+
// eslint-disable-next-line arrow-body-style
|
|
99
102
|
React.useEffect(() => {
|
|
103
|
+
return () => {
|
|
104
|
+
turnkeyExport.cleanupExport({
|
|
105
|
+
wallet,
|
|
106
|
+
});
|
|
107
|
+
};
|
|
108
|
+
// only run once on unmount
|
|
109
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
110
|
+
}, []);
|
|
111
|
+
const { isLoading: exportLoading } = usePromise.usePromise(() => {
|
|
100
112
|
var _a;
|
|
101
113
|
const iframeContainerElement = iframeContainerRef.current;
|
|
102
114
|
if (!iframeContainerElement ||
|
|
103
115
|
((_a = iframeContainerElement === null || iframeContainerElement === void 0 ? void 0 : iframeContainerElement.children) === null || _a === void 0 ? void 0 : _a.length) > 0) {
|
|
104
116
|
return;
|
|
105
117
|
}
|
|
106
|
-
|
|
107
|
-
? createOwnerWallet.createOwnerWallet(primaryWallet, (user === null || user === void 0 ? void 0 : user.verifiedCredentials) || [])
|
|
108
|
-
: primaryWallet;
|
|
109
|
-
turnkeyExport.initExport({
|
|
118
|
+
return turnkeyExport.initExport({
|
|
110
119
|
iframeContainer: iframeContainerElement,
|
|
111
120
|
iframeElementId: constants.iframeElementId,
|
|
112
121
|
wallet,
|
|
113
122
|
});
|
|
114
|
-
|
|
115
|
-
turnkeyExport.cleanupExport({
|
|
116
|
-
wallet,
|
|
117
|
-
});
|
|
118
|
-
};
|
|
119
|
-
// only run once on mount
|
|
120
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
121
|
-
}, []);
|
|
123
|
+
});
|
|
122
124
|
const { mutate: handleExportWallet, isLoading, error, data, } = useMutation.useMutation(() => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
123
125
|
const wallet = isAccountAbstractionWallet.isAccountAbstractionWallet(primaryWallet)
|
|
124
126
|
? createOwnerWallet.createOwnerWallet(primaryWallet, (user === null || user === void 0 ? void 0 : user.verifiedCredentials) || [])
|
|
@@ -171,7 +173,7 @@ const EmbeddedRevealView = () => {
|
|
|
171
173
|
credential_type: credentialTitle === null || credentialTitle === void 0 ? void 0 : credentialTitle.toLowerCase(),
|
|
172
174
|
}) })] })] })] }), jsxRuntime.jsxs("div", { className: 'embedded-reveal-view__body__confirm_card', children: [jsxRuntime.jsxs("button", { className: 'embedded-reveal-view__body__card__acknowledgement', onClick: () => setAcknowledgement1(!acknowledgement1), children: [jsxRuntime.jsx("div", { children: jsxRuntime.jsx(Checkbox.Checkbox, { checked: acknowledgement1, onChange: () => setAcknowledgement1(!acknowledgement1), className: 'embedded-reveal-view__body__card__statement__checkbox', id: 'embedded-reveal-checkbox-1' }) }), jsxRuntime.jsx("div", { children: jsxRuntime.jsx(Typography.Typography, { variant: 'body_normal', color: 'primary', style: { letterSpacing: '-0.15px' }, copykey: 'dyn_embedded_reveal.checkbox_label', children: t('dyn_embedded_reveal.checkbox_label') }) })] }), jsxRuntime.jsx(Button.Button, { buttonPadding: 'large', buttonVariant: 'brand-primary', typographyProps: {
|
|
173
175
|
color: 'inherit',
|
|
174
|
-
}, onClick: () => handleExportWallet(), disabled: !acknowledgement1, loading: isLoading, dataTestId: 'embedded-reveal-button', copykey: 'dyn_embedded_reveal.reveal_button_label', children: t('dyn_embedded_reveal.reveal_button_label') })] })] }))] }) })] }));
|
|
176
|
+
}, onClick: () => handleExportWallet(), disabled: !acknowledgement1 || exportLoading, loading: isLoading, dataTestId: 'embedded-reveal-button', copykey: 'dyn_embedded_reveal.reveal_button_label', children: t('dyn_embedded_reveal.reveal_button_label') })] })] }))] }) })] }));
|
|
175
177
|
};
|
|
176
178
|
|
|
177
179
|
exports.EmbeddedRevealView = EmbeddedRevealView;
|
|
@@ -9,7 +9,7 @@ import '../../../context/DynamicContext/DynamicContext.js';
|
|
|
9
9
|
import { decodeJwt } from '../../../shared/utils/functions/decodeJwt/decodeJwt.js';
|
|
10
10
|
import '@dynamic-labs/iconic';
|
|
11
11
|
import '@dynamic-labs/wallet-connector-core';
|
|
12
|
-
import
|
|
12
|
+
import '../../../context/ViewContext/ViewContext.js';
|
|
13
13
|
import { ReactComponent as SvgClose } from '../../../shared/assets/close.js';
|
|
14
14
|
import { ReactComponent as SvgEyeOffIcon } from '../../../shared/assets/eye-off-icon.js';
|
|
15
15
|
import { ReactComponent as SvgExportEmbeddedHero } from '../../../shared/assets/export-embedded-hero.js';
|
|
@@ -36,6 +36,7 @@ import '../../../context/EmailVerificationContext/EmailVerificationContext.js';
|
|
|
36
36
|
import 'react-dom';
|
|
37
37
|
import '../../../context/ThemeContext/ThemeContext.js';
|
|
38
38
|
import { useMutation } from '../../../utils/hooks/useMutation/useMutation.js';
|
|
39
|
+
import { usePromise } from '../../../utils/hooks/usePromise/usePromise.js';
|
|
39
40
|
import '@dynamic-labs/types';
|
|
40
41
|
import 'yup';
|
|
41
42
|
import '../../../context/MockContext/MockContext.js';
|
|
@@ -50,7 +51,6 @@ import '../../../components/ShadowDOM/ShadowDOM.js';
|
|
|
50
51
|
import '../../../components/OverlayCard/OverlayCard.context.js';
|
|
51
52
|
import '../../../context/FooterAnimationContext/index.js';
|
|
52
53
|
import { Typography } from '../../../components/Typography/Typography.js';
|
|
53
|
-
import { Badge } from '../../../components/Badge/Badge.js';
|
|
54
54
|
import '../../../context/WalletGroupContext/WalletGroupContext.js';
|
|
55
55
|
import '../../../widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.js';
|
|
56
56
|
import 'react-focus-lock';
|
|
@@ -69,6 +69,7 @@ import '../../../components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBan
|
|
|
69
69
|
import '../../../context/PasskeyContext/PasskeyContext.js';
|
|
70
70
|
import '@dynamic-labs/viem-utils';
|
|
71
71
|
import '../../../widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.js';
|
|
72
|
+
import { Badge } from '../../../components/Badge/Badge.js';
|
|
72
73
|
import { Checkbox } from '../../../components/Checkbox/Checkbox.js';
|
|
73
74
|
import '../../../components/InlineWidget/InlineWidget.js';
|
|
74
75
|
import '../../../components/IsBrowser/IsBrowser.js';
|
|
@@ -79,42 +80,43 @@ import '../../WalletList/WalletList.js';
|
|
|
79
80
|
import '@hcaptcha/react-hcaptcha';
|
|
80
81
|
import '../../../context/SocialRedirectContext/SocialRedirectContext.js';
|
|
81
82
|
import '../../../widgets/DynamicBridgeWidget/views/WalletsView/components/SecondaryWallets/SecondaryWallets.js';
|
|
82
|
-
import {
|
|
83
|
+
import { cleanupExport, exportCredential, initExport } from '../utils/turnkeyExport/turnkeyExport.js';
|
|
83
84
|
import { iframeContainerId, iframeElementId } from '../constants.js';
|
|
84
85
|
|
|
85
|
-
const EmbeddedRevealView = () => {
|
|
86
|
-
var _a, _b
|
|
86
|
+
const EmbeddedRevealView = ({ exportPrivateKey, }) => {
|
|
87
|
+
var _a, _b;
|
|
87
88
|
const { authToken, primaryWallet, user, setShowAuthFlow, environmentId } = useInternalDynamicContext();
|
|
88
|
-
const { view } = useViewContext();
|
|
89
89
|
const [acknowledgement1, setAcknowledgement1] = useState(false);
|
|
90
90
|
const iframeContainerRef = useRef(null);
|
|
91
91
|
const decodedJwt = decodeJwt(authToken);
|
|
92
92
|
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;
|
|
93
93
|
const isTurnkeyHDWallet = walletProperties === null || walletProperties === void 0 ? void 0 : walletProperties.turnkeyHDWalletId;
|
|
94
|
-
const
|
|
94
|
+
const wallet = isAccountAbstractionWallet(primaryWallet)
|
|
95
|
+
? createOwnerWallet(primaryWallet, (user === null || user === void 0 ? void 0 : user.verifiedCredentials) || [])
|
|
96
|
+
: primaryWallet;
|
|
97
|
+
// eslint-disable-next-line arrow-body-style
|
|
95
98
|
useEffect(() => {
|
|
99
|
+
return () => {
|
|
100
|
+
cleanupExport({
|
|
101
|
+
wallet,
|
|
102
|
+
});
|
|
103
|
+
};
|
|
104
|
+
// only run once on unmount
|
|
105
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
106
|
+
}, []);
|
|
107
|
+
const { isLoading: exportLoading } = usePromise(() => {
|
|
96
108
|
var _a;
|
|
97
109
|
const iframeContainerElement = iframeContainerRef.current;
|
|
98
110
|
if (!iframeContainerElement ||
|
|
99
111
|
((_a = iframeContainerElement === null || iframeContainerElement === void 0 ? void 0 : iframeContainerElement.children) === null || _a === void 0 ? void 0 : _a.length) > 0) {
|
|
100
112
|
return;
|
|
101
113
|
}
|
|
102
|
-
|
|
103
|
-
? createOwnerWallet(primaryWallet, (user === null || user === void 0 ? void 0 : user.verifiedCredentials) || [])
|
|
104
|
-
: primaryWallet;
|
|
105
|
-
initExport({
|
|
114
|
+
return initExport({
|
|
106
115
|
iframeContainer: iframeContainerElement,
|
|
107
116
|
iframeElementId,
|
|
108
117
|
wallet,
|
|
109
118
|
});
|
|
110
|
-
|
|
111
|
-
cleanupExport({
|
|
112
|
-
wallet,
|
|
113
|
-
});
|
|
114
|
-
};
|
|
115
|
-
// only run once on mount
|
|
116
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
117
|
-
}, []);
|
|
119
|
+
});
|
|
118
120
|
const { mutate: handleExportWallet, isLoading, error, data, } = useMutation(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
119
121
|
const wallet = isAccountAbstractionWallet(primaryWallet)
|
|
120
122
|
? createOwnerWallet(primaryWallet, (user === null || user === void 0 ? void 0 : user.verifiedCredentials) || [])
|
|
@@ -167,7 +169,7 @@ const EmbeddedRevealView = () => {
|
|
|
167
169
|
credential_type: credentialTitle === null || credentialTitle === void 0 ? void 0 : credentialTitle.toLowerCase(),
|
|
168
170
|
}) })] })] })] }), jsxs("div", { className: 'embedded-reveal-view__body__confirm_card', children: [jsxs("button", { className: 'embedded-reveal-view__body__card__acknowledgement', onClick: () => setAcknowledgement1(!acknowledgement1), children: [jsx("div", { children: jsx(Checkbox, { checked: acknowledgement1, onChange: () => setAcknowledgement1(!acknowledgement1), className: 'embedded-reveal-view__body__card__statement__checkbox', id: 'embedded-reveal-checkbox-1' }) }), jsx("div", { children: jsx(Typography, { variant: 'body_normal', color: 'primary', style: { letterSpacing: '-0.15px' }, copykey: 'dyn_embedded_reveal.checkbox_label', children: t('dyn_embedded_reveal.checkbox_label') }) })] }), jsx(Button, { buttonPadding: 'large', buttonVariant: 'brand-primary', typographyProps: {
|
|
169
171
|
color: 'inherit',
|
|
170
|
-
}, onClick: () => handleExportWallet(), disabled: !acknowledgement1, loading: isLoading, dataTestId: 'embedded-reveal-button', copykey: 'dyn_embedded_reveal.reveal_button_label', children: t('dyn_embedded_reveal.reveal_button_label') })] })] }))] }) })] }));
|
|
172
|
+
}, onClick: () => handleExportWallet(), disabled: !acknowledgement1 || exportLoading, loading: isLoading, dataTestId: 'embedded-reveal-button', copykey: 'dyn_embedded_reveal.reveal_button_label', children: t('dyn_embedded_reveal.reveal_button_label') })] })] }))] }) })] }));
|
|
171
173
|
};
|
|
172
174
|
|
|
173
175
|
export { EmbeddedRevealView };
|
package/src/lib/views/LoginView/sections/WalletSignInSection/ListItemButton/ListItemButton.cjs
CHANGED
|
@@ -45,7 +45,6 @@ require('../../../../../components/Transition/OpacityTransition/OpacityTransitio
|
|
|
45
45
|
require('../../../../../components/ShadowDOM/ShadowDOM.cjs');
|
|
46
46
|
require('../../../../../components/OverlayCard/OverlayCard.context.cjs');
|
|
47
47
|
require('../../../../../context/FooterAnimationContext/index.cjs');
|
|
48
|
-
var Badge = require('../../../../../components/Badge/Badge.cjs');
|
|
49
48
|
require('../../../../../context/WalletGroupContext/WalletGroupContext.cjs');
|
|
50
49
|
require('../../../../../widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.cjs');
|
|
51
50
|
require('react-focus-lock');
|
|
@@ -62,6 +61,7 @@ require('../../../../../components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuc
|
|
|
62
61
|
require('../../../../../context/PasskeyContext/PasskeyContext.cjs');
|
|
63
62
|
require('@dynamic-labs/viem-utils');
|
|
64
63
|
require('../../../../../widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.cjs');
|
|
64
|
+
var Badge = require('../../../../../components/Badge/Badge.cjs');
|
|
65
65
|
var ListTile = require('../../../../../components/ListTile/ListTile.cjs');
|
|
66
66
|
require('../../../../../components/InlineWidget/InlineWidget.cjs');
|
|
67
67
|
require('../../../../../components/IsBrowser/IsBrowser.cjs');
|
package/src/lib/views/LoginView/sections/WalletSignInSection/ListItemButton/ListItemButton.js
CHANGED
|
@@ -41,7 +41,6 @@ import '../../../../../components/Transition/OpacityTransition/OpacityTransition
|
|
|
41
41
|
import '../../../../../components/ShadowDOM/ShadowDOM.js';
|
|
42
42
|
import '../../../../../components/OverlayCard/OverlayCard.context.js';
|
|
43
43
|
import '../../../../../context/FooterAnimationContext/index.js';
|
|
44
|
-
import { Badge } from '../../../../../components/Badge/Badge.js';
|
|
45
44
|
import '../../../../../context/WalletGroupContext/WalletGroupContext.js';
|
|
46
45
|
import '../../../../../widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.js';
|
|
47
46
|
import 'react-focus-lock';
|
|
@@ -58,6 +57,7 @@ import '../../../../../components/PasskeyCreatedSuccessBanner/PasskeyCreatedSucc
|
|
|
58
57
|
import '../../../../../context/PasskeyContext/PasskeyContext.js';
|
|
59
58
|
import '@dynamic-labs/viem-utils';
|
|
60
59
|
import '../../../../../widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.js';
|
|
60
|
+
import { Badge } from '../../../../../components/Badge/Badge.js';
|
|
61
61
|
import { ListTile } from '../../../../../components/ListTile/ListTile.js';
|
|
62
62
|
import '../../../../../components/InlineWidget/InlineWidget.js';
|
|
63
63
|
import '../../../../../components/IsBrowser/IsBrowser.js';
|
|
@@ -76,7 +76,7 @@ var useInternalDynamicContext = require('../../../../../context/DynamicContext/u
|
|
|
76
76
|
|
|
77
77
|
const WalletSimpleSignIn = ({ previewWalletsNumber, disabled = false, onshowAllWallets, }) => {
|
|
78
78
|
const { t } = reactI18next.useTranslation();
|
|
79
|
-
const { walletConnectorOptions, projectSettings, walletsFilter, signWithEmailWalletName, authMode, multiWallet, connectedWallets, } = useInternalDynamicContext.useInternalDynamicContext();
|
|
79
|
+
const { walletConnectorOptions, projectSettings, walletsFilter, signWithEmailWalletName, authMode, multiWallet, connectedWallets, recommendedWallets, } = useInternalDynamicContext.useInternalDynamicContext();
|
|
80
80
|
const { walletBook: walletBook$1 } = walletBook.useWalletBookContext();
|
|
81
81
|
const { numberOfWallets, walletsList } = walletListBuilder.walletListBuilder({
|
|
82
82
|
authMode,
|
|
@@ -88,6 +88,7 @@ const WalletSimpleSignIn = ({ previewWalletsNumber, disabled = false, onshowAllW
|
|
|
88
88
|
loginWithEmail: true,
|
|
89
89
|
multiWallet,
|
|
90
90
|
numberOfWalletsToShow: previewWalletsNumber,
|
|
91
|
+
recommendedWallets,
|
|
91
92
|
searchFilter: undefined,
|
|
92
93
|
signWithEmailWalletName,
|
|
93
94
|
walletBook: walletBook$1,
|
|
@@ -72,7 +72,7 @@ import { useInternalDynamicContext } from '../../../../../context/DynamicContext
|
|
|
72
72
|
|
|
73
73
|
const WalletSimpleSignIn = ({ previewWalletsNumber, disabled = false, onshowAllWallets, }) => {
|
|
74
74
|
const { t } = useTranslation();
|
|
75
|
-
const { walletConnectorOptions, projectSettings, walletsFilter, signWithEmailWalletName, authMode, multiWallet, connectedWallets, } = useInternalDynamicContext();
|
|
75
|
+
const { walletConnectorOptions, projectSettings, walletsFilter, signWithEmailWalletName, authMode, multiWallet, connectedWallets, recommendedWallets, } = useInternalDynamicContext();
|
|
76
76
|
const { walletBook } = useWalletBookContext();
|
|
77
77
|
const { numberOfWallets, walletsList } = walletListBuilder({
|
|
78
78
|
authMode,
|
|
@@ -84,6 +84,7 @@ const WalletSimpleSignIn = ({ previewWalletsNumber, disabled = false, onshowAllW
|
|
|
84
84
|
loginWithEmail: true,
|
|
85
85
|
multiWallet,
|
|
86
86
|
numberOfWalletsToShow: previewWalletsNumber,
|
|
87
|
+
recommendedWallets,
|
|
87
88
|
searchFilter: undefined,
|
|
88
89
|
signWithEmailWalletName,
|
|
89
90
|
walletBook,
|