Header.vue 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. <template>
  2. <header
  3. class="fixed inset-x-0 top-[60px] z-50 flex h-14 items-center justify-between gap-12 px-4 transition sm:px-6 lg:left-72 lg:z-30 lg:px-8 xl:left-80"
  4. :class="{
  5. 'backdrop-blur-sm dark:backdrop-blur lg:left-72 xl:left-80': !isInsideMobileNavigation,
  6. 'bg-white dark:bg-zinc-900': isInsideMobileNavigation,
  7. 'bg-white/[var(--bg-opacity-light)] dark:bg-zinc-900/[var(--bg-opacity-dark)]': !isInsideMobileNavigation
  8. }"
  9. style="--bg-opacity-light:0.5; --bg-opacity-dark:0.2;">
  10. <div class="absolute inset-x-0 top-full h-px transition"
  11. :class="{
  12. 'bg-zinc-900/10 dark:bg-white/10' : isInsideMobileNavigation || !mobileNavIsOpen
  13. }"></div>
  14. <DocsSearch/>
  15. <div class="flex items-center gap-5 lg:hidden"></div>
  16. <div class="flex items-center gap-5">
  17. <nav class="hidden md:block">
  18. <ul role="list" class="flex items-center gap-8">
  19. <li>
  20. <NuxtLink :to="'/'"
  21. class="text-sm leading-5 text-zinc-600 transition hover:text-zinc-900 dark:text-zinc-400 dark:hover:text-white">
  22. API
  23. </NuxtLink>
  24. </li>
  25. <li>
  26. <NuxtLink :to="'/'"
  27. class="text-sm leading-5 text-zinc-600 transition hover:text-zinc-900 dark:text-zinc-400 dark:hover:text-white">
  28. Documentation
  29. </NuxtLink>
  30. </li>
  31. <li>
  32. <NuxtLink :to="'/'"
  33. class="text-sm leading-5 text-zinc-600 transition hover:text-zinc-900 dark:text-zinc-400 dark:hover:text-white">
  34. Support
  35. </NuxtLink>
  36. </li>
  37. </ul>
  38. </nav>
  39. <div class="hidden md:block md:h-5 md:w-px md:bg-zinc-900/10 md:dark:bg-white/15" />
  40. <div class="flex gap-4">
  41. <!-- <MobileSearch /> -->
  42. </div>
  43. <div className="hidden min-[416px]:contents">
  44. <AppLink :href="'#'">Sign in</AppLink>
  45. </div>
  46. </div>
  47. </header>
  48. </template>
  49. <script setup>
  50. const props = defineProps({
  51. isInsideMobileNavigation: {
  52. default: false
  53. },
  54. mobileNavIsOpen: {
  55. default: false
  56. }
  57. })
  58. </script>