@lifi/widget 1.32.4 → 1.32.6
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/AppDrawer.js +2 -1
- package/cjs/AppDrawer.js +3 -2
- package/cjs/components/ActiveSwaps/ActiveSwapItem.js +6 -4
- package/cjs/components/ChainSelect/useChainSelect.js +1 -1
- package/cjs/components/GasSufficiencyMessage/GasSufficiencyMessage.js +2 -2
- package/cjs/components/Header/NavigationHeader.js +5 -3
- package/cjs/components/Header/WalletHeader.js +8 -4
- package/cjs/components/NotFound.js +2 -2
- package/cjs/components/ReverseTokensButton/ReverseTokensButton.js +3 -2
- package/cjs/components/SendToWallet/SendToWalletButton.js +2 -2
- package/cjs/components/Step/CircularProgress.js +8 -5
- package/cjs/components/Step/DestinationWalletAddress.js +4 -3
- package/cjs/components/Step/GasStepProcess.js +2 -2
- package/cjs/components/Step/StepProcess.js +2 -2
- package/cjs/components/StepActions/StepActions.js +2 -2
- package/cjs/components/SwapRouteCard/SwapRouteCard.js +8 -4
- package/cjs/components/SwapRouteCard/SwapRouteNotFoundCard.js +2 -2
- package/cjs/components/SwapRoutes/SwapRoutes.js +2 -2
- package/cjs/components/SwapRoutes/SwapRoutes.style.d.ts +1 -2
- package/cjs/components/TokenList/TokenNotFound.js +2 -2
- package/cjs/config/version.d.ts +1 -1
- package/cjs/config/version.js +1 -1
- package/cjs/hooks/useRouteExecution.js +1 -1
- package/cjs/hooks/useSwapRoutes.d.ts +2 -4
- package/cjs/hooks/useSwapRoutes.js +19 -0
- package/cjs/hooks/useTokenBalance.js +7 -10
- package/cjs/hooks/useTokenBalances.js +0 -1
- package/cjs/hooks/useTokenSearch.js +6 -4
- package/cjs/i18n/index.js +0 -1
- package/cjs/pages/ActiveSwapsPage/ActiveSwapsEmpty.js +2 -2
- package/cjs/pages/ActiveSwapsPage/ActiveSwapsPage.js +2 -3
- package/cjs/pages/SelectEnabledToolsPage/SelectEnabledToolsPage.js +6 -3
- package/cjs/pages/SelectTokenPage/SearchTokenInput.js +2 -2
- package/cjs/pages/SettingsPage/ColorSchemeButtonGroup.js +4 -2
- package/cjs/pages/SettingsPage/EnabledToolsButton.js +3 -3
- package/cjs/pages/SettingsPage/GasPriceSelect.js +2 -2
- package/cjs/pages/SettingsPage/LanguageSelect.js +2 -2
- package/cjs/pages/SettingsPage/RoutePrioritySelect.js +2 -2
- package/cjs/pages/SwapDetailsPage/SwapDetailsPage.js +4 -3
- package/cjs/pages/SwapHistoryPage/SwapHistoryEmpty.js +2 -2
- package/cjs/pages/SwapHistoryPage/SwapHistoryPage.js +2 -3
- package/cjs/pages/SwapPage/ExchangeRateBottomSheet.js +2 -2
- package/cjs/pages/SwapPage/StatusBottomSheet.js +6 -4
- package/cjs/pages/SwapPage/SwapPage.js +2 -2
- package/cjs/pages/SwapPage/TokenValueBottomSheet.js +2 -2
- package/cjs/pages/SwapRoutesPage/SwapRoutesPage.style.d.ts +1 -2
- package/components/ActiveSwaps/ActiveSwapItem.js +5 -3
- package/components/ChainSelect/useChainSelect.js +1 -1
- package/components/GasSufficiencyMessage/GasSufficiencyMessage.js +2 -2
- package/components/Header/NavigationHeader.js +5 -3
- package/components/Header/WalletHeader.js +6 -2
- package/components/NotFound.js +1 -1
- package/components/ReverseTokensButton/ReverseTokensButton.js +2 -1
- package/components/SendToWallet/SendToWalletButton.js +1 -1
- package/components/Step/CircularProgress.js +8 -5
- package/components/Step/DestinationWalletAddress.js +3 -2
- package/components/Step/GasStepProcess.js +2 -2
- package/components/Step/StepProcess.js +2 -2
- package/components/StepActions/StepActions.js +1 -1
- package/components/SwapRouteCard/SwapRouteCard.js +7 -3
- package/components/SwapRouteCard/SwapRouteNotFoundCard.js +1 -1
- package/components/SwapRoutes/SwapRoutes.js +1 -1
- package/components/SwapRoutes/SwapRoutes.style.d.ts +1 -2
- package/components/TokenList/TokenNotFound.js +1 -1
- package/config/version.d.ts +1 -1
- package/config/version.js +1 -1
- package/hooks/useRouteExecution.js +1 -1
- package/hooks/useSwapRoutes.d.ts +2 -4
- package/hooks/useSwapRoutes.js +19 -0
- package/hooks/useTokenBalance.js +7 -10
- package/hooks/useTokenBalances.js +0 -1
- package/hooks/useTokenSearch.js +6 -4
- package/i18n/index.js +0 -1
- package/package.json +8 -8
- package/pages/ActiveSwapsPage/ActiveSwapsEmpty.js +1 -1
- package/pages/ActiveSwapsPage/ActiveSwapsPage.js +2 -3
- package/pages/SelectEnabledToolsPage/SelectEnabledToolsPage.js +6 -3
- package/pages/SelectTokenPage/SearchTokenInput.js +1 -1
- package/pages/SettingsPage/ColorSchemeButtonGroup.js +3 -1
- package/pages/SettingsPage/EnabledToolsButton.js +2 -2
- package/pages/SettingsPage/GasPriceSelect.js +1 -1
- package/pages/SettingsPage/LanguageSelect.js +1 -1
- package/pages/SettingsPage/RoutePrioritySelect.js +1 -1
- package/pages/SwapDetailsPage/SwapDetailsPage.js +3 -2
- package/pages/SwapHistoryPage/SwapHistoryEmpty.js +2 -2
- package/pages/SwapHistoryPage/SwapHistoryPage.js +2 -3
- package/pages/SwapPage/ExchangeRateBottomSheet.js +2 -2
- package/pages/SwapPage/StatusBottomSheet.js +6 -4
- package/pages/SwapPage/SwapPage.js +1 -1
- package/pages/SwapPage/TokenValueBottomSheet.js +2 -2
- package/pages/SwapRoutesPage/SwapRoutesPage.style.d.ts +1 -2
- package/tsconfig.cjs.tsbuildinfo +1 -1
|
@@ -12,11 +12,13 @@ const useTokenSearch = (chainId, tokenQuery, enabled) => {
|
|
|
12
12
|
});
|
|
13
13
|
if (token) {
|
|
14
14
|
queryClient.setQueriesData(['tokens'], (data) => {
|
|
15
|
-
if (
|
|
16
|
-
data
|
|
15
|
+
if (data &&
|
|
16
|
+
!data.tokens[chainId].some((t) => t.address === token.address)) {
|
|
17
|
+
const clonedData = { ...data };
|
|
18
|
+
clonedData.tokens[chainId].push(token);
|
|
19
|
+
return clonedData;
|
|
17
20
|
}
|
|
18
|
-
|
|
19
|
-
}, { updatedAt: Date.now() });
|
|
21
|
+
});
|
|
20
22
|
}
|
|
21
23
|
return token;
|
|
22
24
|
}, {
|
package/cjs/i18n/index.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.zh = exports.uk = exports.tr = exports.ko = exports.it = exports.id = exports.fr = exports.es = exports.en = exports.de = void 0;
|
|
4
|
-
/* eslint-disable camelcase */
|
|
5
4
|
const de_json_1 = require("./de.json");
|
|
6
5
|
exports.de = de_json_1.default;
|
|
7
6
|
const en_json_1 = require("./en.json");
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ActiveSwapsEmpty = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
const
|
|
5
|
+
const SwapHoriz_1 = require("@mui/icons-material/SwapHoriz");
|
|
6
6
|
const material_1 = require("@mui/material");
|
|
7
7
|
const react_i18next_1 = require("react-i18next");
|
|
8
8
|
const ActiveSwapsEmpty = () => {
|
|
@@ -14,6 +14,6 @@ const ActiveSwapsEmpty = () => {
|
|
|
14
14
|
alignItems: 'center',
|
|
15
15
|
justifyContent: 'center',
|
|
16
16
|
paddingY: 12,
|
|
17
|
-
}, children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { fontSize: 48, children: (0, jsx_runtime_1.jsx)(
|
|
17
|
+
}, children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { fontSize: 48, children: (0, jsx_runtime_1.jsx)(SwapHoriz_1.default, { fontSize: "inherit" }) }), (0, jsx_runtime_1.jsx)(material_1.Typography, { fontSize: 18, fontWeight: 700, children: t('swap.info.title.emptyActiveSwaps') }), (0, jsx_runtime_1.jsx)(material_1.Typography, { fontSize: 14, color: "text.secondary", textAlign: "center", mt: 2, children: t('swap.info.message.emptyActiveSwaps') })] }));
|
|
18
18
|
};
|
|
19
19
|
exports.ActiveSwapsEmpty = ActiveSwapsEmpty;
|
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ActiveSwapsPage = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
|
|
6
|
-
const icons_material_1 = require("@mui/icons-material");
|
|
5
|
+
const DeleteOutline_1 = require("@mui/icons-material/DeleteOutline");
|
|
7
6
|
const material_1 = require("@mui/material");
|
|
8
7
|
const react_1 = require("react");
|
|
9
8
|
const react_i18next_1 = require("react-i18next");
|
|
@@ -24,7 +23,7 @@ const ActiveSwapsPage = () => {
|
|
|
24
23
|
}, []);
|
|
25
24
|
(0, react_1.useEffect)(() => {
|
|
26
25
|
if (executingRoutes.length) {
|
|
27
|
-
return Header_1.useHeaderActionStore.getState().setAction((0, jsx_runtime_1.jsx)(material_1.IconButton, { size: "medium", edge: "end", onClick: toggleDialog, children: (0, jsx_runtime_1.jsx)(
|
|
26
|
+
return Header_1.useHeaderActionStore.getState().setAction((0, jsx_runtime_1.jsx)(material_1.IconButton, { size: "medium", edge: "end", onClick: toggleDialog, children: (0, jsx_runtime_1.jsx)(DeleteOutline_1.default, {}) }));
|
|
28
27
|
}
|
|
29
28
|
}, [executingRoutes.length, toggleDialog]);
|
|
30
29
|
if (!executingRoutes.length) {
|
|
@@ -2,7 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SelectEnabledToolsPage = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
const
|
|
5
|
+
const CheckBox_1 = require("@mui/icons-material/CheckBox");
|
|
6
|
+
const CheckBoxOutlineBlankOutlined_1 = require("@mui/icons-material/CheckBoxOutlineBlankOutlined");
|
|
7
|
+
const CheckBoxOutlined_1 = require("@mui/icons-material/CheckBoxOutlined");
|
|
8
|
+
const IndeterminateCheckBoxOutlined_1 = require("@mui/icons-material/IndeterminateCheckBoxOutlined");
|
|
6
9
|
const material_1 = require("@mui/material");
|
|
7
10
|
const Header_1 = require("../../components/Header");
|
|
8
11
|
const react_1 = require("react");
|
|
@@ -41,11 +44,11 @@ const SelectEnabledToolsPage = ({ type }) => {
|
|
|
41
44
|
setTools(type, toolKeys, toolKeys);
|
|
42
45
|
}
|
|
43
46
|
};
|
|
44
|
-
return Header_1.useHeaderActionStore.getState().setAction((0, jsx_runtime_1.jsx)(material_1.IconButton, { size: "medium", edge: "end", onClick: toggleCheckboxes, children: allToolsSelected ? ((0, jsx_runtime_1.jsx)(
|
|
47
|
+
return Header_1.useHeaderActionStore.getState().setAction((0, jsx_runtime_1.jsx)(material_1.IconButton, { size: "medium", edge: "end", onClick: toggleCheckboxes, children: allToolsSelected ? ((0, jsx_runtime_1.jsx)(CheckBoxOutlined_1.default, {})) : enabledTools.length ? ((0, jsx_runtime_1.jsx)(IndeterminateCheckBoxOutlined_1.default, {})) : ((0, jsx_runtime_1.jsx)(CheckBoxOutlineBlankOutlined_1.default, {})) }));
|
|
45
48
|
}, [enabledTools.length, setTools, tools, type, typeKey]);
|
|
46
49
|
return ((0, jsx_runtime_1.jsx)(material_1.Container, { disableGutters: true, children: (0, jsx_runtime_1.jsx)(material_1.List, { sx: {
|
|
47
50
|
paddingLeft: 1.5,
|
|
48
51
|
paddingRight: 1.5,
|
|
49
|
-
}, children: tools?.[typeKey].map((tool) => ((0, jsx_runtime_1.jsxs)(SelectEnabledToolsPage_style_1.ListItemButton, { onClick: () => handleClick(tool.key), children: [(0, jsx_runtime_1.jsx)(material_1.ListItemAvatar, { children: (0, jsx_runtime_1.jsx)(material_1.Avatar, { src: tool.logoURI, alt: tool.name, children: tool.name[0] }) }), (0, jsx_runtime_1.jsx)(ListItemText_1.ListItemText, { primary: tool.name }), enabledTools?.includes(tool.key) ? ((0, jsx_runtime_1.jsx)(
|
|
52
|
+
}, children: tools?.[typeKey].map((tool) => ((0, jsx_runtime_1.jsxs)(SelectEnabledToolsPage_style_1.ListItemButton, { onClick: () => handleClick(tool.key), children: [(0, jsx_runtime_1.jsx)(material_1.ListItemAvatar, { children: (0, jsx_runtime_1.jsx)(material_1.Avatar, { src: tool.logoURI, alt: tool.name, children: tool.name[0] }) }), (0, jsx_runtime_1.jsx)(ListItemText_1.ListItemText, { primary: tool.name }), enabledTools?.includes(tool.key) ? ((0, jsx_runtime_1.jsx)(CheckBox_1.default, { color: "primary" })) : ((0, jsx_runtime_1.jsx)(CheckBoxOutlineBlankOutlined_1.default, {}))] }, tool.name))) }) }));
|
|
50
53
|
};
|
|
51
54
|
exports.SelectEnabledToolsPage = SelectEnabledToolsPage;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SearchTokenInput = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
const
|
|
5
|
+
const Search_1 = require("@mui/icons-material/Search");
|
|
6
6
|
const material_1 = require("@mui/material");
|
|
7
7
|
const react_1 = require("react");
|
|
8
8
|
const react_hook_form_1 = require("react-hook-form");
|
|
@@ -16,7 +16,7 @@ const SearchTokenInput = () => {
|
|
|
16
16
|
(0, react_1.useEffect)(() => () => {
|
|
17
17
|
setValue(providers_1.SwapFormKey.TokenSearchFilter, '');
|
|
18
18
|
}, [setValue]);
|
|
19
|
-
return ((0, jsx_runtime_1.jsx)(Card_1.Card, { children: (0, jsx_runtime_1.jsx)(material_1.FormControl, { fullWidth: true, children: (0, jsx_runtime_1.jsx)(SearchTokenInput_style_1.Input, { size: "small", placeholder: t(`swap.tokenSearch`), defaultValue: "", endAdornment: (0, jsx_runtime_1.jsx)(material_1.InputAdornment, { position: "end", children: (0, jsx_runtime_1.jsx)(
|
|
19
|
+
return ((0, jsx_runtime_1.jsx)(Card_1.Card, { children: (0, jsx_runtime_1.jsx)(material_1.FormControl, { fullWidth: true, children: (0, jsx_runtime_1.jsx)(SearchTokenInput_style_1.Input, { size: "small", placeholder: t(`swap.tokenSearch`), defaultValue: "", endAdornment: (0, jsx_runtime_1.jsx)(material_1.InputAdornment, { position: "end", children: (0, jsx_runtime_1.jsx)(Search_1.default, {}) }), inputProps: {
|
|
20
20
|
inputMode: 'search',
|
|
21
21
|
...register(providers_1.SwapFormKey.TokenSearchFilter),
|
|
22
22
|
}, autoComplete: "off" }) }) }));
|
|
@@ -2,7 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ColorSchemeButtonGroup = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
const
|
|
5
|
+
const Brightness4_1 = require("@mui/icons-material/Brightness4");
|
|
6
|
+
const DarkMode_1 = require("@mui/icons-material/DarkMode");
|
|
7
|
+
const LightMode_1 = require("@mui/icons-material/LightMode");
|
|
6
8
|
const material_1 = require("@mui/material");
|
|
7
9
|
const react_i18next_1 = require("react-i18next");
|
|
8
10
|
const providers_1 = require("../../providers");
|
|
@@ -20,6 +22,6 @@ const ColorSchemeButtonGroup = () => {
|
|
|
20
22
|
if (value) {
|
|
21
23
|
setAppearance(value);
|
|
22
24
|
}
|
|
23
|
-
}, exclusive: true, fullWidth: true, children: [(0, jsx_runtime_1.jsxs)(ColorSchemeButtonGroup_style_1.ToggleButton, { value: "light", children: [(0, jsx_runtime_1.jsx)(
|
|
25
|
+
}, exclusive: true, fullWidth: true, children: [(0, jsx_runtime_1.jsxs)(ColorSchemeButtonGroup_style_1.ToggleButton, { value: "light", children: [(0, jsx_runtime_1.jsx)(LightMode_1.default, { sx: { marginRight: 1 } }), t('button.light')] }), (0, jsx_runtime_1.jsxs)(ColorSchemeButtonGroup_style_1.ToggleButton, { value: "dark", children: [(0, jsx_runtime_1.jsx)(DarkMode_1.default, { sx: { marginRight: 1 } }), t('button.dark')] }), (0, jsx_runtime_1.jsxs)(ColorSchemeButtonGroup_style_1.ToggleButton, { value: "auto", children: [(0, jsx_runtime_1.jsx)(Brightness4_1.default, { sx: { marginRight: 1 } }), t('button.auto')] })] }) }));
|
|
24
26
|
};
|
|
25
27
|
exports.ColorSchemeButtonGroup = ColorSchemeButtonGroup;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.EnabledToolsButton = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
const
|
|
5
|
+
const ChevronRight_1 = require("@mui/icons-material/ChevronRight");
|
|
6
6
|
const material_1 = require("@mui/material");
|
|
7
7
|
const react_i18next_1 = require("react-i18next");
|
|
8
8
|
const react_router_dom_1 = require("react-router-dom");
|
|
@@ -15,11 +15,11 @@ const EnabledToolsButton = ({ type }) => {
|
|
|
15
15
|
const navigate = (0, react_router_dom_1.useNavigate)();
|
|
16
16
|
const [enabledTools, tools] = (0, stores_1.useSettingsStore)((state) => {
|
|
17
17
|
const enabledTools = Object.values(state[`_enabled${type}`] ?? {});
|
|
18
|
-
return [enabledTools.filter(
|
|
18
|
+
return [enabledTools.filter(Boolean).length, enabledTools.length];
|
|
19
19
|
}, shallow_1.shallow);
|
|
20
20
|
const handleClick = () => {
|
|
21
21
|
navigate(utils_1.navigationRoutes[type.toLowerCase()]);
|
|
22
22
|
};
|
|
23
|
-
return ((0, jsx_runtime_1.jsxs)(EnabledToolsButton_style_1.ListItemButton, { onClick: handleClick, children: [(0, jsx_runtime_1.jsx)(EnabledToolsButton_style_1.ListItemText, { primary: t(`settings.enabled${type}`) }), (0, jsx_runtime_1.jsxs)(material_1.Box, { display: "flex", alignItems: "center", children: [(0, jsx_runtime_1.jsx)(EnabledToolsButton_style_1.ListItemText, { primary: `${enabledTools}/${tools}` }), (0, jsx_runtime_1.jsx)(
|
|
23
|
+
return ((0, jsx_runtime_1.jsxs)(EnabledToolsButton_style_1.ListItemButton, { onClick: handleClick, children: [(0, jsx_runtime_1.jsx)(EnabledToolsButton_style_1.ListItemText, { primary: t(`settings.enabled${type}`) }), (0, jsx_runtime_1.jsxs)(material_1.Box, { display: "flex", alignItems: "center", children: [(0, jsx_runtime_1.jsx)(EnabledToolsButton_style_1.ListItemText, { primary: `${enabledTools}/${tools}` }), (0, jsx_runtime_1.jsx)(ChevronRight_1.default, {})] })] }));
|
|
24
24
|
};
|
|
25
25
|
exports.EnabledToolsButton = EnabledToolsButton;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.GasPriceSelect = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
const
|
|
5
|
+
const KeyboardArrowDown_1 = require("@mui/icons-material/KeyboardArrowDown");
|
|
6
6
|
const material_1 = require("@mui/material");
|
|
7
7
|
const react_i18next_1 = require("react-i18next");
|
|
8
8
|
const Card_1 = require("../../components/Card");
|
|
@@ -12,6 +12,6 @@ const GasPriceSelect = () => {
|
|
|
12
12
|
const { t } = (0, react_i18next_1.useTranslation)();
|
|
13
13
|
const setValue = (0, stores_1.useSettingsStore)((state) => state.setValue);
|
|
14
14
|
const { gasPrice } = (0, stores_1.useSettings)(['gasPrice']);
|
|
15
|
-
return ((0, jsx_runtime_1.jsxs)(Card_1.Card, { flex: 1, children: [(0, jsx_runtime_1.jsx)(Card_1.CardTitle, { children: t(`settings.gasPrice.title`) }), (0, jsx_runtime_1.jsx)(material_1.FormControl, { fullWidth: true, children: (0, jsx_runtime_1.jsxs)(Select_1.Select, { MenuProps: { elevation: 2 }, value: gasPrice, onChange: (event) => setValue('gasPrice', event.target.value), IconComponent:
|
|
15
|
+
return ((0, jsx_runtime_1.jsxs)(Card_1.Card, { flex: 1, children: [(0, jsx_runtime_1.jsx)(Card_1.CardTitle, { children: t(`settings.gasPrice.title`) }), (0, jsx_runtime_1.jsx)(material_1.FormControl, { fullWidth: true, children: (0, jsx_runtime_1.jsxs)(Select_1.Select, { MenuProps: { elevation: 2 }, value: gasPrice, onChange: (event) => setValue('gasPrice', event.target.value), IconComponent: KeyboardArrowDown_1.default, dense: true, children: [(0, jsx_runtime_1.jsx)(material_1.MenuItem, { value: "slow", children: t(`settings.gasPrice.slow`) }), (0, jsx_runtime_1.jsx)(material_1.MenuItem, { value: "normal", children: t(`settings.gasPrice.normal`) }), (0, jsx_runtime_1.jsx)(material_1.MenuItem, { value: "fast", children: t(`settings.gasPrice.fast`) })] }) })] }));
|
|
16
16
|
};
|
|
17
17
|
exports.GasPriceSelect = GasPriceSelect;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.LanguageSelect = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
const
|
|
5
|
+
const KeyboardArrowDown_1 = require("@mui/icons-material/KeyboardArrowDown");
|
|
6
6
|
const material_1 = require("@mui/material");
|
|
7
7
|
const react_i18next_1 = require("react-i18next");
|
|
8
8
|
const Card_1 = require("../../components/Card");
|
|
@@ -30,7 +30,7 @@ const LanguageSelect = () => {
|
|
|
30
30
|
const value = filteredLanguages.includes(language || i18n.resolvedLanguage)
|
|
31
31
|
? language || i18n.resolvedLanguage
|
|
32
32
|
: languages?.default || languages?.allow?.[0];
|
|
33
|
-
return ((0, jsx_runtime_1.jsxs)(Card_1.Card, { mb: 2, children: [(0, jsx_runtime_1.jsx)(Card_1.CardTitle, { children: t(`language.title`) }), (0, jsx_runtime_1.jsx)(material_1.FormControl, { fullWidth: true, children: (0, jsx_runtime_1.jsx)(Select_1.Select, { MenuProps: { elevation: 2 }, value: value, onChange: handleChangeLanguage, IconComponent:
|
|
33
|
+
return ((0, jsx_runtime_1.jsxs)(Card_1.Card, { mb: 2, children: [(0, jsx_runtime_1.jsx)(Card_1.CardTitle, { children: t(`language.title`) }), (0, jsx_runtime_1.jsx)(material_1.FormControl, { fullWidth: true, children: (0, jsx_runtime_1.jsx)(Select_1.Select, { MenuProps: { elevation: 2 }, value: value, onChange: handleChangeLanguage, IconComponent: KeyboardArrowDown_1.default, dense: true, children: filteredLanguages.map((lng) => {
|
|
34
34
|
return ((0, jsx_runtime_1.jsx)(material_1.MenuItem, { value: lng, children: t('language.name', { lng }) }, lng));
|
|
35
35
|
}) }) })] }));
|
|
36
36
|
};
|
|
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.RoutePrioritySelect = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const sdk_1 = require("@lifi/sdk");
|
|
6
|
-
const
|
|
6
|
+
const KeyboardArrowDown_1 = require("@mui/icons-material/KeyboardArrowDown");
|
|
7
7
|
const material_1 = require("@mui/material");
|
|
8
8
|
const react_i18next_1 = require("react-i18next");
|
|
9
9
|
const Card_1 = require("../../components/Card");
|
|
@@ -14,7 +14,7 @@ const RoutePrioritySelect = () => {
|
|
|
14
14
|
const setValue = (0, stores_1.useSettingsStore)((state) => state.setValue);
|
|
15
15
|
const { routePriority } = (0, stores_1.useSettings)(['routePriority']);
|
|
16
16
|
const value = routePriority ?? '';
|
|
17
|
-
return ((0, jsx_runtime_1.jsxs)(Card_1.Card, { children: [(0, jsx_runtime_1.jsx)(Card_1.CardTitle, { children: t(`settings.routePriority`) }), (0, jsx_runtime_1.jsx)(material_1.FormControl, { fullWidth: true, children: (0, jsx_runtime_1.jsx)(Select_1.Select, { MenuProps: { elevation: 2 }, value: value, onChange: (event) => setValue('routePriority', event.target.value), IconComponent:
|
|
17
|
+
return ((0, jsx_runtime_1.jsxs)(Card_1.Card, { children: [(0, jsx_runtime_1.jsx)(Card_1.CardTitle, { children: t(`settings.routePriority`) }), (0, jsx_runtime_1.jsx)(material_1.FormControl, { fullWidth: true, children: (0, jsx_runtime_1.jsx)(Select_1.Select, { MenuProps: { elevation: 2 }, value: value, onChange: (event) => setValue('routePriority', event.target.value), IconComponent: KeyboardArrowDown_1.default, dense: true, children: sdk_1.Orders.map((order) => {
|
|
18
18
|
const tag = t(`swap.tags.${order.toUpperCase()}`);
|
|
19
19
|
const tagName = `${tag[0]}${tag.slice(1).toLowerCase()}`;
|
|
20
20
|
return ((0, jsx_runtime_1.jsx)(material_1.MenuItem, { value: order, children: tagName }, order));
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SwapDetailsPage = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
const
|
|
5
|
+
const ContentCopy_1 = require("@mui/icons-material/ContentCopy");
|
|
6
|
+
const DeleteOutline_1 = require("@mui/icons-material/DeleteOutline");
|
|
6
7
|
const material_1 = require("@mui/material");
|
|
7
8
|
const react_1 = require("react");
|
|
8
9
|
const react_i18next_1 = require("react-i18next");
|
|
@@ -40,7 +41,7 @@ const SwapDetailsPage = () => {
|
|
|
40
41
|
await navigator.clipboard.writeText(supportId);
|
|
41
42
|
};
|
|
42
43
|
(0, react_1.useEffect)(() => {
|
|
43
|
-
return Header_1.useHeaderActionStore.getState().setAction((0, jsx_runtime_1.jsx)(material_1.IconButton, { size: "medium", edge: "end", onClick: toggleDialog, children: (0, jsx_runtime_1.jsx)(
|
|
44
|
+
return Header_1.useHeaderActionStore.getState().setAction((0, jsx_runtime_1.jsx)(material_1.IconButton, { size: "medium", edge: "end", onClick: toggleDialog, children: (0, jsx_runtime_1.jsx)(DeleteOutline_1.default, {}) }));
|
|
44
45
|
}, [toggleDialog]);
|
|
45
46
|
const startedAt = new Date(routeExecution?.route.steps[0].execution?.process[0].startedAt ?? 0);
|
|
46
47
|
return ((0, jsx_runtime_1.jsxs)(SwapDetailsPage_style_1.Container, { children: [(0, jsx_runtime_1.jsxs)(material_1.Box, { sx: {
|
|
@@ -52,6 +53,6 @@ const SwapDetailsPage = () => {
|
|
|
52
53
|
}).format(startedAt) })] }), (0, Step_1.getStepList)(routeExecution?.route), (0, jsx_runtime_1.jsxs)(Card_1.Card, { mt: 2, children: [(0, jsx_runtime_1.jsxs)(material_1.Box, { sx: {
|
|
53
54
|
display: 'flex',
|
|
54
55
|
flex: 1,
|
|
55
|
-
}, children: [(0, jsx_runtime_1.jsx)(Card_1.CardTitle, { flex: 1, children: t('swap.supportId') }), (0, jsx_runtime_1.jsx)(material_1.Box, { mr: 1, mt: 1, children: (0, jsx_runtime_1.jsx)(material_1.IconButton, { size: "medium", onClick: copySupportId, children: (0, jsx_runtime_1.jsx)(
|
|
56
|
+
}, children: [(0, jsx_runtime_1.jsx)(Card_1.CardTitle, { flex: 1, children: t('swap.supportId') }), (0, jsx_runtime_1.jsx)(material_1.Box, { mr: 1, mt: 1, children: (0, jsx_runtime_1.jsx)(material_1.IconButton, { size: "medium", onClick: copySupportId, children: (0, jsx_runtime_1.jsx)(ContentCopy_1.default, { fontSize: "small" }) }) })] }), (0, jsx_runtime_1.jsx)(material_1.Typography, { variant: "body2", pt: 1, pb: 2, px: 2, sx: { wordBreak: 'break-all' }, children: supportId })] }), (0, jsx_runtime_1.jsx)(material_1.Box, { mt: 2, children: (0, jsx_runtime_1.jsx)(material_1.Button, { href: "https://discord.com/channels/849912621360218112/863689862514343946", target: "_blank", rel: "nofollow noreferrer", fullWidth: true, children: t('button.contactSupport') }) }), (0, jsx_runtime_1.jsxs)(Dialog_1.Dialog, { open: open, onClose: toggleDialog, children: [(0, jsx_runtime_1.jsx)(material_1.DialogTitle, { children: t('swap.warning.title.deleteSwap') }), (0, jsx_runtime_1.jsx)(material_1.DialogContent, { children: (0, jsx_runtime_1.jsx)(material_1.DialogContentText, { children: t('swap.warning.message.deleteSwapHistory') }) }), (0, jsx_runtime_1.jsxs)(material_1.DialogActions, { children: [(0, jsx_runtime_1.jsx)(material_1.Button, { onClick: toggleDialog, children: t('button.cancel') }), (0, jsx_runtime_1.jsx)(material_1.Button, { variant: "contained", onClick: handleDeleteRoute, autoFocus: true, children: t('button.delete') })] })] })] }));
|
|
56
57
|
};
|
|
57
58
|
exports.SwapDetailsPage = SwapDetailsPage;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SwapHistoryEmpty = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
const
|
|
5
|
+
const ReceiptLongRounded_1 = require("@mui/icons-material/ReceiptLongRounded");
|
|
6
6
|
const material_1 = require("@mui/material");
|
|
7
7
|
const react_i18next_1 = require("react-i18next");
|
|
8
8
|
const SwapHistoryEmpty = () => {
|
|
@@ -14,6 +14,6 @@ const SwapHistoryEmpty = () => {
|
|
|
14
14
|
alignItems: 'center',
|
|
15
15
|
justifyContent: 'center',
|
|
16
16
|
paddingY: 12,
|
|
17
|
-
}, children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { fontSize: 48, children: (0, jsx_runtime_1.jsx)(
|
|
17
|
+
}, children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { fontSize: 48, children: (0, jsx_runtime_1.jsx)(ReceiptLongRounded_1.default, { fontSize: "inherit" }) }), (0, jsx_runtime_1.jsx)(material_1.Typography, { fontSize: 18, fontWeight: 700, children: t('swap.info.title.emptySwapHistory') }), (0, jsx_runtime_1.jsx)(material_1.Typography, { fontSize: 14, color: "text.secondary", textAlign: "center", mt: 2, children: t('swap.info.message.emptySwapHistory') })] }));
|
|
18
18
|
};
|
|
19
19
|
exports.SwapHistoryEmpty = SwapHistoryEmpty;
|
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SwapHistoryPage = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
|
|
6
|
-
const icons_material_1 = require("@mui/icons-material");
|
|
5
|
+
const DeleteOutline_1 = require("@mui/icons-material/DeleteOutline");
|
|
7
6
|
const material_1 = require("@mui/material");
|
|
8
7
|
const react_1 = require("react");
|
|
9
8
|
const react_i18next_1 = require("react-i18next");
|
|
@@ -25,7 +24,7 @@ const SwapHistoryPage = () => {
|
|
|
25
24
|
}, []);
|
|
26
25
|
(0, react_1.useEffect)(() => {
|
|
27
26
|
if (swaps.length) {
|
|
28
|
-
return Header_1.useHeaderActionStore.getState().setAction((0, jsx_runtime_1.jsx)(material_1.IconButton, { size: "medium", edge: "end", onClick: toggleDialog, children: (0, jsx_runtime_1.jsx)(
|
|
27
|
+
return Header_1.useHeaderActionStore.getState().setAction((0, jsx_runtime_1.jsx)(material_1.IconButton, { size: "medium", edge: "end", onClick: toggleDialog, children: (0, jsx_runtime_1.jsx)(DeleteOutline_1.default, {}) }));
|
|
29
28
|
}
|
|
30
29
|
}, [swaps.length, toggleDialog]);
|
|
31
30
|
if (!swaps.length) {
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getTokenValueLossThreshold = exports.ExchangeRateBottomSheet = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
const
|
|
5
|
+
const WarningRounded_1 = require("@mui/icons-material/WarningRounded");
|
|
6
6
|
const material_1 = require("@mui/material");
|
|
7
7
|
const big_js_1 = require("big.js");
|
|
8
8
|
const react_1 = require("react");
|
|
@@ -47,7 +47,7 @@ const ExchangeRateBottomSheetContent = ({ data, onCancel, onContinue }) => {
|
|
|
47
47
|
const { t } = (0, react_i18next_1.useTranslation)();
|
|
48
48
|
const ref = (0, react_1.useRef)();
|
|
49
49
|
(0, hooks_1.useSetContentHeight)(ref);
|
|
50
|
-
return ((0, jsx_runtime_1.jsxs)(material_1.Box, { p: 3, ref: ref, children: [(0, jsx_runtime_1.jsxs)(StatusBottomSheet_style_1.IconContainer, { children: [(0, jsx_runtime_1.jsx)(StatusBottomSheet_style_1.IconCircle, { status: "warning", mb: 1, children: (0, jsx_runtime_1.jsx)(
|
|
50
|
+
return ((0, jsx_runtime_1.jsxs)(material_1.Box, { p: 3, ref: ref, children: [(0, jsx_runtime_1.jsxs)(StatusBottomSheet_style_1.IconContainer, { children: [(0, jsx_runtime_1.jsx)(StatusBottomSheet_style_1.IconCircle, { status: "warning", mb: 1, children: (0, jsx_runtime_1.jsx)(WarningRounded_1.default, { color: "warning" }) }), (0, jsx_runtime_1.jsx)(material_1.Typography, { py: 1, fontSize: 18, fontWeight: 700, children: t('swap.warning.title.rateChanged') })] }), (0, jsx_runtime_1.jsx)(material_1.Typography, { py: 1, children: t('swap.warning.message.rateChanged') }), (0, jsx_runtime_1.jsxs)(material_1.Box, { display: "flex", justifyContent: "space-between", mt: 1, children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { children: t('swap.quotedAmount') }), (0, jsx_runtime_1.jsxs)(material_1.Typography, { fontWeight: 600, children: [t('format.number', {
|
|
51
51
|
value: (0, utils_1.formatTokenAmount)(data?.oldToAmount, data?.toToken.decimals, 5),
|
|
52
52
|
}), ' ', data?.toToken.symbol] })] }), (0, jsx_runtime_1.jsxs)(material_1.Box, { display: "flex", justifyContent: "space-between", mt: 0.25, children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { children: t('swap.currentAmount') }), (0, jsx_runtime_1.jsxs)(material_1.Typography, { fontWeight: 600, children: [t('format.number', {
|
|
53
53
|
value: (0, utils_1.formatTokenAmount)(data?.newToAmount, data?.toToken.decimals, 5),
|
|
@@ -2,8 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.StatusBottomSheet = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
|
|
6
|
-
const
|
|
5
|
+
const Done_1 = require("@mui/icons-material/Done");
|
|
6
|
+
const ErrorRounded_1 = require("@mui/icons-material/ErrorRounded");
|
|
7
|
+
const InfoRounded_1 = require("@mui/icons-material/InfoRounded");
|
|
8
|
+
const WarningRounded_1 = require("@mui/icons-material/WarningRounded");
|
|
7
9
|
const material_1 = require("@mui/material");
|
|
8
10
|
const react_1 = require("react");
|
|
9
11
|
const react_hook_form_1 = require("react-hook-form");
|
|
@@ -140,8 +142,8 @@ const StatusBottomSheet = ({ status, route, }) => {
|
|
|
140
142
|
ref.current?.open();
|
|
141
143
|
}
|
|
142
144
|
}, [refetch, refetchNewBalance, status]);
|
|
143
|
-
return ((0, jsx_runtime_1.jsx)(BottomSheet_1.BottomSheet, { ref: ref, children: (0, jsx_runtime_1.jsxs)(material_1.Box, { p: 3, children: [(0, jsx_runtime_1.jsxs)(StatusBottomSheet_style_1.IconContainer, { children: [(0, jsx_runtime_1.jsxs)(StatusBottomSheet_style_1.IconCircle, { status: status, mb: 1, children: [status === stores_1.RouteExecutionStatus.Idle ? ((0, jsx_runtime_1.jsx)(
|
|
144
|
-
(0, utils_1.hasEnumFlag)(status, stores_1.RouteExecutionStatus.Refunded) ? ((0, jsx_runtime_1.jsx)(
|
|
145
|
+
return ((0, jsx_runtime_1.jsx)(BottomSheet_1.BottomSheet, { ref: ref, children: (0, jsx_runtime_1.jsxs)(material_1.Box, { p: 3, children: [(0, jsx_runtime_1.jsxs)(StatusBottomSheet_style_1.IconContainer, { children: [(0, jsx_runtime_1.jsxs)(StatusBottomSheet_style_1.IconCircle, { status: status, mb: 1, children: [status === stores_1.RouteExecutionStatus.Idle ? ((0, jsx_runtime_1.jsx)(InfoRounded_1.default, { color: "primary" })) : null, status === stores_1.RouteExecutionStatus.Done ? ((0, jsx_runtime_1.jsx)(Done_1.default, { color: "success" })) : null, (0, utils_1.hasEnumFlag)(status, stores_1.RouteExecutionStatus.Partial) ||
|
|
146
|
+
(0, utils_1.hasEnumFlag)(status, stores_1.RouteExecutionStatus.Refunded) ? ((0, jsx_runtime_1.jsx)(WarningRounded_1.default, { color: "warning" })) : null, (0, utils_1.hasEnumFlag)(status, stores_1.RouteExecutionStatus.Failed) ? ((0, jsx_runtime_1.jsx)(ErrorRounded_1.default, { color: "error" })) : null] }), (0, jsx_runtime_1.jsx)(material_1.Typography, { py: 1, fontSize: 18, fontWeight: 700, children: title }), (0, utils_1.hasEnumFlag)(status, stores_1.RouteExecutionStatus.Done) ? ((0, jsx_runtime_1.jsx)(Token_1.Token, { token: toToken, py: 1, disableDescription: true })) : null] }), (0, jsx_runtime_1.jsx)(material_1.Typography, { py: 1, children: primaryMessage }), secondaryMessage ? ((0, jsx_runtime_1.jsx)(material_1.Typography, { py: 1, children: secondaryMessage })) : null, (0, jsx_runtime_1.jsx)(material_1.Box, { mt: 2, children: (0, jsx_runtime_1.jsxs)(material_1.Button, { variant: "contained", fullWidth: true, onClick: handlePrimaryButton, children: [status === stores_1.RouteExecutionStatus.Idle ? t('button.ok') : null, (0, utils_1.hasEnumFlag)(status, stores_1.RouteExecutionStatus.Done)
|
|
145
147
|
? t('button.done')
|
|
146
148
|
: null, status === stores_1.RouteExecutionStatus.Failed
|
|
147
149
|
? t('button.seeDetails')
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SwapPage = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
const
|
|
5
|
+
const Delete_1 = require("@mui/icons-material/Delete");
|
|
6
6
|
const material_1 = require("@mui/material");
|
|
7
7
|
const react_1 = require("react");
|
|
8
8
|
const react_hook_form_1 = require("react-hook-form");
|
|
@@ -71,6 +71,6 @@ const SwapPage = () => {
|
|
|
71
71
|
status === stores_1.RouteExecutionStatus.Failed ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(GasSufficiencyMessage_1.GasSufficiencyMessage, { route: route, mt: 2 }), (0, jsx_runtime_1.jsxs)(material_1.Box, { mt: 2, display: "flex", children: [(0, jsx_runtime_1.jsx)(StartSwapButton_1.StartSwapButton, { text: getSwapButtonText(), onClick: handleSwapClick, currentRoute: route }), status === stores_1.RouteExecutionStatus.Failed ? ((0, jsx_runtime_1.jsx)(material_1.Tooltip, { title: t('button.removeSwap'), placement: "bottom-end", enterDelay: 400, arrow: true, children: (0, jsx_runtime_1.jsx)(material_1.Button, { onClick: handleRemoveRoute, sx: {
|
|
72
72
|
minWidth: 48,
|
|
73
73
|
marginLeft: 1,
|
|
74
|
-
}, children: (0, jsx_runtime_1.jsx)(
|
|
74
|
+
}, children: (0, jsx_runtime_1.jsx)(Delete_1.default, {}) }) })) : null] })] })) : null, route && status ? ((0, jsx_runtime_1.jsx)(StatusBottomSheet_1.StatusBottomSheet, { status: status, route: route })) : null, route ? ((0, jsx_runtime_1.jsx)(TokenValueBottomSheet_1.TokenValueBottomSheet, { route: route, ref: tokenValueBottomSheetRef, onContinue: handleExecuteRoute })) : null, route ? ((0, jsx_runtime_1.jsx)(ExchangeRateBottomSheet_1.ExchangeRateBottomSheet, { ref: exchangeRateBottomSheetRef })) : null] }));
|
|
75
75
|
};
|
|
76
76
|
exports.SwapPage = SwapPage;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.getTokenValueLossThreshold = exports.TokenValueBottomSheet = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
const
|
|
5
|
+
const WarningRounded_1 = require("@mui/icons-material/WarningRounded");
|
|
6
6
|
const material_1 = require("@mui/material");
|
|
7
7
|
const big_js_1 = require("big.js");
|
|
8
8
|
const react_1 = require("react");
|
|
@@ -21,7 +21,7 @@ const TokenValueBottomSheetContent = ({ route, onCancel, onContinue, }) => {
|
|
|
21
21
|
const { t } = (0, react_i18next_1.useTranslation)();
|
|
22
22
|
const ref = (0, react_1.useRef)();
|
|
23
23
|
(0, hooks_1.useSetContentHeight)(ref);
|
|
24
|
-
return ((0, jsx_runtime_1.jsxs)(material_1.Box, { p: 3, ref: ref, children: [(0, jsx_runtime_1.jsxs)(StatusBottomSheet_style_1.IconContainer, { children: [(0, jsx_runtime_1.jsx)(StatusBottomSheet_style_1.IconCircle, { status: "warning", mb: 1, children: (0, jsx_runtime_1.jsx)(
|
|
24
|
+
return ((0, jsx_runtime_1.jsxs)(material_1.Box, { p: 3, ref: ref, children: [(0, jsx_runtime_1.jsxs)(StatusBottomSheet_style_1.IconContainer, { children: [(0, jsx_runtime_1.jsx)(StatusBottomSheet_style_1.IconCircle, { status: "warning", mb: 1, children: (0, jsx_runtime_1.jsx)(WarningRounded_1.default, { color: "warning" }) }), (0, jsx_runtime_1.jsx)(material_1.Typography, { py: 1, fontSize: 18, fontWeight: 700, children: t('swap.warning.title.highValueLoss') })] }), (0, jsx_runtime_1.jsx)(material_1.Typography, { py: 1, children: t('swap.warning.message.highValueLoss') }), (0, jsx_runtime_1.jsxs)(material_1.Box, { display: "flex", justifyContent: "space-between", mt: 1, children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { children: t('swap.swapping') }), (0, jsx_runtime_1.jsx)(material_1.Typography, { fontWeight: 600, children: t('format.currency', { value: route.fromAmountUSD }) })] }), (0, jsx_runtime_1.jsxs)(material_1.Box, { display: "flex", justifyContent: "space-between", mt: 0.25, children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { children: t('swap.gasCost') }), (0, jsx_runtime_1.jsx)(material_1.Typography, { fontWeight: 600, children: t('format.currency', { value: route.gasCostUSD }) })] }), (0, jsx_runtime_1.jsxs)(material_1.Box, { display: "flex", justifyContent: "space-between", mt: 0.25, children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { children: t('swap.receiving') }), (0, jsx_runtime_1.jsx)(material_1.Typography, { fontWeight: 600, children: t('format.currency', { value: route.toAmountUSD }) })] }), (0, jsx_runtime_1.jsxs)(material_1.Box, { display: "flex", justifyContent: "space-between", mt: 0.25, children: [(0, jsx_runtime_1.jsx)(material_1.Typography, { children: t('swap.valueLoss') }), (0, jsx_runtime_1.jsxs)(material_1.Typography, { fontWeight: 600, children: [(0, big_js_1.default)(route.toAmountUSD || 0)
|
|
25
25
|
.div((0, big_js_1.default)(route.fromAmountUSD || 0).plus((0, big_js_1.default)(route.gasCostUSD || 0)))
|
|
26
26
|
.minus(1)
|
|
27
27
|
.mul(100)
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
export declare const Stack: import("@emotion/styled").StyledComponent<import("@mui/system").SystemProps<import("@mui/material").Theme> & {
|
|
3
|
-
ref?: import("react").Ref<unknown> | undefined;
|
|
4
3
|
children?: import("react").ReactNode;
|
|
5
4
|
direction?: import("@mui/system").ResponsiveStyleValue<"column" | "column-reverse" | "row" | "row-reverse"> | undefined;
|
|
6
5
|
spacing?: import("@mui/system").ResponsiveStyleValue<string | number> | undefined;
|
|
@@ -8,4 +7,4 @@ export declare const Stack: import("@emotion/styled").StyledComponent<import("@m
|
|
|
8
7
|
sx?: import("@mui/material").SxProps<import("@mui/material").Theme> | undefined;
|
|
9
8
|
} & import("@mui/material/OverridableComponent").CommonProps & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
|
|
10
9
|
ref?: import("react").RefObject<HTMLDivElement> | ((instance: HTMLDivElement | null) => void) | null | undefined;
|
|
11
|
-
}, keyof import("@mui/material/OverridableComponent").CommonProps | "children" | "sx" | "
|
|
10
|
+
}, keyof import("@mui/material/OverridableComponent").CommonProps | "children" | "sx" | "direction" | ("p" | "color" | "border" | "boxShadow" | "fontWeight" | "zIndex" | "alignContent" | "alignItems" | "alignSelf" | "bottom" | "boxSizing" | "columnGap" | "display" | "flexBasis" | "flexDirection" | "flexGrow" | "flexShrink" | "flexWrap" | "fontFamily" | "fontSize" | "fontStyle" | "gridAutoColumns" | "gridAutoFlow" | "gridAutoRows" | "gridTemplateAreas" | "gridTemplateColumns" | "gridTemplateRows" | "height" | "justifyContent" | "justifyItems" | "justifySelf" | "left" | "letterSpacing" | "lineHeight" | "marginBottom" | "marginLeft" | "marginRight" | "marginTop" | "maxHeight" | "maxWidth" | "minHeight" | "minWidth" | "order" | "paddingBottom" | "paddingLeft" | "paddingRight" | "paddingTop" | "position" | "right" | "rowGap" | "textAlign" | "textOverflow" | "textTransform" | "top" | "visibility" | "whiteSpace" | "width" | "borderBottom" | "borderColor" | "borderLeft" | "borderRadius" | "borderRight" | "borderTop" | "flex" | "gap" | "gridArea" | "gridColumn" | "gridRow" | "margin" | "overflow" | "padding" | "bgcolor" | "m" | "mt" | "mr" | "mb" | "ml" | "mx" | "marginX" | "my" | "marginY" | "pt" | "pr" | "pb" | "pl" | "px" | "paddingX" | "py" | "paddingY" | "typography" | "displayPrint") | "divider" | "spacing"> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import
|
|
2
|
+
import ArrowForwardIcon from '@mui/icons-material/ArrowForward';
|
|
3
|
+
import ErrorRoundedIcon from '@mui/icons-material/ErrorRounded';
|
|
4
|
+
import InfoRoundedIcon from '@mui/icons-material/InfoRounded';
|
|
3
5
|
import { ListItemAvatar, ListItemText, Typography } from '@mui/material';
|
|
4
6
|
import { useNavigate } from 'react-router-dom';
|
|
5
7
|
import { useProcessMessage, useRouteExecution } from '../../hooks';
|
|
@@ -30,9 +32,9 @@ export const ActiveSwapItem = ({ routeId, dense }) => {
|
|
|
30
32
|
const getStatusComponent = () => {
|
|
31
33
|
switch (lastActiveProcess?.status) {
|
|
32
34
|
case 'ACTION_REQUIRED':
|
|
33
|
-
return _jsx(
|
|
35
|
+
return _jsx(InfoRoundedIcon, { color: "info", fontSize: "small" });
|
|
34
36
|
case 'FAILED':
|
|
35
|
-
return _jsx(
|
|
37
|
+
return _jsx(ErrorRoundedIcon, { color: "error", fontSize: "small" });
|
|
36
38
|
default:
|
|
37
39
|
return (_jsx(Typography, { fontSize: 14, fontWeight: 500, children: _jsx(StepTimer, { step: lastActiveStep, hideInProgress: true }) }));
|
|
38
40
|
}
|
|
@@ -14,7 +14,7 @@ export const useChainSelect = (formType) => {
|
|
|
14
14
|
}
|
|
15
15
|
const selectedChains = chainOrder
|
|
16
16
|
.map((chainId) => chains.find((chain) => chain.id === chainId))
|
|
17
|
-
.filter(
|
|
17
|
+
.filter(Boolean);
|
|
18
18
|
return selectedChains;
|
|
19
19
|
};
|
|
20
20
|
const setCurrentChain = (chainId) => {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import
|
|
2
|
+
import WarningAmberRoundedIcon from '@mui/icons-material/WarningAmberRounded';
|
|
3
3
|
import { Box, Collapse, Typography } from '@mui/material';
|
|
4
4
|
import { useTranslation } from 'react-i18next';
|
|
5
5
|
import { useGasSufficiency } from '../../hooks';
|
|
@@ -10,7 +10,7 @@ export const GasSufficiencyMessage = ({ route, ...props }) => {
|
|
|
10
10
|
const { t } = useTranslation();
|
|
11
11
|
const recommendedRoute = useRecommendedRouteStore((state) => state.recommendedRoute);
|
|
12
12
|
const { insufficientFunds, insufficientGas } = useGasSufficiency(route ?? recommendedRoute);
|
|
13
|
-
return (_jsx(Collapse, { timeout: 225, in: Boolean(insufficientFunds || insufficientGas?.length), unmountOnExit: true, mountOnEnter: true, appear: true, children: _jsx(Box, { ...props, children: _jsxs(MessageCard, { children: [_jsx(
|
|
13
|
+
return (_jsx(Collapse, { timeout: 225, in: Boolean(insufficientFunds || insufficientGas?.length), unmountOnExit: true, mountOnEnter: true, appear: true, children: _jsx(Box, { ...props, children: _jsxs(MessageCard, { children: [_jsx(WarningAmberRoundedIcon, { sx: {
|
|
14
14
|
marginTop: 2,
|
|
15
15
|
marginLeft: 2,
|
|
16
16
|
} }), _jsxs(Box, { children: [insufficientGas?.length ? (_jsx(CardTitle, { children: t(`swap.warning.title.insufficientGas`) })) : null, insufficientFunds ? (_jsx(Typography, { variant: "body2", px: 2, pb: insufficientGas?.length ? 0 : 2, pt: insufficientGas?.length ? 1 : 2, children: insufficientFunds
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import
|
|
2
|
+
import ArrowBackIcon from '@mui/icons-material/ArrowBack';
|
|
3
|
+
import ReceiptLongRoundedIcon from '@mui/icons-material/ReceiptLongRounded';
|
|
4
|
+
import SettingsOutlinedIcon from '@mui/icons-material/SettingsOutlined';
|
|
3
5
|
import { Box, IconButton, Tooltip, Typography } from '@mui/material';
|
|
4
6
|
import { useTranslation } from 'react-i18next';
|
|
5
7
|
import { Route, Routes, useLocation } from 'react-router-dom';
|
|
@@ -60,7 +62,7 @@ export const NavigationHeader = () => {
|
|
|
60
62
|
}
|
|
61
63
|
}
|
|
62
64
|
};
|
|
63
|
-
return (_jsxs(HeaderAppBar, { elevation: 0, children: [backButtonRoutes.includes(path) ? (_jsx(IconButton, { size: "medium", edge: "start", onClick: navigateBack, children: _jsx(ArrowBackIcon, {}) })) : null, _jsx(Typography, { fontSize: hasPath ? 18 : 24, align: hasPath ? 'center' : 'left', fontWeight: "700", flex: 1, noWrap: true, children: handleHeaderTitle() }), _jsxs(Routes, { children: [_jsx(Route, { path: navigationRoutes.home, element: _jsxs(_Fragment, { children: [account.isActive ? (_jsx(Tooltip, { title: t(`header.swapHistory`), enterDelay: 400, arrow: true, children: _jsx(IconButton, { size: "medium", edge: "start", onClick: () => navigate(navigationRoutes.swapHistory), children: _jsx(
|
|
65
|
+
return (_jsxs(HeaderAppBar, { elevation: 0, children: [backButtonRoutes.includes(path) ? (_jsx(IconButton, { size: "medium", edge: "start", onClick: navigateBack, children: _jsx(ArrowBackIcon, {}) })) : null, _jsx(Typography, { fontSize: hasPath ? 18 : 24, align: hasPath ? 'center' : 'left', fontWeight: "700", flex: 1, noWrap: true, children: handleHeaderTitle() }), _jsxs(Routes, { children: [_jsx(Route, { path: navigationRoutes.home, element: _jsxs(_Fragment, { children: [account.isActive ? (_jsx(Tooltip, { title: t(`header.swapHistory`), enterDelay: 400, arrow: true, children: _jsx(IconButton, { size: "medium", edge: "start", onClick: () => navigate(navigationRoutes.swapHistory), children: _jsx(ReceiptLongRoundedIcon, {}) }) })) : null, _jsx(Tooltip, { title: t(`header.settings`), enterDelay: 400, arrow: true, children: _jsx(IconButton, { size: "medium", onClick: () => navigate(navigationRoutes.settings), sx: {
|
|
64
66
|
marginRight: -1.25,
|
|
65
|
-
}, children: _jsx(
|
|
67
|
+
}, children: _jsx(SettingsOutlinedIcon, {}) }) })] }) }), _jsx(Route, { path: "*", element: element || _jsx(Box, { width: 28, height: 40 }) })] })] }));
|
|
66
68
|
};
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
-
import
|
|
2
|
+
import ContentCopyIcon from '@mui/icons-material/ContentCopy';
|
|
3
|
+
import ExpandMoreIcon from '@mui/icons-material/ExpandMore';
|
|
4
|
+
import OpenInNewOutlinedIcon from '@mui/icons-material/OpenInNewOutlined';
|
|
5
|
+
import PowerSettingsNewRoundedIcon from '@mui/icons-material/PowerSettingsNewRounded';
|
|
6
|
+
import WalletOutlinedIcon from '@mui/icons-material/WalletOutlined';
|
|
3
7
|
import { Avatar, Button, MenuItem } from '@mui/material';
|
|
4
8
|
import { useState } from 'react';
|
|
5
9
|
import { useTranslation } from 'react-i18next';
|
|
@@ -52,7 +56,7 @@ const ConnectedButton = () => {
|
|
|
52
56
|
};
|
|
53
57
|
return (_jsxs(_Fragment, { children: [_jsx(WalletButton, { endIcon: _jsx(ExpandMoreIcon, {}), startIcon: _jsx(Avatar, { src: chain?.logoURI, alt: chain?.key, sx: { width: 24, height: 24 }, children: chain?.name[0] }), sx: {
|
|
54
58
|
marginRight: -1.25,
|
|
55
|
-
}, onClick: handleClick, children: walletAddress }), _jsxs(WalletMenu, { anchorEl: anchorEl, open: Boolean(anchorEl), onClose: handleClose, children: [_jsxs(MenuItem, { onClick: handleCopyAddress, children: [_jsx(ContentCopyIcon, {}), t(`button.copyAddress`)] }), _jsxs(MenuItem, { component: "a", onClick: handleClose, href: `${chain?.metamask.blockExplorerUrls[0]}address/${account.address}`, target: "_blank", children: [_jsx(OpenInNewOutlinedIcon, {}), t(`button.viewOnExplorer`)] }), _jsx(Button, { onClick: handleDisconnect, fullWidth: true, startIcon: _jsx(
|
|
59
|
+
}, onClick: handleClick, children: walletAddress }), _jsxs(WalletMenu, { anchorEl: anchorEl, open: Boolean(anchorEl), onClose: handleClose, children: [_jsxs(MenuItem, { onClick: handleCopyAddress, children: [_jsx(ContentCopyIcon, {}), t(`button.copyAddress`)] }), _jsxs(MenuItem, { component: "a", onClick: handleClose, href: `${chain?.metamask.blockExplorerUrls[0]}address/${account.address}`, target: "_blank", children: [_jsx(OpenInNewOutlinedIcon, {}), t(`button.viewOnExplorer`)] }), _jsx(Button, { onClick: handleDisconnect, fullWidth: true, startIcon: _jsx(PowerSettingsNewRoundedIcon, {}), sx: {
|
|
56
60
|
marginTop: 1,
|
|
57
61
|
}, children: t(`button.disconnect`) })] })] }));
|
|
58
62
|
};
|
package/components/NotFound.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import
|
|
2
|
+
import BlockIcon from '@mui/icons-material/Block';
|
|
3
3
|
import { Box, Typography } from '@mui/material';
|
|
4
4
|
import { useTranslation } from 'react-i18next';
|
|
5
5
|
export const NotFound = () => {
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import
|
|
2
|
+
import SwapHorizIcon from '@mui/icons-material/SwapHoriz';
|
|
3
|
+
import SwapVertIcon from '@mui/icons-material/SwapVert';
|
|
3
4
|
import { useFormContext } from 'react-hook-form';
|
|
4
5
|
import { SwapFormKey } from '../../providers';
|
|
5
6
|
import { IconButton } from './ReverseTokensButton.style';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import
|
|
2
|
+
import WalletOutlinedIcon from '@mui/icons-material/WalletOutlined';
|
|
3
3
|
import { Button, Tooltip } from '@mui/material';
|
|
4
4
|
import { useFormContext } from 'react-hook-form';
|
|
5
5
|
import { useTranslation } from 'react-i18next';
|
|
@@ -1,20 +1,23 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import
|
|
2
|
+
import DoneIcon from '@mui/icons-material/Done';
|
|
3
|
+
import ErrorRoundedIcon from '@mui/icons-material/ErrorRounded';
|
|
4
|
+
import InfoRoundedIcon from '@mui/icons-material/InfoRounded';
|
|
5
|
+
import WarningRoundedIcon from '@mui/icons-material/WarningRounded';
|
|
3
6
|
import { darken } from '@mui/material/styles';
|
|
4
|
-
import { CircularIcon, CircularProgressPending } from './CircularProgress.style';
|
|
7
|
+
import { CircularIcon, CircularProgressPending, } from './CircularProgress.style';
|
|
5
8
|
export function CircularProgress({ process }) {
|
|
6
|
-
return (_jsxs(CircularIcon, { status: process.status, substatus: process.substatus, children: [process.status === 'STARTED' || process.status === 'PENDING' ? (_jsx(CircularProgressPending, { size: 32, thickness: 3 })) : null, process.status === 'ACTION_REQUIRED' ? (_jsx(
|
|
9
|
+
return (_jsxs(CircularIcon, { status: process.status, substatus: process.substatus, children: [process.status === 'STARTED' || process.status === 'PENDING' ? (_jsx(CircularProgressPending, { size: 32, thickness: 3 })) : null, process.status === 'ACTION_REQUIRED' ? (_jsx(InfoRoundedIcon, { color: "info", sx: {
|
|
7
10
|
position: 'absolute',
|
|
8
11
|
fontSize: '1rem',
|
|
9
12
|
} })) : null, process.status === 'DONE' &&
|
|
10
|
-
(process.substatus === 'PARTIAL' || process.substatus === 'REFUNDED') ? (_jsx(
|
|
13
|
+
(process.substatus === 'PARTIAL' || process.substatus === 'REFUNDED') ? (_jsx(WarningRoundedIcon, { sx: (theme) => ({
|
|
11
14
|
position: 'absolute',
|
|
12
15
|
fontSize: '1rem',
|
|
13
16
|
color: darken(theme.palette.warning.main, 0.32),
|
|
14
17
|
}) })) : process.status === 'DONE' ? (_jsx(DoneIcon, { color: "success", sx: {
|
|
15
18
|
position: 'absolute',
|
|
16
19
|
fontSize: '1rem',
|
|
17
|
-
} })) : null, process.status === 'FAILED' ? (_jsx(
|
|
20
|
+
} })) : null, process.status === 'FAILED' ? (_jsx(ErrorRoundedIcon, { color: "error", sx: {
|
|
18
21
|
position: 'absolute',
|
|
19
22
|
fontSize: '1rem',
|
|
20
23
|
} })) : null] }));
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import
|
|
2
|
+
import LinkRoundedIcon from '@mui/icons-material/LinkRounded';
|
|
3
|
+
import WalletOutlinedIcon from '@mui/icons-material/WalletOutlined';
|
|
3
4
|
import { Box, Link, Typography } from '@mui/material';
|
|
4
5
|
import { useTranslation } from 'react-i18next';
|
|
5
6
|
import { CircularIcon } from './CircularProgress.style';
|
|
@@ -23,5 +24,5 @@ export const DestinationWalletAddress = ({ step, toAddress, toAddressLink }) =>
|
|
|
23
24
|
display: 'flex',
|
|
24
25
|
flex: 1,
|
|
25
26
|
justifyContent: 'flex-end',
|
|
26
|
-
}, children: _jsx(LinkButton, { size: "small", edge: "end", LinkComponent: Link, href: toAddressLink, target: "_blank", rel: "nofollow noreferrer", children: _jsx(
|
|
27
|
+
}, children: _jsx(LinkButton, { size: "small", edge: "end", LinkComponent: Link, href: toAddressLink, target: "_blank", rel: "nofollow noreferrer", children: _jsx(LinkRoundedIcon, {}) }) })] }) }));
|
|
27
28
|
};
|