diff --git a/src/renderer/src/pages/home/Assistants.tsx b/src/renderer/src/pages/home/Assistants.tsx index 2ce3f41a3b..a33dadba6e 100644 --- a/src/renderer/src/pages/home/Assistants.tsx +++ b/src/renderer/src/pages/home/Assistants.tsx @@ -1,4 +1,4 @@ -import { CopyOutlined, DeleteOutlined, EditOutlined } from '@ant-design/icons' +import { CopyOutlined, DeleteOutlined, EditOutlined, MinusCircleOutlined } from '@ant-design/icons' import DragableList from '@renderer/components/DragableList' import AssistantSettingPopup from '@renderer/components/Popups/AssistantSettingPopup' import { useAssistant, useAssistants } from '@renderer/hooks/useAssistant' @@ -24,7 +24,7 @@ interface Props { const Assistants: FC = ({ activeAssistant, setActiveAssistant, onCreateAssistant }) => { const { assistants, removeAssistant, addAssistant, updateAssistants } = useAssistants() const generating = useAppSelector((state) => state.runtime.generating) - const { updateAssistant } = useAssistant(activeAssistant.id) + const { updateAssistant, removeAllTopics } = useAssistant(activeAssistant.id) const { toggleShowTopics } = useShowTopics() const { t } = useTranslation() @@ -65,6 +65,19 @@ const Assistants: FC = ({ activeAssistant, setActiveAssistant, onCreateAs setActiveAssistant(_assistant) } }, + { + label: t('chat.topics.delete.all.title'), + key: 'delete-all', + icon: , + onClick: () => { + window.modal.confirm({ + title: t('chat.topics.delete.all.title'), + content: t('chat.topics.delete.all.content'), + okButtonProps: { danger: true }, + onOk: removeAllTopics + }) + } + }, { type: 'divider' }, { label: t('common.delete'), @@ -74,7 +87,7 @@ const Assistants: FC = ({ activeAssistant, setActiveAssistant, onCreateAs onClick: () => onDelete(assistant) } ] as ItemType[], - [addAssistant, onDelete, onEditAssistant, setActiveAssistant, t] + [addAssistant, onDelete, onEditAssistant, removeAllTopics, setActiveAssistant, t] ) const onSwitchAssistant = useCallback( @@ -146,17 +159,11 @@ const AssistantItem = styled.div` opacity: 0; color: var(--color-text-3); } - /* &:hover { - background-color: var(--color-background-soft); - .topics-count { - display: none; - } - .iconfont { - opacity: 1; - } - } */ &.active { background-color: var(--color-background-mute); + .name { + font-weight: 500; + } .topics-count { display: none; } diff --git a/src/renderer/src/pages/home/Inputbar/Inputbar.tsx b/src/renderer/src/pages/home/Inputbar/Inputbar.tsx index 4ad55d992f..b34ff350de 100644 --- a/src/renderer/src/pages/home/Inputbar/Inputbar.tsx +++ b/src/renderer/src/pages/home/Inputbar/Inputbar.tsx @@ -27,7 +27,6 @@ import { CSSProperties, FC, useCallback, useEffect, useMemo, useRef, useState } import { useTranslation } from 'react-i18next' import styled from 'styled-components' -import SelectModelButton from '../components/SelectModelButton' import SettingsTab from '../Settings' import SendMessageButton from './SendMessageButton' @@ -256,7 +255,6 @@ const Inputbar: FC = ({ assistant, setActiveTopic }) => { )} - {generating && ( diff --git a/src/renderer/src/pages/home/Navbar.tsx b/src/renderer/src/pages/home/Navbar.tsx index 71797a25af..42f84a57ac 100644 --- a/src/renderer/src/pages/home/Navbar.tsx +++ b/src/renderer/src/pages/home/Navbar.tsx @@ -13,6 +13,8 @@ import { FC, useCallback } from 'react' import { useTranslation } from 'react-i18next' import styled from 'styled-components' +import SelectModelButton from './components/SelectModelButton' + interface Props { activeAssistant: Assistant activeTopic: Topic @@ -84,10 +86,8 @@ const HeaderNavbar: FC = ({ activeAssistant, setActiveAssistant, setActiv )} - - {assistant.name} - {/* {!showTopics && toggleShowTopics()}>#{activeTopic.name}#} */} - + {assistant.name} + = ({ assistant: _assistant, activeTopic, setActiveTopic }) => { - const { assistant, removeTopic, updateTopic, updateTopics, removeAllTopics } = useAssistant(_assistant.id) + const { assistant, removeTopic, updateTopic, updateTopics } = useAssistant(_assistant.id) const { t } = useTranslation() const generating = useAppSelector((state) => state.runtime.generating) @@ -87,15 +87,6 @@ const Topics: FC = ({ assistant: _assistant, activeTopic, setActiveTopic [generating, setActiveTopic, t] ) - const onDeleteAll = () => { - window.modal.confirm({ - title: t('chat.topics.delete.all.title'), - content: t('chat.topics.delete.all.content'), - okButtonProps: { danger: true }, - onOk: removeAllTopics - }) - } - return ( @@ -109,13 +100,6 @@ const Topics: FC = ({ assistant: _assistant, activeTopic, setActiveTopic )} - {assistant.topics.length > 10 && ( -
- -
- )}
) } @@ -148,13 +132,8 @@ const TopicListItem = styled.div` &.active { background-color: var(--color-primary); color: white; + font-weight: 500; } ` -const Footer = styled.div` - padding: 0 10px; - padding-bottom: 10px; - width: 100%; -` - export default Topics diff --git a/src/renderer/src/pages/home/components/SelectModelButton.tsx b/src/renderer/src/pages/home/components/SelectModelButton.tsx index e8db8e854b..fce7777dda 100644 --- a/src/renderer/src/pages/home/components/SelectModelButton.tsx +++ b/src/renderer/src/pages/home/components/SelectModelButton.tsx @@ -23,7 +23,7 @@ const SelectModelButton: FC = ({ assistant }) => { } return ( - + {model ? upperFirst(model.name) : t('button.select_model')} diff --git a/src/renderer/src/store/migrate.ts b/src/renderer/src/store/migrate.ts index 9d43c63572..2431d243f3 100644 --- a/src/renderer/src/store/migrate.ts +++ b/src/renderer/src/store/migrate.ts @@ -370,7 +370,7 @@ const migrateConfig = { settings: { ...state.settings, showTopics: true, - windowStyle: 'opaque' + windowStyle: 'transparent' } } }