Skip to main content

Components

An object containing types of UI Components that are used through the UI SDK.

public struct Components 

Initializers

init()

public init() 

Properties

asObservableObject

Used to initialize _Components as ObservableObject.

public var asObservableObject: ObservableObject 

titleContainerView

A view that displays a title label and subtitle in a container stack view.

public var titleContainerView: TitleContainerView.Type = TitleContainerView.self

onlineIndicatorView

A view used as an online activity indicator (online/offline).

public var onlineIndicatorView: (UIView & MaskProviding).Type = OnlineIndicatorView.self

avatarView

A view that displays the avatar image. By default a circular image.

public var avatarView: ChatAvatarView.Type = ChatAvatarView.self

presenceAvatarView

An avatar view with an online indicator.

public var presenceAvatarView: ChatPresenceAvatarView.Type = ChatPresenceAvatarView.self

typingIndicatorView

A UIView subclass which serves as container for typingIndicator and UILabel describing who is currently typing

public var typingIndicatorView: TypingIndicatorView.Type = TypingIndicatorView.self

typingAnimationView

A UIView subclass with animated 3 dots for indicating that user is typing.

public var typingAnimationView: TypingAnimationView.Type = TypingAnimationView.self

inputTextView

A view for inputting text with placeholder support.

public var inputTextView: InputTextView.Type = InputTextView.self

commandLabelView

A view that displays the command name and icon.

public var commandLabelView: CommandLabelView.Type = CommandLabelView.self

inputMessageView

A view to input content of a message.

public var inputMessageView: InputChatMessageView.Type = InputChatMessageView.self

quotedMessageView

A view that displays a quoted message.

public var quotedMessageView: QuotedChatMessageView.Type = QuotedChatMessageView.self

sendButton

A button used for sending a message, or any type of content.

public var sendButton: UIButton.Type = SendButton.self

confirmButton

A button for confirming actions.

public var confirmButton: UIButton.Type = ConfirmButton.self

attachmentButton

A button for opening attachments.

public var attachmentButton: UIButton.Type = AttachmentButton.self

attachmentPreviewViewPlaceholder

A view used as a fallback preview view for attachments that don't confirm to AttachmentPreviewProvider

public var attachmentPreviewViewPlaceholder: UIView.Type = AttachmentPlaceholderView.self

commandsButton

A button for opening commands.

public var commandsButton: UIButton.Type = CommandButton.self

shrinkInputButton

A button for shrinking the input view to allow more space for other actions.

public var shrinkInputButton: UIButton.Type = ShrinkInputButton.self

closeButton

A button for closing, dismissing or clearing information.

public var closeButton: UIButton.Type = CloseButton.self

shareButton

A button for sharing an information.

public var shareButton: UIButton.Type = ShareButton.self

checkmarkControl

A view to check/uncheck an option.

public var checkmarkControl: CheckboxControl.Type = CheckboxControl.self

messageLayoutOptionsResolver

An object responsible for message layout options calculations in ChatMessageListVC/ChatThreadVC.

public var messageLayoutOptionsResolver: ChatMessageLayoutOptionsResolver 

loadingIndicator

The view that shows a loading indicator.

public var loadingIndicator: ChatLoadingIndicator.Type = ChatLoadingIndicator.self

imageCDN

Object with set of function for handling images from CDN

public var imageCDN: ImageCDN 

imageLoader

Object which is responsible for loading images

public var imageLoader: ImageLoading 

imageProcessor

Object responsible for providing resizing operations for UIImage

public var imageProcessor: ImageProcessor 

videoPreviewLoader

The object that loads previews for video attachments.

public var videoPreviewLoader: VideoPreviewLoader 

gradientView

The view that shows a gradient.

public var gradientView: GradientView.Type = GradientView.self

playerView

The view that shows a playing video.

public var playerView: PlayerView.Type = PlayerView.self

messageListVC

The View Controller used to display content of the message, for example in the channel detail message list.

@available(iOSApplicationExtension, unavailable)
public var messageListVC: ChatMessageListVC.Type = ChatMessageListVC.self

messageListView

The view that shows the message list.

public var messageListView: ChatMessageListView.Type = ChatMessageListView
.self

messageListScrollOverlayView

