refactor: migrate to nuxt compatibilityVersion: 4 (#3298)

This commit is contained in:
Daniel Roe 2025-05-20 15:05:01 +01:00 committed by GitHub
parent 46e4433e1c
commit a3fbc056a9
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
342 changed files with 1200 additions and 2932 deletions

30
app/utils/language.ts Normal file
View file

@ -0,0 +1,30 @@
export function matchLanguages(languages: string[], acceptLanguages: readonly string[]): string | null {
{
// const lang = acceptLanguages.map(userLang => languages.find(lang => lang.startsWith(userLang))).filter(v => !!v)[0]
// TODO: Support es-419, remove this code if we include spanish country variants
const lang = acceptLanguages.map(userLang => languages.find((currentLang) => {
if (currentLang === userLang)
return currentLang
// Edge browser: case for ca-valencia
if (currentLang === 'ca-valencia' && userLang === 'ca-Es-VALENCIA')
return currentLang
if (userLang.startsWith('es-') && userLang !== 'es-ES' && currentLang === 'es-419')
return currentLang
return currentLang.startsWith(userLang) ? currentLang : undefined
})).filter(v => !!v)?.[0]
if (lang)
return lang
}
const lang = acceptLanguages.map((userLang) => {
userLang = userLang.split('-')[0]!
return languages.find(lang => lang.startsWith(userLang))
}).filter(v => !!v)[0]
if (lang)
return lang
return null
}