"use client"; import { useEffect, useState } from "react"; const SLIDES = [ { title: "Verify every product with one scan", body: "Consumers scan your QR code and instantly see authenticity, batch details, and compliance — no app, no login.", art: , }, { title: "Personalize your QR codes", body: "Customize color, dot shape, frame, and style — even add your brand logo — with a live preview.", art: , }, { title: "Download your custom QR codes", body: "Save your QR codes in PNG, SVG, and PDF, then print and share them wherever you want.", art: , }, ]; export default function AuthCarousel() { const [i, setI] = useState(0); useEffect(() => { const t = setInterval(() => setI((x) => (x + 1) % SLIDES.length), 5000); return () => clearInterval(t); }, []); const s = SLIDES[i]; return (
{s.art}

{s.title}

{s.body}

{SLIDES.map((_, k) => (
); } /* ---------- illustrations (inline SVG) ---------- */ function Frame({ children }: { children: React.ReactNode }) { return (
{children}
); } function QrGlyph({ size = 96 }: { size?: number }) { // deterministic pseudo-random QR-looking grid const cells = Array.from({ length: 49 }, (_, k) => (k * 7 + (k % 5) * 3) % 3 === 0); return (
{cells.map((on, k) =>
)}
); } function ScanArt() { return (
25
134
{["Genuine", "Batch", "Verified"].map((t) => ( {t} ))}
); } function CustomizeArt() { return (
{["#0b1f4d", "#f97316", "#2563eb"].map((c) => (
{Array.from({ length: 25 }, (_, k) => (
))}
))}
SCAN ME
{["#c7d2fe", "#fde68a", "#bfdbfe", "#fed7aa"].map((c) => (
))}
CUSTOMIZE
); } function DownloadArt() { return (
{["PNG", "JPG", "SVG", "PRINT", "PDF", "EPS"].map((f) => (
{f}
))}
); }