stream_chat_jaspr library

Experimental Jaspr components for Stream Chat.

Layered the same way as the Flutter SDK: the pure-Dart stream_chat client does all the networking and state, and this package only renders it. The whole stream_chat surface is re-exported, so a single import is enough.

import 'package:stream_chat_jaspr/stream_chat_jaspr.dart';

final client = StreamChatClient('your-api-key');
await client.connectUser(User(id: 'jane'), token);

// ...
StreamChat(
  client: client,
  child: StreamChannel(
    channel: client.channel('messaging', id: 'general'),
    child: div([
      StreamChannelHeader(),
      StreamMessageListView(),
      StreamTypingIndicator(),
      StreamMessageInput(),
    ], classes: 'sc-channel-pane'),
  ),
)

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
AddUserGroupMembersResponse
Model response for StreamChatClient.addUserGroupMembers api call
AppSettings
The configuration of a Stream Chat application.
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
AttachmentFile
The class that contains the information about an attachment file
AttachmentFileUploader
Class responsible for uploading images and files to a given channel
AutocompleteQuery
An active autocomplete trigger in the composer.
BackOff<T>
Object holding options for retrying a function.
BannedUser
Contains information about a User that was banned from a Channel or App.
BlockedUsersResponse
Model response for StreamChatClient.queryBlockedUsers api call
CancelableCompleter<T>
A completer for a CancelableOperation.
CancelableOperation<T>
An asynchronous operation that can be cancelled.
CancelToken
Controls cancellation of Dio's requests.
CastPollVoteResponse
Model response for StreamChatClient.castPollVote api call
Channel
Class that manages a specific channel.
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
ChannelDeliveryReporter
Manages the delivery reporting for channel messages.
ChannelModel
The class that contains the information about a channel
ChannelMute
The class that contains the information about a muted channel
ChannelPushPreference
The class that contains push preferences for a specific channel
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.
ChatPreferences
Granular push-notification preferences split by mention category.
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
CompletedState
Represents the completed state of a message.
ConnectGuestUserResponse
Model response for StreamChatClient.connectGuestUser api call
CreateDraftResponse
Model response for StreamChatClient.createDraft api call
CreatePollOptionResponse
Model response for StreamChatClient.createPollOption api call
CreatePollResponse
Model response for StreamChatClient.createPoll api call
CreateReminderResponse
Model response for StreamChatClient.createReminder api call
CreateUserGroupResponse
Model response for StreamChatClient.createUserGroup api call
CurrentPlatform
Utility class that provides information on the current platform
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.
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.
DeliveryReceipts
The settings for the delivery receipt events.
Device
The class that contains the information about a device
Draft
A model class representing a draft message.
DraftMessage
The class that contains the information about a draft message.
DraftResponse
Base Model response for draft based api calls.
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
EventSinkBase<T>
An abstract class that implements EventSink in terms of onAdd, onError, and onClose methods.
EventType
This class defines some basic event types
FailedState
Represents the failed state of a message.
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.
GetActiveLiveLocationsResponse
Model response for StreamChatClient.getActiveLiveLocations api call
GetAppSettingsResponse
Model response for StreamChatClient.getAppSettings api call.
GetDraftResponse
Model response for StreamChatClient.getDraft api call
GetMessageResponse
Model response for StreamChatClient.getMessage api call
GetMessagesByIdResponse
Model response for Channel.getMessagesById api call
GetPollOptionResponse
Model response for StreamChatClient.getPollOption api call
GetPollResponse
Model response for StreamChatClient.getPoll api call
GetThreadResponse
Model response for StreamChatClient.getThread api call
GetUnreadCountResponse
Model response for StreamChatClient.getUnreadCount api call
GetUserGroupResponse
Model response for StreamChatClient.getUserGroup api call
GiphyInfo
A class that contains extra information about a Giphy attachment.
Interceptor
Interceptor helps to deal with RequestOptions, Response, and DioException during the lifecycle of a request before it reaches users.
InterceptorsWrapper
A helper class to create interceptors in ease.
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.
KeyStrokeHandler
A class that manages buffering typing events and call onTypingStarted and onTypingStopped accordingly in a timed manner.
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
ListUserGroupsResponse
Model response for StreamChatClient.listUserGroups api call
Location
A model class representing a shared location.
LocationCoordinates
A model class representing a location with latitude and longitude.
Logger
Use a Logger to log debug messages.
LoggingInterceptor
Interceptor dedicated to logging
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
MemberUpdatePayload
Payload for updating a member.
Message
The class that contains the information about a message.
MessageDeleteScope
Represents the scope of deletion for a message.
MessageDelivery
A delivery receipt for a message in a channel.
MessageReminder
A model class representing a message reminder.
MessageReminderResponse
Base Model response for draft based api calls.
MessageResponse
Base Model response for message based api calls.
MessageRules
Provides validation rules for message operations.
MessageState
Represents the various states a message can be in.
MessageToken
A run of message text of a single kind.
Moderation
Model holding data for a message moderated by Moderation V1-V2.
MultipartFile
An upload content that is a part of 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.
OGAttachmentResponse
Model response for Client.enrichUrl api call.
Options
The configuration for a single request. BaseOptions and Options will be merged into one RequestOptions before sending the requests. See Options.compose.
OutgoingState
Represents the state of an outgoing message.
OwnUser
The class that defines the own user model.
PaginationParams
Pagination options.
PartialUpdateChannelResponse
Model response for Channel.updatePartial api call
PartialUpdateMemberResponse
Model response for update member API calls, such as StreamChatClient.updateMemberPartial
PartialUpdateUserRequest
Request model for the client.partialUpdateUser api call.
Poll
A model class representing a poll.
PollOption
A model class representing a poll option.
PollVote
A model class representing a poll vote.
PollVotingMode
The Voting mode for a poll.
PredefinedFilter
The resolved predefined filter spec returned by the server.
PrivacySettings
The privacy settings of the current user.
PushPreference
The class that contains push preferences for a user
PushPreferenceInput
Input for push preferences, used for creating or updating preferences for a user or a specific channel.
QueryBannedUsersResponse
Model response for StreamChatClient.queryBannedUsers api call
QueryChannelsResponse
Model response for StreamChatClient.queryChannels api call
QueryChannelsResult
The result of a queryChannelsWithResult call on StreamChatClient.
QueryDraftsResponse
Model response for StreamChatClient.queryDrafts api call
QueryMembersResponse
Model response for StreamChatClient.queryChannels api call
QueryPollsResponse
Model response for StreamChatClient.queryPolls api call
QueryPollVotesResponse
Model response for StreamChatClient.queryPollVotes api call
QueryReactionsResponse
Model response for channel.getReactions or channel.queryReactions api call
QueryRemindersResponse
Model response for StreamChatClient.queryReminders api call
QueryRepliesResponse
Model response for Channel.getReplies api call
QueryThreadsResponse
Model response for StreamChatClient.queryThreads api call
QueryUsersResponse
Model response for StreamChatClient.queryUsers api call
Reaction
The class that defines a reaction
ReactionGroup
A model class representing a reaction group.
ReactionSorting
A group of comparators for sorting ReactionGroups.
Read
The class that defines a read event
ReadReceipts
The settings for the read receipt events.
RejectInviteResponse
Model response for Channel.rejectInvite api call
RemoveMembersResponse
Model response for Channel.removeMembers api call
RemovePollVoteResponse
Model response for StreamChatClient.removePollVote api call
RemoveUserGroupMembersResponse
Model response for StreamChatClient.removeUserGroupMembers api call
RequestOptions
The internal request option class that is the eventual result after BaseOptions and Options are composed.
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.
RetryPolicy
The retry policy associated to a client.
Role
Class that defines a role.
SearchMessagesResponse
Model response for StreamChatClient.search api call
SearchRolesResponse
Model response for StreamChatClient.searchRoles api call
SearchUserGroupsResponse
Model response for StreamChatClient.searchUserGroups api call
SendActionResponse
Model response for Channel.sendAction api call
SendAttachmentResponse
Base Model response for Channel.sendImage and Channel.sendFile api call.
SendFileResponse
Model response for Channel.sendFile 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 extends ComparableFieldProvider>
A sort specification for objects that implement ComparableFieldProvider.
StreamAttachmentFileUploader
Stream's default implementation of AttachmentFileUploader
StreamAttachmentList
Renders the attachments on a message.
StreamAvatar
A circular avatar that falls back to coloured initials.
StreamChannel
Provides a watched Channel to the component tree.
StreamChannelHeader
Header bar for the surrounding StreamChannel: avatar, title, and presence.
StreamChannelListController
Loads and maintains a paginated, live-updating list of channels.
StreamChannelListTile
A single row in a StreamChannelListView.
StreamChannelListView
A scrollable, paginated list of channels.
StreamChannelScope
The InheritedComponent that carries the StreamChannelState down the tree.
StreamChannelState
State of a StreamChannel scope. Obtain it with StreamChannel.of(context).
StreamChat
Provides a StreamChatClient and a StreamChatTheme to the component 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.
StreamChatScope
The InheritedComponent that carries the StreamChatState down the tree.
StreamChatState
State of a StreamChat scope. Obtain it with StreamChat.of(context).
StreamChatTheme
Design tokens for the Stream Chat Jaspr components.
StreamChatTranslations
Every user-facing string rendered by this package.
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.
StreamComposerDraft
A captured composer draft, returned by StreamMessageComposerController.snapshot.
StreamComposerScope
Carries a StreamMessageComposerController down the tree.
StreamConnectionStatusBanner
A banner that appears while the websocket is reconnecting or offline.
StreamGroup<T>
A collection of streams whose events are unified and sent through a central stream.
StreamHttpClient
This is where we configure the base url, headers, query parameters and convenient methods for http verbs with error parsing.
StreamHttpClientOptions
Client options to modify StreamHttpClient
StreamImageGallery
A full-viewport viewer for the images on a message.
StreamMessageActions
The controls that appear on a message while the pointer is over it.
StreamMessageComposerController
Everything the composer is currently holding: draft text, attachments, and whether it is quoting, editing, or replying in a thread.
StreamMessageInput
The message composer.
StreamMessageListView
A scrollable list of the messages in the surrounding StreamChannel.
StreamMessageSearchController
Runs message searches and holds their results.
StreamMessageSearchView
A search field and its results.
StreamMessageTile
Renders a single message: avatar, author line, bubble, attachments, reactions, and the controls that act on it.
StreamPopover
A small floating panel anchored to whatever renders it.
StreamQueue<T>
An asynchronous pull-based interface for accessing stream events.
StreamQueueTransaction<T>
A transaction on a StreamQueue, created by StreamQueue.startTransaction.
StreamReactionPicker
The row of reactions offered when adding one to a 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.
StreamThreadView
The replies to a single message, with their own composer.
StreamTypingIndicator
Shows who is currently typing in the surrounding StreamChannel.
StreamZip<T>
A stream that combines the values of other streams.
SubscriptionStream<T>
A Stream adapter for a StreamSubscription.
SyncResponse
Model response for StreamChatClient.sync api call
SystemEnvironment
A class that represents the environment in which the Stream Chat SDK is running.
Thread
A model class representing a thread. Threads are a way to group replies to a message in a channel.
ThreadOptions
Options for querying threads.
ThreadParticipant
A model class representing a user that is participating in a thread.
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
TypingIndicators
The settings for typing indicator events.
UnreadCountsChannel
A model class representing information for a specific channel.
UnreadCountsChannelType
A model class representing aggregated unread count information for a specific channel type.
UnreadCountsThread
A model class representing unread count information for a specific thread.
UpdateChannelResponse
Model response for Channel.update api call
UpdateMessageResponse
Model response for StreamChatClient.updateMessage api call
UpdatePollOptionResponse
Model response for StreamChatClient.updatePollOption api call
UpdatePollResponse
Model response for StreamChatClient.updatePoll api call
UpdateReminderResponse
Model response for StreamChatClient.updateReminder api call
UpdateThreadResponse
Model response for StreamChatClient.updateThread api call
UpdateUserGroupResponse
Model response for StreamChatClient.updateUserGroup api call
UpdateUsersResponse
Model response for StreamChatClient.updateUser api call
UploadConfig
The upload rules for a single category of attachment.
UploadState
Union class to hold various UploadState of a attachment.
UpsertPushPreferencesResponse
Model response for StreamChatClient.setPushPreferences api call
User
Class that defines a Stream Chat User.
UserBlock
Contains information about a User blocked from a Channel or App.
UserBlockResponse
Contains information about a User that was banned from a Channel or App.
UserGroup
Class that defines a user group.
UserGroupMember
Class that defines a member of a user group.
Uuid
uuid for Dart Author: Yulian Kuncheff Released under MIT License.
UuidValue
ValueResult<T>
A result representing a returned value.

