Sonarist project

Sonarist / Design system

Documentation v1.0.0 · Work in progress · UI prototype with separate server foundations

Design system contents

Components

Multi-address recipient field

Collect To, Cc and Bcc recipients as removable chips with searchable known/custom addresses.

On this page

Purpose and composition

Collect To, Cc and Bcc recipients as removable chips with searchable known/custom addresses.

Use with independent arrays for To/Cc/Bcc; never combine them into a generic contact list.

Anatomy

Anatomy
PartResponsibility
CategoryTo/Cc/Bcc label
ChipsName and named remove action
QueryCombobox input
PopupUp to eight matching options

Configuration and variants

Configuration and variants
Input / variantContract
values/onChangeControlled EmailAddressOption array
allowCustomtrue default
optionsKnown records; selected email addresses excluded
deduplicationLowercase email set when adding

States and feedback

States and feedback
StateVisible / behavioral result
EmptySearch or enter an email placeholder
SelectedChips wrap inside available width
SearchMatching options or complete-address guidance
CustomValid unknown address becomes one-off recipient

Interaction and responsive behavior

  • Enter chooses the first visible option.
  • Backspace with an empty query removes last recipient.
  • Escape clears query and closes.
  • Chip remove filters matching email string.

Accessibility contract

  • Combobox has To recipients-style label.
  • Remove action names the email.
  • Arrow selection is absent; listbox options all have aria-selected=false.

Known implementation limits

Mixed-case caller data needs normalization because add uses case-insensitive deduplication while chip removal uses exact equality.

Composition example

<MultiEmailAddressField label="To" values={to} options={people} onChange={setTo} allowCustom />

Source references

Source references
FileResponsibility
components/ui/multi-email-address-field.tsxMultiEmailAddressField

Examples from the app

Actual Sonarist components with fictional conversations, people, example.com addresses and simulated operational states. Captured at 2× resolution or higher. Select an image to inspect it full size.

Recipients · Component detail · Light · Desktop · 1792 × 832 px
Recipients · Component detail · Light · Desktop · Results · 988 × 266 px
Recipients · Component detail · Light · Desktop · Selected · 1792 × 832 px

Source audit: 2026-10-08 · Revision 10f45d1377b5 · Documentation v1.0.0