Files
revenue-fe/src/i18n/config.tsx
2025-02-01 16:44:51 +07:00

51 lines
1.2 KiB
TypeScript

import { toAbsoluteUrl } from '@/utils';
import arMessages from './messages/ar.json';
import enMessages from './messages/en.json';
import frMessages from './messages/fr.json';
import zhMessages from './messages/zh.json';
import { type TLanguage } from './types.d';
const I18N_MESSAGES = {
en: enMessages,
ar: arMessages,
fr: frMessages,
zh: zhMessages
};
const I18N_CONFIG_KEY = 'i18nConfig';
const I18N_LANGUAGES: readonly TLanguage[] = [
{
label: 'English',
code: 'en',
direction: 'ltr',
flag: toAbsoluteUrl('/media/flags/united-states.svg'),
messages: I18N_MESSAGES.en
},
{
label: 'Arabic (Saudi)',
code: 'ar',
direction: 'rtl',
flag: toAbsoluteUrl('/media/flags/saudi-arabia.svg'),
messages: I18N_MESSAGES.ar
},
{
label: 'French',
code: 'fr',
direction: 'ltr',
flag: toAbsoluteUrl('/media/flags/france.svg'),
messages: I18N_MESSAGES.fr
},
{
label: 'Chinese',
code: 'zh',
direction: 'ltr',
flag: toAbsoluteUrl('/media/flags/china.svg'),
messages: I18N_MESSAGES.zh
}
];
const I18N_DEFAULT_LANGUAGE: TLanguage = I18N_LANGUAGES[0];
export { I18N_CONFIG_KEY, I18N_DEFAULT_LANGUAGE, I18N_LANGUAGES, I18N_MESSAGES };