The view that shows the date for currently visible messages on top of message list.

public var messageListScrollOverlayView: ChatMessageListScrollOverlayView.Type =
ChatMessageListScrollOverlayView.self

messageActionsVC

The View Controller by default used to display message actions after long-pressing on the message.

public var messageActionsVC: ChatMessageActionsVC.Type = ChatMessageActionsVC.self

messageReactionsVC

The View Controller by default used to display interactive reactions view after long-pressing on the message.

public var messageReactionsVC: ChatMessageReactionsVC.Type = ChatMessageReactionsVC.self

messagePopupVC

The View Controller by default used to display long-press menu of the message.

public var messagePopupVC: ChatMessagePopupVC.Type = ChatMessagePopupVC.self

filePreviewVC

The View Controller used for showing detail of a file message attachment.

public var filePreviewVC: ChatMessageAttachmentPreviewVC.Type = ChatMessageAttachmentPreviewVC.self

galleryVC

The View Controller used for show image and video attachments.

public var galleryVC: GalleryVC.Type = GalleryVC.self

videoPlaybackControlView

The view used to control the player for currently visible vide attachment.

public var videoPlaybackControlView: VideoPlaybackControlView.Type =
VideoPlaybackControlView.self

messageContentView

The view used to display content of the message, for example in the channel detail message list.

public var messageContentView: ChatMessageContentView.Type = ChatMessageContentView.self

messageBubbleView

The view used to display a bubble around a message.

public var messageBubbleView: ChatMessageBubbleView.Type = ChatMessageBubbleView.self

attachmentViewCatalog

The class responsible for returning the correct attachment view injector from a message

@available(iOSApplicationExtension, unavailable)
public var attachmentViewCatalog: AttachmentViewCatalog.Type = AttachmentViewCatalog.self

galleryAttachmentInjector

The injector used to inject gallery attachment views.

public var galleryAttachmentInjector: AttachmentViewInjector.Type = GalleryAttachmentViewInjector.self

linkAttachmentInjector

The injector used to inject link attachment views.

@available(iOSApplicationExtension, unavailable)
public var linkAttachmentInjector: AttachmentViewInjector.Type = LinkAttachmentViewInjector.self

giphyAttachmentInjector

The injector used for injecting Giphy attachment views

public var giphyAttachmentInjector: AttachmentViewInjector.Type = GiphyAttachmentViewInjector.self

filesAttachmentInjector

The injector used for injecting file attachment views

public var filesAttachmentInjector: AttachmentViewInjector.Type = FilesAttachmentViewInjector.self

reactionsBubbleView

The view that shows reactions bubble.

public var reactionsBubbleView: ChatMessageReactionsBubbleView.Type = ChatMessageDefaultReactionsBubbleView.self

attachmentActionButton

The button for taking an action on attachment being uploaded.

public var attachmentActionButton: AttachmentActionButton.Type = AttachmentActionButton.self

reactionsView

The view that shows reactions list in a bubble.

public var reactionsView: ChatMessageReactionsView.Type = ChatMessageReactionsView.self

reactionItemView

The view that shows a single reaction.

public var reactionItemView: ChatMessageReactionsView.ItemView.Type = ChatMessageReactionsView.ItemView.self

messageErrorIndicator

The view that shows error indicator in messageContentView.

public var messageErrorIndicator: ChatMessageErrorIndicator.Type = ChatMessageErrorIndicator.self

fileAttachmentListView

The view that shows message's file attachments.

public var fileAttachmentListView: ChatMessageFileAttachmentListView
.Type = ChatMessageFileAttachmentListView.self

fileAttachmentView

The view that shows a single file attachment.

public var fileAttachmentView: ChatMessageFileAttachmentListView.ItemView.Type =
ChatMessageFileAttachmentListView.ItemView.self

linkPreviewView

The view that shows a link preview in message cell.

public var linkPreviewView: ChatMessageLinkPreviewView.Type =
ChatMessageLinkPreviewView.self

galleryView

The view that shows message's image and video attachments.

public var galleryView: ChatMessageGalleryView.Type = ChatMessageGalleryView.self

imageAttachmentGalleryPreview

The view that shows an image attachment preview inside message cell.

