forked from webpack/webpack
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathAMDRequireArrayDependency.js
More file actions
34 lines (30 loc) · 1.21 KB
/
AMDRequireArrayDependency.js
File metadata and controls
34 lines (30 loc) · 1.21 KB
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
/*
MIT License http://www.opensource.org/licenses/mit-license.php
Author Tobias Koppers @sokra
*/
var Dependency = require("../Dependency");
function AMDRequireArrayDependency(depsArray, range) {
Dependency.call(this);
this.Class = AMDRequireArrayDependency;
this.depsArray = depsArray;
this.range = range;
}
module.exports = AMDRequireArrayDependency;
AMDRequireArrayDependency.prototype = Object.create(Dependency.prototype);
AMDRequireArrayDependency.prototype.type = "amd require array";
AMDRequireArrayDependency.Template = function AMDRequireArrayDependencyTemplate() {};
AMDRequireArrayDependency.Template.prototype.apply = function(dep, source, outputOptions, requestShortener) {
var content = "[" + dep.depsArray.map(function(dep) {
if(typeof dep === "string") {
return dep;
} else {
var comment = "";
if(outputOptions.pathinfo) comment = "/*! " + requestShortener.shorten(dep.request) + " */ ";
if(dep.module)
return "require(" + comment + dep.module.id + ")";
else
return "(function webpackMissingModule() { throw new Error(" + JSON.stringify("Cannot find module \"" + dep.request + "\"") + "); }())";
}
}).join(", ") + "]";
source.replace(dep.range[0], dep.range[1]-1, content);
};