in src/amo/i18n/utils.js [20:44]
export function localeToLang(
locale?: string,
log_?: typeof log = log,
): void | string {
let lang;
if (locale && locale.split) {
const parts = locale.split('_');
if (parts.length === 1) {
lang = parts[0].toLowerCase();
} else if (parts.length === 2) {
let pt2 = parts[1];
pt2 =
pt2.length > 2
? pt2[0].toUpperCase() + pt2.slice(1).toLowerCase()
: pt2.toUpperCase();
lang = `${parts[0].toLowerCase()}-${pt2}`;
} else if (parts.length === 3) {
// sr_RS should be sr-RS
lang = `${parts[0].toLowerCase()}-${parts[2].toUpperCase()}`;
} else {
log_.error(`Unable to map a language from locale code [${locale}]`);
}
}
return lang;
}