summaryrefslogtreecommitdiffstats
path: root/webapp/i18n/i18n.jsx
diff options
context:
space:
mode:
Diffstat (limited to 'webapp/i18n/i18n.jsx')
-rw-r--r--webapp/i18n/i18n.jsx36
1 files changed, 36 insertions, 0 deletions
diff --git a/webapp/i18n/i18n.jsx b/webapp/i18n/i18n.jsx
index fde1fbb64..f153b54f3 100644
--- a/webapp/i18n/i18n.jsx
+++ b/webapp/i18n/i18n.jsx
@@ -2,8 +2,15 @@
// See License.txt for license information.
const es = require('!!file?name=i18n/[name].[ext]!./es.json');
+const fr = require('!!file?name=i18n/[name].[ext]!./fr.json');
const pt = require('!!file?name=i18n/[name].[ext]!./pt.json');
+import {addLocaleData} from 'react-intl';
+import enLocaleData from 'react-intl/locale-data/en';
+import esLocaleData from 'react-intl/locale-data/es';
+import frLocaleData from 'react-intl/locale-data/fr';
+import ptLocaleData from 'react-intl/locale-data/pt';
+
const languages = {
en: {
value: 'en',
@@ -15,6 +22,11 @@ const languages = {
name: 'Español (Beta)',
url: es
},
+ fr: {
+ value: 'fr',
+ name: 'Français (Beta)',
+ url: fr
+ },
pt: {
value: 'pt',
name: 'Portugues (Beta)',
@@ -29,3 +41,27 @@ export function getLanguages() {
export function getLanguageInfo(locale) {
return languages[locale];
}
+
+export function safariFix(callback) {
+ require.ensure([
+ 'intl',
+ 'intl/locale-data/jsonp/en.js',
+ 'intl/locale-data/jsonp/es.js',
+ 'intl/locale-data/jsonp/fr.js',
+ 'intl/locale-data/jsonp/pt.js'
+ ], (require) => {
+ require('intl');
+ require('intl/locale-data/jsonp/en.js');
+ require('intl/locale-data/jsonp/es.js');
+ require('intl/locale-data/jsonp/fr.js');
+ require('intl/locale-data/jsonp/pt.js');
+ callback();
+ });
+}
+
+export function doAddLocaleData() {
+ addLocaleData(enLocaleData);
+ addLocaleData(esLocaleData);
+ addLocaleData(frLocaleData);
+ addLocaleData(ptLocaleData);
+}