|
|
- /*
- 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");
- };
|