diff --git a/customer-spa/src/layouts/BaseLayout.tsx b/customer-spa/src/layouts/BaseLayout.tsx index 4263af8..258d99d 100644 --- a/customer-spa/src/layouts/BaseLayout.tsx +++ b/customer-spa/src/layouts/BaseLayout.tsx @@ -21,7 +21,7 @@ interface BaseLayoutProps { */ export function BaseLayout({ children }: BaseLayoutProps) { const headerSettings = useHeaderSettings(); - + // Map header styles to layouts // classic -> ClassicLayout, centered -> ModernLayout, minimal -> LaunchLayout, split -> BoutiqueLayout switch (headerSettings.style) { @@ -53,10 +53,10 @@ function ClassicLayout({ children }: BaseLayoutProps) { const footerSettings = useFooterSettings(); const [mobileMenuOpen, setMobileMenuOpen] = useState(false); const [searchOpen, setSearchOpen] = useState(false); - + const heightClass = headerSettings.height === 'compact' ? 'h-16' : headerSettings.height === 'tall' ? 'h-24' : 'h-20'; const hasActions = headerSettings.elements.search || headerSettings.elements.account || headerSettings.elements.cart || headerSettings.elements.wishlist; - + const footerColsClass: Record = { '1': 'grid-cols-1', '2': 'grid-cols-1 md:grid-cols-2', @@ -64,7 +64,7 @@ function ClassicLayout({ children }: BaseLayoutProps) { '4': 'grid-cols-1 md:grid-cols-4', }; const footerGridClass = footerColsClass[footerSettings.columns] || 'grid-cols-1 md:grid-cols-4'; - + const headerContent = ( <> setSearchOpen(false)} /> @@ -75,31 +75,31 @@ function ClassicLayout({ children }: BaseLayoutProps) { {headerSettings.elements.logo && (
- {storeLogo ? ( - {storeName} - ) : ( - <> -
- W -
- - {storeName} - - - )} - -
+ {storeLogo ? ( + {storeName} + ) : ( + <> +
+ W +
+ + {storeName} + + + )} + + )} - + {/* Navigation */} {headerSettings.elements.navigation && ( )} - + {/* Actions - Hidden on mobile when using bottom-nav */} {hasActions && (
{/* Search */} {headerSettings.elements.search && ( - )} - {/* Account */} - {headerSettings.elements.account && (user?.isLoggedIn ? ( - - - Account - - ) : ( - - - Account - - ))} - - {/* Wishlist */} - {headerSettings.elements.wishlist && isEnabled('wishlist') && (wishlistSettings.show_in_header ?? true) && ( - - - Wishlist - - )} - + {/* Account */} + {headerSettings.elements.account && (user?.isLoggedIn ? ( + + + Account + + ) : ( + + + Account + + ))} + + {/* Wishlist */} + {headerSettings.elements.wishlist && isEnabled('wishlist') && (wishlistSettings.show_in_header ?? true) && ( + + + Wishlist + + )} + {/* Cart */} {headerSettings.elements.cart && ( -
- - {itemCount > 0 && ( - - {itemCount} - - )} -
- - Cart ({itemCount}) +
+ + {itemCount > 0 && ( + + {itemCount} + + )} +
+ + Cart ({itemCount}) - + )} - + {/* Mobile Menu Toggle - Only for hamburger and slide-in */} {(headerSettings.mobile_menu === 'hamburger' || headerSettings.mobile_menu === 'slide-in') && ( -
)} - + {/* Mobile Menu - Hamburger Dropdown */} {headerSettings.mobile_menu === 'hamburger' && mobileMenuOpen && (
@@ -184,7 +184,7 @@ function ClassicLayout({ children }: BaseLayoutProps) { )}
)} - + {/* Mobile Menu - Slide-in Drawer */} {headerSettings.mobile_menu === 'slide-in' && mobileMenuOpen && ( <> @@ -210,7 +210,7 @@ function ClassicLayout({ children }: BaseLayoutProps) { ); - + const footerContent = ( <> {/* Mobile Menu - Bottom Navigation */} @@ -222,7 +222,7 @@ function ClassicLayout({ children }: BaseLayoutProps) { Shop {headerSettings.elements.search && ( - - + {/* Mobile Menu */} {mobileMenuOpen && (
@@ -464,11 +464,11 @@ function ModernLayout({ children }: BaseLayoutProps) { )}
- +
{children}
- +