ebchat 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
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
CallTokenPayload
The response to CallApi.getCallToken
CancelableCompleter<T>
A completer for a CancelableOperation.
CancelableOperation<T>
An asynchronous operation that can be cancelled.
CancelToken
You can cancel a request by using a cancel token. One token can be shared with different requests. when a token's cancel method invoked, all requests with this token will be cancelled.
Channel
Class that manages a specific channel.
ChannelAvatar
screenshot screenshot
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
ChannelLastMessageDate
A widget that displays the channel last message date.
ChannelLastMessageText
A widget that displays the last message of a channel.
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.
ChannelListTileSubtitle
A widget that displays the subtitle for StreamChannelListTile.
ChannelListView
screenshot screenshot
ChannelModel
The class that contains the information about a channel
ChannelName
It shows the current Channel name using a Text widget.
ChannelPreview
screenshot screenshot
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
Command
The class that contains the information about a command
ConnectGuestUserResponse
Model response for StreamChatClient.connectGuestUser api call
Connectivity
Discover network connectivity configurations: Distinguish between WI-FI and cellular, check WI-FI status and more.
CreateCallPayload
The response to CallApi.createCall
CustomAttachmentType
Class which holds data for a custom attachment type in the attachment picker
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.
DemoPainter
Painter for bg polygon gradient
Device
The class that contains the information about a device
EBChatService
EBChatWidget
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
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
FutureGroup<T>
A collection of futures waits until all added Futures complete.
GetMessageResponse
Model response for StreamChatClient.getMessage api call
GetMessagesByIdResponse
Model response for Channel.getMessagesById api call
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
KeyStrokeHandler
A class that manages buffering typing events and call onTypingStarted and onTypingStopped accordingly in a timed manner.
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
ListHeaderItem
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.
LogRecord
A log entry representation used to propagate information from Logger to individual handlers.
Member
The class that contains the information about the user membership in a channel
Message
The class that contains the information about a message.
MessageDetails
Class for message details
MessageInput
Inactive state
MessageInputState
State of MessageInput
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.
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.
MessageSearchListTileTitle
A widget that displays the title of a StreamMessageSearchListTile.
MessageSearchListView
It shows the list of searched messages.
MessageSearchTileMessageDate
A widget which shows formatted created date of the passed message.
MessageTextFieldController
Controller for the StreamTextField widget.
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
OGAttachmentPreview
Preview of an Open Graph attachment.
OGAttachmentResponse
Model response for Client.enrichUrl api call.
Options
Every request can pass an Options object which will be merged with Dio.options
OverlayOptions
Class that contains the parameters for building an overlay entry
OwnUser
The class that defines the own user model.
PagedValue<Key, Value>
Paged value that can be used with PagedValueNotifier.
PagedValueGridView<K, V>
A GridView that loads more pages when the user scrolls to the end of the grid.
PagedValueListView<K, V>
A ListView that loads more pages when the user scrolls to the end of the list.
PagedValueNotifier<Key, Value>
A PagedValueNotifier that uses a PagedListenable to load data.
PaginationParams
Pagination options.
PartialUpdateChannelResponse
Model response for Channel.updatePartial api call
PartialUpdateUserRequest
Request model for the client.partialUpdateUser api call.
PermissionType
Describes capabilities of a user vis-a-vis a channel
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
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
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
StreamAttachmentFileUploader
Stream's default implementation of AttachmentFileUploader
StreamAttachmentPackage
The StreamAttachmentPackage class is basically meant to wrap individual attachments with their corresponding message
StreamAttachmentPicker
A widget that allows to pick an attachment.
StreamAttachmentUploadStateBuilder
Widget to display attachment upload state
StreamAvatarThemeData
A style that overrides the default appearance of various avatar widgets.
StreamBackButton
Back button implementation
StreamChannel
Widget used to provide information about the channel to the widget tree
StreamChannelAvatar
screenshot screenshot
StreamChannelGridTile
A widget that displays a user.
StreamChannelGridView
A GridView that shows a grid of Users, it uses StreamChannelGridTile as a default item.
StreamChannelHeader
screenshot screenshot
StreamChannelHeaderTheme
Overrides the default style of ChannelHeader descendants.
StreamChannelHeaderThemeData
A style that overrides the default appearance of ChannelHeaders when used with StreamChannelHeaderTheme or with the overall StreamChatTheme's StreamChatThemeData.channelHeaderTheme.
StreamChannelInfoBottomSheet
A BottomSheet that shows information about a Channel.
StreamChannelListController
A controller for a Channel list.
StreamChannelListErrorWidget
A widget that is used to display an error screen when StreamChannelListController fails to load initial channels.
StreamChannelListEventHandler
Contains handlers that are called from StreamChannelListController for certain Events.
StreamChannelListHeader
It shows the current StreamChatClient status.
StreamChannelListHeaderTheme
Overrides the default style of ChannelListHeader descendants.
StreamChannelListHeaderThemeData
Theme dedicated to the ChannelListHeader
StreamChannelListSeparator
A widget that is used to display a separator between StreamChannelListTile items.
StreamChannelListTile
A widget that displays a channel preview.
StreamChannelListView
A ListView that shows a list of Channels, it uses StreamChannelListTile as a default item.
StreamChannelListViewTheme
Overrides the default style of ChannelListView descendants.
StreamChannelListViewThemeData
A style that overrides the default appearance of ChannelListViews when used with StreamChannelListViewTheme or with the overall StreamChatTheme's StreamChatThemeData.channelListViewTheme.
StreamChannelName
It shows the current Channel name using a Text widget.
StreamChannelPreviewTheme
Overrides the default style of ChannelPreview descendants.
StreamChannelPreviewThemeData
A style that overrides the default appearance of ChannelPreviews when used with StreamChannelPreviewTheme or with the overall StreamChatTheme's StreamChatThemeData.channelPreviewTheme.
StreamChannelState
StreamChat
Widget used to provide information about the chat to the widget tree
StreamChatApi
ApiClient that wraps every other specific api
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.
StreamColorTheme
Theme that holds colors
StreamCompleter<T>
A single-subscription stream where the contents are provided later.
StreamConnectionStatusBuilder
Widget that builds itself based on the latest snapshot of interaction with a Stream of type ConnectionStatus.
StreamCountdownButton
Button for showing visual component of slow mode.
StreamDateDivider
It shows a date divider depending on the date difference
StreamDeletedMessage
Widget to display deleted message.
StreamFileAttachment
Widget for displaying file attachments
StreamFullScreenMedia
A full screen image widget
StreamGalleryFooter
Footer widget for media display
StreamGalleryFooterTheme
Overrides the default style of GalleryFooter descendants.
StreamGalleryFooterThemeData
A style that overrides the default appearance of GalleryFooters when used with StreamGalleryFooterTheme or with the overall StreamChatTheme's StreamChatThemeData.galleryFooterTheme.
StreamGalleryHeader
Header/AppBar widget for media display screen
StreamGalleryHeaderTheme
Overrides the default style of GalleryHeader descendants.
StreamGalleryHeaderThemeData
A style that overrides the default appearance of GalleryHeaders when used with StreamGalleryHeaderTheme or with the overall StreamChatTheme's StreamChatThemeData.galleryHeaderTheme.
StreamGiphyAttachment
Widget for showing a GIF attachment
StreamGradientAvatar
Fallback user avatar with a polygon gradient overlayed with text
StreamGroup<T>
A collection of streams whose events are unified and sent through a central stream.
StreamImageAttachment
Widget for showing an image attachment
StreamInfoTile
Tile to display a message, used in stream chat to display connection status
StreamMessageAction
Class describing a message action
StreamMessageInput
Inactive state:
StreamMessageInputController
Controller for storing and mutating a Message value.
StreamMessageInputState
State of StreamMessageInput
StreamMessageInputTheme
Overrides the default style of MessageInput descendants.
StreamMessageInputThemeData
A style that overrides the default appearance of MessageInput widgets when used with StreamMessageInputTheme or with the overall StreamChatTheme's StreamChatThemeData.messageInputTheme.
StreamMessageListView
screenshot screenshot
StreamMessageListViewTheme
Overrides the default style of MessageListView descendants.
StreamMessageListViewThemeData
A style that overrides the default appearance of MessageListViews when used with StreamMessageListViewTheme or with the overall StreamChatTheme's StreamChatThemeData.messageListViewTheme.
StreamMessagePreviewText
A widget that renders a preview of the message text.
StreamMessageSearchGridView
A GridView that shows a grid of GetMessageResponses, it uses StreamMessageSearchGridTile as a default item.
StreamMessageSearchListController
A controller for a user list.
StreamMessageSearchListSeparator
A widget that is used to display a separator between StreamMessageSearchListTile items.
StreamMessageSearchListTile
A widget that displays a message search item.
StreamMessageSearchListView
A ListView that shows a list of GetMessageResponses, it uses StreamMessageSearchListTile as a default item.
StreamMessageSearchListViewTheme
Overrides the default style of MessageSearchListView descendants.
StreamMessageSearchListViewThemeData
A style that overrides the default appearance of MessageSearchListViews when used with MessageSearchListView or with the overall StreamChatTheme's StreamChatThemeData.messageSearchListViewTheme.
StreamMessageSendButton
A widget that displays a sending button.
StreamMessageText
Text widget to display in message
StreamMessageTextField
A widget the wraps the TextField and adds some StreamChat specifics.
StreamMessageThemeData
Class for getting message theme
StreamMessageWidget
screenshot screenshot
StreamMultiOverlay
Widget that renders a single overlay widget from a list of overlayOptions It shows the first one that is visible
StreamNeumorphicButton
Neumorphic button
StreamOptionListTile
List tile for ChannelBottomSheet
StreamQueue<T>
An asynchronous pull-based interface for accessing stream events.
StreamQueueTransaction<T>
A transaction on a StreamQueue, created by StreamQueue.startTransaction.
StreamReactionIcon
Reaction icon data
StreamReactionPicker
screenshot screenshot
StreamRestorableMessageInputController
A RestorableProperty that knows how to store and restore a StreamMessageInputController.
StreamScrollViewEmptyWidget
A widget that shows an empty view when the StreamScrollView loads empty data.
StreamSendingIndicator
Used to show the sending status of the message
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
StreamSystemMessage
It shows a widget for the message with a system message type.
StreamTextTheme
Class for holding text theme
StreamThreadHeader
screenshot screenshot
StreamTypingIndicator
Widget to show the current list of typing users
StreamUnreadIndicator
Widget for showing an unread indicator
StreamUserAvatar
Widget that displays a user avatar
StreamUserGridTile
A widget that displays a user.
StreamUserGridView
A GridView that shows a grid of Users, it uses StreamUserGridTile as a default item.
StreamUserItem
It shows the current User preview.
StreamUserListController
A controller for a user list.
StreamUserListSeparator
A widget that is used to display a separator between StreamUserListTile items.
StreamUserListTile
A widget that displays a user.
StreamUserListView
A ListView that shows a list of Users, it uses StreamUserListTile as a default item.
StreamUserListViewTheme
Overrides the default style of UserListView descendants.
StreamUserListViewThemeData
A style that overrides the default appearance of UserListViews when used with StreamUserListViewTheme or with the overall StreamChatTheme's StreamChatThemeData.userListViewTheme.
StreamUserMentionTile
This widget is used for showing user tiles for mentions Use title, subtitle, leading, trailing for substituting widgets in respective positions
StreamVideoAttachment
Widget for showing a video attachment
StreamVisibleFootnote
Widget for displaying a footnote
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
TextInputType
The type of information for which to optimize the text input control.
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.
ThumbnailSize
The dimensions of the thumbnail data for an AssetEntity.
TranslateMessageResponse
Model response for StreamChatClient.queryChannels api call
Tuple2<T1, T2>
Represents a 2-tuple, or pair.
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.
UserLastActive
A widget that displays a user's last active time.
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.
UsersBloc
Widget dedicated to the management of a users list with pagination.
UsersBlocState
The current state of the UsersBloc
Uuid
uuid for Dart Author: Yulian Kuncheff Released under MIT License.
UuidValue
ValueResult<T>
A result representing a returned value.
VideoPackage
Class for packaging up things required for videos

