Skip to content

Releases: sendbird/sendbird-uikit-ios

3.28.1

05 Dec 08:57
06f9253
Compare
Choose a tag to compare

ModuleSet Improvements

Added Sub-Component Types each Modules

SBUGroupChannelModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - EmptyView
- AdminMessageCell
- UserMessageCell
- FileMessageCell
- MultipleFilesMessageCell
- TypingIndicatorMessageCell
- UnknownMessageCell
- CustomMessageCell
- ChannelStateBanner
- ScrollBottomView
- NewMessageInfo
- UserProfileView
Input - MessageInputView
- VoiceMessageInputView

SBUOpenChannelModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - EmptyView
- AdminMessageCell
- UserMessageCell
- FileMessageCell
- UnknownMessageCell
- CustomMessageCell
- ChannelStateBanner
- ScrollBottomView
- UserProfileView
Input - MessageInputView
Media - MediaView

SBUGroupChannelListModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - EmptyView
- ChannelCell
Common - `CreateChannelTypeSelector

SBUOpenChannelListModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - EmptyView
- ChannelCell

SBUGroupChannelSettingsModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - ChannelInfoView
- SettingCell

SBUOpenChannelSettingsModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - ChannelInfoView
- SettingCell

SBUMessageSearchModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - EmptyView
- MessageSearchResultCell

SBUMessageThreadModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - EmptyView
- AdminMessageCell
- UserMessageCell
- FileMessageCell
- MultipleFilesMessageCell
- UnknownMessageCell
- CustomMessageCell
- ChannelStateBanner
- UserProfileView
- ParentMessageInfoView
Input - MessageInputView
- VoiceMessageInputView

SBUModerationsModule

Component SubComponent
Header - LeftBarButton
- TitleView
List - ModerationCell

SBUGroupChannelPushSettingsModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - ChannelPushSettingCell

SBUCreateChannelModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - EmptyView
- UserCell

SBUCreateOpenChannelModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - ChannelImageView
- ChannelNameInputField

SBUInviteUserModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - EmptyView
- UserCell

SBURegisterOperatorModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - EmptyView
- UserCell

SBUUserListModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - EmptyView
- UserCell

Added Features

  • SBUViewModelSet: Added ViewModel types:
    • GroupChannelListViewModel
    • OpenChannelListViewModel
    • GroupChannelViewModel
    • OpenChannelViewModel
    • CreateGroupChannelViewModel
    • CreateOpenChannelViewModel
    • InviteUserViewModel
    • GroupChannelRegisterOperatorViewModel
    • OpenChannelRegisterOperatorViewModel
    • GroupUserListViewModel
    • OpenUserListViewModel
    • GroupChannelPushSettingsViewModel
    • GroupChannelSettingsViewModel
    • OpenChannelSettingsViewModel
    • GroupModerationsViewModel
    • OpenModerationsViewModel
    • MessageSearchViewModel
    • MessageThreadViewModel
  • SBUCommonViewControllerSet: Added common ViewController types:
    • SelectablePhotoViewController
    • MenuSheetViewController
    • ReactionsViewController
    • EmojiListViewController
  • SBUModuleSet: Added module:
    • CommonModule
  • SBUCommonModule: Introduced with the following components:
    • ToastView
    • ActionSheet
    • AlertView
    • Loading
  • SBUGroupChannelListModule: Added CommonComponent

Updated access levels of classes

  • SBUModerationCell: public -> open
  • SBUChannelSettingsChannelInfoView: public -> open
  • SBUMenuSheetViewController: public -> open
  • SBUCoverImageView: public -> open
  • SBULoading: public -> open
  • SBUNavigationTitleView: public -> open
  • SBUUnderLineTextField: public -> open
  • SBUChannelTitleView: public -> open
  • SBUReactionsViewController: public -> open
  • SBUChannelPushSettingCell: public -> open
  • SBUVoiceMessageInputView: public -> open
  • SBUEmojiListViewController: private -> open
  • SBUUserProfileView: private -> open

Common Updates

  • Added leftBarButtons and rightBarButtons properties in Header component

Added Classes

  • SBUActionSheet, SBUActionSheetItem
  • SBUAlertButton, SBUAlertButtonItem
  • SBUMenuCell
  • SBUSearchBar
  • SBULabel

Added Delegate Methods

  • SBUGroupChannelListViewController, SBUOpenChannelListViewController, SBUMessageThreadViewController
    • baseChannelModule(_:didUpdateLeftItems:) method
    • baseChannelModule(_:didUpdateRightItems:) method
  • SBUGroupChannelListViewController, SBUOpenChannelListViewController
    • baseChannelListModule(_:didUpdateLeftItems:) method
    • baseChannelListModule(_:didUpdateRightItems:) method
  • SBUGroupChannelSettingsViewController
    • groupChannelSettingsModule(_:didUpdateLeftItems:) method
    • groupChannelSettingsModule(_:didUpdateRightItems:) method
  • SBUOpenChannelSettingsViewController
    • openChannelSettingsModule(_:didUpdateLeftItems:) method
    • openChannelSettingsModule(_:didUpdateRightItems:) method
  • SBUMessageThreadModuleViewController
    • baseChannelModule(_:didUpdateRightItems:) method
  • SBUModerationsModuleViewController
    • moderationsModule(_:didUpdateLeftItems:) method
    • moderationsModule(_:didUpdateRightItems:) method
  • SBUGroupChannelPushSettingsViewController
    • groupChannelPushSettingsModule(_:didUpdateLeftItems:) method
    • groupChannelPushSettingsModule(_:didUpdateRightItems:) method
  • SBUCreateChannelViewController
    • createChannelModule(_:didUpdateLeftItems:) method
    • createChannelModule(_:didUpdateRightItems:) method
  • SBUCreateOpenChannelViewController
    • createOpenChannelModule(_:didUpdateLeftItems:) method
    • createOpenChannelModule(_:didUpdateRightItems:) method
  • SBUInviteUserViewController
    • inviteUserModule(_:didUpdateLeftItems:) method
    • inviteUserModule(_:didUpdateRightItems:) method
  • SBURegisterOperatorViewController
    • registerOperatorModule(_:didUpdateLeftItems:) method
    • registerOperatorModule(_:didUpdateRightItems:) method
  • SBUUserListViewController
    • userListModule(_:didUpdateLeftItems:) method
    • userListModule(_:didUpdateRightItems:) method

New Interfaces

Properties

  • BaseMessage: Added isStreamMessage
  • SBUAdminMessage: Added adminMessage
  • SBUMessageSearchViewModel: Added channelURL

Methods

  • UIStackView: Added removeAllSubViews
  • UIView extension: Added sbu_constraint_fill(equalTo:)
  • SBUUtils: Added isRTLCharacter(with:)
  • SBUMessageSearchModule.Header: Added cancelSearch()
  • SBUColorSet: Added restoreDefaultColors()
  • SBUFontSet: Added restoreDefaultFonts()
  • SBUMessageSearchViewController: Added createViewModel(channelURL:)
  • SBUMessageSearchViewModel: Added loadChannel(channelURL:)

Classes

  • Added SBUChannelStateBanner
  • Added SBUMediaView
  • Added SBUScrollBottomView
  • Added SBUBottomSheetController
  • Added SBUBarButtonItem

Improvements

  • SBUAdminMessageCellParams: Added isThreadMessage parameter to the constructor

3.28.0

04 Dec 04:29
4dacdaf
Compare
Choose a tag to compare

⚠️3.28.0 is not support Swift package manager

ModuleSet Improvements

Added Sub-Component Types each Modules

SBUGroupChannelModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - EmptyView
- AdminMessageCell
- UserMessageCell
- FileMessageCell
- MultipleFilesMessageCell
- TypingIndicatorMessageCell
- UnknownMessageCell
- CustomMessageCell
- ChannelStateBanner
- ScrollBottomView
- NewMessageInfo
- UserProfileView
Input - MessageInputView
- VoiceMessageInputView

SBUOpenChannelModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - EmptyView
- AdminMessageCell
- UserMessageCell
- FileMessageCell
- UnknownMessageCell
- CustomMessageCell
- ChannelStateBanner
- ScrollBottomView
- UserProfileView
Input - MessageInputView
Media - MediaView

SBUGroupChannelListModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - EmptyView
- ChannelCell
Common - `CreateChannelTypeSelector

SBUOpenChannelListModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - EmptyView
- ChannelCell

SBUGroupChannelSettingsModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - ChannelInfoView
- SettingCell

SBUOpenChannelSettingsModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - ChannelInfoView
- SettingCell

SBUMessageSearchModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - EmptyView
- MessageSearchResultCell

SBUMessageThreadModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - EmptyView
- AdminMessageCell
- UserMessageCell
- FileMessageCell
- MultipleFilesMessageCell
- UnknownMessageCell
- CustomMessageCell
- ChannelStateBanner
- UserProfileView
- ParentMessageInfoView
Input - MessageInputView
- VoiceMessageInputView

SBUModerationsModule

Component SubComponent
Header - LeftBarButton
- TitleView
List - ModerationCell

SBUGroupChannelPushSettingsModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - ChannelPushSettingCell

SBUCreateChannelModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - EmptyView
- UserCell

SBUCreateOpenChannelModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - ChannelImageView
- ChannelNameInputField

SBUInviteUserModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - EmptyView
- UserCell

SBURegisterOperatorModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - EmptyView
- UserCell

SBUUserListModule

Component SubComponent
Header - LeftBarButton
- RightBarButton
- TitleView
List - EmptyView
- UserCell

Added Features

  • SBUViewModelSet: Added ViewModel types:
    • GroupChannelListViewModel
    • OpenChannelListViewModel
    • GroupChannelViewModel
    • OpenChannelViewModel
    • CreateGroupChannelViewModel
    • CreateOpenChannelViewModel
    • InviteUserViewModel
    • GroupChannelRegisterOperatorViewModel
    • OpenChannelRegisterOperatorViewModel
    • GroupUserListViewModel
    • OpenUserListViewModel
    • GroupChannelPushSettingsViewModel
    • GroupChannelSettingsViewModel
    • OpenChannelSettingsViewModel
    • GroupModerationsViewModel
    • OpenModerationsViewModel
    • MessageSearchViewModel
    • MessageThreadViewModel
  • SBUCommonViewControllerSet: Added common ViewController types:
    • SelectablePhotoViewController
    • MenuSheetViewController
    • ReactionsViewController
    • EmojiListViewController
  • SBUModuleSet: Added module:
    • CommonModule
  • SBUCommonModule: Introduced with the following components:
    • ToastView
    • ActionSheet
    • AlertView
    • Loading
  • SBUGroupChannelListModule: Added CommonComponent

