From 8cbd0f42fae864a9eeb3d382595f0d7a93cc862e Mon Sep 17 00:00:00 2001 From: Vladimir Metnev Date: Sun, 18 Feb 2018 15:57:15 +0200 Subject: [PATCH] fix(server): make i18n less complex fix(server): make i18n less complex --- src/server/i18n/index.js | 40 +++++++++------------------------------- 1 file changed, 9 insertions(+), 31 deletions(-) diff --git a/src/server/i18n/index.js b/src/server/i18n/index.js index e6056a68..cccb341f 100644 --- a/src/server/i18n/index.js +++ b/src/server/i18n/index.js @@ -1,46 +1,24 @@ // @flow -import {readFileSync} from 'fs' // readFile -import path from 'path' -import {sync as globSync} from 'glob' -import chokidar from 'chokidar' import enLocaleData from 'react-intl/locale-data/en' import ruLocaleData from 'react-intl/locale-data/ru' -import type {i18nConfigObject} from 'types' - -const getTranslations = () => { - return globSync('locals/*.json') - .map((filename: string) => [ - path.basename(filename, '.json'), - readFileSync(filename, 'utf8') - ]) - .map(([locale, file]) => [locale, JSON.parse(file)]) - .reduce((acc, [locale, messages]) => { - acc[locale] = messages - return acc - }, {}) -} - -let translations = getTranslations() -// NOTE: re-update `locals` if they were changed (in development) -if (process.env.NODE_ENV === 'development') { - const watcher = chokidar.watch('locals/*.json') - - watcher.on('all', () => { - translations = getTranslations() - }) -} +import ru from 'static/locals/ru' +import en from 'static/locals/en' export const defaultLanguage = 'en' export const supportedLanguages = ['en', 'ru'] -export default (lang: string = defaultLanguage): i18nConfigObject => { - const summaryLocaleData = { +const translations = { + en, ru +} + +export default (lang: string = defaultLanguage) => { + const localeData = { en: enLocaleData, ru: ruLocaleData } return { lang, - localeData: summaryLocaleData[lang], + localeData: localeData[lang], locale: lang, messages: translations[lang] }