AppTopBar.vue 1.4KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. <script setup>
  2. import { Link } from '@inertiajs/inertia-vue3'
  3. defineEmits(['menu-toggle'])
  4. </script>
  5. <template>
  6. <div class="layout-topbar">
  7. <div class="layout-topbar-logo">
  8. <img alt="Logo" src="/images/logo-dark.svg" />
  9. <span>SAKAI</span>
  10. </div>
  11. <button class="p-link layout-menu-button layout-topbar-button" @click="$emit('menu-toggle')">
  12. <i class="pi pi-bars"></i>
  13. </button>
  14. <button
  15. class="p-link layout-topbar-menu-button layout-topbar-button"
  16. v-styleclass="{
  17. selector: '@next',
  18. enterClass: 'hidden',
  19. enterActiveClass: 'scalein',
  20. leaveToClass: 'hidden',
  21. leaveActiveClass: 'fadeout',
  22. hideOnOutsideClick: true,
  23. }"
  24. >
  25. <i class="pi pi-ellipsis-v"></i>
  26. </button>
  27. <ul class="layout-topbar-menu hidden lg:flex origin-top">
  28. <li>
  29. <span class="hidden lg:inline">{{ $page.props.auth.user.name }}</span>
  30. <Link href="" class="p-link layout-topbar-button" v-tooltip.bottom="'Pengaturan Profil'">
  31. <i class="pi pi-user"></i>
  32. <span>Pengaturan Profil</span>
  33. </Link>
  34. <Link
  35. :href="route('logout')"
  36. as="button"
  37. method="post"
  38. class="p-link layout-topbar-button"
  39. v-tooltip.bottom="'Sign Out'"
  40. >
  41. <i class="pi pi-sign-out"></i>
  42. <span>Sign Out</span>
  43. </Link>
  44. </li>
  45. </ul>
  46. </div>
  47. </template>