UNPKG

@yookue/ts-lang-utils

Version:

Common lang utilities for typescript

24 lines 798 B
import _createForOfIteratorHelper from "@babel/runtime/helpers/esm/createForOfIteratorHelper"; import { getProp } from "../ObjectUtils/getProp"; export function forEach(nodes, callback) { var childrenKey = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'children'; if (!nodes || !nodes.length || !callback || !childrenKey) { return; } var _iterator = _createForOfIteratorHelper(nodes), _step; try { for (_iterator.s(); !(_step = _iterator.n()).done;) { var _node = _step.value; callback(_node, nodes); var children = getProp(_node, childrenKey); if (children && Array.isArray(children)) { forEach(children, callback, childrenKey); } } } catch (err) { _iterator.e(err); } finally { _iterator.f(); } }