query method
Future<List<TEntity>>
query(
{ - Filter<IEntity> where(
- TMeta t
)?,
- Iterable<ColumnDefinition<TEntity, dynamic>>? columns(
- TMeta t
)?,
- List<OrmOrder<IEntity>>? orderBy(
- TMeta t
)?,
- int? limit,
- int? offset,
- bool? useIsolate,
- Map<String, dynamic>? isolateArgs,
- void onIsolatePreMap(
- Map<String, dynamic>? isolateArgs
)?,
})
Implementation
@override
Future<List<TEntity>> query({
Filter Function(TMeta t)? where,
Iterable<ColumnDefinition<TEntity, dynamic>>? Function(TMeta t)? columns,
List<OrmOrder>? Function(TMeta t)? orderBy,
int? limit,
int? offset,
bool? useIsolate,
Map<String, dynamic>? isolateArgs,
void Function(Map<String, dynamic>? isolateArgs)? onIsolatePreMap,
}) async {
final records = await getItems() ?? {};
if (where == null) {
return records.entries
.map(
(e) => mType.load(e.value as Map<String, dynamic>) as TEntity,
)
.toList();
}
final filters = where(t).filters;
final res = records.entries.where(
(element) {
return _where(element, filters);
},
);
return res
.map(
(e) => mType.load(e.value as Map<String, dynamic>) as TEntity,
)
.toList();
}