From c950dbbd86dbd77e034299a5c57f2978fe96d28a Mon Sep 17 00:00:00 2001 From: fbruc03 <65135023+fbruc03@users.noreply.github.com> Date: Mon, 7 Nov 2022 10:33:45 +0100 Subject: [PATCH 1/6] disable solution block length check --- src/helpers/compareXml.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/helpers/compareXml.js b/src/helpers/compareXml.js index 74ab515..2d6487f 100644 --- a/src/helpers/compareXml.js +++ b/src/helpers/compareXml.js @@ -15,11 +15,13 @@ const compareNumberOfBlocks = (originalBlocks, userBlocks) => { var blocks; if(originalBlocks.length > userBlocks.length){ blocks = originalBlocks.length-userBlocks.length; - return {text: `Es wurde${blocks === 1 ? '' : 'n'} ${blocks} Bl${blocks === 1 ? 'ock' : 'öcke'} zu wenig verwendet.`, type: 'error'}; + //return {text: `Es wurde${blocks === 1 ? '' : 'n'} ${blocks} Bl${blocks === 1 ? 'ock' : 'öcke'} zu wenig verwendet.`, type: 'error'}; + return {text: `Du kannst deinen Programmcode kompilieren, aber es wurde${blocks === 1 ? '' : 'n'} ${blocks} Bl${blocks === 1 ? 'ock' : 'öcke'} weniger verwendet als in der hinterlegten Lösung.`, type: 'success'}; } else { blocks = userBlocks.length-originalBlocks.length; - return {text: `Es wurde${blocks === 1 ? '' : 'n'} ${blocks} Bl${blocks === 1 ? 'ock' : 'öcke'} zu viel verwendet.`, type: 'error'}; + //return {text: `Es wurde${blocks === 1 ? '' : 'n'} ${blocks} Bl${blocks === 1 ? 'ock' : 'öcke'} zu viel verwendet.`, type: 'error'}; + return {text: `Du kannst deinen Programmcode kompilieren, aber es wurde${blocks === 1 ? '' : 'n'} ${blocks} Bl${blocks === 1 ? 'ock' : 'öcke'} mehr verwendet als in der hinterlegten Lösung.`, type: 'success'}; } } }; From 6fcaff9cc31fd28c371bee062ffaa310dd46230b Mon Sep 17 00:00:00 2001 From: fbruc03 <65135023+fbruc03@users.noreply.github.com> Date: Tue, 15 Nov 2022 16:11:35 +0100 Subject: [PATCH 2/6] save board model to localstorage --- src/actions/boardAction.js | 15 ++-- src/components/DeviceSelection.js | 124 +++++++++++++++--------------- src/reducers/boardReducer.js | 2 +- 3 files changed, 71 insertions(+), 70 deletions(-) diff --git a/src/actions/boardAction.js b/src/actions/boardAction.js index f78cb82..b63b074 100644 --- a/src/actions/boardAction.js +++ b/src/actions/boardAction.js @@ -1,10 +1,11 @@ import { - BOARD, - } from "./types"; + BOARD, +} from "./types"; export const setBoard = (board) => (dispatch) => { - dispatch({ - type: BOARD, - payload: board, - }); - }; \ No newline at end of file + window.localStorage.setItem("board", board); + dispatch({ + type: BOARD, + payload: board, + }); +}; \ No newline at end of file diff --git a/src/components/DeviceSelection.js b/src/components/DeviceSelection.js index 4f0768f..23eff4d 100644 --- a/src/components/DeviceSelection.js +++ b/src/components/DeviceSelection.js @@ -30,68 +30,67 @@ class DeviceSeclection extends Component { super(props); this.state = { open: true, - selectedBoard : "", + selectedBoard: "", saveSettings: false, }; } toggleDialog = () => { - this.props.setBoard(this.state.selectedBoard) - }; onChange = (e) => { if (e.target.checked) { - this.setState({ saveSettings: true}); + this.setState({ saveSettings: true }); } else { - this.setState({ saveSettings: false}); + this.setState({ saveSettings: false }); } }; onclick = (e, value) => { console.log(e, value) const root = document.querySelector(':root'); - root.style.setProperty('--url', `url(${value === "mcu" ? mcu_opacity : mini_opacity })`); - this.setState({selectedBoard: value}) + root.style.setProperty('--url', `url(${value === "mcu" ? mcu_opacity : mini_opacity})`); + this.setState({ selectedBoard: value }) this.props.setBoard(value) this.setState({ open: !this.state }); - - - }; render() { - return ( - -
- - - this.onclick(e, "mcu")}> - - -

senseBox MCU

-
- - {/* + const board = this.props.selectedBoard; + if (board) { + return null; + } + else { + return ( + +
+ + + this.onclick(e, "mcu")}> + + +

senseBox MCU

+
+ {/* this.onclick(e, "esp")}>

Sensebox ESP

*/} - - this.onclick(e, "mini")}> - - -

senseBox MCU:mini

+ + this.onclick(e, "mini")}> + + +

senseBox MCU:mini

+
-
-
- {/* + {/* */} - - {Blockly.Msg.deviceselection_footnote} Arduino UNO {Blockly.Msg.deviceselection_footnote_02} senseBox MCU - -
- ); + + {Blockly.Msg.deviceselection_footnote} Arduino UNO {Blockly.Msg.deviceselection_footnote_02} senseBox MCU + +
+ ); + } } } @@ -155,5 +155,5 @@ const mapStateToProps = (state) => ({ export default connect( mapStateToProps, - {setBoard} + { setBoard } )(withStyles(styles, { withTheme: true })(DeviceSeclection)); diff --git a/src/reducers/boardReducer.js b/src/reducers/boardReducer.js index b2c157f..472bb12 100644 --- a/src/reducers/boardReducer.js +++ b/src/reducers/boardReducer.js @@ -4,7 +4,7 @@ const initialValue = () => { if (window.localStorage.getItem("board")) { return window.localStorage.getItem("board"); } - return "bla"; + return null; }; const initialState = { From 5974608fd80097c9f1d931fc71489b98dd75d6d5 Mon Sep 17 00:00:00 2001 From: fbruc03 <65135023+fbruc03@users.noreply.github.com> Date: Tue, 15 Nov 2022 16:22:29 +0100 Subject: [PATCH 3/6] add DeviceSelection to CodeEditor,Project+Tutorial --- src/components/CodeEditor/CodeEditor.js | 2 ++ src/components/Project/ProjectHome.js | 14 +++++++------- src/components/Tutorial/TutorialHome.js | 24 +++++++++++------------- 3 files changed, 20 insertions(+), 20 deletions(-) diff --git a/src/components/CodeEditor/CodeEditor.js b/src/components/CodeEditor/CodeEditor.js index f361aa6..7741b20 100644 --- a/src/components/CodeEditor/CodeEditor.js +++ b/src/components/CodeEditor/CodeEditor.js @@ -11,6 +11,7 @@ import Sidebar from "./Sidebar"; import Dialog from "../Dialog"; import SaveIcon from "./SaveIcon"; import store from "../../store"; +import DeviceSelection from "../DeviceSelection"; const CodeEditor = (props) => { //const [filehandle, setFileHandle] = useState(); @@ -192,6 +193,7 @@ void loop() { }} /> +