ApiResultWrapper<T> class
Widget to facilitate the display of data obtained through an Web API call.
- future is a future describing the API call, containing an Either where the right is of type
T, and the left is a ApiError in case the call is unsuccessful. - builder is a builder function that build a Widget from the result of the future in case it's a right Either
- errorMessage is an error message to display in case of error, if not provide, the message will be
"Une erreur est survenue"
This widget will build another Widget based on the result of future:
- If the future has no data yet, ApiResultWrapper will display a CircularProgressIndicator.
- If the future has an error, the errorMessage will be displayed though a Text widget and if the app run in debug mode, a String conversion of the error will be displayed beneath the message.
- If the future is a left Either, the ApiError will be displayed with the ApiErrorDisplayer widget.
- Finally, if the future is a right Either the
Tresult will be passed to builder, and the Widget returned by builder will be returned.
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatelessWidget
- ApiResultWrapper
Constructors
-
ApiResultWrapper({Key? key, required Future<
Either< future, required Widget builder(BuildContext context, T result), String? errorMessage})ApiError, T> > -
const
Properties
- builder → Widget Function(BuildContext context, T result)
-
final
- errorMessage → String?
-
final
-
future
→ Future<
Either< ApiError, T> > -
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- 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
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
DiagnosticsNodeobjects 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}) → 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
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited