UNPKG

respond-framework

Version:
29 lines (28 loc) 964 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.traverseModulesAsyncParallel = exports.traverseModules = exports.traverseModuleChildren = void 0; const traverseModuleChildren = (state, callback) => { for (const k of state.moduleKeys) { callback(state[k], state); traverseModuleChildren(state[k], callback); } }; exports.traverseModuleChildren = traverseModuleChildren; const traverseModules = (state, callback, parent, b = '') => { callback(state, parent, b); for (const k of state.moduleKeys) { traverseModules(state[k], callback, state, b ? `${b}.${k}` : k); } }; exports.traverseModules = traverseModules; const traverseModulesAsyncParallel = (state, callback) => { const promises = []; traverseModules(state, state => { const promise = callback(state); promises.push(promise); }); return Promise.all(promises); }; exports.traverseModulesAsyncParallel = traverseModulesAsyncParallel;