From 972456ca072c4f687d7c6e91fce08768ee78063f Mon Sep 17 00:00:00 2001 From: saqimtiaz Date: Tue, 27 Oct 2020 17:48:40 +0100 Subject: [PATCH] Add new 'filter' prefix for filter runs (#4918) --- core/modules/filterrunprefixes/filter.js | 31 ++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 core/modules/filterrunprefixes/filter.js diff --git a/core/modules/filterrunprefixes/filter.js b/core/modules/filterrunprefixes/filter.js new file mode 100644 index 000000000..726732c8e --- /dev/null +++ b/core/modules/filterrunprefixes/filter.js @@ -0,0 +1,31 @@ +/*\ +title: $:/core/modules/filterrunprefixes/filter.js +type: application/javascript +module-type: filterrunprefix + +\*/ +(function(){ + +/*jslint node: true, browser: true */ +/*global $tw: false */ +"use strict"; + +/* +Export our filter function +*/ +exports.filter = function(operationSubFunction) { + return function(results,source,widget) { + if(results.length > 0) { + var resultsToRemove = []; + $tw.utils.each(results,function(result) { + var filtered = operationSubFunction($tw.wiki.makeTiddlerIterator([result]),widget); + if(filtered.length === 0) { + resultsToRemove.push(result); + } + }); + $tw.utils.removeArrayEntries(results,resultsToRemove); + } + } +}; + +})();