listenCollection<T extends Object<T> > method
void
listenCollection<T extends Object<T> >({})
Implementation
void listenCollection<T extends object.Object<T>>({
required CollectionReference reference,
Query<Object?> Function(CollectionReference)? query,
Future Function(List<T>, int, bool)? callback,
Future Function(List<T>, int)? deletionCallback,
Future Function(int)? emptyCallback,
}) {
final int? maxActivePages = query != null
? query(reference).getValueOf<int>(reference, maxActivePagesKey, '==')
: null;
final q =
query == null ? reference : query(reference).removeLibFields(reference);
final fq = FirestoreQuery(
'${reference.path}_${q.parameters.values.map((e) => e.toString()).toList().join('_')}',
q,
false,
);
_internalCollectionObserver<T>(
fq,
0,
maxActivePages,
callback,
deletionCallback,
emptyCallback,
null,
);
}