"use client"; import Link from "next/link"; import { useEffect, useState } from "react"; import { useSnap } from "@/lib/client"; import { Panel, QueueRow } from "@/components/portal"; import { useSetupSteps } from "@/components/Checklist"; /* The first-run checklist, as the first queue group until it is done or dismissed. Which steps are done and when it shows come from Checklist's hook, so the rules live in one place. */ export default function SetupGroup() { const { isAdmin } = useSnap(); const { steps, done, finished, visible, dismiss } = useSetupSteps(); const [welcome, setWelcome] = useState(false); useEffect(() => { if (new URLSearchParams(window.location.search).get("welcome") === "1") setWelcome(true); }, []); if (!visible) return null; return ( dismiss()}>{finished ? "Done" : "Dismiss"} : undefined} > {steps.map((st) => ( ); }