`, }; function formatBytes(b) { return b < 1024 ? b + " B" : (b / 1024).toFixed(2) + " KB"; } function CodeMinifier() { const [mode, setMode] = useState("css"); const [input, setInput] = useState(SAMPLES.css); const [copied, setCopied] = useState(null); const currentMode = MODES.find(m => m.id === mode); const output = useMemo(() => currentMode.fn(input), [input, mode, currentMode]); const inputSize = new Blob([input]).size; const outputSize = new Blob([output]).size; const savedPct = inputSize > 0 ? Math.round((1 - outputSize / inputSize) * 100) : 0; const copy = (val, id) => { navigator.clipboard.writeText(val); setCopied(id); setTimeout(() => setCopied(null), 1500); }; const switchMode = (newMode) => { setMode(newMode); setInput(SAMPLES[newMode]); }; return (
Ultimate Design Tools
/ Code Minifier
{/* Mode tabs */}
{MODES.map(m => ( ))}
{/* Stats */}
0 ? "rgba(0,255,209,0.04)" : "rgba(255,255,255,0.02)", border: `1px solid ${savedPct > 0 ? "rgba(0,255,209,0.1)" : "rgba(255,255,255,0.06)"}`, justifyContent: "center", flexWrap: "wrap", alignItems: "center" }}> {formatBytes(inputSize)} {formatBytes(outputSize)} ↓ {savedPct}% smaller
{/* Input */}
Input ({mode.toUpperCase()}) {input.split("\n").length} lines · {formatBytes(inputSize)}