diff --git a/package-lock.json b/package-lock.json
index 4f870b953253..2e4e2659a25c 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -6,181 +6,16 @@
"": {
"name": "root",
"dependencies": {
- "@babel/plugin-proposal-private-property-in-object": "^7.12.1",
- "@babel/polyfill": "^7.4.4",
"@babel/preset-typescript": "^7.16.5",
- "@binary-com/binary-document-uploader": "^2.4.8",
- "@contentpass/zxcvbn": "^4.4.3",
- "@datadog/browser-logs": "^4.36.0",
- "@datadog/browser-rum": "^4.37.0",
- "@deriv/api-types": "^1.0.118",
- "@deriv/deriv-api": "^1.0.11",
- "@deriv/deriv-charts": "1.3.6",
- "@deriv/js-interpreter": "^3.0.0",
- "@deriv/ui": "^0.6.0",
- "@livechat/customer-sdk": "^2.0.4",
"@sendbird/chat": "^4.9.7",
- "@storybook/addon-actions": "^6.5.10",
- "@storybook/addon-docs": "^6.5.10",
- "@storybook/addon-essentials": "^6.5.10",
- "@storybook/addon-info": "^5.3.21",
- "@storybook/addon-interactions": "^6.5.10",
- "@storybook/addon-knobs": "^6.4.0",
- "@storybook/addon-links": "^6.5.10",
- "@storybook/builder-webpack5": "^6.5.10",
- "@storybook/manager-webpack5": "^6.5.10",
- "@storybook/react": "^6.5.10",
- "@storybook/testing-library": "^0.0.13",
- "@tanstack/react-query": "^4.28.0",
- "@tanstack/react-query-devtools": "^4.28.0",
- "@types/classnames": "^2.2.11",
- "@types/js-cookie": "^3.0.1",
- "@types/jsdom": "^20.0.0",
- "@types/loadjs": "^4.0.1",
- "@types/lodash.debounce": "^4.0.7",
- "@types/lodash.merge": "^4.6.7",
- "@types/lodash.throttle": "^4.1.7",
- "@types/object.fromentries": "^2.0.0",
- "@types/qrcode.react": "^1.0.2",
- "@types/react-loadable": "^5.5.6",
"@types/react-transition-group": "^4.4.4",
- "@types/ws": "^8.5.5",
- "@typescript-eslint/eslint-plugin": "5.45.0",
- "@typescript-eslint/parser": "5.45.0",
- "@xmldom/xmldom": "^0.8.4",
- "acorn": "^6.1.1",
- "babel-core": "^6.26.3",
- "babel-eslint": "^10.1.0",
"babel-jest": "^27.3.1",
- "babel-loader": "^8.1.0",
- "binary-utils": "^4.23.0",
- "blockly": "3.20191014.4",
- "bowser": "^2.9.0",
- "canvas-toBlob": "^1.0.0",
- "circular-dependency-plugin": "^5.2.2",
- "classnames": "^2.2.6",
- "clean-webpack-plugin": "^3.0.0",
- "commander": "^3.0.2",
- "concurrently": "^5.3.0",
- "copy-webpack-plugin": "^9.0.1",
- "copy-webpack-plugin-v6": "npm:copy-webpack-plugin@6",
- "crc-32": "^1.2.0",
- "cross-env": "^5.2.0",
- "css-hot-loader": "^1.4.4",
- "css-loader": "^5.0.1",
- "css-minimizer-webpack-plugin": "^3.0.1",
- "deep-diff": "^1.0.2",
"dotenv": "^8.2.0",
- "embla-carousel-react": "^8.0.0-rc12",
- "eslint-config-airbnb-base": "^14.2.1",
- "eslint-config-binary": "^1.0.2",
- "eslint-config-prettier": "^7.2.0",
- "eslint-formatter-pretty": "^4.0.0",
- "eslint-import-resolver-webpack": "^0.13.0",
- "eslint-plugin-import": "^2.23.4",
- "eslint-plugin-local-rules": "2.0.0",
- "eslint-plugin-prettier": "^3.3.1",
- "eslint-plugin-react": "^7.22.0",
- "eslint-plugin-react-hooks": "^4.2.0",
- "eslint-plugin-simple-import-sort": "^10.0.0",
- "eslint-plugin-sort-destructure-keys": "^1.5.0",
- "eslint-plugin-typescript-sort-keys": "^2.3.0",
- "extend": "^3.0.2",
- "file-loader": "^6.2.0",
- "file-saver": "^2.0.2",
- "fork-ts-checker-webpack-plugin": "^6.5.0",
- "formik": "^2.1.4",
- "framer-motion": "^6.5.1",
- "gh-pages": "^2.1.1",
- "git-revision-webpack-plugin": "^5.0.0",
- "glob": "^7.1.5",
- "history": "^5.0.0",
- "html-loader": "^1.3.2",
- "html-webpack-plugin": "^5.0.0-beta.5",
- "html-webpack-tags-plugin": "^2.0.17",
- "i18n-iso-countries": "^6.8.0",
- "i18next": "^22.4.6",
- "ignore-styles": "^5.0.1",
- "immutable": "^3.8.2",
- "js-cookie": "^2.2.1",
- "jsdom": "^21.1.1",
- "jsdom-global": "^2.1.1",
- "loader-utils": "^1.1.0",
- "loadjs": "^4.2.0",
- "localforage": "^1.9.0",
- "lodash.debounce": "^4.0.8",
- "lodash.merge": "^4.6.2",
- "lodash.throttle": "^4.1.1",
- "lz-string": "^1.4.4",
- "mini-css-extract-plugin": "^1.3.4",
- "mobx": "^6.6.1",
- "mobx-persist-store": "1.1.2",
- "mobx-react": "^7.5.1",
- "mobx-react-lite": "^3.4.0",
- "mobx-utils": "^6.0.5",
- "mock-local-storage": "^1.1.8",
- "moment": "^2.29.2",
- "null-loader": "^4.0.1",
- "object.fromentries": "^2.0.0",
- "onfido-sdk-ui": "^11.0.0",
- "pako": "^1.0.11",
- "postcss-loader": "^6.2.1",
- "postcss-preset-env": "^7.4.3",
- "postcss-scss": "^4.0.6",
- "preload-webpack-plugin": "^3.0.0-beta.4",
- "promise-polyfill": "^8.1.3",
- "prop-types": "^15.7.2",
- "qrcode.react": "^1.0.0",
- "raw-loader": "^4.0.0",
"react": "^17.0.2",
- "react-content-loader": "^6.2.0",
- "react-div-100vh": "^0.3.8",
"react-dom": "^17.0.2",
- "react-dropzone": "11.0.1",
- "react-i18next": "^11.11.0",
- "react-joyride": "^2.5.3",
- "react-loadable": "^5.5.0",
- "react-qrcode": "^0.3.5",
- "react-rnd": "^10.4.1",
- "react-router": "^5.2.0",
- "react-router-dom": "^5.2.0",
- "react-simple-star-rating": "4.0.4",
- "react-svg-loader": "^3.0.3",
- "react-swipeable": "^6.2.1",
- "react-tiny-popover": "^7.0.1",
- "react-transition-group": "4.4.2",
- "react-virtualized": "npm:@enykeev/react-virtualized@^9.22.4-mirror.1",
- "react-window": "^1.8.5",
- "redux": "^4.0.1",
- "redux-thunk": "^2.2.0",
- "resolve-url-loader": "^3.1.2",
- "rimraf": "^3.0.2",
- "rudder-sdk-js": "^2.35.0",
- "sass": "^1.62.1",
- "sass-loader": "^12.6.0",
- "sass-resources-loader": "^2.1.1",
- "scratch-blocks": "0.1.0-prerelease.20200917235131",
"selfsigned": "^2.1.1",
- "shx": "^0.3.2",
- "source-map-loader": "^1.1.2",
- "style-loader": "^1.2.1",
- "svg-sprite-loader": "^6.0.11",
- "svgo": "^2.8.0",
- "svgo-loader": "^3.0.0",
- "terser-webpack-plugin": "^5.1.1",
"typescript": "^4.6.3",
- "usehooks-ts": "^2.7.0",
- "web-push-notifications": "^3.33.0",
- "webpack": "^5.81.0",
- "webpack-bundle-analyzer": "^4.3.0",
- "webpack-cli": "^4.7.2",
- "webpack-dev-middleware": "^5.0.0",
- "webpack-dev-server": "^3.11.2",
- "webpack-manifest-plugin": "^4.0.2",
- "webpack-node-externals": "^2.5.2",
- "workbox-webpack-plugin": "^6.0.2",
- "ws": "^8.13.0",
- "yup": "^0.32.11"
+ "ws": "^8.13.0"
},
"devDependencies": {
"@babel/core": "^7.12.10",
@@ -25201,11 +25036,6 @@
"eslint-plugin-playwright": "^0.9.0"
}
},
- "node_modules/eslint-plugin-local-rules": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/eslint-plugin-local-rules/-/eslint-plugin-local-rules-2.0.0.tgz",
- "integrity": "sha512-sWueme0kUcP0JC1+6OBDQ9edBDVFJR92WJHSRbhiRExlenMEuUisdaVBPR+ItFBFXo2Pdw6FD2UfGZWkz8e93g=="
- },
"node_modules/eslint-plugin-playwright": {
"version": "0.9.0",
"resolved": "https://registry.npmjs.org/eslint-plugin-playwright/-/eslint-plugin-playwright-0.9.0.tgz",
diff --git a/packages/wallets/.eslintrc.js b/packages/wallets/.eslintrc.js
index d9309298044a..567a708bc232 100644
--- a/packages/wallets/.eslintrc.js
+++ b/packages/wallets/.eslintrc.js
@@ -52,6 +52,7 @@ module.exports = {
'typescript-sort-keys/interface': 'warn',
'typescript-sort-keys/string-enum': 'warn',
camelcase: 'error',
+ 'import/no-extraneous-dependencies': ['off', { devDependencies: ['**/*.spec.*', '**/*.test.*', '**/*.d.ts*'] }],
},
overrides: [
{
diff --git a/packages/wallets/src/components/ExternalTradingPlatforms/AddedDxtradeAccountsList/AddedDxtradeAccountsList.tsx b/packages/wallets/src/components/ExternalTradingPlatforms/AddedDxtradeAccountsList/AddedDxtradeAccountsList.tsx
index 02b08f5d427e..5c64af02947c 100644
--- a/packages/wallets/src/components/ExternalTradingPlatforms/AddedDxtradeAccountsList/AddedDxtradeAccountsList.tsx
+++ b/packages/wallets/src/components/ExternalTradingPlatforms/AddedDxtradeAccountsList/AddedDxtradeAccountsList.tsx
@@ -28,13 +28,13 @@ const AddedDxtradeAccountsList: React.FC = () => {
>
{data?.map(account => (
- <>
+
Deriv X
{account?.display_balance} {account?.currency}
{account.login}
- >
+
))}
diff --git a/packages/wallets/src/components/ExternalTradingPlatforms/GetMoreMT5Accounts/GetMoreMT5Accounts.scss b/packages/wallets/src/components/ExternalTradingPlatforms/GetMoreMT5Accounts/GetMoreMT5Accounts.scss
index 85e5a8cf3123..f2ba85fd1b28 100644
--- a/packages/wallets/src/components/ExternalTradingPlatforms/GetMoreMT5Accounts/GetMoreMT5Accounts.scss
+++ b/packages/wallets/src/components/ExternalTradingPlatforms/GetMoreMT5Accounts/GetMoreMT5Accounts.scss
@@ -47,4 +47,15 @@
}
}
}
+
+ &-text {
+ color: var(--system-dark-1-prominent-text, #fff);
+ text-align: center;
+
+ /* desktop/paragraph/P2 - bold */
+ font-size: 14px;
+ font-style: normal;
+ font-weight: 700;
+ line-height: 20px; /* 142.857% */
+ }
}
diff --git a/packages/wallets/src/components/ExternalTradingPlatforms/GetMoreMT5Accounts/GetMoreMT5Accounts.tsx b/packages/wallets/src/components/ExternalTradingPlatforms/GetMoreMT5Accounts/GetMoreMT5Accounts.tsx
index a938d8471e0d..40637fe79a51 100644
--- a/packages/wallets/src/components/ExternalTradingPlatforms/GetMoreMT5Accounts/GetMoreMT5Accounts.tsx
+++ b/packages/wallets/src/components/ExternalTradingPlatforms/GetMoreMT5Accounts/GetMoreMT5Accounts.tsx
@@ -1,10 +1,14 @@
import React from 'react';
import AddIcon from '../../../public/images/add-icon.svg';
+import { useModal } from '../../ModalProvider';
+import { MT5AccountTypeModal } from '../../MT5AccountTypeModal';
import './GetMoreMT5Accounts.scss';
const GetMoreMT5Accounts: React.FC = () => {
+ const { show } = useModal();
+
return (
-
+
show(
)}>
diff --git a/packages/wallets/src/components/ExternalTradingPlatforms/MT5AccountType/MT5AccountType.scss b/packages/wallets/src/components/ExternalTradingPlatforms/MT5AccountType/MT5AccountType.scss
new file mode 100644
index 000000000000..17e3f76d697e
--- /dev/null
+++ b/packages/wallets/src/components/ExternalTradingPlatforms/MT5AccountType/MT5AccountType.scss
@@ -0,0 +1,24 @@
+.wallets-mt5-account-type {
+ display: flex;
+ align-items: center;
+ flex-shrink: 0;
+ border-radius: 8px;
+ background: var(--system-light-8-primary-background, #fff);
+
+ &-content {
+ width: 80vw;
+ height: 70vh;
+ display: flex;
+ padding: 24px;
+ flex-direction: row;
+ justify-content: center;
+ align-items: center;
+ gap: 24px;
+ flex: 1 0 0;
+ align-self: stretch;
+
+ @include mobile {
+ flex-direction: column;
+ }
+ }
+}
diff --git a/packages/wallets/src/components/ExternalTradingPlatforms/MT5AccountType/MT5AccountType.tsx b/packages/wallets/src/components/ExternalTradingPlatforms/MT5AccountType/MT5AccountType.tsx
new file mode 100644
index 000000000000..a08a0fe82d3e
--- /dev/null
+++ b/packages/wallets/src/components/ExternalTradingPlatforms/MT5AccountType/MT5AccountType.tsx
@@ -0,0 +1,48 @@
+import React from 'react';
+import DerivedMT5 from '../../../public/images/mt5-derived.svg';
+import FinancialMT5 from '../../../public/images/mt5-financial.svg';
+import SwapFreeMT5 from '../../../public/images/mt5-swap-free.svg';
+import { MT5AccountTypeCard } from '../MT5AccountTypeCard';
+import './MT5AccountType.scss';
+
+const marketTypeDetailsMapper = {
+ all: {
+ description:
+ 'Trade swap-free CFDs on MT5 with synthetics, forex, stocks, stock indices, cryptocurrencies, and ETFs.',
+ icon:
,
+ title: 'Swap-Free',
+ },
+ financial: {
+ description: 'Trade CFDs on MT5 with forex, stocks and indices, commodities, cryptocurrencies, and ETFs.',
+ icon:
,
+ title: 'Financial',
+ },
+ synthetic: {
+ description: 'Trade CFDs on MT5 with derived indices that simulate real-world market movements.',
+ icon:
,
+ title: 'Derived',
+ },
+};
+
+type TProps = {
+ onMarketTypeSelect: (marketType: keyof typeof marketTypeDetailsMapper) => void;
+ selectedMarketType?: keyof typeof marketTypeDetailsMapper;
+};
+
+const MT5AccountType: React.FC
= ({ onMarketTypeSelect, selectedMarketType }) => (
+
+ {Object.entries(marketTypeDetailsMapper).map(([key, value]) => (
+ onMarketTypeSelect(key === selectedMarketType ? undefined : key)}
+ title={value.title}
+ />
+ ))}
+
+);
+
+export default MT5AccountType;
diff --git a/packages/wallets/src/components/ExternalTradingPlatforms/MT5AccountType/index.ts b/packages/wallets/src/components/ExternalTradingPlatforms/MT5AccountType/index.ts
new file mode 100644
index 000000000000..b70b17814bba
--- /dev/null
+++ b/packages/wallets/src/components/ExternalTradingPlatforms/MT5AccountType/index.ts
@@ -0,0 +1 @@
+export { default as MT5AccountType } from './MT5AccountType';
diff --git a/packages/wallets/src/components/ExternalTradingPlatforms/MT5AccountTypeCard/MT5AccountTypeCard.scss b/packages/wallets/src/components/ExternalTradingPlatforms/MT5AccountTypeCard/MT5AccountTypeCard.scss
new file mode 100644
index 000000000000..d299d41ffce8
--- /dev/null
+++ b/packages/wallets/src/components/ExternalTradingPlatforms/MT5AccountTypeCard/MT5AccountTypeCard.scss
@@ -0,0 +1,67 @@
+.wallets-mt5-account-type-card {
+ cursor: pointer;
+ &-list {
+ display: flex;
+ width: 264px;
+ height: 320px;
+ align-items: flex-start;
+
+ &-content {
+ display: flex;
+ align-items: flex-start;
+ flex: 1 0 0;
+ padding: 24px;
+ align-self: stretch;
+ border-radius: 16px;
+ border: 1px solid var(--system-light-5-active-background, #d6dadb);
+ background: var(--system-light-8-primary-background, #fff);
+
+ &-details {
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ gap: 24px;
+ align-self: stretch;
+ justify-content: center;
+
+ &-title-description {
+ display: flex;
+ flex-direction: column;
+ align-items: center;
+ gap: 8px;
+ align-self: stretch;
+ }
+
+ &-title {
+ flex: 1 0 0;
+ color: var(--system-light-1-prominent-text, #333);
+ text-align: center;
+ align-items: center;
+ display: flex;
+
+ /* desktop/subtitle/Sub 2 - bold */
+ font-size: 20px;
+ font-style: normal;
+ font-weight: 700;
+ line-height: 30px; /* 150% */
+ }
+
+ &-description {
+ align-self: stretch;
+ color: var(--system-light-2-general-text, #333);
+ text-align: center;
+
+ /* desktop/paragraph/P2 - regular */
+ font-size: 14px;
+ font-style: normal;
+ font-weight: 400;
+ line-height: 20px; /* 142.857% */
+ }
+ }
+ }
+ }
+ &-selected {
+ border-radius: 16px;
+ box-shadow: 0 0 5px 2px rgba(0, 0, 0, 0.2);
+ }
+}
diff --git a/packages/wallets/src/components/ExternalTradingPlatforms/MT5AccountTypeCard/MT5AccountTypeCard.tsx b/packages/wallets/src/components/ExternalTradingPlatforms/MT5AccountTypeCard/MT5AccountTypeCard.tsx
new file mode 100644
index 000000000000..6adab1bf50ee
--- /dev/null
+++ b/packages/wallets/src/components/ExternalTradingPlatforms/MT5AccountTypeCard/MT5AccountTypeCard.tsx
@@ -0,0 +1,32 @@
+import React from 'react';
+import './MT5AccountTypeCard.scss';
+
+type TProps = {
+ description: string;
+ icon: JSX.Element;
+ isSelected: boolean;
+ onClick: () => void;
+ title: string;
+};
+
+const MT5AccountTypeCard: React.FC = ({ description, icon, isSelected, onClick, title }) => {
+ return (
+
+
+
+
+ {icon}
+
+
{title}
+
+ {description}
+
+
+
+
+
+
+ );
+};
+
+export default MT5AccountTypeCard;
diff --git a/packages/wallets/src/components/ExternalTradingPlatforms/MT5AccountTypeCard/index.ts b/packages/wallets/src/components/ExternalTradingPlatforms/MT5AccountTypeCard/index.ts
new file mode 100644
index 000000000000..9ae57782cf4f
--- /dev/null
+++ b/packages/wallets/src/components/ExternalTradingPlatforms/MT5AccountTypeCard/index.ts
@@ -0,0 +1 @@
+export { default as MT5AccountTypeCard } from './MT5AccountTypeCard';
diff --git a/packages/wallets/src/components/ExternalTradingPlatforms/MT5PlatformsList/MT5PlatformsList.tsx b/packages/wallets/src/components/ExternalTradingPlatforms/MT5PlatformsList/MT5PlatformsList.tsx
index d5da0f92dd20..3073fcc42cb0 100644
--- a/packages/wallets/src/components/ExternalTradingPlatforms/MT5PlatformsList/MT5PlatformsList.tsx
+++ b/packages/wallets/src/components/ExternalTradingPlatforms/MT5PlatformsList/MT5PlatformsList.tsx
@@ -6,14 +6,14 @@ import { GetMoreMT5Accounts } from '../GetMoreMT5Accounts';
import './MT5PlatformsList.scss';
const MT5PlatformsList: React.FC = () => {
- const { data } = useSortedMT5Accounts();
+ const { data, isFetchedAfterMount } = useSortedMT5Accounts();
const { data: activeWallet } = useActiveWalletAccount();
const hasMT5Account = useMemo(() => {
return data?.some(account => account.is_added);
}, [data]);
- if (!data) return ;
+ if (!isFetchedAfterMount) return ;
return (
diff --git a/packages/wallets/src/components/ExternalTradingPlatforms/index.ts b/packages/wallets/src/components/ExternalTradingPlatforms/index.ts
index 8cadc661d88c..2fe0d566fb0d 100644
--- a/packages/wallets/src/components/ExternalTradingPlatforms/index.ts
+++ b/packages/wallets/src/components/ExternalTradingPlatforms/index.ts
@@ -6,5 +6,6 @@ export * from './AvailableMT5AccountsList';
export * from './CFDPlatformsList';
export * from './CTraderList';
export * from './GetMoreMT5Accounts';
+export * from './MT5AccountType';
export * from './MT5PlatformsList';
export * from './OtherCFDPlatformsList';
diff --git a/packages/wallets/src/components/MT5AccountTypeModal/MT5AccountTypeModal.tsx b/packages/wallets/src/components/MT5AccountTypeModal/MT5AccountTypeModal.tsx
new file mode 100644
index 000000000000..593037bcc1a3
--- /dev/null
+++ b/packages/wallets/src/components/MT5AccountTypeModal/MT5AccountTypeModal.tsx
@@ -0,0 +1,33 @@
+import React from 'react';
+import { MT5AccountType } from '../ExternalTradingPlatforms/MT5AccountType';
+import { PrimaryActionButton } from '../PrimaryActionButton';
+import { WalletModal } from '../WalletModal';
+import { WideWrapper } from '../WideWrapper';
+
+type TMarketTypes = React.ComponentProps['selectedMarketType'];
+
+const MT5AccountTypeModal = () => {
+ const [selectedMarketType, setSelectedMarketType] = React.useState(undefined);
+
+ return (
+
+ (
+ {
+ //Jurisdiction modal here
+ }}
+ >
+ Next
+
+ )}
+ renderHeader={() => Select Deriv MT5’s account type
}
+ >
+
+
+
+ );
+};
+
+export default MT5AccountTypeModal;
diff --git a/packages/wallets/src/components/MT5AccountTypeModal/index.ts b/packages/wallets/src/components/MT5AccountTypeModal/index.ts
new file mode 100644
index 000000000000..a3b05a816e2b
--- /dev/null
+++ b/packages/wallets/src/components/MT5AccountTypeModal/index.ts
@@ -0,0 +1 @@
+export { default as MT5AccountTypeModal } from './MT5AccountTypeModal';
diff --git a/packages/wallets/src/components/PrimaryActionButton/PrimaryActionButton.scss b/packages/wallets/src/components/PrimaryActionButton/PrimaryActionButton.scss
index 346b33af11d1..a4021f55d36c 100644
--- a/packages/wallets/src/components/PrimaryActionButton/PrimaryActionButton.scss
+++ b/packages/wallets/src/components/PrimaryActionButton/PrimaryActionButton.scss
@@ -8,4 +8,15 @@
background: #ff444f;
border: unset;
cursor: pointer;
+
+ &-disabled {
+ border: unset;
+ padding: 6px 16px;
+ justify-content: center;
+ align-items: center;
+ border-radius: 4px;
+ background-color: #ccc;
+ color: #666;
+ cursor: not-allowed;
+ }
}
diff --git a/packages/wallets/src/components/PrimaryActionButton/PrimaryActionButton.tsx b/packages/wallets/src/components/PrimaryActionButton/PrimaryActionButton.tsx
index cd080bfd7186..6159a6594d36 100644
--- a/packages/wallets/src/components/PrimaryActionButton/PrimaryActionButton.tsx
+++ b/packages/wallets/src/components/PrimaryActionButton/PrimaryActionButton.tsx
@@ -1,10 +1,16 @@
import React from 'react';
import './PrimaryActionButton.scss';
-const PrimaryActionButton: React.FC> = ({ children, ...rest }) => (
-
-);
+type TProps = React.ComponentProps<'button'> & {
+ disabled?: boolean;
+};
+
+const PrimaryActionButton: React.FC = ({ children, disabled, ...rest }) => {
+ return (
+
+ );
+};
export default PrimaryActionButton;
diff --git a/packages/wallets/src/components/WalletModal/WalletModal.scss b/packages/wallets/src/components/WalletModal/WalletModal.scss
index 32bcb9a54394..fc5d492b9698 100644
--- a/packages/wallets/src/components/WalletModal/WalletModal.scss
+++ b/packages/wallets/src/components/WalletModal/WalletModal.scss
@@ -2,6 +2,7 @@
background-color: #ffffff;
border-radius: 20px;
position: relative;
+
&-close-icon {
position: absolute;
top: 2rem;
diff --git a/packages/wallets/src/components/WideWrapper/WideWrapper.scss b/packages/wallets/src/components/WideWrapper/WideWrapper.scss
index 57c1602f811c..b15ef679a54a 100644
--- a/packages/wallets/src/components/WideWrapper/WideWrapper.scss
+++ b/packages/wallets/src/components/WideWrapper/WideWrapper.scss
@@ -2,9 +2,6 @@
background-color: #ffffff;
border-radius: 8px;
- width: 80vw;
- height: 80vh;
-
&__header {
padding: 2rem;
border-bottom: 2px solid #f2f3f4;
@@ -17,7 +14,6 @@
padding: 2rem;
height: 10%;
width: 100%;
- position: absolute;
bottom: 0;
border-top: 2px solid #f2f3f4;
display: flex;
diff --git a/packages/wallets/src/components/index.ts b/packages/wallets/src/components/index.ts
index de44fe3e8388..3abfde2b0818 100644
--- a/packages/wallets/src/components/index.ts
+++ b/packages/wallets/src/components/index.ts
@@ -6,6 +6,7 @@ export * from './EnterPassword';
export * from './ExternalTradingPlatforms';
export * from './InlineMessage';
export * from './Loader';
+export * from './MT5AccountTypeModal';
export * from './MT5PasswordModal';
export * from './OptionsAndMultipliersListing';
export * from './PrimaryActionButton';
diff --git a/packages/wallets/src/hooks/useDevice.tsx b/packages/wallets/src/hooks/useDevice.tsx
index fe2e85dbd361..1b643fe52d23 100644
--- a/packages/wallets/src/hooks/useDevice.tsx
+++ b/packages/wallets/src/hooks/useDevice.tsx
@@ -8,8 +8,6 @@ const useDevice = () => {
const isDesktop = width >= 1024;
return {
- /** @deprecated Use `isMobile` instead. */
- is_mobile: isMobile,
isDesktop,
isMobile,
isTablet,