enh/feat: toggle folders & user perm

This commit is contained in:
Timothy Jaeryang Baek
2025-11-26 22:47:48 -05:00
parent 04b337323a
commit 457af65df6
9 changed files with 61 additions and 9 deletions
@@ -676,6 +676,14 @@
<Switch bind:state={adminConfig.ENABLE_MESSAGE_RATING} />
</div>
<div class="mb-2.5 flex w-full items-center justify-between pr-2">
<div class=" self-center text-xs font-medium">
{$i18n.t('Folders')}
</div>
<Switch bind:state={adminConfig.ENABLE_FOLDERS} />
</div>
<div class="mb-2.5 flex w-full items-center justify-between pr-2">
<div class=" self-center text-xs font-medium">
{$i18n.t('Notes')} ({$i18n.t('Beta')})
@@ -84,11 +84,12 @@
},
features: {
api_keys: false,
folders: true,
notes: true,
direct_tool_servers: false,
web_search: true,
image_generation: true,
code_interpreter: true,
notes: true
code_interpreter: true
}
};
@@ -54,11 +54,12 @@
},
features: {
api_keys: false,
folders: true,
notes: true,
direct_tool_servers: false,
web_search: true,
image_generation: true,
code_interpreter: true,
notes: true
code_interpreter: true
}
};
+6 -2
View File
@@ -63,6 +63,7 @@
import Note from '../icons/Note.svelte';
import { slide } from 'svelte/transition';
import HotkeyHint from '../common/HotkeyHint.svelte';
import { key } from 'vega';
const BREAKPOINT = 768;
@@ -90,8 +91,11 @@
}
const initFolders = async () => {
if ($config?.features?.enable_folders === false) {
return;
}
const folderList = await getFolders(localStorage.token).catch((error) => {
toast.error(`${error}`);
return [];
});
_folders.set(folderList.sort((a, b) => b.updated_at - a.updated_at));
@@ -932,7 +936,7 @@
</Folder>
{/if}
{#if folders}
{#if $config?.features?.enable_folders && ($user?.role === 'admin' || ($user?.permissions?.features?.folders ?? true)) && Object.keys(folders).length > 0}
<Folder
id="sidebar-folders"
className="px-2 mt-0.5"