-
pgCompare
+
+
pgCompare
+
+ {/* View Mode Toggle */}
+
+
+
+
+
+
+
);
}
-
diff --git a/ui/app/jobs/[id]/page.tsx b/ui/app/jobs/[id]/page.tsx
new file mode 100644
index 0000000..ff2f506
--- /dev/null
+++ b/ui/app/jobs/[id]/page.tsx
@@ -0,0 +1,40 @@
+'use client';
+
+import { useRouter } from 'next/navigation';
+import { use } from 'react';
+import JobDetailView from '@/components/JobDetailView';
+import ThemeToggle from '@/components/ThemeToggle';
+import { LayoutDashboard } from 'lucide-react';
+
+export default function JobPage({ params }: { params: Promise<{ id: string }> }) {
+ const router = useRouter();
+ const { id } = use(params);
+
+ const handleBack = () => {
+ router.push('/dashboard');
+ };
+
+ return (
+
+ );
+}
diff --git a/ui/app/layout.tsx b/ui/app/layout.tsx
index 0885418..c13bf0a 100644
--- a/ui/app/layout.tsx
+++ b/ui/app/layout.tsx
@@ -2,6 +2,7 @@ import type { Metadata } from "next";
import { Geist, Geist_Mono } from "next/font/google";
import "./globals.css";
import { ThemeProvider } from "@/components/ThemeProvider";
+import { Toaster } from "@/components/Toaster";
const geistSans = Geist({
variable: "--font-geist-sans",
@@ -30,6 +31,7 @@ export default function RootLayout({
>
{children}
+