"use client"; import { useEffect, useState } from "react"; import Link from "next/link"; import { Activity, ArrowRight, BarChart3, Check, CheckCircle2, CloudSun, Gauge, LineChart, LockKeyhole, Radar, ShieldCheck, TrendingUp, } from "lucide-react"; import { I18nProvider, useI18n } from "@/hooks/useI18n"; import { getSupabaseBrowserClient, hasSupabasePublicEnv, } from "@/lib/supabase/client"; const RAW_MARKET_ROWS_EN = [ ["New York", "91.8°F", "+2.4", "High Anomaly", "Approve Temp"], ["Austin", "103.1°F", "+1.1", "Normal", "Observe"], ["Seoul", "83.4°F", "-0.7", "Low Anomaly", "Veto Anomaly"], ["Tokyo", "88.2°F", "+1.8", "High Anomaly", "Approve Temp"], ["London", "72.6°F", "-0.2", "Normal", "Observe"], ]; const RAW_MARKET_ROWS_ZH = [ ["纽约", "91.8°F", "+2.4", "高偏差", "符合高温"], ["奥斯汀", "103.1°F", "+1.1", "正常", "持续观察"], ["首尔", "83.4°F", "-0.7", "低偏差", "否决偏差"], ["东京", "88.2°F", "+1.8", "高偏差", "符合高温"], ["伦敦", "72.6°F", "-0.2", "正常", "持续观察"], ]; const COVERAGE_EN = [ "Live airport observations", "DEB blend forecast", "Model-implied distribution", "Intraday observation windows", "AI weather evidence", "Paid Telegram alerts", ]; const COVERAGE_ZH = [ "机场实况观测数据", "DEB 智能融合预报", "模型隐含分布预测", "日内分段观测窗口", "AI 气象证据链解读", "付费电报实时通知", ]; const PRO_FEATURES_EN = [ "Real-time METAR observations & runway sensor data", "Real-time METAR observations & alerts", "DEB blend forecast model", "Model-implied distribution analysis", "Intraday observation windows & deviation metrics", "Paid Telegram alerts & Webhook API", "24/7 priority professional support", ]; const PRO_FEATURES_ZH = [ "实时 METAR 机场实测与跑道传感器数据", "实时 METAR 机场实测与预警", "DEB 智能融合预测模型", "模型隐含分布预测与估算", "日内观测窗口与偏差度量指标", "付费电报群通知与 API 接口推送", "7×24小时专业技术与客服支持", ]; function InstitutionalLandingScreen() { const { locale, toggleLocale } = useI18n(); const isEn = locale === "en-US"; const [isAuthenticated, setIsAuthenticated] = useState(false); const [authChecked, setAuthChecked] = useState(false); useEffect(() => { if (!hasSupabasePublicEnv()) { setAuthChecked(true); return; } const supabase = getSupabaseBrowserClient(); supabase.auth.getSession().then(({ data: { session } }) => { setIsAuthenticated(!!session?.user); setAuthChecked(true); }); }, []); const marketRows = isEn ? RAW_MARKET_ROWS_EN : RAW_MARKET_ROWS_ZH; const coverage = isEn ? COVERAGE_EN : COVERAGE_ZH; const platformCards = isEn ? [ { icon: Radar, title: "Live Evidence", body: "Airport observations and official station data are structured for deviation-aware decisions.", }, { icon: Gauge, title: "Decision Workflow", body: "City cards combine model forecast, current deviation, risk, and target threshold context.", }, { icon: ShieldCheck, title: "Paid Access", body: "The product workspace is locked until the user has an active subscription.", }, ] : [ { icon: Radar, title: "实况证据", body: "针对机场 METAR 与官方站点数据进行结构化整理,专为气象决策设计。", }, { icon: Gauge, title: "决策工作流", body: "城市决策卡片依赖了气象预报、实测气温、偏差系数及目标阈值条件。", }, { icon: ShieldCheck, title: "付费准入", body: "除公开介绍和账户管理外,气象决策台仅向付费活跃订阅用户开放。", }, ]; const modelLabels = isEn ? ["DEB Blend", "Live METAR", "Model Consensus"] : ["DEB 融合预测", "METAR 机场实测", "模型多方共识"]; return (
PolyWeather
{!authChecked ? (
) : isAuthenticated ? (
{isEn ? "Enter Product" : "进入产品"}
) : ( <> {isEn ? "Log in" : "登录"} {isEn ? "Sign Up" : "注册"} {isEn ? "Enter Product" : "进入产品"} )}
{isEn ? "Paid professional dashboard" : "付费专业气象决策台"}

{isEn ? ( <> Institutional weather intelligence for{" "} professional teams. ) : ( <> 面向专业团队的机构级{" "} 天气决策台 )}

{isEn ? "PolyWeather turns live METAR observations, DEB forecast blends, model probabilities, and deviation verification logic into one professional decision workspace." : "PolyWeather 将 METAR 机场实测、DEB 智能融合预报、模型概率及偏差校验逻辑整合于一体,打造气象风险管理专业决策环境。"}

{isEn ? "Enter product" : "进入产品决策台"} {isEn ? "Subscribe / Manage account" : "订阅服务 / 管理账户"}

{isEn ? "No free product access. Subscription is required before the terminal opens." : "无免费公开产品通道。在使用决策台前必须先登录并开通订阅。"}

{isEn ? "Weather Intelligence Console" : "气象决策分析台"}
{isEn ? "Live" : "实时数据"}
{isEn ? "Temperature Metrics" : "温度决策指标"} {isEn ? "Observed / Deviation / Decision" : "实测 / 偏差 / 决策"}
{marketRows.map((row) => (
{row[0]} {row[1]} {row[2]} {row[3]} {row[4]}
))}
{isEn ? "Model Stack" : "模型堆栈"}
{modelLabels.map((label, index) => (
{label} {[82, 67, 74][index]}%
))}
{isEn ? "Current Anomaly / Action" : "当前异常与决策"}

{isEn ? "New York high-temperature target shows a positive observation deviation with confirmed airport evidence." : "纽约高温阈值监测出现显著的正向观测偏差,机场天气实况已验证确认。"}

{platformCards.map(({ body, icon: Icon, title }, i) => (

{title}

{body}

))}

{isEn ? "Data Coverage" : "数据覆盖范围"}

{isEn ? "Everything weather intelligence users need in one place." : "气象决策分析人员所需的一切,在此集结。"}

{isEn ? "Built for repeat professional use: dense tables, clear status chips, restrained color, and fast entry into paid workflows." : "专为高频专业决策设计:高数据密度、直观的状态徽标、严谨的数据呈现,助您快速进入分析流。"}

{coverage.map((item, i) => (
{item}
))}

{isEn ? "PRICING" : "价格方案"}

{isEn ? "Simple, transparent pricing" : "简单透明的定价"}

{isEn ? "One plan. Full access. No hidden fees." : "一个方案,全部功能,无隐藏费用。"}

{isEn ? "Pro Workspace" : "专业决策分析台"}

PolyWeather Pro

{isEn ? "Full access to the institutional weather intelligence workspace. Live METAR, DEB forecasts, probability distribution, AI decision cards, and real-time alerts." : "完整访问机构级天气决策分析台。实时 METAR、DEB 预报、概率分布、AI 决策卡片、实时通知。"}

$10 / {isEn ? "month" : "月"}

{isEn ? "Billed monthly. Cancel anytime." : "按月计费,随时可取消。"}

    {(isEn ? PRO_FEATURES_EN : PRO_FEATURES_ZH).map((feature) => (
  • {feature}
  • ))}
{isEn ? "Subscribe for $10/month" : "立即订阅 $10/月"}

{isEn ? "Login required. Payment via USDC on Polygon." : "需先登录。通过 Polygon 链 USDC 支付。"}

); } export function InstitutionalLandingPage() { return ( ); }