operationsEvents function

Future<Stream<OperationsEvents>> operationsEvents(
  1. Stream<QueryResult<Object?>> events
)

Returns a Stream of Balances of the specified MyUser's purse.

Implementation

Future<Stream<OperationsEvents>> operationsEvents(
  Stream<QueryResult> events,
) async {
  Log.debug('operationsEvents()');

  return events.asyncExpand((event) async* {
    Log.debug('_operationsEvents() -> ${event.data}', 'WalletRepository');

    final events = OperationsEvents$Subscription.fromJson(
      event.data!,
    ).operationsEvents;

    if (events.$$typename == 'SubscriptionInitialized') {
      events
          as OperationsEvents$Subscription$OperationsEvents$SubscriptionInitialized;
      yield const OperationsEventsInitialized();
    } else if (events.$$typename == 'OperationsList') {
      events as OperationsEvents$Subscription$OperationsEvents$OperationsList;
      yield OperationsEventsList();
    } else if (events.$$typename == 'OperationEventsVersioned') {
      final mixin =
          events
              as OperationsEvents$Subscription$OperationsEvents$OperationEventsVersioned;
      yield OperationsEventsEvent(
        OperationsEventsVersioned(
          mixin.events.map(operationEvent).toList(),
          mixin.ver,
          mixin.listVer,
        ),
      );
    }
  });
}