From 4b50386d6712df2545b870b83b0c6e9fbee3f599 Mon Sep 17 00:00:00 2001 From: Toph Tucker Date: Thu, 30 Oct 2025 11:16:49 -0400 Subject: [PATCH] Render cells into existing div matching `#cell-${id}` if present --- src/vite/observable.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/vite/observable.ts b/src/vite/observable.ts index 6da24b5..c98266b 100644 --- a/src/vite/observable.ts +++ b/src/vite/observable.ts @@ -100,8 +100,10 @@ export function observable({ for (const cell of notebook.cells) { const {id, mode, pinned, hidden, format, value} = cell; const contents = document.createDocumentFragment(); - const div = contents.appendChild(document.createElement("div")); - div.id = `cell-${id}`; + const divId = `cell-${id}`; + let div = document.getElementById(divId); + div ??= contents.appendChild(document.createElement("div")); + div.id = divId; div.className = "observablehq observablehq--cell"; if (mode === "md" && !hidden) { const template = parseTemplate(value);