@dynamic-labs/sdk-react-core 1.0.0-alpha.6 → 1.0.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 +32 -0
- package/package.cjs +2 -2
- package/package.js +2 -2
- package/package.json +10 -10
- package/src/index.cjs +4 -2
- package/src/index.d.ts +1 -1
- package/src/index.js +2 -1
- package/src/lib/Main.cjs +18 -21
- package/src/lib/Main.js +18 -21
- package/src/lib/components/NeedHelpSection/NeedHelpSection.cjs +84 -5
- package/src/lib/components/NeedHelpSection/NeedHelpSection.js +85 -6
- package/src/lib/components/NetworkPicker/NetworkPicker.cjs +8 -6
- package/src/lib/components/NetworkPicker/NetworkPicker.d.ts +2 -1
- package/src/lib/components/NetworkPicker/NetworkPicker.js +8 -6
- package/src/lib/components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBanner.cjs +68 -0
- package/src/lib/components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBanner.d.ts +6 -0
- package/src/lib/components/PasskeyCreatedSuccessBanner/PasskeyCreatedSuccessBanner.js +64 -0
- package/src/lib/components/PasskeyCreatedSuccessBanner/index.d.ts +1 -0
- package/src/lib/components/SecureTurnkeyWalletCard/SecureTurnkeyWalletCard.cjs +24 -0
- package/src/lib/components/SecureTurnkeyWalletCard/SecureTurnkeyWalletCard.d.ts +6 -0
- package/src/lib/components/SecureTurnkeyWalletCard/SecureTurnkeyWalletCard.js +20 -0
- package/src/lib/components/SecureTurnkeyWalletCard/index.d.ts +1 -0
- package/src/lib/components/SendBalanceForm/SendBalanceForm.cjs +4 -1
- package/src/lib/components/SendBalanceForm/SendBalanceForm.js +4 -1
- package/src/lib/components/SyncPasskeyFlow/SyncPasskeyFlow.cjs +5 -2
- package/src/lib/components/SyncPasskeyFlow/SyncPasskeyFlow.js +5 -2
- package/src/lib/components/TransactionConfirmationPageLayout/TransactionConfirmationPageLayout.cjs +6 -2
- package/src/lib/components/TransactionConfirmationPageLayout/TransactionConfirmationPageLayout.js +6 -2
- package/src/lib/components/index.d.ts +2 -0
- package/src/lib/context/DynamicContext/DynamicContext.cjs +8 -5
- package/src/lib/context/DynamicContext/DynamicContext.js +8 -5
- package/src/lib/context/DynamicContext/hooks/index.d.ts +1 -0
- package/src/lib/context/DynamicContext/hooks/useShowPasskeyCreateSuccess/index.d.ts +1 -0
- package/src/lib/context/DynamicContext/hooks/useShowPasskeyCreateSuccess/useShowPasskeyCreateSuccess.cjs +23 -0
- package/src/lib/context/DynamicContext/hooks/useShowPasskeyCreateSuccess/useShowPasskeyCreateSuccess.d.ts +4 -0
- package/src/lib/context/DynamicContext/hooks/useShowPasskeyCreateSuccess/useShowPasskeyCreateSuccess.js +19 -0
- package/src/lib/context/DynamicContext/types/index.d.ts +2 -1
- package/src/lib/data/api.cjs +14 -10
- package/src/lib/data/api.d.ts +2 -2
- package/src/lib/data/api.js +14 -10
- package/src/lib/layout/DynamicAuthLayout/Header/header.cjs +9 -11
- package/src/lib/layout/DynamicAuthLayout/Header/header.js +10 -12
- package/src/lib/locale/en/translation.cjs +77 -3
- package/src/lib/locale/en/translation.d.ts +76 -2
- package/src/lib/locale/en/translation.js +77 -3
- package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.cjs +6 -2
- package/src/lib/modals/SignMessageConfirmationModal/SignMessageConfirmationModal.js +6 -2
- package/src/lib/modals/SignMessageConfirmationModal/getProperErrorMessage.cjs +1 -1
- package/src/lib/modals/SignMessageConfirmationModal/getProperErrorMessage.js +1 -1
- package/src/lib/styles/index.shadow.cjs +1 -1
- package/src/lib/styles/index.shadow.js +1 -1
- package/src/lib/utils/functions/findTurnkeyWallet/findTurnkeyWallet.cjs +1 -1
- package/src/lib/utils/functions/findTurnkeyWallet/findTurnkeyWallet.js +1 -1
- package/src/lib/utils/hooks/index.d.ts +2 -0
- package/src/lib/utils/hooks/multiWallet/useSyncPrimaryWallet/useSyncPrimaryWallet.cjs +1 -6
- package/src/lib/utils/hooks/multiWallet/useSyncPrimaryWallet/useSyncPrimaryWallet.js +1 -6
- package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.cjs +3 -0
- package/src/lib/utils/hooks/useConnectWallet/useConnectWallet.js +3 -0
- package/src/lib/utils/hooks/useConnectedWalletsNetworkValidation/useConnectedWalletsNetworkValidation.cjs +7 -8
- package/src/lib/utils/hooks/useConnectedWalletsNetworkValidation/useConnectedWalletsNetworkValidation.js +7 -8
- package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/index.d.ts +1 -0
- package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.cjs +83 -0
- package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.d.ts +15 -0
- package/src/lib/utils/hooks/useCreateDynamicEmbeddedWalletMutation/useCreateDynamicEmbeddedWalletMutation.js +79 -0
- package/src/lib/utils/hooks/useDynamicLayoutData/useDynamicLayoutData.cjs +11 -3
- package/src/lib/utils/hooks/useDynamicLayoutData/useDynamicLayoutData.js +11 -3
- package/src/lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.cjs +57 -33
- package/src/lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.d.ts +1 -1
- package/src/lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.js +57 -33
- package/src/lib/utils/hooks/useEventListener/useEventListener.cjs +2 -1
- package/src/lib/utils/hooks/useEventListener/useEventListener.js +2 -1
- package/src/lib/utils/hooks/useIsTurnkeyWallet/index.d.ts +1 -0
- package/src/lib/utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.cjs +37 -0
- package/src/lib/utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.d.ts +6 -0
- package/src/lib/utils/hooks/useIsTurnkeyWallet/useIsTurnkeyWallet.js +33 -0
- package/src/lib/utils/hooks/useWalletConnectors/useWalletConnectors.cjs +9 -5
- package/src/lib/utils/hooks/useWalletConnectors/useWalletConnectors.d.ts +0 -1
- package/src/lib/utils/hooks/useWalletConnectors/useWalletConnectors.js +10 -6
- package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.cjs +20 -21
- package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.d.ts +1 -2
- package/src/lib/utils/hooks/useWalletEventListeners/useWalletEventListeners.js +20 -21
- package/src/lib/utils/hooks/useWalletsConnectionState/useWalletsConnectionState.cjs +32 -9
- package/src/lib/utils/hooks/useWalletsConnectionState/useWalletsConnectionState.d.ts +0 -1
- package/src/lib/utils/hooks/useWalletsConnectionState/useWalletsConnectionState.js +33 -10
- package/src/lib/views/AccountExistsView/AccountExistsView.cjs +1 -1
- package/src/lib/views/AccountExistsView/AccountExistsView.js +1 -1
- package/src/lib/views/CollectUserDataView/CollectUserDataView.cjs +1 -1
- package/src/lib/views/CollectUserDataView/CollectUserDataView.js +1 -1
- package/src/lib/views/EmailWalletOTPVerificationView/EmailWalletOTPVerificationView.cjs +1 -1
- package/src/lib/views/EmailWalletOTPVerificationView/EmailWalletOTPVerificationView.js +1 -1
- package/src/lib/views/LoginView/sections/SocialSignInSection/MagicSocialSignIn/MagicSocialSignIn.cjs +1 -1
- package/src/lib/views/LoginView/sections/SocialSignInSection/MagicSocialSignIn/MagicSocialSignIn.js +1 -1
- package/src/lib/views/LoginView/sections/SocialSignInSection/SocialSignInSection.cjs +2 -5
- package/src/lib/views/LoginView/sections/SocialSignInSection/SocialSignInSection.js +2 -5
- package/src/lib/views/LoginView/useLoginView.cjs +101 -84
- package/src/lib/views/LoginView/useLoginView.js +102 -85
- package/src/lib/views/NetworkNotSupported/NetworkNotSupported.cjs +6 -3
- package/src/lib/views/NetworkNotSupported/NetworkNotSupported.js +6 -3
- package/src/lib/views/Passkey/PasskeyIntroView/PasskeyIntroView.cjs +20 -50
- package/src/lib/views/Passkey/PasskeyIntroView/PasskeyIntroView.d.ts +1 -6
- package/src/lib/views/Passkey/PasskeyIntroView/PasskeyIntroView.js +20 -50
- package/src/lib/views/Passkey/PasskeyRecovery/BundleValidation/PasskeyBundleRecovery.cjs +7 -2
- package/src/lib/views/Passkey/PasskeyRecovery/BundleValidation/PasskeyBundleRecovery.js +7 -2
- package/src/lib/views/Passkey/PasskeyRecovery/CompleteRecovery/PasskeyCompleteRecovery.cjs +11 -7
- package/src/lib/views/Passkey/PasskeyRecovery/CompleteRecovery/PasskeyCompleteRecovery.js +11 -7
- package/src/lib/views/Passkey/PasskeyRecovery/InitRecovery/PasskeyInitRecovery.cjs +8 -10
- package/src/lib/views/Passkey/PasskeyRecovery/InitRecovery/PasskeyInitRecovery.js +8 -10
- package/src/lib/views/Passkey/utils/createPregeneratedWallet/createPregeneratedWallet.cjs +56 -0
- package/src/lib/views/Passkey/utils/createPregeneratedWallet/createPregeneratedWallet.d.ts +13 -0
- package/src/lib/views/Passkey/utils/createPregeneratedWallet/createPregeneratedWallet.js +52 -0
- package/src/lib/views/Passkey/utils/createPregeneratedWallet/index.d.ts +1 -0
- package/src/lib/views/Passkey/utils/index.d.ts +1 -0
- package/src/lib/views/Passkey/utils/passkeyRecovery/passkeyRecovery.cjs +1 -1
- package/src/lib/views/Passkey/utils/passkeyRecovery/passkeyRecovery.js +1 -1
- package/src/lib/views/QrCodeView/QrCodeContainer/QrCodeContainer.cjs +1 -1
- package/src/lib/views/QrCodeView/QrCodeContainer/QrCodeContainer.js +1 -1
- package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.cjs +12 -2
- package/src/lib/views/TransactionConfirmationView/TransactionConfirmationView.js +12 -2
- package/src/lib/views/TransactionConfirmationView/helpers/transactionErrorMessage.cjs +3 -0
- package/src/lib/views/TransactionConfirmationView/helpers/transactionErrorMessage.js +4 -1
- package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletInformation.cjs +6 -3
- package/src/lib/widgets/DynamicWidget/components/ActiveWalletInformation/ActiveWalletInformation.js +6 -3
- package/src/lib/widgets/DynamicWidget/components/DynamicNav/DynamicNav.cjs +2 -2
- package/src/lib/widgets/DynamicWidget/components/DynamicNav/DynamicNav.js +2 -2
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.cjs +2 -1
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.js +2 -1
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetWalletHeader/DynamicWidgetWalletHeader.cjs +8 -5
- package/src/lib/widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetWalletHeader/DynamicWidgetWalletHeader.js +8 -5
- package/src/lib/widgets/DynamicWidget/components/EmailOTPConnectorPendingSignModalContent/EmailOTPConnectorPendingSignModalContent.cjs +2 -3
- package/src/lib/widgets/DynamicWidget/components/EmailOTPConnectorPendingSignModalContent/EmailOTPConnectorPendingSignModalContent.js +2 -3
- package/src/lib/widgets/DynamicWidget/components/EmptyWallets/EmptyWallets.cjs +11 -2
- package/src/lib/widgets/DynamicWidget/components/EmptyWallets/EmptyWallets.js +11 -2
- package/src/lib/widgets/DynamicWidget/components/Wallet/Wallet.cjs +1 -2
- package/src/lib/widgets/DynamicWidget/components/Wallet/Wallet.js +1 -2
- package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchOrUseActiveAccountView/SwitchOrUseActiveAccountView.cjs +1 -3
- package/src/lib/widgets/DynamicWidget/prompts/PendingAccountSwitchModal/SwitchOrUseActiveAccountView/SwitchOrUseActiveAccountView.js +1 -3
- package/src/lib/widgets/DynamicWidget/prompts/QrCodeModalView/QrCodeModalView.cjs +1 -1
- package/src/lib/widgets/DynamicWidget/prompts/QrCodeModalView/QrCodeModalView.js +1 -1
- package/src/lib/widgets/DynamicWidget/views/ManagePasskeysWidgetView/ManagePasskeysWidgetView.cjs +2 -1
- package/src/lib/widgets/DynamicWidget/views/ManagePasskeysWidgetView/ManagePasskeysWidgetView.js +2 -1
- package/src/lib/widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.cjs +16 -6
- package/src/lib/widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.js +16 -6
- package/src/lib/utils/functions/getEnabledProviders/index.cjs +0 -7
- package/src/lib/utils/functions/getEnabledProviders/index.js +0 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,36 @@
|
|
|
1
1
|
|
|
2
|
+
## [1.0.0-alpha.8](https://github.com/dynamic-labs/DynamicAuth/compare/v1.0.0-alpha.7...v1.0.0-alpha.8) (2023-12-05)
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
### ⚠ BREAKING CHANGES
|
|
6
|
+
|
|
7
|
+
* rename EthereumSmartWalletConnectors to ZeroDevSmartWalletConnectors (#4067)
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
### Features
|
|
11
|
+
|
|
12
|
+
* add support for pregenerated wallets + securing them ([#3968](https://github.com/dynamic-labs/DynamicAuth/issues/3968)) ([8212b76](https://github.com/dynamic-labs/DynamicAuth/commit/8212b760ba199bd989e0ba2ad3caf97590db4861))
|
|
13
|
+
|
|
14
|
+
## [1.0.0-alpha.7](https://github.com/dynamic-labs/DynamicAuth/compare/v1.0.0-alpha.6...v1.0.0-alpha.7) (2023-12-05)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### Features
|
|
18
|
+
|
|
19
|
+
* add support for Turnkey HD wallets and backwards compatiblity for private key wallets ([#4011](https://github.com/dynamic-labs/DynamicAuth/issues/4011)) ([75c5258](https://github.com/dynamic-labs/DynamicAuth/commit/75c5258da494d5d4dfa8b96655303dd9645f2269))
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
### Bug Fixes
|
|
23
|
+
|
|
24
|
+
* add close button to wallets list ([#4036](https://github.com/dynamic-labs/DynamicAuth/issues/4036)) ([a2b988b](https://github.com/dynamic-labs/DynamicAuth/commit/a2b988bdfc662af6f85d37a79ed6666c483aa447))
|
|
25
|
+
* add support for embedded wallets in connect-only ([#4041](https://github.com/dynamic-labs/DynamicAuth/issues/4041)) ([ceea635](https://github.com/dynamic-labs/DynamicAuth/commit/ceea635b69e2a0c2636b47fbd30639d69dba7a1c))
|
|
26
|
+
* embedded wallet invalid stored chain breaking network picker ([#4050](https://github.com/dynamic-labs/DynamicAuth/issues/4050)) ([2e2384b](https://github.com/dynamic-labs/DynamicAuth/commit/2e2384ba37407d9164cce47e23f5d5f469f7e062))
|
|
27
|
+
* handle insufficient funds from AA provider ([#4027](https://github.com/dynamic-labs/DynamicAuth/issues/4027)) ([6b9cc88](https://github.com/dynamic-labs/DynamicAuth/commit/6b9cc886f4f2590094bd50aba195c07a5532dfa4))
|
|
28
|
+
* prevent double logout caused by wagmi sync ([#4048](https://github.com/dynamic-labs/DynamicAuth/issues/4048)) ([c66c81c](https://github.com/dynamic-labs/DynamicAuth/commit/c66c81c80839aa9ce1cfae76f4afce12e34f3513))
|
|
29
|
+
* properly detect network switch for secondary wallets ([#4038](https://github.com/dynamic-labs/DynamicAuth/issues/4038)) ([f87174d](https://github.com/dynamic-labs/DynamicAuth/commit/f87174de0892dd057401eaf3c0bc68d974add0fc))
|
|
30
|
+
* **use-wallets-connected-state:** update state on wallet id change ([#4045](https://github.com/dynamic-labs/DynamicAuth/issues/4045)) ([ca3a835](https://github.com/dynamic-labs/DynamicAuth/commit/ca3a8359eae386bffa758ed646ac14af8360a7f8))
|
|
31
|
+
* user should be able to see the full passkey name on management view ([#4043](https://github.com/dynamic-labs/DynamicAuth/issues/4043)) ([7bc1b70](https://github.com/dynamic-labs/DynamicAuth/commit/7bc1b7043cbc9f0e21df78a57efc3e6938a99db2))
|
|
32
|
+
* users should be able to easily find passkey recovery ([#4058](https://github.com/dynamic-labs/DynamicAuth/issues/4058)) ([0202ae9](https://github.com/dynamic-labs/DynamicAuth/commit/0202ae98c96544dec5ac357dc77000996e32ad33))
|
|
33
|
+
|
|
2
34
|
## [1.0.0-alpha.6](https://github.com/dynamic-labs/DynamicAuth/compare/v1.0.0-alpha.5...v1.0.0-alpha.6) (2023-11-29)
|
|
3
35
|
|
|
4
36
|
|
package/package.cjs
CHANGED
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var version = "1.0.0-alpha.
|
|
5
|
+
var version = "1.0.0-alpha.8";
|
|
6
6
|
var dependencies = {
|
|
7
7
|
"@dynamic-labs/iconic": "0.1.44",
|
|
8
|
-
"@dynamic-labs/sdk-api": "0.0.
|
|
8
|
+
"@dynamic-labs/sdk-api": "0.0.315",
|
|
9
9
|
"@hcaptcha/react-hcaptcha": "1.4.4",
|
|
10
10
|
"country-list": "2.3.0",
|
|
11
11
|
formik: "2.2.9",
|
package/package.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
var version = "1.0.0-alpha.
|
|
1
|
+
var version = "1.0.0-alpha.8";
|
|
2
2
|
var dependencies = {
|
|
3
3
|
"@dynamic-labs/iconic": "0.1.44",
|
|
4
|
-
"@dynamic-labs/sdk-api": "0.0.
|
|
4
|
+
"@dynamic-labs/sdk-api": "0.0.315",
|
|
5
5
|
"@hcaptcha/react-hcaptcha": "1.4.4",
|
|
6
6
|
"country-list": "2.3.0",
|
|
7
7
|
formik: "2.2.9",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs/sdk-react-core",
|
|
3
|
-
"version": "1.0.0-alpha.
|
|
3
|
+
"version": "1.0.0-alpha.8",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "https://github.com/dynamic-labs/DynamicAuth.git",
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
},
|
|
9
9
|
"dependencies": {
|
|
10
10
|
"@dynamic-labs/iconic": "0.1.44",
|
|
11
|
-
"@dynamic-labs/sdk-api": "0.0.
|
|
11
|
+
"@dynamic-labs/sdk-api": "0.0.315",
|
|
12
12
|
"@hcaptcha/react-hcaptcha": "1.4.4",
|
|
13
13
|
"country-list": "2.3.0",
|
|
14
14
|
"formik": "2.2.9",
|
|
@@ -17,14 +17,14 @@
|
|
|
17
17
|
"react-focus-lock": "2.9.2",
|
|
18
18
|
"react-i18next": "^13.2.0",
|
|
19
19
|
"yup": "0.32.11",
|
|
20
|
-
"@dynamic-labs/ethereum": "1.0.0-alpha.
|
|
21
|
-
"@dynamic-labs/logger": "1.0.0-alpha.
|
|
22
|
-
"@dynamic-labs/multi-wallet": "1.0.0-alpha.
|
|
23
|
-
"@dynamic-labs/rpc-providers": "1.0.0-alpha.
|
|
24
|
-
"@dynamic-labs/types": "1.0.0-alpha.
|
|
25
|
-
"@dynamic-labs/utils": "1.0.0-alpha.
|
|
26
|
-
"@dynamic-labs/wallet-book": "1.0.0-alpha.
|
|
27
|
-
"@dynamic-labs/wallet-connector-core": "1.0.0-alpha.
|
|
20
|
+
"@dynamic-labs/ethereum": "1.0.0-alpha.8",
|
|
21
|
+
"@dynamic-labs/logger": "1.0.0-alpha.8",
|
|
22
|
+
"@dynamic-labs/multi-wallet": "1.0.0-alpha.8",
|
|
23
|
+
"@dynamic-labs/rpc-providers": "1.0.0-alpha.8",
|
|
24
|
+
"@dynamic-labs/types": "1.0.0-alpha.8",
|
|
25
|
+
"@dynamic-labs/utils": "1.0.0-alpha.8",
|
|
26
|
+
"@dynamic-labs/wallet-book": "1.0.0-alpha.8",
|
|
27
|
+
"@dynamic-labs/wallet-connector-core": "1.0.0-alpha.8",
|
|
28
28
|
"eventemitter3": "5.0.1"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
package/src/index.cjs
CHANGED
|
@@ -148,12 +148,13 @@ require('formik');
|
|
|
148
148
|
require('viem');
|
|
149
149
|
require('./lib/components/IconButton/IconButton.cjs');
|
|
150
150
|
require('./lib/components/Alert/Alert.cjs');
|
|
151
|
-
var
|
|
151
|
+
var usePasskeyRecovery = require('./lib/utils/hooks/usePasskeyRecovery/usePasskeyRecovery.cjs');
|
|
152
152
|
require('./lib/widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.cjs');
|
|
153
153
|
var useWalletItemActions = require('./lib/utils/hooks/useWalletItemActions/useWalletItemActions.cjs');
|
|
154
154
|
var useAuthenticateConnectedUser = require('./lib/utils/hooks/useAuthenticateConnectedUser/useAuthenticateConnectedUser.cjs');
|
|
155
155
|
require('./lib/context/UserFieldEditorContext/UserFieldEditorContext.cjs');
|
|
156
156
|
require('./lib/utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.cjs');
|
|
157
|
+
var useEmbeddedWallet = require('./lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.cjs');
|
|
157
158
|
var useIsLoggedIn = require('./lib/utils/hooks/useIsLoggedIn/useIsLoggedIn.cjs');
|
|
158
159
|
var DynamicConnectButton = require('./lib/components/DynamicConnectButton/DynamicConnectButton.cjs');
|
|
159
160
|
require('./lib/components/InlineWidget/InlineWidget.cjs');
|
|
@@ -306,9 +307,10 @@ exports.useEmailVerificationRequest = useEmailVerificationRequest.useEmailVerifi
|
|
|
306
307
|
exports.DynamicWidgetContextProvider = DynamicWidgetContext.DynamicWidgetContextProvider;
|
|
307
308
|
exports.useSocialAccounts = useSocialAccounts.useSocialAccounts;
|
|
308
309
|
exports.useUserUpdateRequest = useUserUpdateRequest.useUserUpdateRequest;
|
|
309
|
-
exports.
|
|
310
|
+
exports.usePasskeyRecovery = usePasskeyRecovery.usePasskeyRecovery;
|
|
310
311
|
exports.useWalletItemActions = useWalletItemActions.useWalletItemActions;
|
|
311
312
|
exports.useAuthenticateConnectedUser = useAuthenticateConnectedUser.useAuthenticateConnectedUser;
|
|
313
|
+
exports.useEmbeddedWallet = useEmbeddedWallet.useEmbeddedWallet;
|
|
312
314
|
exports.useIsLoggedIn = useIsLoggedIn.useIsLoggedIn;
|
|
313
315
|
exports.DynamicConnectButton = DynamicConnectButton.DynamicConnectButton;
|
|
314
316
|
exports.IsBrowser = IsBrowser.IsBrowser;
|
package/src/index.d.ts
CHANGED
|
@@ -23,7 +23,7 @@ export { classNames } from './lib/utils/functions/classNames';
|
|
|
23
23
|
export { getNetwork } from './lib/utils/functions/getNetwork';
|
|
24
24
|
export * from './lib/utils/functions/walletFilters';
|
|
25
25
|
export { DynamicWidgetContextProvider } from './lib/widgets/DynamicWidget/context';
|
|
26
|
-
export { useWalletItemActions, useAuthenticateConnectedUser, useSocialAccounts, useEmbeddedWallet, useIsLoggedIn, } from './lib/utils/hooks';
|
|
26
|
+
export { useWalletItemActions, useAuthenticateConnectedUser, useSocialAccounts, useEmbeddedWallet, usePasskeyRecovery, useIsLoggedIn, } from './lib/utils/hooks';
|
|
27
27
|
export { useUserUpdateRequest } from './lib/utils/hooks';
|
|
28
28
|
export { type VerifyEmailCallback, useEmailVerificationRequest, } from './lib/utils/hooks/authenticationHooks/';
|
|
29
29
|
export type { UpdateUserFieldsArg } from './lib/utils/hooks/';
|
package/src/index.js
CHANGED
|
@@ -144,12 +144,13 @@ import 'formik';
|
|
|
144
144
|
import 'viem';
|
|
145
145
|
import './lib/components/IconButton/IconButton.js';
|
|
146
146
|
import './lib/components/Alert/Alert.js';
|
|
147
|
-
export {
|
|
147
|
+
export { usePasskeyRecovery } from './lib/utils/hooks/usePasskeyRecovery/usePasskeyRecovery.js';
|
|
148
148
|
import './lib/widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.js';
|
|
149
149
|
export { useWalletItemActions } from './lib/utils/hooks/useWalletItemActions/useWalletItemActions.js';
|
|
150
150
|
export { useAuthenticateConnectedUser } from './lib/utils/hooks/useAuthenticateConnectedUser/useAuthenticateConnectedUser.js';
|
|
151
151
|
import './lib/context/UserFieldEditorContext/UserFieldEditorContext.js';
|
|
152
152
|
import './lib/utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.js';
|
|
153
|
+
export { useEmbeddedWallet } from './lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.js';
|
|
153
154
|
export { useIsLoggedIn } from './lib/utils/hooks/useIsLoggedIn/useIsLoggedIn.js';
|
|
154
155
|
export { DynamicConnectButton } from './lib/components/DynamicConnectButton/DynamicConnectButton.js';
|
|
155
156
|
import './lib/components/InlineWidget/InlineWidget.js';
|
package/src/lib/Main.cjs
CHANGED
|
@@ -92,27 +92,24 @@ const Main = () => {
|
|
|
92
92
|
// We want to disconnect wallet when users closes `network not supported` view
|
|
93
93
|
// without updating network in wallet
|
|
94
94
|
// We use onExiting instead onUnmount to avoid jump effect in inline widget
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
disconnectWallet(walletByConnectorName.id);
|
|
114
|
-
}
|
|
115
|
-
}
|
|
95
|
+
const viewsToDisconnectWalletOnClose = [
|
|
96
|
+
'network-not-supported',
|
|
97
|
+
'network-not-supported-manual',
|
|
98
|
+
];
|
|
99
|
+
if (!isConnectOnly.isConnectOnly(user, authMode) ||
|
|
100
|
+
!viewsToDisconnectWalletOnClose.includes(view) ||
|
|
101
|
+
!selectedWalletConnector)
|
|
102
|
+
return;
|
|
103
|
+
const walletByConnectorName = connectedWallets.find((connectedWallet) => connectedWallet.connector.name === selectedWalletConnector.name);
|
|
104
|
+
if (!walletByConnectorName) {
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
// Validate the network
|
|
108
|
+
if (!isSupportedNetwork.isSupportedNetwork({
|
|
109
|
+
network: yield walletByConnectorName.connector.getNetwork(),
|
|
110
|
+
walletConnector: walletByConnectorName.connector,
|
|
111
|
+
})) {
|
|
112
|
+
disconnectWallet(walletByConnectorName.id);
|
|
116
113
|
}
|
|
117
114
|
}), [
|
|
118
115
|
selectedWalletConnector,
|
package/src/lib/Main.js
CHANGED
|
@@ -88,27 +88,24 @@ const Main = () => {
|
|
|
88
88
|
// We want to disconnect wallet when users closes `network not supported` view
|
|
89
89
|
// without updating network in wallet
|
|
90
90
|
// We use onExiting instead onUnmount to avoid jump effect in inline widget
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
disconnectWallet(walletByConnectorName.id);
|
|
110
|
-
}
|
|
111
|
-
}
|
|
91
|
+
const viewsToDisconnectWalletOnClose = [
|
|
92
|
+
'network-not-supported',
|
|
93
|
+
'network-not-supported-manual',
|
|
94
|
+
];
|
|
95
|
+
if (!isConnectOnly(user, authMode) ||
|
|
96
|
+
!viewsToDisconnectWalletOnClose.includes(view) ||
|
|
97
|
+
!selectedWalletConnector)
|
|
98
|
+
return;
|
|
99
|
+
const walletByConnectorName = connectedWallets.find((connectedWallet) => connectedWallet.connector.name === selectedWalletConnector.name);
|
|
100
|
+
if (!walletByConnectorName) {
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
// Validate the network
|
|
104
|
+
if (!isSupportedNetwork({
|
|
105
|
+
network: yield walletByConnectorName.connector.getNetwork(),
|
|
106
|
+
walletConnector: walletByConnectorName.connector,
|
|
107
|
+
})) {
|
|
108
|
+
disconnectWallet(walletByConnectorName.id);
|
|
112
109
|
}
|
|
113
110
|
}), [
|
|
114
111
|
selectedWalletConnector,
|
|
@@ -5,18 +5,97 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
5
5
|
var jsxRuntime = require('react/jsx-runtime');
|
|
6
6
|
var reactI18next = require('react-i18next');
|
|
7
7
|
var useInternalDynamicContext = require('../../context/DynamicContext/useInternalDynamicContext.cjs');
|
|
8
|
+
require('react');
|
|
9
|
+
require('@dynamic-labs/utils');
|
|
10
|
+
require('@dynamic-labs/sdk-api');
|
|
11
|
+
require('../../config/ApiEndpoint.cjs');
|
|
12
|
+
require('../../shared/logger.cjs');
|
|
13
|
+
require('@dynamic-labs/iconic');
|
|
14
|
+
require('@dynamic-labs/wallet-connector-core');
|
|
15
|
+
var ViewContext = require('../../context/ViewContext/ViewContext.cjs');
|
|
16
|
+
require('@dynamic-labs/wallet-book');
|
|
17
|
+
require('../../utils/constants/colors.cjs');
|
|
18
|
+
require('../../shared/utils/classes/storage/localStorage.cjs');
|
|
19
|
+
require('viem');
|
|
20
|
+
require('../../shared/consts/index.cjs');
|
|
21
|
+
require('@dynamic-labs/multi-wallet');
|
|
22
|
+
require('@dynamic-labs/rpc-providers');
|
|
23
|
+
require('../../utils/hooks/useWallets/utils/verifyMagicIsSetup/verifyMagicIsSetup.cjs');
|
|
24
|
+
require('../../context/AccessDeniedContext/AccessDeniedContext.cjs');
|
|
25
|
+
require('../../context/AccountExistsContext/AccountExistsContext.cjs');
|
|
26
|
+
require('../../context/ErrorContext/ErrorContext.cjs');
|
|
27
|
+
require('react-dom');
|
|
28
|
+
var classNames = require('../../utils/functions/classNames/classNames.cjs');
|
|
29
|
+
require('../Alert/Alert.cjs');
|
|
8
30
|
var Typography = require('../Typography/Typography.cjs');
|
|
31
|
+
var TextButton = require('../TextButton/TextButton.cjs');
|
|
32
|
+
require('../ShadowDOM/ShadowDOM.cjs');
|
|
33
|
+
require('../IconButton/IconButton.cjs');
|
|
34
|
+
require('../../context/ThemeContext/ThemeContext.cjs');
|
|
35
|
+
require('../InlineWidget/InlineWidget.cjs');
|
|
36
|
+
require('../MenuList/Dropdown/Dropdown.cjs');
|
|
37
|
+
require('../Transition/ZoomTransition/ZoomTransition.cjs');
|
|
38
|
+
require('../Transition/SlideInUpTransition/SlideInUpTransition.cjs');
|
|
39
|
+
require('../Transition/OpacityTransition/OpacityTransition.cjs');
|
|
40
|
+
require('../Popper/Popper/Popper.cjs');
|
|
41
|
+
require('../Popper/PopperContext/PopperContext.cjs');
|
|
42
|
+
require('react-focus-lock');
|
|
43
|
+
require('formik');
|
|
44
|
+
require('yup');
|
|
45
|
+
var usePasskeyRecovery = require('../../utils/hooks/usePasskeyRecovery/usePasskeyRecovery.cjs');
|
|
46
|
+
require('../OverlayCard/OverlayCard.context.cjs');
|
|
47
|
+
require('../../context/FooterAnimationContext/index.cjs');
|
|
48
|
+
require('../../context/MockContext/MockContext.cjs');
|
|
49
|
+
require('../../context/QrCodeContext/QrCodeContext.cjs');
|
|
50
|
+
require('../../context/WalletGroupContext/WalletGroupContext.cjs');
|
|
51
|
+
require('../../widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.cjs');
|
|
52
|
+
require('../../context/CaptchaContext/CaptchaContext.cjs');
|
|
53
|
+
require('../../context/EmailVerificationContext/EmailVerificationContext.cjs');
|
|
54
|
+
require('qrcode');
|
|
55
|
+
require('../../context/LoadingContext/LoadingContext.cjs');
|
|
56
|
+
require('i18next');
|
|
57
|
+
require('../../widgets/DynamicWidget/context/DynamicWidgetContext.cjs');
|
|
58
|
+
require('../UserProfile/parts/UserProfileField/components/VerifiedEmailIcon/VerifiedEmailIcon.cjs');
|
|
59
|
+
require('@dynamic-labs/types');
|
|
60
|
+
require('../../utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.cjs');
|
|
61
|
+
require('../../context/UserFieldEditorContext/UserFieldEditorContext.cjs');
|
|
62
|
+
require('../../widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.cjs');
|
|
9
63
|
|
|
10
64
|
const NeedHelpSection = () => {
|
|
65
|
+
var _a, _b, _c, _d;
|
|
11
66
|
const { projectSettings } = useInternalDynamicContext.useInternalDynamicContext();
|
|
12
67
|
const { t } = reactI18next.useTranslation();
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
|
|
16
|
-
|
|
68
|
+
const { initPasskeyRecoveryProcess } = usePasskeyRecovery.usePasskeyRecovery();
|
|
69
|
+
const { view } = ViewContext.useViewContext();
|
|
70
|
+
const supportEmail = (_a = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.general) === null || _a === void 0 ? void 0 : _a.supportEmail;
|
|
71
|
+
const supportUrl = ((_b = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.general) === null || _b === void 0 ? void 0 : _b.supportUrls) &&
|
|
72
|
+
((_c = Object.values(projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.general.supportUrls)) === null || _c === void 0 ? void 0 : _c[0]);
|
|
73
|
+
// don't show passkey recovery helper on passkey creation flow views
|
|
74
|
+
const isRecoveryEnabled = !view.startsWith('passkey') &&
|
|
75
|
+
Boolean((_d = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk) === null || _d === void 0 ? void 0 : _d.passkeyEmbeddedWalletRecoveryEnabled);
|
|
76
|
+
const hasContactInfo = Boolean(supportEmail || supportUrl);
|
|
77
|
+
const getSupportHelpSession = () => {
|
|
78
|
+
if (!hasContactInfo) {
|
|
79
|
+
return null;
|
|
80
|
+
}
|
|
81
|
+
return (jsxRuntime.jsxs("div", { className: 'need-help-section__links', children: [supportUrl && (jsxRuntime.jsx(Typography.Typography, { variant: 'body_small', color: 'link', children: jsxRuntime.jsx("a", { href: supportUrl, rel: 'noreferrer', target: '_blank', children: t('dyn_need_help_section.contact_support') }) })), supportEmail && (jsxRuntime.jsx(Typography.Typography, { variant: 'body_small', color: 'link', children: jsxRuntime.jsx("a", { href: `mailto:${supportEmail}`, children: supportEmail }) }))] }));
|
|
82
|
+
};
|
|
83
|
+
const getPasskeyRecoverySession = () => {
|
|
84
|
+
if (!isRecoveryEnabled) {
|
|
85
|
+
return null;
|
|
86
|
+
}
|
|
87
|
+
const recoveryText = t('dyn_need_help_section.recovery_button');
|
|
88
|
+
const finalRecoveryText = hasContactInfo
|
|
89
|
+
? recoveryText
|
|
90
|
+
: recoveryText.slice(0, 1).toUpperCase() + recoveryText.slice(1);
|
|
91
|
+
return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [hasContactInfo && (jsxRuntime.jsx(Typography.Typography, { color: 'secondary', variant: 'body_small', children: t('dyn_need_help_section.divider') })), jsxRuntime.jsx(TextButton.TextButton, { className: classNames.classNames('helper-link', {
|
|
92
|
+
'need-help-section--captalize': !hasContactInfo,
|
|
93
|
+
}), onClick: initPasskeyRecoveryProcess, children: finalRecoveryText })] }));
|
|
94
|
+
};
|
|
95
|
+
if (!hasContactInfo && !isRecoveryEnabled) {
|
|
17
96
|
return null;
|
|
18
97
|
}
|
|
19
|
-
return (jsxRuntime.jsxs("div", { className: 'need-help-section', children: [jsxRuntime.jsx(Typography.Typography, { color: 'secondary', variant: 'body_small', children: t('dyn_need_help_section.info') }),
|
|
98
|
+
return (jsxRuntime.jsxs("div", { className: 'need-help-section', children: [jsxRuntime.jsx(Typography.Typography, { color: 'secondary', variant: 'body_small', children: t('dyn_need_help_section.info') }), getSupportHelpSession(), getPasskeyRecoverySession()] }));
|
|
20
99
|
};
|
|
21
100
|
|
|
22
101
|
exports.NeedHelpSection = NeedHelpSection;
|
|
@@ -1,18 +1,97 @@
|
|
|
1
|
-
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
1
|
+
import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
|
|
2
2
|
import { useTranslation } from 'react-i18next';
|
|
3
3
|
import { useInternalDynamicContext } from '../../context/DynamicContext/useInternalDynamicContext.js';
|
|
4
|
+
import 'react';
|
|
5
|
+
import '@dynamic-labs/utils';
|
|
6
|
+
import '@dynamic-labs/sdk-api';
|
|
7
|
+
import '../../config/ApiEndpoint.js';
|
|
8
|
+
import '../../shared/logger.js';
|
|
9
|
+
import '@dynamic-labs/iconic';
|
|
10
|
+
import '@dynamic-labs/wallet-connector-core';
|
|
11
|
+
import { useViewContext } from '../../context/ViewContext/ViewContext.js';
|
|
12
|
+
import '@dynamic-labs/wallet-book';
|
|
13
|
+
import '../../utils/constants/colors.js';
|
|
14
|
+
import '../../shared/utils/classes/storage/localStorage.js';
|
|
15
|
+
import 'viem';
|
|
16
|
+
import '../../shared/consts/index.js';
|
|
17
|
+
import '@dynamic-labs/multi-wallet';
|
|
18
|
+
import '@dynamic-labs/rpc-providers';
|
|
19
|
+
import '../../utils/hooks/useWallets/utils/verifyMagicIsSetup/verifyMagicIsSetup.js';
|
|
20
|
+
import '../../context/AccessDeniedContext/AccessDeniedContext.js';
|
|
21
|
+
import '../../context/AccountExistsContext/AccountExistsContext.js';
|
|
22
|
+
import '../../context/ErrorContext/ErrorContext.js';
|
|
23
|
+
import 'react-dom';
|
|
24
|
+
import { classNames } from '../../utils/functions/classNames/classNames.js';
|
|
25
|
+
import '../Alert/Alert.js';
|
|
4
26
|
import { Typography } from '../Typography/Typography.js';
|
|
27
|
+
import { TextButton } from '../TextButton/TextButton.js';
|
|
28
|
+
import '../ShadowDOM/ShadowDOM.js';
|
|
29
|
+
import '../IconButton/IconButton.js';
|
|
30
|
+
import '../../context/ThemeContext/ThemeContext.js';
|
|
31
|
+
import '../InlineWidget/InlineWidget.js';
|
|
32
|
+
import '../MenuList/Dropdown/Dropdown.js';
|
|
33
|
+
import '../Transition/ZoomTransition/ZoomTransition.js';
|
|
34
|
+
import '../Transition/SlideInUpTransition/SlideInUpTransition.js';
|
|
35
|
+
import '../Transition/OpacityTransition/OpacityTransition.js';
|
|
36
|
+
import '../Popper/Popper/Popper.js';
|
|
37
|
+
import '../Popper/PopperContext/PopperContext.js';
|
|
38
|
+
import 'react-focus-lock';
|
|
39
|
+
import 'formik';
|
|
40
|
+
import 'yup';
|
|
41
|
+
import { usePasskeyRecovery } from '../../utils/hooks/usePasskeyRecovery/usePasskeyRecovery.js';
|
|
42
|
+
import '../OverlayCard/OverlayCard.context.js';
|
|
43
|
+
import '../../context/FooterAnimationContext/index.js';
|
|
44
|
+
import '../../context/MockContext/MockContext.js';
|
|
45
|
+
import '../../context/QrCodeContext/QrCodeContext.js';
|
|
46
|
+
import '../../context/WalletGroupContext/WalletGroupContext.js';
|
|
47
|
+
import '../../widgets/DynamicWidget/components/DynamicWidgetHeader/DynamicWidgetHeader.js';
|
|
48
|
+
import '../../context/CaptchaContext/CaptchaContext.js';
|
|
49
|
+
import '../../context/EmailVerificationContext/EmailVerificationContext.js';
|
|
50
|
+
import 'qrcode';
|
|
51
|
+
import '../../context/LoadingContext/LoadingContext.js';
|
|
52
|
+
import 'i18next';
|
|
53
|
+
import '../../widgets/DynamicWidget/context/DynamicWidgetContext.js';
|
|
54
|
+
import '../UserProfile/parts/UserProfileField/components/VerifiedEmailIcon/VerifiedEmailIcon.js';
|
|
55
|
+
import '@dynamic-labs/types';
|
|
56
|
+
import '../../utils/hooks/useUserUpdateRequest/useUpdateUser/useUpdateUser.js';
|
|
57
|
+
import '../../context/UserFieldEditorContext/UserFieldEditorContext.js';
|
|
58
|
+
import '../../widgets/DynamicWidget/views/ManagePasskeysWidgetView/PasskeyCard/PasskeyCard.js';
|
|
5
59
|
|
|
6
60
|
const NeedHelpSection = () => {
|
|
61
|
+
var _a, _b, _c, _d;
|
|
7
62
|
const { projectSettings } = useInternalDynamicContext();
|
|
8
63
|
const { t } = useTranslation();
|
|
9
|
-
const
|
|
10
|
-
const
|
|
11
|
-
|
|
12
|
-
|
|
64
|
+
const { initPasskeyRecoveryProcess } = usePasskeyRecovery();
|
|
65
|
+
const { view } = useViewContext();
|
|
66
|
+
const supportEmail = (_a = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.general) === null || _a === void 0 ? void 0 : _a.supportEmail;
|
|
67
|
+
const supportUrl = ((_b = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.general) === null || _b === void 0 ? void 0 : _b.supportUrls) &&
|
|
68
|
+
((_c = Object.values(projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.general.supportUrls)) === null || _c === void 0 ? void 0 : _c[0]);
|
|
69
|
+
// don't show passkey recovery helper on passkey creation flow views
|
|
70
|
+
const isRecoveryEnabled = !view.startsWith('passkey') &&
|
|
71
|
+
Boolean((_d = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk) === null || _d === void 0 ? void 0 : _d.passkeyEmbeddedWalletRecoveryEnabled);
|
|
72
|
+
const hasContactInfo = Boolean(supportEmail || supportUrl);
|
|
73
|
+
const getSupportHelpSession = () => {
|
|
74
|
+
if (!hasContactInfo) {
|
|
75
|
+
return null;
|
|
76
|
+
}
|
|
77
|
+
return (jsxs("div", { className: 'need-help-section__links', children: [supportUrl && (jsx(Typography, { variant: 'body_small', color: 'link', children: jsx("a", { href: supportUrl, rel: 'noreferrer', target: '_blank', children: t('dyn_need_help_section.contact_support') }) })), supportEmail && (jsx(Typography, { variant: 'body_small', color: 'link', children: jsx("a", { href: `mailto:${supportEmail}`, children: supportEmail }) }))] }));
|
|
78
|
+
};
|
|
79
|
+
const getPasskeyRecoverySession = () => {
|
|
80
|
+
if (!isRecoveryEnabled) {
|
|
81
|
+
return null;
|
|
82
|
+
}
|
|
83
|
+
const recoveryText = t('dyn_need_help_section.recovery_button');
|
|
84
|
+
const finalRecoveryText = hasContactInfo
|
|
85
|
+
? recoveryText
|
|
86
|
+
: recoveryText.slice(0, 1).toUpperCase() + recoveryText.slice(1);
|
|
87
|
+
return (jsxs(Fragment, { children: [hasContactInfo && (jsx(Typography, { color: 'secondary', variant: 'body_small', children: t('dyn_need_help_section.divider') })), jsx(TextButton, { className: classNames('helper-link', {
|
|
88
|
+
'need-help-section--captalize': !hasContactInfo,
|
|
89
|
+
}), onClick: initPasskeyRecoveryProcess, children: finalRecoveryText })] }));
|
|
90
|
+
};
|
|
91
|
+
if (!hasContactInfo && !isRecoveryEnabled) {
|
|
13
92
|
return null;
|
|
14
93
|
}
|
|
15
|
-
return (jsxs("div", { className: 'need-help-section', children: [jsx(Typography, { color: 'secondary', variant: 'body_small', children: t('dyn_need_help_section.info') }),
|
|
94
|
+
return (jsxs("div", { className: 'need-help-section', children: [jsx(Typography, { color: 'secondary', variant: 'body_small', children: t('dyn_need_help_section.info') }), getSupportHelpSession(), getPasskeyRecoverySession()] }));
|
|
16
95
|
};
|
|
17
96
|
|
|
18
97
|
export { NeedHelpSection };
|
|
@@ -64,12 +64,13 @@ var MenuList = require('../MenuList/MenuList/MenuList.cjs');
|
|
|
64
64
|
var NetworkAction = require('./components/NetworkAction/NetworkAction.cjs');
|
|
65
65
|
var NetworkControl = require('./components/NetworkControl/NetworkControl.cjs');
|
|
66
66
|
|
|
67
|
-
const NetworkPicker = ({ activeClassName = '', buttonClassName = '', checkboxClassName = '', connector, evmNetworks, isNetworkPickerOpen, listClassName = '', mainClassName = '', setIsNetworkPickerOpen, showNetworkName, customCallbackOnSuccess, }) => {
|
|
67
|
+
const NetworkPicker = ({ activeClassName = '', buttonClassName = '', checkboxClassName = '', connector, evmNetworks, isNetworkPickerOpen, listClassName = '', mainClassName = '', setIsNetworkPickerOpen, showNetworkName, customCallbackOnSuccess, currentNetwork, }) => {
|
|
68
68
|
const pickerRef = React.useRef(null);
|
|
69
69
|
const [newNetworkId, setNewNetworkId] = React.useState(undefined);
|
|
70
|
-
const { loadingNetwork,
|
|
70
|
+
const { loadingNetwork, primaryWallet, setNetwork } = useInternalDynamicContext.useInternalDynamicContext();
|
|
71
71
|
const { data: supportedWalletNetworks } = usePromise.usePromise(() => connector === null || connector === void 0 ? void 0 : connector.getSupportedNetworks(), { deps: [connector] });
|
|
72
|
-
const shouldAllowOpenDropdown = isNetworkUnsupported.isNetworkUnsupported(
|
|
72
|
+
const shouldAllowOpenDropdown = isNetworkUnsupported.isNetworkUnsupported(currentNetwork, evmNetworks) ||
|
|
73
|
+
(evmNetworks === null || evmNetworks === void 0 ? void 0 : evmNetworks.length) > 1;
|
|
73
74
|
// Ref to anchor popper to
|
|
74
75
|
const anchorRef = React.useRef(null);
|
|
75
76
|
const handleNetworkChange = (networkId) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -79,7 +80,8 @@ const NetworkPicker = ({ activeClassName = '', buttonClassName = '', checkboxCla
|
|
|
79
80
|
networkChainId: networkId,
|
|
80
81
|
}));
|
|
81
82
|
const chainId = yield (connector === null || connector === void 0 ? void 0 : connector.getNetwork());
|
|
82
|
-
|
|
83
|
+
if ((primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector.key) === (connector === null || connector === void 0 ? void 0 : connector.key))
|
|
84
|
+
setNetwork(chainId);
|
|
83
85
|
customCallbackOnSuccess === null || customCallbackOnSuccess === void 0 ? void 0 : customCallbackOnSuccess();
|
|
84
86
|
}
|
|
85
87
|
catch (error) {
|
|
@@ -91,10 +93,10 @@ const NetworkPicker = ({ activeClassName = '', buttonClassName = '', checkboxCla
|
|
|
91
93
|
setIsNetworkPickerOpen(false);
|
|
92
94
|
}
|
|
93
95
|
});
|
|
94
|
-
return (jsxRuntime.jsxs("div", { className: classNames.classNames('non-widget-network-picker', mainClassName), ref: pickerRef, "data-testid": 'network-picker', children: [jsxRuntime.jsxs("div", { className: 'network-picker-network-control', children: [jsxRuntime.jsx(NetworkControl.NetworkControl, { evmNetworks: evmNetworks, activeClassName: activeClassName, network:
|
|
96
|
+
return (jsxRuntime.jsxs("div", { className: classNames.classNames('non-widget-network-picker', mainClassName), ref: pickerRef, "data-testid": 'network-picker', children: [jsxRuntime.jsxs("div", { className: 'network-picker-network-control', children: [jsxRuntime.jsx(NetworkControl.NetworkControl, { evmNetworks: evmNetworks, activeClassName: activeClassName, network: currentNetwork, loading: loadingNetwork, isOpen: isNetworkPickerOpen, setIsOpen: setIsNetworkPickerOpen, walletConnector: connector, showNetworkName: showNetworkName, buttonClassName: buttonClassName }), jsxRuntime.jsx("div", { ref: anchorRef, className: 'network-picker-network-control__anchor' })] }), shouldAllowOpenDropdown && (jsxRuntime.jsx(MenuList.MenuList, { className: listClassName, isOpen: isNetworkPickerOpen, onClickClose: () => setIsNetworkPickerOpen(false), popperProps: {
|
|
95
97
|
anchorOrigin: 'bottom-left',
|
|
96
98
|
anchorRef,
|
|
97
|
-
}, mobileTitle: 'Select network', children: evmNetworks.map(({ name, networkId, vanityName, iconUrls }) => (jsxRuntime.jsx(NetworkAction.NetworkAction, { iconUrl: iconUrls === null || iconUrls === void 0 ? void 0 : iconUrls[0], networkId: networkId, networkName: vanityName || name, network:
|
|
99
|
+
}, mobileTitle: 'Select network', children: evmNetworks.map(({ name, networkId, vanityName, iconUrls }) => (jsxRuntime.jsx(NetworkAction.NetworkAction, { iconUrl: iconUrls === null || iconUrls === void 0 ? void 0 : iconUrls[0], networkId: networkId, networkName: vanityName || name, network: currentNetwork, onClick: handleNetworkChange, checkboxClassName: checkboxClassName, newNetworkId: newNetworkId, notSupported: supportedWalletNetworks &&
|
|
98
100
|
!supportedWalletNetworks.includes(`${networkId}`) }, networkId))) }))] }));
|
|
99
101
|
};
|
|
100
102
|
|
|
@@ -13,6 +13,7 @@ type Props = {
|
|
|
13
13
|
mainClassName?: string;
|
|
14
14
|
setIsNetworkPickerOpen: Dispatch<SetStateAction<boolean>>;
|
|
15
15
|
showNetworkName?: boolean;
|
|
16
|
+
currentNetwork: string | number | undefined;
|
|
16
17
|
};
|
|
17
|
-
export declare const NetworkPicker: ({ activeClassName, buttonClassName, checkboxClassName, connector, evmNetworks, isNetworkPickerOpen, listClassName, mainClassName, setIsNetworkPickerOpen, showNetworkName, customCallbackOnSuccess, }: Props) => JSX.Element;
|
|
18
|
+
export declare const NetworkPicker: ({ activeClassName, buttonClassName, checkboxClassName, connector, evmNetworks, isNetworkPickerOpen, listClassName, mainClassName, setIsNetworkPickerOpen, showNetworkName, customCallbackOnSuccess, currentNetwork, }: Props) => JSX.Element;
|
|
18
19
|
export {};
|
|
@@ -60,12 +60,13 @@ import { MenuList } from '../MenuList/MenuList/MenuList.js';
|
|
|
60
60
|
import { NetworkAction } from './components/NetworkAction/NetworkAction.js';
|
|
61
61
|
import { NetworkControl } from './components/NetworkControl/NetworkControl.js';
|
|
62
62
|
|
|
63
|
-
const NetworkPicker = ({ activeClassName = '', buttonClassName = '', checkboxClassName = '', connector, evmNetworks, isNetworkPickerOpen, listClassName = '', mainClassName = '', setIsNetworkPickerOpen, showNetworkName, customCallbackOnSuccess, }) => {
|
|
63
|
+
const NetworkPicker = ({ activeClassName = '', buttonClassName = '', checkboxClassName = '', connector, evmNetworks, isNetworkPickerOpen, listClassName = '', mainClassName = '', setIsNetworkPickerOpen, showNetworkName, customCallbackOnSuccess, currentNetwork, }) => {
|
|
64
64
|
const pickerRef = useRef(null);
|
|
65
65
|
const [newNetworkId, setNewNetworkId] = useState(undefined);
|
|
66
|
-
const { loadingNetwork,
|
|
66
|
+
const { loadingNetwork, primaryWallet, setNetwork } = useInternalDynamicContext();
|
|
67
67
|
const { data: supportedWalletNetworks } = usePromise(() => connector === null || connector === void 0 ? void 0 : connector.getSupportedNetworks(), { deps: [connector] });
|
|
68
|
-
const shouldAllowOpenDropdown = isNetworkUnsupported(
|
|
68
|
+
const shouldAllowOpenDropdown = isNetworkUnsupported(currentNetwork, evmNetworks) ||
|
|
69
|
+
(evmNetworks === null || evmNetworks === void 0 ? void 0 : evmNetworks.length) > 1;
|
|
69
70
|
// Ref to anchor popper to
|
|
70
71
|
const anchorRef = useRef(null);
|
|
71
72
|
const handleNetworkChange = (networkId) => __awaiter(void 0, void 0, void 0, function* () {
|
|
@@ -75,7 +76,8 @@ const NetworkPicker = ({ activeClassName = '', buttonClassName = '', checkboxCla
|
|
|
75
76
|
networkChainId: networkId,
|
|
76
77
|
}));
|
|
77
78
|
const chainId = yield (connector === null || connector === void 0 ? void 0 : connector.getNetwork());
|
|
78
|
-
|
|
79
|
+
if ((primaryWallet === null || primaryWallet === void 0 ? void 0 : primaryWallet.connector.key) === (connector === null || connector === void 0 ? void 0 : connector.key))
|
|
80
|
+
setNetwork(chainId);
|
|
79
81
|
customCallbackOnSuccess === null || customCallbackOnSuccess === void 0 ? void 0 : customCallbackOnSuccess();
|
|
80
82
|
}
|
|
81
83
|
catch (error) {
|
|
@@ -87,10 +89,10 @@ const NetworkPicker = ({ activeClassName = '', buttonClassName = '', checkboxCla
|
|
|
87
89
|
setIsNetworkPickerOpen(false);
|
|
88
90
|
}
|
|
89
91
|
});
|
|
90
|
-
return (jsxs("div", { className: classNames('non-widget-network-picker', mainClassName), ref: pickerRef, "data-testid": 'network-picker', children: [jsxs("div", { className: 'network-picker-network-control', children: [jsx(NetworkControl, { evmNetworks: evmNetworks, activeClassName: activeClassName, network:
|
|
92
|
+
return (jsxs("div", { className: classNames('non-widget-network-picker', mainClassName), ref: pickerRef, "data-testid": 'network-picker', children: [jsxs("div", { className: 'network-picker-network-control', children: [jsx(NetworkControl, { evmNetworks: evmNetworks, activeClassName: activeClassName, network: currentNetwork, loading: loadingNetwork, isOpen: isNetworkPickerOpen, setIsOpen: setIsNetworkPickerOpen, walletConnector: connector, showNetworkName: showNetworkName, buttonClassName: buttonClassName }), jsx("div", { ref: anchorRef, className: 'network-picker-network-control__anchor' })] }), shouldAllowOpenDropdown && (jsx(MenuList, { className: listClassName, isOpen: isNetworkPickerOpen, onClickClose: () => setIsNetworkPickerOpen(false), popperProps: {
|
|
91
93
|
anchorOrigin: 'bottom-left',
|
|
92
94
|
anchorRef,
|
|
93
|
-
}, mobileTitle: 'Select network', children: evmNetworks.map(({ name, networkId, vanityName, iconUrls }) => (jsx(NetworkAction, { iconUrl: iconUrls === null || iconUrls === void 0 ? void 0 : iconUrls[0], networkId: networkId, networkName: vanityName || name, network:
|
|
95
|
+
}, mobileTitle: 'Select network', children: evmNetworks.map(({ name, networkId, vanityName, iconUrls }) => (jsx(NetworkAction, { iconUrl: iconUrls === null || iconUrls === void 0 ? void 0 : iconUrls[0], networkId: networkId, networkName: vanityName || name, network: currentNetwork, onClick: handleNetworkChange, checkboxClassName: checkboxClassName, newNetworkId: newNetworkId, notSupported: supportedWalletNetworks &&
|
|
94
96
|
!supportedWalletNetworks.includes(`${networkId}`) }, networkId))) }))] }));
|
|
95
97
|
};
|
|
96
98
|
|