Releases: sendbird/sendbird-uikit-react-native
Releases · sendbird/sendbird-uikit-react-native
v3.0.0
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 ofSendbirdUIKitContainer
.
<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.
- Supports stable Metro bundler version.
- Supports stable React-Native APIs (e.g. EventSubscription).
- Minimum iOS version for deployment has been changed to 11. (link)
- An increase in the minimum Gradle version is required for stable operation.
- https://react-native-community.github.io/upgrade-helper/?from=0.63.5&to=0.65.3
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 ofSendbirdUIKitContainer
have been moved touikitOptions
prop.chatOptions.enableUserMention
is replaced withuikitOptions.groupChannel.enableMention
chatOptions.enableGroupChannelOGTag
is replaced withuikitOptions.groupChannel.enableOgtag
chatOptions.enableChannelListTypingIndicator
replaced withuikitOptions.groupChannelList.enableTypingIndicator
chatOptions.enableChannelListMessageReceiptStatus
is replaced withuikitOptions.groupChannelList.enableMessageReceiptStatus
chatOptions.enableMessageSearch
is replaced withuikitOptions.groupChannelSettings.enableMessageSearch
chatOptions.enableOpenChannelOGTag
is replaced withuikitOptions.openChannel.enableOgtag
chatOptions.enableUsingDefaultUserProfile
is replaced withuikitOptions.common.enableUsingDefaultUserProfile
Resources
-
StringSet
OPEN_CHANNEL.LIST_BANNER_FROZEN
is replaced withLABELS.CHANNEL_MESSAGE_LIST_FROZEN
GROUP_CHANNEL.LIST_BANNER_FROZEN
is replaced withLABELS.CHANNEL_MESSAGE_LIST_FROZEN
GROUP_CHANNEL.DIALOG_MESSAGE_COPY
is replaced withLABELS.CHANNEL_MESSAGE_COPY
GROUP_CHANNEL.DIALOG_MESSAGE_EDIT
is replaced withLABELS.CHANNEL_MESSAGE_EDIT
GROUP_CHANNEL.DIALOG_MESSAGE_SAVE
is replaced withLABELS.CHANNEL_MESSAGE_SAVE
GROUP_CHANNEL.DIALOG_MESSAGE_DELETE
is replaced withLABELS.CHANNEL_MESSAGE_DELETE
GROUP_CHANNEL.DIALOG_MESSAGE_DELETE_CONFIRM_TITLE
is replaced withLABELS.CHANNEL_MESSAGE_DELETE_CONFIRM_TITLE
GROUP_CHANNEL.DIALOG_MESSAGE_DELETE_CONFIRM_OK
is replaced withLABELS.CHANNEL_MESSAGE_DELETE_CONFIRM_OK
GROUP_CHANNEL.DIALOG_MESSAGE_DELETE_CONFIRM_CANCEL
is replaced withLABELS.CHANNEL_MESSAGE_DELETE_CONFIRM_CANCEL
GROUP_CHANNEL.DIALOG_MESSAGE_FAILED_RETRY
is replaced withLABELS.CHANNEL_MESSAGE_FAILED_RETRY
GROUP_CHANNEL.DIALOG_MESSAGE_FAILED_REMOVE
is replaced withLABELS.CHANNEL_MESSAGE_FAILED_REMOVE
GROUP_CHANNEL.DIALOG_ATTACHMENT_CAMERA(LABELS.CHANNEL_INPUT_ATTACHMENT_CAMERA)
is replaced withLABELS.CHANNEL_INPUT_ATTACHMENT_CAMERA_PHOTO
andLABELS.CHANNEL_INPUT_ATTACHMENT_CAMERA_VIDEO
GROUP_CHANNEL.DIALOG_ATTACHMENT_PHOTO_LIBRARY
is replaced withLABELS.CHANNEL_INPUT_ATTACHMENT_PHOTO_LIBRARY
GROUP_CHANNEL.DIALOG_ATTACHMENT_FILES
is replaced withLABELS.CHANNEL_INPUT_ATTACHMENT_FILES
GROUP_CHANNEL.INPUT_PLACEHOLDER_ACTIVE
is replaced withLABELS.CHANNEL_INPUT_PLACEHOLDER_ACTIVE
GROUP_CHANNEL.INPUT_PLACEHOLDER_DISABLED
is replaced withLABELS.CHANNEL_INPUT_PLACEHOLDER_DISABLED
GROUP_CHANNEL.INPUT_PLACEHOLDER_MUTED
is replaced withLABELS.CHANNEL_INPUT_PLACEHOLDER_MUTED
GROUP_CHANNEL.INPUT_EDIT_OK
is replaced withLABELS.CHANNEL_INPUT_EDIT_OK
GROUP_CHANNEL.INPUT_EDIT_CANCEL
is replaced withLABELS.CHANNEL_INPUT_EDIT_CANCEL
GROUP_CHANNEL_MEMBERS.USER_BAR_ME_POSTFIX
is replaced withLABELS.USER_BAR_ME_POSTFIX
GROUP_CHANNEL_MEMBERS.USER_BAR_OPERATOR
is replaced withLABELS.USER_BAR_OPERATOR
-
Theme
Messsage
in colors is replaced withGroupChannelMessage
(colors.ui.message
->colors.ui.groupChannelMessage
)
Components
-
GroupChannelFragment
(GroupChannelProps
),- In order to specify the local cache as mandatory, the
queryCreator
prop has been removed.
- In order to specify the local cache as mandatory, the
-
ChannelMessageList
(GroupChannelProps
,OpenChannelProps
)onPressImageMessage
prop is replaced withonPressMediaMessage
onLeaveScrollBottom
prop is replaced withonScrolledAwayFromBottom
onPressAvatar
prop is replaced withonShowUserProfile
-
ChannelInput
(GroupChannelProps
,OpenChannelProps
)onSendFileMessage
prop is replaced withonPressSendUserMessage
onSendUserMessage
prop is replaced withonPressSendUserMessage
onUpdateFileMessage
prop is replaced withonPressUpdateUserMessage
onUpdateUserMessage
prop is replaced withonPressUpdateFileMessage
-
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
.
- In order to specify the local cache as mandatory, the
-
MessageRenderer
component is replaced withGroupChannelMessageRenderer
Hooks
useGroupChannelMessages
,useOpenChannelMessages
nextMessages
andnewMessagesFromMembers
properties are replaced withnewMessages
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
ofSendbirdUIKitContainer
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
ofSendbirdUIKitContainer
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...
v2.5.0
2.5.0 (2023-05-04)
Release notes
-
[BETA] Added message search feature
- Added createMessageSearchFragment and createMessageSearchModule.
Added searchItem prop to GroupChannelFragment.
- Added createMessageSearchFragment and createMessageSearchModule.
-
@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
v2.4.2
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
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
v2.4.0
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 toerrorBoundary
inSendbirdUIKitContainer
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
v1.1.4
v2.2.0
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
- update time format (708be93)
v2.1.0
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)