Updated access levels of classes

  • SBUModerationCell: public -> open
  • SBUChannelSettingsChannelInfoView: public -> open
  • SBUMenuSheetViewController: public -> open
  • SBUCoverImageView: public -> open
  • SBULoading: public -> open
  • SBUNavigationTitleView: public -> open
  • SBUUnderLineTextField: public -> open
  • SBUChannelTitleView: public -> open
  • SBUReactionsViewController: public -> open
  • SBUChannelPushSettingCell: public -> open
  • SBUVoiceMessageInputView: public -> open
  • SBUEmojiListViewController: private -> open
  • SBUUserProfileView: private -> open

Common Updates

  • Added leftBarButtons and rightBarButtons properties in Header component

Added Classes

  • SBUActionSheet, SBUActionSheetItem
  • SBUAlertButton, SBUAlertButtonItem
  • SBUMenuCell
  • SBUSearchBar
  • SBULabel

Added Delegate Methods

  • SBUGroupChannelListViewController, SBUOpenChannelListViewController, SBUMessageThreadViewController
    • baseChannelModule(_:didUpdateLeftItems:) method
    • baseChannelModule(_:didUpdateRightItems:) method
  • SBUGroupChannelListViewController, SBUOpenChannelListViewController
    • baseChannelListModule(_:didUpdateLeftItems:) method
    • baseChannelListModule(_:didUpdateRightItems:) method
  • SBUGroupChannelSettingsViewController
    • groupChannelSettingsModule(_:didUpdateLeftItems:) method
    • groupChannelSettingsModule(_:didUpdateRightItems:) method
  • SBUOpenChannelSettingsViewController
    • openChannelSettingsModule(_:didUpdateLeftItems:) method
    • openChannelSettingsModule(_:didUpdateRightItems:) method
  • SBUMessageThreadModuleViewController
    • baseChannelModule(_:didUpdateRightItems:) method
  • SBUModerationsModuleViewController
    • moderationsModule(_:didUpdateLeftItems:) method
    • moderationsModule(_:didUpdateRightItems:) method
  • SBUGroupChannelPushSettingsViewController
    • groupChannelPushSettingsModule(_:didUpdateLeftItems:) method
    • groupChannelPushSettingsModule(_:didUpdateRightItems:) method
  • SBUCreateChannelViewController
    • createChannelModule(_:didUpdateLeftItems:) method
    • createChannelModule(_:didUpdateRightItems:) method
  • SBUCreateOpenChannelViewController
    • createOpenChannelModule(_:didUpdateLeftItems:) method
    • createOpenChannelModule(_:didUpdateRightItems:) method
  • SBUInviteUserViewController
    • inviteUserModule(_:didUpdateLeftItems:) method
    • inviteUserModule(_:didUpdateRightItems:) method
  • SBURegisterOperatorViewController
    • registerOperatorModule(_:didUpdateLeftItems:) method
    • registerOperatorModule(_:didUpdateRightItems:) method
  • SBUUserListViewController
    • userListModule(_:didUpdateLeftItems:) method
    • userListModule(_:didUpdateRightItems:) method

New Interfaces

Properties

  • BaseMessage: Added isStreamMessage
  • SBUAdminMessage: Added adminMessage
  • SBUMessageSearchViewModel: Added channelURL

Methods

  • UIStackView: Added removeAllSubViews
  • UIView extension: Added sbu_constraint_fill(equalTo:)
  • SBUUtils: Added isRTLCharacter(with:)
  • SBUMessageSearchModule.Header: Added cancelSearch()
  • SBUColorSet: Added restoreDefaultColors()
  • SBUFontSet: Added restoreDefaultFonts()
  • SBUMessageSearchViewController: Added createViewModel(channelURL:)
  • SBUMessageSearchViewModel: Added loadChannel(channelURL:)

