From b0f5cdbb4c4d2e381ed6ba4bad9b2de1f8fd6f7a Mon Sep 17 00:00:00 2001 From: irem Date: Tue, 15 Apr 2025 06:46:06 +0000 Subject: [PATCH] =?UTF-8?q?src/App.js=20G=C3=BCncelle?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/App.js | 83 ++++++++++++++++++++++++++---------------------------- 1 file changed, 40 insertions(+), 43 deletions(-) diff --git a/src/App.js b/src/App.js index fbed467..b978207 100644 --- a/src/App.js +++ b/src/App.js @@ -1,53 +1,50 @@ import React, { useState } from 'react'; -import { BrowserRouter as Router, Route, Routes, Navigate } from 'react-router-dom'; -import LoginPage from './pages/LoginPage'; // Login sayfası -import Navbar from './components/Navbar'; // Navbar bileşeni -import Sidebar from './components/Sidebar'; // Sidebar bileşeni -import AdminRoutes from './roles/AdminRoutes'; // Admin route bileşenleri -import DistributorRoutes from './roles/DistributorRoutes'; // Distributor route bileşenleri -import RetailerRoutes from './roles/RetailerRoutes'; // Retailer route bileşenleri -import CustomerRoutes from './roles/CustomerRoutes'; // Customer route bileşenleri +import { BrowserRouter as Router, Route, Routes, Navigate, Outlet } from 'react-router-dom'; +import LoginPage from './pages/LoginPage'; +import Navbar from './components/Navbar'; +import Sidebar from './components/Sidebar'; +import AdminRoutes from './roles/AdminRoutes'; +import DistributorRoutes from './roles/DistributorRoutes'; +import RetailerRoutes from './roles/RetailerRoutes'; +import CustomerRoutes from './roles/CustomerRoutes'; -function App() { - const [user, setUser] = useState(null); // Kullanıcı verisini tutan durum +const ProtectedLayout = ({ user, onLogout }) => ( +
+ +
+ +
+ +
+
+
+); - const handleLogin = (userData) => { - setUser(userData); // Giriş yapan kullanıcının verilerini ayarlıyoruz - }; +const App = () => { + const [user, setUser] = useState(null); - const handleLogout = () => { - setUser(null); // Kullanıcı çıkışı yaparsa, veriyi sıfırlıyoruz - }; + const handleLogin = (userData) => setUser(userData); + const handleLogout = () => setUser(null); return ( - {/* Eğer kullanıcı giriş yapmamışsa, giriş sayfası gösterilsin */} - {!user ? ( - - ) : ( -
- {/* Sidebar, kullanıcı rolüne göre gösterilecek */} - -
- {/* Navbar, kullanıcı bilgisi ve çıkış fonksiyonu ile birlikte */} - -
- {/* Kullanıcının rolüne göre yönlendirmeler */} - - {user.role === 'admin' && } />} - {user.role === 'distributor' && } />} - {user.role === 'retailer' && } />} - {user.role === 'customer' && } />} - - {/* Tanımlanmayan yollar için yönlendirme */} - } /> - -
-
-
- )} + + : } /> + + {user && ( + }> + : } /> + : } /> + : } /> + : } /> + } /> + + )} + + } /> +
); -} +}; -export default App; +export default App; \ No newline at end of file