From 3e737ec67ab2d74f5740afac01cf18b4d103e2fe Mon Sep 17 00:00:00 2001 From: sis0k0 Date: Mon, 23 Jul 2018 15:29:26 +0300 Subject: [PATCH] refactor: generate source maps when running `tns debug --bundle` --- lib/before-prepareJS.js | 4 ++-- lib/before-watch.js | 4 ++-- lib/compiler.js | 8 ++++++-- lib/utils.js | 6 ++++++ 4 files changed, 16 insertions(+), 6 deletions(-) diff --git a/lib/before-prepareJS.js b/lib/before-prepareJS.js index 94d3fde0..62fffbcf 100644 --- a/lib/before-prepareJS.js +++ b/lib/before-prepareJS.js @@ -1,6 +1,6 @@ const { runWebpackCompiler } = require("./compiler"); -module.exports = function ($logger, hookArgs) { +module.exports = function ($logger, $liveSyncService, hookArgs) { const env = hookArgs.config.env || {}; const platform = hookArgs.config.platform; const appFilesUpdaterOptions = hookArgs.config.appFilesUpdaterOptions; @@ -11,6 +11,6 @@ module.exports = function ($logger, hookArgs) { release: appFilesUpdaterOptions.release, }; - const result = config.bundle && runWebpackCompiler.bind(runWebpackCompiler, config, hookArgs.config.projectData, $logger, hookArgs); + const result = config.bundle && runWebpackCompiler.bind(runWebpackCompiler, config, hookArgs.config.projectData, $logger, $liveSyncService, hookArgs); return result; } diff --git a/lib/before-watch.js b/lib/before-watch.js index b930d096..f3d01e87 100644 --- a/lib/before-watch.js +++ b/lib/before-watch.js @@ -1,6 +1,6 @@ const { runWebpackCompiler } = require("./compiler"); -module.exports = function ($logger, hookArgs) { +module.exports = function ($logger, $liveSyncService, hookArgs) { if (hookArgs.config) { const appFilesUpdaterOptions = hookArgs.config.appFilesUpdaterOptions; if (appFilesUpdaterOptions.bundle) { @@ -15,7 +15,7 @@ module.exports = function ($logger, hookArgs) { watch: true }; - return runWebpackCompiler(config, hookArgs.projectData, $logger, hookArgs); + return runWebpackCompiler(config, hookArgs.projectData, $logger, $liveSyncService, hookArgs); })); } } diff --git a/lib/compiler.js b/lib/compiler.js index f4e7ea5f..9e0f92d6 100644 --- a/lib/compiler.js +++ b/lib/compiler.js @@ -5,7 +5,7 @@ const { existsSync } = require("fs"); const readline = require("readline"); const { messages } = require("../plugins/WatchStateLoggerPlugin"); -const { buildEnvData } = require("./utils"); +const { buildEnvData, debuggingEnabled } = require("./utils"); let hasBeenInvoked = false; @@ -16,7 +16,7 @@ exports.getWebpackProcess = function getWebpackProcess() { return webpackProcess; } -exports.runWebpackCompiler = function runWebpackCompiler(config, $projectData, $logger, hookArgs) { +exports.runWebpackCompiler = function runWebpackCompiler(config, $projectData, $logger, $liveSyncService, hookArgs) { if (config.bundle) { return new Promise(function (resolveBase, rejectBase) { if (webpackProcess) { @@ -39,6 +39,10 @@ exports.runWebpackCompiler = function runWebpackCompiler(config, $projectData, $ const projectDir = $projectData.projectDir; const { platform, env } = config; + if (debuggingEnabled($liveSyncService, projectDir)) { + env["sourceMap"] = true; + } + const envData = buildEnvData($projectData, platform, env); const envParams = buildEnvCommandLineParams(config, envData, $logger); diff --git a/lib/utils.js b/lib/utils.js index dd37d9eb..c5f5b6b7 100644 --- a/lib/utils.js +++ b/lib/utils.js @@ -8,6 +8,11 @@ const { isAndroid, } = require("../projectHelpers"); +function debuggingEnabled(liveSyncService, projectDir) { + const deviceDescriptors = liveSyncService.getLiveSyncDeviceDescriptors(projectDir); + return deviceDescriptors.some(device => device.debugggingEnabled); +} + function buildEnvData($projectData, platform, env) { const envData = Object.assign({}, env, @@ -33,5 +38,6 @@ function shouldSnapshot(config) { module.exports = { buildEnvData, + debuggingEnabled, shouldSnapshot };