@dynamic-labs/sdk-react-core 0.18.0-RC.12 → 0.18.0-RC.14
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 +37 -0
- package/package.cjs +2 -2
- package/package.js +2 -2
- package/package.json +9 -9
- package/src/lib/Main.cjs +2 -2
- package/src/lib/Main.js +2 -2
- package/src/lib/context/DynamicContext/DynamicContext.cjs +11 -11
- package/src/lib/context/DynamicContext/DynamicContext.d.ts +5 -4
- package/src/lib/context/DynamicContext/DynamicContext.js +11 -11
- package/src/lib/context/DynamicContext/useDynamicContext.cjs +2 -2
- package/src/lib/context/DynamicContext/useDynamicContext.d.ts +1 -1
- package/src/lib/context/DynamicContext/useDynamicContext.js +2 -2
- package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/NewToWeb3WalletItem/NewToWeb3WalletItem.cjs +1 -1
- package/src/lib/layout/DynamicAuthLayout/HelpContent/WalletListHelpContent/NewToWeb3WalletItem/NewToWeb3WalletItem.js +1 -1
- package/src/lib/utils/functions/isEmailProviderEnabled/isEmailProviderEnabled.cjs +1 -0
- package/src/lib/utils/functions/isEmailProviderEnabled/isEmailProviderEnabled.js +1 -0
- package/src/lib/utils/functions/isSelectedWalletAlreadyConnected/isSelectedWalletAlreadyConnected.cjs +2 -2
- package/src/lib/utils/functions/isSelectedWalletAlreadyConnected/isSelectedWalletAlreadyConnected.d.ts +1 -1
- package/src/lib/utils/functions/isSelectedWalletAlreadyConnected/isSelectedWalletAlreadyConnected.js +2 -2
- package/src/lib/utils/hooks/authenticationHooks/helpers/showPendingConnectView.cjs +1 -1
- package/src/lib/utils/hooks/authenticationHooks/helpers/showPendingConnectView.js +1 -1
- package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.cjs +4 -3
- package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.js +5 -4
- package/src/lib/utils/hooks/index.d.ts +1 -0
- package/src/lib/utils/hooks/useConnectWithEmail/index.d.ts +1 -0
- package/src/lib/utils/hooks/useConnectWithEmail/useConnectWithEmail.cjs +1 -4
- package/src/lib/utils/hooks/useConnectWithEmail/useConnectWithEmail.d.ts +1 -4
- package/src/lib/utils/hooks/useConnectWithEmail/useConnectWithEmail.js +1 -4
- package/src/lib/utils/hooks/useEmailProvider/index.d.ts +1 -0
- package/src/lib/utils/hooks/useEmailProvider/useEmailProvider.cjs +54 -0
- package/src/lib/utils/hooks/useEmailProvider/useEmailProvider.d.ts +10 -0
- package/src/lib/utils/hooks/useEmailProvider/useEmailProvider.js +50 -0
- package/src/lib/utils/hooks/useValidateSession/useValidateSession.cjs +3 -0
- package/src/lib/utils/hooks/useValidateSession/useValidateSession.js +3 -0
- package/src/lib/utils/hooks/useWalletConnectorEvents/useWalletConnectorEvents.cjs +17 -0
- package/src/lib/utils/hooks/useWalletConnectorEvents/useWalletConnectorEvents.d.ts +2 -0
- package/src/lib/utils/hooks/useWalletConnectorEvents/useWalletConnectorEvents.js +13 -0
- package/src/lib/utils/hooks/useWalletItemActions/useWalletItemActions.cjs +3 -3
- package/src/lib/utils/hooks/useWalletItemActions/useWalletItemActions.js +3 -3
- package/src/lib/views/LoginWithEmailView/components/LoginWithEmailForm/LoginWithEmailForm.cjs +24 -51
- package/src/lib/views/LoginWithEmailView/components/LoginWithEmailForm/LoginWithEmailForm.js +24 -51
- package/src/lib/views/LoginWithEmailView/components/LoginWithEmailWalletList/LoginWithEmailWalletList.cjs +2 -2
- package/src/lib/views/LoginWithEmailView/components/LoginWithEmailWalletList/LoginWithEmailWalletList.js +2 -2
- package/src/lib/views/LoginWithEmailView/components/SocialSignIn/SocialSignIn.cjs +7 -5
- package/src/lib/views/LoginWithEmailView/components/SocialSignIn/SocialSignIn.js +7 -5
- package/src/lib/views/NetworkNotSupported/NetworkNotSupported.cjs +14 -14
- package/src/lib/views/NetworkNotSupported/NetworkNotSupported.js +14 -14
- package/src/lib/views/NetworkNotSupportedSwitchManual/NetworkNotSupportedSwitchManual.cjs +20 -24
- package/src/lib/views/NetworkNotSupportedSwitchManual/NetworkNotSupportedSwitchManual.js +21 -25
- 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.types.d.ts +1 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,41 @@
|
|
|
1
1
|
|
|
2
|
+
## [0.18.0-RC.14](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.0-RC.13...v0.18.0-RC.14) (2023-07-11)
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
### ⚠ BREAKING CHANGES
|
|
6
|
+
|
|
7
|
+
* **QNTM-68:** we currently expose concatenated primary and secondary
|
|
8
|
+
wallets array as connectedWallets, this is wrong and may cause issues with
|
|
9
|
+
understanding our architecture as well as issues for customers that want
|
|
10
|
+
to have access to connectedWallets array.
|
|
11
|
+
|
|
12
|
+
* chore(QNTM-68): expose connectedWallets from DynamicContext
|
|
13
|
+
|
|
14
|
+
since, we renamed connectedWallets to linkedWallets, we now want to expose correct value
|
|
15
|
+
for connectedWallets.
|
|
16
|
+
|
|
17
|
+
* chore(QNTM-68)!: remove connectedWalletsInfo from useDynamicContext
|
|
18
|
+
* **QNTM-68:** since we're exposing connectedWallets and this variable
|
|
19
|
+
has less information there is no need in exposing it from DynamicContext
|
|
20
|
+
|
|
21
|
+
* **QNTM-68:** update connectedWallets property and expose linkedWallets ([#2644](https://github.com/dynamic-labs/DynamicAuth/issues/2644)) ([8b707c3](https://github.com/dynamic-labs/DynamicAuth/commit/8b707c3fb2e14aa25385b35768ffa355ef7117e5))
|
|
22
|
+
|
|
23
|
+
## [0.18.0-RC.13](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.0-RC.12...v0.18.0-RC.13) (2023-07-11)
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
### Features
|
|
27
|
+
|
|
28
|
+
* **DynamicContextProvider:** expose socialProviderFilter to modify social provider display order ([#2607](https://github.com/dynamic-labs/DynamicAuth/issues/2607)) ([0f03260](https://github.com/dynamic-labs/DynamicAuth/commit/0f03260e739da3e68c32a2a87a2ca629bb1f28b5))
|
|
29
|
+
* **GVTY-21:** Blocto Email provider ([#2524](https://github.com/dynamic-labs/DynamicAuth/issues/2524)) ([434ce59](https://github.com/dynamic-labs/DynamicAuth/commit/434ce598b3bc13841121b61e5ead7547d3c44eea))
|
|
30
|
+
* listen for the network change in network not supported views ([#2611](https://github.com/dynamic-labs/DynamicAuth/issues/2611)) ([957fbce](https://github.com/dynamic-labs/DynamicAuth/commit/957fbce55d7906f9d6b109838035b2c0306a4b85))
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
### Bug Fixes
|
|
34
|
+
|
|
35
|
+
* Clean up provider re-initializing after logout ([#2632](https://github.com/dynamic-labs/DynamicAuth/issues/2632)) ([fbc2201](https://github.com/dynamic-labs/DynamicAuth/commit/fbc22013d6784061cb4fdd72e24695c89f0e2fe5))
|
|
36
|
+
* **MagicWalletConnector:** check if user is logged when getting balance ([#2614](https://github.com/dynamic-labs/DynamicAuth/issues/2614)) ([ced9d66](https://github.com/dynamic-labs/DynamicAuth/commit/ced9d66cb335c3033a18642bdd841ee6be6c1e05))
|
|
37
|
+
* **useValidateSessin:** only check for bridge on wallet connect wallets ([#2571](https://github.com/dynamic-labs/DynamicAuth/issues/2571)) ([349b659](https://github.com/dynamic-labs/DynamicAuth/commit/349b65963f1d5392f63aaa138f6498f0d17cd43f))
|
|
38
|
+
|
|
2
39
|
## [0.18.0-RC.12](https://github.com/dynamic-labs/DynamicAuth/compare/v0.18.0-RC.11...v0.18.0-RC.12) (2023-07-07)
|
|
3
40
|
|
|
4
41
|
|
package/package.cjs
CHANGED
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var version = "0.18.0-RC.
|
|
5
|
+
var version = "0.18.0-RC.14";
|
|
6
6
|
var dependencies = {
|
|
7
7
|
"react-focus-lock": "2.9.2",
|
|
8
8
|
"@dynamic-labs/iconic": "0.1.23",
|
|
9
|
-
"@dynamic-labs/sdk-api": "0.0.
|
|
9
|
+
"@dynamic-labs/sdk-api": "0.0.228",
|
|
10
10
|
"@hcaptcha/react-hcaptcha": "1.4.4",
|
|
11
11
|
"country-list": "2.3.0",
|
|
12
12
|
yup: "0.32.11",
|
package/package.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
var version = "0.18.0-RC.
|
|
1
|
+
var version = "0.18.0-RC.14";
|
|
2
2
|
var dependencies = {
|
|
3
3
|
"react-focus-lock": "2.9.2",
|
|
4
4
|
"@dynamic-labs/iconic": "0.1.23",
|
|
5
|
-
"@dynamic-labs/sdk-api": "0.0.
|
|
5
|
+
"@dynamic-labs/sdk-api": "0.0.228",
|
|
6
6
|
"@hcaptcha/react-hcaptcha": "1.4.4",
|
|
7
7
|
"country-list": "2.3.0",
|
|
8
8
|
yup: "0.32.11",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs/sdk-react-core",
|
|
3
|
-
"version": "0.18.0-RC.
|
|
3
|
+
"version": "0.18.0-RC.14",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "https://github.com/dynamic-labs/DynamicAuth.git",
|
|
@@ -9,20 +9,20 @@
|
|
|
9
9
|
"dependencies": {
|
|
10
10
|
"react-focus-lock": "2.9.2",
|
|
11
11
|
"@dynamic-labs/iconic": "0.1.23",
|
|
12
|
-
"@dynamic-labs/sdk-api": "0.0.
|
|
12
|
+
"@dynamic-labs/sdk-api": "0.0.228",
|
|
13
13
|
"@hcaptcha/react-hcaptcha": "1.4.4",
|
|
14
14
|
"country-list": "2.3.0",
|
|
15
15
|
"yup": "0.32.11",
|
|
16
16
|
"formik": "2.2.9",
|
|
17
17
|
"qrcode": "1.5.1",
|
|
18
18
|
"ethers": "5.7.2",
|
|
19
|
-
"@dynamic-labs/logger": "0.18.0-RC.
|
|
20
|
-
"@dynamic-labs/multi-wallet": "0.18.0-RC.
|
|
21
|
-
"@dynamic-labs/rpc-providers": "0.18.0-RC.
|
|
22
|
-
"@dynamic-labs/types": "0.18.0-RC.
|
|
23
|
-
"@dynamic-labs/utils": "0.18.0-RC.
|
|
24
|
-
"@dynamic-labs/wallet-book": "0.18.0-RC.
|
|
25
|
-
"@dynamic-labs/wallet-connector-core": "0.18.0-RC.
|
|
19
|
+
"@dynamic-labs/logger": "0.18.0-RC.14",
|
|
20
|
+
"@dynamic-labs/multi-wallet": "0.18.0-RC.14",
|
|
21
|
+
"@dynamic-labs/rpc-providers": "0.18.0-RC.14",
|
|
22
|
+
"@dynamic-labs/types": "0.18.0-RC.14",
|
|
23
|
+
"@dynamic-labs/utils": "0.18.0-RC.14",
|
|
24
|
+
"@dynamic-labs/wallet-book": "0.18.0-RC.14",
|
|
25
|
+
"@dynamic-labs/wallet-connector-core": "0.18.0-RC.14"
|
|
26
26
|
},
|
|
27
27
|
"devDependencies": {
|
|
28
28
|
"semver": "7.3.8"
|
package/src/lib/Main.cjs
CHANGED
|
@@ -51,7 +51,7 @@ var viewToComponentMap = require('./views/viewToComponentMap.cjs');
|
|
|
51
51
|
require('./main.global.cjs');
|
|
52
52
|
|
|
53
53
|
const Main = () => {
|
|
54
|
-
const { selectedWalletConnector,
|
|
54
|
+
const { selectedWalletConnector, linkedWallets, isProjectSettingsLoading, projectSettings, setShowAuthFlow, showAuthFlow, wallets, clearStatesOnBackClick, user, } = useInternalDynamicContext.useInternalDynamicContext();
|
|
55
55
|
const { view, goToInitialView } = ViewContext.useViewContext();
|
|
56
56
|
const { setDeniedAddress, setDeniedOauthProvider } = AccessDeniedContext.useAccessDeniedContext();
|
|
57
57
|
usePreventPageScroll.usePreventPageScroll(showAuthFlow);
|
|
@@ -72,7 +72,7 @@ const Main = () => {
|
|
|
72
72
|
/* istanbul ignore next */
|
|
73
73
|
const handleNewToWeb3WalletIntent = (walletConnector) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
74
74
|
setShowAuthFlow(true);
|
|
75
|
-
if (isSelectedWalletAlreadyConnected.isSelectedWalletAlreadyConnected(
|
|
75
|
+
if (isSelectedWalletAlreadyConnected.isSelectedWalletAlreadyConnected(linkedWallets, walletConnector, user)) {
|
|
76
76
|
// wallet is already connected
|
|
77
77
|
handleAlreadyConnectedWallet(walletConnector);
|
|
78
78
|
}
|
package/src/lib/Main.js
CHANGED
|
@@ -47,7 +47,7 @@ import { viewToComponentMap } from './views/viewToComponentMap.js';
|
|
|
47
47
|
import './main.global.js';
|
|
48
48
|
|
|
49
49
|
const Main = () => {
|
|
50
|
-
const { selectedWalletConnector,
|
|
50
|
+
const { selectedWalletConnector, linkedWallets, isProjectSettingsLoading, projectSettings, setShowAuthFlow, showAuthFlow, wallets, clearStatesOnBackClick, user, } = useInternalDynamicContext();
|
|
51
51
|
const { view, goToInitialView } = useViewContext();
|
|
52
52
|
const { setDeniedAddress, setDeniedOauthProvider } = useAccessDeniedContext();
|
|
53
53
|
usePreventPageScroll(showAuthFlow);
|
|
@@ -68,7 +68,7 @@ const Main = () => {
|
|
|
68
68
|
/* istanbul ignore next */
|
|
69
69
|
const handleNewToWeb3WalletIntent = (walletConnector) => __awaiter(void 0, void 0, void 0, function* () {
|
|
70
70
|
setShowAuthFlow(true);
|
|
71
|
-
if (isSelectedWalletAlreadyConnected(
|
|
71
|
+
if (isSelectedWalletAlreadyConnected(linkedWallets, walletConnector, user)) {
|
|
72
72
|
// wallet is already connected
|
|
73
73
|
handleAlreadyConnectedWallet(walletConnector);
|
|
74
74
|
}
|
|
@@ -91,7 +91,7 @@ var useSetShowAuthFlowWithInit = require('./hooks/useSetShowAuthFlowWithInit/use
|
|
|
91
91
|
|
|
92
92
|
const EMPTY_INITIAL_USER = undefined;
|
|
93
93
|
const DynamicContext = React.createContext(undefined);
|
|
94
|
-
const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, accessDeniedMessageSecondary, accessDeniedButton, apiBaseUrl, appLogoUrl = 'https://demo.dynamic.xyz/assets/dynamic-logo.svg', appName = 'Dynamic Example', walletsByChain, cssOverrides, defaultNumberOfWalletsToShow = values.DEFAULT_NUMBER_OF_WALLETS_TO_SHOW, flowNetwork, initialAuthenticationMode = 'connect-and-sign', debugError = false, displayTermsOfService = true, newToWeb3WalletChainMap, enableVisitTrackingOnConnectOnly = true, environmentId, localStorageSuffix, eventsCallbacks, evmNetworks, walletsFilter, logLevel = 'WARN', multiWallet: deprecatedMultiWallet, notInTheListImageUrl, onboardingImageUrl, policiesConsentInnerComponent, customPrivacyPolicy, privacyPolicyUrl, signWithEmailWalletName, socialMediaLinkText, socialMediaIconUrl, socialMediaUrl, customTermsOfServices, termsOfServiceUrl, toolkitEnabled, siweStatement, shadowDOMEnabled = true, walletConnectV1Bridge, walletConnectors: walletConnectorsProp, }, children, theme, }) => {
|
|
94
|
+
const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, accessDeniedMessageSecondary, accessDeniedButton, apiBaseUrl, appLogoUrl = 'https://demo.dynamic.xyz/assets/dynamic-logo.svg', appName = 'Dynamic Example', walletsByChain, cssOverrides, defaultNumberOfWalletsToShow = values.DEFAULT_NUMBER_OF_WALLETS_TO_SHOW, flowNetwork, initialAuthenticationMode = 'connect-and-sign', debugError = false, displayTermsOfService = true, newToWeb3WalletChainMap, enableVisitTrackingOnConnectOnly = true, environmentId, localStorageSuffix, eventsCallbacks, evmNetworks, walletsFilter, logLevel = 'WARN', multiWallet: deprecatedMultiWallet, notInTheListImageUrl, onboardingImageUrl, policiesConsentInnerComponent, customPrivacyPolicy, privacyPolicyUrl, signWithEmailWalletName, socialMediaLinkText, socialMediaIconUrl, socialMediaUrl, customTermsOfServices, termsOfServiceUrl, toolkitEnabled, siweStatement, shadowDOMEnabled = true, walletConnectV1Bridge, walletConnectors: walletConnectorsProp, socialProvidersFilter, }, children, theme, }) => {
|
|
95
95
|
var _a, _b, _c, _d, _e, _f, _g;
|
|
96
96
|
if (!environmentId) {
|
|
97
97
|
throw new utils.MissingEnvironmentIdError();
|
|
@@ -360,10 +360,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
|
|
|
360
360
|
computeConnectedStateForWallets,
|
|
361
361
|
connectWallet,
|
|
362
362
|
connectedWallet,
|
|
363
|
-
connectedWallets
|
|
364
|
-
? [primaryWallet, ...secondaryWallets]
|
|
365
|
-
: [],
|
|
366
|
-
connectedWalletsInfo,
|
|
363
|
+
connectedWallets,
|
|
367
364
|
consumeNonce,
|
|
368
365
|
cssOverrides,
|
|
369
366
|
customPrivacyPolicy,
|
|
@@ -388,6 +385,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
|
|
|
388
385
|
isSingleWalletAccount,
|
|
389
386
|
isUserConnected,
|
|
390
387
|
isVerifying,
|
|
388
|
+
linkedWallets: primaryWallet ? [primaryWallet, ...secondaryWallets] : [],
|
|
391
389
|
loadingNetwork,
|
|
392
390
|
loginWithEmail,
|
|
393
391
|
multiWallet,
|
|
@@ -446,6 +444,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
|
|
|
446
444
|
socialMediaIconUrl: ((_a = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.general) === null || _a === void 0 ? void 0 : _a.supportUrls) || socialMediaIconUrl,
|
|
447
445
|
socialMediaLinkText,
|
|
448
446
|
socialMediaUrl,
|
|
447
|
+
socialProvidersFilter,
|
|
449
448
|
termsOfServiceUrl,
|
|
450
449
|
theme,
|
|
451
450
|
toolkitEnabled,
|
|
@@ -473,13 +472,11 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
|
|
|
473
472
|
computeConnectedStateForWallets,
|
|
474
473
|
connectWallet,
|
|
475
474
|
connectedWallet,
|
|
476
|
-
|
|
477
|
-
customTermsOfServices,
|
|
478
|
-
primaryWallet,
|
|
479
|
-
secondaryWallets,
|
|
480
|
-
connectedWalletsInfo,
|
|
475
|
+
connectedWallets,
|
|
481
476
|
consumeNonce,
|
|
482
477
|
cssOverrides,
|
|
478
|
+
customPrivacyPolicy,
|
|
479
|
+
customTermsOfServices,
|
|
483
480
|
debugError,
|
|
484
481
|
onboardingOnlyJwt,
|
|
485
482
|
defaultNumberOfWalletsToShow,
|
|
@@ -490,6 +487,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
|
|
|
490
487
|
getConnectedWalletById,
|
|
491
488
|
getNameService,
|
|
492
489
|
handleLogOut,
|
|
490
|
+
unlinkConnectedWallet,
|
|
493
491
|
handleUnlinkWallet,
|
|
494
492
|
isAuthenticated,
|
|
495
493
|
isBridgeFlow,
|
|
@@ -497,6 +495,8 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
|
|
|
497
495
|
isSingleWalletAccount,
|
|
498
496
|
isUserConnected,
|
|
499
497
|
isVerifying,
|
|
498
|
+
primaryWallet,
|
|
499
|
+
secondaryWallets,
|
|
500
500
|
loadingNetwork,
|
|
501
501
|
loginWithEmail,
|
|
502
502
|
multiWallet,
|
|
@@ -542,10 +542,10 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
|
|
|
542
542
|
socialMediaIconUrl,
|
|
543
543
|
socialMediaLinkText,
|
|
544
544
|
socialMediaUrl,
|
|
545
|
+
socialProvidersFilter,
|
|
545
546
|
termsOfServiceUrl,
|
|
546
547
|
theme,
|
|
547
548
|
toolkitEnabled,
|
|
548
|
-
unlinkConnectedWallet,
|
|
549
549
|
user,
|
|
550
550
|
walletUiUtils,
|
|
551
551
|
wallets,
|
|
@@ -2,12 +2,11 @@ import { Dispatch, SetStateAction, ReactNode } from 'react';
|
|
|
2
2
|
import { WalletConnector, FetchPublicAddressOpts, WalletConnectorsMethod, Chain } from '@dynamic-labs/wallet-connector-core';
|
|
3
3
|
import { DynamicJwt, NameServiceData, ProjectSettings } from '@dynamic-labs/sdk-api';
|
|
4
4
|
import { LogLevel } from '@dynamic-labs/logger';
|
|
5
|
-
import { EvmNetwork, NetworkConfigurationMap, WalletUiUtils } from '@dynamic-labs/types';
|
|
5
|
+
import { EvmNetwork, NetworkConfigurationMap, SocialProviderFilter, WalletUiUtils } from '@dynamic-labs/types';
|
|
6
6
|
import { WalletOption, UserProfile, Wallet, MultiWalletWidgetState, AccountSwitchState, AwaitingSignatureState, ChainToWalletMap, AuthModeType, DynamicRPCProviders, DynamicEventsCallbacks, WalletWithAction, AccessDeniedCustomButton } from '../../shared';
|
|
7
7
|
import { ThemeData, ThemeSetting } from '../ThemeContext';
|
|
8
8
|
import { MultiWalletWidgetStateSetter } from '../../utils/hooks/multiWallet';
|
|
9
9
|
import { SocialNetworkIconType } from '../../utils/functions/getSocialNetworkIcon';
|
|
10
|
-
import { ConnectedWalletConnectorType } from '../../utils/hooks/useConnectWallet/useConnectWallet';
|
|
11
10
|
import { Callback } from './useCustomerCallbacks';
|
|
12
11
|
import { DisplayOrder, SetDisplayOrderPriority } from './hooks';
|
|
13
12
|
export type ChainsToConnect = {
|
|
@@ -34,9 +33,9 @@ export interface IDynamicContext {
|
|
|
34
33
|
connectWallet: (walletConnector: WalletConnector, fetchPublicAddressOpts?: FetchPublicAddressOpts) => Promise<string>;
|
|
35
34
|
connectedWallet: Wallet | null;
|
|
36
35
|
connectedWallets: Wallet[];
|
|
36
|
+
linkedWallets: Wallet[];
|
|
37
37
|
isUserConnected: boolean;
|
|
38
38
|
setConnectedUser: (value: boolean | ((val: boolean) => boolean)) => void;
|
|
39
|
-
connectedWalletsInfo: ConnectedWalletConnectorType[] | [];
|
|
40
39
|
consumeNonce: () => string | undefined;
|
|
41
40
|
cssOverrides?: string | JSX.Element;
|
|
42
41
|
customPrivacyPolicy?: ReactNode;
|
|
@@ -128,6 +127,7 @@ export interface IDynamicContext {
|
|
|
128
127
|
walletUiUtils: WalletUiUtils;
|
|
129
128
|
wallets: WalletOption[];
|
|
130
129
|
walletsFilter?: (options: WalletOption[]) => WalletOption[];
|
|
130
|
+
socialProvidersFilter?: SocialProviderFilter;
|
|
131
131
|
removeConnectedWalletsInfo: () => void;
|
|
132
132
|
}
|
|
133
133
|
export interface DynamicContextProps {
|
|
@@ -179,8 +179,9 @@ export interface DynamicContextProps {
|
|
|
179
179
|
walletConnectV1Bridge?: string;
|
|
180
180
|
walletConnectors?: WalletConnectorsMethod[];
|
|
181
181
|
walletsFilter?: (options: WalletOption[]) => WalletOption[];
|
|
182
|
+
socialProvidersFilter?: SocialProviderFilter;
|
|
182
183
|
};
|
|
183
184
|
theme?: ThemeData | ThemeSetting;
|
|
184
185
|
}
|
|
185
186
|
export declare const DynamicContext: import("react").Context<IDynamicContext | undefined>;
|
|
186
|
-
export declare const DynamicContextProvider: ({ settings: { accessDeniedMessagePrimary, accessDeniedMessageSecondary, accessDeniedButton, apiBaseUrl, appLogoUrl, appName, walletsByChain, cssOverrides, defaultNumberOfWalletsToShow, flowNetwork, initialAuthenticationMode, debugError, displayTermsOfService, newToWeb3WalletChainMap, enableVisitTrackingOnConnectOnly, environmentId, localStorageSuffix, eventsCallbacks, evmNetworks, walletsFilter, logLevel, multiWallet: deprecatedMultiWallet, notInTheListImageUrl, onboardingImageUrl, policiesConsentInnerComponent, customPrivacyPolicy, privacyPolicyUrl, signWithEmailWalletName, socialMediaLinkText, socialMediaIconUrl, socialMediaUrl, customTermsOfServices, termsOfServiceUrl, toolkitEnabled, siweStatement, shadowDOMEnabled, walletConnectV1Bridge, walletConnectors: walletConnectorsProp, }, children, theme, }: DynamicContextProps) => JSX.Element;
|
|
187
|
+
export declare const DynamicContextProvider: ({ settings: { accessDeniedMessagePrimary, accessDeniedMessageSecondary, accessDeniedButton, apiBaseUrl, appLogoUrl, appName, walletsByChain, cssOverrides, defaultNumberOfWalletsToShow, flowNetwork, initialAuthenticationMode, debugError, displayTermsOfService, newToWeb3WalletChainMap, enableVisitTrackingOnConnectOnly, environmentId, localStorageSuffix, eventsCallbacks, evmNetworks, walletsFilter, logLevel, multiWallet: deprecatedMultiWallet, notInTheListImageUrl, onboardingImageUrl, policiesConsentInnerComponent, customPrivacyPolicy, privacyPolicyUrl, signWithEmailWalletName, socialMediaLinkText, socialMediaIconUrl, socialMediaUrl, customTermsOfServices, termsOfServiceUrl, toolkitEnabled, siweStatement, shadowDOMEnabled, walletConnectV1Bridge, walletConnectors: walletConnectorsProp, socialProvidersFilter, }, children, theme, }: DynamicContextProps) => JSX.Element;
|
|
@@ -87,7 +87,7 @@ import { useSetShowAuthFlowWithInit } from './hooks/useSetShowAuthFlowWithInit/u
|
|
|
87
87
|
|
|
88
88
|
const EMPTY_INITIAL_USER = undefined;
|
|
89
89
|
const DynamicContext = createContext(undefined);
|
|
90
|
-
const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, accessDeniedMessageSecondary, accessDeniedButton, apiBaseUrl, appLogoUrl = 'https://demo.dynamic.xyz/assets/dynamic-logo.svg', appName = 'Dynamic Example', walletsByChain, cssOverrides, defaultNumberOfWalletsToShow = DEFAULT_NUMBER_OF_WALLETS_TO_SHOW, flowNetwork, initialAuthenticationMode = 'connect-and-sign', debugError = false, displayTermsOfService = true, newToWeb3WalletChainMap, enableVisitTrackingOnConnectOnly = true, environmentId, localStorageSuffix, eventsCallbacks, evmNetworks, walletsFilter, logLevel = 'WARN', multiWallet: deprecatedMultiWallet, notInTheListImageUrl, onboardingImageUrl, policiesConsentInnerComponent, customPrivacyPolicy, privacyPolicyUrl, signWithEmailWalletName, socialMediaLinkText, socialMediaIconUrl, socialMediaUrl, customTermsOfServices, termsOfServiceUrl, toolkitEnabled, siweStatement, shadowDOMEnabled = true, walletConnectV1Bridge, walletConnectors: walletConnectorsProp, }, children, theme, }) => {
|
|
90
|
+
const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, accessDeniedMessageSecondary, accessDeniedButton, apiBaseUrl, appLogoUrl = 'https://demo.dynamic.xyz/assets/dynamic-logo.svg', appName = 'Dynamic Example', walletsByChain, cssOverrides, defaultNumberOfWalletsToShow = DEFAULT_NUMBER_OF_WALLETS_TO_SHOW, flowNetwork, initialAuthenticationMode = 'connect-and-sign', debugError = false, displayTermsOfService = true, newToWeb3WalletChainMap, enableVisitTrackingOnConnectOnly = true, environmentId, localStorageSuffix, eventsCallbacks, evmNetworks, walletsFilter, logLevel = 'WARN', multiWallet: deprecatedMultiWallet, notInTheListImageUrl, onboardingImageUrl, policiesConsentInnerComponent, customPrivacyPolicy, privacyPolicyUrl, signWithEmailWalletName, socialMediaLinkText, socialMediaIconUrl, socialMediaUrl, customTermsOfServices, termsOfServiceUrl, toolkitEnabled, siweStatement, shadowDOMEnabled = true, walletConnectV1Bridge, walletConnectors: walletConnectorsProp, socialProvidersFilter, }, children, theme, }) => {
|
|
91
91
|
var _a, _b, _c, _d, _e, _f, _g;
|
|
92
92
|
if (!environmentId) {
|
|
93
93
|
throw new MissingEnvironmentIdError();
|
|
@@ -356,10 +356,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
|
|
|
356
356
|
computeConnectedStateForWallets,
|
|
357
357
|
connectWallet,
|
|
358
358
|
connectedWallet,
|
|
359
|
-
connectedWallets
|
|
360
|
-
? [primaryWallet, ...secondaryWallets]
|
|
361
|
-
: [],
|
|
362
|
-
connectedWalletsInfo,
|
|
359
|
+
connectedWallets,
|
|
363
360
|
consumeNonce,
|
|
364
361
|
cssOverrides,
|
|
365
362
|
customPrivacyPolicy,
|
|
@@ -384,6 +381,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
|
|
|
384
381
|
isSingleWalletAccount,
|
|
385
382
|
isUserConnected,
|
|
386
383
|
isVerifying,
|
|
384
|
+
linkedWallets: primaryWallet ? [primaryWallet, ...secondaryWallets] : [],
|
|
387
385
|
loadingNetwork,
|
|
388
386
|
loginWithEmail,
|
|
389
387
|
multiWallet,
|
|
@@ -442,6 +440,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
|
|
|
442
440
|
socialMediaIconUrl: ((_a = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.general) === null || _a === void 0 ? void 0 : _a.supportUrls) || socialMediaIconUrl,
|
|
443
441
|
socialMediaLinkText,
|
|
444
442
|
socialMediaUrl,
|
|
443
|
+
socialProvidersFilter,
|
|
445
444
|
termsOfServiceUrl,
|
|
446
445
|
theme,
|
|
447
446
|
toolkitEnabled,
|
|
@@ -469,13 +468,11 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
|
|
|
469
468
|
computeConnectedStateForWallets,
|
|
470
469
|
connectWallet,
|
|
471
470
|
connectedWallet,
|
|
472
|
-
|
|
473
|
-
customTermsOfServices,
|
|
474
|
-
primaryWallet,
|
|
475
|
-
secondaryWallets,
|
|
476
|
-
connectedWalletsInfo,
|
|
471
|
+
connectedWallets,
|
|
477
472
|
consumeNonce,
|
|
478
473
|
cssOverrides,
|
|
474
|
+
customPrivacyPolicy,
|
|
475
|
+
customTermsOfServices,
|
|
479
476
|
debugError,
|
|
480
477
|
onboardingOnlyJwt,
|
|
481
478
|
defaultNumberOfWalletsToShow,
|
|
@@ -486,6 +483,7 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
|
|
|
486
483
|
getConnectedWalletById,
|
|
487
484
|
getNameService,
|
|
488
485
|
handleLogOut,
|
|
486
|
+
unlinkConnectedWallet,
|
|
489
487
|
handleUnlinkWallet,
|
|
490
488
|
isAuthenticated,
|
|
491
489
|
isBridgeFlow,
|
|
@@ -493,6 +491,8 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
|
|
|
493
491
|
isSingleWalletAccount,
|
|
494
492
|
isUserConnected,
|
|
495
493
|
isVerifying,
|
|
494
|
+
primaryWallet,
|
|
495
|
+
secondaryWallets,
|
|
496
496
|
loadingNetwork,
|
|
497
497
|
loginWithEmail,
|
|
498
498
|
multiWallet,
|
|
@@ -538,10 +538,10 @@ const DynamicContextProvider = ({ settings: { accessDeniedMessagePrimary, access
|
|
|
538
538
|
socialMediaIconUrl,
|
|
539
539
|
socialMediaLinkText,
|
|
540
540
|
socialMediaUrl,
|
|
541
|
+
socialProvidersFilter,
|
|
541
542
|
termsOfServiceUrl,
|
|
542
543
|
theme,
|
|
543
544
|
toolkitEnabled,
|
|
544
|
-
unlinkConnectedWallet,
|
|
545
545
|
user,
|
|
546
546
|
walletUiUtils,
|
|
547
547
|
wallets,
|
|
@@ -11,19 +11,19 @@ const useDynamicContext = () => {
|
|
|
11
11
|
if (context === undefined) {
|
|
12
12
|
throw new Error('useDynamicContext must be used within a DynamicContextProvider');
|
|
13
13
|
}
|
|
14
|
-
const { accountSwitchState,
|
|
14
|
+
const { accountSwitchState, authMode, authToken, awaitingSignatureState, connectedWallets, getNameService, handleLogOut, handleUnlinkWallet, isAuthenticated, isUserConnected, linkedWallets, loadingNetwork, loginWithEmail, multiWalletWidgetState, network, networkConfigurations, primaryWallet, qrcodeUri, rpcProviders, sdkHasLoaded, secondaryWallets, setLogInWithEmail, setMultiWalletWidgetState, setNetwork, setPrimaryWallet, setShowAuthFlow, setShowDynamicUserProfile, setShowQrcodeModal, shadowDOMEnabled, showAuthFlow, showQrcodeModal, user, walletConnector, wallets, walletsByChain, walletsToConnectByChain, } = context;
|
|
15
15
|
return {
|
|
16
16
|
accountSwitchState,
|
|
17
17
|
authMode,
|
|
18
18
|
authToken,
|
|
19
19
|
awaitingSignatureState,
|
|
20
20
|
connectedWallets,
|
|
21
|
-
connectedWalletsInfo,
|
|
22
21
|
getNameService,
|
|
23
22
|
handleLogOut,
|
|
24
23
|
handleUnlinkWallet,
|
|
25
24
|
isAuthenticated,
|
|
26
25
|
isUserConnected,
|
|
26
|
+
linkedWallets,
|
|
27
27
|
loadingNetwork,
|
|
28
28
|
loginWithEmail,
|
|
29
29
|
multiWalletWidgetState,
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { IDynamicContext } from './DynamicContext';
|
|
2
|
-
export type UseDynamicContext = Pick<IDynamicContext, 'accountSwitchState' | 'authMode' | 'authToken' | 'awaitingSignatureState' | 'connectedWallets' | 'getNameService' | 'handleLogOut' | 'handleUnlinkWallet' | 'isAuthenticated' | '
|
|
2
|
+
export type UseDynamicContext = Pick<IDynamicContext, 'accountSwitchState' | 'authMode' | 'authToken' | 'awaitingSignatureState' | 'connectedWallets' | 'getNameService' | 'handleLogOut' | 'handleUnlinkWallet' | 'isAuthenticated' | 'isUserConnected' | 'linkedWallets' | 'loadingNetwork' | 'loginWithEmail' | 'multiWalletWidgetState' | 'network' | 'networkConfigurations' | 'primaryWallet' | 'qrcodeUri' | 'rpcProviders' | 'sdkHasLoaded' | 'secondaryWallets' | 'setLogInWithEmail' | 'setMultiWalletWidgetState' | 'setNetwork' | 'setPrimaryWallet' | 'setShowAuthFlow' | 'setShowDynamicUserProfile' | 'setShowQrcodeModal' | 'shadowDOMEnabled' | 'showAuthFlow' | 'showQrcodeModal' | 'user' | 'walletConnector' | 'wallets' | 'walletsByChain' | 'walletsToConnectByChain'>;
|
|
3
3
|
export declare const useDynamicContext: () => UseDynamicContext;
|
|
@@ -7,19 +7,19 @@ const useDynamicContext = () => {
|
|
|
7
7
|
if (context === undefined) {
|
|
8
8
|
throw new Error('useDynamicContext must be used within a DynamicContextProvider');
|
|
9
9
|
}
|
|
10
|
-
const { accountSwitchState,
|
|
10
|
+
const { accountSwitchState, authMode, authToken, awaitingSignatureState, connectedWallets, getNameService, handleLogOut, handleUnlinkWallet, isAuthenticated, isUserConnected, linkedWallets, loadingNetwork, loginWithEmail, multiWalletWidgetState, network, networkConfigurations, primaryWallet, qrcodeUri, rpcProviders, sdkHasLoaded, secondaryWallets, setLogInWithEmail, setMultiWalletWidgetState, setNetwork, setPrimaryWallet, setShowAuthFlow, setShowDynamicUserProfile, setShowQrcodeModal, shadowDOMEnabled, showAuthFlow, showQrcodeModal, user, walletConnector, wallets, walletsByChain, walletsToConnectByChain, } = context;
|
|
11
11
|
return {
|
|
12
12
|
accountSwitchState,
|
|
13
13
|
authMode,
|
|
14
14
|
authToken,
|
|
15
15
|
awaitingSignatureState,
|
|
16
16
|
connectedWallets,
|
|
17
|
-
connectedWalletsInfo,
|
|
18
17
|
getNameService,
|
|
19
18
|
handleLogOut,
|
|
20
19
|
handleUnlinkWallet,
|
|
21
20
|
isAuthenticated,
|
|
22
21
|
isUserConnected,
|
|
22
|
+
linkedWallets,
|
|
23
23
|
loadingNetwork,
|
|
24
24
|
loginWithEmail,
|
|
25
25
|
multiWalletWidgetState,
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
5
5
|
var jsxRuntime = require('react/jsx-runtime');
|
|
6
6
|
var WalletListItem = require('../../../../../views/WalletList/WalletListItem/WalletListItem.cjs');
|
|
7
7
|
|
|
8
|
-
const NewToWeb3WalletItem = ({ children, style, wallet, }) => (jsxRuntime.jsx(WalletListItem.WalletListItem, { wallet: wallet,
|
|
8
|
+
const NewToWeb3WalletItem = ({ children, style, wallet, }) => (jsxRuntime.jsx(WalletListItem.WalletListItem, { wallet: wallet, usingMultiWallet: false, tile: children
|
|
9
9
|
? ({ onClick }) => (jsxRuntime.jsx("button", Object.assign({ className: 'new-to-web3--button', style: style, onClick: onClick }, { children: children })))
|
|
10
10
|
: undefined }));
|
|
11
11
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { WalletListItem } from '../../../../../views/WalletList/WalletListItem/WalletListItem.js';
|
|
3
3
|
|
|
4
|
-
const NewToWeb3WalletItem = ({ children, style, wallet, }) => (jsx(WalletListItem, { wallet: wallet,
|
|
4
|
+
const NewToWeb3WalletItem = ({ children, style, wallet, }) => (jsx(WalletListItem, { wallet: wallet, usingMultiWallet: false, tile: children
|
|
5
5
|
? ({ onClick }) => (jsx("button", Object.assign({ className: 'new-to-web3--button', style: style, onClick: onClick }, { children: children })))
|
|
6
6
|
: undefined }));
|
|
7
7
|
|
|
@@ -6,6 +6,7 @@ var sdkApi = require('@dynamic-labs/sdk-api');
|
|
|
6
6
|
var isProviderEnabled = require('../isProviderEnabled/isProviderEnabled.cjs');
|
|
7
7
|
|
|
8
8
|
const isEmailProviderEnabled = (providers) => isProviderEnabled.isProviderEnabled(providers, sdkApi.ProviderEnum.EmailOnly) ||
|
|
9
|
+
isProviderEnabled.isProviderEnabled(providers, sdkApi.ProviderEnum.Blocto) ||
|
|
9
10
|
isProviderEnabled.isProviderEnabled(providers, sdkApi.ProviderEnum.MagicLink);
|
|
10
11
|
|
|
11
12
|
exports.isEmailProviderEnabled = isEmailProviderEnabled;
|
|
@@ -2,6 +2,7 @@ import { ProviderEnum } from '@dynamic-labs/sdk-api';
|
|
|
2
2
|
import { isProviderEnabled } from '../isProviderEnabled/isProviderEnabled.js';
|
|
3
3
|
|
|
4
4
|
const isEmailProviderEnabled = (providers) => isProviderEnabled(providers, ProviderEnum.EmailOnly) ||
|
|
5
|
+
isProviderEnabled(providers, ProviderEnum.Blocto) ||
|
|
5
6
|
isProviderEnabled(providers, ProviderEnum.MagicLink);
|
|
6
7
|
|
|
7
8
|
export { isEmailProviderEnabled };
|
|
@@ -4,10 +4,10 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
4
4
|
|
|
5
5
|
var walletConnectorCore = require('@dynamic-labs/wallet-connector-core');
|
|
6
6
|
|
|
7
|
-
const isSelectedWalletAlreadyConnected = (
|
|
7
|
+
const isSelectedWalletAlreadyConnected = (linkedWallets, selectedWallet, user) => {
|
|
8
8
|
if (!user)
|
|
9
9
|
return false;
|
|
10
|
-
return
|
|
10
|
+
return linkedWallets
|
|
11
11
|
.map(({ connector }) => walletConnectorCore.normalizeWalletName(connector.name))
|
|
12
12
|
.includes(walletConnectorCore.normalizeWalletName(selectedWallet.name));
|
|
13
13
|
};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { WalletConnector } from '@dynamic-labs/wallet-connector-core';
|
|
2
2
|
import { UserProfile, Wallet } from '../../../shared/types';
|
|
3
|
-
export declare const isSelectedWalletAlreadyConnected: (
|
|
3
|
+
export declare const isSelectedWalletAlreadyConnected: (linkedWallets: Wallet[], selectedWallet: WalletConnector, user?: UserProfile | undefined) => boolean;
|
package/src/lib/utils/functions/isSelectedWalletAlreadyConnected/isSelectedWalletAlreadyConnected.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { normalizeWalletName } from '@dynamic-labs/wallet-connector-core';
|
|
2
2
|
|
|
3
|
-
const isSelectedWalletAlreadyConnected = (
|
|
3
|
+
const isSelectedWalletAlreadyConnected = (linkedWallets, selectedWallet, user) => {
|
|
4
4
|
if (!user)
|
|
5
5
|
return false;
|
|
6
|
-
return
|
|
6
|
+
return linkedWallets
|
|
7
7
|
.map(({ connector }) => normalizeWalletName(connector.name))
|
|
8
8
|
.includes(normalizeWalletName(selectedWallet.name));
|
|
9
9
|
};
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
5
5
|
var _tslib = require('../../../../../../_virtual/_tslib.cjs');
|
|
6
6
|
var getWalletProvider = require('../../../functions/getWalletProvider/getWalletProvider.cjs');
|
|
7
7
|
|
|
8
|
-
const specialCareWallets = ['slope', 'myalgo'];
|
|
8
|
+
const specialCareWallets = ['slope', 'myalgo', 'bloctoevm'];
|
|
9
9
|
const showPendingConnectView = (walletConnector, setView) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
10
10
|
const walletProvider = getWalletProvider.getWalletProvider(walletConnector);
|
|
11
11
|
// We don't want to show the pending connect view for qrCode and walletConnect
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { __awaiter } from '../../../../../../_virtual/_tslib.js';
|
|
2
2
|
import { getWalletProvider } from '../../../functions/getWalletProvider/getWalletProvider.js';
|
|
3
3
|
|
|
4
|
-
const specialCareWallets = ['slope', 'myalgo'];
|
|
4
|
+
const specialCareWallets = ['slope', 'myalgo', 'bloctoevm'];
|
|
5
5
|
const showPendingConnectView = (walletConnector, setView) => __awaiter(void 0, void 0, void 0, function* () {
|
|
6
6
|
const walletProvider = getWalletProvider(walletConnector);
|
|
7
7
|
// We don't want to show the pending connect view for qrCode and walletConnect
|
|
@@ -43,13 +43,13 @@ const useConnectAndSign = () => {
|
|
|
43
43
|
});
|
|
44
44
|
return ({ walletConnector, fetchPublicAddressOpts = undefined, }) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
45
45
|
var _a, _b;
|
|
46
|
-
yield showPendingConnectView.showPendingConnectView(walletConnector, setView);
|
|
47
46
|
try {
|
|
47
|
+
yield showPendingConnectView.showPendingConnectView(walletConnector, setView);
|
|
48
48
|
if (walletConnectorCore.isEmailWalletConnector(walletConnector)) {
|
|
49
49
|
if (walletConnectorCore.isEmailOTPWalletConnector(walletConnector)) {
|
|
50
50
|
setView('email-wallet-otp-verification-view');
|
|
51
51
|
}
|
|
52
|
-
else {
|
|
52
|
+
else if (!walletConnectorCore.isBloctoConnector(walletConnector)) {
|
|
53
53
|
setView('wait-for-email-confirmation-view');
|
|
54
54
|
}
|
|
55
55
|
}
|
|
@@ -75,7 +75,8 @@ const useConnectAndSign = () => {
|
|
|
75
75
|
setView('captcha');
|
|
76
76
|
return;
|
|
77
77
|
}
|
|
78
|
-
if (!walletConnectorCore.isEmailWalletConnector(walletConnector)
|
|
78
|
+
if (!walletConnectorCore.isEmailWalletConnector(walletConnector) ||
|
|
79
|
+
walletConnectorCore.isBloctoConnector(walletConnector)) {
|
|
79
80
|
setView('pending-signature');
|
|
80
81
|
}
|
|
81
82
|
else {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { __awaiter } from '../../../../../../_virtual/_tslib.js';
|
|
2
|
-
import { isEmailWalletConnector, isEmailOTPWalletConnector } from '@dynamic-labs/wallet-connector-core';
|
|
2
|
+
import { isEmailWalletConnector, isEmailOTPWalletConnector, isBloctoConnector } from '@dynamic-labs/wallet-connector-core';
|
|
3
3
|
import { showPendingConnectView } from '../helpers/showPendingConnectView.js';
|
|
4
4
|
import { isConnectOnly } from '../helpers/isConnectOnly.js';
|
|
5
5
|
import { useInternalDynamicContext } from '../../../../context/DynamicContext/useInternalDynamicContext.js';
|
|
@@ -39,13 +39,13 @@ const useConnectAndSign = () => {
|
|
|
39
39
|
});
|
|
40
40
|
return ({ walletConnector, fetchPublicAddressOpts = undefined, }) => __awaiter(void 0, void 0, void 0, function* () {
|
|
41
41
|
var _a, _b;
|
|
42
|
-
yield showPendingConnectView(walletConnector, setView);
|
|
43
42
|
try {
|
|
43
|
+
yield showPendingConnectView(walletConnector, setView);
|
|
44
44
|
if (isEmailWalletConnector(walletConnector)) {
|
|
45
45
|
if (isEmailOTPWalletConnector(walletConnector)) {
|
|
46
46
|
setView('email-wallet-otp-verification-view');
|
|
47
47
|
}
|
|
48
|
-
else {
|
|
48
|
+
else if (!isBloctoConnector(walletConnector)) {
|
|
49
49
|
setView('wait-for-email-confirmation-view');
|
|
50
50
|
}
|
|
51
51
|
}
|
|
@@ -71,7 +71,8 @@ const useConnectAndSign = () => {
|
|
|
71
71
|
setView('captcha');
|
|
72
72
|
return;
|
|
73
73
|
}
|
|
74
|
-
if (!isEmailWalletConnector(walletConnector)
|
|
74
|
+
if (!isEmailWalletConnector(walletConnector) ||
|
|
75
|
+
isBloctoConnector(walletConnector)) {
|
|
75
76
|
setView('pending-signature');
|
|
76
77
|
}
|
|
77
78
|
else {
|
|
@@ -28,3 +28,4 @@ export { useIsomorphicLayoutEffect } from './useIsomorphicLayoutEffect/useIsomor
|
|
|
28
28
|
export { useTimeout } from './useTimeout/useTimeout';
|
|
29
29
|
export { useInterval } from './useInterval/useInterval';
|
|
30
30
|
export { useCountdown } from './useCountdown/useCountdown';
|
|
31
|
+
export { useWalletConnectorEvents } from './useWalletConnectorEvents/useWalletConnectorEvents';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { useConnectWithEmail } from './useConnectWithEmail';
|
|
@@ -20,9 +20,8 @@ var ErrorContext = require('../../../context/ErrorContext/ErrorContext.cjs');
|
|
|
20
20
|
|
|
21
21
|
const useConnectWithEmail = ({ emailWalletConnector, handleConnect, }) => {
|
|
22
22
|
const { error } = ErrorContext.useErrorContext();
|
|
23
|
-
const [email, setEmail] = React.useState('');
|
|
24
23
|
const [loading, setLoading] = React.useState(false);
|
|
25
|
-
const connectWithEmail = () => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
24
|
+
const connectWithEmail = (email) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
|
|
26
25
|
if (!email || !emailWalletConnector || loading)
|
|
27
26
|
return;
|
|
28
27
|
setLoading(true);
|
|
@@ -42,9 +41,7 @@ const useConnectWithEmail = ({ emailWalletConnector, handleConnect, }) => {
|
|
|
42
41
|
}, [error, loading]);
|
|
43
42
|
return {
|
|
44
43
|
connectWithEmail,
|
|
45
|
-
email,
|
|
46
44
|
loading,
|
|
47
|
-
setEmail,
|
|
48
45
|
};
|
|
49
46
|
};
|
|
50
47
|
|
|
@@ -1,13 +1,10 @@
|
|
|
1
|
-
/// <reference types="react" />
|
|
2
1
|
import { IEmailWalletConnector, WalletConnector } from '@dynamic-labs/wallet-connector-core';
|
|
3
2
|
type ConnectWithEmailProps = {
|
|
4
3
|
emailWalletConnector: IEmailWalletConnector | undefined;
|
|
5
4
|
handleConnect: (walletConnector: WalletConnector) => Promise<void>;
|
|
6
5
|
};
|
|
7
6
|
export declare const useConnectWithEmail: ({ emailWalletConnector, handleConnect, }: ConnectWithEmailProps) => {
|
|
8
|
-
connectWithEmail: () => Promise<void>;
|
|
9
|
-
email: string;
|
|
7
|
+
connectWithEmail: (email: string) => Promise<void>;
|
|
10
8
|
loading: boolean;
|
|
11
|
-
setEmail: import("react").Dispatch<import("react").SetStateAction<string>>;
|
|
12
9
|
};
|
|
13
10
|
export {};
|