diff --git a/client/dist/chatbot-sdk.js b/client/dist/chatbot-sdk.js index 8273324..909dff5 100644 --- a/client/dist/chatbot-sdk.js +++ b/client/dist/chatbot-sdk.js @@ -1275,6 +1275,13 @@ var ChatbotSDK = (function () { .csk-history-item:hover { background: #F3F4F6; } +.csk-history-item--active { + background: #EEF2FF; + border-left: 3px solid var(--csk-primary); +} +.csk-history-item--active:hover { + background: #E0E7FF; +} .csk-history-item__info { flex: 1; min-width: 0; @@ -1810,7 +1817,7 @@ var ChatbotSDK = (function () { } } /** 渲染会话列表 */ - function renderHistoryList(listEl, items, onExport, onDelete, emptyText) { + function renderHistoryList(listEl, items, onSelect, onExport, onDelete, activeChatId, emptyText) { listEl.innerHTML = ''; if (items.length === 0) { const empty = document.createElement('div'); @@ -1825,11 +1832,24 @@ var ChatbotSDK = (function () { for (const item of items) { const el = document.createElement('div'); el.className = 'csk-history-item'; + // 高亮当前活跃会话 + const convId = item.chatId || item.id; + if (activeChatId && convId === activeChatId) { + el.classList.add('csk-history-item--active'); + } const info = document.createElement('div'); info.className = 'csk-history-item__info'; const idEl = document.createElement('div'); idEl.className = 'csk-history-item__id'; - idEl.textContent = item.chatId || item.id; + // 显示最后一条消息预览,没有则显示 chatId + if (item.lastMessagePreview) { + idEl.textContent = item.lastMessagePreview.length > 60 + ? item.lastMessagePreview.substring(0, 60) + '...' + : item.lastMessagePreview; + } + else { + idEl.textContent = convId; + } const metaEl = document.createElement('div'); metaEl.className = 'csk-history-item__meta'; const metaParts = []; @@ -1866,6 +1886,10 @@ var ChatbotSDK = (function () { actionsEl.appendChild(deleteBtn); el.appendChild(info); el.appendChild(actionsEl); + // 点击整行 → 切换到该会话 + el.addEventListener('click', () => { + onSelect(convId); + }); listEl.appendChild(el); } } @@ -2494,25 +2518,90 @@ var ChatbotSDK = (function () { try { const result = await fetchConversationList(1, 50, config$1.userId, config$1.integrateId); const items = result.list.map(c => ({ - id: c.conversationId || c.chatId || '', - chatId: c.conversationId || c.chatId || '', + id: c.conversationId || '', + chatId: c.conversationId || '', // conversationId 就是 chatId messageCount: c.messageCount, lastMessageTime: c.lastMessageTime, + lastMessagePreview: c.lastMessagePreview, createdAt: c.firstMessageTime || c.createdAt, })); - renderHistoryList(listEl, items, (id) => { window.open(getConversationExportUrl(id), '_blank'); }, async (id) => { + renderHistoryList(listEl, items, + // onSelect: 切换到选中的会话 + (conversationId) => { + switchToConversation(conversationId); + }, + // onExport + (id) => { window.open(getConversationExportUrl(id), '_blank'); }, + // onDelete + async (id) => { if (!confirm(t('history_delete_confirm'))) return; const ok = await deleteConversation(id); - if (ok) + if (ok) { + // 如果删的是当前会话,清空聊天窗口 + if (id === getChatId()) { + messages = []; + if (messagesContainer$1) { + const msgs = messagesContainer$1.querySelectorAll('.csk-msg, .csk-loading'); + msgs.forEach(el => el.remove()); + } + if (clearBtn$1) + clearBtn$1.style.display = 'none'; + } loadHistoryConversations(); - }); + } + }, + // 当前活跃 chatId,用于高亮 + getChatId()); } catch (err) { logger.error(t('history_load_error'), err); listEl.innerHTML = `
${t('history_load_error')}
`; } } + /** + * 切换到指定会话:加载上下文并继续对话 + * @param conversationId 会话 ID(即 chatId) + */ + async function switchToConversation(conversationId) { + if (!config$1 || !messagesContainer$1) + return; + logger.info(`切换到会话 conversationId=${conversationId}`); + // 1. 更新 chatId + updateChatId(conversationId); + saveCachedChatId(config$1.integrateId, config$1.userId, conversationId); + // 2. 关闭历史面板 + if (historyPanel$1) { + historyPanel$1.classList.add('csk-history-panel--hidden'); + } + // 3. 清空当前消息 + messages = []; + const msgs = messagesContainer$1.querySelectorAll('.csk-msg, .csk-loading'); + msgs.forEach(el => el.remove()); + // 4. 从后端加载该会话的消息 + try { + const result = await fetchConversationMessages(conversationId); + if (result.messages.length > 0) { + messages = result.messages.map((msg) => ({ + id: uuid(), + role: msg.messageType === 'USER' ? 'user' : 'ai', + content: msg.content, + timestamp: new Date(msg.createTime).getTime(), + })); + renderHistory(); + logger.info(`加载会话 ${conversationId} 的 ${messages.length} 条消息`); + // 同步到 localStorage + saveMessages(config$1.integrateId, messages); + } + } + catch (err) { + logger.warn(`加载会话消息失败 conversationId=${conversationId}`, err); + } + // 5. 显示清空按钮 + if (clearBtn$1 && messages.length > 0) { + clearBtn$1.style.display = 'inline-flex'; + } + } // ==================== 单例状态 ==================== let config = null; diff --git a/client/dist/chatbot-sdk.js.map b/client/dist/chatbot-sdk.js.map index ac22c50..7168aee 100644 --- a/client/dist/chatbot-sdk.js.map +++ b/client/dist/chatbot-sdk.js.map @@ -1 +1 @@ -{"version":3,"file":"chatbot-sdk.js","sources":["../src/logger.ts","../src/config.ts","../src/i18n.ts","../src/api.ts","../src/styles.ts","../src/utils.ts","../src/dom.ts","../src/storage.ts","../src/markdown.ts","../src/chat.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":["config","messagesContainer","inputEl","sendBtn","clearBtn","categorySelect","historyPanel","showLoadingFn","hideLoadingFn"],"mappings":";;;IAMA,MAAM,MAAM,GAAG,cAAc;IAE7B,IAAI,YAAY,GAAG,IAAI;IAEvB;IACM,SAAU,QAAQ,CAAC,OAAgB,EAAA;QACvC,YAAY,GAAG,OAAO;IACxB;IAEA;IACA,MAAM,MAAM,GAA2B,EAAE;IAElC,MAAM,MAAM,GAAG;;QAEpB,IAAI,CAAC,GAAW,EAAE,IAAc,EAAA;YAC9B,IAAI,YAAY,EAAE;IAChB,YAAA,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,KAAK,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;YAC1D;QACF,CAAC;;QAGD,IAAI,CAAC,GAAW,EAAE,IAAc,EAAA;YAC9B,IAAI,YAAY,EAAE;IAChB,YAAA,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,KAAK,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;YAC3D;QACF,CAAC;;QAGD,KAAK,CAAC,GAAW,EAAE,IAAc,EAAA;IAC/B,QAAA,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,KAAK,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;QAC5D,CAAC;;IAGD,IAAA,IAAI,CAAC,KAAa,EAAA;YAChB,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE;QAC5B,CAAC;;QAGD,OAAO,CAAC,KAAa,EAAE,MAAe,EAAA;IACpC,QAAA,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAC3B,QAAA,IAAI,KAAK,KAAK,SAAS,EAAE;gBACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;IACnC,YAAA,OAAO,MAAM,CAAC,KAAK,CAAC;gBACpB,IAAI,YAAY,EAAE;IAChB,gBAAA,MAAM,GAAG,GAAG,MAAM,GAAG,GAAG,MAAM,CAAA,CAAA,EAAI,QAAQ,CAAA,EAAA,CAAI,GAAG,CAAA,EAAG,KAAK,CAAA,CAAA,EAAI,QAAQ,IAAI;IACzE,gBAAA,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC;gBAC1B;IACA,YAAA,OAAO,QAAQ;YACjB;IACA,QAAA,OAAO,CAAC;QACV,CAAC;;QAGD,aAAa,CAAC,WAAmB,EAAE,aAAqB,EAAA;YACtD,IAAI,CAAC,IAAI,CAAC,CAAA,kBAAA,EAAqB,WAAW,CAAA,eAAA,EAAkB,aAAa,CAAA,CAAE,CAAC;QAC9E,CAAC;;IAGD,IAAA,gBAAgB,CAAC,WAAmB,EAAA;IAClC,QAAA,IAAI,CAAC,IAAI,CAAC,oBAAoB,WAAW,CAAA,CAAE,CAAC;QAC9C,CAAC;;QAGD,aAAa,CAAC,WAAmB,EAAE,MAAc,EAAA;YAC/C,IAAI,CAAC,IAAI,CAAC,CAAA,iBAAA,EAAoB,WAAW,CAAA,QAAA,EAAW,MAAM,CAAA,CAAE,CAAC;IAC7D,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,WAAW,CAAA,CAAE,CAAC;QAClC,CAAC;;QAGD,cAAc,CAAC,WAAmB,EAAE,MAAc,EAAA;IAChD,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,CAAA,KAAA,EAAQ,WAAW,CAAA,CAAE,EAAE,OAAO,CAAC;YAC7D,IAAI,CAAC,IAAI,CAAC,CAAA,kBAAA,EAAqB,WAAW,CAAA,QAAA,EAAW,MAAM,CAAA,UAAA,EAAa,QAAQ,CAAA,EAAA,CAAI,CAAC;QACvF,CAAC;;IAGD,IAAA,cAAc,CAAC,WAAmB,EAAE,MAAc,EAAE,OAAe,EAAA;IACjE,QAAA,IAAI,CAAC,OAAO,CAAC,QAAQ,WAAW,CAAA,CAAE,CAAC;YACnC,IAAI,CAAC,KAAK,CAAC,CAAA,iBAAA,EAAoB,WAAW,CAAA,QAAA,EAAW,MAAM,CAAA,SAAA,EAAY,OAAO,CAAA,CAAE,CAAC;QACnF,CAAC;;IAGD,IAAA,cAAc,CAAC,WAAmB,EAAA;IAChC,QAAA,IAAI,CAAC,IAAI,CAAC,oBAAoB,WAAW,CAAA,CAAE,CAAC;QAC9C,CAAC;;QAGD,mBAAmB,CAAC,WAAmB,EAAE,MAAc,EAAA;IACrD,QAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,CAAA,KAAA,EAAQ,WAAW,CAAA,CAAE,EAAE,MAAM,CAAC;YAC5D,IAAI,CAAC,IAAI,CAAC,CAAA,mBAAA,EAAsB,WAAW,CAAA,QAAA,EAAW,MAAM,CAAA,UAAA,EAAa,QAAQ,CAAA,EAAA,CAAI,CAAC;QACxF,CAAC;;IAGD,IAAA,uBAAuB,CAAC,UAA2B,EAAA;IACjD,QAAA,IAAI,CAAC,IAAI,CAAC,sBAAsB,UAAU,CAAA,CAAE,CAAC;QAC/C,CAAC;KACF;;IC1FD;IACA,MAAM,qBAAqB,GAAG,CAAA;;;OAGvB;IAEP;;IAEG;IACG,SAAU,WAAW,CAAC,GAAc,EAAA;;;IAExC,IAAA,IAAI,CAAC,GAAG,CAAC,WAAW,KAAK,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ;IAC9F,YAAC,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,IAAI,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE;IAC3E,QAAA,MAAM,CAAC,KAAK,CAAC,uIAAuI,CAAC;IACrJ,QAAA,OAAO,IAAI;QACb;;QAGA,IAAI,CAAC,GAAG,CAAC,aAAa,IAAI,OAAO,GAAG,CAAC,aAAa,KAAK,QAAQ,IAAI,GAAG,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;IAClG,QAAA,MAAM,CAAC,KAAK,CAAC,oHAAoH,CAAC;IAClI,QAAA,OAAO,IAAI;QACb;;IAGA,IAAA,IAAI;IACF,QAAA,IAAI,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC;QAC5B;IAAE,IAAA,OAAA,EAAA,EAAM;YACN,MAAM,CAAC,KAAK,CAAC,CAAA,2BAAA,EAA8B,GAAG,CAAC,aAAa,CAAA,mCAAA,CAAqC,CAAC;IAClG,QAAA,OAAO,IAAI;QACb;;QAGA,MAAM,cAAc,GAAG,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,EAAE;;IAGrD,IAAA,MAAM,MAAM,GAAmB;IAC7B,QAAA,WAAW,EAAE,cAAc;IAC3B,QAAA,aAAa,EAAE,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;YACpD,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,UAAU,EAAE,GAAG,CAAC,UAAU;IAC1B,QAAA,kBAAkB,EAAE,CAAA,EAAA,GAAA,GAAG,CAAC,kBAAkB,mCAAI,KAAK;IACnD,QAAA,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,SAAS;IAC7B,QAAA,KAAK,EAAE,CAAA,EAAA,GAAA,GAAG,CAAC,KAAK,mCAAI,GAAG;IACvB,QAAA,QAAQ,EAAE,GAAG,CAAC,QAAQ,KAAK,aAAa,GAAG,aAAa,GAAG,cAAc;IACzE,QAAA,YAAY,EAAE,GAAG,CAAC,YAAY,IAAI,SAAS;IAC3C,QAAA,YAAY,EAAE,GAAG,CAAC,YAAY,IAAI,qBAAqB;IACvD,QAAA,SAAS,EAAE,CAAA,EAAA,GAAA,GAAG,CAAC,SAAS,mCAAI,IAAI;IAChC,QAAA,cAAc,EAAE,CAAA,EAAA,GAAA,GAAG,CAAC,cAAc,mCAAI,KAAK;IAC3C,QAAA,SAAS,EAAE,CAAA,EAAA,GAAA,GAAG,CAAC,SAAS,mCAAI,IAAI;IAChC,QAAA,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,OAAO;IAC7B,QAAA,KAAK,EAAE,CAAA,EAAA,GAAA,GAAG,CAAC,KAAK,mCAAI,IAAI;YACxB,MAAM,EAAE,EAAE;SACX;IAED,IAAA,MAAM,CAAC,IAAI,CAAC,+BAA+B,MAAM,CAAC,WAAW,CAAA,oBAAA,EAAuB,MAAM,CAAC,MAAM,IAAI,OAAO,CAAA,eAAA,EAAkB,MAAM,CAAC,aAAa,CAAA,CAAE,CAAC;IACrJ,IAAA,OAAO,MAAM;IACf;;ICnEA;;IAEG;IAEH;IACA,MAAM,YAAY,GAA2C;IAC3D,IAAA,OAAO,EAAE;;IAEP,QAAA,KAAK,EAAE,SAAS;IAChB,QAAA,QAAQ,EAAE,KAAK;IACf,QAAA,KAAK,EAAE,IAAI;;IAGX,QAAA,WAAW,EAAE,WAAW;IACxB,QAAA,IAAI,EAAE,IAAI;;IAGV,QAAA,OAAO,EAAE,SAAS;IAClB,QAAA,kBAAkB,EAAE,OAAO;IAC3B,QAAA,eAAe,EAAE,eAAe;;IAGhC,QAAA,oBAAoB,EAAE,SAAS;IAC/B,QAAA,YAAY,EAAE,MAAM;IACpB,QAAA,mBAAmB,EAAE,QAAQ;IAC7B,QAAA,YAAY,EAAE,MAAM;IACpB,QAAA,YAAY,EAAE,WAAW;IACzB,QAAA,cAAc,EAAE,UAAU;;IAG1B,QAAA,KAAK,EAAE,MAAM;IACb,QAAA,aAAa,EAAE,aAAa;;IAG5B,QAAA,aAAa,EAAE,MAAM;IACrB,QAAA,aAAa,EAAE,QAAQ;IACvB,QAAA,kBAAkB,EAAE,UAAU;IAC9B,QAAA,sBAAsB,EAAE,UAAU;IAClC,QAAA,cAAc,EAAE,IAAI;IACpB,QAAA,cAAc,EAAE,IAAI;;IAGpB,QAAA,aAAa,EAAE,cAAc;IAC7B,QAAA,aAAa,EAAE,YAAY;IAC3B,QAAA,YAAY,EAAE,aAAa;IAC3B,QAAA,UAAU,EAAE,+BAA+B;IAC3C,QAAA,UAAU,EAAE,aAAa;IACzB,QAAA,eAAe,EAAE,gBAAgB;IACjC,QAAA,eAAe,EAAE,UAAU;IAC3B,QAAA,gBAAgB,EAAE,cAAc;IAChC,QAAA,iBAAiB,EAAE,cAAc;IACjC,QAAA,aAAa,EAAE,UAAU;IACzB,QAAA,UAAU,EAAE,YAAY;IACxB,QAAA,wBAAwB,EAAE,YAAY;IACvC,KAAA;IAED,IAAA,IAAI,EAAE;;IAEJ,QAAA,KAAK,EAAE,cAAc;IACrB,QAAA,QAAQ,EAAE,UAAU;IACpB,QAAA,KAAK,EAAE,OAAO;;IAGd,QAAA,WAAW,EAAE,uBAAuB;IACpC,QAAA,IAAI,EAAE,MAAM;;IAGZ,QAAA,OAAO,EAAE,aAAa;IACtB,QAAA,kBAAkB,EAAE,sBAAsB;IAC1C,QAAA,eAAe,EAAE,6CAA6C;;IAG9D,QAAA,oBAAoB,EAAE,iBAAiB;IACvC,QAAA,YAAY,EAAE,gBAAgB;IAC9B,QAAA,mBAAmB,EAAE,2BAA2B;IAChD,QAAA,YAAY,EAAE,SAAS;IACvB,QAAA,YAAY,EAAE,eAAe;IAC7B,QAAA,cAAc,EAAE,oBAAoB;;IAGpC,QAAA,KAAK,EAAE,YAAY;IACnB,QAAA,aAAa,EAAE,iCAAiC;;IAGhD,QAAA,aAAa,EAAE,SAAS;IACxB,QAAA,aAAa,EAAE,sBAAsB;IACrC,QAAA,kBAAkB,EAAE,8BAA8B;IAClD,QAAA,sBAAsB,EAAE,2BAA2B;IACnD,QAAA,cAAc,EAAE,QAAQ;IACxB,QAAA,cAAc,EAAE,QAAQ;;IAGxB,QAAA,aAAa,EAAE,2BAA2B;IAC1C,QAAA,aAAa,EAAE,qCAAqC;IACpD,QAAA,YAAY,EAAE,sCAAsC;IACpD,QAAA,UAAU,EAAE,qEAAqE;IACjF,QAAA,UAAU,EAAE,6CAA6C;IACzD,QAAA,eAAe,EAAE,qCAAqC;IACtD,QAAA,eAAe,EAAE,oBAAoB;IACrC,QAAA,gBAAgB,EAAE,2CAA2C;IAC7D,QAAA,iBAAiB,EAAE,iCAAiC;IACpD,QAAA,aAAa,EAAE,uBAAuB;IACtC,QAAA,UAAU,EAAE,kCAAkC;IAC9C,QAAA,wBAAwB,EAAE,oCAAoC;IAC/D,KAAA;KACF;IAED;IACA,IAAI,aAAa,GAAG,OAAO;IAE3B;;IAEG;IACG,SAAU,SAAS,CAAC,MAAc,EAAA;IACtC,IAAA,IAAI,YAAY,CAAC,MAAM,CAAC,EAAE;YACxB,aAAa,GAAG,MAAM;QACxB;aAAO;;YAEL,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACnC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YACzE,IAAI,OAAO,EAAE;gBACX,aAAa,GAAG,OAAO;YACzB;;QAEF;IACF;IAEA;;;;IAIG;IACG,SAAU,CAAC,CAAC,GAAW,EAAE,MAAwC,EAAA;QACrE,MAAM,IAAI,GAAG,YAAY,CAAC,aAAa,CAAC,IAAI,YAAY,CAAC,OAAO,CAAC;IACjE,IAAA,IAAI,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,YAAY,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,IAAI,GAAG;;QAGzD,IAAI,MAAM,EAAE;IACV,QAAA,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;IAC3C,YAAA,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,CAAA,CAAA,EAAI,CAAC,CAAA,CAAA,CAAG,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;YAC1C;QACF;IAEA,IAAA,OAAO,IAAI;IACb;;ICpIA;IACA,MAAM,eAAe,GAAG,KAAK;IAE7B,IAAI,aAAa,GAA0B,IAAI;IAE/C;IACM,SAAU,YAAY,CAAC,MAAsB,EAAA;QACjD,aAAa,GAAG,MAAM;IACxB;IAEA;IACM,SAAU,YAAY,CAAC,MAAc,EAAA;QACzC,IAAI,aAAa,EAAE;IACjB,QAAA,aAAa,CAAC,MAAM,GAAG,MAAM;QAC/B;IACF;IAEA;aACgB,SAAS,GAAA;QACvB,OAAO,CAAA,aAAa,KAAA,IAAA,IAAb,aAAa,KAAA,MAAA,GAAA,MAAA,GAAb,aAAa,CAAE,MAAM,KAAI,EAAE;IACpC;IAEA;IACM,SAAU,QAAQ,CAAC,IAAY,EAAA;QACnC,IAAI,CAAC,aAAa,EAAE;IAClB,QAAA,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC;QAC/B;IACA,IAAA,MAAM,MAAM,GAAG,aAAa,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;IAC9D,IAAA,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAA,CAAA,EAAI,IAAI,EAAE;IAC1D,IAAA,OAAO,CAAA,EAAG,MAAM,CAAA,EAAG,SAAS,EAAE;IAChC;IAEA;;IAEG;IACH,SAAS,YAAY,CAAC,MAAuB,EAAE,GAAW,EAAE,KAAkC,EAAA;IAC5F,IAAA,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;YAAE;QAC3C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE;YAAE;QACtD,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAChC;IAEA;IAEA;;;;;IAKG;IACH,SAAS,YAAY,CAAC,OAAe,EAAA;IACnC,IAAA,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE;IACpC,IAAA,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC;QAC9B,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,aAAc,CAAC,MAAM,CAAC;;QAG3C,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,aAAc,CAAC,WAAW,CAAC;;QAE1D,YAAY,CAAC,MAAM,EAAE,WAAW,EAAE,aAAc,CAAC,MAAM,CAAC;QAExD,OAAO,QAAQ,CAAC,CAAA,4BAAA,EAA+B,MAAM,CAAC,QAAQ,EAAE,CAAA,CAAE,CAAC;IACrE;IAEA;;IAEG;IACH,SAAS,eAAe,CAAC,OAAe,EAAE,UAAmB,EAAA;IAC3D,IAAA,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE;IACpC,IAAA,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC;QAC9B,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,aAAc,CAAC,MAAM,CAAC;QAE3C,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,aAAc,CAAC,WAAW,CAAC;QAC1D,YAAY,CAAC,MAAM,EAAE,WAAW,EAAE,aAAc,CAAC,MAAM,CAAC;IACxD,IAAA,YAAY,CAAC,MAAM,EAAE,YAAY,EAAE,UAAU,KAAA,IAAA,IAAV,UAAU,KAAA,MAAA,GAAV,UAAU,GAAI,aAAc,CAAC,UAAU,CAAC;QAE3E,OAAO,QAAQ,CAAC,CAAA,2BAAA,EAA8B,MAAM,CAAC,QAAQ,EAAE,CAAA,CAAE,CAAC;IACpE;IAEA;;IAEG;IACH,SAAS,kBAAkB,CAAC,OAAe,EAAE,UAAmB,EAAA;IAC9D,IAAA,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE;IACpC,IAAA,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC;QAC9B,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,aAAc,CAAC,MAAM,CAAC;IAC3C,IAAA,MAAM,CAAC,GAAG,CAAC,iBAAiB,EAAE,SAAS,CAAC;QAExC,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,aAAc,CAAC,WAAW,CAAC;QAC1D,YAAY,CAAC,MAAM,EAAE,WAAW,EAAE,aAAc,CAAC,MAAM,CAAC;IACxD,IAAA,YAAY,CAAC,MAAM,EAAE,YAAY,EAAE,UAAU,KAAA,IAAA,IAAV,UAAU,KAAA,MAAA,GAAV,UAAU,GAAI,aAAc,CAAC,UAAU,CAAC;QAE3E,OAAO,QAAQ,CAAC,CAAA,+BAAA,EAAkC,MAAM,CAAC,QAAQ,EAAE,CAAA,CAAE,CAAC;IACxE;IAEA;;IAEG;IACH,SAAS,kBAAkB,CAAC,OAAe,EAAE,UAAmB,EAAA;IAC9D,IAAA,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE;IACpC,IAAA,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC;QAC9B,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,aAAc,CAAC,MAAM,CAAC;IAC3C,IAAA,MAAM,CAAC,GAAG,CAAC,iBAAiB,EAAE,SAAS,CAAC;QAExC,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,aAAc,CAAC,WAAW,CAAC;QAC1D,YAAY,CAAC,MAAM,EAAE,WAAW,EAAE,aAAc,CAAC,MAAM,CAAC;IACxD,IAAA,YAAY,CAAC,MAAM,EAAE,YAAY,EAAE,UAAU,KAAA,IAAA,IAAV,UAAU,KAAA,MAAA,GAAV,UAAU,GAAI,aAAc,CAAC,UAAU,CAAC;QAE3E,OAAO,QAAQ,CAAC,CAAA,8BAAA,EAAiC,MAAM,CAAC,QAAQ,EAAE,CAAA,CAAE,CAAC;IACvE;IAEA;IAEA;IACA,eAAe,SAAS,CACtB,GAAW,EACX,OAAA,GAAuB,EAAE,EACzB,OAAA,GAAkB,eAAe,EAAA;IAEjC,IAAA,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE;IACxC,IAAA,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,UAAU,CAAC,KAAK,EAAE,EAAE,OAAO,CAAC;IAE3D,IAAA,IAAI;YACF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,MAAA,CAAA,EAAA,EAC3B,OAAO,CAAA,EAAA,EACV,MAAM,EAAE,UAAU,CAAC,MAAM,EACzB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,SAAS,EAAA,CAAA,CACtB;IACF,QAAA,OAAO,QAAQ;QACjB;QAAE,OAAO,GAAY,EAAE;YACrB,IAAI,GAAG,YAAY,YAAY,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,EAAE;gBAC5D,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,SAAS,CAAC;YACnD;IACA,QAAA,IAAI,GAAG,YAAY,SAAS,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE;gBACvE,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;YAC7C;YACA,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,SAAS,CAAC;QACnD;gBAAU;YACR,YAAY,CAAC,KAAK,CAAC;QACrB;IACF;IAEA;IACM,MAAO,QAAS,SAAQ,KAAK,CAAA;QAEjC,WAAA,CAAY,OAAe,EAAE,IAAY,EAAA;YACvC,KAAK,CAAC,OAAO,CAAC;IACd,QAAA,IAAI,CAAC,IAAI,GAAG,UAAU;IACtB,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI;QAClB;IACD;IAED;IACA,SAAS,mBAAmB,CAAC,MAAc,EAAA;QACzC,QAAQ,MAAM;YACZ,KAAK,GAAG,EAAE,OAAO,CAAC,CAAC,YAAY,CAAC;YAChC,KAAK,GAAG,EAAE,OAAO,CAAC,CAAC,iBAAiB,CAAC;YACrC,KAAK,GAAG,EAAE,OAAO,CAAC,CAAC,iBAAiB,CAAC;YACrC,KAAK,GAAG,EAAE,OAAO,CAAC,CAAC,kBAAkB,CAAC;YACtC,KAAK,GAAG,EAAE,OAAO,CAAC,CAAC,cAAc,CAAC;IAClC,QAAA,KAAK,GAAG;YACR,KAAK,GAAG,EAAE,OAAO,CAAC,CAAC,mBAAmB,CAAC;YACvC,SAAS,OAAO,CAAA,EAAG,CAAC,CAAC,eAAe,CAAC,CAAA,CAAA,EAAI,MAAM,CAAA,CAAA,CAAG;;IAEtD;IAEA;IAEA;;IAEG;IACI,eAAe,WAAW,CAAC,OAAe,EAAA;IAC/C,IAAA,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC;QACjC,MAAM,CAAC,aAAa,CAAC,aAAc,CAAC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC;IAEhE,IAAA,IAAI;IACF,QAAA,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC;IACrC,QAAA,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;gBAChB,MAAM,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,CAAC,MAAM,CAAC;IACrD,YAAA,MAAM,CAAC,cAAc,CAAC,aAAc,CAAC,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC;gBACpF,MAAM,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAA,KAAA,EAAQ,QAAQ,CAAC,MAAM,CAAA,CAAE,CAAC;YACzD;IAEA,QAAA,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE;YAClC,MAAM,CAAC,cAAc,CAAC,aAAc,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC;IAC9D,QAAA,OAAO,IAAI;QACb;QAAE,OAAO,GAAG,EAAE;YACZ,IAAI,GAAG,YAAY,QAAQ;IAAE,YAAA,MAAM,GAAG;IACtC,QAAA,MAAM,CAAC,cAAc,CAAC,aAAc,CAAC,WAAW,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;YACzE,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,SAAS,CAAC;QACnD;IACF;IAEA;;;;IAIG;IACI,eAAe,cAAc,CAClC,OAAe,EACf,OAA+B,EAC/B,MAAkB,EAClB,OAAkC,EAClC,UAAmB,EACnB,MAAgB,EAAA;;QAEhB,MAAM,GAAG,GAAG;IACV,UAAE,kBAAkB,CAAC,OAAO,EAAE,UAAU;IACxC,UAAE,eAAe,CAAC,OAAO,EAAE,UAAU,CAAC;QACxC,IAAI,SAAS,GAAG,EAAE;QAElB,MAAM,CAAC,aAAa,CAAC,aAAc,CAAC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC;IAEhE,IAAA,IAAI;IACF,QAAA,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE,EAAE,EAAE,eAAe,GAAG,CAAC,CAAC;IAE9D,QAAA,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;gBAChB,MAAM,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,CAAC,MAAM,CAAC;IACrD,YAAA,MAAM,CAAC,cAAc,CAAC,aAAc,CAAC,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC;IACpF,YAAA,OAAO,CAAC,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAA,KAAA,EAAQ,QAAQ,CAAC,MAAM,CAAA,CAAE,CAAC,CAAC;gBAC1D;YACF;YAEA,MAAM,MAAM,GAAG,CAAA,EAAA,GAAA,QAAQ,CAAC,IAAI,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,SAAS,EAAE;YACzC,IAAI,CAAC,MAAM,EAAE;IACX,YAAA,OAAO,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,0BAA0B,CAAC,EAAE,oBAAoB,CAAC,CAAC;gBAC1E;YACF;IAEA,QAAA,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,IAAI,EAAwB,CAAC;YAChF,IAAI,MAAM,GAAG,EAAE;IAEf,QAAA,IAAI;gBACF,OAAO,IAAI,EAAE;oBACX,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE;IAC3C,gBAAA,IAAI,IAAI;wBAAE;IAEV,gBAAA,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;oBACjD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;IAChC,gBAAA,MAAM,GAAG,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE;IAE1B,gBAAA,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;IACxB,oBAAA,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE;wBAC3B,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;4BAAE;IAEzC,oBAAA,IAAI,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;4BAC/B,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;4BACxC,IAAI,IAAI,EAAE;gCAAE,SAAS,IAAI,IAAI;gCAAE,OAAO,CAAC,IAAI,CAAC;4BAAE;wBAChD;IAAO,yBAAA,IAAI,OAAO,KAAK,QAAQ,EAAE;4BAC/B;wBACF;6BAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;4BACvG,SAAS,IAAI,OAAO;4BACpB,OAAO,CAAC,OAAO,CAAC;wBAClB;oBACF;gBACF;IAEA,YAAA,IAAI,MAAM,CAAC,IAAI,EAAE,EAAE;IACjB,gBAAA,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,EAAE;IAC7B,gBAAA,IAAI,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;wBAC/B,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;wBACxC,IAAI,IAAI,EAAE;4BAAE,SAAS,IAAI,IAAI;4BAAE,OAAO,CAAC,IAAI,CAAC;wBAAE;oBAChD;IAAO,qBAAA,IAAI,OAAO,KAAK,QAAQ,EAAE;wBAC/B,SAAS,IAAI,OAAO;wBACpB,OAAO,CAAC,OAAO,CAAC;oBAClB;gBACF;YACF;YAAE,OAAO,OAAgB,EAAE;IACzB,YAAA,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;oBACxB,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,iBAAiB,CAAC,CAAC;gBACxC;qBAAO;IACL,gBAAA,MAAM,OAAO;gBACf;YACF;oBAAU;gBACR,MAAM,CAAC,WAAW,EAAE;YACtB;YAEA,MAAM,CAAC,mBAAmB,CAAC,aAAc,CAAC,WAAW,EAAE,SAAS,CAAC,MAAM,CAAC;IACxE,QAAA,MAAM,EAAE;QACV;QAAE,OAAO,GAAG,EAAE;IACZ,QAAA,IAAI,GAAG,YAAY,QAAQ,EAAE;gBAC3B,OAAO,CAAC,GAAG,CAAC;YACd;iBAAO;IACL,YAAA,MAAM,CAAC,cAAc,CAAC,aAAc,CAAC,WAAW,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;IACzE,YAAA,OAAO,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,SAAS,CAAC,CAAC;YACtD;QACF;IACF;IAEA;IAEA;;IAEG;IACI,eAAe,iBAAiB,GAAA;IACrC,IAAA,MAAM,GAAG,GAAG,QAAQ,CAAC,gBAAgB,CAAC;IACtC,IAAA,IAAI;IACF,QAAA,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC;YACrC,IAAI,CAAC,QAAQ,CAAC,EAAE;IAAE,YAAA,MAAM,IAAI,QAAQ,CAAC,mBAAmB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,QAAQ,CAAC,MAAM,CAAA,CAAE,CAAC;IACrG,QAAA,MAAM,IAAI,GAAgC,MAAM,QAAQ,CAAC,IAAI,EAAE;IAC/D,QAAA,IAAI,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBAC5C,MAAM,CAAC,IAAI,CAAC,CAAA,cAAA,EAAiB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAA,CAAE,CAAC;gBAChD,OAAO,IAAI,CAAC,IAAI;YAClB;IACA,QAAA,OAAO,EAAE;QACX;QAAE,OAAO,GAAG,EAAE;YACZ,IAAI,GAAG,YAAY,QAAQ;gBAAE,MAAM,CAAC,KAAK,CAAC,CAAA,SAAA,EAAY,GAAG,CAAC,OAAO,CAAA,CAAE,CAAC;;IAC/D,YAAA,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,CAAC;IACjC,QAAA,OAAO,EAAE;QACX;IACF;IAcA;;IAEG;IACI,eAAe,eAAe,CAAC,OAAe,EAAE,UAAmB,EAAA;QACxE,MAAM,GAAG,GAAG,kBAAkB,CAAC,OAAO,EAAE,UAAU,CAAC;IACnD,IAAA,IAAI;IACF,QAAA,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC;YACrC,IAAI,CAAC,QAAQ,CAAC,EAAE;IAAE,YAAA,MAAM,IAAI,QAAQ,CAAC,mBAAmB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,QAAQ,CAAC,MAAM,CAAA,CAAE,CAAC;IACrG,QAAA,MAAM,IAAI,GAAiC,MAAM,QAAQ,CAAC,IAAI,EAAE;IAChE,QAAA,IAAI,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBAC5C,MAAM,CAAC,IAAI,CAAC,CAAA,aAAA,EAAgB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAA,CAAE,CAAC;gBAC/C,OAAO,IAAI,CAAC,IAAI;YAClB;IACA,QAAA,OAAO,EAAE;QACX;QAAE,OAAO,GAAG,EAAE;IACZ,QAAA,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC;IAC7B,QAAA,OAAO,EAAE;QACX;IACF;IAiBA;;IAEG;IACI,eAAe,qBAAqB,CACzC,IAAA,GAAe,CAAC,EAChB,IAAA,GAAe,EAAE,EACjB,SAAkB,EAClB,MAAe,EAAA;IAMf,IAAA,IAAI,IAAI,GAAG,CAAA,wBAAA,EAA2B,IAAI,CAAA,MAAA,EAAS,IAAI,EAAE;IACzD,IAAA,IAAI,SAAS;IAAE,QAAA,IAAI,IAAI,CAAA,WAAA,EAAc,kBAAkB,CAAC,SAAS,CAAC,EAAE;IACpE,IAAA,IAAI,MAAM;IAAE,QAAA,IAAI,IAAI,CAAA,QAAA,EAAW,kBAAkB,CAAC,MAAM,CAAC,EAAE;IAC3D,IAAA,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC;IAE1B,IAAA,IAAI;IACF,QAAA,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC;YACrC,IAAI,CAAC,QAAQ,CAAC,EAAE;IAAE,YAAA,MAAM,IAAI,QAAQ,CAAC,mBAAmB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,QAAQ,CAAC,MAAM,CAAA,CAAE,CAAC;IACrG,QAAA,MAAM,IAAI,GAAoC,MAAM,QAAQ,CAAC,IAAI,EAAE;YACnE,OAAO;gBACL,IAAI,EAAE,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,GAAG,EAAE;IAC/D,YAAA,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,CAAC;IACtB,YAAA,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,CAAC;aACvB;QACH;QAAE,OAAO,GAAG,EAAE;IACZ,QAAA,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC;IAC7B,QAAA,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE;QACzC;IACF;IAEA;;IAEG;IACI,eAAe,yBAAyB,CAAC,cAAsB,EAAA;QAIpE,MAAM,GAAG,GAAG,QAAQ,CAAC,iBAAiB,cAAc,CAAA,SAAA,CAAW,CAAC;IAChE,IAAA,IAAI;IACF,QAAA,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC;YACrC,IAAI,CAAC,QAAQ,CAAC,EAAE;IAAE,YAAA,MAAM,IAAI,QAAQ,CAAC,mBAAmB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,QAAQ,CAAC,MAAM,CAAA,CAAE,CAAC;IACrG,QAAA,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE;YAClC,OAAO;gBACL,QAAQ,EAAE,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,GAAG,EAAE;IACnE,YAAA,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,CAAC;aACvB;QACH;QAAE,OAAO,GAAG,EAAE;IACZ,QAAA,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC;YAC7B,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE;QACnC;IACF;IAEA;;IAEG;IACI,eAAe,kBAAkB,CAAC,cAAsB,EAAA;QAC7D,MAAM,GAAG,GAAG,QAAQ,CAAC,iBAAiB,cAAc,CAAA,CAAE,CAAC;IACvD,IAAA,IAAI;IACF,QAAA,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;YAC3D,IAAI,CAAC,QAAQ,CAAC,EAAE;IAAE,YAAA,MAAM,IAAI,QAAQ,CAAC,mBAAmB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,QAAQ,CAAC,MAAM,CAAA,CAAE,CAAC;IACrG,QAAA,MAAM,IAAI,GAAgB,MAAM,QAAQ,CAAC,IAAI,EAAE;YAC/C,MAAM,CAAC,IAAI,CAAC,CAAA,QAAA,EAAW,cAAc,CAAA,SAAA,EAAY,IAAI,CAAC,OAAO,CAAA,CAAE,CAAC;IAChE,QAAA,OAAO,IAAI,CAAC,OAAO,IAAI,KAAK;QAC9B;QAAE,OAAO,GAAG,EAAE;IACZ,QAAA,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC;IAC3B,QAAA,OAAO,KAAK;QACd;IACF;IAEA;;IAEG;IACG,SAAU,wBAAwB,CAAC,cAAsB,EAAA;IAC7D,IAAA,OAAO,QAAQ,CAAC,CAAA,cAAA,EAAiB,cAAc,CAAA,OAAA,CAAS,CAAC;IAC3D;IAEA;IAEA;;;;;;;;IAQG;IACI,eAAe,UAAU,GAAA;IAC9B,IAAA,IAAI,CAAC,aAAa;IAAE,QAAA,OAAO,EAAE;;IAG7B,IAAA,MAAM,YAAY,GAAG,gBAAgB,CAAC,aAAa,CAAC,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC;QACtF,IAAI,YAAY,EAAE;IAChB,QAAA,aAAa,CAAC,MAAM,GAAG,YAAY;IACnC,QAAA,MAAM,CAAC,IAAI,CAAC,gBAAgB,YAAY,CAAA,CAAE,CAAC;IAC3C,QAAA,OAAO,YAAY;QACrB;;IAGA,IAAA,IAAI;IACF,QAAA,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC,CAAC,EAAE,CAAC,EAAE,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,WAAW,CAAC;YACjG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;;gBAE1B,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;gBACjC,MAAM,MAAM,GAAG,UAAU,CAAC,cAAc,IAAI,UAAU,CAAC,MAAM,IAAI,EAAE;gBACnE,IAAI,MAAM,EAAE;IACV,gBAAA,aAAa,CAAC,MAAM,GAAG,MAAM;oBAC7B,gBAAgB,CAAC,aAAa,CAAC,WAAW,EAAE,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC;oBACzE,MAAM,CAAC,IAAI,CAAC,CAAA,eAAA,EAAkB,MAAM,CAAA,cAAA,EAAiB,UAAU,CAAC,YAAY,CAAA,CAAE,CAAC;IAC/E,gBAAA,OAAO,MAAM;gBACf;YACF;QACF;QAAE,OAAO,GAAG,EAAE;IACZ,QAAA,MAAM,CAAC,IAAI,CAAC,wBAAwB,EAAE,GAAG,CAAC;QAC5C;;IAGA,IAAA,MAAM,SAAS,GAAG,cAAc,EAAE;IAClC,IAAA,aAAa,CAAC,MAAM,GAAG,SAAS;QAChC,gBAAgB,CAAC,aAAa,CAAC,WAAW,EAAE,aAAa,CAAC,MAAM,EAAE,SAAS,CAAC;IAC5E,IAAA,MAAM,CAAC,IAAI,CAAC,cAAc,SAAS,CAAA,CAAE,CAAC;IACtC,IAAA,OAAO,SAAS;IAClB;IAEA;IACA,SAAS,cAAc,GAAA;QACrB,MAAM,MAAM,GAAG,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC;cACnD,MAAM,CAAC,UAAU,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;IACpC,UAAE,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC;QAC/C,OAAO,CAAA,IAAA,EAAO,IAAI,CAAC,GAAG,EAAE,CAAA,CAAA,EAAI,MAAM,EAAE;IACtC;IAEA;IACA,SAAS,gBAAgB,CAAC,WAAmB,EAAE,MAAe,EAAA;IAC5D,IAAA,OAAO,CAAA,WAAA,EAAc,WAAW,CAAA,EAAG,MAAM,GAAG,GAAG,GAAG,MAAM,GAAG,EAAE,EAAE;IACjE;IAEA;IACA,SAAS,gBAAgB,CAAC,WAAmB,EAAE,MAAe,EAAA;IAC5D,IAAA,IAAI;IACF,QAAA,OAAO,YAAY,CAAC,OAAO,CAAC,gBAAgB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE;QAC1E;IAAE,IAAA,OAAA,EAAA,EAAM;IACN,QAAA,OAAO,EAAE;QACX;IACF;IAEA;aACgB,gBAAgB,CAAC,WAAmB,EAAE,MAAe,EAAE,MAAe,EAAA;IACpF,IAAA,IAAI;YACF,IAAI,MAAM,EAAE;IACV,YAAA,YAAY,CAAC,OAAO,CAAC,gBAAgB,CAAC,WAAW,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC;YACrE;iBAAO;gBACL,YAAY,CAAC,UAAU,CAAC,gBAAgB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YAChE;QACF;IAAE,IAAA,OAAA,EAAA,EAAM;;QAER;IACF;;IC3gBA,IAAI,YAAY,GAA4B,IAAI;IAEhD;IACA,SAAS,OAAO,CAAC,MAAsB,EAAA;;QAErC,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,YAAY,EAAE,GAAG,CAAC;QACpD,OAAO;AACY,mBAAA,EAAA,MAAM,CAAC,YAAY,CAAA;2BACb,MAAM,CAAA;;;;;AAKP,wBAAA,EAAA,MAAM,CAAC,KAAK,CAAA;GACnC;IACH;IAEA;IACA,SAAS,WAAW,CAAC,GAAW,EAAE,MAAc,EAAA;;QAE9C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,qDAAqD,CAAC;QAC9E,IAAI,CAAC,KAAK,EAAE;IACV,QAAA,OAAO,GAAG;QACZ;QACA,MAAM,KAAK,GAAG,CAAC,CAAS,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IAC1D,IAAA,MAAM,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC;IAChD,IAAA,MAAM,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC;IAChD,IAAA,MAAM,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC;IAChD,IAAA,OAAO,IAAI,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA,EAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA,EAAG,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;IAClH;IAEA;IACA,SAAS,SAAS,CAAC,MAAsB,EAAA;QACvC,OAAO;;;IAGL,OAAO,CAAC,MAAM,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2nBlB;IACD;IAEA;;IAEG;IACG,SAAU,YAAY,CAAC,MAAsB,EAAA;;IAEjD,IAAA,IAAI,QAAQ,CAAC,aAAa,CAAC,qBAAqB,CAAC,EAAE;YACjD;QACF;IAEA,IAAA,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC;IAC9C,IAAA,YAAY,CAAC,YAAY,CAAC,cAAc,EAAE,EAAE,CAAC;IAC7C,IAAA,YAAY,CAAC,WAAW,GAAG,SAAS,CAAC,MAAM,CAAC;IAC5C,IAAA,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC;IACzC;IAmBA;;IAEG;aACa,YAAY,GAAA;IAC1B,IAAA,IAAI,YAAY,IAAI,YAAY,CAAC,UAAU,EAAE;IAC3C,QAAA,YAAY,CAAC,UAAU,CAAC,WAAW,CAAC,YAAY,CAAC;YACjD,YAAY,GAAG,IAAI;QACrB;;IAEA,IAAA,QAAQ,CAAC,gBAAgB,CAAC,qBAAqB,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,MAAM,EAAE,CAAC;IAC/E;;ICntBA;;IAEG;IAEH;IASA;aACgB,IAAI,GAAA;QAClB,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,UAAU,EAAE;IACtD,QAAA,OAAO,MAAM,CAAC,UAAU,EAAE;QAC5B;;QAEA,OAAO,sCAAsC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,KAAI;IACnE,QAAA,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC;IAClC,QAAA,MAAM,CAAC,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,GAAG;IACzC,QAAA,OAAO,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;IACvB,IAAA,CAAC,CAAC;IACJ;IAEA;IACM,SAAU,UAAU,CAAC,IAAY,EAAA;IACrC,IAAA,MAAM,GAAG,GAA2B;IAClC,QAAA,GAAG,EAAE,OAAO;IACZ,QAAA,GAAG,EAAE,MAAM;IACX,QAAA,GAAG,EAAE,MAAM;IACX,QAAA,GAAG,EAAE,QAAQ;IACb,QAAA,GAAG,EAAE,QAAQ;SACd;IACD,IAAA,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;IACxD;IAEA;IACM,SAAU,QAAQ,CACtB,EAAK,EACL,KAAa,EAAA;QAEb,IAAI,KAAK,GAAyC,IAAI;QACtD,OAAO,UAAyB,GAAG,IAAmB,EAAA;IACpD,QAAA,IAAI,KAAK,KAAK,IAAI,EAAE;gBAClB,YAAY,CAAC,KAAK,CAAC;YACrB;IACA,QAAA,KAAK,GAAG,UAAU,CAAC,MAAK;IACtB,YAAA,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC;gBACpB,KAAK,GAAG,IAAI;YACd,CAAC,EAAE,KAAK,CAAC;IACX,IAAA,CAAC;IACH;IAUA;aACgB,GAAG,GAAA;IACjB,IAAA,OAAO,IAAI,CAAC,GAAG,EAAE;IACnB;;ICzDA;IAEA;IACM,SAAU,cAAc,CAAC,MAAsB,EAAE,OAAmB,EAAA;QACxE,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC9C,IAAA,QAAQ,CAAC,EAAE,GAAG,cAAc;IAC5B,IAAA,QAAQ,CAAC,SAAS,GAAG,8BAA8B,MAAM,CAAC,QAAQ,KAAK,aAAa,GAAG,MAAM,GAAG,OAAO,EAAE;QACzG,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC;QAC5C,QAAQ,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC;IACjD,IAAA,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE,QAAQ,CAAC;IACvC,IAAA,QAAQ,CAAC,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC;;IAGtC,IAAA,QAAQ,CAAC,SAAS,GAAG,MAAM,CAAC,YAAY;;QAGxC,MAAM,cAAc,GAAG,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC;IAC7C,IAAA,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,cAAc,CAAC;;QAGlD,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,CAAC,KAAI;IACzC,QAAA,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,EAAE;gBACtC,CAAC,CAAC,cAAc,EAAE;IAClB,YAAA,cAAc,EAAE;YAClB;IACF,IAAA,CAAC,CAAC;IAEF,IAAA,OAAO,QAAQ;IACjB;IAEA;IAEA;IACM,SAAU,gBAAgB,CAAC,MAAsB,EAAA;;QAYrD,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC9C,IAAA,QAAQ,CAAC,EAAE,GAAG,YAAY;IAC1B,IAAA,QAAQ,CAAC,SAAS,GAAG,mCAAmC,MAAM,CAAC,QAAQ,KAAK,aAAa,GAAG,MAAM,GAAG,OAAO,qBAAqB;;QAGjI,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC5C,IAAA,MAAM,CAAC,SAAS,GAAG,YAAY;QAE/B,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC;IAC9C,IAAA,OAAO,CAAC,SAAS,GAAG,mBAAmB;IACvC,IAAA,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC,KAAK;QAElC,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC7C,IAAA,OAAO,CAAC,SAAS,GAAG,qBAAqB;;QAGzC,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;IACnD,IAAA,UAAU,CAAC,SAAS,GAAG,iBAAiB;QACxC,UAAU,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,eAAe,CAAC,CAAC;IACpD,IAAA,UAAU,CAAC,SAAS,GAAG,CAAA,gQAAA,CAAkQ;;QAGzR,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;IACpD,IAAA,WAAW,CAAC,SAAS,GAAG,2CAA2C;QACnE,WAAW,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC;IAChD,IAAA,WAAW,CAAC,SAAS,GAAG,CAAA,iOAAA,CAAmO;IAC3P,IAAA,WAAW,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAK;IACzC,QAAA,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,oBAAoB,CAAC;IAC9C,IAAA,CAAC,CAAC;;QAGF,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;IACjD,IAAA,QAAQ,CAAC,SAAS,GAAG,wCAAwC;QAC7D,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;IAC1C,IAAA,QAAQ,CAAC,SAAS,GAAG,CAAA,qQAAA,CAAuQ;IAC5R,IAAA,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAK;IACtC,QAAA,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,oBAAoB,CAAC;IAC9C,IAAA,CAAC,CAAC;IAEF,IAAA,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC;IAC/B,IAAA,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC;IAChC,IAAA,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC;IAC7B,IAAA,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC;IAC3B,IAAA,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC;;QAG3B,MAAM,iBAAiB,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IACvD,IAAA,iBAAiB,CAAC,EAAE,GAAG,cAAc;IACrC,IAAA,iBAAiB,CAAC,SAAS,GAAG,cAAc;;QAG5C,MAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAClD,IAAA,YAAY,CAAC,SAAS,GAAG,6CAA6C;QACtE,YAAY,CAAC,SAAS,GAAG;;+CAEoB,CAAC,CAAC,eAAe,CAAC,CAAA;;;UAGvD,CAAC,CAAC,OAAO,CAAC;;;;GAIjB;IACD,IAAA,iBAAiB,CAAC,WAAW,CAAC,YAAY,CAAC;;QAG3C,MAAM,OAAO,GAAG,YAAY,CAAC,aAAa,CAAC,mBAAmB,CAAC;QAC/D,IAAI,OAAO,EAAE;IACX,QAAA,OAAO,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAK;IACrC,YAAA,YAAY,CAAC,SAAS,CAAC,GAAG,CAAC,2BAA2B,CAAC;IACzD,QAAA,CAAC,CAAC;QACJ;;QAGA,UAAU,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAC,KAAI;YACzC,CAAC,CAAC,eAAe,EAAE;YACnB,MAAM,QAAQ,GAAG,YAAY,CAAC,SAAS,CAAC,QAAQ,CAAC,2BAA2B,CAAC;IAC7E,QAAA,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,2BAA2B,CAAC;YAC1D,IAAI,QAAQ,EAAE;;gBAEZ,QAAQ,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,iBAAiB,CAAC,CAAC;YAC5D;IACF,IAAA,CAAC,CAAC;;QAGF,IAAI,cAAc,GAA6B,IAAI;IACnD,IAAA,IAAI,MAAM,CAAC,kBAAkB,EAAE;YAC7B,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IACjD,QAAA,WAAW,CAAC,SAAS,GAAG,kBAAkB;YAE1C,MAAM,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC;IACpD,QAAA,aAAa,CAAC,SAAS,GAAG,yBAAyB;IACnD,QAAA,aAAa,CAAC,WAAW,GAAG,IAAI;IAEhC,QAAA,cAAc,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;IACjD,QAAA,cAAc,CAAC,EAAE,GAAG,qBAAqB;IACzC,QAAA,cAAc,CAAC,SAAS,GAAG,qBAAqB;YAChD,cAAc,CAAC,SAAS,GAAG,CAAA,iBAAA,EAAoB,CAAC,CAAC,cAAc,CAAC,CAAA,SAAA,CAAW;;IAG3E,QAAA,cAAc,CAAC,gBAAgB,CAAC,QAAQ,EAAE,MAAK;IAC7C,YAAA,MAAM,UAAU,GAAG,cAAe,CAAC,KAAK;IACxC,YAAA,QAAQ,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,oBAAoB,EAAE;IAC3D,gBAAA,MAAM,EAAE,EAAE,UAAU,EAAE,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,SAAS;IAClE,aAAA,CAAC,CAAC;IACL,QAAA,CAAC,CAAC;IAEF,QAAA,WAAW,CAAC,WAAW,CAAC,aAAa,CAAC;IACtC,QAAA,WAAW,CAAC,WAAW,CAAC,cAAc,CAAC;;IAGvC,QAAA,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC;IAC5B,QAAA,QAAQ,CAAC,WAAW,CAAC,iBAAiB,CAAC;IACvC,QAAA,QAAQ,CAAC,WAAW,CAAC,WAAW,CAAC;QACnC;aAAO;IACL,QAAA,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC;IAC5B,QAAA,QAAQ,CAAC,WAAW,CAAC,iBAAiB,CAAC;QACzC;;QAGA,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC/C,IAAA,SAAS,CAAC,SAAS,GAAG,gBAAgB;QAEtC,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,UAAU,CAAC;IAClD,IAAA,OAAO,CAAC,EAAE,GAAG,WAAW;IACxB,IAAA,OAAO,CAAC,SAAS,GAAG,WAAW;QAC/B,OAAO,CAAC,YAAY,CAAC,aAAa,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC;IACrD,IAAA,OAAO,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC;IACjC,IAAA,OAAO,CAAC,YAAY,CAAC,WAAW,EAAE,EAAE,CAAC;QAErC,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;IAChD,IAAA,OAAO,CAAC,EAAE,GAAG,cAAc;IAC3B,IAAA,OAAO,CAAC,SAAS,GAAG,cAAc;QAClC,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;IACxC,IAAA,OAAO,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC;IACxC,IAAA,OAAO,CAAC,SAAS,GAAG,CAAA,8QAAA,CAAgR;IAEpS,IAAA,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC;IAC9B,IAAA,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC;IAC9B,IAAA,QAAQ,CAAC,WAAW,CAAC,SAAS,CAAC;;QAG/B,IAAI,QAAQ,GAAuB,IAAI;IACvC,IAAA,IAAI,MAAM,CAAC,SAAS,EAAE;IACpB,QAAA,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;IAC3C,QAAA,QAAQ,CAAC,SAAS,GAAG,eAAe;IACpC,QAAA,QAAQ,CAAC,WAAW,GAAG,CAAC,CAAC,OAAO,CAAC;YACjC,QAAQ,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC;;IAEhC,QAAA,QAAQ,CAAC,YAAY,CAAC,QAAQ,EAAE,SAAS,CAAC;QAC5C;;QAGA,IAAI,SAAS,GAAuB,IAAI;IAExC,IAAA,SAAS,WAAW,GAAA;YAClB,IAAI,SAAS,EAAE;IACb,YAAA,SAAS,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM;IAChC,YAAA,OAAO,SAAS;YAClB;YACA,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IACxC,QAAA,EAAE,CAAC,SAAS,GAAG,aAAa;YAC5B,EAAE,CAAC,SAAS,GAAG;;;;KAId;IACD,QAAA,iBAAiB,CAAC,WAAW,CAAC,EAAE,CAAC;YACjC,SAAS,GAAG,EAAE;IACd,QAAA,OAAO,EAAE;QACX;IAEA,IAAA,SAAS,WAAW,GAAA;IAClB,QAAA,IAAI,SAAS,IAAI,SAAS,CAAC,UAAU,EAAE;IACrC,YAAA,SAAS,CAAC,UAAU,CAAC,WAAW,CAAC,SAAS,CAAC;gBAC3C,SAAS,GAAG,IAAI;YAClB;QACF;QAEA,OAAO;IACL,QAAA,MAAM,EAAE,QAAQ;YAChB,iBAAiB;YACjB,OAAO;YACP,OAAO;YACP,QAAQ;YACR,cAAc;YACd,YAAY;YACZ,WAAW;YACX,WAAW;SACZ;IACH;IAEA;IAEA;IACM,SAAU,UAAU,CAAC,QAAqB,EAAE,QAAqB,EAAA;QACrE,IAAI,QAAQ,GAAG,KAAK;QACpB,IAAI,MAAM,GAAG,CAAC;QACd,IAAI,MAAM,GAAG,CAAC;QACd,IAAI,OAAO,GAAG,CAAC;QACf,IAAI,OAAO,GAAG,CAAC;IAEf,IAAA,MAAM,WAAW,GAAG,CAAC,CAAa,KAAI;YACpC,QAAQ,GAAG,IAAI;IACf,QAAA,MAAM,GAAG,CAAC,CAAC,OAAO;IAClB,QAAA,MAAM,GAAG,CAAC,CAAC,OAAO;IAClB,QAAA,MAAM,IAAI,GAAG,QAAQ,CAAC,qBAAqB,EAAE;IAC7C,QAAA,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC,IAAI;IAC5B,QAAA,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC,GAAG;IAC3B,QAAA,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,WAAW,CAAC;IACnD,QAAA,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC;IACjD,IAAA,CAAC;IAED,IAAA,MAAM,WAAW,GAAG,CAAC,CAAa,KAAI;IACpC,QAAA,IAAI,CAAC,QAAQ;gBAAE;IACf,QAAA,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,OAAO;IAC7B,QAAA,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,OAAO;;YAE7B,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,GAAG,QAAQ,CAAC,WAAW;YACrD,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAC,YAAY;IACvD,QAAA,QAAQ,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM;IAC7B,QAAA,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM;YAC9B,QAAQ,CAAC,KAAK,CAAC,IAAI,GAAG,CAAA,EAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA,EAAA,CAAI;YAC3D,QAAQ,CAAC,KAAK,CAAC,GAAG,GAAG,CAAA,EAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA,EAAA,CAAI;IAC5D,IAAA,CAAC;QAED,MAAM,SAAS,GAAG,MAAK;YACrB,QAAQ,GAAG,KAAK;IAChB,QAAA,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,WAAW,CAAC;IACtD,QAAA,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC;IACpD,IAAA,CAAC;IAED,IAAA,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,WAAW,CAAC;;IAGnD,IAAA,OAAO,MAAK;IACV,QAAA,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,WAAW,CAAC;IACtD,QAAA,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,WAAW,CAAC;IACtD,QAAA,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC;IACpD,IAAA,CAAC;IACH;IAEA;IAEA;aACgB,gBAAgB,CAAC,SAAsB,EAAE,IAAY,EAAE,SAAiB,EAAA;QACtF,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC7C,IAAA,OAAO,CAAC,SAAS,GAAG,uBAAuB;QAE3C,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC5C,IAAA,MAAM,CAAC,SAAS,GAAG,iBAAiB;IACpC,IAAA,MAAM,CAAC,WAAW,GAAG,IAAI;QAEzB,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC1C,IAAA,IAAI,CAAC,SAAS,GAAG,eAAe;IAChC,IAAA,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,SAAS,CAAC;IAExC,IAAA,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC;IAC3B,IAAA,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC;IACzB,IAAA,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC;IAE9B,IAAA,OAAO,OAAO;IAChB;IAEA;IACM,SAAU,cAAc,CAAC,SAAsB,EAAE,IAAY,EAAE,SAAiB,EAAE,QAAmC,EAAA;QACzH,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC7C,IAAA,OAAO,CAAC,SAAS,GAAG,qBAAqB;QAEzC,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC5C,IAAA,MAAM,CAAC,SAAS,GAAG,iBAAiB;;QAEpC,IAAI,QAAQ,EAAE;IACZ,QAAA,MAAM,CAAC,SAAS,GAAG,QAAQ,CAAC,IAAI,CAAC;QACnC;aAAO;IACL,QAAA,MAAM,CAAC,WAAW,GAAG,IAAI;QAC3B;QAEA,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC1C,IAAA,IAAI,CAAC,SAAS,GAAG,eAAe;IAChC,IAAA,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,SAAS,CAAC;IAExC,IAAA,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC;IAC3B,IAAA,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC;IACzB,IAAA,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC;IAE9B,IAAA,OAAO,OAAO;IAChB;IAEA;IACM,SAAU,mBAAmB,CAAC,SAAsB,EAAE,SAAiB,EAAA;QAC3E,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC7C,IAAA,OAAO,CAAC,SAAS,GAAG,qBAAqB;QAEzC,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC5C,IAAA,MAAM,CAAC,SAAS,GAAG,iBAAiB;IACpC,IAAA,MAAM,CAAC,SAAS,GAAG,EAAE;QAErB,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC1C,IAAA,IAAI,CAAC,SAAS,GAAG,eAAe;IAChC,IAAA,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,SAAS,CAAC;IAExC,IAAA,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC;IAC3B,IAAA,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC;IACzB,IAAA,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC;IAE9B,IAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE;IAC5B;IAEA;IAEA;IACM,SAAU,aAAa,CAAC,OAAoB,EAAE,OAAoB,EAAA;;QAEtE,MAAM,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,cAAc,CAAC;IACtD,IAAA,IAAI,QAAQ;YAAE,QAAQ,CAAC,MAAM,EAAE;IAE/B,IAAA,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE;QAEtC,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC/C,IAAA,SAAS,CAAC,SAAS,GAAG,oCAAoC;;QAG1D,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC5C,IAAA,MAAM,CAAC,SAAS,GAAG,qBAAqB;QAExC,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC;IAChD,IAAA,SAAS,CAAC,SAAS,GAAG,oBAAoB;IAC1C,IAAA,SAAS,CAAC,WAAW,GAAG,CAAA,GAAA,EAAM,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE;QAExE,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC;IAC5C,IAAA,KAAK,CAAC,SAAS,GAAG,oBAAoB;IACtC,IAAA,KAAK,CAAC,WAAW,GAAG,GAAG;IAEvB,IAAA,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC;IAC7B,IAAA,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC;;IAGzB,IAAA,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAK;IACpC,QAAA,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,wBAAwB,CAAC;IACtD,IAAA,CAAC,CAAC;;QAGF,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC1C,IAAA,IAAI,CAAC,SAAS,GAAG,mBAAmB;IAEpC,IAAA,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE;YACzB,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC1C,QAAA,IAAI,CAAC,SAAS,GAAG,iBAAiB;YAElC,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC1C,QAAA,IAAI,CAAC,SAAS,GAAG,uBAAuB;IACxC,QAAA,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,UAAU,IAAI,MAAM;IAExD,QAAA,IAAI,GAAG,CAAC,OAAO,EAAE;gBACf,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC7C,YAAA,OAAO,CAAC,SAAS,GAAG,0BAA0B;IAC9C,YAAA,OAAO,CAAC,WAAW,GAAG,GAAG,CAAC,OAAO;IACjC,YAAA,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;YAC3B;YAEA,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC1C,QAAA,IAAI,CAAC,SAAS,GAAG,uBAAuB;YACxC,MAAM,SAAS,GAAa,EAAE;YAC9B,IAAI,GAAG,CAAC,UAAU;IAAE,YAAA,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC;IAClD,QAAA,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS;gBAAE,SAAS,CAAC,IAAI,CAAC,CAAA,IAAA,EAAO,GAAG,CAAC,UAAU,CAAA,CAAE,CAAC;IACzE,QAAA,IAAI,GAAG,CAAC,KAAK,KAAK,SAAS;IAAE,YAAA,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA,CAAA,CAAG,CAAC;YACnF,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;IAExC,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;IACtB,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;IACtB,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QACxB;IAEA,IAAA,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC;IAC7B,IAAA,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC;;QAG3B,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC;QACtD,IAAI,MAAM,EAAE;IACV,QAAA,OAAO,CAAC,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC;QACzC;aAAO;IACL,QAAA,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC;QAChC;IACF;IAaA;IACM,SAAU,iBAAiB,CAC/B,MAAmB,EACnB,KAAwB,EACxB,QAA8B,EAC9B,QAA8B,EAC9B,SAAkB,EAAA;IAElB,IAAA,MAAM,CAAC,SAAS,GAAG,EAAE;IAErB,IAAA,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YACtB,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC3C,QAAA,KAAK,CAAC,SAAS,GAAG,0BAA0B;YAC5C,KAAK,CAAC,SAAS,GAAG;;AAET,WAAA,EAAa,CAAC,CAAC,eAAe,CAAC,CAAA;KACvC;IACD,QAAA,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC;YACzB;QACF;IAEA,IAAA,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;YACxB,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IACxC,QAAA,EAAE,CAAC,SAAS,GAAG,kBAAkB;YAEjC,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC1C,QAAA,IAAI,CAAC,SAAS,GAAG,wBAAwB;YAEzC,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC1C,QAAA,IAAI,CAAC,SAAS,GAAG,sBAAsB;YACvC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,EAAE;YAEzC,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC5C,QAAA,MAAM,CAAC,SAAS,GAAG,wBAAwB;YAC3C,MAAM,SAAS,GAAa,EAAE;IAC9B,QAAA,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS;gBAAE,SAAS,CAAC,IAAI,CAAC,CAAA,EAAG,IAAI,CAAC,YAAY,CAAA,IAAA,CAAM,CAAC;YAC/E,IAAI,IAAI,CAAC,eAAe;IAAE,YAAA,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC;iBACzD,IAAI,IAAI,CAAC,SAAS;IAAE,YAAA,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;YACvD,MAAM,CAAC,WAAW,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;IAE1C,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;IACtB,QAAA,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;YAExB,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC/C,QAAA,SAAS,CAAC,SAAS,GAAG,2BAA2B;;YAGjD,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;IAClD,QAAA,SAAS,CAAC,SAAS,GAAG,+CAA+C;YACrE,SAAS,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,gBAAgB,CAAC,CAAC;IACpD,QAAA,SAAS,CAAC,SAAS,GAAG,CAAA,2TAAA,CAA6T;YACnV,SAAS,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAC,KAAI;gBACxC,CAAC,CAAC,eAAe,EAAE;IACnB,YAAA,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;IACnB,QAAA,CAAC,CAAC;;YAGF,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;IAClD,QAAA,SAAS,CAAC,SAAS,GAAG,+CAA+C;YACrE,SAAS,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,gBAAgB,CAAC,CAAC;IACpD,QAAA,SAAS,CAAC,SAAS,GAAG,CAAA,sTAAA,CAAwT;YAC9U,SAAS,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAC,KAAI;gBACxC,CAAC,CAAC,eAAe,EAAE;IACnB,YAAA,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;IACnB,QAAA,CAAC,CAAC;IAEF,QAAA,SAAS,CAAC,WAAW,CAAC,SAAS,CAAC;IAChC,QAAA,SAAS,CAAC,WAAW,CAAC,SAAS,CAAC;IAEhC,QAAA,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC;IACpB,QAAA,EAAE,CAAC,WAAW,CAAC,SAAS,CAAC;IACzB,QAAA,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;QACxB;IACF;IAEA;IACM,SAAU,cAAc,CAAC,SAAsB,EAAA;IACnD,IAAA,SAAS,CAAC,SAAS,GAAG,SAAS,CAAC,YAAY;IAC9C;IAEA;IACA,SAAS,UAAU,CAAC,SAAiB,EAAA;IACnC,IAAA,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC;IAC7B,IAAA,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;IAChD,IAAA,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;IAClD,IAAA,OAAO,CAAA,EAAG,EAAE,CAAA,CAAA,EAAI,EAAE,EAAE;IACtB;;ICnhBA,MAAM,cAAc,GAAG,cAAc;IACrC,MAAM,YAAY,GAAG,GAAG;IACxB,MAAM,UAAU,GAAG,EAAE;IAErB;IACA,SAAS,UAAU,CAAC,WAAmB,EAAA;IACrC,IAAA,OAAO,CAAA,EAAG,cAAc,CAAA,EAAG,WAAW,EAAE;IAC1C;IAEA;;IAEG;IACG,SAAU,YAAY,CAAC,WAAmB,EAAE,QAAuB,EAAA;IACvE,IAAA,IAAI;;YAEF,IAAI,OAAO,GAAG,QAAQ;IACtB,QAAA,IAAI,OAAO,CAAC,MAAM,GAAG,YAAY,EAAE;IACjC,YAAA,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC;gBACnC,MAAM,CAAC,IAAI,CAAC,CAAA,eAAA,EAAkB,UAAU,CAAA,MAAA,EAAS,OAAO,CAAC,MAAM,CAAA,EAAA,CAAI,CAAC;YACtE;IAEA,QAAA,MAAM,IAAI,GAAc;IACtB,YAAA,QAAQ,EAAE,OAAO;IACjB,YAAA,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;aACtB;IACD,QAAA,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACrE;QAAE,OAAO,CAAC,EAAE;YACV,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,IAAI,KAAK,oBAAoB,EAAE;IACzD,YAAA,MAAM,CAAC,KAAK,CAAC,sCAAsC,CAAC;YACtD;iBAAO;IACL,YAAA,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;YAC7B;QACF;IACF;IAEA;;IAEG;IACG,SAAU,YAAY,CAAC,WAAmB,EAAA;IAC9C,IAAA,IAAI;YACF,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YACzD,IAAI,CAAC,GAAG,EAAE;IACR,YAAA,OAAO,EAAE;YACX;YACA,MAAM,IAAI,GAAc,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;IACvC,QAAA,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;IAC1C,YAAA,OAAO,EAAE;YACX;IACA,QAAA,MAAM,CAAC,IAAI,CAAC,CAAA,mBAAA,EAAsB,WAAW,CAAA,OAAA,EAAU,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAA,CAAE,CAAC;YAC9E,OAAO,IAAI,CAAC,QAAQ;QACtB;QAAE,OAAO,CAAC,EAAE;IACV,QAAA,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;IAC1B,QAAA,OAAO,EAAE;QACX;IACF;IAEA;;IAEG;IACG,SAAU,aAAa,CAAC,WAAmB,EAAA;IAC/C,IAAA,IAAI;YACF,YAAY,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QAClD;QAAE,OAAO,CAAC,EAAE;IACV,QAAA,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;QAC5B;IACF;;ICvEA;;;;;IAKG;IAGH;IACA,MAAM,iBAAiB,GAAG,gBAAgB;IAE1C;IACA,MAAM,kBAAkB,GAAG,iBAAiB;IAE5C;;;;IAIG;IACG,SAAU,cAAc,CAAC,IAAY,EAAA;IACzC,IAAA,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;IAAE,QAAA,OAAO,EAAE;;QAGhD,MAAM,UAAU,GAAa,EAAE;QAC/B,IAAI,SAAS,GAAG,IAAI;;IAGpB,IAAA,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,0BAA0B,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,KAAI;IAC/E,QAAA,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM;YAC7B,MAAM,WAAW,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;IAC9C,QAAA,MAAM,SAAS,GAAG,IAAI,GAAG,CAAA,iBAAA,EAAoB,UAAU,CAAC,IAAI,CAAC,CAAA,CAAA,CAAG,GAAG,EAAE;YACrE,UAAU,CAAC,IAAI,CAAC,CAAA,oCAAA,EAAuC,SAAS,CAAA,CAAA,EAAI,WAAW,CAAA,aAAA,CAAe,CAAC;IAC/F,QAAA,OAAO,CAAA,EAAG,iBAAiB,CAAA,EAAG,GAAG,MAAM;IACzC,IAAA,CAAC,CAAC;;QAGF,MAAM,WAAW,GAAa,EAAE;IAChC,IAAA,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,MAAM,EAAE,IAAI,KAAI;IAC7D,QAAA,MAAM,GAAG,GAAG,WAAW,CAAC,MAAM;YAC9B,WAAW,CAAC,IAAI,CAAC,CAAA,iCAAA,EAAoC,UAAU,CAAC,IAAI,CAAC,CAAA,OAAA,CAAS,CAAC;IAC/E,QAAA,OAAO,CAAA,EAAG,kBAAkB,CAAA,EAAG,GAAG,MAAM;IAC1C,IAAA,CAAC,CAAC;;IAGF,IAAA,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;;QAGjC,SAAS,GAAG,mBAAmB,CAAC,SAAS,EAAE,iBAAiB,EAAE,UAAU,CAAC;QACzE,SAAS,GAAG,mBAAmB,CAAC,SAAS,EAAE,kBAAkB,EAAE,WAAW,CAAC;;QAG3E,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC;QACnC,MAAM,MAAM,GAAa,EAAE;QAC3B,IAAI,MAAM,GAAG,KAAK;IAClB,IAAA,IAAI,QAAQ,GAAG,EAAE,CAAC;QAClB,IAAI,YAAY,GAAG,KAAK;QACxB,IAAI,eAAe,GAAa,EAAE;IAElC,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;IACrC,QAAA,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC;;IAGrB,QAAA,IAAI,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,iCAAiC,CAAC,EAAE;IACxF,YAAA,cAAc,EAAE;IAChB,YAAA,SAAS,EAAE;IACX,YAAA,eAAe,EAAE;IACjB,YAAA,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;gBACjB;YACF;;YAGA,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC;YACnD,IAAI,YAAY,EAAE;IAChB,YAAA,cAAc,EAAE;IAChB,YAAA,SAAS,EAAE;IACX,YAAA,eAAe,EAAE;gBACjB,MAAM,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,MAAM;IACpC,YAAA,MAAM,CAAC,IAAI,CAAC,CAAA,EAAA,EAAK,KAAK,mBAAmB,KAAK,CAAA,EAAA,EAAK,YAAY,CAAC,CAAC,CAAC,CAAA,GAAA,EAAM,KAAK,CAAA,CAAA,CAAG,CAAC;gBACjF;YACF;;YAGA,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YAC7C,IAAI,UAAU,EAAE;IACd,YAAA,cAAc,EAAE;IAChB,YAAA,SAAS,EAAE;gBACX,IAAI,CAAC,YAAY,EAAE;oBACjB,YAAY,GAAG,IAAI;IACnB,gBAAA,MAAM,CAAC,IAAI,CAAC,wCAAwC,CAAC;gBACvD;IACA,YAAA,MAAM,CAAC,IAAI,CAAC,CAAA,GAAA,EAAM,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA,IAAA,CAAM,CAAC;gBACpD;YACF;iBAAO,IAAI,YAAY,EAAE;IACvB,YAAA,eAAe,EAAE;YACnB;;YAGA,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC;YAC5C,IAAI,OAAO,EAAE;IACX,YAAA,cAAc,EAAE;IAChB,YAAA,eAAe,EAAE;IACjB,YAAA,IAAI,CAAC,MAAM,IAAI,QAAQ,KAAK,IAAI,EAAE;IAChC,gBAAA,SAAS,EAAE;oBACX,MAAM,GAAG,IAAI;oBACb,QAAQ,GAAG,IAAI;IACf,gBAAA,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC;gBACvC;IACA,YAAA,MAAM,CAAC,IAAI,CAAC,CAAA,IAAA,EAAO,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA,KAAA,CAAO,CAAC;gBACnD;YACF;;YAGA,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC;YAC3C,IAAI,OAAO,EAAE;IACX,YAAA,cAAc,EAAE;IAChB,YAAA,eAAe,EAAE;IACjB,YAAA,IAAI,CAAC,MAAM,IAAI,QAAQ,KAAK,IAAI,EAAE;IAChC,gBAAA,SAAS,EAAE;oBACX,MAAM,GAAG,IAAI;oBACb,QAAQ,GAAG,IAAI;IACf,gBAAA,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC;gBACvC;IACA,YAAA,MAAM,CAAC,IAAI,CAAC,CAAA,IAAA,EAAO,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA,KAAA,CAAO,CAAC;gBACnD;YACF;;IAGA,QAAA,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;IACtB,YAAA,cAAc,EAAE;IAChB,YAAA,SAAS,EAAE;gBACX;YACF;;YAGA,IAAI,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE;IAC9C,YAAA,cAAc,EAAE;IAChB,YAAA,SAAS,EAAE;IACX,YAAA,eAAe,EAAE;IACjB,YAAA,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC;gBACrC;YACF;;IAGA,QAAA,SAAS,EAAE;IACX,QAAA,eAAe,EAAE;YACjB,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC1C;IAEA,IAAA,cAAc,EAAE;IAChB,IAAA,SAAS,EAAE;IACX,IAAA,eAAe,EAAE;IAEjB,IAAA,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;;;QAKxB,SAAS,YAAY,CAAC,IAAY,EAAA;;YAEhC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE,qBAAqB,CAAC;YAC5D,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,qBAAqB,CAAC;;YAExD,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,aAAa,CAAC;YAChD,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,uBAAuB,EAAE,aAAa,CAAC;;YAE3D,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,eAAe,CAAC;;IAElD,QAAA,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,0BAA0B,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,GAAG,KAAI;;IAEpE,YAAA,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG;IACrD,YAAA,OAAO,CAAA,6BAAA,EAAgC,OAAO,CAAA,4CAAA,EAA+C,QAAQ,MAAM;IAC7G,QAAA,CAAC,CAAC;IACF,QAAA,OAAO,IAAI;QACb;;IAGA,IAAA,SAAS,cAAc,GAAA;IACrB,QAAA,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE;IAC9B,YAAA,MAAM,CAAC,IAAI,CAAC,CAAA,oBAAA,EAAuB,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA,IAAA,CAAM,CAAC;gBACtE,eAAe,GAAG,EAAE;YACtB;QACF;;IAGA,IAAA,SAAS,SAAS,GAAA;YAChB,IAAI,MAAM,EAAE;IACV,YAAA,MAAM,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,GAAG,OAAO,GAAG,OAAO,CAAC;gBAClD,MAAM,GAAG,KAAK;gBACd,QAAQ,GAAG,EAAE;YACf;QACF;;IAGA,IAAA,SAAS,eAAe,GAAA;YACtB,IAAI,YAAY,EAAE;IAChB,YAAA,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC;gBAC5B,YAAY,GAAG,KAAK;YACtB;QACF;IACF;IAEA;IACA,SAAS,mBAAmB,CAAC,IAAY,EAAE,MAAc,EAAE,YAAsB,EAAA;QAC/E,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,YAAY,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,KAAI;YACnF,OAAO,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE;IAC1C,IAAA,CAAC,CAAC;IACJ;IAEA;IACA,SAAS,WAAW,CAAC,GAAW,EAAA;QAC9B,OAAO,GAAG,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC;IACnD;;IC5KA,IAAIA,QAAM,GAA0B,IAAI;IACxC,IAAI,QAAQ,GAAkB,EAAE;IAChC,IAAIC,mBAAiB,GAAuB,IAAI;IAChD,IAAIC,SAAO,GAA+B,IAAI;IAC9C,IAAIC,SAAO,GAAuB,IAAI;IACtC,IAAIC,UAAQ,GAAuB,IAAI;IACvC,IAAIC,gBAAc,GAA6B,IAAI;IACnD,IAAIC,cAAY,GAAuB,IAAI;IAC3C,IAAIC,eAAa,GAA+B,IAAI;IACpD,IAAIC,eAAa,GAAwB,IAAI;IAC7C,IAAI,SAAS,GAAG,KAAK;IAErB;IACA,IAAI,iBAAqC;IAEzC;IACA,IAAI,MAAM,GAAG,KAAK;IAElB;;IAEG;IACG,SAAU,QAAQ,CACtB,GAAmB,EACnB,GASC,EAAA;QAEDR,QAAM,GAAG,GAAG;IACZ,IAAAC,mBAAiB,GAAG,GAAG,CAAC,iBAAiB;IACzC,IAAAC,SAAO,GAAG,GAAG,CAAC,OAAO;IACrB,IAAAC,SAAO,GAAG,GAAG,CAAC,OAAO;IACrB,IAAAC,UAAQ,GAAG,GAAG,CAAC,QAAQ;IACvB,IAAAC,gBAAc,GAAG,GAAG,CAAC,cAAc;IACnC,IAAAC,cAAY,GAAG,GAAG,CAAC,YAAY;IAC/B,IAAAC,eAAa,GAAG,GAAG,CAAC,WAAW;IAC/B,IAAAC,eAAa,GAAG,GAAG,CAAC,WAAW;;IAG/B,IAAA,iBAAiB,GAAG,GAAG,CAAC,UAAU;IAClC,IAAA,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC,GAAG,CAAC,kBAAkB;;IAGrD,IAAA,cAAc,EAAE;;IAGhB,IAAA,IAAI,GAAG,CAAC,kBAAkB,IAAIH,gBAAc,EAAE;IAC5C,QAAA,cAAc,EAAE;QAClB;IACF;IAEA;;;IAGG;IACI,eAAe,eAAe,GAAA;IACnC,IAAA,IAAI,CAACL,QAAM,IAAI,CAACC,mBAAiB;YAAE;;QAGnC,MAAM,UAAU,EAAE;;QAGlB,MAAM,sBAAsB,EAAE;;IAG9B,IAAA,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YACzB,MAAM,MAAM,GAAG,YAAY,CAACD,QAAM,CAAC,WAAW,CAAC;IAC/C,QAAA,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;gBACrB,QAAQ,GAAG,MAAM;IACjB,YAAA,aAAa,EAAE;gBACf,MAAM,CAAC,IAAI,CAAC,CAAA,QAAA,EAAW,MAAM,CAAC,MAAM,CAAA,IAAA,CAAM,CAAC;YAC7C;QACF;IACF;IAEA;;IAEG;IACH,eAAe,sBAAsB,GAAA;IACnC,IAAA,IAAI,CAACA,QAAM,IAAI,CAACC,mBAAiB;YAAE;IAEnC,IAAA,MAAM,MAAM,GAAG,SAAS,EAAE;IAC1B,IAAA,IAAI,CAAC,MAAM;YAAE;IAEb,IAAA,IAAI;IACF,QAAA,MAAM,MAAM,GAAG,MAAM,yBAAyB,CAAC,MAAM,CAAC;YACtD,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;;IAE9B,YAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,MAAM;oBAC5C,EAAE,EAAE,IAAI,EAAE;IACV,gBAAA,IAAI,EAAE,GAAG,CAAC,WAAW,KAAK,MAAM,GAAG,MAAM,GAAG,IAAa;oBACzD,OAAO,EAAE,GAAG,CAAC,OAAO;oBACpB,SAAS,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE;IAC9C,aAAA,CAAC,CAAC;IAEH,YAAA,aAAa,EAAE;gBACf,MAAM,CAAC,IAAI,CAAC,CAAA,MAAA,EAAS,QAAQ,CAAC,MAAM,CAAA,MAAA,CAAQ,CAAC;;IAG7C,YAAA,YAAY,CAACD,QAAM,CAAC,WAAW,EAAE,QAAQ,CAAC;YAC5C;QACF;QAAE,OAAO,GAAG,EAAE;IACZ,QAAA,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,CAAC;QACjC;IACF;IAEA;IACA,SAAS,cAAc,GAAA;IACrB,IAAA,IAAI,CAACE,SAAO,IAAI,CAACC,SAAO;YAAE;QAE1BA,SAAO,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,UAAU,EAAE,CAAC;QAErDD,SAAO,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,CAAgB,KAAI;YACvD,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE;gBACpC,CAAC,CAAC,cAAc,EAAE;IAClB,YAAA,UAAU,EAAE;YACd;IACF,IAAA,CAAC,CAAC;QAEFA,SAAO,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,kBAAkB,EAAE,CAAC;QAE7D,IAAIE,UAAQ,EAAE;YACZA,UAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,WAAW,EAAE,CAAC;QACzD;IACF;IAEA;IACA,SAAS,kBAAkB,GAAA;IACzB,IAAA,IAAI,CAACD,SAAO,IAAI,CAACD,SAAO;YAAE;IAC1B,IAAA,MAAM,OAAO,GAAGA,SAAO,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;IAC/C,IAAA,IAAI,OAAO,IAAI,CAAC,SAAS,EAAE;IACzB,QAAAC,SAAO,CAAC,eAAe,CAAC,UAAU,CAAC;QACrC;aAAO;IACL,QAAAA,SAAO,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC;QAC1C;IACF;IAEA;IACA,eAAe,UAAU,GAAA;IACvB,IAAA,IAAI,CAACD,SAAO,IAAI,CAACF,QAAM,IAAI,SAAS;YAAE;QAEtC,MAAM,IAAI,GAAGE,SAAO,CAAC,KAAK,CAAC,IAAI,EAAE;QACjC,IAAI,IAAI,KAAK,EAAE;YAAE;IAEjB,IAAAA,SAAO,CAAC,KAAK,GAAG,EAAE;IAClB,IAAA,kBAAkB,EAAE;IACpB,IAAAA,SAAO,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM;QAE7B,SAAS,GAAG,IAAI;IAChB,IAAA,kBAAkB,EAAE;;IAGpB,IAAA,IAAI,CAACF,QAAM,CAAC,MAAM,EAAE;YAClB,MAAM,UAAU,EAAE;QACpB;;IAGA,IAAA,MAAM,aAAa,GAAG,GAAG,EAAE;IAC3B,IAAA,IAAIC,mBAAiB;IAAE,QAAA,gBAAgB,CAACA,mBAAiB,EAAE,IAAI,EAAE,aAAa,CAAC;QAC/E,MAAM,OAAO,GAAgB,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE;IAClG,IAAA,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;IAEtB,IAAA,IAAIG,UAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;IAAE,QAAAA,UAAQ,CAAC,KAAK,CAAC,OAAO,GAAG,aAAa;IAC3E,IAAA,IAAIH,mBAAiB;YAAE,cAAc,CAACA,mBAAiB,CAAC;;IAGxD,IAAA,IAAIM,eAAa;IAAE,QAAAA,eAAa,EAAE;IAClC,IAAA,IAAIN,mBAAiB;YAAE,cAAc,CAACA,mBAAiB,CAAC;;IAGxD,IAAA,IAAI;IACF,QAAA,IAAI,SAAiB;IACrB,QAAA,MAAM,WAAW,GAAG,GAAG,EAAE;IACzB,QAAA,MAAM,YAAY,GAAG,MAAM,KAAK,iBAAiB,KAAK,SAAS,IAAID,QAAM,CAAC,UAAU,KAAK,SAAS,CAAC;IAEnG,QAAA,IAAIA,QAAM,CAAC,SAAS,EAAE;gBACpB,SAAS,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE,WAAW,EAAE,YAAY,CAAC;YACtE;iBAAO;IACL,YAAA,SAAS,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC;YACrC;IAEA,QAAA,IAAIQ,eAAa;IAAE,YAAAA,eAAa,EAAE;IAElC,QAAA,IAAI,CAACR,QAAM,CAAC,SAAS,IAAIC,mBAAiB,EAAE;gBAC1C,cAAc,CAACA,mBAAiB,EAAE,SAAS,EAAE,WAAW,EAAE,cAAc,CAAC;YAC3E;YACA,MAAM,KAAK,GAAgB,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE;IACjG,QAAA,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;IAEpB,QAAA,YAAY,CAACD,QAAM,CAAC,WAAW,EAAE,QAAQ,CAAC;IAC1C,QAAA,IAAIC,mBAAiB;gBAAE,cAAc,CAACA,mBAAiB,CAAC;;IAGxD,QAAA,IAAI,YAAY;IAAE,YAAA,qBAAqB,CAAC,IAAI,EAAE,KAAK,CAAC;QACtD;QAAE,OAAO,GAAG,EAAE;IACZ,QAAA,IAAIO,eAAa;IAAE,YAAAA,eAAa,EAAE;IAElC,QAAA,MAAM,MAAM,GAAG,GAAG,YAAY,QAAQ,GAAG,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,YAAY,CAAC;YACtE,IAAIP,mBAAiB,EAAE;gBACrB,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IACjD,YAAA,WAAW,CAAC,SAAS,GAAG,qBAAqB;gBAC7C,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;IAC5C,YAAA,MAAM,CAAC,SAAS,GAAG,iBAAiB;IACpC,YAAA,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,SAAS;IAC9B,YAAA,MAAM,CAAC,WAAW,GAAG,CAAA,EAAA,EAAK,MAAM,EAAE;IAClC,YAAA,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC;IAC/B,YAAAA,mBAAiB,CAAC,WAAW,CAAC,WAAW,CAAC;YAC5C;YACA,MAAM,CAAC,KAAK,CAAC,CAAA,iBAAA,EAAoBD,QAAM,CAAC,WAAW,CAAA,CAAE,EAAE,GAAG,CAAC;QAC7D;gBAAU;YACR,SAAS,GAAG,KAAK;IACjB,QAAA,kBAAkB,EAAE;QACtB;IACF;IAEA;IACA,eAAe,iBAAiB,CAAC,IAAY,EAAE,WAAmB,EAAE,YAAqB,EAAA;QACvF,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,KAAI;YACrC,IAAI,QAAQ,GAAuB,IAAI;YACvC,IAAI,WAAW,GAAG,EAAE;YACpB,IAAI,aAAa,GAAG,KAAK;IAEzB,QAAA,cAAc,CACZ,IAAI,EACJ,CAAC,KAAa,KAAI;gBAChB,WAAW,IAAI,KAAK;IACpB,YAAA,IAAI,CAAC,aAAa,IAAIC,mBAAiB,EAAE;IACvC,gBAAA,IAAIO,eAAa;IAAE,oBAAAA,eAAa,EAAE;oBAClC,MAAM,EAAE,MAAM,EAAE,GAAG,mBAAmB,CAACP,mBAAiB,EAAE,WAAW,CAAC;oBACtE,QAAQ,GAAG,MAAM;oBACjB,aAAa,GAAG,IAAI;gBACtB;IACA,YAAA,IAAI,QAAQ;IAAE,gBAAA,QAAQ,CAAC,WAAW,GAAG,WAAW;IAChD,YAAA,IAAIA,mBAAiB;oBAAE,cAAc,CAACA,mBAAiB,CAAC;YAC1D,CAAC,EACD,MAAK;IACH,YAAA,IAAI,CAAC,aAAa,IAAI,WAAW,KAAK,EAAE,EAAE;IACxC,gBAAA,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;oBAC7C;gBACF;gBACA,IAAI,QAAQ,IAAI,WAAW;IAAE,gBAAA,QAAQ,CAAC,SAAS,GAAG,cAAc,CAAC,WAAW,CAAC;gBAC7E,OAAO,CAAC,WAAW,CAAC;IACtB,QAAA,CAAC,EACD,CAAC,KAAe,KAAI;IAClB,YAAA,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;IAC1B,gBAAA,IAAI,QAAQ;IAAE,oBAAA,QAAQ,CAAC,SAAS,GAAG,cAAc,CAAC,WAAW,GAAG,MAAM,GAAG,CAAC,CAAC,oBAAoB,CAAC,CAAC;oBACjG,OAAO,CAAC,WAAW,CAAC;gBACtB;qBAAO;oBACL,MAAM,CAAC,KAAK,CAAC;gBACf;IACF,QAAA,CAAC,EACD,iBAAiB,EACjB,YAAY,CACb;IACH,IAAA,CAAC,CAAC;IACJ;IAEA;IACA,eAAe,qBAAqB,CAAC,OAAe,EAAE,KAAkB,EAAA;IACtE,IAAA,IAAI;YACF,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,OAAO,EAAE,iBAAiB,CAAC;IACjE,QAAA,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;gBACtB,MAAM,UAAU,GAAgB,OAAO,CAAC,GAAG,CAAC,CAAC,IAAG;;IAAC,gBAAA,QAAC;IAChD,oBAAA,UAAU,EAAE,CAAC,CAAC,UAAU,IAAI,EAAE;IAC9B,oBAAA,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,EAAE;IACpB,oBAAA,UAAU,EAAE,CAAC,CAAC,UAAU,IAAI,EAAE;IAC9B,oBAAA,UAAU,EAAE,CAAA,EAAA,GAAA,CAAC,CAAC,UAAU,mCAAI,CAAC;IAC7B,oBAAA,KAAK,EAAE,CAAA,EAAA,GAAA,CAAC,CAAC,KAAK,mCAAI,CAAC;IACnB,oBAAA,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,EAAE;IACzB,iBAAA;IAAC,YAAA,CAAA,CAAC;IACH,YAAA,KAAK,CAAC,OAAO,GAAG,UAAU;gBAC1B,IAAIA,mBAAiB,EAAE;oBACrB,MAAM,SAAS,GAAGA,mBAAiB,CAAC,aAAa,CAAC,2BAA2B,CAAC;IAC9E,gBAAA,IAAI,SAAS;IAAE,oBAAA,aAAa,CAAC,SAAwB,EAAE,UAAU,CAAC;gBACpE;IACA,YAAA,IAAID,QAAM;IAAE,gBAAA,YAAY,CAACA,QAAM,CAAC,WAAW,EAAE,QAAQ,CAAC;YACxD;QACF;QAAE,OAAO,GAAG,EAAE;IACZ,QAAA,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC;QAC9B;IACF;IAEA;IACA,eAAe,cAAc,GAAA;IAC3B,IAAA,IAAI,CAACK,gBAAc;YAAE;IACrB,IAAA,IAAI;IACF,QAAA,MAAM,IAAI,GAAG,MAAM,iBAAiB,EAAE;IACtC,QAAA,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;gBAAE;YACvBA,gBAAc,CAAC,SAAS,GAAG,CAAA,iBAAA,EAAoB,CAAC,CAAC,cAAc,CAAC,CAAA,SAAA,CAAW;YAE3E,MAAM,UAAU,GAAG,CAAC,KAAkB,EAAE,MAAA,GAAiB,CAAC,KAAI;IAC5D,YAAA,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;oBACxB,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;oBAC/C,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;IAC9B,gBAAA,MAAM,CAAC,WAAW,GAAG,CAAA,EAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA,EAAG,IAAI,CAAC,IAAI,EAAE;IACxD,gBAAA,IAAI,iBAAiB,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC,iBAAiB,CAAC;IAAE,oBAAA,MAAM,CAAC,QAAQ,GAAG,IAAI;IAC5G,gBAAAA,gBAAe,CAAC,WAAW,CAAC,MAAM,CAAC;oBACnC,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;wBAAE,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,CAAC,CAAC;gBACtF;IACF,QAAA,CAAC;YACD,UAAU,CAAC,IAAI,CAAC;YAChB,MAAM,CAAC,IAAI,CAAC,CAAA,gBAAA,EAAmB,IAAI,CAAC,MAAM,CAAA,CAAE,CAAC;QAC/C;QAAE,OAAO,GAAG,EAAE;YACZ,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,qBAAqB,CAAC,EAAE,GAAG,CAAC;QAC7C;IACF;IAEA;IACA,SAAS,aAAa,GAAA;IACpB,IAAA,IAAI,CAACJ,mBAAiB;YAAE;QAExB,MAAM,cAAc,GAAGA,mBAAiB,CAAC,aAAa,CAAC,oBAAoB,CAAC;QAC5E,MAAM,IAAI,GAAGA,mBAAiB,CAAC,gBAAgB,CAAC,wBAAwB,CAAC;IACzE,IAAA,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,CAAC;IAE/B,IAAA,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE;IAC1B,QAAA,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE;gBACvB,gBAAgB,CAACA,mBAAiB,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC;YACjE;iBAAO;IACL,YAAA,MAAM,OAAO,GAAG,cAAc,CAACA,mBAAiB,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,cAAc,CAAC;gBAC7F,IAAI,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;IAAE,gBAAA,aAAa,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC;YAChF;QACF;QAEA,cAAc,CAACA,mBAAiB,CAAC;IACjC,IAAA,IAAIG,UAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;IAAE,QAAAA,UAAQ,CAAC,KAAK,CAAC,OAAO,GAAG,aAAa;QAE3E,IAAI,cAAc,IAAI,CAACH,mBAAiB,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE;IACjE,QAAAA,mBAAiB,CAAC,WAAW,CAAC,cAAc,CAAC;QAC/C;IACF;IAEA;IACA,SAAS,WAAW,GAAA;IAClB,IAAA,IAAI,CAACD,QAAM;YAAE;IACb,IAAA,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;YAAE;QAElC,QAAQ,GAAG,EAAE;QACb,IAAIC,mBAAiB,EAAE;YACrB,MAAM,IAAI,GAAGA,mBAAiB,CAAC,gBAAgB,CAAC,wBAAwB,CAAC;IACzE,QAAA,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,CAAC;QACjC;IACA,IAAA,IAAIG,UAAQ;IAAE,QAAAA,UAAQ,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM;IAC7C,IAAA,aAAa,CAACJ,QAAM,CAAC,WAAW,CAAC;;IAGjC,IAAA,MAAM,KAAK,GAAG,iBAAiB,EAAE;QACjC,YAAY,CAAC,KAAK,CAAC;QACnB,gBAAgB,CAACA,QAAM,CAAC,WAAW,EAAEA,QAAM,CAAC,MAAM,EAAE,KAAK,CAAC;IAE1D,IAAA,MAAM,CAAC,cAAc,CAACA,QAAM,CAAC,WAAW,CAAC;IACzC,IAAA,MAAM,CAAC,IAAI,CAAC,YAAY,KAAK,CAAA,CAAE,CAAC;IAClC;IAEA;IACA,SAAS,iBAAiB,GAAA;QACxB,MAAM,MAAM,GAAG,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC;cACnD,MAAM,CAAC,UAAU,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;IACpC,UAAE,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC;QAC/C,OAAO,CAAA,IAAA,EAAO,IAAI,CAAC,GAAG,EAAE,CAAA,CAAA,EAAI,MAAM,EAAE;IACtC;IAEA;IACM,SAAU,WAAW,CAAC,UAA8B,EAAA;QACxD,iBAAiB,GAAG,UAAU;IAC9B,IAAA,MAAM,GAAG,UAAU,KAAK,SAAS;QACjC,MAAM,CAAC,uBAAuB,CAAC,UAAU,KAAA,IAAA,IAAV,UAAU,KAAA,MAAA,GAAV,UAAU,GAAI,IAAI,CAAC;IACpD;IAEA;IAEA;IACO,eAAe,wBAAwB,GAAA;IAC5C,IAAA,IAAI,CAACM,cAAY,IAAI,CAACN,QAAM;YAAE;QAE9B,MAAM,MAAM,GAAGM,cAAY,CAAC,aAAa,CAAC,mBAAmB,CAAgB;IAC7E,IAAA,IAAI,CAAC,MAAM;YAAE;IAEb,IAAA,MAAM,CAAC,SAAS,GAAG,CAAA,oDAAA,CAAsD;IAEzE,IAAA,IAAI;IACF,QAAA,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC,CAAC,EAAE,EAAE,EAAEN,QAAM,CAAC,MAAM,EAAEA,QAAM,CAAC,WAAW,CAAC;IACpF,QAAA,MAAM,KAAK,GAAsB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK;gBACrD,EAAE,EAAE,CAAC,CAAC,cAAc,IAAI,CAAC,CAAC,MAAM,IAAI,EAAE;gBACtC,MAAM,EAAE,CAAC,CAAC,cAAc,IAAI,CAAC,CAAC,MAAM,IAAI,EAAE;gBAC1C,YAAY,EAAE,CAAC,CAAC,YAAY;gBAC5B,eAAe,EAAE,CAAC,CAAC,eAAe;IAClC,YAAA,SAAS,EAAE,CAAC,CAAC,gBAAgB,IAAI,CAAC,CAAC,SAAS;IAC7C,SAAA,CAAC,CAAC;IAEH,QAAA,iBAAiB,CACf,MAAM,EACN,KAAK,EACL,CAAC,EAAU,KAAI,EAAG,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,EACxE,OAAO,EAAU,KAAI;IACnB,YAAA,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC;oBAAE;IAC3C,YAAA,MAAM,EAAE,GAAG,MAAM,kBAAkB,CAAC,EAAE,CAAC;IACvC,YAAA,IAAI,EAAE;IAAE,gBAAA,wBAAwB,EAAE;IACpC,QAAA,CAAC,CACF;QACH;QAAE,OAAO,GAAG,EAAE;YACZ,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,oBAAoB,CAAC,EAAE,GAAG,CAAC;YAC1C,MAAM,CAAC,SAAS,GAAG,CAAA,6FAAA,EAAgG,CAAC,CAAC,oBAAoB,CAAC,CAAA,YAAA,CAAc;QAC1J;IACF;;IC9aA;IAEA,IAAI,MAAM,GAA0B,IAAI;IACxC,IAAI,aAAa,GAAG,KAAK;IACzB,IAAI,UAAU,GAAuB,IAAI;IACzC,IAAI,QAAQ,GAAuB,IAAI;IACvC,IAAI,iBAAiB,GAAuB,IAAI;IAChD,IAAI,OAAO,GAA+B,IAAI;IAC9C,IAAI,OAAO,GAAuB,IAAI;IACtC,IAAI,QAAQ,GAAuB,IAAI;IACvC,IAAI,cAAc,GAA6B,IAAI;IACnD,IAAI,YAAY,GAAuB,IAAI;IAC3C,IAAI,aAAa,GAA+B,IAAI;IACpD,IAAI,aAAa,GAAwB,IAAI;IAC7C,IAAI,WAAW,GAAwB,IAAI;IAE3C;IAEA;IACA,SAAS,IAAI,CAAC,SAAoB,EAAA;QAChC,IAAI,aAAa,EAAE;IACjB,QAAA,MAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC;YAC7C;QACF;;IAGA,IAAA,MAAM,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC;IACrC,IAAA,IAAI,CAAC,MAAM;YAAE;QACb,MAAM,GAAG,MAAM;;IAGf,IAAA,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;;IAGxB,IAAA,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC;;QAGtB,YAAY,CAAC,MAAM,CAAC;;QAGpB,YAAY,CAAC,MAAM,CAAC;;IAGpB,IAAA,UAAU,GAAG,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC;IAC3C,IAAA,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC;;IAGrC,IAAA,MAAM,GAAG,GAAG,gBAAgB,CAAC,MAAM,CAAC;IACpC,IAAA,QAAQ,GAAG,GAAG,CAAC,MAAM;IACrB,IAAA,iBAAiB,GAAG,GAAG,CAAC,iBAAiB;IACzC,IAAA,OAAO,GAAG,GAAG,CAAC,OAAO;IACrB,IAAA,OAAO,GAAG,GAAG,CAAC,OAAO;IACrB,IAAA,QAAQ,GAAG,GAAG,CAAC,QAAQ;IACvB,IAAA,cAAc,GAAG,GAAG,CAAC,cAAc;IACnC,IAAA,YAAY,GAAG,GAAG,CAAC,YAAY;IAC/B,IAAA,aAAa,GAAG,GAAG,CAAC,WAAW;IAC/B,IAAA,aAAa,GAAG,GAAG,CAAC,WAAW;IAC/B,IAAA,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC;;QAGnC,MAAM,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,aAAa,CAAgB;QACrE,IAAI,QAAQ,EAAE;IACZ,QAAA,WAAW,GAAG,UAAU,CAAC,QAAQ,EAAE,QAAQ,CAAC;QAC9C;;QAGA,QAAQ,CAAC,MAAM,EAAE;YACf,iBAAiB;YACjB,OAAO;YACP,OAAO;YACP,QAAQ;YACR,cAAc;YACd,YAAY;IACZ,QAAA,WAAW,EAAE,aAAa;IAC1B,QAAA,WAAW,EAAE,aAAa;IAC3B,KAAA,CAAC;;QAGF,QAAQ,CAAC,gBAAgB,CAAC,oBAAoB,GAAG,CAAC,CAAc,KAAI;IAClE,QAAA,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC;QAClC,CAAC,EAAmB;;IAGpB,IAAA,QAAQ,CAAC,gBAAgB,CAAC,iBAAiB,EAAE,MAAK;IAChD,QAAA,wBAAwB,EAAE;IAC5B,IAAA,CAAC,CAAC;QAEF,aAAa,GAAG,IAAI;QACpB,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,aAAa,CAAC;;IAG9D,IAAA,eAAe,EAAE,CAAC,KAAK,CAAC,GAAG,IAAG;IAC5B,QAAA,MAAM,CAAC,IAAI,CAAC,wBAAwB,EAAE,GAAG,CAAC;IAC5C,IAAA,CAAC,CAAC;IACJ;IAEA;IACA,SAAS,OAAO,GAAA;IACd,IAAA,IAAI,CAAC,aAAa;YAAE;IAEpB,IAAA,IAAI,UAAU,IAAI,UAAU,CAAC,UAAU,EAAE;IAAE,QAAA,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,UAAU,CAAC;YAAE,UAAU,GAAG,IAAI;QAAE;IAC7G,IAAA,IAAI,QAAQ,IAAI,QAAQ,CAAC,UAAU,EAAE;IAAE,QAAA,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC;YAAE,QAAQ,GAAG,IAAI;QAAE;QACnG,IAAI,WAAW,EAAE;IAAE,QAAA,WAAW,EAAE;YAAE,WAAW,GAAG,IAAI;QAAE;IAEtD,IAAA,YAAY,EAAE;QAEd,MAAM,cAAc,GAAG,MAAM,KAAA,IAAA,IAAN,MAAM,KAAA,MAAA,GAAA,MAAA,GAAN,MAAM,CAAE,WAAW;QAC1C,MAAM,GAAG,IAAI;QACb,aAAa,GAAG,KAAK;QACrB,iBAAiB,GAAG,IAAI;QACxB,OAAO,GAAG,IAAI;QACd,OAAO,GAAG,IAAI;QACd,QAAQ,GAAG,IAAI;QACf,cAAc,GAAG,IAAI;QACrB,YAAY,GAAG,IAAI;QACnB,aAAa,GAAG,IAAI;QACpB,aAAa,GAAG,IAAI;IAEpB,IAAA,MAAM,CAAC,gBAAgB,CAAC,cAAc,IAAI,EAAE,CAAC;IAC/C;IAEA,SAAS,IAAI,GAAA;IACX,IAAA,IAAI,CAAC,QAAQ;YAAE;IACf,IAAA,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,oBAAoB,CAAC;IACjD;IAEA,SAAS,KAAK,GAAA;IACZ,IAAA,IAAI,CAAC,QAAQ;YAAE;IACf,IAAA,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,oBAAoB,CAAC;IAC9C;IAEA,SAAS,MAAM,GAAA;IACb,IAAA,IAAI,CAAC,QAAQ;YAAE;QACf,IAAI,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE;IACrD,QAAA,IAAI,EAAE;IACN,QAAA,UAAU,CAAC,MAAK,EAAG,IAAI,OAAO;gBAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC;QAC1D;aAAO;IACL,QAAA,KAAK,EAAE;QACT;IACF;IAEA,SAAS,YAAY,GAAA;IACnB,IAAA,IAAI,CAAC,MAAM;YAAE;QACb,IAAI,QAAQ,EAAE;YAAE,QAAQ,CAAC,KAAK,EAAE;QAAE;IAC7B,SAAA,IAAI,OAAO,CAAC,aAAa,CAAC,EAAE;IAAE,QAAA,aAAa,CAAC,MAAM,CAAC,WAAW,CAAC;QAAE;IACxE;IAEA;AAEA,UAAM,UAAU,GAAuB;QACrC,IAAI;QACJ,OAAO;QACP,IAAI;QACJ,KAAK;QACL,MAAM;QACN,YAAY;;IAGd,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;IAChC,IAAA,MAA6C,CAAC,UAAU,GAAG,UAAU;IACxE;;;;;;;;"} \ No newline at end of file +{"version":3,"file":"chatbot-sdk.js","sources":["../src/logger.ts","../src/config.ts","../src/i18n.ts","../src/api.ts","../src/styles.ts","../src/utils.ts","../src/dom.ts","../src/storage.ts","../src/markdown.ts","../src/chat.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":["config","messagesContainer","inputEl","sendBtn","clearBtn","categorySelect","historyPanel","showLoadingFn","hideLoadingFn"],"mappings":"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"} \ No newline at end of file diff --git a/client/dist/chatbot-sdk.min.js b/client/dist/chatbot-sdk.min.js index 90e850f..e858b94 100644 --- a/client/dist/chatbot-sdk.min.js +++ b/client/dist/chatbot-sdk.min.js @@ -1,2 +1,2 @@ -var ChatbotSDK=function(){"use strict";const n="[ChatbotSDK]";let e=!0;const t={},r={info(t,r){e&&console.log(n,t,void 0!==r?r:"")},warn(t,r){e&&console.warn(n,t,void 0!==r?r:"")},error(e,t){console.error(n,e,void 0!==t?t:"")},time(n){t[n]=Date.now()},timeEnd(r,o){const s=t[r];if(void 0!==s){const i=Date.now()-s;if(delete t[r],e){const e=o?`${o} ${i}ms`:`${r} ${i}ms`;console.log(n,e)}return i}return 0},lifecycleInit(n,e){this.info(`初始化完成 integrateId=${n} requestDomain=${e}`)},lifecycleDestroy(n){this.info(`销毁实例 integrateId=${n}`)},lifecycleSend(n,e){this.info(`发送消息 integrateId=${n} length=${e}`),this.time(`send_${n}`)},lifecycleReply(n,e){const t=this.timeEnd(`send_${n}`,"AI 回复");this.info(`AI 回复 integrateId=${n} length=${e} duration=${t}ms`)},lifecycleError(n,e,t){this.timeEnd(`send_${n}`),this.error(`请求失败 integrateId=${n} status=${e} message=${t}`)},lifecycleClear(n){this.info(`清空会话 integrateId=${n}`)},lifecycleStreamDone(n,e){const t=this.timeEnd(`send_${n}`,"流式回复");this.info(`流式回复完成 integrateId=${n} length=${e} duration=${t}ms`)},lifecycleCategoryChange(n){this.info(`切换知识库分类 categoryId=${n}`)}};const o={"zh-CN":{title:"AI 智能助手",minimize:"最小化",close:"关闭",placeholder:"输入您的问题...",send:"发送",loading:"正在思考...",stream_interrupted:"回复被中断",stream_unstable:"网络不稳定,内容可能不完整",category_placeholder:"选择知识库分类",category_all:"全部分类",category_load_error:"加载分类失败",source_title:"参考来源",source_count:"{n} 条参考来源",source_loading:"加载来源中...",clear:"清空对话",clear_confirm:"确定清空所有对话记录?",history_title:"历史会话",history_empty:"暂无历史会话",history_load_error:"加载会话列表失败",history_delete_confirm:"确定删除该会话?",history_export:"导出",history_delete:"删除",error_network:"网络连接失败,请检查网络",error_timeout:"请求超时,请稍后重试",error_server:"服务器异常,请稍后重试",error_cors:"跨域请求被拦截,请联系管理员将当前域名加入 API 白名单",error_auth:"鉴权失败,请联系管理员",error_forbidden:"无访问权限,请联系管理员配置",error_not_found:"请求的资源不存在",error_rate_limit:"请求过于频繁,请稍后重试",error_unavailable:"服务暂不可用,请稍后重试",error_unknown:"请求发生未知错误",error_send:"发送失败,请稍后重试",error_stream_unsupported:"浏览器不支持流式读取"},en:{title:"AI Assistant",minimize:"Minimize",close:"Close",placeholder:"Type your question...",send:"Send",loading:"Thinking...",stream_interrupted:"Response interrupted",stream_unstable:"Network unstable, content may be incomplete",category_placeholder:"Select category",category_all:"All categories",category_load_error:"Failed to load categories",source_title:"Sources",source_count:"{n} source(s)",source_loading:"Loading sources...",clear:"Clear chat",clear_confirm:"Clear all conversation history?",history_title:"History",history_empty:"No conversations yet",history_load_error:"Failed to load conversations",history_delete_confirm:"Delete this conversation?",history_export:"Export",history_delete:"Delete",error_network:"Network connection failed",error_timeout:"Request timed out, please try again",error_server:"Server error, please try again later",error_cors:"CORS request blocked. Please contact admin to whitelist your domain",error_auth:"Authentication failed, please contact admin",error_forbidden:"Access denied, please contact admin",error_not_found:"Resource not found",error_rate_limit:"Too many requests, please try again later",error_unavailable:"Service temporarily unavailable",error_unknown:"Unknown request error",error_send:"Failed to send, please try again",error_stream_unsupported:"Browser does not support streaming"}};let s="zh-CN";function i(n,e){let t=(o[s]||o["zh-CN"])[n]||o["zh-CN"][n]||n;if(e)for(const[n,r]of Object.entries(e))t=t.replace(`{${n}}`,String(r));return t}let a=null;function c(n){if(!a)throw new Error("API 配置未初始化");return`${a.requestDomain.replace(/\/+$/,"")}${n.startsWith("/")?n:`/${n}`}`}function l(n,e,t){null!=t&&("string"==typeof t&&""===t.trim()||n.set(e,String(t)))}async function d(n,e={},t=3e4){const r=new AbortController,o=setTimeout(()=>r.abort(),t);try{return await fetch(n,Object.assign(Object.assign({},e),{signal:r.signal,mode:"cors",credentials:"include"}))}catch(n){if(n instanceof DOMException&&"AbortError"===n.name)throw new u(i("error_timeout"),"timeout");if(n instanceof TypeError&&n.message.includes("Failed to fetch"))throw new u(i("error_cors"),"cors");throw new u(i("error_network"),"network")}finally{clearTimeout(o)}}class u extends Error{constructor(n,e){super(n),this.name="CskError",this.type=e}}function p(n){switch(n){case 401:return i("error_auth");case 403:return i("error_forbidden");case 404:return i("error_not_found");case 429:return i("error_rate_limit");case 500:return i("error_server");case 502:case 503:return i("error_unavailable");default:return`${i("error_unknown")}(${n})`}}async function m(n){const e=function(n){const e=new URLSearchParams;return e.set("message",n),e.set("chatId",a.chatId),l(e,"roleId",a.integrateId),l(e,"accountId",a.userId),c(`/ai/assistant_app/chat/sync?${e.toString()}`)}(n);r.lifecycleSend(a.integrateId,n.length);try{const n=await d(e);if(!n.ok){const e=p(n.status);throw r.lifecycleError(a.integrateId,String(n.status),e),new u(e,`http_${n.status}`)}const t=await n.text();return r.lifecycleReply(a.integrateId,t.length),t}catch(n){if(n instanceof u)throw n;throw r.lifecycleError(a.integrateId,"unknown",String(n)),new u(i("error_unknown"),"unknown")}}async function h(n,e,t,o,s,m){var h;const g=m?function(n,e){const t=new URLSearchParams;return t.set("message",n),t.set("chatId",a.chatId),t.set("rewriteStrategy","REWRITE"),l(t,"roleId",a.integrateId),l(t,"accountId",a.userId),l(t,"categoryId",null!=e?e:a.categoryId),c(`/ai/assistant_app/chat/rag/sse?${t.toString()}`)}(n,s):function(n,e){const t=new URLSearchParams;return t.set("message",n),t.set("chatId",a.chatId),l(t,"roleId",a.integrateId),l(t,"accountId",a.userId),l(t,"categoryId",null!=e?e:a.categoryId),c(`/ai/assistant_app/chat/sse?${t.toString()}`)}(n,s);let k="";r.lifecycleSend(a.integrateId,n.length);try{const n=await d(g,{},6e4);if(!n.ok){const e=p(n.status);return r.lifecycleError(a.integrateId,String(n.status),e),void o(new u(e,`http_${n.status}`))}const s=null===(h=n.body)||void 0===h?void 0:h.getReader();if(!s)return void o(new u(i("error_stream_unsupported"),"stream_unsupported"));const c=new TextDecoder("utf-8",{stream:!0});let l="";try{for(;;){const{done:n,value:t}=await s.read();if(n)break;l+=c.decode(t,{stream:!0});const r=l.split("\n");l=r.pop()||"";for(const n of r){const t=n.trim();if(t&&!t.startsWith(":"))if(t.startsWith("data:")){const n=t.substring(5).trim();n&&(k+=n,e(n))}else{if("[DONE]"===t)break;t.startsWith("event:")||t.startsWith("id:")||t.startsWith("retry:")||(k+=t,e(t))}}}if(l.trim()){const n=l.trim();if(n.startsWith("data:")){const t=n.substring(5).trim();t&&(k+=t,e(t))}else"[DONE]"!==n&&(k+=n,e(n))}}catch(n){if(!(k.length>0))throw n;e("\n\n"+i("stream_unstable"))}finally{s.releaseLock()}r.lifecycleStreamDone(a.integrateId,k.length),t()}catch(n){n instanceof u?o(n):(r.lifecycleError(a.integrateId,"unknown",String(n)),o(new u(i("error_network"),"network")))}}async function g(n,e){const t=function(n,e){const t=new URLSearchParams;return t.set("message",n),t.set("chatId",a.chatId),t.set("rewriteStrategy","REWRITE"),l(t,"roleId",a.integrateId),l(t,"accountId",a.userId),l(t,"categoryId",null!=e?e:a.categoryId),c(`/ai/assistant_app/rag/sources?${t.toString()}`)}(n,e);try{const n=await d(t);if(!n.ok)throw new u(p(n.status),`http_${n.status}`);const e=await n.json();return e.success&&Array.isArray(e.data)?(r.info(`获取引用来源 count=${e.data.length}`),e.data):[]}catch(n){return r.error("获取引用来源失败",n),[]}}async function k(n=1,e=20,t,o){let s=`/conversation/list?page=${n}&size=${e}`;t&&(s+=`&accountId=${encodeURIComponent(t)}`),o&&(s+=`&roleId=${encodeURIComponent(o)}`);const i=c(s);try{const n=await d(i);if(!n.ok)throw new u(p(n.status),`http_${n.status}`);const e=await n.json();return{list:e.success&&Array.isArray(e.data)?e.data:[],total:e.total||0,pages:e.pages||0}}catch(n){return r.error("加载会话列表失败",n),{list:[],total:0,pages:0}}}async function f(){if(!a)return"";const n=function(n,e){try{return localStorage.getItem(y(n,e))||""}catch(n){return""}}(a.integrateId,a.userId);if(n)return a.chatId=n,r.info(`从缓存恢复 chatId=${n}`),n;try{const n=await k(1,5,a.userId,a.integrateId);if(n.list.length>0){const e=n.list[0],t=e.conversationId||e.chatId||"";if(t)return a.chatId=t,b(a.integrateId,a.userId,t),r.info(`从后端恢复会话 chatId=${t} messageCount=${e.messageCount}`),t}}catch(n){r.warn("查询后端会话列表失败,将生成新 chatId",n)}const e=function(){const n="undefined"!=typeof crypto&&crypto.randomUUID?crypto.randomUUID().substring(0,8):Math.random().toString(36).substring(2,10);return`sdk_${Date.now()}_${n}`}();return a.chatId=e,b(a.integrateId,a.userId,e),r.info(`生成新 chatId=${e}`),e}function y(n,e){return`csk_chatId_${n}${e?"_"+e:""}`}function b(n,e,t){try{t?localStorage.setItem(y(n,e),t):localStorage.removeItem(y(n,e))}catch(n){}}let x=null;function _(n){const e=function(n,e){const t=n.match(/^#([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/);if(!t)return n;const r=n=>Math.max(0,Math.min(255,n)),o=r(parseInt(t[1],16)+e),s=r(parseInt(t[2],16)+e),i=r(parseInt(t[3],16)+e);return`#${o.toString(16).padStart(2,"0")}${s.toString(16).padStart(2,"0")}${i.toString(16).padStart(2,"0")}`}(n.primaryColor,-15);return`\n --csk-primary: ${n.primaryColor};\n --csk-primary-hover: ${e};\n --csk-bg-user: var(--csk-primary);\n --csk-bg-ai: #F3F4F6;\n --csk-text-user: #FFFFFF;\n --csk-text-ai: #1F2937;\n --csk-window-width: ${n.width}px;\n `}function w(n){document.querySelector("style[data-csk-sdk]")||(x=document.createElement("style"),x.setAttribute("data-csk-sdk",""),x.textContent=function(n){return`\n/* ChatbotSDK 样式 - csk- 命名空间 */\n.csk-root {\n ${_(n)}\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans SC", sans-serif;\n font-size: 14px;\n line-height: 1.5;\n color: #1F2937;\n}\n\n/* ========== 悬浮按钮 ========== */\n.csk-launcher {\n position: fixed;\n bottom: 20px;\n z-index: 9998;\n width: 56px;\n height: 56px;\n border-radius: 50%;\n background: #fff;\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n transition: all 0.2s ease;\n border: none;\n color: var(--csk-primary);\n user-select: none;\n}\n.csk-launcher--right {\n right: 20px;\n}\n.csk-launcher--left {\n left: 20px;\n}\n.csk-launcher:hover {\n transform: scale(1.1);\n box-shadow: 0 6px 24px rgba(0, 0, 0, 0.2);\n}\n.csk-launcher:active {\n transform: scale(0.95);\n}\n\n/* ========== 聊天弹窗 ========== */\n.csk-window {\n position: fixed;\n bottom: 20px;\n z-index: 9999;\n width: var(--csk-window-width);\n height: 560px;\n background: #fff;\n border-radius: 12px;\n box-shadow: 0 8px 40px rgba(0, 0, 0, 0.18);\n display: flex;\n flex-direction: column;\n overflow: hidden;\n transition: opacity 0.2s ease, transform 0.2s ease;\n}\n.csk-window--right {\n right: 20px;\n}\n.csk-window--left {\n left: 20px;\n}\n.csk-window--hidden {\n display: none;\n}\n\n/* ========== 头部 ========== */\n.csk-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 0 16px;\n height: 48px;\n min-height: 48px;\n background: var(--csk-primary);\n color: #fff;\n border-radius: 12px 12px 0 0;\n cursor: move;\n user-select: none;\n}\n.csk-header__title {\n font-size: 15px;\n font-weight: 600;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.csk-header__actions {\n display: flex;\n align-items: center;\n gap: 4px;\n}\n.csk-header__btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n border: none;\n background: transparent;\n color: #fff;\n cursor: pointer;\n border-radius: 6px;\n transition: background 0.15s;\n}\n.csk-header__btn:hover {\n background: rgba(255, 255, 255, 0.2);\n}\n\n/* ========== 消息区 ========== */\n.csk-messages {\n flex: 1;\n overflow-y: auto;\n padding: 16px;\n background: #FAFAFA;\n scroll-behavior: smooth;\n}\n.csk-messages::-webkit-scrollbar {\n width: 5px;\n}\n.csk-messages::-webkit-scrollbar-track {\n background: transparent;\n}\n.csk-messages::-webkit-scrollbar-thumb {\n background: #D1D5DB;\n border-radius: 3px;\n}\n\n/* 消息气泡 */\n.csk-msg {\n display: flex;\n flex-direction: column;\n margin-bottom: 16px;\n max-width: 85%;\n word-break: break-word;\n}\n.csk-msg--user {\n margin-left: auto;\n align-items: flex-end;\n}\n.csk-msg--ai {\n margin-right: auto;\n align-items: flex-start;\n}\n.csk-msg__bubble {\n padding: 10px 14px;\n border-radius: 12px;\n font-size: 14px;\n line-height: 1.6;\n}\n.csk-msg--user .csk-msg__bubble {\n background: var(--csk-bg-user);\n color: var(--csk-text-user);\n border-radius: 12px 12px 4px 12px;\n}\n.csk-msg--ai .csk-msg__bubble {\n background: var(--csk-bg-ai);\n color: var(--csk-text-ai);\n border-radius: 12px 12px 12px 4px;\n}\n.csk-msg__time {\n font-size: 11px;\n color: #9CA3AF;\n margin-top: 4px;\n padding: 0 4px;\n}\n\n/* ========== Loading 动画 ========== */\n.csk-loading {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 12px 14px;\n margin-bottom: 16px;\n}\n.csk-loading__dot {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n background: #D1D5DB;\n animation: csk-bounce 1.4s ease-in-out infinite both;\n}\n.csk-loading__dot:nth-child(1) { animation-delay: 0s; }\n.csk-loading__dot:nth-child(2) { animation-delay: 0.16s; }\n.csk-loading__dot:nth-child(3) { animation-delay: 0.32s; }\n\n@keyframes csk-bounce {\n 0%, 80%, 100% { transform: scale(0.6); }\n 40% { transform: scale(1); }\n}\n\n/* ========== 输入区 ========== */\n.csk-input-area {\n display: flex;\n align-items: center;\n padding: 10px 12px;\n border-top: 1px solid #E5E7EB;\n background: #fff;\n gap: 8px;\n}\n.csk-input {\n flex: 1;\n border: 1px solid #E5E7EB;\n border-radius: 8px;\n padding: 10px 12px;\n font-size: 14px;\n outline: none;\n transition: border-color 0.2s;\n font-family: inherit;\n resize: none;\n min-height: 20px;\n max-height: 100px;\n}\n.csk-input:focus {\n border-color: var(--csk-primary);\n}\n.csk-input::placeholder {\n color: #9CA3AF;\n}\n.csk-send-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 40px;\n height: 40px;\n min-width: 40px;\n border: none;\n border-radius: 8px;\n background: var(--csk-primary);\n color: #fff;\n cursor: pointer;\n transition: background 0.2s;\n}\n.csk-send-btn:hover {\n background: var(--csk-primary-hover);\n}\n.csk-send-btn:disabled {\n background: #D1D5DB;\n cursor: not-allowed;\n}\n\n/* ========== 清空按钮 ========== */\n.csk-clear-btn {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 6px 12px;\n border: 1px solid #E5E7EB;\n border-radius: 6px;\n background: #fff;\n color: #6B7280;\n font-size: 12px;\n cursor: pointer;\n margin: 0 auto 8px;\n transition: all 0.15s;\n}\n.csk-clear-btn:hover {\n background: #FEE2E2;\n border-color: #FCA5A5;\n color: #DC2626;\n}\n\n/* ========== P1: 知识库分类下拉 ========== */\n.csk-category-bar {\n display: flex;\n align-items: center;\n padding: 6px 12px;\n border-top: 1px solid #E5E7EB;\n background: #F9FAFB;\n gap: 8px;\n}\n.csk-category-bar__label {\n font-size: 12px;\n color: #6B7280;\n white-space: nowrap;\n}\n.csk-category-select {\n flex: 1;\n padding: 5px 8px;\n border: 1px solid #E5E7EB;\n border-radius: 6px;\n font-size: 12px;\n color: #374151;\n background: #fff;\n outline: none;\n cursor: pointer;\n font-family: inherit;\n transition: border-color 0.2s;\n max-width: 200px;\n}\n.csk-category-select:focus {\n border-color: var(--csk-primary);\n}\n\n/* ========== P1: RAG 引用来源卡片 ========== */\n.csk-sources {\n margin-top: 8px;\n border: 1px solid #E5E7EB;\n border-radius: 8px;\n overflow: hidden;\n font-size: 12px;\n max-width: 100%;\n}\n.csk-sources__header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 8px 12px;\n background: #F9FAFB;\n cursor: pointer;\n user-select: none;\n transition: background 0.15s;\n}\n.csk-sources__header:hover {\n background: #F3F4F6;\n}\n.csk-sources__title {\n display: flex;\n align-items: center;\n gap: 4px;\n font-weight: 500;\n color: #374151;\n}\n.csk-sources__arrow {\n transition: transform 0.2s;\n color: #9CA3AF;\n}\n.csk-sources--collapsed .csk-sources__arrow {\n transform: rotate(-90deg);\n}\n.csk-sources__body {\n border-top: 1px solid #E5E7EB;\n padding: 0;\n}\n.csk-sources--collapsed .csk-sources__body {\n display: none;\n}\n.csk-source-item {\n padding: 8px 12px;\n border-bottom: 1px solid #F3F4F6;\n transition: background 0.15s;\n}\n.csk-source-item:last-child {\n border-bottom: none;\n}\n.csk-source-item:hover {\n background: #F9FAFB;\n}\n.csk-source-item__name {\n font-weight: 500;\n color: #1F2937;\n margin-bottom: 2px;\n}\n.csk-source-item__snippet {\n color: #6B7280;\n line-height: 1.4;\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n}\n.csk-source-item__meta {\n font-size: 11px;\n color: #9CA3AF;\n margin-top: 2px;\n}\n\n/* ========== P1: Markdown 渲染样式 ========== */\n.csk-msg--ai .csk-msg__bubble .csk-md-p {\n margin: 0 0 8px;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-p:last-child {\n margin-bottom: 0;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-h1,\n.csk-msg--ai .csk-msg__bubble .csk-md-h2,\n.csk-msg--ai .csk-msg__bubble .csk-md-h3,\n.csk-msg--ai .csk-msg__bubble .csk-md-h4,\n.csk-msg--ai .csk-msg__bubble .csk-md-h5,\n.csk-msg--ai .csk-msg__bubble .csk-md-h6 {\n margin: 12px 0 6px;\n font-weight: 600;\n line-height: 1.3;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-h1 { font-size: 20px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h2 { font-size: 17px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h3 { font-size: 15px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h4 { font-size: 14px; }\n\n.csk-md-code-block {\n background: #1E293B;\n color: #E2E8F0;\n padding: 12px 14px;\n border-radius: 8px;\n overflow-x: auto;\n margin: 8px 0;\n font-size: 13px;\n line-height: 1.5;\n font-family: 'SF Mono', 'Consolas', 'Menlo', monospace;\n}\n.csk-md-code-block code {\n background: none;\n padding: 0;\n border-radius: 0;\n font-size: inherit;\n color: inherit;\n}\n.csk-md-inline-code {\n background: #E5E7EB;\n color: #DC2626;\n padding: 1px 6px;\n border-radius: 4px;\n font-size: 13px;\n font-family: 'SF Mono', 'Consolas', 'Menlo', monospace;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-ul,\n.csk-msg--ai .csk-msg__bubble .csk-md-ol {\n padding-left: 20px;\n margin: 6px 0;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-ul li,\n.csk-msg--ai .csk-msg__bubble .csk-md-ol li {\n margin-bottom: 4px;\n}\n.csk-md-blockquote {\n border-left: 3px solid var(--csk-primary);\n padding-left: 12px;\n margin: 8px 0;\n color: #6B7280;\n}\n.csk-md-link {\n color: var(--csk-primary);\n text-decoration: none;\n}\n.csk-md-link:hover {\n text-decoration: underline;\n}\n.csk-md-hr {\n border: none;\n border-top: 1px solid #E5E7EB;\n margin: 12px 0;\n}\n\n/* ========== P2: 会话管理面板 ========== */\n.csk-history-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n border: none;\n background: transparent;\n color: #fff;\n cursor: pointer;\n border-radius: 6px;\n transition: background 0.15s;\n}\n.csk-history-btn:hover {\n background: rgba(255, 255, 255, 0.2);\n}\n.csk-history-panel {\n position: absolute;\n top: 48px;\n left: 0;\n right: 0;\n bottom: 0;\n background: #fff;\n z-index: 10;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\n.csk-history-panel--hidden {\n display: none;\n}\n.csk-history-panel__header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 12px 16px;\n border-bottom: 1px solid #E5E7EB;\n background: #F9FAFB;\n}\n.csk-history-panel__title {\n font-size: 14px;\n font-weight: 600;\n color: #1F2937;\n}\n.csk-history-panel__back {\n display: flex;\n align-items: center;\n gap: 4px;\n padding: 4px 10px;\n border: 1px solid #E5E7EB;\n border-radius: 6px;\n background: #fff;\n color: #374151;\n font-size: 12px;\n cursor: pointer;\n transition: all 0.15s;\n}\n.csk-history-panel__back:hover {\n background: #F3F4F6;\n}\n.csk-history-panel__list {\n flex: 1;\n overflow-y: auto;\n padding: 8px;\n}\n.csk-history-panel__list::-webkit-scrollbar {\n width: 4px;\n}\n.csk-history-panel__list::-webkit-scrollbar-thumb {\n background: #E5E7EB;\n border-radius: 2px;\n}\n.csk-history-item {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 10px 12px;\n border-radius: 8px;\n cursor: pointer;\n transition: background 0.15s;\n margin-bottom: 4px;\n}\n.csk-history-item:hover {\n background: #F3F4F6;\n}\n.csk-history-item__info {\n flex: 1;\n min-width: 0;\n}\n.csk-history-item__id {\n font-size: 13px;\n font-weight: 500;\n color: #1F2937;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.csk-history-item__meta {\n font-size: 11px;\n color: #9CA3AF;\n margin-top: 2px;\n}\n.csk-history-item__actions {\n display: flex;\n gap: 4px;\n margin-left: 8px;\n opacity: 0;\n transition: opacity 0.15s;\n}\n.csk-history-item:hover .csk-history-item__actions {\n opacity: 1;\n}\n.csk-history-action {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 28px;\n height: 28px;\n border: none;\n border-radius: 6px;\n cursor: pointer;\n font-size: 12px;\n transition: all 0.15s;\n}\n.csk-history-action--export {\n background: #EFF6FF;\n color: #2563EB;\n}\n.csk-history-action--export:hover {\n background: #DBEAFE;\n}\n.csk-history-action--delete {\n background: #FEF2F2;\n color: #DC2626;\n}\n.csk-history-action--delete:hover {\n background: #FEE2E2;\n}\n.csk-history-panel__empty {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 40px 20px;\n color: #9CA3AF;\n font-size: 13px;\n text-align: center;\n}\n.csk-history-panel__empty-icon {\n font-size: 32px;\n margin-bottom: 8px;\n opacity: 0.5;\n}\n.csk-history-panel__loading {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 20px;\n color: #9CA3AF;\n font-size: 13px;\n}\n.csk-history-panel__loadmore {\n display: block;\n width: 100%;\n padding: 10px;\n border: none;\n background: #F9FAFB;\n color: #6B7280;\n font-size: 12px;\n cursor: pointer;\n text-align: center;\n transition: background 0.15s;\n}\n.csk-history-panel__loadmore:hover {\n background: #F3F4F6;\n}\n\n/* ========== 移动端适配 ========== */\n@media (max-width: 480px) {\n .csk-window {\n width: 100vw !important;\n height: 100vh !important;\n bottom: 0 !important;\n right: 0 !important;\n left: 0 !important;\n border-radius: 0;\n }\n .csk-header {\n border-radius: 0;\n }\n}\n`}(n),document.head.appendChild(x))}function v(){return"undefined"!=typeof crypto&&crypto.randomUUID?crypto.randomUUID():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,n=>{const e=16*Math.random()|0;return("x"===n?e:3&e|8).toString(16)})}function E(n){const e={"&":"&","<":"<",">":">",'"':""","'":"'"};return n.replace(/[&<>"']/g,n=>e[n]||n)}function I(){return Date.now()}function C(n,e){const t=document.createElement("div");t.id="csk-launcher",t.className="csk-launcher csk-launcher--"+("left-bottom"===n.position?"left":"right"),t.setAttribute("title",n.title),t.setAttribute("aria-label",n.title),t.setAttribute("role","button"),t.setAttribute("tabindex","0"),t.innerHTML=n.launcherIcon;const r=function(n,e){let t=null;return function(...r){null!==t&&clearTimeout(t),t=setTimeout(()=>{n.apply(this,r),t=null},e)}}(e,300);return t.addEventListener("click",r),t.addEventListener("keydown",n=>{"Enter"!==n.key&&" "!==n.key||(n.preventDefault(),r())}),t}function $(n,e,t){const r=document.createElement("div");r.className="csk-msg csk-msg--user";const o=document.createElement("div");o.className="csk-msg__bubble",o.textContent=e;const s=document.createElement("div");return s.className="csk-msg__time",s.textContent=N(t),r.appendChild(o),r.appendChild(s),n.appendChild(r),r}function S(n,e,t,r){const o=document.createElement("div");o.className="csk-msg csk-msg--ai";const s=document.createElement("div");s.className="csk-msg__bubble",r?s.innerHTML=r(e):s.textContent=e;const i=document.createElement("div");return i.className="csk-msg__time",i.textContent=N(t),o.appendChild(s),o.appendChild(i),n.appendChild(o),o}function A(n,e){const t=n.querySelector(".csk-sources");if(t&&t.remove(),!e||0===e.length)return;const r=document.createElement("div");r.className="csk-sources csk-sources--collapsed";const o=document.createElement("div");o.className="csk-sources__header";const s=document.createElement("span");s.className="csk-sources__title",s.textContent=`📚 ${i("source_count",{n:e.length})}`;const a=document.createElement("span");a.className="csk-sources__arrow",a.textContent="▼",o.appendChild(s),o.appendChild(a),o.addEventListener("click",()=>{r.classList.toggle("csk-sources--collapsed")});const c=document.createElement("div");c.className="csk-sources__body";for(const n of e){const e=document.createElement("div");e.className="csk-source-item";const t=document.createElement("div");if(t.className="csk-source-item__name",t.textContent=n.title||n.sourceName||"未知文档",n.snippet){const t=document.createElement("div");t.className="csk-source-item__snippet",t.textContent=n.snippet,e.appendChild(t)}const r=document.createElement("div");r.className="csk-source-item__meta";const o=[];n.sourceName&&o.push(n.sourceName),void 0!==n.chunkIndex&&o.push(`分块 #${n.chunkIndex}`),void 0!==n.score&&o.push(`相关度 ${(100*n.score).toFixed(0)}%`),r.textContent=o.join(" · "),e.appendChild(t),e.appendChild(r),c.appendChild(e)}r.appendChild(o),r.appendChild(c);const l=n.querySelector(".csk-msg__time");l?n.insertBefore(r,l):n.appendChild(r)}function F(n){n.scrollTop=n.scrollHeight}function N(n){const e=new Date(n);return`${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}`}function L(n){return`csk_history_${n}`}function D(n,e){try{let t=e;t.length>200&&(t=t.slice(50),r.warn(`消息数量达到上限,已裁剪最早 50 条,当前 ${t.length} 条`));const o={messages:t,updatedAt:Date.now()};localStorage.setItem(L(n),JSON.stringify(o))}catch(n){n instanceof Error&&"QuotaExceededError"===n.name?r.error("localStorage 空间不足,会话历史保存失败。建议清空历史记录。"):r.error("保存会话历史失败",n)}}function B(n){try{localStorage.removeItem(L(n))}catch(n){r.warn("清空会话历史失败",n)}}const M="\0CODEBLOCK_",z="\0INLINECODE_";function T(n){if(!n||"string"!=typeof n)return"";const e=[];let t=n;t=t.replace(/```(\w*)\n([\s\S]*?)```/g,(n,t,r)=>{const o=e.length,s=E(r.trimEnd()),i=t?` class="language-${E(t)}"`:"";return e.push(`
${s}
`),`${M}${o}\0`});const r=[];t=t.replace(/`([^`\n]+)`/g,(n,e)=>{const t=r.length;return r.push(`${E(e)}`),`${z}${t}\0`}),t=E(t),t=q(t,M,e),t=q(t,z,r);const o=t.split("\n"),s=[];let i=!1,a="",c=!1,l=[];for(let n=0;n')){u(),p(),m(),s.push(e);continue}const t=e.match(/^(#{1,6})\s+(.+)/);if(t){u(),p(),m();const n=t[1].length;s.push(`${t[2]}`);continue}const r=e.match(/^>\s?(.*)/);if(r){u(),p(),c||(c=!0,s.push('
')),s.push(`

${d(r[1])}

`);continue}c&&m();const h=e.match(/^[\-\*]\s+(.+)/);if(h){u(),m(),i&&"ul"===a||(p(),i=!0,a="ul",s.push('":""),i=!1,a="")}function m(){c&&(s.push("
"),c=!1)}}function q(n,e,t){return n.replace(new RegExp(e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")+"(\\d+)\0","g"),(n,e)=>t[parseInt(e)]||"")}let j,H=null,R=[],U=null,P=null,O=null,W=null,K=null,V=null,J=null,X=null,Y=!1,G=!1;function Q(n,e){H=n,U=e.messagesContainer,P=e.inputEl,O=e.sendBtn,W=e.clearBtn,K=e.categorySelect,V=e.historyPanel,J=e.showLoading,X=e.hideLoading,j=n.categoryId,G=!!n.categoryId||!!n.showCategorySwitch,function(){if(!P||!O)return;O.addEventListener("click",()=>en()),P.addEventListener("keydown",n=>{"Enter"!==n.key||n.shiftKey||(n.preventDefault(),en())}),P.addEventListener("input",()=>nn()),W&&W.addEventListener("click",()=>function(){if(!H)return;if(!confirm(i("clear_confirm")))return;if(R=[],U){U.querySelectorAll(".csk-msg, .csk-loading").forEach(n=>n.remove())}W&&(W.style.display="none");B(H.integrateId);const n=function(){const n="undefined"!=typeof crypto&&crypto.randomUUID?crypto.randomUUID().substring(0,8):Math.random().toString(36).substring(2,10);return`sdk_${Date.now()}_${n}`}();e=n,a&&(a.chatId=e),b(H.integrateId,H.userId,n),r.lifecycleClear(H.integrateId),r.info(`新 chatId=${n}`);var e}())}(),n.showCategorySwitch&&K&&async function(){if(!K)return;try{const n=await async function(){const n=c("/category/tree");try{const e=await d(n);if(!e.ok)throw new u(p(e.status),`http_${e.status}`);const t=await e.json();return t.success&&Array.isArray(t.data)?(r.info(`加载分类树成功 count=${t.data.length}`),t.data):[]}catch(n){return n instanceof u?r.error(`加载分类树失败: ${n.message}`):r.error("加载分类树失败",n),[]}}();if(0===n.length)return;K.innerHTML=``;const e=(n,t=0)=>{for(const r of n){const n=document.createElement("option");n.value=String(r.id),n.textContent=`${" ".repeat(t)}${r.name}`,void 0!==j&&String(r.id)===String(j)&&(n.selected=!0),K.appendChild(n),r.children&&r.children.length>0&&e(r.children,t+1)}};e(n),r.info(`知识库分类加载成功 count=${n.length}`)}catch(n){r.error(i("category_load_error"),n)}}()}async function Z(){if(H&&U&&(await f(),await async function(){if(!H||!U)return;const n=(null==a?void 0:a.chatId)||"";if(!n)return;try{const e=await async function(n){const e=c(`/conversation/${n}/messages`);try{const n=await d(e);if(!n.ok)throw new u(p(n.status),`http_${n.status}`);const t=await n.json();return{messages:t.success&&Array.isArray(t.data)?t.data:[],total:t.total||0}}catch(n){return r.error("加载会话消息失败",n),{messages:[],total:0}}}(n);e.messages.length>0&&(R=e.messages.map((n,e)=>({id:v(),role:"USER"===n.messageType?"user":"ai",content:n.content,timestamp:new Date(n.createTime).getTime()})),tn(),r.info(`从后端加载 ${R.length} 条历史消息`),D(H.integrateId,R))}catch(n){r.warn("从后端加载历史消息失败",n)}}(),0===R.length)){const n=function(n){try{const e=localStorage.getItem(L(n));if(!e)return[];const t=JSON.parse(e);return t&&Array.isArray(t.messages)?(r.info(`加载历史消息 integrateId=${n} count=${t.messages.length}`),t.messages):[]}catch(n){return r.warn("加载会话历史失败",n),[]}}(H.integrateId);n.length>0&&(R=n,tn(),r.info(`从本地缓存恢复 ${n.length} 条消息`))}}function nn(){if(!O||!P)return;P.value.trim().length>0&&!Y?O.removeAttribute("disabled"):O.setAttribute("disabled","true")}async function en(){if(!P||!H||Y)return;const n=P.value.trim();if(""===n)return;P.value="",nn(),P.style.height="auto",Y=!0,nn(),H.chatId||await f();const e=I();U&&$(U,n,e);const t={id:v(),role:"user",content:n,timestamp:e};R.push(t),W&&R.length>0&&(W.style.display="inline-flex"),U&&F(U),J&&J(),U&&F(U);try{let e;const t=I(),o=G&&(void 0!==j||void 0!==H.categoryId);e=H.streaming?await async function(n,e,t){return new Promise((r,o)=>{let s=null,a="",c=!1;h(n,n=>{if(a+=n,!c&&U){X&&X();const{bubble:n}=function(n,e){const t=document.createElement("div");t.className="csk-msg csk-msg--ai";const r=document.createElement("div");r.className="csk-msg__bubble",r.innerHTML="";const o=document.createElement("div");return o.className="csk-msg__time",o.textContent=N(e),t.appendChild(r),t.appendChild(o),n.appendChild(t),{wrapper:t,bubble:r}}(U,e);s=n,c=!0}s&&(s.textContent=a),U&&F(U)},()=>{c||""!==a?(s&&a&&(s.innerHTML=T(a)),r(a)):m(n).then(r).catch(o)},n=>{a.length>0?(s&&(s.innerHTML=T(a+"\n\n"+i("stream_interrupted"))),r(a)):o(n)},j,t)})}(n,t,o):await m(n),X&&X(),!H.streaming&&U&&S(U,e,t,T);const s={id:v(),role:"ai",content:e,timestamp:t};R.push(s),D(H.integrateId,R),U&&F(U),o&&async function(n,e){try{const t=await g(n,j);if(t.length>0){const n=t.map(n=>{var e,t;return{documentId:n.documentId||"",title:n.title||"",sourceName:n.sourceName||"",chunkIndex:null!==(e=n.chunkIndex)&&void 0!==e?e:0,score:null!==(t=n.score)&&void 0!==t?t:0,snippet:n.snippet||""}});if(e.sources=n,U){const e=U.querySelector(".csk-msg--ai:last-of-type");e&&A(e,n)}H&&D(H.integrateId,R)}}catch(n){r.warn("获取引用来源失败",n)}}(n,s)}catch(n){X&&X();const e=n instanceof u?n.message:i("error_send");if(U){const n=document.createElement("div");n.className="csk-msg csk-msg--ai";const t=document.createElement("div");t.className="csk-msg__bubble",t.style.color="#DC2626",t.textContent=`⚠ ${e}`,n.appendChild(t),U.appendChild(n)}r.error(`发送失败 integrateId=${H.integrateId}`,n)}finally{Y=!1,nn()}}function tn(){if(!U)return;const n=U.querySelector(".csk-history-panel");U.querySelectorAll(".csk-msg, .csk-loading").forEach(n=>n.remove());for(const n of R)if("user"===n.role)$(U,n.content,n.timestamp);else{const e=S(U,n.content,n.timestamp,T);n.sources&&n.sources.length>0&&A(e,n.sources)}F(U),W&&R.length>0&&(W.style.display="inline-flex"),n&&!U.contains(n)&&U.appendChild(n)}async function rn(){if(!V||!H)return;const n=V.querySelector("#csk-history-list");if(n){n.innerHTML='
加载中...
';try{const e=await k(1,50,H.userId,H.integrateId);!function(n,e,t,r){if(n.innerHTML="",0===e.length){const e=document.createElement("div");return e.className="csk-history-panel__empty",e.innerHTML=`\n
💬
\n
${i("history_empty")}
\n `,void n.appendChild(e)}for(const o of e){const e=document.createElement("div");e.className="csk-history-item";const s=document.createElement("div");s.className="csk-history-item__info";const a=document.createElement("div");a.className="csk-history-item__id",a.textContent=o.chatId||o.id;const c=document.createElement("div");c.className="csk-history-item__meta";const l=[];void 0!==o.messageCount&&l.push(`${o.messageCount} 条消息`),o.lastMessageTime?l.push(o.lastMessageTime):o.createdAt&&l.push(o.createdAt),c.textContent=l.join(" · "),s.appendChild(a),s.appendChild(c);const d=document.createElement("div");d.className="csk-history-item__actions";const u=document.createElement("button");u.className="csk-history-action csk-history-action--export",u.setAttribute("title",i("history_export")),u.innerHTML='',u.addEventListener("click",n=>{n.stopPropagation(),t(o.id)});const p=document.createElement("button");p.className="csk-history-action csk-history-action--delete",p.setAttribute("title",i("history_delete")),p.innerHTML='',p.addEventListener("click",n=>{n.stopPropagation(),r(o.id)}),d.appendChild(u),d.appendChild(p),e.appendChild(s),e.appendChild(d),n.appendChild(e)}}(n,e.list.map(n=>({id:n.conversationId||n.chatId||"",chatId:n.conversationId||n.chatId||"",messageCount:n.messageCount,lastMessageTime:n.lastMessageTime,createdAt:n.firstMessageTime||n.createdAt})),n=>{window.open(c(`/conversation/${n}/export`),"_blank")},async n=>{if(!confirm(i("history_delete_confirm")))return;await async function(n){const e=c(`/conversation/${n}`);try{const t=await d(e,{method:"DELETE"});if(!t.ok)throw new u(p(t.status),`http_${t.status}`);const o=await t.json();return r.info(`删除会话 id=${n} success=${o.success}`),o.success||!1}catch(n){return r.error("删除会话失败",n),!1}}(n)&&rn()})}catch(e){r.error(i("history_load_error"),e),n.innerHTML=`
${i("history_load_error")}
`}}}let on=null,sn=!1,an=null,cn=null,ln=null,dn=null,un=null,pn=null,mn=null,hn=null,gn=null,kn=null,fn=null;function yn(){cn&&cn.classList.remove("csk-window--hidden")}function bn(){cn&&cn.classList.add("csk-window--hidden")}function xn(){cn&&(cn.classList.contains("csk-window--hidden")?(yn(),setTimeout(()=>{dn&&dn.focus()},100)):bn())}const _n={init:function(n){if(sn)return void r.warn("SDK 已初始化,请先调用 destroy() 再重新初始化");const t=function(n){var e,t,o,s,i,a;if(!n.integrateId||"string"!=typeof n.integrateId&&"number"!=typeof n.integrateId||"string"==typeof n.integrateId&&""===n.integrateId.trim())return r.error('integrateId 是必传参数(对应后端 roleId 客服角色 ID),请检查 init() 调用。示例:ChatbotSDK.init({ integrateId: 1, requestDomain: "https://api.example.com" })'),null;if(!n.requestDomain||"string"!=typeof n.requestDomain||""===n.requestDomain.trim())return r.error('requestDomain 是必传参数,请检查 init() 调用。示例:ChatbotSDK.init({ integrateId: 1, requestDomain: "https://api.example.com" })'),null;try{new URL(n.requestDomain)}catch(e){return r.error(`requestDomain 不是合法的 URL 格式:${n.requestDomain}。请提供完整的域名,如 https://api.example.com`),null}const c={integrateId:String(n.integrateId).trim(),requestDomain:n.requestDomain.replace(/\/+$/,""),userId:n.userId,categoryId:n.categoryId,showCategorySwitch:null!==(e=n.showCategorySwitch)&&void 0!==e&&e,title:n.title||"AI 智能助手",width:null!==(t=n.width)&&void 0!==t?t:380,position:"left-bottom"===n.position?"left-bottom":"right-bottom",primaryColor:n.primaryColor||"#4F46E5",launcherIcon:n.launcherIcon||'\n \n \n',showClear:null===(o=n.showClear)||void 0===o||o,showAdminPanel:null!==(s=n.showAdminPanel)&&void 0!==s&&s,streaming:null===(i=n.streaming)||void 0===i||i,locale:n.locale||"zh-CN",debug:null===(a=n.debug)||void 0===a||a,chatId:""};return r.info(`配置解析完成 integrateId(=roleId)=${c.integrateId} userId(=accountId)=${c.userId||"(未设置)"} requestDomain=${c.requestDomain}`),c}(n);if(!t)return;var c;on=t,function(n){if(o[n])s=n;else{const e=n.split("-")[0],t=Object.keys(o).find(n=>n.startsWith(e));t&&(s=t)}}(on.locale),c=on.debug,e=c,function(n){a=n}(on),w(on),an=C(on,xn),document.body.appendChild(an);const l=function(n){const e=document.createElement("div");e.id="csk-window",e.className=`csk-root csk-window csk-window--${"left-bottom"===n.position?"left":"right"} csk-window--hidden`;const t=document.createElement("div");t.className="csk-header";const r=document.createElement("span");r.className="csk-header__title",r.textContent=n.title;const o=document.createElement("div");o.className="csk-header__actions";const s=document.createElement("button");s.className="csk-history-btn",s.setAttribute("title",i("history_title")),s.innerHTML='';const a=document.createElement("button");a.className="csk-header__btn csk-header__btn--minimize",a.setAttribute("title",i("minimize")),a.innerHTML='',a.addEventListener("click",()=>{e.classList.add("csk-window--hidden")});const c=document.createElement("button");c.className="csk-header__btn csk-header__btn--close",c.setAttribute("title",i("close")),c.innerHTML='',c.addEventListener("click",()=>{e.classList.add("csk-window--hidden")}),o.appendChild(s),o.appendChild(a),o.appendChild(c),t.appendChild(r),t.appendChild(o);const l=document.createElement("div");l.id="csk-messages",l.className="csk-messages";const d=document.createElement("div");d.className="csk-history-panel csk-history-panel--hidden",d.innerHTML=`\n
\n ${i("history_title")}\n \n
\n
\n `,l.appendChild(d);const u=d.querySelector("#csk-history-back");u&&u.addEventListener("click",()=>{d.classList.add("csk-history-panel--hidden")}),s.addEventListener("click",n=>{n.stopPropagation();const t=d.classList.contains("csk-history-panel--hidden");d.classList.toggle("csk-history-panel--hidden"),t&&e.dispatchEvent(new CustomEvent("csk:loadHistory"))});let p=null;if(n.showCategorySwitch){const n=document.createElement("div");n.className="csk-category-bar";const r=document.createElement("span");r.className="csk-category-bar__label",r.textContent="📚",p=document.createElement("select"),p.id="csk-category-select",p.className="csk-category-select",p.innerHTML=``,p.addEventListener("change",()=>{const n=p.value;e.dispatchEvent(new CustomEvent("csk:categoryChange",{detail:{categoryId:n?Number(n):void 0}}))}),n.appendChild(r),n.appendChild(p),e.appendChild(t),e.appendChild(l),e.appendChild(n)}else e.appendChild(t),e.appendChild(l);const m=document.createElement("div");m.className="csk-input-area";const h=document.createElement("textarea");h.id="csk-input",h.className="csk-input",h.setAttribute("placeholder",i("placeholder")),h.setAttribute("rows","1"),h.setAttribute("autofocus","");const g=document.createElement("button");g.id="csk-send-btn",g.className="csk-send-btn",g.setAttribute("title",i("send")),g.setAttribute("disabled","true"),g.innerHTML='',m.appendChild(h),m.appendChild(g),e.appendChild(m);let k=null;n.showClear&&(k=document.createElement("button"),k.className="csk-clear-btn",k.textContent=i("clear"),k.style.display="none",e.insertBefore(k,m));let f=null;return{window:e,messagesContainer:l,inputEl:h,sendBtn:g,clearBtn:k,categorySelect:p,historyPanel:d,showLoading:function(){if(f)return f.style.display="flex",f;const n=document.createElement("div");return n.className="csk-loading",n.innerHTML='\n
\n
\n
\n ',l.appendChild(n),f=n,n},hideLoading:function(){f&&f.parentNode&&(f.parentNode.removeChild(f),f=null)}}}(on);cn=l.window,ln=l.messagesContainer,dn=l.inputEl,un=l.sendBtn,pn=l.clearBtn,mn=l.categorySelect,hn=l.historyPanel,gn=l.showLoading,kn=l.hideLoading,document.body.appendChild(cn);const d=cn.querySelector(".csk-header");d&&(fn=function(n,e){let t=!1,r=0,o=0,s=0,i=0;const a=n=>{t=!0,r=n.clientX,o=n.clientY;const a=e.getBoundingClientRect();s=r-a.left,i=o-a.top,document.addEventListener("mousemove",c),document.addEventListener("mouseup",l)},c=n=>{if(!t)return;const r=n.clientX-s,o=n.clientY-i,a=window.innerWidth-e.offsetWidth,c=window.innerHeight-e.offsetHeight;e.style.right="auto",e.style.bottom="auto",e.style.left=`${Math.max(0,Math.min(r,a))}px`,e.style.top=`${Math.max(0,Math.min(o,c))}px`},l=()=>{t=!1,document.removeEventListener("mousemove",c),document.removeEventListener("mouseup",l)};return n.addEventListener("mousedown",a),()=>{n.removeEventListener("mousedown",a),document.removeEventListener("mousemove",c),document.removeEventListener("mouseup",l)}}(d,cn)),Q(on,{messagesContainer:ln,inputEl:dn,sendBtn:un,clearBtn:pn,categorySelect:mn,historyPanel:hn,showLoading:gn,hideLoading:kn}),cn.addEventListener("csk:categoryChange",n=>{var e;e=n.detail.categoryId,j=e,G=void 0!==e,r.lifecycleCategoryChange(null!=e?e:"全部")}),cn.addEventListener("csk:loadHistory",()=>{rn()}),sn=!0,r.lifecycleInit(on.integrateId,on.requestDomain),Z().catch(n=>{r.warn("chatId 初始化失败,将在发送消息时重试",n)})},destroy:function(){if(!sn)return;an&&an.parentNode&&(an.parentNode.removeChild(an),an=null),cn&&cn.parentNode&&(cn.parentNode.removeChild(cn),cn=null),fn&&(fn(),fn=null),x&&x.parentNode&&(x.parentNode.removeChild(x),x=null),document.querySelectorAll("style[data-csk-sdk]").forEach(n=>n.remove());const n=null==on?void 0:on.integrateId;on=null,sn=!1,ln=null,dn=null,un=null,pn=null,mn=null,hn=null,gn=null,kn=null,r.lifecycleDestroy(n||"")},open:yn,close:bn,toggle:xn,clearHistory:function(){on&&(pn?pn.click():confirm("确定清空所有对话记录?")&&B(on.integrateId))}};return"undefined"!=typeof window&&(window.ChatbotSDK=_n),_n}(); +var ChatbotSDK=function(){"use strict";const e="[ChatbotSDK]";let n=!0;const t={},r={info(t,r){n&&console.log(e,t,void 0!==r?r:"")},warn(t,r){n&&console.warn(e,t,void 0!==r?r:"")},error(n,t){console.error(e,n,void 0!==t?t:"")},time(e){t[e]=Date.now()},timeEnd(r,o){const s=t[r];if(void 0!==s){const i=Date.now()-s;if(delete t[r],n){const n=o?`${o} ${i}ms`:`${r} ${i}ms`;console.log(e,n)}return i}return 0},lifecycleInit(e,n){this.info(`初始化完成 integrateId=${e} requestDomain=${n}`)},lifecycleDestroy(e){this.info(`销毁实例 integrateId=${e}`)},lifecycleSend(e,n){this.info(`发送消息 integrateId=${e} length=${n}`),this.time(`send_${e}`)},lifecycleReply(e,n){const t=this.timeEnd(`send_${e}`,"AI 回复");this.info(`AI 回复 integrateId=${e} length=${n} duration=${t}ms`)},lifecycleError(e,n,t){this.timeEnd(`send_${e}`),this.error(`请求失败 integrateId=${e} status=${n} message=${t}`)},lifecycleClear(e){this.info(`清空会话 integrateId=${e}`)},lifecycleStreamDone(e,n){const t=this.timeEnd(`send_${e}`,"流式回复");this.info(`流式回复完成 integrateId=${e} length=${n} duration=${t}ms`)},lifecycleCategoryChange(e){this.info(`切换知识库分类 categoryId=${e}`)}};const o={"zh-CN":{title:"AI 智能助手",minimize:"最小化",close:"关闭",placeholder:"输入您的问题...",send:"发送",loading:"正在思考...",stream_interrupted:"回复被中断",stream_unstable:"网络不稳定,内容可能不完整",category_placeholder:"选择知识库分类",category_all:"全部分类",category_load_error:"加载分类失败",source_title:"参考来源",source_count:"{n} 条参考来源",source_loading:"加载来源中...",clear:"清空对话",clear_confirm:"确定清空所有对话记录?",history_title:"历史会话",history_empty:"暂无历史会话",history_load_error:"加载会话列表失败",history_delete_confirm:"确定删除该会话?",history_export:"导出",history_delete:"删除",error_network:"网络连接失败,请检查网络",error_timeout:"请求超时,请稍后重试",error_server:"服务器异常,请稍后重试",error_cors:"跨域请求被拦截,请联系管理员将当前域名加入 API 白名单",error_auth:"鉴权失败,请联系管理员",error_forbidden:"无访问权限,请联系管理员配置",error_not_found:"请求的资源不存在",error_rate_limit:"请求过于频繁,请稍后重试",error_unavailable:"服务暂不可用,请稍后重试",error_unknown:"请求发生未知错误",error_send:"发送失败,请稍后重试",error_stream_unsupported:"浏览器不支持流式读取"},en:{title:"AI Assistant",minimize:"Minimize",close:"Close",placeholder:"Type your question...",send:"Send",loading:"Thinking...",stream_interrupted:"Response interrupted",stream_unstable:"Network unstable, content may be incomplete",category_placeholder:"Select category",category_all:"All categories",category_load_error:"Failed to load categories",source_title:"Sources",source_count:"{n} source(s)",source_loading:"Loading sources...",clear:"Clear chat",clear_confirm:"Clear all conversation history?",history_title:"History",history_empty:"No conversations yet",history_load_error:"Failed to load conversations",history_delete_confirm:"Delete this conversation?",history_export:"Export",history_delete:"Delete",error_network:"Network connection failed",error_timeout:"Request timed out, please try again",error_server:"Server error, please try again later",error_cors:"CORS request blocked. Please contact admin to whitelist your domain",error_auth:"Authentication failed, please contact admin",error_forbidden:"Access denied, please contact admin",error_not_found:"Resource not found",error_rate_limit:"Too many requests, please try again later",error_unavailable:"Service temporarily unavailable",error_unknown:"Unknown request error",error_send:"Failed to send, please try again",error_stream_unsupported:"Browser does not support streaming"}};let s="zh-CN";function i(e,n){let t=(o[s]||o["zh-CN"])[e]||o["zh-CN"][e]||e;if(n)for(const[e,r]of Object.entries(n))t=t.replace(`{${e}}`,String(r));return t}let a=null;function c(e){a&&(a.chatId=e)}function l(){return(null==a?void 0:a.chatId)||""}function d(e){if(!a)throw new Error("API 配置未初始化");return`${a.requestDomain.replace(/\/+$/,"")}${e.startsWith("/")?e:`/${e}`}`}function u(e,n,t){null!=t&&("string"==typeof t&&""===t.trim()||e.set(n,String(t)))}async function p(e,n={},t=3e4){const r=new AbortController,o=setTimeout(()=>r.abort(),t);try{return await fetch(e,Object.assign(Object.assign({},n),{signal:r.signal,mode:"cors",credentials:"include"}))}catch(e){if(e instanceof DOMException&&"AbortError"===e.name)throw new m(i("error_timeout"),"timeout");if(e instanceof TypeError&&e.message.includes("Failed to fetch"))throw new m(i("error_cors"),"cors");throw new m(i("error_network"),"network")}finally{clearTimeout(o)}}class m extends Error{constructor(e,n){super(e),this.name="CskError",this.type=n}}function h(e){switch(e){case 401:return i("error_auth");case 403:return i("error_forbidden");case 404:return i("error_not_found");case 429:return i("error_rate_limit");case 500:return i("error_server");case 502:case 503:return i("error_unavailable");default:return`${i("error_unknown")}(${e})`}}async function g(e){const n=function(e){const n=new URLSearchParams;return n.set("message",e),n.set("chatId",a.chatId),u(n,"roleId",a.integrateId),u(n,"accountId",a.userId),d(`/ai/assistant_app/chat/sync?${n.toString()}`)}(e);r.lifecycleSend(a.integrateId,e.length);try{const e=await p(n);if(!e.ok){const n=h(e.status);throw r.lifecycleError(a.integrateId,String(e.status),n),new m(n,`http_${e.status}`)}const t=await e.text();return r.lifecycleReply(a.integrateId,t.length),t}catch(e){if(e instanceof m)throw e;throw r.lifecycleError(a.integrateId,"unknown",String(e)),new m(i("error_unknown"),"unknown")}}async function k(e,n,t,o,s,c){var l;const g=c?function(e,n){const t=new URLSearchParams;return t.set("message",e),t.set("chatId",a.chatId),t.set("rewriteStrategy","REWRITE"),u(t,"roleId",a.integrateId),u(t,"accountId",a.userId),u(t,"categoryId",null!=n?n:a.categoryId),d(`/ai/assistant_app/chat/rag/sse?${t.toString()}`)}(e,s):function(e,n){const t=new URLSearchParams;return t.set("message",e),t.set("chatId",a.chatId),u(t,"roleId",a.integrateId),u(t,"accountId",a.userId),u(t,"categoryId",null!=n?n:a.categoryId),d(`/ai/assistant_app/chat/sse?${t.toString()}`)}(e,s);let k="";r.lifecycleSend(a.integrateId,e.length);try{const e=await p(g,{},6e4);if(!e.ok){const n=h(e.status);return r.lifecycleError(a.integrateId,String(e.status),n),void o(new m(n,`http_${e.status}`))}const s=null===(l=e.body)||void 0===l?void 0:l.getReader();if(!s)return void o(new m(i("error_stream_unsupported"),"stream_unsupported"));const c=new TextDecoder("utf-8",{stream:!0});let d="";try{for(;;){const{done:e,value:t}=await s.read();if(e)break;d+=c.decode(t,{stream:!0});const r=d.split("\n");d=r.pop()||"";for(const e of r){const t=e.trim();if(t&&!t.startsWith(":"))if(t.startsWith("data:")){const e=t.substring(5).trim();e&&(k+=e,n(e))}else{if("[DONE]"===t)break;t.startsWith("event:")||t.startsWith("id:")||t.startsWith("retry:")||(k+=t,n(t))}}}if(d.trim()){const e=d.trim();if(e.startsWith("data:")){const t=e.substring(5).trim();t&&(k+=t,n(t))}else"[DONE]"!==e&&(k+=e,n(e))}}catch(e){if(!(k.length>0))throw e;n("\n\n"+i("stream_unstable"))}finally{s.releaseLock()}r.lifecycleStreamDone(a.integrateId,k.length),t()}catch(e){e instanceof m?o(e):(r.lifecycleError(a.integrateId,"unknown",String(e)),o(new m(i("error_network"),"network")))}}async function f(e,n){const t=function(e,n){const t=new URLSearchParams;return t.set("message",e),t.set("chatId",a.chatId),t.set("rewriteStrategy","REWRITE"),u(t,"roleId",a.integrateId),u(t,"accountId",a.userId),u(t,"categoryId",null!=n?n:a.categoryId),d(`/ai/assistant_app/rag/sources?${t.toString()}`)}(e,n);try{const e=await p(t);if(!e.ok)throw new m(h(e.status),`http_${e.status}`);const n=await e.json();return n.success&&Array.isArray(n.data)?(r.info(`获取引用来源 count=${n.data.length}`),n.data):[]}catch(e){return r.error("获取引用来源失败",e),[]}}async function y(e=1,n=20,t,o){let s=`/conversation/list?page=${e}&size=${n}`;t&&(s+=`&accountId=${encodeURIComponent(t)}`),o&&(s+=`&roleId=${encodeURIComponent(o)}`);const i=d(s);try{const e=await p(i);if(!e.ok)throw new m(h(e.status),`http_${e.status}`);const n=await e.json();return{list:n.success&&Array.isArray(n.data)?n.data:[],total:n.total||0,pages:n.pages||0}}catch(e){return r.error("加载会话列表失败",e),{list:[],total:0,pages:0}}}async function b(e){const n=d(`/conversation/${e}/messages`);try{const e=await p(n);if(!e.ok)throw new m(h(e.status),`http_${e.status}`);const t=await e.json();return{messages:t.success&&Array.isArray(t.data)?t.data:[],total:t.total||0}}catch(e){return r.error("加载会话消息失败",e),{messages:[],total:0}}}async function x(){if(!a)return"";const e=function(e,n){try{return localStorage.getItem(_(e,n))||""}catch(e){return""}}(a.integrateId,a.userId);if(e)return a.chatId=e,r.info(`从缓存恢复 chatId=${e}`),e;try{const e=await y(1,5,a.userId,a.integrateId);if(e.list.length>0){const n=e.list[0],t=n.conversationId||n.chatId||"";if(t)return a.chatId=t,w(a.integrateId,a.userId,t),r.info(`从后端恢复会话 chatId=${t} messageCount=${n.messageCount}`),t}}catch(e){r.warn("查询后端会话列表失败,将生成新 chatId",e)}const n=function(){const e="undefined"!=typeof crypto&&crypto.randomUUID?crypto.randomUUID().substring(0,8):Math.random().toString(36).substring(2,10);return`sdk_${Date.now()}_${e}`}();return a.chatId=n,w(a.integrateId,a.userId,n),r.info(`生成新 chatId=${n}`),n}function _(e,n){return`csk_chatId_${e}${n?"_"+n:""}`}function w(e,n,t){try{t?localStorage.setItem(_(e,n),t):localStorage.removeItem(_(e,n))}catch(e){}}let v=null;function E(e){const n=function(e,n){const t=e.match(/^#([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/);if(!t)return e;const r=e=>Math.max(0,Math.min(255,e)),o=r(parseInt(t[1],16)+n),s=r(parseInt(t[2],16)+n),i=r(parseInt(t[3],16)+n);return`#${o.toString(16).padStart(2,"0")}${s.toString(16).padStart(2,"0")}${i.toString(16).padStart(2,"0")}`}(e.primaryColor,-15);return`\n --csk-primary: ${e.primaryColor};\n --csk-primary-hover: ${n};\n --csk-bg-user: var(--csk-primary);\n --csk-bg-ai: #F3F4F6;\n --csk-text-user: #FFFFFF;\n --csk-text-ai: #1F2937;\n --csk-window-width: ${e.width}px;\n `}function I(e){document.querySelector("style[data-csk-sdk]")||(v=document.createElement("style"),v.setAttribute("data-csk-sdk",""),v.textContent=function(e){return`\n/* ChatbotSDK 样式 - csk- 命名空间 */\n.csk-root {\n ${E(e)}\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans SC", sans-serif;\n font-size: 14px;\n line-height: 1.5;\n color: #1F2937;\n}\n\n/* ========== 悬浮按钮 ========== */\n.csk-launcher {\n position: fixed;\n bottom: 20px;\n z-index: 9998;\n width: 56px;\n height: 56px;\n border-radius: 50%;\n background: #fff;\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n transition: all 0.2s ease;\n border: none;\n color: var(--csk-primary);\n user-select: none;\n}\n.csk-launcher--right {\n right: 20px;\n}\n.csk-launcher--left {\n left: 20px;\n}\n.csk-launcher:hover {\n transform: scale(1.1);\n box-shadow: 0 6px 24px rgba(0, 0, 0, 0.2);\n}\n.csk-launcher:active {\n transform: scale(0.95);\n}\n\n/* ========== 聊天弹窗 ========== */\n.csk-window {\n position: fixed;\n bottom: 20px;\n z-index: 9999;\n width: var(--csk-window-width);\n height: 560px;\n background: #fff;\n border-radius: 12px;\n box-shadow: 0 8px 40px rgba(0, 0, 0, 0.18);\n display: flex;\n flex-direction: column;\n overflow: hidden;\n transition: opacity 0.2s ease, transform 0.2s ease;\n}\n.csk-window--right {\n right: 20px;\n}\n.csk-window--left {\n left: 20px;\n}\n.csk-window--hidden {\n display: none;\n}\n\n/* ========== 头部 ========== */\n.csk-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 0 16px;\n height: 48px;\n min-height: 48px;\n background: var(--csk-primary);\n color: #fff;\n border-radius: 12px 12px 0 0;\n cursor: move;\n user-select: none;\n}\n.csk-header__title {\n font-size: 15px;\n font-weight: 600;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.csk-header__actions {\n display: flex;\n align-items: center;\n gap: 4px;\n}\n.csk-header__btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n border: none;\n background: transparent;\n color: #fff;\n cursor: pointer;\n border-radius: 6px;\n transition: background 0.15s;\n}\n.csk-header__btn:hover {\n background: rgba(255, 255, 255, 0.2);\n}\n\n/* ========== 消息区 ========== */\n.csk-messages {\n flex: 1;\n overflow-y: auto;\n padding: 16px;\n background: #FAFAFA;\n scroll-behavior: smooth;\n}\n.csk-messages::-webkit-scrollbar {\n width: 5px;\n}\n.csk-messages::-webkit-scrollbar-track {\n background: transparent;\n}\n.csk-messages::-webkit-scrollbar-thumb {\n background: #D1D5DB;\n border-radius: 3px;\n}\n\n/* 消息气泡 */\n.csk-msg {\n display: flex;\n flex-direction: column;\n margin-bottom: 16px;\n max-width: 85%;\n word-break: break-word;\n}\n.csk-msg--user {\n margin-left: auto;\n align-items: flex-end;\n}\n.csk-msg--ai {\n margin-right: auto;\n align-items: flex-start;\n}\n.csk-msg__bubble {\n padding: 10px 14px;\n border-radius: 12px;\n font-size: 14px;\n line-height: 1.6;\n}\n.csk-msg--user .csk-msg__bubble {\n background: var(--csk-bg-user);\n color: var(--csk-text-user);\n border-radius: 12px 12px 4px 12px;\n}\n.csk-msg--ai .csk-msg__bubble {\n background: var(--csk-bg-ai);\n color: var(--csk-text-ai);\n border-radius: 12px 12px 12px 4px;\n}\n.csk-msg__time {\n font-size: 11px;\n color: #9CA3AF;\n margin-top: 4px;\n padding: 0 4px;\n}\n\n/* ========== Loading 动画 ========== */\n.csk-loading {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 12px 14px;\n margin-bottom: 16px;\n}\n.csk-loading__dot {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n background: #D1D5DB;\n animation: csk-bounce 1.4s ease-in-out infinite both;\n}\n.csk-loading__dot:nth-child(1) { animation-delay: 0s; }\n.csk-loading__dot:nth-child(2) { animation-delay: 0.16s; }\n.csk-loading__dot:nth-child(3) { animation-delay: 0.32s; }\n\n@keyframes csk-bounce {\n 0%, 80%, 100% { transform: scale(0.6); }\n 40% { transform: scale(1); }\n}\n\n/* ========== 输入区 ========== */\n.csk-input-area {\n display: flex;\n align-items: center;\n padding: 10px 12px;\n border-top: 1px solid #E5E7EB;\n background: #fff;\n gap: 8px;\n}\n.csk-input {\n flex: 1;\n border: 1px solid #E5E7EB;\n border-radius: 8px;\n padding: 10px 12px;\n font-size: 14px;\n outline: none;\n transition: border-color 0.2s;\n font-family: inherit;\n resize: none;\n min-height: 20px;\n max-height: 100px;\n}\n.csk-input:focus {\n border-color: var(--csk-primary);\n}\n.csk-input::placeholder {\n color: #9CA3AF;\n}\n.csk-send-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 40px;\n height: 40px;\n min-width: 40px;\n border: none;\n border-radius: 8px;\n background: var(--csk-primary);\n color: #fff;\n cursor: pointer;\n transition: background 0.2s;\n}\n.csk-send-btn:hover {\n background: var(--csk-primary-hover);\n}\n.csk-send-btn:disabled {\n background: #D1D5DB;\n cursor: not-allowed;\n}\n\n/* ========== 清空按钮 ========== */\n.csk-clear-btn {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 6px 12px;\n border: 1px solid #E5E7EB;\n border-radius: 6px;\n background: #fff;\n color: #6B7280;\n font-size: 12px;\n cursor: pointer;\n margin: 0 auto 8px;\n transition: all 0.15s;\n}\n.csk-clear-btn:hover {\n background: #FEE2E2;\n border-color: #FCA5A5;\n color: #DC2626;\n}\n\n/* ========== P1: 知识库分类下拉 ========== */\n.csk-category-bar {\n display: flex;\n align-items: center;\n padding: 6px 12px;\n border-top: 1px solid #E5E7EB;\n background: #F9FAFB;\n gap: 8px;\n}\n.csk-category-bar__label {\n font-size: 12px;\n color: #6B7280;\n white-space: nowrap;\n}\n.csk-category-select {\n flex: 1;\n padding: 5px 8px;\n border: 1px solid #E5E7EB;\n border-radius: 6px;\n font-size: 12px;\n color: #374151;\n background: #fff;\n outline: none;\n cursor: pointer;\n font-family: inherit;\n transition: border-color 0.2s;\n max-width: 200px;\n}\n.csk-category-select:focus {\n border-color: var(--csk-primary);\n}\n\n/* ========== P1: RAG 引用来源卡片 ========== */\n.csk-sources {\n margin-top: 8px;\n border: 1px solid #E5E7EB;\n border-radius: 8px;\n overflow: hidden;\n font-size: 12px;\n max-width: 100%;\n}\n.csk-sources__header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 8px 12px;\n background: #F9FAFB;\n cursor: pointer;\n user-select: none;\n transition: background 0.15s;\n}\n.csk-sources__header:hover {\n background: #F3F4F6;\n}\n.csk-sources__title {\n display: flex;\n align-items: center;\n gap: 4px;\n font-weight: 500;\n color: #374151;\n}\n.csk-sources__arrow {\n transition: transform 0.2s;\n color: #9CA3AF;\n}\n.csk-sources--collapsed .csk-sources__arrow {\n transform: rotate(-90deg);\n}\n.csk-sources__body {\n border-top: 1px solid #E5E7EB;\n padding: 0;\n}\n.csk-sources--collapsed .csk-sources__body {\n display: none;\n}\n.csk-source-item {\n padding: 8px 12px;\n border-bottom: 1px solid #F3F4F6;\n transition: background 0.15s;\n}\n.csk-source-item:last-child {\n border-bottom: none;\n}\n.csk-source-item:hover {\n background: #F9FAFB;\n}\n.csk-source-item__name {\n font-weight: 500;\n color: #1F2937;\n margin-bottom: 2px;\n}\n.csk-source-item__snippet {\n color: #6B7280;\n line-height: 1.4;\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n}\n.csk-source-item__meta {\n font-size: 11px;\n color: #9CA3AF;\n margin-top: 2px;\n}\n\n/* ========== P1: Markdown 渲染样式 ========== */\n.csk-msg--ai .csk-msg__bubble .csk-md-p {\n margin: 0 0 8px;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-p:last-child {\n margin-bottom: 0;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-h1,\n.csk-msg--ai .csk-msg__bubble .csk-md-h2,\n.csk-msg--ai .csk-msg__bubble .csk-md-h3,\n.csk-msg--ai .csk-msg__bubble .csk-md-h4,\n.csk-msg--ai .csk-msg__bubble .csk-md-h5,\n.csk-msg--ai .csk-msg__bubble .csk-md-h6 {\n margin: 12px 0 6px;\n font-weight: 600;\n line-height: 1.3;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-h1 { font-size: 20px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h2 { font-size: 17px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h3 { font-size: 15px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h4 { font-size: 14px; }\n\n.csk-md-code-block {\n background: #1E293B;\n color: #E2E8F0;\n padding: 12px 14px;\n border-radius: 8px;\n overflow-x: auto;\n margin: 8px 0;\n font-size: 13px;\n line-height: 1.5;\n font-family: 'SF Mono', 'Consolas', 'Menlo', monospace;\n}\n.csk-md-code-block code {\n background: none;\n padding: 0;\n border-radius: 0;\n font-size: inherit;\n color: inherit;\n}\n.csk-md-inline-code {\n background: #E5E7EB;\n color: #DC2626;\n padding: 1px 6px;\n border-radius: 4px;\n font-size: 13px;\n font-family: 'SF Mono', 'Consolas', 'Menlo', monospace;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-ul,\n.csk-msg--ai .csk-msg__bubble .csk-md-ol {\n padding-left: 20px;\n margin: 6px 0;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-ul li,\n.csk-msg--ai .csk-msg__bubble .csk-md-ol li {\n margin-bottom: 4px;\n}\n.csk-md-blockquote {\n border-left: 3px solid var(--csk-primary);\n padding-left: 12px;\n margin: 8px 0;\n color: #6B7280;\n}\n.csk-md-link {\n color: var(--csk-primary);\n text-decoration: none;\n}\n.csk-md-link:hover {\n text-decoration: underline;\n}\n.csk-md-hr {\n border: none;\n border-top: 1px solid #E5E7EB;\n margin: 12px 0;\n}\n\n/* ========== P2: 会话管理面板 ========== */\n.csk-history-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n border: none;\n background: transparent;\n color: #fff;\n cursor: pointer;\n border-radius: 6px;\n transition: background 0.15s;\n}\n.csk-history-btn:hover {\n background: rgba(255, 255, 255, 0.2);\n}\n.csk-history-panel {\n position: absolute;\n top: 48px;\n left: 0;\n right: 0;\n bottom: 0;\n background: #fff;\n z-index: 10;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\n.csk-history-panel--hidden {\n display: none;\n}\n.csk-history-panel__header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 12px 16px;\n border-bottom: 1px solid #E5E7EB;\n background: #F9FAFB;\n}\n.csk-history-panel__title {\n font-size: 14px;\n font-weight: 600;\n color: #1F2937;\n}\n.csk-history-panel__back {\n display: flex;\n align-items: center;\n gap: 4px;\n padding: 4px 10px;\n border: 1px solid #E5E7EB;\n border-radius: 6px;\n background: #fff;\n color: #374151;\n font-size: 12px;\n cursor: pointer;\n transition: all 0.15s;\n}\n.csk-history-panel__back:hover {\n background: #F3F4F6;\n}\n.csk-history-panel__list {\n flex: 1;\n overflow-y: auto;\n padding: 8px;\n}\n.csk-history-panel__list::-webkit-scrollbar {\n width: 4px;\n}\n.csk-history-panel__list::-webkit-scrollbar-thumb {\n background: #E5E7EB;\n border-radius: 2px;\n}\n.csk-history-item {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 10px 12px;\n border-radius: 8px;\n cursor: pointer;\n transition: background 0.15s;\n margin-bottom: 4px;\n}\n.csk-history-item:hover {\n background: #F3F4F6;\n}\n.csk-history-item--active {\n background: #EEF2FF;\n border-left: 3px solid var(--csk-primary);\n}\n.csk-history-item--active:hover {\n background: #E0E7FF;\n}\n.csk-history-item__info {\n flex: 1;\n min-width: 0;\n}\n.csk-history-item__id {\n font-size: 13px;\n font-weight: 500;\n color: #1F2937;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.csk-history-item__meta {\n font-size: 11px;\n color: #9CA3AF;\n margin-top: 2px;\n}\n.csk-history-item__actions {\n display: flex;\n gap: 4px;\n margin-left: 8px;\n opacity: 0;\n transition: opacity 0.15s;\n}\n.csk-history-item:hover .csk-history-item__actions {\n opacity: 1;\n}\n.csk-history-action {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 28px;\n height: 28px;\n border: none;\n border-radius: 6px;\n cursor: pointer;\n font-size: 12px;\n transition: all 0.15s;\n}\n.csk-history-action--export {\n background: #EFF6FF;\n color: #2563EB;\n}\n.csk-history-action--export:hover {\n background: #DBEAFE;\n}\n.csk-history-action--delete {\n background: #FEF2F2;\n color: #DC2626;\n}\n.csk-history-action--delete:hover {\n background: #FEE2E2;\n}\n.csk-history-panel__empty {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 40px 20px;\n color: #9CA3AF;\n font-size: 13px;\n text-align: center;\n}\n.csk-history-panel__empty-icon {\n font-size: 32px;\n margin-bottom: 8px;\n opacity: 0.5;\n}\n.csk-history-panel__loading {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 20px;\n color: #9CA3AF;\n font-size: 13px;\n}\n.csk-history-panel__loadmore {\n display: block;\n width: 100%;\n padding: 10px;\n border: none;\n background: #F9FAFB;\n color: #6B7280;\n font-size: 12px;\n cursor: pointer;\n text-align: center;\n transition: background 0.15s;\n}\n.csk-history-panel__loadmore:hover {\n background: #F3F4F6;\n}\n\n/* ========== 移动端适配 ========== */\n@media (max-width: 480px) {\n .csk-window {\n width: 100vw !important;\n height: 100vh !important;\n bottom: 0 !important;\n right: 0 !important;\n left: 0 !important;\n border-radius: 0;\n }\n .csk-header {\n border-radius: 0;\n }\n}\n`}(e),document.head.appendChild(v))}function C(){return"undefined"!=typeof crypto&&crypto.randomUUID?crypto.randomUUID():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{const n=16*Math.random()|0;return("x"===e?n:3&n|8).toString(16)})}function $(e){const n={"&":"&","<":"<",">":">",'"':""","'":"'"};return e.replace(/[&<>"']/g,e=>n[e]||e)}function S(){return Date.now()}function F(e,n){const t=document.createElement("div");t.id="csk-launcher",t.className="csk-launcher csk-launcher--"+("left-bottom"===e.position?"left":"right"),t.setAttribute("title",e.title),t.setAttribute("aria-label",e.title),t.setAttribute("role","button"),t.setAttribute("tabindex","0"),t.innerHTML=e.launcherIcon;const r=function(e,n){let t=null;return function(...r){null!==t&&clearTimeout(t),t=setTimeout(()=>{e.apply(this,r),t=null},n)}}(n,300);return t.addEventListener("click",r),t.addEventListener("keydown",e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),r())}),t}function A(e,n,t){const r=document.createElement("div");r.className="csk-msg csk-msg--user";const o=document.createElement("div");o.className="csk-msg__bubble",o.textContent=n;const s=document.createElement("div");return s.className="csk-msg__time",s.textContent=M(t),r.appendChild(o),r.appendChild(s),e.appendChild(r),r}function N(e,n,t,r){const o=document.createElement("div");o.className="csk-msg csk-msg--ai";const s=document.createElement("div");s.className="csk-msg__bubble",r?s.innerHTML=r(n):s.textContent=n;const i=document.createElement("div");return i.className="csk-msg__time",i.textContent=M(t),o.appendChild(s),o.appendChild(i),e.appendChild(o),o}function L(e,n){const t=e.querySelector(".csk-sources");if(t&&t.remove(),!n||0===n.length)return;const r=document.createElement("div");r.className="csk-sources csk-sources--collapsed";const o=document.createElement("div");o.className="csk-sources__header";const s=document.createElement("span");s.className="csk-sources__title",s.textContent=`📚 ${i("source_count",{n:n.length})}`;const a=document.createElement("span");a.className="csk-sources__arrow",a.textContent="▼",o.appendChild(s),o.appendChild(a),o.addEventListener("click",()=>{r.classList.toggle("csk-sources--collapsed")});const c=document.createElement("div");c.className="csk-sources__body";for(const e of n){const n=document.createElement("div");n.className="csk-source-item";const t=document.createElement("div");if(t.className="csk-source-item__name",t.textContent=e.title||e.sourceName||"未知文档",e.snippet){const t=document.createElement("div");t.className="csk-source-item__snippet",t.textContent=e.snippet,n.appendChild(t)}const r=document.createElement("div");r.className="csk-source-item__meta";const o=[];e.sourceName&&o.push(e.sourceName),void 0!==e.chunkIndex&&o.push(`分块 #${e.chunkIndex}`),void 0!==e.score&&o.push(`相关度 ${(100*e.score).toFixed(0)}%`),r.textContent=o.join(" · "),n.appendChild(t),n.appendChild(r),c.appendChild(n)}r.appendChild(o),r.appendChild(c);const l=e.querySelector(".csk-msg__time");l?e.insertBefore(r,l):e.appendChild(r)}function D(e){e.scrollTop=e.scrollHeight}function M(e){const n=new Date(e);return`${String(n.getHours()).padStart(2,"0")}:${String(n.getMinutes()).padStart(2,"0")}`}function B(e){return`csk_history_${e}`}function T(e,n){try{let t=n;t.length>200&&(t=t.slice(50),r.warn(`消息数量达到上限,已裁剪最早 50 条,当前 ${t.length} 条`));const o={messages:t,updatedAt:Date.now()};localStorage.setItem(B(e),JSON.stringify(o))}catch(e){e instanceof Error&&"QuotaExceededError"===e.name?r.error("localStorage 空间不足,会话历史保存失败。建议清空历史记录。"):r.error("保存会话历史失败",e)}}function z(e){try{localStorage.removeItem(B(e))}catch(e){r.warn("清空会话历史失败",e)}}const q="\0CODEBLOCK_",j="\0INLINECODE_";function H(e){if(!e||"string"!=typeof e)return"";const n=[];let t=e;t=t.replace(/```(\w*)\n([\s\S]*?)```/g,(e,t,r)=>{const o=n.length,s=$(r.trimEnd()),i=t?` class="language-${$(t)}"`:"";return n.push(`
${s}
`),`${q}${o}\0`});const r=[];t=t.replace(/`([^`\n]+)`/g,(e,n)=>{const t=r.length;return r.push(`${$(n)}`),`${j}${t}\0`}),t=$(t),t=P(t,q,n),t=P(t,j,r);const o=t.split("\n"),s=[];let i=!1,a="",c=!1,l=[];for(let e=0;e')){u(),p(),m(),s.push(n);continue}const t=n.match(/^(#{1,6})\s+(.+)/);if(t){u(),p(),m();const e=t[1].length;s.push(`${t[2]}`);continue}const r=n.match(/^>\s?(.*)/);if(r){u(),p(),c||(c=!0,s.push('
')),s.push(`

${d(r[1])}

`);continue}c&&m();const h=n.match(/^[\-\*]\s+(.+)/);if(h){u(),m(),i&&"ul"===a||(p(),i=!0,a="ul",s.push('
    ')),s.push(`
  • ${d(h[1])}
  • `);continue}const g=n.match(/^\d+\.\s+(.+)/);g?(u(),m(),i&&"ol"===a||(p(),i=!0,a="ol",s.push('
      ')),s.push(`
    1. ${d(g[1])}
    2. `)):""!==n.trim()?/^(\*{3,}|-{3,}|_{3,})$/.test(n.trim())?(u(),p(),m(),s.push('
      ')):(p(),m(),l.push(d(n))):(u(),p())}return u(),p(),m(),s.join("\n");function d(e){return e=(e=(e=(e=(e=(e=e.replace(/\*\*(.+?)\*\*/g,"$1")).replace(/__(.+?)__/g,"$1")).replace(/\*(.+?)\*/g,"$1")).replace(/(?$1")).replace(/~~(.+?)~~/g,"$1")).replace(/\[([^\]]+)\]\(([^)]+)\)/g,(e,n,t)=>`${n}`)}function u(){l.length>0&&(s.push(`

      ${l.join("
      ")}

      `),l=[])}function p(){i&&(s.push("ul"===a?"
":""),i=!1,a="")}function m(){c&&(s.push("
"),c=!1)}}function P(e,n,t){return e.replace(new RegExp(n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")+"(\\d+)\0","g"),(e,n)=>t[parseInt(n)]||"")}let R,U=null,O=[],W=null,K=null,V=null,J=null,X=null,Y=null,G=null,Q=null,Z=!1,ee=!1;function ne(e,n){U=e,W=n.messagesContainer,K=n.inputEl,V=n.sendBtn,J=n.clearBtn,X=n.categorySelect,Y=n.historyPanel,G=n.showLoading,Q=n.hideLoading,R=e.categoryId,ee=!!e.categoryId||!!e.showCategorySwitch,function(){if(!K||!V)return;V.addEventListener("click",()=>oe()),K.addEventListener("keydown",e=>{"Enter"!==e.key||e.shiftKey||(e.preventDefault(),oe())}),K.addEventListener("input",()=>re()),J&&J.addEventListener("click",()=>function(){if(!U)return;if(!confirm(i("clear_confirm")))return;if(O=[],W){W.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove())}J&&(J.style.display="none");z(U.integrateId);const e=function(){const e="undefined"!=typeof crypto&&crypto.randomUUID?crypto.randomUUID().substring(0,8):Math.random().toString(36).substring(2,10);return`sdk_${Date.now()}_${e}`}();c(e),w(U.integrateId,U.userId,e),r.lifecycleClear(U.integrateId),r.info(`新 chatId=${e}`)}())}(),e.showCategorySwitch&&X&&async function(){if(!X)return;try{const e=await async function(){const e=d("/category/tree");try{const n=await p(e);if(!n.ok)throw new m(h(n.status),`http_${n.status}`);const t=await n.json();return t.success&&Array.isArray(t.data)?(r.info(`加载分类树成功 count=${t.data.length}`),t.data):[]}catch(e){return e instanceof m?r.error(`加载分类树失败: ${e.message}`):r.error("加载分类树失败",e),[]}}();if(0===e.length)return;X.innerHTML=``;const n=(e,t=0)=>{for(const r of e){const e=document.createElement("option");e.value=String(r.id),e.textContent=`${" ".repeat(t)}${r.name}`,void 0!==R&&String(r.id)===String(R)&&(e.selected=!0),X.appendChild(e),r.children&&r.children.length>0&&n(r.children,t+1)}};n(e),r.info(`知识库分类加载成功 count=${e.length}`)}catch(e){r.error(i("category_load_error"),e)}}()}async function te(){if(U&&W&&(await x(),await async function(){if(!U||!W)return;const e=l();if(!e)return;try{const n=await b(e);n.messages.length>0&&(O=n.messages.map((e,n)=>({id:C(),role:"USER"===e.messageType?"user":"ai",content:e.content,timestamp:new Date(e.createTime).getTime()})),se(),r.info(`从后端加载 ${O.length} 条历史消息`),T(U.integrateId,O))}catch(e){r.warn("从后端加载历史消息失败",e)}}(),0===O.length)){const e=function(e){try{const n=localStorage.getItem(B(e));if(!n)return[];const t=JSON.parse(n);return t&&Array.isArray(t.messages)?(r.info(`加载历史消息 integrateId=${e} count=${t.messages.length}`),t.messages):[]}catch(e){return r.warn("加载会话历史失败",e),[]}}(U.integrateId);e.length>0&&(O=e,se(),r.info(`从本地缓存恢复 ${e.length} 条消息`))}}function re(){if(!V||!K)return;K.value.trim().length>0&&!Z?V.removeAttribute("disabled"):V.setAttribute("disabled","true")}async function oe(){if(!K||!U||Z)return;const e=K.value.trim();if(""===e)return;K.value="",re(),K.style.height="auto",Z=!0,re(),U.chatId||await x();const n=S();W&&A(W,e,n);const t={id:C(),role:"user",content:e,timestamp:n};O.push(t),J&&O.length>0&&(J.style.display="inline-flex"),W&&D(W),G&&G(),W&&D(W);try{let n;const t=S(),o=ee&&(void 0!==R||void 0!==U.categoryId);n=U.streaming?await async function(e,n,t){return new Promise((r,o)=>{let s=null,a="",c=!1;k(e,e=>{if(a+=e,!c&&W){Q&&Q();const{bubble:e}=function(e,n){const t=document.createElement("div");t.className="csk-msg csk-msg--ai";const r=document.createElement("div");r.className="csk-msg__bubble",r.innerHTML="";const o=document.createElement("div");return o.className="csk-msg__time",o.textContent=M(n),t.appendChild(r),t.appendChild(o),e.appendChild(t),{wrapper:t,bubble:r}}(W,n);s=e,c=!0}s&&(s.textContent=a),W&&D(W)},()=>{c||""!==a?(s&&a&&(s.innerHTML=H(a)),r(a)):g(e).then(r).catch(o)},e=>{a.length>0?(s&&(s.innerHTML=H(a+"\n\n"+i("stream_interrupted"))),r(a)):o(e)},R,t)})}(e,t,o):await g(e),Q&&Q(),!U.streaming&&W&&N(W,n,t,H);const s={id:C(),role:"ai",content:n,timestamp:t};O.push(s),T(U.integrateId,O),W&&D(W),o&&async function(e,n){try{const t=await f(e,R);if(t.length>0){const e=t.map(e=>{var n,t;return{documentId:e.documentId||"",title:e.title||"",sourceName:e.sourceName||"",chunkIndex:null!==(n=e.chunkIndex)&&void 0!==n?n:0,score:null!==(t=e.score)&&void 0!==t?t:0,snippet:e.snippet||""}});if(n.sources=e,W){const n=W.querySelector(".csk-msg--ai:last-of-type");n&&L(n,e)}U&&T(U.integrateId,O)}}catch(e){r.warn("获取引用来源失败",e)}}(e,s)}catch(e){Q&&Q();const n=e instanceof m?e.message:i("error_send");if(W){const e=document.createElement("div");e.className="csk-msg csk-msg--ai";const t=document.createElement("div");t.className="csk-msg__bubble",t.style.color="#DC2626",t.textContent=`⚠ ${n}`,e.appendChild(t),W.appendChild(e)}r.error(`发送失败 integrateId=${U.integrateId}`,e)}finally{Z=!1,re()}}function se(){if(!W)return;const e=W.querySelector(".csk-history-panel");W.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove());for(const e of O)if("user"===e.role)A(W,e.content,e.timestamp);else{const n=N(W,e.content,e.timestamp,H);e.sources&&e.sources.length>0&&L(n,e.sources)}D(W),J&&O.length>0&&(J.style.display="inline-flex"),e&&!W.contains(e)&&W.appendChild(e)}async function ie(){if(!Y||!U)return;const e=Y.querySelector("#csk-history-list");if(e){e.innerHTML='
加载中...
';try{const n=await y(1,50,U.userId,U.integrateId);!function(e,n,t,r,o,s){if(e.innerHTML="",0===n.length){const n=document.createElement("div");return n.className="csk-history-panel__empty",n.innerHTML=`\n
💬
\n
${i("history_empty")}
\n `,void e.appendChild(n)}for(const a of n){const n=document.createElement("div");n.className="csk-history-item";const c=a.chatId||a.id;s&&c===s&&n.classList.add("csk-history-item--active");const l=document.createElement("div");l.className="csk-history-item__info";const d=document.createElement("div");d.className="csk-history-item__id",a.lastMessagePreview?d.textContent=a.lastMessagePreview.length>60?a.lastMessagePreview.substring(0,60)+"...":a.lastMessagePreview:d.textContent=c;const u=document.createElement("div");u.className="csk-history-item__meta";const p=[];void 0!==a.messageCount&&p.push(`${a.messageCount} 条消息`),a.lastMessageTime?p.push(a.lastMessageTime):a.createdAt&&p.push(a.createdAt),u.textContent=p.join(" · "),l.appendChild(d),l.appendChild(u);const m=document.createElement("div");m.className="csk-history-item__actions";const h=document.createElement("button");h.className="csk-history-action csk-history-action--export",h.setAttribute("title",i("history_export")),h.innerHTML='',h.addEventListener("click",e=>{e.stopPropagation(),r(a.id)});const g=document.createElement("button");g.className="csk-history-action csk-history-action--delete",g.setAttribute("title",i("history_delete")),g.innerHTML='',g.addEventListener("click",e=>{e.stopPropagation(),o(a.id)}),m.appendChild(h),m.appendChild(g),n.appendChild(l),n.appendChild(m),n.addEventListener("click",()=>{t(c)}),e.appendChild(n)}}(e,n.list.map(e=>({id:e.conversationId||"",chatId:e.conversationId||"",messageCount:e.messageCount,lastMessageTime:e.lastMessageTime,lastMessagePreview:e.lastMessagePreview,createdAt:e.firstMessageTime||e.createdAt})),e=>{!async function(e){if(!U||!W)return;r.info(`切换到会话 conversationId=${e}`),c(e),w(U.integrateId,U.userId,e),Y&&Y.classList.add("csk-history-panel--hidden");O=[];W.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove());try{const n=await b(e);n.messages.length>0&&(O=n.messages.map(e=>({id:C(),role:"USER"===e.messageType?"user":"ai",content:e.content,timestamp:new Date(e.createTime).getTime()})),se(),r.info(`加载会话 ${e} 的 ${O.length} 条消息`),T(U.integrateId,O))}catch(n){r.warn(`加载会话消息失败 conversationId=${e}`,n)}J&&O.length>0&&(J.style.display="inline-flex")}(e)},e=>{window.open(d(`/conversation/${e}/export`),"_blank")},async e=>{if(!confirm(i("history_delete_confirm")))return;if(await async function(e){const n=d(`/conversation/${e}`);try{const t=await p(n,{method:"DELETE"});if(!t.ok)throw new m(h(t.status),`http_${t.status}`);const o=await t.json();return r.info(`删除会话 id=${e} success=${o.success}`),o.success||!1}catch(e){return r.error("删除会话失败",e),!1}}(e)){if(e===l()){if(O=[],W){W.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove())}J&&(J.style.display="none")}ie()}},l())}catch(n){r.error(i("history_load_error"),n),e.innerHTML=`
${i("history_load_error")}
`}}}let ae=null,ce=!1,le=null,de=null,ue=null,pe=null,me=null,he=null,ge=null,ke=null,fe=null,ye=null,be=null;function xe(){de&&de.classList.remove("csk-window--hidden")}function _e(){de&&de.classList.add("csk-window--hidden")}function we(){de&&(de.classList.contains("csk-window--hidden")?(xe(),setTimeout(()=>{pe&&pe.focus()},100)):_e())}const ve={init:function(e){if(ce)return void r.warn("SDK 已初始化,请先调用 destroy() 再重新初始化");const t=function(e){var n,t,o,s,i,a;if(!e.integrateId||"string"!=typeof e.integrateId&&"number"!=typeof e.integrateId||"string"==typeof e.integrateId&&""===e.integrateId.trim())return r.error('integrateId 是必传参数(对应后端 roleId 客服角色 ID),请检查 init() 调用。示例:ChatbotSDK.init({ integrateId: 1, requestDomain: "https://api.example.com" })'),null;if(!e.requestDomain||"string"!=typeof e.requestDomain||""===e.requestDomain.trim())return r.error('requestDomain 是必传参数,请检查 init() 调用。示例:ChatbotSDK.init({ integrateId: 1, requestDomain: "https://api.example.com" })'),null;try{new URL(e.requestDomain)}catch(n){return r.error(`requestDomain 不是合法的 URL 格式:${e.requestDomain}。请提供完整的域名,如 https://api.example.com`),null}const c={integrateId:String(e.integrateId).trim(),requestDomain:e.requestDomain.replace(/\/+$/,""),userId:e.userId,categoryId:e.categoryId,showCategorySwitch:null!==(n=e.showCategorySwitch)&&void 0!==n&&n,title:e.title||"AI 智能助手",width:null!==(t=e.width)&&void 0!==t?t:380,position:"left-bottom"===e.position?"left-bottom":"right-bottom",primaryColor:e.primaryColor||"#4F46E5",launcherIcon:e.launcherIcon||'\n \n \n',showClear:null===(o=e.showClear)||void 0===o||o,showAdminPanel:null!==(s=e.showAdminPanel)&&void 0!==s&&s,streaming:null===(i=e.streaming)||void 0===i||i,locale:e.locale||"zh-CN",debug:null===(a=e.debug)||void 0===a||a,chatId:""};return r.info(`配置解析完成 integrateId(=roleId)=${c.integrateId} userId(=accountId)=${c.userId||"(未设置)"} requestDomain=${c.requestDomain}`),c}(e);if(!t)return;var c;ae=t,function(e){if(o[e])s=e;else{const n=e.split("-")[0],t=Object.keys(o).find(e=>e.startsWith(n));t&&(s=t)}}(ae.locale),c=ae.debug,n=c,function(e){a=e}(ae),I(ae),le=F(ae,we),document.body.appendChild(le);const l=function(e){const n=document.createElement("div");n.id="csk-window",n.className=`csk-root csk-window csk-window--${"left-bottom"===e.position?"left":"right"} csk-window--hidden`;const t=document.createElement("div");t.className="csk-header";const r=document.createElement("span");r.className="csk-header__title",r.textContent=e.title;const o=document.createElement("div");o.className="csk-header__actions";const s=document.createElement("button");s.className="csk-history-btn",s.setAttribute("title",i("history_title")),s.innerHTML='';const a=document.createElement("button");a.className="csk-header__btn csk-header__btn--minimize",a.setAttribute("title",i("minimize")),a.innerHTML='',a.addEventListener("click",()=>{n.classList.add("csk-window--hidden")});const c=document.createElement("button");c.className="csk-header__btn csk-header__btn--close",c.setAttribute("title",i("close")),c.innerHTML='',c.addEventListener("click",()=>{n.classList.add("csk-window--hidden")}),o.appendChild(s),o.appendChild(a),o.appendChild(c),t.appendChild(r),t.appendChild(o);const l=document.createElement("div");l.id="csk-messages",l.className="csk-messages";const d=document.createElement("div");d.className="csk-history-panel csk-history-panel--hidden",d.innerHTML=`\n
\n ${i("history_title")}\n \n
\n
\n `,l.appendChild(d);const u=d.querySelector("#csk-history-back");u&&u.addEventListener("click",()=>{d.classList.add("csk-history-panel--hidden")}),s.addEventListener("click",e=>{e.stopPropagation();const t=d.classList.contains("csk-history-panel--hidden");d.classList.toggle("csk-history-panel--hidden"),t&&n.dispatchEvent(new CustomEvent("csk:loadHistory"))});let p=null;if(e.showCategorySwitch){const e=document.createElement("div");e.className="csk-category-bar";const r=document.createElement("span");r.className="csk-category-bar__label",r.textContent="📚",p=document.createElement("select"),p.id="csk-category-select",p.className="csk-category-select",p.innerHTML=``,p.addEventListener("change",()=>{const e=p.value;n.dispatchEvent(new CustomEvent("csk:categoryChange",{detail:{categoryId:e?Number(e):void 0}}))}),e.appendChild(r),e.appendChild(p),n.appendChild(t),n.appendChild(l),n.appendChild(e)}else n.appendChild(t),n.appendChild(l);const m=document.createElement("div");m.className="csk-input-area";const h=document.createElement("textarea");h.id="csk-input",h.className="csk-input",h.setAttribute("placeholder",i("placeholder")),h.setAttribute("rows","1"),h.setAttribute("autofocus","");const g=document.createElement("button");g.id="csk-send-btn",g.className="csk-send-btn",g.setAttribute("title",i("send")),g.setAttribute("disabled","true"),g.innerHTML='',m.appendChild(h),m.appendChild(g),n.appendChild(m);let k=null;e.showClear&&(k=document.createElement("button"),k.className="csk-clear-btn",k.textContent=i("clear"),k.style.display="none",n.insertBefore(k,m));let f=null;return{window:n,messagesContainer:l,inputEl:h,sendBtn:g,clearBtn:k,categorySelect:p,historyPanel:d,showLoading:function(){if(f)return f.style.display="flex",f;const e=document.createElement("div");return e.className="csk-loading",e.innerHTML='\n
\n
\n
\n ',l.appendChild(e),f=e,e},hideLoading:function(){f&&f.parentNode&&(f.parentNode.removeChild(f),f=null)}}}(ae);de=l.window,ue=l.messagesContainer,pe=l.inputEl,me=l.sendBtn,he=l.clearBtn,ge=l.categorySelect,ke=l.historyPanel,fe=l.showLoading,ye=l.hideLoading,document.body.appendChild(de);const d=de.querySelector(".csk-header");d&&(be=function(e,n){let t=!1,r=0,o=0,s=0,i=0;const a=e=>{t=!0,r=e.clientX,o=e.clientY;const a=n.getBoundingClientRect();s=r-a.left,i=o-a.top,document.addEventListener("mousemove",c),document.addEventListener("mouseup",l)},c=e=>{if(!t)return;const r=e.clientX-s,o=e.clientY-i,a=window.innerWidth-n.offsetWidth,c=window.innerHeight-n.offsetHeight;n.style.right="auto",n.style.bottom="auto",n.style.left=`${Math.max(0,Math.min(r,a))}px`,n.style.top=`${Math.max(0,Math.min(o,c))}px`},l=()=>{t=!1,document.removeEventListener("mousemove",c),document.removeEventListener("mouseup",l)};return e.addEventListener("mousedown",a),()=>{e.removeEventListener("mousedown",a),document.removeEventListener("mousemove",c),document.removeEventListener("mouseup",l)}}(d,de)),ne(ae,{messagesContainer:ue,inputEl:pe,sendBtn:me,clearBtn:he,categorySelect:ge,historyPanel:ke,showLoading:fe,hideLoading:ye}),de.addEventListener("csk:categoryChange",e=>{var n;n=e.detail.categoryId,R=n,ee=void 0!==n,r.lifecycleCategoryChange(null!=n?n:"全部")}),de.addEventListener("csk:loadHistory",()=>{ie()}),ce=!0,r.lifecycleInit(ae.integrateId,ae.requestDomain),te().catch(e=>{r.warn("chatId 初始化失败,将在发送消息时重试",e)})},destroy:function(){if(!ce)return;le&&le.parentNode&&(le.parentNode.removeChild(le),le=null),de&&de.parentNode&&(de.parentNode.removeChild(de),de=null),be&&(be(),be=null),v&&v.parentNode&&(v.parentNode.removeChild(v),v=null),document.querySelectorAll("style[data-csk-sdk]").forEach(e=>e.remove());const e=null==ae?void 0:ae.integrateId;ae=null,ce=!1,ue=null,pe=null,me=null,he=null,ge=null,ke=null,fe=null,ye=null,r.lifecycleDestroy(e||"")},open:xe,close:_e,toggle:we,clearHistory:function(){ae&&(he?he.click():confirm("确定清空所有对话记录?")&&z(ae.integrateId))}};return"undefined"!=typeof window&&(window.ChatbotSDK=ve),ve}(); //# sourceMappingURL=chatbot-sdk.min.js.map diff --git a/client/dist/chatbot-sdk.min.js.map b/client/dist/chatbot-sdk.min.js.map index c00e342..1204c32 100644 --- a/client/dist/chatbot-sdk.min.js.map +++ b/client/dist/chatbot-sdk.min.js.map @@ -1 +1 @@ -{"version":3,"file":"chatbot-sdk.min.js","sources":["../src/logger.ts","../src/i18n.ts","../src/api.ts","../src/styles.ts","../src/utils.ts","../src/dom.ts","../src/storage.ts","../src/markdown.ts","../src/chat.ts","../src/index.ts","../src/config.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":["PREFIX","debugEnabled","timers","logger","info","msg","data","console","log","undefined","warn","error","time","label","Date","now","timeEnd","prefix","start","duration","lifecycleInit","integrateId","requestDomain","this","lifecycleDestroy","lifecycleSend","length","lifecycleReply","lifecycleError","status","message","lifecycleClear","lifecycleStreamDone","lifecycleCategoryChange","categoryId","dictionaries","title","minimize","close","placeholder","send","loading","stream_interrupted","stream_unstable","category_placeholder","category_all","category_load_error","source_title","source_count","source_loading","clear","clear_confirm","history_title","history_empty","history_load_error","history_delete_confirm","history_export","history_delete","error_network","error_timeout","error_server","error_cors","error_auth","error_forbidden","error_not_found","error_rate_limit","error_unavailable","error_unknown","error_send","error_stream_unsupported","en","currentLocale","t","key","params","text","k","v","Object","entries","replace","String","currentConfig","buildUrl","path","Error","startsWith","setIfPresent","value","trim","set","async","safeFetch","url","options","timeout","controller","AbortController","timer","setTimeout","abort","fetch","assign","signal","mode","credentials","err","DOMException","name","CskError","TypeError","includes","clearTimeout","constructor","type","super","getHttpErrorMessage","chatRequest","URLSearchParams","chatId","userId","toString","buildChatUrl","response","ok","errorMsg","chatSSERequest","onChunk","onDone","onError","useRag","buildChatRAGSSEUrl","buildChatSSEUrl","totalText","REQUEST_TIMEOUT","reader","_a","body","getReader","decoder","TextDecoder","stream","buffer","done","read","decode","lines","split","pop","line","trimmed","substring","readErr","releaseLock","fetchRagSources","buildRagSourcesUrl","json","success","Array","isArray","fetchConversationList","page","size","accountId","roleId","encodeURIComponent","list","total","pages","initChatId","cachedChatId","localStorage","getItem","chatIdStorageKey","loadCachedChatId","result","latestConv","conversationId","saveCachedChatId","messageCount","newChatId","random","crypto","randomUUID","Math","generateChatId","setItem","removeItem","styleElement","cssVars","config","darker","hex","amount","match","clamp","max","min","r","parseInt","g","b","padStart","adjustColor","primaryColor","width","injectStyles","document","querySelector","createElement","setAttribute","textContent","getStyles","head","appendChild","uuid","c","escapeHtml","map","ch","createLauncher","onClick","launcher","id","className","position","innerHTML","launcherIcon","debouncedClick","fn","delay","args","apply","debounce","addEventListener","e","preventDefault","renderUserBubble","container","timestamp","wrapper","bubble","formatTime","renderAIBubble","renderMd","renderSources","sources","existing","remove","sourcesEl","header","titleSpan","n","arrow","classList","toggle","src","item","sourceName","snippet","meta","metaParts","push","chunkIndex","score","toFixed","join","timeEl","insertBefore","scrollToBottom","scrollTop","scrollHeight","d","getHours","getMinutes","storageKey","saveMessages","messages","slice","updatedAt","JSON","stringify","clearMessages","CODE_BLOCK_PREFIX","INLINE_CODE_PREFIX","renderMarkdown","codeBlocks","processed","_match","lang","code","idx","escapedCode","trimEnd","langClass","inlineCodes","restorePlaceholders","inList","listType","inBlockquote","paragraphBuffer","i","flushParagraph","closeList","closeBlockquote","headingMatch","level","quoteMatch","inlineFormat","ulMatch","olMatch","test","_m","linkText","replacements","RegExp","currentCategoryId","messagesContainer","inputEl","sendBtn","clearBtn","categorySelect","historyPanel","showLoadingFn","hideLoadingFn","isSending","initChat","cfg","dom","showLoading","hideLoading","showCategorySwitch","handleSend","shiftKey","updateSendBtnState","confirm","querySelectorAll","forEach","el","style","display","newId","generateNewChatId","handleClear","bindSendEvents","tree","fetchCategoryTree","addOptions","nodes","indent","node","option","repeat","selected","children","loadCategories","initChatHistory","fetchConversationMessages","role","messageType","content","createTime","getTime","renderHistory","loadHistoryFromBackend","cached","raw","parse","loadMessages","removeAttribute","height","userTimestamp","userMsg","aiContent","aiTimestamp","shouldUseRag","streaming","Promise","resolve","reject","bubbleEl","accumulated","streamStarted","chunk","createEmptyAIBubble","then","catch","sendStreamMessage","aiMsg","ragSources","s","documentId","_b","lastAiMsg","fetchAndRenderSources","errMsg","errorBubble","color","historyPanelEl","contains","loadHistoryConversations","listEl","items","onExport","onDelete","empty","idEl","metaEl","lastMessageTime","createdAt","actionsEl","exportBtn","stopPropagation","deleteBtn","renderHistoryList","firstMessageTime","window","open","method","deleteConversation","isInitialized","launcherEl","windowEl","dragCleanup","add","focus","ChatbotSDK","init","rawConfig","parsed","URL","_g","showClear","_c","showAdminPanel","_d","_e","locale","debug","_f","parseConfig","enabled","matched","keys","find","setLocale","setApiConfig","titleEl","actions","historyBtn","minimizeBtn","closeBtn","backBtn","isHidden","dispatchEvent","CustomEvent","categoryBar","categoryLabel","selectedId","detail","Number","inputArea","loadingEl","parentNode","removeChild","createChatWindow","headerEl","dragging","startX","startY","offsetX","offsetY","onMouseDown","clientX","clientY","rect","getBoundingClientRect","left","top","onMouseMove","onMouseUp","x","y","maxX","innerWidth","offsetWidth","maxY","innerHeight","offsetHeight","right","bottom","removeEventListener","enableDrag","destroy","oldIntegrateId","clearHistory","click"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"chatbot-sdk.min.js","sources":["../src/logger.ts","../src/i18n.ts","../src/api.ts","../src/styles.ts","../src/utils.ts","../src/dom.ts","../src/storage.ts","../src/markdown.ts","../src/chat.ts","../src/index.ts","../src/config.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":["PREFIX","debugEnabled","timers","logger","info","msg","data","console","log","undefined","warn","error","time","label","Date","now","timeEnd","prefix","start","duration","lifecycleInit","integrateId","requestDomain","this","lifecycleDestroy","lifecycleSend","length","lifecycleReply","lifecycleError","status","message","lifecycleClear","lifecycleStreamDone","lifecycleCategoryChange","categoryId","dictionaries","title","minimize","close","placeholder","send","loading","stream_interrupted","stream_unstable","category_placeholder","category_all","category_load_error","source_title","source_count","source_loading","clear","clear_confirm","history_title","history_empty","history_load_error","history_delete_confirm","history_export","history_delete","error_network","error_timeout","error_server","error_cors","error_auth","error_forbidden","error_not_found","error_rate_limit","error_unavailable","error_unknown","error_send","error_stream_unsupported","en","currentLocale","t","key","params","text","k","v","Object","entries","replace","String","currentConfig","updateChatId","chatId","getChatId","buildUrl","path","Error","startsWith","setIfPresent","value","trim","set","async","safeFetch","url","options","timeout","controller","AbortController","timer","setTimeout","abort","fetch","assign","signal","mode","credentials","err","DOMException","name","CskError","TypeError","includes","clearTimeout","constructor","type","super","getHttpErrorMessage","chatRequest","URLSearchParams","userId","toString","buildChatUrl","response","ok","errorMsg","chatSSERequest","onChunk","onDone","onError","useRag","buildChatRAGSSEUrl","buildChatSSEUrl","totalText","REQUEST_TIMEOUT","reader","_a","body","getReader","decoder","TextDecoder","stream","buffer","done","read","decode","lines","split","pop","line","trimmed","substring","readErr","releaseLock","fetchRagSources","buildRagSourcesUrl","json","success","Array","isArray","fetchConversationList","page","size","accountId","roleId","encodeURIComponent","list","total","pages","fetchConversationMessages","conversationId","messages","initChatId","cachedChatId","localStorage","getItem","chatIdStorageKey","loadCachedChatId","result","latestConv","saveCachedChatId","messageCount","newChatId","random","crypto","randomUUID","Math","generateChatId","setItem","removeItem","styleElement","cssVars","config","darker","hex","amount","match","clamp","max","min","r","parseInt","g","b","padStart","adjustColor","primaryColor","width","injectStyles","document","querySelector","createElement","setAttribute","textContent","getStyles","head","appendChild","uuid","c","escapeHtml","map","ch","createLauncher","onClick","launcher","id","className","position","innerHTML","launcherIcon","debouncedClick","fn","delay","args","apply","debounce","addEventListener","e","preventDefault","renderUserBubble","container","timestamp","wrapper","bubble","formatTime","renderAIBubble","renderMd","renderSources","sources","existing","remove","sourcesEl","header","titleSpan","n","arrow","classList","toggle","src","item","sourceName","snippet","meta","metaParts","push","chunkIndex","score","toFixed","join","timeEl","insertBefore","scrollToBottom","scrollTop","scrollHeight","d","getHours","getMinutes","storageKey","saveMessages","slice","updatedAt","JSON","stringify","clearMessages","CODE_BLOCK_PREFIX","INLINE_CODE_PREFIX","renderMarkdown","codeBlocks","processed","_match","lang","code","idx","escapedCode","trimEnd","langClass","inlineCodes","restorePlaceholders","inList","listType","inBlockquote","paragraphBuffer","i","flushParagraph","closeList","closeBlockquote","headingMatch","level","quoteMatch","inlineFormat","ulMatch","olMatch","test","_m","linkText","replacements","RegExp","currentCategoryId","messagesContainer","inputEl","sendBtn","clearBtn","categorySelect","historyPanel","showLoadingFn","hideLoadingFn","isSending","initChat","cfg","dom","showLoading","hideLoading","showCategorySwitch","handleSend","shiftKey","updateSendBtnState","confirm","querySelectorAll","forEach","el","style","display","newId","generateNewChatId","handleClear","bindSendEvents","tree","fetchCategoryTree","addOptions","nodes","indent","node","option","repeat","selected","children","loadCategories","initChatHistory","role","messageType","content","createTime","getTime","renderHistory","loadHistoryFromBackend","cached","raw","parse","loadMessages","removeAttribute","height","userTimestamp","userMsg","aiContent","aiTimestamp","shouldUseRag","streaming","Promise","resolve","reject","bubbleEl","accumulated","streamStarted","chunk","createEmptyAIBubble","then","catch","sendStreamMessage","aiMsg","ragSources","s","documentId","_b","lastAiMsg","fetchAndRenderSources","errMsg","errorBubble","color","historyPanelEl","contains","loadHistoryConversations","listEl","items","onSelect","onExport","onDelete","activeChatId","empty","convId","add","idEl","lastMessagePreview","metaEl","lastMessageTime","createdAt","actionsEl","exportBtn","stopPropagation","deleteBtn","renderHistoryList","firstMessageTime","switchToConversation","window","open","method","deleteConversation","isInitialized","launcherEl","windowEl","dragCleanup","focus","ChatbotSDK","init","rawConfig","parsed","URL","_g","showClear","_c","showAdminPanel","_d","_e","locale","debug","_f","parseConfig","enabled","matched","keys","find","setLocale","setApiConfig","titleEl","actions","historyBtn","minimizeBtn","closeBtn","backBtn","isHidden","dispatchEvent","CustomEvent","categoryBar","categoryLabel","selectedId","detail","Number","inputArea","loadingEl","parentNode","removeChild","createChatWindow","headerEl","dragging","startX","startY","offsetX","offsetY","onMouseDown","clientX","clientY","rect","getBoundingClientRect","left","top","onMouseMove","onMouseUp","x","y","maxX","innerWidth","offsetWidth","maxY","innerHeight","offsetHeight","right","bottom","removeEventListener","enableDrag","destroy","oldIntegrateId","clearHistory","click"],"mappings":"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"} \ No newline at end of file diff --git a/client/src/chat.ts b/client/src/chat.ts index 2b1ab30..0ff7ad2 100644 --- a/client/src/chat.ts +++ b/client/src/chat.ts @@ -426,22 +426,42 @@ export async function loadHistoryConversations(): Promise { try { const result = await fetchConversationList(1, 50, config.userId, config.integrateId); const items: HistoryItemData[] = result.list.map(c => ({ - id: c.conversationId || c.chatId || '', - chatId: c.conversationId || c.chatId || '', + id: c.conversationId || '', + chatId: c.conversationId || '', // conversationId 就是 chatId messageCount: c.messageCount, lastMessageTime: c.lastMessageTime, + lastMessagePreview: c.lastMessagePreview, createdAt: c.firstMessageTime || c.createdAt, })); renderHistoryList( listEl, items, + // onSelect: 切换到选中的会话 + (conversationId: string) => { + switchToConversation(conversationId); + }, + // onExport (id: string) => { window.open(getConversationExportUrl(id), '_blank'); }, + // onDelete async (id: string) => { if (!confirm(t('history_delete_confirm'))) return; const ok = await deleteConversation(id); - if (ok) loadHistoryConversations(); - } + if (ok) { + // 如果删的是当前会话,清空聊天窗口 + if (id === getChatId()) { + messages = []; + if (messagesContainer) { + const msgs = messagesContainer.querySelectorAll('.csk-msg, .csk-loading'); + msgs.forEach(el => el.remove()); + } + if (clearBtn) clearBtn.style.display = 'none'; + } + loadHistoryConversations(); + } + }, + // 当前活跃 chatId,用于高亮 + getChatId() ); } catch (err) { logger.error(t('history_load_error'), err); @@ -449,6 +469,56 @@ export async function loadHistoryConversations(): Promise { } } +/** + * 切换到指定会话:加载上下文并继续对话 + * @param conversationId 会话 ID(即 chatId) + */ +export async function switchToConversation(conversationId: string): Promise { + if (!config || !messagesContainer) return; + + logger.info(`切换到会话 conversationId=${conversationId}`); + + // 1. 更新 chatId + updateChatId(conversationId); + saveCachedChatId(config.integrateId, config.userId, conversationId); + + // 2. 关闭历史面板 + if (historyPanel) { + historyPanel.classList.add('csk-history-panel--hidden'); + } + + // 3. 清空当前消息 + messages = []; + const msgs = messagesContainer.querySelectorAll('.csk-msg, .csk-loading'); + msgs.forEach(el => el.remove()); + + // 4. 从后端加载该会话的消息 + try { + const result = await fetchConversationMessages(conversationId); + if (result.messages.length > 0) { + messages = result.messages.map((msg) => ({ + id: uuid(), + role: msg.messageType === 'USER' ? 'user' : 'ai' as const, + content: msg.content, + timestamp: new Date(msg.createTime).getTime(), + })); + + renderHistory(); + logger.info(`加载会话 ${conversationId} 的 ${messages.length} 条消息`); + + // 同步到 localStorage + saveMessages(config.integrateId, messages); + } + } catch (err) { + logger.warn(`加载会话消息失败 conversationId=${conversationId}`, err); + } + + // 5. 显示清空按钮 + if (clearBtn && messages.length > 0) { + clearBtn.style.display = 'inline-flex'; + } +} + /** 获取当前消息列表 */ export function getMessages(): ChatMessage[] { return messages; diff --git a/client/src/dom.ts b/client/src/dom.ts index 6dee201..0d77305 100644 --- a/client/src/dom.ts +++ b/client/src/dom.ts @@ -446,6 +446,7 @@ export interface HistoryItemData { chatId?: string; messageCount?: number; lastMessageTime?: string; + lastMessagePreview?: string; createdAt?: string; } @@ -453,8 +454,10 @@ export interface HistoryItemData { export function renderHistoryList( listEl: HTMLElement, items: HistoryItemData[], + onSelect: (conversationId: string) => void, onExport: (id: string) => void, onDelete: (id: string) => void, + activeChatId?: string, emptyText?: string ): void { listEl.innerHTML = ''; @@ -473,13 +476,25 @@ export function renderHistoryList( for (const item of items) { const el = document.createElement('div'); el.className = 'csk-history-item'; + // 高亮当前活跃会话 + const convId = item.chatId || item.id; + if (activeChatId && convId === activeChatId) { + el.classList.add('csk-history-item--active'); + } const info = document.createElement('div'); info.className = 'csk-history-item__info'; const idEl = document.createElement('div'); idEl.className = 'csk-history-item__id'; - idEl.textContent = item.chatId || item.id; + // 显示最后一条消息预览,没有则显示 chatId + if (item.lastMessagePreview) { + idEl.textContent = item.lastMessagePreview.length > 60 + ? item.lastMessagePreview.substring(0, 60) + '...' + : item.lastMessagePreview; + } else { + idEl.textContent = convId; + } const metaEl = document.createElement('div'); metaEl.className = 'csk-history-item__meta'; @@ -520,6 +535,12 @@ export function renderHistoryList( el.appendChild(info); el.appendChild(actionsEl); + + // 点击整行 → 切换到该会话 + el.addEventListener('click', () => { + onSelect(convId); + }); + listEl.appendChild(el); } } diff --git a/client/src/styles.ts b/client/src/styles.ts index 90d1b38..1f63281 100644 --- a/client/src/styles.ts +++ b/client/src/styles.ts @@ -570,6 +570,13 @@ function getStyles(config: ResolvedConfig): string { .csk-history-item:hover { background: #F3F4F6; } +.csk-history-item--active { + background: #EEF2FF; + border-left: 3px solid var(--csk-primary); +} +.csk-history-item--active:hover { + background: #E0E7FF; +} .csk-history-item__info { flex: 1; min-width: 0; diff --git a/src/main/resources/static/sdk/chatbot-sdk.js b/src/main/resources/static/sdk/chatbot-sdk.js index 8273324..909dff5 100644 --- a/src/main/resources/static/sdk/chatbot-sdk.js +++ b/src/main/resources/static/sdk/chatbot-sdk.js @@ -1275,6 +1275,13 @@ var ChatbotSDK = (function () { .csk-history-item:hover { background: #F3F4F6; } +.csk-history-item--active { + background: #EEF2FF; + border-left: 3px solid var(--csk-primary); +} +.csk-history-item--active:hover { + background: #E0E7FF; +} .csk-history-item__info { flex: 1; min-width: 0; @@ -1810,7 +1817,7 @@ var ChatbotSDK = (function () { } } /** 渲染会话列表 */ - function renderHistoryList(listEl, items, onExport, onDelete, emptyText) { + function renderHistoryList(listEl, items, onSelect, onExport, onDelete, activeChatId, emptyText) { listEl.innerHTML = ''; if (items.length === 0) { const empty = document.createElement('div'); @@ -1825,11 +1832,24 @@ var ChatbotSDK = (function () { for (const item of items) { const el = document.createElement('div'); el.className = 'csk-history-item'; + // 高亮当前活跃会话 + const convId = item.chatId || item.id; + if (activeChatId && convId === activeChatId) { + el.classList.add('csk-history-item--active'); + } const info = document.createElement('div'); info.className = 'csk-history-item__info'; const idEl = document.createElement('div'); idEl.className = 'csk-history-item__id'; - idEl.textContent = item.chatId || item.id; + // 显示最后一条消息预览,没有则显示 chatId + if (item.lastMessagePreview) { + idEl.textContent = item.lastMessagePreview.length > 60 + ? item.lastMessagePreview.substring(0, 60) + '...' + : item.lastMessagePreview; + } + else { + idEl.textContent = convId; + } const metaEl = document.createElement('div'); metaEl.className = 'csk-history-item__meta'; const metaParts = []; @@ -1866,6 +1886,10 @@ var ChatbotSDK = (function () { actionsEl.appendChild(deleteBtn); el.appendChild(info); el.appendChild(actionsEl); + // 点击整行 → 切换到该会话 + el.addEventListener('click', () => { + onSelect(convId); + }); listEl.appendChild(el); } } @@ -2494,25 +2518,90 @@ var ChatbotSDK = (function () { try { const result = await fetchConversationList(1, 50, config$1.userId, config$1.integrateId); const items = result.list.map(c => ({ - id: c.conversationId || c.chatId || '', - chatId: c.conversationId || c.chatId || '', + id: c.conversationId || '', + chatId: c.conversationId || '', // conversationId 就是 chatId messageCount: c.messageCount, lastMessageTime: c.lastMessageTime, + lastMessagePreview: c.lastMessagePreview, createdAt: c.firstMessageTime || c.createdAt, })); - renderHistoryList(listEl, items, (id) => { window.open(getConversationExportUrl(id), '_blank'); }, async (id) => { + renderHistoryList(listEl, items, + // onSelect: 切换到选中的会话 + (conversationId) => { + switchToConversation(conversationId); + }, + // onExport + (id) => { window.open(getConversationExportUrl(id), '_blank'); }, + // onDelete + async (id) => { if (!confirm(t('history_delete_confirm'))) return; const ok = await deleteConversation(id); - if (ok) + if (ok) { + // 如果删的是当前会话,清空聊天窗口 + if (id === getChatId()) { + messages = []; + if (messagesContainer$1) { + const msgs = messagesContainer$1.querySelectorAll('.csk-msg, .csk-loading'); + msgs.forEach(el => el.remove()); + } + if (clearBtn$1) + clearBtn$1.style.display = 'none'; + } loadHistoryConversations(); - }); + } + }, + // 当前活跃 chatId,用于高亮 + getChatId()); } catch (err) { logger.error(t('history_load_error'), err); listEl.innerHTML = `
${t('history_load_error')}
`; } } + /** + * 切换到指定会话:加载上下文并继续对话 + * @param conversationId 会话 ID(即 chatId) + */ + async function switchToConversation(conversationId) { + if (!config$1 || !messagesContainer$1) + return; + logger.info(`切换到会话 conversationId=${conversationId}`); + // 1. 更新 chatId + updateChatId(conversationId); + saveCachedChatId(config$1.integrateId, config$1.userId, conversationId); + // 2. 关闭历史面板 + if (historyPanel$1) { + historyPanel$1.classList.add('csk-history-panel--hidden'); + } + // 3. 清空当前消息 + messages = []; + const msgs = messagesContainer$1.querySelectorAll('.csk-msg, .csk-loading'); + msgs.forEach(el => el.remove()); + // 4. 从后端加载该会话的消息 + try { + const result = await fetchConversationMessages(conversationId); + if (result.messages.length > 0) { + messages = result.messages.map((msg) => ({ + id: uuid(), + role: msg.messageType === 'USER' ? 'user' : 'ai', + content: msg.content, + timestamp: new Date(msg.createTime).getTime(), + })); + renderHistory(); + logger.info(`加载会话 ${conversationId} 的 ${messages.length} 条消息`); + // 同步到 localStorage + saveMessages(config$1.integrateId, messages); + } + } + catch (err) { + logger.warn(`加载会话消息失败 conversationId=${conversationId}`, err); + } + // 5. 显示清空按钮 + if (clearBtn$1 && messages.length > 0) { + clearBtn$1.style.display = 'inline-flex'; + } + } // ==================== 单例状态 ==================== let config = null; diff --git a/src/main/resources/static/sdk/chatbot-sdk.js.map b/src/main/resources/static/sdk/chatbot-sdk.js.map index ac22c50..7168aee 100644 --- a/src/main/resources/static/sdk/chatbot-sdk.js.map +++ b/src/main/resources/static/sdk/chatbot-sdk.js.map @@ -1 +1 @@ -{"version":3,"file":"chatbot-sdk.js","sources":["../src/logger.ts","../src/config.ts","../src/i18n.ts","../src/api.ts","../src/styles.ts","../src/utils.ts","../src/dom.ts","../src/storage.ts","../src/markdown.ts","../src/chat.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":["config","messagesContainer","inputEl","sendBtn","clearBtn","categorySelect","historyPanel","showLoadingFn","hideLoadingFn"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"chatbot-sdk.js","sources":["../src/logger.ts","../src/config.ts","../src/i18n.ts","../src/api.ts","../src/styles.ts","../src/utils.ts","../src/dom.ts","../src/storage.ts","../src/markdown.ts","../src/chat.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":["config","messagesContainer","inputEl","sendBtn","clearBtn","categorySelect","historyPanel","showLoadingFn","hideLoadingFn"],"mappings":"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"} \ No newline at end of file diff --git a/src/main/resources/static/sdk/chatbot-sdk.min.js b/src/main/resources/static/sdk/chatbot-sdk.min.js index 90e850f..e858b94 100644 --- a/src/main/resources/static/sdk/chatbot-sdk.min.js +++ b/src/main/resources/static/sdk/chatbot-sdk.min.js @@ -1,2 +1,2 @@ -var ChatbotSDK=function(){"use strict";const n="[ChatbotSDK]";let e=!0;const t={},r={info(t,r){e&&console.log(n,t,void 0!==r?r:"")},warn(t,r){e&&console.warn(n,t,void 0!==r?r:"")},error(e,t){console.error(n,e,void 0!==t?t:"")},time(n){t[n]=Date.now()},timeEnd(r,o){const s=t[r];if(void 0!==s){const i=Date.now()-s;if(delete t[r],e){const e=o?`${o} ${i}ms`:`${r} ${i}ms`;console.log(n,e)}return i}return 0},lifecycleInit(n,e){this.info(`初始化完成 integrateId=${n} requestDomain=${e}`)},lifecycleDestroy(n){this.info(`销毁实例 integrateId=${n}`)},lifecycleSend(n,e){this.info(`发送消息 integrateId=${n} length=${e}`),this.time(`send_${n}`)},lifecycleReply(n,e){const t=this.timeEnd(`send_${n}`,"AI 回复");this.info(`AI 回复 integrateId=${n} length=${e} duration=${t}ms`)},lifecycleError(n,e,t){this.timeEnd(`send_${n}`),this.error(`请求失败 integrateId=${n} status=${e} message=${t}`)},lifecycleClear(n){this.info(`清空会话 integrateId=${n}`)},lifecycleStreamDone(n,e){const t=this.timeEnd(`send_${n}`,"流式回复");this.info(`流式回复完成 integrateId=${n} length=${e} duration=${t}ms`)},lifecycleCategoryChange(n){this.info(`切换知识库分类 categoryId=${n}`)}};const o={"zh-CN":{title:"AI 智能助手",minimize:"最小化",close:"关闭",placeholder:"输入您的问题...",send:"发送",loading:"正在思考...",stream_interrupted:"回复被中断",stream_unstable:"网络不稳定,内容可能不完整",category_placeholder:"选择知识库分类",category_all:"全部分类",category_load_error:"加载分类失败",source_title:"参考来源",source_count:"{n} 条参考来源",source_loading:"加载来源中...",clear:"清空对话",clear_confirm:"确定清空所有对话记录?",history_title:"历史会话",history_empty:"暂无历史会话",history_load_error:"加载会话列表失败",history_delete_confirm:"确定删除该会话?",history_export:"导出",history_delete:"删除",error_network:"网络连接失败,请检查网络",error_timeout:"请求超时,请稍后重试",error_server:"服务器异常,请稍后重试",error_cors:"跨域请求被拦截,请联系管理员将当前域名加入 API 白名单",error_auth:"鉴权失败,请联系管理员",error_forbidden:"无访问权限,请联系管理员配置",error_not_found:"请求的资源不存在",error_rate_limit:"请求过于频繁,请稍后重试",error_unavailable:"服务暂不可用,请稍后重试",error_unknown:"请求发生未知错误",error_send:"发送失败,请稍后重试",error_stream_unsupported:"浏览器不支持流式读取"},en:{title:"AI Assistant",minimize:"Minimize",close:"Close",placeholder:"Type your question...",send:"Send",loading:"Thinking...",stream_interrupted:"Response interrupted",stream_unstable:"Network unstable, content may be incomplete",category_placeholder:"Select category",category_all:"All categories",category_load_error:"Failed to load categories",source_title:"Sources",source_count:"{n} source(s)",source_loading:"Loading sources...",clear:"Clear chat",clear_confirm:"Clear all conversation history?",history_title:"History",history_empty:"No conversations yet",history_load_error:"Failed to load conversations",history_delete_confirm:"Delete this conversation?",history_export:"Export",history_delete:"Delete",error_network:"Network connection failed",error_timeout:"Request timed out, please try again",error_server:"Server error, please try again later",error_cors:"CORS request blocked. Please contact admin to whitelist your domain",error_auth:"Authentication failed, please contact admin",error_forbidden:"Access denied, please contact admin",error_not_found:"Resource not found",error_rate_limit:"Too many requests, please try again later",error_unavailable:"Service temporarily unavailable",error_unknown:"Unknown request error",error_send:"Failed to send, please try again",error_stream_unsupported:"Browser does not support streaming"}};let s="zh-CN";function i(n,e){let t=(o[s]||o["zh-CN"])[n]||o["zh-CN"][n]||n;if(e)for(const[n,r]of Object.entries(e))t=t.replace(`{${n}}`,String(r));return t}let a=null;function c(n){if(!a)throw new Error("API 配置未初始化");return`${a.requestDomain.replace(/\/+$/,"")}${n.startsWith("/")?n:`/${n}`}`}function l(n,e,t){null!=t&&("string"==typeof t&&""===t.trim()||n.set(e,String(t)))}async function d(n,e={},t=3e4){const r=new AbortController,o=setTimeout(()=>r.abort(),t);try{return await fetch(n,Object.assign(Object.assign({},e),{signal:r.signal,mode:"cors",credentials:"include"}))}catch(n){if(n instanceof DOMException&&"AbortError"===n.name)throw new u(i("error_timeout"),"timeout");if(n instanceof TypeError&&n.message.includes("Failed to fetch"))throw new u(i("error_cors"),"cors");throw new u(i("error_network"),"network")}finally{clearTimeout(o)}}class u extends Error{constructor(n,e){super(n),this.name="CskError",this.type=e}}function p(n){switch(n){case 401:return i("error_auth");case 403:return i("error_forbidden");case 404:return i("error_not_found");case 429:return i("error_rate_limit");case 500:return i("error_server");case 502:case 503:return i("error_unavailable");default:return`${i("error_unknown")}(${n})`}}async function m(n){const e=function(n){const e=new URLSearchParams;return e.set("message",n),e.set("chatId",a.chatId),l(e,"roleId",a.integrateId),l(e,"accountId",a.userId),c(`/ai/assistant_app/chat/sync?${e.toString()}`)}(n);r.lifecycleSend(a.integrateId,n.length);try{const n=await d(e);if(!n.ok){const e=p(n.status);throw r.lifecycleError(a.integrateId,String(n.status),e),new u(e,`http_${n.status}`)}const t=await n.text();return r.lifecycleReply(a.integrateId,t.length),t}catch(n){if(n instanceof u)throw n;throw r.lifecycleError(a.integrateId,"unknown",String(n)),new u(i("error_unknown"),"unknown")}}async function h(n,e,t,o,s,m){var h;const g=m?function(n,e){const t=new URLSearchParams;return t.set("message",n),t.set("chatId",a.chatId),t.set("rewriteStrategy","REWRITE"),l(t,"roleId",a.integrateId),l(t,"accountId",a.userId),l(t,"categoryId",null!=e?e:a.categoryId),c(`/ai/assistant_app/chat/rag/sse?${t.toString()}`)}(n,s):function(n,e){const t=new URLSearchParams;return t.set("message",n),t.set("chatId",a.chatId),l(t,"roleId",a.integrateId),l(t,"accountId",a.userId),l(t,"categoryId",null!=e?e:a.categoryId),c(`/ai/assistant_app/chat/sse?${t.toString()}`)}(n,s);let k="";r.lifecycleSend(a.integrateId,n.length);try{const n=await d(g,{},6e4);if(!n.ok){const e=p(n.status);return r.lifecycleError(a.integrateId,String(n.status),e),void o(new u(e,`http_${n.status}`))}const s=null===(h=n.body)||void 0===h?void 0:h.getReader();if(!s)return void o(new u(i("error_stream_unsupported"),"stream_unsupported"));const c=new TextDecoder("utf-8",{stream:!0});let l="";try{for(;;){const{done:n,value:t}=await s.read();if(n)break;l+=c.decode(t,{stream:!0});const r=l.split("\n");l=r.pop()||"";for(const n of r){const t=n.trim();if(t&&!t.startsWith(":"))if(t.startsWith("data:")){const n=t.substring(5).trim();n&&(k+=n,e(n))}else{if("[DONE]"===t)break;t.startsWith("event:")||t.startsWith("id:")||t.startsWith("retry:")||(k+=t,e(t))}}}if(l.trim()){const n=l.trim();if(n.startsWith("data:")){const t=n.substring(5).trim();t&&(k+=t,e(t))}else"[DONE]"!==n&&(k+=n,e(n))}}catch(n){if(!(k.length>0))throw n;e("\n\n"+i("stream_unstable"))}finally{s.releaseLock()}r.lifecycleStreamDone(a.integrateId,k.length),t()}catch(n){n instanceof u?o(n):(r.lifecycleError(a.integrateId,"unknown",String(n)),o(new u(i("error_network"),"network")))}}async function g(n,e){const t=function(n,e){const t=new URLSearchParams;return t.set("message",n),t.set("chatId",a.chatId),t.set("rewriteStrategy","REWRITE"),l(t,"roleId",a.integrateId),l(t,"accountId",a.userId),l(t,"categoryId",null!=e?e:a.categoryId),c(`/ai/assistant_app/rag/sources?${t.toString()}`)}(n,e);try{const n=await d(t);if(!n.ok)throw new u(p(n.status),`http_${n.status}`);const e=await n.json();return e.success&&Array.isArray(e.data)?(r.info(`获取引用来源 count=${e.data.length}`),e.data):[]}catch(n){return r.error("获取引用来源失败",n),[]}}async function k(n=1,e=20,t,o){let s=`/conversation/list?page=${n}&size=${e}`;t&&(s+=`&accountId=${encodeURIComponent(t)}`),o&&(s+=`&roleId=${encodeURIComponent(o)}`);const i=c(s);try{const n=await d(i);if(!n.ok)throw new u(p(n.status),`http_${n.status}`);const e=await n.json();return{list:e.success&&Array.isArray(e.data)?e.data:[],total:e.total||0,pages:e.pages||0}}catch(n){return r.error("加载会话列表失败",n),{list:[],total:0,pages:0}}}async function f(){if(!a)return"";const n=function(n,e){try{return localStorage.getItem(y(n,e))||""}catch(n){return""}}(a.integrateId,a.userId);if(n)return a.chatId=n,r.info(`从缓存恢复 chatId=${n}`),n;try{const n=await k(1,5,a.userId,a.integrateId);if(n.list.length>0){const e=n.list[0],t=e.conversationId||e.chatId||"";if(t)return a.chatId=t,b(a.integrateId,a.userId,t),r.info(`从后端恢复会话 chatId=${t} messageCount=${e.messageCount}`),t}}catch(n){r.warn("查询后端会话列表失败,将生成新 chatId",n)}const e=function(){const n="undefined"!=typeof crypto&&crypto.randomUUID?crypto.randomUUID().substring(0,8):Math.random().toString(36).substring(2,10);return`sdk_${Date.now()}_${n}`}();return a.chatId=e,b(a.integrateId,a.userId,e),r.info(`生成新 chatId=${e}`),e}function y(n,e){return`csk_chatId_${n}${e?"_"+e:""}`}function b(n,e,t){try{t?localStorage.setItem(y(n,e),t):localStorage.removeItem(y(n,e))}catch(n){}}let x=null;function _(n){const e=function(n,e){const t=n.match(/^#([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/);if(!t)return n;const r=n=>Math.max(0,Math.min(255,n)),o=r(parseInt(t[1],16)+e),s=r(parseInt(t[2],16)+e),i=r(parseInt(t[3],16)+e);return`#${o.toString(16).padStart(2,"0")}${s.toString(16).padStart(2,"0")}${i.toString(16).padStart(2,"0")}`}(n.primaryColor,-15);return`\n --csk-primary: ${n.primaryColor};\n --csk-primary-hover: ${e};\n --csk-bg-user: var(--csk-primary);\n --csk-bg-ai: #F3F4F6;\n --csk-text-user: #FFFFFF;\n --csk-text-ai: #1F2937;\n --csk-window-width: ${n.width}px;\n `}function w(n){document.querySelector("style[data-csk-sdk]")||(x=document.createElement("style"),x.setAttribute("data-csk-sdk",""),x.textContent=function(n){return`\n/* ChatbotSDK 样式 - csk- 命名空间 */\n.csk-root {\n ${_(n)}\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans SC", sans-serif;\n font-size: 14px;\n line-height: 1.5;\n color: #1F2937;\n}\n\n/* ========== 悬浮按钮 ========== */\n.csk-launcher {\n position: fixed;\n bottom: 20px;\n z-index: 9998;\n width: 56px;\n height: 56px;\n border-radius: 50%;\n background: #fff;\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n transition: all 0.2s ease;\n border: none;\n color: var(--csk-primary);\n user-select: none;\n}\n.csk-launcher--right {\n right: 20px;\n}\n.csk-launcher--left {\n left: 20px;\n}\n.csk-launcher:hover {\n transform: scale(1.1);\n box-shadow: 0 6px 24px rgba(0, 0, 0, 0.2);\n}\n.csk-launcher:active {\n transform: scale(0.95);\n}\n\n/* ========== 聊天弹窗 ========== */\n.csk-window {\n position: fixed;\n bottom: 20px;\n z-index: 9999;\n width: var(--csk-window-width);\n height: 560px;\n background: #fff;\n border-radius: 12px;\n box-shadow: 0 8px 40px rgba(0, 0, 0, 0.18);\n display: flex;\n flex-direction: column;\n overflow: hidden;\n transition: opacity 0.2s ease, transform 0.2s ease;\n}\n.csk-window--right {\n right: 20px;\n}\n.csk-window--left {\n left: 20px;\n}\n.csk-window--hidden {\n display: none;\n}\n\n/* ========== 头部 ========== */\n.csk-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 0 16px;\n height: 48px;\n min-height: 48px;\n background: var(--csk-primary);\n color: #fff;\n border-radius: 12px 12px 0 0;\n cursor: move;\n user-select: none;\n}\n.csk-header__title {\n font-size: 15px;\n font-weight: 600;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.csk-header__actions {\n display: flex;\n align-items: center;\n gap: 4px;\n}\n.csk-header__btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n border: none;\n background: transparent;\n color: #fff;\n cursor: pointer;\n border-radius: 6px;\n transition: background 0.15s;\n}\n.csk-header__btn:hover {\n background: rgba(255, 255, 255, 0.2);\n}\n\n/* ========== 消息区 ========== */\n.csk-messages {\n flex: 1;\n overflow-y: auto;\n padding: 16px;\n background: #FAFAFA;\n scroll-behavior: smooth;\n}\n.csk-messages::-webkit-scrollbar {\n width: 5px;\n}\n.csk-messages::-webkit-scrollbar-track {\n background: transparent;\n}\n.csk-messages::-webkit-scrollbar-thumb {\n background: #D1D5DB;\n border-radius: 3px;\n}\n\n/* 消息气泡 */\n.csk-msg {\n display: flex;\n flex-direction: column;\n margin-bottom: 16px;\n max-width: 85%;\n word-break: break-word;\n}\n.csk-msg--user {\n margin-left: auto;\n align-items: flex-end;\n}\n.csk-msg--ai {\n margin-right: auto;\n align-items: flex-start;\n}\n.csk-msg__bubble {\n padding: 10px 14px;\n border-radius: 12px;\n font-size: 14px;\n line-height: 1.6;\n}\n.csk-msg--user .csk-msg__bubble {\n background: var(--csk-bg-user);\n color: var(--csk-text-user);\n border-radius: 12px 12px 4px 12px;\n}\n.csk-msg--ai .csk-msg__bubble {\n background: var(--csk-bg-ai);\n color: var(--csk-text-ai);\n border-radius: 12px 12px 12px 4px;\n}\n.csk-msg__time {\n font-size: 11px;\n color: #9CA3AF;\n margin-top: 4px;\n padding: 0 4px;\n}\n\n/* ========== Loading 动画 ========== */\n.csk-loading {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 12px 14px;\n margin-bottom: 16px;\n}\n.csk-loading__dot {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n background: #D1D5DB;\n animation: csk-bounce 1.4s ease-in-out infinite both;\n}\n.csk-loading__dot:nth-child(1) { animation-delay: 0s; }\n.csk-loading__dot:nth-child(2) { animation-delay: 0.16s; }\n.csk-loading__dot:nth-child(3) { animation-delay: 0.32s; }\n\n@keyframes csk-bounce {\n 0%, 80%, 100% { transform: scale(0.6); }\n 40% { transform: scale(1); }\n}\n\n/* ========== 输入区 ========== */\n.csk-input-area {\n display: flex;\n align-items: center;\n padding: 10px 12px;\n border-top: 1px solid #E5E7EB;\n background: #fff;\n gap: 8px;\n}\n.csk-input {\n flex: 1;\n border: 1px solid #E5E7EB;\n border-radius: 8px;\n padding: 10px 12px;\n font-size: 14px;\n outline: none;\n transition: border-color 0.2s;\n font-family: inherit;\n resize: none;\n min-height: 20px;\n max-height: 100px;\n}\n.csk-input:focus {\n border-color: var(--csk-primary);\n}\n.csk-input::placeholder {\n color: #9CA3AF;\n}\n.csk-send-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 40px;\n height: 40px;\n min-width: 40px;\n border: none;\n border-radius: 8px;\n background: var(--csk-primary);\n color: #fff;\n cursor: pointer;\n transition: background 0.2s;\n}\n.csk-send-btn:hover {\n background: var(--csk-primary-hover);\n}\n.csk-send-btn:disabled {\n background: #D1D5DB;\n cursor: not-allowed;\n}\n\n/* ========== 清空按钮 ========== */\n.csk-clear-btn {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 6px 12px;\n border: 1px solid #E5E7EB;\n border-radius: 6px;\n background: #fff;\n color: #6B7280;\n font-size: 12px;\n cursor: pointer;\n margin: 0 auto 8px;\n transition: all 0.15s;\n}\n.csk-clear-btn:hover {\n background: #FEE2E2;\n border-color: #FCA5A5;\n color: #DC2626;\n}\n\n/* ========== P1: 知识库分类下拉 ========== */\n.csk-category-bar {\n display: flex;\n align-items: center;\n padding: 6px 12px;\n border-top: 1px solid #E5E7EB;\n background: #F9FAFB;\n gap: 8px;\n}\n.csk-category-bar__label {\n font-size: 12px;\n color: #6B7280;\n white-space: nowrap;\n}\n.csk-category-select {\n flex: 1;\n padding: 5px 8px;\n border: 1px solid #E5E7EB;\n border-radius: 6px;\n font-size: 12px;\n color: #374151;\n background: #fff;\n outline: none;\n cursor: pointer;\n font-family: inherit;\n transition: border-color 0.2s;\n max-width: 200px;\n}\n.csk-category-select:focus {\n border-color: var(--csk-primary);\n}\n\n/* ========== P1: RAG 引用来源卡片 ========== */\n.csk-sources {\n margin-top: 8px;\n border: 1px solid #E5E7EB;\n border-radius: 8px;\n overflow: hidden;\n font-size: 12px;\n max-width: 100%;\n}\n.csk-sources__header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 8px 12px;\n background: #F9FAFB;\n cursor: pointer;\n user-select: none;\n transition: background 0.15s;\n}\n.csk-sources__header:hover {\n background: #F3F4F6;\n}\n.csk-sources__title {\n display: flex;\n align-items: center;\n gap: 4px;\n font-weight: 500;\n color: #374151;\n}\n.csk-sources__arrow {\n transition: transform 0.2s;\n color: #9CA3AF;\n}\n.csk-sources--collapsed .csk-sources__arrow {\n transform: rotate(-90deg);\n}\n.csk-sources__body {\n border-top: 1px solid #E5E7EB;\n padding: 0;\n}\n.csk-sources--collapsed .csk-sources__body {\n display: none;\n}\n.csk-source-item {\n padding: 8px 12px;\n border-bottom: 1px solid #F3F4F6;\n transition: background 0.15s;\n}\n.csk-source-item:last-child {\n border-bottom: none;\n}\n.csk-source-item:hover {\n background: #F9FAFB;\n}\n.csk-source-item__name {\n font-weight: 500;\n color: #1F2937;\n margin-bottom: 2px;\n}\n.csk-source-item__snippet {\n color: #6B7280;\n line-height: 1.4;\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n}\n.csk-source-item__meta {\n font-size: 11px;\n color: #9CA3AF;\n margin-top: 2px;\n}\n\n/* ========== P1: Markdown 渲染样式 ========== */\n.csk-msg--ai .csk-msg__bubble .csk-md-p {\n margin: 0 0 8px;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-p:last-child {\n margin-bottom: 0;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-h1,\n.csk-msg--ai .csk-msg__bubble .csk-md-h2,\n.csk-msg--ai .csk-msg__bubble .csk-md-h3,\n.csk-msg--ai .csk-msg__bubble .csk-md-h4,\n.csk-msg--ai .csk-msg__bubble .csk-md-h5,\n.csk-msg--ai .csk-msg__bubble .csk-md-h6 {\n margin: 12px 0 6px;\n font-weight: 600;\n line-height: 1.3;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-h1 { font-size: 20px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h2 { font-size: 17px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h3 { font-size: 15px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h4 { font-size: 14px; }\n\n.csk-md-code-block {\n background: #1E293B;\n color: #E2E8F0;\n padding: 12px 14px;\n border-radius: 8px;\n overflow-x: auto;\n margin: 8px 0;\n font-size: 13px;\n line-height: 1.5;\n font-family: 'SF Mono', 'Consolas', 'Menlo', monospace;\n}\n.csk-md-code-block code {\n background: none;\n padding: 0;\n border-radius: 0;\n font-size: inherit;\n color: inherit;\n}\n.csk-md-inline-code {\n background: #E5E7EB;\n color: #DC2626;\n padding: 1px 6px;\n border-radius: 4px;\n font-size: 13px;\n font-family: 'SF Mono', 'Consolas', 'Menlo', monospace;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-ul,\n.csk-msg--ai .csk-msg__bubble .csk-md-ol {\n padding-left: 20px;\n margin: 6px 0;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-ul li,\n.csk-msg--ai .csk-msg__bubble .csk-md-ol li {\n margin-bottom: 4px;\n}\n.csk-md-blockquote {\n border-left: 3px solid var(--csk-primary);\n padding-left: 12px;\n margin: 8px 0;\n color: #6B7280;\n}\n.csk-md-link {\n color: var(--csk-primary);\n text-decoration: none;\n}\n.csk-md-link:hover {\n text-decoration: underline;\n}\n.csk-md-hr {\n border: none;\n border-top: 1px solid #E5E7EB;\n margin: 12px 0;\n}\n\n/* ========== P2: 会话管理面板 ========== */\n.csk-history-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n border: none;\n background: transparent;\n color: #fff;\n cursor: pointer;\n border-radius: 6px;\n transition: background 0.15s;\n}\n.csk-history-btn:hover {\n background: rgba(255, 255, 255, 0.2);\n}\n.csk-history-panel {\n position: absolute;\n top: 48px;\n left: 0;\n right: 0;\n bottom: 0;\n background: #fff;\n z-index: 10;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\n.csk-history-panel--hidden {\n display: none;\n}\n.csk-history-panel__header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 12px 16px;\n border-bottom: 1px solid #E5E7EB;\n background: #F9FAFB;\n}\n.csk-history-panel__title {\n font-size: 14px;\n font-weight: 600;\n color: #1F2937;\n}\n.csk-history-panel__back {\n display: flex;\n align-items: center;\n gap: 4px;\n padding: 4px 10px;\n border: 1px solid #E5E7EB;\n border-radius: 6px;\n background: #fff;\n color: #374151;\n font-size: 12px;\n cursor: pointer;\n transition: all 0.15s;\n}\n.csk-history-panel__back:hover {\n background: #F3F4F6;\n}\n.csk-history-panel__list {\n flex: 1;\n overflow-y: auto;\n padding: 8px;\n}\n.csk-history-panel__list::-webkit-scrollbar {\n width: 4px;\n}\n.csk-history-panel__list::-webkit-scrollbar-thumb {\n background: #E5E7EB;\n border-radius: 2px;\n}\n.csk-history-item {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 10px 12px;\n border-radius: 8px;\n cursor: pointer;\n transition: background 0.15s;\n margin-bottom: 4px;\n}\n.csk-history-item:hover {\n background: #F3F4F6;\n}\n.csk-history-item__info {\n flex: 1;\n min-width: 0;\n}\n.csk-history-item__id {\n font-size: 13px;\n font-weight: 500;\n color: #1F2937;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.csk-history-item__meta {\n font-size: 11px;\n color: #9CA3AF;\n margin-top: 2px;\n}\n.csk-history-item__actions {\n display: flex;\n gap: 4px;\n margin-left: 8px;\n opacity: 0;\n transition: opacity 0.15s;\n}\n.csk-history-item:hover .csk-history-item__actions {\n opacity: 1;\n}\n.csk-history-action {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 28px;\n height: 28px;\n border: none;\n border-radius: 6px;\n cursor: pointer;\n font-size: 12px;\n transition: all 0.15s;\n}\n.csk-history-action--export {\n background: #EFF6FF;\n color: #2563EB;\n}\n.csk-history-action--export:hover {\n background: #DBEAFE;\n}\n.csk-history-action--delete {\n background: #FEF2F2;\n color: #DC2626;\n}\n.csk-history-action--delete:hover {\n background: #FEE2E2;\n}\n.csk-history-panel__empty {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 40px 20px;\n color: #9CA3AF;\n font-size: 13px;\n text-align: center;\n}\n.csk-history-panel__empty-icon {\n font-size: 32px;\n margin-bottom: 8px;\n opacity: 0.5;\n}\n.csk-history-panel__loading {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 20px;\n color: #9CA3AF;\n font-size: 13px;\n}\n.csk-history-panel__loadmore {\n display: block;\n width: 100%;\n padding: 10px;\n border: none;\n background: #F9FAFB;\n color: #6B7280;\n font-size: 12px;\n cursor: pointer;\n text-align: center;\n transition: background 0.15s;\n}\n.csk-history-panel__loadmore:hover {\n background: #F3F4F6;\n}\n\n/* ========== 移动端适配 ========== */\n@media (max-width: 480px) {\n .csk-window {\n width: 100vw !important;\n height: 100vh !important;\n bottom: 0 !important;\n right: 0 !important;\n left: 0 !important;\n border-radius: 0;\n }\n .csk-header {\n border-radius: 0;\n }\n}\n`}(n),document.head.appendChild(x))}function v(){return"undefined"!=typeof crypto&&crypto.randomUUID?crypto.randomUUID():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,n=>{const e=16*Math.random()|0;return("x"===n?e:3&e|8).toString(16)})}function E(n){const e={"&":"&","<":"<",">":">",'"':""","'":"'"};return n.replace(/[&<>"']/g,n=>e[n]||n)}function I(){return Date.now()}function C(n,e){const t=document.createElement("div");t.id="csk-launcher",t.className="csk-launcher csk-launcher--"+("left-bottom"===n.position?"left":"right"),t.setAttribute("title",n.title),t.setAttribute("aria-label",n.title),t.setAttribute("role","button"),t.setAttribute("tabindex","0"),t.innerHTML=n.launcherIcon;const r=function(n,e){let t=null;return function(...r){null!==t&&clearTimeout(t),t=setTimeout(()=>{n.apply(this,r),t=null},e)}}(e,300);return t.addEventListener("click",r),t.addEventListener("keydown",n=>{"Enter"!==n.key&&" "!==n.key||(n.preventDefault(),r())}),t}function $(n,e,t){const r=document.createElement("div");r.className="csk-msg csk-msg--user";const o=document.createElement("div");o.className="csk-msg__bubble",o.textContent=e;const s=document.createElement("div");return s.className="csk-msg__time",s.textContent=N(t),r.appendChild(o),r.appendChild(s),n.appendChild(r),r}function S(n,e,t,r){const o=document.createElement("div");o.className="csk-msg csk-msg--ai";const s=document.createElement("div");s.className="csk-msg__bubble",r?s.innerHTML=r(e):s.textContent=e;const i=document.createElement("div");return i.className="csk-msg__time",i.textContent=N(t),o.appendChild(s),o.appendChild(i),n.appendChild(o),o}function A(n,e){const t=n.querySelector(".csk-sources");if(t&&t.remove(),!e||0===e.length)return;const r=document.createElement("div");r.className="csk-sources csk-sources--collapsed";const o=document.createElement("div");o.className="csk-sources__header";const s=document.createElement("span");s.className="csk-sources__title",s.textContent=`📚 ${i("source_count",{n:e.length})}`;const a=document.createElement("span");a.className="csk-sources__arrow",a.textContent="▼",o.appendChild(s),o.appendChild(a),o.addEventListener("click",()=>{r.classList.toggle("csk-sources--collapsed")});const c=document.createElement("div");c.className="csk-sources__body";for(const n of e){const e=document.createElement("div");e.className="csk-source-item";const t=document.createElement("div");if(t.className="csk-source-item__name",t.textContent=n.title||n.sourceName||"未知文档",n.snippet){const t=document.createElement("div");t.className="csk-source-item__snippet",t.textContent=n.snippet,e.appendChild(t)}const r=document.createElement("div");r.className="csk-source-item__meta";const o=[];n.sourceName&&o.push(n.sourceName),void 0!==n.chunkIndex&&o.push(`分块 #${n.chunkIndex}`),void 0!==n.score&&o.push(`相关度 ${(100*n.score).toFixed(0)}%`),r.textContent=o.join(" · "),e.appendChild(t),e.appendChild(r),c.appendChild(e)}r.appendChild(o),r.appendChild(c);const l=n.querySelector(".csk-msg__time");l?n.insertBefore(r,l):n.appendChild(r)}function F(n){n.scrollTop=n.scrollHeight}function N(n){const e=new Date(n);return`${String(e.getHours()).padStart(2,"0")}:${String(e.getMinutes()).padStart(2,"0")}`}function L(n){return`csk_history_${n}`}function D(n,e){try{let t=e;t.length>200&&(t=t.slice(50),r.warn(`消息数量达到上限,已裁剪最早 50 条,当前 ${t.length} 条`));const o={messages:t,updatedAt:Date.now()};localStorage.setItem(L(n),JSON.stringify(o))}catch(n){n instanceof Error&&"QuotaExceededError"===n.name?r.error("localStorage 空间不足,会话历史保存失败。建议清空历史记录。"):r.error("保存会话历史失败",n)}}function B(n){try{localStorage.removeItem(L(n))}catch(n){r.warn("清空会话历史失败",n)}}const M="\0CODEBLOCK_",z="\0INLINECODE_";function T(n){if(!n||"string"!=typeof n)return"";const e=[];let t=n;t=t.replace(/```(\w*)\n([\s\S]*?)```/g,(n,t,r)=>{const o=e.length,s=E(r.trimEnd()),i=t?` class="language-${E(t)}"`:"";return e.push(`
${s}
`),`${M}${o}\0`});const r=[];t=t.replace(/`([^`\n]+)`/g,(n,e)=>{const t=r.length;return r.push(`${E(e)}`),`${z}${t}\0`}),t=E(t),t=q(t,M,e),t=q(t,z,r);const o=t.split("\n"),s=[];let i=!1,a="",c=!1,l=[];for(let n=0;n')){u(),p(),m(),s.push(e);continue}const t=e.match(/^(#{1,6})\s+(.+)/);if(t){u(),p(),m();const n=t[1].length;s.push(`${t[2]}`);continue}const r=e.match(/^>\s?(.*)/);if(r){u(),p(),c||(c=!0,s.push('
')),s.push(`

${d(r[1])}

`);continue}c&&m();const h=e.match(/^[\-\*]\s+(.+)/);if(h){u(),m(),i&&"ul"===a||(p(),i=!0,a="ul",s.push('
    ')),s.push(`
  • ${d(h[1])}
  • `);continue}const g=e.match(/^\d+\.\s+(.+)/);g?(u(),m(),i&&"ol"===a||(p(),i=!0,a="ol",s.push('
      ')),s.push(`
    1. ${d(g[1])}
    2. `)):""!==e.trim()?/^(\*{3,}|-{3,}|_{3,})$/.test(e.trim())?(u(),p(),m(),s.push('
      ')):(p(),m(),l.push(d(e))):(u(),p())}return u(),p(),m(),s.join("\n");function d(n){return n=(n=(n=(n=(n=(n=n.replace(/\*\*(.+?)\*\*/g,"$1")).replace(/__(.+?)__/g,"$1")).replace(/\*(.+?)\*/g,"$1")).replace(/(?$1")).replace(/~~(.+?)~~/g,"$1")).replace(/\[([^\]]+)\]\(([^)]+)\)/g,(n,e,t)=>`${e}`)}function u(){l.length>0&&(s.push(`

      ${l.join("
      ")}

      `),l=[])}function p(){i&&(s.push("ul"===a?"
":""),i=!1,a="")}function m(){c&&(s.push("
"),c=!1)}}function q(n,e,t){return n.replace(new RegExp(e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")+"(\\d+)\0","g"),(n,e)=>t[parseInt(e)]||"")}let j,H=null,R=[],U=null,P=null,O=null,W=null,K=null,V=null,J=null,X=null,Y=!1,G=!1;function Q(n,e){H=n,U=e.messagesContainer,P=e.inputEl,O=e.sendBtn,W=e.clearBtn,K=e.categorySelect,V=e.historyPanel,J=e.showLoading,X=e.hideLoading,j=n.categoryId,G=!!n.categoryId||!!n.showCategorySwitch,function(){if(!P||!O)return;O.addEventListener("click",()=>en()),P.addEventListener("keydown",n=>{"Enter"!==n.key||n.shiftKey||(n.preventDefault(),en())}),P.addEventListener("input",()=>nn()),W&&W.addEventListener("click",()=>function(){if(!H)return;if(!confirm(i("clear_confirm")))return;if(R=[],U){U.querySelectorAll(".csk-msg, .csk-loading").forEach(n=>n.remove())}W&&(W.style.display="none");B(H.integrateId);const n=function(){const n="undefined"!=typeof crypto&&crypto.randomUUID?crypto.randomUUID().substring(0,8):Math.random().toString(36).substring(2,10);return`sdk_${Date.now()}_${n}`}();e=n,a&&(a.chatId=e),b(H.integrateId,H.userId,n),r.lifecycleClear(H.integrateId),r.info(`新 chatId=${n}`);var e}())}(),n.showCategorySwitch&&K&&async function(){if(!K)return;try{const n=await async function(){const n=c("/category/tree");try{const e=await d(n);if(!e.ok)throw new u(p(e.status),`http_${e.status}`);const t=await e.json();return t.success&&Array.isArray(t.data)?(r.info(`加载分类树成功 count=${t.data.length}`),t.data):[]}catch(n){return n instanceof u?r.error(`加载分类树失败: ${n.message}`):r.error("加载分类树失败",n),[]}}();if(0===n.length)return;K.innerHTML=``;const e=(n,t=0)=>{for(const r of n){const n=document.createElement("option");n.value=String(r.id),n.textContent=`${" ".repeat(t)}${r.name}`,void 0!==j&&String(r.id)===String(j)&&(n.selected=!0),K.appendChild(n),r.children&&r.children.length>0&&e(r.children,t+1)}};e(n),r.info(`知识库分类加载成功 count=${n.length}`)}catch(n){r.error(i("category_load_error"),n)}}()}async function Z(){if(H&&U&&(await f(),await async function(){if(!H||!U)return;const n=(null==a?void 0:a.chatId)||"";if(!n)return;try{const e=await async function(n){const e=c(`/conversation/${n}/messages`);try{const n=await d(e);if(!n.ok)throw new u(p(n.status),`http_${n.status}`);const t=await n.json();return{messages:t.success&&Array.isArray(t.data)?t.data:[],total:t.total||0}}catch(n){return r.error("加载会话消息失败",n),{messages:[],total:0}}}(n);e.messages.length>0&&(R=e.messages.map((n,e)=>({id:v(),role:"USER"===n.messageType?"user":"ai",content:n.content,timestamp:new Date(n.createTime).getTime()})),tn(),r.info(`从后端加载 ${R.length} 条历史消息`),D(H.integrateId,R))}catch(n){r.warn("从后端加载历史消息失败",n)}}(),0===R.length)){const n=function(n){try{const e=localStorage.getItem(L(n));if(!e)return[];const t=JSON.parse(e);return t&&Array.isArray(t.messages)?(r.info(`加载历史消息 integrateId=${n} count=${t.messages.length}`),t.messages):[]}catch(n){return r.warn("加载会话历史失败",n),[]}}(H.integrateId);n.length>0&&(R=n,tn(),r.info(`从本地缓存恢复 ${n.length} 条消息`))}}function nn(){if(!O||!P)return;P.value.trim().length>0&&!Y?O.removeAttribute("disabled"):O.setAttribute("disabled","true")}async function en(){if(!P||!H||Y)return;const n=P.value.trim();if(""===n)return;P.value="",nn(),P.style.height="auto",Y=!0,nn(),H.chatId||await f();const e=I();U&&$(U,n,e);const t={id:v(),role:"user",content:n,timestamp:e};R.push(t),W&&R.length>0&&(W.style.display="inline-flex"),U&&F(U),J&&J(),U&&F(U);try{let e;const t=I(),o=G&&(void 0!==j||void 0!==H.categoryId);e=H.streaming?await async function(n,e,t){return new Promise((r,o)=>{let s=null,a="",c=!1;h(n,n=>{if(a+=n,!c&&U){X&&X();const{bubble:n}=function(n,e){const t=document.createElement("div");t.className="csk-msg csk-msg--ai";const r=document.createElement("div");r.className="csk-msg__bubble",r.innerHTML="";const o=document.createElement("div");return o.className="csk-msg__time",o.textContent=N(e),t.appendChild(r),t.appendChild(o),n.appendChild(t),{wrapper:t,bubble:r}}(U,e);s=n,c=!0}s&&(s.textContent=a),U&&F(U)},()=>{c||""!==a?(s&&a&&(s.innerHTML=T(a)),r(a)):m(n).then(r).catch(o)},n=>{a.length>0?(s&&(s.innerHTML=T(a+"\n\n"+i("stream_interrupted"))),r(a)):o(n)},j,t)})}(n,t,o):await m(n),X&&X(),!H.streaming&&U&&S(U,e,t,T);const s={id:v(),role:"ai",content:e,timestamp:t};R.push(s),D(H.integrateId,R),U&&F(U),o&&async function(n,e){try{const t=await g(n,j);if(t.length>0){const n=t.map(n=>{var e,t;return{documentId:n.documentId||"",title:n.title||"",sourceName:n.sourceName||"",chunkIndex:null!==(e=n.chunkIndex)&&void 0!==e?e:0,score:null!==(t=n.score)&&void 0!==t?t:0,snippet:n.snippet||""}});if(e.sources=n,U){const e=U.querySelector(".csk-msg--ai:last-of-type");e&&A(e,n)}H&&D(H.integrateId,R)}}catch(n){r.warn("获取引用来源失败",n)}}(n,s)}catch(n){X&&X();const e=n instanceof u?n.message:i("error_send");if(U){const n=document.createElement("div");n.className="csk-msg csk-msg--ai";const t=document.createElement("div");t.className="csk-msg__bubble",t.style.color="#DC2626",t.textContent=`⚠ ${e}`,n.appendChild(t),U.appendChild(n)}r.error(`发送失败 integrateId=${H.integrateId}`,n)}finally{Y=!1,nn()}}function tn(){if(!U)return;const n=U.querySelector(".csk-history-panel");U.querySelectorAll(".csk-msg, .csk-loading").forEach(n=>n.remove());for(const n of R)if("user"===n.role)$(U,n.content,n.timestamp);else{const e=S(U,n.content,n.timestamp,T);n.sources&&n.sources.length>0&&A(e,n.sources)}F(U),W&&R.length>0&&(W.style.display="inline-flex"),n&&!U.contains(n)&&U.appendChild(n)}async function rn(){if(!V||!H)return;const n=V.querySelector("#csk-history-list");if(n){n.innerHTML='
加载中...
';try{const e=await k(1,50,H.userId,H.integrateId);!function(n,e,t,r){if(n.innerHTML="",0===e.length){const e=document.createElement("div");return e.className="csk-history-panel__empty",e.innerHTML=`\n
💬
\n
${i("history_empty")}
\n `,void n.appendChild(e)}for(const o of e){const e=document.createElement("div");e.className="csk-history-item";const s=document.createElement("div");s.className="csk-history-item__info";const a=document.createElement("div");a.className="csk-history-item__id",a.textContent=o.chatId||o.id;const c=document.createElement("div");c.className="csk-history-item__meta";const l=[];void 0!==o.messageCount&&l.push(`${o.messageCount} 条消息`),o.lastMessageTime?l.push(o.lastMessageTime):o.createdAt&&l.push(o.createdAt),c.textContent=l.join(" · "),s.appendChild(a),s.appendChild(c);const d=document.createElement("div");d.className="csk-history-item__actions";const u=document.createElement("button");u.className="csk-history-action csk-history-action--export",u.setAttribute("title",i("history_export")),u.innerHTML='',u.addEventListener("click",n=>{n.stopPropagation(),t(o.id)});const p=document.createElement("button");p.className="csk-history-action csk-history-action--delete",p.setAttribute("title",i("history_delete")),p.innerHTML='',p.addEventListener("click",n=>{n.stopPropagation(),r(o.id)}),d.appendChild(u),d.appendChild(p),e.appendChild(s),e.appendChild(d),n.appendChild(e)}}(n,e.list.map(n=>({id:n.conversationId||n.chatId||"",chatId:n.conversationId||n.chatId||"",messageCount:n.messageCount,lastMessageTime:n.lastMessageTime,createdAt:n.firstMessageTime||n.createdAt})),n=>{window.open(c(`/conversation/${n}/export`),"_blank")},async n=>{if(!confirm(i("history_delete_confirm")))return;await async function(n){const e=c(`/conversation/${n}`);try{const t=await d(e,{method:"DELETE"});if(!t.ok)throw new u(p(t.status),`http_${t.status}`);const o=await t.json();return r.info(`删除会话 id=${n} success=${o.success}`),o.success||!1}catch(n){return r.error("删除会话失败",n),!1}}(n)&&rn()})}catch(e){r.error(i("history_load_error"),e),n.innerHTML=`
${i("history_load_error")}
`}}}let on=null,sn=!1,an=null,cn=null,ln=null,dn=null,un=null,pn=null,mn=null,hn=null,gn=null,kn=null,fn=null;function yn(){cn&&cn.classList.remove("csk-window--hidden")}function bn(){cn&&cn.classList.add("csk-window--hidden")}function xn(){cn&&(cn.classList.contains("csk-window--hidden")?(yn(),setTimeout(()=>{dn&&dn.focus()},100)):bn())}const _n={init:function(n){if(sn)return void r.warn("SDK 已初始化,请先调用 destroy() 再重新初始化");const t=function(n){var e,t,o,s,i,a;if(!n.integrateId||"string"!=typeof n.integrateId&&"number"!=typeof n.integrateId||"string"==typeof n.integrateId&&""===n.integrateId.trim())return r.error('integrateId 是必传参数(对应后端 roleId 客服角色 ID),请检查 init() 调用。示例:ChatbotSDK.init({ integrateId: 1, requestDomain: "https://api.example.com" })'),null;if(!n.requestDomain||"string"!=typeof n.requestDomain||""===n.requestDomain.trim())return r.error('requestDomain 是必传参数,请检查 init() 调用。示例:ChatbotSDK.init({ integrateId: 1, requestDomain: "https://api.example.com" })'),null;try{new URL(n.requestDomain)}catch(e){return r.error(`requestDomain 不是合法的 URL 格式:${n.requestDomain}。请提供完整的域名,如 https://api.example.com`),null}const c={integrateId:String(n.integrateId).trim(),requestDomain:n.requestDomain.replace(/\/+$/,""),userId:n.userId,categoryId:n.categoryId,showCategorySwitch:null!==(e=n.showCategorySwitch)&&void 0!==e&&e,title:n.title||"AI 智能助手",width:null!==(t=n.width)&&void 0!==t?t:380,position:"left-bottom"===n.position?"left-bottom":"right-bottom",primaryColor:n.primaryColor||"#4F46E5",launcherIcon:n.launcherIcon||'\n \n \n',showClear:null===(o=n.showClear)||void 0===o||o,showAdminPanel:null!==(s=n.showAdminPanel)&&void 0!==s&&s,streaming:null===(i=n.streaming)||void 0===i||i,locale:n.locale||"zh-CN",debug:null===(a=n.debug)||void 0===a||a,chatId:""};return r.info(`配置解析完成 integrateId(=roleId)=${c.integrateId} userId(=accountId)=${c.userId||"(未设置)"} requestDomain=${c.requestDomain}`),c}(n);if(!t)return;var c;on=t,function(n){if(o[n])s=n;else{const e=n.split("-")[0],t=Object.keys(o).find(n=>n.startsWith(e));t&&(s=t)}}(on.locale),c=on.debug,e=c,function(n){a=n}(on),w(on),an=C(on,xn),document.body.appendChild(an);const l=function(n){const e=document.createElement("div");e.id="csk-window",e.className=`csk-root csk-window csk-window--${"left-bottom"===n.position?"left":"right"} csk-window--hidden`;const t=document.createElement("div");t.className="csk-header";const r=document.createElement("span");r.className="csk-header__title",r.textContent=n.title;const o=document.createElement("div");o.className="csk-header__actions";const s=document.createElement("button");s.className="csk-history-btn",s.setAttribute("title",i("history_title")),s.innerHTML='';const a=document.createElement("button");a.className="csk-header__btn csk-header__btn--minimize",a.setAttribute("title",i("minimize")),a.innerHTML='',a.addEventListener("click",()=>{e.classList.add("csk-window--hidden")});const c=document.createElement("button");c.className="csk-header__btn csk-header__btn--close",c.setAttribute("title",i("close")),c.innerHTML='',c.addEventListener("click",()=>{e.classList.add("csk-window--hidden")}),o.appendChild(s),o.appendChild(a),o.appendChild(c),t.appendChild(r),t.appendChild(o);const l=document.createElement("div");l.id="csk-messages",l.className="csk-messages";const d=document.createElement("div");d.className="csk-history-panel csk-history-panel--hidden",d.innerHTML=`\n
\n ${i("history_title")}\n \n
\n
\n `,l.appendChild(d);const u=d.querySelector("#csk-history-back");u&&u.addEventListener("click",()=>{d.classList.add("csk-history-panel--hidden")}),s.addEventListener("click",n=>{n.stopPropagation();const t=d.classList.contains("csk-history-panel--hidden");d.classList.toggle("csk-history-panel--hidden"),t&&e.dispatchEvent(new CustomEvent("csk:loadHistory"))});let p=null;if(n.showCategorySwitch){const n=document.createElement("div");n.className="csk-category-bar";const r=document.createElement("span");r.className="csk-category-bar__label",r.textContent="📚",p=document.createElement("select"),p.id="csk-category-select",p.className="csk-category-select",p.innerHTML=``,p.addEventListener("change",()=>{const n=p.value;e.dispatchEvent(new CustomEvent("csk:categoryChange",{detail:{categoryId:n?Number(n):void 0}}))}),n.appendChild(r),n.appendChild(p),e.appendChild(t),e.appendChild(l),e.appendChild(n)}else e.appendChild(t),e.appendChild(l);const m=document.createElement("div");m.className="csk-input-area";const h=document.createElement("textarea");h.id="csk-input",h.className="csk-input",h.setAttribute("placeholder",i("placeholder")),h.setAttribute("rows","1"),h.setAttribute("autofocus","");const g=document.createElement("button");g.id="csk-send-btn",g.className="csk-send-btn",g.setAttribute("title",i("send")),g.setAttribute("disabled","true"),g.innerHTML='',m.appendChild(h),m.appendChild(g),e.appendChild(m);let k=null;n.showClear&&(k=document.createElement("button"),k.className="csk-clear-btn",k.textContent=i("clear"),k.style.display="none",e.insertBefore(k,m));let f=null;return{window:e,messagesContainer:l,inputEl:h,sendBtn:g,clearBtn:k,categorySelect:p,historyPanel:d,showLoading:function(){if(f)return f.style.display="flex",f;const n=document.createElement("div");return n.className="csk-loading",n.innerHTML='\n
\n
\n
\n ',l.appendChild(n),f=n,n},hideLoading:function(){f&&f.parentNode&&(f.parentNode.removeChild(f),f=null)}}}(on);cn=l.window,ln=l.messagesContainer,dn=l.inputEl,un=l.sendBtn,pn=l.clearBtn,mn=l.categorySelect,hn=l.historyPanel,gn=l.showLoading,kn=l.hideLoading,document.body.appendChild(cn);const d=cn.querySelector(".csk-header");d&&(fn=function(n,e){let t=!1,r=0,o=0,s=0,i=0;const a=n=>{t=!0,r=n.clientX,o=n.clientY;const a=e.getBoundingClientRect();s=r-a.left,i=o-a.top,document.addEventListener("mousemove",c),document.addEventListener("mouseup",l)},c=n=>{if(!t)return;const r=n.clientX-s,o=n.clientY-i,a=window.innerWidth-e.offsetWidth,c=window.innerHeight-e.offsetHeight;e.style.right="auto",e.style.bottom="auto",e.style.left=`${Math.max(0,Math.min(r,a))}px`,e.style.top=`${Math.max(0,Math.min(o,c))}px`},l=()=>{t=!1,document.removeEventListener("mousemove",c),document.removeEventListener("mouseup",l)};return n.addEventListener("mousedown",a),()=>{n.removeEventListener("mousedown",a),document.removeEventListener("mousemove",c),document.removeEventListener("mouseup",l)}}(d,cn)),Q(on,{messagesContainer:ln,inputEl:dn,sendBtn:un,clearBtn:pn,categorySelect:mn,historyPanel:hn,showLoading:gn,hideLoading:kn}),cn.addEventListener("csk:categoryChange",n=>{var e;e=n.detail.categoryId,j=e,G=void 0!==e,r.lifecycleCategoryChange(null!=e?e:"全部")}),cn.addEventListener("csk:loadHistory",()=>{rn()}),sn=!0,r.lifecycleInit(on.integrateId,on.requestDomain),Z().catch(n=>{r.warn("chatId 初始化失败,将在发送消息时重试",n)})},destroy:function(){if(!sn)return;an&&an.parentNode&&(an.parentNode.removeChild(an),an=null),cn&&cn.parentNode&&(cn.parentNode.removeChild(cn),cn=null),fn&&(fn(),fn=null),x&&x.parentNode&&(x.parentNode.removeChild(x),x=null),document.querySelectorAll("style[data-csk-sdk]").forEach(n=>n.remove());const n=null==on?void 0:on.integrateId;on=null,sn=!1,ln=null,dn=null,un=null,pn=null,mn=null,hn=null,gn=null,kn=null,r.lifecycleDestroy(n||"")},open:yn,close:bn,toggle:xn,clearHistory:function(){on&&(pn?pn.click():confirm("确定清空所有对话记录?")&&B(on.integrateId))}};return"undefined"!=typeof window&&(window.ChatbotSDK=_n),_n}(); +var ChatbotSDK=function(){"use strict";const e="[ChatbotSDK]";let n=!0;const t={},r={info(t,r){n&&console.log(e,t,void 0!==r?r:"")},warn(t,r){n&&console.warn(e,t,void 0!==r?r:"")},error(n,t){console.error(e,n,void 0!==t?t:"")},time(e){t[e]=Date.now()},timeEnd(r,o){const s=t[r];if(void 0!==s){const i=Date.now()-s;if(delete t[r],n){const n=o?`${o} ${i}ms`:`${r} ${i}ms`;console.log(e,n)}return i}return 0},lifecycleInit(e,n){this.info(`初始化完成 integrateId=${e} requestDomain=${n}`)},lifecycleDestroy(e){this.info(`销毁实例 integrateId=${e}`)},lifecycleSend(e,n){this.info(`发送消息 integrateId=${e} length=${n}`),this.time(`send_${e}`)},lifecycleReply(e,n){const t=this.timeEnd(`send_${e}`,"AI 回复");this.info(`AI 回复 integrateId=${e} length=${n} duration=${t}ms`)},lifecycleError(e,n,t){this.timeEnd(`send_${e}`),this.error(`请求失败 integrateId=${e} status=${n} message=${t}`)},lifecycleClear(e){this.info(`清空会话 integrateId=${e}`)},lifecycleStreamDone(e,n){const t=this.timeEnd(`send_${e}`,"流式回复");this.info(`流式回复完成 integrateId=${e} length=${n} duration=${t}ms`)},lifecycleCategoryChange(e){this.info(`切换知识库分类 categoryId=${e}`)}};const o={"zh-CN":{title:"AI 智能助手",minimize:"最小化",close:"关闭",placeholder:"输入您的问题...",send:"发送",loading:"正在思考...",stream_interrupted:"回复被中断",stream_unstable:"网络不稳定,内容可能不完整",category_placeholder:"选择知识库分类",category_all:"全部分类",category_load_error:"加载分类失败",source_title:"参考来源",source_count:"{n} 条参考来源",source_loading:"加载来源中...",clear:"清空对话",clear_confirm:"确定清空所有对话记录?",history_title:"历史会话",history_empty:"暂无历史会话",history_load_error:"加载会话列表失败",history_delete_confirm:"确定删除该会话?",history_export:"导出",history_delete:"删除",error_network:"网络连接失败,请检查网络",error_timeout:"请求超时,请稍后重试",error_server:"服务器异常,请稍后重试",error_cors:"跨域请求被拦截,请联系管理员将当前域名加入 API 白名单",error_auth:"鉴权失败,请联系管理员",error_forbidden:"无访问权限,请联系管理员配置",error_not_found:"请求的资源不存在",error_rate_limit:"请求过于频繁,请稍后重试",error_unavailable:"服务暂不可用,请稍后重试",error_unknown:"请求发生未知错误",error_send:"发送失败,请稍后重试",error_stream_unsupported:"浏览器不支持流式读取"},en:{title:"AI Assistant",minimize:"Minimize",close:"Close",placeholder:"Type your question...",send:"Send",loading:"Thinking...",stream_interrupted:"Response interrupted",stream_unstable:"Network unstable, content may be incomplete",category_placeholder:"Select category",category_all:"All categories",category_load_error:"Failed to load categories",source_title:"Sources",source_count:"{n} source(s)",source_loading:"Loading sources...",clear:"Clear chat",clear_confirm:"Clear all conversation history?",history_title:"History",history_empty:"No conversations yet",history_load_error:"Failed to load conversations",history_delete_confirm:"Delete this conversation?",history_export:"Export",history_delete:"Delete",error_network:"Network connection failed",error_timeout:"Request timed out, please try again",error_server:"Server error, please try again later",error_cors:"CORS request blocked. Please contact admin to whitelist your domain",error_auth:"Authentication failed, please contact admin",error_forbidden:"Access denied, please contact admin",error_not_found:"Resource not found",error_rate_limit:"Too many requests, please try again later",error_unavailable:"Service temporarily unavailable",error_unknown:"Unknown request error",error_send:"Failed to send, please try again",error_stream_unsupported:"Browser does not support streaming"}};let s="zh-CN";function i(e,n){let t=(o[s]||o["zh-CN"])[e]||o["zh-CN"][e]||e;if(n)for(const[e,r]of Object.entries(n))t=t.replace(`{${e}}`,String(r));return t}let a=null;function c(e){a&&(a.chatId=e)}function l(){return(null==a?void 0:a.chatId)||""}function d(e){if(!a)throw new Error("API 配置未初始化");return`${a.requestDomain.replace(/\/+$/,"")}${e.startsWith("/")?e:`/${e}`}`}function u(e,n,t){null!=t&&("string"==typeof t&&""===t.trim()||e.set(n,String(t)))}async function p(e,n={},t=3e4){const r=new AbortController,o=setTimeout(()=>r.abort(),t);try{return await fetch(e,Object.assign(Object.assign({},n),{signal:r.signal,mode:"cors",credentials:"include"}))}catch(e){if(e instanceof DOMException&&"AbortError"===e.name)throw new m(i("error_timeout"),"timeout");if(e instanceof TypeError&&e.message.includes("Failed to fetch"))throw new m(i("error_cors"),"cors");throw new m(i("error_network"),"network")}finally{clearTimeout(o)}}class m extends Error{constructor(e,n){super(e),this.name="CskError",this.type=n}}function h(e){switch(e){case 401:return i("error_auth");case 403:return i("error_forbidden");case 404:return i("error_not_found");case 429:return i("error_rate_limit");case 500:return i("error_server");case 502:case 503:return i("error_unavailable");default:return`${i("error_unknown")}(${e})`}}async function g(e){const n=function(e){const n=new URLSearchParams;return n.set("message",e),n.set("chatId",a.chatId),u(n,"roleId",a.integrateId),u(n,"accountId",a.userId),d(`/ai/assistant_app/chat/sync?${n.toString()}`)}(e);r.lifecycleSend(a.integrateId,e.length);try{const e=await p(n);if(!e.ok){const n=h(e.status);throw r.lifecycleError(a.integrateId,String(e.status),n),new m(n,`http_${e.status}`)}const t=await e.text();return r.lifecycleReply(a.integrateId,t.length),t}catch(e){if(e instanceof m)throw e;throw r.lifecycleError(a.integrateId,"unknown",String(e)),new m(i("error_unknown"),"unknown")}}async function k(e,n,t,o,s,c){var l;const g=c?function(e,n){const t=new URLSearchParams;return t.set("message",e),t.set("chatId",a.chatId),t.set("rewriteStrategy","REWRITE"),u(t,"roleId",a.integrateId),u(t,"accountId",a.userId),u(t,"categoryId",null!=n?n:a.categoryId),d(`/ai/assistant_app/chat/rag/sse?${t.toString()}`)}(e,s):function(e,n){const t=new URLSearchParams;return t.set("message",e),t.set("chatId",a.chatId),u(t,"roleId",a.integrateId),u(t,"accountId",a.userId),u(t,"categoryId",null!=n?n:a.categoryId),d(`/ai/assistant_app/chat/sse?${t.toString()}`)}(e,s);let k="";r.lifecycleSend(a.integrateId,e.length);try{const e=await p(g,{},6e4);if(!e.ok){const n=h(e.status);return r.lifecycleError(a.integrateId,String(e.status),n),void o(new m(n,`http_${e.status}`))}const s=null===(l=e.body)||void 0===l?void 0:l.getReader();if(!s)return void o(new m(i("error_stream_unsupported"),"stream_unsupported"));const c=new TextDecoder("utf-8",{stream:!0});let d="";try{for(;;){const{done:e,value:t}=await s.read();if(e)break;d+=c.decode(t,{stream:!0});const r=d.split("\n");d=r.pop()||"";for(const e of r){const t=e.trim();if(t&&!t.startsWith(":"))if(t.startsWith("data:")){const e=t.substring(5).trim();e&&(k+=e,n(e))}else{if("[DONE]"===t)break;t.startsWith("event:")||t.startsWith("id:")||t.startsWith("retry:")||(k+=t,n(t))}}}if(d.trim()){const e=d.trim();if(e.startsWith("data:")){const t=e.substring(5).trim();t&&(k+=t,n(t))}else"[DONE]"!==e&&(k+=e,n(e))}}catch(e){if(!(k.length>0))throw e;n("\n\n"+i("stream_unstable"))}finally{s.releaseLock()}r.lifecycleStreamDone(a.integrateId,k.length),t()}catch(e){e instanceof m?o(e):(r.lifecycleError(a.integrateId,"unknown",String(e)),o(new m(i("error_network"),"network")))}}async function f(e,n){const t=function(e,n){const t=new URLSearchParams;return t.set("message",e),t.set("chatId",a.chatId),t.set("rewriteStrategy","REWRITE"),u(t,"roleId",a.integrateId),u(t,"accountId",a.userId),u(t,"categoryId",null!=n?n:a.categoryId),d(`/ai/assistant_app/rag/sources?${t.toString()}`)}(e,n);try{const e=await p(t);if(!e.ok)throw new m(h(e.status),`http_${e.status}`);const n=await e.json();return n.success&&Array.isArray(n.data)?(r.info(`获取引用来源 count=${n.data.length}`),n.data):[]}catch(e){return r.error("获取引用来源失败",e),[]}}async function y(e=1,n=20,t,o){let s=`/conversation/list?page=${e}&size=${n}`;t&&(s+=`&accountId=${encodeURIComponent(t)}`),o&&(s+=`&roleId=${encodeURIComponent(o)}`);const i=d(s);try{const e=await p(i);if(!e.ok)throw new m(h(e.status),`http_${e.status}`);const n=await e.json();return{list:n.success&&Array.isArray(n.data)?n.data:[],total:n.total||0,pages:n.pages||0}}catch(e){return r.error("加载会话列表失败",e),{list:[],total:0,pages:0}}}async function b(e){const n=d(`/conversation/${e}/messages`);try{const e=await p(n);if(!e.ok)throw new m(h(e.status),`http_${e.status}`);const t=await e.json();return{messages:t.success&&Array.isArray(t.data)?t.data:[],total:t.total||0}}catch(e){return r.error("加载会话消息失败",e),{messages:[],total:0}}}async function x(){if(!a)return"";const e=function(e,n){try{return localStorage.getItem(_(e,n))||""}catch(e){return""}}(a.integrateId,a.userId);if(e)return a.chatId=e,r.info(`从缓存恢复 chatId=${e}`),e;try{const e=await y(1,5,a.userId,a.integrateId);if(e.list.length>0){const n=e.list[0],t=n.conversationId||n.chatId||"";if(t)return a.chatId=t,w(a.integrateId,a.userId,t),r.info(`从后端恢复会话 chatId=${t} messageCount=${n.messageCount}`),t}}catch(e){r.warn("查询后端会话列表失败,将生成新 chatId",e)}const n=function(){const e="undefined"!=typeof crypto&&crypto.randomUUID?crypto.randomUUID().substring(0,8):Math.random().toString(36).substring(2,10);return`sdk_${Date.now()}_${e}`}();return a.chatId=n,w(a.integrateId,a.userId,n),r.info(`生成新 chatId=${n}`),n}function _(e,n){return`csk_chatId_${e}${n?"_"+n:""}`}function w(e,n,t){try{t?localStorage.setItem(_(e,n),t):localStorage.removeItem(_(e,n))}catch(e){}}let v=null;function E(e){const n=function(e,n){const t=e.match(/^#([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/);if(!t)return e;const r=e=>Math.max(0,Math.min(255,e)),o=r(parseInt(t[1],16)+n),s=r(parseInt(t[2],16)+n),i=r(parseInt(t[3],16)+n);return`#${o.toString(16).padStart(2,"0")}${s.toString(16).padStart(2,"0")}${i.toString(16).padStart(2,"0")}`}(e.primaryColor,-15);return`\n --csk-primary: ${e.primaryColor};\n --csk-primary-hover: ${n};\n --csk-bg-user: var(--csk-primary);\n --csk-bg-ai: #F3F4F6;\n --csk-text-user: #FFFFFF;\n --csk-text-ai: #1F2937;\n --csk-window-width: ${e.width}px;\n `}function I(e){document.querySelector("style[data-csk-sdk]")||(v=document.createElement("style"),v.setAttribute("data-csk-sdk",""),v.textContent=function(e){return`\n/* ChatbotSDK 样式 - csk- 命名空间 */\n.csk-root {\n ${E(e)}\n font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans SC", sans-serif;\n font-size: 14px;\n line-height: 1.5;\n color: #1F2937;\n}\n\n/* ========== 悬浮按钮 ========== */\n.csk-launcher {\n position: fixed;\n bottom: 20px;\n z-index: 9998;\n width: 56px;\n height: 56px;\n border-radius: 50%;\n background: #fff;\n box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n transition: all 0.2s ease;\n border: none;\n color: var(--csk-primary);\n user-select: none;\n}\n.csk-launcher--right {\n right: 20px;\n}\n.csk-launcher--left {\n left: 20px;\n}\n.csk-launcher:hover {\n transform: scale(1.1);\n box-shadow: 0 6px 24px rgba(0, 0, 0, 0.2);\n}\n.csk-launcher:active {\n transform: scale(0.95);\n}\n\n/* ========== 聊天弹窗 ========== */\n.csk-window {\n position: fixed;\n bottom: 20px;\n z-index: 9999;\n width: var(--csk-window-width);\n height: 560px;\n background: #fff;\n border-radius: 12px;\n box-shadow: 0 8px 40px rgba(0, 0, 0, 0.18);\n display: flex;\n flex-direction: column;\n overflow: hidden;\n transition: opacity 0.2s ease, transform 0.2s ease;\n}\n.csk-window--right {\n right: 20px;\n}\n.csk-window--left {\n left: 20px;\n}\n.csk-window--hidden {\n display: none;\n}\n\n/* ========== 头部 ========== */\n.csk-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 0 16px;\n height: 48px;\n min-height: 48px;\n background: var(--csk-primary);\n color: #fff;\n border-radius: 12px 12px 0 0;\n cursor: move;\n user-select: none;\n}\n.csk-header__title {\n font-size: 15px;\n font-weight: 600;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.csk-header__actions {\n display: flex;\n align-items: center;\n gap: 4px;\n}\n.csk-header__btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n border: none;\n background: transparent;\n color: #fff;\n cursor: pointer;\n border-radius: 6px;\n transition: background 0.15s;\n}\n.csk-header__btn:hover {\n background: rgba(255, 255, 255, 0.2);\n}\n\n/* ========== 消息区 ========== */\n.csk-messages {\n flex: 1;\n overflow-y: auto;\n padding: 16px;\n background: #FAFAFA;\n scroll-behavior: smooth;\n}\n.csk-messages::-webkit-scrollbar {\n width: 5px;\n}\n.csk-messages::-webkit-scrollbar-track {\n background: transparent;\n}\n.csk-messages::-webkit-scrollbar-thumb {\n background: #D1D5DB;\n border-radius: 3px;\n}\n\n/* 消息气泡 */\n.csk-msg {\n display: flex;\n flex-direction: column;\n margin-bottom: 16px;\n max-width: 85%;\n word-break: break-word;\n}\n.csk-msg--user {\n margin-left: auto;\n align-items: flex-end;\n}\n.csk-msg--ai {\n margin-right: auto;\n align-items: flex-start;\n}\n.csk-msg__bubble {\n padding: 10px 14px;\n border-radius: 12px;\n font-size: 14px;\n line-height: 1.6;\n}\n.csk-msg--user .csk-msg__bubble {\n background: var(--csk-bg-user);\n color: var(--csk-text-user);\n border-radius: 12px 12px 4px 12px;\n}\n.csk-msg--ai .csk-msg__bubble {\n background: var(--csk-bg-ai);\n color: var(--csk-text-ai);\n border-radius: 12px 12px 12px 4px;\n}\n.csk-msg__time {\n font-size: 11px;\n color: #9CA3AF;\n margin-top: 4px;\n padding: 0 4px;\n}\n\n/* ========== Loading 动画 ========== */\n.csk-loading {\n display: flex;\n align-items: center;\n gap: 6px;\n padding: 12px 14px;\n margin-bottom: 16px;\n}\n.csk-loading__dot {\n width: 8px;\n height: 8px;\n border-radius: 50%;\n background: #D1D5DB;\n animation: csk-bounce 1.4s ease-in-out infinite both;\n}\n.csk-loading__dot:nth-child(1) { animation-delay: 0s; }\n.csk-loading__dot:nth-child(2) { animation-delay: 0.16s; }\n.csk-loading__dot:nth-child(3) { animation-delay: 0.32s; }\n\n@keyframes csk-bounce {\n 0%, 80%, 100% { transform: scale(0.6); }\n 40% { transform: scale(1); }\n}\n\n/* ========== 输入区 ========== */\n.csk-input-area {\n display: flex;\n align-items: center;\n padding: 10px 12px;\n border-top: 1px solid #E5E7EB;\n background: #fff;\n gap: 8px;\n}\n.csk-input {\n flex: 1;\n border: 1px solid #E5E7EB;\n border-radius: 8px;\n padding: 10px 12px;\n font-size: 14px;\n outline: none;\n transition: border-color 0.2s;\n font-family: inherit;\n resize: none;\n min-height: 20px;\n max-height: 100px;\n}\n.csk-input:focus {\n border-color: var(--csk-primary);\n}\n.csk-input::placeholder {\n color: #9CA3AF;\n}\n.csk-send-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 40px;\n height: 40px;\n min-width: 40px;\n border: none;\n border-radius: 8px;\n background: var(--csk-primary);\n color: #fff;\n cursor: pointer;\n transition: background 0.2s;\n}\n.csk-send-btn:hover {\n background: var(--csk-primary-hover);\n}\n.csk-send-btn:disabled {\n background: #D1D5DB;\n cursor: not-allowed;\n}\n\n/* ========== 清空按钮 ========== */\n.csk-clear-btn {\n display: inline-flex;\n align-items: center;\n gap: 4px;\n padding: 6px 12px;\n border: 1px solid #E5E7EB;\n border-radius: 6px;\n background: #fff;\n color: #6B7280;\n font-size: 12px;\n cursor: pointer;\n margin: 0 auto 8px;\n transition: all 0.15s;\n}\n.csk-clear-btn:hover {\n background: #FEE2E2;\n border-color: #FCA5A5;\n color: #DC2626;\n}\n\n/* ========== P1: 知识库分类下拉 ========== */\n.csk-category-bar {\n display: flex;\n align-items: center;\n padding: 6px 12px;\n border-top: 1px solid #E5E7EB;\n background: #F9FAFB;\n gap: 8px;\n}\n.csk-category-bar__label {\n font-size: 12px;\n color: #6B7280;\n white-space: nowrap;\n}\n.csk-category-select {\n flex: 1;\n padding: 5px 8px;\n border: 1px solid #E5E7EB;\n border-radius: 6px;\n font-size: 12px;\n color: #374151;\n background: #fff;\n outline: none;\n cursor: pointer;\n font-family: inherit;\n transition: border-color 0.2s;\n max-width: 200px;\n}\n.csk-category-select:focus {\n border-color: var(--csk-primary);\n}\n\n/* ========== P1: RAG 引用来源卡片 ========== */\n.csk-sources {\n margin-top: 8px;\n border: 1px solid #E5E7EB;\n border-radius: 8px;\n overflow: hidden;\n font-size: 12px;\n max-width: 100%;\n}\n.csk-sources__header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 8px 12px;\n background: #F9FAFB;\n cursor: pointer;\n user-select: none;\n transition: background 0.15s;\n}\n.csk-sources__header:hover {\n background: #F3F4F6;\n}\n.csk-sources__title {\n display: flex;\n align-items: center;\n gap: 4px;\n font-weight: 500;\n color: #374151;\n}\n.csk-sources__arrow {\n transition: transform 0.2s;\n color: #9CA3AF;\n}\n.csk-sources--collapsed .csk-sources__arrow {\n transform: rotate(-90deg);\n}\n.csk-sources__body {\n border-top: 1px solid #E5E7EB;\n padding: 0;\n}\n.csk-sources--collapsed .csk-sources__body {\n display: none;\n}\n.csk-source-item {\n padding: 8px 12px;\n border-bottom: 1px solid #F3F4F6;\n transition: background 0.15s;\n}\n.csk-source-item:last-child {\n border-bottom: none;\n}\n.csk-source-item:hover {\n background: #F9FAFB;\n}\n.csk-source-item__name {\n font-weight: 500;\n color: #1F2937;\n margin-bottom: 2px;\n}\n.csk-source-item__snippet {\n color: #6B7280;\n line-height: 1.4;\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n}\n.csk-source-item__meta {\n font-size: 11px;\n color: #9CA3AF;\n margin-top: 2px;\n}\n\n/* ========== P1: Markdown 渲染样式 ========== */\n.csk-msg--ai .csk-msg__bubble .csk-md-p {\n margin: 0 0 8px;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-p:last-child {\n margin-bottom: 0;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-h1,\n.csk-msg--ai .csk-msg__bubble .csk-md-h2,\n.csk-msg--ai .csk-msg__bubble .csk-md-h3,\n.csk-msg--ai .csk-msg__bubble .csk-md-h4,\n.csk-msg--ai .csk-msg__bubble .csk-md-h5,\n.csk-msg--ai .csk-msg__bubble .csk-md-h6 {\n margin: 12px 0 6px;\n font-weight: 600;\n line-height: 1.3;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-h1 { font-size: 20px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h2 { font-size: 17px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h3 { font-size: 15px; }\n.csk-msg--ai .csk-msg__bubble .csk-md-h4 { font-size: 14px; }\n\n.csk-md-code-block {\n background: #1E293B;\n color: #E2E8F0;\n padding: 12px 14px;\n border-radius: 8px;\n overflow-x: auto;\n margin: 8px 0;\n font-size: 13px;\n line-height: 1.5;\n font-family: 'SF Mono', 'Consolas', 'Menlo', monospace;\n}\n.csk-md-code-block code {\n background: none;\n padding: 0;\n border-radius: 0;\n font-size: inherit;\n color: inherit;\n}\n.csk-md-inline-code {\n background: #E5E7EB;\n color: #DC2626;\n padding: 1px 6px;\n border-radius: 4px;\n font-size: 13px;\n font-family: 'SF Mono', 'Consolas', 'Menlo', monospace;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-ul,\n.csk-msg--ai .csk-msg__bubble .csk-md-ol {\n padding-left: 20px;\n margin: 6px 0;\n}\n.csk-msg--ai .csk-msg__bubble .csk-md-ul li,\n.csk-msg--ai .csk-msg__bubble .csk-md-ol li {\n margin-bottom: 4px;\n}\n.csk-md-blockquote {\n border-left: 3px solid var(--csk-primary);\n padding-left: 12px;\n margin: 8px 0;\n color: #6B7280;\n}\n.csk-md-link {\n color: var(--csk-primary);\n text-decoration: none;\n}\n.csk-md-link:hover {\n text-decoration: underline;\n}\n.csk-md-hr {\n border: none;\n border-top: 1px solid #E5E7EB;\n margin: 12px 0;\n}\n\n/* ========== P2: 会话管理面板 ========== */\n.csk-history-btn {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 32px;\n height: 32px;\n border: none;\n background: transparent;\n color: #fff;\n cursor: pointer;\n border-radius: 6px;\n transition: background 0.15s;\n}\n.csk-history-btn:hover {\n background: rgba(255, 255, 255, 0.2);\n}\n.csk-history-panel {\n position: absolute;\n top: 48px;\n left: 0;\n right: 0;\n bottom: 0;\n background: #fff;\n z-index: 10;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n}\n.csk-history-panel--hidden {\n display: none;\n}\n.csk-history-panel__header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 12px 16px;\n border-bottom: 1px solid #E5E7EB;\n background: #F9FAFB;\n}\n.csk-history-panel__title {\n font-size: 14px;\n font-weight: 600;\n color: #1F2937;\n}\n.csk-history-panel__back {\n display: flex;\n align-items: center;\n gap: 4px;\n padding: 4px 10px;\n border: 1px solid #E5E7EB;\n border-radius: 6px;\n background: #fff;\n color: #374151;\n font-size: 12px;\n cursor: pointer;\n transition: all 0.15s;\n}\n.csk-history-panel__back:hover {\n background: #F3F4F6;\n}\n.csk-history-panel__list {\n flex: 1;\n overflow-y: auto;\n padding: 8px;\n}\n.csk-history-panel__list::-webkit-scrollbar {\n width: 4px;\n}\n.csk-history-panel__list::-webkit-scrollbar-thumb {\n background: #E5E7EB;\n border-radius: 2px;\n}\n.csk-history-item {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 10px 12px;\n border-radius: 8px;\n cursor: pointer;\n transition: background 0.15s;\n margin-bottom: 4px;\n}\n.csk-history-item:hover {\n background: #F3F4F6;\n}\n.csk-history-item--active {\n background: #EEF2FF;\n border-left: 3px solid var(--csk-primary);\n}\n.csk-history-item--active:hover {\n background: #E0E7FF;\n}\n.csk-history-item__info {\n flex: 1;\n min-width: 0;\n}\n.csk-history-item__id {\n font-size: 13px;\n font-weight: 500;\n color: #1F2937;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.csk-history-item__meta {\n font-size: 11px;\n color: #9CA3AF;\n margin-top: 2px;\n}\n.csk-history-item__actions {\n display: flex;\n gap: 4px;\n margin-left: 8px;\n opacity: 0;\n transition: opacity 0.15s;\n}\n.csk-history-item:hover .csk-history-item__actions {\n opacity: 1;\n}\n.csk-history-action {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 28px;\n height: 28px;\n border: none;\n border-radius: 6px;\n cursor: pointer;\n font-size: 12px;\n transition: all 0.15s;\n}\n.csk-history-action--export {\n background: #EFF6FF;\n color: #2563EB;\n}\n.csk-history-action--export:hover {\n background: #DBEAFE;\n}\n.csk-history-action--delete {\n background: #FEF2F2;\n color: #DC2626;\n}\n.csk-history-action--delete:hover {\n background: #FEE2E2;\n}\n.csk-history-panel__empty {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n padding: 40px 20px;\n color: #9CA3AF;\n font-size: 13px;\n text-align: center;\n}\n.csk-history-panel__empty-icon {\n font-size: 32px;\n margin-bottom: 8px;\n opacity: 0.5;\n}\n.csk-history-panel__loading {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 20px;\n color: #9CA3AF;\n font-size: 13px;\n}\n.csk-history-panel__loadmore {\n display: block;\n width: 100%;\n padding: 10px;\n border: none;\n background: #F9FAFB;\n color: #6B7280;\n font-size: 12px;\n cursor: pointer;\n text-align: center;\n transition: background 0.15s;\n}\n.csk-history-panel__loadmore:hover {\n background: #F3F4F6;\n}\n\n/* ========== 移动端适配 ========== */\n@media (max-width: 480px) {\n .csk-window {\n width: 100vw !important;\n height: 100vh !important;\n bottom: 0 !important;\n right: 0 !important;\n left: 0 !important;\n border-radius: 0;\n }\n .csk-header {\n border-radius: 0;\n }\n}\n`}(e),document.head.appendChild(v))}function C(){return"undefined"!=typeof crypto&&crypto.randomUUID?crypto.randomUUID():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{const n=16*Math.random()|0;return("x"===e?n:3&n|8).toString(16)})}function $(e){const n={"&":"&","<":"<",">":">",'"':""","'":"'"};return e.replace(/[&<>"']/g,e=>n[e]||e)}function S(){return Date.now()}function F(e,n){const t=document.createElement("div");t.id="csk-launcher",t.className="csk-launcher csk-launcher--"+("left-bottom"===e.position?"left":"right"),t.setAttribute("title",e.title),t.setAttribute("aria-label",e.title),t.setAttribute("role","button"),t.setAttribute("tabindex","0"),t.innerHTML=e.launcherIcon;const r=function(e,n){let t=null;return function(...r){null!==t&&clearTimeout(t),t=setTimeout(()=>{e.apply(this,r),t=null},n)}}(n,300);return t.addEventListener("click",r),t.addEventListener("keydown",e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),r())}),t}function A(e,n,t){const r=document.createElement("div");r.className="csk-msg csk-msg--user";const o=document.createElement("div");o.className="csk-msg__bubble",o.textContent=n;const s=document.createElement("div");return s.className="csk-msg__time",s.textContent=M(t),r.appendChild(o),r.appendChild(s),e.appendChild(r),r}function N(e,n,t,r){const o=document.createElement("div");o.className="csk-msg csk-msg--ai";const s=document.createElement("div");s.className="csk-msg__bubble",r?s.innerHTML=r(n):s.textContent=n;const i=document.createElement("div");return i.className="csk-msg__time",i.textContent=M(t),o.appendChild(s),o.appendChild(i),e.appendChild(o),o}function L(e,n){const t=e.querySelector(".csk-sources");if(t&&t.remove(),!n||0===n.length)return;const r=document.createElement("div");r.className="csk-sources csk-sources--collapsed";const o=document.createElement("div");o.className="csk-sources__header";const s=document.createElement("span");s.className="csk-sources__title",s.textContent=`📚 ${i("source_count",{n:n.length})}`;const a=document.createElement("span");a.className="csk-sources__arrow",a.textContent="▼",o.appendChild(s),o.appendChild(a),o.addEventListener("click",()=>{r.classList.toggle("csk-sources--collapsed")});const c=document.createElement("div");c.className="csk-sources__body";for(const e of n){const n=document.createElement("div");n.className="csk-source-item";const t=document.createElement("div");if(t.className="csk-source-item__name",t.textContent=e.title||e.sourceName||"未知文档",e.snippet){const t=document.createElement("div");t.className="csk-source-item__snippet",t.textContent=e.snippet,n.appendChild(t)}const r=document.createElement("div");r.className="csk-source-item__meta";const o=[];e.sourceName&&o.push(e.sourceName),void 0!==e.chunkIndex&&o.push(`分块 #${e.chunkIndex}`),void 0!==e.score&&o.push(`相关度 ${(100*e.score).toFixed(0)}%`),r.textContent=o.join(" · "),n.appendChild(t),n.appendChild(r),c.appendChild(n)}r.appendChild(o),r.appendChild(c);const l=e.querySelector(".csk-msg__time");l?e.insertBefore(r,l):e.appendChild(r)}function D(e){e.scrollTop=e.scrollHeight}function M(e){const n=new Date(e);return`${String(n.getHours()).padStart(2,"0")}:${String(n.getMinutes()).padStart(2,"0")}`}function B(e){return`csk_history_${e}`}function T(e,n){try{let t=n;t.length>200&&(t=t.slice(50),r.warn(`消息数量达到上限,已裁剪最早 50 条,当前 ${t.length} 条`));const o={messages:t,updatedAt:Date.now()};localStorage.setItem(B(e),JSON.stringify(o))}catch(e){e instanceof Error&&"QuotaExceededError"===e.name?r.error("localStorage 空间不足,会话历史保存失败。建议清空历史记录。"):r.error("保存会话历史失败",e)}}function z(e){try{localStorage.removeItem(B(e))}catch(e){r.warn("清空会话历史失败",e)}}const q="\0CODEBLOCK_",j="\0INLINECODE_";function H(e){if(!e||"string"!=typeof e)return"";const n=[];let t=e;t=t.replace(/```(\w*)\n([\s\S]*?)```/g,(e,t,r)=>{const o=n.length,s=$(r.trimEnd()),i=t?` class="language-${$(t)}"`:"";return n.push(`
${s}
`),`${q}${o}\0`});const r=[];t=t.replace(/`([^`\n]+)`/g,(e,n)=>{const t=r.length;return r.push(`${$(n)}`),`${j}${t}\0`}),t=$(t),t=P(t,q,n),t=P(t,j,r);const o=t.split("\n"),s=[];let i=!1,a="",c=!1,l=[];for(let e=0;e')){u(),p(),m(),s.push(n);continue}const t=n.match(/^(#{1,6})\s+(.+)/);if(t){u(),p(),m();const e=t[1].length;s.push(`${t[2]}`);continue}const r=n.match(/^>\s?(.*)/);if(r){u(),p(),c||(c=!0,s.push('
')),s.push(`

${d(r[1])}

`);continue}c&&m();const h=n.match(/^[\-\*]\s+(.+)/);if(h){u(),m(),i&&"ul"===a||(p(),i=!0,a="ul",s.push('
    ')),s.push(`
  • ${d(h[1])}
  • `);continue}const g=n.match(/^\d+\.\s+(.+)/);g?(u(),m(),i&&"ol"===a||(p(),i=!0,a="ol",s.push('
      ')),s.push(`
    1. ${d(g[1])}
    2. `)):""!==n.trim()?/^(\*{3,}|-{3,}|_{3,})$/.test(n.trim())?(u(),p(),m(),s.push('
      ')):(p(),m(),l.push(d(n))):(u(),p())}return u(),p(),m(),s.join("\n");function d(e){return e=(e=(e=(e=(e=(e=e.replace(/\*\*(.+?)\*\*/g,"$1")).replace(/__(.+?)__/g,"$1")).replace(/\*(.+?)\*/g,"$1")).replace(/(?$1")).replace(/~~(.+?)~~/g,"$1")).replace(/\[([^\]]+)\]\(([^)]+)\)/g,(e,n,t)=>`${n}`)}function u(){l.length>0&&(s.push(`

      ${l.join("
      ")}

      `),l=[])}function p(){i&&(s.push("ul"===a?"
":""),i=!1,a="")}function m(){c&&(s.push("
"),c=!1)}}function P(e,n,t){return e.replace(new RegExp(n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")+"(\\d+)\0","g"),(e,n)=>t[parseInt(n)]||"")}let R,U=null,O=[],W=null,K=null,V=null,J=null,X=null,Y=null,G=null,Q=null,Z=!1,ee=!1;function ne(e,n){U=e,W=n.messagesContainer,K=n.inputEl,V=n.sendBtn,J=n.clearBtn,X=n.categorySelect,Y=n.historyPanel,G=n.showLoading,Q=n.hideLoading,R=e.categoryId,ee=!!e.categoryId||!!e.showCategorySwitch,function(){if(!K||!V)return;V.addEventListener("click",()=>oe()),K.addEventListener("keydown",e=>{"Enter"!==e.key||e.shiftKey||(e.preventDefault(),oe())}),K.addEventListener("input",()=>re()),J&&J.addEventListener("click",()=>function(){if(!U)return;if(!confirm(i("clear_confirm")))return;if(O=[],W){W.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove())}J&&(J.style.display="none");z(U.integrateId);const e=function(){const e="undefined"!=typeof crypto&&crypto.randomUUID?crypto.randomUUID().substring(0,8):Math.random().toString(36).substring(2,10);return`sdk_${Date.now()}_${e}`}();c(e),w(U.integrateId,U.userId,e),r.lifecycleClear(U.integrateId),r.info(`新 chatId=${e}`)}())}(),e.showCategorySwitch&&X&&async function(){if(!X)return;try{const e=await async function(){const e=d("/category/tree");try{const n=await p(e);if(!n.ok)throw new m(h(n.status),`http_${n.status}`);const t=await n.json();return t.success&&Array.isArray(t.data)?(r.info(`加载分类树成功 count=${t.data.length}`),t.data):[]}catch(e){return e instanceof m?r.error(`加载分类树失败: ${e.message}`):r.error("加载分类树失败",e),[]}}();if(0===e.length)return;X.innerHTML=``;const n=(e,t=0)=>{for(const r of e){const e=document.createElement("option");e.value=String(r.id),e.textContent=`${" ".repeat(t)}${r.name}`,void 0!==R&&String(r.id)===String(R)&&(e.selected=!0),X.appendChild(e),r.children&&r.children.length>0&&n(r.children,t+1)}};n(e),r.info(`知识库分类加载成功 count=${e.length}`)}catch(e){r.error(i("category_load_error"),e)}}()}async function te(){if(U&&W&&(await x(),await async function(){if(!U||!W)return;const e=l();if(!e)return;try{const n=await b(e);n.messages.length>0&&(O=n.messages.map((e,n)=>({id:C(),role:"USER"===e.messageType?"user":"ai",content:e.content,timestamp:new Date(e.createTime).getTime()})),se(),r.info(`从后端加载 ${O.length} 条历史消息`),T(U.integrateId,O))}catch(e){r.warn("从后端加载历史消息失败",e)}}(),0===O.length)){const e=function(e){try{const n=localStorage.getItem(B(e));if(!n)return[];const t=JSON.parse(n);return t&&Array.isArray(t.messages)?(r.info(`加载历史消息 integrateId=${e} count=${t.messages.length}`),t.messages):[]}catch(e){return r.warn("加载会话历史失败",e),[]}}(U.integrateId);e.length>0&&(O=e,se(),r.info(`从本地缓存恢复 ${e.length} 条消息`))}}function re(){if(!V||!K)return;K.value.trim().length>0&&!Z?V.removeAttribute("disabled"):V.setAttribute("disabled","true")}async function oe(){if(!K||!U||Z)return;const e=K.value.trim();if(""===e)return;K.value="",re(),K.style.height="auto",Z=!0,re(),U.chatId||await x();const n=S();W&&A(W,e,n);const t={id:C(),role:"user",content:e,timestamp:n};O.push(t),J&&O.length>0&&(J.style.display="inline-flex"),W&&D(W),G&&G(),W&&D(W);try{let n;const t=S(),o=ee&&(void 0!==R||void 0!==U.categoryId);n=U.streaming?await async function(e,n,t){return new Promise((r,o)=>{let s=null,a="",c=!1;k(e,e=>{if(a+=e,!c&&W){Q&&Q();const{bubble:e}=function(e,n){const t=document.createElement("div");t.className="csk-msg csk-msg--ai";const r=document.createElement("div");r.className="csk-msg__bubble",r.innerHTML="";const o=document.createElement("div");return o.className="csk-msg__time",o.textContent=M(n),t.appendChild(r),t.appendChild(o),e.appendChild(t),{wrapper:t,bubble:r}}(W,n);s=e,c=!0}s&&(s.textContent=a),W&&D(W)},()=>{c||""!==a?(s&&a&&(s.innerHTML=H(a)),r(a)):g(e).then(r).catch(o)},e=>{a.length>0?(s&&(s.innerHTML=H(a+"\n\n"+i("stream_interrupted"))),r(a)):o(e)},R,t)})}(e,t,o):await g(e),Q&&Q(),!U.streaming&&W&&N(W,n,t,H);const s={id:C(),role:"ai",content:n,timestamp:t};O.push(s),T(U.integrateId,O),W&&D(W),o&&async function(e,n){try{const t=await f(e,R);if(t.length>0){const e=t.map(e=>{var n,t;return{documentId:e.documentId||"",title:e.title||"",sourceName:e.sourceName||"",chunkIndex:null!==(n=e.chunkIndex)&&void 0!==n?n:0,score:null!==(t=e.score)&&void 0!==t?t:0,snippet:e.snippet||""}});if(n.sources=e,W){const n=W.querySelector(".csk-msg--ai:last-of-type");n&&L(n,e)}U&&T(U.integrateId,O)}}catch(e){r.warn("获取引用来源失败",e)}}(e,s)}catch(e){Q&&Q();const n=e instanceof m?e.message:i("error_send");if(W){const e=document.createElement("div");e.className="csk-msg csk-msg--ai";const t=document.createElement("div");t.className="csk-msg__bubble",t.style.color="#DC2626",t.textContent=`⚠ ${n}`,e.appendChild(t),W.appendChild(e)}r.error(`发送失败 integrateId=${U.integrateId}`,e)}finally{Z=!1,re()}}function se(){if(!W)return;const e=W.querySelector(".csk-history-panel");W.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove());for(const e of O)if("user"===e.role)A(W,e.content,e.timestamp);else{const n=N(W,e.content,e.timestamp,H);e.sources&&e.sources.length>0&&L(n,e.sources)}D(W),J&&O.length>0&&(J.style.display="inline-flex"),e&&!W.contains(e)&&W.appendChild(e)}async function ie(){if(!Y||!U)return;const e=Y.querySelector("#csk-history-list");if(e){e.innerHTML='
加载中...
';try{const n=await y(1,50,U.userId,U.integrateId);!function(e,n,t,r,o,s){if(e.innerHTML="",0===n.length){const n=document.createElement("div");return n.className="csk-history-panel__empty",n.innerHTML=`\n
💬
\n
${i("history_empty")}
\n `,void e.appendChild(n)}for(const a of n){const n=document.createElement("div");n.className="csk-history-item";const c=a.chatId||a.id;s&&c===s&&n.classList.add("csk-history-item--active");const l=document.createElement("div");l.className="csk-history-item__info";const d=document.createElement("div");d.className="csk-history-item__id",a.lastMessagePreview?d.textContent=a.lastMessagePreview.length>60?a.lastMessagePreview.substring(0,60)+"...":a.lastMessagePreview:d.textContent=c;const u=document.createElement("div");u.className="csk-history-item__meta";const p=[];void 0!==a.messageCount&&p.push(`${a.messageCount} 条消息`),a.lastMessageTime?p.push(a.lastMessageTime):a.createdAt&&p.push(a.createdAt),u.textContent=p.join(" · "),l.appendChild(d),l.appendChild(u);const m=document.createElement("div");m.className="csk-history-item__actions";const h=document.createElement("button");h.className="csk-history-action csk-history-action--export",h.setAttribute("title",i("history_export")),h.innerHTML='',h.addEventListener("click",e=>{e.stopPropagation(),r(a.id)});const g=document.createElement("button");g.className="csk-history-action csk-history-action--delete",g.setAttribute("title",i("history_delete")),g.innerHTML='',g.addEventListener("click",e=>{e.stopPropagation(),o(a.id)}),m.appendChild(h),m.appendChild(g),n.appendChild(l),n.appendChild(m),n.addEventListener("click",()=>{t(c)}),e.appendChild(n)}}(e,n.list.map(e=>({id:e.conversationId||"",chatId:e.conversationId||"",messageCount:e.messageCount,lastMessageTime:e.lastMessageTime,lastMessagePreview:e.lastMessagePreview,createdAt:e.firstMessageTime||e.createdAt})),e=>{!async function(e){if(!U||!W)return;r.info(`切换到会话 conversationId=${e}`),c(e),w(U.integrateId,U.userId,e),Y&&Y.classList.add("csk-history-panel--hidden");O=[];W.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove());try{const n=await b(e);n.messages.length>0&&(O=n.messages.map(e=>({id:C(),role:"USER"===e.messageType?"user":"ai",content:e.content,timestamp:new Date(e.createTime).getTime()})),se(),r.info(`加载会话 ${e} 的 ${O.length} 条消息`),T(U.integrateId,O))}catch(n){r.warn(`加载会话消息失败 conversationId=${e}`,n)}J&&O.length>0&&(J.style.display="inline-flex")}(e)},e=>{window.open(d(`/conversation/${e}/export`),"_blank")},async e=>{if(!confirm(i("history_delete_confirm")))return;if(await async function(e){const n=d(`/conversation/${e}`);try{const t=await p(n,{method:"DELETE"});if(!t.ok)throw new m(h(t.status),`http_${t.status}`);const o=await t.json();return r.info(`删除会话 id=${e} success=${o.success}`),o.success||!1}catch(e){return r.error("删除会话失败",e),!1}}(e)){if(e===l()){if(O=[],W){W.querySelectorAll(".csk-msg, .csk-loading").forEach(e=>e.remove())}J&&(J.style.display="none")}ie()}},l())}catch(n){r.error(i("history_load_error"),n),e.innerHTML=`
${i("history_load_error")}
`}}}let ae=null,ce=!1,le=null,de=null,ue=null,pe=null,me=null,he=null,ge=null,ke=null,fe=null,ye=null,be=null;function xe(){de&&de.classList.remove("csk-window--hidden")}function _e(){de&&de.classList.add("csk-window--hidden")}function we(){de&&(de.classList.contains("csk-window--hidden")?(xe(),setTimeout(()=>{pe&&pe.focus()},100)):_e())}const ve={init:function(e){if(ce)return void r.warn("SDK 已初始化,请先调用 destroy() 再重新初始化");const t=function(e){var n,t,o,s,i,a;if(!e.integrateId||"string"!=typeof e.integrateId&&"number"!=typeof e.integrateId||"string"==typeof e.integrateId&&""===e.integrateId.trim())return r.error('integrateId 是必传参数(对应后端 roleId 客服角色 ID),请检查 init() 调用。示例:ChatbotSDK.init({ integrateId: 1, requestDomain: "https://api.example.com" })'),null;if(!e.requestDomain||"string"!=typeof e.requestDomain||""===e.requestDomain.trim())return r.error('requestDomain 是必传参数,请检查 init() 调用。示例:ChatbotSDK.init({ integrateId: 1, requestDomain: "https://api.example.com" })'),null;try{new URL(e.requestDomain)}catch(n){return r.error(`requestDomain 不是合法的 URL 格式:${e.requestDomain}。请提供完整的域名,如 https://api.example.com`),null}const c={integrateId:String(e.integrateId).trim(),requestDomain:e.requestDomain.replace(/\/+$/,""),userId:e.userId,categoryId:e.categoryId,showCategorySwitch:null!==(n=e.showCategorySwitch)&&void 0!==n&&n,title:e.title||"AI 智能助手",width:null!==(t=e.width)&&void 0!==t?t:380,position:"left-bottom"===e.position?"left-bottom":"right-bottom",primaryColor:e.primaryColor||"#4F46E5",launcherIcon:e.launcherIcon||'\n \n \n',showClear:null===(o=e.showClear)||void 0===o||o,showAdminPanel:null!==(s=e.showAdminPanel)&&void 0!==s&&s,streaming:null===(i=e.streaming)||void 0===i||i,locale:e.locale||"zh-CN",debug:null===(a=e.debug)||void 0===a||a,chatId:""};return r.info(`配置解析完成 integrateId(=roleId)=${c.integrateId} userId(=accountId)=${c.userId||"(未设置)"} requestDomain=${c.requestDomain}`),c}(e);if(!t)return;var c;ae=t,function(e){if(o[e])s=e;else{const n=e.split("-")[0],t=Object.keys(o).find(e=>e.startsWith(n));t&&(s=t)}}(ae.locale),c=ae.debug,n=c,function(e){a=e}(ae),I(ae),le=F(ae,we),document.body.appendChild(le);const l=function(e){const n=document.createElement("div");n.id="csk-window",n.className=`csk-root csk-window csk-window--${"left-bottom"===e.position?"left":"right"} csk-window--hidden`;const t=document.createElement("div");t.className="csk-header";const r=document.createElement("span");r.className="csk-header__title",r.textContent=e.title;const o=document.createElement("div");o.className="csk-header__actions";const s=document.createElement("button");s.className="csk-history-btn",s.setAttribute("title",i("history_title")),s.innerHTML='';const a=document.createElement("button");a.className="csk-header__btn csk-header__btn--minimize",a.setAttribute("title",i("minimize")),a.innerHTML='',a.addEventListener("click",()=>{n.classList.add("csk-window--hidden")});const c=document.createElement("button");c.className="csk-header__btn csk-header__btn--close",c.setAttribute("title",i("close")),c.innerHTML='',c.addEventListener("click",()=>{n.classList.add("csk-window--hidden")}),o.appendChild(s),o.appendChild(a),o.appendChild(c),t.appendChild(r),t.appendChild(o);const l=document.createElement("div");l.id="csk-messages",l.className="csk-messages";const d=document.createElement("div");d.className="csk-history-panel csk-history-panel--hidden",d.innerHTML=`\n
\n ${i("history_title")}\n \n
\n
\n `,l.appendChild(d);const u=d.querySelector("#csk-history-back");u&&u.addEventListener("click",()=>{d.classList.add("csk-history-panel--hidden")}),s.addEventListener("click",e=>{e.stopPropagation();const t=d.classList.contains("csk-history-panel--hidden");d.classList.toggle("csk-history-panel--hidden"),t&&n.dispatchEvent(new CustomEvent("csk:loadHistory"))});let p=null;if(e.showCategorySwitch){const e=document.createElement("div");e.className="csk-category-bar";const r=document.createElement("span");r.className="csk-category-bar__label",r.textContent="📚",p=document.createElement("select"),p.id="csk-category-select",p.className="csk-category-select",p.innerHTML=``,p.addEventListener("change",()=>{const e=p.value;n.dispatchEvent(new CustomEvent("csk:categoryChange",{detail:{categoryId:e?Number(e):void 0}}))}),e.appendChild(r),e.appendChild(p),n.appendChild(t),n.appendChild(l),n.appendChild(e)}else n.appendChild(t),n.appendChild(l);const m=document.createElement("div");m.className="csk-input-area";const h=document.createElement("textarea");h.id="csk-input",h.className="csk-input",h.setAttribute("placeholder",i("placeholder")),h.setAttribute("rows","1"),h.setAttribute("autofocus","");const g=document.createElement("button");g.id="csk-send-btn",g.className="csk-send-btn",g.setAttribute("title",i("send")),g.setAttribute("disabled","true"),g.innerHTML='',m.appendChild(h),m.appendChild(g),n.appendChild(m);let k=null;e.showClear&&(k=document.createElement("button"),k.className="csk-clear-btn",k.textContent=i("clear"),k.style.display="none",n.insertBefore(k,m));let f=null;return{window:n,messagesContainer:l,inputEl:h,sendBtn:g,clearBtn:k,categorySelect:p,historyPanel:d,showLoading:function(){if(f)return f.style.display="flex",f;const e=document.createElement("div");return e.className="csk-loading",e.innerHTML='\n
\n
\n
\n ',l.appendChild(e),f=e,e},hideLoading:function(){f&&f.parentNode&&(f.parentNode.removeChild(f),f=null)}}}(ae);de=l.window,ue=l.messagesContainer,pe=l.inputEl,me=l.sendBtn,he=l.clearBtn,ge=l.categorySelect,ke=l.historyPanel,fe=l.showLoading,ye=l.hideLoading,document.body.appendChild(de);const d=de.querySelector(".csk-header");d&&(be=function(e,n){let t=!1,r=0,o=0,s=0,i=0;const a=e=>{t=!0,r=e.clientX,o=e.clientY;const a=n.getBoundingClientRect();s=r-a.left,i=o-a.top,document.addEventListener("mousemove",c),document.addEventListener("mouseup",l)},c=e=>{if(!t)return;const r=e.clientX-s,o=e.clientY-i,a=window.innerWidth-n.offsetWidth,c=window.innerHeight-n.offsetHeight;n.style.right="auto",n.style.bottom="auto",n.style.left=`${Math.max(0,Math.min(r,a))}px`,n.style.top=`${Math.max(0,Math.min(o,c))}px`},l=()=>{t=!1,document.removeEventListener("mousemove",c),document.removeEventListener("mouseup",l)};return e.addEventListener("mousedown",a),()=>{e.removeEventListener("mousedown",a),document.removeEventListener("mousemove",c),document.removeEventListener("mouseup",l)}}(d,de)),ne(ae,{messagesContainer:ue,inputEl:pe,sendBtn:me,clearBtn:he,categorySelect:ge,historyPanel:ke,showLoading:fe,hideLoading:ye}),de.addEventListener("csk:categoryChange",e=>{var n;n=e.detail.categoryId,R=n,ee=void 0!==n,r.lifecycleCategoryChange(null!=n?n:"全部")}),de.addEventListener("csk:loadHistory",()=>{ie()}),ce=!0,r.lifecycleInit(ae.integrateId,ae.requestDomain),te().catch(e=>{r.warn("chatId 初始化失败,将在发送消息时重试",e)})},destroy:function(){if(!ce)return;le&&le.parentNode&&(le.parentNode.removeChild(le),le=null),de&&de.parentNode&&(de.parentNode.removeChild(de),de=null),be&&(be(),be=null),v&&v.parentNode&&(v.parentNode.removeChild(v),v=null),document.querySelectorAll("style[data-csk-sdk]").forEach(e=>e.remove());const e=null==ae?void 0:ae.integrateId;ae=null,ce=!1,ue=null,pe=null,me=null,he=null,ge=null,ke=null,fe=null,ye=null,r.lifecycleDestroy(e||"")},open:xe,close:_e,toggle:we,clearHistory:function(){ae&&(he?he.click():confirm("确定清空所有对话记录?")&&z(ae.integrateId))}};return"undefined"!=typeof window&&(window.ChatbotSDK=ve),ve}(); //# sourceMappingURL=chatbot-sdk.min.js.map diff --git a/src/main/resources/static/sdk/chatbot-sdk.min.js.map b/src/main/resources/static/sdk/chatbot-sdk.min.js.map index c00e342..1204c32 100644 --- a/src/main/resources/static/sdk/chatbot-sdk.min.js.map +++ b/src/main/resources/static/sdk/chatbot-sdk.min.js.map @@ -1 +1 @@ -{"version":3,"file":"chatbot-sdk.min.js","sources":["../src/logger.ts","../src/i18n.ts","../src/api.ts","../src/styles.ts","../src/utils.ts","../src/dom.ts","../src/storage.ts","../src/markdown.ts","../src/chat.ts","../src/index.ts","../src/config.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":["PREFIX","debugEnabled","timers","logger","info","msg","data","console","log","undefined","warn","error","time","label","Date","now","timeEnd","prefix","start","duration","lifecycleInit","integrateId","requestDomain","this","lifecycleDestroy","lifecycleSend","length","lifecycleReply","lifecycleError","status","message","lifecycleClear","lifecycleStreamDone","lifecycleCategoryChange","categoryId","dictionaries","title","minimize","close","placeholder","send","loading","stream_interrupted","stream_unstable","category_placeholder","category_all","category_load_error","source_title","source_count","source_loading","clear","clear_confirm","history_title","history_empty","history_load_error","history_delete_confirm","history_export","history_delete","error_network","error_timeout","error_server","error_cors","error_auth","error_forbidden","error_not_found","error_rate_limit","error_unavailable","error_unknown","error_send","error_stream_unsupported","en","currentLocale","t","key","params","text","k","v","Object","entries","replace","String","currentConfig","buildUrl","path","Error","startsWith","setIfPresent","value","trim","set","async","safeFetch","url","options","timeout","controller","AbortController","timer","setTimeout","abort","fetch","assign","signal","mode","credentials","err","DOMException","name","CskError","TypeError","includes","clearTimeout","constructor","type","super","getHttpErrorMessage","chatRequest","URLSearchParams","chatId","userId","toString","buildChatUrl","response","ok","errorMsg","chatSSERequest","onChunk","onDone","onError","useRag","buildChatRAGSSEUrl","buildChatSSEUrl","totalText","REQUEST_TIMEOUT","reader","_a","body","getReader","decoder","TextDecoder","stream","buffer","done","read","decode","lines","split","pop","line","trimmed","substring","readErr","releaseLock","fetchRagSources","buildRagSourcesUrl","json","success","Array","isArray","fetchConversationList","page","size","accountId","roleId","encodeURIComponent","list","total","pages","initChatId","cachedChatId","localStorage","getItem","chatIdStorageKey","loadCachedChatId","result","latestConv","conversationId","saveCachedChatId","messageCount","newChatId","random","crypto","randomUUID","Math","generateChatId","setItem","removeItem","styleElement","cssVars","config","darker","hex","amount","match","clamp","max","min","r","parseInt","g","b","padStart","adjustColor","primaryColor","width","injectStyles","document","querySelector","createElement","setAttribute","textContent","getStyles","head","appendChild","uuid","c","escapeHtml","map","ch","createLauncher","onClick","launcher","id","className","position","innerHTML","launcherIcon","debouncedClick","fn","delay","args","apply","debounce","addEventListener","e","preventDefault","renderUserBubble","container","timestamp","wrapper","bubble","formatTime","renderAIBubble","renderMd","renderSources","sources","existing","remove","sourcesEl","header","titleSpan","n","arrow","classList","toggle","src","item","sourceName","snippet","meta","metaParts","push","chunkIndex","score","toFixed","join","timeEl","insertBefore","scrollToBottom","scrollTop","scrollHeight","d","getHours","getMinutes","storageKey","saveMessages","messages","slice","updatedAt","JSON","stringify","clearMessages","CODE_BLOCK_PREFIX","INLINE_CODE_PREFIX","renderMarkdown","codeBlocks","processed","_match","lang","code","idx","escapedCode","trimEnd","langClass","inlineCodes","restorePlaceholders","inList","listType","inBlockquote","paragraphBuffer","i","flushParagraph","closeList","closeBlockquote","headingMatch","level","quoteMatch","inlineFormat","ulMatch","olMatch","test","_m","linkText","replacements","RegExp","currentCategoryId","messagesContainer","inputEl","sendBtn","clearBtn","categorySelect","historyPanel","showLoadingFn","hideLoadingFn","isSending","initChat","cfg","dom","showLoading","hideLoading","showCategorySwitch","handleSend","shiftKey","updateSendBtnState","confirm","querySelectorAll","forEach","el","style","display","newId","generateNewChatId","handleClear","bindSendEvents","tree","fetchCategoryTree","addOptions","nodes","indent","node","option","repeat","selected","children","loadCategories","initChatHistory","fetchConversationMessages","role","messageType","content","createTime","getTime","renderHistory","loadHistoryFromBackend","cached","raw","parse","loadMessages","removeAttribute","height","userTimestamp","userMsg","aiContent","aiTimestamp","shouldUseRag","streaming","Promise","resolve","reject","bubbleEl","accumulated","streamStarted","chunk","createEmptyAIBubble","then","catch","sendStreamMessage","aiMsg","ragSources","s","documentId","_b","lastAiMsg","fetchAndRenderSources","errMsg","errorBubble","color","historyPanelEl","contains","loadHistoryConversations","listEl","items","onExport","onDelete","empty","idEl","metaEl","lastMessageTime","createdAt","actionsEl","exportBtn","stopPropagation","deleteBtn","renderHistoryList","firstMessageTime","window","open","method","deleteConversation","isInitialized","launcherEl","windowEl","dragCleanup","add","focus","ChatbotSDK","init","rawConfig","parsed","URL","_g","showClear","_c","showAdminPanel","_d","_e","locale","debug","_f","parseConfig","enabled","matched","keys","find","setLocale","setApiConfig","titleEl","actions","historyBtn","minimizeBtn","closeBtn","backBtn","isHidden","dispatchEvent","CustomEvent","categoryBar","categoryLabel","selectedId","detail","Number","inputArea","loadingEl","parentNode","removeChild","createChatWindow","headerEl","dragging","startX","startY","offsetX","offsetY","onMouseDown","clientX","clientY","rect","getBoundingClientRect","left","top","onMouseMove","onMouseUp","x","y","maxX","innerWidth","offsetWidth","maxY","innerHeight","offsetHeight","right","bottom","removeEventListener","enableDrag","destroy","oldIntegrateId","clearHistory","click"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"chatbot-sdk.min.js","sources":["../src/logger.ts","../src/i18n.ts","../src/api.ts","../src/styles.ts","../src/utils.ts","../src/dom.ts","../src/storage.ts","../src/markdown.ts","../src/chat.ts","../src/index.ts","../src/config.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":["PREFIX","debugEnabled","timers","logger","info","msg","data","console","log","undefined","warn","error","time","label","Date","now","timeEnd","prefix","start","duration","lifecycleInit","integrateId","requestDomain","this","lifecycleDestroy","lifecycleSend","length","lifecycleReply","lifecycleError","status","message","lifecycleClear","lifecycleStreamDone","lifecycleCategoryChange","categoryId","dictionaries","title","minimize","close","placeholder","send","loading","stream_interrupted","stream_unstable","category_placeholder","category_all","category_load_error","source_title","source_count","source_loading","clear","clear_confirm","history_title","history_empty","history_load_error","history_delete_confirm","history_export","history_delete","error_network","error_timeout","error_server","error_cors","error_auth","error_forbidden","error_not_found","error_rate_limit","error_unavailable","error_unknown","error_send","error_stream_unsupported","en","currentLocale","t","key","params","text","k","v","Object","entries","replace","String","currentConfig","updateChatId","chatId","getChatId","buildUrl","path","Error","startsWith","setIfPresent","value","trim","set","async","safeFetch","url","options","timeout","controller","AbortController","timer","setTimeout","abort","fetch","assign","signal","mode","credentials","err","DOMException","name","CskError","TypeError","includes","clearTimeout","constructor","type","super","getHttpErrorMessage","chatRequest","URLSearchParams","userId","toString","buildChatUrl","response","ok","errorMsg","chatSSERequest","onChunk","onDone","onError","useRag","buildChatRAGSSEUrl","buildChatSSEUrl","totalText","REQUEST_TIMEOUT","reader","_a","body","getReader","decoder","TextDecoder","stream","buffer","done","read","decode","lines","split","pop","line","trimmed","substring","readErr","releaseLock","fetchRagSources","buildRagSourcesUrl","json","success","Array","isArray","fetchConversationList","page","size","accountId","roleId","encodeURIComponent","list","total","pages","fetchConversationMessages","conversationId","messages","initChatId","cachedChatId","localStorage","getItem","chatIdStorageKey","loadCachedChatId","result","latestConv","saveCachedChatId","messageCount","newChatId","random","crypto","randomUUID","Math","generateChatId","setItem","removeItem","styleElement","cssVars","config","darker","hex","amount","match","clamp","max","min","r","parseInt","g","b","padStart","adjustColor","primaryColor","width","injectStyles","document","querySelector","createElement","setAttribute","textContent","getStyles","head","appendChild","uuid","c","escapeHtml","map","ch","createLauncher","onClick","launcher","id","className","position","innerHTML","launcherIcon","debouncedClick","fn","delay","args","apply","debounce","addEventListener","e","preventDefault","renderUserBubble","container","timestamp","wrapper","bubble","formatTime","renderAIBubble","renderMd","renderSources","sources","existing","remove","sourcesEl","header","titleSpan","n","arrow","classList","toggle","src","item","sourceName","snippet","meta","metaParts","push","chunkIndex","score","toFixed","join","timeEl","insertBefore","scrollToBottom","scrollTop","scrollHeight","d","getHours","getMinutes","storageKey","saveMessages","slice","updatedAt","JSON","stringify","clearMessages","CODE_BLOCK_PREFIX","INLINE_CODE_PREFIX","renderMarkdown","codeBlocks","processed","_match","lang","code","idx","escapedCode","trimEnd","langClass","inlineCodes","restorePlaceholders","inList","listType","inBlockquote","paragraphBuffer","i","flushParagraph","closeList","closeBlockquote","headingMatch","level","quoteMatch","inlineFormat","ulMatch","olMatch","test","_m","linkText","replacements","RegExp","currentCategoryId","messagesContainer","inputEl","sendBtn","clearBtn","categorySelect","historyPanel","showLoadingFn","hideLoadingFn","isSending","initChat","cfg","dom","showLoading","hideLoading","showCategorySwitch","handleSend","shiftKey","updateSendBtnState","confirm","querySelectorAll","forEach","el","style","display","newId","generateNewChatId","handleClear","bindSendEvents","tree","fetchCategoryTree","addOptions","nodes","indent","node","option","repeat","selected","children","loadCategories","initChatHistory","role","messageType","content","createTime","getTime","renderHistory","loadHistoryFromBackend","cached","raw","parse","loadMessages","removeAttribute","height","userTimestamp","userMsg","aiContent","aiTimestamp","shouldUseRag","streaming","Promise","resolve","reject","bubbleEl","accumulated","streamStarted","chunk","createEmptyAIBubble","then","catch","sendStreamMessage","aiMsg","ragSources","s","documentId","_b","lastAiMsg","fetchAndRenderSources","errMsg","errorBubble","color","historyPanelEl","contains","loadHistoryConversations","listEl","items","onSelect","onExport","onDelete","activeChatId","empty","convId","add","idEl","lastMessagePreview","metaEl","lastMessageTime","createdAt","actionsEl","exportBtn","stopPropagation","deleteBtn","renderHistoryList","firstMessageTime","switchToConversation","window","open","method","deleteConversation","isInitialized","launcherEl","windowEl","dragCleanup","focus","ChatbotSDK","init","rawConfig","parsed","URL","_g","showClear","_c","showAdminPanel","_d","_e","locale","debug","_f","parseConfig","enabled","matched","keys","find","setLocale","setApiConfig","titleEl","actions","historyBtn","minimizeBtn","closeBtn","backBtn","isHidden","dispatchEvent","CustomEvent","categoryBar","categoryLabel","selectedId","detail","Number","inputArea","loadingEl","parentNode","removeChild","createChatWindow","headerEl","dragging","startX","startY","offsetX","offsetY","onMouseDown","clientX","clientY","rect","getBoundingClientRect","left","top","onMouseMove","onMouseUp","x","y","maxX","innerWidth","offsetWidth","maxY","innerHeight","offsetHeight","right","bottom","removeEventListener","enableDrag","destroy","oldIntegrateId","clearHistory","click"],"mappings":"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"} \ No newline at end of file diff --git a/src/main/resources/static/sdk/test.html b/src/main/resources/static/sdk/test.html index 72fc6c2..3015867 100644 --- a/src/main/resources/static/sdk/test.html +++ b/src/main/resources/static/sdk/test.html @@ -65,6 +65,21 @@ body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans S .footer{padding:10px 20px;background:#fff;border-top:1px solid #E5E7EB;display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#9CA3AF} .mapping-note{background:#FFFBEB;border:1px solid #FDE68A;border-radius:8px;padding:10px 14px;margin-bottom:14px;font-size:11px;color:#92400E;line-height:1.6} .mapping-note b{color:#78350F} +.code-section{margin-top:12px;border:1px solid #E5E7EB;border-radius:8px;overflow:hidden} +.code-section__header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#F9FAFB;border-bottom:1px solid #E5E7EB} +.code-section__title{font-size:12px;font-weight:600;color:#374151;display:flex;align-items:center;gap:4px} +.code-section__copy{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border:1px solid #D1D5DB;border-radius:4px;background:#fff;color:#374151;font-size:11px;cursor:pointer;transition:all .15s;font-family:inherit} +.code-section__copy:hover{background:#F3F4F6;border-color:#9CA3AF} +.code-section__copy--ok{background:#D1FAE5;border-color:#6EE7B7;color:#065F46} +.code-section__body{padding:0;max-height:260px;overflow-y:auto} +.code-section__body::-webkit-scrollbar{width:4px} +.code-section__body::-webkit-scrollbar-thumb{background:#D1D5DB;border-radius:2px} +.code-section pre{margin:0;padding:12px;font-size:11.5px;line-height:1.6;font-family:'SF Mono','Consolas','Menlo',monospace;white-space:pre;overflow-x:auto;color:#1F2937;tab-size:2} +.code-section .cm{color:#6B7280} /* 注释 */ +.code-section .kw{color:#7C3AED} /* 关键字/key */ +.code-section .st{color:#059669} /* 字符串 */ +.code-section .nu{color:#2563EB} /* 数字 */ +.code-section .bl{color:#DC2626} /* 必传高亮 */ @@ -166,6 +181,19 @@ body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans S 5. AI 回复支持 Markdown 渲染
6. 开启 showCategorySwitch 可选择知识库分类 + +
+ + +
+
+ 📋 接入代码 + +
+
+

+        
+