@dynamic-labs/sdk-react-core 3.0.0-alpha.47 → 3.0.0-alpha.48

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 CHANGED
@@ -1,4 +1,13 @@
1
1
 
2
+ ## [3.0.0-alpha.48](https://github.com/dynamic-labs/DynamicAuth/compare/v3.0.0-alpha.47...v3.0.0-alpha.48) (2024-08-21)
3
+
4
+
5
+ ### Bug Fixes
6
+
7
+ * collect user data to work when no wallet is selected ([#6670](https://github.com/dynamic-labs/DynamicAuth/issues/6670)) ([b86aae8](https://github.com/dynamic-labs/DynamicAuth/commit/b86aae8e7ceb35793f792941a34cabd19b9e65d4))
8
+ * disable cookie when running on native mobile ([#6668](https://github.com/dynamic-labs/DynamicAuth/issues/6668)) ([e52a3d9](https://github.com/dynamic-labs/DynamicAuth/commit/e52a3d94a9028e36525be2e80a9f0916efad4320))
9
+ * prevent external auth blocking pending user requirements views ([#6669](https://github.com/dynamic-labs/DynamicAuth/issues/6669)) ([848356c](https://github.com/dynamic-labs/DynamicAuth/commit/848356c57e730a8516c642da84274a236e026f40))
10
+
2
11
  ## [3.0.0-alpha.47](https://github.com/dynamic-labs/DynamicAuth/compare/v3.0.0-alpha.46...v3.0.0-alpha.47) (2024-08-21)
3
12
 
4
13
 
package/package.cjs CHANGED
@@ -3,7 +3,7 @@
3
3
 
4
4
  Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
- var version = "3.0.0-alpha.47";
6
+ var version = "3.0.0-alpha.48";
7
7
  var dependencies = {
8
8
  "@dynamic-labs/sdk-api-core": "0.0.519",
9
9
  "@hcaptcha/react-hcaptcha": "1.4.4",
package/package.js CHANGED
@@ -1,5 +1,5 @@
1
1
  'use client'
2
- var version = "3.0.0-alpha.47";
2
+ var version = "3.0.0-alpha.48";
3
3
  var dependencies = {
4
4
  "@dynamic-labs/sdk-api-core": "0.0.519",
5
5
  "@hcaptcha/react-hcaptcha": "1.4.4",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dynamic-labs/sdk-react-core",
3
- "version": "3.0.0-alpha.47",
3
+ "version": "3.0.0-alpha.48",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/dynamic-labs/dynamic-auth.git",
@@ -17,17 +17,17 @@
17
17
  "react-i18next": "13.5.0",
18
18
  "yup": "0.32.11",
19
19
  "react-international-phone": "4.2.5",
20
- "@dynamic-labs/iconic": "3.0.0-alpha.47",
21
- "@dynamic-labs/logger": "3.0.0-alpha.47",
22
- "@dynamic-labs/message-transport": "3.0.0-alpha.47",
23
- "@dynamic-labs/multi-wallet": "3.0.0-alpha.47",
24
- "@dynamic-labs/rpc-providers": "3.0.0-alpha.47",
25
- "@dynamic-labs/store": "3.0.0-alpha.47",
26
- "@dynamic-labs/types": "3.0.0-alpha.47",
27
- "@dynamic-labs/utils": "3.0.0-alpha.47",
28
- "@dynamic-labs/viem-utils": "3.0.0-alpha.47",
29
- "@dynamic-labs/wallet-book": "3.0.0-alpha.47",
30
- "@dynamic-labs/wallet-connector-core": "3.0.0-alpha.47",
20
+ "@dynamic-labs/iconic": "3.0.0-alpha.48",
21
+ "@dynamic-labs/logger": "3.0.0-alpha.48",
22
+ "@dynamic-labs/message-transport": "3.0.0-alpha.48",
23
+ "@dynamic-labs/multi-wallet": "3.0.0-alpha.48",
24
+ "@dynamic-labs/rpc-providers": "3.0.0-alpha.48",
25
+ "@dynamic-labs/store": "3.0.0-alpha.48",
26
+ "@dynamic-labs/types": "3.0.0-alpha.48",
27
+ "@dynamic-labs/utils": "3.0.0-alpha.48",
28
+ "@dynamic-labs/viem-utils": "3.0.0-alpha.48",
29
+ "@dynamic-labs/wallet-book": "3.0.0-alpha.48",
30
+ "@dynamic-labs/wallet-connector-core": "3.0.0-alpha.48",
31
31
  "eventemitter3": "5.0.1"
32
32
  },
33
33
  "devDependencies": {
@@ -0,0 +1,10 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var hasPendingMfaAction = require('../hasPendingMfaAction/hasPendingMfaAction.cjs');
7
+
8
+ const hasPendingRequirements = (user) => { var _a; return Boolean((_a = user.missingFields) === null || _a === void 0 ? void 0 : _a.length) || hasPendingMfaAction.hasPendingMfaAction(user); };
9
+
10
+ exports.hasPendingRequirements = hasPendingRequirements;
@@ -0,0 +1,2 @@
1
+ import { UserProfile } from '@dynamic-labs/types';
2
+ export declare const hasPendingRequirements: (user: UserProfile) => boolean;
@@ -0,0 +1,6 @@
1
+ 'use client'
2
+ import { hasPendingMfaAction } from '../hasPendingMfaAction/hasPendingMfaAction.js';
3
+
4
+ const hasPendingRequirements = (user) => { var _a; return Boolean((_a = user.missingFields) === null || _a === void 0 ? void 0 : _a.length) || hasPendingMfaAction(user); };
5
+
6
+ export { hasPendingRequirements };
@@ -0,0 +1 @@
1
+ export { hasPendingRequirements } from './hasPendingRequirements';
@@ -15,3 +15,4 @@ export * from './validatePassword';
15
15
  export * from './generateRandomPassword';
16
16
  export * from './usingSessionKeys';
17
17
  export * from './hasPendingMfaAction';
18
+ export * from './hasPendingRequirements';
@@ -15,14 +15,13 @@ require('../../../utils/constants/colors.cjs');
15
15
  require('../../../utils/constants/values.cjs');
16
16
  require('../../../shared/utils/classes/storage/localStorage.cjs');
17
17
  require('../../../shared/utils/classes/storage/sessionStorage.cjs');
18
- var hasPendingMfaAction = require('../../../shared/utils/functions/hasPendingMfaAction/hasPendingMfaAction.cjs');
18
+ var hasPendingRequirements = require('../../../shared/utils/functions/hasPendingRequirements/hasPendingRequirements.cjs');
19
19
  require('@dynamic-labs/utils');
20
20
  require('../../../shared/consts/index.cjs');
21
21
  var store = require('../../store.cjs');
22
22
  var useStoreWithSelector = require('../useStoreWithSelector/useStoreWithSelector.cjs');
23
23
 
24
24
  const useUser = () => {
25
- var _a;
26
25
  // after user has fully logged in (user is defined), it should never go back to
27
26
  // not being fully logged in (userWithMissingInfo defined instaed or user),
28
27
  // unless it's logged out (no user or userWithMissingInfo defined)
@@ -37,8 +36,7 @@ const useUser = () => {
37
36
  // since we won't have onboarding jwt anymore, the idea is to just store the user in LS and either use the user state
38
37
  // or userWithMissingInfo, depending on the value of missing fields or mfa required.
39
38
  // this is just following our existing logic of how we handle authToken vs onboardingOnlyToken.
40
- if (!hasFullyLoggedIn.current &&
41
- (((_a = userFromStore.missingFields) === null || _a === void 0 ? void 0 : _a.length) || hasPendingMfaAction.hasPendingMfaAction(userFromStore))) {
39
+ if (!hasFullyLoggedIn.current && hasPendingRequirements.hasPendingRequirements(userFromStore)) {
42
40
  return { userWithMissingInfo: userFromStore };
43
41
  }
44
42
  hasFullyLoggedIn.current = true;
@@ -11,14 +11,13 @@ import '../../../utils/constants/colors.js';
11
11
  import '../../../utils/constants/values.js';
12
12
  import '../../../shared/utils/classes/storage/localStorage.js';
13
13
  import '../../../shared/utils/classes/storage/sessionStorage.js';
14
- import { hasPendingMfaAction } from '../../../shared/utils/functions/hasPendingMfaAction/hasPendingMfaAction.js';
14
+ import { hasPendingRequirements } from '../../../shared/utils/functions/hasPendingRequirements/hasPendingRequirements.js';
15
15
  import '@dynamic-labs/utils';
16
16
  import '../../../shared/consts/index.js';
17
17
  import { getStore } from '../../store.js';
18
18
  import { useStoreWithSelector } from '../useStoreWithSelector/useStoreWithSelector.js';
19
19
 
20
20
  const useUser = () => {
21
- var _a;
22
21
  // after user has fully logged in (user is defined), it should never go back to
23
22
  // not being fully logged in (userWithMissingInfo defined instaed or user),
24
23
  // unless it's logged out (no user or userWithMissingInfo defined)
@@ -33,8 +32,7 @@ const useUser = () => {
33
32
  // since we won't have onboarding jwt anymore, the idea is to just store the user in LS and either use the user state
34
33
  // or userWithMissingInfo, depending on the value of missing fields or mfa required.
35
34
  // this is just following our existing logic of how we handle authToken vs onboardingOnlyToken.
36
- if (!hasFullyLoggedIn.current &&
37
- (((_a = userFromStore.missingFields) === null || _a === void 0 ? void 0 : _a.length) || hasPendingMfaAction(userFromStore))) {
35
+ if (!hasFullyLoggedIn.current && hasPendingRequirements(userFromStore)) {
38
36
  return { userWithMissingInfo: userFromStore };
39
37
  }
40
38
  hasFullyLoggedIn.current = true;
@@ -4,6 +4,7 @@
4
4
  Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
6
  var sdkApiCore = require('@dynamic-labs/sdk-api-core');
7
+ var utils = require('@dynamic-labs/utils');
7
8
  require('@dynamic-labs/store');
8
9
  require('../../constants/colors.cjs');
9
10
  require('../../constants/values.cjs');
@@ -16,7 +17,6 @@ require('react');
16
17
  require('@dynamic-labs/wallet-book');
17
18
  require('../../../shared/utils/classes/storage/localStorage.cjs');
18
19
  require('../../../shared/utils/classes/storage/sessionStorage.cjs');
19
- require('@dynamic-labs/utils');
20
20
  require('../../../shared/consts/index.cjs');
21
21
  var projectSettingsActions = require('../../../store/actions/projectSettingsActions/projectSettingsActions.cjs');
22
22
  require('../../../../../_virtual/_tslib.cjs');
@@ -91,6 +91,13 @@ require('../../../context/ReinitializeContext/ReinitializeContextProvider.cjs');
91
91
 
92
92
  const isCookieEnabled = () => {
93
93
  var _a, _b, _c, _d;
94
+ /**
95
+ * There is no cookie on native mobile applications
96
+ * so this feature must be disabled for native mobile
97
+ */
98
+ if (utils.PlatformService.isNativeMobile) {
99
+ return false;
100
+ }
94
101
  const securitySettings = (_b = (_a = projectSettingsActions.getProjectSettings()) === null || _a === void 0 ? void 0 : _a.settings) === null || _b === void 0 ? void 0 : _b.security;
95
102
  if (!securitySettings)
96
103
  return false;
@@ -1,5 +1,6 @@
1
1
  'use client'
2
2
  import { AuthStorageEnum } from '@dynamic-labs/sdk-api-core';
3
+ import { PlatformService } from '@dynamic-labs/utils';
3
4
  import '@dynamic-labs/store';
4
5
  import '../../constants/colors.js';
5
6
  import '../../constants/values.js';
@@ -12,7 +13,6 @@ import 'react';
12
13
  import '@dynamic-labs/wallet-book';
13
14
  import '../../../shared/utils/classes/storage/localStorage.js';
14
15
  import '../../../shared/utils/classes/storage/sessionStorage.js';
15
- import '@dynamic-labs/utils';
16
16
  import '../../../shared/consts/index.js';
17
17
  import { getProjectSettings } from '../../../store/actions/projectSettingsActions/projectSettingsActions.js';
18
18
  import '../../../../../_virtual/_tslib.js';
@@ -87,6 +87,13 @@ import '../../../context/ReinitializeContext/ReinitializeContextProvider.js';
87
87
 
88
88
  const isCookieEnabled = () => {
89
89
  var _a, _b, _c, _d;
90
+ /**
91
+ * There is no cookie on native mobile applications
92
+ * so this feature must be disabled for native mobile
93
+ */
94
+ if (PlatformService.isNativeMobile) {
95
+ return false;
96
+ }
90
97
  const securitySettings = (_b = (_a = getProjectSettings()) === null || _a === void 0 ? void 0 : _a.settings) === null || _b === void 0 ? void 0 : _b.security;
91
98
  if (!securitySettings)
92
99
  return false;
@@ -17,6 +17,7 @@ require('../../constants/colors.cjs');
17
17
  require('../../constants/values.cjs');
18
18
  require('../../../shared/utils/classes/storage/localStorage.cjs');
19
19
  require('../../../shared/utils/classes/storage/sessionStorage.cjs');
20
+ var hasPendingRequirements = require('../../../shared/utils/functions/hasPendingRequirements/hasPendingRequirements.cjs');
20
21
  require('../../../shared/consts/index.cjs');
21
22
  require('../../../config/ApiEndpoint.cjs');
22
23
  require('@dynamic-labs/multi-wallet');
@@ -109,7 +110,9 @@ const useExternalAuth = () => {
109
110
  externalJwt,
110
111
  });
111
112
  setCallback('authSuccess');
112
- setShowAuthFlow(false);
113
+ if (userProfile && !hasPendingRequirements.hasPendingRequirements(userProfile)) {
114
+ setShowAuthFlow(false);
115
+ }
113
116
  return userProfile;
114
117
  }
115
118
  catch (e) {
@@ -13,6 +13,7 @@ import '../../constants/colors.js';
13
13
  import '../../constants/values.js';
14
14
  import '../../../shared/utils/classes/storage/localStorage.js';
15
15
  import '../../../shared/utils/classes/storage/sessionStorage.js';
16
+ import { hasPendingRequirements } from '../../../shared/utils/functions/hasPendingRequirements/hasPendingRequirements.js';
16
17
  import '../../../shared/consts/index.js';
17
18
  import '../../../config/ApiEndpoint.js';
18
19
  import '@dynamic-labs/multi-wallet';
@@ -105,7 +106,9 @@ const useExternalAuth = () => {
105
106
  externalJwt,
106
107
  });
107
108
  setCallback('authSuccess');
108
- setShowAuthFlow(false);
109
+ if (userProfile && !hasPendingRequirements(userProfile)) {
110
+ setShowAuthFlow(false);
111
+ }
109
112
  return userProfile;
110
113
  }
111
114
  catch (e) {
@@ -0,0 +1 @@
1
+ export declare const useOnlyConnectedMode: () => boolean;
@@ -107,15 +107,16 @@ const CollectUserDataView = () => {
107
107
  const [isNetworkPickerOpen, setIsNetworkPickerOpen] = React.useState(false);
108
108
  const nameService = useFetchNameService.useFetchNameService();
109
109
  const { t } = reactI18next.useTranslation();
110
- if (!walletConnector || !userWithMissingInfo) {
110
+ if (!userWithMissingInfo) {
111
111
  return null;
112
112
  }
113
- const evmNetworks = walletConnector.evmNetworks || [];
113
+ const evmNetworks = (walletConnector === null || walletConnector === void 0 ? void 0 : walletConnector.evmNetworks) || [];
114
114
  const _isSupportedNetwork = !network || isSupportedNetwork.isSupportedNetwork({ network, walletConnector });
115
+ const shouldDisplayWrongNetworkState = !_isSupportedNetwork && Boolean(walletConnector);
115
116
  const walletAddress = (_a = userWithMissingInfo === null || userWithMissingInfo === void 0 ? void 0 : userWithMissingInfo.verifiedCredentials.find((verifiedCredential) => verifiedCredential.id === userWithMissingInfo.lastVerifiedCredentialId)) === null || _a === void 0 ? void 0 : _a.address;
116
- return (jsxRuntime.jsxs("div", { className: 'collect-user-data', "data-testid": 'collect-user-data-view', children: [jsxRuntime.jsxs("div", { className: 'collect-user-data__network-container', children: [jsxRuntime.jsxs("div", { className: 'collect-user-data__img-container', children: [(nameService === null || nameService === void 0 ? void 0 : nameService.avatar) ? (jsxRuntime.jsx("img", { src: nameService.avatar, alt: '', className: 'collect-user-data__img collect-user-data__img--rounded' })) : (jsxRuntime.jsx(AuthProviderIcon.AuthProviderIcon, { iconSize: 28 })), jsxRuntime.jsx(Typography.Typography, { variant: 'body_normal', color: 'primary', weight: 'medium', className: 'collect-user-data__wallet-address', children: (nameService === null || nameService === void 0 ? void 0 : nameService.name) || shortenWalletAddress.shortenWalletAddress(walletAddress, 3, 3) })] }), jsxRuntime.jsx(NetworkPicker.NetworkPicker, { currentNetwork: network, evmNetworks: evmNetworks, connector: walletConnector, showNetworkName: true, isNetworkPickerOpen: isNetworkPickerOpen, setIsNetworkPickerOpen: setIsNetworkPickerOpen, buttonClassName: 'collect-user-data__network-picker-button', mainClassName: 'collect-user-data__network-picker' })] }), onboardingImageUrl && (jsxRuntime.jsx("img", { className: 'collect-user-data__main-img', src: onboardingImageUrl, alt: 'onboarding' })), !_isSupportedNetwork && (jsxRuntime.jsx(ErrorContainer.ErrorContainer, { withIcon: false, className: 'collect-user-data__error--not-supported', copykey: 'dyn_collect_user_data.not_supported_network.error_message', children: t('dyn_collect_user_data.not_supported_network.error_message') })), jsxRuntime.jsxs("div", { className: classNames.classNames('collect-user-data__form', {
117
- 'collect-user-data__form--error': !_isSupportedNetwork,
118
- }), children: [jsxRuntime.jsx("div", { className: 'collect-user-data__success-icon', children: jsxRuntime.jsx(Icon.Icon, { color: 'text-primary', size: 'large', children: jsxRuntime.jsx(checkConnection.ReactComponent, {}) }) }), jsxRuntime.jsx(OnboardingUserDataForm.OnboardingUserDataForm, { disableSubmit: !_isSupportedNetwork, userProfile: userWithMissingInfo, children: !_isSupportedNetwork ? (jsxRuntime.jsxs("div", { className: 'collect-user-data__welcome-container', children: [jsxRuntime.jsx(Typography.Typography, { variant: 'title', color: 'primary', className: 'collect-user-data__welcome-title', copykey: 'dyn_collect_user_data.not_supported_network.title', children: t('dyn_collect_user_data.not_supported_network.title') }), jsxRuntime.jsx(Typography.Typography, { variant: 'body_normal', weight: 'regular', color: 'secondary', copykey: 'dyn_collect_user_data.not_supported_network.description', children: t('dyn_collect_user_data.not_supported_network.description') })] })) : (jsxRuntime.jsxs("div", { className: 'collect-user-data__welcome-container', children: [jsxRuntime.jsx(Typography.Typography, { variant: 'title', color: 'primary', className: 'collect-user-data__welcome-title', copykey: 'dyn_collect_user_data.greeting', children: (projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.general.collectUserDataWelcomeHeader) ||
117
+ return (jsxRuntime.jsxs("div", { className: 'collect-user-data', "data-testid": 'collect-user-data-view', children: [jsxRuntime.jsxs("div", { className: 'collect-user-data__network-container', children: [jsxRuntime.jsxs("div", { className: 'collect-user-data__img-container', children: [(nameService === null || nameService === void 0 ? void 0 : nameService.avatar) ? (jsxRuntime.jsx("img", { src: nameService.avatar, alt: '', className: 'collect-user-data__img collect-user-data__img--rounded' })) : (jsxRuntime.jsx(AuthProviderIcon.AuthProviderIcon, { iconSize: 28 })), jsxRuntime.jsx(Typography.Typography, { variant: 'body_normal', color: 'primary', weight: 'medium', className: 'collect-user-data__wallet-address', children: (nameService === null || nameService === void 0 ? void 0 : nameService.name) || shortenWalletAddress.shortenWalletAddress(walletAddress, 3, 3) })] }), walletConnector && (jsxRuntime.jsx(NetworkPicker.NetworkPicker, { currentNetwork: network, evmNetworks: evmNetworks, connector: walletConnector, showNetworkName: true, isNetworkPickerOpen: isNetworkPickerOpen, setIsNetworkPickerOpen: setIsNetworkPickerOpen, buttonClassName: 'collect-user-data__network-picker-button', mainClassName: 'collect-user-data__network-picker' }))] }), onboardingImageUrl && (jsxRuntime.jsx("img", { className: 'collect-user-data__main-img', src: onboardingImageUrl, alt: 'onboarding' })), shouldDisplayWrongNetworkState && (jsxRuntime.jsx(ErrorContainer.ErrorContainer, { withIcon: false, className: 'collect-user-data__error--not-supported', copykey: 'dyn_collect_user_data.not_supported_network.error_message', children: t('dyn_collect_user_data.not_supported_network.error_message') })), jsxRuntime.jsxs("div", { className: classNames.classNames('collect-user-data__form', {
118
+ 'collect-user-data__form--error': shouldDisplayWrongNetworkState,
119
+ }), children: [jsxRuntime.jsx("div", { className: 'collect-user-data__success-icon', children: jsxRuntime.jsx(Icon.Icon, { color: 'text-primary', size: 'large', children: jsxRuntime.jsx(checkConnection.ReactComponent, {}) }) }), jsxRuntime.jsx(OnboardingUserDataForm.OnboardingUserDataForm, { disableSubmit: shouldDisplayWrongNetworkState, userProfile: userWithMissingInfo, children: shouldDisplayWrongNetworkState ? (jsxRuntime.jsxs("div", { className: 'collect-user-data__welcome-container', children: [jsxRuntime.jsx(Typography.Typography, { variant: 'title', color: 'primary', className: 'collect-user-data__welcome-title', copykey: 'dyn_collect_user_data.not_supported_network.title', children: t('dyn_collect_user_data.not_supported_network.title') }), jsxRuntime.jsx(Typography.Typography, { variant: 'body_normal', weight: 'regular', color: 'secondary', copykey: 'dyn_collect_user_data.not_supported_network.description', children: t('dyn_collect_user_data.not_supported_network.description') })] })) : (jsxRuntime.jsxs("div", { className: 'collect-user-data__welcome-container', children: [jsxRuntime.jsx(Typography.Typography, { variant: 'title', color: 'primary', className: 'collect-user-data__welcome-title', copykey: 'dyn_collect_user_data.greeting', children: (projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.general.collectUserDataWelcomeHeader) ||
119
120
  t('dyn_collect_user_data.greeting', { appName }) }), jsxRuntime.jsx(Typography.Typography, { variant: 'body_normal', weight: 'regular', color: 'secondary', copykey: 'dyn_collect_user_data.description', children: (projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.general.collectUserDataWelcomeMessage) ||
120
121
  t('dyn_collect_user_data.description') })] })) }), jsxRuntime.jsx(TextButton.TextButton, { className: 'collect-user-data__log-out', onClick: handleLogOut, copykey: 'dyn_collect_user_data.log_out_button', children: t('dyn_collect_user_data.log_out_button') })] })] }));
121
122
  };
@@ -103,15 +103,16 @@ const CollectUserDataView = () => {
103
103
  const [isNetworkPickerOpen, setIsNetworkPickerOpen] = useState(false);
104
104
  const nameService = useFetchNameService();
105
105
  const { t } = useTranslation();
106
- if (!walletConnector || !userWithMissingInfo) {
106
+ if (!userWithMissingInfo) {
107
107
  return null;
108
108
  }
109
- const evmNetworks = walletConnector.evmNetworks || [];
109
+ const evmNetworks = (walletConnector === null || walletConnector === void 0 ? void 0 : walletConnector.evmNetworks) || [];
110
110
  const _isSupportedNetwork = !network || isSupportedNetwork({ network, walletConnector });
111
+ const shouldDisplayWrongNetworkState = !_isSupportedNetwork && Boolean(walletConnector);
111
112
  const walletAddress = (_a = userWithMissingInfo === null || userWithMissingInfo === void 0 ? void 0 : userWithMissingInfo.verifiedCredentials.find((verifiedCredential) => verifiedCredential.id === userWithMissingInfo.lastVerifiedCredentialId)) === null || _a === void 0 ? void 0 : _a.address;
112
- return (jsxs("div", { className: 'collect-user-data', "data-testid": 'collect-user-data-view', children: [jsxs("div", { className: 'collect-user-data__network-container', children: [jsxs("div", { className: 'collect-user-data__img-container', children: [(nameService === null || nameService === void 0 ? void 0 : nameService.avatar) ? (jsx("img", { src: nameService.avatar, alt: '', className: 'collect-user-data__img collect-user-data__img--rounded' })) : (jsx(AuthProviderIcon, { iconSize: 28 })), jsx(Typography, { variant: 'body_normal', color: 'primary', weight: 'medium', className: 'collect-user-data__wallet-address', children: (nameService === null || nameService === void 0 ? void 0 : nameService.name) || shortenWalletAddress(walletAddress, 3, 3) })] }), jsx(NetworkPicker, { currentNetwork: network, evmNetworks: evmNetworks, connector: walletConnector, showNetworkName: true, isNetworkPickerOpen: isNetworkPickerOpen, setIsNetworkPickerOpen: setIsNetworkPickerOpen, buttonClassName: 'collect-user-data__network-picker-button', mainClassName: 'collect-user-data__network-picker' })] }), onboardingImageUrl && (jsx("img", { className: 'collect-user-data__main-img', src: onboardingImageUrl, alt: 'onboarding' })), !_isSupportedNetwork && (jsx(ErrorContainer, { withIcon: false, className: 'collect-user-data__error--not-supported', copykey: 'dyn_collect_user_data.not_supported_network.error_message', children: t('dyn_collect_user_data.not_supported_network.error_message') })), jsxs("div", { className: classNames('collect-user-data__form', {
113
- 'collect-user-data__form--error': !_isSupportedNetwork,
114
- }), children: [jsx("div", { className: 'collect-user-data__success-icon', children: jsx(Icon, { color: 'text-primary', size: 'large', children: jsx(SvgCheckConnection, {}) }) }), jsx(OnboardingUserDataForm, { disableSubmit: !_isSupportedNetwork, userProfile: userWithMissingInfo, children: !_isSupportedNetwork ? (jsxs("div", { className: 'collect-user-data__welcome-container', children: [jsx(Typography, { variant: 'title', color: 'primary', className: 'collect-user-data__welcome-title', copykey: 'dyn_collect_user_data.not_supported_network.title', children: t('dyn_collect_user_data.not_supported_network.title') }), jsx(Typography, { variant: 'body_normal', weight: 'regular', color: 'secondary', copykey: 'dyn_collect_user_data.not_supported_network.description', children: t('dyn_collect_user_data.not_supported_network.description') })] })) : (jsxs("div", { className: 'collect-user-data__welcome-container', children: [jsx(Typography, { variant: 'title', color: 'primary', className: 'collect-user-data__welcome-title', copykey: 'dyn_collect_user_data.greeting', children: (projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.general.collectUserDataWelcomeHeader) ||
113
+ return (jsxs("div", { className: 'collect-user-data', "data-testid": 'collect-user-data-view', children: [jsxs("div", { className: 'collect-user-data__network-container', children: [jsxs("div", { className: 'collect-user-data__img-container', children: [(nameService === null || nameService === void 0 ? void 0 : nameService.avatar) ? (jsx("img", { src: nameService.avatar, alt: '', className: 'collect-user-data__img collect-user-data__img--rounded' })) : (jsx(AuthProviderIcon, { iconSize: 28 })), jsx(Typography, { variant: 'body_normal', color: 'primary', weight: 'medium', className: 'collect-user-data__wallet-address', children: (nameService === null || nameService === void 0 ? void 0 : nameService.name) || shortenWalletAddress(walletAddress, 3, 3) })] }), walletConnector && (jsx(NetworkPicker, { currentNetwork: network, evmNetworks: evmNetworks, connector: walletConnector, showNetworkName: true, isNetworkPickerOpen: isNetworkPickerOpen, setIsNetworkPickerOpen: setIsNetworkPickerOpen, buttonClassName: 'collect-user-data__network-picker-button', mainClassName: 'collect-user-data__network-picker' }))] }), onboardingImageUrl && (jsx("img", { className: 'collect-user-data__main-img', src: onboardingImageUrl, alt: 'onboarding' })), shouldDisplayWrongNetworkState && (jsx(ErrorContainer, { withIcon: false, className: 'collect-user-data__error--not-supported', copykey: 'dyn_collect_user_data.not_supported_network.error_message', children: t('dyn_collect_user_data.not_supported_network.error_message') })), jsxs("div", { className: classNames('collect-user-data__form', {
114
+ 'collect-user-data__form--error': shouldDisplayWrongNetworkState,
115
+ }), children: [jsx("div", { className: 'collect-user-data__success-icon', children: jsx(Icon, { color: 'text-primary', size: 'large', children: jsx(SvgCheckConnection, {}) }) }), jsx(OnboardingUserDataForm, { disableSubmit: shouldDisplayWrongNetworkState, userProfile: userWithMissingInfo, children: shouldDisplayWrongNetworkState ? (jsxs("div", { className: 'collect-user-data__welcome-container', children: [jsx(Typography, { variant: 'title', color: 'primary', className: 'collect-user-data__welcome-title', copykey: 'dyn_collect_user_data.not_supported_network.title', children: t('dyn_collect_user_data.not_supported_network.title') }), jsx(Typography, { variant: 'body_normal', weight: 'regular', color: 'secondary', copykey: 'dyn_collect_user_data.not_supported_network.description', children: t('dyn_collect_user_data.not_supported_network.description') })] })) : (jsxs("div", { className: 'collect-user-data__welcome-container', children: [jsx(Typography, { variant: 'title', color: 'primary', className: 'collect-user-data__welcome-title', copykey: 'dyn_collect_user_data.greeting', children: (projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.general.collectUserDataWelcomeHeader) ||
115
116
  t('dyn_collect_user_data.greeting', { appName }) }), jsx(Typography, { variant: 'body_normal', weight: 'regular', color: 'secondary', copykey: 'dyn_collect_user_data.description', children: (projectSettings === null || projectSettings === void 0 ? void 0 : projectSettings.general.collectUserDataWelcomeMessage) ||
116
117
  t('dyn_collect_user_data.description') })] })) }), jsx(TextButton, { className: 'collect-user-data__log-out', onClick: handleLogOut, copykey: 'dyn_collect_user_data.log_out_button', children: t('dyn_collect_user_data.log_out_button') })] })] }));
117
118
  };