123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- /*
- MIT License http://www.opensource.org/licenses/mit-license.php
- Author Tobias Koppers @sokra
- */
- "use strict";
- const NullDependency = require("./NullDependency");
-
- class HarmonyExportExpressionDependency extends NullDependency {
- constructor(originModule, range, rangeStatement) {
- super();
- this.originModule = originModule;
- this.range = range;
- this.rangeStatement = rangeStatement;
- }
-
- get type() {
- return "harmony export expression";
- }
-
- getExports() {
- return {
- exports: ["default"]
- };
- }
- }
-
- HarmonyExportExpressionDependency.Template = class HarmonyExportDependencyTemplate {
- apply(dep, source) {
- const used = dep.originModule.isUsed("default");
- const content = this.getContent(dep.originModule, used);
-
- if(dep.range) {
- source.replace(dep.rangeStatement[0], dep.range[0] - 1, content + "(");
- source.replace(dep.range[1], dep.rangeStatement[1] - 1, ");");
- return;
- }
-
- source.replace(dep.rangeStatement[0], dep.rangeStatement[1] - 1, content);
- }
-
- getContent(module, used) {
- const exportsName = module.exportsArgument || "exports";
- if(used) {
- return `/* harmony default export */ ${exportsName}[${JSON.stringify(used)}] = `;
- }
- return "/* unused harmony default export */ var _unused_webpack_default_export = ";
- }
- };
-
- module.exports = HarmonyExportExpressionDependency;
|