From f886498bacba614542030f8096a39bd987b6d3e7 Mon Sep 17 00:00:00 2001 From: acazares Date: Tue, 4 Nov 2025 16:56:51 -0600 Subject: [PATCH] feat(nav-user): add language toggle functionality to user menu --- .../src/lib/components/sidebar/nav-user.svelte | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/frontend/src/lib/components/sidebar/nav-user.svelte b/frontend/src/lib/components/sidebar/nav-user.svelte index 5ee9452b..a29971cb 100644 --- a/frontend/src/lib/components/sidebar/nav-user.svelte +++ b/frontend/src/lib/components/sidebar/nav-user.svelte @@ -9,14 +9,26 @@ import CreditCardIcon from "@lucide/svelte/icons/credit-card"; import LogOutIcon from "@lucide/svelte/icons/log-out"; import SparklesIcon from "@lucide/svelte/icons/sparkles"; + import LanguagesIcon from "@lucide/svelte/icons/languages"; import { logout } from "$lib/auth"; + import { setLocale, locales } from "$lib/paraglide/runtime"; + import { page } from "$app/state"; let { user }: { user: { name: string; email: string; avatar: string } } = $props(); const sidebar = useSidebar(); + // Estado reactivo del idioma actual + let currentLocale = $derived(page.data.locale || 'en'); + async function handleLogout() { await logout(); } + + function toggleLanguage() { + // Alternar entre 'en' y 'es' + const newLocale = currentLocale === 'en' ? 'es' : 'en'; + setLocale(newLocale); + } @@ -82,6 +94,11 @@ + + + Language: {currentLocale.toUpperCase()} + + Log out