onBroadcastMessage static method
- String name = 'fcm',
Returns a stream broadcasting the browser's fcm broadcast channel
changes.
Implementation
static Stream<dynamic> onBroadcastMessage({String name = 'fcm'}) {
StreamController<dynamic>? controller;
final web.BroadcastChannel channel = web.BroadcastChannel(name);
controller = StreamController(
onListen: () {
void fn(web.Event e) =>
controller?.add((e as web.MessageEvent).data.dartify());
channel.onmessage = fn.toJS;
},
onCancel: () => channel.onmessage = null,
);
return controller.stream;
}