{"version":3,"file":"882.f724dfed9176414e.bundle.js","mappings":"mIAiBA,SAASA,EAAcC,EAAUC,GAC7B,IAAIC,EAAK,IAAI,IACbF,EAASG,QAAQC,KAAK,kBAAkBC,OAAM,WAC1CH,EAAGI,aAAa,CAAEC,MAAO,WAAYC,IAAK,QAASC,OAAQR,GAC/D,IACAD,EAASG,QAAQC,KAAK,iBAAiBC,OAAM,WACzCH,EAAGI,aAAa,CAAEC,MAAO,WAAYC,IAAK,OAAQC,OAAQR,GAC9D,IACAD,EAASG,QAAQC,KAAK,gBAAgBC,OAAM,WACxCH,EAAGI,aAAa,CAAEC,MAAO,WAAYC,IAAK,OAAQC,OAAQR,GAC9D,IACAD,EAASG,QAAQC,KAAK,eAAeC,OAAM,WACvCH,EAAGI,aAAa,CAAEC,MAAO,WAAYC,IAAK,MAAOC,OAAQR,GAC7D,IACAD,EAASG,QAAQC,KAAK,oBAAoBM,KAAK,SAAS,SAAUC,EAAKC,GACnEV,EAAGI,aAAa,CAAEC,MAAO,WAAYC,IAAK,QAASC,OAAQR,GAC/D,IAEAC,EAAGW,aAAeC,SAASC,eAAed,GAC1CC,EAAGc,0BACP,CAEA,SAASC,EAAahB,GAClB,IAAIiB,EAAQC,EAAE,IAAMlB,GACpBkB,EAAED,GAAOd,KAAK,kBAAkBgB,SAAS,mBACzCD,EAAED,GAAOd,KAAK,gBAAgBgB,SAAS,kBACvCD,EAAED,GAAOd,KAAK,eAAegB,SAAS,mBACtCD,EAAED,GAAOd,KAAK,iBAAiBgB,SAAS,kBAC5C,C,SAE6B,oBAAlBC,gBACPC,OAAOC,eAAiB,IAG5BJ,GAAE,WACE,GAA4B,oBAAjBK,aAA8B,CACrC,IAAK,IAAIvB,KAASuB,aAAc,CAC5B,IAAIC,EAAKX,SAASC,eAAed,GAC7ByB,EAAOP,EAAEM,GAAIE,KAAK,UAAUD,KAChC,IACI,IAAIE,EAAMC,oBAAoBL,aAAavB,GAAQA,EAAO,CACtD6B,oBAAqB,EACrBC,gBAAiB,KACjBC,UAAU,EACVN,KAAMA,IAEV3B,EAAc6B,EAAK3B,GACnBgB,EAAahB,GACbqB,OAAOC,eAAeU,KAAKL,EAI/B,CAHE,MAAOM,GACLC,QAAQC,IAAI,oCAAoCnC,KAChDkC,QAAQC,IAAIF,EAChB,CACJ,CACAZ,OAAOe,iBAAiB,mBAAmB,SAAU1B,IACxC,IAAI,KACVL,aAAa,CACZC,MAAO,WACPE,OAAQE,EAAI2B,OAAOrC,MACnBO,IAAK,UAAUG,EAAI2B,OAAOC,SAC1BC,QAAS7B,EAAI2B,OAAOE,UAExBL,QAAQC,IAAIzB,EAChB,GACJ,CACJ,G","sources":["webpack://WebComponents/./runestone/codelens/js/codelens.js"],"sourcesContent":["/**\n * Created by bmiller on 5/10/15.\n */\n\n/*\n Since I don't want to modify the codelens code I'll attach the logging functionality this way.\n This actually seems like a better way to do it maybe across the board to separate logging\n from the real funcionality. It would also allow a better way of turning off/on logging..\n As long as Philip doesn't go and change the id values for the buttons and slider this will\n continue to work.... In the best of all worlds we might add a function to the visualizer to\n return the buttons, but I'm having a hard time thinking of any other use for that besides mine.\n */\n\nimport RunestoneBase from \"../../common/js/runestonebase.js\";\nimport \"./pytutor-embed.bundle.js\";\nimport \"./../css/pytutor.css\";\n\nfunction attachLoggers(codelens, divid) {\n let rb = new RunestoneBase();\n codelens.domRoot.find(\"#jmpFirstInstr\").click(function () {\n rb.logBookEvent({ event: \"codelens\", act: \"first\", div_id: divid });\n });\n codelens.domRoot.find(\"#jmpLastInstr\").click(function () {\n rb.logBookEvent({ event: \"codelens\", act: \"last\", div_id: divid });\n });\n codelens.domRoot.find(\"#jmpStepBack\").click(function () {\n rb.logBookEvent({ event: \"codelens\", act: \"back\", div_id: divid });\n });\n codelens.domRoot.find(\"#jmpStepFwd\").click(function () {\n rb.logBookEvent({ event: \"codelens\", act: \"fwd\", div_id: divid });\n });\n codelens.domRoot.find(\"#executionSlider\").bind(\"slide\", function (evt, ui) {\n rb.logBookEvent({ event: \"codelens\", act: \"slide\", div_id: divid });\n });\n // TODO: The component isn't quite fully initialized, but it also doesn't inherit from RunestoneBase. This is a convenient place to mark it ready for now, but it should be moved forward in time during a rewrite.\n rb.containerDiv = document.getElementById(divid);\n rb.indicate_component_ready();\n}\n\nfunction styleButtons(divid) {\n var myVis = $(\"#\" + divid);\n $(myVis).find(\"#jmpFirstInstr\").addClass(\"btn btn-default\");\n $(myVis).find(\"#jmpStepBack\").addClass(\"btn btn-danger\");\n $(myVis).find(\"#jmpStepFwd\").addClass(\"btn btn-success\");\n $(myVis).find(\"#jmpLastInstr\").addClass(\"btn btn-default\");\n}\n\nif (typeof allVsualizers === \"undefined\") {\n window.allVisualizers = [];\n}\n\n$(function () {\n if (typeof allTraceData !== \"undefined\") {\n for (let divid in allTraceData) {\n let cl = document.getElementById(divid);\n let lang = $(cl).data(\"params\").lang;\n try {\n let vis = addVisualizerToPage(allTraceData[divid], divid, {\n startingInstruction: 0,\n editCodeBaseURL: null,\n hideCode: false,\n lang: lang,\n });\n attachLoggers(vis, divid);\n styleButtons(divid);\n window.allVisualizers.push(vis);\n } catch (err) {\n console.log(`Error rendering CodeLens Problem ${divid}`);\n console.log(err);\n }\n }\n window.addEventListener(\"codelens:answer\", function (evt) {\n let rb = new RunestoneBase();\n rb.logBookEvent({\n event: \"codelens\",\n div_id: evt.detail.divid,\n act: `answer:${evt.detail.answer}`,\n correct: evt.detail.correct,\n });\n console.log(evt);\n });\n }\n});\n"],"names":["attachLoggers","codelens","divid","rb","domRoot","find","click","logBookEvent","event","act","div_id","bind","evt","ui","containerDiv","document","getElementById","indicate_component_ready","styleButtons","myVis","$","addClass","allVsualizers","window","allVisualizers","allTraceData","cl","lang","data","vis","addVisualizerToPage","startingInstruction","editCodeBaseURL","hideCode","push","err","console","log","addEventListener","detail","answer","correct"],"sourceRoot":""}