diff --git a/src/components/common/TradeDialog.tsx b/src/components/common/TradeDialog.tsx index 728850b..570d237 100644 --- a/src/components/common/TradeDialog.tsx +++ b/src/components/common/TradeDialog.tsx @@ -71,6 +71,13 @@ const TradeDialog: React.FC = ({ const amountValid = validationError === null; const showError = touched && validationError !== null; + const estimatedProceedsStroops = useMemo(() => { + if (side !== 'sell') return null; + if (!keyPriceStroops || !Number.isFinite(keyPriceStroops)) return null; + if (!parsedAmount || !Number.isFinite(parsedAmount) || parsedAmount <= 0) return null; + return keyPriceStroops * parsedAmount; + }, [side, keyPriceStroops, parsedAmount]); + const title = side === 'buy' ? 'Buy keys' : 'Sell keys'; const confirmLabel = side === 'buy' ? 'Confirm buy' : 'Confirm sell'; const estimatedNetworkFee = formatTransactionFeeDisplay( @@ -177,6 +184,20 @@ const TradeDialog: React.FC = ({ className="text-white/45" /> )} + {side === 'sell' && ( +
+ {estimatedProceedsStroops != null ? ( + <> + Approximate proceeds:{' '} + + {formatDisplayKeyPrice(estimatedProceedsStroops)} + + + ) : ( + 'Approximate proceeds unavailable' + )} +
+ )} {/*