Packages
kino
0.8.0
0.19.0
0.18.0
0.17.0
0.16.1
0.16.0
0.15.3
0.15.2
0.15.1
0.15.0
0.14.2
0.14.1
0.14.0
0.13.2
0.13.1
0.13.0
0.12.3
0.12.2
0.12.1
0.12.0
0.11.3
0.11.2
0.11.1
0.11.0
0.10.0
0.9.4
0.9.3
0.9.2
0.9.1
0.9.0
0.8.1
0.8.0
0.7.0
0.6.2
0.6.1
0.6.0
retired
0.5.2
0.5.1
0.5.0
0.4.1
0.4.0
0.3.1
0.3.0
0.2.3
0.2.2
0.2.1
0.2.0
0.1.3
0.1.2
0.1.1
0.1.0
Interactive widgets for Livebook
Current section
Files
Jump to
Current section
Files
lib/assets/debug_default/main.js
import * as Vue from "https://cdn.jsdelivr.net/npm/vue@3.2.26/dist/vue.esm-browser.prod.js";
export async function init(ctx, payload) {
ctx.importCSS("main.css");
ctx.importCSS(
"https://fonts.googleapis.com/css2?family=JetBrains+Mono&display=swap"
);
const app = Vue.createApp({
template: `
<div class="app">
<div class="headline">
<span class="dbg">dbg:{{ dbgLine }}</span>
<span>{{ dbgInfo }}</span>
</div>
<div class="source">{{source}}</div>
</div>
`,
data() {
return {
dbgLine: payload.dbg_line,
dbgSameFile: payload.dbg_same_file,
callCount: payload.call_count,
source: payload.source,
};
},
computed: {
dbgInfo() {
const info = [
!this.dbgSameFile && "from another cell",
this.callCount > 1 && `showing first out of ${this.callCount} calls`,
]
.filter((x) => x)
.join("; ");
if (info) {
return `(${info})`;
} else {
return null;
}
},
},
}).mount(ctx.root);
ctx.handleEvent("call_count_updated", ({ call_count }) => {
app.callCount = call_count;
});
}