import { getRequestConfig } from 'next-intl/server';
import { routing } from './routing';
import enMessages from '../../messages/en.json';
import viMessages from '../../messages/vi.json';

const messagesByLocale = {
  en: enMessages,
  vi: viMessages
} as const;

export default getRequestConfig(async ({ requestLocale }) => {
  let locale = await requestLocale;
  if (!locale || !routing.locales.includes(locale as any)) {
    locale = routing.defaultLocale;
  }

  const safeLocale = locale as keyof typeof messagesByLocale;

  return {
    locale,
    messages: messagesByLocale[safeLocale] ?? messagesByLocale.vi
  };
});
