Catalog Chat

<.reaction_picker>

ConnieUI.Chat

HEEx
<ConnieUI.Chat.reaction_picker palette={@palette} value={%{"message-id" => 1}} id="catalog-chat-reactions" />

Controls

:string
:string

Set by the example

palette target value

Docs

The reaction control: a fixed row of reactions, and nothing else. A closed set rather than a picker over the whole of Unicode. Ten reactions that each mean something specific to reviewing a document beat three thousand that mean anything, and the difference is not only editorial: the full picker cost a dependency, an emoji dataset served at runtime, an IndexedDB requirement that Firefox private browsing does not meet, and a shadow root whose insides could only be reached through the handful of CSS variables it chose to expose. Each reaction carries a label, because a glyph is not self-explanatory: agreeing with a suggestion and marking something done are different acts, and the row only reads that way if it says so.
Attribute Type Default Description
id * :string
palette * :list
`%{emoji:, name:}` entries, in order
target :any nil
event :string "toggle_reaction"
value :map %{}
extra phx-value payload, e.g. the message id