Sha256: a4b85b3197b5d71199b7e3a7520a21806f4fde116f2ea2919e47bb6bfbe2e5c1

Contents?: true

Size: 1.17 KB

Versions: 62

Compression:

Stored size: 1.17 KB

Contents

/*
	MIT License http://www.opensource.org/licenses/mit-license.php
	Author Tobias Koppers @sokra
*/

var path = require('path');
function NormalModuleReplacementPlugin(resourceRegExp, newResource) {
	this.resourceRegExp = resourceRegExp;
	this.newResource = newResource
}
module.exports = NormalModuleReplacementPlugin;
NormalModuleReplacementPlugin.prototype.apply = function(compiler) {
	var resourceRegExp = this.resourceRegExp;
	var newResource = this.newResource;
	compiler.plugin("normal-module-factory", function(nmf) {
		nmf.plugin("before-resolve", function(result, callback) {
			if(!result) return callback();
			if(resourceRegExp.test(result.request)) {
				if (typeof newResource === 'function') {
					newResource(result);
				} else {
					result.request = newResource;
				}
			}
			return callback(null, result);
		});
		nmf.plugin("after-resolve", function(result, callback) {
			if(!result) return callback();
			if(resourceRegExp.test(result.resource)) {
				if (typeof newResource === 'function') {
					newResource(result);
				} else {
					result.resource = path.resolve(path.dirname(result.resource), newResource);
				}
			}
			return callback(null, result);
		});
	});
};

Version data entries

62 entries across 62 versions & 1 rubygems

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