Skip to content

Commit e64ebaa

Browse files
authored
Merge pull request QuickSwap#1660 from QuickSwap/dev2
Dev2
2 parents 0a412ad + df078c0 commit e64ebaa

File tree

26 files changed

+182
-94
lines changed

26 files changed

+182
-94
lines changed

public/bridge/soneium.webp

920 Bytes
Loading
2.62 KB
Loading
3.91 KB
Loading
704 Bytes
Loading

src/components/AddLiquidity/AddLiquidity.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ import {
4040
useIsExpertMode,
4141
useUserSlippageTolerance,
4242
useAmlScore,
43+
useUserSlippageAuto,
4344
} from 'state/user/hooks';
4445
import {
4546
maxAmountSpend,
@@ -57,7 +58,6 @@ import { useDerivedSwapInfo } from 'state/swap/hooks';
5758
import { useParams } from 'react-router-dom';
5859
import { V2_ROUTER_ADDRESS } from 'constants/v3/addresses';
5960
import usePoolsRedirect from 'hooks/usePoolsRedirect';
60-
import { SLIPPAGE_AUTO } from 'state/user/reducer';
6161
import { TransactionType } from 'models/enums';
6262

6363
const AddLiquidity: React.FC<{
@@ -78,9 +78,9 @@ const AddLiquidity: React.FC<{
7878
const [showConfirm, setShowConfirm] = useState(false);
7979
const [attemptingTxn, setAttemptingTxn] = useState(false);
8080
const [txPending, setTxPending] = useState(false);
81+
const [userSlippageAuto] = useUserSlippageAuto();
8182
let [allowedSlippage] = useUserSlippageTolerance();
82-
allowedSlippage =
83-
allowedSlippage === SLIPPAGE_AUTO ? autoSlippage : allowedSlippage;
83+
allowedSlippage = userSlippageAuto ? autoSlippage : allowedSlippage;
8484

8585
const { isLoading: isAmlScoreLoading, score: amlScore } = useAmlScore();
8686

src/components/Header/Header.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -260,7 +260,7 @@ const Header: React.FC<{ onUpdateNewsletter: (val: boolean) => void }> = ({
260260
});
261261
}
262262

263-
if (chainId !== ChainId.SONEIUM && isSupportedNetwork)
263+
if (isSupportedNetwork)
264264
menuItems.push({
265265
link: '/bridge',
266266
text: t('Bridge'),

src/components/HypeLabAds/HypeLabAds.tsx

Lines changed: 2 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,15 @@
11
import React from 'react';
22
import { useMediaQuery, useTheme } from '@material-ui/core';
33
import { Banner } from '@hypelab/sdk-react';
4-
import { BannerEmbed } from '@spindl-xyz/embed-react';
5-
import { useActiveWeb3React } from 'hooks';
64

75
const HypeLabAds: React.FC = () => {
8-
const { isActive, account } = useActiveWeb3React();
96
const { breakpoints } = useTheme();
107
const isMobile = useMediaQuery(breakpoints.down('xs'));
118

129
return (
1310
<div className='flex justify-center'>
14-
{isActive && (
15-
<BannerEmbed
16-
publisherId='quickswap' // required (get from Spindl team)
17-
placementId='swap_page' // required (get from Spindl team)
18-
style={{
19-
maxWidth: '728px',
20-
width: '100%',
21-
height: '90px',
22-
}} // recommended to add desired width/height
23-
address={account}
24-
/>
25-
)}
26-
{!isActive && isMobile && <Banner placement='4177d327af' />}
27-
{!isActive && !isMobile && <Banner placement='f70b3ef021' />}
11+
{isMobile && <Banner placement='4177d327af' />}
12+
{!isMobile && <Banner placement='f70b3ef021' />}
2813
</div>
2914
);
3015
};

src/components/RemoveLiquidityModal/RemoveLiquidityModal.tsx

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,10 @@ import {
2222
useBurnActionHandlers,
2323
} from 'state/burn/hooks';
2424
import { Field } from 'state/burn/actions';
25-
import { useUserSlippageTolerance } from 'state/user/hooks';
25+
import {
26+
useUserSlippageAuto,
27+
useUserSlippageTolerance,
28+
} from 'state/user/hooks';
2629
import {
2730
useTransactionAdder,
2831
useTransactionFinalizer,
@@ -46,7 +49,6 @@ import { ReactComponent as CloseIcon } from 'assets/images/CloseIcon.svg';
4649
import 'components/styles/RemoveLiquidityModal.scss';
4750
import { useTranslation } from 'react-i18next';
4851
import { V2_ROUTER_ADDRESS } from 'constants/v3/addresses';
49-
import { SLIPPAGE_AUTO } from 'state/user/reducer';
5052
import { TransactionType } from 'models/enums';
5153

5254
interface RemoveLiquidityModalProps {
@@ -90,10 +92,10 @@ const RemoveLiquidityModal: React.FC<RemoveLiquidityModalProps> = ({
9092
const deadline = useTransactionDeadline();
9193
const { onUserInput: _onUserInput } = useBurnActionHandlers();
9294
const { autoSlippage } = useDerivedSwapInfo();
95+
const [userSlippageAuto] = useUserSlippageAuto();
9396

9497
let [allowedSlippage] = useUserSlippageTolerance();
95-
allowedSlippage =
96-
allowedSlippage === SLIPPAGE_AUTO ? autoSlippage : allowedSlippage;
98+
allowedSlippage = userSlippageAuto ? autoSlippage : allowedSlippage;
9799

98100
const onUserInput = useCallback(
99101
(field: Field, typedValue: string) => {

src/components/SettingsModal/SettingsModal.tsx

Lines changed: 25 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,14 @@ import {
1515
useUserSlippageTolerance,
1616
useBonusRouterManager,
1717
useSlippageManuallySet,
18+
useUserSlippageAuto,
1819
useUserSingleHopOnly,
1920
useIsInfiniteApproval,
2021
} from 'state/user/hooks';
2122
import { ReactComponent as CloseIcon } from 'assets/images/CloseIcon.svg';
2223
import 'components/styles/SettingsModal.scss';
2324
import { useTranslation } from 'react-i18next';
24-
import { SLIPPAGE_AUTO } from 'state/user/reducer';
25+
import { SLIPPAGE_DEFAULT } from 'state/user/reducer';
2526
import { isMobile } from 'react-device-detect';
2627
import { LiquidityHubSettings } from 'components/Swap/orbs/LiquidityHub/Components';
2728

@@ -64,6 +65,9 @@ const SettingsModal: React.FC<SettingsModalProps> = ({
6465
slippageManuallySet,
6566
setSlippageManuallySet,
6667
] = useSlippageManuallySet();
68+
69+
const [userSlippageAuto, setUserSlippageAuto] = useUserSlippageAuto();
70+
6771
const [ttl, setTtl] = useUserTransactionTTL();
6872
const { onChangeRecipient } = useSwapActionHandlers();
6973
const [expertMode, toggleExpertMode] = useExpertModeManager();
@@ -84,18 +88,24 @@ const SettingsModal: React.FC<SettingsModalProps> = ({
8488
deadlineInput === '' || (ttl / 60).toString() === deadlineInput;
8589

8690
const slippageError = useMemo(() => {
91+
if (userSlippageAuto) {
92+
return undefined;
93+
}
8794
if (slippageInput !== '' && !slippageInputIsValid) {
8895
return SlippageError.InvalidInput;
89-
} else if (userSlippageTolerance === SLIPPAGE_AUTO) {
90-
return undefined;
9196
} else if (slippageInputIsValid && userSlippageTolerance < 50) {
9297
return SlippageError.RiskyLow;
9398
} else if (slippageInputIsValid && userSlippageTolerance > 500) {
9499
return SlippageError.RiskyHigh;
95100
} else {
96101
return undefined;
97102
}
98-
}, [slippageInput, userSlippageTolerance, slippageInputIsValid]);
103+
}, [
104+
slippageInput,
105+
userSlippageTolerance,
106+
slippageInputIsValid,
107+
userSlippageAuto,
108+
]);
99109

100110
const slippageAlert =
101111
!!slippageInput &&
@@ -112,7 +122,6 @@ const SettingsModal: React.FC<SettingsModalProps> = ({
112122

113123
const parseCustomSlippage = (value: string) => {
114124
setSlippageInput(value);
115-
116125
try {
117126
const valueAsIntFromRoundedFloat = Number.parseInt(
118127
(Number.parseFloat(value) * 100).toString(),
@@ -122,6 +131,7 @@ const SettingsModal: React.FC<SettingsModalProps> = ({
122131
valueAsIntFromRoundedFloat < 5000
123132
) {
124133
setUserslippageTolerance(valueAsIntFromRoundedFloat);
134+
setUserSlippageAuto(false);
125135
if (userSlippageTolerance !== valueAsIntFromRoundedFloat) {
126136
setSlippageManuallySet(true);
127137
}
@@ -198,14 +208,15 @@ const SettingsModal: React.FC<SettingsModalProps> = ({
198208
<Box className='flex items-center'>
199209
<Box
200210
className={`slippageButton${
201-
userSlippageTolerance === SLIPPAGE_AUTO
211+
userSlippageTolerance === SLIPPAGE_DEFAULT && userSlippageAuto
202212
? ' activeSlippageButton'
203213
: ''
204214
}`}
205215
onClick={() => {
206216
setSlippageInput('');
207-
setUserslippageTolerance(SLIPPAGE_AUTO);
208-
if (userSlippageTolerance !== SLIPPAGE_AUTO) {
217+
setUserslippageTolerance(SLIPPAGE_DEFAULT);
218+
setUserSlippageAuto(true);
219+
if (userSlippageTolerance !== SLIPPAGE_DEFAULT) {
209220
setSlippageManuallySet(true);
210221
}
211222
}}
@@ -219,6 +230,7 @@ const SettingsModal: React.FC<SettingsModalProps> = ({
219230
onClick={() => {
220231
setSlippageInput('');
221232
setUserslippageTolerance(10);
233+
setUserSlippageAuto(false);
222234
if (userSlippageTolerance !== 10) {
223235
setSlippageManuallySet(true);
224236
}
@@ -228,11 +240,14 @@ const SettingsModal: React.FC<SettingsModalProps> = ({
228240
</Box>
229241
<Box
230242
className={`slippageButton${
231-
userSlippageTolerance === 50 ? ' activeSlippageButton' : ''
243+
userSlippageTolerance === 50 && !userSlippageAuto
244+
? ' activeSlippageButton'
245+
: ''
232246
}`}
233247
onClick={() => {
234248
setSlippageInput('');
235249
setUserslippageTolerance(50);
250+
setUserSlippageAuto(false);
236251
if (userSlippageTolerance !== 50) {
237252
setSlippageManuallySet(true);
238253
}
@@ -247,6 +262,7 @@ const SettingsModal: React.FC<SettingsModalProps> = ({
247262
onClick={() => {
248263
setSlippageInput('');
249264
setUserslippageTolerance(100);
265+
setUserSlippageAuto(false);
250266
if (userSlippageTolerance !== 100) {
251267
setSlippageManuallySet(true);
252268
}

src/components/Swap/AdvancedSwapDetails.tsx

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,10 @@ import React, { useState } from 'react';
33
import { Box } from '@material-ui/core';
44
import { useTranslation } from 'react-i18next';
55
import { Field } from 'state/swap/actions';
6-
import { useUserSlippageTolerance } from 'state/user/hooks';
6+
import {
7+
useUserSlippageAuto,
8+
useUserSlippageTolerance,
9+
} from 'state/user/hooks';
710
import {
811
computeSlippageAdjustedAmounts,
912
computeTradePriceBreakdown,
@@ -17,7 +20,6 @@ import {
1720
import { ReactComponent as EditIcon } from 'assets/images/EditIcon.svg';
1821
import { formatTokenAmount } from 'utils';
1922
import { useDerivedSwapInfo } from 'state/swap/hooks';
20-
import { SLIPPAGE_AUTO } from 'state/user/reducer';
2123

2224
interface TradeSummaryProps {
2325
trade: Trade;
@@ -124,15 +126,14 @@ export const AdvancedSwapDetails: React.FC<AdvancedSwapDetailsProps> = ({
124126
}) => {
125127
const [allowedSlippage] = useUserSlippageTolerance();
126128
const { autoSlippage } = useDerivedSwapInfo();
129+
const [userSlippageAuto] = useUserSlippageAuto();
127130

128131
return (
129132
<>
130133
{trade && (
131134
<TradeSummary
132135
trade={trade}
133-
allowedSlippage={
134-
allowedSlippage === SLIPPAGE_AUTO ? autoSlippage : allowedSlippage
135-
}
136+
allowedSlippage={userSlippageAuto ? autoSlippage : allowedSlippage}
136137
/>
137138
)}
138139
</>

0 commit comments

Comments
 (0)