fix: Lift menu state to App.vue and translate menu labels to Romanian

- Move menuOpen state from DashboardHeader to App.vue for proper state management
- Pass menuOpen as prop to DashboardHeader component
- Translate hamburger menu labels to Romanian (Navigation, Invoices, Bank & Cash, System, Cache Statistics)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-12-08 17:05:34 +02:00
parent dae6db4b1a
commit 06066f1702
3 changed files with 14 additions and 10 deletions

View File

@@ -3,6 +3,7 @@
<!-- New Navigation System --> <!-- New Navigation System -->
<DashboardHeader <DashboardHeader
v-if="authStore.isAuthenticated" v-if="authStore.isAuthenticated"
:menu-open="menuOpen"
@menu-toggle="handleMenuToggle" @menu-toggle="handleMenuToggle"
@company-changed="handleCompanyChanged" @company-changed="handleCompanyChanged"
/> />

View File

@@ -83,13 +83,18 @@ export default {
components: { components: {
CompanySelectorMini, CompanySelectorMini,
}, },
props: {
menuOpen: {
type: Boolean,
default: false,
},
},
emits: ["menu-toggle", "company-changed"], emits: ["menu-toggle", "company-changed"],
setup(props, { emit }) { setup(props, { emit }) {
const router = useRouter(); const router = useRouter();
const companiesStore = useCompanyStore(); const companiesStore = useCompanyStore();
const authStore = useAuthStore(); const authStore = useAuthStore();
const menuOpen = ref(false);
const userMenuOpen = ref(false); const userMenuOpen = ref(false);
const selectedCompany = computed({ const selectedCompany = computed({
@@ -100,8 +105,7 @@ export default {
const currentUser = computed(() => authStore.currentUser); const currentUser = computed(() => authStore.currentUser);
const toggleMenu = () => { const toggleMenu = () => {
menuOpen.value = !menuOpen.value; emit("menu-toggle");
emit("menu-toggle", menuOpen.value);
}; };
const toggleUserMenu = () => { const toggleUserMenu = () => {
@@ -136,7 +140,6 @@ export default {
}; };
return { return {
menuOpen,
userMenuOpen, userMenuOpen,
selectedCompany, selectedCompany,
currentUser, currentUser,

View File

@@ -11,7 +11,7 @@
<nav class="slide-menu" :class="{ open: isOpen }"> <nav class="slide-menu" :class="{ open: isOpen }">
<!-- Navigation Section --> <!-- Navigation Section -->
<div class="menu-section"> <div class="menu-section">
<h3 class="menu-title">Navigation</h3> <h3 class="menu-title">Navigare</h3>
<ul class="menu-list"> <ul class="menu-list">
<li class="menu-item"> <li class="menu-item">
<router-link <router-link
@@ -31,8 +31,8 @@
:class="{ active: $route.name === 'Invoices' }" :class="{ active: $route.name === 'Invoices' }"
@click="closeMenu" @click="closeMenu"
> >
<i class="menu-icon pi pi-file-text"></i> <i class="menu-icon pi pi-file"></i>
<span>Invoices</span> <span>Facturi</span>
</router-link> </router-link>
</li> </li>
<li class="menu-item"> <li class="menu-item">
@@ -43,7 +43,7 @@
@click="closeMenu" @click="closeMenu"
> >
<i class="menu-icon pi pi-money-bill"></i> <i class="menu-icon pi pi-money-bill"></i>
<span>Bank & Cash</span> <span>Casa și Banca</span>
</router-link> </router-link>
</li> </li>
<li class="menu-item"> <li class="menu-item">
@@ -62,7 +62,7 @@
<!-- System Section --> <!-- System Section -->
<div class="menu-section"> <div class="menu-section">
<h3 class="menu-title">System</h3> <h3 class="menu-title">Sistem</h3>
<ul class="menu-list"> <ul class="menu-list">
<li class="menu-item"> <li class="menu-item">
<router-link <router-link
@@ -72,7 +72,7 @@
@click="closeMenu" @click="closeMenu"
> >
<i class="menu-icon pi pi-chart-bar"></i> <i class="menu-icon pi pi-chart-bar"></i>
<span>Cache Statistics</span> <span>Statistici cache</span>
</router-link> </router-link>
</li> </li>
<li class="menu-item"> <li class="menu-item">