Skip to content

fix: post-review MessageReactionsDetail adjustments#3082

Merged
arnautov-anton merged 1 commit intomasterfrom
chore/message-reactions-detail-adjustments
Mar 31, 2026
Merged

fix: post-review MessageReactionsDetail adjustments#3082
arnautov-anton merged 1 commit intomasterfrom
chore/message-reactions-detail-adjustments

Conversation

@arnautov-anton
Copy link
Copy Markdown
Contributor

Breaking Changes

Removed deprecated sortReactionDetails prop and ReactionDetailsComparator type

The sortReactionDetails prop has been removed from the following components and contexts:

  • MessageProps (and by extension Message component)
  • MessageContextValue (and by extension MessageContext)
  • MessageReactionsProps (and by extension MessageReactions component)
  • MessageReactionsDetailProps (and by extension MessageReactionsDetail component)
  • MessageListProps (and by extension MessageList component)
  • VirtualizedMessageListProps (and by extension VirtualizedMessageList component)

The ReactionDetailsComparator type export has been removed from src/components/Reactions/types.ts.

Migration: Replace all usages of sortReactionDetails with the reactionDetailsSort prop, which accepts a ReactionSort object (server-side sort) instead of a client-side comparator function.

Removed deprecated reaction_counts prop from MessageReactionsProps

The reaction_counts prop on MessageReactions has been removed. It was previously ignored at runtime.

Migration: Use reaction_groups instead, which provides richer per-reaction-type summary data (including count).

Removed deprecated reactionOptions prop from MessageReactionsProps

The reactionOptions prop on MessageReactions has been removed. The component now reads reactionOptions exclusively from ComponentContext.

Migration: Pass reactionOptions via <WithComponents overrides={{ reactionOptions }}>...</WithComponents> instead of directly on <MessageReactions>.

UseProcessReactionsParams no longer accepts reaction_counts or reactionOptions

The UseProcessReactionsParams type (used by the useProcessReactions hook) no longer includes reaction_counts or reactionOptions fields, consistent with the prop removals above.

New Features

capLimit prop on MessageReactions

A new optional capLimit prop allows configuring how many reaction types are displayed before overflow in each visual style:

capLimit?: {
  clustered?: number; // default: 5
  segmented?: number; // default: 4
};

Previously, only the segmented style (in top position) capped reactions at a hardcoded limit of 4. Now the clustered style also caps displayed reaction types (default: 5), and both limits are configurable.

reactionGroups added to useProcessReactions return value

The useProcessReactions hook now returns reactionGroups (the resolved Record<string, ReactionGroupResponse> | undefined) alongside the existing return fields.

reactionGroups prop on MessageReactionsDetail

MessageReactionsDetail now accepts a reactionGroups prop used to determine reaction counts when removing a reaction. This enables the component to switch to the "all reactions" view when the last reaction of a given type is removed, instead of attempting to refetch an empty list.

UseProcessReactionsParams type is now exported

The UseProcessReactionsParams type is now exported from src/components/Reactions/hooks/useProcessReactions.tsx, making it available for consumers who build custom reaction processing logic.

@github-actions
Copy link
Copy Markdown

Size Change: +119 B (+0.02%)

Total Size: 614 kB

📦 View Changed
Filename Size Change
dist/cjs/index.js 237 kB +61 B (+0.03%)
dist/css/index.css 47.3 kB -4 B (-0.01%)
dist/es/index.mjs 235 kB +62 B (+0.03%)
ℹ️ View Unchanged
Filename Size
dist/cjs/audioProcessing.js 1.32 kB
dist/cjs/emojis.js 2.96 kB
dist/cjs/mp3-encoder.js 1.27 kB
dist/cjs/WithAudioPlayback.js 42.1 kB
dist/css/emoji-replacement.css 456 B
dist/es/audioProcessing.mjs 1.31 kB
dist/es/emojis.mjs 2.47 kB
dist/es/mp3-encoder.mjs 756 B
dist/es/WithAudioPlayback.mjs 42 kB

compressed-size-action

@arnautov-anton arnautov-anton merged commit a82bdcb into master Mar 31, 2026
8 checks passed
@arnautov-anton arnautov-anton deleted the chore/message-reactions-detail-adjustments branch March 31, 2026 12:13
github-actions bot pushed a commit that referenced this pull request Mar 31, 2026
## [14.0.0-beta.5](v14.0.0-beta.4...v14.0.0-beta.5) (2026-03-31)

### Bug Fixes

* assorted UI/UX fixes (Giphy, polls, dialogs, composer, headers) ([#3081](#3081)) ([6c06e04](6c06e04))
* close CSS gaps, fix ChannelList dialog portal, and clean up icons ([#3079](#3079)) ([a47981f](a47981f))
* **Icons:** sync icon catalog with refreshed Line SVGs ([#3080](#3080)) ([9472f7b](9472f7b))
* **MessageList:** set width on message list scroll container ([#3077](#3077)) ([3f09362](3f09362))
* post-review `MessageReactionsDetail` adjustments ([#3082](#3082)) ([a82bdcb](a82bdcb))
* use link icon for link-type attachments ([#3083](#3083)) ([241209e](241209e))

### Features

* **examples:** add RTL direction toggle to vite example app ([#3084](#3084)) ([887a326](887a326))
* **examples:** refresh react tutorial app for v14 ([#3078](#3078)) ([86ada37](86ada37))
@stream-ci-bot
Copy link
Copy Markdown

🎉 This PR is included in version 14.0.0-beta.5 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants