diff --git a/frontend/app/src/App.css b/frontend/app/src/App.css
index 0ea3b83..28e9f35 100644
--- a/frontend/app/src/App.css
+++ b/frontend/app/src/App.css
@@ -3,6 +3,7 @@ body {
color: #fff;
font-family: "Comfortaa", sans-serif;
background-image: linear-gradient(to bottom, #020917, #101725);
+ background-color: #001529
}
.content {
diff --git a/frontend/app/src/components/HeaderComponent.tsx b/frontend/app/src/components/HeaderComponent.tsx
index da3e585..1b20934 100644
--- a/frontend/app/src/components/HeaderComponent.tsx
+++ b/frontend/app/src/components/HeaderComponent.tsx
@@ -1,14 +1,15 @@
import {
DesktopOutlined,
+ GlobalOutlined,
LogoutOutlined,
SettingOutlined,
UserOutlined,
} from "@ant-design/icons";
-import { Layout, Menu, MenuProps, Popover } from "antd";
+import { Layout, Menu, MenuProps, Popover, Select } from "antd";
import React, { useState } from "react";
import AuthModal from "./AuthModal";
import "./styles.css";
-import { StorePrototype, logOut, store } from "../config/store";
+import { StorePrototype, logOut, setLanguage, store } from "../config/store";
import { useSelector } from "react-redux";
import tr from "../config/translation";
import { Link, useNavigate } from "react-router-dom";
@@ -23,11 +24,34 @@ const HeaderComponent = () => {
const [authModalOpen, setAuthModalOpen] = useState(false);
const [userMenuOpen, setUserMenuOpen] = useState(false);
+ const [languageSelectOpen, setLanguageSelectOpen] = useState(false);
+ const currentLanguage = useSelector(
+ (state: StorePrototype) => state.settings.language
+ );
const user: NullableUser = useSelector(
(state: StorePrototype) => state.auth.user
);
+ const languageSelectItems: MenuProps["items"] = [
+ {
+ label: "English",
+ key: "en",
+ onClick: () => {
+ store.dispatch(setLanguage("en"));
+ window.location.reload();
+ },
+ },
+ {
+ label: "Русский",
+ key: "ru",
+ onClick: () => {
+ store.dispatch(setLanguage("ru"));
+ window.location.reload();
+ },
+ },
+ ];
+
const userMenuItems: MenuProps["items"] = [
{
label: {tr("Settings")},
@@ -59,6 +83,28 @@ const HeaderComponent = () => {
icon: ,
disabled: !user,
},
+ {
+ label: (
+ setLanguageSelectOpen(isOpen)}
+ content={
+
+ }
+ >
+ {tr("Language")}
+
+ ),
+ key: "language",
+ icon: ,
+ onClick: () => setLanguageSelectOpen(true),
+ },
{
label: user ? (