Skip to content

Releases: sendbird/sendbird-uikit-react-native

v3.0.0

28 Jun 05:04
210cca5
Compare
Choose a tag to compare

3.0.0 (2023-06-28)

Release notes

Feature configurations

  • The minimum @sendbird/chat version has been increased from 4.3.0 to 4.9.2.
  • You can now configure the features of UIKit through the uikitOptions prop of SendbirdUIKitContainer.
<SendbirdUIKitContainer
  uikitOptions={{
    common: {
      enableUsingDefaultUserProfile: true,
    },
    groupChannel: {
      enableMention: false,
      enableOgtag: true,
      enableReaction: true,
      enableTypingIndicator: true,
      input: {
        camera: {
          enablePhoto: true,
          enableVideo: true,
        },
        gallery: {
          enablePhoto: true,
          enableVideo: true,
        },
        enableDocument: true,
      },
    },
    groupChannelList: {
      enableTypingIndicator: true,
      enableMessageReceiptStatus: true,
    },
    groupChannelSettings: {
      enableMessageSearch: true,
    },
    openChannel: {
      enableOgtag: true,
      input: {
        camera: {
          enablePhoto: true,
          enableVideo: true,
        },
        gallery: {
          enablePhoto: true,
          enableVideo: true,
        },
        enableDocument: true,
      },
    },
  }}
/>

Breaking changes

Project configurations

The minimum React-Native version has been increased from 0.63.3 to 0.65.0.

Local cache is now a mandatory requirement.

  • You must inject localCacheStorage into SendbirdUIKitContainer.
<SendbirdUIKitContainer chatOptions={{ localCacheStorage: AsyncStorage }} />

Code migrations and removal of deprecated items

Feature configurations

  • The feature configuration options that were previously present in the chatOptions prop of SendbirdUIKitContainer have been moved to uikitOptions prop.

    • chatOptions.enableUserMention is replaced with uikitOptions.groupChannel.enableMention
    • chatOptions.enableGroupChannelOGTag is replaced with uikitOptions.groupChannel.enableOgtag
    • chatOptions.enableChannelListTypingIndicator replaced with uikitOptions.groupChannelList.enableTypingIndicator
    • chatOptions.enableChannelListMessageReceiptStatus is replaced with uikitOptions.groupChannelList.enableMessageReceiptStatus
    • chatOptions.enableMessageSearch is replaced with uikitOptions.groupChannelSettings.enableMessageSearch
    • chatOptions.enableOpenChannelOGTag is replaced with uikitOptions.openChannel.enableOgtag
    • chatOptions.enableUsingDefaultUserProfile is replaced with uikitOptions.common.enableUsingDefaultUserProfile

