From 6cff64018af242d914e375101285b599c3633ac2 Mon Sep 17 00:00:00 2001 From: Josh Tynjala Date: Tue, 25 Jul 2023 08:43:31 -0700 Subject: [PATCH] Add -npx flag for `lime test electron` to run the `npx electron` command instead of just `electron`. This will prompt the user to install electron, if required. Saves a separate `npm install -g electron` command before testing. --- src/lime/tools/ElectronHelper.hx | 9 +++++++-- tools/platforms/HTML5Platform.hx | 3 ++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/lime/tools/ElectronHelper.hx b/src/lime/tools/ElectronHelper.hx index 2bd12a11c..df1db48af 100644 --- a/src/lime/tools/ElectronHelper.hx +++ b/src/lime/tools/ElectronHelper.hx @@ -5,10 +5,15 @@ import lime.tools.HXProject; class ElectronHelper { - public static function launch(project:HXProject, path:String):Void + public static function launch(project:HXProject, path:String, ?npx:Bool):Void { - var electronPath = project.defines.get("ELECTRON_PATH"); + if (npx) + { + System.runCommand("", "npx", ["electron", path]); + return; + } + var electronPath = project.defines.get("ELECTRON_PATH"); if (electronPath == null || electronPath == "") { electronPath = "electron"; diff --git a/tools/platforms/HTML5Platform.hx b/tools/platforms/HTML5Platform.hx index e982ff914..f0d5e22e1 100644 --- a/tools/platforms/HTML5Platform.hx +++ b/tools/platforms/HTML5Platform.hx @@ -263,7 +263,8 @@ class HTML5Platform extends PlatformTarget } else if (targetFlags.exists("electron")) { - ElectronHelper.launch(project, targetDirectory + "/bin"); + var npx = targetFlags.exists("npx"); + ElectronHelper.launch(project, targetDirectory + "/bin", npx); } else {