feat(landing): extract i18n keys + add English translations

Replaces all rendered Chinese strings in LandingView with $t() calls and
<i18n-t> interpolation components; adds landing namespace (62 leaf keys) to
both zh.ts and en.ts.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
mini
2026-04-21 01:30:23 +08:00
parent 6328881801
commit fc7e27671d
3 changed files with 233 additions and 58 deletions

View File

@@ -5598,4 +5598,86 @@ export default {
},
},
landing: {
nav: {
products: 'Products',
docs: 'Docs',
login: 'Sign in',
signup: 'Free trial →',
},
hero: {
badgeNew: 'NEW',
eyebrow: 'Unified access to multiple AI platforms · Zero code change',
title1: 'Your AI subscriptions,',
title2: 'are already paid for.',
sub1: 'Claude Pro · ChatGPT Plus · Codex · Gemini subscriptions',
sub2: 'Aggregated into one unified API — drop-in {openai} / {anthropic} SDK',
ctaLogin: 'Sign in →',
ctaContact: 'Contact us',
micro: 'Verified with Codex CLI · Claude Code · curl · Server egress: Singapore',
},
models: {
kicker: '// providers',
title: 'Reuse your subscriptions directly via OAuth',
sub: 'No official API key needed. No account switching.',
more: 'More',
morePlanned: 'Planned',
},
features: {
kicker: '// capabilities',
title1: 'One subscription,',
title2: 'one unified model pool',
sub: 'Consolidate subscriptions scattered across platforms into infrastructure developers can actually use',
f1Title: 'One key for all models',
f1Desc: 'No more requesting API keys or configuring base_url per provider. One {sk} routes to Claude / GPT / Gemini, auto-dispatched by model to the right account pool.',
f1b1: 'OpenAI Responses API compatible',
f1b2: 'Anthropic Messages API compatible',
f1b3: 'Smart model → provider routing',
f2Title: 'Highly available account pool',
f2Desc: 'Multi-account auto-scheduling with failover. When an upstream hits rate limits or cooldown, traffic switches to the next healthy account — token refresh is fully automatic.',
f2b1: 'Rate-limit / 5xx auto failover',
f2b2: 'OAuth token auto-refresh',
f2b3: 'Weighted round-robin · least connections',
f3Title: 'Usage dashboard',
f3Desc: 'Tokens, cost, upstream account, and latency visualized per request. Model distribution pie + trend curve + top rankings.',
f3b1: 'Per-request audit log',
f3b2: 'Multi-dimension tokens / cost stats',
f3b3: 'Export CSV / Webhook integration',
},
codeDemo: {
kicker: '// integration',
title: 'Change base_url. That\'s it.',
sub: 'Compatible with OpenAI / Anthropic / Gemini SDK — {highlight}',
subHighlight: 'zero code changes',
foot: 'Supports OpenAI Responses API · Anthropic Messages API · Gemini generateContent · Streaming SSE &amp; WebSocket',
},
dashboard: {
kicker: '// observability',
title: 'Every request, fully visible',
sub: 'Unlike opaque third-party API pools — see exactly which account was charged, which model ran, how many tokens were used, and upstream response time at a glance.',
statToday: "Today's requests",
statTokensIn: 'Input tokens',
statTokensOut: 'Output tokens',
statCost: "Today's cost",
chartTrend: 'Usage trend — last 30 days',
tableTime: 'Time',
tableModel: 'Model',
tableUpstream: 'Upstream',
tableStatus: 'Status',
tableUsage: 'Usage',
},
footer: {
tagline1: 'Aggregate multiple AI subscriptions into one unified API.',
tagline2: 'Put your already-paid subscriptions to work.',
colProducts: 'Products',
colAccount: 'Account',
colContact: 'Contact',
linkDocs: 'Docs',
linkFeatures: 'Features',
linkChangelog: 'Changelog',
linkLogin: 'Sign in',
linkRegister: 'Register',
},
},
}