From 8a579da6f2caa717fccda94b737651dbbd731a0a Mon Sep 17 00:00:00 2001 From: wangzemei Date: Fri, 14 Nov 2025 14:51:48 +0800 Subject: [PATCH] * [misc] modify the position of knowledgeLibs. --- www/js/zui3/ai.js | 64 +++++++++++++++++++++++------------------------ 1 file changed, 32 insertions(+), 32 deletions(-) diff --git a/www/js/zui3/ai.js b/www/js/zui3/ai.js index f1344431e4..1e1080dd8a 100644 --- a/www/js/zui3/ai.js +++ b/www/js/zui3/ai.js @@ -200,38 +200,6 @@ function registerZentaoAIPlugin(lang) } }); - if(lang.knowledgeLib) - { - plugin.defineContextProvider({ - code : 'knowledgeLibs', - title: lang.knowledgeLib, - icon : 'book', - contexts : function() - { - return new Promise((resolve) => { - zui.Modal.open({url: $.createLink('ai', 'selectknowledgelib', `selectedID=&callback=getKnowledgeLibsByForm`), size: 'sm'}); - window.getKnowledgeLibsByForm = function(libs) - { - if(!libs.length) return resolve(); - - const res = []; - libs.forEach(item => { - res.push({ - title: item.name, - hint: item.name, - code: `zentao-knowledgeLib-${item.id}`, - data: { - memory: {collections: [`zentao:${item.id}`]} - } - }) - }); - resolve(res); - } - }); - }, - }); - } - const objectIcons = { story : 'file-text', demand : 'file-text', @@ -317,6 +285,38 @@ function registerZentaoAIPlugin(lang) data : {memory: {collections: ['zentao:global']}}, }); + if(lang.knowledgeLib) + { + plugin.defineContextProvider({ + code : 'knowledgeLibs', + title: lang.knowledgeLib, + icon : 'book', + contexts : function() + { + return new Promise((resolve) => { + zui.Modal.open({url: $.createLink('ai', 'selectknowledgelib', `selectedID=&callback=getKnowledgeLibsByForm`), size: 'sm'}); + window.getKnowledgeLibsByForm = function(libs) + { + if(!libs.length) return resolve(); + + const res = []; + libs.forEach(item => { + res.push({ + title: item.name, + hint: item.name, + code: `zentao-knowledgeLib-${item.id}`, + data: { + memory: {collections: [`zentao:${item.id}`]} + } + }) + }); + resolve(res); + } + }); + }, + }); + } + plugin.defineCallback && plugin.defineCallback('onCreateChat', async function(info) { if(info.isLocal || !info.userPrompt) return;