broadcast_bloc 0.1.0-dev.2 copy "broadcast_bloc: ^0.1.0-dev.2" to clipboard
broadcast_bloc: ^0.1.0-dev.2 copied to clipboard

An extension to the bloc state management library which adds support for broadcasting state changes to stream channels.

Broadcast Bloc #

build coverage pub package style: very good analysis License: MIT

An extension to the bloc state management library which adds support for broadcasting state changes to stream channels.

Quick Start 🚀 #

// Extend `BroadcastCubit` instead of `Cubit`.
// The package also exports:
// * `BroadcastBloc`
// * `BroadcastMixin`
class CounterCubit extends BroadcastCubit<int> {
  CounterCubit() : super(0);

  void increment() => emit(state + 1);
}

void main() {
  final controller = StreamController<String>(sync: true);
  final subscription = controller.stream.listen(print);
  final channel = StreamChannel(controller.stream, controller.sink);

  // Create an instance of the cubit.
  final cubit = CounterCubit()
    // Subscribe the channel.
    ..subscribe(channel)
    // Trigger a state change which will be broadcast to subscribed channels.
    ..increment()
    // Unsubscribe channel.
    ..unsubscribe(channel);

  subscription.cancel();
  cubit.close();
}
26
likes
160
points
382
downloads

Publisher

verified publisherfelangel.dev

Weekly Downloads

An extension to the bloc state management library which adds support for broadcasting state changes to stream channels.

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (license)

Dependencies

bloc, stream_channel

More

Packages that depend on broadcast_bloc