mirror of
https://github.com/lobehub/lobe-chat.git
synced 2026-06-15 12:10:16 +00:00
✨ feat: Add folder creation UI and clean up debug code
- Add "New Folder" option in KnowledgeManager add button dropdown - Remove debug logging from FileExplorer component - Add i18n keys for folder management actions (newFolder, newPage, uploadFile, uploadFolder) - Prepare UI for folder creation functionality 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -119,19 +119,6 @@ const FileExplorer = memo<FileExplorerProps>(({ knowledgeBaseId, category, onOpe
|
||||
...viewConfig,
|
||||
});
|
||||
|
||||
// Debug: Log received data
|
||||
React.useEffect(() => {
|
||||
if (data) {
|
||||
console.log('[FileList] Received data:', {
|
||||
count: data.length,
|
||||
documents: data.filter((item) => item.sourceType === 'document'),
|
||||
sampleDocumentWithEditorData: data.find(
|
||||
(item) => item.sourceType === 'document' && item.editorData,
|
||||
),
|
||||
});
|
||||
}
|
||||
}, [data]);
|
||||
|
||||
// Handle view transition with a brief delay to show skeleton
|
||||
React.useEffect(() => {
|
||||
if (isTransitioning && data) {
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
import { Button, Dropdown, Icon, MenuProps } from '@lobehub/ui';
|
||||
import { Upload } from 'antd';
|
||||
import { css, cx } from 'antd-style';
|
||||
import { FilePenLine, FileUp, FolderUp, Plus } from 'lucide-react';
|
||||
import { FilePenLine, FileUp, FolderIcon, FolderUp, Plus } from 'lucide-react';
|
||||
import { useMemo, useState } from 'react';
|
||||
import { useTranslation } from 'react-i18next';
|
||||
|
||||
@@ -34,14 +34,25 @@ const AddButton = ({ knowledgeBaseId }: { knowledgeBaseId?: string }) => {
|
||||
setIsModalOpen(false);
|
||||
};
|
||||
|
||||
const handleCreateFolder = () => {
|
||||
setIsModalOpen(false);
|
||||
console.log('create folder');
|
||||
};
|
||||
|
||||
const items = useMemo<MenuProps['items']>(
|
||||
() => [
|
||||
{
|
||||
icon: <Icon icon={FilePenLine} />,
|
||||
key: 'create-note',
|
||||
label: t('addPage'),
|
||||
label: t('header.actions.newPage'),
|
||||
onClick: handleOpenNoteEditor,
|
||||
},
|
||||
{
|
||||
icon: <Icon icon={FolderIcon} />,
|
||||
key: 'create-folder',
|
||||
label: t('header.actions.newFolder'),
|
||||
onClick: handleCreateFolder,
|
||||
},
|
||||
{
|
||||
type: 'divider',
|
||||
},
|
||||
@@ -58,7 +69,7 @@ const AddButton = ({ knowledgeBaseId }: { knowledgeBaseId?: string }) => {
|
||||
multiple={true}
|
||||
showUploadList={false}
|
||||
>
|
||||
<div className={cx(hotArea)}>Upload File</div>
|
||||
<div className={cx(hotArea)}>{t('header.actions.uploadFile')}</div>
|
||||
</Upload>
|
||||
),
|
||||
},
|
||||
@@ -76,7 +87,7 @@ const AddButton = ({ knowledgeBaseId }: { knowledgeBaseId?: string }) => {
|
||||
multiple={true}
|
||||
showUploadList={false}
|
||||
>
|
||||
<div className={cx(hotArea)}>Upload Folder</div>
|
||||
<div className={cx(hotArea)}>{t('header.actions.uploadFolder')}</div>
|
||||
</Upload>
|
||||
),
|
||||
},
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
export default {
|
||||
addFolder: '创建文件夹',
|
||||
addKnowledge: '添加知识',
|
||||
addPage: '创建文稿',
|
||||
desc: '管理你的工作、学习与生活知识。',
|
||||
@@ -65,6 +66,7 @@ export default {
|
||||
header: {
|
||||
actions: {
|
||||
newFolder: '新建文件夹',
|
||||
newPage: '新建文稿',
|
||||
uploadFile: '上传文件',
|
||||
uploadFolder: '上传文件夹',
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user