Saltar al contenido
El Muestrario

componente · @solu30/ui-kit/navigation

LanguageSwitcher

Selector de idioma con bandera, que abre su propia lista desde un disparador.

4 sitios de import en 3 de 15 verticales — un archivo que la importa cuenta una vez, monte una instancia o veinte.

  • carlosmartinpavon
  • gestorsalon
  • zentrya

El componente, montado

Cargando el espécimen…

Cómo se usa

import { LanguageSwitcher } from '@solu30/ui-kit/navigation'

Props

6 props declaradas en los tipos de la versión instalada.
PropRequeridaTipoQué hace
languagessíLanguageOption[]—
currentLanguagesístring—
onLanguageChangesí(code: string) => void—
classNameopcionalstring—
compactopcionalbooleanIcon-only trigger (flag only, no shortName/chevron) for collapsed sidebars. Matches the ThemeToggle icon-variant footprint (p-2, rounded-md) so it lines up with other sidebar icon buttons. Dropdown panel is unaffected.
menuRowopcionalbooleanFull-width menu-row trigger (px-2.5 py-2, hover:bg-surface, text-content) matching SidebarUserMenu's item/logout rows — use for `<SidebarUserMenu languageSwitcher={...}>` so the flag/label align to the same left indent as the rest of the panel. Content (flag + shortName + chevron) is unchanged; only trigger padding/colors are normalized.

Ejemplo del paquete

<LanguageSwitcher
  languages={[{ code: 'es', name: 'Español', shortName: 'ES', flag: '🇦🇷' },
              { code: 'en', name: 'English', shortName: 'EN', flag: '🇬🇧' }]}
  currentLanguage={idioma}
  onLanguageChange={setIdioma}
  compact
/>

Del @example del JSDoc de @solu30/ui-kit, sin editar: son 65 de los 541 símbolos. La sangría y los renglones en blanco son los del paquete.