webpack 4.1.0 → 4.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +719 -721
- package/bin/webpack.js +69 -10
- package/lib/APIPlugin.js +84 -84
- package/lib/AmdMainTemplatePlugin.js +75 -77
- package/lib/AsyncDependencyToInitialChunkError.js +21 -23
- package/lib/BannerPlugin.js +101 -101
- package/lib/Chunk.js +477 -469
- package/lib/ChunkTemplate.js +51 -53
- package/lib/Compilation.js +1858 -1851
- package/lib/Compiler.js +493 -478
- package/lib/ConcurrentCompilationError.js +19 -0
- package/lib/ContextModule.js +696 -685
- package/lib/ContextModuleFactory.js +245 -243
- package/lib/DefinePlugin.js +197 -197
- package/lib/DelegatedModule.js +101 -101
- package/lib/DependenciesBlockVariable.js +51 -52
- package/lib/Dependency.js +53 -52
- package/lib/DllModule.js +54 -54
- package/lib/DllModuleFactory.js +29 -29
- package/lib/EnvironmentPlugin.js +65 -67
- package/lib/EvalDevToolModuleTemplatePlugin.js +60 -60
- package/lib/EvalSourceMapDevToolModuleTemplatePlugin.js +105 -105
- package/lib/ExportPropertyMainTemplatePlugin.js +40 -40
- package/lib/ExternalModule.js +159 -159
- package/lib/FunctionModuleTemplatePlugin.js +98 -98
- package/lib/HotModuleReplacement.runtime.js +631 -631
- package/lib/HotModuleReplacementPlugin.js +407 -406
- package/lib/HotUpdateChunkTemplate.js +78 -80
- package/lib/JavascriptGenerator.js +228 -229
- package/lib/JavascriptModulesPlugin.js +184 -158
- package/lib/JsonGenerator.js +42 -42
- package/lib/MainTemplate.js +406 -402
- package/lib/Module.js +343 -340
- package/lib/ModuleBuildError.js +42 -42
- package/lib/ModuleError.js +28 -28
- package/lib/ModuleFilenameHelpers.js +166 -166
- package/lib/ModuleTemplate.js +77 -79
- package/lib/ModuleWarning.js +30 -30
- package/lib/MultiCompiler.js +271 -259
- package/lib/MultiModule.js +78 -75
- package/lib/MultiModuleFactory.js +23 -23
- package/lib/MultiWatching.js +38 -37
- package/lib/NoModeWarning.js +23 -21
- package/lib/NormalModule.js +478 -470
- package/lib/NormalModuleFactory.js +483 -481
- package/lib/OptionsDefaulter.js +80 -86
- package/lib/Parser.js +2074 -2071
- package/lib/ProgressPlugin.js +231 -231
- package/lib/RawModule.js +54 -55
- package/lib/RecordIdsPlugin.js +160 -160
- package/lib/RemovedPluginError.js +13 -13
- package/lib/ResolverFactory.js +64 -67
- package/lib/RuntimeTemplate.js +267 -297
- package/lib/SetVarMainTemplatePlugin.js +57 -57
- package/lib/SourceMapDevToolPlugin.js +302 -308
- package/lib/Stats.js +1234 -1212
- package/lib/Template.js +205 -205
- package/lib/TemplatedPathPlugin.js +170 -143
- package/lib/UmdMainTemplatePlugin.js +264 -269
- package/lib/Watching.js +193 -193
- package/lib/WebAssemblyParser.js +50 -54
- package/lib/WebpackOptionsApply.js +401 -401
- package/lib/WebpackOptionsDefaulter.js +337 -317
- package/lib/WebpackOptionsValidationError.js +316 -319
- package/lib/debug/ProfilingPlugin.js +409 -405
- package/lib/dependencies/AMDDefineDependencyParserPlugin.js +328 -311
- package/lib/dependencies/AMDRequireContextDependency.js +20 -20
- package/lib/dependencies/AMDRequireDependenciesBlockParserPlugin.js +270 -241
- package/lib/dependencies/HarmonyAcceptImportDependency.js +23 -23
- package/lib/dependencies/HarmonyExportImportedSpecifierDependency.js +620 -606
- package/lib/dependencies/HarmonyExportSpecifierDependency.js +53 -53
- package/lib/dependencies/HarmonyImportDependencyParserPlugin.js +214 -214
- package/lib/dependencies/HarmonyImportSpecifierDependency.js +154 -156
- package/lib/dependencies/ImportDependenciesBlock.js +17 -17
- package/lib/dependencies/ImportDependency.js +34 -34
- package/lib/dependencies/ImportEagerDependency.js +32 -32
- package/lib/dependencies/ImportParserPlugin.js +175 -179
- package/lib/dependencies/ImportWeakDependency.js +34 -34
- package/lib/dependencies/JsonExportsDependency.js +25 -25
- package/lib/dependencies/ModuleDependency.js +20 -20
- package/lib/dependencies/NullDependency.js +20 -20
- package/lib/dependencies/RequireContextDependency.js +22 -22
- package/lib/dependencies/RequireIncludeDependency.js +40 -40
- package/lib/dependencies/WebpackMissingModule.js +20 -22
- package/lib/node/NodeChunkTemplatePlugin.js +31 -31
- package/lib/node/NodeHotUpdateChunkTemplatePlugin.js +36 -36
- package/lib/node/NodeMainTemplatePlugin.js +320 -273
- package/lib/node/ReadFileCompileWasmMainTemplatePlugin.js +113 -115
- package/lib/optimize/AggressiveSplittingPlugin.js +281 -281
- package/lib/optimize/ConcatenatedModule.js +1364 -1366
- package/lib/optimize/RemoveParentModulesPlugin.js +114 -114
- package/lib/optimize/SplitChunksPlugin.js +519 -491
- package/lib/performance/SizeLimitsPlugin.js +105 -105
- package/lib/util/TrackingSet.js +35 -35
- package/lib/util/objectToMap.js +10 -10
- package/lib/wasm/WasmModuleTemplatePlugin.js +106 -106
- package/lib/web/JsonpChunkTemplatePlugin.js +47 -47
- package/lib/web/JsonpExportMainTemplatePlugin.js +47 -47
- package/lib/web/JsonpHotUpdateChunkTemplatePlugin.js +39 -39
- package/lib/web/JsonpMainTemplatePlugin.js +425 -403
- package/lib/webpack.js +182 -179
- package/lib/webworker/WebWorkerChunkTemplatePlugin.js +35 -35
- package/lib/webworker/WebWorkerHotUpdateChunkTemplatePlugin.js +40 -40
- package/lib/webworker/WebWorkerMainTemplatePlugin.js +177 -154
- package/package.json +9 -8
- package/schemas/WebpackOptions.json +1973 -1951
- package/schemas/ajv.absolutePath.js +55 -29
- package/schemas/plugins/BannerPlugin.json +85 -85
- package/schemas/plugins/DllPlugin.json +28 -28
- package/schemas/plugins/DllReferencePlugin.json +99 -99
- package/schemas/plugins/HashedModuleIdsPlugin.json +24 -24
- package/schemas/plugins/LoaderOptionsPlugin.json +26 -26
- package/schemas/plugins/SourceMapDevToolPlugin.json +187 -187
- package/schemas/plugins/WatchIgnorePlugin.json +16 -16
- package/schemas/plugins/debug/ProfilingPlugin.json +12 -12
- package/schemas/plugins/optimize/AggressiveSplittingPlugin.json +22 -22
- package/schemas/plugins/optimize/LimitChunkCountPlugin.json +15 -15
- package/schemas/plugins/optimize/MinChunkSizePlugin.json +13 -13
@@ -1,156 +1,154 @@
|
|
1
|
-
/*
|
2
|
-
MIT License http://www.opensource.org/licenses/mit-license.php
|
3
|
-
Author Tobias Koppers @sokra
|
4
|
-
*/
|
5
|
-
"use strict";
|
6
|
-
const HarmonyImportDependency = require("./HarmonyImportDependency");
|
7
|
-
|
8
|
-
class HarmonyImportSpecifierDependency extends HarmonyImportDependency {
|
9
|
-
constructor(
|
10
|
-
request,
|
11
|
-
originModule,
|
12
|
-
sourceOrder,
|
13
|
-
parserScope,
|
14
|
-
id,
|
15
|
-
name,
|
16
|
-
range,
|
17
|
-
strictExportPresence
|
18
|
-
) {
|
19
|
-
super(request, originModule, sourceOrder, parserScope);
|
20
|
-
this.id = id === null ? null : `${id}`;
|
21
|
-
this.name = name;
|
22
|
-
this.range = range;
|
23
|
-
this.strictExportPresence = strictExportPresence;
|
24
|
-
this.namespaceObjectAsContext = false;
|
25
|
-
this.callArgs = undefined;
|
26
|
-
this.call = undefined;
|
27
|
-
this.directImport = undefined;
|
28
|
-
}
|
29
|
-
|
30
|
-
get type() {
|
31
|
-
return "harmony import specifier";
|
32
|
-
}
|
33
|
-
|
34
|
-
getReference() {
|
35
|
-
if (!this.module) return null;
|
36
|
-
return {
|
37
|
-
module: this.module,
|
38
|
-
importedNames:
|
39
|
-
this.id && !this.namespaceObjectAsContext ? [this.id] : true
|
40
|
-
};
|
41
|
-
}
|
42
|
-
|
43
|
-
getWarnings() {
|
44
|
-
if (
|
45
|
-
this.strictExportPresence ||
|
46
|
-
this.originModule.buildMeta.strictHarmonyModule
|
47
|
-
) {
|
48
|
-
return [];
|
49
|
-
}
|
50
|
-
return this._getErrors();
|
51
|
-
}
|
52
|
-
|
53
|
-
getErrors() {
|
54
|
-
if (
|
55
|
-
this.strictExportPresence ||
|
56
|
-
this.originModule.buildMeta.strictHarmonyModule
|
57
|
-
) {
|
58
|
-
return this._getErrors();
|
59
|
-
}
|
60
|
-
return [];
|
61
|
-
}
|
62
|
-
|
63
|
-
_getErrors() {
|
64
|
-
const importedModule = this.module;
|
65
|
-
if (!importedModule) {
|
66
|
-
return;
|
67
|
-
}
|
68
|
-
|
69
|
-
if (!importedModule.buildMeta || !importedModule.buildMeta.exportsType) {
|
70
|
-
// It's not an harmony module
|
71
|
-
if (
|
72
|
-
this.originModule.buildMeta.strictHarmonyModule &&
|
73
|
-
this.id !== "default"
|
74
|
-
) {
|
75
|
-
// In strict harmony modules we only support the default export
|
76
|
-
const exportName = this.id
|
77
|
-
? `the named export '${this.id}'`
|
78
|
-
: "the namespace object";
|
79
|
-
const err = new Error(
|
80
|
-
`Can't import ${
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
const
|
101
|
-
this.id
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
module.exports = HarmonyImportSpecifierDependency;
|
1
|
+
/*
|
2
|
+
MIT License http://www.opensource.org/licenses/mit-license.php
|
3
|
+
Author Tobias Koppers @sokra
|
4
|
+
*/
|
5
|
+
"use strict";
|
6
|
+
const HarmonyImportDependency = require("./HarmonyImportDependency");
|
7
|
+
|
8
|
+
class HarmonyImportSpecifierDependency extends HarmonyImportDependency {
|
9
|
+
constructor(
|
10
|
+
request,
|
11
|
+
originModule,
|
12
|
+
sourceOrder,
|
13
|
+
parserScope,
|
14
|
+
id,
|
15
|
+
name,
|
16
|
+
range,
|
17
|
+
strictExportPresence
|
18
|
+
) {
|
19
|
+
super(request, originModule, sourceOrder, parserScope);
|
20
|
+
this.id = id === null ? null : `${id}`;
|
21
|
+
this.name = name;
|
22
|
+
this.range = range;
|
23
|
+
this.strictExportPresence = strictExportPresence;
|
24
|
+
this.namespaceObjectAsContext = false;
|
25
|
+
this.callArgs = undefined;
|
26
|
+
this.call = undefined;
|
27
|
+
this.directImport = undefined;
|
28
|
+
}
|
29
|
+
|
30
|
+
get type() {
|
31
|
+
return "harmony import specifier";
|
32
|
+
}
|
33
|
+
|
34
|
+
getReference() {
|
35
|
+
if (!this.module) return null;
|
36
|
+
return {
|
37
|
+
module: this.module,
|
38
|
+
importedNames:
|
39
|
+
this.id && !this.namespaceObjectAsContext ? [this.id] : true
|
40
|
+
};
|
41
|
+
}
|
42
|
+
|
43
|
+
getWarnings() {
|
44
|
+
if (
|
45
|
+
this.strictExportPresence ||
|
46
|
+
this.originModule.buildMeta.strictHarmonyModule
|
47
|
+
) {
|
48
|
+
return [];
|
49
|
+
}
|
50
|
+
return this._getErrors();
|
51
|
+
}
|
52
|
+
|
53
|
+
getErrors() {
|
54
|
+
if (
|
55
|
+
this.strictExportPresence ||
|
56
|
+
this.originModule.buildMeta.strictHarmonyModule
|
57
|
+
) {
|
58
|
+
return this._getErrors();
|
59
|
+
}
|
60
|
+
return [];
|
61
|
+
}
|
62
|
+
|
63
|
+
_getErrors() {
|
64
|
+
const importedModule = this.module;
|
65
|
+
if (!importedModule) {
|
66
|
+
return;
|
67
|
+
}
|
68
|
+
|
69
|
+
if (!importedModule.buildMeta || !importedModule.buildMeta.exportsType) {
|
70
|
+
// It's not an harmony module
|
71
|
+
if (
|
72
|
+
this.originModule.buildMeta.strictHarmonyModule &&
|
73
|
+
this.id !== "default"
|
74
|
+
) {
|
75
|
+
// In strict harmony modules we only support the default export
|
76
|
+
const exportName = this.id
|
77
|
+
? `the named export '${this.id}'`
|
78
|
+
: "the namespace object";
|
79
|
+
const err = new Error(
|
80
|
+
`Can't import ${exportName} from non EcmaScript module (only default export is available)`
|
81
|
+
);
|
82
|
+
err.hideStack = true;
|
83
|
+
return [err];
|
84
|
+
}
|
85
|
+
return;
|
86
|
+
}
|
87
|
+
|
88
|
+
if (!this.id) {
|
89
|
+
return;
|
90
|
+
}
|
91
|
+
|
92
|
+
if (importedModule.isProvided(this.id) !== false) {
|
93
|
+
// It's provided or we are not sure
|
94
|
+
return;
|
95
|
+
}
|
96
|
+
|
97
|
+
// We are sure that it's not provided
|
98
|
+
const idIsNotNameMessage =
|
99
|
+
this.id !== this.name ? ` (imported as '${this.name}')` : "";
|
100
|
+
const errorMessage = `"export '${
|
101
|
+
this.id
|
102
|
+
}'${idIsNotNameMessage} was not found in '${this.userRequest}'`;
|
103
|
+
const err = new Error(errorMessage);
|
104
|
+
err.hideStack = true;
|
105
|
+
return [err];
|
106
|
+
}
|
107
|
+
|
108
|
+
// implement this method to allow the occurrence order plugin to count correctly
|
109
|
+
getNumberOfIdOccurrences() {
|
110
|
+
return 0;
|
111
|
+
}
|
112
|
+
|
113
|
+
updateHash(hash) {
|
114
|
+
super.updateHash(hash);
|
115
|
+
const importedModule = this.module;
|
116
|
+
hash.update((importedModule && this.id) + "");
|
117
|
+
hash.update(
|
118
|
+
(importedModule && this.id && importedModule.isUsed(this.id)) + ""
|
119
|
+
);
|
120
|
+
hash.update(
|
121
|
+
(importedModule &&
|
122
|
+
(!importedModule.buildMeta || importedModule.buildMeta.exportsType)) +
|
123
|
+
""
|
124
|
+
);
|
125
|
+
hash.update(
|
126
|
+
(importedModule &&
|
127
|
+
importedModule.used + JSON.stringify(importedModule.usedExports)) + ""
|
128
|
+
);
|
129
|
+
}
|
130
|
+
}
|
131
|
+
|
132
|
+
HarmonyImportSpecifierDependency.Template = class HarmonyImportSpecifierDependencyTemplate extends HarmonyImportDependency.Template {
|
133
|
+
apply(dep, source, runtime) {
|
134
|
+
super.apply(dep, source, runtime);
|
135
|
+
const content = this.getContent(dep, runtime);
|
136
|
+
source.replace(dep.range[0], dep.range[1] - 1, content);
|
137
|
+
}
|
138
|
+
|
139
|
+
getContent(dep, runtime) {
|
140
|
+
const exportExpr = runtime.exportFromImport({
|
141
|
+
module: dep.module,
|
142
|
+
request: dep.request,
|
143
|
+
exportName: dep.id,
|
144
|
+
originModule: dep.originModule,
|
145
|
+
asiSafe: dep.shorthand,
|
146
|
+
isCall: dep.call,
|
147
|
+
callContext: !dep.directImport,
|
148
|
+
importVar: dep.getImportVar()
|
149
|
+
});
|
150
|
+
return dep.shorthand ? `${dep.name}: ${exportExpr}` : exportExpr;
|
151
|
+
}
|
152
|
+
};
|
153
|
+
|
154
|
+
module.exports = HarmonyImportSpecifierDependency;
|
@@ -1,17 +1,17 @@
|
|
1
|
-
/*
|
2
|
-
MIT License http://www.opensource.org/licenses/mit-license.php
|
3
|
-
Author Tobias Koppers @sokra
|
4
|
-
*/
|
5
|
-
"use strict";
|
6
|
-
const AsyncDependenciesBlock = require("../AsyncDependenciesBlock");
|
7
|
-
const ImportDependency = require("./ImportDependency");
|
8
|
-
|
9
|
-
module.exports = class ImportDependenciesBlock extends AsyncDependenciesBlock {
|
10
|
-
constructor(request, range, chunkName, module, loc, originModule) {
|
11
|
-
super(chunkName, module, loc, request);
|
12
|
-
this.range = range;
|
13
|
-
const dep = new ImportDependency(request, originModule, this);
|
14
|
-
dep.loc = loc;
|
15
|
-
this.addDependency(dep);
|
16
|
-
}
|
17
|
-
};
|
1
|
+
/*
|
2
|
+
MIT License http://www.opensource.org/licenses/mit-license.php
|
3
|
+
Author Tobias Koppers @sokra
|
4
|
+
*/
|
5
|
+
"use strict";
|
6
|
+
const AsyncDependenciesBlock = require("../AsyncDependenciesBlock");
|
7
|
+
const ImportDependency = require("./ImportDependency");
|
8
|
+
|
9
|
+
module.exports = class ImportDependenciesBlock extends AsyncDependenciesBlock {
|
10
|
+
constructor(request, range, chunkName, module, loc, originModule) {
|
11
|
+
super(chunkName, module, loc, request);
|
12
|
+
this.range = range;
|
13
|
+
const dep = new ImportDependency(request, originModule, this);
|
14
|
+
dep.loc = loc;
|
15
|
+
this.addDependency(dep);
|
16
|
+
}
|
17
|
+
};
|
@@ -1,34 +1,34 @@
|
|
1
|
-
/*
|
2
|
-
MIT License http://www.opensource.org/licenses/mit-license.php
|
3
|
-
Author Tobias Koppers @sokra
|
4
|
-
*/
|
5
|
-
"use strict";
|
6
|
-
const ModuleDependency = require("./ModuleDependency");
|
7
|
-
|
8
|
-
class ImportDependency extends ModuleDependency {
|
9
|
-
constructor(request, originModule, block) {
|
10
|
-
super(request);
|
11
|
-
this.originModule = originModule;
|
12
|
-
this.block = block;
|
13
|
-
}
|
14
|
-
|
15
|
-
get type() {
|
16
|
-
return "import()";
|
17
|
-
}
|
18
|
-
}
|
19
|
-
|
20
|
-
ImportDependency.Template = class ImportDependencyTemplate {
|
21
|
-
apply(dep, source, runtime) {
|
22
|
-
const content = runtime.moduleNamespacePromise({
|
23
|
-
block: dep.block,
|
24
|
-
module: dep.module,
|
25
|
-
request: dep.request,
|
26
|
-
strict: dep.originModule.buildMeta.strictHarmonyModule,
|
27
|
-
message: "import()"
|
28
|
-
});
|
29
|
-
|
30
|
-
source.replace(dep.block.range[0], dep.block.range[1] - 1, content);
|
31
|
-
}
|
32
|
-
};
|
33
|
-
|
34
|
-
module.exports = ImportDependency;
|
1
|
+
/*
|
2
|
+
MIT License http://www.opensource.org/licenses/mit-license.php
|
3
|
+
Author Tobias Koppers @sokra
|
4
|
+
*/
|
5
|
+
"use strict";
|
6
|
+
const ModuleDependency = require("./ModuleDependency");
|
7
|
+
|
8
|
+
class ImportDependency extends ModuleDependency {
|
9
|
+
constructor(request, originModule, block) {
|
10
|
+
super(request);
|
11
|
+
this.originModule = originModule;
|
12
|
+
this.block = block;
|
13
|
+
}
|
14
|
+
|
15
|
+
get type() {
|
16
|
+
return "import()";
|
17
|
+
}
|
18
|
+
}
|
19
|
+
|
20
|
+
ImportDependency.Template = class ImportDependencyTemplate {
|
21
|
+
apply(dep, source, runtime) {
|
22
|
+
const content = runtime.moduleNamespacePromise({
|
23
|
+
block: dep.block,
|
24
|
+
module: dep.module,
|
25
|
+
request: dep.request,
|
26
|
+
strict: dep.originModule.buildMeta.strictHarmonyModule,
|
27
|
+
message: "import()"
|
28
|
+
});
|
29
|
+
|
30
|
+
source.replace(dep.block.range[0], dep.block.range[1] - 1, content);
|
31
|
+
}
|
32
|
+
};
|
33
|
+
|
34
|
+
module.exports = ImportDependency;
|
@@ -1,32 +1,32 @@
|
|
1
|
-
/*
|
2
|
-
MIT License http://www.opensource.org/licenses/mit-license.php
|
3
|
-
Author Tobias Koppers @sokra
|
4
|
-
*/
|
5
|
-
"use strict";
|
6
|
-
const ModuleDependency = require("./ModuleDependency");
|
7
|
-
|
8
|
-
class ImportEagerDependency extends ModuleDependency {
|
9
|
-
constructor(request, originModule, range) {
|
10
|
-
super(request);
|
11
|
-
this.originModule = originModule;
|
12
|
-
this.range = range;
|
13
|
-
}
|
14
|
-
|
15
|
-
get type() {
|
16
|
-
return "import() eager";
|
17
|
-
}
|
18
|
-
}
|
19
|
-
|
20
|
-
ImportEagerDependency.Template = class ImportEagerDependencyTemplate {
|
21
|
-
apply(dep, source, runtime) {
|
22
|
-
const content = runtime.moduleNamespacePromise({
|
23
|
-
module: dep.module,
|
24
|
-
request: dep.request,
|
25
|
-
strict: dep.originModule.buildMeta.strictHarmonyModule,
|
26
|
-
message: "import() eager"
|
27
|
-
});
|
28
|
-
source.replace(dep.range[0], dep.range[1] - 1, content);
|
29
|
-
}
|
30
|
-
};
|
31
|
-
|
32
|
-
module.exports = ImportEagerDependency;
|
1
|
+
/*
|
2
|
+
MIT License http://www.opensource.org/licenses/mit-license.php
|
3
|
+
Author Tobias Koppers @sokra
|
4
|
+
*/
|
5
|
+
"use strict";
|
6
|
+
const ModuleDependency = require("./ModuleDependency");
|
7
|
+
|
8
|
+
class ImportEagerDependency extends ModuleDependency {
|
9
|
+
constructor(request, originModule, range) {
|
10
|
+
super(request);
|
11
|
+
this.originModule = originModule;
|
12
|
+
this.range = range;
|
13
|
+
}
|
14
|
+
|
15
|
+
get type() {
|
16
|
+
return "import() eager";
|
17
|
+
}
|
18
|
+
}
|
19
|
+
|
20
|
+
ImportEagerDependency.Template = class ImportEagerDependencyTemplate {
|
21
|
+
apply(dep, source, runtime) {
|
22
|
+
const content = runtime.moduleNamespacePromise({
|
23
|
+
module: dep.module,
|
24
|
+
request: dep.request,
|
25
|
+
strict: dep.originModule.buildMeta.strictHarmonyModule,
|
26
|
+
message: "import() eager"
|
27
|
+
});
|
28
|
+
source.replace(dep.range[0], dep.range[1] - 1, content);
|
29
|
+
}
|
30
|
+
};
|
31
|
+
|
32
|
+
module.exports = ImportEagerDependency;
|