riverpod_bloc_stream 5.0.0
riverpod_bloc_stream: ^5.0.0 copied to clipboard
BlocStreamProvider for riverpod
example/riverpod_bloc_stream_example.dart
import 'package:bloc_stream/bloc_stream.dart';
import 'package:riverpod/riverpod.dart';
import 'package:riverpod_bloc_stream/riverpod_bloc_stream.dart';
typedef CounterAction = void Function(CounterBloc, void Function(int));
CounterAction increment() => (b, add) => add(b.value + 1);
CounterAction decrement() => (b, add) => add(b.value - 1);
class CounterBloc extends BlocStream<int> {
CounterBloc() : super(0);
}
final counterBloc = BlocStreamProvider((ref) => CounterBloc());
void main() async {
final container = ProviderContainer();
final bloc = container.read(counterBloc);
bloc.add(increment());
bloc.add(increment());
await Future.delayed(Duration());
// Prints '2'
print(container.read(counterBloc.value));
container.dispose();
}