function (bundleSeed) {
        var self = this,
            parentName,
            parent,
            bundle,
            filters;
        // TODO -- merge options (second arg) over bundleSeed.options

        parentName = this._getBundleNameByPath(libpath.dirname(bundleSeed.baseDirectory));
        parent = this._bundles[parentName];

        bundle = this._makeBundle(bundleSeed, parent);
        this._bundles[bundle.name] = bundle;
        filters = this._options.exclude.concat(['node_modules', /^\./]);
        // adding the bundle dir itself for BC
        this._processFile(bundle.baseDirectory);
        walk.walkSync(bundle.baseDirectory, {
            filters: [],
            listeners: {
                directories: function (root, dirStatsArray, next) {
                    var i, dirStats, exclude;
                    function filterDir(filter) {
                        if (dirStats.name.match(filter)) {
                            return true;
                        }
                    }
                    for (i = dirStatsArray.length - 1; i >= 0; i -= 1) {
                        dirStats = dirStatsArray[i];
                        exclude = filters.some(filterDir);
                        if (exclude) {
                            // the sync walk api is pretty bad, it requires to
                            // mutate the actual dir array
                            dirStatsArray.splice(i, 1);
                        } else {
                            self._processFile(libpath.join(root, dirStats.name));
                        }
                    }
                    next();
                },
                file: function(root, fileStats, next) {
                    self._processFile(libpath.join(root, fileStats.name));
                    next();
                },
                errors: function(root, nodeStatsArray, next) {
                    next();
                }
            }
        });

        return bundle;
    }
function (bundleSeed) {
        var self = this,
            parentName,
            parent,
            bundle,
            filters;
        

        parentName = this._getBundleNameByPath(libpath.dirname(bundleSeed.baseDirectory));
        parent = this._bundles[parentName];

        bundle = this._makeBundle(bundleSeed, parent);
        this._bundles[bundle.name] = bundle;
        filters = this._options.exclude.concat(['node_modules', /^\./]);
        
        this._processFile(bundle.baseDirectory);
        walk.walkSync(bundle.baseDirectory, {
            filters: [],
            listeners: {
                directories: function (root, dirStatsArray, next) {
                    var i, dirStats, exclude;
                    function filterDir(filter) {
                        if (dirStats.name.match(filter)) {
                            return true;
                        }
                    }
                    for (i = dirStatsArray.length - 1; i >= 0; i -= 1) {
                        dirStats = dirStatsArray[i];
                        exclude = filters.some(filterDir);
                        if (exclude) {
                            
                            
                            dirStatsArray.splice(i, 1);
                        } else {
                            self._processFile(libpath.join(root, dirStats.name));
                        }
                    }
                    next();
                },
                file: function(root, fileStats, next) {
                    self._processFile(libpath.join(root, fileStats.name));
                    next();
                },
                errors: function(root, nodeStatsArray, next) {
                    next();
                }
            }
        });

        return bundle;
    }
function ( bundleSeed ) { var self = this , parentName , parent , bundle , filters ; // TODO -- merge options (second arg) over bundleSeed.options parentName = this . _getBundleNameByPath ( libpath . dirname ( bundleSeed . baseDirectory ) ) ; parent = this . _bundles [ parentName ] ; bundle = this . _makeBundle ( bundleSeed , parent ) ; this . _bundles [ bundle . name ] = bundle ; filters = this . _options . exclude . concat ( [ 'node_modules' , / ^\. / ] ) ; // adding the bundle dir itself for BC this . _processFile ( bundle . baseDirectory ) ; walk . walkSync ( bundle . baseDirectory , { filters : [ ] , listeners : { directories : function ( root , dirStatsArray , next ) { var i , dirStats , exclude ; function filterDir ( filter ) { if ( dirStats . name . match ( filter ) ) { return true ; } } for ( i = dirStatsArray . length - 1 ; i >= 0 ; i -= 1 ) { dirStats = dirStatsArray [ i ] ; exclude = filters . some ( filterDir ) ; if ( exclude ) { // the sync walk api is pretty bad, it requires to // mutate the actual dir array dirStatsArray . splice ( i , 1 ) ; } else { self . _processFile ( libpath . join ( root , dirStats . name ) ) ; } } next ( ) ; } , file : function ( root , fileStats , next ) { self . _processFile ( libpath . join ( root , fileStats . name ) ) ; next ( ) ; } , errors : function ( root , nodeStatsArray , next ) { next ( ) ; } } } ) ; return bundle ; }
Creates a bundle from an NPM package, and queues up files in the package.
@private
@method _walkBundle
@param {object} bundleSeed Metadata about the package. See the docs for _makeBundleSeed()
for format of this metadata.
@return {Bundle} The bundle made from the NPM package.
Creates a bundle from an NPM package and queues up files in the package .