'use client'; import { useTranslations } from 'next-intl'; import * as React from 'react'; import { AnimatePresence, motion } from 'motion/react'; import { useUser } from '@/contexts/user-context'; import { Card, CardHeader, CardTitle } from '@/components/ui/card'; import { Button } from '@/components/ui/button'; import { ArrowRight, ExternalLink, HelpCircle, Layers, Shield, ShieldCheck, Terminal, User, } from 'lucide-react'; import Link from 'next/link'; export function HomeMain() { const rt = useTranslations('runtime'); const { user } = useUser(); const [isBannerVisible, setIsBannerVisible] = React.useState(true); const quickLinks = [ { title: rt('profile_b94d13a4'), description: rt( 'manage_your_account_information_and_preferences_cced83b4', ), icon: User, url: '/settings/profile', color: 'text-blue-500', bgColor: 'bg-blue-500/10', borderColor: 'hover:border-blue-500/30', }, { title: rt('user_guide_c83b6b0a'), description: rt('api_integration_and_everyday_operation_guides_281269a1'), icon: HelpCircle, url: 'https://openflare.fyrn.link/', color: 'text-purple-500', bgColor: 'bg-purple-500/10', borderColor: 'hover:border-purple-500/30', external: true, }, ]; const adminLinks = [ { title: rt('system_settings_68ea5dd4'), description: rt( 'manage_registration_login_and_authentication_provider_security_f378ed37', ), icon: Shield, url: '/admin/settings', color: 'text-amber-500', bgColor: 'bg-amber-500/10', borderColor: 'hover:border-amber-500/30', }, { title: rt('global_system_configuration_1eb8931e'), description: rt('manage_core_platform_runtime_settings_341e4182'), icon: ShieldCheck, url: '/admin/system', color: 'text-indigo-500', bgColor: 'bg-indigo-500/10', borderColor: 'hover:border-indigo-500/30', }, { title: rt('user_permissions_8e8b1d33'), description: rt('view_and_manage_registered_users_and_their_db533b7c'), icon: User, url: '/admin/users', color: 'text-rose-500', bgColor: 'bg-rose-500/10', borderColor: 'hover:border-rose-500/30', }, { title: rt('background_task_scheduling_408172d1'), description: rt( 'dispatch_and_monitor_background_and_scheduled_tasks_83967fc9', ), icon: Layers, url: '/admin/tasks', color: 'text-teal-500', bgColor: 'bg-teal-500/10', borderColor: 'hover:border-teal-500/30', }, { title: rt('system_logs_366ada1d'), description: rt('view_background_task_logs_and_system_status_24fd6a7d'), icon: Terminal, url: '/admin/logs', color: 'text-cyan-500', bgColor: 'bg-cyan-500/10', borderColor: 'hover:border-cyan-500/30', }, ]; return (
{/* 积分收益提示 banner */} {isBannerVisible && (

Modern Platform

{rt( 'a_modern_extensible_administration_platform_with_ready_0d95c0c1', )}

)}
{/* 快捷导航 */}

{rt('quick_navigation_05deefcb')}

{quickLinks.map((link, idx) => (
{link.title} {link.external && ( )}

{link.description}

{link.external ? ( ) : ( )}
))}
{/* 管理面板 (仅管理员可见) */} {user?.is_admin && (

{rt('administration_console_ceb0c289')}

{adminLinks.map((link, idx) => (
{link.title}

{link.description}

))}
)}
); }