webpack-config
Version:
Helps to load, extend and merge webpack configs
33 lines (28 loc) • 857 B
JavaScript
import RecursiveIterator from 'recursive-iterator';
/**
* @external RecursiveIterator
* @see https://github.com/nervgh/recursive-iterator
*/
/**
* @class
* @extends {external:RecursiveIterator}
*/
class ConfigDependencyIterator extends RecursiveIterator {
/**
* @constructor
* @param {ConfigDependency} root
* @param {Number} [bypassMode=0]
* @param {Boolean} [ignoreCircular=true]
* @param {Number} [maxDeep]
*/
constructor(root, bypassMode = 0, ignoreCircular = true, maxDeep) {
super(root, bypassMode, ignoreCircular, maxDeep);
}
/**
* @override
*/
getStatesOfChildNodes(node, path, deep) {
return node.children.map(child => this.getState(node, child, child.root.filename, path.concat(child.root.filename), deep + 1));
}
}
export default ConfigDependencyIterator;