streamFirst method

Stream<T?> streamFirst(
  1. {Query<Object?> queryBuilder(
    1. Query<Object?> query
    )?,
  2. dynamic onChange(
    1. T? dataChange
    )?}
)

To stream document data by document id call streamFind as pass docId Stream

Implementation

Stream<T?> streamFirst(
    {Query queryBuilder(Query query)?, Function(T? dataChange)? onChange}) {
  Query _query = _collectionReference;
  if (queryBuilder != null) {
    _query = queryBuilder(_query);
  }
  return _collectionReference.limit(1).snapshots().map((snapshot) {
    if (snapshot.docChanges.isNotEmpty &&
        !snapshot.metadata.hasPendingWrites) {
      if (onChange != null) onChange(_toModel(snapshot.docChanges.first.doc));
    }
    return _toModel(snapshot.docs.first);
  });
}