// Showcase — tabs + browser-stage holding 4 scenes (Dashboard / Transactions / // Blocklist / TX detail). Scene state is local; React handles the fade // transition + per-scene browser-stage height class. function Showcase() { const [scene, setScene] = React.useState('dash'); const url = { dash: 'app.dipoli.io/', tx: 'app.dipoli.io/transactions', bl: 'app.dipoli.io/blocklist', det: 'app.dipoli.io/transactions/1028a621…', }[scene]; const tabs = [ { key: 'dash', name: 'Dashboard', meta: 'Real-time overview — all transactions, scores, and metrics at a glance.' }, { key: 'tx', name: 'Transactions', meta: 'Review and act — approve flagged payments or investigate suspicious activity.' }, { key: 'bl', name: 'Blocklist', meta: 'Control rules — manage your custom rules and blocked entities.' }, { key: 'det', name: 'TX details', meta: 'Drill into one verdict — score, rationale, signals that fired.' }, ]; return (
Live · auto-rotating

Four screens. The full anti-fraud loop.

Everything your antifraud team needs — investigation, blocklist, verdict, drill-down — in one console.

{tabs.map((t) => ( ))}
{url}
); }