diff --git a/src/config.ts b/src/config.ts index 1fe1c5e..168d5bf 100644 --- a/src/config.ts +++ b/src/config.ts @@ -1,16 +1,5 @@ -import { Pathnames } from 'next-intl/navigation'; +export const locales = ['en', 'de'] as const; +export const localePrefix = 'always'; // Default -export const locales = ['en', 'ar'] as const; -export const defaultLocale = 'ar'; // Set default to Arabic as current content is Arabic - -// Use 'always' to ensure the locale is always in the URL (e.g., /en, /ar) -export const localePrefix = 'always'; - -// Define pathnames for internationalized routes if applicable -// For a single-page app with sections, pathnames might not be strictly necessary for section IDs, -// but useful if you plan to have separate pages later (e.g., /en/about vs /ar/about) -export const pathnames = { - '/': '/', -} satisfies Pathnames; - -export type AppPathnames = keyof typeof pathnames; +export const { Link, redirect, usePathname, useRouter } = + createSharedPathnamesNavigation({ locales, localePrefix }); \ No newline at end of file diff --git a/src/i18n.ts b/src/i18n.ts index 1974542..668b132 100644 --- a/src/i18n.ts +++ b/src/i18n.ts @@ -1,6 +1,7 @@ -import { getRequestConfig } from 'next-intl/server'; import { notFound } from 'next/navigation'; -import { locales } from './config'; + +// Can be imported from a shared config +const locales = ['en', 'de']; export default getRequestConfig(async ({ locale }) => { if (!locales.includes(locale as any)) notFound(); @@ -8,4 +9,4 @@ export default getRequestConfig(async ({ locale }) => { return { messages: (await import(`../messages/${locale}.json`)).default, }; -}); +}); \ No newline at end of file