perf: Debounce various Database Endpoints for less Database Queries and better Backend performance (#20982)

* Update KnowledgeSelector.svelte

* Update KnowledgeSelector.svelte

* Update Users.svelte

* Update MemberSelector.svelte

* Update MemberSelector.svelte

* Update Knowledge.svelte

* Update Knowledge.svelte

* Update Notes.svelte

* Update Knowledge.svelte

* Update Prompts.svelte

* Update Tools.svelte

* Update Tools.svelte

* Update Prompts.svelte

* Update Prompts.svelte

* Update Prompts.svelte

* Update Functions.svelte

* Update UserList.svelte

* Update Functions.svelte

* Update Prompts.svelte

* Update UserList.svelte
This commit is contained in:
Classic298
2026-01-28 00:33:23 +04:00
committed by GitHub
parent 57a2024c58
commit 2c12278444
11 changed files with 139 additions and 31 deletions
@@ -25,6 +25,7 @@
let selectedIdx = 0;
let items = [];
let searchDebounceTimer: ReturnType<typeof setTimeout>;
export let filteredItems = [];
$: filteredItems = [
@@ -69,10 +70,17 @@
$: items = [...folderItems, ...knowledgeItems, ...fileItems];
$: if (query !== null) {
getItems();
$: if (query !== undefined) {
clearTimeout(searchDebounceTimer);
searchDebounceTimer = setTimeout(() => {
getItems();
}, 200);
}
onDestroy(() => {
clearTimeout(searchDebounceTimer);
});
const getItems = () => {
getFolderItems();
getKnowledgeItems();
@@ -11,9 +11,22 @@
let selectedPromptIdx = 0;
export let filteredItems = [];
let searchDebounceTimer: ReturnType<typeof setTimeout>;
let debouncedQuery = '';
$: if (query !== undefined) {
clearTimeout(searchDebounceTimer);
searchDebounceTimer = setTimeout(() => {
debouncedQuery = query;
}, 200);
}
onDestroy(() => {
clearTimeout(searchDebounceTimer);
});
$: filteredItems = prompts
.filter((p) => p.command.toLowerCase().includes(query.toLowerCase()))
.filter((p) => p.command.toLowerCase().includes(debouncedQuery.toLowerCase()))
.sort((a, b) => a.name.localeCompare(b.name));
$: if (query) {