diff --git a/web/app/i18n.ts b/web/app/i18n.ts
index 1ecde2e6c..a03216c55 100644
--- a/web/app/i18n.ts
+++ b/web/app/i18n.ts
@@ -2,6 +2,9 @@ import i18n from 'i18next';
import { initReactI18next } from 'react-i18next';
const en = {
+ UploadData: 'Upload Data',
+ CodeEditor: 'Code Editor:',
+ openCodeEditor:'Open Code Editor',
Knowledge_Space: 'Knowledge',
space: 'space',
Vector: 'Vector',
@@ -234,6 +237,9 @@ export interface Resources {
}
const zh: Resources['translation'] = {
+ UploadData: '上传数据',
+ CodeEditor: '代码编辑:',
+ openCodeEditor: '打开代码编辑器',
Knowledge_Space: '知识库',
space: '知识库',
Vector: '向量',
diff --git a/web/components/flow/node-param-handler.tsx b/web/components/flow/node-param-handler.tsx
index 2eadffe08..31357d5ad 100644
--- a/web/components/flow/node-param-handler.tsx
+++ b/web/components/flow/node-param-handler.tsx
@@ -18,9 +18,6 @@ import {
RenderUpload,
RenderCodeEditor,
} from './node-renderer';
-import MonacoEditor from '@/components/chat/monaco-editor'
-// C:\Users\Administrator\Desktop\ai\DB-GPT\web\components\chat\monaco-editor.tsx
-import { convertKeysToCamelCase } from '@/utils/flow';
interface NodeParamHandlerProps {
node: IFlowNode;
diff --git a/web/components/flow/node-renderer/codeEditor.tsx b/web/components/flow/node-renderer/codeEditor.tsx
index 3aeeb9b6b..03586f25c 100644
--- a/web/components/flow/node-renderer/codeEditor.tsx
+++ b/web/components/flow/node-renderer/codeEditor.tsx
@@ -2,6 +2,8 @@ import React, { useState, useMemo } from 'react';
import { Button, Modal } from 'antd';
import Editor from '@monaco-editor/react';
import { IFlowNodeParameter } from '@/types/flow';
+import { convertKeysToCamelCase } from '@/utils/flow';
+import { useTranslation } from 'react-i18next';
type Props = {
data: IFlowNodeParameter;
@@ -10,6 +12,8 @@ type Props = {
};
export const RenderCodeEditor = (params: Props) => {
+ const { t } = useTranslation();
+
const { data, defaultValue, onChange } = params;
const attr = convertKeysToCamelCase(data.ui?.attr || {});
@@ -35,14 +39,12 @@ export const RenderCodeEditor = (params: Props) => {
return '80%';
}, [data?.ui?.editor?.width]);
-
-
return (
-
+
{
height={data?.ui?.editor?.height || 200}
defaultLanguage={data?.ui?.language}
onChange={onChange}
- theme='vs-dark' // 编辑器主题颜色
+ theme='vs-dark'
options={{
minimap: {
enabled: false,
diff --git a/web/components/flow/node-renderer/upload.tsx b/web/components/flow/node-renderer/upload.tsx
index 1658cd68f..35e1ddd75 100644
--- a/web/components/flow/node-renderer/upload.tsx
+++ b/web/components/flow/node-renderer/upload.tsx
@@ -3,6 +3,8 @@ import { UploadOutlined } from '@ant-design/icons';
import type { UploadProps } from 'antd';
import { Button, message, Upload } from 'antd';
import { convertKeysToCamelCase } from '@/utils/flow';
+import { IFlowNodeParameter } from '@/types/flow';
+import { useTranslation } from 'react-i18next';
const props: UploadProps = {
name: 'file',
@@ -10,31 +12,29 @@ const props: UploadProps = {
headers: {
authorization: 'authorization-text',
},
- onChange(info) {
- if (info.file.status !== 'uploading') {
- console.log(info.file, info.fileList);
- }
- if (info.file.status === 'done') {
- message.success(`${info.file.name} file uploaded successfully`);
- } else if (info.file.status === 'error') {
- message.error(`${info.file.name} file upload failed.`);
- }
- },
};
-export const RenderUpload: React.FC = (params) => (
- const { data, defaultValue, onChange } = params;
+type Props = {
+ data: IFlowNodeParameter;
+ defaultValue: any;
+ onChange: (value: any) => void;
+};
-const attr = convertKeysToCamelCase(data.ui?.attr || {});
+export const RenderUpload = (params: Props) => {
+ const { t } = useTranslation();
-return (
-
-
- }>上传数据
-
-
-)
-
+ const { data, defaultValue, onChange } = params;
-);
+ const attr = convertKeysToCamelCase(data.ui?.attr || {});
+
+ return (
+
+
+ }>{t('UploadData')}
+
+
+ )
+
+
+}
diff --git a/web/utils/request.ts b/web/utils/request.ts
index 10e38d27f..8a490bfb5 100644
--- a/web/utils/request.ts
+++ b/web/utils/request.ts
@@ -1,9 +1,6 @@
import { message } from 'antd';
import axios from './ctx-axios';
import { isPlainObject } from 'lodash';
-import 'codemirror/lib/codemirror.css';
-import 'codemirror/theme/material.css'; // 引入你喜欢的主题
-import 'codemirror/mode/javascript/javascript'; // 引入JavaScript语言模式
const DEFAULT_HEADERS = {
'content-type': 'application/json',
};