diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3f72a72 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +AGENTS.md diff --git a/js/app.js b/js/app.js index 06f151a..569ece4 100644 --- a/js/app.js +++ b/js/app.js @@ -338,14 +338,15 @@ class ProductCanvasApp { } // 创建流式消息容器 - createStreamingMessageContainer(messageId) { - const messageDiv = document.createElement('div'); - messageDiv.className = 'flex justify-start'; - messageDiv.innerHTML = ` -
-
-
- `; + createStreamingMessageContainer(messageId) { + const messageDiv = document.createElement('div'); + messageDiv.className = 'flex justify-start'; + messageDiv.dataset.messageId = messageId; + messageDiv.innerHTML = ` +
+
+
+ `; return messageDiv; } @@ -415,8 +416,16 @@ class ProductCanvasApp { // 完成流式消息 finalizeStreamingMessage(messageId, fullContent, svgId = null, beforeText = '') { - const container = document.querySelector(`[data-message-id="${messageId}"]`); - if (!container) return; + let container = document.querySelector(`.chat-bubble-ai[data-message-id="${messageId}"]`); + if (!container) { + const fallback = document.querySelector(`[data-message-id="${messageId}"]`); + if (fallback) { + container = fallback.classList.contains('chat-bubble-ai') + ? fallback + : fallback.querySelector('.chat-bubble-ai'); + } + } + if (!container) return; const message = { id: messageId, @@ -982,4 +991,4 @@ class ProductCanvasApp { // 页面加载完成后初始化应用 document.addEventListener('DOMContentLoaded', () => { window.app = new ProductCanvasApp(); -}); \ No newline at end of file +});