diff --git a/dist/assets/index-DwDBh_Bf.js b/dist/assets/index-Bm-nT3Zo.js similarity index 99% rename from dist/assets/index-DwDBh_Bf.js rename to dist/assets/index-Bm-nT3Zo.js index f9739cb..ee7486a 100644 --- a/dist/assets/index-DwDBh_Bf.js +++ b/dist/assets/index-Bm-nT3Zo.js @@ -390,7 +390,7 @@ const SUNE = window.SUNE = new Proxy({ get list() { } buf += delta; state.stream.text = buf; - renderMarkdown(suneBubble, partsToText(assistantMsg), { enhance: false }); + if (buf || assistantMsg.images && assistantMsg.images.length || done) renderMarkdown(suneBubble, partsToText(assistantMsg), { enhance: false }); assistantMsg.content[0].text = buf; if (done && !completed) { completed = true; @@ -596,7 +596,11 @@ const addMessage = window.addMessage = function(m, track = true) { if (m.role === "assistant") el.composer.dispatchEvent(new CustomEvent("sune:newSuneResponse", { detail: { message: m } })); return bubble; }; -const addSuneBubbleStreaming = (meta, id) => msgRow(Object.assign({ role: "assistant", id }, meta)); +const addSuneBubbleStreaming = (meta, id) => { + const b = msgRow(Object.assign({ role: "assistant", id }, meta)); + b.innerHTML = ''; + return b; +}; const clearChat = () => { el.suneHtml.dispatchEvent(new CustomEvent("sune:unmount")); state.messages = []; @@ -1087,7 +1091,7 @@ $(el.composer).on("submit", async (e) => { } buf += delta; state.stream.text = buf; - renderMarkdown(suneBubble, partsToText(assistantMsg), { enhance: false }); + if (buf || assistantMsg.images && assistantMsg.images.length || done) renderMarkdown(suneBubble, partsToText(assistantMsg), { enhance: false }); assistantMsg.content[0].text = buf; if (done && !completed) { completed = true; diff --git a/dist/assets/index-BF4OXe6U.css b/dist/assets/index-BnyJnb2d.css similarity index 88% rename from dist/assets/index-BF4OXe6U.css rename to dist/assets/index-BnyJnb2d.css index d02a452..b40da0e 100644 --- a/dist/assets/index-BF4OXe6U.css +++ b/dist/assets/index-BnyJnb2d.css @@ -29,3 +29,5 @@ mjx-container[jax="SVG"][display="true"] { mjx-container svg { max-width: 100%; } +@keyframes sune-spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } } +.sune-generating { display: inline-block; animation: sune-spin 4s linear infinite; color: #9ca3af; } diff --git a/dist/index.html b/dist/index.html index c79bef1..acc6f20 100644 --- a/dist/index.html +++ b/dist/index.html @@ -15,8 +15,8 @@ - - + +