import { getUIDataMerged } from '@/data-directory/lib/get-data' import { type LanguageCode } from '@/languages/lib/languages' import { translate } from '@/languages/lib/translation-utils' import { extractLanguageFromPath } from '@/app/lib/language-utils' import { type UIStrings } from '@/frame/components/context/MainContext' export interface AppRouterContext { currentLanguage: LanguageCode currentVersion: string sitename: string site: { data: { ui: UIStrings } } } /** * Create App Router context from pathname */ export function createAppRouterContext( pathname: string = '/', fallbackLanguage?: LanguageCode, ): AppRouterContext { let language = extractLanguageFromPath(pathname) // Use fallback if provided and URL doesn't specify language if (language === 'en' && fallbackLanguage && fallbackLanguage !== 'en') { language = fallbackLanguage } const version = 'free-pro-team@latest' // Load UI data directly from data directory const uiData = getUIDataMerged(language) const siteName = translate(uiData, 'header.github_docs', 'GitHub Docs') return { currentLanguage: language, currentVersion: version, sitename: siteName, site: { data: { ui: uiData, }, }, } }