From 8293d535d358ac0e8b51aecddd24b52596bd6f95 Mon Sep 17 00:00:00 2001 From: Dimitar Kerezov Date: Thu, 1 Feb 2018 14:48:00 +0200 Subject: [PATCH] feat(watch): use before-watchPatterns hook --- lib/before-watchPatterns.js | 11 +++++++++++ lib/watch.js | 10 +++++++++- package.json | 5 +++++ 3 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 lib/before-watchPatterns.js diff --git a/lib/before-watchPatterns.js b/lib/before-watchPatterns.js new file mode 100644 index 0000000..6fe3db8 --- /dev/null +++ b/lib/before-watchPatterns.js @@ -0,0 +1,11 @@ +module.exports = function (hookArgs) { + if (hookArgs.liveSyncData && !hookArgs.liveSyncData.bundle) { + return (args, originalMethod) => { + return originalMethod().then(originalPatterns => { + originalPatterns.push("!app/**/*.ts"); + + return originalPatterns; + }); + }; + } +} diff --git a/lib/watch.js b/lib/watch.js index 090d0db..8e2cde4 100644 --- a/lib/watch.js +++ b/lib/watch.js @@ -1,5 +1,13 @@ var compiler = require('./compiler'); -module.exports = function ($logger, $projectData, $errors) { +module.exports = function ($logger, $projectData, $errors, hookArgs) { + if (hookArgs.config) { + const appFilesUpdaterOptions = hookArgs.config.appFilesUpdaterOptions; + if (appFilesUpdaterOptions.bundle) { + $logger.warn("Hook skipped because bundling is in progress.") + return; + } + } + return compiler.runTypeScriptCompiler($logger, $projectData.projectDir, { watch: true, release: $projectData.$options.release }); } diff --git a/package.json b/package.json index 33a0072..65ef4ab 100644 --- a/package.json +++ b/package.json @@ -17,6 +17,11 @@ "script": "lib/before-prepare.js", "inject": true }, + { + "type": "before-watchPatterns", + "script": "lib/before-watchPatterns.js", + "inject": true + }, { "type": "before-watch", "script": "lib/watch.js",