feat: reintroduce module integration

This commit is contained in:
bangonicdd
2025-02-10 09:02:57 +09:00
parent 1c76f87711
commit b783dc9874
6 changed files with 60 additions and 15 deletions

View File

@@ -268,7 +268,20 @@ function getModuleByIds(ids:string[]){
modules.push(module)
}
}
return modules
return deduplicateModuleById(modules)
}
function deduplicateModuleById(modules:RisuModule[]){
let ids:string[] = []
let newModules:RisuModule[] = []
for(let i=0;i<modules.length;i++){
if(ids.includes(modules[i].id)){
continue
}
ids.push(modules[i].id)
newModules.push(modules[i])
}
return newModules
}
let lastModules = ''
@@ -280,6 +293,10 @@ export function getModules(){
if (currentChat){
ids = ids.concat(currentChat.modules ?? [])
}
if(db.moduleIntergration){
const intList = db.moduleIntergration.split(',').map((s) => s.trim())
ids = ids.concat(intList)
}
const idsJoined = ids.join('-')
if(lastModules === idsJoined){
return lastModuleData
@@ -440,4 +457,9 @@ export function moduleUpdate(){
ReloadGUIPointer.set(get(ReloadGUIPointer) + 1)
lastModuleIds = ids
}
}
export function refreshModules(){
lastModules = ''
lastModuleData = []
}