List

2.4.0

Permite organizar varios textos relacionados en formato de lista, con bullet point o numerador.

  • Enumerar requisitos o condiciones: mostrar varias condiciones que aplican a un mismo proceso, sin que exista una relación de orden entre ellas. Ej.: los requisitos de un proceso de verificación, las condiciones para acceder a un plan.
  • Detallar pasos que se siguen en un orden específico: usar la variante numerada (as="ol") cuando completar la tarea depende de seguir los ítems en secuencia. Ej.: los pasos de instalación de una funcionalidad.
  • Explicar las consecuencias de una acción antes de confirmarla: enumerar qué va a pasar si la persona continúa, sobre todo antes de una acción destructiva o irreversible. Ej.: qué ocurre con las suscripciones activas al eliminar un plan.
  • Presentar los puntos de una respuesta extensa: dividir en ítems cortos una explicación que de otra forma quedaría como un párrafo largo. Ej.: los puntos de una respuesta en una sección de preguntas frecuentes.
  • Mostrar ítems seleccionables o accionables: el List es puramente presentacional y no maneja foco, selección ni interacción. En su lugar, usar Interactive List, que sí soporta checkbox, radio, toggle o botón por ítem.
  • Mostrar registros con información estructurada: cuando cada ítem tiene varios datos asociados (miniatura, estado, link de detalle), un List de texto no alcanza para representarlos con claridad. En su lugar, usar Data List.
  • Construir una navegación: el List no está pensado para agrupar links de navegación ni acciones de un menú. En su lugar, usar Menu.
  • Mostrar un solo ítem: una lista de un elemento no comunica ninguna enumeración y agrega marcado innecesario. En su lugar, mostrar el texto directamente con Text.
  • Primer ítem de la lista
  • Segundo ítem de la lista
1
2
  1. Marker: bullet o numerador que antecede a cada ítem, generado automáticamente por el navegador según el valor del prop as. No es texto editable ni acepta contenido propio.
  2. Text: contenido de cada ítem, ubicado dentro de un List.Item. Puede incluir texto simple o elementos inline como Link.
  • Primer requisito
  • Segundo requisito

Unordered: marca cada ítem con un bullet point, sin indicar una relación de orden entre ellos. Valor por defecto (as="ul"); cubre la mayoría de los casos. Ej.: requisitos de una verificación, puntos de una respuesta de FAQ.

  1. Completar los datos de la empresa
  2. Cargar la documentación solicitada

Ordered: numera cada ítem según su posición, para comunicar que el orden importa para completar la tarea. Usar solo cuando la secuencia es real. Ej.: pasos de instalación, instrucciones de configuración.

El List aparece dentro de superficies como Card, Modal o Alert, para acompañar mensajes de ayuda, condiciones antes de confirmar una acción, checklists de un proceso o los puntos de una respuesta. Al ser un componente inline, hereda el ancho disponible del contenedor que lo envuelve.

Si continuás, esto es lo que va a pasar:

  • Las suscripciones activas se cancelan de forma inmediata
  • Los datos del plan no se pueden recuperar

Requisitos para verificar la cuenta

  • Documento de identidad vigente
  • Comprobante de domicilio
  • Datos bancarios de la empresa

Usar oraciones breves y del mismo tipo semántico en cada ítem, para que la lista se lea de forma pareja.

Requisitos para verificar la cuenta

  • Documento de identidad vigente, emitido por un organismo oficial, sin tachaduras ni enmiendas, con una vigencia mínima de seis meses

  • Domicilio

Evitar mezclar ítems de distinta naturaleza en la misma lista, como una advertencia extensa junto a un dato suelto.

Configurar el dominio

  1. Ingresar al panel del proveedor
  2. Agregar los registros DNS

Usar as='ol' solo cuando el orden de los ítems importa para completar la tarea.

Beneficios del plan

  1. Envío gratis
  2. Soporte prioritario

Evitar as='ol' cuando los ítems no tienen una secuencia real: sugiere un orden que no existe.

  • Semántica nativa de lista: el componente renderiza un <ul> o un <ol> real según el prop as, con cada List.Item como un <li>. Los lectores de pantalla anuncian el grupo como una lista y su cantidad de ítems, sin necesidad de agregar role="list" ni atributos ARIA adicionales.
  • Elegir as según el significado real: usar as="ol" solo cuando el orden importa para completar la tarea; usar as="ul" (valor por defecto) para el resto, así la tecnología de asistencia no comunica una secuencia que no existe.
  • No anidar contenido interactivo: al ser un componente presentacional, no maneja foco ni estados de interacción. Si un ítem necesita ser seleccionable o accionable, usar Interactive List, que sí gestiona el foco y los roles correspondientes.

Instalá el componente vía terminal.

npm install @nimbus-ds/components
import React from "react";
import { List } from "@nimbus-ds/components";

const Example: React.FC = () => (
  <List as="ul">
    <List.Item>Documento de identidad vigente</List.Item>
    <List.Item>Comprobante de domicilio</List.Item>
    <List.Item>Datos bancarios de la empresa</List.Item>
  </List>
);

export default Example;

Las propiedades adicionales se pasan al elemento renderizado (<ul> u <ol>, según el prop as). Consultá la documentación del elemento ul para ver la lista de atributos aceptados.

  • Interactive List — Para listas de ítems seleccionables o accionables (checkbox, radio, toggle, botón).
  • Data List — Para listas de registros con información estructurada (miniatura, tag de estado, link de detalle).
  • Menu — Para agrupar links de navegación o acciones.
  • Text — Para mostrar un texto simple, sin necesidad de enumeración.

List

NameTypeDefaultDescription

children*

React.ReactNode

The content of the list.

as

'ol'
'ul'

'ul'

Determines the type of html list that will be rendered

padding

'0-5'
'1'
'2'
'3'
'4'
'5'
'6'
'7'
'8'

'6'

The padding of the list.

List.Item

NameTypeDefaultDescription

children*

React.ReactNode

The content of the list item.

List.Skeleton

NameTypeDefaultDescription

children*

React.ReactNode

The content of the list skeleton.

data-testid

string

This is an attribute used to identify a DOM node for testing purposes.

List.SkeletonItem

NameTypeDefaultDescription

width

string

Width of the skeleton. Useful when the skeleton is inside an inline element with no width of its own.

height

string

Height of the skeleton. Useful when you don't want to adapt the skeleton to a text element but for instance a card.

data-testid

string

This is an attribute used to identify a DOM node for testing purposes.

Ayudanos a mejorar la documentación

¿Encontraste un problema o tenés una sugerencia? Contanos.