"use client"; import { useRouter, useSearchParams } from "next/navigation"; import CO2GalvoList from "@/components/lists/CO2GalvoList"; import CO2GalvoDetail from "@/components/details/CO2GalvoDetail"; export default function CO2GalvoPanel() { const sp = useSearchParams(); const router = useRouter(); const id = sp.get("id"); const view = sp.get("view") === "detail" && id ? "detail" : "list"; function setView(next: "list" | "detail", nextId?: string | number) { const q = new URLSearchParams(sp.toString()); q.set("t", "co2-galvo"); if (next === "detail" && nextId != null) { q.set("view", "detail"); q.set("id", String(nextId)); } else { q.set("view", "list"); q.delete("id"); q.delete("edit"); } router.replace(`/portal/laser-settings?${q.toString()}`, { scroll: false }); } const linkFor = (sid: string | number, opts?: { edit?: boolean }) => { const q = new URLSearchParams(sp.toString()); q.set("t", "co2-galvo"); q.set("view", "detail"); q.set("id", String(sid)); if (opts?.edit) q.set("edit", "1"); else q.delete("edit"); return `/portal/laser-settings?${q.toString()}`; }; return (