Skip to content

Commit 94f9119

Browse files
committed
feat: wip
1 parent c1b2207 commit 94f9119

35 files changed

Lines changed: 377 additions & 801 deletions

File tree

apps/evm/src/clients/api/queries/getSimulatedPool/useGetSimulatedPool/index.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ export type useGetSimulatedPoolQueryKey = [
2020
},
2121
];
2222

23-
type Options = QueryObserverOptions<
23+
export type UseGetSimulatedPoolOptions = QueryObserverOptions<
2424
GetSimulatedPoolOutput,
2525
Error,
2626
GetSimulatedPoolOutput,
@@ -30,7 +30,7 @@ type Options = QueryObserverOptions<
3030

3131
export const useGetSimulatedPool = (
3232
input: TrimmedSimulatedPoolInput,
33-
options?: Partial<Options>,
33+
options?: Partial<UseGetSimulatedPoolOptions>,
3434
) => {
3535
const { chainId } = useChainId();
3636
const { publicClient } = usePublicClient();

apps/evm/src/components/SelectTokenTextField/TokenList/index.tsx

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,10 @@ import { type InputHTMLAttributes, useMemo, useState } from 'react';
55
import { TokenIconWithSymbol } from 'components/TokenIconWithSymbol';
66
import { useTranslation } from 'libs/translations';
77
import type { Token, TokenBalance } from 'types';
8-
import { convertMantissaToTokens } from 'utilities';
8+
import { areTokensEqual, convertMantissaToTokens } from 'utilities';
99

1010
import { SenaryButton } from '@venusprotocol/ui';
11+
import { Icon } from 'components';
1112
import { TextField } from '../../TextField';
1213
import { useStyles as useParentStyles } from '../styles';
1314
import { getTokenListItemTestId } from '../testIdGetters';
@@ -18,6 +19,7 @@ export interface TokenListProps {
1819
tokenBalances: OptionalTokenBalance[];
1920
onTokenClick: (token: Token) => void;
2021
displayCommonTokenButtons: boolean;
22+
selectedToken: Token;
2123
'data-testid'?: string;
2224
}
2325

@@ -27,6 +29,7 @@ export const TokenList: React.FC<TokenListProps> = ({
2729
tokenBalances,
2830
onTokenClick,
2931
displayCommonTokenButtons,
32+
selectedToken,
3033
'data-testid': testId,
3134
}) => {
3235
const { t } = useTranslation();
@@ -137,6 +140,10 @@ export const TokenList: React.FC<TokenListProps> = ({
137140
})}
138141
</Typography>
139142
)}
143+
144+
{!tokenBalance.balanceMantissa && areTokensEqual(tokenBalance.token, selectedToken) && (
145+
<Icon name="mark" className="text-green size-5" />
146+
)}
140147
</div>
141148
))}
142149
</div>

apps/evm/src/components/SelectTokenTextField/index.tsx

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { useState } from 'react';
44

55
import type { Token } from 'types';
66

7-
import { TertiaryButton, cn } from '@venusprotocol/ui';
7+
import { TertiaryButton } from '@venusprotocol/ui';
88
import { Icon } from '../Icon';
99
import { TokenIcon } from '../TokenIcon';
1010
import { TokenTextField, type TokenTextFieldProps } from '../TokenTextField';
@@ -17,12 +17,13 @@ import {
1717
} from './testIdGetters';
1818
import type { OptionalTokenBalance } from './types';
1919

