diff --git a/setting/chat.go b/setting/chat.go index 53cb655a..b97d65ce 100644 --- a/setting/chat.go +++ b/setting/chat.go @@ -12,6 +12,9 @@ var Chats = []map[string]string{ { "Cherry Studio": "cherrystudio://providers/api-keys?v=1&data={cherryConfig}", }, + { + "流畅阅读": "fluentread", + }, { "Lobe Chat 官方示例": "https://chat-preview.lobehub.com/?settings={\"keyVaults\":{\"openai\":{\"apiKey\":\"{key}\",\"baseURL\":\"{address}/v1\"}}}", }, diff --git a/web/src/components/layout/SiderBar.js b/web/src/components/layout/SiderBar.js index bac677e8..985042ee 100644 --- a/web/src/components/layout/SiderBar.js +++ b/web/src/components/layout/SiderBar.js @@ -201,12 +201,20 @@ const SiderBar = ({ onNavigate = () => { } }) => { if (Array.isArray(chats)) { let chatItems = []; for (let i = 0; i < chats.length; i++) { + let shouldSkip = false; let chat = {}; for (let key in chats[i]) { + let link = chats[i][key]; + if (typeof link !== 'string') continue; // 确保链接是字符串 + if (link.startsWith('fluent')) { + shouldSkip = true; + break; // 跳过 Fluent Read + } chat.text = key; chat.itemKey = 'chat' + i; chat.to = '/console/chat/' + i; } + if (shouldSkip || !chat.text) continue; // 避免推入空项 chatItems.push(chat); } setChatItems(chatItems); diff --git a/web/src/components/table/tokens/index.jsx b/web/src/components/table/tokens/index.jsx index ee1ff75d..05ccf259 100644 --- a/web/src/components/table/tokens/index.jsx +++ b/web/src/components/table/tokens/index.jsx @@ -88,27 +88,27 @@ function TokensPage() { function openFluentNotification(key) { const { t } = latestRef.current; const SUPPRESS_KEY = 'fluent_notify_suppressed'; - if (localStorage.getItem(SUPPRESS_KEY) === '1') return; - const container = document.getElementById('fluent-new-api-container'); - if (!container) { - Toast.warning(t('未检测到 Fluent 容器,请确认扩展已启用')); - return; - } - setPrefillKey(key || ''); - setFluentNoticeOpen(true); if (modelOptions.length === 0) { // fire-and-forget; a later effect will refresh the notice content loadModels() } + if (!key && localStorage.getItem(SUPPRESS_KEY) === '1') return; + const container = document.getElementById('fluent-new-api-container'); + if (!container) { + Toast.warning(t('未检测到 FluentRead(流畅阅读),请确认扩展已启用')); + return; + } + setPrefillKey(key || ''); + setFluentNoticeOpen(true); Notification.info({ id: 'fluent-detected', - title: t('检测到 Fluent(流畅阅读)'), + title: t('检测到 FluentRead(流畅阅读)'), content: (