Resources

  • StringSet

    • OPEN_CHANNEL.LIST_BANNER_FROZEN is replaced with LABELS.CHANNEL_MESSAGE_LIST_FROZEN
    • GROUP_CHANNEL.LIST_BANNER_FROZEN is replaced with LABELS.CHANNEL_MESSAGE_LIST_FROZEN
    • GROUP_CHANNEL.DIALOG_MESSAGE_COPY is replaced with LABELS.CHANNEL_MESSAGE_COPY
    • GROUP_CHANNEL.DIALOG_MESSAGE_EDIT is replaced with LABELS.CHANNEL_MESSAGE_EDIT
    • GROUP_CHANNEL.DIALOG_MESSAGE_SAVE is replaced with LABELS.CHANNEL_MESSAGE_SAVE
    • GROUP_CHANNEL.DIALOG_MESSAGE_DELETE is replaced with LABELS.CHANNEL_MESSAGE_DELETE
    • GROUP_CHANNEL.DIALOG_MESSAGE_DELETE_CONFIRM_TITLE is replaced with LABELS.CHANNEL_MESSAGE_DELETE_CONFIRM_TITLE
    • GROUP_CHANNEL.DIALOG_MESSAGE_DELETE_CONFIRM_OK is replaced with LABELS.CHANNEL_MESSAGE_DELETE_CONFIRM_OK
    • GROUP_CHANNEL.DIALOG_MESSAGE_DELETE_CONFIRM_CANCEL is replaced with LABELS.CHANNEL_MESSAGE_DELETE_CONFIRM_CANCEL
    • GROUP_CHANNEL.DIALOG_MESSAGE_FAILED_RETRY is replaced with LABELS.CHANNEL_MESSAGE_FAILED_RETRY
    • GROUP_CHANNEL.DIALOG_MESSAGE_FAILED_REMOVE is replaced with LABELS.CHANNEL_MESSAGE_FAILED_REMOVE
    • GROUP_CHANNEL.DIALOG_ATTACHMENT_CAMERA(LABELS.CHANNEL_INPUT_ATTACHMENT_CAMERA) is replaced with LABELS.CHANNEL_INPUT_ATTACHMENT_CAMERA_PHOTO and LABELS.CHANNEL_INPUT_ATTACHMENT_CAMERA_VIDEO
    • GROUP_CHANNEL.DIALOG_ATTACHMENT_PHOTO_LIBRARY is replaced with LABELS.CHANNEL_INPUT_ATTACHMENT_PHOTO_LIBRARY
    • GROUP_CHANNEL.DIALOG_ATTACHMENT_FILES is replaced with LABELS.CHANNEL_INPUT_ATTACHMENT_FILES
    • GROUP_CHANNEL.INPUT_PLACEHOLDER_ACTIVE is replaced with LABELS.CHANNEL_INPUT_PLACEHOLDER_ACTIVE
    • GROUP_CHANNEL.INPUT_PLACEHOLDER_DISABLED is replaced with LABELS.CHANNEL_INPUT_PLACEHOLDER_DISABLED
    • GROUP_CHANNEL.INPUT_PLACEHOLDER_MUTED is replaced with LABELS.CHANNEL_INPUT_PLACEHOLDER_MUTED
    • GROUP_CHANNEL.INPUT_EDIT_OK is replaced with LABELS.CHANNEL_INPUT_EDIT_OK
    • GROUP_CHANNEL.INPUT_EDIT_CANCEL is replaced with LABELS.CHANNEL_INPUT_EDIT_CANCEL
    • GROUP_CHANNEL_MEMBERS.USER_BAR_ME_POSTFIX is replaced with LABELS.USER_BAR_ME_POSTFIX
    • GROUP_CHANNEL_MEMBERS.USER_BAR_OPERATOR is replaced with LABELS.USER_BAR_OPERATOR
  • Theme

    • Messsage in colors is replaced with GroupChannelMessage (colors.ui.message -> colors.ui.groupChannelMessage)

Components

  • GroupChannelFragment(GroupChannelProps),

    • In order to specify the local cache as mandatory, the queryCreator prop has been removed.
  • ChannelMessageList (GroupChannelProps, OpenChannelProps)

    • onPressImageMessage prop is replaced with onPressMediaMessage
    • onLeaveScrollBottom prop is replaced with onScrolledAwayFromBottom
    • onPressAvatar prop is replaced with onShowUserProfile
  • ChannelInput (GroupChannelProps, OpenChannelProps)

    • onSendFileMessage prop is replaced with onPressSendUserMessage
    • onSendUserMessage prop is replaced with onPressSendUserMessage
    • onUpdateFileMessage prop is replaced with onPressUpdateUserMessage
    • onUpdateUserMessage prop is replaced with onPressUpdateFileMessage
  • GroupChannelListFragment(GroupChannelListProps)

    • In order to specify the local cache as mandatory, the queryCreator prop has been removed.
    • renderGroupChannelPreview has been changed from (channel: SendbirdGroupChannel, onLongPressChannel: () => void) => React.ReactElement | null to (props: { channel: SendbirdGroupChannel; onPress: () => void; onLongPress: () => void; }) => React.ReactElement | null.
  • MessageRenderer component is replaced with GroupChannelMessageRenderer

Hooks

  • useGroupChannelMessages, useOpenChannelMessages
    • nextMessages and newMessagesFromMembers properties are replaced with newMessages

Changelogs

⚠ BREAKING CHANGES

  • update signature of channel preview prop in group channel list and open channel list
  • removed queryCreator from the group channel and group channel list
  • update minimum chat sdk version
  • bumped peer dependency version of chat sdk
  • react-native minimum version changed to 0.65.0 from 0.63.3
  • made chatOptions.localCacheStorage of SendbirdUIKitContainer required
  • deprecated item removal in foundation package
  • deprecated item removal in ChannelInput
  • deprecated MessageRenderer removal (replaced to GroupChannelMessageRenderer)
  • deprecated item removal in ChannelMessageList
  • deprecated item removal in uikit-chat-hooks package
  • deprecated item removal in StringSet

