import { type AppLocale, defaultLocale, isAppLocale } from "@cms/i18n" import { cookies } from "next/headers" import type { AdminMessages } from "./messages" import { ADMIN_LOCALE_COOKIE } from "./shared" export function resolveAdminLocaleFromCookieValue(value: string | undefined): AppLocale { if (value && isAppLocale(value)) { return value } return defaultLocale } export async function resolveAdminLocale(): Promise { const cookieStore = await cookies() const value = cookieStore.get(ADMIN_LOCALE_COOKIE)?.value return resolveAdminLocaleFromCookieValue(value) } export async function getAdminMessages(locale: AppLocale): Promise { return (await import(`../messages/${locale}.json`)).default as AdminMessages }