diff options
Diffstat (limited to 'client/lib')
-rw-r--r-- | client/lib/filter.js | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/client/lib/filter.js b/client/lib/filter.js index 1ca3a280..b0695625 100644 --- a/client/lib/filter.js +++ b/client/lib/filter.js @@ -439,6 +439,14 @@ class AdvancedFilter { const commands = this._filterToCommands(); return this._arrayToSelector(commands); } + getRegexSelector() { + // generate a regex for filter list + this._dep.depend(); + return new RegExp( + `^.*${this._filter.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')}.*$`, + 'i', + ); + } } // The global Filter object. @@ -455,8 +463,16 @@ Filter = { hideEmpty: new SetFilter(), customFields: new SetFilter('_id'), advanced: new AdvancedFilter(), - - _fields: ['labelIds', 'members', 'archive', 'hideEmpty', 'customFields'], + lists: new AdvancedFilter(), // we need the ability to filter list by name as well + + _fields: [ + 'labelIds', + 'members', + 'archive', + 'hideEmpty', + 'customFields', + 'lists', + ], // We don't filter cards that have been added after the last filter change. To // implement this we keep the id of these cards in this `_exceptions` fields |