@lobehub/lobehub 2.0.0-next.55 → 2.0.0-next.56

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,31 @@
2
2
 
3
3
  # Changelog
4
4
 
5
+ ## [Version 2.0.0-next.56](https://github.com/lobehub/lobe-chat/compare/v2.0.0-next.55...v2.0.0-next.56)
6
+
7
+ <sup>Released on **2025-11-14**</sup>
8
+
9
+ #### ✨ Features
10
+
11
+ - **misc**: Add folder creation UI and clean up debug code.
12
+
13
+ <br/>
14
+
15
+ <details>
16
+ <summary><kbd>Improvements and Fixes</kbd></summary>
17
+
18
+ #### What's improved
19
+
20
+ - **misc**: Add folder creation UI and clean up debug code ([d5ecd0a](https://github.com/lobehub/lobe-chat/commit/d5ecd0a))
21
+
22
+ </details>
23
+
24
+ <div align="right">
25
+
26
+ [![](https://img.shields.io/badge/-BACK_TO_TOP-151515?style=flat-square)](#readme-top)
27
+
28
+ </div>
29
+
5
30
  ## [Version 2.0.0-next.55](https://github.com/lobehub/lobe-chat/compare/v2.0.0-next.54...v2.0.0-next.55)
6
31
 
7
32
  <sup>Released on **2025-11-14**</sup>
package/changelog/v1.json CHANGED
@@ -1,4 +1,13 @@
1
1
  [
2
+ {
3
+ "children": {
4
+ "features": [
5
+ "Add folder creation UI and clean up debug code."
6
+ ]
7
+ },
8
+ "date": "2025-11-14",
9
+ "version": "2.0.0-next.56"
10
+ },
2
11
  {
3
12
  "children": {
4
13
  "features": [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lobehub/lobehub",
3
- "version": "2.0.0-next.55",
3
+ "version": "2.0.0-next.56",
4
4
  "description": "LobeHub - an open-source,comprehensive AI Agent framework that supports speech synthesis, multimodal, and extensible Function Call plugin system. Supports one-click free deployment of your private ChatGPT/LLM web application.",
5
5
  "keywords": [
6
6
  "framework",
@@ -119,19 +119,6 @@ const FileExplorer = memo<FileExplorerProps>(({ knowledgeBaseId, category, onOpe
119
119
  ...viewConfig,
120
120
  });
121
121
 
122
- // Debug: Log received data
123
- React.useEffect(() => {
124
- if (data) {
125
- console.log('[FileList] Received data:', {
126
- count: data.length,
127
- documents: data.filter((item) => item.sourceType === 'document'),
128
- sampleDocumentWithEditorData: data.find(
129
- (item) => item.sourceType === 'document' && item.editorData,
130
- ),
131
- });
132
- }
133
- }, [data]);
134
-
135
122
  // Handle view transition with a brief delay to show skeleton
136
123
  React.useEffect(() => {
137
124
  if (isTransitioning && data) {
@@ -3,7 +3,7 @@
3
3
  import { Button, Dropdown, Icon, MenuProps } from '@lobehub/ui';
4
4
  import { Upload } from 'antd';
5
5
  import { css, cx } from 'antd-style';
6
- import { FilePenLine, FileUp, FolderUp, Plus } from 'lucide-react';
6
+ import { FilePenLine, FileUp, FolderIcon, FolderUp, Plus } from 'lucide-react';
7
7
  import { useMemo, useState } from 'react';
8
8
  import { useTranslation } from 'react-i18next';
9
9
 
@@ -34,14 +34,25 @@ const AddButton = ({ knowledgeBaseId }: { knowledgeBaseId?: string }) => {
34
34
  setIsModalOpen(false);
35
35
  };
36
36
 
37
+ const handleCreateFolder = () => {
38
+ setIsModalOpen(false);
39
+ console.log('create folder');
40
+ };
41
+
37
42
  const items = useMemo<MenuProps['items']>(
38
43
  () => [
39
44
  {
40
45
  icon: <Icon icon={FilePenLine} />,
41
46
  key: 'create-note',
42
- label: t('addPage'),
47
+ label: t('header.actions.newPage'),
43
48
  onClick: handleOpenNoteEditor,
44
49
  },
50
+ {
51
+ icon: <Icon icon={FolderIcon} />,
52
+ key: 'create-folder',
53
+ label: t('header.actions.newFolder'),
54
+ onClick: handleCreateFolder,
55
+ },
45
56
  {
46
57
  type: 'divider',
47
58
  },
@@ -58,7 +69,7 @@ const AddButton = ({ knowledgeBaseId }: { knowledgeBaseId?: string }) => {
58
69
  multiple={true}
59
70
  showUploadList={false}
60
71
  >
61
- <div className={cx(hotArea)}>Upload File</div>
72
+ <div className={cx(hotArea)}>{t('header.actions.uploadFile')}</div>
62
73
  </Upload>
63
74
  ),
64
75
  },
@@ -76,7 +87,7 @@ const AddButton = ({ knowledgeBaseId }: { knowledgeBaseId?: string }) => {
76
87
  multiple={true}
77
88
  showUploadList={false}
78
89
  >
79
- <div className={cx(hotArea)}>Upload Folder</div>
90
+ <div className={cx(hotArea)}>{t('header.actions.uploadFolder')}</div>
80
91
  </Upload>
81
92
  ),
82
93
  },
@@ -40,7 +40,6 @@ const useStyles = createStyles(({ css, token }) => ({
40
40
  background: ${token.colorFillQuaternary};
41
41
  `,
42
42
  scrollContainer: css`
43
-
44
43
  /* Hide scrollbar */
45
44
  scrollbar-width: none;
46
45
 
@@ -80,4 +79,3 @@ const RecentFilesSkeleton = memo(() => {
80
79
  });
81
80
 
82
81
  export default RecentFilesSkeleton;
83
-
@@ -1,4 +1,5 @@
1
1
  export default {
2
+ addFolder: '创建文件夹',
2
3
  addKnowledge: '添加知识',
3
4
  addPage: '创建文稿',
4
5
  desc: '管理你的工作、学习与生活知识。',
@@ -65,6 +66,7 @@ export default {
65
66
  header: {
66
67
  actions: {
67
68
  newFolder: '新建文件夹',
69
+ newPage: '新建文稿',
68
70
  uploadFile: '上传文件',
69
71
  uploadFolder: '上传文件夹',
70
72
  },