sodesu-comment
Version:
Comment system with SolidJS
46 lines (40 loc) • 1.04 kB
text/typescript
import type { WalineLocale } from '../../typings/index.js';
import de from './de.js';
import en from './en.js';
import es from './es.js';
import fr from './fr.js';
import jp from './jp.js';
import ptBR from './pt-BR.js';
import ru from './ru.js';
import viVN from './vi-VN.js';
import zhCN from './zh-CN.js';
import zhTW from './zh-TW.js';
export type Locales = Record<string, WalineLocale>;
export const DEFAULT_LANG = 'en-US';
export const DEFAULT_LOCALES: Locales = {
zh: zhCN,
'zh-cn': zhCN,
'zh-tw': zhTW,
en,
'en-us': en,
fr,
'fr-fr': fr,
jp,
'jp-jp': jp,
'pt-br': ptBR,
ru,
'ru-ru': ru,
vi: viVN,
'vi-vn': viVN,
de,
es,
'es-mx': es,
};
export const getLocale = (lang: string): WalineLocale =>
// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
DEFAULT_LOCALES[lang.toLowerCase()] ||
DEFAULT_LOCALES[DEFAULT_LANG.toLowerCase()];
export const getLang = (lang: string): string =>
Object.keys(DEFAULT_LOCALES).includes(lang.toLowerCase())
? lang
: DEFAULT_LANG;