{"version":3,"sources":["https://lively-kernel.org/lively4/lively4-petrinet/src/components/demo/lively-petrinet-code-editor.js"],"names":["Morph","ContextMenu","pt","NEWLINE","TAB","LivelyPetrinetCodeEditor","initialize","windowTitle","registerButtons","codeMirror","value","onSave","undefined","setOnSave","saveFunction","get","code","codeString","onSaveButton","parentNode","onCloseButtonClicked"],"mappings":";;;;;;AAAOA,W;;AACAC,iB;;AACCC,Q,wBAAAA,E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGR,YAAMC,UAAU,IAAhB;;;;;;;;;;;;;;AACA,YAAMC,MAAM,IAAZ;;;;;;;;;;;;;;;AAGe,YAAMC,wBAAN,SAAuCL,KAAvC,CAA6C;;AAI1D;;;AAKA,cAAMM,UAAN,GAAmB;AACjB,eAAKC,WAAL,GAAmB,0BAAnB;AACA,eAAKC,eAAL;AACA,eAAKC,UAAL,CAAgBC,KAAhB,GAAwB,2DAA2DP,OAA3D,GACtBC,GADsB,GAChB,uBADgB,GACUD,OADV,GAEtB,GAFF;AAGA,eAAKQ,MAAL,GAAcC,SAAd;AAEH;;AAGC;;AAEAC,kBAAUC,YAAV,EAAwB;AACtB,eAAKH,MAAL,GAAcG,YAAd;AACD;;AAED,YAAIL,UAAJ,GAAiB;AACf,iBAAO,KAAKM,GAAL,CAAS,oBAAT,CAAP;AACD;;AAED,YAAIC,IAAJ,GAAW;AACT,iBAAO,KAAKP,UAAL,CAAgBC,KAAvB;AACD;;AAED,YAAIM,IAAJ,CAASC,UAAT,EAAqB;AACnB,eAAKR,UAAL,CAAgBC,KAAhB,GAAwBO,UAAxB;AACD;;AAGD;;AAEAC,uBAAe;AACb,eAAKP,MAAL,CAAY,KAAKK,IAAjB;AACA,eAAKG,UAAL,CAAgBC,oBAAhB,CAAqC,IAArC;AACD;;AA5CyD;;yBAAvCf,wB","file":"lively-petrinet-code-editor.js","sourcesContent":["import Morph from 'src/components/widgets/lively-morph.js';\nimport ContextMenu from 'src/client/contextmenu.js';\nimport {pt} from 'src/client/graphics.js';\n\n\nconst NEWLINE = \"\\n\";\nconst TAB = \"\\t\";\n\n\nexport default class LivelyPetrinetCodeEditor extends Morph {\n  \n  \n  \n  // Initialization\n  \n  \n  \n\n  async initialize() {\n    this.windowTitle = \"LivelyPetrinetCodeEditor\";\n    this.registerButtons();\n    this.codeMirror.value = \"function shouldFire(places, transitions, connectors) {\" + NEWLINE\n    + TAB + 'lively.notify(\"test\")' + NEWLINE\n    + \"}\";\n    this.onSave = undefined;\n\n}\n  \n  \n  // Access\n  \n  setOnSave(saveFunction) {\n    this.onSave = saveFunction\n  }\n  \n  get codeMirror() {\n    return this.get(\"lively-code-mirror\");\n  }\n  \n  get code() {\n    return this.codeMirror.value\n  }\n  \n  set code(codeString) {\n    this.codeMirror.value = codeString;\n  }\n  \n  \n  // Button\n  \n  onSaveButton() {\n    this.onSave(this.code);\n    this.parentNode.onCloseButtonClicked(this);\n  }\n\n  \n\n}"]}