Enums

AITypingState
The current typing state of the AI assistant.
AutocompleteKind
The kind of suggestion the composer should be offering.
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
DioExceptionType
The exception enumeration indicates what type of exception has happened during requests.
FilterOperator
Possible operators to use in filters.
GiphyInfoType
The different types of quality for a Giphy attachment.
InterceptStep
Step where we're logging
MemberUpdateType
Type of member update to unset.
MessageTokenKind
What a run of message text represents.
Namespace
RFC4122 & RFC9562 provided namespaces for v3, v5, and v8 namespace based UUIDs
NullOrdering
Defines how null values should be ordered in a sort operation.
PlatformType
Possible platforms
PushProvider
Provider used to send push notifications.
StreamChatBrightness
The overall brightness of a StreamChatTheme.
StreamChatNetworkErrorType
The kind of transport failure that caused a StreamChatNetworkError.
StreamPopoverPlacement
Where a StreamPopover sits relative to its anchor.
ValidationMode
The options for UUID Validation strictness
VotingVisibility
Represents the visibility of the voting process.

Extension Types

AttachmentType
A type of attachment that determines how the attachment is displayed and handled by the system.
BannedUserSortKey
Extension type representing sortable fields for BannedUser.
CallLevel
Call level push preference type
ChannelCapability
Represents various capabilities that a user can have in a channel.
ChannelSortKey
Extension type representing sortable fields for ChannelState.
ChatLevel
Chat level push preference type
ChatPreferenceLevel
Per-category preference value used inside ChatPreferences.
CommandSet
Wire identifier for a Command's set, returned by the backend on the set field.
DraftSortKey
Extension type representing sortable fields for Draft.
MemberSortKey
Extension type representing sortable fields for Member.
MessageReminderSortKey
Extension type representing sortable fields for MessageReminder.
MessageSortKey
Extension type representing sortable fields for Message.
MessageType
A type of the message that determines how the message is displayed and handled by the system.
ModerationAction
The moderation action performed over the message.
PollSortKey
Extension type representing sortable fields for Poll.
PollVoteSortKey
Extension type representing sortable fields for PollVote.
PushLevel
Defines the push level for a channel, which determines how notifications are sent to users.
ReactionSortKey
Extension type representing sortable fields for Reaction.
RoleType
The type of role used to filter results in StreamChatClient.searchRoles.
ThreadSortKey
Extension type representing sortable fields for Thread.
UserSortKey
Extension type representing sortable fields for User.

