import { Currency, CurrencyAmount, TradeType } from "@uniswap/sdk-core"; import { Trade } from "@uniswap/v2-sdk"; import React, { useCallback } from "react"; import TransactionConfirmationModal, { ConfirmationModalContent, TransactionErrorContent, } from "../TransactionConfirmationModal"; import SwapModalFooter from "./SwapModalFooter"; import SwapModalHeader from "./SwapModalHeader"; export default function ConfirmSwapModal({ trade, onAcceptChanges, onConfirm, onDismiss, recipient, swapErrorMessage, isOpen, attemptingTxn, txHash, inputAmount, outputAmount, }: { isOpen: boolean; trade: Trade | undefined; originalTrade: Trade | undefined; attemptingTxn: boolean; txHash: string | undefined; recipient: string | null; onAcceptChanges: () => void; onConfirm: () => void; swapErrorMessage: string | undefined; onDismiss: () => void; inputAmount: CurrencyAmount | undefined; outputAmount: CurrencyAmount | undefined; }) { const showAcceptChanges = false; const modalHeader = useCallback(() => { return ( ); }, [onAcceptChanges, recipient, trade]); const modalBottom = useCallback(() => { return ( ); }, [onConfirm, showAcceptChanges, swapErrorMessage, trade]); // text to show while loading const pendingText = `Submitting order to swap ${inputAmount?.toSignificant( 6 )} ${inputAmount?.currency?.symbol} for ${outputAmount?.toSignificant(6)} ${ outputAmount?.currency?.symbol }`; const confirmationContent = useCallback( () => swapErrorMessage ? ( ) : ( ), [onDismiss, modalBottom, modalHeader, swapErrorMessage] ); return ( ); }