From 467dfa007da471cc1e597082c67e76ece1ad8dfe Mon Sep 17 00:00:00 2001 From: Sacha VAUDEY Date: Sat, 31 May 2025 22:16:47 +0200 Subject: [PATCH] refacore and some improvment --- .../src/components/layout/MobileMenu.tsx | 100 ++++++++++++++ .../src/components/layout/Navigation.tsx | 125 +----------------- 2 files changed, 107 insertions(+), 118 deletions(-) diff --git a/banquise-website/src/components/layout/MobileMenu.tsx b/banquise-website/src/components/layout/MobileMenu.tsx index e69de29..a6565d0 100644 --- a/banquise-website/src/components/layout/MobileMenu.tsx +++ b/banquise-website/src/components/layout/MobileMenu.tsx @@ -0,0 +1,100 @@ +import React, { useEffect } from 'react'; + +interface MobileMenuProps { + isOpen: boolean; + onClose: () => void; +} + +export const MobileMenu: React.FC = ({ isOpen, onClose }) => { + // Empêcher le scroll du body quand le menu mobile est ouvert + useEffect(() => { + if (isOpen) { + document.body.style.overflow = 'hidden'; + } else { + document.body.style.overflow = 'unset'; + } + + return () => { + document.body.style.overflow = 'unset'; + }; + }, [isOpen]); + + return ( +
+ {/* Overlay sombre */} +
+ + {/* Menu mobile simplifié */} +
+ + {/* Header minimaliste */} +
+
+ Logo + + La Banquise + +
+ + +
+ + {/* Boutons principaux - Centré et espacé */} +
+ + {/* Bouton Discord */} + +
+ + + + Discord +
+
+ + {/* Bouton Services */} + +
+ + + + Nos Services +
+
+ +
+ + {/* Footer minimaliste */} +
+

+ © 2024 La Banquise +

+
+
+
+ ); +}; diff --git a/banquise-website/src/components/layout/Navigation.tsx b/banquise-website/src/components/layout/Navigation.tsx index f34605b..cf96e65 100644 --- a/banquise-website/src/components/layout/Navigation.tsx +++ b/banquise-website/src/components/layout/Navigation.tsx @@ -1,9 +1,10 @@ import React, { useState, useEffect } from 'react'; +import { MobileMenu } from './MobileMenu'; export const Navigation: React.FC = () => { const [mobileMenuOpen, setMobileMenuOpen] = useState(false); - // Fermer le menu mobile quand on clique en dehors + // Fermer le menu mobile quand on redimensionne la fenêtre useEffect(() => { const handleResize = () => { if (window.innerWidth >= 768) { @@ -15,19 +16,6 @@ export const Navigation: React.FC = () => { return () => window.removeEventListener('resize', handleResize); }, []); - // Empêcher le scroll du body quand le menu mobile est ouvert - useEffect(() => { - if (mobileMenuOpen) { - document.body.style.overflow = 'hidden'; - } else { - document.body.style.overflow = 'unset'; - } - - return () => { - document.body.style.overflow = 'unset'; - }; - }, [mobileMenuOpen]); - return ( <> - {/* Menu mobile overlay et contenu */} -
- {/* Overlay sombre */} -
setMobileMenuOpen(false)} - /> - - {/* Menu mobile */} -
- - {/* Header du menu mobile */} -
-
- Logo La Banquise -

- La Banquise -

-
- - -
- - {/* Navigation links */} - - - {/* Footer du menu mobile */} - -
-
+ {/* Menu mobile */} + setMobileMenuOpen(false)} + /> ); };