Extensions

AttachmentTypeHelper on Attachment
BackOffExtension on FutureOr<T> Function()
Useful rate limiter extensions for Function class.
ChannelCapabilityCheck on Channel
Extension methods for checking channel capabilities on a Channel instance.
ChannelReadHelper on ChannelClientState
Extension methods for reading related operations on a ChannelClientState.
ChatErrorCodeX on ChatErrorCode
ChunkedStreamReaderByteStreamExt on ChunkedStreamReader<int>
Extensions for using ChunkedStreamReader with byte-streams.
CompleterX on Completer<T>
Extension on Completer to safely complete with value or error.
CompositeComparator on SortOrder<T>
Extension that allows a SortOrder to be used as a comparator function.
DraftMessageToMessage on DraftMessage
Extension on DraftMessage to convert it to a Message.
EventExtension on Event
Helper extension methods for Event.
GiphyInfoX on Attachment
GiphyInfo extension on Attachment class.
IterableMergeX on Iterable<T>
Useful extension functions for Iterable.
IterableX on Iterable<T?>
Useful extension functions for Iterable
ListX on List<T>
Useful extension functions for List.
MapX on Map<K?, V?>
Useful extension functions for Map
MessageDeleteScopeX on MessageDeleteScope
Extension methods for MessageDeleteScope to provide additional functionality.
MessageModerationHelper on Message
Extension that adds moderation functionality to Message objects.
MessageReactionHelper on Message
Extension that adds reaction manipulation functionality to Message objects.
MessageStateX on MessageState
Helper extension for MessageState.
MessageToDraftMessage on Message
Extension on Message to convert it to a DraftMessage.
MessageTypeHelper on Message
Extension that adds message type functionality to Message objects.
MessageVisibility on Message
Extension that adds visibility control functionality to Message objects.
PollVotingModeX on Poll
A mixin on Poll to determine the voting mode.
PollX on Poll
Helper extension for Poll model.
PrivacySettingsExtension on OwnUser
Extension methods for OwnUser related to privacy settings.
RateLimit on Function
Useful rate limiter extensions for Function class.
ReadIterableExtension on Iterable<Read>
Helper extension methods for Iterable<Read>.
SafeCastExtension on Object?
Extension on Object providing safe casting functionality.
SortedListX on List<T>
Useful extension functions for sorted Lists.
StreamControllerX on StreamController<T>
Extension on StreamController to safely add events and errors.
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

