Sha256: 58da3930b5f4c270d2b3032b50c945154e17f459966c6c133d3ab707a6010bfe

Contents?: true

Size: 1.25 KB

Versions: 52

Compression:

Stored size: 1.25 KB

Contents

/*
	MIT License http://www.opensource.org/licenses/mit-license.php
	Author Tobias Koppers @sokra
*/
var loaderUtils = require("loader-utils");
var SourceNode = require("source-map").SourceNode;
var SourceMapConsumer = require("source-map").SourceMapConsumer;
var FOOTER = "/*** EXPORTS FROM exports-loader ***/\n";
module.exports = function(content, sourceMap) {
	if(this.cacheable) this.cacheable();
	var query = loaderUtils.parseQuery(this.query);
	var exports = [];
	var keys = Object.keys(query);
	if(keys.length == 1 && typeof query[keys[0]] == "boolean") {
		exports.push("module.exports = " + keys[0]);
	} else {
		keys.forEach(function(name) {
			var mod = name;
			if(typeof query[name] == "string") {
				mod = query[name];
			}
			exports.push("exports[" + JSON.stringify(name) + "] = (" + mod + ");");
		});
	}
	if(sourceMap) {
		var currentRequest = loaderUtils.getCurrentRequest(this);
		var node = SourceNode.fromStringWithSourceMap(content, new SourceMapConsumer(sourceMap));
		node.add("\n\n" + FOOTER + exports.join("\n"));
		var result = node.toStringWithSourceMap({
			file: currentRequest
		});
		this.callback(null, result.code, result.map.toJSON());
		return;
	}
	return content + "\n\n" + FOOTER + exports.join("\n");
}

Version data entries

52 entries across 52 versions & 1 rubygems

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