resource_widget 3.1.1 copy "resource_widget: ^3.1.1" to clipboard
resource_widget: ^3.1.1 copied to clipboard

Simplifies usage of the flutter `FutureBuilder` and `StreamBuilder` in combination with `Resource<T>` (of `resource_result` package).

example/example.dart

import 'package:flutter/material.dart';
import 'package:resource_result/resource_result.dart';
import 'package:resource_widget/resource_widget.dart';

final myIntResource = Success(3);

final myIntResourceBuilder = ResourceBuilder(
  resource: myIntResource,
  success: (context, myInt) => Text("My int loaded successfully: $myInt"),
  loadingIndicator: (context, data) => const CircularProgressIndicator(),
  failureBuilder: (context, message) =>
      Text("Failed to get my int :(. $message"),
);

final Future<Resource<int>> getSomeIntFuture = Future.value(Success(3));

final myIntResourceFutureBuilder = ResourceFutureBuilder(
  future: getSomeIntFuture,
  success: (context, myInt) => Text("My int loaded successfully: $myInt"),
  loadingIndicator: (context, data) => const CircularProgressIndicator(),
  /* optional handleError: defaults to red Text with error message */
  failureBuilder: (context, message) =>
      Text("Failed to get my int :(. $message"),
);

final Stream<Resource<int>> someIntStream =
    Stream.fromIterable([Loading(null), Success(3), Failure("Failed")]);

final myIntResourceStreamBuilder = ResourceStreamBuilder(
    stream: someIntStream,
    success: (context, myInt) => Text("My int loaded successfully: $myInt"),
    loadingIndicator: (context, data) => const CircularProgressIndicator(),
    /* optional handleError: defaults to red Text with error message */
    failureBuilder: (context, message) =>
        Text("Failed to get my int :(. $message"));
1
likes
140
points
57
downloads

Publisher

unverified uploader

Weekly Downloads

Simplifies usage of the flutter `FutureBuilder` and `StreamBuilder` in combination with `Resource<T>` (of `resource_result` package).

Documentation

API reference

License

MIT (license)

Dependencies

flutter, resource_result

More

Packages that depend on resource_widget