getFirst<TModel extends TRepositoryModel> method

Future<TModel> getFirst<TModel extends TRepositoryModel>({
  1. OfflineFirstGetPolicy policy = OfflineFirstGetPolicy.awaitRemoteWhenNoneExist,
  2. Query? query,
  3. bool seedOnly = false,
})

Retrieves the first instance of TModel with certainty that it exists. If no instances exist, a StateError is thrown from within Dart's core Iterable#first method. It is recommended to use getFirstOrNull instead.

Automatically applies 'limit': 1 to the query.

Implementation

Future<TModel> getFirst<TModel extends TRepositoryModel>({
  OfflineFirstGetPolicy policy = OfflineFirstGetPolicy.awaitRemoteWhenNoneExist,
  Query? query,
  bool seedOnly = false,
}) async {
  final result = await super.get<TModel>(
    policy: policy,
    query: query?.copyWith(limit: 1),
    seedOnly: seedOnly,
  );

  return result.first;
}