Widgets/Chat/chat_panel library

Classes

ChatBubble
One message: the user's on the right as plain text, every other on the left as Markdown.
ChatEntry
A message in the list; streaming while its text still grows.
ChatFigures
The speed figures of one finished answer.
ChatFiguresLine
The figures under a finished answer, and why it ended when that was not its own stop.
ChatInput
The message field: Enter sends, Shift+Enter breaks the line; while an answer runs the button stops it.
ChatMessageList
The conversation, newest at the bottom; answers render as Markdown and keep the end in view while they grow.
ChatPanel
The conversation above its input; the caller owns the messages and the backend.

Enums

ChatFinish
Why an answer ended, as the text contract reports it.
ChatRole
One turn of a conversation as the chat widgets show it; the family's text contract names the roles.