Files
ST-Amily2-Chat-Optimisation…/ui/hanlinyuan-bindings.js
2025-09-13 09:42:13 +08:00

2 lines
59 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
function _0x721f(_0x3916cc,_0x2d615d){const _0x431c20=_0x431c();return _0x721f=function(_0x721fea,_0x4dc38c){_0x721fea=_0x721fea-0x150;let _0x7d086a=_0x431c20[_0x721fea];return _0x7d086a;},_0x721f(_0x3916cc,_0x2d615d);}const _0x3b14fe=_0x721f;(function(_0x38beb2,_0x24773e){const _0x52dc71=_0x721f,_0x35d9b0=_0x38beb2();while(!![]){try{const _0x5e272e=-parseInt(_0x52dc71(0x1cd))/0x1+-parseInt(_0x52dc71(0x1d0))/0x2*(parseInt(_0x52dc71(0x184))/0x3)+-parseInt(_0x52dc71(0x167))/0x4+parseInt(_0x52dc71(0x2c5))/0x5+-parseInt(_0x52dc71(0x172))/0x6+-parseInt(_0x52dc71(0x28f))/0x7*(-parseInt(_0x52dc71(0x2f8))/0x8)+parseInt(_0x52dc71(0x2d1))/0x9;if(_0x5e272e===_0x24773e)break;else _0x35d9b0['push'](_0x35d9b0['shift']());}catch(_0x413934){_0x35d9b0['push'](_0x35d9b0['shift']());}}}(_0x431c,0xa5b9a));import{getContext}from'/scripts/extensions.js';import*as _0x1ad3be from'../core/rag-processor.js';import*as _0x481173 from'../core/historiographer.js';import*as _0x5ab784 from'../core/utils/context-utils.js';import*as _0x44ac4c from'../core/ingestion-manager.js';import{showContentModal,showHtmlModal}from'./page-window.js';import{extractBlocksByTags,applyExclusionRules}from'../core/utils/rag-tag-extractor.js';function _0x431c(){const _0x4d5b42=['会话已锁定到宝库:\x20','placeholder','\x20楼到\x20','当前角色没有任何局部知识库可供删除。','querySelectorAll','任务已由用户中止。进度已保存,可随时继续。','根据标签提取或内容排除条件,未找到任何有效内容。','fetchHLYEmbeddingModels','mes','[自动保存]\x20设置项\x20\x27','success','message','[翰林院-枢纽]\x20预览过程发生错误:','hly-api-key-group','getCharacterName','google_direct','#hly-add-rule-btn','hly-hist-select-library','录入内容不能为空。','确认并更新预览','请先选择一个书库并至少选择一个要编纂的条目。','\x0a所用模型:\x20','正在测试神力连接...','createElement',',\x20忆识总数=','当前所有操作都将指向这个锁定的宝库:','hly-condensation-results','chunkSize','hanlinyuan-ingest-novel-file-name','processed','正在处理您提交的文书...','正在为《','advanced','未选择文件','data','getElementById','批量编纂任务已完成。',')\x20已被删除','dataset','\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<label\x20class=\x22hly-multiselect-option\x22\x20title=\x22','hly-tag-input-container','<i\x20class=\x22fa-solid\x20','</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20id=\x22hly-add-rule-btn\x22\x20class=\x22hly-action-button\x22\x20style=\x22margin-top:\x2010px;\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<i\x20class=\x22fas\x20fa-plus\x22></i>\x20添加新规则\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<style>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.hly-exclusion-rule-row\x20{\x20display:\x20flex;\x20align-items:\x20center;\x20gap:\x2010px;\x20margin-bottom:\x2010px;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.hly-exclusion-rule-row\x20input\x20{\x20flex-grow:\x201;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.hly-delete-rule-btn\x20{\x20background:\x20#c0392b;\x20color:\x20white;\x20border:\x20none;\x20border-radius:\x2050%;\x20width:\x2024px;\x20height:\x2024px;\x20cursor:\x20pointer;\x20font-size:\x2016px;\x20line-height:\x2024px;\x20text-align:\x20center;\x20padding:\x200;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20</style>\x0a\x20\x20\x20\x20','%。是否从上次中断之处继续?','disabled','[断点续传]\x20用户选择放弃旧任务\x20',')\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20type=\x22checkbox\x22\x20class=\x22hly-hist-entry-checkbox\x22\x20value=\x22','\x20的状态已切换','移动失败:\x20','文书录入失败:\x20','查询宝库状态失败:\x20','matchThreshold','embeddingModel','手动录入','局部知识库批量删除完成。成功:\x20','\x20个局部知识库吗此操作无法恢复','find','log-success','hly-retrieval-enabled','hly-delete-rule-btn','ingestHLYManualText','files','settingKey','retrieval','getCollectionId','val','会话已解锁,将跟随当前角色。','name','翰林院使用教程','use\x20strict','hlyLog','获取模型失败:\x20','正在获取可用书库列表...','hanlinyuan-ingest-novel-controls','toggleSessionLock','预览并编辑凝识内容','span','hly-kb-list-local','layerStart','hly-manual-text','\x20状态失败:\x20','.hly-kb-move-btn','》中的\x20','hly-chunk-size','大功告成','hly-rerank-notify','getMessagesForCondensation','hanlinyuan-ingest-novel-file-input','</i></p>','condensation','》的条目失败:','forEach','\x20个条目进行批量编纂...','startHLYCondensation','user','start','\x20块开始。','saveHLYSettings','\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<label\x20class=\x22hly-toggle-switch\x22\x20title=\x22启用/禁用此知识库\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20type=\x22checkbox\x22\x20class=\x22hly-kb-toggle\x22\x20','本地代理地址:','hly-exclusion-rules-btn','神力连接通畅!','hly-hist-select-all-entries','apiKey','each','clearJob','hly-locked-status','integer','selectedIndex','warn','\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20id=\x22hly-exclusion-rules-container\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p\x20class=\x22hly-notes\x22>在这里定义需要从提取内容中排除的文本片段。例如排除HTML注释可以设置开始字符为\x20`<!--`,结束字符为\x20`-->`。</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20id=\x22hly-rules-list\x22>','count','\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22hly-exclusion-rule-row\x22\x20data-index=\x22','log-error','processCondensation','hly-rerank-top-n','\x20楼到第\x20','\x20/\x20','您确定要永久删除【当前角色】的全部\x20','成功获取\x20','from','[翰林院-枢纽]\x20获取模型列表失败:','getAvailableWorldbooks','entries','圣旨已达','预览内容已更新,可随时开始凝识。','stopPropagation','<option\x20value=\x22\x22>请选择一个书库...</option>','hly-max-results','翰林院设定已存档封印。','锁定会话','开始获取Rerank模型列表...','\x20个模型。','customApiUrl','boolean','会话已锁定','hly-rerank-model','<p\x20class=\x22hly-notes\x20log-error\x22><i>加载失败:\x20','getSettings','内容排除规则已保存。','hly-current-character-name','hly-custom-api-url','type','warning','正在准备凝识...','closest','target','开始对《','exclusionRules','stringify','hly-query-message-count','push','圣谕不明','scrollTop','manual','fetchHLYRerankModels','hly-tag-extraction-toggle','change','error','<option>正在获取...</option>','点击以锁定,让翰林院固定操作当前角色的宝库','radio','messageTypes','[翰林院-枢纽]\x20获取Rerank模型列表失败:','is-user','\x20条消息开始凝识...','\x20个条目','fa-times-circle','获取Rerank模型失败:\x20','<option\x20value=\x22\x22>加载失败</option>','未能获取到任何模型。','未找到符合条件的消息。','keys','flex','findIndex','<option>未找到模型</option>','getChatId','\x20楼的内容共\x20','classList','21wXhCot','content','overlap','getGlobalKnowledgeBases','hly-injection-depth','getLocalKnowledgeBases','#hly-rules-list','apiEndpoint','清空宝库失败。','切换状态失败:\x20','hly-include-user','<button\x20class=\x22hly-kb-move-btn\x22\x20title=\x22上移到全局\x22><i\x20class=\x22fas\x20fa-arrow-up\x22></i></button>','hly-layer-end','fetchRerankModels','layerEnd','【手动存档】所有设定已存档封印。','当前角色','tags','input[name=\x22hly-injection-position\x22][value=\x22','hly-kb-list-local-placeholder','finalMessages','\x20(ID:\x20','parse','[翰林院-枢纽]\x20加载书库列表失败:','insertAdjacentHTML','文书已成功录入宝库,新增\x20','includes','chat','totalChunks','\x20个Rerank模型。','hly-kb-toggle','<option>获取失败</option>','此操作将彻底清空当前角色的所有忆识(向量),且无法恢复。您确定要继续吗?','检测到预览后待处理的消息对象,开始精确凝识...','[翰林院-枢纽]\x20手动录入过程发生错误:','condensationHistory','info','hly-modal-container','every',']\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</summary>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22hly-preview-content\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<textarea\x20class=\x22hly-preview-textarea\x22\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20data-floor=\x22','hly-tag-input','trim','。进度已保存,可稍后重试。','\x20个条目。','[data-setting-key]','hly-exclusion-rules-container','previousElementSibling','\x20楼已成功凝识新增\x20','聊天记录从第\x20','手动录入失败:\x20','toggle','手动录入成功,新增\x20','\x0a</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20','hly-match-threshold','336340YCCAkT','scripts/extensions/third-party/ST-Amily2-Chat-Optimisation/HanLin.md','filter','saveSettings','url','fas\x20fa-lock-open','split','hly-api-endpoint',',\x20向量:\x20','fa-check-circle','hly-overlap-size','[翰林院-枢纽]\x20编纂过程发生严重错误:','31968522DVTibR','\x22\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20data-is-user=\x22','checkbox','removeKnowledgeBase','position','hly-current-vector-count','开始获取模型列表...','label','send_date','</div>','hanlinyuan-ingest-abort','processedChunks','.hly-preview-textarea','预览失败:\x20','\x20个知识块','hly-kb-delete-btn','addEventListener','comment','翰林院启奏','model','编纂失败:\x20','成功加载\x20','.hly-exclusion-rule-row','hly-embedding-model','purgeStorage','会话已解锁。','hly-kb-delete-local-btn','凝识完成!新增\x20','加载书库列表失败:\x20','[实时刷新]\x20批次完成忆识总数已更新。','hanlinyuan-ingest-progress-bar','hly-include-ai','\x20块继续录入。','<p\x20class=\x22hly-record-hint\x22>可在此预览凝识结果。</p>','[翰林院-枢纽]\x20加载《','active','宝库状态','is_user',',从第\x20','383488MzHQMH','保存规则','启禀大人,发现此书上次录入已完成\x20','hly-rerank-hybrid-alpha','getLoresForWorldbook','resetHLYSettings','...','.hly-log-placeholder','hly-kb-list-global','\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<label\x20class=\x22hly-multiselect-option\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20type=\x22checkbox\x22\x20id=\x22hly-hist-select-all-entries\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<strong>全选/全不选</strong>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</label>','[翰林院-枢纽]\x20更新忆识数量失败:','isSessionLocked',',重新开始。','textContent','fa-exclamation-triangle','正在读取文件...','div','options','您确定要将知识库【','会话已锁定到:\x20','loadProgress','[翰林院-枢纽]\x20查询宝库状态失败:','testApiConnection','已采集\x20','未能获取到任何Rerank模型。','float','查看宝库状态成功集合ID=','block','》的批量编纂任务已完成。成功:\x20','fa-circle-info','initialize','hly-retrieval-notify','batchSize','\x22></i>\x20[','例如\x20http://127.0.0.1:8000/v1','hly-session-lock-btn','.hly-kb-name','amily2_open_hanlin_tutorial','任务完成!成功录入\x20','testHLYApi','local','操作完成,但有\x20','title','hly-injection-role','.hly-hist-entry-checkbox:checked','错误:\x20','<option\x20value=\x22\x22>未找到任何书库</option>','fas\x20fa-lock','\x20条有效条目请点击“开始凝识”进入自动向量化流程。','知识库\x20','abort','\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22hly-preview-item-v2\x22\x20id=\x22','点击以解锁,让翰林院跟随当前角色','hly-local-kb-char-name','3185740PbfANs','正在查询宝库状态...','此书库为空','加载条目失败:\x20','hly-hist-entry-multiselect-options','您确定要将所有设定恢复为出厂默认值吗?','输入兼容OpenAI的embeddings端点','novel','切换知识库\x20','[翰林院-枢纽]\x20凝识过程发生错误:','true','4746426PYMxPK','beforeend','toFixed','hly-historiography-results','加载失败','\x20个书库。','未知错误','querySelector','\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20type=\x22text\x22\x20class=\x22hly-imperial-brush\x22\x20value=\x22','hly-hist-entry-multiselect-btn','解锁会话','totalSuccess','injection','正在处理您确认后的文书...','\x22\x20\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20data-send-date=\x22','purgeHLYStorage','您确定要永久删除知识库【','enabled','6lNGrYN','string','innerHTML','input','custom','\x0a--------------------\x0aAPI端点:\x20','click','total','通行令牌\x20(API\x20Key):','</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</label>','value','收到手动录入请求,文本长度:\x20','startHLYHistoriography','神力连接失败:\x20','N/A','showHLYStats','hly-condensation-enabled','编辑内容排除规则','\x20失败:\x20','map','条)</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22hly-kb-actions\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','length','remove','hly-custom-endpoint-docket','notify','准备对《','hly-log-output','严重错误','[翰林院-枢纽]\x20未能获取SillyTavern上下文绑定失败。','请先选择一个\x20.txt\x20文件','.hly-nav-item','hly-api-key','end','\x20楼凝识至第\x20','用户请求查看宝库状态。','appendChild','[断点续传]\x20用户选择继续任务\x20','executeCompilation','ingestTextToHanlinyuan','[翰林院-枢纽]\x20已成功连接各部政令畅通。','join','input[name=\x22hly-injection-position\x22]:checked','signal','kbId',',\x20失败:\x20','amily2_open_rag_palace','totalVectors','maxResults','className','kbScope','hly-batch-size','.hly-tab-pane','开始批量删除\x20','rerank','add','】移动到【','floor','send-date','hybrid_alpha','<div\x20class=\x22hly-preview-container-v2\x22>','contains','已选择\x20','top_n','text','style','未找到符合条件的消息可供凝识。','hly-kb-list-item','请先选择书库','\x20个局部知识库均已成功删除。','none','遵命,将从头开始录入此书。','key','所有\x20','1153226czXAuu','hly-layer-start','删除失败:\x20','343592dTcsCS','moveKnowledgeBase','resetSettings','display','翰林院设定已重置为初始状态。','根据当前勾选条件,未找到符合的消息可供预览。','log-warn','scrollHeight','\x20条忆识。','hly-rerank-enabled','fetchEmbeddingModels','checked'];_0x431c=function(){return _0x4d5b42;};return _0x431c();}_0x3b14fe(0x221);function setupGlobalEventHandlers(){const _0x28adc5=_0x3b14fe;window[_0x28adc5(0x23d)]=()=>saveSettingsFromUI(![]),window[_0x28adc5(0x2fd)]=resetSettingsToUI,window[_0x28adc5(0x158)]=testApi,window[_0x28adc5(0x1e3)]=fetchHLYEmbeddingModels,window[_0x28adc5(0x277)]=fetchHLYRerankModels,window['updateHLYMemoryCount']=updatePanelStatus,window[_0x28adc5(0x181)]=purgeStorage,window[_0x28adc5(0x239)]=startCondensation,window['previewHLYCondensation']=previewCondensation,window[_0x28adc5(0x218)]=ingestManualText,window[_0x28adc5(0x222)]=log,window[_0x28adc5(0x193)]=showStats,window[_0x28adc5(0x190)]=startHistoriography;}function updateAndSaveSetting(_0xe6f52c,_0x5e866c){const _0x51a33b=_0x3b14fe,_0x18f8b5=_0x1ad3be[_0x51a33b(0x266)]();if(!_0x18f8b5)return;const _0x59ddca=_0xe6f52c[_0x51a33b(0x2cb)]('.');let _0x3752e3=_0x18f8b5;for(let _0x669cf3=0x0;_0x669cf3<_0x59ddca['length']-0x1;_0x669cf3++){_0x3752e3=_0x3752e3[_0x59ddca[_0x669cf3]]=_0x3752e3[_0x59ddca[_0x669cf3]]||{};}_0x3752e3[_0x59ddca[_0x59ddca[_0x51a33b(0x199)]-0x1]]=_0x5e866c,_0x1ad3be[_0x51a33b(0x2c8)](),log(_0x51a33b(0x1e5)+_0xe6f52c+'\x27\x20已更新为:\x20'+JSON[_0x51a33b(0x271)](_0x5e866c),_0x51a33b(0x1e6));}function bindAutoSaveEvents(){const _0x454b29=_0x3b14fe,_0x550cf8=document[_0x454b29(0x1ff)]('hly-modal-container');if(!_0x550cf8)return;_0x550cf8[_0x454b29(0x2e1)](_0x454b29(0x279),_0x363fa9=>{const _0x19d465=_0x454b29,_0x4e6cb8=_0x363fa9[_0x19d465(0x26e)],_0x523e3e=_0x4e6cb8[_0x19d465(0x202)][_0x19d465(0x21a)];if(!_0x523e3e)return;let _0x4ec059;const _0x178a55=_0x4e6cb8[_0x19d465(0x202)][_0x19d465(0x26a)]||_0x19d465(0x185);if(_0x4e6cb8[_0x19d465(0x26a)]===_0x19d465(0x2d3))_0x4ec059=_0x4e6cb8[_0x19d465(0x1db)];else{if(_0x4e6cb8[_0x19d465(0x26a)]===_0x19d465(0x27d)){if(_0x4e6cb8[_0x19d465(0x1db)]){const _0x3e93e5=_0x550cf8[_0x19d465(0x1e0)]('input[name=\x22'+_0x4e6cb8[_0x19d465(0x21f)]+'\x22]'),_0x54c654=Array[_0x19d465(0x254)](_0x3e93e5)[_0x19d465(0x214)](_0x5b41ef=>_0x5b41ef[_0x19d465(0x1db)]);_0x4ec059=_0x54c654[_0x19d465(0x18e)];}else return;}else _0x4ec059=_0x4e6cb8[_0x19d465(0x18e)];}switch(_0x178a55){case'integer':_0x4ec059=parseInt(_0x4ec059,0xa);break;case _0x19d465(0x311):_0x4ec059=parseFloat(_0x4ec059);break;case _0x19d465(0x262):typeof _0x4ec059!=='boolean'&&(_0x4ec059=_0x4ec059===_0x19d465(0x171));break;}if(_0x4e6cb8[_0x19d465(0x26a)]===_0x19d465(0x27d)&&!_0x4e6cb8[_0x19d465(0x1db)])return;updateAndSaveSetting(_0x523e3e,_0x4ec059);});}export function bindHanlinyuanEvents(){const _0x309b78=_0x3b14fe,_0x54aede=getContext();if(!_0x54aede){console[_0x309b78(0x27a)](_0x309b78(0x1a0));return;}setupGlobalEventHandlers(),bindPanelToggleEvents(),bindInternalUIEvents(),bindTutorialEvents(),bindAutoSaveEvents(),bindSessionLockEvent();if(_0x1ad3be['initialize'])_0x1ad3be[_0x309b78(0x316)]();else{console['error']('[翰林院-枢纽]\x20核心法典未能提供初始化圣旨');return;}loadSettingsToUI(),loadWorldbookList(),log(_0x309b78(0x1ab),_0x309b78(0x2b3));const _0x284e2f=document[_0x309b78(0x1ff)](_0x309b78(0x233)),_0x2a8414=document[_0x309b78(0x1ff)](_0x309b78(0x1f8)),_0x4fb9e0=document['getElementById']('hanlinyuan-ingest-novel-start'),_0xcfa603=document[_0x309b78(0x1ff)](_0x309b78(0x2db)),_0x1a3d28=document[_0x309b78(0x1ff)]('hanlinyuan-ingest-progress-container'),_0x1f7172=document[_0x309b78(0x1ff)](_0x309b78(0x2ef)),_0xcb62eb=document[_0x309b78(0x1ff)]('hanlinyuan-ingest-status'),_0x3bdce=document[_0x309b78(0x1ff)](_0x309b78(0x225));let _0x590aad=null,_0x5a4f74=null;_0x284e2f[_0x309b78(0x2e1)](_0x309b78(0x279),_0x444294=>{const _0x5018bb=_0x309b78;_0x590aad=_0x444294[_0x5018bb(0x26e)][_0x5018bb(0x219)][0x0],_0x590aad?(_0x2a8414['textContent']=_0x590aad['name'],_0x2a8414[_0x5018bb(0x15b)]=_0x590aad[_0x5018bb(0x21f)]):_0x2a8414[_0x5018bb(0x305)]='未选择文件';}),_0x4fb9e0[_0x309b78(0x2e1)](_0x309b78(0x18a),async()=>{const _0x1f95d9=_0x309b78;if(!_0x590aad){toastr[_0x1f95d9(0x26b)](_0x1f95d9(0x1a1));return;}let _0x3d417c=0x0;const _0x33d624=_0x44ac4c['generateJobId'](_0x590aad),_0x1f7317=_0x44ac4c[_0x1f95d9(0x30c)](_0x33d624);if(_0x1f7317){const _0x32c4eb=(_0x1f7317[_0x1f95d9(0x2dc)]/_0x1f7317[_0x1f95d9(0x2ab)]*0x64)[_0x1f95d9(0x174)](0x1),_0x288e2f=confirm(_0x1f95d9(0x2fa)+_0x32c4eb+_0x1f95d9(0x207));_0x288e2f?(_0x3d417c=_0x1f7317[_0x1f95d9(0x2dc)],toastr[_0x1f95d9(0x2b3)]('遵命,将从第\x20'+(_0x3d417c+0x1)+_0x1f95d9(0x2f1),_0x1f95d9(0x258)),log(_0x1f95d9(0x1a8)+_0x33d624+_0x1f95d9(0x2f7)+_0x3d417c+_0x1f95d9(0x23c),_0x1f95d9(0x2b3))):(_0x44ac4c[_0x1f95d9(0x245)](_0x33d624),toastr[_0x1f95d9(0x2b3)](_0x1f95d9(0x1ca),_0x1f95d9(0x258)),log(_0x1f95d9(0x209)+_0x33d624+_0x1f95d9(0x304),_0x1f95d9(0x249)));}_0x5a4f74=new AbortController();const _0x27cfe0=_0x5a4f74[_0x1f95d9(0x1ae)];_0x3bdce[_0x1f95d9(0x1c4)][_0x1f95d9(0x1d3)]=_0x1f95d9(0x1c9),_0x1a3d28[_0x1f95d9(0x1c4)]['display']=_0x1f95d9(0x313),_0xcb62eb[_0x1f95d9(0x305)]=_0x1f95d9(0x307),_0x1f7172[_0x1f95d9(0x18e)]=0x0;try{const _0x1ba607=await _0x590aad[_0x1f95d9(0x1c3)](),_0x197cb6=_0x4a184a=>{const _0xb075b9=_0x1f95d9;_0xcb62eb[_0xb075b9(0x305)]='处理中:\x20'+_0x4a184a[_0xb075b9(0x1e7)]+'\x20('+_0x4a184a[_0xb075b9(0x1f9)]+'/'+_0x4a184a[_0xb075b9(0x18b)]+')',_0x1f7172[_0xb075b9(0x18e)]=_0x4a184a[_0xb075b9(0x1f9)]/_0x4a184a[_0xb075b9(0x18b)]*0x64;},_0x266e6d=()=>{const _0x3c521f=_0x1f95d9;updatePanelStatus(),log(_0x3c521f(0x2ee),_0x3c521f(0x2b3));},_0x564ca6=await _0x1ad3be[_0x1f95d9(0x1aa)](_0x1ba607,_0x1f95d9(0x16e),{'sourceName':_0x590aad[_0x1f95d9(0x21f)]},_0x197cb6,_0x27cfe0,log,_0x266e6d,_0x33d624,_0x3d417c);if(_0x564ca6[_0x1f95d9(0x1e6)])toastr[_0x1f95d9(0x1e6)]('成功录入\x20'+_0x564ca6[_0x1f95d9(0x24b)]+_0x1f95d9(0x2df)),_0xcb62eb[_0x1f95d9(0x305)]=_0x1f95d9(0x157)+_0x564ca6[_0x1f95d9(0x24b)]+'\x20个知识块。',_0x1f7172[_0x1f95d9(0x18e)]=0x64,updatePanelStatus();else throw new Error(_0x564ca6['error']||_0x1f95d9(0x178));}catch(_0x2b44eb){_0x2b44eb['name']==='AbortError'?(toastr[_0x1f95d9(0x2b3)](_0x1f95d9(0x1e1)),_0xcb62eb[_0x1f95d9(0x305)]='任务已中止。'):(toastr[_0x1f95d9(0x27a)]('录入失败:\x20'+_0x2b44eb[_0x1f95d9(0x1e7)]+_0x1f95d9(0x2b9)),_0xcb62eb['textContent']=_0x1f95d9(0x15e)+_0x2b44eb['message']);}finally{setTimeout(()=>{const _0x19389b=_0x1f95d9;_0x3bdce[_0x19389b(0x1c4)]['display']=_0x19389b(0x289),_0x1a3d28[_0x19389b(0x1c4)][_0x19389b(0x1d3)]='none',_0x284e2f[_0x19389b(0x18e)]='',_0x590aad=null,_0x2a8414[_0x19389b(0x305)]=_0x19389b(0x1fd);},0xbb8);}}),_0xcfa603['addEventListener'](_0x309b78(0x18a),()=>{const _0x5aba31=_0x309b78;_0x5a4f74&&_0x5a4f74[_0x5aba31(0x163)]();});}function bindSessionLockEvent(){const _0x4cef93=_0x3b14fe,_0x37e396=document[_0x4cef93(0x1ff)](_0x4cef93(0x154));if(!_0x37e396)return;_0x37e396[_0x4cef93(0x2e1)]('click',async()=>{const _0x76504=_0x4cef93,_0x91051b=await _0x1ad3be[_0x76504(0x226)]();updateSessionLockUI(_0x91051b);if(_0x91051b){const _0x2fdb1b=_0x1ad3be['getLockedSessionInfo']();_0x2fdb1b&&(toastr[_0x76504(0x1e6)](_0x76504(0x30b)+_0x2fdb1b['id'],'圣旨已下'),log(_0x76504(0x1dc)+_0x2fdb1b['id'],'success'));}else toastr[_0x76504(0x2b3)](_0x76504(0x21e),'诏曰'),log(_0x76504(0x2ea),'info');updatePanelStatus();}),updateSessionLockUI(_0x1ad3be['isSessionLocked']());}function updateSessionLockUI(_0x15a758){const _0x1e7d84=_0x3b14fe,_0x4f4095=document[_0x1e7d84(0x1ff)](_0x1e7d84(0x154));if(!_0x4f4095)return;const _0x487ab7=_0x4f4095[_0x1e7d84(0x179)]('i'),_0x24a9bd=_0x4f4095[_0x1e7d84(0x179)](_0x1e7d84(0x228));_0x15a758?(_0x4f4095['classList']['add'](_0x1e7d84(0x2f4)),_0x487ab7['className']=_0x1e7d84(0x160),_0x24a9bd['textContent']=_0x1e7d84(0x17c),_0x4f4095[_0x1e7d84(0x15b)]=_0x1e7d84(0x165)):(_0x4f4095[_0x1e7d84(0x28e)][_0x1e7d84(0x19a)]('active'),_0x487ab7['className']=_0x1e7d84(0x2ca),_0x24a9bd['textContent']=_0x1e7d84(0x25e),_0x4f4095[_0x1e7d84(0x15b)]=_0x1e7d84(0x27c));}function bindPanelToggleEvents(){const _0x35d0f9=_0x3b14fe,_0x2ec6b1=document[_0x35d0f9(0x1ff)](_0x35d0f9(0x1b1));if(_0x2ec6b1){}}function bindTutorialEvents(){const _0x453a4f=_0x3b14fe,_0x319476=document[_0x453a4f(0x1ff)](_0x453a4f(0x156));_0x319476&&_0x319476[_0x453a4f(0x2e1)]('click',()=>{const _0x4d6e5a=_0x453a4f;showContentModal(_0x4d6e5a(0x220),_0x4d6e5a(0x2c6));});}function bindInternalUIEvents(){const _0x350330=_0x3b14fe,_0x14dd44=document[_0x350330(0x1e0)](_0x350330(0x1a2));_0x14dd44['forEach'](_0x5a0da8=>{const _0x49315c=_0x350330;_0x5a0da8[_0x49315c(0x2e1)](_0x49315c(0x18a),()=>{const _0x5a26a8=_0x49315c,_0x1016b2=_0x5a0da8[_0x5a26a8(0x202)]['tab'],_0x150564='hly-'+_0x1016b2+'-tab';document[_0x5a26a8(0x1e0)](_0x5a26a8(0x1b7))[_0x5a26a8(0x237)](_0x2430af=>{const _0x52ce6e=_0x5a26a8;_0x2430af[_0x52ce6e(0x28e)][_0x52ce6e(0x2c1)]('active',_0x2430af['id']===_0x150564);}),_0x14dd44[_0x5a26a8(0x237)](_0x557b7e=>_0x557b7e[_0x5a26a8(0x28e)]['toggle']('active',_0x557b7e===_0x5a0da8));});});const _0x2b925e=document[_0x350330(0x1ff)](_0x350330(0x2cc));_0x2b925e&&_0x2b925e[_0x350330(0x2e1)]('change',handleApiModeChange);const _0x5b36d3=document[_0x350330(0x1e0)]('input[name=\x22hly-injection-position\x22]');_0x5b36d3[_0x350330(0x237)](_0x521a85=>{const _0x268042=_0x350330;_0x521a85[_0x268042(0x2e1)]('change',toggleInjectionDetails);});const _0x48cc12=document[_0x350330(0x1ff)](_0x350330(0x278)),_0x19e9cb=document[_0x350330(0x1ff)](_0x350330(0x204));_0x48cc12&&_0x19e9cb&&_0x48cc12[_0x350330(0x2e1)](_0x350330(0x279),()=>{const _0x204b97=_0x350330;_0x19e9cb[_0x204b97(0x1c4)][_0x204b97(0x1d3)]=_0x48cc12[_0x204b97(0x1db)]?'block':_0x204b97(0x1c9);});const _0x516631=document[_0x350330(0x1ff)](_0x350330(0x1ed));_0x516631&&_0x516631[_0x350330(0x2e1)](_0x350330(0x279),handleWorldbookSelectionChange);const _0x3ae873=document['getElementById'](_0x350330(0x240));_0x3ae873&&_0x3ae873[_0x350330(0x2e1)]('click',showExclusionRulesModal);const _0x117636=document[_0x350330(0x1ff)]('hly-hist-entry-multiselect-btn'),_0x2fb827=document[_0x350330(0x1ff)]('hly-hist-entry-multiselect-options');_0x117636&&_0x2fb827&&(_0x117636[_0x350330(0x2e1)]('click',_0x183e0b=>{const _0xf3fd72=_0x350330;_0x183e0b[_0xf3fd72(0x25a)]();const _0x2c1618=_0x2fb827[_0xf3fd72(0x1c4)][_0xf3fd72(0x1d3)]==='block';_0x2fb827[_0xf3fd72(0x1c4)][_0xf3fd72(0x1d3)]=_0x2c1618?_0xf3fd72(0x1c9):_0xf3fd72(0x313);}),_0x2fb827[_0x350330(0x2e1)]('change',_0x1d3d74=>{const _0x86adee=_0x350330,_0xf6f389=_0x1d3d74[_0x86adee(0x26e)];if(_0xf6f389[_0x86adee(0x26a)]!==_0x86adee(0x2d3))return;const _0x4b4b05=_0x2fb827[_0x86adee(0x1e0)]('.hly-hist-entry-checkbox'),_0x5e053f=document[_0x86adee(0x1ff)](_0x86adee(0x242));if(_0xf6f389['id']===_0x86adee(0x242))_0x4b4b05[_0x86adee(0x237)](_0x528136=>_0x528136[_0x86adee(0x1db)]=_0xf6f389[_0x86adee(0x1db)]);else{const _0x1d47a6=Array['from'](_0x4b4b05)[_0x86adee(0x2b5)](_0x399391=>_0x399391['checked']);_0x5e053f[_0x86adee(0x1db)]=_0x1d47a6;}const _0x39bcea=_0x2fb827[_0x86adee(0x1e0)](_0x86adee(0x15d))[_0x86adee(0x199)],_0x41941f=_0x4b4b05['length'];_0x117636[_0x86adee(0x179)]('span')[_0x86adee(0x305)]=_0x86adee(0x1c1)+_0x39bcea+_0x86adee(0x251)+_0x41941f+'\x20个条目';}),document[_0x350330(0x2e1)](_0x350330(0x18a),_0x432933=>{const _0x15e932=_0x350330;!_0x117636[_0x15e932(0x1c0)](_0x432933['target'])&&!_0x2fb827[_0x15e932(0x1c0)](_0x432933[_0x15e932(0x26e)])&&(_0x2fb827[_0x15e932(0x1c4)][_0x15e932(0x1d3)]=_0x15e932(0x1c9));}));const _0x38b92e=document[_0x350330(0x1ff)](_0x350330(0x2eb));_0x38b92e&&_0x38b92e[_0x350330(0x2e1)](_0x350330(0x18a),deleteAllLocalKnowledgeBases);const _0x11c36a=[_0x350330(0x229),_0x350330(0x300)];_0x11c36a[_0x350330(0x237)](_0x289b8d=>{const _0x5c6b4b=_0x350330,_0x554865=document[_0x5c6b4b(0x1ff)](_0x289b8d);_0x554865&&(_0x554865['addEventListener'](_0x5c6b4b(0x18a),handleKbAction),_0x554865[_0x5c6b4b(0x2e1)](_0x5c6b4b(0x279),handleKbAction));});}function toggleInjectionDetails(){const _0x55a6ea=_0x3b14fe,_0x2fc208=document[_0x55a6ea(0x179)](_0x55a6ea(0x1ad))['value'],_0x428916=document[_0x55a6ea(0x1ff)](_0x55a6ea(0x293)),_0xa4acf1=document[_0x55a6ea(0x1ff)](_0x55a6ea(0x15c)),_0x5bc7ec=_0x2fc208==='1';_0x428916[_0x55a6ea(0x208)]=!_0x5bc7ec,_0xa4acf1['disabled']=!_0x5bc7ec;}function handleApiModeChange(){const _0x30012b=_0x3b14fe,_0x1e94dc=document[_0x30012b(0x1ff)](_0x30012b(0x2cc))['value'],_0x915d98=document[_0x30012b(0x1ff)](_0x30012b(0x19b)),_0x3a9339=document[_0x30012b(0x1ff)](_0x30012b(0x1e9)),_0x36a68e=document[_0x30012b(0x1ff)](_0x30012b(0x2e8)),_0xe34285=_0x36a68e[_0x30012b(0x2bd)];if(!_0x915d98||!_0x3a9339)return;_0x915d98[_0x30012b(0x1c4)]['display']=_0x30012b(0x313),_0x3a9339[_0x30012b(0x1c4)][_0x30012b(0x1d3)]=_0x30012b(0x313);switch(_0x1e94dc){case _0x30012b(0x1eb):_0x915d98[_0x30012b(0x1c4)][_0x30012b(0x1d3)]=_0x30012b(0x1c9),_0x3a9339[_0x30012b(0x179)](_0x30012b(0x2d8))[_0x30012b(0x305)]='Google\x20API\x20Key:',_0x3a9339['querySelector']('input')[_0x30012b(0x1dd)]='请输入您的Google\x20API\x20Key';break;case'local_proxy':_0x915d98[_0x30012b(0x179)](_0x30012b(0x2d8))[_0x30012b(0x305)]=_0x30012b(0x23f),_0x915d98[_0x30012b(0x179)](_0x30012b(0x187))[_0x30012b(0x1dd)]=_0x30012b(0x153),_0x3a9339[_0x30012b(0x1c4)][_0x30012b(0x1d3)]=_0x30012b(0x1c9);break;case _0x30012b(0x188):default:_0x915d98[_0x30012b(0x179)](_0x30012b(0x2d8))[_0x30012b(0x305)]='自定义路径:',_0x915d98[_0x30012b(0x179)](_0x30012b(0x187))[_0x30012b(0x1dd)]=_0x30012b(0x16d),_0x3a9339['querySelector'](_0x30012b(0x2d8))['textContent']=_0x30012b(0x18c);break;}}function loadSettingsToUI(){const _0x5401fa=_0x3b14fe,_0x4c92f7=_0x1ad3be[_0x5401fa(0x266)]();if(!_0x4c92f7)return;document[_0x5401fa(0x1ff)](_0x5401fa(0x216))['checked']=_0x4c92f7['retrieval'][_0x5401fa(0x183)],document[_0x5401fa(0x1ff)](_0x5401fa(0x2cc))['value']=_0x4c92f7[_0x5401fa(0x21b)][_0x5401fa(0x296)],document[_0x5401fa(0x1ff)](_0x5401fa(0x269))['value']=_0x4c92f7[_0x5401fa(0x21b)][_0x5401fa(0x261)],document['getElementById'](_0x5401fa(0x1a3))[_0x5401fa(0x18e)]=_0x4c92f7[_0x5401fa(0x21b)]['apiKey'];const _0x412d75=document['getElementById'](_0x5401fa(0x2e8));if(_0x412d75[_0x5401fa(0x309)]['length']===0x0){const _0x5c5648=_0x4c92f7[_0x5401fa(0x21b)][_0x5401fa(0x210)],_0x175696=new Option(_0x5c5648,_0x5c5648,!![],!![]);_0x412d75[_0x5401fa(0x1ba)](_0x175696);}_0x412d75[_0x5401fa(0x18e)]=_0x4c92f7[_0x5401fa(0x21b)][_0x5401fa(0x210)],document[_0x5401fa(0x1ff)](_0x5401fa(0x150))['checked']=_0x4c92f7[_0x5401fa(0x21b)]['notify'],document[_0x5401fa(0x1ff)](_0x5401fa(0x22f))[_0x5401fa(0x18e)]=_0x4c92f7[_0x5401fa(0x1fc)][_0x5401fa(0x1f7)],document[_0x5401fa(0x1ff)](_0x5401fa(0x2cf))[_0x5401fa(0x18e)]=_0x4c92f7['advanced'][_0x5401fa(0x291)],document[_0x5401fa(0x1ff)](_0x5401fa(0x2c4))[_0x5401fa(0x18e)]=_0x4c92f7[_0x5401fa(0x1fc)][_0x5401fa(0x20f)],document[_0x5401fa(0x1ff)](_0x5401fa(0x272))[_0x5401fa(0x18e)]=_0x4c92f7[_0x5401fa(0x1fc)]['queryMessageCount'],document[_0x5401fa(0x1ff)](_0x5401fa(0x25c))[_0x5401fa(0x18e)]=_0x4c92f7[_0x5401fa(0x1fc)][_0x5401fa(0x1b3)],document[_0x5401fa(0x1ff)](_0x5401fa(0x1b6))[_0x5401fa(0x18e)]=_0x4c92f7['retrieval'][_0x5401fa(0x151)],document[_0x5401fa(0x1ff)]('hly-injection-template')['value']=_0x4c92f7[_0x5401fa(0x17e)]['template'];const _0x246447=document[_0x5401fa(0x179)](_0x5401fa(0x2a1)+_0x4c92f7['injection'][_0x5401fa(0x2d5)]+'\x22]');_0x246447&&(_0x246447[_0x5401fa(0x1db)]=!![]);document['getElementById'](_0x5401fa(0x293))[_0x5401fa(0x18e)]=_0x4c92f7[_0x5401fa(0x17e)]['depth'],document[_0x5401fa(0x1ff)](_0x5401fa(0x15c))['value']=_0x4c92f7[_0x5401fa(0x17e)]['depth_role'],toggleInjectionDetails(),handleApiModeChange(),document[_0x5401fa(0x1ff)](_0x5401fa(0x194))[_0x5401fa(0x1db)]=_0x4c92f7[_0x5401fa(0x235)][_0x5401fa(0x183)],document[_0x5401fa(0x1ff)]('hly-layer-start')['value']=_0x4c92f7['condensation'][_0x5401fa(0x22a)],document['getElementById'](_0x5401fa(0x29b))[_0x5401fa(0x18e)]=_0x4c92f7[_0x5401fa(0x235)][_0x5401fa(0x29d)],document[_0x5401fa(0x1ff)](_0x5401fa(0x299))['checked']=_0x4c92f7[_0x5401fa(0x235)][_0x5401fa(0x27e)][_0x5401fa(0x23a)],document[_0x5401fa(0x1ff)](_0x5401fa(0x2f0))[_0x5401fa(0x1db)]=_0x4c92f7['condensation'][_0x5401fa(0x27e)]['ai'];const _0x4085bb=document[_0x5401fa(0x1ff)](_0x5401fa(0x278)),_0x2f885b=document[_0x5401fa(0x1ff)](_0x5401fa(0x2b7)),_0x3cbfe4=document['getElementById']('hly-tag-input-container');_0x4085bb['checked']=_0x4c92f7['condensation']['tagExtractionEnabled'],_0x2f885b[_0x5401fa(0x18e)]=_0x4c92f7[_0x5401fa(0x235)][_0x5401fa(0x2a0)],_0x3cbfe4[_0x5401fa(0x1c4)][_0x5401fa(0x1d3)]=_0x4085bb['checked']?_0x5401fa(0x313):_0x5401fa(0x1c9),document[_0x5401fa(0x1ff)](_0x5401fa(0x1d9))[_0x5401fa(0x1db)]=_0x4c92f7[_0x5401fa(0x1b9)][_0x5401fa(0x183)],document['getElementById']('hly-rerank-url')[_0x5401fa(0x18e)]=_0x4c92f7[_0x5401fa(0x1b9)][_0x5401fa(0x2c9)],document[_0x5401fa(0x1ff)]('hly-rerank-api-key')[_0x5401fa(0x18e)]=_0x4c92f7['rerank'][_0x5401fa(0x243)];const _0x1f8341=document['getElementById'](_0x5401fa(0x264));if(_0x1f8341[_0x5401fa(0x309)]['length']===0x0){const _0x1b857e=_0x4c92f7['rerank'][_0x5401fa(0x2e4)];if(_0x1b857e){const _0x259e35=new Option(_0x1b857e,_0x1b857e,!![],!![]);_0x1f8341[_0x5401fa(0x1ba)](_0x259e35);}}_0x1f8341[_0x5401fa(0x18e)]=_0x4c92f7[_0x5401fa(0x1b9)][_0x5401fa(0x2e4)],document['getElementById'](_0x5401fa(0x24f))['value']=_0x4c92f7[_0x5401fa(0x1b9)][_0x5401fa(0x1c2)],document['getElementById'](_0x5401fa(0x2fb))[_0x5401fa(0x18e)]=_0x4c92f7[_0x5401fa(0x1b9)][_0x5401fa(0x1be)],document[_0x5401fa(0x1ff)](_0x5401fa(0x231))[_0x5401fa(0x1db)]=_0x4c92f7['rerank'][_0x5401fa(0x19c)];}function saveSettingsFromUI(_0x2af453=!![]){const _0x21e2ed=_0x3b14fe,_0x287d79=document[_0x21e2ed(0x1ff)](_0x21e2ed(0x2b4));if(!_0x287d79)return;const _0x2866ca=_0x287d79[_0x21e2ed(0x1e0)](_0x21e2ed(0x2bb));_0x2866ca[_0x21e2ed(0x237)](_0x29f0f4=>{const _0xbc382b=_0x21e2ed,_0x5b5f42=_0x29f0f4['dataset'][_0xbc382b(0x21a)];if(!_0x5b5f42)return;let _0x4c44d9;const _0xcbe5e7=_0x29f0f4[_0xbc382b(0x202)][_0xbc382b(0x26a)]||_0xbc382b(0x185);if(_0x29f0f4['type']===_0xbc382b(0x2d3))_0x4c44d9=_0x29f0f4[_0xbc382b(0x1db)];else{if(_0x29f0f4['type']===_0xbc382b(0x27d)){if(!_0x29f0f4[_0xbc382b(0x1db)])return;_0x4c44d9=_0x29f0f4[_0xbc382b(0x18e)];}else _0x4c44d9=_0x29f0f4[_0xbc382b(0x18e)];}switch(_0xcbe5e7){case _0xbc382b(0x247):_0x4c44d9=parseInt(_0x4c44d9,0xa);break;case _0xbc382b(0x311):_0x4c44d9=parseFloat(_0x4c44d9);break;case _0xbc382b(0x262):if(typeof _0x4c44d9!==_0xbc382b(0x262))_0x4c44d9=_0x4c44d9===_0xbc382b(0x171);break;}const _0x419bdd=_0x1ad3be[_0xbc382b(0x266)](),_0x5000d9=_0x5b5f42['split']('.');let _0x2d685a=_0x419bdd;for(let _0x4e4879=0x0;_0x4e4879<_0x5000d9[_0xbc382b(0x199)]-0x1;_0x4e4879++){_0x2d685a=_0x2d685a[_0x5000d9[_0x4e4879]]=_0x2d685a[_0x5000d9[_0x4e4879]]||{};}_0x2d685a[_0x5000d9[_0x5000d9[_0xbc382b(0x199)]-0x1]]=_0x4c44d9;}),_0x1ad3be[_0x21e2ed(0x2c8)](),!_0x2af453&&(log(_0x21e2ed(0x29e),_0x21e2ed(0x1e6)),toastr[_0x21e2ed(0x1e6)](_0x21e2ed(0x25d),'圣旨已达'));}function resetSettingsToUI(){const _0x49b19d=_0x3b14fe;confirm(_0x49b19d(0x16c))&&(_0x1ad3be[_0x49b19d(0x1d2)](),loadSettingsToUI(),toastr['info'](_0x49b19d(0x1d4),'诏曰'));}async function updatePanelStatus(){const _0x710da5=_0x3b14fe,_0x3549a0=_0x1ad3be[_0x710da5(0x303)](),_0x1cab34=document[_0x710da5(0x1ff)](_0x710da5(0x268)),_0x41e629=document[_0x710da5(0x1ff)]('hly-current-chat-id');if(_0x3549a0){const _0x3ec504=_0x1ad3be['getLockedSessionInfo']();_0x3ec504&&(_0x1cab34[_0x710da5(0x305)]=_0x710da5(0x263),_0x41e629[_0x710da5(0x305)]=_0x3ec504['id'],_0x41e629['title']=_0x710da5(0x1f5)+_0x3ec504['id'],_0x1cab34[_0x710da5(0x28e)][_0x710da5(0x1ba)](_0x710da5(0x246)),_0x41e629[_0x710da5(0x28e)][_0x710da5(0x1ba)](_0x710da5(0x246)));}else _0x1cab34[_0x710da5(0x305)]=_0x5ab784['getCharacterName'](),_0x41e629['textContent']=_0x5ab784[_0x710da5(0x28c)]()||'无',_0x41e629['title']='',_0x1cab34['classList'][_0x710da5(0x19a)](_0x710da5(0x246)),_0x41e629[_0x710da5(0x28e)]['remove']('hly-locked-status');const _0x352d96=document['getElementById'](_0x710da5(0x2d6));_0x352d96[_0x710da5(0x305)]=_0x710da5(0x2fe);try{const _0x57a9fa=await _0x1ad3be['getVectorCount']();_0x352d96[_0x710da5(0x305)]=_0x57a9fa;}catch(_0x10261e){console['error'](_0x710da5(0x302),_0x10261e),_0x352d96[_0x710da5(0x305)]=_0x710da5(0x192),_0x352d96[_0x710da5(0x15b)]='无法获取总数:\x20'+_0x10261e[_0x710da5(0x1e7)];}const _0x45e49c=document[_0x710da5(0x1ff)]('hly-condensation-results');if(_0x45e49c&&!_0x45e49c['dataset']['finalText']){const _0x6a7112=_0x1ad3be[_0x710da5(0x266)](),_0x33c9e5=await _0x1ad3be[_0x710da5(0x21c)]();if(_0x6a7112[_0x710da5(0x2b2)]&&_0x6a7112['condensationHistory'][_0x33c9e5]){const _0x3722a6=_0x6a7112['condensationHistory'][_0x33c9e5];_0x45e49c[_0x710da5(0x186)]='<p\x20class=\x22hly-record-hint\x22><i>上次已从第\x20'+_0x3722a6[_0x710da5(0x23b)]+_0x710da5(0x1a5)+_0x3722a6[_0x710da5(0x1a4)]+'\x20楼。</i></p>';}else _0x45e49c['innerHTML']=_0x710da5(0x2f2);}renderKnowledgeBases();}async function deleteAllLocalKnowledgeBases(){const _0x4e96e5=_0x3b14fe,_0x3446ad=_0x1ad3be['getLocalKnowledgeBases'](),_0x2ddf4f=Object[_0x4e96e5(0x288)](_0x3446ad);if(_0x2ddf4f['length']===0x0){toastr[_0x4e96e5(0x2b3)](_0x4e96e5(0x1df),'圣谕');return;}if(!confirm(_0x4e96e5(0x252)+_0x2ddf4f[_0x4e96e5(0x199)]+_0x4e96e5(0x213)))return;toastr[_0x4e96e5(0x2b3)]('正在删除\x20'+_0x2ddf4f[_0x4e96e5(0x199)]+'\x20个局部知识库...','圣旨'),log(_0x4e96e5(0x1b8)+_0x2ddf4f[_0x4e96e5(0x199)]+'\x20个局部知识库...',_0x4e96e5(0x249));let _0x10f7e8=0x0,_0x2a4cba=0x0;for(const _0x45e620 of _0x2ddf4f){try{await _0x1ad3be[_0x4e96e5(0x2d4)](_0x45e620,_0x4e96e5(0x159)),_0x10f7e8++;}catch(_0x15e1ea){_0x2a4cba++,log('删除局部知识库\x20'+_0x45e620+_0x4e96e5(0x196)+_0x15e1ea[_0x4e96e5(0x1e7)],_0x4e96e5(0x27a));}}_0x2a4cba>0x0?toastr[_0x4e96e5(0x27a)](_0x4e96e5(0x15a)+_0x2a4cba+'\x20个知识库删除失败。','警报'):toastr['success'](_0x4e96e5(0x1cc)+_0x10f7e8+_0x4e96e5(0x1c8),_0x4e96e5(0x230)),log(_0x4e96e5(0x212)+_0x10f7e8+_0x4e96e5(0x1b0)+_0x2a4cba,'info'),await updatePanelStatus();}async function renderKnowledgeBases(){const _0x482a35=_0x3b14fe,_0x4c8cd5=document[_0x482a35(0x1ff)](_0x482a35(0x229)),_0x4b4e05=document[_0x482a35(0x1ff)](_0x482a35(0x300)),_0xc957cc=document[_0x482a35(0x1ff)](_0x482a35(0x166));if(!_0x4c8cd5||!_0x4b4e05||!_0xc957cc)return;_0xc957cc[_0x482a35(0x305)]=_0x5ab784[_0x482a35(0x1ea)]()||_0x482a35(0x29f);try{const _0x307457=_0x1ad3be[_0x482a35(0x294)](),_0x198bef=_0x1ad3be[_0x482a35(0x292)]();await _renderKbList(_0x307457,_0x4c8cd5,_0x482a35(0x159),_0x482a35(0x2a2)),await _renderKbList(_0x198bef,_0x4b4e05,'global','hly-kb-list-global-placeholder');}catch(_0x1c829e){console['error']('[翰林院-枢纽]\x20渲染知识库列表失败:',_0x1c829e),_0x4c8cd5['innerHTML']='<p\x20class=\x22hly-notes\x20log-error\x22><i>加载失败:\x20'+_0x1c829e['message']+_0x482a35(0x234),_0x4b4e05[_0x482a35(0x186)]=_0x482a35(0x265)+_0x1c829e['message']+_0x482a35(0x234);}}async function _renderKbList(_0x15f2a8,_0xad0603,_0x2ebc80,_0x31b01c){const _0x45f2a6=_0x3b14fe,_0x51572a=document[_0x45f2a6(0x1ff)](_0x31b01c);_0xad0603[_0x45f2a6(0x186)]='',_0xad0603[_0x45f2a6(0x1a7)](_0x51572a);if(Object[_0x45f2a6(0x288)](_0x15f2a8)[_0x45f2a6(0x199)]===0x0){_0x51572a[_0x45f2a6(0x1c4)]['display']=_0x45f2a6(0x313);return;}_0x51572a['style']['display']=_0x45f2a6(0x1c9);for(const [_0x2c90bb,_0x566b35]of Object[_0x45f2a6(0x257)](_0x15f2a8)){const _0x3d9579=document[_0x45f2a6(0x1f3)](_0x45f2a6(0x308));_0x3d9579[_0x45f2a6(0x1b4)]=_0x45f2a6(0x1c6),_0x3d9579[_0x45f2a6(0x202)][_0x45f2a6(0x1af)]=_0x2c90bb,_0x3d9579[_0x45f2a6(0x202)][_0x45f2a6(0x1b5)]=_0x2ebc80;const _0x374bc5=await _0x1ad3be['getVectorCount'](_0x2c90bb,_0x2ebc80),_0xd46bf6=_0x2ebc80===_0x45f2a6(0x159)?_0x45f2a6(0x29a):'<button\x20class=\x22hly-kb-move-btn\x22\x20title=\x22下移到局部\x22><i\x20class=\x22fas\x20fa-arrow-down\x22></i></button>';_0x3d9579[_0x45f2a6(0x186)]='\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22hly-kb-name\x22\x20title=\x22ID:\x20'+_0x2c90bb+'\x22>'+_0x566b35['name']+'\x20('+_0x374bc5+_0x45f2a6(0x198)+_0xd46bf6+_0x45f2a6(0x23e)+(_0x566b35[_0x45f2a6(0x183)]?_0x45f2a6(0x1db):'')+'>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22hly-toggle-slider\x22></span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</label>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20class=\x22hly-kb-delete-btn\x22\x20title=\x22删除此知识库\x22>&times;</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20',_0xad0603['appendChild'](_0x3d9579);}}async function handleKbAction(_0x39e509){const _0x1d75c1=_0x3b14fe,_0x275c0b=_0x39e509[_0x1d75c1(0x26e)],_0x12e514=_0x275c0b[_0x1d75c1(0x26d)]('.hly-kb-list-item');if(!_0x12e514)return;const _0x2e8d6a=_0x12e514[_0x1d75c1(0x202)]['kbId'],_0xd69a37=_0x12e514[_0x1d75c1(0x202)][_0x1d75c1(0x1b5)],_0xc6411f=_0x12e514[_0x1d75c1(0x179)](_0x1d75c1(0x155))[_0x1d75c1(0x305)][_0x1d75c1(0x2cb)]('\x20(')[0x0];if(_0x275c0b[_0x1d75c1(0x28e)][_0x1d75c1(0x1c0)](_0x1d75c1(0x2e0))){if(confirm(_0x1d75c1(0x182)+_0xc6411f+'】吗?此操作无法恢复!'))try{await _0x1ad3be[_0x1d75c1(0x2d4)](_0x2e8d6a,_0xd69a37),log(_0x1d75c1(0x162)+_0xc6411f+_0x1d75c1(0x2a4)+_0x2e8d6a+_0x1d75c1(0x201),_0x1d75c1(0x1e6)),toastr[_0x1d75c1(0x1e6)]('知识库【'+_0xc6411f+'】已删除。'),await updatePanelStatus();}catch(_0x519c87){log('删除知识库\x20'+_0xc6411f+_0x1d75c1(0x196)+_0x519c87['message'],'error'),toastr['error'](_0x1d75c1(0x1cf)+_0x519c87[_0x1d75c1(0x1e7)]);}}if(_0x275c0b[_0x1d75c1(0x26d)](_0x1d75c1(0x22d))){const _0x585e12=_0xd69a37==='local'?'全局':'局部';if(confirm(_0x1d75c1(0x30a)+_0xc6411f+_0x1d75c1(0x1bb)+_0x585e12+'】吗?'))try{await _0x1ad3be[_0x1d75c1(0x1d1)](_0x2e8d6a,_0xd69a37),await updatePanelStatus();}catch(_0x35fcf5){log('移动知识库\x20'+_0xc6411f+_0x1d75c1(0x196)+_0x35fcf5['message'],_0x1d75c1(0x27a)),toastr['error'](_0x1d75c1(0x20c)+_0x35fcf5['message']);}}if(_0x275c0b[_0x1d75c1(0x28e)]['contains'](_0x1d75c1(0x2ad))&&_0x39e509[_0x1d75c1(0x26a)]==='change')try{await _0x1ad3be['toggleKnowledgeBase'](_0x2e8d6a,_0xd69a37),log(_0x1d75c1(0x162)+_0xc6411f+_0x1d75c1(0x20b),_0x1d75c1(0x1e6)),await updatePanelStatus();}catch(_0x51c8b7){log(_0x1d75c1(0x16f)+_0xc6411f+_0x1d75c1(0x22c)+_0x51c8b7[_0x1d75c1(0x1e7)],_0x1d75c1(0x27a)),toastr[_0x1d75c1(0x27a)](_0x1d75c1(0x298)+_0x51c8b7[_0x1d75c1(0x1e7)]);}}async function testApi(){const _0x1c06e6=_0x3b14fe;toastr['info'](_0x1c06e6(0x1f2),'圣旨');try{await _0x1ad3be[_0x1c06e6(0x30e)](),toastr[_0x1c06e6(0x1e6)](_0x1c06e6(0x241),'圣意');}catch(_0x49689b){toastr[_0x1c06e6(0x27a)](_0x1c06e6(0x191)+_0x49689b[_0x1c06e6(0x1e7)],'警报');}}async function fetchHLYEmbeddingModels(){const _0x33196e=_0x3b14fe,_0x2148de=document[_0x33196e(0x1ff)]('hly-embedding-model'),_0x5ed827=_0x2148de[_0x33196e(0x18e)];_0x2148de[_0x33196e(0x186)]=_0x33196e(0x27b),_0x2148de[_0x33196e(0x208)]=!![];try{log(_0x33196e(0x2d7),_0x33196e(0x2b3));const _0x251ae9=await _0x1ad3be[_0x33196e(0x1da)]();_0x2148de['innerHTML']='';if(_0x251ae9[_0x33196e(0x199)]===0x0){_0x2148de[_0x33196e(0x186)]='<option>未找到模型</option>',toastr[_0x33196e(0x249)]('未能获取到任何模型。',_0x33196e(0x2e3)),log(_0x33196e(0x286),'warn');return;}_0x251ae9[_0x33196e(0x237)](_0xd954a4=>{const _0x3b2e0d=_0x33196e,_0x34d610=new Option(_0xd954a4,_0xd954a4);_0x2148de[_0x3b2e0d(0x1ba)](_0x34d610);}),_0x251ae9[_0x33196e(0x2a9)](_0x5ed827)?_0x2148de[_0x33196e(0x18e)]=_0x5ed827:_0x2148de[_0x33196e(0x248)]=0x0,toastr[_0x33196e(0x1e6)](_0x33196e(0x253)+_0x251ae9[_0x33196e(0x199)]+_0x33196e(0x260),'圣意'),log(_0x33196e(0x253)+_0x251ae9[_0x33196e(0x199)]+'\x20个模型。','success');}catch(_0xdf94a4){console[_0x33196e(0x27a)](_0x33196e(0x255),_0xdf94a4),toastr[_0x33196e(0x27a)](_0x33196e(0x223)+_0xdf94a4['message'],_0x33196e(0x19f)),log(_0x33196e(0x223)+_0xdf94a4['message'],_0x33196e(0x27a)),_0x2148de[_0x33196e(0x186)]=_0x33196e(0x2ae);}finally{_0x2148de[_0x33196e(0x208)]=![];}}async function fetchHLYRerankModels(){const _0x3e7000=_0x3b14fe,_0x592ace=document[_0x3e7000(0x1ff)](_0x3e7000(0x264)),_0x3c8998=_0x592ace[_0x3e7000(0x18e)];_0x592ace['innerHTML']=_0x3e7000(0x27b),_0x592ace[_0x3e7000(0x208)]=!![];try{log(_0x3e7000(0x25f),_0x3e7000(0x2b3));const _0x58603a=await _0x1ad3be[_0x3e7000(0x29c)]();_0x592ace[_0x3e7000(0x186)]='';if(_0x58603a[_0x3e7000(0x199)]===0x0){_0x592ace[_0x3e7000(0x186)]=_0x3e7000(0x28b),toastr['warn']('未能获取到任何Rerank模型。',_0x3e7000(0x2e3)),log(_0x3e7000(0x310),_0x3e7000(0x249));return;}_0x58603a[_0x3e7000(0x237)](_0x11f1dd=>{const _0x3a5220=new Option(_0x11f1dd,_0x11f1dd);_0x592ace['add'](_0x3a5220);}),_0x58603a[_0x3e7000(0x2a9)](_0x3c8998)?_0x592ace[_0x3e7000(0x18e)]=_0x3c8998:_0x592ace['selectedIndex']=0x0,toastr[_0x3e7000(0x1e6)](_0x3e7000(0x253)+_0x58603a[_0x3e7000(0x199)]+_0x3e7000(0x2ac),'圣意'),log('成功获取\x20'+_0x58603a['length']+_0x3e7000(0x2ac),_0x3e7000(0x1e6));}catch(_0x5211bb){console[_0x3e7000(0x27a)](_0x3e7000(0x27f),_0x5211bb),toastr[_0x3e7000(0x27a)](_0x3e7000(0x284)+_0x5211bb[_0x3e7000(0x1e7)],_0x3e7000(0x19f)),log(_0x3e7000(0x284)+_0x5211bb[_0x3e7000(0x1e7)],_0x3e7000(0x27a)),_0x592ace['innerHTML']=_0x3e7000(0x2ae);}finally{_0x592ace[_0x3e7000(0x208)]=![];}}async function purgeStorage(){const _0x270674=_0x3b14fe;if(confirm(_0x270674(0x2af))){toastr['info']('正在清空宝库...','圣旨');const _0x525a13=await _0x1ad3be[_0x270674(0x2e9)]();_0x525a13?toastr[_0x270674(0x1e6)]('宝库已清空。','圣意'):toastr['error'](_0x270674(0x297),'警报'),await updatePanelStatus();}}async function startCondensation(){const _0x3ef21d=_0x3b14fe,_0x90a155=document[_0x3ef21d(0x1ff)](_0x3ef21d(0x1f6)),_0x4341d3=_0x90a155[_0x3ef21d(0x202)][_0x3ef21d(0x2a3)],_0x38395b=document[_0x3ef21d(0x1ff)](_0x3ef21d(0x1ce))[_0x3ef21d(0x18e)],_0x56966d=document[_0x3ef21d(0x1ff)](_0x3ef21d(0x29b))[_0x3ef21d(0x18e)],_0x1b37f0={'start':parseInt(_0x38395b),'end':parseInt(_0x56966d)};try{let _0x143ab4;_0x4341d3?(log(_0x3ef21d(0x2b0),_0x3ef21d(0x2b3)),toastr['info'](_0x3ef21d(0x17f),'圣旨'),_0x143ab4=JSON[_0x3ef21d(0x2a5)](_0x4341d3),delete _0x90a155[_0x3ef21d(0x202)][_0x3ef21d(0x2a3)]):(log('未检测到预览文本,按标准流程采集消息...',_0x3ef21d(0x2b3)),toastr[_0x3ef21d(0x2b3)](_0x3ef21d(0x26c),'圣旨'),_0x143ab4=_0x1ad3be[_0x3ef21d(0x232)]());if(!_0x143ab4||_0x143ab4['length']===0x0){toastr[_0x3ef21d(0x26b)](_0x3ef21d(0x1c5),_0x3ef21d(0x2e3)),_0x90a155[_0x3ef21d(0x305)]='未找到符合条件的消息。';return;}_0x90a155[_0x3ef21d(0x305)]=_0x3ef21d(0x30f)+_0x143ab4[_0x3ef21d(0x199)]+_0x3ef21d(0x281),toastr[_0x3ef21d(0x2b3)]('已采集\x20'+_0x143ab4[_0x3ef21d(0x199)]+_0x3ef21d(0x281),'翰林院启奏');const _0x4081a3=await _0x1ad3be[_0x3ef21d(0x24e)](_0x143ab4,log,_0x1b37f0);if(_0x4081a3[_0x3ef21d(0x1e6)]){toastr[_0x3ef21d(0x1e6)](_0x3ef21d(0x2ec)+_0x4081a3[_0x3ef21d(0x24b)]+_0x3ef21d(0x1d8),_0x3ef21d(0x230));const _0x57155d=_0x1b37f0[_0x3ef21d(0x1a4)]===0x0?getContext()[_0x3ef21d(0x2aa)]['length']:_0x1b37f0[_0x3ef21d(0x1a4)];_0x90a155[_0x3ef21d(0x305)]=_0x3ef21d(0x2bf)+_0x1b37f0[_0x3ef21d(0x23b)]+_0x3ef21d(0x250)+_0x57155d+_0x3ef21d(0x2be)+_0x4081a3[_0x3ef21d(0x24b)]+_0x3ef21d(0x1d8);}else throw new Error(_0x4081a3['error']||_0x3ef21d(0x178));}catch(_0x5e3327){console['error'](_0x3ef21d(0x170),_0x5e3327),toastr['error']('凝识失败:\x20'+_0x5e3327[_0x3ef21d(0x1e7)],'严重错误'),_0x90a155[_0x3ef21d(0x305)]='凝识失败:\x20'+_0x5e3327[_0x3ef21d(0x1e7)];}finally{await updatePanelStatus();}}async function loadWorldbookList(){const _0x2cc09a=_0x3b14fe,_0x52835e=document[_0x2cc09a(0x1ff)](_0x2cc09a(0x1ed));if(!_0x52835e)return;try{log(_0x2cc09a(0x224),_0x2cc09a(0x2b3));const _0x25edb4=await _0x481173[_0x2cc09a(0x256)]();_0x52835e['innerHTML']=_0x2cc09a(0x25b);if(_0x25edb4['length']===0x0){_0x52835e[_0x2cc09a(0x186)]=_0x2cc09a(0x15f);return;}_0x25edb4[_0x2cc09a(0x237)](_0x150175=>{const _0x233d5d=_0x2cc09a,_0x328fa1=new Option(_0x150175,_0x150175);_0x52835e[_0x233d5d(0x1ba)](_0x328fa1);}),log(_0x2cc09a(0x2e6)+_0x25edb4[_0x2cc09a(0x199)]+_0x2cc09a(0x177),_0x2cc09a(0x1e6));}catch(_0x4ec5ea){console[_0x2cc09a(0x27a)](_0x2cc09a(0x2a6),_0x4ec5ea),log(_0x2cc09a(0x2ed)+_0x4ec5ea['message'],_0x2cc09a(0x27a)),_0x52835e[_0x2cc09a(0x186)]=_0x2cc09a(0x285);}}async function handleWorldbookSelectionChange(){const _0x31dabb=_0x3b14fe,_0x40b64a=document[_0x31dabb(0x1ff)](_0x31dabb(0x1ed)),_0x2e2e2f=document[_0x31dabb(0x1ff)](_0x31dabb(0x17b)),_0x55a12f=document[_0x31dabb(0x1ff)](_0x31dabb(0x16b)),_0x222789=_0x40b64a[_0x31dabb(0x18e)];_0x2e2e2f[_0x31dabb(0x208)]=!![],_0x2e2e2f[_0x31dabb(0x179)]('span')[_0x31dabb(0x305)]='正在加载条目...',_0x55a12f[_0x31dabb(0x186)]='',_0x55a12f[_0x31dabb(0x1c4)]['display']='none';if(!_0x222789){_0x2e2e2f['querySelector']('span')[_0x31dabb(0x305)]=_0x31dabb(0x1c7);return;}try{log(_0x31dabb(0x1fb)+_0x222789+'》获取条目列表...',_0x31dabb(0x2b3));const _0x382655=await _0x481173[_0x31dabb(0x2fc)](_0x222789);if(_0x382655['length']===0x0){_0x2e2e2f['querySelector'](_0x31dabb(0x228))[_0x31dabb(0x305)]=_0x31dabb(0x169);return;}const _0x21212b=_0x31dabb(0x301);_0x55a12f[_0x31dabb(0x2a7)](_0x31dabb(0x173),_0x21212b),_0x382655['forEach'](_0x502115=>{const _0x1d2e01=_0x31dabb,_0x4a9af8=_0x1d2e01(0x203)+_0x502115['comment']+'\x20(Key:\x20'+_0x502115[_0x1d2e01(0x1cb)]+_0x1d2e01(0x20a)+_0x502115[_0x1d2e01(0x1cb)]+'\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span>'+_0x502115[_0x1d2e01(0x2e2)]+_0x1d2e01(0x18d);_0x55a12f['insertAdjacentHTML'](_0x1d2e01(0x173),_0x4a9af8);}),log(_0x31dabb(0x2e6)+_0x382655[_0x31dabb(0x199)]+_0x31dabb(0x2ba),_0x31dabb(0x1e6)),_0x2e2e2f['querySelector'](_0x31dabb(0x228))[_0x31dabb(0x305)]='已选择\x200\x20/\x20'+_0x382655[_0x31dabb(0x199)]+_0x31dabb(0x282);}catch(_0x3b5480){console['error'](_0x31dabb(0x2f3)+_0x222789+_0x31dabb(0x236),_0x3b5480),log(_0x31dabb(0x16a)+_0x3b5480[_0x31dabb(0x1e7)],_0x31dabb(0x27a)),_0x2e2e2f[_0x31dabb(0x179)](_0x31dabb(0x228))[_0x31dabb(0x305)]=_0x31dabb(0x176);}finally{_0x2e2e2f[_0x31dabb(0x208)]=![];}}async function startHistoriography(){const _0xbf99dc=_0x3b14fe,_0x10d83a=document['getElementById'](_0xbf99dc(0x1ed))[_0xbf99dc(0x18e)],_0x354c83=document[_0xbf99dc(0x1ff)](_0xbf99dc(0x16b)),_0x399000=document['getElementById'](_0xbf99dc(0x175)),_0x545438=Array[_0xbf99dc(0x254)](_0x354c83[_0xbf99dc(0x1e0)]('.hly-hist-entry-checkbox:checked'))[_0xbf99dc(0x197)](_0x5b7ede=>_0x5b7ede[_0xbf99dc(0x18e)]);if(!_0x10d83a||_0x545438[_0xbf99dc(0x199)]===0x0){toastr[_0xbf99dc(0x26b)](_0xbf99dc(0x1f0),_0xbf99dc(0x274));return;}_0x399000[_0xbf99dc(0x305)]=_0xbf99dc(0x19d)+_0x10d83a+_0xbf99dc(0x22e)+_0x545438['length']+_0xbf99dc(0x238),toastr[_0xbf99dc(0x2b3)]('批量编纂任务已开始...','圣旨'),log(_0xbf99dc(0x26f)+_0x10d83a+_0xbf99dc(0x22e)+_0x545438[_0xbf99dc(0x199)]+'\x20个条目进行编纂...','info');try{const _0x7b4695=await _0x481173[_0xbf99dc(0x1a9)](_0x10d83a,_0x545438);_0x399000[_0xbf99dc(0x305)]=_0x7b4695['content'],_0x7b4695[_0xbf99dc(0x1e6)]?toastr['success'](_0xbf99dc(0x200),'大功告成'):toastr[_0xbf99dc(0x26b)]('批量编纂任务已完成,但有部分错误。','圣谕'),log('对《'+_0x10d83a+_0xbf99dc(0x314)+_0x7b4695[_0xbf99dc(0x17d)]+_0xbf99dc(0x2cd)+_0x7b4695[_0xbf99dc(0x1b2)],'success');}catch(_0x2021d6){console[_0xbf99dc(0x27a)](_0xbf99dc(0x2d0),_0x2021d6),toastr[_0xbf99dc(0x27a)]('编纂失败:\x20'+_0x2021d6[_0xbf99dc(0x1e7)],_0xbf99dc(0x19f)),_0x399000['textContent']=_0xbf99dc(0x2e5)+_0x2021d6['message'];}finally{await updatePanelStatus();}}async function showStats(){const _0x505451=_0x3b14fe;try{log(_0x505451(0x1a6),_0x505451(0x2b3)),toastr[_0x505451(0x2b3)](_0x505451(0x168),'圣旨');const _0x15f24a=await _0x1ad3be['getVectorCount'](),_0x23f7cf=await _0x1ad3be[_0x505451(0x21c)](),_0x44d8c2=_0x1ad3be[_0x505451(0x266)](),_0x1cb196='\x0a<pre>\x0a翰林院宝库状态\x0a--------------------\x0a集合ID:\x20'+_0x23f7cf+'\x0a忆识总数:\x20'+_0x15f24a+_0x505451(0x189)+_0x44d8c2[_0x505451(0x21b)]['apiEndpoint']+_0x505451(0x1f1)+_0x44d8c2[_0x505451(0x21b)][_0x505451(0x210)]+_0x505451(0x2c3);toastr['info'](_0x1cb196,_0x505451(0x2f5),{'timeOut':0x3a98,'extendedTimeOut':0x1388,'tapToDismiss':!![],'closeButton':!![]}),log(_0x505451(0x312)+_0x23f7cf+_0x505451(0x1f4)+_0x15f24a,_0x505451(0x1e6));}catch(_0x2fcf2b){console[_0x505451(0x27a)](_0x505451(0x30d),_0x2fcf2b),toastr['error']('查询宝库状态失败:\x20'+_0x2fcf2b[_0x505451(0x1e7)],_0x505451(0x19f)),log(_0x505451(0x20e)+_0x2fcf2b['message'],'error');}}function showExclusionRulesModal(){const _0x2e2cba=_0x3b14fe,_0x1c98c6=_0x1ad3be[_0x2e2cba(0x266)](),_0x44061a=_0x1c98c6['condensation'][_0x2e2cba(0x270)]||[],_0x34a049=(_0x432107={'start':'','end':''},_0x10283c)=>_0x2e2cba(0x24c)+_0x10283c+_0x2e2cba(0x17a)+_0x432107[_0x2e2cba(0x23b)]+'\x22\x20placeholder=\x22开始字符,\x20如\x20<!--\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span>到</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<input\x20type=\x22text\x22\x20class=\x22hly-imperial-brush\x22\x20value=\x22'+_0x432107[_0x2e2cba(0x1a4)]+'\x22\x20placeholder=\x22结束字符,\x20如\x20-->\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20class=\x22hly-delete-rule-btn\x22\x20title=\x22删除此规则\x22>&times;</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20',_0x2dd4b3=_0x44061a['map'](_0x34a049)[_0x2e2cba(0x1ac)](''),_0x23a9dd=_0x2e2cba(0x24a)+_0x2dd4b3+_0x2e2cba(0x206);showHtmlModal(_0x2e2cba(0x195),_0x23a9dd,{'okText':_0x2e2cba(0x2f9),'onOk':_0x23daa6=>{const _0x12534b=_0x2e2cba,_0xe5f736=[];_0x23daa6['find'](_0x12534b(0x2e7))[_0x12534b(0x244)](function(){const _0x54ba3b=_0x12534b,_0x47419d=$(this)[_0x54ba3b(0x214)](_0x54ba3b(0x187))['eq'](0x0)['val']()[_0x54ba3b(0x2b8)](),_0x38a985=$(this)[_0x54ba3b(0x214)](_0x54ba3b(0x187))['eq'](0x1)[_0x54ba3b(0x21d)]()[_0x54ba3b(0x2b8)]();_0x47419d&&_0x38a985&&_0xe5f736[_0x54ba3b(0x273)]({'start':_0x47419d,'end':_0x38a985});}),updateAndSaveSetting('condensation.exclusionRules',_0xe5f736),toastr[_0x12534b(0x1e6)](_0x12534b(0x267),_0x12534b(0x258));}});const _0x2165fa=document[_0x2e2cba(0x1ff)](_0x2e2cba(0x2bc)),_0x114781=_0x2165fa[_0x2e2cba(0x179)](_0x2e2cba(0x295));_0x2165fa[_0x2e2cba(0x179)](_0x2e2cba(0x1ec))[_0x2e2cba(0x2e1)](_0x2e2cba(0x18a),()=>{const _0x2c7750=_0x2e2cba,_0xfdc972=_0x114781['children'][_0x2c7750(0x199)],_0x306bc1=_0x34a049({'start':'','end':''},_0xfdc972);_0x114781['insertAdjacentHTML'](_0x2c7750(0x173),_0x306bc1);}),_0x114781['addEventListener'](_0x2e2cba(0x18a),_0xede828=>{const _0x42fc81=_0x2e2cba;_0xede828[_0x42fc81(0x26e)][_0x42fc81(0x28e)][_0x42fc81(0x1c0)](_0x42fc81(0x217))&&_0xede828['target'][_0x42fc81(0x26d)](_0x42fc81(0x2e7))[_0x42fc81(0x19a)]();});}function previewCondensation(){const _0x4b3411=_0x3b14fe,_0x441eea=document[_0x4b3411(0x1ff)]('hly-condensation-results');try{const _0x35e352=_0x1ad3be[_0x4b3411(0x266)](),_0x1a1211=_0x35e352[_0x4b3411(0x235)][_0x4b3411(0x270)]||[],_0x5e1789={'user':document[_0x4b3411(0x1ff)](_0x4b3411(0x299))['checked'],'ai':document[_0x4b3411(0x1ff)](_0x4b3411(0x2f0))[_0x4b3411(0x1db)]},_0x5e9495=document[_0x4b3411(0x1ff)](_0x4b3411(0x278))[_0x4b3411(0x1db)],_0x9c2766=_0x5e9495?document[_0x4b3411(0x1ff)]('hly-tag-input')[_0x4b3411(0x18e)][_0x4b3411(0x2cb)](',')[_0x4b3411(0x197)](_0x70e539=>_0x70e539[_0x4b3411(0x2b8)]())[_0x4b3411(0x2c7)](Boolean):[],_0x39f2fa=_0x1ad3be['getMessagesForCondensation'](_0x5e1789);if(!_0x39f2fa||_0x39f2fa[_0x4b3411(0x199)]===0x0){_0x441eea['textContent']=_0x4b3411(0x1d5),toastr[_0x4b3411(0x26b)](_0x4b3411(0x287),_0x4b3411(0x2e3));return;}const _0x3e84c3=getContext()['chat'],_0x451543=_0x39f2fa[_0x4b3411(0x197)]((_0x37ca1d,_0x269c61)=>{const _0x555390=_0x4b3411;let _0x418ac5;if(_0x37ca1d[_0x555390(0x2f6)])_0x418ac5=_0x37ca1d[_0x555390(0x1e4)];else{if(_0x5e9495&&_0x9c2766['length']>0x0){const _0x274db4=extractBlocksByTags(_0x37ca1d[_0x555390(0x1e4)],_0x9c2766);_0x418ac5=_0x274db4['join']('\x0a\x0a');}else _0x418ac5=_0x37ca1d['mes'];_0x418ac5=applyExclusionRules(_0x418ac5,_0x1a1211);}const _0xd191af=_0x3e84c3[_0x555390(0x28a)](_0x3d12e8=>_0x3d12e8===_0x37ca1d),_0x220e7c=_0xd191af!==-0x1?_0xd191af+0x1:-0x1;return{'id':'preview-item-'+_0x269c61,'name':_0x37ca1d[_0x555390(0x21f)],'content':_0x418ac5[_0x555390(0x2b8)](),'floor':_0x220e7c,'is_user':_0x37ca1d[_0x555390(0x2f6)],'send_date':_0x37ca1d[_0x555390(0x2d9)]};})['filter'](_0x1f319f=>_0x1f319f[_0x4b3411(0x290)]);if(_0x451543[_0x4b3411(0x199)]===0x0){_0x441eea['textContent']=_0x4b3411(0x1e2),toastr['warning'](_0x4b3411(0x1e2),_0x4b3411(0x2e3));return;}const _0x5a34d8=_0x451543[_0x4b3411(0x197)]((_0x38a4e9,_0x5200b)=>_0x4b3411(0x164)+_0x38a4e9['id']+'\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<details\x20class=\x22hly-preview-details\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<summary\x20class=\x22hly-preview-summary\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20第\x20'+_0x38a4e9[_0x4b3411(0x1bc)]+'\x20楼:\x20['+_0x38a4e9[_0x4b3411(0x21f)]+_0x4b3411(0x2b6)+_0x38a4e9['floor']+_0x4b3411(0x2d2)+_0x38a4e9[_0x4b3411(0x2f6)]+_0x4b3411(0x180)+_0x38a4e9[_0x4b3411(0x2d9)]+'\x22>'+_0x38a4e9[_0x4b3411(0x290)]+'</textarea>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</details>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<button\x20class=\x22hly-preview-delete-btn-v2\x22\x20data-target=\x22'+_0x38a4e9['id']+'\x22\x20title=\x22删除此条\x22>&times;</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20')['join']('');showHtmlModal(_0x4b3411(0x227),_0x4b3411(0x1bf)+_0x5a34d8+_0x4b3411(0x2da),{'okText':_0x4b3411(0x1ef),'onOk':_0x30d05a=>{const _0x4f3d50=_0x4b3411,_0xf7180b=[];_0x30d05a[_0x4f3d50(0x214)]('.hly-preview-item-v2')[_0x4f3d50(0x244)](function(){const _0x5818ab=_0x4f3d50,_0x8a79f2=$(this)['find'](_0x5818ab(0x2dd)),_0x557b85=_0x8a79f2[_0x5818ab(0x21d)]();_0x557b85['trim']()&&_0xf7180b[_0x5818ab(0x273)]({'mes':_0x557b85,'is_user':_0x8a79f2['data'](_0x5818ab(0x280)),'send_date':_0x8a79f2[_0x5818ab(0x1fe)](_0x5818ab(0x1bd)),'floor':_0x8a79f2[_0x5818ab(0x1fe)]('floor')});}),_0x441eea[_0x4f3d50(0x202)][_0x4f3d50(0x2a3)]=JSON[_0x4f3d50(0x271)](_0xf7180b);const _0x21d1a7=document[_0x4f3d50(0x1ff)]('hly-layer-start')['value'],_0x501280=document[_0x4f3d50(0x1ff)]('hly-layer-end')[_0x4f3d50(0x18e)];_0x441eea['textContent']=_0x4f3d50(0x1c1)+_0x21d1a7+_0x4f3d50(0x1de)+_0x501280+_0x4f3d50(0x28d)+_0xf7180b['length']+_0x4f3d50(0x161),toastr[_0x4f3d50(0x1e6)](_0x4f3d50(0x259),_0x4f3d50(0x258));}}),$('.hly-preview-delete-btn-v2')['on'](_0x4b3411(0x18a),function(_0x587fb2){const _0x568940=_0x4b3411;_0x587fb2['preventDefault']();const _0x1433d6=$(this)[_0x568940(0x1fe)](_0x568940(0x26e));$('#'+_0x1433d6)['remove']();});}catch(_0x51c831){console[_0x4b3411(0x27a)](_0x4b3411(0x1e8),_0x51c831),_0x441eea[_0x4b3411(0x305)]='预览失败:\x20'+_0x51c831[_0x4b3411(0x1e7)],toastr['error'](_0x4b3411(0x2de)+_0x51c831[_0x4b3411(0x1e7)],_0x4b3411(0x19f));}}function log(_0x4c56d0,_0x21a2da=_0x3b14fe(0x2b3)){const _0x587aed=_0x3b14fe,_0x415063=document[_0x587aed(0x1ff)](_0x587aed(0x19e));if(!_0x415063)return;const _0x69569e=document['createElement']('p'),_0x1ecb24=new Date()['toLocaleTimeString']();let _0x1e918a=_0x587aed(0x315),_0x16b434='log-info';switch(_0x21a2da){case _0x587aed(0x1e6):_0x1e918a=_0x587aed(0x2ce),_0x16b434=_0x587aed(0x215);break;case'error':_0x1e918a=_0x587aed(0x283),_0x16b434=_0x587aed(0x24d);break;case _0x587aed(0x249):_0x1e918a=_0x587aed(0x306),_0x16b434=_0x587aed(0x1d6);break;}_0x69569e[_0x587aed(0x1b4)]='hly-log-entry\x20'+_0x16b434,_0x69569e[_0x587aed(0x186)]=_0x587aed(0x205)+_0x1e918a+_0x587aed(0x152)+_0x1ecb24+']\x20'+_0x4c56d0;const _0x120191=_0x415063['querySelector'](_0x587aed(0x2ff));_0x120191&&_0x120191[_0x587aed(0x19a)](),_0x415063[_0x587aed(0x1a7)](_0x69569e),_0x415063[_0x587aed(0x275)]=_0x415063[_0x587aed(0x1d7)];}async function ingestManualText(){const _0x424873=_0x3b14fe,_0x23df36=document[_0x424873(0x1ff)](_0x424873(0x22b)),_0x50be73=_0x23df36[_0x424873(0x18e)][_0x424873(0x2b8)]();if(!_0x50be73){toastr[_0x424873(0x26b)](_0x424873(0x1ee),_0x424873(0x2e3)),log('用户尝试录入空文本。',_0x424873(0x249));return;}log(_0x424873(0x18f)+_0x50be73['length'],_0x424873(0x2b3)),toastr[_0x424873(0x2b3)](_0x424873(0x1fa),'圣旨');try{const _0x20fdb6=await _0x1ad3be[_0x424873(0x1aa)](_0x50be73,_0x424873(0x276),{'sourceName':_0x424873(0x211)});if(_0x20fdb6[_0x424873(0x1e6)])toastr[_0x424873(0x1e6)](_0x424873(0x2a8)+_0x20fdb6[_0x424873(0x24b)]+_0x424873(0x1d8),_0x424873(0x230)),log(_0x424873(0x2c2)+_0x20fdb6[_0x424873(0x24b)]+_0x424873(0x1d8),_0x424873(0x1e6)),_0x23df36['value']='';else throw new Error(_0x20fdb6[_0x424873(0x27a)]||_0x424873(0x178));}catch(_0x23248f){console[_0x424873(0x27a)](_0x424873(0x2b1),_0x23248f),toastr[_0x424873(0x27a)](_0x424873(0x20d)+_0x23248f['message'],_0x424873(0x19f)),log(_0x424873(0x2c0)+_0x23248f[_0x424873(0x1e7)],_0x424873(0x27a));}finally{await updatePanelStatus();}}