Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: mark channel unread #2238

Merged
merged 44 commits into from
Feb 2, 2024
Merged

feat: mark channel unread #2238

merged 44 commits into from
Feb 2, 2024

Conversation

MartinCupela
Copy link
Contributor

@MartinCupela MartinCupela commented Jan 11, 2024

🎯 Goal

Support the following:

  1. Show option to mark message unread in a message actions box only for foreign non-thread read messages if the user has read-events permission
  2. Allow to show success notification upon marking a message unread & show a default / custom error notification for the same action
  3. Reflect the unread count upon receiving notification.mark_unread in ChannelPreview
  4. Reflect the number of unread messages from channel state in ScrollToBottomButton
  5. Show UnreadMessagesSeparator before the message with first_unread_message_id
  6. Show UnreadMessagesNotification when scrolled below the UnreadMessagesSeparator
  7. By default mark channel read when:
    a. when ChannelPreview is clicked upon returning already seen unread channel
    b. when UnreadMessagesNotification button is clicked
  8. Allow to customize when a channel is marked read
    a. when Channel is mounted
    b. when MessageList / VirtualizedMessageList is scrolled to the bottom
    c. when ChannelPreview is clicked upon leaving active unread channel
    d. when UnreadMessagesNotification button is clicked
  9. Throttle channel.markRead() calls
  10. Document and test the changes
  11. Upgreade @stream-io/stream-chat-css
  12. Upgrade stream-chat-js

Tech debt:

  1. The SDK shows Mark as unread option for messages older than last 100 channel messages

Todo

  1. Fix: If Thread uses MessageList it reports the list to be scrolled to the bottom despite being scrolled away from bottom

Depends on:

🛠 Implementation details

  • The logic for rendering UnreadMessagesNotification is different in:
  1. MessageList - the IntersectionObserver observes, whether UnreadMessagesSeparator is visible in the message list container (works only with theme v2)
  2. VirtualizedMessageList - the Virtuoso component is provided itemsRender handler. This handler is invoked every time the rendered items set is changed - when scrolling through the list. The handler invokes function that controls the state of showing / not showing the UnreadMessagesNotification. The notification is shown, when there are unread messages and the first message rendered is created later than the last read message. The action is throttled.
  • The ScrollToBottomButton will no longer try to show unread count for thread as the back-end does not support unread counts for threads.

🎨 UI Changes

ML demo

ml_mark_unread.webm

VML demo

vml_mark_unread.webm

@MartinCupela MartinCupela marked this pull request as ready for review January 18, 2024 17:32
# Conflicts:
#	src/components/Channel/Channel.tsx
#	src/components/MessageList/MessageList.tsx
#	src/components/MessageList/__tests__/MessageList.test.js
#	src/components/MessageList/hooks/MessageList/useMessageListElements.tsx
#	src/i18n/de.json
#	src/i18n/en.json
#	src/i18n/es.json
#	src/i18n/fr.json
#	src/i18n/hi.json
#	src/i18n/it.json
#	src/i18n/ja.json
#	src/i18n/ko.json
#	src/i18n/nl.json
#	src/i18n/pt.json
#	src/i18n/ru.json
Copy link

codecov bot commented Feb 1, 2024

Codecov Report

Attention: 36 lines in your changes are missing coverage. Please review.

Comparison is base (0ebdbc6) 84.29% compared to head (a4bcfc2) 84.67%.

Files Patch % Lines
src/components/Channel/Channel.tsx 84.31% 8 Missing ⚠️
...s/MessageList/VirtualizedMessageListComponents.tsx 65.00% 6 Missing and 1 partial ⚠️
.../components/MessageList/VirtualizedMessageList.tsx 80.76% 3 Missing and 2 partials ⚠️
...hooks/MessageList/useUnreadMessagesNotification.ts 87.87% 4 Missing ⚠️
...ponents/ChannelPreview/ChannelPreviewMessenger.tsx 92.50% 2 Missing and 1 partial ⚠️
src/components/Message/Message.tsx 77.77% 0 Missing and 2 partials ⚠️
...ponents/MessageList/UnreadMessagesNotification.tsx 81.81% 1 Missing and 1 partial ⚠️
src/components/MessageList/renderMessages.tsx 84.61% 0 Missing and 2 partials ⚠️
src/components/ChannelPreview/ChannelPreview.tsx 90.00% 1 Missing ⚠️
...c/components/Message/hooks/useMarkUnreadHandler.ts 95.65% 1 Missing ⚠️
... and 1 more
Additional details and impacted files
@@            Coverage Diff             @@
##           master    #2238      +/-   ##
==========================================
+ Coverage   84.29%   84.67%   +0.38%     
==========================================
  Files         318      328      +10     
  Lines        7213     7451     +238     
  Branches     2037     1983      -54     
