bridge_ui: remove terra tax calculations

Change-Id: Iab04fe996abe06c3490a808985727c94dd922797
This commit is contained in:
Evan Gray 2021-10-04 18:33:22 -04:00
parent 3607884556
commit eb0cab8cd4
5 changed files with 5 additions and 36 deletions

View File

@ -120,7 +120,6 @@ function EthereumMigrationLineItem({
useEffect(() => {
if (!loaded && (poolInfo.data || poolInfo.error)) {
console.log("mounted & finished loading");
onLoadComplete();
setLoaded(true);
}
@ -217,7 +216,7 @@ function EthereumMigrationLineItem({
? "The swap pool has insufficient funds."
: ""
}
disabled={!sufficientPoolBalance}
disabled={!sufficientPoolBalance || migrationIsProcessing}
>
Convert
</ButtonWithLoader>

View File

@ -301,7 +301,6 @@ export default function SolanaSourceTokenSelector(
tokenList.sort(sortParsedTokenAccounts);
return tokenList;
}, [mintAccounts?.data, metaplex.data, nft, props.accounts, getSymbol]);
console.log(filteredOptions);
const isOptionDisabled = useMemo(() => {
return (value: ParsedTokenAccount) => {

View File

@ -58,7 +58,7 @@ import {
import { getSignedVAAWithRetry } from "../utils/getSignedVAAWithRetry";
import parseError from "../utils/parseError";
import { signSendAndConfirm } from "../utils/solana";
import { waitForTerraExecution, calculateTerraTax } from "../utils/terra";
import { waitForTerraExecution } from "../utils/terra";
import useTransferTargetAddressHex from "./useTransferTargetAddress";
async function eth(
@ -198,13 +198,11 @@ async function terra(
dispatch(setIsSending(true));
try {
const amountParsed = parseUnits(amount, decimals).toString();
const amountTaxed = await calculateTerraTax(amountParsed, asset);
const msgs = await transferFromTerra(
wallet.terraAddress,
TERRA_TOKEN_BRIDGE_ADDRESS,
asset,
amountParsed,
amountTaxed,
targetChain,
targetAddress
);
@ -212,20 +210,16 @@ async function terra(
msgs: [...msgs],
memo: "Wormhole - Initiate Transfer",
});
console.log(result);
const info = await waitForTerraExecution(result);
console.log(info);
dispatch(setTransferTx({ id: info.txhash, block: info.height }));
enqueueSnackbar("Transaction confirmed", { variant: "success" });
const sequence = parseSequenceFromLogTerra(info);
console.log(sequence);
if (!sequence) {
throw new Error("Sequence not found");
}
const emitterAddress = await getEmitterAddressTerra(
TERRA_TOKEN_BRIDGE_ADDRESS
);
console.log(emitterAddress);
enqueueSnackbar("Fetching VAA", { variant: "info" });
const { vaaBytes } = await getSignedVAAWithRetry(
CHAIN_ID_TERRA,

View File

@ -1,6 +1,6 @@
import { isNativeTerra } from "@certusone/wormhole-sdk";
import { formatUnits } from "@ethersproject/units";
import { LCDClient, Dec, Int } from "@terra-money/terra.js";
import { LCDClient } from "@terra-money/terra.js";
import { TxResult } from "@terra-money/wallet-provider";
// import { TerraTokenMetadata } from "../hooks/useTerraTokenMap";
import { TERRA_HOST } from "./consts";
@ -37,24 +37,3 @@ export async function waitForTerraExecution(transaction: TxResult) {
}
return info;
}
export async function calculateTerraTax(
amount: string,
denom: string
): Promise<string> {
try {
// Fetch terra tax state from current chain height.
const lcd = new LCDClient(TERRA_HOST);
const taxRate = await lcd.treasury.taxRate();
const taxCap = await lcd.treasury.taxCap(denom);
// Calculate tax rate for the current denomination.
const untaxed = new Int(amount);
const tax = untaxed.toDec().mul(taxRate);
const cap = (taxCap.amount as Int).toDec();
const min = new Dec((tax.constructor as any).min(tax, cap));
return untaxed.sub(min.toInt()).toString();
} catch(e) {
return "0";
}
}

View File

@ -87,7 +87,6 @@ export async function transferFromTerra(
tokenBridgeAddress: string,
tokenAddress: string,
amount: string,
taxed: string,
recipientChain: ChainId,
recipientAddress: Uint8Array
) {
@ -109,7 +108,7 @@ export async function transferFromTerra(
{
initiate_transfer: {
asset: {
amount: taxed,
amount,
info: {
native_token: {
denom: tokenAddress,
@ -123,8 +122,7 @@ export async function transferFromTerra(
},
},
{
uluna: BigNumber.from("10000")
.toString(),
uluna: BigNumber.from("10000").toString(),
}
),
]