mirror of
https://github.com/Wx-2025/ST-Amily2-Chat-Optimisation.git
synced 2026-06-06 17:25:51 +00:00
2 lines
63 KiB
JavaScript
2 lines
63 KiB
JavaScript
const _0x54d868=_0x4087;(function(_0x60ce07,_0x50b233){const _0x423bff=_0x4087,_0x33789e=_0x60ce07();while(!![]){try{const _0x51fd97=parseInt(_0x423bff(0x1b8))/0x1*(parseInt(_0x423bff(0x276))/0x2)+-parseInt(_0x423bff(0xe5))/0x3*(-parseInt(_0x423bff(0x185))/0x4)+parseInt(_0x423bff(0x187))/0x5*(-parseInt(_0x423bff(0x175))/0x6)+-parseInt(_0x423bff(0x198))/0x7+-parseInt(_0x423bff(0xff))/0x8+-parseInt(_0x423bff(0x1f5))/0x9+-parseInt(_0x423bff(0x196))/0xa*(-parseInt(_0x423bff(0x152))/0xb);if(_0x51fd97===_0x50b233)break;else _0x33789e['push'](_0x33789e['shift']());}catch(_0x4fff99){_0x33789e['push'](_0x33789e['shift']());}}}(_0x2bc0,0xd4b63));import{getContext}from'/scripts/extensions.js';import*as _0x200707 from'../core/rag-processor.js';import*as _0x181516 from'../core/historiographer.js';import*as _0x5389a1 from'../core/utils/context-utils.js';import*as _0x49f2d4 from'../core/ingestion-manager.js';import{showContentModal,showHtmlModal}from'./page-window.js';import{extractBlocksByTags,applyExclusionRules}from'../core/utils/rag-tag-extractor.js';import{filterWorldbooks,filterWorldbookEntries,highlightSearchMatch,debounce}from'../core/rag-processor.js';_0x54d868(0x162);function setupGlobalEventHandlers(){const _0x2a8a12=_0x54d868;window['saveHLYSettings']=()=>saveSettingsFromUI(![]),window[_0x2a8a12(0x23a)]=resetSettingsToUI,window[_0x2a8a12(0x200)]=testApi,window[_0x2a8a12(0xd6)]=fetchHLYEmbeddingModels,window[_0x2a8a12(0x275)]=fetchHLYRerankModels,window[_0x2a8a12(0x138)]=updatePanelStatus,window['purgeHLYStorage']=purgeStorage,window[_0x2a8a12(0x133)]=startCondensation,window[_0x2a8a12(0x250)]=previewCondensation,window['ingestHLYManualText']=ingestManualText,window[_0x2a8a12(0x10f)]=log,window[_0x2a8a12(0x1f9)]=showStats,window[_0x2a8a12(0x12f)]=startHistoriography;}function updateAndSaveSetting(_0x84a433,_0x31e0bc){const _0xeeee76=_0x54d868,_0x119d25=_0x200707['getSettings']();if(!_0x119d25)return;const _0x3e2791=_0x84a433['split']('.');let _0x2bb9b2=_0x119d25;for(let _0x503dd8=0x0;_0x503dd8<_0x3e2791[_0xeeee76(0x1a6)]-0x1;_0x503dd8++){_0x2bb9b2=_0x2bb9b2[_0x3e2791[_0x503dd8]]=_0x2bb9b2[_0x3e2791[_0x503dd8]]||{};}_0x2bb9b2[_0x3e2791[_0x3e2791[_0xeeee76(0x1a6)]-0x1]]=_0x31e0bc,_0x200707[_0xeeee76(0x1ed)](),log('[自动保存]\x20设置项\x20\x27'+_0x84a433+_0xeeee76(0x1c6)+JSON[_0xeeee76(0x22f)](_0x31e0bc),_0xeeee76(0x15b));}function _0x2bc0(){const _0x5b704c=['use\x20strict','end','移动知识库\x20','initialize','请输入您的Google\x20API\x20Key','.hly-preview-delete-btn-v2','\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','处理中:\x20','未找到符合条件的消息可供凝识。','notify','内容排除规则已保存。','removeKnowledgeBase','宝库已清空。',')\x22>\x0a\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','hly-query-message-count','未知错误','label','hly-api-key-group','4448778DeGPwA','retrieval','boolean','准备对《','_searchHandler','comment','closest','text','target','hly-kb-move-all-to-local','启禀大人,发现此书上次录入已完成\x20','toFixed','totalChunks','tagExtractionEnabled','message','val','4SmCCpM','hly-include-ai','10mMjaDM','\x20楼的内容(共\x20','无法获取总数:\x20','hly-entry-search','hly-hist-entry-multiselect-btn','finalText','embeddingModel','hly-batch-size','signal','global','getGlobalKnowledgeBases','innerHTML','>\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>×</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20','文书已成功录入宝库,新增\x20','hly-rerank-notify','3535010RykayR','content','3974474hfGBrw','hly-rerank-model','知识库【','top_n','display','fetchEmbeddingModels','<option\x20value=\x22\x22>加载失败</option>','[翰林院-枢纽]\x20编纂过程发生严重错误:','文书录入失败:\x20','\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','hly-layer-start','[翰林院-枢纽]\x20加载书库列表失败:','scrollHeight','keys','length','<option\x20value=\x22\x22>未找到任何书库</option>','hly-condensation-results','\x20个条目','凝识失败:\x20','您确定要将所有设定恢复为出厂默认值吗?','change','custom','\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span>','正在测试神力连接...','stopPropagation','condensation','getLockedSessionInfo','amily2_open_rag_palace','》中的\x20','title','\x20个模型。','未能获取到任何模型。','1DFHrHP','hly-injection-template','#hly-add-rule-btn','getCollectionId','AbortError','点击以锁定,让翰林院固定操作当前角色的宝库','<button\x20class=\x22hly-kb-move-btn\x22\x20title=\x22下移到局部\x22><i\x20class=\x22fas\x20fa-arrow-down\x22></i></button>','正在获取可用书库列表...','selectedIndex','成功加载\x20','[翰林院-枢纽]\x20手动录入过程发生错误:','hly-modal-container','hly-injection-role','此书库为空','\x27\x20已更新为:\x20','\x20个知识块','checkbox','addEventListener','成功获取\x20','\x22\x20title=\x22删除此条\x22>×</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20','fas\x20fa-lock-open','】吗?','</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','\x0a忆识总数:\x20','<p\x20class=\x22hly-record-hint\x22><i>上次已从第\x20',',重新开始。','string','warn','锁定会话','float','forEach','开始对《','children','\x20个知识库从【','\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<label\x20class=\x22hly-multiselect-option\x22\x20title=\x22','totalSuccess','manual','hanlinyuan-ingest-novel-controls','hly-historiography-results','.hly-nav-item','<option>获取失败</option>','\x0a所用模型:\x20','kbScope','hly-kb-list-global','<p\x20class=\x22hly-record-hint\x22>可在此预览凝识结果。</p>','advanced','批量编纂任务已完成,但有部分错误。','hly-kb-list-global-placeholder','isSessionLocked','正在清空宝库...','hly-','\x20个知识库删除失败。','condensationHistory','saveSettings','filter','google_direct','神力连接失败:\x20','】已删除。','none','layerEnd','user','10412946ktpOdl','\x20(Key:\x20','</i></p>','block','showHLYStats','scripts/extensions/third-party/ST-Amily2-Chat-Optimisation/HanLin.md','value','编辑内容排除规则','hly-exclusion-rules-container','from','获取Rerank模型失败:\x20','testHLYApi','\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<span\x20class=\x22hly-kb-name\x22\x20title=\x22ID:\x20','》的条目失败:','未找到符合条件的消息。','当前所有操作都将指向这个锁定的宝库:','[翰林院-枢纽]\x20已成功连接各部,政令畅通。','正在加载条目...','加载书库列表失败:\x20','[翰林院-枢纽]\x20未能获取SillyTavern上下文,绑定失败。','flex','编纂失败:\x20','count','data','every','type','\x20个条目进行批量编纂...','任务已由用户中止。进度已保存,可随时继续。','[翰林院-枢纽]\x20凝识过程发生错误:','hly-rerank-api-key','log-error','圣谕不明','根据标签提取或内容排除条件,未找到任何有效内容。','操作完成,但有\x20','textContent','totalVectors','chat','[翰林院-枢纽]\x20获取模型列表失败:','hanlinyuan-ingest-novel-file-name','querySelectorAll','保存规则','options','queryMessageCount','toLocaleTimeString','知识库\x20','根据当前勾选条件,未找到符合的消息可供预览。','mes','map','createElement','已采集\x20','\x20块继续录入。','hly-log-entry\x20','hly-kb-delete-btn','解锁会话','宝库状态','批量编纂任务已完成。','hly-tag-extraction-toggle','</span>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</label>','stringify','加载条目失败:\x20','total','fetchRerankModels','聊天记录从第\x20','正在准备凝识...','手动录入','classList','input[name=\x22hly-injection-position\x22][value=\x22','hanlinyuan-ingest-novel-start','【手动存档】所有设定已存档封印。','resetHLYSettings','settingKey','删除知识库\x20','globalToLocal','圣旨已达','本地代理地址:','自定义路径:','template','查看宝库状态成功:集合ID=',',\x20失败:\x20','toggleSessionLock','<option>正在获取...</option>','error','[翰林院-枢纽]\x20获取Rerank模型列表失败:','files','请先选择一个书库并至少选择一个要编纂的条目。','预览失败:\x20','hly-tag-input-container','appendChild','】吗?此操作无法恢复!','fa-times-circle','removeEventListener','previewHLYCondensation','trim','\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','purgeStorage','\x20移动到\x20','input[name=\x22','getMessagesForCondensation','[翰林院-枢纽]\x20加载《','preview-item-','hly-log-output','\x20(ID:\x20','.hly-preview-item-v2','hly-api-endpoint','<option\x20value=\x22\x22>未找到匹配的书库</option>','\x0a--------------------\x0aAPI端点:\x20','已选择\x200\x20/\x20','includes','push','[断点续传]\x20用户选择放弃旧任务\x20','成功录入\x20','请先选择一个\x20.txt\x20文件','input[name=\x22hly-injection-position\x22]','会话已解锁。','hly-rerank-hybrid-alpha','hly-tag-input','hly-rerank-url','正在读取文件...','移动失败:\x20','log-warn','is-user','删除失败:\x20','input',',从第\x20','hly-kb-list-local-placeholder','<option>未找到模型</option>','is_user','hly-custom-endpoint-docket','fetchHLYRerankModels','3275708GbIsru','\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','parse','已选择\x20','N/A','dataset','each','未选择文件','hly-embedding-model','hly-max-results',']\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','\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22hly-preview-item-v2\x22\x20id=\x22','hly-kb-delete-local-btn','您确定要永久删除【当前角色】的全部\x20','\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>×</button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20','.hly-exclusion-rule-row','exclusionRules','会话已锁定','fa-check-circle','.hly-kb-move-btn','find','getSettings','hybrid_alpha','placeholder','hly-delete-rule-btn','获取模型失败:\x20','allWorldbooks','contains','local','...','<option\x20value=\x22\x22>请选择一个书库...</option>','scrollTop','.hly-hist-entry-checkbox:checked','abort','name','\x20个Rerank模型。','切换知识库\x20','hly-match-threshold','正在处理您提交的文书...','input[name=\x22hly-injection-position\x22]:checked','\x20楼已成功凝识,新增\x20','fetchHLYEmbeddingModels','style','novel','\x20条忆识。','开始获取Rerank模型列表...','fas\x20fa-lock','loadProgress','getLocalKnowledgeBases','\x20状态失败:\x20','hly-retrieval-notify','hly-kb-list-item','hly-api-key','会话已锁定到:\x20','info','entries','232074RCzMIs','hly-overlap-size','您确定要将知识库【','hly-retrieval-enabled','moveKnowledgeBase','hly-manual-text',',\x20忆识总数=','局部知识库批量删除完成。成功:\x20','span','apiEndpoint','[翰林院-枢纽]\x20预览过程发生错误:','开始获取模型列表...','tab','\x0a\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<input\x20type=\x22checkbox\x22\x20id=\x22hly-hist-select-all-entries\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<strong>全选/全不选</strong>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</label>','condensation.exclusionRules','\x20个知识库均已成功移动。','\x20块开始。','\x20楼到第\x20','getVectorCount','\x20楼。</i></p>','[翰林院-枢纽]\x20更新忆识数量失败:','检测到预览后待处理的消息对象,开始精确凝识...','disabled','凝识完成!新增\x20','finalMessages','beforeend','12198032dmgJyu','hly-include-user','log-info','\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','<div\x20class=\x22hly-preview-container-v2\x22>','messageTypes','enabled','未检测到预览文本,按标准流程采集消息...','getChatId','严重错误','depth_role','getLoresForWorldbook','add','className','hly-rerank-top-n','send_date','hlyLog','hly-injection-depth','injection','kbId','hly-kb-list-local','神力连接通畅!','\x20个局部知识库吗?此操作无法恢复!','条)</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','确认并更新预览','split','hly-hist-entry-multiselect-options','floor','.hly-tab-pane','join','key','customApiUrl','未能获取到任何Rerank模型。','hly-kb-move-all-to-global','收到手动录入请求,文本长度:\x20','\x20个知识块。','hly-exclusion-rules-btn','generateJobId','大功告成','遵命,将从第\x20','matchThreshold','\x20楼凝识至第\x20','[断点续传]\x20用户选择继续任务\x20','warning','翰林院启奏','开始将\x20','hanlinyuan-ingest-abort','toggle','startHLYHistoriography','ingestTextToHanlinyuan','hly-locked-status','integer','startHLYCondensation','通行令牌\x20(API\x20Key):','insertAdjacentHTML','请先选择书库','清空宝库失败。','updateHLYMemoryCount','录入失败:\x20','querySelector','testApiConnection','true','[data-setting-key]','batchSize','model','executeCompilation',')\x20已被删除','maxResults','.hly-hist-entry-checkbox','clearJob','\x20个条目。','hly-condensation-enabled','click','active','remove','\x20失败:\x20','checked','】移动到【','\x20楼:\x20[','radio','hanlinyuan-ingest-progress-bar','所有\x20','<button\x20class=\x22hly-kb-move-btn\x22\x20title=\x22上移到全局\x22><i\x20class=\x22fas\x20fa-arrow-up\x22></i></button>','121FsxUaW','layerStart','hly-hist-select-all-entries','rerank','\x20个局部知识库...','[翰林院-枢纽]\x20核心法典未能提供初始化圣旨!','hly-hist-select-library','getCharacterName','\x20条消息,开始凝识...','success','apiKey','\x22></i>\x20[','hly-layer-end','错误:\x20','start','getElementById'];_0x2bc0=function(){return _0x5b704c;};return _0x2bc0();}function bindAutoSaveEvents(){const _0x3e9b3b=_0x54d868,_0x684b17=document[_0x3e9b3b(0x161)](_0x3e9b3b(0x1c3));if(!_0x684b17)return;_0x684b17[_0x3e9b3b(0x1c9)](_0x3e9b3b(0x1ac),_0x5cdfce=>{const _0x1f7fa2=_0x3e9b3b,_0x214638=_0x5cdfce[_0x1f7fa2(0x17d)],_0x2260d0=_0x214638[_0x1f7fa2(0x27b)][_0x1f7fa2(0x23b)];if(!_0x2260d0)return;let _0x159b4c;const _0xeabc47=_0x214638['dataset'][_0x1f7fa2(0x20e)]||'string';if(_0x214638['type']==='checkbox')_0x159b4c=_0x214638['checked'];else{if(_0x214638[_0x1f7fa2(0x20e)]==='radio'){if(_0x214638[_0x1f7fa2(0x14b)]){const _0x257820=_0x684b17[_0x1f7fa2(0x21c)](_0x1f7fa2(0x255)+_0x214638[_0x1f7fa2(0xcf)]+'\x22]'),_0x243ce7=Array[_0x1f7fa2(0x1fe)](_0x257820)['find'](_0x34e4ce=>_0x34e4ce[_0x1f7fa2(0x14b)]);_0x159b4c=_0x243ce7['value'];}else return;}else _0x159b4c=_0x214638['value'];}switch(_0xeabc47){case _0x1f7fa2(0x132):_0x159b4c=parseInt(_0x159b4c,0xa);break;case _0x1f7fa2(0x1d5):_0x159b4c=parseFloat(_0x159b4c);break;case _0x1f7fa2(0x177):typeof _0x159b4c!==_0x1f7fa2(0x177)&&(_0x159b4c=_0x159b4c===_0x1f7fa2(0x13c));break;}if(_0x214638[_0x1f7fa2(0x20e)]===_0x1f7fa2(0x14e)&&!_0x214638[_0x1f7fa2(0x14b)])return;updateAndSaveSetting(_0x2260d0,_0x159b4c);});}export function bindHanlinyuanEvents(){const _0x43be9a=_0x54d868,_0x582227=getContext();if(!_0x582227){console['error'](_0x43be9a(0x208));return;}setupGlobalEventHandlers(),bindPanelToggleEvents(),bindInternalUIEvents(),bindTutorialEvents(),bindAutoSaveEvents(),bindSessionLockEvent();if(_0x200707['initialize'])_0x200707[_0x43be9a(0x165)]();else{console[_0x43be9a(0x246)](_0x43be9a(0x157));return;}loadSettingsToUI(),loadWorldbookList(),log(_0x43be9a(0x205),_0x43be9a(0xe3));const _0x58be11=document[_0x43be9a(0x161)]('hanlinyuan-ingest-novel-file-input'),_0x146a4f=document[_0x43be9a(0x161)](_0x43be9a(0x21b)),_0x598c5e=document[_0x43be9a(0x161)](_0x43be9a(0x238)),_0x14cd6c=document['getElementById'](_0x43be9a(0x12d)),_0x4efafe=document[_0x43be9a(0x161)]('hanlinyuan-ingest-progress-container'),_0xd25242=document[_0x43be9a(0x161)](_0x43be9a(0x14f)),_0xacfd08=document['getElementById']('hanlinyuan-ingest-status'),_0x4e2373=document[_0x43be9a(0x161)](_0x43be9a(0x1dd));let _0x2589ec=null,_0x28f8e0=null;_0x58be11['addEventListener'](_0x43be9a(0x1ac),_0xa5aa9d=>{const _0x1bb2aa=_0x43be9a;_0x2589ec=_0xa5aa9d['target'][_0x1bb2aa(0x248)][0x0],_0x2589ec?(_0x146a4f['textContent']=_0x2589ec['name'],_0x146a4f[_0x1bb2aa(0x1b5)]=_0x2589ec[_0x1bb2aa(0xcf)]):_0x146a4f[_0x1bb2aa(0x217)]=_0x1bb2aa(0x27d);}),_0x598c5e[_0x43be9a(0x1c9)](_0x43be9a(0x147),async()=>{const _0x1c48d1=_0x43be9a;if(!_0x2589ec){toastr[_0x1c48d1(0x12a)](_0x1c48d1(0x264));return;}let _0x3a4d14=0x0;const _0x1bacd6=_0x49f2d4[_0x1c48d1(0x124)](_0x2589ec),_0xc715e8=_0x49f2d4[_0x1c48d1(0xdc)](_0x1bacd6);if(_0xc715e8){const _0x21e05a=(_0xc715e8['processedChunks']/_0xc715e8[_0x1c48d1(0x181)]*0x64)[_0x1c48d1(0x180)](0x1),_0x2081d0=confirm(_0x1c48d1(0x17f)+_0x21e05a+'%。是否从上次中断之处继续?');_0x2081d0?(_0x3a4d14=_0xc715e8['processedChunks'],toastr[_0x1c48d1(0xe3)](_0x1c48d1(0x126)+(_0x3a4d14+0x1)+_0x1c48d1(0x227),_0x1c48d1(0x23e)),log(_0x1c48d1(0x129)+_0x1bacd6+_0x1c48d1(0x270)+_0x3a4d14+_0x1c48d1(0xf5),_0x1c48d1(0xe3))):(_0x49f2d4[_0x1c48d1(0x144)](_0x1bacd6),toastr[_0x1c48d1(0xe3)]('遵命,将从头开始录入此书。','圣旨已达'),log(_0x1c48d1(0x262)+_0x1bacd6+_0x1c48d1(0x1d1),_0x1c48d1(0x1d3)));}_0x28f8e0=new AbortController();const _0x13361c=_0x28f8e0[_0x1c48d1(0x18f)];_0x4e2373[_0x1c48d1(0xd7)][_0x1c48d1(0x19c)]='none',_0x4efafe['style'][_0x1c48d1(0x19c)]=_0x1c48d1(0x1f8),_0xacfd08['textContent']=_0x1c48d1(0x26a),_0xd25242[_0x1c48d1(0x1fb)]=0x0;try{const _0x3e618f=await _0x2589ec[_0x1c48d1(0x17c)](),_0x247c0b=_0x3172ff=>{const _0x301202=_0x1c48d1;_0xacfd08[_0x301202(0x217)]=_0x301202(0x169)+_0x3172ff[_0x301202(0x183)]+'\x20('+_0x3172ff['processed']+'/'+_0x3172ff['total']+')',_0xd25242['value']=_0x3172ff['processed']/_0x3172ff[_0x301202(0x231)]*0x64;},_0x4aeccb=()=>{updatePanelStatus(),log('[实时刷新]\x20批次完成,忆识总数已更新。','info');},_0x5d86d6=await _0x200707['ingestTextToHanlinyuan'](_0x3e618f,_0x1c48d1(0xd8),{'sourceName':_0x2589ec[_0x1c48d1(0xcf)]},_0x247c0b,_0x13361c,log,_0x4aeccb,_0x1bacd6,_0x3a4d14);if(_0x5d86d6[_0x1c48d1(0x15b)])toastr[_0x1c48d1(0x15b)](_0x1c48d1(0x263)+_0x5d86d6[_0x1c48d1(0x20b)]+_0x1c48d1(0x1c7)),_0xacfd08[_0x1c48d1(0x217)]='任务完成!成功录入\x20'+_0x5d86d6[_0x1c48d1(0x20b)]+_0x1c48d1(0x122),_0xd25242[_0x1c48d1(0x1fb)]=0x64,updatePanelStatus();else throw new Error(_0x5d86d6['error']||_0x1c48d1(0x172));}catch(_0x57f308){_0x57f308[_0x1c48d1(0xcf)]===_0x1c48d1(0x1bc)?(toastr[_0x1c48d1(0xe3)](_0x1c48d1(0x210)),_0xacfd08['textContent']='任务已中止。'):(toastr[_0x1c48d1(0x246)](_0x1c48d1(0x139)+_0x57f308[_0x1c48d1(0x183)]+'。进度已保存,可稍后重试。'),_0xacfd08[_0x1c48d1(0x217)]=_0x1c48d1(0x15f)+_0x57f308[_0x1c48d1(0x183)]);}finally{setTimeout(()=>{const _0x5f3631=_0x1c48d1;_0x4e2373[_0x5f3631(0xd7)][_0x5f3631(0x19c)]=_0x5f3631(0x209),_0x4efafe['style'][_0x5f3631(0x19c)]=_0x5f3631(0x1f2),_0x58be11[_0x5f3631(0x1fb)]='',_0x2589ec=null,_0x146a4f[_0x5f3631(0x217)]=_0x5f3631(0x27d);},0xbb8);}}),_0x14cd6c[_0x43be9a(0x1c9)](_0x43be9a(0x147),()=>{const _0x4d1736=_0x43be9a;_0x28f8e0&&_0x28f8e0[_0x4d1736(0xce)]();});}function bindSessionLockEvent(){const _0x165aaf=_0x54d868,_0x3e6a46=document[_0x165aaf(0x161)]('hly-session-lock-btn');if(!_0x3e6a46)return;_0x3e6a46[_0x165aaf(0x1c9)]('click',async()=>{const _0x4fe853=_0x165aaf,_0x7848c=await _0x200707[_0x4fe853(0x244)]();updateSessionLockUI(_0x7848c);if(_0x7848c){const _0x415219=_0x200707[_0x4fe853(0x1b2)]();_0x415219&&(toastr['success'](_0x4fe853(0xe2)+_0x415219['id'],'圣旨已下'),log('会话已锁定到宝库:\x20'+_0x415219['id'],_0x4fe853(0x15b)));}else toastr['info']('会话已解锁,将跟随当前角色。','诏曰'),log(_0x4fe853(0x266),_0x4fe853(0xe3));updatePanelStatus();}),updateSessionLockUI(_0x200707[_0x165aaf(0x1e8)]());}function updateSessionLockUI(_0x536370){const _0x252c0c=_0x54d868,_0x4f5357=document[_0x252c0c(0x161)]('hly-session-lock-btn');if(!_0x4f5357)return;const _0x47456b=_0x4f5357[_0x252c0c(0x13a)]('i'),_0x381286=_0x4f5357[_0x252c0c(0x13a)](_0x252c0c(0xed));_0x536370?(_0x4f5357[_0x252c0c(0x236)]['add'](_0x252c0c(0x148)),_0x47456b[_0x252c0c(0x10c)]=_0x252c0c(0xdb),_0x381286[_0x252c0c(0x217)]=_0x252c0c(0x22a),_0x4f5357[_0x252c0c(0x1b5)]='点击以解锁,让翰林院跟随当前角色'):(_0x4f5357[_0x252c0c(0x236)][_0x252c0c(0x149)](_0x252c0c(0x148)),_0x47456b[_0x252c0c(0x10c)]=_0x252c0c(0x1cc),_0x381286[_0x252c0c(0x217)]=_0x252c0c(0x1d4),_0x4f5357[_0x252c0c(0x1b5)]=_0x252c0c(0x1bd));}function bindPanelToggleEvents(){const _0x4d8d39=_0x54d868,_0x1e6767=document[_0x4d8d39(0x161)](_0x4d8d39(0x1b3));if(_0x1e6767){}}function bindTutorialEvents(){const _0x52de59=_0x54d868,_0x23473=document[_0x52de59(0x161)]('amily2_open_hanlin_tutorial');_0x23473&&_0x23473[_0x52de59(0x1c9)](_0x52de59(0x147),()=>{const _0x1814cc=_0x52de59;showContentModal('翰林院使用教程',_0x1814cc(0x1fa));});}function bindInternalUIEvents(){const _0xdb3eff=_0x54d868,_0xa93003=document[_0xdb3eff(0x21c)](_0xdb3eff(0x1df));_0xa93003[_0xdb3eff(0x1d6)](_0x17a288=>{const _0x3add35=_0xdb3eff;_0x17a288[_0x3add35(0x1c9)](_0x3add35(0x147),()=>{const _0x1fcd37=_0x3add35,_0xea7cf4=_0x17a288['dataset'][_0x1fcd37(0xf1)],_0x888b3a=_0x1fcd37(0x1ea)+_0xea7cf4+'-tab';document[_0x1fcd37(0x21c)](_0x1fcd37(0x11b))[_0x1fcd37(0x1d6)](_0x122062=>{const _0x1a54bc=_0x1fcd37;_0x122062[_0x1a54bc(0x236)]['toggle'](_0x1a54bc(0x148),_0x122062['id']===_0x888b3a);}),_0xa93003[_0x1fcd37(0x1d6)](_0x354d2a=>_0x354d2a['classList'][_0x1fcd37(0x12e)]('active',_0x354d2a===_0x17a288));});});const _0x541759=document[_0xdb3eff(0x161)]('hly-api-endpoint');_0x541759&&_0x541759[_0xdb3eff(0x1c9)](_0xdb3eff(0x1ac),handleApiModeChange);const _0x134c69=document[_0xdb3eff(0x21c)](_0xdb3eff(0x265));_0x134c69['forEach'](_0x4b7766=>{_0x4b7766['addEventListener']('change',toggleInjectionDetails);});const _0x1ce5b9=document[_0xdb3eff(0x161)]('hly-tag-extraction-toggle'),_0x52efca=document['getElementById']('hly-tag-input-container');_0x1ce5b9&&_0x52efca&&_0x1ce5b9[_0xdb3eff(0x1c9)]('change',()=>{const _0x515c5a=_0xdb3eff;_0x52efca['style'][_0x515c5a(0x19c)]=_0x1ce5b9['checked']?_0x515c5a(0x1f8):_0x515c5a(0x1f2);});const _0x353c13=document['getElementById'](_0xdb3eff(0x158));_0x353c13&&_0x353c13[_0xdb3eff(0x1c9)](_0xdb3eff(0x1ac),handleWorldbookSelectionChange);const _0x393970=document['getElementById'](_0xdb3eff(0x123));_0x393970&&_0x393970[_0xdb3eff(0x1c9)](_0xdb3eff(0x147),showExclusionRulesModal);const _0x286981=document[_0xdb3eff(0x161)]('hly-hist-entry-multiselect-btn'),_0xf7a1e6=document[_0xdb3eff(0x161)]('hly-hist-entry-multiselect-options');_0x286981&&_0xf7a1e6&&(_0x286981['addEventListener'](_0xdb3eff(0x147),_0x485039=>{const _0x5b24ef=_0xdb3eff;_0x485039[_0x5b24ef(0x1b0)]();const _0x276e08=_0xf7a1e6[_0x5b24ef(0xd7)][_0x5b24ef(0x19c)]===_0x5b24ef(0x1f8);_0xf7a1e6[_0x5b24ef(0xd7)]['display']=_0x276e08?'none':_0x5b24ef(0x1f8);}),_0xf7a1e6[_0xdb3eff(0x1c9)](_0xdb3eff(0x1ac),_0x2287a4=>{const _0x559abe=_0xdb3eff,_0x380897=_0x2287a4[_0x559abe(0x17d)];if(_0x380897[_0x559abe(0x20e)]!=='checkbox')return;const _0x47d39e=_0xf7a1e6[_0x559abe(0x21c)](_0x559abe(0x143)),_0x244dff=document[_0x559abe(0x161)](_0x559abe(0x154));if(_0x380897['id']===_0x559abe(0x154))_0x47d39e['forEach'](_0x109ecc=>_0x109ecc[_0x559abe(0x14b)]=_0x380897['checked']);else{const _0x51585e=Array[_0x559abe(0x1fe)](_0x47d39e)[_0x559abe(0x20d)](_0x24d070=>_0x24d070[_0x559abe(0x14b)]);_0x244dff[_0x559abe(0x14b)]=_0x51585e;}const _0x40e4bc=_0xf7a1e6[_0x559abe(0x21c)]('.hly-hist-entry-checkbox:checked')['length'],_0x4bf749=_0x47d39e[_0x559abe(0x1a6)];_0x286981[_0x559abe(0x13a)](_0x559abe(0xed))['textContent']=_0x559abe(0x279)+_0x40e4bc+'\x20/\x20'+_0x4bf749+_0x559abe(0x1a9);}),document[_0xdb3eff(0x1c9)](_0xdb3eff(0x147),_0x45c417=>{const _0x523081=_0xdb3eff;!_0x286981['contains'](_0x45c417[_0x523081(0x17d)])&&!_0xf7a1e6[_0x523081(0xc8)](_0x45c417[_0x523081(0x17d)])&&(_0xf7a1e6[_0x523081(0xd7)][_0x523081(0x19c)]=_0x523081(0x1f2));}));const _0x76f934=document['getElementById'](_0xdb3eff(0xb9));_0x76f934&&_0x76f934[_0xdb3eff(0x1c9)]('click',deleteAllLocalKnowledgeBases);const _0x55e8e5=document[_0xdb3eff(0x161)](_0xdb3eff(0x17e));_0x55e8e5&&_0x55e8e5[_0xdb3eff(0x1c9)]('click',()=>moveAllKnowledgeBases('globalToLocal'));const _0x2b0405=document[_0xdb3eff(0x161)](_0xdb3eff(0x120));_0x2b0405&&_0x2b0405[_0xdb3eff(0x1c9)](_0xdb3eff(0x147),()=>moveAllKnowledgeBases('localToGlobal'));const _0xfb379a=[_0xdb3eff(0x113),_0xdb3eff(0x1e3)];_0xfb379a['forEach'](_0x1f9ebd=>{const _0x265d72=_0xdb3eff,_0x1ce69f=document[_0x265d72(0x161)](_0x1f9ebd);_0x1ce69f&&(_0x1ce69f['addEventListener'](_0x265d72(0x147),handleKbAction),_0x1ce69f[_0x265d72(0x1c9)](_0x265d72(0x1ac),handleKbAction));});}function toggleInjectionDetails(){const _0x22b348=_0x54d868,_0x3c0d28=document[_0x22b348(0x13a)](_0x22b348(0xd4))[_0x22b348(0x1fb)],_0xf22b5b=document[_0x22b348(0x161)](_0x22b348(0x110)),_0x5b2742=document['getElementById'](_0x22b348(0x1c4)),_0x13395a=_0x3c0d28==='1';_0xf22b5b[_0x22b348(0xfb)]=!_0x13395a,_0x5b2742[_0x22b348(0xfb)]=!_0x13395a;}function handleApiModeChange(){const _0x35ea9f=_0x54d868,_0x3a5809=document[_0x35ea9f(0x161)](_0x35ea9f(0x25c))['value'],_0xb26895=document[_0x35ea9f(0x161)](_0x35ea9f(0x274)),_0x3bfeac=document[_0x35ea9f(0x161)](_0x35ea9f(0x174)),_0x28d4cb=document[_0x35ea9f(0x161)](_0x35ea9f(0x27e)),_0x5e7aa6=_0x28d4cb['previousElementSibling'];if(!_0xb26895||!_0x3bfeac)return;_0xb26895[_0x35ea9f(0xd7)][_0x35ea9f(0x19c)]=_0x35ea9f(0x1f8),_0x3bfeac[_0x35ea9f(0xd7)]['display']=_0x35ea9f(0x1f8);switch(_0x3a5809){case _0x35ea9f(0x1ef):_0xb26895[_0x35ea9f(0xd7)][_0x35ea9f(0x19c)]=_0x35ea9f(0x1f2),_0x3bfeac['querySelector'](_0x35ea9f(0x173))[_0x35ea9f(0x217)]='Google\x20API\x20Key:',_0x3bfeac[_0x35ea9f(0x13a)](_0x35ea9f(0x26f))[_0x35ea9f(0xc4)]=_0x35ea9f(0x166);break;case'local_proxy':_0xb26895[_0x35ea9f(0x13a)](_0x35ea9f(0x173))[_0x35ea9f(0x217)]=_0x35ea9f(0x23f),_0xb26895['querySelector'](_0x35ea9f(0x26f))[_0x35ea9f(0xc4)]='例如\x20http://127.0.0.1:8000/v1',_0x3bfeac['style']['display']=_0x35ea9f(0x1f2);break;case _0x35ea9f(0x1ad):default:_0xb26895[_0x35ea9f(0x13a)](_0x35ea9f(0x173))[_0x35ea9f(0x217)]=_0x35ea9f(0x240),_0xb26895[_0x35ea9f(0x13a)](_0x35ea9f(0x26f))[_0x35ea9f(0xc4)]='输入兼容OpenAI的embeddings端点',_0x3bfeac[_0x35ea9f(0x13a)](_0x35ea9f(0x173))[_0x35ea9f(0x217)]=_0x35ea9f(0x134);break;}}function loadSettingsToUI(){const _0x331047=_0x54d868,_0x7eade5=_0x200707['getSettings']();if(!_0x7eade5)return;document[_0x331047(0x161)](_0x331047(0xe8))['checked']=_0x7eade5[_0x331047(0x176)][_0x331047(0x105)],document[_0x331047(0x161)](_0x331047(0x25c))['value']=_0x7eade5[_0x331047(0x176)]['apiEndpoint'],document[_0x331047(0x161)]('hly-custom-api-url')[_0x331047(0x1fb)]=_0x7eade5['retrieval'][_0x331047(0x11e)],document[_0x331047(0x161)](_0x331047(0xe1))[_0x331047(0x1fb)]=_0x7eade5[_0x331047(0x176)][_0x331047(0x15c)];const _0x3b2fce=document['getElementById'](_0x331047(0x27e));if(_0x3b2fce['options'][_0x331047(0x1a6)]===0x0){const _0x4ffa80=_0x7eade5[_0x331047(0x176)][_0x331047(0x18d)],_0x206224=new Option(_0x4ffa80,_0x4ffa80,!![],!![]);_0x3b2fce['add'](_0x206224);}_0x3b2fce['value']=_0x7eade5[_0x331047(0x176)][_0x331047(0x18d)],document[_0x331047(0x161)](_0x331047(0xdf))['checked']=_0x7eade5[_0x331047(0x176)]['notify'],document['getElementById']('hly-chunk-size')[_0x331047(0x1fb)]=_0x7eade5[_0x331047(0x1e5)]['chunkSize'],document[_0x331047(0x161)](_0x331047(0xe6))[_0x331047(0x1fb)]=_0x7eade5['advanced']['overlap'],document[_0x331047(0x161)](_0x331047(0xd2))[_0x331047(0x1fb)]=_0x7eade5['advanced'][_0x331047(0x127)],document[_0x331047(0x161)](_0x331047(0x171))[_0x331047(0x1fb)]=_0x7eade5['advanced'][_0x331047(0x21f)],document[_0x331047(0x161)](_0x331047(0x27f))[_0x331047(0x1fb)]=_0x7eade5[_0x331047(0x1e5)][_0x331047(0x142)],document['getElementById'](_0x331047(0x18e))[_0x331047(0x1fb)]=_0x7eade5[_0x331047(0x176)][_0x331047(0x13e)],document[_0x331047(0x161)](_0x331047(0x1b9))[_0x331047(0x1fb)]=_0x7eade5[_0x331047(0x111)][_0x331047(0x241)];const _0x530e2d=document['querySelector'](_0x331047(0x237)+_0x7eade5[_0x331047(0x111)]['position']+'\x22]');_0x530e2d&&(_0x530e2d[_0x331047(0x14b)]=!![]);document[_0x331047(0x161)](_0x331047(0x110))['value']=_0x7eade5[_0x331047(0x111)]['depth'],document['getElementById'](_0x331047(0x1c4))['value']=_0x7eade5[_0x331047(0x111)][_0x331047(0x109)],toggleInjectionDetails(),handleApiModeChange(),document['getElementById'](_0x331047(0x146))[_0x331047(0x14b)]=_0x7eade5[_0x331047(0x1b1)][_0x331047(0x105)],document[_0x331047(0x161)](_0x331047(0x1a2))['value']=_0x7eade5[_0x331047(0x1b1)][_0x331047(0x153)],document[_0x331047(0x161)](_0x331047(0x15e))[_0x331047(0x1fb)]=_0x7eade5[_0x331047(0x1b1)][_0x331047(0x1f3)],document[_0x331047(0x161)](_0x331047(0x100))[_0x331047(0x14b)]=_0x7eade5[_0x331047(0x1b1)][_0x331047(0x104)][_0x331047(0x1f4)],document[_0x331047(0x161)](_0x331047(0x186))[_0x331047(0x14b)]=_0x7eade5[_0x331047(0x1b1)]['messageTypes']['ai'];const _0x579f16=document[_0x331047(0x161)](_0x331047(0x22d)),_0xb7ade7=document[_0x331047(0x161)]('hly-tag-input'),_0x22530e=document[_0x331047(0x161)](_0x331047(0x24b));_0x579f16[_0x331047(0x14b)]=_0x7eade5['condensation'][_0x331047(0x182)],_0xb7ade7[_0x331047(0x1fb)]=_0x7eade5[_0x331047(0x1b1)]['tags'],_0x22530e[_0x331047(0xd7)][_0x331047(0x19c)]=_0x579f16[_0x331047(0x14b)]?_0x331047(0x1f8):'none',document[_0x331047(0x161)]('hly-rerank-enabled')[_0x331047(0x14b)]=_0x7eade5[_0x331047(0x155)][_0x331047(0x105)],document[_0x331047(0x161)](_0x331047(0x269))[_0x331047(0x1fb)]=_0x7eade5[_0x331047(0x155)]['url'],document[_0x331047(0x161)](_0x331047(0x212))[_0x331047(0x1fb)]=_0x7eade5['rerank'][_0x331047(0x15c)];const _0x431894=document[_0x331047(0x161)]('hly-rerank-model');if(_0x431894[_0x331047(0x21e)][_0x331047(0x1a6)]===0x0){const _0x50e500=_0x7eade5['rerank'][_0x331047(0x13f)];if(_0x50e500){const _0x35001b=new Option(_0x50e500,_0x50e500,!![],!![]);_0x431894[_0x331047(0x10b)](_0x35001b);}}_0x431894[_0x331047(0x1fb)]=_0x7eade5[_0x331047(0x155)][_0x331047(0x13f)],document[_0x331047(0x161)](_0x331047(0x10d))[_0x331047(0x1fb)]=_0x7eade5[_0x331047(0x155)][_0x331047(0x19b)],document[_0x331047(0x161)](_0x331047(0x267))[_0x331047(0x1fb)]=_0x7eade5[_0x331047(0x155)][_0x331047(0xc3)],document[_0x331047(0x161)](_0x331047(0x195))['checked']=_0x7eade5[_0x331047(0x155)][_0x331047(0x16b)];}function saveSettingsFromUI(_0x1b52cf=!![]){const _0x514b1f=_0x54d868,_0x186a62=document[_0x514b1f(0x161)]('hly-modal-container');if(!_0x186a62)return;const _0x381a59=_0x186a62['querySelectorAll'](_0x514b1f(0x13d));_0x381a59[_0x514b1f(0x1d6)](_0x58a12e=>{const _0x98a98a=_0x514b1f,_0x34ce0e=_0x58a12e['dataset'][_0x98a98a(0x23b)];if(!_0x34ce0e)return;let _0x244519;const _0x3a8259=_0x58a12e[_0x98a98a(0x27b)][_0x98a98a(0x20e)]||_0x98a98a(0x1d2);if(_0x58a12e['type']===_0x98a98a(0x1c8))_0x244519=_0x58a12e['checked'];else{if(_0x58a12e[_0x98a98a(0x20e)]===_0x98a98a(0x14e)){if(!_0x58a12e[_0x98a98a(0x14b)])return;_0x244519=_0x58a12e[_0x98a98a(0x1fb)];}else _0x244519=_0x58a12e[_0x98a98a(0x1fb)];}switch(_0x3a8259){case _0x98a98a(0x132):_0x244519=parseInt(_0x244519,0xa);break;case _0x98a98a(0x1d5):_0x244519=parseFloat(_0x244519);break;case _0x98a98a(0x177):if(typeof _0x244519!=='boolean')_0x244519=_0x244519===_0x98a98a(0x13c);break;}const _0x4f7836=_0x200707[_0x98a98a(0xc2)](),_0x1188d7=_0x34ce0e[_0x98a98a(0x118)]('.');let _0xf88a88=_0x4f7836;for(let _0x4d99d2=0x0;_0x4d99d2<_0x1188d7[_0x98a98a(0x1a6)]-0x1;_0x4d99d2++){_0xf88a88=_0xf88a88[_0x1188d7[_0x4d99d2]]=_0xf88a88[_0x1188d7[_0x4d99d2]]||{};}_0xf88a88[_0x1188d7[_0x1188d7[_0x98a98a(0x1a6)]-0x1]]=_0x244519;}),_0x200707[_0x514b1f(0x1ed)](),!_0x1b52cf&&(log(_0x514b1f(0x239),'success'),toastr['success']('翰林院设定已存档封印。','圣旨已达'));}function resetSettingsToUI(){const _0x498cd5=_0x54d868;confirm(_0x498cd5(0x1ab))&&(_0x200707['resetSettings'](),loadSettingsToUI(),toastr[_0x498cd5(0xe3)]('翰林院设定已重置为初始状态。','诏曰'));}async function updatePanelStatus(){const _0x3cde68=_0x54d868,_0x5bfc13=_0x200707[_0x3cde68(0x1e8)](),_0x59a66b=document['getElementById']('hly-current-character-name'),_0x5b9948=document['getElementById']('hly-current-chat-id');if(_0x5bfc13){const _0x9c16e5=_0x200707[_0x3cde68(0x1b2)]();_0x9c16e5&&(_0x59a66b[_0x3cde68(0x217)]=_0x3cde68(0xbe),_0x5b9948[_0x3cde68(0x217)]=_0x9c16e5['id'],_0x5b9948[_0x3cde68(0x1b5)]=_0x3cde68(0x204)+_0x9c16e5['id'],_0x59a66b[_0x3cde68(0x236)][_0x3cde68(0x10b)](_0x3cde68(0x131)),_0x5b9948[_0x3cde68(0x236)][_0x3cde68(0x10b)]('hly-locked-status'));}else _0x59a66b[_0x3cde68(0x217)]=_0x5389a1[_0x3cde68(0x159)](),_0x5b9948[_0x3cde68(0x217)]=_0x5389a1[_0x3cde68(0x107)]()||'无',_0x5b9948[_0x3cde68(0x1b5)]='',_0x59a66b[_0x3cde68(0x236)]['remove'](_0x3cde68(0x131)),_0x5b9948['classList'][_0x3cde68(0x149)](_0x3cde68(0x131));const _0x4fc8eb=document[_0x3cde68(0x161)]('hly-current-vector-count');_0x4fc8eb[_0x3cde68(0x217)]=_0x3cde68(0xca);try{const _0x2ec67b=await _0x200707['getVectorCount']();_0x4fc8eb[_0x3cde68(0x217)]=_0x2ec67b;}catch(_0x44a10c){console[_0x3cde68(0x246)](_0x3cde68(0xf9),_0x44a10c),_0x4fc8eb['textContent']=_0x3cde68(0x27a),_0x4fc8eb[_0x3cde68(0x1b5)]=_0x3cde68(0x189)+_0x44a10c[_0x3cde68(0x183)];}const _0x30998b=document['getElementById'](_0x3cde68(0x1a8));if(_0x30998b&&!_0x30998b[_0x3cde68(0x27b)][_0x3cde68(0x18c)]){const _0x3fbd4a=_0x200707['getSettings'](),_0x3d0b3a=await _0x200707[_0x3cde68(0x1bb)]();if(_0x3fbd4a[_0x3cde68(0x1ec)]&&_0x3fbd4a[_0x3cde68(0x1ec)][_0x3d0b3a]){const _0x418283=_0x3fbd4a['condensationHistory'][_0x3d0b3a];_0x30998b[_0x3cde68(0x192)]=_0x3cde68(0x1d0)+_0x418283[_0x3cde68(0x160)]+_0x3cde68(0x128)+_0x418283['end']+_0x3cde68(0xf8);}else _0x30998b[_0x3cde68(0x192)]=_0x3cde68(0x1e4);}renderKnowledgeBases();}async function moveAllKnowledgeBases(_0x13b433){const _0x19f494=_0x54d868,_0x45ce1a=_0x13b433===_0x19f494(0x23d),_0x137222=_0x45ce1a?_0x19f494(0x190):'local',_0x4510ff=_0x45ce1a?'局部':'全局',_0x5c1483=_0x45ce1a?_0x200707[_0x19f494(0x191)]():_0x200707[_0x19f494(0xdd)](),_0x5d4fec=Object[_0x19f494(0x1a5)](_0x5c1483);if(_0x5d4fec[_0x19f494(0x1a6)]===0x0){toastr[_0x19f494(0xe3)]('源区域('+(_0x45ce1a?'全局':'局部')+')没有任何知识库可供移动。','圣谕');return;}if(!confirm('您确定要将\x20'+_0x5d4fec[_0x19f494(0x1a6)]+_0x19f494(0x1d9)+(_0x45ce1a?'全局':'局部')+_0x19f494(0x14c)+_0x4510ff+_0x19f494(0x1cd)))return;log(_0x19f494(0x12c)+_0x5d4fec['length']+'\x20个知识库从\x20'+_0x137222+_0x19f494(0x254)+(_0x45ce1a?'local':'global')+_0x19f494(0xca),_0x19f494(0xe3));const _0x5c111=_0x5d4fec[_0x19f494(0x224)](_0x2aec2e=>_0x200707[_0x19f494(0xe9)](_0x2aec2e,_0x137222));try{await Promise['all'](_0x5c111),toastr[_0x19f494(0x15b)](_0x19f494(0x150)+_0x5d4fec[_0x19f494(0x1a6)]+_0x19f494(0xf4),_0x19f494(0x125)),log('批量移动完成。',_0x19f494(0x15b));}catch(_0x1e2a14){toastr[_0x19f494(0x246)]('批量移动过程中发生错误:\x20'+_0x1e2a14['message'],'警报'),log('批量移动失败:\x20'+_0x1e2a14[_0x19f494(0x183)],'error');}finally{await updatePanelStatus();}}async function deleteAllLocalKnowledgeBases(){const _0x2a5093=_0x54d868,_0x52e740=_0x200707[_0x2a5093(0xdd)](),_0x56089b=Object[_0x2a5093(0x1a5)](_0x52e740);if(_0x56089b[_0x2a5093(0x1a6)]===0x0){toastr[_0x2a5093(0xe3)]('当前角色没有任何局部知识库可供删除。','圣谕');return;}if(!confirm(_0x2a5093(0xba)+_0x56089b[_0x2a5093(0x1a6)]+_0x2a5093(0x115)))return;toastr[_0x2a5093(0xe3)]('正在删除\x20'+_0x56089b[_0x2a5093(0x1a6)]+_0x2a5093(0x156),'圣旨'),log('开始批量删除\x20'+_0x56089b[_0x2a5093(0x1a6)]+_0x2a5093(0x156),'warn');let _0x56af86=0x0,_0x17ee39=0x0;for(const _0x355a96 of _0x56089b){try{await _0x200707['removeKnowledgeBase'](_0x355a96,'local'),_0x56af86++;}catch(_0x50bbc6){_0x17ee39++,log('删除局部知识库\x20'+_0x355a96+_0x2a5093(0x14a)+_0x50bbc6[_0x2a5093(0x183)],_0x2a5093(0x246));}}_0x17ee39>0x0?toastr[_0x2a5093(0x246)](_0x2a5093(0x216)+_0x17ee39+_0x2a5093(0x1eb),'警报'):toastr[_0x2a5093(0x15b)](_0x2a5093(0x150)+_0x56af86+'\x20个局部知识库均已成功删除。',_0x2a5093(0x125)),log(_0x2a5093(0xec)+_0x56af86+_0x2a5093(0x243)+_0x17ee39,'info'),await updatePanelStatus();}async function renderKnowledgeBases(){const _0x22b3ae=_0x54d868,_0x61e8da=document[_0x22b3ae(0x161)](_0x22b3ae(0x113)),_0x507363=document[_0x22b3ae(0x161)](_0x22b3ae(0x1e3)),_0x19d5f8=document['getElementById']('hly-local-kb-char-name');if(!_0x61e8da||!_0x507363||!_0x19d5f8)return;_0x19d5f8[_0x22b3ae(0x217)]=_0x5389a1[_0x22b3ae(0x159)]()||'当前角色';try{const _0xbd4c12=_0x200707[_0x22b3ae(0xdd)](),_0x1a1e14=_0x200707['getGlobalKnowledgeBases']();await _renderKbList(_0xbd4c12,_0x61e8da,_0x22b3ae(0xc9),_0x22b3ae(0x271)),await _renderKbList(_0x1a1e14,_0x507363,_0x22b3ae(0x190),_0x22b3ae(0x1e7));}catch(_0x3bb671){console['error']('[翰林院-枢纽]\x20渲染知识库列表失败:',_0x3bb671),_0x61e8da[_0x22b3ae(0x192)]='<p\x20class=\x22hly-notes\x20log-error\x22><i>加载失败:\x20'+_0x3bb671['message']+_0x22b3ae(0x1f7),_0x507363[_0x22b3ae(0x192)]='<p\x20class=\x22hly-notes\x20log-error\x22><i>加载失败:\x20'+_0x3bb671['message']+_0x22b3ae(0x1f7);}}async function _renderKbList(_0x3f994e,_0x336d17,_0x1b555e,_0x59e9c7){const _0x13229d=_0x54d868,_0x390c08=document[_0x13229d(0x161)](_0x59e9c7);_0x336d17[_0x13229d(0x192)]='',_0x336d17['appendChild'](_0x390c08);if(Object[_0x13229d(0x1a5)](_0x3f994e)[_0x13229d(0x1a6)]===0x0){_0x390c08[_0x13229d(0xd7)]['display']='block';return;}_0x390c08[_0x13229d(0xd7)][_0x13229d(0x19c)]=_0x13229d(0x1f2);for(const [_0x317fd4,_0xac050a]of Object[_0x13229d(0xe4)](_0x3f994e)){const _0x31b244=document[_0x13229d(0x225)]('div');_0x31b244[_0x13229d(0x10c)]=_0x13229d(0xe0),_0x31b244[_0x13229d(0x27b)][_0x13229d(0x112)]=_0x317fd4,_0x31b244[_0x13229d(0x27b)][_0x13229d(0x1e2)]=_0x1b555e;const _0x2d926e=await _0x200707[_0x13229d(0xf7)](_0x317fd4,_0x1b555e),_0x32f6dc=_0x1b555e===_0x13229d(0xc9)?_0x13229d(0x151):_0x13229d(0x1be);_0x31b244[_0x13229d(0x192)]=_0x13229d(0x201)+_0x317fd4+'\x22>'+_0xac050a['name']+'\x20('+_0x2d926e+_0x13229d(0x116)+_0x32f6dc+_0x13229d(0x168)+(_0xac050a[_0x13229d(0x105)]?_0x13229d(0x14b):'')+_0x13229d(0x193),_0x336d17['appendChild'](_0x31b244);}}async function handleKbAction(_0x2ecd3e){const _0x3be1ad=_0x54d868,_0x13add1=_0x2ecd3e['target'],_0x1dc724=_0x13add1[_0x3be1ad(0x17b)]('.hly-kb-list-item');if(!_0x1dc724)return;const _0x36d91b=_0x1dc724[_0x3be1ad(0x27b)]['kbId'],_0xbfa003=_0x1dc724['dataset'][_0x3be1ad(0x1e2)],_0xc1e59a=_0x1dc724['querySelector']('.hly-kb-name')[_0x3be1ad(0x217)][_0x3be1ad(0x118)]('\x20(')[0x0];if(_0x13add1['classList'][_0x3be1ad(0xc8)](_0x3be1ad(0x229))){if(confirm('您确定要永久删除知识库【'+_0xc1e59a+_0x3be1ad(0x24d)))try{await _0x200707[_0x3be1ad(0x16d)](_0x36d91b,_0xbfa003),log(_0x3be1ad(0x221)+_0xc1e59a+_0x3be1ad(0x25a)+_0x36d91b+_0x3be1ad(0x141),'success'),toastr[_0x3be1ad(0x15b)](_0x3be1ad(0x19a)+_0xc1e59a+_0x3be1ad(0x1f1)),await updatePanelStatus();}catch(_0x3e0c35){log(_0x3be1ad(0x23c)+_0xc1e59a+_0x3be1ad(0x14a)+_0x3e0c35['message'],_0x3be1ad(0x246)),toastr['error'](_0x3be1ad(0x26e)+_0x3e0c35['message']);}}if(_0x13add1[_0x3be1ad(0x17b)](_0x3be1ad(0xc0))){const _0x177c7c=_0xbfa003===_0x3be1ad(0xc9)?'全局':'局部';if(confirm(_0x3be1ad(0xe7)+_0xc1e59a+_0x3be1ad(0x14c)+_0x177c7c+'】吗?'))try{await _0x200707[_0x3be1ad(0xe9)](_0x36d91b,_0xbfa003),await updatePanelStatus();}catch(_0x42c00b){log(_0x3be1ad(0x164)+_0xc1e59a+_0x3be1ad(0x14a)+_0x42c00b[_0x3be1ad(0x183)],_0x3be1ad(0x246)),toastr[_0x3be1ad(0x246)](_0x3be1ad(0x26b)+_0x42c00b[_0x3be1ad(0x183)]);}}if(_0x13add1['classList']['contains']('hly-kb-toggle')&&_0x2ecd3e[_0x3be1ad(0x20e)]===_0x3be1ad(0x1ac))try{await _0x200707['toggleKnowledgeBase'](_0x36d91b,_0xbfa003),log(_0x3be1ad(0x221)+_0xc1e59a+'\x20的状态已切换',_0x3be1ad(0x15b)),await updatePanelStatus();}catch(_0x156fd){log(_0x3be1ad(0xd1)+_0xc1e59a+_0x3be1ad(0xde)+_0x156fd[_0x3be1ad(0x183)],_0x3be1ad(0x246)),toastr[_0x3be1ad(0x246)]('切换状态失败:\x20'+_0x156fd[_0x3be1ad(0x183)]);}}async function testApi(){const _0x1940d2=_0x54d868;toastr[_0x1940d2(0xe3)](_0x1940d2(0x1af),'圣旨');try{await _0x200707[_0x1940d2(0x13b)](),toastr[_0x1940d2(0x15b)](_0x1940d2(0x114),'圣意');}catch(_0x141da2){toastr[_0x1940d2(0x246)](_0x1940d2(0x1f0)+_0x141da2['message'],'警报');}}async function fetchHLYEmbeddingModels(){const _0x24c162=_0x54d868,_0x4f7796=document[_0x24c162(0x161)](_0x24c162(0x27e)),_0x4ae1f5=_0x4f7796[_0x24c162(0x1fb)];_0x4f7796['innerHTML']='<option>正在获取...</option>',_0x4f7796[_0x24c162(0xfb)]=!![];try{log(_0x24c162(0xf0),_0x24c162(0xe3));const _0x311c45=await _0x200707[_0x24c162(0x19d)]();_0x4f7796['innerHTML']='';if(_0x311c45[_0x24c162(0x1a6)]===0x0){_0x4f7796[_0x24c162(0x192)]=_0x24c162(0x272),toastr[_0x24c162(0x1d3)](_0x24c162(0x1b7),_0x24c162(0x12b)),log(_0x24c162(0x1b7),'warn');return;}_0x311c45[_0x24c162(0x1d6)](_0x18b7bd=>{const _0x57c471=new Option(_0x18b7bd,_0x18b7bd);_0x4f7796['add'](_0x57c471);}),_0x311c45[_0x24c162(0x260)](_0x4ae1f5)?_0x4f7796[_0x24c162(0x1fb)]=_0x4ae1f5:_0x4f7796[_0x24c162(0x1c0)]=0x0,toastr[_0x24c162(0x15b)]('成功获取\x20'+_0x311c45[_0x24c162(0x1a6)]+_0x24c162(0x1b6),'圣意'),log(_0x24c162(0x1ca)+_0x311c45[_0x24c162(0x1a6)]+_0x24c162(0x1b6),_0x24c162(0x15b));}catch(_0x5500f4){console[_0x24c162(0x246)](_0x24c162(0x21a),_0x5500f4),toastr[_0x24c162(0x246)](_0x24c162(0xc6)+_0x5500f4['message'],'严重错误'),log(_0x24c162(0xc6)+_0x5500f4['message'],_0x24c162(0x246)),_0x4f7796[_0x24c162(0x192)]=_0x24c162(0x1e0);}finally{_0x4f7796[_0x24c162(0xfb)]=![];}}async function fetchHLYRerankModels(){const _0x67c46a=_0x54d868,_0x36e713=document[_0x67c46a(0x161)](_0x67c46a(0x199)),_0xbba273=_0x36e713[_0x67c46a(0x1fb)];_0x36e713[_0x67c46a(0x192)]=_0x67c46a(0x245),_0x36e713['disabled']=!![];try{log(_0x67c46a(0xda),'info');const _0x457c03=await _0x200707[_0x67c46a(0x232)]();_0x36e713[_0x67c46a(0x192)]='';if(_0x457c03['length']===0x0){_0x36e713['innerHTML']=_0x67c46a(0x272),toastr[_0x67c46a(0x1d3)](_0x67c46a(0x11f),_0x67c46a(0x12b)),log(_0x67c46a(0x11f),_0x67c46a(0x1d3));return;}_0x457c03[_0x67c46a(0x1d6)](_0x137eb6=>{const _0x40629c=new Option(_0x137eb6,_0x137eb6);_0x36e713['add'](_0x40629c);}),_0x457c03['includes'](_0xbba273)?_0x36e713['value']=_0xbba273:_0x36e713['selectedIndex']=0x0,toastr[_0x67c46a(0x15b)]('成功获取\x20'+_0x457c03['length']+_0x67c46a(0xd0),'圣意'),log(_0x67c46a(0x1ca)+_0x457c03[_0x67c46a(0x1a6)]+_0x67c46a(0xd0),'success');}catch(_0x548c3f){console['error'](_0x67c46a(0x247),_0x548c3f),toastr[_0x67c46a(0x246)](_0x67c46a(0x1ff)+_0x548c3f[_0x67c46a(0x183)],_0x67c46a(0x108)),log(_0x67c46a(0x1ff)+_0x548c3f[_0x67c46a(0x183)],_0x67c46a(0x246)),_0x36e713[_0x67c46a(0x192)]=_0x67c46a(0x1e0);}finally{_0x36e713['disabled']=![];}}async function purgeStorage(){const _0x565ae8=_0x54d868;if(confirm('此操作将彻底清空当前角色的所有忆识(向量),且无法恢复。您确定要继续吗?')){toastr[_0x565ae8(0xe3)](_0x565ae8(0x1e9),'圣旨');const _0x4c867d=await _0x200707[_0x565ae8(0x253)]();_0x4c867d?toastr[_0x565ae8(0x15b)](_0x565ae8(0x16e),'圣意'):toastr[_0x565ae8(0x246)](_0x565ae8(0x137),'警报'),await updatePanelStatus();}}async function startCondensation(){const _0x2c77d7=_0x54d868,_0x1e39fe=document[_0x2c77d7(0x161)](_0x2c77d7(0x1a8)),_0x2b01cc=_0x1e39fe['dataset'][_0x2c77d7(0xfd)],_0x15a907=document['getElementById'](_0x2c77d7(0x1a2))[_0x2c77d7(0x1fb)],_0x4c34fe=document[_0x2c77d7(0x161)](_0x2c77d7(0x15e))[_0x2c77d7(0x1fb)],_0x5b1541={'start':parseInt(_0x15a907),'end':parseInt(_0x4c34fe)};try{let _0x3999c9;_0x2b01cc?(log(_0x2c77d7(0xfa),'info'),toastr[_0x2c77d7(0xe3)]('正在处理您确认后的文书...','圣旨'),_0x3999c9=JSON[_0x2c77d7(0x278)](_0x2b01cc),delete _0x1e39fe['dataset'][_0x2c77d7(0xfd)]):(log(_0x2c77d7(0x106),_0x2c77d7(0xe3)),toastr[_0x2c77d7(0xe3)](_0x2c77d7(0x234),'圣旨'),_0x3999c9=_0x200707['getMessagesForCondensation']());if(!_0x3999c9||_0x3999c9['length']===0x0){toastr[_0x2c77d7(0x12a)](_0x2c77d7(0x16a),_0x2c77d7(0x12b)),_0x1e39fe[_0x2c77d7(0x217)]=_0x2c77d7(0x203);return;}_0x1e39fe[_0x2c77d7(0x217)]=_0x2c77d7(0x226)+_0x3999c9[_0x2c77d7(0x1a6)]+_0x2c77d7(0x15a),toastr['info'](_0x2c77d7(0x226)+_0x3999c9['length']+_0x2c77d7(0x15a),_0x2c77d7(0x12b));const _0x473ca0=await _0x200707['processCondensation'](_0x3999c9,log,_0x5b1541);if(_0x473ca0['success']){toastr['success'](_0x2c77d7(0xfc)+_0x473ca0[_0x2c77d7(0x20b)]+'\x20条忆识。','大功告成');const _0x4fabfa=_0x5b1541['end']===0x0?getContext()[_0x2c77d7(0x219)][_0x2c77d7(0x1a6)]:_0x5b1541[_0x2c77d7(0x163)];_0x1e39fe[_0x2c77d7(0x217)]=_0x2c77d7(0x233)+_0x5b1541['start']+_0x2c77d7(0xf6)+_0x4fabfa+_0x2c77d7(0xd5)+_0x473ca0[_0x2c77d7(0x20b)]+_0x2c77d7(0xd9);}else throw new Error(_0x473ca0[_0x2c77d7(0x246)]||_0x2c77d7(0x172));}catch(_0x5d321b){console[_0x2c77d7(0x246)](_0x2c77d7(0x211),_0x5d321b),toastr[_0x2c77d7(0x246)](_0x2c77d7(0x1aa)+_0x5d321b['message'],_0x2c77d7(0x108)),_0x1e39fe[_0x2c77d7(0x217)]=_0x2c77d7(0x1aa)+_0x5d321b[_0x2c77d7(0x183)];}finally{await updatePanelStatus();}}function _0x4087(_0x6fd71c,_0x53bcaa){const _0x2bc0f4=_0x2bc0();return _0x4087=function(_0x40870d,_0x30f75f){_0x40870d=_0x40870d-0xb8;let _0x7b323d=_0x2bc0f4[_0x40870d];return _0x7b323d;},_0x4087(_0x6fd71c,_0x53bcaa);}async function loadWorldbookList(){const _0x14fead=_0x54d868,_0x3eb590=document['getElementById'](_0x14fead(0x158)),_0x4ebc0b=document[_0x14fead(0x161)]('hly-worldbook-search');if(!_0x3eb590)return;try{log(_0x14fead(0x1bf),_0x14fead(0xe3));const _0x44ab59=await _0x181516['getAvailableWorldbooks']();window[_0x14fead(0xc7)]=_0x44ab59,updateWorldbookOptions(_0x3eb590,'',_0x44ab59);if(_0x4ebc0b){const _0x1bb109=debounce(_0x2b1e31=>{updateWorldbookOptions(_0x3eb590,_0x2b1e31,_0x44ab59);},0x12c);_0x4ebc0b[_0x14fead(0x1c9)](_0x14fead(0x26f),_0x108733=>{const _0x3a50a0=_0x14fead;_0x1bb109(_0x108733[_0x3a50a0(0x17d)][_0x3a50a0(0x1fb)]);});}log(_0x14fead(0x1c1)+_0x44ab59[_0x14fead(0x1a6)]+'\x20个书库。',_0x14fead(0x15b));}catch(_0x257a7e){console[_0x14fead(0x246)](_0x14fead(0x1a3),_0x257a7e),log(_0x14fead(0x207)+_0x257a7e[_0x14fead(0x183)],'error'),_0x3eb590&&(_0x3eb590['innerHTML']=_0x14fead(0x19e));}}function updateWorldbookOptions(_0xd9ca03,_0x2b6b6e,_0x5f0290){const _0x560fe0=_0x54d868,_0x3c58a2=filterWorldbooks(_0x2b6b6e,_0x5f0290),_0x39392b=_0xd9ca03[_0x560fe0(0x1fb)];_0xd9ca03['innerHTML']=_0x560fe0(0xcb);if(_0x3c58a2[_0x560fe0(0x1a6)]===0x0){_0xd9ca03[_0x560fe0(0x192)]=_0x2b6b6e['trim']()?_0x560fe0(0x25d):_0x560fe0(0x1a7);return;}_0x3c58a2['forEach'](_0x2a27d9=>{const _0x313b5d=_0x560fe0,_0x5aed26=document[_0x313b5d(0x225)]('option');_0x5aed26['value']=_0x2a27d9,_0x5aed26[_0x313b5d(0x217)]=_0x2a27d9,_0xd9ca03[_0x313b5d(0x24c)](_0x5aed26);}),_0x39392b&&_0x3c58a2[_0x560fe0(0x260)](_0x39392b)&&(_0xd9ca03[_0x560fe0(0x1fb)]=_0x39392b);}async function handleWorldbookSelectionChange(){const _0x1353d0=_0x54d868,_0x1365ca=document[_0x1353d0(0x161)](_0x1353d0(0x158)),_0xa518a1=document['getElementById'](_0x1353d0(0x18b)),_0x509911=document[_0x1353d0(0x161)](_0x1353d0(0x119)),_0x41fd34=document[_0x1353d0(0x161)](_0x1353d0(0x18a)),_0x2b2dfe=_0x1365ca[_0x1353d0(0x1fb)];_0xa518a1['disabled']=!![],_0xa518a1[_0x1353d0(0x13a)](_0x1353d0(0xed))[_0x1353d0(0x217)]=_0x1353d0(0x206),_0x509911[_0x1353d0(0x192)]='',_0x509911[_0x1353d0(0xd7)][_0x1353d0(0x19c)]=_0x1353d0(0x1f2);_0x41fd34&&(_0x41fd34[_0x1353d0(0x1fb)]='');if(!_0x2b2dfe){_0xa518a1[_0x1353d0(0x13a)](_0x1353d0(0xed))[_0x1353d0(0x217)]=_0x1353d0(0x136);return;}try{log('正在为《'+_0x2b2dfe+'》获取条目列表...',_0x1353d0(0xe3));const _0x56b36c=await _0x181516[_0x1353d0(0x10a)](_0x2b2dfe);if(_0x56b36c[_0x1353d0(0x1a6)]===0x0){_0xa518a1[_0x1353d0(0x13a)]('span')[_0x1353d0(0x217)]=_0x1353d0(0x1c5);return;}window['allEntries']=_0x56b36c,updateEntryOptions('',_0x56b36c);if(_0x41fd34){_0x41fd34[_0x1353d0(0x24f)](_0x1353d0(0x26f),_0x41fd34[_0x1353d0(0x179)]);const _0x4af836=debounce(_0x167f1f=>{updateEntryOptions(_0x167f1f,_0x56b36c);},0x12c);_0x41fd34[_0x1353d0(0x179)]=_0x3f64a3=>{const _0xc887d4=_0x1353d0;_0x4af836(_0x3f64a3[_0xc887d4(0x17d)][_0xc887d4(0x1fb)]);},_0x41fd34[_0x1353d0(0x1c9)](_0x1353d0(0x26f),_0x41fd34[_0x1353d0(0x179)]);}log('成功加载\x20'+_0x56b36c[_0x1353d0(0x1a6)]+_0x1353d0(0x145),'success');}catch(_0x49776e){console[_0x1353d0(0x246)](_0x1353d0(0x257)+_0x2b2dfe+_0x1353d0(0x202),_0x49776e),log(_0x1353d0(0x230)+_0x49776e[_0x1353d0(0x183)],'error'),_0xa518a1['querySelector'](_0x1353d0(0xed))[_0x1353d0(0x217)]='加载失败';}finally{_0xa518a1[_0x1353d0(0xfb)]=![];}}function updateEntryOptions(_0xf0c51f,_0x5cb14d){const _0x5a6ea5=_0x54d868,_0x2010ac=document['getElementById'](_0x5a6ea5(0x119)),_0x2e09d5=document[_0x5a6ea5(0x161)](_0x5a6ea5(0x18b)),_0x5e6afa=filterWorldbookEntries(_0xf0c51f,_0x5cb14d);_0x2010ac[_0x5a6ea5(0x192)]='';const _0x4bb3f9=_0x5a6ea5(0xf2);_0x2010ac['insertAdjacentHTML'](_0x5a6ea5(0xfe),_0x4bb3f9);if(_0x5e6afa[_0x5a6ea5(0x1a6)]===0x0){const _0x5a89fe='<div\x20class=\x22hly-no-results\x22>未找到匹配的条目</div>';_0x2010ac[_0x5a6ea5(0x135)](_0x5a6ea5(0xfe),_0x5a89fe),_0x2e09d5[_0x5a6ea5(0x13a)](_0x5a6ea5(0xed))[_0x5a6ea5(0x217)]='未找到匹配的条目';return;}_0x5e6afa[_0x5a6ea5(0x1d6)](_0x43bc7a=>{const _0xd399fd=_0x5a6ea5,_0xa2d12c=_0xf0c51f?highlightSearchMatch(_0x43bc7a[_0xd399fd(0x17a)],_0xf0c51f):_0x43bc7a[_0xd399fd(0x17a)],_0x489a34=_0xd399fd(0x1da)+_0x43bc7a[_0xd399fd(0x17a)]+_0xd399fd(0x1f6)+_0x43bc7a[_0xd399fd(0x11d)]+_0xd399fd(0x16f)+_0x43bc7a[_0xd399fd(0x11d)]+_0xd399fd(0x1ae)+_0xa2d12c+_0xd399fd(0x22e);_0x2010ac[_0xd399fd(0x135)](_0xd399fd(0xfe),_0x489a34);}),_0x2e09d5[_0x5a6ea5(0x13a)]('span')[_0x5a6ea5(0x217)]=_0x5a6ea5(0x25f)+_0x5e6afa[_0x5a6ea5(0x1a6)]+'\x20个条目';}async function startHistoriography(){const _0x1eb843=_0x54d868,_0x20e443=document[_0x1eb843(0x161)]('hly-hist-select-library')[_0x1eb843(0x1fb)],_0x1f2116=document['getElementById'](_0x1eb843(0x119)),_0x38f044=document[_0x1eb843(0x161)](_0x1eb843(0x1de)),_0x5c3b7d=Array[_0x1eb843(0x1fe)](_0x1f2116[_0x1eb843(0x21c)](_0x1eb843(0xcd)))[_0x1eb843(0x224)](_0x8b582e=>_0x8b582e[_0x1eb843(0x1fb)]);if(!_0x20e443||_0x5c3b7d[_0x1eb843(0x1a6)]===0x0){toastr['warning'](_0x1eb843(0x249),_0x1eb843(0x214));return;}_0x38f044[_0x1eb843(0x217)]=_0x1eb843(0x178)+_0x20e443+_0x1eb843(0x1b4)+_0x5c3b7d[_0x1eb843(0x1a6)]+_0x1eb843(0x20f),toastr['info']('批量编纂任务已开始...','圣旨'),log(_0x1eb843(0x1d7)+_0x20e443+_0x1eb843(0x1b4)+_0x5c3b7d[_0x1eb843(0x1a6)]+'\x20个条目进行编纂...','info');try{const _0x179a79=await _0x181516[_0x1eb843(0x140)](_0x20e443,_0x5c3b7d);_0x38f044['textContent']=_0x179a79['content'],_0x179a79[_0x1eb843(0x15b)]?toastr['success'](_0x1eb843(0x22c),_0x1eb843(0x125)):toastr[_0x1eb843(0x12a)](_0x1eb843(0x1e6),'圣谕'),log('对《'+_0x20e443+'》的批量编纂任务已完成。成功:\x20'+_0x179a79[_0x1eb843(0x1db)]+',\x20向量:\x20'+_0x179a79[_0x1eb843(0x218)],_0x1eb843(0x15b));}catch(_0x1b099f){console[_0x1eb843(0x246)](_0x1eb843(0x19f),_0x1b099f),toastr['error'](_0x1eb843(0x20a)+_0x1b099f[_0x1eb843(0x183)],_0x1eb843(0x108)),_0x38f044[_0x1eb843(0x217)]='编纂失败:\x20'+_0x1b099f[_0x1eb843(0x183)];}finally{await updatePanelStatus();}}async function showStats(){const _0x13862d=_0x54d868;try{log('用户请求查看宝库状态。','info'),toastr[_0x13862d(0xe3)]('正在查询宝库状态...','圣旨');const _0x5e0866=await _0x200707[_0x13862d(0xf7)](),_0x3d78f9=await _0x200707[_0x13862d(0x1bb)](),_0xc2a38b=_0x200707[_0x13862d(0xc2)](),_0xabed44='\x0a<pre>\x0a翰林院宝库状态\x0a--------------------\x0a集合ID:\x20'+_0x3d78f9+_0x13862d(0x1cf)+_0x5e0866+_0x13862d(0x25e)+_0xc2a38b['retrieval'][_0x13862d(0xee)]+_0x13862d(0x1e1)+_0xc2a38b[_0x13862d(0x176)][_0x13862d(0x18d)]+'\x0a</pre>\x0a\x20\x20\x20\x20\x20\x20\x20\x20';toastr[_0x13862d(0xe3)](_0xabed44,_0x13862d(0x22b),{'timeOut':0x3a98,'extendedTimeOut':0x1388,'tapToDismiss':!![],'closeButton':!![]}),log(_0x13862d(0x242)+_0x3d78f9+_0x13862d(0xeb)+_0x5e0866,_0x13862d(0x15b));}catch(_0x23332c){console['error']('[翰林院-枢纽]\x20查询宝库状态失败:',_0x23332c),toastr['error'](_0x13862d(0x170)+_0x23332c[_0x13862d(0x183)],_0x13862d(0x108)),log(_0x13862d(0x170)+_0x23332c['message'],_0x13862d(0x246));}}function showExclusionRulesModal(){const _0xa82e76=_0x54d868,_0x410f1c=_0x200707[_0xa82e76(0xc2)](),_0x27f108=_0x410f1c[_0xa82e76(0x1b1)][_0xa82e76(0xbd)]||[],_0x609275=(_0x3f7e2e={'start':'','end':''},_0x1bc513)=>'\x0a\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22hly-exclusion-rule-row\x22\x20data-index=\x22'+_0x1bc513+_0xa82e76(0x252)+_0x3f7e2e[_0xa82e76(0x160)]+_0xa82e76(0x277)+_0x3f7e2e['end']+_0xa82e76(0xbb),_0x2e46c1=_0x27f108[_0xa82e76(0x224)](_0x609275)[_0xa82e76(0x11c)](''),_0x2092ba='\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>'+_0x2e46c1+_0xa82e76(0x1ce);showHtmlModal(_0xa82e76(0x1fc),_0x2092ba,{'okText':_0xa82e76(0x21d),'onOk':_0x58e211=>{const _0x14ec90=_0xa82e76,_0x311f21=[];_0x58e211['find']('.hly-exclusion-rule-row')[_0x14ec90(0x27c)](function(){const _0x504a62=_0x14ec90,_0x17e1e7=$(this)[_0x504a62(0xc1)](_0x504a62(0x26f))['eq'](0x0)[_0x504a62(0x184)]()[_0x504a62(0x251)](),_0x57cc5a=$(this)[_0x504a62(0xc1)](_0x504a62(0x26f))['eq'](0x1)[_0x504a62(0x184)]()[_0x504a62(0x251)]();_0x17e1e7&&_0x57cc5a&&_0x311f21[_0x504a62(0x261)]({'start':_0x17e1e7,'end':_0x57cc5a});}),updateAndSaveSetting(_0x14ec90(0xf3),_0x311f21),toastr[_0x14ec90(0x15b)](_0x14ec90(0x16c),'圣旨已达');}});const _0x4f50d3=document[_0xa82e76(0x161)](_0xa82e76(0x1fd)),_0x5c9005=_0x4f50d3[_0xa82e76(0x13a)]('#hly-rules-list');_0x4f50d3[_0xa82e76(0x13a)](_0xa82e76(0x1ba))['addEventListener'](_0xa82e76(0x147),()=>{const _0x512994=_0xa82e76,_0x2f28b3=_0x5c9005[_0x512994(0x1d8)]['length'],_0x13c3a5=_0x609275({'start':'','end':''},_0x2f28b3);_0x5c9005[_0x512994(0x135)](_0x512994(0xfe),_0x13c3a5);}),_0x5c9005[_0xa82e76(0x1c9)]('click',_0x388e64=>{const _0xa5956e=_0xa82e76;_0x388e64[_0xa5956e(0x17d)]['classList'][_0xa5956e(0xc8)](_0xa5956e(0xc5))&&_0x388e64[_0xa5956e(0x17d)][_0xa5956e(0x17b)](_0xa5956e(0xbc))[_0xa5956e(0x149)]();});}function previewCondensation(){const _0x37aded=_0x54d868,_0x56dd0b=document[_0x37aded(0x161)](_0x37aded(0x1a8));try{const _0x3c495e=_0x200707[_0x37aded(0xc2)](),_0x1004f0=_0x3c495e[_0x37aded(0x1b1)][_0x37aded(0xbd)]||[],_0x1c0bab={'user':document['getElementById'](_0x37aded(0x100))[_0x37aded(0x14b)],'ai':document['getElementById'](_0x37aded(0x186))['checked']},_0x5f4d7d=document[_0x37aded(0x161)](_0x37aded(0x22d))['checked'],_0x13e590=_0x5f4d7d?document[_0x37aded(0x161)](_0x37aded(0x268))['value']['split'](',')['map'](_0x2ce7f2=>_0x2ce7f2[_0x37aded(0x251)]())[_0x37aded(0x1ee)](Boolean):[],_0x19bbe5=_0x200707[_0x37aded(0x256)](_0x1c0bab);if(!_0x19bbe5||_0x19bbe5['length']===0x0){_0x56dd0b[_0x37aded(0x217)]=_0x37aded(0x222),toastr[_0x37aded(0x12a)](_0x37aded(0x203),_0x37aded(0x12b));return;}const _0x43ae57=getContext()['chat'],_0x38c6b1=_0x19bbe5['map']((_0x683be1,_0x3a5b8a)=>{const _0x439e3a=_0x37aded;let _0x28eb4d;if(_0x683be1[_0x439e3a(0x273)])_0x28eb4d=_0x683be1[_0x439e3a(0x223)];else{if(_0x5f4d7d&&_0x13e590[_0x439e3a(0x1a6)]>0x0){const _0x5afc6c=extractBlocksByTags(_0x683be1['mes'],_0x13e590);_0x28eb4d=_0x5afc6c[_0x439e3a(0x11c)]('\x0a\x0a');}else _0x28eb4d=_0x683be1['mes'];_0x28eb4d=applyExclusionRules(_0x28eb4d,_0x1004f0);}const _0x3ed7fc=_0x43ae57['findIndex'](_0xc2100d=>_0xc2100d===_0x683be1),_0x526595=_0x3ed7fc!==-0x1?_0x3ed7fc+0x1:-0x1;return{'id':_0x439e3a(0x258)+_0x3a5b8a,'name':_0x683be1[_0x439e3a(0xcf)],'content':_0x28eb4d[_0x439e3a(0x251)](),'floor':_0x526595,'is_user':_0x683be1['is_user'],'send_date':_0x683be1[_0x439e3a(0x10e)]};})[_0x37aded(0x1ee)](_0x158094=>_0x158094[_0x37aded(0x197)]);if(_0x38c6b1[_0x37aded(0x1a6)]===0x0){_0x56dd0b['textContent']=_0x37aded(0x215),toastr['warning'](_0x37aded(0x215),'翰林院启奏');return;}const _0x43aec1=_0x38c6b1[_0x37aded(0x224)]((_0x4e7d77,_0x592cae)=>_0x37aded(0xb8)+_0x4e7d77['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'+_0x4e7d77[_0x37aded(0x11a)]+_0x37aded(0x14d)+_0x4e7d77[_0x37aded(0xcf)]+_0x37aded(0x280)+_0x4e7d77[_0x37aded(0x11a)]+_0x37aded(0x1a1)+_0x4e7d77[_0x37aded(0x273)]+_0x37aded(0x102)+_0x4e7d77['send_date']+'\x22>'+_0x4e7d77[_0x37aded(0x197)]+'</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'+_0x4e7d77['id']+_0x37aded(0x1cb))[_0x37aded(0x11c)]('');showHtmlModal('预览并编辑凝识内容',_0x37aded(0x103)+_0x43aec1+'</div>',{'okText':_0x37aded(0x117),'onOk':_0x44139b=>{const _0x680e8c=_0x37aded,_0x3bdeb9=[];_0x44139b['find'](_0x680e8c(0x25b))[_0x680e8c(0x27c)](function(){const _0x1167e4=_0x680e8c,_0x1519a5=$(this)[_0x1167e4(0xc1)]('.hly-preview-textarea'),_0x2fc18f=_0x1519a5[_0x1167e4(0x184)]();_0x2fc18f[_0x1167e4(0x251)]()&&_0x3bdeb9[_0x1167e4(0x261)]({'mes':_0x2fc18f,'is_user':_0x1519a5[_0x1167e4(0x20c)](_0x1167e4(0x26d)),'send_date':_0x1519a5['data']('send-date'),'floor':_0x1519a5[_0x1167e4(0x20c)](_0x1167e4(0x11a))});}),_0x56dd0b[_0x680e8c(0x27b)][_0x680e8c(0xfd)]=JSON[_0x680e8c(0x22f)](_0x3bdeb9);const _0x71fb38=document['getElementById'](_0x680e8c(0x1a2))[_0x680e8c(0x1fb)],_0x42b2e2=document['getElementById'](_0x680e8c(0x15e))[_0x680e8c(0x1fb)];_0x56dd0b['textContent']=_0x680e8c(0x279)+_0x71fb38+'\x20楼到\x20'+_0x42b2e2+_0x680e8c(0x188)+_0x3bdeb9['length']+'\x20条有效条目),请点击“开始凝识”进入自动向量化流程。',toastr[_0x680e8c(0x15b)]('预览内容已更新,可随时开始凝识。','圣旨已达');}}),$(_0x37aded(0x167))['on'](_0x37aded(0x147),function(_0x57c430){const _0xc0334a=_0x37aded;_0x57c430['preventDefault']();const _0x49ac17=$(this)['data'](_0xc0334a(0x17d));$('#'+_0x49ac17)[_0xc0334a(0x149)]();});}catch(_0x1f73fb){console['error'](_0x37aded(0xef),_0x1f73fb),_0x56dd0b['textContent']='预览失败:\x20'+_0x1f73fb[_0x37aded(0x183)],toastr[_0x37aded(0x246)](_0x37aded(0x24a)+_0x1f73fb[_0x37aded(0x183)],_0x37aded(0x108));}}function log(_0x1b5982,_0x5f3f83='info'){const _0x1c4653=_0x54d868,_0x18659f=document[_0x1c4653(0x161)](_0x1c4653(0x259));if(!_0x18659f)return;const _0x371879=document[_0x1c4653(0x225)]('p'),_0x3914d5=new Date()[_0x1c4653(0x220)]();let _0x26acc4='fa-circle-info',_0x48ac75=_0x1c4653(0x101);switch(_0x5f3f83){case _0x1c4653(0x15b):_0x26acc4=_0x1c4653(0xbf),_0x48ac75='log-success';break;case _0x1c4653(0x246):_0x26acc4=_0x1c4653(0x24e),_0x48ac75=_0x1c4653(0x213);break;case _0x1c4653(0x1d3):_0x26acc4='fa-exclamation-triangle',_0x48ac75=_0x1c4653(0x26c);break;}_0x371879[_0x1c4653(0x10c)]=_0x1c4653(0x228)+_0x48ac75,_0x371879['innerHTML']='<i\x20class=\x22fa-solid\x20'+_0x26acc4+_0x1c4653(0x15d)+_0x3914d5+']\x20'+_0x1b5982;const _0x56787e=_0x18659f[_0x1c4653(0x13a)]('.hly-log-placeholder');_0x56787e&&_0x56787e['remove'](),_0x18659f['appendChild'](_0x371879),_0x18659f[_0x1c4653(0xcc)]=_0x18659f[_0x1c4653(0x1a4)];}async function ingestManualText(){const _0x5c5185=_0x54d868,_0x13c1af=document['getElementById'](_0x5c5185(0xea)),_0x40df1c=_0x13c1af[_0x5c5185(0x1fb)][_0x5c5185(0x251)]();if(!_0x40df1c){toastr['warning']('录入内容不能为空。',_0x5c5185(0x12b)),log('用户尝试录入空文本。',_0x5c5185(0x1d3));return;}log(_0x5c5185(0x121)+_0x40df1c['length'],_0x5c5185(0xe3)),toastr['info'](_0x5c5185(0xd3),'圣旨');try{const _0x3cd5ad=await _0x200707[_0x5c5185(0x130)](_0x40df1c,_0x5c5185(0x1dc),{'sourceName':_0x5c5185(0x235)});if(_0x3cd5ad[_0x5c5185(0x15b)])toastr[_0x5c5185(0x15b)](_0x5c5185(0x194)+_0x3cd5ad['count']+_0x5c5185(0xd9),_0x5c5185(0x125)),log('手动录入成功,新增\x20'+_0x3cd5ad[_0x5c5185(0x20b)]+_0x5c5185(0xd9),_0x5c5185(0x15b)),_0x13c1af['value']='';else throw new Error(_0x3cd5ad[_0x5c5185(0x246)]||_0x5c5185(0x172));}catch(_0x194a56){console[_0x5c5185(0x246)](_0x5c5185(0x1c2),_0x194a56),toastr['error'](_0x5c5185(0x1a0)+_0x194a56[_0x5c5185(0x183)],_0x5c5185(0x108)),log('手动录入失败:\x20'+_0x194a56[_0x5c5185(0x183)],_0x5c5185(0x246));}finally{await updatePanelStatus();}}
|