==========================================
+ Hits         6080     6309     +229     
- Misses        798      968     +170     
+ Partials      335      174     -161     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Copy link

github-actions bot commented Feb 1, 2024

Size Change: +27.1 kB (+2%)

Total Size: 1.71 MB

Filename Size Change
./dist/browser.full-bundle.js 684 kB +6.8 kB (+1%)
./dist/browser.full-bundle.min.js 375 kB +4.16 kB (+1%)
./dist/components/Channel/Channel.js 8.94 kB +462 B (+5%) 🔍
./dist/components/ChannelPreview/ChannelPreview.js 1.02 kB +73 B (+8%) 🔍
./dist/components/ChannelPreview/ChannelPreviewMessenger.js 1.46 kB +582 B (+66%) 🆘
./dist/components/Emojis/index.cjs.js 1.7 kB -1 B (0%)
./dist/components/Message/hooks/index.js 146 B +4 B (+3%)
./dist/components/Message/hooks/useUserRole.js 760 B +25 B (+3%)
./dist/components/Message/Message.js 2.28 kB +252 B (+12%) ⚠️
./dist/components/Message/utils.js 2.85 kB +49 B (+2%)
./dist/components/MessageActions/MessageActions.js 1.5 kB +36 B (+2%)
./dist/components/MessageActions/MessageActionsBox.js 1.16 kB -5 B (0%)
./dist/components/MessageList/hooks/MessageList/index.js 126 B +18 B (+17%) ⚠️
./dist/components/MessageList/hooks/MessageList/useMessageListElements.js 685 B +52 B (+8%) 🔍
./dist/components/MessageList/hooks/VirtualizedMessageList/index.js 158 B +17 B (+12%) ⚠️
./dist/components/MessageList/icons.js 622 B +254 B (+69%) 🆘
./dist/components/MessageList/index.js 204 B +19 B (+10%) ⚠️
./dist/components/MessageList/MessageList.js 3.23 kB +291 B (+10%) ⚠️
./dist/components/MessageList/MessageListMainPanel.js 290 B +32 B (+12%) ⚠️
./dist/components/MessageList/MessageListNotifications.js 471 B +16 B (+4%)
./dist/components/MessageList/renderMessages.js 918 B +230 B (+33%) 🚨
./dist/components/MessageList/ScrollToBottomButton.js 459 B -657 B (-59%) 🏆
./dist/components/MessageList/VirtualizedMessageList.js 4.31 kB +416 B (+11%) ⚠️
./dist/components/MessageList/VirtualizedMessageListComponents.js 1.98 kB +354 B (+22%) 🚨
./dist/css/v2/index.css 19.7 kB +743 B (+4%)
./dist/css/v2/index.layout.css 8.25 kB +356 B (+5%) 🔍
./dist/i18n/de.json 2.09 kB +226 B (+12%) ⚠️
./dist/i18n/en.json 1.29 kB +142 B (+12%) ⚠️
./dist/i18n/es.json 2.12 kB +248 B (+13%) ⚠️
./dist/i18n/fr.json 2.14 kB +246 B (+13%) ⚠️
./dist/i18n/hi.json 2.4 kB +263 B (+12%) ⚠️
./dist/i18n/it.json 2.13 kB +256 B (+14%) ⚠️
./dist/i18n/ja.json 2.3 kB +224 B (+11%) ⚠️
./dist/i18n/ko.json 2.24 kB +225 B (+11%) ⚠️
./dist/i18n/nl.json 2.01 kB +217 B (+12%) ⚠️
./dist/i18n/pt.json 2.07 kB +257 B (+14%) ⚠️
./dist/i18n/ru.json 2.57 kB +302 B (+13%) ⚠️
./dist/i18n/tr.json 2.05 kB +232 B (+13%) ⚠️
./dist/icons-17e8f941.js 0 B -44.5 kB (removed) 🏆
./dist/index.cjs.js 287 kB +4.42 kB (+2%)
./dist/components/Message/hooks/useMarkUnreadHandler.js 714 B +714 B (new file) 🆕
./dist/components/MessageList/hooks/MessageList/useUnreadMessagesNotification.js 739 B +739 B (new file) 🆕
./dist/components/MessageList/hooks/useMarkRead.js 534 B +534 B (new file) 🆕
./dist/components/MessageList/hooks/VirtualizedMessageList/useUnreadMessagesNotificationVirtualized.js 609 B +609 B (new file) 🆕
./dist/components/MessageList/UnreadMessagesNotification.js 396 B +396 B (new file) 🆕
./dist/components/MessageList/UnreadMessagesSeparator.js 286 B +286 B (new file) 🆕
./dist/icons-7ead3d97.js 46.4 kB +46.4 kB (new file) 🆕
ℹ️ View Unchanged
Filename Size
./dist/components/Attachment/attachment-sizing.js 1.08 kB
./dist/components/Attachment/Attachment.js 1.04 kB
./dist/components/Attachment/AttachmentActions.js 524 B
./dist/components/Attachment/AttachmentContainer.js 2.13 kB
./dist/components/Attachment/Audio.js 1.64 kB
./dist/components/Attachment/Card.js 1.76 kB
./dist/components/Attachment/DownloadButton.js 259 B
./dist/components/Attachment/FileAttachment.js 555 B
./dist/components/Attachment/FileSizeIndicator.js 240 B
./dist/components/Attachment/hooks/useAudioController.js 653 B
./dist/components/Attachment/icons.js 573 B
./dist/components/Attachment/index.js 109 B
./dist/components/Attachment/UnsupportedAttachment.js 267 B
./dist/components/Attachment/utils.js 1.65 kB
./dist/components/AutoCompleteTextarea/Header.js 332 B
./dist/components/AutoCompleteTextarea/index.js 157 B
./dist/components/AutoCompleteTextarea/Item.js 527 B
./dist/components/AutoCompleteTextarea/List.js 1.52 kB
./dist/components/AutoCompleteTextarea/Textarea.js 6.81 kB
./dist/components/AutoCompleteTextarea/types.js 31 B
./dist/components/AutoCompleteTextarea/utils.js 834 B
./dist/components/Avatar/Avatar.js 740 B
./dist/components/Avatar/index.js 46 B
./dist/components/Channel/channelState.js 1.04 kB
./dist/components/Channel/hooks/useChannelContainerClasses.js 353 B
./dist/components/Channel/hooks/useCreateChannelStateContext.js 1.54 kB
./dist/components/Channel/hooks/useCreateTypingContext.js 235 B
./dist/components/Channel/hooks/useEditMessageHandler.js 252 B
./dist/components/Channel/hooks/useIsMounted.js 168 B
./dist/components/Channel/hooks/useMentionsHandlers.js 422 B
./dist/components/Channel/index.js 117 B
./dist/components/Channel/LoadingChannel.js 360 B
./dist/components/Channel/utils.js 339 B
./dist/components/ChannelHeader/ChannelHeader.js 896 B
./dist/components/ChannelHeader/icons.js 458 B
./dist/components/ChannelHeader/index.js 53 B
./dist/components/ChannelList/ChannelList.js 3.02 kB
./dist/components/ChannelList/ChannelListMessenger.js 448 B
./dist/components/ChannelList/hooks/index.js 196 B
./dist/components/ChannelList/hooks/useChannelDeletedListener.js 454 B
./dist/components/ChannelList/hooks/useChannelHiddenListener.js 450 B
./dist/components/ChannelList/hooks/useChannelTruncatedListener.js 379 B
./dist/components/ChannelList/hooks/useChannelUpdatedListener.js 614 B
./dist/components/ChannelList/hooks/useChannelVisibleListener.js 616 B
./dist/components/ChannelList/hooks/useConnectionRecoveredListener.js 275 B
./dist/components/ChannelList/hooks/useMessageNewListener.js 599 B
./dist/components/ChannelList/hooks/useMobileNavigation.js 276 B
./dist/components/ChannelList/hooks/useNotificationAddedToChannelListener.js 825 B
./dist/components/ChannelList/hooks/useNotificationMessageNewListener.js 702 B
./dist/components/ChannelList/hooks/useNotificationRemovedFromChannelListener.js 411 B
./dist/components/ChannelList/hooks/usePaginatedChannels.js 1.44 kB
./dist/components/ChannelList/hooks/useUserPresenceChangedListener.js 466 B
./dist/components/ChannelList/index.js 78 B
./dist/components/ChannelList/utils.js 314 B
./dist/components/ChannelPreview/hooks/index.js 97 B
./dist/components/ChannelPreview/hooks/useChannelPreviewInfo.js 471 B
./dist/components/ChannelPreview/hooks/useIsChannelMuted.js 319 B
./dist/components/ChannelPreview/hooks/useMessageDeliveryStatus.js 829 B
./dist/components/ChannelPreview/index.js 81 B
./dist/components/ChannelPreview/utils.js 695 B
./dist/components/ChannelSearch/ChannelSearch.js 1.11 kB
./dist/components/ChannelSearch/hooks/useChannelSearch.js 2.26 kB
./dist/components/ChannelSearch/icons.js 701 B
./dist/components/ChannelSearch/index.js 85 B
./dist/components/ChannelSearch/SearchBar.js 1.33 kB
./dist/components/ChannelSearch/SearchInput.js 335 B
./dist/components/ChannelSearch/SearchResults.js 1.58 kB
./dist/components/ChannelSearch/utils.js 89 B
./dist/components/Chat/Chat.js 933 B
./dist/components/Chat/hooks/useChannelsQueryState.js 212 B
./dist/components/Chat/hooks/useChat.js 1.46 kB
./dist/components/Chat/hooks/useCreateChatContext.js 671 B
./dist/components/Chat/hooks/useCustomStyles.js 649 B
./dist/components/Chat/index.js 71 B
./dist/components/ChatAutoComplete/ChatAutoComplete.js 1.25 kB
./dist/components/ChatAutoComplete/index.js 56 B
./dist/components/ChatDown/ChatDown.js 530 B
./dist/components/ChatDown/icons.js 1.26 kB
./dist/components/ChatDown/index.js 48 B
./dist/components/CommandItem/CommandItem.js 265 B
./dist/components/CommandItem/index.js 51 B
./dist/components/DateSeparator/DateSeparator.js 514 B
./dist/components/DateSeparator/index.js 53 B
./dist/components/Emojis/EmojiPicker.js 1.29 kB
./dist/components/Emojis/index.js 51 B
./dist/components/EmoticonItem/EmoticonItem.js 417 B
./dist/components/EmoticonItem/index.js 52 B
./dist/components/EmptyStateIndicator/EmptyStateIndicator.js 458 B
./dist/components/EmptyStateIndicator/icons.js 323 B
./dist/components/EmptyStateIndicator/index.js 59 B
./dist/components/EventComponent/EventComponent.js 831 B
./dist/components/EventComponent/index.js 52 B
./dist/components/Gallery/BaseImage.js 481 B
./dist/components/Gallery/Gallery.js 1.13 kB
./dist/components/Gallery/Image.js 681 B
./dist/components/Gallery/index.js 70 B
./dist/components/Gallery/ModalGallery.js 627 B
./dist/components/index.js 307 B
./dist/components/InfiniteScrollPaginator/index.js 54 B
./dist/components/InfiniteScrollPaginator/InfiniteScroll.js 1.45 kB
./dist/components/Loading/index.js 76 B
./dist/components/Loading/LoadingChannels.js 285 B
./dist/components/Loading/LoadingErrorIndicator.js 366 B
./dist/components/Loading/LoadingIndicator.js 671 B
./dist/components/LoadMore/index.js 68 B
./dist/components/LoadMore/LoadMoreButton.js 565 B
./dist/components/LoadMore/LoadMorePaginator.js 484 B
./dist/components/Message/FixedHeightMessage.js 1.7 kB
./dist/components/Message/hooks/useActionHandler.js 751 B
./dist/components/Message/hooks/useDeleteHandler.js 616 B
./dist/components/Message/hooks/useEditHandler.js 300 B
./dist/components/Message/hooks/useFlagHandler.js 753 B
./dist/components/Message/hooks/useMentionsHandler.js 387 B
./dist/components/Message/hooks/useMuteHandler.js 941 B
./dist/components/Message/hooks/useOpenThreadHandler.js 266 B
./dist/components/Message/hooks/usePinHandler.js 930 B
./dist/components/Message/hooks/useReactionHandler.js 2.16 kB
./dist/components/Message/hooks/useReactionsFetcher.js 788 B
./dist/components/Message/hooks/useRetryHandler.js 343 B
./dist/components/Message/hooks/useUserHandler.js 223 B
./dist/components/Message/icons.js 1.63 kB
./dist/components/Message/index.js 162 B
./dist/components/Message/MessageDeleted.js 374 B
./dist/components/Message/MessageOptions.js 900 B
./dist/components/Message/MessageRepliesCountButton.js 523 B
./dist/components/Message/MessageSimple.js 2.27 kB
./dist/components/Message/MessageStatus.js 1.23 kB
./dist/components/Message/MessageText.js 1.1 kB
./dist/components/Message/MessageTimestamp.js 546 B
./dist/components/Message/QuotedMessage.js 817 B
./dist/components/Message/renderText/componentRenderers/Anchor.js 327 B
./dist/components/Message/renderText/componentRenderers/Emoji.js 173 B
./dist/components/Message/renderText/componentRenderers/index.js 65 B
./dist/components/Message/renderText/componentRenderers/Mention.js 195 B
./dist/components/Message/renderText/index.js 132 B
./dist/components/Message/renderText/regex.js 374 B
./dist/components/Message/renderText/rehypePlugins/emojiMarkdownPlugin.js 252 B
./dist/components/Message/renderText/rehypePlugins/index.js 72 B
./dist/components/Message/renderText/rehypePlugins/mentionsMarkdownPlugin.js 1.04 kB
./dist/components/Message/renderText/remarkPlugins/htmlToTextPlugin.js 178 B
./dist/components/Message/renderText/remarkPlugins/index.js 75 B
./dist/components/Message/renderText/remarkPlugins/keepLineBreaksPlugin.js 531 B
./dist/components/Message/renderText/renderText.js 1.76 kB
./dist/components/Message/renderText/types.js 31 B
./dist/components/Message/types.js 31 B
./dist/components/MessageActions/CustomMessageActionsList.js 346 B
./dist/components/MessageActions/hooks/index.js 66 B
./dist/components/MessageActions/hooks/useMessageActionsBoxPopper.js 517 B
./dist/components/MessageActions/index.js 76 B
./dist/components/MessageInput/AttachmentPreviewList.js 1.25 kB
./dist/components/MessageInput/CooldownTimer.js 377 B
./dist/components/MessageInput/DefaultTriggerProvider.js 442 B
./dist/components/MessageInput/DropzoneProvider.js 548 B
./dist/components/MessageInput/EditMessageForm.js 1.05 kB
./dist/components/MessageInput/hooks/index.js 78 B
./dist/components/MessageInput/hooks/useAttachments.js 1.02 kB
./dist/components/MessageInput/hooks/useCommandTrigger.js 903 B
./dist/components/MessageInput/hooks/useCooldownTimer.js 818 B
./dist/components/MessageInput/hooks/useCreateMessageInputContext.js 1.42 kB
./dist/components/MessageInput/hooks/useEmojiTrigger.js 734 B
./dist/components/MessageInput/hooks/useFileState.js 169 B
./dist/components/MessageInput/hooks/useFileUploads.js 1.27 kB
./dist/components/MessageInput/hooks/useImageUploads.js 1.38 kB
./dist/components/MessageInput/hooks/useLinkPreviews.js 1.41 kB
./dist/components/MessageInput/hooks/useMessageInputState.js 2.74 kB
./dist/components/MessageInput/hooks/useMessageInputText.js 958 B
./dist/components/MessageInput/hooks/usePasteHandler.js 871 B
./dist/components/MessageInput/hooks/useSubmitHandler.js 2.53 kB
./dist/components/MessageInput/hooks/useUserTrigger.js 1.92 kB
./dist/components/MessageInput/hooks/utils.js 1.69 kB
./dist/components/MessageInput/icons.js 2.84 kB
./dist/components/MessageInput/index.js 181 B
./dist/components/MessageInput/LinkPreviewList.js 778 B
./dist/components/MessageInput/MessageInput.js 641 B
./dist/components/MessageInput/MessageInputFlat.js 2.4 kB
./dist/components/MessageInput/MessageInputSmall.js 1.72 kB
./dist/components/MessageInput/QuotedMessagePreview.js 916 B
./dist/components/MessageInput/types.js 387 B
./dist/components/MessageInput/UploadsPreview.js 871 B
./dist/components/MessageList/ConnectionStatus.js 457 B
./dist/components/MessageList/CustomNotification.js 300 B
./dist/components/MessageList/GiphyPreviewMessage.js 197 B
./dist/components/MessageList/hooks/index.js 183 B
./dist/components/MessageList/hooks/MessageList/useEnrichedMessages.js 687 B
./dist/components/MessageList/hooks/MessageList/useMessageListScrollManager.js 960 B
./dist/components/MessageList/hooks/MessageList/useScrollLocationLogic.js 927 B
./dist/components/MessageList/hooks/useLastReadData.js 266 B
./dist/components/MessageList/hooks/VirtualizedMessageList/useGiphyPreview.js 423 B
./dist/components/MessageList/hooks/VirtualizedMessageList/useMessageSetKey.js 388 B
./dist/components/MessageList/hooks/VirtualizedMessageList/useNewMessageNotification.js 691 B
./dist/components/MessageList/hooks/VirtualizedMessageList/usePrependMessagesCount.js 1.31 kB
./dist/components/MessageList/hooks/VirtualizedMessageList/useScrollToBottomOnNewMessage.js 471 B
./dist/components/MessageList/hooks/VirtualizedMessageList/useShouldForceScrollToBottom.js 423 B
./dist/components/MessageList/MessageNotification.js 293 B
./dist/components/MessageList/utils.js 2.79 kB
./dist/components/MML/index.js 43 B
./dist/components/MML/MML.js 535 B
./dist/components/Modal/icons.js 435 B
./dist/components/Modal/index.js 45 B
./dist/components/Modal/Modal.js 776 B
./dist/components/ReactFileUtilities/FileIcon/FileIcon.js 536 B
./dist/components/ReactFileUtilities/FileIcon/FileIconSet/v1.js 2.73 kB
./dist/components/ReactFileUtilities/FileIcon/FileIconSet/v2.js 5.46 kB
./dist/components/ReactFileUtilities/FileIcon/iconMap.js 800 B
./dist/components/ReactFileUtilities/FileIcon/index.js 53 B
./dist/components/ReactFileUtilities/FileIcon/mimeTypes.js 834 B
./dist/components/ReactFileUtilities/FilePreviewer.js 634 B
./dist/components/ReactFileUtilities/FileUploadButton.js 501 B
./dist/components/ReactFileUtilities/IconButton.js 273 B
./dist/components/ReactFileUtilities/icons/AttachmentIcon.js 397 B
./dist/components/ReactFileUtilities/icons/CloseIcon.js 560 B
./dist/components/ReactFileUtilities/icons/FilePlaceholderIcon.js 1.52 kB
./dist/components/ReactFileUtilities/icons/index.js 96 B
./dist/components/ReactFileUtilities/icons/PictureIcon.js 333 B
./dist/components/ReactFileUtilities/icons/RetryIcon.js 325 B
./dist/components/ReactFileUtilities/ImageDropzone.js 1.02 kB
./dist/components/ReactFileUtilities/ImagePreviewer.js 737 B
./dist/components/ReactFileUtilities/ImageUploadButton.js 430 B
./dist/components/ReactFileUtilities/index.js 177 B
./dist/components/ReactFileUtilities/LoadingIndicator.js 307 B
./dist/components/ReactFileUtilities/Thumbnail.js 468 B
./dist/components/ReactFileUtilities/ThumbnailPlaceholder.js 384 B
./dist/components/ReactFileUtilities/types.js 31 B
./dist/components/ReactFileUtilities/UploadButton.js 289 B
./dist/components/ReactFileUtilities/utils.js 1.21 kB
./dist/components/Reactions/hooks/useFetchReactions.js 601 B
./dist/components/Reactions/hooks/useProcessReactions.js 895 B
./dist/components/Reactions/index.js 108 B
./dist/components/Reactions/reactionOptions.js 330 B
./dist/components/Reactions/ReactionSelector.js 1.81 kB
./dist/components/Reactions/ReactionsList.js 960 B
./dist/components/Reactions/ReactionsListModal.js 959 B
./dist/components/Reactions/SimpleReactionsList.js 1.05 kB
./dist/components/Reactions/SpriteImage.js 622 B
./dist/components/Reactions/StreamEmoji.js 340 B
./dist/components/Reactions/types.js 31 B
./dist/components/Reactions/utils/utils.js 300 B
./dist/components/SafeAnchor/index.js 74 B
./dist/components/SafeAnchor/SafeAnchor.js 304 B
./dist/components/Thread/icons.js 370 B
./dist/components/Thread/index.js 71 B
./dist/components/Thread/Thread.js 1.52 kB
./dist/components/Thread/ThreadHead.js 314 B
./dist/components/Thread/ThreadHeader.js 460 B
./dist/components/Thread/ThreadStart.js 283 B
./dist/components/Tooltip/hooks/index.js 61 B
./dist/components/Tooltip/hooks/useEnterLeaveHandlers.js 305 B
./dist/components/Tooltip/index.js 47 B
./dist/components/Tooltip/Tooltip.js 478 B
./dist/components/TypingIndicator/index.js 55 B
./dist/components/TypingIndicator/TypingIndicator.js 1.22 kB
./dist/components/UserItem/index.js 48 B
./dist/components/UserItem/UserItem.js 628 B
./dist/components/Window/index.js 46 B
./dist/components/Window/Window.js 372 B
./dist/constants/limits.js 96 B
./dist/constants/messageTypes.js 99 B
./dist/context/ChannelActionContext.js 588 B
./dist/context/ChannelListContext.js 377 B
./dist/context/ChannelStateContext.js 586 B
./dist/context/ChatContext.js 573 B
./dist/context/ComponentContext.js 579 B
./dist/context/index.js 124 B
./dist/context/MessageContext.js 580 B
./dist/context/MessageInputContext.js 350 B
./dist/context/MessageListContext.js 377 B
./dist/context/TranslationContext.js 783 B
./dist/context/TypingContext.js 581 B
./dist/context/utils/getDisplayName.js 102 B
./dist/css/index.css 26.7 kB
./dist/css/v2/emoji-mart.css 1.84 kB
./dist/css/v2/emoji-replacement.css 299 B
./dist/i18n/index.js 67 B
./dist/i18n/Streami18n.js 5.76 kB
./dist/i18n/translations.js 172 B
./dist/i18n/utils.js 528 B
./dist/index_UMD.js 175 B
./dist/index.js 72 B
./dist/types/types.js 31 B
./dist/utils/browsers.js 156 B
./dist/utils/deprecationWarning.js 317 B
./dist/utils/generateRandomId.js 130 B
./dist/utils/getChannel.js 968 B
./dist/utils/getWholeChar.js 411 B
./dist/utils/index.js 79 B
./dist/version.js 60 B

compressed-size-action

@MartinCupela MartinCupela merged commit 8f87b2b into master Feb 2, 2024
9 of 10 checks passed
@MartinCupela MartinCupela deleted the feat/channel-mark-unread branch February 2, 2024 13:54
github-actions bot pushed a commit that referenced this pull request Feb 2, 2024
## [11.5.0](v11.4.0...v11.5.0) (2024-02-02)

### Features

* mark channel unread ([#2238](#2238)) ([8f87b2b](8f87b2b))
* show full list of reactions in a modal ([#2249](#2249)) ([0ebdbc6](0ebdbc6))
@stream-ci-bot
Copy link

🎉 This PR is included in version 11.5.0 🎉

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
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants