diff --git a/src/renderer/src/components/Popups/UpdateDialogPopup.tsx b/src/renderer/src/components/Popups/UpdateDialogPopup.tsx index 593c882bf5..82685fcfd7 100644 --- a/src/renderer/src/components/Popups/UpdateDialogPopup.tsx +++ b/src/renderer/src/components/Popups/UpdateDialogPopup.tsx @@ -1,7 +1,7 @@ import { loggerService } from '@logger' import { TopView } from '@renderer/components/TopView' -import { handleSaveData, useAppDispatch } from '@renderer/store' -import { setUpdateState } from '@renderer/store/runtime' +import { useAppUpdateState } from '@renderer/hooks/useAppUpdate' +import { handleSaveData } from '@renderer/store' import { Button, Modal } from 'antd' import type { ReleaseNoteInfo, UpdateInfo } from 'builder-util-runtime' import { useEffect, useState } from 'react' @@ -23,8 +23,7 @@ const PopupContainer: React.FC = ({ releaseInfo, resolve }) => { const { t } = useTranslation() const [open, setOpen] = useState(true) const [isInstalling, setIsInstalling] = useState(false) - const dispatch = useAppDispatch() - + const { updateAppUpdateState } = useAppUpdateState() useEffect(() => { if (releaseInfo) { logger.info('Update dialog opened', { version: releaseInfo.version }) @@ -53,7 +52,7 @@ const PopupContainer: React.FC = ({ releaseInfo, resolve }) => { } const onIgnore = () => { - dispatch(setUpdateState({ ignore: true })) + updateAppUpdateState({ ignore: true }) setOpen(false) } diff --git a/src/renderer/src/components/Popups/agent/AgentModal.tsx b/src/renderer/src/components/Popups/agent/AgentModal.tsx index 0d3ce94731..d3e2884547 100644 --- a/src/renderer/src/components/Popups/agent/AgentModal.tsx +++ b/src/renderer/src/components/Popups/agent/AgentModal.tsx @@ -1,6 +1,6 @@ +import { HelpTooltip } from '@cherrystudio/ui' import { loggerService } from '@logger' import { ErrorBoundary } from '@renderer/components/ErrorBoundary' -import { HelpTooltip } from '@renderer/components/TooltipIcons' import { TopView } from '@renderer/components/TopView' import { permissionModeCards } from '@renderer/config/agent' import { useAgents } from '@renderer/hooks/agents/useAgents' diff --git a/src/renderer/src/pages/home/components/UpdateAppButton.tsx b/src/renderer/src/pages/home/components/UpdateAppButton.tsx index 2a31daf1f0..e211687c0e 100644 --- a/src/renderer/src/pages/home/components/UpdateAppButton.tsx +++ b/src/renderer/src/pages/home/components/UpdateAppButton.tsx @@ -20,7 +20,7 @@ const UpdateAppButton: FC = () => { return null } - if (update.ignore) { + if (appUpdateState.ignore) { return null } diff --git a/src/renderer/src/pages/settings/AgentSettings/ModelSetting.tsx b/src/renderer/src/pages/settings/AgentSettings/ModelSetting.tsx index ebe5b47003..6d1659817f 100644 --- a/src/renderer/src/pages/settings/AgentSettings/ModelSetting.tsx +++ b/src/renderer/src/pages/settings/AgentSettings/ModelSetting.tsx @@ -1,4 +1,4 @@ -import { HelpTooltip } from '@renderer/components/TooltipIcons' +import { HelpTooltip } from '@cherrystudio/ui' import SelectAgentBaseModelButton from '@renderer/pages/home/components/SelectAgentBaseModelButton' import type { AgentBaseWithId, ApiModel, UpdateAgentFunctionUnion } from '@renderer/types' import { useTranslation } from 'react-i18next' diff --git a/src/renderer/src/services/ApiService.ts b/src/renderer/src/services/ApiService.ts index 8bb9ea52e0..14b84ae383 100644 --- a/src/renderer/src/services/ApiService.ts +++ b/src/renderer/src/services/ApiService.ts @@ -1,6 +1,7 @@ /** * 职责:提供原子化的、无状态的API调用函数 */ +import { cacheService } from '@data/CacheService' import { preferenceService } from '@data/PreferenceService' import { loggerService } from '@logger' import type { AiSdkMiddlewareConfig } from '@renderer/aiCore/middleware/AiSdkMiddlewareBuilder' @@ -467,9 +468,9 @@ function getRotatedApiKey(provider: Provider): string { return keys[0] } - const lastUsedKey = window.keyv.get(keyName) + const lastUsedKey = cacheService.get(keyName) as string if (!lastUsedKey) { - window.keyv.set(keyName, keys[0]) + cacheService.set(keyName, keys[0]) return keys[0] } @@ -485,7 +486,7 @@ function getRotatedApiKey(provider: Provider): string { const nextIndex = (currentIndex + 1) % keys.length const nextKey = keys[nextIndex] - window.keyv.set(keyName, nextKey) + cacheService.set(keyName, nextKey) return nextKey }