filters: "not" query
This commit is contained in:
parent
77f0b90b9d
commit
0ed1556870
1 changed files with 9 additions and 3 deletions
|
@ -6,12 +6,18 @@ import 'package:outline_material_icons/outline_material_icons.dart';
|
|||
class QueryFilter extends CollectionFilter {
|
||||
static const type = 'query';
|
||||
|
||||
final String query, upQuery;
|
||||
final String query;
|
||||
bool Function(ImageEntry) _filter;
|
||||
|
||||
QueryFilter(this.query) : upQuery = query.toUpperCase();
|
||||
QueryFilter(this.query) {
|
||||
var upQuery = query.toUpperCase();
|
||||
final not = upQuery.startsWith('-');
|
||||
if (not) upQuery = upQuery.substring(1);
|
||||
_filter = not ? (entry) => !entry.search(upQuery) : (entry) => entry.search(upQuery);
|
||||
}
|
||||
|
||||
@override
|
||||
bool filter(ImageEntry entry) => entry.search(upQuery);
|
||||
bool filter(ImageEntry entry) => _filter(entry);
|
||||
|
||||
@override
|
||||
bool get isUnique => false;
|
||||
|
|
Loading…
Reference in a new issue