refactor: Clean up Navbar component and remove support link

- Remove the "Support" link from the Navbar.vue navigation items to streamline the menu.
- Adjust formatting in Navbar.vue for improved readability and consistency in the template structure.
- Update i18n files to remove references to the "Support" string in English, Spanish, and French locales, enhancing localization accuracy.
This commit is contained in:
padreug 2025-08-02 16:28:28 +02:00
parent 93d30c0255
commit 941b4c3ec5
5 changed files with 16 additions and 17 deletions

View file

@ -28,7 +28,6 @@ const showProfileDialog = ref(false)
const navigation = computed<NavigationItem[]>(() => [
{ name: t('nav.home'), href: '/' },
{ name: t('nav.events'), href: '/events' },
{ name: t('nav.support'), href: '/support' },
])
// Compute total wallet balance
@ -76,14 +75,16 @@ const handleLogout = async () => {
<!-- Logo and Desktop Navigation -->
<div class="flex items-center gap-4 lg:gap-8 xl:gap-12">
<router-link to="/" class="flex items-center gap-2 text-foreground hover:text-foreground/90">
<img src="@/assets/logo.png" alt="Logo" class="h-10 w-10 sm:h-12 sm:w-12 md:h-14 md:w-14 lg:h-16 lg:w-16 xl:h-20 xl:w-20" />
<img src="@/assets/logo.png" alt="Logo"
class="h-10 w-10 sm:h-12 sm:w-12 md:h-14 md:w-14 lg:h-16 lg:w-16 xl:h-20 xl:w-20" />
<span class="font-semibold text-base lg:text-lg xl:text-xl">{{ t('nav.title') }}</span>
</router-link>
<!-- Desktop Navigation -->
<div class="hidden md:flex gap-4 lg:gap-6 xl:gap-8">
<router-link v-for="item in navigation" :key="item.name" :to="item.href"
class="text-muted-foreground hover:text-foreground transition-colors flex items-center gap-2 text-sm lg:text-base xl:text-lg" :class="{
class="text-muted-foreground hover:text-foreground transition-colors flex items-center gap-2 text-sm lg:text-base xl:text-lg"
:class="{
'text-foreground': $route.path === item.href
}">
{{ item.name }}
@ -94,7 +95,8 @@ const handleLogout = async () => {
<!-- Theme Toggle, Language, and Identity -->
<div class="flex items-center gap-2 lg:gap-4 xl:gap-6">
<!-- Wallet Balance Display -->
<div v-if="auth.isAuthenticated.value" class="hidden sm:flex items-center gap-2 px-3 py-1 bg-muted/50 rounded-lg border">
<div v-if="auth.isAuthenticated.value"
class="hidden sm:flex items-center gap-2 px-3 py-1 bg-muted/50 rounded-lg border">
<Wallet class="h-4 w-4 text-muted-foreground" />
<CurrencyDisplay :balance-msat="totalBalance" />
</div>
@ -105,7 +107,8 @@ const handleLogout = async () => {
<DropdownMenuTrigger asChild>
<Button variant="ghost" size="sm" class="gap-2 lg:gap-3">
<User class="h-4 w-4 lg:h-5 lg:w-5" />
<span class="max-w-24 lg:max-w-32 xl:max-w-40 truncate">{{ auth.userDisplay.value?.name || 'Anonymous' }}</span>
<span class="max-w-24 lg:max-w-32 xl:max-w-40 truncate">{{ auth.userDisplay.value?.name || 'Anonymous'
}}</span>
<Badge variant="secondary" class="text-xs lg:text-sm">Logged In</Badge>
</Button>
</DropdownMenuTrigger>
@ -166,8 +169,7 @@ const handleLogout = async () => {
<div class="space-y-1 p-4">
<!-- Authentication in mobile menu -->
<div class="mb-4 px-2">
<Button v-if="!auth.isAuthenticated.value" variant="outline" size="sm"
@click="openLoginDialog"
<Button v-if="!auth.isAuthenticated.value" variant="outline" size="sm" @click="openLoginDialog"
class="w-full gap-2 min-h-[44px] touch-manipulation">
<User class="h-4 w-4" />
Login
@ -190,7 +192,8 @@ const handleLogout = async () => {
<User class="h-4 w-4" />
Profile
</Button>
<Button variant="ghost" size="sm" @click="() => router.push('/my-tickets')" class="w-full justify-start gap-2">
<Button variant="ghost" size="sm" @click="() => router.push('/my-tickets')"
class="w-full justify-start gap-2">
<Ticket class="h-4 w-4" />
My Tickets
</Button>

View file

@ -6,7 +6,6 @@ const messages: LocaleMessages = {
title: 'Virtual Realm',
directory: 'Directory',
faq: 'FAQ',
support: 'Support',
events: 'Events',
login: 'Login',
logout: 'Logout'

View file

@ -6,7 +6,6 @@ const messages: LocaleMessages = {
home: 'Inicio',
directory: 'Directorio',
faq: 'Preguntas Frecuentes',
support: 'Soporte',
events: 'Eventos',
login: 'Iniciar Sesión',
logout: 'Cerrar Sesión'

View file

@ -6,7 +6,6 @@ const messages: LocaleMessages = {
home: 'Accueil',
directory: 'Répertoire',
faq: 'FAQ',
support: 'Support',
events: 'Événements',
login: 'Connexion',
logout: 'Déconnexion'

View file

@ -4,7 +4,6 @@ export interface LocaleMessages {
home: string
directory: string
faq: string
support: string
events: string
login: string
logout: string