Features

  • added AttachmentsButton to ChannelInput component (687f3a0)
  • bumped peer dependency version of chat sdk (a57aff0)
  • deprecated item removal in ChannelInput (6a326ca)
  • deprecated item removal in ChannelMessageList (3a68a33)
  • deprecated item removal in foundation package (96f9717)
  • deprecated item removal in StringSet (956236b)
  • deprecated item removal in uikit-chat-hooks package (48fabfe)
  • deprecated MessageRenderer removal (replaced to GroupChannelMessageRenderer) (488e0b6)
  • hide ui elements when the channel is ephemeral (eacc2da)
  • made chatOptions.localCacheStorage of SendbirdUIKitContainer required (2f07d0d)
  • react-native minimum version changed to 0.65.0 from 0.63.3 (39a9852)
  • support options for default user profile(default: false) (6671a61)
  • support options for ogtag in channel (d80b8a0...
Read more

v2.5.0

04 May 18:58
4e2d6a3
Compare
Choose a tag to compare

2.5.0 (2023-05-04)

Release notes

  • [BETA] Added message search feature

    • Added createMessageSearchFragment and createMessageSearchModule.
      Added searchItem prop to GroupChannelFragment.
  • @sendbird/react-native-scrollview-enhancer module as peer dependency.

    • Added @sendbird/react-native-scrollview-enhancer module as a peer dependency to support bidirectional scrolling and maintainVisibleContentPosition on Android with versions lower than 0.72.
    • If your React-Native version is 0.63.x, please use v0.1.2. If it is 0.64.x or higher, please use v0.2.0.
    • Note that this module includes an Android native module.
  • Changes to the behavior of useGroupChannelMessagesWithCollection.

    • Due to the support of the maintainVisibleContentPosition prop, nextMessages and newMessagesFromMembers have been deprecated and replaced with newMessages.

Changelogs

Features

  • added message search fragment (a6342c0)
  • implement focus animation on search item (7fe38e8)
  • implemented scroll-view enhancer (1dca4a0)

Bug Fixes

  • chat-hooks: fixed adding, updating, and deleting messages properly when returning from background to foreground in the open channel (50b2f23)
  • uikit: do not handle onUserBanned in open channel list (8ba9daa)
  • uikit: fixed mention suggestion properly based on updated members (fb50bbd)

v2.4.2

28 Apr 00:43
ae9e60e
Compare
Choose a tag to compare

2.4.2 (2023-04-28)

Features

  • uikit: added queryCreator prop to GroupChannelBannedUsersFragment (dd682e8)
  • uikit: added queryCreator prop to GroupChannelMembersFragment (38eb2fe)
  • uikit: added queryCreator prop to GroupChannelMutedMembersFragment (37e6be7)
  • uikit: added queryCreator prop to GroupChannelOperatorsFragment (63d08e8)
  • uikit: added queryCreator prop to GroupChannelRegisterOperatorFragment (7e1485a)
  • uikit: added queryCreator prop to OpenChannelBannedUsersFragment (16e1e4c)
  • uikit: added queryCreator prop to OpenChannelMutedParticipantsFragment (0e7c462)
  • uikit: added queryCreator prop to OpenChannelOperatorsFragment (d7746f5)
  • uikit: added queryCreator prop to OpenChannelParticipantsFragment (01f82da)
  • uikit: added queryCreator prop to OpenChannelRegisterOperatorFragment (3693856)

Improvements

  • chat-hooks: removed deps from useConnectionHandler (6acf65c)

v2.4.1

24 Mar 08:12
9ba7a00
Compare
Choose a tag to compare

2.4.1 (2023-03-24)

Bug Fixes

  • uikit: fixed connection failure due to duplicate network listener invocation on v4.6.0+ session token connection. (ff761f3)
  • utils: properly retrieve file extensions from URLs that contain query parameters (7401d55)

Improvements

  • refactored createFileService functions and utils structure (5e44d4f)

v1.1.5

24 Mar 05:32
771842d
Compare
Choose a tag to compare

1.1.5 (2023-03-24)

Bug Fixes

  • utils: properly retrieve file extensions from URLs that contain query parameters (68b1b5a)

v2.4.0

15 Mar 08:57
05ec076
Compare
Choose a tag to compare

2.4.0 (2023-03-15)

Features

  • added open channel message components (2cbdcba)
  • foundation: added OpenChannelPreview component (6a6503d)
  • hooks: added useGroupChannel hook (9a6b996)
  • hooks: added useOpenChannelList and useOpenChannelMessages hooks (e41e076)
  • hooks: useChannelHandler supports open channel handler (3d95e7b)
  • uikit: added open channel banned users fragment. (391a871)
  • uikit: added open channel create fragment (21d4bb5)
  • uikit: added open channel fragment (6250770)
  • uikit: added open channel list fragment (61fff68)
  • uikit: added open channel moderation fragment (539b3d2)
  • uikit: added open channel muted participants fragment (f876ba7)
  • uikit: added open channel operators fragment (aea29af)
  • uikit: added open channel participants fragment (c4dd37f)
  • uikit: added open channel register operator fragment (be883c9)
  • uikit: added open channel settings fragment (48ebf2a)
  • utils: added useDebounceEffect hook (dc90bb4)
  • utils: added usePartialState hook (f76fe69)

Bug Fixes

  • chat-hooks: modified to manually update failed messages when using query in useChannelMessages hook (0f7b0ce)
  • uikit: added missing onLoadNext call to user list components (6592e11)

Improvements

  • replaced useUniqId to useUniqHandlerId (543e149)
  • uikit: added disabled option to errorBoundary in SendbirdUIKitContainer props (6070d54)
  • uikit: expanded interfaces for channel input to make customization implementation easier (4d3f183)
  • uikit: extract base channel input component from group channel module (462291e)

v2.3.0

09 Feb 01:44
a9bf41f
Compare
Choose a tag to compare

2.3.0 (2023-02-09)

Features

  • added image compression feature (568b5bb)
  • utils: added useSafeAreaPadding hook (80cd9ab)

Bug Fixes

  • added missing labels for permissions (89186bd)
  • chat-hooks: do not clear next message when loading prev message (6508144)
  • uikit: fixed to useContext type compiles the correct package path (d17ccb0)
  • uikit: support compatibility for removing AppState listener under 0.65 (b122691)

v1.1.4

31 Jan 05:47
8de6170
Compare
Choose a tag to compare

1.1.4 (2023-01-31)

Bug Fixes

  • uikit: support compatibility for removing AppState listener under 0.65 (4aaba86)

v2.2.0

03 Jan 04:53
bd7ab21
Compare
Choose a tag to compare

2.2.0 (2023-01-03)

Features

  • added group channel notifications fragment (dfb891d)
  • foundation: added dynamic header to bottom sheet (850cb68)
  • foundation: added mention related props to group channel preview (507a1af)
  • foundation: added reaction ui color (5b272e5)
  • uikit: added emoji manager (1cad175)
  • uikit: added reaction addons (1a0db30)
  • uikit: added reaction bottom sheets (07ae1ad)
  • uikit: added reaction user list bottom sheet (e9ef7e9)

Bug Fixes

  • added missing keyExtractor to list components of modules (4ee1108)
  • android selection bug (d2b4c8c)
  • chat-hooks: admin message is not added via onMessagesAdded handler (0bbb499)
  • chat-hooks: fixed wrong error variable name in the useUserList query catch (82c6f6f)

Improvements

v2.1.0

06 Dec 09:12
c778a84
Compare
Choose a tag to compare

2.1.0 (2022-12-06)

⚠ BREAKING CHANGES

  • uikit: update camera roll module

Features

  • added group channel type selector (9fb7a19)
  • chat-hooks: added useGroupChannel hook (9392dea)
  • foundation: added profile card ui (472f02f)
  • support broadcast and supergroup channel (895fa3b)
  • uikit: added enableUseUserIdForNickname option (5d3cfd8)
  • uikit: added group channel banned users fragment (80e1a5e)
  • uikit: added group channel moderations fragment (4213e6d)
  • uikit: added group channel muted members fragment (3784b73)
  • uikit: added group channel operators add fragment (4ac84ee)
  • uikit: added group channel operators fragment (c7f6626)
  • uikit: added mini profile card (0877463)
  • uikit: added moderation in group channel members (9b25059)
  • utils: added buffered request function (d3e375c)

Bug Fixes

  • chat-hooks: prevent MESSAGE_RECEIVED handler called twice when receiving new message. (ab988c6)

Improvements

  • chat-hooks: removed activeChannel from useGroupChannelMessages for normalizing (70fb1c7)
  • uikit: update camera roll module (5ddb5d3)

Documentation

  • added list banned users in group channel (4f60dfb)
  • added list muted members (877d7d8)
  • added list operators in group channel (a4afbf7)
  • added moderating channels and members page (aad20af)
  • added register member as operators (7dde222)
  • update docs validation snippet (4aaeb89)