deduplicate code

This commit is contained in:
Tobias Koppers 2019-07-02 11:17:52 +02:00
parent 9f43b8b026
commit 1cc9f8799b
1 changed files with 7 additions and 9 deletions

View File

@ -28,6 +28,7 @@ class JsonGenerator {
})
);
}
let finalJson;
if (
Array.isArray(module.buildMeta.providedExports) &&
!module.isUsed("default")
@ -41,17 +42,14 @@ class JsonGenerator {
reducedJson[used] = data[exportName];
}
}
// Use JSON because JSON.parse() is much faster than JavaScript evaluation
const jsonSource = JSON.stringify(stringifySafe(reducedJson));
const jsonExpr = `JSON.parse(${jsonSource})`;
source.add(`${module.moduleArgument}.exports = ${jsonExpr};`);
finalJson = reducedJson;
} else {
// Use JSON because JSON.parse() is much faster than JavaScript evaluation
const jsonSource = JSON.stringify(stringifySafe(data));
const jsonExpr = `JSON.parse(${jsonSource})`;
source.add(`${module.moduleArgument}.exports = ${jsonExpr};`);
finalJson = data;
}
// Use JSON because JSON.parse() is much faster than JavaScript evaluation
const jsonSource = JSON.stringify(stringifySafe(finalJson));
const jsonExpr = `JSON.parse(${jsonSource})`;
source.add(`${module.moduleArgument}.exports = ${jsonExpr};`);
return source;
}
}