Skip to content

Releases: GetStream/stream-chat-flutter

3.5.0

02 Mar 08:44
18740a6
Compare
Choose a tag to compare

What's Changed

  • test(llc): fix markAllRead test by @xsahil03x in #899
  • build(ui): minor xcode updates to run example on macos by @GroovinChip in #900
  • fix(ui): fix unban command not working in MessageInput. by @xsahil03x in #901
  • fix(llc): thread message reactions not updated by @bstolinski in #890
  • feat(llc): Exposed score as a param for sendReaction function in client & channel by @ayush221b in #902
  • fix(llc): add type check in auth_interceptor.dart by @xsahil03x in #904
  • feat(llc): add support for partialUserUpdate endpoint. by @xsahil03x in #906
  • fix(ui): scrollToBottom not respecting false value in MessageListView by @HayesGordon in #907
  • fix(ui): update chewie to newest version by @S-ecki in #905
  • fix(ui): Clicking on Avatar in ChannelPreview should go to Channel route by default by @ayush221b in #916
  • perf(ui): improve full screen media animation by @HayesGordon in #911
  • fix(llc): pinnedMessages inconsistency by @xsahil03x in #910
  • fix(llc): decrease parent message reply count only once by @bstolinski in #891
  • chore(llc, core, ui): bump versions to 3.5.0 by @xsahil03x in #936

New Contributors

Full Changelogs:
stream_chat
stream_chat_flutter_core
stream_chat_flutter

3.4.0

03 Feb 15:09
ca4cc3c
Compare
Choose a tag to compare

What's Changed

  • ci(repo): fix melos bs for transitive deps by @xsahil03x in #798
  • fix(llc): totalUnreadCount is not updating when app is resumed from background mode by @xsahil03x in #801
  • fix(llc): fix retry queue mechanism by @imtoori in #809
  • fix(core): update connectivity dep by @deven98 in #813
  • chore(llc,core,ui): 3.3.1 by @imtoori in #810
  • feat(llc): Add enrichUrl endpoint. by @xsahil03x in #824
  • feat(ui): added autoplay to videos by @deven98 in #832
  • fix(ui): media download by @imtoori in #830
  • fix(ui): fixed svgs by @deven98 in #840
  • fix(llc): fixed unread count after member removed by @deven98 in #843
  • fix(core): channels order by @imtoori in #831
  • chore(repo): add missed trailing commas by @dkrutskikh in #849
  • feat(llc): deprecate location in favor of new edge server. by @xsahil03x in #864
  • chore(repo): make comments follow dart guidelines and fix typos by @developerjamiu in #863
  • fix(localization): fix japanese translations by @koishi in #872
  • feat(persistence): Use hard-coded drift versions. by @xsahil03x in #867
  • fix(core): fixed bad state on calling streamController.add by @xsahil03x in #875
  • fix(ui): fix cast error while compressing video. by @xsahil03x in #874
  • fix(llc): include message.user while saving users in persistence. by @xsahil03x in #877
  • fix(llc): thread message deletion by @deven98 in #876
  • feat(llc): Add queryBannedUsers endpoint. by @xsahil03x in #880
  • fix(llc): fix ownReactions population by @imtoori in #873
  • feat(localization): added support for Portuguese language by @santiagogarcia97 in #858
  • chore(ui): update flutter svg by @SpencerC in #859
  • fix(llc): avoid invalid url by @jiahan5 in #829
  • fix(llc): fix ChannelState copyWith with respect to pinnedMessages default value. by @xsahil03x in #883
  • chore(llc,core,ui,persistence,localizations): 3.4.0 by @imtoori in #884

New Contributors

Full Changelogs:
stream_chat
stream_chat_flutter_core
stream_chat_flutter
stream_chat_localizations
stream_chat_persistence

3.3.0

29 Nov 16:56
Compare
Choose a tag to compare

stream_chat

3.3.0

✅ Added

  • Extra properties added to PaginationParams to aid in fetching messages.
  • Added hard delete functionality.

🐞 Fixed

  • closeConnection() now uses normalClosure status when closing websocket.
  • Fixed local unread count indicator increasing for thread replies.
  • Fixed user presence indicator not updating correctly.
  • ChannelEvent.membersCount defaults to 0 avoiding parsing errors due to missing members_count field.

stream_chat_flutter_core