defaultReactionEmoji → const Map<String, String>
Emoji shown for each of Stream's default reaction types.
incomingTypingStartEventTimeout → const int
The maximum time the incoming Event.typingStart event is valid before a Event.typingStop event is emitted automatically.
kDefaultConnectTimeout → const Duration
The default connect timeout for the api request
kDefaultReceiveTimeout → const Duration
The default receive timeout for the api request

Properties

streamChatStyles List<StyleRule>
The stylesheet backing every component in this package.
final

Functions

backOff<T>(FutureOr<T> func(), {Duration delayFactor = const Duration(milliseconds: 200), double randomizationFactor = 0.25, Duration maxDelay = const Duration(seconds: 30), int maxAttempts = 8, FutureOr<bool> retryIf(Object error, int attempt)?}) Future<T>
TopLevel lambda to apply BackOff to functions.
channelDisplayName(Channel channel, {String? currentUserId}) String
A human readable title for channel.
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.
detectAutocomplete(String text, int caret) AutocompleteQuery?
Finds the autocomplete trigger the caret currently sits in, if any.
formatChannelTimestamp(DateTime date, {String yesterday = 'Yesterday'}) String
Compact timestamp for channel list tiles.
formatDateDivider(DateTime date, {String today = 'Today', String yesterday = 'Yesterday'}) String
Heading for the date separators in the message list.
formatTimeOfDay(DateTime date) String
14:05, in the local timezone.
hueFor(String seed) int
A stable hue in [0, 360) derived from seed.
initialsFor(String? name) String
Up to two uppercase initials for name, used as an avatar fallback.
isSameDay(DateTime a, DateTime b) bool
Whether two timestamps fall on the same calendar day.
messagePreview(Message? message, {String? currentUserId}) String
A one-line preview of message, as shown in the channel list.
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.
tokenizeMessageText(String text, {Set<String> mentionedNames = const {}}) List<MessageToken>
Splits text into runs that a renderer can style individually.
typedStreamTransformer<S, T>(StreamTransformer transformer) StreamTransformer<S, T>
Creates a wrapper that coerces the type of transformer.

