summaryrefslogtreecommitdiffstats
path: root/client/src/admin/jsx/layout/LangSwitch.jsx
diff options
context:
space:
mode:
authorGravatar Piotr Russ <mail@pruss.it> 2020-12-06 23:49:13 +0100
committerGravatar Piotr Russ <mail@pruss.it> 2020-12-06 23:49:13 +0100
commit4d642e312ed728ad51c454d1e2a0b7bb350fc174 (patch)
treee39b26a31b14fe34dced83669bf2844fa7c9752e /client/src/admin/jsx/layout/LangSwitch.jsx
parent88c2fa63eb8c3ade93914f77d427219b3233ca02 (diff)
downloadwebsite_creator-4d642e312ed728ad51c454d1e2a0b7bb350fc174.tar.gz
website_creator-4d642e312ed728ad51c454d1e2a0b7bb350fc174.tar.bz2
website_creator-4d642e312ed728ad51c454d1e2a0b7bb350fc174.zip
first creator page
Diffstat (limited to 'client/src/admin/jsx/layout/LangSwitch.jsx')
-rw-r--r--client/src/admin/jsx/layout/LangSwitch.jsx42
1 files changed, 42 insertions, 0 deletions
diff --git a/client/src/admin/jsx/layout/LangSwitch.jsx b/client/src/admin/jsx/layout/LangSwitch.jsx
new file mode 100644
index 0000000..684d432
--- /dev/null
+++ b/client/src/admin/jsx/layout/LangSwitch.jsx
@@ -0,0 +1,42 @@
+import React from 'react';
+import { WithHover } from '../../hocs';
+import { languages } from '../../data/translations.js'
+
+const LangSwitch = ({ lang, setLang, opened, setOpened}) => {
+ const handleSetLang = (key) => {
+ setLang(key);
+ setOpened(false);
+ };
+
+ return (
+ <div className="lang-switch">
+ <WithHover message="click-to-change-language">
+ <span
+ className={`lang-switch__main-item${opened === 'lang' ? ' lang-switch__main-item--active' : ''}`}
+ onClick={() => setOpened(opened !== 'lang' ? 'lang' : false)}
+ >
+ {lang}
+ </span>
+ {
+ opened === 'lang' && (
+ <div className="lang-switch__list">
+ {
+ languages.map(key => key !== lang && (
+ <span
+ className="lang-switch__item"
+ key={key}
+ onClick={() => handleSetLang(key)}
+ >
+ {key}
+ </span>
+ ))
+ }
+ </div>
+ )
+ }
+ </WithHover>
+ </div>
+ );
+};
+
+export default LangSwitch;