Fix CascadeStudio integration

resolves #95
This commit is contained in:
Kurt Hutten
2020-11-14 12:00:55 +11:00
parent 6013e35e59
commit 5ea1bdf69f
14 changed files with 139 additions and 79 deletions

View File

@@ -0,0 +1,25 @@
import { initialize, getEditor } from 'src/cascade/js/MainPage/CascadeMain'
class CascadeController {
_hasInitialised = false
incomingOnCodeChang = () => {}
controllerOnCodeChange = (code) => {
this.incomingOnCodeChang(code)
}
initialise(onCodeChange, code) {
// only inits on first call, after that it just updates the editor and revaluates code, maybe should rename?
this.incomingOnCodeChang = onCodeChange
if (!this._hasInitialised) {
initialize(this.controllerOnCodeChange, code)
this._hasInitialised = true
return
}
const editor = getEditor()
editor.setValue(code)
editor.evaluateCode(false)
return this.domNode
}
}
export default new CascadeController()