#379: move flags related code into a separate module to get rid of code duplication

This commit is contained in:
SleepWalker
2017-12-30 21:44:32 +02:00
parent 025ba9b1d5
commit 4458b1fe97
7 changed files with 46 additions and 46 deletions

View File

@@ -0,0 +1,30 @@
// @flow
import supportedLocales from 'i18n/index.json';
const localeToCountryCode = {
en: 'gb',
be: 'by',
pt: 'br',
uk: 'ua',
vi: 'vn',
sl: 'si',
};
const SUPPORTED_LANGUAGES: Array<string> = Object.keys(supportedLocales);
export default {
getCountryList(): Array<string> {
return SUPPORTED_LANGUAGES.map((locale) => localeToCountryCode[locale] || locale);
},
/**
* Возвращает для указанной локали её флаг с учётом всех нюансов загрузки флага
* и подбора соответствующего локали флага.
*
* @param {string} locale
*
* @return {string}
*/
getIconUrl(locale: string): string {
return require(`flag-icon-css/flags/4x3/${localeToCountryCode[locale] || locale}.svg`);
}
};