Enums

ActionsLocation
Location for actions on the StreamMessageInput.
AttachmentSource
Enum for identifying type of attachment
ChatErrorCode
Complete list of errors that are returned by the API together with the description and API code.
ConnectionStatus
Used to notify the WS connection status
ConnectivityResult
Connection status check result.
DefaultAttachmentTypes
Default attachments for widget.
DioErrorType
DisplayWidget
The display behaviour of a widget
ListFormat
ListFormat specifies the array format (a single parameter with multiple parameter or multiple parameters with the same name) and the separator for array items.
MessageSendingStatus
Enum defining the status of a sending message.
PushProvider
Provider used to send push notifications.
QueryDirection
Specifies query direction for pagination
ResponseType
ResponseType indicates which transformation should be automatically applied to the response data by Dio.
ReturnActionType
Return action for coming back from pages
SendButtonLocation
Available locations for the sendMessage button relative to the textField.
SmartDashesType
Indicates how to handle the intelligent replacement of dashes in text input.
SmartQuotesType
Indicates how to handle the intelligent replacement of quotes in text input.
SpacingType
Spacing Types (These are properties of a message to help inform the decision of how much space / which widget to build after it)
TextCapitalization
Configures how the platform keyboard will select an uppercase or lowercase keyboard.
TextInputAction
An action the user has requested the text input control to perform.
ThumbnailFormat
Which format the thumbnail should be, generally support JPG and PNG.
Units
ValidationMode

