{"version":3,"sources":["https://lively-kernel.org/lively4/lively4-tabs/src/client/reactive/components/basic/aexpr-debugging-utils.js"],"names":["fileNameString","toValueString","navigateToGraph","navigateToTimeline","openLocationInBrowser","location","start","line","ch","column","end","lively","files","exists","file","then","openBrowser","undefined","notify","timelineCallback","existingTimelines","document","body","querySelectorAll","length","timeline","parentElement","focus","openComponentInWindow","aexprs","event","existingGraph","graph","setAExprs","value","valueString","toString","String","substring","lastIndexOf"],"mappings":";;;;;;;;;;;;;;oCAqDgBA,+C;;;;;;;;;;;;;;mCARAC,8C;;;;;;;;;;;;;;qCAhBMC,gD;;;;;;;;;;;;;;wCAjBAC,mD;;;;;;;;;;;;;;2CAZNC,sD;;;;;;;;AAAT,eAASA,qBAAT,CAA+BC,QAA/B,EAAyC;AAC9C,cAAMC,QAAQ,EAAEC,MAAMF,SAASC,KAAT,CAAeC,IAAf,GAAsB,CAA9B,EAAiCC,IAAIH,SAASC,KAAT,CAAeG,MAApD,EAAd;AACA,cAAMC,MAAM,EAAEH,MAAMF,SAASK,GAAT,CAAaH,IAAb,GAAoB,CAA5B,EAA+BC,IAAIH,SAASK,GAAT,CAAaD,MAAhD,EAAZ;AACAE,eAAOC,KAAP,CAAaC,MAAb,CAAoBR,SAASS,IAA7B,EAAmCC,IAAnC,CAAwCF,UAAU;AAChD,cAAIA,MAAJ,EAAY;AACVF,mBAAOK,WAAP,CAAmBX,SAASS,IAA5B,EAAkC,IAAlC,EAAwC,EAAER,KAAF,EAASI,GAAT,EAAxC,EAAwD,KAAxD,EAA+DO,SAA/D,EAA0E,IAA1E;AACD,WAFD,MAEO;AACLN,mBAAOO,MAAP,CAAc,yBAAyBb,SAASS,IAAhD;AACD;AACF,SAND;AAOD;;;;AAEM,qBAAeX,kBAAf,CAAkCgB,gBAAlC,EAAoD;AACzD,cAAMC,oBAAoBC,SAASC,IAAT,CAAcC,gBAAd,CAA+B,gBAA/B,CAA1B;;AAEA,YAAIH,kBAAkBI,MAAlB,GAA2B,CAA/B,EAAkC;AAChC,gBAAMC,WAAWL,kBAAkB,CAAlB,CAAjB;AACAD,2BAAiBM,QAAjB;AACAA,mBAASC,aAAT,CAAuBC,KAAvB;AACAF,mBAASE,KAAT;AACA;AACD;;AAED,eAAOhB,OAAOiB,qBAAP,CAA6B,gBAA7B,EAA+Cb,IAA/C,CAAoDU,YAAY;AACrEN,2BAAiBM,QAAjB;AACD,SAFM,CAAP;AAGD;;;;AAGM,qBAAevB,eAAf,CAA+B2B,MAA/B,EAAuCC,KAAvC,EAA8C;AACnD,cAAMC,gBAAgBV,SAASC,IAAT,CAAcC,gBAAd,CAA+B,aAA/B,CAAtB;;AAEA,YAAGQ,cAAcP,MAAd,GAAuB,CAA1B,EAA6B;AAC3B,gBAAMQ,QAAQD,cAAc,CAAd,CAAd;AACAC,gBAAMC,SAAN,CAAgBJ,MAAhB,EAAwBC,KAAxB;AACAE,gBAAMN,aAAN,CAAoBC,KAApB;AACAK,gBAAML,KAAN;AACA;AACD;;AAEDhB,eAAOiB,qBAAP,CAA6B,aAA7B,EAA4Cb,IAA5C,CAAkDiB,KAAD,IAAW;AAC1DA,gBAAMC,SAAN,CAAgBJ,MAAhB,EAAwBC,KAAxB;AACD,SAFD;AAGD;;;;AAEM,eAAS7B,aAAT,CAAuBiC,KAAvB,EAA8B;AACnC,YAAIC,cAAcD,SAASA,MAAME,QAAf,GAA0BF,MAAME,QAAN,EAA1B,GAA6CF,KAA/D;AACA,YAAI,OAAOA,KAAP,KAAiB,QAAjB,IAA6BA,iBAAiBG,MAAlD,EAA0D;AACxDF,wBAAc,OAAOA,WAAP,GAAqB,IAAnC;AACD;AACD,eAAOA,WAAP;AACD;;;;AAEM,eAASnC,cAAT,CAAwBc,IAAxB,EAA8B;AACnC,eAAOA,KAAKwB,SAAL,CAAexB,KAAKyB,WAAL,CAAiB,GAAjB,IAAwB,CAAvC,CAAP;AACD","file":"aexpr-debugging-utils.js","sourcesContent":["export function openLocationInBrowser(location) {\n  const start = { line: location.start.line - 1, ch: location.start.column };\n  const end = { line: location.end.line - 1, ch: location.end.column };\n  lively.files.exists(location.file).then(exists => {\n    if (exists) {\n      lively.openBrowser(location.file, true, { start, end }, false, undefined, true);\n    } else {\n      lively.notify(\"Unable to find file:\" + location.file);\n    }\n  });\n}\n\nexport async function navigateToTimeline(timelineCallback) {\n  const existingTimelines = document.body.querySelectorAll('aexpr-timeline');\n\n  if (existingTimelines.length > 0) {\n    const timeline = existingTimelines[0];\n    timelineCallback(timeline);\n    timeline.parentElement.focus();\n    timeline.focus();\n    return;\n  }\n\n  return lively.openComponentInWindow(\"aexpr-timeline\").then(timeline => {\n    timelineCallback(timeline);\n  });\n}\n  \n  \nexport async function navigateToGraph(aexprs, event) {\n  const existingGraph = document.body.querySelectorAll('aexpr-graph');\n\n  if(existingGraph.length > 0) {\n    const graph = existingGraph[0];\n    graph.setAExprs(aexprs, event);\n    graph.parentElement.focus();\n    graph.focus();\n    return;\n  }\n\n  lively.openComponentInWindow(\"aexpr-graph\").then((graph) => {\n    graph.setAExprs(aexprs, event);\n  })\n}\n\nexport function toValueString(value) {\n  let valueString = value && value.toString ? value.toString() : value;\n  if (typeof value === 'string' || value instanceof String) {\n    valueString = \"\\\"\" + valueString + \"\\\"\";\n  }\n  return valueString;\n}\n\nexport function fileNameString(file) {\n  return file.substring(file.lastIndexOf('/') + 1);\n}\n"]}