From 7feeb07624551267d873f9f7387f45385d19a6c6 Mon Sep 17 00:00:00 2001 From: kangfenmao Date: Mon, 17 Feb 2025 22:13:53 +0800 Subject: [PATCH] refactor: Extract message group settings into a separate component --- .../src/pages/home/Messages/MessageGroup.tsx | 30 ++-------- .../home/Messages/MessageGroupSettings.tsx | 59 +++++++++++++++++++ 2 files changed, 64 insertions(+), 25 deletions(-) create mode 100644 src/renderer/src/pages/home/Messages/MessageGroupSettings.tsx diff --git a/src/renderer/src/pages/home/Messages/MessageGroup.tsx b/src/renderer/src/pages/home/Messages/MessageGroup.tsx index 6404407136..b4e8081b92 100644 --- a/src/renderer/src/pages/home/Messages/MessageGroup.tsx +++ b/src/renderer/src/pages/home/Messages/MessageGroup.tsx @@ -10,15 +10,15 @@ import { HStack } from '@renderer/components/Layout' import Scrollbar from '@renderer/components/Scrollbar' import { useSettings } from '@renderer/hooks/useSettings' import { EVENT_NAMES, EventEmitter } from '@renderer/services/EventService' -import { useAppDispatch } from '@renderer/store' -import { MultiModelMessageStyle, setGridColumns, setGridPopoverTrigger } from '@renderer/store/settings' +import { MultiModelMessageStyle } from '@renderer/store/settings' import { Message, Model, Topic } from '@renderer/types' -import { Button, Popover, Segmented as AntdSegmented, Select, Slider } from 'antd' +import { Button, Popover, Segmented as AntdSegmented } from 'antd' import { Dispatch, FC, SetStateAction, useEffect, useState } from 'react' import { useTranslation } from 'react-i18next' import styled, { css } from 'styled-components' import MessageItem from './Message' +import MessageGroupSettings from './MessageGroupSettings' interface Props { messages: (Message & { index: number })[] @@ -41,8 +41,6 @@ const MessageGroup: FC = ({ }) => { const { multiModelMessageStyle: multiModelMessageStyleSetting, gridColumns } = useSettings() const { t } = useTranslation() - const dispatch = useAppDispatch() - const [gridColumnsValue, setGridColumnsValue] = useState(gridColumns) const [multiModelMessageStyle, setMultiModelMessageStyle] = useState(multiModelMessageStyleSetting) @@ -198,26 +196,7 @@ const MessageGroup: FC = ({ /> )} - {multiModelMessageStyle === 'grid' && ( - - - setGridColumnsValue(value)} - onChangeComplete={(value) => dispatch(setGridColumns(value))} - min={2} - max={6} - step={1} - /> - - )} + {multiModelMessageStyle === 'grid' && }