@dynamic-labs/sdk-react-core 4.9.2 → 4.9.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -0
- package/package.cjs +2 -2
- package/package.js +2 -2
- package/package.json +12 -12
- package/src/index.cjs +1 -1
- package/src/index.js +1 -1
- package/src/lib/components/TosAndPp/TosAndPp.cjs +3 -1
- package/src/lib/components/TosAndPp/TosAndPp.js +3 -1
- package/src/lib/context/ErrorContext/hooks/useErrorText/useErrorText.cjs +1 -0
- package/src/lib/context/ErrorContext/hooks/useErrorText/useErrorText.js +1 -0
- package/src/lib/context/PhantomRedirectContext/useResponseHandlers.cjs +1 -0
- package/src/lib/context/PhantomRedirectContext/useResponseHandlers.js +1 -0
- package/src/lib/context/SocialRedirectContext/SocialRedirectContext.cjs +1 -0
- package/src/lib/context/SocialRedirectContext/SocialRedirectContext.js +1 -0
- package/src/lib/locale/en/translation.cjs +1 -0
- package/src/lib/locale/en/translation.d.ts +1 -0
- package/src/lib/locale/en/translation.js +1 -0
- package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.cjs +1 -0
- package/src/lib/utils/hooks/authenticationHooks/useConnectAndSign/useConnectAndSign.js +1 -0
- package/src/lib/utils/hooks/authenticationHooks/useConnectAndSignSplitSteps/useConnectAndSignSplitSteps.cjs +1 -0
- package/src/lib/utils/hooks/authenticationHooks/useConnectAndSignSplitSteps/useConnectAndSignSplitSteps.js +1 -0
- package/src/lib/utils/hooks/authenticationHooks/useSignConnectOnlyUser/useSignConnectOnlyUser.cjs +1 -0
- package/src/lib/utils/hooks/authenticationHooks/useSignConnectOnlyUser/useSignConnectOnlyUser.js +1 -0
- package/src/lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.cjs +8 -8
- package/src/lib/utils/hooks/useEmbeddedWallet/useEmbeddedWallet.js +8 -8
- package/src/lib/utils/hooks/useValidateSession/handleStoreAndEnvironmentMismatch/handleStoreAndEnvironmentMismatch.cjs +1 -3
- package/src/lib/utils/hooks/useValidateSession/handleStoreAndEnvironmentMismatch/handleStoreAndEnvironmentMismatch.d.ts +1 -2
- package/src/lib/utils/hooks/useValidateSession/handleStoreAndEnvironmentMismatch/handleStoreAndEnvironmentMismatch.js +1 -3
- package/src/lib/utils/hooks/useValidateSession/handleUserDataOutOfSync/handleUserDataOutOfSync.cjs +3 -5
- package/src/lib/utils/hooks/useValidateSession/handleUserDataOutOfSync/handleUserDataOutOfSync.d.ts +1 -2
- package/src/lib/utils/hooks/useValidateSession/handleUserDataOutOfSync/handleUserDataOutOfSync.js +3 -5
- package/src/lib/utils/hooks/useValidateSession/handleWalletInfoOutOfSync/handleWalletInfoOutOfSync.cjs +37 -0
- package/src/lib/utils/hooks/useValidateSession/handleWalletInfoOutOfSync/handleWalletInfoOutOfSync.d.ts +9 -0
- package/src/lib/utils/hooks/useValidateSession/handleWalletInfoOutOfSync/handleWalletInfoOutOfSync.js +33 -0
- package/src/lib/utils/hooks/useValidateSession/handleWalletInfoOutOfSync/index.d.ts +1 -0
- package/src/lib/utils/hooks/useValidateSession/useValidateSession.cjs +2 -0
- package/src/lib/utils/hooks/useValidateSession/useValidateSession.js +2 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,4 +1,18 @@
|
|
|
1
1
|
|
|
2
|
+
### [4.9.3](https://github.com/dynamic-labs/dynamic-auth/compare/v4.9.2...v4.9.3) (2025-03-14)
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
### Features
|
|
6
|
+
|
|
7
|
+
* allow adding extra text to ToS and PP footer using custom css ([#8290](https://github.com/dynamic-labs/dynamic-auth/issues/8290)) ([0f6eb26](https://github.com/dynamic-labs/dynamic-auth/commit/0f6eb2666ea93a32360710ba5ac14eac53e07e2d))
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
### Bug Fixes
|
|
11
|
+
|
|
12
|
+
* log out if there is a mismatch in user and wallet state ([#8300](https://github.com/dynamic-labs/dynamic-auth/issues/8300)) ([82ec2ad](https://github.com/dynamic-labs/dynamic-auth/commit/82ec2add1682a576d00dfe13aa1b9cccecf96688))
|
|
13
|
+
* sol sponsored tx for v3 ([#8288](https://github.com/dynamic-labs/dynamic-auth/issues/8288)) ([c466fba](https://github.com/dynamic-labs/dynamic-auth/commit/c466fba417d39641631e29104ec9c156dfdf7647))
|
|
14
|
+
* v3 existing wallet could not log in again ([#8282](https://github.com/dynamic-labs/dynamic-auth/issues/8282)) ([c2d68ad](https://github.com/dynamic-labs/dynamic-auth/commit/c2d68adf575fcce371e438076184ef590f346c9f))
|
|
15
|
+
|
|
2
16
|
### [4.9.2](https://github.com/dynamic-labs/dynamic-auth/compare/v4.9.1...v4.9.2) (2025-03-12)
|
|
3
17
|
|
|
4
18
|
|
package/package.cjs
CHANGED
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
|
|
4
4
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
5
|
|
|
6
|
-
var version = "4.9.
|
|
6
|
+
var version = "4.9.3";
|
|
7
7
|
var dependencies = {
|
|
8
|
-
"@dynamic-labs/sdk-api-core": "0.0.
|
|
8
|
+
"@dynamic-labs/sdk-api-core": "0.0.642",
|
|
9
9
|
"@hcaptcha/react-hcaptcha": "1.4.4",
|
|
10
10
|
"@thumbmarkjs/thumbmarkjs": "0.16.0",
|
|
11
11
|
"country-list": "2.3.0",
|
package/package.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use client'
|
|
2
|
-
var version = "4.9.
|
|
2
|
+
var version = "4.9.3";
|
|
3
3
|
var dependencies = {
|
|
4
|
-
"@dynamic-labs/sdk-api-core": "0.0.
|
|
4
|
+
"@dynamic-labs/sdk-api-core": "0.0.642",
|
|
5
5
|
"@hcaptcha/react-hcaptcha": "1.4.4",
|
|
6
6
|
"@thumbmarkjs/thumbmarkjs": "0.16.0",
|
|
7
7
|
"country-list": "2.3.0",
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dynamic-labs/sdk-react-core",
|
|
3
|
-
"version": "4.9.
|
|
3
|
+
"version": "4.9.3",
|
|
4
4
|
"dependencies": {
|
|
5
|
-
"@dynamic-labs/sdk-api-core": "0.0.
|
|
5
|
+
"@dynamic-labs/sdk-api-core": "0.0.642",
|
|
6
6
|
"@hcaptcha/react-hcaptcha": "1.4.4",
|
|
7
7
|
"@thumbmarkjs/thumbmarkjs": "0.16.0",
|
|
8
8
|
"country-list": "2.3.0",
|
|
@@ -14,16 +14,16 @@
|
|
|
14
14
|
"yup": "0.32.11",
|
|
15
15
|
"react-international-phone": "4.2.5",
|
|
16
16
|
"bs58": "5.0.0",
|
|
17
|
-
"@dynamic-labs/assert-package-version": "4.9.
|
|
18
|
-
"@dynamic-labs/iconic": "4.9.
|
|
19
|
-
"@dynamic-labs/logger": "4.9.
|
|
20
|
-
"@dynamic-labs/multi-wallet": "4.9.
|
|
21
|
-
"@dynamic-labs/rpc-providers": "4.9.
|
|
22
|
-
"@dynamic-labs/store": "4.9.
|
|
23
|
-
"@dynamic-labs/types": "4.9.
|
|
24
|
-
"@dynamic-labs/utils": "4.9.
|
|
25
|
-
"@dynamic-labs/wallet-book": "4.9.
|
|
26
|
-
"@dynamic-labs/wallet-connector-core": "4.9.
|
|
17
|
+
"@dynamic-labs/assert-package-version": "4.9.3",
|
|
18
|
+
"@dynamic-labs/iconic": "4.9.3",
|
|
19
|
+
"@dynamic-labs/logger": "4.9.3",
|
|
20
|
+
"@dynamic-labs/multi-wallet": "4.9.3",
|
|
21
|
+
"@dynamic-labs/rpc-providers": "4.9.3",
|
|
22
|
+
"@dynamic-labs/store": "4.9.3",
|
|
23
|
+
"@dynamic-labs/types": "4.9.3",
|
|
24
|
+
"@dynamic-labs/utils": "4.9.3",
|
|
25
|
+
"@dynamic-labs/wallet-book": "4.9.3",
|
|
26
|
+
"@dynamic-labs/wallet-connector-core": "4.9.3",
|
|
27
27
|
"eventemitter3": "5.0.1"
|
|
28
28
|
},
|
|
29
29
|
"devDependencies": {
|
package/src/index.cjs
CHANGED
|
@@ -91,10 +91,10 @@ require('./lib/context/UserFieldEditorContext/UserFieldEditorContext.cjs');
|
|
|
91
91
|
require('./lib/context/FieldsStateContext/FieldsStateContext.cjs');
|
|
92
92
|
var useRpcProviders = require('./lib/utils/hooks/useRpcProviders/useRpcProviders.cjs');
|
|
93
93
|
require('./lib/store/state/loadingAndLifecycle.cjs');
|
|
94
|
+
require('./lib/store/state/connectedWalletsInfo/connectedWalletsInfo.cjs');
|
|
94
95
|
require('./lib/context/AccessDeniedContext/AccessDeniedContext.cjs');
|
|
95
96
|
require('./lib/context/AccountExistsContext/AccountExistsContext.cjs');
|
|
96
97
|
require('./lib/context/ErrorContext/ErrorContext.cjs');
|
|
97
|
-
require('./lib/store/state/connectedWalletsInfo/connectedWalletsInfo.cjs');
|
|
98
98
|
require('@dynamic-labs/wallet-book');
|
|
99
99
|
require('./lib/store/state/walletOptions/walletOptions.cjs');
|
|
100
100
|
var useWalletItemActions = require('./lib/utils/hooks/useWalletItemActions/useWalletItemActions.cjs');
|
package/src/index.js
CHANGED
|
@@ -87,10 +87,10 @@ import './lib/context/UserFieldEditorContext/UserFieldEditorContext.js';
|
|
|
87
87
|
import './lib/context/FieldsStateContext/FieldsStateContext.js';
|
|
88
88
|
export { useRpcProviders } from './lib/utils/hooks/useRpcProviders/useRpcProviders.js';
|
|
89
89
|
import './lib/store/state/loadingAndLifecycle.js';
|
|
90
|
+
import './lib/store/state/connectedWalletsInfo/connectedWalletsInfo.js';
|
|
90
91
|
import './lib/context/AccessDeniedContext/AccessDeniedContext.js';
|
|
91
92
|
import './lib/context/AccountExistsContext/AccountExistsContext.js';
|
|
92
93
|
import './lib/context/ErrorContext/ErrorContext.js';
|
|
93
|
-
import './lib/store/state/connectedWalletsInfo/connectedWalletsInfo.js';
|
|
94
94
|
import '@dynamic-labs/wallet-book';
|
|
95
95
|
import './lib/store/state/walletOptions/walletOptions.js';
|
|
96
96
|
export { useWalletItemActions } from './lib/utils/hooks/useWalletItemActions/useWalletItemActions.js';
|
|
@@ -114,7 +114,9 @@ const TosAndPp = () => {
|
|
|
114
114
|
}
|
|
115
115
|
return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [termsOfServiceUrl && jsxRuntime.jsx(jsxRuntime.Fragment, { children: "\u00A0&\u00A0" }), jsxRuntime.jsx("a", { className: 'tos-and-pp__link', href: privacyPolicyUrl, target: '_blank', rel: 'noreferrer', children: "Privacy Policy" })] }));
|
|
116
116
|
};
|
|
117
|
-
|
|
117
|
+
const renderInjectedTextStart = () => (jsxRuntime.jsx(Typography.Typography, { variant: 'body_small', weight: 'regular', className: 'tos-and-pp__text', id: 'custom-tos-and-pp-footer-start', "data-testid": 'custom-tos-and-pp-footer-start' }));
|
|
118
|
+
const renderInjectedTextEnd = () => (jsxRuntime.jsx(Typography.Typography, { variant: 'body_small', weight: 'regular', className: 'tos-and-pp__text', id: 'custom-tos-and-pp-footer-end', "data-testid": 'custom-tos-and-pp-footer-end' }));
|
|
119
|
+
return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [renderInjectedTextStart(), (privacyPolicyUrl || termsOfServiceUrl) && (jsxRuntime.jsxs(Typography.Typography, { variant: 'body_small', weight: 'regular', className: 'tos-and-pp__text', children: ["By ", connectionType, ", you agree to", jsxRuntime.jsx("br", {}), "our\u00A0", renderTermsOfServices(), renderPrivacyPolicy(), "."] })), customTermsOfServices, customPrivacyPolicy, renderInjectedTextEnd()] }));
|
|
118
120
|
};
|
|
119
121
|
|
|
120
122
|
exports.TosAndPp = TosAndPp;
|
|
@@ -110,7 +110,9 @@ const TosAndPp = () => {
|
|
|
110
110
|
}
|
|
111
111
|
return (jsxs(Fragment, { children: [termsOfServiceUrl && jsx(Fragment, { children: "\u00A0&\u00A0" }), jsx("a", { className: 'tos-and-pp__link', href: privacyPolicyUrl, target: '_blank', rel: 'noreferrer', children: "Privacy Policy" })] }));
|
|
112
112
|
};
|
|
113
|
-
|
|
113
|
+
const renderInjectedTextStart = () => (jsx(Typography, { variant: 'body_small', weight: 'regular', className: 'tos-and-pp__text', id: 'custom-tos-and-pp-footer-start', "data-testid": 'custom-tos-and-pp-footer-start' }));
|
|
114
|
+
const renderInjectedTextEnd = () => (jsx(Typography, { variant: 'body_small', weight: 'regular', className: 'tos-and-pp__text', id: 'custom-tos-and-pp-footer-end', "data-testid": 'custom-tos-and-pp-footer-end' }));
|
|
115
|
+
return (jsxs(Fragment, { children: [renderInjectedTextStart(), (privacyPolicyUrl || termsOfServiceUrl) && (jsxs(Typography, { variant: 'body_small', weight: 'regular', className: 'tos-and-pp__text', children: ["By ", connectionType, ", you agree to", jsx("br", {}), "our\u00A0", renderTermsOfServices(), renderPrivacyPolicy(), "."] })), customTermsOfServices, customPrivacyPolicy, renderInjectedTextEnd()] }));
|
|
114
116
|
};
|
|
115
117
|
|
|
116
118
|
export { TosAndPp };
|
|
@@ -19,6 +19,7 @@ const mapErrorCodeToTranslation = {
|
|
|
19
19
|
[utils.ErrorCode.ACCOUNT_ALREADY_LINKED_TO_DIFFERENT_PROFILE]: 'dyn_error.account_already_linked_to_different_profile',
|
|
20
20
|
[utils.ErrorCode.CONNECTION_REJECTED]: 'dyn_error.connection_rejected',
|
|
21
21
|
[utils.ErrorCode.MISSING_PUBLIC_ADDRESS]: 'dyn_error.missing_public_address',
|
|
22
|
+
[utils.ErrorCode.CONNECTION_PROPOSAL_EXPIRED]: 'dyn_error.connection_proposal_expired',
|
|
22
23
|
};
|
|
23
24
|
/** A hook that listens to the error context and returns a translated value */
|
|
24
25
|
const useErrorText = () => {
|
|
@@ -15,6 +15,7 @@ const mapErrorCodeToTranslation = {
|
|
|
15
15
|
[ErrorCode.ACCOUNT_ALREADY_LINKED_TO_DIFFERENT_PROFILE]: 'dyn_error.account_already_linked_to_different_profile',
|
|
16
16
|
[ErrorCode.CONNECTION_REJECTED]: 'dyn_error.connection_rejected',
|
|
17
17
|
[ErrorCode.MISSING_PUBLIC_ADDRESS]: 'dyn_error.missing_public_address',
|
|
18
|
+
[ErrorCode.CONNECTION_PROPOSAL_EXPIRED]: 'dyn_error.connection_proposal_expired',
|
|
18
19
|
};
|
|
19
20
|
/** A hook that listens to the error context and returns a translated value */
|
|
20
21
|
const useErrorText = () => {
|
|
@@ -54,6 +54,7 @@ require('../FieldsStateContext/FieldsStateContext.cjs');
|
|
|
54
54
|
require('../UserFieldEditorContext/UserFieldEditorContext.cjs');
|
|
55
55
|
require('@dynamic-labs/rpc-providers');
|
|
56
56
|
require('../../store/state/loadingAndLifecycle.cjs');
|
|
57
|
+
require('../../store/state/connectedWalletsInfo/connectedWalletsInfo.cjs');
|
|
57
58
|
require('../../store/state/walletOptions/walletOptions.cjs');
|
|
58
59
|
require('react-i18next');
|
|
59
60
|
require('../../components/Accordion/components/AccordionItem/AccordionItem.cjs');
|
|
@@ -50,6 +50,7 @@ import '../FieldsStateContext/FieldsStateContext.js';
|
|
|
50
50
|
import '../UserFieldEditorContext/UserFieldEditorContext.js';
|
|
51
51
|
import '@dynamic-labs/rpc-providers';
|
|
52
52
|
import '../../store/state/loadingAndLifecycle.js';
|
|
53
|
+
import '../../store/state/connectedWalletsInfo/connectedWalletsInfo.js';
|
|
53
54
|
import '../../store/state/walletOptions/walletOptions.js';
|
|
54
55
|
import 'react-i18next';
|
|
55
56
|
import '../../components/Accordion/components/AccordionItem/AccordionItem.js';
|
|
@@ -54,6 +54,7 @@ require('../UserFieldEditorContext/UserFieldEditorContext.cjs');
|
|
|
54
54
|
require('@dynamic-labs/rpc-providers');
|
|
55
55
|
require('../../store/state/loadingAndLifecycle.cjs');
|
|
56
56
|
require('../../store/state/dynamicContextProps/dynamicContextProps.cjs');
|
|
57
|
+
require('../../store/state/connectedWalletsInfo/connectedWalletsInfo.cjs');
|
|
57
58
|
require('../../store/state/walletOptions/walletOptions.cjs');
|
|
58
59
|
require('react-i18next');
|
|
59
60
|
require('../../components/Accordion/components/AccordionItem/AccordionItem.cjs');
|
|
@@ -50,6 +50,7 @@ import '../UserFieldEditorContext/UserFieldEditorContext.js';
|
|
|
50
50
|
import '@dynamic-labs/rpc-providers';
|
|
51
51
|
import '../../store/state/loadingAndLifecycle.js';
|
|
52
52
|
import '../../store/state/dynamicContextProps/dynamicContextProps.js';
|
|
53
|
+
import '../../store/state/connectedWalletsInfo/connectedWalletsInfo.js';
|
|
53
54
|
import '../../store/state/walletOptions/walletOptions.js';
|
|
54
55
|
import 'react-i18next';
|
|
55
56
|
import '../../components/Accordion/components/AccordionItem/AccordionItem.js';
|
|
@@ -2479,6 +2479,7 @@ const translation = {
|
|
|
2479
2479
|
account_already_linked_to_different_profile: 'This social account is already linked to a different profile.',
|
|
2480
2480
|
connection_rejected: 'Connection rejected. Please try again.',
|
|
2481
2481
|
missing_public_address: 'Connection cancelled. Please try again',
|
|
2482
|
+
connection_proposal_expired: 'Connection proposal expired. Please try again.',
|
|
2482
2483
|
},
|
|
2483
2484
|
};
|
|
2484
2485
|
|
|
@@ -2475,6 +2475,7 @@ const translation = {
|
|
|
2475
2475
|
account_already_linked_to_different_profile: 'This social account is already linked to a different profile.',
|
|
2476
2476
|
connection_rejected: 'Connection rejected. Please try again.',
|
|
2477
2477
|
missing_public_address: 'Connection cancelled. Please try again',
|
|
2478
|
+
connection_proposal_expired: 'Connection proposal expired. Please try again.',
|
|
2478
2479
|
},
|
|
2479
2480
|
};
|
|
2480
2481
|
|
|
@@ -57,6 +57,7 @@ require('../../../../context/FieldsStateContext/FieldsStateContext.cjs');
|
|
|
57
57
|
require('../../../../context/UserFieldEditorContext/UserFieldEditorContext.cjs');
|
|
58
58
|
require('@dynamic-labs/rpc-providers');
|
|
59
59
|
require('../../../../store/state/loadingAndLifecycle.cjs');
|
|
60
|
+
require('../../../../store/state/connectedWalletsInfo/connectedWalletsInfo.cjs');
|
|
60
61
|
require('../../../../store/state/walletOptions/walletOptions.cjs');
|
|
61
62
|
require('react-i18next');
|
|
62
63
|
require('../../../../components/Accordion/components/AccordionItem/AccordionItem.cjs');
|
|
@@ -53,6 +53,7 @@ import '../../../../context/FieldsStateContext/FieldsStateContext.js';
|
|
|
53
53
|
import '../../../../context/UserFieldEditorContext/UserFieldEditorContext.js';
|
|
54
54
|
import '@dynamic-labs/rpc-providers';
|
|
55
55
|
import '../../../../store/state/loadingAndLifecycle.js';
|
|
56
|
+
import '../../../../store/state/connectedWalletsInfo/connectedWalletsInfo.js';
|
|
56
57
|
import '../../../../store/state/walletOptions/walletOptions.js';
|
|
57
58
|
import 'react-i18next';
|
|
58
59
|
import '../../../../components/Accordion/components/AccordionItem/AccordionItem.js';
|
|
@@ -57,6 +57,7 @@ require('../../../../context/FieldsStateContext/FieldsStateContext.cjs');
|
|
|
57
57
|
require('../../../../context/UserFieldEditorContext/UserFieldEditorContext.cjs');
|
|
58
58
|
require('@dynamic-labs/rpc-providers');
|
|
59
59
|
require('../../../../store/state/loadingAndLifecycle.cjs');
|
|
60
|
+
require('../../../../store/state/connectedWalletsInfo/connectedWalletsInfo.cjs');
|
|
60
61
|
require('../../../../store/state/walletOptions/walletOptions.cjs');
|
|
61
62
|
require('react-i18next');
|
|
62
63
|
require('../../../../components/Accordion/components/AccordionItem/AccordionItem.cjs');
|
|
@@ -53,6 +53,7 @@ import '../../../../context/FieldsStateContext/FieldsStateContext.js';
|
|
|
53
53
|
import '../../../../context/UserFieldEditorContext/UserFieldEditorContext.js';
|
|
54
54
|
import '@dynamic-labs/rpc-providers';
|
|
55
55
|
import '../../../../store/state/loadingAndLifecycle.js';
|
|
56
|
+
import '../../../../store/state/connectedWalletsInfo/connectedWalletsInfo.js';
|
|
56
57
|
import '../../../../store/state/walletOptions/walletOptions.js';
|
|
57
58
|
import 'react-i18next';
|
|
58
59
|
import '../../../../components/Accordion/components/AccordionItem/AccordionItem.js';
|
package/src/lib/utils/hooks/authenticationHooks/useSignConnectOnlyUser/useSignConnectOnlyUser.cjs
CHANGED
|
@@ -51,6 +51,7 @@ require('../../../../context/FieldsStateContext/FieldsStateContext.cjs');
|
|
|
51
51
|
require('../../../../context/UserFieldEditorContext/UserFieldEditorContext.cjs');
|
|
52
52
|
require('@dynamic-labs/rpc-providers');
|
|
53
53
|
require('../../../../store/state/loadingAndLifecycle.cjs');
|
|
54
|
+
require('../../../../store/state/connectedWalletsInfo/connectedWalletsInfo.cjs');
|
|
54
55
|
require('../../../../store/state/walletOptions/walletOptions.cjs');
|
|
55
56
|
require('react-i18next');
|
|
56
57
|
require('../../../../components/Accordion/components/AccordionItem/AccordionItem.cjs');
|
package/src/lib/utils/hooks/authenticationHooks/useSignConnectOnlyUser/useSignConnectOnlyUser.js
CHANGED
|
@@ -47,6 +47,7 @@ import '../../../../context/FieldsStateContext/FieldsStateContext.js';
|
|
|
47
47
|
import '../../../../context/UserFieldEditorContext/UserFieldEditorContext.js';
|
|
48
48
|
import '@dynamic-labs/rpc-providers';
|
|
49
49
|
import '../../../../store/state/loadingAndLifecycle.js';
|
|
50
|
+
import '../../../../store/state/connectedWalletsInfo/connectedWalletsInfo.js';
|
|
50
51
|
import '../../../../store/state/walletOptions/walletOptions.js';
|
|
51
52
|
import 'react-i18next';
|
|
52
53
|
import '../../../../components/Accordion/components/AccordionItem/AccordionItem.js';
|
|
@@ -162,23 +162,23 @@ const useEmbeddedWallet = () => {
|
|
|
162
162
|
const shouldPromptForKeyExport = React.useCallback(() => { var _a; return Boolean((_a = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _a === void 0 ? void 0 : _a.promptForKeyExport); }, [projectSettings]);
|
|
163
163
|
const embeddedWalletSettingVersion = React.useCallback(() => { var _a; return (_a = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _a === void 0 ? void 0 : _a.defaultWalletVersion; }, [projectSettings]);
|
|
164
164
|
const shouldAutoCreateEmbeddedWallet = React.useCallback((verifiedUser) => {
|
|
165
|
-
var _a, _b, _c, _d, _e
|
|
165
|
+
var _a, _b, _c, _d, _e;
|
|
166
166
|
const hasEmbeddedWalletProviderEnabled = isTurnkeyEnabled.isTurnkeyEnabled(projectSettings);
|
|
167
|
-
const defaultWalletVersion = (_a = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _a === void 0 ? void 0 : _a.defaultWalletVersion;
|
|
168
167
|
const hasPrimaryWallet = primaryWalletId.getPrimaryWalletId();
|
|
169
|
-
if (
|
|
168
|
+
if (embeddedWalletSettingVersion() === sdkApiCore.EmbeddedWalletVersionEnum.V3 &&
|
|
169
|
+
!verifiedUser) {
|
|
170
170
|
return false;
|
|
171
171
|
}
|
|
172
172
|
if (!hasEmbeddedWalletProviderEnabled || hasPrimaryWallet) {
|
|
173
173
|
return false;
|
|
174
174
|
}
|
|
175
|
-
// Turnkey specific rules
|
|
175
|
+
// Turnkey and WAAS specific rules
|
|
176
176
|
if (verifiedUser) {
|
|
177
177
|
const primaryEmbeddedChain = findPrimaryEmbeddedChain.findPrimaryEmbeddedChain(projectSettings);
|
|
178
|
-
const embeddedWalletVerifiedCredentialId = (
|
|
178
|
+
const embeddedWalletVerifiedCredentialId = (_a = findEmbeddedWalletFromVerifiedCredentials.findEmbeddedWalletFromVerifiedCredentials(verifiedUser, [
|
|
179
179
|
primaryEmbeddedChain,
|
|
180
|
-
])) === null ||
|
|
181
|
-
const AAWalletCredentialId = (
|
|
180
|
+
])) === null || _a === void 0 ? void 0 : _a.id;
|
|
181
|
+
const AAWalletCredentialId = (_c = (_b = verifiedUser.verifiedCredentials) === null || _b === void 0 ? void 0 : _b.find((vc) => vc.walletProvider === sdkApiCore.WalletProviderEnum.SmartContractWallet)) === null || _c === void 0 ? void 0 : _c.id;
|
|
182
182
|
const targetPrimaryWalletId = AAWalletCredentialId
|
|
183
183
|
? AAWalletCredentialId
|
|
184
184
|
: embeddedWalletVerifiedCredentialId;
|
|
@@ -188,7 +188,7 @@ const useEmbeddedWallet = () => {
|
|
|
188
188
|
}
|
|
189
189
|
}
|
|
190
190
|
if (isTurnkeyEnabled.isTurnkeyEnabled(projectSettings) &&
|
|
191
|
-
!((
|
|
191
|
+
!((_e = (_d = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk) === null || _d === void 0 ? void 0 : _d.embeddedWallets) === null || _e === void 0 ? void 0 : _e.automaticEmbeddedWalletCreation)) {
|
|
192
192
|
return false;
|
|
193
193
|
}
|
|
194
194
|
return true;
|
|
@@ -158,23 +158,23 @@ const useEmbeddedWallet = () => {
|
|
|
158
158
|
const shouldPromptForKeyExport = useCallback(() => { var _a; return Boolean((_a = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _a === void 0 ? void 0 : _a.promptForKeyExport); }, [projectSettings]);
|
|
159
159
|
const embeddedWalletSettingVersion = useCallback(() => { var _a; return (_a = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _a === void 0 ? void 0 : _a.defaultWalletVersion; }, [projectSettings]);
|
|
160
160
|
const shouldAutoCreateEmbeddedWallet = useCallback((verifiedUser) => {
|
|
161
|
-
var _a, _b, _c, _d, _e
|
|
161
|
+
var _a, _b, _c, _d, _e;
|
|
162
162
|
const hasEmbeddedWalletProviderEnabled = isTurnkeyEnabled(projectSettings);
|
|
163
|
-
const defaultWalletVersion = (_a = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk.embeddedWallets) === null || _a === void 0 ? void 0 : _a.defaultWalletVersion;
|
|
164
163
|
const hasPrimaryWallet = getPrimaryWalletId();
|
|
165
|
-
if (
|
|
164
|
+
if (embeddedWalletSettingVersion() === EmbeddedWalletVersionEnum.V3 &&
|
|
165
|
+
!verifiedUser) {
|
|
166
166
|
return false;
|
|
167
167
|
}
|
|
168
168
|
if (!hasEmbeddedWalletProviderEnabled || hasPrimaryWallet) {
|
|
169
169
|
return false;
|
|
170
170
|
}
|
|
171
|
-
// Turnkey specific rules
|
|
171
|
+
// Turnkey and WAAS specific rules
|
|
172
172
|
if (verifiedUser) {
|
|
173
173
|
const primaryEmbeddedChain = findPrimaryEmbeddedChain(projectSettings);
|
|
174
|
-
const embeddedWalletVerifiedCredentialId = (
|
|
174
|
+
const embeddedWalletVerifiedCredentialId = (_a = findEmbeddedWalletFromVerifiedCredentials(verifiedUser, [
|
|
175
175
|
primaryEmbeddedChain,
|
|
176
|
-
])) === null ||
|
|
177
|
-
const AAWalletCredentialId = (
|
|
176
|
+
])) === null || _a === void 0 ? void 0 : _a.id;
|
|
177
|
+
const AAWalletCredentialId = (_c = (_b = verifiedUser.verifiedCredentials) === null || _b === void 0 ? void 0 : _b.find((vc) => vc.walletProvider === WalletProviderEnum.SmartContractWallet)) === null || _c === void 0 ? void 0 : _c.id;
|
|
178
178
|
const targetPrimaryWalletId = AAWalletCredentialId
|
|
179
179
|
? AAWalletCredentialId
|
|
180
180
|
: embeddedWalletVerifiedCredentialId;
|
|
@@ -184,7 +184,7 @@ const useEmbeddedWallet = () => {
|
|
|
184
184
|
}
|
|
185
185
|
}
|
|
186
186
|
if (isTurnkeyEnabled(projectSettings) &&
|
|
187
|
-
!((
|
|
187
|
+
!((_e = (_d = projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.sdk) === null || _d === void 0 ? void 0 : _d.embeddedWallets) === null || _e === void 0 ? void 0 : _e.automaticEmbeddedWalletCreation)) {
|
|
188
188
|
return false;
|
|
189
189
|
}
|
|
190
190
|
return true;
|
|
@@ -8,19 +8,17 @@ var dynamicContextProps = require('../../../../store/state/dynamicContextProps/d
|
|
|
8
8
|
|
|
9
9
|
/**
|
|
10
10
|
* Detects envId mismtach with store.
|
|
11
|
-
* @returns true if there is no mismatch.
|
|
12
11
|
*/
|
|
13
12
|
const handleStoreAndEnvironmentMismatch = (_a) => _tslib.__awaiter(void 0, [_a], void 0, function* ({ environmentId, logout, }) {
|
|
14
13
|
const storeEnvId = dynamicContextProps.getEnvironmentId();
|
|
15
14
|
if (!storeEnvId || environmentId === storeEnvId) {
|
|
16
|
-
return
|
|
15
|
+
return;
|
|
17
16
|
}
|
|
18
17
|
yield logout('store and environment are out of sync', {
|
|
19
18
|
currentEnvId: environmentId,
|
|
20
19
|
storedEnvId: storeEnvId,
|
|
21
20
|
});
|
|
22
21
|
dynamicContextProps.setEnvironmentId(environmentId);
|
|
23
|
-
return false;
|
|
24
22
|
});
|
|
25
23
|
|
|
26
24
|
exports.handleStoreAndEnvironmentMismatch = handleStoreAndEnvironmentMismatch;
|
|
@@ -4,6 +4,5 @@ export type HandleStoreAndEnvironmentMismatchParams = {
|
|
|
4
4
|
};
|
|
5
5
|
/**
|
|
6
6
|
* Detects envId mismtach with store.
|
|
7
|
-
* @returns true if there is no mismatch.
|
|
8
7
|
*/
|
|
9
|
-
export declare const handleStoreAndEnvironmentMismatch: ({ environmentId, logout, }: HandleStoreAndEnvironmentMismatchParams) => Promise<
|
|
8
|
+
export declare const handleStoreAndEnvironmentMismatch: ({ environmentId, logout, }: HandleStoreAndEnvironmentMismatchParams) => Promise<void>;
|
|
@@ -4,19 +4,17 @@ import { getEnvironmentId, setEnvironmentId } from '../../../../store/state/dyna
|
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
6
|
* Detects envId mismtach with store.
|
|
7
|
-
* @returns true if there is no mismatch.
|
|
8
7
|
*/
|
|
9
8
|
const handleStoreAndEnvironmentMismatch = (_a) => __awaiter(void 0, [_a], void 0, function* ({ environmentId, logout, }) {
|
|
10
9
|
const storeEnvId = getEnvironmentId();
|
|
11
10
|
if (!storeEnvId || environmentId === storeEnvId) {
|
|
12
|
-
return
|
|
11
|
+
return;
|
|
13
12
|
}
|
|
14
13
|
yield logout('store and environment are out of sync', {
|
|
15
14
|
currentEnvId: environmentId,
|
|
16
15
|
storedEnvId: storeEnvId,
|
|
17
16
|
});
|
|
18
17
|
setEnvironmentId(environmentId);
|
|
19
|
-
return false;
|
|
20
18
|
});
|
|
21
19
|
|
|
22
20
|
export { handleStoreAndEnvironmentMismatch };
|
package/src/lib/utils/hooks/useValidateSession/handleUserDataOutOfSync/handleUserDataOutOfSync.cjs
CHANGED
|
@@ -14,14 +14,13 @@ var getAuthToken = require('../../../functions/getAuthToken/getAuthToken.cjs');
|
|
|
14
14
|
|
|
15
15
|
/**
|
|
16
16
|
* Detects mismatch between user and auth token.
|
|
17
|
-
* @returns true if there is no mismatch.
|
|
18
17
|
*/
|
|
19
18
|
const handleUserDataOutOfSync = (_a) => _tslib.__awaiter(void 0, [_a], void 0, function* ({ environmentId, logout, projectSettings, }) {
|
|
20
19
|
const cookieEnabled = isCookieEnabled.isCookieEnabled(projectSettings);
|
|
21
20
|
const authToken = getAuthToken.getAuthToken();
|
|
22
21
|
const user$2 = user.getUser();
|
|
23
22
|
if (authToken || !user$2) {
|
|
24
|
-
return
|
|
23
|
+
return;
|
|
25
24
|
}
|
|
26
25
|
if (user$2 && !authToken && cookieEnabled) {
|
|
27
26
|
try {
|
|
@@ -33,16 +32,15 @@ const handleUserDataOutOfSync = (_a) => _tslib.__awaiter(void 0, [_a], void 0, f
|
|
|
33
32
|
authToken,
|
|
34
33
|
user: user$2,
|
|
35
34
|
});
|
|
36
|
-
return
|
|
35
|
+
return;
|
|
37
36
|
}
|
|
38
37
|
}
|
|
39
|
-
return
|
|
38
|
+
return;
|
|
40
39
|
}
|
|
41
40
|
yield logout('user data out of sync', {
|
|
42
41
|
authToken,
|
|
43
42
|
user: user$2,
|
|
44
43
|
});
|
|
45
|
-
return false;
|
|
46
44
|
});
|
|
47
45
|
|
|
48
46
|
exports.handleUserDataOutOfSync = handleUserDataOutOfSync;
|
package/src/lib/utils/hooks/useValidateSession/handleUserDataOutOfSync/handleUserDataOutOfSync.d.ts
CHANGED
|
@@ -6,6 +6,5 @@ export type HandleUserDataOutOfSyncParams = {
|
|
|
6
6
|
};
|
|
7
7
|
/**
|
|
8
8
|
* Detects mismatch between user and auth token.
|
|
9
|
-
* @returns true if there is no mismatch.
|
|
10
9
|
*/
|
|
11
|
-
export declare const handleUserDataOutOfSync: ({ environmentId, logout, projectSettings, }: HandleUserDataOutOfSyncParams) => Promise<
|
|
10
|
+
export declare const handleUserDataOutOfSync: ({ environmentId, logout, projectSettings, }: HandleUserDataOutOfSyncParams) => Promise<void>;
|
package/src/lib/utils/hooks/useValidateSession/handleUserDataOutOfSync/handleUserDataOutOfSync.js
CHANGED
|
@@ -10,14 +10,13 @@ import { getAuthToken } from '../../../functions/getAuthToken/getAuthToken.js';
|
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
12
|
* Detects mismatch between user and auth token.
|
|
13
|
-
* @returns true if there is no mismatch.
|
|
14
13
|
*/
|
|
15
14
|
const handleUserDataOutOfSync = (_a) => __awaiter(void 0, [_a], void 0, function* ({ environmentId, logout, projectSettings, }) {
|
|
16
15
|
const cookieEnabled = isCookieEnabled(projectSettings);
|
|
17
16
|
const authToken = getAuthToken();
|
|
18
17
|
const user = getUser();
|
|
19
18
|
if (authToken || !user) {
|
|
20
|
-
return
|
|
19
|
+
return;
|
|
21
20
|
}
|
|
22
21
|
if (user && !authToken && cookieEnabled) {
|
|
23
22
|
try {
|
|
@@ -29,16 +28,15 @@ const handleUserDataOutOfSync = (_a) => __awaiter(void 0, [_a], void 0, function
|
|
|
29
28
|
authToken,
|
|
30
29
|
user,
|
|
31
30
|
});
|
|
32
|
-
return
|
|
31
|
+
return;
|
|
33
32
|
}
|
|
34
33
|
}
|
|
35
|
-
return
|
|
34
|
+
return;
|
|
36
35
|
}
|
|
37
36
|
yield logout('user data out of sync', {
|
|
38
37
|
authToken,
|
|
39
38
|
user,
|
|
40
39
|
});
|
|
41
|
-
return false;
|
|
42
40
|
});
|
|
43
41
|
|
|
44
42
|
export { handleUserDataOutOfSync };
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
'use strict';
|
|
3
|
+
|
|
4
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
5
|
+
|
|
6
|
+
var _tslib = require('../../../../../../_virtual/_tslib.cjs');
|
|
7
|
+
var user = require('../../../../store/state/user/user.cjs');
|
|
8
|
+
require('@dynamic-labs/utils');
|
|
9
|
+
require('../../../constants/values.cjs');
|
|
10
|
+
require('@dynamic-labs/sdk-api-core');
|
|
11
|
+
require('../../../../store/state/projectSettings/projectSettings.cjs');
|
|
12
|
+
var primaryWalletId = require('../../../../store/state/primaryWalletId/primaryWalletId.cjs');
|
|
13
|
+
var connectedWalletsInfo = require('../../../../store/state/connectedWalletsInfo/connectedWalletsInfo.cjs');
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Detects mismatch between wallet info.
|
|
17
|
+
* If there is primary wallet id, but no user or connected wallets info,
|
|
18
|
+
* it means it's in a bad state and we should log out.
|
|
19
|
+
*/
|
|
20
|
+
const handleWalletInfoOutOfSync = (_a) => _tslib.__awaiter(void 0, [_a], void 0, function* ({ logout, }) {
|
|
21
|
+
const primaryWalletId$1 = primaryWalletId.getPrimaryWalletId();
|
|
22
|
+
if (!primaryWalletId$1) {
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
const user$1 = user.getUser();
|
|
26
|
+
const connectedWallets = connectedWalletsInfo.getConnectedWalletsInfo();
|
|
27
|
+
if (user$1 || connectedWallets.length > 0) {
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
yield logout('wallet info is out of sync', {
|
|
31
|
+
connectedWallets,
|
|
32
|
+
primaryWalletId: primaryWalletId$1,
|
|
33
|
+
user: user$1,
|
|
34
|
+
});
|
|
35
|
+
});
|
|
36
|
+
|
|
37
|
+
exports.handleWalletInfoOutOfSync = handleWalletInfoOutOfSync;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export type HandleWalletInfoOutOfSyncParams = {
|
|
2
|
+
logout: (reason: string, params: any) => Promise<void>;
|
|
3
|
+
};
|
|
4
|
+
/**
|
|
5
|
+
* Detects mismatch between wallet info.
|
|
6
|
+
* If there is primary wallet id, but no user or connected wallets info,
|
|
7
|
+
* it means it's in a bad state and we should log out.
|
|
8
|
+
*/
|
|
9
|
+
export declare const handleWalletInfoOutOfSync: ({ logout, }: HandleWalletInfoOutOfSyncParams) => Promise<void>;
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
import { __awaiter } from '../../../../../../_virtual/_tslib.js';
|
|
3
|
+
import { getUser } from '../../../../store/state/user/user.js';
|
|
4
|
+
import '@dynamic-labs/utils';
|
|
5
|
+
import '../../../constants/values.js';
|
|
6
|
+
import '@dynamic-labs/sdk-api-core';
|
|
7
|
+
import '../../../../store/state/projectSettings/projectSettings.js';
|
|
8
|
+
import { getPrimaryWalletId } from '../../../../store/state/primaryWalletId/primaryWalletId.js';
|
|
9
|
+
import { getConnectedWalletsInfo } from '../../../../store/state/connectedWalletsInfo/connectedWalletsInfo.js';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Detects mismatch between wallet info.
|
|
13
|
+
* If there is primary wallet id, but no user or connected wallets info,
|
|
14
|
+
* it means it's in a bad state and we should log out.
|
|
15
|
+
*/
|
|
16
|
+
const handleWalletInfoOutOfSync = (_a) => __awaiter(void 0, [_a], void 0, function* ({ logout, }) {
|
|
17
|
+
const primaryWalletId = getPrimaryWalletId();
|
|
18
|
+
if (!primaryWalletId) {
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
const user = getUser();
|
|
22
|
+
const connectedWallets = getConnectedWalletsInfo();
|
|
23
|
+
if (user || connectedWallets.length > 0) {
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
yield logout('wallet info is out of sync', {
|
|
27
|
+
connectedWallets,
|
|
28
|
+
primaryWalletId,
|
|
29
|
+
user,
|
|
30
|
+
});
|
|
31
|
+
});
|
|
32
|
+
|
|
33
|
+
export { handleWalletInfoOutOfSync };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './handleWalletInfoOutOfSync';
|
|
@@ -11,6 +11,7 @@ var useDynamicEvents = require('../events/useDynamicEvents/useDynamicEvents.cjs'
|
|
|
11
11
|
var projectSettings = require('../../../store/state/projectSettings/projectSettings.cjs');
|
|
12
12
|
var handleStoreAndEnvironmentMismatch = require('./handleStoreAndEnvironmentMismatch/handleStoreAndEnvironmentMismatch.cjs');
|
|
13
13
|
var handleUserDataOutOfSync = require('./handleUserDataOutOfSync/handleUserDataOutOfSync.cjs');
|
|
14
|
+
var handleWalletInfoOutOfSync = require('./handleWalletInfoOutOfSync/handleWalletInfoOutOfSync.cjs');
|
|
14
15
|
|
|
15
16
|
const useValidateSession = ({ environmentId, handleLogOut }) => {
|
|
16
17
|
const didRunRef = React.useRef(false);
|
|
@@ -30,6 +31,7 @@ const useValidateSession = ({ environmentId, handleLogOut }) => {
|
|
|
30
31
|
yield Promise.all([
|
|
31
32
|
handleStoreAndEnvironmentMismatch.handleStoreAndEnvironmentMismatch(params),
|
|
32
33
|
handleUserDataOutOfSync.handleUserDataOutOfSync(params),
|
|
34
|
+
handleWalletInfoOutOfSync.handleWalletInfoOutOfSync(params),
|
|
33
35
|
]);
|
|
34
36
|
// Regardless of whether we logged out or not, session validation is now complete
|
|
35
37
|
loadingAndLifecycle.setLoadingAndLifecycle({ sessionValidation: true });
|
|
@@ -7,6 +7,7 @@ import { useInternalDynamicEvents } from '../events/useDynamicEvents/useDynamicE
|
|
|
7
7
|
import { useProjectSettings } from '../../../store/state/projectSettings/projectSettings.js';
|
|
8
8
|
import { handleStoreAndEnvironmentMismatch } from './handleStoreAndEnvironmentMismatch/handleStoreAndEnvironmentMismatch.js';
|
|
9
9
|
import { handleUserDataOutOfSync } from './handleUserDataOutOfSync/handleUserDataOutOfSync.js';
|
|
10
|
+
import { handleWalletInfoOutOfSync } from './handleWalletInfoOutOfSync/handleWalletInfoOutOfSync.js';
|
|
10
11
|
|
|
11
12
|
const useValidateSession = ({ environmentId, handleLogOut }) => {
|
|
12
13
|
const didRunRef = useRef(false);
|
|
@@ -26,6 +27,7 @@ const useValidateSession = ({ environmentId, handleLogOut }) => {
|
|
|
26
27
|
yield Promise.all([
|
|
27
28
|
handleStoreAndEnvironmentMismatch(params),
|
|
28
29
|
handleUserDataOutOfSync(params),
|
|
30
|
+
handleWalletInfoOutOfSync(params),
|
|
29
31
|
]);
|
|
30
32
|
// Regardless of whether we logged out or not, session validation is now complete
|
|
31
33
|
setLoadingAndLifecycle({ sessionValidation: true });
|