getFirstFromDB<T extends YustDoc> method
Future<T?>
getFirstFromDB<T extends YustDoc>(
- YustDocSetup<
T> docSetup, { - List<
YustFilter> ? filters, - List<
YustOrderBy> ? orderBy,
Returns the first YustDoc in a list directly from the server.
Be careful with offline functionality. The result is null if no document was found.
Implementation
Future<T?> getFirstFromDB<T extends YustDoc>(
YustDocSetup<T> docSetup, {
List<YustFilter>? filters,
List<YustOrderBy>? orderBy,
}) async {
final response = await _retryOnException<List<RunQueryResponseElement>>(
'getFirstFromDB',
_getDocumentPath(docSetup),
() => _api.projects.databases.documents.runQuery(
getQuery(docSetup, filters: filters, orderBy: orderBy, limit: 1),
_getParentPath(docSetup)));
if (response.isEmpty || response.first.document == null) {
return null;
}
dbLogCallback?.call(DatabaseLogAction.get, _getDocumentPath(docSetup), 1);
return _transformDoc<T>(docSetup, response.first.document!);
}