Classes

  • Added SBUChannelStateBanner
  • Added SBUMediaView
  • Added SBUScrollBottomView
  • Added SBUBottomSheetController
  • Added SBUBarButtonItem

Improvements

  • SBUAdminMessageCellParams: Added isThreadMessage parameter to the constructor

3.27.5

20 Nov 11:08
c5a7e31
Compare
Choose a tag to compare

New Interfaces

Added flag options in SBUGlobals that lets you choose to show a loading indicator in cases where the indicator is undisplayed by default.

  • SBUGlobals.loadingIndicator.groupChannelList.cachedChannels
  • SBUGlobals.loadingIndicator.groupChannel.cachedMessages

Improvements

  • Added functionality to retry up to 10 times if an individual message template cannot be retrieved from the server
  • Fixed a bug where the category filter was positioned outside the safe area

3.27.4

15 Oct 02:34
8f5468a
Compare
Choose a tag to compare

Improvements

  • Fixed a bug where the category filter was positioned outside the safe area

3.27.3

10 Oct 02:55
833cc2b
Compare
Choose a tag to compare

Improvements

  • Fixed crash when markdown link string is invalid

3.27.2

13 Sep 01:44
8cea4f4
Compare
Choose a tag to compare

Improvements

  • Fixed the behaviour of extended_message_payload.disable_chat_input to work correctly with sequential messages in a workflow.
  • Improved stability

3.27.1

04 Sep 04:53
a7acb18
Compare
Choose a tag to compare
  • SendbirdChatSDK dependency version has been updated to v4.21.1

Improvements

  • Fixed incorrect exposure of trailing layouts when rendering templates
  • Replaced the deprecated method markAsViewed() with logViewed() from SendbirdChatSDK

3.27.0

29 Aug 05:29
d966556
Compare
Choose a tag to compare

New Features

  • Added support for EmojiCategory. You can now filter emojis for different messages when adding Reactions to a message.
    • Interfaces
      • SBUGlobals.emojiCategoryFilter: (BaseMessage) -> [Int64]?
    • Note: You need to set your custom EmojiCategory using Sendbird Platform API in advance.

New Interfaces

  • Added views for MessageForm that work with the Sendbird dashboard (interfaces related to form have been deprecated)

    • Added SBUMessageFormView data base view class

    • Added SBUSimpleMessageFormView view class

    • Added SBUMessageFormItemView data base view class

    • Added SBUMessageFormChipsItemView, SBUMessageFormSingleTextItemView and SBUMessageFormMultiTextItemView item view classes

    • Added SBUMessageFormFallbackView fallback view class

    • Added SBUMesageFormChipView, SBUTextView view classes

    • Added SBUMessageFormViewDelegate and SBUMessageFormItemViewDelegate protocols

    • Added submitMessageForm(message:) in SBUGroupChannelViewModel class

    • Added getChatInputDisabledState(hasNext:) method in extension of BaseMessage

    • Added isFormSubmitting, formItemValidationStatus properties in extension of BaseMessage

    • Added isValidVersion property in extension of MessageForm

    • Added keyboardType and isTextInputType properties in extension of MessageFormItem.LayoutType

    • Added canUpdate(_:) and isValid(_:) functions in extension of MessageFormItem.ResultCount

    • Added isOnlyOne property in extension of MessageFormItem.ResultCount

    • Deprecated SBUFormViewDelegate and SBUFormFieldViewDelegate protocols

    • Deprecated SBUFormFieldView and SBUSimpleFormFieldView classes

    • Deprecated SBUFormFieldInputType enum

    • Deprecated SBUFormView and SBUSimpleFormView classes

3.26.0

14 Aug 08:45
ec95de4
Compare
Choose a tag to compare
  • Fixed wrong background color issue in mention limit guide
  • Improve stream message determination criteria
  • Fixed an issue where the alignment of menu and aciton sheet was exposed as rtl style.
  • Fixed text alignment in SBUUserMessageTextView and SBUMessageInputView to be changed by checking the RTL property of the input message if the app is RTL layout
    • Add isRTLCharacter(with:) static method in SBUUtils
    • Add rtlCharacterSet static property in SBUUtils

3.25.0

01 Aug 05:20
80c2f4f
Compare
Choose a tag to compare
  • Support Right-to-Left (RTL) languages
  • Added a static method to force a change to the value of a view's semantic content attribute
    • Added setSemanticContentAttributeRecursively(view: UIView, attribute: UISemanticContentAttribute) in UIView Extension
  • Resolved the autolayout warnings for the message template
  • Fixed Markdown syntax exposed in channel preview even when Markdown is enabled