List item

Composite Data display draft Gen UI part

One row: leading slot, headline, supporting line, trailing slot.

Examples

HTML and CSS

Framework-free reference. Styles live in system/components/list.css and read only tokens. Wrap markup in .v-root.

Rendered markup of the anatomy example

Props and slots

The component API. Gen UI JSON uses these names, and the Flutter widget should mirror them.

Props

PropValuesDefault
headline *string
supportingstring
overlinestring
leadingpart
trailingpart
variantplain | boxed | tinted | filled | dashed | raisedplain
selectedboolean
doneboolean
meternumber
sizemd | lgmd
actionstring. Action name, e.g. "plan.open" or "pay.share". The part before the dot is the action type.
payloadobject

* required.

Slot rules

leading: Icon, Avatar, AvatarStack, Image, Checkbox, Radio, Time. Time is allowed in stacked format for schedule rows.

trailing: Text, Amount, Time, Badge, Button, Toggle, Checkbox, Chip, Icon, Avatar, AvatarStack. Button must be icon, text, or a small secondary or tonal button (Request, Invite).

In Gen UI

How VelioBot uses this part. The bot returns JSON; the validator checks it; the renderer draws it.

JSON node

Every node may also carry id, grow, attribution, privateOnly and fallbackText.

Rules that name this part

listitem-leading List item leading: Icon, Avatar, Avatar stack, Image, Checkbox, Radio (and Time in stacked format).

listitem-trailing List item trailing: Text, Amount, Time, Badge, an icon, text or small secondary/tonal Button, Toggle, Checkbox, Chip, Icon, Avatar.

Usage in recipes

16 of the original cards use it. Needed for V1. Priority table

Bot functions: Bill split and payments, Bookings, Calendar and itinerary, Community and PopTonight picks, Email connect, Friend catchups, Group plans, Learn from chats and posts, Meet new people, Occasions and events, Onboarding and profile, Plan capture, Plan day and live ETA, Suggestions, Trips, Video calls with notes, Voice calls with notes.