Adds the full Next.js app (app/, components/, lib/, scripts/, assets/, docs/, Dockerfile, compose, configs) to version control. Security: - CIPC BizPortal customer-code logins (Login 1 + Login 3) now read CIPC_LOGIN1_CODE / CIPC_LOGIN1_PASSWORD / CIPC_LOGIN3_CODE / CIPC_LOGIN3_PASSWORD from .env.local instead of source. - BizPortal personal login in apply-bizportal route reads BIZPORTAL_ID_NO / BIZPORTAL_PASSWORD. - Added .env.example as the committed template. .gitignore excludes .env*, node_modules, .next, logs, sqlite, Playwright storage_state.json (live CIPC cookies), scratch dirs, client PDFs and debug screenshots.
46 lines
1.3 KiB
TypeScript
46 lines
1.3 KiB
TypeScript
// app/layout.tsx
|
|
// Root layout for the Workflow frontend. Two responsibilities:
|
|
// (1) bind the Inter webfont so the typography tokens render with a
|
|
// real face (otherwise the entire app falls back to system-ui).
|
|
// (2) wrap children in QueryProvider + NavBar + ToastProvider.
|
|
|
|
import type { Metadata } from "next";
|
|
import { Inter } from "next/font/google";
|
|
import "./globals.css";
|
|
import Providers from "./providers";
|
|
import QueryProvider from "@/components/QueryProvider";
|
|
import RouteChrome from "@/components/RouteChrome";
|
|
import { ToastProvider } from "@/components/Toast";
|
|
|
|
const inter = Inter({
|
|
subsets: ["latin"],
|
|
display: "swap",
|
|
variable: "--font-inter"
|
|
});
|
|
|
|
export const metadata: Metadata = {
|
|
title: "Workflow · Registry Browser",
|
|
description:
|
|
"Read-only CIPC registry browser for directors and companies on a self-hosted PocketBase instance.",
|
|
robots: { index: false, follow: false }
|
|
};
|
|
|
|
export default function RootLayout({
|
|
children
|
|
}: {
|
|
children: React.ReactNode;
|
|
}) {
|
|
return (
|
|
<html lang="en" className={inter.variable} suppressHydrationWarning>
|
|
<body className="bg-bg text-fg">
|
|
<Providers>
|
|
<QueryProvider>
|
|
<RouteChrome>
|
|
<ToastProvider>{children}</ToastProvider>
|
|
</RouteChrome>
|
|
</QueryProvider>
|
|
</Providers>
|
|
</body>
|
|
</html>
|
|
);
|
|
}
|