mirror of
https://github.com/open-webui/open-webui.git
synced 2025-12-13 21:05:19 +00:00
Console Hygiene and fix Serial Blocking Logic
This commit is contained in:
parent
9b8dfa095a
commit
4af97da3f7
1 changed files with 20 additions and 15 deletions
|
|
@ -124,7 +124,6 @@
|
||||||
const blob = new Blob([content], { type: 'text/plain' });
|
const blob = new Blob([content], { type: 'text/plain' });
|
||||||
const file = blobToFile(blob, `${name}.txt`);
|
const file = blobToFile(blob, `${name}.txt`);
|
||||||
|
|
||||||
console.log(file);
|
|
||||||
return file;
|
return file;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -408,20 +407,27 @@
|
||||||
const currentFiles = knowledge?.files ?? [];
|
const currentFiles = knowledge?.files ?? [];
|
||||||
const toRemove = currentFiles.filter((f) => !dirNames.has(f?.meta?.name ?? f?.filename));
|
const toRemove = currentFiles.filter((f) => !dirNames.has(f?.meta?.name ?? f?.filename));
|
||||||
|
|
||||||
for (const f of toRemove) {
|
await Promise.all(
|
||||||
|
toRemove.map(async (f) => {
|
||||||
// First remove from knowledge (and KB vectors) but keep file record
|
// First remove from knowledge (and KB vectors) but keep file record
|
||||||
const updated = await removeFileFromKnowledgeById(localStorage.token, id, f.id, false).catch((e) => {
|
await removeFileFromKnowledgeById(localStorage.token, id, f.id, false).catch((e) => {
|
||||||
toast.error(`${e}`);
|
toast.error(`${e}`);
|
||||||
return null;
|
return null;
|
||||||
});
|
});
|
||||||
if (updated) {
|
|
||||||
knowledge = updated;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Then delete the actual file (removes per-file vectors and storage)
|
// Then delete the actual file (removes per-file vectors and storage)
|
||||||
await deleteFileById(localStorage.token, f.id).catch((e) => {
|
await deleteFileById(localStorage.token, f.id).catch((e) => {
|
||||||
console.error(e);
|
console.error(e);
|
||||||
});
|
});
|
||||||
|
})
|
||||||
|
);
|
||||||
|
|
||||||
|
// Refresh knowledge to ensure consistent state after concurrent operations
|
||||||
|
const refreshed = await getKnowledgeById(localStorage.token, id).catch((e) => {
|
||||||
|
toast.error(`${e}`);
|
||||||
|
return null;
|
||||||
|
});
|
||||||
|
if (refreshed) {
|
||||||
|
knowledge = refreshed;
|
||||||
}
|
}
|
||||||
|
|
||||||
toast.success($i18n.t('Directory sync completed.'));
|
toast.success($i18n.t('Directory sync completed.'));
|
||||||
|
|
@ -466,7 +472,6 @@
|
||||||
|
|
||||||
const deleteFileHandler = async (fileId) => {
|
const deleteFileHandler = async (fileId) => {
|
||||||
try {
|
try {
|
||||||
console.log('Starting file deletion process for:', fileId);
|
|
||||||
|
|
||||||
// Remove from knowledge base only
|
// Remove from knowledge base only
|
||||||
const updatedKnowledge = await removeFileFromKnowledgeById(localStorage.token, id, fileId);
|
const updatedKnowledge = await removeFileFromKnowledgeById(localStorage.token, id, fileId);
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue