diff --git a/bridge_ui/src/components/Attest/Send.tsx b/bridge_ui/src/components/Attest/Send.tsx
index 6a475562..5399fb27 100644
--- a/bridge_ui/src/components/Attest/Send.tsx
+++ b/bridge_ui/src/components/Attest/Send.tsx
@@ -3,7 +3,6 @@ import { useCallback } from "react";
import { useDispatch, useSelector } from "react-redux";
import { useEthereumProvider } from "../../contexts/EthereumProviderContext";
import { useSolanaWallet } from "../../contexts/SolanaWalletContext";
-import useWrappedAsset from "../../hooks/useWrappedAsset";
import { setIsSending, setSignedVAAHex } from "../../store/attestSlice";
import {
selectAttestIsSendComplete,
@@ -11,7 +10,6 @@ import {
selectAttestIsTargetComplete,
selectAttestSourceAsset,
selectAttestSourceChain,
- selectAttestTargetChain,
} from "../../store/selectors";
import { uint8ArrayToHex } from "../../utils/array";
import attestFrom, {
@@ -35,21 +33,12 @@ function Send() {
const dispatch = useDispatch();
const sourceChain = useSelector(selectAttestSourceChain);
const sourceAsset = useSelector(selectAttestSourceAsset);
- const targetChain = useSelector(selectAttestTargetChain);
const isTargetComplete = useSelector(selectAttestIsTargetComplete);
const isSending = useSelector(selectAttestIsSending);
const isSendComplete = useSelector(selectAttestIsSendComplete);
const { provider, signer } = useEthereumProvider();
const { wallet } = useSolanaWallet();
const solPK = wallet?.publicKey;
- const {
- isLoading: isCheckingWrapped,
- // isWrapped,
- wrappedAsset,
- } = useWrappedAsset(targetChain, sourceChain, sourceAsset, provider);
- // TODO: check this and send to separate flow
- const isWrapped = true;
- console.log(isCheckingWrapped, isWrapped, wrappedAsset);
// TODO: dynamically get "to" wallet
const handleAttestClick = useCallback(() => {
// TODO: more generic way of calling these
diff --git a/bridge_ui/src/components/Attest/index.tsx b/bridge_ui/src/components/Attest/index.tsx
index 34e0d63b..a723b019 100644
--- a/bridge_ui/src/components/Attest/index.tsx
+++ b/bridge_ui/src/components/Attest/index.tsx
@@ -20,7 +20,7 @@ import Target from "./Target";
// TODO: ensure that both wallets are connected to the same known network
function Attest() {
- useGetBalanceEffect();
+ useGetBalanceEffect("source");
const dispatch = useDispatch();
const activeStep = useSelector(selectAttestActiveStep);
const signedVAAHex = useSelector(selectAttestSignedVAAHex);
diff --git a/bridge_ui/src/components/Transfer/Redeem.tsx b/bridge_ui/src/components/Transfer/Redeem.tsx
index ff684da0..dc1ecec8 100644
--- a/bridge_ui/src/components/Transfer/Redeem.tsx
+++ b/bridge_ui/src/components/Transfer/Redeem.tsx
@@ -2,15 +2,18 @@ import { Button, CircularProgress, makeStyles } from "@material-ui/core";
import { useCallback } from "react";
import { useDispatch, useSelector } from "react-redux";
import { useEthereumProvider } from "../../contexts/EthereumProviderContext";
+import { useSolanaWallet } from "../../contexts/SolanaWalletContext";
import useTransferSignedVAA from "../../hooks/useTransferSignedVAA";
import {
selectTransferIsRedeeming,
+ selectTransferIsSourceAssetWormholeWrapped,
+ selectTransferOriginChain,
+ selectTransferTargetAsset,
selectTransferTargetChain,
} from "../../store/selectors";
import { setIsRedeeming } from "../../store/transferSlice";
import { CHAIN_ID_ETH, CHAIN_ID_SOLANA } from "../../utils/consts";
import redeemOn, { redeemOnEth, redeemOnSolana } from "../../utils/redeemOn";
-import { useSolanaWallet } from "../../contexts/SolanaWalletContext";
const useStyles = makeStyles((theme) => ({
transferButton: {
@@ -23,7 +26,12 @@ const useStyles = makeStyles((theme) => ({
function Redeem() {
const dispatch = useDispatch();
const classes = useStyles();
+ const isSourceAssetWormholeWrapped = useSelector(
+ selectTransferIsSourceAssetWormholeWrapped
+ );
+ const originChain = useSelector(selectTransferOriginChain);
const targetChain = useSelector(selectTransferTargetChain);
+ const targetAsset = useSelector(selectTransferTargetAsset);
const { wallet } = useSolanaWallet();
const solPK = wallet?.publicKey;
const { provider, signer } = useEthereumProvider();
@@ -44,9 +52,26 @@ function Redeem() {
signedVAA
) {
dispatch(setIsRedeeming(true));
- redeemOnSolana(wallet, solPK?.toString(), signedVAA);
+ redeemOnSolana(
+ wallet,
+ solPK?.toString(),
+ signedVAA,
+ !!isSourceAssetWormholeWrapped && originChain === CHAIN_ID_SOLANA,
+ targetAsset || undefined
+ );
}
- }, [dispatch, targetChain, provider, signer, signedVAA, wallet, solPK]);
+ }, [
+ dispatch,
+ targetChain,
+ provider,
+ signer,
+ signedVAA,
+ wallet,
+ solPK,
+ isSourceAssetWormholeWrapped,
+ originChain,
+ targetAsset,
+ ]);
return (