Sha256: 7a239e756a88f1f0d3491381324298d3f7cfe6c52d52c4d162f9b667e756a8b5
Contents?: true
Size: 1.23 KB
Versions: 10
Compression:
Stored size: 1.23 KB
Contents
/* MIT License http://www.opensource.org/licenses/mit-license.php Author Tobias Koppers @sokra */ "use strict"; const ModuleDependency = require("./ModuleDependency"); const webpackMissingPromiseModule = require("./WebpackMissingModule").promise; class ImportEagerDependency extends ModuleDependency { constructor(request, range) { super(request); this.range = range; } get type() { return "import()"; } } ImportEagerDependency.Template = class ImportEagerDependencyTemplate { apply(dep, source, outputOptions, requestShortener) { const comment = this.getOptionalComment(outputOptions.pathinfo, requestShortener.shorten(dep.request)); const content = this.getContent(dep, comment); source.replace(dep.range[0], dep.range[1] - 1, content); } getOptionalComment(pathinfo, shortenedRequest) { if(!pathinfo) { return ""; } return `/*! ${shortenedRequest} */ `; } getContent(dep, comment) { if(dep.module) { const stringifiedId = JSON.stringify(dep.module.id); return `new Promise(function(resolve) { resolve(__webpack_require__(${comment}${stringifiedId})); })`; } return webpackMissingPromiseModule(dep.request); } }; module.exports = ImportEagerDependency;
Version data entries
10 entries across 6 versions & 3 rubygems