Files
Nikolay Vitkov bb976f7b9e Update node_module dependecies
Add one more deps "@typescript-eslint/utils" to top level to be used in our own custom rules (also needed override if I didn't).

Bug: none
Change-Id: I130415d1ec5f096ca51200df3eb688dadd963d0f
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6343232
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Commit-Queue: Nikolay Vitkov <nvitkov@chromium.org>
2025-03-12 06:49:46 -07:00

23 lines
488 B
JavaScript

import { isRoot } from './typeGuards.mjs';
/** @import { Node } from 'postcss' */
export const STOP = 'STOP';
/**
* Iterates over each node up to the root node.
*
* @param {Node} node
* @param {(node: Node) => void | STOP} callback
* @returns {void}
*/
export default function eachNodeUpToRoot(node, callback) {
let currentNode = node.parent;
while (currentNode && !isRoot(currentNode)) {
if (callback(currentNode) === STOP) break;
currentNode = currentNode.parent;
}
}