diff --git a/client/package-lock.json b/client/package-lock.json index 7015754..ed2ce45 100644 --- a/client/package-lock.json +++ b/client/package-lock.json @@ -11,8 +11,8 @@ "date-fns": "^2.28.0", "dequal": "^2.0.2", "history": "^4.10.1", - "i18next": "^21.6.11", - "i18next-browser-languagedetector": "^6.1.3", + "i18next": "^21.6.14", + "i18next-browser-languagedetector": "^6.1.4", "initials": "^3.1.2", "lodash": "^4.17.20", "node-sass": "^7.0.1", @@ -22,7 +22,7 @@ "react-datepicker": "^4.6.0", "react-dom": "^17.0.1", "react-dropzone": "^12.0.1", - "react-i18next": "^11.15.4", + "react-i18next": "^11.16.2", "react-input-mask": "^2.0.4", "react-markdown": "^8.0.0", "react-redux": "^7.2.6", @@ -9961,9 +9961,9 @@ } }, "node_modules/i18next": { - "version": "21.6.11", - "resolved": "https://registry.npmjs.org/i18next/-/i18next-21.6.11.tgz", - "integrity": "sha512-tJ2+o0lVO+fhi8bPkCpBAeY1SgkqmQm5NzgPWCQssBrywJw98/o+Kombhty5nxQOpHtvMmsxcOopczUiH6bJxQ==", + "version": "21.6.14", + "resolved": "https://registry.npmjs.org/i18next/-/i18next-21.6.14.tgz", + "integrity": "sha512-XL6WyD+xlwQwbieXRlXhKWoLb/rkch50/rA+vl6untHnJ+aYnkQ0YDZciTWE78PPhOpbi2gR0LTJCJpiAhA+uQ==", "funding": [ { "type": "individual", @@ -9979,13 +9979,13 @@ } ], "dependencies": { - "@babel/runtime": "^7.12.0" + "@babel/runtime": "^7.17.2" } }, "node_modules/i18next-browser-languagedetector": { - "version": "6.1.3", - "resolved": "https://registry.npmjs.org/i18next-browser-languagedetector/-/i18next-browser-languagedetector-6.1.3.tgz", - "integrity": "sha512-T+oGXHXtrur14CGnZZ7qQ07X38XJQEI00b/4ILrtO6xPbwTlQ1wtMZC2H+tBULixHuVUXv8LKbxfjyITJkezUg==", + "version": "6.1.4", + "resolved": "https://registry.npmjs.org/i18next-browser-languagedetector/-/i18next-browser-languagedetector-6.1.4.tgz", + "integrity": "sha512-wukWnFeU7rKIWT66VU5i8I+3Zc4wReGcuDK2+kuFhtoxBRGWGdvYI9UQmqNL/yQH1KogWwh+xGEaIPH8V/i2Zg==", "dependencies": { "@babel/runtime": "^7.14.6" } @@ -18023,9 +18023,9 @@ "integrity": "sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA==" }, "node_modules/react-i18next": { - "version": "11.15.4", - "resolved": "https://registry.npmjs.org/react-i18next/-/react-i18next-11.15.4.tgz", - "integrity": "sha512-jKJNAcVcbPGK+yrTcXhLblgPY16n6NbpZZL3Mk8nswj1v3ayIiUBVDU09SgqnT+DluyQBS97hwSvPU5yVFG0yg==", + "version": "11.16.2", + "resolved": "https://registry.npmjs.org/react-i18next/-/react-i18next-11.16.2.tgz", + "integrity": "sha512-1iuZduvARUelL5ux663FvIoDZExwFO+9QtRAAt4uvs1/aun4cUZt8XBrVg7iiDgNls9cOSORAhE7Ri5KA9RMvg==", "dependencies": { "@babel/runtime": "^7.14.5", "html-escaper": "^2.0.2", @@ -30421,17 +30421,17 @@ } }, "i18next": { - "version": "21.6.11", - "resolved": "https://registry.npmjs.org/i18next/-/i18next-21.6.11.tgz", - "integrity": "sha512-tJ2+o0lVO+fhi8bPkCpBAeY1SgkqmQm5NzgPWCQssBrywJw98/o+Kombhty5nxQOpHtvMmsxcOopczUiH6bJxQ==", + "version": "21.6.14", + "resolved": "https://registry.npmjs.org/i18next/-/i18next-21.6.14.tgz", + "integrity": "sha512-XL6WyD+xlwQwbieXRlXhKWoLb/rkch50/rA+vl6untHnJ+aYnkQ0YDZciTWE78PPhOpbi2gR0LTJCJpiAhA+uQ==", "requires": { - "@babel/runtime": "^7.12.0" + "@babel/runtime": "^7.17.2" } }, "i18next-browser-languagedetector": { - "version": "6.1.3", - "resolved": "https://registry.npmjs.org/i18next-browser-languagedetector/-/i18next-browser-languagedetector-6.1.3.tgz", - "integrity": "sha512-T+oGXHXtrur14CGnZZ7qQ07X38XJQEI00b/4ILrtO6xPbwTlQ1wtMZC2H+tBULixHuVUXv8LKbxfjyITJkezUg==", + "version": "6.1.4", + "resolved": "https://registry.npmjs.org/i18next-browser-languagedetector/-/i18next-browser-languagedetector-6.1.4.tgz", + "integrity": "sha512-wukWnFeU7rKIWT66VU5i8I+3Zc4wReGcuDK2+kuFhtoxBRGWGdvYI9UQmqNL/yQH1KogWwh+xGEaIPH8V/i2Zg==", "requires": { "@babel/runtime": "^7.14.6" } @@ -36183,9 +36183,9 @@ "integrity": "sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA==" }, "react-i18next": { - "version": "11.15.4", - "resolved": "https://registry.npmjs.org/react-i18next/-/react-i18next-11.15.4.tgz", - "integrity": "sha512-jKJNAcVcbPGK+yrTcXhLblgPY16n6NbpZZL3Mk8nswj1v3ayIiUBVDU09SgqnT+DluyQBS97hwSvPU5yVFG0yg==", + "version": "11.16.2", + "resolved": "https://registry.npmjs.org/react-i18next/-/react-i18next-11.16.2.tgz", + "integrity": "sha512-1iuZduvARUelL5ux663FvIoDZExwFO+9QtRAAt4uvs1/aun4cUZt8XBrVg7iiDgNls9cOSORAhE7Ri5KA9RMvg==", "requires": { "@babel/runtime": "^7.14.5", "html-escaper": "^2.0.2", diff --git a/client/package.json b/client/package.json index 1635ae4..469e775 100755 --- a/client/package.json +++ b/client/package.json @@ -68,8 +68,8 @@ "date-fns": "^2.28.0", "dequal": "^2.0.2", "history": "^4.10.1", - "i18next": "^21.6.11", - "i18next-browser-languagedetector": "^6.1.3", + "i18next": "^21.6.14", + "i18next-browser-languagedetector": "^6.1.4", "initials": "^3.1.2", "lodash": "^4.17.20", "node-sass": "^7.0.1", @@ -79,7 +79,7 @@ "react-datepicker": "^4.6.0", "react-dom": "^17.0.1", "react-dropzone": "^12.0.1", - "react-i18next": "^11.15.4", + "react-i18next": "^11.16.2", "react-input-mask": "^2.0.4", "react-markdown": "^8.0.0", "react-redux": "^7.2.6", diff --git a/client/src/i18n.js b/client/src/i18n.js index c012dde..7d52644 100644 --- a/client/src/i18n.js +++ b/client/src/i18n.js @@ -14,7 +14,7 @@ i18n.dateFns = { registerLocale(language, locale); }, - getLocale(language = i18n.language) { + getLocale(language = i18n.resolvedLanguage) { return this.locales[language]; }, format(date, format, { language, ...options } = {}) { @@ -31,8 +31,8 @@ i18n.dateFns = { }, }; -i18n.on('languageChanged', (language) => { - setDefaultLocale(language); +i18n.on('languageChanged', () => { + setDefaultLocale(i18n.resolvedLanguage); }); const formatDatePostProcessor = { @@ -59,8 +59,8 @@ i18n .init({ resources: embedLocales, fallbackLng: false, - whitelist: languages, - load: 'currentOnly', + supportedLngs: languages, + load: 'languageOnly', interpolation: { escapeValue: false, format(value, format, language) { diff --git a/client/src/sagas/core/services/core.js b/client/src/sagas/core/services/core.js index 1e59a4f..2e603b2 100644 --- a/client/src/sagas/core/services/core.js +++ b/client/src/sagas/core/services/core.js @@ -25,7 +25,7 @@ export function* initializeCoreService() { notifications, } = yield call(fetchCoreRequest); // TODO: handle error - yield call(i18n.loadCoreLocale, i18n.language); + yield call(i18n.loadCoreLocale, i18n.resolvedLanguage); yield put( initializeCore(