ButtonState class

This union class represents the state of the button in either a Idling, Loading, Success or Error state. This can be considered a enum with extra utilities for ease of use.

{@tool snippet}

final buttonColor = buttonState.when(
  idle: () => Colors.pink,
  loading: () => Colors.blue,
  success: () => Colors.green,
  error: () => Colors.red,
);

{@end-tool}

You can also disregard other states and handle only those you'd like using the .maybeWhen syntax.

/// {@tool snippet}

final buttonColor = buttonState.maybeWhen(
  idle: () => Colors.pink,
  orElse: () => Colors.red,
);

{@end-tool}

Implementers
Annotations
  • @freezed

Constructors

ButtonState.error()
const
factory
ButtonState.idle()
const
factory
ButtonState.loading()
const
factory
ButtonState.success()
const
factory

Properties

hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited

Methods

map<TResult extends Object?>({required TResult idle(Idle value), required TResult loading(Loading value), required TResult success(Success value), required TResult error(Error value)}) → TResult
inherited
mapOrNull<TResult extends Object?>({TResult idle(Idle value)?, TResult loading(Loading value)?, TResult success(Success value)?, TResult error(Error value)?}) → TResult?
inherited
maybeMap<TResult extends Object?>({TResult idle(Idle value)?, TResult loading(Loading value)?, TResult success(Success value)?, TResult error(Error value)?, required TResult orElse()}) → TResult
inherited
maybeWhen<TResult extends Object?>({TResult idle()?, TResult loading()?, TResult success()?, TResult error()?, required TResult orElse()}) → TResult
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited
when<TResult extends Object?>({required TResult idle(), required TResult loading(), required TResult success(), required TResult error()}) → TResult
inherited
whenOrNull<TResult extends Object?>({TResult idle()?, TResult loading()?, TResult success()?, TResult error()?}) → TResult?
inherited

Operators

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