1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-12-23 09:52:26 +01:00

Add Optimism's L1 fee for an approval tx into total L1 fee in Swaps (#16929)

This commit is contained in:
Daniel 2022-12-13 18:28:05 +01:00 committed by GitHub
parent 75177c5998
commit a6da5fd4c3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -113,6 +113,7 @@ import {
hexWEIToDecGWEI,
toPrecisionWithoutTrailingZeros,
} from '../../../../shared/lib/transactions-controller-utils';
import { addHexPrefix } from '../../../../app/scripts/lib/util';
import { calcTokenValue } from '../../../../shared/lib/swaps-utils';
import fetchEstimatedL1Fee from '../../../helpers/utils/optimism/fetchEstimatedL1Fee';
import { sumHexes } from '../../../helpers/utils/transactions.util';
@ -895,18 +896,30 @@ export default function ViewQuote() {
}
const getEstimatedL1Fee = async () => {
try {
const result = await fetchEstimatedL1Fee(global.eth, {
const l1TradeFeeTotal = await fetchEstimatedL1Fee(global.eth, {
txParams: unsignedTransaction,
chainId,
});
setMultiLayerL1FeeTotal(result);
let l1ApprovalFeeTotal = '0x0';
if (approveTxParams) {
l1ApprovalFeeTotal = await fetchEstimatedL1Fee(global.eth, {
txParams: {
...approveTxParams,
gasPrice: addHexPrefix(approveTxParams.gasPrice),
value: '0x0', // For approval txs we need to use "0x0" here.
},
chainId,
});
}
const l1FeeTotal = sumHexes(l1TradeFeeTotal, l1ApprovalFeeTotal);
setMultiLayerL1FeeTotal(l1FeeTotal);
} catch (e) {
captureException(e);
setMultiLayerL1FeeTotal(null);
}
};
getEstimatedL1Fee();
}, [unsignedTransaction, isMultiLayerFeeNetwork, chainId]);
}, [unsignedTransaction, approveTxParams, isMultiLayerFeeNetwork, chainId]);
useEffect(() => {
if (currentSmartTransactionsEnabled && smartTransactionsOptInStatus) {