60 lines
2.2 KiB
TypeScript
60 lines
2.2 KiB
TypeScript
import { Button } from "@/components/ui/button";
|
|
import { ArrowRight } from "lucide-react";
|
|
import type { Lang } from "@/app/page";
|
|
|
|
const MANAGER_URL = "https://code.xinghanlab.com/";
|
|
|
|
const copy = {
|
|
en: {
|
|
title: "Move an idea into a real development flow",
|
|
description:
|
|
"Heicode does more than generate code. It organizes product intent, code, permissions, models, deployment, and maintenance into one auditable software lifecycle.",
|
|
primary: "Enter Heicode",
|
|
secondary: "Download client",
|
|
},
|
|
zh: {
|
|
title: "让想法进入真实开发流程",
|
|
description:
|
|
"不是只生成代码,而是把产品、代码、权限、模型、部署和维护组织成一个可审计的软件生命周期。",
|
|
primary: "进入 Heicode",
|
|
secondary: "下载客户端",
|
|
},
|
|
} satisfies Record<Lang, {
|
|
title: string;
|
|
description: string;
|
|
primary: string;
|
|
secondary: string;
|
|
}>;
|
|
|
|
export function CTA({ lang }: { lang: Lang }) {
|
|
const t = copy[lang];
|
|
|
|
return (
|
|
<section className="border-t border-border bg-foreground py-20 text-background sm:py-28">
|
|
<div className="mx-auto max-w-7xl px-4 sm:px-6 lg:px-8">
|
|
<div className="mx-auto max-w-2xl text-center">
|
|
<h2 className="text-3xl font-black tracking-tight sm:text-5xl">
|
|
{t.title}
|
|
</h2>
|
|
<p className="mt-4 text-lg text-background/70">
|
|
{t.description}
|
|
</p>
|
|
<div className="mt-10 flex flex-col items-center justify-center gap-4 sm:flex-row">
|
|
<Button size="lg" className="h-12 rounded-full bg-primary px-7 text-primary-foreground hover:bg-primary/90" asChild>
|
|
<a href={MANAGER_URL} target="_blank" rel="noreferrer">
|
|
{t.primary}
|
|
<ArrowRight className="h-4 w-4" />
|
|
</a>
|
|
</Button>
|
|
<Button variant="outline" size="lg" className="h-12 rounded-full border-background/30 bg-transparent px-7 text-background hover:bg-background hover:text-foreground" asChild>
|
|
<a href={MANAGER_URL} target="_blank" rel="noreferrer">
|
|
{t.secondary}
|
|
</a>
|
|
</Button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
);
|
|
}
|