StreamComponentBuilders class
A collection of builders for customizing Stream component rendering.
All builders are nullable - when null, the component uses its default implementation.
{@tool snippet}
Create builders with custom button implementation:
final builders = StreamComponentBuilders(
button: (context, props) => MyCustomButton(props: props),
);
{@end-tool}
{@tool snippet}
Register a custom component builder via extensions:
final builders = StreamComponentBuilders(
extensions: [
StreamComponentBuilderExtension<StreamMessageProps>(
builder: (context, props) => MyCustomMessage(props: props),
),
],
);
Then retrieve it with extension:
final builder = StreamComponentFactory.of(context).extension<StreamMessageProps>();
if (builder != null) return builder(context, props);
{@end-tool}
See also:
- StreamComponentFactory, which provides builders to descendants.
- StreamComponentBuilderExtension, which wraps a custom component builder.
- Annotations
-
- @immutable
- @ThemeGen.new(constructor: 'raw')
Constructors
-
StreamComponentBuilders({StreamComponentBuilder<
StreamAppBarProps> ? appBar, StreamComponentBuilder<StreamAvatarProps> ? avatar, StreamComponentBuilder<StreamBottomAppBarProps> ? bottomAppBar, StreamComponentBuilder<StreamAvatarGroupProps> ? avatarGroup, StreamComponentBuilder<StreamAvatarStackProps> ? avatarStack, StreamComponentBuilder<StreamBadgeCountProps> ? badgeCount, StreamComponentBuilder<StreamBadgeNotificationProps> ? badgeNotification, StreamComponentBuilder<StreamButtonProps> ? button, StreamComponentBuilder<StreamCheckboxProps> ? checkbox, StreamComponentBuilder<StreamCommandChipProps> ? commandChip, StreamComponentBuilder<StreamContextMenuActionProps< ? contextMenuAction, StreamComponentBuilder<Object?> >StreamEmojiProps> ? emoji, StreamComponentBuilder<StreamEmojiButtonProps> ? emojiButton, StreamComponentBuilder<StreamEmojiChipProps> ? emojiChip, StreamComponentBuilder<StreamEmojiChipBarProps< ? emojiChipBar, StreamComponentBuilder<Object?> >StreamErrorBadgeProps> ? errorBadge, StreamComponentBuilder<StreamFileTypeIconProps> ? fileTypeIcon, StreamComponentBuilder<StreamListTileProps> ? listTile, StreamComponentBuilder<StreamLoadingSpinnerProps> ? loadingSpinner, StreamComponentBuilder<StreamMediaViewerProps> ? mediaViewer, StreamComponentBuilder<StreamMessageAnnotationProps> ? messageAnnotation, StreamComponentBuilder<StreamMessageBubbleProps> ? messageBubble, StreamComponentBuilder<StreamMessageComposerAttachmentProps> ? messageComposerAttachment, StreamComponentBuilder<StreamMessageComposerEditMessageAttachmentProps> ? messageComposerEditMessageAttachment, StreamComponentBuilder<StreamMessageComposerFileAttachmentProps> ? messageComposerFileAttachment, StreamComponentBuilder<StreamMessageComposerLinkPreviewAttachmentProps> ? messageComposerLinkPreviewAttachment, StreamComponentBuilder<StreamMessageComposerMediaAttachmentProps> ? messageComposerMediaAttachment, StreamComponentBuilder<StreamMessageComposerReplyAttachmentProps> ? messageComposerReplyAttachment, StreamComponentBuilder<StreamMessageComposerUnsupportedAttachmentProps> ? messageComposerUnsupportedAttachment, StreamComponentBuilder<StreamMessageContentProps> ? messageContent, StreamComponentBuilder<StreamMessageMetadataProps> ? messageMetadata, StreamComponentBuilder<StreamMessageRepliesProps> ? messageReplies, StreamComponentBuilder<StreamMessageTextProps> ? messageText, StreamComponentBuilder<StreamNetworkImageProps> ? networkImage, StreamComponentBuilder<StreamOnlineIndicatorProps> ? onlineIndicator, StreamComponentBuilder<StreamPlaybackSpeedToggleProps> ? playbackSpeedToggle, StreamComponentBuilder<StreamProgressBarProps> ? progressBar, StreamComponentBuilder<StreamReactionPickerProps> ? reactionPicker, StreamComponentBuilder<StreamReactionsProps> ? reactions, StreamComponentBuilder<StreamRetryBadgeProps> ? retryBadge, StreamComponentBuilder<StreamSheetHeaderProps> ? sheetHeader, StreamComponentBuilder<StreamSkeletonLoadingProps> ? skeletonLoading, StreamComponentBuilder<StreamSnackbarProps> ? snackbar, StreamComponentBuilder<StreamStepperProps> ? stepper, StreamComponentBuilder<StreamTextInputProps> ? textInput, StreamComponentBuilder<StreamSwitchProps> ? toggleSwitch, StreamComponentBuilder<StreamImageSourceBadgeProps> ? imageSourceBadge, StreamComponentBuilder<StreamJumpToUnreadButtonProps> ? jumpToUnreadButton, Iterable<StreamComponentBuilderExtension< ? extensions})Object> > -
Creates component builders with optional custom implementations.
factory
-
StreamComponentBuilders.raw({required StreamComponentBuilder<
StreamAppBarProps> ? appBar, required StreamComponentBuilder<StreamAvatarProps> ? avatar, required StreamComponentBuilder<StreamBottomAppBarProps> ? bottomAppBar, required StreamComponentBuilder<StreamAvatarGroupProps> ? avatarGroup, required StreamComponentBuilder<StreamAvatarStackProps> ? avatarStack, required StreamComponentBuilder<StreamBadgeCountProps> ? badgeCount, required StreamComponentBuilder<StreamBadgeNotificationProps> ? badgeNotification, required StreamComponentBuilder<StreamButtonProps> ? button, required StreamComponentBuilder<StreamCheckboxProps> ? checkbox, required StreamComponentBuilder<StreamCommandChipProps> ? commandChip, required StreamComponentBuilder<StreamContextMenuActionProps< ? contextMenuAction, required StreamComponentBuilder<Object?> >StreamEmojiProps> ? emoji, required StreamComponentBuilder<StreamEmojiButtonProps> ? emojiButton, required StreamComponentBuilder<StreamEmojiChipProps> ? emojiChip, required StreamComponentBuilder<StreamEmojiChipBarProps< ? emojiChipBar, required StreamComponentBuilder<Object?> >StreamErrorBadgeProps> ? errorBadge, required StreamComponentBuilder<StreamFileTypeIconProps> ? fileTypeIcon, required StreamComponentBuilder<StreamListTileProps> ? listTile, required StreamComponentBuilder<StreamLoadingSpinnerProps> ? loadingSpinner, required StreamComponentBuilder<StreamMediaViewerProps> ? mediaViewer, required StreamComponentBuilder<StreamMessageAnnotationProps> ? messageAnnotation, required StreamComponentBuilder<StreamMessageBubbleProps> ? messageBubble, required StreamComponentBuilder<StreamMessageComposerAttachmentProps> ? messageComposerAttachment, required StreamComponentBuilder<StreamMessageComposerEditMessageAttachmentProps> ? messageComposerEditMessageAttachment, required StreamComponentBuilder<StreamMessageComposerFileAttachmentProps> ? messageComposerFileAttachment, required StreamComponentBuilder<StreamMessageComposerLinkPreviewAttachmentProps> ? messageComposerLinkPreviewAttachment, required StreamComponentBuilder<StreamMessageComposerMediaAttachmentProps> ? messageComposerMediaAttachment, required StreamComponentBuilder<StreamMessageComposerReplyAttachmentProps> ? messageComposerReplyAttachment, required StreamComponentBuilder<StreamMessageComposerUnsupportedAttachmentProps> ? messageComposerUnsupportedAttachment, required StreamComponentBuilder<StreamMessageContentProps> ? messageContent, required StreamComponentBuilder<StreamMessageMetadataProps> ? messageMetadata, required StreamComponentBuilder<StreamMessageRepliesProps> ? messageReplies, required StreamComponentBuilder<StreamMessageTextProps> ? messageText, required StreamComponentBuilder<StreamNetworkImageProps> ? networkImage, required StreamComponentBuilder<StreamOnlineIndicatorProps> ? onlineIndicator, required StreamComponentBuilder<StreamPlaybackSpeedToggleProps> ? playbackSpeedToggle, required StreamComponentBuilder<StreamProgressBarProps> ? progressBar, required StreamComponentBuilder<StreamReactionPickerProps> ? reactionPicker, required StreamComponentBuilder<StreamReactionsProps> ? reactions, required StreamComponentBuilder<StreamRetryBadgeProps> ? retryBadge, required StreamComponentBuilder<StreamSheetHeaderProps> ? sheetHeader, required StreamComponentBuilder<StreamSkeletonLoadingProps> ? skeletonLoading, required StreamComponentBuilder<StreamSnackbarProps> ? snackbar, required StreamComponentBuilder<StreamStepperProps> ? stepper, required StreamComponentBuilder<StreamTextInputProps> ? textInput, required StreamComponentBuilder<StreamSwitchProps> ? toggleSwitch, required StreamComponentBuilder<StreamImageSourceBadgeProps> ? imageSourceBadge, required StreamComponentBuilder<StreamJumpToUnreadButtonProps> ? jumpToUnreadButton, required Map<Object, StreamComponentBuilderExtension< extensions})Object> > -
Creates component builders from a pre-built extensions map.
const
Properties
-
appBar
→ StreamComponentBuilder<
StreamAppBarProps> ? -
Custom builder for app bar widgets.
final
-
avatar
→ StreamComponentBuilder<
StreamAvatarProps> ? -
Custom builder for avatar widgets.
final
-
avatarGroup
→ StreamComponentBuilder<
StreamAvatarGroupProps> ? -
Custom builder for avatar group widgets.
final
-
avatarStack
→ StreamComponentBuilder<
StreamAvatarStackProps> ? -
Custom builder for avatar stack widgets.
final
-
badgeCount
→ StreamComponentBuilder<
StreamBadgeCountProps> ? -
Custom builder for badge count widgets.
final
-
badgeNotification
→ StreamComponentBuilder<
StreamBadgeNotificationProps> ? -
Custom builder for badge notification widgets.
final
-
bottomAppBar
→ StreamComponentBuilder<
StreamBottomAppBarProps> ? -
Custom builder for bottom app bar widgets.
final
-
Custom builder for button widgets.
final
- canMerge → bool
-
no setterinherited
-
checkbox
→ StreamComponentBuilder<
StreamCheckboxProps> ? -
Custom builder for checkbox widgets.
final
-
commandChip
→ StreamComponentBuilder<
StreamCommandChipProps> ? -
Custom builder for command chip widgets.
final
-
contextMenuAction
→ StreamComponentBuilder<
StreamContextMenuActionProps< ?Object?> > -
Custom builder for context menu action widgets.
final
-
emoji
→ StreamComponentBuilder<
StreamEmojiProps> ? -
Custom builder for emoji widgets.
final
-
emojiButton
→ StreamComponentBuilder<
StreamEmojiButtonProps> ? -
Custom builder for emoji button widgets.
final
-
emojiChip
→ StreamComponentBuilder<
StreamEmojiChipProps> ? -
Custom builder for emoji chip widgets.
final
-
emojiChipBar
→ StreamComponentBuilder<
StreamEmojiChipBarProps< ?Object?> > -
Custom builder for emoji chip bar widgets.
final
-
errorBadge
→ StreamComponentBuilder<
StreamErrorBadgeProps> ? -
Custom builder for error badge widgets.
final
-
extensions
→ Map<
Object, StreamComponentBuilderExtension< Object> > -
Arbitrary additions to this builder set.
final
-
fileTypeIcon
→ StreamComponentBuilder<
StreamFileTypeIconProps> ? -
Custom builder for file type icon widgets.
final
- hashCode → int
-
The hash code for this object.
no setterinherited
-
imageSourceBadge
→ StreamComponentBuilder<
StreamImageSourceBadgeProps> ? -
Custom builder for source badge widgets.
final
-
jumpToUnreadButton
→ StreamComponentBuilder<
StreamJumpToUnreadButtonProps> ? -
Custom builder for jump-to-unread button widgets.
final
-
listTile
→ StreamComponentBuilder<
StreamListTileProps> ? -
Custom builder for list tile widgets.
final
-
loadingSpinner
→ StreamComponentBuilder<
StreamLoadingSpinnerProps> ? -
Custom builder for loading spinner widgets.
final
-
mediaViewer
→ StreamComponentBuilder<
StreamMediaViewerProps> ? -
Custom builder for media viewer widgets.
final
-
messageAnnotation
→ StreamComponentBuilder<
StreamMessageAnnotationProps> ? -
Custom builder for message annotation widgets.
final
-
messageBubble
→ StreamComponentBuilder<
StreamMessageBubbleProps> ? -
Custom builder for message bubble widgets.
final
-
messageComposerAttachment
→ StreamComponentBuilder<
StreamMessageComposerAttachmentProps> ? -
Custom builder for composer attachment container widgets.
final
-
messageComposerEditMessageAttachment
→ StreamComponentBuilder<
StreamMessageComposerEditMessageAttachmentProps> ? -
Custom builder for composer edit-message preview attachment widgets.
final
-
messageComposerFileAttachment
→ StreamComponentBuilder<
StreamMessageComposerFileAttachmentProps> ? -
Custom builder for composer file attachment widgets.
final
-
messageComposerLinkPreviewAttachment
→ StreamComponentBuilder<
StreamMessageComposerLinkPreviewAttachmentProps> ? -
Custom builder for composer link preview attachment widgets.
final
-
messageComposerMediaAttachment
→ StreamComponentBuilder<
StreamMessageComposerMediaAttachmentProps> ? -
Custom builder for composer media (image/video) attachment widgets.
final
-
messageComposerReplyAttachment
→ StreamComponentBuilder<
StreamMessageComposerReplyAttachmentProps> ? -
Custom builder for composer reply preview attachment widgets.
final
-
messageComposerUnsupportedAttachment
→ StreamComponentBuilder<
StreamMessageComposerUnsupportedAttachmentProps> ? -
Custom builder for composer unsupported-attachment placeholder widgets.
final
-
messageContent
→ StreamComponentBuilder<
StreamMessageContentProps> ? -
Custom builder for message content layout widgets.
final
-
messageMetadata
→ StreamComponentBuilder<
StreamMessageMetadataProps> ? -
Custom builder for message metadata widgets.
final
-
messageReplies
→ StreamComponentBuilder<
StreamMessageRepliesProps> ? -
Custom builder for message replies widgets.
final
-
messageText
→ StreamComponentBuilder<
StreamMessageTextProps> ? -
Custom builder for message text (markdown) widgets.
final
-
networkImage
→ StreamComponentBuilder<
StreamNetworkImageProps> ? -
Custom builder for network image widgets.
final
-
onlineIndicator
→ StreamComponentBuilder<
StreamOnlineIndicatorProps> ? -
Custom builder for online indicator widgets.
final
-
playbackSpeedToggle
→ StreamComponentBuilder<
StreamPlaybackSpeedToggleProps> ? -
Custom builder for playback speed toggle widgets.
final
-
progressBar
→ StreamComponentBuilder<
StreamProgressBarProps> ? -
Custom builder for progress bar widgets.
final
-
reactionPicker
→ StreamComponentBuilder<
StreamReactionPickerProps> ? -
Custom builder for reaction picker widgets.
final
-
reactions
→ StreamComponentBuilder<
StreamReactionsProps> ? -
Custom builder for reaction widgets.
final
-
retryBadge
→ StreamComponentBuilder<
StreamRetryBadgeProps> ? -
Custom builder for retry badge widgets.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
-
sheetHeader
→ StreamComponentBuilder<
StreamSheetHeaderProps> ? -
Custom builder for sheet header widgets.
final
-
skeletonLoading
→ StreamComponentBuilder<
StreamSkeletonLoadingProps> ? -
Custom builder for skeleton loading shimmer widgets.
final
-
snackbar
→ StreamComponentBuilder<
StreamSnackbarProps> ? -
Custom builder for snackbar widgets.
final
-
stepper
→ StreamComponentBuilder<
StreamStepperProps> ? -
Custom builder for stepper widgets.
final
-
textInput
→ StreamComponentBuilder<
StreamTextInputProps> ? -
Custom builder for text input widgets.
final
-
toggleSwitch
→ StreamComponentBuilder<
StreamSwitchProps> ? -
Custom builder for switch widgets.
final
Methods
-
copyWith(
{Map< Object, StreamComponentBuilderExtension< ? extensions, Widget appBar(BuildContext, StreamAppBarProps)?, Widget avatar(BuildContext, StreamAvatarProps)?, Widget bottomAppBar(BuildContext, StreamBottomAppBarProps)?, Widget avatarGroup(BuildContext, StreamAvatarGroupProps)?, Widget avatarStack(BuildContext, StreamAvatarStackProps)?, Widget badgeCount(BuildContext, StreamBadgeCountProps)?, Widget badgeNotification(BuildContext, StreamBadgeNotificationProps)?, Widget button(BuildContext, StreamButtonProps)?, Widget checkbox(BuildContext, StreamCheckboxProps)?, Widget commandChip(BuildContext, StreamCommandChipProps)?, Widget contextMenuAction(BuildContext, StreamContextMenuActionProps<Object> >Object?> )?, Widget emoji(BuildContext, StreamEmojiProps)?, Widget emojiButton(BuildContext, StreamEmojiButtonProps)?, Widget emojiChip(BuildContext, StreamEmojiChipProps)?, Widget emojiChipBar(BuildContext, StreamEmojiChipBarProps<Object?> )?, Widget errorBadge(BuildContext, StreamErrorBadgeProps)?, Widget fileTypeIcon(BuildContext, StreamFileTypeIconProps)?, Widget listTile(BuildContext, StreamListTileProps)?, Widget loadingSpinner(BuildContext, StreamLoadingSpinnerProps)?, Widget mediaViewer(BuildContext, StreamMediaViewerProps)?, Widget messageAnnotation(BuildContext, StreamMessageAnnotationProps)?, Widget messageBubble(BuildContext, StreamMessageBubbleProps)?, Widget messageComposerAttachment(BuildContext, StreamMessageComposerAttachmentProps)?, Widget messageComposerEditMessageAttachment(BuildContext, StreamMessageComposerEditMessageAttachmentProps)?, Widget messageComposerFileAttachment(BuildContext, StreamMessageComposerFileAttachmentProps)?, Widget messageComposerLinkPreviewAttachment(BuildContext, StreamMessageComposerLinkPreviewAttachmentProps)?, Widget messageComposerMediaAttachment(BuildContext, StreamMessageComposerMediaAttachmentProps)?, Widget messageComposerReplyAttachment(BuildContext, StreamMessageComposerReplyAttachmentProps)?, Widget messageComposerUnsupportedAttachment(BuildContext, StreamMessageComposerUnsupportedAttachmentProps)?, Widget messageContent(BuildContext, StreamMessageContentProps)?, Widget messageMetadata(BuildContext, StreamMessageMetadataProps)?, Widget messageReplies(BuildContext, StreamMessageRepliesProps)?, Widget messageText(BuildContext, StreamMessageTextProps)?, Widget networkImage(BuildContext, StreamNetworkImageProps)?, Widget onlineIndicator(BuildContext, StreamOnlineIndicatorProps)?, Widget playbackSpeedToggle(BuildContext, StreamPlaybackSpeedToggleProps)?, Widget progressBar(BuildContext, StreamProgressBarProps)?, Widget reactionPicker(BuildContext, StreamReactionPickerProps)?, Widget reactions(BuildContext, StreamReactionsProps)?, Widget retryBadge(BuildContext, StreamRetryBadgeProps)?, Widget sheetHeader(BuildContext, StreamSheetHeaderProps)?, Widget skeletonLoading(BuildContext, StreamSkeletonLoadingProps)?, Widget snackbar(BuildContext, StreamSnackbarProps)?, Widget stepper(BuildContext, StreamStepperProps)?, Widget textInput(BuildContext, StreamTextInputProps)?, Widget toggleSwitch(BuildContext, StreamSwitchProps)?, Widget imageSourceBadge(BuildContext, StreamImageSourceBadgeProps)?, Widget jumpToUnreadButton(BuildContext, StreamJumpToUnreadButtonProps)?}) → StreamComponentBuilders -
inherited
-
extension<
T> () → StreamComponentBuilder< T> ? - Used to obtain a StreamComponentBuilder from extensions.
-
merge(
StreamComponentBuilders? other) → StreamComponentBuilders -
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited