From 363723fc84f7b8477592e0105aeb331ec9a017af Mon Sep 17 00:00:00 2001 From: Florian Dold Date: Mon, 14 Aug 2017 05:01:11 +0200 Subject: node_modules --- node_modules/enhanced-resolve/lib/Resolver.js | 50 +++++++++++++--------- .../enhanced-resolve/lib/ResolverFactory.js | 5 ++- .../enhanced-resolve/lib/UnsafeCachePlugin.js | 10 +++-- 3 files changed, 39 insertions(+), 26 deletions(-) (limited to 'node_modules/enhanced-resolve/lib') diff --git a/node_modules/enhanced-resolve/lib/Resolver.js b/node_modules/enhanced-resolve/lib/Resolver.js index 6b8074569..5994d5d61 100644 --- a/node_modules/enhanced-resolve/lib/Resolver.js +++ b/node_modules/enhanced-resolve/lib/Resolver.js @@ -38,14 +38,8 @@ Resolver.prototype.resolve = function resolve(context, path, request, callback) request: request }; - var localMissing = []; - var missing = callback.missing ? { - push: function(item) { - callback.missing.push(item); - localMissing.push(item); - } - } : localMissing; - var log = []; + var localMissing; + var log; var message = "resolve '" + request + "' in '" + path + "'"; function writeLog(msg) { @@ -56,26 +50,40 @@ Resolver.prototype.resolve = function resolve(context, path, request, callback) return log.join("\n"); } - function onResolved(err, result) { + function onError(err, result) { if(callback.log) { for(var i = 0; i < log.length; i++) callback.log(log[i]); } + if(err) return callback(err); - if(!result) { - var error = new Error("Can't " + message); - error.details = logAsString(); - error.missing = localMissing; - resolver.applyPlugins("no-resolve", obj, error); - return callback(error); + + var error = new Error("Can't " + message); + error.details = logAsString(); + error.missing = localMissing; + resolver.applyPlugins("no-resolve", obj, error); + return callback(error); + } + + function onResolve(err, result) { + if(!err && result) { + return callback(null, result.path === false ? false : result.path + (result.query || ""), result); } - return callback(null, result.path === false ? false : result.path + (result.query || ""), result); + + localMissing = []; + log = []; + + return resolver.doResolve("resolve", obj, message, createInnerCallback(onError, { + log: writeLog, + missing: localMissing, + stack: callback.stack + })); } - return this.doResolve("resolve", obj, message, createInnerCallback(onResolved, { - log: writeLog, - missing: missing, - stack: callback.stack - }, null)); + + onResolve.missing = callback.missing; + onResolve.stack = callback.stack; + + return this.doResolve("resolve", obj, message, onResolve); }; Resolver.prototype.doResolve = function doResolve(type, request, message, callback) { diff --git a/node_modules/enhanced-resolve/lib/ResolverFactory.js b/node_modules/enhanced-resolve/lib/ResolverFactory.js index 682ef4640..cd167aaf7 100644 --- a/node_modules/enhanced-resolve/lib/ResolverFactory.js +++ b/node_modules/enhanced-resolve/lib/ResolverFactory.js @@ -78,6 +78,9 @@ exports.createResolver = function(options) { // Use this cache object to unsafely cache the successful requests var unsafeCache = options.unsafeCache || false; + // Whether or not the unsafeCache should include request context as part of the cache key. + var cacheWithContext = typeof options.cacheWithContext !== "undefined" ? options.cacheWithContext : true; + // A function which decides whether a request should be cached or not. // an object is passed with `path` and `request` properties. var cachePredicate = options.cachePredicate || function() { @@ -145,7 +148,7 @@ exports.createResolver = function(options) { // resolve if(unsafeCache) { - plugins.push(new UnsafeCachePlugin("resolve", cachePredicate, unsafeCache, "new-resolve")); + plugins.push(new UnsafeCachePlugin("resolve", cachePredicate, unsafeCache, cacheWithContext, "new-resolve")); plugins.push(new ParsePlugin("new-resolve", "parsed-resolve")); } else { plugins.push(new ParsePlugin("resolve", "parsed-resolve")); diff --git a/node_modules/enhanced-resolve/lib/UnsafeCachePlugin.js b/node_modules/enhanced-resolve/lib/UnsafeCachePlugin.js index 61d9b4730..ed07fd561 100644 --- a/node_modules/enhanced-resolve/lib/UnsafeCachePlugin.js +++ b/node_modules/enhanced-resolve/lib/UnsafeCachePlugin.js @@ -4,17 +4,18 @@ */ var createInnerCallback = require("./createInnerCallback"); -function UnsafeCachePlugin(source, filterPredicate, cache, target) { +function UnsafeCachePlugin(source, filterPredicate, cache, withContext, target) { this.source = source; this.filterPredicate = filterPredicate; + this.withContext = withContext; this.cache = cache || {}; this.target = target; } module.exports = UnsafeCachePlugin; -function getCacheId(request) { +function getCacheId(request, withContext) { return JSON.stringify({ - context: request.context, + context: withContext ? request.context : "", path: request.path, query: request.query, request: request.request @@ -25,9 +26,10 @@ UnsafeCachePlugin.prototype.apply = function(resolver) { var filterPredicate = this.filterPredicate; var cache = this.cache; var target = this.target; + var withContext = this.withContext; resolver.plugin(this.source, function(request, callback) { if(!filterPredicate(request)) return callback(); - var cacheId = getCacheId(request); + var cacheId = getCacheId(request, withContext); var cacheEntry = cache[cacheId]; if(cacheEntry) { return callback(null, cacheEntry); -- cgit v1.2.3