feat(gemini): add Google Official branding with Gemini icon (#211)

Update Google Gemini preset to match Claude Official styling:
- Rename 'Google' to 'Google Official'
- Add GeminiIcon support in preset selector
- Add custom theme with Google blue (#4285F4) background
- Update PresetTheme type to support 'gemini' icon type

Changes:
- Add GeminiPresetTheme interface
- Add theme config to Google Official preset
- Import and render GeminiIcon in ProviderPresetSelector
- Update PresetTheme icon type to include 'gemini'
This commit is contained in:
YoVinchen
2025-11-12 22:41:26 +08:00
committed by GitHub
parent 75866044bd
commit 2f02514a14
3 changed files with 31 additions and 8 deletions

View File

@@ -14,8 +14,8 @@ export interface TemplateValueConfig {
* 预设供应商的视觉主题配置
*/
export interface PresetTheme {
/** 图标类型:'claude' | 'codex' | 'generic' */
icon?: "claude" | "codex" | "generic";
/** 图标类型:'claude' | 'codex' | 'gemini' | 'generic' */
icon?: "claude" | "codex" | "gemini" | "generic";
/** 背景色(选中状态),支持 Tailwind 类名或 hex 颜色 */
backgroundColor?: string;
/** 文字色(选中状态),支持 Tailwind 类名或 hex 颜色 */

View File

@@ -1,5 +1,17 @@
import type { ProviderCategory } from "@/types";
/**
* Gemini 预设供应商的视觉主题配置
*/
export interface GeminiPresetTheme {
/** 图标类型:'gemini' | 'generic' */
icon?: "gemini" | "generic";
/** 背景色(选中状态),支持 hex 颜色 */
backgroundColor?: string;
/** 文字色(选中状态),支持 hex 颜色 */
textColor?: string;
}
export interface GeminiProviderPreset {
name: string;
websiteUrl: string;
@@ -12,11 +24,12 @@ export interface GeminiProviderPreset {
isPartner?: boolean;
partnerPromotionKey?: string;
endpointCandidates?: string[];
theme?: GeminiPresetTheme;
}
export const geminiProviderPresets: GeminiProviderPreset[] = [
{
name: "Google",
name: "Google Official",
websiteUrl: "https://ai.google.dev/",
apiKeyUrl: "https://aistudio.google.com/apikey",
settingsConfig: {
@@ -28,6 +41,11 @@ export const geminiProviderPresets: GeminiProviderPreset[] = [
category: "official",
partnerPromotionKey: "google-official",
model: "gemini-2.5-pro",
theme: {
icon: "gemini",
backgroundColor: "#4285F4",
textColor: "#FFFFFF",
},
},
{
name: "PackyCode",