diff --git a/AppImage/components/notification-settings.tsx b/AppImage/components/notification-settings.tsx index a46340de..e931e997 100644 --- a/AppImage/components/notification-settings.tsx +++ b/AppImage/components/notification-settings.tsx @@ -1,6 +1,7 @@ "use client" import { useState, useEffect, useCallback } from "react" +import { useTheme } from "next-themes" import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "./ui/card" import { Tabs, TabsList, TabsTrigger, TabsContent } from "./ui/tabs" import { Input } from "./ui/input" @@ -111,42 +112,54 @@ const AI_PROVIDERS = [ label: "Groq", model: "llama-3.3-70b-versatile", description: "Very fast, generous free tier (30 req/min). Ideal to start.", - keyUrl: "https://console.groq.com/keys" + keyUrl: "https://console.groq.com/keys", + icon: "/icons/Groq Logo_White 25.svg", + iconLight: "/icons/Groq Logo_Black 25.svg" }, { value: "openai", label: "OpenAI", model: "gpt-4o-mini", description: "Industry standard. Very accurate and widely used.", - keyUrl: "https://platform.openai.com/api-keys" + keyUrl: "https://platform.openai.com/api-keys", + icon: "https://cdn.jsdelivr.net/gh/selfhst/icons/png/openai.png", + iconLight: "https://cdn.jsdelivr.net/gh/selfhst/icons/png/openai-light.png" }, { value: "anthropic", label: "Anthropic (Claude)", model: "claude-3-haiku-20240307", description: "Excellent for writing and translation. Fast and economical.", - keyUrl: "https://console.anthropic.com/settings/keys" + keyUrl: "https://console.anthropic.com/settings/keys", + icon: "https://cdn.jsdelivr.net/gh/selfhst/icons/png/anthropic.png", + iconLight: "https://cdn.jsdelivr.net/gh/selfhst/icons/png/anthropic-light.png" }, { value: "gemini", label: "Google Gemini", model: "gemini-1.5-flash", description: "Free tier available, great quality/price ratio.", - keyUrl: "https://aistudio.google.com/app/apikey" + keyUrl: "https://aistudio.google.com/app/apikey", + icon: "https://cdn.jsdelivr.net/gh/selfhst/icons/png/google-gemini.png", + iconLight: "https://cdn.jsdelivr.net/gh/selfhst/icons/png/google-gemini.png" }, { value: "ollama", label: "Ollama (Local)", model: "llama3.2", description: "100% local execution. No costs, total privacy, no internet required.", - keyUrl: "" + keyUrl: "", + icon: "https://cdn.jsdelivr.net/gh/selfhst/icons/png/ollama.png", + iconLight: "https://cdn.jsdelivr.net/gh/selfhst/icons/png/ollama.png" }, { value: "openrouter", label: "OpenRouter", model: "meta-llama/llama-3.3-70b-instruct", description: "Aggregator with access to 100+ models using a single API key. Maximum flexibility.", - keyUrl: "https://openrouter.ai/keys" + keyUrl: "https://openrouter.ai/keys", + icon: "https://cdn.jsdelivr.net/gh/selfhst/icons/png/openrouter.png", + iconLight: "https://cdn.jsdelivr.net/gh/selfhst/icons/png/openrouter.png" }, ] @@ -213,6 +226,7 @@ const DEFAULT_CONFIG: NotificationConfig = { } export function NotificationSettings() { + const { resolvedTheme } = useTheme() const [config, setConfig] = useState(DEFAULT_CONFIG) const [status, setStatus] = useState(null) const [history, setHistory] = useState([]) @@ -1312,11 +1326,11 @@ export function NotificationSettings() { {showAdvanced && ( -
+
- AI-Enhanced Messages -

Use AI to generate contextual notification messages

+ AI-Enhanced Messages +

Use AI to generate contextual notification messages