public var imageAttachmentGalleryPreview: ChatMessageGalleryView.ImagePreview.Type = ChatMessageGalleryView.ImagePreview.self

videoAttachmentGalleryCell

The view that shows a video attachment in full-screen gallery.

public var videoAttachmentGalleryCell: VideoAttachmentGalleryCell.Type = VideoAttachmentGalleryCell.self

videoAttachmentGalleryPreview

The view that shows a video attachment preview inside a message.

public var videoAttachmentGalleryPreview: VideoAttachmentGalleryPreview.Type = VideoAttachmentGalleryPreview.self

imageUploadingOverlay

The view that shows an overlay with uploading progress for image attachment that is being uploaded.

public var imageUploadingOverlay: ChatMessageGalleryView.UploadingOverlay.Type = ChatMessageGalleryView.UploadingOverlay.self

giphyAttachmentView

The view that shows Giphy attachment with actions.

public var giphyAttachmentView: ChatMessageInteractiveAttachmentView.Type = ChatMessageInteractiveAttachmentView.self

giphyActionButton

The button that shows the attachment action.

public var giphyActionButton: ChatMessageInteractiveAttachmentView.ActionButton.Type =
ChatMessageInteractiveAttachmentView.ActionButton.self

giphyView

The view that shows a content for .giphy attachment.

public var giphyView: ChatMessageGiphyView.Type = ChatMessageGiphyView.self

giphyBadgeView

The view that shows a badge on giphyAttachmentView.

public var giphyBadgeView: ChatMessageGiphyView.GiphyBadge.Type = ChatMessageGiphyView.GiphyBadge.self

scrollToLatestMessageButton

The button that indicates unread messages at the bottom of the message list and scroll to the latest message on tap.

public var scrollToLatestMessageButton: ScrollToLatestMessageButton.Type = ScrollToLatestMessageButton.self

messageListUnreadCountView

The view that shows a number of unread messages on the Scroll-To-Latest-Message button in the Message List.

public var messageListUnreadCountView: ChatMessageListUnreadCountView.Type =
ChatMessageListUnreadCountView.self

chatReactionsBubbleView

The view that corresponds to container of Reactions for Message

public var chatReactionsBubbleView: ChatReactionsBubbleView.Type =
ChatReactionsBubbleView.self

threadVC

The View Controller used to display the detail of a message thread.

public var threadVC: ChatThreadVC.Type = ChatThreadVC.self

threadHeaderView

The view that displays channel information on the thread header.

public var threadHeaderView: ChatThreadHeaderView.Type =
ChatThreadHeaderView.self

channelVC

The view controller that contains the channel messages and represents the chat view.

public var channelVC: ChatChannelVC.Type = ChatChannelVC.self

channelHeaderView

The view that displays channel information on the channel header.

public var channelHeaderView: ChatChannelHeaderView.Type = ChatChannelHeaderView.self

channelNamer

The logic to generate a name for the given channel.

public var channelNamer: ChatChannelNamer 

channelListLayout

The collection view layout of the channel list.

public var channelListLayout: UICollectionViewLayout.Type = ListCollectionViewLayout.self

channelCell

The UICollectionViewCell subclass that shows channel information.

public var channelCell: ChatChannelListCollectionViewCell.Type = ChatChannelListCollectionViewCell.self

channelCellSeparator

The channel cell separator in the channel list.

public var channelCellSeparator: UICollectionReusableView.Type = CellSeparatorReusableView.self

channelActionsView

The view in the channel cell that shows channel actions on swipe.

public var channelActionsView: SwipeableView.Type = SwipeableView.self

channelContentView

The view that shows channel information.

public var channelContentView: ChatChannelListItemView.Type = ChatChannelListItemView.self

channelAvatarView

The view that shows a user avatar including an indicator of the user presence (online/offline).

public var channelAvatarView: ChatChannelAvatarView.Type = ChatChannelAvatarView.self

channelUnreadCountView

The view that shows a number of unread messages in channel.

public var channelUnreadCountView: ChatChannelUnreadCountView.Type = ChatChannelUnreadCountView.self

channelReadStatusView

The view that shows a read/unread status of the last message in channel.

public var channelReadStatusView: ChatChannelReadStatusCheckmarkView.Type =
ChatChannelReadStatusCheckmarkView.self

