import "server-only";

const dictionaries = {
  en: () => import("@/dictionaries/en.json").then((module) => module.default),
  ru: () => import("@/dictionaries/ru.json").then((module) => module.default),
  "zh-CN": () =>
    import("@/dictionaries/zh-CN.json").then((module) => module.default),
  fa: () => import("@/dictionaries/fa.json").then((module) => module.default),
  ar: () => import("@/dictionaries/ar.json").then((module) => module.default),
  tr: () => import("@/dictionaries/tr.json").then((module) => module.default),
  uk: () => import("@/dictionaries/uk.json").then((module) => module.default),
  be: () => import("@/dictionaries/be.json").then((module) => module.default),
  vi: () => import("@/dictionaries/vi.json").then((module) => module.default),
  uz: () => import("@/dictionaries/uz.json").then((module) => module.default),
};

// Исправляем типизацию и доступ
export const getDictionary = async (locale: string) => {
  // Проверяем, существует ли локаль в нашем списке, иначе отдаем дефолтную 'en'
  const loader =
    dictionaries[locale as keyof typeof dictionaries] || dictionaries.en;
  return loader();
};
