From faaabf907ba5cb136dd63d12bce3769722e67abc Mon Sep 17 00:00:00 2001 From: Mario Pesch Date: Wed, 3 Nov 2021 12:31:30 +0100 Subject: [PATCH] update code generator --- src/components/Blockly/generator/generator.js | 76 +++++++++++++------ 1 file changed, 54 insertions(+), 22 deletions(-) diff --git a/src/components/Blockly/generator/generator.js b/src/components/Blockly/generator/generator.js index c779334..29b77a1 100644 --- a/src/components/Blockly/generator/generator.js +++ b/src/components/Blockly/generator/generator.js @@ -26,6 +26,17 @@ import * as Blockly from "blockly/core"; +import store from "../../../store"; + +var ota = store.getState().general.platform + ? store.getState().general.platform + : null; +store.subscribe(() => { + ota = store.getState().general.platform + ? store.getState().general.platform + : null; +}); + /** * Arduino code generator. * @type !Blockly.Generator @@ -254,28 +265,49 @@ Blockly["Arduino"].finish = function (code) { "\n}\n"; let loopCode = "\nvoid loop() { \n" + loopCodeOnce + code + "\n}\n"; - - // Convert the definitions dictionary into a list. - code = - devVariables + - "\n" + - "#include " + - "\n" + - libraryCode + - "\n" + - variablesCode + - "\n" + - definitionsCode + - "\n" + - codeFunctions + - "\n" + - Blockly["Arduino"].variablesInitCode_ + - "\n" + - functionsCode + - "\n" + - setupCode + - "\n" + - loopCode; + // only add OTA code if tablet mode is enabled + if (ota === true) { + code = + devVariables + + "\n" + + "#include " + + "\n" + + libraryCode + + "\n" + + variablesCode + + "\n" + + definitionsCode + + "\n" + + codeFunctions + + "\n" + + Blockly["Arduino"].variablesInitCode_ + + "\n" + + functionsCode + + "\n" + + setupCode + + "\n" + + loopCode; + } else { + // Convert the definitions dictionary into a list. + code = + devVariables + + "\n" + + libraryCode + + "\n" + + variablesCode + + "\n" + + definitionsCode + + "\n" + + codeFunctions + + "\n" + + Blockly["Arduino"].variablesInitCode_ + + "\n" + + functionsCode + + "\n" + + setupCode + + "\n" + + loopCode; + } // Clean up temporary data. delete Blockly["Arduino"].definitions_;