UNPKG

601 BJavaScriptView Raw
1var $, _, walk;
2
3$ = {};
4
5$.normalizePath = require('../dist/normalizePath');
6
7_ = {};
8
9_.merge = require('lodash/merge');
10
11walk = require('klaw');
12
13module.exports = async function(source, callback) {
14 if (!(source && callback)) {
15 throw new Error('walk_/error: invalid argument length');
16 }
17 source = $.normalizePath(source);
18 await new Promise(function(resolve) {
19 return walk(source).on('data', function(item) {
20 return callback(_.merge(item, {
21 path: $.normalizePath(item.path)
22 }));
23 }).on('end', function() {
24 return resolve();
25 });
26 });
27 return this;
28};