3.3.0

  • Updated stream_chat dependency to 3.3.0.

stream_chat_flutter

3.3.0

✅ Added

  • MessageListView now allows more better control over spacing after messages using spacingWidgetBuilder.
  • StreamChannel can now fetch messages around a message ID with the queryAroundMessage call.
  • Added MessageListView.keyboardDismissBehavior property.

🐞 Fixed

  • [[#766]]AttachmentActionsModal now has customisation options for actions.
  • Fixed MessageWidget null errors associated with channel.memberCount.
  • Fixed adding attachments on web.
  • [#767]: Fix MessageInput focus behaviour when sending messages.
  • Fixed user presence indicator not updating correctly.
  • Do not use withData: true in FilePicker calls.
  • Fixed read indicator not updating correctly in specific situations.

3.2.0

29 Oct 14:44
Compare
Choose a tag to compare

stream_chat

3.2.0

🐞 Fixed

  • markAllRead() now updates local channel states.
  • [#744] Fixed unread count not updating correctly

stream_chat_flutter_core

3.2.0

  • Updated stream_chat dependency to 3.2.0.

stream_chat_flutter

3.2.0

  • Updated Dart SDK constraints to >=2.14.0 <3.0.0
  • Updated stream_chat_flutter_core dependency to 3.2.0.

🐞 Fixed

  • Fixed message highlight animation alignment in MessageListView
  • [#491]: Fix MediaListView showing media in wrong order.
  • Fixed MessageListView initialIndex not working in some cases.
  • Improved MessageListView rendering in case of reordering.
  • Fix image thumbnail generation when using Stream CDN

3.1.1

05 Oct 13:12
d9abe5d
Compare
Choose a tag to compare

stream_chat

3.1.1

✅ Added

  • Added Filter.notExists.

🐞 Fixed

  • [#710] Fixed JWT requiring using String as id.
  • Fixed expired CDN attachment links not updating correctly.

stream_chat_flutter_core

3.1.1

  • Updated stream_chat dependency to 3.1.1.

stream_chat_flutter

3.1.1

  • Updated stream_chat_flutter_core dependency to 3.1.1.
  • Updated file_picker, image_gallery_saver, and video_thumbnail to the latest versions.

🐞 Fixed

  • [#687]: Fix Users losing their place in the conversation after replying in threads.
  • Fixed floating date stream subscription causing "Bad state: stream has already been listened.” error.
  • Fixed String capitalize extension not working on empty strings.

✅ Added

  • Added MessageInput.customOverlays property to add custom overlays to the message input.
  • Added MessageInput.mentionAllAppUsers property to mention all app users in the message input.
  • The MessageInput now supports local search for channels with less than 100 members.
  • Added MessageListView.paginationLoadingIndicatorBuilder to override the default loading indicator shown while paginating the message list.
  • Added new linkBackgroundColor in MessageTheme for setting background colors of link attachments.

⚠️ Deprecated

  • MessageInput.mentionsTileBuilder is now deprecated in favor of MessageInput.userMentionsTileBuilder.
  • MentionTile is now deprecated in favor of UserMentionsTile.

3.0.0

27 Sep 10:46
Compare
Choose a tag to compare

stream_chat

3.0.0

🛑️ Breaking Changes from 2.2.1

  • Added 6 new methods in ChatPersistenceClient.
    • bulkUpdateMessages
    • bulkUpdatePinnedMessages
    • bulkUpdateMembers
    • bulkUpdateReads
    • updatePinnedMessageReactions
    • deletePinnedMessageReactionsByMessageId

✅ Added

  • Added Filter.contains and Filter.empty
  • Added support for next, previous value pagination in client.search
    , read more.
  • Attachment class now has a fileSize and mimeType property. Setting a file will also set the file_size
    , mime_type key on extraData, so attachment.fileSize, attachment.mimetype
    and attachment.extraData['file_size']
    , attachment.extraData['mime_type] is same respectively.

🐞 Fixed

  • [#659] Fixed unread count not updating correctly.
  • Fix Filter.empty() json encoding.
  • [#700] Connecting user without providing name
    uses id instead for setting user.name.

stream_chat_flutter_core

3.0.0

  • Updated stream_chat dependency to 3.0.0.

🛑️ Breaking Changes from 2.2.1

  • MessageSearchListViewCore paginationParams property is now deprecated in favor of limit.

    // previous
    paginationParams = const PaginationParams(limit: 30)
    
    // new
    limit = 30
  • UserListCore pagination property is now deprecated in favor of limit.

    // previous
    pagination = const PaginationParams(limit: 30)
    
    // new
    limit = 30
  • ChannelListCore pagination property is now deprecated in favor of limit.

    // previous
    pagination = const PaginationParams(limit: 30)
    
    // new
    limit = 30
  • UserListCore filter property now is non-nullable.

🔄 Changed

  • UserListCore filter property now has a default value.
    filter = const Filter.empty()

🐞 Fixed

  • Fixed MessageSearchBloc pagination.
  • [#673]: Fix Core Widgets not getting rebuild with new
    data on configuration change.

stream_chat_flutter

3.0.0

  • Updated stream_chat_flutter_core dependency to 3.0.0.

🛑️ Breaking Changes from 2.2.1

  • UserListView filter property now is non-nullable.

🐞 Fixed

  • [#668]: Fix MessageInput rendering errors in case
    there are no actions available to show.
  • [#349]: Fix MessageInput attachment render overflow error.
  • [#674]: Check scrollController is attached before calling jump in MessageListView.
  • Fixed MessageListView header and footer when reverse: false.

🔄 Changed

  • Animation curves changed from default Curves.linear to Curves.easeOut and Curves.easeIn for attachment controls.
  • Removed default padding in DateDivider in MessageListView

stream_chat_persistence

3.0.0

  • Updated stream_chat dependency to 3.0.0.
  • [#604] Fix cascade deletion by
    enabling pragma foreign_keys.
  • Added a new table PinnedMessageReactions and dao PinnedMessageReactionDao specifically for pinned messages.

stream_chat_localizations

2.0.0

  • Updated stream_chat_flutter dependency to 3.0.0.

🐞 Fixed

  • Fixed typos in Italian translations.

2.2.1

01 Sep 10:46
e0d0f89
Compare
Choose a tag to compare

stream_chat

2.2.1

🐞 Fixed

  • Fixed unread indicator not updating correctly
  • Fix channel.show not working because of null body

stream_chat_flutter_core

2.2.1

  • Updated stream_chat dependency to 2.2.1

stream_chat_flutter

2.2.1

  • Updated stream_chat_flutter_core dependency to 2.2.1

2.2.0

25 Aug 15:19
cf8a028
Compare
Choose a tag to compare

stream_chat

2.2.0

🐞 Fixed

  • Fixed channel.markAllRead throwing failed host lookup.

✅ Added

  • User and OwnUser classes now have an image property. Setting an image will also set the 'image' key on extraData, so user.image and user.extraData['image'] is the same.
  • User and OwnUser classes now have a name property. Setting a name will also set the 'name' key on extraData, so user.name and user.extraData['name'] is the same.
  • Channel class now has extra image getter and setter. As well as an updateImage to do a partial update after a channel has been initialized.
  • Channel class now has extra name getter and setter. As well as an updateName to do a partial update after a channel has been initialized.
  • Added slow mode which allows a cooldown period after a user sends a message.

stream_chat_persistence

2.2.0

  • Updated llc dependency
  • Added support for message.i18n
  • Added support for user.language

stream_chat_flutter_core

2.2.0

🛑️ Breaking Changes from 2.1.1

  • Renamed BetterStreamBuilder.loadingBuilder to .noDataBuilder

🔄 Changed

  • BetterStreamBuilder.initialData is now nullable/not-required.

🐞 Fixed

  • #612 ChannelListView pagination doesn't work after refresh

stream_chat_flutter

2.2.0

✅ Added

  • #516:
    Added StreamChatThemeData.placeholderUserImage for building a widget when the UserAvatar image
    is loading
  • Added a backgroundColor property to the following widgets:
    • ChannelHeader
    • ChannelListHeader
    • GalleryHeader
    • GalleryFooter
    • ThreadHeader
  • Added MessageInput.attachmentLimit in order to limit the no. of attachments that can be sent with a single message.
  • Added MessageInput.onAttachmentLimitExceed callback which will be called when the attachmentLimit is exceeded.
    This will override the default error alert behaviour.
  • Added MessageInput.attachmentButtonBuilder and MessageInput.commandButtonBuilder for more customizations.
typedef ActionButtonBuilder = Widget Function(
    BuildContext context,
    IconButton defaultActionButton,
    );

NOTE: The last parameter is the default ActionButton
You can call .copyWith to customize just a subset of properties.

  • Added slow mode which allows a cooldown period after a user sends a message.

🔄 Changed

Theming has been upgraded! Most theme classes now have InheritedTheme classes associated with
them, and have been upgraded with some goodies like lerp functions. Here's the full naming
breakdown:

  • AvatarTheme is now AvatarThemeData
  • ChannelHeaderTheme is now ChannelHeaderThemeData
  • ChannelListHeaderTheme is now ChannelListHeaderThemeData
  • ChannelListViewTheme is now ChannelListViewThemeData
  • ChannelPreviewTheme is now ChannelPreviewThemeData
  • MessageInputTheme is now MessageInputThemeData
  • MessageListViewTheme is now MessageListViewTheme
  • MessageSearchListViewTheme is now MessageSearchListViewThemeData
  • MessageTheme is now MessageThemeData
  • UserListViewTheme is now UserListViewThemeData
  • Updated core dependency.

🐞 Fixed

  • Fixed MessageInput textField case where input is not enabled if the file picked from the
    camera is null.
  • Fixed date dividers position/alignment in non reversed MessageListView.
  • Fixed MessageListView not opening to the right initialMessage if StreamChannel.initialMessageId is set.
  • Fixed null check errors when accessing message.text in MessageWidget and MessageListView; this occurred when sending a message with no text.

stream_chat_localizations

1.1.0

✅ Added

  • Added support for Spanish locale.
  • Added support for Korean locale.
  • Added support for Japanese locale.
  • Added translations for cooldown mode.
  • Added translations for attachmentLimitExceed.

🔄 Changed

  • Some of the Hindi translations have been updated/changed for better understanding.
    • 'रिप्लाई' -> 'जवाब दें'
    • 'तस्वीरें' -> 'फ़ोटोज'
    • 'बिता हुआ कल' -> 'कल'
    • 'चैनल मौन है' -> 'चैनल म्यूट है'

2.1.0

28 Jul 10:42
b118167
Compare
Choose a tag to compare

stream_chat

2.1.0

🛑️ Removed

  • The MessageTranslation class has been removed. Use the new i18n field in the Message class instead.

✅ Added

  • The Message class now has an i18n field for translations
  • The User class now has a language field for the user's language preference.

🔄 Changed

  • client.user is now deprecated in favor of client.currentUser.
  • client.userStream is now deprecated in favor of client.currentUserStream.

🐞 Fixed

  • #563: Channel.stopWatching() not working
  • #575: Wrong OwnUser.*

stream_chat_persistence

2.1.0

✅ Added

  • Added support for Message.i18n
  • Added support for User.language

stream_chat_flutter_core

2.1.0

🛑️ Breaking Changes from 2.0.0

  • Changed default message filter of MessageListCore

✅ Added

  • Added MessageListCore.paginationLimit

🔄 Changed

  • StreamChatCore.of(context).user is now deprecated in favor of StreamChatCore.of(context).currentUser.
  • StreamChatCore.of(context).userStream is now deprecated in favor of StreamChatCore.of(context).currentUserStream.

stream_chat_flutter

2.1.0

✅ Added

  • Added MessageListView.paginationLimit
  • MessageText renders message translation if available
  • Allow the various ListView widgets to be themed via ThemeData classes
  • Added bottomRowBuilder and deletedBottomRowBuilder that build a widget below a MessageWidget

🔄 Changed

  • StreamChat.of(context).user is now deprecated in favor of StreamChat.of(context).currentUser.
  • StreamChat.of(context).userStream is now deprecated in favor of StreamChat.of(context).currentUserStream.

🐞 Fixed

  • Fix floating date divider not having a fixed size

stream_chat_localizations

1.0.0

  • First release

2.0.0

16 Jul 15:34
a292492
Compare
Choose a tag to compare

stream_chat

🛑️ Breaking Changes from 1.5.3

  • migrate this package to null safety
  • ConnectUserWithProvider now requires tokenProvider as a required param. (Removed from the constructor)
  • client.disconnect() is now divided into two different functions
    • client.closeConnection() -> for closing user websocket connection.
    • client.disconnectUser() -> for disconnecting user and resetting client state.
  • client.devToken() now returns a Token model instead of String.
  • ApiError is removed in favor of StreamChatError
    • StreamChatError -> parent type for all the stream errors.
    • StreamWebSocketError -> for user websocket related errors.
    • StreamChatNetworkError -> for network related errors.
  • client.queryChannels(), channel.query() options param is removed in favor of individual params
    • option.state -> bool state
    • option.watch -> bool watch
    • option.presence -> bool presence
  • client.queryUsers() options param is removed in favor of individual params
    • option.presence -> bool presence
  • Migrate this package to null safety
  • Added typed filters

🐞 Fixed

  • #369: Client does not return without internet connection
  • several minor fixes
  • performance improvements

✅ Added

  • New Location enum is introduced for easily changing the client location/baseUrl.
  • New client.openConnection() and client.closeConnection() is introduced to connect/disconnect user ws connection.
  • New client.partialUpdateMessage and channel.partialUpdateMessage methods
  • connectWebSocket parameter in connect user calls to use the client in "connection-less" mode.

🔄 Changed

  • baseURL is now deprecated in favor of using Location to change data location.

stream_chat_flutter

🛑️ Breaking Changes from 1.5.4

  • Migrate this package to null safety

  • Renamed ChannelImage to ChannelAvatar

  • Updated StreamChatThemeData.reactionIcons to accept custom builder

  • Renamed ColorTheme properties to reflect the purpose of the colors

    • ColorTheme.black -> ColorTheme.textHighEmphasis
    • ColorTheme.grey -> ColorTheme.textLowEmphasis
    • ColorTheme.greyGainsboro -> ColorTheme.disabled
    • ColorTheme.greyWhisper -> ColorTheme.borders
    • ColorTheme.whiteSmoke -> ColorTheme.inputBg
    • ColorTheme.whiteSnow -> ColorTheme.appBg
    • ColorTheme.white -> ColorTheme.barsBg
    • ColorTheme.blueAlice -> ColorTheme.linkBg
    • ColorTheme.accentBlue -> ColorTheme.accentPrimary
    • ColorTheme.accentRed -> ColorTheme.accentError
    • ColorTheme.accentGreen -> ColorTheme.accentInfo
  • ChannelListCore options property is removed in favor of individual properties

    • options.state -> bool state
    • options.watch -> bool watch
    • options.presence -> bool presence
  • UserListView options property is removed in favor of individual properties

    • options.presence -> bool presence
  • Renamed ImageHeader to GalleryHeader

  • Renamed ImageFooter to GalleryFooter

  • MessageBuilder and ParentMessageBuilder signature is now

typedef MessageBuilder = Widget Function(
    BuildContext,
    MessageDetails,
    List<Message>,
    MessageWidget defaultMessageWidget,
    );

the last parameter is the default MessageWidget
You can call .copyWith to customize just a subset of properties

✅ Added

  • Added video compress options (frame and quality) to MessageInput
  • TypingIndicator now has a property called parentId to show typing indicator specific to threads
  • #493: add support for messageListView header/footer
  • MessageWidget accepts a userAvatarBuilder
  • Added pinMessage ui support
  • Added MessageListView.threadSeparatorBuilder property
  • Added MessageInput.onError property to allow error handling
  • Added GalleryHeader/GalleryFooter theme classes

🐞 Fixed

  • #483: Keyboard covers input text box when editing
    message
  • Modals are shown using the nearest Navigator to make using the SDK easier in a nested navigator use case
  • #484: messages don't update without a reload
  • MessageListView not rendering if the user is not a member of the channel
  • Fix MessageInput overflow when there are no actions
  • Minor fixes and improvements

stream_chat_flutter_core

🛑️ Breaking Changes from 1.5.3

  • migrate this package to null safety
  • channelsBloc.queryChannels(), ChannelListCore options param/property is removed in favor of individual params/properties
    • options.state -> bool state
    • options.watch -> bool watch
    • options.presence -> bool presence
  • usersBloc.queryUsers(), UserListCore options param/property is removed in favor of individual params/properties
    • options.presence -> bool presence

✅ Added

  • Monitor connection using connectivity_plus package

🐞 Fixed

  • Minor fixes
  • Performance improvements

stream_chat_persistence

  • Migrate this package to null safety
  • Minor fixes and improvements