Tweak filterByPredicate to avoid calling transform when children array is empty.

This commit is contained in:
David Anson 2023-03-10 22:22:54 -08:00
parent 37154a5dff
commit 4ec9b2049b
2 changed files with 9 additions and 4 deletions

View file

@ -1571,9 +1571,11 @@ function filterByPredicate(tokens, allowed, transform) {
if (allowed(token)) { if (allowed(token)) {
result.push(token); result.push(token);
} }
if (token.children.length > 0) {
var transformed = transform ? transform(token.children) : token.children; var transformed = transform ? transform(token.children) : token.children;
pending.unshift.apply(pending, _toConsumableArray(transformed)); pending.unshift.apply(pending, _toConsumableArray(transformed));
} }
}
return result; return result;
} }

View file

@ -116,9 +116,12 @@ function filterByPredicate(tokens, allowed, transform) {
if (allowed(token)) { if (allowed(token)) {
result.push(token); result.push(token);
} }
const transformed = transform ? transform(token.children) : token.children; if (token.children.length > 0) {
const transformed =
transform ? transform(token.children) : token.children;
pending.unshift(...transformed); pending.unshift(...transformed);
} }
}
return result; return result;
} }