Files
palina-theme/partials/mobile-menu.hbs

47 lines
2.0 KiB
Handlebars
Raw Permalink Normal View History

<div id="mobile-menu"
x-show="mobileMenuOpen"
x-transition:enter="transition ease-out duration-300"
x-transition:enter-start="-translate-x-full"
x-transition:enter-end="translate-x-0"
x-transition:leave="transition ease-in duration-300"
x-transition:leave-start="translate-x-0"
x-transition:leave-end="-translate-x-full"
class="fixed inset-0 z-50 bg-[var(--bg-primary)] flex flex-col md:hidden"
@click.away="mobileMenuOpen = false"
x-cloak>
<!-- Mobile Menu Header -->
<div class="flex justify-between items-center p-5 flex-none">
<a href="{{@site.url}}" class="flex items-center text-[var(--text-primary)]" @click.stop="mobileMenuOpen = false">
{{#if @site.logo}}
<img src="{{@site.logo}}" alt="{{@site.title}}" class="h-10 w-auto site-logo">
{{else}}
{{> "icons/logo" class="h-10 w-auto site-logo"}}
{{/if}}
</a>
<div class="flex items-center space-x-2">
{{!-- Theme Toggle in Mobile Menu --}}
<button @click="theme = (theme === 'dark' ? 'light' : 'dark')" class="p-2 rounded-full text-[var(--text-secondary)] hover:text-[var(--brand-primary)] transition-colors duration-200">
<div x-show="theme === 'dark'">
{{> "icons/sun" class="w-6 h-6"}}
</div>
<div x-show="theme === 'light'" x-cloak>
{{> "icons/moon" class="w-6 h-6"}}
</div>
</button>
<button @click.stop="mobileMenuOpen = false" class="p-2 rounded-full text-[var(--text-secondary)] hover:text-[var(--brand-primary)] transition-colors duration-200">
{{> "icons/close" class="w-6 h-6"}}
</button>
</div>
</div>
<!-- Mobile Menu Navigation -->
<nav class="flex-grow flex flex-col items-center justify-center p-10 overflow-y-auto" @click="mobileMenuOpen = false">
<div class="w-full text-center">
{{navigation type="primary"}}
</div>
</nav>
</div>