| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 | 
							- /*
 
- 	MIT License http://www.opensource.org/licenses/mit-license.php
 
- 	Author Tobias Koppers @sokra
 
- */
 
- "use strict";
 
- module.exports = class DirectoryExistsPlugin {
 
- 	constructor(source, target) {
 
- 		this.source = source;
 
- 		this.target = target;
 
- 	}
 
- 	apply(resolver) {
 
- 		const target = resolver.ensureHook(this.target);
 
- 		resolver
 
- 			.getHook(this.source)
 
- 			.tapAsync(
 
- 				"DirectoryExistsPlugin",
 
- 				(request, resolveContext, callback) => {
 
- 					const fs = resolver.fileSystem;
 
- 					const directory = request.path;
 
- 					fs.stat(directory, (err, stat) => {
 
- 						if (err || !stat) {
 
- 							if (resolveContext.missing) resolveContext.missing.add(directory);
 
- 							if (resolveContext.log)
 
- 								resolveContext.log(directory + " doesn't exist");
 
- 							return callback();
 
- 						}
 
- 						if (!stat.isDirectory()) {
 
- 							if (resolveContext.missing) resolveContext.missing.add(directory);
 
- 							if (resolveContext.log)
 
- 								resolveContext.log(directory + " is not a directory");
 
- 							return callback();
 
- 						}
 
- 						resolver.doResolve(
 
- 							target,
 
- 							request,
 
- 							"existing directory",
 
- 							resolveContext,
 
- 							callback
 
- 						);
 
- 					});
 
- 				}
 
- 			);
 
- 	}
 
- };
 
 
  |