1
0
mirror of https://github.com/svg/svgo.git synced 2025-07-29 20:21:14 +03:00

Replace closestByName utility with visitSkip (#1613)

The last usage of closestByName utility based on node.parentNode
is removed here. One step closer to clean ast in v3.
This commit is contained in:
Bogdan Chadkin
2021-12-07 11:05:15 +03:00
committed by GitHub
parent 656bb09ccd
commit 79d4babcaf
2 changed files with 26 additions and 32 deletions

View File

@ -39,22 +39,6 @@ const matches = (node, selector) => {
};
exports.matches = matches;
/**
* @type {(node: XastChild, name: string) => null | XastChild}
*/
const closestByName = (node, name) => {
let currentNode = node;
while (currentNode) {
if (currentNode.type === 'element' && currentNode.name === name) {
return currentNode;
}
// @ts-ignore parentNode is hidden from public usage
currentNode = currentNode.parentNode;
}
return null;
};
exports.closestByName = closestByName;
const visitSkip = Symbol();
exports.visitSkip = visitSkip;