fix: wrap TraceList in Suspense boundary and mark dashboard as dynamic route
Next.js 15 requires useSearchParams() to be within a Suspense boundary for production builds
This commit is contained in:
@@ -1,5 +1,8 @@
|
|||||||
|
import { Suspense } from "react";
|
||||||
import { TraceList } from "@/components/trace-list";
|
import { TraceList } from "@/components/trace-list";
|
||||||
|
|
||||||
|
export const dynamic = "force-dynamic";
|
||||||
|
|
||||||
interface TracesResponse {
|
interface TracesResponse {
|
||||||
traces: Array<{
|
traces: Array<{
|
||||||
id: string;
|
id: string;
|
||||||
@@ -53,11 +56,13 @@ export default async function DashboardPage() {
|
|||||||
const data = await getTraces(50, 1);
|
const data = await getTraces(50, 1);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<TraceList
|
<Suspense fallback={<div className="p-8 text-zinc-400">Loading traces...</div>}>
|
||||||
initialTraces={data.traces}
|
<TraceList
|
||||||
initialTotal={data.total}
|
initialTraces={data.traces}
|
||||||
initialTotalPages={data.totalPages}
|
initialTotal={data.total}
|
||||||
initialPage={data.page}
|
initialTotalPages={data.totalPages}
|
||||||
/>
|
initialPage={data.page}
|
||||||
|
/>
|
||||||
|
</Suspense>
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user