diff --git a/.changeset/wet-impalas-dance.md b/.changeset/wet-impalas-dance.md new file mode 100644 index 0000000000..c343b2813d --- /dev/null +++ b/.changeset/wet-impalas-dance.md @@ -0,0 +1,5 @@ +--- +"@venusprotocol/evm": patch +--- + +fix Pendle vault withdraw flow diff --git a/apps/evm/src/containers/VaultCard/PendleVaultModal/PositionTab/WithdrawForm/index.tsx b/apps/evm/src/containers/VaultCard/PendleVaultModal/PositionTab/WithdrawForm/index.tsx index 49514748a4..16632f74d8 100644 --- a/apps/evm/src/containers/VaultCard/PendleVaultModal/PositionTab/WithdrawForm/index.tsx +++ b/apps/evm/src/containers/VaultCard/PendleVaultModal/PositionTab/WithdrawForm/index.tsx @@ -18,6 +18,7 @@ import { formatTokensToReadableValue, } from 'utilities'; +import { useGetContractAddress } from 'hooks/useGetContractAddress'; import { VError } from 'libs/errors'; import { useAccountAddress } from 'libs/wallet'; import type { PendleVaultAction } from '../../types'; @@ -36,6 +37,8 @@ export const WithdrawForm: React.FC = ({ vault, onClose }) => const { t, Trans } = useTranslation(); const now = useNow(); + const { address: pendlePtVaultAddress } = useGetContractAddress({ name: 'PendlePtVault' }); + const hasMatured = !!vault.maturityDate && now.getTime() > vault.maturityDate.getTime(); const actionMode: PendleVaultAction = hasMatured ? 'redeemAtMaturity' : 'withdraw'; @@ -159,6 +162,8 @@ export const WithdrawForm: React.FC = ({ vault, onClose }) => swapFromToken={actionMode !== 'redeemAtMaturity' ? fromToken : undefined} swapToToken={actionMode !== 'redeemAtMaturity' ? toToken : undefined} isLoading={isGetSwapQuoteLoading} + delegateeAddress={pendlePtVaultAddress} + vaultPoolComptrollerContractAddress={vault.poolComptrollerContractAddress} footer={