cc8dd1070a
- Add macOS menu-bar dictation app with local ASR models (SenseVoice/Qwen3),
global Option hotkey, and bottom overlay
- Add cloud ASR/LLM providers (Anthropic, Volcengine, Bailian, and more) with
provider logos, model listing, and connection checks
- Add shared 7-day usage stats UI (UsageStatsCluster / SevenDayUsageChart)
- Add iOS onboarding step 6 for polish LLM setup; hide custom-language-model
diagnostic toggle behind DEBUG
- Unify iOS onboarding tagline with the macOS brand line ("开口即文字。")
- Rewrite README (Chinese-first, product-oriented) and refresh GitHub Pages
37 lines
1.3 KiB
Swift
37 lines
1.3 KiB
Swift
// ProviderLogo.swift
|
|
// OSGKeyboard · Shared
|
|
//
|
|
// Maps a provider id to its asset-catalog logo name. Shared by the iOS
|
|
// app and the macOS menu-bar app so both show identical brand marks.
|
|
|
|
import Foundation
|
|
|
|
public enum ProviderLogo {
|
|
/// Asset name for the provider's logo, or `nil` when there is no bundled logo.
|
|
public static func assetName(for providerId: String) -> String? {
|
|
switch providerId {
|
|
case "openai", "whisper": return "openai"
|
|
case "deepseek": return "deepseek"
|
|
case "qwen", "bailian", "alibabaCoding": return "qwen"
|
|
case "moonshot": return "moonshot"
|
|
case "zhipu": return "zhipu"
|
|
case "mimo": return "mimo"
|
|
case "ark", "volcengine": return "ark"
|
|
case "siliconflow": return "siliconflow"
|
|
case "groq": return "groq"
|
|
case "minimax": return "minimax"
|
|
case "openrouter": return "openrouter"
|
|
case "gemini": return "gemini"
|
|
case "anthropic": return "anthropic"
|
|
case "xai": return "xai"
|
|
case "mistral": return "mistral"
|
|
case "cometapi": return "cometapi"
|
|
case "codingPlanX": return "codingplanx"
|
|
case "codex_oauth": return "openai"
|
|
case "apple": return "apple"
|
|
case "custom": return "custom"
|
|
default: return nil
|
|
}
|
|
}
|
|
}
|