Fix missing return values in streaming (#26233)

This commit is contained in:
Renaud Chaput 2023-07-28 19:11:58 +02:00 committed by Claire
parent 8018d478ab
commit 879b8b69d3

View file

@ -726,7 +726,7 @@ const startWorker = async (workerId) => {
}
// If the payload already contains the `filtered` property, it means
// that filtering has been applied on the ruby on rails side, as
// that filtering has been applied on the ruby on rails side, as
// such, we don't need to construct or apply the filters in streaming:
if (Object.prototype.hasOwnProperty.call(payload, "filtered")) {
transmit(event, payload);
@ -798,12 +798,12 @@ const startWorker = async (workerId) => {
const filter_results = Object.values(req.cachedFilters).reduce((results, cachedFilter) => {
// Check the filter hasn't expired before applying:
if (cachedFilter.expires_at !== null && cachedFilter.expires_at < now) {
return;
return results;
}
// Just in-case JSDOM fails to find textContent in searchableContent
if (!searchableTextContent) {
return;
return results;
}
const keyword_matches = searchableTextContent.match(cachedFilter.regexp);
@ -818,6 +818,8 @@ const startWorker = async (workerId) => {
status_matches: null
});
}
return results;
}, []);
// Send the payload + the FilterResults as the `filtered` property