core library
Core UI primitives shared across all Stream products.
Import this barrel from any Stream SDK (chat, video, feeds, ...) that needs the shared design-system widgets, theme tokens, or component factory without pulling in chat-specific code.
For chat-only widgets (message bubble, composer attachments, reactions,
etc.) use package:stream_core_flutter/chat.dart instead.
Classes
- DefaultStreamAppBar
- The default implementation of StreamAppBar.
- DefaultStreamAvatar
- The default implementation of StreamAvatar.
- DefaultStreamAvatarGroup
- The default implementation of StreamAvatarGroup.
- DefaultStreamAvatarStack
- The default implementation of StreamAvatarStack.
- DefaultStreamBadgeCount
- The default implementation of StreamBadgeCount.
- DefaultStreamBadgeNotification
- The default implementation of StreamBadgeNotification.
- DefaultStreamBottomAppBar
- The default implementation of StreamBottomAppBar.
- DefaultStreamButton
- Default implementation of StreamButton.
- DefaultStreamCheckbox
- Default implementation of StreamCheckbox.
-
DefaultStreamContextMenuAction<
T> - Default implementation of StreamContextMenuAction.
- DefaultStreamEmoji
- The default implementation of StreamEmoji.
- DefaultStreamEmojiButton
- Default implementation of StreamEmojiButton.
- DefaultStreamEmojiChip
- Default implementation of StreamEmojiChip.
-
DefaultStreamEmojiChipBar<
T> - Default implementation of StreamEmojiChipBar.
- DefaultStreamErrorBadge
- The default implementation of StreamErrorBadge.
- DefaultStreamFileTypeIcon
- The default implementation of StreamFileTypeIcon.
- DefaultStreamImageSourceBadge
- The default implementation of StreamImageSourceBadge.
- DefaultStreamListTile
- The default implementation of StreamListTile.
- DefaultStreamLoadingSpinner
- Default implementation of StreamLoadingSpinner.
- DefaultStreamMediaViewer
- The default implementation of StreamMediaViewer.
- DefaultStreamNetworkImage
- The default implementation of StreamNetworkImage.
- DefaultStreamOnlineIndicator
- The default implementation of StreamOnlineIndicator.
- DefaultStreamPlaybackSpeedToggle
- Default implementation of StreamPlaybackSpeedToggle.
- DefaultStreamProgressBar
- Default implementation of StreamProgressBar.
- DefaultStreamRetryBadge
- The default implementation of StreamRetryBadge.
- DefaultStreamSheetHeader
- The default implementation of StreamSheetHeader.
- DefaultStreamSkeletonLoading
- Default implementation of StreamSkeletonLoading.
- DefaultStreamSnackbar
- The default implementation of StreamSnackbar.
- DefaultStreamStepper
- Default implementation of StreamStepper.
- DefaultStreamSwitch
- Default implementation of StreamSwitch.
- DefaultStreamTextInput
- Default implementation of StreamTextInput.
- HorizontalSlider
- A widget that allows interactive horizontal sliding gestures.
- NullableBuilder
- A convenience NullableStatelessWidget that takes a builder function.
-
NullableState<
T extends NullableStatefulWidget> - The State for a NullableStatefulWidget.
- NullableStatefulWidget
-
A widget that has mutable state and whose NullableState.nullableBuild
may return
null. - NullableStatelessWidget
-
A StatelessWidget whose nullableBuild may return
null. - StreamAppBar
- A top-of-screen header for full-page surfaces in the Stream design system.
- StreamAppBarProps
- Properties for configuring a StreamAppBar.
- StreamAppBarStyle
- Visual styling properties for a StreamAppBar.
- StreamAppBarTheme
- Applies an app bar theme to descendant StreamAppBar widgets.
- StreamAppBarThemeData
- Theme data for customizing StreamAppBar widgets.
- StreamAudioWaveform
- A widget that displays an audio waveform.
- StreamAudioWaveformSlider
- A widget that displays an audio waveform and allows the user to interact with it using a slider.
- StreamAudioWaveformSliderThumb
- A widget that represents the thumb of the StreamAudioWaveformSlider.
- StreamAudioWaveformTheme
- Applies an audio waveform theme to descendant StreamAudioWaveform and StreamAudioWaveformSlider widgets.
- StreamAudioWaveformThemeData
- Theme data for customizing StreamAudioWaveform and StreamAudioWaveformSlider widgets.
- StreamAvatar
- A circular avatar component for the Stream design system.
- StreamAvatarColorPair
- A background/foreground color pair for avatars.
- StreamAvatarGroup
- A widget that displays multiple avatars in a grid layout.
- StreamAvatarGroupProps
- Properties for configuring a StreamAvatarGroup.
- StreamAvatarProps
- Properties for configuring a StreamAvatar.
- StreamAvatarStack
- A widget that displays a stack of StreamAvatar widgets with overlap.
- StreamAvatarStackProps
- Properties for configuring a StreamAvatarStack.
- StreamAvatarTheme
- Applies an avatar theme to descendant StreamAvatar widgets.
- StreamAvatarThemeData
- Theme data for customizing StreamAvatar widgets.
- StreamBadgeCount
- A badge component for displaying counts or labels.
- StreamBadgeCountProps
- Properties for configuring a StreamBadgeCount.
- StreamBadgeCountTheme
- Applies a badge count theme to descendant StreamBadgeCount widgets.
- StreamBadgeCountThemeData
- Theme data for customizing StreamBadgeCount widgets.
- StreamBadgeNotification
- A notification badge for displaying counts in colored pill shapes.
- StreamBadgeNotificationProps
- Properties for configuring a StreamBadgeNotification.
- StreamBadgeNotificationTheme
- Applies a badge notification theme to descendant widgets.
- StreamBadgeNotificationThemeData
- Theme data for customizing StreamBadgeNotification widgets.
- StreamBottomAppBar
- A bottom-of-screen toolbar for full-page surfaces in the Stream design system.
- StreamBottomAppBarProps
- Properties for configuring a StreamBottomAppBar.
- StreamBottomAppBarStyle
- Visual styling properties for a StreamBottomAppBar.
- StreamBottomAppBarTheme
- Applies a bottom app bar theme to descendant StreamBottomAppBar widgets.
- StreamBottomAppBarThemeData
- Theme data for customizing StreamBottomAppBar widgets.
- StreamBoxShadow
- Box shadow tokens for the Stream design system.
- StreamBrandColor
- The brand color swatch for the Stream design system.
- StreamButton
- A versatile button with support for multiple styles, types, and sizes.
- StreamButtonProps
- Properties for configuring a StreamButton.
- StreamButtonTheme
- Applies a button theme to descendant StreamButton widgets.
- StreamButtonThemeData
- Theme data for customizing StreamButton widgets.
- StreamButtonThemeStyle
- Visual styling properties for a single button style/type combination.
- StreamButtonTypeStyle
- Organizes button theme styles by StreamButtonType variant.
- StreamCheckbox
- A checkbox styled for the Stream design system.
- StreamCheckboxProps
- Properties for configuring a StreamCheckbox.
- StreamCheckboxStyle
- Visual styling properties for checkboxes.
- StreamCheckboxTheme
- Applies a checkbox theme to descendant StreamCheckbox widgets.
- StreamCheckboxThemeData
- Theme data for customizing StreamCheckbox widgets.
- StreamChromeColor
- The chrome (neutral) color swatch for the Stream design system.
- StreamColors
- Color and ColorSwatch constants for the Stream design system.
- StreamColorScheme
- A color scheme for the Stream design system.
- StreamColorSwatch
- A color swatch with multiple shades of a single color.
- StreamColumn
- A widget that displays its children in a vertical array, supporting negative spacing and collapsed (nullable) children.
-
StreamComponentBuilderExtension<
T> - A typed builder extension for StreamComponentBuilders.
- StreamComponentBuilders
- A collection of builders for customizing Stream component rendering.
- StreamComponentFactory
- Provides component builders to descendant Stream widgets.
- StreamContextMenu
- A contextual menu container that displays a list of menu items.
-
StreamContextMenuAction<
T> - A single action row in a StreamContextMenu.
-
StreamContextMenuActionProps<
T extends Object?> - Properties for configuring a StreamContextMenuAction.
- StreamContextMenuActionStyle
- Visual styling properties for context menu actions.
- StreamContextMenuActionTheme
- Applies a context menu action theme to descendant context menu action widgets.
- StreamContextMenuActionThemeData
- Theme data for customizing context menu actions.
- StreamContextMenuSeparator
- A visual separator between groups of items in a StreamContextMenu.
- StreamContextMenuStyle
- Visual styling properties for the context menu container.
- StreamContextMenuTheme
- Applies a context menu theme to descendant context menu widgets.
- StreamContextMenuThemeData
- Theme data for customizing context menus.
- StreamEmoji
- An emoji component for the Stream design system.
- StreamEmojiButton
- A tappable circular button that displays an emoji or icon.
- StreamEmojiButtonProps
- Properties for configuring a StreamEmojiButton.
- StreamEmojiButtonTheme
- Applies an emoji button theme to descendant emoji button widgets.
- StreamEmojiButtonThemeData
- Theme data for customizing emoji button widgets.
- StreamEmojiButtonThemeStyle
- Visual styling properties for emoji buttons.
- StreamEmojiChip
- A pill-shaped chip for displaying emoji reactions with an optional count.
-
StreamEmojiChipBar<
T> - A horizontally scrollable bar of StreamEmojiChips for filtering by reaction type.
-
StreamEmojiChipBarProps<
T extends Object?> - Properties for configuring a StreamEmojiChipBar.
-
StreamEmojiChipItem<
T> - A single item in a StreamEmojiChipBar.
- StreamEmojiChipProps
- Properties for configuring a StreamEmojiChip.
- StreamEmojiChipTheme
- Applies an emoji chip theme to descendant emoji chip widgets.
- StreamEmojiChipThemeData
- Theme data for customizing emoji chip widgets.
- StreamEmojiChipThemeStyle
- Visual styling properties for emoji chips.
- StreamEmojiContent
- The content model for an emoji rendered by StreamEmoji.
- StreamEmojiData
- A data class representing a single emoji entry.
- StreamEmojiPickerSheet
- A scrollable sheet that displays a curated set of emojis in a flat grid.
- StreamEmojiProps
- Properties for configuring a StreamEmoji.
- StreamErrorBadge
- A circular error badge that displays an exclamation mark icon.
- StreamErrorBadgeProps
- Properties for configuring a StreamErrorBadge.
- StreamFileTypeIcon
- An icon widget displaying file type with optional extension label.
- StreamFileTypeIconProps
- Properties for configuring a StreamFileTypeIcon.
- StreamFlex
- A widget that displays its children in a one-dimensional array, supporting negative spacing and collapsed (nullable) children.
- StreamFontSize
- Platform-aware font size scale.
- StreamFontWeight
- Font weight values for text.
- StreamHelperText
- Animated helper text with icon, driven by StreamHelperState.
- StreamIconData
- Identifiers for the icons.
- StreamIcons
- Provides customizable icons for the Stream design system.
- StreamImageEmoji
- A custom image emoji loaded from a URL.
- StreamImageErrorPlaceholder
- An error placeholder for image-sized areas.
- StreamImageLoadingPlaceholder
- A loading placeholder for image-sized areas.
- StreamImageSourceBadge
- A pill-shaped overlay badge that identifies the source of content.
- StreamImageSourceBadgeProps
- Properties for configuring a StreamImageSourceBadge.
- StreamIntrinsicBoundedCrossAxis
- Marks a child of StreamIntrinsicFlex to be measured under the parent's cross-axis ceiling instead of unbounded constraints.
- StreamIntrinsicColumn
- A widget that displays its children in a vertical array, shrink-wrapping its width to the widest child.
- StreamIntrinsicFlex
- A widget that displays its children in a one-dimensional array, shrink-wrapping its cross-axis to the widest (or tallest) child.
- StreamIntrinsicRow
- A widget that displays its children in a horizontal array, shrink-wrapping its height to the tallest child.
- StreamIntrinsicSizeCandidate
- Marks a child of StreamIntrinsicFlex as a cross-axis size candidate.
- StreamLineHeight
- Line height values for text.
- StreamListTile
- A single fixed-height row inspired by Flutter's ListTile, adapted for the Stream design system.
- StreamListTileContainer
- The container for a StreamListTile that provides background, shape, ink effects, semantics, and content padding.
- StreamListTileProps
- Properties for configuring a StreamListTile.
- StreamListTileTheme
- Applies a list tile theme to descendant StreamListTile widgets.
- StreamListTileThemeData
- Theme data for customizing StreamListTile widgets.
- StreamLoadingSpinner
- A circular progress indicator styled for the Stream design system.
- StreamLoadingSpinnerProps
- Properties for configuring a StreamLoadingSpinner.
- StreamMediaBadge
- StreamMediaViewer
- A full-screen surface for browsing media (images, videos, etc.).
- StreamMediaViewerProps
- Properties for configuring a StreamMediaViewer.
- StreamMediaViewerTheme
- Applies a media viewer theme to descendant StreamMediaViewers.
- StreamMediaViewerThemeData
- Visual styling properties for StreamMediaViewer.
- StreamNetworkImage
- A network image component with automatic caching, error handling, and tap-to-reload support.
- StreamNetworkImageProps
- Properties for configuring a StreamNetworkImage.
- StreamOnlineIndicator
- A circular indicator showing online/offline presence status.
- StreamOnlineIndicatorProps
- Properties for configuring a StreamOnlineIndicator.
- StreamOnlineIndicatorTheme
- Applies an online indicator theme to descendant StreamOnlineIndicator widgets.
- StreamOnlineIndicatorThemeData
- Theme data for customizing StreamOnlineIndicator widgets.
- StreamPlaybackSpeedToggle
- A pill-shaped toggle button for displaying and cycling playback speed.
- StreamPlaybackSpeedToggleProps
- Properties for configuring a StreamPlaybackSpeedToggle.
- StreamPlaybackSpeedToggleStyle
- Visual styling properties for a StreamPlaybackSpeedToggle.
- StreamPlaybackSpeedToggleTheme
- Applies a playback speed toggle theme to descendant widgets.
- StreamPlaybackSpeedToggleThemeData
- Theme data for customizing playback speed toggle widgets.
- StreamProgressBar
- A linear progress indicator styled for the Stream design system.
- StreamProgressBarProps
- Properties for configuring a StreamProgressBar.
- StreamProgressBarStyle
- Visual styling properties for progress bars.
- StreamProgressBarTheme
- Applies a progress bar theme to descendant StreamProgressBar widgets.
- StreamProgressBarThemeData
- Theme data for customizing StreamProgressBar widgets.
- StreamRadius
- Border radius primitives for the Stream design system.
- StreamRemoveControl
- A small circular "remove" badge typically overlaid on top of an attachment preview.
- StreamRetryBadge
- A circular retry badge that displays a clockwise arrow icon.
- StreamRetryBadgeProps
- Properties for configuring a StreamRetryBadge.
- StreamRow
- A widget that displays its children in a horizontal array, supporting negative spacing and collapsed (nullable) children.
- StreamSheet
- The visual chrome of a Stream-styled sheet.
- StreamSheetDragHandle
- The visual drag handle drawn at the top of a Stream-styled sheet.
- StreamSheetHeader
- A header for bottom sheets, modals, and dialogs in the Stream design system.
- StreamSheetHeaderProps
- Properties for configuring a StreamSheetHeader.
- StreamSheetHeaderStyle
- Visual styling properties for a StreamSheetHeader.
- StreamSheetHeaderTheme
- Applies a sheet header theme to descendant StreamSheetHeader widgets.
- StreamSheetHeaderThemeData
- Theme data for customizing StreamSheetHeader widgets.
-
StreamSheetRoute<
T> - Modal route for a Stream-styled sheet.
- StreamSheetTheme
- Applies a sheet theme to descendant StreamSheet widgets and StreamSheetDragHandles.
- StreamSheetThemeData
-
Defines default property values for StreamSheet (and modal sheets
opened via
showStreamSheet). - StreamSheetTransition
- Slide-up transition used by StreamSheetRoute.
- StreamSkeletonBox
- A simple shaped placeholder box intended for use inside a StreamSkeletonLoading.
- StreamSkeletonLoading
- A skeleton shimmer loading component.
- StreamSkeletonLoadingProps
- Properties for configuring a StreamSkeletonLoading.
- StreamSkeletonLoadingTheme
- Applies a skeleton loading theme to descendant StreamSkeletonLoading widgets.
- StreamSkeletonLoadingThemeData
- Theme data for customizing StreamSkeletonLoading widgets.
- StreamSnackbar
- A transient, pill-shaped feedback container.
- StreamSnackbarAction
- An action button rendered at the trailing end of a StreamSnackbar.
- StreamSnackbarController
- Handle to a snackbar that has been enqueued or is currently visible.
- StreamSnackbarHost
- An inline render slot for snackbars from a StreamSnackbarMessenger.
- StreamSnackbarMessenger
- Imperative owner of a snackbar queue.
- StreamSnackbarPopup
- An anchored render slot that floats snackbars next to a child.
- StreamSnackbarProps
- Properties for configuring a StreamSnackbar.
- StreamSnackbarScope
- Wraps a subtree with a managed StreamSnackbarMessenger and renders the current snackbar at the bottom of itself.
- StreamSnackbarStyle
- Visual styling properties for a StreamSnackbar.
- StreamSnackbarTheme
- Applies a snackbar theme to descendant StreamSnackbar widgets.
- StreamSnackbarThemeData
- Theme data for customizing StreamSnackbar widgets.
- StreamSpacing
- Spacing primitives for the Stream design system.
- StreamStepper
- A numeric stepper control styled for the Stream design system.
- StreamStepperProps
- Properties for configuring a StreamStepper.
- StreamStepperStyle
- Visual styling properties for StreamStepper.
- StreamStepperTheme
- Applies a stepper theme to descendant StreamStepper widgets.
- StreamStepperThemeData
- Theme data for customizing StreamStepper widgets.
- StreamSvgIconData
- Colored SVG icon data constants.
- StreamSwitch
- A switch styled for the Stream design system.
- StreamSwitchProps
- Properties for configuring a StreamSwitch.
- StreamSwitchStyle
- Visual styling properties for switches.
- StreamSwitchTheme
- Applies a switch theme to descendant StreamSwitch widgets.
- StreamSwitchThemeData
- Theme data for customizing StreamSwitch widgets.
- StreamTapTargetPadding
- A widget that enlarges the tap target around its child to at least minSize, without changing the child's own size, position, or visual appearance.
- StreamTextInput
- A text input styled for the Stream design system.
- StreamTextInputProps
- Properties for configuring a StreamTextInput.
- StreamTextInputStyle
- Visual styling properties for StreamTextInput.
- StreamTextInputTheme
- Applies a text input theme to descendant StreamTextInput widgets.
- StreamTextInputThemeData
- Theme data for customizing StreamTextInput widgets.
- StreamTextTheme
- Semantic text theme for the Stream design system.
- StreamTheme
- The main theme configuration for Stream design system.
- StreamToolbar
- Three-slot horizontal layout shared by StreamAppBar, StreamBottomAppBar, and StreamSheetHeader.
- StreamTypography
- Typography primitives for the Stream design system.
- StreamUnicodeEmoji
- A native Unicode emoji character (e.g. '👍').
- StreamVideoPlayIndicator
- A circular play/pause indicator for video content.
- SvgIcon
- A icon widget drawn from a provided SVG asset described in an SvgIconData.
- SvgIconData
- A description of an svg icon.
- SvgIconDataProperty
- DiagnosticsProperty that has an SvgIconData as value.
Enums
- MediaBadgeDurationFormat
- Controls how a duration value is formatted inside StreamMediaBadge.
- MediaBadgeType
- StreamAvatarGroupSize
- Predefined avatar group sizes.
- StreamAvatarSize
- Predefined avatar sizes for the Stream design system.
- StreamAvatarStackSize
- Predefined avatar stack sizes.
- StreamBadgeCountSize
- Predefined sizes for the badge count indicator.
- StreamBadgeNotificationSize
- Predefined sizes for the badge notification indicator.
- StreamBadgeNotificationType
- The visual type of a StreamBadgeNotification.
- StreamButtonSize
- Predefined sizes for StreamButton.
- StreamButtonStyle
- The color scheme variant for a StreamButton.
- StreamButtonType
- The visual weight variant for a StreamButton.
- StreamCheckboxSize
- Predefined sizes for StreamCheckbox.
- StreamEmojiButtonSize
- Predefined sizes for the emoji button.
- StreamEmojiSize
- Predefined sizes for emoji display.
- StreamErrorBadgeSize
- Predefined sizes for StreamErrorBadge.
- StreamFileType
- Supported file types for the file type icon.
- StreamFileTypeIconSize
- Predefined sizes for the file type icon.
- StreamHelperState
- The state of helper text, driving the icon and color.
- StreamLoadingSpinnerSize
- Predefined sizes for StreamLoadingSpinner.
- StreamOnlineIndicatorSize
- Predefined sizes for the online indicator.
- StreamPlaybackSpeed
- Predefined playback speed values for StreamPlaybackSpeedToggle.
- StreamRetryBadgeSize
- Predefined sizes for StreamRetryBadge.
- StreamSnackbarClosedReason
- The reason a StreamSnackbar was closed.
- StreamSnackbarPopupPlacement
- Where the snackbar is positioned relative to its StreamSnackbarPopup anchor.
- StreamSnackbarVariant
- Variants of StreamSnackbar.
- StreamVideoPlayIndicatorSize
- Predefined sizes for StreamVideoPlayIndicator.
- StreamVisibility
- Controls the visibility and layout participation of a widget slot.
Mixins
- WidgetStateUtils
- Utility methods for building WidgetStateProperty values from simple parameters.
Extensions
- StreamComponentFactoryExtension on BuildContext
- Extension on BuildContext for convenient access to StreamComponentBuilders.
- StreamThemeExtension on BuildContext
- Extension on BuildContext for convenient access to StreamTheme.
Constants
- kStreamToolbarHeight → const double
- Default height of StreamAppBar, StreamBottomAppBar, and StreamSheetHeader per the Stream design system.
-
streamSupportedEmojis
→ const Map<
String, StreamEmojiData> - A curated map of commonly used emojis, keyed by short name.
Functions
-
showStreamSheet<
T> ({required BuildContext context, required StreamSheetScrollableWidgetBuilder builder, Color? backgroundColor, Color? barrierColor, String? barrierLabel, ShapeBorder? shape, BorderRadiusGeometry? borderRadius, BoxConstraints? constraints, double? elevation, Clip? clipBehavior, bool enableDrag = true, bool isDismissible = false, bool? showDragHandle, bool? requestFocus, Offset? anchorPoint, StreamSheetDragStartCallback? onDragStart, StreamSheetDragEndCallback? onDragEnd, RouteSettings? settings}) → Future< T?> - Shows a Stream-styled modal sheet that slides up from the bottom of the screen.
Typedefs
-
StreamComponentBuilder<
T> = Widget Function(BuildContext context, T props) - A function type that builds a widget from a BuildContext and typed props.
- StreamNetworkImageErrorBuilder = Widget Function(BuildContext context, Object error, VoidCallback? retry)
- Signature for a function that builds an error widget when a StreamNetworkImage fails to load.
- StreamNetworkImagePlaceholderBuilder = WidgetBuilder
- Signature for a function that builds a placeholder widget while a StreamNetworkImage is loading.
- StreamSheetDragEndCallback = void Function(DragEndDetails details, {required bool isClosing})
- Called when the user stops dragging a StreamSheetRoute.
- StreamSheetDragStartCallback = void Function(DragStartDetails details)
- Called when the user begins dragging a StreamSheetRoute.
- StreamSheetScrollableWidgetBuilder = Widget Function(BuildContext context, ScrollController scrollController)
- Signature for a builder that takes a BuildContext and a ScrollController to build a scrollable widget inside a StreamSheetRoute.