Footer

Pie de página con links legales, idioma y copyright

stable v2.1.0

Preview

Componente real del canon, con los mismos props que usa este sitio (destinos de demo). El selector de idioma marca el locale activo con weight 600.

Props

PropTipoNota
locale'es' | 'en'Default 'es'. Marca el idioma activo.
legalHref, legalLabelstringPágina legal del sitio (slug distinto por idioma → el sitio resuelve el href)
socialLinks{ label, href }[]Como texto, no iconos
copyrightstring
esHref, enHrefstringDestinos del language switcher (route mapping por página)
newWindowLabelstringAviso a11y para links externos

Tokens

PropiedadValorToken
TipografíaGeorama 12px / 400--text-footer
Color textosecondary--color-secondary
Borde superior1px solid--color-border
Hovercolor → primary--color-primary
Idioma activoweight 600, color primary--weight-semibold

Layout móvil (<768px)

Los links ocupan la primera fila completa: el invariante es que el set de links del sitio quepa en una línea a 375px (mismo espíritu que la regla de fit del NavPill). El selector de idioma baja a la segunda fila, emparejado con el copyright: el footer sigue siendo dos filas. El wrap queda solo como red de seguridad.

Restricciones

  • Sin links de navegación (NavPill lo maneja).
  • LinkedIn como texto, no icono.
  • Sin logo. Sin theme toggle. Sin formulario.

Decisiones

DecisiónPor qué
Route mapping para language switcherPáginas legales tienen slugs distintos por idioma
LinkedIn como texto, no iconoConsistente con el enfoque tipográfico
Token caption para todo el textoFooter es la jerarquía más baja de la página
Móvil: los links son dueños de la primera fila (2.1)Compartir fila con el selector asumía los labels cortos de elastic; los tres links de teresa saltaban a dos líneas
Móvil: idioma junto al copyright (2.1)El footer se queda en dos filas en vez de tres; ambos son cortos y de ancho fijo