Mixins

OptionsMixin

Extensions

AttachmentPackagesX on Message
An easy way to handle attachment related operations on a message
ChatErrorCodeX on ChatErrorCode
ChunkedStreamReaderByteStreamExt on ChunkedStreamReader<int>
Extensions for using ChunkedStreamReader with byte-streams.
IconButtonX on IconButton
Extension on IconButton
IterableX on Iterable<T?>
Useful extension functions for Iterable
MapX on Map<K?, V?>
Useful extension functions for Map
RateLimit on Function
Useful rate limiter extensions for Function class.
StreamExtensions on Stream<T>
Utility extensions on Stream.
StreamSinkExtensions on StreamSink<T>
Extensions on StreamSink to make stream transformations more fluent.
StringX on String
Useful extension functions for String

Constants

colorGradients → const List<List<Color>>
Gradient list for polygons
defaultChannelGridViewDelegate → const SliverGridDelegateWithFixedCrossAxisCount
Default grid delegate for StreamChannelGridView.
defaultChannelPagedLimit → const int
The default channel page limit to load.
defaultMessageSearchGridViewDelegate → const SliverGridDelegateWithFixedCrossAxisCount
Default grid delegate for StreamMessageSearchGridView.
defaultMessageSearchPagedLimit → const int
The default channel page limit to load.
defaultUserGridViewDelegate → const SliverGridDelegateWithFixedCrossAxisCount
Default grid delegate for StreamUserGridView.
defaultUserPagedLimit → const int
The default channel page limit to load.
incomingTypingStartEventTimeout → const int
The maximum time the incoming Event.typingStart event is valid before a Event.typingStop event is emitted automatically.
kDefaultMaxAttachmentSize → const int
Default maximum size for media attachments.

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.
defaultChannelListViewSeparatorBuilder(BuildContext context, List<Channel> items, int index) → Widget
Default separator builder for StreamChannelListView.
defaultMessageFilter(String currentUserId) → bool Function(Message)
Default filter for the message list
defaultMessageSearchListViewSeparatorBuilder(BuildContext context, List<GetMessageResponse> responses, int index) → Widget
Default separator builder for StreamMessageSearchListView.
defaultUserListViewSeparatorBuilder(BuildContext context, List<User> users, int index) → Widget
Default separator builder for StreamUserListView.
fileSize(dynamic size, [int round = 2]) → String
A method returns a human readable string representing a file _size
getEffectiveCenterTitle(ThemeData theme, {bool? centerTitle, List<Widget>? actions}) → bool
Get centerTitle considering a default and platform specific behaviour
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
showChannelInfoBottomSheet<T>({required BuildContext context, required Channel channel, Color? backgroundColor, double? elevation, BoxConstraints? constraints, AnimationController? transitionAnimationController, Clip? clipBehavior = Clip.hardEdge, ShapeBorder? shape = _kDefaultChannelInfoBottomSheetShape, void onMemberTap(Member)?, VoidCallback? onViewInfoTap, VoidCallback? onLeaveChannelTap, VoidCallback? onDeleteConversationTap, VoidCallback? onCancelTap}) → PersistentBottomSheetController
Shows a material design bottom sheet in the nearest Scaffold ancestor. If you wish to show a persistent bottom sheet, use Scaffold.bottomSheet.
showChannelInfoModalBottomSheet<T>({required BuildContext context, required Channel channel, Color? backgroundColor, double? elevation, BoxConstraints? constraints, Color? barrierColor, bool isScrollControlled = true, bool useRootNavigator = false, bool isDismissible = true, bool enableDrag = true, RouteSettings? routeSettings, AnimationController? transitionAnimationController, Clip? clipBehavior = Clip.hardEdge, ShapeBorder? shape = _kDefaultChannelInfoBottomSheetShape, void onMemberTap(Member)?, VoidCallback? onViewInfoTap, VoidCallback? onLeaveChannelTap, VoidCallback? onDeleteConversationTap, VoidCallback? onCancelTap}) → Future<T?>
Shows a modal material design bottom sheet.
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, {DownloadedPathCallback? downloadedPathCallback, ProgressCallback? progressCallback})
Callback to download an attachment asset
AttachmentFileUploaderProvider = AttachmentFileUploader Function(StreamHttpClient httpClient)
Signature for a function which provides instance of AttachmentFileUploader
AttachmentLimitExceedListener = void Function(int limit, String error)
A callback that can be passed to StreamMessageInput.onAttachmentLimitExceed.
AttachmentsPickerBuilder = Widget Function(BuildContext context, StreamMessageInputController messageInputController, StreamAttachmentPicker defaultPicker)
Widget builder for a custom attachment picker.
AttachmentThumbnailBuilder = Widget Function(BuildContext, Attachment)
Builder for attachment thumbnails.
AttachmentUploadStateBuilder = StreamAttachmentUploadStateBuilder
Widget to display attachment upload state
AvatarThemeData = StreamAvatarThemeData
A style that overrides the default appearance of various avatar widgets.
ChannelHeader = StreamChannelHeader
ChannelHeaderTheme = StreamChannelHeaderTheme
Overrides the default style of ChannelHeader descendants.
ChannelHeaderThemeData = StreamChannelHeaderThemeData
A style that overrides the default appearance of ChannelHeaders when used with StreamChannelHeaderTheme or with the overall StreamChatTheme's StreamChatThemeData.channelHeaderTheme.
ChannelInfoCallback = void Function(Channel)
Callback called when tapping on a channel
ChannelListHeader = StreamChannelListHeader
It shows the current StreamChatClient status.
ChannelListHeaderTheme = StreamChannelListHeaderTheme
Overrides the default style of ChannelListHeader descendants.
ChannelListHeaderThemeData = StreamChannelListHeaderThemeData
Theme dedicated to the ChannelListHeader
ChannelListViewTheme = StreamChannelListViewTheme
Overrides the default style of ChannelListView descendants.
ChannelListViewThemeData = StreamChannelListViewThemeData
A style that overrides the default appearance of ChannelListViews when used with StreamChannelListViewTheme or with the overall StreamChatTheme's StreamChatThemeData.channelListViewTheme.
ChannelPreviewBuilder = Widget Function(BuildContext, Channel)
Builder used to create a custom StreamChannelPreview from a Channel
ChannelPreviewTheme = StreamChannelPreviewTheme
Overrides the default style of ChannelPreview descendants.
ChannelPreviewThemeData = StreamChannelPreviewThemeData
A style that overrides the default appearance of ChannelPreviews when used with StreamChannelPreviewTheme or with the overall StreamChatTheme's StreamChatThemeData.channelPreviewTheme.
ChannelTapCallback = void Function(Channel, Widget?)
Callback called when tapping on a channel
ColorTheme = StreamColorTheme
Theme that holds colors
ConnectionStatusBuilder = StreamConnectionStatusBuilder
Widget that builds itself based on the latest snapshot of interaction with a Stream of type ConnectionStatus.
CustomAttachmentIconBuilder = Widget Function(BuildContext context, bool active)
Callback for building an icon for a custom attachment type.
DateDivider = StreamDateDivider
It shows a date divider depending on the date difference
DeletedMessage = StreamDeletedMessage
Widget to display deleted message.
DownloadedPathCallback = void Function(String? path)
Callback to receive the path once the attachment asset is downloaded
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 StreamMessageInput.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
FileAttachment = StreamFileAttachment
Widget for displaying file attachments
FilePickerCallback = void Function(DefaultAttachmentTypes fileType, {bool camera})
Callback for when a file has to be picked.
FullScreenMedia = StreamFullScreenMedia
A full screen image widget
GalleryFooter = StreamGalleryFooter
Footer widget for media display
GalleryFooterTheme = StreamGalleryFooterTheme
Overrides the default style of GalleryFooter descendants.
GalleryFooterThemeData = StreamGalleryFooterThemeData
A style that overrides the default appearance of GalleryFooters when used with StreamGalleryFooterTheme or with the overall StreamChatTheme's StreamChatThemeData.galleryFooterTheme.
GalleryHeader = StreamGalleryHeader
Header/AppBar widget for media display screen
GalleryHeaderTheme = StreamGalleryHeaderTheme
GalleryHeaderThemeData = StreamGalleryHeaderThemeData
A style that overrides the default appearance of GalleryHeaders when used with StreamGalleryHeaderTheme or with the overall StreamChatTheme's StreamChatThemeData.galleryHeaderTheme.
GiphyAttachment = StreamGiphyAttachment
Widget for showing a GIF attachment
GradientAvatar = StreamGradientAvatar
Fallback user avatar with a polygon gradient overlayed with text
ImageAttachment = StreamImageAttachment
Widget for showing an image attachment
InfoTile = StreamInfoTile
Tile to display a message, used in stream chat to display connection status
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.
MessageAction = StreamMessageAction
Class describing a message action
MessageBuilder = Widget Function(BuildContext, MessageDetails, List<Message>, StreamMessageWidget defaultMessageWidget)
Widget builder for message defaultMessageWidget is the default StreamMessageWidget configuration Use defaultMessageWidget.copyWith to easily customize it
MessageInputTheme = StreamMessageInputTheme
Overrides the default style of MessageInput descendants.
MessageInputThemeData = StreamMessageInputThemeData
A style that overrides the default appearance of MessageInput widgets when used with StreamMessageInputTheme or with the overall StreamChatTheme's StreamChatThemeData.messageInputTheme.
MessageListView = StreamMessageListView
screenshot screenshot
MessageListViewTheme = StreamMessageListViewTheme
Overrides the default style of MessageListView descendants.
MessageListViewThemeData = StreamMessageListViewThemeData
A style that overrides the default appearance of MessageListViews when used with StreamMessageListViewTheme or with the overall StreamChatTheme's StreamChatThemeData.messageListViewTheme.
MessageRelatedBuilder = Widget Function(BuildContext context, StreamMessageInputController messageInputController)
Widget builder for widgets that may require data from the StreamMessageInputController.
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
MessageSearchListViewTheme = StreamMessageSearchListViewTheme
Overrides the default style of MessageSearchListView descendants.
MessageSearchListViewThemeData = StreamMessageSearchListViewThemeData
MessageText = StreamMessageText
Text widget to display in message
MessageThemeData = StreamMessageThemeData
Class for getting message theme
MessageValidator = bool Function(Message message)
A function that returns true if the message is valid and can be sent.
MessageWidget = StreamMessageWidget
screenshot screenshot
MultiOverlay = StreamMultiOverlay
Widget that renders a single overlay widget from a list of overlayOptions It shows the first one that is visible
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
OptionListTile = StreamOptionListTile
List tile for ChannelBottomSheet
PagedValueListenableBuilder<Key, Value> = ValueListenableBuilder<PagedValue<Key, Value>>
Value listenable for paged data.
PagedValueScrollViewIndexedWidgetBuilder<T> = Widget Function(BuildContext context, List<T> values, int index)
Signature for a function that creates a widget for a given index, e.g., in a PagedValueListView and PagedValueGridView.
PagedValueScrollViewLoadMoreErrorBuilder = Widget Function(BuildContext context, StreamChatError error)
Signature for the item builder that creates the children of the PagedValueListView and PagedValueGridView.
ParentMessageBuilder = Widget Function(BuildContext, Message?, StreamMessageWidget defaultMessageWidget)
Widget builder for parent message defaultMessageWidget is the default StreamMessageWidget configuration Use defaultMessageWidget.copyWith to easily customize it
ProgressCallback = void Function(int count, int total)
Callback to listen the progress for sending/receiving data.
ReactionIcon = StreamReactionIcon
Reaction icon data
ReactionPicker = StreamReactionPicker
screenshot screenshot
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)
SendingIndicator = StreamSendingIndicator
Used to show the sending status of the message
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.
StreamChannelGridViewIndexedWidgetBuilder = StreamScrollViewIndexedWidgetBuilder<Channel, StreamChannelGridTile>
Signature for the item builder that creates the children of the StreamChannelGridView.
StreamChannelListViewIndexedWidgetBuilder = StreamScrollViewIndexedWidgetBuilder<Channel, StreamChannelListTile>
Signature for the item builder that creates the children of the StreamChannelListView.
StreamMessageSearchGridViewIndexedWidgetBuilder = PagedValueScrollViewIndexedWidgetBuilder<GetMessageResponse>
Signature for the item builder that creates the children of the StreamMessageSearchGridView.
StreamMessageSearchListViewIndexedWidgetBuilder = StreamScrollViewIndexedWidgetBuilder<GetMessageResponse, StreamMessageSearchListTile>
Signature for the item builder that creates the children of the StreamMessageSearchListView.
StreamMessageValueListenableBuilder = ValueListenableBuilder<Message>
A value listenable builder related to a Message.
StreamScrollViewIndexedWidgetBuilder<ItemType, WidgetType extends Widget> = Widget Function(BuildContext context, List<ItemType> items, int index, WidgetType defaultWidget)
Signature for a function that creates a widget for a given index, e.g., in a list, grid.
StreamUserGridViewIndexedWidgetBuilder = StreamScrollViewIndexedWidgetBuilder<User, StreamUserGridTile>
Signature for the item builder that creates the children of the StreamUserGridView.
StreamUserListViewIndexedWidgetBuilder = StreamScrollViewIndexedWidgetBuilder<User, StreamUserListTile>
Signature for the item builder that creates the children of the StreamUserListView.
SystemMessage = StreamSystemMessage
It shows a widget for the message with a system message type.
SystemMessageBuilder = Widget Function(BuildContext, Message)
Widget builder for system message
TextStyleBuilder = TextStyle? Function(BuildContext context, String text)
A function that takes a BuildContext and returns a TextStyle.
TextTheme = StreamTextTheme
Class for holding text theme
ThreadBuilder = Widget Function(BuildContext context, Message? parent)
Widget builder for thread
ThreadHeader = StreamThreadHeader
screenshot screenshot
ThreadTapCallback = void Function(Message, Widget?)
Callback for thread taps
TitleBuilder = Widget Function(BuildContext context, ConnectionStatus status, StreamChatClient client)
Widget builder for title
TypingIndicator = StreamTypingIndicator
Widget to show the current list of typing users
UnreadIndicator = StreamUnreadIndicator
Widget for showing an unread indicator
UserAvatar = StreamUserAvatar
Widget that displays a user avatar
UserItem = StreamUserItem
It shows the current User preview.
UserItemBuilder = Widget Function(BuildContext, User, bool)
Builder used to create a custom ListUserItem from a User
UserListViewTheme = StreamUserListViewTheme
Overrides the default style of UserListView descendants.
UserListViewThemeData = StreamUserListViewThemeData
A style that overrides the default appearance of UserListViews when used with StreamUserListViewTheme or with the overall StreamChatTheme's StreamChatThemeData.userListViewTheme.
UserMentionTile = StreamUserMentionTile
This widget is used for showing user tiles for mentions Use title, subtitle, leading, trailing for substituting widgets in respective positions
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)
VideoAttachment = StreamVideoAttachment
Widget for showing a video attachment
ViewInfoCallback = void Function(Channel)
Callback for when 'View Info' is tapped
VisibleFootnote = StreamVisibleFootnote
Widget for displaying a footnote

Exceptions / Errors

DioError
DioError describes the error info when request failed.
StreamChatError
StreamChatNetworkError
StreamWebSocketError