{item.scenario}
+{item.name}
+{item.model_id}
+ {item.description}
+ {model && group ? ( + <> ++ {t('Group')}: {group} · {t('Per 1M tokens')} +
+ > + ) : ( ++ {status} +
+ )} + + {t('View current prices and access')} → + +Static pricing link
{t('Dynamic Pricing')}
+ } + return ( ++ {formatRequestPrice(model, false, 1, 1, props.group)} / {t('request')} +
+ ) + } + const types = ['input', 'output'] as const + return ( +{item.scenario}
+{item.model_id}
+ {item.description}
+ {model && group ? ( + <> ++ {t('Group')}: {group} · {t('Per 1M tokens')} +
+ > + ) : ( ++ {status} +
+ )} + + {t('View current prices and access')} → + ++ {t('No models available for this account')} +
+ )} + >, + target.element, + target.element.closest('section')?.id + ) + ) +} diff --git a/web/src/features/home/index.tsx b/web/src/features/home/index.tsx index 6e97f75a5085..4567e84324f7 100644 --- a/web/src/features/home/index.tsx +++ b/web/src/features/home/index.tsx @@ -37,12 +37,14 @@ import { isLikelyHtml } from '@/lib/content-format' import { useAuthStore } from '@/stores/auth-store' import { CTA, Features, Hero, HowItWorks, Stats } from './components' +import { LandingModelZones } from './components/landing-model-zones' import { useHomePageContent } from './hooks' export function Home() { const { i18n, t } = useTranslation() const navigate = useNavigate() const iframeRef = useRef{Object.keys(billingMultipliers).length > 0 ? '按模型计价' - : `官网价 ×${Number( + : `${t('Versioned base price')} ×${Number( sub.billing_multiplier || 1 ).toFixed(2)}`}
diff --git a/web/src/features/wallet/components/recharge-form-card.tsx b/web/src/features/wallet/components/recharge-form-card.tsx index 684c6b4820ad..980b6277d27e 100644 --- a/web/src/features/wallet/components/recharge-form-card.tsx +++ b/web/src/features/wallet/components/recharge-form-card.tsx @@ -34,10 +34,7 @@ import { TooltipProvider, TooltipTrigger, } from '@/components/ui/tooltip' -import { - cnyToComputePoints, - formatComputePoints, -} from '@/lib/compute-points' +import { cnyToComputePoints, formatComputePoints } from '@/lib/compute-points' import { formatNumber } from '@/lib/format' import { cn } from '@/lib/utils' @@ -232,9 +229,6 @@ export function RechargeFormCard({ <>{t( 'Top-ups remain wallet cash; compute points are a display conversion only.' diff --git a/web/src/i18n/locales/en.json b/web/src/i18n/locales/en.json index f012ef0ed383..3f1fc864027d 100644 --- a/web/src/i18n/locales/en.json +++ b/web/src/i18n/locales/en.json @@ -1,5 +1,6 @@ { "translation": { + "Versioned base price": "Versioned base price", "Sign in to view current prices": "Sign in to view current prices", "Current prices unavailable": "Current prices unavailable. Please retry in the model catalog.", "View current prices and access": "View current prices and access", diff --git a/web/src/i18n/locales/zh.json b/web/src/i18n/locales/zh.json index 3f1b99b4347d..5259a6826b8d 100644 --- a/web/src/i18n/locales/zh.json +++ b/web/src/i18n/locales/zh.json @@ -1,5 +1,6 @@ { "translation": { + "Versioned base price": "版本基准价", "Sign in to view current prices": "登录后查看实时价格", "Current prices unavailable": "暂时无法读取价格,请到模型广场重试", "View current prices and access": "查看实时价格与接入", @@ -5281,7 +5282,6 @@ "DeepSeek call credit": "DeepSeek 调用额度", "Classroom model shared credit": "课堂模型共享额度", "Compute points": "算力点", - "1 CNY = 2,000 compute points": "1 元 = 2,000 算力点", "Top-ups remain wallet cash; compute points are a display conversion only.": "充值仍记入按量钱包;算力点仅用于清晰展示额度,不改变后台真实账本。", "Estimated credit": "预计到账", "A valid code grants the product directly. No payment is required before redemption.": "有效兑换码可直接领取商品,无需先完成付款。", From 29a2ccbadbfbc6518fba3960f5fadf9aca007f3d Mon Sep 17 00:00:00 2001 From: OnePlus_X <13660828666@139.com> Date: Sat, 17 Oct 2026 19:23:59 +0800 Subject: [PATCH 4/4] test: include Bigfish purchase guards in PostgreSQL accounting CI --- .github/workflows/ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 396d4108d97c..ea0499927399 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -140,11 +140,11 @@ jobs: matrix: include: - package: model - tests: 'TestPostgres|TestSubscriptionReservation|TestTopUp|Test.*PaymentReceipt|TestMonthlyTiersShareOne|TestMonthlyUpgradeKeeps|TestRepeatedPackPurchases|TestValidateV1ContractRejectsFrozenRuleDrift' + tests: 'TestPostgres|TestSubscriptionReservation|TestTopUp|Test.*PaymentReceipt|TestMonthlyTiersShareOne|TestMonthlyUpgradeKeeps|TestRepeatedPackPurchases|TestValidateV1ContractRejectsFrozenRuleDrift|TestBigfish' - package: service tests: 'TestSubscriptionBillingSession|TestBillingSessionRefundIsTerminal' - package: controller - tests: 'TestIFLinkPayHTTP' + tests: 'TestIFLinkPayHTTP|TestIFLinkPayBigfish' services: postgres: image: postgres:16