January 28, 2025
StreamChat
✅ Added
- Expose
Event.name
to easily check which event it is #3569 - Add support for transforming Messages, Channels and Members #3564
- Add
ChatClientConfig.modelsTransformer
- Add
ChatMessage.replacing()
- Add
ChatChannel.replacing()
- Add
ChatChannelMember.replacing()
- Add
🐞 Fixed
- Calling async
connectUser()
methods can sometimes throwCurrentUserDoesNotExist()
unexpectedly #3565 - Fix creating controllers from background threads leading to rare crashes #3566
- Fix hard deleted message events not being reported in
EventsController
#3569 - Fix hard deleting a parent message not deleting its replies #3569
StreamChatUI
✅ Added
- Add a simpler way to customize header and footer views in the Message List #3567
- Add
ChatMessageListVC.headerView
- Add
ChatMessageListVC.footerView
- Add
- Make it easier to provide state handling when loading more messages #3567
- Add
ChatChannelVC.loadPreviousMessages()
+ChatChannelVC.didFinishLoadingPreviousMessages(error:)
- Add
ChatChannelVC.loadNextMessages()
+ChatChannelVC.didFinishLoadingNextMessages(error:)
- Add
ChatThreadVC.loadPreviousReplies()
+ChatThreadVC.didFinishLoadingPreviousReplies(error:)
- Add
ChatThreadVC.loadNextReplies()
+ChatThreadVC.didFinishLoadingNextReplies(error:)
- Add
🐞 Fixed
- Fix thread reply action shown when inside a Thread #3561
- Fix reaction author's view with shrinked reaction images in iOS 18 #3568
- Fix missing final attributes for supplementary views exception #3570
- Fix duplicated
didReceiveEvent
insideChatThreadVC
#3569
🔄 Changed
- Deprecates
ChatThreadVC.channelEventsController
#3569