All files / src/locales index.ts

0% Statements 0/19
0% Branches 0/1
0% Functions 0/1
0% Lines 0/19

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20                                       
import { useContext, createContext } from 'react';
import zh_CN from './zh_CN';
import en_US from './en_US';

const i18n = { 'zh-CN': zh_CN, 'en-US': en_US };

export type LocaleType = 'zh-CN' | 'en-US';
export const defaultLang = 'en-US';
export const localeTextMap: { [lang in LocaleType]: string } = {
  'zh-CN': '简体中文',
  'en-US': 'English'
};
export interface ILocaleContext { lang: string, setLang: (params: LocaleType) => void }
export const LocaleContext = createContext<ILocaleContext>({} as any);

export function useLocale(locale: any = null) {
  const { lang } = useContext(LocaleContext);
  return (locale || i18n)[lang] || {};
}