Skip to content

Commit c0314a5

Browse files
zastavnitskiysokra
authored andcommitted
1. webpack source definitions are now one-liners
2. Pass module id from dependency to generated source code
1 parent c0c1163 commit c0314a5

File tree

2 files changed

+18
-19
lines changed

2 files changed

+18
-19
lines changed

lib/dependencies/AMDDefineDependency.js

+10-18
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,13 @@
66
const NullDependency = require("./NullDependency");
77

88
class AMDDefineDependency extends NullDependency {
9-
constructor(range, arrayRange, functionRange, objectRange) {
9+
constructor(range, arrayRange, functionRange, objectRange, namedModule) {
1010
super();
1111
this.range = range;
1212
this.arrayRange = arrayRange;
1313
this.functionRange = functionRange;
1414
this.objectRange = objectRange;
15+
this.namedModule = namedModule;
1516
}
1617

1718
get type() {
@@ -56,29 +57,16 @@ AMDDefineDependency.Template = class AMDDefineDependencyTemplate {
5657
__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__))`
5758
],
5859
lf: [
59-
`var XXX,
60-
XXXmodule;
61-
`,
62-
`!(XXXmodule = { id: 1, exports: {}, loaded: false },
63-
XXX = #.call(XXXmodule.exports, __webpack_require__, XXXmodule.exports, XXXmodule),
64-
XXXmodule.loaded = true,
65-
XXX === undefined && (XXX = XXXmodule.exports))`
60+
"var XXX,XXXmodule;",
61+
"!(XXXmodule = { id: 'YYY', exports: {}, loaded: false }, XXX = #.call(XXXmodule.exports, __webpack_require__, XXXmodule.exports, XXXmodule),XXXmodule.loaded = true,XXX === undefined && (XXX = XXXmodule.exports))"
6662
],
6763
lo: [
6864
"var XXX;",
6965
"!(XXX = #)"
7066
],
7167
lof: [
72-
`var XXX,
73-
XXXfactory,
74-
XXXmodule;
75-
`,
76-
`!(XXXfactory = (#),
77-
(XXXmodule = { id: 1, exports: {}, loaded: false }),
78-
XXX = (typeof XXXfactory === 'function' ?
79-
(XXXfactory.call(XXXmodule.exports, __webpack_require__, XXXmodule.exports, XXXmodule)) : XXXfactory),
80-
(XXXmodule.loaded = true),
81-
XXX === undefined && (XXX = XXXmodule.exports))`
68+
"var XXX,XXXfactory,XXXmodule;",
69+
"!(XXXfactory = (#),(XXXmodule = { id: 'YYY', exports: {}, loaded: false }),XXX = (typeof XXXfactory === 'function' ? (XXXfactory.call(XXXmodule.exports, __webpack_require__, XXXmodule.exports, XXXmodule)) : XXXfactory),(XXXmodule.loaded = true),XXX === undefined && (XXX = XXXmodule.exports))"
8270
],
8371
laf: [
8472
"var __WEBPACK_AMD_DEFINE_ARRAY__, XXX;",
@@ -124,6 +112,10 @@ AMDDefineDependency.Template = class AMDDefineDependencyTemplate {
124112
definition = definition.replace(/XXX/g, localModuleVar.replace(/\$/g, "$$$$"));
125113
}
126114

115+
if(dependency.namedModule) {
116+
text = text.replace(/YYY/g, dependency.namedModule);
117+
}
118+
127119
const texts = text.split("#");
128120

129121
if(definition) source.insert(0, definition);

lib/dependencies/AMDDefineDependencyParserPlugin.js

+8-1
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,14 @@ class AMDDefineDependencyParserPlugin {
155155
} else if(fn || obj) {
156156
parser.walkExpression(fn || obj);
157157
}
158-
const dep = new AMDDefineDependency(expr.range, array ? array.range : null, fn ? fn.range : null, obj ? obj.range : null);
158+
159+
const dep = new AMDDefineDependency(
160+
expr.range,
161+
array ? array.range : null,
162+
fn ? fn.range : null,
163+
obj ? obj.range : null,
164+
namedModule ? namedModule : null
165+
);
159166
dep.loc = expr.loc;
160167
if(namedModule) {
161168
dep.localModule = LocalModulesHelpers.addLocalModule(parser.state, namedModule);

0 commit comments

Comments
 (0)