mirror of
https://github.com/alam00000/bentopdf.git
synced 2026-11-05 20:02:47 +01:00
- Extract navbar component from index.html into src/partials/navbar.html - Extract footer component from index.html into src/partials/footer.html - Add update-partials.js script to automate partial injection into page templates - Update all 80+ page templates to use injected navbar and footer partials - Update vite.config.ts to support partial file processing - Update package.json and package-lock.json with build script changes - Sync all translation files (de, en, fr, id, it, pt, tr, vi, zh, zh-TW) with latest keys - Improves maintainability by centralizing navbar and footer updates across all pages
155 lines
6.3 KiB
HTML
155 lines
6.3 KiB
HTML
<nav class="bg-gray-800 border-b border-gray-700 sticky top-0 z-30">
|
|
<div class="container mx-auto px-4">
|
|
<div class="flex justify-between items-center h-16">
|
|
<div
|
|
class="flex-shrink-0 flex items-center cursor-pointer"
|
|
id="home-logo"
|
|
>
|
|
<img
|
|
src="/images/favicon-no-bg.svg"
|
|
alt="Bento PDF Logo"
|
|
class="h-8 w-8"
|
|
/>
|
|
<span class="text-white font-bold text-xl ml-2">
|
|
<a href="index.html">BentoPDF</a>
|
|
</span>
|
|
</div>
|
|
|
|
<!-- Desktop Navigation -->
|
|
<div class="hidden md:flex items-center space-x-8">
|
|
<a href="index.html" class="nav-link" data-i18n="nav.home">Home</a>
|
|
<a href="/about.html" class="nav-link" data-i18n="nav.about">About</a>
|
|
<a href="/contact.html" class="nav-link" data-i18n="nav.contact"
|
|
>Contact</a
|
|
>
|
|
<a href="/licensing.html" class="nav-link" data-i18n="nav.licensing"
|
|
>Licensing</a
|
|
>
|
|
<a
|
|
href="index.html#tools-header"
|
|
class="nav-link"
|
|
data-i18n="nav.allTools"
|
|
>All Tools</a
|
|
>
|
|
<a
|
|
href="https://github.com/alam00000/bentopdf/"
|
|
target="_blank"
|
|
rel="noopener noreferrer"
|
|
class="inline-flex items-center gap-1.5 text-sm font-medium bg-gray-800 text-gray-200 border border-gray-600 pl-2.5 pr-3 py-1 rounded-full transition-colors duration-200 shadow-sm hover:shadow-md hover:bg-gray-700"
|
|
>
|
|
<svg
|
|
class="w-4 h-4 flex-shrink-0 text-gray-200"
|
|
fill="currentColor"
|
|
viewBox="0 0 24 24"
|
|
aria-hidden="true"
|
|
>
|
|
<path
|
|
fill-rule="evenodd"
|
|
d="M12 2C6.477 2 2 6.484 2 12.017c0 4.425 2.865 8.18 6.839 9.504.5.092.682-.217.682-.483 0-.237-.008-.868-.013-1.703-2.782.605-3.369-1.343-3.369-1.343-.454-1.158-1.11-1.466-1.11-1.466-.908-.62.069-.608.069-.608 1.003.07 1.531 1.032 1.531 1.032.892 1.53 2.341 1.088 2.91.832.092-.647.35-1.088.636-1.338-2.22-.253-4.555-1.113-4.555-4.951 0-1.093.39-1.988 1.029-2.688-.103-.253-.446-1.272.098-2.65 0 0 .84-.27 2.75 1.026A9.564 9.564 0 0112 6.844c.85.004 1.705.115 2.504.337 1.909-1.296 2.747-1.027 2.747-1.027.546 1.379.202 2.398.1 2.651.64.7 1.028 1.595 1.028 2.688 0 3.848-2.339 4.695-4.566 4.943.359.309.678.92.678 1.855 0 1.338-.012 2.419-.012 2.747 0 .268.18.58.688.482A10.019 10.019 0 0022 12.017C22 6.484 17.522 2 12 2z"
|
|
clip-rule="evenodd"
|
|
/>
|
|
</svg>
|
|
<span id="github-stars-desktop">-</span>
|
|
</a>
|
|
</div>
|
|
|
|
<!-- Mobile Hamburger Button -->
|
|
<div class="md:hidden flex items-center gap-4">
|
|
<a
|
|
href="https://github.com/alam00000/bentopdf/"
|
|
target="_blank"
|
|
rel="noopener noreferrer"
|
|
class="inline-flex items-center gap-1.5 text-sm font-medium bg-gray-800 text-gray-200 border border-gray-600 pl-2.5 pr-3 py-1 rounded-full transition-colors duration-200 shadow-sm hover:shadow-md hover:bg-gray-700"
|
|
>
|
|
<svg
|
|
class="w-4 h-4 flex-shrink-0 text-gray-200"
|
|
fill="currentColor"
|
|
viewBox="0 0 24 24"
|
|
aria-hidden="true"
|
|
>
|
|
<path
|
|
fill-rule="evenodd"
|
|
d="M12 2C6.477 2 2 6.484 2 12.017c0 4.425 2.865 8.18 6.839 9.504.5.092.682-.217.682-.483 0-.237-.008-.868-.013-1.703-2.782.605-3.369-1.343-3.369-1.343-.454-1.158-1.11-1.466-1.11-1.466-.908-.62.069-.608.069-.608 1.003.07 1.531 1.032 1.531 1.032.892 1.53 2.341 1.088 2.91.832.092-.647.35-1.088.636-1.338-2.22-.253-4.555-1.113-4.555-4.951 0-1.093.39-1.988 1.029-2.688-.103-.253-.446-1.272.098-2.65 0 0 .84-.27 2.75 1.026A9.564 9.564 0 0112 6.844c.85.004 1.705.115 2.504.337 1.909-1.296 2.747-1.027 2.747-1.027.546 1.379.202 2.398.1 2.651.64.7 1.028 1.595 1.028 2.688 0 3.848-2.339 4.695-4.566 4.943.359.309.678.92.678 1.855 0 1.338-.012 2.419-.012 2.747 0 .268.18.58.688.482A10.019 10.019 0 0022 12.017C22 6.484 17.522 2 12 2z"
|
|
clip-rule="evenodd"
|
|
/>
|
|
</svg>
|
|
<span id="github-stars-mobile">-</span>
|
|
</a>
|
|
<button
|
|
id="mobile-menu-button"
|
|
type="button"
|
|
class="inline-flex items-center justify-center p-2 rounded-md text-gray-400 hover:text-white hover:bg-gray-700 focus:outline-none focus:ring-2 focus:ring-inset focus:ring-indigo-500 transition-colors"
|
|
aria-controls="mobile-menu"
|
|
aria-expanded="false"
|
|
>
|
|
<span class="sr-only" data-i18n="nav.openMainMenu"
|
|
>Open main menu</span
|
|
>
|
|
<!-- Hamburger Icon -->
|
|
<svg
|
|
id="menu-icon"
|
|
class="block h-6 w-6"
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
fill="none"
|
|
viewBox="0 0 24 24"
|
|
stroke="currentColor"
|
|
aria-hidden="true"
|
|
>
|
|
<path
|
|
stroke-linecap="round"
|
|
stroke-linejoin="round"
|
|
stroke-width="2"
|
|
d="M4 6h16M4 12h16M4 18h16"
|
|
/>
|
|
</svg>
|
|
<!-- Close Icon -->
|
|
<svg
|
|
id="close-icon"
|
|
class="hidden h-6 w-6"
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
fill="none"
|
|
viewBox="0 0 24 24"
|
|
stroke="currentColor"
|
|
aria-hidden="true"
|
|
>
|
|
<path
|
|
stroke-linecap="round"
|
|
stroke-linejoin="round"
|
|
stroke-width="2"
|
|
d="M6 18L18 6M6 6l12 12"
|
|
/>
|
|
</svg>
|
|
</button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Mobile Menu Dropdown -->
|
|
<div
|
|
id="mobile-menu"
|
|
class="hidden md:hidden bg-gray-800 border-t border-gray-700"
|
|
>
|
|
<div class="px-2 pt-2 pb-3 space-y-1 text-center">
|
|
<a href="index.html" class="mobile-nav-link" data-i18n="nav.home">Home</a>
|
|
<a href="/about.html" class="mobile-nav-link" data-i18n="nav.about"
|
|
>About</a
|
|
>
|
|
<a href="/contact.html" class="mobile-nav-link" data-i18n="nav.contact"
|
|
>Contact</a
|
|
>
|
|
<a
|
|
href="/licensing.html"
|
|
class="mobile-nav-link"
|
|
data-i18n="nav.licensing"
|
|
>Licensing</a
|
|
>
|
|
<a
|
|
href="index.html#tools-header"
|
|
class="mobile-nav-link"
|
|
data-i18n="nav.allTools"
|
|
>All Tools</a
|
|
>
|
|
</div>
|
|
</div>
|
|
</nav>
|