SubZeroAvatar class

A display-only avatar component following the SubZero 2.0 Design System.

Represents a user or organization with three display modes:

  1. Image: When imageUrl is provided, displays a circular photo.
  2. Initials: When initials is provided (and no image), displays text.
  3. Icon: Falls back to a person icon when neither is available.

Example usage:

// With image
SubZeroAvatar(
  imageUrl: 'https://example.com/photo.jpg',
  semanticLabel: 'Jane Doe profile picture',
  size: SubZeroAvatarSize.xl,
)

// With initials
SubZeroAvatar(
  initials: 'JD',
  size: SubZeroAvatarSize.m,
)

// With custom icon
SubZeroAvatar(
  icon: Icons.business,
  size: SubZeroAvatarSize.l,
)
Inheritance
Available extensions

Constructors

SubZeroAvatar({Key? key, String? imageUrl, String? initials, IconData? icon, SubZeroAvatarSize size = SubZeroAvatarSize.m, String? semanticLabel, Color? backgroundColor, Color? foregroundColor})
Creates a SubZero avatar component.
const

Properties

backgroundColor → Color?
Optional background color override. Defaults to a neutral gray for icon/initials mode.
final
foregroundColor → Color?
Optional foreground color override (icon/text color). Defaults to contrasting color based on background.
final
hashCode → int
The hash code for this object.
no setterinherited
icon → IconData?
Custom icon to display when neither image nor initials are available. Defaults to Icons.person if not specified.
final
imageUrl → String?
URL of the image to display. Takes priority over initials and icon.
final
initials → String?
Initials to display when image is not available (e.g., "JD" for "Jane Doe"). Only the first 2 characters will be displayed.
final
key → Key?
Controls how one widget replaces another widget in the tree.
finalinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
semanticLabel → String?
Semantic label for accessibility (required when image is displayed).
final
size → SubZeroAvatarSize
Size variant of the avatar.
final

Methods

build(BuildContext context) → Widget
Describes the part of the user interface represented by this widget.
override
createElement() → StatelessElement
Creates a StatelessElement to manage this widget's location in the tree.
inherited
debugDescribeChildren() → List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children.
inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) → DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep.
inherited
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) → String
A string representation of this object.
inherited
toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) → String
Returns a string representation of this node and its descendants.
inherited
toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String
Returns a one-line detailed description of the object.
inherited
toStringShort() → String
A short, textual description of this widget.
inherited
withCountBadge({required int count, int maxCount = 99, SubZeroBadgeStyle style = SubZeroBadgeStyle.filled, SubZeroBadgeSize size = SubZeroBadgeSize.medium, SubZeroBadgeAlignment alignment = const SubZeroBadgeAlignment(), bool show = true}) → Widget

Available on Widget, provided by the SubZeroBadgeExtension extension

Wrap this widget with a count badge
withDotBadge({SubZeroBadgeStyle style = SubZeroBadgeStyle.filled, SubZeroBadgeSize size = SubZeroBadgeSize.medium, SubZeroBadgeAlignment alignment = const SubZeroBadgeAlignment(), bool show = true}) → Widget

Available on Widget, provided by the SubZeroBadgeExtension extension

Wrap this widget with a dot badge

Operators

operator ==(Object other) → bool
The equality operator.
inherited