What a person has kept for a second look.
The empty state invites rather than reports: "Nothing on it yet. Add anything worth a second look." An empty panel saying "No items" tells somebody the feature is not working.
Each remove button names what it removes, so a column of X buttons is not a row of identical unlabelled controls to a screen reader.
import { Shortlist } from '@redrob-labs/ui';
| Prop | Type | Notes |
|---|---|---|
items |
ShortlistItem[] |
|
title |
React.ReactNode |
|
limit |
number |
A cap, shown as "3 of 5". |
empty |
React.ReactNode |
|
actions |
React.ReactNode |
|
className |
string |
|
onRemove |
(item: ShortlistItem, index: number) => void |