From c41e34793df1426202975a932afa539b50beebcf Mon Sep 17 00:00:00 2001 From: saqimtiaz Date: Sat, 7 Nov 2020 11:00:47 +0100 Subject: [PATCH] Add x-listops filter toggle (#4990) --- core/modules/filters/x-listops.js | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/core/modules/filters/x-listops.js b/core/modules/filters/x-listops.js index dc290a42e..ca04b0e2b 100644 --- a/core/modules/filters/x-listops.js +++ b/core/modules/filters/x-listops.js @@ -187,4 +187,19 @@ Extended filter operators to manipulate the current list. }, []); return set; }; + + /* + Toggles an item in the current list. + */ + exports.toggle = function(source, operator) { + var results = prepare_results(source), + index = results.indexOf(operator.operand); + if(index === -1) { + results.push(operator.operand); + } else { + results.splice(index, 1); + } + return results; + }; + })();