This commit is contained in:
HugeFrog24
2026-04-25 14:00:45 +02:00
parent 4f2d4c4a59
commit 33af88d79d
68 changed files with 8587 additions and 6868 deletions
+29
View File
@@ -0,0 +1,29 @@
import { getRequestConfig } from 'next-intl/server';
// Can be imported from a shared config
export const locales = ['en', 'de', 'ru', 'ka', 'ar'] as const;
export const defaultLocale = 'en' as const;
export type Locale = typeof locales[number];
export default getRequestConfig(async ({ requestLocale }) => {
// This typically corresponds to the `[locale]` segment
let locale = await requestLocale;
// Ensure that a valid locale is used
if (!locale || !locales.includes(locale as Locale)) {
locale = defaultLocale;
}
// Load messages from both ui and character directories
const messages = {
ui: (await import(`../messages/ui/${locale}.json`)).default,
character: (await import(`../messages/character/${locale}.json`)).default
};
return {
locale,
messages
};
});
+23
View File
@@ -0,0 +1,23 @@
import { defineRouting } from 'next-intl/routing';
import { createNavigation } from 'next-intl/navigation';
export const routing = defineRouting({
// A list of all locales that are supported
locales: ['en', 'de', 'ru', 'ka', 'ar'],
// Used when no locale matches
defaultLocale: 'en',
// The `pathnames` object holds pairs of internal and
// external paths. Based on the locale, the external
// paths are rewritten to the shared, internal ones.
pathnames: {
// If all locales use the same pathname, a single
// external path can be provided for all locales
'/': '/',
}
});
// Lightweight wrappers around Next.js' navigation APIs
// that will consider the routing configuration
export const { Link, redirect, usePathname, useRouter } = createNavigation(routing);