Saltearse al contenido

Avatar

radius.full — el radio pill que Orbit reserva para cápsulas (botón, badge, switch, avatar, nav row). Misma escala control.height.* que OrbitButton/OrbitTextField — un botón, un campo y un avatar siempre alinean en una toolbar. Orbit no depende de ningún cargador de imágenes (Coil, etc.) — en Kotlin painter recibe un Painter de Compose directo, la propia solución de carga de imágenes de quien lo usa se lo provee (misma razón por la que OrbitTooltip/OrbitSlider envuelven Material en vez de reinventar). En web sí es un src directo — un <img> real adentro, el navegador ya sabe cargar URLs sin que Orbit tenga que hacer nada. Sin imagen ni iniciales, cae en un círculo vacío — el catálogo cerrado de íconos no tiene un glyph genérico de “usuario”.

Con iniciales

<orbit-avatar initials="ES"></orbit-avatar>

Con imagen (URL)

<orbit-avatar src="https://i.pravatar.cc/150?img=12"></orbit-avatar>

src es un atributo normal — la etiqueta <img> de adentro carga la URL sola, no hay lógica de Orbit involucrada.

Si tenés ambos, painter/src gana — las iniciales quedan como fallback mientras la imagen carga o si no se pasó ninguna.

Tamaños

Misma escala que OrbitButton/OrbitTextField — nunca un tamaño suelto.

<orbit-avatar initials="ES" size="xs"></orbit-avatar>
<!-- xs | sm | md | lg | xl -->

Props

PropTipoDefaultDescripción
initialsstring?nullIniciales (máximo 2 caracteres, mayúsculas) — se usa si no hay imagen.
painter (Kotlin) / attr src (web)Painter? / string?nullImagen — en web acepta cualquier URL directo; en Kotlin, un Painter que provee tu propia solución de carga de imágenes. Tiene prioridad sobre initials.
sizeOrbitAvatarSize (Kotlin) / "xs" | "sm" | "md" | "lg" | "xl" (web)Md / "md"Tamaño — misma escala que OrbitButton.