From 69f83a86a2824b9ab8ba0bfeeb73ff2b354fb753 Mon Sep 17 00:00:00 2001 From: Brent Vollebregt Date: Sat, 5 Oct 2024 13:15:20 +1300 Subject: [PATCH] Fix partial configs not importing --- auto_py_to_exe/web/js/importExport.js | 32 +++++++++++++++++---------- auto_py_to_exe/web/js/staticEvents.js | 2 +- 2 files changed, 21 insertions(+), 13 deletions(-) diff --git a/auto_py_to_exe/web/js/importExport.js b/auto_py_to_exe/web/js/importExport.js index c52221c..f198848 100644 --- a/auto_py_to_exe/web/js/importExport.js +++ b/auto_py_to_exe/web/js/importExport.js @@ -4,20 +4,28 @@ const importConfiguration = (configuration) => { // Re-init UI by clearing everything (copy the array first as it will be mutated during the iteration) [...configurationCleaners].forEach((cleaner) => cleaner()); - configuration.pyinstallerOptions.forEach(({ optionDest, value }) => { - if (configurationSetters.hasOwnProperty(optionDest)) { - configurationSetters[optionDest](value); - } else { - // TODO Warn user? - // TODO noconfirm is expected to come here - } - }); + if ('pyinstallerOptions' in configuration) { + configuration.pyinstallerOptions.forEach(({ optionDest, value }) => { + if (configurationSetters.hasOwnProperty(optionDest)) { + configurationSetters[optionDest](value); + } else { + // TODO Warn user? + // TODO noconfirm is expected to come here + } + }); + } // setup nonPyinstallerOptions - recursionLimitToggle(configuration.nonPyinstallerOptions.increaseRecursionLimit); - document.getElementById('raw-arguments').value = configuration.nonPyinstallerOptions.manualArguments; - if ('outputDirectory' in configuration.nonPyinstallerOptions) { - document.getElementById('output-directory').value = configuration.nonPyinstallerOptions.outputDirectory; + if ('nonPyinstallerOptions' in configuration) { + if ('increaseRecursionLimit' in configuration.nonPyinstallerOptions) { + recursionLimitToggle(configuration.nonPyinstallerOptions.increaseRecursionLimit); + } + if ('manualArguments' in configuration.nonPyinstallerOptions) { + document.getElementById('raw-arguments').value = configuration.nonPyinstallerOptions.manualArguments; + } + if ('outputDirectory' in configuration.nonPyinstallerOptions) { + document.getElementById('output-directory').value = configuration.nonPyinstallerOptions.outputDirectory; + } } }; diff --git a/auto_py_to_exe/web/js/staticEvents.js b/auto_py_to_exe/web/js/staticEvents.js index 9ddd90d..e8cedae 100644 --- a/auto_py_to_exe/web/js/staticEvents.js +++ b/auto_py_to_exe/web/js/staticEvents.js @@ -251,7 +251,7 @@ const setupEvents = () => { configurationCleaners.push(() => setEntryScript('')); // filenames configurationCleaners.push(() => setOnefile(false)); // onefile - configurationCleaners.push(() => setConsole(false)); // console + configurationCleaners.push(() => setConsole(true)); // console configurationCleaners.push(() => setIcon('')); // icon_file // Soft initialise (to trigger any required initial events)