chore: init main branch
This commit is contained in:
commit
549c8b5b13
231 files changed
+27286
No files matched your search
@@ -0,0 +1,715 @@
|
||||
// Icon metadata for search and categorization
|
||||
import { IconMetadata } from "@/types/icon";
|
||||
|
||||
export const iconMetadata: Record<string, IconMetadata> = {
|
||||
aigocode: {
|
||||
name: "aigocode",
|
||||
displayName: "AIGoCode",
|
||||
category: "ai-provider",
|
||||
keywords: ["aigocode", "aigo", "code", "third-party"],
|
||||
defaultColor: "#5B7FFF",
|
||||
},
|
||||
apikeyfun: {
|
||||
name: "apikeyfun",
|
||||
displayName: "APIKEY.FUN",
|
||||
category: "ai-provider",
|
||||
keywords: [
|
||||
"apikeyfun",
|
||||
"api key",
|
||||
"gateway",
|
||||
"relay",
|
||||
"claude",
|
||||
"codex",
|
||||
"gemini",
|
||||
],
|
||||
defaultColor: "#9C3F00",
|
||||
},
|
||||
apinebula: {
|
||||
name: "apinebula",
|
||||
displayName: "APINebula",
|
||||
category: "ai-provider",
|
||||
keywords: [
|
||||
"apinebula",
|
||||
"api nebula",
|
||||
"gateway",
|
||||
"relay",
|
||||
"claude",
|
||||
"codex",
|
||||
"gemini",
|
||||
],
|
||||
defaultColor: "#C86F49",
|
||||
},
|
||||
atlascloud: {
|
||||
name: "atlascloud",
|
||||
displayName: "AtlasCloud",
|
||||
category: "ai-provider",
|
||||
keywords: [
|
||||
"atlascloud",
|
||||
"atlas cloud",
|
||||
"coding plan",
|
||||
"openai",
|
||||
"anthropic",
|
||||
"codex",
|
||||
"claude",
|
||||
],
|
||||
defaultColor: "#111111",
|
||||
},
|
||||
sudocode: {
|
||||
name: "sudocode",
|
||||
displayName: "SudoCode.chat",
|
||||
category: "ai-provider",
|
||||
keywords: [
|
||||
"sudocode",
|
||||
"sudo code",
|
||||
"chat",
|
||||
"gateway",
|
||||
"relay",
|
||||
"claude",
|
||||
"codex",
|
||||
"gemini",
|
||||
"openclaw",
|
||||
],
|
||||
defaultColor: "#111111",
|
||||
},
|
||||
"sudocode-us": {
|
||||
name: "sudocode-us",
|
||||
displayName: "SudoCode.us",
|
||||
category: "ai-provider",
|
||||
keywords: [
|
||||
"sudocode",
|
||||
"sudo code",
|
||||
"us",
|
||||
"gateway",
|
||||
"relay",
|
||||
"claude",
|
||||
"codex",
|
||||
"gemini",
|
||||
"openclaw",
|
||||
],
|
||||
defaultColor: "#111111",
|
||||
},
|
||||
alibaba: {
|
||||
name: "alibaba",
|
||||
displayName: "Alibaba",
|
||||
category: "ai-provider",
|
||||
keywords: ["qwen", "tongyi"],
|
||||
defaultColor: "#FF6A00",
|
||||
},
|
||||
amux: {
|
||||
name: "amux",
|
||||
displayName: "Amux",
|
||||
category: "ai-provider",
|
||||
keywords: ["amux", "amuxapi", "aggregator", "relay", "gateway", "gpt"],
|
||||
defaultColor: "#000000",
|
||||
},
|
||||
anthropic: {
|
||||
name: "anthropic",
|
||||
displayName: "Anthropic",
|
||||
category: "ai-provider",
|
||||
keywords: ["claude"],
|
||||
defaultColor: "#D4915D",
|
||||
},
|
||||
aws: {
|
||||
name: "aws",
|
||||
displayName: "AWS",
|
||||
category: "cloud",
|
||||
keywords: ["amazon", "cloud"],
|
||||
defaultColor: "#FF9900",
|
||||
},
|
||||
azure: {
|
||||
name: "azure",
|
||||
displayName: "Azure",
|
||||
category: "cloud",
|
||||
keywords: ["microsoft", "cloud"],
|
||||
defaultColor: "#0078D4",
|
||||
},
|
||||
baidu: {
|
||||
name: "baidu",
|
||||
displayName: "Baidu",
|
||||
category: "ai-provider",
|
||||
keywords: ["ernie", "wenxin"],
|
||||
defaultColor: "#2932E1",
|
||||
},
|
||||
bailian: {
|
||||
name: "bailian",
|
||||
displayName: "Bailian",
|
||||
category: "ai-provider",
|
||||
keywords: ["bailian", "dashscope", "aliyun", "alibaba"],
|
||||
defaultColor: "#624AFF",
|
||||
},
|
||||
bytedance: {
|
||||
name: "bytedance",
|
||||
displayName: "bytedance",
|
||||
category: "other",
|
||||
keywords: [],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
huoshan: {
|
||||
name: "huoshan",
|
||||
displayName: "火山方舟",
|
||||
category: "ai-provider",
|
||||
keywords: ["huoshan", "volcengine", "ark", "agentplan", "byteplus"],
|
||||
defaultColor: "#3370FF",
|
||||
},
|
||||
byteplus: {
|
||||
name: "byteplus",
|
||||
displayName: "BytePlus",
|
||||
category: "ai-provider",
|
||||
keywords: ["byteplus", "volcengine", "ark", "modelark"],
|
||||
defaultColor: "#3370FF",
|
||||
},
|
||||
ccsub: {
|
||||
name: "ccsub",
|
||||
displayName: "CCSub",
|
||||
category: "ai-provider",
|
||||
keywords: ["ccsub", "aggregator", "relay", "claude", "codex", "gateway"],
|
||||
defaultColor: "#1E88E5",
|
||||
},
|
||||
subrouter: {
|
||||
name: "subrouter",
|
||||
displayName: "SubRouter",
|
||||
category: "ai-provider",
|
||||
keywords: [
|
||||
"subrouter",
|
||||
"subrouter.ai",
|
||||
"aggregator",
|
||||
"relay",
|
||||
"claude",
|
||||
"codex",
|
||||
"gemini",
|
||||
"gateway",
|
||||
],
|
||||
defaultColor: "#0D9488",
|
||||
},
|
||||
chatglm: {
|
||||
name: "chatglm",
|
||||
displayName: "chatglm",
|
||||
category: "other",
|
||||
keywords: [],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
claude: {
|
||||
name: "claude",
|
||||
displayName: "Claude",
|
||||
category: "ai-provider",
|
||||
keywords: ["anthropic"],
|
||||
defaultColor: "#D4915D",
|
||||
},
|
||||
cherryin: {
|
||||
name: "cherryin",
|
||||
displayName: "CherryIN",
|
||||
category: "ai-provider",
|
||||
keywords: [
|
||||
"cherryin",
|
||||
"cherry",
|
||||
"gateway",
|
||||
"relay",
|
||||
"newapi",
|
||||
"claude",
|
||||
"codex",
|
||||
],
|
||||
defaultColor: "#FB6354",
|
||||
},
|
||||
claudeapi: {
|
||||
name: "claudeapi",
|
||||
displayName: "ClaudeAPI",
|
||||
category: "ai-provider",
|
||||
keywords: ["claudeapi", "claude", "anthropic", "bedrock"],
|
||||
},
|
||||
claudecn: {
|
||||
name: "claudecn",
|
||||
displayName: "ClaudeCN",
|
||||
category: "ai-provider",
|
||||
keywords: ["claudecn", "claude", "enterprise"],
|
||||
},
|
||||
cloudflare: {
|
||||
name: "cloudflare",
|
||||
displayName: "Cloudflare",
|
||||
category: "cloud",
|
||||
keywords: ["cloudflare", "cdn"],
|
||||
defaultColor: "#F38020",
|
||||
},
|
||||
code0: {
|
||||
name: "code0",
|
||||
displayName: "Code0",
|
||||
category: "ai-provider",
|
||||
keywords: ["code0", "code0ai", "aggregator", "relay", "gateway", "gpt"],
|
||||
defaultColor: "#20C050",
|
||||
},
|
||||
cohere: {
|
||||
name: "cohere",
|
||||
displayName: "Cohere",
|
||||
category: "ai-provider",
|
||||
keywords: ["cohere"],
|
||||
defaultColor: "#39594D",
|
||||
},
|
||||
copilot: {
|
||||
name: "copilot",
|
||||
displayName: "copilot",
|
||||
category: "other",
|
||||
keywords: [],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
etok: {
|
||||
name: "etok",
|
||||
displayName: "ETok",
|
||||
category: "ai-provider",
|
||||
keywords: ["etok", "ai", "programming"],
|
||||
defaultColor: "#F97316",
|
||||
},
|
||||
fenno: {
|
||||
name: "fenno",
|
||||
displayName: "FennoAI",
|
||||
category: "ai-provider",
|
||||
keywords: [
|
||||
"fenno",
|
||||
"fennoai",
|
||||
"aggregator",
|
||||
"relay",
|
||||
"claude",
|
||||
"codex",
|
||||
"gpt",
|
||||
"gateway",
|
||||
],
|
||||
defaultColor: "#000000",
|
||||
},
|
||||
zetaapi: {
|
||||
name: "zetaapi",
|
||||
displayName: "ZetaAPI",
|
||||
category: "ai-provider",
|
||||
keywords: [
|
||||
"zetaapi",
|
||||
"zeta",
|
||||
"aggregator",
|
||||
"relay",
|
||||
"claude",
|
||||
"gpt",
|
||||
"gateway",
|
||||
],
|
||||
defaultColor: "#000000",
|
||||
},
|
||||
teamorouter: {
|
||||
name: "teamorouter",
|
||||
displayName: "TeamoRouter",
|
||||
category: "ai-provider",
|
||||
keywords: [
|
||||
"teamorouter",
|
||||
"teamo",
|
||||
"router",
|
||||
"aggregator",
|
||||
"relay",
|
||||
"gateway",
|
||||
"gpt",
|
||||
],
|
||||
defaultColor: "#000000",
|
||||
},
|
||||
cubence: {
|
||||
name: "cubence",
|
||||
displayName: "Cubence",
|
||||
category: "ai-provider",
|
||||
keywords: ["cubence", "api", "relay"],
|
||||
defaultColor: "#4B5563",
|
||||
},
|
||||
deepseek: {
|
||||
name: "deepseek",
|
||||
displayName: "DeepSeek",
|
||||
category: "ai-provider",
|
||||
keywords: ["deep", "seek"],
|
||||
defaultColor: "#1E88E5",
|
||||
},
|
||||
doubao: {
|
||||
name: "doubao",
|
||||
displayName: "doubao",
|
||||
category: "other",
|
||||
keywords: [],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
gemini: {
|
||||
name: "gemini",
|
||||
displayName: "Gemini",
|
||||
category: "ai-provider",
|
||||
keywords: ["google"],
|
||||
defaultColor: "#4285F4",
|
||||
},
|
||||
gemma: {
|
||||
name: "gemma",
|
||||
displayName: "gemma",
|
||||
category: "other",
|
||||
keywords: [],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
github: {
|
||||
name: "github",
|
||||
displayName: "GitHub",
|
||||
category: "tool",
|
||||
keywords: ["git", "version control"],
|
||||
defaultColor: "#181717",
|
||||
},
|
||||
githubcopilot: {
|
||||
name: "githubcopilot",
|
||||
displayName: "githubcopilot",
|
||||
category: "other",
|
||||
keywords: [],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
google: {
|
||||
name: "google",
|
||||
displayName: "Google",
|
||||
category: "ai-provider",
|
||||
keywords: ["gemini", "bard"],
|
||||
defaultColor: "#4285F4",
|
||||
},
|
||||
googlecloud: {
|
||||
name: "googlecloud",
|
||||
displayName: "googlecloud",
|
||||
category: "other",
|
||||
keywords: [],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
grok: {
|
||||
name: "grok",
|
||||
displayName: "grok",
|
||||
category: "other",
|
||||
keywords: [],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
huawei: {
|
||||
name: "huawei",
|
||||
displayName: "Huawei",
|
||||
category: "cloud",
|
||||
keywords: ["huawei", "cloud"],
|
||||
defaultColor: "#FF0000",
|
||||
},
|
||||
huggingface: {
|
||||
name: "huggingface",
|
||||
displayName: "Hugging Face",
|
||||
category: "ai-provider",
|
||||
keywords: ["huggingface", "hf"],
|
||||
defaultColor: "#FFD21E",
|
||||
},
|
||||
hunyuan: {
|
||||
name: "hunyuan",
|
||||
displayName: "hunyuan",
|
||||
category: "other",
|
||||
keywords: [],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
kimi: {
|
||||
name: "kimi",
|
||||
displayName: "Kimi",
|
||||
category: "ai-provider",
|
||||
keywords: ["moonshot"],
|
||||
defaultColor: "#1783FF",
|
||||
},
|
||||
meta: {
|
||||
name: "meta",
|
||||
displayName: "Meta",
|
||||
category: "ai-provider",
|
||||
keywords: ["facebook", "llama"],
|
||||
defaultColor: "#0081FB",
|
||||
},
|
||||
midjourney: {
|
||||
name: "midjourney",
|
||||
displayName: "midjourney",
|
||||
category: "other",
|
||||
keywords: [],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
minimax: {
|
||||
name: "minimax",
|
||||
displayName: "MiniMax",
|
||||
category: "ai-provider",
|
||||
keywords: ["minimax"],
|
||||
defaultColor: "#FF6B6B",
|
||||
},
|
||||
zenmux: {
|
||||
name: "zenmux",
|
||||
displayName: "ZenMux",
|
||||
category: "ai-provider",
|
||||
keywords: ["zenmux", "zen", "mux"],
|
||||
defaultColor: "#6366F1",
|
||||
},
|
||||
mistral: {
|
||||
name: "mistral",
|
||||
displayName: "Mistral",
|
||||
category: "ai-provider",
|
||||
keywords: ["mistral"],
|
||||
defaultColor: "#FF7000",
|
||||
},
|
||||
nekocode: {
|
||||
name: "nekocode",
|
||||
displayName: "NekoCode",
|
||||
category: "ai-provider",
|
||||
keywords: ["nekocode", "neko", "aggregator", "relay", "gateway", "gpt"],
|
||||
defaultColor: "#A64BC4",
|
||||
},
|
||||
newapi: {
|
||||
name: "newapi",
|
||||
displayName: "newapi",
|
||||
category: "other",
|
||||
keywords: [],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
notion: {
|
||||
name: "notion",
|
||||
displayName: "notion",
|
||||
category: "other",
|
||||
keywords: [],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
ollama: {
|
||||
name: "ollama",
|
||||
displayName: "ollama",
|
||||
category: "other",
|
||||
keywords: [],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
openai: {
|
||||
name: "openai",
|
||||
displayName: "OpenAI",
|
||||
category: "ai-provider",
|
||||
keywords: ["gpt", "chatgpt"],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
openclaw: {
|
||||
name: "openclaw",
|
||||
displayName: "OpenClaw",
|
||||
category: "ai-provider",
|
||||
keywords: ["openclaw", "lobster", "claw"],
|
||||
defaultColor: "#ff4f40",
|
||||
},
|
||||
hermes: {
|
||||
name: "hermes",
|
||||
displayName: "Hermes",
|
||||
category: "ai-provider",
|
||||
keywords: ["hermes", "agent", "nous", "nousresearch"],
|
||||
defaultColor: "#000000",
|
||||
},
|
||||
packycode: {
|
||||
name: "packycode",
|
||||
displayName: "PackyCode",
|
||||
category: "ai-provider",
|
||||
keywords: ["packycode", "packy", "packyapi"],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
pateway: {
|
||||
name: "pateway",
|
||||
displayName: "PatewayAI",
|
||||
category: "ai-provider",
|
||||
keywords: ["pateway", "patewayai", "claude", "codex"],
|
||||
},
|
||||
palm: {
|
||||
name: "palm",
|
||||
displayName: "palm",
|
||||
category: "other",
|
||||
keywords: [],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
perplexity: {
|
||||
name: "perplexity",
|
||||
displayName: "Perplexity",
|
||||
category: "ai-provider",
|
||||
keywords: ["perplexity"],
|
||||
defaultColor: "#20808D",
|
||||
},
|
||||
qwen: {
|
||||
name: "qwen",
|
||||
displayName: "qwen",
|
||||
category: "other",
|
||||
keywords: [],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
stability: {
|
||||
name: "stability",
|
||||
displayName: "stability",
|
||||
category: "other",
|
||||
keywords: [],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
tencent: {
|
||||
name: "tencent",
|
||||
displayName: "Tencent",
|
||||
category: "ai-provider",
|
||||
keywords: ["hunyuan"],
|
||||
defaultColor: "#00A4FF",
|
||||
},
|
||||
unity2: {
|
||||
name: "unity2",
|
||||
displayName: "Unity2.ai",
|
||||
category: "ai-provider",
|
||||
keywords: ["unity2", "aggregator", "relay", "claude", "codex", "gateway"],
|
||||
defaultColor: "#000000",
|
||||
},
|
||||
vercel: {
|
||||
name: "vercel",
|
||||
displayName: "vercel",
|
||||
category: "other",
|
||||
keywords: [],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
wenxin: {
|
||||
name: "wenxin",
|
||||
displayName: "wenxin",
|
||||
category: "other",
|
||||
keywords: [],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
xai: {
|
||||
name: "xai",
|
||||
displayName: "xai",
|
||||
category: "other",
|
||||
keywords: [],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
yi: {
|
||||
name: "yi",
|
||||
displayName: "yi",
|
||||
category: "other",
|
||||
keywords: [],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
zeroone: {
|
||||
name: "zeroone",
|
||||
displayName: "zeroone",
|
||||
category: "other",
|
||||
keywords: [],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
zhipu: {
|
||||
name: "zhipu",
|
||||
displayName: "Zhipu AI",
|
||||
category: "ai-provider",
|
||||
keywords: ["chatglm", "glm"],
|
||||
defaultColor: "#0F62FE",
|
||||
},
|
||||
openrouter: {
|
||||
name: "openrouter",
|
||||
displayName: "OpenRouter",
|
||||
category: "ai-provider",
|
||||
keywords: ["openrouter", "router", "aggregator"],
|
||||
defaultColor: "#6566F1",
|
||||
},
|
||||
pipellm: {
|
||||
name: "pipellm",
|
||||
displayName: "PIPELLM",
|
||||
category: "ai-provider",
|
||||
keywords: ["pipellm", "pipe"],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
qiniu: {
|
||||
name: "qiniu",
|
||||
displayName: "七牛云",
|
||||
category: "ai-provider",
|
||||
keywords: [
|
||||
"qiniu",
|
||||
"qnaigc",
|
||||
"modelink",
|
||||
"aggregator",
|
||||
"relay",
|
||||
"claude",
|
||||
"codex",
|
||||
"gpt",
|
||||
"gemini",
|
||||
"gateway",
|
||||
],
|
||||
defaultColor: "#00AAE7",
|
||||
},
|
||||
runapi: {
|
||||
name: "runapi",
|
||||
displayName: "RunAPI",
|
||||
category: "ai-provider",
|
||||
keywords: ["runapi", "run", "aggregator", "gateway"],
|
||||
},
|
||||
relaxcode: {
|
||||
name: "relaxcode",
|
||||
displayName: "RelaxyCode",
|
||||
category: "ai-provider",
|
||||
keywords: ["relaxycode", "relaxcode", "relax"],
|
||||
},
|
||||
eflowcode: {
|
||||
name: "eflowcode",
|
||||
displayName: "E-FlowCode",
|
||||
category: "ai-provider",
|
||||
keywords: ["eflowcode", "e-flowcode", "flow"],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
shengsuanyun: {
|
||||
name: "shengsuanyun",
|
||||
displayName: "Shengsuanyun",
|
||||
category: "ai-provider",
|
||||
keywords: ["shengsuanyun", "shengsuanyun"],
|
||||
defaultColor: "currentColor",
|
||||
},
|
||||
lioncc: {
|
||||
name: "lioncc",
|
||||
displayName: "LionCC",
|
||||
category: "ai-provider",
|
||||
keywords: ["lioncc", "lion"],
|
||||
defaultColor: "#F9DA3C",
|
||||
},
|
||||
longcat: {
|
||||
name: "longcat",
|
||||
displayName: "LongCat",
|
||||
category: "ai-provider",
|
||||
keywords: ["longcat", "long", "cat"],
|
||||
defaultColor: "#29E154",
|
||||
},
|
||||
modelscope: {
|
||||
name: "modelscope",
|
||||
displayName: "ModelScope",
|
||||
category: "ai-provider",
|
||||
keywords: ["modelscope", "alibaba", "scope"],
|
||||
defaultColor: "#624AFF",
|
||||
},
|
||||
aihubmix: {
|
||||
name: "aihubmix",
|
||||
displayName: "AiHubMix",
|
||||
category: "ai-provider",
|
||||
keywords: ["aihubmix", "hub", "mix", "aggregator"],
|
||||
defaultColor: "#006FFB",
|
||||
},
|
||||
xiaomimimo: {
|
||||
name: "xiaomimimo",
|
||||
displayName: "Xiaomi MiMo",
|
||||
category: "ai-provider",
|
||||
keywords: ["xiaomimimo", "xiaomi", "mimo"],
|
||||
defaultColor: "#000000",
|
||||
},
|
||||
novita: {
|
||||
name: "novita",
|
||||
displayName: "Novita AI",
|
||||
category: "ai-provider",
|
||||
keywords: ["novita", "novita ai"],
|
||||
defaultColor: "#000000",
|
||||
},
|
||||
nvidia: {
|
||||
name: "nvidia",
|
||||
displayName: "NVIDIA",
|
||||
category: "ai-provider",
|
||||
keywords: ["nvidia", "nim", "gpu"],
|
||||
defaultColor: "#74B71B",
|
||||
},
|
||||
stepfun: {
|
||||
name: "stepfun",
|
||||
displayName: "StepFun",
|
||||
category: "ai-provider",
|
||||
keywords: ["stepfun", "step", "jieyue", "阶跃星辰"],
|
||||
defaultColor: "#005AFF",
|
||||
},
|
||||
};
|
||||
|
||||
export function getIconMetadata(name: string): IconMetadata | undefined {
|
||||
return iconMetadata[name.toLowerCase()];
|
||||
}
|
||||
|
||||
export function searchIcons(query: string): string[] {
|
||||
const lowerQuery = query.toLowerCase();
|
||||
return Object.values(iconMetadata)
|
||||
.filter(
|
||||
(meta) =>
|
||||
meta.name.includes(lowerQuery) ||
|
||||
meta.displayName.toLowerCase().includes(lowerQuery) ||
|
||||
meta.keywords.some((k) => k.includes(lowerQuery)),
|
||||
)
|
||||
.map((meta) => meta.name);
|
||||
}
|
||||
Reference in new issue
Block a user