4b78aa847a
Añade una 404 con el markup del tema (main-page > middle-content > body-content > title-content + body-box-content justified), dentro del layout de [locale] (cabecera/vídeo/pie). Como el layout raíz es un segmento dinámico ([locale]), se usa el patrón de next-intl: `[locale]/not-found.tsx` + catch-all `[locale]/[...rest]/page.tsx` que dispara notFound(). Bilingüe (claves NotFound.title/message en es/en). Devuelve HTTP 404; las rutas conocidas siguen 200. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
27 lines
796 B
TypeScript
27 lines
796 B
TypeScript
import { getTranslations } from 'next-intl/server'
|
|
|
|
/**
|
|
* 404 temática (dentro del layout de [locale] → cabecera/vídeo/pie + tema).
|
|
* Se muestra cuando se llama a notFound() dentro de un segmento de idioma,
|
|
* incluido el catch-all `[...rest]` para rutas inexistentes.
|
|
*/
|
|
export default async function NotFound() {
|
|
const t = await getTranslations('NotFound')
|
|
return (
|
|
<div className="main-page">
|
|
<div className="middle-content">
|
|
<div className="body-content">
|
|
<div className="title-content">
|
|
<h1>{t('title')}</h1>
|
|
</div>
|
|
<div className="box-content">
|
|
<div className="body-box-content justified">
|
|
<p>{t('message')}</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
)
|
|
}
|