stream_chat_flutter
library
Classes
-
AcceptInviteResponse
-
Model response for Channel.acceptInvite api call
-
Action
-
The class that contains the information about an action
-
AddMembersResponse
-
Model response for Channel.addMembers api call
-
AsyncCache<T>
-
Runs asynchronous functions and caches the result for a period of time.
-
AsyncMemoizer<T>
-
A class for running an asynchronous function exactly once and caching its
result.
-
Attachment
-
The class that contains the information about an attachment
-
AttachmentAction
-
Class for custom attachment action
-
AttachmentActionsModal
-
Widget that shows the options in the gallery view
-
AttachmentError
-
Widget for building in case of error
-
AttachmentFile
-
The class that contains the information about an attachment file
-
AttachmentFileUploader
-
Class responsible for uploading images and files to a given channel
-
AttachmentUploadStateBuilder
-
Widget to display attachment upload state
-
AvatarThemeData
-
A style that overrides the default appearance of various avatar widgets.
-
BaseOptions
-
The common config for the Dio instance.
dio.options
is a instance of BaseOptions
-
BetterStreamBuilder<T extends Object>
-
A more efficient StreamBuilder
It requires initialData and will rebuild
only when the new data is different than the current data
The comparator is used to check if the new data is different
-
CancelableCompleter<T>
-
A completer for a CancelableOperation.
-
CancelableOperation<T>
-
An asynchronous operation that can be cancelled.
-
Channel
-
Class that manages a specific channel.
-
ChannelAvatar
-
-
ChannelClientState
-
The class that handles the state of the channel listening to the events.
-
ChannelConfig
-
The class that contains the information about the configuration of a channel
-
-
Overrides the default style of ChannelHeader descendants.
-
A style that overrides the default appearance of ChannelHeaders when used
with ChannelHeaderTheme or with the overall StreamChatTheme's
StreamChatThemeData.channelHeaderTheme.
-
ChannelListController
-
Controller used for loading more data and controlling pagination in
ChannelListCore.
-
ChannelListCore
-
ChannelListCore is a simplified class that allows fetching a list of
channels while exposing UI builders.
A ChannelListController is used to reload and paginate data.
-
It shows the current StreamChatClient status.
-
Overrides the default style of ChannelListHeader descendants.
-
Theme dedicated to the ChannelListHeader
-
ChannelListView
-
-
ChannelListViewTheme
-
Overrides the default style of ChannelListView descendants.
-
ChannelListViewThemeData
-
A style that overrides the default appearance of ChannelListViews when
used with ChannelListViewTheme or with the overall StreamChatTheme's
StreamChatThemeData.channelListViewTheme.
-
ChannelModel
-
The class that contains the information about a channel
-
ChannelName
-
It shows the current Channel name using a Text widget.
-
ChannelPreview
-
-
ChannelPreviewTheme
-
Overrides the default style of ChannelPreview descendants.
-
ChannelPreviewThemeData
-
A style that overrides the default appearance of ChannelPreviews when used
with ChannelPreviewTheme or with the overall StreamChatTheme's
StreamChatThemeData.channelPreviewTheme.
-
ChannelsBloc
-
Widget dedicated to the management of a channel list with pagination
ChannelsBloc is used together with ChannelListCore to manage a list of
Channels with pagination, re-ordering, querying and other operations
associated with Channels.
-
ChannelsBlocState
-
The current state of the ChannelsBloc.
-
ChannelState
-
The class that contains the information about a channel
-
ChannelStateResponse
-
Model response for Channel.query api call
-
ChatPersistenceClient
-
A simple client used for persisting chat data locally.
-
ChunkedStreamReader<T>
-
Utility class for reading elements from a chunked stream.
-
ClientState
-
The class that handles the state of the channel listening to the events
-
ColorTheme
-
Theme that holds colors
-
Command
-
The class that contains the information about a command
-
ConnectGuestUserResponse
-
Model response for StreamChatClient.connectGuestUser api call
-
ConnectionStatusBuilder
-
Widget that builds itself based on the latest snapshot of interaction with
a Stream of type ConnectionStatus.
-
Connectivity
-
Discover network connectivity configurations: Distinguish between WI-FI and cellular, check WI-FI status and more.
-
DateDivider
-
It shows a date divider depending on the date difference
-
Debounce
-
Creates a debounced function that delays invoking
func
until after wait
milliseconds have elapsed since the last time the debounced function was
invoked. The debounced function comes with a Debounce.cancel method to cancel
delayed func
invocations and a Debounce.flush method to immediately invoke them.
Provide leading
and/or trailing
to indicate whether func
should be
invoked on the leading
and/or trailing
edge of the wait
interval.
The func
is invoked with the last arguments provided to the call
function. Subsequent calls to the debounced function return the result of
the last func
invocation.
-
DefaultTranslations
-
Default implementation of Translation strings for the stream chat widgets
-
DelegatingEventSink<T>
-
Simple delegating wrapper around an EventSink.
-
DelegatingFuture<T>
-
A wrapper that forwards calls to a Future.
-
DelegatingSink<T>
-
Simple delegating wrapper around a Sink.
-
DelegatingStream<T>
-
Simple delegating wrapper around a Stream.
-
DelegatingStreamConsumer<T>
-
Simple delegating wrapper around a StreamConsumer.
-
DelegatingStreamSink<T>
-
Simple delegating wrapper around a StreamSink.
-
DelegatingStreamSubscription<T>
-
Simple delegating wrapper around a StreamSubscription.
-
DeletedMessage
-
Widget to display deleted message
-
DemoPainter
-
Painter for bg polygon gradient
-
Device
-
The class that contains the information about a device
-
Effect
-
Effect store
-
EmptyResponse
-
Model response for empty responses
-
ErrorResponse
-
Model response for StreamChatNetworkError data
-
ErrorResult
-
A result representing a thrown error.
-
Event
-
The class that contains the information about an event
-
EventChannel
-
The channel embedded in the event object
-
EventSinkBase<T>
-
An abstract class that implements EventSink in terms of onAdd,
onError, and onClose methods.
-
EventType
-
This class defines some basic event types
-
Failed
-
-
FileAttachment
-
Widget for displaying file attachments
-
Filter
-
Stream supports a limited set of filters for querying channels,
users and members. The example below shows how to filter for channels
of type messaging where the current user is a member
-
FullScreenMedia
-
A full screen image widget
-
FutureGroup<T>
-
A collection of futures waits until all added Futures complete.
-
Footer widget for media display
-
Overrides the default style of GalleryFooter descendants.
-
A style that overrides the default appearance of GalleryFooters when used
with GalleryFooterTheme or with the overall StreamChatTheme's
StreamChatThemeData.galleryFooterTheme.
-
Header/AppBar widget for media display screen
-
Overrides the default style of GalleryHeader descendants.
-
A style that overrides the default appearance of GalleryHeaders when used
with GalleryHeaderTheme or with the overall StreamChatTheme's
StreamChatThemeData.galleryHeaderTheme.
-
GetMessageResponse
-
Model response for StreamChatClient.getMessage api call
-
GetMessagesByIdResponse
-
Model response for Channel.getMessagesById api call
-
GiphyAttachment
-
Widget for showing a GIF attachment
-
GradientAvatar
-
Fallback user avatar with a polygon gradient overlayed with text
-
ImageAttachment
-
Widget for showing an image attachment
-
InfoTile
-
Tile to display a message, used in stream chat to display connection status
-
InProgress
-
-
InviteMembersResponse
-
Model response for Channel.inviteMembers api call
-
IOSinkBase
-
An abstract class that implements
dart:io
's IOSink
's API in terms of
onAdd, onError, onClose, and onFlush methods.
-
Jiffy
-
-
LazyLoadScrollView
-
Wrapper around a Scrollable which triggers onEndOfPage/onStartOfPage the Scrollable
reaches to the start or end of the view extent.
-
LazyStream<T>
-
A Stream wrapper that forwards to another Stream that's initialized
lazily.
-
Level
-
Levels to control logging output. Logging can be enabled to include all
levels above certain Level. Levels are ordered using an integer
value Level.value. The predefined Level constants below are sorted as
follows (in descending order): Level.SHOUT, Level.SEVERE,
Level.WARNING, Level.INFO, Level.CONFIG, Level.FINE, Level.FINER,
Level.FINEST, and Level.ALL.
-
ListDevicesResponse
-
Model response for StreamChatClient.getDevices api call
-
Header Item
-
ListItem
-
Represents an item in a the user stream list.
Header items are prefixed with the key
HEADER
While users are prefixed
with USER
.
-
ListUserItem
-
User Item
-
Logger
-
Use a Logger to log debug messages.
-
Member
-
The class that contains the information about the user membership
in a channel
-
MentionTile
-
This widget is used for showing user tiles for mentions
Use title, subtitle, leading, trailing for
substituting widgets in respective positions
-
Message
-
The class that contains the information about a message
-
MessageAction
-
Class describing a message action
-
MessageDetails
-
Class for message details
-
MessageInput
-
Inactive state
-
MessageInputState
-
State of MessageInput
-
MessageInputTheme
-
Overrides the default style of MessageInput descendants.
-
MessageInputThemeData
-
A style that overrides the default appearance of MessageInput widgets
when used with MessageInputTheme or with the overall StreamChatTheme's
StreamChatThemeData.messageInputTheme.
-
MessageListController
-
Controller used for paginating data in ChannelListView
-
MessageListCore
-
MessageListCore is a simplified class that allows fetching a list of
messages while exposing UI builders.
-
MessageListView
-
-
MessageListViewTheme
-
Overrides the default style of MessageListView descendants.
-
MessageListViewThemeData
-
A style that overrides the default appearance of MessageListViews when
used with MessageListViewTheme or with the overall StreamChatTheme's
StreamChatThemeData.messageListViewTheme.
-
MessageSearchBloc
-
MessageSearchBloc is used to manage a list of messages with pagination.
This class can be used to load messages, perform queries, etc.
-
MessageSearchBlocState
-
The current state of the MessageSearchBloc
-
MessageSearchItem
-
It shows the current Message preview.
-
MessageSearchListController
-
Controller used for paginating data in ChannelListView
-
MessageSearchListCore
-
MessageSearchListCore is a simplified class that allows searching for
messages across channels while exposing UI builders.
A MessageSearchListController is used to load and paginate data.
-
MessageSearchListView
-
It shows the list of searched messages.
-
MessageSearchListViewTheme
-
Overrides the default style of MessageSearchListView descendants.
-
MessageSearchListViewThemeData
-
A style that overrides the default appearance of MessageSearchListViews
when used with MessageSearchListView or with the overall
StreamChatTheme's StreamChatThemeData.messageSearchListViewTheme.
-
MessageText
-
Text widget to display in message
-
MessageThemeData
-
Class for getting message theme
-
MessageWidget
-
-
MultipartFile
-
A file to be uploaded as part of a
MultipartRequest
. This doesn't need to
correspond to a physical file.
-
Mute
-
The class that contains the information about a muted user
-
NullStreamSink<T>
-
A StreamSink that discards all events.
-
Offset4
-
Class for storing and drawing four points of a polygon
-
OGAttachmentResponse
-
Model response for
Client.enrichUrl
api call.
-
OptionListTile
-
List tile for
ChannelBottomSheet
-
Options
-
Every request can pass an Options object which will be merged with
Dio.options
-
OwnUser
-
The class that defines the own user model.
-
Pagination options.
-
PartialUpdateChannelResponse
-
Model response for Channel.updatePartial api call
-
PartialUpdateUserRequest
-
Request model for the
client.partialUpdateUser
api call.
-
Preparing
-
-
QueryBannedUsersResponse
-
Model response for StreamChatClient.queryBannedUsers api call
-
QueryChannelsResponse
-
Model response for StreamChatClient.queryChannels api call
-
QueryMembersResponse
-
Model response for StreamChatClient.queryChannels api call
-
QueryReactionsResponse
-
Model response for
channel.getReactions
api call
-
QueryRepliesResponse
-
Model response for Channel.getReplies api call
-
QueryUsersResponse
-
Model response for StreamChatClient.queryUsers api call
-
Reaction
-
The class that defines a reaction
-
ReactionIcon
-
Reaction icon data
-
ReactionPicker
-
-
Read
-
The class that defines a read event
-
RejectInviteResponse
-
Model response for Channel.rejectInvite api call
-
RemoveMembersResponse
-
Model response for Channel.removeMembers api call
-
RequestOptions
-
-
RestartableTimer
-
A non-periodic timer that can be restarted any number of times.
-
Result<T>
-
The result of a computation.
-
ResultFuture<T>
-
A Future wrapper that provides synchronous access to the result of the
wrapped Future once it's completed.
-
SearchMessagesResponse
-
Model response for StreamChatClient.search api call
-
SendActionResponse
-
Model response for Channel.sendAction api call
-
SendFileResponse
-
Model response for Channel.sendFile api call
-
SendImageResponse
-
Model response for Channel.sendImage api call
-
SendingIndicator
-
Used to show the sending status of the message
-
SendMessageResponse
-
Model response for Channel.sendMessage api call
-
SendReactionResponse
-
Model response for Channel.sendReaction api call
-
SingleSubscriptionTransformer<S, T>
-
A transformer that converts a broadcast stream into a single-subscription
stream.
-
SortOption<T>
-
Sorting options
-
StreamBackButton
-
Back button implementation
-
StreamChannel
-
Widget used to provide information about the channel to the widget tree
-
StreamChannelState
-
-
StreamChat
-
Widget used to provide information about the chat to the widget tree
-
StreamChatClient
-
The official Dart client for Stream Chat,
a service for building chat applications.
This library can be used on any Dart project and on both mobile and web apps
with Flutter.
-
StreamChatCore
-
Widget used to provide information about the chat to the widget tree.
This Widget is used to react to life cycle changes and system updates.
When the app goes into the background, the websocket connection is kept
alive for two minutes before being terminated.
-
StreamChatCoreState
-
State class associated with StreamChatCore.
-
StreamChatLocalizations
-
Defines the localized resource values used by the StreamChatFlutter widgets.
-
StreamChatState
-
The current state of the StreamChat widget
-
StreamChatTheme
-
Inherited widget providing the StreamChatThemeData to the widget tree
-
StreamChatThemeData
-
Theme data
-
StreamCloser<T>
-
A StreamTransformer that allows the caller to forcibly close the
transformed Stream.
-
StreamCompleter<T>
-
A single-subscription stream where the contents are provided later.
-
StreamGroup<T>
-
A collection of streams whose events are unified and sent through a central
stream.
-
StreamNeumorphicButton
-
Neumorphic button
-
StreamQueue<T>
-
An asynchronous pull-based interface for accessing stream events.
-
StreamQueueTransaction<T>
-
A transaction on a StreamQueue, created by StreamQueue.startTransaction.
-
StreamSinkBase<T>
-
An abstract class that implements StreamSink in terms of onAdd,
onError, and onClose methods.
-
StreamSinkCompleter<T>
-
A sink where the destination is provided later.
-
StreamSinkTransformer<S, T>
-
A StreamSinkTransformer transforms the events being passed to a sink.
-
StreamSplitter<T>
-
A class that splits a single source stream into an arbitrary number of
(single-subscription) streams (called "branch") that emit the same events.
-
StreamSvgIcon
-
Icon set of stream chat
-
StreamZip<T>
-
A stream that combines the values of other streams.
-
SubscriptionStream<T>
-
A Stream adapter for a StreamSubscription.
-
Success
-
-
SwipeAction
-
Class for slidable action
-
SyncResponse
-
Model response for StreamChatClient.sync api call
-
SystemMessage
-
It shows a date divider depending on the date difference
-
TextTheme
-
Class for holding text theme
-
-
Throttle
-
Creates a throttled function that only invokes
func
at most once per
every wait
milliseconds. The throttled function comes with a Throttle.cancel
method to cancel delayed func
invocations and a Throttle.flush method to
immediately invoke them. Provide leading
and/or trailing
to indicate
whether func
should be invoked on the leading
and/or trailing
edge of the wait
timeout.
The func
is invoked with the last arguments provided to the
throttled function. Subsequent calls to the throttled function return the
result of the last func
invocation.
-
TranslateMessageResponse
-
Model response for StreamChatClient.queryChannels api call
-
Tuple2<T1, T2>
-
Represents a 2-tuple, or pair.
-
TypingIndicator
-
Widget to show the current list of typing users
-
UnreadIndicator
-
Widget for showing an unread indicator
-
UpdateChannelResponse
-
Model response for Channel.update api call
-
UpdateMessageResponse
-
Model response for StreamChatClient.updateMessage api call
-
UpdateUsersResponse
-
Model response for StreamChatClient.updateUser api call
-
UploadState
-
Union class to hold various UploadState of a attachment.
-
User
-
Class that defines a Stream Chat User.
-
UserAvatar
-
Widget that displays a user avatar
-
UserItem
-
It shows the current User preview.
-
UserListController
-
Controller used for paginating data in ChannelListView
-
UserListCore
-
UserListCore is a simplified class that allows fetching users while
exposing UI builders.
A UserListController is used to load and paginate data.
-
UserListView
-
It shows the list of current users.
-
UserListViewTheme
-
Overrides the default style of UserListView descendants.
-
UserListViewThemeData
-
A style that overrides the default appearance of UserListViews when
used with UserListViewTheme or with the overall StreamChatTheme's
StreamChatThemeData.userListViewTheme.
-
UserMentionTile
-
This widget is used for showing user tiles for mentions
Use title, subtitle, leading, trailing for
substituting widgets in respective positions
-
UsersBloc
-
Widget dedicated to the management of a users list with pagination.
-
UsersBlocState
-
The current state of the UsersBloc
-
ValueResult<T>
-
A result representing a returned value.
-
VideoAttachment
-
Widget for showing a video attachment
-
VideoPackage
-
Class for packaging up things required for videos
-
Widget for displaying a footnote
Functions
-
chatErrorCodeFromCode(int code)
→ ChatErrorCode?
-
-
collectBytes(Stream<List<int>> source)
→ Future<Uint8List>
-
Collects an asynchronous sequence of byte lists into a single list of bytes.
-
collectBytesCancelable(Stream<List<int>> source)
→ CancelableOperation<Uint8List>
-
Collects an asynchronous sequence of byte lists into a single list of bytes.
-
debounce(Function func, Duration wait, {bool leading = false, bool trailing = true, Duration? maxWait})
→ Debounce
-
TopLevel lambda to create Debounce functions.
-
defaultMessageFilter(String currentUserId)
→ bool Function(Message)
-
Default filter for the message list
-
fileSize(dynamic size, [int round = 2])
→ String
-
A method returns a human readable string representing a file _size
-
getFileTypeImage(String? type)
→ StreamSvgIcon
-
-
getRandomPicUrl(User user)
→ String
-
Get random png with initials
-
getWebsiteName(String hostName)
→ String?
-
Get websiteName from
hostName
-
launchURL(BuildContext context, String url)
→ Future<void>
-
Launch URL
-
levenshtein(String s, String t, {bool caseSensitive = true})
→ int
-
Levenshtein algorithm implementation based on:
http://en.wikipedia.org/wiki/Levenshtein_distance#Iterative_with_two_matrix_rows
-
showConfirmationDialog(BuildContext context, {required String title, required String okText, Widget? icon, String? question, String? cancelText})
→ Future<bool?>
-
Shows confirmation dialog
-
showInfoDialog(BuildContext context, {required String title, required String okText, Widget? icon, String? details, StreamChatThemeData? theme})
→ Future<bool?>
-
Shows info dialog
-
subscriptionTransformer<T>({Future handleCancel(StreamSubscription<T>)?, void handlePause(StreamSubscription<T>)?, void handleResume(StreamSubscription<T>)?})
→ StreamTransformer<T, T>
-
Creates a StreamTransformer that modifies the behavior of subscriptions to
a stream.
-
throttle(Function func, Duration wait, {bool leading = true, bool trailing = true})
→ Throttle
-
TopLevel lambda to create Throttle functions.
-
typedStreamTransformer<S, T>(StreamTransformer transformer)
→ StreamTransformer<S, T>
-
Creates a wrapper that coerces the type of
transformer
.
-
wrapAttachmentWidget(BuildContext context, Widget attachmentWidget, ShapeBorder attachmentShape, bool reverse)
→ Widget
-
Wraps attachment widget with custom shape
Typedefs
-
ActionButtonBuilder
= Widget Function(BuildContext context, IconButton defaultActionButton)
-
Widget builder for action button.
-
AttachmentActionsBuilder
= Widget Function(BuildContext context, Attachment attachment, AttachmentActionsModal defaultActionsModal)
-
Widget builder for attachment actions modal
defaultActionsModal
is the default AttachmentActionsModal config
Use defaultActionsModal.copyWith
to easily customize it
-
AttachmentBuilder
= Widget Function(BuildContext, Message, List<Attachment>)
-
Widget builder for building attachments
-
AttachmentDownloader
= Future<String> Function(Attachment attachment, {ProgressCallback? progressCallback})
-
Callback to download an attachment asset
-
AttachmentLimitExceedListener
= void Function(int limit, String error)
-
A callback that can be passed to MessageInput.onAttachmentLimitExceed.
-
AttachmentThumbnailBuilder
= Widget Function(BuildContext, Attachment)
-
Builder for attachment thumbnails
-
ChannelInfoCallback
= void Function(Channel)
-
Callback called when tapping on a channel
-
ChannelPreviewBuilder
= Widget Function(BuildContext, Channel)
-
Builder used to create a custom ChannelPreview from a Channel
-
ChannelTapCallback
= void Function(Channel, Widget?)
-
Callback called when tapping on a channel
-
EmptyMessageSearchBuilder
= Widget Function(BuildContext context, String searchQuery)
-
Builder used when MessageSearchListView is empty
-
ErrorBuilder
= Widget Function(BuildContext context, Object error)
-
A signature for a callback which exposes an error and returns a function.
This Callback can be used in cases where an API failure occurs and the
widget is unable to render data.
-
ErrorListener
= void Function(Object error, StackTrace? stackTrace)
-
A callback that can be passed to MessageInput.onError.
-
EventHandler
= void Function(Event event)
-
A Signature for a handler function which will expose a
event
.
-
FailedBuilder
= Widget Function(BuildContext, String)
-
Widget to build on failure
-
InProgressBuilder
= Widget Function(BuildContext, int, int)
-
Widget to build in progress
-
LogHandlerFunction
= void Function(LogRecord record)
-
Handler function used for logging records. Function requires a single
LogRecord
as the only parameter.
-
MentionTileBuilder
= Widget Function(BuildContext context, Member member)
-
Builder function for building a mention tile.
-
MessageBuilder
= Widget Function(BuildContext, MessageDetails, List<Message>, MessageWidget defaultMessageWidget)
-
Widget builder for message
defaultMessageWidget
is the default MessageWidget configuration
Use defaultMessageWidget.copyWith
to easily customize it
-
MessageSearchItemBuilder
= Widget Function(BuildContext, GetMessageResponse)
-
Builder used to create a custom ListUserItem from a User
-
MessageSearchItemTapCallback
= void Function(GetMessageResponse)
-
Callback called when tapping on a user
-
OnMessageSwiped
= void Function(Message)
-
Callback on message swiped
-
OnMessageTap
= void Function(Message)
-
Callback on message tapped
-
OnQuotedMessageTap
= void Function(String?)
-
Callback for when quoted message is tapped
-
ParentMessageBuilder
= Widget Function(BuildContext, Message?, MessageWidget defaultMessageWidget)
-
Widget builder for parent message
defaultMessageWidget
is the default MessageWidget configuration
Use defaultMessageWidget.copyWith
to easily customize it
-
ProgressCallback
= void Function(int count, int total)
-
Callback to listen the progress for sending/receiving data.
-
ReplyTapCallback
= void Function(Message)
-
Callback on reply tapped
-
RequestEncoder
= List<int> Function(String request, RequestOptions options)
-
-
ResponseDecoder
= String Function(List<int> responseBytes, RequestOptions options, ResponseBody responseBody)
-
-
ShowMessageCallback
= void Function(Message message, Channel channel)
-
Callback when show message is tapped
-
SpacingWidgetBuilder
= Widget Function(BuildContext context, List<SpacingType> spacingTypes)
-
Builder for building certain spacing after widgets.
This spacing can be in form of any widgets you like.
A List of SpacingType is provided to help inform the decision of
what to build after the message.
-
SystemMessageBuilder
= Widget Function(BuildContext, Message)
-
Widget builder for system message
-
ThreadBuilder
= Widget Function(BuildContext context, Message? parent)
-
Widget builder for thread
-
ThreadTapCallback
= void Function(Message, Widget?)
-
Callback for thread taps
-
TitleBuilder
= Widget Function(BuildContext context, ConnectionStatus status, StreamChatClient client)
-
Widget builder for title
-
UserItemBuilder
= Widget Function(BuildContext, User, bool)
-
Builder used to create a custom ListUserItem from a User
-
UserMentionTileBuilder
= Widget Function(BuildContext context, User user)
-
Builder function for building a user mention tile.
-
UserTapCallback
= void Function(User, Widget?)
-
Callback called when tapping on a user
-
ValidateStatus
= bool Function(int? status)
-
-
ViewInfoCallback
= void Function(Channel)
-
Callback for when 'View Info' is tapped