From 35a43e7be453889b14ddf5717cd0b450c299be11 Mon Sep 17 00:00:00 2001 From: SlimusMinus Date: Tue, 23 Jun 2026 00:08:15 +0300 Subject: [PATCH] added reviews --- src/App.js | 2 ++ src/components/MainFeed.jsx | 3 +++ src/components/Sidebar.jsx | 6 ++++++ src/components/icons/NavIcons.jsx | 5 +++++ src/config/feedConstants.js | 2 +- 5 files changed, 17 insertions(+), 1 deletion(-) diff --git a/src/App.js b/src/App.js index d84c47a..b52ada3 100644 --- a/src/App.js +++ b/src/App.js @@ -4,6 +4,7 @@ import RegisterPage from './components/Authentication'; import MainFeed from './components/MainFeed'; import ChatPage from './components/ChatPage'; import ChatListPage from './components/ChatListPage'; +import ReviewsPage from './components/ReviewsPage'; import './styles/chat.css'; function App() { @@ -15,6 +16,7 @@ function App() { } /> } /> + } /> } /> } /> diff --git a/src/components/MainFeed.jsx b/src/components/MainFeed.jsx index 23f28c9..35b6756 100644 --- a/src/components/MainFeed.jsx +++ b/src/components/MainFeed.jsx @@ -1,4 +1,5 @@ import { useState, useEffect, useCallback, useMemo } from "react"; +import { useNavigate } from "react-router-dom"; import "../styles/index.css"; import { API_URL } from "../config/authConstants"; import Sidebar from "./Sidebar"; @@ -17,6 +18,7 @@ import { useAuthContext } from "../context/AuthContext"; * остальные компоненты получают данные через пропсы. */ export default function MainFeed() { + const navigate = useNavigate(); const { user, token, isAuthenticated, logout } = useAuthContext(); // Открыт ли левый сайдбар (мобильный слайд-аут) @@ -269,6 +271,7 @@ export default function MainFeed() { onLogout={logout} onLoginClick={() => setAuthModalOpen(true)} onRulesClick={() => setRulesModalOpen(true)} + onReviewsClick={() => navigate("/reviews")} />
diff --git a/src/components/Sidebar.jsx b/src/components/Sidebar.jsx index 83256f0..3cdbfda 100644 --- a/src/components/Sidebar.jsx +++ b/src/components/Sidebar.jsx @@ -15,6 +15,7 @@ export default function Sidebar({ onLogout, onLoginClick, onRulesClick, + onReviewsClick, }) { const navigate = useNavigate(); return ( @@ -63,6 +64,11 @@ export default function Sidebar({ onClose(); return; } + if (label === "Отзывы") { + onReviewsClick?.(); + onClose(); + return; + } onNavClick(label); onClose(); }; diff --git a/src/components/icons/NavIcons.jsx b/src/components/icons/NavIcons.jsx index 69af650..edbc0f8 100644 --- a/src/components/icons/NavIcons.jsx +++ b/src/components/icons/NavIcons.jsx @@ -36,6 +36,11 @@ export const NavIcons = { ), + star: () => ( + + + + ), rules: () => ( diff --git a/src/config/feedConstants.js b/src/config/feedConstants.js index 71371e0..c7e34d2 100644 --- a/src/config/feedConstants.js +++ b/src/config/feedConstants.js @@ -8,7 +8,7 @@ export const NAV_ITEMS = [ ]; export const NAV_BOTTOM = [ - { icon: "user", label: "Профиль" }, + { icon: "star", label: "Отзывы" }, { icon: "rules", label: "Правила площадки" }, ];