NuxtAuthDashboardRepository/frontend/app.vue
2025-04-21 08:50:19 +05:30

31 lines
851 B
Vue

<template>
<div class="flex min-h-screen bg-gray-100 text-gray-900">
<!-- Sidebar and Navbar only for authenticated & non-public routes -->
<Sidebar v-if="!isPublicPage" />
<div v-if="!isPublicPage" class="flex flex-col flex-1 ml-64">
<Navbar />
<main class="p-6">
<NuxtPage />
</main>
</div>
<!-- Auth pages like SignIn or SignUp show full page -->
<div v-else class="w-full">
<NuxtPage />
</div>
</div>
</template>
<script setup>
import { useRoute } from 'vue-router'
import { computed } from 'vue'
import Sidebar from '~/app/components/Sidebar.vue'
import Navbar from '~/app/components/Navbar.vue'
const route = useRoute()
const publicRoutes = ['/', '/SignIn', '/SignUp'] // Add more if needed
const isPublicPage = computed(() => publicRoutes.includes(route.path))
</script>