fix(frontend): adjust sidebar active text color and fix destructive button contrast

- Update sidebar active menu button text color to use theme dynamic `sidebar-primary` variable instead of hardcoded hex value.

- Add missing `destructive-foreground` variables to default theme config and styles, resolving the black-on-black text contrast issue on confirmation dialog delete buttons.

- Update changelog to track these fixes.
This commit is contained in:
ryan
2026-06-28 10:34:58 +08:00
parent 681de3b8cc
commit a25a570973
6 changed files with 36 additions and 39 deletions
+5 -5
View File
@@ -1,7 +1,7 @@
import * as React from "react";
import {cn} from "@/lib/utils";
import Link from "next/link";
import {Github, LucideIcon} from "lucide-react";
import {Github, LucideIcon, WavesIcon} from "lucide-react";
export interface FooterSectionProps {
className?: string;
@@ -19,10 +19,10 @@ export const FooterSection = React.memo(function FooterSection({ className }: Fo
<div className="lg:col-span-2 space-y-6">
<Link href="/" className="flex items-center gap-2">
<div className="w-10 h-10 p-2 rounded bg-primary text-sm text-primary-foreground flex items-center justify-center font-bold">
MP
</div>
<span className="text-2xl font-bold tracking-tight text-foreground">Modern Platform</span>
<span className="flex size-9 items-center justify-center rounded-full bg-foreground text-background [@media(max-height:700px)]:size-8">
<WavesIcon aria-hidden="true" />
</span>
<span className="text-2xl font-bold tracking-tight text-foreground">Wavelet</span>
</Link>
<p className="text-muted-foreground text-base leading-relaxed max-w-sm">
通用的、现代化的后台管理系统脚手架。基于 Go + React 构建,开箱即用、完整基建、极易扩展。
+7 -7
View File
@@ -1,9 +1,9 @@
import * as React from "react";
import Link from "next/link";
import { motion } from "motion/react";
import { ArrowRight, Zap, Shield, Globe, CreditCard } from "lucide-react";
import { cn } from "@/lib/utils";
import { Button } from "@/components/ui/button";
import {motion} from "motion/react";
import {ArrowRight, CreditCard, Globe, Shield, Zap} from "lucide-react";
import {cn} from "@/lib/utils";
import {Button} from "@/components/ui/button";
export interface HeroSectionProps {
className?: string;
@@ -37,9 +37,9 @@ export const HeroSection = React.memo(function HeroSection({ className }: HeroSe
transition={{ duration: 0.6, delay: 0.1, ease: [0.16, 1, 0.3, 1] }}
className="text-4xl md:text-5xl lg:text-6xl font-extrabold tracking-tight leading-[1.1] mb-6 text-foreground"
>
Modern Platform <br />
Wavelet<br />
<span className="bg-clip-text text-primary">
为二次开发而生
Modern Platform
</span>
</motion.h1>
@@ -52,7 +52,7 @@ export const HeroSection = React.memo(function HeroSection({ className }: HeroSe
>
通用的、现代化的后台管理系统脚手架
<br className="hidden md:block" />
开箱即用、完整基建、极易扩展,助您快速构建企业级应用。
开箱即用、完整基建、极易扩展,助您快速构建应用。
</motion.p>
<motion.div