Blame view

node_modules/style-loader/url.js 1.22 KB
aaac7fed   liuqimichale   add
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
  /*
  	MIT License http://www.opensource.org/licenses/mit-license.php
  	Author Tobias Koppers @sokra
  */
  var path = require('path');
  
  var loaderUtils = require('loader-utils');
  var validateOptions = require('schema-utils');
  
  module.exports = function () {};
  
  module.exports.pitch = function (request) {
  	if (this.cacheable) this.cacheable();
  
  	var options = loaderUtils.getOptions(this) || {};
  
  	validateOptions(require('./options.json'), options, 'Style Loader (URL)');
  
  	options.hmr = typeof options.hmr === 'undefined' ? true : options.hmr;
  
  	var hmr = [
  		// Hot Module Replacement
  		"if(module.hot) {",
  		"  module.hot.accept(" + loaderUtils.stringifyRequest(this, "!!" + request) + ", function() {",
  		"    update(require(" + loaderUtils.stringifyRequest(this, "!!" + request) + "));",
  		"  });",
  		"",
  		"  module.hot.dispose(function() { update(); });",
  		"}"
  	].join("\n");
  
  	return [
  		// Adds some reference to a CSS file to the DOM by adding a <link> tag
  		"var update = require(" + loaderUtils.stringifyRequest(this, "!" + path.join(__dirname, "lib", "addStyleUrl.js")) + ")(",
  		"  require(" + loaderUtils.stringifyRequest(this, "!!" + request) + ")",
  		", " + JSON.stringify(options) + ");",
  		options.hmr ? hmr : ""
  	].join("\n");
  };