Map<String, dynamic> composeFilter(FilterParams? filter) {
filter = filter ?? FilterParams();
var key = filter.getAsNullableString('key');
var filterCondition = <String, dynamic>{};
if (key != null) {
filterCondition['key'] = key;
}
return filterCondition;
}
Map<String, dynamic> composeSort(SortParams? sort) {
sort = sort ?? SortParams(null);
var sortCondition = <String, dynamic>{};
for (var field in sort) {
sortCondition[field.name!] = field.ascending ? 1 : -1;
}
return sortCondition;
}