Sha256: 2514beb2e9bdceeb9bbc8791a77fb19e0ca0d7db8edbc69292f6781664bc1fc8

Contents?: true

Size: 1.33 KB

Versions: 62

Compression:

Stored size: 1.33 KB

Contents

/*
	MIT License http://www.opensource.org/licenses/mit-license.php
	Author Tobias Koppers @sokra
*/
var createInnerCallback = require("./createInnerCallback");

function DirectoryDefaultFilePlugin(files) {
	this.files = files;
}
module.exports = DirectoryDefaultFilePlugin;

DirectoryDefaultFilePlugin.prototype.apply = function(resolver) {
	var files = this.files;
	resolver.plugin("directory", function(request, callback) {
		var fs = this.fileSystem;
		var topLevelCallback = callback;
		var directory = this.join(request.path, request.request);
		fs.stat(directory, function(err, stat) {
			if(err || !stat) {
				if(callback.log) callback.log(directory + " doesn't exist (directory default file)");
				return callback();
			}
			if(!stat.isDirectory()) {
				if(callback.log) callback.log(directory + " is not a directory (directory default file)");
				return callback();
			}
			this.forEachBail(files, function(file, callback) {
				this.doResolve("file", {
					path: directory,
					query: request.query,
					request: file
				}, createInnerCallback(function(err, result) {
					if(!err && result) return callback(result);
					return callback();
				}, topLevelCallback, "directory default file " + file));
			}.bind(this), function(result) {
				if(!result) return callback();
				return callback(null, result);
			});
		}.bind(this));
	});
};

Version data entries

62 entries across 62 versions & 1 rubygems

Version Path
smock-0.1.268 node_modules/webpack/node_modules/enhanced-resolve/lib/DirectoryDefaultFilePlugin.js
smock-0.1.267 node_modules/webpack/node_modules/enhanced-resolve/lib/DirectoryDefaultFilePlugin.js
smock-0.1.266 node_modules/webpack/node_modules/enhanced-resolve/lib/DirectoryDefaultFilePlugin.js
smock-0.1.265 node_modules/webpack/node_modules/enhanced-resolve/lib/DirectoryDefaultFilePlugin.js
smock-0.1.264 node_modules/webpack/node_modules/enhanced-resolve/lib/DirectoryDefaultFilePlugin.js
smock-0.1.263 node_modules/webpack/node_modules/enhanced-resolve/lib/DirectoryDefaultFilePlugin.js
smock-0.1.262 node_modules/webpack/node_modules/enhanced-resolve/lib/DirectoryDefaultFilePlugin.js
smock-0.1.261 node_modules/webpack/node_modules/enhanced-resolve/lib/DirectoryDefaultFilePlugin.js
smock-0.1.260 node_modules/webpack/node_modules/enhanced-resolve/lib/DirectoryDefaultFilePlugin.js
smock-0.1.259 node_modules/webpack/node_modules/enhanced-resolve/lib/DirectoryDefaultFilePlugin.js
smock-0.1.258 node_modules/webpack/node_modules/enhanced-resolve/lib/DirectoryDefaultFilePlugin.js
smock-0.1.256 node_modules/webpack/node_modules/enhanced-resolve/lib/DirectoryDefaultFilePlugin.js
smock-0.1.255 node_modules/webpack/node_modules/enhanced-resolve/lib/DirectoryDefaultFilePlugin.js
smock-0.1.254 node_modules/webpack/node_modules/enhanced-resolve/lib/DirectoryDefaultFilePlugin.js
smock-0.1.253 node_modules/webpack/node_modules/enhanced-resolve/lib/DirectoryDefaultFilePlugin.js
smock-0.1.252 node_modules/webpack/node_modules/enhanced-resolve/lib/DirectoryDefaultFilePlugin.js
smock-0.1.251 node_modules/webpack/node_modules/enhanced-resolve/lib/DirectoryDefaultFilePlugin.js
smock-0.1.250 node_modules/webpack/node_modules/enhanced-resolve/lib/DirectoryDefaultFilePlugin.js
smock-0.1.249 node_modules/webpack/node_modules/enhanced-resolve/lib/DirectoryDefaultFilePlugin.js
smock-0.1.247 node_modules/webpack/node_modules/enhanced-resolve/lib/DirectoryDefaultFilePlugin.js