aboutsummaryrefslogtreecommitdiff
path: root/node_modules/webpack/lib/dependencies/HarmonyCompatibilityDependency.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/webpack/lib/dependencies/HarmonyCompatibilityDependency.js')
-rw-r--r--node_modules/webpack/lib/dependencies/HarmonyCompatibilityDependency.js30
1 files changed, 30 insertions, 0 deletions
diff --git a/node_modules/webpack/lib/dependencies/HarmonyCompatibilityDependency.js b/node_modules/webpack/lib/dependencies/HarmonyCompatibilityDependency.js
new file mode 100644
index 000000000..8016dac80
--- /dev/null
+++ b/node_modules/webpack/lib/dependencies/HarmonyCompatibilityDependency.js
@@ -0,0 +1,30 @@
+/*
+ MIT License http://www.opensource.org/licenses/mit-license.php
+ Author Tobias Koppers @sokra
+*/
+"use strict";
+const NullDependency = require("./NullDependency");
+
+class HarmonyCompatibilityDependency extends NullDependency {
+ constructor(originModule) {
+ super();
+ this.originModule = originModule;
+ }
+
+ get type() {
+ return "harmony export header";
+ }
+}
+
+HarmonyCompatibilityDependency.Template = class HarmonyExportDependencyTemplate {
+ apply(dep, source) {
+ const usedExports = dep.originModule.usedExports;
+ if(usedExports && !Array.isArray(usedExports)) {
+ const exportName = dep.originModule.exportsArgument || "exports";
+ const content = `Object.defineProperty(${exportName}, \"__esModule\", { value: true });\n`;
+ source.insert(-1, content);
+ }
+ }
+};
+
+module.exports = HarmonyCompatibilityDependency;