From 4bff3220e86b7544dac0a627eaee3e43375bd90e Mon Sep 17 00:00:00 2001 From: Ben Newman Date: Mon, 23 Jan 2017 13:30:03 -0500 Subject: [PATCH] Include .jsonData on files returned by ImportScanner#getOutputFiles. --- tools/isobuild/import-scanner.js | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/tools/isobuild/import-scanner.js b/tools/isobuild/import-scanner.js index 7619b0c465..bf90b66711 100644 --- a/tools/isobuild/import-scanner.js +++ b/tools/isobuild/import-scanner.js @@ -52,8 +52,10 @@ const defaultExtensionHandlers = { }, ".json"(dataString) { + const file = this; + file.jsonData = JSON.parse(dataString); return "module.exports = " + - JSON.stringify(JSON.parse(dataString), null, 2) + + JSON.stringify(file.jsonData, null, 2) + ";\n"; }, @@ -191,8 +193,11 @@ export default class ImportScanner { const dotExt = "." + file.type; const dataString = file.data.toString("utf8"); - file.dataString = defaultExtensionHandlers[dotExt]( - dataString, file.hash); + file.dataString = defaultExtensionHandlers[dotExt].call( + file, + dataString, + file.hash, + ); if (! (file.data instanceof Buffer) || file.dataString !== dataString) { @@ -714,7 +719,8 @@ export default class ImportScanner { } } - info.dataString = defaultExtensionHandlers[ext]( + info.dataString = defaultExtensionHandlers[ext].call( + info, info.dataString, info.hash, ); @@ -919,6 +925,7 @@ export default class ImportScanner { const pkgFile = { type: "js", // We represent the JSON module with JS. data, + jsonData: pkg, deps: {}, // Avoid accidentally re-scanning this file. sourcePath: relPkgJsonPath, installPath: this._getInstallPath(pkgJsonPath),