Support ultrawide layout with equal columns and taiji branding.
Use 50/50 mode workspace columns, widen content to 1920px on fish screens, replace header logo with taiji icon, and add full-page taiji backdrop. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
"use client";
|
||||
|
||||
import { Sparkles } from "lucide-react";
|
||||
import { APP_CONTAINER } from "@/lib/layout";
|
||||
|
||||
export function ModeWorkspace({
|
||||
children,
|
||||
@@ -12,18 +13,20 @@ export function ModeWorkspace({
|
||||
aiTitle?: string;
|
||||
}) {
|
||||
return (
|
||||
<div className="mx-auto w-full max-w-6xl px-4 py-6 lg:py-8">
|
||||
<div className="grid gap-6 lg:grid-cols-[minmax(0,1fr)_minmax(280px,380px)] lg:items-start lg:gap-8">
|
||||
<div className="space-y-5">{children}</div>
|
||||
<aside className="lg:sticky lg:top-6">
|
||||
<div className="zen-card flex min-h-[320px] flex-col rounded-2xl border border-border/60 bg-card/90 shadow-md backdrop-blur-sm lg:min-h-[calc(100vh-8rem)]">
|
||||
<div className={`${APP_CONTAINER} py-6 lg:py-8`}>
|
||||
<div className="grid gap-6 lg:grid-cols-2 lg:items-stretch lg:gap-8 xl:gap-10">
|
||||
<div className="grid h-full min-h-0 auto-rows-fr gap-5 lg:min-h-[calc(100vh-9rem)]">
|
||||
{children}
|
||||
</div>
|
||||
<aside className="flex min-h-[320px] flex-col lg:min-h-[calc(100vh-9rem)]">
|
||||
<div className="zen-card flex min-h-0 flex-1 flex-col rounded-2xl border border-border/60 bg-card/90 shadow-md backdrop-blur-sm">
|
||||
<div className="flex items-center gap-2 border-b border-border/50 px-5 py-4">
|
||||
<Sparkles size={18} className="text-primary/80" />
|
||||
<h2 className="text-sm font-medium tracking-widest text-muted-foreground">
|
||||
{aiTitle}
|
||||
</h2>
|
||||
</div>
|
||||
<div className="flex flex-1 flex-col p-4 sm:p-5">{aiPanel}</div>
|
||||
<div className="flex min-h-0 flex-1 flex-col p-4 sm:p-5">{aiPanel}</div>
|
||||
</div>
|
||||
</aside>
|
||||
</div>
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
import { TaijiWatermark } from "@/components/svg/taiji";
|
||||
|
||||
/** 全页太极背景水印 */
|
||||
export default function TaijiBackdrop() {
|
||||
return (
|
||||
<div
|
||||
aria-hidden
|
||||
className="pointer-events-none fixed inset-0 -z-10 overflow-hidden bg-background/80"
|
||||
>
|
||||
<TaijiWatermark className="absolute left-1/2 top-1/2 h-[min(95vmin,1200px)] w-[min(95vmin,1200px)] -translate-x-1/2 -translate-y-1/2 opacity-90" />
|
||||
<TaijiWatermark className="absolute -right-[8%] top-[6%] h-[min(42vmin,520px)] w-[min(42vmin,520px)] opacity-45" />
|
||||
<TaijiWatermark className="absolute -left-[10%] bottom-[4%] h-[min(38vmin,460px)] w-[min(38vmin,460px)] opacity-40" />
|
||||
</div>
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user