onObject property

  1. @override
Stream<KnotObject> get onObject
override

Implementation

@override
Stream<KnotObject> get onObject {
  _onObject ??= eventChannel.receiveBroadcastStream().map((dynamic event) {
    String eventName = event['eventName'];
    switch (eventName) {
      case 'onError':
        return KnotError.fromJson(event);
      case 'onSuccess':
        return KnotSuccess.fromJson(event);
      case 'onEvent':
        return KnotEvent.fromJson(event);
      case 'onExit':
        return KnotExit.fromJson(event);
      default:
        throw Exception('Unexpected event name: $eventName');
    }
  });
  return _onObject!;
}