diff --git a/web/src/assets/images/workflow/deleteBg.svg b/web/src/assets/images/workflow/deleteBg.svg new file mode 100644 index 00000000..f3827fef --- /dev/null +++ b/web/src/assets/images/workflow/deleteBg.svg @@ -0,0 +1,21 @@ + + + 编组 33 + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/web/src/assets/images/workflow/deleteBg_hover.svg b/web/src/assets/images/workflow/deleteBg_hover.svg new file mode 100644 index 00000000..9e92cf75 --- /dev/null +++ b/web/src/assets/images/workflow/deleteBg_hover.svg @@ -0,0 +1,22 @@ + + + 编组 33 + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/web/src/assets/images/workflow/delete_cycle.svg b/web/src/assets/images/workflow/delete_cycle.svg new file mode 100644 index 00000000..0d85650d --- /dev/null +++ b/web/src/assets/images/workflow/delete_cycle.svg @@ -0,0 +1,18 @@ + + + 编组 33 + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/web/src/assets/images/workflow/recall.svg b/web/src/assets/images/workflow/recall.svg new file mode 100644 index 00000000..756f9060 --- /dev/null +++ b/web/src/assets/images/workflow/recall.svg @@ -0,0 +1,18 @@ + + + 召回 + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/web/src/assets/images/workflow/recall_hover.svg b/web/src/assets/images/workflow/recall_hover.svg new file mode 100644 index 00000000..a2e949a0 --- /dev/null +++ b/web/src/assets/images/workflow/recall_hover.svg @@ -0,0 +1,18 @@ + + + 召回 + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/web/src/components/FormItem/DescWrapper.tsx b/web/src/components/FormItem/DescWrapper.tsx new file mode 100644 index 00000000..300fc2b6 --- /dev/null +++ b/web/src/components/FormItem/DescWrapper.tsx @@ -0,0 +1,12 @@ +import clsx from "clsx"; +import type { FC, ReactNode } from "react"; + +const DescWrapper: FC<{desc: string | ReactNode, className?: string}> = ({desc, className}) => { + return ( +
+ {desc} +
+ ) +} + +export default DescWrapper \ No newline at end of file diff --git a/web/src/components/FormItem/LabelWrapper.tsx b/web/src/components/FormItem/LabelWrapper.tsx new file mode 100644 index 00000000..461250d8 --- /dev/null +++ b/web/src/components/FormItem/LabelWrapper.tsx @@ -0,0 +1,13 @@ +import clsx from "clsx"; +import type { FC, ReactNode } from "react"; + +const LabelWrapper: FC<{ title: string | ReactNode, className?: string; children?: ReactNode}> = ({title, className, children}) => { + return ( +
+
{title}
+ {children} +
+ ) +} + +export default LabelWrapper \ No newline at end of file diff --git a/web/src/components/FormItem/SwitchFormItem.tsx b/web/src/components/FormItem/SwitchFormItem.tsx new file mode 100644 index 00000000..e17a8728 --- /dev/null +++ b/web/src/components/FormItem/SwitchFormItem.tsx @@ -0,0 +1,45 @@ +import { Switch, Form, ConfigProvider } from "antd"; +import useSize from 'antd/lib/config-provider/hooks/useSize' +import type { FC, ReactNode } from "react"; +import { useContext } from "react"; + +import LabelWrapper from './LabelWrapper' +import DescWrapper from './DescWrapper' + +interface SwitchFormItemProps { + title: string | ReactNode; + desc?: string | ReactNode; + name: string | string[]; + size?: 'small' | 'default' + className?: string; + disabled?: boolean; +} + +const SwitchFormItem: FC = ({ + title, + desc, + name, + size = 'default', + className, + disabled +}) => { + const componentSize = useSize() + console.log('componentSize', componentSize) + + return ( +
+ + {desc && } + + + + +
+ ) +} + +export default SwitchFormItem \ No newline at end of file diff --git a/web/src/components/Header/index.tsx b/web/src/components/Header/index.tsx index 9aeeab6b..fac432f5 100644 --- a/web/src/components/Header/index.tsx +++ b/web/src/components/Header/index.tsx @@ -54,7 +54,7 @@ const AppHeader: FC<{source?: 'space' | 'manage';}> = ({source = 'manage'}) => { key: '1', label: (<>
{user.username}
-
{user.email}
+
{user.email}
), }, { diff --git a/web/src/components/Markdown/index.tsx b/web/src/components/Markdown/index.tsx index d16b72e4..58650207 100644 --- a/web/src/components/Markdown/index.tsx +++ b/web/src/components/Markdown/index.tsx @@ -150,9 +150,19 @@ const RbMarkdown: FC = ({ ) } + // 处理键盘快捷键 + const handleKeyDown = (e: React.KeyboardEvent) => { + if ((e.ctrlKey || e.metaKey) && e.key === 'c') { + const selection = window.getSelection() + if (selection && selection.toString()) { + navigator.clipboard.writeText(selection.toString()) + } + } + } + // 预览模式 return ( -
+