broadcast_bloc 0.1.0 copy "broadcast_bloc: ^0.1.0" to clipboard
broadcast_bloc: ^0.1.0 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: bloc lint License: MIT

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

Learn more at bloclibrary.dev!


Sponsors #

Our top sponsors are shown below! [Become a Sponsor]


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
373
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

Topics

#bloc #state-management #broadcast #channel

Documentation

Documentation
API reference

Funding

Consider supporting this project:

github.com

License

MIT (license)

Dependencies

bloc, stream_channel

More

Packages that depend on broadcast_bloc