|
2 | 2 | MIT License http://www.opensource.org/licenses/mit-license.php |
3 | 3 | Author Tobias Koppers @sokra |
4 | 4 | */ |
5 | | -var NullDependency = require("./NullDependency"); |
6 | | -var DepBlockHelpers = require("./DepBlockHelpers"); |
| 5 | +"use strict"; |
| 6 | +const NullDependency = require("./NullDependency"); |
| 7 | +const DepBlockHelpers = require("./DepBlockHelpers"); |
7 | 8 |
|
8 | | -function RequireEnsureDependency(block) { |
9 | | - NullDependency.call(this); |
10 | | - this.block = block; |
11 | | -} |
12 | | -module.exports = RequireEnsureDependency; |
| 9 | +class RequireEnsureDependency extends NullDependency { |
| 10 | + constructor(block) { |
| 11 | + super(); |
| 12 | + this.block = block; |
| 13 | + } |
13 | 14 |
|
14 | | -RequireEnsureDependency.prototype = Object.create(NullDependency.prototype); |
15 | | -RequireEnsureDependency.prototype.constructor = RequireEnsureDependency; |
16 | | -RequireEnsureDependency.prototype.type = "require.ensure"; |
| 15 | + get type() { |
| 16 | + return "require.ensure"; |
| 17 | + } |
| 18 | +} |
17 | 19 |
|
18 | | -RequireEnsureDependency.Template = function RequireEnsureDependencyTemplate() {}; |
| 20 | +RequireEnsureDependency.Template = class RequireEnsureDependencyTemplate { |
| 21 | + apply(dep, source, outputOptions, requestShortener) { |
| 22 | + const depBlock = dep.block; |
| 23 | + const wrapper = DepBlockHelpers.getLoadDepBlockWrapper(depBlock, outputOptions, requestShortener, "require.ensure"); |
| 24 | + const startBlock = wrapper[0] + "("; |
| 25 | + const endBlock = `).bind(null, __webpack_require__)${wrapper[1]}__webpack_require__.oe${wrapper[2]}`; |
| 26 | + source.replace(depBlock.expr.range[0], depBlock.expr.arguments[1].range[0] - 1, startBlock); |
| 27 | + source.replace(depBlock.expr.arguments[1].range[1], depBlock.expr.range[1] - 1, endBlock); |
| 28 | + } |
| 29 | +} |
19 | 30 |
|
20 | | -RequireEnsureDependency.Template.prototype.apply = function(dep, source, outputOptions, requestShortener) { |
21 | | - var depBlock = dep.block; |
22 | | - var wrapper = DepBlockHelpers.getLoadDepBlockWrapper(depBlock, outputOptions, requestShortener, "require.ensure"); |
23 | | - source.replace(depBlock.expr.range[0], depBlock.expr.arguments[1].range[0] - 1, wrapper[0] + "("); |
24 | | - source.replace(depBlock.expr.arguments[1].range[1], depBlock.expr.range[1] - 1, ").bind(null, __webpack_require__)" + wrapper[1] + "__webpack_require__.oe" + wrapper[2]); |
25 | | -}; |
| 31 | +module.exports = RequireEnsureDependency; |
0 commit comments