link = {
const embedded_runtime = new rt.Runtime().module();
const interpret = new quarto.Interpreter({
module: embedded_runtime
});
viewof notebook.source.value.forEach((src, i) => {
let variables = [];
const inspector = rt.Inspector.into(viewof outputs.outputs[i]);
const onInput = async (_) => {
const src = viewof notebook.source[i].value;
variables.forEach((v) => {
v.delete();
});
viewof outputs.outputs[i].value = null;
variables = await interpret.cell(src, embedded_runtime, inspector);
};
viewof notebook.source[i].addEventListener("input", onInput);
onInput();
invalidation.then(() =>
viewof notebook.source[i].removeEventListener("input", onInput)
);
});
return embedded_runtime;
}