Saltearse al contenido

NavGroup

Agrupa una tanda de OrbitNavItem dentro de OrbitSidebar, con un título de sección opcional arriba (typography.overline, oculto entero cuando el riel está colapsado — no solo restyleado, un riel de solo íconos no tiene lugar ni para una línea). title es opcional: omitilo para una fila suelta sin grupo propio (un único ítem de “Ajustes” en el footer del sidebar, por ejemplo) — la única diferencia es exactamente ese título, las filas se ven igual.

Dentro de un OrbitSidebar, selectedId/onSelect/collapsed no hace falta pasarlos — el sidebar los provee automáticamente a cada OrbitNavGroup que tenga dentro (header, contenido o footer), así un riel con varios grupos comparte una sola selección sin repetir las mismas props en cada uno. Pasalos explícitos solo para un grupo con selección propia, separada del resto.

En Kotlin, OrbitNavGroup recibe una lista de datos (OrbitNavGroupItem) en vez de componer cada fila a mano — en web no existe ese objeto: los <orbit-nav-item> van directo como hijos livianos, y el propio <orbit-nav-group> delega el click para sincronizar selected entre ellos.

Uso

<orbit-nav-group title="ESPACIOS" id="group">
<orbit-nav-item value="screens" label="Pantallas" icon="grid" selected></orbit-nav-item>
<orbit-nav-item value="components" label="Componentes" icon="clipboard"></orbit-nav-item>
</orbit-nav-group>
<script>
group.addEventListener('orbit-nav-select', (e) => console.log(e.detail.id));
</script>

Props

PropTipoDefaultDescripción
items (Kotlin)List<OrbitNavGroupItem>—{ id, label, icon?, enabled? }. En web, en cambio, se pasan como hijos <orbit-nav-item>.
title / attr titleString?nullEncabezado de sección; null/vacío para un grupo sin título.
selectedId / attr selectedString?hereda de OrbitSidebarId del ítem seleccionado (compara contra id/value de cada fila).
onSelect / evento orbit-nav-select(String) -> Unithereda de OrbitSidebarSe dispara al elegir una fila.
collapsed / attr collapsedbooleanhereda de OrbitSidebarOculta el título y centra las filas en modo ícono-solo.