@lobehub/lobehub 2.0.0-next.233 → 2.0.0-next.234

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.
Files changed (86) hide show
  1. package/.github/workflows/e2e.yml +6 -12
  2. package/.github/workflows/test.yml +3 -3
  3. package/CHANGELOG.md +34 -0
  4. package/CLAUDE.md +1 -1
  5. package/changelog/v1.json +9 -0
  6. package/docs/development/basic/feature-development.mdx +4 -5
  7. package/docs/development/basic/feature-development.zh-CN.mdx +4 -5
  8. package/e2e/README.md +6 -6
  9. package/e2e/src/features/community/detail-pages.feature +9 -9
  10. package/e2e/src/features/community/interactions.feature +13 -13
  11. package/e2e/src/features/community/smoke.feature +6 -6
  12. package/e2e/src/steps/agent/conversation-mgmt.steps.ts +196 -25
  13. package/e2e/src/steps/agent/conversation.steps.ts +58 -0
  14. package/e2e/src/steps/agent/message-ops.steps.ts +20 -15
  15. package/e2e/src/steps/community/detail-pages.steps.ts +60 -19
  16. package/e2e/src/steps/community/interactions.steps.ts +145 -32
  17. package/e2e/src/steps/hooks.ts +12 -2
  18. package/locales/en-US/setting.json +3 -0
  19. package/locales/zh-CN/file.json +4 -0
  20. package/locales/zh-CN/setting.json +3 -0
  21. package/package.json +5 -5
  22. package/packages/const/src/index.ts +1 -0
  23. package/packages/const/src/lobehubSkill.ts +55 -0
  24. package/packages/types/package.json +1 -1
  25. package/packages/types/src/files/upload.ts +11 -1
  26. package/packages/types/src/message/common/tools.ts +1 -1
  27. package/packages/types/src/serverConfig.ts +1 -0
  28. package/public/not-compatible.html +1296 -0
  29. package/src/app/[variants]/(main)/resource/features/FileDetail.tsx +20 -12
  30. package/src/app/[variants]/(main)/resource/features/modal/FullscreenModal.tsx +2 -4
  31. package/src/app/[variants]/layout.tsx +50 -1
  32. package/src/features/ChatInput/ActionBar/Tools/LobehubSkillServerItem.tsx +304 -0
  33. package/src/features/ChatInput/ActionBar/Tools/useControls.tsx +74 -10
  34. package/src/features/Conversation/Messages/AssistantGroup/Tool/Inspector/ToolTitle.tsx +9 -0
  35. package/src/features/FileViewer/Renderer/Code/index.tsx +224 -0
  36. package/src/features/FileViewer/Renderer/Image/index.tsx +8 -1
  37. package/src/features/FileViewer/Renderer/PDF/index.tsx +3 -1
  38. package/src/features/FileViewer/Renderer/PDF/style.ts +2 -1
  39. package/src/features/FileViewer/index.tsx +135 -24
  40. package/src/features/PageEditor/EditorCanvas/useSlashItems.tsx +7 -4
  41. package/src/features/PageEditor/store/initialState.ts +2 -1
  42. package/src/features/ResourceManager/components/Editor/FileContent.tsx +1 -4
  43. package/src/features/ResourceManager/components/Editor/FileCopilot.tsx +64 -0
  44. package/src/features/ResourceManager/components/Editor/index.tsx +98 -31
  45. package/src/features/ResourceManager/components/Explorer/ItemDropdown/useFileItemDropdown.tsx +3 -2
  46. package/src/features/ResourceManager/components/Explorer/ListView/ColumnResizeHandle.tsx +119 -0
  47. package/src/features/ResourceManager/components/Explorer/ListView/ListItem/index.tsx +67 -22
  48. package/src/features/ResourceManager/components/Explorer/ListView/Skeleton.tsx +46 -11
  49. package/src/features/ResourceManager/components/Explorer/ListView/index.tsx +140 -81
  50. package/src/features/ResourceManager/components/Explorer/ToolBar/SortDropdown.tsx +20 -12
  51. package/src/features/ResourceManager/components/Explorer/ToolBar/ViewSwitcher.tsx +18 -10
  52. package/src/features/ResourceManager/components/UploadDock/Item.tsx +38 -6
  53. package/src/features/ResourceManager/components/UploadDock/index.tsx +62 -41
  54. package/src/features/ResourceManager/index.tsx +1 -0
  55. package/src/helpers/toolEngineering/index.test.ts +3 -0
  56. package/src/helpers/toolEngineering/index.ts +12 -1
  57. package/src/locales/default/file.ts +4 -0
  58. package/src/locales/default/setting.ts +3 -0
  59. package/src/server/globalConfig/index.ts +1 -0
  60. package/src/server/modules/ModelRuntime/index.test.ts +214 -1
  61. package/src/server/modules/ModelRuntime/index.ts +43 -7
  62. package/src/server/routers/lambda/document.ts +44 -0
  63. package/src/server/routers/tools/market.ts +261 -0
  64. package/src/server/services/document/index.ts +22 -0
  65. package/src/services/document/index.ts +4 -0
  66. package/src/services/upload.ts +22 -2
  67. package/src/store/chat/slices/plugin/actions/internals.ts +15 -2
  68. package/src/store/chat/slices/plugin/actions/pluginTypes.ts +104 -0
  69. package/src/store/file/slices/fileManager/action.test.ts +9 -3
  70. package/src/store/file/slices/fileManager/action.ts +165 -70
  71. package/src/store/file/slices/upload/action.ts +3 -0
  72. package/src/store/global/actions/general.ts +15 -0
  73. package/src/store/global/initialState.ts +13 -0
  74. package/src/store/serverConfig/selectors.ts +1 -0
  75. package/src/store/tool/initialState.ts +11 -2
  76. package/src/store/tool/selectors/index.ts +1 -0
  77. package/src/store/tool/selectors/tool.ts +3 -1
  78. package/src/store/tool/slices/lobehubSkillStore/action.ts +361 -0
  79. package/src/store/tool/slices/lobehubSkillStore/index.ts +4 -0
  80. package/src/store/tool/slices/lobehubSkillStore/initialState.ts +24 -0
  81. package/src/store/tool/slices/lobehubSkillStore/selectors.ts +145 -0
  82. package/src/store/tool/slices/lobehubSkillStore/types.ts +100 -0
  83. package/src/store/tool/store.ts +8 -2
  84. package/vitest.config.mts +1 -0
  85. package/src/features/FileViewer/Renderer/JavaScript/index.tsx +0 -66
  86. package/src/features/FileViewer/Renderer/TXT/index.tsx +0 -50
