vaiperui

components / list

List

Semantic list of items with title, description, leading and trailing elements.

How to use

`List` renders a `<ul>` (`divided` draws lines between items); `ListItem` takes `title`, `description`, `leading` (e.g. an Avatar), `trailing` (e.g. a Badge or button) and extra `children`. The list is not interactive: put a link or button inside `title` or `trailing`.

preview
  • Camila Souza
    Product designer
    Active
  • Yuki Tanaka
    Engineer
    Pending
List.tsx
import { List, ListItem, Avatar, Badge } from "vaiperui";
<List divided>
<ListItem
leading={<Avatar name="Camila Souza" />}
title="Camila Souza"
description="Product designer"
trailing={<Badge status="success">Active</Badge>}
/>
</List>

Divided

preview
  • Camila Souza
    Designer
  • Yuki Tanaka
    Engineer
divided
divided.tsx
<List divided>
<ListItem title="Camila Souza" description="Designer" />
<ListItem title="Yuki Tanaka" description="Engineer" />
</List>

Props

PropValuesDefaultDescription
dividedbooleanfalseLine between items (List)
titleReactNoderequiredItem heading (ListItem)
descriptionReactNodenoneSupporting text under the title
leadingReactNodenoneElement before the text
trailingReactNodenoneElement at the end of the row
(native)ul / linoneEvery native prop of the element, className, ref, etc.