messageComposerVC

The view controller used to compose a message.

public var messageComposerVC: ComposerVC.Type = ComposerVC.self

messageComposerView

The view that shows the message when it's being composed.

public var messageComposerView: ComposerView.Type = ComposerView.self

messageComposerAttachmentsVC

A view controller that handles the attachments.

public var messageComposerAttachmentsVC: AttachmentsPreviewVC.Type = AttachmentsPreviewVC.self

messageComposerAttachmentCell

A view that holds the attachment views and provide extra functionality over them.

public var messageComposerAttachmentCell: AttachmentPreviewContainer.Type = AttachmentPreviewContainer.self

messageComposerFileAttachmentView

A view that displays the document attachment.

public var messageComposerFileAttachmentView: FileAttachmentView.Type = FileAttachmentView.self

imageAttachmentComposerPreview

A view that displays image attachment preview in composer.

public var imageAttachmentComposerPreview: ImageAttachmentComposerPreview
.Type = ImageAttachmentComposerPreview.self

videoAttachmentComposerPreview

A view that displays the video attachment preview in composer.

public var videoAttachmentComposerPreview: VideoAttachmentComposerPreview
.Type = VideoAttachmentComposerPreview.self

suggestionsVC

A view controller that shows suggestions of commands or mentions.

public var suggestionsVC: ChatSuggestionsVC.Type = ChatSuggestionsVC.self

mentionAllAppUsers

When true the suggestionsVC will search users from the entire application instead of limit search to the current channel.

public var mentionAllAppUsers: Bool = false

suggestionsCollectionView

The collection view of the suggestions view controller.

public var suggestionsCollectionView: ChatSuggestionsCollectionView.Type = ChatSuggestionsCollectionView.self

suggestionsMentionCollectionViewCell

A view cell that displays the suggested mention.

public var suggestionsMentionCollectionViewCell: ChatMentionSuggestionCollectionViewCell.Type =
ChatMentionSuggestionCollectionViewCell.self

suggestionsCommandCollectionViewCell

A view cell that displays the suggested command.

public var suggestionsCommandCollectionViewCell: ChatCommandSuggestionCollectionViewCell
.Type = ChatCommandSuggestionCollectionViewCell.self

suggestionsMentionView

A type for view embed in cell while tagging users with @ symbol in composer.

public var suggestionsMentionView: ChatMentionSuggestionView.Type = ChatMentionSuggestionView.self

suggestionsCommandView

A view that displays the command name, image and arguments.

public var suggestionsCommandView: ChatCommandSuggestionView.Type =
ChatCommandSuggestionView.self

suggestionsCollectionViewLayout

The collection view layout of the suggestions collection view.

public var suggestionsCollectionViewLayout: UICollectionViewLayout.Type =
ChatSuggestionsCollectionViewLayout.self

suggestionsHeaderReusableView

The header reusable view of the suggestion collection view.

public var suggestionsHeaderReusableView: UICollectionReusableView.Type = ChatSuggestionsCollectionReusableView.self

suggestionsHeaderView

The header view of the suggestion collection view.

public var suggestionsHeaderView: ChatSuggestionsHeaderView.Type =
ChatSuggestionsHeaderView.self

mentionAvatarView

A type for the view used as avatar when picking users to mention.

public var mentionAvatarView: ChatUserAvatarView.Type = ChatUserAvatarView.self

currentUserAvatarView

The view that shows current user avatar.

public var currentUserAvatarView: CurrentChatUserAvatarView.Type = CurrentChatUserAvatarView.self

The navigation controller.

public var navigationVC: NavigationVC.Type = NavigationVC.self

channelListRouter

The router responsible for navigation on channel list screen.

@available(iOSApplicationExtension, unavailable)
public var channelListRouter: ChatChannelListRouter.Type = ChatChannelListRouter.self

messageListRouter

The router responsible for navigation on message list screen.

public var messageListRouter: ChatMessageListRouter.Type = ChatMessageListRouter.self

alertsRouter

The router responsible for presenting alerts.

public var alertsRouter: AlertsRouter.Type = AlertsRouter.self

`default`

static var `default` 

Did you find this page helpful?