| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 | 
							- 'use strict';
 
- /**
 
-  * Module dependencies.
 
-  */
 
- var _ = require('lodash'),
 
- 	glob = require('glob');
 
- /**
 
-  * Get files by glob patterns
 
-  */
 
- module.exports.getGlobbedFiles = function(globPatterns, removeRoot) {
 
- 	// For context switching
 
- 	var _this = this;
 
- 	// URL paths regex
 
- 	var urlRegex = new RegExp('^(?:[a-z]+:)?\/\/', 'i');
 
- 	// The output array
 
- 	var output = [];
 
- 	// If glob pattern is array so we use each pattern in a recursive way, otherwise we use glob
 
- 	if (_.isArray(globPatterns)) {
 
- 		globPatterns.forEach(function(globPattern) {
 
- 			output = _.union(output, _this.getGlobbedFiles(globPattern, removeRoot));
 
- 		});
 
- 	} else if (_.isString(globPatterns)) {
 
- 		if (urlRegex.test(globPatterns)) {
 
- 			output.push(globPatterns);
 
- 		} else {
 
- 			glob(globPatterns, {
 
- 				sync: true
 
- 			}, function(err, files) {
 
- 				if (removeRoot) {
 
- 					files = files.map(function(file) {
 
- 						return file.replace(removeRoot, '');
 
- 					});
 
- 				}
 
- 				output = _.union(output, files);
 
- 			});
 
- 		}
 
- 	}
 
- 	return output;
 
- };
 
 
  |