Skip to content

Release v3.6.0

Choose a tag to compare

@github-actions github-actions released this 27 Aug 06:55
5d239d9

Summary

A generalized, topic-based chat for @cratis/components: the sidebar, topics and conversation are pure components fed by host data and callbacks, with an optional Arc observable-query binding on top — and the whole chat kit now themes itself from the --cratis-* tokens.

Added

  • Topic-based Chat component family — ChatSidebar (PrimeReact Drawer opening next to the view), ChatTopicList and ChatConversation — with topics and messages handed in as live arrays, a ChatMessage/ChatTopic interface contract the components are generic over, host-side topic auto-naming through onRequestTopicName with a pending placeholder until the name arrives, host-resolved authors with renderAvatar/renderAuthorName overrides, and extensible per-message action descriptors; exported as @cratis/components/Chat (Cratis/Stagehand#52)
  • ChatSidebarForObservableQueries — the sidebar bound to two Cratis Arc observable queries for real-time topics and messages (Cratis/Stagehand#52)
  • @-mention candidates from a host-supplied resolveMentionCandidates provider (sync or async) on the composer and conversation, mentions reported on send, and mentions rendered distinctly in message bodies (Cratis/Stagehand#52)
  • Mention helpers findMentionRanges, extractMentions and mentionSegments, generic over anything with a name (Cratis/Stagehand#52)

Changed

  • Every color in the chat kit — panel, bubbles, composer, mention suggestions, emoji and reaction pickers, typing indicator, failure line — now resolves through the --cratis-* token seam, so the chat follows the host's PrimeReact theme instead of a hardcoded dark palette (Cratis/Stagehand#64)

Fixed

  • Pressing Enter right after picking a mention now sends the message instead of re-picking the same suggestion

  • Region auto-membership events - regions detect items entering and leaving them and publish ItemAddedToRegion/ItemRemovedFromRegion (plus NoteTextChanged and ChatMessageAdded) over the Arc messenger, opt-in and silent without an ArcContext. Merged as #189 and released together with this pull request. (Cratis/Stagehand#49, Cratis/Stagehand#64)