From d1c72a7710010de52b4d3c7473a0def36b2ef4f8 Mon Sep 17 00:00:00 2001 From: Abhijith Date: Wed, 30 Sep 2020 02:17:33 +0530 Subject: [PATCH 1/7] Added menu and passing props --- app/src/Dashboard.jsx | 14 +++++++++++++- app/src/Language.jsx | 38 ++++++++++++++++++++++++++++++++++++++ app/src/MenuItems.jsx | 3 ++- app/src/i18n/ca-es.lang.js | 6 ++++++ app/src/i18n/en-en.lang.js | 6 ++++++ app/src/i18n/es-es.lang.js | 6 ++++++ 6 files changed, 71 insertions(+), 2 deletions(-) create mode 100644 app/src/Language.jsx diff --git a/app/src/Dashboard.jsx b/app/src/Dashboard.jsx index 0fac879f..8c3a3ee2 100644 --- a/app/src/Dashboard.jsx +++ b/app/src/Dashboard.jsx @@ -25,6 +25,7 @@ import Menu from './Menu'; import ModalRouter from './ModalRouter'; import ErrorCatcher from './ErrorCatcher'; import About from './About'; +import Language from './Language'; const withErrorCatcher = (origin, component) => { component }; @@ -117,6 +118,7 @@ const useStyles = makeStyles((theme) => ({ })); const RoutesModal = (props) => { + const { language, onLanguageChange } = props.routeProps; return ( { path='about' render={ props => withErrorCatcher('About', ) } /> + + withErrorCatcher( + "Language", + + ) + } + /> ) }; @@ -142,7 +154,7 @@ const Dashboard = (props) => { return ( - +
diff --git a/app/src/Language.jsx b/app/src/Language.jsx new file mode 100644 index 00000000..ef4d0ca9 --- /dev/null +++ b/app/src/Language.jsx @@ -0,0 +1,38 @@ +import React from "react"; + +import { translate } from "react-translate"; + +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { faLanguage } from "@fortawesome/free-solid-svg-icons"; +import available from "./i18n/available"; + +class Language extends React.Component { + render() { + const { t, language, onLanguageChange } = this.props; + console.log(this.props); + return ( + <> +

+ + {t("Language")} +

+
+ {Object.keys(available).map((key) => ( + <> + + +
+ + ))} +
+ + ); + } +} + +export default translate("Language")(Language); diff --git a/app/src/MenuItems.jsx b/app/src/MenuItems.jsx index 63b61c0a..b3f8ad1a 100644 --- a/app/src/MenuItems.jsx +++ b/app/src/MenuItems.jsx @@ -17,7 +17,7 @@ import AssignmentIcon from '@material-ui/icons/Assignment'; */ import { FontAwesomeIcon } from '@fortawesome/react-fontawesome' -import { faInfoCircle as faAbout } from '@fortawesome/free-solid-svg-icons' +import { faInfoCircle as faAbout, faLanguage } from '@fortawesome/free-solid-svg-icons' const ListItemLink = (props) => { const { icon, primary, to } = props; @@ -49,6 +49,7 @@ const MainMenuItems = translate('Menu')((props) => {
{/* } /> */} } /> + } />
) }); diff --git a/app/src/i18n/ca-es.lang.js b/app/src/i18n/ca-es.lang.js index aa05751d..bbcfbae2 100644 --- a/app/src/i18n/ca-es.lang.js +++ b/app/src/i18n/ca-es.lang.js @@ -4,6 +4,7 @@ const common = { "Refactored": "Refactoritzada", "Close": "Tanca", "About": "Quant a...", + "Language": "Language", "Help": "Ajuda", "Yes": "Si", "No": "No", @@ -62,6 +63,11 @@ export default { "dataset API documentation": "documentació de l'API del dataset", }, + Language :{ + ...common, + + }, + Help: { ...common, }, diff --git a/app/src/i18n/en-en.lang.js b/app/src/i18n/en-en.lang.js index 087c78b7..d241998c 100644 --- a/app/src/i18n/en-en.lang.js +++ b/app/src/i18n/en-en.lang.js @@ -4,6 +4,7 @@ const common = { "Refactored": "Refactored", "Close": "Close", "About": "About...", + "Language": "Language", "Help": "Help", "Yes": "Yes", "No": "No", @@ -62,6 +63,11 @@ export default { "dataset API documentation": "dataset API documentation", }, + Language :{ + ...common, + + }, + Help: { ...common, }, diff --git a/app/src/i18n/es-es.lang.js b/app/src/i18n/es-es.lang.js index efddd034..fd5c31c4 100644 --- a/app/src/i18n/es-es.lang.js +++ b/app/src/i18n/es-es.lang.js @@ -4,6 +4,7 @@ const common = { "Refactored": "Refactorizada", "Close": "Cerrar", "About": "Sobre...", + "Language": "Language", "Help": "Ayuda", "Yes": "Sí", "No": "No", @@ -62,6 +63,11 @@ export default { "dataset API documentation": "documentación de la API del dataset", }, + Language :{ + ...common, + + }, + Help: { ...common, }, From 3c2d81b7ee8685d6dca7cd82cc7aef5d23b743ca Mon Sep 17 00:00:00 2001 From: Abhijith Date: Thu, 8 Oct 2020 23:01:47 +0530 Subject: [PATCH 2/7] Language changes --- app/src/App.js | 4 ++-- app/src/Language.jsx | 44 ++++++++++++++++++++++++++------------- app/src/i18n/available.js | 20 +++++++++--------- 3 files changed, 42 insertions(+), 26 deletions(-) diff --git a/app/src/App.js b/app/src/App.js index 1b0837de..5fa247b9 100644 --- a/app/src/App.js +++ b/app/src/App.js @@ -59,7 +59,7 @@ class App extends React.Component { this.state = { initializing: true, newServiceWorkerDetected: false, - language: available.hasOwnProperty(languageNav) ? languageNav : 'ca-es', + language: available.find(language => language.key === languageNav) ? languageNav : 'ca-es', theme: false, // Use defined by user in browser tutorialSeen: false, }; @@ -94,7 +94,7 @@ class App extends React.Component { render() { const { newServiceWorkerDetected, language, theme, tutorialSeen } = this.state; - const translations = available[language]; + const translations = available.find(_language => _language.key === language).value; return ( { + if (!languages.find((item) => item.label === current.label)) { + return languages.concat([current]); + } else { + return languages; + } + }, []); + return ( <>

@@ -17,18 +28,23 @@ class Language extends React.Component { {t("Language")}

- {Object.keys(available).map((key) => ( - <> - - -
- - ))} + + onLanguageChange(e.target.value)} + > + {filteredLanguages.map((ele, index) => ( + } + label={ele.label} + /> + ))} + +
); diff --git a/app/src/i18n/available.js b/app/src/i18n/available.js index ddaf8596..035444ff 100644 --- a/app/src/i18n/available.js +++ b/app/src/i18n/available.js @@ -3,13 +3,13 @@ import es_es from "./es-es.lang.js"; import en_en from "./en-en.lang.js"; // Exports each language with more locale codes -export default { - 'en' : en_en, - 'en-en': en_en, - 'en-us': en_en, - 'en-au': en_en, - 'ca' : ca_es, - 'ca-es': ca_es, - 'es' : es_es, - 'es-es': es_es, -}; +export default [ + { key: "en", label: "English", value: en_en }, + { key: "en-en", label: "English", value: en_en }, + { key: "en-us", label: "English", value: en_en }, + { key: "en-au", label: "English", value: en_en }, + { key: "ca", label: "Spanish", value: ca_es }, + { key: "ca-es", label: "Spanish", value: ca_es }, + { key: "es", label: "French", value: es_es }, + { key: "es-es", label: "French", value: es_es }, +]; From 92d83f467f2699c47ffcf6bc7bd251440afb5ca2 Mon Sep 17 00:00:00 2001 From: Abhijith Date: Thu, 8 Oct 2020 23:15:33 +0530 Subject: [PATCH 3/7] Added transalations --- app/src/i18n/available.js | 8 ++++---- app/src/i18n/ca-es.lang.js | 8 +++++++- app/src/i18n/en-en.lang.js | 8 +++++++- app/src/i18n/es-es.lang.js | 10 ++++++++-- 4 files changed, 26 insertions(+), 8 deletions(-) diff --git a/app/src/i18n/available.js b/app/src/i18n/available.js index 035444ff..18381a42 100644 --- a/app/src/i18n/available.js +++ b/app/src/i18n/available.js @@ -8,8 +8,8 @@ export default [ { key: "en-en", label: "English", value: en_en }, { key: "en-us", label: "English", value: en_en }, { key: "en-au", label: "English", value: en_en }, - { key: "ca", label: "Spanish", value: ca_es }, - { key: "ca-es", label: "Spanish", value: ca_es }, - { key: "es", label: "French", value: es_es }, - { key: "es-es", label: "French", value: es_es }, + { key: "ca", label: "Español", value: ca_es }, + { key: "ca-es", label: "Español", value: ca_es }, + { key: "es", label: "Français", value: es_es }, + { key: "es-es", label: "Français", value: es_es }, ]; diff --git a/app/src/i18n/ca-es.lang.js b/app/src/i18n/ca-es.lang.js index bbcfbae2..e8df176f 100644 --- a/app/src/i18n/ca-es.lang.js +++ b/app/src/i18n/ca-es.lang.js @@ -11,8 +11,15 @@ const common = { "or": "o", }; +const languages = { + en: "Anglais", + es: "Espagnol", + fr: "Français", +} + export default { locale: "fr", // :( + languages, App: { ...common, @@ -65,7 +72,6 @@ export default { Language :{ ...common, - }, Help: { diff --git a/app/src/i18n/en-en.lang.js b/app/src/i18n/en-en.lang.js index d241998c..b7b196f5 100644 --- a/app/src/i18n/en-en.lang.js +++ b/app/src/i18n/en-en.lang.js @@ -11,8 +11,15 @@ const common = { "or": "or", }; +const languages = { + en: "English", + es: "Spanish", + fr: "French", +} + export default { locale: "en", + languages, App: { ...common, @@ -65,7 +72,6 @@ export default { Language :{ ...common, - }, Help: { diff --git a/app/src/i18n/es-es.lang.js b/app/src/i18n/es-es.lang.js index fd5c31c4..18717c9c 100644 --- a/app/src/i18n/es-es.lang.js +++ b/app/src/i18n/es-es.lang.js @@ -11,8 +11,15 @@ const common = { "or": "o", }; +const languages = { + en: "Inglés", + es: "Español", + fr: "Francés", +} + export default { locale: "es", + languages, App: { ...common, @@ -63,9 +70,8 @@ export default { "dataset API documentation": "documentación de la API del dataset", }, - Language :{ + Language: { ...common, - }, Help: { From 4eea00ef0bae319e45b6ab7632b531752ba4d73a Mon Sep 17 00:00:00 2001 From: Abhijith Date: Thu, 8 Oct 2020 23:22:41 +0530 Subject: [PATCH 4/7] Added transalations for different lanaguages --- app/src/i18n/ca-es.lang.js | 2 +- app/src/i18n/es-es.lang.js | 2 +- app/src/i18n/pl-pl.lang.js | 8 ++++++++ 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/app/src/i18n/ca-es.lang.js b/app/src/i18n/ca-es.lang.js index 6a61722b..987d28d5 100644 --- a/app/src/i18n/ca-es.lang.js +++ b/app/src/i18n/ca-es.lang.js @@ -4,7 +4,7 @@ const common = { "Refactored": "Refactoritzada", "Close": "Tanca", "About": "Quant a...", - "Language": "Language", + "Language": "Langue", "Help": "Ajuda", "Yes": "Si", "No": "No", diff --git a/app/src/i18n/es-es.lang.js b/app/src/i18n/es-es.lang.js index 584e42da..580cf77f 100644 --- a/app/src/i18n/es-es.lang.js +++ b/app/src/i18n/es-es.lang.js @@ -4,7 +4,7 @@ const common = { "Refactored": "Refactorizada", "Close": "Cerrar", "About": "Sobre...", - "Language": "Language", + "Language": "Idioma", "Help": "Ayuda", "Yes": "Sí", "No": "No", diff --git a/app/src/i18n/pl-pl.lang.js b/app/src/i18n/pl-pl.lang.js index 2e467bf7..88ca7b1e 100644 --- a/app/src/i18n/pl-pl.lang.js +++ b/app/src/i18n/pl-pl.lang.js @@ -4,14 +4,22 @@ const common = { "Refactored": "Refactored", "Close": "Zamknij", "About": "O Covid Data...", + "Language": "Język", "Help": "Pomoc", "Yes": "Tak", "No": "Nie", "or": "albo", }; +const languages = { + en: "angielski", + es: "hiszpański", + fr: "Francuski", +} + export default { locale: "pl", + languages, App: { ...common, From adeb6989c6f53f10d4907b26a707efe8e7d19a2c Mon Sep 17 00:00:00 2001 From: Abhijith Date: Thu, 8 Oct 2020 23:25:40 +0530 Subject: [PATCH 5/7] Polish language translations --- app/src/i18n/pl-pl.lang.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/src/i18n/pl-pl.lang.js b/app/src/i18n/pl-pl.lang.js index 88ca7b1e..e31ad114 100644 --- a/app/src/i18n/pl-pl.lang.js +++ b/app/src/i18n/pl-pl.lang.js @@ -70,6 +70,10 @@ export default { "dataset API documentation": "dokumentacja źródła API", }, + Language: { + ...common, + }, + Help: { ...common, }, From c463ee8dc8113a4b67964f2cdef75c2fc4e2e123 Mon Sep 17 00:00:00 2001 From: Abhijith Date: Fri, 9 Oct 2020 17:59:20 +0530 Subject: [PATCH 6/7] Updated language changes --- app/src/i18n/available.js | 20 ++++++++++---------- app/src/i18n/ca-es.lang.js | 8 +------- app/src/i18n/en-en.lang.js | 8 +------- app/src/i18n/es-es.lang.js | 8 +------- app/src/i18n/pl-pl.lang.js | 8 +------- 5 files changed, 14 insertions(+), 38 deletions(-) diff --git a/app/src/i18n/available.js b/app/src/i18n/available.js index 12ac42c5..808f0813 100644 --- a/app/src/i18n/available.js +++ b/app/src/i18n/available.js @@ -5,14 +5,14 @@ import pl_pl from "./pl-pl.lang.js"; // Exports each language with more locale codes export default [ - { key: "en", label: "English", value: en_en }, - { key: "en-en", label: "English", value: en_en }, - { key: "en-us", label: "English", value: en_en }, - { key: "en-au", label: "English", value: en_en }, - { key: "ca", label: "Español", value: ca_es }, - { key: "ca-es", label: "Español", value: ca_es }, - { key: "es", label: "Français", value: es_es }, - { key: "es-es", label: "Français", value: es_es }, - { key: "pl", label: "Polskie", value: pl_pl }, - { key: "pl-pl", label: "Polskie", value: pl_pl }, + { key: "en", label: en_en.name, value: en_en }, + { key: "en-en", label: en_en.name, value: en_en }, + { key: "en-us", label: en_en.name, value: en_en }, + { key: "en-au", label: en_en.name, value: en_en }, + { key: "ca", label: ca_es.name, value: ca_es }, + { key: "ca-es", label: ca_es.name, value: ca_es }, + { key: "es", label: es_es.name, value: es_es }, + { key: "es-es", label: es_es.name, value: es_es }, + { key: "pl", label: pl_pl.name, value: pl_pl }, + { key: "pl-pl", label: pl_pl.name, value: pl_pl }, ]; diff --git a/app/src/i18n/ca-es.lang.js b/app/src/i18n/ca-es.lang.js index 987d28d5..b1aef98d 100644 --- a/app/src/i18n/ca-es.lang.js +++ b/app/src/i18n/ca-es.lang.js @@ -11,15 +11,9 @@ const common = { "or": "o", }; -const languages = { - en: "Anglais", - es: "Espagnol", - fr: "Français", -} - export default { locale: "fr", // :( - languages, + name: "French", App: { ...common, diff --git a/app/src/i18n/en-en.lang.js b/app/src/i18n/en-en.lang.js index deb62556..8be1536c 100644 --- a/app/src/i18n/en-en.lang.js +++ b/app/src/i18n/en-en.lang.js @@ -11,15 +11,9 @@ const common = { "or": "or", }; -const languages = { - en: "English", - es: "Spanish", - fr: "French", -} - export default { locale: "en", - languages, + name: "English", App: { ...common, diff --git a/app/src/i18n/es-es.lang.js b/app/src/i18n/es-es.lang.js index 580cf77f..38d963dc 100644 --- a/app/src/i18n/es-es.lang.js +++ b/app/src/i18n/es-es.lang.js @@ -11,15 +11,9 @@ const common = { "or": "o", }; -const languages = { - en: "Inglés", - es: "Español", - fr: "Francés", -} - export default { locale: "es", - languages, + name: "Spanish", App: { ...common, diff --git a/app/src/i18n/pl-pl.lang.js b/app/src/i18n/pl-pl.lang.js index e31ad114..069cf50a 100644 --- a/app/src/i18n/pl-pl.lang.js +++ b/app/src/i18n/pl-pl.lang.js @@ -11,15 +11,9 @@ const common = { "or": "albo", }; -const languages = { - en: "angielski", - es: "hiszpański", - fr: "Francuski", -} - export default { locale: "pl", - languages, + name: "Polish", App: { ...common, From 0ac5591243d99b4cb30fd1187f039df1e53a95c4 Mon Sep 17 00:00:00 2001 From: emibcn Date: Fri, 9 Oct 2020 15:05:48 +0200 Subject: [PATCH 7/7] Fix translations for catalan and spanish --- app/src/i18n/ca-es.lang.js | 4 ++-- app/src/i18n/es-es.lang.js | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/app/src/i18n/ca-es.lang.js b/app/src/i18n/ca-es.lang.js index b1aef98d..dcf07d15 100644 --- a/app/src/i18n/ca-es.lang.js +++ b/app/src/i18n/ca-es.lang.js @@ -4,7 +4,7 @@ const common = { "Refactored": "Refactoritzada", "Close": "Tanca", "About": "Quant a...", - "Language": "Langue", + "Language": "Idioma", "Help": "Ajuda", "Yes": "Si", "No": "No", @@ -13,7 +13,7 @@ const common = { export default { locale: "fr", // :( - name: "French", + name: "Català", App: { ...common, diff --git a/app/src/i18n/es-es.lang.js b/app/src/i18n/es-es.lang.js index 38d963dc..4cd06215 100644 --- a/app/src/i18n/es-es.lang.js +++ b/app/src/i18n/es-es.lang.js @@ -13,7 +13,7 @@ const common = { export default { locale: "es", - name: "Spanish", + name: "Castellano", App: { ...common,