mirror of
https://github.com/tiennm99/bsk.git
synced 2026-08-31 02:25:19 +00:00
- app/, components/, lib/, i18n/, tests/, proxy renamed via git mv - types carried into JSDoc: @template generics, @typedef aliases, /** @type */ casts where TS had as-casts or non-null assertions - role tuple keeps its const assertion; the db-enum drift guard now checks the tuple values against the generated enum type - use client/use server directives and server-only imports preserved - prettier-formatted; vitest suite unchanged
20 lines
884 B
React
20 lines
884 B
React
// Intentionally empty pass-through. The real `<html>` + `<body>` live in
|
|
// `app/[locale]/layout.tsx` so `lang={locale}` and the i18n provider can
|
|
// be set per locale. Do not put global UI here.
|
|
//
|
|
// `global-error.tsx` (anywhere in the tree) MUST render its own
|
|
// `<html><body>` — Next.js renders it instead of the root layout. This rule
|
|
// is universal, not specific to this codebase.
|
|
//
|
|
// `error.tsx` normally inherits its closest layout's shell. But because the
|
|
// root layout here is a passthrough, a hypothetical `app/error.tsx` would
|
|
// render without `<html><body>`. Prefer placing `error.tsx` files under
|
|
// `app/[locale]/` (where the real shell lives), or render the document
|
|
// shell explicitly inside any root-level error file.
|
|
/**
|
|
* @param {{ children: import("react").ReactNode }} props
|
|
*/
|
|
export default function RootLayout({ children }) {
|
|
return children;
|
|
}
|