Breakpoint clones were still in the tab order, marketing always painted Log in, and at 430px the logo overlay covered Use cases and Learn. Co-authored-by: Cursor <cursoragent@cursor.com>
33 lines
1001 B
TypeScript
33 lines
1001 B
TypeScript
import type { ReactNode } from "react";
|
|
import type { Metadata } from "next";
|
|
import { notFound } from "next/navigation";
|
|
import { MessagesProvider } from "../contexts/MessagesContext";
|
|
import { AuthModalProvider } from "../contexts/AuthModalContext";
|
|
import messages from "../../messages/en/index";
|
|
import { MAIN_CONTENT_ID } from "../../lib/mainContent";
|
|
import { NO_INDEX_ROBOTS } from "../../lib/siteMetadata";
|
|
|
|
export const metadata: Metadata = {
|
|
robots: NO_INDEX_ROBOTS,
|
|
};
|
|
|
|
// Development-only previews (e.g. `/components-preview`) — no public chrome.
|
|
export default function DevLayout({ children }: { children: ReactNode }) {
|
|
if (process.env.NODE_ENV === "production") {
|
|
notFound();
|
|
}
|
|
return (
|
|
<MessagesProvider messages={messages}>
|
|
<AuthModalProvider>
|
|
<main
|
|
id={MAIN_CONTENT_ID}
|
|
tabIndex={-1}
|
|
className="flex-1 outline-none"
|
|
>
|
|
{children}
|
|
</main>
|
|
</AuthModalProvider>
|
|
</MessagesProvider>
|
|
);
|
|
}
|