Typedefs

AttachmentFileUploaderProvider = AttachmentFileUploader Function(StreamHttpClient httpClient)
Signature for a function which provides instance of AttachmentFileUploader
LogHandlerFunction = void Function(LogRecord record)
Handler function used for logging records. Function requires a single LogRecord as the only parameter.
LogPrint = void Function(InterceptStep step, Object object)
Function used to print the log
MarkChannelsDelivered = Future<void> Function(Iterable<MessageDelivery> deliveries)
A callback that sends delivery receipts for multiple channels.
ProgressCallback = void Function(int count, int total)
The type of a progress listening callback when sending or receiving data.
SendImageResponse = SendAttachmentResponse
Model response for Channel.sendImage api call
SortOrder<T extends ComparableFieldProvider> = List<SortOption<T>>
A list of SortOptions that define a sorting order for elements of type T
UploadFileResponse = SendAttachmentResponse
Model response for StreamChatClient.uploadFile api call
UploadImageResponse = SendAttachmentResponse
Model response for StreamChatClient.uploadImage api call

Exceptions / Errors

DioException
DioException describes the exception info when a request failed.
StreamChatError
Base class for all errors surfaced by the Stream Chat SDK.
StreamChatNetworkError
An error raised when a network request to Stream fails.
StreamWebSocketError
An error received over the realtime (WebSocket) connection.