blob: 2494bef1161a18601459774d7ebc5b75760a93f1 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
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;
|