feat: attach folder
This commit is contained in:
@@ -1547,7 +1547,7 @@
|
||||
|
||||
chatFiles.push(
|
||||
..._files.filter((item) =>
|
||||
['doc', 'text', 'file', 'note', 'chat', 'collection'].includes(item.type)
|
||||
['doc', 'text', 'file', 'note', 'chat', 'folder', 'collection'].includes(item.type)
|
||||
)
|
||||
);
|
||||
chatFiles = chatFiles.filter(
|
||||
|
||||
@@ -13,6 +13,8 @@
|
||||
import Database from '$lib/components/icons/Database.svelte';
|
||||
import GlobeAlt from '$lib/components/icons/GlobeAlt.svelte';
|
||||
import Youtube from '$lib/components/icons/Youtube.svelte';
|
||||
import { folders } from '$lib/stores';
|
||||
import Folder from '$lib/components/icons/Folder.svelte';
|
||||
|
||||
const i18n = getContext('i18n');
|
||||
|
||||
@@ -144,14 +146,25 @@
|
||||
]
|
||||
: [];
|
||||
|
||||
items = [...collections, ...collection_files, ...legacy_collections, ...legacy_documents].map(
|
||||
(item) => {
|
||||
return {
|
||||
...item,
|
||||
...(item?.legacy || item?.meta?.legacy || item?.meta?.document ? { legacy: true } : {})
|
||||
};
|
||||
}
|
||||
);
|
||||
let folder_items = $folders.map((folder) => ({
|
||||
...folder,
|
||||
type: 'folder',
|
||||
description: $i18n.t('Folder'),
|
||||
title: folder.name
|
||||
}));
|
||||
|
||||
items = [
|
||||
...folder_items,
|
||||
...collections,
|
||||
...collection_files,
|
||||
...legacy_collections,
|
||||
...legacy_documents
|
||||
].map((item) => {
|
||||
return {
|
||||
...item,
|
||||
...(item?.legacy || item?.meta?.legacy || item?.meta?.document ? { legacy: true } : {})
|
||||
};
|
||||
});
|
||||
|
||||
fuse = new Fuse(items, {
|
||||
keys: ['name', 'description']
|
||||
@@ -213,6 +226,8 @@
|
||||
>
|
||||
{#if item?.type === 'collection'}
|
||||
<Database className="size-4" />
|
||||
{:else if item?.type === 'folder'}
|
||||
<Folder className="size-4" />
|
||||
{:else}
|
||||
<DocumentPage className="size-4" />
|
||||
{/if}
|
||||
|
||||
@@ -33,6 +33,7 @@
|
||||
import Database from '../icons/Database.svelte';
|
||||
import PageEdit from '../icons/PageEdit.svelte';
|
||||
import ChatBubble from '../icons/ChatBubble.svelte';
|
||||
import Folder from '../icons/Folder.svelte';
|
||||
let showModal = false;
|
||||
|
||||
const decodeString = (str: string) => {
|
||||
@@ -115,6 +116,8 @@
|
||||
<PageEdit />
|
||||
{:else if type === 'chat'}
|
||||
<ChatBubble />
|
||||
{:else if type === 'folder'}
|
||||
<Folder />
|
||||
{:else}
|
||||
<DocumentPage />
|
||||
{/if}
|
||||
|
||||
@@ -91,7 +91,7 @@
|
||||
toast.error(`${error}`);
|
||||
return [];
|
||||
});
|
||||
_folders.set(folderList);
|
||||
_folders.set(folderList.sort((a, b) => b.updated_at - a.updated_at));
|
||||
|
||||
folders = {};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user