@@ -1,66 +0,0 @@
1
- 'use client';
2
-
3
- import { Center, Flexbox, Highlighter } from '@lobehub/ui';
4
- import { createStaticStyles } from 'antd-style';
5
- import { memo } from 'react';
6
-
7
- import CircleLoading from '@/components/Loading/CircleLoading';
8
-
9
- import { useTextFileLoader } from '../../hooks/useTextFileLoader';
10
-
11
- const styles = createStaticStyles(({ css, cssVar }) => ({
12
- page: css`
13
- width: 100%;
14
- padding: 24px;
15
- border-radius: 4px;
16
-
17
- background: ${cssVar.colorBgContainer};
18
- box-shadow: ${cssVar.boxShadowTertiary};
19
- `,
20
- }));
21
-
22
- const getLanguage = (fileName?: string): string => {
23
- if (!fileName) return 'javascript';
24
- const ext = fileName.toLowerCase().split('.').pop();
25
- switch (ext) {
26
- case 'ts': {
27
- return 'typescript';
28
- }
29
- case 'tsx': {
30
- return 'tsx';
31
- }
32
- case 'jsx': {
33
- return 'jsx';
34
- }
35
- default: {
36
- return 'javascript';
37
- }
38
- }
39
- };
40
-
41
- interface JavaScriptViewerProps {
42
- fileId: string;
43
- fileName?: string;
44
- url: string | null;
45
- }
46
-
47
- const JavaScriptViewer = memo<JavaScriptViewerProps>(({ url, fileName }) => {
48
- const { fileData, loading } = useTextFileLoader(url);
49
- const language = getLanguage(fileName);
50
-
51
- return (
52
- <Flexbox className={styles.page} id="javascript-renderer">
53
- {!loading && fileData ? (
54
- <Highlighter language={language} showLanguage={false} variant={'borderless'}>
55
- {fileData}
56
- </Highlighter>
57
- ) : (
58
- <Center height={'100%'}>
59
- <CircleLoading />
60
- </Center>
61
- )}
62
- </Flexbox>
63
- );
64
- });
65
-
66
- export default JavaScriptViewer;
@@ -1,50 +0,0 @@
1
- 'use client';
2
-
3
- import { Center, Flexbox, Highlighter } from '@lobehub/ui';
4
- import { createStaticStyles } from 'antd-style';
5
- import { memo } from 'react';
6
-
7
- import CircleLoading from '@/components/Loading/CircleLoading';
8
-
9
- import { useTextFileLoader } from '../../hooks/useTextFileLoader';
10
-
11
- const styles = createStaticStyles(({ css, cssVar }) => ({
12
- page: css`
13
- width: 100%;
14
- padding: 24px;
15
- border-radius: 4px;
16
-
17
- background: ${cssVar.colorBgContainer};
18
- box-shadow: ${cssVar.boxShadowTertiary};
19
- `,
20
- }));
21
-
22
- interface TXTViewerProps {
23
- fileId: string;
24
- url: string | null;
25
- }
26
-
27
- const TXTViewer = memo<TXTViewerProps>(({ url }) => {
28
- const { fileData, loading } = useTextFileLoader(url);
29
-
30
- return (
31
- <Flexbox className={styles.page} id="txt-renderer">
32
- {!loading && fileData ? (
33
- <Highlighter
34
- language={'txt'}
35
- showLanguage={false}
36
- style={{ height: '100%' }}
37
- variant={'borderless'}
38
- >
39
- {fileData}
40
- </Highlighter>
41
- ) : (
42
- <Center height={'100%'}>
43
- <CircleLoading />
44
- </Center>
45
- )}
46
- </Flexbox>
47
- );
48
- });
49
-
50
- export default TXTViewer;