Files
zhimingge/app/learn/page.tsx
T
dekun 6265e56a7f Redesign UI with zen cards, split AI panel, and PWA install support.
Learn uses 64-gua card grid; liuyao/bazi/combined use two input cards plus sticky right AI panel; add manifest, service worker, and install prompt.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-10 23:24:55 +08:00

57 lines
1.8 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import Link from "next/link";
import PageShell from "@/components/page-shell";
import { GuaGrid } from "@/components/learn/gua-grid";
import { ZenCard } from "@/components/ui/zen-card";
import {
getGuaName,
guaNumFromMark,
listGuaMarks,
} from "@/lib/content/zhouyi";
export default async function LearnPage() {
const guaMarks = await listGuaMarks("traditional");
const items = guaMarks.map((mark) => ({
num: guaNumFromMark(mark),
name: getGuaName(mark),
href: `/learn/${guaNumFromMark(mark)}`,
}));
return (
<PageShell className="max-w-6xl px-4 py-8">
<div className="mb-8 text-center">
<h1 className="text-2xl font-bold tracking-wide"></h1>
<p className="mt-2 text-sm text-muted-foreground">
·
</p>
</div>
<div className="mb-8 grid gap-4 sm:grid-cols-2">
<ZenCard
title="繁体精简版"
subtitle="当前浏览 · 原文精要"
className="ring-1 ring-primary/20"
>
<p className="text-sm text-muted-foreground">
AI
</p>
<span className="inline-block text-xs text-primary"></span>
</ZenCard>
<Link href="/learn/other" className="block">
<ZenCard
title="简体图文版"
subtitle="互卦 · 错卦 · 综卦"
className="h-full transition-colors hover:border-primary/30"
>
<p className="text-sm text-muted-foreground">
</p>
<span className="inline-block text-xs text-primary"> </span>
</ZenCard>
</Link>
</div>
<GuaGrid items={items} />
</PageShell>
);
}