This commit is contained in:
@@ -0,0 +1,17 @@
|
||||
import {getRequestConfig} from 'next-intl/server';
|
||||
import {routing} from './routing';
|
||||
|
||||
export default getRequestConfig(async ({requestLocale}) => {
|
||||
let locale = await requestLocale;
|
||||
|
||||
// Validamos que el idioma pedido sea válido
|
||||
if (!locale || !routing.locales.includes(locale as any)) {
|
||||
locale = routing.defaultLocale;
|
||||
}
|
||||
|
||||
return {
|
||||
locale,
|
||||
// Cargamos el JSON correspondiente desde la carpeta raíz messages/
|
||||
messages: (await import(`../../messages/${locale}.json`)).default
|
||||
};
|
||||
});
|
||||
@@ -0,0 +1,13 @@
|
||||
import {defineRouting} from 'next-intl/routing';
|
||||
import {createNavigation} from 'next-intl/navigation';
|
||||
|
||||
export const routing = defineRouting({
|
||||
// Nuestros 5 idiomas estrella (en: Inglés, it: Italiano, vec: Véneto, es: Español, de: Alemán)
|
||||
locales: ['en', 'it', 'vec', 'es', 'de'],
|
||||
|
||||
// Si alguien entra a flux.com, lo mandamos a /en por defecto
|
||||
defaultLocale: 'en'
|
||||
});
|
||||
|
||||
// Exportamos nuestras propias versiones de Link y useRouter que entienden de idiomas
|
||||
export const {Link, redirect, usePathname, useRouter, getPathname} = createNavigation(routing);
|
||||
Reference in New Issue
Block a user