20+
export * from './types';
21+
2022
export interface SelectTokenTextFieldProps extends Omit<TokenTextFieldProps, 'max' | 'token'> {
2123
tokenBalances: OptionalTokenBalance[];
2224
selectedToken: Token;
2325
onChangeSelectedToken: (token: Token) => void;
2426
token?: Token;
25-
selectedTokenLabel?: string;
2627
displayCommonTokenButtons?: boolean;
2728
'data-testid'?: string;
2829
}
@@ -38,7 +39,6 @@ export const SelectTokenTextField: React.FC<SelectTokenTextFieldProps> = ({
3839
rightMaxButton,
3940
'data-testid': testId,
4041
description,
41-
selectedTokenLabel,
4242
displayCommonTokenButtons = false,
4343
...otherTokenTextFieldProps
4444
}) => {
@@ -72,15 +72,7 @@ export const SelectTokenTextField: React.FC<SelectTokenTextFieldProps> = ({
7272
<div className="flex items-center gap-x-2">
7373
<TokenIcon token={selectedToken} className="h-5 w-5" />
7474

75-
<div className="text-left">
76-
<div className={cn(!!selectedTokenLabel && 'leading-3')}>
77-
{selectedToken.symbol}
78-
</div>
79-
80-
{!!selectedTokenLabel && (
81-
<p className="text-xs text-grey leading-3 font-normal">{selectedTokenLabel}</p>
82-
)}
83-
</div>
75+
<div className="text-left">{selectedToken.symbol}</div>
8476
</div>
8577

8678
<Icon
@@ -112,6 +104,7 @@ export const SelectTokenTextField: React.FC<SelectTokenTextFieldProps> = ({
112104
tokenBalances={tokenBalances}
113105
data-testid={testId}
114106
onTokenClick={handleChangeSelectedToken}
107+
selectedToken={selectedToken}
115108
displayCommonTokenButtons={displayCommonTokenButtons}
116109
/>
117110
)}

apps/evm/src/components/Slider/index.tsx

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ export interface SliderProps {
99
min?: number;
1010
disabled?: boolean;
1111
className?: string;
12+
rangeClassName?: string;
1213
}
1314

1415
export const Slider: React.FC<SliderProps> = ({
@@ -19,6 +20,7 @@ export const Slider: React.FC<SliderProps> = ({
1920
step,
2021
disabled = false,
2122
className,
23+
rangeClassName,
2224
}) => (
2325
<SliderPrimitive.Root
2426
data-slot="slider"
@@ -35,7 +37,10 @@ export const Slider: React.FC<SliderProps> = ({
3537
data-slot="slider-track"
3638
className="bg-lightGrey relative grow overflow-hidden rounded-full h-2 w-full"
3739
>
38-
<SliderPrimitive.Range data-slot="slider-range" className="bg-blue absolute h-full" />
40+
<SliderPrimitive.Range
41+
data-slot="slider-range"
42+
className={cn('bg-blue absolute h-full', rangeClassName)}
43+
/>
3944
</SliderPrimitive.Track>
4045

4146
<SliderPrimitive.Thumb

apps/evm/src/containers/AssetAccessor/DisabledActionNotice/index.tsx

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,10 @@ const DisabledActionNotice: React.FC<DisabledActionNoticeProps> = ({ token, acti
2626
return t('assetAccessor.disabledActionNotice.borrow');
2727
}
2828

29+
if (action === 'boost') {
30+
return t('assetAccessor.disabledActionNotice.boost');
31+
}
32+
2933
if (action === 'repay') {
3034
return t('assetAccessor.disabledActionNotice.repay');
3135
}

apps/evm/src/containers/AssetAccessor/index.tsx

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,11 +36,14 @@ const AssetAccessor: React.FC<AssetAccessorProps> = ({
3636
return <Spinner />;
3737
}
3838

39-
if (asset.disabledTokenActions.includes(action) || (action === 'borrow' && !asset.isBorrowable)) {
39+
if (
40+
asset.disabledTokenActions.includes(action) ||
41+
((action === 'borrow' || action === 'boost') && !asset.isBorrowable)
42+
) {
4043
return <DisabledActionNotice token={vToken.underlyingToken} action={action} />;
4144
}
4245

43-
if (action === 'borrow' && !asset.isBorrowableByUser) {
46+
if ((action === 'borrow' || action === 'boost') && !asset.isBorrowableByUser) {
4447
return (
4548
<NoticeWarning
4649
description={

0 commit comments

Comments
 (0)