+
+ {/* FROM */}
+
+
+ {/* SWAP */}
+
+
+
+
+ {/* TO */}
+
+
+ {/* CONVERT BUTTON */}
+
+
+ {/* ERROR */}
+ {error && (
+
+ {error}
+
+ )}
+
+ {/* RESULT */}
+ {result && (
+
+ {/* Rate headline */}
+
+
+ Rate
+
+
+ 1 {result.sourceAsset} ≈ {result.rate} {result.destAsset}
+
+
+
+ {/* You send */}
+
+ You send
+
+ {result.sourceAmount} {result.sourceAsset}
+
+
+
+ {/* You receive */}
+
+ You receive
+
+ {result.destAmount} {result.destAsset}
+
+
+
+ {/* Slippage */}
+
+ Slippage buffer
+
+ ≤ {(Number(result.sourceAmount) * (1 + SLIPPAGE)).toFixed(7)} {result.sourceAsset} ({(SLIPPAGE * 100).toFixed(0)}%)
+
+
+
+ {/* Path */}
+ {result.path.length > 2 && (
+
+ Path
+
+ {result.path.join(" → ")}
+
+
+ )}
+
+ {/* Staleness + refresh */}
+
+
+ Quoted {secondsAgo}s ago
+
+
+
+
+ )}
+