diff --git a/app/components/CommunityNetwork.tsx b/app/components/CommunityNetwork.tsx new file mode 100644 index 00000000..b6beb80c --- /dev/null +++ b/app/components/CommunityNetwork.tsx @@ -0,0 +1,105 @@ +"use client"; + +import Image from "next/image"; +import { ArrowUpRight } from "lucide-react"; +import { motion, useReducedMotion } from "motion/react"; +import { cn } from "@/lib/utils"; + +type Outpost = { + key: string; + callsign: string; + title: string; + desc: string; + href: string; + live?: boolean; +}; + +/** + * 首页"社区网络"版块:三个生态前哨(monitor / mc / openInvest)做成全宽波段, + * 滚动进入视口时错峰升起,hover 时墨色从左漫过整条(反色 wipe)。 + * reduced-motion 时跳过入场动画,直接渲染最终可见状态。 + */ +export function CommunityNetwork({ + label, + outposts, +}: { + label: string; + outposts: Outpost[]; +}) { + const reduce = useReducedMotion(); + const animate = !reduce; + + return ( +